Trailing-Edge
-
PDP-10 Archives
-
6.1_emacs_manuals_1er
-
2-diagnostics/dfcia.seq
There are no other files named dfcia.seq in the archive.
;DFCIA
SEQ 0001
IDENTIFICATION
--------------
PRODUCT CODE: AH-E???A-DD
DIAGNOSTIC CODE: DFCIA
PRODUCT NAME: DFCIAA0 CI Functional Diagnostic
VERSION: 0.1
DATE RELEASED: December 31, 1983
MAINTAINED BY: Peripherals/CPS Engineering
AUTHOR: Richard Stockdale
COPYRIGHT (C) 1983
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY ON A
SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH THE INCLUSION
OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE, OR ANY OTHER
COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE
TO ANY OTHER PERSON EXCEPT FOR USE ON SUCH SYSTEM AND TO ONE WHO
AGREES TO THESE LICENSE TERMS. TITLE TO AND OWNERSHIP OF THE
SOFTWARE SHALL AT ALL TIMES REMAIN IN DIGITAL EQUIPMENT
CORPORATION.
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
EQUIPMENT CORPORATION.
DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE
USE OR RELIABILITY OF ITS SOFTWARE IN EQUIPMENT WHICH IS NOT
SUPPLIED BY DIGITAL EQUIPMENT CORPORATION.
MAINDEC-10-DFCIA-A-D Page ii
Table of Contents SEQ 0002
Table of Contents
Page
----
1.0 PROGRAM ABSTRACT . . . . . . . . . . . . . . . . . . 1
2.0 REQUIREMENTS . . . . . . . . . . . . . . . . . . . . 2
2.1 Hardware Requirements . . . . . . . . . . . . . . 2
2.1.1 KL10 Microcode Requirements . . . . . . . . . . 2
2.1.2 Memory Requirements . . . . . . . . . . . . . . 2
2.1.3 Load Device . . . . . . . . . . . . . . . . . . 2
2.2 Software Requirements . . . . . . . . . . . . . . 2
2.3 Diagnostic Prerequisites . . . . . . . . . . . . . 3
3.0 PROGRAM LOADING PROCEDURE . . . . . . . . . . . . . 4
4.0 PROGRAM STARTING PROCEDURE . . . . . . . . . . . . . 5
4.1 Starting the Diagnostic . . . . . . . . . . . . . 5
4.2 Initial Program Switches . . . . . . . . . . . . . 5
4.3 Startup Procedure . . . . . . . . . . . . . . . . 5
4.4 Optional Restart Address . . . . . . . . . . . . . 6
5.0 PROGRAM STOPPING PROCEDURE . . . . . . . . . . . . . 7
6.0 PROGRAM OPERATING PROCEDURE . . . . . . . . . . . . 8
6.1 Overview . . . . . . . . . . . . . . . . . . . . . 8
6.2 Hardware Configuration . . . . . . . . . . . . . . 8
6.2.1 Configuration Modification . . . . . . . . . . . 8
6.3 CI Configuration . . . . . . . . . . . . . . . . . 8
6.4 Choosing Run Time Options . . . . . . . . . . . . 9
6.5 Modes of Diagnostic Operation . . . . . . . . . . 9
6.6 Scope Looping . . . . . . . . . . . . . . . . . . 9
6.7 General User Interface Philosophy . . . . . . . 10
6.7.1 User Interface . . . . . . . . . . . . . . . . 10
6.8 Terminal Input . . . . . . . . . . . . . . . . . 10
6.8.1 General . . . . . . . . . . . . . . . . . . . 10
6.8.2 Control-C Capability (Ctrl-C) . . . . . . . . 10
6.8.3 Control-O Capability (Ctrl-O) . . . . . . . . 11
6.8.4 Control-Q Capability (Ctrl-Q) . . . . . . . . 11
6.8.5 Control-S Capability (Ctrl-S) . . . . . . . . 11
6.8.6 Control-T Capability (Ctrl-T) . . . . . . . . 11
6.8.7 Control-U Capability (Ctrl-U) . . . . . . . . 11
6.8.8 Control-Z Capability (Ctrl-Z) . . . . . . . . 11
6.8.9 Question Mark (?) . . . . . . . . . . . . . . 12
6.8.10 Altmode (ESC) . . . . . . . . . . . . . . . . 12
6.9 Terminal Output . . . . . . . . . . . . . . . . 12
6.9.1 Statistics Printouts . . . . . . . . . . . . . 12
7.0 PROGRAM OPTIONS (SWITCHES) . . . . . . . . . . . . 14
7.1 Left Hand Switches . . . . . . . . . . . . . . . 14
7.1.1 Left Hand Switches (Brief Description) . . . . 15
7.1.2 Left Hand Switches (Detailed Description) . . 16
7.2 Right Hand Switches . . . . . . . . . . . . . . 19
7.2.1 Right Hand Switches (Brief Description) . . . 19
7.2.2 Right Hand Switches (Detailed Description) . . 20
MAINDEC-10-DFCIA-A-D Page iii
Table of Contents SEQ 0003
8.0 ERRORS . . . . . . . . . . . . . . . . . . . . . . 23
8.1 User Input Errors at the Terminal . . . . . . . 23
8.2 Error Reporting of Hardware Detected Errors . . 23
8.2.1 Reporting to SPEAR . . . . . . . . . . . . . . 23
8.2.2 Error Printouts . . . . . . . . . . . . . . . 24
8.3 Unexpected Errors . . . . . . . . . . . . . . . 27
9.0 PROGRAM DESCRIPTION . . . . . . . . . . . . . . . 28
9.1 Program Overview . . . . . . . . . . . . . . . . 28
9.1.1 Program Purpose . . . . . . . . . . . . . . . 28
9.1.2 Testing Strategy . . . . . . . . . . . . . . . 28
9.2 Run-Time Dynamics . . . . . . . . . . . . . . . 28
9.2.1 Memory Allocation Requirements . . . . . . . . 28
9.2.2 Operating System Interactions . . . . . . . . 28
9.2.2.1 TOPS-10 . . . . . . . . . . . . . . . . . . 29
9.2.2.2 TOPS-20 . . . . . . . . . . . . . . . . . . 29
9.2.3 User Mode Restrictions . . . . . . . . . . . . 29
9.2.3.1 User Mode Privileges . . . . . . . . . . . . 29
9.2.3.2 User Mode Priority Interrupts . . . . . . . 29
9.3 Exec Mode Capability . . . . . . . . . . . . . . 29
9.4 User Mode Capability . . . . . . . . . . . . . . 29
9.5 Fault Detection . . . . . . . . . . . . . . . . 30
9.5.1 Error Resolution . . . . . . . . . . . . . . . 30
9.5.2 Fault Detection And Isolation . . . . . . . . 30
9.5.3 Fault Detection . . . . . . . . . . . . . . . 30
9.6 Performance During Hardware Failures . . . . . . 30
9.6.1 CPU/Memory Failures . . . . . . . . . . . . . 30
9.6.2 Power Fail/Restart . . . . . . . . . . . . . . 30
9.6.3 Port Failure . . . . . . . . . . . . . . . . . 31
9.6.4 Unexpected Traps . . . . . . . . . . . . . . . 31
9.7 Program Applications . . . . . . . . . . . . . . 31
9.7.1 Users and Uses . . . . . . . . . . . . . . . . 31
9.7.2 Engineering Usage . . . . . . . . . . . . . . 31
9.7.3 Manufacturing Usage . . . . . . . . . . . . . 31
9.7.4 Customer Services Usage . . . . . . . . . . . 31
9.7.5 Customer Usage . . . . . . . . . . . . . . . . 32
9.8 Test Design . . . . . . . . . . . . . . . . . . 32
9.8.1 Type of Tests . . . . . . . . . . . . . . . . 32
9.8.2 Test Flow . . . . . . . . . . . . . . . . . . 33
9.8.2.1 Starting the Test . . . . . . . . . . . . . 33
9.8.2.2 Stopping the Test . . . . . . . . . . . . . 34
9.8.2.3 Obtaining Run Time Status (Control-T) . . . 34
9.8.2.4 Obtaining Run Time Status (S or Control-S) . 34
10.0 TEST DESCRIPTIONS . . . . . . . . . . . . . . . . 35
10.1 Test Description Assumptions . . . . . . . . . . 35
10.2 Test Description Overview . . . . . . . . . . . 35
10.3 Program Option Selections . . . . . . . . . . . 36
10.3.1 Basic Description . . . . . . . . . . . . . . 36
10.3.2 Commands Available . . . . . . . . . . . . . . 36
10.3.3 Detailed Command Description . . . . . . . . . 37
10.3.3.1 Hardware Tests . . . . . . . . . . . . . . . 37
10.3.3.2 General Commands . . . . . . . . . . . . . . 38
10.3.3.3 Test Control Commands . . . . . . . . . . . 39
10.3.3.4 Statistics Commands . . . . . . . . . . . . 40
10.3.3.5 CI Configuration Commands . . . . . . . . . 41
MAINDEC-10-DFCIA-A-D Page iv
Table of Contents SEQ 0004
10.3.3.6 Switches . . . . . . . . . . . . . . . . . . 41
10.4 Hardware Tests . . . . . . . . . . . . . . . . . 43
10.4.1 Hardware Tests - EBUS/MPROC/CBUS modules . . . 43
10.4.2 Functional Tests - Packet Buffer/Link modules 43
10.4.2.1 Register Tests . . . . . . . . . . . . . . . 43
10.4.2.2 Transmit/Receive Buffer Tests . . . . . . . 43
10.4.2.3 Node Address Test . . . . . . . . . . . . . 43
10.4.2.4 Link Tests . . . . . . . . . . . . . . . . . 44
10.4.2.5 CRC Tests . . . . . . . . . . . . . . . . . 44
10.4.2.6 Packet Tests . . . . . . . . . . . . . . . . 44
10.5 Debug Test . . . . . . . . . . . . . . . . . . . 45
10.5.1 Basic Description . . . . . . . . . . . . . . 45
10.5.2 Commands Available . . . . . . . . . . . . . . 45
10.5.3 Detailed Command Description . . . . . . . . . 48
10.5.3.1 General Commands . . . . . . . . . . . . . . 49
10.5.3.2 Starting, Stopping, Initializing the Port . 53
10.5.3.3 Handling port registers . . . . . . . . . . 55
10.5.3.4 Handling port CRAM locations . . . . . . . . 57
10.5.3.5 2901 Commands . . . . . . . . . . . . . . . 59
10.5.3.6 Local Storage Commands . . . . . . . . . . . 60
10.5.3.7 Mark Bit Commands . . . . . . . . . . . . . 61
10.5.3.8 Breakpoint Commands . . . . . . . . . . . . 62
10.5.3.9 Microcode Commands . . . . . . . . . . . . . 63
10.5.3.10 Statistics Commands . . . . . . . . . . . . 65
10.5.3.11 CI Configuration Commands . . . . . . . . . 65
10.5.3.12 CI Commands . . . . . . . . . . . . . . . . 65
10.5.3.13 PLI Register Commands . . . . . . . . . . . 68
10.5.3.14 Miscellaneous Commands . . . . . . . . . . . 70
10.5.3.15 Data Transfer Commands . . . . . . . . . . . 73
10.5.3.16 Switches . . . . . . . . . . . . . . . . . . 73
11.0 PROGRAM RUN TIME . . . . . . . . . . . . . . . . . 75
12.0 APPENDIX . . . . . . . . . . . . . . . . . . . . . 76
12.1 Special Configurations . . . . . . . . . . . . . 76
12.1.1 DMT Configuration . . . . . . . . . . . . . . 76
12.1.2 Creating the Modified Diagnostics . . . . . . 76
12.1.3 Modifying the System . . . . . . . . . . . . . 77
12.1.4 Other configurations . . . . . . . . . . . . . 78
MAINDEC-10-DFCIA-A-D Page 1
PROGRAM ABSTRACT SEQ 0005
1.0 PROGRAM ABSTRACT
DFCIA is a functional diagnostic intended to verify the
functionality of a CI20 port consisting of an 3 Port modules, Packet
Buffer module, Link module, CI cables, and Star Coupler. It
attempts to isolate faults to one of three items - (1) 3 Port
modules, (2) Packet Buffer module, and (3) Link module + cables +
Star Coupler.
DFCIA tests the CI port consisting of three port modules residing
in RH20 slot #7 and a Packet Buffer module and a Link module
residing in a separate card cage.
DFCIA consists of two major program sections:
o Test section - Contains all of the hardware tests. This section
is used to functionally verify the port or to isolate an actual
problem.
o Debug section - Allows detailed manipulation or inspection of
the port.
MAINDEC-10-DFCIA-A-D Page 2
REQUIREMENTS SEQ 0006
2.0 REQUIREMENTS
2.1 Hardware Requirements
Hardware requirements consist of:
o A KL10, Model B, with at least 80K of memory.
o An IPA20-L Port in RH slot #7.
o Card cage installed, with a Packet Buffer and Link module
inserted and a PLI interface cable connecting the CBUS module
with the Packet Buffer module.
o A load device.
2.1.1 KL10 Microcode Requirements
The IPA20-L requires special functionality of the KL10 microcode.
Therefore, Version 312 or above must be loaded both in user and exec
mode.
2.1.2 Memory Requirements
The diagnostic requires 80K of memory of any type. Memory may be
configured in any manner, i.e., internal, external, interleaved in
any rational manner. The diagnostic's performance is not affected
by memory and cache options other than in overall diagnostic run
time.
2.1.3 Load Device
The diagnostic loads from any standard load device. Program
loading is a function of the standard diagnostic loaders and
monitors, i.e., DIAMON, D20MON, MAGMON, KLDCP, etc.
2.2 Software Requirements
Software requirements consist of:
o In exec mode the diagnostic may be loaded by KLDCP, DIAMON,
D20MON, or MAGMON. The Subroutine Package must be loaded prior
to running the diagnostic.
o In user mode, TOPS-20, Release 6.0 or above is required.
MAINDEC-10-DFCIA-A-D Page 3
REQUIREMENTS SEQ 0007
2.3 Diagnostic Prerequisites
The diagnostic should only be run after it has been verified that
the system has no solid hardware problems of a nature that would
render the diagnostic unable to run. This should be determined by
first running the following diagnostic programs:
o CPU and Memory Diagnostics
o E-Bus Diagnostics
o C-Bus Diagnostics
o MAINDEC-10-DFRHB - RH20 Fault Isolator Diagnostic.
o MAINDEC-10-DFPTA - IPA20-L Basic Device Diagnostic.
MAINDEC-10-DFCIA-A-D Page 4
PROGRAM LOADING PROCEDURE SEQ 0008
3.0 PROGRAM LOADING PROCEDURE
The diagnostic must be loaded via a diagnostic loader program.
Refer to loader documentation for instructions on loading and
operating the loader program. The diagnostic may be run as a single
program or may be chained with other programs using the loader chain
feature.
Additionally, in exec mode under KLDCP, the diagnostic may be
loaded without using a diagnostic loader program by telling KLDCP to
load the diagnostic. This has the advantage of being simpler, but
has the disadvantage of inhibiting file handling operations which
then prevents use of the TAKE command, and loading of operational
microcode by the diagnostic.
MAINDEC-10-DFCIA-A-D Page 5
PROGRAM STARTING PROCEDURE SEQ 0009
4.0 PROGRAM STARTING PROCEDURE
4.1 Starting the Diagnostic
The diagnostic is started in the same manner as most other
diagnostics. The diagnostic loader program is run, then the name of
the diagnostic, DFCIA, is specified. The loader then loads and
starts the diagnostic.
If the diagnostic is already loaded, it may be restarted by a STD
or STM in exec mode, or a START or CONTINUE in user mode.
4.2 Initial Program Switches
In exec mode, right hand switches may be selected using the SW
command as documented in the KL10 Maintanance Guide under KLDCP.
Left hand switches may be selected on the PDP 11 switch panel. If
the switches are 0, the diagnostic runs 5 passes of all hardware
tests then exits. To allow the user to select which test(s) to run,
the left hand switch 'OPRSEL' should be set.
In user mode, switches will be queried when the diagnostic starts
up. At this point, OPRSEL switch can be set, and any other
switches.
In both exec and user mode, switch settings may be altered after
the diagnostic has been started.
4.3 Startup Procedure
When the diagnostic is started, the diagnostic name and version
number will be printed, followed by a memory map of the system.
If OPRSEL switch is not set, the diagnostic will immediately
begin testing the CI port. If this switch is set, the diagnostic
will ask what test to execute.
For example (OPRSEL switch not set):
| D20MON CMD -
|
| DFCIA CI Port Functional Diagnostic
| VERSION 0.1, SV=0.15, TOPS-20, KL10, CPU#=2263
|
| SWITCHES = 020010 002000
|
| MEMORY MAP =
| FROM TO SIZE/K
| 00000000 00215777 71
|
| End pass 1. at 3m 48s
|
MAINDEC-10-DFCIA-A-D Page 6
PROGRAM STARTING PROCEDURE SEQ 0010
| End pass 2. at 7m 32s
|
| End pass 3. at 11m 20s
|
| End pass 4. at 15m 8s
|
| End pass 5. at 18m 56s
|
| D20MON CMD -
For example (OPRSEL switch set):
| D20MON CMD -
|
| DFCIA CI Port Functional Diagnostic
| VERSION 0.1, SV=0.15, TOPS-20, KL10, CPU#=2263
|
| SWITCHES = 020010 002000
|
| MEMORY MAP =
| FROM TO SIZE/K
| 00000000 00215777 71
|
| Type ? for help
|
| What test -
The diagnostic asks what test to run. Any test may be selected,
or ? or HELP typed to find out what tests are available.
At the end of a test the diagnostic continues at the question
'What test -'. The next test is selected and run and so on.
4.4 Optional Restart Address
Under TOPS-20 the diagnostic can be restarted via the 'REENTER'
command. The program switches are queried, then either testing is
begun immediately (if OPRSEL switch is not set) or 'What Test - ' is
asked (if OPRSEL switch is set).
Startup is identical to what occurs if the 'START' command is
given, except for the DIAMON asking 'DIAMON CMD - '.
MAINDEC-10-DFCIA-A-D Page 7
PROGRAM STOPPING PROCEDURE SEQ 0011
5.0 PROGRAM STOPPING PROCEDURE
Several methods may be used to stop the diagnostic:
o Altmode.
o Control-C.
o ABORT switch.
o RSTART switch.
A test can be aborted at any time by typing an altmode on the
terminal. When an altmode is typed, the diagnostic is restarted at
the test selection routine. At this point, if OPRSEL switch is set,
the diagnostic asks what test to run next. If OPRSEL switch is not
set the diagnostic runs all tests over again.
Control-C may be typed at any time to stop the diagnostic. To
restart, a 'START', 'CONTINUE', or 'REENTER' may be typed in user
mode. In exec mode a 'STD', 'ST', 'STM', or 'RN' may be used.
In exec mode, the ABORT switch may be set, so the diagnostic
halts at end of pass.
In exec mode, the RSTART switch may be set. This causes the
diagnostic to be restarted, and if OPRSEL switch is set, the
diagnostic will have effectively stopped and will be waiting for
selection of what test to run.
MAINDEC-10-DFCIA-A-D Page 8
PROGRAM OPERATING PROCEDURE SEQ 0012
6.0 PROGRAM OPERATING PROCEDURE
6.1 Overview
The diagnostic is designed to perform functional level testing of
the CI port.
Essentially, the diagnostic consists of a series of tests which
test each of the modules. Several of these are in the form of KL10
based tests using CONO, CONI, DATAO, and DATAI's. The remainder are
microcode routines which are loaded into the port CRAM and executed.
6.2 Hardware Configuration
When the diagnostic starts up it assumes that a CI port is
located in RH20 slot #7. It will attempt to select the port (this
always succeeds in exec mode, but may fail in user mode if the
system does not give the port to the diagnostic when requested).
6.2.1 Configuration Modification
The configuration of a CI port in RH20 slot #7 cannot be changed
via program commands. However, a memory location in the program
which contains the controller number can be changed to indicate a
different port in the unlikely event that the CI port was actually
in RH20 slot #5. This location is called 'MBCN' and can be changed
as follows:
What test - DDT
Type RTN$X to continue
DDT
MBCN/ 57400,,0 56400,,0 <CR>
RTN$X
What test -
6.3 CI Configuration
The diagnostic can be directed to determine and print the
configuration of nodes on the CI bus. This is done with the
'CONFIG' command which is identical to running TST61 'REQID Test'.
It loads operational microcode if necessary, then sends Request-ID
packets to all possible nodes. A configuration table is built and
the configuration is then printed. For example:
MAINDEC-10-DFCIA-A-D Page 9
PROGRAM OPERATING PROCEDURE SEQ 0013
| What test - CONFIG
|
| ***** CI Configuration *****
| Port Port Dual Maint Port
| Number Type Path State State
| ------ --------- ---- ----- -------
| 1 KL10-Self Yes No Initialized
| 5 HSC-50 Yes No Initialized
This can be used to determine, on a superficial basis, what nodes
are down relative to their ability to respond to a Request-ID
packet. It can also be used when debugging, to find out what port
to send packets to and so forth.
6.4 Choosing Run Time Options
Before starting a test, the diagnostic may ask how many times to
execute test selected. If the OPRSEL switch is not set this
question is not asked. No other run time options are available,
aside from program switch options which are fully described in the
Section 7.0 'Program Options (Switches)'.
6.5 Modes of Diagnostic Operation
The diagnostic runs in either user mode or exec mode. The
operation of the diagnostic is almost identical in either case with
the exception of the handling of console switches, and speed of
operation. The diagnostic runs faster in exec mode for obvious
reasons. Also, the PI system is not used in user mode. This
affects the ease of using breakpoints when debugging microcode.
In addition, the diagnostic runs with or without user
interaction. This is determined by the console switch 'OPRSEL'.
More details may be found in Section 7.0 'Program Options
(Switches)'.
6.6 Scope Looping
Scope looping is not supported by the diagnostic. However, one
can loop on a test, using the right hand switch 'LOOPTS'.
MAINDEC-10-DFCIA-A-D Page 10
PROGRAM OPERATING PROCEDURE SEQ 0014
6.7 General User Interface Philosophy
Decimal numbers are always followed by a point. All other
numbers are octal.
All input is preceded with a prompt. All input is checked for
legality and incorrect responses are followed by a reprompt and/or
an additional error message. All numerical input can be specified
as an octal number. Some numerical input may be alternatively given
as a decimal number followed by a decimal point. Where the the
diagnostic allows multiple input options, a help message is
available to explain the options. The diagnostic requests three
types of input - numerical, yes or no, and sixbit.
Additionally, the user may obtain a short description of the
input expected at any point by typing a question mark followed by a
carriage return. The text is printed and the question re-asked.
6.7.1 User Interface
The user interface to the diagnostic is dialogue through the
terminal. In exec mode the console switches on the KL are used
directly in addition to software switches. In user mode the
software switches are used as standard procedure. All
user/diagnostic dialogue is done through the diagnostic subroutine
package.
6.8 Terminal Input
6.8.1 General
Terminal input is handled by the Subroutine Package. It does not
have COMND JSYS style input. However, some control characters are
supported. And the diagnostic supports ? and help commands where
appropriate to facilitate input.
6.8.2 Control-C Capability (Ctrl-C)
Control-C is used to halt diagnostic execution. In exec mode,
control is returned to KLDCP at the ">." prompt. In user mode, the
user is returned to monitor level.
When ready to continue, the user may restart or continue the
diagnostic in any manner listed previously in Section 5.0, 'Program
Stopping Procedure'. This would be by saying 'CONTINUE' in user
mode or 'RN' in exec mode.
MAINDEC-10-DFCIA-A-D Page 11
PROGRAM OPERATING PROCEDURE SEQ 0015
6.8.3 Control-O Capability (Ctrl-O)
Control-O inhibits terminal output. Terminal output resumes when
the diagnostic prints some forced output or when the user types
another Control-O.
6.8.4 Control-Q Capability (Ctrl-Q)
In exec mode Control-Q is treated as an illegal character by the
diagnostic and typing it in response to a question results in an
error message.
In user mode Control-Q allows terminal output which may have been
inhibited by a prior Control-S. This character may be typed at any
time with no other effect than resuming terminal output.
6.8.5 Control-S Capability (Ctrl-S)
In exec mode, Control-S is treated as an illegal character by the
diagnostic and typing it in response to a question results in an
error message. It may also be typed followed by a carriage return
in order to obtain run-time status of the diagnostic.
In user mode, it is used as a terminal output control character
along with Control-Q, and has no other function.
6.8.6 Control-T Capability (Ctrl-T)
Control-T is treated as an illegal character by the diagnostic
and typing it in response to a question results in an error message
in exec mode. Under TOPS-20, Control-T gives the current program
status and does not interfere with program input.
6.8.7 Control-U Capability (Ctrl-U)
Control-U is used to delete whatever has been typed so far in
response to a question. After typing Control-U, the desired input
can be entered.
6.8.8 Control-Z Capability (Ctrl-Z)
Control-Z is used to exit from DDT, to either KLDCP in exec mode
or to monitor level in user mode.
MAINDEC-10-DFCIA-A-D Page 12
PROGRAM OPERATING PROCEDURE SEQ 0016
6.8.9 Question Mark (?)
Question mark may be typed in response to any question. The
diagnostic prints a short help message and reprompts the user. If
the diagnostic is asking for a test name or a debug command, it
prints a list of all valid commands that may be typed.
If a question mark is typed after a legal command, the expected
format of the command is given, showing possible arguments.
6.8.10 Altmode (ESC)
Altmode is normally used to abort a test or a sequence of test.
If it is given in response to a question, the diagnostic aborts the
task which is under way. For example, in DEBUG test, if the user is
altering a CRAM location and types altmode in the middle of that,
the diagnostic aborts the operation and returns to 'DEBUG>' prompt
without writing the location.
6.9 Terminal Output
The terminal output generated by the diagnostic consists of:
o Program initialization information
o Program questions/messages
o Test error messages
o Statistics printouts
Much of this output can be affected by program switches,
specifically, NOPNT, PNTLPT, TXTINH, and INHMSG.
6.9.1 Statistics Printouts
Statistics are kept on CI traffic originating from or received at
this node. They are not printed out by the program automatically.
To obtain a printout, the 'OPRSEL' switch must be set and the
command 'STATIS' given explicitly.
Statistics may be useful when running a debugger test such as
'WATCH' over a long period of time. One can obtain data from the
statistics such as which CI path has the highest occurrence of no
responses or other failures.
MAINDEC-10-DFCIA-A-D Page 13
PROGRAM OPERATING PROCEDURE SEQ 0017
A sample printout follows:
| What test - STAT
|
| *** STATISTICS - Packets Sent (1m 59s) ***
|
| Packets Bytes -Response Path A-- -Response Path B-- Resp
| Type Sent Sent ACK NAK NoRsp ACK NAK NoRsp Errors
| ---- ---- ---- --- --- ----- --- --- ----- ------
| Int PB 100 5000 47 0 0 53 0 0 0
| Int Lnk 50 2500 25 0 0 25 0 0 0
| Ext Lnk 50 2500 25 0 0 25 0 0 0
| Req ID 256 5120 3 0 253 0 0 0 0
| Reg R/W 1 20 1 0 0 0 0 0 0
| Other 1 20 0 0 1 0 0 0 0
|
| *** STATISTICS - Packets Received Path A (1m 59s) ***
|
| Packets Bytes Recv Packets Bytes
| Type Rcvd Recv Errors In Error In Error
| ---- ---- ---- ------ -------- --------
| Int PB 47 2350 0 0 0
| Int Lnk 25 1250 0 0 0
| Ext Lnk 25 1250 0 0 0
| Req ID 3 84 0 0 0
| Reg R/W 1 20 0
| Other 1 20 0
|
| *** STATISTICS - Packets Received Path B (1m 59s) ***
|
| Packets Bytes Recv Packets Bytes
| Type Rcvd Recv Errors In Error In Error
| ---- ---- ---- ------ -------- --------
| Int PB 53 2650 0 0 0
| Int Lnk 25 1250 0 0 0
| Ext Lnk 25 1250 0 0 0
MAINDEC-10-DFCIA-A-D Page 14
PROGRAM OPTIONS (SWITCHES) SEQ 0018
7.0 PROGRAM OPTIONS (SWITCHES)
Program options are controlled by switches. Left hand switches
are predefined but not all are used. Most of the right hand
switches are defined specific to the diagnostic.
7.1 Left Hand Switches
In exec mode, left hand switches are modified either via the
front end console switches or by using the KLDCP command ESW. See
KLDCP documentation for details on the use of the ESW command.
Typically, these switches are modified by using the console
switches.
In user mode, left hand switches are queried when the diagnostic
starts. After that, if the OPRSEL switch is set, switches may be
changed using the SWITCH command. The diagnostic will ask for the
switches in the same manner as occurred at start up. Also the name
of the switch can be typed as a command. This turns the switch on
or off depending on its state.
For example:
| What test - TXTINH
|
| [TXTINH On]
|
| What test - TXTINH
|
| [TXTINH On]
|
| What test - SWPRIN
|
| Switches: 000210 000000 TXTINH OPRSEL
|
| What test - TXTINH
|
| [TXTINH Off]
|
| What test - SWITCH
|
| Print the selectable pgm switches? (Y or N) - N
|
| Switches = 000010 000000
|
| 10 LH Switches <# or ?> - 210
|
| 0 RH Switches <# or ?> - 0
|
| SWITCHES = 020210 000000
|
| What test - SWPRIN
|
| Switches: 000210 000000 TXTINH OPRSEL
MAINDEC-10-DFCIA-A-D Page 15
PROGRAM OPTIONS (SWITCHES) SEQ 0019
7.1.1 Left Hand Switches (Brief Description)
Switch Symbol State Function Description
------ ------ ----- --------------------
0 (400000) ABORT 0 No function.
1 Abort at end of pass.
1 (200000) RSTART 0 No function.
1 Restart diagnostic.
2 (100000) TOTALS 0 No function.
1 No function.
3 (040000) NOPNT 0 Normal typeout.
1 Inhibit all printing except forced.
4 (020000) PNTLPT 0 Normal output to TTY.
1 Print on LPT (user, logical dev).
5 (010000) DING 0 No function.
1 Ring bell on error.
6 (004000) LOOPER 0 Normal operation.
1 Normal operation.
7 (002000) ERSTOP 0 Normal operation.
1 Halt on error.
8 (001000) PALERS 0 Print only first error in loop.
1 Print all errors.
9 (000400) RELIAB 0 No function.
1 Reliability mode switch.
10 (000200) TXTINH 0 Print full error messages.
1 Short error messages.
11 (000100) INHPAG 0 KL - allow 4096K addressing.
1 KL - inhibit paging.
12 (000040) MODDVC 0 No function.
1 Modify device codes.
13 (000020) INHCSH 0 Use cache.
1 Inhibit using cache on pgm start.
14 (000010) OPRSEL 0 Run default operations.
1 Operator test selections.
15 (000004) CHAIN 0/1 Used by "DIAMON", etc. to control
MAINDEC-10-DFCIA-A-D Page 16
PROGRAM OPTIONS (SWITCHES) SEQ 0020
chain operations.
16 (000002) Unused 0 KA10 60 Hertz power
1 KA10 50 Hertz power
17 (000001) Unused Reserved
7.1.2 Left Hand Switches (Detailed Description)
The following is a detailed description of each console data
switch function:
Switch 0 (ABORT)
When this switch is set, the diagnostic returns control to the
diagnostic loader at end of pass.
Switch 1 (RSTART)
When this switch is set while a test is being executed, the
diagnostic aborts testing after completion of the current test, and
restarts the diagnostic.
Switch 2 (TOTALS)
Setting this switch has no effect on diagnostic operation.
Switch 3 (NOPNT)
This switch inhibits all printout except forced. Forced printout
is used with questions requiring user response. This switch is
useful when it is desired to force a test to run without printing
error information. To suppress the remainder of a current error
report, type a Control-O on the terminal. This suppresses the
remaining error information for the current error and allows
printing to start again for the next error.
Switch 4 (PNTLPT)
When this switch is zero, all printouts from the diagnostic are
printed on the terminal. If set only forced printouts are printed
on the terminal. All data, including forced printouts, is printed
on the line printer.
Switch 5 (DING)
MAINDEC-10-DFCIA-A-D Page 17
PROGRAM OPTIONS (SWITCHES) SEQ 0021
This switch causes the terminal bell to be rung when an error
occurs.
Switch 6 (LOOPER) - Unused
Switch 7 (ERSTOP)
This switch causes the diagnostic to terminate testing when an
error occurs. If the OPRSEL switch is set the diagnostic will
continue at the 'What Test -' prompt. If the OPRSEL switch is not
set the diagnostic will exit and return control to the diagnostic
loader.
Switch 8 (PALERS)
Normally an error message is printed only the first time an error
occurs if that error is being repeated continuously. To print all
occurrences of every error, set this switch.
Switch 9 (RELIAB)
If this switch is set, each test is run 4 times before control is
passed to the next test selected. If only one test has been
selected, the test would be run 4 times the repeat count given for
the test.
Switch 10 (TXTINH)
If this switch is not set, complete data is printed with each
error message. If this switch is set, less data is printed in a
shortened form.
Switch 11 (INHPAG)
This switch inhibits paging if set and allows it if not set.
Switch 12 (MODDVC)
If this switch is set, DIAMON asks for any device code
modifications. This is not used by the diagnostic itself.
Switch 13 (INHCSH)
This switch, if set, inhibits the use of cache during the time
the diagnostic is run. This switch is inspected only in exec mode
and only at diagnostic start up. Changes of the switch setting do
not affect the cache after the diagnostic has started up.
MAINDEC-10-DFCIA-A-D Page 18
PROGRAM OPTIONS (SWITCHES) SEQ 0022
Switch 14 (OPRSEL)
If set, this switch enables increased user interaction. The
diagnostic asks explicitly what test or function to do before doing
anything. Test selection is made in response to the question:
What Test? -
At least enough letters to recognize the test selection must be
typed although up to six letters are accepted. '?' may be typed to
get a list of the test names or commands. 'HELP' may be typed to
get a short description of each test or command.
If this switch is not set, the diagnostic runs all hardware
tests, prints fault isolation data (if the inhibit fault isolation
switch is not set), then exits.
Switch 15 (CHAIN)
This switch is used by DIAMON in chaining operations and is not
used by the diagnostic in normal operation.
Switch 16 (50CYC) - Unused
This switch is used on KA10's to select 50 hertz power. It is
not used by this diagnostic.
Switch 17 - Unused
This switch is reserved for use by the diagnostic monitor or
subroutine package and is not used by the diagnostic.
MAINDEC-10-DFCIA-A-D Page 19
PROGRAM OPTIONS (SWITCHES) SEQ 0023
7.2 Right Hand Switches
7.2.1 Right Hand Switches (Brief Description)
Switch Symbol State Function Description
------ ------ ----- --------------------
18 (400000) TRACE 0 Normal operation.
1 Trace operation of tests.
19 (200000) INHFLT 0 Normal operation.
1 Inhibit fault isolation.
20 (100000) INHMSG 0 Normal operation.
1 Inhibit error message printout.
21 (040000) LOOPGM 0 Normal operation.
1 Loop on program.
22 (020000) LOOPTS 0 Normal operation.
1 Loop on selected test.
23 (010000) RUNALL 0 Normal operation.
1 Run all segments of each test.
24 (004000) DSPEAR 0 Normal operation.
1 Disable SPEAR error reporting.
25 (002000) UDEBUG 0 Normal operation.
1 Diagnostic debug mode.
26 (001000) MDEBUG 0 Normal operation.
1 Error message debug mode.
27 (000400) SDEBUG 0 Normal operation.
1 Test execute debug mode.
28 (000200) LDEBUG 0 Normal operation.
1 Inhibit loading of test microcode.
29 (000100) DDEBUG 0 Normal operation.
1 Dump port state upon error.
30 (000040) EDEBUG 0 Normal operation.
1 Print expanded error message upon error.
31 (000020) Unused
32 (000010) Unused
33 (000004) Unused
34 (000002) Unused
35 (000001) Unused
MAINDEC-10-DFCIA-A-D Page 20
PROGRAM OPTIONS (SWITCHES) SEQ 0024
7.2.2 Right Hand Switches (Detailed Description)
Switch 18 (TRACE)
This switch is used if the user wants to follow test progress.
As each test is started, the diagnostic prints the name of the test
and the current PC. This is useful to gain assurance that the
diagnostic is running or to find out what test it died on, if the
diagnostic fades into oblivion.
The names of all tests selected are printed. If the test has
been disabled, the test name is printed followed by the phrase
'(Disabled)'.
Switch 19 (INHFLT)
If set, this switch inhibits fault isolation. All tests are
still run and in the same order, but the module callout in any error
messages is ommitted.
Switch 20 (INHMSG)
This switch is used to run the diagnostic with all normal
printout except error messages. It can be used in place of 'NOPNT'
switch when looping on a test.
Switch 21 (LOOPGM)
If this switch is not set and OPRSEL switch is not set, the
diagnostic runs 5 passes of all tests. Then the diagnostic returns
to DIAMON or D20MON or KLDCP.
If this switch is set and OPRSEL switch is not set, the
diagnostic runs all tests continuously, pass after pass.
If OPRSEL switch is set, the diagnostic asks 'What Test - ' to
determine what test to run. When done with a test, the diagnostic
returns to this question. The LOOPGM switch is not used.
Switch 22 (LOOPTS)
This switch allows a specified test to be looped on forever. It
is equivalent to specifying '22 377777777777' to run TST22 a very
large number of times. This switch may be overridden by specifying
an explicit repeat count.
MAINDEC-10-DFCIA-A-D Page 21
PROGRAM OPTIONS (SWITCHES) SEQ 0025
This switch is effective only when selecting a single test. If a
class of tests is selected, the switch is ineffective.
If this switch is not set the default repeat count when selecting
a specific test is 1 repetition.
Switch 23 (RUNALL)
This switch forces every segment of a test to be run. Normally,
a test exits after the first error, unless looping on error. To
force the diagnostic to run every segment of the test regardless of
error, this switch may be set.
This switch has no effect if LOOPER switch is set and the
diagnostic is looping on an error.
Switch 24 (DSPEAR)
This switch enables or disables SPEAR error reporting. If the
switch is not set, the diagnostic will make two SPEAR entries - (1)
an entry when the diagnostic is started and (2) an entry either upon
first error or at end of pass if no errors have occurred.
If the switch is set, no SPEAR entries will be made. If the
diagnostic has already started, the second entry will not be made.
Switch 25 (UDEBUG)
This switch allows the diagnostic to be run in user mode without
a port for the purposes of diagnostic development or debug or for
the purpose of familiarization with the diagnostic without affecting
or requiring a port.
If this switch is set, the diagnostic runs every test as
demanded. All tests and most commands in the DEBUG test appear to
succeed.
Switch 26 (MDEBUG)
This switch forces every test to fail and prints out an error
message for each failure. This may be used to debug error messages,
or familiarize a person with typical error printouts of this
diagnostic. It can also be used when trying to diagnose a failing
test which passes the first few test segments - this switch causes
error messages to be printed for passing portions of the test so
that it can be seen what the port is doing correctly, without
looking through the diagnostic listing.
Switch 27 (SDEBUG)
MAINDEC-10-DFCIA-A-D Page 22
PROGRAM OPTIONS (SWITCHES) SEQ 0026
This switch is used for diagnostic debug purposes. If set, each
table entry of a table driven test is printed as the test is
executed.
Switch 28 (LDEBUG)
The first action of any test is normally to load the microcode
required by the test. Setting this switch inhibits the automatic
loading of microcode. This allows test microcode to be modified
using the DEBUG facility and the test to be rerun.
Switch 29 (DDEBUG)
This switch affects the contents of error printouts. If not set
error printouts contain the usual amount of data. If set, the
diagnostic prints a complete dump of the port (about 12 pages of
data) upon any error applicable error. The types of errors with
which this would occur are such things as port hung or status error
in received packet, etc.
This switch would be used if complete data regarding the state of
the port and microcode was desired on any error.
Switch 30 (EDEBUG)
This switch affects the contents of error printouts. If not set
error printouts contain the usual amount of data. If set, the
diagnostic prints port number and, if user mode, date and time of
error.
Switch 31 - Unused
Switch 32 - Unused
Switch 33 - Unused
Switch 34 - Unused
Switch 35 - Unused
MAINDEC-10-DFCIA-A-D Page 23
ERRORS SEQ 0027
8.0 ERRORS
This section describes the operation of the diagnostic upon
encountering various types of errors. There are basically three
types:
o User input errors
o Hardware errors
o Unexpected errors
8.1 User Input Errors at the Terminal
The diagnostic requests three types of input: numerical, yes or
no, and SIXBIT. The action taken upon input error is as follows:
When an error is detected on numerical input the diagnostic
prints an error message describing the type of error. Then it
either asks the question again, or returns to 'What test -' or
'DEBUG>'.
When an error is detected on a yes or no input, the user is
merely reprompted, until a Y or N is typed.
When an error is detected on SIXBIT input an error message is
printed and the user is asked the question again. The user can then
ask the diagnostic for further information by asking for help or
typing '?'.
8.2 Error Reporting of Hardware Detected Errors
Upon the occurrence of a hardware error a full error description
is printed, depending on the setting of switches 'NOPNT', 'PNTLPT',
'TXTINH', and 'INHMSG'.
If the diagnostic is looping on error only the first occurrence
of an error is printed. Subsequent errors at the same place are not
printed. If the 'DING' switch is set, the terminal bell is sounded
to indicate that an error was detected, even though nothing is
printed.
8.2.1 Reporting to SPEAR
The diagnostic makes 2 SPEAR entries. The first is an entry when
the diagnostic is started. This entry contains the date, time,
user, diagnostic name and version. A second entry is made when the
first error occurs. This entry contains the date, time, user,
diagnostic name and version, failing test name and test description.
MAINDEC-10-DFCIA-A-D Page 24
ERRORS SEQ 0028
If the diagnostic completes a successful pass with no errors, it
will make the second entry as above, but there will be no test name
or test description included.
If, thereafter, an error occurs and the diagnostic has already
made an entry indicating successful completion of a pass, the
diagnostic will make one more entry, giving the error information.
Whenever the diagnostic is restarted by an STM or reloaded and
restarted, it will make entries into the system error file. If the
2 entries have already been made, restarting via a STD or CONT will
not result in additional entries.
SPEAR entries can be disabled using the switch 'DSPEAR'.
8.2.2 Error Printouts
Errors are printed as they occur in a standard form. Where
appropriate, the CSR register or LAR register contents is printed.
A sample printout with TXTINH switch not set follows:
| +-+-+-+-+-+-+
| Error: TST1-1 - Port Hardware Test 1
| Test PC = 0' Scope PC = 21' Switches = 000010 000000
| Write CSR '400000', then read CSR, verify result.
| CSR (Correct): 400003 000000
| (Actual): 000000 400000
| FRU: EBUS/MPROC/CBUS modules
| -------------
This error printout gives the following data:
o Test name - TST1-1 (Test #1 segment #1), name of test is 'Port
Hardware Test 1'.
o Test PC - 0' - address of the start of the test. Note that this
is a relative address as will be found in the test listing.
o Scope PC - 21' - address which can be found in the diagnostic
listing of the call to the scope loop routine. Note that this
is a relative address also.
o Switches - those in effect at the time of the error printout.
o 'Write CSR '400000', then read CSR, verify result.' -
description of the error.
o Results, correct and actual.
o Module callout - the three port modules.
MAINDEC-10-DFCIA-A-D Page 25
ERRORS SEQ 0029
| +-+-+-+-+-+-+
| Error: TST10-1 - Transmit Buffer Load Test
| Test PC = 0' Scope PC = 11' Switches = 000010 000000
| CSR: 000000 000005
| Transmit Buffer A load/read/select failure
| FRU: PILA module
| -------------
This error printout gives the following data:
o Test name - TST10-1 (Test #10 segment #1), name of test is
'Transmit Buffer Load Test'.
o Test PC - 0' - address of the start of the test.
o Scope PC - 11' - address of the call to the scope loop routine.
o Switches - those in effect at the time of the error printout.
o 'Transmit Buffer A load/read/select failure' - description of
the error.
o Module callout - the Packet Buffer module.
| +-+-+-+-+-+-+
| Error: TST7-1 - Link Register Test 2
| Test PC = 2650' Scope PC = 2663' Switches = 000010 000000
| Read of Node Address Register failed
| Packet sent: OpCode RDREG
| Word Data
| +3 000 000 003 000 00
| +4 000 000 000 000 00
| +5 377 377 377 377 17
| +6 000 000 015 233 11
| +7 000 000 000 000 00
| Response received count: Expected 1 Actual 0
| Unexpected response received: OpCode ??0??
| Word Data
| +3 000 000 000 000 00
| +4 000 000 000 000 00
| +5 000 000 000 000 00
| +6 000 000 000 000 00
| +7 000 000 000 000 00
| FRU: PILA module
| -------------
This error printout gives the following data:
MAINDEC-10-DFCIA-A-D Page 26
ERRORS SEQ 0030
o Test name - TST7-1 (Test #7 segment #1), name of test is 'Link
Register Test 2'.
o Test PC - 2650' - address of the start of the test.
o Scope PC - 2663' - address of the call to the scope loop
routine.
o Switches - those in effect at the time of the error printout.
o 'Read of Node Address Register failed' - description of the
error.
o Packet related data:
o Packet sent, a RDREG packet - it is printed out.
o Expected to receive 1 response packet, but actually received
none.
o Also received an unrecognized packet - it is printed out.
o Module callout - the Packet Buffer module.
If TXTINH is set, the printouts looks like:
| +-+-+-+-+-+-+
| Error: TST1-1 Scope PC 000021' SW 000210 000000
| CSR (C): 400003 000000
| (A): 000000 400000
| FRU: EBUS/MPROC/CBUS
| -------------
| +-+-+-+-+-+-+
| Error: TST7-1 Scope PC 002663' SW 000210 000000
| Packet sent: OpCode RDREG
| Rsp rcv: Expected 1 Actual 0
| Unexpected rsp req rcv: OpCode ??0??
| FRU: PILA
| -------------
| +-+-+-+-+-+-+
| Error: TST10-1 Scope PC 000011' SW 000210 000000
| FRU: PILA
| -------------
MAINDEC-10-DFCIA-A-D Page 27
ERRORS SEQ 0031
8.3 Unexpected Errors
The diagnostic is written to recover from any usual error
condition and continue testing. However, there are a few halts
coded into the diagnostic to catch a completely lost program because
of some unexpected malfunction:
ADDRESS REASON
1011 Fatal push list pointer error
1012 Initial push list pointer error
1013 MUUO with LUUO handler wiped out
1014 DTE20 interrupt without doorbell
1015 DTE20 clock interrupt without flag set
1016 CPU initialization error
1017 End of program error
1020 Interrupt with LUUO handler wiped out
The diagnostic is coded with several fatal instructions which cause
Fatal program error at address xxxxx
to be printed and the diagnostic to halt. These instructions are
placed where the diagnostic finds itself in a situation where it
does not know how to proceed. There are no anticipated program
deficiencies that allow a fatal error to be executed.
MAINDEC-10-DFCIA-A-D Page 28
PROGRAM DESCRIPTION SEQ 0032
9.0 PROGRAM DESCRIPTION
This section provides a functional overview of the diagnostic,
giving information concerning requirements and restrictions, fault
detection and isolation, error handling, terminal input and output
characteristics, and diagnostic applications.
9.1 Program Overview
9.1.1 Program Purpose
DFCIA is a functional diagnostic intended to verify the
functionality of a CI20 port consisting of an 3 Port modules, Packet
Buffer module, Link module, CI cables, and Star Coupler. It
attempts to isolate faults to one of three items - (1) 3 Port
modules, (2) Packet Buffer module, and (3) Link module + cables +
Star Coupler.
9.1.2 Testing Strategy
The diagnostic attempts to run simpler tests first that exercise
a small amount of logic. Then more and more testing is done, until
the tests are exercising much of the logic of the port at once.
First, the three port modules are tested, with basic hardware tests.
Then Packet Buffer and Link module registers are read and verified.
Then the Packet Buffer transmit and receive buffers. Then more of
the Link logic. Then transmitting and receiving loopback packets.
Finally, Request-ID's are sent to all ports and the responses
tallied to produce a CI configuration report - this verifies that
some interaction is possible with other nodes on the CI bus.
9.2 Run-Time Dynamics
9.2.1 Memory Allocation Requirements
The diagnostic loads and executes in less than 96K of memory.
This includes the memory used by the diagnostic monitor (DIAMON or
D20MON or MAGMON) and the subroutine package (SUBRTN or SUBUSR or
SUBKL).
9.2.2 Operating System Interactions
MAINDEC-10-DFCIA-A-D Page 29
PROGRAM DESCRIPTION SEQ 0033
9.2.2.1 TOPS-10
The diagnostic does not run under TOPS-10.
9.2.2.2 TOPS-20
The diagnostic interfaces with TOPS-20 via the DIAG JSYS. The
diagnostic requests the port using the DIAG JSYS. When done, the
diagnostic releases the device also using the DIAG JSYS.
The diagnostic can only be run if the port is not being used by
the operating system. The DIAG JSYS will succeed only if this is
so. Hence, the user must close the CI connection before running
this diagnostic. This is done by dismounting any structures
currently mounted on any HSC50's on the CI and terminating any other
open connections that may exist. This is accomplished via the OPR
program.
9.2.3 User Mode Restrictions
9.2.3.1 User Mode Privileges
Under TOPS-20 a user must have at least MAINTENANCE privileges in
order to run the diagnostic. WHEEL's and OPERATOR's also have
sufficient privileges to run the diagnostic in USER Mode.
9.2.3.2 User Mode Priority Interrupts
The diagnostic is not allowed to use the Priority Interrupt
System in user mode. In user mode, the diagnostic polls the CSR
Register for interrupt conditions.
9.3 Exec Mode Capability
The diagnostic runs in exec mode under KLDCP or, additionally,
under DIAMON or MAGMON. All tests are capable of being run in exec
mode.
9.4 User Mode Capability
The diagnostic runs in user mode under TOPS-20 (Release 6.0 or
newer). There are some restrictions imposed upon the diagnostic in
user mode that are listed in Section 9.2.3 'User Mode Restrictions'.
MAINDEC-10-DFCIA-A-D Page 30
PROGRAM DESCRIPTION SEQ 0034
9.5 Fault Detection
9.5.1 Error Resolution
The diagnostic isolates faults to a module.
9.5.2 Fault Detection And Isolation
The purpose of the diagnostic is to diagnose hard faults on the
IPA20-L Controller and to isolate those faults to a specific failing
field replaceable unit (FRU). The diagnostic testing is performed
by a bottom up testing technique. This is accomplished by
performing a basic operation and then using that verified logic to
verify the functionality of more logic.
This diagnostic should detect 50% of solid faults in the 3 port
modules, 95% of faults in the Packet Buffer module, and 93% of
faults in the Link module and isolate 90% of these to the FRU.
9.5.3 Fault Detection
Typically, the diagnostic detects a fault, then prints it out and
continues testing. The failing module is printed with each error
message.
Occasionally, particularly with EBUS interface failures, the
diagnostic may just hang, or the KL10 microcode may hang. This may
happen if the port cannot complete an EBUS operation such as an
examine or deposit properly. If this occurs, no error message or
module callout is printed. The solution is to run the basic
diagnostic, DFPTA, in order to debug or verify the three port
modules, EBUS, MPROC, and CBUS modules.
9.6 Performance During Hardware Failures
9.6.1 CPU/Memory Failures
Most CPU and memory faults are fatal errors to the diagnostic and
it does not continue after one.
9.6.2 Power Fail/Restart
If a power fail occurs, the diagnostic must be reloaded and rerun
when the system is back in operation.
MAINDEC-10-DFCIA-A-D Page 31
PROGRAM DESCRIPTION SEQ 0035
9.6.3 Port Failure
Hardware failure in the port is anticipated and results in an
error message.
9.6.4 Unexpected Traps
The diagnostic can fail due to an unexpected malfunction.
Sometimes an error code is printed, if the subroutine package
intercepts the error. Other cases may result in a hung diagnostic
or CPU or occasionally a fatal error message. See the Section 8.3
'Unexpected Errors' for more details.
9.7 Program Applications
The diagnostic can be used for coarse determination of a fault -
does the port work and if not what module is broken.
It can also be used for detailed examination of a port.
9.7.1 Users and Uses
The diagnostic is generally used only by Manufacturing to assist
module verification and debug, and by Customer Services when
determining the FRU of a failing port.
9.7.2 Engineering Usage
Engineering used this diagnostic for microcode debug and for
prototype debug and maintenance. Engineering may use the diagnostic
if any ECO's are made in the future.
9.7.3 Manufacturing Usage
This diagnostic is used by Manufacturing as part of the
acceptance procedure for an IPA20-L.
9.7.4 Customer Services Usage
Customer Services uses the diagnostic as part of acceptance
procedure, when an IPA20-L is sent to a customer in a drop ship
environment. Customer Services also uses this during CM and PM.
MAINDEC-10-DFCIA-A-D Page 32
PROGRAM DESCRIPTION SEQ 0036
9.7.5 Customer Usage
With the exception of OEM customers, it is not likely that any
customers will use the diagnostic. If they have a problem with the
port they notify Customer Services who can then run the diagnostic.
OEM customers, running the diagnostic themselves, would interface to
their account sales representative if any difficulties arose or
problems discovered.
9.8 Test Design
The basic design of most tests is as follows:
o Do something to the port.
o Inspect the results.
o If error, print an error message.
o If error and error looping enabled, loop on error.
This fits into the diagnostic as described by the following steps
done by the diagnostic:
o Do program initialization
o Select test category
o Run these tests
o Select a test
o Run it
o Select next test, exit if no more
o Select next test category to test if OPRSEL switch is set,
otherwise exit the diagnostic.
9.8.1 Type of Tests
There are three types of tests:
o Hardware Test
MAINDEC-10-DFCIA-A-D Page 33
PROGRAM DESCRIPTION SEQ 0037
o Program Option Selection
o Debugger Test
Whenever the tests are run without manual control of which test
is selected, only hardware tests are run. This is the major
function of the diagnostic and these tests comprise 95% of the
diagnostic.
Program option selection tests can be selected when manual
control of what test to run has been selected. These are not tests
in that they do not do anything to the hardware. But since they are
selected from a list of hardware tests, they are called tests.
These consist of switch selections or changes, help, and exit
commands.
The debugger test is a special test that allows one to to CONI,
CONO, DATAI, and DATAO's to the port and in effect write one's own
test. The purpose of this test is for hardware debug of the port,
where one is interested in doing things and inspecting the results
in a less formal fashion than just running tests. This is only one
test but it allows many different things to be done to the port. It
is intended to be used primarily in breadboard debug, but may be
used later by Customer Services or Manufacturing.
9.8.2 Test Flow
The diagnostic runs all tests in numerical sequence, printing out
error message and module callouts as necessary.
The following sections describe starting and stopping tests.
9.8.2.1 Starting the Test
After the program switches have either been given via console
switches or by typing them in on the terminal, the diagnostic starts
the tests as selected by the switches or by user input.
If test tracing is enabled, the diagnostic prints the test pc and
test name at the beginning of each test, and a phrase such as
'(disabled)' if the test actually is not going to be run.
A test is disabled if such has been specified with the DISABLE
test command.
MAINDEC-10-DFCIA-A-D Page 34
PROGRAM DESCRIPTION SEQ 0038
9.8.2.2 Stopping the Test
A test sequence may stop either by terminating normally, by
halting on error (if the ERSTOP switch is set), by the user setting
the ABORT or RSTART switches, or by typing an Altmode or C. In user
mode, ABORT and RSTART are ignored if set.
The diagnostic continues at one of several places depending on
switch settings and whether or not the diagnostic is being run in
exec or user mode and what loader has been used to load the
diagnostic:
o D20MON CMD -
o DIAMON CMD -
o MAGMON CMD -
o What Test -
o @ (TOPS-20 prompt)
o o >. (KLDCP prompt)
9.8.2.3 Obtaining Run Time Status (Control-T)
In user mode the current program status is given when T is typed.
This is not available in exec mode.
9.8.2.4 Obtaining Run Time Status (S or Control-S)
In exec mode, while running tests, the current test name and time
is printed when an S <CR>, s <CR> or Control-S is typed.
In user mode, typing an S or s produces the printout.
MAINDEC-10-DFCIA-A-D Page 35
TEST DESCRIPTIONS SEQ 0039
10.0 TEST DESCRIPTIONS
10.1 Test Description Assumptions
All test descriptions assume that no program switches are set.
The action of a test if a particular switch is set may be determined
by reviewing the function of the switch, given in prior sections.
10.2 Test Description Overview
The description for 'program option selection' test consists of
what each item does and a description of its use.
The description given for a 'hardware' test consists of a single
line test description. The diagnostic listing provides a detailed
description at the beginning of each test. Specific implementation
details can be obtained from the listing or from the microcode of
the test.
The description for the 'debug' test gives a list of commands and
what each does.
MAINDEC-10-DFCIA-A-D Page 36
TEST DESCRIPTIONS SEQ 0040
10.3 Program Option Selections
10.3.1 Basic Description
This is a set of commands that can be given to facilitate running
tests or debugging the port.
10.3.2 Commands Available
The commands available in regular mode are as follows, which are
typed in response to the prompt 'What test - ':
NAME DESCRIPTION
---- -----------
Hardware Tests:
--------------
ALL n Execute ALL tests (n times)
PORT n Execute Port modules tests
PBUFF n Execute PBuff module tests
LINK n Execute Link module tests
LOOP n Execute Loopback tests
FUNCT n Execute tests verifying microcode functionality
m n Test m
General Commands:
----------------
HELP Print this message
EXIT Return to normal test dispatching
DDT Enter DDT (Type RTN$X to return)
TAKE Take cmds from file
NTAKE Take cmds from file (not echoed)
DEBUG Enter port debugger
DIAMON Enter DIAMON
Test Control Commands:
---------------------
ENABLE n Enable execution of test n
DISABL n Disable execution of test n
DISLIS List disabled tests
LIST n List all tests (or just test n)
Statistics Commands:
-------------------
STATIS Print statistics
ZSTATS Clear statistics
CI Configuration Commands:
-------------------------
MAINDEC-10-DFCIA-A-D Page 37
TEST DESCRIPTIONS SEQ 0041
CONFIG Determine/print configuration
CONPNT Print configuration
Switches:
--------
SWITCH Enter switch information
SWPRIN Print current switch settings
NOPNT Complement 'no print' switch
PNTLPT Complement 'print lpt' switch
DING Complement 'bell on error' switch
ERSTOP Complement 'halt on error' switch
PALERS Complement 'print all errors' switch
RELIAB Complement 'reliability mode' switch
TXTINH Complement 'text inhibit' switch
OPRSEL Complement 'operator select' switch
TRACE Complement 'trace test' switch
INHFLT Complement 'inhibit fault isolation' switch
INHMSG Complement 'inhibit error message' switch
LOOPGM Complement 'loop on pgm' switch
LOOPTS Complement 'loop on test' switch
RUNALL Complement 'run all test segments' switch
DSPEAR Complement 'disable SPEAR reporting' switch
UDEBUG Complement 'user mode debug' switch
MDEBUG Complement 'error message debug' switch
SDEBUG Complement 'test debug' switch
LDEBUG Complement 'load microcode debug' switch
DDEBUG Complement 'dump on error' switch
EDEBUG Complement 'expanded error msg' switch
10.3.3 Detailed Command Description
In more detail these commands are as follows:
10.3.3.1 Hardware Tests
ALL n
This command will run all hardware tests the number of times
specified by the repeat count. If no repeat count is specified, the
diagnostic asks how many passes to run.
PORT n
This command will run all port related (EBUS, MPROC, CBUS
modules) tests the number of times specified by the repeat count.
If no repeat count is specified, the diagnostic asks how many passes
to run.
MAINDEC-10-DFCIA-A-D Page 38
TEST DESCRIPTIONS SEQ 0042
PBUFF n
This command will run all Packet Buffer module tests the number
of times specified by the repeat count. If no repeat count is
specified, the diagnostic asks how many passes to run.
LINK n
This command will run all Link module tests the number of times
specified by the repeat count. If no repeat count is specified, the
diagnostic asks how many passes to run.
LOOP n
This command will run all LOOPBACK tests the number of times
specified by the repeat count. If no repeat count is specified, the
diagnostic asks how many passes to run.
FUNCT n
This command will run all tests which verify the functionality of
the microcode. They will be run the number of times specified by
the repeat count. If no repeat count is specified, the diagnostic
asks how many passes to run.
m n
This command is given to run a single test. The test number is
given followed by an optional repeat count. If a repeat count is
not given, the test is executed only once.
10.3.3.2 General Commands
HELP
This command prints a one line description for each command.
EXIT
This command returns control to the diagnostic loader or to KLDCP
if no loader program was used to load the diagnostic in exec mode.
DDT
This command invokes DDT. When RTN$X (POPJ 17,0) is executed,
the diagnostic resets the PI system in exec mode and returns to
'What Test - ' question. DDT can also be entered by typing
Control-D and when done typing RTN$X. When invoked in this fashion,
the diagnostic does not reset the PI system.
TAKE file ext
MAINDEC-10-DFCIA-A-D Page 39
TEST DESCRIPTIONS SEQ 0043
This command takes commands from a file. The file may be
specified as an argument to the command. If no file name is
specified, the default file name is used. The default file name is
either 'DFCIA.CMD' or the last file specified.
Any legal command may be specified except another TAKE or
commands which cause exit from the diagnostic such as DDT or DIAMON
or EXIT. DIAMON or EXIT may be included but processing of the take
file will terminate with the command. The diagnostic prints each
command and result on the terminal as it executes each command.
The file specified must be on the load device known to MAGMON or
D20MON or DIAMON. If not, an error message is printed and the take
command is aborted.
If any error occurs while processing the take file, the take
command is aborted. Errors include any unexpected errors such as
unrecognized command, failures to start the port, argument errors,
etc.
NTAKE file ext
This command is identical to the TAKE command with the single
exception that the commands executed are not echoed on the terminal.
All output resulting from execution of the commands is echoed.
DEBUG
Enter port debugger. This test allows specific operations to be
done with the port without the restrictions of executing a
particular test.
DIAMON
Enter DIAMON. This is the same as the EXIT command if a
diagnostic loader is present. If MAGMON is loaded instead of
DIAMON, control returns to MAGMON.
10.3.3.3 Test Control Commands
ENABLE n,n,n,... and DISABL n,n,n,...
The running of a particular test can be explicitly prevented with
the DISABL command. The ENABLE command allows the execution of the
specified tests to be enabled again. Disabling a test will
guarantee that the test will not be run. Enabling a test will allow
a test to be run, but whether or not it is run, depends on the
determination made by the fault isolation algorithm and the
availability of the required port modules.
Example:
| What test - ENABLE 3,4
| What test - DISABL 3,4,10,22
MAINDEC-10-DFCIA-A-D Page 40
TEST DESCRIPTIONS SEQ 0044
DISLIS
This command lists what tests have been disabled. Example:
| What test - DISLIS
|
| TST1 TST3 TST4 TST11 TST22
LIST n
List all tests (or just test n). This command prints the test
description which is also printed in each error message. If no
argument is given, all test descriptions are printed (this can be
aborted by typing an altmode). If a test number such as 2 is typed,
only the description for that test will be printed. Example:
| What test - LIST 2
|
| TST2 - Port Hardware Test 2
|
| What test - LIST
|
| TST1 - Port Hardware Test 1
| TST2 - Port Hardware Test 2
| TST3 - Port Hardware Test 3
| TST4 - PB Register Test 1
| TST5 - Link Register Test 1
| ...
10.3.3.4 Statistics Commands
STATIS
This command prints accumulated statistics. Statistics are kept
only on packets sent and packets received and various information
connected with each. See the Section 6.9.1 'Statistics Printouts'
for more details.
ZSTATS
This command clears statistics. Statistics are also
automatically cleared whenever the diagnostic is restarted via a STM
command.
MAINDEC-10-DFCIA-A-D Page 41
TEST DESCRIPTIONS SEQ 0045
10.3.3.5 CI Configuration Commands
CONFIG
This command is identical to running TST61 'REQID Test'. It
loads operational microcode if necessary, then sends Request-ID
packets to all possible nodes. A configuration table is built and
the configuration is then printed. For example:
| What test - CONFIG
|
| ***** CI Configuration *****
| Port Port Dual Maint Port
| Number Type Path State State
| ------ --------- ---- ----- -------
| 1 KL10-Self Yes No Initialized
| 5 HSC-50 Yes No Initialized
CONPNT
This command prints the configuration last determined.
10.3.3.6 Switches
SWITCH
Enter switch information. Switches can be entered as in the
following example. Usually, though, it is easier just to type the
switch name to turn on or off a switch.
| What Test - SWITCH
|
| Print the selectable pgm switches? (Y or N) - Y
|
| ----Left Side Switches-------- ----Right Side Switches--------
|
| SW KL10 11 Function SW Value Function
| -- ---- ---- -------- -- ----- --------
| 0 400000 100000 Abort 18 400000 Program trace
| ...
|
| Switches = 020010 004000
|
| 20010 LH Switches <# or ?> - ?
|
| Type Y,N,^,CR,^Z
|
| N ABORT -
| N RSTART -
| ...
|
| 4000 RH Switches <# or ?> - ?
|
MAINDEC-10-DFCIA-A-D Page 42
TEST DESCRIPTIONS SEQ 0046
| Type Y,N,^,CR,^Z
|
| N TRACE -
| N INHFLT -
| ...
SWPRIN
Print current switch settings. Example:
| What Test - SWPRIN
|
| Switches: 020010 002000 PNTLPT OPRSEL UDEBUG
NOPNT PALERS TRACE LOOPTS MDEBUG EDEBUG
PNTLPT RELIAB INHFLT RUNALL SDEBUG
DING TXTINH INHMSG DSPEAR LDEBUG
ERSTOP OPRSEL LOOPGM UDEBUG DDEBUG
The name of each of these switches can be typed. The result is
to complement the switch setting. If left hand switches are typed
in exec mode an error message is printed.
MAINDEC-10-DFCIA-A-D Page 43
TEST DESCRIPTIONS SEQ 0047
10.4 Hardware Tests
More information on each of the following hardware tests listed
here can be found in the program listing.
10.4.1 Hardware Tests - EBUS/MPROC/CBUS modules
TST1 - Port Hardware Test 1
TST2 - Port Hardware Test 2
TST3 - Port Hardware Test 3
10.4.2 Functional Tests - Packet Buffer/Link modules
10.4.2.1 Register Tests
TST4 - PB Register Test 1
TST5 - Link Register Test 1
TST6 - PB Register Test 2
TST7 - Link Register Test 2
10.4.2.2 Transmit/Receive Buffer Tests
TST10 - Transmit Buffer Load Test
TST11 - Tranmit Buffer A Test
TST12 - Transmit Buffer B Test
TST13 - Transmit Buffer Addressing Test
TST14 - PB Address Counter Test (Transmit)
TST15 - PB Address Offset Test (Transmit Read)
TST16 - PB Address Offset Test (Transmit Write)
TST17 - Receive Buffer A Test
TST20 - Receive Buffer B Test
TST21 - Receive Buffer Addressing Test
TST22 - Retransmit Buffer A Test
TST23 - Retransmit Buffer B Test
TST24 - Transmit Xmt Buffer A to Rcv Buffer B
TST25 - Transmit Xmt Buffer B to Rcv Buffer A
TST26 - PB Address Offset Test (Receive Read)
TST27 - Addressing Test 1
TST30 - Addressing Test 2
TST31 - Addressing Test 3
10.4.2.3 Node Address Test
TST32 - Node Address Test
MAINDEC-10-DFCIA-A-D Page 44
TEST DESCRIPTIONS SEQ 0048
10.4.2.4 Link Tests
TST33 - Transmit Status
TST34 - 'Abort Transmission' Function (Active)
TST35 - 'Abort Transmission' Function (Inactive)
TST36 - Receiver Status
TST37 - PLI Parity Test
TST40 - LINK Parity Test
10.4.2.5 CRC Tests
TST41 - CRC Test 1
TST42 - CRC Test 2
10.4.2.6 Packet Tests
TST43 - Idle Loop Test
TST44 - Queue Handling Test
TST45 - CI Loopback Test
TST46 - Link Loopback Test
TST47 - Packet Buffer Loopback Test
TST50 - REQID Test
MAINDEC-10-DFCIA-A-D Page 45
TEST DESCRIPTIONS SEQ 0049
10.5 Debug Test
10.5.1 Basic Description
This test allows the selection of different operations that may
be done on port. In some cases, probably rarely, a field engineer
may wish to diagnose an port by doing particular operations. More
often this type of testing may be useful when repairing individual
modules if the technician doing the repair is very familiar with the
module and how it works. This test provides the ability to perform
a basic operation such as writing a register or doing something with
microcode and then inspecting the results to see what happened.
Normally, the port tests provide sufficient detection and
isolation of faults to fix the port. Occasionally, a person trying
to fix the port may encounter an unusual problem not detected by the
diagnostic or having strange symptoms. This test may allow some
understanding of the problem to be gained.
This test can also be used to debug microcode using the
breakpoint facilities. And it can be used to run small microcode
routines of the user's own devising.
10.5.2 Commands Available
The commands available in debug mode are as follows, which are
typed in response to the prompt 'DEBUG> ':
NAME DESCRIPTION
---- -----------
General Commands:
----------------
HELP Print this message
EXIT Exit DEBUG mode
DDT Enter DDT (Type RTN$X to return)
SET opt arg Set/clear/print options
TAKE file ext Take commands from a file
NTAKE file ext Take commands from file (unechoed)
Starting, Stopping, Initializing the Port:
-----------------------------------------
RESET Issue EBUS Reset
CLEAR Issue a 'Port Clear'
START adr Start the port micro-sequencer
STOP Stop the port micro-sequencer
CONT Continue the port micro-sequencer
SSTEP cnt Single step the port micro-sequencer
STRACE cnt Single step and trace execution
SPRINT cnt Print single step history data
MAINDEC-10-DFCIA-A-D Page 46
TEST DESCRIPTIONS SEQ 0050
SCLEAR Clear single step history data
SSINIT Set up single step addr/data/history
Handling Port Registers:
-----------------------
ECSR Examine CSR Register
DCSR dat Deposit CSR Register
ZCSR Zero CSR Register
EEBUF Examine EBUF register
DEBUF dat Deposit EBUF register
ZEBUF Zero EBUF register
ELAR Examine LAR register
DRAR dat Deposit RAR register
ZRAR Zero RAR register
Handling Port CRAM Locations:
----------------------------
The next few commands must have at least one argument and
possibly two. Two arguments give the range of CRAM address to be
altered or inspected. If only one argument is given the range is
only one location. If the deposit command is given, the diagnostic
will ask what to deposit into each location.
DCRAM adr,adr Deposit into CRAM
BCRAM adr,adr Deposit into CRAM by fields
ACRAM adr,adr Alter CRAM
ECRAM adr,adr Examine CRAM
LCRAM adr,adr List CRAM
ZCRAM adr,adr Zero CRAM
2901 Commands:
-------------
E2901 reg,reg Examine 2901 registers
D2901 reg,dat Deposit 2901 register
Z2901 reg,reg Zero 2901 registers
Local Storage Commands:
----------------------
ELOCS adr,adr Examine local storage
DLOCS adr,dat Deposit local storage
ZLOCS adr,adr Zero local storage
Mark Bit Commands:
-----------------
MARK adr,adr Set mark bit
RMARK adr,adr Remove mark bit
CMARK adr,adr Clear all mark bits
LMARK adr,adr List mark bits
MAINDEC-10-DFCIA-A-D Page 47
TEST DESCRIPTIONS SEQ 0051
Breakpoint Commands:
-------------------
BREAK adr,adr Set breakpoint
RBREAK adr,adr Remove breakpoint
CBREAK adr,adr Clear all breakpoints
LBREAK adr,adr List breakpoints
Microcode Commands:
------------------
LOAD tst Load microcode from Test 'tst' into CRAM
LIST tst List microcode from Test 'tst'
FLOAD Load microcode from file into CRAM
FVERFY Verify microcode loaded from file
FLIST List microcode in file
FEXAM Examine microcode in file
Statistics Commands:
-------------------
STATIS Print statistics
ZSTATS Clear statistics
Configuration Commands:
----------------------
CONFIG Determine/print configuration
CONPNT Print configuration
CI Commands:
-----------
PINIT Initialize PCB and queues
SIDLE Start port/wait for IDLE loop
BPACK Build packet
IQUEUE Put packet on cmd queue
PQUEUE n Print specified queue
PPCB Print PCB
WATCH Watch port and print events
DEPPAK Deposit into packet
PLI Register Commands:
---------------------
DPLI lnk,data,rep Deposit PLI data
EPLI lnk,rep Examine PLI data
IPLI Initialize PILA/Link modules
Miscellaneous Commands:
----------------------
TRANSL dat Translate data to CSR bits
FILLNX dat Fill CRAM with 'J=.+1,CTL=dat'
FILLPC dat Fill CRAM with 'J=.,CTL=dat'
CCODE Print condition codes
MAINDEC-10-DFCIA-A-D Page 48
TEST DESCRIPTIONS SEQ 0052
ESTACK Examine 2910 stack contents
ENEXT Examine next
DNEXT arg Deposit next
DUMP Dump entire port status
IPRINT Print accumulated interrupt activity
ICLEAR Clear accumulated interrupt activity
IINIT Init interrupt system
Data Transfer Commands:
----------------------
CCWPNT Print CCW list
LOGPNT Print logout data
Switches:
--------
SWITCH Enter switch information
SWPRIN Print current switch settings
NOPNT Complement 'no print' switch
PNTLPT Complement 'print lpt' switch
DING Complement 'bell on error' switch
ERSTOP Complement 'halt on error' switch
PALERS Complement 'print all errors' switch
RELIAB Complement 'reliability mode' switch
TXTINH Complement 'text inhibit' switch
OPRSEL Complement 'operator select' switch
TRACE Complement 'trace test' switch
INHFLT Complement 'inhibit fault isolation' switch
INHMSG Complement 'inhibit error message' switch
LOOPGM Complement 'loop on pgm' switch
LOOPTS Complement 'loop on test' switch
RUNALL Complement 'run all test segments' switch
DSPEAR Complement 'disable SPEAR reporting' switch
UDEBUG Complement 'user mode debug' switch
MDEBUG Complement 'error message debug' switch
SDEBUG Complement 'test debug' switch
LDEBUG Complement 'load microcode debug' switch
DDEBUG Complement 'dump on error' switch
EDEBUG Complement 'expanded error msg' switch
10.5.3 Detailed Command Description
In more detail these commands are as follows:
MAINDEC-10-DFCIA-A-D Page 49
TEST DESCRIPTIONS SEQ 0053
10.5.3.1 General Commands
HELP
This command prints a one line description similar to the above
for each command.
EXIT
This command returns control to normal test dispatching at the
'What Test -' question.
DDT
This command invokes DDT. When RTN$X (POPJ 17,0) is executed,
the diagnostic resets the PI system in exec mode and returns to
'DEBUG>' question. DDT can also be entered by typing Control-D and
when done typing RTN$X. When invoked in this fashion, the
diagnostic does not reset the PI system.
SET
This command is used to set, clear, or print program options.
The option is specified as the first argument and the option setting
as the second argument. The options that may be dealt with are as
follows:
o SET ADDR adr.
This command sets the start address of the microsequencer.
Whenever a START command or a SSINIT command is given, the
default address given here is used. A START command may also
explicitly specify the starting address. No commands other than
SET ADDR alter the default starting address.
The initial default address is location 0. To find out the
current default address, type SET ADDR <CR>.
o SET CSR data.
This command sets the initial CSR register starting contents.
When a subsequent START or SSINIT command is given, this data is
written to the CSR when starting the microsequencer. This
allows the state of CSR bits to be set up - such as interrupt
enable and PI level bits.
The initial value is 0. When a START or single step command is
given with the default CSR data equal to 0, the diagnostic
writes 14 to the CSR register (MPRUN, PI Level 4) or 20014 if
single stepping (SINCYC bit included).
To find out the current start data, type SET CSR <CR>.
o SET PARITY arg.
MAINDEC-10-DFCIA-A-D Page 50
TEST DESCRIPTIONS SEQ 0054
This command affects the automatic parity generation when
loading microcode into the CRAM. If the flag is 'YES' the
diagnostic computes correct parity before it loads any
microcode. If 'NO' the diagnostic assumes the parity has
already computed and does not alter the parity bit specified in
the microcode data.
This flag only affects microcode explicitly loaded in the DEBUG
test. This flag does not affect loading microcode from a file.
When operational microcode is loaded in this fashion, parity is
not affected.
The initial value of the flag is 'YES'. To find out the current
setting, type SET PARITY <CR>.
o SET EBUF arg.
This command affects the automatic preservation of the EBUF when
single stepping or stopping the microsequencer. If 'preserve
EBUF' flag is 'YES' the diagnostic will read the EBUF before
reading the LAR and then write back the data afterwards. If the
flag is 'NO' the contents of the EBUF will be destroyed every
time the RAR is written or the LAR read.
The initial value of the flag is 'YES'. To find out the current
setting, type SET EBUF <CR>.
o SET LENGTH len.
This command sets the text length in bytes to be used when
generating datagrams. Any length up to 1000 (decimal) bytes may
be specified.
The initial length is '200 bytes'. To find out the current
setting, type SET LEN <CR>.
o SET PAT n.
This command specifies the data pattern to be used when building
a datagram containing a text portion. Any data pattern from 1
to 126 (octal) may be entered.
The initial value is '1' (data pattern zeros). To find out the
current setting, type SET PAT <CR>.
o SET PATLIS arg,arg.
This command prints what data patterns are available. One or
two arguments may be given to specify a range of data patterns.
The diagnostic prints a description for each data pattern in the
range specified. If no arguments are specified, all data
patterns will be printed.
o SET FNAME name ext
MAINDEC-10-DFCIA-A-D Page 51
TEST DESCRIPTIONS SEQ 0055
The diagnostic allows a microcode file to be loaded into CRAM or
listed on the terminal. The commands used do not allow a
microcode file name to be specified. The name of the file used
can be changed by this command.
The initial file name is 'KLIPA.ULD'. To find out the current
setting, type SET FNAME <CR>.
o SET PCB arg
This command is used for operational microcode debug. A flag is
maintained that determines whether or not the START command
should set up a CCW list specifying a portion of the PCB (Port
Control Block). If the flag is set, the diagnostic will set up
the CCW list. The microcode reads the data in the PCB for
initialization purposes.
The initial value of the flag is 'NO'. To find out the current
setting, type SET PCB <CR>.
o SET RESPON arg
This option specifies whether or not a response packet is
desired on every command packet given to the operational
microcode. If the response flag is not set in the packet, a
response packet will be placed on the response queue only if an
error occurs. If the response flag is set, a response packet is
always built.
The initial setting of the flag is 'NO'. To find out the
current setting, type SET RESPON <CR>.
o SET PATH
This option determines the path over which the packet is to be
sent. The setting can be: Auto, Path 1, or Path 2.
The initial setting of the flag is 'Auto path'. To find out the
current setting, type SET PATH <CR>.
o SET PORT
This option specifies the our port number. All loopback packets
built in DEBUG mode will contain this port number as the
destination.
The initial setting of our port number is determined when the
node number register in the Link module is read. If no tests
have been run, the initial setting is 0. To find out the
current setting, type SET PORT <CR>.
o SET DPORT
This option specifies the destination port number. All packets
built in DEBUG mode will contain this port number as the
destination.
MAINDEC-10-DFCIA-A-D Page 52
TEST DESCRIPTIONS SEQ 0056
The initial setting of the destination port is '14'. To find
out the current setting, type SET DPORT <CR>.
o SET XCTID
This option determines the transation ID to include in command
packets being sent. Typically, a test will initialize this to
zero, and increment it after each packet is built.
The initial setting of the XCT-ID is '12,34'. To find out the
current setting, type SET XCTID <CR>.
o SET PRINT
This option determines the amount of the text portion to print
when printing a packet.
The initial setting of the flag is '3 words'. To find out the
current setting, type SET PRINT <CR>.
o SET IGNORE arg
If the port is connected to the port and there are other active
nodes on the CI, the other nodes may periodically send datagrams
to this port. If the packets are being printed as they are
received, these extraneous packets may confuse things. This
option allows extraneous datagrams to be ignored.
The initial setting of the flag is 'YES'. To find out the
current setting, type SET IGNORE <CR>.
o SET INTERV
This parameter determines the interval to insert packets on the
command queue when running the special debug function 'WATCH'.
If this is set to zero, packets will be stuffed on the command
queue until there is no more room, then as packets are received
get put on the free queue, more packets are placed on the
command queue.
The initial setting of the interval is '10 seconds'. To find
out the current setting, type SET INTERV <CR>.
o SET SUMMAR
This parameter determines the summary interval when running the
special debug function 'WATCH'. Short statistics will be
printed at this interval.
The initial setting of the interval is '60 seconds'. To find
out the current setting, type SET SUMMAR <CR>.
o SET WHAT
MAINDEC-10-DFCIA-A-D Page 53
TEST DESCRIPTIONS SEQ 0057
This command prints the current selection of each option.
o SET HELP
This command prints a help message describing each option
available to the set command.
TAKE file ext
This command takes commands from a file. The file may be
specified as an argument to the command. If no file name is
specified, the default file name is used. The default file name is
either 'DFCIA.CMD' or the last file specified.
Any legal command may be specified including another TAKE
command. The presence of a TAKE or DDT or EXIT (from DFCIA) command
in the take file will terminate use of the current file. The
diagnostic prints each command and result on the terminal as it
executes each command.
The file specified must be on the load device known to MAGMON or
D20MON or DIAMON. If not, an error message is printed and the TAKE
command is aborted.
If any error occurs while processing the take file, the TAKE
command is aborted. Errors include any unexpected errors such as
unrecognized command, failures to start the port, argument errors,
etc.
NTAKE file ext
This command is identical to the TAKE command with the single
exception that the commands executed are not echoed on the terminal.
All output resulting from execution of the commands is echoed.
10.5.3.2 Starting, Stopping, Initializing the Port
The START, SSTEP or STRACE commands can be given at any time
without concern if the port is running or not. The diagnostic will
stop the port if it has to and clear any error condition. If it
changes the state of the port, the diagnostic prints a message to
that effect.
RESET
Issue EBUS Reset. This does a CONO APR,200000. In user mode a
'Port Clear' is done instead.
CLEAR
Issue a 'Port Clear'. A 400000 is written to the CSR register.
MAINDEC-10-DFCIA-A-D Page 54
TEST DESCRIPTIONS SEQ 0058
START adr
The port is started at address specified. The procedure is as
follows:
o Determine start address. If no address is specified, the start
address used is the default address given by the SET ADDR
command.
o Determine start CSR data. This is the data specified by a SET
CSR command. Insert the necessary bit 'MPRUN' and ensure
'SINCYC' bit is not set.
o Read the CSR register, if the port is already running or error
bits are set, stop the port or clear error bits as necessary.
o Write the start address to the RAR
o Write CSR data to the CSR
CONT
This command is identical in function to the START command with
the exception of the start address. In addition, if the port is not
already stopped, an error message is printed and the start sequence
aborted. The start address is the last 'next' address obtained from
a single step command.
The only purpose of this command is to start up the port after
single stepping it for a while.
STOP
Stop the port micro-sequencer and print out the contents of the
LAR. If the CSR is inaccessible, or if error bits CRAM PE or MBUS
Error are set, an error message is printed.
SSTEP n and STRACE n
Single step the port micro-sequencer 'n' times. Before this
command is done the first time, the start data and start CSR data
must be set up using the SSINIT command. Thereafter, the address
written to the RAR each time the port is single stepped is the 'last
address' read from the LAR after the prior single step.
STRACE causes the single step history data to be printed at the
same time that single steps are being done. The data is printed in
the same format as the SPRINT command except for the order in which
the single steps are printed.
The port is stopped or error bits are cleared from the CSR
register as necessary before any single steps are done.
MAINDEC-10-DFCIA-A-D Page 55
TEST DESCRIPTIONS SEQ 0059
If CRAM PE or MBUS Error bits become set in the CSR register, a
message is printed and the single stepping is aborted.
To abort the single step procedure at any time, type altmode.
SPRINT n
Print single step history data. Data for the last 'n' (maximum
128) single steps are printed in the following format. If no
argument is given, no more than 20 single steps are printed.
| DEBUG> SPRINT 4
|
| RAR LAR CSR (final) SS#
| 0000 0100 000000 020010 12
| 0100 0230 000000 020010 11
| 0230 0231 000000 020010 10
| 0231 0232 000000 020010 7
SCLEAR
Clear single step history data.
SSINIT
Set up single step data. This sets the single step address to be
the default address specified by the SET ADDR command. The single
step CSR data is set to the default data specified by the SET CSR
command. Also, the single step history data is cleared.
This command MUST be given in order to execute the first single
step. If not given the port will start at the last address executed
by a single step.
10.5.3.3 Handling port registers
Each of the EBUF commands can be given at any time without
concern if the port is running or not. The diagnostic will stop the
port if it has to and clear any error condition. If it changes the
state of the port, the diagnostic prints a message to that effect.
ECSR
Examine CSR Register. The contents are printed in octal and
translated into English as well.
DCSR dat
Deposit CSR Register. The data expected is up to 6 octal digits.
ZCSR
MAINDEC-10-DFCIA-A-D Page 56
TEST DESCRIPTIONS SEQ 0060
Zero CSR Register. This also stops the port if it is running.
EEBUF
Examine EBUF register. The data is printed in halfword format.
The port is stopped or error bits are cleared from the CSR
register as necessary before reading the EBUF. Then the 'Test EBUF'
bit is set in the CSR register if it is not already set and the EBUF
is read.
DEBUF dat
Deposit EBUF register. The data expected is up to 12 octal
digits.
The port is stopped or error bits are cleared from the CSR
register as necessary before reading the EBUF. Then the 'Test EBUF'
bit is set in the CSR register if it is not already set and the EBUF
is written.
ZEBUF
Zero EBUF register
The port is stopped or error bits are cleared from the CSR
register as necessary before reading the EBUF. Then the 'Test EBUF'
bit is set in the CSR register if it is not already set and the EBUF
is zeroed.
ELAR
Examine LAR register and print it as 'LAR/ 0000'. This is
actually a 13 bit register. The right most bit is the bit written
to the RAR register to specify which half of the CRAM to access.
This bit is not printed.
DRAR dat
Deposit RAR register. The data consists of a 12 bit CRAM address
followed by one bit specifying left or right half. Example:
| DEBUG> DRAR 0 ; Write location 0 (right half)
| DEBUG> DRAR 1 ; Write location 0 (left half)
| DEBUG> DRAR 10 ; Write location 4 (right half)
| DEBUG> DRAR 11 ; Write location 4 (left half)
ZRAR
Zero RAR register.
MAINDEC-10-DFCIA-A-D Page 57
TEST DESCRIPTIONS SEQ 0061
10.5.3.4 Handling port CRAM locations
Each of the following commands can be given at any time without
concern if the port is running or not. The diagnostic will stop the
port if it has to and clear any error condition. If it changes the
state of the port, the diagnostic prints a message to that effect.
The diagnostic also ensures that 'Test EBUF' bit is not set and 'Sel
LAR' bit is not set.
Commands that read or write CRAM locations are given up to 2
arguments. The action in each case is as follows:
o No arguments - The CRAM addresses used are those last used. So
if a zero CRAM command is given to clear locations 1001 through
1004, a subsequent examine cram command with no arguments would
examine locations 1001 through 1004.
o One argument - The range of CRAM locations is taken as
addr1,addr1.
o Two arguments - The range of CRAM locations is taken as
addr1,addr2.
DCRAM adr,adr
Deposit into CRAM locations specified either by explicit
arguments or by default. The format of the data is the same format
produced as output of the MICRO2 assembler. Example:
| DEBUG> DCRAM 10
|
| Type xxxx,xxxx,xxxx,xxxx,xxxx
| 0010 :: 11,22,33,44,55
BCRAM adr,adr
Deposit into CRAM locations specified either by explicit
arguments or by default. The data is asked for each location, one
field at a time. The initial data to be written to each CRAM
location is zero. Example:
| DEBUG> BCRAM 10
|
| Type value,value... or ^,CR,^Z,field name
| 0010 ::
| J -
| PAR - Type: value<CR> value<CR> ...
| OENA - or: value,value,...<CR>
| MGC - or: ^ to back up to the previous
| SORC - value
| FUNC - or: <CR> to leave a value unchanged
| DEST - or: field name such as MGC or FUN or
| CENA - A or M (for MGC) .. to skip to
MAINDEC-10-DFCIA-A-D Page 58
TEST DESCRIPTIONS SEQ 0062
| RAM - a particular field
| A - or: ^Z to terminate input and store
| B - the CRAM location
| SK - or: $ (altmode) to abort the command
| BUS - and not store anything
| CRY -
| CTL -
| TIME -
| SPARE -
| MARK -
Note: Everything can be typed on one line, such as this
example to change A, B, and MGC fields only:
| DEBUG> BCRAM 10
|
| Type value,value... or ^,CR,^Z,field name
| 0010 ::
| J - A,3,4,M,1234,^Z
|
| DEBUG>
ACRAM adr,adr
Alter CRAM locations specified either by explicit arguments or by
default. The data is asked for each location, one field at a time.
Example:
| DEBUG> ACRAM 10
|
| Type value,value... or ^,CR,^Z,field name
| 0010 ::
| 0 J -
| 0 PAR - Type: value<CR> value<CR> ...
| 0 OENA - or: value,value,...<CR>
| 33 MGC - or: ^ to back up to the previous
| 0 SORC - value
| 1 FUNC - or: <CR> to leave a value unchanged
| 0 DEST - or: field name such as MGC or FUN or
| 0 CENA - A or M (for MGC) .. to skip to
| 0 RAM - a particular field
| 0 A - or: ^Z to terminate input and store
| 0 B - the CRAM location
| 22 SK - or: $ (altmode) to abort the command
| 0 BUS - and not store anything
| 1 CRY -
| 0 CTL -
| 0 TIME -
| 0 SPARE -
| 0 MARK -
Note: Everything can be typed on one line, as in the
example under 'BCRAM' command above.
MAINDEC-10-DFCIA-A-D Page 59
TEST DESCRIPTIONS SEQ 0063
ECRAM adr,adr
Examine CRAM locations specified either by explicit arguments or
by default. The data is printed in MICRO2 assembler format.
Example:
| DEBUG> ECRAM 10,12
|
| 0010 / 0000 0001 0400 0000 0400
| 0011 / 0000 0001 1400 0000 0440
| 0012 / 0000 0001 2400 0000 0500
LCRAM adr,adr
List CRAM locations specified either by explicit arguments or by
default. The data is printed in bit field format. Example:
| DEBUG> LCRAM 0,3
|
| ADDR/ JUMP PAR OUT MGC SOR FUN DES CC RAM PA PB SK BUS CRY CTL TM SP MK
| 0/ 0 0 0 0 0 1 0 0 0 0 0 0 0 0 JZ 0 0 0
| 1/ 0 0 0 0 0 3 0 0 0 0 0 0 0 0 JZ 0 1 0
| 2/ 0 0 0 0 0 5 0 0 0 0 0 0 0 0 JZ 0 2 0
| 3/ 0 0 0 0 0 7 0 0 0 0 0 0 0 0 JZ 0 3 0
ZCRAM adr,adr
Zero CRAM locations specified either by explicit arguments or by
default.
10.5.3.5 2901 Commands
Each of the following commands can be given at any time without
concern if the port is running or not. The diagnostic will stop the
port if it has to and clear any error condition. If it changes the
state of the port, the diagnostic prints a message to that effect.
These commands may be given up to 2 arguments. The action in
each case is as follows:
o No arguments - The 2901 registers used are those last used. So
if registers 0 through 4 are examined, a subsequent examine
command with no arguments would examine registers 0 through 4.
o One argument - The range of 2901 registers is taken as
reg1,reg1.
o Two arguments - The range of 2901 registers is taken as
reg1,reg2
MAINDEC-10-DFCIA-A-D Page 60
TEST DESCRIPTIONS SEQ 0064
E2901 reg,reg
Examine the contents of the range of 2901 registers specified.
Microcode is loaded into the port to accomplish this, but no 2901
registers or local storage locations are affected. And the original
contents of the CRAM location used are restored.
D2901 reg,data
Deposit the data into the 2901 register specified. Microcode is
loaded into the port to accomplish this, and only the 2901 register
specified is affected. The original contents of the CRAM location
used are restored.
To deposit data into successive registers, additional data can be
typed. For example, to load registers 3,4,5,6 with 333,444,555,666
respectively, type the following:
| DEBUG> D2901 3,333,444,555,666
|
Z2901 reg,reg
Zero the range of 2901 registers specified. Microcode is loaded
into the port to accomplish this. The original contents of the CRAM
location used are restored.
10.5.3.6 Local Storage Commands
Each of the following commands can be given at any time without
concern if the port is running or not. The diagnostic will stop the
port if it has to and clear any error condition. If it changes the
state of the port, the diagnostic prints a message to that effect.
These commands may be given up to 2 arguments. The action in
each case is as follows:
o No arguments - The local storage addresses used are those last
used. So if a zero local storage command is given to clear
locations 101 through 104, a subsequent examine local storage
command with no arguments would examine locations 1001 through
1004.
o One argument - The range of local storage locations is taken as
addr1,addr1.
o Two arguments - The range of local storage locations is taken as
addr1,addr2
MAINDEC-10-DFCIA-A-D Page 61
TEST DESCRIPTIONS SEQ 0065
ELOCS adr,adr
Examine local storage addresses specified by the range of
addresses. Microcode is loaded into the port to accomplish this and
several 2901 registers are destroyed in the process. No local
storage locations are affected. And the original contents of the
CRAM locations used are restored.
DLOCS adr,dat
Deposit local storage address 'adr' with 36 bit octal data 'dat'.
Microcode is loaded into the port to accomplish this and several
2901 registers are destroyed in the process. No local storage
locations are affected. And the original contents of the CRAM
locations used are restored.
To deposit data into successive locations, additional data can be
typed. For example, to load locations 103,104,105,106 with
333,444,555,666 respectively, type the following:
| DEBUG> DLOCS 103,333,444,555,666
|
ZLOCS adr,adr
Zero local storage addresses specified by the range of addresses.
Microcode is loaded into the port to accomplish this, but no 2901
registers or local storage locations are affected. And the original
contents of the CRAM locations used are restored.
10.5.3.7 Mark Bit Commands
Each CRAM word has a mark bit that can be set or cleared. It is
used only to sync a scope on. Parity is not calculated for this
location.
The diagnostic does not keep track of which locations have mark
bits set. If it is requested to list marked CRAM locations, the
diagnostic just looks for locations with the mark bit set.
Each of these commands can be given at any time without concern
if the port is running or not. The diagnostic will stop the port if
it has to and clear any error condition. If it changes the state of
the port, the diagnostic prints a message to that effect.
MARK adr1,adr2,adr3,...
Set mark bit at locations adr1,adr2,adr3,...
RMARK adr1,adr2,adr3,...
MAINDEC-10-DFCIA-A-D Page 62
TEST DESCRIPTIONS SEQ 0066
Remove mark bit from locations adr1,adr2,adr3,...
CMARK adr1,adr2
Clear all mark bits between adr1 and adr2. If only one argument
is given only that one location is rewritten without the mark bit
set. If no arguments are supplied, all mark bits are cleared
throughout the CRAM.
LMARK adr1,adr2
List all locations with mark bit set between adr1 and adr2. If
only one argument is given only that one location is checked. If no
arguments are supplied, all location with the bit set are listed
throughout the CRAM.
10.5.3.8 Breakpoint Commands
A breakpoint consists of a location with bad parity. The
diagnostic does not keep track of these locations itself. If it is
requested to list breakpoints, it just looks for locations with bad
parity.
Each of these commands can be given at any time without concern
if the port is running or not. The diagnostic will stop the port if
it has to and clear any error condition. If it changes the state of
the port, the diagnostic prints a message to that effect.
BREAK adr1,adr2,adr3,...
Set breakpoints at locations adr1,adr2,adr3,...
RBREAK adr1,adr2,adr3,...
Remove breakpoints from locations adr1,adr2,adr3,...
CBREAK adr1,adr2
Clear all breakpoints between adr1 and adr2. If only one
argument is given only that one location is rewritten with good
parity. If no arguments are supplied, all breakpoints are removed
throughout the CRAM.
LBREAK adr1,adr2
List breakpoints between adr1 and adr2. If only one argument is
given only that one location is checked for bad parity. If no
arguments are supplied, all breakpoints are listed throughout the
CRAM.
MAINDEC-10-DFCIA-A-D Page 63
TEST DESCRIPTIONS SEQ 0067
10.5.3.9 Microcode Commands
Each of these commands can be given at any time without concern
if the port is running or not. The diagnostic will stop the port if
it has to and clear any error condition. If it changes the state of
the port, the diagnostic prints a message to that effect.
LOAD tst
Load microcode from Test 'tst' into CRAM and verify the result.
Example:
| DEBUG> LOAD 3
|
| [Done - Number of CRAM locations loaded/verified = 182.]
LIST tst
List microcode from Test 'tst'. All locations are listed in the
order that they would be loaded, not necessarily in order by CRAM
address. Example:
| DEBUG> LIST 3
|
| ADDR/ JUMP PAR OUT MGC SOR FUN DES CC RAM PA PB SK BUS CRY CTL TM SP MK
| 0/ 2 0 0 0 0 0 0 0 0 0 0 1 0 0 CJPP 0 0 0
| 1/ 10 1 0 0 0 0 0 0 0 0 0 0 0 0 JMAP 0 0 0
| 2/ 4 1 0 0 0 0 0 0 0 0 0 3 0 0 CJPP 0 0 0
| 3/ 11 0 0 0 0 0 0 0 0 0 0 0 0 0 JMAP 0 0 0
| ...
FLOAD
Load microcode from file into a buffer and from the buffer into
CRAM. The file used is the default file name KLIPA.ULD or the file
last specified by the SET FNAME command. DIAMON or D20MON or MAGMON
must be loaded in order to load the microcode from the selected load
device. The diagnostic prints an error message if it cannot access
the microcode file. This command also verifies the microcode it has
loaded. Example:
| DEBUG> FLOAD
|
| [Reading file: K402.ULD]
|
| [3040. microwords loaded]
|
| [Loading K402.ULD into CRAM]
|
| [3040. CRAM locations loaded/verified]>
|
| [Ucode version 402]
|
| DEBUG>
MAINDEC-10-DFCIA-A-D Page 64
TEST DESCRIPTIONS SEQ 0068
FVERFY
This command causes the microcode previously loaded into CRAM
from a file to be verified. Up to 3 verify errors are printed.
Example:
| DEBUG> FVERFY
|
| 3040. CRAM locations loaded - 74. verify errors:
| Addr Correct Actual
| 0000 0002 0000 1631 6702 0060 0000 0000 0100 0000 0000
| 0001 0002 0000 7510 0002 0060 0000 0000 0300 0000 0002
| 0002 0007 2000 4315 6002 0060 0000 0000 0500 0000 0004
|
| DEBUG>
FLIST
List microcode in file in field format. The file used is the
default file name KLIPA.ULD or the file last specified by the SET
FNAME command. DIAMON or D20MON or MAGMON must be loaded in order
to obtain the microcode from the selected load device. The
diagnostic prints an error message if it cannot access the microcode
file. Example:
| DEBUG> FLIST
|
| ADDR/ JUMP PAR OUT MGC SOR FUN DES CC RAM PA PB SK BUS CRY CTL TM SP MK
| 0/ 2 0 0 0 1 6 3 0 0 16 16 2 0 0 CJP 0 0 0
| 1/ 2 1 0 0 7 5 1 0 0 0 0 2 0 0 CJP 0 0 0
| 2/ 7 0 1 0 4 3 1 1 0 16 0 2 0 0 CJP 0 0 0
| ...
FEXAM
List microcode in file in MICRO2 format. The file used is the
default file name KLIPA.ULD or the file last specified by the SET
FNAME command. DIAMON or D20MON or MAGMON must be loaded in order
to obtain the microcode from the selected load device. The
diagnostic prints an error message if it cannot access the microcode
file. Example:
| DEBUG> FEXAM
|
| 0000 / 0001 0000 1631 6702 0060
| 0001 / 0025 6000 4315 6542 0060
| 0007 / 0004 4000 7510 7542 0060
| ...
MAINDEC-10-DFCIA-A-D Page 65
TEST DESCRIPTIONS SEQ 0069
10.5.3.10 Statistics Commands
STATIS
This command prints accumulated statistics. Statistics are kept
only on packets sent and packets received and various information
connected with each. See the Section 6.9.1 'Statistics Printouts'
for more details.
ZSTATS
This command clears statistics. Statistics are also
automatically cleared whenever the diagnostic is restarted via a STM
command.
10.5.3.11 CI Configuration Commands
CONFIG
This command is identical to running TST61 'REQID Test'. It
loads operational microcode if necessary, then sends Request-ID
packets to all possible nodes. A configuration table is built and
the configuration is then printed. For example:
| What test - CONFIG
|
| ***** CI Configuration *****
| Port Port Dual Maint Port
| Number Type Path State State
| ------ --------- ---- ----- -------
| 1 KL10-Self Yes No Initialized
| 5 HSC-50 Yes No Initialized
CONPNT
This command prints the configuration last determined.
10.5.3.12 CI Commands
PINIT
This command initializes the port control block and all of the
queues specified in it.
SIDLE
This command sets up the 3 word data transfer giving the
initialization data used by the microcode at start up. It ensures
that EPT location 34 contains a jump CCW word to the CCW in the PCB.
Then the diagnostic starts up the IPA and waits up to 2 seconds for
the microcode to enter the idle loop. If it does not, a message to
MAINDEC-10-DFCIA-A-D Page 66
TEST DESCRIPTIONS SEQ 0070
that effect is printed.
BPACK opcode
This command builds a packet which can then be placed on a
command queue. A packet is built based on opcode and program
options.
It is assumed that the PCB and queues have already been
initialized. The microcode need not have been started however.
A list of opcodes may be obtained by typing BPACK ? as follows:
| DEBUG> BP ?
| BPACK opcode (CR), where opcode:
| 1-SndDg 7-SndStrt 15-SndLb 22-SntMdat 33-RdCnt
| 2-SndMsg 10-ReqDat0 16-ReqMdat 30-ClsBuf 36-WrReg
| 5-ReqId 11-ReqDat1 20-SndDat 31-SetCkt 37-RdReg
| 6-SndRst 12-ReqDat2 21-RetDat 32-SetCnt
|
| DEBUG>
IQUEUE queue
This command places a packet that has already been built on the
specified command queue.
PQUEUE queue1,queue2
This command prints specified queue(s). If only one queue number
is given, only that queue will be printed. If a range of queues is
given all of the queues specified will be printed.
The queues are printed in the following format:
| DEBUG> PQUEUE 0,6
|
| CmdQ3 (PCB+3): Flink = PCB+3 Blink = PCB+3
| Queue is empty
|
| CmdQ2 (PCB+6): Flink = PCB+6 Blink = PCB+6
| Queue is empty
|
| CmdQ1 (PCB+11): Flink = PCB+11 Blink = PCB+11
| Queue is empty
|
| CmdQ0 (PCB+14): Flink = PCB+14 Blink = PCB+14
| Queue is empty
|
| RspQ (PCB+17): Flink = PCB+17 Blink = PCB+17
| Queue is empty
|
| MsgFQ (PCB+22): Flink = BUFF+400 Blink = BUFF+2000
| BUFF+400/ Flink = BUFF+1000 Blink = PCB+22
| BUFF+1000/ Flink = BUFF+1400 Blink = BUFF+400
MAINDEC-10-DFCIA-A-D Page 67
TEST DESCRIPTIONS SEQ 0071
| BUFF+1400/ Flink = BUFF+2000 Blink = BUFF+1000
| BUFF+2000/ Flink = PCB+22 Blink = BUFF+1400
|
| DgmFQ (PCB+25): Flink = BUFF+2400 Blink = BUFF+7000
| BUFF+2400/ Flink = BUFF+3000 Blink = PCB+25
| BUFF+3000/ Flink = BUFF+3400 Blink = BUFF+2400
| BUFF+3400/ Flink = BUFF+4000 Blink = BUFF+3000
| BUFF+4000/ Flink = BUFF+4400 Blink = BUFF+3400
| BUFF+4400/ Flink = BUFF+5000 Blink = BUFF+4000
| BUFF+5000/ Flink = BUFF+5400 Blink = BUFF+4400
| BUFF+5400/ Flink = BUFF+6000 Blink = BUFF+5000
| BUFF+6000/ Flink = BUFF+6400 Blink = BUFF+5400
| BUFF+6400/ Flink = BUFF+7000 Blink = BUFF+6000
| BUFF+7000/ Flink = PCB+25 Blink = BUFF+6400
PPCB
This command prints the current state of the PCB, as follows:
| DEBUG> PPCB
|
| PCB:
| BHD Base Addr: 70034
| Queue Length: 400
; Reserved Word: 0
; Port Err Wd1: 000000 000000
; Port Err Wd2: 000000 000000
| PCB Base Addr: 67000
| PI Level: 0
| Int Vector: 0
| CCW: 000000 000000
| Reserved Word: 0
| # Queue PCB Addr Interlock Flink Blink
| - ----- -------- --------- ----- -----
| 0 CmdQ3 PCB+2 -1 PCB+3 PCB+3
| 1 CmdQ2 PCB+5 -1 PCB+6 PCB+6
| 2 CmdQ1 PCB+10 -1 PCB+11 PCB+11
| 3 CmdQ0 PCB+13 -1 PCB+14 PCB+14
| 4 RspQ PCB+16 -1 PCB+17 PCB+17
| 5 MsgFQ PCB+21 -1 BUFF+400 BUFF+2000
| 6 DgmFQ PCB+24 -1 BUFF+2400 BUFF+7000
WATCH
This command allows one to watch the port and print events that
occur. If a command packet has previously been built, one may also
place the packet again and again on the command queue.
The diagnostic checks the CSR register periodically and prints it
out whenever it changes. It also looks for entries appearing on the
response queue - if any are found they are removed from the response
queue, printed out, and placed back on the free queue. The
diagnostic also sets 'CmdQ Avail' bit in the CSR register if there
is a command queue entry which has not yet been processed.
MAINDEC-10-DFCIA-A-D Page 68
TEST DESCRIPTIONS SEQ 0072
While watching the port, 7 characters may be typed to obtain
information or to perform some action:
o S - Insert another packet on the command queue (same packet as
the last one built).
o O - Insert packets on the command queue (same packet as the last
one built). Insert them at the interval specified by the 'SET
INTERV' command or 10 seconds if the interval has not been
explicitly defined.
o 0 - Turn off echoing of packets sent and received.
o 1 - Turn on echoing of packets sent and received.
o 2 - Print CSR register.
o 3 - Print PCB contents.
o 4 - Print statistics
o $ (altmode) - Exit (back to DEBUG> prompt).
DEPPAK offset,data
Data can be initialized in a packet by using the BPACK command or
by going into DDT and physically inserting the desired data at
location PACKET. To make this easier, the DEPPAK command allows
data to be inserted in PACKET by giving the offset into PACKET and
the data, without going into DDT. This is then useful if a command
file is created with a string of DEPPAK commands. Then a TAKE of
the command file is done to load the packet data.
10.5.3.13 PLI Register Commands
DPLI lnk,data,rep
This command allows one to write 8 bits of data over the PLI
interface. The link control bits specifying the register is
specified, as well as the 8 bit data. Also, a repeat count can be
given to repeat the deposit more than once.
This can be used to write data into the transmit buffer, as in
the following example:
| DEBUG> DPLI ?
| DPLI lnkctrl,data,repcount (CR) where lnkctrl is:
| 0-Unused 4-Unused 10-LdXBuf 14-Xmit
| 1-RdRSta 5-RdBuff 11-RdXSta 15-RdNode
| 2-RsXSta 6-EnaLnk 12-AboXmt 16-DsaLnk
| 3-RdPRev 7-SelBuf 13-SetMod 17-Sync
|
| DEBUG> DPLI 7,2 ; Select transmit buffer A
MAINDEC-10-DFCIA-A-D Page 69
TEST DESCRIPTIONS SEQ 0073
|
| DEBUG> DPLI 10,1 ; Write 1 to location 0
|
| DEBUG> DPLI 10,2 ; Write 2 to location 1
|
| DEBUG> DPLI 10,3 ; Write 3 to location 2
|
| DEBUG> DPLI 10,0,1000 ; Write 0's to next 1000 bytes
|
| DEBUG>
EPLI lnk,rep Examine PLI data
This command reads 8 bit data over the PLI interface. The link
control bits are specified to indicate what register to read. A
repeat count is given to allow reading the register more than once,
which is useful when reading one of the transmit or receive buffers.
An example follows:
| DEBUG> EPLI ?
| EPLI lnkctrl,repcount (CR) where lnkctrl is:
| 0-Unused 4-Unused 10-LdXBuf 14-Xmit
| 1-RdRSta 5-RdBuff 11-RdXSta 15-RdNode
| 2-RsXSta 6-EnaLnk 12-AboXmt 16-DsaLnk
| 3-RdPRev 7-SelBuf 13-SetMod 17-Sync
|
| DEBUG> DPLI 7,6 ; Select transmit buffer A
|
| DEBUG> EPLI 5,10 ; Read first 10 locations
|
| 5-RdBuff:
| 0/ 000
| 1/ 000
| 2/ 000
| 3/ 000
| 4/ 000
| 5/ 000
| 6/ 000
| 7/ 000
|
| DEBUG>
IPLI
This command loads special microcode into the CRAM, saving the
original contents, and resets the PILA and Link modules. Then the
CRAM locations are restored.
MAINDEC-10-DFCIA-A-D Page 70
TEST DESCRIPTIONS SEQ 0074
10.5.3.14 Miscellaneous Commands
TRANSL dat
This is used if a description of the CSR register is not at hand.
The data (36 bits) is translated into English. Example:
| DEBUG> TRANSL 3000
|
| CSR: 000000 003000 FQErr MVErr
FILLNX dat
This command fills all of CRAM with special data 'J=.+1,CTL=dat'.
The argument specified is the control field for the microsequencer.
This may be useful when testing out dispatching of the
microsequencer.
If the port is running or halted with an error condition, the
diagnostic stops the port and clears any error condition. If it
changes the state of the port, the diagnostic prints a message to
that effect.
Example: Fill CRAM with JMAP (unconditional jump) instructions:
| DEBUG> FILLNX 2
|
| [Number of CRAM locations loaded = 4096.]
|
| Cram now contains:
|
| 0000/ JMAP J=1
| 0001/ JMAP J=2
| ...
| 7776/ JMAP J=7777
| 7777/ JMAP J=0
FILLPC dat
This command fills all of CRAM with special data 'J=.,CTL=dat'.
The argument specified is the control field for the microsequencer.
This may be useful when testing out dispatching of the
microsequencer.
If the port is running or halted with an error condition, the
diagnostic stops the port and clears any error condition. If it
changes the state of the port, the diagnostic prints a message to
that effect.
Example: Fill CRAM with JMAP (unconditional jump) instructions:
| DEBUG> FILLPC 2
|
| [Number of CRAM locations loaded = 4096.]
MAINDEC-10-DFCIA-A-D Page 71
TEST DESCRIPTIONS SEQ 0075
|
| Cram now contains:
|
| 0000/ JMAP J=0
| 0001/ JMAP J=1
| ...
| 7776/ JMAP J=7776
| 7777/ JMAP J=7777
CCODE
This command determines the setting of each condition code and
prints it out. It loads special microcode to do this but restores
the original contents afterwards.
Some condition codes cannot be seen in their proper state since
this command may change them. These are 'CSR Changed', 'MB Sign',
and 'F Eql Zero', but they are printed anyway. For example:
| What test - CCODE
|
| CC On: CBAV FEQ0 CSRC MVRP PLPE CBLW
| CC Off: GCSR EBPE AFUL BFUL XATN ERQS IACT MSGN CBPE CHER
ESTACK
This command determines the contents of the internal 2910
microsequencer stack. It loads special microcode to do this but
restores the original contents afterwards. For example:
| What test - ESTACK
|
| 2910 Stack:
| Location Contents (addr)
| Top 3042
| -1 733
| -2 140
| -3 5732
| -4 10
ENEXT
ENEXT does an 'examine next' function. Whatever examine or
deposit operation was previously done, the next location or register
is examined. The commands which set up for an examine next are:
ECRAM, DCRAM, BCRAM, ACRAM, ZCRAM, LCRAM, E2901, D2901, Z2901,
ELOCS, DLOCS, ZLOCS, EPLI, and DPLI.
DNEXT arg
DNEXT does an 'deposit next' function. Whatever examine or
deposit operation was previously done, the data given is deposited
into the next location or register. No argument is expected on the
MAINDEC-10-DFCIA-A-D Page 72
TEST DESCRIPTIONS SEQ 0076
BCRAM or ACRAM type of deposit, the data for each field of the
microword will be queried. The commands which set up for an examine
next are: ECRAM, DCRAM, BCRAM, ACRAM, ZCRAM, LCRAM, E2901, D2901,
Z2901, ELOCS, DLOCS, ZLOCS, EPLI, and DPLI.
DUMP
This command prints the complete state of the port. It prints
the following data:
o CSR data
o EBUF contents
o LAR contents
o 2901 register contents
o 2910 stack contents
o PCB
o Queues
o Local storage contents
o Transmit and receive buffers contents
o Channel logout data
IPRINT
This command prints accumulated interrupt activity. The data for
up to 20 interrupts are held in an interrupt data table. This data
can be printed with this command.
Printing can be aborted by typing an altmode or suppressed by
typing a Control-O.
ICLEAR
This command clears the accumulated interrupt activity.
Subsequent interrupts are numbered 1,2,...
IINIT
In the event the PI system got shut off in exec mode, this
command may be given to initialize the interrupt system and set up
40+2n addresses. This may be useful in the event the diagnostic
shuts off the PI system because of too many interrupts - this occurs
after 8192 interrupts.
MAINDEC-10-DFCIA-A-D Page 73
TEST DESCRIPTIONS SEQ 0077
10.5.3.15 Data Transfer Commands
CCWPNT
This command prints the CCW list last generated which is kept in
PCB+27. Example:
| DEBUG> CCWPNT
|
| CCW (PCB+32): 000000 000000 OP=Halt WC=0. Adr=00000000
LOGPNT
This command prints the logout data last stored by the channel
upon receipt of the 'store' command issued by the microprocessor.
Example:
| DEBUG> LOGPNT
|
| Channel-7 Logout Data
| Loc Contents
| 1 ICW: 000000 000000
| 2 SW1: CLP points to: 0
| 3 Last Updated CCW: 000000 000000 WC=0. ADR=0
10.5.3.16 Switches
SWITCH
Enter switch information. Switches can be entered as in the
following example. Usually, though, it is easier just to type the
switch name to turn on or off a switch.
| DEBUG> SWITCH
|
| Print the selectable pgm switches? (Y or N) - Y
|
| ----Left Side Switches-------- ----Right Side Switches--------
|
| SW KL10 11 Function SW Value Function
| -- ---- ---- -------- -- ----- --------
| 0 400000 100000 Abort 18 400000 Program trace
| ...
|
| Switches = 020010 004000
|
| 20010 LH Switches <# or ?> - ?
|
| Type Y,N,^,CR,^Z
|
| N ABORT -
| N RSTART -
MAINDEC-10-DFCIA-A-D Page 74
TEST DESCRIPTIONS SEQ 0078
| ...
|
| 4000 RH Switches <# or ?> - ?
|
| Type Y,N,^,CR,^Z
|
| N TRACE -
| N INHFLT -
| ...
SWPRIN
Print current switch settings. Example:
| DEBUG> SWPRIN
|
| Switches: 020010 002000 PNTLPT OPRSEL UDEBUG
NOPNT PALERS TRACE LOOPTS MDEBUG EDEBUG
PNTLPT RELIAB INHFLT RUNALL SDEBUG
DING TXTINH INHMSG DSPEAR LDEBUG
ERSTOP OPRSEL LOOPGM UDEBUG DDEBUG
The name of each of these switches can be typed. The result is
to complement the switch setting. If left hand switches are typed
in exec mode an error message is printed.
MAINDEC-10-DFCIA-A-D Page 75
PROGRAM RUN TIME SEQ 0079
11.0 PROGRAM RUN TIME
The run time varies according to the sequence of tests chosen,
the test options selected, and the program switch options selected.
In default mode the run time is approximately 4 minutes, excluding
any time taken to print error messages.
Running all of the tests with 'RELIAB' switch set extends the
time by a factor of 4 - to 16 minutes.
MAINDEC-10-DFCIA-A-D Page 76
APPENDIX SEQ 0080
12.0 APPENDIX
12.1 Special Configurations
12.1.1 DMT Configuration
There are several features of the diagnostic which enable it to
be used for DMT. The DMT configuration is as follows:
o One KL10
o Four ports and link/packet module sets, all connected to
separate sections of a fully configured STAR Coupler so that all
are independent
o TOPS-20 Release 5.0 or later (modified so that the system does
not know about RH's 1,3,5,7)
o DFCIA being run under PTYCON (4 copies)
12.1.2 Creating the Modified Diagnostics
The diagnostic must be modified to create 4 different copies each
for a different RH20 slot. The changes are:
o DIAG 'Request device' and 'Release device' are replaced by a
SKIPA (to noop the action)
o Port number (MBC number) is changed to reflect the particular
port
o Switches are set to 10,,140 which are 'OPRSEL', 'DDUMP' (which
can cause a complete dump of the port to be printed (where
appropriate)), and 'EDEBUG' (which prints port number, date, and
time with each error message)
o The diagnostics are renamed to DFCIA1.EXE, DFCIA3.EXE,
DFCIA5.EXE, and DFCIA7.EXE to reflect the port number
To create the 4 copies, the following steps are done: Note that
the diagnostic is modified by the EXEN$G (which eliminates the
DIAG's) and the P7$G ... (which changes the port number).
@RUN D20MON
* D20MON [DDQDH] - DECSYSTEM20 DIAGNOSTIC MONITOR - VER 0.3 *
D20MON CMD - DFCIA
DFCIA CI Port Functional Diagnostic
VERSION 1.1, SV=0.15, TOPS-20, KL10, CPU#=2263
MAINDEC-10-DFCIA-A-D Page 77
APPENDIX SEQ 0081
TTY SWITCH CONTROL ? - 0,S, Y OR N <CR> - ^D
DDT
EXEN$G
DDT
P7$G
DDT
^Z
@CSAVE DFCIA7.EXE
DFCIA7.EXE.1 Saved
@DDT
DDT
P5$G
DDT
^Z
@CSAVE DFCIA5.EXE
DFCIA5.EXE.1 Saved
@DDT
DDT
P3$G
DDT
^Z
@CSAVE DFCIA5.EXE
DFCIA3.EXE.1 Saved
@DDT
DDT
P1$G
DDT
^Z
@CSAVE DFCIA5.EXE
DFCIA1.EXE.1 Saved
12.1.3 Modifying the System
To run a modified non-DIAG diagnostic, the system must be
modified so that it does not know about the channel with which the
diagnostic is to be run. This is done by going into MDDT and
modifying the channel table (CHNTAB) as follows:
@ENABLE ; must have privileges
$SDDT ; DDT from anyplace will do
DDT
JSYS 777$X ; to get into MDDT
MDDT
CHNTAB+7/ address 0 ; replace whatever is there by a zero
MRETN$G<> ; get out of MDDT
^Z
MAINDEC-10-DFCIA-A-D Page 78
APPENDIX SEQ 0082
12.1.4 Other configurations
This has been described particular to DMT of the CI20, but there
may be other applications that may need to do the above, possibly
only 2 copies. One configuration which is possible is running a
copy of DFCIA which uses DIAG's and one which doesn't. To create
the one without DIAG's, the prior steps are done. To create the one
with DIAG's, instead of doing an EXEN$G, an EXE$G must be done.
------------------------------------------------------------------------
SEQ 0083
VERSION: MAINDEC-10-DFCIA-A Version 0.1
AUTHOR: Richard Stockdale
DATE: December 31, 1983
REASON: Original release.
------------------------------------------------------------------------
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 1
SEQ 0084
DOCUMENT
**************
DFCIA LST
**************
COPYRIGHT 1984
DIGITAL EQUIPMENT CORPORATION
MAYNARD, MASS. 01754
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 2
SEQ 0085
TABLE OF CONTENTS
*******************
1
993 *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, SEPT 18,1979
1028 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, SEPT 18,1979
1234 ERROR HANDLING UUO DEFINITIONS, SEPT 18,1979
1272 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979
3 Externs / Entrys
105 Initialization
275 Test/Command Selection
1020 Test Dispatching
1406 Port Debugger
7021 Program Utility Routines
7582 Statistics Handling Routines
8049 Microcode Handling Routines
8736 CI Initialization Routines
9037 Packet Handling Routines
9968 Queue Print Routines
10873 Port Control Block and Data Areas
11027 SPEAR Reporting
11215 Test Execute Routines
12161 Miscellaneous Test Variables
1 Test Module DFCIA2.MAC
37 Port Modules
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 3
SEQ 0086
TABLE OF CONTENTS
*******************
1795 Register Tests
2269 Miscellaneous Routines
1 Test Module DFCIA3.MAC
43 PB Transmit Buffer Tests
1507 PB Receive Buffer Tests
3584 Link Node Address Tests
1 Test Module DFCIA4.MAC
41 Transmit Tests
1097 Receive Tests
1503 Parity Tests
1 Test Module DFCIA5.MAC
38 CRC Tests
546 Microcode Functional Tests
896 Loopback Tests
2424 Miscellanous Tests
2916 Miscellaneous Routines
1 Port Controller Utility Package
59 Port Register Read/Write Routines
390 Port Specific Utility Routines
799 PI System Routines
1205 Channel Handling Routines
1574 User Mode Support Routines
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 4
SEQ 0087
TABLE OF CONTENTS
*******************
2032 Miscellaneous Routines
1 UTILITY Routines Module
62 Printout/Typin Routines
423 Clock Handling Routines
696 TOPS10/20 Related Routines
775 File Handling Routines
918 Data Pattern Generator/Compare Routines
1058 Data Patterns
1336 Switch Handling Routines
1862 Miscellaneous Routines
2584 Scope Looping And Error Reporting Routine
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 5
SEQ 0088
*****************************************************************
1 DFCIA TITLE FILE
*****************************************************************
22 Copyright (C) 1983
DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
This software is furnished under a license for use only
on a single computer system and may be copied only with
the inclusion of the of the above copyright notice. This
software, or any other copies thereof, may not be provided
or otherwise made available to any other person except for
use on such system and to one who agrees to these license
terms. Title to and ownership of the software shall at all
times remain in DEC.
The information in this document is subject to change
without notice and should not be construed as a commitment
by Digital Equipment Corporation.
DEC assumes no responsibility for the use or reliability
of its software on equipment which is not supplied by DEC.
Author: Dick Stockdale
Maintainer: 36-Bit Diagnostic Engineering
46 Program Parameters
61 Assembly Parameters
95 Channel Logout Status Bits
111 Right Hand Switches
129 OP Code definitions (for operational microcode)
182 Macro Definitions
186 Text macros
213 ASCII text macro
219 RPUT/RGET - Multiple put/get
257 TTABLE - Test execute table entry generator macro
293 Bit Definitions For Test executer routine (TEXEC)
311 Test Dispatch Table Definitions
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 6
SEQ 0089
323 Port CONI/CONO CSR Bit Assignments
359 OPDEF/UUO Definitions
385 Bit Definitions For "SCOPE" UUO Handler - Error Message Printer
397 Microword Field Definitions
797 Microword Macros (Note: If ADDR not specified, 'ADDR'+1 is used).
843 PLI/Link Microword Macros
*****************************************************************
993 *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, SEPT 18,1979
*****************************************************************
998 DATA SWITCHES (READ FROM CONSOLE IN EXEC MODE OR TYPED IN IN USER MODE)
LEFT HALF SWITCHES ARE PRE-ASSIGNED FOR SUBROUTINE PACKAGE USE
AND CONTROL LOOPING, PRINTING (TTY OR OTHER DEVICE) AND MISC. FUNCTIONS
*****************************************************************
1028 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, SEPT 18,1979
*****************************************************************
1031 SPECIAL SUBPROGRAM LINKAGES
1042 SPECIAL SUBROUTINE FATAL HALTS
USED TO REPORT ERRORS THAT CAUSE THE SUBROUTINES TO BE UNUSABLE
*****************************************************************
1234 ERROR HANDLING UUO DEFINITIONS, SEPT 18,1979
*****************************************************************
*****************************************************************
1272 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979
*****************************************************************
*****************************************************************
3 Externs / Entrys
*****************************************************************
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 7
SEQ 0090
*****************************************************************
105 Initialization
*****************************************************************
*****************************************************************
275 Test/Command Selection
*****************************************************************
278 DISPAT - Routine to dispatch to proper test as typed by the operator
in response to the 'WHAT TEST' prompt.
505 DISLIS -- List of all valid test names that can be typed
566 DISGO - Test dispatch addresses
625 ALL Execute all tests
PORT Execute Port modules related tests
PBUFF Execute PB module related tests
LINK Execute Link module related tests
LOOP Execute Loopback tests
FUNCT Execute Functional tests
652 TSTLIS - List test description for either single test or range of tests.
717 TSTDIA - Return to DIAMON
728 TSTDDT - Enter DDT
742 TSTHLT - Program halts - CONTINUE will start it back up.
757 TSTZER - Clear statistics
768 TSTCON - Determine/print configuration
TSTCPN - Print configuration
786 TSTHLP - Help for 'WHAT TEST' question.
859 TSTDSA - Disable a test.
TSTENA - Enable a test.
902 TSTDSL - List disabled tests
929 TSTPRI - Print statistics
939 TSTSWI/TSTSWP - Input switches / Print switch selections
956 TSTSSW - Switch complement commands
968 TSTTAK - Take commands from a file
TSTTAN - Take commands from a file without echoing results
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 8
SEQ 0091
*****************************************************************
1020 Test Dispatching
*****************************************************************
1023 TSTSPC - Run only one test
1049 RANGEN - Random number generator
1104 TSTDIS - Dispatch to the tests
*****************************************************************
1406 Port Debugger
*****************************************************************
1409 TSTDEB - Console command utility for the port.
1717 .DBCMD - List of acceptable commands
1875 .DBDIS - List of dispatch addresses
2028 DHELP - Print DEBUG> help message
2209 DSET - Set/clear/print options
2278 DSETAD - Set start address for START/SSTEP/CONT commands
2303 DSETCS - Set start CSR data for START/CONT commands
2323 DSETPR - Set/clear automatic parity generation for load cram command
2346 DSETEB - Set/clear preserve EBUF for single stepping
2370 DSETLN - Set length of text portion of packet
2394 DSETDA - Set data pattern to insert in buffer
2436 DSETPC - Set/clear PCB CCW list made up for START command
2459 DSETFN - Set default microcode file name
2490 DSETRE - Set/clr forced response
2514 DSETFO - Set format (COMPAT,HIDEN)
2541 DSETPA - Set path (Auto,A,B)
2572 DSETPO - Set destination port number
2616 DSETCN - Set current port number
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 9
SEQ 0092
2662 DSETXC - Set XCT-ID
2696 DSETPT - Set length of text portion to print
2721 DSETIG - Set/clr ignore other port SNDDG packets
2744 DSETSU - Set summary interval (seconds)
2764 DSETIN - Set interval (seconds)
2783 DSETWH - Print all selected options
2812 DSETPL - List data patterns
2857 DSETHE - Set help message
2896 Program Flags
2931 DECSR - Examine CSR register
2945 DDCSR - Deposit CSR register
2960 DZCSR - Zero CSR register
2972 DRESET - Issue an EBUS Reset
2982 DCLEAR - Issue a 'Port Clear'
2993 DSINIT - Set up start addr/data/history prior to single step command
3010 DSTART - Start the port
3059 DSTOP - Stop the port
3089 DSSTEP - Single step the port
DTRACE - Single step the port and trace progress
3189 DSSPNT - Print single step history
3213 DSSCLR - Clear single step history data
3234 PNTHST - Print a single step history entry
3257 SAVHST - Save single step history data
3282 DCONT - Continue the port
3309 DEEBUF - Examine EBUF register
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 10
SEQ 0093
3331 DDEBUF - Deposit EBUF register
DZEBUF - Zero EBUF register
3358 DELAR - Examine LAR register
3379 DDRAR - Deposit RAR register
3397 DZRAR - Zero RAR register
3410 DECRAM - Examine CRAM locations specified by "PARG1" and "PARG2".
3418 DDCRAM - Change CRAM locations.
3426 DBCRAM - Change CRAM locations by field
3434 DACRAM - Alter CRAM locations.
3442 DZCRAM -- Zero CRAM addresses specified.
3450 DLCRAM -- List CRAM addresses specified.
4040 DEALU - Examine 2901 registers
4142 DDALU - Deposit register
4219 DZALU - Zero 2901 registers
4337 DELOCS - Examine local storage
4440 DDLOCS - Deposit local storage
4512 DZLOCS - Zero local storage
4629 DMARK - Set mark bit in CRAM locations
4672 DRMARK - Remove mark bit in CRAM locations
4715 DCMARK - Clear all mark bits
4788 DLMARK - List locations with mark bit set
4874 DDPLI - Deposit data to PLI
4972 DEPLI - Examine PLI registers
5102 DIPLI - Initialize PILA/Link modules
5201 DETBUF - Read transmit buffers
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 11
SEQ 0094
5225 DERBUF - Read receive buffers
5248 DDUMP - Dump port state
5361 RDBUFS - Read and print a buffer
5387 PLOG - Obtain EPT logout data
5519 DENEXT - Examine next
5593 DDNEXT - Deposit next
5652 DDPPAK - Deposit into packet
5683 DESTAK - examine 2910 stack
5737 DBREAK - Set breakpoint
5788 DRBRK - Remove breakpoint
5827 DCBRK - Clear all breakpoints
5895 DLBRK - List breakpoints
5984 DLOAD - Load microcode into CRAM from a test.
6015 DLIST - List microcode from test
6040 DFLOAD - Load microcode from file into CRAM
6083 DFVERF - Verify microcode from file versus CRAM
6106 DFLIST - List microcode in file
6141 DFEXAM - Examine microcode in file
6177 DTRANS - Translate CSR bits to English
6192 DCCODE - Print condition codes
6289 DFILLN - Fill CRAM with special data (J=PC+1,OPCode)
6317 DFILLP - Fill CRAM with special data (J=PC,OPCode)
6342 DCWPNT - Print CCW list
6354 DLGPNT - Print logout data
6366 DSWIT - Switch complement commands
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 12
SEQ 0095
6380 IPRINT - Print interrupt history
6438 IINIT - Initialize interrupt system
6450 DPINIT - Initialize PCB and queues
6461 DSIDLE - Start port and wait for IDLE loop
6472 DBPACK - Build packet
6551 DIQUEU - Insert a packet on a command queue
6583 DPPCB - Print PCB
6594 DPQUEU - Print specified queue
6635 DWATCH - Watch port and print events that occur
6898 PNTRSP - Print a response queue entry
6940 DCONF - Determine and print CI configuration
6950 SETENA - Ensure the port is in the enabled state
6997 SETDSA - Disable the port
*****************************************************************
7021 Program Utility Routines
*****************************************************************
7024 TRACE - Program Trace Routine
7064 TSTEND - Do end of test processing
7072 TSTPNT - Print test name/number
7095 PNTCRM - Print CRAM word
7180 PNTWD - Print a CRAM word (xxxx xxxx xxxx xxxx xxxx)
7206 CALPAR - Calculate parity for a CRAM location
7257 CSRPNT - Print CSR register as 'CSR: xxxxxx,,xxxxxx' followed by
English translation.
7278 CSRENG - Print CSR data in English
7312 CSRENB - CSR bits
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 13
SEQ 0096
7359 SAVCRM - Save specified CRAM locations in a buffer
7379 RESCRM - Restore CRAM locations
7405 CONFIG - Determine/print configuration
7531 CONPNT - Print configuration data
*****************************************************************
7582 Statistics Handling Routines
*****************************************************************
7585 SUPDAT - Update statistics for datagrams sent
7669 RUPDAT - Update statistics for datagrams received
7814 SREPOR - Report statistics
7992 SZERO - Clear statistics
8001 Statistics data areas
*****************************************************************
8049 Microcode Handling Routines
*****************************************************************
8072 TFLOAD - Load operational microcode for a test
8149 FLOADB - Load operational microcode into buffer
8237 FLOADC - Load microcode buffer contents into the port
8307 FVERFC - Verify port microcode against buffer contents
8396 FUERR - Print verify error data
8464 MLOADN - Load microcode and verify it (do not print errors)
MLOADY - Load microcode and verify it (print errors)
8612 MVPNT - Print verify error data
8663 MLIST - List microcode of a test
8701 TLOAD - Load microcode/verify it for a test
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 14
SEQ 0097
*****************************************************************
8736 CI Initialization Routines
*****************************************************************
8739 TPCB - Set up initial PCB
8927 TIDLE - Start the port and wait for IDLE bit to set in CSR
8959 RDNODE - Read our node number
*****************************************************************
9037 Packet Handling Routines
*****************************************************************
9084 BPACK - Build a packet
9172 ITEXT - get text length + text
9238 ICRC - get text len + text + CRC
9364 CRCCAL - Calculate CRC (cumulative) for 8 bits
9387 CRCFIX - Adjust properly
9407 IREGR - Set up to read a register
9436 IREGW - Set up to write a register
9480 RWAIT - Wait for a response (by CSR bit 'RspQAvail' bit being set.
9499 CHKINT - Check/set up interlock for queue
9571 CONVIR - Convert physical address to virtual
9608 INSQUE - Insert a packet into a queue
9718 GETQUE - Remove a queue entry from the beginning of a queue
9769 CHKRSP - Check if a response queue entry
9911 CHKQUE - Determine which queue to insert entry back on
9955 SHUTRQ - Turn off response queue available
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 15
SEQ 0098
*****************************************************************
9968 Queue Print Routines
*****************************************************************
9971 PQUEUE - Print a set of queue entries
10034 PPAKC - Print a command queue entry
10110 PPAKR - Print a response queue entry
10129 PPAKF - Print a free queue entry
10153 PACK1 - Print a packet - SNDDG command / DGSNT response
10165 PACK5 - Print a packet - REQID command / IDREQ response
10176 PACK13 - Print a packet - ID response
10242 PACK15 - Print a packet - SNDLB command / LBSNT response
10270 PACK33 - Print a packet - RDCNT command / CNTRD response
10285 PACK36 - Print a packet - RDREG command / REGRD response
10304 PACK37 - Print a packet - WRREG command / REGWR response
10322 PACKG - Print a general type packet
10351 PSTATS - Print status field
10432 PMISC - Print miscellaneous data at the end of a packet
10457 PFLAGS - Print flags field (AC1 contains status byte (right justified))
10491 OPCPNT - Print opcode of command packet
10598 DECOPC - Decode op code
10680 PXCTID - Print 2 word XCT ID in words 4/5
10697 PHEAD - Print header info of a packet
10717 PPORTO - Print opcode and port in packet printout
10733 PTEXT - Print text of a command packet
10772 LINKP - Print FLINK/BLINK data as PCB+n or BUFF+n
10793 PPCB - Print current data in the PCB
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 16
SEQ 0099
*****************************************************************
10873 Port Control Block and Data Areas
*****************************************************************
10876 IPCB - PCB initial data
10920 PCB - Port Control Block
10976 Datagram and Message free queues
*****************************************************************
11027 SPEAR Reporting
*****************************************************************
11030 SPREP1 - Print initial SPEAR report 'diagnostic started'
11083 SPREP2 - Print error or successful completion SPEAR report
11201 GETPPN - Find out PPN number
*****************************************************************
11215 Test Execute Routines
*****************************************************************
11218 TEXEC - Test execute routine
11842 TTPNT - Print error data
11859 PNTSTR - Print out error data (when failed to start the port)
11876 PNTWRT - Print out error data (when failed to write a register)
11895 PNTRD - Print out error data (when failed to read a register)
11944 PNTPAK - Print out error data (when couldn't put entry on cmd queue)
11956 PNTWAI - Print out error data (when failed to receive proper responses)
*****************************************************************
12161 Miscellaneous Test Variables
*****************************************************************
12192 Special code to test SPEAR entries
12235 Special code to produce an EXE version
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 17
SEQ 0100
*****************************************************************
1 Test Module DFCIA2.MAC
*****************************************************************
*****************************************************************
37 Port Modules
*****************************************************************
40 TEST 1 - Port Hardware Test 1
444 TEST 2 - Port Hardware Test 2
1360 TEST 3 - Port Hardware Test 3
*****************************************************************
1795 Register Tests
*****************************************************************
1798 TEST 4 - PB Register Test 1
1999 TEST 5 - Link Register Test 1
2114 TEST 6 - PB Register Test 2
2195 TEST 7 - Link Register Test 2
*****************************************************************
2269 Miscellaneous Routines
*****************************************************************
2272 MWAIT - Routine to wait for test completion and determine test results
2319 MSTART - Start the port at location 5777
2334 MPRINT - Print test completion data for a test
*****************************************************************
1 Test Module DFCIA3.MAC
*****************************************************************
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 18
SEQ 0101
*****************************************************************
43 PB Transmit Buffer Tests
*****************************************************************
46 TEST 10 - Transmit Buffer Load Test
243 TEST 11 - Tranmit Buffer A Test
430 TEST 12 - Transmit Buffer B Test
617 TEST 13 - Transmit Buffer Addressing Test
819 TEST 14 - PB Address Counter Test (Transmit)
1045 TEST 15 - PB Address Offset Test (Transmit Read)
1315 TEST 16 - PB Address Offset Test (Transmit Write)
*****************************************************************
1507 PB Receive Buffer Tests
*****************************************************************
1510 TEST 17 - Receive Buffer A Test
1765 TEST 20 - Receive Buffer B Test
2020 TEST 21 - Receive Buffer Addressing Test
2336 TEST 22 - Retransmit Buffer A Test
2563 TEST 23 - Retransmit Buffer B Test
2790 TEST 24 - Transmit Xmt Buffer A to Rcv Buffer B
3018 TEST 25 - Transmit Xmt Buffer B to Rcv Buffer A
3246 TEST 26 - PB Address Offset Test (Receive Read)
*****************************************************************
3584 Link Node Address Tests
*****************************************************************
3587 TEST 27 - Addressing Test 1
3910 TEST 30 - Addressing Test 2
4224 TEST 31 - Addressing Test 3
4532 TEST 32 - Node Address Test
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 19
SEQ 0102
*****************************************************************
1 Test Module DFCIA4.MAC
*****************************************************************
*****************************************************************
41 Transmit Tests
*****************************************************************
44 TEST 33 - 'Transmit Status'
630 TEST 34 - 'Abort Transmission' Function (Active)
851 TEST 35 - 'Abort Transmission' Function (Inactive)
*****************************************************************
1097 Receive Tests
*****************************************************************
1100 TEST 36 - Receiver Status
*****************************************************************
1503 Parity Tests
*****************************************************************
1506 TEST 37 - PLI Parity Test
1919 TEST 40 - LINK Parity Test
*****************************************************************
1 Test Module DFCIA5.MAC
*****************************************************************
*****************************************************************
38 CRC Tests
*****************************************************************
41 TEST 41 - CRC Test 1
297 TEST 42 - CRC Test 2
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 20
SEQ 0103
*****************************************************************
546 Microcode Functional Tests
*****************************************************************
549 TEST 43 - Idle Loop Test
682 TEST 44 - Queue Handling Test
*****************************************************************
896 Loopback Tests
*****************************************************************
899 TEST 45 - CI Loopback Test (AutoPath/Compat)
1220 CRCINI - Special routine to clear a CRC table used by TST45-51
1236 TEST 46 - CI Loopback Test (Auto Path/Hiden)
1558 TEST 47 - CI Loopback Test (Path A/Compat)
1852 TEST 50 - CI Loopback Test (Path B/Compat)
2146 TEST 51 - Link Loopback Test
*****************************************************************
2424 Miscellanous Tests
*****************************************************************
2427 TEST 52 - Crossed CI Cables Test
2720 TEST 53 - REQID Test
2896 TEST 54 - Statistics Test
*****************************************************************
2916 Miscellaneous Routines
*****************************************************************
2919 MPACK - Build a packet based on parameters in AC1
2938 MPACKN - Build a packet based on parameters in AC1
2956 MCOMP - Do data compare of a packet received
3003 HCOMP - Do data compare of a packet received (Hiden mode)
3048 MCOMP2 - Compare RSPONS against contents of PACKET
3076 MCHECK - Check results
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 21
SEQ 0104
3114 CHKRQV - Check for response queue available
3131 SAVPK1 - Save packet data (status error packet)
SAVPK2 - Save packet data (data error packet)
3179 PKPNT - Print special saved packet data
3197 LODERR - Print ucode load error
*****************************************************************
1 Port Controller Utility Package
*****************************************************************
*****************************************************************
59 Port Register Read/Write Routines
*****************************************************************
62 Notes On I/O Routine Design
111 Port Register Load Routines
123 LDEBUF - Load EBUF
140 LDCSR - Load CSR (This is simply a CONO).
154 LDRAR - Load RAR
180 LDCRAM - Load CRAM
201 Port Register Read Routines
218 RDEBUF - Read EBUF
234 RDCSR - Read CSR
258 RDLAR - Read LAR
281 RDCRAM - Read CRAM
300 .CONI - Do a simple CONI (no error checking)
319 .CONO - Do a simple CONO
340 .DATAI - Do a simple DATAI (no error checking)
359 .DATAO - Do a simple DATAO
379 ERESET - Issue an EBUS reset
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 22
SEQ 0105
*****************************************************************
390 Port Specific Utility Routines
*****************************************************************
393 ISTOP - Stop IPA either by a port clear or by clearing the CSR register
440 IPACLR - Issue a port clear
451 SETEBU - Check that 'Diag Test EBUF' bit is set in CSR and set if not.
473 SETLAR - Check that 'Diag Sel LAR' bit is set in CSR and set if not.
494 CLREBU - Check that 'Diag Test EBUF' is not set in CSR and clear if is.
515 CHKCSR - Check if error bits are set in the CSR register
544 IPASRT - Start the port at the address given in 'SADDR' and with
initial parameters given in 'SDATA'.
626 IPASTP - Stop the port
692 IPASST - Single step the port at the address given in 'SNEXT' and
with initial parameters given in 'SDATA'.
*****************************************************************
799 PI System Routines
*****************************************************************
802 INITPI - Initialize and Turn On PI System
843 .PIOFF - Detach port from PI system
859 .PION - Attach port to PI system (Channel 4)
877 PISYOF - Turn PI system off
886 PISYON - Turn PI system on
894 SETVEC - Set up interrupt vectors for an port under test
918 SET2N - Set up 40 + 2N locations with interrupt dispatch instruction
940 VIINT - Vectored interrupt (Port)
1007 NVIINx - Non-Vectored interrupt (Port)
1156 .INPNT - Print special interrupt data
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 23
SEQ 0106
*****************************************************************
1205 Channel Handling Routines
*****************************************************************
1208 Routines To Interface With A Channel
1257 CHINIT - Channel Initialization Routine
1409 GETLOG - Snapshot The Channel Logout Area
1446 CCWPNT - Prints CCW word currently in PCB+45.
1475 LOGPNT - Channel Logout Printer
1551 DIAGER - Report Monitor Call Error In User Mode
*****************************************************************
1574 User Mode Support Routines
*****************************************************************
1577 DSETUP - Setup Routine For Diagnostic Function
1664 CPUTST - Determine Which Of 2 CPU's To Run On
1707 DEVREL - User Mode Release Routine
1760 DEVREQ - User Mode Request Routine
1821 ENDIAG - Enable the NI/CI port
1839 DGEPNT - Decode and print DIAG error
1920 LOCPHY - Lock part of the diagnostic
1946 UNLOCK - Unlock part of the diagnostic
1969 USRION/USRIOF - Turn User I/O Privileges On/Off
2011 ENABLE - Enable Capabilities of This Process
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 24
SEQ 0107
*****************************************************************
2032 Miscellaneous Routines
*****************************************************************
2035 FFF - Routine To Handle Fatals
*****************************************************************
1 UTILITY Routines Module
*****************************************************************
*****************************************************************
62 Printout/Typin Routines
*****************************************************************
65 CONVSX - Convert sixbit to octal
108 ALTCHH - Handle altmode intercept
133 CLRBUF - Clear input buffer
150 TTYYES - Answer yes or no question
180 PSDN - Prints signed decimal numbers
205 .PNTOC - Print n digit octal number with leading zeros suppressed
252 .PNTDC - Print n digit decimal number with leading zeros suppressed
299 .PNTDP - Print n digit decimal number with leading zeros suppressed
346 PPDEC - Print decimal number in a field of size x.
385 PPDECF - Force print decimal number in a field of size x.
*****************************************************************
423 Clock Handling Routines
*****************************************************************
426 STCLOK - Initialize program runtime clock
468 MONTIM - Read program runtime from monitor
502 PTIME - Print time of day
520 RUNTME - Calculate and print program runtime
628 PSTAMP - Check for an 'S' typed.
664 .DELAY - Delay a specified amount of time (in milliseconds)
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 25
SEQ 0108
*****************************************************************
696 TOPS10/20 Related Routines
*****************************************************************
699 .RESET - Subroutine to issue a RESET JSYS/UUO
718 .CLOSE - Subroutine to close opened files
746 .EXIT - Subroutine to exit job in user mode
*****************************************************************
775 File Handling Routines
*****************************************************************
778 CHRIN - Routine to read an ASCII character from the selected file.
789 CHRINS - Routine to read an ASCII character from the selected file.
815 FGETW - Get microword entry from file
863 FGETA - Obtain microcode load address 'ADDR:' from file
890 FGETD - Obtain microcode data entry from file (4 digits).
*****************************************************************
918 Data Pattern Generator/Compare Routines
*****************************************************************
921 BUFGEN - Generate the specified data pattern in the data buffer.
BUFCOM - Compare the data buffer with expected data
1016 DATMES - A data comparison error has been found. Report the error,
printing a maximum of three lines of errors.
*****************************************************************
1058 Data Patterns
*****************************************************************
1061 Data Patterns
1244 PATPNT - Translate pattern number to description
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 26
SEQ 0109
*****************************************************************
1336 Switch Handling Routines
*****************************************************************
1339 .SWCHP - Print switch settings in English
1407 SWITT - Get value of switches
1420 .ISWT - Complete switch handling
1517 .SLEFT - Input left hand switches
1582 .SRIGT - Enter right hand switches
1754 SWCHPT - Prints current state of switches
1766 SWCOM - Switch complement routine
*****************************************************************
1862 Miscellaneous Routines
*****************************************************************
1865 PARSER - Additional CPU parity error service
1913 .COMM - Match a command entered against a command table.
1964 .COMM2 - Compare command typed to table to see if valid
2000 .SARG - Obtain SIXBIT argument
2088 .OARG - Obtain octal argument
2179 DECYN - Decode an argument which should be NO or YES
2207 .DARG - Obtain octal/decimal argument
2301 CHKARG - Check for argument when there shouldn't be any
2348 LASARG - Check for last argument when there shouldn't be any more
2391 FIOFF - Routine to turn off the 'file input' switch
2409 FINCMD - Input a sixbit command from a file
2459 FSARG - Input a sixbit argument from a file
2509 FOARG - Input a octal argument from a file
2573 FEOL - Skip characters until end of line is reached
DFCIA LST DECDOC VER 00.25 29-OCT-84 19:10:32 PAGE 27
SEQ 0110
*****************************************************************
2584 Scope Looping And Error Reporting Routine
*****************************************************************
2587 SCOPE1 - Error reporter and scope loop controller
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 1
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0111
1 SUBTTL DFCIA TITLE FILE
2
3 SALL
4
5 UNIVERSAL DFCIA
6 SEARCH MONSYM
7
8 EXTERN START,STARTA,PGMNAM,SCOPE1
9 EXTERN PPDEC,PPDECF,ALTCHH,.PNTOC,.PNTDC,.PNTDP,.DELAY
10
11 .REQUIRE DFCIA1
12 .REQUIRE DFCIA2
13 .REQUIRE DFCIA3
14 .REQUIRE DFCIA4
15 .REQUIRE DFCIA5
16 .REQUIRE DFCIAI
17 .REQUIRE DFCIAU
18
19 000003 MCNVER==3 ; patch level
20 000000 DECVER==0 ; release version
21
22 ;* Copyright (C) 1983
23 ;* DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
24 ;*
25 ;* This software is furnished under a license for use only
26 ;* on a single computer system and may be copied only with
27 ;* the inclusion of the of the above copyright notice. This
28 ;* software, or any other copies thereof, may not be provided
29 ;* or otherwise made available to any other person except for
30 ;* use on such system and to one who agrees to these license
31 ;* terms. Title to and ownership of the software shall at all
32 ;* times remain in DEC.
33 ;*
34 ;* The information in this document is subject to change
35 ;* without notice and should not be construed as a commitment
36 ;* by Digital Equipment Corporation.
37 ;*
38 ;* DEC assumes no responsibility for the use or reliability
39 ;* of its software on equipment which is not supplied by DEC.
40 ;*
41 ;* Author: Dick Stockdale
42 ;* Maintainer: 36-Bit Diagnostic Engineering
43
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 2
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0112
44
45 ;#********************************************************************
46 ;* Program Parameters
47 ;#********************************************************************
48
49 ; AC Assignments.
50
51 000011 OP=11 ; op code
52 000012 PK=12 ; packet address
53 000013 Q=13 ; queue number
54 000014 PAT=14 ; data pattern in use
55 000015 ERFLG=15 ; error flag (gets cleared by SCOPER)
56 000016 MBCN=16 ; channel 54000,,0 to 57400,,0
57 000017 P=17 ; stack pointer
58
59
60 ;#********************************************************************
61 ;* Assembly Parameters
62 ;#********************************************************************
63
64 000005 ITERAT==5 ; default to 5 passes
65 000001 KL10==1 ; assemble for KL10
66 000001 EXCASB==1 ; assemble for exec mode
67 000001 USRASB==1 ; assemble for user mode
68 000001 MEMMAP==1 ; allow memory to be mapped
69
70 000017 MAXPOR==17 ; maximum number of ports on the CI
71
72
73 000001 $LPAPER==1 ; don't list literals
74
75 030000 SADR1=BEGIN
76 030000 SADR2=BEGIN
77 030000 SADR3=BEGIN
78 030007 SADR4=SRTDDT
79 000000* SADR5=START ; ^C restart
80 030007 SADR6=SRTDDT
81 254200 000000* SADR7=HALT START
82 254200 000000* SADR8=HALT START
83 254200 000000* SADR9=HALT START
84 254200 000000* SADR10=HALT START
85 254200 000000* SADR11=HALT START
86
87 711523 655207 PAREA1==711523,,655207 ; random number base
88 000000 PAREA2==0
89 444643 514100 PAREA3==SIXBIT/DFCIA/
90 605664 000000 PAREA4==SIXBIT/PNT/
91 000000 PAREA5==0
92 000000 PAREA6==0
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 3
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0113
93
94 ;#************************************************************
95 ;* Channel Logout Status Bits
96 ;#************************************************************
97
98 400000 000000 LOGO==1B0 ; channel log out bit
99 200000 000000 MPER==1B1 ; memory parity error
100 100000 000000 ADRPE==1B2 ; set when no address parity error
101 040000 000000 NOTWC0==1B3 ; not word count zero
102 020000 000000 NEXM==1B4 ; non-existant memory
103 000400 000000 LAXER==1B9 ; last xfer error
104 000200 000000 IPAER==1B10 ; IPA20 error
105 000100 000000 LGWC==1B11 ; long word count
106 000040 000000 SHWC==1B12 ; short word count
107 000020 000000 OVN==1B13 ; overrrun
108
109
110 ;#********************************************************************
111 ;* Right Hand Switches
112 ;#********************************************************************
113
114 400000 TRACET==1B18 ; program test # trace feature
115 200000 INHFLT==1B19 ; inhibit fault isolation
116 100000 INHMSG==1B20 ; inhibit error message printout
117 040000 LOOPGM==1B21 ; loop on program
118 020000 LOOPTS==1B22 ; loop on test
119 010000 RUNALL==1B23 ; run all segments of a test
120 004000 DSPEAR==1B24 ; disable SPEAR switch
121 002000 DEBUG1==1B25 ; debug mode (debug without an IPA)
122 001000 DEBUG2==1B26 ; debug mode (print error messages)
123 000400 DEBUG3==1B27 ; debug mode (test debug switch)
124 000200 DEBUG4==1B28 ; debug mode (don't load test ucode)
125 000100 DEBUG5==1B29 ; debug mode (dump on error)
126 000040 DEBUG6==1B30 ; debug mode (expanded error message)
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 4
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0114
127
128 ;#********************************************************************
129 ;* OP Code definitions (for operational microcode)
130 ;#********************************************************************
131
132 ; Op code sent
133
134 000001 SNDDG==1
135 000002 SNDMSG==2
136 000005 REQID==5
137 000006 SNDRST==6
138 000007 SNDSTR==7
139 000010 REQDT0==10
140 000011 REQDT1==11
141 000012 REQDT2==12
142 000015 SNDLB==15
143 000016 REQMDT==16
144 000020 SNDDAT==20
145 000021 RETDAT==21
146 000022 SNDMDT==22
147 000030 CLSBUF==30
148 000200 SETCKT==200
149 000201 SETCNT==201
150 000202 RDCNT==202
151 000203 RDREG==203
152 000204 WRREG==204
153
154 ; Op code received
155
156 000001 DGSNT==SNDDG
157 000002 MSGSNT==SNDMSG
158 000003 CNFRET==3
159 000004 MCNF==4
160 000005 IDREQ==REQID
161 000006 RSTSNT==SNDRST
162 000007 STRSNT==SNDSTR
163 000010 DATRQ0==REQDT0
164 000011 DATRQ1==REQDT1
165 000012 DATRQ2==REQDT2
166 000013 IDREC==13
167 000014 DATREC==14
168 000015 LBSNT==SNDLB
169 000016 MDATRQ==REQMDT
170 000020 DATSNT==SNDDAT
171 000021 DATRET==RETDAT
172 000022 MDTSNT==SNDMDT
173 000023 RTMDAT==23
174 000030 BUFCLS==CLSBUF
175 000200 CKTSET==SETCKT
176 000201 CNTSET==SETCNT
177 000202 CNTRD==RDCNT
178 000203 REGRD==RDREG
179 000204 REGWR==WRREG
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 5
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0115
180
181 ;#*********************************************************************
182 ;* Macro Definitions
183 ;#*********************************************************************
184
185 ;#********************************************************************
186 ;* Text macros
187 ;#********************************************************************
188
189 DEFINE TMSG(TEXT),<PNTMSG [ASCIZ ^TEXT^]>
190
191 DEFINE TMSGC(TEXT),<PNTMSG [ASCIZ ^
192 TEXT^]>
193
194 DEFINE TMSGD(TEXT),<PNTMSG [ASCIZ ^TEXT
195 ^]>
196
197 DEFINE TMSGCD(TEXT),<PNTMSG [ASCIZ ^
198 TEXT
199 ^]>
200 DEFINE FMSG(TEXT),<PNTMSF [ASCIZ ^TEXT^]>
201
202 DEFINE FMSGC(TEXT),<PNTMSF [ASCIZ ^
203 TEXT^]>
204
205 DEFINE FMSGD(TEXT),<PNTMSF [ASCIZ ^TEXT
206 ^]>
207
208 DEFINE FMSGCD(TEXT),<PNTMSF [ASCIZ ^
209 TEXT
210 ^]>
211
212 ;#********************************************************************
213 ;* ASCII text macro
214 ;#********************************************************************
215
216 DEFINE TASCIZ (TEXT)<[ASCIZ /TEXT/]>
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 6
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0116
217
218 ;#********************************************************************
219 ;* RPUT/RGET - Multiple put/get
220 ;#********************************************************************
221
222 DEFINE RPUT (R0,R1<-1>,R2<-1>,R3<-1>,R4<-1>,R5<-1>,R6<-1>,R7<-1>,R8<-1>,R9<-1>)<
223 PUT R0
224 XLIST
225 IFGE R1,<PUT R1>
226 IFGE R2,<PUT R2>
227 IFGE R3,<PUT R3>
228 IFGE R4,<PUT R4>
229 IFGE R5,<PUT R5>
230 IFGE R6,<PUT R6>
231 IFGE R7,<PUT R7>
232 IFGE R8,<PUT R8>
233 IFGE R9,<PUT R9>
234 LIST>
235
236 DEFINE RGET (R0,R1<-1>,R2<-1>,R3<-1>,R4<-1>,R5<-1>,R6<-1>,R7<-1>,R8<-1>,R9<-1>)<
237 GET R0
238 XLIST
239 IFGE R1,<GET R1>
240 IFGE R2,<GET R2>
241 IFGE R3,<GET R3>
242 IFGE R4,<GET R4>
243 IFGE R5,<GET R5>
244 IFGE R6,<GET R6>
245 IFGE R7,<GET R7>
246 IFGE R8,<GET R8>
247 IFGE R9,<GET R9>
248 LIST>
249
250 ; Microword table macro
251
252 DEFINE SUBTAB(ADDR)<
253 -2
254 ADDR>
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 7
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0117
255
256 ;#********************************************************************
257 ;* TTABLE - Test execute table entry generator macro
258 ;
259 ; TLAST - No arguments used
260 ; TSTART - Arg1 - Start address
261 ; TCALL - Arg1 - Routine address
262 ; TCALLC - Arg1 - Routine address
263 ; TWAIT - Arg1 - Time to wait
264 ; Arg2 - Routine address to determine status error
265 ; TPACK - Arg1 - Command queue
266 ; Arg2 - Op code of packet
267 ; Arg3 - Address of packet construct table
268 ; TWRITE - Arg1 - Register number
269 ; Arg2 - Register data
270 ; TREAD - Arg1 - Register number
271 ; Arg2 - Data compare flag
272 ; Arg3 - Register data
273 ; TJRST - Arg1 - Table address
274 ; TINIT - No Arguments used
275 ; TEXIT - No Arguments used
276 ;#********************************************************************
277
278 DEFINE TTABLE (CMD,ARG1,ARG2<0>,ARG3<0>)<
279 IFE CMD,<0> ; TLAST
280 IFE CMD-1,<1B3!ARG1> ; TSTART
281 IFE CMD-2,<2B3!ARG1> ; TCALL
282 IFE CMD-3,<3B3!ARG1> ; TCALLC
283 IFE CMD-4,<4B3!ARG1_^D18!ARG2> ; TWAIT
284 IFE CMD-5,<5B3!ARG1_^D21!ARG2_^D18!ARG3>; TPACK
285 IFE CMD-6,<6B3!ARG1_^D18!ARG2> ; TWRITE
286 IFE CMD-7,<7B3!ARG1_^D18!ARG2_^D17!ARG3>; TREAD
287 IFE CMD-10,<10B3!ARG1> ; TJRST
288 IFE CMD-11,<11B3> ; TINIT
289 IFE CMD-12,<12B3>> ; TEXIT
290
291
292 ;#*********************************************************************
293 ;* Bit Definitions For Test executer routine (TEXEC)
294 ;#*********************************************************************
295
296 000000 TLAST==0 ; last entry
297 000001 TSTART==1 ; start IPA at a particular address
298 000002 TCALL==2 ; call routine
299 000003 TCALLC==3 ; call routine and conditionally
300 ; exit test
301 000004 TWAIT==4 ; wait for completion
302 000005 TPACK==5 ; build a packet
303 000006 TWRITE==6 ; write a register
304 000007 TREAD==7 ; read a register
305 000010 TJRST==10 ; go to new table location
306 000011 TINIT==11 ; initialize packet data
307 000012 TEXIT==12 ; exit test (if any error yet)
308
309
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 7-1
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0118
310 ;#********************************************************************
311 ;* Test Dispatch Table Definitions
312 ;#********************************************************************
313
314 400000 000000 PORT==1B0 ; PORT tests
315 200000 000000 PBUFF==1B1 ; Packet Buffer tests
316 100000 000000 LINK==1B2 ; LINK tests
317 040000 000000 LOOP==1B3 ; Loopback tests
318 020000 000000 FUNCT==1B4 ; Functional tests
319 760000 000000 ALL==37B4 ; All tests
320 000100 000000 TDENA==1B11 ; test dispatch enable (0-yes,1-no)
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 8
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0119
321
322 ;#*********************************************************************
323 ;* Port CONI/CONO CSR Bit Assignments
324 ;#*********************************************************************
325
326 400000 000000 PORTP==1B0 ; port present
327 200000 000000 CSRRQS==1B1 ; diag request CSR
328 100000 000000 CSRCHN==1B2 ; diag CSR changed
329 040000 000000 DINIT==1B3 ; diag initialized
330 020000 000000 PI00RQ==1B4 ; PI Level 0 interrupt in progress
331 010000 000000 RQINT==1B5 ; request interrupt
332 004000 000000 CRAMPE==1B6 ; CRAM parity error
333 002000 000000 MBERR==1B7 ; MBUS error
334 000100 000000 IDLE==1B11 ; IDLE loop
335 000040 000000 DCOMP==1B12 ; disable complete
336 000020 000000 ECOMP==1B13 ; enable complete
337 400000 PCLEAR==1B18 ; port clear
338 200000 TSTEBF==1B19 ; diag test EBUF
339 100000 GENEPE==1B20 ; diag generate EBUS parity error
340 040000 SELLAR==1B21 ; diag select LAR/SQR
341 020000 SINCYC==1B22 ; diag single cycle
342 010000 SPARE1==1B23 ; spare bit
343 004000 EBUSPE==1B24 ; EBUS parity error
344 002000 FQUERR==1B25 ; free queue error
345 001000 MVRERR==1B26 ; data mover error
346 000400 CMDQAV==1B27 ; command queue available
347 000200 RESQAV==1B28 ; response queue available
348 000100 SPARE2==1B29 ; spare bit
349 000040 PDSABL==1B30 ; disable
350 000020 PENABL==1B31 ; enable
351 000010 MPRUN==1B32 ; mproc run
352 000004 PIA00==1B33 ; PIA field bit 0
353 000002 PIA01==1B34 ; PIA field bit 1
354 000001 PIA02==1B35 ; PIA field bit 2
355
356 002000 TCOMP==1B25 ; test completed bit
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 9
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0120
357
358 ;#*********************************************************************
359 ;* OPDEF/UUO Definitions
360 ;#*********************************************************************
361
362 104000 000000 OPDEF JSYS [104000,,0] ; TOPS-20 command
363 104000 000100 OPDEF CFIBF [JSYS 100] ; clear TOPS-20 input buffer
364
365 001000 000000 OPDEF PNTOCC [1B8] ; print n digits leading 0's suppressed
366 002000 000000 OPDEF PDECF [2B8] ; force print decimal number
367 003000 000000 OPDEF PNTDCC [3B8] ; print n digits leading 0's suppressed
368 004000 000000 OPDEF PNTDCP [4B8] ; print n digits leading 0's suppressed
369 005000 000000 OPDEF DELAY [5B8] ; delay for n milliseconds
370 006000 000000 OPDEF PDEC [6B8] ; print decimal number
371 007000 000000 OPDEF ALTCHK [7B8] ; check for altmode character typed
372 027000 000000 OPDEF SCOPER [27B8] ; error handler UUO
373
374 000000* LUUO1==.PNTOC ; service routine for n digit octal
375 000000* LUUO2==PPDECF ; force print decimal number
376 000000* LUUO3==.PNTDC ; service routine for n digit decimal
377 000000* LUUO4==.PNTDP ; service routine for n digit decimal
378 000000* LUUO5==.DELAY ; delay routine (n milliseconds)
379 000000* LUUO6==PPDEC ; print decimal number
380 000000* LUUO7==ALTCHH ; check if an altmode was typed
381 000000* LUUO27==SCOPE1 ; error print routine
382
383
384 ;#*********************************************************************
385 ;* Bit Definitions For "SCOPE" UUO Handler - Error Message Printer
386 ;#*********************************************************************
387
388 100000 000000 MSG==1B2 ; ASCIZ message
389 200000 000000 CALL==2B2 ; call special print routine
390 300000 000000 GOTO==3B2 ; goto (new address of error table)
391 040000 000000 TXNOT==1B3 ; print/call entry if TXTINH not set
392 020000 000000 TXYES==1B4 ; print/call entry if TXTINH set
393 060000 000000 TXALL==3B4 ; print/call entry always
394 010000 000000 LAST==1B5 ; last table entry
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 10
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0121
395
396 ;#********************************************************************
397 ;* Microword Field Definitions
398 ;
399 ; These definitions are arranged for the macro which generates pairs
400 ; of microwords as (addr & parity flags & left 20 bits,right 36 bits).
401 ; These are of the form:
402 ;
403 ; Word 1: Bits 00-11 - Microword load address (0000-7777)
404 ; 12-35 - Bits 0-23 of microword to load
405 ; Word 2: Bits 00-34 - Bits 24-57,59 of microword to load
406 ; 35 ---- Force Bad Parity flag
407 ;
408 ; In detail:
409 ;
410 ; Word 1: Bits 00-11 - Microword load address
411 ; 12-23 - MWJMPFLD
412 ; 24 - MWPAR
413 ; 25 - MWOUTPUTENA
414 ; 26-35 - MWMGCFLD
415 ;
416 ; Word 2: Bits 00-02 - MWSORCEFLD
417 ; 03-05 - MWFUNCTFLD
418 ; 06-08 - MWDESTFLD
419 ; 09 - MWCCENA
420 ; 10 - MWRAMODE
421 ; 11-14 - MWPORTAFLD
422 ; 15-18 - MWPORTBFLD
423 ; 19-23 - MWSKIPFLD
424 ; 24-26 - MWBUSCTLFLD
425 ; 27 - MWCARRY
426 ; 28-31 - MWCTRLFLD
427 ; 32 - MWTIMEFLD
428 ; 33 - MWSPARE00
429 ; 34 - MWMARKBIT
430 ;
431 ; 35 - Force bad parity flag
432 ;
433 ; The microwords are generated using a set of field definitions
434 ; describing how the two words are to be constructed. Each field
435 ; is defined as a bit position in the first word, a bit position
436 ; in the right word, and a magnitude describing the size of the
437 ; field. These are defined as follows:
438 ;
439 ; .Lxxxx - Specifies the rightmost bit position of the field
440 ; in the left word. If the field does not appear in
441 ; left word, this will be zero.
442 ;
443 ; .Rxxxx - Specifies the rightmost bit position of the field
444 ; in the right word. If the field does not appear
445 ; in right word, this will be zero.
446 ;
447 ; .Mxxxx - Specifies the maximum magnitude of the field in
448 ; the word.
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 11
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0122
449
450 ; The microwords are generated as follows:
451 ;
452 ; Left word = ((value AND .Mxxxx) times .Lxxxx) ! next field ...
453 ; Right word = ((value AND .Mxxxx) times .Rxxxx) ! next field ...
454 ;
455 ; Parity is calculated prior to loading into the CRAM. The parity
456 ; bit may be specified explicitly by specifying EVEN or ODD. The
457 ; microcode loader will ensure that the word has the specified
458 ; parity. If not specified, the correct parity will be calculated.
459 ;
460 ; Sample microword definitions:
461 ;
462 ; (a) Specify: J 1000, OUTENA, SORCE fld = 2, DEST fld = 3
463 ; load address = 120
464 ;
465 ; Type: MWORD <ADDR=120,J=1000,OENA,SORC=2,DEST=3>
466 ;#********************************************************************
467
468 000100 000000 .LADDR==1B11 ; MW load address
469 000000 .RADDR==0
470 007777 .MADDR==7777
471
472 010000 .LJ==1B23 ; MW jump field (00:11)
473 000000 .RJ==0
474 007777 .MJ==7777
475
476 004000 .LPAR==1B24 ; MW parity (12:12)
477 000000 .RPAR==0
478 000001 .MPAR==1
479
480 002000 .LOENA==1B25 ; MW output enable (13:13)
481 000000 .ROENA==0
482 000001 .MOENA==1
483
484 000001 .LMGC==1B35 ; MW magic number field (14:23)
485 000000 .RMGC==0
486 001777 .MMGC==1777
487
488 000000 .LSORC==0 ; MW source field (24:26)
489 100000 000000 .RSORC==1B2
490 000007 .MSORC==7
491
492 000000 .LSAQ==0 ; Source = AQ
493 000000 .RSAQ==0B2
494 000007 .MSAQ==7
495
496 000000 .LSAB==0 ; Source = AB
497 100000 000000 .RSAB==1B2
498 000007 .MSAB==7
499
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 12
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0123
500 000000 .LS0Q==0 ; Source = 0Q
501 200000 000000 .RS0Q==2B2
502 000007 .MS0Q==7
503
504 000000 .LS0B==0 ; Source = 0B
505 300000 000000 .RS0B==3B2
506 000007 .MS0B==7
507
508 000000 .LS0A==0 ; Source = 0A
509 400000 000000 .RS0A==4B2
510 000007 .MS0A==7
511
512 000000 .LSDA==0 ; Source = DA
513 500000 000000 .RSDA==5B2
514 000007 .MSDA==7
515
516 000000 .LSDQ==0 ; Source = DQ
517 600000 000000 .RSDQ==6B2
518 000007 .MSDQ==7
519
520 000000 .LSD0==0 ; Source = D0
521 700000 000000 .RSD0==7B2
522 000007 .MSD0==7
523
524 000000 .LFUNC==0 ; MW function field (27:29)
525 010000 000000 .RFUNC==1B5
526 000007 .MFUNC==7
527
528 000000 .LPLUS==0 ; R PLUS S function
529 000000 .RPLUS==0B5
530 000007 .MPLUS==7
531
532 000000 .LSMIN==0 ; R MINUS S function
533 010000 000000 .RSMIN==1B5
534 000007 .MSMIN==7
535
536 000000 .LRMIN==0 ; R MINUS S function
537 020000 000000 .RRMIN==2B5
538 000007 .MRMIN==7
539
540 000000 .LOR==0 ; R OR S function
541 030000 000000 .ROR==3B5
542 000007 .MOR==7
543
544 000000 .LAND==0 ; R AND S function
545 040000 000000 .RAND==4B5
546 000007 .MAND==7
547
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 13
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0124
548 000000 .LNAND==0 ; NOT R AND S function
549 050000 000000 .RNAND==5B5
550 000007 .MNAND==7
551
552 000000 .LXOR==0 ; R XOR S function
553 060000 000000 .RXOR==6B5
554 000007 .MXOR==7
555
556 000000 .LXNOR==0 ; R XNOR S function
557 070000 000000 .RXNOR==7B5
558 000007 .MXNOR==7
559
560 000000 .LD==0 ; MW destination field (30:32)
561 001000 000000 .RD==1B8
562 000007 .MD==7
563
564 000000 .LCENA==0 ; MW CC enable (33:33)
565 000400 000000 .RCENA==1B9
566 000001 .MCENA==1
567
568 000000 .LDISA==0 ; MW CC disable
569 000000 .RDISA==0B9
570 000001 .MDISA==1
571
572 000000 .LENA==0 ; MW CC enable
573 000400 000000 .RENA==1B9
574 000001 .MENA==1
575
576 000000 .LRAM==0 ; MW RAM mode (34:34)
577 000200 000000 .RRAM==1B10
578 000001 .MRAM==1
579
580 000000 .LA==0 ; MW Port A field (35:38)
581 000010 000000 .RA==1B14
582 000017 .MA==17
583
584 000000 .LB==0 ; MW Port B field (39:42)
585 400000 .RB==1B18
586 000017 .MB==17
587
588 000000 .LSK==0 ; MW skip field (43:47)
589 010000 .RSK==1B23
590 000037 .MSK==37
591
592 000000 .LCCON==0 ; Select CC 'on' (CCCSRCHNG)
593 030000 .RCCON==03B23
594 000037 .MCCON==37
595
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 14
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0125
596 000000 .LCCOF==0 ; Select CC 'off' (CCGRNTCSR)
597 010000 .RCCOF==01B23
598 000037 .MCCOF==37
599
600 000000 .LCCCA==0 ; Select CCCBUSAVAIL
601 000000 .RCCCA==0B23
602 000037 .MCCCA==37
603
604 000000 .LCCGC==0 ; Select CCGRNTCSR
605 010000 .RCCGC==01B23
606 000037 .MCCGC==37
607
608 000000 .LCCFZ==0 ; Select CCFEQ0
609 020000 .RCCFZ==02B23
610 000037 .MCCFZ==37
611
612 000000 .LCCCC==0 ; Select CCCSRCHNG
613 030000 .RCCCC==03B23
614 000037 .MCCCC==37
615
616 000000 .LCCEB==0 ; Select CCEBPARERR
617 040000 .RCCEB==4B23
618 000037 .MCCEB==37
619
620 000000 .LCCAF==0 ; Select CCRCVRBUFAFUL
621 050000 .RCCAF==5B23
622 000037 .MCCAF==37
623
624 000000 .LCCBF==0 ; Select CCRCVRBUFBFUL
625 060000 .RCCBF==6B23
626 000037 .MCCBF==37
627
628 000000 .LCCXA==0 ; Select CCXMTRATTN
629 070000 .RCCXA==7B23
630 000037 .MCCXA==37
631
632 000000 .LCCER==0 ; Select CCEBUSRQST
633 100000 .RCCER==10B23
634 000037 .MCCER==37
635
636 000000 .LCCIA==0 ; Select CCINTRACTIVE
637 110000 .RCCIA==11B23
638 000037 .MCCIA==37
639
640 000000 .LCCMB==0 ; Select CCMBSIGN
641 120000 .RCCMB==12B23
642 000037 .MCCMB==37
643
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 15
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0126
644 000000 .LCCMP==0 ; Select CCMVRPARCHK
645 130000 .RCCMP==13B23
646 000037 .MCCMP==37
647
648 000000 .LCCCP==0 ; Select CCCBUSPARERR
649 140000 .RCCCP==14B23
650 000037 .MCCCP==37
651
652 000000 .LCCPP==0 ; Select CCPLIPARERR
653 150000 .RCCPP==15B23
654 000037 .MCCPP==37
655
656 000000 .LCCCE==0 ; Select CCCHANERR
657 160000 .RCCCE==16B23
658 000037 .MCCCE==37
659
660 000000 .LCCLW==0 ; Select CCCBLSTWD
661 170000 .RCCLW==17B23
662 000037 .MCCLW==37
663
664 000000 .LLSAD==0 ; Load SAD Reg
665 200000 .RLSAD==20B23
666 000037 .MLSAD==37
667
668 000000 .LSKMB==0 ; Select MBUS field
669 210000 .RSKMB==21B23
670 000037 .MSKMB==37
671
672 000000 .LLDLM==0 ; Load Local Mem
673 230000 .RLDLM==23B23
674 000037 .MLDLM==37
675
676 000000 .LRDLM==0 ; Read Local Mem
677 220000 .RRDLM==22B23
678 000037 .MRDLM==37
679
680 000000 .LSKCN==0 ; Select constant field
681 240000 .RSKCN==24B23
682 000037 .MSKCN==37
683
684 000000 .LBUS==0 ; MW bus control field (48:50)
685 001000 .RBUS==1B26
686 000007 .MBUS==7
687
688 000000 .LSELP==0 ; Select PLI field
689 001000 .RSELP==1B26
690 000007 .MSELP==7
691
692 000000 .LSELM==0 ; Select Mbus field
693 002000 .RSELM==2B26
694 000007 .MSELM==7
695
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 16
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0127
696 000000 .LSELF==0 ; Select Fmtr field
697 003000 .RSELF==3B26
698 000007 .MSELF==7
699
700 000000 .LSELC==0 ; Select Cbus field
701 004000 .RSELC==4B26
702 000007 .MSELC==7
703
704 000000 .LSELE==0 ; Select Ebus field
705 005000 .RSELE==5B26
706 000007 .MSELE==7
707
708 000000 .LCRY==0 ; MW carry (51:51)
709 000400 .RCRY==1B27
710 000001 .MCRY==1
711
712 000000 .LOP==0 ; MW control field (52:55)
713 000020 .ROP==1B31
714 000017 .MOP==17
715
716 000000 .LJZ==0 ; Jump zero instruction
717 000000 .RJZ==00B31
718 000017 .MJZ==17
719
720 000000 .LCJS==0 ; Conditional JSB pipeline instruction
721 000020 .RCJS==01B31
722 000017 .MCJS==17
723
724 000000 .LJMAP==0 ; Jump MAP instruction
725 000040 .RJMAP==02B31
726 000017 .MJMAP==17
727
728 000000 .LCJP==0 ; Conditional jump pipeline instruction
729 000060 .RCJP==03B31
730 000017 .MCJP==17
731
732 000000 .LPUSH==0 ; Push/cond load counter instruction
733 000100 .RPUSH==04B31
734 000017 .MPUSH==17
735
736 000000 .LJSRP==0 ; Cond JSB R/Pipeline instruction
737 000120 .RJSRP==05B31
738 000017 .MJSRP==17
739
740 000000 .LCJV==0 ; Conditional jump vector instruction
741 000140 .RCJV==06B31
742 000017 .MCJV==17
743
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 17
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0128
744 000000 .LJRP==0 ; Cond jump R/Pipeline instruction
745 000160 .RJRP==07B31
746 000017 .MJRP==17
747
748 000000 .LRFCT==0 ; Repeat loop, counter#0 instruction
749 000200 .RRFCT==10B31
750 000017 .MRFCT==17
751
752 000000 .LRPCT==0 ; Repeat pipeline, counter#0 instr
753 000220 .RRPCT==11B31
754 000017 .MRPCT==17
755
756 000000 .LCRTN==0 ; Conditional RTN instruction
757 000240 .RCRTN==12B31
758 000017 .MCRTN==17
759
760 000000 .LCJPP==0 ; Cond jump pipeline and pop instr
761 000260 .RCJPP==13B31
762 000017 .MCJPP==17
763
764 000000 .LLDCT==0 ; Load counter and continue instruction
765 000300 .RLDCT==14B31
766 000017 .MLDCT==17
767
768 000000 .LLOOP==0 ; Test end loop instruction
769 000320 .RLOOP==15B31
770 000017 .MLOOP==17
771
772 000000 .LCONT==0 ; Continue instruction
773 000340 .RCONT==16B31
774 000017 .MCONT==17
775
776 000000 .LTWB==0 ; Three way branch instruction
777 000360 .RTWB==17B31
778 000017 .MTWB==17
779
780 000000 .LTIM==0 ; time field
781 000010 .RTIM==1B32
782 000001 .MTIM==1
783
784 000000 .LSPAR==0 ; 1st spare bit
785 000004 .RSPAR==1B33
786 000001 .MSPAR==1
787
788 000000 .LMARK==0 ; mark bit
789 000002 .RMARK==1B34
790 000001 .MMARK==1
791
792 000000 .LBAD==0 ; force bad parity
793 000001 .RBAD==1B35
794 000001 .MBAD==1
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 18
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0129
795
796 ;#********************************************************************
797 ;* Microword Macros (Note: If ADDR not specified, 'ADDR'+1 is used).
798 ;
799 ; Left word = ((value AND .Mxxxx) times .Lxxxx) ! next field ...
800 ; Right word = ((value AND .Mxxxx) times .Rxxxx) ! next field ...
801 ;
802 ; Samples: MWORD <J=1000,OENA,SORC=2,DEST=3>
803 ; MWORD <J=0,OENA,SORC=2,DEST=3>
804 ;#********************************************************************
805
806 ; CALC - Insert field value into the microwords under construction
807
808 DEFINE CALC($ARG1)<
809 IFE .L'$ARG1-1B11,<%ADDR==$ARG2>
810 IFN .L'$ARG1-1B11,<%ML=%ML!<<$ARG2&.M'$ARG1>*.L'$ARG1>
811 %MR=%MR!<<$ARG2&.M'$ARG1>*.R'$ARG1>>>
812
813 ; CONCAT - Build string argument
814
815 DEFINE CONCAT($A)<
816 $B=<SIXBIT /$A/>_-36 ; get right justified character in
817 $CHR=$CHR_6+$B> ; octal and accumulate in string
818
819 ; FIELD - Decode argument in the form XXXX=NNNN into XXXX and NNNN
820
821 DEFINE FIELD($ARG)<
822 $CHR=0 ; init string argument
823 $GARG=0 ; init numeric argument
824 IRPC $ARG,<IFN $GARG,<$ARG2=$ARG2*8+$ARG>
825 IFIDN "=",$ARG,<$GARG=1
826 $ARG2=0>
827 IFE $GARG,<CONCAT $ARG>
828 IFE $GARG,<$ARG2=1>>
829 CALC \'$CHR> ; enter into microword
830
831 ; MWORD - Build microwords
832
833 DEFINE MWORD ($FLD)<
834 %ML==0 ; init left word
835 %MR==0 ; init right word
836 IRP $FLD,<DEFINE MFLD($A)<FIELD $A>
837 MFLD $FLD>
838 %ML==%ML!%ADDR_^D24
839 %ADDR==%ADDR+1
840 EXP %ML,%MR> ; done
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 19
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0130
841
842 ;#********************************************************************
843 ;* PLI/Link Microword Macros
844 ;
845 ; R0 - Scratch AC, also contains any arguments/data required
846 ; R15 - Contains the result of any read
847 ;#********************************************************************
848
849 ; Issue a 'Load Transmit Buffer' function
850
851 DEFINE LDXBUF <
852 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
853 MWORD <CONT,SELP,MGC=214>>
854
855 ; Issue a 'Transmit' function
856
857 DEFINE TXMIT (X)<
858 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=X>
859 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
860 MWORD <CONT,SELP,MGC=314>>
861
862 ; Issue a 'Reset Transmit Status' function
863
864 DEFINE RSXSTA <
865 MWORD <CONT,SELP,MGC=50>>
866
867 ; Issue a 'Enable Link Control' function
868
869 DEFINE ELINK (X)<
870 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=X>
871 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
872 MWORD <CONT,SELP,MGC=154>>
873
874 ; Issue a 'Disable Link Control' function
875
876 DEFINE DLINK (X)<
877 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=X>
878 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
879 MWORD <CONT,SELP,MGC=354>>
880
881 ; Issue a 'Read Receiver Status' function
882
883 DEFINE RDRSTA <
884 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=32>
885 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300>>
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 20
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0131
886
887 ; Issue a 'Read Transmit Status' function
888
889 DEFINE RDXSTA <
890 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=232>
891 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300>>
892
893 ; Issue a 'Read Buffer' function
894
895 DEFINE RDBUFF <
896 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=132>
897 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300>>
898
899 ; Issue a 'Read Node Address' function
900
901 DEFINE RDNADR <
902 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=332>
903 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300>>
904
905 ; Issue a 'Set Mode' function
906
907 DEFINE SETMOD (X)<
908 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=X>
909 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
910 MWORD <CONT,SELP,MGC=274>>
911
912 ; Issue a 'Select Buffer' function
913
914 DEFINE SELBUF (X)<
915 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=X>
916 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
917 MWORD <CONT,SELP,MGC=174>
918 MWORD <CONT,D=1>>
919
920 ; Issue a 'Read PILA Revision Level' function
921
922 DEFINE RDPILA <
923 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=72>
924 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300>>
925
926 ; Issue an 'Abort Transmission' function
927
928 DEFINE ABOXMT <
929 MWORD <CONT,SELP,MGC=250>>
930
931 ; Issue a 'Sync' function
932
933 DEFINE SYNC <
934 MWORD <CONT,SELP,MGC=370>>
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 21
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0132
935
936 ; Other macros (variations on the prior macros)
937
938 ; Issue a 'Transmit' function with transmit data from LS2
939
940 DEFINE LTXMIT <
941 MWORD <CONT,SD0,OR,D=2,RDLM,MGC=2>
942 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
943 MWORD <CONT,SELP,MGC=314>>
944
945 ; Issue a 'Set Mode' function with data in LS1
946
947 DEFINE LSMOD1 <
948 MWORD <CONT,SD0,OR,D=2,RDLM,MGC=1>
949 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
950 MWORD <CONT,SELP,MGC=274>>
951
952 ; Issue a 'Select Buffer' function - write transmit buffer selected by LS0
953
954 DEFINE LSBWR <
955 MWORD <CONT,SD0,OR,D=2,RDLM,MGC=0>
956 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
957 MWORD <CONT,SELP,MGC=174>
958 MWORD <CONT,D=1>>
959
960 ; Issue a 'Select Buffer' function - read transmit buffer selected by LS0
961
962 DEFINE LSBRT <
963 MWORD <CONT,SDA,AND,A=14,D=2,SKCN,MGC=4>
964 MWORD <CONT,SDA,OR,D=2,RDLM,MGC=0>
965 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
966 MWORD <CONT,SELP,MGC=174>
967 MWORD <CONT,D=1>>
968
969 ; Issue a 'Select Buffer' function - read receive buffer selected by LS0
970
971 DEFINE LSBRR <
972 MWORD <CONT,SDA,AND,A=14,D=2,SKCN,MGC=2>
973 MWORD <CONT,SDA,PLUS,D=2,RDLM,MGC=0>
974 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40>
975 MWORD <CONT,SELP,MGC=174>
976 MWORD <CONT,D=1>>
977
978 ; Write local storage (8 bit data only)
979
980 DEFINE WRLS (X,Y)<
981 MWORD <CONT,SDA,A=14,AND,D=2,SKCN,MGC=Y>
982 MWORD <CONT,S0A,OR,D=1,OENA,OENA,LDLM,MGC=X>>
983
984 ; Read local storage into Rx
985
986 DEFINE RDLS (X,Y)<
987 MWORD <CONT,SD0,OR,B=X,D=2,RDLM,MGC=Y>>
988
989 ; Delay
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 21-1
DFCIAT MAC 6-Jun-83 13:51 DFCIA TITLE FILE SEQ 0133
990
991 DEFINE MDELAY (X)<
992 MWORD <CJS,J=5500,SDA,A=14,AND,D=2,SKCN,MGC=X>>
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 1
PARAM KLM 18-Sep-79 17:16 *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, SEPT 18,1979 SEQ 0134
993 SUBTTL *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, SEPT 18,1979
994
995 DEFINE S,<; *********************************************************************>
996
997 ; **********************************************************************
998 ;*DATA SWITCHES (READ FROM CONSOLE IN EXEC MODE OR TYPED IN IN USER MODE)
999 ;*LEFT HALF SWITCHES ARE PRE-ASSIGNED FOR SUBROUTINE PACKAGE USE
1000 ;*AND CONTROL LOOPING, PRINTING (TTY OR OTHER DEVICE) AND MISC. FUNCTIONS
1001 ; **********************************************************************
1002
1003 400000 ABORT== 400000 ;ABORT PROGRAM ON PASS COMPLETION
1004 200000 RSTART==200000 ;RESTART TEST, PRINT TOTALS
1005 100000 TOTALS==100000 ;PRINT TOTALS, CONTINUE
1006
1007 040000 NOPNT== 040000 ;INHIBIT ALL PRINT/TYPE OUT (EXCEPT FORCED)
1008 020000 PNTLPT==020000 ;PRINT ALL DATA ON LPT (LOGICAL DEVICE, USER MODE)
1009 010000 DING== 010000 ;RING BELL ON ERROR
1010
1011 004000 LOOPER==004000 ;ENTER EXERCISE/CHECK LOOP ON ERROR
1012 002000 ERSTOP==002000 ;HALT ON TEST ERROR
1013 001000 PALERS==001000 ;PRINT ALL ERRORS
1014
1015 000400 RELIAB==000400 ;RELIABILITY MODE
1016 000200 TXTINH==000200 ;INHIBIT ERROR TEXT
1017 000100 INHPAG==000100 ;INHIBIT PAGING
1018
1019 000040 MODDVC==000040 ;MODIFY DEVICE CODE
1020 000020 INHCSH==000020 ;INHIBIT CACHE
1021 000010 OPRSEL==000010 ;OPERATOR SELECTION
1022
1023 000004 CHAIN== 000004 ;CHAIN CONTROL SWITCH
1024
1025 000002 KAHZ50==000002 ;KA10 50 HERTZ POWER
1026
1027 ;SWITCH 17 RESERVED !!!
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 2
PARAM KLM 18-Sep-79 17:16 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, SEPT 18,1979 SEQ 0135
1028 SUBTTL *PARAM* PROGRAM/SUBROUTINE PARAMETERS, SEPT 18,1979
1029
1030 ; **********************************************************************
1031 ;*SPECIAL SUBPROGRAM LINKAGES
1032 ; **********************************************************************
1033
1034 027772 FSELNK= 27772 ;FILE SELECT LINK
1035 027773 FRDLNK= 27773 ;FILE READ LINK
1036 027774 LDLNK= 27774 ;LOAD LINKAGE ADDRESS
1037 027775 DDTLNK= 27775 ;DDT LINKAGE ADDRESS
1038 027776 MODLNK= 27776 ;OPERATIONAL MODE CHECK LINKAGE ADDRESS
1039 027777 SUBLNK= 27777 ;SUBROUTINE LINKAGE ADDRESS
1040
1041 ; **********************************************************************
1042 ;*SPECIAL SUBROUTINE FATAL HALTS
1043 ;*USED TO REPORT ERRORS THAT CAUSE THE SUBROUTINES TO BE UNUSABLE
1044 ; **********************************************************************
1045
1046 ;ADDRESS TAG REASON
1047 ;---------------------
1048
1049 ; 1010 NOEXEC ;PROGRAM NOT CODED FOR EXEC MODE OPERATION
1050 ; 1011 PLERR ;FATAL PUSH LIST POINTER ERROR
1051 ; 1012 PLERR1 ;INITIAL PUSH LIST POINTER ERROR
1052 ; 1013 MUOERR ;MUUO WITH LUUO HANDLER WIPED OUT
1053 ; 1014 DTEBER ;DTE20 INTERRUPT WITHOUT DOORBELL
1054 ; 1015 DTECER ;DTE20 CLOCK INTERRUPT WITHOUT FLAG SET
1055 ; 1016 CPIERR ;CPU INITIALIZATION ERROR
1056 ; 1017 EOPERR ;END OF PROGRAM ERROR
1057 ; 1020 LUOERR ;INTERRUPT WITH LUUO HANDLER WIPED OUT
1058
1059 ; **********************************************************************
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 3
PARAM KLM 18-Sep-79 17:16 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, SEPT 18,1979 SEQ 0136
1060 ; **********************************************************************
1061 ;OPERATOR DEFINITIONS (NON-UUO'S)
1062 ; **********************************************************************
1063
1064 260740 000000 OPDEF GO [PUSHJ P,] ;SUBROUTINE CALL
1065 263740 000000 OPDEF RTN [POPJ P,] ;SUBROUTINE RETURN
1066 261740 000000 OPDEF PUT [PUSH P,] ;PUT DATA ON PUSH LIST
1067 262740 000000 OPDEF GET [POP P,] ;GET DATA FROM PUSH LIST
1068 254000 000000 OPDEF PJRST [JRST ] ;JRST TO ROUTINE THAT RTN'S
1069 254200 000000 OPDEF HALT [JRST 4,] ;DEFINITION FOR DDT
1070 254100 000000 OPDEF JRSTF [JRST 2,] ;DEFINITION FOR DDT
1071 254500 000000 OPDEF JEN [JRST 12,] ;DEFINITION FOR DDT
1072
1073 ; **********************************************************************
1074 ;SUBROUTINE INITIALIZATION CALL
1075 ; **********************************************************************
1076
1077 265000 030011 OPDEF PGMINT [JSP 0,SBINIT] ;SUBROUTINE INITIALIZATION
1078
1079 ; **********************************************************************
1080 ;HALTING UUO'S (A MORE GRACEFUL HALT THAN SIMPLY USING THE HALT INSTRUCTION).
1081 ; **********************************************************************
1082
1083 037640 000004 OPDEF FATAL [37B8!15B12!4] ;FATAL PROGRAMMING HALT
1084 037600 000004 OPDEF ERRHLT [37B8!14B12!4] ;PROGRAM ERROR HALT
1085
1086 ; **********************************************************************
1087 ;TERMINAL INPUT UUO'S
1088 ;ALWAYS COME FROM THE CONSOLE TERMINAL IN EXEC MODE OR THE
1089 ;CONTROLLING TERMINAL (REAL TERMINAL OR PTY) IN USER MODE.
1090 ; **********************************************************************
1091
1092 037000 000003 OPDEF TTICHR [37B8!0B12!3] ;TTY, INPUT ANY CHARACTER
1093 037040 000003 OPDEF TTIYES [37B8!1B12!3] ;TTY, NORMAL RETURN Y
1094 037100 000003 OPDEF TTINO [37B8!2B12!3] ;TTY, NORMAL RETURN N
1095 037140 000003 OPDEF TTIOCT [37B8!3B12!3] ;TTY, INPUT OCTAL WORD
1096 037200 000003 OPDEF TTIDEC [37B8!4B12!3] ;TTY, INPUT DECIMAL WORD
1097 037240 000003 OPDEF TTICNV [37B8!5B12!3] ;TTY, INPUT CONVERTABLE WORD
1098 037300 000003 OPDEF TTLOOK [37B8!6B12!3] ;TTY, KEYBOARD CHECK
1099 037340 000003 OPDEF TTALTM [37B8!7B12!3] ;TTY, ALT-MODE CHECK
1100 037400 000003 OPDEF TTSIXB [37B8!10B12!3] ;TTY, INPUT SIXBIT WORD
1101 037440 000003 OPDEF TTYINP [37B8!11B12!3] ;TTY, IMAGE MODE INPUT
1102 037500 000003 OPDEF TTICLR [37B8!12B12!3] ;TTY, CLEAR INPUT
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 4
PARAM KLM 18-Sep-79 17:16 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, SEPT 18,1979 SEQ 0137
1103 ;TERMINAL OUTPUT UUO'S.
1104
1105 037000 000000 OPDEF PNTA [37B8!0B12!0] ;PRINT ASCII WORD
1106 037000 000001 OPDEF PNTAF [37B8!0B12!1] ;PRINT ASCII WORD FORCED
1107 037740 000000 OPDEF PNTAL [37B8!17B12!0] ;PRINT ASCIZ LINE
1108 037740 000001 OPDEF PNTALF [37B8!17B12!1] ;PRINT ASCIZ LINE FORCED
1109 037600 000003 OPDEF PSIXL [37B8!14B12!3] ;PRINT SIXBIT'Z LINE
1110 037640 000003 OPDEF PSIXLF [37B8!15B12!3] ;PRINT SIXBIT'Z LINE FORCED
1111 037000 000000 OPDEF PNTMSG [37B8!0B12!0] ;PRINT MESSAGE IMMEDIATE
1112 037040 000000 OPDEF PNTMSF [37B8!1B12!0] ;PRINT MESSAGE IMMEDIATE FORCED
1113 037100 000000 OPDEF PSIXM [37B8!2B12!0] ;PRINT SIXBIT'Z MSG IMMEDIATE
1114 037200 000000 OPDEF PSIXMF [37B8!4B12!0] ;PRINT SIXBIT'Z MSG IMM FORCED
1115 037000 000000 OPDEF PNTCI [37B8!0B12!0] ;PRINT CHARACTER IMMEDIATE
1116 037040 000000 OPDEF PNTCIF [37B8!1B12!0] ;PRINT CHARACTER IMMEDIATE FORCED
1117 037500 000000 OPDEF PNTCHR [37B8!12B12!0] ;PRINT CHARACTER
1118 037500 000001 OPDEF PNTCHF [37B8!12B12!1] ;PRINT CHARACTER FORCED
1119 037040 000000 OPDEF PNT1 [37B8!1B12!0] ;PRINT ONE OCTAL DIGIT
1120 037040 000001 OPDEF PNT1F [37B8!1B12!1] ;PRINT 1 OCTAL DIGIT FORCED
1121 037100 000000 OPDEF PNT2 [37B8!2B12!0] ;PRINT TWO OCTAL DIGITS
1122 037100 000001 OPDEF PNT2F [37B8!2B12!1] ;PRINT 2 OCTAL DIGITS FORCED
1123 037140 000000 OPDEF PNT3 [37B8!3B12!0] ;PRINT THREE OCTAL DIGITS
1124 037140 000001 OPDEF PNT3F [37B8!3B12!1] ;PRINT THREE OCTAL DIGITS FORCED
1125 037200 000000 OPDEF PNT4 [37B8!4B12!0] ;PRINT FOUR OCTAL DIGITS
1126 037200 000001 OPDEF PNT4F [37B8!4B12!1] ;PRINT FOUR OCTAL DIGITS FORCED
1127 037240 000000 OPDEF PNT5 [37B8!5B12!0] ;PRINT FIVE OCTAL DIGITS
1128 037240 000001 OPDEF PNT5F [37B8!5B12!1] ;PRINT FIVE OCTAL DIGITS FORCED
1129 037300 000000 OPDEF PNT6 [37B8!6B12!0] ;PRINT SIX OCTAL DIGITS
1130 037300 000001 OPDEF PNT6F [37B8!6B12!1] ;PRINT SIX OCTAL DIGITS FORCED
1131 037340 000000 OPDEF PNT7 [37B8!7B12!0] ;PRINT 7 OCTAL DIGITS
1132 037340 000001 OPDEF PNT7F [37B8!7B12!1] ;PRINT 7 OCTAL DIGITS FORCED
1133 037440 000000 OPDEF PNT11 [37B8!11B12!0] ;PRINT 11 OCTAL DIGITS
1134 037440 000001 OPDEF PNT11F [37B8!11B12!1] ;PRINT 11 OCTAL DIGITS FORCED.
1135 037400 000000 OPDEF PNTADR [37B8!10B12!0] ;PRINT PHYSICAL ADDRESS
1136 037400 000001 OPDEF PNTADF [37B8!10B12!1] ;PRINT PHYSICAL ADDRESS FORCED
1137 037600 000000 OPDEF PNTOCT [37B8!14B12!0] ;PRINT FULL WORD OCTAL
1138 037600 000001 OPDEF PNTOTF [37B8!14B12!1] ;PRINT FULL WORD OCTAL FORCED
1139 037540 000000 OPDEF PNTHW [37B8!13B12!0] ;PRINT OCTAL HALF WORDS, 6 SP 6
1140 037540 000001 OPDEF PNTHWF [37B8!13B12!1] ;PRINT OCTAL HALF WORDS, 6 SP 6 FORCED
1141 037700 000003 OPDEF PNTOCS [37B8!16B12!3] ;PRINT OCTAL, SUPPRESS LEADING 0'S
1142 037740 000003 OPDEF PNTOCF [37B8!17B12!3] ;PRINT OCTAL, SUPPRESS LEADING 0'S FORCED
1143 037640 000000 OPDEF PNTDEC [37B8!15B12!0] ;PRINT DECIMAL, SUPRESS LEADING 0'S
1144 037640 000001 OPDEF PNTDCF [37B8!15B12!1] ;PRINT DECIMAL, SUPRESS LEADING 0'S FORCED
1145 037700 000000 OPDEF PNTDS [37B8!16B12!0] ;PRINT DECIMAL, SPACES FOR LD 0'S
1146 037700 000001 OPDEF PNTDSF [37B8!16B12!1] ;PRINT DECIMAL, SPACES FOR LD 0'S FORCED
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 5
PARAM KLM 18-Sep-79 17:16 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, SEPT 18,1979 SEQ 0138
1147 037200 000002 OPDEF PNTNM [37B8!4B12!2] ;PRINT PROGRAM NAME
1148 037000 000002 OPDEF PNTSIX [37B8!0B12!2] ;PRINT SIXBIT WORD
1149 037040 000002 OPDEF PNTSXF [37B8!1B12!2] ;PRINT SIXBIT WORD FORCED
1150 037240 000002 OPDEF DROPDV [37B8!5B12!2] ;CLOSE LOGICAL FILE, USER MODE
1151 037100 000002 OPDEF PNTCW [37B8!2B12!2] ;PRINT DF10 CONTROL WORD
1152 037140 000002 OPDEF PNTCWF [37B8!3B12!2] ;PRINT DF10 CONTROL WORD FORCED
1153 037000 030242 OPDEF PCRL [37B8!0B12!CRLF] ;PRINT CARRIAGE RETURN/LINE FEED
1154 037040 030242 OPDEF PCRLF [37B8!1B12!CRLF] ;PRINT CARRIAGE RETURN/LINE FEED FORCED
1155 037000 000040 OPDEF PSP [37B8!0B12!40] ;PRINT SPACE
1156 037040 000040 OPDEF PSPF [37B8!1B12!40] ;PRINT SPACE FORCED
1157 037000 030243 OPDEF PCRL2 [37B8!0B12!CRLF2] ;PRINT CARRIAGE RETURN/LINE FEED (TWICE)
1158 037040 030243 OPDEF PCRL2F [37B8!1B12!CRLF2] ;PRINT CARRIAGE RETURN/LINE FEED (TWICE) FORCED
1159 037040 000007 OPDEF PBELL [37B8!1B12!7] ;PRINT TTY BELL
1160
1161 037040 000026 OPDEF PFORCE [37B8!1B12!26] ;PRINT FORCE, CONTROL O OVERRIDE
1162
1163 DEFINE PMSG (ARG),<
1164 PSIXM [SIXBIT\ARG'_\]>
1165
1166 DEFINE PMSGF (ARG),<
1167 PSIXMF [SIXBIT\ARG'_\]>
1168
1169 ;SIXBTZ -- MACRO TO GENERATE SIXBIT DATA FOR PRINTING
1170 ; CONSERVES CORE OVER ASCIZ
1171
1172 DEFINE SIXBTZ (ARG),< [SIXBIT\ARG'_\]>
1173
1174 ;CONSOLE SWITCH INPUT UUO.
1175 ;READS CONSOLE SWITCHES IF IN EXEC MODE OR ASKS FOR THEM IF
1176 ; USER MODE.
1177
1178 037400 000002 OPDEF SWITCH [37B8!10B12!2] ;INPUT CONSOLE SWITCHES
1179
1180 ;CLOCK INITIALIZATION UUO - TO SET DESIRED CLOCK OPERATION
1181 ;EITHER IGNORE CLOCK, ONLY LET IT TICK OR CAUSE INTERRUPT TO OCCUR.
1182
1183 037540 000004 OPDEF CLOKOP [37B8!13B12!4] ;CLOCK OPERATION UUO - PDP-11 CLOCK
1184 037200 000004 OPDEF MTROP [37B8!4B12!4] ;CLOCK OPERATION UUO - DK20 METER
1185
1186 ;KL10 ONLY CACHE OPERATION UUO'S
1187
1188 037040 000004 OPDEF CINVAL [37B8!1B12!4] ;CACHE INVALIDATE
1189 037100 000004 OPDEF CFLUSH [37B8!2B12!4] ;CACHE FLUSH
1190 037140 000004 OPDEF CWRTBI [37B8!3B12!4] ;CACHE WRITE-BACK & INVALIDATE
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 6
PARAM KLM 18-Sep-79 17:16 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, SEPT 18,1979 SEQ 0139
1191 ;END OF PASS/PROGRAM UUOS
1192
1193 ;PERFORMS THE END OF PASS FUNCTIONS. INCREMENT PASS COUNT,
1194 ;DECREMENT ITERATION COUNT, CHECK IF FINISHED WITH THIS PROGRAM ETC.
1195
1196 037500 000004 OPDEF ENDUUO [37B8!12B12!4] ;UUO TO DISPLAY LIGHTS
1197 037700 000004 OPDEF EOPUUO [37B8!16B12!4] ;END OF PROGRAM UUO
1198
1199 ;MEMORY MANAGEMENT UUO'S
1200 ;UUO'S TO PERFORM VARIOUS MEMORY FUNCTIONS. MAPPING, ZEROING, PAGING,
1201 ;ADDRESS CONVERSION, ETC...
1202
1203 037000 000004 OPDEF MAPMEM [37B8!0B12!4] ;MAP MEMORY
1204 037500 000002 OPDEF MEMZRO [37B8!12B12!2] ;ZERO MEMORY
1205 037440 000002 OPDEF MEMSEG [37B8!11B12!2] ;SETUP MEMORY SEGMENT
1206 037540 000002 OPDEF MAPADR [37B8!13B12!2] ;VIRTUAL TO PHYSICAL ADR CONVERT
1207 037640 000002 OPDEF MAPCNK [37B8!15B12!2] ;MAP MEMORY CHUNK
1208 037600 000002 OPDEF MAPSET [37B8!14B12!2] ;SET KI10 EXEC PAGE MAP
1209 037740 000002 OPDEF MAPPNT [37B8!17B12!2] ;PRINT MEMORY MAP
1210
1211 ;DEVICE CODE MODIFICATION UUO
1212 ;ALLOWS THE MODIFICATION OF IOT'S TO ONE DEVICE TO BE CHANGED TO
1213 ;IOT'S TO A DIFFERENT DEVICE CODE.
1214
1215 037340 000002 OPDEF MODPCU [37B8!7B12!2] ;MODIFY PERHIPERAL CODE, USER
1216 037300 000002 OPDEF MODPCP [37B8!6B12!2] ;MODIFY PERHIPERAL CODE, PROGRAM
1217
1218 030000 IFNDEF MODDVL,<MODDVL==BEGIN>
1219 030000 IFNDEF MODDVU,<MODDVU==BEGIN>
1220
1221 ;"DIAMON" FILE SELECTION AND READ UUOS
1222
1223 037240 000004 OPDEF FSELECT [37B8!5B12!4] ;FILE SELECTION
1224 037300 000004 OPDEF FREAD [37B8!6B12!4] ;FILE READ - ASCII DATA
1225 037340 000004 OPDEF FRD36 [37B8!7B12!4] ;FILE READ - 36 BIT DATA
1226 037400 000004 OPDEF FRD8 [37B8!10B12!4] ;FILE READ - 8 BIT DATA
1227
1228 ;KI10 ONLY UUO FOR PRINTING MARGIN VALUES
1229
1230 037700 000002 OPDEF PNTMGN [37B8!16B12!2] ;PRINT MARGIN VALUE
1231
1232 XLIST
1233 IFNDEF KLOLD,<LIST
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 7
PARAM KLM 18-Sep-79 17:16 ERROR HANDLING UUO DEFINITIONS, SEPT 18,1979 SEQ 0140
1234 SUBTTL ERROR HANDLING UUO DEFINITIONS, SEPT 18,1979
1235
1236 ; **********************************************************************
1237 ;ERROR HANDLER PARAMETERS
1238 ; **********************************************************************
1239
1240 036000 000000 OPDEF ERUUO [36B8] ;ERROR CALL UUO
1241 035000 000000 OPDEF ERLOOP [35B8] ;ERROR LOOP, CHECKS PC,REPT,REPT1,ERROR
1242 035040 000000 OPDEF ERLP1 [35B8!1B12] ;ERROR LOOP IF PC'S MATCH
1243 035100 000000 OPDEF ERLP2 [35B8!2B12] ;ERROR LOOP IF ANY ERROR
1244 034000 000000 OPDEF REPTUO [34B8] ;REPEAT LOOP UUO
1245
1246 ;THE ERROR HANDLER MACROS
1247
1248 ;A MACRO TO REPORT AN ERROR AND LOOP
1249
1250 DEFINE ERROR (ADR,FORMAT,CORECT,ACTUAL,F,D,ERR)<
1251 SALL
1252 ERUUO FORMAT,[T,,[SIXBIT\F'_\]
1253 CORECT,,ACTUAL
1254 [SIXBIT\D'_\],,ERR]
1255 XALL
1256 ERLOOP ADR ;IF ERROR, LOOP TO ADR
1257 >
1258
1259 ;A MACRO TO REPORT AN ERROR AND NOT LOOP
1260
1261 DEFINE ERROR1 (FORMAT,CORECT,ACTUAL,F,D,ERR)<
1262 SALL
1263 ERUUO FORMAT,[T,,[SIXBIT\F'_\]
1264 CORECT,,ACTUAL
1265 [SIXBIT\D'_\],,ERR]
1266 XALL>
1267
1268 >;END OF KLOLD CONDITIONAL
1269
1270 XLIST
1271 LIST
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 1
FIXED KLM 18-Sep-79 17:18 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979 SEQ 0141
1272 SUBTTL *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979
1273
1274 030000 LOC 30000
1275
1276 ; **********************************************************************
1277 ;PROGRAM STARTING ADDRESSES
1278 ;THESE ADDRESSES CALL VARIOUS SPECIAL START ROUTINES AND OR OPTIONS
1279 ;NORMAL START ADDRESS IS 30000 ALL OTHERS ARE SPECIAL. INVOKED BECAUSE
1280 ;OF END OF PASS, POWER FAILURE, DDT START, RE-ENTERING(TYPICALLY USER
1281 ;MODE), OR ANY NUMBER OF SPECIAL FEATURE TESTS.
1282 ; **********************************************************************
1283
1284 030000 254 00 1 00 027776 BEGIN: JRST @MODLNK ;STAND-ALONE START
1285 030001 254 00 0 00 000000* $START: JRST START ;MODE CHECK STARTING ADDRESS
1286
1287 030002 254 00 1 00 027774 DIAGMN: JRST @LDLNK ;DIAGNOSTIC MONITOR START
1288
1289 030003 254 00 1 00 027774 SYSEXR: JRST @LDLNK ;SYSTEM EXERCISER START
1290
1291 030004 254 00 0 00 030000 SFSTRT: JRST SADR1 ;SPECIAL FEATURE START
1292
1293 030005 254 00 0 00 030000 PFSTRT: JRST SADR2 ;POWER FAIL RESTART
1294
1295 030006 254 00 0 00 030000 REENTR: JRST SADR3 ;REENTER START(USUALLY USER MODE ONLY)
1296
1297 030007 SRTDDT: ;COMMONLY MISTAKEN NAME FOR "DDTSRT"
1298 030007 254 00 1 00 027775 DDTSRT: JRST @DDTLNK ;DDT START
1299
1300 030010 254 00 0 00 000000* BEGIN1: JRST STARTA ;LOOP START(END OF PASS COMES HERE)
1301 030011 254 00 1 00 027777 SBINIT: JRST @SUBLNK ;PMGINT LINKAGE
1302 030012 000000 000000 RETURN: 0 ;RETURN ADDRESS STORAGE
1303
1304 030013 254200 030001* START1: SADR7 ;OPTIONAL STARTING ADR/INSTRUCTIONS
1305 030014 254200 030013* START2: SADR8 ; "
1306 030015 254200 030014* START3: SADR9 ; "
1307 030016 254200 030015* START4: SADR10 ; "
1308 030017 254200 030016* START5: SADR11 ; "
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 2
FIXED KLM 18-Sep-79 17:18 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979 SEQ 0142
1309 ; **********************************************************************
1310 ;PROGRAM FIXED PARAMETER AREA
1311 ; **********************************************************************
1312
1313 030020 444643 514100 PNTNAM: PAREA3 ;SIXBIT PROGRAM NAME
1314 030021 605664 000000 PNTEXT: PAREA4 ;SIXBIT PROGRAM EXTENSION
1315 030022 711523 655207 RANDBS: PAREA1 ;RANDOM BASE NUMBER
1316 030023 000000 000000 SWTEXR: PAREA2 ;SYSTEM EXERCISER SWITCHES
1317 030024 000000 000005 ITRCNT: ITERAT ;PROGRAM ITERATIONS
1318 030025 000000000000# $PNAME: PGMNAM ;POINTER TO PROGRAMS NAME
1319 030026 000003 000000 $PVER: MCNVER,,DECVER ;MCN & DEC VERSION LEVEL
1320 030027 000000 030000 $MODVL: MODDVL ;DEVICE CODE CHANGE LOWER LIMIT
1321 030030 000000 030000 $MODVU: MODDVU ;DEVICE CODE CHANGE UPPER LIMIT
1322 030031 777777 777777 $EMODE: IFNDEF EXCASB,<0> IFDEF EXCASB,<-1> ;EXEC ALLOWED
1323 030032 777777 777777 $UMODE: IFNDEF USRASB,<0> IFDEF USRASB,<-1> ;USER ALLOWED
1324 030033 000000 000000 $DSKUP: IFNDEF DSKUPD,<0> IFDEF DSKUPD,<-1> ;DISK UPDATE MODE
1325 030034 777777 777777 $MMAP: IFNDEF MEMMAP,<0> IFDEF MEMMAP,<-1> ;ALLOW MEMORY RTNS
1326 030035 000000 000000 PAREA7: PAREA5 ;OPTIONAL PARAMETER
1327 030036 000000 000000 PAREA8: PAREA6 ;OPTIONAL PARAMETER
1328
1329 ; **********************************************************************
1330 ;PROGRAM VARIABLE PARAMETER AREA
1331 ; **********************************************************************
1332
1333 030037 000000 000000 USER: 0 ; 0 = EXEC, -1 = USER MODE FLAG
1334 030040 000000 000000 KAIFLG: 0 ;PROCESSOR TYPE, 0 = KA10, -1 = KI10
1335 030041 000000 000000 KLFLG: 0 ;PROCESSOR TYPE, 0 = KA/KI, -1 = KL10
1336 030042 777777 777777 MONFLG: -1 ;DIAG MONITOR SPECIAL USER FLAG
1337 030043 000000 000000 MONCTL: 0 ;DIAG MON/SYS EXR FLAG
1338 030044 000000 000000 MONTEN: 0 ;-1= LOADED BY 10
1339 030045 000000 000000 CLOCKF: 0 ;CLOCK TICKED FLAG
1340 030046 000000 000000 CONSW: 0 ;CONSOLE SWITCH SETTINGS
1341 030047 000000 000000 PASCNT: 0 ;PROGRAM PASS COUNT
1342 030050 000000 000000 RUNFLG: 0 ;PROGRAM RUN FLAG
1343 030051 000000 000000 TESTPC: 0 ;SUBTEST PC
1344 030052 000000 000000 ERRPC: 0 ;ERROR PC
1345 030053 000000 000000 ERRTLS: 0 ;ERROR TOTALS
1346 030054 000000 000000 TICKS: 0 ;PROGRAM RUNNING TIME
1347 030055 000000 000000 MARGIN: 0 ;KI10 MARGIN WORD VALUE
1348 030056 000000 000000 $ONETM: 0 ;SUBROUTINE INITIALIZATION FLAG
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 3
FIXED KLM 18-Sep-79 17:18 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979 SEQ 0143
1349 ; **********************************************************************
1350 ;SPECIAL PROGRAM DISPATCH ADDRESSES
1351 ; **********************************************************************
1352
1353 030057 037 12 0 00 000004 BEGEND: ENDUUO ;END OF PASS
1354 030060 254 00 0 00 030010 $BEND1: JRST BEGIN1 ;KEEP RUNNING PROGRAM
1355 030061 037 16 0 00 000004 $BEND2: EOPUUO ;END OF PROGRAM - NO RETURN
1356 030062 000000000000# CNTLC: SADR5 ;CONTROL C XFER ADDRESS
1357 030063 000000 030007 ALTMGO: SADR6 ;ALTMODE XFER ADDRESS
1358 030064 CPOPJ1: ;SKIP RETURN
1359 030064 350 00 0 17 000000 UUOSKP: AOS (P) ;SKIP RETURN FROM UUO
1360 030065 CPOPJ: ;NON-SKIP REGULAR RETURN
1361 030065 263 17 0 00 000000 UUOEXT: RTN ;UUO RETURN
1362 030066 255 00 0 00 000000 UUORTN: JFCL ;ADDITIONAL USERS UUO ROUTINE
1363 030067 255 00 0 00 000000 $UORTX: JFCL ;ADDITIONAL UUO LINKAGE
1364 030070 255 00 0 00 000000 $UUOER: JFCL ;INITED AS (JRST $UOERX)
1365 030071 255 00 0 00 000000 $ITRHL: JFCL ;ADDITIONAL INTERRUPT LINKAGE
1366 030072 255 00 0 00 000000 $ITRX1: JFCL ; "
1367 030073 255 00 0 00 000000 $USRHL: JFCL ; "
1368 030074 255 00 0 00 000000 $RSRTX: JFCL ;ADDITIONAL POWER FAIL LINKAGE
1369 030075 255 00 0 00 000000 $RSRTY: JFCL ; "
1370 030076 255 00 0 00 000000 RESRT1: JFCL ; INITED AS (JRST RESRTX)
1371 030077 255 00 0 00 000000 RESRT2: JFCL ; "
1372 030100 255 00 0 00 000000 $PARER: JFCL ;ADDITIONAL PARITY ERROR LINKAGE
1373 030101 255 00 0 00 000000 ERMORE: JFCL ;ADDITIONAL ERROR HANDLER LINKAGE
1374 030102 254 04 0 00 030102 HALT . ;IMPROPER TRANSFER HALT
1375
1376 030103 000000 000000 $PSHER: 0 ;INITED AS (JRST PSHERR)
1377 030104 000000 000000 ITRCH1: 0 ;PC & FLAGS OF CURRENT INTERRUPT
1378 030105 000000 000000 0 ;INITED AS (JRST $ITRC1)
1379
1380 ; **********************************************************************
1381 ;PROCESSOR CONTROL STORAGE
1382 ; **********************************************************************
1383
1384 030106 000000 000000 $ACC0: 0 ;INTERRUPT SAVED AC0
1385 030107 000000 000000 $SVPI: 0 ;INTERRUPT SAVED PI
1386 030110 000000 000000 $SVAPR: 0 ;INTERRUPT SAVED APR
1387 030111 000000 000000 $SVPAG: 0 ;INTERRUPT SAVED PAG (DATAI)
1388 030112 000000 000000 $SPAG1: 0 ;INTERRUPT SAVED PAG (CONI)
1389
1390 030113 000000 000000 $SVUUO: 0 ;CURRENT USERS UUO
1391 030114 000000 000000 $SVUPC: 0 ;PC OF CURRENT USERS UUO
1392
1393 030115 000000 000000 REPTU: 0 ;REPEAT UUO ITERATIONS
1394 030116 000000 000000 SCOPE: 0 ;ERROR HANDLER SCOPE LOOP FLAG
1395 030117 000000 000000 %CORFLG:0 ; " CORRECT FLAG
1396 030120 000000 000000 %COREC: 0 ; " CORRECT DATA
1397 030121 000000 000000 %ACTFL: 0 ; " ACTUAL FLAG
1398 030122 000000 000000 %ACTUL: 0 ; " ACTUAL DATA
1399 030123 000000 000000 %DISCR: 0 ; " DISCREPENCY DATA
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 4
FIXED KLM 18-Sep-79 17:18 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979 SEQ 0144
1400 ; **********************************************************************
1401 ;UUO DISPATCH TABLE
1402 ; **********************************************************************
1403 XLIST
1404 LIST
1405 030124 000000* 030070 UUODIS: LUUO1,,$UUOER
1406 030125 000000* 000000* LUUO3,,LUUO2
1407 030126 000000* 000000* LUUO5,,LUUO4
1408 030127 000000* 000000* LUUO7,,LUUO6
1409 030130 030070 030070 LUUO11,,LUUO10
1410 030131 030070 030070 LUUO13,,LUUO12
1411 030132 030070 030070 LUUO15,,LUUO14
1412 030133 030070 030070 LUUO17,,LUUO16
1413 030134 030070 030070 LUUO21,,LUUO20
1414 030135 030070 030070 LUUO23,,LUUO22
1415 030136 030070 030070 LUUO25,,LUUO24
1416 030137 000000* 030070 LUUO27,,LUUO26
1417 030140 030070 030070 LUUO31,,LUUO30
1418 030141 030070 030070 LUUO33,,LUUO32
1419
1420 ; **********************************************************************
1421 ;MEMORY MANAGMENT STORAGE
1422 ; **********************************************************************
1423
1424 030142 000000 000000 DF22F: 0 ;DF10 CONTROL FLAG, 0 = 18, -1 = 22 BIT
1425 030143 000000 000000 MAPNEW: 0 ;MEMORY MAPPING CONTROL FLAG, -1 = 4096K MAPPING
1426 030144 000000 000000 MEMTOT: 0 ;TOTAL MEMORY SIZE IN K (1024.)
1427 030145 000000 000000 MEMLOW: 0 ;LOWEST USABLE MEMORY
1428 030146 MEMSIZ: BLOCK ^D41 ;MEMORY SEGMENT POINTER TABLE
1429
1430 ; **********************************************************************
1431 ;PRINT CONTROL STORAGE
1432 ; **********************************************************************
1433
1434 030217 000000 000000 PNTFLG: 0 ;PRINT FLAG, -1 WHILE IN PRINT ROUTINE
1435 030220 000000 000000 PNTENB: 0 ;PRINT ENABLE
1436 030221 000000 000000 PDISF: 0 ;PRINT DISABLED FLAG
1437 030222 000000 000000 PNTINH: 0 ;INHIBIT PRINT INPUT CHECKS
1438 030223 000000 000000 PNTSPC: 0 ;PRINT SPACE CONTROL
1439 030224 000000 000000 OPTIME: 0 ;TYPE-IN WAIT TIME
1440 030225 000000 000000 $TWCNT: 0 ;TIME WAITED
1441 030226 000000 000000 $DVOFF: 0 ;LOGICAL DEVICE INITED FLAG
1442 030227 000000 000000 TTYFIL: 0 ;TTY EXEC FILLERS FLAG
1443 030230 000000 000000 TTYSPD: 0 ;TTY EXEC BAUD RATE
1444 030231 000000 000000 $TTCHR: 0 ;ACTUAL TYPED IN CHAR
1445 030232 000000 000000 $CHRIN: 0 ;UPPER CASED & PARITY STRIPPED CHAR
1446 030233 000000 000000 $TYPNB: 0 ;TYPED IN NUMBER
1447 030234 000000 000000 $CRLF: 0 ;FREE CR/LF FLAG
1448 030235 000000 000000 $TABF: 0 ;TAB CONVERSION FLAG
1449 030236 000000 000000 $FFF: 0 ;FORM FEED CONVERSION FLAG
1450 030237 000000 000000 $VTF: 0 ;VERTICAL TAB CONVERSION FLAG
1451 030240 000000 000000 USRLFF: 0 ;USER LF FILLERS
1452 030241 000000 000000 USRCRF: 0 ;USER CR FILLERS
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 5
FIXED KLM 18-Sep-79 17:18 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979 SEQ 0145
1453 ; **********************************************************************
1454 ;THE FOLLOWING MISCELLANEOUS PRINT CHARACTERS ARE INCLUDED
1455 ;TO FACILITATE PRINTING AND ARE CALLED AS FOLLOWS:
1456 ; MOVEI NAME
1457 ; PNTA ;OR PNTAF
1458 ; **********************************************************************
1459
1460 030242 CRLF: ASCII/
1461 030242 015 012 000 000 000 /
1462 030243 CRLF2: ASCII/
1463
1464 030243 015 012 015 012 000 /
1465 030244 054 000 000 000 000 COMMA: ASCII/,/
1466 030245 056 000 000 000 000 PERIOD: ASCII/./
1467 030246 040 000 000 000 000 SPACE: ASCII/ /
1468 030247 011 000 000 000 000 TAB: ASCII/ /
1469 030250 MINUS:
1470 030250 055 000 000 000 000 HYPEN: ASCII/-/
1471 030251 053 000 000 000 000 PLUS: ASCII/+/
1472 030252 052 000 000 000 000 AST: ASCII/*/
1473 030253 100 000 000 000 000 ATSIN: ASCII/@/
1474 030254 050 000 000 000 000 LFP: ASCII/(/
1475 030255 051 000 000 000 000 RTP: ASCII/)/
1476 030256 007 0000000000 BELL: BYTE (7) 007
1477 030257 077 000 000 000 000 QUEST: ASCII/?/
1478 030260 057 000 000 000 000 SLASH: ASCII!/!
1479 030261 044 000 000 000 000 DOLLAR: ASCII/$/
1480 030262 000000 000012 RADIX: ^D10 ;DECIMAL PRINT RADIX
1481 030263 000000 000040 RADLSP: 40 ;DECIMAL PRINT LEADING CHAR
1482 030264 000000 000012 RADLSC: ^D10 ;DECIMAL PRINT LEADING CHAR COUNT
1483
1484 ; **********************************************************************
1485 ;USER MODE OUTPUT FILE INFORMATION
1486 ; **********************************************************************
1487
1488 030265 $OBUF: BLOCK 3 ;LOGICAL FILE OUTPUT BUFFER HEADER
1489 030270 60 62 51 56 64 00 $OUTNM: SIXBIT /PRINT/ ;FILE NAME
1490 030271 60 56 64 00 00 00 $OUTEX: SIXBIT /PNT/ ;FILE NAME EXTENSION
1491 030272 BLOCK 2
1492
1493 ; **********************************************************************
1494 ;DISK UPDATE MODE FILE INFORMATION
1495 ; **********************************************************************
1496
1497 030274 $IBUF: BLOCK 3
1498 030277 60 62 51 56 64 00 $INNM: SIXBIT /PRINT/
1499 030300 60 56 64 00 00 00 $INEXT: SIXBIT /PNT/
1500 030301 BLOCK 2
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 6
FIXED KLM 18-Sep-79 17:18 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979 SEQ 0146
1501 ; **********************************************************************
1502 ;PUSHDOWN LIST CONTROL INFORMATION
1503 ; **********************************************************************
1504
1505 030303 777577 030303 PLIST: PLIST-PLISTE,,PLIST
1506 030304 PLISTS: BLOCK 200
1507 030504 000000 000000 PLISTE: 0 ;END OF PUSHDOWN LIST
1508
1509 ; **********************************************************************
1510 ;POWER LINE CLOCK FREQUENCY FLAG
1511 ; **********************************************************************
1512
1513 030505 000000 000000 CYCL60: 0 ;0 = 60, -1 = 50 CYCLE
1514
1515 ; **********************************************************************
1516 ;KL10 CACHE CONTROL FLAGS
1517 ; **********************************************************************
1518
1519 030506 000000 000000 CSHFLG: 0 ;ALLOW CACHE IF 0
1520 030507 000000 000000 CSHMEM: 0 ;CACHE MEMORY SEGMENTS IF 0
1521
1522 ; **********************************************************************
1523 ;NUMBER INPUT DIGIT FLAG
1524 ; **********************************************************************
1525
1526 030510 000000 000000 TTNBRF: 0 ;-1 IF ANY DIGIT TYPED
1527
1528 ; **********************************************************************
1529 ;KL10 & KI10 "INHPAG" SWITCH PAGING PREVENTION
1530 ; **********************************************************************
1531
1532 030511 000000 000000 PVPAGI: 0 ;IF NON-ZERO, OVERRIDE "INHPAG" SWITCH ACTION
1533
1534 ; **********************************************************************
1535 ;ERROR REPORTING ROUTINE ADDITIONAL USERS CONTROL INSTRUCTIONS
1536 ; **********************************************************************
1537
1538 030512 000000 000000 %ERHI1: 0 ;IF NON-ZERO, XCT'D AT START OF %ERUUO
1539 030513 000000 000000 %ERHI2: 0 ;IF NON-ZERO, XCT'D AT END OF %ERUUO
1540 030514 000000 000000 %ERHI3: 0 ;IF NON-ZERO, XCT'D AFTER "PC" OF %ERUUO
1541
1542 ; **********************************************************************
1543 ;SPECIAL USERS UUO INTERCEPT INSTRUCTION
1544 ; **********************************************************************
1545
1546 030515 000000 000000 $$UUO: 0 ;IF NON-ZERO, XCT'D AT START OF $UORTN
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 7
FIXED KLM 18-Sep-79 17:18 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979 SEQ 0147
1547 ; **********************************************************************
1548 ;USER MODE MONITOR TYPE FLAG
1549 ; **********************************************************************
1550
1551 030516 000000 000000 MONTYP: 0 ;0 = TOPS10, -1 = TOPS20
1552
1553 ; **********************************************************************
1554 ;SPECIAL USERS MUUO INTERCEPT INSTRUCTION
1555 ; **********************************************************************
1556
1557 030517 000000 000000 $$MUUO: 0 ;IF NON-ZERO, XCT'D AT START OF MUUOER
1558
1559 ; **********************************************************************
1560 ;SPECIAL USERS USER MODE OUTPUT ERROR INTERCEPT INSTUCTION
1561 ; **********************************************************************
1562
1563 030520 000000 000000 $$OUTER:0 ;IF NON-ZERO, XCT'D AT END OF USER MODE ERROR
1564
1565 ; **********************************************************************
1566 ;"SWITCH" CALL USAGE CONTROL
1567 ; **********************************************************************
1568
1569 030521 000000 000000 $$TOGGLE:0 ;IF NON-ZERO, USE C(CONSW) FOR SWITCHES
1570
1571 ; **********************************************************************
1572 ;SPECIAL USERS ALTMODE SWITCH CALL INTERCEPT INSTRUCTIONS
1573 ; **********************************************************************
1574
1575 030522 000000 000000 $$TAX1: 0 ;IF NON-ZERO, XCT'D AT START OF ALTMODE SWITCH CALL
1576 030523 000000 000000 $$TAX2: 0 ;IF NON-ZERO, XCT'D AT END OF ALTMODE SWITCH CALL
1577
1578 ; **********************************************************************
1579 ;SM10 (KS-10) PROCESSOR TYPE FLAG
1580 ; **********************************************************************
1581
1582 030524 000000 000000 SM10: 0 ;IF -1 THIS IS A KS-10
1583
1584 ; **********************************************************************
1585 ;RIGHT HALF SWITCHES PROMPT TABLE ADDRESS
1586 ; **********************************************************************
1587
1588 030525 000000 000000 SWPTAB: 0 ;0 = NO PROMPT, ADR = ADR OF SIXBIT PROMPT TABLE
1589
1590 ; **********************************************************************
1591 ;SPECIAL FUTURE EXPANSION ROOM
1592 ; **********************************************************************
1593
1594 ; **********************************************************************
1595 ;END OF FIXED STORAGE
1596 ; **********************************************************************
1597
1598 030577 LOC 30577
1599 030577 000000 000000 ENDFIX: 0 ;END OF FIXED STORAGE
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page 1
DFCIAE MAC 20-Sep-82 09:51 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979 SEQ 0148
1600 ;#********************************************************************
1601 ; End of DFCIAT,PARAM,FIXED,DFCIA files
1602 ;#********************************************************************
1603
1604 XLIST
1605
NO ERRORS DETECTED
PROGRAM BREAK IS 030601
ABSOLUTE BREAK IS 030600
CPU TIME USED 00:06.453
71P CORE USED
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page S-1
DFCIAE MAC 20-Sep-82 09:51 SYMBOL TABLE SEQ 0149
ABORT 400000 spd DATRET 000021 spd GET 262740 000000 LCASWD 000020 spd
ADRPE 100000 000000 spd DATRQ0 000010 spd GO 260740 000000 LCCASD 020020 spd
ALL 760000 000000 spd DATRQ1 000011 spd GOTO 300000 000000 spd LCHNOF 001000 spd
ALTCHH 000000 ext DATRQ2 000012 spd HALT 254200 000000 LCHNON 002000
ALTCHK 007000 000000 DATSNT 000020 spd HYPEN 030250 LCIOPF 020400 spd
ALTMGO 030063 DCK 000040 spd IDLE 000100 000000 spd LCNTRP 000434 spd
ANXM 010000 spd DCOMP 000040 000000 spd IDREC 000013 spd LCNXER 022000 spd
AROV 400000 spd DDTLNK 027775 IDREQ 000005 spd LCPAER 021000 spd
AROVU 000010 spd DDTSRT 030007 INHCSH 000020 spd LCPWRF 020100 spd
AST 030252 DEBUG1 002000 spd INHFLT 200000 spd LCSBER 024000 spd
ATSIN 030253 DEBUG2 001000 spd INHMSG 100000 spd LCSLOA 200000 spd
BEGEND 030057 DEBUG3 000400 spd INHPAG 000100 spd LCSLOO 400000 spd
BEGIN 030000 DEBUG4 000200 spd INXM 000100 spd LCTRP 000435 spd
BEGIN1 030010 DEBUG5 000100 spd IOCLR 200000 spd LCWSX 000040 spd
BELL 030256 DEBUG6 000040 spd IPAER 000200 000000 spd LDATAF 000200 spd
BIS 020000 spd DECVER 000000 spd ITERAT 000005 spd LDCASD 040020 spd
BUFCLS 000030 spd DELAY 005000 000000 ITRCH1 030104 LDIOPF 040400 spd
CALL 200000 000000 spd DF22F 030142 ITRCNT 030024 LDLNK 027774
CCA 000014 spd DGSNT 000001 spd JEN 254500 000000 LDNXER 042000 spd
CFIBF 104000 000100 DIAGMN 030002 JOB41 000041 spd LDPAER 041000 spd
CFLUSH 037100 000004 DING 010000 spd JOBAPR 000125 spd LDPWRF 040100 spd
CHAIN 000004 spd DINIT 040000 000000 spd JOBCNI 000126 spd LDSBER 044000 spd
CHNOFF 001000 spd DOLLAR 030261 JOBDDT 000074 spd LECASD 100020 spd
CHNON 002000 spd DROPDV 037240 000002 JOBFF 000121 spd LEIOPF 100400 spd
CINVAL 037040 000004 DSPEAR 004000 spd JOBOPC 000130 spd LENXER 102000 spd
CKTSET 000200 spd EBUSPE 004000 spd JOBREL 000044 spd LEPAER 101000 spd
CLK 001000 spd ECOMP 000020 000000 spd JOBREN 000124 spd LEPWRF 100100 spd
CLKCLR 001000 spd ENDFIX 030577 JOBSA 000120 spd LESBER 104000 spd
CLKDIS 004000 spd ENDUUO 037500 000004 JOBSYM 000116 spd LEUPFW 000420 spd
CLKENB 002000 spd EOPUUO 037700 000004 JOBTPC 000127 spd LEVNCD 100000 spd
CLKU 001000 spd ERFLG 000015 JOBUSY 000117 spd LEVNPA 400000 spd
CLOCKF 030045 ERLOOP 035000 000000 JOBUUO 000040 spd LEVNPD 200000 spd
CLOKOP 037540 000004 ERLP1 035040 000000 JOBVER 000137 spd LEXCMP 000000 spd
CLSBUF 000030 spd ERLP2 035100 000000 JRSTF 254100 000000 LFLGCL 020000 spd
CMDQAV 000400 spd ERMORE 030101 JSYS 104000 000000 LFLGDS 040000 spd
CNFRET 000003 spd ERRHLT 037600 000004 KAHZ50 000002 spd LFLGEN 100000 spd
CNTLC 030062 ERRPC 030052 KAIFLG 030040 LFLGST 010000 spd
CNTRD 000202 spd ERRTLS 030053 KL10 000001 spd LFP 030254
CNTSET 000201 spd ERSTOP 002000 spd KLFLG 030041 LGWC 000100 000000 spd
COMMA 030244 ERUUO 036000 000000 LAPRAL 127520 spd LINK 100000 000000 spd
CONSW 030046 EXCASB 000001 spd LAPRP1 000001 spd LINSTF 000400 spd
CPOPJ 030065 EXIOT 004000 spd LAPRP2 000002 spd LINT 000010 spd
CPOPJ1 030064 FATAL 037640 000004 LAPRP3 000003 spd LIOCLR 200000 spd
CRAMPE 004000 000000 spd FOV 040000 spd LAPRP4 000004 spd LIOPFE 000400 spd
CRLF 030242 FOVU 000100 spd LAPRP5 000005 spd LKNTRP 000430 spd
CRLF2 030243 FQUERR 002000 spd LAPRP6 000006 spd LKTRP 000431 spd
CRY0 200000 spd FRD36 037340 000004 LAPRP7 000007 spd LLACBL 400000 spd
CRY1 100000 spd FRD8 037400 000004 LAROVT 000421 spd LLDUSB 100000 spd
CSHFLG 030506 FRDLNK 027773 LAST 010000 000000 spd LLPRCN 200000 spd
CSHMEM 030507 FREAD 037300 000004 LAXER 000400 000000 spd LMUUO 000424 spd
CSRCHN 100000 000000 spd FSELEC 037240 000004 LBSNT 000015 spd LMUUOP 000425 spd
CSRRQS 200000 000000 spd FSELNK 027772 LCASDE 000020 spd LNXMEN 002000 spd
CWRTBI 037140 000004 FUNCT 020000 000000 spd LCASLD 200000 spd LNXMER 002000 spd
CYCL60 030505 FXU 000100 spd LCASLO 400000 spd LOGO 400000 000000 spd
DATREC 000014 spd GENEPE 100000 spd LCASWB 200000 spd LOOP 040000 000000 spd
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page S-2
DFCIAE MAC 20-Sep-82 09:51 SYMBOL TABLE SEQ 0150
LOOPER 004000 spd LUUO 000040 spd MODPCP 037300 000002 PGMNAM 000000 ext
LOOPGM 040000 spd LUUO1 000000* spd MODPCU 037340 000002 PI00RQ 020000 000000 spd
LOOPTS 020000 spd LUUO10 030070 MONCTL 030043 PIA00 000004 spd
LPAREN 001000 spd LUUO11 030070 MONFLG 030042 PIA01 000002 spd
LPARER 001000 spd LUUO12 030070 MONTEN 030044 PIA02 000001 spd
LPDOVT 000422 spd LUUO13 030070 MONTYP 030516 PICHN1 000100 spd
LPFWPC 000426 spd LUUO14 030070 MPER 200000 000000 spd PICHN2 000040 spd
LPGFTR 000427 spd LUUO15 030070 MPRUN 000010 spd PICHN3 000020 spd
LPICH1 000100 spd LUUO16 030070 MPVU 020000 spd PICHN4 000010 spd
LPICH2 000040 spd LUUO17 030070 MSG 100000 000000 spd PICHN5 000004 spd
LPICH3 000020 spd LUUO2 000000* spd MSGSNT 000002 spd PICHN6 000002 spd
LPICH4 000010 spd LUUO20 030070 MTROP 037200 000004 PICHN7 000001 spd
LPICH5 000004 spd LUUO21 030070 MVRERR 001000 spd PICHNA 000177 spd
LPICH6 000002 spd LUUO22 030070 NEXM 020000 000000 spd PICLR 010000 spd
LPICH7 000001 spd LUUO23 030070 NOPNT 040000 spd PIOFF 000400 spd
LPICHA 000177 spd LUUO24 030070 NOTWC0 040000 000000 spd PION 000200 spd
LPICLR 010000 spd LUUO25 030070 NXMU 010000 spd PJRST 254000 000000
LPIIP1 040000 spd LUUO26 030070 OP 000011 PK 000012
LPIIP2 020000 spd LUUO27 000000* spd OPRSEL 000010 spd PLIST 030303
LPIIP3 010000 spd LUUO3 000000* spd OPTIME 030224 PLISTE 030504
LPIIP4 004000 spd LUUO30 030070 OVN 000020 000000 spd PLISTS 030304
LPIIP5 002000 spd LUUO31 030070 P 000017 PLUS 030251
LPIIP6 001000 spd LUUO32 030070 PAG 000010 spd PNT1 037040 000000
LPIIP7 000400 spd LUUO33 030070 PALERS 001000 spd PNT11 037440 000000
LPIOFF 000400 spd LUUO4 000000* spd PARCLR 200000 spd PNT11F 037440 000001
LPION 000200 spd LUUO5 000000* spd PARDIS 100000 spd PNT1F 037040 000001
LPNTRP 000436 spd LUUO6 000000* spd PAREA1 711523 655207 spd PNT2 037100 000000
LPRCH1 000100 spd LUUO7 000000* spd PAREA2 000000 spd PNT2F 037100 000001
LPRCH2 000040 spd LUUOI 000041 spd PAREA3 444643 514100 spd PNT3 037140 000000
LPRCH3 000020 spd LWRITE 000100 spd PAREA4 605664 000000 spd PNT3F 037140 000001
LPRCH4 000010 spd MAPADR 037540 000002 PAREA5 000000 spd PNT4 037200 000000
LPRCH5 000004 spd MAPCNK 037640 000002 PAREA6 000000 spd PNT4F 037200 000001
LPRCH6 000002 spd MAPMEM 037000 000004 PAREA7 030035 PNT5 037240 000000
LPRCH7 000001 spd MAPNEW 030143 PAREA8 030036 PNT5F 037240 000001
LPTRP 000437 spd MAPPNT 037740 000002 PARENB 040000 spd PNT6 037300 000000
LPWRFE 000100 spd MAPSET 037600 000002 PARU 004000 spd PNT6F 037300 000001
LPWRFL 000100 spd MARGIN 030055 PASCNT 030047 PNT7 037340 000000
LREQSE 004000 spd MAXPOR 000017 spd PAT 000014 PNT7F 037340 000001
LRQCLR 020000 spd MBCN 000016 PBELL 037040 000007 PNTA 037000 000000
LSBSEN 004000 spd MBERR 002000 000000 spd PBUFF 200000 000000 spd PNTADF 037400 000001
LSBUSE 004000 spd MCNF 000004 spd PCLEAR 400000 spd PNTADR 037400 000000
LSCASD 010020 spd MCNVER 000003 spd PCRL 037000 030242 PNTAF 037000 000001
LSECMO 040000 spd MDATRQ 000016 spd PCRL2 037000 030243 PNTAL 037740 000000
LSIOPF 010400 spd MDTSNT 000022 spd PCRL2F 037040 030243 PNTALF 037740 000001
LSMODE 040000 spd MEMLOW 030145 PCRLF 037040 030242 PNTCHF 037500 000001
LSNTRP 000432 spd MEMMAP 000001 spd PDEC 006000 000000 PNTCHR 037500 000000
LSNXER 012000 spd MEMSEG 037440 000002 PDECF 002000 000000 PNTCI 037000 000000
LSPAER 011000 spd MEMSIZ 030146 PDISF 030221 PNTCIF 037040 000000
LSPWRF 010100 spd MEMTOT 030144 PDLOVU 200000 spd PNTCW 037100 000002
LSSBER 014000 spd MEMZRO 037500 000002 PDSABL 000040 spd PNTCWF 037140 000002
LSTRP 000433 spd MINUS 030250 PENABL 000020 spd PNTDCC 003000 000000
LTRP3T 000423 spd MODDVC 000040 spd PERIOD 030245 PNTDCF 037640 000001
LTRPAE 020000 spd MODDVL 030000 spd PFORCE 037040 000026 PNTDCP 004000 000000
LTRPEN 020000 spd MODDVU 030000 spd PFSTRT 030005 PNTDEC 037640 000000
LUSCMP 000040 spd MODLNK 027776 PGMINT 265000 030011 PNTDS 037700 000000
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page S-3
DFCIAE MAC 20-Sep-82 09:51 SYMBOL TABLE SEQ 0151
PNTDSF 037700 000001 REQSET 004000 spd STRSNT 000007 spd $$TAX1 030522
PNTENB 030220 RESQAV 000200 spd SUBLNK 027777 $$TAX2 030523
PNTEXT 030021 RESRT1 030076 SWITCH 037400 000002 $$TOGG 030521
PNTFLG 030217 RESRT2 030077 SWPTAB 030525 $$UUO 030515
PNTHW 037540 000000 RETDAT 000021 spd SWTEXR 030023 $ACC0 030106
PNTHWF 037540 000001 RETURN 030012 SYSEXR 030003 $BEND1 030060
PNTINH 030222 RQINT 010000 000000 spd TAB 030247 $BEND2 030061
PNTLPT 020000 spd RSTART 200000 spd TCALL 000002 spd $CHRIN 030232
PNTMGN 037700 000002 RSTSNT 000006 spd TCALLC 000003 spd $CRLF 030234
PNTMSF 037040 000000 RTMDAT 000023 spd TCOMP 002000 spd $DEVCH 000017 spd
PNTMSG 037000 000000 RTN 263740 000000 TDENA 000100 000000 spd $DSKUP 030033
PNTNAM 030020 RTP 030255 TESTPC 030051 $DVCH1 000016 spd
PNTNM 037200 000002 RUNALL 010000 spd TEXIT 000012 spd $DVOFF 030226
PNTOCC 001000 000000 RUNFLG 030050 TICKS 030054 $EMODE 030031
PNTOCF 037740 000003 SADR1 030000 TINIT 000011 spd $FFF 030236
PNTOCS 037700 000003 SADR10 254200 000000* TJRST 000010 spd $IBUF 030274
PNTOCT 037600 000000 SADR11 254200 000000* TLAST 000000 spd $INEXT 030300
PNTOTF 037600 000001 SADR2 030000 TOTALS 100000 spd $INNM 030277
PNTSIX 037000 000002 SADR3 030000 TPACK 000005 spd $ITRHL 030071
PNTSPC 030223 SADR4 030007 TRACET 400000 spd $ITRX1 030072
PNTSXF 037040 000002 SADR5 000000* TREAD 000007 spd $LPAPE 000001 spd
PORT 400000 000000 spd SADR6 030007 TSTART 000001 spd $MMAP 030034
PORTP 400000 000000 spd SADR7 254200 000000* TSTEBF 200000 spd $MODVL 030027
PPDEC 030127 ext SADR8 254200 000000* TTALTM 037340 000003 $MODVU 030030
PPDECF 030125 ext SADR9 254200 000000* TTICHR 037000 000003 $OBUF 030265
PSIXL 037600 000003 SBINIT 030011 TTICLR 037500 000003 $ONETM 030056
PSIXLF 037640 000003 SCOPE 030116 TTICNV 037240 000003 $OUTEX 030271
PSIXM 037100 000000 SCOPE1 000000 ext TTIDEC 037200 000003 $OUTNM 030270
PSIXMF 037200 000000 SCOPER 027000 000000 TTINO 037100 000003 $PARER 030100
PSP 037000 000040 SELLAR 040000 spd TTIOCT 037140 000003 $PNAME 030025
PSPF 037040 000040 SETCKT 000200 spd TTIYES 037040 000003 $PSHER 030103
PUT 261740 000000 SETCNT 000201 spd TTLOOK 037300 000003 $PVER 030026
PVPAGI 030511 SFSTRT 030004 TTNBRF 030510 $RSRTX 030074
PWFCLR 400000 spd SHWC 000040 000000 spd TTSIXB 037400 000003 $RSRTY 030075
Q 000013 SINCYC 020000 spd TTYFIL 030227 $SPAG1 030112
QUEST 030257 SLASH 030260 TTYINP 037440 000003 $START 030001
RADIX 030262 SM10 030524 TTYSPD 030230 $SVAPR 030110
RADLSC 030264 SNDDAT 000020 spd TWAIT 000004 spd $SVPAG 030111
RADLSP 030263 SNDDG 000001 spd TWRITE 000006 spd $SVPI 030107
RANDBS 030022 SNDLB 000015 spd TXALL 060000 000000 spd $SVUPC 030114
RDCNT 000202 spd SNDMDT 000022 spd TXNOT 040000 000000 spd $SVUUO 030113
RDREG 000203 spd SNDMSG 000002 spd TXTINH 000200 spd $TABF 030235
REENTR 030006 SNDRST 000006 spd TXYES 020000 000000 spd $TTCHR 030231
REGRD 000203 spd SNDSTR 000007 spd USER 030037 $TWCNT 030225
REGWR 000204 spd SPACE 030246 USERF 010000 spd $TYPNB 030233
RELIAB 000400 spd SPARE1 010000 spd USRASB 000001 spd $UMODE 030032
REPT 000015 spd SPARE2 000100 spd USRCRF 030241 $UORTX 030067
REPT1 000016 spd SRTDDT 030007 USRLFF 030240 $USRHL 030073
REPTU 030115 START 030017 ext UUODIS 030124 $UUOER 030070
REPTUO 034000 000000 START1 030013 UUOEXT 030065 $VTF 030237
REQDT0 000010 spd START2 030014 UUORTN 030066 %ACTFL 030121
REQDT1 000011 spd START3 030015 UUOSKP 030064 %ACTUL 030122
REQDT2 000012 spd START4 030016 WRREG 000204 spd %COREC 030120
REQID 000005 spd START5 030017 $$MUUO 030517 %CORFL 030117
REQMDT 000016 spd STARTA 030010 ext $$OUTE 030520 %DISCR 030123
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page S-4
DFCIAE MAC 20-Sep-82 09:51 SYMBOL TABLE SEQ 0152
%ERHI1 030512 .LJMAP 000000 spd .MCCCE 000037 spd .MSDA 000007 spd
%ERHI2 030513 .LJRP 000000 spd .MCCCP 000037 spd .MSDQ 000007 spd
%ERHI3 030514 .LJSRP 000000 spd .MCCEB 000037 spd .MSELC 000007 spd
.DELAY 000000 ext .LJZ 000000 spd .MCCER 000037 spd .MSELE 000007 spd
.JB41 000041 spd .LLDCT 000000 spd .MCCFZ 000037 spd .MSELF 000007 spd
.JBAPR 000125 spd .LLDLM 000000 spd .MCCGC 000037 spd .MSELM 000007 spd
.JBCNI 000126 spd .LLOOP 000000 spd .MCCIA 000037 spd .MSELP 000007 spd
.JBDDT 000074 spd .LLSAD 000000 spd .MCCLW 000037 spd .MSK 000037 spd
.JBFF 000121 spd .LMARK 000000 spd .MCCMB 000037 spd .MSKCN 000037 spd
.JBOPC 000130 spd .LMGC 000001 spd .MCCMP 000037 spd .MSKMB 000037 spd
.JBREL 000044 spd .LNAND 000000 spd .MCCOF 000037 spd .MSMIN 000007 spd
.JBREN 000124 spd .LOENA 002000 spd .MCCON 000037 spd .MSORC 000007 spd
.JBSA 000120 spd .LOP 000000 spd .MCCPP 000037 spd .MSPAR 000001 spd
.JBSYM 000116 spd .LOR 000000 spd .MCCXA 000037 spd .MTIM 000001 spd
.JBTPC 000127 spd .LPAR 004000 spd .MCENA 000001 spd .MTWB 000017 spd
.JBUSY 000117 spd .LPLUS 000000 spd .MCJP 000017 spd .MXNOR 000007 spd
.JBUUO 000040 spd .LPUSH 000000 spd .MCJPP 000017 spd .MXOR 000007 spd
.JBVER 000137 spd .LRAM 000000 spd .MCJS 000017 spd .PNTDC 000000 ext
.LA 000000 spd .LRDLM 000000 spd .MCJV 000017 spd .PNTDP 030126 ext
.LADDR 000100 000000 spd .LRFCT 000000 spd .MCONT 000017 spd .PNTOC 000000 ext
.LAND 000000 spd .LRMIN 000000 spd .MCRTN 000017 spd .RA 000010 000000 spd
.LB 000000 spd .LRPCT 000000 spd .MCRY 000001 spd .RADDR 000000 spd
.LBAD 000000 spd .LS0A 000000 spd .MD 000007 spd .RAND 040000 000000 spd
.LBUS 000000 spd .LS0B 000000 spd .MDISA 000001 spd .RB 400000 spd
.LCCAF 000000 spd .LS0Q 000000 spd .MENA 000001 spd .RBAD 000001 spd
.LCCBF 000000 spd .LSAB 000000 spd .MFUNC 000007 spd .RBUS 001000 spd
.LCCCA 000000 spd .LSAQ 000000 spd .MJ 007777 spd .RCCAF 050000 spd
.LCCCC 000000 spd .LSD0 000000 spd .MJMAP 000017 spd .RCCBF 060000 spd
.LCCCE 000000 spd .LSDA 000000 spd .MJRP 000017 spd .RCCCA 000000 spd
.LCCCP 000000 spd .LSDQ 000000 spd .MJSRP 000017 spd .RCCCC 030000 spd
.LCCEB 000000 spd .LSELC 000000 spd .MJZ 000017 spd .RCCCE 160000 spd
.LCCER 000000 spd .LSELE 000000 spd .MLDCT 000017 spd .RCCCP 140000 spd
.LCCFZ 000000 spd .LSELF 000000 spd .MLDLM 000037 spd .RCCEB 040000 spd
.LCCGC 000000 spd .LSELM 000000 spd .MLOOP 000017 spd .RCCER 100000 spd
.LCCIA 000000 spd .LSELP 000000 spd .MLSAD 000037 spd .RCCFZ 020000 spd
.LCCLW 000000 spd .LSK 000000 spd .MMARK 000001 spd .RCCGC 010000 spd
.LCCMB 000000 spd .LSKCN 000000 spd .MMGC 001777 spd .RCCIA 110000 spd
.LCCMP 000000 spd .LSKMB 000000 spd .MNAND 000007 spd .RCCLW 170000 spd
.LCCOF 000000 spd .LSMIN 000000 spd .MOENA 000001 spd .RCCMB 120000 spd
.LCCON 000000 spd .LSORC 000000 spd .MOP 000017 spd .RCCMP 130000 spd
.LCCPP 000000 spd .LSPAR 000000 spd .MOR 000007 spd .RCCOF 010000 spd
.LCCXA 000000 spd .LTIM 000000 spd .MPAR 000001 spd .RCCON 030000 spd
.LCENA 000000 spd .LTWB 000000 spd .MPLUS 000007 spd .RCCPP 150000 spd
.LCJP 000000 spd .LXNOR 000000 spd .MPUSH 000017 spd .RCCXA 070000 spd
.LCJPP 000000 spd .LXOR 000000 spd .MRAM 000001 spd .RCENA 000400 000000 spd
.LCJS 000000 spd .MA 000017 spd .MRDLM 000037 spd .RCJP 000060 spd
.LCJV 000000 spd .MADDR 007777 spd .MRFCT 000017 spd .RCJPP 000260 spd
.LCONT 000000 spd .MAND 000007 spd .MRMIN 000007 spd .RCJS 000020 spd
.LCRTN 000000 spd .MB 000017 spd .MRPCT 000017 spd .RCJV 000140 spd
.LCRY 000000 spd .MBAD 000001 spd .MS0A 000007 spd .RCONT 000340 spd
.LD 000000 spd .MBUS 000007 spd .MS0B 000007 spd .RCRTN 000240 spd
.LDISA 000000 spd .MCCAF 000037 spd .MS0Q 000007 spd .RCRY 000400 spd
.LENA 000000 spd .MCCBF 000037 spd .MSAB 000007 spd .RD 001000 000000 spd
.LFUNC 000000 spd .MCCCA 000037 spd .MSAQ 000007 spd .RDISA 000000 spd
.LJ 010000 spd .MCCCC 000037 spd .MSD0 000007 spd .RENA 000400 000000 spd
DFCIA MACRO %53A(1152) 18:44 29-Oct-84 Page S-5
DFCIAE MAC 20-Sep-82 09:51 SYMBOL TABLE SEQ 0153
.RFUNC 010000 000000 spd
.RJ 000000 spd
.RJMAP 000040 spd
.RJRP 000160 spd
.RJSRP 000120 spd
.RJZ 000000 spd
.RLDCT 000300 spd
.RLDLM 230000 spd
.RLOOP 000320 spd
.RLSAD 200000 spd
.RMARK 000002 spd
.RMGC 000000 spd
.RNAND 050000 000000 spd
.ROENA 000000 spd
.ROP 000020 spd
.ROR 030000 000000 spd
.RPAR 000000 spd
.RPLUS 000000 spd
.RPUSH 000100 spd
.RRAM 000200 000000 spd
.RRDLM 220000 spd
.RRFCT 000200 spd
.RRMIN 020000 000000 spd
.RRPCT 000220 spd
.RS0A 400000 000000 spd
.RS0B 300000 000000 spd
.RS0Q 200000 000000 spd
.RSAB 100000 000000 spd
.RSAQ 000000 spd
.RSD0 700000 000000 spd
.RSDA 500000 000000 spd
.RSDQ 600000 000000 spd
.RSELC 004000 spd
.RSELE 005000 spd
.RSELF 003000 spd
.RSELM 002000 spd
.RSELP 001000 spd
.RSK 010000 spd
.RSKCN 240000 spd
.RSKMB 210000 spd
.RSMIN 010000 000000 spd
.RSORC 100000 000000 spd
.RSPAR 000004 spd
.RTIM 000010 spd
.RTWB 000360 spd
.RXNOR 070000 000000 spd
.RXOR 060000 000000 spd
ABORT 1003#
ADRPE 100# SEQ 0154
ALL 319#
ALTCHH 9# 380
ALTMGO 1357#
ANXM 1271#
AROV 1271#
AROVU 1271#
AST 1472#
ATSIN 1473#
BEGEND 1353#
BEGIN 75 76 77 1218 1219 1284#
BEGIN1 1300# 1354
BELL 1476#
BIS 1271#
BUFCLS 174#
CALL 389#
CCA 1271#
CHAIN 1023#
CHNOFF 1271#
CHNON 1271#
CKTSET 175#
CLK 1271#
CLKCLR 1271#
CLKDIS 1271#
CLKENB 1271#
CLKU 1271#
CLOCKF 1339#
CLSBUF 147# 174
CMDQAV 346#
CNFRET 158#
CNTLC 1356#
CNTRD 177#
CNTSET 176#
COMMA 1465#
CONSW 1340#
CPOPJ 1360#
CPOPJ1 1358#
CRAMPE 332#
CRLF 1153 1154 1460#
CRLF2 1157 1158 1462#
CRY0 1271#
CRY1 1271#
CSHFLG 1519#
CSHMEM 1520#
CSRCHN 328#
CSRRQS 327#
CYCL60 1513#
DATREC 167#
DATRET 171#
DATRQ0 163#
DATRQ1 164#
DATRQ2 165#
DATSNT 170#
DCK 1271# SEQ 0155
DCOMP 335#
DDTLNK 1037# 1298
DDTSRT 1298#
DEBUG1 121#
DEBUG2 122#
DEBUG3 123#
DEBUG4 124#
DEBUG5 125#
DEBUG6 126#
DECVER 20# 1319
DF22F 1424#
DGSNT 156#
DIAGMN 1287#
DING 1009#
DINIT 329#
DOLLAR 1479#
DSKUPD 1324
DSPEAR 120#
EBUSPE 343#
ECOMP 336#
ENDFIX 1599#
ERFLG 55#
ERMORE 1373#
ERRPC 1344#
ERRTLS 1345#
ERSTOP 1012#
EXCASB 66# 1322
EXIOT 1271#
FOV 1271#
FOVU 1271#
FQUERR 344#
FRDLNK 1035#
FSELNK 1034#
FUNCT 318#
FXU 1271#
GENEPE 339#
GOTO 390#
HYPEN 1470#
IDLE 334#
IDREC 166#
IDREQ 160#
INHCSH 1020#
INHFLT 115#
INHMSG 116#
INHPAG 1017#
INXM 1271#
IOCLR 1271#
IPAER 104#
ITERAT 64# 1317
ITRCH1 1377#
ITRCNT 1317#
JOB41 1271#
JOBAPR 1271# SEQ 0156
JOBCNI 1271#
JOBDDT 1271#
JOBFF 1271#
JOBOPC 1271#
JOBREL 1271#
JOBREN 1271#
JOBSA 1271#
JOBSYM 1271#
JOBTPC 1271#
JOBUSY 1271#
JOBUUO 1271#
JOBVER 1271#
KA10 1271
KAHZ50 1025#
KAIFLG 1334#
KI10 1271
KL10 65# 1271
KL10P0 1271
KLFLG 1335#
KLOLD 1233
LAPRAL 1271#
LAPRP1 1271#
LAPRP2 1271#
LAPRP3 1271#
LAPRP4 1271#
LAPRP5 1271#
LAPRP6 1271#
LAPRP7 1271#
LAROVT 1271#
LAST 394#
LAXER 103#
LBSNT 168#
LCASDE 1271#
LCASLD 1271#
LCASLO 1271#
LCASWB 1271#
LCASWD 1271#
LCCASD 1271#
LCHNOF 1271#
LCHNON 1271#
LCIOPF 1271#
LCNTRP 1271#
LCNXER 1271#
LCPAER 1271#
LCPWRF 1271#
LCSBER 1271#
LCSLOA 1271#
LCSLOO 1271#
LCTRP 1271#
LCWSX 1271#
LDATAF 1271#
LDCASD 1271#
LDIOPF 1271# SEQ 0157
LDLNK 1036# 1287 1289
LDNXER 1271#
LDPAER 1271#
LDPWRF 1271#
LDSBER 1271#
LECASD 1271#
LEIOPF 1271#
LENXER 1271#
LEPAER 1271#
LEPWRF 1271#
LESBER 1271#
LEUPFW 1271#
LEVNCD 1271#
LEVNPA 1271#
LEVNPD 1271#
LEXCMP 1271#
LFLGCL 1271#
LFLGDS 1271#
LFLGEN 1271#
LFLGST 1271#
LFP 1474#
LGWC 105#
LINK 316#
LINSTF 1271#
LINT 1271#
LIOCLR 1271#
LIOPFE 1271#
LKNTRP 1271#
LKTRP 1271#
LLACBL 1271#
LLDUSB 1271#
LLPRCN 1271#
LMUUO 1271#
LMUUOP 1271#
LNXMEN 1271#
LNXMER 1271#
LOGO 98#
LOOP 317#
LOOPER 1011#
LOOPGM 117#
LOOPTS 118#
LPAREN 1271#
LPARER 1271#
LPDOVT 1271#
LPFWPC 1271#
LPGFTR 1271#
LPICH1 1271#
LPICH2 1271#
LPICH3 1271#
LPICH4 1271#
LPICH5 1271#
LPICH6 1271#
LPICH7 1271# SEQ 0158
LPICHA 1271#
LPICLR 1271#
LPIIP1 1271#
LPIIP2 1271#
LPIIP3 1271#
LPIIP4 1271#
LPIIP5 1271#
LPIIP6 1271#
LPIIP7 1271#
LPIOFF 1271#
LPION 1271#
LPNTRP 1271#
LPRCH1 1271#
LPRCH2 1271#
LPRCH3 1271#
LPRCH4 1271#
LPRCH5 1271#
LPRCH6 1271#
LPRCH7 1271#
LPTRP 1271#
LPWRFE 1271#
LPWRFL 1271#
LREQSE 1271#
LRQCLR 1271#
LSBSEN 1271#
LSBUSE 1271#
LSCASD 1271#
LSECMO 1271#
LSIOPF 1271#
LSMODE 1271#
LSNTRP 1271#
LSNXER 1271#
LSPAER 1271#
LSPWRF 1271#
LSSBER 1271#
LSTRP 1271#
LTRP3T 1271#
LTRPAE 1271#
LTRPEN 1271#
LUSCMP 1271#
LUUO 1271#
LUUO1 374# 1404 1405
LUUO10 1404 1409
LUUO11 1404 1409
LUUO12 1404 1410
LUUO13 1404 1410
LUUO14 1404 1411
LUUO15 1404 1411
LUUO16 1404 1412
LUUO17 1404 1412
LUUO2 375# 1404 1406
LUUO20 1404 1413
LUUO21 1404 1413 SEQ 0159
LUUO22 1404 1414
LUUO23 1404 1414
LUUO24 1404 1415
LUUO25 1404 1415
LUUO26 1404 1416
LUUO27 381# 1404 1416
LUUO3 376# 1404 1406
LUUO30 1404 1417
LUUO31 1404 1417
LUUO32 1404 1418
LUUO33 1404 1418
LUUO4 377# 1404 1407
LUUO5 378# 1404 1407
LUUO6 379# 1404 1408
LUUO7 380# 1404 1408
LUUOI 1271#
LWRITE 1271#
MAPNEW 1425#
MARGIN 1347#
MAXPOR 70#
MBCN 56#
MBERR 333#
MCNF 159#
MCNVER 19# 1319
MDATRQ 169#
MDTSNT 172#
MEMLOW 1427#
MEMMAP 68# 1325
MEMSIZ 1428#
MEMTOT 1426#
MINUS 1469#
MODDVC 1019#
MODDVL 1218 1218# 1320
MODDVU 1219 1219# 1321
MODLNK 1038# 1284
MONCTL 1337#
MONFLG 1336#
MONTEN 1338#
MONTYP 1551#
MPER 99#
MPRUN 351#
MPVU 1271#
MSG 388#
MSGSNT 157#
MVRERR 345#
NEXM 102#
NOPNT 1007#
NOTWC0 101#
NXMU 1271#
OP 51#
OPRSEL 1021#
OPTIME 1439#
OVN 107# SEQ 0160
P 57# 1064 1065 1066 1067 1271# 1359
PAG 1271#
PALERS 1013#
PARCLR 1271#
PARDIS 1271#
PAREA1 87# 1315
PAREA2 88# 1316
PAREA3 89# 1313
PAREA4 90# 1314
PAREA5 91# 1326
PAREA6 92# 1327
PAREA7 1326#
PAREA8 1327#
PARENB 1271#
PARU 1271#
PASCNT 1341#
PAT 54#
PBUFF 315#
PCLEAR 337#
PDISF 1436#
PDLOVU 1271#
PDSABL 349#
PENABL 350#
PERIOD 1466#
PFSTRT 1293#
PGMNAM 8# 1318
PI00RQ 330#
PIA00 352#
PIA01 353#
PIA02 354#
PICHN1 1271#
PICHN2 1271#
PICHN3 1271#
PICHN4 1271#
PICHN5 1271#
PICHN6 1271#
PICHN7 1271#
PICHNA 1271#
PICLR 1271#
PIOFF 1271#
PION 1271#
PK 52#
PLIST 1505# 1505
PLISTE 1505 1507#
PLISTS 1506#
PLUS 1471#
PNTENB 1435#
PNTEXT 1314#
PNTFLG 1434#
PNTINH 1437#
PNTLPT 1008#
PNTNAM 1313#
PNTSPC 1438# SEQ 0161
PORT 314#
PORTP 326#
PPDEC 9# 379
PPDECF 9# 375
PVPAGI 1532#
PWFCLR 1271#
Q 53#
QUEST 1477#
RADIX 1480#
RADLSC 1482#
RADLSP 1481#
RANDBS 1315#
RDCNT 150# 177
RDREG 151# 178
REENTR 1295#
REGRD 178#
REGWR 179#
RELIAB 1015#
REPT 1271#
REPT1 1271#
REPTU 1393#
REQDT0 139# 163
REQDT1 140# 164
REQDT2 141# 165
REQID 136# 160
REQMDT 143# 169
REQSET 1271#
RESQAV 347#
RESRT1 1370#
RESRT2 1371#
RETDAT 145# 171
RETURN 1302#
RQINT 331#
RSTART 1004#
RSTSNT 161#
RTMDAT 173#
RTP 1475#
RUNALL 119#
RUNFLG 1342#
SADR1 75# 1291
SADR10 84# 1307
SADR11 85# 1308
SADR2 76# 1293
SADR3 77# 1295
SADR4 78#
SADR5 79# 1356
SADR6 80# 1357
SADR7 81# 1304
SADR8 82# 1305
SADR9 83# 1306
SBINIT 1077 1301#
SCOPE 1394#
SCOPE1 8# 381 SEQ 0162
SELLAR 340#
SETCKT 148# 175
SETCNT 149# 176
SFSTRT 1291#
SHWC 106#
SINCYC 341#
SLASH 1478#
SM10 1582#
SNDDAT 144# 170
SNDDG 134# 156
SNDLB 142# 168
SNDMDT 146# 172
SNDMSG 135# 157
SNDRST 137# 161
SNDSTR 138# 162
SPACE 1467#
SPARE1 342#
SPARE2 348#
SRTDDT 78 80 1297#
START 8# 79 81 82 83 84 85 1285
START1 1304#
START2 1305#
START3 1306#
START4 1307#
START5 1308#
STARTA 8# 1300
STRSNT 162#
SUBLNK 1039# 1301
SWPTAB 1588#
SWTEXR 1316#
SYSEXR 1289#
TAB 1468#
TCALL 298#
TCALLC 299#
TCOMP 356#
TDENA 320#
TESTPC 1343#
TEXIT 307#
TICKS 1346#
TINIT 306#
TJRST 305#
TLAST 296#
TOTALS 1005#
TPACK 302#
TRACET 114#
TREAD 304#
TSTART 297#
TSTEBF 338#
TTNBRF 1526#
TTYFIL 1442#
TTYSPD 1443#
TWAIT 301#
TWRITE 303# SEQ 0163
TXALL 393#
TXNOT 391#
TXTINH 1016#
TXYES 392#
USER 1333#
USERF 1271#
USRASB 67# 1323
USRCRF 1452#
USRLFF 1451#
UUODIS 1405#
UUOEXT 1361#
UUORTN 1362#
UUOSKP 1359#
WRREG 152# 179
$$MUUO 1557#
$$OUTE 1563#
$$TAX1 1575#
$$TAX2 1576#
$$TOGG 1569#
$$UUO 1546#
$ACC0 1384#
$BEND1 1354#
$BEND2 1355#
$CHRIN 1445#
$CRLF 1447#
$DEVCH 1271#
$DSKUP 1324#
$DVCH1 1271#
$DVOFF 1441#
$EMODE 1322#
$FFF 1449#
$IBUF 1497#
$INEXT 1499#
$INNM 1498#
$ITRHL 1365#
$ITRX1 1366#
$LPAPE 73#
$MMAP 1325#
$MODVL 1320#
$MODVU 1321#
$OBUF 1488#
$ONETM 1348#
$OUTEX 1490#
$OUTNM 1489#
$PAPER 1271
$PARER 1372#
$PNAME 1318#
$PSHER 1376#
$PVER 1319#
$RSRTX 1368#
$RSRTY 1369#
$SPAG1 1388#
$START 1285# SEQ 0164
$SVAPR 1386#
$SVPAG 1387#
$SVPI 1385#
$SVUPC 1391#
$SVUUO 1390#
$TABF 1448#
$TTCHR 1444#
$TWCNT 1440#
$TYPNB 1446#
$UMODE 1323#
$UORTX 1363#
$USRHL 1367#
$UUOER 1364# 1405
$VTF 1450#
%ACTFL 1397#
%ACTUL 1398#
%COREC 1396#
%CORFL 1395#
%DISCR 1399#
%ERHI1 1538#
%ERHI2 1539#
%ERHI3 1540#
.DELAY 9# 378
.JB41 1271#
.JBAPR 1271#
.JBCNI 1271#
.JBDDT 1271#
.JBFF 1271#
.JBOPC 1271#
.JBREL 1271#
.JBREN 1271#
.JBSA 1271#
.JBSYM 1271#
.JBTPC 1271#
.JBUSY 1271#
.JBUUO 1271#
.JBVER 1271#
.LA 580#
.LADDR 468#
.LAND 544#
.LB 584#
.LBAD 792#
.LBUS 684#
.LCCAF 620#
.LCCBF 624#
.LCCCA 600#
.LCCCC 612#
.LCCCE 656#
.LCCCP 648#
.LCCEB 616#
.LCCER 632#
.LCCFZ 608#
.LCCGC 604# SEQ 0165
.LCCIA 636#
.LCCLW 660#
.LCCMB 640#
.LCCMP 644#
.LCCOF 596#
.LCCON 592#
.LCCPP 652#
.LCCXA 628#
.LCENA 564#
.LCJP 728#
.LCJPP 760#
.LCJS 720#
.LCJV 740#
.LCONT 772#
.LCRTN 756#
.LCRY 708#
.LD 560#
.LDISA 568#
.LENA 572#
.LFUNC 524#
.LJ 472#
.LJMAP 724#
.LJRP 744#
.LJSRP 736#
.LJZ 716#
.LLDCT 764#
.LLDLM 672#
.LLOOP 768#
.LLSAD 664#
.LMARK 788#
.LMGC 484#
.LNAND 548#
.LOENA 480#
.LOP 712#
.LOR 540#
.LPAR 476#
.LPLUS 528#
.LPUSH 732#
.LRAM 576#
.LRDLM 676#
.LRFCT 748#
.LRMIN 536#
.LRPCT 752#
.LS0A 508#
.LS0B 504#
.LS0Q 500#
.LSAB 496#
.LSAQ 492#
.LSD0 520#
.LSDA 512#
.LSDQ 516#
.LSELC 700#
.LSELE 704# SEQ 0166
.LSELF 696#
.LSELM 692#
.LSELP 688#
.LSK 588#
.LSKCN 680#
.LSKMB 668#
.LSMIN 532#
.LSORC 488#
.LSPAR 784#
.LTIM 780#
.LTWB 776#
.LXNOR 556#
.LXOR 552#
.MA 582#
.MADDR 470#
.MAND 546#
.MB 586#
.MBAD 794#
.MBUS 686#
.MCCAF 622#
.MCCBF 626#
.MCCCA 602#
.MCCCC 614#
.MCCCE 658#
.MCCCP 650#
.MCCEB 618#
.MCCER 634#
.MCCFZ 610#
.MCCGC 606#
.MCCIA 638#
.MCCLW 662#
.MCCMB 642#
.MCCMP 646#
.MCCOF 598#
.MCCON 594#
.MCCPP 654#
.MCCXA 630#
.MCENA 566#
.MCJP 730#
.MCJPP 762#
.MCJS 722#
.MCJV 742#
.MCONT 774#
.MCRTN 758#
.MCRY 710#
.MD 562#
.MDISA 570#
.MENA 574#
.MFUNC 526#
.MJ 474#
.MJMAP 726#
.MJRP 746#
.MJSRP 738# SEQ 0167
.MJZ 718#
.MLDCT 766#
.MLDLM 674#
.MLOOP 770#
.MLSAD 666#
.MMARK 790#
.MMGC 486#
.MNAND 550#
.MOENA 482#
.MOP 714#
.MOR 542#
.MPAR 478#
.MPLUS 530#
.MPUSH 734#
.MRAM 578#
.MRDLM 678#
.MRFCT 750#
.MRMIN 538#
.MRPCT 754#
.MS0A 510#
.MS0B 506#
.MS0Q 502#
.MSAB 498#
.MSAQ 494#
.MSD0 522#
.MSDA 514#
.MSDQ 518#
.MSELC 702#
.MSELE 706#
.MSELF 698#
.MSELM 694#
.MSELP 690#
.MSK 590#
.MSKCN 682#
.MSKMB 670#
.MSMIN 534#
.MSORC 490#
.MSPAR 786#
.MTIM 782#
.MTWB 778#
.MXNOR 558#
.MXOR 554#
.PNTDC 9# 376
.PNTDP 9# 377
.PNTOC 9# 374
.RA 581#
.RADDR 469#
.RAND 545#
.RB 585#
.RBAD 793#
.RBUS 685#
.RCCAF 621#
.RCCBF 625# SEQ 0168
.RCCCA 601#
.RCCCC 613#
.RCCCE 657#
.RCCCP 649#
.RCCEB 617#
.RCCER 633#
.RCCFZ 609#
.RCCGC 605#
.RCCIA 637#
.RCCLW 661#
.RCCMB 641#
.RCCMP 645#
.RCCOF 597#
.RCCON 593#
.RCCPP 653#
.RCCXA 629#
.RCENA 565#
.RCJP 729#
.RCJPP 761#
.RCJS 721#
.RCJV 741#
.RCONT 773#
.RCRTN 757#
.RCRY 709#
.RD 561#
.RDISA 569#
.RENA 573#
.RFUNC 525#
.RJ 473#
.RJMAP 725#
.RJRP 745#
.RJSRP 737#
.RJZ 717#
.RLDCT 765#
.RLDLM 673#
.RLOOP 769#
.RLSAD 665#
.RMARK 789#
.RMGC 485#
.RNAND 549#
.ROENA 481#
.ROP 713#
.ROR 541#
.RPAR 477#
.RPLUS 529#
.RPUSH 733#
.RRAM 577#
.RRDLM 677#
.RRFCT 749#
.RRMIN 537#
.RRPCT 753#
.RS0A 509#
.RS0B 505# SEQ 0169
.RS0Q 501#
.RSAB 497#
.RSAQ 493#
.RSD0 521#
.RSDA 513#
.RSDQ 517#
.RSELC 701#
.RSELE 705#
.RSELF 697#
.RSELM 693#
.RSELP 689#
.RSK 589#
.RSKCN 681#
.RSKMB 669#
.RSMIN 533#
.RSORC 489#
.RSPAR 785#
.RTIM 781#
.RTWB 777#
.RXNOR 557#
.RXOR 553#
ABOXMT 928#
ALTCHK 371# SEQ 0170
CALC 808#
CFIBF 363#
CFLUSH 1189#
CINVAL 1188#
CLOKOP 1183#
CONCAT 815#
CWRTBI 1190#
DELAY 369#
DLINK 876#
DROPDV 1150#
ELINK 869#
ENDUUO 1196# 1353
EOPUUO 1197# 1355
ERLOOP 1241#
ERLP1 1242#
ERLP2 1243#
ERRHLT 1084#
ERROR 1250#
ERROR1 1261#
ERUUO 1240#
FATAL 1083#
FIELD 821#
FMSG 200#
FMSGC 202#
FMSGCD 208#
FMSGD 205#
FRD36 1225#
FRD8 1226#
FREAD 1224#
FSELEC 1223#
GET 1067#
GO 1064#
HALT 81 82 83 84 85 1069# 1374
JEN 1071#
JRSTF 1070#
JSYS 362# 363
LDXBUF 851#
LSBRR 971#
LSBRT 962#
LSBWR 954#
LSMOD1 947#
LTXMIT 940#
MAPADR 1206#
MAPCNK 1207#
MAPMEM 1203#
MAPPNT 1209#
MAPSET 1208#
MDELAY 991#
MEMSEG 1205#
MEMZRO 1204#
MODPCP 1216#
MODPCU 1215#
MTROP 1184# SEQ 0171
MWORD 833#
PBELL 1159#
PCRL 1153#
PCRL2 1157#
PCRL2F 1158#
PCRLF 1154#
PDEC 370#
PDECF 366#
PFORCE 1161#
PGMINT 1077#
PJRST 1068#
PMSG 1163#
PMSGF 1166#
PNT1 1119#
PNT11 1133#
PNT11F 1134#
PNT1F 1120#
PNT2 1121#
PNT2F 1122#
PNT3 1123#
PNT3F 1124#
PNT4 1125#
PNT4F 1126#
PNT5 1127#
PNT5F 1128#
PNT6 1129#
PNT6F 1130#
PNT7 1131#
PNT7F 1132#
PNTA 1105#
PNTADF 1136#
PNTADR 1135#
PNTAF 1106#
PNTAL 1107#
PNTALF 1108#
PNTCHF 1118#
PNTCHR 1117#
PNTCI 1115#
PNTCIF 1116#
PNTCW 1151#
PNTCWF 1152#
PNTDCC 367#
PNTDCF 1144#
PNTDCP 368#
PNTDEC 1143#
PNTDS 1145#
PNTDSF 1146#
PNTHW 1139#
PNTHWF 1140#
PNTMGN 1230#
PNTMSF 1112#
PNTMSG 1111#
PNTNM 1147# SEQ 0172
PNTOCC 365#
PNTOCF 1142#
PNTOCS 1141#
PNTOCT 1137#
PNTOTF 1138#
PNTSIX 1148#
PNTSXF 1149#
PSIXL 1109#
PSIXLF 1110#
PSIXM 1113#
PSIXMF 1114#
PSP 1155#
PSPF 1156#
PUT 1066#
RDBUFF 895#
RDLS 986#
RDNADR 901#
RDPILA 922#
RDRSTA 883#
RDXSTA 889#
REPTUO 1244#
RGET 236#
RPUT 222#
RSXSTA 864#
RTN 1065# 1361
S 995#
SCOPER 372#
SELBUF 914#
SETMOD 907#
SIXBTZ 1172#
SUBTAB 252#
SWITCH 1178#
SYNC 933#
TASCIZ 216#
TMSG 189#
TMSGC 191#
TMSGCD 197#
TMSGD 194#
TTABLE 278#
TTALTM 1099#
TTICHR 1092#
TTICLR 1102#
TTICNV 1097#
TTIDEC 1096#
TTINO 1094#
TTIOCT 1095#
TTIYES 1093#
TTLOOK 1098#
TTSIXB 1100#
TTYINP 1101#
TXMIT 857#
WRLS 980#
SEQ 0173
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 1
DFCIA1 MAC 27-Oct-84 19:00 Externs / Entrys SEQ 0174
1 TITLE DFCIA (Port Functional Diagnostic)
2
3 SUBTTL Externs / Entrys
4
5 SALL
6
7 SEARCH DFCIA,MONSYM
8 000137 LOC 137
9 000137 000000 000003 DECVER,,MCNVER
10 030600 LOC ENDFIX+1
11
12 ; Miscellaneous stuff
13
14 INTERN UDEBUG ; no-IPA user mode debug switch
15 INTERN MDEBUG ; error message debug switch
16 INTERN SDEBUG ; test debug switch
17 INTERN LDEBUG ; ucode load debug switch
18 INTERN DDEBUG,DDUMP ; dump on error debug switch
19 INTERN EDEBUG ; expanded error message mode switch
20 INTERN PGMNAM ; program name
21 INTERN TXADDL ; additional text routine address
22 ENTRY START,STARTA ; start addresses
23
24 ; Microcode routines
25
26 ENTRY CALPAR,DWCRAM,DRCRAM,MLOADN,MLOADY,TLOAD,TFLOAD,MVPNT
27 INTERN CADDR,CWORDL,CWORDR,PARFLG,UVERSN,MLNUM
28
29 ; Miscellaneous routines
30
31 ENTRY CSRPNT,CSRENG,TRACE,RUPDAT,SUPDAT,SETENA,SETDSA,SREPOR
32 INTERN FINPUT,FINECH,SPORT,IGNFLG,DSPRIN
33
34 ; Test variables
35
36 ENTRY TSTPNT,TSTEND
37 INTERN TSTNAM,TSTNUM,TSTSUB,TSTPC,TSTFLG,TSTMSK,TSTREP,TSTOFF
38 INTERN ALTF,TSLOAD,TAKFIL,SPEAR2,SPREP2,PMODE,TSTTAB
39
40 ; Interrupt activity print routines
41
42 ENTRY IPRINT
43
44 ; Packet Handling Routines
45
46 ENTRY BPACK,BPACKN,RWAIT,CHKINT,INSQUE,CHKRSP,PNTRSP
47 ENTRY CMDOPC,OPCPNT,TPCB,TIDLE,RDNODE,CONFIG,CONPNT,CONVIR
48 INTERN CVALID,CTABLE,CTYPE,NUMENT
49 INTERN PACKET,RSPONS,BUFF,TBYTE,TPAT,TWORD,CPORT
50 INTERN TFMFLG,TRSFLG,TPTFLG,TXCTID,TDPORT,TBYTE,TWORD
51 INTERN TPAT,TREGN,TREGD
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 2
DFCIA1 MAC 27-Oct-84 19:00 Externs / Entrys SEQ 0175
52
53 ; Queue Print Routines
54
55 ENTRY PQUEUE,PPAKC,PPAKR,PPAKF,PPCB,PPCBD
56 INTERN PCB,QFDG10,QFDG7
57
58 ; Statistics
59
60 INTERN STASNT,.SREXP,STARCA,STARCB,.RREXP
61
62 ; Test execute routine
63
64 ENTRY TEXEC,TTPNT
65 INTERN TCSR,TCMD,TRESPC,TRESPA,DCRESP,TSTATC,TSTATA
66
67 ; Tests 1-50
68
69 EXTERN TST1,TST2,TST3,TST4,TST5,TST6,TST7,TST10
70 EXTERN TST11,TST12,TST13,TST14,TST15,TST16,TST17,TST20
71 EXTERN TST21,TST22,TST23,TST24,TST25,TST26,TST27,TST30
72 EXTERN TST31,TST32,TST33,TST34,TST35,TST36,TST37,TST40
73 EXTERN TST41,TST42,TST43,TST44,TST45,TST46,TST47,TST50
74 EXTERN TST51,TST52,TST53,TST54
75
76 ; Microcode Tests 2-40
77
78 EXTERN T2M,T3M,T4M,T5M,T10M,T11M,T12M,T13M,T14M,T15M
79 EXTERN T16M,T17M,T20M,T21M,T22M,T23M,T24M,T25M,T26M
80 EXTERN T27M,T30M,T31M,T32M,T33M,T34M,T35M,T36M,T37M,T40M
81
82 ; EXTERN's located in DFCIA5.MAC
83
84 EXTERN CRCSAV,CRCOFF,CRCTAB,CHKRQV,RQAFLG
85
86 ; EXTERN's located in DFCIAI.MAC (Port Handling Routines module)
87
88 EXTERN LDEBUF,LDRAR,LDCRAM,LDCSR,RDEBUF,RDLAR,RDCRAM,RDCSR
89 EXTERN SETEBU,SETLAR,CLREBU,CHKCSR,ERESET,IPACLR,ISTOP
90 EXTERN IPASRT,IPASTP,IPASST,SLAST,SNEXT,EADDR,AADDR,SDATA
91 EXTERN INITPI,INITPD,SETVEC,.CONI,.CONO,.DATAI,.DATAO,USRION
92 EXTERN INTNUM,INTPC,INTTYP,INTCON,INTAPR,INTTIM,INTUSE,INTCSR,INTEND
93 EXTERN CHINIT,GETLOG,CCWPNT,LOGPNT,CBASE,.INPNT,.INWD1,ICWA0,ENABLE
94 EXTERN DSETUP,DEVREQ,DEVREL,SNARKF,FFF,HAVIPA,REQ1,REQ2,REL
95 EXTERN LOCPHY,LOCDON
96
97 ; EXTERN's located in DFCIAU.MAC (Utility Routines module)
98
99 EXTERN CLRBUF,TTYYES,STCLOK,PTIME,RUNTME,CURTIM,.CLOSE
100 EXTERN DEBTIM,FORPNT,CONVSX,FGETW,FINCMD,FIOFF,FOARG,.RESET
101 EXTERN .SWCHP,SWITT,.ISWT,SWCHPT,.RSWIT,.LSWIT,SWRGT,SWCOM,SCOSW
102 EXTERN .COMM,.CGOT,.SARG,.OARG,.DARG,ARGFLG,ARGUM,CHKARG,LASARG,DECYN
103 EXTERN SCOPE1,SCOOFF,BUFGEN,BUFCOM,WRDERR,PATPNT
104
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 3
DFCIA1 MAC 27-Oct-84 19:00 Initialization SEQ 0176
105 SUBTTL Initialization
106
107 SALL
108
109 030600 PGMNAM: ASCIZ $
110 030600 015 012 104 106 103 DFCIA CI Port Functional Diagnostic
111 030601 111 101 040 103 111
112 030602 040 120 157 162 164
113 030603 040 106 165 156 143
114 030604 164 151 157 156 141
115 030605 154 040 104 151 141
116 030606 147 156 157 163 164
117 030607 151 143 015 012 000 $
118
119 030610 402 00 0 00 030056 SB: SETZM $ONETM ; reinit everything
120 030611 START:
121
122 ; First clear debug switches and set up PGMINT variables - MAPNEW, PVPAGI
123
124 030611 402 00 0 00 121012' SETZM UDEBUG# ; no-IPA user mode debug switch
125 030612 402 00 0 00 120741' SETZM MDEBUG# ; error message debug switch
126 030613 402 00 0 00 120777' SETZM SDEBUG# ; test debug switch
127 030614 402 00 0 00 120737' SETZM LDEBUG# ; ucode load debug switch
128 030615 402 00 0 00 120722' SETZM DDEBUG# ; dump on error debug switch
129 030616 402 00 0 00 120727' SETZM EDEBUG# ; expanded error message switch
130 030617 476 00 0 00 030143 SETOM MAPNEW ; map all memory
131 030620 476 00 0 00 030511 SETOM PVPAGI ; always use paging
132
133 ; MCPUS - Multiple cpu print switch - If this flag is cleared, the multiple
134 ; cpu message is printed in full, if set, only the question asking which
135 ; cpu to run on is asked.
136
137 030621 336 00 0 00 030056 SKIPN $ONETM ; first time through here?
138 030622 402 00 0 00 120740' SETZM MCPUS# ; yes - clear the flag
139
140 ; Set up cache usage
141
142 030623 402 00 0 00 030506 SETZM CSHFLG ; allow pgm and any buffer space
143 030624 402 00 0 00 030507 SETZM CSHMEM ; to be in cache
144
145 ; Init file input switch
146
147 030625 402 00 0 00 120733' SETZM FINPUT# ; initialize 'file input' switch
148 030626 476 00 0 00 120732' SETOM FINECH# ; set echo switch
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 4
DFCIA1 MAC 27-Oct-84 19:00 Initialization SEQ 0177
149
150 ; Init flags/switches
151
152 030627 402 00 0 00 120734' SETZM FMTTYP# ; allow all data formats
153 030630 402 00 0 00 120714' SETZM BONETM# ; clear $ONETM flag
154 030631 336 00 0 00 030056 SKIPN $ONETM ; 1st time pgm init?
155 030632 476 00 0 00 120714' SETOM BONETM ; yes - set $ONETM flag
156 030633 332 00 0 00 030056 SKIPE $ONETM ; 1st time pgm init?
157 030634 254 00 0 00 030647 JRST STRT1 ; no - skip next bit of code
158
159 ; First time only code
160
161 030635 402 00 0 00 000000* SETZM SWRGT ; yes - clear right hand switches
162 030636 201 00 0 00 000000* MOVEI .RSWIT ; get start addr of prompt table
163 030637 202 00 0 00 030525 MOVEM SWPTAB ; setup for switch prompting
164
165 ; Init print enable, forced print switch, and statistics, and SPEAR flags
166
167 030640 211 00 0 00 303240 MOVNI ^D100000 ; set the printout limit
168 030641 202 00 0 00 030220 MOVEM PNTENB ; so won't die too soon
169 030642 402 00 0 00 000000* SETZM FORPNT ; clear forced print switch
170 030643 402 00 0 00 030521 SETZM $$TOGGLE ; enable switches
171 030644 260 17 0 00 043470 GO SZERO ; clear statistics
172 030645 402 00 0 00 121001' SETZM SPEAR1# ; clear 'SPEAR initial msg prnted' flag
173 030646 402 00 0 00 121002' SETZM SPEAR2# ; clear 'SPEAR err/fin msg prnted' flag
174
175 ; Standard startup and handle paging and clock
176
177 030647 260 17 0 00 000000* STRT1: GO .RESET ; reset everything
178 030650 265 00 0 00 030011 PGMINT ; init the program
179 030651 476 00 0 00 030516 SETOM MONTYP ; force to be TOPS-20
180 030652 205 00 0 00 500000 MOVSI 500000 ; access bits for the page table
181 030653 502 00 0 00 000400 HLLM 400 ; maps 340000 to physical 0
182 030654 201 00 0 00 340000 MOVEI 340000 ; causes paging when E is calculated
183 030655 202 00 0 00 000000* MOVEM CBASE ; channel routines now page correctly
184 030656 260 17 0 00 000000* GO STCLOK ; start the clock...
185 030657 402 00 0 00 030047 SETZM PASCNT ; clear pass count
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 5
DFCIA1 MAC 27-Oct-84 19:00 Initialization SEQ 0178
186
187 ; Set/clear debug switches
188
189 030660 402 00 0 00 121012' SETZM UDEBUG ; clear no-IPA user mode debug switch
190 030661 402 00 0 00 120741' SETZM MDEBUG ; clear error message debug switch
191 030662 402 00 0 00 120777' SETZM SDEBUG ; clear test debug switch
192 030663 402 00 0 00 120737' SETZM LDEBUG ; clear ucode load debug switch
193 030664 402 00 0 00 120722' SETZM DDEBUG ; clear dump on error debug switch
194 030665 402 00 0 00 120727' SETZM EDEBUG ; clear expanded error message switch
195 030666 260 17 0 00 000000* GO SWITT ; get switches
196 030667 602 00 0 00 002000 TRNE DEBUG1 ; debug switch set?
197 030670 476 00 0 00 121012' SETOM UDEBUG ; set no-IPA user mode debug switch
198 030671 602 00 0 00 001000 TRNE DEBUG2 ; debug switch set?
199 030672 476 00 0 00 120741' SETOM MDEBUG ; set error message debug switch
200 030673 602 00 0 00 000400 TRNE DEBUG3 ; test debug switch set?
201 030674 476 00 0 00 120777' SETOM SDEBUG ; set test debug switch
202 030675 602 00 0 00 000200 TRNE DEBUG4 ; debug switch set?
203 030676 476 00 0 00 120737' SETOM LDEBUG ; set ucode load debug switch
204 030677 602 00 0 00 000100 TRNE DEBUG5 ; debug switch set?
205 030700 476 00 0 00 120722' SETOM DDEBUG ; set dump on error debug switch
206 030701 602 00 0 00 000040 TRNE DEBUG6 ; debug switch set?
207 030702 476 00 0 00 120727' SETOM EDEBUG ; set expanded error message switch
208 030703 201 00 0 00 000005 MOVEI ITERAT ; get default pass count
209 030704 202 00 0 00 030024 MOVEM ITRCNT ; save in FIXED area location
210 030705 402 00 0 00 103310 SETZM PMODE ; set program mode to 'no test'
211
212 ; Request device, ...
213
214 030706 200 16 0 00 103311 MOVE MBCN,CIPORT ; set up MBCN register
215 030707 260 17 0 00 000000* GO DSETUP ; set up DIAG JSYS
216 030710 260 17 0 00 000000* GO LOCPHY ; lock part of the diagnostic
217 030711 260 17 0 00 000000* GO ENABLE ; enable privileges
218 030712 260 17 0 00 000000* GO USRION ; set USRIOT bit
219 030713 260 17 0 00 000000* GO RDCSR ; read CSR
220 030714 400 01 0 00 000000 SETZ 1, ; error
221 030715 404 01 0 00 103522 AND 1,[400003,,0] ; mask out all but hardwired bits
222 030716 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
223 030717 316 01 0 00 103522 CAMN 1,[400003,,0] ; no - a CI20 here?
224 030720 260 17 0 00 000000* GO DEVREQ ; yes - request the device
225 JRST [FMSGCD <? CI port not found>
226 SKIPE 20000
227 JRST 20000
228 HALT .+1
229 030721 254 00 0 00 103530 JRST START]
230
231 ; Handle SPEAR reporting
232
233 030722 260 17 0 00 100447 GO SPREP1 ; do initial SPEAR report
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 6
DFCIA1 MAC 27-Oct-84 19:00 Initialization SEQ 0179
234
235 ; Go do a test
236
237 030723 260 17 0 00 000000* STARTA: GO INITPI ; initialize PI system
238 030724 260 17 0 00 000000* GO SETVEC ; set up vector addresses
239 030725 260 17 0 00 030765 GO DISPAT ; do a test
240 030726 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
241 030727 254 00 0 00 030745 JRST STARTB ; yes - exit
242 030730 260 17 0 00 030666* GO SWITT ; get switches
243 030731 607 00 0 00 000010 TLNN OPRSEL ; OPRSEL switch set?
244 030732 260 17 0 00 030746 GO PASPNT ; no - print end of pass
245 030733 260 17 0 00 030730* GO SWITT ; get switches
246 030734 336 00 0 00 030037 SKIPN USER ; user mode?
247 030735 607 00 0 00 400000 TLNN ABORT ; abort switch set?
248 030736 334 00 0 00 000000 SKIPA ; no (or user mode) - continue
249 030737 254 00 0 00 030745 JRST STARTB ; yes - exit
250 030740 037 12 0 00 000004 ENDUUO ; end of pass handling
251 030741 254 00 0 00 030723 JRST STARTA ; ITRCNT not exhausted - continue
252 030742 260 17 0 00 030733* GO SWITT ; get switches
253 030743 602 00 0 00 040000 TRNE LOOPGM ; loop on program switch set?
254 030744 254 00 0 00 030723 JRST STARTA ; yes - loop forever
255 030745 037 16 0 00 000004 STARTB: EOPUUO ; ITRCNT exhausted - exit pgm
256
257 ; Print pass count
258
259 030746 200 00 0 00 030047 PASPNT: MOVE PASCNT ; get pass count
260 030747 350 00 0 00 000000 AOS ; increment by 1
261 030750 231 00 0 00 000012 IDIVI ^D10 ; divide by 10
262 030751 332 00 0 00 000000 SKIPE ; print pass number only for passes
263 030752 326 01 0 00 103535 JUMPN 1,[RTN] ; 1,2..7,10,20,30,40 ...
264 030753 037 00 0 00 103536 TMSGC <End pass > ; print it
265 030754 200 00 0 00 030047 MOVE PASCNT
266 030755 350 00 0 00 000000 AOS
267 030756 037 15 0 00 000000 PNTDEC
268 030757 037 00 0 00 103541 TMSG <. at >
269 030760 402 00 0 00 030642* SETZM FORPNT ; clear force print
270 030761 200 03 0 00 103543 MOVE 3,[JFCL] ; set up timer routine
271 030762 260 17 0 00 000000* GO RUNTME ; print current time
272 030763 037 00 0 00 030242 PCRL
273 030764 263 17 0 00 000000 RTN ; return
274
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 7
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0180
275 SUBTTL Test/Command Selection
276
277 ;#*********************************************************************
278 ;* DISPAT - Routine to dispatch to proper test as typed by the operator
279 ;* in response to the 'WHAT TEST' prompt.
280 ;
281 ; COMMAND DEFINITION
282 ; ------- ----------
283 ; ALL n All tests
284 ; PORT n Port modules related tests
285 ; PBUFF n Packet Buffer module related tests
286 ; LINK n LINK module related tests
287 ; LOOP n Loopback tests
288 ; FUNCT n Functional tests (including loopback)
289 ; n n Test n
290 ;
291 ; Other tests:
292 ;
293 ; DEBUG Enter debugger
294 ;
295 ; DIAMON Enter DIAMON
296 ; DDT Enter DDT
297 ; HELP Print this text
298 ; EXIT Exit program
299 ;
300 ; TAKE Take commands from a file
301 ; NTAKE Take commands from a file (without echoing them)
302 ;
303 ; CONFIG Collect/print current configuration
304 ; CONPNT Print current configuration
305 ;
306 ; ENABLE Enable execution of a test
307 ; DISABL Disable execution of a test
308 ; DISLIS List disabled tests
309 ;
310 ; LIST n List all tests
311 ;
312 ; Switches: To complement switch, type switch name
313 ;
314 ; SWITCH Enter switches
315 ; SWPRIN Print current switches
316 ;
317 ; NOPNT ERSTOP TXTINH TRACE LOOPGM DSPEAR SDEBUG EDEBUG
318 ; PNTLPT PALERS OPRSEL INHMSG LOOPTS UDEBUG LDEBUG
319 ; DING RELIAB INHFLT RUNALL MDEBUG DDEBUG
320 ;#********************************************************************
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 8
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0181
321
322 030765 402 00 0 00 120713' DISPAT: SETZM ALTF# ; clear 'altmode typed' flag
323
324 030766 260 17 0 00 030742* GO SWITT ; get switches
325 030767 603 00 0 00 000010 TLNE OPRSEL ; OPRSEL switch set?
326 030770 037 01 0 00 103544 FMSGCD <Type ? for help> ; yes - print this
327
328 ; Do a little initialization - first set up altmode transfer address
329
330 030771 260 17 0 00 030766* DISP0: GO SWITT ; get switches
331 030772 603 00 0 00 000010 TLNE OPRSEL ; OPRSEL switch set?
332 MOVEI 1,[PCRLF ; yes - set $ addr to print blank line
333 030773 201 01 0 00 103550 JRST DISP0] ; line and continue at 'What test'
334 030774 607 00 0 00 000010 TLNN OPRSEL ; OPRSEL switch set?
335 MOVEI 1,[SETZM ALTF ; no - set up $ xfr addr to exit pass
336 GO FIOFF
337 030775 201 01 0 00 103552 RTN]
338 030776 202 01 0 00 030063 MOVEM 1,ALTMGO ; store it
339 030777 402 00 0 00 120713' SETZM ALTF ; clear 'altmode typed' flag
340
341 ; Set up print limit, clear error flag, clear input buffer, set up MBCN
342
343 031000 201 00 0 00 303240 MOVEI ^D100000 ; re-set up print limit just in case
344 031001 212 00 0 00 030220 MOVNM PNTENB ; the last test exceeded it
345 031002 400 15 0 00 000000 SETZ ERFLG, ; clear error flag
346 031003 260 17 0 00 000000* GO CLRBUF ; clear input buffer
347 031004 200 16 0 00 103311 MOVE MBCN,CIPORT ; set up MBCN register properly
348 031005 476 00 0 00 121005' SETOM TSLOAD# ; initialize ucode loaded flag
349
350 ; Set/clear debug switches
351
352 031006 402 00 0 00 121012' SETZM UDEBUG ; clear no-IPA user mode debug switch
353 031007 402 00 0 00 120741' SETZM MDEBUG ; clear error message debug switch
354 031010 402 00 0 00 120777' SETZM SDEBUG ; clear test debug switch
355 031011 402 00 0 00 120737' SETZM LDEBUG ; clear ucode load debug switch
356 031012 402 00 0 00 120722' SETZM DDEBUG ; clear dump on error debug switch
357 031013 402 00 0 00 120727' SETZM EDEBUG ; clear expanded error message switch
358 031014 260 17 0 00 030771* GO SWITT ; get switches
359 031015 602 00 0 00 002000 TRNE DEBUG1 ; debug switch set?
360 031016 476 00 0 00 121012' SETOM UDEBUG ; set no-IPA user mode debug switch
361 031017 602 00 0 00 001000 TRNE DEBUG2 ; debug switch set?
362 031020 476 00 0 00 120741' SETOM MDEBUG ; set error message debug switch
363 031021 602 00 0 00 000400 TRNE DEBUG3 ; test debug switch set?
364 031022 476 00 0 00 120777' SETOM SDEBUG ; set test debug switch
365 031023 602 00 0 00 000200 TRNE DEBUG4 ; debug switch set?
366 031024 476 00 0 00 120737' SETOM LDEBUG ; set ucode load debug switch
367 031025 602 00 0 00 000100 TRNE DEBUG5 ; debug switch set?
368 031026 476 00 0 00 120722' SETOM DDEBUG ; set dump on error debug switch
369 031027 602 00 0 00 000040 TRNE DEBUG6 ; debug switch set?
370 031030 476 00 0 00 120727' SETOM EDEBUG ; set expanded error message switch
371 031031 402 00 0 00 103310 SETZM PMODE ; set program mode to 'no test'
372 031032 402 00 0 00 120743' SETZM MULFLG# ; clear 'multiple examine' flag
373 031033 476 00 0 00 120744' SETOM MULINI# ; set 'initial examine' flag
374 031034 402 00 0 00 121011' SETZM TXADDL# ; clear 'addl text' routine address
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 9
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0182
375
376 ; Set up PI system in case any interrupts occur
377
378 031035 260 17 0 00 030723* GO INITPI ; init PI system
379 031036 260 17 0 00 030724* GO SETVEC ; set up vector addresses
380
381 ; Do ALL test automatically if OPRSEL switch is not set
382
383 031037 201 01 0 00 000001 MOVEI 1,1 ; set to ALL test
384 031040 607 00 0 00 000010 TLNN OPRSEL ; OPRSEL switch set?
385 031041 254 00 0 00 031120 JRST DISP2 ; no - go do test
386 031042 402 00 0 00 030047 SETZM PASCNT ; clear pass count
387
388 ; Now handle a normal command
389
390 031043 402 00 0 00 000000* SETZM .INWD1 ; clear special interrupt data
391 031044 476 00 0 00 120714' SETOM BONETM ; set 'not first time' flag
392 031045 336 00 0 00 120733' SKIPN FINPUT ; file input?
393 031046 476 00 0 00 120732' SETOM FINECH ; no - ensure echo flag set
394 031047 332 00 0 00 120732' SKIPE FINECH ; echo flag set?
395 GO [PFORCE ; no - print all this
396 PCRLF
397 FMSG <What test - >
398 031050 260 17 0 00 103560 RTN]
399 031051 332 00 0 00 120733' SKIPE FINPUT ; file input?
400 JRST [GO FINCMD ; yes - input sixbit cmd
401 JRST DISP0 ; error or EOF
402 031052 254 00 0 00 103564 JRST DISP0B] ; continue
403 031053 037 10 0 00 000003 DISP0A: TTSIXB ; get the name in sixbit
404 ALTCHK [GET XXW# ; adjust stack properly
405 SKIPN $TWCNT ; did a timeout occur?
406 JRST DISP0 ; yes - keep looking for input
407 MOVE 1,$TTCHR ; no - get character typed
408 CAIN 1,40 ; space (delimiter) typed?
409 JRST .+1 ; yes - continue (no error condition)
410 CAIN 1,77 ; was a question mark typed?
411 JRST DISQUE ; yes - handle
412 031054 007 00 0 00 103567 JRST DISPE] ; no - error - reask question
413 DISP0B: JUMPE [MOVE $TTCHR ; anything typed? if a space, keep
414 CAIN 40 ; looking for an argument, if not
415 JRST DISP0A ; exit
416 031055 322 00 0 00 103600 JRST DISP0]
417 031056 202 00 0 00 121010' MOVEM TSTSAV# ; save the typed name
418 031057 402 00 0 00 000000* SETZM ARGFLG ; clear 'argument given' flag
419 031060 200 01 0 00 030231 MOVE 1,$TTCHR ; get last character typed
420 031061 302 01 0 00 000015 CAIE 1,15 ; CR? (end of line)
421 031062 476 00 0 00 031057* SETOM ARGFLG ; set 'argument given' flag
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 10
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0183
422
423 ; Process command
424
425 031063 200 01 0 00 121010' DISP1: MOVE 1,TSTSAV ; get command into AC1
426 031064 201 02 0 00 031132 MOVEI 2,DISLIS ; get address of cmd list
427 031065 260 17 0 00 000000* GO .COMM ; handle command decoding
428 031066 334 00 0 00 000000 SKIPA ; error return
429 031067 254 00 0 00 031120 JRST DISP2 ; dispatch to test
430
431 ; Now check to see if a test number was selected in the form 'n r'
432 ; where 'n' is the test number and 'r' is the repeat count.
433
434 000054 MAXTST==TSTMAX-TSTTAB-1
435
436 031070 260 17 0 00 000000* GO CONVSX ; convert to octal test number
437 031071 254 00 0 00 031107 JRST DISPD ; error return (unrecognizable)
438 031072 333 00 0 00 000001 SKIPLE 1 ; out of range?
439 031073 303 01 0 00 000054 CAILE 1,MAXTST ; out of range?
440 031074 254 00 0 00 031101 JRST DISPR ; yes - handle
441 031075 370 00 0 00 000001 SOS 1 ; normalize to 0..n
442 031076 202 01 0 00 103275 MOVEM 1,TSTNUM ; save test number
443 031077 260 17 0 00 031600 GO TSTSPC ; execute it
444 031100 254 00 0 00 031121 JRST DISPX ; end of test
445
446 ; Range error
447
448 031101 037 01 0 00 103604 DISPR: FMSGC <? Test selected is not in range 1->
449 031102 201 00 0 00 000054 MOVEI MAXTST ; get range
450 031103 037 17 0 00 000003 PNTOCF ; print it
451 031104 037 01 0 00 030242 PCRLF
452 031105 260 17 0 00 000000* GO FIOFF ; turn off file input
453 031106 254 00 0 00 030771 JRST DISP0 ; continue
454
455 ; Possibly a DEBUG command was typed - check for this and handle
456
457 031107 200 01 0 00 121010' DISPD: MOVE 1,TSTSAV ; get command into AC1
458 031110 201 02 0 00 032435 MOVEI 2,.DBCMD ; get address of cmd list
459 031111 260 17 0 00 031065* GO .COMM ; handle command decoding
460 031112 254 00 0 00 031115 JRST DISPE ; unrecognizable
461 031113 260 17 1 01 032607 GO @.DBDIS(1) ; dispatch to test
462 031114 254 00 0 00 030771 JRST DISP0 ; return to 'DEBUG>' prompt
463
464 ; Unrecognized command
465
466 031115 037 01 0 00 103614 DISPE: FMSGCD <? Unrecognizable - Type ? for help>
467 031116 260 17 0 00 031105* GO FIOFF ; turn off file input
468 031117 254 00 0 00 030771 JRST DISP0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 11
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0184
469
470 ; Dispatch to test
471
472 031120 260 17 1 01 031211 DISP2: GO @DISGO(1) ; dispatch to test
473
474 ; End of command - if OPRSEL switch set, ask for command
475 ; if OPRSEL switch not set, it is end of pass
476
477 031121 260 17 0 00 031014* DISPX: GO SWITT ; get program switches
478 031122 603 00 0 00 000010 TLNE OPRSEL ; OPRSEL set?
479 031123 254 00 0 00 030771 JRST DISP0 ; yes - not really end of pass
480 031124 263 17 0 00 000000 RTN ; no - end of pass
481
482 ; Handle ? typed
483
484 031125 037 01 0 00 000026 DISQUE: PFORCE ; handle Control-O
485 031126 037 00 1 00 031130 PNTMSG @DISQUU ; print text
486 031127 254 00 0 00 030771 JRST DISP0 ; continue
487
488 031130 DISQUU: [ASCII /
489 Tests Other Switches
490 ----- -------------- ----------------------
491 ALL DIAMON ENABLE NOPNT TRACE UDEBUG
492 PORT DDT DISABL PNTLPT INHFLT MDEBUG
493 PBUFF HELP DISLIS DING INHMSG SDEBUG
494 LINK EXIT LIST ERSTOP LOOPGM LDEBUG
495 LOOP TAKE PALERS LOOPTS DDEBUG
496 031130 000000 103624 FUNCT NTAKE STATIS RELIAB RUNALL EDEBUG /]
497 [ASCIZ /
498 CONFIG ZSTATS TXTINH DSPEAR SWITCH
499 DEBUG CONPNT OPRSEL SWPRIN
500 (Or 'n' where n
501 is the test #).
502 031131 000000 103736 /]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 12
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0185
503
504 ;#*********************************************************************
505 ;* DISLIS -- List of all valid test names that can be typed
506 ;#*********************************************************************
507
508 031132 777777 777655 DISLIS: -123 ; ignore
509 031133 41 54 54 00 00 00 SIXBIT /ALL/ ; execute ALL tests
510 031134 60 57 62 64 00 00 SIXBIT /PORT/ ; execute Port tests
511 031135 60 42 65 46 46 00 SIXBIT /PBUFF/ ; execute PBuffer tests
512 031136 54 51 56 53 00 00 SIXBIT /LINK/ ; execute Link tests
513 031137 54 57 57 60 00 00 SIXBIT /LOOP/ ; execute Loopback tests
514 031140 46 65 56 43 64 00 SIXBIT /FUNCT/ ; execute Functional tests
515 031141 62 41 56 44 57 55 SIXBIT /RANDOM/ ; execute tests randomly
516
517 ; Other
518
519 031142 63 64 41 64 51 63 SIXBIT /STATIS/ ; print collected statistics
520 031143 72 63 64 41 64 63 SIXBIT /ZSTATS/ ; clear statistics areas
521 031144 43 57 56 46 51 47 SIXBIT /CONFIG/ ; collect/print current configuration
522 031145 43 57 56 60 56 64 SIXBIT /CONPNT/ ; print current configuration
523
524 031146 45 56 41 42 54 45 SIXBIT /ENABLE/ ; enable specified tests
525 031147 44 51 63 41 42 54 SIXBIT /DISABL/ ; disable specified tests
526 031150 44 51 63 54 51 63 SIXBIT /DISLIS/ ; list disabled tests
527 031151 54 51 63 64 00 00 SIXBIT /LIST/ ; list test descriptions
528
529 031152 64 41 53 45 00 00 SIXBIT /TAKE/ ; take commands from a file
530 031153 56 64 41 53 45 00 SIXBIT /NTAKE/ ; take commands from a file
531 031154 44 45 42 65 47 00 SIXBIT /DEBUG/ ; execute debugger test
532 031155 44 51 41 55 57 56 SIXBIT /DIAMON/ ; exit to DIAMON
533 031156 44 44 64 00 00 00 SIXBIT /DDT/ ; enter DDT
534 031157 45 70 51 64 00 00 SIXBIT /EXIT/ ; exit pgm
535 031160 50 45 54 60 00 00 SIXBIT /HELP/ ; help
536
537 ; Switches
538
539 031161 63 67 51 64 43 50 SIXBIT /SWITCH/ ; input switches
540 031162 63 67 60 62 51 56 SIXBIT /SWPRIN/ ; print switch selections
541 031163 56 57 60 56 64 00 SIXBIT /NOPNT/ ; don't print anything
542 031164 60 56 64 54 60 64 SIXBIT /PNTLPT/ ; print on printer
543 031165 44 51 56 47 00 00 SIXBIT /DING/ ; ding on error
544 031166 45 62 63 64 57 60 SIXBIT /ERSTOP/ ; halt on error
545 031167 60 41 54 45 62 63 SIXBIT /PALERS/ ; print all errors
546 031170 62 45 54 51 41 42 SIXBIT /RELIAB/ ; reliability testing
547 031171 64 70 64 51 56 50 SIXBIT /TXTINH/ ; shorten printing
548 031172 57 60 62 63 45 54 SIXBIT /OPRSEL/ ; operator select
549 031173 64 62 41 43 45 00 SIXBIT /TRACE/ ; trace pgm flow
550 031174 51 56 50 46 54 64 SIXBIT /INHFLT/ ; inhibit fault isolation
551 031175 51 56 50 55 63 47 SIXBIT /INHMSG/ ; inhibit error messages
552 031176 54 57 57 60 47 55 SIXBIT /LOOPGM/ ; loop on program
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 13
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0186
553 031177 54 57 57 60 64 63 SIXBIT /LOOPTS/ ; loop on test
554 031200 62 65 56 41 54 54 SIXBIT /RUNALL/ ; run all test segments
555 031201 44 63 60 45 41 62 SIXBIT /DSPEAR/ ; disable SPEAR reporting
556 031202 65 44 45 42 65 47 SIXBIT /UDEBUG/ ; no-IPA user mode debug switch
557 031203 55 44 45 42 65 47 SIXBIT /MDEBUG/ ; error message debug switch
558 031204 63 44 45 42 65 47 SIXBIT /SDEBUG/ ; test debug switch
559 031205 54 44 45 42 65 47 SIXBIT /LDEBUG/ ; load microcode debug switch
560 031206 44 44 45 42 65 47 SIXBIT /DDEBUG/ ; dump on error debug switch
561 031207 45 44 45 42 65 47 SIXBIT /EDEBUG/ ; expanded error msg switch
562 031210 000 00 0 00 000000 Z
563
564
565 ;#********************************************************************
566 ;* DISGO - Test dispatch addresses
567 ;#********************************************************************
568
569 031211 000000 103535 DISGO: [RTN] ; ignore
570 031212 000000 031267 TSTEXE ; ALL - execute all tests
571 031213 000000 031267 TSTEXE ; PORT - execute PORT modules tests
572 031214 000000 031267 TSTEXE ; PBUFF - execute PB module tests
573 031215 000000 031267 TSTEXE ; LINK - execute LINK module tests
574 031216 000000 031267 TSTEXE ; LOOP - execute Loopback tests
575 031217 000000 031267 TSTEXE ; FUNCT - execute Functional tests
576 031220 000000 031643 TSTRAN ; RANDOM - execute tests randomly
577
578 031221 000000 031514 TSTPRI ; STATIS - Print statistics
579 031222 000000 031370 TSTZER ; ZSTATS - Zero statistics
580 031223 000000 031375 TSTCON ; CONFIG - Look at/print configuration
581 031224 000000 031403 TSTCPN ; CONPNT - Print configuration
582
583 031225 000000 031446 TSTENA ; ENABLE - enable specified tests
584 031226 000000 031442 TSTDSA ; DISABL - disable specified tests
585 031227 000000 031472 TSTDSL ; DISLIS - list disabled tests
586 031230 000000 031275 TSTLIS ; LIST - list test descriptions
587
588 031231 000000 031544 TSTTAK ; TAKE - take commands from a file
589 031232 000000 031542 TSTTAN ; NTAKE - take commands from a file
590 031233 000000 032341 TSTDEB ; DEBUG - execute debugger test
591 031234 000000 031341 TSTDIA ; DIAMON - re-enter DIAMON
592 031235 000000 031346 TSTDDT ; DDT - enter DDT
593 031236 000000 031357 TSTHLT ; EXIT - exit
594 031237 000000 031410 TSTHLP ; HELP - help
595
596 031240 000000 031521 TSTSWI ; SWITCH - input switches
597 031241 000000 031526 TSTSWP ; SWPRIN - print switch selections
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 14
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0187
598
599 000031 SWSTT==.-DISGO
600
601 031242 000000 031533 TSTSSW ; NOPNT
602 031243 000000 031533 TSTSSW ; PNTLPT
603 031244 000000 031533 TSTSSW ; DING
604 031245 000000 031533 TSTSSW ; ERSTOP
605 031246 000000 031533 TSTSSW ; PALERS
606 031247 000000 031533 TSTSSW ; RELIAB
607 031250 000000 031533 TSTSSW ; TXTINH
608 031251 000000 031533 TSTSSW ; OPRSEL
609 031252 000000 031533 TSTSSW ; TRACE
610 031253 000000 031533 TSTSSW ; INHFLT
611 031254 000000 031533 TSTSSW ; INHMSG
612 031255 000000 031533 TSTSSW ; LOOPGM
613 031256 000000 031533 TSTSSW ; LOOPTS
614 031257 000000 031533 TSTSSW ; RUNALL
615 031260 000000 031533 TSTSSW ; DSPEAR
616 031261 000000 031533 TSTSSW ; UDEBUG
617 031262 000000 031533 TSTSSW ; MDEBUG
618 031263 000000 031533 TSTSSW ; SDEBUG
619 031264 000000 031533 TSTSSW ; LDEBUG
620 031265 000000 031533 TSTSSW ; DDEBUG
621 031266 000000 031533 TSTSSW ; EDEBUG
622
623
624 ;#********************************************************************
625 ;* ALL Execute all tests
626 ;* PORT Execute Port modules related tests
627 ;* PBUFF Execute PB module related tests
628 ;* LINK Execute Link module related tests
629 ;* LOOP Execute Loopback tests
630 ;* FUNCT Execute Functional tests
631 ;
632 ; All of these commands dispatch to TSTEXE which sets up test mask
633 ; and does dispatch to tests.
634 ;#********************************************************************
635
636 TSTEXE: MOVE [ALL ; get test mask
637 PORT
638 PBUFF
639 LINK
640 LOOP
641 031267 200 00 0 01 103770 FUNCT]-1(1)
642 031270 202 00 0 00 103301 MOVEM TSTMSK ; save test mask
643 031271 260 17 0 00 031672 GO TSTDIS ; go dispatch to tests
644
645 ; Handle SPEAR reporting
646
647 031272 400 15 0 00 000000 SETZ ERFLG, ; clear error flag
648 031273 260 17 0 00 100510 GO SPREP2 ; do final SPEAR report
649 031274 263 17 0 00 000000 RTN
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 15
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0188
650
651 ;#********************************************************************
652 ;* TSTLIS - List test description for either single test or range of tests.
653 ;
654 ; Argument(s): n - list only one test
655 ; n,m - list range of tests
656 ; none - list all tests
657 ;#********************************************************************
658
659 031275 402 00 0 00 103276 TSTLIS: SETZM TSTSUB ; clear subtest number
660 031276 402 00 0 00 121006' SETZM TSTL1# ; set up start test number
661 031277 350 00 0 00 121006' AOS TSTL1 ; set to 1
662 031300 201 00 0 00 000054 MOVEI MAXTST ; set up final test number
663 031301 202 00 0 00 121007' MOVEM TSTL2# ; set to MAXTST
664
665 ; Check for argument(s)
666
667 031302 200 01 0 00 104010 MOVE 1,[FMSGCD <LIST test# (CR) or LIST test#,test# (CR)>]
668 031303 260 17 0 00 000000* GO .OARG ; get test number
669 031304 263 17 0 00 000000 RTN ; error/altmode/question - exit
670 031305 254 00 0 00 031317 JRST TSTLI0 ; no argument given
671 031306 200 01 0 00 000000* MOVE 1,ARGUM ; get argument
672 031307 202 01 0 00 121006' MOVEM 1,TSTL1 ; save first test number
673 031310 202 01 0 00 121007' MOVEM 1,TSTL2 ; save second test number
674 031311 210 01 0 00 104010 MOVN 1,[FMSGCD <LIST test# (CR) or LIST test#,test# (CR)>]
675 031312 260 17 0 00 031303* GO .OARG ; get test number
676 031313 263 17 0 00 000000 RTN ; error/altmode/question - exit
677 031314 254 00 0 00 031317 JRST TSTLI0 ; no 2nd argument given
678 031315 200 01 0 00 031306* MOVE 1,ARGUM ; get argument
679 031316 202 01 0 00 121007' MOVEM 1,TSTL2 ; save second test number
680
681 ; Range check the arguments
682
683 031317 333 01 0 00 121006' TSTLI0: SKIPLE 1,TSTL1 ; first argument in range
684 031320 303 01 0 00 000054 CAILE 1,MAXTST ; 1-MAXTST?
685 JRST [FMSGCD <? Range of test numbers is 1->
686 MOVEI MAXTST ; get range
687 PNTOCF ; print it
688 PCRLF
689 GO FIOFF ; turn off file input
690 031321 254 00 0 00 104020 RTN]
691 031322 200 02 0 00 121007' MOVE 2,TSTL2 ; get 2nd argument
692 031323 311 02 0 00 000001 CAML 2,1 ; 2nd argument in range
693 031324 303 02 0 00 000054 CAILE 2,MAXTST ; 1st arg-MAXTST?
694 JRST [FMSGC <? Range of test numbers is 1->
695 MOVEI MAXTST ; get range
696 PNTOCF ; print it
697 PCRLF
698 GO FIOFF ; turn off file input
699 031325 254 00 0 00 104035 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 16
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0189
700
701 ; Print the test descriptions
702
703 031326 200 02 0 00 121006' TSTLI1: MOVE 2,TSTL1 ; get test number
704 031327 202 02 0 00 103275 MOVEM 2,TSTNUM ; set up for TSTPNT
705 031330 037 00 0 00 030242 PCRL ; skip a line
706 031331 260 17 0 00 042247 GO TSTPNT ; no - print it
707 031332 350 02 0 00 121006' AOS 2,TSTL1 ; point to next test
708 031333 313 02 0 00 121007' CAMLE 2,TSTL2 ; reach end of range?
709 031334 254 00 0 00 031337 JRST TSTLIX ; yes - exit
710 031335 037 07 0 00 000003 TTALTM ; no - altmode typed?
711 031336 254 00 0 00 031326 JRST TSTLI1 ; no - do next test
712 031337 037 00 0 00 030242 TSTLIX: PCRL ; final CRLF
713 031340 263 17 0 00 000000 RTN ; return
714
715
716 ;#********************************************************************
717 ;* TSTDIA - Return to DIAMON
718 ;#********************************************************************
719
720 031341 200 01 0 00 104047 TSTDIA: MOVE 1,[FMSGCD (DIAMON <CR>)]
721 031342 260 17 0 00 000000* GO CHKARG ; check for argument
722 031343 263 17 0 00 000000 RTN ; error - exit
723 031344 260 17 0 00 000000* GO DEVREL ; release the device
724 031345 254 00 0 00 020000 JRST 20000 ; enter DIAMON
725
726
727 ;#********************************************************************
728 ;* TSTDDT - Enter DDT
729 ;#********************************************************************
730
731 031346 200 01 0 00 104053 TSTDDT: MOVE 1,[FMSGCD (DDT <CR>)]
732 031347 260 17 0 00 031342* GO CHKARG ; check for argument
733 031350 263 17 0 00 000000 RTN ; error - exit
734 031351 037 01 0 00 104054 FMSGCD <Type RTN$X to continue>
735 031352 260 17 0 00 030007 GO SRTDDT ; enter DDT
736 031353 260 17 0 00 000000* GO INITPD ; init PI system
737 031354 260 17 0 00 031036* GO SETVEC ; set up vector addresses
738 031355 400 01 0 00 000000 SETZ 1, ; clear AC1
739 031356 263 17 0 00 000000 RTN ; ask for a test
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 17
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0190
740
741 ;#********************************************************************
742 ;* TSTHLT - Program halts - CONTINUE will start it back up.
743 ;#********************************************************************
744
745 031357 200 01 0 00 104065 TSTHLT: MOVE 1,[FMSGCD (EXIT <CR>)]
746 031360 260 17 0 00 031347* GO CHKARG ; check for argument
747 031361 263 17 0 00 000000 RTN ; error - exit
748 031362 260 17 0 00 031344* GO DEVREL ; release the device
749 031363 260 17 0 00 000000* GO .CLOSE ; close any open files
750 031364 332 00 0 00 020000 SKIPE 20000 ; DIAMON loaded?
751 031365 254 00 0 00 020000 JRST 20000 ; yes - return there
752 031366 254 04 0 00 031367 HALT .+1 ; no - halt
753 031367 254 00 0 00 030611 JRST START ; continue
754
755
756 ;#********************************************************************
757 ;* TSTZER - Clear statistics
758 ;#********************************************************************
759
760 031370 200 01 0 00 104071 TSTZER: MOVE 1,[FMSGCD (ZERO <CR>)]
761 031371 260 17 0 00 031360* GO CHKARG ; check for argument
762 031372 263 17 0 00 000000 RTN ; error - exit
763 031373 260 17 0 00 043470 GO SZERO ; clear statistics
764 031374 263 17 0 00 000000 RTN ; done
765
766
767 ;#********************************************************************
768 ;* TSTCON - Determine/print configuration
769 ;* TSTCPN - Print configuration
770 ;#********************************************************************
771
772 031375 200 01 0 00 104076 TSTCON: MOVE 1,[FMSGCD (CONFIG <CR>)]
773 031376 260 17 0 00 031371* GO CHKARG ; check for argument
774 031377 263 17 0 00 000000 RTN ; error - exit
775 031400 260 17 0 00 042731 GO CONFIG ; determine configuration
776 031401 260 17 0 00 043041 GO CONPNT ; print configuration
777 031402 263 17 0 00 000000 RTN ; done
778
779 031403 200 01 0 00 104103 TSTCPN: MOVE 1,[FMSGCD (CONPNT <CR>)]
780 031404 260 17 0 00 031376* GO CHKARG ; check for argument
781 031405 263 17 0 00 000000 RTN ; error - exit
782 031406 260 17 0 00 043041 GO CONPNT ; print configuration
783 031407 263 17 0 00 000000 RTN ; done
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 18
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0191
784
785 ;#*********************************************************************
786 ;* TSTHLP - Help for 'WHAT TEST' question.
787 ;#*********************************************************************
788
789 TSTHLP: MOVN 1,[FMSGD <
790 HELP ALL MISC
791 031410 210 01 0 00 104115 TESTS SWITCH>]
792 031411 260 17 0 00 000000* GO .SARG ; get SIXBIT argument
793 031412 263 17 0 00 000000 RTN ; error/altmode/question - exit
794 GO [MOVE [SIXBIT /ALL/] ; no argument - assume all
795 MOVEM ARGUM
796 031413 260 17 0 00 104117 RTN]
797 031414 200 01 0 00 031315* MOVE 1,ARGUM ; get sixbit command
798 031415 201 02 0 00 031430 MOVEI 2,TSTHLC ; get address of cmd list
799 031416 260 17 0 00 031111* GO .COMM ; handle command decoding
800 JRST [FMSGCD <? Unrecognizable - Type ? for help>
801 GO FIOFF
802 031417 254 00 0 00 104122 RTN] ; error return
803 031420 037 01 0 00 000026 PFORCE ; handle Control-O
804 031421 200 02 0 00 000001 MOVE 2,1 ; get AC1
805 031422 336 03 0 01 031435 TSTHL0: SKIPN 3,TSTHLL(1) ; get address of TMSG
806 031423 263 17 0 00 000000 RTN ; all done - exit
807 031424 256 00 0 00 000003 XCT 3 ; print it
808 031425 350 00 0 00 000001 AOS 1 ; point to next address
809 031426 322 02 0 00 031422 JUMPE 2,TSTHL0 ; loop till done
810 031427 263 17 0 00 000000 RTN ; exit
811
812 031430 41 54 54 00 00 00 TSTHLC: SIXBIT /ALL/ ; print all help info
813 031431 64 45 63 64 63 00 SIXBIT /TESTS/ ; print test commands
814 031432 55 51 63 43 00 00 SIXBIT /MISC/ ; print miscellaneous commands
815 031433 63 67 51 64 43 50 SIXBIT /SWITCH/ ; print switch commands
816 031434 000000 000000 0 ; end of list
817
818 031435 037 00 0 00 104125 TSTHLL: TMSGCD <Tests Available:>
819
820 TMSGD <
821 ALL n Execute ALL tests (n times)
822 PORT n Execute Port modules tests
823 PBUFF n Execute PBuff module tests
824 LINK n Execute Link module tests
825 LOOP n Execute Loopback tests
826 FUNCT n Execute Functional tests
827 031436 037 00 0 00 104132 m n Test m>
828
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 19
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0192
829 TMSGD <
830 TAKE Take cmds from file
831 NTAKE Take cmds from file (not echoed)
832 DEBUG Enter port debugger
833 DIAMON Enter DIAMON
834 DDT Enter DDT
835 HELP Print this
836 EXIT Exit program
837
838 STATIS Print statistics
839 ZSTATS Clear statistics
840 CONFIG Determine/print configuration
841 CONPNT Print configuration
842 ENABLE Enable specified tests
843 DISABL Disable specified tests
844 DISLIS List disabled tests
845 031437 037 00 0 00 104210 LIST List test descriptions>
846
847 TMSGD <
848 Switches: To complement switch, type switch name
849
850 SWITCH Enter switches
851 SWPRIN Print current switches
852
853 NOPNT ERSTOP TXTINH TRACE LOOPGM DSPEAR SDEBUG EDEBUG
854 PNTLPT PALERS OPRSEL INHFLT LOOPTS UDEBUG LDEBUG
855 031440 037 00 0 00 104341 DING RELIAB INHMSG RUNALL MDEBUG DDEBUG>
856 031441 000000 000000 0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 20
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0193
857
858 ;#********************************************************************
859 ;* TSTDSA - Disable a test.
860 ;* TSTENA - Enable a test.
861 ;#********************************************************************
862
863 031442 402 00 0 00 120730' TSTDSA: SETZM ENATST# ; clear 'enable' flag
864 031443 200 00 0 00 104436 MOVE [FMSGCD (DISABL n1,n2, ... <CR>)]
865 031444 202 00 0 00 121004' MOVEM TMP1#
866 031445 254 00 0 00 031451 JRST TSTEN0 ; continue
867 031446 476 00 0 00 120730' TSTENA: SETOM ENATST# ; set 'enable' flag
868 031447 200 00 0 00 104442 MOVE [FMSGCD (ENABLE n1,n2, ... <CR>)]
869 031450 202 00 0 00 121004' MOVEM TMP1#
870 031451 336 00 0 00 031062* TSTEN0: SKIPN ARGFLG ; argument given?
871 JRST [FMSGCD <? Missing argument>
872 GO FIOFF
873 031452 254 00 0 00 104450 RTN]
874
875 ; Get an argument
876
877 031453 200 01 0 00 121004' TSTDS0: MOVE 1,TMP1 ; get help string
878 031454 260 17 0 00 031312* GO .OARG ; yes - get octal argument
879 031455 263 17 0 00 000000 RTN ; error/altmode/question - exit
880 031456 263 17 0 00 000000 RTN ; no more arguments
881 031457 333 01 0 00 031414* SKIPLE 1,ARGUM ; get argument
882 031460 303 01 0 00 000054 CAILE 1,MAXTST ; out of range?
883 JRST [FMSGC <? Test selected is not in range 1->
884 MOVEI MAXTST ; get range
885 PNTOCF ; print it
886 PCRLF
887 GO FIOFF
888 031461 254 00 0 00 104453 RTN]
889 031462 202 01 0 00 103275 MOVEM 1,TSTNUM ; save test number
890
891 ; Now perform the specified function
892
893 031463 200 02 0 01 032050 MOVE 2,TSTTAB(1) ; get test dispatch word
894 031464 332 00 0 00 120730' SKIPE ENATST ; 'enable' flag set?
895 031465 621 02 0 00 000100 TLZ 2,(TDENA) ; yes - clear 'disable' bit
896 031466 336 00 0 00 120730' SKIPN ENATST ; 'enable' flag set?
897 031467 661 02 0 00 000100 TLO 2,(TDENA) ; no - set 'disable' bit
898 031470 202 02 0 01 032050 MOVEM 2,TSTTAB(1) ; save test dispatch word
899 031471 254 00 0 00 031453 JRST TSTDS0 ; get next argument
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 21
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0194
900
901 ;#********************************************************************
902 ;* TSTDSL - List disabled tests
903 ;#********************************************************************
904
905 031472 200 01 0 00 104465 TSTDSL: MOVE 1,[FMSGCD (DISLIS <CR>)]
906 031473 260 17 0 00 031404* GO CHKARG ; check for argument
907 031474 263 17 0 00 000000 RTN ; error - exit
908 031475 402 00 0 00 103275 SETZM TSTNUM ; initialize test number
909 031476 400 06 0 00 000000 SETZ 6, ; count of tests printed
910 031477 350 01 0 00 103275 TSTDL0: AOS 1,TSTNUM ; point to next test
911 031500 303 01 0 00 000054 CAILE 1,MAXTST ; done yet?
912 JRST [PCRL ; yes - return
913 031501 254 00 0 00 104466 RTN]
914 031502 200 00 0 01 032050 MOVE TSTTAB(1) ; get test dispatch word
915 031503 607 00 0 00 000100 TLNN (TDENA) ; disabled?
916 031504 254 00 0 00 031477 JRST TSTDL0 ; no - try next test
917 031505 377 00 0 00 000006 SOSG 6 ; done with line yet?
918 GO [MOVEI 6,12 ; yes - reset counter and
919 PCRL ; print a blank line
920 031506 260 17 0 00 104470 RTN]
921 031507 037 00 0 00 104473 TMSG <TST>
922 031510 200 00 0 00 103275 MOVE TSTNUM ; get test number
923 031511 037 16 0 00 000003 PNTOCS ; print it
924 031512 037 00 0 00 000040 PSP
925 031513 254 00 0 00 031477 JRST TSTDL0 ; continue
926
927
928 ;#********************************************************************
929 ;* TSTPRI - Print statistics
930 ;#********************************************************************
931
932 031514 200 01 0 00 104500 TSTPRI: MOVE 1,[FMSGCD (STATIS <CR>)]
933 031515 260 17 0 00 031473* GO CHKARG ; check for argument
934 031516 263 17 0 00 000000 RTN ; error - exit
935 031517 260 17 0 00 043272 GO SREPOR ; go print statistics
936 031520 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 22
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0195
937
938 ;#********************************************************************
939 ;* TSTSWI/TSTSWP - Input switches / Print switch selections
940 ;#********************************************************************
941
942 031521 200 01 0 00 104505 TSTSWI: MOVE 1,[FMSGCD (SWITCH <CR>)]
943 031522 260 17 0 00 031515* GO CHKARG ; check for argument
944 031523 263 17 0 00 000000 RTN ; error - exit
945 031524 260 17 0 00 000000* GO .ISWT ; input switches
946 031525 263 17 0 00 000000 RTN ; ask for a test
947
948 031526 200 01 0 00 104512 TSTSWP: MOVE 1,[FMSGCD (SWPRIN <CR>)]
949 031527 260 17 0 00 031522* GO CHKARG ; check for argument
950 031530 263 17 0 00 000000 RTN ; error - exit
951 031531 260 17 0 00 000000* GO .SWCHP ; print switches
952 031532 263 17 0 00 000000 RTN ; ask for a test
953
954
955 ;#********************************************************************
956 ;* TSTSSW - Switch complement commands
957 ;#********************************************************************
958
959 031533 200 01 0 00 104520 TSTSSW: MOVE 1,[FMSGCD (Switch Name <CR>)]
960 031534 260 17 0 00 031527* GO CHKARG ; check for argument
961 031535 263 17 0 00 000000 RTN ; error - exit
962 031536 200 01 0 00 000000* MOVE 1,.CGOT ; get dispatch number
963 031537 275 01 0 00 000031 SUBI 1,SWSTT ; normalize to 0..
964 031540 260 17 0 00 000000* GO SWCOM ; complement switch
965 031541 263 17 0 00 000000 RTN ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 23
DFCIA1 MAC 27-Oct-84 19:00 Test/Command Selection SEQ 0196
966
967 ;#********************************************************************
968 ;* TSTTAK - Take commands from a file
969 ;* TSTTAN - Take commands from a file without echoing results
970 ;
971 ; This works by reading commands from a file as if they were being
972 ; typed to the diagnostic directly. Either end of file or the first
973 ; occurrence of an error halts this procedure.
974 ;#********************************************************************
975
976 031542 402 00 0 00 120732' TSTTAN: SETZM FINECH ; clear echo switch
977 031543 334 00 0 00 000000 SKIPA ; continue
978 031544 476 00 0 00 120732' TSTTAK: SETOM FINECH ; set echo switch
979 031545 200 01 0 00 104531 MOVE 1,[FMSGCD (TAKE <CR> or TAKE Fname Ext <CR>)]
980 031546 260 17 0 00 031411* GO .SARG ; get SIXBIT argument
981 031547 263 17 0 00 000000 RTN ; error/altmode/question - exit
982 031550 254 00 0 00 031561 JRST TSTTA0 ; no more arguments
983 031551 200 01 0 00 031457* MOVE 1,ARGUM ; get argument
984 031552 202 01 0 00 031576 MOVEM 1,TAKFIL ; save file name
985 031553 210 01 0 00 104531 MOVN 1,[FMSGCD (TAKE <CR> or TAKE Fname Ext <CR>)]
986 031554 260 17 0 00 031546* GO .SARG ; get SIXBIT argument
987 031555 263 17 0 00 000000 RTN ; error/altmode/question - exit
988 031556 254 00 0 00 031561 JRST TSTTA0 ; no more arguments
989 031557 200 01 0 00 031551* MOVE 1,ARGUM ; get argument
990 031560 202 01 0 00 031577 MOVEM 1,TAKFIL+1 ; save file name extension
991
992 ; Now start reading the file specified
993
994 031561 260 17 0 00 031116* TSTTA0: GO FIOFF ; shut off previous file input
995 031562 201 00 0 00 031576 MOVEI TAKFIL ; point to file name buffer
996 031563 037 05 0 00 000004 FSELECT ; init the file
997 JRST [FMSGC <Can't access ">
998 MOVE TAKFIL ; get file name
999 PNTSXF ; print it
1000 PNTCIF "."
1001 MOVE TAKFIL+1 ; get extension
1002 PNTSXF ; print it
1003 FMSGD <" on selected load device.>
1004 031564 254 00 0 00 104544 RTN]
1005 031565 037 01 0 00 104554 FMSGC <[File input from: >
1006 031566 200 00 0 00 031576 MOVE TAKFIL ; get the selected file name
1007 031567 037 01 0 00 000002 PNTSXF ; print it
1008 031570 037 01 0 00 000056 PNTCIF "."
1009 031571 200 00 0 00 031577 MOVE TAKFIL+1 ; get the extension of file
1010 031572 037 01 0 00 000002 PNTSXF ; print it
1011 031573 037 01 0 00 104561 FMSGD <]>
1012 031574 476 00 0 00 120733' SETOM FINPUT ; set 'file input' flag
1013 031575 263 17 0 00 000000 RTN ; exit
1014
1015 ; File name
1016
1017 031576 44 46 43 51 41 00 TAKFIL: SIXBIT /DFCIA/
1018 031577 43 55 44 00 00 00 SIXBIT /CMD/
1019
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 24
DFCIA1 MAC 27-Oct-84 19:00 Test Dispatching SEQ 0197
1020 SUBTTL Test Dispatching
1021
1022 ;#********************************************************************
1023 ;* TSTSPC - Run only one test
1024 ;#********************************************************************
1025
1026 031600 201 00 0 00 032014 TSTSPC: MOVEI TSTALT ; set up altmode transfer address
1027 031601 202 00 0 00 030063 MOVEM ALTMGO ; to exit IPA testing
1028 031602 402 00 0 00 103302 SETZM TSTREP ; clear pass count
1029 031603 260 17 0 00 031121* GO SWITT ; get program switches
1030 031604 602 00 0 00 020000 TRNE LOOPTS ; loop on test?
1031 JRST [HRLEI 377777 ; yes - get 'infinite' repeat count
1032 031605 254 00 0 00 104562 JRST .+2]
1033 031606 201 00 0 00 000001 MOVEI 1 ; no - set repeat count requested
1034 031607 202 00 0 00 103303 MOVEM TSTREQ ; to 1 pass
1035 031610 402 00 0 00 103304 SETZM TSTMUL ; clear multiple test flag
1036 031611 336 00 0 00 031451* SKIPN ARGFLG ; argument given?
1037 031612 254 00 0 00 031621 JRST TSTSP0 ; no - do the test
1038 031613 210 01 0 00 104571 MOVN 1,[FMSGCD (n RepeatCount <CR>)]
1039 031614 260 17 0 00 000000* GO .DARG ; yes - get repeat count argument
1040 031615 263 17 0 00 000000 RTN ; error/altmode/question - exit
1041 031616 334 00 0 00 000000 SKIPA ; no argument given
1042 031617 200 00 0 00 031557* MOVE ARGUM ; get argument
1043 031620 202 00 0 00 103303 MOVEM TSTREQ ; save it
1044 031621 476 00 0 00 031611* TSTSP0: SETOM ARGFLG ; remember that we had an argument
1045 031622 254 00 0 00 031733 JRST TSTD3 ; do the test
1046
1047
1048 ;#********************************************************************
1049 ;* RANGEN - Random number generator
1050 ;#********************************************************************
1051
1052 031623 261 17 0 00 000001 RANGEN: RPUT (1,2) ; save AC's
1053
1054 031625 200 01 0 00 120767' MOVE 1,RANNUM# ; get base number
1055 031626 270 01 0 00 030022 ADD 1,RANDBS ; modify number in AC1
1056 031627 241 01 0 00 777774 ROT 1,-4 ; to create a new number
1057 031630 447 01 0 00 120767' EQVB 1,RANNUM ; put result in AC1 and RANNUM
1058 031631 405 01 0 00 007777 ANDI 1,7777 ; save only 4 digits
1059 031632 220 01 0 17 777777 IMUL 1,-1(P) ; obtain (0..n-1)*10000
1060 031633 242 01 0 00 777764 LSH 1,-^D12 ; obtain 0..n-1
1061 031634 350 00 0 00 000001 AOS 1 ; obtain 1..n
1062 031635 313 01 0 17 777777 CAMLE 1,-1(P) ; in range?
1063 031636 200 01 0 17 777777 MOVE 1,-1(P) ; no - force it to be
1064 031637 250 01 0 17 777777 EXCH 1,-1(P) ; set up returned argument
1065 031640 262 17 0 00 000002 RGET (2,1) ; restore AC's
1066
1067 031642 263 17 0 00 000000 RTN
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 25
DFCIA1 MAC 27-Oct-84 19:00 Test Dispatching SEQ 0198
1068
1069 ;#********************************************************************
1070 ; TSTRAN - Run tests randomly
1071 ;#********************************************************************
1072
1073 031643 201 00 0 00 031664 TSTRAN: MOVEI TSTRAA ; set up altmode transfer address
1074 031644 202 00 0 00 030063 MOVEM ALTMGO ; to exit port testing
1075 031645 402 00 0 00 103302 SETZM TSTREP ; clear pass count
1076 031646 201 00 0 00 000001 MOVEI 1 ; set repeat count requested
1077 031647 202 00 0 00 103303 MOVEM TSTREQ ; to 1 pass
1078 031650 402 00 0 00 103304 SETZM TSTMUL ; clear multiple test flag
1079 031651 402 00 0 00 120766' SETZM RANCNT# ; initialize test count
1080 031652 400 03 0 00 000000 SETZ 3, ; set a a base number using the
1081 031653 260 17 0 00 030762* GO RUNTME ; program run time and save
1082 031654 200 00 0 00 000000* MOVE CURTIM ; it in RANNUM
1083 031655 202 00 0 00 120767' MOVEM RANNUM
1084
1085 ; Determine test to run
1086
1087 031656 201 01 0 00 000054 TSTRA0: MOVEI 1,MAXTST ; get range 1..MAXTST
1088 031657 260 17 0 00 031623 GO RANGEN ; get a random number (in AC1)
1089 031660 202 01 0 00 103275 MOVEM 1,TSTNUM ; save test number
1090 031661 260 17 0 00 031733 GO TSTD3 ; do the test
1091 031662 350 01 0 00 120766' AOS 1,RANCNT ; increment test count
1092 031663 254 00 0 00 031656 JRST TSTRA0 ; keep looping
1093
1094 ; Altmode exit
1095
1096 031664 037 01 0 00 104572 TSTRAA: FMSGC <[Testing aborted after >
1097 031665 200 00 0 00 120766' MOVE RANCNT ; get test count
1098 031666 037 15 0 00 000001 PNTDCF ; print it
1099 031667 037 01 0 00 104600 FMSGD < tests]>
1100 031670 262 17 0 00 121017' GET XXX# ; pop off extra item
1101 031671 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 26
DFCIA1 MAC 27-Oct-84 19:00 Test Dispatching SEQ 0199
1102
1103 ;#********************************************************************
1104 ;* TSTDIS - Dispatch to the tests
1105 ;#********************************************************************
1106
1107 ; Set up flags, defaults, etc.
1108
1109 031672 201 00 0 00 032014 TSTDIS: MOVEI TSTALT ; set up altmode transfer address
1110 031673 202 00 0 00 030063 MOVEM ALTMGO ; to exit port testing
1111 031674 402 00 0 00 103302 SETZM TSTREP ; clear pass count
1112 031675 402 00 0 00 103303 SETZM TSTREQ ; set repeat count requested to 1
1113 031676 350 00 0 00 103303 AOS TSTREQ ; pass
1114 031677 476 00 0 00 103304 SETOM TSTMUL ; set multiple test flag
1115 031700 402 00 0 00 103275 SETZM TSTNUM ; initialize test number
1116 031701 336 00 0 00 031621* SKIPN ARGFLG ; argument given?
1117 031702 254 00 0 00 031712 JRST TSTD0 ; no - do the tests
1118 031703 210 01 0 00 104607 MOVN 1,[FMSGCD (CMD RepeatCount <CR>)]
1119 031704 260 17 0 00 031614* GO .DARG ; yes - get repeat count argument
1120 031705 263 17 0 00 000000 RTN ; error/altmode/question - exit
1121 031706 334 00 0 00 000000 SKIPA ; no argument given
1122 031707 200 00 0 00 031617* MOVE ARGUM ; get argument
1123 031710 202 00 0 00 103303 MOVEM TSTREQ ; save it
1124 031711 476 00 0 00 031701* SETOM ARGFLG ; remember that we had an argument
1125
1126 ; If OPRSEL switch is not set then all tests are run.
1127
1128 031712 402 00 0 00 032261 TSTD0: SETZM TSTRES ; clear first word
1129 031713 200 00 0 00 104610 MOVE [TSTRES,,TSTRES+1] ; build BLT pointer
1130 031714 251 00 0 00 032340 BLT TSTRES+57 ; clear the results
1131 031715 260 17 0 00 031603* GO SWITT ; get the pgm switches
1132 031716 607 00 0 00 000010 TLNN OPRSEL ; OPRSEL set?
1133 031717 254 00 0 00 031733 JRST TSTD3 ; no - go run all of them
1134
1135 ; Handle pass count
1136
1137 031720 200 00 0 00 103303 TSTD1: MOVE TSTREQ ; get argument typed
1138 031721 332 00 0 00 031711* SKIPE ARGFLG ; any argument given?
1139 031722 254 00 0 00 031732 JRST TSTD2 ; yes - skip over this question
1140 031723 332 00 0 00 120733' SKIPE FINPUT ; file input switch set?
1141 JRST [MOVEI 1 ; yes - default to 1 iteration
1142 031724 254 00 0 00 104611 JRST TSTD2]
1143 031725 037 01 0 00 104613 FMSGC <How many passes? (CR to loop forever) - >
1144 031726 037 04 0 00 000003 TTIDEC
1145 031727 007 00 0 00 031720 ALTCHK TSTD1
1146 031730 336 00 0 00 030510 SKIPN TTNBRF ; CR typed?
1147 031731 200 00 0 00 104624 MOVE [377777,,777777] ; yes - loop forever
1148 031732 202 00 0 00 103303 TSTD2: MOVEM TSTREQ ; save count
1149
1150 ; Save test number selection for multiple pass use
1151
1152 031733 200 00 0 00 103275 TSTD3: MOVE TSTNUM ; get test number
1153 031734 202 00 0 00 120775' MOVEM SAVNUM# ; save test number
1154 031735 476 00 0 00 103310 SETOM PMODE ; set program mode to 'test'
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 27
DFCIA1 MAC 27-Oct-84 19:00 Test Dispatching SEQ 0200
1155
1156 ; Initialize test number at beginning of pass
1157
1158 031736 200 00 0 00 120775' TSTD4: MOVE SAVNUM ; get test number
1159 031737 202 00 0 00 103275 MOVEM TSTNUM ; save test number
1160 031740 260 17 0 00 031715* GO SWITT ; get the pgm switches
1161 031741 201 01 0 00 000001 MOVEI 1,1 ; initialize repeat count
1162 031742 603 00 0 00 000400 TLNE RELIAB ; reliability switch set?
1163 031743 201 01 0 00 000004 MOVEI 1,4 ; yes - set up count of 4
1164 031744 202 01 0 00 103306 MOVEM 1,TSTREL ; save it
1165
1166 ; Now actually do the tests
1167
1168 031745 200 00 0 00 103306 TSTD5: MOVE TSTREL ; get reliability count
1169 031746 202 00 0 00 103307 MOVEM TSTCNT ; save it
1170 031747 350 01 0 00 103275 AOS 1,TSTNUM ; point to next test
1171 031750 303 01 0 00 000054 CAILE 1,MAXTST ; end of tests?
1172 031751 254 00 0 00 032001 JRST TSTD9 ; yes - handle
1173 031752 200 16 0 00 103311 TSTD6: MOVE MBCN,CIPORT ; valid test - set up MBCN
1174 031753 200 02 0 01 032050 MOVE 2,TSTTAB(1) ; get test dispatch word
1175 031754 512 02 0 00 103300 HLLZM 2,TSTFLG ; set up test flags
1176 031755 552 02 0 00 103277 HRRZM 2,TSTPC ; set up test PC
1177 031756 402 00 0 00 121011' SETZM TXADDL ; clear 'addl text' routine address
1178
1179 ; Verify that test should be run
1180
1181 031757 200 02 0 00 103301 MOVE 2,TSTMSK ; get test mask
1182 031760 332 00 0 00 103304 SKIPE TSTMUL ; multiple passes?
1183 031761 612 02 0 00 103300 TDNE 2,TSTFLG ; valid test to execute?
1184 031762 260 17 1 00 103277 GO @TSTPC ; yes - dispatch to test
1185
1186 ; Dispatch is done - now check altmode
1187
1188 031763 332 00 0 00 120713' SKIPE ALTF ; 'altmode typed' flag set?
1189 031764 254 00 1 00 030063 JRST @ALTMGO ; yes - exit
1190 031765 037 07 0 00 000003 TTALTM ; altmode typed?
1191 031766 334 00 0 00 000000 SKIPA ; no - continue
1192 031767 254 00 1 00 030063 JRST @ALTMGO ; yes - exit thru $ transfer address
1193
1194 ; Loop till reliability count expired
1195
1196 031770 373 00 0 00 103307 SOSLE TSTCNT ; decrement reliability count
1197 031771 254 00 0 00 031752 JRST TSTD6 ; loop till done
1198 031772 332 00 0 00 030037 TSTD8: SKIPE USER ; user mode?
1199 031773 254 00 0 00 031777 JRST .+4 ; yes - continue
1200 031774 260 17 0 00 031740* GO SWITT ; get switches
1201 031775 603 00 0 00 200000 TLNE RSTART ; RSTART switch set?
1202 031776 254 00 0 00 030611 JRST START ; yes - restart the diagnostic
1203 031777 332 00 0 00 103304 SKIPE TSTMUL ; multiple tests being done?
1204 032000 254 00 0 00 031745 JRST TSTD5 ; yes - do next test
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 28
DFCIA1 MAC 27-Oct-84 19:00 Test Dispatching SEQ 0201
1205
1206 ; Now bump pass count
1207
1208 032001 350 01 0 00 103302 TSTD9: AOS 1,TSTREP ; increment pass count
1209 032002 332 00 0 00 103304 SKIPE TSTMUL ; multiple test flag set?
1210 032003 260 17 0 00 032032 GO TSTEOP ; yes - print end of pass message
1211 032004 260 17 0 00 031774* GO SWITT ; get switches
1212 032005 336 00 0 00 030037 SKIPN USER ; user mode?
1213 032006 607 00 0 00 400000 TLNN ABORT ; abort switch set?
1214 032007 334 00 0 00 000000 SKIPA ; no - continue (or user mode)
1215 032010 263 17 0 00 000000 RTN ; exit
1216 032011 373 00 0 00 103303 SOSLE TSTREQ ; passes all done?
1217 032012 254 00 0 00 031736 JRST TSTD4 ; no - keep looping
1218 032013 263 17 0 00 000000 RTN ; exit
1219
1220 ; Altmode transfer code
1221
1222 032014 037 01 0 00 104625 TSTALT: FMSGC <[Testing aborted>
1223 032015 336 00 0 00 103302 SKIPN TSTREP ; zero passes?
1224 032016 254 00 0 00 032023 JRST TSTAL0 ; yes - don't print how many
1225 032017 037 01 0 00 104631 FMSG < after >
1226 032020 200 00 0 00 103302 MOVE TSTREP ; get pass count
1227 032021 037 15 0 00 000001 PNTDCF ; print it
1228 032022 037 01 0 00 104633 FMSG < passes>
1229 032023 037 01 0 00 104561 TSTAL0: FMSGD <]>
1230 032024 260 17 0 00 031561* GO FIOFF ; clear 'file input' switch
1231 032025 476 00 0 00 120713' SETOM ALTF ; set altmode typed flag
1232 032026 260 17 0 00 032004* GO SWITT ; get program switches
1233 032027 607 00 0 00 000010 TLNN OPRSEL ; OPRSEL switch set?
1234 032030 254 00 0 00 031341 JRST TSTDIA ; no - exit to DIAMON
1235 032031 263 17 0 00 000000 RTN ; exit
1236
1237 ; End of pass message
1238
1239 032032 260 17 0 00 032026* TSTEOP: GO SWITT ; get switches
1240 032033 607 00 0 00 000010 TLNN OPRSEL ; operator select?
1241 032034 263 17 0 00 000000 RTN ; no - don't print end of pass
1242 032035 332 00 0 00 120727' SKIPE EDEBUG ; expanded data switch set?
1243 GO [TMSG <Port-> ; yes - print what port
1244 LDB [POINT 3,MBCN,9]; this is
1245 PNT2
1246 PSP
1247 032036 260 17 0 00 104640 RTN]
1248 032037 037 00 0 00 104645 TMSG <End Pass > ; print pass count
1249 032040 200 00 0 00 103302 MOVE TSTREP
1250 032041 037 15 0 00 000000 PNTDEC
1251 032042 037 00 0 00 103541 TMSG <. at >
1252 032043 402 00 0 00 030760* SETZM FORPNT ; clear force print
1253 032044 200 03 0 00 103543 MOVE 3,[JFCL] ; set up timer routine
1254 032045 260 17 0 00 031653* GO RUNTME ; print current time
1255 032046 037 00 0 00 030242 PCRL
1256 032047 263 17 0 00 000000 RTN
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 29
DFCIA1 MAC 27-Oct-84 19:00 Test Dispatching SEQ 0202
1257
1258 ; Table of test names and flags
1259
1260 032050 000000 000000 TSTTAB: 0
1261 032051 000000000000# PORT!TST1 ; 1
1262 032052 000000000000# PORT!TST2 ; 2
1263 032053 000000000000# PORT!TST3 ; 3
1264 032054 000000000000# PBUFF!TST4 ; 4
1265 032055 000000000000# LINK!TST5 ; 5
1266 032056 000000000000# PBUFF!FUNCT!TST6 ; 6
1267 032057 000000000000# LINK!FUNCT!TST7 ; 7
1268 032060 000000000000# PBUFF!TST10 ; 10
1269 032061 000000000000# PBUFF!TST11 ; 11
1270 032062 000000000000# PBUFF!TST12 ; 12
1271 032063 000000000000# PBUFF!TST13 ; 13
1272 032064 000000000000# PBUFF!TST14 ; 14
1273 032065 000000000000# PBUFF!TST15 ; 15
1274 032066 000000000000# PBUFF!TST16 ; 16
1275 032067 000000000000# PBUFF!TST17 ; 17
1276 032070 000000000000# PBUFF!TST20 ; 20
1277 032071 000000000000# PBUFF!TST21 ; 21
1278 032072 000000000000# PBUFF!TST22 ; 22
1279 032073 000000000000# PBUFF!TST23 ; 23
1280 032074 000000000000# PBUFF!TST24 ; 24
1281 032075 000000000000# PBUFF!TST25 ; 25
1282 032076 000000000000# PBUFF!TST26 ; 26
1283 032077 000000000000# LINK!TST27 ; 27
1284 032100 000000000000# LINK!TST30 ; 30
1285 032101 000000000000# LINK!TST31 ; 31
1286 032102 000000000000# LINK!TST32 ; 32
1287 032103 000000000000# LINK!TST33 ; 33
1288 032104 000000000000# LINK!TST34 ; 34
1289 032105 000000000000# LINK!TST35 ; 35
1290 032106 000000000000# LINK!TST36 ; 36
1291 032107 000000000000# PBUFF!TST37 ; 37
1292 032110 000000000000# LINK!TST40 ; 40
1293 032111 000000000000# LINK!FUNCT!TST41 ; 41
1294 032112 000000000000# LINK!FUNCT!TST42 ; 42
1295 032113 000000000000# FUNCT!TST43 ; 43
1296 032114 000000000000# FUNCT!TST44 ; 44
1297 032115 000000000000# LOOP!FUNCT!TST45 ; 45
1298 032116 000000000000# LOOP!FUNCT!TST46 ; 46
1299 032117 000000000000# LOOP!FUNCT!TST47 ; 47
1300 032120 000000000000# LOOP!FUNCT!TST50 ; 50
1301 032121 000000000000# LOOP!FUNCT!TDENA!TST51 ; 51
1302 032122 000000000000# LINK!FUNCT!TST52 ; 52
1303 032123 000000000000# FUNCT!TST53 ; 53
1304 032124 000000000000# LOOP!FUNCT!TST54 ; 54
1305 032125 000000 000000 TSTMAX: 0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 30
DFCIA1 MAC 27-Oct-84 19:00 Test Dispatching SEQ 0203
1306
1307 ; Table of address of test microcode
1308
1309 032126 000000 000000 TSTMIC: 0
1310 032127 000000 000000 0 ; 1
1311 032130 000000000000# T2M ; 2
1312 032131 000000000000# T3M ; 3
1313 032132 000000000000# T4M ; 4
1314 032133 000000000000# T5M ; 5
1315 032134 000000 000000 0 ; 6
1316 032135 000000 000000 0 ; 7
1317 032136 000000000000# T10M ; 10
1318 032137 000000000000# T11M ; 11
1319 032140 000000000000# T12M ; 12
1320 032141 000000000000# T13M ; 13
1321 032142 000000000000# T14M ; 14
1322 032143 000000000000# T15M ; 15
1323 032144 000000000000# T16M ; 16
1324 032145 000000000000# T17M ; 17
1325 032146 000000000000# T20M ; 20
1326 032147 000000000000# T21M ; 21
1327 032150 000000000000# T22M ; 22
1328 032151 000000000000# T23M ; 23
1329 032152 000000000000# T24M ; 24
1330 032153 000000000000# T25M ; 25
1331 032154 000000000000# T26M ; 26
1332 032155 000000000000# T27M ; 27
1333 032156 000000000000# T30M ; 30
1334 032157 000000000000# T31M ; 31
1335 032160 000000000000# T32M ; 32
1336 032161 000000000000# T33M ; 33
1337 032162 000000000000# T34M ; 34
1338 032163 000000000000# T35M ; 35
1339 032164 000000000000# T36M ; 36
1340 032165 000000000000# T37M ; 37
1341 032166 000000000000# T40M ; 40
1342 032167 000000 000000 0 ; 41
1343 032170 000000 000000 0 ; 42
1344 032171 000000 000000 0 ; 43
1345 032172 000000 000000 0 ; 44
1346 032173 000000 000000 0 ; 45
1347 032174 000000 000000 0 ; 46
1348 032175 000000 000000 0 ; 47
1349 032176 000000 000000 0 ; 50
1350 032177 000000 000000 0 ; 51
1351 032200 000000 000000 0 ; 52
1352 032201 000000 000000 0 ; 53
1353 032202 000000 000000 0 ; 54
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 31
DFCIA1 MAC 27-Oct-84 19:00 Test Dispatching SEQ 0204
1354
1355 ; Test names
1356
1357 032203 000000 000000 TSTNAM: 0
1358 032204 037 00 0 00 104647 TMSG <Port Hardware Test 1> ; 1
1359 032205 037 00 0 00 104654 TMSG <Port Hardware Test 2> ; 2
1360 032206 037 00 0 00 104661 TMSG <Port Hardware Test 3> ; 3
1361 032207 037 00 0 00 104666 TMSG <PB Register Test 1> ; 4
1362 032210 037 00 0 00 104672 TMSG <Link Register Test 1> ; 5
1363 032211 037 00 0 00 104677 TMSG <PB Register Test 2> ; 6
1364 032212 037 00 0 00 104703 TMSG <Link Register Test 2> ; 7
1365 032213 037 00 0 00 104710 TMSG <Transmit Buffer Load Test> ; 10
1366 032214 037 00 0 00 104716 TMSG <Tranmit Buffer A Test> ; 11
1367 032215 037 00 0 00 104723 TMSG <Transmit Buffer B Test> ; 12
1368 032216 037 00 0 00 104730 TMSG <Transmit Buffer Addressing Test> ; 13
1369 032217 037 00 0 00 104737 TMSG <PB Address Counter Test (Transmit)> ; 14
1370 032220 037 00 0 00 104746 TMSG <PB Address Offset Test (Transmit Read)> ; 15
1371 032221 037 00 0 00 104756 TMSG <PB Address Offset Test (Transmit Write)> ; 16
1372 032222 037 00 0 00 104766 TMSG <Receive Buffer A Test> ; 17
1373 032223 037 00 0 00 104773 TMSG <Receive Buffer B Test> ; 20
1374 032224 037 00 0 00 105000 TMSG <Receive Buffer Addressing Test> ; 21
1375 032225 037 00 0 00 105007 TMSG <Retransmit Buffer A Test> ; 22
1376 032226 037 00 0 00 105014 TMSG <Retransmit Buffer B Test> ; 23
1377 032227 037 00 0 00 105021 TMSG <Transmit Xmt Buffer A to Rcv Buffer B> ; 24
1378 032230 037 00 0 00 105031 TMSG <Transmit Xmt Buffer B to Rcv Buffer A> ; 25
1379 032231 037 00 0 00 105041 TMSG <PB Address Offset Test (Receive Read)> ; 26
1380 032232 037 00 0 00 105051 TMSG <Addressing Test 1> ; 27
1381 032233 037 00 0 00 105055 TMSG <Addressing Test 2> ; 30
1382 032234 037 00 0 00 105061 TMSG <Addressing Test 3> ; 31
1383 032235 037 00 0 00 105065 TMSG <Node Address Test> ; 32
1384 032236 037 00 0 00 105071 TMSG <Transmit Status> ; 33
1385 032237 037 00 0 00 105075 TMSG <'Abort Transmission' Function (Active)> ; 34
1386 032240 037 00 0 00 105105 TMSG <'Abort Transmission' Function (Inactive)> ; 35
1387 032241 037 00 0 00 105116 TMSG <Receiver Status> ; 36
1388 032242 037 00 0 00 105122 TMSG <PLI Parity Test> ; 37
1389 032243 037 00 0 00 105126 TMSG <LINK Parity Test> ; 40
1390 032244 037 00 0 00 105132 TMSG <CRC Test 1> ; 41
1391 032245 037 00 0 00 105135 TMSG <CRC Test 2> ; 42
1392 032246 037 00 0 00 105140 TMSG <Idle Loop Test> ; 43
1393 032247 037 00 0 00 105143 TMSG <Queue Handling Test> ; 44
1394 032250 037 00 0 00 105147 TMSG <CI Loopback Test (AutoPath/Compat)> ; 45
1395 032251 037 00 0 00 105156 TMSG <CI Loopback Test (Auto Path/Hiden)> ; 46
1396 032252 037 00 0 00 105165 TMSG <CI Loopback Test (Path A/Compat)> ; 47
1397 032253 037 00 0 00 105174 TMSG <CI Loopback Test (Path B/Compat)> ; 50
1398 032254 037 00 0 00 105203 TMSG <Link Loopback Test> ; 51
1399 032255 037 00 0 00 105207 TMSG <Crossed Cables Test> ; 52
1400 032256 037 00 0 00 105213 TMSG <REQID Test> ; 53
1401 032257 037 00 0 00 105216 TMSG <Statistics Test> ; 54
1402 032260 000000 000000 0
1403
1404 032261 TSTRES: BLOCK 60 ; test results
1405
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 32
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0205
1406 SUBTTL Port Debugger
1407
1408 ;#*********************************************************************
1409 ;* TSTDEB - Console command utility for the port.
1410 ;
1411 ; Command Action
1412 ; ------- ------
1413 ; ? Print list of commands available.
1414 ;
1415 ; HELP Print list of commands and description.
1416 ; EXIT Exit debugger mode and go back to 'What Test' level.
1417 ; DDT Enter DDT.
1418 ;
1419 ; TAKE Take commands from specified file
1420 ; NTAKE Take commands from specified file (unechoed)
1421 ;
1422 ; SET ADDR adr Set start address
1423 ; CSR data Set start CSR data
1424 ; PARITY arg Set/clr auto par generation
1425 ; EBUF arg Set/clr preserve EBUF flag
1426 ; LENGTH len Set buffer length
1427 ; PAT n Set data pattern
1428 ; PATLIS arg List data patterns
1429 ; PCB arg Set/clear PCB CCW list for START
1430 ; FNAME name ext Set default ucode file name
1431 ; RESPON Set/clr forced packet response
1432 ; PATH Set path select
1433 ; PORT Set destination port
1434 ; XCTID Set XCT-ID
1435 ; PRINT Set word count for text printing
1436 ; IGNORE Set/clear discard other port SNDDG packets
1437 ; SUMMAR Set summary interval (seconds)
1438 ; INTERV Set interval (seconds)
1439 ; WHAT Print options
1440 ; HELP Print this
1441 ;
1442 ; ECSR Print contents of the CSR register (in octal).
1443 ; DCSR arg Change the contents of the CSR registers.
1444 ; ZCSR Clear CSR register.
1445 ;
1446 ; RESET Issue an EBUS reset.
1447 ; CLEAR Issue a 'Clear Port'.
1448 ;
1449 ; START adr Start port microcode by setting CSR Bit 21 'MPROC Run'.
1450 ; If address is supplied, start at that address; if no
1451 ; address is supplied, start at location 0.
1452 ;
1453 ; STOP Stop port microcode by clearing CSR Bit 21 'MPROC Run'.
1454 ; Report the last CRAM address also.
1455 ;
1456 ; CONT Clear the single step bit and set 'MPROC Run' in the port.
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 33
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0206
1457
1458 ; Response Action
1459 ; -------- ------
1460 ; SSTEP arg Single step the port microcode 'ARG' times. Report
1461 ; final CRAM address.
1462 ;
1463 ; STRACE arg Single step the port microcode 'ARG' times. Report
1464 ; the CRAM address and CSR register contents after each
1465 ; micro-instruction.
1466 ;
1467 ; SPRINT arg Print single step history data, 'ARG' entries.
1468 ; SCLEAR Clear single step history data.
1469 ; SSINIT Initialize single step data
1470 ;
1471 ; EEBUF Print contents of EBUF register.
1472 ; DEBUF arg Deposit data to EBUF register.
1473 ; ZEBUF Zero EBUF register.
1474 ;
1475 ; ELAR Print contents of LAR register.
1476 ; DRAR arg Deposit data to RAR register.
1477 ; ZRAR Zero RAR register.
1478 ;
1479 ; DCRAM adr,adr Deposit data into port CRAM addresses specified by 'adr1'
1480 ; and 'adr2'. The data will be queried for each address.
1481 ; The port microcode must be stopped.
1482 ;
1483 ; BCRAM adr,adr Deposit data as above, data is queried by bit field.
1484 ;
1485 ; ACRAM adr,adr Alter CRAM locations, addresses selected as above.
1486 ;
1487 ; ECRAM adr,adr Examine port CRAM addresses. 'Adr1' and 'adr2' specify
1488 ; examine limits. The port microcode must be stopped.
1489 ;
1490 ; LCRAM adr,adr List port CRAM addresses. 'Adr1' and 'adr2' specify
1491 ; examine limits. The port microcode must be stopped.
1492 ;
1493 ; ZCRAM adr,adr Zero port CRAM addresses. 'Adr1' and 'adr2' specify
1494 ; examine limits. The port microcode must be stopped.
1495 ;
1496 ; ELOCS adr,adr Examine local storage contents
1497 ; DLOCS adr,adr Deposit local storage contents
1498 ; ZLOCS adr,adr Zero local storage contents
1499 ;
1500 ; E2901 adr,adr Examine 2901 registers
1501 ; D2901 adr,data Deposit 2901 registers
1502 ; Z2901 adr,adr Zero 2901 registers
1503 ;
1504 ; MARK adr.. Set mark bit in CRAM locations
1505 ; RMARK adr.. Remove mark bit at CRAM address 'adr'
1506 ; CMARK adr,adr Clear mark bit in CRAM locations
1507 ; LMARK List locations with mark bit set
1508 ;
1509 ; BREAK adr.. Set a breakpoint at port CRAM address
1510 ; RBREAK adr.. Remove breakpoint at port CRAM address 'adr'
1511 ; CBREAK adr,adr Clear all breakpoints
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 33-1
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0207
1512 ; LBREAK adr,adr List breakpoints
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 34
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0208
1513
1514 ; Response Action
1515 ; -------- ------
1516 ; LOAD arg Load microcode into CRAM from a test. 'Arg' specifies
1517 ; the test number.
1518 ; LIST arg List microcode of a test. 'Arg' specifies the test
1519 ; number.
1520 ;
1521 ; FLOAD Load microcode from disk file into CRAM.
1522 ; FVERFY Verify microcode loaded.
1523 ; FLIST List microcode on disk file.
1524 ; FEXAM Examine microcode on disk file.
1525 ;
1526 ; TRANSL arg Translate given CSR bits to English.
1527 ; CCODE Print current status of condition codes.
1528 ; ESTACK Examine 2910 stack contents
1529 ;
1530 ; FILLNX arg Fill CRAM with data as 'J=.+1,CTL=x', where 'x' is given.
1531 ; FILLPC arg Fill CRAM with data as 'J=.,CTL=x', where 'x' is given.
1532 ;
1533 ; IPRINT Print interrupt history
1534 ; ICLEAR Clear interrupt history
1535 ; IINIT Initialize interrupt system
1536 ;
1537 ; STATIS Print statistics
1538 ; ZSTATS Clear statistics
1539 ; CONFIG Determine/print system configuration
1540 ; CONPNT Print current configuration
1541 ;
1542 ; CCWPNT Print CCW list
1543 ; LOGPNT Print logout data
1544 ;
1545 ; PINIT Initialize PCB
1546 ; SIDLE Start port until reach IDLE loop
1547 ; BPACK Build a packet
1548 ; IQUEUE Put packet on cmd queue
1549 ; PQUEUE Print contents of a queue
1550 ; PPCB Print PCB
1551 ; WATCH Watch port and print events
1552 ; DEPPAK Deposit into packet
1553 ;
1554 ; DPLI lnk,data Deposit data to PLI
1555 ; EPLI lnk,reg Read PLI data
1556 ; IPLI Initialize PILA/Link modules
1557 ;
1558 ; ETBUFF Read transmit buffers
1559 ; ERBUFF Read receive buffers
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 35
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0209
1560
1561 ; Switches: To complement switch, type switch name
1562 ;
1563 ; SWITCH Enter switches
1564 ; SWPRIN Print current switches
1565 ;
1566 ; NOPNT LOOPER RELIAB TRACE LOOPGM DSPEAR SDEBUG EDEBUG
1567 ; PNTLPT ERSTOP TXTINH INHFLT LOOPTS UDEBUG LDEBUG
1568 ; DING PALERS OPRSEL INHMSG RUNALL MDEBUG DDEBUG
1569 ;
1570 ; Common Error Messages For 'DEBUG' Mode:
1571 ;
1572 ; "? Missing argument" - Response to "DEBUG>" prompt expects a command
1573 ; plus an argument.
1574 ;
1575 ; "? Argument Error" - An attempt was made to decode an octal or decimal
1576 ; argument. It was undecipherable.
1577 ;
1578 ; "? Range nonsensical" - The beginning address is greater than ending
1579 ; address.
1580 ;
1581 ; "? Range of CRAM locations is 0000-7777" - Argument(s) typed were not
1582 ; in range.
1583 ;
1584 ; "? Port not stopped" - An operation requiring the port to be stopped
1585 ; was issued when 'MPROC Run' was set.
1586 ;
1587 ; "? Port not running" - A function was issued to the port when it was
1588 ; stopped. It should have been running.
1589 ;
1590 ; "? Error accessing CSR registers" - A read of CSR register failed.
1591 ;
1592 ; "? Test specified does not have microcode" - An attempt to load ucode
1593 ; from this test failed because the test doesn't have any.
1594 ;
1595 ; "? Unrecognized command" - Unrecognized command entered.
1596 ;#********************************************************************
1597
1598 032341 200 01 0 00 105225 TSTDEB: MOVE 1,[FMSGCD (DEBUG <CR>)]
1599 032342 260 17 0 00 031534* GO CHKARG ; check for argument
1600 032343 263 17 0 00 000000 RTN ; error - exit
1601 032344 202 17 0 00 120773' MOVEM P,SAVCMD# ; save PC
1602
1603 ; Initialize things
1604
1605 032345 402 00 0 00 120760' CMD0: SETZM PCMD# ; clear the command storage
1606 032346 400 15 0 00 000000 SETZ ERFLG, ; clear error flag
1607 032347 201 00 0 00 303240 MOVEI ^D100000 ; re-set up print limit just in case
1608 032350 212 00 0 00 030220 MOVNM PNTENB ; the last test exceeded it
1609 032351 200 16 0 00 103311 MOVE MBCN,CIPORT ; set up MBCN register properly
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 36
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0210
1610
1611 ; Set/clear debug switches
1612
1613 032352 402 00 0 00 121012' SETZM UDEBUG ; clear no-IPA user mode debug switch
1614 032353 402 00 0 00 120741' SETZM MDEBUG ; clear error message debug switch
1615 032354 402 00 0 00 120777' SETZM SDEBUG ; clear test debug switch
1616 032355 402 00 0 00 120737' SETZM LDEBUG ; clear ucode load debug switch
1617 032356 402 00 0 00 120722' SETZM DDEBUG ; clear dump on error debug switch
1618 032357 260 17 0 00 032032* GO SWITT ; get switches
1619 032360 602 00 0 00 002000 TRNE DEBUG1 ; debug switch set?
1620 032361 476 00 0 00 121012' SETOM UDEBUG ; set no-IPA user mode debug switch
1621 032362 602 00 0 00 001000 TRNE DEBUG2 ; debug switch set?
1622 032363 476 00 0 00 120741' SETOM MDEBUG ; set error message debug switch
1623 032364 602 00 0 00 000400 TRNE DEBUG3 ; debug switch set?
1624 032365 476 00 0 00 120777' SETOM SDEBUG ; set test debug switch
1625 032366 602 00 0 00 000200 TRNE DEBUG4 ; debug switch set?
1626 032367 476 00 0 00 120737' SETOM LDEBUG ; set ucode load debug switch
1627 032370 602 00 0 00 000100 TRNE DEBUG5 ; debug switch set?
1628 032371 476 00 0 00 120722' SETOM DDEBUG ; set dump on error debug switch
1629 032372 402 00 0 00 103310 SETZM PMODE ; set program mode to 'no test'
1630 032373 402 00 0 00 120743' SETZM MULFLG ; clear 'multiple examine' flag
1631 032374 476 00 0 00 120744' SETOM MULINI ; set 'initial examine' flag
1632 032375 402 00 0 00 121011' SETZM TXADDL ; clear 'addl text' routine address
1633
1634 ; Input command
1635
1636 032376 260 17 0 00 031003* GO CLRBUF ; clear input buffer
1637 032377 260 17 0 00 000000* CMD1: GO .INPNT ; print interrupt fielded (if any)
1638 MOVEI [PCRL ; set up $ transfer address
1639 SETZM ALTF
1640 GO FIOFF
1641 032400 201 00 0 00 105226 JRST CMD0]
1642 032401 202 00 0 00 030063 MOVEM ALTMGO
1643 032402 402 00 0 00 120713' SETZM ALTF ; clear 'altmode typed' flag
1644 032403 336 00 0 00 120733' SKIPN FINPUT ; file input?
1645 032404 476 00 0 00 120732' SETOM FINECH ; no - ensure echo flag set
1646 032405 332 00 0 00 120732' SKIPE FINECH ; echo flag set?
1647 GO [PFORCE ; no - print all this
1648 PCRLF
1649 FMSG (DEBUG> )
1650 032406 260 17 0 00 105234 RTN]
1651 032407 332 00 0 00 120733' SKIPE FINPUT ; file input?
1652 JRST [GO FINCMD ; yes - input sixbit cmd
1653 JRST CMD1 ; error or EOF
1654 032410 254 00 0 00 105240 JRST CMD2] ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 37
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0211
1655
1656 032411 037 10 0 00 000003 CMD1A: TTSIXB ; get operator input
1657 ALTCHK [GET XXW# ; adjust stack properly
1658 SKIPN $TWCNT ; did a timeout occur?
1659 JRST CMD1 ; yes - keep looking for input
1660 MOVE 1,$TTCHR ; no - get character typed
1661 CAIN 1,77 ; was a question mark typed?
1662 JRST CMDQUE ; yes - handle
1663 CAIN 1,40 ; space (delimiter character) typed?
1664 JRST .+1 ; yes - continue (no error occurred)
1665 FMSGCD <? Unrecognizable - Type ? for help>
1666 GO FIOFF ; turn off file input
1667 032412 007 00 0 00 105243 JRST CMD0] ; error - reask question
1668
1669 CMD2: JUMPE [MOVE $TTCHR ; anything typed? if a space, keep
1670 CAIN 40 ; looking for an argument, if not
1671 JRST CMD1A ; exit
1672 032413 322 00 0 00 105256 JRST CMD1]
1673 032414 202 00 0 00 120760' MOVEM PCMD ; save command typed
1674 032415 402 00 0 00 031721* SETZM ARGFLG ; clear 'argument given' flag
1675 032416 200 01 0 00 030231 MOVE 1,$TTCHR ; get last character typed
1676 032417 302 01 0 00 000015 CAIE 1,15 ; CR? (end of line)
1677 032420 476 00 0 00 032415* SETOM ARGFLG ; set 'argument given' flag
1678
1679 ; Decode the command
1680
1681 032421 200 01 0 00 120760' MOVE 1,PCMD ; get sixbit command
1682 032422 201 02 0 00 032435 MOVEI 2,.DBCMD ; get address of cmd list
1683 032423 260 17 0 00 031416* GO .COMM ; handle command decoding
1684 JRST [FMSGCD <? Unrecognizable - Type ? for help>
1685 GO FIOFF
1686 032424 254 00 0 00 105253 JRST CMD0] ; error return
1687 032425 260 17 1 01 032607 GO @.DBDIS(1) ; dispatch to test
1688 032426 254 00 0 00 032345 JRST CMD0 ; return to 'DEBUG>' prompt
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 38
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0212
1689
1690 ; Question mark typed
1691
1692 032427 037 01 0 00 000026 CMDQUE: PFORCE ; handle Control-O
1693 032430 037 00 1 00 032432 PNTMSG @CMDQUU ; print text
1694 032431 254 00 0 00 032345 JRST CMD0 ; look for new command
1695
1696 032432 CMDQUU: [ASCII /
1697 -------- Miscellaneous --------------------- - CI - -- Switches --
1698 HELP IPRINT START EEBUF ECRAM MARK PINIT NOPNT TRACE
1699 EXIT ICLEAR STOP DEBUF LCRAM RMARK SIDLE PNTLPT INHFLT
1700 DDT IINIT CONT ZEBUF BCRAM CMARK WATCH DING INHMSG
1701 032432 000000 105262 SSTEP ACRAM LMARK ERSTOP LOOPGM /]
1702 [ASCII /
1703 SET CCWPNT STRACE ELAR ZCRAM BPACK PALERS LOOPTS
1704 TAKE LOGPNT SPRINT DRAR BREAK IQUEUE RELIAB RUNALL
1705 NTAKE STATIS SCLEAR ZRAR FLOAD RBREAK PPCB TXTINH DSPEAR
1706 TRANSL ZSTATS SSINIT FVERFY CBREAK PQUEUE OPRSEL UDEBUG
1707 032433 000000 105371 FILLNX CONFIG E2901 FLIST LBREAK MDEBUG/]
1708 [ASCIZ /
1709 FILLPC CONPNT ELOCS D2901 FEXAM DEPPAK SWITCH SDEBUG
1710 DLOCS Z2901 EPLI SWPRIN LDEBUG
1711 RESET ECSR ZLOCS ENEXT DPLI ETBUFF DDEBUG
1712 CLEAR DCSR CCODE DNEXT IPLI EXBUFF EDEBUG
1713 ZCSR ESTACK
1714 032434 000000 105500 /]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 39
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0213
1715
1716 ;#********************************************************************
1717 ;* .DBCMD - List of acceptable commands
1718 ;#********************************************************************
1719
1720 ; Miscellaneous commands
1721
1722 032435 777777 777655 .DBCMD: -123 ; ignore
1723 032436 50 45 54 60 00 00 SIXBIT /HELP/ ; print help message
1724 032437 45 70 51 64 00 00 SIXBIT /EXIT/ ; exit DEBUG mode
1725 032440 44 44 64 00 00 00 SIXBIT /DDT/ ; enter DDT
1726
1727 032441 63 45 64 00 00 00 SIXBIT /SET/ ; set/print options
1728 032442 64 41 53 45 00 00 SIXBIT /TAKE/ ; take commands from a file
1729 032443 56 64 41 53 45 00 SIXBIT /NTAKE/ ; take commands from a file
1730 032444 45 56 45 70 64 00 SIXBIT /ENEXT/ ; examine next location
1731 032445 44 56 45 70 64 00 SIXBIT /DNEXT/ ; examine next location
1732
1733 ; CSR commands
1734
1735 032446 45 43 63 62 00 00 SIXBIT /ECSR/ ; examine CSR register
1736 032447 44 43 63 62 00 00 SIXBIT /DCSR/ ; deposit CSR register
1737 032450 72 43 63 62 00 00 SIXBIT /ZCSR/ ; zero CSR register
1738
1739 032451 62 45 63 45 64 00 SIXBIT /RESET/ ; issue an EBUS Reset
1740 032452 43 54 45 41 62 00 SIXBIT /CLEAR/ ; issue a 'Port Clear'
1741
1742 ; Start/stop/single step commands
1743
1744 032453 63 64 41 62 64 00 SIXBIT /START/ ; start the port
1745 032454 63 64 57 60 00 00 SIXBIT /STOP/ ; stop the port
1746 032455 43 57 56 64 00 00 SIXBIT /CONT/ ; continue the port
1747 032456 63 63 64 45 60 00 SIXBIT /SSTEP/ ; single step the port
1748 032457 63 64 62 41 43 45 SIXBIT /STRACE/ ; single step the port while tracing
1749 032460 63 60 62 51 56 64 SIXBIT /SPRINT/ ; print single step history
1750 032461 63 43 54 45 41 62 SIXBIT /SCLEAR/ ; clear single step history data
1751 032462 63 63 51 56 51 64 SIXBIT /SSINIT/ ; set up ss start addr/data/history
1752
1753 ; EBUF commands
1754
1755 032463 45 45 42 65 46 00 SIXBIT /EEBUF/ ; examine EBUF register
1756 032464 44 45 42 65 46 00 SIXBIT /DEBUF/ ; deposit EBUF register
1757 032465 72 45 42 65 46 00 SIXBIT /ZEBUF/ ; zero EBUF register
1758
1759 ; RAR/LAR commands
1760
1761 032466 45 54 41 62 00 00 SIXBIT /ELAR/ ; examine LAR register
1762 032467 44 62 41 62 00 00 SIXBIT /DRAR/ ; deposit RAR register
1763 032470 72 62 41 62 00 00 SIXBIT /ZRAR/ ; zero RAR register
1764
1765 ; CRAM commands
1766
1767 032471 44 43 62 41 55 00 SIXBIT /DCRAM/ ; deposit into port CRAM
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 40
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0214
1768 032472 42 43 62 41 55 00 SIXBIT /BCRAM/ ; deposit into port CRAM by bit field
1769 032473 41 43 62 41 55 00 SIXBIT /ACRAM/ ; alter port CRAM
1770 032474 45 43 62 41 55 00 SIXBIT /ECRAM/ ; examine port CRAM
1771 032475 54 43 62 41 55 00 SIXBIT /LCRAM/ ; list port CRAM
1772 032476 72 43 62 41 55 00 SIXBIT /ZCRAM/ ; zero port CRAM
1773
1774 ; 2901 commands
1775
1776 032477 45 22 31 20 21 00 SIXBIT /E2901/ ; examine 2901 registers
1777 032500 44 22 31 20 21 00 SIXBIT /D2901/ ; deposit 2901 registers
1778 032501 72 22 31 20 21 00 SIXBIT /Z2901/ ; zero 2901 registers
1779
1780 ; Local storage commmands
1781
1782 032502 45 54 57 43 63 00 SIXBIT /ELOCS/ ; examine local storage
1783 032503 44 54 57 43 63 00 SIXBIT /DLOCS/ ; deposit local storage
1784 032504 72 54 57 43 63 00 SIXBIT /ZLOCS/ ; zero local storage
1785
1786 ; Mark bit commands
1787
1788 032505 55 41 62 53 00 00 SIXBIT /MARK/ ; set mark bit in locations
1789 032506 62 55 41 62 53 00 SIXBIT /RMARK/ ; remove mark bit in locations
1790 032507 43 55 41 62 53 00 SIXBIT /CMARK/ ; clear mark bit in locations
1791 032510 54 55 41 62 53 00 SIXBIT /LMARK/ ; list locations with mark bit set
1792
1793 ; Breakpoint commands
1794
1795 032511 42 62 45 41 53 00 SIXBIT /BREAK/ ; set breakpoint
1796 032512 62 42 62 45 41 53 SIXBIT /RBREAK/ ; remove breakpoint
1797 032513 43 42 62 45 41 53 SIXBIT /CBREAK/ ; clear all breakpoints
1798 032514 54 42 62 45 41 53 SIXBIT /LBREAK/ ; list breakpoints
1799
1800 ; Microcode file commands
1801
1802 032515 54 57 41 44 00 00 SIXBIT /LOAD/ ; load microcode from test into CRAM
1803 032516 54 51 63 64 00 00 SIXBIT /LIST/ ; list microcode from test
1804 032517 46 54 57 41 44 00 SIXBIT /FLOAD/ ; load microcode from file into CRAM
1805 032520 46 66 45 62 46 71 SIXBIT /FVERFY/ ; verify microcode loaded
1806 032521 46 54 51 63 64 00 SIXBIT /FLIST/ ; list microcode in file
1807 032522 46 45 70 41 55 00 SIXBIT /FEXAM/ ; examine microcode in file
1808
1809 ; Miscellaneous commands
1810
1811 032523 64 62 41 56 63 54 SIXBIT /TRANSL/ ; translate CSR bits
1812 032524 43 43 57 44 45 00 SIXBIT /CCODE/ ; print condition codes
1813 032525 45 63 64 41 43 53 SIXBIT /ESTACK/ ; examine 2910 stack contents
1814 032526 46 51 54 54 56 70 SIXBIT /FILLNX/ ; fill CRAM with special data
1815 032527 46 51 54 54 60 43 SIXBIT /FILLPC/ ; fill CRAM with special data
1816 032530 51 60 62 51 56 64 SIXBIT /IPRINT/ ; print interrupt history
1817 032531 51 43 54 45 41 62 SIXBIT /ICLEAR/ ; clear interrupt history
1818 032532 51 51 56 51 64 00 SIXBIT /IINIT/ ; initialize interrupt system
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 41
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0215
1819
1820 032533 63 64 41 64 51 63 SIXBIT /STATIS/ ; print collected statistics
1821 032534 72 63 64 41 64 63 SIXBIT /ZSTATS/ ; clear statistics areas
1822 032535 43 57 56 46 51 47 SIXBIT /CONFIG/ ; collect/print current configuration
1823 032536 43 57 56 60 56 64 SIXBIT /CONPNT/ ; print current configuration
1824 032537 44 65 55 60 00 00 SIXBIT /DUMP/ ; dump entire port status
1825
1826 ; Data transfer routines
1827
1828 032540 43 43 67 60 56 64 SIXBIT /CCWPNT/ ; print CCW list
1829 032541 54 57 47 60 56 64 SIXBIT /LOGPNT/ ; print logout data
1830
1831 ; CI related commands
1832
1833 032542 60 51 56 51 64 00 SIXBIT /PINIT/ ; initialize PCB and queues
1834 032543 63 51 44 54 45 00 SIXBIT /SIDLE/ ; start port and wait for IDLE loop
1835 032544 42 60 41 43 53 00 SIXBIT /BPACK/ ; build a packet
1836 032545 51 61 65 45 65 45 SIXBIT /IQUEUE/ ; put packet on cmd queue
1837 032546 60 61 65 45 65 45 SIXBIT /PQUEUE/ ; print specified queue
1838 032547 60 60 43 42 00 00 SIXBIT /PPCB/ ; print PCB
1839 032550 67 41 64 43 50 00 SIXBIT /WATCH/ ; watch port and print events
1840 032551 44 60 54 51 00 00 SIXBIT /DPLI/ ; deposit data to PLI
1841 032552 45 60 54 51 00 00 SIXBIT /EPLI/ ; examine PLI
1842 032553 51 60 54 51 00 00 SIXBIT /IPLI/ ; initialize PILA/Link modules
1843 032554 44 45 60 60 41 53 SIXBIT /DEPPAK/ ; deposit packet data
1844 032555 45 64 42 65 46 46 SIXBIT /ETBUFF/ ; read transmit buffers
1845 032556 45 62 42 65 46 46 SIXBIT /ERBUFF/ ; read receive buffers
1846
1847 ; Switches
1848
1849 032557 63 67 51 64 43 50 SIXBIT /SWITCH/ ; input switches
1850 032560 63 67 60 62 51 56 SIXBIT /SWPRIN/ ; print switch selections
1851 032561 56 57 60 56 64 00 SIXBIT /NOPNT/ ; don't print anything
1852 032562 60 56 64 54 60 64 SIXBIT /PNTLPT/ ; print on printer
1853 032563 44 51 56 47 00 00 SIXBIT /DING/ ; ding on error
1854 032564 45 62 63 64 57 60 SIXBIT /ERSTOP/ ; halt on error
1855 032565 60 41 54 45 62 63 SIXBIT /PALERS/ ; print all errors
1856 032566 62 45 54 51 41 42 SIXBIT /RELIAB/ ; reliability testing
1857 032567 64 70 64 51 56 50 SIXBIT /TXTINH/ ; shorten printing
1858 032570 57 60 62 63 45 54 SIXBIT /OPRSEL/ ; operator select
1859 032571 64 62 41 43 45 00 SIXBIT /TRACE/ ; trace pgm flow
1860 032572 51 56 50 46 54 64 SIXBIT /INHFLT/ ; inhibit fault isolation
1861 032573 51 56 50 55 63 47 SIXBIT /INHMSG/ ; inhibit error messages
1862 032574 54 57 57 60 47 55 SIXBIT /LOOPGM/ ; loop on program
1863 032575 54 57 57 60 64 63 SIXBIT /LOOPTS/ ; loop on test
1864 032576 62 65 56 41 54 54 SIXBIT /RUNALL/ ; run all test segments
1865 032577 44 63 60 45 41 62 SIXBIT /DSPEAR/ ; disable SPEAR reporting
1866 032600 65 44 45 42 65 47 SIXBIT /UDEBUG/ ; no-IPA user mode debug switch
1867 032601 55 44 45 42 65 47 SIXBIT /MDEBUG/ ; error message debug switch
1868 032602 63 44 45 42 65 47 SIXBIT /SDEBUG/ ; test debug switch
1869 032603 54 44 45 42 65 47 SIXBIT /LDEBUG/ ; load microcode debug switch
1870 032604 44 44 45 42 65 47 SIXBIT /DDEBUG/ ; dump on error debug switch
1871 032605 45 44 45 42 65 47 SIXBIT /EDEBUG/ ; expanded error msg switch
1872 032606 000 00 0 00 000000 Z ; list terminator
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 42
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0216
1873
1874 ;#********************************************************************
1875 ;* .DBDIS - List of dispatch addresses
1876 ;#********************************************************************
1877
1878 032607 000000 103535 .DBDIS: [RTN] ; ignore
1879 032610 000000 032760 DHELP ; HELP - print help message
1880 [MOVE 1,[FMSGCD (EXIT <CR>)] ; EXIT - exit DEBUG mode
1881 GO CHKARG
1882 RTN
1883 GET XXX#
1884 032611 000000 105577 RTN]
1885 032612 000000 031346 TSTDDT ; DDT - enter DDT
1886
1887 032613 000000 033052 DSET ; SET - set/clear/print options
1888 032614 000000 031544 TSTTAK ; TAKE - take commands from file
1889 032615 000000 031542 TSTTAN ; NTAKE - take commands from a file
1890 032616 000000 040304 DENEXT ; ENEXT - examine next location
1891 032617 000000 040366 DDNEXT ; DNEXT - deposit next location
1892
1893 032620 000000 034022 DECSR ; ECSR - examine CSR register
1894 032621 000000 034032 DDCSR ; DCSR - deposit CSR register
1895 032622 000000 034041 DZCSR ; ZCSR - zero CSR register
1896
1897 032623 000000 034047 DRESET ; RESET - issue an EBUS Reset
1898 032624 000000 034054 DCLEAR ; CLEAR - issue a 'Port Clear'
1899
1900 032625 000000 034074 DSTART ; START - start the port
1901 032626 000000 034123 DSTOP ; STOP - stop the port
1902 032627 000000 035514 DCONT ; CONT - continue the port
1903 032630 000000 034146 DSSTEP ; SSTEP - single step the port
1904 032631 000000 034143 DTRACE ; STRACE - sstep the port while tracing
1905 032632 000000 034215 DSSPNT ; SPRINT - print single step history
1906 032633 000000 034237 DSSCLR ; SCLEAR - clear single step history
1907 032634 000000 034061 DSINIT ; SSINIT - set up ss addr/data/history
1908
1909 032635 000000 035531 DEEBUF ; EEBUF - examine EBUF register
1910 032636 000000 035552 DDEBUF ; DEBUF - deposit EBUF register
1911 032637 000000 035545 DZEBUF ; ZEBUF - zero EBUF register
1912
1913 032640 000000 035564 DELAR ; ELAR - examine LAR register
1914 032641 000000 035604 DDRAR ; DRAR - deposit RAR register
1915 032642 000000 035616 DZRAR ; ZRAR - zero RAR register
1916
1917 032643 000000 035631 DDCRAM ; DCRAM - deposit CRAM
1918 032644 000000 035634 DBCRAM ; BCRAM - deposit CRAM by bit field
1919 032645 000000 035637 DACRAM ; ACRAM - alter port CRAM
1920 032646 000000 035626 DECRAM ; ECRAM - examine port CRAM
1921 032647 000000 035645 DLCRAM ; LCRAM - list port CRAM
1922 032650 000000 035642 DZCRAM ; ZCRAM - zero port CRAM
1923
1924 032651 000000 036413 DEALU ; E2901 - examine 2901 registers
1925 032652 000000 036521 DDALU ; D2901 - deposit 2901 registers
1926 032653 000000 036602 DZALU ; Z2901 - zero 2901 registers
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 43
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0217
1927
1928 032654 000000 036717 DELOCS ; ELOCS - examine local storage
1929 032655 000000 037022 DDLOCS ; DLOCS - deposit local storage
1930 032656 000000 037076 DZLOCS ; ZLOCS - zero local storage
1931
1932 032657 000000 037212 DMARK ; MARK - set mark bits
1933 032660 000000 037241 DRMARK ; RMARK - remove mark bits
1934 032661 000000 037270 DCMARK ; CMARK - clear mark bits
1935 032662 000000 037341 DLMARK ; LMARK - list mark bits
1936
1937 032663 000000 040514 DBREAK ; BREAK - set breakpoint
1938 032664 000000 040547 DRBRK ; RBREAK - remove breakpoint
1939 032665 000000 040572 DCBRK ; CBREAK - clear all breakpoints
1940 032666 000000 040636 DLBRK ; LBREAK - list breakpoints
1941
1942 032667 000000 040717 DLOAD ; LOAD - load test microcode into CRAM
1943 032670 000000 040740 DLIST ; LIST - list test microcode
1944 032671 000000 040753 DFLOAD ; FLOAD - load ucode from file to CRAM
1945 032672 000000 040776 DFVERF ; FVERFY - verify microcode loaded
1946 032673 000000 041012 DFLIST ; FLIST - list microcode in file
1947 032674 000000 041047 DFEXAM ; FEXAM - examine microcode in file
1948
1949 032675 000000 041104 DTRANS ; TRANSL - translate CSR bits
1950 032676 000000 041114 DCCODE ; CCODE - print condition codes
1951 032677 000000 040454 DESTAK ; ESTACK - examine 2910 stack
1952 032700 000000 041243 DFILLN ; FILLNX - fill CRAM with special data
1953 032701 000000 041267 DFILLP ; FILLPC - fill CRAM with special data
1954 032702 000000 041336 DIPRIN ; IPRINT - print interrupt history
1955 [MOVE 1,[FMSGCD (ICLEAR <CR>)]; ICLEAR - clear interrupt history
1956 GO CHKARG
1957 RTN
1958 SETZM INTNUM
1959 MOVE [INTNUM,,INTNUM+1]
1960 BLT INTEND
1961 SETOM INTNUM
1962 032703 000000 105612 RTN]
1963 032704 000000 041412 DIINIT ; IINIT - initialize interrupt system
1964
1965 032705 000000 031514 TSTPRI ; STATIS - print statistics
1966 032706 000000 031370 TSTZER ; ZSTATS - clear statistics
1967 032707 000000 031375 TSTCON ; CONFIG - determine/pnt configuration
1968 032710 000000 031403 TSTCPN ; CONPNT - print configuration
1969 032711 000000 037752 DDUMP ; DUMP - dump entire port state
1970
1971 032712 000000 041311 DCWPNT ; CCWPNT - print CCW list
1972 032713 000000 041317 DLGPNT ; LOGPNT - print logout area data
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 44
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0218
1973
1974 ; CI related commands
1975
1976 032714 000000 041420 DPINIT ; PINIT - initialize PCB and queues
1977 032715 000000 041425 DSIDLE ; SIDLE - start port/wait for IDLE loop
1978 032716 000000 041433 DBPACK ; BPACK - build packet
1979 032717 000000 041506 DIQUEU ; IQUEUE - put packet on cmd queue
1980 032720 000000 041530 DPQUEU ; PQUEUE - print specified queue
1981 032721 000000 041522 DPPCB ; PPCB - print PCB
1982 032722 000000 041562 DWATCH ; WATCH - watch port and print events
1983 032723 000000 037417 DDPLI ; DPLI - deposit data to PLI
1984 032724 000000 037507 DEPLI ; EPLI - examine PLI
1985 032725 000000 037612 DIPLI ; IPLI - initialize PILA/Link modules
1986 032726 000000 040435 DDPPAK ; DEPPAK - deposit into packet
1987 032727 000000 037722 DETBUF ; ETBUFF - read transmit buffers
1988 032730 000000 037736 DERBUF ; ERBUFF - read receive buffers
1989
1990 ; Switches
1991
1992 [MOVE 1,[FMSGCD (SWITCH <CR>)]; SWITCH - input switches
1993 GO CHKARG
1994 RTN
1995 GO .ISWT
1996 032731 000000 105622 RTN]
1997 [MOVE 1,[FMSGCD (SWPRIN <CR>)]; SWPRIN - print switches
1998 GO CHKARG
1999 RTN
2000 GO .SWCHP
2001 032732 000000 105627 RTN]
2002
2003 000124 SWSTP==.-.DBDIS
2004
2005 032733 000000 041325 DSWIT ; NOPNT
2006 032734 000000 041325 DSWIT ; PNTLPT
2007 032735 000000 041325 DSWIT ; DING
2008 032736 000000 041325 DSWIT ; ERSTOP
2009 032737 000000 041325 DSWIT ; PALERS
2010 032740 000000 041325 DSWIT ; RELIAB
2011 032741 000000 041325 DSWIT ; TXTINH
2012 032742 000000 041325 DSWIT ; OPRSEL
2013 032743 000000 041325 DSWIT ; TRACE
2014 032744 000000 041325 DSWIT ; INHFLT
2015 032745 000000 041325 DSWIT ; INHMSG
2016 032746 000000 041325 DSWIT ; LOOPGM
2017 032747 000000 041325 DSWIT ; LOOPTS
2018 032750 000000 041325 DSWIT ; RUNALL
2019 032751 000000 041325 DSWIT ; DSPEAR
2020 032752 000000 041325 DSWIT ; UDEBUG
2021 032753 000000 041325 DSWIT ; MDEBUG
2022 032754 000000 041325 DSWIT ; SDEBUG
2023 032755 000000 041325 DSWIT ; LDEBUG
2024 032756 000000 041325 DSWIT ; DDEBUG
2025 032757 000000 041325 DSWIT ; EDEBUG
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 45
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0219
2026
2027 ;#*********************************************************************
2028 ;* DHELP - Print DEBUG> help message
2029 ;#*********************************************************************
2030
2031 DHELP: MOVN 1,[FMSGD <
2032 HELP ALL START CRAM BREAK DTXFR
2033 MISC CSR 2901 UCODE CI
2034 INTRPT EBUF LOCS STATIS PLI
2035 032760 210 01 0 00 105675 RESET LAR MARK CONFIG SWITCH>]
2036 032761 260 17 0 00 031554* GO .SARG ; get SIXBIT argument
2037 032762 263 17 0 00 000000 RTN ; error/altmode/question - exit
2038 GO [MOVE [SIXBIT /ALL/] ; no argument - assume all
2039 MOVEM ARGUM
2040 032763 260 17 0 00 104117 RTN]
2041 032764 200 01 0 00 031707* MOVE 1,ARGUM ; get sixbit command
2042 032765 201 02 0 00 033000 MOVEI 2,.HLCMD ; get address of cmd list
2043 032766 260 17 0 00 032423* GO .COMM ; handle command decoding
2044 JRST [FMSGCD <? Unrecognizable - Type ? for help>
2045 GO FIOFF
2046 032767 254 00 0 00 104122 RTN] ; error return
2047 032770 037 01 0 00 000026 PFORCE ; handle Control-O
2048 032771 200 02 0 00 000001 MOVE 2,1 ; get AC1
2049 032772 336 03 0 01 033025 DHELP0: SKIPN 3,DHELP1(1) ; get address of TMSG
2050 032773 263 17 0 00 000000 RTN ; all done - exit
2051 032774 256 00 0 00 000003 XCT 3 ; print it
2052 032775 350 00 0 00 000001 AOS 1 ; point to next address
2053 032776 322 02 0 00 032772 JUMPE 2,DHELP0 ; loop till done
2054 032777 263 17 0 00 000000 RTN ; exit
2055
2056 033000 41 54 54 00 00 00 .HLCMD: SIXBIT /ALL/ ; print all help info
2057 033001 55 51 63 43 00 00 SIXBIT /MISC/ ; print miscellaneous commands
2058 033002 51 56 64 62 60 64 SIXBIT /INTRPT/ ; print interrupt commands
2059 033003 62 45 63 45 64 00 SIXBIT /RESET/ ; print reset commands
2060 033004 63 64 41 62 64 00 SIXBIT /START/ ; print start... commands
2061 033005 43 63 62 00 00 00 SIXBIT /CSR/ ; print CSR commands
2062 033006 45 42 65 46 00 00 SIXBIT /EBUF/ ; print EBUF commands
2063 033007 54 41 62 00 00 00 SIXBIT /LAR/ ; print LAR commands
2064 033010 43 62 41 55 00 00 SIXBIT /CRAM/ ; print CRAM commands
2065 033011 22 31 20 21 00 00 SIXBIT /2901/ ; print 2901 commands
2066 033012 54 57 43 63 00 00 SIXBIT /LOCS/ ; print local storage commands
2067 033013 55 41 62 53 00 00 SIXBIT /MARK/ ; print mark commands
2068 033014 42 62 45 41 53 00 SIXBIT /BREAK/ ; print breakpoint commands
2069 033015 65 43 57 44 45 00 SIXBIT /UCODE/ ; print microcode commands
2070 033016 63 64 41 64 51 63 SIXBIT /STATIS/ ; print statisitics commands
2071 033017 43 57 56 46 51 47 SIXBIT /CONFIG/ ; print configuration commands
2072 033020 44 64 70 46 62 00 SIXBIT /DTXFR/ ; print data transfer commands
2073 033021 43 51 00 00 00 00 SIXBIT /CI/ ; print CI related commands
2074 033022 60 54 51 00 00 00 SIXBIT /PLI/ ; print PLI commands
2075 033023 63 67 51 64 43 50 SIXBIT /SWITCH/ ; print switch commands
2076 033024 000000 000000 0 ; end of list
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 46
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0220
2077
2078 033025 037 00 0 00 105676 DHELP1: TMSGCD <DEBUG Commands:>
2079
2080 TMSGD <
2081 HELP arg Print help
2082 EXIT Exit DEBUG mode
2083 DDT Enter DDT
2084 SET opt arg Set/clear/print options
2085 TAKE file ext Take commands from file
2086 NTAKE file ext Take commands from file (unechoed)
2087 TRANSL dat Translate CSR data
2088 CCODE Print condition codes
2089 ESTACK Examine 2910 stack contents
2090 FILLNX dat Fill CRAM with 'J=.+1,CTL=dat'
2091 FILLPC dat Fill CRAM with 'J=.,CTL=dat'
2092 ENEXT cnt Examine next
2093 033026 037 00 0 00 105702 DNEXT arg Deposit next>
2094
2095 TMSGD <
2096 IPRINT Print accumulated interrupt activity
2097 ICLEAR Clear accumulated interrupt activity
2098 033027 037 00 0 00 106036 IINIT Init interrupt system>
2099
2100 TMSGD <
2101 RESET Issue EBUS Reset
2102 033030 037 00 0 00 106072 CLEAR Issue a 'Port Clear'>
2103
2104 TMSGD <
2105 START adr Start the port microsequencer
2106 STOP Stop the port microsequencer
2107 CONT Continue the port microsequencer
2108 SSTEP cnt Single step the port microsequencer
2109 STRACE cnt Single step and trace execution
2110 SPRINT cnt Print single step history data
2111 SCLEAR Clear single step history data
2112 033031 037 00 0 00 106110 SSINIT Set up ss addr/data/history>
2113
2114 TMSGD <
2115 ECSR Examine CSR Register
2116 DCSR dat Deposit CSR Register
2117 033032 037 00 0 00 106220 ZCSR Zero CSR Register>
2118
2119 TMSGD <
2120 EEBUF Examine EBUF register
2121 DEBUF dat Deposit EBUF register
2122 033033 037 00 0 00 106245 ZEBUF Zero EBUF register>
2123
2124 TMSGD <
2125 ELAR Examine LAR register
2126 DRAR dat Deposit RAR register
2127 033034 037 00 0 00 106272 ZRAR Zero RAR register>
2128
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 47
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0221
2129 TMSGD <
2130 DCRAM adr,adr Deposit into CRAM
2131 BCRAM adr,adr Deposit into CRAM by fields
2132 ACRAM adr,adr Alter CRAM
2133 ECRAM adr,adr Examine CRAM
2134 LCRAM adr,adr List CRAM
2135 033035 037 00 0 00 106317 ZCRAM adr,adr Zero CRAM>
2136
2137 TMSGD <
2138 E2901 reg,reg Examine 2901 registers
2139 D2901 reg,dat Deposit 2901 register
2140 033036 037 00 0 00 106365 Z2901 reg,reg Zero 2901 registers>
2141
2142 TMSGD <
2143 ELOCS adr,adr Examine local storage
2144 DLOCS adr,dat Deposit local storage
2145 033037 037 00 0 00 106415 ZLOCS adr,adr Zero local storage>
2146
2147 TMSGD <
2148 MARK adr,adr Set mark bit
2149 RMARK adr,adr Remove mark bit
2150 CMARK adr,adr Clear all mark bits
2151 033040 037 00 0 00 106444 LMARK adr,adr List mark bits>
2152
2153 TMSGD <
2154 BREAK adr,adr Set breakpoint
2155 RBREAK adr,adr Remove breakpoint
2156 CBREAK adr,adr Clear all breakpoints
2157 033041 037 00 0 00 106477 LBREAK adr,adr List breakpoints>
2158
2159 TMSGD <
2160 LOAD tst Load microcode from Test 'tst' into CRAM
2161 LIST tst List microcode from Test 'tst'
2162 FLOAD Load microcode from file into CRAM
2163 FVERFY Verify microcode loaded from file
2164 FLIST List microcode in file
2165 033042 037 00 0 00 106534 FEXAM Examine microcode in file>
2166
2167 TMSGD <
2168 STATIS Print statistics
2169 033043 037 00 0 00 106623 ZSTATS Clear statistics>
2170
2171 TMSGD <
2172 CONFIG Determine/print configuration
2173 033044 037 00 0 00 106637 CONPNT Print configuration>
2174
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 48
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0222
2175 TMSGD <
2176 CCWPNT Print CCW list
2177 033045 037 00 0 00 106656 LOGPNT Print logout data>
2178
2179 TMSGD <
2180 PINIT Initialize PCB and queues
2181 SIDLE Start port/wait for IDLE loop
2182 BPACK Build packet
2183 IQUEUE Put packet on cmd queue
2184 PQUEUE n Print specified queue
2185 PPCB Print PCB
2186 WATCH Watch port and print events
2187 033046 037 00 0 00 106672 DEPPAK Deposit into packet>
2188
2189 TMSGD <
2190 DPLI lnk,data,rep Deposit PLI data
2191 EPLI lnk,rep Examine PLI data
2192 IPLI Initialize PILA/Link modules
2193
2194 ETBUFF Examine transmit buffers
2195 033047 037 00 0 00 106757 ERBUFF Examine receive buffers>
2196
2197 TMSGD <
2198 SWITCH Enter switch information
2199 SWPRIN Print current switch settings
2200
2201 (To complement switch setting, type switch name).
2202
2203 NOPNT ERSTOP TXTINH TRACE LOOPGM DSPEAR SDEBUG EDEBUG
2204 PNTLPT PALERS OPRSEL INHFLT LOOPTS UDEBUG LDEBUG
2205 033050 037 00 0 00 107027 DING RELIAB INHMSG RUNALL MDEBUG DDEBUG>
2206 033051 000000 000000 0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 49
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0223
2207
2208 ;#********************************************************************
2209 ;* DSET - Set/clear/print options
2210 ;#********************************************************************
2211
2212 DSET: MOVE 1,[FMSGD <
2213 SET ADDR LENGTH PATH DPORT INTERV WHAT
2214 CSR PAT RESPON PORT SUMMAR HELP
2215 PARITY PCB FORMAT IGNORE PATLIS
2216 033052 200 01 0 00 107172 EBUF FNAME XCTID PRINT>]
2217 033053 260 17 0 00 032761* GO .SARG ; get SIXBIT argument
2218 033054 263 17 0 00 000000 RTN ; error/altmode/question - exit
2219 JRST [FMSGCD <? Missing argument>
2220 GO FIOFF
2221 033055 254 00 0 00 104450 RTN]
2222 033056 200 01 0 00 032764* MOVE 1,ARGUM ; get sixbit command
2223 033057 201 02 0 00 033064 MOVEI 2,.STCMD ; get address of cmd list
2224 033060 260 17 0 00 032766* GO .COMM ; handle command decoding
2225 JRST [FMSGCD <? Unrecognizable - Type ? for help>
2226 GO FIOFF
2227 033061 254 00 0 00 104122 RTN] ; error return
2228 033062 260 17 1 01 033112 GO @.STDIS(1) ; dispatch to test
2229 033063 263 17 0 00 000000 RTN ; return to 'DEBUG>' prompt
2230
2231 033064 41 44 44 62 00 00 .STCMD: SIXBIT /ADDR/ ; set start address
2232 033065 43 63 62 00 00 00 SIXBIT /CSR/ ; set start data for CSR
2233 033066 60 41 62 51 64 71 SIXBIT /PARITY/ ; set/clr auto parity generation
2234 033067 45 42 65 46 00 00 SIXBIT /EBUF/ ; set/clr preserve EBUF
2235 033070 54 45 56 47 64 50 SIXBIT /LENGTH/ ; set length of text portion of packet
2236 033071 60 41 64 00 00 00 SIXBIT /PAT/ ; set data pattern
2237 033072 60 43 42 00 00 00 SIXBIT /PCB/ ; set/clr PCB CCW list in use by START
2238 033073 46 56 41 55 45 00 SIXBIT /FNAME/ ; set file name
2239 033074 62 45 63 60 57 56 SIXBIT /RESPON/ ; set/clr forced response
2240 033075 46 57 62 55 41 64 SIXBIT /FORMAT/ ; set format (COMPAT or HIDEN)
2241 033076 60 41 64 50 00 00 SIXBIT /PATH/ ; set path (Auto,0,1)
2242 033077 44 60 57 62 64 00 SIXBIT /DPORT/ ; set destination port number
2243 033100 60 57 62 64 00 00 SIXBIT /PORT/ ; set current port number
2244 033101 70 43 64 51 44 00 SIXBIT /XCTID/ ; set XCT-ID
2245 033102 60 62 51 56 64 00 SIXBIT /PRINT/ ; set text length to print
2246 033103 51 47 56 57 62 45 SIXBIT /IGNORE/ ; set/clr ignore SNDDG packets
2247 033104 63 65 55 55 41 62 SIXBIT /SUMMAR/ ; summary interval (seconds)
2248 033105 51 56 64 45 62 66 SIXBIT /INTERV/ ; interval (seconds)
2249 033106 60 41 64 54 51 63 SIXBIT /PATLIS/ ; list data patterns
2250 033107 67 50 41 64 00 00 SIXBIT /WHAT/ ; print options
2251 033110 50 45 54 60 00 00 SIXBIT /HELP/ ; set help message
2252 033111 000 00 0 00 000000 Z
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 50
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0224
2253
2254 033112 000000 033137 .STDIS: DSETAD ; ADDR - set start address
2255 033113 000000 033160 DSETCS ; CSR - set start CSR data
2256 033114 000000 033175 DSETPR ; PARITY - set/clr auto par generation
2257 033115 000000 033215 DSETEB ; EBUF - set/clr preserve EBUF flag
2258 033116 000000 033235 DSETLN ; LENGTH - set text length
2259 033117 000000 033255 DSETDA ; PAT - set data pattern
2260 033120 000000 033315 DSETPC ; PCB - set/clr PCB CCW list for START
2261 033121 000000 033335 DSETFN ; FNAME - set default ucode file name
2262 033122 000000 033366 DSETRE ; RESPON - set/clr forced response
2263 033123 000000 033406 DSETFO ; FORMAT - set compat/hiden format
2264 033124 000000 033430 DSETPA ; PATH - set path (Auto,0,1)
2265 033125 000000 033455 DSETPO ; DPORT - set destination port
2266 033126 000000 033514 DSETCN ; PORT - set current port
2267 033127 000000 033555 DSETXC ; XCTID - set XCT-ID
2268 033130 000000 033607 DSETPT ; PRINT - set text length to print
2269 033131 000000 033627 DSETIG ; IGNORE - set/clr ignore SNDDG packets
2270 033132 000000 033647 DSETSU ; SUMMAR - summary interval (seconds)
2271 033133 000000 033664 DSETIN ; INTERV - interval (seconds)
2272 033134 000000 033730 DSETPL ; PATLIS - list data patterns
2273 033135 000000 033701 DSETWH ; WHAT - print options
2274 033136 000000 033765 DSETHE ; HELP - set help message
2275
2276
2277 ;#********************************************************************
2278 ;* DSETAD - Set start address for START/SSTEP/CONT commands
2279 ;#********************************************************************
2280
2281 033137 210 01 0 00 107205 DSETAD: MOVN 1,[FMSGCD (SET ADDR addr (0-7777) <CR> or SET ADDR <CR>)]
2282 033140 260 17 0 00 031454* GO .OARG ; get argument
2283 033141 263 17 0 00 000000 RTN ; error/altmode/question - exit
2284 033142 254 00 0 00 033152 JRST DSADD1 ; no argument given
2285 033143 200 00 0 00 033056* MOVE ARGUM ; get argument
2286 033144 202 00 0 00 033776 MOVEM DSADDR ; save it
2287 033145 301 00 0 00 000000 CAIL 0 ; out of range?
2288 033146 301 00 0 00 007777 CAIL 7777
2289 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
2290 GO FIOFF
2291 033147 254 00 0 00 107217 RTN]
2292 033150 202 00 0 00 033776 MOVEM DSADDR ; no - save it
2293 033151 263 17 0 00 000000 RTN ; exit
2294
2295 033152 037 00 0 00 030242 DSADD1: PCRL
2296 033153 037 00 0 00 107222 DSADD2: TMSG <Start address ............ >
2297 033154 200 00 0 00 033776 MOVE DSADDR
2298 033155 037 16 0 00 000003 PNTOCS
2299 033156 037 00 0 00 030242 PCRL
2300 033157 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 51
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0225
2301
2302 ;#********************************************************************
2303 ;* DSETCS - Set start CSR data for START/CONT commands
2304 ;#********************************************************************
2305
2306 033160 210 01 0 00 107240 DSETCS: MOVN 1,[FMSGCD (SET CSR xxxxxx <CR> or SET CSR <CR>)]
2307 033161 260 17 0 00 033140* GO .OARG ; get argument
2308 033162 263 17 0 00 000000 RTN ; error/altmode/question - exit
2309 033163 254 00 0 00 033167 JRST DSCSR1 ; no argument given
2310 033164 200 00 0 00 033143* MOVE ARGUM ; get argument
2311 033165 202 00 0 00 033777 MOVEM DSDATA ; save it
2312 033166 263 17 0 00 000000 RTN ; exit
2313
2314 033167 037 00 0 00 030242 DSCSR1: PCRL
2315 033170 037 00 0 00 107241 DSCSR2: TMSG <Start CSR data ........... >
2316 033171 200 00 0 00 033777 MOVE DSDATA
2317 033172 037 16 0 00 000003 PNTOCS
2318 033173 037 00 0 00 030242 PCRL
2319 033174 263 17 0 00 000000 RTN ; exit
2320
2321
2322 ;#********************************************************************
2323 ;* DSETPR - Set/clear automatic parity generation for load cram command
2324 ;#********************************************************************
2325
2326 033175 210 01 0 00 107257 DSETPR: MOVN 1,[FMSGCD (SET PAR NO or YES or SET PAR <CR>)]
2327 033176 260 17 0 00 033053* GO .SARG ; get argument
2328 033177 263 17 0 00 000000 RTN ; error/altmode/question - exit
2329 033200 254 00 0 00 033206 JRST DSPAR1 ; no argument given
2330 033201 260 17 0 00 000000* GO DECYN ; decode argument Y or N
2331 033202 263 17 0 00 000000 RTN ; error - unrecognized
2332 JRST [SETZM PARFLG ; no - clear the flag
2333 033203 254 00 0 00 107260 RTN]
2334 033204 476 00 0 00 034000 SETOM PARFLG ; yes - set it
2335 033205 263 17 0 00 000000 RTN ; exit
2336
2337 033206 037 00 0 00 030242 DSPAR1: PCRL
2338 033207 037 00 0 00 107262 DSPAR2: TMSG <Auto parity generation ... >
2339 033210 332 00 0 00 034000 SKIPE PARFLG ; set?
2340 033211 037 00 0 00 107270 TMSGD <YES>
2341 033212 336 00 0 00 034000 SKIPN PARFLG ; set?
2342 033213 037 00 0 00 107272 TMSGD <NO>
2343 033214 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 52
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0226
2344
2345 ;#********************************************************************
2346 ;* DSETEB - Set/clear preserve EBUF for single stepping
2347 ;#********************************************************************
2348
2349 033215 210 01 0 00 107303 DSETEB: MOVN 1,[FMSGCD (SET EBUF NO or YES or SET EBUF <CR>)]
2350 033216 260 17 0 00 033176* GO .SARG ; get argument
2351 033217 263 17 0 00 000000 RTN ; error/altmode/question - exit
2352 033220 254 00 0 00 033226 JRST DSEBU1 ; no argument given
2353 033221 260 17 0 00 033201* GO DECYN ; decode argument Y or N
2354 033222 263 17 0 00 000000 RTN ; error - unrecognized
2355 JRST [SETZM PRSFLG ; no - clear the flag
2356 033223 254 00 0 00 107304 RTN]
2357 033224 476 00 0 00 034001 SETOM PRSFLG ; yes - set it
2358 033225 263 17 0 00 000000 RTN ; exit
2359
2360 033226 037 00 0 00 030242 DSEBU1: PCRL
2361 033227 037 00 0 00 107306 DSEBU2: TMSG <EBUF preserved in sstep .. >
2362 033230 332 00 0 00 034001 SKIPE PRSFLG ; set?
2363 033231 037 00 0 00 107270 TMSGD <YES>
2364 033232 336 00 0 00 034001 SKIPN PRSFLG ; set?
2365 033233 037 00 0 00 107272 TMSGD <NO>
2366 033234 263 17 0 00 000000 RTN ; return
2367
2368
2369 ;#********************************************************************
2370 ;* DSETLN - Set length of text portion of packet
2371 ;#********************************************************************
2372
2373 033235 210 01 0 00 107327 DSETLN: MOVN 1,[FMSGCD (SET LEN length (1-1000. bytes) or SET LEN <CR>)]
2374 033236 260 17 0 00 031704* GO .DARG ; get argument
2375 033237 263 17 0 00 000000 RTN ; error/altmode/question - exit
2376 033240 254 00 0 00 033247 JRST DSLEN1 ; no argument given
2377 033241 200 00 0 00 033164* MOVE ARGUM ; get argument
2378 033242 301 00 0 00 000000 CAIL 0 ; argument in range 0-1000?
2379 033243 303 00 0 00 001750 CAILE ^D1000
2380 JRST [FMSGCD <? Out of range 0-1000. bytes>
2381 GO FIOFF
2382 033244 254 00 0 00 107337 RTN]
2383 033245 202 00 0 00 034002 MOVEM DSBYTE ; save it
2384 033246 263 17 0 00 000000 RTN ; exit
2385
2386 033247 037 00 0 00 030242 DSLEN1: PCRL
2387 033250 037 00 0 00 107342 DSLEN2: TMSG <Text length (bytes) ...... >
2388 033251 200 00 0 00 034002 MOVE DSBYTE
2389 033252 037 15 0 00 000000 PNTDEC
2390 033253 037 00 0 00 104543 TMSGD <.>
2391 033254 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 53
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0227
2392
2393 ;#********************************************************************
2394 ;* DSETDA - Set data pattern to insert in buffer
2395 ;#********************************************************************
2396
2397 033255 200 01 0 00 107365 DSETDA: MOVE 1,[FMSGCD (SET PAT number (1-126 octal)(126=opr sel) or SET PAT <CR>)]
2398 033256 260 17 0 00 033161* GO .OARG ; get argument
2399 033257 263 17 0 00 000000 RTN ; error/altmode/question - exit
2400 033260 254 00 0 00 033302 JRST DSDAT1 ; no argument given
2401 033261 200 00 0 00 033241* MOVE ARGUM ; get argument
2402 033262 301 00 0 00 000001 CAIL 1 ; in range?
2403 033263 303 00 0 00 000126 CAILE 126
2404 JRST [FMSGCD <? Out of range 1-126 octal>
2405 GO FIOFF
2406 033264 254 00 0 00 107375 RTN]
2407 033265 202 00 0 00 034003 MOVEM DSPAT ; save it
2408 033266 302 00 0 00 000126 CAIE 126 ; operator selected pattern?
2409 033267 254 00 0 00 033276 JRST DSDATX ; no - exit
2410 033270 200 01 0 00 107406 MOVE 1,[FMSGCD <SET PAT 126,data (CR)>]
2411 033271 260 17 0 00 033256* GO .OARG ; get argument
2412 033272 263 17 0 00 000000 RTN ; error/altmode/question - exit
2413 JRST [FMSGCD <? Missing argument>
2414 GO FIOFF
2415 033273 254 00 0 00 104450 RTN]
2416 033274 200 00 0 00 033261* MOVE ARGUM ; get argument
2417 033275 202 00 0 00 034004 MOVEM DSTPAT ; save it
2418 033276 260 17 0 00 000000* DSDATX: GO LASARG ; check for last argument
2419 033277 263 17 0 00 000000 RTN ; exit
2420 033300 037 01 0 00 107400 FMSGCD <SET PAT 126,data (CR)>
2421 033301 263 17 0 00 000000 RTN ; exit
2422
2423 033302 037 00 0 00 030242 DSDAT1: PCRL
2424 033303 037 00 0 00 107407 DSDAT2: TMSG <Data pattern (#) ......... >
2425 033304 200 01 0 00 034003 MOVE 1,DSPAT ; get pattern
2426 033305 256 00 0 01 000000* XCT PATPNT(1) ; ...
2427 033306 302 01 0 00 000126 CAIE 1,126 ; operator selected pattern?
2428 033307 254 00 0 00 033313 JRST DSDAT3 ; no - continue
2429 033310 037 00 0 00 107415 TMSG < - > ; yes - print it out
2430 033311 200 00 0 00 034004 MOVE DSTPAT
2431 033312 037 13 0 00 000000 PNTHW
2432 033313 037 00 0 00 030242 DSDAT3: PCRL
2433 033314 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 54
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0228
2434
2435 ;#********************************************************************
2436 ;* DSETPC - Set/clear PCB CCW list made up for START command
2437 ;#********************************************************************
2438
2439 033315 210 01 0 00 107426 DSETPC: MOVN 1,[FMSGCD (SET PCB NO or YES or SET PCB <CR>)]
2440 033316 260 17 0 00 033216* GO .SARG ; get argument
2441 033317 263 17 0 00 000000 RTN ; error/altmode/question - exit
2442 033320 254 00 0 00 033326 JRST DSPCB1 ; no argument given
2443 033321 260 17 0 00 033221* GO DECYN ; decode argument Y or N
2444 033322 263 17 0 00 000000 RTN ; error - unrecognized
2445 JRST [SETZM PCBFLG ; no - clear the flag
2446 033323 254 00 0 00 107427 RTN]
2447 033324 476 00 0 00 034005 SETOM PCBFLG ; yes - set it
2448 033325 263 17 0 00 000000 RTN ; exit
2449
2450 033326 037 00 0 00 030242 DSPCB1: PCRL
2451 033327 037 00 0 00 107431 DSPCB2: TMSG <Setup PCB CCW on START cmd >
2452 033330 332 00 0 00 034005 SKIPE PCBFLG ; set?
2453 033331 037 00 0 00 107270 TMSGD <YES>
2454 033332 336 00 0 00 034005 SKIPN PCBFLG ; set?
2455 033333 037 00 0 00 107272 TMSGD <NO>
2456 033334 263 17 0 00 000000 RTN ; return
2457
2458 ;#********************************************************************
2459 ;* DSETFN - Set default microcode file name
2460 ;#********************************************************************
2461
2462 033335 200 01 0 00 107451 DSETFN: MOVE 1,[FMSGCD (SET FNAME file ext <CR> or SET FNAME <CR>)]
2463 033336 260 17 0 00 033316* GO .SARG ; get argument (file name)
2464 033337 263 17 0 00 000000 RTN ; error/altmode/question - exit
2465 033340 254 00 0 00 033355 JRST DSFNM1 ; no argument - print it out
2466 033341 200 00 0 00 033274* MOVE ARGUM ; get argument
2467 033342 202 00 0 00 121004' MOVEM TMP1# ; save it
2468 033343 210 01 0 00 107451 MOVN 1,[FMSGCD (SET FNAME file ext <CR> or SET FNAME <CR>)]
2469 033344 260 17 0 00 033336* GO .SARG ; get argument (extension)
2470 033345 263 17 0 00 000000 RTN ; error/altmode/question - exit
2471 033346 254 00 0 00 033351 JRST DSFNM0 ; no extension given - exit
2472 033347 200 00 0 00 033341* MOVE ARGUM ; get 2nd argument
2473 033350 202 00 0 00 044226 MOVEM FNAME+1 ; save it
2474 033351 200 00 0 00 121004' DSFNM0: MOVE TMP1 ; get first argument
2475 033352 202 00 0 00 044225 MOVEM FNAME ; save it
2476 033353 402 00 0 00 044231 SETZM CNAME ; clear 'CRAM loaded' ucode flag
2477 033354 263 17 0 00 000000 RTN ; return
2478
2479 033355 037 00 0 00 030242 DSFNM1: PCRL
2480 033356 037 00 0 00 107452 DSFNM2: TMSG <Microcode file name ...... >
2481 033357 200 00 0 00 044225 MOVE FNAME ; get name
2482 033360 037 00 0 00 000002 PNTSIX ; print it
2483 033361 037 00 0 00 107460 TMSG <.>
2484 033362 200 00 0 00 044226 MOVE FNAME+1 ; get extension
2485 033363 037 00 0 00 000002 PNTSIX ; print it
2486 033364 037 00 0 00 030242 PCRL
2487 033365 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 55
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0229
2488
2489 ;#********************************************************************
2490 ;* DSETRE - Set/clr forced response
2491 ;#********************************************************************
2492
2493 033366 210 01 0 00 107472 DSETRE: MOVN 1,[FMSGCD (SET RESPON NO or YES or SET RESPON <CR>)]
2494 033367 260 17 0 00 033344* GO .SARG ; get argument
2495 033370 263 17 0 00 000000 RTN ; error/altmode/question - exit
2496 033371 254 00 0 00 033377 JRST DSRES1 ; no argument given
2497 033372 260 17 0 00 033321* GO DECYN ; decode argument Y or N
2498 033373 263 17 0 00 000000 RTN ; error - unrecognized
2499 JRST [SETZM RSPFLG ; no - clear the flag
2500 033374 254 00 0 00 107473 RTN]
2501 033375 476 00 0 00 034006 SETOM RSPFLG ; yes - set it
2502 033376 263 17 0 00 000000 RTN ; exit
2503
2504 033377 037 00 0 00 030242 DSRES1: PCRL
2505 033400 037 00 0 00 107475 DSRES2: TMSG <Request Packet Response .. >
2506 033401 332 00 0 00 034006 SKIPE RSPFLG ; set?
2507 033402 037 00 0 00 107270 TMSGD <YES>
2508 033403 336 00 0 00 034006 SKIPN RSPFLG ; set?
2509 033404 037 00 0 00 107272 TMSGD <NO>
2510 033405 263 17 0 00 000000 RTN ; return
2511
2512
2513 ;#********************************************************************
2514 ;* DSETFO - Set format (COMPAT,HIDEN)
2515 ;#********************************************************************
2516
2517 033406 210 01 0 00 107515 DSETFO: MOVN 1,[FMSGCD (SET FORMAT COMPAT or HIDEN or SET FORMAT <CR>)]
2518 033407 260 17 0 00 033367* GO .SARG ; get argument
2519 033410 263 17 0 00 000000 RTN ; error/altmode/question - exit
2520 033411 254 00 0 00 033420 JRST DSFOR1 ; no argument given
2521 033412 200 01 0 00 033347* MOVE 1,ARGUM ; get command into AC1
2522 033413 201 02 0 00 033425 MOVEI 2,DSFORL ; get address of cmd list
2523 033414 260 17 0 00 033060* GO .COMM ; handle command decoding
2524 JRST [FMSGCD <? Unrecognized argument>
2525 033415 254 00 0 00 107524 RTN]
2526 033416 202 01 0 00 034007 MOVEM 1,FORSEL ; save value
2527 033417 263 17 0 00 000000 RTN ; return
2528
2529 033420 037 00 0 00 030242 DSFOR1: PCRL
2530 033421 037 00 0 00 107526 DSFOR2: TMSG <Datagram Format .......... >
2531 033422 200 01 0 00 034007 MOVE 1,FORSEL ; get path select value
2532 XCT [TMSGD <COMPAT> ; print it
2533 033423 256 00 0 01 107540 TMSGD <HIDEN>](1)
2534 033424 263 17 0 00 000000 RTN ; return
2535
2536 033425 43 57 55 60 41 64 DSFORL: SIXBIT /COMPAT/
2537 033426 50 51 44 45 56 00 SIXBIT /HIDEN/
2538 033427 000 00 0 00 000000 Z
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 56
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0230
2539
2540 ;#********************************************************************
2541 ;* DSETPA - Set path (Auto,A,B)
2542 ;#********************************************************************
2543
2544 033430 210 01 0 00 107553 DSETPA: MOVN 1,[FMSGCD (SET PATH AUTO or A or B or SET PATH <CR>)]
2545 033431 260 17 0 00 033407* GO .SARG ; get argument
2546 033432 263 17 0 00 000000 RTN ; error/altmode/question - exit
2547 033433 254 00 0 00 033444 JRST DSPTH1 ; no argument given
2548 033434 200 01 0 00 033412* MOVE 1,ARGUM ; get command into AC1
2549 033435 201 02 0 00 033451 MOVEI 2,DSPTHL ; get address of cmd list
2550 033436 260 17 0 00 033414* GO .COMM ; handle command decoding
2551 JRST [FMSGCD <? Unrecognized argument>
2552 033437 254 00 0 00 107524 RTN]
2553 033440 202 01 0 00 034010 MOVEM 1,PATSEL ; save value
2554 033441 201 01 0 00 000002 MOVEI 1,2 ; invert from 2-0 to 0-2
2555 033442 276 01 0 00 034010 SUBM 1,PATSEL ; and save it
2556 033443 263 17 0 00 000000 RTN ; return
2557
2558 033444 037 00 0 00 030242 DSPTH1: PCRL
2559 033445 037 00 0 00 107554 DSPTH2: TMSG <Path Select .............. >
2560 033446 200 01 0 00 034010 MOVE 1,PATSEL ; get path select value
2561 XCT [TMSGD <AUTO> ; print it
2562 TMSGD <A>
2563 033447 256 00 0 01 107566 TMSGD <B>](1)
2564 033450 263 17 0 00 000000 RTN ; return
2565
2566 033451 42 00 00 00 00 00 DSPTHL: SIXBIT /B/
2567 033452 41 00 00 00 00 00 SIXBIT /A/
2568 033453 41 65 64 57 00 00 SIXBIT /AUTO/
2569 033454 000 00 0 00 000000 Z
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 57
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0231
2570
2571 ;#********************************************************************
2572 ;* DSETPO - Set destination port number
2573 ;#********************************************************************
2574
2575 033455 210 01 0 00 107604 DSETPO: MOVN 1,[FMSGCD <SET DPORT n or SET DPORT SELF or SET DPORT (CR)>]
2576 033456 260 17 0 00 033431* GO .SARG ; get argument
2577 033457 263 17 0 00 000000 RTN ; error/altmode/question - exit
2578 033460 254 00 0 00 033506 JRST DSPOR1 ; no argument given
2579 033461 200 01 0 00 033434* MOVE 1,ARGUM ; get argument
2580 033462 260 17 0 00 031070* GO CONVSX ; convert to octal if possible
2581 033463 254 00 0 00 033471 JRST DSPOR0 ; failed - check if typed SELF
2582 033464 301 01 0 00 000000 CAIL 1,0 ; argument in range 0-377?
2583 033465 303 01 0 00 000377 CAILE 1,377
2584 JRST [FMSGCD <? Out of range 0-377>
2585 GO FIOFF
2586 033466 254 00 0 00 107612 RTN]
2587 033467 202 01 0 00 034011 MOVEM 1,DPORT ; save it
2588 033470 263 17 0 00 000000 RTN ; exit
2589
2590 ; Check for typed SELF
2591
2592 033471 200 00 0 00 033461* DSPOR0: MOVE ARGUM ; get argument
2593 033472 312 00 0 00 107615 CAME [SIXBIT /SELF/] ; match?
2594 033473 316 00 0 00 107616 CAMN [SIXBIT /SEL/] ; match?
2595 033474 254 00 0 00 033503 JRST DSPOR3 ; yes - continue
2596 033475 312 00 0 00 107617 CAME [SIXBIT /SE/] ; match?
2597 033476 316 00 0 00 107620 CAMN [SIXBIT /S/] ; match?
2598 033477 254 00 0 00 033503 JRST DSPOR3 ; yes - continue
2599 033500 037 00 0 00 107621 TMSGCD <? Unrecognized input> ; no - error - print out such
2600 033501 260 17 0 00 032024* GO FIOFF ; then shut off file input
2601 033502 263 17 0 00 000000 RTN ; and exit
2602 033503 260 17 0 00 065076 DSPOR3: GO RDNODE ; read node address
2603 GO [TMSGCD <? Could not read our node address>
2604 GO FIOFF
2605 033504 260 17 0 00 107636 RTN]
2606 033505 202 01 0 00 034011 MOVEM 1,DPORT ; save it
2607
2608 033506 037 00 0 00 030242 DSPOR1: PCRL
2609 033507 037 00 0 00 107641 DSPOR2: TMSG <Destination port number .. >
2610 033510 200 00 0 00 034011 MOVE DPORT
2611 033511 037 16 0 00 000003 PNTOCS
2612 033512 037 00 0 00 030242 PCRL
2613 033513 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 58
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0232
2614
2615 ;#********************************************************************
2616 ;* DSETCN - Set current port number
2617 ;#********************************************************************
2618
2619 033514 210 01 0 00 107661 DSETCN: MOVN 1,[FMSGCD <SET PORT n or SET PORT SELF or SET PORT (CR)>]
2620 033515 260 17 0 00 033456* GO .SARG ; get argument
2621 033516 263 17 0 00 000000 RTN ; error/altmode/question - exit
2622 033517 254 00 0 00 033547 JRST DSCPO1 ; no argument given
2623 033520 200 01 0 00 033471* MOVE 1,ARGUM ; get argument
2624 033521 260 17 0 00 033462* GO CONVSX ; convert to octal if possible
2625 033522 254 00 0 00 033531 JRST DSCPO0 ; failed - check if typed SELF
2626 033523 301 01 0 00 000000 CAIL 1,0 ; argument in range 0-377?
2627 033524 303 01 0 00 000377 CAILE 1,377
2628 JRST [FMSGCD <? Out of range 0-377>
2629 GO FIOFF
2630 033525 254 00 0 00 107612 RTN]
2631 033526 202 01 0 00 034013 MOVEM 1,CPORT ; save it
2632 033527 202 01 0 00 034012 MOVEM 1,SPORT ; save it
2633 033530 263 17 0 00 000000 RTN ; exit
2634
2635 ; Check for typed SELF
2636
2637 033531 200 00 0 00 033520* DSCPO0: MOVE ARGUM ; get argument
2638 033532 312 00 0 00 107615 CAME [SIXBIT /SELF/] ; match?
2639 033533 316 00 0 00 107616 CAMN [SIXBIT /SEL/] ; match?
2640 033534 254 00 0 00 033543 JRST DSCPO3 ; yes - continue
2641 033535 312 00 0 00 107617 CAME [SIXBIT /SE/] ; match?
2642 033536 316 00 0 00 107620 CAMN [SIXBIT /S/] ; match?
2643 033537 254 00 0 00 033543 JRST DSCPO3 ; yes - continue
2644 033540 037 00 0 00 107621 TMSGCD <? Unrecognized input> ; no - error - print out such
2645 033541 260 17 0 00 033501* GO FIOFF ; then shut off file input
2646 033542 263 17 0 00 000000 RTN ; and exit
2647 033543 260 17 0 00 065076 DSCPO3: GO RDNODE ; read node address
2648 GO [TMSGCD <? Could not read our node address>
2649 GO FIOFF
2650 033544 260 17 0 00 107636 RTN]
2651 033545 202 01 0 00 034012 MOVEM 1,SPORT ; save it
2652 033546 202 01 0 00 034013 MOVEM 1,CPORT
2653
2654 033547 037 00 0 00 030242 DSCPO1: PCRL
2655 033550 037 00 0 00 107662 DSCPO2: TMSG <Current port number ...... >
2656 033551 200 00 0 00 034013 MOVE CPORT
2657 033552 037 16 0 00 000003 PNTOCS
2658 033553 037 00 0 00 030242 PCRL
2659 033554 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 59
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0233
2660
2661 ;#********************************************************************
2662 ;* DSETXC - Set XCT-ID
2663 ;#********************************************************************
2664
2665 033555 200 01 0 00 107674 DSETXC: MOVE 1,[FMSGCD (SET XCTID n,n or SET XCTID <CR>)]
2666 033556 260 17 0 00 033271* GO .OARG ; get argument
2667 033557 263 17 0 00 000000 RTN ; error/altmode/question - exit
2668 033560 254 00 0 00 033574 JRST DSXCT1 ; no argument given
2669 033561 200 00 0 00 033531* MOVE ARGUM ; get argument
2670 033562 242 00 0 00 000004 LSH 4 ; position properly
2671 033563 202 00 0 00 034014 MOVEM DXCTID ; save it
2672 033564 210 01 0 00 107674 MOVN 1,[FMSGCD (SET XCTID n,n or SET XCTID <CR>)]
2673 033565 260 17 0 00 033556* GO .OARG ; get argument
2674 033566 263 17 0 00 000000 RTN ; error/altmode/question - exit
2675 JRST [FMSGCD <? Missing 2nd argument>
2676 GO FIOFF
2677 033567 254 00 0 00 107703 RTN]
2678 033570 200 00 0 00 033561* MOVE ARGUM ; get argument
2679 033571 242 00 0 00 000004 LSH 4 ; position properly
2680 033572 202 00 0 00 034015 MOVEM DXCTID+1 ; save it
2681 033573 263 17 0 00 000000 RTN ; exit
2682
2683 033574 037 00 0 00 030242 DSXCT1: PCRL
2684 033575 037 00 0 00 107706 DSXCT2: TMSG <XCT-ID ................... >
2685 033576 200 00 0 00 034014 MOVE DXCTID
2686 033577 242 00 0 00 777774 LSH -4
2687 033600 037 16 0 00 000003 PNTOCS
2688 033601 037 00 0 00 000040 PSP
2689 033602 200 00 0 00 034015 MOVE DXCTID+1
2690 033603 242 00 0 00 777774 LSH -4
2691 033604 037 16 0 00 000003 PNTOCS
2692 033605 037 00 0 00 030242 PCRL
2693 033606 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 60
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0234
2694
2695 ;#********************************************************************
2696 ;* DSETPT - Set length of text portion to print
2697 ;#********************************************************************
2698
2699 033607 210 01 0 00 107726 DSETPT: MOVN 1,[FMSGCD (SET PRINT nwords (1-250.) or SET PRINT <CR>)]
2700 033610 260 17 0 00 033236* GO .DARG ; get argument
2701 033611 263 17 0 00 000000 RTN ; error/altmode/question - exit
2702 033612 254 00 0 00 033621 JRST DSPNT1 ; no argument given
2703 033613 200 00 0 00 033570* MOVE ARGUM ; get argument
2704 033614 303 00 0 00 000000 CAILE 0 ; argument in range 1-1000?
2705 033615 303 00 0 00 000372 CAILE ^D250
2706 JRST [FMSGCD <? Out of range 1-250. words>
2707 GO FIOFF
2708 033616 254 00 0 00 107736 RTN]
2709 033617 202 00 0 00 034016 MOVEM DSPRIN ; save it
2710 033620 263 17 0 00 000000 RTN ; exit
2711
2712 033621 037 00 0 00 030242 DSPNT1: PCRL
2713 033622 037 00 0 00 107741 DSPNT2: TMSG <Text to print (words) .... >
2714 033623 200 00 0 00 034016 MOVE DSPRIN
2715 033624 037 15 0 00 000000 PNTDEC
2716 033625 037 00 0 00 104543 TMSGD <.>
2717 033626 263 17 0 00 000000 RTN ; exit
2718
2719
2720 ;#********************************************************************
2721 ;* DSETIG - Set/clr ignore other port SNDDG packets
2722 ;#********************************************************************
2723
2724 033627 210 01 0 00 107760 DSETIG: MOVN 1,[FMSGCD (SET IGNORE NO or YES or SET IGNORE <CR>)]
2725 033630 260 17 0 00 033515* GO .SARG ; get argument
2726 033631 263 17 0 00 000000 RTN ; error/altmode/question - exit
2727 033632 254 00 0 00 033640 JRST DSIGN1 ; no argument given
2728 033633 260 17 0 00 033372* GO DECYN ; decode argument Y or N
2729 033634 263 17 0 00 000000 RTN ; error - unrecognized
2730 JRST [SETZM IGNFLG ; no - clear the flag
2731 033635 254 00 0 00 107761 RTN]
2732 033636 476 00 0 00 034017 SETOM IGNFLG ; yes - set it
2733 033637 263 17 0 00 000000 RTN ; exit
2734
2735 033640 037 00 0 00 030242 DSIGN1: PCRL
2736 033641 037 00 0 00 107763 DSIGN2: TMSG <Ignore other SNDDG packets >
2737 033642 332 00 0 00 034017 SKIPE IGNFLG ; set?
2738 033643 037 00 0 00 107270 TMSGD <YES>
2739 033644 336 00 0 00 034017 SKIPN IGNFLG ; set?
2740 033645 037 00 0 00 107272 TMSGD <NO>
2741 033646 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 61
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0235
2742
2743 ;#********************************************************************
2744 ;* DSETSU - Set summary interval (seconds)
2745 ;#********************************************************************
2746
2747 033647 210 01 0 00 110002 DSETSU: MOVN 1,[FMSGCD (SET SUMMAR seconds or SET SUMMAR <CR>)]
2748 033650 260 17 0 00 033610* GO .DARG ; get argument
2749 033651 263 17 0 00 000000 RTN ; error/altmode/question - exit
2750 033652 254 00 0 00 033656 JRST DSSUM1 ; no argument given
2751 033653 200 00 0 00 033613* MOVE ARGUM ; get argument
2752 033654 202 00 0 00 034020 MOVEM DSSUM ; save it
2753 033655 263 17 0 00 000000 RTN ; exit
2754
2755 033656 037 00 0 00 030242 DSSUM1: PCRL
2756 033657 037 00 0 00 110003 DSSUM2: TMSG <Summary interval (seconds) >
2757 033660 200 00 0 00 034020 MOVE DSSUM
2758 033661 037 15 0 00 000000 PNTDEC
2759 033662 037 00 0 00 104543 TMSGD <.>
2760 033663 263 17 0 00 000000 RTN ; exit
2761
2762
2763 ;#********************************************************************
2764 ;* DSETIN - Set interval (seconds)
2765 ;#********************************************************************
2766
2767 033664 210 01 0 00 110023 DSETIN: MOVN 1,[FMSGCD (SET INTERV milliseconds or SET INTERV <CR>)]
2768 033665 260 17 0 00 033650* GO .DARG ; get argument
2769 033666 263 17 0 00 000000 RTN ; error/altmode/question - exit
2770 033667 254 00 0 00 033673 JRST DSINT1 ; no argument given
2771 033670 200 00 0 00 033653* MOVE ARGUM ; get argument
2772 033671 202 00 0 00 034021 MOVEM DSINT ; save it
2773 033672 263 17 0 00 000000 RTN ; exit
2774
2775 033673 037 00 0 00 030242 DSINT1: PCRL
2776 033674 037 00 0 00 110024 DSINT2: TMSG <Interval (milliseconds) .. >
2777 033675 200 00 0 00 034021 MOVE DSINT
2778 033676 037 15 0 00 000000 PNTDEC
2779 033677 037 00 0 00 104543 TMSGD <.>
2780 033700 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 62
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0236
2781
2782 ;#********************************************************************
2783 ;* DSETWH - Print all selected options
2784 ;#********************************************************************
2785
2786 033701 260 17 0 00 033276* DSETWH: GO LASARG ; check for last argument
2787 033702 263 17 0 00 000000 RTN ; error - exit
2788 JRST [FMSGCD (SET WHAT <CR>) ; ? typed - print msg and
2789 033703 254 00 0 00 110036 RTN] ; return
2790 033704 037 00 0 00 110040 TMSGCD <Options:>
2791 033705 260 17 0 00 033152 GO DSADD1 ; print address
2792 033706 260 17 0 00 033170 GO DSCSR2 ; print CSR data
2793 033707 260 17 0 00 033207 GO DSPAR2 ; print parity flag
2794 033710 260 17 0 00 033227 GO DSEBU2 ; print EBUF flag
2795 033711 260 17 0 00 033250 GO DSLEN2 ; print length
2796 033712 260 17 0 00 033303 GO DSDAT2 ; print data pattern
2797 033713 260 17 0 00 033327 GO DSPCB2 ; print PCB flag
2798 033714 260 17 0 00 033356 GO DSFNM2 ; print file name selected
2799 033715 260 17 0 00 033400 GO DSRES2 ; print response flag
2800 033716 260 17 0 00 033421 GO DSFOR2 ; print format select
2801 033717 260 17 0 00 033445 GO DSPTH2 ; print path select
2802 033720 260 17 0 00 033507 GO DSPOR2 ; print destination port
2803 033721 260 17 0 00 033550 GO DSCPO2 ; print current port
2804 033722 260 17 0 00 033575 GO DSXCT2 ; print XCT-ID
2805 033723 260 17 0 00 033622 GO DSPNT2 ; print length to print
2806 033724 260 17 0 00 033641 GO DSIGN2 ; print ignore flag
2807 033725 260 17 0 00 033657 GO DSSUM2 ; print summary interval
2808 033726 260 17 0 00 033674 GO DSINT2 ; print interval
2809 033727 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 63
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0237
2810
2811 ;#********************************************************************
2812 ;* DSETPL - List data patterns
2813 ;#********************************************************************
2814
2815 033730 200 01 0 00 110054 DSETPL: MOVE 1,[FMSGCD <SET PATLIS num1,num2 or SET PATLIS (CR)>]
2816 033731 260 17 0 00 033565* GO .OARG ; get argument
2817 033732 263 17 0 00 000000 RTN ; error/altmode/question - exit
2818 JRST [MOVE PAT,DSPAT ; no argument - just print
2819 MOVEM PAT,PAT1# ; current selection
2820 MOVEM PAT,PAT2#
2821 033733 254 00 0 00 110055 JRST DSETPP]
2822 033734 200 00 0 00 033670* MOVE ARGUM ; get argument
2823 033735 202 00 0 00 120756' MOVEM PAT1# ; save it
2824
2825 033736 200 01 0 00 110054 MOVE 1,[FMSGCD <SET PATLIS num1,num2 or SET PATLIS (CR)>]
2826 033737 260 17 0 00 033731* GO .OARG ; get argument
2827 033740 263 17 0 00 000000 RTN ; error/altmode/question - exit
2828 JRST [MOVE PAT,PAT1 ; no 2nd argument - just print
2829 MOVEM PAT,PAT2 ; one translation
2830 033741 254 00 0 00 110061 JRST DSETPP]
2831 033742 200 00 0 00 033734* MOVE ARGUM ; get argument
2832 033743 202 00 0 00 120757' MOVEM PAT2 ; save it
2833 033744 200 01 0 00 120757' MOVE 1,PAT2 ; get argument
2834 033745 274 01 0 00 120756' SUB 1,PAT1 ; see if range ok
2835 JUMPL 1,[FMSGCD <? Range nonsensical>
2836 GO FIOFF
2837 033746 321 01 0 00 110071 RTN]
2838
2839 033747 200 14 0 00 120756' DSETPP: MOVE PAT,PAT1 ; get pattern
2840 033750 301 14 0 00 000001 CAIL PAT,1 ; in range?
2841 033751 303 14 0 00 000126 CAILE PAT,126
2842 JRST [FMSGCD <? Out of range 1-126 octal>
2843 GO FIOFF
2844 033752 254 00 0 00 107375 RTN]
2845 033753 037 00 0 00 030242 PCRL
2846 033754 256 00 0 14 033305* XCT PATPNT(PAT) ; print it
2847 033755 350 00 0 00 000014 AOS PAT ; increment pattern number
2848 033756 037 07 0 00 000003 TTALTM ; altmode typed?
2849 033757 334 00 0 00 000000 SKIPA ; no - continue
2850 033760 254 00 0 00 033763 JRST DSETPX ; yes - return
2851 033761 317 14 0 00 120757' CAMG PAT,PAT2 ; done yet?
2852 033762 254 00 0 00 033750 JRST DSETPP+1 ; no - loop till done
2853 033763 037 00 0 00 030243 DSETPX: PCRL2 ; final CRLF
2854 033764 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 64
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0238
2855
2856 ;#********************************************************************
2857 ;* DSETHE - Set help message
2858 ;#********************************************************************
2859
2860 033765 200 01 0 00 110100 DSETHE: MOVE 1,[FMSGCD (SET HELP <CR>)]
2861 033766 260 17 0 00 032342* GO CHKARG ; check for argument
2862 033767 263 17 0 00 000000 RTN ; error - exit
2863 033770 037 01 0 00 000026 PFORCE ; handle Control-O
2864 033771 037 00 1 00 033773 PNTMSG @DSETHL ; print text
2865 033772 263 17 0 00 000000 RTN ; ask for a test
2866
2867 033773 DSETHL: [ASCII ^
2868 SET Command: (* Arg - YES or NO)
2869
2870 SET ADDR adr - set start address
2871 SET CSR data - set start CSR data
2872 SET PARITY arg* - set/clr auto par generation
2873 SET EBUF arg* - set/clr preserve EBUF flag
2874 SET LENGTH len - set datagram length in bytes
2875 SET PAT n - set data pattern
2876 033773 000000 110101 SET PCB arg* - set/clear PCB CCW list for START ^]
2877 [ASCII ^
2878 SET FNAME name ext - set default ucode file name
2879 SET RESPON arg* - set/clr forced packet response
2880 SET FORMAT arg - set compat/hiden format of datagrams
2881 SET PATH - set path select
2882 SET PORT - set our port #
2883 SET DPORT - set destination port #
2884 SET XCTID - set XCT-ID
2885 033774 000000 110206 SET PRINT - set length of text to print ^]
2886 [ASCIZ ^
2887 SET IGNORE arg* - set/clr ignore SNDDG packets flag
2888 SET SUMMAR - set summary interval (seconds)
2889 SET INTERV - set interval (seconds)
2890 SET PATLIS arg - list data patterns
2891 SET WHAT - print options
2892 SET HELP - print this
2893 033775 000000 110313 ^]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 65
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0239
2894
2895 ;#********************************************************************
2896 ;* Program Flags
2897 ;#********************************************************************
2898
2899 033776 000000 000000 DSADDR: 0 ; start address initially zero
2900 033777 000000 000000 DSDATA: 0 ; start data initially zero
2901
2902 034000 777777 777777 PARFLG: -1 ; 'automatic parity generation' flag
2903 034001 777777 777777 PRSFLG: -1 ; 'preserve EBUF' flag
2904
2905 034002 000000 000040 DSBYTE: 40 ; text length
2906
2907 034003 000000 000001 DSPAT: 1 ; data pattern
2908 034004 000000 000000 DSTPAT: 0 ; operator select pattern
2909
2910 034005 000000 000000 PCBFLG: 0 ; don't auto generate CCW list
2911
2912 034006 000000 000000 RSPFLG: 0 ; generate response flag
2913 034007 000000 000000 FORSEL: 0 ; format select
2914 034010 000000 000000 PATSEL: 0 ; path select
2915
2916 034011 000000 000000 DPORT: 0 ; destination port number
2917 034012 777777 777777 SPORT: -1 ; current port number (as set)
2918 034013 777777 777777 CPORT: -1 ; current port number (actual)
2919
2920 034014 000000 000012 DXCTID: 12 ; XCT-ID
2921 034015 000000 000034 34
2922
2923 034016 000000 000003 DSPRIN: 3 ; default length to print
2924
2925 034017 777777 777777 IGNFLG: -1 ; default to ignore
2926
2927 034020 000000 000036 DSSUM: ^D30 ; default to 30 seconds
2928 034021 000000 000000 DSINT: 0 ; default to 0 milliseconds
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 66
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0240
2929
2930 ;#*********************************************************************
2931 ;* DECSR - Examine CSR register
2932 ;#*********************************************************************
2933
2934 034022 200 01 0 00 110400 DECSR: MOVE 1,[FMSGCD (ECSR <CR>)]
2935 034023 260 17 0 00 033766* GO CHKARG ; check for argument
2936 034024 263 17 0 00 000000 RTN ; error - exit
2937 034025 260 17 0 00 030713* GO RDCSR ; read the CSR register
2938 034026 037 00 0 00 110401 TMSGC <[Rdcsr failed]> ; error return
2939 034027 260 17 0 00 042443 GO CSRPNT ; print CSR data
2940 034030 037 00 0 00 030242 PCRL ; end of line
2941 034031 263 17 0 00 000000 RTN ; return
2942
2943
2944 ;#*********************************************************************
2945 ;* DDCSR - Deposit CSR register
2946 ;#*********************************************************************
2947
2948 034032 210 01 0 00 110412 DDCSR: MOVN 1,[FMSGCD (DCSR xxxxxx <CR>)]
2949 034033 260 17 0 00 033737* GO .OARG ; get argument
2950 034034 263 17 0 00 000000 RTN ; error/altmode/question - exit
2951 JRST [FMSGCD <? Missing argument>
2952 GO FIOFF
2953 034035 254 00 0 00 104450 RTN]
2954 034036 200 01 0 00 033742* MOVE 1,ARGUM ; get argument
2955 034037 260 17 0 00 000000* GO LDCSR ; write it
2956 034040 263 17 0 00 000000 RTN ; return
2957
2958
2959 ;#*********************************************************************
2960 ;* DZCSR - Zero CSR register
2961 ;#*********************************************************************
2962
2963 034041 200 01 0 00 110416 DZCSR: MOVE 1,[FMSGCD (ZCSR <CR>)]
2964 034042 260 17 0 00 034023* GO CHKARG ; check for argument
2965 034043 263 17 0 00 000000 RTN ; error - exit
2966 034044 400 01 0 00 000000 SETZ 1, ; clear data
2967 034045 260 17 0 00 034037* GO LDCSR ; write it
2968 034046 263 17 0 00 000000 RTN ; return
2969
2970
2971 ;#********************************************************************
2972 ;* DRESET - Issue an EBUS Reset
2973 ;#********************************************************************
2974
2975 034047 200 01 0 00 110422 DRESET: MOVE 1,[FMSGCD (RESET <CR>)]
2976 034050 260 17 0 00 034042* GO CHKARG ; check for argument
2977 034051 263 17 0 00 000000 RTN ; error - exit
2978 034052 260 17 0 00 000000* GO ERESET
2979 034053 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 67
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0241
2980
2981 ;#********************************************************************
2982 ;* DCLEAR - Issue a 'Port Clear'
2983 ;#********************************************************************
2984
2985 034054 200 01 0 00 110426 DCLEAR: MOVE 1,[FMSGCD (CLEAR <CR>)]
2986 034055 260 17 0 00 034050* GO CHKARG ; check for argument
2987 034056 263 17 0 00 000000 RTN ; error - exit
2988 034057 260 17 0 00 000000* GO IPACLR ; do a 'port clear'
2989 034060 263 17 0 00 000000 RTN ; return
2990
2991
2992 ;#********************************************************************
2993 ;* DSINIT - Set up start addr/data/history prior to single step command
2994 ;#********************************************************************
2995
2996 034061 200 01 0 00 110433 DSINIT: MOVE 1,[FMSGCD (SSINIT <CR>)]
2997 034062 260 17 0 00 034055* GO CHKARG ; check for argument
2998 034063 263 17 0 00 000000 RTN ; error - exit
2999 034064 200 00 0 00 033776 MOVE DSADDR ; get start address
3000 034065 202 00 0 00 000000* MOVEM SNEXT ; save it for IPASST
3001 034066 200 00 0 00 033777 MOVE DSDATA ; get start CSR data
3002 034067 202 00 0 00 000000* MOVEM SDATA ; save it for IPASST
3003 034070 260 17 0 00 033152 GO DSADD1 ; print start address
3004 034071 260 17 0 00 033170 GO DSCSR2 ; print start data
3005 034072 260 17 0 00 034237 GO DSSCLR ; clear sstep history
3006 034073 263 17 0 00 000000 RTN
3007
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 68
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0242
3008
3009 ;#********************************************************************
3010 ;* DSTART - Start the port
3011 ;
3012 ; Arguments set up:
3013 ;
3014 ; DSADDR - Current start address which has been specified by either a
3015 ; 'SETADD' command, or as an argument to the 'START' command.
3016 ; DSDATA - Current start CSR data specified by a 'SETCSR' command.
3017 ; PCBFLG - Set up 3-Word CCW list automatically flag
3018 ;
3019 ; Arguments set up for IPASST: SNEXT - Contents of DSADDR is used.
3020 ; SLAST - Contents of DSADDR is used.
3021 ; SDATA - Contents of DSDATA is used.
3022 ;#********************************************************************
3023
3024 034074 210 01 0 00 110443 DSTART: MOVN 1,[FMSGCD (START addr <CR> or START <CR>)]
3025 034075 260 17 0 00 034033* GO .OARG ; get start address
3026 034076 263 17 0 00 000000 RTN ; error/altmode/question - exit
3027 034077 334 01 0 00 033776 SKIPA 1,DSADDR ; no argument given
3028
3029 ; Check for PCB handling generation
3030
3031 034100 332 00 0 00 034005 SKIPE PCBFLG ; PCB flag set?
3032 034101 260 17 0 00 000000* GO CHINIT ; yes - initialize software
3033
3034 ; Start it up
3035
3036 034102 260 17 0 00 000000* DSTAR0: GO ISTOP ; stop the port
3037 034103 200 01 0 00 034036* MOVE 1,ARGUM ; get argument
3038 034104 202 01 0 00 034065* MOVEM 1,SNEXT ; set it up
3039 034105 202 00 0 00 000000* MOVEM SLAST ; set it up
3040 034106 200 00 0 00 033777 MOVE DSDATA ; get start data
3041 034107 202 00 0 00 034067* MOVEM SDATA ; set it up
3042 034110 260 17 0 00 000000* GO IPASRT ; start it up
3043 JRST [FMSGCD <? Error accessing CSR register>
3044 GO FIOFF
3045 034111 254 00 0 00 110453 RTN]
3046 JRST [FMSGCD <? Port not stopped>
3047 GO FIOFF
3048 034112 254 00 0 00 110463 RTN]
3049 034113 334 00 0 00 000000 SKIPA ; error - Error bits set in CSR
3050 034114 263 17 0 00 000000 RTN ; exit
3051 034115 037 01 0 00 110466 FMSGCD <? START failed - Error bits set in CSR>
3052 034116 260 17 0 00 034025* GO RDCSR ; read CSR register
3053 034117 255 00 0 00 000000 JFCL ; ignore error
3054 034120 260 17 0 00 042443 GO CSRPNT ; print CSR register
3055 034121 037 00 0 00 030242 PCRL ; end of line
3056 034122 263 17 0 00 000000 RTN ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 69
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0243
3057
3058 ;#********************************************************************
3059 ;* DSTOP - Stop the port
3060 ;
3061 ; Arguments set by IPASTP:
3062 ;
3063 ; SNEXT - Set to stopping address.
3064 ; SDATA - Set to contents of CSR register.
3065 ;#********************************************************************
3066
3067 034123 200 01 0 00 110502 DSTOP: MOVE 1,[FMSGCD (STOP <CR>)]
3068 034124 260 17 0 00 034062* GO CHKARG ; check for argument
3069 034125 263 17 0 00 000000 RTN ; error - exit
3070 034126 260 17 0 00 000000* GO IPASTP ; stop it and get final address
3071 JRST [FMSGCD <? Error accessing CSR register>
3072 GO FIOFF
3073 034127 254 00 0 00 110453 RTN]
3074 JRST [FMSGCD <? Port not running>
3075 GO FIOFF
3076 034130 254 00 0 00 110510 RTN]
3077 034131 254 00 0 00 034136 JRST DSTOP1 ; error - Error bits set in CSR
3078 034132 037 00 0 00 110513 TMSGC <Port stopped. Last Adr = >
3079 034133 200 00 0 00 034104* MOVE SNEXT ; print it out
3080 034134 037 04 0 00 000000 PNT4
3081 034135 334 00 0 00 000000 SKIPA
3082 034136 037 01 0 00 110521 DSTOP1: FMSGCD <? Stop failed - Error bits set in CSR>
3083 034137 200 01 0 00 034107* MOVE 1,SDATA ; get CSR data
3084 034140 260 17 0 00 042443 GO CSRPNT ; print CSR register
3085 034141 037 00 0 00 030242 PCRL ; end of line
3086 034142 263 17 0 00 000000 RTN ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 70
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0244
3087
3088 ;#********************************************************************
3089 ;* DSSTEP - Single step the port
3090 ;* DTRACE - Single step the port and trace progress
3091 ;
3092 ; Arguments set up for IPASST:
3093 ;
3094 ; SNEXT - This is the address last set up by another single step
3095 ; command or by a SETSTR (set up start data) command.
3096 ; After each single step the LAR is read. The contents
3097 ; of the LAR are put in SNEXT.
3098 ;
3099 ; SLAST - This is the address last executed. SNEXT is put in this
3100 ; location before each single step
3101 ;
3102 ; SDATA - This is the data last set up by another single step
3103 ; command or by a SETSTR (set up start data) command.
3104 ;
3105 ; Both of these routines store single step data in a ring buffer which
3106 ; can be examined with a SPRINT command. This is useful in debugging
3107 ; a microcode routine and instead of single stepping and tracing, you
3108 ; single step 500 times or until an error occurs, then examine last x
3109 ; locations to see what happened.
3110 ;#********************************************************************
3111
3112 034143 210 01 0 00 110543 DTRACE: MOVN 1,[FMSGCD (STRACE RepeatCount <CR> or STRACE <CR>)]
3113 034144 476 00 0 00 120724' SETOM DTRFLG ; set trace flag
3114 034145 254 00 0 00 034150 JRST DTRAC0 ; continue
3115
3116 034146 402 00 0 00 120724' DSSTEP: SETZM DTRFLG# ; clear trace flag
3117 034147 210 01 0 00 110555 MOVN 1,[FMSGCD (SSTEP RepeatCount <CR> or SSTEP <CR>)]
3118
3119 034150 402 00 0 00 034103* DTRAC0: SETZM ARGUM ; set default argument
3120 034151 350 00 0 00 034150* AOS ARGUM ; to 1 single step
3121 034152 260 17 0 00 033665* GO .DARG ; get argument
3122 034153 263 17 0 00 000000 RTN ; error/altmode/question - exit
3123 034154 255 00 0 00 000000 JFCL ; no argument given
3124 034155 260 17 0 00 034102* GO ISTOP ; stop the port
3125 034156 200 02 0 00 034151* MOVE 2,ARGUM ; get argument
3126 034157 400 04 0 00 000000 SETZ 4, ; clear count of single steps
3127 034160 332 00 0 00 120724' SKIPE DTRFLG ; trace flag set?
3128 034161 037 00 0 00 110556 TMSGCD < RAR LAR CSR (final) SS#>
3129
3130 ; Single step
3131
3132 034162 350 00 0 00 000004 DSST0: AOS 4 ; increment count
3133 034163 200 01 0 00 034001 MOVE 1,PRSFLG ; get preserve EBUF flag
3134 034164 200 00 0 00 034137* MOVE SDATA ; get initial CSR data
3135 034165 202 00 0 00 121000' MOVEM SLDATA# ; save initial CSR data
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 71
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0245
3136 034166 260 17 0 00 000000* GO IPASST ; single step once
3137 JRST [FMSGCD <? Error accessing CSR register>
3138 GO FIOFF
3139 034167 254 00 0 00 110453 RTN]
3140 JRST [FMSGCD <? Port not stopped>
3141 GO FIOFF
3142 034170 254 00 0 00 110463 RTN]
3143 JRST [GO SAVHST
3144 TMSGC <[Error bits set in CSR]>
3145 SKIPE DTRFLG
3146 JRST DSSTX
3147 TMSGC <[>
3148 MOVE 4
3149 PNTOCS
3150 TMSGD < ssteps done]>
3151 034171 254 00 0 00 110600 JRST DSSTX]
3152 034172 260 17 0 00 035466 GO SAVHST ; save data for sstep history
3153
3154 ; If tracing is being done
3155
3156 034173 200 01 0 00 034246 MOVE 1,SSLOC ; get history location
3157 034174 332 00 0 00 120724' SKIPE DTRFLG ; tracing being done?
3158 034175 260 17 0 00 035447 GO PNTHST ; yes - print it
3159
3160 ; Altmode and exit checking
3161
3162 034176 037 07 0 00 000003 DSST1: TTALTM ; altmode key struck?
3163 034177 334 00 0 00 000000 SKIPA ; no - proceed
3164 JRST [PCRL ; yes - print some final
3165 SKIPE DTRFLG ; data and exit
3166 RTN
3167 TMSG <[>
3168 MOVE 4
3169 PNTOCS
3170 TMSGD < ssteps done]>
3171 034200 254 00 0 00 110612 JRST DSSTX]
3172 034201 367 02 0 00 034162 SOJG 2,DSST0 ; loop till done
3173
3174 ; Exit
3175
3176 034202 037 00 0 00 110622 DSSTX: TMSGC <LAR Last/> ; print LAR data
3177 034203 200 00 0 00 034105* MOVE SLAST ; get last address
3178 034204 037 04 0 00 000000 PNT4 ; print it
3179 034205 037 00 0 00 110625 TMSG < Next/>
3180 034206 200 00 0 00 034133* MOVE SNEXT ; get next address
3181 034207 037 04 0 00 000000 PNT4 ; print it
3182 034210 037 00 0 00 110627 TMSG < CSR/> ; print CSR data
3183 034211 200 00 0 00 034164* MOVE SDATA ; get it
3184 034212 037 13 0 00 000000 PNTHW ; print it
3185 034213 037 00 0 00 030242 PCRL ; end of line
3186 034214 263 17 0 00 000000 RTN
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 72
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0246
3187
3188 ;#********************************************************************
3189 ;* DSSPNT - Print single step history
3190 ;#********************************************************************
3191
3192 034215 201 00 0 00 000024 DSSPNT: MOVEI ^D20 ; set default number of ssteps
3193 034216 202 00 0 00 034156* MOVEM ARGUM ; to print to 20
3194 034217 210 01 0 00 110641 MOVN 1,[FMSGCD (SPRINT EntryCount or SPRINT <CR>)]
3195 034220 260 17 0 00 034152* GO .DARG ; get argument
3196 034221 263 17 0 00 000000 RTN ; error/altmode/question - exit
3197 034222 255 00 0 00 000000 JFCL ; no argument given
3198 034223 200 03 0 00 034216* MOVE 3,ARGUM ; get argument
3199 034224 200 01 0 00 034246 MOVE 1,SSLOC ; get current location
3200 034225 037 00 0 00 110556 TMSGCD < RAR LAR CSR (final) SS#>
3201 034226 260 17 0 00 035447 DSSPN0: GO PNTHST ; print an item
3202 034227 037 07 0 00 000003 TTALTM ; altmode typed?
3203 034230 334 00 0 00 000000 SKIPA ; no - continue
3204 034231 263 17 0 00 000000 RTN ; yes - exit
3205 034232 375 00 0 00 000001 SOSGE 1 ; decrement pointer - at start of list?
3206 034233 201 01 0 00 000177 MOVEI 1,177 ; yes - point to end now
3207 034234 333 00 0 01 034247 SKIPLE SSNUM(1) ; valid entry?
3208 034235 367 03 0 00 034226 SOJG 3,DSSPN0 ; yes - loop till done
3209 034236 263 17 0 00 000000 RTN ; no - return
3210
3211
3212 ;#********************************************************************
3213 ;* DSSCLR - Clear single step history data
3214 ;#********************************************************************
3215
3216 034237 200 01 0 00 110646 DSSCLR: MOVE 1,[FMSGCD (SCLEAR <CR>)]
3217 034240 260 17 0 00 034124* GO CHKARG ; check for argument
3218 034241 263 17 0 00 000000 RTN ; error - exit
3219 034242 402 00 0 00 034246 SETZM SSLOC ; clear first word
3220 034243 200 00 0 00 110647 MOVE [SSLOC,,SSLOC+1] ; build BLT pointer
3221 034244 251 00 0 00 035446 BLT SSCSRN+177 ; clear it
3222 034245 263 17 0 00 000000 RTN ; return
3223
3224 ; Ring buffer and miscellaneous data
3225
3226 034246 000000 000000 SSLOC: 0 ; pointer to single step entry
3227 034247 SSNUM: BLOCK 200 ; latest single step number
3228 034447 SSADRL: BLOCK 200 ; initial address
3229 034647 SSADRN: BLOCK 200 ; final address
3230 035047 SSCSRL: BLOCK 200 ; initial CSR
3231 035247 SSCSRN: BLOCK 200 ; final CSR
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 73
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0247
3232
3233 ;#********************************************************************
3234 ;* PNTHST - Print a single step history entry
3235 ;
3236 ; Argument: AC1 - location to print (offset into tables)
3237 ;#********************************************************************
3238
3239 035447 261 17 0 00 000000 PNTHST: PUT 0 ; save AC0
3240 035450 200 00 0 01 034447 MOVE SSADRL(1) ; print LAR (last) contents
3241 035451 037 04 0 00 000000 PNT4
3242 035452 037 00 0 00 103540 TMSG < >
3243 035453 200 00 0 01 034647 MOVE SSADRN(1) ; print LAR (next) contents
3244 035454 037 04 0 00 000000 PNT4
3245 035455 037 00 0 00 103540 TMSG < >
3246 035456 200 00 0 01 035247 MOVE SSCSRN(1) ; get CSR (final) data
3247 035457 037 13 0 00 000000 PNTHW ; print it
3248 035460 037 00 0 00 103540 TMSG < >
3249 035461 200 00 0 01 034247 MOVE SSNUM(1) ; get sstep number
3250 035462 037 16 0 00 000003 PNTOCS ; print it
3251 035463 037 00 0 00 030242 PCRL
3252 035464 262 17 0 00 000000 GET 0 ; restore AC0
3253 035465 263 17 0 00 000000 RTN ; return
3254
3255
3256 ;#********************************************************************
3257 ;* SAVHST - Save single step history data
3258 ;#********************************************************************
3259
3260 035466 261 17 0 00 000000 SAVHST: RPUT (0,1,2) ; save AC's
3261
3262 035471 200 02 0 00 034246 MOVE 2,SSLOC ; get last offset
3263 035472 200 02 0 02 034247 MOVE 2,SSNUM(2) ; get last number
3264 035473 350 01 0 00 034246 AOS 1,SSLOC ; get/increment offset
3265 035474 301 01 0 00 000200 CAIL 1,200 ; overflow ring buffer yet?
3266 035475 403 01 0 00 034246 SETZB 1,SSLOC ; yes - reinitialize pointer
3267 035476 350 00 0 00 000002 AOS 2 ; increment ss number
3268 035477 202 02 0 01 034247 MOVEM 2,SSNUM(1) ; save it
3269 035500 200 00 0 00 034203* MOVE SLAST ; get initial address
3270 035501 202 00 0 01 034447 MOVEM SSADRL(1) ; save it
3271 035502 200 00 0 00 034206* MOVE SNEXT ; get final address
3272 035503 202 00 0 01 034647 MOVEM SSADRN(1) ; save it
3273 035504 200 00 0 00 121000' MOVE SLDATA ; get initial CSR data
3274 035505 202 00 0 01 035047 MOVEM SSCSRL(1) ; save it
3275 035506 200 00 0 00 034211* MOVE SDATA ; get final CSR data
3276 035507 202 00 0 01 035247 MOVEM SSCSRN(1) ; save it
3277 035510 262 17 0 00 000002 RGET (2,1,0) ; restore AC's
3278
3279 035513 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 74
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0248
3280
3281 ;#********************************************************************
3282 ;* DCONT - Continue the port
3283 ;
3284 ; Arguments set up for IPASRT:
3285 ;
3286 ; SNEXT - Points to next address, from IPASTP or IPASST
3287 ; SDATA - Defaults to current contents of SDATA last set up by IPASTP.
3288 ;#********************************************************************
3289
3290 035514 200 01 0 00 110653 DCONT: MOVE 1,[FMSGCD (CONT <CR>)]
3291 035515 260 17 0 00 034240* GO CHKARG ; check for argument
3292 035516 263 17 0 00 000000 RTN ; error - exit
3293 035517 260 17 0 00 034110* GO IPASRT ; start it up
3294 JRST [FMSGCD <? Error accessing CSR register>
3295 GO FIOFF
3296 035520 254 00 0 00 110453 RTN]
3297 JRST [FMSGCD <? Port not stopped>
3298 GO FIOFF
3299 035521 254 00 0 00 110463 RTN]
3300 035522 334 00 0 00 000000 SKIPA ; error - Error bits set in CSR
3301 035523 263 17 0 00 000000 RTN ; exit
3302 035524 037 01 0 00 110654 FMSGCD <? CONT failed - Error bits set in CSR>
3303 035525 200 01 0 00 035506* MOVE 1,SDATA ; get CSR data
3304 035526 260 17 0 00 042443 GO CSRPNT ; print CSR register
3305 035527 037 01 0 00 030242 PCRLF ; end of line
3306 035530 263 17 0 00 000000 RTN ; continue
3307
3308 ;#********************************************************************
3309 ;* DEEBUF - Examine EBUF register
3310 ;#********************************************************************
3311
3312 035531 200 01 0 00 110670 DEEBUF: MOVE 1,[FMSGCD (EEBUF <CR>)]
3313 035532 260 17 0 00 035515* GO CHKARG ; check for argument
3314 035533 263 17 0 00 000000 RTN ; error - exit
3315 035534 260 17 0 00 034155* DEBEBU: GO ISTOP ; stop the port
3316 035535 260 17 0 00 000000* GO SETEBU ; ensure 'Test EBUF' bit is set
3317 JRST [FMSGCD <? Error accessing CSR register>
3318 GO FIOFF
3319 035536 254 00 0 00 110453 RTN]
3320
3321 ; Now read the data
3322
3323 035537 260 17 0 00 000000* GO RDEBUF ; read EBUF
3324 035540 037 00 0 00 110671 TMSGC <EBUF/ > ; print out the data
3325 035541 200 00 0 00 000001 MOVE 1
3326 035542 037 13 0 00 000000 PNTHW
3327 035543 037 00 0 00 030242 PCRL
3328 035544 263 17 0 00 000000 RTN ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 75
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0249
3329
3330 ;#********************************************************************
3331 ;* DDEBUF - Deposit EBUF register
3332 ;* DZEBUF - Zero EBUF register
3333 ;#********************************************************************
3334
3335 035545 200 01 0 00 110676 DZEBUF: MOVE 1,[FMSGCD (ZEBUF <CR>)]
3336 035546 260 17 0 00 035532* GO CHKARG ; check for argument
3337 035547 263 17 0 00 000000 RTN ; error - exit
3338 035550 402 00 0 00 034223* SETZM ARGUM ; clear data
3339 035551 254 00 0 00 035556 JRST DDEBU1 ; continue
3340
3341 035552 210 01 0 00 110705 DDEBUF: MOVN 1,[FMSGCD (DEBUF xxxxxxxxxxxx <CR>)]
3342 035553 260 17 0 00 034075* GO .OARG ; get argument
3343 035554 263 17 0 00 000000 RTN ; error/altmode/question - exit
3344 JRST [FMSGCD <? Missing argument>
3345 GO FIOFF
3346 035555 254 00 0 00 104450 RTN]
3347 035556 260 17 0 00 035534* DDEBU1: GO ISTOP ; stop the port
3348 035557 260 17 0 00 035535* GO SETEBU ; ensure 'Test EBUF' bit is set
3349 JRST [FMSGCD <? Error accessing CSR register>
3350 GO FIOFF
3351 035560 254 00 0 00 110453 RTN]
3352 035561 200 01 0 00 035550* MOVE 1,ARGUM ; get argument
3353 035562 260 17 0 00 000000* GO LDEBUF ; write it
3354 035563 263 17 0 00 000000 RTN ; continue
3355
3356
3357 ;#********************************************************************
3358 ;* DELAR - Examine LAR register
3359 ;#********************************************************************
3360
3361 035564 200 01 0 00 110711 DELAR: MOVE 1,[FMSGCD (ELAR <CR>)]
3362 035565 260 17 0 00 035546* GO CHKARG ; check for argument
3363 035566 263 17 0 00 000000 RTN ; error - exit
3364 035567 260 17 0 00 035556* DEBLAR: GO ISTOP ; stop the port
3365 035570 201 01 0 00 040000 MOVEI 1,SELLAR ; get 'DIAG Sel LAR' bit
3366 035571 260 17 0 00 034045* GO LDCSR ; write to CSR register
3367 035572 260 17 0 00 000000* GO RDLAR ; read LAR
3368 035573 037 00 0 00 110712 TMSGC <LAR: > ; print out the data
3369 035574 200 00 0 00 000001 MOVE 1
3370 035575 037 16 0 00 000003 PNTOCS
3371 035576 037 00 0 00 110714 TMSG < (Adr: >
3372 035577 242 01 0 00 777777 LSH 1,-1 ; don't print out RAR bit
3373 035600 200 00 0 00 000001 MOVE 1
3374 035601 037 16 0 00 000003 PNTOCS
3375 035602 037 00 0 00 107660 TMSGD <)>
3376 035603 263 17 0 00 000000 RTN ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 76
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0250
3377
3378 ;#********************************************************************
3379 ;* DDRAR - Deposit RAR register
3380 ;#********************************************************************
3381
3382 035604 210 01 0 00 110722 DDRAR: MOVN 1,[FMSGCD (DRAR addr <CR>)]
3383 035605 260 17 0 00 035553* GO .OARG ; get test number
3384 035606 263 17 0 00 000000 RTN ; error/altmode/question - exit
3385 JRST [FMSGCD <? Missing argument>
3386 GO FIOFF
3387 035607 254 00 0 00 104450 RTN]
3388 035610 260 17 0 00 035567* GO ISTOP ; stop the port
3389 035611 400 01 0 00 000000 SETZ 1, ; ensure we can write the RAR
3390 035612 260 17 0 00 035571* GO LDCSR ; by clearing CSR register
3391 035613 200 01 0 00 035561* MOVE 1,ARGUM ; get argument
3392 035614 260 17 0 00 000000* GO LDRAR ; write it
3393 035615 263 17 0 00 000000 RTN ; continue
3394
3395
3396 ;#********************************************************************
3397 ;* DZRAR - Zero RAR register
3398 ;#********************************************************************
3399
3400 035616 200 01 0 00 110726 DZRAR: MOVE 1,[FMSGCD (ZRAR <CR>)]
3401 035617 260 17 0 00 035565* GO CHKARG ; check for argument
3402 035620 263 17 0 00 000000 RTN ; error - exit
3403 035621 260 17 0 00 035610* GO ISTOP ; stop the port
3404 035622 400 01 0 00 000000 SETZ 1, ; clear data
3405 035623 260 17 0 00 035612* GO LDCSR ; clear CSR first
3406 035624 260 17 0 00 035614* GO LDRAR ; write it
3407 035625 263 17 0 00 000000 RTN ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 77
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0251
3408
3409 ;#*********************************************************************
3410 ;* DECRAM - Examine CRAM locations specified by "PARG1" and "PARG2".
3411 ;#*********************************************************************
3412
3413 035626 201 00 0 00 000000 DECRAM: MOVEI 0 ; set the 'EDZL' flag
3414 035627 202 00 0 00 120723' MOVEM DFLAG# ; to 0 (Examine)
3415 035630 254 00 0 00 035650 JRST DCOMGO ; process arguments
3416
3417 ;#*********************************************************************
3418 ;* DDCRAM - Change CRAM locations.
3419 ;#*********************************************************************
3420
3421 035631 201 00 0 00 000001 DDCRAM: MOVEI 1 ; set the 'EDZL' flag
3422 035632 202 00 0 00 120723' MOVEM DFLAG ; to 1 (Deposit)
3423 035633 254 00 0 00 035650 JRST DCOMGO ; process arguments
3424
3425 ;#*********************************************************************
3426 ;* DBCRAM - Change CRAM locations by field
3427 ;#*********************************************************************
3428
3429 035634 201 00 0 00 000002 DBCRAM: MOVEI 2 ; set the 'EDZL' flag
3430 035635 202 00 0 00 120723' MOVEM DFLAG ; to 1 (Deposit)
3431 035636 254 00 0 00 035650 JRST DCOMGO ; process arguments
3432
3433 ;#*********************************************************************
3434 ;* DACRAM - Alter CRAM locations.
3435 ;#*********************************************************************
3436
3437 035637 201 00 0 00 000003 DACRAM: MOVEI 3 ; set the 'EDZL' flag
3438 035640 202 00 0 00 120723' MOVEM DFLAG ; to 1 (Deposit)
3439 035641 254 00 0 00 035650 JRST DCOMGO ; process arguments
3440
3441 ;#*********************************************************************
3442 ;* DZCRAM -- Zero CRAM addresses specified.
3443 ;#*********************************************************************
3444
3445 035642 201 00 0 00 000004 DZCRAM: MOVEI 4 ; set the 'EDZL' flag
3446 035643 202 00 0 00 120723' MOVEM DFLAG ; to 2 (Zero)
3447 035644 254 00 0 00 035650 JRST DCOMGO ; process arguments
3448
3449 ;#*********************************************************************
3450 ;* DLCRAM -- List CRAM addresses specified.
3451 ;#*********************************************************************
3452
3453 035645 201 00 0 00 000005 DLCRAM: MOVEI 5 ; set the 'EDZL' flag
3454 035646 202 00 0 00 120723' MOVEM DFLAG ; to 3 (List)
3455 035647 254 00 0 00 035650 JRST DCOMGO ; process arguments
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 78
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0252
3456
3457 ; Start to process the arguments typed - both should be CRAM
3458 ; addresses in octal.
3459
3460 035650 200 00 0 00 035716 DCOMGO: MOVE RTO ; set up default range of CRAM locs
3461 035651 202 00 0 00 035712 MOVEM CRAMTO ; to be whatever typed before or
3462 035652 200 00 0 00 035717 MOVE RFROM ; if nothing typed, then 0-0
3463 035653 202 00 0 00 035711 MOVEM CRAMFR
3464
3465 ; Get first address
3466
3467 035654 200 01 0 00 110734 MOVE 1,[FMSGCD <xCRAM addr,addr (CR)>]
3468 035655 260 17 0 00 035605* GO .OARG ; get first address
3469 035656 263 17 0 00 000000 RTN ; error/altmode/question - exit
3470 035657 254 00 0 00 035671 JRST DCOM0 ; no arguments given - continue
3471 035660 200 00 0 00 035613* MOVE ARGUM ; get argument
3472 035661 202 00 0 00 035711 MOVEM CRAMFR ; save in 'from' location
3473 035662 202 00 0 00 035712 MOVEM CRAMTO ; save in 'to' location
3474
3475 ; Get 2nd address
3476
3477 035663 210 01 0 00 110734 MOVN 1,[FMSGCD <xCRAM addr,addr (CR)>]
3478 035664 260 17 0 00 035655* GO .OARG ; get first address
3479 035665 263 17 0 00 000000 RTN ; error/altmode/question - exit
3480 035666 254 00 0 00 035671 JRST DCOM0 ; no arguments given - continue
3481 035667 200 00 0 00 035660* MOVE ARGUM ; get argument
3482 035670 202 00 0 00 035712 MOVEM CRAMTO ; save in 'to' location
3483
3484 ; Now range check the arguments
3485
3486 035671 331 01 0 00 035711 DCOM0: SKIPL 1,CRAMFR ; 1st argument in range?
3487 035672 303 01 0 00 007777 CAILE 1,7777
3488 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
3489 SETOM ALTF
3490 GO FIOFF
3491 035673 254 00 0 00 110735 RTN]
3492 035674 331 01 0 00 035712 SKIPL 1,CRAMTO ; 2nd argument in range?
3493 035675 303 01 0 00 007777 CAILE 1,7777
3494 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
3495 GO FIOFF
3496 035676 254 00 0 00 107217 RTN]
3497 035677 274 01 0 00 035711 SUB 1,CRAMFR ; see if range ok
3498 JUMPL 1,[FMSGCD <? Range nonsensical>
3499 GO FIOFF
3500 035700 321 01 0 00 110071 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 79
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0253
3501
3502 ;#*********************************************************************
3503 ; Process the command - examine, deposit, or zero
3504 ;#*********************************************************************
3505
3506 ; Save default arguments
3507
3508 035701 200 00 0 00 035711 MOVE CRAMFR ; set up the new default range
3509 035702 202 00 0 00 035717 MOVEM RFROM ; selected, for later EXAM,
3510 035703 200 00 0 00 035712 MOVE CRAMTO ; DEPOS, or ZEROs
3511 035704 202 00 0 00 035716 MOVEM RTO
3512
3513 ; Then ensure the port is stopped
3514
3515 035705 260 17 0 00 035621* GO ISTOP ; stop the port
3516
3517 ; Now do it
3518
3519 035706 476 00 0 00 120721' DCOM1: SETOM DC1ST# ; init 'first location' flag
3520 035707 200 01 0 00 120723' MOVE 1,DFLAG ; get type of command
3521 JRST @[DCOMEX ; dispatch to proper routine
3522 DCOMDE
3523 DCOMDB
3524 DCOMAL
3525 DCOMZE
3526 035710 254 00 1 01 110741 DCOMLI](1)
3527
3528 ; Default CRAM locations, CRAM data, and Misc
3529
3530 035711 000000 000000 CRAMFR: 0 ; range is from CRAMFR to
3531 035712 000000 000000 CRAMTO: 0 ; CRAMTO
3532 035713 000000 000000 CADDR: 0 ; current address
3533
3534 035714 000000 000000 CWORDL: 0 ; left 30 bits
3535 035715 000000 000000 CWORDR: 0 ; right 30 bits
3536
3537 035716 000000 000000 RTO: 0 ; start address (default)
3538 035717 000000 000000 RFROM: 0 ; end address (default)
3539
3540 035720 000000 000000 ANEXT: 0 ; next address
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 80
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0254
3541
3542 ;#*********************************************************************
3543 ; Deposit into CRAM locations.
3544 ;#*********************************************************************
3545
3546 DCOMDE: MOVEI [SETZM ALTF ; set up altmode transfer address
3547 GO FIOFF ; to exit this command
3548 035721 201 00 0 00 103552 RTN]
3549 035722 202 00 0 00 030063 MOVEM ALTMGO
3550 035723 335 00 0 00 120721' SKIPGE DC1ST ; first location?
3551 035724 037 01 0 00 110747 FMSGC <Type xxxx,xxxx,xxxx,xxxx,xxxx>
3552 035725 402 00 0 00 120721' SETZM DC1ST ; clear 'first location' flag
3553 035726 037 01 0 00 030242 PCRLF
3554 035727 476 00 0 00 035714 SETOM CWORDL ; initialize left 30 bits
3555 035730 476 00 0 00 035715 SETOM CWORDR ; initialize right 30 bits
3556 035731 200 00 0 00 035711 MOVE CRAMFR ; get the address to modify
3557 035732 202 00 0 00 035713 MOVEM CADDR ; save address for writing
3558 035733 037 04 0 00 000001 PNT4F ; print it
3559 035734 037 01 0 00 110756 FMSG <:: >
3560 035735 403 04 0 00 000005 SETZB 4,5 ; clear data input locations
3561 035736 476 00 0 00 032420* SETOM ARGFLG ; ensure that an argument is expected
3562 035737 200 01 0 00 110767 MOVE 1,[FMSGCD <xxxx,xxxx,xxxx,xxxx,xxxx (CR)>]
3563 035740 260 17 0 00 035664* GO .OARG ; get first address
3564 035741 263 17 0 00 000000 RTN ; error/altmode/question - exit
3565 JRST [FMSGCD <? Missing arguments>
3566 GO FIOFF
3567 035742 254 00 0 00 110775 RTN]
3568 035743 200 00 0 00 035667* MOVE ARGUM ; get argument
3569 035744 137 00 0 00 111000 DPB [POINT 12,4,11] ; save it
3570 035745 200 01 0 00 110767 MOVE 1,[FMSGCD <xxxx,xxxx,xxxx,xxxx,xxxx (CR)>]
3571 035746 260 17 0 00 035740* GO .OARG ; get first address
3572 035747 263 17 0 00 000000 RTN ; error/altmode/question - exit
3573 JRST [FMSGCD <? Missing arguments>
3574 GO FIOFF
3575 035750 254 00 0 00 110775 RTN]
3576 035751 200 00 0 00 035743* MOVE ARGUM ; get argument
3577 035752 137 00 0 00 111001 DPB [POINT 12,4,23] ; save it
3578 035753 200 01 0 00 110767 MOVE 1,[FMSGCD <xxxx,xxxx,xxxx,xxxx,xxxx (CR)>]
3579 035754 260 17 0 00 035746* GO .OARG ; get first address
3580 035755 263 17 0 00 000000 RTN ; error/altmode/question - exit
3581 JRST [FMSGCD <? Missing arguments>
3582 GO FIOFF
3583 035756 254 00 0 00 110775 RTN]
3584 035757 200 00 0 00 035751* MOVE ARGUM ; get argument
3585 035760 137 00 0 00 111002 DPB [POINT 12,4,35] ; save it
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 81
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0255
3586 035761 200 01 0 00 110767 MOVE 1,[FMSGCD <xxxx,xxxx,xxxx,xxxx,xxxx (CR)>]
3587 035762 260 17 0 00 035754* GO .OARG ; get first address
3588 035763 263 17 0 00 000000 RTN ; error/altmode/question - exit
3589 JRST [FMSGCD <? Missing arguments>
3590 GO FIOFF
3591 035764 254 00 0 00 110775 RTN]
3592 035765 200 00 0 00 035757* MOVE ARGUM ; get argument
3593 035766 137 00 0 00 111003 DPB [POINT 12,5,11] ; save it
3594 035767 210 01 0 00 110767 MOVN 1,[FMSGCD <xxxx,xxxx,xxxx,xxxx,xxxx (CR)>]
3595 035770 260 17 0 00 035762* GO .OARG ; get first address
3596 035771 263 17 0 00 000000 RTN ; error/altmode/question - exit
3597 JRST [FMSGCD <? Missing argument>
3598 GO FIOFF
3599 035772 254 00 0 00 104450 RTN]
3600 035773 200 00 0 00 035765* MOVE ARGUM ; get argument
3601 035774 137 00 0 00 111004 DPB [POINT 12,5,23] ; save it
3602 035775 135 00 0 00 111005 LDB [POINT 30,4,29] ; get left 30 bits
3603 035776 202 00 0 00 035714 MOVEM CWORDL ; save them
3604 035777 246 04 0 00 777772 LSHC 4,-^D6 ; position right 30 bits properly
3605 036000 135 00 0 00 111006 LDB [POINT 30,5,29] ; get right 30 bits
3606 036001 202 00 0 00 035715 MOVEM CWORDR ; save them
3607 036002 260 17 0 00 036340 GO DWCRAM ; go write CRAM location
3608 036003 402 00 0 00 044231 SETZM CNAME ; clear 'CRAM loaded' ucode flag
3609 036004 350 01 0 00 035711 AOS 1,CRAMFR ; update the specified address
3610 036005 202 01 0 00 035720 MOVEM 1,ANEXT ; save next address
3611 036006 317 01 0 00 035712 CAMG 1,CRAMTO ; reach end yet?
3612 036007 254 00 0 00 035721 JRST DCOMDE ; no - loop till done
3613 036010 263 17 0 00 000000 RTN ; yes - exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 82
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0256
3614
3615 ;#*********************************************************************
3616 ; Deposit into CRAM locations (by bit field)
3617 ;#*********************************************************************
3618
3619 036011 402 00 0 00 035714 DCOMDB: SETZM CWORDL ; initialize left 30 bits
3620 036012 402 00 0 00 035715 SETZM CWORDR ; initialize right 30 bits
3621 036013 200 00 0 00 035711 MOVE CRAMFR ; get the address to modify
3622 036014 202 00 0 00 035713 MOVEM CADDR ; save address for writing
3623 036015 254 00 0 00 036021 JRST DCOMAG
3624
3625 036016 200 00 0 00 035711 DCOMAL: MOVE CRAMFR ; get the address to modify
3626 036017 202 00 0 00 035713 MOVEM CADDR ; save address for writing
3627 036020 260 17 0 00 036372 GO DRCRAM ; read CRAM (init both words)
3628
3629 ; Set up initial data
3630
3631 036021 335 00 0 00 120721' DCOMAG: SKIPGE DC1ST ; first location?
3632 PNTMSF [ASCIZ /
3633 036022 037 01 0 00 111007 Type value,value... or ^,CR,^Z,field name/]
3634 036023 402 00 0 00 120721' SETZM DC1ST ; clear 'first location' flag
3635 036024 037 01 0 00 030242 PCRLF
3636 MOVEI [SETZM ALTF ; set up altmode transfer address
3637 GO FIOFF ; to exit this command
3638 PCRLF
3639 036025 201 00 0 00 111020 RTN]
3640 036026 202 00 0 00 030063 MOVEM ALTMGO
3641 036027 200 00 0 00 035711 MOVE CRAMFR ; get the address to modify
3642 036030 037 04 0 00 000001 PNT4F ; print it
3643 036031 037 01 0 00 111024 FMSGD <::>
3644 036032 260 17 0 00 032376* GO CLRBUF ; clear input buffer
3645 036033 402 00 0 00 030231 SETZM $TTCHR ; clear last character typed
3646
3647 ; Select an entry from the bit table
3648
3649 036034 201 06 0 00 000001 MOVEI 6,1 ; init bit pointer
3650 036035 275 06 0 00 000002 DCOMA0: SUBI 6,2 ; decrement entry pointer
3651 036036 315 06 0 00 111025 CAMGE 6,[-1] ; backed up too far?
3652 036037 474 06 0 00 000000 SETO 6, ; force to start at beginning
3653 036040 350 00 0 00 000006 DCOMA1: AOS 6 ; point to next entry
3654 036041 303 06 0 00 000021 CAILE 6,^D17 ; done with microword?
3655 036042 254 00 0 00 036104 JRST DCOMAX ; yes - exit (write location)
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 83
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0257
3656
3657 ; Have an entry - now get input/dispatch data
3658
3659 036043 200 00 0 00 030231 MOVE $TTCHR ; get last character typed
3660 036044 302 00 0 00 000054 CAIE "," ; was it a comma
3661 036045 306 00 0 00 000040 CAIN " " ; or a blank?
3662 036046 254 00 0 00 036060 JRST DCOMA3 ; yes - continue
3663 036047 332 00 0 00 120733' DCOMAA: SKIPE FINPUT ; file input?
3664 JRST [GO FINCMD ; yes - input sixbit cmd
3665 JRST .+1 ; error or EOF
3666 036050 254 00 0 00 111026 JRST DCOM3A] ; continue
3667 036051 200 00 0 00 120723' MOVE DFLAG ; get dispatch flag
3668 036052 306 00 0 00 000002 CAIN 2 ; alter?
3669 036053 254 00 0 00 036057 JRST DCOMA2 ; no - continue
3670 036054 260 17 1 06 036140 GO @DCOLDB(6) ; yes - get data byte
3671 036055 037 17 0 00 000003 PNTOCF
3672 036056 037 01 0 00 000040 PSPF
3673
3674 036057 256 00 0 06 036116 DCOMA2: XCT DCOMSG(6) ; no - print field name
3675 036060 037 10 0 00 000003 DCOMA3: TTSIXB ; get input
3676 ALTCHK [GET XXW# ; adjust stack properly
3677 SKIPN $TWCNT ; did a timeout occur?
3678 JRST DCOMA3 ; yes - keep looking for input
3679 MOVE $TTCHR ; get character typed
3680 CAIN "^" ; backup character?
3681 JRST DCOMA0 ; yes - backup
3682 CAIN 32 ; control-Z?
3683 PCRLF ; yes - a final blank line
3684 CAIN 32 ; control-Z?
3685 JRST DCOMAX ; yes - exit - done
3686 CAIN "?" ; question mark?
3687 JRST [XCT MWDQUE(6); yes - handle
3688 PCRLF
3689 JRST DCOMAA]
3690 FMSGCD <? Argument error>
3691 GO CLRBUF
3692 PCRLF
3693 GO FIOFF
3694 036061 007 00 0 00 111041 JRST DCOMA2] ; no - error - reask question
3695
3696 DCOM3A: JUMPE [MOVE $TTCHR ; anything typed? if a space, keep
3697 CAIN 40 ; looking for an argument, if not
3698 JRST DCOMA3 ; exit
3699 036062 322 00 0 00 111062 JRST DCOMA5]
3700 036063 202 00 0 00 120774' MOVEM SAVFLD# ; save argument
3701 036064 200 01 0 00 120774' MOVE 1,SAVFLD ; get into AC1
3702 036065 260 17 0 00 033521* GO CONVSX ; convert to octal
3703 036066 334 00 0 00 000000 SKIPA
3704 036067 254 00 0 00 036077 JRST DCOMA4 ; ok - insert into data
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 84
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0258
3705
3706 ; Unrecognizable - check if a field was specified
3707
3708 036070 200 01 0 00 120774' MOVE 1,SAVFLD ; get command into AC1
3709 036071 201 02 0 00 036204 MOVEI 2,FLDLIS ; get address of field list
3710 036072 260 17 0 00 033436* GO .COMM ; handle command decoding
3711 JRST [FMSGCD <? Argument error>
3712 GO CLRBUF
3713 PCRLF
3714 GO FIOFF
3715 036073 254 00 0 00 111055 JRST DCOMA2] ; no - error - reask question
3716 036074 370 00 0 00 000001 SOS 1 ; normalize to -1..12
3717 036075 200 06 0 00 000001 MOVE 6,1 ; put into AC6
3718 036076 254 00 0 00 036040 JRST DCOMA1 ; go handle the field
3719
3720 ; Insert field entry
3721
3722 036077 200 00 0 00 000001 DCOMA4: MOVE 1 ; get number
3723 036100 260 17 1 06 036162 GO @DCODPB(6) ; yes - insert it
3724 036101 200 00 0 00 030231 DCOMA5: MOVE $TTCHR ; get last character typed
3725 036102 312 00 0 00 000015 CAME 15 ; CRLF?
3726 036103 254 00 0 00 036040 JRST DCOMA1 ; no - get next entry
3727
3728 ; Finally, write the location
3729
3730 036104 260 17 0 00 036340 DCOMAX: GO DWCRAM ; go write CRAM location
3731 036105 402 00 0 00 044231 SETZM CNAME ; clear 'CRAM loaded' ucode flag
3732 036106 350 01 0 00 035711 AOS 1,CRAMFR ; update the specified address
3733 036107 202 01 0 00 035720 MOVEM 1,ANEXT ; save next address
3734 036110 313 01 0 00 035712 CAMLE 1,CRAMTO ; reach end yet?
3735 036111 263 17 0 00 000000 RTN ; yes - exit
3736 036112 200 00 0 00 120723' MOVE DFLAG ; get dispatch flag
3737 036113 302 00 0 00 000003 CAIE 3 ; alter?
3738 036114 254 00 0 00 036011 JRST DCOMDB ; no - deposit by bit field
3739 036115 254 00 0 00 036016 JRST DCOMAL ; yes - alter by bit field
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 85
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0259
3740
3741 ; Input message table
3742
3743 036116 037 01 0 00 111066 DCOMSG: FMSG <J - >
3744 036117 037 01 0 00 111067 FMSG <PAR - >
3745 036120 037 01 0 00 111071 FMSG <OENA - >
3746 036121 037 01 0 00 111073 FMSG <MGC - >
3747 036122 037 01 0 00 111075 FMSG <SORC - >
3748 036123 037 01 0 00 111077 FMSG <FUNC - >
3749 036124 037 01 0 00 111101 FMSG <DEST - >
3750 036125 037 01 0 00 111103 FMSG <CENA - >
3751 036126 037 01 0 00 111105 FMSG <RAM - >
3752 036127 037 01 0 00 111107 FMSG <A - >
3753 036130 037 01 0 00 111110 FMSG <B - >
3754 036131 037 01 0 00 111111 FMSG <SK - >
3755 036132 037 01 0 00 111113 FMSG <BUS - >
3756 036133 037 01 0 00 111115 FMSG <CRY - >
3757 036134 037 01 0 00 111117 FMSG <CTL - >
3758 036135 037 01 0 00 111121 FMSG <TIME - >
3759 036136 037 01 0 00 111123 FMSG <SPARE - >
3760 036137 037 01 0 00 111125 FMSG <MARK - >
3761
3762 ; Microword load byte pointer table
3763
3764 DCOLDB: [LDB [POINT 12,CWORDL,17] ; J - Bits 6-17
3765 036140 000000 111130 RTN]
3766 [LDB [POINT 1,CWORDL,18] ; PAR - Bit 18
3767 036141 000000 111133 RTN]
3768 [LDB [POINT 1,CWORDL,19] ; OENA - Bit 19
3769 036142 000000 111136 RTN]
3770 [LDB [POINT 10,CWORDL,29] ; MGC - Bits 20-29
3771 036143 000000 111141 RTN]
3772 [LDB [POINT 3,CWORDL,32] ; SORC - Bits 30-32
3773 036144 000000 111144 RTN]
3774 [LDB [POINT 3,CWORDL,35] ; FUNC - Bits 33-35
3775 036145 000000 111147 RTN]
3776 [LDB [POINT 3,CWORDR,8] ; DEST - Bits 6-8
3777 036146 000000 111152 RTN]
3778 [LDB [POINT 1,CWORDR,9] ; CENA - Bit 9
3779 036147 000000 111155 RTN]
3780 [LDB [POINT 1,CWORDR,10] ; RAM - Bit 10
3781 036150 000000 111160 RTN]
3782 [LDB [POINT 4,CWORDR,14] ; A - Bits 11-14
3783 036151 000000 111163 RTN]
3784 [LDB [POINT 4,CWORDR,18] ; B - Bits 15-18
3785 036152 000000 111166 RTN]
3786 [LDB [POINT 5,CWORDR,23] ; SK - Bits 19-23
3787 036153 000000 111171 RTN]
3788 [LDB [POINT 3,CWORDR,26] ; BUS - Bits 24-26
3789 036154 000000 111174 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 86
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0260
3790 [LDB [POINT 1,CWORDR,27] ; CRY - Bits 27
3791 036155 000000 111177 RTN]
3792 [LDB [POINT 4,CWORDR,31] ; OP - Bits 28-31
3793 036156 000000 111202 RTN]
3794 [LDB [POINT 1,CWORDR,32] ; TIME - Bit 32
3795 036157 000000 111205 RTN]
3796 [LDB [POINT 2,CWORDR,34] ; SPARE - Bits 33-34
3797 036160 000000 111210 RTN]
3798 [LDB [POINT 1,CWORDR,35] ; MARK - Bit 35
3799 036161 000000 111213 RTN]
3800
3801 ; Microword deposit byte pointer table
3802
3803 DCODPB: [DPB [POINT 12,CWORDL,17] ; J - Bits 6-17
3804 036162 000000 111215 RTN]
3805 [DPB [POINT 1,CWORDL,18] ; PAR - Bit 18
3806 036163 000000 111217 RTN]
3807 [DPB [POINT 1,CWORDL,19] ; OENA - Bit 19
3808 036164 000000 111221 RTN]
3809 [DPB [POINT 10,CWORDL,29] ; MGC - Bits 20-29
3810 036165 000000 111223 RTN]
3811 [DPB [POINT 3,CWORDL,32] ; SORC - Bits 30-32
3812 036166 000000 111225 RTN]
3813 [DPB [POINT 3,CWORDL,35] ; FUNC - Bits 33-35
3814 036167 000000 111227 RTN]
3815 [DPB [POINT 3,CWORDR,8] ; DEST - Bits 6-8
3816 036170 000000 111231 RTN]
3817 [DPB [POINT 1,CWORDR,9] ; CENA - Bit 9
3818 036171 000000 111233 RTN]
3819 [DPB [POINT 1,CWORDR,10] ; RAM - Bit 10
3820 036172 000000 111235 RTN]
3821 [DPB [POINT 4,CWORDR,14] ; A - Bits 11-14
3822 036173 000000 111237 RTN]
3823 [DPB [POINT 4,CWORDR,18] ; B - Bits 15-18
3824 036174 000000 111241 RTN]
3825 [DPB [POINT 5,CWORDR,23] ; SK - Bits 19-23
3826 036175 000000 111243 RTN]
3827 [DPB [POINT 3,CWORDR,26] ; BUS - Bits 24-26
3828 036176 000000 111245 RTN]
3829 [DPB [POINT 1,CWORDR,27] ; CRY - Bits 27
3830 036177 000000 111247 RTN]
3831 [DPB [POINT 4,CWORDR,31] ; OP - Bits 28-31
3832 036200 000000 111251 RTN]
3833 [DPB [POINT 1,CWORDR,32] ; TIME - Bit 32
3834 036201 000000 111253 RTN]
3835 [DPB [POINT 2,CWORDR,34] ; SPARE - Bits 33-34
3836 036202 000000 111255 RTN]
3837 [DPB [POINT 1,CWORDR,35] ; MARK - Bit 35
3838 036203 000000 111257 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 87
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0261
3839
3840 ; Field command table
3841
3842 036204 52 00 00 00 00 00 FLDLIS: SIXBIT /J/
3843 036205 60 41 62 00 00 00 SIXBIT /PAR/
3844 036206 57 45 56 41 00 00 SIXBIT /OENA/
3845 036207 55 47 43 00 00 00 SIXBIT /MGC/
3846 036210 63 57 62 43 00 00 SIXBIT /SORC/
3847 036211 46 65 56 43 00 00 SIXBIT /FUNC/
3848 036212 44 45 63 64 00 00 SIXBIT /DEST/
3849 036213 43 45 56 41 00 00 SIXBIT /CENA/
3850 036214 62 41 55 00 00 00 SIXBIT /RAM/
3851 036215 41 00 00 00 00 00 SIXBIT /A/
3852 036216 42 00 00 00 00 00 SIXBIT /B/
3853 036217 63 53 00 00 00 00 SIXBIT /SK/
3854 036220 42 65 63 00 00 00 SIXBIT /BUS/
3855 036221 43 62 71 00 00 00 SIXBIT /CRY/
3856 036222 43 64 54 00 00 00 SIXBIT /CTL/
3857 036223 64 51 55 45 00 00 SIXBIT /TIME/
3858 036224 63 60 41 62 45 00 SIXBIT /SPARE/
3859 036225 55 41 62 53 00 00 SIXBIT /MARK/
3860 036226 000000 000000 0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 88
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0262
3861
3862 ; Help text
3863
3864 036227 037 01 0 00 111261 MWDQUE: FMSGCD <Jump field>
3865 036230 037 01 0 00 111264 FMSGCD <Parity bit - Pgm calculates it unless SET PAR is off>
3866 036231 037 01 0 00 111300 FMSGCD <Ouput enable>
3867 036232 037 01 0 00 111304 FMSGCD <Magic # field>
3868 FMSGD <
3869 Source field:
3870 0-AQ 2-0Q 4-0A 6-DQ
3871 036233 037 01 0 00 111310 1-AB 3-0B 5-DA 7-D0>
3872 FMSGD <
3873 ALU Function:
3874 0-Plus 2-Rmin 4-And 6-Xor
3875 036234 037 01 0 00 111326 1-Smin 3-Or 5-Nand 7-Xnor>
3876 FMSGD <
3877 Destination field:
3878 0-QF 2-BA 4-/2BQF 6-*2BQF
3879 036235 037 01 0 00 111347 1-F 3-BF 5-/2BF 7-*2BF>
3880 036236 037 01 0 00 111370 FMSGCD <CC Enable>
3881 036237 037 01 0 00 111373 FMSGCD <RAM Mode>
3882 036240 037 01 0 00 111376 FMSGCD <Port A 0-17>
3883 036241 037 01 0 00 111402 FMSGCD <Port B 0-17>
3884 FMSGD <
3885 Skip field - Select:
3886 00/20-CCCbusAvail 10/30-CCEbusRqst
3887 01/21-CCGrntCsr 11/31-CCOverflow
3888 02/22-CCFeq0 12/32-CCMbSign
3889 03/23-CCCsrChng 13/33-CCMVParChk
3890 04/24-CCEbParerr 14/34-CCCbusParErr
3891 05/25-CCRcvBufAFul 15/35-CCPliParErr
3892 06/26-CCRcvBufBFul 16/36-CCChanErr
3893 07/27-CCXmtrAttn 17/37-CCCbLstWd
3894
3895 20/30-LoadSadReg 23/33-LdLocalMem
3896 21/31-SelMbusFld 24/34-SelCnstFld
3897 036242 037 01 0 00 111406 22/32-RdLocalMem>
3898 FMSGD <
3899 Bus Ctl field - Select:
3900 0-Nul 2-Mbus 4-Cbus
3901 036243 037 01 0 00 111533 1-Pli 3-Fmtr 5-Ebus>
3902 036244 037 01 0 00 111553 FMSGCD <Carry input>
3903 FMSGD <
3904 2910 Control field:
3905 00-JZ 04-PUSH 10-RFCT 14-LDCT
3906 01-CJS 05-JSRP 11-RPCT 15-LOOP
3907 02-JMAP 06-CJV 12-CRTN 16-CONT
3908 036245 037 01 0 00 111557 03-CJP 07-JRP 13-CJPP 17-TWB>
3909 036246 037 01 0 00 111622 FMSGCD <Time field>
3910 036247 037 01 0 00 111625 FMSGCD <Spare bits>
3911 036250 037 01 0 00 111630 FMSGCD <Mark bit>
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 89
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0263
3912
3913 ;#*********************************************************************
3914 ; Zero CRAM addresses specified by "PARG1" and "PARG2"
3915 ;#*********************************************************************
3916
3917 036251 402 00 0 00 035714 DCOMZE: SETZM CWORDL ; clear CRAM words left and
3918 036252 402 00 0 00 035715 SETZM CWORDR ; right
3919 036253 200 00 0 00 035711 MOVE CRAMFR ; get the address to modify
3920 036254 202 00 0 00 035713 MOVEM CADDR ; save address for writing
3921 036255 260 17 0 00 036340 GO DWCRAM ; go write CRAM location
3922 036256 402 00 0 00 044231 SETZM CNAME ; clear 'CRAM loaded' ucode flag
3923 036257 037 07 0 00 000003 TTALTM ; altmode key struck?
3924 036260 334 00 0 00 000000 SKIPA ; no - proceed
3925 036261 263 17 0 00 000000 RTN ; yes - exit
3926 036262 350 01 0 00 035711 AOS 1,CRAMFR ; update the specified address
3927 036263 202 01 0 00 035720 MOVEM 1,ANEXT ; save next address
3928 036264 317 01 0 00 035712 CAMG 1,CRAMTO ; reach end yet?
3929 036265 254 00 0 00 036251 JRST DCOMZE ; no - loop till done
3930 036266 263 17 0 00 000000 RTN ; yes - exit
3931
3932
3933 ;#*********************************************************************
3934 ; Examine CRAM locations
3935 ;#*********************************************************************
3936
3937 036267 200 00 0 00 035711 DCOMEX: MOVE CRAMFR ; get the address to modify
3938 036270 202 00 0 00 035713 MOVEM CADDR ; save address
3939 036271 037 00 0 00 030242 PCRL
3940 036272 037 04 0 00 000000 PNT4 ; print it
3941 036273 037 00 0 00 111633 TMSG </ >
3942 036274 260 17 0 00 036372 GO DRCRAM ; read CRAM location
3943 036275 255 00 0 00 000000 JFCL ; error return
3944 036276 200 02 0 00 035714 MOVE 2,CWORDL ; get left half
3945 036277 200 03 0 00 035715 MOVE 3,CWORDR ; get right half
3946 036300 260 17 0 00 042365 GO PNTWD ; print it
3947 036301 037 07 0 00 000003 TTALTM ; altmode key struck?
3948 036302 334 00 0 00 000000 SKIPA ; no - proceed
3949 JRST [SETOM ALTF ; yes - set altmode typed flag
3950 SETZM MULFLG ; and clear 'examine next' flag
3951 036303 254 00 0 00 111634 JRST DCOMEZ] ; and exit
3952 036304 350 01 0 00 035711 AOS 1,CRAMFR ; update the specified address
3953 036305 202 01 0 00 035720 MOVEM 1,ANEXT ; save next address
3954 036306 317 01 0 00 035712 CAMG 1,CRAMTO ; reach end yet?
3955 036307 254 00 0 00 036267 JRST DCOMEX ; no - loop till done
3956 036310 336 00 0 00 120743' DCOMEZ: SKIPN MULFLG ; in 'examine next'?
3957 036311 037 00 0 00 030242 PCRL ; no - print a blank line
3958 036312 263 17 0 00 000000 RTN ; yes - exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 90
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0264
3959
3960 ;#*********************************************************************
3961 ; List CRAM locations
3962 ;#*********************************************************************
3963
3964 ; Print this CRAM entry
3965
3966 036313 332 00 0 00 120744' DCOMLI: SKIPE MULINI ; in 'examine next'?
3967 036314 037 00 0 00 111637 TMSGC <ADDR/ JUMP PAR OUT MGC SOR FUN DES CC RAM PA PB SK BUS CRY CTL TM SP MK>
3968 036315 200 00 0 00 035711 DCOML0: MOVE CRAMFR ; get the address to list
3969 036316 202 00 0 00 035713 MOVEM CADDR ; save address
3970 036317 260 17 0 00 036372 GO DRCRAM ; read CRAM location
3971 036320 255 00 0 00 000000 JFCL ; error return
3972 036321 037 00 0 00 030242 PCRL ; start a new line
3973 036322 001 04 0 00 035713 PNTOCC 4,CADDR ; print cram address
3974 036323 037 00 0 00 111633 TMSG </ >
3975 036324 200 02 0 00 035714 MOVE 2,CWORDL ; get left word
3976 036325 200 03 0 00 035715 MOVE 3,CWORDR ; get right word
3977 036326 260 17 0 00 042271 GO PNTCRM ; go print it
3978 036327 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
3979 036330 254 00 0 00 036335 JRST DCOMLX ; yes - return
3980 036331 350 01 0 00 035711 AOS 1,CRAMFR ; no - update the specified address
3981 036332 202 01 0 00 035720 MOVEM 1,ANEXT ; save next address
3982 036333 317 01 0 00 035712 CAMG 1,CRAMTO ; reach end yet?
3983 036334 254 00 0 00 036315 JRST DCOML0 ; no - loop till done
3984 036335 336 00 0 00 120743' DCOMLX: SKIPN MULFLG ; in 'examine next'?
3985 036336 037 00 0 00 030242 PCRL ; no - print blank line
3986 036337 263 17 0 00 000000 RTN ; yes - exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 91
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0265
3987
3988 ;#********************************************************************
3989 ; DWCRAM - Load CRAM word at 'CADDR' with data in 'CWORDL' and 'CWORDR'
3990 ;#********************************************************************
3991
3992 036340 261 17 0 00 000000 DWCRAM: RPUT (0,1,2,3) ; save AC's
3993
3994 036344 200 01 0 00 035713 MOVE 1,CADDR ; get actual CRAM load address
3995 036345 242 01 0 00 000001 LSH 1,1 ; convert to address for RAR
3996 036346 660 01 0 00 000001 TRO 1,1 ; set bit 12 (for left 30 bits)
3997 036347 260 17 0 00 035624* GO LDRAR ; load RAR with it
3998 036350 200 02 0 00 035714 MOVE 2,CWORDL ; get left 30 bits
3999 036351 200 03 0 00 035715 MOVE 3,CWORDR ; get right 30 bits
4000 036352 400 01 0 00 000000 SETZ 1, ; ignore 'bad parity' bit
4001 036353 332 00 0 00 034000 SKIPE PARFLG ; calculate parity?
4002 036354 260 17 0 00 042407 GO CALPAR ; yes - do so
4003 036355 200 01 0 00 000002 MOVE 1,2 ; get left 30 bits
4004 036356 260 17 0 00 000000* GO LDCRAM ; load it
4005
4006 036357 200 01 0 00 035713 MOVE 1,CADDR ; get actual CRAM load address
4007 036360 242 01 0 00 000001 LSH 1,1 ; convert to address for RAR
4008 036361 620 01 0 00 000001 TRZ 1,1 ; clear bit 12 (for right 30 bits)
4009 036362 260 17 0 00 036347* GO LDRAR ; load address
4010 036363 200 01 0 00 000003 MOVE 1,3 ; get right 30 bits
4011 036364 260 17 0 00 036356* GO LDCRAM ; load it
4012 036365 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
4013
4014 036371 263 17 0 00 000000 RTN
4015
4016 ;#********************************************************************
4017 ; DRCRAM - Read CRAM word at 'CADDR' into 'CWORDL' and 'CWORDR'
4018 ;#********************************************************************
4019
4020 036372 261 17 0 00 000000 DRCRAM: RPUT (0,1) ; save AC's
4021
4022 036374 200 01 0 00 035713 MOVE 1,CADDR ; get actual CRAM address
4023 036375 242 01 0 00 000001 LSH 1,1 ; convert to address for RAR
4024 036376 660 01 0 00 000001 TRO 1,1 ; set bit 12 (for left 30 bits)
4025 036377 260 17 0 00 036362* GO LDRAR ; load RAR with it
4026 036400 260 17 0 00 000000* GO RDCRAM ; load it
4027 036401 202 01 0 00 035714 MOVEM 1,CWORDL ; save it
4028
4029 036402 200 01 0 00 035713 MOVE 1,CADDR ; get actual CRAM load address
4030 036403 242 01 0 00 000001 LSH 1,1 ; convert to address for RAR
4031 036404 620 01 0 00 000001 TRZ 1,1 ; clear bit 12 (for right 30 bits)
4032 036405 260 17 0 00 036377* GO LDRAR ; load address
4033 036406 260 17 0 00 036400* GO RDCRAM ; load it
4034 036407 202 01 0 00 035715 MOVEM 1,CWORDR ; save it
4035 036410 262 17 0 00 000001 RGET (1,0) ; restore AC's
4036
4037 036412 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 92
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0266
4038
4039 ;#********************************************************************
4040 ;* DEALU - Examine 2901 registers
4041 ;
4042 ; Arguments: Reg1,Reg2
4043 ;#********************************************************************
4044
4045 036413 200 00 0 00 036715 DEALU: MOVE ALUFR ; set up default of register range
4046 036414 202 00 0 00 120764' MOVEM RALUB# ; to be whatever was typed before
4047 036415 200 00 0 00 036716 MOVE ALUTO ; or if nothing typed, then 0-20
4048 036416 202 00 0 00 120765' MOVEM RALUE#
4049
4050 ; Get arguments
4051
4052 036417 200 01 0 00 111665 MOVE 1,[FMSGCD <E2901 reg1,reg2 (CR) (20=QReg)>]
4053 036420 260 17 0 00 035770* GO .OARG ; get first argument
4054 036421 263 17 0 00 000000 RTN ; error/altmode/question - exit
4055 036422 254 00 0 00 036434 JRST DEALU0 ; no arguments given - continue
4056 036423 200 00 0 00 035773* MOVE ARGUM ; get argument
4057 036424 202 00 0 00 120764' MOVEM RALUB ; save in 'from' location
4058 036425 202 00 0 00 120765' MOVEM RALUE ; save in 'to' location
4059
4060 036426 210 01 0 00 111673 MOVN 1,[FMSGCD <E2901 reg1,reg2 (CR)>]
4061 036427 260 17 0 00 036420* GO .OARG ; get 2nd argument
4062 036430 263 17 0 00 000000 RTN ; error/altmode/question - exit
4063 036431 254 00 0 00 036434 JRST DEALU0 ; no arguments given - continue
4064 036432 200 00 0 00 036423* MOVE ARGUM ; get argument
4065 036433 202 00 0 00 120765' MOVEM RALUE ; save in 'to' location
4066
4067 ; Now range check the arguments
4068
4069 036434 331 01 0 00 120764' DEALU0: SKIPL 1,RALUB ; 1st argument in range?
4070 036435 303 01 0 00 000020 CAILE 1,20
4071 JRST [FMSGCD <? Range of 2901 registers is 0-20 (20=QReg)>
4072 SETOM ALTF
4073 GO FIOFF
4074 036436 254 00 0 00 111706 RTN]
4075 036437 331 01 0 00 120765' SKIPL 1,RALUE ; 2nd argument in range?
4076 036440 303 01 0 00 000020 CAILE 1,20
4077 JRST [FMSGCD <? Range of 2901 registers is 0-20 (20=QReg)>
4078 GO FIOFF
4079 036441 254 00 0 00 111712 RTN]
4080 036442 274 01 0 00 120764' SUB 1,RALUB ; see if range ok
4081 JUMPL 1,[FMSGCD <? Range nonsensical>
4082 GO FIOFF
4083 036443 321 01 0 00 110071 RTN]
4084 036444 200 00 0 00 120764' MOVE RALUB ; get 'from' argument
4085 036445 202 00 0 00 036715 MOVEM ALUFR ; save it
4086 036446 200 00 0 00 120765' MOVE RALUE ; get 'to' argument
4087 036447 202 00 0 00 036716 MOVEM ALUTO ; save it
4088 036450 201 00 0 00 000006 MOVEI 6 ; get E2901 flag
4089 036451 202 00 0 00 120723' MOVEM DFLAG ; save it
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 93
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0267
4090
4091 ; Save CRAM location
4092
4093 036452 200 01 0 00 111715 DEBALU: MOVE 1,[-1,,7750] ; set up AOBJN word
4094 036453 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
4095
4096 ; Now do each register
4097
4098 036454 037 00 0 00 111716 DEALU1: TMSGC <R> ; start a new line
4099 036455 200 02 0 00 120764' MOVE 2,RALUB ; get register number
4100 036456 200 00 0 00 000002 MOVE 2 ; get register number
4101 036457 137 02 0 00 111717 DPB 2,[POINT 4,DEALUM+1,14] ; save it in microword
4102 036460 306 02 0 00 000020 CAIN 2,20 ; Q-Register?
4103 036461 037 00 0 00 111720 TMSG <Q> ; yes - print Q
4104 036462 302 02 0 00 000020 CAIE 2,20 ; Q-Register?
4105 036463 037 16 0 00 000003 PNTOCS ; no - print register number
4106 036464 037 00 0 00 111633 TMSG </ >
4107 036465 201 00 0 00 000004 MOVEI 4 ; get source field of 4 (0A)
4108 036466 306 02 0 00 000020 CAIN 2,20 ; Q-Register?
4109 036467 201 00 0 00 000002 MOVEI 2 ; yes - use source of 2 (0Q)
4110 036470 137 00 0 00 111721 DPB [POINT 3,DEALUM+1,2] ; set up source field
4111 036471 201 01 0 00 036674 MOVEI 1,DEALUM ; set up microcode address
4112 036472 260 17 0 00 064254 GO MLOADN ; load/verify it
4113 036473 255 00 0 00 000000 JFCL ; ignore error
4114 036474 201 01 0 00 007750 MOVEI 1,7750 ; get start address
4115 036475 242 01 0 00 000001 LSH 1,1 ; position correctly
4116 036476 260 17 0 00 036405* GO LDRAR ; load the RAR
4117 036477 201 01 0 00 220010 MOVEI 1,SINCYC!MPRUN!TSTEBF ; single step once
4118 036500 260 17 0 00 035623* GO LDCSR
4119 036501 260 17 0 00 035537* GO RDEBUF ; read EBUF contents
4120 036502 200 00 0 00 000001 MOVE 1 ; get register data
4121 036503 037 13 0 00 000000 PNTHW ; print it
4122 036504 350 00 0 00 000002 AOS 2 ; point to next register
4123 036505 202 02 0 00 035720 MOVEM 2,ANEXT ; save next register
4124 036506 037 07 0 00 000003 TTALTM ; altmode key struck?
4125 036507 334 00 0 00 000000 SKIPA ; no - proceed
4126 JRST [SETOM ALTF ; yes - set altmode typed flag
4127 SETZM MULFLG ; and clear 'examine next' flag
4128 036510 254 00 0 00 111722 JRST DEALUX] ; and exit
4129 036511 350 01 0 00 120764' AOS 1,RALUB ; point to next register
4130 036512 317 01 0 00 120765' CAMG 1,RALUE ; done yet?
4131 036513 254 00 0 00 036454 JRST DEALU1 ; no - loop till done
4132
4133 ; Restore CRAM location and exit
4134
4135 036514 336 00 0 00 120743' DEALUX: SKIPN MULFLG ; in 'examine next'?
4136 036515 037 00 0 00 030242 PCRL ; no - print blank line
4137 036516 200 01 0 00 111715 MOVE 1,[-1,,7750] ; set up AOBJN word
4138 036517 260 17 0 00 042610 GO RESCRM ; restore CRAM data
4139 036520 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 94
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0268
4140
4141 ;#********************************************************************
4142 ;* DDALU - Deposit register
4143 ;
4144 ; Format: DALU reg,data
4145 ;#********************************************************************
4146
4147 036521 200 01 0 00 111732 DDALU: MOVE 1,[FMSGCD <DALU reg,data (CR)>]
4148 036522 260 17 0 00 036427* GO .OARG ; get register number
4149 036523 263 17 0 00 000000 RTN ; error/altmode/question - exit
4150 JRST [FMSGCD <? Missing argument>
4151 GO FIOFF
4152 036524 254 00 0 00 104450 RTN]
4153 036525 331 01 0 00 036432* DDALU0: SKIPL 1,ARGUM ; argument in range?
4154 036526 303 01 0 00 000020 CAILE 1,20
4155 JRST [FMSGCD <? Range of 2901 registers is 0-20 (20=QReg)>
4156 GO FIOFF
4157 036527 254 00 0 00 111712 RTN]
4158 036530 202 01 0 00 120764' MOVEM 1,RALUB ; get 'from' argument
4159 036531 202 01 0 00 036715 MOVEM 1,ALUFR ; save it
4160 036532 202 01 0 00 120765' MOVEM 1,RALUE ; get 'to' argument
4161 036533 202 01 0 00 036716 MOVEM 1,ALUTO ; save it
4162 036534 200 01 0 00 111732 MOVE 1,[FMSGCD <DALU reg,data (CR)>]
4163 036535 260 17 0 00 036522* GO .OARG ; get data
4164 036536 263 17 0 00 000000 RTN ; error/altmode/question - exit
4165 JRST [FMSGCD <? Missing argument>
4166 GO FIOFF
4167 036537 254 00 0 00 104450 RTN]
4168 036540 200 00 0 00 036525* MOVE ARGUM ; get argument
4169 036541 202 00 0 00 120736' MOVEM LARG2 ; save it
4170 036542 201 00 0 00 000007 MOVEI 7 ; get D2901 flag
4171 036543 202 00 0 00 120723' MOVEM DFLAG ; save it
4172
4173 ; Save CRAM locations
4174
4175 036544 200 01 0 00 111733 MOVE 1,[-5,,7750] ; set up AOBJN word
4176 036545 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
4177
4178 ; Load microcode
4179
4180 036546 200 02 0 00 120764' MOVE 2,RALUB ; get location to write
4181 036547 137 02 0 00 111734 DPB 2,[POINT 4,DDALUM+7,18] ; set up 2901 register
4182 036550 201 00 0 00 000002 MOVEI 2 ; get destination field of 2 (BA)
4183 036551 306 02 0 00 000020 CAIN 2,20 ; Q-Register?
4184 036552 201 00 0 00 000000 MOVEI 0 ; yes - use destination of 0 (QF)
4185 036553 137 00 0 00 111735 DPB [POINT 3,DDALUM+7,8] ; set up source field
4186 036554 201 01 0 00 036677 MOVEI 1,DDALUM ; set up microcode address
4187 036555 260 17 0 00 064254 GO MLOADN ; load/verify it
4188 036556 255 00 0 00 000000 JFCL ; ignore error
4189 036557 350 00 0 00 000002 AOS 2 ; point to next register
4190 036560 202 02 0 00 035720 MOVEM 2,ANEXT ; save next register
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 95
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0269
4191
4192 ; Now do the deposit
4193
4194 036561 201 01 0 00 007750 MOVEI 1,7750 ; get start address
4195 036562 242 01 0 00 000001 LSH 1,1 ; position correctly
4196 036563 260 17 0 00 036476* GO LDRAR ; load the RAR
4197 036564 201 01 0 00 000010 MOVEI 1,MPRUN ; set initial data
4198 036565 260 17 0 00 036500* GO LDCSR ; start the port
4199 036566 200 01 0 00 120736' MOVE 1,LARG2 ; get data to write
4200 036567 260 17 0 00 000000* GO .DATAO ; give to port
4201 036570 400 01 0 00 000000 SETZ 1, ; stop the port
4202 036571 260 17 0 00 036565* GO LDCSR
4203
4204 ; Check if additional arguments
4205
4206 036572 336 00 0 00 035736* SKIPN ARGFLG ; any more arguments
4207 036573 254 00 0 00 036577 JRST DDALUX ; no - exit
4208 036574 200 00 0 00 035720 MOVE ANEXT ; get register number
4209 036575 202 00 0 00 036540* MOVEM ARGUM ; save it
4210 036576 254 00 0 00 036525 JRST DDALU0 ; loop till done
4211
4212 ; Restore CRAM locations and exit
4213
4214 036577 200 01 0 00 111733 DDALUX: MOVE 1,[-5,,7750] ; set up AOBJN word
4215 036600 260 17 0 00 042610 GO RESCRM ; restore CRAM data
4216 036601 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 96
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0270
4217
4218 ;#********************************************************************
4219 ;* DZALU - Zero 2901 registers
4220 ;
4221 ; Format: ZALU reg1,reg2
4222 ;#********************************************************************
4223
4224 036602 200 00 0 00 036715 DZALU: MOVE ALUFR ; set up default of register range
4225 036603 202 00 0 00 120764' MOVEM RALUB ; to be whatever was typed before
4226 036604 200 00 0 00 036716 MOVE ALUTO ; or if nothing typed, then 0-0
4227 036605 202 00 0 00 120765' MOVEM RALUE
4228
4229 ; Get arguments
4230
4231 036606 200 01 0 00 111743 MOVE 1,[FMSGCD <ZALU reg1,reg2 (CR)>]
4232 036607 260 17 0 00 036535* GO .OARG ; get first argument
4233 036610 263 17 0 00 000000 RTN ; error/altmode/question - exit
4234 036611 254 00 0 00 036623 JRST DZALU0 ; no arguments given - continue
4235 036612 200 00 0 00 036575* MOVE ARGUM ; get argument
4236 036613 202 00 0 00 120764' MOVEM RALUB ; save in 'from' location
4237 036614 202 00 0 00 120765' MOVEM RALUE ; save in 'to' location
4238
4239 036615 210 01 0 00 111743 MOVN 1,[FMSGCD <ZALU reg1,reg2 (CR)>]
4240 036616 260 17 0 00 036607* GO .OARG ; get 2nd argument
4241 036617 263 17 0 00 000000 RTN ; error/altmode/question - exit
4242 036620 254 00 0 00 036623 JRST DZALU0 ; no arguments given - continue
4243 036621 200 00 0 00 036612* MOVE ARGUM ; get argument
4244 036622 202 00 0 00 120765' MOVEM RALUE ; save in 'to' location
4245
4246 ; Now range check the arguments
4247
4248 036623 331 01 0 00 120764' DZALU0: SKIPL 1,RALUB ; 1st argument in range?
4249 036624 303 01 0 00 000020 CAILE 1,20
4250 JRST [FMSGCD <? Range of 2901 registers is 0-20 (20=QReg)>
4251 GO FIOFF
4252 036625 254 00 0 00 111712 RTN]
4253 036626 331 01 0 00 120765' SKIPL 1,RALUE ; 2nd argument in range?
4254 036627 303 01 0 00 000020 CAILE 1,20
4255 JRST [FMSGCD <? Range of 2901 registers is 0-20 (20=QReg)>
4256 GO FIOFF
4257 036630 254 00 0 00 111712 RTN]
4258 036631 274 01 0 00 120764' SUB 1,RALUB ; see if range ok
4259 JUMPL 1,[FMSGCD <? Range nonsensical>
4260 GO FIOFF
4261 036632 321 01 0 00 110071 RTN]
4262 036633 200 00 0 00 120764' MOVE RALUB ; get 'from' argument
4263 036634 202 00 0 00 036715 MOVEM ALUFR ; save it
4264 036635 200 00 0 00 120765' MOVE RALUE ; get 'to' argument
4265 036636 202 00 0 00 036716 MOVEM ALUTO ; save it
4266 036637 201 00 0 00 000010 MOVEI 8 ; get Z2901 flag
4267 036640 202 00 0 00 120723' MOVEM DFLAG ; save it
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 97
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0271
4268
4269 ; Save CRAM location
4270
4271 036641 200 01 0 00 111715 MOVE 1,[-1,,7750] ; set up AOBJN word
4272 036642 260 17 0 00 042566 GO SAVCRM ; save the CRAM location
4273
4274 ; Now do each location
4275
4276 036643 200 02 0 00 120764' DZALU1: MOVE 2,RALUB ; get location to write
4277 036644 137 02 0 00 111744 DPB 2,[POINT 4,DZALUM+1,18] ; set up register number
4278 036645 201 00 0 00 000002 MOVEI 2 ; get destination field of 2 (BA)
4279 036646 306 02 0 00 000020 CAIN 2,20 ; Q-Register?
4280 036647 201 00 0 00 000000 MOVEI 0 ; yes - use destination of 0 (QF)
4281 036650 137 00 0 00 111745 DPB [POINT 3,DZALUM+1,8] ; set up destination field
4282 036651 201 01 0 00 036712 MOVEI 1,DZALUM ; set up microcode address
4283 036652 260 17 0 00 064254 GO MLOADN ; load/verify it
4284 036653 255 00 0 00 000000 JFCL ; ignore error
4285 036654 350 00 0 00 000002 AOS 2 ; point to next register
4286 036655 202 02 0 00 035720 MOVEM 2,ANEXT ; save next register
4287 036656 201 01 0 00 007750 MOVEI 1,7750 ; get start address
4288 036657 242 01 0 00 000001 LSH 1,1 ; position correctly
4289 036660 260 17 0 00 036563* GO LDRAR ; load the RAR
4290 036661 201 01 0 00 020010 MOVEI 1,MPRUN!SINCYC ; start it up
4291 036662 260 17 0 00 036571* GO LDCSR
4292 036663 037 07 0 00 000003 TTALTM ; altmode key struck?
4293 036664 334 00 0 00 000000 SKIPA ; no - proceed
4294 036665 254 00 0 00 036671 JRST DZALUX ; yes - exit
4295 036666 350 01 0 00 120764' AOS 1,RALUB ; point to next location
4296 036667 317 01 0 00 120765' CAMG 1,RALUE ; done yet?
4297 036670 254 00 0 00 036643 JRST DZALU1 ; no - loop till done
4298
4299 ; Restore CRAM location and exit
4300
4301 036671 200 01 0 00 111715 DZALUX: MOVE 1,[-1,,7750] ; set up AOBJN word
4302 036672 260 17 0 00 042610 GO RESCRM ; restore CRAM data
4303 036673 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 98
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0272
4304
4305 ; Microcode to examine 2901's
4306
4307 036674 775077 502004 DEALUM: MWORD <ADDR=7750,JMAP,J=7750,S0A,OR,D=1,OENA,SELE,MGC=4>
4308 036675 431000 005040
4309 036676 777777 777777 -1
4310
4311 ; Microcode to deposit 2901's
4312
4313 036677 775077 510000 DDALUM: MWORD <ADDR=7750,JMAP,J=7751,D=1> ; 7750
4314 036700 001000 000040
4315 036701 775177 530000 MWORD <CJP,J=7753,D=1,CENA,CCER> ; 7751
4316 036702 001400 100060
4317 036703 775277 510000 MWORD <JMAP,J=7751,D=1> ; 7752
4318 036704 001000 000040
4319 036705 775300 000010 MWORD <CONT,SD0,OR,D=2,SELE,MGC=10> ; 7753
4320 036706 732000 005340
4321 036707 775477 540000 MWORD <JMAP,J=7754,D=1> ; 7754
4322 036710 001000 000040
4323 036711 777777 777777 -1
4324
4325 ; Microcode to zero 2901's
4326
4327 036712 775077 500000 DZALUM: MWORD <ADDR=7750,JMAP,J=7750,S0A,AND,D=2>
4328 036713 442000 000040
4329 036714 777777 777777 -1
4330
4331 ; Arguments
4332
4333 036715 000000 000000 ALUFR: 0 ; default range of
4334 036716 000000 000020 ALUTO: 20 ; registers
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 99
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0273
4335
4336 ;#********************************************************************
4337 ;* DELOCS - Examine local storage
4338 ;
4339 ; Format: ELOCS adr1,adr2
4340 ;#********************************************************************
4341
4342 036717 200 00 0 00 037210 DELOCS: MOVE LOCFR ; set up default of local storage range
4343 036720 202 00 0 00 120770' MOVEM RLOCB# ; to be whatever was typed before
4344 036721 200 00 0 00 037211 MOVE LOCTO ; or if nothing typed, then 0-0
4345 036722 202 00 0 00 120771' MOVEM RLOCE#
4346
4347 ; Get arguments
4348
4349 036723 200 01 0 00 111754 MOVE 1,[FMSGCD <ELOCS addr1,addr2 (CR)>]
4350 036724 260 17 0 00 036616* GO .OARG ; get first address
4351 036725 263 17 0 00 000000 RTN ; error/altmode/question - exit
4352 036726 254 00 0 00 036740 JRST DELOC0 ; no arguments given - continue
4353 036727 200 00 0 00 036621* MOVE ARGUM ; get argument
4354 036730 202 00 0 00 120770' MOVEM RLOCB ; save in 'from' location
4355 036731 202 00 0 00 120771' MOVEM RLOCE ; save in 'to' location
4356
4357 036732 210 01 0 00 111754 MOVN 1,[FMSGCD <ELOCS addr1,addr2 (CR)>]
4358 036733 260 17 0 00 036724* GO .OARG ; get 2nd address
4359 036734 263 17 0 00 000000 RTN ; error/altmode/question - exit
4360 036735 254 00 0 00 036740 JRST DELOC0 ; no arguments given - continue
4361 036736 200 00 0 00 036727* MOVE ARGUM ; get argument
4362 036737 202 00 0 00 120771' MOVEM RLOCE ; save in 'to' location
4363
4364 ; Now range check the arguments
4365
4366 036740 331 01 0 00 120770' DELOC0: SKIPL 1,RLOCB ; 1st argument in range?
4367 036741 303 01 0 00 001777 CAILE 1,1777
4368 JRST [FMSGCD <? Range of local storage locations is 0-1777>
4369 SETOM ALTF
4370 GO FIOFF
4371 036742 254 00 0 00 111767 RTN]
4372 036743 331 01 0 00 120771' SKIPL 1,RLOCE ; 2nd argument in range?
4373 036744 303 01 0 00 001777 CAILE 1,1777
4374 JRST [FMSGCD <? Range of local storage locations is 0-1777>
4375 GO FIOFF
4376 036745 254 00 0 00 111773 RTN]
4377 036746 274 01 0 00 120770' SUB 1,RLOCB ; see if range ok
4378 JUMPL 1,[FMSGCD <? Range nonsensical>
4379 GO FIOFF
4380 036747 321 01 0 00 110071 RTN]
4381 036750 200 00 0 00 120770' MOVE RLOCB ; get 'from' argument
4382 036751 202 00 0 00 037210 MOVEM LOCFR ; save it
4383 036752 200 00 0 00 120771' MOVE RLOCE ; get 'to' argument
4384 036753 202 00 0 00 037211 MOVEM LOCTO ; save it
4385 036754 201 00 0 00 000011 MOVEI 9 ; get ELOCS flag
4386 036755 202 00 0 00 120723' MOVEM DFLAG ; save it
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 100
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0274
4387
4388 ; Save CRAM locations
4389
4390 036756 200 01 0 00 111776 DEBELO: MOVE 1,[-2,,7750] ; set up AOBJN word
4391 036757 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
4392 036760 200 07 0 00 120770' MOVE 7,RLOCB ; get initial address
4393
4394 ; Now do each location
4395
4396 036761 200 06 0 00 120770' DELOC1: MOVE 6,RLOCB ; get current address
4397 036762 274 06 0 00 000007 SUB 6,7 ; calculate word # (0..n)
4398 036763 602 06 0 00 000003 TRNE 6,3 ; multiple of 4?
4399 036764 037 00 0 00 103540 TMSG < > ; no - print a few spaces
4400 036765 606 06 0 00 000003 TRNN 6,3 ; multiple of 4?
4401 GO [TMSGC <LS> ; yes - start a new line
4402 MOVE RLOCB
4403 PNTOCS
4404 TMSG </ >
4405 036766 260 17 0 00 112000 RTN]
4406 036767 200 00 0 00 120770' MOVE RLOCB ; get local storage address
4407 036770 137 00 0 00 112005 DPB [POINT 10,DELOCM,35] ; save it in microword
4408 036771 201 01 0 00 037165 MOVEI 1,DELOCM ; set up microcode address
4409 036772 260 17 0 00 064254 GO MLOADN ; load/verify it
4410 036773 255 00 0 00 000000 JFCL ; ignore error
4411 036774 201 01 0 00 007750 MOVEI 1,7750 ; get start address
4412 036775 242 01 0 00 000001 LSH 1,1 ; position correctly
4413 036776 260 17 0 00 036660* GO LDRAR ; load the RAR
4414 036777 201 01 0 00 000010 MOVEI 1,MPRUN ; start it up
4415 037000 260 17 0 00 036662* GO LDCSR ; write to CSR register
4416 037001 201 01 0 00 200000 MOVEI 1,TSTEBF ; set up to read EBUF data
4417 037002 260 17 0 00 037000* GO LDCSR ; write to CSR register
4418 037003 260 17 0 00 036501* GO RDEBUF ; read EBUF contents
4419 037004 200 00 0 00 000001 MOVE 1 ; get register data
4420 037005 037 13 0 00 000000 PNTHW ; print it
4421 037006 037 07 0 00 000003 TTALTM ; altmode key struck?
4422 037007 334 00 0 00 000000 SKIPA ; no - proceed
4423 JRST [SETOM ALTF ; yes - set altmode typed flag
4424 SETZM MULFLG ; and clear 'examine next' flag
4425 037010 254 00 0 00 112006 JRST DELOCX] ; and exit
4426 037011 350 01 0 00 120770' AOS 1,RLOCB ; point to next location
4427 037012 202 01 0 00 035720 MOVEM 1,ANEXT ; save next location
4428 037013 317 01 0 00 120771' CAMG 1,RLOCE ; done yet?
4429 037014 254 00 0 00 036761 JRST DELOC1 ; no - loop till done
4430
4431 ; Restore CRAM locations and exit
4432
4433 037015 336 00 0 00 120743' DELOCX: SKIPN MULFLG ; in 'examine next'?
4434 037016 037 00 0 00 030242 PCRL ; no - print blank line
4435 037017 200 01 0 00 111776 MOVE 1,[-2,,7750] ; set up AOBJN word
4436 037020 260 17 0 00 042610 GO RESCRM ; restore CRAM data
4437 037021 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 101
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0275
4438
4439 ;#********************************************************************
4440 ;* DDLOCS - Deposit local storage
4441 ;
4442 ; Format: DLOCS adr,data
4443 ;#********************************************************************
4444
4445 037022 200 01 0 00 112016 DDLOCS: MOVE 1,[FMSGCD <DLOCS addr,data (CR)>]
4446 037023 260 17 0 00 036733* GO .OARG ; get address
4447 037024 263 17 0 00 000000 RTN ; error/altmode/question - exit
4448 JRST [FMSGCD <? Missing argument>
4449 GO FIOFF
4450 037025 254 00 0 00 104450 RTN]
4451 037026 200 00 0 00 036736* DDLOC0: MOVE ARGUM ; get argument
4452 037027 301 00 0 00 000000 CAIL 0 ; in range 0-1777?
4453 037030 303 00 0 00 001777 CAILE 1777
4454 JRST [FMSGCD <? Range of Local Storage addresses is 0-1777>
4455 GO FIOFF
4456 037031 254 00 0 00 112031 RTN]
4457 037032 202 00 0 00 037210 MOVEM LOCFR ; save 'from' argument
4458 037033 202 00 0 00 037211 MOVEM LOCTO ; save 'to' argument
4459 037034 200 01 0 00 112016 MOVE 1,[FMSGCD <DLOCS addr,data (CR)>]
4460 037035 260 17 0 00 037023* GO .OARG ; get data
4461 037036 263 17 0 00 000000 RTN ; error/altmode/question - exit
4462 JRST [FMSGCD <? Missing argument>
4463 GO FIOFF
4464 037037 254 00 0 00 104450 RTN]
4465 037040 200 00 0 00 037026* MOVE ARGUM ; get argument
4466 037041 202 00 0 00 120736' MOVEM LARG2# ; save it
4467 037042 201 00 0 00 000012 MOVEI ^D10 ; get DLOCS flag
4468 037043 202 00 0 00 120723' MOVEM DFLAG ; save it
4469
4470 ; Save CRAM locations
4471
4472 037044 200 01 0 00 111733 MOVE 1,[-5,,7750] ; set up AOBJN word
4473 037045 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
4474
4475 ; Load microcode
4476
4477 037046 200 00 0 00 037210 MOVE LOCFR ; get location to write
4478 037047 137 00 0 00 112034 DPB [POINT 10,DDLOCM+8,35] ; set up local storage address
4479 037050 202 00 0 00 035720 MOVEM ANEXT ; save address
4480 037051 350 00 0 00 035720 AOS ANEXT ; set to next address
4481 037052 201 01 0 00 037172 MOVEI 1,DDLOCM ; set up microcode address
4482 037053 260 17 0 00 064254 GO MLOADN ; load/verify it
4483 037054 255 00 0 00 000000 JFCL ; ignore error
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 102
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0276
4484
4485 ; Now do the deposit
4486
4487 037055 201 01 0 00 007750 MOVEI 1,7750 ; get start address
4488 037056 242 01 0 00 000001 LSH 1,1 ; position correctly
4489 037057 260 17 0 00 036776* GO LDRAR ; load the register
4490 037060 201 01 0 00 000010 MOVEI 1,MPRUN ; no - set initial data
4491 037061 260 17 0 00 037002* GO LDCSR
4492 037062 200 01 0 00 120736' MOVE 1,LARG2 ; get data to write
4493 037063 260 17 0 00 036567* GO .DATAO ; give to port
4494 037064 400 01 0 00 000000 SETZ 1, ; stop the port
4495 037065 260 17 0 00 037061* GO LDCSR
4496
4497 ; Check if additional arguments
4498
4499 037066 336 00 0 00 036572* SKIPN ARGFLG ; any more arguments
4500 037067 254 00 0 00 037073 JRST DDLOCX ; no - exit
4501 037070 200 00 0 00 035720 MOVE ANEXT ; get register number
4502 037071 202 00 0 00 037040* MOVEM ARGUM ; save it
4503 037072 254 00 0 00 037026 JRST DDLOC0 ; loop till done
4504
4505 ; Restore CRAM locations and exit
4506
4507 037073 200 01 0 00 111733 DDLOCX: MOVE 1,[-5,,7750] ; set up AOBJN word
4508 037074 260 17 0 00 042610 GO RESCRM ; restore CRAM data
4509 037075 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 103
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0277
4510
4511 ;#********************************************************************
4512 ;* DZLOCS - Zero local storage
4513 ;
4514 ; Format: ZLOCS adr1,adr2
4515 ;#********************************************************************
4516
4517 037076 200 00 0 00 037210 DZLOCS: MOVE LOCFR ; set up default of local storage range
4518 037077 202 00 0 00 120770' MOVEM RLOCB ; to be whatever was typed before
4519 037100 200 00 0 00 037211 MOVE LOCTO ; or if nothing typed, then 0-0
4520 037101 202 00 0 00 120771' MOVEM RLOCE
4521
4522 ; Get arguments
4523
4524 037102 200 01 0 00 112043 MOVE 1,[FMSGCD <ZLOCS addr1,addr2 (CR)>]
4525 037103 260 17 0 00 037035* GO .OARG ; get first address
4526 037104 263 17 0 00 000000 RTN ; error/altmode/question - exit
4527 037105 254 00 0 00 037117 JRST DZLOC0 ; no arguments given - continue
4528 037106 200 00 0 00 037071* MOVE ARGUM ; get argument
4529 037107 202 00 0 00 120770' MOVEM RLOCB ; save in 'from' location
4530 037110 202 00 0 00 120771' MOVEM RLOCE ; save in 'to' location
4531
4532 037111 210 01 0 00 112043 MOVN 1,[FMSGCD <ZLOCS addr1,addr2 (CR)>]
4533 037112 260 17 0 00 037103* GO .OARG ; get 2nd address
4534 037113 263 17 0 00 000000 RTN ; error/altmode/question - exit
4535 037114 254 00 0 00 037117 JRST DZLOC0 ; no arguments given - continue
4536 037115 200 00 0 00 037106* MOVE ARGUM ; get argument
4537 037116 202 00 0 00 120771' MOVEM RLOCE ; save in 'to' location
4538
4539 ; Now range check the arguments
4540
4541 037117 331 01 0 00 120770' DZLOC0: SKIPL 1,RLOCB ; 1st argument in range?
4542 037120 303 01 0 00 001777 CAILE 1,1777
4543 JRST [FMSGCD <? Range of local storage locations is 0-1777>
4544 GO FIOFF
4545 037121 254 00 0 00 111773 RTN]
4546 037122 331 01 0 00 120771' SKIPL 1,RLOCE ; 2nd argument in range?
4547 037123 303 01 0 00 001777 CAILE 1,1777
4548 JRST [FMSGCD <? Range of local storage locations is 0-1777>
4549 GO FIOFF
4550 037124 254 00 0 00 111773 RTN]
4551 037125 274 01 0 00 120770' SUB 1,RLOCB ; see if range ok
4552 JUMPL 1,[FMSGCD <? Range nonsensical>
4553 GO FIOFF
4554 037126 321 01 0 00 110071 RTN]
4555 037127 200 00 0 00 120770' MOVE RLOCB ; get 'from' argument
4556 037130 202 00 0 00 037210 MOVEM LOCFR ; save it
4557 037131 200 00 0 00 120771' MOVE RLOCE ; get 'to' argument
4558 037132 202 00 0 00 037211 MOVEM LOCTO ; save it
4559 037133 201 00 0 00 000013 MOVEI ^D11 ; get ZLOCS flag
4560 037134 202 00 0 00 120723' MOVEM DFLAG ; save it
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 104
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0278
4561
4562 ; Save CRAM location
4563
4564 037135 200 01 0 00 111715 MOVE 1,[-1,,7750] ; set up AOBJN word
4565 037136 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
4566
4567 ; Now do each location
4568
4569 037137 200 00 0 00 120770' DZLOC1: MOVE RLOCB ; get local storage address
4570 037140 137 00 0 00 112044 DPB [POINT 10,DZLOCM,35] ; set up local storage address
4571 037141 201 01 0 00 037205 MOVEI 1,DZLOCM ; set up microcode address
4572 037142 260 17 0 00 064254 GO MLOADN ; load/verify it
4573 037143 255 00 0 00 000000 JFCL ; ignore error
4574 037144 201 01 0 00 007750 MOVEI 1,7750 ; get start address
4575 037145 242 01 0 00 000001 LSH 1,1 ; position correctly
4576 037146 260 17 0 00 037057* GO LDRAR ; load the RAR
4577 037147 201 01 0 00 000010 MOVEI 1,MPRUN ; start it up
4578 037150 260 17 0 00 037065* GO LDCSR
4579 037151 400 01 0 00 000000 SETZ 1, ; stop the port
4580 037152 260 17 0 00 037150* GO LDCSR
4581 037153 037 07 0 00 000003 TTALTM ; altmode key struck?
4582 037154 334 00 0 00 000000 SKIPA ; no - proceed
4583 037155 254 00 0 00 037162 JRST DZLOCX ; yes - exit
4584 037156 350 01 0 00 120770' AOS 1,RLOCB ; point to next register
4585 037157 202 01 0 00 035720 MOVEM 1,ANEXT ; save next location
4586 037160 317 01 0 00 120771' CAMG 1,RLOCE ; done yet?
4587 037161 254 00 0 00 037137 JRST DZLOC1 ; no - loop till done
4588
4589 ; Restore CRAM location and exit
4590
4591 037162 200 01 0 00 111715 DZLOCX: MOVE 1,[-1,,7750] ; set up AOBJN word
4592 037163 260 17 0 00 042610 GO RESCRM ; restore CRAM data
4593 037164 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 105
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0279
4594
4595 ; Microcode to examine local storage
4596
4597 037165 775077 510000 DELOCM: MWORD <ADDR=7750,JMAP,J=7751,SD0,OR,D=2,RDLM>
4598 037166 732000 220040
4599 037167 775177 512004 MWORD <JMAP,J=7751,S0A,OR,D=1,OENA,SELE,MGC=4>
4600 037170 431000 005040
4601 037171 777777 777777 -1
4602
4603 ; Microcode to deposit local storage
4604
4605 037172 775077 510000 DDLOCM: MWORD <ADDR=7750,JMAP,J=7751,D=1> ; 7750
4606 037173 001000 000040
4607 037174 775177 530000 MWORD <CJP,J=7753,D=1,CENA,CCER> ; 7751
4608 037175 001400 100060
4609 037176 775277 510000 MWORD <JMAP,J=7751,D=1> ; 7752
4610 037177 001000 000040
4611 037200 775300 000010 MWORD <CONT,SD0,OR,D=2,SELE,MGC=10> ; 7753
4612 037201 732000 005340
4613 037202 775477 542000 MWORD <JMAP,J=7754,S0A,OR,D=1,OENA,LDLM,MGC=0>; 7754
4614 037203 431000 230040
4615 037204 777777 777777 -1
4616
4617 ; Microcode to zero local storage
4618
4619 037205 775077 502000 DZLOCM: MWORD <ADDR=7750,JMAP,J=7750,S0A,AND,D=1,LDLM,OENA>
4620 037206 441000 230040
4621 037207 777777 777777 -1
4622
4623 ; Arguments
4624
4625 037210 000000 000000 LOCFR: 0 ; default range of
4626 037211 000000 000000 LOCTO: 0 ; locations
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 106
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0280
4627
4628 ;#********************************************************************
4629 ;* DMARK - Set mark bit in CRAM locations
4630 ;#********************************************************************
4631
4632 ; First check for any argument
4633
4634 037212 336 00 0 00 037066* DMARK: SKIPN ARGFLG ; argument given?
4635 JRST [FMSGCD <? Missing argument>
4636 GO FIOFF
4637 037213 254 00 0 00 104450 RTN]
4638
4639 ; Obtain argument
4640
4641 037214 200 01 0 00 112053 DMARK0: MOVE 1,[FMSGCD <MARK addr,addr,... (CR)>]
4642 037215 260 17 0 00 037112* GO .OARG ; get argument
4643 037216 263 17 0 00 000000 RTN ; error/altmode/question - exit
4644 037217 263 17 0 00 000000 RTN ; done - no more arguments
4645 037220 331 01 0 00 037115* SKIPL 1,ARGUM ; argument out of range?
4646 037221 303 01 0 00 007777 CAILE 1,7777 ; (0-7777)
4647 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
4648 GO FIOFF
4649 037222 254 00 0 00 107217 RTN]
4650
4651 ; Then ensure the port is stopped
4652
4653 037223 260 17 0 00 035705* GO ISTOP ; stop the port
4654
4655 ; Now obtain CRAM data and set MARK bit
4656
4657 037224 202 01 0 00 035713 MOVEM 1,CADDR ; set up address to load
4658 037225 476 00 0 00 035714 SETOM CWORDL ; initialize left half
4659 037226 476 00 0 00 035715 SETOM CWORDR ; initialize right half
4660 037227 260 17 0 00 036372 GO DRCRAM ; read the data
4661 037230 200 02 0 00 035714 MOVE 2,CWORDL ; get left half
4662 037231 200 03 0 00 035715 MOVE 3,CWORDR ; get right half
4663 037232 660 03 0 00 000001 TRO 3,1 ; set mark bit
4664 037233 202 03 0 00 035715 MOVEM 3,CWORDR ; save data
4665 037234 261 17 0 00 034000 PUT PARFLG ; save state of parity flag
4666 037235 402 00 0 00 034000 SETZM PARFLG ; clear parity flag
4667 037236 260 17 0 00 036340 GO DWCRAM ; load CRAM data
4668 037237 262 17 0 00 034000 GET PARFLG ; restore state of parity flag
4669 037240 254 00 0 00 037214 JRST DMARK0 ; get next address
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 107
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0281
4670
4671 ;#********************************************************************
4672 ;* DRMARK - Remove mark bit in CRAM locations
4673 ;#********************************************************************
4674
4675 ; First check for any argument
4676
4677 037241 336 00 0 00 037212* DRMARK: SKIPN ARGFLG ; argument given?
4678 JRST [FMSGCD <? Missing argument>
4679 GO FIOFF
4680 037242 254 00 0 00 104450 RTN]
4681
4682 ; Obtain argument
4683
4684 037243 200 01 0 00 112062 DRMAR0: MOVE 1,[FMSGCD <RMARK addr,addr,... (CR)>]
4685 037244 260 17 0 00 037215* GO .OARG ; get argument
4686 037245 263 17 0 00 000000 RTN ; error/altmode/question - exit
4687 037246 263 17 0 00 000000 RTN ; done - no more arguments
4688 037247 331 01 0 00 037220* SKIPL 1,ARGUM ; argument out of range?
4689 037250 303 01 0 00 007777 CAILE 1,7777 ; (0-7777)
4690 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
4691 GO FIOFF
4692 037251 254 00 0 00 107217 RTN]
4693
4694 ; Then ensure the port is stopped
4695
4696 037252 260 17 0 00 037223* GO ISTOP ; stop the port
4697
4698 ; Now obtain CRAM data and set MARK bit
4699
4700 037253 202 01 0 00 035713 MOVEM 1,CADDR ; set up address to load
4701 037254 476 00 0 00 035714 SETOM CWORDL ; initialize left half
4702 037255 476 00 0 00 035715 SETOM CWORDR ; initialize right half
4703 037256 260 17 0 00 036372 GO DRCRAM ; read the data
4704 037257 200 02 0 00 035714 MOVE 2,CWORDL ; get left half
4705 037260 200 03 0 00 035715 MOVE 3,CWORDR ; get right half
4706 037261 620 03 0 00 000001 TRZ 3,1 ; clear mark bit
4707 037262 202 03 0 00 035715 MOVEM 3,CWORDR ; save data
4708 037263 261 17 0 00 034000 PUT PARFLG ; save state of parity flag
4709 037264 402 00 0 00 034000 SETZM PARFLG ; clear parity flag
4710 037265 260 17 0 00 036340 GO DWCRAM ; load CRAM data
4711 037266 262 17 0 00 034000 GET PARFLG ; restore state of parity flag
4712 037267 254 00 0 00 037243 JRST DRMAR0 ; get next address
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 108
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0282
4713
4714 ;#********************************************************************
4715 ;* DCMARK - Clear all mark bits
4716 ;
4717 ; If arguments are given, they are assumed to the the locations between
4718 ; which all mark bits are to be removed.
4719 ;#********************************************************************
4720
4721 ; Start to process the arguments typed - both should be CRAM
4722 ; addresses in octal.
4723
4724 037270 400 05 0 00 000000 DCMARK: SETZ 5, ; init range of addresses
4725 037271 201 06 0 00 007777 MOVEI 6,7777 ; to 0-7777
4726
4727 ; Get first address
4728
4729 037272 200 01 0 00 112071 MOVE 1,[FMSGCD <CMARK addr1,addr2 (CR)>]
4730 037273 260 17 0 00 037244* GO .OARG ; get first address
4731 037274 263 17 0 00 000000 RTN ; error/altmode/question - exit
4732 037275 254 00 0 00 037307 JRST DCMAR0 ; no arguments given - continue
4733 037276 200 00 0 00 037247* MOVE ARGUM ; get argument
4734 037277 202 00 0 00 000005 MOVEM 5 ; save in 'from' location
4735 037300 202 00 0 00 000006 MOVEM 6 ; save in 'to' location
4736
4737 ; Get 2nd address
4738
4739 037301 210 01 0 00 112071 MOVN 1,[FMSGCD <CMARK addr1,addr2 (CR)>]
4740 037302 260 17 0 00 037273* GO .OARG ; get first address
4741 037303 263 17 0 00 000000 RTN ; error/altmode/question - exit
4742 037304 254 00 0 00 037307 JRST DCMAR0 ; no arguments given - continue
4743 037305 200 00 0 00 037276* MOVE ARGUM ; get argument
4744 037306 202 00 0 00 000006 MOVEM 6 ; save in 'to' location
4745
4746 ; Now range check the arguments
4747
4748 037307 331 00 0 00 000005 DCMAR0: SKIPL 5 ; 1st argument in range?
4749 037310 303 05 0 00 007777 CAILE 5,7777
4750 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
4751 GO FIOFF
4752 037311 254 00 0 00 107217 RTN]
4753 037312 331 01 0 00 000006 SKIPL 1,6 ; 2nd argument in range?
4754 037313 303 06 0 00 007777 CAILE 6,7777
4755 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
4756 GO FIOFF
4757 037314 254 00 0 00 107217 RTN]
4758 037315 274 01 0 00 000005 SUB 1,5 ; see if range ok
4759 JUMPL 1,[FMSGCD <? Range nonsensical>
4760 GO FIOFF
4761 037316 321 01 0 00 110071 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 109
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0283
4762
4763 ; Then ensure the port is stopped
4764
4765 037317 260 17 0 00 037252* GO ISTOP ; stop the port
4766
4767 ; Now obtain CRAM data and load back into CRAM without MARK bit set
4768
4769 037320 202 05 0 00 035713 DCMAR1: MOVEM 5,CADDR ; set up address to load
4770 037321 476 00 0 00 035714 SETOM CWORDL ; initialize left half
4771 037322 476 00 0 00 035715 SETOM CWORDR ; initialize right half
4772 037323 260 17 0 00 036372 GO DRCRAM ; read the data
4773 037324 200 02 0 00 035714 MOVE 2,CWORDL ; get left half
4774 037325 200 03 0 00 035715 MOVE 3,CWORDR ; get right half
4775 037326 626 03 0 00 000001 TRZN 3,1 ; clear mark bit - set?
4776 037327 254 00 0 00 037335 JRST DCMAR2 ; no - continue
4777 037330 202 03 0 00 035715 MOVEM 3,CWORDR ; save data
4778 037331 261 17 0 00 034000 PUT PARFLG ; save state of parity flag
4779 037332 402 00 0 00 034000 SETZM PARFLG ; clear parity flag
4780 037333 260 17 0 00 036340 GO DWCRAM ; load CRAM data
4781 037334 262 17 0 00 034000 GET PARFLG ; restore state of parity flag
4782 037335 350 00 0 00 000005 DCMAR2: AOS 5 ; increment 'from' address
4783 037336 317 05 0 00 000006 CAMG 5,6 ; exceed 'to' address?
4784 037337 254 00 0 00 037320 JRST DCMAR1 ; no - get next address
4785 037340 263 17 0 00 000000 RTN ; yes - exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 110
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0284
4786
4787 ;#********************************************************************
4788 ;* DLMARK - List locations with mark bit set
4789 ;
4790 ; If arguments are given, they are assumed to the the locations between
4791 ; which all mark bits are to be listed.
4792 ;#********************************************************************
4793
4794 ; Start to process the arguments typed - both should be CRAM
4795 ; addresses in octal.
4796
4797 037341 400 05 0 00 000000 DLMARK: SETZ 5, ; init range of addresses
4798 037342 201 06 0 00 007777 MOVEI 6,7777 ; to 0-7777
4799
4800 ; Get first address
4801
4802 037343 200 01 0 00 112100 MOVE 1,[FMSGCD <LMARK addr1,addr2 (CR)>]
4803 037344 260 17 0 00 037302* GO .OARG ; get first address
4804 037345 263 17 0 00 000000 RTN ; error/altmode/question - exit
4805 037346 254 00 0 00 037360 JRST DLMAR0 ; no arguments given - continue
4806 037347 200 00 0 00 037305* MOVE ARGUM ; get argument
4807 037350 202 00 0 00 000005 MOVEM 5 ; save in 'from' location
4808 037351 202 00 0 00 000006 MOVEM 6 ; save in 'to' location
4809
4810 ; Get 2nd address
4811
4812 037352 210 01 0 00 112100 MOVN 1,[FMSGCD <LMARK addr1,addr2 (CR)>]
4813 037353 260 17 0 00 037344* GO .OARG ; get first address
4814 037354 263 17 0 00 000000 RTN ; error/altmode/question - exit
4815 037355 254 00 0 00 037360 JRST DLMAR0 ; no arguments given - continue
4816 037356 200 00 0 00 037347* MOVE ARGUM ; get argument
4817 037357 202 00 0 00 000006 MOVEM 6 ; save in 'to' location
4818
4819 ; Now range check the arguments
4820
4821 037360 331 00 0 00 000005 DLMAR0: SKIPL 5 ; 1st argument in range?
4822 037361 303 05 0 00 007777 CAILE 5,7777
4823 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
4824 GO FIOFF
4825 037362 254 00 0 00 107217 RTN]
4826 037363 331 01 0 00 000006 SKIPL 1,6 ; 2nd argument in range?
4827 037364 303 06 0 00 007777 CAILE 6,7777
4828 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
4829 GO FIOFF
4830 037365 254 00 0 00 107217 RTN]
4831 037366 274 01 0 00 000005 SUB 1,5 ; see if range ok
4832 JUMPL 1,[FMSGCD <? Range nonsensical>
4833 GO FIOFF
4834 037367 321 01 0 00 110071 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 111
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0285
4835
4836 ; Then ensure the port is stopped
4837
4838 037370 260 17 0 00 037317* GO ISTOP ; stop the port
4839 037371 200 07 0 00 112101 MOVE 7,[-2] ; initialize mark bit count
4840 037372 037 00 0 00 112102 TMSGC <Mark bit set at: >
4841
4842 ; Now obtain CRAM data and check mark bit
4843
4844 037373 202 05 0 00 035713 DLMAR1: MOVEM 5,CADDR ; set up address to load
4845 037374 476 00 0 00 035714 SETOM CWORDL ; initialize left half
4846 037375 476 00 0 00 035715 SETOM CWORDR ; initialize right half
4847 037376 260 17 0 00 036372 GO DRCRAM ; read the data
4848 037377 200 03 0 00 035715 MOVE 3,CWORDR ; get right word
4849 037400 606 03 0 00 000001 TRNN 3,1 ; mark bit set?
4850 037401 254 00 0 00 037407 JRST DLMAR2 ; no - continue
4851
4852 ; Print location
4853
4854 037402 350 00 0 00 000007 AOS 7 ; next 5 characters
4855 037403 303 07 0 00 000007 CAILE 7,7 ; done with line?
4856 GO [SETO 7, ; yes - init counter
4857 TMSGC < >
4858 037404 260 17 0 00 112114 RTN]
4859 037405 001 04 0 00 000005 PNTOCC 4,5 ; print address
4860 037406 037 00 0 00 000040 PSP ; print a space
4861
4862 ; Increment to next location
4863
4864 037407 037 07 0 00 000003 DLMAR2: TTALTM ; altmode key struck?
4865 037410 334 00 0 00 000000 SKIPA ; no - proceed
4866 037411 254 00 0 00 037415 JRST DLMARX ; yes - exit
4867 037412 350 00 0 00 000005 AOS 5 ; increment 'from' address
4868 037413 317 05 0 00 000006 CAMG 5,6 ; exceed 'to' address?
4869 037414 254 00 0 00 037373 JRST DLMAR1 ; no - get next address
4870 037415 037 00 0 00 030242 DLMARX: PCRL ; yes - print blank line
4871 037416 263 17 0 00 000000 RTN ; and exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 112
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0286
4872
4873 ;#********************************************************************
4874 ;* DDPLI - Deposit data to PLI
4875 ;
4876 ; Format: DPLI lnkctl,data,repcount
4877 ;#********************************************************************
4878
4879 ; Get first argument - link control bits
4880
4881 037417 200 01 0 00 037610 DDPLI: MOVE 1,DPLIH ; get help text
4882 037420 260 17 0 00 037353* GO .OARG ; get address
4883 037421 263 17 0 00 000000 RTN ; error/altmode/question - exit
4884 JRST [FMSGCD <? Missing argument>
4885 GO FIOFF
4886 037422 254 00 0 00 104450 RTN]
4887 037423 331 01 0 00 037356* DDPLI0: SKIPL 1,ARGUM ; get argument
4888 037424 303 01 0 00 000017 CAILE 1,17 ; in range 0-17?
4889 JRST [FMSGCD <? Range of PLI link control bits is 0-17>
4890 GO FIOFF
4891 037425 254 00 0 00 112130 RTN]
4892 037426 202 01 0 00 037605 MOVEM 1,PLILNK ; save link control bits
4893
4894 ; Get second argument - data
4895
4896 037427 200 01 0 00 037610 MOVE 1,DPLIH ; get help text
4897 037430 260 17 0 00 037420* GO .OARG ; get data
4898 037431 263 17 0 00 000000 RTN ; error/altmode/question - exit
4899 JRST [FMSGCD <? Missing argument>
4900 GO FIOFF
4901 037432 254 00 0 00 104450 RTN]
4902 037433 200 00 0 00 037423* MOVE ARGUM ; get argument
4903 037434 202 00 0 00 037606 MOVEM PLIDAT ; save it
4904
4905 ; Get third argument - repeat count
4906
4907 037435 210 01 0 00 037610 MOVN 1,DPLIH ; get help text
4908 037436 260 17 0 00 037430* GO .OARG ; get data
4909 037437 263 17 0 00 000000 RTN ; error/altmode/question - exit
4910 037440 402 00 0 00 037433* SETZM ARGUM ; no argument - set to 0
4911 037441 200 00 0 00 037440* MOVE ARGUM ; get argument
4912 037442 202 00 0 00 037607 MOVEM PLIREP ; save it
4913 037443 201 00 0 00 000014 MOVEI ^D12 ; get DPLI flag
4914 037444 202 00 0 00 120723' MOVEM DFLAG ; save it
4915
4916 ; Save CRAM locations
4917
4918 037445 200 01 0 00 112133 MOVE 1,[-4,,7750] ; set up AOBJN word
4919 037446 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 113
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0287
4920
4921 ; Insert data into appropriate microwords
4922
4923 037447 200 00 0 00 037605 MOVE PLILNK ; get link control bits
4924 037450 202 00 0 00 035720 MOVEM ANEXT ; save location
4925 037451 137 00 0 00 112134 DPB [POINT 6,DDPLM2,31] ; save link control bits
4926 037452 200 00 0 00 037606 MOVE PLIDAT ; get PLI data bits
4927 037453 137 00 0 00 112135 DPB [POINT 10,DDPLIM,35] ; save it in microword
4928
4929 ; Load microcode
4930
4931 037454 201 01 0 00 037476 MOVEI 1,DDPLIM ; set up microcode address
4932 037455 260 17 0 00 064254 GO MLOADN ; load/verify it
4933 037456 255 00 0 00 000000 JFCL ; ignore error
4934
4935 ; Do the deposit
4936
4937 037457 201 01 0 00 007750 DDPLI1: MOVEI 1,7750 ; get start address
4938 037460 242 01 0 00 000001 LSH 1,1 ; position correctly
4939 037461 260 17 0 00 037146* GO LDRAR ; load the RAR
4940 037462 201 01 0 00 000010 MOVEI 1,MPRUN ; set up initial data
4941 037463 260 17 0 00 037152* GO LDCSR ; start the port
4942 037464 400 01 0 00 000000 SETZ 1, ; clear AC1
4943 037465 260 17 0 00 037463* GO LDCSR ; stop the port
4944
4945 ; Check altmode and decrement repeat count
4946
4947 037466 037 07 0 00 000003 TTALTM ; altmode key struck?
4948 037467 334 00 0 00 000000 SKIPA ; no - proceed
4949 037470 254 00 0 00 037473 JRST DDPLIX ; yes - exit
4950 037471 373 00 0 00 037607 SOSLE PLIREP ; decrement repeat count - expired?
4951 037472 254 00 0 00 037457 JRST DDPLI1 ; no - loop till done
4952
4953 ; Restore CRAM locations and exit
4954
4955 037473 200 01 0 00 112133 DDPLIX: MOVE 1,[-^D4,,7750] ; set up AOBJN word
4956 037474 260 17 0 00 042610 GO RESCRM ; restore CRAM data
4957 037475 263 17 0 00 000000 RTN ; return
4958
4959 ; Microword to use to load PLI data
4960
4961 037476 775077 510000 DDPLIM: MWORD <ADDR=7750,JMAP,J=7751,SD0,OR,D=2,MGC=0,SKCN> ; 7750
4962 037477 732000 240040
4963 037500 775100 002040 MWORD <CONT,S0A,OR,D=1,OENA,MGC=40,SELM> ; 7751
4964 037501 431000 002340
4965 037502 775200 000014 DDPLM2: MWORD <CONT,D=1,SELP,MGC=14> ; 7752
4966 037503 001000 001340
4967 037504 775377 530000 MWORD <JMAP,J=7753,D=1> ; 7753
4968 037505 001000 000040
4969 037506 777777 777777 -1
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 114
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0288
4970
4971 ;#********************************************************************
4972 ;* DEPLI - Examine PLI registers
4973 ;
4974 ; Format: EPLI lnkctrl,repcount
4975 ;#********************************************************************
4976
4977 037507 201 00 0 00 000015 DEPLI: MOVEI ^D13 ; get EPLI flag
4978 037510 202 00 0 00 120723' MOVEM DFLAG ; save it
4979 037511 402 00 0 00 037607 SETZM PLIREP ; initialize repeat count
4980 037512 200 00 0 00 037605 MOVE PLILNK ; get link control bits
4981 037513 202 00 0 00 037441* MOVEM ARGUM ; save in argument location
4982
4983 ; Get link control bits
4984
4985 037514 200 01 0 00 037611 MOVE 1,EPLIH ; get help text
4986 037515 260 17 0 00 037436* GO .OARG ; get link control bits
4987 037516 263 17 0 00 000000 RTN ; error/altmode/question - exit
4988 037517 255 00 0 00 000000 JFCL ; no arguments given - continue
4989 037520 331 01 0 00 037513* DEPLI0: SKIPL 1,ARGUM ; get argument
4990 037521 303 01 0 00 000017 CAILE 1,17 ; in range 0-17?
4991 JRST [FMSGCD <? Range of PLI link control bits is 0-17>
4992 GO FIOFF
4993 037522 254 00 0 00 112130 RTN]
4994 037523 202 01 0 00 037605 MOVEM 1,PLILNK ; save link control bits
4995
4996 ; Get 2nd argument - repeat count
4997
4998 037524 210 01 0 00 037611 MOVN 1,EPLIH ; get help text
4999 037525 260 17 0 00 037515* GO .OARG ; get data
5000 037526 263 17 0 00 000000 RTN ; error/altmode/question - exit
5001 037527 402 00 0 00 037520* SETZM ARGUM ; no argument - set to 0
5002 037530 200 00 0 00 037527* MOVE ARGUM ; get argument
5003 037531 202 00 0 00 037607 MOVEM PLIREP ; save it
5004 037532 200 00 0 00 037605 MOVE PLILNK ; get link control bits
5005 037533 202 00 0 00 035720 MOVEM ANEXT ; save location
5006
5007 ; Save CRAM locations
5008
5009 037534 200 01 0 00 112136 MOVE 1,[-3,,7750] ; set up AOBJN word
5010 037535 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
5011
5012 ; Set up location and load microcode
5013
5014 037536 200 00 0 00 037605 MOVE PLILNK ; get link control bits
5015 037537 137 00 0 00 112137 DPB [POINT 6,DEPLIM,31] ; save it in microword
5016 037540 201 01 0 00 037576 MOVEI 1,DEPLIM ; set up microcode address
5017 037541 260 17 0 00 064254 GO MLOADN ; load/verify it
5018 037542 255 00 0 00 000000 JFCL ; ignore error
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 115
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0289
5019
5020 ; Print header
5021
5022 037543 200 01 0 00 037605 MOVE 1,PLILNK ; get link control bits
5023 XCT [TMSGC <0-Unused:> ; print it
5024 TMSGC <1-RdRSta:>
5025 TMSGC <2-RsXSta:>
5026 TMSGC <3-RdPRev:>
5027 TMSGC <4-Unused:>
5028 TMSGC <5-RdBuff:>
5029 TMSGC <6-EnaLnk:>
5030 TMSGC <7-SelBuf:>
5031 TMSGC <10-LdXBuf:>
5032 TMSGC <11-RdXSta:>
5033 TMSGC <12-AboXmt:>
5034 TMSGC <13-SetMod:>
5035 TMSGC <14-Xmit:>
5036 TMSGC <15-RdNode:>
5037 TMSGC <16-DsaLnk:>
5038 037544 256 00 0 01 112220 TMSGC <17-Sync:>](1)
5039 037545 476 00 0 00 120761' SETOM PLINUM# ; clear print count
5040
5041 ; Do the examine and print results
5042
5043 037546 201 01 0 00 007750 DEPLI1: MOVEI 1,7750 ; get start address
5044 037547 242 01 0 00 000001 LSH 1,1 ; position correctly
5045 037550 260 17 0 00 037461* GO LDRAR ; load the RAR
5046 037551 201 01 0 00 000010 MOVEI 1,MPRUN ; start it up
5047 037552 260 17 0 00 037465* GO LDCSR ; write to CSR register
5048 037553 201 01 0 00 200000 MOVEI 1,TSTEBF ; set up to read EBUF data
5049 037554 260 17 0 00 037552* GO LDCSR ; write to CSR register
5050 037555 260 17 0 00 037003* GO RDEBUF ; read EBUF contents
5051 037556 350 00 0 00 120761' AOS PLINUM ; increment print count
5052 037557 037 00 0 00 112240 TMSGC < > ; start a new line
5053 037560 200 00 0 00 120761' MOVE PLINUM ; get print count
5054 037561 037 16 0 00 000003 PNTOCS ; print it
5055 037562 037 00 0 00 111633 TMSG </ >
5056 037563 135 00 0 00 112241 LDB [POINT 8,1,35] ; get PLI data
5057 037564 037 03 0 00 000000 PNT3 ; print it
5058 037565 037 07 0 00 000003 TTALTM ; altmode key struck?
5059 037566 334 00 0 00 000000 SKIPA ; no - proceed
5060 037567 254 00 0 00 037572 JRST DEPLIX ; yes - exit
5061 037570 373 00 0 00 037607 SOSLE PLIREP ; decrement count - expired?
5062 037571 254 00 0 00 037546 JRST DEPLI1 ; no - loop til done
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 116
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0290
5063
5064 ; Restore CRAM locations and exit
5065
5066 037572 037 00 0 00 030242 DEPLIX: PCRL ; print a final CRLF
5067 037573 200 01 0 00 112136 MOVE 1,[-^D3,,7750] ; set up AOBJN word
5068 037574 260 17 0 00 042610 GO RESCRM ; restore CRAM data
5069 037575 263 17 0 00 000000 RTN ; return
5070
5071 ; Microwords to use to get PLI data
5072
5073 037576 775077 510012 DEPLIM: MWORD <ADDR=7750,JMAP,J=7751,D=1,MGC=12,SELP> ; 7750
5074 037577 001000 001040
5075 037600 775100 000300 MWORD <CONT,SD0,OR,D=2,SELM,MGC=300> ; 7751
5076 037601 732000 002340
5077 037602 775277 522004 MWORD <JMAP,J=7752,S0A,OR,D=1,OENA,SELE,MGC=4> ; 7752
5078 037603 431000 005040
5079 037604 777777 777777 -1
5080
5081 ; Arguments
5082
5083 037605 000000 000000 PLILNK: 0 ; default link control bits
5084 037606 000000 000000 PLIDAT: 0 ; PLI data to write
5085 037607 000000 000000 PLIREP: 0 ; repeat count
5086
5087 ; Help text
5088
5089 DPLIH: FMSGCD <DPLI lnkctrl,data,repcount (CR) where lnkctrl is:
5090 0-Unused 4-Unused 10-LdXBuf 14-Xmit
5091 1-RdRSta 5-RdBuff 11-RdXSta 15-RdNode
5092 2-RsXSta 6-EnaLnk 12-AboXmt 16-DsaLnk
5093 037610 037 01 0 00 112242 3-RdPRev 7-SelBuf 13-SetMod 17-Sync>
5094
5095 EPLIH: FMSGCD <EPLI lnkctrl,repcount (CR) where lnkctrl is:
5096 0-Unused 4-Unused 10-LdXBuf 14-Xmit
5097 1-RdRSta 5-RdBuff 11-RdXSta 15-RdNode
5098 2-RsXSta 6-EnaLnk 12-AboXmt 16-DsaLnk
5099 037611 037 01 0 00 112320 3-RdPRev 7-SelBuf 13-SetMod 17-Sync>
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 117
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0291
5100
5101 ;#********************************************************************
5102 ;* DIPLI - Initialize PILA/Link modules
5103 ;#********************************************************************
5104
5105 037612 200 01 0 00 112400 DIPLI: MOVE 1,[FMSGCD (IPLI <CR>)]
5106 037613 260 17 0 00 035617* GO CHKARG ; check for argument
5107 037614 263 17 0 00 000000 RTN ; error - exit
5108
5109 ; Save CRAM locations
5110
5111 037615 200 01 0 00 112401 MOVE 1,[-^D26,,4000] ; set up AOBJN word
5112 037616 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
5113
5114 ; Load microcode
5115
5116 037617 201 01 0 00 037635 MOVEI 1,DIPLIM ; set up microcode address
5117 037620 260 17 0 00 064254 GO MLOADN ; load/verify it
5118 037621 255 00 0 00 000000 JFCL ; ignore error
5119
5120 ; Do the init
5121
5122 037622 201 01 0 00 004000 MOVEI 1,4000 ; get start address
5123 037623 242 01 0 00 000001 LSH 1,1 ; position correctly
5124 037624 260 17 0 00 037550* GO LDRAR ; load the RAR
5125 037625 201 01 0 00 000010 MOVEI 1,MPRUN ; start it up
5126 037626 260 17 0 00 037554* GO LDCSR ; write to CSR register
5127 037627 005 00 0 00 000001 DELAY 1 ; wait 1 millisecond
5128 037630 400 01 0 00 000000 SETZ 1, ; stop the port
5129 037631 260 17 0 00 037626* GO LDCSR
5130
5131 ; Restore CRAM locations and exit
5132
5133 037632 200 01 0 00 112401 MOVE 1,[-^D26,,4000] ; set up AOBJN word
5134 037633 260 17 0 00 042610 GO RESCRM ; restore CRAM data
5135 037634 263 17 0 00 000000 RTN ; return
5136
5137 ; Microcode to initialize the PILA/Link modules
5138
5139 037635 400040 010000 DIPLIM: MWORD <ADDR=4000,JMAP,J=4001,D=1> ; 4000 Start.
5140 037636 001000 000040
5141 037637 400140 020000 MWORD <CJPP,J=4002,D=1> ; 4001 Initialize stack
5142 037640 001000 000260
5143 037641 400240 030000 MWORD <CJPP,J=4003,D=1> ; 4002 pointer.
5144 037642 001000 000260
5145
5146 037643 400300 000240 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=240> ; 4003 Set MMode, Release
5147 037644 732000 240340
5148 037645 400400 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4004 Rcv Buffer A, Turn
5149 037646 431000 002340
5150 037647 400540 270274 MWORD <CJS,J=4027,SELP,MGC=274,D=1> ; 4005 on Green LED.
5151 037650 001000 001020
5152
5153 037651 400600 000241 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=241> ; 4006 Set MMode, Release
5154 037652 732000 240340
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 117-1
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0292
5155 037653 400700 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4007 Rcv Buffer B, Turn
5156 037654 431000 002340
5157 037655 401040 270274 MWORD <CJS,J=4027,SELP,MGC=274,D=1> ; 4010 on Green LED.
5158 037656 001000 001020
5159
5160 037657 401100 000000 MWORD <CONT,S0A,AND,D=2> ; 4011 Disable link
5161 037660 442000 000340
5162 037661 401200 000000 MWORD <CONT,S0A,XNOR,D=2> ; 4012 control logic.
5163 037662 472000 000340
5164 037663 401300 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4013
5165 037664 431000 002340
5166 037665 401440 270354 MWORD <CJS,J=4027,SELP,MGC=354,D=1> ; 4014
5167 037666 001000 001020
5168
5169 037667 401500 000040 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=40> ; 4015 Enable link
5170 037670 732000 240340
5171 037671 401600 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4016 control logic.
5172 037672 431000 002340
5173 037673 401740 270354 MWORD <CJS,J=4027,SELP,MGC=354,D=1> ; 4017
5174 037674 001000 001020
5175
5176 037675 402040 270332 MWORD <CJS,J=4027,SD0,OR,D=2,SELP,MGC=332> ; 4020 Read node address
5177 037676 732000 001020
5178 037677 402100 002010 MWORD <CONT,S0A,OR,D=1,OENA,LDLM,MGC=10> ; 4021 into R0 and LS10
5179 037700 431000 230340
5180
5181 037701 402240 252040 MWORD <CJS,J=4025,S0A,AND,OENA,SELM,MGC=40>; 4022 Reset xmit
5182 037702 440000 002020
5183 037703 402340 252040 MWORD <CJS,J=4025,S0A,AND,OENA,SELM,MGC=40>; 4023 status
5184 037704 440000 002020
5185 037705 402440 240000 MWORD <JMAP,J=4024> ; 4024 twice, then
5186 037706 000000 000040
5187 037707 402540 270050 MWORD <CJS,J=4027,SELP,MGC=50,D=1> ; 4025 stop.
5188 037710 001000 001020
5189 037711 402600 000030 MWORD <CRTN,D=1,SELM,MGC=30> ; 4026
5190 037712 001000 002240
5191
5192 037713 402700 070000 MWORD <LDCT,J=7,D=1> ; 4027 Subroutine to
5193 037714 001000 000300
5194 037715 403040 300000 MWORD <RPCT,J=4030,D=1> ; 4030 do a short
5195 037716 001000 000220
5196 037717 403100 000000 MWORD <CRTN,D=1> ; 4031 delay.
5197 037720 001000 000240
5198 037721 777777 777777 -1
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 118
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0293
5199
5200 ;#********************************************************************
5201 ;* DETBUF - Read transmit buffers
5202 ;#********************************************************************
5203
5204 037722 200 01 0 00 112406 DETBUF: MOVE 1,[FMSGCD (ETBUFF <CR>)]
5205 037723 260 17 0 00 037613* GO CHKARG ; check for argument
5206 037724 263 17 0 00 000000 RTN ; error - exit
5207
5208 ; Read/print buffer A
5209
5210 037725 037 00 0 00 112407 TMSGC <Transmit Buffer A: >
5211 037726 201 02 0 00 000006 MOVEI 2,6 ; get buffer number
5212 037727 260 17 0 00 040104 GO RDBUFS ; read/print it
5213 037730 037 00 0 00 030242 PCRL
5214
5215 ; Read/print buffer B
5216
5217 037731 037 00 0 00 112414 TMSGC <Transmit Buffer B: >
5218 037732 201 02 0 00 000007 MOVEI 2,7 ; get buffer number
5219 037733 260 17 0 00 040104 GO RDBUFS ; read/print it
5220 037734 037 00 0 00 030242 PCRL
5221 037735 263 17 0 00 000000 RTN ; exit
5222
5223
5224 ;#********************************************************************
5225 ;* DERBUF - Read receive buffers
5226 ;#********************************************************************
5227
5228 037736 200 01 0 00 112425 DERBUF: MOVE 1,[FMSGCD (ERBUFF <CR>)]
5229 037737 260 17 0 00 037723* GO CHKARG ; check for argument
5230 037740 263 17 0 00 000000 RTN ; error - exit
5231
5232 ; Read/print buffer A
5233
5234 037741 037 00 0 00 112426 TMSGC <Receive Buffer A: >
5235 037742 201 02 0 00 000004 MOVEI 2,4 ; get buffer number
5236 037743 260 17 0 00 040104 GO RDBUFS ; read/print it
5237 037744 037 00 0 00 030242 PCRL
5238
5239 ; Read/print buffer B
5240
5241 037745 037 00 0 00 112433 TMSGC <Receive Buffer B: >
5242 037746 201 02 0 00 000005 MOVEI 2,5 ; get buffer number
5243 037747 260 17 0 00 040104 GO RDBUFS ; read/print it
5244 037750 037 00 0 00 030242 PCRL
5245 037751 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 119
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0294
5246
5247 ;#********************************************************************
5248 ;* DDUMP - Dump port state
5249 ;#********************************************************************
5250
5251 037752 261 17 0 00 000000 DDUMP: RPUT (0,1,2,3,4) ; save AC's
5252
5253 037757 476 00 0 00 121005' SETOM TSLOAD ; invalidate microcode loaded
5254
5255 ; Print CSR, EBUF, LAR, 2901 registers, stack
5256
5257 037760 037 00 0 00 112440 TMSGC <+++++++++++++++ KLIPA DUMP +++++++++++++++>
5258 037761 260 17 0 00 034116* GO RDCSR ; read CSR
5259 037762 255 00 0 00 000000 JFCL ; error - ignore
5260 037763 260 17 0 00 042443 GO CSRPNT ; print data
5261 037764 260 17 0 00 035534 GO DEBEBU ; print EBUF
5262 037765 260 17 0 00 035567 GO DEBLAR ; print LAR data
5263 037766 037 00 0 00 112451 TMSG <+++++++++++++++ 2901 Registers +++++++++++++++>
5264 037767 402 00 0 00 120764' SETZM RALUB ; set up 'from' location
5265 037770 201 00 0 00 000020 MOVEI 20
5266 037771 202 00 0 00 120765' MOVEM RALUE ; set up 'to' location
5267 037772 260 17 0 00 036452 GO DEBALU ; print 2901 registers
5268 037773 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
5269 037774 254 00 0 00 040071 JRST DDUMPX ; yes - exit
5270 037775 037 00 0 00 112463 TMSG <+++++++++++++++ 2910 Stack +++++++++++++++>
5271 037776 260 17 0 00 040457 GO DEBSTK ; print stack contents
5272
5273 ; Print PCB
5274
5275 037777 037 00 0 00 112474 TMSG <+++++++++++++++ PCB +++++++++++++++>
5276 040000 260 17 0 00 067434 GO PPCB ; print PCB
5277 040001 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
5278 040002 254 00 0 00 040071 JRST DDUMPX ; yes - exit
5279
5280 ; Print queues
5281
5282 040003 037 00 0 00 112504 TMSGC <+++++++++++++++ Queues +++++++++++++++>
5283 040004 201 13 0 00 000000 MOVEI Q,0 ; set up queue number
5284 040005 260 17 0 00 066353 DDUMP0: GO PQUEUE ; print this queue
5285 040006 037 00 0 00 030242 PCRL ; final CRLF
5286 040007 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
5287 040010 254 00 0 00 040071 JRST DDUMPX ; yes - exit
5288 040011 350 00 0 00 000013 AOS Q ; point to next queue
5289 040012 307 13 0 00 000006 CAIG Q,6 ; done yet?
5290 040013 254 00 0 00 040005 JRST DDUMP0 ; no - loop till done
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 120
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0295
5291
5292 ; Print local storage
5293
5294 040014 037 00 0 00 112515 TMSG <+++++++++++++++ Local Storage +++++++++++++++>
5295 040015 402 00 0 00 120770' SETZM RLOCB ; set range of locations
5296 040016 201 00 0 00 001777 MOVEI 1777 ; to 0-1777
5297 040017 202 00 0 00 120771' MOVEM RLOCE
5298 040020 260 17 0 00 036756 GO DEBELO ; print local storage
5299 040021 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
5300 040022 254 00 0 00 040071 JRST DDUMPX ; yes - exit
5301
5302 ; Print transmit and receive buffers
5303
5304 040023 037 00 0 00 112527 TMSG <+++++++++++++++ PILA Buffers +++++++++++++++>
5305 040024 037 00 0 00 112407 TMSGC <Transmit Buffer A: >
5306 040025 201 02 0 00 000006 MOVEI 2,6 ; get buffer number
5307 040026 260 17 0 00 040104 GO RDBUFS ; read/print it
5308 040027 037 00 0 00 112414 TMSGC <Transmit Buffer B: >
5309 040030 201 02 0 00 000007 MOVEI 2,7 ; get buffer number
5310 040031 260 17 0 00 040104 GO RDBUFS ; read/print it
5311 040032 037 00 0 00 112426 TMSGC <Receive Buffer A: >
5312 040033 201 02 0 00 000004 MOVEI 2,4 ; get buffer number
5313 040034 260 17 0 00 040104 GO RDBUFS ; read/print it
5314 040035 037 00 0 00 112433 TMSGC <Receive Buffer B: >
5315 040036 201 02 0 00 000005 MOVEI 2,5 ; get buffer number
5316 040037 260 17 0 00 040104 GO RDBUFS ; read/print it
5317 040040 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
5318 040041 254 00 0 00 040071 JRST DDUMPX ; yes - exit
5319
5320 ; Print logout data (before STORE)
5321
5322 040042 037 00 0 00 112540 TMSGC <+++++++++++++++ EPT Data +++++++++++++++>
5323 040043 037 00 0 00 112551 TMSGC <Logout data before STOP and STORE:>
5324 040044 260 17 0 00 040127 GO PLOG ; get/print EPT
5325 040045 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
5326 040046 254 00 0 00 040071 JRST DDUMPX ; yes - exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 121
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0296
5327
5328 ; Print logout data (after STORE)
5329
5330 040047 037 00 0 00 112540 TMSGC <+++++++++++++++ EPT Data +++++++++++++++>
5331 040050 037 00 0 00 112561 TMSGC <After loading special ucode to do a STOP and STORE:>
5332 040051 200 01 0 00 111776 MOVE 1,[-2,,7750] ; set up AOBJN word
5333 040052 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
5334 040053 201 01 0 00 040077 MOVEI 1,DDUMPM ; set up microcode address
5335 040054 260 17 0 00 064254 GO MLOADN ; load/verify it
5336 040055 255 00 0 00 000000 JFCL ; ignore error
5337 040056 201 01 0 00 007750 MOVEI 1,7750 ; get start address
5338 040057 242 01 0 00 000001 LSH 1,1 ; position correctly
5339 040060 260 17 0 00 037624* GO LDRAR ; load the RAR
5340 040061 201 01 0 00 000010 MOVEI 1,MPRUN ; start it up
5341 040062 260 17 0 00 037631* GO LDCSR ; write to CSR register
5342 040063 400 01 0 00 000000 SETZ 1, ; stop the port
5343 040064 260 17 0 00 040062* GO LDCSR
5344 040065 200 01 0 00 111776 MOVE 1,[-2,,7750] ; set up AOBJN word
5345 040066 260 17 0 00 042610 GO RESCRM ; restore CRAM data
5346 040067 260 17 0 00 040127 GO PLOG ; get/print EPT
5347 040070 037 00 0 00 112574 TMSGCD <+++++++++++++++ End of KLIPA DUMP +++++++++++++++>
5348 040071 262 17 0 00 000004 DDUMPX: RGET (4,3,2,1,0) ; restore AC's
5349
5350 040076 263 17 0 00 000000 RTN ; return
5351
5352 ; Microcode to do a STORE
5353
5354 040077 775077 510140 DDUMPM: MWORD <ADDR=7750,JMAP,J=7751,SELC,MGC=140> ; 7750
5355 040100 000000 004040
5356 040101 775177 510000 MWORD <JMAP,J=7751> ; 7751
5357 040102 000000 000040
5358 040103 777777 777777 -1
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 122
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0297
5359
5360 ;#********************************************************************
5361 ;* RDBUFS - Read and print a buffer
5362 ;
5363 ; AC2 - Contains buffer number 4-7
5364 ;#********************************************************************
5365
5366 040104 261 17 0 00 000000 RDBUFS: RPUT (0,1,2,3) ; save AC's
5367
5368 040110 260 17 0 00 034057* GO IPACLR ; do a port clear
5369
5370 ; Print buffer contents
5371
5372 040111 201 01 0 00 000007 MOVEI 1,7 ; get code for select buffer
5373 040112 260 17 0 00 040253 GO WRPLI ; write over PLI
5374 040113 201 03 0 00 000036 MOVEI 3,^D30 ; print only 30 bytes
5375 040114 260 17 0 00 040226 RDBUF1: GO RDBF ; read length byte 1
5376 040115 200 00 0 00 000001 MOVE 1 ; get into AC0
5377 040116 037 03 0 00 000000 PNT3 ; print it out
5378 040117 306 03 0 00 000020 CAIN 3,^D16 ; done with 15 bytes?
5379 040120 037 00 0 00 112607 TMSGC < >
5380 040121 367 03 0 00 040114 SOJG 3,RDBUF1 ; loop till done
5381
5382 040122 262 17 0 00 000003 RDBUFX: RGET (3,2,1,0) ; restore AC's
5383
5384 040126 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 123
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0298
5385
5386 ;#********************************************************************
5387 ;* PLOG - Obtain EPT logout data
5388 ;#********************************************************************
5389
5390 040127 200 01 0 00 112614 PLOG: MOVE 1,[-^D14,,0] ; set up AOBJN word
5391 040130 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
5392 040131 201 01 0 00 040171 MOVEI 1,PLOGM ; get microcode address
5393 040132 260 17 0 00 064254 GO MLOADN ; load the microcode
5394 040133 255 00 0 00 000000 JFCL
5395
5396 ; Start it up and give the port the address to read
5397
5398 040134 400 01 0 00 000000 SETZ 1, ; get start address
5399 040135 260 17 0 00 040060* GO LDRAR ; load the register
5400 040136 201 01 0 00 000010 MOVEI 1,MPRUN ; set initial data
5401 040137 260 17 0 00 040064* GO LDCSR
5402 040140 135 01 0 00 104637 LDB 1,[POINT 3,MBCN,9] ; get channel number
5403 040141 200 01 0 01 000000* MOVE 1,ICWA0(1) ; get ICWA for channel
5404 040142 200 03 0 00 000001 MOVE 3,1 ; get into AC3 also
5405 040143 336 00 0 00 121012' SKIPN UDEBUG ; user mode?
5406 040144 7 010 24 0 00 000002 CONI PAG,2 ; no - get page number of EPT
5407 040145 242 02 0 00 000011 LSH 2,9 ; position correctly
5408 040146 621 02 0 00 777777 TLZ 2,777777 ; clear left half
5409 040147 270 01 0 00 000002 ADD 1,2 ; add in EPT offset
5410 040150 434 01 0 00 112615 IOR 1,[440000,,0] ; include IOP function
5411 040151 260 17 0 00 037063* GO .DATAO ; do the first DATAO
5412 040152 201 02 0 00 000004 MOVEI 2,4 ; number of locations to read
5413 040153 037 00 0 00 112616 PLOG0: TMSGC <EPT+>
5414 040154 200 00 0 00 000003 MOVE 3 ; get offset
5415 040155 037 02 0 00 000000 PNT2 ; print it
5416 040156 260 17 0 00 000000* GO .DATAI ; get the data
5417 040157 200 00 0 00 000001 MOVE 1 ; get into AC0
5418 040160 037 13 0 00 000000 PNTHW ; print it
5419 040161 005 00 0 00 000001 DELAY 1 ; wait 1 millisecond
5420 040162 350 00 0 00 000003 AOS 3 ; point to next offset
5421 040163 367 02 0 00 040153 SOJG 2,PLOG0 ; done yet - no - loop till done
5422 040164 400 01 0 00 000000 SETZ 1,
5423 040165 260 17 0 00 040137* GO LDCSR ; stop the port
5424
5425 ; Done
5426
5427 040166 200 01 0 00 112614 MOVE 1,[-^D14,,0] ; set up AOBJN word
5428 040167 260 17 0 00 042610 GO RESCRM ; restore CRAM data
5429 040170 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 124
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0299
5430
5431 ; Microcode
5432
5433 040171 000000 010000 PLOGM: MWORD <ADDR=0,JMAP,J=1> ; 0
5434 040172 000000 000040
5435 040173 000100 030000 MWORD <CJP,J=3,CENA,CCER> ; 1
5436 040174 000400 100060
5437 040175 000200 010000 MWORD <JMAP,J=1> ; 2
5438 040176 000000 000040
5439 040177 000301 000010 MWORD <LDCT,J=100,SD0,B=16,OR,D=2,SELE,MGC=10>; 3
5440 040200 732007 005300
5441
5442 040201 000400 042004 MWORD <RPCT,J=4,S0A,A=16,OR,D=1,OENA,SELE,MGC=4>
5443 040202 431160 005220
5444 040203 000501 000001 MWORD <LDCT,J=100,SELE,MGC=1> ; 5 (Ex/Dep int)
5445 040204 000000 005300
5446 040205 000600 100000 MWORD <CJP,J=10,D=1,CENA,CCER> ; 6
5447 040206 001400 100060
5448 040207 000700 060000 MWORD <JMAP,J=6,D=1> ; 7
5449 040210 001000 000040
5450 040211 001000 000010 MWORD <CONT,SD0,B=17,OR,D=2,SELE,MGC=10> ; 10
5451 040212 732007 405340
5452 040213 001100 112004 MWORD <RPCT,J=11,S0A,OR,A=17,D=2,OENA,SELE,MGC=4>
5453 040214 432170 005220
5454 040215 001200 140000 MWORD <CJP,J=14,D=1,CENA,CCER> ; 12
5455 040216 001400 100060
5456 040217 001300 120000 MWORD <JMAP,J=12,D=1> ; 13
5457 040220 001000 000040
5458 040221 001401 000020 MWORD <LDCT,J=100,SELE,MGC=20> ; 14
5459 040222 000000 005300
5460 040223 001500 040000 MWORD <JMAP,J=4,S0B,PLUS,D=2,B=16,CRY> ; 15
5461 040224 302007 000440
5462 040225 777777 777777 -1
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 125
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0300
5463
5464 ;#********************************************************************
5465 ; RDBF - Read a buffer location (AC1 contains data)
5466 ;#********************************************************************
5467
5468 040226 200 01 0 00 112136 RDBF: MOVE 1,[-3,,7750] ; set up AOBJN word
5469 040227 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
5470 040230 201 01 0 00 000005 MOVEI 1,5 ; get link control bits (RDBUFF)
5471 040231 137 01 0 00 112137 DPB 1,[POINT 6,DEPLIM,31] ; save it in microword
5472 040232 201 01 0 00 037576 MOVEI 1,DEPLIM ; set up microcode address
5473 040233 260 17 0 00 064254 GO MLOADN ; load/verify it
5474 040234 255 00 0 00 000000 JFCL ; ignore error
5475 040235 201 01 0 00 007750 MOVEI 1,7750 ; get start address
5476 040236 242 01 0 00 000001 LSH 1,1 ; position correctly
5477 040237 260 17 0 00 040135* GO LDRAR ; load the RAR
5478 040240 201 01 0 00 000010 MOVEI 1,MPRUN ; start it up
5479 040241 260 17 0 00 040165* GO LDCSR ; write to CSR register
5480 040242 201 01 0 00 200000 MOVEI 1,TSTEBF ; set up to read EBUF data
5481 040243 260 17 0 00 040241* GO LDCSR ; write to CSR register
5482 040244 260 17 0 00 037555* GO RDEBUF ; read EBUF contents
5483 040245 404 01 0 00 112620 AND 1,[377] ; get rid of misc bits
5484 040246 261 17 0 00 000001 PUT 1 ; save data
5485 040247 200 01 0 00 112136 MOVE 1,[-3,,7750] ; set up AOBJN word
5486 040250 260 17 0 00 042610 GO RESCRM ; save the CRAM locations
5487 040251 262 17 0 00 000001 GET 1 ; restore data
5488 040252 263 17 0 00 000000 RTN ; return
5489
5490 ;#********************************************************************
5491 ; WRPLI - Deposit PLI (AC1,2 contain Control/Data bits)
5492 ;#********************************************************************
5493
5494 040253 261 17 0 00 000000 WRPLI: RPUT (0,1,2) ; save AC's
5495
5496 040256 200 01 0 00 112133 MOVE 1,[-4,,7750] ; set up AOBJN word
5497 040257 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
5498 040260 200 00 0 17 777777 MOVE -1(P) ; get link control bits
5499 040261 137 00 0 00 112134 DPB [POINT 6,DDPLM2,31] ; save link control bits
5500 040262 200 00 0 17 000000 MOVE (P) ; get PLI data bits
5501 040263 137 00 0 00 112135 DPB [POINT 10,DDPLIM,35] ; save it in microword
5502 040264 201 01 0 00 037476 MOVEI 1,DDPLIM ; set up microcode address
5503 040265 260 17 0 00 064254 GO MLOADN ; load/verify it
5504 040266 255 00 0 00 000000 JFCL ; ignore error
5505 040267 201 01 0 00 007750 MOVEI 1,7750 ; get start address
5506 040270 242 01 0 00 000001 LSH 1,1 ; position correctly
5507 040271 260 17 0 00 040237* GO LDRAR ; load the RAR
5508 040272 201 01 0 00 000010 MOVEI 1,MPRUN ; set up initial data
5509 040273 260 17 0 00 040243* GO LDCSR ; start the port
5510 040274 400 01 0 00 000000 SETZ 1, ; clear AC1
5511 040275 260 17 0 00 040273* GO LDCSR ; stop the port
5512 040276 200 01 0 00 112133 MOVE 1,[-4,,7750] ; set up AOBJN word
5513 040277 260 17 0 00 042610 GO RESCRM ; restore the CRAM locations
5514 040300 262 17 0 00 000002 RGET (2,1,0) ; restore AC's
5515
5516 040303 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 126
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0301
5517
5518 ;#********************************************************************
5519 ;* DENEXT - Examine next
5520 ;#********************************************************************
5521
5522 040304 402 00 0 00 037530* DENEXT: SETZM ARGUM ; default to repeat count
5523 040305 350 00 0 00 040304* AOS ARGUM ; of 1
5524 040306 200 01 0 00 112631 MOVE 1,[FMSGCD (ENEXT repcount <CR> or ENEXT <CR>)]
5525 040307 260 17 0 00 034220* GO .DARG ; get repeat count
5526 040310 263 17 0 00 000000 RTN ; error/altmode/question - exit
5527 040311 255 00 0 00 000000 JFCL ; no argument given
5528 040312 200 00 0 00 040305* MOVE ARGUM ; get argument
5529
5530 ; Do the examine
5531
5532 040313 476 00 0 00 120743' DENE0: SETOM MULFLG ; set 'multiple examine' flag
5533 040314 200 00 0 00 040312* MOlace the file system on the system structure?
[This procedure removes all existing directories and files and creates
the minimum directories needed to bring up the system.]
!( BHx!( GHx x1$ ,~ + h
Do you want to define the system structure?
[This will cause the home blocks to be rewritten. It should be done
only if the answer to the previous question was yes.]
WARNING: This is a dangerous procedure. It may cause inconsistency
in the structure.
How many packs are in this structure:
[Enter the decimal number of disk packs that compose this structure]
? The answer must be greater than zero!
\"l>,jL+ h#? The monitor is not assembled to handle that many units!
\"lD,jL+ h#H
On which "CHANNEL,CONTROLLER,UNIT" is logical pack # HlL mounted? HlR? Can't find specified unit ? Illegal channel number ? No such channel ? Illegal controller number ? No such controller ? Illegal unit number ? No such unit ? Not a disk device ? All disk units in a single structure must be the same size.
\"lg,jL+ h(? You are attempting to define a structure which has more space than is supported.
\"lo,jL+ h? That drive was already assigned
\"ly,jL+ h(
Do you want the default swapping space? %+ hT
How many pages for swapping?
[Enter the decimal number of pages to be allocated for the entire structure]
? Invalid number of swapping pages for this type of disk.
Do you want the default size front end file system?
[The default is 950 pages]
" [+ hb
How many pages for the front end file system?
[Enter the decimal number of pages for the front end file system]
Do you want the default size bootstrap area?
[The default is 64 pages]
" + hi
How many pages for the bootstrap file?
[Enter the decimal number of pages for the bootstrap file]
? Invalid number of pages for the bootstrap file
What is the name of this structure?
Enter 6 or fewer characters
[Structure " " successfully defined]
\"jh+ jL ;Type= , Offline , Dual port , Write locked % Copying secondary BAT block to primary on % Copying primary BAT block to secondary on has no BAT blocks.
Do you want to write a set of prototype BAT blocks? x0 ? Failed to write BAT blocks for "t,~ 4Bj+ j, + j " ,~ ,jJ+ j? Answer "Y" or "N" H ,jJ+ j&? Illegal character, retype answer again: H ,jJ+ j:7`~+ jG 6@}le local storage
5579
5580 040357 200 00 0 00 035720 DENEX2: MOVE ANEXT ; get address
5581 040360 202 00 0 00 120770' MOVEM RLOCB ; save in 'from' location
5582 040361 202 00 0 00 120771' MOVEM RLOCE ; save in 'to' location
5583 040362 254 00 0 00 036740 PJRST DELOC0 ; go handle
5584
5585 ; To handle PLI registers
5586
5587 040363 200 00 0 00 035720 DENEX3: MOVE ANEXT ; get register number
5588 040364 202 00 0 00 040325* MOVEM ARGUM ; save in argument location
5589 040365 254 00 0 00 037520 PJRST DEPLI0 ; go handle
5590
5591
5592 ;#********************************************************************
5593 ;* DDNEXT - Deposit next
5594 ;#********************************************************************
5595
5596 040366 200 01 0 00 120723' DDNEXT: MOVE 1,DFLAG ; get last operation done
5597 040367 554 00 0 01 040373 HLRZ DDTAB(1) ; get new value of DFLAG
5598 040370 202 00 0 00 120723' MOVEM DFLAG ; save it
5599 040371 550 02 0 01 040373 HRRZ 2,DDTAB(1) ; get dispatch address
5600 040372 254 00 0 02 000000 JRST (2) ; dispatch
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 128
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0303
5601
5602 ; Dispatch table
5603
5604 040373 000001 040411 DDTAB: 1,,DDNEX0 ; ECRAM
5605 040374 000001 040411 1,,DDNEX0 ; DCRAM
5606 040375 000002 040411 2,,DDNEX0 ; BCRAM
5607 040376 000003 040411 3,,DDNEX0 ; ACRAM
5608 040377 000003 040411 3,,DDNEX0 ; ZCRAM
5609 040400 000003 040411 3,,DDNEX0 ; LCRAM
5610 040401 000007 040420 7,,DDNEX1 ; E2901
5611 040402 000007 040420 7,,DDNEX1 ; D2901
5612 040403 000007 040420 7,,DDNEX1 ; Z2901
5613 040404 000012 040425 ^D10,,DDNEX2 ; ELOCS
5614 040405 000012 040425 ^D10,,DDNEX2 ; DLOCS
5615 040406 000012 040425 ^D10,,DDNEX2 ; ZLOCS
5616 040407 000014 040432 ^D12,,DDNEX3 ; DPLI
5617 040410 000014 040432 ^D12,,DDNEX3 ; EPLI
5618
5619 ; To handle CRAM deposit ...
5620
5621 040411 200 01 0 00 112635 DDNEX0: MOVE 1,[FMSGCD (DNEXT <CR>)]
5622 040412 260 17 0 00 037737* GO CHKARG ; check for argument
5623 040413 263 17 0 00 000000 RTN ; error - exit
5624 040414 200 00 0 00 035720 MOVE ANEXT ; get address
5625 040415 202 00 0 00 035712 MOVEM CRAMTO ; set up 'to' and 'from'
5626 040416 202 00 0 00 035711 MOVEM CRAMFR ; addresses
5627 040417 254 00 0 00 035671 PJRST DCOM0 ; go handle
5628
5629 ; To handle 2901 registers
5630
5631 040420 200 00 0 00 035720 DDNEX1: MOVE ANEXT ; get register number
5632 040421 202 00 0 00 120764' MOVEM RALUB ; save in 'from' location
5633 040422 202 00 0 00 120765' MOVEM RALUE ; save in 'to' location
5634 040423 202 00 0 00 040364* MOVEM ARGUM ; save it
5635 040424 254 00 0 00 036525 PJRST DDALU0 ; go handle
5636
5637 ; To handle local storage
5638
5639 040425 200 00 0 00 035720 DDNEX2: MOVE ANEXT ; get address
5640 040426 202 00 0 00 120770' MOVEM RLOCB ; save in 'from' location
5641 040427 202 00 0 00 120771' MOVEM RLOCE ; save in 'to' location
5642 040430 202 00 0 00 040423* MOVEM ARGUM ; save it
5643 040431 254 00 0 00 037026 PJRST DDLOC0 ; go handle
5644
5645 ; To handle PLI registers
5646
5647 040432 200 00 0 00 035720 DDNEX3: MOVE ANEXT ; get register number
5648 040433 202 00 0 00 040430* MOVEM ARGUM ; save in argument location
5649 040434 254 00 0 00 037423 PJRST DDPLI0 ; go handle
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 129
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0304
5650
5651 ;#********************************************************************
5652 ;* DDPPAK - Deposit into packet
5653 ;
5654 ; Format: DEPPAK adr,data
5655 ;#********************************************************************
5656
5657 040435 200 01 0 00 112644 DDPPAK: MOVE 1,[FMSGCD <DEPPAK offset,data (CR)>]
5658 040436 260 17 0 00 040307* GO .DARG ; get address
5659 040437 263 17 0 00 000000 RTN ; error/altmode/question - exit
5660 JRST [FMSGCD <? Missing argument>
5661 GO FIOFF
5662 040440 254 00 0 00 104450 RTN]
5663 040441 200 02 0 00 040433* MOVE 2,ARGUM ; get argument
5664 040442 301 02 0 00 000000 CAIL 2,0 ; in range 0-99.?
5665 040443 303 02 0 00 000377 CAILE 2,^D255
5666 JRST [FMSGCD <? Range of PACKET locations is 0-255.>
5667 GO FIOFF
5668 040444 254 00 0 00 112656 RTN]
5669 040445 210 01 0 00 112644 MOVN 1,[FMSGCD <DEPPAK offset,data (CR)>]
5670 040446 260 17 0 00 037525* GO .OARG ; get data
5671 040447 263 17 0 00 000000 RTN ; error/altmode/question - exit
5672 JRST [FMSGCD <? Missing argument>
5673 GO FIOFF
5674 040450 254 00 0 00 104450 RTN]
5675
5676 ; Do the deposit
5677
5678 040451 200 00 0 00 040441* MOVE ARGUM ; get argument
5679 040452 202 00 0 02 070047 MOVEM PACKET(2) ; save the data
5680 040453 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 130
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0305
5681
5682 ;#********************************************************************
5683 ;* DESTAK - examine 2910 stack
5684 ;#********************************************************************
5685
5686 040454 200 01 0 00 112665 DESTAK: MOVE 1,[FMSGCD (ESTACK <CR>)]
5687 040455 260 17 0 00 040412* GO CHKARG ; check for argument
5688 040456 263 17 0 00 000000 RTN ; error - exit
5689 040457 200 01 0 00 111715 DEBSTK: MOVE 1,[-1,,7750] ; set up AOBJN word
5690 040460 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
5691 040461 201 01 0 00 040511 MOVEI 1,DESTKM ; set up microcode address
5692 040462 260 17 0 00 064254 GO MLOADN ; load/verify it
5693 040463 255 00 0 00 000000 JFCL ; ignore error
5694
5695 ; Do the task
5696
5697 040464 260 17 0 00 037370* GO ISTOP ; stop the port
5698 040465 037 00 0 00 112666 TMSGC <2910 Stack:>
5699 040466 037 00 0 00 112671 TMSGC < Location Contents (addr)>
5700 040467 474 04 0 00 000000 SETO 4, ; initialize location pointer
5701 040470 350 00 0 00 000004 DESTA0: AOS 4 ; point to next location
5702 040471 303 04 0 00 000004 CAILE 4,4 ; done yet?
5703 040472 254 00 0 00 040505 JRST DESTAX ; yes - exit
5704 040473 402 00 0 00 035525* SETZM SDATA ; get initial CSR data
5705 040474 201 00 0 00 007750 MOVEI 7750 ; set up next address
5706 040475 202 00 0 00 035502* MOVEM SNEXT ; for IPASST
5707 040476 260 17 0 00 034166* GO IPASST ; single step once
5708 JRST [FMSGCD <? Error accessing CSR register>
5709 GO FIOFF
5710 040477 254 00 0 00 112677 JRST DESTAY]
5711 JRST [FMSGCD <? Port not stopped>
5712 GO FIOFF
5713 040500 254 00 0 00 112702 JRST DESTAY]
5714 040501 255 00 0 00 000000 JFCL ; error bits set in CSR
5715 XCT [TMSGC < Top >
5716 TMSGC < -1 >
5717 TMSGC < -2 >
5718 TMSGC < -3 >
5719 040502 256 00 0 04 112724 TMSGC < -4 >](4)
5720 040503 001 12 0 00 040475* PNTOCC 12,SNEXT ; print address
5721 040504 254 00 0 00 040470 JRST DESTA0 ; loop till done
5722
5723 ; Restore CRAM location/exit
5724
5725 040505 037 00 0 00 030242 DESTAX: PCRL
5726 040506 200 01 0 00 111715 DESTAY: MOVE 1,[-1,,7750] ; set up AOBJN word
5727 040507 260 17 0 00 042610 GO RESCRM ; restore CRAM data
5728 040510 263 17 0 00 000000 RTN ; return
5729
5730 ; Microcode
5731
5732 040511 775000 000000 DESTKM: MWORD <ADDR=7750,CRTN,D=1> ; 7750
5733 040512 001000 000240
5734 040513 777777 777777 -1
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 131
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0306
5735
5736 ;#********************************************************************
5737 ;* DBREAK - Set breakpoint
5738 ;
5739 ; A breakpoint is set by reading the particular CRAM location and
5740 ; rewriting it with bad parity. Nothing can be done at the break-
5741 ; point except read the CSR register.
5742 ;#********************************************************************
5743
5744 ; First check for any argument
5745
5746 040514 336 00 0 00 037241* DBREAK: SKIPN ARGFLG ; argument given?
5747 JRST [FMSGCD <? Missing argument>
5748 GO FIOFF
5749 040515 254 00 0 00 104450 RTN]
5750
5751 ; Obtain argument
5752
5753 040516 200 01 0 00 112737 DBREA0: MOVE 1,[FMSGCD <BREAK addr,addr,... (CR)>]
5754 040517 260 17 0 00 040446* GO .OARG ; get argument
5755 040520 263 17 0 00 000000 RTN ; error/altmode/question - exit
5756 040521 263 17 0 00 000000 RTN ; done - no more arguments
5757 040522 331 01 0 00 040451* SKIPL 1,ARGUM ; argument out of range?
5758 040523 303 01 0 00 007777 CAILE 1,7777 ; (0-7777)
5759 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
5760 GO FIOFF
5761 040524 254 00 0 00 107217 RTN]
5762
5763 ; Then ensure the port is stopped
5764
5765 040525 260 17 0 00 040464* GO ISTOP ; stop the port
5766
5767 ; Now obtain CRAM data and give it bad parity
5768
5769 040526 202 01 0 00 035713 MOVEM 1,CADDR ; set up address to load
5770 040527 476 00 0 00 035714 SETOM CWORDL ; initialize left half
5771 040530 476 00 0 00 035715 SETOM CWORDR ; initialize right half
5772 040531 260 17 0 00 036372 GO DRCRAM ; read the data
5773 040532 261 17 0 00 000001 PUT 1 ; save AC1
5774 040533 474 01 0 00 000000 SETO 1, ; set 'force bad parity' flag
5775 040534 200 02 0 00 035714 MOVE 2,CWORDL ; get left half
5776 040535 200 03 0 00 035715 MOVE 3,CWORDR ; get right half
5777 040536 260 17 0 00 042407 GO CALPAR ; insert parity
5778 040537 202 02 0 00 035714 MOVEM 2,CWORDL ; save left half
5779 040540 202 03 0 00 035715 MOVEM 3,CWORDR ; save right half
5780 040541 262 17 0 00 000001 GET 1 ; restore AC1
5781 040542 261 17 0 00 034000 PUT PARFLG ; save 'calculate parity' flag
5782 040543 402 00 0 00 034000 SETZM PARFLG ; clear 'calculate parity' flag
5783 040544 260 17 0 00 036340 GO DWCRAM ; load CRAM data (now with bad parity)
5784 040545 262 17 0 00 034000 GET PARFLG ; restore 'calculate parity' flag
5785 040546 254 00 0 00 040516 JRST DBREA0 ; get next address
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 132
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0307
5786
5787 ;#********************************************************************
5788 ;* DRBRK - Remove breakpoint
5789 ;#********************************************************************
5790
5791 ; First check for any argument
5792
5793 040547 336 00 0 00 040514* DRBRK: SKIPN ARGFLG ; argument given?
5794 JRST [FMSGCD <? Missing argument>
5795 GO FIOFF
5796 040550 254 00 0 00 104450 RTN]
5797
5798 ; Obtain argument
5799
5800 040551 200 01 0 00 112746 DRBR0: MOVE 1,[FMSGCD <RBREAK addr,addr,... (CR)>]
5801 040552 260 17 0 00 040517* GO .OARG ; get argument
5802 040553 263 17 0 00 000000 RTN ; error/altmode/question - exit
5803 040554 263 17 0 00 000000 RTN ; done - no more arguments
5804 040555 331 01 0 00 040522* SKIPL 1,ARGUM ; argument out of range?
5805 040556 303 01 0 00 007777 CAILE 1,7777 ; (0-7777)
5806 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
5807 GO FIOFF
5808 040557 254 00 0 00 107217 RTN]
5809
5810 ; Then ensure the port is stopped
5811
5812 040560 260 17 0 00 040525* GO ISTOP ; stop the port
5813
5814 ; Now obtain CRAM data and load back into CRAM with good parity
5815
5816 040561 202 01 0 00 035713 MOVEM 1,CADDR ; set up address to load
5817 040562 476 00 0 00 035714 SETOM CWORDL ; initialize left half
5818 040563 476 00 0 00 035715 SETOM CWORDR ; initialize right half
5819 040564 260 17 0 00 036372 GO DRCRAM ; read the data
5820 040565 261 17 0 00 034000 PUT PARFLG ; save 'calculate parity' flag
5821 040566 476 00 0 00 034000 SETOM PARFLG ; set 'calculate parity' flag
5822 040567 260 17 0 00 036340 GO DWCRAM ; load CRAM data (now with good parity)
5823 040570 262 17 0 00 034000 GET PARFLG ; restore 'calculate parity' flag
5824 040571 254 00 0 00 040551 JRST DRBR0 ; get next address
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 133
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0308
5825
5826 ;#********************************************************************
5827 ;* DCBRK - Clear all breakpoints
5828 ;
5829 ; If arguments are given, they are assumed to the the locations between
5830 ; which all breakpoints are to be removed.
5831 ;#********************************************************************
5832
5833 ; Start to process the arguments typed - both should be CRAM
5834 ; addresses in octal.
5835
5836 040572 400 05 0 00 000000 DCBRK: SETZ 5, ; init range of addresses
5837 040573 201 06 0 00 007777 MOVEI 6,7777 ; to 0-7777
5838
5839 ; Get first address
5840
5841 040574 200 01 0 00 112755 MOVE 1,[FMSGCD <CBREAK addr1,addr2 (CR)>]
5842 040575 260 17 0 00 040552* GO .OARG ; get first address
5843 040576 263 17 0 00 000000 RTN ; error/altmode/question - exit
5844 040577 254 00 0 00 040611 JRST DCBR0 ; no arguments given - continue
5845 040600 200 00 0 00 040555* MOVE ARGUM ; get argument
5846 040601 202 00 0 00 000005 MOVEM 5 ; save in 'from' location
5847 040602 202 00 0 00 000006 MOVEM 6 ; save in 'to' location
5848
5849 ; Get 2nd address
5850
5851 040603 210 01 0 00 112755 MOVN 1,[FMSGCD <CBREAK addr1,addr2 (CR)>]
5852 040604 260 17 0 00 040575* GO .OARG ; get first address
5853 040605 263 17 0 00 000000 RTN ; error/altmode/question - exit
5854 040606 254 00 0 00 040611 JRST DCBR0 ; no arguments given - continue
5855 040607 200 00 0 00 040600* MOVE ARGUM ; get argument
5856 040610 202 00 0 00 000006 MOVEM 6 ; save in 'to' location
5857
5858 ; Now range check the arguments
5859
5860 040611 331 00 0 00 000005 DCBR0: SKIPL 5 ; 1st argument in range?
5861 040612 303 05 0 00 007777 CAILE 5,7777
5862 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
5863 GO FIOFF
5864 040613 254 00 0 00 107217 RTN]
5865 040614 331 01 0 00 000006 SKIPL 1,6 ; 2nd argument in range?
5866 040615 303 06 0 00 007777 CAILE 6,7777
5867 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
5868 GO FIOFF
5869 040616 254 00 0 00 107217 RTN]
5870 040617 274 01 0 00 000005 SUB 1,5 ; see if range ok
5871 JUMPL 1,[FMSGCD <? Range nonsensical>
5872 GO FIOFF
5873 040620 321 01 0 00 110071 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 134
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0309
5874
5875 ; Then ensure the port is stopped
5876
5877 040621 260 17 0 00 040560* GO ISTOP ; stop the port
5878
5879 ; Now obtain CRAM data and load back into CRAM with good parity
5880
5881 040622 202 05 0 00 035713 DCBR1: MOVEM 5,CADDR ; set up address to load
5882 040623 476 00 0 00 035714 SETOM CWORDL ; initialize left half
5883 040624 476 00 0 00 035715 SETOM CWORDR ; initialize right half
5884 040625 260 17 0 00 036372 GO DRCRAM ; read the data
5885 040626 261 17 0 00 034000 PUT PARFLG ; save 'calculate parity' flag
5886 040627 476 00 0 00 034000 SETOM PARFLG ; set 'calculate parity' flag
5887 040630 260 17 0 00 036340 GO DWCRAM ; load CRAM data (now with good parity)
5888 040631 262 17 0 00 034000 GET PARFLG ; restore 'calculate parity' flag
5889 040632 350 00 0 00 000005 AOS 5 ; increment 'from' address
5890 040633 317 05 0 00 000006 CAMG 5,6 ; exceed 'to' address?
5891 040634 254 00 0 00 040622 JRST DCBR1 ; no - get next address
5892 040635 263 17 0 00 000000 RTN ; yes - exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 135
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0310
5893
5894 ;#********************************************************************
5895 ;* DLBRK - List breakpoints
5896 ;
5897 ; If arguments are given, they are assumed to be the locations between
5898 ; which all breakpoints are to be listed.
5899 ;#********************************************************************
5900
5901 ; Start to process the arguments typed - both should be CRAM
5902 ; addresses in octal.
5903
5904 040636 400 05 0 00 000000 DLBRK: SETZ 5, ; init range of addresses
5905 040637 201 06 0 00 007777 MOVEI 6,7777 ; to 0-7777
5906
5907 ; Get first address
5908
5909 040640 200 01 0 00 112764 MOVE 1,[FMSGCD <LBREAK addr1,addr2 (CR)>]
5910 040641 260 17 0 00 040604* GO .OARG ; get first address
5911 040642 263 17 0 00 000000 RTN ; error/altmode/question - exit
5912 040643 254 00 0 00 040655 JRST DLBR0 ; no arguments given - continue
5913 040644 200 00 0 00 040607* MOVE ARGUM ; get argument
5914 040645 202 00 0 00 000005 MOVEM 5 ; save in 'from' location
5915 040646 202 00 0 00 000006 MOVEM 6 ; save in 'to' location
5916
5917 ; Get 2nd address
5918
5919 040647 210 01 0 00 112764 MOVN 1,[FMSGCD <LBREAK addr1,addr2 (CR)>]
5920 040650 260 17 0 00 040641* GO .OARG ; get first address
5921 040651 263 17 0 00 000000 RTN ; error/altmode/question - exit
5922 040652 254 00 0 00 040655 JRST DLBR0 ; no arguments given - continue
5923 040653 200 00 0 00 040644* MOVE ARGUM ; get argument
5924 040654 202 00 0 00 000006 MOVEM 6 ; save in 'to' location
5925
5926 ; Now range check the arguments
5927
5928 040655 331 00 0 00 000005 DLBR0: SKIPL 5 ; 1st argument in range?
5929 040656 303 05 0 00 007777 CAILE 5,7777
5930 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
5931 GO FIOFF
5932 040657 254 00 0 00 107217 RTN]
5933 040660 331 01 0 00 000006 SKIPL 1,6 ; 2nd argument in range?
5934 040661 303 06 0 00 007777 CAILE 6,7777
5935 JRST [FMSGCD <? Range of CRAM locations is 0000-7777>
5936 GO FIOFF
5937 040662 254 00 0 00 107217 RTN]
5938 040663 274 01 0 00 000005 SUB 1,5 ; see if range ok
5939 JUMPL 1,[FMSGCD <? Range nonsensical>
5940 GO FIOFF
5941 040664 321 01 0 00 110071 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 136
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0311
5942
5943 ; Then ensure the port is stopped
5944
5945 040665 260 17 0 00 040621* GO ISTOP ; stop the port
5946 040666 200 07 0 00 112101 MOVE 7,[-2] ; initialize breakpoint count
5947 040667 037 00 0 00 112765 TMSGC <Breakpoints: >
5948
5949 ; Now obtain CRAM data and load back into CRAM with good parity
5950
5951 040670 202 05 0 00 035713 DLBR1: MOVEM 5,CADDR ; set up address to load
5952 040671 476 00 0 00 035714 SETOM CWORDL ; initialize left half
5953 040672 476 00 0 00 035715 SETOM CWORDR ; initialize right half
5954 040673 260 17 0 00 036372 GO DRCRAM ; read the data
5955 040674 400 01 0 00 000000 SETZ 1, ; clear 'bad' parity flag
5956 040675 200 02 0 00 035714 MOVE 2,CWORDL ; get left word
5957 040676 200 03 0 00 035715 MOVE 3,CWORDR ; get right word
5958 040677 260 17 0 00 042407 GO CALPAR ; calculate parity
5959 040700 316 02 0 00 035714 CAMN 2,CWORDL ; same as before?
5960 040701 254 00 0 00 040707 JRST DLBR2 ; yes - good parity
5961
5962 ; Print location
5963
5964 040702 350 00 0 00 000007 AOS 7 ; next 5 characters
5965 040703 303 07 0 00 000007 CAILE 7,7 ; done with line?
5966 GO [SETO 7, ; yes - init counter
5967 TMSGC < >
5968 040704 260 17 0 00 112775 RTN]
5969 040705 001 04 0 00 000005 PNTOCC 4,5 ; print address
5970 040706 037 00 0 00 000040 PSP ; print a space
5971
5972 ; Increment to next location
5973
5974 040707 037 07 0 00 000003 DLBR2: TTALTM ; altmode key struck?
5975 040710 334 00 0 00 000000 SKIPA ; no - proceed
5976 040711 254 00 0 00 040715 JRST DLBRX ; yes - exit
5977 040712 350 00 0 00 000005 AOS 5 ; increment 'from' address
5978 040713 317 05 0 00 000006 CAMG 5,6 ; exceed 'to' address?
5979 040714 254 00 0 00 040670 JRST DLBR1 ; no - get next address
5980 040715 037 00 0 00 030242 DLBRX: PCRL ; yes - print blank line
5981 040716 263 17 0 00 000000 RTN ; and exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 137
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0312
5982
5983 ;#********************************************************************
5984 ;* DLOAD - Load microcode into CRAM from a test.
5985 ;#********************************************************************
5986
5987 040717 210 01 0 00 113004 DLOAD: MOVN 1,[FMSGCD (LOAD n <CR>)]
5988 040720 260 17 0 00 040650* GO .OARG ; get argument
5989 040721 263 17 0 00 000000 RTN ; error/altmode/question - exit
5990 JRST [FMSGCD <? Missing argument>
5991 GO FIOFF
5992 040722 254 00 0 00 104450 RTN]
5993 040723 333 01 0 00 040653* SKIPLE 1,ARGUM ; get argument - out of range
5994 040724 303 01 0 00 000054 CAILE 1,MAXTST ; 1-MAXTST?
5995 JRST [FMSGC <? Test number out of range 1 - >
5996 MOVEI MAXTST
5997 PNTOCF
5998 PCRLF
5999 GO FIOFF
6000 040725 254 00 0 00 113014 RTN]
6001 040726 337 01 0 01 032126 SKIPG 1,TSTMIC(1) ; get test microcode address
6002 JRST [FMSGCD <? Test specified does not have microcode>
6003 GO FIOFF
6004 040727 254 00 0 00 113033 RTN]
6005 040730 260 17 0 00 040665* GO ISTOP ; stop the port
6006 040731 260 17 0 00 064256 GO MLOADY ; load it
6007 040732 255 00 0 00 000000 JFCL ; failed
6008 040733 037 00 0 00 113036 TMSGC <[Number of CRAM locations loaded/verified = >
6009 040734 200 00 0 00 120742' MOVE MLNUM ; get number of words loaded/verified
6010 040735 037 15 0 00 000000 PNTDEC
6011 040736 037 00 0 00 113050 TMSGD <.]>
6012 040737 263 17 0 00 000000 RTN
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 138
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0313
6013
6014 ;#********************************************************************
6015 ;* DLIST - List microcode from test
6016 ;#********************************************************************
6017
6018 040740 210 01 0 00 113055 DLIST: MOVN 1,[FMSGCD (LIST n <CR>)]
6019 040741 260 17 0 00 040720* GO .OARG ; get argument
6020 040742 263 17 0 00 000000 RTN ; error/altmode/question - exit
6021 JRST [FMSGCD <? Missing argument>
6022 GO FIOFF
6023 040743 254 00 0 00 104450 RTN]
6024 040744 333 01 0 00 040723* SKIPLE 1,ARGUM ; get argument - out of range
6025 040745 303 01 0 00 000054 CAILE 1,MAXTST ; 1-MAXTST?
6026 JRST [FMSGC <? Test number out of range 1 - >
6027 MOVEI MAXTST
6028 PNTOCF
6029 PCRLF
6030 GO FIOFF
6031 040746 254 00 0 00 113014 RTN]
6032 040747 337 01 0 01 032126 SKIPG 1,TSTMIC(1) ; get test microcode address
6033 JRST [FMSGCD <? Test specified does not have microcode>
6034 GO FIOFF
6035 040750 254 00 0 00 113033 RTN]
6036 040751 260 17 0 00 064526 GO MLIST ; list it
6037 040752 263 17 0 00 000000 RTN ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 139
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0314
6038
6039 ;#********************************************************************
6040 ;* DFLOAD - Load microcode from file into CRAM
6041 ;#********************************************************************
6042
6043 040753 200 01 0 00 113061 DFLOAD: MOVE 1,[FMSGCD (FLOAD <CR>)]
6044 040754 260 17 0 00 040455* GO CHKARG ; check for argument
6045 040755 263 17 0 00 000000 RTN ; error - exit
6046 040756 476 00 0 00 044232 SETOM FFLAG ; set operator output flag
6047 040757 260 17 0 00 043745 GO FLOADB ; load file into ucode buffer
6048 040760 263 17 0 00 000000 RTN ; error - exit
6049
6050 ; Ensure the port is stopped
6051
6052 040761 260 17 0 00 040730* GO ISTOP ; stop the port
6053 040762 400 01 0 00 000000 SETZ 1, ; clear AC1
6054 040763 260 17 0 00 040275* GO LDCSR ; clear CSR
6055
6056 ; Check to see if it is already loaded
6057
6058 040764 200 00 0 00 044227 MOVE UNAME ; get microcode name desired
6059 040765 316 00 0 00 044231 CAMN CNAME ; same as what is loaded?
6060 GO [TMSGC <[> ; yes - print message
6061 MOVE UNAME
6062 PNTSIX
6063 PNTCI "."
6064 MOVE UNAME+1
6065 PNTSIX
6066 TMSGD < already loaded]>
6067 040766 260 17 0 00 113066 RTN]
6068
6069 ; Load microcode
6070
6071 040767 476 00 0 00 044231 SETOM CNAME ; ensure the microcode gets loaded
6072 040770 260 17 0 00 044030 GO FLOADC ; load buffer into CRAM
6073 040771 263 17 0 00 000000 RTN ; error - return
6074 040772 255 00 0 00 000000 JFCL ; already loaded - return
6075
6076 ; Verify microcode
6077
6078 040773 260 17 0 00 044100 GO FVERFC ; verify CRAM against buffer
6079 040774 260 17 0 00 044155 GO FUERR ; print any errors
6080 040775 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 140
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0315
6081
6082 ;#********************************************************************
6083 ;* DFVERF - Verify microcode from file versus CRAM
6084 ;#********************************************************************
6085
6086 040776 200 01 0 00 113102 DFVERF: MOVE 1,[FMSGCD (FVERFY <CR>)]
6087 040777 260 17 0 00 040754* GO CHKARG ; check for argument
6088 041000 263 17 0 00 000000 RTN ; error - exit
6089 041001 476 00 0 00 044232 SETOM FFLAG ; set operator output flag
6090 041002 260 17 0 00 043745 GO FLOADB ; load file into ucode buffer
6091 041003 263 17 0 00 000000 RTN ; error - exit
6092
6093 ; Ensure the port is stopped
6094
6095 041004 260 17 0 00 040761* GO ISTOP ; stop the port
6096 041005 400 01 0 00 000000 SETZ 1, ; clear AC1
6097 041006 260 17 0 00 040763* GO LDCSR ; clear CSR
6098
6099 ; Now do the verify
6100
6101 041007 260 17 0 00 044100 GO FVERFC ; verify CRAM against buffer
6102 041010 260 17 0 00 044155 GO FUERR ; print any errors
6103 041011 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 141
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0316
6104
6105 ;#********************************************************************
6106 ;* DFLIST - List microcode in file
6107 ;#********************************************************************
6108
6109 041012 200 01 0 00 113106 DFLIST: MOVE 1,[FMSGCD (FLIST <CR>)]
6110 041013 260 17 0 00 040777* GO CHKARG ; check for argument
6111 041014 263 17 0 00 000000 RTN ; error - exit
6112 041015 476 00 0 00 044232 SETOM FFLAG ; set operator output flag
6113 041016 260 17 0 00 043745 GO FLOADB ; load file into ucode buffer
6114 041017 263 17 0 00 000000 RTN ; error - exit
6115 041020 037 00 0 00 111637 TMSGC <ADDR/ JUMP PAR OUT MGC SOR FUN DES CC RAM PA PB SK BUS CRY CTL TM SP MK>
6116 041021 200 03 0 00 044233 MOVE 3,ULEN ; get length of ucode
6117 041022 201 04 0 00 044232 MOVEI 4,UCODE-2 ; get address of ucode buffer
6118 041023 361 03 0 00 041045 DFLIS0: SOJL 3,DFLISX ; done yet? yes - exit
6119 041024 271 04 0 00 000002 ADDI 4,2 ; point to next microword entry
6120 041025 120 01 0 04 000000 DMOVE 1,(4) ; get microword entry
6121 041026 135 00 0 00 113107 LDB [POINT 12,1,11] ; get CRAM address
6122 041027 202 00 0 00 035713 MOVEM CADDR ; save it
6123 041030 246 01 0 00 000006 LSHC 1,6 ; position correctly for 30 bits
6124 041031 135 03 0 00 113110 LDB 3,[POINT 30,2,29] ; get right 30 bits
6125 041032 135 02 0 00 113111 LDB 2,[POINT 30,1,35] ; get left 30 bits
6126 041033 622 03 0 00 000002 TRZE 3,2 ; bit 59 set?
6127 041034 660 03 0 00 000001 TRO 3,1 ; yes - set rightmost bit
6128 041035 037 00 0 00 030242 PCRL ; start a new line
6129 041036 001 04 0 00 035713 PNTOCC 4,CADDR ; print CRAM load address
6130 041037 037 00 0 00 111633 TMSG </ >
6131 041040 260 17 0 00 042271 GO PNTCRM ; print it
6132 041041 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
6133 041042 254 00 0 00 041045 JRST DFLISX ; yes - exit
6134 041043 037 07 0 00 000003 TTALTM ; altmode key struck?
6135 041044 254 00 0 00 041023 JRST DFLIS0 ; no - loop till done
6136
6137 041045 037 00 0 00 030242 DFLISX: PCRL ; final CRLF
6138 041046 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 142
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0317
6139
6140 ;#********************************************************************
6141 ;* DFEXAM - Examine microcode in file
6142 ;#********************************************************************
6143
6144 041047 200 01 0 00 113115 DFEXAM: MOVE 1,[FMSGCD (FEXAM <CR>)]
6145 041050 260 17 0 00 041013* GO CHKARG ; check for argument
6146 041051 263 17 0 00 000000 RTN ; error - exit
6147 041052 476 00 0 00 044232 SETOM FFLAG ; set operator output flag
6148 041053 260 17 0 00 043745 GO FLOADB ; load file into ucode buffer
6149 041054 263 17 0 00 000000 RTN ; error - exit
6150 041055 200 03 0 00 044233 MOVE 3,ULEN ; get length of ucode
6151 041056 201 04 0 00 044232 MOVEI 4,UCODE-2 ; get address of ucode buffer
6152 041057 361 03 0 00 041102 DFEXA0: SOJL 3,DFEXAX ; done yet? yes - exit
6153 041060 271 04 0 00 000002 ADDI 4,2 ; point to next microword entry
6154 041061 120 01 0 04 000000 DMOVE 1,(4) ; get microword entry
6155 041062 135 00 0 00 113107 LDB [POINT 12,1,11] ; get CRAM address
6156 041063 202 00 0 00 035713 MOVEM CADDR ; save it
6157 041064 246 01 0 00 000006 LSHC 1,6 ; position correctly for 30 bits
6158 041065 135 03 0 00 113110 LDB 3,[POINT 30,2,29] ; get right 30 bits
6159 041066 135 02 0 00 113111 LDB 2,[POINT 30,1,35] ; get left 30 bits
6160 041067 622 03 0 00 000002 TRZE 3,2 ; bit 59 set?
6161 041070 660 03 0 00 000001 TRO 3,1 ; yes - set rightmost bit
6162 041071 037 00 0 00 030242 PCRL ; start a new line
6163 041072 200 00 0 00 035713 MOVE CADDR ; get CRAM load address
6164 041073 037 04 0 00 000000 PNT4 ; print it
6165 041074 037 00 0 00 111633 TMSG </ >
6166 041075 260 17 0 00 042365 GO PNTWD ; print it
6167 041076 332 00 0 00 120713' SKIPE ALTF ; altmode typed?
6168 041077 254 00 0 00 041102 JRST DFEXAX ; yes - exit
6169 041100 037 07 0 00 000003 TTALTM ; altmode key struck?
6170 041101 254 00 0 00 041057 JRST DFEXA0 ; no - loop till done
6171
6172 041102 037 00 0 00 030242 DFEXAX: PCRL ; final CRLF
6173 041103 263 17 0 00 000000 RTN ; exit
6174
6175
6176 ;#********************************************************************
6177 ;* DTRANS - Translate CSR bits to English
6178 ;#********************************************************************
6179
6180 041104 210 01 0 00 113123 DTRANS: MOVN 1,[FMSGCD (TRANSL data <CR>)]
6181 041105 260 17 0 00 040741* GO .OARG ; get argument
6182 041106 263 17 0 00 000000 RTN ; error/altmode/question - exit
6183 JRST [FMSGCD <? Missing argument>
6184 GO FIOFF
6185 041107 254 00 0 00 104450 RTN]
6186 041110 200 01 0 00 040744* MOVE 1,ARGUM ; get argument
6187 041111 260 17 0 00 042443 GO CSRPNT ; print CSR data in English
6188 041112 037 00 0 00 030242 PCRL ; end of line
6189 041113 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 143
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0318
6190
6191 ;#********************************************************************
6192 ;* DCCODE - Print condition codes
6193 ;#********************************************************************
6194
6195 041114 200 01 0 00 113127 DCCODE: MOVE 1,[FMSGCD (CCODE <CR>)]
6196 041115 260 17 0 00 041050* GO CHKARG ; check for argument
6197 041116 263 17 0 00 000000 RTN ; error - exit
6198
6199 ; Save CRAM locations
6200
6201 041117 200 01 0 00 112133 MOVE 1,[-4,,7750] ; set up AOBJN word
6202 041120 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
6203
6204 ; Loop on condition code
6205
6206 041121 474 07 0 00 000000 SETO 7, ; initialize pointer
6207 041122 350 00 0 00 000007 DCCOD1: AOS 7 ; point to next condition code
6208 041123 303 07 0 00 000017 CAILE 7,17 ; done yet?
6209 041124 254 00 0 00 041146 JRST DCCOD2 ; yes - go print results
6210 041125 137 07 0 00 113130 DPB 7,[POINT 4,CCMIC+3,23] ; no - set up microcode
6211 041126 201 01 0 00 041232 MOVEI 1,CCMIC ; set up microcode address
6212 041127 260 17 0 00 064254 GO MLOADN ; load/verify it
6213 041130 255 00 0 00 000000 JFCL ; ignore error
6214 041131 201 01 0 00 007750 MOVEI 1,7750 ; get start address
6215 041132 242 01 0 00 000001 LSH 1,1 ; position correctly
6216 041133 260 17 0 00 040271* GO LDRAR ; load the RAR
6217 041134 201 01 0 00 000010 MOVEI 1,MPRUN ; start it up
6218 041135 260 17 0 00 041006* GO LDCSR ; write to CSR register
6219 041136 201 01 0 00 040000 MOVEI 1,SELLAR ; set up to read LAR
6220 041137 260 17 0 00 041135* GO LDCSR ; stop the port
6221 041140 260 17 0 00 035572* GO RDLAR ; read stopping address
6222 041141 242 01 0 00 777777 LSH 1,-1 ; position correctly
6223 041142 402 00 0 07 041212 SETZM CCTAB3(7) ; initialize result
6224 041143 306 01 0 00 007753 CAIN 1,7753 ; was the cc set?
6225 041144 476 00 0 07 041212 SETOM CCTAB3(7) ; yes - indicate such
6226 041145 254 00 0 00 041122 JRST DCCOD1 ; loop till done
6227
6228 ; Print the results
6229
6230 041146 037 00 0 00 113131 DCCOD2: TMSGC <CC On: >
6231 041147 474 07 0 00 000000 SETO 7, ; initialize pointer
6232 041150 350 00 0 00 000007 DCCOD3: AOS 7 ; point to next entry
6233 041151 303 07 0 00 000017 CAILE 7,17 ; done yet?
6234 041152 254 00 0 00 041156 JRST DCCOD4 ; yes - continue
6235 041153 332 00 0 07 041212 SKIPE CCTAB3(7) ; no - cc on?
6236 041154 256 00 0 07 041172 XCT CCTAB1(7) ; yes - print text
6237 041155 254 00 0 00 041150 JRST DCCOD3
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 144
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0319
6238
6239 041156 037 00 0 00 113134 DCCOD4: TMSGC <CC Off: >
6240 041157 474 07 0 00 000000 SETO 7, ; initialize pointer
6241 041160 350 00 0 00 000007 DCCOD5: AOS 7 ; point to next entry
6242 041161 303 07 0 00 000017 CAILE 7,17 ; done yet?
6243 041162 254 00 0 00 041166 JRST DCCOD6 ; yes - continue
6244 041163 336 00 0 07 041212 SKIPN CCTAB3(7) ; no - cc on?
6245 041164 256 00 0 07 041172 XCT CCTAB1(7) ; yes - print text
6246 041165 254 00 0 00 041160 JRST DCCOD5
6247 041166 037 00 0 00 030242 DCCOD6: PCRL
6248
6249 ; Restore CRAM locations and exit
6250
6251 041167 200 01 0 00 112133 MOVE 1,[-4,,7750] ; set up AOBJN word
6252 041170 260 17 0 00 042610 GO RESCRM ; restore CRAM data
6253 041171 263 17 0 00 000000 RTN ; return
6254
6255 ; Tables
6256
6257 041172 037 00 0 00 113137 CCTAB1: TMSG < CBAV> ; 0 - CCCBUSAVAIL
6258 041173 037 00 0 00 113141 TMSG < GCSR> ; 1 - CCGRNTCSR
6259 041174 037 00 0 00 113143 TMSG < FEQ0> ; 2 - CCFEQ0
6260 041175 037 00 0 00 113145 TMSG < CSRC> ; 3 - CCCSRCHNG
6261 041176 037 00 0 00 113147 TMSG < EBPE> ; 4 - CCEBPARERR
6262 041177 037 00 0 00 113151 TMSG < AFUL> ; 5 - CCRCVRBUFAFUL
6263 041200 037 00 0 00 113153 TMSG < BFUL> ; 6 - CCRCVRBUFBFUL
6264 041201 037 00 0 00 113155 TMSG < XATN> ; 7 - CCXMTRATTN
6265 041202 037 00 0 00 113157 TMSG < ERQS> ; 10 - CCEBUSRQST
6266 041203 037 00 0 00 113161 TMSG < IACT> ; 11 - CCINTRACTIVE
6267 041204 037 00 0 00 113163 TMSG < MSGN> ; 12 - CCMBSIGN
6268 041205 037 00 0 00 113165 TMSG < MVRP> ; 13 - CCMVRPARCHK
6269 041206 037 00 0 00 113167 TMSG < CBPE> ; 14 - CCCBUSPARERR
6270 041207 037 00 0 00 113171 TMSG < PLPE> ; 15 - CCPLIPARERR
6271 041210 037 00 0 00 113173 TMSG < CHER> ; 16 - CCCHANERR
6272 041211 037 00 0 00 113175 TMSG < CBLW> ; 17 - CCCBLSTWD
6273
6274 041212 CCTAB3: BLOCK ^D16 ; results
6275
6276 ; Microcode
6277
6278 041232 775077 510000 CCMIC: MWORD <ADDR=7750,JMAP,J=7751,D=1> ; 7750
6279 041233 001000 000040
6280 041234 775177 530000 MWORD <CJP,J=7753,D=1,CENA> ; 7751
6281 041235 001400 000060
6282 041236 775277 520000 MWORD <JMAP,J=7752,D=1> ; 7752
6283 041237 001000 000040
6284 041240 775377 530000 MWORD <JMAP,J=7753,D=1> ; 7753
6285 041241 001000 000040
6286 041242 777777 777777 -1
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 145
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0320
6287
6288 ;#********************************************************************
6289 ;* DFILLN - Fill CRAM with special data (J=PC+1,OPCode)
6290 ;#********************************************************************
6291
6292 041243 210 01 0 00 113207 DFILLN: MOVN 1,[FMSGCD <FILLNX number (2910 Op code 0-17)>]
6293 041244 260 17 0 00 041105* GO .OARG ; get argument
6294 041245 263 17 0 00 000000 RTN ; error/altmode/question - exit
6295 JRST [FMSGCD <? Missing argument>
6296 GO FIOFF
6297 041246 254 00 0 00 104450 RTN]
6298 041247 260 17 0 00 041004* GO ISTOP ; stop the port
6299 041250 200 01 0 00 041110* MOVE 1,ARGUM ; get argument
6300 041251 400 02 0 00 000000 SETZ 2, ; initialize address
6301 041252 402 00 0 00 035714 SETZM CWORDL ; initialize left half
6302 041253 402 00 0 00 035715 SETZM CWORDR ; initialize right half
6303 041254 202 02 0 00 035713 DFILN0: MOVEM 2,CADDR ; set up address
6304 041255 350 00 0 00 000002 AOS 2 ; point to next address
6305 041256 303 02 0 00 007777 CAILE 2,7777 ; at end yet?
6306 041257 400 02 0 00 000000 SETZ 2, ; yes - set back to zero
6307 041260 137 02 0 00 111127 DPB 2,[POINT 12,CWORDL,17] ; insert J field
6308 041261 137 01 0 00 111201 DPB 1,[POINT 4,CWORDR,31] ; insert CTL field
6309 041262 260 17 0 00 036340 GO DWCRAM ; load it
6310 041263 402 00 0 00 044231 SETZM CNAME ; clear 'CRAM loaded' ucode flag
6311 041264 326 02 0 00 041254 JUMPN 2,DFILN0 ; loop till done
6312 041265 037 00 0 00 113210 TMSGCD <[Number of CRAM locations loaded = 4096.]>
6313 041266 263 17 0 00 000000 RTN ; return
6314
6315
6316 ;#********************************************************************
6317 ;* DFILLP - Fill CRAM with special data (J=PC,OPCode)
6318 ;#********************************************************************
6319
6320 041267 210 01 0 00 113232 DFILLP: MOVN 1,[FMSGCD <FILLPC number (2910 Op code 0-17)>]
6321 041270 260 17 0 00 041244* GO .OARG ; get argument
6322 041271 263 17 0 00 000000 RTN ; error/altmode/question - exit
6323 JRST [FMSGCD <? Missing argument>
6324 GO FIOFF
6325 041272 254 00 0 00 104450 RTN]
6326 041273 260 17 0 00 041247* GO ISTOP ; stop the port
6327 041274 200 01 0 00 041250* MOVE 1,ARGUM ; get argument
6328 041275 476 00 0 00 035713 SETOM CADDR ; initialize address
6329 041276 402 00 0 00 035714 SETZM CWORDL ; initialize left half
6330 041277 402 00 0 00 035715 SETZM CWORDR ; initialize right half
6331 041300 350 02 0 00 035713 DFILP0: AOS 2,CADDR ; set up address
6332 041301 137 02 0 00 111127 DPB 2,[POINT 12,CWORDL,17] ; insert J field
6333 041302 137 01 0 00 111201 DPB 1,[POINT 4,CWORDR,31] ; insert CTL field
6334 041303 260 17 0 00 036340 GO DWCRAM ; load it
6335 041304 402 00 0 00 044231 SETZM CNAME ; clear 'CRAM loaded' ucode flag
6336 041305 307 02 0 00 007777 CAIG 2,7777 ; done yet?
6337 041306 254 00 0 00 041300 JRST DFILP0 ; no - loop till done
6338 041307 037 00 0 00 113210 TMSGCD <[Number of CRAM locations loaded = 4096.]>
6339 041310 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 146
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0321
6340
6341 ;#********************************************************************
6342 ;* DCWPNT - Print CCW list
6343 ;#********************************************************************
6344
6345 041311 200 01 0 00 113237 DCWPNT: MOVE 1,[FMSGCD (CCWPNT <CR>)]
6346 041312 260 17 0 00 041115* GO CHKARG ; check for argument
6347 041313 263 17 0 00 000000 RTN ; error - exit
6348 041314 260 17 0 00 000000* GO CCWPNT ; print CCW list
6349 041315 037 00 0 00 030242 PCRL
6350 041316 263 17 0 00 000000 RTN ; return
6351
6352
6353 ;#********************************************************************
6354 ;* DLGPNT - Print logout data
6355 ;#********************************************************************
6356
6357 041317 200 01 0 00 113244 DLGPNT: MOVE 1,[FMSGCD (LOGPNT <CR>)]
6358 041320 260 17 0 00 041312* GO CHKARG ; check for argument
6359 041321 263 17 0 00 000000 RTN ; error - exit
6360 041322 260 17 0 00 000000* GO GETLOG ; get logout data to a buffer area
6361 041323 260 17 0 00 000000* GO LOGPNT ; print channel logout data
6362 041324 263 17 0 00 000000 RTN ; return
6363
6364
6365 ;#********************************************************************
6366 ;* DSWIT - Switch complement commands
6367 ;#********************************************************************
6368
6369 041325 200 01 0 00 104520 DSWIT: MOVE 1,[FMSGCD (Switch Name <CR>)]
6370 041326 260 17 0 00 041320* GO CHKARG ; check for argument
6371 041327 263 17 0 00 000000 RTN ; error - exit
6372 041330 261 17 0 00 000001 PUT 1 ; save AC1
6373 041331 200 01 0 00 031536* MOVE 1,.CGOT ; get dispatch number
6374 041332 275 01 0 00 000124 SUBI 1,SWSTP ; normalize to 0..
6375 041333 260 17 0 00 031540* GO SWCOM ; complement switch
6376 041334 262 17 0 00 000001 GET 1 ; restore AC1
6377 041335 263 17 0 00 000000 RTN ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 147
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0322
6378
6379 ;#********************************************************************
6380 ;* IPRINT - Print interrupt history
6381 ;#********************************************************************
6382
6383 041336 200 01 0 00 113251 DIPRIN: MOVE 1,[FMSGCD (IPRINT <CR>)]
6384 041337 260 17 0 00 041326* GO CHKARG ; check for argument
6385 041340 263 17 0 00 000000 RTN ; error - exit
6386 041341 261 17 0 00 000000 IPRINT: RPUT (0,1,2) ; save AC's
6387
6388 041344 335 01 0 00 000000* IPRIN0: SKIPGE 1,INTNUM ; any interrupt yet?
6389 041345 254 00 0 00 041351 JRST IPRINX
6390 041346 260 17 0 00 041355 GO IPRINI ; yes - print the data
6391 041347 037 07 0 00 000003 TTALTM ; check for altmode typed
6392 041350 254 00 0 00 041344 JRST IPRIN0 ; no - keep looping
6393 041351 262 17 0 00 000002 IPRINX: RGET (2,1,0) ; yes - restore AC's
6394
6395 041354 263 17 0 00 000000 RTN ; exit
6396
6397 ; Print interrupt data
6398
6399 041355 370 01 0 00 041344* IPRINI: SOS 1,INTNUM ; point to previous interrupt
6400 041356 303 01 0 00 000023 CAILE 1,^D19 ; overflow interrupt?
6401 041357 201 01 0 00 000023 MOVEI 1,^D19 ; yes - limit to 20 interrupts
6402 041360 202 01 0 00 041355* MOVEM 1,INTNUM ; save number left
6403 041361 037 00 0 00 113252 TMSGC <=====>
6404 041362 550 02 0 01 000000* HRRZ 2,INTTYP(1) ; get type
6405 XCT [TMSGC <Vectored (PC = >
6406 TMSGC <NV Chn 1 (PC = >
6407 TMSGC <NV Chn 2 (PC = >
6408 TMSGC <NV Chn 3 (PC = >
6409 TMSGC <NV Chn 4 (PC = >
6410 TMSGC <NV Chn 5 (PC = >
6411 TMSGC <NV Chn 6 (PC = >
6412 041363 256 00 0 02 113314 TMSGC <NV Chn 7 (PC = >](2)
6413 041364 550 00 0 01 000000* HRRZ INTPC(1) ; get interrupt PC
6414 041365 037 16 0 00 000003 PNTOCS ; print it
6415 041366 037 00 0 00 113324 TMSG <) at >
6416 041367 200 00 0 01 000000* MOVE INTTIM(1) ; get milliseconds
6417 041370 037 15 0 00 000000 PNTDEC
6418 041371 037 00 0 00 113326 TMSG <.ms + >
6419 041372 200 00 0 01 000000* MOVE INTUSE(1) ; get microseconds
6420 041373 037 15 0 00 000000 PNTDEC
6421 041374 037 00 0 00 113330 TMSG <.us>
6422 041375 037 00 0 00 113331 TMSGC <CONI PI = >
6423 041376 200 00 0 01 000000* MOVE INTCON(1) ; get CONI PI data
6424 041377 037 13 0 00 000000 PNTHW ; print it
6425 041400 037 00 0 00 113334 TMSG < CONI APR = >
6426 041401 200 00 0 01 000000* MOVE INTAPR(1) ; get APR data
6427 041402 037 13 0 00 000000 PNTHW ; print it
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 148
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0323
6428 041403 037 00 0 00 113337 TMSG < CSR = >
6429 041404 200 00 0 01 000000* MOVE INTCSR(1) ; get CSR data
6430 041405 037 13 0 00 000000 PNTHW ; print it
6431 041406 037 00 0 00 030242 PCRL
6432 041407 335 00 0 01 041362* SKIPGE INTTYP(1)
6433 041410 037 00 0 00 113341 TMSGCD < ##### (Interrupts flushed) #####>
6434 041411 263 17 0 00 000000 RTN
6435
6436
6437 ;#********************************************************************
6438 ;* IINIT - Initialize interrupt system
6439 ;#********************************************************************
6440
6441 041412 200 01 0 00 113354 DIINIT: MOVE 1,[FMSGCD (IINIT <CR>)]
6442 041413 260 17 0 00 041337* GO CHKARG ; check for argument
6443 041414 263 17 0 00 000000 RTN ; error - exit
6444 041415 260 17 0 00 031035* GO INITPI ; init PI system
6445 041416 260 17 0 00 031354* GO SETVEC ; set up vector addresses
6446 041417 263 17 0 00 000000 RTN ; return
6447
6448
6449 ;#********************************************************************
6450 ;* DPINIT - Initialize PCB and queues
6451 ;#********************************************************************
6452
6453 041420 200 01 0 00 113360 DPINIT: MOVE 1,[FMSGCD (PINIT <CR>)]
6454 041421 260 17 0 00 041413* GO CHKARG ; check for argument
6455 041422 263 17 0 00 000000 RTN ; error - exit
6456 041423 260 17 0 00 064612 GO TPCB ; initialize the PCB
6457 041424 263 17 0 00 000000 RTN ; return
6458
6459
6460 ;#********************************************************************
6461 ;* DSIDLE - Start port and wait for IDLE loop
6462 ;#********************************************************************
6463
6464 041425 200 01 0 00 113364 DSIDLE: MOVE 1,[FMSGCD (SIDLE <CR>)]
6465 041426 260 17 0 00 041421* GO CHKARG ; check for argument
6466 041427 263 17 0 00 000000 RTN ; error - exit
6467 041430 260 17 0 00 065052 GO TIDLE ; start up port and wait for IDLE
6468 041431 037 01 0 00 113365 FMSGCD <? Never got to idle loop>
6469 041432 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 149
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0324
6470
6471 ;#********************************************************************
6472 ;* DBPACK - Build packet
6473 ;#********************************************************************
6474
6475 041433 210 01 0 00 113373 DBPACK: MOVN 1,[GO DBPACP] ; get help text
6476 041434 260 17 0 00 041270* GO .OARG ; get argument
6477 041435 263 17 0 00 000000 RTN ; error/altmode/question - exit
6478 JRST [FMSGCD <? Missing argument - Opcode>
6479 GO FIOFF
6480 041436 254 00 0 00 113403 RTN]
6481 041437 200 11 0 00 041274* MOVE OP,ARGUM ; get opcode
6482 041440 260 17 0 00 067212 GO DECOPC ; decode the op code
6483 041441 334 00 0 00 000000 SKIPA ; error - print error
6484 041442 332 00 0 00 000002 SKIPE 2 ; correct type?
6485 JRST [FMSGCD <? Opcode illegal> ; no - print error
6486 GO FIOFF
6487 041443 254 00 0 00 113413 RTN]
6488
6489 ; Set up arguments
6490
6491 041444 200 00 0 00 034006 MOVE RSPFLG ; get response flag
6492 041445 202 00 0 00 065155 MOVEM TRSFLG ; save it
6493 041446 200 00 0 00 034007 MOVE FORSEL ; get format select flag
6494 041447 202 00 0 00 065154 MOVEM TFMFLG ; save it
6495 041450 200 00 0 00 034010 MOVE PATSEL ; get path select flag
6496 041451 202 00 0 00 065156 MOVEM TPTFLG ; save it
6497 041452 120 00 0 00 034014 DMOVE DXCTID ; get transaction id
6498 041453 124 00 0 00 065157 DMOVEM TXCTID ; save it
6499 041454 200 00 0 00 034011 MOVE DPORT ; get destination port
6500 041455 202 00 0 00 065161 MOVEM TDPORT ; save it
6501 041456 200 00 0 00 034002 MOVE DSBYTE ; get byte count
6502 041457 202 00 0 00 065162 MOVEM TBYTE ; save it
6503 041460 402 00 0 00 065163 SETZM TWORD ; clear word count
6504 041461 200 00 0 00 034003 MOVE DSPAT ; get data pattern
6505 041462 202 00 0 00 065164 MOVEM TPAT ; save it
6506 041463 260 17 0 00 065174 GO BPACK ; build the packet
6507 041464 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 150
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0325
6508
6509 ; Print help text
6510
6511 041465 037 01 0 00 113416 DBPACP: FMSGCD <BPACK opcode (CR), where opcode:>
6512 041466 474 11 0 00 000000 SETO OP, ; initialize op code
6513 041467 474 03 0 00 000000 SETO 3, ; print count
6514 041470 350 00 0 00 000011 DBPAC0: AOS OP ; point to next one
6515 041471 303 11 0 00 000377 CAILE OP,377 ; done yet?
6516 JRST [PCRLF
6517 041472 254 00 0 00 111022 RTN]
6518 041473 260 17 0 00 067212 GO DECOPC ; decode op code
6519 041474 254 00 0 00 041470 JRST DBPAC0 ; error - keep looping
6520 041475 332 00 0 00 000002 SKIPE 2 ; incorrect type?
6521 041476 254 00 0 00 041470 JRST DBPAC0 ; yes - keep looping
6522 041477 350 00 0 00 000003 AOS 3 ; increment print count
6523 041500 301 03 0 00 000006 CAIL 3,6 ; more than 6 on this line?
6524 GO [SETZ 3, ; yes - reinit everything
6525 PCRLF
6526 041501 260 17 0 00 113426 RTN]
6527 041502 037 00 0 00 103540 TMSG < >
6528 041503 001 03 0 00 000011 PNTOCC 3,OP ; print op code
6529 XCT [FMSG <-SNDDG > ; print in English
6530 FMSG <-SNDMSG >
6531 FMSG <-REQID >
6532 FMSG <-SNDRST >
6533 FMSG <-SNDSTRT>
6534 FMSG <-REQDAT0>
6535 FMSG <-REQDAT1>
6536 FMSG <-REQDAT2>
6537 FMSG <-SNDLB >
6538 FMSG <-REQMDAT>
6539 FMSG <-SNDDAT >
6540 FMSG <-RETDAT >
6541 FMSG <-SNDMDAT>
6542 FMSG <-CLSBUF >
6543 FMSG <-SETCKT >
6544 FMSG <-SETCNT >
6545 FMSG <-RDCNT >
6546 FMSG <-RDREG >
6547 041504 256 00 0 01 113477 FMSG <-WRREG >](1)
6548 041505 254 00 0 00 041470 JRST DBPAC0 ; loop till done
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 151
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0326
6549
6550 ;#********************************************************************
6551 ;* DIQUEU - Insert a packet on a command queue
6552 ;#********************************************************************
6553
6554 041506 210 01 0 00 113530 DIQUEU: MOVN 1,[FMSGCD <IQUEUE queue (3-0) (CR)>]
6555 041507 260 17 0 00 041434* GO .OARG ; get argument
6556 041510 263 17 0 00 000000 RTN ; error/altmode/question - exit
6557 JRST [FMSGCD <? Missing argument - CmdQueue 3-0>
6558 GO FIOFF
6559 041511 254 00 0 00 113541 RTN]
6560 041512 331 13 0 00 041437* SKIPL Q,ARGUM ; get argument
6561 041513 303 13 0 00 000003 CAILE Q,3 ; in range?
6562 JRST [FMSGCD <? CmdQueue out of range 3-0>
6563 GO FIOFF
6564 041514 254 00 0 00 113553 RTN]
6565
6566 ; Check if a packet exists
6567
6568 041515 336 00 0 00 070052 SKIPN PACKET+3 ; packet has been built?
6569 JRST [FMSGCD <? Packet not built yet>
6570 GO FIOFF
6571 041516 254 00 0 00 113564 RTN]
6572
6573 ; Insert onto the specified command queue
6574
6575 041517 260 17 0 00 065777 GO INSQUE ; insert into queue
6576 JRST [FMSGCD <? No free queue entries available or interlock failed>
6577 GO FIOFF
6578 041520 254 00 0 00 113603 RTN]
6579 041521 263 17 0 00 000000 RTN ; return
6580
6581
6582 ;#********************************************************************
6583 ;* DPPCB - Print PCB
6584 ;#********************************************************************
6585
6586 041522 200 01 0 00 113611 DPPCB: MOVE 1,[FMSGCD (PPCB <CR>)]
6587 041523 260 17 0 00 041426* GO CHKARG ; check for argument
6588 041524 263 17 0 00 000000 RTN ; error - exit
6589 041525 260 17 0 00 067434 GO PPCB ; print PCB data
6590 041526 037 00 0 00 030242 PCRL
6591 041527 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 152
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0327
6592
6593 ;#********************************************************************
6594 ;* DPQUEU - Print specified queue
6595 ;#********************************************************************
6596
6597 041530 200 01 0 00 113615 DPQUEU: MOVE 1,[FMSGCD (PQUEUE n1,n2 <CR>)]
6598 041531 260 17 0 00 041507* GO .OARG ; get argument
6599 041532 263 17 0 00 000000 RTN ; error/altmode/question - exit
6600 JRST [FMSGCD <? Missing argument>
6601 GO FIOFF
6602 041533 254 00 0 00 104450 RTN]
6603 041534 331 01 0 00 041512* SKIPL 1,ARGUM ; get argument, in range
6604 041535 303 01 0 00 000006 CAILE 1,6 ; 0-6?
6605 JRST [FMSGCD <? Queue number out of range 0-6>
6606 GO FIOFF
6607 041536 254 00 0 00 113626 RTN]
6608 041537 202 01 0 00 120762' MOVEM 1,QARG1# ; save queue number
6609 041540 202 01 0 00 120763' MOVEM 1,QARG2# ; save queue number
6610
6611 041541 210 01 0 00 113615 MOVN 1,[FMSGCD (PQUEUE n1,n2 <CR>)]
6612 041542 260 17 0 00 041531* GO .OARG ; get argument
6613 041543 263 17 0 00 000000 RTN ; error/altmode/question - exit
6614 041544 254 00 0 00 041553 JRST DPQUE0
6615 041545 331 01 0 00 041534* SKIPL 1,ARGUM ; get argument, in range
6616 041546 303 01 0 00 000006 CAILE 1,6 ; 0-6?
6617 JRST [FMSGCD <? Queue number out of range 0-6>
6618 GO FIOFF
6619 041547 254 00 0 00 113626 RTN]
6620 041550 202 01 0 00 120763' MOVEM 1,QARG2# ; save queue number
6621 041551 315 01 0 00 120762' CAMGE 1,QARG1 ; see if range ok?
6622 JRST [FMSGCD <? Range nonsensical>
6623 GO FIOFF
6624 041552 254 00 0 00 110071 RTN]
6625
6626 041553 200 13 0 00 120762' DPQUE0: MOVE Q,QARG1 ; get queue number
6627 041554 260 17 0 00 066353 GO PQUEUE ; print this queue
6628 041555 037 00 0 00 030242 PCRL ; final CRLF
6629 041556 350 13 0 00 120762' AOS Q,QARG1 ; point to next queue
6630 041557 317 13 0 00 120763' CAMG Q,QARG2 ; done yet?
6631 041560 254 00 0 00 041553 JRST DPQUE0 ; no - loop till done
6632 041561 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 153
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0328
6633
6634 ;#********************************************************************
6635 ;* DWATCH - Watch port and print events that occur
6636 ;#********************************************************************
6637
6638 041562 402 00 0 00 041545* DWATCH: SETZM ARGUM ; default to echo
6639 041563 350 00 0 00 041562* AOS ARGUM ; ...
6640 041564 210 01 0 00 113641 MOVN 1,[FMSGCD <WATCH arg 0-no echo,1-echo (CR)>]
6641 041565 260 17 0 00 041542* GO .OARG ; get argument
6642 041566 263 17 0 00 000000 RTN ; error/altmode/question - exit
6643 041567 255 00 0 00 000000 JFCL ; no argument typed - continue
6644 041570 261 17 0 00 000002 RPUT (2,3) ; save AC's
6645
6646 041572 260 17 0 00 065052 GO TIDLE ; ensure in idle loop
6647 JRST [SKIPE UDEBUG
6648 JRST .+1
6649 FMSGCD <? Couldn't start port>
6650 RGET (3,2)
6651 041573 254 00 0 00 113650 RTN]
6652 041574 260 17 0 00 042122 GO SETENA ; ensure the port is enabled
6653 JRST [SKIPE UDEBUG
6654 JRST .+1
6655 FMSGCD <? Couldn't enable port>
6656 RGET (3,2)
6657 041575 254 00 0 00 113664 RTN]
6658 041576 402 00 0 00 120720' SETZM CSRSAV# ; original CSR value
6659 041577 402 00 0 00 120750' SETZM NCHAR# ; clear last character typed
6660 041600 402 00 0 00 121014' SETZM WATFLG# ; initialize interval packet flag
6661 041601 402 00 0 00 121015' SETZM WATTIM# ; initialize time to send next packet
6662 041602 402 00 0 00 120753' SETZM NPACKS# ; initialize number of packets sent
6663 041603 402 00 0 00 120752' SETZM NPACKR# ; initialize number of packets received
6664 041604 400 03 0 00 000000 SETZ 3, ; set up to read time
6665 041605 260 17 0 00 032045* GO RUNTME ; get runtime so far
6666 041606 200 00 0 00 031654* MOVE CURTIM ; get current time
6667 041607 270 00 0 00 034020 ADD DSSUM ; point to interval away
6668 041610 202 00 0 00 121003' MOVEM STIME# ; save statistics time
6669 041611 402 00 0 00 000000* SETZM RQAFLG ; clear response queue available flag
6670
6671 ; Start of idle loop
6672
6673 041612 DWATCQ: TMSGCD <[Type: S-SndPk O-SndPks 0-EchoOff 1-EchoOn 2-PntCSR 3-PntPCB 4-PntStats $-E
6674 041612 037 00 0 00 113672 xit]>
6675
6676 041613 037 07 0 00 000003 DWATC0: TTALTM ; altmode typed?
6677 041614 334 00 0 00 000000 SKIPA ; no - keep checking CSR, etc.
6678 041615 254 00 0 00 042050 JRST DWATCX ; yes - exit
6679 041616 332 00 0 00 120713' SKIPE ALTF ; altmode flagged?
6680 041617 254 00 0 00 042050 JRST DWATCX ; yes - exit
6681 041620 336 00 0 00 120750' SKIPN NCHAR ; prior character saved?
6682 041621 202 00 0 00 120750' MOVEM NCHAR ; no - save this one
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 154
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0329
6683
6684 ; Check on summary interval time
6685
6686 041622 400 03 0 00 000000 SETZ 3, ; set up to read time
6687 041623 260 17 0 00 041605* GO RUNTME ; get runtime so far
6688 041624 200 00 0 00 041606* MOVE CURTIM ; get current time
6689 041625 315 00 0 00 121003' CAMGE STIME ; time to print statistics?
6690 041626 254 00 0 00 041650 JRST DWATCG ; no - continue
6691 041627 037 00 0 00 113713 TMSGC <*** Statistics >
6692 041630 332 00 0 00 120727' SKIPE EDEBUG ; expanded data switch set?
6693 GO [TMSG <Port-> ; yes - print what port
6694 LDB [POINT 3,MBCN,9]; this is
6695 PNT2
6696 PSP
6697 041631 260 17 0 00 104640 RTN]
6698 041632 200 03 0 00 103543 MOVE 3,[JFCL] ; set up to print time
6699 041633 260 17 0 00 041623* GO RUNTME ; print elapsed time
6700 041634 037 00 0 00 113717 TMSG < ***>
6701 041635 037 00 0 00 113720 TMSGC < Packets sent: >
6702 041636 200 00 0 00 120753' MOVE NPACKS ; get packets sent
6703 041637 037 15 0 00 000000 PNTDEC ; print it
6704 041640 037 00 0 00 107460 TMSG <.>
6705 041641 037 00 0 00 113724 TMSGC < Packets rcvd: >
6706 041642 200 00 0 00 120752' MOVE NPACKR ; get packets received
6707 041643 037 15 0 00 000000 PNTDEC ; print it
6708 041644 037 00 0 00 104543 TMSGD <.>
6709 041645 200 00 0 00 121003' MOVE STIME ; get statistics time
6710 041646 270 00 0 00 034020 ADD DSSUM ; point to interval away
6711 041647 202 00 0 00 121003' MOVEM STIME ; save statistics time
6712
6713 ; First check on changed CSR data
6714
6715 041650 332 00 0 00 121012' DWATCG: SKIPE UDEBUG ; debug mode?
6716 041651 254 00 0 00 041670 JRST DWATC1 ; yes - ignore this
6717 041652 260 17 0 00 037761* GO RDCSR ; go read CSR
6718 041653 255 00 0 00 000000 JFCL ; error - ignore
6719 041654 621 01 0 00 220100 TLZ 1,(PI00RQ!CSRRQS!IDLE) ; ignore 'PI00Rq','CSR rqst','IDLE'
6720 041655 620 01 0 00 000200 TRZ 1,RESQAV ; and 'ResQAv' bits
6721 041656 316 01 0 00 120720' CAMN 1,CSRSAV ; same as last value?
6722 041657 254 00 0 00 041670 JRST DWATC1 ; yes - continue
6723 041660 336 00 0 00 041563* SKIPN ARGUM ; no - echo on?
6724 041661 254 00 0 00 041670 JRST DWATC1 ; no - continue
6725 041662 202 01 0 00 120720' MOVEM 1,CSRSAV ; yes - save new CSR data
6726 041663 037 00 0 00 113730 TMSGC <***** >
6727 041664 260 17 0 00 000000* GO PTIME ; print time
6728 041665 037 00 0 00 113732 TMSG < ***** CSR Changed>
6729 041666 260 17 0 00 042443 GO CSRPNT ; print CSR data in English
6730 041667 037 00 0 00 030242 PCRL ; end of line
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 155
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0330
6731
6732 ; Then check on response queue entries
6733
6734 041670 260 17 0 00 000000* DWATC1: GO CHKRQV ; check response queue available
6735 041671 260 17 0 00 066134 GO CHKRSP ; check for RspQ entry
6736 JRST [SETZM RQAFLG ; no entry found - continue
6737 MOVE 1,PCB+21 ; get response queue FLINK
6738 GO CONVIR ; convert to virtual
6739 CAIE 1,PCB+21 ; queue really empty?
6740 SETOM RQAFLG ; no - set rsp queue avail flag
6741 041672 254 00 0 00 113736 JRST .+4]
6742 041673 350 00 0 00 120752' AOS NPACKR ; entry found - increment count
6743 041674 332 00 0 00 041660* SKIPE ARGUM ; echo on?
6744 041675 260 17 0 00 042056 GO PNTRSP ; yes - print it
6745
6746 ; Check to see if we should put another packet on the command queue - if the
6747 ; interval time is expired and if this is enabled.
6748
6749 041676 400 03 0 00 000000 SETZ 3, ; initialize to RUNTME
6750 041677 260 17 0 00 041633* GO RUNTME ; get current time
6751 041700 200 00 0 00 000000* MOVE DEBTIM ; get time in milliseconds
6752 041701 315 00 0 00 121015' CAMGE WATTIM ; time to insert a packet?
6753 041702 254 00 0 00 041710 JRST DWATC2 ; no - continue
6754 041703 336 00 0 00 121014' SKIPN WATFLG ; packet insertion enabled?
6755 041704 254 00 0 00 041710 JRST DWATC2 ; no - continue
6756 041705 270 00 0 00 034021 ADD DSINT ; yes - adjust next time
6757 041706 202 00 0 00 121015' MOVEM WATTIM ; by DSINT seconds
6758 041707 254 00 0 00 041743 JRST DWATC3 ; go insert a packet
6759
6760 ; Finally, check to see if a special character was typed - S,O,0,1,2,3,4?
6761
6762 041710 200 00 0 00 031043* DWATC2: MOVE .INWD1 ; get interrupt fielded
6763 041711 620 00 0 00 000200 TRZ RESQAV ; clear response queue available
6764 041712 202 00 0 00 041710* MOVEM .INWD1 ; save interrupt fielded
6765 041713 260 17 0 00 032377* GO .INPNT ; print interrupt fielded (if any)
6766 041714 336 00 0 00 120750' SKIPN NCHAR ; any character pending?
6767 041715 254 00 0 00 041613 JRST DWATC0 ; no - keep looping
6768 041716 200 00 0 00 120750' MOVE NCHAR ; get last character typed
6769 041717 402 00 0 00 120750' SETZM NCHAR ; clear last character typed
6770 041720 302 00 0 00 000123 CAIE 123 ; was it an 'S'?
6771 041721 306 00 0 00 000163 CAIN 163 ; or 's'?
6772 041722 254 00 0 00 041743 JRST DWATC3 ; yes - insert another packet
6773 041723 302 00 0 00 000117 CAIE 117 ; was it a 'O'?
6774 041724 306 00 0 00 000157 CAIN 157 ; or 'o'?
6775 041725 254 00 0 00 042036 JRST DWATC7 ; yes - go complement flag
6776 041726 306 00 0 00 000060 CAIN 60 ; was it a '0'?
6777 041727 402 00 0 00 041674* SETZM ARGUM ; yes - set echo off
6778 041730 306 00 0 00 000061 CAIN 61 ; was it a '1'?
6779 041731 476 00 0 00 041727* SETOM ARGUM ; yes - set echo on
6780 041732 306 00 0 00 000062 CAIN 62 ; was it a '2'?
6781 041733 254 00 0 00 042026 JRST DWATC6 ; yes - print CSR
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 156
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0331
6782 041734 306 00 0 00 000063 CAIN 63 ; was it a '3'?
6783 041735 254 00 0 00 042012 JRST DWATC4 ; yes - print PCB data
6784 041736 306 00 0 00 000064 CAIN 64 ; was it a '4'?
6785 041737 254 00 0 00 042043 JRST DWATC8 ; yes - print statistics
6786 041740 306 00 0 00 000077 CAIN 77 ; was it a '?'?
6787 041741 254 00 0 00 041612 JRST DWATCQ ; yes - print some help
6788 041742 254 00 0 00 041613 JRST DWATC0 ; keep looping
6789
6790 ; An 'S' was typed, insert this same packet on the queue last used.
6791
6792 041743 200 01 0 00 070052 DWATC3: MOVE 1,PACKET+3 ; get status word
6793 041744 135 11 0 00 113744 LDB OP,[POINT 8,1,23] ; get op code
6794 JUMPE OP,[PCRL
6795 TMSGCD <? No prior packet - nothing put on queue>
6796 041745 322 11 0 00 113756 JRST DWATC2]
6797 041746 261 17 0 00 000013 PUT Q ; save queue number
6798 041747 201 13 0 00 000006 MOVEI Q,6 ; get DGM free queue number
6799 041750 260 17 0 00 065617 GO CHKINT ; get list of queue entries
6800 041751 255 00 0 00 000000 JFCL ; ignore error
6801 041752 476 00 0 00 070026 SETOM PCB+26 ; reset the interlock
6802 041753 262 17 0 00 000013 GET Q ; restore queue number
6803 041754 200 00 0 00 065751 MOVE NUMENT ; get entry count
6804 041755 305 00 0 00 000002 CAIGE 2 ; 2 or more?
6805 041756 254 00 0 00 041710 JRST DWATC2 ; no - continue
6806 041757 351 00 0 00 000013 AOSL Q ; point to next queue
6807 041760 303 13 0 00 000003 CAILE Q,3 ; between 0 and 3?
6808 041761 400 13 0 00 000000 SETZ Q, ; no - set to 0
6809 041762 260 17 0 00 065777 GO INSQUE ; insert into queue
6810 JRST [PCRL
6811 TMSGCD <? No free queue entries available or interlock failed>
6812 041763 254 00 0 00 113761 JRST DWATC2]
6813 041764 337 00 0 00 065751 SKIPG NUMENT ; was the queue empty?
6814 GO [GO RDCSR ; yes - set 'CMDQAV'
6815 TMSGCD <? Read CSR failed>
6816 TRO 1,CMDQAV
6817 TRZ 1,RESQAV
6818 GO LDCSR
6819 041765 260 17 0 00 113771 RTN]
6820 041766 350 00 0 00 120753' AOS NPACKS ; increment sent count
6821 041767 336 00 0 00 041731* SKIPN ARGUM ; echo on?
6822 041770 254 00 0 00 041710 JRST DWATC2 ; no - keep looping
6823 041771 037 00 0 00 030242 PCRL
6824 041772 037 00 0 00 113730 TMSGC <***** >
6825 041773 260 17 0 00 041664* GO PTIME ; print time
6826 041774 037 00 0 00 113777 TMSG <** Packet (>
6827 041775 260 17 0 00 067055 GO OPCPNT ; print op code
6828 041776 037 00 0 00 114002 TMSG <) Inserted on CmdQ>
6829 041777 200 00 0 00 000013 MOVE Q
6830 042000 037 16 0 00 000003 PNTOCS ; print queue number
6831 042001 037 00 0 00 114006 TMSGD < **>
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 157
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0332
6832
6833 ; Check if debug mode is set - if so insert entries on the response queue also
6834
6835 042002 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
6836 042003 254 00 0 00 041710 JRST DWATC2 ; no - keep looping
6837 042004 261 17 0 00 000013 PUT Q ; save queue number
6838 042005 201 13 0 00 000004 MOVEI Q,4 ; get number of response queue
6839 042006 260 17 0 00 065777 GO INSQUE ; insert into queue
6840 042007 255 00 0 00 000000 JFCL ; error - ignore
6841 042010 262 17 0 00 000013 GET Q ; restore queue number
6842 042011 254 00 0 00 041710 JRST DWATC2 ; keep looping
6843
6844 ; An '2' was typed, print PCB data
6845
6846 042012 260 17 0 00 042015 DWATC4: GO DWATC5 ; go print it
6847 042013 037 00 0 00 030242 PCRL ; end of line
6848 042014 254 00 0 00 041613 JRST DWATC0 ; keep looping
6849
6850 042015 261 17 0 00 000000 DWATC5: RPUT (0,1,2,3,4) ; save AC's
6851
6852 042022 037 00 0 00 113730 TMSGC <***** >
6853 042023 260 17 0 00 041773* GO PTIME ; print time
6854 042024 037 00 0 00 114010 TMSG < ***** PCB>
6855 042025 254 00 0 00 067504 PJRST PPCBD ; print the PCB data
6856
6857 ; An '1' was typed, print CSR register
6858
6859 042026 260 17 0 00 041652* DWATC6: GO RDCSR ; read CSR register
6860 042027 037 00 0 00 113764 TMSGCD <? Read CSR failed> ; error - print message
6861 042030 037 00 0 00 113730 TMSGC <***** >
6862 042031 260 17 0 00 042023* GO PTIME ; print time
6863 042032 037 00 0 00 114013 TMSG < ***** CSR>
6864 042033 260 17 0 00 042443 GO CSRPNT ; print CSR data in English
6865 042034 037 00 0 00 030242 PCRL ; end of line
6866 042035 254 00 0 00 041613 JRST DWATC0 ; keep looping
6867
6868 ; An 'O' was typed, complement interval flag
6869
6870 042036 462 00 0 00 121014' DWATC7: SETCMM WATFLG ; complement interval flag
6871 042037 332 00 0 00 121014' SKIPE WATFLG ; set?
6872 JRST [TMSGC <*** Will send packets at a >
6873 MOVE DSINT ; get interval time
6874 PNTDEC ; print it out
6875 TMSGD <. millisecond interval ***>
6876 042040 254 00 0 00 114032 JRST DWATC0]
6877 042041 037 00 0 00 114037 TMSGCD <*** Will not send packets ***>
6878 042042 254 00 0 00 041613 JRST DWATC0 ; keep looping
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 158
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0333
6879
6880 ; An '3' was typed, print statistics
6881
6882 042043 400 03 0 00 000000 DWATC8: SETZ 3, ; set up to read time
6883 042044 260 17 0 00 041677* GO RUNTME ; get runtime so far
6884 042045 200 00 0 00 041624* MOVE CURTIM ; get current time
6885 042046 202 00 0 00 121003' MOVEM STIME ; set time to print statistics
6886 042047 254 00 0 00 041613 JRST DWATC0 ; continue
6887
6888 ; Exit
6889
6890 042050 260 17 0 00 042162 DWATCX: GO SETDSA ; disable the port
6891 042051 260 17 0 00 041273* GO ISTOP ; stop the port
6892 042052 037 00 0 00 030242 PCRL
6893 042053 262 17 0 00 000003 RGET (3,2) ; restore AC's
6894
6895 042055 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 159
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0334
6896
6897 ;#********************************************************************
6898 ;* PNTRSP - Print a response queue entry
6899 ;
6900 ; Given: RSPONS - Packet from the Response Queue
6901 ;#********************************************************************
6902
6903 ; First, check to see if we can print it or if it is being ignored
6904
6905 042056 261 17 0 00 000000 PNTRSP: RPUT (0,1,2,Q) ; save AC's
6906
6907 042062 135 11 0 00 114046 LDB OP,[POINT 8,RSPONS+3,23]; get op code
6908 042063 336 00 0 00 034017 SKIPN IGNFLG ; ignore SNDDG packets?
6909 042064 254 00 0 00 042072 JRST PNTRS0 ; no - continue and print it
6910 042065 135 02 0 00 114047 LDB 2,[POINT 8,RSPONS+3,31] ; get port number
6911 042066 306 11 0 00 000041 CAIN OP,SNDDG+40 ; SNDDG packet?
6912 042067 316 02 0 00 034013 CAMN 2,CPORT ; from us?
6913 042070 334 00 0 00 000000 SKIPA ; yes - continue
6914 042071 254 00 0 00 042110 JRST PNTRSX ; yes - exit without printing
6915
6916 ; Print out the packet
6917
6918 042072 037 00 0 00 113730 PNTRS0: TMSGC <***** >
6919 042073 260 17 0 00 042031* GO PTIME ; print time
6920 042074 037 00 0 00 114050 TMSG < ***** RspQ Entry Received (>
6921 042075 260 17 0 00 067055 GO OPCPNT ; print op code
6922 042076 037 00 0 00 114056 TMSG <)>
6923 042077 201 12 0 00 070447 MOVEI PK,RSPONS ; get address of packet
6924 042100 201 13 0 00 000004 MOVEI Q,4 ; indicate response queue
6925 042101 261 17 0 00 114057 RPUT ([PNTRS1],0,1) ; save return address and AC's
6926
6927 042104 402 00 0 00 120716' SETZM CMDPAK ; clear command packet flag
6928 042105 476 00 0 00 120772' SETOM RSPPAK ; set response packet flag
6929 042106 254 00 0 00 066443 JRST PPAKCC ; go print it out
6930 042107 037 00 0 00 030242 PNTRS1: PCRL
6931
6932 ; Exit
6933
6934 042110 262 17 0 00 000013 PNTRSX: RGET (Q,2,1,0) ; restore AC's
6935
6936 042114 263 17 0 00 000000 RTN ; return
6937
6938
6939 ;#********************************************************************
6940 ;* DCONF - Determine and print CI configuration
6941 ;#********************************************************************
6942
6943 042115 200 01 0 00 104076 DCONF: MOVE 1,[FMSGCD (CONFIG <CR>)]
6944 042116 260 17 0 00 041523* GO CHKARG ; check for argument
6945 042117 260 17 0 00 042731 GO CONFIG ; do it
6946 042120 260 17 0 00 043041 GO CONPNT ; print results
6947 042121 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 160
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0335
6948
6949 ;#********************************************************************
6950 ;* SETENA - Ensure the port is in the enabled state
6951 ;
6952 ; Return: +1 - Failed
6953 ; +2 - Succeeded
6954 ;#********************************************************************
6955
6956 042122 261 17 0 00 000000 SETENA: RPUT (0,1,2) ; save AC's
6957
6958
6959 ; First set DISABLE bit and wait for DISABLE COMPLETE
6960
6961 042125 201 01 0 00 000050 MOVEI 1,PDSABL!MPRUN ; get DISABLE bit
6962 042126 336 00 0 00 030037 SKIPN USER ; user mode?
6963 042127 660 01 0 00 000004 TRO 1,4 ; no - set PIA bits
6964 042130 260 17 0 00 041137* GO LDCSR ; write to CSR
6965 042131 201 02 0 00 000144 MOVEI 2,^D100 ; check up to 100 times
6966 042132 260 17 0 00 042026* SETEN0: GO RDCSR ; read CSR
6967 042133 254 00 0 00 042156 JRST SETENE ; error - exit
6968 042134 603 01 0 00 000040 TLNE 1,(DCOMP) ; DISABLE COMPLETE set?
6969 042135 254 00 0 00 042141 JRST SETEN1 ; yes - continue
6970 042136 005 00 0 00 000005 DELAY 5 ; wait 5 milliseconds
6971 042137 367 02 0 00 042132 SOJG 2,SETEN0 ; no - loop till done
6972 042140 254 00 0 00 042156 JRST SETENE ; no - error - exit
6973
6974 ; Now set ENABLE bit and wait for ENABLE COMPLETE
6975
6976 042141 201 01 0 00 000030 SETEN1: MOVEI 1,PENABL!MPRUN ; get ENABLE bit
6977 042142 336 00 0 00 030037 SKIPN USER ; user mode?
6978 042143 660 01 0 00 000004 TRO 1,4 ; no - set PIA bits
6979 042144 260 17 0 00 042130* GO LDCSR ; write to CSR
6980 042145 201 02 0 00 000144 MOVEI 2,^D100 ; check up to 100 times
6981 042146 260 17 0 00 042132* SETEN2: GO RDCSR ; read CSR
6982 042147 254 00 0 00 042156 JRST SETENE ; error - exit
6983 042150 603 01 0 00 000020 TLNE 1,(ECOMP) ; ENABLE COMPLETE set?
6984 042151 254 00 0 00 042155 JRST SETEN3 ; yes - continue
6985 042152 005 00 0 00 000005 DELAY 5 ; wait 5 milliseconds
6986 042153 367 02 0 00 042146 SOJG 2,SETEN2 ; no - loop till done
6987 042154 334 00 0 00 000000 SKIPA ; failed - exit
6988
6989 ; Exit
6990
6991 042155 350 00 0 17 777775 SETEN3: AOS -3(P) ; set up proper return
6992 042156 262 17 0 00 000002 SETENE: RGET (2,1,0) ; restore AC's
6993
6994 042161 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 161
DFCIA1 MAC 27-Oct-84 19:00 Port Debugger SEQ 0336
6995
6996 ;#********************************************************************
6997 ;* SETDSA - Disable the port
6998 ;#********************************************************************
6999
7000 042162 261 17 0 00 000001 SETDSA: RPUT (1,2) ; save AC's
7001
7002 042164 260 17 0 00 042146* GO RDCSR ; read CSR
7003 042165 400 01 0 00 000000 SETZ 1, ; error
7004 042166 606 01 0 00 000010 TRNN 1,MPRUN ; port actually running?
7005 042167 254 00 0 00 042203 JRST SETDSX ; no - exit
7006 042170 201 01 0 00 000050 MOVEI 1,PDSABL!MPRUN ; get DISABLE bit
7007 042171 336 00 0 00 030037 SKIPN USER ; user mode?
7008 042172 660 01 0 00 000004 TRO 1,4 ; no - set PIA bits
7009 042173 260 17 0 00 042144* GO LDCSR ; write to CSR
7010 042174 201 02 0 00 000144 MOVEI 2,^D100 ; check up to 100 times
7011 042175 260 17 0 00 042164* SETDS0: GO RDCSR ; read CSR
7012 042176 254 00 0 00 042203 JRST SETDSX ; error - exit
7013 042177 603 01 0 00 000040 TLNE 1,(DCOMP) ; DISABLE COMPLETE set?
7014 042200 254 00 0 00 042203 JRST SETDSX ; yes - exit
7015 042201 005 00 0 00 000005 DELAY 5 ; wait 5 milliseconds
7016 042202 367 02 0 00 042175 SOJG 2,SETDS0 ; no - loop till done
7017 042203 262 17 0 00 000002 SETDSX: RGET (2,1) ; restore AC's
7018
7019 042205 263 17 0 00 000000 RTN ; return
7020
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 162
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0337
7021 SUBTTL Program Utility Routines
7022
7023 ;#*********************************************************************
7024 ;* TRACE - Program Trace Routine
7025 ;
7026 ; This routine traces test execution if the TRACE switch is set. This
7027 ; routine sets up TSTSUB, ERFLG, ERRPC for error reporting during the
7028 ; test, and ERRNUM for interrupt handling.
7029 ;#********************************************************************
7030
7031 042206 261 17 0 00 000000 TRACE: RPUT (0,1) ; save AC's
7032
7033 042210 202 00 0 00 103305 MOVEM TSTOFF ; save relocatable offset
7034 042211 200 01 0 00 103275 MOVE 1,TSTNUM ; get test number
7035 042212 200 01 0 01 032050 MOVE 1,TSTTAB(1) ; get test flags
7036 042213 260 17 0 00 032357* GO SWITT ; get switches
7037 042214 606 00 0 00 400000 TRNN TRACET ; want to trace?
7038 042215 254 00 0 00 042224 JRST TREX ; no
7039 042216 037 00 0 00 114060 TMSG <* Test >
7040 042217 200 00 0 00 103275 MOVE TSTNUM ; get test number
7041 042220 037 16 0 00 000003 PNTOCS ; print it
7042 042221 603 01 0 00 000100 TLNE 1,(TDENA) ; disabled?
7043 042222 037 00 0 00 114062 TMSG < (Disabled)> ; yes - print such
7044 042223 037 00 0 00 030242 PCRL
7045 042224 402 00 0 00 000015 TREX: SETZM ERFLG ; clear the error detected flag
7046 042225 402 00 0 00 030052 SETZM ERRPC ; clear the error PC
7047 042226 402 00 0 00 103276 SETZM TSTSUB ; clear subtest number
7048 042227 402 00 0 00 000000* SETZM SCOOFF ; clear error offset
7049 042230 476 00 0 00 041360* SETOM INTNUM ; initialize interrupt number
7050 042231 402 00 0 00 040503* SETZM SNEXT ; initialize next address
7051 042232 402 00 0 00 040473* SETZM SDATA ; initialize CSR data
7052 042233 603 01 0 00 000100 TLNE 1,(TDENA) ; test disabled?
7053 042234 254 00 0 00 042240 JRST TREXX ; yes - exit test
7054 042235 262 17 0 00 000001 RGET (1,0) ; no - restore AC's
7055
7056 042237 263 17 0 00 000000 RTN ; exit normally
7057
7058 042240 262 17 0 00 000001 TREXX: RGET (1,0,XXX) ; restore AC's
7059
7060 042243 263 17 0 00 000000 RTN ; exit test
7061
7062
7063 ;#********************************************************************
7064 ;* TSTEND - Do end of test processing
7065 ;#********************************************************************
7066
7067 042244 200 01 0 00 103275 TSTEND: MOVE 1,TSTNUM ; get test number
7068 042245 202 15 0 01 032261 MOVEM ERFLG,TSTRES(1) ; save results
7069 042246 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 163
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0338
7070
7071 ;#********************************************************************
7072 ;* TSTPNT - Print test name/number
7073 ;#********************************************************************
7074
7075 042247 261 17 0 00 000000 TSTPNT: RPUT (0,1) ; save AC's
7076
7077 042251 037 00 0 00 104473 TMSG <TST>
7078 042252 200 00 0 00 103275 MOVE TSTNUM ; get test number
7079 042253 037 16 0 00 000003 PNTOCS ; print it
7080 042254 200 00 0 00 103276 MOVE TSTSUB ; get subtest number
7081 042255 322 00 0 00 042260 JUMPE TSTPN0 ; zero? yes - continue
7082 042256 037 00 0 00 103613 TMSG <-> ; no - print it
7083 042257 037 16 0 00 000003 PNTOCS
7084 042260 260 17 0 00 042213* TSTPN0: GO SWITT ; get switches
7085 042261 603 00 0 00 000200 TLNE TXTINH ; text inhibit set?
7086 042262 254 00 0 00 042266 JRST TSTPNX ; yes - exit
7087 042263 037 00 0 00 107415 TMSG < - >
7088 042264 200 01 0 00 103275 MOVE 1,TSTNUM ; get test number
7089 042265 256 00 0 01 032203 XCT TSTNAM(1) ; print test description
7090 042266 262 17 0 00 000001 TSTPNX: RGET (1,0) ; restore AC's
7091
7092 042270 263 17 0 00 000000 RTN
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 164
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0339
7093
7094 ;#********************************************************************
7095 ;* PNTCRM - Print CRAM word
7096 ;
7097 ; Arguments: AC2 - Left 30 bits
7098 ; AC3 - Right 30 bits
7099 ;#********************************************************************
7100
7101 042271 261 17 0 00 000000 PNTCRM: RPUT (0,1) ; save AC's
7102
7103 042273 135 00 0 00 114065 LDB [POINT 12,2,17] ; get MWJMPFLD
7104 042274 001 04 0 00 000000 PNTOCC 4,0 ; print it
7105 042275 037 00 0 00 112413 TMSG < >
7106 042276 135 00 0 00 114066 LDB [POINT 1,2,18] ; get MWPAR
7107 042277 037 01 0 00 000000 PNT1 ; print it
7108 042300 037 00 0 00 112413 TMSG < >
7109 042301 135 00 0 00 114067 LDB [POINT 1,2,19] ; get MWOUTPUTENA
7110 042302 037 01 0 00 000000 PNT1 ; print it
7111 042303 135 00 0 00 114070 LDB [POINT 10,2,29] ; get MWMGCFLD
7112 042304 001 04 0 00 000000 PNTOCC 4,0 ; print it
7113 042305 037 00 0 00 112413 TMSG < >
7114 042306 135 00 0 00 114071 LDB [POINT 3,2,32] ; get MWSORCEFLD
7115 042307 037 01 0 00 000000 PNT1 ; print it
7116 042310 037 00 0 00 112413 TMSG < >
7117 042311 135 00 0 00 114072 LDB [POINT 3,2,35] ; get MWFUNCTFLD
7118 042312 037 01 0 00 000000 PNT1 ; print it
7119 042313 037 00 0 00 112413 TMSG < >
7120 042314 135 00 0 00 114073 LDB [POINT 3,3,8] ; get MWDESTFLD
7121 042315 037 01 0 00 000000 PNT1 ; print it
7122 042316 037 00 0 00 112413 TMSG < >
7123 042317 135 00 0 00 114074 LDB [POINT 1,3,9] ; get MWCCENA
7124 042320 037 01 0 00 000000 PNT1 ; print it
7125 042321 037 00 0 00 000040 PSP
7126 042322 135 00 0 00 114075 LDB [POINT 1,3,10] ; get MWRAMODE
7127 042323 037 01 0 00 000000 PNT1 ; print it
7128 042324 037 00 0 00 000040 PSP
7129 042325 135 00 0 00 114076 LDB [POINT 4,3,14] ; get MWPORTAFLD
7130 042326 001 02 0 00 000000 PNTOCC 2,0 ; print it
7131 042327 037 00 0 00 000040 PSP
7132 042330 135 00 0 00 114077 LDB [POINT 4,3,18] ; get MWPORTBFLD
7133 042331 001 02 0 00 000000 PNTOCC 2,0 ; print it
7134 042332 037 00 0 00 000040 PSP
7135 042333 135 00 0 00 114100 LDB [POINT 5,3,23] ; get MWSKIPFLD
7136 042334 001 02 0 00 000000 PNTOCC 2,0 ; print it
7137 042335 037 00 0 00 112413 TMSG < >
7138 042336 135 00 0 00 114101 LDB [POINT 3,3,26] ; get MWBUSCTLFLD
7139 042337 037 01 0 00 000000 PNT1 ; print it
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 165
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0340
7140 042340 037 00 0 00 112413 TMSG < >
7141 042341 135 00 0 00 114102 LDB [POINT 1,3,27] ; get MWCARRY
7142 042342 037 01 0 00 000000 PNT1 ; print it
7143 042343 037 00 0 00 000040 PSP
7144 042344 135 01 0 00 114103 LDB 1,[POINT 4,3,31] ; get MWCTRLFLD
7145 XCT [TMSG <JZ > ; print in English
7146 TMSG <CJS >
7147 TMSG <JMAP>
7148 TMSG <CJP >
7149 TMSG <PUSH>
7150 TMSG <JSRP>
7151 TMSG <CJV >
7152 TMSG <JRP >
7153 TMSG <RFCT>
7154 TMSG <RPCT>
7155 TMSG <CRTN>
7156 TMSG <CJPP>
7157 TMSG <LDCT>
7158 TMSG <LOOP>
7159 TMSG <CONT>
7160 042345 256 00 0 01 114124 TMSG <TWB >](1)
7161 042346 037 00 0 00 112413 TMSG < >
7162 042347 135 00 0 00 114144 LDB [POINT 1,3,32] ; get MWTIMEFLD
7163 042350 037 01 0 00 000000 PNT1 ; print it
7164 042351 037 00 0 00 000040 PSP
7165 042352 135 00 0 00 114145 LDB [POINT 2,3,34] ; get MWSPARE00-01
7166 042353 037 01 0 00 000000 PNT1 ; print it
7167 042354 037 00 0 00 000040 PSP
7168 042355 135 00 0 00 114146 LDB [POINT 1,3,35] ; get MWMARKBIT
7169 042356 037 01 0 00 000000 PNT1 ; print it
7170 042357 037 07 0 00 000003 TTALTM ; altmode typed?
7171 042360 334 00 0 00 000000 SKIPA ; no - continue
7172 GO [SETOM ALTF ; yes - set 'altmode typed' flag
7173 SETZM MULFLG ; and clear 'examine next' flag
7174 042361 260 17 0 00 114147 RTN]
7175 042362 262 17 0 00 000001 RGET (1,0) ; restore AC's
7176
7177 042364 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 166
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0341
7178
7179 ;#********************************************************************
7180 ;* PNTWD - Print a CRAM word (xxxx xxxx xxxx xxxx xxxx)
7181 ;
7182 ; Argument: AC2 - Left half
7183 ; AC3 - Right half
7184 ;#********************************************************************
7185
7186 042365 261 17 0 00 000000 PNTWD: RPUT (0,1) ; save AC's
7187
7188 042367 135 00 0 00 114065 LDB [POINT 12,2,17] ; get 1st 4 digits
7189 042370 037 04 0 00 000000 PNT4 ; print them
7190 042371 135 00 0 00 114152 LDB [POINT 12,2,29] ; get 2nd 4 digits
7191 042372 037 04 0 00 000000 PNT4 ; print them
7192 042373 135 01 0 00 114153 LDB 1,[POINT 6,2,35] ; get next 6 bits
7193 042374 135 00 0 00 114154 LDB [POINT 6,3,11] ; get next 6 bits
7194 042375 242 01 0 00 000006 LSH 1,6 ; position correctly
7195 042376 434 00 0 00 000001 IOR 1 ; build 12 bits (3rd 4 digits)
7196 042377 037 04 0 00 000000 PNT4 ; print them
7197 042400 135 00 0 00 114155 LDB [POINT 12,3,23] ; get 1st 4 digits
7198 042401 037 04 0 00 000000 PNT4 ; print them
7199 042402 135 00 0 00 114156 LDB [POINT 12,3,35] ; get last 4 digits
7200 042403 037 04 0 00 000000 PNT4 ; print them
7201 042404 262 17 0 00 000001 RGET (1,0) ; restore AC's
7202
7203 042406 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 167
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0342
7204
7205 ;#********************************************************************
7206 ;* CALPAR - Calculate parity for a CRAM location
7207 ;
7208 ; Arguments: AC1 - Contains 2nd word of microword as put together
7209 ; by the microword macro MWORD. This is only used
7210 ; to look at bit 35 which is a flag specifying bad
7211 ; parity.
7212 ; AC2 - Bits 0-29 (Right justified)
7213 ; AC3 - Bits 30-59 (Right justified)
7214 ;
7215 ; Function: Calculate good parity and insert into Bit 12 of the
7216 ; microword which is Bit 18 in AC2. Then if 'force bad
7217 ; parity' flag is set, complement this bit.
7218 ;
7219 ; Return: +1 always. AC's are unmodified, except bit 18 of AC2.
7220 ;#********************************************************************
7221
7222 042407 261 17 0 00 000004 CALPAR: RPUT (4,5,6,7) ; save AC's
7223
7224 042413 402 00 0 00 120715' SETZM CALMAR# ; clear MARK bit location
7225 042414 602 03 0 00 000001 TRNE 3,1 ; MARK bit set?
7226 042415 476 00 0 00 120715' SETOM CALMAR ; yes - note the fact
7227 042416 620 03 0 00 000001 TRZ 3,1 ; ensure MARK bit is zero
7228 042417 400 04 0 00 000000 SETZ 4, ; clear count of number of 1's
7229 042420 200 05 0 00 000002 MOVE 5,2 ; get left half
7230 042421 210 06 0 00 000005 MOVN 6,5 ; calculate number of 1's
7231 042422 632 05 0 00 000006 TDZE 5,6 ; ...
7232 042423 344 04 0 00 042421 AOJA 4,.-2 ; ...
7233 042424 200 05 0 00 000003 MOVE 5,3 ; get right half
7234 042425 210 06 0 00 000005 MOVN 6,5 ; calculate number of 1's
7235 042426 632 05 0 00 000006 TDZE 5,6 ; ...
7236 042427 344 04 0 00 042425 AOJA 4,.-2 ; ...
7237
7238 ; Now, the parity is even if bit 35 of AC4 is zero, and odd if bit 35 set
7239
7240 042430 606 04 0 00 000001 TRNN 4,1 ; bit 35 set?
7241 042431 431 02 0 00 400000 XORI 2,400000 ; no - complement bit 18
7242
7243 ; Also, handle force parity flag
7244
7245 042432 602 01 0 00 000001 TRNE 1,1 ; 'force bad parity' flag set?
7246 042433 431 02 0 00 400000 XORI 2,400000 ; yes - complement bit 18
7247
7248 ; Done - exit
7249
7250 042434 332 00 0 00 120715' SKIPE CALMAR ; MARK bit set initially?
7251 042435 660 03 0 00 000001 TRO 3,1 ; yes - set it now
7252 042436 262 17 0 00 000007 RGET (7,6,5,4) ; restore AC's
7253
7254 042442 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 168
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0343
7255
7256 ;#********************************************************************
7257 ;* CSRPNT - Print CSR register as 'CSR: xxxxxx,,xxxxxx' followed by
7258 ;* English translation.
7259 ;#********************************************************************
7260
7261 042443 261 17 0 00 000000 CSRPNT: RPUT (0,1,2,3) ; save AC's
7262
7263 042447 037 00 0 00 114157 TMSGC <CSR: > ; print out the data
7264 042450 200 00 0 00 000001 MOVE 1
7265 042451 037 13 0 00 000000 PNTHW
7266 042452 260 17 0 00 042260* GO SWITT ; get switches
7267 042453 603 00 0 00 000200 TLNE TXTINH ; TXTINH set?
7268 042454 254 00 0 00 042460 JRST CSRPNX ; yes - exit
7269 042455 201 02 0 00 000023 MOVEI 2,^D19 ; character count so far
7270 042456 201 03 0 00 000023 MOVEI 3,^D19 ; continuation line column number
7271 042457 260 17 0 00 042465 GO CSRENG ; go print in English
7272 042460 262 17 0 00 000003 CSRPNX: RGET (3,2,1,0) ; restore AC's
7273
7274 042464 263 17 0 00 000000 RTN ; return
7275
7276
7277 ;#********************************************************************
7278 ;* CSRENG - Print CSR data in English
7279 ;
7280 ; AC1 - Contains data to print
7281 ; AC2 - Contains character count on line so far
7282 ; AC3 - Contains column to start continuation lines
7283 ;#********************************************************************
7284
7285 042465 261 17 0 00 000000 CSRENG: RPUT (0,1,4,5,6) ; save AC's
7286
7287 042472 202 01 0 00 120717' MOVEM 1,CSRENS# ; save CSR data
7288 042473 200 04 0 00 000001 MOVE 4,1 ; get data into AC1
7289 042474 400 05 0 00 000000 SETZ 5, ; clear bit index
7290 042475 404 04 0 00 114161 AND 4,[777770,,777770] ; clear port ID and PI bits
7291 042476 434 04 0 00 114162 IOR 4,[000004,,000004] ; set bits so both are printed
7292 042477 322 04 0 00 042516 CSREN0: JUMPE 4,CSRENX ; zero? yes - exit
7293 042500 607 04 0 00 400000 TLNN 4,400000 ; no - bit set?
7294 042501 254 00 0 00 042514 JRST CSREN2 ; no - continue
7295 042502 271 02 0 00 000007 ADDI 2,7 ; increment character count
7296 042503 305 02 0 00 000110 CAIGE 2,^D72 ; over 72 characters?
7297 042504 254 00 0 00 042513 JRST CSREN1 ; no - go print
7298 042505 037 00 0 00 030242 PCRL ; yes - print CRLF, then
7299 042506 200 01 0 00 000003 MOVE 1,3 ; print spaces to start
7300 042507 037 00 0 00 103540 TMSG < > ; in proper column, and
7301 042510 367 01 0 00 042507 SOJG 1,.-1 ; adjust character count
7302 042511 200 02 0 00 000003 MOVE 2,3 ; properly
7303 042512 271 02 0 00 000007 ADDI 2,7 ; increment character count
7304 042513 256 00 0 05 042524 CSREN1: XCT CSRENB(5) ; yes - print it
7305 042514 242 04 0 00 000001 CSREN2: LSH 4,1 ; left shift one bit
7306 042515 345 05 0 00 042477 AOJGE 5,CSREN0 ; increment and keep looping
7307 042516 262 17 0 00 000006 CSRENX: RGET (6,5,4,1,0) ; restore AC's
7308
7309 042523 263 17 0 00 000000 RTN
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 169
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0344
7310
7311 ;#********************************************************************
7312 ;* CSRENB - CSR bits
7313 ;#********************************************************************
7314
7315 042524 037 00 0 00 114163 CSRENB: TMSG <PortP > ; 00
7316 042525 037 00 0 00 114165 TMSG <CsrRqs > ; 01
7317 042526 037 00 0 00 114167 TMSG <CsrChn > ; 02
7318 042527 037 00 0 00 114171 TMSG <Dinit > ; 03
7319 042530 037 00 0 00 114173 TMSG <PI00Rq > ; 04
7320 042531 037 00 0 00 114175 TMSG <RqInt > ; 05
7321 042532 037 00 0 00 114177 TMSG <CramPE > ; 06
7322 042533 037 00 0 00 114201 TMSG <MBErr > ; 07
7323 042534 037 00 0 00 114203 TMSG <Unused > ; 08
7324 042535 037 00 0 00 114203 TMSG <Unused > ; 09
7325 042536 037 00 0 00 114203 TMSG <Unused > ; 10
7326 042537 037 00 0 00 114205 TMSG <Idle > ; 11
7327 042540 037 00 0 00 114207 TMSG <Dcomp > ; 12
7328 042541 037 00 0 00 114211 TMSG <Ecomp > ; 13
7329 042542 037 00 0 00 114203 TMSG <Unused > ; 14
7330 GO [TMSG <ID=> ; 15
7331 LDB [POINT 3,CSRENS,17]
7332 PNT1
7333 042543 260 17 0 00 114215 RTN]
7334 042544 255 00 0 00 000000 JFCL ; 16
7335 042545 255 00 0 00 000000 JFCL ; 17
7336 042546 037 00 0 00 114221 TMSG <PClr > ; 18
7337 042547 037 00 0 00 114223 TMSG <TEbuf > ; 19
7338 042550 037 00 0 00 114225 TMSG <GenEPE > ; 20
7339 042551 037 00 0 00 114227 TMSG <SelLAR > ; 21
7340 042552 037 00 0 00 114231 TMSG <SinCyc > ; 22
7341 042553 037 00 0 00 114233 TMSG <Spare1 > ; 23
7342 042554 037 00 0 00 114235 TMSG <EbusPE > ; 24
7343 042555 037 00 0 00 114237 TMSG <FQErr > ; 25
7344 042556 037 00 0 00 114241 TMSG <MVErr > ; 26
7345 042557 037 00 0 00 114243 TMSG <CmdQAV > ; 27
7346 042560 037 00 0 00 114245 TMSG <ResQAV > ; 28
7347 042561 037 00 0 00 114247 TMSG <Spare2 > ; 29
7348 042562 037 00 0 00 114251 TMSG <Disabl > ; 30
7349 042563 037 00 0 00 114253 TMSG <Enable > ; 31
7350 042564 037 00 0 00 114255 TMSG <MPRun > ; 32
7351 GO [LDB [POINT 3,CSRENS,35]
7352 SKIPN
7353 RTN
7354 TMSG <Pia=> ; 33-35
7355 PNT1
7356 042565 260 17 0 00 114261 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 170
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0345
7357
7358 ;#********************************************************************
7359 ;* SAVCRM - Save specified CRAM locations in a buffer
7360 ;#********************************************************************
7361
7362 042566 261 17 0 00 000000 SAVCRM: RPUT (0,1,2,3) ; save AC's
7363
7364 042572 260 17 0 00 042051* GO ISTOP ; stop the port
7365 042573 201 02 0 00 042635 MOVEI 2,SAVCRL ; get address of storage area
7366 042574 200 03 0 00 000001 MOVE 3,1 ; get AOBJN word
7367 042575 552 03 0 00 035713 SAVCR0: HRRZM 3,CADDR ; set up CRAM address
7368 042576 260 17 0 00 036372 GO DRCRAM ; read CRAM location
7369 042577 120 00 0 00 035714 DMOVE CWORDL ; get location
7370 042600 124 00 0 02 000000 DMOVEM (2) ; save it
7371 042601 271 02 0 00 000002 ADDI 2,2 ; point to next location
7372 042602 253 03 0 00 042575 AOBJN 3,SAVCR0 ; loop till done
7373 042603 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
7374
7375 042607 263 17 0 00 000000 RTN ; return
7376
7377
7378 ;#********************************************************************
7379 ;* RESCRM - Restore CRAM locations
7380 ;#********************************************************************
7381
7382 042610 261 17 0 00 000000 RESCRM: RPUT (0,1,2,3) ; save AC's
7383
7384 042614 260 17 0 00 042572* GO ISTOP ; stop the port
7385 042615 261 17 0 00 034000 PUT PARFLG ; save parity flag
7386 042616 402 00 0 00 034000 SETZM PARFLG ; don't calculate parity
7387 042617 201 02 0 00 042635 MOVEI 2,SAVCRL ; get address of storage area
7388 042620 200 03 0 00 000001 MOVE 3,1 ; get AOBJN word
7389 042621 552 03 0 00 035713 RESCR0: HRRZM 3,CADDR ; set up CRAM address
7390 042622 120 00 0 02 000000 DMOVE (2) ; save it
7391 042623 124 00 0 00 035714 DMOVEM CWORDL ; get location
7392 042624 260 17 0 00 036340 GO DWCRAM ; read CRAM location
7393 042625 271 02 0 00 000002 ADDI 2,2 ; point to next location
7394 042626 253 03 0 00 042621 AOBJN 3,RESCR0 ; loop till done
7395 042627 262 17 0 00 034000 GET PARFLG ; restore parity flag
7396 042630 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
7397
7398 042634 263 17 0 00 000000 RTN ; return
7399
7400 ; CRAM storage area
7401
7402 042635 SAVCRL: BLOCK ^D60
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 171
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0346
7403
7404 ;#********************************************************************
7405 ;* CONFIG - Determine/print configuration
7406 ;
7407 ; CTABLE entry: Bit 0 - Dual path (0-no,1-yes)
7408 ; 1 - Maintenance mode (0-no,1-yes)
7409 ; 2-3 - Port state (0-Unitialized
7410 ; 1-Disabled
7411 ; 2-Enabled)
7412 ; 4-11 - Port type (2-CI780 5-Jupiter
7413 ; 3-CI750 6-KL10
7414 ; 4-HSC50)
7415 ; 18-35 - Address of text giving port type
7416 ;#********************************************************************
7417
7418 042731 261 17 0 00 000000 CONFIG: RPUT (0,1,2,3) ; save AC's
7419
7420 042735 260 17 0 00 065076 GO RDNODE ; read node address
7421 JRST [TMSGCD <? Could not read our node address>
7422 GO FIOFF
7423 042736 254 00 0 00 114267 JRST CONFIX]
7424 042737 202 01 0 00 034013 MOVEM 1,CPORT ; save our port number
7425
7426 ; Initialize configuration data
7427
7428 042740 402 00 0 00 043076 SETZM CVALID ; initialize config table valid flag
7429 042741 402 00 0 00 043077 SETZM CTABLE ; clear existing configuration table
7430 042742 200 00 0 00 114272 MOVE [CTABLE,,CTABLE+1] ; ...
7431 042743 251 00 0 00 043116 BLT CTABLE+MAXPOR ; ...
7432
7433 ; Initialize packet default data
7434
7435 042744 402 00 0 00 065154 SETZM TFMFLG ; initialize format flag to COMPAT
7436 042745 402 00 0 00 065155 SETZM TRSFLG ; initialize to not request responses
7437 042746 402 00 0 00 065156 SETZM TPTFLG ; initialize to auto path
7438 042747 402 00 0 00 065157 SETZM TXCTID ; initialize both words of the
7439 042750 402 00 0 00 065160 SETZM TXCTID+1 ; transaction ID
7440 042751 476 00 0 00 065161 SETOM TDPORT ; initialize destination port number
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 172
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0347
7441
7442 ; Start up the port and set enabled bit
7443
7444 042752 260 17 0 00 043652 GO TFLOAD ; load operational microcode
7445 JRST [SKIPE UDEBUG ; failed
7446 JRST .+1
7447 PCRLF
7448 HLRZ
7449 GO @0
7450 042753 254 00 0 00 114273 JRST CONFIX]
7451 042754 260 17 0 00 065052 GO TIDLE ; ensure in idle loop
7452 JRST [SKIPE UDEBUG ; failed
7453 JRST .+1
7454 FMSGCD <? Couldn't start port>
7455 042755 254 00 0 00 114301 JRST CONFIX]
7456 042756 260 17 0 00 042122 GO SETENA ; ensure the port is enabled
7457 JRST [SKIPE UDEBUG
7458 JRST .+1
7459 FMSGCD <? Couldn't enable port>
7460 042757 254 00 0 00 114305 JRST CONFIX]
7461
7462 ; Now do the request ID's
7463
7464 042760 037 07 0 00 000003 CONFI0: TTALTM ; altmode typed?
7465 042761 334 00 0 00 000000 SKIPA ; no - continue
7466 042762 254 00 0 00 043031 JRST CONFI2 ; yes - exit
7467 042763 350 01 0 00 065161 AOS 1,TDPORT ; point to next port
7468 042764 303 01 0 00 000017 CAILE 1,MAXPOR ; done yet?
7469 042765 254 00 0 00 043031 JRST CONFI2 ; yes - exit
7470
7471 ; Build the packet and put on command queue
7472
7473 042766 201 11 0 00 000005 MOVEI OP,REQID ; set up to do Request ID's
7474 042767 260 17 0 00 065174 GO BPACK ; build a request ID packet
7475 042770 201 13 0 00 000003 MOVEI Q,3 ; place entries on cmd queue 0
7476 042771 260 17 0 00 065777 GO INSQUE ; insert on command queue
7477 042772 255 00 0 00 000000 JFCL ; error - ignore
7478 042773 260 17 0 00 042175* GO RDCSR ; read CSR
7479 042774 255 00 0 00 000000 JFCL ; error - ignore
7480 042775 660 01 0 00 000400 TRO 1,CMDQAV ; set the 'CMDQAV' bit
7481 042776 260 17 0 00 042173* GO LDCSR ; write the CSR register
7482
7483 ; Wait for a response
7484
7485 042777 260 17 0 00 065601 GO RWAIT ; wait for response
7486 043000 260 17 0 00 066134 CONFI1: GO CHKRSP ; check for response entry
7487 043001 254 00 0 00 042760 JRST CONFI0 ; no responses - try next port
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 173
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0348
7488
7489 ; Got a response - now decode it
7490
7491 043002 135 02 0 00 114046 LDB 2,[POINT 8,RSPONS+3,23] ; get opcode
7492 043003 302 02 0 00 000053 CAIE 2,IDREC+40 ; 'ID Received' packet?
7493 043004 254 00 0 00 043000 JRST CONFI1 ; no - check next response
7494 043005 135 02 0 00 114311 LDB 2,[POINT 1,RSPONS+3,0] ; get error status bit
7495 043006 326 02 0 00 043000 JUMPN 2,CONFI1 ; error - yes - check next response
7496 043007 135 01 0 00 114047 LDB 1,[POINT 8,RSPONS+3,31] ; get port number which sent packet
7497
7498 ; Build configuration table entry
7499
7500 043010 400 03 0 00 000000 SETZ 3, ; clear status location
7501 043011 335 00 0 00 070455 SKIPGE RSPONS+6 ; dual path port?
7502 043012 661 03 0 00 400000 TLO 3,400000 ; yes - set the flag
7503 043013 135 02 0 00 114312 LDB 2,[POINT 1,RSPONS+9,23] ; get maintenance mode bit
7504 043014 332 00 0 00 000002 SKIPE 2 ; maintenance mode set?
7505 043015 661 03 0 00 200000 TLO 3,200000 ; yes - set the flag
7506 043016 135 02 0 00 114313 LDB 2,[POINT 2,RSPONS+9,22] ; get port state
7507 043017 137 02 0 00 114314 DPB 2,[POINT 2,3,3] ; save it
7508 043020 135 02 0 00 114315 LDB 2,[POINT 6,RSPONS+6,31] ; get port type
7509 043021 137 02 0 00 114316 DPB 2,[POINT 8,3,11] ; save it
7510 043022 303 02 0 00 000007 CAILE 2,7 ; between 0 and 7?
7511 043023 201 02 0 00 000007 MOVEI 2,7 ; no - limit to 7
7512 043024 316 01 0 00 034013 CAMN 1,CPORT ; our port number?
7513 043025 201 02 0 00 000010 MOVEI 2,10 ; yes - set to self
7514 043026 541 03 0 02 043117 HRRI 3,CTYPE(2) ; insert address of text
7515 043027 202 03 0 01 043077 MOVEM 3,CTABLE(1) ; save configuration data
7516 043030 254 00 0 00 042760 JRST CONFI0 ; loop till done
7517
7518 ; All done - shut down the port
7519
7520 043031 260 17 0 00 042162 CONFI2: GO SETDSA ; disable the port
7521 043032 260 17 0 00 040110* GO IPACLR ; do a 'port clear'
7522 043033 476 00 0 00 043076 SETOM CVALID ; set config table valid flag
7523
7524 ; Exit
7525
7526 043034 262 17 0 00 000003 CONFIX: RGET (3,2,1,0) ; restore AC's
7527
7528 043040 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 174
DFCIA1 MAC 27-Oct-84 19:00 Program Utility Routines SEQ 0349
7529
7530 ;#********************************************************************
7531 ;* CONPNT - Print configuration data
7532 ;#********************************************************************
7533
7534 043041 261 17 0 00 000000 CONPNT: RPUT (0,1,2,3) ; save AC's
7535
7536 TMSGD <
7537 ***** CI Configuration *****
7538 Port Port Dual Maint Port
7539 Number Type Path State State
7540 043045 037 00 0 00 114317 ------ --------- ---- ----- ------->
7541 043046 200 02 0 00 114356 MOVE 2,[-MAXPOR,,0] ; set up AOBJN pointer
7542 043047 200 03 0 02 043077 CONPN0: MOVE 3,CTABLE(2) ; get port entry
7543 043050 322 03 0 00 043070 JUMPE 3,CONPN1 ; nonexistent?
7544 043051 550 00 0 00 000002 HRRZ 2 ; get into AC0
7545 043052 001 04 0 00 000000 PNTOCC 4,0 ; print port number
7546 043053 037 00 0 00 114357 TMSG < >
7547 043054 550 01 0 02 043077 HRRZ 1,CTABLE(2) ; get ASCIZ text address
7548 043055 256 00 0 01 000000 XCT (1) ; print what type of port
7549 043056 607 03 0 00 400000 TLNN 3,400000 ; dual path port?
7550 043057 037 00 0 00 114360 TMSG < No > ; no - print such
7551 043060 603 03 0 00 400000 TLNE 3,400000 ; dual path port?
7552 043061 037 00 0 00 114361 TMSG < Yes> ; yes - print such
7553 043062 607 03 0 00 200000 TLNN 3,200000 ; maintenance mode?
7554 043063 037 00 0 00 114362 TMSG < No > ; no - print such
7555 043064 603 03 0 00 200000 TLNE 3,200000 ; maintenance mode?
7556 043065 037 00 0 00 114365 TMSG < Yes > ; yes - print such
7557 043066 135 01 0 00 114314 LDB 1,[POINT 2,3,3] ; get port state
7558 XCT [TMSGD <Uninitialized> ; print it
7559 TMSGD <Disabled>
7560 TMSGD <Enabled>
7561 043067 256 00 0 01 114404 TMSGD <Undefined>](1)
7562 043070 253 02 0 00 043047 CONPN1: AOBJN 2,CONPN0 ; loop till done
7563 043071 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
7564
7565 043075 263 17 0 00 000000 RTN ; return
7566
7567 ; Configuration data
7568
7569 043076 000000 000000 CVALID: 0 ; config table valid flag
7570 043077 CTABLE: BLOCK MAXPOR+1 ; configuration table
7571
7572 043117 037 00 0 00 114410 CTYPE: TMSG <Undefined > ; type 0
7573 043120 037 00 0 00 114410 TMSG <Undefined > ; type 1
7574 043121 037 00 0 00 114413 TMSG <CI780 > ; type 2
7575 043122 037 00 0 00 114416 TMSG <CI750 > ; type 3
7576 043123 037 00 0 00 114421 TMSG <HSC50 > ; type 4
7577 043124 037 00 0 00 114424 TMSG <Jupiter > ; type 5
7578 043125 037 00 0 00 114427 TMSG <KL10 > ; type 6
7579 043126 037 00 0 00 114410 TMSG <Undefined > ; type 7
7580 043127 037 00 0 00 114432 TMSG <KL10(Self)> ; type 6 (special)
7581
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 175
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0350
7582 SUBTTL Statistics Handling Routines
7583
7584 ;#********************************************************************
7585 ;* SUPDAT - Update statistics for datagrams sent
7586 ;
7587 ; Given: PACKET - Contains the packet data sent
7588 ;#********************************************************************
7589
7590 043130 261 17 0 00 000000 SUPDAT: RPUT (0,1,2,3,OP) ; save AC's
7591
7592 043135 135 11 0 00 114435 LDB OP,[POINT 8,PACKET+3,23]; get op code
7593 043136 201 02 0 00 000004 MOVEI 2,4 ; initialize to 'other'
7594 043137 306 11 0 00 000015 CAIN OP,SNDLB ; external loopback?
7595 043140 201 02 0 00 000001 MOVEI 2,1 ; yes - set up 'ext loopback'
7596 043141 306 11 0 00 000001 CAIN OP,SNDDG ; datagram?
7597 GO [LDB [POINT 8,PACKET+3,31]
7598 CAMN CPORT ; internal loopback?
7599 MOVEI 2,0 ; yes - set up 'int loopback'
7600 043142 260 17 0 00 114437 RTN]
7601 043143 306 11 0 00 000005 CAIN OP,REQID ; request id?
7602 GO [MOVEI 2,2 ; yes - set up 'req id'
7603 043144 260 17 0 00 114443 RTN]
7604 043145 302 11 0 00 000203 CAIE OP,REGRD ; register read?
7605 043146 306 11 0 00 000204 CAIN OP,REGWR ; register write?
7606 GO [MOVEI 2,3 ; yes - set up 'reg r/w'
7607 043147 260 17 0 00 114445 RTN]
7608
7609 ; Increment packets sent
7610
7611 043150 221 02 0 00 000012 SUPDA0: IMULI 2,^D10 ; calculate address of statistics
7612 043151 271 02 0 00 043474 ADDI 2,STASNT ; ...
7613 043152 350 00 0 02 000000 AOS .SPSNT(2) ; increment number of packets sent
7614 043153 200 03 0 00 000002 MOVE 3,2 ; get into AC3
7615 043154 260 17 0 00 067212 GO DECOPC ; decode op code
7616 043155 201 01 0 00 000040 MOVEI 1,40 ; error - set to 'other'
7617 XCT [GO [LDB [POINT 20,PACKET+4,35] ; 0-SNDDG
7618 ADDI 13
7619 RTN]
7620 GO [LDB [POINT 19,PACKET+4,35] ; 1-SNDMSG
7621 ADDI 13
7622 RTN]
7623 MOVEI 23 ; 2-REQID
7624 MOVEI 23 ; 3-SNDRST
7625 MOVEI 27 ; 4-SNDSTRT
7626 GO [LDB [POINT 32,PACKET+6,31] ; 5-REQDAT0
7627 ADDI 41
7628 RTN]
7629 GO [LDB [POINT 32,PACKET+6,31] ; 6-REQDAT1
7630 ADDI 41
7631 RTN]
7632 GO [LDB [POINT 32,PACKET+6,31] ; 7-REQDAT2
7633 ADDI 41
7634 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 176
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0351
7635 7636 GO [LDB [POINT 16,PACKET+4,35] ; 10-LPBCK
7637 ADDI 17
7638 RTN]
7639 MOVEI 33 ; 11-REQMDAT
7640 MOVEI 33 ; 12-SNDDAT
7641 MOVEI 33 ; 13-RETDAT
7642 MOVEI 33 ; 14-SNDMDAT
7643 SETZ ; 15-CLSBUF
7644 SETZ ; 16-SETCKT
7645 SETZ ; 17-SETCNT
7646 SETZ ; 20-RDCNT
7647 SETZ ; 21-REGRD
7648 SETZ ; 22-REGWR
7649 SETZ ; 23-CNFRET
7650 SETZ ; 24-MCNF
7651 SETZ ; 25-IDREC
7652 SETZ ; 26-DATREC
7653 SETZ ; 27-RTMDAT
7654 SETZ ; 30
7655 SETZ ; 31
7656 SETZ ; 32
7657 SETZ ; 33
7658 SETZ ; 34
7659 SETZ ; 35
7660 SETZ ; 36
7661 SETZ ; 37
7662 043156 256 00 0 01 114467 SETZ](1) ; 40
7663 043157 272 00 0 03 000001 ADDM .SBSNT(3) ; add in byte count
7664 043160 262 17 0 00 000011 RGET (OP,3,2,1,0) ; restore AC's
7665
7666 043165 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 177
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0352
7667
7668 ;#********************************************************************
7669 ;* RUPDAT - Update statistics for datagrams received
7670 ;
7671 ; Given: RSPONS - Contains the packet data received
7672 ;#********************************************************************
7673
7674 043166 261 17 0 00 000000 RUPDAT: RPUT (0,1,2,3,OP) ; save AC's
7675
7676
7677 ; First determine what category
7678
7679 043173 135 11 0 00 114046 LDB OP,[POINT 8,RSPONS+3,23]; get op code
7680 043174 260 17 0 00 067212 GO DECOPC ; decode opcode
7681 043175 201 01 0 00 000040 MOVEI 1,40 ; error - use offset of 40
7682 043176 202 01 0 00 120754' MOVEM 1,PAKOFF# ; save packet offset
7683 043177 202 02 0 00 120755' MOVEM 2,PAKTYP# ; save packet type
7684 043200 306 02 0 00 000002 CAIN 2,2 ; received from another port?
7685 043201 275 11 0 00 000040 SUBI OP,40 ; yes - normalize to 1..n
7686 043202 201 03 0 00 000004 MOVEI 3,4 ; initialize to 'other'
7687 043203 306 11 0 00 000015 CAIN OP,SNDLB ; external loopback?
7688 043204 201 03 0 00 000001 MOVEI 3,1 ; yes - set up 'ext loopback'
7689 043205 306 11 0 00 000001 CAIN OP,SNDDG ; datagram?
7690 GO [LDB [POINT 8,RSPONS+3,31]
7691 CAMN CPORT ; internal loopback?
7692 MOVEI 3,0 ; yes - set up 'int loopback'
7693 043206 260 17 0 00 114530 RTN]
7694 043207 302 11 0 00 000005 CAIE OP,REQID ; request id - sent or
7695 043210 306 11 0 00 000013 CAIN OP,IDREC ; received?
7696 GO [MOVEI 3,2 ; yes - set up 'req id'
7697 043211 260 17 0 00 114534 RTN]
7698 043212 302 11 0 00 000204 CAIE OP,REGWR ; register read?
7699 043213 306 11 0 00 000203 CAIN OP,REGRD ; register write?
7700 GO [MOVEI 3,3 ; yes - set up 'reg r/w'
7701 043214 260 17 0 00 114536 RTN]
7702
7703 ; Then determine which type it is - response requested, or packet received
7704
7705 043215 306 02 0 00 000002 CAIN 2,2 ; packet received?
7706 043216 254 00 0 00 043245 JRST RUPDA2 ; yes - go handle
7707
7708 ; This is a packet received by dint of 'Rsp Requested' flag or error on
7709 ; transmission.
7710
7711 043217 221 03 0 00 000012 IMULI 3,^D10 ; calculate address of statistics
7712 043220 271 03 0 00 043474 ADDI 3,STASNT ; ...
7713 043221 200 02 0 00 070452 MOVE 2,RSPONS+3 ; get status word
7714 043222 603 02 0 00 400000 TLNE 2,400000 ; error bit set?
7715 043223 254 00 0 00 043242 JRST RUPDA1 ; yes - go handle
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 178
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0353
7716
7717 ; Status byte is in status byte format
7718
7719 043224 135 02 0 00 114540 LDB 2,[POINT 8,RSPONS+3,7] ; get status bits
7720 043225 602 02 0 00 000040 TRNE 2,40 ; Path A Acked?
7721 043226 350 00 0 03 000002 AOS .SAACK(3) ; yes - increment
7722 043227 602 02 0 00 000020 TRNE 2,20 ; Path A Naked?
7723 043230 350 00 0 03 000003 AOS .SANAK(3) ; yes - increment
7724 043231 602 02 0 00 000010 TRNE 2,10 ; Path A Nrsped?
7725 043232 350 00 0 03 000004 AOS .SANSP(3) ; yes - increment
7726 043233 602 02 0 00 000004 TRNE 2,4 ; Path B Acked?
7727 043234 350 00 0 03 000005 AOS .SBACK(3) ; yes - increment
7728 043235 602 02 0 00 000002 TRNE 2,2 ; Path B Naked?
7729 043236 350 00 0 03 000006 AOS .SBNAK(3) ; yes - increment
7730 043237 602 02 0 00 000001 TRNE 2,1 ; Path B Nrsped?
7731 043240 350 00 0 03 000007 AOS .SBNSP(3) ; yes - increment
7732 043241 254 00 0 00 043264 JRST RUPDAX ; exit
7733
7734 ; Status byte is in error byte format
7735
7736 043242 603 02 0 00 376000 RUPDA1: TLNE 2,376000 ; any errors indicated?
7737 043243 350 00 0 03 000010 AOS .SRERR(3) ; yes - increment receive error count
7738 043244 254 00 0 00 043264 JRST RUPDAX ; exit
7739
7740 ; This is a packet received from another port or from self (if destination
7741 ; port specified self).
7742
7743 043245 221 03 0 00 000006 RUPDA2: IMULI 3,6 ; calculate address of statistics
7744 043246 135 02 0 00 114541 LDB 2,[POINT 2,RSPONS+3,14] ; get path select bits
7745 043247 302 02 0 00 000002 CAIE 2,2 ; path 0?
7746 043250 271 03 0 00 043556 ADDI 3,STARCA ; yes - add in proper offset
7747 043251 306 02 0 00 000002 CAIN 2,2 ; path 1?
7748 043252 271 03 0 00 043614 ADDI 3,STARCB ; yes - add in proper offset
7749
7750 ; Increment packet counts
7751
7752 043253 350 00 0 03 000000 AOS .RPRCV(3) ; increment packet received count
7753 043254 200 02 0 00 070452 MOVE 2,RSPONS+3 ; get status word
7754 043255 607 02 0 00 400000 TLNN 2,400000 ; error word?
7755 043256 254 00 0 00 043261 JRST RUPDA3 ; no - continue
7756 043257 603 02 0 00 376000 TLNE 2,376000 ; any error bits set?
7757 043260 350 00 0 03 000002 AOS .RRERR(3) ; yes - increment receive error count
7758 043261 200 01 0 00 120754' RUPDA3: MOVE 1,PAKOFF ; get offset
7759 XCT [GO [LDB [POINT 20,RSPONS+4,35] ; 0-DGSNT
7760 ADDI 13
7761 RTN]
7762 GO [LDB [POINT 19,RSPONS+4,35] ; 1-MSGSNT
7763 ADDI 13
7764 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 179
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0354
7765 7766 MOVEI 23 ; 2-IDREQ
7767 MOVEI 23 ; 3-RSTSNT
7768 MOVEI 27 ; 4-STRTSNT
7769 GO [LDB [POINT 32,RSPONS+6,31] ; 5-DATREQ0
7770 ADDI 41
7771 RTN]
7772 GO [LDB [POINT 32,RSPONS+6,31] ; 6-DATREQ1
7773 ADDI 41
7774 RTN]
7775 GO [LDB [POINT 32,RSPONS+6,31] ; 7-DATREQ2
7776 ADDI 41
7777 RTN]
7778 GO [LDB [POINT 16,RSPONS+4,35] ; 10-LPSNT
7779 ADDI 17
7780 RTN]
7781 SETZ ; 11-MDATREQ
7782 SETZ ; 12-DATSNT
7783 SETZ ; 13-DATRET
7784 MOVEI 33 ; 14-MDATSNT
7785 SETZ ; 15-BUFCLS
7786 SETZ ; 16-CKTSET
7787 SETZ ; 17-CNTSET
7788 SETZ ; 20-CNTRD
7789 SETZ ; 21-RDREG
7790 SETZ ; 22-WRREG
7791 MOVEI 23 ; 23-CNFRET
7792 SETZ ; 24-MCNF
7793 MOVEI 73 ; 25-IDREC
7794 SETZ ; 26-RECDAT
7795 SETZ ; 27-MDATRET
7796 SETZ ; 30
7797 SETZ ; 31
7798 SETZ ; 32
7799 SETZ ; 33
7800 SETZ ; 34
7801 SETZ ; 35
7802 SETZ ; 36
7803 SETZ ; 37
7804 043262 256 00 0 01 114562 SETZ](1) ; 40
7805 043263 272 00 0 03 000001 ADDM .RBRCV(3) ; add in byte count
7806
7807 ; Done - exit
7808
7809 043264 262 17 0 00 000011 RUPDAX: RGET (OP,3,2,1,0) ; restore AC's
7810
7811 043271 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 180
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0355
7812
7813 ;#********************************************************************
7814 ;* SREPOR - Report statistics
7815 ;#********************************************************************
7816
7817 043272 261 17 0 00 000000 SREPOR: RPUT (0,1,2,3,4,5) ; save AC's
7818
7819
7820 ; Packets Sent statistics
7821
7822 043300 037 00 0 00 114623 TMSGC <*** STATISTICS - Packets Sent (>
7823 043301 260 17 0 00 042073* GO PTIME
7824 TMSG <) ***
7825 (All numbers decimal) Unexpctd Expected
7826 Packets Bytes -Rsp Path A-- -Rsp Path B-- Resp Resp
7827 Type Sent Sent ACK NAK/NRsp ACK NAK/NRsp Errors Errors
7828 043302 037 00 0 00 114632 ---- ---- ---- --- -------- --- -------- ------ ------>
7829 043303 474 05 0 00 000000 SETO 5, ; initialize pointer to line number
7830 043304 350 00 0 00 000005 SREPO0: AOS 5 ; point to next line
7831 043305 301 05 0 00 000005 CAIL 5,5 ; done yet?
7832 043306 254 00 0 00 043352 JRST SREPO1 ; yes - exit
7833 043307 200 04 0 00 000005 MOVE 4,5 ; calculate beginning address
7834 043310 221 04 0 00 000012 IMULI 4,^D10 ; of statistics
7835 043311 271 04 0 00 043474 ADDI 4,STASNT ; ...
7836
7837 ; Check to see if there is anything here to print
7838
7839 043312 400 01 0 00 000000 SETZ 1, ; clear totals
7840 043313 270 01 0 04 000000 ADD 1,.SPSNT(4) ; add in packets sent
7841 043314 270 01 0 04 000001 ADD 1,.SBSNT(4) ; add in bytes sent
7842 043315 270 01 0 04 000002 ADD 1,.SAACK(4) ; add in Path A ACKs
7843 043316 270 01 0 04 000003 ADD 1,.SANAK(4) ; add in Path A NAKs
7844 043317 270 01 0 04 000004 ADD 1,.SANSP(4) ; add in Path A NoRSPs
7845 043320 270 01 0 04 000005 ADD 1,.SBACK(4) ; add in Path B ACKs
7846 043321 270 01 0 04 000006 ADD 1,.SBNAK(4) ; add in Path B NAKs
7847 043322 270 01 0 04 000007 ADD 1,.SBNSP(4) ; add in Path B NoRSPs
7848 043323 270 01 0 04 000010 ADD 1,.SRERR(4) ; add in Receive Errors
7849 043324 322 01 0 00 043304 JUMPE 1,SREPO0 ; zero? yes - try next category
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 181
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0356
7850
7851 ; Print it
7852
7853 XCT [TMSGC <IntLnk> ; no - print type field
7854 TMSGC <ExtLnk>
7855 TMSGC <ReqID >
7856 TMSGC <RegR/W>
7857 043325 256 00 0 05 114744 TMSGC <Other >](5)
7858 043326 200 00 0 04 000000 MOVE .SPSNT(4) ; get packets sent
7859 043327 003 12 0 00 000000 PNTDCC ^D10,0 ; print it
7860 043330 200 00 0 04 000001 MOVE .SBSNT(4) ; get bytes sent
7861 043331 003 12 0 00 000000 PNTDCC ^D10,0 ; print it
7862 043332 200 00 0 04 000002 MOVE .SAACK(4) ; get Path A ACKs
7863 043333 003 10 0 00 000000 PNTDCC 8,0 ; print it
7864 043334 200 00 0 04 000003 MOVE .SANAK(4) ; get Path A NAKs
7865 043335 270 00 0 04 000004 ADD .SANSP(4) ; get Path A NoRSPs
7866 043336 003 10 0 00 000000 PNTDCC 8,0 ; print it
7867 043337 200 00 0 04 000005 MOVE .SBACK(4) ; get Path B ACKs
7868 043340 003 10 0 00 000000 PNTDCC 8,0 ; print it
7869 043341 200 00 0 04 000006 MOVE .SBNAK(4) ; get Path B NAKs
7870 043342 270 00 0 04 000007 ADD .SBNSP(4) ; get Path B NoRSPs
7871 043343 003 10 0 00 000000 PNTDCC 8,0 ; print it
7872 043344 200 00 0 04 000010 MOVE .SRERR(4) ; get unexpected Receive Errors
7873 043345 274 00 0 04 000011 SUB .SREXP(4) ; subtract off expected errors
7874 043346 003 11 0 00 000000 PNTDCC 9,0 ; print it
7875 043347 200 00 0 04 000011 MOVE .SREXP(4) ; get expected Receive Errors
7876 043350 003 11 0 00 000000 PNTDCC 9,0 ; print it
7877 043351 254 00 0 00 043304 JRST SREPO0 ; loop till done
7878
7879 ; Packets Received Path A statistics
7880
7881 043352 037 00 0 00 030242 SREPO1: PCRL
7882 043353 037 00 0 00 114751 TMSGC <*** STATISTICS - Packets Received Path A (>
7883 043354 260 17 0 00 043301* GO PTIME
7884 TMSG <) ***
7885 (All numbers decimal) Unexpected Expected
7886 Packets Bytes Recv Recv Packets Bytes
7887 Type Rcvd Recv Errors Errors In Error In Error
7888 043355 037 00 0 00 114762 ---- ---- ---- ------ ------ -------- -------->
7889 043356 474 05 0 00 000000 SETO 5, ; initialize pointer to line number
7890 043357 350 00 0 00 000005 SREPO2: AOS 5 ; point to next line
7891 043360 301 05 0 00 000005 CAIL 5,5 ; done yet?
7892 043361 254 00 0 00 043415 JRST SREPO3 ; yes - exit
7893 043362 200 04 0 00 000005 MOVE 4,5 ; calculate beginning address
7894 043363 221 04 0 00 000006 IMULI 4,6 ; of statistics
7895 043364 271 04 0 00 043556 ADDI 4,STARCA ; ...
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 182
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0357
7896
7897 ; Check to see if there is anything here to print
7898
7899 043365 400 01 0 00 000000 SETZ 1, ; clear totals
7900 043366 270 01 0 04 000000 ADD 1,.RPRCV(4) ; add in packets received
7901 043367 270 01 0 04 000001 ADD 1,.RBRCV(4) ; add in bytes received
7902 043370 270 01 0 04 000002 ADD 1,.RRERR(4) ; add in receive errors
7903 043371 270 01 0 04 000003 ADD 1,.RPERR(4) ; add in packets in error
7904 043372 270 01 0 04 000004 ADD 1,.RBERR(4) ; add in bytes in error
7905 043373 322 01 0 00 043357 JUMPE 1,SREPO2 ; zero? yes - try next category
7906
7907 ; Print it
7908
7909 XCT [TMSGC <IntLnk> ; no - print type field
7910 TMSGC <ExtLnk>
7911 TMSGC <ReqID >
7912 TMSGC <RegR/W>
7913 043374 256 00 0 05 114744 TMSGC <Other >](5)
7914 043375 200 00 0 04 000000 MOVE .RPRCV(4) ; get packets received
7915 043376 003 11 0 00 000000 PNTDCC 9,0 ; print it
7916 043377 200 00 0 04 000001 MOVE .RBRCV(4) ; get bytes received
7917 043400 003 12 0 00 000000 PNTDCC 12,0 ; print it
7918 043401 200 00 0 04 000002 MOVE .RRERR(4) ; get receive errors
7919 043402 274 00 0 04 000005 SUB .RREXP(4) ; subtract off expected recv errors
7920 043403 003 12 0 00 000000 PNTDCC 12,0 ; print it
7921 043404 200 00 0 04 000005 MOVE .RREXP(4) ; get expected receive errors
7922 043405 003 13 0 00 000000 PNTDCC 13,0 ; print it
7923 043406 303 05 0 00 000003 CAILE 5,3 ; done with the first 3?
7924 043407 254 00 0 00 043357 JRST SREPO2 ; yes - loop till done
7925 043410 200 00 0 04 000003 MOVE .RPERR(4) ; get packets in error
7926 043411 003 13 0 00 000000 PNTDCC 13,0 ; print it
7927 043412 200 00 0 04 000004 MOVE .RBERR(4) ; get bytes in error
7928 043413 003 12 0 00 000000 PNTDCC 12,0 ; print it
7929 043414 254 00 0 00 043357 JRST SREPO2 ; loop till done
7930
7931 ; Packets Received Path B statistics
7932
7933 043415 037 00 0 00 030242 SREPO3: PCRL
7934 043416 037 00 0 00 115046 TMSGC <*** STATISTICS - Packets Received Path B (>
7935 043417 260 17 0 00 043354* GO PTIME
7936 TMSG <) ***
7937 (All numbers decimal) Unexpected Expected
7938 Packets Bytes Recv Recv Packets Bytes
7939 Type Rcvd Recv Errors Errors In Error In Error
7940 043420 037 00 0 00 114762 ---- ---- ---- ------ ------ -------- -------->
7941 043421 474 05 0 00 000000 SETO 5, ; initialize pointer to line number
7942 043422 350 00 0 00 000005 SREPO4: AOS 5 ; point to next line
7943 043423 301 05 0 00 000005 CAIL 5,5 ; done yet?
7944 043424 254 00 0 00 043460 JRST SREPOX ; yes - exit
7945 043425 200 04 0 00 000005 MOVE 4,5 ; calculate beginning address
7946 043426 221 04 0 00 000006 IMULI 4,6 ; of statistics
7947 043427 271 04 0 00 043614 ADDI 4,STARCB ; ...
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 183
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0358
7948
7949 ; Check to see if there is anything here to print
7950
7951 043430 400 01 0 00 000000 SETZ 1, ; clear totals
7952 043431 270 01 0 04 000000 ADD 1,.RPRCV(4) ; add in packets received
7953 043432 270 01 0 04 000001 ADD 1,.RBRCV(4) ; add in bytes received
7954 043433 270 01 0 04 000002 ADD 1,.RRERR(4) ; add in receive errors
7955 043434 270 01 0 04 000003 ADD 1,.RPERR(4) ; add in packets in error
7956 043435 270 01 0 04 000004 ADD 1,.RBERR(4) ; add in bytes in error
7957 043436 322 01 0 00 043422 JUMPE 1,SREPO4 ; zero? yes - try next category
7958
7959 ; Print it
7960
7961 XCT [TMSGC <IntLnk> ; no - print type field
7962 TMSGC <ExtLnk>
7963 TMSGC <ReqID >
7964 TMSGC <RegR/W>
7965 043437 256 00 0 05 114744 TMSGC <Other >](5)
7966 043440 200 00 0 04 000000 MOVE .RPRCV(4) ; get packets received
7967 043441 003 11 0 00 000000 PNTDCC 9,0 ; print it
7968 043442 200 00 0 04 000001 MOVE .RBRCV(4) ; get bytes received
7969 043443 003 12 0 00 000000 PNTDCC 12,0 ; print it
7970 043444 200 00 0 04 000002 MOVE .RRERR(4) ; get receive errors
7971 043445 274 00 0 04 000005 SUB .RREXP(4) ; subtract off expected recv errors
7972 043446 003 12 0 00 000000 PNTDCC 12,0 ; print it
7973 043447 200 00 0 04 000005 MOVE .RREXP(4) ; get expected receive errors
7974 043450 003 13 0 00 000000 PNTDCC 13,0 ; print it
7975 043451 303 05 0 00 000003 CAILE 5,3 ; done with the first 3?
7976 043452 254 00 0 00 043422 JRST SREPO4 ; yes - loop till done
7977 043453 200 00 0 04 000003 MOVE .RPERR(4) ; get packets in error
7978 043454 003 13 0 00 000000 PNTDCC 13,0 ; print it
7979 043455 200 00 0 04 000004 MOVE .RBERR(4) ; get bytes in error
7980 043456 003 12 0 00 000000 PNTDCC 12,0 ; print it
7981 043457 254 00 0 00 043422 JRST SREPO4 ; loop till done
7982
7983 ; Exit
7984
7985 043460 037 00 0 00 030242 SREPOX: PCRL
7986 043461 262 17 0 00 000005 RGET (5,4,3,2,1,0) ; restore AC's
7987
7988 043467 263 17 0 00 000000 RTN ; return
7989
7990
7991 ;#********************************************************************
7992 ;* SZERO - Clear statistics
7993 ;#********************************************************************
7994
7995 043470 402 00 0 00 043474 SZERO: SETZM STATB ; clear first word
7996 043471 200 00 0 00 115057 MOVE [STATB,,STATB+1] ; build a BLT pointer
7997 043472 251 00 0 00 043651 BLT STATE ; clear them all
7998 043473 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 184
DFCIA1 MAC 27-Oct-84 19:00 Statistics Handling Routines SEQ 0359
7999
8000 ;#********************************************************************
8001 ;* Statistics data areas
8002 ;#********************************************************************
8003
8004 ; Offset definitions for packets sent
8005
8006 000000 .SPSNT==0 ; # packets sent
8007 000001 .SBSNT==1 ; # bytes sent
8008 000002 .SAACK==2 ; # ACKs received
8009 000003 .SANAK==3 ; # NAKs received
8010 000004 .SANSP==4 ; # NORSPs received
8011 000005 .SBACK==5 ; # ACKs received
8012 000006 .SBNAK==6 ; # NAKs received
8013 000007 .SBNSP==7 ; # NORSPs received
8014 000010 .SRERR==8 ; # unexpected response errors
8015 000011 .SREXP==9 ; # expected response errors
8016
8017 ; Offset definitions for packets received
8018
8019 000000 .RPRCV==0 ; # packets received
8020 000001 .RBRCV==1 ; # bytes received
8021 000002 .RRERR==2 ; # receive errors
8022 000003 .RPERR==3 ; # packets in error
8023 000004 .RBERR==4 ; # bytes in error
8024 000005 .RREXP==5 ; # expected receive errors
8025
8026 ; Statistics
8027
8028 043474 STATB:
8029 043474 STASNT: BLOCK ^D10 ; Internal Link Loopback
8030 043506 BLOCK ^D10 ; External Link Loopback
8031 043520 BLOCK ^D10 ; Request ID's
8032 043532 BLOCK ^D10 ; Register Read/Writes
8033 043544 BLOCK ^D10 ; Other
8034
8035 043556 STARCA: BLOCK 6 ; Path A - Internal Link Loopback
8036 043564 BLOCK 6 ; Path A - External Link Loopback
8037 043572 BLOCK 6 ; Path A - Request ID's
8038 043600 BLOCK 6 ; Path A - Register Read/Writes
8039 043606 BLOCK 6 ; Path A - Other
8040
8041 043614 STARCB: BLOCK 6 ; Path B - Internal Link Loopback
8042 043622 BLOCK 6 ; Path B - External Link Loopback
8043 043630 BLOCK 6 ; Path B - Request ID's
8044 043636 BLOCK 6 ; Path B - Register Read/Writes
8045 043644 BLOCK 6 ; Path B - Other
8046
8047 043651 STATE==.-1
8048
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 185
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0360
8049 SUBTTL Microcode Handling Routines
8050
8051 ;#********************************************************************
8052 ; These routines load/verify operational microcode and test microcode.
8053 ;
8054 ; Operational microcode:
8055 ;
8056 ; TFLOAD - Load operational microcode for a test
8057 ; FLOADB - Load operational microcode into buffer
8058 ; FLOADC - Load microcode buffer contents into the port
8059 ; FVERFC - Verify port microcode against buffer contents
8060 ; FUERR - Print verify error data
8061 ;
8062 ; Test microcode:
8063 ;
8064 ; MLOADN - Load microcode and verify it (do not print errors)
8065 ; MLOADY - Load microcode and verify it (print errors)
8066 ; MVPNT - Print verify error data
8067 ; MLIST - List microcode of a test
8068 ; TLOAD - Load microcode/verify it for a test
8069 ;#********************************************************************
8070
8071 ;#********************************************************************
8072 ;* TFLOAD - Load operational microcode for a test
8073 ;
8074 ; Returns: +1 Error occurred (Error message or routine in AC0)
8075 ; +2 Succeeded
8076 ;#********************************************************************
8077
8078 043652 402 00 0 00 044232 TFLOAD: SETZM FFLAG ; clear operator output flag
8079 043653 260 17 0 00 043745 GO FLOADB ; load file into ucode buffer
8080 JRST [MOVE [TFLER1,,TFLER2]; error - exit
8081 043654 254 00 0 00 115061 RTN]
8082 043655 200 00 0 00 121005' MOVE TSLOAD ; get microcode loaded flag
8083 043656 306 00 0 00 000777 CAIN 777 ; operational microcode?
8084 043657 254 00 0 00 043676 JRST TFLOAX ; yes - return - already loaded
8085 043660 261 17 0 00 000001 PUT 1 ; save AC1
8086 043661 260 17 0 00 042614* GO ISTOP ; stop the port
8087 043662 400 01 0 00 000000 SETZ 1, ; clear AC1
8088 043663 260 17 0 00 042776* GO LDCSR ; clear CSR
8089 043664 262 17 0 00 000001 GET 1 ; restore AC1
8090 043665 332 00 0 00 120737' SKIPE LDEBUG ; ucode load debug switch set?
8091 043666 254 00 0 00 043676 JRST TFLOAX ; yes - don't load ucode
8092 043667 201 00 0 00 000777 MOVEI 777 ; set microcode loaded flag to
8093 043670 202 00 0 00 121005' MOVEM TSLOAD ; indicate operational ucode
8094 043671 260 17 0 00 044030 GO FLOADC ; load buffer into CRAM
8095 043672 254 00 0 00 043700 JRST TFLOAE ; error - exit
8096 043673 254 00 0 00 043676 JRST TFLOAX ; already loaded - exit
8097 043674 260 17 0 00 044100 GO FVERFC ; verify CRAM against buffer
8098 043675 254 00 0 00 043700 JRST TFLOAE ; error - exit
8099 043676 350 00 0 17 000000 TFLOAX: AOS (P) ; set up proper return
8100 043677 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 186
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0361
8101
8102 ; Error loading operational microcode
8103
8104 043700 200 00 0 00 115063 TFLOAE: MOVE [TFLER3,,TFLER4]
8105 043701 474 15 0 00 000000 SETO ERFLG, ; set error flag
8106 043702 332 00 0 00 120741' SKIPE MDEBUG ; error message debug switch set?
8107 043703 350 00 0 17 000000 AOS (P) ; yes - skip this error
8108 043704 263 17 0 00 000000 RTN ; exit
8109
8110 ; Error message routines
8111
8112 043705 037 01 0 00 115064 TFLER1: FMSG <Can't access ">
8113 043706 200 00 0 00 044225 MOVE FNAME
8114 043707 037 01 0 00 000002 PNTSXF
8115 043710 037 01 0 00 000056 PNTCIF "."
8116 043711 200 00 0 00 044226 MOVE FNAME+1
8117 043712 037 01 0 00 000002 PNTSXF
8118 043713 037 01 0 00 115067 FMSG <" on selected load device>
8119 043714 263 17 0 00 000000 RTN
8120
8121 043715 037 00 0 00 115064 TFLER2: TMSG <Can't access ">
8122 043716 200 00 0 00 044225 MOVE FNAME
8123 043717 037 00 0 00 000002 PNTSIX
8124 043720 037 00 0 00 000056 PNTCI "."
8125 043721 200 00 0 00 044226 MOVE FNAME+1
8126 043722 037 00 0 00 000002 PNTSIX
8127 043723 037 00 0 00 115067 TMSG <" on selected load device>
8128 043724 263 17 0 00 000000 RTN
8129
8130 043725 037 01 0 00 115075 TFLER3: FMSG <Verify error loading ">
8131 043726 200 00 0 00 044225 MOVE FNAME
8132 043727 037 01 0 00 000002 PNTSXF
8133 043730 037 01 0 00 000056 PNTCIF "."
8134 043731 200 00 0 00 044226 MOVE FNAME+1
8135 043732 037 01 0 00 000002 PNTSXF
8136 043733 037 01 0 00 115102 FMSG <" into CRAM>
8137 043734 263 17 0 00 000000 RTN
8138
8139 043735 037 00 0 00 115075 TFLER4: TMSG <Verify error loading ">
8140 043736 200 00 0 00 044225 MOVE FNAME
8141 043737 037 00 0 00 000002 PNTSIX
8142 043740 037 00 0 00 000056 PNTCI "."
8143 043741 200 00 0 00 044226 MOVE FNAME+1
8144 043742 037 00 0 00 000002 PNTSIX
8145 043743 037 00 0 00 115102 TMSG <" into CRAM>
8146 043744 263 17 0 00 000000 RTN
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 187
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0362
8147
8148 ;#********************************************************************
8149 ;* FLOADB - Load operational microcode into buffer
8150 ;
8151 ; Data areas: UCODE - 4096 word buffer of opr ucode
8152 ; ULEN - number of uword used
8153 ; UNAME - name of ucode loaded
8154 ;
8155 ; FNAME - name of ucode desired
8156 ; FFLAG - output flag 0 - no operator output
8157 ; -1 - operator output is printed
8158 ;
8159 ; Return: +1 - Error occurred
8160 ; +2 - Load succeeded
8161 ; ULEN,UCODE,UNAME updated
8162 ;#********************************************************************
8163
8164 043745 261 17 0 00 000000 FLOADB: RPUT (0,1,2,3,4) ; save AC's
8165
8166 043752 200 00 0 00 044227 MOVE UNAME ; get microcode loaded name
8167 043753 312 00 0 00 044225 CAME FNAME ; same as desired?
8168 043754 254 00 0 00 043761 JRST FLODB0 ; no - must reload ucode
8169 043755 200 00 0 00 044230 MOVE UNAME+1 ; get microcode loaded extension
8170 043756 316 00 0 00 044226 CAMN FNAME+1 ; same as desired?
8171 043757 254 00 0 00 044021 JRST FLODBX ; yes - already loaded
8172 043760 402 00 0 00 044231 SETZM CNAME ; no - clear 'CRAM loaded' name
8173
8174 ; Must load microcode into buffer
8175
8176 043761 201 00 0 00 044225 FLODB0: MOVEI FNAME ; point to file name buffer
8177 043762 037 05 0 00 000004 FSELECT ; init the file
8178 JRST [SKIPN FFLAG ; error - print error message
8179 JRST FLODBE ; if operator output is
8180 FMSGC <? Can't access ">; desired, then exit
8181 MOVE FNAME
8182 PNTSXF
8183 PNTCIF "."
8184 MOVE FNAME+1
8185 PNTSXF
8186 FMSGD <" on selected load device.>
8187 043763 254 00 0 00 115111 JRST FLODBE]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 188
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0363
8188 043764 332 00 0 00 044232 SKIPE FFLAG ; print operator output?
8189 GO [TMSGC <[Reading file: > ; yes - print this
8190 MOVE FNAME
8191 PNTSIX
8192 PNTCI "."
8193 MOVE FNAME+1
8194 PNTSIX
8195 TMSGD <]>
8196 043765 260 17 0 00 115127 RTN]
8197 043766 402 00 0 00 044227 SETZM UNAME ; invalidate current contents
8198 043767 402 00 0 00 121013' SETZM UVERSN# ; invalidate current version number
8199 043770 201 04 0 00 044234 MOVEI 4,UCODE ; get buffer address
8200 043771 260 17 0 00 000000* FLODB1: GO FGETW ; get microcode entry
8201 043772 254 00 0 00 044007 JRST FLODB2 ; error/EOF occurred
8202 043773 403 01 0 00 000002 SETZB 1,2 ; clear AC's
8203 043774 200 00 0 00 035713 MOVE CADDR ; get address
8204 043775 137 00 0 00 113107 DPB [POINT 12,1,11] ; save in word 1
8205 043776 135 00 0 00 115137 LDB [POINT 24,CWORDL,29] ; get left 24 bits (0-23)
8206 043777 137 00 0 00 115140 DPB [POINT 24,1,35] ; save in word 1
8207 044000 135 00 0 00 115141 LDB [POINT 6,CWORDL,35] ; get left 24 bits (24-27)
8208 044001 137 00 0 00 115142 DPB [POINT 6,2,5] ; save in word 2
8209 044002 135 00 0 00 115143 LDB [POINT 30,CWORDR,35] ; get right 28 bits (0-27)
8210 044003 137 00 0 00 115144 DPB [POINT 30,2,35] ; save in word 2
8211 044004 124 01 0 04 000000 DMOVEM 1,(4) ; save data
8212 044005 271 04 0 00 000002 ADDI 4,2 ; point to next location
8213 044006 254 00 0 00 043771 JRST FLODB1 ; no - loop til done
8214
8215 ; Done loading ucode into buffer
8216
8217 044007 120 00 0 00 044225 FLODB2: DMOVE FNAME ; get name of microcode loaded
8218 044010 124 00 0 00 044227 DMOVEM UNAME ; save in actual name loaded
8219 044011 275 04 0 00 044234 SUBI 4,UCODE ; calculate length of ucode
8220 044012 242 04 0 00 777777 LSH 4,-1 ; divide by 2
8221 044013 202 04 0 00 044233 MOVEM 4,ULEN ; save it
8222 044014 332 00 0 00 044232 SKIPE FFLAG ; operator output desired?
8223 GO [TMSGC <[> ; yes - print message
8224 MOVE 4
8225 PNTDEC
8226 TMSGD <. microwords loaded]>
8227 044015 260 17 0 00 115152 RTN]
8228 044016 200 00 0 00 121005' MOVE TSLOAD ; get microcode loaded flag
8229 044017 306 00 0 00 000777 CAIN 777 ; operational microcode?
8230 044020 476 00 0 00 121005' SETOM TSLOAD ; yes - reset loaded flag
8231 044021 350 00 0 17 777773 FLODBX: AOS -5(P) ; set up good return
8232 044022 262 17 0 00 000004 FLODBE: RGET (4,3,2,1,0) ; restore AC's
8233
8234 044027 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 189
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0364
8235
8236 ;#********************************************************************
8237 ;* FLOADC - Load microcode buffer contents into the port
8238 ;
8239 ; Return: +1 - Error
8240 ; +2 - Already loaded
8241 ; +3 - Ok
8242 ;#********************************************************************
8243
8244 044030 261 17 0 00 000000 FLOADC: RPUT (0,1,2,3,4) ; save AC's
8245
8246 044035 336 00 0 00 044227 SKIPN UNAME ; any microcode loaded?
8247 JRST [SKIPE FFLAG ; no - return
8248 TMSGCD <? No microcode loaded yet>
8249 SOS -5(P)
8250 SOS -5(P)
8251 044036 254 00 0 00 115165 JRST FLODCX]
8252 044037 200 00 0 00 044227 MOVE UNAME ; get microcode name desired
8253 044040 316 00 0 00 044231 CAMN CNAME ; same as what is loaded?
8254 JRST [SKIPN FFLAG ; no - return
8255 JRST FLODCX
8256 TMSGC <[>
8257 MOVE UNAME ; message
8258 PNTSIX
8259 PNTCI "."
8260 MOVE UNAME+1
8261 PNTSIX
8262 TMSGD < already loaded]>
8263 SOS -5(P)
8264 044041 254 00 0 00 115172 JRST FLODCX]
8265 044042 332 00 0 00 044232 SKIPE FFLAG ; operator output desired?
8266 GO [TMSGC <[Loading > ; yes - print loading ucode
8267 MOVE UNAME ; message
8268 PNTSIX
8269 PNTCI "."
8270 MOVE UNAME+1
8271 PNTSIX
8272 TMSGD < into CRAM]>
8273 044043 260 17 0 00 115213 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 190
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0365
8274
8275 ; Go load the microcode
8276
8277 044044 200 03 0 00 044233 MOVE 3,ULEN ; get length of ucode
8278 044045 201 04 0 00 044234 MOVEI 4,UCODE ; get address of ucode buffer
8279 044046 261 17 0 00 034000 PUT PARFLG ; save auto parity flag
8280 044047 402 00 0 00 034000 SETZM PARFLG ; clear auto parity flag
8281 044050 120 01 0 04 000000 FLODC0: DMOVE 1,(4) ; get microword entry
8282 044051 135 00 0 00 113107 LDB [POINT 12,1,11] ; get CRAM address
8283 044052 202 00 0 00 035713 MOVEM CADDR ; save it
8284 044053 246 01 0 00 000006 LSHC 1,6 ; position correctly for 30 bits
8285 044054 135 00 0 00 113111 LDB [POINT 30,1,35] ; get left 30 bits
8286 044055 202 00 0 00 035714 MOVEM CWORDL ; save it
8287 044056 135 00 0 00 113110 LDB [POINT 30,2,29] ; get right 30 bits
8288 044057 622 00 0 00 000002 TRZE 2 ; bit 59 set?
8289 044060 660 00 0 00 000001 TRO 1 ; yes - set rightmost bit
8290 044061 202 00 0 00 035715 MOVEM CWORDR ; save it
8291 044062 260 17 0 00 036340 GO DWCRAM ; write CRAM word
8292 044063 271 04 0 00 000002 ADDI 4,2 ; point to next entry
8293 044064 367 03 0 00 044050 SOJG 3,FLODC0 ; loop till done
8294 044065 262 17 0 00 034000 GET PARFLG ; restore auto parity flag
8295 044066 200 00 0 00 044227 MOVE UNAME ; get name of ucode loaded
8296 044067 202 00 0 00 044231 MOVEM CNAME ; save name of ucode loaded
8297
8298 ; Exit
8299
8300 044070 262 17 0 00 000004 FLODCX: RGET (4,3,2,1,0) ; restore AC's
8301
8302 044075 350 00 0 17 000000 AOS (P) ; set up proper return
8303 044076 350 00 0 17 000000 AOS (P) ; set up proper return
8304 044077 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 191
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0366
8305
8306 ;#********************************************************************
8307 ;* FVERFC - Verify port microcode against buffer contents
8308 ;
8309 ; Data areas: UCODE - 4096 word buffer of opr ucode
8310 ; ULEN - number of uword used
8311 ; UNAME - name of ucode loaded
8312 ; UVERR - verify error count
8313 ; ECODE - up to 3 verify errors
8314 ;
8315 ; FFLAG - output flag 0 - no operator output
8316 ; -1 - operator output is printed
8317 ;
8318 ; Return: +1 - Verify error
8319 ; +2 - Verify succeeded
8320 ; UVERR,ECODE updated
8321 ;#********************************************************************
8322
8323 044100 261 17 0 00 000000 FVERFC: RPUT (0,1,2,3,4) ; save AC's
8324
8325 044105 336 00 0 00 044227 SKIPN UNAME ; any microcode loaded?
8326 JRST [SKIPE FFLAG ; no - return
8327 TMSGCD <? No microcode loaded into buffer yet>
8328 044106 254 00 0 00 115234 JRST FVERFE]
8329 044107 200 03 0 00 044233 MOVE 3,ULEN ; get length of ucode
8330 044110 201 04 0 00 044234 MOVEI 4,UCODE ; get address of ucode buffer
8331 044111 402 00 0 00 064234 SETZM UVERR ; clear verify error count
8332 044112 120 01 0 04 000000 FVERF0: DMOVE 1,(4) ; get microword entry
8333 044113 135 00 0 00 113107 LDB [POINT 12,1,11] ; get CRAM address
8334 044114 202 00 0 00 035713 MOVEM CADDR ; save it
8335 044115 246 01 0 00 000006 LSHC 1,6 ; position correctly for 30 bits
8336 044116 135 00 0 00 113111 LDB [POINT 30,1,35] ; get left 30 bits
8337 044117 202 00 0 00 120725' MOVEM DWORDL# ; save it
8338 044120 135 00 0 00 113110 LDB [POINT 30,2,29] ; get right 30 bits
8339 044121 622 00 0 00 000002 TRZE 2 ; bit 59 set?
8340 044122 660 00 0 00 000001 TRO 1 ; yes - set rightmost bit
8341 044123 202 00 0 00 120726' MOVEM DWORDR# ; save it
8342 044124 260 17 0 00 036372 GO DRCRAM ; read CRAM word
8343 044125 200 00 0 00 035714 MOVE CWORDL ; get left word
8344 044126 312 00 0 00 120725' CAME DWORDL ; correct?
8345 JRST [AOS 2,UVERR ; no - handle error
8346 CAILE 2,3 ; too many errors so far?
8347 JRST FVERF1 ; yes - don't save this one
8348 IMULI 2,5 ; no - multiply by 5
8349 MOVEI 2,ECODE-5(2) ; get address to save bad data
8350 MOVE CADDR ; get CRAM address
8351 MOVEM (2) ; save it
8352 DMOVE DWORDL ; get correct
8353 DMOVEM 1(2) ; save it
8354 DMOVE CWORDL ; get correct
8355 DMOVEM 3(2) ; save it
8356 044127 254 00 0 00 115237 JRST FVERF1]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 192
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0367
8357 044130 200 00 0 00 035715 MOVE CWORDR ; get right word
8358 044131 312 00 0 00 120726' CAME DWORDR ; correct?
8359 JRST [AOS 2,UVERR ; no - handle error
8360 CAILE 2,3 ; too many errors so far?
8361 JRST FVERF1 ; yes - don't save this one
8362 IMULI 2,5 ; no - multiply by 5
8363 MOVEI 2,ECODE-5(2) ; get address to save bad data
8364 MOVE CADDR ; get CRAM address
8365 MOVEM (2) ; save it
8366 DMOVE DWORDL ; get correct
8367 DMOVEM 1(2) ; save it
8368 DMOVE CWORDL ; get correct
8369 DMOVEM 3(2) ; save it
8370 044132 254 00 0 00 115237 JRST FVERF1]
8371 044133 271 04 0 00 000002 FVERF1: ADDI 4,2 ; point to next entry
8372 044134 367 03 0 00 044112 SOJG 3,FVERF0 ; loop till done
8373 044135 201 00 0 00 000137 MOVEI 137 ; read location 137 which contains
8374 044136 202 00 0 00 035713 MOVEM CADDR ; microcode version in MGC field
8375 044137 260 17 0 00 036372 GO DRCRAM ; bits 14-23
8376 044140 135 00 0 00 111140 LDB [POINT 10,CWORDL,29] ; get version number
8377 044141 202 00 0 00 121013' MOVEM UVERSN ; save it
8378 044142 332 00 0 00 064234 SKIPE UVERR ; any verify errors?
8379 044143 254 00 0 00 044147 JRST FVERFE ; yes - take error exit
8380 044144 332 00 0 00 044232 SKIPE FFLAG ; operator output desired?
8381 GO [TMSGC <[> ; yes - print message
8382 MOVE ULEN
8383 PNTDEC
8384 TMSGD <. CRAM locations loaded/verified]>
8385 TMSGC <[Ucode version >
8386 MOVE UVERSN ; get version number
8387 PNTOCS ; print it
8388 TMSGD <]>
8389 044145 260 17 0 00 115267 RTN]
8390 044146 350 00 0 17 777773 AOS -5(P) ; set up good return
8391 044147 262 17 0 00 000004 FVERFE: RGET (4,3,2,1,0) ; restore AC's
8392
8393 044154 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 193
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0368
8394
8395 ;#********************************************************************
8396 ;* FUERR - Print verify error data
8397 ;
8398 ; Data printed: UVERR - number of verify errors
8399 ; ECODE - correct/actual data for each error (up to 3)
8400 ;#********************************************************************
8401
8402 044155 336 00 0 00 064234 FUERR: SKIPN UVERR ; any verify errors?
8403 044156 263 17 0 00 000000 RTN ; no - return
8404 044157 261 17 0 00 000000 RPUT (0,1,2,3,4) ; save some AC's
8405
8406 044164 037 00 0 00 030242 PCRL ; start a new line
8407 044165 200 00 0 00 044233 MOVE ULEN
8408 044166 037 15 0 00 000000 PNTDEC
8409 044167 037 00 0 00 115300 TMSG <. CRAM locations loaded - >
8410 044170 200 00 0 00 064234 MOVE UVERR ; get number of errors
8411 044171 037 15 0 00 000000 PNTDEC ; print it
8412 044172 037 00 0 00 115306 TMSG <. verify errors:>
8413 044173 037 00 0 00 115312 TMSGC < Addr Correct Actual>
8414 044174 201 01 0 00 064235 MOVEI 1,ECODE ; get address of correct/actual data
8415 044175 200 04 0 00 064234 MOVE 4,UVERR ; get number of verify errors
8416 044176 303 04 0 00 000003 CAILE 4,3 ; more than 3 errors?
8417 044177 201 04 0 00 000003 MOVEI 4,3 ; yes - limit to 3
8418 044200 200 00 0 01 000000 FUERR0: MOVE (1) ; get CRAM address
8419 044201 037 00 0 00 112240 TMSGC < >
8420 044202 037 04 0 00 000000 PNT4 ; print it
8421 044203 037 00 0 00 112413 TMSG < >
8422 044204 120 02 0 01 000001 DMOVE 2,1(1) ; get left/right halves of correct
8423 044205 260 17 0 00 042365 GO PNTWD ; print it
8424 044206 037 00 0 00 112413 TMSG < >
8425 044207 120 02 0 01 000003 DMOVE 2,3(1) ; get left/right halves of actual
8426 044210 260 17 0 00 042365 GO PNTWD ; print it
8427 044211 271 01 0 00 000005 ADDI 1,5 ; point to next entry
8428 044212 367 04 0 00 044200 SOJG 4,FUERR0 ; loop till done
8429 044213 200 04 0 00 064234 MOVE 4,UVERR ; get error count
8430 044214 303 04 0 00 000003 CAILE 4,3 ; more than printed?
8431 044215 037 00 0 00 115324 TMSGC < ...> ; yes - indicate more
8432 044216 037 00 0 00 030242 PCRL
8433 044217 262 17 0 00 000004 RGET (4,3,2,1,0) ; restore AC's
8434
8435 044224 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 194
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0369
8436
8437 ;#********************************************************************
8438 ; Ucode data areas
8439 ;#********************************************************************
8440
8441 ; Microcode file name
8442
8443 044225 43 51 22 20 00 00 FNAME: SIXBIT /CI20/ ; operational microcode
8444 044226 65 54 44 00 00 00 SIXBIT /ULD/ ; file name
8445
8446 044227 000000 000000 UNAME: 0 ; name of actual microcode
8447 044230 000000 000000 0 ; loaded into buffer
8448 044231 000000 000000 CNAME: 0 ; name of actual ucode loaded into CRAM
8449
8450 044232 000000 000000 FFLAG: 0 ; operator output flag (0-N,-1-Y)
8451
8452 ; Microcode
8453
8454 044233 000000 000000 ULEN: 0 ; length of microcode
8455
8456 044234 UCODE: BLOCK ^D8192 ; microcode data area
8457
8458 ; Verify error data
8459
8460 064234 000000 000000 UVERR: 0 ; number of ucode verify errors
8461 064235 ECODE: BLOCK 3*5 ; verify error ucode data area
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 195
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0370
8462
8463 ;#********************************************************************
8464 ;* MLOADN - Load microcode and verify it (do not print errors)
8465 ;* MLOADY - Load microcode and verify it (print errors)
8466 ;
8467 ; Arguments: AC1 - Contains address where microcode starts
8468 ;
8469 ; Returns: MLNUM - Number of words loaded/verified
8470 ; +1 - Error occurred loading/verifying microcode
8471 ; +2 - Ok
8472 ;
8473 ; Microcode format: The microcode is given in 2 word segments
8474 ; (specifying address and 60 CRAM bits). The ucode is in a
8475 ; table beginning at the address given in AC1. The end of
8476 ; this table is indicated by a word containing -1.
8477 ;
8478 ; Microwords from another microcode list may be inserted by
8479 ; placing a two word entry within the table: -2 followed
8480 ; by the address of the new list.
8481 ;
8482 ; Word 1: Bits 00-11 - Microword load address (0000-7777)
8483 ; 12-35 - Bits 0-23 of microword to load
8484 ; Word 2: Bits 00-34 - Bits 24-57,59 of microword to load
8485 ; 35 ---- Force Bad Parity flag
8486 ;#********************************************************************
8487
8488 064254 402 00 0 00 120747' MLOADN: SETZM MVREP# ; clear print flag
8489 064255 334 00 0 00 000000 SKIPA ; continue
8490 064256 476 00 0 00 120747' MLOADY: SETOM MVREP ; set print flag
8491 064257 402 00 0 00 120745' SETZM MVFLAG# ; clear verify flag
8492 064260 260 17 0 00 064267 GO MVCOM ; load microcode
8493 064261 255 00 0 00 000000 JFCL ; error - ignore
8494 064262 476 00 0 00 120745' SETOM MVFLAG ; set verify flag
8495 064263 260 17 0 00 064267 GO MVCOM ; verify microcode
8496 064264 263 17 0 00 000000 RTN ; error - return
8497 064265 350 00 0 17 000000 AOS (P) ; set up proper return
8498 064266 263 17 0 00 000000 RTN ; return
8499
8500 064267 476 00 0 00 120746' MVCOM: SETOM MVNUM# ; init number of verify errors
8501 064270 402 00 0 00 120742' SETZM MLNUM# ; init number of words loaded
8502 064271 323 01 0 00 103535 JUMPLE 1,[RTN] ; exit if no microcode table specified
8503 064272 261 17 0 00 000000 RPUT (0,1,2,3,4) ; save some AC's
8504
8505 064277 200 04 0 00 000001 MOVE 4,1 ; get address of table in AC4
8506 064300 200 01 0 00 115326 MOVE 1,[MWBADR,,MWBADR+1] ; build a BLT pointer
8507 064301 476 00 0 00 064420 SETOM MWBADR ; initialize first word
8508 064302 251 01 0 00 064436 BLT 1,MWBRAC+2 ; initialize the rest
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 196
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0371
8509
8510 ; First stop the port and ensure 'DIAG TEST EBUF' is not set
8511
8512 064303 260 17 0 00 043661* GO ISTOP ; stop the port
8513 064304 260 17 0 00 000000* GO CLREBU ; ensure cleared
8514 064305 255 00 0 00 000000 JFCL ; ignore error
8515
8516 ; Load microwords
8517
8518 064306 200 02 0 04 000000 MLOAD0: MOVE 2,(4) ; get first word
8519 064307 316 02 0 00 111025 CAMN 2,[-1] ; end of list?
8520 064310 254 00 0 00 064406 JRST MLOADX ; yes - exit
8521 064311 402 00 0 00 044231 SETZM CNAME ; clear 'CRAM loaded' ucode flag
8522 064312 200 03 0 04 000001 MOVE 3,1(4) ; get second word
8523 064313 312 02 0 00 112101 CAME 2,[-2] ; subtable entry?
8524 064314 254 00 0 00 064330 JRST MLOAD1 ; no - go load word
8525
8526 ; Subtable entry
8527
8528 064315 271 04 0 00 000002 ADDI 4,2 ; point to next table entry
8529 064316 261 17 0 00 115327 PUT [MLOADR] ; set up return address
8530 064317 261 17 0 00 000000 RPUT (0,1,2,3,4) ; save AC's
8531
8532 064324 200 04 0 00 000003 MOVE 4,3 ; get table address
8533 064325 254 00 0 00 064306 JRST MLOAD0 ; reentrant call to load
8534 064326 255 00 0 00 000000 MLOADR: JFCL ; error - ignore
8535 064327 254 00 0 00 064306 JRST MLOAD0 ; continue
8536
8537 ; Load bits 0-29
8538
8539 064330 135 01 0 00 115330 MLOAD1: LDB 1,[POINT 12,2,11] ; get actual CRAM load address
8540 064331 202 01 0 00 035713 MOVEM 1,CADDR ; save address
8541 064332 242 01 0 00 000001 LSH 1,1 ; convert to address for RAR
8542 064333 660 01 0 00 000001 TRO 1,1 ; set bit 12 (for left 30 bits)
8543 064334 202 01 0 00 120776' MOVEM 1,SAVRAR# ; save address loaded
8544 064335 260 17 0 00 041133* GO LDRAR ; load RAR with it
8545
8546 064336 200 01 0 00 000003 MOVE 1,3 ; get word 2 (has 'bad parity' flag)
8547 064337 621 02 0 00 777700 TLZ 2,777700 ; now AC2 has CRAM bits 0-23
8548 064340 246 02 0 00 000006 LSHC 2,6 ; now get bits 0-30 in AC2 (left half)
8549 064341 242 03 0 00 777772 LSH 3,-6 ; right justify AC3 (right half)
8550 064342 622 03 0 00 000002 TRZE 3,2 ; bit 59 set?
8551 064343 660 03 0 00 000001 TRO 3,1 ; yes - set rightmost bit
8552 064344 260 17 0 00 042407 GO CALPAR ; calculate parity
8553 064345 200 01 0 00 000002 MOVE 1,2 ; get left 30 bits
8554 064346 336 00 0 00 120745' SKIPN MVFLAG ; load?
8555 064347 260 17 0 00 036364* GO LDCRAM ; yes - load it
8556 064350 332 00 0 00 120745' SKIPE MVFLAG ; verify?
8557 GO [GO RDCRAM ; yes - read CRAM
8558 MOVEM 1,CWORDL ; save it
8559 064351 260 17 0 00 115331 RTN]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 197
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0372
8560
8561 ; Load bits 30-59
8562
8563 064352 200 01 0 00 120776' MOVE 1,SAVRAR ; get RAR address (for left 30 bits)
8564 064353 620 01 0 00 000001 TRZ 1,1 ; clear bit 12 (for right 30 bits)
8565 064354 260 17 0 00 064335* GO LDRAR ; load address
8566 064355 200 01 0 00 000003 MOVE 1,3 ; get right 30 bits
8567 064356 336 00 0 00 120745' SKIPN MVFLAG ; load?
8568 064357 260 17 0 00 064347* GO LDCRAM ; yes - load it
8569 064360 336 00 0 00 120745' SKIPN MVFLAG ; load?
8570 064361 254 00 0 00 064403 JRST MLOAD2 ; yes - next location
8571 064362 260 17 0 00 036406* GO RDCRAM ; yes - read CRAM
8572 064363 202 01 0 00 035715 MOVEM 1,CWORDR ; save it
8573 064364 316 02 0 00 035714 CAMN 2,CWORDL ; valid data?
8574 064365 312 03 0 00 035715 CAME 3,CWORDR
8575 064366 334 00 0 00 000000 SKIPA ; no - continue
8576 064367 254 00 0 00 064403 JRST MLOAD2 ; yes - next location
8577 064370 350 01 0 00 120746' AOS 1,MVNUM ; get error count
8578 064371 303 01 0 00 000002 CAILE 1,2 ; more than 3 errors?
8579 064372 254 00 0 00 064403 JRST MLOAD2 ; yes - next location
8580 064373 200 00 0 00 035713 MOVE CADDR ; get address
8581 064374 202 00 0 01 064420 MOVEM MWBADR(1) ; save it
8582 064375 202 02 0 01 064423 MOVEM 2,MWBLCO(1) ; save left 30 bits (correct)
8583 064376 202 03 0 01 064431 MOVEM 3,MWBRCO(1) ; save right 30 bits (correct)
8584 064377 200 02 0 00 035714 MOVE 2,CWORDL ; get left 30 bits
8585 064400 202 02 0 01 064426 MOVEM 2,MWBLAC(1) ; save it (actual)
8586 064401 200 02 0 00 035715 MOVE 2,CWORDR ; get right 30 bits
8587 064402 202 03 0 01 064434 MOVEM 3,MWBRAC(1) ; save it (actual)
8588
8589 ; Point to next microword
8590
8591 064403 350 00 0 00 120742' MLOAD2: AOS MLNUM ; increment word count
8592 064404 271 04 0 00 000002 ADDI 4,2 ; increment by 2
8593 064405 254 00 0 00 064306 JRST MLOAD0 ; loop till done
8594
8595 ; Done - return count of words loaded
8596
8597 064406 337 00 0 00 120746' MLOADX: SKIPG MVNUM ; any verify errors?
8598 064407 350 00 0 17 777773 AOS -5(P) ; no - set up RTN+2
8599 064410 332 00 0 00 120747' SKIPE MVREP ; report errors?
8600 064411 260 17 0 00 064437 GO MVPNT ; yes - print errors
8601 064412 262 17 0 00 000004 RGET (4,3,2,1,0) ; restore AC's
8602
8603 064417 263 17 0 00 000000 RTN ; return
8604
8605 064420 MWBADR: BLOCK 3 ; CRAM addresses
8606 064423 MWBLCO: BLOCK 3 ; left correct
8607 064426 MWBLAC: BLOCK 3 ; left actual
8608 064431 MWBRCO: BLOCK 3 ; right correct
8609 064434 MWBRAC: BLOCK 3 ; right actual
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 198
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0373
8610
8611 ;#********************************************************************
8612 ;* MVPNT - Print verify error data
8613 ;#********************************************************************
8614
8615 064437 335 00 0 00 120746' MVPNT: SKIPGE MVNUM ; any errors to report?
8616 064440 263 17 0 00 000000 RTN ; no - return
8617 064441 261 17 0 00 000000 RPUT (0,1,2,3,4,5,6) ; save some AC's
8618
8619 064450 350 01 0 00 120746' AOS 1,MVNUM ; get correct error count 1..n
8620 064451 200 00 0 00 000001 MOVE 1
8621 064452 037 00 0 00 115334 TMSGC <? >
8622 064453 037 15 0 00 000000 PNTDEC ; print it
8623 064454 037 00 0 00 115335 TMSG <. CRAM verify errors:>
8624 064455 037 00 0 00 115342 TMSGC <Addr --- Correct --- --- Actual --- -- Discrepancy -->
8625 064456 400 04 0 00 000000 SETZ 4, ; pointer to error data
8626 064457 200 00 0 04 064420 MVPNT1: MOVE MWBADR(4) ; get address
8627 064460 037 00 0 00 030242 PCRL
8628 064461 037 04 0 00 000000 PNT4 ; print it
8629 064462 037 00 0 00 103540 TMSG < >
8630 064463 200 02 0 04 064423 MOVE 2,MWBLCO(4) ; get left half
8631 064464 200 03 0 04 064431 MOVE 3,MWBRCO(4) ; get right half
8632 064465 260 17 0 00 064516 GO MVPNTW ; print it
8633 064466 037 00 0 00 103540 TMSG < >
8634 064467 200 02 0 04 064426 MOVE 2,MWBLAC(4) ; get left half
8635 064470 200 03 0 04 064434 MOVE 3,MWBRAC(4) ; get right half
8636 064471 260 17 0 00 064516 GO MVPNTW ; print it
8637 064472 037 00 0 00 103540 TMSG < >
8638 064473 200 02 0 04 064423 MOVE 2,MWBLCO(4) ; get left half
8639 064474 430 02 0 04 064426 XOR 2,MWBLAC(4) ; xor actual data
8640 064475 200 03 0 04 064431 MOVE 3,MWBRCO(4) ; get right half
8641 064476 430 03 0 04 064434 XOR 3,MWBRAC(4) ; xor actual data
8642 064477 260 17 0 00 064516 GO MVPNTW ; print it
8643 064500 377 00 0 00 000001 SOSG 1 ; decrement error count - done?
8644 064501 254 00 0 00 064506 JRST MVPNTX ; yes - exit
8645 064502 350 00 0 00 000004 AOS 4 ; point to next word
8646 064503 305 04 0 00 000003 CAIGE 4,3 ; 3 printed already?
8647 064504 254 00 0 00 064457 JRST MVPNT1 ; no - loop till done
8648 064505 037 00 0 00 115324 TMSGC < ...>
8649 064506 262 17 0 00 000006 MVPNTX: RGET (6,5,4,3,2,1,0) ; yes - restore AC's
8650
8651 064515 263 17 0 00 000000 RTN ; return
8652
8653 064516 242 03 0 00 000006 MVPNTW: LSH 3,^D6 ; left justify the data
8654 064517 246 02 0 00 000006 LSHC 2,^D6 ; left justify both words
8655 064520 200 05 0 00 115360 MOVE 5,[POINT 3,2] ; initial byte pointer
8656 064521 201 06 0 00 000024 MOVEI 6,^D20 ; number of bytes to print
8657 064522 134 00 0 00 000005 ILDB 5 ; get byte
8658 064523 037 16 0 00 000003 PNTOCS ; print it
8659 064524 365 06 0 00 064522 SOJGE 6,.-2 ; loop till done
8660 064525 263 17 0 00 000000 RTN
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 199
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0374
8661
8662 ;#********************************************************************
8663 ;* MLIST - List microcode of a test
8664 ;#********************************************************************
8665
8666 064526 261 17 0 00 000000 MLIST: RPUT (0,1,2,3,4) ; save some AC's
8667
8668 064533 037 00 0 00 111637 TMSGC <ADDR/ JUMP PAR OUT MGC SOR FUN DES CC RAM PA PB SK BUS CRY CTL TM SP MK>
8669 064534 200 04 0 00 000001 MOVE 4,1 ; get address of table in AC4
8670 064535 200 02 0 04 000000 MLIST0: MOVE 2,(4) ; get first word
8671 064536 316 02 0 00 111025 CAMN 2,[-1] ; end of list?
8672 064537 254 00 0 00 064560 JRST MLISTX ; yes - exit
8673 064540 200 03 0 04 000001 MOVE 3,1(4) ; get second word
8674
8675 ; Print this CRAM entry
8676
8677 064541 037 00 0 00 030242 PCRL ; start a new line
8678 064542 135 00 0 00 115330 LDB [POINT 12,2,11] ; get cram load address
8679 064543 001 04 0 00 000000 PNTOCC 4,0 ; print it
8680 064544 037 00 0 00 111633 TMSG </ >
8681 064545 200 01 0 00 000003 MOVE 1,3 ; get word 2 (it has 'bad parity' flag)
8682 064546 135 02 0 00 115361 LDB 2,[POINT 24,2,35] ; get CRAM bits 0-23
8683 064547 246 02 0 00 000006 LSHC 2,6 ; now get bits 0-30 in AC2 (left half)
8684 064550 242 03 0 00 777772 LSH 3,-6 ; right justify AC3 (right half)
8685 064551 622 03 0 00 000002 TRZE 3,2 ; bit 59 set?
8686 064552 660 03 0 00 000001 TRO 3,1 ; yes - set rightmost bit
8687 064553 260 17 0 00 042407 GO CALPAR ; calculate parity
8688 064554 260 17 0 00 042271 GO PNTCRM ; print it
8689
8690 ; Point to next microword / Exit if Altmode typed / Exit when done
8691
8692 064555 271 04 0 00 000002 ADDI 4,2 ; increment by 2
8693 064556 336 00 0 00 120713' SKIPN ALTF ; altmode typed?
8694 064557 254 00 0 00 064535 JRST MLIST0 ; no - loop till done
8695 064560 037 00 0 00 030242 MLISTX: PCRL
8696 064561 262 17 0 00 000004 RGET (4,3,2,1,0) ; restore AC's
8697
8698 064566 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 200
DFCIA1 MAC 27-Oct-84 19:00 Microcode Handling Routines SEQ 0375
8699
8700 ;#********************************************************************
8701 ;* TLOAD - Load microcode/verify it for a test
8702 ;
8703 ; Arguments: AC1 - Contains address where microcode starts
8704 ;
8705 ; Function: Issue a port clear to the port to ensure it is stopped.
8706 ; Then call MLOADN to load the microcode, then call MVERFY
8707 ; to verify it. Abort on any error.
8708 ;
8709 ; Returns: +1 - Error occurred loading/verifying microcode
8710 ; +2 - Ok
8711 ;#********************************************************************
8712
8713 064567 332 00 0 00 120737' TLOAD: SKIPE LDEBUG ; ucode load debug switch set?
8714 064570 254 00 0 00 064577 JRST TLOADX ; yes - don't load ucode
8715 064571 316 01 0 00 121005' CAMN 1,TSLOAD ; already loaded?
8716 064572 254 00 0 00 064577 JRST TLOADX ; yes - don't load ucode
8717
8718 064573 260 17 0 00 043032* GO IPACLR ; do a 'port clear'
8719 064574 260 17 0 00 064254 GO MLOADN ; load it
8720 064575 254 00 0 00 064601 JRST TLOADE ; failed
8721 064576 202 01 0 00 121005' MOVEM 1,TSLOAD ; save microcode address
8722 064577 350 00 0 17 000000 TLOADX: AOS (P) ; set up RTN +2
8723 064600 263 17 0 00 000000 RTN ; exit
8724
8725 064601 474 15 0 00 000000 TLOADE: SETO ERFLG, ; set error flag
8726 064602 027 00 0 00 064610 SCOPER TLERR ; print error message
8727 064603 255 00 0 00 000000 JFCL ; don't allow test looping
8728 064604 255 00 0 00 000000 JFCL ; ignore altmode
8729 064605 332 00 0 00 120741' SKIPE MDEBUG ; error message debug switch set?
8730 064606 350 00 0 17 000000 AOS (P) ; yes - skip this error
8731 064607 263 17 0 00 000000 RTN ; exit
8732
8733 064610 160000 115362 TLERR: MSG!TXALL![ASCIZ /Error loading test microcode - test aborted./]
8734 064611 270000 064437 LAST!CALL!TXALL!MVPNT ; print verify errors
8735
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 201
DFCIA1 MAC 27-Oct-84 19:00 CI Initialization Routines SEQ 0376
8736 SUBTTL CI Initialization Routines
8737
8738 ;#********************************************************************
8739 ;* TPCB - Set up initial PCB
8740 ;#********************************************************************
8741
8742 064612 261 17 0 00 000000 TPCB: RPUT (0,1,2,3,4) ; save AC's
8743
8744 064617 260 17 0 00 064303* GO ISTOP ; stop the port
8745
8746 ; Initialize the PCB
8747
8748 064620 200 00 0 00 115373 TPCB0: MOVE [IPCB,,PCB] ; build a BLT pointer
8749 064621 251 00 0 00 070046 BLT PCB+^D38 ; transfer the data
8750 064622 332 00 0 00 030037 SKIPE USER ; user mode?
8751 064623 402 00 0 00 070043 SETZM PCBPI ; yes - clear PI word
8752
8753 ; Set up the message free queue
8754
8755 064624 402 00 0 00 071447 SETZM MGSTAR ; clear first word
8756 064625 200 00 0 00 115374 MOVE [MGSTAR,,MGSTAR+1] ; build a BLT pointer
8757 064626 251 00 0 00 073446 BLT MGEND ; clear the buffer
8758 064627 120 00 0 00 115375 DMOVE [EXP QFMG2,MFREE] ; get 1st entry
8759 064630 124 00 0 00 071447 DMOVEM QFMG1 ; set it up
8760 064631 120 00 0 00 115377 DMOVE [EXP QFMG3,QFMG1] ; get 2nd entry
8761 064632 124 00 0 00 072047 DMOVEM QFMG2 ; set it up
8762 064633 120 00 0 00 115401 DMOVE [EXP QFMG4,QFMG2] ; get 3rd entry
8763 064634 124 00 0 00 072447 DMOVEM QFMG3 ; set it up
8764 064635 120 00 0 00 115376 DMOVE [EXP MFREE,QFMG3] ; get 4th entry
8765 064636 124 00 0 00 073047 DMOVEM QFMG4 ; set it up
8766
8767 ; Set up the datagram free queue
8768
8769 064637 402 00 0 00 073447 SETZM DGSTAR ; clear first word
8770 064640 200 00 0 00 115403 MOVE [DGSTAR,,DGSTAR+1] ; build a BLT pointer
8771 064641 251 00 0 00 100446 BLT DGEND ; clear the buffer
8772 064642 120 00 0 00 115404 DMOVE [EXP QFDG2,DFREE] ; get 1st entry
8773 064643 124 00 0 00 073447 DMOVEM QFDG1 ; set it up
8774 064644 120 00 0 00 115406 DMOVE [EXP QFDG3,QFDG1] ; get 2nd entry
8775 064645 124 00 0 00 074047 DMOVEM QFDG2 ; set it up
8776 064646 120 00 0 00 115410 DMOVE [EXP QFDG4,QFDG2] ; get 3rd entry
8777 064647 124 00 0 00 074447 DMOVEM QFDG3 ; set it up
8778 064650 120 00 0 00 115412 DMOVE [EXP QFDG5,QFDG3] ; get 4th entry
8779 064651 124 00 0 00 075047 DMOVEM QFDG4 ; set it up
8780 064652 120 00 0 00 115414 DMOVE [EXP QFDG6,QFDG4] ; get 5th entry
8781 064653 124 00 0 00 075447 DMOVEM QFDG5 ; set it up
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 202
DFCIA1 MAC 27-Oct-84 19:00 CI Initialization Routines SEQ 0377
8782 064654 120 00 0 00 115416 DMOVE [EXP QFDG7,QFDG5] ; get 6th entry
8783 064655 124 00 0 00 076047 DMOVEM QFDG6 ; set it up
8784 064656 120 00 0 00 115420 DMOVE [EXP QFDG10,QFDG6] ; get 7th entry
8785 064657 124 00 0 00 076447 DMOVEM QFDG7 ; set it up
8786 064660 120 00 0 00 115422 DMOVE [EXP QFDG11,QFDG7] ; get 8th entry
8787 064661 124 00 0 00 077047 DMOVEM QFDG10 ; set it up
8788 064662 120 00 0 00 115424 DMOVE [EXP QFDG12,QFDG10] ; get 9th entry
8789 064663 124 00 0 00 077447 DMOVEM QFDG11 ; set it up
8790 064664 120 00 0 00 115426 DMOVE [EXP DFREE,QFDG11] ; get 10th entry
8791 064665 124 00 0 00 100047 DMOVEM QFDG12 ; set it up
8792
8793 ; Next convert all of the virtual addresses to physical
8794
8795 064666 474 03 0 00 000000 SETO 3, ; initialize pointer to list
8796 064667 350 00 0 00 000003 TPCB1: AOS 3 ; point to next address
8797 064670 336 01 0 03 064774 SKIPN 1,ADRVIR(3) ; done yet?
8798 064671 254 00 0 00 064677 JRST TPCB2 ; yes - continue
8799 064672 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
8800 064673 257 01 0 01 000000 MAP 1,(1) ; no - map to physical
8801 064674 621 01 0 00 777000 TLZ 1,777000 ; get rid of extraneous bits
8802 064675 202 01 0 03 065023 MOVEM 1,ADRPHY(3) ; save physical address
8803 064676 254 00 0 00 064667 JRST TPCB1 ; loop till done
8804
8805 ; Finally, ensure that each address in all of the queues is indeed
8806 ; a physical address
8807
8808 064677 474 03 0 00 000000 TPCB2: SETO 3, ; initialize address pointer
8809 064700 350 00 0 00 000003 TPCB3: AOS 3 ; point to next address
8810 064701 336 02 0 03 064717 SKIPN 2,ADRQUE(3) ; get location of address - zero?
8811 064702 254 00 0 00 064711 JRST TPCBX ; yes - exit
8812 064703 200 01 0 02 000000 MOVE 1,(2) ; get address in that location
8813 064704 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
8814 064705 257 01 0 01 000000 MAP 1,(1) ; no - map to physical
8815 064706 621 01 0 00 777000 TLZ 1,777000 ; get rid of extraneous bits
8816 064707 202 01 0 02 000000 MOVEM 1,(2) ; save physical address
8817 064710 254 00 0 00 064700 JRST TPCB3 ; loop till done
8818
8819 ; Done - exit
8820
8821 064711 262 17 0 00 000004 TPCBX: RGET (4,3,2,1,0) ; restore AC's
8822
8823 064716 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 203
DFCIA1 MAC 27-Oct-84 19:00 CI Initialization Routines SEQ 0378
8824
8825 ; Table of locations, the contents of which contain virtual
8826 ; addresses, which must be translated to physical
8827
8828 064717 000000 070000 ADRQUE: EXP PCB,PCB+5,PCB+6,PCB+10,PCB+11,PCB+13,PCB+14
8829 064720 000000 070005
8830 064721 000000 070006
8831 064722 000000 070010
8832 064723 000000 070011
8833 064724 000000 070013
8834 064725 000000 070014
8835 064726 000000 070016 EXP PCB+16,PCB+17,PCB+21,PCB+22,PCB+24,PCB+25
8836 064727 000000 070017
8837 064730 000000 070021
8838 064731 000000 070022
8839 064732 000000 070024
8840 064733 000000 070025
8841 064734 000000 070027 EXP PCB+27,PCB+30,PCB+42
8842 064735 000000 070030
8843 064736 000000 070042
8844 064737 000000 071447 EXP QFMG1,QFMG1+1,QFMG2,QFMG2+1,QFMG3,QFMG3+1,QFMG4,QFMG4+1
8845 064740 000000 071450
8846 064741 000000 072047
8847 064742 000000 072050
8848 064743 000000 072447
8849 064744 000000 072450
8850 064745 000000 073047
8851 064746 000000 073050
8852 064747 000000 073447 EXP QFDG1,QFDG1+1,QFDG2,QFDG2+1,QFDG3,QFDG3+1,QFDG4,QFDG4+1
8853 064750 000000 073450
8854 064751 000000 074047
8855 064752 000000 074050
8856 064753 000000 074447
8857 064754 000000 074450
8858 064755 000000 075047
8859 064756 000000 075050
8860 064757 000000 075447 EXP QFDG5,QFDG5+1,QFDG6,QFDG6+1,QFDG7,QFDG7+1,QFDG10,QFDG10+1
8861 064760 000000 075450
8862 064761 000000 076047
8863 064762 000000 076050
8864 064763 000000 076447
8865 064764 000000 076450
8866 064765 000000 077047
8867 064766 000000 077050
8868 064767 000000 077447 EXP QFDG11,QFDG11+1,QFDG12,QFDG12+1
8869 064770 000000 077450
8870 064771 000000 100047
8871 064772 000000 100050
8872 064773 000000 000000 0
8873
8874 ; Table of virtual addresses
8875
8876 064774 000000 070000 ADRVIR: EXP PCB,PCB+5,PCB+10,PCB+13,PCB+16,PCB+21,MFREE,DFREE
8877 064775 000000 070005
8878 064776 000000 070010
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 203-1
DFCIA1 MAC 27-Oct-84 19:00 CI Initialization Routines SEQ 0379
8879 064777 000000 070013
8880 065000 000000 070016
8881 065001 000000 070021
8882 065002 000000 070024
8883 065003 000000 070027
8884 065004 000000 071447 EXP QFMG1,QFMG2,QFMG3,QFMG4,QFDG1,QFDG2,QFDG3
8885 065005 000000 072047
8886 065006 000000 072447
8887 065007 000000 073047
8888 065010 000000 073447
8889 065011 000000 074047
8890 065012 000000 074447
8891 065013 000000 075047 EXP QFDG4,QFDG5,QFDG6,QFDG7,QFDG10,QFDG11,QFDG12
8892 065014 000000 075447
8893 065015 000000 076047
8894 065016 000000 076447
8895 065017 000000 077047
8896 065020 000000 077447
8897 065021 000000 100047
8898 065022 000000 000000 0
8899
8900 ; Table of physical addresses
8901
8902 065023 000000 070000 ADRPHY: EXP PCB,PCB+5,PCB+10,PCB+13,PCB+16,PCB+21,MFREE,DFREE
8903 065024 000000 070005
8904 065025 000000 070010
8905 065026 000000 070013
8906 065027 000000 070016
8907 065030 000000 070021
8908 065031 000000 070024
8909 065032 000000 070027
8910 065033 000000 071447 EXP QFMG1,QFMG2,QFMG3,QFMG4,QFDG1,QFDG2,QFDG3
8911 065034 000000 072047
8912 065035 000000 072447
8913 065036 000000 073047
8914 065037 000000 073447
8915 065040 000000 074047
8916 065041 000000 074447
8917 065042 000000 075047 EXP QFDG4,QFDG5,QFDG6,QFDG7,QFDG10,QFDG11,QFDG12
8918 065043 000000 075447
8919 065044 000000 076047
8920 065045 000000 076447
8921 065046 000000 077047
8922 065047 000000 077447
8923 065050 000000 100047
8924 065051 000000 000000 0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 204
DFCIA1 MAC 27-Oct-84 19:00 CI Initialization Routines SEQ 0380
8925
8926 ;#********************************************************************
8927 ;* TIDLE - Start the port and wait for IDLE bit to set in CSR
8928 ;
8929 ; Return: +1 - Error - never reached idle loop
8930 ; +2 - Succeeded
8931 ;#********************************************************************
8932
8933 065052 261 17 0 00 000000 TIDLE: RPUT (0,1,2) ; save AC's
8934
8935 065055 260 17 0 00 064573* GO IPACLR ; clear port
8936
8937 ; Set up initial CCW list
8938
8939 065056 260 17 0 00 034101* GO CHINIT ; initialize software
8940
8941 ; Start it up
8942
8943 065057 400 01 0 00 000000 SETZ 1, ; clear data
8944 065060 260 17 0 00 064354* GO LDRAR ; clear RAR contents
8945 065061 201 01 0 00 000010 MOVEI 1,MPRUN ; get 'MPRun' bit
8946 065062 336 00 0 00 030037 SKIPN USER ; user mode?
8947 065063 660 01 0 00 000004 TRO 1,4 ; no - set PIA bits
8948 065064 260 17 0 00 043663* GO LDCSR ; start up the port
8949 065065 005 00 0 00 000144 DELAY ^D100 ; wait 100 milliseconds
8950 065066 260 17 0 00 042773* GO RDCSR ; read CSR register
8951 065067 254 00 0 00 065072 JRST TIDLEE ; error - exit
8952 065070 602 01 0 00 000010 TRNE 1,MPRUN ; still running?
8953 065071 350 00 0 17 777775 AOS -3(P) ; yes - set up proper return
8954 065072 262 17 0 00 000002 TIDLEE: RGET (2,1,0) ; restore AC's
8955
8956 065075 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 205
DFCIA1 MAC 27-Oct-84 19:00 CI Initialization Routines SEQ 0381
8957
8958 ;#********************************************************************
8959 ;* RDNODE - Read our node number
8960 ;
8961 ; Arguments: None
8962 ;
8963 ; Returns: +1 - Failed
8964 ; +2 - Succeeded, AC1 contains node number
8965 ;#********************************************************************
8966
8967 065076 261 17 0 00 000000 RDNODE: RPUT (0,2,3) ; save AC's
8968
8969
8970 ; Save CRAM locations
8971
8972 065101 200 01 0 00 115430 MOVE 1,[-^D8,,7750] ; set up AOBJN word
8973 065102 260 17 0 00 042566 GO SAVCRM ; save the CRAM locations
8974
8975 ; Now load microcode and start the port
8976
8977 065103 201 01 0 00 065133 MOVEI 1,RDMIC ; set up microcode address
8978 065104 260 17 0 00 064254 GO MLOADN ; load/verify it
8979 065105 254 00 0 00 065127 JRST RDNODX ; ignore error
8980 065106 201 01 0 00 007750 MOVEI 1,7750 ; get start address
8981 065107 242 01 0 00 000001 LSH 1,1 ; position correctly
8982 065110 260 17 0 00 065060* GO LDRAR ; load the register
8983 065111 201 01 0 00 000010 MOVEI 1,MPRUN ; no - set initial data
8984 065112 260 17 0 00 065064* GO LDCSR
8985
8986 ; Wait a bit and read node address
8987
8988 065113 005 00 0 00 000001 DELAY 1 ; wait 1 millisecond
8989 065114 201 01 0 00 200000 MOVEI 1,TSTEBF ; set up to read EBUF
8990 065115 260 17 0 00 065112* GO LDCSR ; stop the port
8991 065116 260 17 0 00 040244* GO RDEBUF ; read EBUF
8992 065117 405 01 0 00 000377 ANDI 1,377 ; mask out unused bits
8993 065120 202 01 0 00 034013 MOVEM 1,CPORT ; save our port number
8994 065121 335 00 0 00 034012 SKIPGE SPORT ; our port number initialized yet?
8995 065122 202 01 0 00 034012 MOVEM 1,SPORT ; no - initialize it for SET cmd
8996
8997 ; Restore CRAM locations and exit
8998
8999 065123 200 01 0 00 115430 MOVE 1,[-^D8,,7750] ; set up AOBJN word
9000 065124 260 17 0 00 042610 GO RESCRM ; restore CRAM data
9001
9002 ; Exit
9003
9004 065125 350 00 0 17 777775 AOS -3(P) ; set up proper return
9005 065126 200 01 0 00 034013 MOVE 1,CPORT ; get port number
9006 065127 262 17 0 00 000003 RDNODX: RGET (3,2,0) ; restore AC's
9007
9008 065132 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 206
DFCIA1 MAC 27-Oct-84 19:00 CI Initialization Routines SEQ 0382
9009
9010 ;#********************************************************************
9011 ; RDMIC - Read node address register
9012 ;#********************************************************************
9013
9014 ; Select maintenance mode
9015
9016 065133 775077 510214 RDMIC: MWORD <ADDR=7750,JMAP,J=7751,SD0,OR,D=2,SKCN,MGC=214> ; 7750
9017 065134 732000 240040
9018 065135 775100 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 7751
9019 065136 431000 002340
9020 065137 775200 070274 MWORD <LDCT,J=7,SELP,MGC=274> ; 7752
9021 065140 000000 001300
9022 065141 775377 530000 MWORD <RPCT,J=7753,S0A,AND,D=2> ; 7753
9023 065142 442000 000220
9024
9025 ; Read node address
9026
9027 065143 775400 000332 MWORD <CONT,S0B,AND,D=2,SELP,MGC=332> ; 7754
9028 065144 342000 001340
9029 065145 775500 000300 MWORD <CONT,SD0,OR,D=2,SELM,MGC=300> ; 7755
9030 065146 732000 002340
9031 065147 775600 002004 MWORD <CONT,S0A,OR,D=1,OENA,SELE,MGC=4> ; 7756
9032 065150 431000 005340
9033 065151 775777 570000 MWORD <JMAP,J=7757> ; 7757
9034 065152 000000 000040
9035 065153 777777 777777 -1
9036
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 207
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0383
9037 SUBTTL Packet Handling Routines
9038
9039 ;#********************************************************************
9040 ; Routines for building packets, etc:
9041 ;
9042 ; BPACK - Build a packet
9043 ; ITEXT - get text length + text
9044 ; ICRC - get text len + text + CRC
9045 ; IREGW - Set up to write a register
9046 ; IREGR - Set up to read a register
9047 ;
9048 ; RWAIT - Wait for a response (by CSR bit 'RspQAvail' bit being set.
9049 ; INSQUE - Insert a packet into a queue
9050 ; CHKRSP - Check if a response queue entry
9051 ; CHKINT - Check/set up interlock for queue
9052 ; CONVIR - Convert physical address to virtual
9053 ; GETQUE - Remove a queue entry from the beginning of a queue
9054 ; SHUTRQ - Turn off RESQAV bit in CSR register
9055 ;
9056 ; Arguments: OP - Contains the op code
9057 ; TFMFLG - Format flag (0-COMPAT,1-HIDEN)
9058 ; TRSFLG - Response packet is requested flag (0-no,1-yes)
9059 ; TPTFLG - Path select flag (0-Auto,1-Path1,2-Path2)
9060 ; TXCTID - Contains the transaction ID to use
9061 ; TDPORT - Destination port
9062 ; TBYTE - Length of text portion (in bytes)
9063 ; TPAT - Data pattern
9064 ; TREGN - Register number (to read or write)
9065 ; TREGD - Register data (read or written)
9066 ;#********************************************************************
9067
9068 065154 000000 000000 TFMFLG: 0 ; format flag (0-COMPAT,1-HIDEN)
9069 065155 000000 000000 TRSFLG: 0 ; response packet requested flag (0-no,1-yes)
9070 065156 000000 000000 TPTFLG: 0 ; path select flag (0-Auto,1-Path1,2-Path2)
9071 065157 000000 000000 TXCTID: 0 ; contains the transaction ID to use
9072 065160 000000 000000 0
9073 065161 000000 000000 TDPORT: 0 ; destination port
9074 065162 000000 000000 TBYTE: 0 ; length of text portion (in bytes)
9075 065163 000000 000000 TWORD: 0 ; calculated text length (in words)
9076 065164 000000 000000 TPAT: 0 ; data pattern
9077 065165 000000 000000 TREGN: 0 ; register number (to read or write)
9078 065166 000000 000000 TREGD: 0 ; register data (read or written)
9079 065167 000000 000000 TREGDC: 0 ; register data correct
9080 065170 000000 000000 TREGDA: 0 ; register data actual
9081 065171 000000 000000 TREGCF: 0 ; data compare flag (0-no,1-yes)
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 208
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0384
9082
9083 ;#********************************************************************
9084 ;* BPACK - Build a packet
9085 ;#********************************************************************
9086
9087 065172 476 00 0 00 120735' BPACKN: SETOM INHCRC# ; set 'inhibit CRC calc' flag
9088 065173 334 00 0 00 000000 SKIPA ; continue
9089 065174 402 00 0 00 120735' BPACK: SETZM INHCRC ; clear 'inhibit CRC calc' flag
9090 065175 261 17 0 00 000000 RPUT (0,1,2) ; save AC's
9091
9092
9093 ; Initialize packet to 0's
9094
9095 065200 402 00 0 00 070047 SETZM PACKET ; clear first word
9096 065201 200 00 0 00 115431 MOVE [PACKET,,PACKET+1] ; build BLT pointer
9097 065202 251 00 0 00 070446 BLT PACKET+^D255 ; clear the packet buffer
9098
9099 ; Get flags/put in packet
9100
9101 065203 400 01 0 00 000000 SETZ 1, ; initialize flags
9102 065204 332 00 0 00 065154 SKIPE TFMFLG ; HIDEN format?
9103 065205 661 01 0 00 001000 TLO 1,1000 ; yes - set HIDEN flag
9104 065206 200 00 0 00 065156 MOVE TPTFLG ; get path select bits
9105 065207 137 00 0 00 115432 DPB [POINT 2,1,14] ; save them
9106 065210 332 00 0 00 065155 SKIPE TRSFLG ; always generate response?
9107 065211 661 01 0 00 000004 TLO 1,4 ; yes - set response flag
9108 065212 436 01 0 00 070052 IORM 1,PACKET+3 ; store in packet
9109
9110 ; Get destination port/put in packet
9111
9112 065213 200 00 0 00 065161 MOVE TDPORT ; get port number
9113 065214 242 00 0 00 000004 LSH 4 ; position properly
9114 065215 436 00 0 00 070052 IORM PACKET+3 ; save in packet
9115
9116 ; Get transaction ID/put in packet
9117
9118 065216 201 02 0 00 070053 MOVEI 2,PACKET+4 ; get address of XCTID in packet
9119 065217 306 11 0 00 000007 CAIN OP,SNDSTR ; SNDSTRT packet?
9120 065220 350 00 0 00 000002 AOS 2 ; yes - XCTID goes in next word
9121 065221 200 01 0 00 065157 MOVE 1,TXCTID ; get word 1
9122 065222 202 01 0 02 000000 MOVEM 1,(2) ; save it
9123 065223 200 01 0 00 065160 MOVE 1,TXCTID+1 ; get word 2
9124 065224 202 01 0 02 000001 MOVEM 1,1(2) ; save it
9125
9126 ; Insert op code
9127
9128 065225 260 17 0 00 067212 GO DECOPC ; decode opcode
9129 065226 201 01 0 00 000040 MOVEI 1,40 ; error - use offset of 40
9130 065227 137 11 0 00 114435 DPB OP,[POINT 8,PACKET+3,23]; insert op code
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 209
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0385
9131
9132 ; Get miscellaneous data
9133
9134 XCT [GO ITEXT ; 0-SNDDG - get text length + text
9135 GO ITEXT ; 1-SNDMSG - get text length + text
9136 JFCL ; 2-REQID
9137 JFCL ; 3-SNDRST
9138 JFCL ; 4-SDNSTRT
9139 JFCL ; 5-REQDAT0
9140 JFCL ; 6-REQDAT1
9141 JFCL ; 7-REQDAT2
9142 GO ICRC ; 10-SNDLB - get text len + text + CRC
9143 JFCL ; 11-REQMDAT
9144 JFCL ; 12-SNDDAT
9145 JFCL ; 13-RETDAT
9146 JFCL ; 14-SNTMDAT
9147 JFCL ; 15-CLSBUF
9148 JFCL ; 16-SETCKT
9149 JFCL ; 17-SETCNT
9150 JFCL ; 20-RDCNT
9151 GO IREGR ; 21-RDREG - get register
9152 GO IREGW ; 22-WRREG - get register/data
9153 JFCL ; 23
9154 JFCL ; 24
9155 JFCL ; 25
9156 JFCL ; 26
9157 JFCL ; 27
9158 JFCL ; 30
9159 JFCL ; 31
9160 JFCL ; 32
9161 JFCL ; 33
9162 JFCL ; 34
9163 JFCL ; 35
9164 JFCL ; 36
9165 JFCL ; 37
9166 065230 256 00 0 01 115433 JFCL](1) ; 40
9167 065231 262 17 0 00 000002 RGET (2,1,0) ; restore AC's
9168
9169 065234 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 210
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0386
9170
9171 ;#********************************************************************
9172 ;* ITEXT - get text length + text
9173 ;
9174 ; The text length is given either as byte count (in TBYTE) or as a
9175 ; word count (in TWORD). The one not given is calculated based on
9176 ; packet format.
9177 ;#********************************************************************
9178
9179 065235 261 17 0 00 000000 ITEXT: RPUT (0,1,2,3) ; save AC's
9180
9181 065241 332 00 0 00 065162 SKIPE TBYTE ; byte count given?
9182 065242 254 00 0 00 065252 JRST ITEXT0 ; yes - continue
9183 065243 200 00 0 00 065163 MOVE TWORD ; no - get word count
9184 065244 242 00 0 00 000002 LSH 2 ; multiply by 4
9185 065245 332 00 0 00 065154 SKIPE TFMFLG ; HIDEN format?
9186 GO [LSH -3 ; divide by 8
9187 IMULI 9 ; multiply by 9
9188 065246 260 17 0 00 115474 RTN]
9189 065247 202 00 0 00 065162 MOVEM TBYTE ; save byte count
9190 065250 200 00 0 00 065163 MOVE TWORD ; get word count
9191 065251 254 00 0 00 065260 JRST ITEXT1 ; continue
9192 065252 200 00 0 00 065162 ITEXT0: MOVE TBYTE ; get length in bytes
9193 065253 332 00 0 00 065154 SKIPE TFMFLG ; HIDEN format?
9194 JRST [LSH 1 ; yes - multiply by 2 and
9195 IDIVI 9 ; divide by 9 to calculate
9196 SKIPE 1 ; word count - and ensure
9197 AOS ; that it is an even number
9198 TRZ 1 ; of words
9199 065254 254 00 0 00 115477 JRST ITEXT1]
9200 065255 231 00 0 00 000004 IDIVI 4 ; COMPAT - calculate word count
9201 065256 332 00 0 00 000001 SKIPE 1 ; remainder?
9202 065257 350 00 0 00 000000 AOS ; yes - increment word count
9203 065260 303 00 0 00 000372 ITEXT1: CAILE ^D250 ; word count in proper range?
9204 065261 201 00 0 00 000372 MOVEI ^D250 ; no - limit to maximum length
9205 065262 302 11 0 00 000015 CAIE OP,SNDLB ; loopback packet?
9206 065263 254 00 0 00 065266 JRST ITEXT2 ; no - continue
9207 065264 303 00 0 00 000370 CAILE ^D248 ; yes - maximum is 248 words - over?
9208 065265 201 00 0 00 000370 MOVEI ^D248 ; yes - limit to maximum length
9209 065266 202 00 0 00 065163 ITEXT2: MOVEM TWORD ; save word count
9210 065267 200 14 0 00 065164 MOVE PAT,TPAT ; get data pattern
9211 065270 200 02 0 00 065163 MOVE 2,TWORD ; word length
9212 065271 201 03 0 00 070054 MOVEI 3,PACKET+5 ; buffer address
9213 065272 260 17 0 00 000000* GO BUFGEN ; generate buffer contents
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 211
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0387
9214 065273 332 00 0 00 065154 SKIPE TFMFLG ; HIDEN format?
9215 JRST [LSH 2,-1 ; yes - calculate byte count
9216 IMULI 2,9
9217 065274 254 00 0 00 115505 JRST ITEXT3]
9218 065275 221 02 0 00 000004 IMULI 2,4 ; no - calculate byte count
9219 065276 202 02 0 00 070053 ITEXT3: MOVEM 2,PACKET+4 ; save in packet
9220 065277 202 02 0 00 065162 MOVEM 2,TBYTE ; save byte count
9221 065300 306 11 0 00 000001 CAIN OP,1 ; datagram?
9222 GO [MOVE 1,TWORD ; yes - eliminate unused portion
9223 MOVE 2,PACKET+4(1) ; of last word
9224 AND 2,[777774,,0]
9225 MOVEM 2,PACKET+4(1)
9226 065301 260 17 0 00 115511 RTN]
9227
9228 ; Exit after testing for additional routine
9229
9230 065302 332 00 0 00 121011' SKIPE TXADDL ; routine specified for addl data?
9231 065303 260 17 1 00 121011' GO @TXADDL ; yes - call it
9232 065304 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
9233
9234 065310 263 17 0 00 000000 RTN ; return
9235
9236
9237 ;#********************************************************************
9238 ;* ICRC - get text len + text + CRC
9239 ;#********************************************************************
9240
9241 065311 402 00 0 00 000000* ICRC: SETZM CRCSAV ; clear saved CRC data
9242 065312 476 00 0 00 000000* SETOM CRCOFF ; init CRC table offset
9243 065313 260 17 0 00 065235 GO ITEXT ; set up data, etc.
9244 065314 332 00 0 00 120735' SKIPE INHCRC ; inhibit CRC calculation?
9245 065315 263 17 0 00 000000 RTN ; yes - return
9246 065316 261 17 0 00 000001 RPUT (1,2,3,4,5,6,7,10) ; no - save AC's
9247
9248 065326 332 04 0 00 065311* SKIPE 4,CRCSAV ; get precalculated CRC - valid?
9249 JRST [MOVEI 1,PACKET+5 ; yes - save it and exit
9250 ADD 1,TWORD
9251 MOVEM 4,(1)
9252 065327 254 00 0 00 115516 JRST ICRCY]
9253
9254 ; Calculate CRC of header bytes
9255
9256 065330 474 04 0 00 000000 SETO 4, ; initial CRC value
9257 065331 200 07 0 00 065162 MOVE 7,TBYTE ; calculate total packet
9258 065332 271 07 0 00 000007 ADDI 7,7 ; length
9259 065333 135 02 0 00 115522 LDB 2,[POINT 8,7,27] ; get 'Packet Type/Length'
9260 065334 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9261 065335 135 02 0 00 115523 LDB 2,[POINT 8,7,35] ; get 'Packet Length'
9262 065336 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9263 065337 200 02 0 00 070052 MOVE 2,PACKET+3 ; get status word
9264 065340 135 02 0 00 115524 LDB 2,[POINT 8,2,31] ; get 'Destination (True)'
9265 065341 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 212
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0388
9266 065342 200 02 0 00 070052 MOVE 2,PACKET+3 ; get status word
9267 065343 135 02 0 00 115524 LDB 2,[POINT 8,2,31] ; get 'Destination (True)'
9268 065344 431 02 0 00 000377 XORI 2,377 ; get 'Destination (Complement)'
9269 065345 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9270 065346 200 02 0 00 034013 MOVE 2,CPORT ; get 'Source'
9271 065347 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9272 065350 200 02 0 00 000011 MOVE 2,OP ; get op code
9273 065351 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9274 065352 200 02 0 00 070052 MOVE 2,PACKET+3 ; get status word
9275 065353 135 02 0 00 115525 LDB 2,[POINT 8,2,15] ; get flags byte
9276 065354 405 02 0 00 000200 ANDI 2,200 ; keep only the packing format bit
9277 065355 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9278
9279 ; Calculate CRC of the first 2 text bytes (in the length word)
9280 ; (But only if this is a datagram)
9281
9282 065356 302 11 0 00 000001 CAIE OP,DGSNT ; datagram?
9283 065357 254 00 0 00 065364 JRST .+5 ; no - continue
9284 065360 400 02 0 00 000000 SETZ 2, ; zero byte
9285 065361 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9286 065362 400 02 0 00 000000 SETZ 2, ; zero byte
9287 065363 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9288
9289 ; Now calculate CRC of 'Body' depending on packet format
9290
9291 065364 201 06 0 00 070054 MOVEI 6,PACKET+5 ; get address of 1st word
9292 065365 200 07 0 00 065163 MOVE 7,TWORD ; get word count
9293 065366 200 02 0 00 070052 MOVE 2,PACKET+3 ; get status word
9294 065367 603 02 0 00 001000 TLNE 2,1000 ; HIDEN format?
9295 065370 254 00 0 00 065411 JRST ICRC1 ; yes - go handle it
9296
9297 ; Loop through all the bytes (COMPAT mode)
9298
9299 065371 322 07 0 00 065451 ICRC0: JUMPE 7,ICRCX ; exit if already done
9300 065372 200 10 0 06 000000 MOVE 10,(6) ; get data word
9301 065373 135 02 0 00 115526 LDB 2,[POINT 8,10,7] ; get byte 1
9302 065374 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9303 065375 135 02 0 00 115527 LDB 2,[POINT 8,10,15] ; get byte 2
9304 065376 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9305 065377 350 00 0 00 000006 AOS 6 ; point to next word
9306 065400 306 11 0 00 000001 CAIN OP,DGSNT ; datagram?
9307 065401 363 07 0 00 065451 SOJLE 7,ICRCX ; decrement count - done? yes - exit
9308 065402 135 02 0 00 115530 LDB 2,[POINT 8,10,23] ; get byte 3
9309 065403 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9310 065404 135 02 0 00 115531 LDB 2,[POINT 8,10,31] ; get byte 4
9311 065405 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9312 065406 302 11 0 00 000001 CAIE OP,DGSNT ; datagram?
9313 065407 363 07 0 00 065451 SOJLE 7,ICRCX ; decrement count - done? yes - exit
9314 065410 254 00 0 00 065371 JRST ICRC0 ; loop till done
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 213
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0389
9315
9316 ; Loop through all the bytes (HIDEN mode)
9317
9318 065411 322 07 0 00 065451 ICRC1: JUMPE 7,ICRCX ; exit if already done
9319 065412 200 10 0 06 000000 MOVE 10,(6) ; get 1st data word
9320 065413 135 02 0 00 115526 LDB 2,[POINT 8,10,7] ; get byte 1
9321 065414 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9322 065415 135 02 0 00 115527 LDB 2,[POINT 8,10,15] ; get byte 2
9323 065416 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9324 065417 135 02 0 00 115530 LDB 2,[POINT 8,10,23] ; get byte 3
9325 065420 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9326 065421 135 02 0 00 115531 LDB 2,[POINT 8,10,31] ; get byte 4
9327 065422 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9328 065423 135 02 0 00 115532 LDB 2,[POINT 4,10,35] ; get byte 5 (1st half)
9329 065424 242 02 0 00 000004 LSH 2,4 ; position properly
9330 065425 350 00 0 00 000006 AOS 6 ; point to next word
9331 065426 200 10 0 06 000000 MOVE 10,(6) ; get 2nd data word
9332 065427 370 00 0 00 000007 SOS 7 ; decrement word count
9333 065430 135 00 0 00 115533 LDB [POINT 4,10,3] ; get byte 5 (2nd half)
9334 065431 434 02 0 00 000000 IOR 2,0 ; include with 1st half
9335 065432 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9336 065433 135 02 0 00 115534 LDB 2,[POINT 8,10,11] ; get byte 6
9337 065434 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9338 065435 135 02 0 00 115535 LDB 2,[POINT 8,10,19] ; get byte 7
9339 065436 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9340 065437 350 00 0 00 000006 AOS 6 ; point to next word
9341 065440 306 11 0 00 000001 CAIN OP,DGSNT ; datagram?
9342 065441 363 07 0 00 065451 SOJLE 7,ICRCX ; decrement count - done? yes - exit
9343 065442 135 02 0 00 115536 LDB 2,[POINT 8,10,27] ; get byte 8
9344 065443 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9345 065444 135 02 0 00 115537 LDB 2,[POINT 8,10,35] ; get byte 9
9346 065445 260 17 0 00 065470 GO CRCCAL ; calculate for this byte
9347 065446 302 11 0 00 000001 CAIE OP,DGSNT ; datagram?
9348 065447 363 07 0 00 065451 SOJLE 7,ICRCX ; decrement count - done? yes - exit
9349 065450 254 00 0 00 065411 JRST ICRC1 ; loop till done
9350
9351 ; Done - just do final XOR and save in text
9352
9353 065451 430 04 0 00 111025 ICRCX: XOR 4,[-1] ; final XOR
9354 065452 260 17 0 00 065504 GO CRCFIX ; swap bits properly
9355 065453 242 04 0 00 000004 LSH 4,4 ; position in bits 0-31
9356 065454 202 04 0 06 000000 MOVEM 4,(6) ; save in buffer
9357 065455 331 01 0 00 065312* SKIPL 1,CRCOFF ; get offset value
9358 065456 202 04 0 01 000000* MOVEM 4,CRCTAB(1) ; save CRC value
9359 065457 262 17 0 00 000010 ICRCY: RGET (10,7,6,5,4,3,2,1) ; restore AC's
9360
9361 065467 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 214
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0390
9362
9363 ;#********************************************************************
9364 ;* CRCCAL - Calculate CRC (cumulative) for 8 bits
9365 ;
9366 ; Given: AC2 - data byte Uses: AC1,AC3,AC5 without saving or
9367 ; AC4 - result restoring.
9368 ;
9369 ; Returns: AC4 - updated result
9370 ;#********************************************************************
9371
9372 065470 201 01 0 00 000010 CRCCAL: MOVEI 1,8 ; do this 8 times
9373 065471 400 03 0 00 000000 SETZ 3, ; clear AC3
9374 065472 246 02 0 00 777777 CRCCA0: LSHC 2,-1 ; get a bit (into AC3)
9375 065473 135 05 0 00 115540 LDB 5,[POINT 1,3,0] ; get data bit
9376 065474 602 04 0 00 000001 TRNE 4,1 ; leftmost bit set?
9377 065475 431 05 0 00 000001 XORI 5,1 ; yes - XOR with data bit
9378 065476 242 04 0 00 777777 LSH 4,-1 ; right shift 1 bit
9379 065477 332 00 0 00 000005 SKIPE 5 ; data bit result non-zero?
9380 065500 430 04 0 00 115541 XOR 4,[15556,,101440] ; yes - XOR 1's with CRC
9381 065501 137 05 0 00 115542 DPB 5,[POINT 1,4,4] ; also insert result bit
9382 065502 367 01 0 00 065472 SOJG 1,CRCCA0 ; loop till done
9383 065503 263 17 0 00 000000 RTN ; return
9384
9385
9386 ;#********************************************************************
9387 ;* CRCFIX - Adjust properly
9388 ;#********************************************************************
9389
9390 065504 261 17 0 00 000002 CRCFIX: RPUT (2,3) ; save AC's
9391
9392 065506 400 03 0 00 000000 SETZ 3, ; clear result
9393 065507 135 02 0 00 115543 LDB 2,[POINT 8,4,11] ; get byte 1
9394 065510 137 02 0 00 115544 DPB 2,[POINT 8,3,35] ; save it
9395 065511 135 02 0 00 115545 LDB 2,[POINT 8,4,19] ; get byte 2
9396 065512 137 02 0 00 115546 DPB 2,[POINT 8,3,27] ; save it
9397 065513 135 02 0 00 115547 LDB 2,[POINT 8,4,27] ; get byte 3
9398 065514 137 02 0 00 115550 DPB 2,[POINT 8,3,19] ; save it
9399 065515 135 02 0 00 115551 LDB 2,[POINT 8,4,35] ; get byte 4
9400 065516 137 02 0 00 114316 DPB 2,[POINT 8,3,11] ; save it
9401 065517 200 04 0 00 000003 MOVE 4,3 ; get into AC4
9402 065520 262 17 0 00 000003 RGET (3,2) ; restore AC's
9403
9404 065522 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 215
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0391
9405
9406 ;#********************************************************************
9407 ;* IREGR - Set up to read a register
9408 ;#********************************************************************
9409
9410 065523 261 17 0 00 000000 IREGR: RPUT (0,1) ; save AC's
9411
9412 065525 332 00 0 00 103310 SKIPE PMODE ; normal test?
9413 065526 254 00 0 00 065540 JRST IREGR1 ; yes - continue
9414 065527 476 00 0 00 040547* IREGR0: SETOM ARGFLG ; initialize to accept arguments
9415 065530 260 17 0 00 036032* GO CLRBUF ; clear input buffer
9416 065531 037 01 0 00 115552 FMSGC <Register number? >
9417 MOVN 1,[FMSGCD <Register number n, where n:
9418 1-RdRSta 10-RdXSta
9419 3-RdBuff 14-RdNode
9420 065532 210 01 0 00 115577 5-RdPRev>]
9421 065533 260 17 0 00 041565* GO .OARG ; get argument
9422 JRST [GO FIOFF ; error - shut off file input
9423 065534 254 00 0 00 115600 JRST IREGR0] ; and exit
9424 JRST [GO FIOFF ; missing argument - shut off file
9425 065535 254 00 0 00 115602 JRST IREGRX] ; input and exit
9426 065536 200 00 0 00 041767* MOVE ARGUM ; get argument
9427 065537 202 00 0 00 065165 MOVEM TREGN ; save it
9428 065540 200 00 0 00 065165 IREGR1: MOVE TREGN ; get register number
9429 065541 402 00 0 00 070053 SETZM PACKET+4 ; clear word
9430 065542 137 00 0 00 115604 DPB [POINT 8,PACKET+4,23] ; store in packet
9431 065543 262 17 0 00 000001 IREGRX: RGET (1,0) ; restore AC's
9432
9433 065545 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 216
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0392
9434
9435 ;#********************************************************************
9436 ;* IREGW - Set up to write a register
9437 ;#********************************************************************
9438
9439 065546 261 17 0 00 000000 IREGW: RPUT (0,1) ; save AC's
9440
9441 065550 332 00 0 00 103310 SKIPE PMODE ; normal test?
9442 065551 254 00 0 00 065571 JRST IREGW1 ; yes - continue
9443 065552 476 00 0 00 065527* IREGW0: SETOM ARGFLG ; initialize to accept arguments
9444 065553 260 17 0 00 065530* GO CLRBUF ; clear input buffer
9445 065554 037 01 0 00 115605 FMSGC <Register number,data? >
9446 MOVE 1,[FMSGCD <Register n,data, where n:
9447 2-RsXSta 11-AboXmt 16-Sync
9448 4-EnaLnk 12-SetMod
9449 6-SelBuf 13-Xmit
9450 065555 200 01 0 00 115643 7-LdXBuf 15-DsaLnk>]
9451 065556 260 17 0 00 065533* GO .OARG ; get argument
9452 JRST [GO FIOFF ; error - shut off file input
9453 065557 254 00 0 00 115644 JRST IREGW0] ; and exit
9454 JRST [GO FIOFF ; missing argument - shut off file
9455 065560 254 00 0 00 115646 JRST IREGWX] ; input and exit
9456 065561 200 00 0 00 065536* MOVE ARGUM ; get argument
9457 065562 202 00 0 00 065165 MOVEM TREGN ; save it
9458 MOVN 1,[FMSGCD <Register n,data, where n:
9459 2-RsXSta 11-AboXmt 16-Sync
9460 4-EnaLnk 12-SetMod
9461 6-SelBuf 13-Xmit
9462 065563 210 01 0 00 115643 7-LdXBuf 15-DsaLnk>]
9463 065564 260 17 0 00 065556* GO .OARG ; get argument
9464 JRST [GO FIOFF ; error - shut off file input
9465 065565 254 00 0 00 115644 JRST IREGW0] ; and exit
9466 JRST [GO FIOFF ; missing argument - shut off file
9467 065566 254 00 0 00 115646 JRST IREGWX] ; input and exit
9468 065567 200 00 0 00 065561* MOVE ARGUM ; get argument
9469 065570 202 00 0 00 065166 MOVEM TREGD ; save it
9470 065571 402 00 0 00 070053 IREGW1: SETZM PACKET+4 ; clear word
9471 065572 200 00 0 00 065165 MOVE TREGN ; get register number
9472 065573 137 00 0 00 115604 DPB [POINT 8,PACKET+4,23] ; store in packet
9473 065574 200 00 0 00 065166 MOVE TREGD ; get register data
9474 065575 137 00 0 00 115650 DPB [POINT 8,PACKET+4,31] ; store in packet
9475 065576 262 17 0 00 000001 IREGWX: RGET (1,0) ; restore AC's
9476
9477 065600 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 217
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0393
9478
9479 ;#********************************************************************
9480 ;* RWAIT - Wait for a response (by CSR bit 'RspQAvail' bit being set.
9481 ;
9482 ; Return: +1 - Always
9483 ;#********************************************************************
9484
9485 065601 261 17 0 00 000000 RWAIT: RPUT (0,1,2) ; save AC's
9486
9487 065604 201 02 0 00 000012 MOVEI 2,^D10 ; check up to 10 times
9488 065605 260 17 0 00 065066* RWAIT0: GO RDCSR ; read CSR
9489 065606 255 00 0 00 000000 JFCL ; ignore error
9490 065607 602 01 0 00 000200 TRNE 1,RESQAV ; response queue available bit set?
9491 065610 254 00 0 00 065613 JRST RWAITX ; yes - exit
9492 065611 005 00 0 00 000001 DELAY 1 ; wait 1 millisecond
9493 065612 367 02 0 00 065605 SOJG 2,RWAIT0 ; no - loop till done
9494 065613 262 17 0 00 000002 RWAITX: RGET (2,1,0) ; restore AC's
9495
9496 065616 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 218
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0394
9497
9498 ;#********************************************************************
9499 ;* CHKINT - Check/set up interlock for queue
9500 ;
9501 ; This routine tries to gain control of the specified queue. If it
9502 ; cannot, it returns with an error condition. If it can, it builds
9503 ; a list of entries in the queue, with the virtual address of the
9504 ; beginning of each queue entry. Other routines access the queue
9505 ; via the addresses given in the entry list.
9506 ;
9507 ; Only one queue can be dealt with at a time, since there is only
9508 ; one list of queue entries.
9509 ;
9510 ; Given: Q - Contains queue number
9511 ;
9512 ; Return: +1 - Error, couldn't get access to queue in 1 second
9513 ; +2 - Ok
9514 ;#********************************************************************
9515
9516 065617 261 17 0 00 000000 CHKINT: RPUT (0,1,2,3) ; save AC's
9517
9518 065623 201 01 0 00 000001 MOVEI 1,1 ; set up a wait of 1 ms
9519 065624 332 00 0 00 030037 SKIPE USER ; user mode?
9520 065625 104 00 0 00 000167 DISMS ; yes - wait
9521 065626 402 00 0 00 065751 SETZM NUMENT ; clear entry count
9522 MOVE 1,[PCB+4 ; get address of interlock word
9523 PCB+7 ; CmdQ2
9524 PCB+12 ; CmdQ1
9525 PCB+15 ; CmdQ0
9526 PCB+20 ; RspQ
9527 PCB+23 ; MsgFQ
9528 065627 200 01 0 13 115651 PCB+26](Q) ; DgmFQ
9529 065630 201 02 0 00 000764 MOVEI 2,^D500 ; do this up to 500 times
9530 065631 356 00 0 01 000000 CHKIN0: AOSN (1) ; available yet?
9531 065632 254 00 0 00 065636 JRST CHKIN1 ; yes - continue
9532 065633 005 00 0 00 000001 DELAY 1 ; wait 1 millisecond
9533 065634 367 02 0 00 065631 SOJG 2,CHKIN0 ; loop till done
9534 065635 254 00 0 00 065657 JRST CHKINX ; exit
9535 065636 350 00 0 17 777774 CHKIN1: AOS -4(P) ; set up good return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 219
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0395
9536
9537 ; Now search through the queue and build a queue entry list
9538
9539 065637 350 00 0 00 000001 AOS 1 ; point to FLINK
9540 065640 201 00 0 01 000000 MOVEI (1) ; get address of FLINK of queue
9541 065641 202 00 0 00 065664 MOVEM LENTRY ; save it
9542 065642 201 02 0 00 065665 MOVEI 2,LENTRY+1 ; next address in list
9543 065643 400 03 0 00 000000 SETZ 3, ; init last entry address
9544 065644 402 00 0 02 000000 CHKIN2: SETZM (2) ; set up end of list
9545 065645 200 01 0 01 000000 MOVE 1,(1) ; get FLINK address
9546 065646 260 17 0 00 065752 GO CONVIR ; convert to virtual
9547 065647 316 01 0 00 065664 CAMN 1,LENTRY ; points to start of list?
9548 065650 254 00 0 00 065656 JRST CHKIN3 ; yes - done
9549 065651 202 01 0 02 000000 MOVEM 1,(2) ; save address
9550 065652 202 01 0 00 000003 MOVEM 1,3 ; save for last entry address
9551 065653 350 00 0 00 000002 AOS 2 ; point to next list entry
9552 065654 350 00 0 00 065751 AOS NUMENT ; increment entry count
9553 065655 254 00 0 00 065644 JRST CHKIN2 ; loop till done
9554 065656 202 03 0 00 065750 CHKIN3: MOVEM 3,LASENT ; save it
9555
9556 ; Done - exit
9557
9558 065657 262 17 0 00 000003 CHKINX: RGET (3,2,1,0) ; restore AC's
9559
9560 065663 263 17 0 00 000000 RTN ; return
9561
9562 ; List of queue entries (ended with a zero)
9563
9564 065664 000000 000000 LENTRY: 0 ; address of PCB FLINK entry
9565 065665 BLOCK ^D50 ; up to 50 queue entries
9566 065747 000000 000000 0 ; end of list
9567 065750 000000 000000 LASENT: 0 ; last entry in list
9568 065751 000000 000000 NUMENT: 0 ; entry count
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 220
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0396
9569
9570 ;#********************************************************************
9571 ;* CONVIR - Convert physical address to virtual
9572 ;
9573 ; This routine searches through PHYTAB to find the physical address
9574 ; matching the one given here. Then the virtual address is gotten
9575 ; from the corresponding entry in VIRTAB.
9576 ;
9577 ; Given: AC1 - Contains a physical address
9578 ;
9579 ; Return: AC1 - Contains the virtual address
9580 ;#********************************************************************
9581
9582 065752 261 17 0 00 000000 CONVIR: RPUT (0,2) ; save AC's
9583
9584 065754 474 02 0 00 000000 SETO 2, ; initialize address pointer
9585 065755 350 00 0 00 000002 CONVI0: AOS 2 ; point to next address
9586 065756 336 00 0 02 065023 SKIPN ADRPHY(2) ; end of list?
9587 065757 254 00 0 00 065766 JRST CONVIE ; yes - error - go handle
9588 065760 312 01 0 02 065023 CAME 1,ADRPHY(2) ; address match?
9589 065761 254 00 0 00 065755 JRST CONVI0 ; no - loop till done
9590 065762 200 01 0 02 064774 CONVIX: MOVE 1,ADRVIR(2) ; yes - get virtual address
9591 065763 262 17 0 00 000002 RGET (2,0) ; restore AC's
9592
9593 065765 263 17 0 00 000000 RTN ; return
9594
9595 ; Unrecognized address
9596
9597 065766 037 00 0 00 115660 CONVIE: TMSGC <? PCB or queue entries are no longer valid>
9598 065767 037 00 0 00 115671 TMSGC <? Address >
9599 065770 200 00 0 00 000001 MOVE 1
9600 065771 037 10 0 00 000000 PNTADR
9601 065772 037 00 0 00 115674 TMSG < not recognized as a physical address of a queue entry>
9602 065773 037 00 0 00 115707 TMSGC <? CONVIR called from address - >
9603 065774 200 00 0 17 777776 MOVE -2(P)
9604 065775 037 10 0 00 000000 PNTADR
9605 065776 260 17 0 00 000000* GO FFF
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 221
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0397
9606
9607 ;#********************************************************************
9608 ;* INSQUE - Insert a packet into a queue
9609 ;
9610 ; PACKET - 256 word queue entry which can be copied directly into
9611 ; a queue entry
9612 ;
9613 ; Given: Q - Contains CMD queue number to put packet on
9614 ;
9615 ; Return: +1 - Error, out of room (or interlock failed)
9616 ; +2 - Ok
9617 ;#********************************************************************
9618
9619 065777 261 17 0 00 000000 INSQUE: RPUT (0,1,2,3,Q) ; save AC's
9620
9621
9622 ; Get control of DGM Free Queue
9623
9624 066004 201 13 0 00 000006 MOVEI Q,6 ; look at datagram free queue
9625 066005 260 17 0 00 065617 GO CHKINT ; check interlock word
9626 066006 254 00 0 00 066073 JRST INSQUX ; failed - exit
9627 066007 336 00 0 00 065750 SKIPN LASENT ; queue empty?
9628 JRST [SETOM PCB+26 ; yes - error - out of room
9629 066010 254 00 0 00 115716 JRST INSQUX] ; reset interlock and exit
9630
9631 ; Remove a free queue entry from the queue
9632
9633 066011 260 17 0 00 066101 GO GETQUE ; get an entry
9634 066012 255 00 0 00 000000 JFCL ; error - ignore
9635 066013 202 01 0 00 120751' MOVEM 1,NEWENT# ; save address of new entry
9636 066014 200 02 0 00 065664 MOVE 2,LENTRY ; get PCB address
9637 066015 370 00 0 00 000002 SOS 2 ; point to interlock address
9638 066016 476 00 0 02 000000 SETOM (2) ; reset interlock
9639 066017 200 02 0 00 000001 MOVE 2,1 ; get address of entry into AC2
9640 066020 271 01 0 00 000002 ADDI 1,2 ; build BLT pointer to move the
9641 066021 505 01 0 00 070051 HRLI 1,PACKET+2 ; packet into the queue entry
9642 066022 251 01 0 02 000377 BLT 1,^D255(2) ; do the BLT
9643
9644 ; Get control of Command Queue
9645
9646 066023 200 13 0 17 000000 MOVE Q,(P) ; get cmd queue number back
9647 066024 260 17 0 00 065617 GO CHKINT ; check interlock word
9648 066025 254 00 0 00 066073 JRST INSQUX ; failed - exit
9649
9650 ; Insert this at the end of the specified command queue
9651
9652 066026 332 00 0 00 065750 SKIPE LASENT ; queue currently empty?
9653 066027 254 00 0 00 066044 JRST INSQU0 ; no - continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 222
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0398
9654
9655 ; Empty queue - insert entry
9656
9657 066030 200 03 0 00 120751' MOVE 3,NEWENT ; get address of new entry
9658 066031 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9659 066032 257 03 0 03 000000 MAP 3,(3) ; map to physical
9660 066033 621 03 0 00 777000 TLZ 3,777000 ; get rid of extraneous bits
9661 MOVE 1,[PCB+4 ; get address of queue in PCB
9662 PCB+7
9663 PCB+12
9664 PCB+15
9665 PCB+20
9666 PCB+23
9667 066034 200 01 0 13 115651 PCB+26](Q)
9668 066035 200 02 0 01 000001 MOVE 2,1(1) ; get address of PCB
9669 066036 202 03 0 01 000001 MOVEM 3,1(1) ; set up new FLINK in PCB
9670 066037 202 03 0 01 000002 MOVEM 3,2(1) ; set up new BLINK in PCB
9671 066040 200 01 0 00 120751' MOVE 1,NEWENT ; get address of new entry
9672 066041 202 02 0 01 000000 MOVEM 2,(1) ; set up FLINK of new entry
9673 066042 202 02 0 01 000001 MOVEM 2,1(1) ; set up BLINK of new entry
9674 066043 254 00 0 00 066066 JRST INSQU1 ; done - continue
9675
9676 ; Queue is not empty - insert entry
9677
9678 066044 200 03 0 00 120751' INSQU0: MOVE 3,NEWENT ; get address of new entry
9679 066045 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9680 066046 257 03 0 03 000000 MAP 3,(3) ; map to physical
9681 066047 621 03 0 00 777000 TLZ 3,777000 ; get rid of extraneous bits
9682 066050 200 02 0 00 065750 MOVE 2,LASENT ; get address of last entry
9683 066051 200 01 0 02 000000 MOVE 1,(2) ; get FLINK of last entry
9684 066052 202 03 0 02 000000 MOVEM 3,(2) ; set up new FLINK of last entry
9685 066053 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9686 066054 257 02 0 02 000000 MAP 2,(2) ; no - map to physical
9687 066055 621 02 0 00 777000 TLZ 2,777000 ; get rid of extraneous bits
9688 066056 200 03 0 00 120751' MOVE 3,NEWENT ; get address of new entry
9689 066057 202 01 0 03 000000 MOVEM 1,(3) ; set up FLINK of new entry
9690 066060 202 02 0 03 000001 MOVEM 2,1(3) ; set up BLINK of new entry
9691 066061 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9692 066062 257 03 0 03 000000 MAP 3,(3) ; no - map to physical
9693 066063 621 03 0 00 777000 TLZ 3,777000 ; get rid of extraneous bits
9694 MOVE 1,[PCB+4 ; get address of queue in PCB
9695 PCB+7
9696 PCB+12
9697 PCB+15
9698 PCB+20
9699 PCB+23
9700 066064 200 01 0 13 115651 PCB+26](Q)
9701 066065 202 03 0 01 000002 MOVEM 3,2(1) ; set up new BLINK in PCB
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 223
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0399
9702
9703 ; Reset interlock and update statistics
9704
9705 066066 200 02 0 00 065664 INSQU1: MOVE 2,LENTRY ; get PCB address
9706 066067 370 00 0 00 000002 SOS 2 ; point to interlock address
9707 066070 476 00 0 02 000000 SETOM (2) ; reset interlock
9708 066071 260 17 0 00 043130 GO SUPDAT ; update statistics (sent)
9709
9710 ; Done - exit
9711
9712 066072 350 00 0 17 777773 AOS -5(P) ; set up proper return
9713 066073 262 17 0 00 000013 INSQUX: RGET (Q,3,2,1,0) ; restore AC's
9714
9715 066100 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 224
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0400
9716
9717 ;#********************************************************************
9718 ;* GETQUE - Remove a queue entry from the beginning of a queue
9719 ;
9720 ; This routine removes the entry and adjusts the PCB and next
9721 ; entry links so that the queue is correct.
9722 ;
9723 ; Given: LENTRY - Contains location of start of queue in PCB and
9724 ; a list of queue entries (virtual addresses)
9725 ;
9726 ; Return: AC1 - Address of entry obtained (virtual)
9727 ; +1 - No entry found
9728 ; +2 - An entry was found
9729 ;#********************************************************************
9730
9731 066101 336 00 0 00 065665 GETQUE: SKIPN LENTRY+1 ; empty list?
9732 066102 263 17 0 00 000000 RTN ; yes - return
9733 066103 350 00 0 17 000000 AOS (P) ; no - set up proper return
9734 066104 261 17 0 00 000000 RPUT (0,2) ; save AC's
9735
9736 066106 332 00 0 00 065666 SKIPE LENTRY+2 ; multiple entries?
9737 066107 254 00 0 00 066120 JRST GETQU0 ; yes - go handle
9738
9739 ; Only one entry in the list
9740
9741 066110 200 01 0 00 065664 MOVE 1,LENTRY ; get address of FLINK in PCB
9742 066111 200 02 0 00 000001 MOVE 2,1 ; and in AC2
9743 066112 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9744 066113 257 02 0 02 000000 MAP 2,(2) ; no - map to physical
9745 066114 621 02 0 00 777000 TLZ 2,777000 ; get rid of extraneous bits
9746 066115 202 02 0 01 000000 MOVEM 2,(1) ; set up new FLINK address
9747 066116 202 02 0 01 000001 MOVEM 2,1(1) ; set up new BLINK address
9748 066117 254 00 0 00 066130 JRST GETQUX ; exit
9749
9750 ; Multiple entries in the list
9751
9752 066120 200 01 0 00 065665 GETQU0: MOVE 1,LENTRY+1 ; get address of 1st entry
9753 066121 200 01 0 01 000001 MOVE 1,1(1) ; get BLINK of 1st entry
9754 066122 200 02 0 00 065666 MOVE 2,LENTRY+2 ; get address of 2nd entry
9755 066123 202 01 0 02 000001 MOVEM 1,1(2) ; set up BLINK of 2nd entry
9756 066124 200 01 0 00 065665 MOVE 1,LENTRY+1 ; get address of 1st entry
9757 066125 200 01 0 01 000000 MOVE 1,(1) ; get FLINK of 1st entry
9758 066126 200 02 0 00 065664 MOVE 2,LENTRY ; get address of FLINK in PCB
9759 066127 202 01 0 02 000000 MOVEM 1,(2) ; set up new FLINK in PCB
9760
9761 ; Done - exit
9762
9763 066130 200 01 0 00 065665 GETQUX: MOVE 1,LENTRY+1 ; get address of entry
9764 066131 262 17 0 00 000002 RGET (2,0) ; restore AC's
9765
9766 066133 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 225
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0401
9767
9768 ;#********************************************************************
9769 ;* CHKRSP - Check if a response queue entry
9770 ;
9771 ; Return: +1 - No entry
9772 ; +2 - Found an entry(ies)
9773 ;#********************************************************************
9774
9775 066134 352 00 0 00 070020 CHKRSP: AOSE PCB+20 ; check interlock for rsp queue
9776 066135 263 17 0 00 000000 RTN ; return - queue is in use already
9777 066136 261 17 0 00 000000 RPUT (0,1,2,Q) ; save AC's
9778
9779 066142 476 00 0 00 070020 SETOM PCB+20 ; reset interlock
9780 066143 201 13 0 00 000004 MOVEI Q,4 ; set up for response queue
9781 066144 260 17 0 00 065617 GO CHKINT ; check interlock word
9782 066145 254 00 0 00 066276 JRST CHKRSX ; failed - exit
9783 066146 336 00 0 00 065665 SKIPN LENTRY+1 ; queue empty?
9784 JRST [GO SHUTRQ ; yes - reset the response queue
9785 SETOM PCB+20 ; available bit, then reset the
9786 066147 254 00 0 00 115720 JRST CHKRSX] ; interlock word and exit
9787 066150 476 00 0 00 041611* SETOM RQAFLG ; set rsp queue available flag
9788
9789 ; An entry exists - copy it to 'RSPONS'
9790
9791 066151 350 00 0 17 777774 AOS -4(P) ; found an entry - set up return
9792 066152 504 00 0 00 065665 HRL LENTRY+1 ; build a BLT pointer
9793 066153 541 00 0 00 070447 HRRI RSPONS
9794 066154 251 00 0 00 071046 BLT RSPONS+^D255 ; copy into 'RSPONS'
9795
9796 ; Remove response queue packet from the response queue and reset interlock
9797
9798 066155 200 01 0 00 065665 MOVE 1,LENTRY+1 ; get address of 1st entry
9799 066156 202 01 0 00 120751' MOVEM 1,NEWENT ; save it
9800 066157 200 02 0 01 000000 MOVE 2,(1) ; get FLINK of 1st entry
9801 066160 202 02 0 00 070021 MOVEM 2,PCB+21 ; set up new FLINK of PCB
9802 066161 336 03 0 00 065666 SKIPN 3,LENTRY+2 ; get address of 2nd entry - zero?
9803 066162 202 02 0 00 070022 MOVEM 2,PCB+22 ; yes - set up new BLINK of PCB
9804 066163 332 03 0 00 065666 SKIPE 3,LENTRY+2 ; get address of 2nd entry - zero?
9805 066164 202 02 0 03 000001 MOVEM 2,1(3) ; no - set up BLINK of 2nd entry
9806 066165 260 17 0 00 066342 GO SHUTRQ ; reset 'RSPQAV' bit
9807 066166 476 00 0 00 070020 SETOM PCB+20 ; reset interlock word
9808
9809 ; Put the packet back in the free queue and reset the interlock words
9810
9811 066167 260 17 0 00 066303 GO CHKQUE ; determine queue to use
9812 066170 260 17 0 00 065617 GO CHKINT ; check on interlock word
9813 066171 254 00 0 00 066276 JRST CHKRSX ; error - exit
9814 066172 302 13 0 00 000005 CAIE Q,5 ; MSG free queue?
9815 066173 254 00 0 00 066235 JRST CHKRS2 ; no - continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 226
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0402
9816
9817 ; MSG Free queue
9818
9819 066174 332 00 0 00 065750 CHKRS0: SKIPE LASENT ; queue currently empty?
9820 066175 254 00 0 00 066212 JRST CHKRS1 ; no - continue
9821
9822 ; Empty queue - insert entry
9823
9824 066176 200 03 0 00 120751' MOVE 3,NEWENT ; get address of new entry
9825 066177 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9826 066200 257 03 0 03 000000 MAP 3,(3) ; map to physical
9827 066201 621 03 0 00 777000 TLZ 3,777000 ; get rid of extraneous bits
9828 066202 200 02 0 00 070024 MOVE 2,PCB+24 ; get address of PCB
9829 066203 202 03 0 00 070024 MOVEM 3,PCB+24 ; set up new FLINK in PCB
9830 066204 202 03 0 00 070025 MOVEM 3,PCB+25 ; set up new BLINK in PCB
9831 066205 200 01 0 00 120751' MOVE 1,NEWENT ; get address of new entry
9832 066206 202 02 0 01 000000 MOVEM 2,(1) ; set up FLINK of new entry
9833 066207 202 02 0 01 000001 MOVEM 2,1(1) ; set up BLINK of new entry
9834 066210 476 00 0 00 070023 SETOM PCB+23 ; reset interlock
9835 066211 254 00 0 00 066275 JRST CHKRS4 ; done - continue
9836
9837 ; Queue is not empty - insert entry
9838
9839 066212 200 03 0 00 120751' CHKRS1: MOVE 3,NEWENT ; get address of new entry
9840 066213 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9841 066214 257 03 0 03 000000 MAP 3,(3) ; map to physical
9842 066215 621 03 0 00 777000 TLZ 3,777000 ; get rid of extraneous bits
9843 066216 200 02 0 00 065750 MOVE 2,LASENT ; get address of last entry
9844 066217 200 01 0 02 000000 MOVE 1,(2) ; get FLINK of last entry
9845 066220 202 03 0 02 000000 MOVEM 3,(2) ; set up new FLINK of last entry
9846 066221 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9847 066222 257 02 0 02 000000 MAP 2,(2) ; no - map to physical
9848 066223 621 02 0 00 777000 TLZ 2,777000 ; get rid of extraneous bits
9849 066224 200 03 0 00 120751' MOVE 3,NEWENT ; get address of new entry
9850 066225 202 01 0 03 000000 MOVEM 1,(3) ; set up FLINK of new entry
9851 066226 202 02 0 03 000001 MOVEM 2,1(3) ; set up BLINK of new entry
9852 066227 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9853 066230 257 03 0 03 000000 MAP 3,(3) ; no - map to physical
9854 066231 621 03 0 00 777000 TLZ 3,777000 ; get rid of extraneous bits
9855 066232 202 03 0 00 070025 MOVEM 3,PCB+25 ; set up new BLINK in PCB
9856 066233 476 00 0 00 070023 SETOM PCB+23 ; reset interlock
9857 066234 254 00 0 00 066275 JRST CHKRS4 ; done - continue
9858
9859 ; DGM Free queue
9860
9861 066235 332 00 0 00 065750 CHKRS2: SKIPE LASENT ; queue currently empty?
9862 066236 254 00 0 00 066253 JRST CHKRS3 ; no - continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 227
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0403
9863
9864 ; Empty queue - insert entry
9865
9866 066237 200 03 0 00 120751' MOVE 3,NEWENT ; get address of new entry
9867 066240 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9868 066241 257 03 0 03 000000 MAP 3,(3) ; map to physical
9869 066242 621 03 0 00 777000 TLZ 3,777000 ; get rid of extraneous bits
9870 066243 200 02 0 00 070027 MOVE 2,PCB+27 ; get address of PCB
9871 066244 202 03 0 00 070027 MOVEM 3,PCB+27 ; set up new FLINK in PCB
9872 066245 202 03 0 00 070030 MOVEM 3,PCB+30 ; set up new BLINK in PCB
9873 066246 200 01 0 00 120751' MOVE 1,NEWENT ; get address of new entry
9874 066247 202 02 0 01 000000 MOVEM 2,(1) ; set up FLINK of new entry
9875 066250 202 02 0 01 000001 MOVEM 2,1(1) ; set up BLINK of new entry
9876 066251 476 00 0 00 070026 SETOM PCB+26 ; reset interlock
9877 066252 254 00 0 00 066275 JRST CHKRS4 ; done - continue
9878
9879 ; Queue is not empty - insert entry
9880
9881 066253 200 03 0 00 120751' CHKRS3: MOVE 3,NEWENT ; get address of new entry
9882 066254 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9883 066255 257 03 0 03 000000 MAP 3,(3) ; map to physical
9884 066256 621 03 0 00 777000 TLZ 3,777000 ; get rid of extraneous bits
9885 066257 200 02 0 00 065750 MOVE 2,LASENT ; get address of last entry
9886 066260 200 01 0 02 000000 MOVE 1,(2) ; get FLINK of last entry
9887 066261 202 03 0 02 000000 MOVEM 3,(2) ; set up new FLINK of last entry
9888 066262 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9889 066263 257 02 0 02 000000 MAP 2,(2) ; no - map to physical
9890 066264 621 02 0 00 777000 TLZ 2,777000 ; get rid of extraneous bits
9891 066265 200 03 0 00 120751' MOVE 3,NEWENT ; get address of new entry
9892 066266 202 01 0 03 000000 MOVEM 1,(3) ; set up FLINK of new entry
9893 066267 202 02 0 03 000001 MOVEM 2,1(3) ; set up BLINK of new entry
9894 066270 336 00 0 00 121012' SKIPN UDEBUG ; debug mode?
9895 066271 257 03 0 03 000000 MAP 3,(3) ; no - map to physical
9896 066272 621 03 0 00 777000 TLZ 3,777000 ; get rid of extraneous bits
9897 066273 202 03 0 00 070030 MOVEM 3,PCB+30 ; set up new BLINK in PCB
9898 066274 476 00 0 00 070026 SETOM PCB+26 ; reset interlock
9899
9900 ; Update statistics
9901
9902 066275 260 17 0 00 043166 CHKRS4: GO RUPDAT ; update statistics (received)
9903
9904 ; Exit
9905
9906 066276 262 17 0 00 000013 CHKRSX: RGET (Q,2,1,0) ; restore AC's
9907
9908 066302 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 228
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0404
9909
9910 ;#********************************************************************
9911 ;* CHKQUE - Determine which queue to insert entry back on
9912 ;
9913 ; Given: NEWENT - Contains address of packet
9914 ; Returns: Q - Contains queue to put entry back on
9915 ;#********************************************************************
9916
9917 066303 261 17 0 00 000000 CHKQUE: RPUT (0,1) ; save AC's
9918
9919 066305 201 01 0 00 066322 MOVEI 1,CHKTAB-1 ; get entry table address
9920 066306 350 00 0 00 000001 CHKQU0: AOS 1 ; increment table pointer
9921 066307 200 00 0 01 000000 MOVE (1) ; get address
9922 066310 321 00 0 00 066314 JUMPL CHKQUX ; end of list? yes - exit
9923 066311 621 00 0 00 777777 TLZ 777777 ; clear left half
9924 066312 312 00 0 00 120751' CAME NEWENT ; match expected?
9925 066313 254 00 0 00 066306 JRST CHKQU0 ; no - keep looping
9926 066314 554 13 0 01 000000 CHKQUX: HLRZ Q,(1) ; yes - get queue number
9927 066315 301 13 0 00 000005 CAIL Q,5 ; valid queue number?
9928 066316 303 13 0 00 000006 CAILE Q,6
9929 GO [FMSGC <? Unrecognized packet address - >
9930 MOVE NEWENT
9931 PNTHWF
9932 MOVEI Q,6
9933 066317 260 17 0 00 115732 RTN]
9934 066320 262 17 0 00 000001 RGET (1,0) ; restore AC's
9935
9936 066322 263 17 0 00 000000 RTN ; return
9937
9938 066323 000005 071447 CHKTAB: EXP 5B17!QFMG1,5B17!QFMG2,5B17!QFMG3,5B17!QFMG4
9939 066324 000005 072047
9940 066325 000005 072447
9941 066326 000005 073047
9942 066327 000006 073447 EXP 6B17!QFDG1,6B17!QFDG2,6B17!QFDG3,6B17!QFDG4,6B17!QFDG5
9943 066330 000006 074047
9944 066331 000006 074447
9945 066332 000006 075047
9946 066333 000006 075447
9947 066334 000006 076047 EXP 6B17!QFDG6,6B17!QFDG7,6B17!QFDG10,6B17!QFDG11,6B17!QFDG12
9948 066335 000006 076447
9949 066336 000006 077047
9950 066337 000006 077447
9951 066340 000006 100047
9952 066341 777777 777777 -1
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 229
DFCIA1 MAC 27-Oct-84 19:00 Packet Handling Routines SEQ 0405
9953
9954 ;#********************************************************************
9955 ;* SHUTRQ - Turn off response queue available
9956 ;#********************************************************************
9957
9958 066342 261 17 0 00 000001 SHUTRQ: PUT 1 ; save AC1
9959 066343 260 17 0 00 065605* GO RDCSR ; read CSR
9960 066344 254 00 0 00 066351 JRST SHUTRX ; error - exit
9961 066345 621 01 0 00 777777 TLZ 1,777777 ; clear left half
9962 066346 620 01 0 00 000400 TRZ 1,CMDQAV ; clear this bit
9963 066347 660 01 0 00 000200 TRO 1,RESQAV ; set the bit
9964 066350 260 17 0 00 065115* GO LDCSR ; write the CSR register
9965 066351 262 17 0 00 000001 SHUTRX: GET 1 ; restore AC1
9966 066352 263 17 0 00 000000 RTN ; return
9967
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 230
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0406
9968 SUBTTL Queue Print Routines
9969
9970 ;#********************************************************************
9971 ;* PQUEUE - Print a set of queue entries
9972 ;
9973 ; Q - Queue to print - 0-3 - Cmd Queues 3-0
9974 ; 4 - Rsp Queue
9975 ; 5 - Msg Free Queue
9976 ; 6 - Dgm Free Queue
9977 ; PK - Address of packet
9978 ;#********************************************************************
9979
9980 066353 261 17 0 00 000000 PQUEUE: RPUT (0,1,2,3,4) ; save AC's
9981
9982 066360 200 12 0 00 000013 MOVE PK,Q ; get queue number
9983 066361 221 12 0 00 000003 IMULI PK,3 ; calculate offset into PCB as
9984 066362 201 12 0 12 070004 MOVEI PK,PCB+4(PK) ; address of start of queue
9985 066363 200 04 0 00 000012 MOVE 4,PK ; get into AC4 also
9986 066364 260 17 0 00 065617 GO CHKINT ; obtain queue ownership
9987 GO [GO ISTOP ; failed - stop the port,
9988 SETOM (PK) ; clear the interlock word,
9989 GO CHKINT ; obtain the queue again,
9990 JFCL ; and continue
9991 066365 260 17 0 00 115737 RTN]
9992 XCT [TMSGC <CmdQ3> ; print name of queue
9993 TMSGC <CmdQ2>
9994 TMSGC <CmdQ1>
9995 TMSGC <CmdQ0>
9996 TMSGC <RspQ>
9997 TMSGC <MsgFQ>
9998 066366 256 00 0 13 115762 TMSGC <DgmFQ>](Q)
9999 066367 350 00 0 00 000012 AOS PK ; point to FLINK
10000 066370 037 00 0 00 115771 TMSG < (PCB+>
10001 066371 200 00 0 00 000012 MOVE PK ; get address
10002 066372 275 00 0 00 070000 SUBI PCB ; normalize to PCB+n
10003 066373 037 16 0 00 000003 PNTOCS ; print it
10004 066374 037 00 0 00 115773 TMSG <): Flink = >
10005 066375 200 01 0 12 000000 MOVE 1,(PK) ; get FLINK
10006 066376 260 17 0 00 067420 GO LINKP ; print it
10007 066377 037 00 0 00 115776 TMSG < Blink = >
10008 066400 200 01 0 12 000001 MOVE 1,1(PK) ; get BLINK
10009 066401 260 17 0 00 067420 GO LINKP ; print it
10010 066402 336 00 0 00 065750 SKIPN LASENT ; queue empty?
10011 066403 037 00 0 00 116001 TMSGC < Queue is empty> ; yes - print message
10012 066404 201 03 0 00 065664 MOVEI 3,LENTRY ; init entry pointer
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 231
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0407
10013
10014 ; Print the queue entry
10015
10016 066405 350 00 0 00 000003 PQUEU0: AOS 3 ; point to next entry
10017 066406 336 00 0 03 000000 SKIPN (3) ; non-zero queue entry?
10018 066407 254 00 0 00 066413 JRST PQUEUX ; no - done with queue - exit
10019 066410 200 12 0 03 000000 MOVE PK,(3) ; get address of queue entry
10020 XCT [GO PPAKC ; print CmdQ3 entry
10021 GO PPAKC ; print CmdQ2 entry
10022 GO PPAKC ; print CmdQ1 entry
10023 GO PPAKC ; print CmdQ0 entry
10024 GO PPAKR ; print RspQ entry
10025 GO PPAKF ; print MsgFQ entry
10026 066411 256 00 0 13 116005 GO PPAKF](Q) ; print DgmFQ entry
10027 066412 254 00 0 00 066405 JRST PQUEU0 ; loop till done
10028 066413 476 00 0 04 000000 PQUEUX: SETOM (4) ; reset interlock
10029 066414 262 17 0 00 000004 RGET (4,3,2,1,0) ; restore AC's
10030
10031 066421 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 232
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0408
10032
10033 ;#********************************************************************
10034 ;* PPAKC - Print a command queue entry
10035 ;
10036 ; PK - Address of packet
10037 ; Q - Cmd queue number
10038 ;#********************************************************************
10039
10040 066422 261 17 0 00 000000 PPAKC: RPUT (0,1) ; save AC's
10041
10042 066424 476 00 0 00 120716' SETOM CMDPAK# ; set command packet flag
10043 066425 402 00 0 00 120772' SETZM RSPPAK# ; clear response packet flag
10044 066426 037 00 0 00 116014 TMSGC < -------------------->
10045 066427 037 00 0 00 116021 TMSGC < BUFF+>
10046 066430 200 00 0 00 000012 MOVE PK ; calculate buffer
10047 066431 275 00 0 00 071047 SUBI BUFF ; offset
10048 066432 037 16 0 00 000003 PNTOCS ; print it
10049 066433 037 00 0 00 116023 TMSG </ (CmdQ>
10050 066434 201 00 0 00 000003 MOVEI 3 ; calculate cmd queue
10051 066435 274 00 0 00 000013 SUB Q ; number 3-0
10052 066436 037 16 0 00 000003 PNTOCS ; print it
10053 066437 037 00 0 00 116025 TMSG < Entry) - >
10054
10055 ; Print op code
10056
10057 066440 200 01 0 12 000003 PPAKC0: MOVE 1,3(PK) ; get status word
10058 066441 135 11 0 00 113744 LDB OP,[POINT 8,1,23] ; get op code
10059 066442 260 17 0 00 067055 GO OPCPNT ; print op code
10060
10061 ; Now print remainder of queue entry with regard to packet type
10062
10063 066443 261 17 0 00 000002 PPAKCC: PUT 2 ; save AC2
10064 066444 260 17 0 00 067212 GO DECOPC ; decode op code
10065 066445 201 01 0 00 000040 MOVEI 1,40 ; error - set offset to 40
10066 066446 261 17 0 00 000003 RPUT (3,4) ; save AC's
10067
10068 XCT [GO PACK1 ; 0 - SNDDG
10069 GO PACKG ; 1 - SNDMSG
10070 GO PACK5 ; 2 - REQID
10071 GO PACKG ; 3 - SNDRST
10072 GO PACKG ; 4 - SNDSTRT
10073 GO PACKG ; 5 - REQDAT0
10074 GO PACKG ; 6 - REQDAT2
10075 GO PACKG ; 7 - REQDAT2
10076 GO PACK15 ; 10 - SNDLB
10077 GO PACKG ; 11 - REQMDAT
10078 GO PACKG ; 12 - SNDDAT
10079 GO PACKG ; 13 - RETDAT
10080 GO PACKG ; 14 - SNTMDAT
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 233
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0409
10081 10082 GO PACKG ; 15 - CLSBUF
10083 GO PACKG ; 16 - SETCKT
10084 GO PACKG ; 17 - SETCNT
10085 GO PACK33 ; 20 - RDCNT
10086 GO PACK36 ; 21 - WRREG
10087 GO PACK37 ; 22 - RDREG
10088 GO PACKG ; 23 - CNFRET
10089 GO PACKG ; 24 - MCNF
10090 GO PACK13 ; 25 - IDREC
10091 GO PACKG ; 26 - DATREC
10092 GO PACKG ; 27 - RTMDAT
10093 GO PACKG ; 30
10094 GO PACKG ; 31
10095 GO PACKG ; 32
10096 GO PACKG ; 33
10097 GO PACKG ; 34
10098 GO PACKG ; 35
10099 GO PACKG ; 36
10100 GO PACKG ; 37
10101 066450 256 00 0 01 116030 GO PACKG](1) ; 40
10102 066451 262 17 0 00 000004 RGET (4,3,2) ; restore AC's
10103
10104 066454 262 17 0 00 000001 PPAKCX: RGET (1,0) ; restore AC's
10105
10106 066456 263 17 0 00 000000 RTN ; return
10107
10108
10109 ;#********************************************************************
10110 ;* PPAKR - Print a response queue entry
10111 ;
10112 ; PK - Address of packet
10113 ; Q - Cmd queue number
10114 ;#********************************************************************
10115
10116 066457 261 17 0 00 000000 PPAKR: RPUT (0,1) ; save AC's
10117
10118 066461 402 00 0 00 120716' SETZM CMDPAK ; clear command packet flag
10119 066462 476 00 0 00 120772' SETOM RSPPAK ; set response packet flag
10120 066463 037 00 0 00 116014 TMSGC < -------------------->
10121 066464 037 00 0 00 116021 TMSGC < BUFF+>
10122 066465 200 00 0 00 000012 MOVE PK ; calculate buffer
10123 066466 275 00 0 00 071047 SUBI BUFF ; offset
10124 066467 037 16 0 00 000003 PNTOCS ; print it
10125 066470 037 00 0 00 116071 TMSG </ (RspQ Entry) - >
10126 066471 254 00 0 00 066440 PJRST PPAKC0 ; continue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 234
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0410
10127
10128 ;#********************************************************************
10129 ;* PPAKF - Print a free queue entry
10130 ;
10131 ; PK - Address of packet
10132 ; Q - Cmd queue number
10133 ;#********************************************************************
10134
10135 066472 261 17 0 00 000000 PPAKF: RPUT (0,1) ; save AC's
10136
10137 066474 037 00 0 00 116021 TMSGC < BUFF+>
10138 066475 200 00 0 00 000012 MOVE PK ; calculate buffer
10139 066476 275 00 0 00 071047 SUBI BUFF ; offset
10140 066477 037 16 0 00 000003 PNTOCS ; print it
10141 066500 037 00 0 00 116075 TMSG </ Flink = >
10142 066501 200 01 0 12 000000 MOVE 1,(PK) ; get FLINK
10143 066502 260 17 0 00 067420 GO LINKP ; print it
10144 066503 037 00 0 00 116100 TMSG < Blink = >
10145 066504 200 01 0 12 000001 MOVE 1,1(PK) ; get BLINK
10146 066505 260 17 0 00 067420 GO LINKP ; print it
10147 066506 262 17 0 00 000001 RGET (1,0) ; restore AC's
10148
10149 066510 263 17 0 00 000000 RTN ; return
10150
10151
10152 ;#********************************************************************
10153 ;* PACK1 - Print a packet - SNDDG command / DGSNT response
10154 ;#********************************************************************
10155
10156 066511 260 17 0 00 067324 PACK1: GO PHEAD ; print header data
10157 066512 260 17 0 00 067337 GO PPORTO ; print opcode and port
10158 066513 260 17 0 00 066675 GO PSTATS ; print status byte
10159 066514 260 17 0 00 067017 GO PFLAGS ; print flags byte
10160 066515 260 17 0 00 067352 GO PTEXT ; print text
10161 066516 263 17 0 00 000000 RTN ; return
10162
10163
10164 ;#********************************************************************
10165 ;* PACK5 - Print a packet - REQID command / IDREQ response
10166 ;#********************************************************************
10167
10168 066517 260 17 0 00 067324 PACK5: GO PHEAD ; print header data
10169 066520 260 17 0 00 067337 GO PPORTO ; print opcode and port
10170 066521 260 17 0 00 066675 GO PSTATS ; print status byte
10171 066522 260 17 0 00 067017 GO PFLAGS ; print flags byte
10172 066523 260 17 0 00 067311 GO PXCTID ; print 2-word XCT-ID
10173 066524 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 235
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0411
10174
10175 ;#********************************************************************
10176 ;* PACK13 - Print a packet - ID response
10177 ;#********************************************************************
10178
10179 066525 260 17 0 00 067324 PACK13: GO PHEAD ; print header data
10180 066526 260 17 0 00 067337 GO PPORTO ; print opcode and port
10181 066527 260 17 0 00 066675 GO PSTATS ; print status byte
10182 066530 260 17 0 00 067017 GO PFLAGS ; print flags byte
10183 066531 260 17 0 00 067311 GO PXCTID ; print 2-word XCT-ID
10184
10185 ; Print maintenance ID word
10186
10187 066532 037 00 0 00 116103 TMSGC < Port Type: >
10188 066533 200 01 0 12 000006 MOVE 1,6(PK) ; get port type word
10189 066534 135 01 0 00 116107 LDB 1,[POINT 6,1,31] ; get port type
10190 066535 200 00 0 00 000001 MOVE 1 ; get into AC0
10191 066536 037 16 0 00 000003 PNTOCS ; print it
10192 066537 303 01 0 00 000007 CAILE 1,7 ; exceed allowed range?
10193 066540 201 01 0 00 000007 MOVEI 1,7 ; yes - limit to 7
10194 XCT [TMSG < (Undefined)> ; print type 0
10195 TMSG < (Undefined)> ; type 1
10196 TMSG < (CI780)> ; type 2
10197 TMSG < (CI750)> ; type 3
10198 TMSG < (HSC50)> ; type 4
10199 TMSG < (Jupiter)> ; type 5
10200 TMSG < (KL10)> ; type 6
10201 066541 256 00 0 01 116126 TMSG < (Undefined)>](1); type 7
10202 066542 200 01 0 12 000006 MOVE 1,6(PK) ; get Maint-ID word
10203 066543 603 01 0 00 400000 TLNE 1,400000 ; dual path?
10204 066544 037 00 0 00 116136 TMSGC < Responding port has 2 paths>
10205 066545 607 01 0 00 400000 TLNN 1,400000 ; dual path?
10206 066546 037 00 0 00 116145 TMSGC < Responding port has 1 path>
10207
10208 ; Print microcode revision level
10209
10210 066547 037 00 0 00 116153 TMSGC < Code Rev Level: >
10211 066550 200 00 0 12 000007 MOVE 7(PK) ; get CODE REV word
10212 066551 242 00 0 00 777774 LSH -4 ; position correctly
10213 066552 037 16 0 00 000003 PNTOCS ; print it
10214
10215 ; Print port functionality
10216
10217 066553 037 00 0 00 116160 TMSGC < Port Functionality: >
10218 066554 200 00 0 12 000010 MOVE 10(PK) ; get functionality word
10219 066555 242 00 0 00 777764 LSH -^D12 ; position correctly
10220 066556 037 16 0 00 000003 PNTOCS ; print it
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 236
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0412
10221
10222 ; Print state word
10223
10224 066557 037 00 0 00 116165 TMSGC < Last Port to send a reset: >
10225 066560 200 01 0 12 000011 MOVE 1,11(PK) ; get system state word
10226 066561 135 00 0 00 116174 LDB [POINT 8,1,31] ; get port number
10227 066562 037 16 0 00 000003 PNTOCS ; print it
10228 066563 037 00 0 00 116175 TMSGC < Port State: >
10229 066564 135 01 0 00 116201 LDB 1,[POINT 2,1,22] ; get state bits
10230 XCT [TMSG <Uninitialized> ; print it
10231 TMSG <Disabled>
10232 TMSG <Enabled>
10233 066565 256 00 0 01 116213 TMSG <Undefined>](1)
10234 066566 200 01 0 12 000011 MOVE 1,11(PK) ; get system state word
10235 066567 135 01 0 00 116217 LDB 1,[POINT 1,1,23] ; get maintenance state
10236 XCT [TMSGC < Not in maint mode>
10237 066570 256 00 0 01 116231 TMSGC < In maint mode>](1)
10238 066571 263 17 0 00 000000 RTN ; return
10239
10240
10241 ;#********************************************************************
10242 ;* PACK15 - Print a packet - SNDLB command / LBSNT response
10243 ;#********************************************************************
10244
10245 066572 260 17 0 00 067324 PACK15: GO PHEAD ; print header data
10246 066573 260 17 0 00 067337 GO PPORTO ; print opcode and port
10247 066574 260 17 0 00 066675 GO PSTATS ; print status byte
10248 066575 260 17 0 00 067017 GO PFLAGS ; print flags byte
10249 066576 260 17 0 00 067352 GO PTEXT ; print text data
10250 066577 037 00 0 00 116233 TMSGC < CRC: >
10251 066600 201 01 0 12 000005 MOVEI 1,5(PK) ; address of CRC if 0 byte length
10252 066601 200 00 0 12 000004 MOVE 4(PK) ; get text length
10253 066602 322 00 0 00 066616 JUMPE PK15A ; zero? yes - go print CRC
10254 066603 242 00 0 00 000001 LSH 1 ; multiply by 2
10255 066604 200 02 0 12 000003 MOVE 2,3(PK) ; get status word
10256 066605 607 02 0 00 001000 TLNN 2,1000 ; COMPAT format?
10257 066606 231 00 0 00 000010 IDIVI 8 ; yes - calculate # words of text
10258 066607 603 02 0 00 001000 TLNE 2,1000 ; HIDEN format?
10259 066610 231 00 0 00 000011 IDIVI 9 ; yes - and divide by 9
10260 066611 332 00 0 00 000001 SKIPE 1 ; any remainder?
10261 066612 271 00 0 00 000001 ADDI 1 ; yes - increase by 1 word
10262 066613 202 00 0 00 000002 MOVEM 2 ; save length in AC2
10263 066614 270 02 0 00 000012 ADD 2,PK ; calculate address that the
10264 066615 201 05 0 02 000005 MOVEI 5,5(2) ; CRC is at
10265 066616 200 00 0 05 000000 PK15A: MOVE (5) ; get CRC
10266 066617 037 13 0 00 000000 PNTHW ; print it
10267 066620 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 237
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0413
10268
10269 ;#********************************************************************
10270 ;* PACK33 - Print a packet - RDCNT command / CNTRD response
10271 ;#********************************************************************
10272
10273 066621 260 17 0 00 067324 PACK33: GO PHEAD ; print header data
10274 066622 260 17 0 00 067337 GO PPORTO ; print opcode and port
10275 066623 260 17 0 00 066675 GO PSTATS ; print status byte
10276 066624 260 17 0 00 067017 GO PFLAGS ; print flags byte
10277 066625 260 17 0 00 067311 GO PXCTID ; print 2-word XCT-ID
10278 066626 201 01 0 00 000006 MOVEI 1,6 ; get address to start
10279 066627 201 03 0 00 000016 MOVEI 3,^D14 ; get address to stop
10280 066630 260 17 0 00 066772 GO PMISC ; print miscellaneous data
10281 066631 263 17 0 00 000000 RTN ; return
10282
10283
10284 ;#********************************************************************
10285 ;* PACK36 - Print a packet - RDREG command / REGRD response
10286 ;#********************************************************************
10287
10288 066632 260 17 0 00 067324 PACK36: GO PHEAD ; print header data
10289 066633 260 17 0 00 067337 GO PPORTO ; print opcode and port
10290 066634 260 17 0 00 066675 GO PSTATS ; print status byte
10291 066635 260 17 0 00 067017 GO PFLAGS ; print flags byte
10292 066636 037 00 0 00 116236 TMSGC < Register = >
10293 066637 200 01 0 12 000004 MOVE 1,4(PK) ; get data word
10294 066640 135 00 0 00 113744 LDB [POINT 8,1,23] ; get register number
10295 066641 037 16 0 00 000003 PNTOCS ; print it
10296 066642 037 00 0 00 116241 TMSG <, Data = >
10297 066643 200 01 0 12 000004 MOVE 1,4(PK) ; get data word
10298 066644 135 00 0 00 116243 LDB [POINT 8,1,7] ; get data
10299 066645 037 16 0 00 000003 PNTOCS ; print it
10300 066646 263 17 0 00 000000 RTN ; return
10301
10302
10303 ;#********************************************************************
10304 ;* PACK37 - Print a packet - WRREG command / REGWR response
10305 ;#********************************************************************
10306
10307 066647 260 17 0 00 067324 PACK37: GO PHEAD ; print header data
10308 066650 260 17 0 00 067337 GO PPORTO ; print opcode and port
10309 066651 260 17 0 00 066675 GO PSTATS ; print status byte
10310 066652 260 17 0 00 067017 GO PFLAGS ; print flags byte
10311 066653 037 00 0 00 116236 TMSGC < Register = >
10312 066654 200 01 0 12 000004 MOVE 1,4(PK) ; get data word
10313 066655 135 00 0 00 113744 LDB [POINT 8,1,23] ; get register number
10314 066656 037 16 0 00 000003 PNTOCS ; print it
10315 066657 037 00 0 00 116241 TMSG <, Data = >
10316 066660 200 01 0 12 000004 MOVE 1,4(PK) ; get data word
10317 066661 135 00 0 00 116174 LDB [POINT 8,1,31] ; get data
10318 066662 037 16 0 00 000003 PNTOCS ; print it
10319 066663 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 238
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0414
10320
10321 ;#********************************************************************
10322 ;* PACKG - Print a general type packet
10323 ;
10324 ; OP Code: 2 - Print a packet - SNDMSG command / MSGSNT response
10325 ; 3 - Print a packet - CNFRET response
10326 ; 4 - Print a packet - MCNF response
10327 ; 6 - Print a packet - SNDRST command / RSTSNT response
10328 ; 7 - Print a packet - SNDSTRT command / STRTSNT response
10329 ; 10 - Print a packet - REQDAT0/1/2 command / DATREQ0/1/2 response
10330 ; 16 - Print a packet - REQMDAT command / MDATREQ response
10331 ; 20 - Print a packet - SNDDAT command / SNTDAT response
10332 ; 21 - Print a packet - RETDAT command / DATRET response
10333 ; 22 - Print a packet - SNTMDAT command / MDATSNT response
10334 ; 23 - Print a packet - RETMDAT response
10335 ; 30 - Print a command CLSBUF / BUFCLS response
10336 ; 31 - Print a packet - SETCKT command / CKTSET response
10337 ; 32 - Print a packet - SETCNT command / CNTSET response
10338 ;#********************************************************************
10339
10340 066664 260 17 0 00 067324 PACKG: GO PHEAD ; print header data
10341 066665 260 17 0 00 067337 GO PPORTO ; print opcode and port
10342 066666 260 17 0 00 066675 GO PSTATS ; print status byte
10343 066667 260 17 0 00 067017 GO PFLAGS ; print flags byte
10344 066670 260 17 0 00 067311 GO PXCTID ; print 2-word XCT-ID
10345 066671 201 01 0 00 000006 MOVEI 1,6 ; get address to start
10346 066672 201 03 0 00 000011 MOVEI 3,9 ; get address to stop
10347 066673 260 17 0 00 066772 GO PMISC ; print miscellaneous data
10348 066674 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 239
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0415
10349
10350 ;#********************************************************************
10351 ;* PSTATS - Print status field
10352 ;#********************************************************************
10353
10354 066675 261 17 0 00 000000 PSTATS: RPUT (0,1,2,3) ; save AC's
10355
10356 066701 200 01 0 12 000003 MOVE 1,3(PK) ; get word
10357 066702 135 01 0 00 116243 LDB 1,[POINT 8,1,7] ; get status byte
10358 066703 037 00 0 00 116244 TMSGC < Status:>
10359 066704 602 01 0 00 000200 TRNE 1,200 ; path status field?
10360 066705 254 00 0 00 066720 JRST PSTAT1 ; no - handle other type
10361
10362 ; Path status byte
10363
10364 066706 336 00 0 00 000001 SKIPN 1 ; any status to print?
10365 066707 037 00 0 00 116247 TMSG < No Error> ; no - print no error
10366 066710 474 02 0 00 000000 SETO 2, ; initialize text pointer
10367 066711 350 00 0 00 000002 PSTAT0: AOS 2 ; point to next text string
10368 066712 301 02 0 00 000006 CAIL 2,6 ; done yet?
10369 066713 254 00 0 00 066736 JRST PSTATX ; yes - exit
10370 066714 602 01 0 00 000040 TRNE 1,40 ; bit set?
10371 XCT [TMSG < Path A ACK> ; yes - print it
10372 TMSG < Path A NAK>
10373 TMSG < Path A NRSP>
10374 TMSG < Path B ACK>
10375 TMSG < Path B NAK>
10376 066715 256 00 0 02 116274 TMSG < Path B NRSP>](2)
10377 066716 242 01 0 00 000001 LSH 1,1 ; left shift 1 bit
10378 066717 254 00 0 00 066711 JRST PSTAT0 ; loop till done
10379
10380 ; Error byte
10381
10382 066720 135 02 0 00 116302 PSTAT1: LDB 2,[POINT 7,1,35] ; get error bits
10383 066721 201 01 0 00 066742 MOVEI 1,STATAB-1 ; initialize table address
10384 066722 350 00 0 00 000001 PSTAT2: AOS 1 ; point to next entry
10385 066723 337 00 0 01 000000 SKIPG (1) ; end of list?
10386 066724 254 00 0 00 066733 JRST PSTAT3 ; yes - print unrecognized
10387 066725 554 00 0 01 000000 HLRZ (1) ; get error code
10388 066726 312 00 0 00 000002 CAME 2 ; match?
10389 066727 254 00 0 00 066722 JRST PSTAT2 ; no - keep looking
10390 066730 550 01 0 01 000000 HRRZ 1,(1) ; get address of text to print
10391 066731 256 00 0 01 000000 XCT (1) ; print it
10392 066732 254 00 0 00 066736 JRST PSTATX ; exit
10393
10394 066733 037 00 0 00 116303 PSTAT3: TMSG < ? Invalid error code - >
10395 066734 200 00 0 00 000002 MOVE 2
10396 066735 037 16 0 00 000003 PNTOCS
10397
10398 ; Exit
10399
10400 066736 262 17 0 00 000003 PSTATX: RGET (3,2,1,0) ; done - restore AC's
10401
10402 066742 263 17 0 00 000000 RTN ; and return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 240
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0416
10403
10404 ; Status error table
10405
10406 066743 000000 116312 STATAB: 0,,[TMSG < No Error>]
10407 066744 000001 116321 1,,[TMSG < Access Control Violation>]
10408 066745 000002 116327 2,,[TMSG < Invalid Buffer Name>]
10409 066746 000003 116335 3,,[TMSG < Buffer Length Violation>]
10410 066747 000004 116343 4,,[TMSG < Packet Size Violation>]
10411 066750 000006 116351 6,,[TMSG < Local Unrecognized Cmd>]
10412 066751 000017 116361 17,,[TMSG < Port Disabled During Processing>]
10413 066752 000007 116370 7,,[TMSG < Internal port hardware error>]
10414 066753 000010 116376 10,,[TMSG < Invalid remote port>]
10415 066754 000011 116402 11,,[TMSG < CRC error>]
10416 066755 000012 116406 12,,[TMSG < No legal path>]
10417 066756 000041 116416 41,,[TMSG < Path B - Remote Unrecognized Cmd>]
10418 066757 000042 116426 42,,[TMSG < Path B - Virtual Circuit Closed>]
10419 066760 000043 116436 43,,[TMSG < Path B - Retries Exhausted (NAK)>]
10420 066761 000044 116446 44,,[TMSG < Path B - Retries Exhausted (NRSP)>]
10421 066762 000101 116456 101,,[TMSG < Path A - Remote Unrecognized Cmd>]
10422 066763 000102 116466 102,,[TMSG < Path A - Virtual Circuit Closed>]
10423 066764 000103 116476 103,,[TMSG < Path A - Retries Exhausted (NAK)>]
10424 066765 000104 116506 104,,[TMSG < Path A - Retries Exhausted (NRSP)>]
10425 066766 000142 116516 142,,[TMSG < Path A/B - Virtual Circuit Closed>]
10426 066767 000143 116527 143,,[TMSG < Path A/B - Retries Exhausted (NAK)>]
10427 066770 000144 116540 144,,[TMSG < Path A/B - Retries Exhausted (NRSP)>]
10428 066771 777777 777777 -1
10429
10430
10431 ;#********************************************************************
10432 ;* PMISC - Print miscellaneous data at the end of a packet
10433 ;
10434 ; AC1 - Points to address to start printing
10435 ; PK - Points to address of start of packet
10436 ;#********************************************************************
10437
10438 066772 261 17 0 00 000000 PMISC: RPUT (0,1,2,3) ; save AC's
10439
10440 066776 037 00 0 00 116541 TMSGC < Packet Data:> ; print heading
10441 066777 201 02 0 00 000004 MOVEI 2,4 ; initialize word number
10442 067000 037 00 0 00 116545 PMISC0: TMSGC < +> ; print word count
10443 067001 200 00 0 00 000002 MOVE 2 ; get word number
10444 067002 037 16 0 00 000003 PNTOCS ; print it
10445 067003 037 00 0 00 111633 TMSG </ >
10446 067004 200 00 0 01 000000 MOVE (1) ; get packet data
10447 067005 037 13 0 00 000000 PNTHW ; print it
10448 067006 350 00 0 00 000001 AOS 1 ; point to next word
10449 067007 350 00 0 00 000002 AOS 2 ; increment word count
10450 067010 315 02 0 00 000003 CAMGE 2,3 ; done yet?
10451 067011 254 00 0 00 067000 JRST PMISC0 ; no - loop till done
10452 067012 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
10453
10454 067016 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 241
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0417
10455
10456 ;#********************************************************************
10457 ;* PFLAGS - Print flags field (AC1 contains status byte (right justified))
10458 ;#********************************************************************
10459
10460 067017 261 17 0 00 000000 PFLAGS: RPUT (0,1,2,3) ; save AC's
10461
10462 067023 200 01 0 12 000003 MOVE 1,3(PK) ; get word
10463 067024 135 01 0 00 116546 LDB 1,[POINT 8,1,15] ; get flags byte
10464 067025 037 00 0 00 116547 TMSGC < Flags: >
10465 067026 606 01 0 00 000200 TRNN 1,200 ; packet size bit set?
10466 067027 037 00 0 00 116552 TMSG <512. bytes> ; no - 512 bytes
10467 067030 602 01 0 00 000200 TRNE 1,200 ; packet size bit set?
10468 067031 037 00 0 00 116555 TMSG <576. bytes> ; yes - 576 bytes
10469 067032 606 01 0 00 000100 TRNN 1,100 ; format flag set?
10470 067033 037 00 0 00 116560 TMSG <, COMPAT mode> ; no - industry compatible mode
10471 067034 602 01 0 00 000100 TRNE 1,100 ; format flag set?
10472 067035 037 00 0 00 116563 TMSG <, HIDEN mode> ; yes - high density mode
10473 067036 037 00 0 00 116566 TMSG <, M=>
10474 067037 135 00 0 00 116567 LDB [POINT 3,1,31] ; get M field
10475 067040 037 16 0 00 000003 PNTOCS
10476 067041 135 02 0 00 116570 LDB 2,[POINT 2,1,34] ; get path select field
10477 XCT [TMSG <, Auto path> ; print it
10478 TMSG <, Path A>
10479 TMSG <, Path B>
10480 067042 256 00 0 02 116603 TMSG <, Undefined>](2)
10481 067043 037 00 0 00 116607 TMSG <, Rsp requested=>
10482 067044 606 01 0 00 000001 TRNN 1,1 ; response requested?
10483 067045 037 00 0 00 116613 TMSG <No> ; no - print such
10484 067046 602 01 0 00 000001 TRNE 1,1 ; response requested?
10485 067047 037 00 0 00 116614 TMSG <Yes> ; yes - print such
10486 067050 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
10487
10488 067054 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 242
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0418
10489
10490 ;#********************************************************************
10491 ;* OPCPNT - Print opcode of command packet
10492 ;
10493 ; OP - Contains opcode
10494 ;#********************************************************************
10495
10496 067055 261 17 0 00 000000 OPCPNT: RPUT (0,1) ; save AC's
10497
10498 067057 200 00 0 00 000011 MOVE OP ; get op code
10499 067060 037 16 0 00 000003 PNTOCS ; print it
10500 067061 037 00 0 00 103613 TMSG <->
10501 067062 201 01 0 00 067104 MOVEI 1,CMDOPC-1 ; get cmd packet table
10502 067063 336 00 0 00 120716' SKIPN CMDPAK ; command packet?
10503 067064 201 01 0 00 067130 MOVEI 1,RSPOPC-1 ; no - get rsp packet table
10504 067065 350 00 0 00 000001 OPCPN0: AOS 1 ; point to next entry
10505 067066 554 00 0 01 000000 HLRZ (1) ; get entry
10506 067067 322 00 0 00 067076 JUMPE OPCPNE ; done? yes - error
10507 067070 312 00 0 00 000011 CAME OP ; correct?
10508 067071 254 00 0 00 067065 JRST OPCPN0 ; no - look at next entry
10509 067072 550 01 0 01 000000 HRRZ 1,(1) ; get address of message
10510 067073 200 01 0 01 000000 MOVE 1,(1) ; get message
10511 067074 256 00 0 00 000001 XCT 1 ; print it
10512 067075 254 00 0 00 067102 JRST OPCPNX ; exit
10513 067076 037 00 0 00 116615 OPCPNE: TMSG <??>
10514 067077 200 00 0 00 000011 MOVE OP
10515 067100 037 16 0 00 000003 PNTOCS
10516 067101 037 00 0 00 116615 TMSG <??>
10517 067102 262 17 0 00 000001 OPCPNX: RGET (1,0) ; restore AC's
10518
10519 067104 263 17 0 00 000000 RTN ; return
10520
10521 ; Table of command queue opcodes
10522
10523 067105 000001 116620 CMDOPC: SNDDG,,[TMSG <SNDDG>]
10524 067106 000002 116623 SNDMSG,,[TMSG <SNDMSG>]
10525 067107 000005 116626 REQID,,[TMSG <REQID>]
10526 067110 000006 116631 SNDRST,,[TMSG <SNDRST>]
10527 067111 000007 116634 SNDSTR,,[TMSG <SNDSTRT>]
10528 067112 000010 116637 REQDT0,,[TMSG <REQDAT0>]
10529 067113 000011 116642 REQDT1,,[TMSG <REQDAT1>]
10530 067114 000012 116645 REQDT2,,[TMSG <REQDAT2>]
10531 067115 000015 116650 SNDLB,,[TMSG <SNDLB>]
10532 067116 000016 116653 REQMDT,,[TMSG <REQMDAT>]
10533 067117 000020 116656 SNDDAT,,[TMSG <SNDDAT>]
10534 067120 000021 116661 RETDAT,,[TMSG <RETDAT>]
10535 067121 000022 116664 SNDMDT,,[TMSG <SNDMDAT>]
10536 067122 000030 116667 CLSBUF,,[TMSG <CLSBUF>]
10537 067123 000200 116672 SETCKT,,[TMSG <SETCKT>]
10538 067124 000201 116675 SETCNT,,[TMSG <SETCNT>]
10539 067125 000202 116700 RDCNT,,[TMSG <RDCNT>]
10540 067126 000203 116703 RDREG,,[TMSG <RDREG>]
10541 067127 000204 116706 WRREG,,[TMSG <WRREG>]
10542 067130 000000 000000 0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 243
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0419
10543
10544 ; Table of response queue opcodes
10545
10546 067131 000001 116711 RSPOPC: DGSNT,,[TMSG <DGSNT>]
10547 067132 000002 116714 MSGSNT,,[TMSG <MSGSNT>]
10548 067133 000003 116717 CNFRET,,[TMSG <CNFRET>]
10549 067134 000004 116721 MCNF,,[TMSG <MCNF>]
10550 067135 000005 116724 IDREQ,,[TMSG <IDREQ>]
10551 067136 000006 116727 RSTSNT,,[TMSG <RSTSNT>]
10552 067137 000007 116732 STRSNT,,[TMSG <STRTSNT>]
10553 067140 000010 116735 DATRQ0,,[TMSG <DATREQ0>]
10554 067141 000011 116740 DATRQ1,,[TMSG <DATREQ1>]
10555 067142 000012 116743 DATRQ2,,[TMSG <DATREQ2>]
10556 067143 000013 116746 IDREC,,[TMSG <IDREC>]
10557 067144 000014 116751 DATREC,,[TMSG <DATREC>]
10558 067145 000015 116754 LBSNT,,[TMSG <LBSNT>]
10559 067146 000016 116757 MDATRQ,,[TMSG <MDATREQ>]
10560 067147 000020 116762 DATSNT,,[TMSG <DATSNT>]
10561 067150 000021 116765 DATRET,,[TMSG <DATRET>]
10562 067151 000022 116770 MDTSNT,,[TMSG <MDATSNT>]
10563 067152 000023 116773 RTMDAT,,[TMSG <RETMDAT>]
10564 067153 000030 116776 BUFCLS,,[TMSG <BUFCLS>]
10565 067154 000200 117001 CKTSET,,[TMSG <CKTSET>]
10566 067155 000201 117004 CNTSET,,[TMSG <CNTSET>]
10567 067156 000202 117007 CNTRD,,[TMSG <CNTRD>]
10568 067157 000203 117012 REGRD,,[TMSG <REGRD>]
10569 067160 000204 117015 REGWR,,[TMSG <REGWR>]
10570
10571 067161 000041 116711 DGSNT+40,,[TMSG <DGSNT>]
10572 067162 000042 116714 MSGSNT+40,,[TMSG <MSGSNT>]
10573 067163 000043 116717 CNFRET+40,,[TMSG <CNFRET>]
10574 067164 000044 116721 MCNF+40,,[TMSG <MCNF>]
10575 067165 000045 116724 IDREQ+40,,[TMSG <IDREQ>]
10576 067166 000046 116727 RSTSNT+40,,[TMSG <RSTSNT>]
10577 067167 000047 116732 STRSNT+40,,[TMSG <STRTSNT>]
10578 067170 000050 116735 DATRQ0+40,,[TMSG <DATREQ0>]
10579 067171 000051 116740 DATRQ1+40,,[TMSG <DATREQ1>]
10580 067172 000052 116743 DATRQ2+40,,[TMSG <DATREQ2>]
10581 067173 000053 116746 IDREC+40,,[TMSG <IDREC>]
10582 067174 000054 116751 DATREC+40,,[TMSG <DATREC>]
10583 067175 000055 116754 LBSNT+40,,[TMSG <LBSNT>]
10584 067176 000056 116757 MDATRQ+40,,[TMSG <MDATREQ>]
10585 067177 000060 116762 DATSNT+40,,[TMSG <DATSNT>]
10586 067200 000061 116765 DATRET+40,,[TMSG <DATRET>]
10587 067201 000062 116770 MDTSNT+40,,[TMSG <MDATSNT>]
10588 067202 000063 116773 RTMDAT+40,,[TMSG <RETMDAT>]
10589 067203 000070 116776 BUFCLS+40,,[TMSG <BUFCLS>]
10590 067204 000240 117001 CKTSET+40,,[TMSG <CKTSET>]
10591 067205 000241 117004 CNTSET+40,,[TMSG <CNTSET>]
10592 067206 000242 117007 CNTRD+40,,[TMSG <CNTRD>]
10593 067207 000243 117012 REGRD+40,,[TMSG <REGRD>]
10594 067210 000244 117015 REGWR+40,,[TMSG <REGWR>]
10595 067211 000000 000000 0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 244
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0420
10596
10597 ;#********************************************************************
10598 ;* DECOPC - Decode op code
10599 ;
10600 ; Given: OP - Contains op code to decode
10601 ;
10602 ; Returns: AC1 - Contains offset address of opcode (0..n)
10603 ; AC2 - Contains 0 - Sent
10604 ; 1 - Received (as a response ...)
10605 ; 2 - Received (from another port)
10606 ; +1 - No match
10607 ; +2 - Match
10608 ;#********************************************************************
10609
10610 067212 261 17 0 00 000000 DECOPC: PUT 0 ; save AC0
10611 067213 201 01 0 00 067227 MOVEI 1,DECTAB-1 ; initialize table address
10612 067214 350 00 0 00 000001 DECOP0: AOS 1 ; point to next entry
10613 067215 336 00 0 01 000000 SKIPN (1) ; end of list?
10614 067216 254 00 0 00 067226 JRST DECOPX ; yes - exit +1 (error)
10615 067217 550 00 0 01 000000 HRRZ (1) ; get op code
10616 067220 312 00 0 00 000011 CAME OP ; match?
10617 067221 254 00 0 00 067214 JRST DECOP0 ; no - loop till done
10618 067222 200 02 0 01 000000 MOVE 2,(1) ; get data
10619 067223 135 01 0 00 117016 LDB 1,[POINT 15,2,17] ; get offset
10620 067224 135 02 0 00 117017 LDB 2,[POINT 3,2,2] ; get type
10621 067225 350 00 0 17 777777 AOS -1(P) ; set up return +2
10622 067226 262 17 0 00 000000 DECOPX: GET 0 ; restore AC0
10623 067227 263 17 0 00 000000 RTN ; exit
10624
10625 ; Table of op codes (for sending packets)
10626
10627 067230 000000 000001 DECTAB: 0B2!0B17!SNDDG ; 0
10628 067231 000001 000002 0B2!1B17!SNDMSG ; 1
10629 067232 000002 000005 0B2!2B17!REQID ; 2
10630 067233 000003 000006 0B2!3B17!SNDRST ; 3
10631 067234 000004 000007 0B2!4B17!SNDSTR ; 4
10632 067235 000005 000010 0B2!5B17!REQDT0 ; 5
10633 067236 000006 000011 0B2!6B17!REQDT1 ; 6
10634 067237 000007 000012 0B2!7B17!REQDT2 ; 7
10635 067240 000010 000015 0B2!10B17!SNDLB ; 10
10636 067241 000011 000016 0B2!11B17!REQMDT ; 11
10637 067242 000012 000020 0B2!12B17!SNDDAT ; 12
10638 067243 000013 000021 0B2!13B17!RETDAT ; 13
10639 067244 000014 000022 0B2!14B17!SNDMDT ; 14
10640 067245 000015 000030 0B2!15B17!CLSBUF ; 15
10641 067246 000016 000200 0B2!16B17!SETCKT ; 16
10642 067247 000017 000201 0B2!17B17!SETCNT ; 17
10643 067250 000020 000202 0B2!20B17!RDCNT ; 20
10644 067251 000021 000203 0B2!21B17!RDREG ; 21
10645 067252 000022 000204 0B2!22B17!WRREG ; 22
10646
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 245
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0421
10647 067253 100023 000003 1B2!23B17!CNFRET ; 23
10648 067254 100024 000004 1B2!24B17!MCNF ; 24
10649 067255 100025 000013 1B2!25B17!IDREC ; 25
10650 067256 100026 000014 1B2!26B17!DATREC ; 26
10651 067257 100027 000023 1B2!27B17!RTMDAT ; 27
10652
10653 067260 200000 000041 2B2!0B17!DGSNT+40 ; 0
10654 067261 200001 000042 2B2!1B17!MSGSNT+40 ; 1
10655 067262 200023 000043 2B2!23B17!CNFRET+40 ; 23
10656 067263 200024 000044 2B2!24B17!MCNF+40 ; 24
10657 067264 200025 000045 2B2!25B17!IDREQ+40 ; 25
10658 067265 200003 000046 2B2!3B17!RSTSNT+40 ; 3
10659 067266 200004 000047 2B2!4B17!STRSNT+40 ; 4
10660 067267 200005 000050 2B2!5B17!DATRQ0+40 ; 5
10661 067270 200006 000051 2B2!6B17!DATRQ1+40 ; 6
10662 067271 200007 000052 2B2!7B17!DATRQ2+40 ; 7
10663 067272 200025 000053 2B2!25B17!IDREC+40 ; 25
10664 067273 200026 000054 2B2!26B17!DATREC+40 ; 26
10665 067274 200010 000055 2B2!10B17!LBSNT+40 ; 10
10666 067275 200011 000056 2B2!11B17!MDATRQ+40 ; 11
10667 067276 200012 000060 2B2!12B17!DATSNT+40 ; 12
10668 067277 200013 000061 2B2!13B17!DATRET+40 ; 13
10669 067300 200014 000062 2B2!14B17!MDTSNT+40 ; 14
10670 067301 200027 000063 2B2!27B17!RTMDAT+40 ; 27
10671 067302 200015 000070 2B2!15B17!BUFCLS+40 ; 15
10672 067303 200016 000240 2B2!16B17!CKTSET+40 ; 16
10673 067304 200017 000241 2B2!17B17!CNTSET+40 ; 17
10674 067305 200020 000242 2B2!20B17!CNTRD+40 ; 20
10675 067306 200021 000243 2B2!21B17!REGRD+40 ; 21
10676 067307 200022 000244 2B2!22B17!REGWR+40 ; 22
10677 067310 000000 000000 0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 246
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0422
10678
10679 ;#********************************************************************
10680 ;* PXCTID - Print 2 word XCT ID in words 4/5
10681 ;#********************************************************************
10682
10683 067311 261 17 0 00 000000 PXCTID: PUT 0 ; save AC0
10684 067312 037 00 0 00 117020 TMSGC < XCT-ID: >
10685 067313 200 00 0 12 000004 MOVE 4(PK) ; get first word
10686 067314 242 00 0 00 777774 LSH -4 ; position properly
10687 067315 037 16 0 00 000003 PNTOCS ; print it
10688 067316 037 00 0 00 103540 TMSG < >
10689 067317 200 00 0 12 000005 MOVE 5(PK) ; get second word
10690 067320 242 00 0 00 777774 LSH -4 ; position properly
10691 067321 037 16 0 00 000003 PNTOCS ; print it
10692 067322 262 17 0 00 000000 GET 0 ; restore AC0
10693 067323 263 17 0 00 000000 RTN ; return
10694
10695
10696 ;#********************************************************************
10697 ;* PHEAD - Print header info of a packet
10698 ;#********************************************************************
10699
10700 067324 261 17 0 00 000000 PHEAD: RPUT (0,1) ; save AC's
10701
10702
10703 ; Print Flink/Blink
10704
10705 067326 037 00 0 00 117023 TMSGC < Flink = >
10706 067327 200 01 0 12 000000 MOVE 1,(PK) ; get FLINK
10707 067330 260 17 0 00 067420 GO LINKP ; print it
10708 067331 037 00 0 00 117026 TMSG < / Blink = >
10709 067332 200 01 0 12 000001 MOVE 1,1(PK) ; get BLINK
10710 067333 260 17 0 00 067420 GO LINKP ; print it
10711 067334 262 17 0 00 000001 RGET (1,0) ; restore AC's
10712
10713 067336 263 17 0 00 000000 RTN ; return
10714
10715
10716 ;#********************************************************************
10717 ;* PPORTO - Print opcode and port in packet printout
10718 ;#********************************************************************
10719
10720 067337 261 17 0 00 000000 PPORTO: RPUT (0,1) ; save AC's
10721
10722 067341 037 00 0 00 117031 TMSGC < Status word: OpCode = >
10723 067342 260 17 0 00 067055 GO OPCPNT ; print OP CODE
10724 067343 037 00 0 00 117037 TMSG <, Port = >
10725 067344 200 01 0 12 000003 MOVE 1,3(PK) ; get status word
10726 067345 135 00 0 00 116174 LDB [POINT 8,1,31] ; get port number
10727 067346 037 16 0 00 000003 PNTOCS ; print it
10728 067347 262 17 0 00 000001 RGET (1,0) ; restore AC's
10729
10730 067351 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 247
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0423
10731
10732 ;#********************************************************************
10733 ;* PTEXT - Print text of a command packet
10734 ;#********************************************************************
10735
10736 067352 261 17 0 00 000000 PTEXT: RPUT (0,1,2,3) ; save AC's
10737
10738 067356 037 00 0 00 117041 TMSGC < Text length: >
10739 067357 200 00 0 12 000004 MOVE 4(PK) ; get length
10740 067360 037 15 0 00 000000 PNTDEC ; print it
10741 067361 037 00 0 00 117045 TMSG <. bytes>
10742 067362 200 00 0 12 000004 MOVE 4(PK) ; get length
10743 067363 322 00 0 00 067413 JUMPE PTEXTX ; zero? yes - exit
10744 067364 242 00 0 00 000001 LSH 1 ; multiply by 2
10745 067365 200 02 0 12 000003 MOVE 2,3(PK) ; get status word
10746 067366 607 02 0 00 001000 TLNN 2,1000 ; COMPAT format?
10747 067367 231 00 0 00 000010 IDIVI 8 ; yes - calculate # words of text
10748 067370 603 02 0 00 001000 TLNE 2,1000 ; HIDEN format?
10749 067371 231 00 0 00 000011 IDIVI 9 ; yes - and divide by 9
10750 067372 332 00 0 00 000001 SKIPE 1 ; remainder?
10751 067373 271 00 0 00 000001 ADDI 1 ; yes - increase by 1 word
10752 067374 202 00 0 00 000002 MOVEM 2 ; save length in AC2
10753 067375 311 02 0 00 034016 CAML 2,DSPRIN ; less than number to print?
10754 067376 200 02 0 00 034016 MOVE 2,DSPRIN ; no - only print selected number
10755 067377 037 00 0 00 117047 TMSGC < Text:>
10756 067400 201 03 0 12 000005 MOVEI 3,5(PK) ; get address of text
10757 067401 400 01 0 00 000000 SETZ 1, ; clear word count
10758 067402 037 00 0 00 112413 PTEXT0: TMSG < >
10759 067403 200 00 0 03 000000 MOVE (3) ; get the data
10760 067404 037 13 0 00 000000 PNTHW ; print the word
10761 067405 350 00 0 00 000003 AOS 3 ; point to next word
10762 067406 350 00 0 00 000001 AOS 1 ; increment word count
10763 067407 363 02 0 00 067413 SOJLE 2,PTEXTX ; done? yes - exit
10764 067410 606 01 0 00 000003 TRNN 1,3 ; multiple of 4 words?
10765 067411 037 00 0 00 117051 TMSGC < > ; yes - start a new line
10766 067412 254 00 0 00 067402 JRST PTEXT0 ; loop till done
10767 067413 262 17 0 00 000003 PTEXTX: RGET (3,2,1,0) ; restore AC's
10768
10769 067417 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 248
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0424
10770
10771 ;#********************************************************************
10772 ;* LINKP - Print FLINK/BLINK data as PCB+n or BUFF+n
10773 ;
10774 ; Given: AC1 - Contains the LINK data
10775 ;#********************************************************************
10776
10777 067420 261 17 0 00 000000 LINKP: RPUT (0,1) ; save AC's
10778
10779 067422 260 17 0 00 065752 GO CONVIR ; convert to virtual address
10780 067423 200 00 0 00 000001 MOVE 1 ; get into AC0
10781 067424 301 01 0 00 071047 CAIL 1,BUFF ; in buffer area?
10782 JRST [TMSG <BUFF+> ; yes - print as
10783 SUBI BUFF ; BUFF+n
10784 067425 254 00 0 00 117055 JRST LINKPX]
10785 067426 037 00 0 00 117060 TMSG <PCB+> ; no - print as
10786 067427 275 00 0 00 070000 SUBI PCB ; PCB+n
10787 067430 037 16 0 00 000003 LINKPX: PNTOCS ; print it
10788 067431 262 17 0 00 000001 RGET (1,0) ; restore AC's
10789
10790 067433 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 249
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0425
10791
10792 ;#********************************************************************
10793 ;* PPCB - Print current data in the PCB
10794 ;
10795 ; All of the addresses are printed as virtual addresses, and FLINK
10796 ; and BLINK words are printed as 'PCB+n' or 'BUFF+n'.
10797 ;#********************************************************************
10798
10799 067434 261 17 0 00 000000 PPCB: RPUT (0,1,2,3,4) ; save AC's
10800
10801 067441 037 00 0 00 117061 TMSGC <PCB:>
10802 067442 037 00 0 00 117063 TMSGC < BDT Start Adr:>
10803 067443 001 11 0 00 070000 PNTOCC 11,PCB ; print address
10804 067444 037 00 0 00 117067 TMSGC < MFQ Entry Len:>
10805 067445 001 11 0 00 070001 PNTOCC 11,PCB+1 ; print length
10806 067446 037 00 0 00 117073 TMSGC < DFQ Entry Len:>
10807 067447 001 11 0 00 070002 PNTOCC 11,PCB+2 ; print length
10808 067450 037 00 0 00 117077 TMSGC < Port Err Wd0:>
10809 067451 200 00 0 00 070035 MOVE PCB+^D29 ; get error word
10810 067452 037 13 0 00 000000 PNTHW ; print it
10811 067453 037 00 0 00 117103 TMSGC < Port Err Wd1:>
10812 067454 200 00 0 00 070036 MOVE PCB+^D30 ; get error word
10813 067455 037 13 0 00 000000 PNTHW ; print it
10814 067456 037 00 0 00 117107 TMSGC < Port Err Wd2:>
10815 067457 200 00 0 00 070037 MOVE PCB+^D31 ; get error word
10816 067460 037 13 0 00 000000 PNTHW ; print it
10817 067461 037 00 0 00 117113 TMSGC < Port Err Wd3:>
10818 067462 200 00 0 00 070040 MOVE PCB+^D32 ; get error word
10819 067463 037 13 0 00 000000 PNTHW ; print it
10820 067464 037 00 0 00 117117 TMSGC < Port Err Wd4:>
10821 067465 200 00 0 00 070041 MOVE PCB+^D33 ; get error word
10822 067466 037 13 0 00 000000 PNTHW ; print it
10823 067467 037 00 0 00 117123 TMSGC < PCB Base Addr:>
10824 067470 200 01 0 00 070042 MOVE 1,PCB+^D34 ; get address
10825 067471 260 17 0 00 065752 GO CONVIR ; convert to virtual
10826 067472 001 11 0 00 000001 PNTOCC 11,1 ; print it
10827 067473 037 00 0 00 117127 TMSGC < PI Level: >
10828 067474 001 11 0 00 070043 PNTOCC 11,PCB+^D35 ; print PI level
10829 067475 037 00 0 00 117133 TMSGC < Reserved Word:>
10830 067476 001 11 0 00 070044 PNTOCC 11,PCB+^D36
10831 067477 037 00 0 00 117137 TMSGC < CCW: >
10832 067500 200 00 0 00 070045 MOVE PCB+^D37 ; get CCW
10833 067501 037 13 0 00 000000 PNTHW ; print it
10834 067502 037 00 0 00 117133 TMSGC < Reserved Word:>
10835 067503 001 11 0 00 070046 PNTOCC 11,PCB+^D38 ; print reserved word
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 250
DFCIA1 MAC 27-Oct-84 19:00 Queue Print Routines SEQ 0426
10836
10837 067504 037 00 0 00 117143 PPCBD: TMSGC < # Queue PCB Addr Interlock Flink Blink>
10838 067505 037 00 0 00 117156 TMSGC < - ----- -------- --------- ----- ----->
10839 067506 201 04 0 00 000004 MOVEI 4,4 ; initialize pointer into PCB
10840 067507 400 03 0 00 000000 SETZ 3, ; initialize queue number
10841 067510 037 00 0 00 112240 PPCB0: TMSGC < > ; start a new line
10842 067511 200 00 0 00 000003 MOVE 3 ; get queue number
10843 067512 037 16 0 00 000003 PNTOCS ; print it
10844 067513 037 00 0 00 112413 TMSG < >
10845 067514 256 00 0 03 067542 XCT PPCBP(3) ; print type of queue
10846 067515 037 00 0 00 117171 TMSG < PCB+>
10847 067516 200 00 0 00 000004 MOVE 4 ; get PCB offset
10848 067517 037 16 0 00 000003 PNTOCS ; print it
10849 067520 037 00 0 00 117173 TMSG < > ; print a tab
10850 067521 001 06 0 04 070000 PNTOCC 6,PCB(4) ; print interlock
10851 067522 037 00 0 00 112612 TMSG < >
10852 067523 200 01 0 04 070001 MOVE 1,PCB+1(4) ; get flink
10853 067524 260 17 0 00 067420 GO LINKP ; print it
10854 067525 037 00 0 00 117174 TMSG < > ; print a tab
10855 067526 200 01 0 04 070002 MOVE 1,PCB+2(4) ; get flink
10856 067527 260 17 0 00 067420 GO LINKP ; print it
10857 067530 271 04 0 00 000003 ADDI 4,3 ; point to next queue location
10858 067531 350 00 0 00 000003 AOS 3 ; point to next queue number
10859 067532 305 03 0 00 000007 CAIGE 3,7 ; done yet?
10860 067533 254 00 0 00 067510 JRST PPCB0 ; no - loop till done
10861 067534 262 17 0 00 000004 RGET (4,3,2,1,0) ; restore AC's
10862
10863 067541 263 17 0 00 000000 RTN ; return
10864
10865 067542 037 00 0 00 117175 PPCBP: TMSG <CmdQ3>
10866 067543 037 00 0 00 117177 TMSG <CmdQ2>
10867 067544 037 00 0 00 117201 TMSG <CmdQ1>
10868 067545 037 00 0 00 117203 TMSG <CmdQ0>
10869 067546 037 00 0 00 117205 TMSG <RspQ >
10870 067547 037 00 0 00 117207 TMSG <MsgFQ>
10871 067550 037 00 0 00 117211 TMSG <DgmFQ>
10872
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 251
DFCIA1 MAC 27-Oct-84 19:00 Port Control Block and Data Areas SEQ 0427
10873 SUBTTL Port Control Block and Data Areas
10874
10875 ;#********************************************************************
10876 ;* IPCB - PCB initial data
10877 ;#********************************************************************
10878
10879 067551 000000 000000 IPCB: 0 ; 0 - BHD Table Base Address
10880 067552 000000 000400 ^D256 ; 1 - Message FQ entry length (words)
10881 067553 000000 000400 ^D256 ; 2 - Datagram FQ entry length (words)
10882 067554 000000 000000 0 ; 3 - reserved
10883 067555 777777 777777 -1 ; 4 - INTLK for CQ 3
10884 067556 000000 070005 PCB+5 ; 5 - FLINK for CQ 3
10885 067557 000000 070005 PCB+5 ; 6 - BLINK for CQ 3
10886 067560 777777 777777 -1 ; 7 - INTLK for CQ 2
10887 067561 000000 070010 PCB+10 ; 8 - FLINK for CQ 2
10888 067562 000000 070010 PCB+10 ; 9 - BLINK for CQ 2
10889 067563 777777 777777 -1 ; 10 - INTLK for CQ 1
10890 067564 000000 070013 PCB+13 ; 11 - FLINK for CQ 1
10891 067565 000000 070013 PCB+13 ; 12 - BLINK for CQ 1
10892 067566 777777 777777 -1 ; 13 - INTLK for CQ 0
10893 067567 000000 070016 PCB+16 ; 14 - FLINK for CQ 0
10894 067570 000000 070016 PCB+16 ; 15 - BLINK for CQ 0
10895 067571 777777 777777 -1 ; 16 - INTLK for Resp Q
10896 067572 000000 070021 PCB+21 ; 17 - FLINK for Resp Q
10897 067573 000000 070021 PCB+21 ; 18 - BLINK for Resp Q
10898 067574 777777 777777 -1 ; 19 - INTLK for MSG Free Q
10899 067575 000000 071447 QFMG1 ; 20 - FLINK for MSG Free Q
10900 067576 000000 073047 QFMG4 ; 21 - BLINK for MSG Free Q
10901 067577 777777 777777 -1 ; 22 - INTLK for DGM Free Q
10902 067600 000000 073447 QFDG1 ; 23 - FLINK for DGM Free Q
10903 067601 000000 100047 QFDG12 ; 24 - BLINK for DGM Free Q
10904 067602 000000 000000 0 ; 25 - reserved
10905 067603 000000 000000 0 ; 26 - reserved
10906 067604 000000 000000 0 ; 27 - reserved
10907 067605 000000 000000 0 ; 28 - reserved
10908 067606 000000 000000 0 ; 29 - Port Error Word 0
10909 067607 000000 000000 0 ; 30 - Port Error Word 1
10910 067610 000000 000000 0 ; 31 - Port Error Word 2
10911 067611 000000 000000 0 ; 32 - Port Error Word 3
10912 067612 000000 000000 0 ; 33 - Port Error Word 4
10913 067613 000000 070000 PCB ; 34 - PCB base address
10914 067614 000000 000004 4 ; 35 - PIA interrupt level
10915 067615 000000 000000 0 ; 36 - reserved
10916 067616 000000 000000 0 ; 37 - CCW command word
10917 067617 000000 000000 0 ; 38 - reserved
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 252
DFCIA1 MAC 27-Oct-84 19:00 Port Control Block and Data Areas SEQ 0428
10918
10919 ;#********************************************************************
10920 ;* PCB - Port Control Block
10921 ;#********************************************************************
10922
10923 070000 LOC <.+1000>&777000
10924
10925 070000 000000 000000 PCB: 0 ; 0 - BHD Table Base Address
10926 070001 000000 000400 ^D256 ; 1 - Message FQ entry length (words)
10927 070002 000000 000400 ^D256 ; 2 - Datagram FQ entry length (words)
10928 070003 000000 000000 0 ; 3 - reserved
10929 070004 777777 777777 -1 ; 4 - INTLK for CQ 3
10930 070005 000000 070005 PCB+5 ; 5 - FLINK for CQ 3
10931 070006 000000 070005 PCB+5 ; 6 - BLINK for CQ 3
10932 070007 777777 777777 -1 ; 7 - INTLK for CQ 2
10933 070010 000000 070010 PCB+10 ; 8 - FLINK for CQ 2
10934 070011 000000 070010 PCB+10 ; 9 - BLINK for CQ 2
10935 070012 777777 777777 -1 ; 10 - INTLK for CQ 1
10936 070013 000000 070013 PCB+13 ; 11 - FLINK for CQ 1
10937 070014 000000 070013 PCB+13 ; 12 - BLINK for CQ 1
10938 070015 777777 777777 -1 ; 13 - INTLK for CQ 0
10939 070016 000000 070016 PCB+16 ; 14 - FLINK for CQ 0
10940 070017 000000 070016 PCB+16 ; 15 - BLINK for CQ 0
10941 070020 777777 777777 -1 ; 16 - INTLK for Resp Q
10942 070021 000000 070021 PCB+21 ; 17 - FLINK for Resp Q
10943 070022 000000 070021 PCB+21 ; 18 - BLINK for Resp Q
10944 070023 777777 777777 -1 ; 19 - INTLK for MSG Free Q
10945 070024 000000 071447 MFREE: QFMG1 ; 20 - FLINK for MSG Free Q
10946 070025 000000 073047 QFMG4 ; 21 - BLINK for MSG Free Q
10947 070026 777777 777777 -1 ; 22 - INTLK for DGM Free Q
10948 070027 000000 073447 DFREE: QFDG1 ; 23 - FLINK for DGM Free Q
10949 070030 000000 100047 QFDG12 ; 24 - BLINK for DGM Free Q
10950 070031 000000 000000 0 ; 25 - reserved
10951 070032 000000 000000 0 ; 26 - reserved
10952 070033 000000 000000 0 ; 27 - reserved
10953 070034 000000 000000 0 ; 28 - reserved
10954 070035 000000 000000 0 ; 29 - Port Error Word 0
10955 070036 000000 000000 0 ; 30 - Port Error Word 1
10956 070037 000000 000000 0 ; 31 - Port Error Word 2
10957 070040 000000 000000 0 ; 32 - Port Error Word 3
10958 070041 000000 000000 0 ; 33 - Port Error Word 4
10959 070042 000000 070000 PCBBAS: PCB ; 34 - PCB base address
10960 070043 000000 000004 PCBPI: 4 ; 35 - PIA interrupt level
10961 070044 000000 000000 0 ; 36 - reserved
10962 070045 000000 000000 0 ; 37 - CCW command word
10963 070046 000000 000000 0 ; 38 - reserved
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 253
DFCIA1 MAC 27-Oct-84 19:00 Port Control Block and Data Areas SEQ 0429
10964
10965 ;#*********************************************************************
10966 ; Data areas
10967 ;#*********************************************************************
10968
10969 070047 PACKET: BLOCK ^D256 ; packet being built
10970 070447 RSPONS: BLOCK ^D256 ; response packet
10971
10972 071047 BUFF: BLOCK ^D256 ; buffer for reading/writing
10973
10974
10975 ;#********************************************************************
10976 ;* Datagram and Message free queues
10977 ;#********************************************************************
10978
10979 071447 MGSTAR: ; start of message free queue
10980 071447 000000 072047 QFMG1: QFMG2 ; FLINK
10981 071450 000000 070024 MFREE ; BLINK
10982 071451 BLOCK ^D254 ; remainder of entry
10983 072047 000000 072447 QFMG2: QFMG3 ; FLINK
10984 072050 000000 071447 QFMG1 ; BLINK
10985 072051 BLOCK ^D254 ; remainder of entry
10986 072447 000000 073047 QFMG3: QFMG4 ; FLINK
10987 072450 000000 072047 QFMG2 ; BLINK
10988 072451 BLOCK ^D254 ; remainder of entry
10989 073047 000000 070024 QFMG4: MFREE ; FLINK
10990 073050 000000 072447 QFMG3 ; BLINK
10991 073051 BLOCK ^D253 ; remainder of entry
10992 073446 000000 000000 MGEND: 0 ; end of message free queue
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 254
DFCIA1 MAC 27-Oct-84 19:00 Port Control Block and Data Areas SEQ 0430
10993
10994 073447 DGSTAR: ; start of datagram free queue
10995 073447 000000 074047 QFDG1: QFDG2 ; FLINK
10996 073450 000000 070027 DFREE ; BLINK
10997 073451 BLOCK ^D254 ; remainder of entry
10998 074047 000000 074447 QFDG2: QFDG3 ; FLINK
10999 074050 000000 073447 QFDG1 ; BLINK
11000 074051 BLOCK ^D254 ; remainder of entry
11001 074447 000000 075047 QFDG3: QFDG4 ; FLINK
11002 074450 000000 074047 QFDG2 ; BLINK
11003 074451 BLOCK ^D254 ; remainder of entry
11004 075047 000000 075447 QFDG4: QFDG5 ; FLINK
11005 075050 000000 074447 QFDG3 ; BLINK
11006 075051 BLOCK ^D254 ; remainder of entry
11007 075447 000000 076047 QFDG5: QFDG6 ; FLINK
11008 075450 000000 075047 QFDG4 ; BLINK
11009 075451 BLOCK ^D254 ; remainder of entry
11010 076047 000000 076447 QFDG6: QFDG7 ; FLINK
11011 076050 000000 075447 QFDG5 ; BLINK
11012 076051 BLOCK ^D254 ; remainder of entry
11013 076447 000000 077047 QFDG7: QFDG10 ; FLINK
11014 076450 000000 076047 QFDG6 ; BLINK
11015 076451 BLOCK ^D254 ; remainder of entry
11016 077047 000000 077447 QFDG10: QFDG11 ; FLINK
11017 077050 000000 076447 QFDG7 ; BLINK
11018 077051 BLOCK ^D254 ; remainder of entry
11019 077447 000000 100047 QFDG11: QFDG12 ; FLINK
11020 077450 000000 077047 QFDG10 ; BLINK
11021 077451 BLOCK ^D254 ; remainder of entry
11022 100047 000000 070027 QFDG12: DFREE ; FLINK
11023 100050 000000 077447 QFDG11 ; BLINK
11024 100051 BLOCK ^D253 ; remainder of entry
11025 100446 000000 000000 DGEND: 0 ; end of datagram free queue
11026
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 255
DFCIA1 MAC 27-Oct-84 19:00 SPEAR Reporting SEQ 0431
11027 SUBTTL SPEAR Reporting
11028
11029 ;#********************************************************************
11030 ;* SPREP1 - Print initial SPEAR report 'diagnostic started'
11031 ;#********************************************************************
11032
11033 100447 332 00 0 00 121012' SPREP1: SKIPE UDEBUG ; debug mode?
11034 100450 263 17 0 00 000000 RTN ; yes - return
11035 100451 332 00 0 00 030037 SKIPE USER ; exec mode?
11036 100452 332 00 0 00 121001' SKIPE SPEAR1 ; already done?
11037 100453 263 17 0 00 000000 RTN ; yes - return
11038
11039 ; Check switches first
11040
11041 100454 261 17 0 00 000000 RPUT (0,1) ; save AC's
11042
11043 100456 260 17 0 00 042452* GO SWITT ; get program switches
11044 100457 602 00 0 00 004000 TRNE DSPEAR ; SPEAR reporting disabled?
11045 100460 254 00 0 00 100471 JRST SPRE1X ; yes - exit
11046
11047 ; Get PPN and build entry / get time and insert it
11048
11049 100461 260 17 0 00 100653 SPCHK1: GO GETPPN ; get user's PPN
11050 100462 202 01 0 00 100506 MOVEM 1,SENT10+11+1 ; save in SPEAR entry block
11051 100463 104 00 0 00 000227 GTAD ; get time and day
11052 100464 202 01 0 00 100502 MOVEM 1,SENT10+5+1 ; save it
11053
11054 ; Make the entry
11055
11056 100465 201 01 0 00 100474 MOVEI 1,SENT10 ; get address of argument block
11057 100466 201 02 0 00 000013 MOVEI 2,^D10+1 ; get length
11058 100467 104 00 0 00 000527 S1: SYERR ; write to SYSERR file
11059
11060 ; Exit
11061
11062 100470 476 00 0 00 121001' SETOM SPEAR1 ; set 'SPEAR initial msg done' flag
11063 100471 262 17 0 00 000001 SPRE1X: RGET (1,0) ; restore AC's
11064
11065 100473 263 17 0 00 000000 RTN ; return
11066
11067 ; SPEAR entry block 10
11068
11069 100474 250000 000000 SENT10: 250000,,0 ; event type
11070 100475 000000 000000 0 ; zero
11071 100476 000000 000000 0 ; zero
11072 100477 000000 000000 0 ; zero
11073 100500 000000 000000 0 ; (for Release 6.0 or later)
11074 100501 000000 020002 20002 ; time of occurence block
11075 100502 000000 000000 0 ; time
11076 100503 000000 100004 0,,100004 ; 4 words, type 10 code
11077 100504 44 46 43 51 41 00 SIXBIT /DFCIA/ ; diagnostic name
11078 100505 000003 000000 MCNVER,,DECVER ; diagnostic version
11079 100506 000000 000000 0 ; user PPN
11080 100507 000000 000000 0
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 256
DFCIA1 MAC 27-Oct-84 19:00 SPEAR Reporting SEQ 0432
11081
11082 ;#********************************************************************
11083 ;* SPREP2 - Print error or successful completion SPEAR report
11084 ;#********************************************************************
11085
11086 100510 336 00 0 00 121012' SPREP2: SKIPN UDEBUG ; debug mode?
11087 100511 336 00 0 00 030037 SKIPN USER ; exec mode?
11088 100512 263 17 0 00 000000 RTN ; yes - return
11089
11090 ; First check if anything should be reported now
11091
11092 100513 261 17 0 00 000000 PUT 0 ; save AC0
11093 100514 200 00 0 00 121002' MOVE SPEAR2 ; get reporting flag
11094 100515 322 00 0 00 100521 JUMPE SPRE2A ; nothing yet? yes - continue
11095 100516 316 00 0 00 111025 CAMN [-1] ; already reported an error?
11096 JRST [GET ; yes - exit
11097 100517 254 00 0 00 117213 RTN]
11098 JUMPE ERFLG,[GET ; error this time? no - exit
11099 100520 322 15 0 00 117213 RTN]
11100
11101 ; Check switches
11102
11103 100521 261 17 0 00 000001 SPRE2A: RPUT (1,2,3,4) ; save AC's
11104
11105 100525 260 17 0 00 100456* GO SWITT ; get program switches
11106 100526 602 00 0 00 004000 TRNE DSPEAR ; SPEAR reporting disabled?
11107 100527 254 00 0 00 100603 JRST SPRE2X ; yes - exit
11108
11109 ; Initialize entry
11110
11111 100530 402 00 0 00 100625 SPCHK2: SETZM SENT11+^D11+1 ; clear test number
11112 100531 402 00 0 00 100627 SETZM SENT11+^D13+1 ; ...
11113 100532 201 02 0 00 000003 MOVEI 2,3 ; set block length to 3 words
11114 100533 137 02 0 00 117215 DPB 2,[POINT 9,SEN11L,35] ; save length
11115 100534 322 15 0 00 100567 JUMPE ERFLG,SPRE2C ; error? no - continue
11116
11117 ; Insert test name
11118
11119 100535 200 01 0 00 117216 MOVE 1,[SIXBIT /TST0 /] ; get SIXBIT 'TST'
11120 100536 135 00 0 00 117217 LDB [POINT 3,TSTNUM,29] ; get digit 1
11121 100537 271 00 0 00 000020 ADDI 20 ; convert to SIXBIT
11122 100540 137 00 0 00 117220 DPB [POINT 6,1,23] ; save it
11123 100541 135 00 0 00 117221 LDB [POINT 3,TSTNUM,32] ; get digit 2
11124 100542 271 00 0 00 000020 ADDI 20 ; convert to SIXBIT
11125 100543 137 00 0 00 117222 DPB [POINT 6,1,29] ; save it
11126 100544 135 00 0 00 117223 LDB [POINT 3,TSTNUM,35] ; get digit 3
11127 100545 271 00 0 00 000020 ADDI 20 ; convert to SIXBIT
11128 100546 137 00 0 00 117224 DPB [POINT 6,1,35] ; save it
11129 100547 202 01 0 00 100625 MOVEM 1,SENT11+^D11+1 ; save test number
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 257
DFCIA1 MAC 27-Oct-84 19:00 SPEAR Reporting SEQ 0433
11130
11131 ; Insert test description
11132
11133 100550 200 01 0 00 103275 MOVE 1,TSTNUM ; get test number
11134 100551 550 01 0 01 032203 HRRZ 1,TSTNAM(1) ; get address of test description
11135 100552 474 02 0 00 000000 SETO 2, ; initialize character count
11136 100553 200 03 0 00 117225 MOVE 3,[POINT 7,0] ; get initial byte pointer
11137 100554 540 03 0 00 000001 HRR 3,1 ; insert address
11138 100555 200 04 0 00 117226 MOVE 4,[POINT 7,SENT11+^D13+1];get initial byte pointer
11139 100556 134 00 0 00 000003 SPRE2B: ILDB 3 ; get a byte
11140 100557 136 00 0 00 000004 IDPB 4 ; save it
11141 100560 350 00 0 00 000002 AOS 2 ; increment byte count
11142 100561 326 00 0 00 100556 JUMPN SPRE2B ; loop till done
11143
11144 ; Insert block length ...
11145
11146 100562 231 02 0 00 000005 IDIVI 2,5 ; calculate number of words
11147 100563 332 00 0 00 000003 SKIPE 3 ; remainder?
11148 100564 350 00 0 00 000002 AOS 2 ; yes - add in partial word
11149 100565 271 02 0 00 000003 ADDI 2,3 ; calculate subtotal
11150 100566 137 02 0 00 117215 DPB 2,[POINT 9,SEN11L,35] ; save length
11151
11152 ; Add time and day
11153
11154 100567 104 00 0 00 000227 SPRE2C: GTAD ; get time and day
11155 100570 202 01 0 00 100617 MOVEM 1,SENT11+5+1 ; save it
11156
11157 ; Get PPN and build entry / get time and insert it
11158
11159 100571 260 17 0 00 100653 GO GETPPN ; get user's PPN
11160 100572 202 01 0 00 100623 MOVEM 1,SEN11L-1 ; save in SPEAR entry block
11161
11162 ; Make the SPEAR entry
11163
11164 100573 201 01 0 00 100611 MOVEI 1,SENT11 ; get address of argument block
11165 100574 135 02 0 00 117215 LDB 2,[POINT 9,SEN11L,35] ; get length
11166 100575 271 02 0 00 000013 ADDI 2,^D10+1 ; calculate total block length
11167 100576 104 00 0 00 000527 S2: SYERR ; write to SYSERR file
11168
11169 ; Exit
11170
11171 100577 200 00 0 00 111025 MOVE [-1] ; get flag for 'Error message'
11172 100600 336 00 0 00 000015 SKIPN ERFLG ; error flag set?
11173 100601 200 00 0 00 112101 MOVE [-2] ; no - get flag for 'Final message'
11174 100602 202 00 0 00 121002' MOVEM SPEAR2 ; set 'SPEAR err/fin msg done' flag
11175 100603 262 17 0 00 000004 SPRE2X: RGET (4,3,2,1,0) ; restore AC's
11176
11177 100610 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 258
DFCIA1 MAC 27-Oct-84 19:00 SPEAR Reporting SEQ 0434
11178
11179 ; SPEAR entry block 11
11180
11181 100611 250000 000000 SENT11: 250000,,0 ; event type
11182 100612 000000 000000 0 ; zero
11183 100613 000000 000000 0 ; zero
11184 100614 000000 000000 0 ; zero
11185 100615 000000 000000 0 ; (for Release 6.0 or later)
11186 100616 000000 020002 20002 ; time of occurence block
11187 100617 000000 000000 0 ; time
11188
11189 100620 000000 100004 0,,100004 ; 4 words, type 10 code
11190 100621 44 46 43 51 41 00 SIXBIT /DFCIA/ ; diagnostic name
11191 100622 000003 000000 MCNVER,,DECVER ; diagnostic version
11192 100623 000000 000000 0 ; user PPN
11193
11194 100624 000000 110000 SEN11L: 0,,110000 ; type 11 code
11195 100625 000000 000000 0 ; failing test name
11196 100626 000000 000003 3 ; failing test description offset
11197 100627 BLOCK ^D20 ; ASCII test description
11198
11199
11200 ;#********************************************************************
11201 ;* GETPPN - Find out PPN number
11202 ;#********************************************************************
11203
11204 100653 261 17 0 00 000002 GETPPN: RPUT (2,3) ; save AC's
11205
11206 100655 474 01 0 00 000000 SETO 1, ; indicate current job
11207 100656 200 02 0 00 117227 MOVE 2,[-1,,1] ; place 1 word into AC1
11208 100657 201 03 0 00 000003 MOVEI 3,3 ; point to connected directory number
11209 100660 104 00 0 00 000507 GETJI ; get job information
11210 100661 400 01 0 00 000000 SETZ 1, ; error - just clear AC1
11211 100662 262 17 0 00 000003 RGET (3,2) ; restore AC's
11212
11213 100664 263 17 0 00 000000 RTN ; return
11214
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 259
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0435
11215 SUBTTL Test Execute Routines
11216
11217 ;#********************************************************************
11218 ;* TEXEC - Test execute routine
11219 ;
11220 ; This routine starts up the port. Then to perform testing, it places
11221 ; entries on the command queues, and interprets responses found on the
11222 ; response queue.
11223 ;
11224 ; This routine is given a pointer to a 'Test Execute Table'. It
11225 ; then executes one entry and returns +1,+2,+3 or +4 depending on
11226 ; the type of entry and the result.
11227 ;
11228 ; Argument: AC6 - Address of 'Test Execute Table'
11229 ;
11230 ; Return: +1 - End of table was seen.
11231 ; +2 - A routine was called (just do next entry).
11232 ; +3 - Error return.
11233 ; +4 - Success return.
11234 ;
11235 ; TCSR - Final CSR data
11236 ; TCMD - Command placed on command queue
11237 ; TRESPC - Response received (correct)
11238 ; TRESPA - Response received (actual)
11239 ;
11240 ; AC6 - Updated to point to the next table location
11241 ;
11242 ; Test Execute Table Format:
11243 ;
11244 ; Entry
11245 ; Entry
11246 ; ...
11247 ; TLAST ; last entry (zero)
11248 ;
11249 ; 'Entry' is of the form:
11250 ;
11251 ; Bits 0-3 - Type of entry - 0 - Done with table (TLAST)
11252 ; 1 - Start port (TSTART)
11253 ; 2 - Call routine (TCALL)
11254 ; 3 - Call routine (test exit) (TCALLC)
11255 ; 4 - Wait for segment done (TWAIT)
11256 ; 5 - Put packet on cmd queue (TPACK)
11257 ; 6 - Write a PILA register (TWRITE)
11258 ; 7 - Read a PILA register (TREAD)
11259 ; 10 - Select new table address (TJRST)
11260 ; 11 - Initialize packet data (TINIT)
11261 ; 12 - Exit test (if ERFLG set) (TEXIT)
11262 ;
11263 ; Bits 4-35 - Defined per entry type.
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 260
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0436
11264
11265 ; Entry types:
11266 ; 0 (TLAST) - Bits 4-35 - Zero (end of table)
11267 ; 1 (TSTART) - Bits 4-35 - Unused
11268 ; 2 (TCALL) - Bits 4-35 - Address of routine to call
11269 ; 3 (TCALLC) - Bits 4-35 - Address of routine to call
11270 ; 4 (TWAIT) - Bits 4-35 - Unused
11271 ; 5 (TPACK) - Bits 4-14 - Op code
11272 ; 15-17 - Command queue on which to place entry
11273 ; 18-35 - Address of special routine to set up
11274 ; expected response entries
11275 ; 6 (TWRITE) - Bits 4-17 - Register number to write
11276 ; 18-35 - Data to write
11277 ; 7 (TREAD) - Bits 4-17 - Register number to read
11278 ; 18 - Do data compare 0-no,1-yes
11279 ; 19-35 - Correct data
11280 ; 10 (TJRST) - Bits 4-35 - Table address to continue
11281 ; 11 (TINIT) - Bits 4-35 - Unused
11282 ; 12 (TEXIT) - Bits 4-35 - Unused
11283 ;#********************************************************************
11284
11285 100665 261 17 0 00 000000 TEXEC: RPUT (0,1,2) ; save some AC's
11286
11287 100670 200 02 0 06 000000 MOVE 2,(6) ; get entry
11288 100671 350 00 0 00 000006 AOS 6 ; point to next entry
11289 100672 322 02 0 00 100676 JUMPE 2,TEXEX1 ; end of table - yes - exit
11290
11291 ; Determine type of entry and dispatch
11292
11293 100673 135 01 0 00 117230 LDB 1,[POINT 4,2,3] ; get entry
11294 XCT [JRST TEXERR ; dispatch on it
11295 JRST TEXSTR
11296 JRST TEXCAL
11297 JRST TEXCAC
11298 JRST TEXWAI
11299 JRST TEXPAK
11300 JRST TEXWRT
11301 JRST TEXRD
11302 JRST TEXJRS
11303 JRST TEXINI
11304 JRST TEXEXI
11305 100674 256 00 0 01 117231 JRST TEXERR](1)
11306
11307 ; Error in Test Execute Table
11308
11309 100675 037 00 0 00 117245 TEXERR: TMSGCD <Test Execute Dispatch Table Error - Entry out of range>
11310 100676 260 17 0 00 042162 TEXEX1: GO SETDSA ; disable the port
11311 100677 260 17 0 00 064617* GO ISTOP ; stop the port
11312 100700 332 00 0 00 120777' SKIPE SDEBUG ; EXEC debug mode?
11313 100701 037 00 0 00 030242 PCRL ; yes - a final CRLF
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 261
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0437
11314
11315 ; Exit
11316
11317 100702 262 17 0 00 000002 TEXEXX: RGET (2,1,0) ; restore AC's
11318
11319 100705 263 17 0 00 000000 RTN ; return
11320
11321
11322 ;#********************************************************************
11323 ; Start the port
11324 ;#********************************************************************
11325
11326 100706 332 00 0 00 120777' TEXSTR: SKIPE SDEBUG ; EXEC debug mode?
11327 100707 037 00 0 00 117261 TMSGC <TSTART> ; yes - print debug data
11328 100710 402 00 0 00 102762 SETZM TERROR ; initialize error code
11329 100711 260 17 0 00 065055* GO IPACLR ; do a 'port clear'
11330 100712 331 00 0 00 034013 SKIPL CPORT ; have our port number yet?
11331 100713 254 00 0 00 100717 JRST TEXST0 ; yes - continue
11332 100714 260 17 0 00 065076 GO RDNODE ; read our port number
11333 JRST [SETO ERFLG, ; error - failed - exit
11334 MOVEI 1 ; with failure code 1
11335 MOVEM TERTYP
11336 100715 254 00 0 00 117263 JRST TEXST1]
11337 100716 202 01 0 00 034013 MOVEM 1,CPORT ; save port number
11338 100717 200 00 0 00 034013 TEXST0: MOVE CPORT ; get our port number
11339 100720 202 00 0 00 065161 MOVEM TDPORT ; set up destination port
11340 100721 260 17 0 00 043652 GO TFLOAD ; load operational microcode
11341 JRST [SETO ERFLG, ; error - failed - exit
11342 HRRZM TERMES ; with failure code 2
11343 MOVEI 2
11344 MOVEM TERTYP
11345 100722 254 00 0 00 117267 JRST TEXST1]
11346 100723 260 17 0 00 065056* GO CHINIT ; initialize channel stuff
11347 100724 260 17 0 00 064612 GO TPCB ; initialize PCB
11348 100725 260 17 0 00 065052 GO TIDLE ; put port into IDLE loop
11349 JRST [SETO ERFLG, ; error - failed - exit
11350 MOVEI 3 ; with failure code 3
11351 MOVEM TERTYP
11352 100726 254 00 0 00 117274 JRST TEXST1]
11353 100727 260 17 0 00 042122 GO SETENA ; ensure the port is enabled
11354 JRST [SETO ERFLG, ; error - failed - exit
11355 MOVEI 4 ; with failure code 4
11356 MOVEM TERTYP
11357 100730 254 00 0 00 117300 JRST TEXST1]
11358 100731 336 00 0 00 000015 TEXST1: SKIPN ERFLG ; error occurred yet?
11359 100732 350 00 0 17 777775 AOS -3(P) ; no - set up return
11360 100733 350 00 0 17 777775 AOS -3(P) ; set up return
11361 100734 350 00 0 17 777775 AOS -3(P) ; set up return
11362 100735 254 00 0 00 100702 JRST TEXEXX ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 262
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0438
11363
11364 ;#********************************************************************
11365 ; Execute a JRST and exit
11366 ;#********************************************************************
11367
11368 100736 550 02 0 00 000002 TEXJRS: HRRZ 2,2 ; only want the address
11369 100737 332 00 0 00 120777' SKIPE SDEBUG ; EXEC debug mode?
11370 GO [TMSGC <TJRST Adr > ; yes - print debug
11371 MOVE 2 ; data and continue
11372 PNTOCS
11373 100740 260 17 0 00 117307 RTN]
11374 100741 200 06 0 00 000002 MOVE 6,2 ; get new table address
11375 100742 350 00 0 17 777775 AOS -3(P) ; set up return
11376 100743 254 00 0 00 100702 JRST TEXEXX ; exit
11377
11378
11379 ;#********************************************************************
11380 ; Execute a CALL and exit
11381 ;#********************************************************************
11382
11383 100744 550 02 0 00 000002 TEXCAL: HRRZ 2,2 ; only want the address
11384 100745 332 00 0 00 120777' SKIPE SDEBUG ; EXEC debug mode?
11385 GO [TMSGC <TCALL Adr > ; yes - print debug
11386 MOVE 2 ; data and continue
11387 PNTOCS
11388 100746 260 17 0 00 117316 RTN]
11389 100747 261 17 0 00 000003 RPUT (3,4) ; save some AC's
11390
11391 100751 260 17 1 00 000002 GO @2 ; call the routine
11392 100752 262 17 0 00 000004 RGET (4,3) ; restore AC's
11393
11394 100754 350 00 0 17 777775 AOS -3(P) ; set up return
11395 100755 254 00 0 00 100702 JRST TEXEXX ; exit
11396
11397
11398 ;#********************************************************************
11399 ; Execute a CALL and check if test done and exit
11400 ;#********************************************************************
11401
11402 100756 550 02 0 00 000002 TEXCAC: HRRZ 2,2 ; only want the address
11403 100757 332 00 0 00 120777' SKIPE SDEBUG ; EXEC debug mode?
11404 GO [TMSGC <TCALLC Adr > ; yes - print debug
11405 MOVE 2 ; data and continue
11406 PNTOCS
11407 100760 260 17 0 00 117325 RTN]
11408 100761 261 17 0 00 000003 RPUT (3,4) ; save some AC's
11409
11410 100763 260 17 1 00 000002 GO @2 ; call the routine
11411 100764 334 00 0 00 000000 SKIPA ; exit test
11412 100765 350 00 0 17 777773 AOS -5(P) ; set up return
11413 100766 262 17 0 00 000004 RGET (4,3) ; restore AC's
11414
11415 100770 254 00 0 00 100702 JRST TEXEXX ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 263
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0439
11416
11417 ;#********************************************************************
11418 ; Exit test (if error flag is set)
11419 ;#********************************************************************
11420
11421 100771 332 00 0 00 120777' TEXEXI: SKIPE SDEBUG ; EXEC debug mode?
11422 GO [TMSGC <TEXIT> ; yes - print debug
11423 100772 260 17 0 00 117333 RTN] ; data and continue
11424 100773 336 00 0 00 000015 SKIPN ERFLG ; any errors yet?
11425 100774 350 00 0 17 777775 AOS -3(P) ; no - not done with test yet
11426 100775 254 00 0 00 100702 JRST TEXEXX ; exit
11427
11428
11429 ;#********************************************************************
11430 ; Initialize packet data
11431 ;#********************************************************************
11432
11433 100776 332 00 0 00 120777' TEXINI: SKIPE SDEBUG ; EXEC debug mode?
11434 100777 037 00 0 00 117335 TMSGC <TINIT> ; yes - print debug data
11435 101000 402 00 0 00 101356 SETZM TCMD ; clear first word
11436 101001 200 00 0 00 117337 MOVE [TCMD,,TCMD+1] ; make BLT word
11437 101002 251 00 0 00 102757 BLT DCRESP ; clear all of the data
11438 101003 350 00 0 17 777775 AOS -3(P) ; set up return
11439 101004 402 00 0 00 065154 SETZM TFMFLG ; initialize 'format flag' to COMPAT
11440 101005 402 00 0 00 065155 SETZM TRSFLG ; initialize 'rsp pkt rqst' flag to no
11441 101006 402 00 0 00 065156 SETZM TPTFLG ; initialize 'path select' flag to Auto
11442 101007 402 00 0 00 065157 SETZM TXCTID ; initialize transaction ID to use
11443 101010 402 00 0 00 065160 SETZM TXCTID+1
11444 101011 402 00 0 00 065162 SETZM TBYTE ; initialize text length (in bytes)
11445 101012 402 00 0 00 065163 SETZM TWORD ; initialize text length (in words)
11446 101013 402 00 0 00 065164 SETZM TPAT ; initialize data pattern to 0
11447 101014 402 00 0 00 065165 SETZM TREGN ; initialize register number
11448 101015 402 00 0 00 065166 SETZM TREGD ; initialize register data
11449 101016 402 00 0 00 065167 SETZM TREGDC ; initialize register data correct
11450 101017 402 00 0 00 065170 SETZM TREGDA ; initialize register data actual
11451 101020 402 00 0 00 065171 SETZM TREGCF ; initialize data compare flag
11452 101021 254 00 0 00 100702 JRST TEXEXX ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 264
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0440
11453
11454 ;#********************************************************************
11455 ; Write a packet buffer or link module register
11456 ;#********************************************************************
11457
11458 ; Build the packet
11459
11460 101022 332 00 0 00 120777' TEXWRT: SKIPE SDEBUG ; EXEC debug mode?
11461 GO [TMSGC <TWRITE Reg > ; yes - print debug data
11462 LDB [POINT 12,2,17] ; and exit
11463 PNTOCS
11464 TMSG < Data >
11465 LDB [POINT 18,2,35]
11466 PNT3
11467 101023 260 17 0 00 117346 RTN]
11468 101024 350 00 0 00 103276 AOS TSTSUB ; increment test segment
11469 101025 201 00 0 00 000001 MOVEI 1 ; initialize error code
11470 101026 202 00 0 00 102762 MOVEM TERROR ; ...
11471 101027 402 00 0 00 102763 SETZM TERTYP ; clear error type
11472 101030 135 00 0 00 114065 LDB [POINT 12,2,17] ; get register number
11473 101031 202 00 0 00 065165 MOVEM TREGN ; save it
11474 101032 135 00 0 00 117345 LDB [POINT 18,2,35] ; get data to write
11475 101033 202 00 0 00 065166 MOVEM TREGD ; save it
11476 101034 476 00 0 00 065155 SETOM TRSFLG ; initialize 'rsp pkt rqst' flag to yes
11477 101035 201 11 0 00 000204 MOVEI OP,WRREG ; get write register opcode
11478 101036 260 17 0 00 065174 GO BPACK ; go build packet
11479 101037 200 00 0 00 117355 MOVE [PACKET,,TCMD] ; move the packet constructed
11480 101040 251 00 0 00 101755 BLT TCMD+^D255 ; to TCMD
11481
11482 ; Empty out the response queue first of all
11483
11484 101041 260 17 0 00 066134 GO CHKRSP ; check for a response queue entry
11485 101042 334 00 0 00 000000 SKIPA ; nothing found - continue
11486 101043 254 00 0 00 101041 JRST .-2 ; found response - keep looking
11487
11488 ; Insert onto command queue 3
11489
11490 101044 201 13 0 00 000003 MOVEI Q,3 ; set up queue number
11491 101045 260 17 0 00 065777 GO INSQUE ; insert into queue
11492 JRST [SETO ERFLG, ; failed - set error flag, set
11493 MOVEI 1 ; up error code and exit
11494 MOVEM TERTYP
11495 101046 254 00 0 00 117356 JRST TEXWRX]
11496
11497 ; Set 'CMDQAV' in CSR register
11498
11499 101047 260 17 0 00 066343* GO RDCSR ; read CSR register
11500 101050 255 00 0 00 000000 JFCL ; error - ignore
11501 101051 660 01 0 00 000400 TRO 1,CMDQAV ; set 'command queue available' bit
11502 101052 260 17 0 00 066350* GO LDCSR ; write CSR register
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 265
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0441
11503
11504 ; Calculate timeout time
11505
11506 101053 400 03 0 00 000000 SETZ 3, ; set up so RUNTME doesn't print time
11507 101054 260 17 0 00 042044* GO RUNTME ; get initial time
11508 101055 200 02 0 00 041700* MOVE 2,DEBTIM ; get time in msecs
11509 101056 271 02 0 00 000310 ADDI 2,^D200 ; wait up to 200 msec
11510
11511 ; Wait for 'RSPQAV' bit set in CSR register
11512
11513 101057 260 17 0 00 065601 GO RWAIT ; wait for 'RESQAV' bit set
11514
11515 ; Check for a response queue entry
11516
11517 101060 260 17 0 00 066134 TEXWR0: GO CHKRSP ; check for a response queue entry
11518 101061 334 00 0 00 000000 SKIPA ; nothing found - continue
11519 101062 254 00 0 00 101070 JRST TEXWR1 ; found a response - go handle
11520 101063 400 03 0 00 000000 SETZ 3, ; set up so RUNTME doesn't print time
11521 101064 260 17 0 00 101054* GO RUNTME ; get initial time
11522 101065 315 02 0 00 101055* CAMGE 2,DEBTIM ; timed out?
11523 JRST [SETO ERFLG, ; yes - set error flag, set
11524 MOVEI 2 ; up error code and exit
11525 MOVEM TERTYP
11526 101066 254 00 0 00 117362 JRST TEXWRX]
11527 101067 254 00 0 00 101060 JRST TEXWR0 ; no - keep looking for a response
11528
11529 ; Found an entry - discard unless it is the response requested
11530
11531 101070 200 01 0 00 070452 TEXWR1: MOVE 1,RSPONS+3 ; get status word
11532 101071 135 00 0 00 116174 LDB [POINT 8,1,31] ; get port number
11533 101072 312 00 0 00 034013 CAME CPORT ; packet from us?
11534 101073 254 00 0 00 101060 JRST TEXWR0 ; no - look for next response
11535 101074 135 00 0 00 114046 LDB [POINT 8,RSPONS+3,23] ; get opcode
11536 101075 302 00 0 00 000204 CAIE WRREG ; write register?
11537 101076 254 00 0 00 101060 JRST TEXWR0 ; no - keep looking
11538
11539 ; Got the entry expected - now just verify that the status is good
11540
11541 101077 201 00 0 00 000003 MOVEI 3 ; get error code
11542 101100 607 01 0 00 400000 TLNN 1,400000 ; error bit set?
11543 101101 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
11544 101102 607 01 0 00 400000 TLNN 1,400000 ; error bit set?
11545 101103 202 00 0 00 102763 MOVEM TERTYP ; yes - set up error code
11546
11547 ; Done - exit
11548
11549 101104 260 17 0 00 066134 TEXWRX: GO CHKRSP ; check for addl responses
11550 101105 334 00 0 00 000000 SKIPA ; nothing found - continue
11551 101106 254 00 0 00 101104 JRST TEXWRX ; keep pulling responses off
11552 101107 336 00 0 00 000015 SKIPN ERFLG ; error flag set?
11553 101110 350 00 0 17 777775 AOS -3(P) ; no - set up good return
11554 101111 350 00 0 17 777775 AOS -3(P) ; set up return
11555 101112 350 00 0 17 777775 AOS -3(P) ; set up return
11556 101113 254 00 0 00 100702 JRST TEXEXX ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 266
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0442
11557
11558 ;#********************************************************************
11559 ; Read a packet buffer or link module register
11560 ;#********************************************************************
11561
11562 ; Build the packet
11563
11564 101114 332 00 0 00 120777' TEXRD: SKIPE SDEBUG ; EXEC debug mode?
11565 GO [TMSGC <TREAD Reg > ; yes - print debug data
11566 LDB [POINT 12,2,17] ; and exit
11567 PNTOCS
11568 TRNN 2,400000
11569 RTN
11570 TMSG < Data (correct) >
11571 LDB [POINT 17,2,35]
11572 PNTOCS
11573 101115 260 17 0 00 117376 RTN]
11574 101116 350 00 0 00 103276 AOS TSTSUB ; increment test segment
11575 101117 201 00 0 00 000002 MOVEI 2 ; initialize error code
11576 101120 202 00 0 00 102762 MOVEM TERROR ; ...
11577 101121 402 00 0 00 102763 SETZM TERTYP ; clear error type
11578 101122 135 00 0 00 114065 LDB [POINT 12,2,17] ; get register number
11579 101123 202 00 0 00 065165 MOVEM TREGN ; save it
11580 101124 135 00 0 00 114066 LDB [POINT 1,2,18] ; get data compare flag
11581 101125 202 00 0 00 065171 MOVEM TREGCF ; save it
11582 101126 402 00 0 00 065170 SETZM TREGDA ; initialize data read (actual)
11583 101127 135 00 0 00 117375 LDB [POINT 17,2,35] ; get expected data
11584 101130 202 00 0 00 065167 MOVEM TREGDC ; initialize data read (correct)
11585 101131 476 00 0 00 065155 SETOM TRSFLG ; initialize 'rsp pkt rqst' flag to yes
11586 101132 201 11 0 00 000203 MOVEI OP,RDREG ; get read register opcode
11587 101133 260 17 0 00 065174 GO BPACK ; go build packet
11588 101134 200 00 0 00 117355 MOVE [PACKET,,TCMD] ; move the packet constructed
11589 101135 251 00 0 00 101755 BLT TCMD+^D255 ; to TCMD
11590
11591 ; Empty out the response queue first of all
11592
11593 101136 260 17 0 00 066134 GO CHKRSP ; check for a response queue entry
11594 101137 334 00 0 00 000000 SKIPA ; nothing found - continue
11595 101140 254 00 0 00 101136 JRST .-2 ; found response - keep looking
11596
11597 ; Insert onto command queue 3
11598
11599 101141 201 13 0 00 000003 MOVEI Q,3 ; set up queue number
11600 101142 260 17 0 00 065777 GO INSQUE ; insert into queue
11601 JRST [SETO ERFLG, ; failed - set error flag, set
11602 MOVEI 1 ; up error code and exit
11603 MOVEM TERTYP
11604 101143 254 00 0 00 117407 JRST TEXRDX]
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 267
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0443
11605
11606 ; Set 'CMDQAV' in CSR register
11607
11608 101144 260 17 0 00 101047* GO RDCSR ; read CSR register
11609 101145 201 01 0 00 000010 MOVEI 1,10 ; error - ignore
11610 101146 660 01 0 00 000400 TRO 1,CMDQAV ; set 'command queue available' bit
11611 101147 260 17 0 00 101052* GO LDCSR ; write CSR register
11612
11613 ; Calculate timeout time
11614
11615 101150 400 03 0 00 000000 SETZ 3, ; set up so RUNTME doesn't print time
11616 101151 260 17 0 00 101064* GO RUNTME ; get initial time
11617 101152 200 02 0 00 101065* MOVE 2,DEBTIM ; get time in msecs
11618 101153 271 02 0 00 000310 ADDI 2,^D200 ; wait up to 200 msec
11619
11620 ; Wait for 'RSPQAV' bit set in CSR register
11621
11622 101154 260 17 0 00 065601 GO RWAIT ; wait for 'RESQAV' bit set
11623
11624 ; Check for a response queue entry
11625
11626 101155 260 17 0 00 066134 TEXRD0: GO CHKRSP ; check for a response queue entry
11627 101156 334 00 0 00 000000 SKIPA ; nothing found - continue
11628 101157 254 00 0 00 101165 JRST TEXRD1 ; found a response - go handle
11629 101160 400 03 0 00 000000 SETZ 3, ; set up so RUNTME doesn't print time
11630 101161 260 17 0 00 101151* GO RUNTME ; get initial time
11631 101162 315 02 0 00 101152* CAMGE 2,DEBTIM ; timed out?
11632 JRST [SETO ERFLG, ; yes - set error flag, set
11633 MOVEI 2 ; up error code and exit
11634 MOVEM TERTYP
11635 101163 254 00 0 00 117413 JRST TEXRDX]
11636 101164 254 00 0 00 101155 JRST TEXRD0 ; keep looking for a response
11637
11638 ; Found an entry - discard unless it is the response requested
11639
11640 101165 200 01 0 00 070452 TEXRD1: MOVE 1,RSPONS+3 ; get status word
11641 101166 135 00 0 00 116174 LDB [POINT 8,1,31] ; get port number
11642 101167 312 00 0 00 034013 CAME CPORT ; packet from us?
11643 101170 254 00 0 00 101155 JRST TEXRD0 ; no - look for next response
11644 101171 135 00 0 00 114046 LDB [POINT 8,RSPONS+3,23] ; get opcode
11645 101172 302 00 0 00 000203 CAIE RDREG ; read register?
11646 101173 254 00 0 00 101155 JRST TEXRD0 ; no - keep looking
11647
11648 ; Got the entry expected - now just verify that the status is good
11649
11650 101174 201 00 0 00 000003 MOVEI 3 ; get error code
11651 101175 603 01 0 00 400000 TLNE 1,400000 ; error bit set?
11652 101176 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
11653 101177 603 01 0 00 400000 TLNE 1,400000 ; error bit set?
11654 101200 202 00 0 00 102763 MOVEM TERTYP ; yes - set up error type
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 268
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0444
11655
11656 ; Compare correct/actual data
11657
11658 101201 336 00 0 00 065171 SKIPN TREGCF ; do the data compare?
11659 101202 254 00 0 00 101212 JRST TEXRDX ; no - exit
11660 101203 135 00 0 00 117417 LDB [POINT 8,RSPONS+4,7] ; get data received
11661 101204 202 00 0 00 065170 MOVEM TREGDA ; save in actual
11662 101205 316 00 0 00 065167 CAMN TREGDC ; same as correct?
11663 101206 254 00 0 00 101212 JRST TEXRDX ; yes - exit
11664 101207 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
11665 101210 201 00 0 00 000004 MOVEI 4 ; get error type
11666 101211 202 00 0 00 102763 MOVEM TERTYP ; save it
11667
11668 ; Done - exit
11669
11670 101212 260 17 0 00 066134 TEXRDX: GO CHKRSP ; check for addl responses
11671 101213 334 00 0 00 000000 SKIPA ; nothing found - continue
11672 101214 254 00 0 00 101212 JRST TEXRDX ; keep pulling responses off
11673 101215 336 00 0 00 000015 SKIPN ERFLG ; error flag set?
11674 101216 350 00 0 17 777775 AOS -3(P) ; no - set up good return
11675 101217 350 00 0 17 777775 AOS -3(P) ; set up return
11676 101220 350 00 0 17 777775 AOS -3(P) ; set up return
11677 101221 254 00 0 00 100702 JRST TEXEXX ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 269
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0445
11678
11679 ;#********************************************************************
11680 ; Wait for response queue entries
11681 ;#********************************************************************
11682
11683 101222 135 00 0 00 117420 TEXWAI: LDB [POINT 9,2,17] ; get wait time
11684 101223 202 00 0 00 102765 MOVEM TWTIME ; save it
11685 101224 135 00 0 00 117345 LDB [POINT 18,2,35] ; get routine address
11686 101225 202 00 0 00 102766 MOVEM TWADDR ; save it
11687 101226 332 00 0 00 120777' SKIPE SDEBUG ; EXEC debug mode?
11688 GO [TMSGC <TWAIT Time > ; yes - print debug data
11689 MOVE TWTIME ; and exit
11690 PNTDEC
11691 TMSG <. msecs Adr >
11692 MOVE TWADDR
11693 PNTOCS
11694 101227 260 17 0 00 117427 RTN]
11695 101230 201 00 0 00 000004 MOVEI 4 ; initialize error code
11696 101231 202 00 0 00 102762 MOVEM TERROR ; ...
11697 101232 260 17 0 00 101144* GO RDCSR ; read CSR register
11698 101233 255 00 0 00 000000 JFCL ; error - ignore
11699 101234 660 01 0 00 000400 TRO 1,CMDQAV ; set 'command queue available' bit
11700 101235 260 17 0 00 101147* GO LDCSR ; write CSR register
11701 101236 350 00 0 00 103276 AOS TSTSUB ; increment test segment
11702 101237 261 17 0 00 000003 PUT 3 ; save AC3
11703 101240 400 03 0 00 000000 SETZ 3, ; set up for RUNTME
11704 101241 260 17 0 00 101161* GO RUNTME ; get current run time
11705 101242 262 17 0 00 000003 GET 3 ; restore AC3
11706 101243 200 01 0 00 101162* MOVE 1,DEBTIM ; get time in milliseconds
11707 101244 270 01 0 00 102765 ADD 1,TWTIME ; point to maximum time
11708 101245 202 01 0 00 120731' MOVEM 1,ENDTIM# ; save it
11709 101246 402 00 0 00 102756 SETZM NRESP ; clear count of packets received
11710 101247 260 17 0 00 065601 GO RWAIT ; wait for 'RESQAV' bit set
11711 101250 260 17 0 00 066134 TEXWA0: GO CHKRSP ; check for a response queue entry
11712 101251 254 00 0 00 101263 JRST TEXWA1 ; nothing found - go check timeout
11713
11714 ; Found an entry - check if it is a packet for us
11715
11716 101252 200 01 0 00 070452 MOVE 1,RSPONS+3 ; get status word
11717 101253 135 00 0 00 116174 LDB [POINT 8,1,31] ; get port number
11718 101254 312 00 0 00 034013 CAME CPORT ; packet from us?
11719 101255 254 00 0 00 101250 JRST TEXWA0 ; no - look for next response
11720 101256 135 00 0 00 114046 LDB [POINT 8,RSPONS+3,23] ; get opcode
11721 101257 275 00 0 00 000040 SUBI 40 ; normalize to 1..n
11722 101260 312 00 0 00 000011 CAME OP ; opcode we sent?
11723 101261 254 00 0 00 101250 JRST TEXWA0 ; no - keep looking
11724 101262 254 00 0 00 101276 JRST TEXWA2 ; yes - go handle
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 270
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0446
11725
11726 ; Nothing found yet - check timeout time
11727
11728 101263 261 17 0 00 000003 TEXWA1: PUT 3 ; save AC3
11729 101264 400 03 0 00 000000 SETZ 3, ; set up for RUNTME
11730 101265 260 17 0 00 101241* GO RUNTME ; get current run time
11731 101266 262 17 0 00 000003 GET 3 ; restore AC3
11732 101267 200 00 0 00 101243* MOVE DEBTIM ; get current time
11733 101270 315 00 0 00 120731' CAMGE ENDTIM ; exceeds maximum time?
11734 101271 254 00 0 00 101250 JRST TEXWA0 ; no - check for response again
11735 101272 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
11736 101273 201 00 0 00 000001 MOVEI 1 ; set up error type
11737 101274 202 00 0 00 102763 MOVEM TERTYP ; of 1
11738 101275 254 00 0 00 101317 JRST TEXWAX ; exit
11739
11740 ; Got a valid response
11741
11742 101276 350 00 0 00 102756 TEXWA2: AOS NRESP ; increment number of packets received
11743 101277 200 00 0 00 117436 MOVE [RSPONS,,TRESPA] ; move entire packet to TRESPA area
11744 101300 251 00 0 00 102755 BLT TRESPA+^D255 ; ...
11745 101301 135 00 0 00 114540 LDB [POINT 8,RSPONS+3,7] ; get status byte (actual)
11746 101302 202 00 0 00 102761 MOVEM TSTATA ; save it
11747
11748 ; Verify packet data
11749
11750 101303 402 00 0 00 102757 SETZM DCRESP ; clear data error count
11751 101304 201 01 0 00 000375 MOVEI 1,^D253 ; get word count
11752 101305 200 00 0 01 101760 TEXWA3: MOVE TRESPC+2(1) ; get correct data
11753 101306 312 00 0 01 102360 CAME TRESPA+2(1) ; same as actual?
11754 101307 350 00 0 00 102757 AOS DCRESP ; no - increment data error count
11755 101310 367 01 0 00 101305 SOJG 1,TEXWA3 ; loop till done
11756 101311 332 00 0 00 102757 SKIPE DCRESP ; any errors?
11757 GO [SETO ERFLG, ; yes - set error flag
11758 MOVEI 2 ; set up error type
11759 MOVEM TERTYP ; of 2
11760 101312 260 17 0 00 117437 RTN]
11761 101313 336 00 0 00 102766 SKIPN TWADDR ; address given?
11762 101314 254 00 0 00 101317 JRST TEXWAX ; no - exit
11763 101315 260 17 1 00 102766 GO @TWADDR ; yes - call the routine
11764 GO [MOVEI 3 ; error - set up new error type
11765 MOVEM TERTYP
11766 101316 260 17 0 00 117443 RTN]
11767
11768 ; And exit +3 or +4
11769
11770 101317 260 17 0 00 066134 TEXWAX: GO CHKRSP ; check for addl responses
11771 101320 334 00 0 00 000000 SKIPA ; nothing found - continue
11772 101321 254 00 0 00 101317 JRST TEXWAX ; keep pulling responses off
11773 101322 336 00 0 00 000015 SKIPN ERFLG ; error flag set?
11774 101323 350 00 0 17 777775 AOS -3(P) ; no - set up good return
11775 101324 350 00 0 17 777775 AOS -3(P) ; set up return
11776 101325 350 00 0 17 777775 AOS -3(P) ; set up return
11777 101326 254 00 0 00 100702 JRST TEXEXX ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 271
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0447
11778
11779 ;#********************************************************************
11780 ; Build a packet
11781 ;#********************************************************************
11782
11783 101327 332 00 0 00 120777' TEXPAK: SKIPE SDEBUG ; EXEC debug mode?
11784 GO [TMSGC <TPACK Op > ; yes - print debug data
11785 LDB [POINT 9,2,14] ; and exit
11786 PNTOCS
11787 TMSG < CmdQ >
11788 LDB [POINT 3,2,17]
11789 PNTOCS
11790 TMSG < Adr >
11791 LDB [POINT 18,2,35]
11792 PNTOCS
11793 101330 260 17 0 00 117457 RTN]
11794 101331 201 00 0 00 000003 MOVEI 3 ; initialize error code
11795 101332 202 00 0 00 102762 MOVEM TERROR ; ...
11796 101333 200 00 0 00 034013 MOVE CPORT ; set up destination port
11797 101334 202 00 0 00 065161 MOVEM TDPORT ; as ourself
11798 101335 135 11 0 00 117451 LDB OP,[POINT 9,2,14] ; get op code
11799 101336 135 13 0 00 117454 LDB Q,[POINT 3,2,17] ; get command queue number
11800 101337 260 17 0 00 065174 GO BPACK ; go build packet
11801 101340 135 02 0 00 117345 LDB 2,[POINT 18,2,35] ; get address of routine to call
11802 101341 332 00 0 00 000002 SKIPE 2 ; address given?
11803 101342 260 17 1 00 000002 GO @2 ; yes - build the packet
11804 101343 200 00 0 00 117355 MOVE [PACKET,,TCMD] ; move the packet constructed
11805 101344 251 00 0 00 101755 BLT TCMD+^D255 ; to TCMD
11806
11807 ; Packet is all built - just have to insert onto the specified command
11808 ; queue.
11809
11810 101345 400 13 0 00 000000 SETZ Q, ; set to cmd queue 3
11811 101346 260 17 0 00 065777 GO INSQUE ; insert into queue
11812 101347 474 15 0 00 000000 SETO ERFLG, ; failed - set error flag
11813 101350 336 00 0 00 000015 SKIPN ERFLG ; error flag set?
11814 101351 350 00 0 17 777775 AOS -3(P) ; no - set up good return
11815 101352 350 00 0 17 777775 AOS -3(P) ; set up return
11816 101353 350 00 0 17 777775 AOS -3(P) ; set up return
11817 101354 254 00 0 00 100702 JRST TEXEXX ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 272
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0448
11818
11819 ;#********************************************************************
11820 ; Miscellaneous
11821 ;#********************************************************************
11822
11823 101355 000000 000000 TCSR: 0 ; final CSR data
11824 101356 TCMD: BLOCK ^D256 ; command placed on command queue
11825 101756 TRESPC: BLOCK ^D256 ; response received (correct)
11826 102356 TRESPA: BLOCK ^D256 ; response received (actual)
11827 102756 000000 000000 NRESP: 0 ; number of responses received
11828 102757 000000 000000 DCRESP: 0 ; number of data compare errors
11829
11830 102760 000000 000000 TSTATC: 0 ; correct status
11831 102761 000000 000000 TSTATA: 0 ; actual status
11832
11833 102762 000000 000000 TERROR: 0 ; error code (0-TSTART,1-TWRITE,
11834 ; 2-TREAD,3-TPACK,4-TWAIT)
11835 102763 000000 000000 TERTYP: 0 ; error type
11836 102764 000000 000000 TERMES: 0 ; ucode load error message routine
11837
11838 102765 000000 000000 TWTIME: 0 ; time to wait (TWAIT)
11839 102766 000000 000000 TWADDR: 0 ; routine to call (TWAIT)
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 273
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0449
11840
11841 ;#********************************************************************
11842 ;* TTPNT - Print error data
11843 ;#********************************************************************
11844
11845 102767 261 17 0 00 000000 TTPNT: RPUT (0,1,2,3) ; save AC's
11846
11847 102773 200 01 0 00 102762 MOVE 1,TERROR ; get error type
11848 GO @[PNTSTR ; dispatch on it
11849 PNTWRT
11850 PNTRD
11851 PNTPAK
11852 102774 260 17 1 01 117471 PNTWAI](1)
11853 102775 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
11854
11855 103001 263 17 0 00 000000 RTN ; return
11856
11857
11858 ;#********************************************************************
11859 ;* PNTSTR - Print out error data (when failed to start the port)
11860 ;#********************************************************************
11861
11862 103002 200 01 0 00 102763 PNTSTR: MOVE 1,TERTYP ; get error flag
11863 XCT [TMSGC <No error code given>
11864 TMSGC <Could not read node address>
11865 TMSGC <Could not load microcode properly>
11866 TMSGC <Could not start microcode>
11867 103003 256 00 0 01 117535 TMSGC <Could not set enabled state>](1)
11868 103004 306 01 0 00 000002 CAIN 1,2 ; ucode load failed?
11869 103005 336 00 0 00 102764 SKIPN TERMES ; any error message?
11870 103006 263 17 0 00 000000 RTN ; no - return
11871 103007 037 00 0 00 030242 PCRL
11872 103010 260 17 1 00 102764 GO @TERMES ; print the message
11873 103011 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 274
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0450
11874
11875 ;#********************************************************************
11876 ;* PNTWRT - Print out error data (when failed to write a register)
11877 ;#********************************************************************
11878
11879 103012 037 00 0 00 117542 PNTWRT: TMSGC <Could not write >
11880 103013 200 00 0 00 065166 MOVE TREGD ; get data
11881 103014 037 03 0 00 000000 PNT3 ; print it
11882 103015 037 00 0 00 117546 TMSG < to Port Register >
11883 103016 200 00 0 00 065165 MOVE TREGN ; get register number
11884 103017 037 16 0 00 000003 PNTOCS
11885 103020 260 17 0 00 103042 GO PNTREG ; print register name
11886 103021 200 01 0 00 102763 MOVE 1,TERTYP ; get error type
11887 XCT [TMSGC <No error code given>
11888 TMSGC <No packet response received>
11889 TMSGC <No response received>
11890 103022 256 00 0 01 117576 TMSGC <Receive status indicates error occurred>](1)
11891 103023 263 17 0 00 000000 RTN ; return
11892
11893
11894 ;#********************************************************************
11895 ;* PNTRD - Print out error data (when failed to read a register)
11896 ;#********************************************************************
11897
11898 103024 037 00 0 00 117602 PNTRD: TMSGC <Could not read Port Register >
11899 103025 200 00 0 00 065165 MOVE TREGN ; get register number
11900 103026 037 16 0 00 000003 PNTOCS
11901 103027 260 17 0 00 103042 GO PNTREG ; print register name
11902 103030 200 01 0 00 102763 MOVE 1,TERTYP ; get error type
11903 XCT [TMSGC <No error code given>
11904 TMSGC <No packet response received>
11905 TMSGC <No response received>
11906 TMSGC <Status error in response>
11907 103031 256 00 0 01 117631 TMSGC <Packet received but expected data incorrect>](1)
11908 103032 322 01 0 00 103535 JUMPE 1,[RTN] ; print c/a? no - return
11909 103033 037 00 0 00 117636 TMSGC <Correct: > ; print correct data
11910 103034 200 00 0 00 065167 MOVE TREGDC ; get data
11911 103035 037 03 0 00 000000 PNT3 ; print it
11912 103036 037 00 0 00 117641 TMSGC <Actual: > ; print actual data
11913 103037 200 00 0 00 065170 MOVE TREGDA ; get data
11914 103040 037 03 0 00 000000 PNT3 ; print it
11915 103041 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 275
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0451
11916
11917 ;#********************************************************************
11918 ; PNTREG - Print register name
11919 ;#********************************************************************
11920
11921 103042 200 01 0 00 065165 PNTREG: MOVE 1,TREGN ; get register number
11922 103043 370 00 0 00 000001 SOS 1 ; normalize to 0..n
11923 103044 303 01 0 00 000015 CAILE 1,15 ; exceed maximum?
11924 103045 201 01 0 00 000016 MOVEI 1,16 ; yes - limit to 16
11925 XCT [TMSG < (Receive Status)> ; 1
11926 TMSG < (Reset Transmit Status)> ; 2
11927 TMSG < (Read Buffer)> ; 3
11928 TMSG < (Enable Link Control)> ; 4
11929 TMSG < (Read Switches)> ; 5
11930 TMSG < (Select Buffer)> ; 6
11931 TMSG < (Load Transmit Buffer)> ; 7
11932 TMSG < (Read Transmit Status)> ; 10
11933 TMSG < (Abort Transmission)> ; 11
11934 TMSG < (Set Mode)> ; 12
11935 TMSG < (Transmit)> ; 13
11936 TMSG < (Read Node Address)> ; 14
11937 TMSG < (Disable Link Control)> ; 15
11938 TMSG < (Sync)> ; 16
11939 103046 256 00 0 01 117742 TMSG < (? Unrecognized)>](1)
11940 103047 263 17 0 00 000000 RTN
11941
11942
11943 ;#********************************************************************
11944 ;* PNTPAK - Print out error data (when couldn't put entry on cmd queue)
11945 ;#********************************************************************
11946
11947 103050 037 00 0 00 117761 PNTPAK: TMSGC <Could not place a >
11948 103051 260 17 0 00 067055 GO OPCPNT ; print op code
11949 103052 037 00 0 00 117766 TMSG < packet on Cmd queue >
11950 103053 201 00 0 00 000003 MOVEI 3 ; get command queue number and
11951 103054 274 00 0 00 000013 SUB Q ; make in form 3-0
11952 103055 037 16 0 00 000003 PNTOCS ; print it out
11953 103056 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 276
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0452
11954
11955 ;#********************************************************************
11956 ;* PNTWAI - Print out error data (when failed to receive proper responses)
11957 ;#********************************************************************
11958
11959 ; Print packet placed on command queue
11960
11961 103057 037 00 0 00 117773 PNTWAI: TMSGC <Packet sent: > ; print heading
11962 103060 201 01 0 00 101356 MOVEI 1,TCMD ; get address of cmd packet
11963 103061 260 17 0 00 103141 GO PNTWPK ; print packet
11964
11965 ; Print error
11966
11967 103062 200 02 0 00 102763 MOVE 2,TERTYP ; get error flag
11968 XCT [TMSGC <No error code given>
11969 TMSGC <No response received>
11970 TMSGC <Data compare error>
11971 103063 256 00 0 02 120014 TMSGC <Data compare error and status error>](2)
11972
11973 ; Print status error if applicable
11974
11975 103064 307 02 0 00 000001 CAIG 2,1 ; packet error of some type?
11976 103065 263 17 0 00 000000 RTN ; no - return
11977 103066 302 02 0 00 000003 CAIE 2,3 ; status error?
11978 103067 254 00 0 00 103076 JRST PNTWA0 ; no - continue
11979
11980 103070 037 00 0 00 120020 TMSGC <Status (Expected):>
11981 103071 200 01 0 00 102760 MOVE 1,TSTATC ; get correct status
11982 103072 260 17 0 00 103106 GO PNTWAS ; print it
11983 103073 037 00 0 00 120025 TMSGC <Status (Actual):>
11984 103074 200 01 0 00 102761 MOVE 1,TSTATA ; get correct status
11985 103075 260 17 0 00 103106 GO PNTWAS ; print it
11986
11987 ; Print response received correct/actual data
11988
11989 103076 201 01 0 00 101756 PNTWA0: MOVEI 1,TRESPC ; get address of correct packet
11990 103077 201 02 0 00 102356 MOVEI 2,TRESPA ; get address of actual packet
11991 103100 260 17 0 00 103203 GO PNTWCM ; yes - print data discrepancies
11992 103101 037 00 0 00 120031 TMSGC < Words in error = > ; print number of words in
11993 103102 200 00 0 00 102757 MOVE DCRESP ; error
11994 103103 037 15 0 00 000000 PNTDEC
11995 103104 037 00 0 00 107460 TMSG <.>
11996 103105 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 277
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0453
11997
11998 ;#********************************************************************
11999 ; PNTWAS - Print status
12000 ;#********************************************************************
12001
12002 103106 602 01 0 00 000200 PNTWAS: TRNE 1,200 ; path status field?
12003 103107 254 00 0 00 103122 JRST PNTWS1 ; no - handle other type
12004
12005 ; Path status byte
12006
12007 103110 336 00 0 00 000001 SKIPN 1 ; any status to print?
12008 103111 037 00 0 00 116247 TMSG < No Error> ; no - print no error
12009 103112 474 02 0 00 000000 SETO 2, ; initialize text pointer
12010 103113 350 00 0 00 000002 PNTWS0: AOS 2 ; point to next text string
12011 103114 301 02 0 00 000006 CAIL 2,6 ; done yet?
12012 103115 263 17 0 00 000000 RTN ; yes - exit
12013 103116 602 01 0 00 000040 TRNE 1,40 ; bit set?
12014 XCT [TMSG < Path A ACK> ; yes - print it
12015 TMSG < Path A NAK>
12016 TMSG < Path A NRSP>
12017 TMSG < Path B ACK>
12018 TMSG < Path B NAK>
12019 103117 256 00 0 02 116274 TMSG < Path B NRSP>](2)
12020 103120 242 01 0 00 000001 LSH 1,1 ; left shift 1 bit
12021 103121 254 00 0 00 103113 JRST PNTWS0 ; loop till done
12022
12023 ; Error byte
12024
12025 103122 135 02 0 00 117224 PNTWS1: LDB 2,[POINT 6,1,35] ; get error bits
12026 103123 201 01 0 00 066742 MOVEI 1,STATAB-1 ; initialize table address
12027 103124 350 00 0 00 000001 PNTWS2: AOS 1 ; point to next entry
12028 103125 337 00 0 01 000000 SKIPG (1) ; end of list?
12029 103126 254 00 0 00 103135 JRST PNTWS3 ; yes - print unrecognized
12030 103127 554 00 0 01 000000 HLRZ (1) ; get error code
12031 103130 312 00 0 00 000002 CAME 2 ; match?
12032 103131 254 00 0 00 103124 JRST PNTWS2 ; no - keep looking
12033 103132 550 01 0 01 000000 HRRZ 1,(1) ; get address of text to print
12034 103133 256 00 0 01 000000 XCT (1) ; print it
12035 103134 263 17 0 00 000000 RTN ; exit
12036
12037 103135 037 00 0 00 116303 PNTWS3: TMSG < ? Invalid error code - >
12038 103136 200 00 0 00 000002 MOVE 2
12039 103137 037 16 0 00 000003 PNTOCS
12040 103140 263 17 0 00 000000 RTN ; exit
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 278
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0454
12041
12042 ;#********************************************************************
12043 ; PNTWPK - Print a packet (first 6 words)
12044 ;#********************************************************************
12045
12046 103141 200 02 0 00 000001 PNTWPK: MOVE 2,1 ; get packet address
12047 103142 037 00 0 00 120036 TMSG <OpCode >
12048 103143 200 00 0 02 000003 MOVE 3(2) ; get status word
12049 103144 135 11 0 00 120040 LDB OP,[POINT 8,0,23] ; get op code
12050 103145 260 17 0 00 067055 GO OPCPNT ; print op code
12051 103146 037 00 0 00 120041 TMSGC < Word Data>
12052 103147 037 00 0 00 120044 TMSGC < +3 >
12053 103150 200 01 0 02 000003 MOVE 1,3(2) ; get 4th word of packet
12054 103151 260 17 0 00 103167 GO BYTPNT ; print it in byte format
12055 103152 037 00 0 00 120046 TMSGC < +4 >
12056 103153 200 01 0 02 000004 MOVE 1,4(2) ; get 5th word of packet
12057 103154 260 17 0 00 103167 GO BYTPNT ; print it in byte format
12058 103155 037 00 0 00 120050 TMSGC < +5 >
12059 103156 200 01 0 02 000005 MOVE 1,5(2) ; get 6th word of packet
12060 103157 260 17 0 00 103167 GO BYTPNT ; print it in byte format
12061 103160 037 00 0 00 120052 TMSGC < +6 >
12062 103161 200 01 0 02 000006 MOVE 1,6(2) ; get 7th word of packet
12063 103162 260 17 0 00 103167 GO BYTPNT ; print it in byte format
12064 103163 037 00 0 00 120054 TMSGC < +7 >
12065 103164 200 01 0 02 000007 MOVE 1,7(2) ; get 8th word of packet
12066 103165 260 17 0 00 103167 GO BYTPNT ; print it in byte format
12067 103166 263 17 0 00 000000 RTN ; return
12068
12069 ; Print a word in '377 377 377 377 17' format
12070
12071 103167 400 00 0 00 000000 BYTPNT: SETZ 0, ; clear AC0
12072 103170 246 00 0 00 000010 LSHC 8 ; get a byte
12073 103171 037 03 0 00 000000 PNT3 ; print it
12074 103172 246 00 0 00 000010 LSHC 8 ; get a byte
12075 103173 037 03 0 00 000000 PNT3 ; print it
12076 103174 246 00 0 00 000010 LSHC 8 ; get a byte
12077 103175 037 03 0 00 000000 PNT3 ; print it
12078 103176 246 00 0 00 000010 LSHC 8 ; get a byte
12079 103177 037 03 0 00 000000 PNT3 ; print it
12080 103200 246 00 0 00 000004 LSHC 4 ; get a byte
12081 103201 037 02 0 00 000000 PNT2 ; print it
12082 103202 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 279
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0455
12083
12084 ;#********************************************************************
12085 ; PNTWCM - Data compare and print of a packet
12086 ;
12087 ; Arguments: AC1 - Address of correct packet data
12088 ; AC2 - Address of actual packet data
12089 ;#********************************************************************
12090
12091 ; Print heading data (correct)
12092
12093 103203 261 17 0 00 000003 PNTWCM: RPUT (3,4,5,6) ; save AC's
12094
12095 103207 037 00 0 00 120056 TMSGC <Packet Received (Correct): OpCode >
12096 103210 200 00 0 01 000003 MOVE 3(1) ; get status word
12097 103211 135 11 0 00 120040 LDB OP,[POINT 8,0,23] ; get op code
12098 103212 260 17 0 00 067055 GO OPCPNT ; print op code
12099 103213 037 00 0 00 120066 TMSG < from Port >
12100 103214 200 00 0 01 000003 MOVE 3(1) ; get status word
12101 103215 135 00 0 00 120071 LDB [POINT 8,0,31] ; get port number
12102 103216 037 16 0 00 000003 PNTOCS ; print it
12103
12104 ; Print heading data (actual)
12105
12106 103217 037 00 0 00 120072 TMSGC <Packet Received (Actual): OpCode >
12107 103220 200 00 0 02 000003 MOVE 3(2) ; get status word
12108 103221 135 11 0 00 120040 LDB OP,[POINT 8,0,23] ; get op code
12109 103222 260 17 0 00 067055 GO OPCPNT ; print op code
12110 103223 037 00 0 00 120066 TMSG < from Port >
12111 103224 200 00 0 02 000003 MOVE 3(2) ; get status word
12112 103225 135 00 0 00 120071 LDB [POINT 8,0,31] ; get port number
12113 103226 037 16 0 00 000003 PNTOCS ; print it
12114
12115 ; Print correct/actual data
12116
12117 103227 400 06 0 00 000000 SETZ 6, ; clear print count
12118 103230 201 05 0 00 000003 MOVEI 5,3 ; start at word 3
12119 103231 037 00 0 00 120102 TMSGC < Word ---Correct--- ---Actual---- Discrepancy>
12120 103232 260 17 0 00 103242 PNTWC0: GO PNTCAD ; print correct/actual/discrepancy
12121 103233 350 00 0 00 000005 AOS 5 ; point to next word
12122 103234 305 06 0 00 000005 CAIGE 6,5 ; printed 5 words yet?
12123 103235 254 00 0 00 103232 JRST PNTWC0 ; no - loop till done
12124
12125 ; Exit
12126
12127 103236 262 17 0 00 000006 RGET (6,5,4,3) ; restore AC's
12128
12129
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 280
DFCIA1 MAC 27-Oct-84 19:00 Test Execute Routines SEQ 0456
12130
12131 ; Print correct/actual/discrepancy
12132
12133 103242 200 03 0 00 000001 PNTCAD: MOVE 3,1 ; calculate address of word
12134 103243 270 03 0 00 000005 ADD 3,5 ; ...
12135 103244 200 03 0 03 000000 MOVE 3,(3) ; get correct word
12136 103245 200 04 0 00 000002 MOVE 4,2 ; calculate address of word
12137 103246 270 04 0 00 000005 ADD 4,5 ; ...
12138 103247 200 04 0 04 000000 MOVE 4,(4) ; get actual word
12139 103250 303 05 0 00 000004 CAILE 5,4 ; past the first 2 words?
12140 103251 254 00 0 00 103254 JRST PNTCA0 ; no - forcibly print these
12141 103252 316 03 0 00 000004 CAMN 3,4 ; correct = actual?
12142 103253 263 17 0 00 000000 RTN ; yes - return without printing
12143 103254 350 00 0 00 000006 PNTCA0: AOS 6 ; increment line count
12144 103255 037 00 0 00 120115 TMSGC < +>
12145 103256 200 00 0 00 000005 MOVE 5 ; get offset
12146 103257 037 16 0 00 000003 PNTOCS ; print it
12147 103260 037 00 0 00 117173 TMSG < > ; print tab
12148 103261 200 00 0 00 000003 MOVE 3 ; get correct data
12149 103262 037 13 0 00 000000 PNTHW ; print it
12150 103263 037 00 0 00 117052 TMSG < >
12151 103264 200 00 0 00 000004 MOVE 4 ; get actual data
12152 103265 037 13 0 00 000000 PNTHW ; print it
12153 103266 200 00 0 00 000003 MOVE 3 ; get actual word
12154 103267 430 00 0 00 000004 XOR 4 ; xor with correct
12155 103270 336 00 0 00 000000 SKIPN 0 ; zero?
12156 103271 263 17 0 00 000000 RTN ; yes - return
12157 103272 037 00 0 00 117052 TMSG < > ; no - space over
12158 103273 037 13 0 00 000000 PNTHW ; and print it
12159 103274 263 17 0 00 000000 RTN ; return
12160
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 281
DFCIA1 MAC 27-Oct-84 19:00 Miscellaneous Test Variables SEQ 0457
12161 SUBTTL Miscellaneous Test Variables
12162
12163 ;#*********************************************************************
12164 ; Current Test Data
12165 ;#*********************************************************************
12166
12167 103275 000 00 0 00 000000 TSTNUM: Z ; current test number (1-n)
12168 103276 000 00 0 00 000000 TSTSUB: Z ; current subtest number
12169 103277 000 00 0 00 000000 TSTPC: Z ; current test PC
12170 103300 000 00 0 00 000000 TSTFLG: Z ; current test flags
12171 103301 000 00 0 00 000000 TSTMSK: Z ; mask to determine what test to run
12172 103302 000 00 0 00 000000 TSTREP: Z ; number of test repetitions done
12173 103303 000 00 0 00 000000 TSTREQ: Z ; number of test repetitions requested
12174 103304 000 00 0 00 000000 TSTMUL: Z ; multiple test flag
12175 103305 000 00 0 00 000000 TSTOFF: Z ; relocatable offset of test module
12176 103306 000 00 0 00 000000 TSTREL: Z ; reliability mode repeat count
12177 103307 000 00 0 00 000000 TSTCNT: Z ; reliability mode repeat count
12178
12179 103310 000 00 0 00 000000 PMODE: Z ; program mode
12180
12181 103311 057400 000000 CIPORT: 57400,,0 ; CI port controller number
12182
12183
12184 ;#********************************************************************
12185 ; PATCH - Patch Area
12186 ;#********************************************************************
12187
12188 103312 PATCH0:
12189 103312 PATCH: BLOCK 100 ; patch area
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 282
DFCIA1 MAC 27-Oct-84 19:00 Miscellaneous Test Variables SEQ 0458
12190
12191 ;#********************************************************************
12192 ;* Special code to test SPEAR entries
12193 ;#********************************************************************
12194
12195 103412 200 00 0 00 103543 STEST: MOVE [JFCL] ; get noop
12196 103413 202 00 0 00 100467 MOVEM S1 ; delete SYERR call #1
12197 103414 202 00 0 00 100576 MOVEM S2 ; delete SYERR call #2
12198 103415 260 17 0 00 103421 GO .+4 ; do it
12199 103416 201 01 0 00 100474 MOVEI 1,SENT10 ; get address to print
12200 103417 260 17 0 00 103454 GO STESTP ; print it
12201 103420 254 00 0 00 103424 JRST STEST0 ; continue
12202 103421 261 17 0 00 000000 RPUT (0,1) ; save AC's
12203
12204 103423 254 00 0 00 100461 JRST SPCHK1 ; check entry type 1
12205
12206 103424 260 17 0 00 103430 STEST0: GO .+4 ; do it
12207 103425 201 01 0 00 100611 MOVEI 1,SENT11 ; get address to print
12208 103426 260 17 0 00 103454 GO STESTP ; print it
12209 103427 254 00 0 00 103437 JRST STEST1 ; continue
12210 103430 261 17 0 00 000000 RPUT (0,1,2,3,4) ; save AC's
12211
12212 103435 400 15 0 00 000000 SETZ ERFLG, ; clear error flag
12213 103436 254 00 0 00 100530 JRST SPCHK2 ; check entry type 2 (no error)
12214
12215 103437 260 17 0 00 103443 STEST1: GO .+4 ; do it
12216 103440 201 01 0 00 100611 MOVEI 1,SENT11 ; get address to print
12217 103441 260 17 0 00 103454 GO STESTP ; print it
12218 103442 254 00 0 00 030007 JRST SRTDDT ; continue
12219 103443 261 17 0 00 000000 RPUT (0,1,2,3,4) ; save AC's
12220
12221 103450 474 15 0 00 000000 SETO ERFLG, ; set error flag
12222 103451 201 00 0 00 000012 MOVEI 12 ; get test number
12223 103452 202 00 0 00 103275 MOVEM TSTNUM ; save it
12224 103453 254 00 0 00 100530 JRST SPCHK2 ; check entry type 2 (error)
12225
12226 103454 037 00 0 00 120117 STESTP: TMSGCD <Buffer:>
12227 103455 505 01 0 00 777753 HRLI 1,-25 ; build AOBJN word
12228 103456 200 00 0 01 000000 MOVE (1) ; get data
12229 103457 037 13 0 00 000000 PNTHW ; print
12230 103460 037 00 0 00 030242 PCRL
12231 103461 253 01 0 00 103456 AOBJN 1,STESTP+2 ; loop till done
12232 103462 263 17 0 00 000000 RTN ; return
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 283
DFCIA1 MAC 27-Oct-84 19:00 Miscellaneous Test Variables SEQ 0459
12233
12234 ;#********************************************************************
12235 ;* Special code to produce an EXE version
12236 ;
12237 ; To produce a standard DFCIA.EXE, just type EXE$G in DDT, then ^Z,
12238 ; then CSAVE DFCIA.EXE. Non-DIAG version type EXEN$G.
12239 ;#********************************************************************
12240
12241 103463 200 00 0 00 120122 EXEN: MOVE [SKIPA]
12242 103464 202 00 0 00 000000* MOVEM REQ1
12243 103465 202 00 0 00 000000* MOVEM REQ2
12244 103466 202 00 0 00 000000* MOVEM REL
12245 103467 200 00 0 00 120123 MOVE [10,,140]
12246 103470 334 00 0 00 000000 SKIPA
12247 103471 200 00 0 00 120124 EXE: MOVE [10,,0]
12248 103472 202 00 0 00 030046 MOVEM CONSW
12249 103473 200 00 0 00 120125 MOVE [SETOM $$TOGG]
12250 103474 202 00 0 00 030643 MOVEM START+32
12251 103475 201 00 0 00 030000 MOVEI 30000
12252 103476 542 00 0 00 000120 HRRM .JBSA
12253 103477 402 00 0 00 030056 SETZM $ONETM
12254 103500 402 00 0 00 000000* SETZM HAVIPA
12255 103501 402 00 0 00 000000* SETZM LOCDON
12256 103502 402 00 0 00 000016 SETZM MBCN
12257 103503 402 00 0 00 044231 SETZM CNAME
12258 103504 254 00 0 00 030007 JRST SRTDDT
12259
12260 103505 201 01 0 00 000004 P7: MOVEI 1,4
12261 103506 254 00 0 00 103514 JRST PG
12262 103507 201 01 0 00 000003 P5: MOVEI 1,3
12263 103510 254 00 0 00 103514 JRST PG
12264 103511 201 01 0 00 000002 P3: MOVEI 1,2
12265 103512 334 00 0 00 000000 SKIPA
12266 103513 201 01 0 00 000001 P1: MOVEI 1,1
12267 103514 202 01 0 00 034011 PG: MOVEM 1,DPORT
12268 103515 202 01 0 00 034013 MOVEM 1,CPORT
12269 103516 202 01 0 00 034012 MOVEM 1,SPORT
12270 MOVE 1,[0
12271 54400,,0
12272 55400,,0
12273 56400,,0
12274 103517 200 01 0 01 120126 57400,,0](1)
12275 103520 202 01 0 00 103311 MOVEM 1,CIPORT
12276 103521 254 00 0 00 030007 JRST SRTDDT
12277
12278 ;#********************************************************************
12279 ; End of Mainline Module
12280 ;#********************************************************************
12281
12282 103522 D1LIT: XLIST
12283
NO ERRORS DETECTED
PROGRAM BREAK IS 121020
ABSOLUTE BREAK IS 120712
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page 283-1
DFCIA1 MAC 27-Oct-84 19:00 Miscellaneous Test Variables SEQ 0460
CPU TIME USED 02:01.727
136P CORE USED
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page S-1
DFCIA1 MAC 27-Oct-84 19:00 SYMBOL TABLE SEQ 0461
AADDR 000000 ext CLRBUF 111056 ext CVALID 043076 int DCOMLX 036335
ABORT 400000 spd CLREBU 064304 ext CWORDL 035714 int DCOMP 000040 000000 spd
ADRPHY 065023 CLSBUF 000030 spd CWORDR 035715 int DCOMSG 036116
ADRQUE 064717 CMD0 032345 D1LIT 103522 DCOMZE 036251
ADRVIR 064774 CMD1 032377 DACRAM 035637 DCONF 042115
ALL 760000 000000 spd CMD1A 032411 DATREC 000014 spd DCONT 035514
ALTCHK 007000 000000 CMD2 032413 DATRET 000021 spd DCRESP 102757 int
ALTF 120713' int CMDOPC 067105 ent DATRQ0 000010 spd DCWPNT 041311
ALTMGO 030063 CMDPAK 120716' DATRQ1 000011 spd DDALU 036521
ALUFR 036715 CMDQAV 000400 spd DATRQ2 000012 spd DDALU0 036525
ALUTO 036716 CMDQUE 032427 DATSNT 000020 spd DDALUM 036677
ANEXT 035720 CMDQUU 032432 DBCRAM 035634 DDALUX 036577
ARGFLG 065552 ext CNAME 044231 DBPAC0 041470 DDCRAM 035631
ARGUM 104120 ext CNFRET 000003 spd DBPACK 041433 DDCSR 034032
BEGIN 030000 CNTRD 000202 spd DBPACP 041465 DDEBU1 035556
BONETM 120714' CNTSET 000201 spd DBREA0 040516 DDEBUF 035552
BPACK 065174 ent CONFI0 042760 DBREAK 040514 DDEBUG 120722' int
BPACKN 065172 ent CONFI1 043000 DC1ST 120721' DDLOC0 037026
BUFCLS 000030 spd CONFI2 043031 DCBR0 040611 DDLOCM 037172
BUFCOM 000000 ext CONFIG 042731 ent DCBR1 040622 DDLOCS 037022
BUFF 071047 int CONFIX 043034 DCBRK 040572 DDLOCX 037073
BUFGEN 065272 ext CONPN0 043047 DCCOD1 041122 DDNEX0 040411
BYTPNT 103167 CONPN1 043070 DCCOD2 041146 DDNEX1 040420
CADDR 035713 int CONPNT 043041 ent DCCOD3 041150 DDNEX2 040425
CALL 200000 000000 spd CONSW 030046 DCCOD4 041156 DDNEX3 040432
CALMAR 120715' CONVI0 065755 DCCOD5 041160 DDNEXT 040366
CALPAR 042407 ent CONVIE 065766 DCCOD6 041166 DDPLI 037417
CBASE 030655 ext CONVIR 065752 ent DCCODE 041114 DDPLI0 037423
CCMIC 041232 CONVIX 065762 DCLEAR 034054 DDPLI1 037457
CCTAB1 041172 CONVSX 036065 ext DCMAR0 037307 DDPLIM 037476
CCTAB3 041212 CPORT 034013 int DCMAR1 037320 DDPLIX 037473
CCWPNT 041314 ext CRAMFR 035711 DCMAR2 037335 DDPLM2 037502
CHINIT 100723 ext CRAMTO 035712 DCMARK 037270 DDPPAK 040435
CHKARG 105630 ext CRCCA0 065472 DCODPB 036162 DDRAR 035604
CHKCSR 000000 ext CRCCAL 065470 DCOLDB 036140 DDTAB 040373
CHKIN0 065631 CRCFIX 065504 DCOM0 035671 DDUMP 037752 int
CHKIN1 065636 CRCOFF 065455 ext DCOM1 035706 DDUMP0 040005
CHKIN2 065644 CRCSAV 065326 ext DCOM3A 036062 DDUMPM 040077
CHKIN3 065656 CRCTAB 065456 ext DCOMA0 036035 DDUMPX 040071
CHKINT 065617 ent CSHFLG 030506 DCOMA1 036040 DEALU 036413
CHKINX 065657 CSHMEM 030507 DCOMA2 036057 DEALU0 036434
CHKQU0 066306 CSREN0 042477 DCOMA3 036060 DEALU1 036454
CHKQUE 066303 CSREN1 042513 DCOMA4 036077 DEALUM 036674
CHKQUX 066314 CSREN2 042514 DCOMA5 036101 DEALUX 036514
CHKRQV 041670 ext CSRENB 042524 DCOMAA 036047 DEBALU 036452
CHKRS0 066174 CSRENG 042465 ent DCOMAG 036021 DEBEBU 035534
CHKRS1 066212 CSRENS 120717' DCOMAL 036016 DEBELO 036756
CHKRS2 066235 CSRENX 042516 DCOMAX 036104 DEBLAR 035567
CHKRS3 066253 CSRPNT 042443 ent DCOMDB 036011 DEBSTK 040457
CHKRS4 066275 CSRPNX 042460 DCOMDE 035721 DEBTIM 101267 ext
CHKRSP 066134 ent CSRRQS 200000 000000 spd DCOMEX 036267 DEBUG1 002000 spd
CHKRSX 066276 CSRSAV 120720' DCOMEZ 036310 DEBUG2 001000 spd
CHKTAB 066323 CTABLE 043077 int DCOMGO 035650 DEBUG3 000400 spd
CIPORT 103311 CTYPE 043117 int DCOML0 036315 DEBUG4 000200 spd
CKTSET 000200 spd CURTIM 042045 ext DCOMLI 036313 DEBUG5 000100 spd
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page S-2
DFCIA1 MAC 27-Oct-84 19:00 SYMBOL TABLE SEQ 0462
DEBUG6 000040 spd DHELP 032760 DSCPO0 033531 DSPAR2 033207
DECOP0 067214 DHELP0 032772 DSCPO1 033547 DSPAT 034003
DECOPC 067212 DHELP1 033025 DSCPO2 033550 DSPCB1 033326
DECOPX 067226 DIINIT 041412 DSCPO3 033543 DSPCB2 033327
DECRAM 035626 DIPLI 037612 DSCSR1 033167 DSPEAR 004000 spd
DECSR 034022 DIPLIM 037635 DSCSR2 033170 DSPNT1 033621
DECTAB 067230 DIPRIN 041336 DSDAT1 033302 DSPNT2 033622
DECVER 000000 spd DIQUEU 041506 DSDAT2 033303 DSPOR0 033471
DECYN 033633 ext DISGO 031211 DSDAT3 033313 DSPOR1 033506
DEEBUF 035531 DISLIS 031132 DSDATA 033777 DSPOR2 033507
DELAR 035564 DISMS 104000 000167 int DSDATX 033276 DSPOR3 033503
DELAY 005000 000000 DISP0 030771 DSEBU1 033226 DSPRIN 034016 int
DELOC0 036740 DISP0A 031053 DSEBU2 033227 DSPTH1 033444
DELOC1 036761 DISP0B 031055 DSET 033052 DSPTH2 033445
DELOCM 037165 DISP1 031063 DSETAD 033137 DSPTHL 033451
DELOCS 036717 DISP2 031120 DSETCN 033514 DSRES1 033377
DELOCX 037015 DISPAT 030765 DSETCS 033160 DSRES2 033400
DENE0 040313 DISPD 031107 DSETDA 033255 DSSCLR 034237
DENEX0 040347 DISPE 031115 DSETEB 033215 DSSPN0 034226
DENEX1 040353 DISPR 031101 DSETFN 033335 DSSPNT 034215
DENEX2 040357 DISPX 031121 DSETFO 033406 DSST0 034162
DENEX3 040363 DISQUE 031125 DSETHE 033765 DSST1 034176
DENEXT 040304 DISQUU 031130 DSETHL 033773 DSSTEP 034146
DEPLI 037507 DLBR0 040655 DSETIG 033627 DSSTX 034202
DEPLI0 037520 DLBR1 040670 DSETIN 033664 DSSUM 034020
DEPLI1 037546 DLBR2 040707 DSETLN 033235 DSSUM1 033656
DEPLIM 037576 DLBRK 040636 DSETPA 033430 DSSUM2 033657
DEPLIX 037572 DLBRX 040715 DSETPC 033315 DSTAR0 034102
DERBUF 037736 DLCRAM 035645 DSETPL 033730 DSTART 034074
DESTA0 040470 DLGPNT 041317 DSETPO 033455 DSTOP 034123
DESTAK 040454 DLIST 040740 DSETPP 033747 DSTOP1 034136
DESTAX 040505 DLMAR0 037360 DSETPR 033175 DSTPAT 034004
DESTAY 040506 DLMAR1 037373 DSETPT 033607 DSWIT 041325
DESTKM 040511 DLMAR2 037407 DSETPX 033763 DSXCT1 033574
DETAB 040331 DLMARK 037341 DSETRE 033366 DSXCT2 033575
DETBUF 037722 DLMARX 037415 DSETSU 033647 DTRAC0 034150
DEVREL 031362 ext DLOAD 040717 DSETUP 030707 ext DTRACE 034143
DEVREQ 030720 ext DMARK 037212 DSETWH 033701 DTRANS 041104
DFEXA0 041057 DMARK0 037214 DSETXC 033555 DTRFLG 120724'
DFEXAM 041047 DPINIT 041420 DSFNM0 033351 DWATC0 041613
DFEXAX 041102 DPLIH 037610 DSFNM1 033355 DWATC1 041670
DFILLN 041243 DPORT 034011 DSFNM2 033356 DWATC2 041710
DFILLP 041267 DPPCB 041522 DSFOR1 033420 DWATC3 041743
DFILN0 041254 DPQUE0 041553 DSFOR2 033421 DWATC4 042012
DFILP0 041300 DPQUEU 041530 DSFORL 033425 DWATC5 042015
DFLAG 120723' DRBR0 040551 DSIDLE 041425 DWATC6 042026
DFLIS0 041023 DRBRK 040547 DSIGN1 033640 DWATC7 042036
DFLIST 041012 DRCRAM 036372 ent DSIGN2 033641 DWATC8 042043
DFLISX 041045 DRESET 034047 DSINIT 034061 DWATCG 041650
DFLOAD 040753 DRMAR0 037243 DSINT 034021 DWATCH 041562
DFREE 070027 DRMARK 037241 DSINT1 033673 DWATCQ 041612
DFVERF 040776 DSADD1 033152 DSINT2 033674 DWATCX 042050
DGEND 100446 DSADD2 033153 DSLEN1 033247 DWCRAM 036340 ent
DGSNT 000001 spd DSADDR 033776 DSLEN2 033250 DWORDL 120725'
DGSTAR 073447 DSBYTE 034002 DSPAR1 033206 DWORDR 120726'
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page S-3
DFCIA1 MAC 27-Oct-84 19:00 SYMBOL TABLE SEQ 0463
DXCTID 034014 FUERR0 044200 IREGRX 065543 MLOADN 064254 ent
DZALU 036602 FUNCT 020000 000000 spd IREGW 065546 MLOADR 064326
DZALU0 036623 FVERF0 044112 IREGW0 065552 MLOADX 064406
DZALU1 036643 FVERF1 044133 IREGW1 065571 MLOADY 064256 ent
DZALUM 036712 FVERFC 044100 IREGWX 065576 MONTYP 030516
DZALUX 036671 FVERFE 044147 ISTOP 115737 ext MPRUN 000010 spd
DZCRAM 035642 GET 262740 000000 ITERAT 000005 spd MSG 100000 000000 spd
DZCSR 034041 GETJI 104000 000507 int ITEXT 065235 MSGSNT 000002 spd
DZEBUF 035545 GETLOG 041322 ext ITEXT0 065252 MULFLG 120743'
DZLOC0 037117 GETPPN 100653 ITEXT1 065260 MULINI 120744'
DZLOC1 037137 GETQU0 066120 ITEXT2 065266 MVCOM 064267
DZLOCM 037205 GETQUE 066101 ITEXT3 065276 MVFLAG 120745'
DZLOCS 037076 GETQUX 066130 ITRCNT 030024 MVNUM 120746'
DZLOCX 037162 GO 260740 000000 LARG2 120736' MVPNT 064437 ent
DZRAR 035616 GTAD 104000 000227 int LASARG 033701 ext MVPNT1 064457
EADDR 000000 ext HALT 254200 000000 LASENT 065750 MVPNTW 064516
ECODE 064235 HAVIPA 103500 ext LAST 010000 000000 spd MVPNTX 064506
ECOMP 000020 000000 spd ICRC 065311 LBSNT 000015 spd MVREP 120747'
EDEBUG 120727' int ICRC0 065371 LDCRAM 064357 ext MWBADR 064420
ENABLE 030711 ext ICRC1 065411 LDCSR 113775 ext MWBLAC 064426
ENATST 120730' ICRCX 065451 LDEBUF 035562 ext MWBLCO 064423
ENDFIX 030577 ICRCY 065457 LDEBUG 120737' int MWBRAC 064434
ENDTIM 120731' ICWA0 040141 ext LDRAR 065110 ext MWBRCO 064431
ENDUUO 037500 000004 IDLE 000100 000000 spd LENTRY 065664 MWDQUE 036227
EOPUUO 037700 000004 IDREC 000013 spd LINK 100000 000000 spd NCHAR 120750'
EPLIH 037611 IDREQ 000005 spd LINKP 067420 NEWENT 120751'
ERESET 034052 ext IGNFLG 034017 int LINKPX 067430 NPACKR 120752'
ERFLG 000015 INHCRC 120735' LOCDON 103501 ext NPACKS 120753'
ERRPC 030052 INITPD 031353 ext LOCFR 037210 NRESP 102756
EXE 103471 INITPI 041415 ext LOCPHY 030710 ext NUMENT 065751 int
EXEN 103463 INSQU0 066044 LOCTO 037211 OP 000011
FFF 065776 ext INSQU1 066066 LOGPNT 041323 ext OPCPN0 067065
FFLAG 044232 INSQUE 065777 ent LOOP 040000 000000 spd OPCPNE 067076
FGETW 043771 ext INSQUX 066073 LOOPGM 040000 spd OPCPNT 067055 ent
FINCMD 111026 ext INTAPR 041401 ext LOOPTS 020000 spd OPCPNX 067102
FINECH 120732' int INTCON 041376 ext MAPNEW 030143 OPRSEL 000010 spd
FINPUT 120733' int INTCSR 041404 ext MAXPOR 000017 spd P 000017
FIOFF 115646 ext INTEND 105617 ext MAXTST 000054 spd P1 103513
FLDLIS 036204 INTNUM 105620 ext MBCN 000016 P3 103511
FLOADB 043745 INTPC 041364 ext MCNF 000004 spd P5 103507
FLOADC 044030 INTTIM 041367 ext MCNVER 000003 spd P7 103505
FLODB0 043761 INTTYP 041407 ext MCPUS 120740' PACK1 066511
FLODB1 043771 INTUSE 041372 ext MDATRQ 000016 spd PACK13 066525
FLODB2 044007 IPACLR 100711 ext MDEBUG 120741' int PACK15 066572
FLODBE 044022 IPASRT 035517 ext MDTSNT 000022 spd PACK33 066621
FLODBX 044021 IPASST 040476 ext MFREE 070024 PACK36 066632
FLODC0 044050 IPASTP 034126 ext MGEND 073446 PACK37 066647
FLODCX 044070 IPCB 067551 MGSTAR 071447 PACK5 066517
FMTTYP 120734' IPRIN0 041344 MLIST 064526 PACKET 070047 int
FNAME 044225 IPRINI 041355 MLIST0 064535 PACKG 066664
FOARG 000000 ext IPRINT 041341 ent MLISTX 064560 PAG 000010 spd
FORPNT 032043 ext IPRINX 041351 MLNUM 120742' int PAKOFF 120754'
FORSEL 034007 IREGR 065523 MLOAD0 064306 PAKTYP 120755'
FSELEC 037240 000004 IREGR0 065527 MLOAD1 064330 PARFLG 034000 int
FUERR 044155 IREGR1 065540 MLOAD2 064403 PASCNT 030047
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page S-4
DFCIA1 MAC 27-Oct-84 19:00 SYMBOL TABLE SEQ 0464
PASPNT 030746 PNTHW 037540 000000 PTEXTX 067413 RETDAT 000021 spd
PAT 000014 PNTHWF 037540 000001 PTIME 043417 ext RFROM 035717
PAT1 120756' PNTMSF 037040 000000 PUT 261740 000000 RLOCB 120770'
PAT2 120757' PNTMSG 037000 000000 PVPAGI 030511 RLOCE 120771'
PATCH 103312 PNTOCC 001000 000000 PXCTID 067311 RQAFLG 113742 ext
PATCH0 103312 PNTOCF 037740 000003 Q 000013 RSPFLG 034006
PATPNT 033754 ext PNTOCS 037700 000003 QARG1 120762' RSPONS 070447 int
PATSEL 034010 PNTPAK 103050 QARG2 120763' RSPOPC 067131
PBUFF 200000 000000 spd PNTRD 103024 QFDG1 073447 RSPPAK 120772'
PCB 070000 int PNTREG 103042 QFDG10 077047 int RSTART 200000 spd
PCBBAS 070042 PNTRS0 042072 QFDG11 077447 RSTSNT 000006 spd
PCBFLG 034005 PNTRS1 042107 QFDG12 100047 RTMDAT 000023 spd
PCBPI 070043 PNTRSP 042056 ent QFDG2 074047 RTN 263740 000000
PCMD 120760' PNTRSX 042110 QFDG3 074447 RTO 035716
PCRL 037000 030242 PNTSIX 037000 000002 QFDG4 075047 RUNTME 101265 ext
PCRL2 037000 030243 PNTSTR 103002 QFDG5 075447 RUPDA1 043242
PCRLF 037040 030242 PNTSXF 037040 000002 QFDG6 076047 RUPDA2 043245
PDSABL 000040 spd PNTWA0 103076 QFDG7 076447 int RUPDA3 043261
PENABL 000020 spd PNTWAI 103057 QFMG1 071447 RUPDAT 043166 ent
PFLAGS 067017 PNTWAS 103106 QFMG2 072047 RUPDAX 043264
PFORCE 037040 000026 PNTWC0 103232 QFMG3 072447 RWAIT 065601 ent
PG 103514 PNTWCM 103203 QFMG4 073047 RWAIT0 065605
PGMINT 265000 030011 PNTWD 042365 RALUB 120764' RWAITX 065613
PGMNAM 030600 int PNTWPK 103141 RALUE 120765' S1 100467
PHEAD 067324 PNTWRT 103012 RANCNT 120766' S2 100576
PI00RQ 020000 000000 spd PNTWS0 103113 RANDBS 030022 SAVCMD 120773'
PJRST 254000 000000 PNTWS1 103122 RANGEN 031623 SAVCR0 042575
PK 000012 PNTWS2 103124 RANNUM 120767' SAVCRL 042635
PK15A 066616 PNTWS3 103135 RDBF 040226 SAVCRM 042566
PLIDAT 037606 PORT 400000 000000 spd RDBUF1 040114 SAVFLD 120774'
PLILNK 037605 PPAKC 066422 ent RDBUFS 040104 SAVHST 035466
PLINUM 120761' PPAKC0 066440 RDBUFX 040122 SAVNUM 120775'
PLIREP 037607 PPAKCC 066443 RDCNT 000202 spd SAVRAR 120776'
PLOG 040127 PPAKCX 066454 RDCRAM 115331 ext SB 030610
PLOG0 040153 PPAKF 066472 ent RDCSR 113771 ext SCOOFF 042227 ext
PLOGM 040171 PPAKR 066457 ent RDEBUF 065116 ext SCOPE1 000000 ext
PMISC 066772 PPCB 067434 ent RDLAR 041140 ext SCOPER 027000 000000
PMISC0 067000 PPCB0 067510 RDMIC 065133 SCOSW 000000 ext
PMODE 103310 int PPCBD 067504 ent RDNODE 065076 ent SDATA 042232 ext
PNT1 037040 000000 PPCBP 067542 RDNODX 065127 SDEBUG 120777' int
PNT2 037100 000000 PPORTO 067337 RDREG 000203 spd SELLAR 040000 spd
PNT3 037140 000000 PQUEU0 066405 REGRD 000203 spd SEN11L 100624
PNT4 037200 000000 PQUEUE 066353 ent REGWR 000204 spd SENT10 100474
PNT4F 037200 000001 PQUEUX 066413 REL 103466 ext SENT11 100611
PNTADR 037400 000000 PRSFLG 034001 RELIAB 000400 spd SETCKT 000200 spd
PNTCA0 103254 PSP 037000 000040 REQ1 103464 ext SETCNT 000201 spd
PNTCAD 103242 PSPF 037040 000040 REQ2 103465 ext SETDS0 042175
PNTCI 037000 000000 PSTAT0 066711 REQDT0 000010 spd SETDSA 042162 ent
PNTCIF 037040 000000 PSTAT1 066720 REQDT1 000011 spd SETDSX 042203
PNTCRM 042271 PSTAT2 066722 REQDT2 000012 spd SETEBU 035557 ext
PNTDCC 003000 000000 PSTAT3 066733 REQID 000005 spd SETEN0 042132
PNTDCF 037640 000001 PSTATS 066675 REQMDT 000016 spd SETEN1 042141
PNTDEC 037640 000000 PSTATX 066736 RESCR0 042621 SETEN2 042146
PNTENB 030220 PTEXT 067352 RESCRM 042610 SETEN3 042155
PNTHST 035447 PTEXT0 067402 RESQAV 000200 spd SETENA 042122 ent
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page S-5
DFCIA1 MAC 27-Oct-84 19:00 SYMBOL TABLE SEQ 0465
SETENE 042156 STEST1 103437 TEXCAL 100744 TREGN 065165 int
SETLAR 000000 ext STESTP 103454 TEXEC 100665 ent TRESPA 102356 int
SETVEC 041416 ext STIME 121003' TEXERR 100675 TRESPC 101756 int
SHUTRQ 066342 STRSNT 000007 spd TEXEX1 100676 TREX 042224
SHUTRX 066351 STRT1 030647 TEXEXI 100771 TREXX 042240
SINCYC 020000 spd SUPDA0 043150 TEXEXX 100702 TRSFLG 065155 int
SLAST 035500 ext SUPDAT 043130 ent TEXINI 100776 TSLOAD 121005' int
SLDATA 121000' SWCHPT 000000 ext TEXJRS 100736 TST1 000000 ext
SNARKF 000000 ext SWCOM 041333 ext TEXPAK 101327 TST10 000000 ext
SNDDAT 000020 spd SWITT 100525 ext TEXRD 101114 TST11 000000 ext
SNDDG 000001 spd SWPTAB 030525 TEXRD0 101155 TST12 000000 ext
SNDLB 000015 spd SWRGT 030635 ext TEXRD1 101165 TST13 000000 ext
SNDMDT 000022 spd SWSTP 000124 spd TEXRDX 101212 TST14 000000 ext
SNDMSG 000002 spd SWSTT 000031 spd TEXST0 100717 TST15 000000 ext
SNDRST 000006 spd SYERR 104000 000527 int TEXST1 100731 TST16 000000 ext
SNDSTR 000007 spd SZERO 043470 TEXSTR 100706 TST17 000000 ext
SNEXT 042231 ext T10M 000000 ext TEXWA0 101250 TST2 000000 ext
SPCHK1 100461 T11M 000000 ext TEXWA1 101263 TST20 000000 ext
SPCHK2 100530 T12M 000000 ext TEXWA2 101276 TST21 000000 ext
SPEAR1 121001' T13M 000000 ext TEXWA3 101305 TST22 000000 ext
SPEAR2 121002' int T14M 000000 ext TEXWAI 101222 TST23 000000 ext
SPORT 034012 int T15M 000000 ext TEXWAX 101317 TST24 000000 ext
SPRE1X 100471 T16M 000000 ext TEXWR0 101060 TST25 000000 ext
SPRE2A 100521 T17M 000000 ext TEXWR1 101070 TST26 000000 ext
SPRE2B 100556 T20M 000000 ext TEXWRT 101022 TST27 000000 ext
SPRE2C 100567 T21M 000000 ext TEXWRX 101104 TST3 000000 ext
SPRE2X 100603 T22M 000000 ext TFLER1 043705 TST30 000000 ext
SPREP1 100447 T23M 000000 ext TFLER2 043715 TST31 000000 ext
SPREP2 100510 int T24M 000000 ext TFLER3 043725 TST32 000000 ext
SREPO0 043304 T25M 000000 ext TFLER4 043735 TST33 000000 ext
SREPO1 043352 T26M 000000 ext TFLOAD 043652 ent TST34 000000 ext
SREPO2 043357 T27M 000000 ext TFLOAE 043700 TST35 000000 ext
SREPO3 043415 T2M 000000 ext TFLOAX 043676 TST36 000000 ext
SREPO4 043422 T30M 000000 ext TFMFLG 065154 int TST37 000000 ext
SREPOR 043272 ent T31M 000000 ext TIDLE 065052 ent TST4 000000 ext
SREPOX 043460 T32M 000000 ext TIDLEE 065072 TST40 000000 ext
SRTDDT 030007 T33M 000000 ext TLERR 064610 TST41 000000 ext
SSADRL 034447 T34M 000000 ext TLOAD 064567 ent TST42 000000 ext
SSADRN 034647 T35M 000000 ext TLOADE 064601 TST43 000000 ext
SSCSRL 035047 T36M 000000 ext TLOADX 064577 TST44 000000 ext
SSCSRN 035247 T37M 000000 ext TMP1 121004' TST45 000000 ext
SSLOC 034246 T3M 000000 ext TPAT 065164 int TST46 000000 ext
SSNUM 034247 T40M 000000 ext TPCB 064612 ent TST47 000000 ext
STARCA 043556 int T4M 000000 ext TPCB0 064620 TST5 000000 ext
STARCB 043614 int T5M 000000 ext TPCB1 064667 TST50 000000 ext
START 030611 ent TAKFIL 031576 int TPCB2 064677 TST51 000000 ext
STARTA 030723 ent TBYTE 065162 int TPCB3 064700 TST52 000000 ext
STARTB 030745 TCMD 101356 int TPCBX 064711 TST53 000000 ext
STASNT 043474 int TCSR 101355 int TPTFLG 065156 int TST54 000000 ext
STATAB 066743 TDENA 000100 000000 spd TRACE 042206 ent TST6 000000 ext
STATB 043474 TDPORT 065161 int TRACET 400000 spd TST7 000000 ext
STATE 043651 spd TERMES 102764 TREGCF 065171 TSTAL0 032023
STCLOK 030656 ext TERROR 102762 TREGD 065166 int TSTALT 032014
STEST 103412 TERTYP 102763 TREGDA 065170 TSTATA 102761 int
STEST0 103424 TEXCAC 100756 TREGDC 065167 TSTATC 102760 int
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page S-6
DFCIA1 MAC 27-Oct-84 19:00 SYMBOL TABLE SEQ 0466
TSTCNT 103307 TSTREQ 103303 .COMM 036072 ext .MCRTN 000017 spd
TSTCON 031375 TSTRES 032261 .CONI 000000 ext .MCRY 000001 spd
TSTCPN 031403 TSTSAV 121010' .CONO 000000 ext .MD 000007 spd
TSTD0 031712 TSTSP0 031621 .DARG 040436 ext .MJ 007777 spd
TSTD1 031720 TSTSPC 031600 .DATAI 040156 ext .MJMAP 000017 spd
TSTD2 031732 TSTSSW 031533 .DATAO 040151 ext .MLDCT 000017 spd
TSTD3 031733 TSTSUB 103276 int .DBCMD 032435 .MLDLM 000037 spd
TSTD4 031736 TSTSWI 031521 .DBDIS 032607 .MMGC 001777 spd
TSTD5 031745 TSTSWP 031526 .HLCMD 033000 .MOENA 000001 spd
TSTD6 031752 TSTTA0 031561 .INPNT 041713 ext .MOR 000007 spd
TSTD8 031772 TSTTAB 032050 int .INWD1 041712 ext .MPLUS 000007 spd
TSTD9 032001 TSTTAK 031544 .ISWT 105625 ext .MRDLM 000037 spd
TSTDDT 031346 TSTTAN 031542 .JBSA 000120 spd .MRPCT 000017 spd
TSTDEB 032341 TSTZER 031370 .LA 000000 spd .MS0A 000007 spd
TSTDIA 031341 TTALTM 037340 000003 .LADDR 000100 000000 spd .MS0B 000007 spd
TSTDIS 031672 TTIDEC 037200 000003 .LAND 000000 spd .MSD0 000007 spd
TSTDL0 031477 TTNBRF 030510 .LB 000000 spd .MSELC 000007 spd
TSTDS0 031453 TTPNT 102767 ent .LCCER 000000 spd .MSELE 000007 spd
TSTDSA 031442 TTSIXB 037400 000003 .LCENA 000000 spd .MSELM 000007 spd
TSTDSL 031472 TTYYES 000000 ext .LCJP 000000 spd .MSELP 000007 spd
TSTEBF 200000 spd TWADDR 102766 .LCJPP 000000 spd .MSKCN 000037 spd
TSTEN0 031451 TWORD 065163 int .LCJS 000000 spd .MXNOR 000007 spd
TSTENA 031446 TWTIME 102765 .LCONT 000000 spd .OARG 065564 ext
TSTEND 042244 ent TXADDL 121011' int .LCRTN 000000 spd .RA 000010 000000 spd
TSTEOP 032032 TXALL 060000 000000 spd .LCRY 000000 spd .RAND 040000 000000 spd
TSTEXE 031267 TXCTID 065157 int .LD 000000 spd .RB 400000 spd
TSTFLG 103300 int TXTINH 000200 spd .LJ 010000 spd .RBERR 000004 spd
TSTHL0 031422 UCODE 044234 .LJMAP 000000 spd .RBRCV 000001 spd
TSTHLC 031430 UDEBUG 121012' int .LLDCT 000000 spd .RCCER 100000 spd
TSTHLL 031435 ULEN 044233 .LLDLM 000000 spd .RCENA 000400 000000 spd
TSTHLP 031410 UNAME 044227 .LMGC 000001 spd .RCJP 000060 spd
TSTHLT 031357 USER 030037 .LOENA 002000 spd .RCJPP 000260 spd
TSTL1 121006' USRION 030712 ext .LOR 000000 spd .RCJS 000020 spd
TSTL2 121007' UVERR 064234 .LPLUS 000000 spd .RCONT 000340 spd
TSTLI0 031317 UVERSN 121013' int .LRDLM 000000 spd .RCRTN 000240 spd
TSTLI1 031326 WATFLG 121014' .LRPCT 000000 spd .RCRY 000400 spd
TSTLIS 031275 WATTIM 121015' .LS0A 000000 spd .RD 001000 000000 spd
TSTLIX 031337 WRDERR 000000 ext .LS0B 000000 spd .RESET 030647 ext
TSTMAX 032125 WRPLI 040253 .LSD0 000000 spd .RJ 000000 spd
TSTMIC 032126 WRREG 000204 spd .LSELC 000000 spd .RJMAP 000040 spd
TSTMSK 103301 int XXW 121016' .LSELE 000000 spd .RLDCT 000300 spd
TSTMUL 103304 XXX 121017' .LSELM 000000 spd .RLDLM 230000 spd
TSTNAM 032203 int $$TOGG 030521 .LSELP 000000 spd .RMGC 000000 spd
TSTNUM 103275 int $ARG2 007757 .LSKCN 000000 spd .ROENA 000000 spd
TSTOFF 103305 int $B 000052 .LSWIT 000000 ext .ROR 030000 000000 spd
TSTPC 103277 int $CHR 000052 .LXNOR 000000 spd .RPERR 000003 spd
TSTPN0 042260 $GARG 000001 .MA 000017 spd .RPLUS 000000 spd
TSTPNT 042247 ent $ONETM 030056 .MAND 000007 spd .RPRCV 000000 spd
TSTPNX 042266 $TTCHR 030231 .MB 000017 spd .RRDLM 220000 spd
TSTPRI 031514 $TWCNT 030225 .MCCER 000037 spd .RRERR 000002 spd
TSTRA0 031656 %ADDR 007760 spd .MCENA 000001 spd .RREXP 000005 sin
TSTRAA 031664 %ML 775777 570000 spd .MCJP 000017 spd .RRPCT 000220 spd
TSTRAN 031643 %MR 000040 spd .MCJPP 000017 spd .RS0A 400000 000000 spd
TSTREL 103306 .CGOT 041331 ext .MCJS 000017 spd .RS0B 300000 000000 spd
TSTREP 103302 int .CLOSE 031363 ext .MCONT 000017 spd .RSD0 700000 000000 spd
DFCIA (Port Functional Diagnostic) MACRO %53A(1152) 18:45 29-Oct-84 Page S-7
DFCIA1 MAC 27-Oct-84 19:00 SYMBOL TABLE SEQ 0467
.RSELC 004000 spd
.RSELE 005000 spd
.RSELM 002000 spd
.RSELP 001000 spd
.RSKCN 240000 spd
.RSWIT 030636 ext
.RXNOR 070000 000000 spd
.SAACK 000002 spd
.SANAK 000003 spd
.SANSP 000004 spd
.SARG 033630 ext
.SBACK 000005 spd
.SBNAK 000006 spd
.SBNSP 000007 spd
.SBSNT 000001 spd
.SPSNT 000000 spd
.SRERR 000010 spd
.SREXP 000011 sin
.STCMD 033064
.STDIS 033112
.SWCHP 105632 ext
AADDR 90#
ABORT 247 1213 SEQ 0468
ADRPHY 8802 8902# 9586 9588
ADRQUE 8810 8828#
ADRVIR 8797 8876# 9590
ALL 636
ALTF 38 240 322# 322 335 339 1188 1231 1639 1643 3489 3546 3636 3949
3978 4072 4126 4369 4423 5268 5277 5286 5299 5317 5325 5541 6132 6167
6679 7172 8693
ALTMGO 338 1027 1074 1110 1189 1192 1642 3549 3640
ALUFR 4045 4085 4159 4224 4263 4333#
ALUTO 4047 4087 4161 4226 4265 4334#
ANEXT 3540# 3610 3733 3927 3953 3981 4123 4190 4208 4286 4427 4479 4480 4501
4585 4924 5005 5566 5573 5580 5587 5624 5631 5639 5647
ARGFLG 102# 418 421 870 1036 1044 1116 1124 1138 1674 1677 3561 4206 4499
4634 4677 5746 5793 9414 9443
ARGUM 102# 671 678 795 797 881 983 989 1042 1122 2039 2041 2222 2285
2310 2377 2401 2416 2466 2472 2521 2548 2579 2592 2623 2637 2669 2678
2703 2751 2771 2822 2831 2954 3037 3119 3120 3125 3193 3198 3338 3352
3391 3471 3481 3568 3576 3584 3592 3600 4056 4064 4153 4168 4209 4235
4243 4353 4361 4451 4465 4502 4528 4536 4645 4688 4733 4743 4806 4816
4887 4902 4910 4911 4981 4989 5001 5002 5522 5523 5528 5533 5542 5588
5634 5642 5648 5663 5678 5757 5804 5845 5855 5913 5923 5993 6024 6186
6299 6327 6481 6560 6603 6615 6638 6639 6723 6743 6777 6779 6821 9426
9456 9468
BEGIN 12283
BONETM 153# 153 155 391
BPACK 46 6506 7474 9089# 11478 11587 11800
BPACKN 46 9087#
BUFCLS 10564 10589 10671
BUFCOM 103#
BUFF 49 10047 10123 10139 10781 10783 10972#
BUFGEN 103# 9213
BYTPNT 12054 12057 12060 12063 12066 12071#
CADDR 27 3532# 3557 3622 3626 3920 3938 3969 3973 3994 4006 4022 4029 4657
4700 4769 4844 5769 5816 5881 5951 6122 6129 6156 6163 6303 6328 6331
7367 7389 8203 8283 8334 8350 8364 8374 8540 8580
CALL 8734
CALMAR 7224# 7224 7226 7250
CALPAR 26 4002 5777 5958 7222# 8552 8687
CBASE 93# 183
CCMIC 6210 6211 6278#
CCTAB1 6236 6245 6257#
CCTAB3 6223 6225 6235 6244 6274#
CCWPNT 93# 6348
CHINIT 93# 3032 8939 11346
CHKARG 102# 721 732 746 761 773 780 906 933 943 949 960 1599 1881
1956 1993 1998 2861 2935 2964 2976 2986 2997 3068 3217 3291 3313 3336
3362 3401 5106 5205 5229 5622 5687 6044 6087 6110 6145 6196 6346 6358
6370 6384 6442 6454 6465 6587 6944
CHKCSR 89#
CHKIN0 9530# 9533
CHKIN1 9531 9535#
CHKIN2 9544# 9553
CHKIN3 9548 9554# SEQ 0469
CHKINT 46 6799 9516# 9625 9647 9781 9812 9986 9989
CHKINX 9534 9558#
CHKQU0 9920# 9925
CHKQUE 9811 9917#
CHKQUX 9922 9926#
CHKRQV 84# 6734
CHKRS0 9819#
CHKRS1 9820 9839#
CHKRS2 9815 9861#
CHKRS3 9862 9881#
CHKRS4 9835 9857 9877 9902#
CHKRSP 46 6735 7486 9775# 11484 11517 11549 11593 11626 11670 11711 11770
CHKRSX 9782 9786 9813 9906#
CHKTAB 9919 9938#
CIPORT 214 347 1173 1609 12181# 12275
CKTSET 10565 10590 10672
CLRBUF 99# 346 1636 3644 3691 3712 9415 9444
CLREBU 89# 8513
CLSBUF 10536 10640
CMD0 1605# 1641 1667 1686 1688 1694
CMD1 1637# 1653 1659 1672
CMD1A 1656# 1671
CMD2 1654 1669#
CMDOPC 47 10501 10523#
CMDPAK 6927 10042# 10042 10118 10502
CMDQAV 6816 7480 9962 11501 11610 11699
CMDQUE 1662 1692#
CMDQUU 1693 1696#
CNAME 2476 3608 3731 3922 6059 6071 6310 6335 8172 8253 8296 8448# 8521 12257
CNFRET 10548 10573 10647 10655
CNTRD 10567 10592 10674
CNTSET 10566 10591 10673
CONFI0 7464# 7487 7516
CONFI1 7486# 7493 7495
CONFI2 7466 7469 7520#
CONFIG 47 775 6945 7418#
CONFIX 7423 7450 7455 7460 7526#
CONPN0 7542# 7562
CONPN1 7543 7562#
CONPNT 47 776 782 6946 7534#
CONSW 12248
CONVI0 9585# 9589
CONVIE 9587 9597#
CONVIR 47 6738 9546 9582# 10779 10825
CONVIX 9590#
CONVSX 100# 436 2580 2624 3702
CPORT 49 2631 2652 2656 2918# 6912 7424 7512 7598 7691 8993 9005 9270 11330
11337 11338 11533 11642 11718 11796 12268
CRAMFR 3463 3472 3486 3497 3508 3530# 3556 3609 3621 3625 3641 3732 3919 3926
3937 3952 3968 3980 5568 5626
CRAMTO 3461 3473 3482 3492 3510 3531# 3611 3734 3928 3954 3982 5567 5625
CRCCA0 9374# 9382
CRCCAL 9260 9262 9265 9269 9271 9273 9277 9285 9287 9302 9304 9309 9311 9321 SEQ 0470
9323 9325 9327 9335 9337 9339 9344 9346 9372#
CRCFIX 9354 9390#
CRCOFF 84# 9242 9357
CRCSAV 84# 9241 9248
CRCTAB 84# 9358
CSHFLG 142
CSHMEM 143
CSREN0 7292# 7306
CSREN1 7297 7304#
CSREN2 7294 7305#
CSRENB 7304 7315#
CSRENG 31 7271 7285#
CSRENS 7287# 7287 7331 7351
CSRENX 7292 7307#
CSRPNT 31 2939 3054 3084 3304 5260 6187 6729 6864 7261#
CSRPNX 7268 7272#
CSRRQS 6719
CSRSAV 6658# 6658 6721 6725
CTABLE 48 7429 7430 7431 7515 7542 7547 7570#
CTYPE 48 7514 7572#
CURTIM 99# 1082 6666 6688 6884
CVALID 48 7428 7522 7569#
CWORDL 27 3534# 3554 3603 3619 3764 3766 3768 3770 3772 3774 3803 3805 3807
3809 3811 3813 3917 3944 3975 3998 4027 4658 4661 4701 4704 4770 4773
4845 5770 5775 5778 5817 5882 5952 5956 5959 6301 6307 6329 6332 7369
7391 8205 8207 8286 8343 8354 8368 8376 8558 8573 8584
CWORDR 27 3535# 3555 3606 3620 3776 3778 3780 3782 3784 3786 3788 3790 3792
3794 3796 3798 3815 3817 3819 3821 3823 3825 3827 3829 3831 3833 3835
3837 3918 3945 3976 3999 4034 4659 4662 4664 4702 4705 4707 4771 4774
4777 4846 4848 5771 5776 5779 5818 5883 5953 5957 6302 6308 6330 6333
8209 8290 8357 8572 8574 8586
D1LIT 12282#
DACRAM 1919 3437#
DATREC 10557 10582 10650 10664
DATRET 10561 10586 10668
DATRQ0 10553 10578 10660
DATRQ1 10554 10579 10661
DATRQ2 10555 10580 10662
DATSNT 10560 10585 10667
DBCRAM 1918 3429#
DBPAC0 6514# 6519 6521 6548
DBPACK 1978 6475#
DBPACP 6475 6511#
DBREA0 5753# 5785
DBREAK 1937 5746#
DC1ST 3519# 3519 3550 3552 3631 3634
DCBR0 5844 5854 5860#
DCBR1 5881# 5891
DCBRK 1939 5836#
DCCOD1 6207# 6226
DCCOD2 6209 6230#
DCCOD3 6232# 6237
DCCOD4 6234 6239# SEQ 0471
DCCOD5 6241# 6246
DCCOD6 6243 6247#
DCCODE 1950 6195#
DCLEAR 1898 2985#
DCMAR0 4732 4742 4748#
DCMAR1 4769# 4784
DCMAR2 4776 4782#
DCMARK 1934 4724#
DCODPB 3723 3803#
DCOLDB 3670 3764#
DCOM0 3470 3480 3486# 5569 5627
DCOM1 3519#
DCOM3A 3666 3696#
DCOMA0 3650# 3681
DCOMA1 3653# 3718 3726
DCOMA2 3669 3674# 3694 3715
DCOMA3 3662 3675# 3678 3698
DCOMA4 3704 3722#
DCOMA5 3699 3724#
DCOMAA 3663# 3689
DCOMAG 3623 3631#
DCOMAL 3524 3625# 3739
DCOMAX 3655 3685 3730#
DCOMDB 3523 3619# 3738
DCOMDE 3522 3546# 3612
DCOMEX 3521 3937# 3955
DCOMEZ 3951 3956#
DCOMGO 3415 3423 3431 3439 3447 3455 3460#
DCOML0 3968# 3983
DCOMLI 3526 3966#
DCOMLX 3979 3984#
DCOMP 6968 7013
DCOMSG 3674 3743#
DCOMZE 3525 3917# 3929
DCONF 6943#
DCONT 1902 3290#
DCRESP 65 11437 11750 11754 11756 11828# 11993
DCWPNT 1971 6345#
DDALU 1925 4147#
DDALU0 4153# 4210 5635
DDALUM 4181 4185 4186 4313#
DDALUX 4207 4214#
DDCRAM 1917 3421#
DDCSR 1894 2948#
DDEBU1 3339 3347#
DDEBUF 1910 3341#
DDEBUG 18 128# 128 193 205 356 368 1617 1628
DDLOC0 4451# 4503 5643
DDLOCM 4478 4481 4605#
DDLOCS 1929 4445#
DDLOCX 4500 4507#
DDNEX0 5604 5605 5606 5607 5608 5609 5621#
DDNEX1 5610 5611 5612 5631# SEQ 0472
DDNEX2 5613 5614 5615 5639#
DDNEX3 5616 5617 5647#
DDNEXT 1891 5596#
DDPLI 1983 4881#
DDPLI0 4887# 5649
DDPLI1 4937# 4951
DDPLIM 4927 4931 4961# 5501 5502
DDPLIX 4949 4955#
DDPLM2 4925 4965# 5499
DDPPAK 1986 5657#
DDRAR 1914 3382#
DDTAB 5597 5599 5604#
DDUMP 18 1969 5251#
DDUMP0 5284# 5290
DDUMPM 5334 5354#
DDUMPX 5269 5278 5287 5300 5318 5326 5348#
DEALU 1924 4045#
DEALU0 4055 4063 4069# 5576
DEALU1 4098# 4131
DEALUM 4101 4110 4111 4307#
DEALUX 4128 4135#
DEBALU 4093# 5267
DEBEBU 3315# 5261
DEBELO 4390# 5298
DEBLAR 3364# 5262
DEBSTK 5271 5689#
DEBTIM 100# 6751 11508 11522 11617 11631 11706 11732
DEBUG1 196 359 1619
DEBUG2 198 361 1621
DEBUG3 200 363 1623
DEBUG4 202 365 1625
DEBUG5 204 367 1627
DEBUG6 206 369
DECOP0 10612# 10617
DECOPC 6482 6518 7615 7680 9128 10064 10610#
DECOPX 10614 10622#
DECRAM 1920 3413#
DECSR 1893 2934#
DECTAB 10611 10627#
DECVER 9 11078 11191
DECYN 102# 2330 2353 2443 2497 2728
DEEBUF 1909 3312#
DELAR 1913 3361#
DELOC0 4352 4360 4366# 5583
DELOC1 4396# 4429
DELOCM 4407 4408 4597#
DELOCS 1928 4342#
DELOCX 4425 4433#
DENE0 5532# 5545
DENEX0 5549 5550 5551 5552 5553 5554 5566#
DENEX1 5555 5556 5557 5573#
DENEX2 5558 5559 5560 5580#
DENEX3 5561 5562 5587# SEQ 0473
DENEXT 1890 5522#
DEPLI 1984 4977#
DEPLI0 4989# 5589
DEPLI1 5043# 5062
DEPLIM 5015 5016 5073# 5471 5472
DEPLIX 5060 5066#
DERBUF 1988 5228#
DESTA0 5701# 5721
DESTAK 1951 5686#
DESTAX 5703 5725#
DESTAY 5710 5713 5726#
DESTKM 5691 5732#
DETAB 5537 5539 5549#
DETBUF 1987 5204#
DEVREL 94# 723 748
DEVREQ 94# 224
DFEXA0 6152# 6170
DFEXAM 1947 6144#
DFEXAX 6152 6168 6172#
DFILLN 1952 6292#
DFILLP 1953 6320#
DFILN0 6303# 6311
DFILP0 6331# 6337
DFLAG 3414# 3414 3422 3430 3438 3446 3454 3520 3667 3736 4089 4171 4267 4386
4468 4560 4914 4978 5536 5538 5596 5598
DFLIS0 6118# 6135
DFLIST 1946 6109#
DFLISX 6118 6133 6137#
DFLOAD 1944 6043#
DFREE 8772 8790 8876 8902 10948# 10996 11022
DFVERF 1945 6086#
DGEND 8771 11025#
DGSNT 9282 9306 9312 9341 9347 10546 10571 10653
DGSTAR 8769 8770 10994#
DHELP 1879 2031#
DHELP0 2049# 2053
DHELP1 2049 2078#
DIINIT 1963 6441#
DIPLI 1985 5105#
DIPLIM 5116 5139#
DIPRIN 1954 6383#
DIQUEU 1979 6554#
DISGO 472 569# 599
DISLIS 426 508#
DISP0 330# 333 401 406 416 453 462 468 479 486
DISP0A 403# 415
DISP0B 402 413#
DISP1 425#
DISP2 385 429 472#
DISPAT 239 322#
DISPD 437 457#
DISPE 412 460 466#
DISPR 440 448# SEQ 0474
DISPX 444 477#
DISQUE 411 484#
DISQUU 485 488#
DLBR0 5912 5922 5928#
DLBR1 5951# 5979
DLBR2 5960 5974#
DLBRK 1940 5904#
DLBRX 5976 5980#
DLCRAM 1921 3453#
DLGPNT 1972 6357#
DLIST 1943 6018#
DLMAR0 4805 4815 4821#
DLMAR1 4844# 4869
DLMAR2 4850 4864#
DLMARK 1935 4797#
DLMARX 4866 4870#
DLOAD 1942 5987#
DMARK 1932 4634#
DMARK0 4641# 4669
DPINIT 1976 6453#
DPLIH 4881 4896 4907 5089#
DPORT 2587 2606 2610 2916# 6499 12267
DPPCB 1981 6586#
DPQUE0 6614 6626# 6631
DPQUEU 1980 6597#
DRBR0 5800# 5824
DRBRK 1938 5793#
DRCRAM 26 3627 3942 3970 4020# 4660 4703 4772 4847 5772 5819 5884 5954 7368
8342 8375
DRESET 1897 2975#
DRMAR0 4684# 4712
DRMARK 1933 4677#
DSADD1 2284 2295# 2791 3003
DSADD2 2296#
DSADDR 2286 2292 2297 2899# 2999 3027
DSBYTE 2383 2388 2905# 6501
DSCPO0 2625 2637#
DSCPO1 2622 2654#
DSCPO2 2655# 2803
DSCPO3 2640 2643 2647#
DSCSR1 2309 2314#
DSCSR2 2315# 2792 3004
DSDAT1 2400 2423#
DSDAT2 2424# 2796
DSDAT3 2428 2432#
DSDATA 2311 2316 2900# 3001 3040
DSDATX 2409 2418#
DSEBU1 2352 2360#
DSEBU2 2361# 2794
DSET 1887 2212#
DSETAD 2254 2281#
DSETCN 2266 2619#
DSETCS 2255 2306# SEQ 0475
DSETDA 2259 2397#
DSETEB 2257 2349#
DSETFN 2261 2462#
DSETFO 2263 2517#
DSETHE 2274 2860#
DSETHL 2864 2867#
DSETIG 2269 2724#
DSETIN 2271 2767#
DSETLN 2258 2373#
DSETPA 2264 2544#
DSETPC 2260 2439#
DSETPL 2272 2815#
DSETPO 2265 2575#
DSETPP 2821 2830 2839# 2852
DSETPR 2256 2326#
DSETPT 2268 2699#
DSETPX 2850 2853#
DSETRE 2262 2493#
DSETSU 2270 2747#
DSETUP 94# 215
DSETWH 2273 2786#
DSETXC 2267 2665#
DSFNM0 2471 2474#
DSFNM1 2465 2479#
DSFNM2 2480# 2798
DSFOR1 2520 2529#
DSFOR2 2530# 2800
DSFORL 2522 2536#
DSIDLE 1977 6464#
DSIGN1 2727 2735#
DSIGN2 2736# 2806
DSINIT 1907 2996#
DSINT 2772 2777 2928# 6756 6873
DSINT1 2770 2775#
DSINT2 2776# 2808
DSLEN1 2376 2386#
DSLEN2 2387# 2795
DSPAR1 2329 2337#
DSPAR2 2338# 2793
DSPAT 2407 2425 2818 2907# 6504
DSPCB1 2442 2450#
DSPCB2 2451# 2797
DSPEAR 11044 11106
DSPNT1 2702 2712#
DSPNT2 2713# 2805
DSPOR0 2581 2592#
DSPOR1 2578 2608#
DSPOR2 2609# 2802
DSPOR3 2595 2598 2602#
DSPRIN 32 2709 2714 2923# 10753 10754
DSPTH1 2547 2558#
DSPTH2 2559# 2801
DSPTHL 2549 2566# SEQ 0476
DSRES1 2496 2504#
DSRES2 2505# 2799
DSSCLR 1906 3005 3216#
DSSPN0 3201# 3208
DSSPNT 1905 3192#
DSST0 3132# 3172
DSST1 3162#
DSSTEP 1903 3116#
DSSTX 3146 3151 3171 3176#
DSSUM 2752 2757 2927# 6667 6710
DSSUM1 2750 2755#
DSSUM2 2756# 2807
DSTAR0 3036#
DSTART 1900 3024#
DSTOP 1901 3067#
DSTOP1 3077 3082#
DSTPAT 2417 2430 2908#
DSWIT 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018
2019 2020 2021 2022 2023 2024 2025 6369#
DSXCT1 2668 2683#
DSXCT2 2684# 2804
DTRAC0 3114 3119#
DTRACE 1904 3112#
DTRANS 1949 6180#
DTRFLG 3113 3116# 3116 3127 3145 3157 3165
DWATC0 6676# 6767 6788 6848 6866 6876 6878 6886
DWATC1 6716 6722 6724 6734#
DWATC2 6753 6755 6762# 6796 6805 6812 6822 6836 6842
DWATC3 6758 6772 6792#
DWATC4 6783 6846#
DWATC5 6846 6850#
DWATC6 6781 6859#
DWATC7 6775 6870#
DWATC8 6785 6882#
DWATCG 6690 6715#
DWATCH 1982 6638#
DWATCQ 6673# 6787
DWATCX 6678 6680 6890#
DWCRAM 26 3607 3730 3921 3992# 4667 4710 4780 5783 5822 5887 6309 6334 7392
8291
DWORDL 8337# 8337 8344 8352 8366
DWORDR 8341# 8341 8358
DXCTID 2671 2680 2685 2689 2920# 6497
DZALU 1926 4224#
DZALU0 4234 4242 4248#
DZALU1 4276# 4297
DZALUM 4277 4281 4282 4327#
DZALUX 4294 4301#
DZCRAM 1922 3445#
DZCSR 1895 2963#
DZEBUF 1911 3335#
DZLOC0 4527 4535 4541#
DZLOC1 4569# 4587 SEQ 0477
DZLOCM 4570 4571 4619#
DZLOCS 1930 4517#
DZLOCX 4583 4591#
DZRAR 1915 3400#
EADDR 90#
ECODE 8349 8363 8414 8461#
ECOMP 6983
EDEBUG 19 129# 129 194 207 357 370 1242 6692
ENABLE 93# 217
ENATST 863# 863 867# 867 894 896
ENDFIX 10
ENDTIM 11708# 11708 11733
EPLIH 4985 4998 5095#
ERESET 89# 2978
ERFLG 345 647 1606 7045 7068 8105 8725 11098 11115 11172 11333 11341 11349 11354
11358 11424 11492 11523 11543 11552 11601 11632 11652 11664 11673 11735 11757 11773
11812 11813 12212 12221
ERRPC 7046
EXE 12247#
EXEN 12241#
FFF 94# 9605
FFLAG 6046 6089 6112 6147 8078 8178 8188 8222 8247 8254 8265 8326 8380 8450#
FGETW 100# 8200
FINCMD 100# 400 1652 3664
FINECH 32 148# 148 393 394 976 978 1645 1646
FINPUT 32 147# 147 392 399 1012 1140 1644 1651 3663
FIOFF 100# 336 452 467 689 698 801 872 887 994 1230 1640 1666 1685
2045 2220 2226 2290 2381 2405 2414 2585 2600 2604 2629 2645 2649 2676
2707 2836 2843 2952 3044 3047 3072 3075 3138 3141 3295 3298 3318 3345
3350 3386 3490 3495 3499 3547 3566 3574 3582 3590 3598 3637 3693 3714
4073 4078 4082 4151 4156 4166 4251 4256 4260 4370 4375 4379 4449 4455
4463 4544 4549 4553 4636 4648 4679 4691 4751 4756 4760 4824 4829 4833
4885 4890 4900 4992 5661 5667 5673 5709 5712 5748 5760 5795 5807 5863
5868 5872 5931 5936 5940 5991 5999 6003 6022 6030 6034 6184 6296 6324
6479 6486 6558 6563 6570 6577 6601 6606 6618 6623 7422 9422 9424 9452
9454 9464 9466
FLDLIS 3709 3842#
FLOADB 6047 6090 6113 6148 8079 8164#
FLOADC 6072 8094 8244#
FLODB0 8168 8176#
FLODB1 8200# 8213
FLODB2 8201 8217#
FLODBE 8179 8187 8232#
FLODBX 8171 8231#
FLODC0 8281# 8293
FLODCX 8251 8255 8264 8300#
FMTTYP 152# 152
FNAME 2473 2475 2481 2484 8113 8116 8122 8125 8131 8134 8140 8143 8167 8170
8176 8181 8184 8190 8193 8217 8443#
FOARG 100#
FORPNT 100# 169 269 1252
FORSEL 2526 2531 2913# 6493
FUERR 6079 6102 8402# SEQ 0478
FUERR0 8418# 8428
FUNCT 641 1266 1267 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303
1304
FVERF0 8332# 8372
FVERF1 8347 8356 8361 8370 8371#
FVERFC 6078 6101 8097 8323#
FVERFE 8328 8379 8391#
GETLOG 93# 6360
GETPPN 11049 11159 11204#
GETQU0 9737 9752#
GETQUE 9633 9731#
GETQUX 9748 9763#
HAVIPA 94# 12254
ICRC 9142 9241#
ICRC0 9299# 9314
ICRC1 9295 9318# 9349
ICRCX 9299 9307 9313 9318 9342 9348 9353#
ICRCY 9252 9359#
ICWA0 93# 5403
IDLE 6719
IDREC 7492 7695 10556 10581 10649 10663
IDREQ 10550 10575 10657
IGNFLG 32 2730 2732 2737 2739 2925# 6908
INHCRC 9087# 9087 9089 9244
INITPD 91# 736
INITPI 91# 237 378 6444
INSQU0 9653 9678#
INSQU1 9674 9705#
INSQUE 46 6575 6809 6839 7476 9619# 11491 11600 11811
INSQUX 9626 9629 9648 9713#
INTAPR 92# 6426
INTCON 92# 6423
INTCSR 92# 6429
INTEND 92# 1960
INTNUM 92# 1958 1959 1961 6388 6399 6402 7049
INTPC 92# 6413
INTTIM 92# 6416
INTTYP 92# 6404 6432
INTUSE 92# 6419
IPACLR 89# 2988 5368 7521 8718 8935 11329
IPASRT 90# 3042 3293
IPASST 90# 3136 5707
IPASTP 90# 3070
IPCB 8748 10879#
IPRIN0 6388# 6392
IPRINI 6390 6399#
IPRINT 42 6386#
IPRINX 6389 6393#
IREGR 9151 9410#
IREGR0 9414# 9423
IREGR1 9413 9428#
IREGRX 9425 9431#
IREGW 9152 9439# SEQ 0479
IREGW0 9443# 9453 9465
IREGW1 9442 9470#
IREGWX 9455 9467 9475#
ISTOP 89# 3036 3124 3315 3347 3364 3388 3403 3515 4653 4696 4765 4838 5697
5765 5812 5877 5945 6005 6052 6095 6298 6326 6891 7364 7384 8086 8512
8744 9987 11311
ITERAT 208
ITEXT 9134 9135 9179# 9243
ITEXT0 9182 9192#
ITEXT1 9191 9199 9203#
ITEXT2 9206 9209#
ITEXT3 9217 9219#
ITRCNT 209
LARG2 4169 4199 4466# 4466 4492
LASARG 102# 2418 2786
LASENT 9554 9567# 9627 9652 9682 9819 9843 9861 9885 10010
LAST 8734
LBSNT 10558 10583 10665
LDCRAM 88# 4004 4011 8555 8568
LDCSR 88# 2955 2967 3366 3390 3405 4118 4198 4202 4291 4415 4417 4491 4495
4578 4580 4941 4943 5047 5049 5126 5129 5341 5343 5401 5423 5479 5481
5509 5511 6054 6097 6218 6220 6818 6964 6979 7009 7481 8088 8948 8984
8990 9964 11502 11611 11700
LDEBUF 88# 3353
LDEBUG 17 127# 127 192 203 355 366 1616 1626 8090 8713
LDRAR 88# 3392 3406 3997 4009 4025 4032 4116 4196 4289 4413 4489 4576 4939
5045 5124 5339 5399 5477 5507 6216 8544 8565 8944 8982
LENTRY 9541 9542 9547 9564# 9636 9705 9731 9736 9741 9752 9754 9756 9758 9763
9783 9792 9798 9802 9804 10012
LINK 639 1265 1267 1283 1284 1285 1286 1287 1288 1289 1290 1292 1293 1294
1302
LINKP 10006 10009 10143 10146 10707 10710 10777# 10853 10856
LINKPX 10784 10787#
LOCDON 95# 12255
LOCFR 4342 4382 4457 4477 4517 4556 4625#
LOCPHY 95# 216
LOCTO 4344 4384 4458 4519 4558 4626#
LOGPNT 93# 6361
LOOP 640 1297 1298 1299 1300 1301 1304
LOOPGM 253
LOOPTS 1030
MAPNEW 130
MAXPOR 7431 7468 7541 7570
MAXTST 434# 439 449 662 684 686 693 695 882 884 911 1087 1171 5994
5996 6025 6027
MBCN 214 347 1173 1244 1609 5402 6694 12256
MCNF 10549 10574 10648 10656
MCNVER 9 11078 11191
MCPUS 138# 138
MDATRQ 10559 10584 10666
MDEBUG 15 125# 125 190 199 353 362 1614 1622 8106 8729
MDTSNT 10562 10587 10669
MFREE 8758 8764 8876 8902 10945# 10981 10989 SEQ 0480
MGEND 8757 10992#
MGSTAR 8755 8756 10979#
MLIST 6036 8666#
MLIST0 8670# 8694
MLISTX 8672 8695#
MLNUM 27 6009 8501# 8501 8591
MLOAD0 8518# 8533 8535 8593
MLOAD1 8524 8539#
MLOAD2 8570 8576 8579 8591#
MLOADN 26 4112 4187 4283 4409 4482 4572 4932 5017 5117 5335 5393 5473 5503
5692 6212 8488# 8719 8978
MLOADR 8529 8534#
MLOADX 8520 8597#
MLOADY 26 6006 8490#
MONTYP 179
MPRUN 4117 4197 4290 4414 4490 4577 4940 5046 5125 5340 5400 5478 5508 6217
6961 6976 7004 7006 8945 8952 8983
MSG 8733
MSGSNT 10547 10572 10654
MULFLG 372# 372 1630 3950 3956 3984 4127 4135 4424 4433 5532 5535 7173
MULINI 373# 373 1631 3966 5544
MVCOM 8492 8495 8500#
MVFLAG 8491# 8491 8494 8554 8556 8567 8569
MVNUM 8500# 8500 8577 8597 8615 8619
MVPNT 26 8600 8615# 8734
MVPNT1 8626# 8647
MVPNTW 8632 8636 8642 8653#
MVPNTX 8644 8649#
MVREP 8488# 8488 8490 8599
MWBADR 8506 8507 8581 8605# 8626
MWBLAC 8585 8607# 8634 8639
MWBLCO 8582 8606# 8630 8638
MWBRAC 8508 8587 8609# 8635 8641
MWBRCO 8583 8608# 8631 8640
MWDQUE 3687 3864#
NCHAR 6659# 6659 6681 6682 6766 6768 6769
NEWENT 9635# 9635 9657 9671 9678 9688 9799 9824 9831 9839 9849 9866 9873 9881
9891 9924 9930
NPACKR 6663# 6663 6706 6742
NPACKS 6662# 6662 6702 6820
NRESP 11709 11742 11827#
NUMENT 48 6803 6813 9521 9552 9568#
OP 6481 6512 6514 6515 6528 6793 6794 6907 6911 7473 7592 7594 7596 7601
7604 7605 7664 7676 7679 7685 7687 7689 7694 7695 7698 7699 7809 9119
9130 9205 9221 9272 9282 9306 9312 9341 9347 10058 10498 10507 10514 10616
11477 11586 11722 11798 12049 12097 12108
OPCPN0 10504# 10508
OPCPNE 10506 10513#
OPCPNT 47 6827 6921 10059 10496# 10723 11948 12050 12098 12109
OPCPNX 10512 10517#
OPRSEL 243 325 331 334 384 478 1132 1233 1240
P 1059 1062 1063 1064 1601 5498 5500 6991 8099 8107 8231 8249 8250 8263
8302 8303 8390 8497 8598 8722 8730 8953 9004 9535 9603 9646 9712 9733 SEQ 0481
9791 10621 11359 11360 11361 11375 11394 11412 11425 11438 11553 11554 11555 11674
11675 11676 11774 11775 11776 11814 11815 11816
P1 12266#
P3 12264#
P5 12262#
P7 12260#
PACK1 10068 10156#
PACK13 10090 10179#
PACK15 10076 10245#
PACK33 10085 10273#
PACK36 10086 10288#
PACK37 10087 10307#
PACK5 10070 10168#
PACKET 49 5679 6568 6792 7592 7597 7617 7620 7626 7629 7632 7636 9095 9096
9097 9108 9114 9118 9130 9212 9219 9223 9225 9249 9263 9266 9274 9291
9293 9429 9430 9470 9472 9474 9641 10969# 11479 11588 11804
PACKG 10069 10071 10072 10073 10074 10075 10077 10078 10079 10080 10082 10083 10084 10088
10089 10091 10092 10093 10094 10095 10096 10097 10098 10099 10100 10101 10340#
PAG 5406
PAKOFF 7682# 7682 7758
PAKTYP 7683# 7683
PARFLG 27 2332 2334 2339 2341 2902# 4001 4665 4666 4668 4708 4709 4711 4778
4779 4781 5781 5782 5784 5820 5821 5823 5885 5886 5888 7385 7386 7395
8279 8280 8294
PASCNT 185 259 265 386
PASPNT 244 259#
PAT 2818 2819 2820 2828 2829 2839 2840 2841 2846 2847 2851 9210
PAT1 2819# 2819 2823# 2823 2828 2834 2839
PAT2 2820# 2820 2829 2832 2833 2851
PATCH 12189#
PATCH0 12188#
PATPNT 103# 2426 2846
PATSEL 2553 2555 2560 2914# 6495
PBUFF 638 1264 1266 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278
1279 1280 1281 1282 1291
PCB 56 6737 6739 6801 8748 8749 8828 8835 8841 8876 8902 9522 9523 9524
9525 9526 9527 9528 9628 9661 9662 9663 9664 9665 9666 9667 9694 9695
9696 9697 9698 9699 9700 9775 9779 9785 9801 9803 9807 9828 9829 9830
9834 9855 9856 9870 9871 9872 9876 9897 9898 9984 10002 10786 10803 10805
10807 10809 10812 10815 10818 10821 10824 10828 10830 10832 10835 10850 10852 10855
10884 10885 10887 10888 10890 10891 10893 10894 10896 10897 10913 10925# 10930 10931
10933 10934 10936 10937 10939 10940 10942 10943 10959
PCBBAS 10959#
PCBFLG 2445 2447 2452 2454 2910# 3031
PCBPI 8751 10960#
PCMD 1605# 1605 1673 1681
PDSABL 6961 7006
PENABL 6976
PFLAGS 10159 10171 10182 10248 10276 10291 10310 10343 10460#
PG 12261 12263 12267#
PGMNAM 20 109#
PHEAD 10156 10168 10179 10245 10273 10288 10307 10340 10700#
PI00RQ 6719 SEQ 0482
PK 6923 9982 9983 9984 9985 9988 9999 10001 10005 10008 10019 10046 10057 10122
10138 10142 10145 10188 10202 10211 10218 10225 10234 10251 10252 10255 10263 10293
10297 10312 10316 10356 10462 10685 10689 10706 10709 10725 10739 10742 10745 10756
PK15A 10253 10265#
PLIDAT 4903 4926 5084#
PLILNK 4892 4923 4980 4994 5004 5014 5022 5083#
PLINUM 5039# 5039 5051 5053
PLIREP 4912 4950 4979 5003 5061 5085#
PLOG 5324 5346 5390#
PLOG0 5413# 5421
PLOGM 5392 5433#
PMISC 10280 10347 10438#
PMISC0 10442# 10451
PMODE 38 210 371 1154 1629 9412 9441 12179#
PNTCA0 12140 12143#
PNTCAD 12120 12133#
PNTCRM 3977 6131 7101# 8688
PNTENB 168 344 1608
PNTHST 3158 3201 3239#
PNTPAK 11851 11947#
PNTRD 11850 11898#
PNTREG 11885 11901 11921#
PNTRS0 6909 6918#
PNTRS1 6925 6930#
PNTRSP 46 6744 6905#
PNTRSX 6914 6934#
PNTSTR 11848 11862#
PNTWA0 11978 11989#
PNTWAI 11852 11961#
PNTWAS 11982 11985 12002#
PNTWC0 12120# 12123
PNTWCM 11991 12093#
PNTWD 3946 6166 7186# 8423 8426
PNTWPK 11963 12046#
PNTWRT 11849 11879#
PNTWS0 12010# 12021
PNTWS1 12003 12025#
PNTWS2 12027# 12032
PNTWS3 12029 12037#
PORT 637 1261 1262 1263
PPAKC 55 10020 10021 10022 10023 10040#
PPAKC0 10057# 10126
PPAKCC 6929 10063#
PPAKCX 10104#
PPAKF 55 10025 10026 10135#
PPAKR 55 10024 10116#
PPCB 55 5276 6589 10799#
PPCB0 10841# 10860
PPCBD 55 6855 10837#
PPCBP 10845 10865#
PPORTO 10157 10169 10180 10246 10274 10289 10308 10341 10720#
PQUEU0 10016# 10027
PQUEUE 55 5284 6627 9980# SEQ 0483
PQUEUX 10018 10028#
PRSFLG 2355 2357 2362 2364 2903# 3133
PSTAT0 10367# 10378
PSTAT1 10360 10382#
PSTAT2 10384# 10389
PSTAT3 10386 10394#
PSTATS 10158 10170 10181 10247 10275 10290 10309 10342 10354#
PSTATX 10369 10392 10400#
PTEXT 10160 10249 10736#
PTEXT0 10758# 10766
PTEXTX 10743 10763 10767#
PTIME 99# 6727 6825 6853 6862 6919 7823 7883 7935
PVPAGI 131
PXCTID 10172 10183 10277 10344 10683#
Q 5283 5288 5289 6560 6561 6626 6629 6630 6797 6798 6802 6806 6807 6808
6829 6837 6838 6841 6907 6924 6934 7475 9528 9621 9624 9646 9667 9700
9713 9779 9780 9814 9906 9926 9927 9928 9932 9982 9998 10026 10051 11490
11599 11799 11810 11951
QARG1 6608# 6608 6621 6626 6629
QARG2 6609# 6609 6620# 6620 6630
QFDG1 8773 8774 8852 8884 8910 9942 10902 10948 10995# 10999
QFDG10 56 8784 8787 8788 8860 8891 8917 9947 11013 11016# 11020
QFDG11 8786 8789 8790 8868 8891 8917 9947 11016 11019# 11023
QFDG12 8788 8791 8868 8891 8917 9947 10903 10949 11019 11022#
QFDG2 8772 8775 8776 8852 8884 8910 9942 10995 10998# 11002
QFDG3 8774 8777 8778 8852 8884 8910 9942 10998 11001# 11005
QFDG4 8776 8779 8780 8852 8891 8917 9942 11001 11004# 11008
QFDG5 8778 8781 8782 8860 8891 8917 9942 11004 11007# 11011
QFDG6 8780 8783 8784 8860 8891 8917 9947 11007 11010# 11014
QFDG7 56 8782 8785 8786 8860 8891 8917 9947 11010 11013# 11017
QFMG1 8759 8760 8844 8884 8910 9938 10899 10945 10980# 10984
QFMG2 8758 8761 8762 8844 8884 8910 9938 10980 10983# 10987
QFMG3 8760 8763 8764 8844 8884 8910 9938 10983 10986# 10990
QFMG4 8762 8765 8844 8884 8910 9938 10900 10946 10986 10989#
RALUB 4046# 4046 4057 4069 4080 4084 4099 4129 4158 4180 4225 4236 4248 4258
4262 4276 4295 5264 5574 5632
RALUE 4048# 4048 4058 4065 4075 4086 4130 4160 4227 4237 4244 4253 4264 4296
5266 5575 5633
RANCNT 1079# 1079 1091 1097
RANDBS 1055
RANGEN 1052# 1088
RANNUM 1054# 1054 1057 1083
RDBF 5375 5468#
RDBUF1 5375# 5380
RDBUFS 5212 5219 5236 5243 5307 5310 5313 5316 5366#
RDBUFX 5382#
RDCNT 10539 10643
RDCRAM 88# 4026 4033 8557 8571
RDCSR 88# 219 2937 3052 5258 6717 6814 6859 6966 6981 7002 7011 7478 8950
9488 9959 11499 11608 11697
RDEBUF 88# 3323 4119 4418 5050 5482 8991
RDLAR 88# 3367 6221
RDMIC 8977 9016# SEQ 0484
RDNODE 47 2602 2647 7420 8967# 11332
RDNODX 8979 9006#
RDREG 10540 10644 11586 11645
REGRD 7604 7699 10568 10593 10675
REGWR 7605 7698 10569 10594 10676
REL 94# 12244
RELIAB 1162
REQ1 94# 12242
REQ2 94# 12243
REQDT0 10528 10632
REQDT1 10529 10633
REQDT2 10530 10634
REQID 7473 7601 7694 10525 10629
REQMDT 10532 10636
RESCR0 7389# 7394
RESCRM 4138 4215 4302 4436 4508 4592 4956 5068 5134 5345 5428 5486 5513 5727
6252 7382# 9000
RESQAV 6720 6763 6817 9490 9963
RETDAT 10534 10638
RFROM 3462 3509 3538#
RLOCB 4343# 4343 4354 4366 4377 4381 4392 4396 4402 4406 4426 4518 4529 4541
4551 4555 4569 4584 5295 5581 5640
RLOCE 4345# 4345 4355 4362 4372 4383 4428 4520 4530 4537 4546 4557 4586 5297
5582 5641
RQAFLG 84# 6669 6736 6740 9787
RSPFLG 2499 2501 2506 2508 2912# 6491
RSPONS 49 6907 6910 6923 7491 7494 7496 7501 7503 7506 7508 7679 7690 7713
7719 7744 7753 7759 7762 7769 7772 7775 7778 9793 9794 10970# 11531 11535
11640 11644 11660 11716 11720 11743 11745
RSPOPC 10503 10546#
RSPPAK 6928 10043# 10043 10119
RSTART 1201
RSTSNT 10551 10576 10658
RTMDAT 10563 10588 10651 10670
RTO 3460 3511 3537#
RUNTME 99# 271 1081 1254 6665 6687 6699 6750 6883 11507 11521 11616 11630 11704
11730
RUPDA1 7715 7736#
RUPDA2 7706 7743#
RUPDA3 7755 7758#
RUPDAT 31 7674# 9902
RUPDAX 7732 7738 7809#
RWAIT 46 7485 9485# 11513 11622 11710
RWAIT0 9488# 9493
RWAITX 9491 9494#
S1 11058# 12196
S2 11167# 12197
SAVCMD 1601# 1601
SAVCR0 7367# 7372
SAVCRL 7365 7387 7402#
SAVCRM 4094 4176 4272 4391 4473 4565 4919 5010 5112 5333 5391 5469 5497 5690
6202 7362# 8973
SAVFLD 3700# 3700 3701 3708 SEQ 0485
SAVHST 3143 3152 3260#
SAVNUM 1153# 1153 1158
SAVRAR 8543# 8543 8563
SB 119#
SCOOFF 103# 7048
SCOPE1 103#
SCOSW 101#
SDATA 90# 3002 3041 3083 3134 3183 3275 3303 5704 7051
SDEBUG 16 126# 126 191 201 354 364 1615 1624 11312 11326 11369 11384 11403
11421 11433 11460 11564 11687 11783
SELLAR 3365 6219
SEN11L 11114 11150 11160 11165 11194#
SENT10 11050 11052 11056 11069# 12199
SENT11 11111 11112 11129 11138 11155 11164 11181# 12207 12216
SETCKT 10537 10641
SETCNT 10538 10642
SETDS0 7011# 7016
SETDSA 31 6890 7000# 7520 11310
SETDSX 7005 7012 7014 7017#
SETEBU 89# 3316 3348
SETEN0 6966# 6971
SETEN1 6969 6976#
SETEN2 6981# 6986
SETEN3 6984 6991#
SETENA 31 6652 6956# 7456 11353
SETENE 6967 6972 6982 6992#
SETLAR 89#
SETVEC 91# 238 379 737 6445
SHUTRQ 9784 9806 9958#
SHUTRX 9960 9965#
SINCYC 4117 4290
SLAST 90# 3039 3177 3269
SLDATA 3135# 3135 3273
SNARKF 94#
SNDDAT 10533 10637
SNDDG 6911 7596 7689 10523 10627
SNDLB 7594 7687 9205 10531 10635
SNDMDT 10535 10639
SNDMSG 10524 10628
SNDRST 10526 10630
SNDSTR 9119 10527 10631
SNEXT 90# 3000 3038 3079 3180 3271 5706 5720 7050
SPCHK1 11049# 12204
SPCHK2 11111# 12213 12224
SPEAR1 172# 172 11036 11062
SPEAR2 38 173# 173 11093 11174
SPORT 32 2632 2651 2917# 8994 8995 12269
SPRE1X 11045 11063#
SPRE2A 11094 11103#
SPRE2B 11139# 11142
SPRE2C 11115 11154#
SPRE2X 11107 11175#
SPREP1 233 11033# SEQ 0486
SPREP2 38 648 11086#
SREPO0 7830# 7849 7877
SREPO1 7832 7881#
SREPO2 7890# 7905 7924 7929
SREPO3 7892 7933#
SREPO4 7942# 7957 7976 7981
SREPOR 31 935 7817#
SREPOX 7944 7985#
SRTDDT 735 12218 12258 12276
SSADRL 3228# 3240 3270
SSADRN 3229# 3243 3272
SSCSRL 3230# 3274
SSCSRN 3221 3231# 3246 3276
SSLOC 3156 3199 3219 3220 3226# 3262 3264 3266
SSNUM 3207 3227# 3249 3263 3268
STARCA 60 7746 7895 8035#
STARCB 60 7748 7947 8041#
START 22 120# 229 753 1202 12250
STARTA 22 237# 251 254
STARTB 241 249 255#
STASNT 60 7612 7712 7835 8029#
STATAB 10383 10406# 12026
STATB 7995 7996 8028#
STATE 7997 8047#
STCLOK 99# 184
STEST 12195#
STEST0 12201 12206#
STEST1 12209 12215#
STESTP 12200 12208 12217 12226# 12231
STIME 6668# 6668 6689 6709 6711 6885
STRSNT 10552 10577 10659
STRT1 157 177#
SUPDA0 7611#
SUPDAT 31 7590# 9708
SWCHPT 101#
SWCOM 101# 964 6375
SWITT 101# 195 242 245 252 324 330 358 477 1029 1131 1160 1200 1211
1232 1239 1618 7036 7084 7266 11043 11105
SWPTAB 163
SWRGT 101# 161
SWSTP 2003# 6374
SWSTT 599# 963
SZERO 171 763 7995#
T10M 78# 1317
T11M 78# 1318
T12M 78# 1319
T13M 78# 1320
T14M 78# 1321
T15M 78# 1322
T16M 79# 1323
T17M 79# 1324
T20M 79# 1325
T21M 79# 1326 SEQ 0487
T22M 79# 1327
T23M 79# 1328
T24M 79# 1329
T25M 79# 1330
T26M 79# 1331
T27M 80# 1332
T2M 78# 1311
T30M 80# 1333
T31M 80# 1334
T32M 80# 1335
T33M 80# 1336
T34M 80# 1337
T35M 80# 1338
T36M 80# 1339
T37M 80# 1340
T3M 78# 1312
T40M 80# 1341
T4M 78# 1313
T5M 78# 1314
TAKFIL 38 984 990 995 998 1001 1006 1009 1017#
TBYTE 49 50 6502 9074# 9181 9189 9192 9220 9257 11444
TCMD 65 11435 11436 11479 11480 11588 11589 11804 11805 11824# 11962
TCSR 65 11823#
TDENA 895 897 915 1301 7042 7052
TDPORT 50 6500 7440 7467 9073# 9112 11339 11797
TERMES 11342 11836# 11869 11872
TERROR 11328 11470 11576 11696 11795 11833# 11847
TERTYP 11335 11344 11351 11356 11471 11494 11525 11545 11577 11603 11634 11654 11666 11737
11759 11765 11835# 11862 11886 11902 11967
TEXCAC 11297 11402#
TEXCAL 11296 11383#
TEXEC 64 11285#
TEXERR 11294 11305 11309#
TEXEX1 11289 11310#
TEXEXI 11304 11421#
TEXEXX 11317# 11362 11376 11395 11415 11426 11452 11556 11677 11777 11817
TEXINI 11303 11433#
TEXJRS 11302 11368#
TEXPAK 11299 11783#
TEXRD 11301 11564#
TEXRD0 11626# 11636 11643 11646
TEXRD1 11628 11640#
TEXRDX 11604 11635 11659 11663 11670# 11672
TEXST0 11331 11338#
TEXST1 11336 11345 11352 11357 11358#
TEXSTR 11295 11326#
TEXWA0 11711# 11719 11723 11734
TEXWA1 11712 11728#
TEXWA2 11724 11742#
TEXWA3 11752# 11755
TEXWAI 11298 11683#
TEXWAX 11738 11762 11770# 11772
TEXWR0 11517# 11527 11534 11537 SEQ 0488
TEXWR1 11519 11531#
TEXWRT 11300 11460#
TEXWRX 11495 11526 11549# 11551
TFLER1 8080 8112#
TFLER2 8080 8121#
TFLER3 8104 8130#
TFLER4 8104 8139#
TFLOAD 26 7444 8078# 11340
TFLOAE 8095 8098 8104#
TFLOAX 8084 8091 8096 8099#
TFMFLG 50 6494 7435 9068# 9102 9185 9193 9214 11439
TIDLE 47 6467 6646 7451 8933# 11348
TIDLEE 8951 8954#
TLERR 8726 8733#
TLOAD 26 8713#
TLOADE 8720 8725#
TLOADX 8714 8716 8722#
TMP1 865# 865 869# 869 877 2467# 2467 2474
TPAT 49 51 6505 9076# 9210 11446
TPCB 47 6456 8742# 11347
TPCB0 8748#
TPCB1 8796# 8803
TPCB2 8798 8808#
TPCB3 8809# 8817
TPCBX 8811 8821#
TPTFLG 50 6496 7437 9070# 9104 11441
TRACE 31 7031#
TRACET 7037
TREGCF 9081# 11451 11581 11658
TREGD 51 9078# 9469 9473 11448 11475 11880
TREGDA 9080# 11450 11582 11661 11913
TREGDC 9079# 11449 11584 11662 11910
TREGN 51 9077# 9427 9428 9457 9471 11447 11473 11579 11883 11899 11921
TRESPA 65 11743 11744 11753 11826# 11990
TRESPC 65 11752 11825# 11989
TREX 7038 7045#
TREXX 7053 7058#
TRSFLG 50 6492 7436 9069# 9106 11440 11476 11585
TSLOAD 38 348# 348 5253 8082 8093 8228 8230 8715 8721
TST1 69# 1261
TST10 69# 1268
TST11 70# 1269
TST12 70# 1270
TST13 70# 1271
TST14 70# 1272
TST15 70# 1273
TST16 70# 1274
TST17 70# 1275
TST2 69# 1262
TST20 70# 1276
TST21 71# 1277
TST22 71# 1278
TST23 71# 1279 SEQ 0489
TST24 71# 1280
TST25 71# 1281
TST26 71# 1282
TST27 71# 1283
TST3 69# 1263
TST30 71# 1284
TST31 72# 1285
TST32 72# 1286
TST33 72# 1287
TST34 72# 1288
TST35 72# 1289
TST36 72# 1290
TST37 72# 1291
TST4 69# 1264
TST40 72# 1292
TST41 73# 1293
TST42 73# 1294
TST43 73# 1295
TST44 73# 1296
TST45 73# 1297
TST46 73# 1298
TST47 73# 1299
TST5 69# 1265
TST50 73# 1300
TST51 74# 1301
TST52 74# 1302
TST53 74# 1303
TST54 74# 1304
TST6 69# 1266
TST7 69# 1267
TSTAL0 1224 1229#
TSTALT 1026 1109 1222#
TSTATA 65 11746 11831# 11984
TSTATC 65 11830# 11981
TSTCNT 1169 1196 12177#
TSTCON 580 772# 1967
TSTCPN 581 779# 1968
TSTD0 1117 1128#
TSTD1 1137# 1145
TSTD2 1139 1142 1148#
TSTD3 1045 1090 1133 1152#
TSTD4 1158# 1217
TSTD5 1168# 1204
TSTD6 1173# 1197
TSTD8 1198#
TSTD9 1172 1208#
TSTDDT 592 731# 1885
TSTDEB 590 1598#
TSTDIA 591 720# 1234
TSTDIS 643 1109#
TSTDL0 910# 916 925
TSTDS0 877# 899
TSTDSA 584 863# SEQ 0490
TSTDSL 585 905#
TSTEBF 4117 4416 5048 5480 8989
TSTEN0 866 870#
TSTENA 583 867#
TSTEND 36 7067#
TSTEOP 1210 1239#
TSTEXE 570 571 572 573 574 575 636#
TSTFLG 37 1175 1183 12170#
TSTHL0 805# 809
TSTHLC 798 812#
TSTHLL 805 818#
TSTHLP 594 789#
TSTHLT 593 745#
TSTL1 660# 660 661 672 683 703 707
TSTL2 663# 663 673 679 691 708
TSTLI0 670 677 683#
TSTLI1 703# 711
TSTLIS 586 659#
TSTLIX 709 712#
TSTMAX 434 1305#
TSTMIC 1309# 6001 6032
TSTMSK 37 642 1181 12171#
TSTMUL 1035 1078 1114 1182 1203 1209 12174#
TSTNAM 37 1357# 7089 11134
TSTNUM 37 442 704 889 908 910 922 1089 1115 1152 1159 1170 7034 7040
7067 7078 7088 11120 11123 11126 11133 12167# 12223
TSTOFF 37 7033 12175#
TSTPC 37 1176 1184 12169#
TSTPN0 7081 7084#
TSTPNT 36 706 7075#
TSTPNX 7086 7090#
TSTPRI 578 932# 1965
TSTRA0 1087# 1092
TSTRAA 1073 1096#
TSTRAN 576 1073#
TSTREL 1164 1168 12176#
TSTREP 37 1028 1075 1111 1208 1223 1226 1249 12172#
TSTREQ 1034 1043 1077 1112 1113 1123 1137 1148 1216 12173#
TSTRES 1128 1129 1130 1404# 7068
TSTSAV 417# 417 425 457
TSTSP0 1037 1044#
TSTSPC 443 1026#
TSTSSW 601 602 603 604 605 606 607 608 609 610 611 612 613 614
615 616 617 618 619 620 621 959#
TSTSUB 37 659 7047 7080 11468 11574 11701 12168#
TSTSWI 596 942#
TSTSWP 597 948#
TSTTA0 982 988 994#
TSTTAB 38 434 893 898 914 1174 1260# 7035
TSTTAK 588 978# 1888
TSTTAN 589 976# 1889
TSTZER 579 760# 1966
TTNBRF 1146 SEQ 0491
TTPNT 64 11845#
TTYYES 99#
TWADDR 11686 11692 11761 11763 11839#
TWORD 49 50 6503 9075# 9183 9190 9209 9211 9222 9250 9292 11445
TWTIME 11684 11689 11707 11838#
TXADDL 21 374# 374 1177 1632 9230 9231
TXALL 8733 8734
TXCTID 50 6498 7438 7439 9071# 9121 9123 11442 11443
TXTINH 7085 7267
UCODE 6117 6151 8199 8219 8278 8330 8456#
UDEBUG 14 124# 124 189 197 222 352 360 1613 1620 5405 6647 6653 6715
6835 7445 7452 7457 8799 8813 9658 9679 9685 9691 9743 9825 9840 9846
9852 9867 9882 9888 9894 11033 11086
ULEN 6116 6150 8221 8277 8329 8382 8407 8454#
UNAME 6058 6061 6064 8166 8169 8197 8218 8246 8252 8257 8260 8267 8270 8295
8325 8446#
USER 246 1198 1212 6962 6977 7007 8750 8946 9519 11035 11087
USRION 91# 218
UVERR 8331 8345 8359 8378 8402 8410 8415 8429 8460#
UVERSN 27 8198# 8198 8377 8386
WATFLG 6660# 6660 6754 6870 6871
WATTIM 6661# 6661 6752 6757
WRDERR 103#
WRPLI 5373 5494#
WRREG 10541 10645 11477 11536
XXW 404# 404 1657# 1657 3676# 3676
XXX 1100# 1100 1883# 1883 7060
$$TOGG 170 12249
$ARG2 4307# 4307 4313# 4313 4315# 4315 4317# 4317 4319# 4319 4321# 4321 4327# 4327
4597# 4597 4599# 4599 4605# 4605 4607# 4607 4609# 4609 4611# 4611 4613# 4613
4619# 4619 4961# 4961 4963# 4963 4965# 4965 4967# 4967 5073# 5073 5075# 5075
5077# 5077 5139# 5139 5141# 5141 5143# 5143 5146# 5146 5148# 5148 5150# 5150
5153# 5153 5155# 5155 5157# 5157 5160# 5160 5162# 5162 5164# 5164 5166# 5166
5169# 5169 5171# 5171 5173# 5173 5176# 5176 5178# 5178 5181# 5181 5183# 5183
5185# 5185 5187# 5187 5189# 5189 5192# 5192 5194# 5194 5196# 5196 5354# 5354
5356# 5356 5433# 5433 5435# 5435 5437# 5437 5439# 5439 5442# 5442 5444# 5444
5446# 5446 5448# 5448 5450# 5450 5452# 5452 5454# 5454 5456# 5456 5458# 5458
5460# 5460 5732# 5732 6278# 6278 6280# 6280 6282# 6282 6284# 6284 9016# 9016
9018# 9018 9020# 9020 9022# 9022 9027# 9027 9029# 9029 9031# 9031 9033# 9033
$B 4307# 4307 4313# 4313 4315# 4315 4317# 4317 4319# 4319 4321# 4321 4327# 4327
4597# 4597 4599# 4599 4605# 4605 4607# 4607 4609# 4609 4611# 4611 4613# 4613
4619# 4619 4961# 4961 4963# 4963 4965# 4965 4967# 4967 5073# 5073 5075# 5075
5077# 5077 5139# 5139 5141# 5141 5143# 5143 5146# 5146 5148# 5148 5150# 5150
5153# 5153 5155# 5155 5157# 5157 5160# 5160 5162# 5162 5164# 5164 5166# 5166
5169# 5169 5171# 5171 5173# 5173 5176# 5176 5178# 5178 5181# 5181 5183# 5183
5185# 5185 5187# 5187 5189# 5189 5192# 5192 5194# 5194 5196# 5196 5354# 5354
5356# 5356 5433# 5433 5435# 5435 5437# 5437 5439# 5439 5442# 5442 5444# 5444
5446# 5446 5448# 5448 5450# 5450 5452# 5452 5454# 5454 5456# 5456 5458# 5458
5460# 5460 5732# 5732 6278# 6278 6280# 6280 6282# 6282 6284# 6284 9016# 9016
9018# 9018 9020# 9020 9022# 9022 9027# 9027 9029# 9029 9031# 9031 9033# 9033
$CHR 4307# 4307 4313# 4313 4315# 4315 4317# 4317 4319# 4319 4321# 4321 4327# 4327
4597# 4597 4599# 4599 4605# 4605 4607# 4607 4609# 4609 4611# 4611 4613# 4613
4619# 4619 4961# 4961 4963# 4963 4965# 4965 4967# 4967 5073# 5073 5075# 5075 SEQ 0492
5077# 5077 5139# 5139 5141# 5141 5143# 5143 5146# 5146 5148# 5148 5150# 5150
5153# 5153 5155# 5155 5157# 5157 5160# 5160 5162# 5162 5164# 5164 5166# 5166
5169# 5169 5171# 5171 5173# 5173 5176# 5176 5178# 5178 5181# 5181 5183# 5183
5185# 5185 5187# 5187 5189# 5189 5192# 5192 5194# 5194 5196# 5196 5354# 5354
5356# 5356 5433# 5433 5435# 5435 5437# 5437 5439# 5439 5442# 5442 5444# 5444
5446# 5446 5448# 5448 5450# 5450 5452# 5452 5454# 5454 5456# 5456 5458# 5458
5460# 5460 5732# 5732 6278# 6278 6280# 6280 6282# 6282 6284# 6284 9016# 9016
9018# 9018 9020# 9020 9022# 9022 9027# 9027 9029# 9029 9031# 9031 9033# 9033
$GARG 4307# 4307 4313# 4313 4315# 4315 4317# 4317 4319# 4319 4321# 4321 4327# 4327
4597# 4597 4599# 4599 4605# 4605 4607# 4607 4609# 4609 4611# 4611 4613# 4613
4619# 4619 4961# 4961 4963# 4963 4965# 4965 4967# 4967 5073# 5073 5075# 5075
5077# 5077 5139# 5139 5141# 5141 5143# 5143 5146# 5146 5148# 5148 5150# 5150
5153# 5153 5155# 5155 5157# 5157 5160# 5160 5162# 5162 5164# 5164 5166# 5166
5169# 5169 5171# 5171 5173# 5173 5176# 5176 5178# 5178 5181# 5181 5183# 5183
5185# 5185 5187# 5187 5189# 5189 5192# 5192 5194# 5194 5196# 5196 5354# 5354
5356# 5356 5433# 5433 5435# 5435 5437# 5437 5439# 5439 5442# 5442 5444# 5444
5446# 5446 5448# 5448 5450# 5450 5452# 5452 5454# 5454 5456# 5456 5458# 5458
5460# 5460 5732# 5732 6278# 6278 6280# 6280 6282# 6282 6284# 6284 9016# 9016
9018# 9018 9020# 9020 9022# 9022 9027# 9027 9029# 9029 9031# 9031 9033# 9033
$ONETM 119 137 154 156 12253
$TTCHR 407 413 419 1660 1669 1675 3645 3659 3679 3696 3724
$TWCNT 405 1658 3677
%ADDR 4307# 4307 4313# 4313 4315 4315# 4317 4317# 4319 4319# 4321 4321# 4327# 4327
4597# 4597 4599 4599# 4605# 4605 4607 4607# 4609 4609# 4611 4611# 4613 4613#
4619# 4619 4961# 4961 4963 4963# 4965 4965# 4967 4967# 5073# 5073 5075 5075#
5077 5077# 5139# 5139 5141 5141# 5143 5143# 5146 5146# 5148 5148# 5150 5150#
5153 5153# 5155 5155# 5157 5157# 5160 5160# 5162 5162# 5164 5164# 5166 5166#
5169 5169# 5171 5171# 5173 5173# 5176 5176# 5178 5178# 5181 5181# 5183 5183#
5185 5185# 5187 5187# 5189 5189# 5192 5192# 5194 5194# 5196 5196# 5354# 5354
5356 5356# 5433# 5433 5435 5435# 5437 5437# 5439 5439# 5442 5442# 5444 5444#
5446 5446# 5448 5448# 5450 5450# 5452 5452# 5454 5454# 5456 5456# 5458 5458#
5460 5460# 5732# 5732 6278# 6278 6280 6280# 6282 6282# 6284 6284# 9016# 9016
9018 9018# 9020 9020# 9022 9022# 9027 9027# 9029 9029# 9031 9031# 9033 9033#
%ML 4307# 4307 4313# 4313 4315# 4315 4317# 4317 4319# 4319 4321# 4321 4327# 4327
4597# 4597 4599# 4599 4605# 4605 4607# 4607 4609# 4609 4611# 4611 4613# 4613
4619# 4619 4961# 4961 4963# 4963 4965# 4965 4967# 4967 5073# 5073 5075# 5075
5077# 5077 5139# 5139 5141# 5141 5143# 5143 5146# 5146 5148# 5148 5150# 5150
5153# 5153 5155# 5155 5157# 5157 5160# 5160 5162# 5162 5164# 5164 5166# 5166
5169# 5169 5171# 5171 5173# 5173 5176# 5176 5178# 5178 5181# 5181 5183# 5183
5185# 5185 5187# 5187 5189# 5189 5192# 5192 5194# 5194 5196# 5196 5354# 5354
5356# 5356 5433# 5433 5435# 5435 5437# 5437 5439# 5439 5442# 5442 5444# 5444
5446# 5446 5448# 5448 5450# 5450 5452# 5452 5454# 5454 5456# 5456 5458# 5458
5460# 5460 5732# 5732 6278# 6278 6280# 6280 6282# 6282 6284# 6284 9016# 9016
9018# 9018 9020# 9020 9022# 9022 9027# 9027 9029# 9029 9031# 9031 9033# 9033
%MR 4307# 4307 4313# 4313 4315# 4315 4317# 4317 4319# 4319 4321# 4321 4327# 4327
4597# 4597 4599# 4599 4605# 4605 4607# 4607 4609# 4609 4611# 4611 4613# 4613
4619# 4619 4961# 4961 4963# 4963 4965# 4965 4967# 4967 5073# 5073 5075# 5075
5077# 5077 5139# 5139 5141# 5141 5143# 5143 5146# 5146 5148# 5148 5150# 5150
5153# 5153 5155# 5155 5157# 5157 5160# 5160 5162# 5162 5164# 5164 5166# 5166
5169# 5169 5171# 5171 5173# 5173 5176# 5176 5178# 5178 5181# 5181 5183# 5183
5185# 5185 5187# 5187 5189# 5189 5192# 5192 5194# 5194 5196# 5196 5354# 5354
5356# 5356 5433# 5433 5435# 5435 5437# 5437 5439# 5439 5442# 5442 5444# 5444
5446# 5446 5448# 5448 5450# 5450 5452# 5452 5454# 5454 5456# 5456 5458# 5458 SEQ 0493
5460# 5460 5732# 5732 6278# 6278 6280# 6280 6282# 6282 6284# 6284 9016# 9016
9018# 9018 9020# 9020 9022# 9022 9027# 9027 9029# 9029 9031# 9031 9033# 9033
.CGOT 102# 962 6373
.CLOSE 99# 749
.COMM 102# 427 459 799 1683 2043 2224 2523 2550 3710
.CONI 91#
.CONO 91#
.DARG 102# 1039 1119 2374 2700 2748 2768 3121 3195 5525 5658
.DATAI 91# 5416
.DATAO 91# 4200 4493 5411
.DBCMD 458 1682 1722#
.DBDIS 461 1687 1878# 2003
.HLCMD 2042 2056#
.INPNT 93# 1637 6765
.INWD1 93# 390 6762 6764
.ISWT 101# 945 1995
.JBSA 12252
.LA 5442 5452
.LADDR 4307 4313 4327 4597 4605 4619 4961 5073 5139 5354 5433 5732 6278 9016
.LAND 4327 4619 5160 5181 5183 9022 9027
.LB 5439 5450 5460
.LCCER 4315 4607 5435 5446 5454
.LCENA 4315 4607 5435 5446 5454 6280
.LCJP 4315 4607 5435 5446 5454 6280
.LCJPP 5141 5143
.LCJS 5150 5157 5166 5173 5176 5181 5183 5187
.LCONT 4319 4611 4963 4965 5075 5146 5148 5153 5155 5160 5162 5164 5169 5171
5178 5450 9018 9027 9029 9031
.LCRTN 5189 5196 5732
.LCRY 5460
.LD 4307 4313 4315 4317 4319 4321 4327 4597 4599 4605 4607 4609 4611 4613
4619 4961 4963 4965 4967 5073 5075 5077 5139 5141 5143 5146 5148 5150
5153 5155 5157 5160 5162 5164 5166 5169 5171 5173 5176 5178 5187 5189
5192 5194 5196 5439 5442 5446 5448 5450 5452 5454 5456 5460 5732 6278
6280 6282 6284 9016 9018 9022 9027 9029 9031
.LJ 4307 4313 4315 4317 4321 4327 4597 4599 4605 4607 4609 4613 4619 4961
4967 5073 5077 5139 5141 5143 5150 5157 5166 5173 5176 5181 5183 5185
5187 5192 5194 5354 5356 5433 5435 5437 5439 5442 5444 5446 5448 5452
5454 5456 5458 5460 6278 6280 6282 6284 9016 9020 9022 9033
.LJMAP 4307 4313 4317 4321 4327 4597 4599 4605 4609 4613 4619 4961 4967 5073
5077 5139 5185 5354 5356 5433 5437 5448 5456 5460 6278 6282 6284 9016
9033
.LLDCT 5192 5439 5444 5458 9020
.LLDLM 4613 4619 5178
.LMGC 4307 4319 4599 4611 4613 4961 4963 4965 5073 5075 5077 5146 5148 5150
5153 5155 5157 5164 5166 5169 5171 5173 5176 5178 5181 5183 5187 5189
5354 5439 5442 5444 5450 5452 5458 9016 9018 9020 9027 9029 9031
.LOENA 4307 4599 4613 4619 4963 5077 5148 5155 5164 5171 5178 5181 5183 5442
5452 9018 9031
.LOR 4307 4319 4597 4599 4611 4613 4961 4963 5075 5077 5146 5148 5153 5155
5164 5169 5171 5176 5178 5439 5442 5450 5452 9016 9018 9029 9031
.LPLUS 5460
.LRDLM 4597 SEQ 0494
.LRPCT 5194 5442 5452 9022
.LS0A 4307 4327 4599 4613 4619 4963 5077 5148 5155 5160 5162 5164 5171 5178
5181 5183 5442 5452 9018 9022 9031
.LS0B 5460 9027
.LSD0 4319 4597 4611 4961 5075 5146 5153 5169 5176 5439 5450 9016 9029
.LSELC 5354
.LSELE 4307 4319 4599 4611 5077 5439 5442 5444 5450 5452 5458 9031
.LSELM 4963 5075 5148 5155 5164 5171 5181 5183 5189 9018 9029
.LSELP 4965 5073 5150 5157 5166 5173 5176 5187 9020 9027
.LSKCN 4961 5146 5153 5169 9016
.LSWIT 101#
.LXNOR 5162
.MA 5442 5452
.MAND 4327 4619 5160 5181 5183 9022 9027
.MB 5439 5450 5460
.MCCER 4315 4607 5435 5446 5454
.MCENA 4315 4607 5435 5446 5454 6280
.MCJP 4315 4607 5435 5446 5454 6280
.MCJPP 5141 5143
.MCJS 5150 5157 5166 5173 5176 5181 5183 5187
.MCONT 4319 4611 4963 4965 5075 5146 5148 5153 5155 5160 5162 5164 5169 5171
5178 5450 9018 9027 9029 9031
.MCRTN 5189 5196 5732
.MCRY 5460
.MD 4307 4313 4315 4317 4319 4321 4327 4597 4599 4605 4607 4609 4611 4613
4619 4961 4963 4965 4967 5073 5075 5077 5139 5141 5143 5146 5148 5150
5153 5155 5157 5160 5162 5164 5166 5169 5171 5173 5176 5178 5187 5189
5192 5194 5196 5439 5442 5446 5448 5450 5452 5454 5456 5460 5732 6278
6280 6282 6284 9016 9018 9022 9027 9029 9031
.MJ 4307 4313 4315 4317 4321 4327 4597 4599 4605 4607 4609 4613 4619 4961
4967 5073 5077 5139 5141 5143 5150 5157 5166 5173 5176 5181 5183 5185
5187 5192 5194 5354 5356 5433 5435 5437 5439 5442 5444 5446 5448 5452
5454 5456 5458 5460 6278 6280 6282 6284 9016 9020 9022 9033
.MJMAP 4307 4313 4317 4321 4327 4597 4599 4605 4609 4613 4619 4961 4967 5073
5077 5139 5185 5354 5356 5433 5437 5448 5456 5460 6278 6282 6284 9016
9033
.MLDCT 5192 5439 5444 5458 9020
.MLDLM 4613 4619 5178
.MMGC 4307 4319 4599 4611 4613 4961 4963 4965 5073 5075 5077 5146 5148 5150
5153 5155 5157 5164 5166 5169 5171 5173 5176 5178 5181 5183 5187 5189
5354 5439 5442 5444 5450 5452 5458 9016 9018 9020 9027 9029 9031
.MOENA 4307 4599 4613 4619 4963 5077 5148 5155 5164 5171 5178 5181 5183 5442
5452 9018 9031
.MOR 4307 4319 4597 4599 4611 4613 4961 4963 5075 5077 5146 5148 5153 5155
5164 5169 5171 5176 5178 5439 5442 5450 5452 9016 9018 9029 9031
.MPLUS 5460
.MRDLM 4597
.MRPCT 5194 5442 5452 9022
.MS0A 4307 4327 4599 4613 4619 4963 5077 5148 5155 5160 5162 5164 5171 5178
5181 5183 5442 5452 9018 9022 9031
.MS0B 5460 9027
.MSD0 4319 4597 4611 4961 5075 5146 5153 5169 5176 5439 5450 9016 9029
.MSELC 5354 SEQ 0495
.MSELE 4307 4319 4599 4611 5077 5439 5442 5444 5450 5452 5458 9031
.MSELM 4963 5075 5148 5155 5164 5171 5181 5183 5189 9018 9029
.MSELP 4965 5073 5150 5157 5166 5173 5176 5187 9020 9027
.MSKCN 4961 5146 5153 5169 9016
.MXNOR 5162
.OARG 102# 668 675 878 2282 2307 2398 2411 2666 2673 2816 2826 2949 3025
3342 3383 3468 3478 3563 3571 3579 3587 3595 4053 4061 4148 4163 4232
4240 4350 4358 4446 4460 4525 4533 4642 4685 4730 4740 4803 4813 4882
4897 4908 4986 4999 5670 5754 5801 5842 5852 5910 5920 5988 6019 6181
6293 6321 6476 6555 6598 6612 6641 9421 9451 9463
.RA 5442 5452
.RAND 4327 4619 5160 5181 5183 9022 9027
.RB 5439 5450 5460
.RBERR 7904 7927 7956 7979 8023#
.RBRCV 7805 7901 7916 7953 7968 8020#
.RCCER 4315 4607 5435 5446 5454
.RCENA 4315 4607 5435 5446 5454 6280
.RCJP 4315 4607 5435 5446 5454 6280
.RCJPP 5141 5143
.RCJS 5150 5157 5166 5173 5176 5181 5183 5187
.RCONT 4319 4611 4963 4965 5075 5146 5148 5153 5155 5160 5162 5164 5169 5171
5178 5450 9018 9027 9029 9031
.RCRTN 5189 5196 5732
.RCRY 5460
.RD 4307 4313 4315 4317 4319 4321 4327 4597 4599 4605 4607 4609 4611 4613
4619 4961 4963 4965 4967 5073 5075 5077 5139 5141 5143 5146 5148 5150
5153 5155 5157 5160 5162 5164 5166 5169 5171 5173 5176 5178 5187 5189
5192 5194 5196 5439 5442 5446 5448 5450 5452 5454 5456 5460 5732 6278
6280 6282 6284 9016 9018 9022 9027 9029 9031
.RESET 100# 177
.RJ 4307 4313 4315 4317 4321 4327 4597 4599 4605 4607 4609 4613 4619 4961
4967 5073 5077 5139 5141 5143 5150 5157 5166 5173 5176 5181 5183 5185
5187 5192 5194 5354 5356 5433 5435 5437 5439 5442 5444 5446 5448 5452
5454 5456 5458 5460 6278 6280 6282 6284 9016 9020 9022 9033
.RJMAP 4307 4313 4317 4321 4327 4597 4599 4605 4609 4613 4619 4961 4967 5073
5077 5139 5185 5354 5356 5433 5437 5448 5456 5460 6278 6282 6284 9016
9033
.RLDCT 5192 5439 5444 5458 9020
.RLDLM 4613 4619 5178
.RMGC 4307 4319 4599 4611 4613 4961 4963 4965 5073 5075 5077 5146 5148 5150
5153 5155 5157 5164 5166 5169 5171 5173 5176 5178 5181 5183 5187 5189
5354 5439 5442 5444 5450 5452 5458 9016 9018 9020 9027 9029 9031
.ROENA 4307 4599 4613 4619 4963 5077 5148 5155 5164 5171 5178 5181 5183 5442
5452 9018 9031
.ROR 4307 4319 4597 4599 4611 4613 4961 4963 5075 5077 5146 5148 5153 5155
5164 5169 5171 5176 5178 5439 5442 5450 5452 9016 9018 9029 9031
.RPERR 7903 7925 7955 7977 8022#
.RPLUS 5460
.RPRCV 7752 7900 7914 7952 7966 8019#
.RRDLM 4597
.RRERR 7757 7902 7918 7954 7970 8021#
.RREXP 60 7919 7921 7971 7973 8024#
.RRPCT 5194 5442 5452 9022 SEQ 0496
.RS0A 4307 4327 4599 4613 4619 4963 5077 5148 5155 5160 5162 5164 5171 5178
5181 5183 5442 5452 9018 9022 9031
.RS0B 5460 9027
.RSD0 4319 4597 4611 4961 5075 5146 5153 5169 5176 5439 5450 9016 9029
.RSELC 5354
.RSELE 4307 4319 4599 4611 5077 5439 5442 5444 5450 5452 5458 9031
.RSELM 4963 5075 5148 5155 5164 5171 5181 5183 5189 9018 9029
.RSELP 4965 5073 5150 5157 5166 5173 5176 5187 9020 9027
.RSKCN 4961 5146 5153 5169 9016
.RSWIT 101# 162
.RXNOR 5162
.SAACK 7721 7842 7862 8008#
.SANAK 7723 7843 7864 8009#
.SANSP 7725 7844 7865 8010#
.SARG 102# 792 980 986 2036 2217 2327 2350 2440 2463 2469 2494 2518 2545
2576 2620 2725
.SBACK 7727 7845 7867 8011#
.SBNAK 7729 7846 7869 8012#
.SBNSP 7731 7847 7870 8013#
.SBSNT 7663 7841 7860 8007#
.SPSNT 7613 7840 7858 8006#
.SRERR 7737 7848 7872 8014#
.SREXP 60 7873 7875 8015#
.STCMD 2223 2231#
.STDIS 2228 2254#
.SWCHP 101# 951 2000
ALTCHK 404 1145 1657 3676
CALC 4307 4313 4315 4317 4319 4321 4327 4597 4599 4605 4607 4609 4611 4613 SEQ 0497
4619 4961 4963 4965 4967 5073 5075 5077 5139 5141 5143 5146 5148 5150
5153 5155 5157 5160 5162 5164 5166 5169 5171 5173 5176 5178 5181 5183
5185 5187 5189 5192 5194 5196 5354 5356 5433 5435 5437 5439 5442 5444
5446 5448 5450 5452 5454 5456 5458 5460 5732 6278 6280 6282 6284 9016
9018 9020 9022 9027 9029 9031 9033
CONCAT 4307 4313 4315 4317 4319 4321 4327 4597 4599 4605 4607 4609 4611 4613
4619 4961 4963 4965 4967 5073 5075 5077 5139 5141 5143 5146 5148 5150
5153 5155 5157 5160 5162 5164 5166 5169 5171 5173 5176 5178 5181 5183
5185 5187 5189 5192 5194 5196 5354 5356 5433 5435 5437 5439 5442 5444
5446 5448 5450 5452 5454 5456 5458 5460 5732 6278 6280 6282 6284 9016
9018 9020 9022 9027 9029 9031 9033
DELAY 5127 5419 6970 6985 7015 8949 8988 9492 9532
DISMS 9520
ENDUUO 250
EOPUUO 255
FIELD 4307 4313 4315 4317 4319 4321 4327 4597 4599 4605 4607 4609 4611 4613
4619 4961 4963 4965 4967 5073 5075 5077 5139 5141 5143 5146 5148 5150
5153 5155 5157 5160 5162 5164 5166 5169 5171 5173 5176 5178 5181 5183
5185 5187 5189 5192 5194 5196 5354 5356 5433 5435 5437 5439 5442 5444
5446 5448 5450 5452 5454 5456 5458 5460 5732 6278 6280 6282 6284 9016
9018 9020 9022 9027 9029 9031 9033
FMSG 397 1225 1228 1649 3559 3743 3744 3745 3746 3747 3748 3749 3750 3751
3752 3753 3754 3755 3756 3757 3758 3759 3760 6529 6530 6531 6532 6533
6534 6535 6536 6537 6538 6539 6540 6541 6542 6543 6544 6545 6546 6547
8112 8118 8130 8136
FMSGC 448 694 883 997 1005 1096 1143 1222 3551 5995 6026 8180 9416 9445
9929
FMSGCD 225 326 466 667 674 685 720 731 734 745 760 772 779 800
864 868 871 905 932 942 948 959 979 985 1038 1118 1598 1665
1684 1880 1955 1992 1997 2044 2219 2225 2281 2289 2306 2326 2349 2373
2380 2397 2404 2410 2413 2420 2439 2462 2468 2493 2517 2524 2544 2551
2575 2584 2619 2628 2665 2672 2675 2699 2706 2724 2747 2767 2788 2815
2825 2835 2842 2860 2934 2948 2951 2963 2975 2985 2996 3024 3043 3046
3051 3067 3071 3074 3082 3112 3117 3137 3140 3194 3216 3290 3294 3297
3302 3312 3317 3335 3341 3344 3349 3361 3382 3385 3400 3467 3477 3488
3494 3498 3562 3565 3570 3573 3578 3581 3586 3589 3594 3597 3690 3711
3864 3865 3866 3867 3880 3881 3882 3883 3902 3909 3910 3911 4052 4060
4071 4077 4081 4147 4150 4155 4162 4165 4231 4239 4250 4255 4259 4349
4357 4368 4374 4378 4445 4448 4454 4459 4462 4524 4532 4543 4548 4552
4635 4641 4647 4678 4684 4690 4729 4739 4750 4755 4759 4802 4812 4823
4828 4832 4884 4889 4899 4991 5089 5095 5105 5204 5228 5524 5621 5657
5660 5666 5669 5672 5686 5708 5711 5747 5753 5759 5794 5800 5806 5841
5851 5862 5867 5871 5909 5919 5930 5935 5939 5987 5990 6002 6018 6021
6033 6043 6086 6109 6144 6180 6183 6195 6292 6295 6320 6323 6345 6357
6369 6383 6441 6453 6464 6468 6478 6485 6511 6554 6557 6562 6569 6576
6586 6597 6600 6605 6611 6617 6622 6640 6649 6655 6943 7454 7459 9417
9446 9458
FMSGD 789 1003 1011 1099 1229 2031 2212 3643 3868 3872 3876 3884 3898 3903
8186
FSELEC 996 8177
GET 404 1065 1067 1100 1657 1883 3252 3277 3279 3676 4012 4014 4035 4037
4668 4711 4781 5348 5350 5382 5384 5487 5514 5516 5780 5784 5823 5888
6376 6393 6395 6650 6656 6802 6841 6893 6895 6934 6936 6992 6994 7017 SEQ 0498
7019 7054 7056 7058 7060 7090 7092 7175 7177 7201 7203 7252 7254 7272
7274 7307 7309 7373 7375 7395 7396 7398 7526 7528 7563 7565 7664 7666
7809 7811 7986 7988 8089 8232 8234 8294 8300 8302 8391 8393 8433 8435
8601 8603 8649 8651 8696 8698 8821 8823 8954 8956 9006 9008 9167 9169
9232 9234 9359 9361 9402 9404 9431 9433 9475 9477 9494 9496 9558 9560
9591 9593 9713 9715 9764 9766 9906 9908 9934 9936 9965 10029 10031 10102
10104 10106 10147 10149 10400 10402 10452 10454 10486 10488 10517 10519 10622 10692
10711 10713 10728 10730 10767 10769 10788 10790 10861 10863 11063 11065 11096 11098
11175 11177 11211 11213 11317 11319 11392 11394 11413 11415 11705 11731 11853 11855
12127 12129
GETJI 11209
GO 171 177 184 195 215 216 217 218 219 224 233 237 238 239
242 244 245 252 271 324 330 336 346 358 378 379 395 400
427 436 443 452 459 461 467 472 477 643 648 668 675 689
698 706 721 723 732 735 736 737 746 748 749 761 763 773
775 776 780 782 792 794 799 801 872 878 887 906 918 933
935 943 945 949 951 960 964 980 986 994 1029 1039 1081 1088
1090 1119 1131 1160 1184 1200 1210 1211 1230 1232 1239 1243 1254 1599
1618 1636 1637 1640 1647 1652 1666 1683 1685 1687 1881 1956 1993 1995
1998 2000 2036 2038 2043 2045 2217 2220 2224 2226 2228 2282 2290 2307
2327 2330 2350 2353 2374 2381 2398 2405 2411 2414 2418 2440 2443 2463
2469 2494 2497 2518 2523 2545 2550 2576 2580 2585 2600 2602 2603 2604
2620 2624 2629 2645 2647 2648 2649 2666 2673 2676 2700 2707 2725 2728
2748 2768 2786 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801
2802 2803 2804 2805 2806 2807 2808 2816 2826 2836 2843 2861 2935 2937
2939 2949 2952 2955 2964 2967 2976 2978 2986 2988 2997 3003 3004 3005
3025 3032 3036 3042 3044 3047 3052 3054 3068 3070 3072 3075 3084 3121
3124 3136 3138 3141 3143 3152 3158 3195 3201 3217 3291 3293 3295 3298
3304 3313 3315 3316 3318 3323 3336 3342 3345 3347 3348 3350 3353 3362
3364 3366 3367 3383 3386 3388 3390 3392 3401 3403 3405 3406 3468 3478
3490 3495 3499 3515 3547 3563 3566 3571 3574 3579 3582 3587 3590 3595
3598 3607 3627 3637 3644 3664 3670 3691 3693 3702 3710 3712 3714 3723
3730 3921 3942 3946 3970 3977 3997 4002 4004 4009 4011 4025 4026 4032
4033 4053 4061 4073 4078 4082 4094 4112 4116 4118 4119 4138 4148 4151
4156 4163 4166 4176 4187 4196 4198 4200 4202 4215 4232 4240 4251 4256
4260 4272 4283 4289 4291 4302 4350 4358 4370 4375 4379 4391 4401 4409
4413 4415 4417 4418 4436 4446 4449 4455 4460 4463 4473 4482 4489 4491
4493 4495 4508 4525 4533 4544 4549 4553 4565 4572 4576 4578 4580 4592
4636 4642 4648 4653 4660 4667 4679 4685 4691 4696 4703 4710 4730 4740
4751 4756 4760 4765 4772 4780 4803 4813 4824 4829 4833 4838 4847 4856
4882 4885 4890 4897 4900 4908 4919 4932 4939 4941 4943 4956 4986 4992
4999 5010 5017 5045 5047 5049 5050 5068 5106 5112 5117 5124 5126 5129
5134 5205 5212 5219 5229 5236 5243 5258 5260 5261 5262 5267 5271 5276
5284 5298 5307 5310 5313 5316 5324 5333 5335 5339 5341 5343 5345 5346
5368 5373 5375 5391 5393 5399 5401 5411 5416 5423 5428 5469 5473 5477
5479 5481 5482 5486 5497 5503 5507 5509 5511 5513 5525 5540 5622 5658
5661 5667 5670 5673 5687 5690 5692 5697 5707 5709 5712 5727 5748 5754
5760 5765 5772 5777 5783 5795 5801 5807 5812 5819 5822 5842 5852 5863
5868 5872 5877 5884 5887 5910 5920 5931 5936 5940 5945 5954 5958 5966
5988 5991 5999 6003 6005 6006 6019 6022 6030 6034 6036 6044 6047 6052
6054 6060 6072 6078 6079 6087 6090 6095 6097 6101 6102 6110 6113 6131
6145 6148 6166 6181 6184 6187 6196 6202 6212 6216 6218 6220 6221 6252
6293 6296 6298 6309 6321 6324 6326 6334 6346 6348 6358 6360 6361 6370 SEQ 0499
6375 6384 6390 6442 6444 6445 6454 6456 6465 6467 6475 6476 6479 6482
6486 6506 6518 6524 6555 6558 6563 6570 6575 6577 6587 6589 6598 6601
6606 6612 6618 6623 6627 6641 6646 6652 6665 6687 6693 6699 6717 6727
6729 6734 6735 6738 6744 6750 6765 6799 6809 6814 6818 6825 6827 6839
6846 6853 6859 6862 6864 6883 6890 6891 6919 6921 6944 6945 6946 6964
6966 6979 6981 7002 7009 7011 7036 7084 7172 7266 7271 7330 7351 7364
7368 7384 7392 7420 7422 7444 7449 7451 7456 7474 7476 7478 7481 7485
7486 7520 7521 7597 7602 7606 7615 7617 7620 7626 7629 7632 7636 7680
7690 7696 7700 7759 7762 7769 7772 7775 7778 7823 7883 7935 8079 8086
8088 8094 8097 8189 8200 8223 8266 8291 8342 8375 8381 8423 8426 8492
8495 8512 8513 8544 8552 8555 8557 8565 8568 8571 8600 8632 8636 8642
8687 8688 8718 8719 8744 8935 8939 8944 8948 8950 8973 8978 8982 8984
8990 8991 9000 9128 9134 9135 9142 9151 9152 9186 9213 9222 9231 9243
9260 9262 9265 9269 9271 9273 9277 9285 9287 9302 9304 9309 9311 9321
9323 9325 9327 9335 9337 9339 9344 9346 9354 9415 9421 9422 9424 9444
9451 9452 9454 9463 9464 9466 9488 9546 9605 9625 9633 9647 9708 9781
9784 9806 9811 9812 9902 9929 9959 9964 9986 9987 9989 10006 10009 10020
10021 10022 10023 10024 10025 10026 10059 10064 10068 10069 10070 10071 10072 10073
10074 10075 10076 10077 10078 10079 10080 10082 10083 10084 10085 10086 10087 10088
10089 10090 10091 10092 10093 10094 10095 10096 10097 10098 10099 10100 10101 10143
10146 10156 10157 10158 10159 10160 10168 10169 10170 10171 10172 10179 10180 10181
10182 10183 10245 10246 10247 10248 10249 10273 10274 10275 10276 10277 10280 10288
10289 10290 10291 10307 10308 10309 10310 10340 10341 10342 10343 10344 10347 10707
10710 10723 10779 10825 10853 10856 11043 11049 11105 11159 11310 11311 11329 11332
11340 11346 11347 11348 11353 11370 11385 11391 11404 11410 11422 11461 11478 11484
11491 11499 11502 11507 11513 11517 11521 11549 11565 11587 11593 11600 11608 11611
11616 11622 11626 11630 11670 11688 11697 11700 11704 11710 11711 11730 11757 11763
11764 11770 11784 11800 11803 11811 11848 11872 11885 11901 11948 11963 11982 11985
11991 12050 12054 12057 12060 12063 12066 12098 12109 12120 12198 12200 12206 12208
12215 12217
GTAD 11051 11154
HALT 228 752
MFLD 4307# 4307 4313# 4313 4315# 4315 4317# 4317 4319# 4319 4321# 4321 4327# 4327
4597# 4597 4599# 4599 4605# 4605 4607# 4607 4609# 4609 4611# 4611 4613# 4613
4619# 4619 4961# 4961 4963# 4963 4965# 4965 4967# 4967 5073# 5073 5075# 5075
5077# 5077 5139# 5139 5141# 5141 5143# 5143 5146# 5146 5148# 5148 5150# 5150
5153# 5153 5155# 5155 5157# 5157 5160# 5160 5162# 5162 5164# 5164 5166# 5166
5169# 5169 5171# 5171 5173# 5173 5176# 5176 5178# 5178 5181# 5181 5183# 5183
5185# 5185 5187# 5187 5189# 5189 5192# 5192 5194# 5194 5196# 5196 5354# 5354
5356# 5356 5433# 5433 5435# 5435 5437# 5437 5439# 5439 5442# 5442 5444# 5444
5446# 5446 5448# 5448 5450# 5450 5452# 5452 5454# 5454 5456# 5456 5458# 5458
5460# 5460 5732# 5732 6278# 6278 6280# 6280 6282# 6282 6284# 6284 9016# 9016
9018# 9018 9020# 9020 9022# 9022 9027# 9027 9029# 9029 9031# 9031 9033# 9033
MWORD 4307 4313 4315 4317 4319 4321 4327 4597 4599 4605 4607 4609 4611 4613
4619 4961 4963 4965 4967 5073 5075 5077 5139 5141 5143 5146 5148 5150
5153 5155 5157 5160 5162 5164 5166 5169 5171 5173 5176 5178 5181 5183
5185 5187 5189 5192 5194 5196 5354 5356 5433 5435 5437 5439 5442 5444
5446 5448 5450 5452 5454 5456 5458 5460 5732 6278 6280 6282 6284 9016
9018 9020 9022 9027 9029 9031 9033
PCRL 272 705 712 912 919 1255 1638 2295 2299 2314 2318 2337 2360 2386
2423 2432 2450 2479 2486 2504 2529 2558 2608 2612 2654 2658 2683 2692
2712 2735 2755 2775 2845 2940 3055 3085 3164 3185 3251 3327 3939 3957
3972 3985 4136 4434 4870 5066 5213 5220 5237 5244 5285 5725 5980 6128 SEQ 0500
6137 6162 6172 6188 6247 6349 6431 6590 6628 6730 6794 6810 6823 6847
6865 6892 6930 7044 7298 7881 7933 7985 8406 8432 8627 8677 8695 11313
11871 12230
PCRL2 2853
PCRLF 332 396 451 688 697 886 1648 3305 3553 3635 3638 3683 3688 3692
3713 5998 6029 6516 6525 7447
PFORCE 395 484 803 1647 1692 2047 2863
PGMINT 178
PJRST 5569 5576 5583 5589 5627 5635 5643 5649 6855 10126
PNT1 7107 7110 7115 7118 7121 7124 7127 7139 7142 7163 7166 7169 7332 7355
PNT2 1245 5415 6695 12081
PNT3 5057 5377 11466 11881 11911 11914 12073 12075 12077 12079
PNT4 3080 3178 3181 3241 3244 3940 6164 7189 7191 7196 7198 7200 8420 8628
PNT4F 3558 3642
PNTADR 9600 9604
PNTCI 6063 8124 8142 8192 8259 8269
PNTCIF 1000 1008 8115 8133 8183
PNTDCC 7859 7861 7863 7866 7868 7871 7874 7876 7915 7917 7920 7922 7926 7928
7967 7969 7972 7974 7978 7980
PNTDCF 1098 1227
PNTDEC 267 1250 2389 2715 2758 2778 6010 6417 6420 6703 6707 6874 8225 8383
8408 8411 8622 10740 11690 11994
PNTHW 2431 3184 3247 3326 4121 4420 5418 6424 6427 6430 7265 10266 10447 10760
10810 10813 10816 10819 10822 10833 12149 12152 12158 12229
PNTHWF 9931
PNTMSF 225 326 397 448 466 667 674 685 694 720 731 734 745 760
772 779 791 800 864 868 871 883 905 932 942 948 959 979
985 997 1003 1005 1011 1038 1096 1099 1118 1143 1222 1225 1228 1229
1598 1649 1665 1684 1880 1955 1992 1997 2035 2044 2216 2219 2225 2281
2289 2306 2326 2349 2373 2380 2397 2404 2410 2413 2420 2439 2462 2468
2493 2517 2524 2544 2551 2575 2584 2619 2628 2665 2672 2675 2699 2706
2724 2747 2767 2788 2815 2825 2835 2842 2860 2934 2948 2951 2963 2975
2985 2996 3024 3043 3046 3051 3067 3071 3074 3082 3112 3117 3137 3140
3194 3216 3290 3294 3297 3302 3312 3317 3335 3341 3344 3349 3361 3382
3385 3400 3467 3477 3488 3494 3498 3551 3559 3562 3565 3570 3573 3578
3581 3586 3589 3594 3597 3632 3643 3690 3711 3743 3744 3745 3746 3747
3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3864
3865 3866 3867 3871 3875 3879 3880 3881 3882 3883 3897 3901 3902 3908
3909 3910 3911 4052 4060 4071 4077 4081 4147 4150 4155 4162 4165 4231
4239 4250 4255 4259 4349 4357 4368 4374 4378 4445 4448 4454 4459 4462
4524 4532 4543 4548 4552 4635 4641 4647 4678 4684 4690 4729 4739 4750
4755 4759 4802 4812 4823 4828 4832 4884 4889 4899 4991 5093 5099 5105
5204 5228 5524 5621 5657 5660 5666 5669 5672 5686 5708 5711 5747 5753
5759 5794 5800 5806 5841 5851 5862 5867 5871 5909 5919 5930 5935 5939
5987 5990 5995 6002 6018 6021 6026 6033 6043 6086 6109 6144 6180 6183
6195 6292 6295 6320 6323 6345 6357 6369 6383 6441 6453 6464 6468 6478
6485 6511 6529 6530 6531 6532 6533 6534 6535 6536 6537 6538 6539 6540
6541 6542 6543 6544 6545 6546 6547 6554 6557 6562 6569 6576 6586 6597
6600 6605 6611 6617 6622 6640 6649 6655 6943 7454 7459 8112 8118 8130
8136 8180 8186 9416 9420 9445 9450 9462 9929
PNTMSG 264 268 485 818 827 845 855 921 1243 1248 1251 1358 1359 1360
1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374
1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 SEQ 0501
1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1693
2078 2093 2098 2102 2112 2117 2122 2127 2135 2140 2145 2151 2157 2165
2169 2173 2177 2187 2195 2205 2296 2315 2338 2340 2342 2361 2363 2365
2387 2390 2424 2429 2451 2453 2455 2480 2483 2505 2507 2509 2530 2532
2533 2559 2561 2562 2563 2599 2603 2609 2644 2648 2655 2684 2713 2716
2736 2738 2740 2756 2759 2776 2779 2790 2864 2938 3078 3128 3144 3147
3150 3167 3170 3176 3179 3182 3200 3242 3245 3248 3324 3368 3371 3375
3941 3967 3974 4098 4103 4106 4399 4401 4404 4840 4857 5023 5024 5025
5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037 5038 5052
5055 5210 5217 5234 5241 5257 5263 5270 5275 5282 5294 5304 5305 5308
5311 5314 5322 5323 5330 5331 5347 5379 5413 5698 5699 5715 5716 5717
5718 5719 5947 5967 6008 6011 6060 6066 6115 6130 6165 6230 6239 6257
6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271
6272 6312 6338 6403 6405 6406 6407 6408 6409 6410 6411 6412 6415 6418
6421 6422 6425 6428 6433 6527 6674 6691 6693 6700 6701 6704 6705 6708
6726 6728 6795 6811 6815 6824 6826 6828 6831 6852 6854 6860 6861 6863
6872 6875 6877 6918 6920 6922 7039 7043 7077 7082 7087 7105 7108 7113
7116 7119 7122 7137 7140 7145 7146 7147 7148 7149 7150 7151 7152 7153
7154 7155 7156 7157 7158 7159 7160 7161 7263 7300 7315 7316 7317 7318
7319 7320 7321 7322 7323 7324 7325 7326 7327 7328 7329 7330 7336 7337
7338 7339 7340 7341 7342 7343 7344 7345 7346 7347 7348 7349 7350 7354
7421 7540 7546 7550 7552 7554 7556 7558 7559 7560 7561 7572 7573 7574
7575 7576 7577 7578 7579 7580 7822 7828 7853 7854 7855 7856 7857 7882
7888 7909 7910 7911 7912 7913 7934 7940 7961 7962 7963 7964 7965 8121
8127 8139 8145 8189 8195 8223 8226 8248 8256 8262 8266 8272 8327 8381
8384 8385 8388 8409 8412 8413 8419 8421 8424 8431 8621 8623 8624 8629
8633 8637 8648 8668 8680 9597 9598 9601 9602 9992 9993 9994 9995 9996
9997 9998 10000 10004 10007 10011 10044 10045 10049 10053 10120 10121 10125 10137
10141 10144 10187 10194 10195 10196 10197 10198 10199 10200 10201 10204 10206 10210
10217 10224 10228 10230 10231 10232 10233 10236 10237 10250 10292 10296 10311 10315
10358 10365 10371 10372 10373 10374 10375 10376 10394 10406 10407 10408 10409 10410
10411 10412 10413 10414 10415 10416 10417 10418 10419 10420 10421 10422 10423 10424
10425 10426 10427 10440 10442 10445 10464 10466 10468 10470 10472 10473 10477 10478
10479 10480 10481 10483 10485 10500 10513 10516 10523 10524 10525 10526 10527 10528
10529 10530 10531 10532 10533 10534 10535 10536 10537 10538 10539 10540 10541 10546
10547 10548 10549 10550 10551 10552 10553 10554 10555 10556 10557 10558 10559 10560
10561 10562 10563 10564 10565 10566 10567 10568 10569 10571 10572 10573 10574 10575
10576 10577 10578 10579 10580 10581 10582 10583 10584 10585 10586 10587 10588 10589
10590 10591 10592 10593 10594 10684 10688 10705 10708 10722 10724 10738 10741 10755
10758 10765 10782 10785 10801 10802 10804 10806 10808 10811 10814 10817 10820 10823
10827 10829 10831 10834 10837 10838 10841 10844 10846 10849 10851 10854 10865 10866
10867 10868 10869 10870 10871 11309 11327 11370 11385 11404 11422 11434 11461 11464
11565 11570 11688 11691 11784 11787 11790 11863 11864 11865 11866 11867 11879 11882
11887 11888 11889 11890 11898 11903 11904 11905 11906 11907 11909 11912 11925 11926
11927 11928 11929 11930 11931 11932 11933 11934 11935 11936 11937 11938 11939 11947
11949 11961 11968 11969 11970 11971 11980 11983 11992 11995 12008 12014 12015 12016
12017 12018 12019 12037 12047 12051 12052 12055 12058 12061 12064 12095 12099 12106
12110 12119 12144 12147 12150 12157 12226
PNTOCC 3973 4859 5720 5969 6129 6528 7104 7112 7130 7133 7136 7545 8679 10803
10805 10807 10826 10828 10830 10835 10850
PNTOCF 450 687 696 885 3671 5997 6028
PNTOCS 923 2298 2317 2611 2657 2687 2691 3149 3169 3250 3370 3374 4105 4403
5054 6414 6830 7041 7079 7083 8387 8658 10003 10048 10052 10124 10140 10191 SEQ 0502
10213 10220 10227 10295 10299 10314 10318 10396 10444 10475 10499 10515 10687 10691
10727 10787 10843 10848 11372 11387 11406 11463 11567 11572 11693 11786 11789 11792
11884 11900 11952 12039 12102 12113 12146
PNTSIX 2482 2485 6062 6065 8123 8126 8141 8144 8191 8194 8258 8261 8268 8271
PNTSXF 999 1002 1007 1010 8114 8117 8132 8135 8182 8185
PSP 924 1246 2688 4860 5970 6696 7125 7128 7131 7134 7143 7164 7167
PSPF 3672
PUT 1052 1054 3239 3260 3262 3992 3994 4020 4022 4665 4708 4778 5251 5253
5366 5368 5484 5494 5496 5773 5781 5820 5885 6372 6386 6388 6644 6646
6797 6837 6850 6852 6905 6907 6925 6927 6956 6958 7000 7002 7031 7033
7075 7077 7101 7103 7186 7188 7222 7224 7261 7263 7285 7287 7362 7364
7382 7384 7385 7418 7420 7534 7536 7590 7592 7674 7676 7817 7819 8085
8164 8166 8244 8246 8279 8323 8325 8404 8406 8503 8505 8529 8530 8532
8617 8619 8666 8668 8742 8744 8933 8935 8967 8969 9090 9092 9179 9181
9246 9248 9390 9392 9410 9412 9439 9441 9485 9487 9516 9518 9582 9584
9619 9621 9734 9736 9777 9779 9917 9919 9958 9980 9982 10040 10042 10063
10066 10068 10116 10118 10135 10137 10354 10356 10438 10440 10460 10462 10496 10498
10610 10683 10700 10702 10720 10722 10736 10738 10777 10779 10799 10801 11041 11043
11092 11103 11105 11204 11206 11285 11287 11389 11391 11408 11410 11702 11728 11845
11847 12093 12095 12202 12204 12210 12212 12219 12221
RGET 1065 3277 4012 4035 5348 5382 5514 6393 6650 6656 6893 6934 6992 7017
7054 7058 7090 7175 7201 7252 7272 7307 7373 7396 7526 7563 7664 7809
7986 8232 8300 8391 8433 8601 8649 8696 8821 8954 9006 9167 9232 9359
9402 9431 9475 9494 9558 9591 9713 9764 9906 9934 10029 10102 10104 10147
10400 10452 10486 10517 10711 10728 10767 10788 10861 11063 11175 11211 11317 11392
11413 11853 12127
RPUT 1052 3260 3992 4020 5251 5366 5494 6386 6644 6850 6905 6925 6956 7000
7031 7075 7101 7186 7222 7261 7285 7362 7382 7418 7534 7590 7674 7817
8164 8244 8323 8404 8503 8530 8617 8666 8742 8933 8967 9090 9179 9246
9390 9410 9439 9485 9516 9582 9619 9734 9777 9917 9980 10040 10066 10116
10135 10354 10438 10460 10496 10700 10720 10736 10777 10799 11041 11103 11204 11285
11389 11408 11845 12093 12202 12210 12219
RTN 263 273 337 398 480 569 649 669 676 690 699 713 722 733
739 747 762 764 774 777 781 783 793 796 802 806 810 873
879 880 888 907 913 920 934 936 944 946 950 952 961 965
981 987 1004 1013 1040 1067 1101 1120 1215 1218 1235 1241 1247 1256
1600 1650 1878 1882 1884 1957 1962 1994 1996 1999 2001 2037 2040 2046
2050 2054 2218 2221 2227 2229 2283 2291 2293 2300 2308 2312 2319 2328
2331 2333 2335 2343 2351 2354 2356 2358 2366 2375 2382 2384 2391 2399
2406 2412 2415 2419 2421 2433 2441 2444 2446 2448 2456 2464 2470 2477
2487 2495 2498 2500 2502 2510 2519 2525 2527 2534 2546 2552 2556 2564
2577 2586 2588 2601 2605 2613 2621 2630 2633 2646 2650 2659 2667 2674
2677 2681 2693 2701 2708 2710 2717 2726 2729 2731 2733 2741 2749 2753
2760 2769 2773 2780 2787 2789 2809 2817 2827 2837 2844 2854 2862 2865
2936 2941 2950 2953 2956 2965 2968 2977 2979 2987 2989 2998 3006 3026
3045 3048 3050 3056 3069 3073 3076 3086 3122 3139 3142 3166 3186 3196
3204 3209 3218 3222 3253 3279 3292 3296 3299 3301 3306 3314 3319 3328
3337 3343 3346 3351 3354 3363 3376 3384 3387 3393 3402 3407 3469 3479
3491 3496 3500 3548 3564 3567 3572 3575 3580 3583 3588 3591 3596 3599
3613 3639 3735 3765 3767 3769 3771 3773 3775 3777 3779 3781 3783 3785
3787 3789 3791 3793 3795 3797 3799 3804 3806 3808 3810 3812 3814 3816
3818 3820 3822 3824 3826 3828 3830 3832 3834 3836 3838 3925 3930 3958
3986 4014 4037 4054 4062 4074 4079 4083 4139 4149 4152 4157 4164 4167 SEQ 0503
4216 4233 4241 4252 4257 4261 4303 4351 4359 4371 4376 4380 4405 4437
4447 4450 4456 4461 4464 4509 4526 4534 4545 4550 4554 4593 4637 4643
4644 4649 4680 4686 4687 4692 4731 4741 4752 4757 4761 4785 4804 4814
4825 4830 4834 4858 4871 4883 4886 4891 4898 4901 4909 4957 4987 4993
5000 5069 5107 5135 5206 5221 5230 5245 5350 5384 5429 5488 5516 5526
5543 5623 5659 5662 5668 5671 5674 5680 5688 5728 5749 5755 5756 5761
5796 5802 5803 5808 5843 5853 5864 5869 5873 5892 5911 5921 5932 5937
5941 5968 5981 5989 5992 6000 6004 6012 6020 6023 6031 6035 6037 6045
6048 6067 6073 6080 6088 6091 6103 6111 6114 6138 6146 6149 6173 6182
6185 6189 6197 6253 6294 6297 6313 6322 6325 6339 6347 6350 6359 6362
6371 6377 6385 6395 6434 6443 6446 6455 6457 6466 6469 6477 6480 6487
6507 6517 6526 6556 6559 6564 6571 6578 6579 6588 6591 6599 6602 6607
6613 6619 6624 6632 6642 6651 6657 6697 6819 6895 6936 6947 6994 7019
7056 7060 7069 7092 7174 7177 7203 7254 7274 7309 7333 7353 7356 7375
7398 7528 7565 7600 7603 7607 7619 7622 7628 7631 7634 7638 7666 7693
7697 7701 7761 7764 7771 7774 7777 7780 7811 7988 7998 8081 8100 8108
8119 8128 8137 8146 8196 8227 8234 8273 8304 8389 8393 8403 8435 8496
8498 8502 8559 8603 8616 8651 8660 8698 8723 8731 8823 8956 9008 9169
9188 9226 9234 9245 9361 9383 9404 9433 9477 9496 9560 9593 9715 9732
9766 9776 9908 9933 9936 9966 9991 10031 10106 10149 10161 10173 10238 10267
10281 10300 10319 10348 10402 10454 10488 10519 10623 10693 10713 10730 10769 10790
10863 11034 11037 11065 11088 11097 11099 11177 11213 11319 11373 11388 11407 11423
11467 11569 11573 11694 11760 11766 11793 11855 11870 11873 11891 11908 11915 11940
11953 11976 11996 12012 12035 12040 12067 12082 12142 12156 12159 12232
SCOPER 8726
SYERR 11058 11167
TMSG 268 921 1243 1248 1251 1358 1359 1360 1361 1362 1363 1364 1365 1366
1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380
1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394
1395 1396 1397 1398 1399 1400 1401 2296 2315 2338 2361 2387 2424 2429
2451 2480 2483 2505 2530 2559 2609 2655 2684 2713 2736 2756 2776 3167
3179 3182 3242 3245 3248 3371 3941 3974 4103 4106 4399 4404 5055 5263
5270 5275 5294 5304 6130 6165 6257 6258 6259 6260 6261 6262 6263 6264
6265 6266 6267 6268 6269 6270 6271 6272 6415 6418 6421 6425 6428 6527
6693 6700 6704 6728 6826 6828 6854 6863 6920 6922 7039 7043 7077 7082
7087 7105 7108 7113 7116 7119 7122 7137 7140 7145 7146 7147 7148 7149
7150 7151 7152 7153 7154 7155 7156 7157 7158 7159 7160 7161 7300 7315
7316 7317 7318 7319 7320 7321 7322 7323 7324 7325 7326 7327 7328 7329
7330 7336 7337 7338 7339 7340 7341 7342 7343 7344 7345 7346 7347 7348
7349 7350 7354 7546 7550 7552 7554 7556 7572 7573 7574 7575 7576 7577
7578 7579 7580 7824 7884 7936 8121 8127 8139 8145 8409 8412 8421 8424
8623 8629 8633 8637 8680 9601 10000 10004 10007 10049 10053 10125 10141 10144
10194 10195 10196 10197 10198 10199 10200 10201 10230 10231 10232 10233 10296 10315
10365 10371 10372 10373 10374 10375 10376 10394 10406 10407 10408 10409 10410 10411
10412 10413 10414 10415 10416 10417 10418 10419 10420 10421 10422 10423 10424 10425
10426 10427 10445 10466 10468 10470 10472 10473 10477 10478 10479 10480 10481 10483
10485 10500 10513 10516 10523 10524 10525 10526 10527 10528 10529 10530 10531 10532
10533 10534 10535 10536 10537 10538 10539 10540 10541 10546 10547 10548 10549 10550
10551 10552 10553 10554 10555 10556 10557 10558 10559 10560 10561 10562 10563 10564
10565 10566 10567 10568 10569 10571 10572 10573 10574 10575 10576 10577 10578 10579
10580 10581 10582 10583 10584 10585 10586 10587 10588 10589 10590 10591 10592 10593
10594 10688 10708 10724 10741 10758 10782 10785 10844 10846 10849 10851 10854 10865
10866 10867 10868 10869 10870 10871 11464 11570 11691 11787 11790 11882 11925 11926 SEQ 0504
11927 11928 11929 11930 11931 11932 11933 11934 11935 11936 11937 11938 11939 11949
11995 12008 12014 12015 12016 12017 12018 12019 12037 12047 12099 12110 12147 12150
12157
TMSGC 264 2938 3078 3144 3147 3176 3324 3368 3967 4098 4401 4840 4857 5023
5024 5025 5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037
5038 5052 5210 5217 5234 5241 5257 5282 5305 5308 5311 5314 5322 5323
5330 5331 5379 5413 5698 5699 5715 5716 5717 5718 5719 5947 5967 6008
6060 6115 6230 6239 6403 6405 6406 6407 6408 6409 6410 6411 6412 6422
6691 6701 6705 6726 6824 6852 6861 6872 6918 7263 7822 7853 7854 7855
7856 7857 7882 7909 7910 7911 7912 7913 7934 7961 7962 7963 7964 7965
8189 8223 8256 8266 8381 8385 8413 8419 8431 8621 8624 8648 8668 9597
9598 9602 9992 9993 9994 9995 9996 9997 9998 10011 10044 10045 10120 10121
10137 10187 10204 10206 10210 10217 10224 10228 10236 10237 10250 10292 10311 10358
10440 10442 10464 10684 10705 10722 10738 10755 10765 10801 10802 10804 10806 10808
10811 10814 10817 10820 10823 10827 10829 10831 10834 10837 10838 10841 11327 11370
11385 11404 11422 11434 11461 11565 11688 11784 11863 11864 11865 11866 11867 11879
11887 11888 11889 11890 11898 11903 11904 11905 11906 11907 11909 11912 11947 11961
11968 11969 11970 11971 11980 11983 11992 12051 12052 12055 12058 12061 12064 12095
12106 12119 12144
TMSGCD 818 2078 2599 2603 2644 2648 2790 3128 3200 5347 6312 6338 6433 6673
6795 6811 6815 6860 6877 7421 8248 8327 11309 12226
TMSGD 820 829 847 2080 2095 2100 2104 2114 2119 2124 2129 2137 2142 2147
2153 2159 2167 2171 2175 2179 2189 2197 2340 2342 2363 2365 2390 2453
2455 2507 2509 2532 2533 2561 2562 2563 2716 2738 2740 2759 2779 3150
3170 3375 6011 6066 6708 6831 6875 7536 7558 7559 7560 7561 8195 8226
8262 8272 8384 8388
TTALTM 710 1190 2848 3162 3202 3923 3947 4124 4292 4421 4581 4864 4947 5058
5974 6134 6169 6391 6676 7170 7464
TTIDEC 1144
TTSIXB 403 1656 3675
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 1
DFCIA2 MAC 18-Mar-84 10:46 Test Module DFCIA2.MAC SEQ 0505
1 SUBTTL Test Module DFCIA2.MAC
2
3 SALL
4
5 SEARCH DFCIA,MONSYM
6
7 ; Tests 1-7
8
9 ENTRY TST1,TST2,TST3,TST4,TST5,TST6,TST7
10 ENTRY T2M,T3M,T4M,T5M
11
12 ; Miscellaneous routines
13
14 ENTRY MSTART,MWAIT,MPRINT,MEXIT,MRESET,MRESTA,C1516
15 INTERN SAVCSR,SAVLAR,SAVEBU,SAVCOD
16
17 ; EXTERN's located in DFCIA1.MAC
18
19 EXTERN UDEBUG,DDEBUG,BUFF,CSRPNT,TRACE,TSTSUB,TLOAD,TFLOAD
20 EXTERN PCB,TEXEC,TTPNT,CPORT,TSLOAD,DDUMP,TSTTAB,TSTEND
21
22 ; EXTERN's located in DFCIAI.MAC (Port Handling Routines)
23
24 EXTERN LDEBUF,LDRAR,LDCRAM,LDCSR,RDEBUF,RDLAR,RDCRAM,RDCSR
25 EXTERN ERESET,IPACLR,.DATAI,.DATAO,CHINIT
26
27 ; EXTERN's located in DFCIAU.MAC (Utility Routines)
28
29 EXTERN BUFGEN,SCOSW
30
31 ;#********************************************************************
32 ; Z2 - Address for use in DDT
33 ;#********************************************************************
34
35 000000' Z2: ; address of 00000'
36
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 2
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0506
37 SUBTTL Port Modules
38
39 ;#********************************************************************
40 ;* TEST 1 - Port Hardware Test 1
41 ;
42 ; Description: This test verifies the major data paths in the 3
43 ; port modules. Data patterns are written to the
44 ; CSR register, EBUF, and CRAM and read back and
45 ; verified.
46 ;
47 ; Procedure: KL> Read/write data patterns to CSR register
48 ; KL> Verify the results
49 ; KL> Read/write data patterns to EBUF
50 ; KL> Verify the results
51 ; KL> Read/write data patterns to CRAM each location
52 ; KL> Verify the results
53 ;
54 ; FRU: EBUS/MPROC/CBUS Modules
55 ;#********************************************************************
56
57 ; Initialization
58
59 000000' 201 00 0 00 000000' TST1: MOVEI Z2 ; get address of module start
60 000001' 260 17 0 00 000000* GO TRACE ; handle trace output
61 000002' 476 00 0 00 000000* SETOM TSLOAD ; reset microcode loaded flag
62
63 ;#*******************************************************************
64 ; First read/write the CSR register
65 ;#*******************************************************************
66
67 000003' 400 06 0 00 000000 SETZ 6, ; clear bit table pointer
68
69 ; First, set the bit
70
71 000004' 350 00 0 00 000000* TA1: AOS TSTSUB ; increment subtest number
72 000005' 336 01 0 06 000246' SKIPN 1,TA1PAT(6) ; get bit to write
73 000006' 254 00 0 00 000045' JRST TB1 ; zero - end of this segment
74 000007' 260 17 0 00 000000* GO ERESET ; do an EBUS reset
75 000010' 202 01 0 00 004167' MOVEM 1,SAVCS1# ; save data
76 000011' 260 17 0 00 000000* GO LDCSR ; write data
77 000012' 260 17 0 00 000000* GO RDCSR ; read CSR
78 000013' 255 00 0 00 000000 JFCL ; ignore error
79 000014' 202 01 0 00 004171' MOVEM 1,SAVCS3# ; save data
80 000015' 200 00 0 06 000247' MOVE TA1PAT+1(6) ; get correct data
81 000016' 202 00 0 00 004170' MOVEM SAVCS2# ; save data
82 000017' 312 00 0 00 000001 CAME 1 ; actual same as correct?
83 000020' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
84 000021' 027 00 0 00 000130' SCOPER MA1 ; print error message
85 000022' 255 00 0 00 000000 JFCL ; loop on error
86 000023' 254 00 0 00 000126' JRST TX1 ; altmode exit
87 000024' 326 15 0 00 000126' JUMPN ERFLG,TX1 ; error? yes - exit
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 3
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0507
88
89 ; Then, clear the bit
90
91 000025' 350 00 0 00 000004* AOS TSTSUB ; point to next subtest
92 000026' 403 01 0 00 004167' SETZB 1,SAVCS1 ; zero
93 000027' 260 17 0 00 000011* GO LDCSR ; clear the bit
94 000030' 260 17 0 00 000012* GO RDCSR ; read CSR
95 000031' 255 00 0 00 000000 JFCL ; ignore error
96 000032' 202 01 0 00 004171' MOVEM 1,SAVCS3 ; save data
97 000033' 200 00 0 06 000250' MOVE TA1PAT+2(6) ; get correct data
98 000034' 202 00 0 00 004170' MOVEM SAVCS2 ; save data
99 000035' 312 00 0 00 000001 CAME 1 ; actual same as correct?
100 000036' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
101 000037' 027 00 0 00 000130' SCOPER MA1 ; print error message
102 000040' 255 00 0 00 000000 JFCL ; loop on error
103 000041' 254 00 0 00 000126' JRST TX1 ; altmode exit
104 000042' 326 15 0 00 000126' JUMPN ERFLG,TX1 ; error? yes - exit
105
106 ; Increment bit table pointer
107
108 000043' 271 06 0 00 000003 ADDI 6,3 ; point to next entry
109 000044' 254 00 0 00 000004' JRST TA1 ; repeat this segment
110
111 ;#********************************************************************
112 ; Next, read/write the EBUF
113 ;#********************************************************************
114
115 000045' 400 06 0 00 000000 TB1: SETZ 6, ; clear bit table pointer
116
117 ; First, get the data pattern to write
118
119 000046' 350 00 0 00 000025* TC1: AOS TSTSUB ; set up subtest number
120 000047' 200 01 0 06 000334' MOVE 1,TC1PAT(6) ; get pattern to write
121 000050' 306 01 0 00 000377 CAIN 1,377 ; end of table?
122 000051' 254 00 0 00 000072' JRST TD1 ; yes - end of this segment
123
124 ; First test segment - verify EBUF write/read correctly
125
126 000052' 202 01 0 00 004172' MOVEM 1,SAVEB1# ; save data
127 000053' 260 17 0 00 000007* GO ERESET ; do an EBUS Reset
128 000054' 201 01 0 00 200000 MOVEI 1,TSTEBF ; get 'DIAG Test EBUF' bit
129 000055' 260 17 0 00 000027* GO LDCSR ; write to CSR
130 000056' 200 01 0 00 004172' MOVE 1,SAVEB1 ; get data pattern
131 000057' 260 17 0 00 000000* GO LDEBUF ; write to EBUF
132 000060' 260 17 0 00 000000* GO RDEBUF ; write to EBUF
133 000061' 202 01 0 00 004173' MOVEM 1,SAVEB2# ; save EBUF data
134 000062' 312 01 0 00 004172' CAME 1,SAVEB1 ; correct?
135 000063' 474 15 0 00 000000 SETO ERFLG, ; no - flag error
136 000064' 027 00 0 00 000156' SCOPER MC1 ; print error message
137 000065' 255 00 0 00 000000 JFCL ; loop on error
138 000066' 254 00 0 00 000126' JRST TX1 ; altmode exit
139 000067' 326 15 0 00 000126' JUMPN ERFLG,TX1 ; error? yes - exit
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 4
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0508
140
141 ; Increment data pattern pointer
142
143 000070' 350 00 0 00 000006 AOS 6 ; point to next data pattern
144 000071' 254 00 0 00 000046' JRST TC1 ; repeat this segment
145
146 ;#********************************************************************
147 ; Now read/write the CRAM
148 ;#********************************************************************
149
150 000072' 474 07 0 00 000000 TD1: SETO 7, ; initialize CRAM address
151
152 ; First set up RAR to correct address (left half of CRAM)
153
154 000073' 350 00 0 00 000007 TE1: AOS 7 ; point to next CRAM location
155 000074' 303 07 0 00 017777 CAILE 7,17777 ; done yet?
156 000075' 254 00 0 00 000126' JRST TX1 ; yes - exit
157 000076' 260 17 0 00 000000* GO IPACLR ; do a port clear
158 000077' 200 01 0 00 000007 MOVE 1,7 ; get address
159 000100' 202 01 0 00 004166' MOVEM 1,SAVCRA# ; save CRAM address
160 000101' 260 17 0 00 000000* GO LDRAR ; write it to RAR register
161
162 ; Next, get the data pattern to write
163
164 000102' 400 06 0 00 000000 SETZ 6, ; clear bit table pointer
165 000103' 200 01 0 06 000451' TF1: MOVE 1,TD1PAT(6) ; get pattern to write
166 000104' 621 01 0 00 770000 TLZ 1,770000 ; clear unused bits
167 000105' 202 01 0 00 004164' MOVEM 1,SAVCR1# ; save data
168 000106' 306 01 0 00 000377 CAIN 1,377 ; end of table?
169 000107' 254 00 0 00 000073' JRST TE1 ; yes - end of segment
170
171 ; Now write/read the location
172
173 000110' 350 00 0 00 000046* AOS TSTSUB ; set up subtest number
174 000111' 260 17 0 00 000000* GO LDCRAM ; write CRAM
175 000112' 260 17 0 00 000000* GO RDCRAM ; read CRAM
176 000113' 621 01 0 00 770000 TLZ 1,770000 ; clear unused bits
177 000114' 202 01 0 00 004165' MOVEM 1,SAVCR2# ; save CRAM data
178 000115' 312 01 0 00 004164' CAME 1,SAVCR1 ; correct?
179 000116' 474 15 0 00 000000 SETO ERFLG, ; no - flag error
180 000117' 027 00 0 00 000177' SCOPER MD1 ; print error message
181 000120' 255 00 0 00 000000 JFCL ; loop on error
182 000121' 254 00 0 00 000126' JRST TX1 ; altmode exit
183 000122' 326 15 0 00 000126' JUMPN ERFLG,TX1 ; error? yes - exit
184
185 ; Increment data pattern pointer
186
187 000123' 350 00 0 00 000006 AOS 6 ; point to next data pattern
188 000124' 336 00 0 00 000000* SKIPN UDEBUG ; debug mode?
189 000125' 254 00 0 00 000103' JRST TF1 ; no - repeat this segment
190
191 ; End of test
192
193 000126' 260 17 0 00 000000* TX1: GO TSTEND ; handle end of test processing
194 000127' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 5
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0509
195
196 ;#********************************************************************
197 ; Error Messages
198 ;#********************************************************************
199
200 ; Error messages (CSR Read/Write)
201
202 000130' 240000 000133' MA1: CALL!TXNOT!MA1PNT
203 000131' 260000 000140' CALL!TXALL!M1CSR
204 000132' 170000 003346' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
205
206 000133' 037 00 0 00 003352' MA1PNT: TMSGC <Write CSR '>
207 000134' 200 00 0 00 004167' MOVE SAVCS1
208 000135' 037 16 0 00 000003 PNTOCS
209 000136' 037 00 0 00 003355' TMSG <', then read CSR, verify result.>
210 000137' 263 17 0 00 000000 RTN
211
212 000140' 200 01 0 00 000000* M1CSR: MOVE 1,SCOSW ; get switches
213 000141' 603 01 0 00 000200 TLNE 1,TXTINH ; inhibit text?
214 000142' 037 00 0 00 003364' TMSGC <CSR (C): > ; yes
215 000143' 607 01 0 00 000200 TLNN 1,TXTINH ; inhibit text?
216 000144' 037 00 0 00 003367' TMSGC <CSR (Correct): > ; no
217 000145' 200 00 0 00 004170' MOVE SAVCS2 ; get CSR data written
218 000146' 037 13 0 00 000000 PNTHW
219 000147' 603 01 0 00 000200 TLNE 1,TXTINH ; inhibit text?
220 000150' 037 00 0 00 003373' TMSGC < (A): > ; yes
221 000151' 607 01 0 00 000200 TLNN 1,TXTINH ; inhibit text?
222 000152' 037 00 0 00 003376' TMSGC < (Actual): > ; no
223 000153' 200 00 0 00 004171' MOVE SAVCS3 ; get CSR data
224 000154' 037 13 0 00 000000 PNTHW ; print it
225 000155' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 6
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0510
226
227 ; Error messages (EBUF Read/Write)
228
229 000156' 140000 003402' MC1: MSG!TXNOT![ASCIZ /EBUF data loopback failed./]
230 000157' 260000 000161' CALL!TXALL!M1EBUF
231 LAST!TXALL!MSG![ASCIZ /FRU: Port Modules (MBUS cable may not be connected properly)
232 000160' 170000 003410' /]
233
234 000161' 200 01 0 00 000140* M1EBUF: MOVE 1,SCOSW ; get switches
235 000162' 603 01 0 00 000200 TLNE 1,TXTINH ; inhibit text?
236 000163' 037 00 0 00 003425' TMSGC <EBUF (C): > ; yes
237 000164' 607 01 0 00 000200 TLNN 1,TXTINH ; inhibit text?
238 000165' 037 00 0 00 003430' TMSGC <EBUF (Correct): > ; no
239 000166' 200 00 0 00 004172' MOVE SAVEB1 ; get EBUF data written
240 000167' 037 13 0 00 000000 PNTHW
241 000170' 603 01 0 00 000200 TLNE 1,TXTINH ; inhibit text?
242 000171' 037 00 0 00 003434' TMSGC < (A): > ; yes
243 000172' 607 01 0 00 000200 TLNN 1,TXTINH ; inhibit text?
244 000173' 037 00 0 00 003437' TMSGC < (Actual): > ; no
245 000174' 200 00 0 00 004173' MOVE SAVEB2 ; get EBUF data
246 000175' 037 13 0 00 000000 PNTHW
247 000176' 263 17 0 00 000000 RTN
248
249 ; Error messages (CRAM Read/Write)
250
251 000177' 140000 003443' MD1: MSG!TXNOT![ASCIZ ^CRAM write/read failed.^]
252 000200' 260000 000202' CALL!TXALL!M1CRAM
253 000201' 170000 003346' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
254
255 000202' 200 01 0 00 000161* M1CRAM: MOVE 1,SCOSW ; get switches
256 000203' 037 00 0 00 003450' TMSGC <CRAM Loc: >
257 000204' 200 00 0 00 004166' MOVE SAVCRA ; get address
258 000205' 242 00 0 00 777777 LSH -1 ; position correctly
259 000206' 037 04 0 00 000000 PNT4 ; print it
260 000207' 200 00 0 00 004166' MOVE SAVCRA ; get address
261 000210' 606 00 0 00 000001 TRNN 1 ; left half?
262 000211' 037 00 0 00 003453' TMSG <(left)> ; yes - print it
263 000212' 602 00 0 00 000001 TRNE 1 ; right half?
264 000213' 037 00 0 00 003455' TMSG <(right)> ; yes - print it
265 000214' 603 01 0 00 000200 TLNE 1,TXTINH ; inhibit text?
266 000215' 037 00 0 00 003457' TMSGC <CRAM (C): > ; yes
267 000216' 607 01 0 00 000200 TLNN 1,TXTINH ; inhibit text?
268 000217' 037 00 0 00 003462' TMSGC <CRAM (Correct): > ; no
269 000220' 200 00 0 00 004164' MOVE SAVCR1 ; get CRAM data written
270 000221' 260 17 0 00 000230' GO MPNTC ; print it
271 000222' 603 01 0 00 000200 TLNE 1,TXTINH ; inhibit text?
272 000223' 037 00 0 00 003434' TMSGC < (A): > ; yes
273 000224' 607 01 0 00 000200 TLNN 1,TXTINH ; inhibit text?
274 000225' 037 00 0 00 003437' TMSGC < (Actual): > ; no
275 000226' 200 00 0 00 004165' MOVE SAVCR2 ; get CRAM data
276 000227' 260 17 0 00 000230' GO MPNTC ; print it
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 7
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0511
277
278 000230' 261 17 0 00 000001 MPNTC: PUT 1 ; save AC1
279 000231' 200 01 0 00 000000 MOVE 1,0
280 000232' 135 00 0 00 003466' LDB [POINT 3,1,8] ; get digit 1
281 000233' 037 16 0 00 000003 PNTOCS ; print it
282 000234' 135 00 0 00 003467' LDB [POINT 3,1,11] ; get digit 2
283 000235' 037 16 0 00 000003 PNTOCS ; print it
284 000236' 135 00 0 00 003470' LDB [POINT 3,1,14] ; get digit 3
285 000237' 037 16 0 00 000003 PNTOCS ; print it
286 000240' 135 00 0 00 003471' LDB [POINT 3,1,17] ; get digit 4
287 000241' 037 16 0 00 000003 PNTOCS ; print it
288 000242' 135 00 0 00 003472' LDB [POINT 18,1,35] ; get right 6 octal digits
289 000243' 037 06 0 00 000000 PNT6 ; and print them out
290 000244' 262 17 0 00 000001 GET 1 ; restore AC1
291 000245' 263 17 0 00 000000 RTN ; return
292
293
294 ;#********************************************************************
295 ; Data Patterns
296 ;#********************************************************************
297
298 ; Data patterns (CSR Read/Write)
299
300 000246' 000000 400000 TA1PAT: EXP 400000,400003000000,500003000000 ; bit 18
301 000247' 400003 000000
302 000250' 500003 000000
303 000251' 000000 200000 EXP 200000,500003200000,500003000000 ; bit 19
304 000252' 500003 200000
305 000253' 500003 000000
306 000254' 000000 100000 EXP 100000,500003104000,500003004000 ; bit 20
307 000255' 500003 104000
308 000256' 500003 004000
309 000257' 000000 040000 EXP 040000,500003040000,500003000000 ; bit 21
310 000260' 500003 040000
311 000261' 500003 000000
312 000262' 000000 020000 EXP 020000,500003020000,500003000000 ; bit 22
313 000263' 500003 020000
314 000264' 500003 000000
315 000265' 000000 010000 EXP 010000,500003010000,500003000000 ; bit 23
316 000266' 500003 010000
317 000267' 500003 000000
318 000270' 000000 004000 EXP 004000,500003000000,500003000000 ; bit 24
319 000271' 500003 000000
320 000272' 500003 000000
321 000273' 000000 002000 EXP 002000,500003000000,500003000000 ; bit 25
322 000274' 500003 000000
323 000275' 500003 000000
324 000276' 000000 001000 EXP 001000,500003000000,500003000000 ; bit 26
325 000277' 500003 000000
326 000300' 500003 000000
327 000301' 000000 000400 EXP 000400,500003000400,500003000400 ; bit 27
328 000302' 500003 000400
329 000303' 500003 000400
330 000304' 000000 000200 EXP 000200,500003000000,500003000000 ; bit 28
331 000305' 500003 000000
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 7-1
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0512
332 000306' 500003 000000
333 000307' 000000 000100 EXP 000100,500003000000,500003000000 ; bit 29
334 000310' 500003 000000
335 000311' 500003 000000
336 000312' 000000 000040 EXP 000040,500003000040,500003000040 ; bit 30
337 000313' 500003 000040
338 000314' 500003 000040
339 000315' 000000 000020 EXP 000020,500003000020,500003000020 ; bit 31
340 000316' 500003 000020
341 000317' 500003 000020
342 000320' 000000 000004 EXP 000004,500003000004,500003000000 ; bit 32
343 000321' 500003 000004
344 000322' 500003 000000
345 000323' 000000 000002 EXP 000002,500003000002,500003000000 ; bit 33
346 000324' 500003 000002
347 000325' 500003 000000
348 000326' 000000 000001 EXP 000001,500003000001,500003000000 ; bit 34
349 000327' 500003 000001
350 000330' 500003 000000
351 000331' 000000 000000 EXP 000000,500003000000,500003000000 ; bit 35
352 000332' 500003 000000
353 000333' 500003 000000
354
355 ; Data Patterns (EBUF Read/Write)
356
357 000334' 000000 000000 TC1PAT: EXP 0,-2,525252525252,252525252525
358 000335' 777777 777776
359 000336' 525252 525252
360 000337' 252525 252525
361 000340' 000000 000001 EXP 000000000001,000000000002,000000000004
362 000341' 000000 000002
363 000342' 000000 000004
364 000343' 000000 000010 EXP 000000000010,000000000020,000000000040
365 000344' 000000 000020
366 000345' 000000 000040
367 000346' 000000 000100 EXP 000000000100,000000000200,000000000400
368 000347' 000000 000200
369 000350' 000000 000400
370 000351' 000000 001000 EXP 000000001000,000000002000,000000004000
371 000352' 000000 002000
372 000353' 000000 004000
373 000354' 000000 010000 EXP 000000010000,000000020000,000000040000
374 000355' 000000 020000
375 000356' 000000 040000
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 8
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0513
376 000357' 000000 100000 EXP 000000100000,000000200000,000000400000
377 000360' 000000 200000
378 000361' 000000 400000
379 000362' 000001 000000 EXP 000001000000,000002000000,000004000000
380 000363' 000002 000000
381 000364' 000004 000000
382 000365' 000010 000000 EXP 000010000000,000020000000,000040000000
383 000366' 000020 000000
384 000367' 000040 000000
385 000370' 000100 000000 EXP 000100000000,000200000000,000400000000
386 000371' 000200 000000
387 000372' 000400 000000
388 000373' 001000 000000 EXP 001000000000,002000000000,004000000000
389 000374' 002000 000000
390 000375' 004000 000000
391 000376' 010000 000000 EXP 010000000000,020000000000,040000000000
392 000377' 020000 000000
393 000400' 040000 000000
394 000401' 100000 000000 EXP 100000000000,200000000000,400000000000
395 000402' 200000 000000
396 000403' 400000 000000
397 000404' 777777 777776 EXP 777777777776,777777777775,777777777773
398 000405' 777777 777775
399 000406' 777777 777773
400 000407' 777777 777767 EXP 777777777767,777777777757,777777777737
401 000410' 777777 777757
402 000411' 777777 777737
403 000412' 777777 777677 EXP 777777777677,777777777577,777777777377
404 000413' 777777 777577
405 000414' 777777 777377
406 000415' 777777 776777 EXP 777777776777,777777775777,777777773777
407 000416' 777777 775777
408 000417' 777777 773777
409 000420' 777777 767777 EXP 777777767777,777777757777,777777737777
410 000421' 777777 757777
411 000422' 777777 737777
412 000423' 777777 677777 EXP 777777677777,777777577777,777777377777
413 000424' 777777 577777
414 000425' 777777 377777
415 000426' 777776 777777 EXP 777776777777,777775777777,777773777777
416 000427' 777775 777777
417 000430' 777773 777777
418 000431' 777767 777777 EXP 777767777777,777757777777,777737777777
419 000432' 777757 777777
420 000433' 777737 777777
421 000434' 777677 777777 EXP 777677777777,777577777777,777377777777
422 000435' 777577 777777
423 000436' 777377 777777
424 000437' 776777 777777 EXP 776777777777,775777777777,773777777777
425 000440' 775777 777777
426 000441' 773777 777777
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 9
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0514
427 000442' 767777 777777 EXP 767777777777,757777777777,737777777777
428 000443' 757777 777777
429 000444' 737777 777777
430 000445' 677777 777777 EXP 677777777777,577777777777,377777777777
431 000446' 577777 777777
432 000447' 377777 777777
433 000450' 000000 000377 EXP 377
434
435 ; Data Patterns (CRAM Read/Write)
436
437 000451' 000000 000000 TD1PAT: EXP 0,7777777777,5252525252,2525252525
438 000452' 007777 777777
439 000453' 005252 525252
440 000454' 002525 252525
441 000455' 000000 000377 EXP 377
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 10
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0515
442
443 ;#********************************************************************
444 ;* TEST 2 - Port Hardware Test 2
445 ;
446 ; Description: This test verifies more of the logic on the 3
447 ; port modules, in particular, the 2901's, local
448 ; storage, data mover/formatter and the PLI
449 ; interface logic.
450 ;
451 ; Procedure: KL> Load microcode
452 ; KL> Port Clear
453 ; KL> Start port
454 ;
455 ; Verify local storage
456 ; --------------------
457 ;
458 ; UC> build a data pattern
459 ; UC> write/read all of local storage with this
460 ; data pattern
461 ; UC> do data compare
462 ; If failed - exit test with error code 1 in EBUF
463 ; If passed - do next data pattern until done
464 ;
465 ; Verify formatter
466 ; ----------------
467 ;
468 ; UC> build a data pattern
469 ; UC> write/read formatter with data pattern
470 ; UC> do data compare
471 ; If failed - exit test with error code 2 in EBUF
472 ; If passed - do next data pattern until done
473 ;
474 ; Verify PLI input/output buffers
475 ; -------------------------------
476 ;
477 ; UC> build a data pattern
478 ; UC> write/read PLI input/output buffers with pattern
479 ; UC> do data compare
480 ; If failed - exit test with error code 3 in EBUF
481 ; If passed - do next data pattern until done
482 ;
483 ; Verify 2901 Registers/Operations
484 ; --------------------------------
485 ;
486 ; UC> build a data pattern
487 ; UC> write/read 2901 Registers with pattern
488 ; UC> do data compare
489 ; If failed - exit test with error code 4 in EBUF
490 ; If passed - do next data pattern until done
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 11
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0516
491
492 ; Verify 2901's Shifting Operations
493 ; ---------------------------------
494 ;
495 ; UC> build a data pattern
496 ; UC> Shift 2901 Register left and right with pattern
497 ; UC> do data compare
498 ; If failed - exit test with error code 5 in EBUF
499 ; If passed - do next data pattern until done
500 ;
501 ; Verify shifting of formatter
502 ; ----------------------------
503 ;
504 ; UC> build a data pattern
505 ; UC> write/read formatter with data pattern
506 ; UC> do data compare
507 ; If failed - exit test with error code 6 in EBUF
508 ; If passed - do next data pattern until done
509 ;
510 ; Done
511 ; ----
512 ;
513 ; KL> Read EBUF and determine test disposition
514 ;
515 ; FRU: EBUS/MPROC/CBUS Modules
516 ;#********************************************************************
517
518 ; Initialization
519
520 000456' 201 00 0 00 000000' TST2: MOVEI Z2 ; get address of module start
521 000457' 260 17 0 00 000001* GO TRACE ; handle trace output
522 000460' 201 01 0 00 000510' MOVEI 1,T2M ; set up microcode address
523 000461' 260 17 0 00 000000* GO TLOAD ; load/verify it
524 000462' 263 17 0 00 000000 RTN ; failed - exit test
525
526 ; Do the test
527
528 000463' 260 17 0 00 003100' GO MSTART ; start the test at 5777
529 000464' 201 01 0 00 001750 MOVEI 1,^D1000 ; set up wait of 1 second
530 000465' 260 17 0 00 003041' GO MWAIT ; wait for completion
531
532 ; Handle error printouts
533
534 000466' 027 00 0 00 000473' SCOPER MA2 ; print error message
535 000467' 255 00 0 00 000000 JFCL ; loop on error
536 000470' 254 00 0 00 000471' JRST TX2 ; altmode exit
537
538 ; End of test
539
540 000471' 260 17 0 00 000126* TX2: GO TSTEND ; handle end of test processing
541 000472' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0517
542
543 ; Error messages
544
545 000473' 250000 000475' MA2: LAST!CALL!TXNOT!MA2PNT
546 000474' 060000 003346' TXALL![ASCIZ /FRU: Port Modules/]
547
548 000475' 201 01 0 00 000501' MA2PNT: MOVEI 1,MA2LST ; get list address
549 000476' 201 02 0 00 000007 MOVEI 2,7 ; get list length
550 000477' 260 17 0 00 003111' GO MPRINT ; print data
551 000500' 263 17 0 00 000000 RTN ; return
552
553 000501' 037 00 0 00 003473' MA2LST: TMSGC <No failure detected>
554 000502' 037 00 0 00 003500' TMSGC <Local storage failure>
555 000503' 037 00 0 00 003505' TMSGC <Formatter failure>
556 000504' 037 00 0 00 003511' TMSGC <PLI data path failure - PLI cable may not be installed correctly>
557 000505' 037 00 0 00 003527' TMSGC <2901's failure>
558 000506' 037 00 0 00 003533' TMSGC <2901's shifting failure>
559 000507' 037 00 0 00 003541' TMSGC <Formatter shifting failure>
560
561 ;#********************************************************************
562 ; Microcode:
563 ;#********************************************************************
564
565 ; Initialization
566
567 000510' 577700 000000 T2M: MWORD <ADDR=5777,JZ> ; 5777
568 000511' 000000 000000
569 000512' 000010 000000 MWORD <ADDR=0,JMAP,J=1000> ; 0
570 000513' 000000 000040
571
572 ;#********************************************************************
573 ; Local Storage testing 1000-1300
574 ;#********************************************************************
575
576 ; Build data patterns
577
578 000514' 100000 000000 MWORD <ADDR=1000,CONT,SD0,AND,B=7,D=2> ; 1000
579 000515' 742003 400340
580 000516' 100110 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,OR,D=2> ; 1001 - 0's
581 000517' 432074 000020
582 000520' 100210 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,XNOR,D=2> ; 1002 - comp
583 000521' 472074 000020
584 000522' 100300 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 1003
585 000523' 402073 400740
586 000524' 100410 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,OR,D=2> ; 1004 - 1
587 000525' 432074 000020
588 000526' 100510 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,XNOR,D=2> ; 1005 - comp
589 000527' 472074 000020
590 000530' 100600 420000 MWORD <LDCT,J=42> ; 1006
591 000531' 000000 000300
592 000532' 100700 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 1007
593 000533' 437073 400340
594 000534' 101010 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,OR,D=2> ; 1010 - 2 ...
595 000535' 432074 000020
596 000536' 101110 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,XNOR,D=2> ; 1011 - comp
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-1
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0518
597 000537' 472074 000020
598 000540' 101210 070000 MWORD <RPCT,J=1007> ; 1012
599 000541' 000000 000220
600 000542' 101314 000000 MWORD <JMAP,J=1400,S0A,AND,B=17,D=2> ; 1013 - done
601 000543' 442007 400040
602
603 ; Write/read each page
604
605 000544' 102011 000000 MWORD <ADDR=1020,CJS,J=1100,SD0,OR,B=12,D=1,MGC=0,LSAD>; 1020 - 0
606 000545' 731005 200020
607 000546' 102111 000040 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=40,LSAD> ; 1021 - 1
608 000547' 731005 200020
609 000550' 102211 000100 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=100,LSAD> ; 1022 - 2
610 000551' 731005 200020
611 000552' 102311 000140 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=140,LSAD> ; 1023 - 3
612 000553' 731005 200020
613 000554' 102411 000200 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=200,LSAD> ; 1024 - 4
614 000555' 731005 200020
615 000556' 102511 000240 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=240,LSAD> ; 1025 - 5
616 000557' 731005 200020
617 000560' 102611 000300 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=300,LSAD> ; 1026 - 6
618 000561' 731005 200020
619 000562' 102711 000340 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=340,LSAD> ; 1027 - 7
620 000563' 731005 200020
621 000564' 103011 000400 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=400,LSAD> ; 1030 - 10
622 000565' 731005 200020
623 000566' 103111 000440 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=440,LSAD> ; 1031 - 11
624 000567' 731005 200020
625 000570' 103211 000500 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=500,LSAD> ; 1032 - 12
626 000571' 731005 200020
627 000572' 103311 000540 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=540,LSAD> ; 1033 - 13
628 000573' 731005 200020
629 000574' 103411 000600 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=600,LSAD> ; 1034 - 14
630 000575' 731005 200020
631 000576' 103511 000640 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=640,LSAD> ; 1035 - 15
632 000577' 731005 200020
633 000600' 103611 000700 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=700,LSAD> ; 1036 - 16
634 000601' 731005 200020
635 000602' 103711 000740 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=740,LSAD> ; 1037 - 17
636 000603' 731005 200020
637 000604' 104011 001000 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1000,LSAD> ; 1040 - 20
638 000605' 731005 200020
639 000606' 104111 001040 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1040,LSAD> ; 1041 - 21
640 000607' 731005 200020
641 000610' 104211 001100 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1100,LSAD> ; 1042 - 22
642 000611' 731005 200020
643 000612' 104311 001140 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1140,LSAD> ; 1043 - 23
644 000613' 731005 200020
645 000614' 104411 001200 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1200,LSAD> ; 1044 - 24
646 000615' 731005 200020
647 000616' 104511 001240 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1240,LSAD> ; 1045 - 25
648 000617' 731005 200020
649 000620' 104611 001300 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1300,LSAD> ; 1046 - 26
650 000621' 731005 200020
651 000622' 104711 001340 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1340,LSAD> ; 1047 - 27
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-2
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0519
652 000623' 731005 200020
653 000624' 105011 001400 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1400,LSAD> ; 1050 - 30
654 000625' 731005 200020
655 000626' 105111 001440 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1440,LSAD> ; 1051 - 31
656 000627' 731005 200020
657 000630' 105211 001500 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1500,LSAD> ; 1052 - 32
658 000631' 731005 200020
659 000632' 105311 001540 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1540,LSAD> ; 1053 - 33
660 000633' 731005 200020
661 000634' 105411 001600 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1600,LSAD> ; 1054 - 34
662 000635' 731005 200020
663 000636' 105511 001640 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1640,LSAD> ; 1055 - 35
664 000637' 731005 200020
665 000640' 105611 001700 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1700,LSAD> ; 1056 - 36
666 000641' 731005 200020
667 000642' 105711 001740 MWORD <CJS,J=1100,SD0,OR,B=12,D=1,MGC=1740,LSAD> ; 1057 - 37
668 000643' 731005 200020
669 000644' 106000 000000 MWORD <CRTN> ; 1060 - exit
670 000645' 000000 000240
671
672 ; Write/read the LS address locations
673
674 000646' 110000 002000 MWORD <ADDR=1100,CONT,MGC=0,S0A,OR,A=10,OENA,D=1,RAM,LDLM>; 1100 - 0
675 000647' 431300 230340
676 000650' 110100 000000 MWORD <CONT,MGC=0,SD0,OR,D=2,B=11,RAM,RDLM> ; 1101
677 000651' 732204 620340
678 000652' 110211 040000 MWORD <CJP,J=1104,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1102
679 000653' 161504 420060
680 000654' 110350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1103
681 000655' 732007 640040
682 000656' 110400 002001 MWORD <CONT,MGC=1,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1104 - 1
683 000657' 431300 230340
684 000660' 110500 000001 MWORD <CONT,MGC=1,SD0,OR,D=2,B=11,RAM,RDLM> ; 1105
685 000661' 732204 620340
686 000662' 110611 100000 MWORD <CJP,J=1110,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1106
687 000663' 161504 420060
688 000664' 110750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1107
689 000665' 732007 640040
690 000666' 111000 002002 MWORD <CONT,MGC=2,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1110 - 2
691 000667' 431300 230340
692 000670' 111100 000002 MWORD <CONT,MGC=2,SD0,OR,D=2,B=11,RAM,RDLM> ; 1111
693 000671' 732204 620340
694 000672' 111211 140000 MWORD <CJP,J=1114,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1112
695 000673' 161504 420060
696 000674' 111350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1113
697 000675' 732007 640040
698 000676' 111400 002003 MWORD <CONT,MGC=3,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1114 - 3
699 000677' 431300 230340
700 000700' 111500 000003 MWORD <CONT,MGC=3,SD0,OR,D=2,B=11,RAM,RDLM> ; 1115
701 000701' 732204 620340
702 000702' 111611 200000 MWORD <CJP,J=1120,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1116
703 000703' 161504 420060
704 000704' 111750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1117
705 000705' 732007 640040
706 000706' 112000 002004 MWORD <CONT,MGC=4,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1120 - 4
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-3
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0520
707 000707' 431300 230340
708 000710' 112100 000004 MWORD <CONT,MGC=4,SD0,OR,D=2,B=11,RAM,RDLM> ; 1121
709 000711' 732204 620340
710 000712' 112211 240000 MWORD <CJP,J=1124,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1122
711 000713' 161504 420060
712 000714' 112350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1123
713 000715' 732007 640040
714 000716' 112400 002005 MWORD <CONT,MGC=5,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1124 - 5
715 000717' 431300 230340
716 000720' 112500 000005 MWORD <CONT,MGC=5,SD0,OR,D=2,B=11,RAM,RDLM> ; 1125
717 000721' 732204 620340
718 000722' 112611 300000 MWORD <CJP,J=1130,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1126
719 000723' 161504 420060
720 000724' 112750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1127
721 000725' 732007 640040
722 000726' 113000 002006 MWORD <CONT,MGC=6,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1130 - 6
723 000727' 431300 230340
724 000730' 113100 000006 MWORD <CONT,MGC=6,SD0,OR,D=2,B=11,RAM,RDLM> ; 1131
725 000731' 732204 620340
726 000732' 113211 340000 MWORD <CJP,J=1134,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1132
727 000733' 161504 420060
728 000734' 113350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1133
729 000735' 732007 640040
730 000736' 113400 002007 MWORD <CONT,MGC=7,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1134 - 7
731 000737' 431300 230340
732 000740' 113500 000007 MWORD <CONT,MGC=7,SD0,OR,D=2,B=11,RAM,RDLM> ; 1135
733 000741' 732204 620340
734 000742' 113611 400000 MWORD <CJP,J=1140,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1136
735 000743' 161504 420060
736 000744' 113750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1137
737 000745' 732007 640040
738 000746' 114000 002010 MWORD <CONT,MGC=10,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1140 - 10
739 000747' 431300 230340
740 000750' 114100 000010 MWORD <CONT,MGC=10,SD0,OR,D=2,B=11,RAM,RDLM> ; 1141
741 000751' 732204 620340
742 000752' 114211 440000 MWORD <CJP,J=1144,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1142
743 000753' 161504 420060
744 000754' 114350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1143
745 000755' 732007 640040
746 000756' 114400 002011 MWORD <CONT,MGC=11,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1144 - 11
747 000757' 431300 230340
748 000760' 114500 000011 MWORD <CONT,MGC=11,SD0,OR,D=2,B=11,RAM,RDLM> ; 1145
749 000761' 732204 620340
750 000762' 114611 500000 MWORD <CJP,J=1150,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1146
751 000763' 161504 420060
752 000764' 114750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1147
753 000765' 732007 640040
754 000766' 115000 002012 MWORD <CONT,MGC=12,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1150 - 12
755 000767' 431300 230340
756 000770' 115100 000012 MWORD <CONT,MGC=12,SD0,OR,D=2,B=11,RAM,RDLM> ; 1151
757 000771' 732204 620340
758 000772' 115211 540000 MWORD <CJP,J=1154,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1152
759 000773' 161504 420060
760 000774' 115350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1153
761 000775' 732007 640040
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-4
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0521
762 000776' 115400 002013 MWORD <CONT,MGC=13,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1154 - 13
763 000777' 431300 230340
764 001000' 115500 000013 MWORD <CONT,MGC=13,SD0,OR,D=2,B=11,RAM,RDLM> ; 1155
765 001001' 732204 620340
766 001002' 115611 600000 MWORD <CJP,J=1160,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1156
767 001003' 161504 420060
768 001004' 115750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1157
769 001005' 732007 640040
770 001006' 116000 002014 MWORD <CONT,MGC=14,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1160 - 14
771 001007' 431300 230340
772 001010' 116100 000014 MWORD <CONT,MGC=14,SD0,OR,D=2,B=11,RAM,RDLM> ; 1161
773 001011' 732204 620340
774 001012' 116211 640000 MWORD <CJP,J=1164,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1162
775 001013' 161504 420060
776 001014' 116350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1163
777 001015' 732007 640040
778 001016' 116400 002015 MWORD <CONT,MGC=15,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1164 - 15
779 001017' 431300 230340
780 001020' 116500 000015 MWORD <CONT,MGC=15,SD0,OR,D=2,B=11,RAM,RDLM> ; 1165
781 001021' 732204 620340
782 001022' 116611 700000 MWORD <CJP,J=1170,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1166
783 001023' 161504 420060
784 001024' 116750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1167
785 001025' 732007 640040
786 001026' 117000 002016 MWORD <CONT,MGC=16,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1170 - 16
787 001027' 431300 230340
788 001030' 117100 000016 MWORD <CONT,MGC=16,SD0,OR,D=2,B=11,RAM,RDLM> ; 1171
789 001031' 732204 620340
790 001032' 117211 740000 MWORD <CJP,J=1174,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1172
791 001033' 161504 420060
792 001034' 117350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1173
793 001035' 732007 640040
794 001036' 117400 002017 MWORD <CONT,MGC=17,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1174 - 17
795 001037' 431300 230340
796 001040' 117500 000017 MWORD <CONT,MGC=17,SD0,OR,D=2,B=11,RAM,RDLM> ; 1175
797 001041' 732204 620340
798 001042' 117612 000000 MWORD <CJP,J=1200,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1176
799 001043' 161504 420060
800 001044' 117750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1177
801 001045' 732007 640040
802 001046' 120000 002020 MWORD <CONT,MGC=20,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1200 - 20
803 001047' 431300 230340
804 001050' 120100 000020 MWORD <CONT,MGC=20,SD0,OR,D=2,B=11,RAM,RDLM> ; 1201
805 001051' 732204 620340
806 001052' 120212 040000 MWORD <CJP,J=1204,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1202
807 001053' 161504 420060
808 001054' 120350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1203
809 001055' 732007 640040
810 001056' 120400 002021 MWORD <CONT,MGC=21,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1204 - 21
811 001057' 431300 230340
812 001060' 120500 000021 MWORD <CONT,MGC=21,SD0,OR,D=2,B=11,RAM,RDLM> ; 1205
813 001061' 732204 620340
814 001062' 120612 100000 MWORD <CJP,J=1210,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1206
815 001063' 161504 420060
816 001064' 120750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1207
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-5
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0522
817 001065' 732007 640040
818 001066' 121000 002022 MWORD <CONT,MGC=22,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1210 - 22
819 001067' 431300 230340
820 001070' 121100 000022 MWORD <CONT,MGC=22,SD0,OR,D=2,B=11,RAM,RDLM> ; 1211
821 001071' 732204 620340
822 001072' 121212 140000 MWORD <CJP,J=1214,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1212
823 001073' 161504 420060
824 001074' 121350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1213
825 001075' 732007 640040
826 001076' 121400 002023 MWORD <CONT,MGC=23,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1214 - 23
827 001077' 431300 230340
828 001100' 121500 000023 MWORD <CONT,MGC=23,SD0,OR,D=2,B=11,RAM,RDLM> ; 1215
829 001101' 732204 620340
830 001102' 121612 200000 MWORD <CJP,J=1220,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1216
831 001103' 161504 420060
832 001104' 121750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1217
833 001105' 732007 640040
834 001106' 122000 002024 MWORD <CONT,MGC=24,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1220 - 24
835 001107' 431300 230340
836 001110' 122100 000024 MWORD <CONT,MGC=24,SD0,OR,D=2,B=11,RAM,RDLM> ; 1221
837 001111' 732204 620340
838 001112' 122212 240000 MWORD <CJP,J=1224,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1222
839 001113' 161504 420060
840 001114' 122350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1223
841 001115' 732007 640040
842 001116' 122400 002025 MWORD <CONT,MGC=25,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1224 - 25
843 001117' 431300 230340
844 001120' 122500 000025 MWORD <CONT,MGC=25,SD0,OR,D=2,B=11,RAM,RDLM> ; 1225
845 001121' 732204 620340
846 001122' 122612 300000 MWORD <CJP,J=1230,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1226
847 001123' 161504 420060
848 001124' 122750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1227
849 001125' 732007 640040
850 001126' 123000 002026 MWORD <CONT,MGC=26,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1230 - 26
851 001127' 431300 230340
852 001130' 123100 000026 MWORD <CONT,MGC=26,SD0,OR,D=2,B=11,RAM,RDLM> ; 1231
853 001131' 732204 620340
854 001132' 123212 340000 MWORD <CJP,J=1234,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1232
855 001133' 161504 420060
856 001134' 123350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1233
857 001135' 732007 640040
858 001136' 123400 002027 MWORD <CONT,MGC=27,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1234 - 27
859 001137' 431300 230340
860 001140' 123500 000027 MWORD <CONT,MGC=27,SD0,OR,D=2,B=11,RAM,RDLM> ; 1235
861 001141' 732204 620340
862 001142' 123612 400000 MWORD <CJP,J=1240,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1236
863 001143' 161504 420060
864 001144' 123750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1237
865 001145' 732007 640040
866 001146' 124000 002030 MWORD <CONT,MGC=30,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1240 - 30
867 001147' 431300 230340
868 001150' 124100 000030 MWORD <CONT,MGC=30,SD0,OR,D=2,B=11,RAM,RDLM> ; 1241
869 001151' 732204 620340
870 001152' 124212 440000 MWORD <CJP,J=1244,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1242
871 001153' 161504 420060
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-6
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0523
872 001154' 124350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1243
873 001155' 732007 640040
874 001156' 124400 002031 MWORD <CONT,MGC=31,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1244 - 31
875 001157' 431300 230340
876 001160' 124500 000031 MWORD <CONT,MGC=31,SD0,OR,D=2,B=11,RAM,RDLM> ; 1245
877 001161' 732204 620340
878 001162' 124612 500000 MWORD <CJP,J=1250,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1246
879 001163' 161504 420060
880 001164' 124750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1247
881 001165' 732007 640040
882 001166' 125000 002032 MWORD <CONT,MGC=32,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1250 - 32
883 001167' 431300 230340
884 001170' 125100 000032 MWORD <CONT,MGC=32,SD0,OR,D=2,B=11,RAM,RDLM> ; 1251
885 001171' 732204 620340
886 001172' 125212 540000 MWORD <CJP,J=1254,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1252
887 001173' 161504 420060
888 001174' 125350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1253
889 001175' 732007 640040
890 001176' 125400 002033 MWORD <CONT,MGC=33,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1254 - 33
891 001177' 431300 230340
892 001200' 125500 000033 MWORD <CONT,MGC=33,SD0,OR,D=2,B=11,RAM,RDLM> ; 1255
893 001201' 732204 620340
894 001202' 125612 600000 MWORD <CJP,J=1260,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1256
895 001203' 161504 420060
896 001204' 125750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1257
897 001205' 732007 640040
898 001206' 126000 002034 MWORD <CONT,MGC=34,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1260 - 34
899 001207' 431300 230340
900 001210' 126100 000034 MWORD <CONT,MGC=34,SD0,OR,D=2,B=11,RAM,RDLM> ; 1261
901 001211' 732204 620340
902 001212' 126212 640000 MWORD <CJP,J=1264,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1262
903 001213' 161504 420060
904 001214' 126350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1263
905 001215' 732007 640040
906 001216' 126400 002035 MWORD <CONT,MGC=35,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1264 - 35
907 001217' 431300 230340
908 001220' 126500 000035 MWORD <CONT,MGC=35,SD0,OR,D=2,B=11,RAM,RDLM> ; 1265
909 001221' 732204 620340
910 001222' 126612 700000 MWORD <CJP,J=1270,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1266
911 001223' 161504 420060
912 001224' 126750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1267
913 001225' 732007 640040
914 001226' 127000 002036 MWORD <CONT,MGC=36,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1270 - 36
915 001227' 431300 230340
916 001230' 127100 000036 MWORD <CONT,MGC=36,SD0,OR,D=2,B=11,RAM,RDLM> ; 1271
917 001231' 732204 620340
918 001232' 127212 740000 MWORD <CJP,J=1274,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1272
919 001233' 161504 420060
920 001234' 127350 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1273
921 001235' 732007 640040
922 001236' 127400 002037 MWORD <CONT,MGC=37,S0A,OR,A=10,OENA,D=1,RAM,LDLM> ; 1274 - 37
923 001237' 431300 230340
924 001240' 127500 000037 MWORD <CONT,MGC=37,SD0,OR,D=2,B=11,RAM,RDLM> ; 1275
925 001241' 732204 620340
926 001242' 127613 000000 MWORD <CJP,J=1300,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1276
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-7
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0524
927 001243' 161504 420060
928 001244' 127750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=1,SKCN> ; 1277
929 001245' 732007 640040
930 001246' 130000 000000 MWORD <CRTN> ; 1300
931 001247' 000000 000240
932
933 ;#********************************************************************
934 ; Formatter Data Loopback 1400-1424
935 ;#********************************************************************
936
937 ; Build data patterns
938
939 001250' 140000 000000 MWORD <ADDR=1400,CONT,SD0,AND,B=7,D=2> ; 1400
940 001251' 742003 400340
941 001252' 140114 200000 MWORD <CJS,J=1420,S0A,A=7,B=10,OR,D=2> ; 1401 - 0's
942 001253' 432074 000020
943 001254' 140214 200000 MWORD <CJS,J=1420,S0A,A=7,B=10,XNOR,D=2> ; 1402 - comp
944 001255' 472074 000020
945 001256' 140300 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 1403
946 001257' 402073 400740
947 001260' 140414 200000 MWORD <CJS,J=1420,S0A,A=7,B=10,OR,D=2> ; 1404 - 1
948 001261' 432074 000020
949 001262' 140514 200000 MWORD <CJS,J=1420,S0A,A=7,B=10,XNOR,D=2> ; 1405 - comp
950 001263' 472074 000020
951 001264' 140600 420000 MWORD <LDCT,J=42> ; 1406
952 001265' 000000 000300
953 001266' 140700 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 1407
954 001267' 437073 400340
955 001270' 141014 200000 MWORD <CJS,J=1420,S0A,A=7,B=10,OR,D=2> ; 1410 - 2 ...
956 001271' 432074 000020
957 001272' 141114 200000 MWORD <CJS,J=1420,S0A,A=7,B=10,XNOR,D=2> ; 1411 - comp
958 001273' 472074 000020
959 001274' 141214 070000 MWORD <RPCT,J=1407> ; 1412
960 001275' 000000 000220
961 001276' 141320 000000 MWORD <JMAP,J=2000,S0A,AND,B=17,D=2> ; 1413 - done
962 001277' 442007 400040
963
964 ; Write to formatter, read back, and compare
965
966 001300' 142000 002040 MWORD <ADDR=1420,CONT,S0A,OR,A=10,D=1,OENA,SELF,MGC=40>; 1420
967 001301' 431100 003340
968 001302' 142100 000200 MWORD <CONT,SD0,B=11,D=2,SELM,MGC=200> ; 1421
969 001303' 702004 402340
970 001304' 142214 240000 MWORD <CJP,J=1424,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 1422
971 001305' 161504 420060
972 001306' 142350 000002 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=2,SKCN> ; 1423
973 001307' 732007 640040
974 001310' 142400 000000 MWORD <CRTN> ; 1424
975 001311' 000000 000240
976
977 ;#********************************************************************
978 ; PLI Data Loopback 2000-2106
979 ;#********************************************************************
980
981 ; Build data patterns
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-8
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0525
982
983 001312' 200020 010000 MWORD <ADDR=2000,JMAP,J=2001> ; 2000
984 001313' 000000 000040
985 001314' 200100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 2001
986 001315' 342006 000300
987 001316' 200220 020000 MWORD <RPCT,J=2002,S0B,PLUS,B=14,D=7,CRY> ; 2002
988 001317' 307006 000620
989 001320' 200300 000000 MWORD <CONT,S0B,PLUS,B=14,D=2,CRY> ; 2003
990 001321' 302006 000740
991 001322' 200400 000000 MWORD <CONT,SD0,AND,B=7,D=2> ; 2004
992 001323' 742003 400340
993 001324' 200521 000000 MWORD <CJS,J=2100,S0A,A=7,B=10,OR,D=2> ; 2005 - 0's
994 001325' 432074 000020
995 001326' 200621 000000 MWORD <CJS,J=2100,S0A,A=7,B=10,XNOR,D=2> ; 2006 - comp
996 001327' 472074 000020
997 001330' 200700 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 2007
998 001331' 402073 400740
999 001332' 201021 000000 MWORD <CJS,J=2100,S0A,A=7,B=10,OR,D=2> ; 2010 - 1
1000 001333' 432074 000020
1001 001334' 201121 000000 MWORD <CJS,J=2100,S0A,A=7,B=10,XNOR,D=2> ; 2011 - comp
1002 001335' 472074 000020
1003
1004 001336' 201200 060000 MWORD <LDCT,J=6> ; 2012
1005 001337' 000000 000300
1006 001340' 201300 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 2013
1007 001341' 437073 400340
1008 001342' 201421 000000 MWORD <CJS,J=2100,S0A,A=7,B=10,OR,D=2> ; 2014 - 2 ...
1009 001343' 432074 000020
1010 001344' 201521 000000 MWORD <CJS,J=2100,S0A,A=7,B=10,XNOR,D=2> ; 2015 - comp
1011 001345' 472074 000020
1012 001346' 201620 130000 MWORD <RPCT,J=2013> ; 2016
1013 001347' 000000 000220
1014 001350' 201724 000000 MWORD <JMAP,J=2400,S0A,AND,B=17,D=2> ; 2017 - done
1015 001351' 442007 400040
1016
1017 ; Write to PLI, read back, and compare
1018
1019 001352' 210000 000000 MWORD <ADDR=2100,CONT,SAB,A=14,B=10,AND,D=2> ; 2100
1020 001353' 142144 000340
1021 001354' 210100 002040 MWORD <CONT,S0B,OR,D=1,B=10,OENA,SELM,MGC=40> ; 2101
1022 001355' 331004 002340
1023 001356' 210200 000006 MWORD <CONT,SD0,D=1,SELP,MGC=6> ; 2102
1024 001357' 701000 001340
1025 001360' 210300 000300 MWORD <CONT,SD0,OR,B=11,D=2,SELM,MGC=300> ; 2103
1026 001361' 732004 402340
1027 001362' 210400 000000 MWORD <CONT,SAB,A=14,B=11,AND,D=2> ; 2104
1028 001363' 142144 400340
1029 001364' 210521 070000 MWORD <CJP,J=2107,SAB,XOR,A=10,B=11,D=1,CENA,CCFZ> ; 2105
1030 001365' 161504 420060
1031 001366' 210650 000003 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=3,SKCN> ; 2106
1032 001367' 732007 640040
1033 001370' 210700 000000 MWORD <CRTN> ; 2107
1034 001371' 000000 000240
1035
1036 ;#********************************************************************
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-9
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0526
1037 ; Verify 2901 Registers (2400-2526)
1038 ;#********************************************************************
1039
1040 ; Build data patterns
1041
1042 001372' 240000 000000 MWORD <ADDR=2400,CONT,SD0,AND,B=7,D=2> ; 2400
1043 001373' 742003 400340
1044 001374' 240124 200000 MWORD <CJS,J=2420,S0A,A=7,B=10,OR,D=2> ; 2401 - 0's
1045 001375' 432074 000020
1046 001376' 240224 200000 MWORD <CJS,J=2420,S0A,A=7,B=10,XNOR,D=2> ; 2402 - comp
1047 001377' 472074 000020
1048 001400' 240300 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 2403
1049 001401' 402073 400740
1050 001402' 240424 200000 MWORD <CJS,J=2420,S0A,A=7,B=10,OR,D=2> ; 2404 - 1
1051 001403' 432074 000020
1052 001404' 240524 200000 MWORD <CJS,J=2420,S0A,A=7,B=10,XNOR,D=2> ; 2405 - comp
1053 001405' 472074 000020
1054
1055 001406' 240600 420000 MWORD <LDCT,J=42> ; 2406
1056 001407' 000000 000300
1057 001410' 240700 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 2407
1058 001411' 437073 400340
1059 001412' 241024 200000 MWORD <CJS,J=2420,S0A,A=7,B=10,OR,D=2> ; 2410 - 2 ...
1060 001413' 432074 000020
1061 001414' 241124 200000 MWORD <CJS,J=2420,S0A,A=7,B=10,XNOR,D=2> ; 2411 - comp
1062 001415' 472074 000020
1063 001416' 241224 070000 MWORD <RPCT,J=2407> ; 2412
1064 001417' 000000 000220
1065 001420' 241330 000000 MWORD <JMAP,J=3000,S0A,AND,B=17,D=2> ; 2413 - done
1066 001421' 442007 400040
1067
1068 ; Write/read 2901 registers with various operations and compare
1069
1070 001422' 242000 002000 MWORD <ADDR=2420,CONT,S0A,A=10,B=0,OR,D=2,OENA,LDLM,MGC=0>
1071 001423' 432100 230340
1072 001424' 242100 000000 MWORD <CONT,S0A,A=0,OR,B=1,D=2> ; 2421
1073 001425' 432000 400340
1074 001426' 242200 000000 MWORD <CONT,S0A,A=1,OR,B=2,D=2> ; 2422
1075 001427' 432011 000340
1076 001430' 242300 000000 MWORD <CONT,S0A,A=2,OR,B=3,D=2> ; 2423
1077 001431' 432021 400340
1078 001432' 242400 000000 MWORD <CONT,S0A,A=3,OR,B=4,D=2> ; 2424
1079 001433' 432032 000340
1080 001434' 242500 000000 MWORD <CONT,S0A,A=4,OR,B=5,D=2> ; 2425
1081 001435' 432042 400340
1082 001436' 242600 000000 MWORD <CONT,S0A,A=5,OR,B=6,D=2> ; 2426
1083 001437' 432053 000340
1084 001440' 242700 000000 MWORD <CONT,S0A,A=6,OR,B=7,D=2> ; 2427
1085 001441' 432063 400340
1086 001442' 243000 000000 MWORD <CONT,S0A,A=7,OR,B=10,D=2> ; 2430
1087 001443' 432074 000340
1088 001444' 243100 000000 MWORD <CONT,S0A,A=10,OR,B=11,D=2> ; 2431
1089 001445' 432104 400340
1090 001446' 243200 000000 MWORD <CONT,S0A,A=11,OR,B=12,D=2> ; 2432
1091 001447' 432115 000340
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-10
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0527
1092 001450' 243300 000000 MWORD <CONT,S0A,A=12,OR,B=13,D=2> ; 2433
1093 001451' 432125 400340
1094 001452' 243400 000000 MWORD <CONT,S0A,A=13,OR,B=14,D=2> ; 2434
1095 001453' 432136 000340
1096 001454' 243500 000000 MWORD <CONT,S0A,A=14,OR,B=15,D=2> ; 2435
1097 001455' 432146 400340
1098 001456' 243600 000000 MWORD <CONT,S0A,A=15,OR,B=16,D=2> ; 2436
1099 001457' 432157 000340
1100 001460' 243700 000000 MWORD <CONT,S0A,A=16,OR,B=17,D=2> ; 2437
1101 001461' 432167 400340
1102 001462' 244000 000000 MWORD <CONT,S0A,A=17,OR,D=0> ; 2440
1103 001463' 430170 000340
1104 001464' 244100 000000 MWORD <CONT,SAB,A=0,B=0,AND,D=2> ; 2441
1105 001465' 142000 000340
1106 001466' 244200 000000 MWORD <CONT,SAB,A=1,B=0,AND,D=2> ; 2442
1107 001467' 142010 000340
1108 001470' 244300 000000 MWORD <CONT,SAB,A=2,B=0,AND,D=2> ; 2443
1109 001471' 142020 000340
1110 001472' 244400 000000 MWORD <CONT,SAB,A=3,B=0,AND,D=2> ; 2444
1111 001473' 142030 000340
1112 001474' 244500 000000 MWORD <CONT,SAB,A=4,B=0,AND,D=2> ; 2445
1113 001475' 142040 000340
1114 001476' 244600 000000 MWORD <CONT,SAB,A=5,B=0,AND,D=2> ; 2446
1115 001477' 142050 000340
1116 001500' 244700 000000 MWORD <CONT,SAB,A=6,B=0,AND,D=2> ; 2447
1117 001501' 142060 000340
1118 001502' 245000 000000 MWORD <CONT,SAB,A=7,B=0,AND,D=2> ; 2450
1119 001503' 142070 000340
1120 001504' 245100 000000 MWORD <CONT,SAB,A=10,B=0,AND,D=2> ; 2451
1121 001505' 142100 000340
1122 001506' 245200 000000 MWORD <CONT,SAB,A=11,B=0,AND,D=2> ; 2452
1123 001507' 142110 000340
1124 001510' 245300 000000 MWORD <CONT,SAB,A=12,B=0,AND,D=2> ; 2453
1125 001511' 142120 000340
1126 001512' 245400 000000 MWORD <CONT,SAB,A=13,B=0,AND,D=2> ; 2454
1127 001513' 142130 000340
1128 001514' 245500 000000 MWORD <CONT,SAB,A=14,B=0,AND,D=2> ; 2455
1129 001515' 142140 000340
1130 001516' 245600 000000 MWORD <CONT,SAB,A=15,B=0,AND,D=2> ; 2456
1131 001517' 142150 000340
1132 001520' 245700 000000 MWORD <CONT,SAB,A=16,B=0,AND,D=2> ; 2457
1133 001521' 142160 000340
1134 001522' 246000 000000 MWORD <CONT,SAB,A=17,B=0,AND,D=2> ; 2460
1135 001523' 142170 000340
1136 001524' 246100 000000 MWORD <CONT,SAQ,A=0,B=0,AND,D=2> ; 2461
1137 001525' 042000 000340
1138 001526' 246200 000000 MWORD <CONT,S0A,A=0,PLUS,B=1,D=2> ; 2462
1139 001527' 402000 400340
1140 001530' 246300 000000 MWORD <CONT,S0A,A=1,PLUS,B=2,D=2> ; 2463
1141 001531' 402011 000340
1142 001532' 246400 000000 MWORD <CONT,S0A,A=2,PLUS,B=3,D=2> ; 2464
1143 001533' 402021 400340
1144 001534' 246500 000000 MWORD <CONT,S0A,A=3,PLUS,B=4,D=2> ; 2465
1145 001535' 402032 000340
1146 001536' 246600 000000 MWORD <CONT,S0A,A=4,PLUS,B=5,D=2> ; 2466
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-11
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0528
1147 001537' 402042 400340
1148 001540' 246700 000000 MWORD <CONT,S0A,A=5,PLUS,B=6,D=2> ; 2467
1149 001541' 402053 000340
1150 001542' 247000 000000 MWORD <CONT,S0A,A=6,PLUS,B=7,D=2> ; 2470
1151 001543' 402063 400340
1152 001544' 247100 000000 MWORD <CONT,S0A,A=7,PLUS,B=10,D=2> ; 2471
1153 001545' 402074 000340
1154 001546' 247200 000000 MWORD <CONT,S0A,A=10,PLUS,B=11,D=2> ; 2472
1155 001547' 402104 400340
1156 001550' 247300 000000 MWORD <CONT,S0A,A=11,PLUS,B=12,D=2> ; 2473
1157 001551' 402115 000340
1158 001552' 247400 000000 MWORD <CONT,S0A,A=12,PLUS,B=13,D=2> ; 2474
1159 001553' 402125 400340
1160 001554' 247500 000000 MWORD <CONT,S0A,A=13,PLUS,B=14,D=2> ; 2475
1161 001555' 402136 000340
1162 001556' 247600 000000 MWORD <CONT,S0A,A=14,PLUS,B=15,D=2> ; 2476
1163 001557' 402146 400340
1164 001560' 247700 000000 MWORD <CONT,S0A,A=15,PLUS,B=16,D=2> ; 2477
1165 001561' 402157 000340
1166 001562' 250000 000000 MWORD <CONT,S0A,A=16,PLUS,B=17,D=2> ; 2500
1167 001563' 402167 400340
1168 001564' 250100 000000 MWORD <CONT,S0A,A=17,PLUS,D=0> ; 2501
1169 001565' 400170 000340
1170 001566' 250200 000000 MWORD <CONT,SAB,A=0,B=0,OR,D=2> ; 2502
1171 001567' 132000 000340
1172 001570' 250300 000000 MWORD <CONT,SAB,A=1,B=0,OR,D=2> ; 2503
1173 001571' 132010 000340
1174 001572' 250400 000000 MWORD <CONT,SAB,A=2,B=0,OR,D=2> ; 2504
1175 001573' 132020 000340
1176 001574' 250500 000000 MWORD <CONT,SAB,A=3,B=0,OR,D=2> ; 2505
1177 001575' 132030 000340
1178 001576' 250600 000000 MWORD <CONT,SAB,A=4,B=0,OR,D=2> ; 2506
1179 001577' 132040 000340
1180 001600' 250700 000000 MWORD <CONT,SAB,A=5,B=0,OR,D=2> ; 2507
1181 001601' 132050 000340
1182 001602' 251000 000000 MWORD <CONT,SAB,A=6,B=0,OR,D=2> ; 2510
1183 001603' 132060 000340
1184 001604' 251100 000000 MWORD <CONT,SAB,A=7,B=0,OR,D=2> ; 2511
1185 001605' 132070 000340
1186 001606' 251200 000000 MWORD <CONT,SAB,A=10,B=0,OR,D=2> ; 2512
1187 001607' 132100 000340
1188 001610' 251300 000000 MWORD <CONT,SAB,A=11,B=0,OR,D=2> ; 2513
1189 001611' 132110 000340
1190 001612' 251400 000000 MWORD <CONT,SAB,A=12,B=0,OR,D=2> ; 2514
1191 001613' 132120 000340
1192 001614' 251500 000000 MWORD <CONT,SAB,A=13,B=0,OR,D=2> ; 2515
1193 001615' 132130 000340
1194 001616' 251600 000000 MWORD <CONT,SAB,A=14,B=0,OR,D=2> ; 2516
1195 001617' 132140 000340
1196 001620' 251700 000000 MWORD <CONT,SAB,A=15,B=0,OR,D=2> ; 2517
1197 001621' 132150 000340
1198 001622' 252000 000000 MWORD <CONT,SAB,A=16,B=0,OR,D=2> ; 2520
1199 001623' 132160 000340
1200 001624' 252100 000000 MWORD <CONT,SAB,A=17,B=0,OR,D=2> ; 2521
1201 001625' 132170 000340
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-12
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0529
1202 001626' 252200 000000 MWORD <CONT,SAQ,A=0,B=0,OR,D=2> ; 2522
1203 001627' 032000 000340
1204 001630' 252300 000000 MWORD <CONT,SD0,OR,D=2,B=1,RDLM,MGC=0> ; 2523
1205 001631' 732000 620340
1206 001632' 252425 260000 MWORD <CJP,J=2526,SAB,XOR,A=0,B=1,D=1,CENA,CCFZ> ; 2524
1207 001633' 161400 420060
1208 001634' 252550 000004 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=4,SKCN> ; 2525
1209 001635' 732007 640040
1210 001636' 252600 000000 MWORD <CRTN> ; 2526
1211 001637' 000000 000240
1212
1213 ;#********************************************************************
1214 ; Verify 2901's Shifting Operations (3000-3032)
1215 ;#********************************************************************
1216
1217 ; Shift zeros, ensure result is always zero
1218
1219 001640' 300010 000000 MWORD <ADDR=3000,LDCT,J=1000,S0A,AND,D=2> ; 3000
1220 001641' 442000 000300
1221 001642' 300130 030000 MWORD <CJP,J=3003,S0A,OR,D=4,CENA,CCFZ> ; 3001
1222 001643' 434400 020060
1223 001644' 300250 000005 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=5,SKCN> ; 3002
1224 001645' 732007 640040
1225 001646' 300330 050000 MWORD <CJP,J=3005,S0A,OR,D=5,CENA,CCFZ> ; 3003
1226 001647' 435400 020060
1227 001650' 300450 000005 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=5,SKCN> ; 3004
1228 001651' 732007 640040
1229 001652' 300530 070000 MWORD <CJP,J=3007,S0A,OR,D=6,CENA,CCFZ> ; 3005
1230 001653' 436400 020060
1231 001654' 300650 000005 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=5,SKCN> ; 3006
1232 001655' 732007 640040
1233 001656' 300730 110000 MWORD <CJP,J=3011,S0A,OR,D=7,CENA,CCFZ> ; 3007
1234 001657' 437400 020060
1235 001660' 301050 000005 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=5,SKCN> ; 3010
1236 001661' 732007 640040
1237 001662' 301130 010000 MWORD <RPCT,J=3001,D=1> ; 3011
1238 001663' 001000 000220
1239
1240 ; Shift ones, ensure result is only zero after 36'th shift
1241
1242 001664' 301200 420000 MWORD <LDCT,J=42,S0A,AND,D=2> ; 3012
1243 001665' 442000 000300
1244 001666' 301300 000000 MWORD <CONT,S0A,XNOR,D=2> ; 3013
1245 001667' 472000 000340
1246 001670' 301430 270000 MWORD <CJP,J=3027,S0A,OR,D=6,CENA,CCFZ> ; 3014
1247 001671' 436400 020060
1248 001672' 301530 270000 MWORD <CJP,J=3027,S0A,OR,D=4,CENA,CCFZ> ; 3015
1249 001673' 434400 020060
1250 001674' 301630 270000 MWORD <CJP,J=3027,S0A,OR,D=7,CENA,CCFZ> ; 3016
1251 001675' 437400 020060
1252 001676' 301730 270000 MWORD <CJP,J=3027,S0A,OR,D=5,CENA,CCFZ> ; 3017
1253 001677' 435400 020060
1254 001700' 302030 270000 MWORD <CJP,J=3027,S0A,OR,D=6,CENA,CCFZ> ; 3020
1255 001701' 436400 020060
1256 001702' 302130 270000 MWORD <CJP,J=3027,S0A,OR,D=4,CENA,CCFZ> ; 3021
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-13
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0530
1257 001703' 434400 020060
1258 001704' 302230 270000 MWORD <CJP,J=3027,S0A,OR,D=7,CENA,CCFZ> ; 3022
1259 001705' 437400 020060
1260 001706' 302330 270000 MWORD <CJP,J=3027,S0A,OR,D=5,CENA,CCFZ> ; 3023
1261 001707' 435400 020060
1262 001710' 302430 270000 MWORD <CJP,J=3027,S0A,OR,D=6,CENA,CCFZ> ; 3024
1263 001711' 436400 020060
1264 001712' 302530 140000 MWORD <RPCT,J=3014,D=1> ; 3025
1265 001713' 001000 000220
1266 001714' 302630 300000 MWORD <JMAP,J=3030,D=1> ; 3026
1267 001715' 001000 000040
1268 001716' 302750 000005 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=5,SKCN> ; 3027
1269 001717' 732007 640040
1270 001720' 303030 270000 MWORD <CJP,J=3027,S0A,OR,D=6,CENA,CCFZ> ; 3030
1271 001721' 436400 020060
1272 001722' 303134 000000 MWORD <CJP,J=3400,S0A,OR,D=6,CENA,CCFZ> ; 3031
1273 001723' 436400 020060
1274 001724' 303250 000005 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=5,SKCN> ; 3032
1275 001725' 732007 640040
1276
1277 ;#********************************************************************
1278 ; Verify shifting of formatter (3400-3441)
1279 ;#********************************************************************
1280
1281 ; Build data patterns
1282
1283 001726' 340000 000000 MWORD <ADDR=3400,CONT,SD0,AND,B=7,D=2> ; 3400
1284 001727' 742003 400340
1285 001730' 340134 200000 MWORD <CJS,J=3420,S0A,A=7,B=10,OR,D=2> ; 3401 - 0's
1286 001731' 432074 000020
1287 001732' 340234 200000 MWORD <CJS,J=3420,S0A,A=7,B=10,XNOR,D=2> ; 3402 - comp
1288 001733' 472074 000020
1289 001734' 340300 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 3403
1290 001735' 402073 400740
1291 001736' 340434 200000 MWORD <CJS,J=3420,S0A,A=7,B=10,OR,D=2> ; 3404 - 1
1292 001737' 432074 000020
1293 001740' 340534 200000 MWORD <CJS,J=3420,S0A,A=7,B=10,XNOR,D=2> ; 3405 - comp
1294 001741' 472074 000020
1295
1296 001742' 340600 420000 MWORD <LDCT,J=42> ; 3406
1297 001743' 000000 000300
1298 001744' 340700 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 3407
1299 001745' 437073 400340
1300 001746' 341034 200000 MWORD <CJS,J=3420,S0A,A=7,B=10,OR,D=2> ; 3410 - 2 ...
1301 001747' 432074 000020
1302 001750' 341134 200000 MWORD <CJS,J=3420,S0A,A=7,B=10,XNOR,D=2> ; 3411 - comp
1303 001751' 472074 000020
1304 001752' 341234 060000 MWORD <RPCT,J=3406> ; 3412
1305 001753' 000000 000220
1306 001754' 341350 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 3413 - done
1307 001755' 442007 400040
1308
1309 ; Load formatter
1310
1311 001756' 342000 000200 MWORD <ADDR=3420,CONT,D=1,SELF,MGC=200> ; 3420
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 12-14
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0531
1312 001757' 001000 003340
1313 001760' 342100 000204 MWORD <CONT,D=1,SELF,MGC=204> ; 3421
1314 001761' 001000 003340
1315 001762' 342200 002040 MWORD <CONT,S0A,A=10,OR,D=1,OENA,SELF,MGC=40> ; 3422
1316 001763' 431100 003340
1317
1318 ; Rotate down 4 or 8 bits
1319
1320 001764' 342300 000000 MWORD <CONT,S0B,AND,B=5,D=2> ; 3423
1321 001765' 342002 400340
1322 001766' 342401 000000 MWORD <LDCT,J=100> ; 3424
1323 001767' 000000 000300
1324 001770' 342500 000204 MWORD <CONT,S0B,PLUS,B=5,D=2,CRY,SELF,MGC=204> ; 3425
1325 001771' 302002 403740
1326 001772' 342600 000104 MWORD <CONT,SELF,MGC=104> ; 3426
1327 001773' 000000 003340
1328 001774' 342700 000204 MWORD <CONT,SELF,MGC=204> ; 3427
1329 001775' 000000 003340
1330 001776' 343000 000104 MWORD <CONT,SELF,MGC=104> ; 3430
1331 001777' 000000 003340
1332 002000' 343100 000204 MWORD <CONT,SELF,MGC=204> ; 3431
1333 002001' 000000 003340
1334 002002' 343200 000104 MWORD <CONT,SELF,MGC=104> ; 3432
1335 002003' 000000 003340
1336 002004' 343300 000204 MWORD <CONT,SELF,MGC=204> ; 3433
1337 002005' 000000 003340
1338 002006' 343400 000104 MWORD <CONT,SELF,MGC=104> ; 3434
1339 002007' 000000 003340
1340 002010' 343500 000200 MWORD <CONT,SD0,OR,B=4,D=2,SELM,MGC=200> ; 3435
1341 002011' 732002 002340
1342 002012' 343634 400000 MWORD <CJP,J=3440,SAB,A=10,B=4,D=1,SMIN,CRY,CENA,CCFZ>; 3436
1343 002013' 111502 020460
1344 002014' 343750 000006 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,MGC=6,SKCN> ; 3437
1345 002015' 732007 640040
1346 002016' 344034 250000 MWORD <RPCT,J=3425> ; 3440
1347 002017' 000000 000220
1348 002020' 344100 000000 MWORD <CRTN,D=1> ; 3441
1349 002021' 001000 000240
1350
1351 ;#********************************************************************
1352 ; Exit - write completion code to EBUF
1353 ;#********************************************************************
1354
1355 002022' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1356 002023' 000000 003163'
1357 002024' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 13
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0532
1358
1359 ;#********************************************************************
1360 ;* TEST 3 - Port Hardware Test 3
1361 ;
1362 ; Description: This test verifies that data transfers over the
1363 ; EBUS and CBUS are possible. Data patterns are
1364 ; read/written/verified via the CBUS module and the
1365 ; channel. The same is done with the EBUS interface
1366 ; using IOP function words to examine and deposit
1367 ; KL10 memory.
1368 ;
1369 ; Procedure: KL> Load microcode
1370 ; KL> Port Clear
1371 ; KL> Start port
1372 ;
1373 ; Verify PORT <==> CBUS interface
1374 ; -------------------------------
1375 ;
1376 ; UC> build a data pattern
1377 ; UC> write buffer 512 words with this data pattern
1378 ; UC> read buffer and verify each word
1379 ; If failed - exit test with error code 1-5 in EBUF
1380 ; If passed - do next data pattern until done
1381 ;
1382 ; Verify PORT <==> EBUS interface
1383 ; -------------------------------
1384 ;
1385 ; UC> build a data pattern
1386 ; UC> write buffer 512 words with this data pattern
1387 ; UC> read buffer and verify each word
1388 ; If failed - exit test with error code 6-10 in EBUF
1389 ; If passed - do next data pattern until done
1390 ;
1391 ; Done
1392 ; ----
1393 ;
1394 ; KL> Read EBUF and determine test disposition
1395 ;
1396 ; FRU: EBUS/MPROC/CBUS Modules
1397 ;#********************************************************************
1398
1399 ; Initialization
1400
1401 002025' 332 00 0 00 030037 TST3: SKIPE USER ; user mode?
1402 GO [MOVE TSTTAB+3 ; yes - ensure this test does not
1403 TLO (TDENA) ; get run (but only if not in
1404 SKIPN UDEBUG ; debug mode)
1405 MOVEM TSTTAB+3
1406 002026' 260 17 0 00 003547' RTN]
1407 002027' 201 00 0 00 000000' MOVEI Z2 ; get address of module start
1408 002030' 260 17 0 00 000457* GO TRACE ; handle trace output
1409 002031' 201 01 0 00 002104' MOVEI 1,T3M ; set up microcode address
1410 002032' 260 17 0 00 000461* GO TLOAD ; load/verify it
1411 002033' 263 17 0 00 000000 RTN ; failed - exit test
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 14
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0533
1412
1413 ; Initialization - set up channel
1414
1415 002034' 260 17 0 00 000000* GO CHINIT ; initialize software
1416 002035' 201 01 0 00 000000* MOVEI 1,BUFF ; get buffer address
1417 002036' 336 00 0 00 000124* SKIPN UDEBUG ; debug mode?
1418 002037' 257 01 0 01 000000 MAP 1,(1) ; no - map to physical
1419 002040' 621 01 0 00 777000 TLZ 1,777000 ; get rid of misc bits
1420 002041' 661 01 0 00 620000 TLO 1,620000 ; make into a 512 word transfer
1421 002042' 202 01 0 00 000000# MOVEM 1,PCB+45 ; save in PCB
1422 002043' 201 02 0 00 001000 MOVEI 2,^D512 ; word count
1423 002044' 201 03 0 00 002035* MOVEI 3,BUFF ; buffer address
1424 002045' 201 14 0 00 000115 MOVEI PAT,115 ; read fill pattern
1425 002046' 260 17 0 00 000000* GO BUFGEN ; initialize buffer
1426
1427 ; Start the port and give it the buffer address (physical)
1428
1429 002047' 260 17 0 00 003100' GO MSTART ; start the test at 5777
1430 002050' 201 01 0 00 002044* MOVEI 1,BUFF ; get buffer address
1431 002051' 336 00 0 00 002036* SKIPN UDEBUG ; debug mode?
1432 002052' 257 01 0 01 000000 MAP 1,(1) ; no - map to physical
1433 002053' 621 01 0 00 777000 TLZ 1,777000 ; get rid of extraneous bits
1434 002054' 336 00 0 00 002051* SKIPN UDEBUG ; debug mode?
1435 002055' 260 17 0 00 000000* GO .DATAO ; no - write to port
1436 002056' 201 01 0 00 003720 MOVEI 1,^D2000 ; set up wait of 2 seconds
1437 002057' 260 17 0 00 003041' GO MWAIT ; wait for completion
1438
1439 ; Handle error printouts
1440
1441 002060' 027 00 0 00 002065' SCOPER MA3 ; print error message
1442 002061' 255 00 0 00 000000 JFCL ; loop on error
1443 002062' 254 00 0 00 002063' JRST TX3 ; altmode exit
1444
1445 ; End of test
1446
1447 002063' 260 17 0 00 000471* TX3: GO TSTEND ; handle end of test processing
1448 002064' 263 17 0 00 000000 RTN ; return
1449
1450 ; Error messages
1451
1452 002065' 240000 002067' MA3: CALL!TXNOT!MA3PNT
1453 002066' 170000 003346' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1454
1455 002067' 201 01 0 00 002073' MA3PNT: MOVEI 1,MA3LST ; get list address
1456 002070' 201 02 0 00 000011 MOVEI 2,9 ; get list length
1457 002071' 260 17 0 00 003111' GO MPRINT ; print data
1458 002072' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 15
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0534
1459
1460 002073' 037 00 0 00 003473' MA3LST: TMSGC <No failure detected>
1461 002074' 037 00 0 00 003554' TMSGC <2901 to CBUS transfer failed - channel error>
1462 002075' 037 00 0 00 003566' TMSGC <2901 to CBUS transfer failed - parity error>
1463 002076' 037 00 0 00 003600' TMSGC <CBUS to 2901 transfer failed - channel error>
1464 002077' 037 00 0 00 003612' TMSGC <CBUS to 2901 transfer failed - parity error>
1465 002100' 037 00 0 00 003624' TMSGC <CBUS to 2901 transfer failed - data compare error>
1466 002101' 037 00 0 00 003637' TMSGC <2901 to EBUS transfer failed - parity error>
1467 002102' 037 00 0 00 003651' TMSGC <EBUS to 2901 transfer failed - parity error>
1468 002103' 037 00 0 00 003663' TMSGC <EBUS to 2901 transfer failed - data compare error>
1469
1470 ;#********************************************************************
1471 ; Microcode:
1472 ;#********************************************************************
1473
1474 ; R6 - Word count
1475 ; R7 - Used to build data pattern
1476 ; R10 - Data pattern
1477 ; R11 - Actual data read
1478 ; R15 - IOP word (function + address)
1479 ; R16 - Initial buffer address
1480 ; R17 - Completion code
1481
1482 ; Initialization, read buffer address into R16
1483
1484 002104' 577700 000000 T3M: MWORD <ADDR=5777,JZ> ; 5777
1485 002105' 000000 000000
1486 002106' 000000 020000 MWORD <ADDR=0,CJP,J=2,CENA,CCER> ; 0
1487 002107' 000400 100060
1488 002110' 000100 000000 MWORD <JZ> ; 1
1489 002111' 000000 000000
1490 002112' 000200 000010 MWORD <CONT,SD0,OR,D=2,B=16,SELE,MGC=10> ; 2
1491 002113' 732007 005340
1492 002114' 000310 000000 MWORD <JMAP,J=1000,S0A,AND,B=17,D=2> ; 3
1493 002115' 442007 400040
1494
1495 ;#********************************************************************
1496 ; Verify 2901-CBUS Data Transfer
1497 ; Verify CBUS-2901 Data Transfer
1498 ;#********************************************************************
1499
1500 ; Build data patterns
1501
1502 002116' 100000 000000 MWORD <ADDR=1000,CONT,SD0,AND,B=7,D=2> ; 1000
1503 002117' 742003 400340
1504 002120' 100110 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,OR,D=2> ; 1001 - 0's
1505 002121' 432074 000020
1506 002122' 100210 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,XNOR,D=2> ; 1002 - comp
1507 002123' 472074 000020
1508 002124' 100300 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 1003
1509 002125' 402073 400740
1510 002126' 100410 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,OR,D=2> ; 1004 - 1
1511 002127' 432074 000020
1512 002130' 100510 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,XNOR,D=2> ; 1005 - comp
1513 002131' 472074 000020
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 15-1
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0535
1514
1515 002132' 100600 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 1006
1516 002133' 437073 400340
1517 002134' 100720 000000 MWORD <CJP,J=2000,S0A,OR,A=7,D=1,CENA,CCFZ> ; 1007
1518 002135' 431470 020060
1519 002136' 101010 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,OR,D=2> ; 1010 - 2 ..
1520 002137' 432074 000020
1521 002140' 101110 200000 MWORD <CJS,J=1020,S0A,A=7,B=10,XNOR,D=2> ; 1011 - comp
1522 002141' 472074 000020
1523 002142' 101210 060000 MWORD <JMAP,J=1006> ; 1012
1524 002143' 000000 000040
1525
1526 ; Write all the words specified by the CCW list
1527
1528 002144' 102010 210030 MWORD <ADDR=1020,JMAP,J=1021,SELM,MGC=30> ; 1020
1529 002145' 000000 002040
1530 002146' 102101 000220 MWORD <LDCT,J=100,S0A,AND,D=2,B=6,SELC,MGC=220> ; 1021
1531 002147' 442003 004300
1532 002150' 102210 220000 MWORD <RPCT,J=1022> ; 1022
1533 002151' 000000 000220
1534 002152' 102307 770000 MWORD <LDCT,J=777> ; 1023
1535 002153' 000000 000300
1536 002154' 102447 770000 MWORD <CJP,J=4777,D=1,CENA,CCCE> ; 1024
1537 002155' 001400 160060
1538 002156' 102547 760000 MWORD <CJP,J=4776,D=1,CENA,CCCP> ; 1025
1539 002157' 001400 140060
1540 002160' 102610 300000 MWORD <CJP,J=1030,D=1,CENA,CCCA> ; 1026
1541 002161' 001400 000060
1542 002162' 102710 260000 MWORD <JMAP,J=1026,D=1> ; 1027
1543 002163' 001000 000040
1544 002164' 103000 002040 MWORD <CONT,S0A,A=10,D=1,OENA,SELF,MGC=40> ; 1030
1545 002165' 401100 003340
1546 002166' 103130 000002 MWORD <CJS,J=3000,S0B,PLUS,B=6,D=2,CRY,SELC,MGC=2> ; 1031
1547 002167' 302003 004420
1548 002170' 103210 240000 MWORD <RPCT,J=1024> ; 1032
1549 002171' 000000 000220
1550 002172' 103330 000000 MWORD <CJS,J=3000> ; 1033
1551 002173' 000000 000020
1552 002174' 103430 000140 MWORD <CJS,J=3000,SELC,MGC=140> ; 1034
1553 002175' 000000 004020
1554 002176' 103547 770000 MWORD <CJP,J=4777,D=1,CENA,CCCE> ; 1035
1555 002177' 001400 160060
1556 002200' 103647 760000 MWORD <CJP,J=4776,D=1,CENA,CCCP> ; 1036
1557 002201' 001400 140060
1558 002202' 103710 500000 MWORD <JMAP,J=1050> ; 1037
1559 002203' 000000 000040
1560
1561 ; Read all the words specified by the CCW list
1562
1563 002204' 105000 000030 MWORD <ADDR=1050,CONT,SELM,MGC=30> ; 1050
1564 002205' 000000 002340
1565 002206' 105101 000200 MWORD <LDCT,J=100,SELC,MGC=200> ; 1051
1566 002207' 000000 004300
1567 002210' 105210 520000 MWORD <RPCT,J=1052> ; 1052
1568 002211' 000000 000220
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 15-2
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0536
1569 002212' 105307 770000 MWORD <LDCT,J=777,S0A,AND,D=2,B=6> ; 1053
1570 002213' 442003 000300
1571 002214' 105447 750000 MWORD <CJP,J=4775,D=1,CENA,CCCE> ; 1054
1572 002215' 001400 160060
1573 002216' 105547 740000 MWORD <CJP,J=4774,D=1,CENA,CCCP> ; 1055
1574 002217' 001400 140060
1575 002220' 105610 600000 MWORD <CJP,J=1060,D=1,CENA,CCCA> ; 1056
1576 002221' 001400 000060
1577 002222' 105710 560000 MWORD <JMAP,J=1056,D=1> ; 1057
1578 002223' 001000 000040
1579 002224' 106030 000000 MWORD <CJS,J=3000> ; 1060
1580 002225' 000000 000020
1581 002226' 106100 000004 MWORD <CONT,D=1,SELC,MGC=4> ; 1061
1582 002227' 001000 004340
1583 002230' 106200 000200 MWORD <CONT,SD0,OR,B=11,D=2,SELM,MGC=200> ; 1062
1584 002231' 732004 402340
1585 002232' 106310 650000 MWORD <CJP,J=1065,SAB,XOR,A=11,B=10,D=1,CENA,CCFZ> ; 1063
1586 002233' 161514 020060
1587 002234' 106450 000005 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,SKCN,MGC=5> ; 1064
1588 002235' 732007 640040
1589 002236' 106510 540000 MWORD <RPCT,J=1054,S0B,PLUS,B=6,D=2,CRY> ; 1065
1590 002237' 302003 000620
1591 002240' 106630 000000 MWORD <CJS,J=3000> ; 1066
1592 002241' 000000 000020
1593 002242' 106730 000140 MWORD <CJS,J=3000,SELC,MGC=140> ; 1067
1594 002243' 000000 004020
1595 002244' 107047 750000 MWORD <CJP,J=4775,D=1,CENA,CCCE> ; 1070
1596 002245' 001400 160060
1597 002246' 107147 740000 MWORD <CJP,J=4774,D=1,CENA,CCCP> ; 1071
1598 002247' 001400 140060
1599 002250' 107200 000000 MWORD <CRTN> ; 1072
1600 002251' 000000 000240
1601
1602 ;#********************************************************************
1603 ; Verify 2901-EBUS Data Transfer
1604 ; Verify EBUS-2901 Data Transfer
1605 ;#********************************************************************
1606
1607 ; Write all 512 words
1608
1609 002252' 200020 010000 MWORD <ADDR=2000,JMAP,J=2001,SD0,AND,B=10,D=2> ; 2000
1610 002253' 742004 000040
1611 002254' 200100 320450 MWORD <LDCT,J=32,SD0,OR,B=15,D=2,SKCN,MGC=450> ; 2001
1612 002255' 732006 640300
1613 002256' 200220 020000 MWORD <RPCT,J=2002,S0B,B=15,OR,D=7> ; 2002
1614 002257' 337006 400220
1615 002260' 200300 000000 MWORD <CONT,SAB,A=16,B=15,OR,D=2> ; 2003
1616 002261' 132166 400340
1617 002262' 200407 770000 MWORD <LDCT,J=777,S0B,AND,B=6,D=2> ; 2004
1618 002263' 342003 000300
1619 002264' 200532 002004 MWORD <CJS,J=3200,S0B,OR,B=15,D=1,OENA,SELE,MGC=4> ; 2005
1620 002265' 331006 405020
1621 002266' 200600 000001 MWORD <CONT,D=1,SELE,MGC=1> ; 2006
1622 002267' 001000 005340
1623 002270' 200720 110000 MWORD <CJP,J=2011,CENA,CCER> ; 2007
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 15-3
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0537
1624 002271' 000400 100060
1625 002272' 201020 070000 MWORD <JMAP,J=2007> ; 2010
1626 002273' 000000 000040
1627 002274' 201100 002004 MWORD <CONT,S0A,OR,A=10,D=1,SELE,MGC=4,OENA> ; 2011
1628 002275' 431100 005340
1629 002276' 201200 000020 MWORD <CONT,S0B,PLUS,B=15,CRY,D=2,SELE,MGC=20> ; 2012
1630 002277' 302006 405740
1631 002300' 201347 720000 MWORD <CJP,J=4772,D=1,CENA,CCEB> ; 2013
1632 002301' 001400 040060
1633 002302' 201400 000000 MWORD <CONT,S0B,PLUS,CRY,B=10,D=2> ; 2014
1634 002303' 302004 000740
1635 002304' 201520 050000 MWORD <RPCT,J=2005,S0B,B=6,PLUS,D=2,CRY> ; 2015
1636 002305' 302003 000620
1637 002306' 201620 500000 MWORD <JMAP,J=2050> ; 2016
1638 002307' 000000 000040
1639
1640 ; Read all 512 words
1641
1642 002310' 205000 320440 MWORD <ADDR=2050,LDCT,J=32,SD0,OR,B=15,D=2,SKCN,MGC=440>
1643 002311' 732006 640300
1644 002312' 205120 510000 MWORD <RPCT,J=2051,S0B,B=15,OR,D=7> ; 2051
1645 002313' 337006 400220
1646 002314' 205200 000000 MWORD <CONT,SAB,A=16,B=15,OR,D=2> ; 2052
1647 002315' 132166 400340
1648 002316' 205300 000000 MWORD <CONT,S0B,AND,B=10,D=2> ; 2053
1649 002317' 342004 000340
1650 002320' 205407 770000 MWORD <LDCT,J=777,S0B,AND,B=6,D=2> ; 2054
1651 002321' 342003 000300
1652 002322' 205532 002004 MWORD <CJS,J=3200,S0A,OR,A=15,D=1,OENA,SELE,MGC=4> ; 2055
1653 002323' 431150 005020
1654 002324' 205600 000001 MWORD <CONT,D=1,SELE,MGC=1> ; 2056
1655 002325' 001000 005340
1656 002326' 205720 610000 MWORD <CJP,J=2061,CENA,CCER> ; 2057
1657 002327' 000400 100060
1658 002330' 206020 570000 MWORD <JMAP,J=2057> ; 2060
1659 002331' 000000 000040
1660 002332' 206100 000010 MWORD <CONT,SD0,OR,B=11,D=2,SELE,MGC=10> ; 2061
1661 002333' 732004 405340
1662 002334' 206200 000000 MWORD <CONT,S0B,PLUS,B=15,CRY,D=2> ; 2062
1663 002335' 302006 400740
1664 002336' 206347 710000 MWORD <CJP,J=4771,D=1,CENA,CCEB> ; 2063
1665 002337' 001400 040060
1666 002340' 206420 660000 MWORD <CJP,J=2066,SAB,XOR,A=11,B=10,D=1,CENA,CCFZ,TIM>; 2064
1667 002341' 161514 020070
1668 002342' 206550 000010 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,SKCN,MGC=10> ; 2065
1669 002343' 732007 640040
1670 002344' 206600 000000 MWORD <CONT,S0B,PLUS,CRY,B=10,D=2> ; 2066
1671 002345' 302004 000740
1672 002346' 206720 550000 MWORD <RPCT,J=2055,S0B,B=6,PLUS,D=2,CRY> ; 2067
1673 002347' 302003 000620
1674 002350' 207050 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 2070
1675 002351' 442007 400040
1676
1677 ;#********************************************************************
1678 ; Delay subroutine - 3.9 usecs
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 15-4
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0538
1679 ;#********************************************************************
1680
1681 002352' 300000 000000 MWORD <ADDR=3000,CONT>
1682 002353' 000000 000340
1683 002354' 300100 000000 MWORD <CONT>
1684 002355' 000000 000340
1685 002356' 300200 000000 MWORD <CONT>
1686 002357' 000000 000340
1687 002360' 300300 000000 MWORD <CONT>
1688 002361' 000000 000340
1689 002362' 300400 000000 MWORD <CONT>
1690 002363' 000000 000340
1691 002364' 300500 000000 MWORD <CONT>
1692 002365' 000000 000340
1693 002366' 300600 000000 MWORD <CONT>
1694 002367' 000000 000340
1695 002370' 300700 000000 MWORD <CONT>
1696 002371' 000000 000340
1697 002372' 301000 000000 MWORD <CONT>
1698 002373' 000000 000340
1699 002374' 301100 000000 MWORD <CONT>
1700 002375' 000000 000340
1701 002376' 301200 000000 MWORD <CONT>
1702 002377' 000000 000340
1703 002400' 301300 000000 MWORD <CONT>
1704 002401' 000000 000340
1705 002402' 301400 000000 MWORD <CONT>
1706 002403' 000000 000340
1707 002404' 301500 000000 MWORD <CONT>
1708 002405' 000000 000340
1709 002406' 301600 000000 MWORD <CRTN>
1710 002407' 000000 000240
1711
1712 ;#********************************************************************
1713 ; Delay subroutine - 100 usecs
1714 ;#********************************************************************
1715
1716 002410' 320030 000000 MWORD <ADDR=3200,CJS,J=3000>
1717 002411' 000000 000020
1718 002412' 320130 000000 MWORD <CJS,J=3000>
1719 002413' 000000 000020
1720 002414' 320230 000000 MWORD <CJS,J=3000>
1721 002415' 000000 000020
1722 002416' 320330 000000 MWORD <CJS,J=3000>
1723 002417' 000000 000020
1724 002420' 320430 000000 MWORD <CJS,J=3000>
1725 002421' 000000 000020
1726 002422' 320530 000000 MWORD <CJS,J=3000>
1727 002423' 000000 000020
1728 002424' 320630 000000 MWORD <CJS,J=3000>
1729 002425' 000000 000020
1730 002426' 320730 000000 MWORD <CJS,J=3000>
1731 002427' 000000 000020
1732 002430' 321030 000000 MWORD <CJS,J=3000>
1733 002431' 000000 000020
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 15-5
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0539
1734 002432' 321130 000000 MWORD <CJS,J=3000>
1735 002433' 000000 000020
1736 002434' 321230 000000 MWORD <CJS,J=3000>
1737 002435' 000000 000020
1738 002436' 321330 000000 MWORD <CJS,J=3000>
1739 002437' 000000 000020
1740 002440' 321430 000000 MWORD <CJS,J=3000>
1741 002441' 000000 000020
1742 002442' 321530 000000 MWORD <CJS,J=3000>
1743 002443' 000000 000020
1744 002444' 321630 000000 MWORD <CJS,J=3000>
1745 002445' 000000 000020
1746 002446' 321730 000000 MWORD <CJS,J=3000>
1747 002447' 000000 000020
1748 002450' 322030 000000 MWORD <CJS,J=3000>
1749 002451' 000000 000020
1750 002452' 322130 000000 MWORD <CJS,J=3000>
1751 002453' 000000 000020
1752 002454' 322230 000000 MWORD <CJS,J=3000>
1753 002455' 000000 000020
1754 002456' 322330 000000 MWORD <CJS,J=3000>
1755 002457' 000000 000020
1756 002460' 322430 000000 MWORD <CJS,J=3000>
1757 002461' 000000 000020
1758 002462' 322530 000000 MWORD <CJS,J=3000>
1759 002463' 000000 000020
1760 002464' 322630 000000 MWORD <CJS,J=3000>
1761 002465' 000000 000020
1762 002466' 322730 000000 MWORD <CJS,J=3000>
1763 002467' 000000 000020
1764 002470' 323030 000000 MWORD <CJS,J=3000>
1765 002471' 000000 000020
1766 002472' 323130 000000 MWORD <CJS,J=3000>
1767 002473' 000000 000020
1768 002474' 323200 000000 MWORD <CRTN>
1769 002475' 000000 000240
1770
1771 ;#********************************************************************
1772 ; Exit - write completion code to EBUF
1773 ;#********************************************************************
1774
1775 002476' 477000 000000 MWORD <ADDR=4770,CONT,S0B,PLUS,B=17,D=2,CRY> ; 4770
1776 002477' 302007 400740
1777 002500' 477100 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 4771
1778 002501' 302007 400740
1779 002502' 477200 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 4772
1780 002503' 302007 400740
1781 002504' 477300 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 4773
1782 002505' 302007 400740
1783 002506' 477400 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 4774
1784 002507' 302007 400740
1785 002510' 477500 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 4775
1786 002511' 302007 400740
1787 002512' 477600 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 4776
1788 002513' 302007 400740
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 15-6
DFCIA2 MAC 18-Mar-84 10:46 Port Modules SEQ 0540
1789 002514' 477700 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 4777
1790 002515' 302007 400740
1791 002516' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1792 002517' 000000 003163'
1793 002520' 777777 777777 -1
1794
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 16
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0541
1795 SUBTTL Register Tests
1796
1797 ;#********************************************************************
1798 ;* TEST 4 - PB Register Test 1
1799 ;
1800 ; Description: This test loads special microcode which reads and
1801 ; verifies packet buffer module registers. The
1802 ; registers involved are:
1803 ;
1804 ; - Receive Status Register
1805 ; - Transmit Status Register
1806 ; - Read Buffer Register
1807 ; - Pila Revision Register
1808 ;
1809 ; Procedure: KL> Load microcode
1810 ; KL> Port Clear
1811 ; KL> Start port
1812 ;
1813 ; UC> Read register 'Receive Status Register'
1814 ; UC> Verify proper results
1815 ; If error - exit test with error code in EBUF
1816 ; Error code 1 - Data incorrect
1817 ; Error code 2 - Parity error occurred
1818 ;
1819 ; UC> Read register 'Transmit Status Register'
1820 ; UC> Verify proper results
1821 ; If error - exit test with error code in EBUF
1822 ; Error code 3 - Data incorrect
1823 ; Error code 4 - Parity error occurred
1824 ;
1825 ; UC> Read register 'Read Buffer Register'
1826 ; UC> Verify proper results
1827 ; If error - exit test with error code in EBUF
1828 ; Error code 5 - Data incorrect
1829 ; Error code 6 - Parity error occurred
1830 ;
1831 ; UC> Read register 'Pila Revision Register'
1832 ; UC> Verify proper results
1833 ; If error - exit test with error code in EBUF
1834 ; Error code 7 - Data incorrect
1835 ; Error code 10 - Parity error occurred
1836 ;
1837 ; KL> Read CSR and determine test disposition
1838 ;
1839 ; FRU: Packet Buffer Module
1840 ;#********************************************************************
1841
1842 ; Initialization
1843
1844 002521' 402 00 0 00 004163' TST4: SETZM FERR# ; clear first error flag
1845 002522' 201 00 0 00 000000' MOVEI Z2 ; get address of module start
1846 002523' 260 17 0 00 002030* GO TRACE ; handle trace output
1847 002524' 201 01 0 00 002560' MOVEI 1,T4M ; set up microcode address
1848 002525' 260 17 0 00 002032* GO TLOAD ; load/verify it
1849 002526' 263 17 0 00 000000 RTN ; failed - exit test
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 17
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0542
1850
1851 ; Do the test
1852
1853 002527' 260 17 0 00 003100' T4A: GO MSTART ; start the test at 5777
1854 002530' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
1855 002531' 260 17 0 00 003041' GO MWAIT ; wait for completion
1856 002532' 336 00 0 00 004163' SKIPN FERR ; first error flag set?
1857 JUMPN ERFLG,[SETOM FERR ; no - try it again
1858 SETZM ERFLG
1859 002533' 326 15 0 00 003676' JRST T4A]
1860
1861 ; Handle error printouts
1862
1863 002534' 027 00 0 00 002541' SCOPER MA4 ; print error message
1864 002535' 255 00 0 00 000000 JFCL ; loop on error
1865 002536' 254 00 0 00 002537' JRST TX4 ; altmode exit
1866
1867 ; End of test
1868
1869 002537' 260 17 0 00 002063* TX4: GO TSTEND ; handle end of test processing
1870 002540' 263 17 0 00 000000 RTN ; return
1871
1872 ; Error messages
1873
1874 002541' 240000 002543' MA4: CALL!TXNOT!MA4PNT
1875 002542' 170000 003701' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
1876
1877 002543' 201 01 0 00 002547' MA4PNT: MOVEI 1,MA4LST ; get list address
1878 002544' 201 02 0 00 000011 MOVEI 2,9 ; get list length
1879 002545' 260 17 0 00 003111' GO MPRINT ; print data
1880 002546' 263 17 0 00 000000 RTN ; return
1881
1882 002547' 037 00 0 00 003473' MA4LST: TMSGC <No failure detected>
1883 002550' 037 00 0 00 003705' TMSGC <Read Rcv Status failure - incorrect data>
1884 002551' 037 00 0 00 003716' TMSGC <Read Rcv Status failure - parity error>
1885 002552' 037 00 0 00 003727' TMSGC <Read Xmt Status failure - incorrect data>
1886 002553' 037 00 0 00 003740' TMSGC <Read Xmt Status failure - parity error>
1887 002554' 037 00 0 00 003751' TMSGC <Read Buffer failure - incorrect data>
1888 002555' 037 00 0 00 003761' TMSGC <Read Buffer failure - parity error>
1889 002556' 037 00 0 00 003771' TMSGC <Read PILA Revision failure - incorrect data>
1890 002557' 037 00 0 00 004003' TMSGC <Read PILA Revision failure - parity error>
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 18
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0543
1891
1892 ;#********************************************************************
1893 ; Microcode:
1894 ;#********************************************************************
1895
1896 ; Initialization
1897
1898 002560' 577700 000000 T4M: MWORD <ADDR=5777,JZ> ; 5777
1899 002561' 000000 000000
1900 002562' 000000 060000 MWORD <ADDR=0,LDCT,J=6,S0B,AND,B=14,D=2> ; 0
1901 002563' 342006 000300
1902 002564' 000100 010000 MWORD <RPCT,J=1,S0B,PLUS,B=14,D=7,CRY> ; 1
1903 002565' 307006 000620
1904 002566' 000200 000020 MWORD <CONT,SELM,MGC=20> ; 2
1905 002567' 000000 002340
1906 002570' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
1907 002571' 302006 000440
1908
1909 ; R14 - 8 bit mask (377)
1910 ; R15 - Actual register data (right justified)
1911 ; R16 - Correct register data (right justified)
1912 ; R17 - Completion code (right justified)
1913
1914 ;#********************************************************************
1915 ; Receive Status Register
1916 ;#********************************************************************
1917
1918 002572' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
1919 002573' 000000 000040
1920 002574' 100100 000003 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=3> ; 1001
1921 002575' 732007 240340
1922 002576' 100200 000001 MWORD <CONT,SD0,OR,B=17,D=2,SKCN,MGC=1> ; 1002
1923 002577' 732007 640340
1924 002600' 100300 000032 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=32> ; 1003
1925 002601' 342006 401340
1926 002602' 100400 000300 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300> ; 1004
1927 002603' 732006 402340
1928 002604' 100530 000000 MWORD <CJS,J=3000> ; 1005
1929 002605' 000000 000020
1930 002606' 100611 000000 MWORD <JMAP,J=1100> ; 1006
1931 002607' 000000 000040
1932
1933 ;#********************************************************************
1934 ; Transmit Status Register
1935 ;#********************************************************************
1936
1937 002610' 110000 000011 MWORD <ADDR=1100,CONT,SD0,OR,B=16,D=2,SKCN,MGC=11> ; 1100
1938 002611' 732007 240340
1939 002612' 110100 000003 MWORD <CONT,SD0,OR,B=17,D=2,SKCN,MGC=3> ; 1101
1940 002613' 732007 640340
1941 002614' 110200 000232 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=232> ; 1102
1942 002615' 342006 401340
1943 002616' 110300 000300 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300> ; 1103
1944 002617' 732006 402340
1945 002620' 110430 000000 MWORD <CJS,J=3000> ; 1104
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 18-1
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0544
1946 002621' 000000 000020
1947 002622' 110512 000000 MWORD <JMAP,J=1200> ; 1105
1948 002623' 000000 000040
1949
1950 ;#********************************************************************
1951 ; Read Buffer Register
1952 ;#********************************************************************
1953
1954 002624' 120000 000011 MWORD <ADDR=1200,CONT,SD0,OR,B=16,D=2,SKCN,MGC=11> ; 1200
1955 002625' 732007 240340
1956 002626' 120100 000005 MWORD <CONT,SD0,OR,B=17,D=2,SKCN,MGC=5> ; 1201
1957 002627' 732007 640340
1958 002630' 120200 000132 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=132> ; 1202
1959 002631' 342006 401340
1960 002632' 120300 000300 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300> ; 1203
1961 002633' 732006 402340
1962 002634' 120430 040000 MWORD <CJS,J=3004> ; 1204
1963 002635' 000000 000020
1964 002636' 120513 000000 MWORD <JMAP,J=1300> ; 1205
1965 002637' 000000 000040
1966
1967 ;#********************************************************************
1968 ; PILA Revision Register
1969 ;#********************************************************************
1970
1971 002640' 130000 000011 MWORD <ADDR=1300,CONT,SD0,OR,B=16,D=2,SKCN,MGC=11> ; 1300
1972 002641' 732007 240340
1973 002642' 130100 000007 MWORD <CONT,SD0,OR,B=17,D=2,SKCN,MGC=7> ; 1301
1974 002643' 732007 640340
1975 002644' 130200 000072 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=72> ; 1302
1976 002645' 342006 401340
1977 002646' 130300 000300 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300> ; 1303
1978 002647' 732006 402340
1979 002650' 130430 040000 MWORD <CJS,J=3004> ; 1304
1980 002651' 000000 000020
1981 002652' 130550 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1305
1982 002653' 442007 400040
1983
1984 ;#********************************************************************
1985 ; C1516 - Compare R15 and R16 and check for PLI PE
1986 ; MRESET - Reset the Packet Buffer and Link modules
1987 ; MEXIT - Exit and write completion code to CSR
1988 ;#********************************************************************
1989
1990 002654' 777777 777776 SUBTAB (C1516) ; 3000 ..
1991 002655' 000000 003144'
1992 002656' 777777 777776 SUBTAB (MRESET) ; 4000 ..
1993 002657' 000000 003206'
1994 002660' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1995 002661' 000000 003163'
1996 002662' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 19
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0545
1997
1998 ;#********************************************************************
1999 ;* TEST 5 - Link Register Test 1
2000 ;
2001 ; Description: This test loads special microcode which reads and
2002 ; writes link module registers. The registers
2003 ; involved are:
2004 ;
2005 ; - Node Address Register
2006 ;
2007 ; Procedure: KL> Load microcode
2008 ; KL> Port Clear
2009 ; KL> Start port
2010 ;
2011 ; UC> Read register 'Node Address Register'
2012 ; UC> Verify proper results (no parity error)
2013 ; If failed - exit test with error code 1 in EBUF
2014 ;
2015 ; UC> Set appropriate completion code in CSR
2016 ; KL> Read CSR and determine test disposition
2017 ;
2018 ; FRU: Link Module
2019 ;#********************************************************************
2020
2021 ; Initialization
2022
2023 002663' 201 00 0 00 000000' TST5: MOVEI Z2 ; get address of module start
2024 002664' 260 17 0 00 002523* GO TRACE ; handle trace output
2025 002665' 201 01 0 00 002711' MOVEI 1,T5M ; set up microcode address
2026 002666' 260 17 0 00 002525* GO TLOAD ; load/verify it
2027 002667' 263 17 0 00 000000 RTN ; failed - exit test
2028
2029 ; Do the test
2030
2031 002670' 260 17 0 00 003100' GO MSTART ; start the test at 5777
2032 002671' 201 01 0 00 000012 MOVEI 1,^D10 ; set up wait of 10 ms
2033 002672' 260 17 0 00 003041' GO MWAIT ; wait for completion
2034
2035 ; Handle error printouts
2036
2037 002673' 027 00 0 00 002700' SCOPER MA5 ; print error message
2038 002674' 255 00 0 00 000000 JFCL ; loop on error
2039 002675' 254 00 0 00 002676' JRST TX5 ; altmode exit
2040
2041 ; End of test
2042
2043 002676' 260 17 0 00 002537* TX5: GO TSTEND ; handle end of test processing
2044 002677' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 20
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0546
2045
2046 ; Error messages
2047
2048 002700' 240000 002702' MA5: CALL!TXNOT!MA5PNT
2049 002701' 170000 004014' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
2050
2051 002702' 201 01 0 00 002706' MA5PNT: MOVEI 1,MA5LST ; get list address
2052 002703' 201 02 0 00 000002 MOVEI 2,2 ; get list length
2053 002704' 260 17 0 00 003111' GO MPRINT ; print data
2054 002705' 263 17 0 00 000000 RTN ; return
2055
2056 002706' 037 00 0 00 003473' MA5LST: TMSGC <No failure detected>
2057 002707' 037 00 0 00 004020' TMSGC <Read Node Address failure - parity error>
2058 002710' 263 17 0 00 000000 RTN
2059
2060 ;#********************************************************************
2061 ; Microcode:
2062 ;#********************************************************************
2063
2064 ; Initialization
2065
2066 002711' 577700 000000 T5M: MWORD <ADDR=5777,JZ> ; 5777
2067 002712' 000000 000000
2068 002713' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
2069 002714' 000000 000020
2070 002715' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
2071 002716' 342006 000300
2072 002717' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
2073 002720' 307006 000620
2074 002721' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
2075 002722' 302006 000440
2076
2077 ; R14 - 8 bit mask (377)
2078 ; R15 - Actual register data (right justified)
2079 ; R16 - Correct register data (right justified)
2080 ; R17 - Completion code (right justified)
2081
2082 ;#********************************************************************
2083 ; Node Address Register
2084 ;#********************************************************************
2085
2086 002723' 100000 000011 MWORD <ADDR=1000,CONT,SD0,OR,B=16,D=2,SKCN,MGC=11> ; 1000
2087 002724' 732007 240340
2088 002725' 100100 000004 MWORD <CONT,SD0,OR,B=17,D=2,SKCN,MGC=4> ; 1001
2089 002726' 732007 640340
2090 002727' 100200 000072 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=72> ; 1002
2091 002730' 342006 401340
2092 002731' 100300 000300 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300> ; 1003
2093 002732' 732006 402340
2094 002733' 100430 040000 MWORD <CJS,J=3004> ; 1004
2095 002734' 000000 000020
2096 002735' 100550 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1005
2097 002736' 442007 400040
2098
2099 ;#********************************************************************
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 20-1
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0547
2100 ; C1516 - Compare R15 and R16 and check for PLI PE
2101 ; MRESET - Reset the Packet Buffer and Link modules
2102 ; MEXIT - Exit and write completion code to CSR
2103 ;#********************************************************************
2104
2105 002737' 777777 777776 SUBTAB (C1516) ; 3000 ..
2106 002740' 000000 003144'
2107 002741' 777777 777776 SUBTAB (MRESET) ; 4000 ..
2108 002742' 000000 003206'
2109 002743' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
2110 002744' 000000 003163'
2111 002745' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 21
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0548
2112
2113 ;#********************************************************************
2114 ;* TEST 6 - PB Register Test 2
2115 ;
2116 ; Description: This test uses operational microcode to read and
2117 ; write packet buffer module registers. The
2118 ; registers involved are:
2119 ;
2120 ; - Receive Status Register
2121 ; - Transmit Status Register
2122 ; - Read Buffer Register
2123 ; - Pila Revision Register
2124 ;
2125 ; Procedure: KL> Load microcode
2126 ; KL> Port Clear
2127 ; KL> Start port
2128 ;
2129 ; KL> Build a packet to read the 'Receive Status
2130 ; Register', put it on the queue, and wait
2131 ; for a response
2132 ; KL> Verify proper results
2133 ; If failed - print error message and exit test
2134 ;
2135 ; Repeat for: Transmit Status Register
2136 ; Read Buffer Register
2137 ; Pila Revision Register
2138 ;
2139 ; FRU: Packet Buffer Module
2140 ;#********************************************************************
2141
2142 ; Initialization
2143
2144 002746' 201 00 0 00 000000' TST6: MOVEI Z2 ; get address of module start
2145 002747' 260 17 0 00 002664* GO TRACE ; handle trace output
2146 002750' 201 06 0 00 002766' MOVEI 6,TS6 ; get test table address
2147 002751' 402 00 0 00 000110* SETZM TSTSUB ; initialize subtest number
2148 002752' 474 05 0 00 000000 SETO 5, ; initialize register number
2149
2150 ; Loop on test execute table entries
2151
2152 002753' 260 17 0 00 000076* TA6: GO IPACLR ; do a 'port clear'
2153 002754' 260 17 0 00 000000* TB6: GO TEXEC ; execute table entry
2154 002755' 254 00 0 00 002764' JRST TX6 ; end of table
2155 002756' 254 00 0 00 002754' JRST TB6 ; look for next entry
2156 002757' 474 15 0 00 000000 SETO ERFLG, ; error occurred
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 22
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0549
2157
2158 ; Handle error printouts
2159
2160 002760' 027 00 0 00 002774' SCOPER MA6 ; print error message
2161 002761' 255 00 0 00 000000 JFCL ; loop on error
2162 002762' 254 00 0 00 002764' JRST TX6 ; altmode exit
2163 002763' 322 15 0 00 002754' JUMPE ERFLG,TB6 ; do next table entry
2164
2165 ; End of test
2166
2167 002764' 260 17 0 00 002676* TX6: GO TSTEND ; handle end of test processing
2168 002765' 263 17 0 00 000000 RTN ; return
2169
2170 ; Test Execute Table, as: (CMD,parameters)
2171
2172 002766' 040000 000000 TS6: TTABLE (TSTART) ; start up microcode
2173 002767' 340010 000000 TTABLE (TREAD,10,0,0) ; Transmit Status Register
2174 002770' 340001 000000 TTABLE (TREAD,1,0,0) ; Receive Status Register
2175 002771' 340003 000000 TTABLE (TREAD,3,0,0) ; Read Buffer Register
2176 002772' 340005 000000 TTABLE (TREAD,5,0,0) ; Pila Revision Register
2177 002773' 000000 000000 TTABLE (TLAST)
2178
2179 ; Error messages
2180
2181 002774' 240000 003000' MA6: CALL!TXNOT!MA6PNT ; print failure
2182 002775' 000000000000# CALL!TXALL!TTPNT ; print test data
2183 002776' 260000 003135' CALL!TXALL!PDUMP ; print addl data if necessary
2184 002777' 170000 003701' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
2185
2186 003000' 200 01 0 00 002751* MA6PNT: MOVE 1,TSTSUB ; get subtest number
2187 XCT [TMSGC <Microcode load failed>
2188 TMSGC <Read of Transmit Status Register failed>
2189 TMSGC <Read of Receive Status Register failed>
2190 TMSGC <Read of Read Buffer Register failed>
2191 003001' 256 00 0 01 004100' TMSGC <Read of Pila Revision Register failed>](1)
2192 003002' 263 17 0 00 000000 RTN ; done
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 23
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0550
2193
2194 ;#********************************************************************
2195 ;* TEST 7 - Link Register Test 2
2196 ;
2197 ; Description: This test uses operational microcode to read and
2198 ; write link module registers. The registers
2199 ; involved are:
2200 ;
2201 ; - Node address register
2202 ;
2203 ; Procedure: KL> Load microcode
2204 ; KL> Port Clear
2205 ; KL> Start port
2206 ;
2207 ; KL> Build a packet to read the 'Node address
2208 ; Register', put it on the queue, and wait
2209 ; for a response
2210 ; KL> Verify proper results
2211 ; If failed - print error message and exit test
2212 ;
2213 ; FRU: Link Module
2214 ;#********************************************************************
2215
2216 ; Initialization
2217
2218 003003' 201 00 0 00 000000' TST7: MOVEI Z2 ; get address of module start
2219 003004' 260 17 0 00 002747* GO TRACE ; handle trace output
2220 003005' 201 06 0 00 003023' MOVEI 6,TS7 ; get test table address
2221 003006' 402 00 0 00 003000* SETZM TSTSUB ; initialize subtest number
2222 003007' 474 05 0 00 000000 SETO 5, ; initialize register number
2223
2224 ; Loop on test execute table entries
2225
2226 003010' 260 17 0 00 002753* TA7: GO IPACLR ; do a 'port clear'
2227 003011' 260 17 0 00 002754* TB7: GO TEXEC ; execute table entry
2228 003012' 254 00 0 00 003021' JRST TX7 ; end of table
2229 003013' 254 00 0 00 003011' JRST TB7 ; look for next entry
2230 003014' 474 15 0 00 000000 SETO ERFLG, ; error occurred
2231
2232 ; Handle error printouts
2233
2234 003015' 027 00 0 00 003032' SCOPER MA7 ; print error message
2235 003016' 255 00 0 00 000000 JFCL ; loop on error
2236 003017' 254 00 0 00 003021' JRST TX7 ; altmode exit
2237 003020' 322 15 0 00 003011' JUMPE ERFLG,TB7 ; do next table entry
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 24
DFCIA2 MAC 18-Mar-84 10:46 Register Tests SEQ 0551
2238
2239 ; End of test
2240
2241 003021' 260 17 0 00 002764* TX7: GO TSTEND ; handle end of test processing
2242 003022' 263 17 0 00 000000 RTN ; return
2243
2244 ; Test Execute Table, as: (CMD,parameters)
2245
2246 003023' 040000 000000 TS7: TTABLE (TSTART) ; start up microcode
2247 003024' 100000 003027' TTABLE (TCALL,TS7PAK) ; set up correct data
2248 003025' 340014 400000 TTABLE (TREAD,14,1,0) ; read 'Node Address Register'
2249 003026' 000000 000000 TTABLE (TLAST)
2250
2251 ; Special routines
2252
2253 003027' 200 00 0 00 000000* TS7PAK: MOVE CPORT ; get our port number
2254 003030' 137 00 0 00 004105' DPB [POINT 17,TS7+2,35] ; save it
2255 003031' 263 17 0 00 000000 RTN
2256
2257 ; Error messages
2258
2259 003032' 240000 003036' MA7: CALL!TXNOT!MA7PNT ; print failure
2260 003033' 000000000000# CALL!TXALL!TTPNT ; print test data
2261 003034' 260000 003135' CALL!TXALL!PDUMP ; print addl data if necessary
2262 003035' 170000 004014' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
2263
2264 003036' 200 01 0 00 003006* MA7PNT: MOVE 1,TSTSUB ; get subtest number
2265 XCT [TMSGC <Microcode load failed>
2266 003037' 256 00 0 01 004116' TMSGC <Read of Node Address Register failed>](1)
2267 003040' 263 17 0 00 000000 RTN ; done
2268
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 25
DFCIA2 MAC 18-Mar-84 10:46 Miscellaneous Routines SEQ 0552
2269 SUBTTL Miscellaneous Routines
2270
2271 ;#********************************************************************
2272 ;* MWAIT - Routine to wait for test completion and determine test results
2273 ;
2274 ; Arguments: AC1 - Contains timeout time in milliseconds
2275 ;
2276 ; Returns: +1 - Always (final data in SAVCSR,SAVLAR,SAVEBU)
2277 ;#********************************************************************
2278
2279 003041' 261 17 0 00 000000 MWAIT: RPUT (0,1,2) ; save AC's
2280
2281
2282 ; Let test run
2283
2284 003044' 200 02 0 00 000001 MOVE 2,1 ; get time to wait
2285 003045' 275 02 0 00 000005 MWAIT0: SUBI 2,5 ; calculate remaining time
2286 003046' 005 00 0 00 000005 DELAY 5 ; wait 5 milliseconds
2287 003047' 260 17 0 00 000030* GO RDCSR ; read CSR
2288 003050' 474 15 0 00 000000 SETO ERFLG, ; failed - set error flag
2289 003051' 606 01 0 00 000010 TRNN 1,MPRUN ; port still running?
2290 003052' 254 00 0 00 003055' JRST MWAIT1 ; no - test is done
2291 003053' 606 01 0 00 002000 TRNN 1,TCOMP ; test complete bit set?
2292 003054' 327 02 0 00 003045' JUMPG 2,MWAIT0 ; no - loop till done
2293
2294 ; Determine test disposition
2295
2296 003055' 202 01 0 00 003140' MWAIT1: MOVEM 1,SAVCSR ; save CSR data
2297 003056' 606 01 0 00 002000 TRNN 1,TCOMP ; test completion bit set?
2298 003057' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
2299 003060' 201 01 0 00 200000 MOVEI 1,TSTEBF ; set up to read EBUF
2300 003061' 260 17 0 00 000055* GO LDCSR ; write CSR register
2301 003062' 260 17 0 00 000060* GO RDEBUF ; read the EBUF
2302 003063' 202 01 0 00 003142' MOVEM 1,SAVEBU ; save data
2303 003064' 404 01 0 00 004120' AND 1,[77] ; clear all but rightmost 6 bits
2304 003065' 332 00 0 00 000001 SKIPE 1 ; any error bits set?
2305 003066' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2306
2307 ; Find out stopping address
2308
2309 003067' 201 01 0 00 040000 MOVEI 1,SELLAR ; set this bit
2310 003070' 260 17 0 00 003061* GO LDCSR ; set up to read LAR
2311 003071' 260 17 0 00 000000* GO RDLAR ; read it
2312 003072' 242 01 0 00 777777 LSH 1,-1 ; position correctly
2313 003073' 202 01 0 00 003141' MOVEM 1,SAVLAR ; save it
2314 003074' 262 17 0 00 000002 RGET (2,1,0) ; restore AC's
2315
2316 003077' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 26
DFCIA2 MAC 18-Mar-84 10:46 Miscellaneous Routines SEQ 0553
2317
2318 ;#********************************************************************
2319 ;* MSTART - Start the port at location 5777
2320 ;#********************************************************************
2321
2322 003100' 261 17 0 00 000001 MSTART: PUT 1 ; save AC1
2323 003101' 260 17 0 00 003010* GO IPACLR ; do a 'port clear'
2324 003102' 201 01 0 00 005777 MOVEI 1,5777 ; set up start address and
2325 003103' 242 01 0 00 000001 LSH 1,1 ; write it to the RAR
2326 003104' 260 17 0 00 000101* GO LDRAR
2327 003105' 201 01 0 00 000010 MOVEI 1,MPRUN ; get 'MPRUN' bit
2328 003106' 260 17 0 00 003070* GO LDCSR ; start the port
2329 003107' 262 17 0 00 000001 GET 1 ; restore AC1
2330 003110' 263 17 0 00 000000 RTN ; return
2331
2332
2333 ;#********************************************************************
2334 ;* MPRINT - Print test completion data for a test
2335 ;
2336 ; Argument: AC1 - contains completion code table
2337 ; AC2 - contains length of table
2338 ;#********************************************************************
2339
2340 003111' 261 17 0 00 000000 MPRINT: RPUT (0,1,2) ; save AC's
2341
2342 003114' 037 00 0 00 004121' TMSGC <CSR: >
2343 003115' 200 00 0 00 003140' MOVE SAVCSR ; get CSR data
2344 003116' 037 13 0 00 000000 PNTHW ; print it
2345 003117' 200 01 0 00 003140' MOVE 1,SAVCSR ; get CSR data
2346 003120' 606 01 0 00 002000 TRNN 1,TCOMP ; test completion bit set?
2347 JRST [TMSGC <Test did not complete properly:>
2348 TMSGC < Started at 5777>
2349 TMSGC < Stopped at >
2350 MOVE SAVLAR
2351 PNT4
2352 003121' 254 00 0 00 004142' JRST MPRINX]
2353 003122' 370 00 0 00 000002 SOS 2 ; calculate maximum failure code
2354 003123' 135 01 0 00 004150' LDB 1,[POINT 6,SAVEBU,35] ; get failure code
2355 003124' 313 01 0 00 000002 CAMLE 1,2 ; in range?
2356 JRST [TMSGC <Illegal failure code - >
2357 MOVE 1
2358 PNTOCS
2359 003125' 254 00 0 00 004157' JRST MPRINX]
2360 003126' 200 02 0 17 777777 MOVE 2,-1(P) ; get table address
2361 003127' 270 02 0 00 000001 ADD 2,1 ; plus offset
2362 003130' 256 00 0 02 000000 XCT (2) ; print entry
2363 003131' 262 17 0 00 000002 MPRINX: RGET (2,1,0) ; save AC's
2364
2365 003134' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 27
DFCIA2 MAC 18-Mar-84 10:46 Miscellaneous Routines SEQ 0554
2366
2367 ;#********************************************************************
2368 ; PDUMP - Print addl data
2369 ;#********************************************************************
2370
2371 003135' 332 00 0 00 000000* PDUMP: SKIPE DDEBUG ; dump on error flag set?
2372 003136' 260 17 0 00 000000* GO DDUMP ; yes - dump
2373 003137' 263 17 0 00 000000 RTN ; no - exit
2374
2375
2376 ;#********************************************************************
2377 ; Miscellaneous variables
2378 ;#********************************************************************
2379
2380 003140' 000000 000000 SAVCSR: 0 ; final CSR data
2381 003141' 000000 000000 SAVLAR: 0 ; final LAR data
2382 003142' 000000 000000 SAVEBU: 0 ; final EBUF data
2383 003143' 000000 000000 SAVCOD: 0 ; failure code
2384
2385
2386 ;#********************************************************************
2387 ; C1516 - Compare R15 and R16 and dispatch correctly on error, also
2388 ; check if a PLI parity error occurred on the read.
2389 ;#********************************************************************
2390
2391 003144' 300000 000000 C1516: MWORD <ADDR=3000,CONT,SAB,AND,A=14,B=15,D=2> ; 3000
2392 003145' 142146 400340
2393 003146' 300100 000000 MWORD <CONT,SAB,AND,A=14,B=16,D=2> ; 3001
2394 003147' 142147 000340
2395 003150' 300230 040000 MWORD <CJP,J=3004,SAB,XOR,A=15,B=16,D=1,CENA,CCFZ> ; 3002
2396 003151' 161557 020060
2397 003152' 300350 000000 MWORD <JMAP,J=5000> ; 3003
2398 003153' 000000 000040
2399 003154' 300430 060000 MWORD <CJP,J=3006,D=1,CENA,CCPP> ; 3004
2400 003155' 001400 150060
2401 003156' 300500 000000 MWORD <CRTN> ; 3005
2402 003157' 000000 000240
2403 003160' 300650 000000 MWORD <JMAP,J=5000,S0B,PLUS,B=17,D=2,CRY> ; 3006
2404 003161' 302007 400440
2405 003162' 777777 777777 -1
2406
2407
2408 ;#********************************************************************
2409 ; Exit - write completion code to EBUF
2410 ;#********************************************************************
2411
2412 003163' 500050 010000 MEXIT: MWORD <ADDR=5000,JMAP,J=5001,S0B,AND,B=12,D=2> ; 5000
2413 003164' 342005 000040
2414 003165' 500100 110000 MWORD <LDCT,J=11,S0B,PLUS,B=12,D=2,CRY> ; 5001
2415 003166' 302005 000700
2416 003167' 500250 020000 MWORD <RPCT,J=5002,S0B,OR,B=12,D=7> ; 5002
2417 003170' 337005 000220
2418 003171' 500300 002004 MWORD <CONT,S0B,OR,B=12,D=1,OENA,SELE,MGC=4> ; 5003
2419 003172' 331005 005340
2420 003173' 500450 060040 MWORD <CJP,J=5006,CENA,CCGC,D=1,SELE,MGC=40> ; 5004
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 27-1
DFCIA2 MAC 18-Mar-84 10:46 Miscellaneous Routines SEQ 0555
2421 003174' 001400 015060
2422 003175' 500550 040000 MWORD <JMAP,J=5004,D=1> ; 5005
2423 003176' 001000 000040
2424 003177' 500600 000200 MWORD <CONT,D=1,SELE,MGC=200> ; 5006
2425 003200' 001000 005340
2426 003201' 500700 002004 MWORD <CONT,S0B,OR,B=17,D=1,OENA,SELE,MGC=4> ; 5007
2427 003202' 331007 405340
2428 003203' 501050 100000 MWORD <JMAP,J=5010,D=1> ; 5010
2429 003204' 001000 000040
2430 003205' 777777 777777 -1
2431
2432
2433 ;#********************************************************************
2434 ; MRESET - Reset the Packet Buffer and Link modules
2435 ;#********************************************************************
2436
2437 003206' 400040 010000 MRESET: MWORD <ADDR=4000,JMAP,J=4001,D=1> ; 4000 Start.
2438 003207' 001000 000040
2439 003210' 400100 000240 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=240> ; 4001 Set MMode, Release
2440 003211' 732000 240340
2441 003212' 400200 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4002 Rcv Buffer A, Turn
2442 003213' 431000 002340
2443 003214' 400340 260274 MWORD <CJS,J=4026,SELP,MGC=274,D=1> ; 4003 on Green LED.
2444 003215' 001000 001020
2445
2446 003216' 400400 000241 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=241> ; 4004 Set MMode, Release
2447 003217' 732000 240340
2448 003220' 400500 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4005 Rcv Buffer B, Turn
2449 003221' 431000 002340
2450 003222' 400640 260274 MWORD <CJS,J=4026,SELP,MGC=274,D=1> ; 4006 on Green LED.
2451 003223' 001000 001020
2452
2453 003224' 400700 000000 MWORD <CONT,S0A,AND,D=2> ; 4007 Disable link
2454 003225' 442000 000340
2455 003226' 401000 000000 MWORD <CONT,S0A,XNOR,D=2> ; 4010 control logic.
2456 003227' 472000 000340
2457 003230' 401100 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4011
2458 003231' 431000 002340
2459 003232' 401240 260354 MWORD <CJS,J=4026,SELP,MGC=354,D=1> ; 4012
2460 003233' 001000 001020
2461
2462 003234' 401300 000040 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=40> ; 4013 Enable link
2463 003235' 732000 240340
2464 003236' 401400 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4014 control logic.
2465 003237' 431000 002340
2466 003240' 401540 260354 MWORD <CJS,J=4026,SELP,MGC=354,D=1> ; 4015
2467 003241' 001000 001020
2468
2469 003242' 401600 000332 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=332> ; 4016 Read node address
2470 003243' 342006 401340
2471 003244' 401700 000300 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300> ; 4017 into R0 and LS10
2472 003245' 732006 402340
2473 003246' 402000 002010 MWORD <CONT,S0A,A=15,OR,D=2,OENA,LDLM,MGC=10>
2474 003247' 432150 230340
2475
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 27-2
DFCIA2 MAC 18-Mar-84 10:46 Miscellaneous Routines SEQ 0556
2476 003250' 402140 242040 MWORD <CJS,J=4024,S0A,AND,OENA,SELM,MGC=40>; 4021 Reset xmit
2477 003251' 440000 002020
2478 003252' 402240 242040 MWORD <CJS,J=4024,S0A,AND,OENA,SELM,MGC=40>; 4022 status
2479 003253' 440000 002020
2480 003254' 402300 000000 MWORD <CRTN,D=1> ; 4023 twice, then
2481 003255' 001000 000240
2482 003256' 402440 260050 MWORD <CJS,J=4026,SELP,MGC=50,D=1> ; 4024 return.
2483 003257' 001000 001020
2484 003260' 402500 000030 MWORD <CRTN,D=1,SELM,MGC=30> ; 4025
2485 003261' 001000 002240
2486
2487 003262' 402600 070000 MWORD <LDCT,J=7,D=1> ; 4026 Subroutine to
2488 003263' 001000 000300
2489 003264' 402740 270000 MWORD <RPCT,J=4027,D=1> ; 4027 do a short
2490 003265' 001000 000220
2491 003266' 403000 000000 MWORD <CRTN,D=1> ; 4030 delay.
2492 003267' 001000 000240
2493 003270' 777777 777777 -1
2494
2495
2496 ;#********************************************************************
2497 ; MRESTA - Reset Packet Buffer/Link (but don't reset Buffer Full flags)
2498 ;#********************************************************************
2499
2500 003271' 400040 010000 MRESTA: MWORD <ADDR=4000,JMAP,J=4001,D=1> ; 4000 Start.
2501 003272' 001000 000040
2502 003273' 400100 000200 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=200> ; 4001 Set MMode, Turn
2503 003274' 732000 240340
2504 003275' 400200 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4002 on Green LED.
2505 003276' 431000 002340
2506 003277' 400340 230274 MWORD <CJS,J=4023,SELP,MGC=274,D=1> ; 4003
2507 003300' 001000 001020
2508
2509 003301' 400400 000000 MWORD <CONT,S0A,AND,D=2> ; 4004 Disable link
2510 003302' 442000 000340
2511 003303' 400500 000000 MWORD <CONT,S0A,XNOR,D=2> ; 4005 control logic.
2512 003304' 472000 000340
2513 003305' 400600 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4006
2514 003306' 431000 002340
2515 003307' 400740 230354 MWORD <CJS,J=4023,SELP,MGC=354,D=1> ; 4007
2516 003310' 001000 001020
2517
2518 003311' 401000 000040 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=40> ; 4010 Enable link
2519 003312' 732000 240340
2520 003313' 401100 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 4011 control logic.
2521 003314' 431000 002340
2522 003315' 401240 230354 MWORD <CJS,J=4023,SELP,MGC=354,D=1> ; 4012
2523 003316' 001000 001020
2524
2525 003317' 401300 000332 MWORD <CONT,S0B,AND,B=15,D=2,SELP,MGC=332> ; 4013 Read node address
2526 003320' 342006 401340
2527 003321' 401400 000300 MWORD <CONT,SD0,OR,B=15,D=2,SELM,MGC=300> ; 4014 into R0 and LS10
2528 003322' 732006 402340
2529 003323' 401500 002010 MWORD <CONT,S0A,A=15,OR,D=2,OENA,LDLM,MGC=10>
2530 003324' 432150 230340
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page 27-3
DFCIA2 MAC 18-Mar-84 10:46 Miscellaneous Routines SEQ 0557
2531
2532 003325' 401640 212040 MWORD <CJS,J=4021,S0A,AND,OENA,SELM,MGC=40>; 4016 Reset xmit
2533 003326' 440000 002020
2534 003327' 401740 212040 MWORD <CJS,J=4021,S0A,AND,OENA,SELM,MGC=40>; 4017 status
2535 003330' 440000 002020
2536 003331' 402000 000000 MWORD <CRTN,D=1> ; 4020 twice, then
2537 003332' 001000 000240
2538 003333' 402140 230050 MWORD <CJS,J=4023,SELP,MGC=50,D=1> ; 4021 return.
2539 003334' 001000 001020
2540 003335' 402200 000030 MWORD <CRTN,D=1,SELM,MGC=30> ; 4022
2541 003336' 001000 002240
2542
2543 003337' 402300 070000 MWORD <LDCT,J=7,D=1> ; 4023 Subroutine to
2544 003340' 001000 000300
2545 003341' 402440 240000 MWORD <RPCT,J=4024,D=1> ; 4024 do a short
2546 003342' 001000 000220
2547 003343' 402500 000000 MWORD <CRTN,D=1> ; 4025 delay.
2548 003344' 001000 000240
2549 003345' 777777 777777 -1
2550
2551 ;#********************************************************************
2552 ; End of DFCIA2.MAC
2553 ;#********************************************************************
2554
2555 XLIST
2556
NO ERRORS DETECTED
PROGRAM BREAK IS 004174
CPU TIME USED 04:37.804
154P CORE USED
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page S-1
DFCIA2 MAC 18-Mar-84 10:46 SYMBOL TABLE SEQ 0558
BUFF 002050' ext MWAIT1 003055' TLOAD 002666' ext .LCJP 000000 spd
BUFGEN 002046' ext P 000017 TRACE 003004' ext .LCJS 000000 spd
C1516 003144' ent PAT 000014 TREAD 000007 spd .LCONT 000000 spd
CALL 200000 000000 spd PCB 000000 ext TS6 002766' .LCRTN 000000 spd
CHINIT 002034' ext PDUMP 003135' TS7 003023' .LCRY 000000 spd
CPORT 003027' ext PNT4 037200 000000 TS7PAK 003027' .LD 000000 spd
CSRPNT 000000 ext PNT6 037300 000000 TSLOAD 000002' ext .LJ 010000 spd
DDEBUG 003135' ext PNTHW 037540 000000 TST1 000000' ent .LJMAP 000000 spd
DDUMP 003136' ext PNTMSG 037000 000000 TST2 000456' ent .LJZ 000000 spd
DELAY 005000 000000 PNTOCS 037700 000003 TST3 002025' ent .LLDCT 000000 spd
ERESET 000053' ext PUT 261740 000000 TST4 002521' ent .LLDLM 000000 spd
ERFLG 000015 RDCRAM 000112' ext TST5 002663' ent .LLSAD 000000 spd
FERR 004163' RDCSR 003047' ext TST6 002746' ent .LMGC 000001 spd
GET 262740 000000 RDEBUF 003062' ext TST7 003003' ent .LOENA 002000 spd
GO 260740 000000 RDLAR 003071' ext TSTART 000001 spd .LOR 000000 spd
IPACLR 003101' ext RTN 263740 000000 TSTEBF 200000 spd .LPLUS 000000 spd
LAST 010000 000000 spd SAVCOD 003143' int TSTEND 003021' ext .LRAM 000000 spd
LDCRAM 000111' ext SAVCR1 004164' TSTSUB 003036' ext .LRDLM 000000 spd
LDCSR 003106' ext SAVCR2 004165' TSTTAB 000000 ext .LRPCT 000000 spd
LDEBUF 000057' ext SAVCRA 004166' TTPNT 000000 ext .LS0A 000000 spd
LDRAR 003104' ext SAVCS1 004167' TX1 000126' .LS0B 000000 spd
M1CRAM 000202' SAVCS2 004170' TX2 000471' .LSAB 000000 spd
M1CSR 000140' SAVCS3 004171' TX3 002063' .LSAQ 000000 spd
M1EBUF 000161' SAVCSR 003140' int TX4 002537' .LSD0 000000 spd
MA1 000130' SAVEB1 004172' TX5 002676' .LSELC 000000 spd
MA1PNT 000133' SAVEB2 004173' TX6 002764' .LSELE 000000 spd
MA2 000473' SAVEBU 003142' int TX7 003021' .LSELF 000000 spd
MA2LST 000501' SAVLAR 003141' int TXALL 060000 000000 spd .LSELM 000000 spd
MA2PNT 000475' SCOPER 027000 000000 TXNOT 040000 000000 spd .LSELP 000000 spd
MA3 002065' SCOSW 000202' ext TXTINH 000200 spd .LSKCN 000000 spd
MA3LST 002073' SELLAR 040000 spd UDEBUG 003551' ext .LSMIN 000000 spd
MA3PNT 002067' T2M 000510' ent USER 030037 .LTIM 000000 spd
MA4 002541' T3M 002104' ent Z2 000000' .LXNOR 000000 spd
MA4LST 002547' T4A 002527' $ARG2 000001 .LXOR 000000 spd
MA4PNT 002543' T4M 002560' ent $B 000044 .MA 000017 spd
MA5 002700' T5M 002711' ent $CHR 000044 .MAND 000007 spd
MA5LST 002706' TA1 000004' $GARG 000001 .MB 000017 spd
MA5PNT 002702' TA1PAT 000246' %ADDR 004026 spd .MCCCA 000037 spd
MA6 002774' TA6 002753' %ML 402500 000000 spd .MCCCE 000037 spd
MA6PNT 003000' TA7 003010' %MR 001000 000240 spd .MCCCP 000037 spd
MA7 003032' TB1 000045' .DATAI 000000 ext .MCCEB 000037 spd
MA7PNT 003036' TB6 002754' .DATAO 002055' ext .MCCER 000037 spd
MC1 000156' TB7 003011' .LA 000000 spd .MCCFZ 000037 spd
MD1 000177' TC1 000046' .LADDR 000100 000000 spd .MCCGC 000037 spd
MEXIT 003163' ent TC1PAT 000334' .LAND 000000 spd .MCCPP 000037 spd
MPNTC 000230' TCALL 000002 spd .LB 000000 spd .MCENA 000001 spd
MPRINT 003111' ent TCOMP 002000 spd .LCCCA 000000 spd .MCJP 000017 spd
MPRINX 003131' TD1 000072' .LCCCE 000000 spd .MCJS 000017 spd
MPRUN 000010 spd TD1PAT 000451' .LCCCP 000000 spd .MCONT 000017 spd
MRESET 003206' ent TDENA 000100 000000 spd .LCCEB 000000 spd .MCRTN 000017 spd
MRESTA 003271' ent TE1 000073' .LCCER 000000 spd .MCRY 000001 spd
MSG 100000 000000 spd TEXEC 003011' ext .LCCFZ 000000 spd .MD 000007 spd
MSTART 003100' ent TF1 000103' .LCCGC 000000 spd .MJ 007777 spd
MWAIT 003041' ent TFLOAD 000000 ext .LCCPP 000000 spd .MJMAP 000017 spd
MWAIT0 003045' TLAST 000000 spd .LCENA 000000 spd .MJZ 000017 spd
.MAIN MACRO %53A(1152) 18:47 29-Oct-84 Page S-2
DFCIA2 MAC 18-Mar-84 10:46 SYMBOL TABLE SEQ 0559
.MLDCT 000017 spd .RRPCT 000220 spd
.MLDLM 000037 spd .RS0A 400000 000000 spd
.MLSAD 000037 spd .RS0B 300000 000000 spd
.MMGC 001777 spd .RSAB 100000 000000 spd
.MOENA 000001 spd .RSAQ 000000 spd
.MOR 000007 spd .RSD0 700000 000000 spd
.MPLUS 000007 spd .RSELC 004000 spd
.MRAM 000001 spd .RSELE 005000 spd
.MRDLM 000037 spd .RSELF 003000 spd
.MRPCT 000017 spd .RSELM 002000 spd
.MS0A 000007 spd .RSELP 001000 spd
.MS0B 000007 spd .RSKCN 240000 spd
.MSAB 000007 spd .RSMIN 010000 000000 spd
.MSAQ 000007 spd .RTIM 000010 spd
.MSD0 000007 spd .RXNOR 070000 000000 spd
.MSELC 000007 spd .RXOR 060000 000000 spd
.MSELE 000007 spd
.MSELF 000007 spd
.MSELM 000007 spd
.MSELP 000007 spd
.MSKCN 000037 spd
.MSMIN 000007 spd
.MTIM 000001 spd
.MXNOR 000007 spd
.MXOR 000007 spd
.RA 000010 000000 spd
.RAND 040000 000000 spd
.RB 400000 spd
.RCCCA 000000 spd
.RCCCE 160000 spd
.RCCCP 140000 spd
.RCCEB 040000 spd
.RCCER 100000 spd
.RCCFZ 020000 spd
.RCCGC 010000 spd
.RCCPP 150000 spd
.RCENA 000400 000000 spd
.RCJP 000060 spd
.RCJS 000020 spd
.RCONT 000340 spd
.RCRTN 000240 spd
.RCRY 000400 spd
.RD 001000 000000 spd
.RJ 000000 spd
.RJMAP 000040 spd
.RJZ 000000 spd
.RLDCT 000300 spd
.RLDLM 230000 spd
.RLSAD 200000 spd
.RMGC 000000 spd
.ROENA 000000 spd
.ROR 030000 000000 spd
.RPLUS 000000 spd
.RRAM 000200 000000 spd
.RRDLM 220000 spd
BUFF 19# 1416 1423 1430
BUFGEN 29# 1425 SEQ 0560
C1516 14 1991 2106 2391#
CALL 202 203 230 252 545 1452 1874 2048 2181 2182 2183 2259 2260 2261
CHINIT 25# 1415
CPORT 20# 2253
CSRPNT 19#
DDEBUG 19# 2371
DDUMP 20# 2372
ERESET 25# 74 127
ERFLG 83 87 100 104 135 139 179 183 1857 1858 2156 2163 2230 2237
2288 2298 2305
FERR 1844# 1844 1856 1857
IPACLR 25# 157 2152 2226 2323
LAST 204 231 253 545 1453 1875 2049 2184 2262
LDCRAM 24# 174
LDCSR 24# 76 93 129 2300 2310 2328
LDEBUF 24# 131
LDRAR 24# 160 2326
M1CRAM 252 255#
M1CSR 203 212#
M1EBUF 230 234#
MA1 84 101 202#
MA1PNT 202 206#
MA2 534 545#
MA2LST 548 553#
MA2PNT 545 548#
MA3 1441 1452#
MA3LST 1455 1460#
MA3PNT 1452 1455#
MA4 1863 1874#
MA4LST 1877 1882#
MA4PNT 1874 1877#
MA5 2037 2048#
MA5LST 2051 2056#
MA5PNT 2048 2051#
MA6 2160 2181#
MA6PNT 2181 2186#
MA7 2234 2259#
MA7PNT 2259 2264#
MC1 136 229#
MD1 180 251#
MEXIT 14 1356 1792 1995 2110 2412#
MPNTC 270 276 278#
MPRINT 14 550 1457 1879 2053 2340#
MPRINX 2352 2359 2363#
MPRUN 2289 2327
MRESET 14 1993 2108 2437#
MRESTA 14 2500#
MSG 204 229 231 251 253 1453 1875 2049 2184 2262
MSTART 14 528 1429 1853 2031 2322#
MWAIT 14 530 1437 1855 2033 2279#
MWAIT0 2285# 2292
MWAIT1 2290 2296#
P 2360 SEQ 0561
PAT 1424
PCB 20# 1421
PDUMP 2183 2261 2371#
RDCRAM 24# 175
RDCSR 24# 77 94 2287
RDEBUF 24# 132 2301
RDLAR 24# 2311
SAVCOD 15 2383#
SAVCR1 167# 167 178 269
SAVCR2 177# 177 275
SAVCRA 159# 159 257 260
SAVCS1 75# 75 92 207
SAVCS2 81# 81 98 217
SAVCS3 79# 79 96 223
SAVCSR 15 2296 2343 2345 2380#
SAVEB1 126# 126 130 134 239
SAVEB2 133# 133 245
SAVEBU 15 2302 2354 2382#
SAVLAR 15 2313 2350 2381#
SCOSW 29# 212 234 255
SELLAR 2309
T2M 10 522 567#
T3M 10 1409 1484#
T4A 1853# 1859
T4M 10 1847 1898#
T5M 10 2025 2066#
TA1 71# 109
TA1PAT 72 80 97 300#
TA6 2152#
TA7 2226#
TB1 73 115#
TB6 2153# 2155 2163
TB7 2227# 2229 2237
TC1 119# 144
TC1PAT 120 357#
TCALL 2247 2248
TCOMP 2291 2297 2346
TD1 122 150#
TD1PAT 165 437#
TDENA 1403
TE1 154# 169
TEXEC 20# 2153 2227
TF1 165# 189
TFLOAD 19#
TLAST 2177 2178 2249 2250
TLOAD 19# 523 1410 1848 2026
TRACE 19# 60 521 1408 1846 2024 2145 2219
TREAD 2173 2174 2175 2176 2177 2248 2249
TS6 2146 2172#
TS7 2220 2246# 2254
TS7PAK 2247 2253#
TSLOAD 20# 61
TST1 9 59# SEQ 0562
TST2 9 520#
TST3 9 1401#
TST4 9 1844#
TST5 9 2023#
TST6 9 2144#
TST7 9 2218#
TSTART 2172 2173 2246 2247
TSTEBF 128 2299
TSTEND 20# 193 540 1447 1869 2043 2167 2241
TSTSUB 19# 71 91 119 173 2147 2186 2221 2264
TSTTAB 20# 1402 1405
TTPNT 20# 2182 2260
TX1 86 87 103 104 138 139 156 182 183 193#
TX2 536 540#
TX3 1443 1447#
TX4 1865 1869#
TX5 2039 2043#
TX6 2154 2162 2167#
TX7 2228 2236 2241#
TXALL 203 204 230 231 252 253 546 1453 1875 2049 2182 2183 2184 2260
2261 2262
TXNOT 202 229 251 545 1452 1874 2048 2181 2259
TXTINH 213 215 219 221 235 237 241 243 265 267 271 273
UDEBUG 19# 188 1404 1417 1431 1434
USER 1401
Z2 35# 59 520 1407 1845 2023 2144 2218
$ARG2 567# 567 569# 569 578# 578 580# 580 582# 582 584# 584 586# 586
588# 588 590# 590 592# 592 594# 594 596# 596 598# 598 600# 600
605# 605 607# 607 609# 609 611# 611 613# 613 615# 615 617# 617
619# 619 621# 621 623# 623 625# 625 627# 627 629# 629 631# 631
633# 633 635# 635 637# 637 639# 639 641# 641 643# 643 645# 645
647# 647 649# 649 651# 651 653# 653 655# 655 657# 657 659# 659
661# 661 663# 663 665# 665 667# 667 669# 669 674# 674 676# 676
678# 678 680# 680 682# 682 684# 684 686# 686 688# 688 690# 690
692# 692 694# 694 696# 696 698# 698 700# 700 702# 702 704# 704
706# 706 708# 708 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 728# 728 730# 730 732# 732
734# 734 736# 736 738# 738 740# 740 742# 742 744# 744 746# 746
748# 748 750# 750 752# 752 754# 754 756# 756 758# 758 760# 760
762# 762 764# 764 766# 766 768# 768 770# 770 772# 772 774# 774
776# 776 778# 778 780# 780 782# 782 784# 784 786# 786 788# 788
790# 790 792# 792 794# 794 796# 796 798# 798 800# 800 802# 802
804# 804 806# 806 808# 808 810# 810 812# 812 814# 814 816# 816
818# 818 820# 820 822# 822 824# 824 826# 826 828# 828 830# 830
832# 832 834# 834 836# 836 838# 838 840# 840 842# 842 844# 844
846# 846 848# 848 850# 850 852# 852 854# 854 856# 856 858# 858
860# 860 862# 862 864# 864 866# 866 868# 868 870# 870 872# 872
874# 874 876# 876 878# 878 880# 880 882# 882 884# 884 886# 886
888# 888 890# 890 892# 892 894# 894 896# 896 898# 898 900# 900
902# 902 904# 904 906# 906 908# 908 910# 910 912# 912 914# 914
916# 916 918# 918 920# 920 922# 922 924# 924 926# 926 928# 928
930# 930 939# 939 941# 941 943# 943 945# 945 947# 947 949# 949
951# 951 953# 953 955# 955 957# 957 959# 959 961# 961 966# 966 SEQ 0563
968# 968 970# 970 972# 972 974# 974 983# 983 985# 985 987# 987
989# 989 991# 991 993# 993 995# 995 997# 997 999# 999 1001# 1001
1004# 1004 1006# 1006 1008# 1008 1010# 1010 1012# 1012 1014# 1014 1019# 1019
1021# 1021 1023# 1023 1025# 1025 1027# 1027 1029# 1029 1031# 1031 1033# 1033
1042# 1042 1044# 1044 1046# 1046 1048# 1048 1050# 1050 1052# 1052 1055# 1055
1057# 1057 1059# 1059 1061# 1061 1063# 1063 1065# 1065 1070# 1070 1072# 1072
1074# 1074 1076# 1076 1078# 1078 1080# 1080 1082# 1082 1084# 1084 1086# 1086
1088# 1088 1090# 1090 1092# 1092 1094# 1094 1096# 1096 1098# 1098 1100# 1100
1102# 1102 1104# 1104 1106# 1106 1108# 1108 1110# 1110 1112# 1112 1114# 1114
1116# 1116 1118# 1118 1120# 1120 1122# 1122 1124# 1124 1126# 1126 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1138# 1138 1140# 1140 1142# 1142
1144# 1144 1146# 1146 1148# 1148 1150# 1150 1152# 1152 1154# 1154 1156# 1156
1158# 1158 1160# 1160 1162# 1162 1164# 1164 1166# 1166 1168# 1168 1170# 1170
1172# 1172 1174# 1174 1176# 1176 1178# 1178 1180# 1180 1182# 1182 1184# 1184
1186# 1186 1188# 1188 1190# 1190 1192# 1192 1194# 1194 1196# 1196 1198# 1198
1200# 1200 1202# 1202 1204# 1204 1206# 1206 1208# 1208 1210# 1210 1219# 1219
1221# 1221 1223# 1223 1225# 1225 1227# 1227 1229# 1229 1231# 1231 1233# 1233
1235# 1235 1237# 1237 1242# 1242 1244# 1244 1246# 1246 1248# 1248 1250# 1250
1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262 1264# 1264
1266# 1266 1268# 1268 1270# 1270 1272# 1272 1274# 1274 1283# 1283 1285# 1285
1287# 1287 1289# 1289 1291# 1291 1293# 1293 1296# 1296 1298# 1298 1300# 1300
1302# 1302 1304# 1304 1306# 1306 1311# 1311 1313# 1313 1315# 1315 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1342# 1342 1344# 1344 1346# 1346 1348# 1348
1484# 1484 1486# 1486 1488# 1488 1490# 1490 1492# 1492 1502# 1502 1504# 1504
1506# 1506 1508# 1508 1510# 1510 1512# 1512 1515# 1515 1517# 1517 1519# 1519
1521# 1521 1523# 1523 1528# 1528 1530# 1530 1532# 1532 1534# 1534 1536# 1536
1538# 1538 1540# 1540 1542# 1542 1544# 1544 1546# 1546 1548# 1548 1550# 1550
1552# 1552 1554# 1554 1556# 1556 1558# 1558 1563# 1563 1565# 1565 1567# 1567
1569# 1569 1571# 1571 1573# 1573 1575# 1575 1577# 1577 1579# 1579 1581# 1581
1583# 1583 1585# 1585 1587# 1587 1589# 1589 1591# 1591 1593# 1593 1595# 1595
1597# 1597 1599# 1599 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1617# 1617
1619# 1619 1621# 1621 1623# 1623 1625# 1625 1627# 1627 1629# 1629 1631# 1631
1633# 1633 1635# 1635 1637# 1637 1642# 1642 1644# 1644 1646# 1646 1648# 1648
1650# 1650 1652# 1652 1654# 1654 1656# 1656 1658# 1658 1660# 1660 1662# 1662
1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672 1674# 1674 1681# 1681
1683# 1683 1685# 1685 1687# 1687 1689# 1689 1691# 1691 1693# 1693 1695# 1695
1697# 1697 1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709
1716# 1716 1718# 1718 1720# 1720 1722# 1722 1724# 1724 1726# 1726 1728# 1728
1730# 1730 1732# 1732 1734# 1734 1736# 1736 1738# 1738 1740# 1740 1742# 1742
1744# 1744 1746# 1746 1748# 1748 1750# 1750 1752# 1752 1754# 1754 1756# 1756
1758# 1758 1760# 1760 1762# 1762 1764# 1764 1766# 1766 1768# 1768 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1898# 1898 1900# 1900 1902# 1902 1904# 1904 1906# 1906 1918# 1918 1920# 1920
1922# 1922 1924# 1924 1926# 1926 1928# 1928 1930# 1930 1937# 1937 1939# 1939
1941# 1941 1943# 1943 1945# 1945 1947# 1947 1954# 1954 1956# 1956 1958# 1958
1960# 1960 1962# 1962 1964# 1964 1971# 1971 1973# 1973 1975# 1975 1977# 1977
1979# 1979 1981# 1981 2066# 2066 2068# 2068 2070# 2070 2072# 2072 2074# 2074
2086# 2086 2088# 2088 2090# 2090 2092# 2092 2094# 2094 2096# 2096 2391# 2391
2393# 2393 2395# 2395 2397# 2397 2399# 2399 2401# 2401 2403# 2403 2412# 2412
2414# 2414 2416# 2416 2418# 2418 2420# 2420 2422# 2422 2424# 2424 2426# 2426
2428# 2428 2437# 2437 2439# 2439 2441# 2441 2443# 2443 2446# 2446 2448# 2448
2450# 2450 2453# 2453 2455# 2455 2457# 2457 2459# 2459 2462# 2462 2464# 2464 SEQ 0564
2466# 2466 2469# 2469 2471# 2471 2473# 2473 2476# 2476 2478# 2478 2480# 2480
2482# 2482 2484# 2484 2487# 2487 2489# 2489 2491# 2491 2500# 2500 2502# 2502
2504# 2504 2506# 2506 2509# 2509 2511# 2511 2513# 2513 2515# 2515 2518# 2518
2520# 2520 2522# 2522 2525# 2525 2527# 2527 2529# 2529 2532# 2532 2534# 2534
2536# 2536 2538# 2538 2540# 2540 2543# 2543 2545# 2545 2547# 2547
$B 567# 567 569# 569 578# 578 580# 580 582# 582 584# 584 586# 586
588# 588 590# 590 592# 592 594# 594 596# 596 598# 598 600# 600
605# 605 607# 607 609# 609 611# 611 613# 613 615# 615 617# 617
619# 619 621# 621 623# 623 625# 625 627# 627 629# 629 631# 631
633# 633 635# 635 637# 637 639# 639 641# 641 643# 643 645# 645
647# 647 649# 649 651# 651 653# 653 655# 655 657# 657 659# 659
661# 661 663# 663 665# 665 667# 667 669# 669 674# 674 676# 676
678# 678 680# 680 682# 682 684# 684 686# 686 688# 688 690# 690
692# 692 694# 694 696# 696 698# 698 700# 700 702# 702 704# 704
706# 706 708# 708 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 728# 728 730# 730 732# 732
734# 734 736# 736 738# 738 740# 740 742# 742 744# 744 746# 746
748# 748 750# 750 752# 752 754# 754 756# 756 758# 758 760# 760
762# 762 764# 764 766# 766 768# 768 770# 770 772# 772 774# 774
776# 776 778# 778 780# 780 782# 782 784# 784 786# 786 788# 788
790# 790 792# 792 794# 794 796# 796 798# 798 800# 800 802# 802
804# 804 806# 806 808# 808 810# 810 812# 812 814# 814 816# 816
818# 818 820# 820 822# 822 824# 824 826# 826 828# 828 830# 830
832# 832 834# 834 836# 836 838# 838 840# 840 842# 842 844# 844
846# 846 848# 848 850# 850 852# 852 854# 854 856# 856 858# 858
860# 860 862# 862 864# 864 866# 866 868# 868 870# 870 872# 872
874# 874 876# 876 878# 878 880# 880 882# 882 884# 884 886# 886
888# 888 890# 890 892# 892 894# 894 896# 896 898# 898 900# 900
902# 902 904# 904 906# 906 908# 908 910# 910 912# 912 914# 914
916# 916 918# 918 920# 920 922# 922 924# 924 926# 926 928# 928
930# 930 939# 939 941# 941 943# 943 945# 945 947# 947 949# 949
951# 951 953# 953 955# 955 957# 957 959# 959 961# 961 966# 966
968# 968 970# 970 972# 972 974# 974 983# 983 985# 985 987# 987
989# 989 991# 991 993# 993 995# 995 997# 997 999# 999 1001# 1001
1004# 1004 1006# 1006 1008# 1008 1010# 1010 1012# 1012 1014# 1014 1019# 1019
1021# 1021 1023# 1023 1025# 1025 1027# 1027 1029# 1029 1031# 1031 1033# 1033
1042# 1042 1044# 1044 1046# 1046 1048# 1048 1050# 1050 1052# 1052 1055# 1055
1057# 1057 1059# 1059 1061# 1061 1063# 1063 1065# 1065 1070# 1070 1072# 1072
1074# 1074 1076# 1076 1078# 1078 1080# 1080 1082# 1082 1084# 1084 1086# 1086
1088# 1088 1090# 1090 1092# 1092 1094# 1094 1096# 1096 1098# 1098 1100# 1100
1102# 1102 1104# 1104 1106# 1106 1108# 1108 1110# 1110 1112# 1112 1114# 1114
1116# 1116 1118# 1118 1120# 1120 1122# 1122 1124# 1124 1126# 1126 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1138# 1138 1140# 1140 1142# 1142
1144# 1144 1146# 1146 1148# 1148 1150# 1150 1152# 1152 1154# 1154 1156# 1156
1158# 1158 1160# 1160 1162# 1162 1164# 1164 1166# 1166 1168# 1168 1170# 1170
1172# 1172 1174# 1174 1176# 1176 1178# 1178 1180# 1180 1182# 1182 1184# 1184
1186# 1186 1188# 1188 1190# 1190 1192# 1192 1194# 1194 1196# 1196 1198# 1198
1200# 1200 1202# 1202 1204# 1204 1206# 1206 1208# 1208 1210# 1210 1219# 1219
1221# 1221 1223# 1223 1225# 1225 1227# 1227 1229# 1229 1231# 1231 1233# 1233
1235# 1235 1237# 1237 1242# 1242 1244# 1244 1246# 1246 1248# 1248 1250# 1250
1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262 1264# 1264
1266# 1266 1268# 1268 1270# 1270 1272# 1272 1274# 1274 1283# 1283 1285# 1285
1287# 1287 1289# 1289 1291# 1291 1293# 1293 1296# 1296 1298# 1298 1300# 1300 SEQ 0565
1302# 1302 1304# 1304 1306# 1306 1311# 1311 1313# 1313 1315# 1315 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1342# 1342 1344# 1344 1346# 1346 1348# 1348
1484# 1484 1486# 1486 1488# 1488 1490# 1490 1492# 1492 1502# 1502 1504# 1504
1506# 1506 1508# 1508 1510# 1510 1512# 1512 1515# 1515 1517# 1517 1519# 1519
1521# 1521 1523# 1523 1528# 1528 1530# 1530 1532# 1532 1534# 1534 1536# 1536
1538# 1538 1540# 1540 1542# 1542 1544# 1544 1546# 1546 1548# 1548 1550# 1550
1552# 1552 1554# 1554 1556# 1556 1558# 1558 1563# 1563 1565# 1565 1567# 1567
1569# 1569 1571# 1571 1573# 1573 1575# 1575 1577# 1577 1579# 1579 1581# 1581
1583# 1583 1585# 1585 1587# 1587 1589# 1589 1591# 1591 1593# 1593 1595# 1595
1597# 1597 1599# 1599 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1617# 1617
1619# 1619 1621# 1621 1623# 1623 1625# 1625 1627# 1627 1629# 1629 1631# 1631
1633# 1633 1635# 1635 1637# 1637 1642# 1642 1644# 1644 1646# 1646 1648# 1648
1650# 1650 1652# 1652 1654# 1654 1656# 1656 1658# 1658 1660# 1660 1662# 1662
1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672 1674# 1674 1681# 1681
1683# 1683 1685# 1685 1687# 1687 1689# 1689 1691# 1691 1693# 1693 1695# 1695
1697# 1697 1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709
1716# 1716 1718# 1718 1720# 1720 1722# 1722 1724# 1724 1726# 1726 1728# 1728
1730# 1730 1732# 1732 1734# 1734 1736# 1736 1738# 1738 1740# 1740 1742# 1742
1744# 1744 1746# 1746 1748# 1748 1750# 1750 1752# 1752 1754# 1754 1756# 1756
1758# 1758 1760# 1760 1762# 1762 1764# 1764 1766# 1766 1768# 1768 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1898# 1898 1900# 1900 1902# 1902 1904# 1904 1906# 1906 1918# 1918 1920# 1920
1922# 1922 1924# 1924 1926# 1926 1928# 1928 1930# 1930 1937# 1937 1939# 1939
1941# 1941 1943# 1943 1945# 1945 1947# 1947 1954# 1954 1956# 1956 1958# 1958
1960# 1960 1962# 1962 1964# 1964 1971# 1971 1973# 1973 1975# 1975 1977# 1977
1979# 1979 1981# 1981 2066# 2066 2068# 2068 2070# 2070 2072# 2072 2074# 2074
2086# 2086 2088# 2088 2090# 2090 2092# 2092 2094# 2094 2096# 2096 2391# 2391
2393# 2393 2395# 2395 2397# 2397 2399# 2399 2401# 2401 2403# 2403 2412# 2412
2414# 2414 2416# 2416 2418# 2418 2420# 2420 2422# 2422 2424# 2424 2426# 2426
2428# 2428 2437# 2437 2439# 2439 2441# 2441 2443# 2443 2446# 2446 2448# 2448
2450# 2450 2453# 2453 2455# 2455 2457# 2457 2459# 2459 2462# 2462 2464# 2464
2466# 2466 2469# 2469 2471# 2471 2473# 2473 2476# 2476 2478# 2478 2480# 2480
2482# 2482 2484# 2484 2487# 2487 2489# 2489 2491# 2491 2500# 2500 2502# 2502
2504# 2504 2506# 2506 2509# 2509 2511# 2511 2513# 2513 2515# 2515 2518# 2518
2520# 2520 2522# 2522 2525# 2525 2527# 2527 2529# 2529 2532# 2532 2534# 2534
2536# 2536 2538# 2538 2540# 2540 2543# 2543 2545# 2545 2547# 2547
$CHR 567# 567 569# 569 578# 578 580# 580 582# 582 584# 584 586# 586
588# 588 590# 590 592# 592 594# 594 596# 596 598# 598 600# 600
605# 605 607# 607 609# 609 611# 611 613# 613 615# 615 617# 617
619# 619 621# 621 623# 623 625# 625 627# 627 629# 629 631# 631
633# 633 635# 635 637# 637 639# 639 641# 641 643# 643 645# 645
647# 647 649# 649 651# 651 653# 653 655# 655 657# 657 659# 659
661# 661 663# 663 665# 665 667# 667 669# 669 674# 674 676# 676
678# 678 680# 680 682# 682 684# 684 686# 686 688# 688 690# 690
692# 692 694# 694 696# 696 698# 698 700# 700 702# 702 704# 704
706# 706 708# 708 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 728# 728 730# 730 732# 732
734# 734 736# 736 738# 738 740# 740 742# 742 744# 744 746# 746
748# 748 750# 750 752# 752 754# 754 756# 756 758# 758 760# 760
762# 762 764# 764 766# 766 768# 768 770# 770 772# 772 774# 774
776# 776 778# 778 780# 780 782# 782 784# 784 786# 786 788# 788
790# 790 792# 792 794# 794 796# 796 798# 798 800# 800 802# 802 SEQ 0566
804# 804 806# 806 808# 808 810# 810 812# 812 814# 814 816# 816
818# 818 820# 820 822# 822 824# 824 826# 826 828# 828 830# 830
832# 832 834# 834 836# 836 838# 838 840# 840 842# 842 844# 844
846# 846 848# 848 850# 850 852# 852 854# 854 856# 856 858# 858
860# 860 862# 862 864# 864 866# 866 868# 868 870# 870 872# 872
874# 874 876# 876 878# 878 880# 880 882# 882 884# 884 886# 886
888# 888 890# 890 892# 892 894# 894 896# 896 898# 898 900# 900
902# 902 904# 904 906# 906 908# 908 910# 910 912# 912 914# 914
916# 916 918# 918 920# 920 922# 922 924# 924 926# 926 928# 928
930# 930 939# 939 941# 941 943# 943 945# 945 947# 947 949# 949
951# 951 953# 953 955# 955 957# 957 959# 959 961# 961 966# 966
968# 968 970# 970 972# 972 974# 974 983# 983 985# 985 987# 987
989# 989 991# 991 993# 993 995# 995 997# 997 999# 999 1001# 1001
1004# 1004 1006# 1006 1008# 1008 1010# 1010 1012# 1012 1014# 1014 1019# 1019
1021# 1021 1023# 1023 1025# 1025 1027# 1027 1029# 1029 1031# 1031 1033# 1033
1042# 1042 1044# 1044 1046# 1046 1048# 1048 1050# 1050 1052# 1052 1055# 1055
1057# 1057 1059# 1059 1061# 1061 1063# 1063 1065# 1065 1070# 1070 1072# 1072
1074# 1074 1076# 1076 1078# 1078 1080# 1080 1082# 1082 1084# 1084 1086# 1086
1088# 1088 1090# 1090 1092# 1092 1094# 1094 1096# 1096 1098# 1098 1100# 1100
1102# 1102 1104# 1104 1106# 1106 1108# 1108 1110# 1110 1112# 1112 1114# 1114
1116# 1116 1118# 1118 1120# 1120 1122# 1122 1124# 1124 1126# 1126 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1138# 1138 1140# 1140 1142# 1142
1144# 1144 1146# 1146 1148# 1148 1150# 1150 1152# 1152 1154# 1154 1156# 1156
1158# 1158 1160# 1160 1162# 1162 1164# 1164 1166# 1166 1168# 1168 1170# 1170
1172# 1172 1174# 1174 1176# 1176 1178# 1178 1180# 1180 1182# 1182 1184# 1184
1186# 1186 1188# 1188 1190# 1190 1192# 1192 1194# 1194 1196# 1196 1198# 1198
1200# 1200 1202# 1202 1204# 1204 1206# 1206 1208# 1208 1210# 1210 1219# 1219
1221# 1221 1223# 1223 1225# 1225 1227# 1227 1229# 1229 1231# 1231 1233# 1233
1235# 1235 1237# 1237 1242# 1242 1244# 1244 1246# 1246 1248# 1248 1250# 1250
1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262 1264# 1264
1266# 1266 1268# 1268 1270# 1270 1272# 1272 1274# 1274 1283# 1283 1285# 1285
1287# 1287 1289# 1289 1291# 1291 1293# 1293 1296# 1296 1298# 1298 1300# 1300
1302# 1302 1304# 1304 1306# 1306 1311# 1311 1313# 1313 1315# 1315 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1342# 1342 1344# 1344 1346# 1346 1348# 1348
1484# 1484 1486# 1486 1488# 1488 1490# 1490 1492# 1492 1502# 1502 1504# 1504
1506# 1506 1508# 1508 1510# 1510 1512# 1512 1515# 1515 1517# 1517 1519# 1519
1521# 1521 1523# 1523 1528# 1528 1530# 1530 1532# 1532 1534# 1534 1536# 1536
1538# 1538 1540# 1540 1542# 1542 1544# 1544 1546# 1546 1548# 1548 1550# 1550
1552# 1552 1554# 1554 1556# 1556 1558# 1558 1563# 1563 1565# 1565 1567# 1567
1569# 1569 1571# 1571 1573# 1573 1575# 1575 1577# 1577 1579# 1579 1581# 1581
1583# 1583 1585# 1585 1587# 1587 1589# 1589 1591# 1591 1593# 1593 1595# 1595
1597# 1597 1599# 1599 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1617# 1617
1619# 1619 1621# 1621 1623# 1623 1625# 1625 1627# 1627 1629# 1629 1631# 1631
1633# 1633 1635# 1635 1637# 1637 1642# 1642 1644# 1644 1646# 1646 1648# 1648
1650# 1650 1652# 1652 1654# 1654 1656# 1656 1658# 1658 1660# 1660 1662# 1662
1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672 1674# 1674 1681# 1681
1683# 1683 1685# 1685 1687# 1687 1689# 1689 1691# 1691 1693# 1693 1695# 1695
1697# 1697 1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709
1716# 1716 1718# 1718 1720# 1720 1722# 1722 1724# 1724 1726# 1726 1728# 1728
1730# 1730 1732# 1732 1734# 1734 1736# 1736 1738# 1738 1740# 1740 1742# 1742
1744# 1744 1746# 1746 1748# 1748 1750# 1750 1752# 1752 1754# 1754 1756# 1756
1758# 1758 1760# 1760 1762# 1762 1764# 1764 1766# 1766 1768# 1768 1775# 1775 SEQ 0567
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1898# 1898 1900# 1900 1902# 1902 1904# 1904 1906# 1906 1918# 1918 1920# 1920
1922# 1922 1924# 1924 1926# 1926 1928# 1928 1930# 1930 1937# 1937 1939# 1939
1941# 1941 1943# 1943 1945# 1945 1947# 1947 1954# 1954 1956# 1956 1958# 1958
1960# 1960 1962# 1962 1964# 1964 1971# 1971 1973# 1973 1975# 1975 1977# 1977
1979# 1979 1981# 1981 2066# 2066 2068# 2068 2070# 2070 2072# 2072 2074# 2074
2086# 2086 2088# 2088 2090# 2090 2092# 2092 2094# 2094 2096# 2096 2391# 2391
2393# 2393 2395# 2395 2397# 2397 2399# 2399 2401# 2401 2403# 2403 2412# 2412
2414# 2414 2416# 2416 2418# 2418 2420# 2420 2422# 2422 2424# 2424 2426# 2426
2428# 2428 2437# 2437 2439# 2439 2441# 2441 2443# 2443 2446# 2446 2448# 2448
2450# 2450 2453# 2453 2455# 2455 2457# 2457 2459# 2459 2462# 2462 2464# 2464
2466# 2466 2469# 2469 2471# 2471 2473# 2473 2476# 2476 2478# 2478 2480# 2480
2482# 2482 2484# 2484 2487# 2487 2489# 2489 2491# 2491 2500# 2500 2502# 2502
2504# 2504 2506# 2506 2509# 2509 2511# 2511 2513# 2513 2515# 2515 2518# 2518
2520# 2520 2522# 2522 2525# 2525 2527# 2527 2529# 2529 2532# 2532 2534# 2534
2536# 2536 2538# 2538 2540# 2540 2543# 2543 2545# 2545 2547# 2547
$GARG 567# 567 569# 569 578# 578 580# 580 582# 582 584# 584 586# 586
588# 588 590# 590 592# 592 594# 594 596# 596 598# 598 600# 600
605# 605 607# 607 609# 609 611# 611 613# 613 615# 615 617# 617
619# 619 621# 621 623# 623 625# 625 627# 627 629# 629 631# 631
633# 633 635# 635 637# 637 639# 639 641# 641 643# 643 645# 645
647# 647 649# 649 651# 651 653# 653 655# 655 657# 657 659# 659
661# 661 663# 663 665# 665 667# 667 669# 669 674# 674 676# 676
678# 678 680# 680 682# 682 684# 684 686# 686 688# 688 690# 690
692# 692 694# 694 696# 696 698# 698 700# 700 702# 702 704# 704
706# 706 708# 708 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 728# 728 730# 730 732# 732
734# 734 736# 736 738# 738 740# 740 742# 742 744# 744 746# 746
748# 748 750# 750 752# 752 754# 754 756# 756 758# 758 760# 760
762# 762 764# 764 766# 766 768# 768 770# 770 772# 772 774# 774
776# 776 778# 778 780# 780 782# 782 784# 784 786# 786 788# 788
790# 790 792# 792 794# 794 796# 796 798# 798 800# 800 802# 802
804# 804 806# 806 808# 808 810# 810 812# 812 814# 814 816# 816
818# 818 820# 820 822# 822 824# 824 826# 826 828# 828 830# 830
832# 832 834# 834 836# 836 838# 838 840# 840 842# 842 844# 844
846# 846 848# 848 850# 850 852# 852 854# 854 856# 856 858# 858
860# 860 862# 862 864# 864 866# 866 868# 868 870# 870 872# 872
874# 874 876# 876 878# 878 880# 880 882# 882 884# 884 886# 886
888# 888 890# 890 892# 892 894# 894 896# 896 898# 898 900# 900
902# 902 904# 904 906# 906 908# 908 910# 910 912# 912 914# 914
916# 916 918# 918 920# 920 922# 922 924# 924 926# 926 928# 928
930# 930 939# 939 941# 941 943# 943 945# 945 947# 947 949# 949
951# 951 953# 953 955# 955 957# 957 959# 959 961# 961 966# 966
968# 968 970# 970 972# 972 974# 974 983# 983 985# 985 987# 987
989# 989 991# 991 993# 993 995# 995 997# 997 999# 999 1001# 1001
1004# 1004 1006# 1006 1008# 1008 1010# 1010 1012# 1012 1014# 1014 1019# 1019
1021# 1021 1023# 1023 1025# 1025 1027# 1027 1029# 1029 1031# 1031 1033# 1033
1042# 1042 1044# 1044 1046# 1046 1048# 1048 1050# 1050 1052# 1052 1055# 1055
1057# 1057 1059# 1059 1061# 1061 1063# 1063 1065# 1065 1070# 1070 1072# 1072
1074# 1074 1076# 1076 1078# 1078 1080# 1080 1082# 1082 1084# 1084 1086# 1086
1088# 1088 1090# 1090 1092# 1092 1094# 1094 1096# 1096 1098# 1098 1100# 1100
1102# 1102 1104# 1104 1106# 1106 1108# 1108 1110# 1110 1112# 1112 1114# 1114
1116# 1116 1118# 1118 1120# 1120 1122# 1122 1124# 1124 1126# 1126 1128# 1128 SEQ 0568
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1138# 1138 1140# 1140 1142# 1142
1144# 1144 1146# 1146 1148# 1148 1150# 1150 1152# 1152 1154# 1154 1156# 1156
1158# 1158 1160# 1160 1162# 1162 1164# 1164 1166# 1166 1168# 1168 1170# 1170
1172# 1172 1174# 1174 1176# 1176 1178# 1178 1180# 1180 1182# 1182 1184# 1184
1186# 1186 1188# 1188 1190# 1190 1192# 1192 1194# 1194 1196# 1196 1198# 1198
1200# 1200 1202# 1202 1204# 1204 1206# 1206 1208# 1208 1210# 1210 1219# 1219
1221# 1221 1223# 1223 1225# 1225 1227# 1227 1229# 1229 1231# 1231 1233# 1233
1235# 1235 1237# 1237 1242# 1242 1244# 1244 1246# 1246 1248# 1248 1250# 1250
1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262 1264# 1264
1266# 1266 1268# 1268 1270# 1270 1272# 1272 1274# 1274 1283# 1283 1285# 1285
1287# 1287 1289# 1289 1291# 1291 1293# 1293 1296# 1296 1298# 1298 1300# 1300
1302# 1302 1304# 1304 1306# 1306 1311# 1311 1313# 1313 1315# 1315 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1342# 1342 1344# 1344 1346# 1346 1348# 1348
1484# 1484 1486# 1486 1488# 1488 1490# 1490 1492# 1492 1502# 1502 1504# 1504
1506# 1506 1508# 1508 1510# 1510 1512# 1512 1515# 1515 1517# 1517 1519# 1519
1521# 1521 1523# 1523 1528# 1528 1530# 1530 1532# 1532 1534# 1534 1536# 1536
1538# 1538 1540# 1540 1542# 1542 1544# 1544 1546# 1546 1548# 1548 1550# 1550
1552# 1552 1554# 1554 1556# 1556 1558# 1558 1563# 1563 1565# 1565 1567# 1567
1569# 1569 1571# 1571 1573# 1573 1575# 1575 1577# 1577 1579# 1579 1581# 1581
1583# 1583 1585# 1585 1587# 1587 1589# 1589 1591# 1591 1593# 1593 1595# 1595
1597# 1597 1599# 1599 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1617# 1617
1619# 1619 1621# 1621 1623# 1623 1625# 1625 1627# 1627 1629# 1629 1631# 1631
1633# 1633 1635# 1635 1637# 1637 1642# 1642 1644# 1644 1646# 1646 1648# 1648
1650# 1650 1652# 1652 1654# 1654 1656# 1656 1658# 1658 1660# 1660 1662# 1662
1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672 1674# 1674 1681# 1681
1683# 1683 1685# 1685 1687# 1687 1689# 1689 1691# 1691 1693# 1693 1695# 1695
1697# 1697 1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709
1716# 1716 1718# 1718 1720# 1720 1722# 1722 1724# 1724 1726# 1726 1728# 1728
1730# 1730 1732# 1732 1734# 1734 1736# 1736 1738# 1738 1740# 1740 1742# 1742
1744# 1744 1746# 1746 1748# 1748 1750# 1750 1752# 1752 1754# 1754 1756# 1756
1758# 1758 1760# 1760 1762# 1762 1764# 1764 1766# 1766 1768# 1768 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1898# 1898 1900# 1900 1902# 1902 1904# 1904 1906# 1906 1918# 1918 1920# 1920
1922# 1922 1924# 1924 1926# 1926 1928# 1928 1930# 1930 1937# 1937 1939# 1939
1941# 1941 1943# 1943 1945# 1945 1947# 1947 1954# 1954 1956# 1956 1958# 1958
1960# 1960 1962# 1962 1964# 1964 1971# 1971 1973# 1973 1975# 1975 1977# 1977
1979# 1979 1981# 1981 2066# 2066 2068# 2068 2070# 2070 2072# 2072 2074# 2074
2086# 2086 2088# 2088 2090# 2090 2092# 2092 2094# 2094 2096# 2096 2391# 2391
2393# 2393 2395# 2395 2397# 2397 2399# 2399 2401# 2401 2403# 2403 2412# 2412
2414# 2414 2416# 2416 2418# 2418 2420# 2420 2422# 2422 2424# 2424 2426# 2426
2428# 2428 2437# 2437 2439# 2439 2441# 2441 2443# 2443 2446# 2446 2448# 2448
2450# 2450 2453# 2453 2455# 2455 2457# 2457 2459# 2459 2462# 2462 2464# 2464
2466# 2466 2469# 2469 2471# 2471 2473# 2473 2476# 2476 2478# 2478 2480# 2480
2482# 2482 2484# 2484 2487# 2487 2489# 2489 2491# 2491 2500# 2500 2502# 2502
2504# 2504 2506# 2506 2509# 2509 2511# 2511 2513# 2513 2515# 2515 2518# 2518
2520# 2520 2522# 2522 2525# 2525 2527# 2527 2529# 2529 2532# 2532 2534# 2534
2536# 2536 2538# 2538 2540# 2540 2543# 2543 2545# 2545 2547# 2547
%ADDR 567# 567 569# 569 578# 578 580 580# 582 582# 584 584# 586 586#
588 588# 590 590# 592 592# 594 594# 596 596# 598 598# 600 600#
605# 605 607 607# 609 609# 611 611# 613 613# 615 615# 617 617#
619 619# 621 621# 623 623# 625 625# 627 627# 629 629# 631 631#
633 633# 635 635# 637 637# 639 639# 641 641# 643 643# 645 645# SEQ 0569
647 647# 649 649# 651 651# 653 653# 655 655# 657 657# 659 659#
661 661# 663 663# 665 665# 667 667# 669 669# 674# 674 676 676#
678 678# 680 680# 682 682# 684 684# 686 686# 688 688# 690 690#
692 692# 694 694# 696 696# 698 698# 700 700# 702 702# 704 704#
706 706# 708 708# 710 710# 712 712# 714 714# 716 716# 718 718#
720 720# 722 722# 724 724# 726 726# 728 728# 730 730# 732 732#
734 734# 736 736# 738 738# 740 740# 742 742# 744 744# 746 746#
748 748# 750 750# 752 752# 754 754# 756 756# 758 758# 760 760#
762 762# 764 764# 766 766# 768 768# 770 770# 772 772# 774 774#
776 776# 778 778# 780 780# 782 782# 784 784# 786 786# 788 788#
790 790# 792 792# 794 794# 796 796# 798 798# 800 800# 802 802#
804 804# 806 806# 808 808# 810 810# 812 812# 814 814# 816 816#
818 818# 820 820# 822 822# 824 824# 826 826# 828 828# 830 830#
832 832# 834 834# 836 836# 838 838# 840 840# 842 842# 844 844#
846 846# 848 848# 850 850# 852 852# 854 854# 856 856# 858 858#
860 860# 862 862# 864 864# 866 866# 868 868# 870 870# 872 872#
874 874# 876 876# 878 878# 880 880# 882 882# 884 884# 886 886#
888 888# 890 890# 892 892# 894 894# 896 896# 898 898# 900 900#
902 902# 904 904# 906 906# 908 908# 910 910# 912 912# 914 914#
916 916# 918 918# 920 920# 922 922# 924 924# 926 926# 928 928#
930 930# 939# 939 941 941# 943 943# 945 945# 947 947# 949 949#
951 951# 953 953# 955 955# 957 957# 959 959# 961 961# 966# 966
968 968# 970 970# 972 972# 974 974# 983# 983 985 985# 987 987#
989 989# 991 991# 993 993# 995 995# 997 997# 999 999# 1001 1001#
1004 1004# 1006 1006# 1008 1008# 1010 1010# 1012 1012# 1014 1014# 1019# 1019
1021 1021# 1023 1023# 1025 1025# 1027 1027# 1029 1029# 1031 1031# 1033 1033#
1042# 1042 1044 1044# 1046 1046# 1048 1048# 1050 1050# 1052 1052# 1055 1055#
1057 1057# 1059 1059# 1061 1061# 1063 1063# 1065 1065# 1070# 1070 1072 1072#
1074 1074# 1076 1076# 1078 1078# 1080 1080# 1082 1082# 1084 1084# 1086 1086#
1088 1088# 1090 1090# 1092 1092# 1094 1094# 1096 1096# 1098 1098# 1100 1100#
1102 1102# 1104 1104# 1106 1106# 1108 1108# 1110 1110# 1112 1112# 1114 1114#
1116 1116# 1118 1118# 1120 1120# 1122 1122# 1124 1124# 1126 1126# 1128 1128#
1130 1130# 1132 1132# 1134 1134# 1136 1136# 1138 1138# 1140 1140# 1142 1142#
1144 1144# 1146 1146# 1148 1148# 1150 1150# 1152 1152# 1154 1154# 1156 1156#
1158 1158# 1160 1160# 1162 1162# 1164 1164# 1166 1166# 1168 1168# 1170 1170#
1172 1172# 1174 1174# 1176 1176# 1178 1178# 1180 1180# 1182 1182# 1184 1184#
1186 1186# 1188 1188# 1190 1190# 1192 1192# 1194 1194# 1196 1196# 1198 1198#
1200 1200# 1202 1202# 1204 1204# 1206 1206# 1208 1208# 1210 1210# 1219# 1219
1221 1221# 1223 1223# 1225 1225# 1227 1227# 1229 1229# 1231 1231# 1233 1233#
1235 1235# 1237 1237# 1242 1242# 1244 1244# 1246 1246# 1248 1248# 1250 1250#
1252 1252# 1254 1254# 1256 1256# 1258 1258# 1260 1260# 1262 1262# 1264 1264#
1266 1266# 1268 1268# 1270 1270# 1272 1272# 1274 1274# 1283# 1283 1285 1285#
1287 1287# 1289 1289# 1291 1291# 1293 1293# 1296 1296# 1298 1298# 1300 1300#
1302 1302# 1304 1304# 1306 1306# 1311# 1311 1313 1313# 1315 1315# 1320 1320#
1322 1322# 1324 1324# 1326 1326# 1328 1328# 1330 1330# 1332 1332# 1334 1334#
1336 1336# 1338 1338# 1340 1340# 1342 1342# 1344 1344# 1346 1346# 1348 1348#
1484# 1484 1486# 1486 1488 1488# 1490 1490# 1492 1492# 1502# 1502 1504 1504#
1506 1506# 1508 1508# 1510 1510# 1512 1512# 1515 1515# 1517 1517# 1519 1519#
1521 1521# 1523 1523# 1528# 1528 1530 1530# 1532 1532# 1534 1534# 1536 1536#
1538 1538# 1540 1540# 1542 1542# 1544 1544# 1546 1546# 1548 1548# 1550 1550#
1552 1552# 1554 1554# 1556 1556# 1558 1558# 1563# 1563 1565 1565# 1567 1567#
1569 1569# 1571 1571# 1573 1573# 1575 1575# 1577 1577# 1579 1579# 1581 1581#
1583 1583# 1585 1585# 1587 1587# 1589 1589# 1591 1591# 1593 1593# 1595 1595# SEQ 0570
1597 1597# 1599 1599# 1609# 1609 1611 1611# 1613 1613# 1615 1615# 1617 1617#
1619 1619# 1621 1621# 1623 1623# 1625 1625# 1627 1627# 1629 1629# 1631 1631#
1633 1633# 1635 1635# 1637 1637# 1642# 1642 1644 1644# 1646 1646# 1648 1648#
1650 1650# 1652 1652# 1654 1654# 1656 1656# 1658 1658# 1660 1660# 1662 1662#
1664 1664# 1666 1666# 1668 1668# 1670 1670# 1672 1672# 1674 1674# 1681# 1681
1683 1683# 1685 1685# 1687 1687# 1689 1689# 1691 1691# 1693 1693# 1695 1695#
1697 1697# 1699 1699# 1701 1701# 1703 1703# 1705 1705# 1707 1707# 1709 1709#
1716# 1716 1718 1718# 1720 1720# 1722 1722# 1724 1724# 1726 1726# 1728 1728#
1730 1730# 1732 1732# 1734 1734# 1736 1736# 1738 1738# 1740 1740# 1742 1742#
1744 1744# 1746 1746# 1748 1748# 1750 1750# 1752 1752# 1754 1754# 1756 1756#
1758 1758# 1760 1760# 1762 1762# 1764 1764# 1766 1766# 1768 1768# 1775# 1775
1777 1777# 1779 1779# 1781 1781# 1783 1783# 1785 1785# 1787 1787# 1789 1789#
1898# 1898 1900# 1900 1902 1902# 1904 1904# 1906 1906# 1918# 1918 1920 1920#
1922 1922# 1924 1924# 1926 1926# 1928 1928# 1930 1930# 1937# 1937 1939 1939#
1941 1941# 1943 1943# 1945 1945# 1947 1947# 1954# 1954 1956 1956# 1958 1958#
1960 1960# 1962 1962# 1964 1964# 1971# 1971 1973 1973# 1975 1975# 1977 1977#
1979 1979# 1981 1981# 2066# 2066 2068# 2068 2070 2070# 2072 2072# 2074 2074#
2086# 2086 2088 2088# 2090 2090# 2092 2092# 2094 2094# 2096 2096# 2391# 2391
2393 2393# 2395 2395# 2397 2397# 2399 2399# 2401 2401# 2403 2403# 2412# 2412
2414 2414# 2416 2416# 2418 2418# 2420 2420# 2422 2422# 2424 2424# 2426 2426#
2428 2428# 2437# 2437 2439 2439# 2441 2441# 2443 2443# 2446 2446# 2448 2448#
2450 2450# 2453 2453# 2455 2455# 2457 2457# 2459 2459# 2462 2462# 2464 2464#
2466 2466# 2469 2469# 2471 2471# 2473 2473# 2476 2476# 2478 2478# 2480 2480#
2482 2482# 2484 2484# 2487 2487# 2489 2489# 2491 2491# 2500# 2500 2502 2502#
2504 2504# 2506 2506# 2509 2509# 2511 2511# 2513 2513# 2515 2515# 2518 2518#
2520 2520# 2522 2522# 2525 2525# 2527 2527# 2529 2529# 2532 2532# 2534 2534#
2536 2536# 2538 2538# 2540 2540# 2543 2543# 2545 2545# 2547 2547#
%ML 567# 567 569# 569 578# 578 580# 580 582# 582 584# 584 586# 586
588# 588 590# 590 592# 592 594# 594 596# 596 598# 598 600# 600
605# 605 607# 607 609# 609 611# 611 613# 613 615# 615 617# 617
619# 619 621# 621 623# 623 625# 625 627# 627 629# 629 631# 631
633# 633 635# 635 637# 637 639# 639 641# 641 643# 643 645# 645
647# 647 649# 649 651# 651 653# 653 655# 655 657# 657 659# 659
661# 661 663# 663 665# 665 667# 667 669# 669 674# 674 676# 676
678# 678 680# 680 682# 682 684# 684 686# 686 688# 688 690# 690
692# 692 694# 694 696# 696 698# 698 700# 700 702# 702 704# 704
706# 706 708# 708 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 728# 728 730# 730 732# 732
734# 734 736# 736 738# 738 740# 740 742# 742 744# 744 746# 746
748# 748 750# 750 752# 752 754# 754 756# 756 758# 758 760# 760
762# 762 764# 764 766# 766 768# 768 770# 770 772# 772 774# 774
776# 776 778# 778 780# 780 782# 782 784# 784 786# 786 788# 788
790# 790 792# 792 794# 794 796# 796 798# 798 800# 800 802# 802
804# 804 806# 806 808# 808 810# 810 812# 812 814# 814 816# 816
818# 818 820# 820 822# 822 824# 824 826# 826 828# 828 830# 830
832# 832 834# 834 836# 836 838# 838 840# 840 842# 842 844# 844
846# 846 848# 848 850# 850 852# 852 854# 854 856# 856 858# 858
860# 860 862# 862 864# 864 866# 866 868# 868 870# 870 872# 872
874# 874 876# 876 878# 878 880# 880 882# 882 884# 884 886# 886
888# 888 890# 890 892# 892 894# 894 896# 896 898# 898 900# 900
902# 902 904# 904 906# 906 908# 908 910# 910 912# 912 914# 914
916# 916 918# 918 920# 920 922# 922 924# 924 926# 926 928# 928
930# 930 939# 939 941# 941 943# 943 945# 945 947# 947 949# 949 SEQ 0571
951# 951 953# 953 955# 955 957# 957 959# 959 961# 961 966# 966
968# 968 970# 970 972# 972 974# 974 983# 983 985# 985 987# 987
989# 989 991# 991 993# 993 995# 995 997# 997 999# 999 1001# 1001
1004# 1004 1006# 1006 1008# 1008 1010# 1010 1012# 1012 1014# 1014 1019# 1019
1021# 1021 1023# 1023 1025# 1025 1027# 1027 1029# 1029 1031# 1031 1033# 1033
1042# 1042 1044# 1044 1046# 1046 1048# 1048 1050# 1050 1052# 1052 1055# 1055
1057# 1057 1059# 1059 1061# 1061 1063# 1063 1065# 1065 1070# 1070 1072# 1072
1074# 1074 1076# 1076 1078# 1078 1080# 1080 1082# 1082 1084# 1084 1086# 1086
1088# 1088 1090# 1090 1092# 1092 1094# 1094 1096# 1096 1098# 1098 1100# 1100
1102# 1102 1104# 1104 1106# 1106 1108# 1108 1110# 1110 1112# 1112 1114# 1114
1116# 1116 1118# 1118 1120# 1120 1122# 1122 1124# 1124 1126# 1126 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1138# 1138 1140# 1140 1142# 1142
1144# 1144 1146# 1146 1148# 1148 1150# 1150 1152# 1152 1154# 1154 1156# 1156
1158# 1158 1160# 1160 1162# 1162 1164# 1164 1166# 1166 1168# 1168 1170# 1170
1172# 1172 1174# 1174 1176# 1176 1178# 1178 1180# 1180 1182# 1182 1184# 1184
1186# 1186 1188# 1188 1190# 1190 1192# 1192 1194# 1194 1196# 1196 1198# 1198
1200# 1200 1202# 1202 1204# 1204 1206# 1206 1208# 1208 1210# 1210 1219# 1219
1221# 1221 1223# 1223 1225# 1225 1227# 1227 1229# 1229 1231# 1231 1233# 1233
1235# 1235 1237# 1237 1242# 1242 1244# 1244 1246# 1246 1248# 1248 1250# 1250
1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262 1264# 1264
1266# 1266 1268# 1268 1270# 1270 1272# 1272 1274# 1274 1283# 1283 1285# 1285
1287# 1287 1289# 1289 1291# 1291 1293# 1293 1296# 1296 1298# 1298 1300# 1300
1302# 1302 1304# 1304 1306# 1306 1311# 1311 1313# 1313 1315# 1315 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1342# 1342 1344# 1344 1346# 1346 1348# 1348
1484# 1484 1486# 1486 1488# 1488 1490# 1490 1492# 1492 1502# 1502 1504# 1504
1506# 1506 1508# 1508 1510# 1510 1512# 1512 1515# 1515 1517# 1517 1519# 1519
1521# 1521 1523# 1523 1528# 1528 1530# 1530 1532# 1532 1534# 1534 1536# 1536
1538# 1538 1540# 1540 1542# 1542 1544# 1544 1546# 1546 1548# 1548 1550# 1550
1552# 1552 1554# 1554 1556# 1556 1558# 1558 1563# 1563 1565# 1565 1567# 1567
1569# 1569 1571# 1571 1573# 1573 1575# 1575 1577# 1577 1579# 1579 1581# 1581
1583# 1583 1585# 1585 1587# 1587 1589# 1589 1591# 1591 1593# 1593 1595# 1595
1597# 1597 1599# 1599 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1617# 1617
1619# 1619 1621# 1621 1623# 1623 1625# 1625 1627# 1627 1629# 1629 1631# 1631
1633# 1633 1635# 1635 1637# 1637 1642# 1642 1644# 1644 1646# 1646 1648# 1648
1650# 1650 1652# 1652 1654# 1654 1656# 1656 1658# 1658 1660# 1660 1662# 1662
1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672 1674# 1674 1681# 1681
1683# 1683 1685# 1685 1687# 1687 1689# 1689 1691# 1691 1693# 1693 1695# 1695
1697# 1697 1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709
1716# 1716 1718# 1718 1720# 1720 1722# 1722 1724# 1724 1726# 1726 1728# 1728
1730# 1730 1732# 1732 1734# 1734 1736# 1736 1738# 1738 1740# 1740 1742# 1742
1744# 1744 1746# 1746 1748# 1748 1750# 1750 1752# 1752 1754# 1754 1756# 1756
1758# 1758 1760# 1760 1762# 1762 1764# 1764 1766# 1766 1768# 1768 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1898# 1898 1900# 1900 1902# 1902 1904# 1904 1906# 1906 1918# 1918 1920# 1920
1922# 1922 1924# 1924 1926# 1926 1928# 1928 1930# 1930 1937# 1937 1939# 1939
1941# 1941 1943# 1943 1945# 1945 1947# 1947 1954# 1954 1956# 1956 1958# 1958
1960# 1960 1962# 1962 1964# 1964 1971# 1971 1973# 1973 1975# 1975 1977# 1977
1979# 1979 1981# 1981 2066# 2066 2068# 2068 2070# 2070 2072# 2072 2074# 2074
2086# 2086 2088# 2088 2090# 2090 2092# 2092 2094# 2094 2096# 2096 2391# 2391
2393# 2393 2395# 2395 2397# 2397 2399# 2399 2401# 2401 2403# 2403 2412# 2412
2414# 2414 2416# 2416 2418# 2418 2420# 2420 2422# 2422 2424# 2424 2426# 2426
2428# 2428 2437# 2437 2439# 2439 2441# 2441 2443# 2443 2446# 2446 2448# 2448 SEQ 0572
2450# 2450 2453# 2453 2455# 2455 2457# 2457 2459# 2459 2462# 2462 2464# 2464
2466# 2466 2469# 2469 2471# 2471 2473# 2473 2476# 2476 2478# 2478 2480# 2480
2482# 2482 2484# 2484 2487# 2487 2489# 2489 2491# 2491 2500# 2500 2502# 2502
2504# 2504 2506# 2506 2509# 2509 2511# 2511 2513# 2513 2515# 2515 2518# 2518
2520# 2520 2522# 2522 2525# 2525 2527# 2527 2529# 2529 2532# 2532 2534# 2534
2536# 2536 2538# 2538 2540# 2540 2543# 2543 2545# 2545 2547# 2547
%MR 567# 567 569# 569 578# 578 580# 580 582# 582 584# 584 586# 586
588# 588 590# 590 592# 592 594# 594 596# 596 598# 598 600# 600
605# 605 607# 607 609# 609 611# 611 613# 613 615# 615 617# 617
619# 619 621# 621 623# 623 625# 625 627# 627 629# 629 631# 631
633# 633 635# 635 637# 637 639# 639 641# 641 643# 643 645# 645
647# 647 649# 649 651# 651 653# 653 655# 655 657# 657 659# 659
661# 661 663# 663 665# 665 667# 667 669# 669 674# 674 676# 676
678# 678 680# 680 682# 682 684# 684 686# 686 688# 688 690# 690
692# 692 694# 694 696# 696 698# 698 700# 700 702# 702 704# 704
706# 706 708# 708 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 728# 728 730# 730 732# 732
734# 734 736# 736 738# 738 740# 740 742# 742 744# 744 746# 746
748# 748 750# 750 752# 752 754# 754 756# 756 758# 758 760# 760
762# 762 764# 764 766# 766 768# 768 770# 770 772# 772 774# 774
776# 776 778# 778 780# 780 782# 782 784# 784 786# 786 788# 788
790# 790 792# 792 794# 794 796# 796 798# 798 800# 800 802# 802
804# 804 806# 806 808# 808 810# 810 812# 812 814# 814 816# 816
818# 818 820# 820 822# 822 824# 824 826# 826 828# 828 830# 830
832# 832 834# 834 836# 836 838# 838 840# 840 842# 842 844# 844
846# 846 848# 848 850# 850 852# 852 854# 854 856# 856 858# 858
860# 860 862# 862 864# 864 866# 866 868# 868 870# 870 872# 872
874# 874 876# 876 878# 878 880# 880 882# 882 884# 884 886# 886
888# 888 890# 890 892# 892 894# 894 896# 896 898# 898 900# 900
902# 902 904# 904 906# 906 908# 908 910# 910 912# 912 914# 914
916# 916 918# 918 920# 920 922# 922 924# 924 926# 926 928# 928
930# 930 939# 939 941# 941 943# 943 945# 945 947# 947 949# 949
951# 951 953# 953 955# 955 957# 957 959# 959 961# 961 966# 966
968# 968 970# 970 972# 972 974# 974 983# 983 985# 985 987# 987
989# 989 991# 991 993# 993 995# 995 997# 997 999# 999 1001# 1001
1004# 1004 1006# 1006 1008# 1008 1010# 1010 1012# 1012 1014# 1014 1019# 1019
1021# 1021 1023# 1023 1025# 1025 1027# 1027 1029# 1029 1031# 1031 1033# 1033
1042# 1042 1044# 1044 1046# 1046 1048# 1048 1050# 1050 1052# 1052 1055# 1055
1057# 1057 1059# 1059 1061# 1061 1063# 1063 1065# 1065 1070# 1070 1072# 1072
1074# 1074 1076# 1076 1078# 1078 1080# 1080 1082# 1082 1084# 1084 1086# 1086
1088# 1088 1090# 1090 1092# 1092 1094# 1094 1096# 1096 1098# 1098 1100# 1100
1102# 1102 1104# 1104 1106# 1106 1108# 1108 1110# 1110 1112# 1112 1114# 1114
1116# 1116 1118# 1118 1120# 1120 1122# 1122 1124# 1124 1126# 1126 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1138# 1138 1140# 1140 1142# 1142
1144# 1144 1146# 1146 1148# 1148 1150# 1150 1152# 1152 1154# 1154 1156# 1156
1158# 1158 1160# 1160 1162# 1162 1164# 1164 1166# 1166 1168# 1168 1170# 1170
1172# 1172 1174# 1174 1176# 1176 1178# 1178 1180# 1180 1182# 1182 1184# 1184
1186# 1186 1188# 1188 1190# 1190 1192# 1192 1194# 1194 1196# 1196 1198# 1198
1200# 1200 1202# 1202 1204# 1204 1206# 1206 1208# 1208 1210# 1210 1219# 1219
1221# 1221 1223# 1223 1225# 1225 1227# 1227 1229# 1229 1231# 1231 1233# 1233
1235# 1235 1237# 1237 1242# 1242 1244# 1244 1246# 1246 1248# 1248 1250# 1250
1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262 1264# 1264
1266# 1266 1268# 1268 1270# 1270 1272# 1272 1274# 1274 1283# 1283 1285# 1285 SEQ 0573
1287# 1287 1289# 1289 1291# 1291 1293# 1293 1296# 1296 1298# 1298 1300# 1300
1302# 1302 1304# 1304 1306# 1306 1311# 1311 1313# 1313 1315# 1315 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1342# 1342 1344# 1344 1346# 1346 1348# 1348
1484# 1484 1486# 1486 1488# 1488 1490# 1490 1492# 1492 1502# 1502 1504# 1504
1506# 1506 1508# 1508 1510# 1510 1512# 1512 1515# 1515 1517# 1517 1519# 1519
1521# 1521 1523# 1523 1528# 1528 1530# 1530 1532# 1532 1534# 1534 1536# 1536
1538# 1538 1540# 1540 1542# 1542 1544# 1544 1546# 1546 1548# 1548 1550# 1550
1552# 1552 1554# 1554 1556# 1556 1558# 1558 1563# 1563 1565# 1565 1567# 1567
1569# 1569 1571# 1571 1573# 1573 1575# 1575 1577# 1577 1579# 1579 1581# 1581
1583# 1583 1585# 1585 1587# 1587 1589# 1589 1591# 1591 1593# 1593 1595# 1595
1597# 1597 1599# 1599 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1617# 1617
1619# 1619 1621# 1621 1623# 1623 1625# 1625 1627# 1627 1629# 1629 1631# 1631
1633# 1633 1635# 1635 1637# 1637 1642# 1642 1644# 1644 1646# 1646 1648# 1648
1650# 1650 1652# 1652 1654# 1654 1656# 1656 1658# 1658 1660# 1660 1662# 1662
1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672 1674# 1674 1681# 1681
1683# 1683 1685# 1685 1687# 1687 1689# 1689 1691# 1691 1693# 1693 1695# 1695
1697# 1697 1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709
1716# 1716 1718# 1718 1720# 1720 1722# 1722 1724# 1724 1726# 1726 1728# 1728
1730# 1730 1732# 1732 1734# 1734 1736# 1736 1738# 1738 1740# 1740 1742# 1742
1744# 1744 1746# 1746 1748# 1748 1750# 1750 1752# 1752 1754# 1754 1756# 1756
1758# 1758 1760# 1760 1762# 1762 1764# 1764 1766# 1766 1768# 1768 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1898# 1898 1900# 1900 1902# 1902 1904# 1904 1906# 1906 1918# 1918 1920# 1920
1922# 1922 1924# 1924 1926# 1926 1928# 1928 1930# 1930 1937# 1937 1939# 1939
1941# 1941 1943# 1943 1945# 1945 1947# 1947 1954# 1954 1956# 1956 1958# 1958
1960# 1960 1962# 1962 1964# 1964 1971# 1971 1973# 1973 1975# 1975 1977# 1977
1979# 1979 1981# 1981 2066# 2066 2068# 2068 2070# 2070 2072# 2072 2074# 2074
2086# 2086 2088# 2088 2090# 2090 2092# 2092 2094# 2094 2096# 2096 2391# 2391
2393# 2393 2395# 2395 2397# 2397 2399# 2399 2401# 2401 2403# 2403 2412# 2412
2414# 2414 2416# 2416 2418# 2418 2420# 2420 2422# 2422 2424# 2424 2426# 2426
2428# 2428 2437# 2437 2439# 2439 2441# 2441 2443# 2443 2446# 2446 2448# 2448
2450# 2450 2453# 2453 2455# 2455 2457# 2457 2459# 2459 2462# 2462 2464# 2464
2466# 2466 2469# 2469 2471# 2471 2473# 2473 2476# 2476 2478# 2478 2480# 2480
2482# 2482 2484# 2484 2487# 2487 2489# 2489 2491# 2491 2500# 2500 2502# 2502
2504# 2504 2506# 2506 2509# 2509 2511# 2511 2513# 2513 2515# 2515 2518# 2518
2520# 2520 2522# 2522 2525# 2525 2527# 2527 2529# 2529 2532# 2532 2534# 2534
2536# 2536 2538# 2538 2540# 2540 2543# 2543 2545# 2545 2547# 2547
.DATAI 25#
.DATAO 25# 1435
.LA 580 582 584 586 588 592 594 596 674 678 682 686 690 694
698 702 706 710 714 718 722 726 730 734 738 742 746 750
754 758 762 766 770 774 778 782 786 790 794 798 802 806
810 814 818 822 826 830 834 838 842 846 850 854 858 862
866 870 874 878 882 886 890 894 898 902 906 910 914 918
922 926 941 943 945 947 949 953 955 957 966 970 993 995
997 999 1001 1006 1008 1010 1019 1027 1029 1044 1046 1048 1050 1052
1057 1059 1061 1070 1072 1074 1076 1078 1080 1082 1084 1086 1088 1090
1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114 1116 1118
1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142 1144 1146
1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170 1172 1174
1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1202
1206 1285 1287 1289 1291 1293 1298 1300 1302 1315 1342 1504 1506 1508 SEQ 0574
1510 1512 1515 1517 1519 1521 1544 1585 1615 1627 1646 1652 1666 2391
2393 2395 2473 2529
.LADDR 567 569 578 605 674 939 966 983 1019 1042 1070 1219 1283 1311
1484 1486 1502 1528 1563 1609 1642 1681 1716 1775 1898 1900 1918 1937
1954 1971 2066 2068 2086 2391 2412 2437 2500
.LAND 578 600 939 961 985 991 1014 1019 1027 1042 1065 1104 1106 1108
1110 1112 1114 1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1136
1219 1242 1283 1306 1320 1492 1502 1530 1569 1609 1617 1648 1650 1674
1900 1924 1941 1958 1975 1981 2070 2090 2096 2391 2393 2412 2453 2469
2476 2478 2509 2525 2532 2534
.LB 578 580 582 584 586 588 592 594 596 600 605 607 609 611
613 615 617 619 621 623 625 627 629 631 633 635 637 639
641 643 645 647 649 651 653 655 657 659 661 663 665 667
676 678 680 684 686 688 692 694 696 700 702 704 708 710
712 716 718 720 724 726 728 732 734 736 740 742 744 748
750 752 756 758 760 764 766 768 772 774 776 780 782 784
788 790 792 796 798 800 804 806 808 812 814 816 820 822
824 828 830 832 836 838 840 844 846 848 852 854 856 860
862 864 868 870 872 876 878 880 884 886 888 892 894 896
900 902 904 908 910 912 916 918 920 924 926 928 939 941
943 945 947 949 953 955 957 961 968 970 972 985 987 989
991 993 995 997 999 1001 1006 1008 1010 1014 1019 1021 1025 1027
1029 1031 1042 1044 1046 1048 1050 1052 1057 1059 1061 1065 1070 1072
1074 1076 1078 1080 1082 1084 1086 1088 1090 1092 1094 1096 1098 1100
1104 1106 1108 1110 1112 1114 1116 1118 1120 1122 1124 1126 1128 1130
1132 1134 1136 1138 1140 1142 1144 1146 1148 1150 1152 1154 1156 1158
1160 1162 1164 1166 1170 1172 1174 1176 1178 1180 1182 1184 1186 1188
1190 1192 1194 1196 1198 1200 1202 1204 1206 1208 1223 1227 1231 1235
1268 1274 1283 1285 1287 1289 1291 1293 1298 1300 1302 1306 1320 1324
1340 1342 1344 1490 1492 1502 1504 1506 1508 1510 1512 1515 1519 1521
1530 1546 1569 1583 1585 1587 1589 1609 1611 1613 1615 1617 1619 1629
1633 1635 1642 1644 1646 1648 1650 1660 1662 1666 1668 1670 1672 1674
1775 1777 1779 1781 1783 1785 1787 1789 1900 1902 1906 1920 1922 1924
1926 1937 1939 1941 1943 1954 1956 1958 1960 1971 1973 1975 1977 1981
2070 2072 2074 2086 2088 2090 2092 2096 2391 2393 2395 2403 2412 2414
2416 2418 2426 2469 2471 2525 2527
.LCCCA 1540 1575
.LCCCE 1536 1554 1571 1595
.LCCCP 1538 1556 1573 1597
.LCCEB 1631 1664
.LCCER 1486 1623 1656
.LCCFZ 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1221 1225 1229 1233 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1342 1517 1585 1666 2395
.LCCGC 2420
.LCCPP 2399
.LCENA 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1221 1225 1229 1233 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1342 1486 1517 1536 1538 1540
1554 1556 1571 1573 1575 1585 1595 1597 1623 1631 1656 1664 1666 2395
2399 2420 SEQ 0575
.LCJP 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1221 1225 1229 1233 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1342 1486 1517 1536 1538 1540
1554 1556 1571 1573 1575 1585 1595 1597 1623 1631 1656 1664 1666 2395
2399 2420
.LCJS 580 582 586 588 594 596 605 607 609 611 613 615 617 619
621 623 625 627 629 631 633 635 637 639 641 643 645 647
649 651 653 655 657 659 661 663 665 667 941 943 947 949
955 957 993 995 999 1001 1008 1010 1044 1046 1050 1052 1059 1061
1285 1287 1291 1293 1300 1302 1504 1506 1510 1512 1519 1521 1546 1550
1552 1579 1591 1593 1619 1652 1716 1718 1720 1722 1724 1726 1728 1730
1732 1734 1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756 1758
1760 1762 1764 1766 1928 1945 1962 1979 2068 2094 2443 2450 2459 2466
2476 2478 2482 2506 2515 2522 2532 2534 2538
.LCONT 578 584 592 674 676 682 684 690 692 698 700 706 708 714
716 722 724 730 732 738 740 746 748 754 756 762 764 770
772 778 780 786 788 794 796 802 804 810 812 818 820 826
828 834 836 842 844 850 852 858 860 866 868 874 876 882
884 890 892 898 900 906 908 914 916 922 924 939 945 953
966 968 989 991 997 1006 1019 1021 1023 1025 1027 1042 1048 1057
1070 1072 1074 1076 1078 1080 1082 1084 1086 1088 1090 1092 1094 1096
1098 1100 1102 1104 1106 1108 1110 1112 1114 1116 1118 1120 1122 1124
1126 1128 1130 1132 1134 1136 1138 1140 1142 1144 1146 1148 1150 1152
1154 1156 1158 1160 1162 1164 1166 1168 1170 1172 1174 1176 1178 1180
1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1202 1204 1244 1283
1289 1298 1311 1313 1315 1320 1324 1326 1328 1330 1332 1334 1336 1338
1340 1490 1502 1508 1515 1544 1563 1581 1583 1615 1621 1627 1629 1633
1646 1648 1654 1660 1662 1670 1681 1683 1685 1687 1689 1691 1693 1695
1697 1699 1701 1703 1705 1707 1775 1777 1779 1781 1783 1785 1787 1789
1904 1920 1922 1924 1926 1937 1939 1941 1943 1954 1956 1958 1960 1971
1973 1975 1977 2086 2088 2090 2092 2391 2393 2418 2424 2426 2439 2441
2446 2448 2453 2455 2457 2462 2464 2469 2471 2473 2502 2504 2509 2511
2513 2518 2520 2525 2527 2529
.LCRTN 669 930 974 1033 1210 1348 1599 1709 1768 2401 2480 2484 2491 2536
2540 2547
.LCRY 584 945 987 989 997 1048 1289 1324 1342 1508 1546 1589 1629 1633
1635 1662 1670 1672 1775 1777 1779 1781 1783 1785 1787 1789 1902 1906
2072 2074 2403 2414
.LD 578 580 582 584 586 588 592 594 596 600 605 607 609 611
613 615 617 619 621 623 625 627 629 631 633 635 637 639
641 643 645 647 649 651 653 655 657 659 661 663 665 667
674 676 678 680 682 684 686 688 690 692 694 696 698 700
702 704 706 708 710 712 714 716 718 720 722 724 726 728
730 732 734 736 738 740 742 744 746 748 750 752 754 756
758 760 762 764 766 768 770 772 774 776 778 780 782 784
786 788 790 792 794 796 798 800 802 804 806 808 810 812
814 816 818 820 822 824 826 828 830 832 834 836 838 840
842 844 846 848 850 852 854 856 858 860 862 864 866 868
870 872 874 876 878 880 882 884 886 888 890 892 894 896
898 900 902 904 906 908 910 912 914 916 918 920 922 924
926 928 939 941 943 945 947 949 953 955 957 961 966 968
970 972 985 987 989 991 993 995 997 999 1001 1006 1008 1010 SEQ 0576
1014 1019 1021 1023 1025 1027 1029 1031 1042 1044 1046 1048 1050 1052
1057 1059 1061 1065 1070 1072 1074 1076 1078 1080 1082 1084 1086 1088
1090 1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114 1116
1118 1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142 1144
1146 1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170 1172
1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200
1202 1204 1206 1208 1219 1221 1223 1225 1227 1229 1231 1233 1235 1237
1242 1244 1246 1248 1250 1252 1254 1256 1258 1260 1262 1264 1266 1268
1270 1272 1274 1283 1285 1287 1289 1291 1293 1298 1300 1302 1306 1311
1313 1315 1320 1324 1340 1342 1344 1348 1490 1492 1502 1504 1506 1508
1510 1512 1515 1517 1519 1521 1530 1536 1538 1540 1542 1544 1546 1554
1556 1569 1571 1573 1575 1577 1581 1583 1585 1587 1589 1595 1597 1609
1611 1613 1615 1617 1619 1621 1627 1629 1631 1633 1635 1642 1644 1646
1648 1650 1652 1654 1660 1662 1664 1666 1668 1670 1672 1674 1775 1777
1779 1781 1783 1785 1787 1789 1900 1902 1906 1920 1922 1924 1926 1937
1939 1941 1943 1954 1956 1958 1960 1971 1973 1975 1977 1981 2070 2072
2074 2086 2088 2090 2092 2096 2391 2393 2395 2399 2403 2412 2414 2416
2418 2420 2422 2424 2426 2428 2437 2439 2441 2443 2446 2448 2450 2453
2455 2457 2459 2462 2464 2466 2469 2471 2473 2480 2482 2484 2487 2489
2491 2500 2502 2504 2506 2509 2511 2513 2515 2518 2520 2522 2525 2527
2529 2536 2538 2540 2543 2545 2547
.LJ 569 580 582 586 588 590 594 596 598 600 605 607 609 611
613 615 617 619 621 623 625 627 629 631 633 635 637 639
641 643 645 647 649 651 653 655 657 659 661 663 665 667
678 680 686 688 694 696 702 704 710 712 718 720 726 728
734 736 742 744 750 752 758 760 766 768 774 776 782 784
790 792 798 800 806 808 814 816 822 824 830 832 838 840
846 848 854 856 862 864 870 872 878 880 886 888 894 896
902 904 910 912 918 920 926 928 941 943 947 949 951 955
957 959 961 970 972 983 985 987 993 995 999 1001 1004 1008
1010 1012 1014 1029 1031 1044 1046 1050 1052 1055 1059 1061 1063 1065
1206 1208 1219 1221 1223 1225 1227 1229 1231 1233 1235 1237 1242 1246
1248 1250 1252 1254 1256 1258 1260 1262 1264 1266 1268 1270 1272 1274
1285 1287 1291 1293 1296 1300 1302 1304 1306 1322 1342 1344 1346 1486
1492 1504 1506 1510 1512 1517 1519 1521 1523 1528 1530 1532 1534 1536
1538 1540 1542 1546 1548 1550 1552 1554 1556 1558 1565 1567 1569 1571
1573 1575 1577 1579 1585 1587 1589 1591 1593 1595 1597 1609 1611 1613
1617 1619 1623 1625 1631 1635 1637 1642 1644 1650 1652 1656 1658 1664
1666 1668 1672 1674 1716 1718 1720 1722 1724 1726 1728 1730 1732 1734
1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756 1758 1760 1762
1764 1766 1900 1902 1906 1918 1928 1930 1945 1947 1962 1964 1979 1981
2068 2070 2072 2074 2094 2096 2395 2397 2399 2403 2412 2414 2416 2420
2422 2428 2437 2443 2450 2459 2466 2476 2478 2482 2487 2489 2500 2506
2515 2522 2532 2534 2538 2543 2545
.LJMAP 569 600 680 688 696 704 712 720 728 736 744 752 760 768
776 784 792 800 808 816 824 832 840 848 856 864 872 880
888 896 904 912 920 928 961 972 983 1014 1031 1065 1208 1223
1227 1231 1235 1266 1268 1274 1306 1344 1492 1523 1528 1542 1558 1577
1587 1609 1625 1637 1658 1668 1674 1906 1918 1930 1947 1964 1981 2074
2096 2397 2403 2412 2422 2428 2437 2500
.LJZ 567 1484 1488 1898 2066
.LLDCT 590 951 985 1004 1055 1219 1242 1296 1322 1530 1534 1565 1569 1611
1617 1642 1650 1900 2070 2414 2487 2543 SEQ 0577
.LLDLM 674 682 690 698 706 714 722 730 738 746 754 762 770 778
786 794 802 810 818 826 834 842 850 858 866 874 882 890
898 906 914 922 1070 2473 2529
.LLSAD 605 607 609 611 613 615 617 619 621 623 625 627 629 631
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667
.LMGC 605 607 609 611 613 615 617 619 621 623 625 627 629 631
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667 674 676 680 682 684 688 690 692 696 698
700 704 706 708 712 714 716 720 722 724 728 730 732 736
738 740 744 746 748 752 754 756 760 762 764 768 770 772
776 778 780 784 786 788 792 794 796 800 802 804 808 810
812 816 818 820 824 826 828 832 834 836 840 842 844 848
850 852 856 858 860 864 866 868 872 874 876 880 882 884
888 890 892 896 898 900 904 906 908 912 914 916 920 922
924 928 966 968 972 1021 1023 1025 1031 1070 1204 1208 1223 1227
1231 1235 1268 1274 1311 1313 1315 1324 1326 1328 1330 1332 1334 1336
1338 1340 1344 1490 1528 1530 1544 1546 1552 1563 1565 1581 1583 1587
1593 1611 1619 1621 1627 1629 1642 1652 1654 1660 1668 1904 1920 1922
1924 1926 1937 1939 1941 1943 1954 1956 1958 1960 1971 1973 1975 1977
2086 2088 2090 2092 2418 2420 2424 2426 2439 2441 2443 2446 2448 2450
2457 2459 2462 2464 2466 2469 2471 2473 2476 2478 2482 2484 2502 2504
2506 2513 2515 2518 2520 2522 2525 2527 2529 2532 2534 2538 2540
.LOENA 674 682 690 698 706 714 722 730 738 746 754 762 770 778
786 794 802 810 818 826 834 842 850 858 866 874 882 890
898 906 914 922 966 1021 1070 1315 1544 1619 1627 1652 2418 2426
2441 2448 2457 2464 2473 2476 2478 2504 2513 2520 2529 2532 2534
.LOR 580 586 592 594 605 607 609 611 613 615 617 619 621 623
625 627 629 631 633 635 637 639 641 643 645 647 649 651
653 655 657 659 661 663 665 667 674 676 680 682 684 688
690 692 696 698 700 704 706 708 712 714 716 720 722 724
728 730 732 736 738 740 744 746 748 752 754 756 760 762
764 768 770 772 776 778 780 784 786 788 792 794 796 800
802 804 808 810 812 816 818 820 824 826 828 832 834 836
840 842 844 848 850 852 856 858 860 864 866 868 872 874
876 880 882 884 888 890 892 896 898 900 904 906 908 912
914 916 920 922 924 928 941 947 953 955 966 972 993 999
1006 1008 1021 1025 1031 1044 1050 1057 1059 1070 1072 1074 1076 1078
1080 1082 1084 1086 1088 1090 1092 1094 1096 1098 1100 1102 1170 1172
1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200
1202 1204 1208 1221 1223 1225 1227 1229 1231 1233 1235 1246 1248 1250
1252 1254 1256 1258 1260 1262 1268 1270 1272 1274 1285 1291 1298 1300
1315 1340 1344 1490 1504 1510 1515 1517 1519 1583 1587 1611 1613 1615
1619 1627 1642 1644 1646 1652 1660 1668 1920 1922 1926 1937 1939 1943
1954 1956 1960 1971 1973 1977 2086 2088 2092 2416 2418 2426 2439 2441
2446 2448 2457 2462 2464 2471 2473 2502 2504 2513 2518 2520 2527 2529
.LPLUS 584 945 987 989 997 1048 1138 1140 1142 1144 1146 1148 1150 1152
1154 1156 1158 1160 1162 1164 1166 1168 1289 1324 1508 1546 1589 1629
1633 1635 1662 1670 1672 1775 1777 1779 1781 1783 1785 1787 1789 1902
1906 2072 2074 2403 2414
.LRAM 674 676 682 684 690 692 698 700 706 708 714 716 722 724
730 732 738 740 746 748 754 756 762 764 770 772 778 780
786 788 794 796 802 804 810 812 818 820 826 828 834 836 SEQ 0578
842 844 850 852 858 860 866 868 874 876 882 884 890 892
898 900 906 908 914 916 922 924
.LRDLM 676 684 692 700 708 716 724 732 740 748 756 764 772 780
788 796 804 812 820 828 836 844 852 860 868 876 884 892
900 908 916 924 1204
.LRPCT 598 959 987 1012 1063 1237 1264 1304 1346 1532 1548 1567 1589 1613
1635 1644 1672 1902 2072 2416 2489 2545
.LS0A 580 582 584 586 588 592 594 596 600 674 682 690 698 706
714 722 730 738 746 754 762 770 778 786 794 802 810 818
826 834 842 850 858 866 874 882 890 898 906 914 922 941
943 945 947 949 953 955 957 961 966 993 995 997 999 1001
1006 1008 1010 1014 1044 1046 1048 1050 1052 1057 1059 1061 1065 1070
1072 1074 1076 1078 1080 1082 1084 1086 1088 1090 1092 1094 1096 1098
1100 1102 1138 1140 1142 1144 1146 1148 1150 1152 1154 1156 1158 1160
1162 1164 1166 1168 1219 1221 1225 1229 1233 1242 1244 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1285 1287 1289 1291 1293 1298
1300 1302 1306 1315 1492 1504 1506 1508 1510 1512 1515 1517 1519 1521
1530 1544 1569 1627 1652 1674 1981 2096 2441 2448 2453 2455 2457 2464
2473 2476 2478 2504 2509 2511 2513 2520 2529 2532 2534
.LS0B 985 987 989 1021 1320 1324 1546 1589 1613 1617 1619 1629 1633 1635
1644 1648 1650 1662 1670 1672 1775 1777 1779 1781 1783 1785 1787 1789
1900 1902 1906 1924 1941 1958 1975 2070 2072 2074 2090 2403 2412 2414
2416 2418 2426 2469 2525
.LSAB 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1019 1027 1029 1104 1106 1108 1110 1112 1114
1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1170 1172 1174 1176
1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1206 1342
1585 1615 1646 1666 2391 2393 2395
.LSAQ 1136 1202
.LSD0 578 605 607 609 611 613 615 617 619 621 623 625 627 629
631 633 635 637 639 641 643 645 647 649 651 653 655 657
659 661 663 665 667 676 680 684 688 692 696 700 704 708
712 716 720 724 728 732 736 740 744 748 752 756 760 764
768 772 776 780 784 788 792 796 800 804 808 812 816 820
824 828 832 836 840 844 848 852 856 860 864 868 872 876
880 884 888 892 896 900 904 908 912 916 920 924 928 939
968 972 991 1023 1025 1031 1042 1204 1208 1223 1227 1231 1235 1268
1274 1283 1340 1344 1490 1502 1583 1587 1609 1611 1642 1660 1668 1920
1922 1926 1937 1939 1943 1954 1956 1960 1971 1973 1977 2086 2088 2092
2439 2446 2462 2471 2502 2518 2527
.LSELC 1530 1546 1552 1565 1581 1593
.LSELE 1490 1619 1621 1627 1629 1652 1654 1660 2418 2420 2424 2426
.LSELF 966 1311 1313 1315 1324 1326 1328 1330 1332 1334 1336 1338 1544
.LSELM 968 1021 1025 1340 1528 1563 1583 1904 1926 1943 1960 1977 2092 2441
2448 2457 2464 2471 2476 2478 2484 2504 2513 2520 2527 2532 2534 2540
.LSELP 1023 1924 1941 1958 1975 2090 2443 2450 2459 2466 2469 2482 2506 2515
2522 2525 2538
.LSKCN 680 688 696 704 712 720 728 736 744 752 760 768 776 784
792 800 808 816 824 832 840 848 856 864 872 880 888 896
904 912 920 928 972 1031 1208 1223 1227 1231 1235 1268 1274 1344
1587 1611 1642 1668 1920 1922 1937 1939 1954 1956 1971 1973 2086 2088
2439 2446 2462 2502 2518 SEQ 0579
.LSMIN 1342
.LTIM 1666
.LXNOR 582 588 596 943 949 957 995 1001 1010 1046 1052 1061 1244 1287
1293 1302 1506 1512 1521 2455 2511
.LXOR 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1585 1666 2395
.MA 580 582 584 586 588 592 594 596 674 678 682 686 690 694
698 702 706 710 714 718 722 726 730 734 738 742 746 750
754 758 762 766 770 774 778 782 786 790 794 798 802 806
810 814 818 822 826 830 834 838 842 846 850 854 858 862
866 870 874 878 882 886 890 894 898 902 906 910 914 918
922 926 941 943 945 947 949 953 955 957 966 970 993 995
997 999 1001 1006 1008 1010 1019 1027 1029 1044 1046 1048 1050 1052
1057 1059 1061 1070 1072 1074 1076 1078 1080 1082 1084 1086 1088 1090
1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114 1116 1118
1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142 1144 1146
1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170 1172 1174
1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1202
1206 1285 1287 1289 1291 1293 1298 1300 1302 1315 1342 1504 1506 1508
1510 1512 1515 1517 1519 1521 1544 1585 1615 1627 1646 1652 1666 2391
2393 2395 2473 2529
.MAND 578 600 939 961 985 991 1014 1019 1027 1042 1065 1104 1106 1108
1110 1112 1114 1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1136
1219 1242 1283 1306 1320 1492 1502 1530 1569 1609 1617 1648 1650 1674
1900 1924 1941 1958 1975 1981 2070 2090 2096 2391 2393 2412 2453 2469
2476 2478 2509 2525 2532 2534
.MB 578 580 582 584 586 588 592 594 596 600 605 607 609 611
613 615 617 619 621 623 625 627 629 631 633 635 637 639
641 643 645 647 649 651 653 655 657 659 661 663 665 667
676 678 680 684 686 688 692 694 696 700 702 704 708 710
712 716 718 720 724 726 728 732 734 736 740 742 744 748
750 752 756 758 760 764 766 768 772 774 776 780 782 784
788 790 792 796 798 800 804 806 808 812 814 816 820 822
824 828 830 832 836 838 840 844 846 848 852 854 856 860
862 864 868 870 872 876 878 880 884 886 888 892 894 896
900 902 904 908 910 912 916 918 920 924 926 928 939 941
943 945 947 949 953 955 957 961 968 970 972 985 987 989
991 993 995 997 999 1001 1006 1008 1010 1014 1019 1021 1025 1027
1029 1031 1042 1044 1046 1048 1050 1052 1057 1059 1061 1065 1070 1072
1074 1076 1078 1080 1082 1084 1086 1088 1090 1092 1094 1096 1098 1100
1104 1106 1108 1110 1112 1114 1116 1118 1120 1122 1124 1126 1128 1130
1132 1134 1136 1138 1140 1142 1144 1146 1148 1150 1152 1154 1156 1158
1160 1162 1164 1166 1170 1172 1174 1176 1178 1180 1182 1184 1186 1188
1190 1192 1194 1196 1198 1200 1202 1204 1206 1208 1223 1227 1231 1235
1268 1274 1283 1285 1287 1289 1291 1293 1298 1300 1302 1306 1320 1324
1340 1342 1344 1490 1492 1502 1504 1506 1508 1510 1512 1515 1519 1521
1530 1546 1569 1583 1585 1587 1589 1609 1611 1613 1615 1617 1619 1629
1633 1635 1642 1644 1646 1648 1650 1660 1662 1666 1668 1670 1672 1674
1775 1777 1779 1781 1783 1785 1787 1789 1900 1902 1906 1920 1922 1924
1926 1937 1939 1941 1943 1954 1956 1958 1960 1971 1973 1975 1977 1981
2070 2072 2074 2086 2088 2090 2092 2096 2391 2393 2395 2403 2412 2414
2416 2418 2426 2469 2471 2525 2527 SEQ 0580
.MCCCA 1540 1575
.MCCCE 1536 1554 1571 1595
.MCCCP 1538 1556 1573 1597
.MCCEB 1631 1664
.MCCER 1486 1623 1656
.MCCFZ 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1221 1225 1229 1233 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1342 1517 1585 1666 2395
.MCCGC 2420
.MCCPP 2399
.MCENA 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1221 1225 1229 1233 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1342 1486 1517 1536 1538 1540
1554 1556 1571 1573 1575 1585 1595 1597 1623 1631 1656 1664 1666 2395
2399 2420
.MCJP 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1221 1225 1229 1233 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1342 1486 1517 1536 1538 1540
1554 1556 1571 1573 1575 1585 1595 1597 1623 1631 1656 1664 1666 2395
2399 2420
.MCJS 580 582 586 588 594 596 605 607 609 611 613 615 617 619
621 623 625 627 629 631 633 635 637 639 641 643 645 647
649 651 653 655 657 659 661 663 665 667 941 943 947 949
955 957 993 995 999 1001 1008 1010 1044 1046 1050 1052 1059 1061
1285 1287 1291 1293 1300 1302 1504 1506 1510 1512 1519 1521 1546 1550
1552 1579 1591 1593 1619 1652 1716 1718 1720 1722 1724 1726 1728 1730
1732 1734 1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756 1758
1760 1762 1764 1766 1928 1945 1962 1979 2068 2094 2443 2450 2459 2466
2476 2478 2482 2506 2515 2522 2532 2534 2538
.MCONT 578 584 592 674 676 682 684 690 692 698 700 706 708 714
716 722 724 730 732 738 740 746 748 754 756 762 764 770
772 778 780 786 788 794 796 802 804 810 812 818 820 826
828 834 836 842 844 850 852 858 860 866 868 874 876 882
884 890 892 898 900 906 908 914 916 922 924 939 945 953
966 968 989 991 997 1006 1019 1021 1023 1025 1027 1042 1048 1057
1070 1072 1074 1076 1078 1080 1082 1084 1086 1088 1090 1092 1094 1096
1098 1100 1102 1104 1106 1108 1110 1112 1114 1116 1118 1120 1122 1124
1126 1128 1130 1132 1134 1136 1138 1140 1142 1144 1146 1148 1150 1152
1154 1156 1158 1160 1162 1164 1166 1168 1170 1172 1174 1176 1178 1180
1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1202 1204 1244 1283
1289 1298 1311 1313 1315 1320 1324 1326 1328 1330 1332 1334 1336 1338
1340 1490 1502 1508 1515 1544 1563 1581 1583 1615 1621 1627 1629 1633
1646 1648 1654 1660 1662 1670 1681 1683 1685 1687 1689 1691 1693 1695
1697 1699 1701 1703 1705 1707 1775 1777 1779 1781 1783 1785 1787 1789
1904 1920 1922 1924 1926 1937 1939 1941 1943 1954 1956 1958 1960 1971
1973 1975 1977 2086 2088 2090 2092 2391 2393 2418 2424 2426 2439 2441
2446 2448 2453 2455 2457 2462 2464 2469 2471 2473 2502 2504 2509 2511
2513 2518 2520 2525 2527 2529
.MCRTN 669 930 974 1033 1210 1348 1599 1709 1768 2401 2480 2484 2491 2536
2540 2547 SEQ 0581
.MCRY 584 945 987 989 997 1048 1289 1324 1342 1508 1546 1589 1629 1633
1635 1662 1670 1672 1775 1777 1779 1781 1783 1785 1787 1789 1902 1906
2072 2074 2403 2414
.MD 578 580 582 584 586 588 592 594 596 600 605 607 609 611
613 615 617 619 621 623 625 627 629 631 633 635 637 639
641 643 645 647 649 651 653 655 657 659 661 663 665 667
674 676 678 680 682 684 686 688 690 692 694 696 698 700
702 704 706 708 710 712 714 716 718 720 722 724 726 728
730 732 734 736 738 740 742 744 746 748 750 752 754 756
758 760 762 764 766 768 770 772 774 776 778 780 782 784
786 788 790 792 794 796 798 800 802 804 806 808 810 812
814 816 818 820 822 824 826 828 830 832 834 836 838 840
842 844 846 848 850 852 854 856 858 860 862 864 866 868
870 872 874 876 878 880 882 884 886 888 890 892 894 896
898 900 902 904 906 908 910 912 914 916 918 920 922 924
926 928 939 941 943 945 947 949 953 955 957 961 966 968
970 972 985 987 989 991 993 995 997 999 1001 1006 1008 1010
1014 1019 1021 1023 1025 1027 1029 1031 1042 1044 1046 1048 1050 1052
1057 1059 1061 1065 1070 1072 1074 1076 1078 1080 1082 1084 1086 1088
1090 1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114 1116
1118 1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142 1144
1146 1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170 1172
1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200
1202 1204 1206 1208 1219 1221 1223 1225 1227 1229 1231 1233 1235 1237
1242 1244 1246 1248 1250 1252 1254 1256 1258 1260 1262 1264 1266 1268
1270 1272 1274 1283 1285 1287 1289 1291 1293 1298 1300 1302 1306 1311
1313 1315 1320 1324 1340 1342 1344 1348 1490 1492 1502 1504 1506 1508
1510 1512 1515 1517 1519 1521 1530 1536 1538 1540 1542 1544 1546 1554
1556 1569 1571 1573 1575 1577 1581 1583 1585 1587 1589 1595 1597 1609
1611 1613 1615 1617 1619 1621 1627 1629 1631 1633 1635 1642 1644 1646
1648 1650 1652 1654 1660 1662 1664 1666 1668 1670 1672 1674 1775 1777
1779 1781 1783 1785 1787 1789 1900 1902 1906 1920 1922 1924 1926 1937
1939 1941 1943 1954 1956 1958 1960 1971 1973 1975 1977 1981 2070 2072
2074 2086 2088 2090 2092 2096 2391 2393 2395 2399 2403 2412 2414 2416
2418 2420 2422 2424 2426 2428 2437 2439 2441 2443 2446 2448 2450 2453
2455 2457 2459 2462 2464 2466 2469 2471 2473 2480 2482 2484 2487 2489
2491 2500 2502 2504 2506 2509 2511 2513 2515 2518 2520 2522 2525 2527
2529 2536 2538 2540 2543 2545 2547
.MJ 569 580 582 586 588 590 594 596 598 600 605 607 609 611
613 615 617 619 621 623 625 627 629 631 633 635 637 639
641 643 645 647 649 651 653 655 657 659 661 663 665 667
678 680 686 688 694 696 702 704 710 712 718 720 726 728
734 736 742 744 750 752 758 760 766 768 774 776 782 784
790 792 798 800 806 808 814 816 822 824 830 832 838 840
846 848 854 856 862 864 870 872 878 880 886 888 894 896
902 904 910 912 918 920 926 928 941 943 947 949 951 955
957 959 961 970 972 983 985 987 993 995 999 1001 1004 1008
1010 1012 1014 1029 1031 1044 1046 1050 1052 1055 1059 1061 1063 1065
1206 1208 1219 1221 1223 1225 1227 1229 1231 1233 1235 1237 1242 1246
1248 1250 1252 1254 1256 1258 1260 1262 1264 1266 1268 1270 1272 1274
1285 1287 1291 1293 1296 1300 1302 1304 1306 1322 1342 1344 1346 1486
1492 1504 1506 1510 1512 1517 1519 1521 1523 1528 1530 1532 1534 1536
1538 1540 1542 1546 1548 1550 1552 1554 1556 1558 1565 1567 1569 1571 SEQ 0582
1573 1575 1577 1579 1585 1587 1589 1591 1593 1595 1597 1609 1611 1613
1617 1619 1623 1625 1631 1635 1637 1642 1644 1650 1652 1656 1658 1664
1666 1668 1672 1674 1716 1718 1720 1722 1724 1726 1728 1730 1732 1734
1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756 1758 1760 1762
1764 1766 1900 1902 1906 1918 1928 1930 1945 1947 1962 1964 1979 1981
2068 2070 2072 2074 2094 2096 2395 2397 2399 2403 2412 2414 2416 2420
2422 2428 2437 2443 2450 2459 2466 2476 2478 2482 2487 2489 2500 2506
2515 2522 2532 2534 2538 2543 2545
.MJMAP 569 600 680 688 696 704 712 720 728 736 744 752 760 768
776 784 792 800 808 816 824 832 840 848 856 864 872 880
888 896 904 912 920 928 961 972 983 1014 1031 1065 1208 1223
1227 1231 1235 1266 1268 1274 1306 1344 1492 1523 1528 1542 1558 1577
1587 1609 1625 1637 1658 1668 1674 1906 1918 1930 1947 1964 1981 2074
2096 2397 2403 2412 2422 2428 2437 2500
.MJZ 567 1484 1488 1898 2066
.MLDCT 590 951 985 1004 1055 1219 1242 1296 1322 1530 1534 1565 1569 1611
1617 1642 1650 1900 2070 2414 2487 2543
.MLDLM 674 682 690 698 706 714 722 730 738 746 754 762 770 778
786 794 802 810 818 826 834 842 850 858 866 874 882 890
898 906 914 922 1070 2473 2529
.MLSAD 605 607 609 611 613 615 617 619 621 623 625 627 629 631
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667
.MMGC 605 607 609 611 613 615 617 619 621 623 625 627 629 631
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667 674 676 680 682 684 688 690 692 696 698
700 704 706 708 712 714 716 720 722 724 728 730 732 736
738 740 744 746 748 752 754 756 760 762 764 768 770 772
776 778 780 784 786 788 792 794 796 800 802 804 808 810
812 816 818 820 824 826 828 832 834 836 840 842 844 848
850 852 856 858 860 864 866 868 872 874 876 880 882 884
888 890 892 896 898 900 904 906 908 912 914 916 920 922
924 928 966 968 972 1021 1023 1025 1031 1070 1204 1208 1223 1227
1231 1235 1268 1274 1311 1313 1315 1324 1326 1328 1330 1332 1334 1336
1338 1340 1344 1490 1528 1530 1544 1546 1552 1563 1565 1581 1583 1587
1593 1611 1619 1621 1627 1629 1642 1652 1654 1660 1668 1904 1920 1922
1924 1926 1937 1939 1941 1943 1954 1956 1958 1960 1971 1973 1975 1977
2086 2088 2090 2092 2418 2420 2424 2426 2439 2441 2443 2446 2448 2450
2457 2459 2462 2464 2466 2469 2471 2473 2476 2478 2482 2484 2502 2504
2506 2513 2515 2518 2520 2522 2525 2527 2529 2532 2534 2538 2540
.MOENA 674 682 690 698 706 714 722 730 738 746 754 762 770 778
786 794 802 810 818 826 834 842 850 858 866 874 882 890
898 906 914 922 966 1021 1070 1315 1544 1619 1627 1652 2418 2426
2441 2448 2457 2464 2473 2476 2478 2504 2513 2520 2529 2532 2534
.MOR 580 586 592 594 605 607 609 611 613 615 617 619 621 623
625 627 629 631 633 635 637 639 641 643 645 647 649 651
653 655 657 659 661 663 665 667 674 676 680 682 684 688
690 692 696 698 700 704 706 708 712 714 716 720 722 724
728 730 732 736 738 740 744 746 748 752 754 756 760 762
764 768 770 772 776 778 780 784 786 788 792 794 796 800
802 804 808 810 812 816 818 820 824 826 828 832 834 836
840 842 844 848 850 852 856 858 860 864 866 868 872 874
876 880 882 884 888 890 892 896 898 900 904 906 908 912 SEQ 0583
914 916 920 922 924 928 941 947 953 955 966 972 993 999
1006 1008 1021 1025 1031 1044 1050 1057 1059 1070 1072 1074 1076 1078
1080 1082 1084 1086 1088 1090 1092 1094 1096 1098 1100 1102 1170 1172
1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200
1202 1204 1208 1221 1223 1225 1227 1229 1231 1233 1235 1246 1248 1250
1252 1254 1256 1258 1260 1262 1268 1270 1272 1274 1285 1291 1298 1300
1315 1340 1344 1490 1504 1510 1515 1517 1519 1583 1587 1611 1613 1615
1619 1627 1642 1644 1646 1652 1660 1668 1920 1922 1926 1937 1939 1943
1954 1956 1960 1971 1973 1977 2086 2088 2092 2416 2418 2426 2439 2441
2446 2448 2457 2462 2464 2471 2473 2502 2504 2513 2518 2520 2527 2529
.MPLUS 584 945 987 989 997 1048 1138 1140 1142 1144 1146 1148 1150 1152
1154 1156 1158 1160 1162 1164 1166 1168 1289 1324 1508 1546 1589 1629
1633 1635 1662 1670 1672 1775 1777 1779 1781 1783 1785 1787 1789 1902
1906 2072 2074 2403 2414
.MRAM 674 676 682 684 690 692 698 700 706 708 714 716 722 724
730 732 738 740 746 748 754 756 762 764 770 772 778 780
786 788 794 796 802 804 810 812 818 820 826 828 834 836
842 844 850 852 858 860 866 868 874 876 882 884 890 892
898 900 906 908 914 916 922 924
.MRDLM 676 684 692 700 708 716 724 732 740 748 756 764 772 780
788 796 804 812 820 828 836 844 852 860 868 876 884 892
900 908 916 924 1204
.MRPCT 598 959 987 1012 1063 1237 1264 1304 1346 1532 1548 1567 1589 1613
1635 1644 1672 1902 2072 2416 2489 2545
.MS0A 580 582 584 586 588 592 594 596 600 674 682 690 698 706
714 722 730 738 746 754 762 770 778 786 794 802 810 818
826 834 842 850 858 866 874 882 890 898 906 914 922 941
943 945 947 949 953 955 957 961 966 993 995 997 999 1001
1006 1008 1010 1014 1044 1046 1048 1050 1052 1057 1059 1061 1065 1070
1072 1074 1076 1078 1080 1082 1084 1086 1088 1090 1092 1094 1096 1098
1100 1102 1138 1140 1142 1144 1146 1148 1150 1152 1154 1156 1158 1160
1162 1164 1166 1168 1219 1221 1225 1229 1233 1242 1244 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1285 1287 1289 1291 1293 1298
1300 1302 1306 1315 1492 1504 1506 1508 1510 1512 1515 1517 1519 1521
1530 1544 1569 1627 1652 1674 1981 2096 2441 2448 2453 2455 2457 2464
2473 2476 2478 2504 2509 2511 2513 2520 2529 2532 2534
.MS0B 985 987 989 1021 1320 1324 1546 1589 1613 1617 1619 1629 1633 1635
1644 1648 1650 1662 1670 1672 1775 1777 1779 1781 1783 1785 1787 1789
1900 1902 1906 1924 1941 1958 1975 2070 2072 2074 2090 2403 2412 2414
2416 2418 2426 2469 2525
.MSAB 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1019 1027 1029 1104 1106 1108 1110 1112 1114
1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1170 1172 1174 1176
1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1206 1342
1585 1615 1646 1666 2391 2393 2395
.MSAQ 1136 1202
.MSD0 578 605 607 609 611 613 615 617 619 621 623 625 627 629
631 633 635 637 639 641 643 645 647 649 651 653 655 657
659 661 663 665 667 676 680 684 688 692 696 700 704 708
712 716 720 724 728 732 736 740 744 748 752 756 760 764
768 772 776 780 784 788 792 796 800 804 808 812 816 820
824 828 832 836 840 844 848 852 856 860 864 868 872 876 SEQ 0584
880 884 888 892 896 900 904 908 912 916 920 924 928 939
968 972 991 1023 1025 1031 1042 1204 1208 1223 1227 1231 1235 1268
1274 1283 1340 1344 1490 1502 1583 1587 1609 1611 1642 1660 1668 1920
1922 1926 1937 1939 1943 1954 1956 1960 1971 1973 1977 2086 2088 2092
2439 2446 2462 2471 2502 2518 2527
.MSELC 1530 1546 1552 1565 1581 1593
.MSELE 1490 1619 1621 1627 1629 1652 1654 1660 2418 2420 2424 2426
.MSELF 966 1311 1313 1315 1324 1326 1328 1330 1332 1334 1336 1338 1544
.MSELM 968 1021 1025 1340 1528 1563 1583 1904 1926 1943 1960 1977 2092 2441
2448 2457 2464 2471 2476 2478 2484 2504 2513 2520 2527 2532 2534 2540
.MSELP 1023 1924 1941 1958 1975 2090 2443 2450 2459 2466 2469 2482 2506 2515
2522 2525 2538
.MSKCN 680 688 696 704 712 720 728 736 744 752 760 768 776 784
792 800 808 816 824 832 840 848 856 864 872 880 888 896
904 912 920 928 972 1031 1208 1223 1227 1231 1235 1268 1274 1344
1587 1611 1642 1668 1920 1922 1937 1939 1954 1956 1971 1973 2086 2088
2439 2446 2462 2502 2518
.MSMIN 1342
.MTIM 1666
.MXNOR 582 588 596 943 949 957 995 1001 1010 1046 1052 1061 1244 1287
1293 1302 1506 1512 1521 2455 2511
.MXOR 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1585 1666 2395
.RA 580 582 584 586 588 592 594 596 674 678 682 686 690 694
698 702 706 710 714 718 722 726 730 734 738 742 746 750
754 758 762 766 770 774 778 782 786 790 794 798 802 806
810 814 818 822 826 830 834 838 842 846 850 854 858 862
866 870 874 878 882 886 890 894 898 902 906 910 914 918
922 926 941 943 945 947 949 953 955 957 966 970 993 995
997 999 1001 1006 1008 1010 1019 1027 1029 1044 1046 1048 1050 1052
1057 1059 1061 1070 1072 1074 1076 1078 1080 1082 1084 1086 1088 1090
1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114 1116 1118
1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142 1144 1146
1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170 1172 1174
1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1202
1206 1285 1287 1289 1291 1293 1298 1300 1302 1315 1342 1504 1506 1508
1510 1512 1515 1517 1519 1521 1544 1585 1615 1627 1646 1652 1666 2391
2393 2395 2473 2529
.RAND 578 600 939 961 985 991 1014 1019 1027 1042 1065 1104 1106 1108
1110 1112 1114 1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1136
1219 1242 1283 1306 1320 1492 1502 1530 1569 1609 1617 1648 1650 1674
1900 1924 1941 1958 1975 1981 2070 2090 2096 2391 2393 2412 2453 2469
2476 2478 2509 2525 2532 2534
.RB 578 580 582 584 586 588 592 594 596 600 605 607 609 611
613 615 617 619 621 623 625 627 629 631 633 635 637 639
641 643 645 647 649 651 653 655 657 659 661 663 665 667
676 678 680 684 686 688 692 694 696 700 702 704 708 710
712 716 718 720 724 726 728 732 734 736 740 742 744 748
750 752 756 758 760 764 766 768 772 774 776 780 782 784
788 790 792 796 798 800 804 806 808 812 814 816 820 822
824 828 830 832 836 838 840 844 846 848 852 854 856 860
862 864 868 870 872 876 878 880 884 886 888 892 894 896 SEQ 0585
900 902 904 908 910 912 916 918 920 924 926 928 939 941
943 945 947 949 953 955 957 961 968 970 972 985 987 989
991 993 995 997 999 1001 1006 1008 1010 1014 1019 1021 1025 1027
1029 1031 1042 1044 1046 1048 1050 1052 1057 1059 1061 1065 1070 1072
1074 1076 1078 1080 1082 1084 1086 1088 1090 1092 1094 1096 1098 1100
1104 1106 1108 1110 1112 1114 1116 1118 1120 1122 1124 1126 1128 1130
1132 1134 1136 1138 1140 1142 1144 1146 1148 1150 1152 1154 1156 1158
1160 1162 1164 1166 1170 1172 1174 1176 1178 1180 1182 1184 1186 1188
1190 1192 1194 1196 1198 1200 1202 1204 1206 1208 1223 1227 1231 1235
1268 1274 1283 1285 1287 1289 1291 1293 1298 1300 1302 1306 1320 1324
1340 1342 1344 1490 1492 1502 1504 1506 1508 1510 1512 1515 1519 1521
1530 1546 1569 1583 1585 1587 1589 1609 1611 1613 1615 1617 1619 1629
1633 1635 1642 1644 1646 1648 1650 1660 1662 1666 1668 1670 1672 1674
1775 1777 1779 1781 1783 1785 1787 1789 1900 1902 1906 1920 1922 1924
1926 1937 1939 1941 1943 1954 1956 1958 1960 1971 1973 1975 1977 1981
2070 2072 2074 2086 2088 2090 2092 2096 2391 2393 2395 2403 2412 2414
2416 2418 2426 2469 2471 2525 2527
.RCCCA 1540 1575
.RCCCE 1536 1554 1571 1595
.RCCCP 1538 1556 1573 1597
.RCCEB 1631 1664
.RCCER 1486 1623 1656
.RCCFZ 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1221 1225 1229 1233 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1342 1517 1585 1666 2395
.RCCGC 2420
.RCCPP 2399
.RCENA 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1221 1225 1229 1233 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1342 1486 1517 1536 1538 1540
1554 1556 1571 1573 1575 1585 1595 1597 1623 1631 1656 1664 1666 2395
2399 2420
.RCJP 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1221 1225 1229 1233 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1342 1486 1517 1536 1538 1540
1554 1556 1571 1573 1575 1585 1595 1597 1623 1631 1656 1664 1666 2395
2399 2420
.RCJS 580 582 586 588 594 596 605 607 609 611 613 615 617 619
621 623 625 627 629 631 633 635 637 639 641 643 645 647
649 651 653 655 657 659 661 663 665 667 941 943 947 949
955 957 993 995 999 1001 1008 1010 1044 1046 1050 1052 1059 1061
1285 1287 1291 1293 1300 1302 1504 1506 1510 1512 1519 1521 1546 1550
1552 1579 1591 1593 1619 1652 1716 1718 1720 1722 1724 1726 1728 1730
1732 1734 1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756 1758
1760 1762 1764 1766 1928 1945 1962 1979 2068 2094 2443 2450 2459 2466
2476 2478 2482 2506 2515 2522 2532 2534 2538
.RCONT 578 584 592 674 676 682 684 690 692 698 700 706 708 714
716 722 724 730 732 738 740 746 748 754 756 762 764 770
772 778 780 786 788 794 796 802 804 810 812 818 820 826
828 834 836 842 844 850 852 858 860 866 868 874 876 882 SEQ 0586
884 890 892 898 900 906 908 914 916 922 924 939 945 953
966 968 989 991 997 1006 1019 1021 1023 1025 1027 1042 1048 1057
1070 1072 1074 1076 1078 1080 1082 1084 1086 1088 1090 1092 1094 1096
1098 1100 1102 1104 1106 1108 1110 1112 1114 1116 1118 1120 1122 1124
1126 1128 1130 1132 1134 1136 1138 1140 1142 1144 1146 1148 1150 1152
1154 1156 1158 1160 1162 1164 1166 1168 1170 1172 1174 1176 1178 1180
1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1202 1204 1244 1283
1289 1298 1311 1313 1315 1320 1324 1326 1328 1330 1332 1334 1336 1338
1340 1490 1502 1508 1515 1544 1563 1581 1583 1615 1621 1627 1629 1633
1646 1648 1654 1660 1662 1670 1681 1683 1685 1687 1689 1691 1693 1695
1697 1699 1701 1703 1705 1707 1775 1777 1779 1781 1783 1785 1787 1789
1904 1920 1922 1924 1926 1937 1939 1941 1943 1954 1956 1958 1960 1971
1973 1975 1977 2086 2088 2090 2092 2391 2393 2418 2424 2426 2439 2441
2446 2448 2453 2455 2457 2462 2464 2469 2471 2473 2502 2504 2509 2511
2513 2518 2520 2525 2527 2529
.RCRTN 669 930 974 1033 1210 1348 1599 1709 1768 2401 2480 2484 2491 2536
2540 2547
.RCRY 584 945 987 989 997 1048 1289 1324 1342 1508 1546 1589 1629 1633
1635 1662 1670 1672 1775 1777 1779 1781 1783 1785 1787 1789 1902 1906
2072 2074 2403 2414
.RD 578 580 582 584 586 588 592 594 596 600 605 607 609 611
613 615 617 619 621 623 625 627 629 631 633 635 637 639
641 643 645 647 649 651 653 655 657 659 661 663 665 667
674 676 678 680 682 684 686 688 690 692 694 696 698 700
702 704 706 708 710 712 714 716 718 720 722 724 726 728
730 732 734 736 738 740 742 744 746 748 750 752 754 756
758 760 762 764 766 768 770 772 774 776 778 780 782 784
786 788 790 792 794 796 798 800 802 804 806 808 810 812
814 816 818 820 822 824 826 828 830 832 834 836 838 840
842 844 846 848 850 852 854 856 858 860 862 864 866 868
870 872 874 876 878 880 882 884 886 888 890 892 894 896
898 900 902 904 906 908 910 912 914 916 918 920 922 924
926 928 939 941 943 945 947 949 953 955 957 961 966 968
970 972 985 987 989 991 993 995 997 999 1001 1006 1008 1010
1014 1019 1021 1023 1025 1027 1029 1031 1042 1044 1046 1048 1050 1052
1057 1059 1061 1065 1070 1072 1074 1076 1078 1080 1082 1084 1086 1088
1090 1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114 1116
1118 1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142 1144
1146 1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170 1172
1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200
1202 1204 1206 1208 1219 1221 1223 1225 1227 1229 1231 1233 1235 1237
1242 1244 1246 1248 1250 1252 1254 1256 1258 1260 1262 1264 1266 1268
1270 1272 1274 1283 1285 1287 1289 1291 1293 1298 1300 1302 1306 1311
1313 1315 1320 1324 1340 1342 1344 1348 1490 1492 1502 1504 1506 1508
1510 1512 1515 1517 1519 1521 1530 1536 1538 1540 1542 1544 1546 1554
1556 1569 1571 1573 1575 1577 1581 1583 1585 1587 1589 1595 1597 1609
1611 1613 1615 1617 1619 1621 1627 1629 1631 1633 1635 1642 1644 1646
1648 1650 1652 1654 1660 1662 1664 1666 1668 1670 1672 1674 1775 1777
1779 1781 1783 1785 1787 1789 1900 1902 1906 1920 1922 1924 1926 1937
1939 1941 1943 1954 1956 1958 1960 1971 1973 1975 1977 1981 2070 2072
2074 2086 2088 2090 2092 2096 2391 2393 2395 2399 2403 2412 2414 2416
2418 2420 2422 2424 2426 2428 2437 2439 2441 2443 2446 2448 2450 2453
2455 2457 2459 2462 2464 2466 2469 2471 2473 2480 2482 2484 2487 2489 SEQ 0587
2491 2500 2502 2504 2506 2509 2511 2513 2515 2518 2520 2522 2525 2527
2529 2536 2538 2540 2543 2545 2547
.RJ 569 580 582 586 588 590 594 596 598 600 605 607 609 611
613 615 617 619 621 623 625 627 629 631 633 635 637 639
641 643 645 647 649 651 653 655 657 659 661 663 665 667
678 680 686 688 694 696 702 704 710 712 718 720 726 728
734 736 742 744 750 752 758 760 766 768 774 776 782 784
790 792 798 800 806 808 814 816 822 824 830 832 838 840
846 848 854 856 862 864 870 872 878 880 886 888 894 896
902 904 910 912 918 920 926 928 941 943 947 949 951 955
957 959 961 970 972 983 985 987 993 995 999 1001 1004 1008
1010 1012 1014 1029 1031 1044 1046 1050 1052 1055 1059 1061 1063 1065
1206 1208 1219 1221 1223 1225 1227 1229 1231 1233 1235 1237 1242 1246
1248 1250 1252 1254 1256 1258 1260 1262 1264 1266 1268 1270 1272 1274
1285 1287 1291 1293 1296 1300 1302 1304 1306 1322 1342 1344 1346 1486
1492 1504 1506 1510 1512 1517 1519 1521 1523 1528 1530 1532 1534 1536
1538 1540 1542 1546 1548 1550 1552 1554 1556 1558 1565 1567 1569 1571
1573 1575 1577 1579 1585 1587 1589 1591 1593 1595 1597 1609 1611 1613
1617 1619 1623 1625 1631 1635 1637 1642 1644 1650 1652 1656 1658 1664
1666 1668 1672 1674 1716 1718 1720 1722 1724 1726 1728 1730 1732 1734
1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756 1758 1760 1762
1764 1766 1900 1902 1906 1918 1928 1930 1945 1947 1962 1964 1979 1981
2068 2070 2072 2074 2094 2096 2395 2397 2399 2403 2412 2414 2416 2420
2422 2428 2437 2443 2450 2459 2466 2476 2478 2482 2487 2489 2500 2506
2515 2522 2532 2534 2538 2543 2545
.RJMAP 569 600 680 688 696 704 712 720 728 736 744 752 760 768
776 784 792 800 808 816 824 832 840 848 856 864 872 880
888 896 904 912 920 928 961 972 983 1014 1031 1065 1208 1223
1227 1231 1235 1266 1268 1274 1306 1344 1492 1523 1528 1542 1558 1577
1587 1609 1625 1637 1658 1668 1674 1906 1918 1930 1947 1964 1981 2074
2096 2397 2403 2412 2422 2428 2437 2500
.RJZ 567 1484 1488 1898 2066
.RLDCT 590 951 985 1004 1055 1219 1242 1296 1322 1530 1534 1565 1569 1611
1617 1642 1650 1900 2070 2414 2487 2543
.RLDLM 674 682 690 698 706 714 722 730 738 746 754 762 770 778
786 794 802 810 818 826 834 842 850 858 866 874 882 890
898 906 914 922 1070 2473 2529
.RLSAD 605 607 609 611 613 615 617 619 621 623 625 627 629 631
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667
.RMGC 605 607 609 611 613 615 617 619 621 623 625 627 629 631
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667 674 676 680 682 684 688 690 692 696 698
700 704 706 708 712 714 716 720 722 724 728 730 732 736
738 740 744 746 748 752 754 756 760 762 764 768 770 772
776 778 780 784 786 788 792 794 796 800 802 804 808 810
812 816 818 820 824 826 828 832 834 836 840 842 844 848
850 852 856 858 860 864 866 868 872 874 876 880 882 884
888 890 892 896 898 900 904 906 908 912 914 916 920 922
924 928 966 968 972 1021 1023 1025 1031 1070 1204 1208 1223 1227
1231 1235 1268 1274 1311 1313 1315 1324 1326 1328 1330 1332 1334 1336
1338 1340 1344 1490 1528 1530 1544 1546 1552 1563 1565 1581 1583 1587
1593 1611 1619 1621 1627 1629 1642 1652 1654 1660 1668 1904 1920 1922 SEQ 0588
1924 1926 1937 1939 1941 1943 1954 1956 1958 1960 1971 1973 1975 1977
2086 2088 2090 2092 2418 2420 2424 2426 2439 2441 2443 2446 2448 2450
2457 2459 2462 2464 2466 2469 2471 2473 2476 2478 2482 2484 2502 2504
2506 2513 2515 2518 2520 2522 2525 2527 2529 2532 2534 2538 2540
.ROENA 674 682 690 698 706 714 722 730 738 746 754 762 770 778
786 794 802 810 818 826 834 842 850 858 866 874 882 890
898 906 914 922 966 1021 1070 1315 1544 1619 1627 1652 2418 2426
2441 2448 2457 2464 2473 2476 2478 2504 2513 2520 2529 2532 2534
.ROR 580 586 592 594 605 607 609 611 613 615 617 619 621 623
625 627 629 631 633 635 637 639 641 643 645 647 649 651
653 655 657 659 661 663 665 667 674 676 680 682 684 688
690 692 696 698 700 704 706 708 712 714 716 720 722 724
728 730 732 736 738 740 744 746 748 752 754 756 760 762
764 768 770 772 776 778 780 784 786 788 792 794 796 800
802 804 808 810 812 816 818 820 824 826 828 832 834 836
840 842 844 848 850 852 856 858 860 864 866 868 872 874
876 880 882 884 888 890 892 896 898 900 904 906 908 912
914 916 920 922 924 928 941 947 953 955 966 972 993 999
1006 1008 1021 1025 1031 1044 1050 1057 1059 1070 1072 1074 1076 1078
1080 1082 1084 1086 1088 1090 1092 1094 1096 1098 1100 1102 1170 1172
1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200
1202 1204 1208 1221 1223 1225 1227 1229 1231 1233 1235 1246 1248 1250
1252 1254 1256 1258 1260 1262 1268 1270 1272 1274 1285 1291 1298 1300
1315 1340 1344 1490 1504 1510 1515 1517 1519 1583 1587 1611 1613 1615
1619 1627 1642 1644 1646 1652 1660 1668 1920 1922 1926 1937 1939 1943
1954 1956 1960 1971 1973 1977 2086 2088 2092 2416 2418 2426 2439 2441
2446 2448 2457 2462 2464 2471 2473 2502 2504 2513 2518 2520 2527 2529
.RPLUS 584 945 987 989 997 1048 1138 1140 1142 1144 1146 1148 1150 1152
1154 1156 1158 1160 1162 1164 1166 1168 1289 1324 1508 1546 1589 1629
1633 1635 1662 1670 1672 1775 1777 1779 1781 1783 1785 1787 1789 1902
1906 2072 2074 2403 2414
.RRAM 674 676 682 684 690 692 698 700 706 708 714 716 722 724
730 732 738 740 746 748 754 756 762 764 770 772 778 780
786 788 794 796 802 804 810 812 818 820 826 828 834 836
842 844 850 852 858 860 866 868 874 876 882 884 890 892
898 900 906 908 914 916 922 924
.RRDLM 676 684 692 700 708 716 724 732 740 748 756 764 772 780
788 796 804 812 820 828 836 844 852 860 868 876 884 892
900 908 916 924 1204
.RRPCT 598 959 987 1012 1063 1237 1264 1304 1346 1532 1548 1567 1589 1613
1635 1644 1672 1902 2072 2416 2489 2545
.RS0A 580 582 584 586 588 592 594 596 600 674 682 690 698 706
714 722 730 738 746 754 762 770 778 786 794 802 810 818
826 834 842 850 858 866 874 882 890 898 906 914 922 941
943 945 947 949 953 955 957 961 966 993 995 997 999 1001
1006 1008 1010 1014 1044 1046 1048 1050 1052 1057 1059 1061 1065 1070
1072 1074 1076 1078 1080 1082 1084 1086 1088 1090 1092 1094 1096 1098
1100 1102 1138 1140 1142 1144 1146 1148 1150 1152 1154 1156 1158 1160
1162 1164 1166 1168 1219 1221 1225 1229 1233 1242 1244 1246 1248 1250
1252 1254 1256 1258 1260 1262 1270 1272 1285 1287 1289 1291 1293 1298
1300 1302 1306 1315 1492 1504 1506 1508 1510 1512 1515 1517 1519 1521
1530 1544 1569 1627 1652 1674 1981 2096 2441 2448 2453 2455 2457 2464
2473 2476 2478 2504 2509 2511 2513 2520 2529 2532 2534 SEQ 0589
.RS0B 985 987 989 1021 1320 1324 1546 1589 1613 1617 1619 1629 1633 1635
1644 1648 1650 1662 1670 1672 1775 1777 1779 1781 1783 1785 1787 1789
1900 1902 1906 1924 1941 1958 1975 2070 2072 2074 2090 2403 2412 2414
2416 2418 2426 2469 2525
.RSAB 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1019 1027 1029 1104 1106 1108 1110 1112 1114
1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1170 1172 1174 1176
1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1206 1342
1585 1615 1646 1666 2391 2393 2395
.RSAQ 1136 1202
.RSD0 578 605 607 609 611 613 615 617 619 621 623 625 627 629
631 633 635 637 639 641 643 645 647 649 651 653 655 657
659 661 663 665 667 676 680 684 688 692 696 700 704 708
712 716 720 724 728 732 736 740 744 748 752 756 760 764
768 772 776 780 784 788 792 796 800 804 808 812 816 820
824 828 832 836 840 844 848 852 856 860 864 868 872 876
880 884 888 892 896 900 904 908 912 916 920 924 928 939
968 972 991 1023 1025 1031 1042 1204 1208 1223 1227 1231 1235 1268
1274 1283 1340 1344 1490 1502 1583 1587 1609 1611 1642 1660 1668 1920
1922 1926 1937 1939 1943 1954 1956 1960 1971 1973 1977 2086 2088 2092
2439 2446 2462 2471 2502 2518 2527
.RSELC 1530 1546 1552 1565 1581 1593
.RSELE 1490 1619 1621 1627 1629 1652 1654 1660 2418 2420 2424 2426
.RSELF 966 1311 1313 1315 1324 1326 1328 1330 1332 1334 1336 1338 1544
.RSELM 968 1021 1025 1340 1528 1563 1583 1904 1926 1943 1960 1977 2092 2441
2448 2457 2464 2471 2476 2478 2484 2504 2513 2520 2527 2532 2534 2540
.RSELP 1023 1924 1941 1958 1975 2090 2443 2450 2459 2466 2469 2482 2506 2515
2522 2525 2538
.RSKCN 680 688 696 704 712 720 728 736 744 752 760 768 776 784
792 800 808 816 824 832 840 848 856 864 872 880 888 896
904 912 920 928 972 1031 1208 1223 1227 1231 1235 1268 1274 1344
1587 1611 1642 1668 1920 1922 1937 1939 1954 1956 1971 1973 2086 2088
2439 2446 2462 2502 2518
.RSMIN 1342
.RTIM 1666
.RXNOR 582 588 596 943 949 957 995 1001 1010 1046 1052 1061 1244 1287
1293 1302 1506 1512 1521 2455 2511
.RXOR 678 686 694 702 710 718 726 734 742 750 758 766 774 782
790 798 806 814 822 830 838 846 854 862 870 878 886 894
902 910 918 926 970 1029 1206 1585 1666 2395
CALC 567 569 578 580 582 584 586 588 590 592 594 596 598 600
605 607 609 611 613 615 617 619 621 623 625 627 629 631 SEQ 0590
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667 669 674 676 678 680 682 684 686 688 690
692 694 696 698 700 702 704 706 708 710 712 714 716 718
720 722 724 726 728 730 732 734 736 738 740 742 744 746
748 750 752 754 756 758 760 762 764 766 768 770 772 774
776 778 780 782 784 786 788 790 792 794 796 798 800 802
804 806 808 810 812 814 816 818 820 822 824 826 828 830
832 834 836 838 840 842 844 846 848 850 852 854 856 858
860 862 864 866 868 870 872 874 876 878 880 882 884 886
888 890 892 894 896 898 900 902 904 906 908 910 912 914
916 918 920 922 924 926 928 930 939 941 943 945 947 949
951 953 955 957 959 961 966 968 970 972 974 983 985 987
989 991 993 995 997 999 1001 1004 1006 1008 1010 1012 1014 1019
1021 1023 1025 1027 1029 1031 1033 1042 1044 1046 1048 1050 1052 1055
1057 1059 1061 1063 1065 1070 1072 1074 1076 1078 1080 1082 1084 1086
1088 1090 1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114
1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142
1144 1146 1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170
1172 1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198
1200 1202 1204 1206 1208 1210 1219 1221 1223 1225 1227 1229 1231 1233
1235 1237 1242 1244 1246 1248 1250 1252 1254 1256 1258 1260 1262 1264
1266 1268 1270 1272 1274 1283 1285 1287 1289 1291 1293 1296 1298 1300
1302 1304 1306 1311 1313 1315 1320 1322 1324 1326 1328 1330 1332 1334
1336 1338 1340 1342 1344 1346 1348 1484 1486 1488 1490 1492 1502 1504
1506 1508 1510 1512 1515 1517 1519 1521 1523 1528 1530 1532 1534 1536
1538 1540 1542 1544 1546 1548 1550 1552 1554 1556 1558 1563 1565 1567
1569 1571 1573 1575 1577 1579 1581 1583 1585 1587 1589 1591 1593 1595
1597 1599 1609 1611 1613 1615 1617 1619 1621 1623 1625 1627 1629 1631
1633 1635 1637 1642 1644 1646 1648 1650 1652 1654 1656 1658 1660 1662
1664 1666 1668 1670 1672 1674 1681 1683 1685 1687 1689 1691 1693 1695
1697 1699 1701 1703 1705 1707 1709 1716 1718 1720 1722 1724 1726 1728
1730 1732 1734 1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756
1758 1760 1762 1764 1766 1768 1775 1777 1779 1781 1783 1785 1787 1789
1898 1900 1902 1904 1906 1918 1920 1922 1924 1926 1928 1930 1937 1939
1941 1943 1945 1947 1954 1956 1958 1960 1962 1964 1971 1973 1975 1977
1979 1981 2066 2068 2070 2072 2074 2086 2088 2090 2092 2094 2096 2391
2393 2395 2397 2399 2401 2403 2412 2414 2416 2418 2420 2422 2424 2426
2428 2437 2439 2441 2443 2446 2448 2450 2453 2455 2457 2459 2462 2464
2466 2469 2471 2473 2476 2478 2480 2482 2484 2487 2489 2491 2500 2502
2504 2506 2509 2511 2513 2515 2518 2520 2522 2525 2527 2529 2532 2534
2536 2538 2540 2543 2545 2547
CONCAT 567 569 578 580 582 584 586 588 590 592 594 596 598 600
605 607 609 611 613 615 617 619 621 623 625 627 629 631
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667 669 674 676 678 680 682 684 686 688 690
692 694 696 698 700 702 704 706 708 710 712 714 716 718
720 722 724 726 728 730 732 734 736 738 740 742 744 746
748 750 752 754 756 758 760 762 764 766 768 770 772 774
776 778 780 782 784 786 788 790 792 794 796 798 800 802
804 806 808 810 812 814 816 818 820 822 824 826 828 830
832 834 836 838 840 842 844 846 848 850 852 854 856 858
860 862 864 866 868 870 872 874 876 878 880 882 884 886
888 890 892 894 896 898 900 902 904 906 908 910 912 914 SEQ 0591
916 918 920 922 924 926 928 930 939 941 943 945 947 949
951 953 955 957 959 961 966 968 970 972 974 983 985 987
989 991 993 995 997 999 1001 1004 1006 1008 1010 1012 1014 1019
1021 1023 1025 1027 1029 1031 1033 1042 1044 1046 1048 1050 1052 1055
1057 1059 1061 1063 1065 1070 1072 1074 1076 1078 1080 1082 1084 1086
1088 1090 1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114
1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142
1144 1146 1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170
1172 1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198
1200 1202 1204 1206 1208 1210 1219 1221 1223 1225 1227 1229 1231 1233
1235 1237 1242 1244 1246 1248 1250 1252 1254 1256 1258 1260 1262 1264
1266 1268 1270 1272 1274 1283 1285 1287 1289 1291 1293 1296 1298 1300
1302 1304 1306 1311 1313 1315 1320 1322 1324 1326 1328 1330 1332 1334
1336 1338 1340 1342 1344 1346 1348 1484 1486 1488 1490 1492 1502 1504
1506 1508 1510 1512 1515 1517 1519 1521 1523 1528 1530 1532 1534 1536
1538 1540 1542 1544 1546 1548 1550 1552 1554 1556 1558 1563 1565 1567
1569 1571 1573 1575 1577 1579 1581 1583 1585 1587 1589 1591 1593 1595
1597 1599 1609 1611 1613 1615 1617 1619 1621 1623 1625 1627 1629 1631
1633 1635 1637 1642 1644 1646 1648 1650 1652 1654 1656 1658 1660 1662
1664 1666 1668 1670 1672 1674 1681 1683 1685 1687 1689 1691 1693 1695
1697 1699 1701 1703 1705 1707 1709 1716 1718 1720 1722 1724 1726 1728
1730 1732 1734 1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756
1758 1760 1762 1764 1766 1768 1775 1777 1779 1781 1783 1785 1787 1789
1898 1900 1902 1904 1906 1918 1920 1922 1924 1926 1928 1930 1937 1939
1941 1943 1945 1947 1954 1956 1958 1960 1962 1964 1971 1973 1975 1977
1979 1981 2066 2068 2070 2072 2074 2086 2088 2090 2092 2094 2096 2391
2393 2395 2397 2399 2401 2403 2412 2414 2416 2418 2420 2422 2424 2426
2428 2437 2439 2441 2443 2446 2448 2450 2453 2455 2457 2459 2462 2464
2466 2469 2471 2473 2476 2478 2480 2482 2484 2487 2489 2491 2500 2502
2504 2506 2509 2511 2513 2515 2518 2520 2522 2525 2527 2529 2532 2534
2536 2538 2540 2543 2545 2547
DELAY 2286
FIELD 567 569 578 580 582 584 586 588 590 592 594 596 598 600
605 607 609 611 613 615 617 619 621 623 625 627 629 631
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667 669 674 676 678 680 682 684 686 688 690
692 694 696 698 700 702 704 706 708 710 712 714 716 718
720 722 724 726 728 730 732 734 736 738 740 742 744 746
748 750 752 754 756 758 760 762 764 766 768 770 772 774
776 778 780 782 784 786 788 790 792 794 796 798 800 802
804 806 808 810 812 814 816 818 820 822 824 826 828 830
832 834 836 838 840 842 844 846 848 850 852 854 856 858
860 862 864 866 868 870 872 874 876 878 880 882 884 886
888 890 892 894 896 898 900 902 904 906 908 910 912 914
916 918 920 922 924 926 928 930 939 941 943 945 947 949
951 953 955 957 959 961 966 968 970 972 974 983 985 987
989 991 993 995 997 999 1001 1004 1006 1008 1010 1012 1014 1019
1021 1023 1025 1027 1029 1031 1033 1042 1044 1046 1048 1050 1052 1055
1057 1059 1061 1063 1065 1070 1072 1074 1076 1078 1080 1082 1084 1086
1088 1090 1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114
1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142
1144 1146 1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170
1172 1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 SEQ 0592
1200 1202 1204 1206 1208 1210 1219 1221 1223 1225 1227 1229 1231 1233
1235 1237 1242 1244 1246 1248 1250 1252 1254 1256 1258 1260 1262 1264
1266 1268 1270 1272 1274 1283 1285 1287 1289 1291 1293 1296 1298 1300
1302 1304 1306 1311 1313 1315 1320 1322 1324 1326 1328 1330 1332 1334
1336 1338 1340 1342 1344 1346 1348 1484 1486 1488 1490 1492 1502 1504
1506 1508 1510 1512 1515 1517 1519 1521 1523 1528 1530 1532 1534 1536
1538 1540 1542 1544 1546 1548 1550 1552 1554 1556 1558 1563 1565 1567
1569 1571 1573 1575 1577 1579 1581 1583 1585 1587 1589 1591 1593 1595
1597 1599 1609 1611 1613 1615 1617 1619 1621 1623 1625 1627 1629 1631
1633 1635 1637 1642 1644 1646 1648 1650 1652 1654 1656 1658 1660 1662
1664 1666 1668 1670 1672 1674 1681 1683 1685 1687 1689 1691 1693 1695
1697 1699 1701 1703 1705 1707 1709 1716 1718 1720 1722 1724 1726 1728
1730 1732 1734 1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756
1758 1760 1762 1764 1766 1768 1775 1777 1779 1781 1783 1785 1787 1789
1898 1900 1902 1904 1906 1918 1920 1922 1924 1926 1928 1930 1937 1939
1941 1943 1945 1947 1954 1956 1958 1960 1962 1964 1971 1973 1975 1977
1979 1981 2066 2068 2070 2072 2074 2086 2088 2090 2092 2094 2096 2391
2393 2395 2397 2399 2401 2403 2412 2414 2416 2418 2420 2422 2424 2426
2428 2437 2439 2441 2443 2446 2448 2450 2453 2455 2457 2459 2462 2464
2466 2469 2471 2473 2476 2478 2480 2482 2484 2487 2489 2491 2500 2502
2504 2506 2509 2511 2513 2515 2518 2520 2522 2525 2527 2529 2532 2534
2536 2538 2540 2543 2545 2547
GET 290 2314 2316 2329 2363 2365
GO 60 74 76 77 93 94 127 129 131 132 157 160 174 175
193 270 276 521 523 528 530 540 550 1402 1408 1410 1415 1425
1429 1435 1437 1447 1457 1846 1848 1853 1855 1869 1879 2024 2026 2031
2033 2043 2053 2145 2152 2153 2167 2219 2226 2227 2241 2287 2300 2301
2310 2311 2323 2326 2328 2372
MFLD 567# 567 569# 569 578# 578 580# 580 582# 582 584# 584 586# 586
588# 588 590# 590 592# 592 594# 594 596# 596 598# 598 600# 600
605# 605 607# 607 609# 609 611# 611 613# 613 615# 615 617# 617
619# 619 621# 621 623# 623 625# 625 627# 627 629# 629 631# 631
633# 633 635# 635 637# 637 639# 639 641# 641 643# 643 645# 645
647# 647 649# 649 651# 651 653# 653 655# 655 657# 657 659# 659
661# 661 663# 663 665# 665 667# 667 669# 669 674# 674 676# 676
678# 678 680# 680 682# 682 684# 684 686# 686 688# 688 690# 690
692# 692 694# 694 696# 696 698# 698 700# 700 702# 702 704# 704
706# 706 708# 708 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 728# 728 730# 730 732# 732
734# 734 736# 736 738# 738 740# 740 742# 742 744# 744 746# 746
748# 748 750# 750 752# 752 754# 754 756# 756 758# 758 760# 760
762# 762 764# 764 766# 766 768# 768 770# 770 772# 772 774# 774
776# 776 778# 778 780# 780 782# 782 784# 784 786# 786 788# 788
790# 790 792# 792 794# 794 796# 796 798# 798 800# 800 802# 802
804# 804 806# 806 808# 808 810# 810 812# 812 814# 814 816# 816
818# 818 820# 820 822# 822 824# 824 826# 826 828# 828 830# 830
832# 832 834# 834 836# 836 838# 838 840# 840 842# 842 844# 844
846# 846 848# 848 850# 850 852# 852 854# 854 856# 856 858# 858
860# 860 862# 862 864# 864 866# 866 868# 868 870# 870 872# 872
874# 874 876# 876 878# 878 880# 880 882# 882 884# 884 886# 886
888# 888 890# 890 892# 892 894# 894 896# 896 898# 898 900# 900
902# 902 904# 904 906# 906 908# 908 910# 910 912# 912 914# 914
916# 916 918# 918 920# 920 922# 922 924# 924 926# 926 928# 928 SEQ 0593
930# 930 939# 939 941# 941 943# 943 945# 945 947# 947 949# 949
951# 951 953# 953 955# 955 957# 957 959# 959 961# 961 966# 966
968# 968 970# 970 972# 972 974# 974 983# 983 985# 985 987# 987
989# 989 991# 991 993# 993 995# 995 997# 997 999# 999 1001# 1001
1004# 1004 1006# 1006 1008# 1008 1010# 1010 1012# 1012 1014# 1014 1019# 1019
1021# 1021 1023# 1023 1025# 1025 1027# 1027 1029# 1029 1031# 1031 1033# 1033
1042# 1042 1044# 1044 1046# 1046 1048# 1048 1050# 1050 1052# 1052 1055# 1055
1057# 1057 1059# 1059 1061# 1061 1063# 1063 1065# 1065 1070# 1070 1072# 1072
1074# 1074 1076# 1076 1078# 1078 1080# 1080 1082# 1082 1084# 1084 1086# 1086
1088# 1088 1090# 1090 1092# 1092 1094# 1094 1096# 1096 1098# 1098 1100# 1100
1102# 1102 1104# 1104 1106# 1106 1108# 1108 1110# 1110 1112# 1112 1114# 1114
1116# 1116 1118# 1118 1120# 1120 1122# 1122 1124# 1124 1126# 1126 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1138# 1138 1140# 1140 1142# 1142
1144# 1144 1146# 1146 1148# 1148 1150# 1150 1152# 1152 1154# 1154 1156# 1156
1158# 1158 1160# 1160 1162# 1162 1164# 1164 1166# 1166 1168# 1168 1170# 1170
1172# 1172 1174# 1174 1176# 1176 1178# 1178 1180# 1180 1182# 1182 1184# 1184
1186# 1186 1188# 1188 1190# 1190 1192# 1192 1194# 1194 1196# 1196 1198# 1198
1200# 1200 1202# 1202 1204# 1204 1206# 1206 1208# 1208 1210# 1210 1219# 1219
1221# 1221 1223# 1223 1225# 1225 1227# 1227 1229# 1229 1231# 1231 1233# 1233
1235# 1235 1237# 1237 1242# 1242 1244# 1244 1246# 1246 1248# 1248 1250# 1250
1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262 1264# 1264
1266# 1266 1268# 1268 1270# 1270 1272# 1272 1274# 1274 1283# 1283 1285# 1285
1287# 1287 1289# 1289 1291# 1291 1293# 1293 1296# 1296 1298# 1298 1300# 1300
1302# 1302 1304# 1304 1306# 1306 1311# 1311 1313# 1313 1315# 1315 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1342# 1342 1344# 1344 1346# 1346 1348# 1348
1484# 1484 1486# 1486 1488# 1488 1490# 1490 1492# 1492 1502# 1502 1504# 1504
1506# 1506 1508# 1508 1510# 1510 1512# 1512 1515# 1515 1517# 1517 1519# 1519
1521# 1521 1523# 1523 1528# 1528 1530# 1530 1532# 1532 1534# 1534 1536# 1536
1538# 1538 1540# 1540 1542# 1542 1544# 1544 1546# 1546 1548# 1548 1550# 1550
1552# 1552 1554# 1554 1556# 1556 1558# 1558 1563# 1563 1565# 1565 1567# 1567
1569# 1569 1571# 1571 1573# 1573 1575# 1575 1577# 1577 1579# 1579 1581# 1581
1583# 1583 1585# 1585 1587# 1587 1589# 1589 1591# 1591 1593# 1593 1595# 1595
1597# 1597 1599# 1599 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1617# 1617
1619# 1619 1621# 1621 1623# 1623 1625# 1625 1627# 1627 1629# 1629 1631# 1631
1633# 1633 1635# 1635 1637# 1637 1642# 1642 1644# 1644 1646# 1646 1648# 1648
1650# 1650 1652# 1652 1654# 1654 1656# 1656 1658# 1658 1660# 1660 1662# 1662
1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672 1674# 1674 1681# 1681
1683# 1683 1685# 1685 1687# 1687 1689# 1689 1691# 1691 1693# 1693 1695# 1695
1697# 1697 1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709
1716# 1716 1718# 1718 1720# 1720 1722# 1722 1724# 1724 1726# 1726 1728# 1728
1730# 1730 1732# 1732 1734# 1734 1736# 1736 1738# 1738 1740# 1740 1742# 1742
1744# 1744 1746# 1746 1748# 1748 1750# 1750 1752# 1752 1754# 1754 1756# 1756
1758# 1758 1760# 1760 1762# 1762 1764# 1764 1766# 1766 1768# 1768 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1898# 1898 1900# 1900 1902# 1902 1904# 1904 1906# 1906 1918# 1918 1920# 1920
1922# 1922 1924# 1924 1926# 1926 1928# 1928 1930# 1930 1937# 1937 1939# 1939
1941# 1941 1943# 1943 1945# 1945 1947# 1947 1954# 1954 1956# 1956 1958# 1958
1960# 1960 1962# 1962 1964# 1964 1971# 1971 1973# 1973 1975# 1975 1977# 1977
1979# 1979 1981# 1981 2066# 2066 2068# 2068 2070# 2070 2072# 2072 2074# 2074
2086# 2086 2088# 2088 2090# 2090 2092# 2092 2094# 2094 2096# 2096 2391# 2391
2393# 2393 2395# 2395 2397# 2397 2399# 2399 2401# 2401 2403# 2403 2412# 2412
2414# 2414 2416# 2416 2418# 2418 2420# 2420 2422# 2422 2424# 2424 2426# 2426 SEQ 0594
2428# 2428 2437# 2437 2439# 2439 2441# 2441 2443# 2443 2446# 2446 2448# 2448
2450# 2450 2453# 2453 2455# 2455 2457# 2457 2459# 2459 2462# 2462 2464# 2464
2466# 2466 2469# 2469 2471# 2471 2473# 2473 2476# 2476 2478# 2478 2480# 2480
2482# 2482 2484# 2484 2487# 2487 2489# 2489 2491# 2491 2500# 2500 2502# 2502
2504# 2504 2506# 2506 2509# 2509 2511# 2511 2513# 2513 2515# 2515 2518# 2518
2520# 2520 2522# 2522 2525# 2525 2527# 2527 2529# 2529 2532# 2532 2534# 2534
2536# 2536 2538# 2538 2540# 2540 2543# 2543 2545# 2545 2547# 2547
MWORD 567 569 578 580 582 584 586 588 590 592 594 596 598 600
605 607 609 611 613 615 617 619 621 623 625 627 629 631
633 635 637 639 641 643 645 647 649 651 653 655 657 659
661 663 665 667 669 674 676 678 680 682 684 686 688 690
692 694 696 698 700 702 704 706 708 710 712 714 716 718
720 722 724 726 728 730 732 734 736 738 740 742 744 746
748 750 752 754 756 758 760 762 764 766 768 770 772 774
776 778 780 782 784 786 788 790 792 794 796 798 800 802
804 806 808 810 812 814 816 818 820 822 824 826 828 830
832 834 836 838 840 842 844 846 848 850 852 854 856 858
860 862 864 866 868 870 872 874 876 878 880 882 884 886
888 890 892 894 896 898 900 902 904 906 908 910 912 914
916 918 920 922 924 926 928 930 939 941 943 945 947 949
951 953 955 957 959 961 966 968 970 972 974 983 985 987
989 991 993 995 997 999 1001 1004 1006 1008 1010 1012 1014 1019
1021 1023 1025 1027 1029 1031 1033 1042 1044 1046 1048 1050 1052 1055
1057 1059 1061 1063 1065 1070 1072 1074 1076 1078 1080 1082 1084 1086
1088 1090 1092 1094 1096 1098 1100 1102 1104 1106 1108 1110 1112 1114
1116 1118 1120 1122 1124 1126 1128 1130 1132 1134 1136 1138 1140 1142
1144 1146 1148 1150 1152 1154 1156 1158 1160 1162 1164 1166 1168 1170
1172 1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198
1200 1202 1204 1206 1208 1210 1219 1221 1223 1225 1227 1229 1231 1233
1235 1237 1242 1244 1246 1248 1250 1252 1254 1256 1258 1260 1262 1264
1266 1268 1270 1272 1274 1283 1285 1287 1289 1291 1293 1296 1298 1300
1302 1304 1306 1311 1313 1315 1320 1322 1324 1326 1328 1330 1332 1334
1336 1338 1340 1342 1344 1346 1348 1484 1486 1488 1490 1492 1502 1504
1506 1508 1510 1512 1515 1517 1519 1521 1523 1528 1530 1532 1534 1536
1538 1540 1542 1544 1546 1548 1550 1552 1554 1556 1558 1563 1565 1567
1569 1571 1573 1575 1577 1579 1581 1583 1585 1587 1589 1591 1593 1595
1597 1599 1609 1611 1613 1615 1617 1619 1621 1623 1625 1627 1629 1631
1633 1635 1637 1642 1644 1646 1648 1650 1652 1654 1656 1658 1660 1662
1664 1666 1668 1670 1672 1674 1681 1683 1685 1687 1689 1691 1693 1695
1697 1699 1701 1703 1705 1707 1709 1716 1718 1720 1722 1724 1726 1728
1730 1732 1734 1736 1738 1740 1742 1744 1746 1748 1750 1752 1754 1756
1758 1760 1762 1764 1766 1768 1775 1777 1779 1781 1783 1785 1787 1789
1898 1900 1902 1904 1906 1918 1920 1922 1924 1926 1928 1930 1937 1939
1941 1943 1945 1947 1954 1956 1958 1960 1962 1964 1971 1973 1975 1977
1979 1981 2066 2068 2070 2072 2074 2086 2088 2090 2092 2094 2096 2391
2393 2395 2397 2399 2401 2403 2412 2414 2416 2418 2420 2422 2424 2426
2428 2437 2439 2441 2443 2446 2448 2450 2453 2455 2457 2459 2462 2464
2466 2469 2471 2473 2476 2478 2480 2482 2484 2487 2489 2491 2500 2502
2504 2506 2509 2511 2513 2515 2518 2520 2522 2525 2527 2529 2532 2534
2536 2538 2540 2543 2545 2547
PNT4 259 2351
PNT6 289
PNTHW 218 224 240 246 2344 SEQ 0595
PNTMSG 206 209 214 216 220 222 236 238 242 244 256 262 264 266
268 272 274 553 554 555 556 557 558 559 1460 1461 1462 1463
1464 1465 1466 1467 1468 1882 1883 1884 1885 1886 1887 1888 1889 1890
2056 2057 2187 2188 2189 2190 2191 2265 2266 2342 2347 2348 2349 2356
PNTOCS 208 281 283 285 287 2358
PUT 278 2279 2281 2322 2340 2342
RGET 2314 2363
RPUT 2279 2340
RTN 194 210 225 247 291 524 541 551 1406 1411 1448 1458 1849 1870
1880 2027 2044 2054 2058 2168 2192 2242 2255 2267 2316 2330 2365 2373
SCOPER 84 101 136 180 534 1441 1863 2037 2160 2234
SUBTAB 1355 1791 1990 1992 1994 2105 2107 2109
TMSG 209 262 264
TMSGC 206 214 216 220 222 236 238 242 244 256 266 268 272 274
553 554 555 556 557 558 559 1460 1461 1462 1463 1464 1465 1466
1467 1468 1882 1883 1884 1885 1886 1887 1888 1889 1890 2056 2057 2187
2188 2189 2190 2191 2265 2266 2342 2347 2348 2349 2356
TTABLE 2172 2173 2174 2175 2176 2177 2246 2247 2248 2249
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 1
DFCIA3 MAC 6-Jun-83 09:56 Test Module DFCIA3.MAC SEQ 0596
1 SUBTTL Test Module DFCIA3.MAC
2
3 SALL
4
5 SEARCH DFCIA,MONSYM
6
7 ; Tests 10-32
8
9 ENTRY TST10,TST11,TST12,TST13,TST14,TST15,TST16,TST17
10 ENTRY TST20,TST21,TST22,TST23,TST24,TST25,TST26,TST27
11 ENTRY TST30,TST31,TST32
12
13 ; Microcode Tests 10-32
14
15 ENTRY T10M,T11M,T12M,T13M,T14M,T15M,T16M,T17M
16 ENTRY T20M,T21M,T22M,T23M,T24M,T25M,T26M,T27M
17 ENTRY T30M,T31M,T32M
18
19 ; EXTERN's located in DFCIA1.MAC
20
21 EXTERN UDEBUG,BUFF,CSRPNT,TRACE,TSTSUB,TLOAD,TSTEND
22
23 ; EXTERN's located in DFCIAI.MAC (Port Handling Routines)
24
25 EXTERN LDEBUF,LDRAR,LDCRAM,LDCSR,RDEBUF,RDLAR,RDCRAM,RDCSR
26 EXTERN ERESET,IPACLR,.DATAI,.DATAO,CHINIT
27
28 ; EXTERN's located in DFCIA2.MAC
29
30 EXTERN MSTART,MWAIT,MPRINT,MEXIT,MRESET,MRESTA,C1516
31 EXTERN SAVCSR,SAVLAR,SAVEBU,SAVCOD
32
33 ; EXTERN's located in DFCIAU.MAC (Utility Routines)
34
35 EXTERN BUFGEN,SCOSW
36
37 ;#********************************************************************
38 ; Z3 - Address for use in DDT
39 ;#********************************************************************
40
41 000000' Z3: ; address of 00000'
42
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 2
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0597
43 SUBTTL PB Transmit Buffer Tests
44
45 ;#********************************************************************
46 ;* TEST 10 - Transmit Buffer Load Test
47 ;
48 ; Description: This test verifies that both buffers can be
49 ; loaded properly. Each buffer is selected by a
50 ; 'Select Buffer' function and test data is written
51 ; into the buffer. After both buffers have been
52 ; written, they are read to verify the contents.
53 ;
54 ; Procedure: KL> Load microcode
55 ; KL> Port Clear
56 ; KL> Start port
57 ;
58 ; UC> Write 0's to each word of buffer A
59 ; UC> Write 1's to each word of buffer B
60 ; UC> Read each word of buffer A and verify 0's
61 ; UC> Read each word of buffer B and verify 1's
62 ; If failed - exit test with error code in EBUF
63 ; Code 1 - Buffer A failure - data error
64 ; Code 2 - Buffer A failure - parity error
65 ; Code 3 - Buffer B failure - data error
66 ; Code 4 - Buffer B failure - parity error
67 ;
68 ; KL> Read EBUF and determine test disposition
69 ;
70 ; FRU: Packet Buffer Module
71 ;#********************************************************************
72
73 ; Initialization
74
75 000000' 201 00 0 00 000000' TST10: MOVEI Z3 ; get address of module start
76 000001' 260 17 0 00 000000* GO TRACE ; handle trace output
77 000002' 201 01 0 00 000030' MOVEI 1,T10M ; set up microcode address
78 000003' 260 17 0 00 000000* GO TLOAD ; load/verify it
79 000004' 263 17 0 00 000000 RTN ; failed - exit test
80
81 ; Do the test
82
83 000005' 260 17 0 00 000000* GO MSTART ; start the test at 5777
84 000006' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
85 000007' 260 17 0 00 000000* GO MWAIT ; wait for completion
86
87 ; Handle error printouts
88
89 000010' 027 00 0 00 000015' SCOPER MA10 ; print error message
90 000011' 255 00 0 00 000000 JFCL ; loop on error
91 000012' 254 00 0 00 000013' JRST TX10 ; altmode exit
92
93 ; End of test
94
95 000013' 260 17 0 00 000000* TX10: GO TSTEND ; handle end of test processing
96 000014' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 3
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0598
97
98 ; Error messages
99
100 000015' 240000 000017' MA10: CALL!TXNOT!MA10PN
101 000016' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
102
103 000017' 201 01 0 00 000023' MA10PN: MOVEI 1,MA10LS ; get list address
104 000020' 201 02 0 00 000005 MOVEI 2,5 ; get list length
105 000021' 260 17 0 00 000000* GO MPRINT ; print data
106 000022' 263 17 0 00 000000 RTN ; return
107
108 000023' 037 00 0 00 005564' MA10LS: TMSGC <No failure detected>
109 000024' 037 00 0 00 005571' TMSGC <Transmit Buffer A load/read/select failure>
110 000025' 037 00 0 00 005602' TMSGC <Transmit Buffer A read failure - parity error>
111 000026' 037 00 0 00 005614' TMSGC <Transmit Buffer B load/read/select failure>
112 000027' 037 00 0 00 005625' TMSGC <Transmit Buffer B read failure - parity error>
113
114 ;#********************************************************************
115 ; Microcode:
116 ;#********************************************************************
117
118 ; Initialization
119
120 000030' 577700 000000 T10M: MWORD <ADDR=5777,JZ> ; 5777
121 000031' 000000 000000
122 000032' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
123 000033' 000000 000020
124 000034' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
125 000035' 342006 000300
126 000036' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
127 000037' 307006 000620
128 000040' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
129 000041' 302006 000440
130
131 ; R14 - 8 bit mask (377)
132 ; R15 - Actual data (right justified)
133 ; R16 - Correct data (right justified)
134 ; R17 - Completion code (right justified)
135
136 ; Packet Buffer A loading
137
138 000042' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
139 000043' 000000 000040
140 000044' 100100 000002 SELBUF (2) ; 1001-04
141 000045' 732000 240340
142 000046' 100200 002040
143 000047' 431000 002340
144 000050' 100300 000174
145 000051' 000000 001340
146 000052' 100400 000000
147 000053' 001000 000340
148 000054' 100517 770000 MWORD <LDCT,J=1777,S0A,AND,D=2> ; 1005
149 000055' 442000 000300
150 000056' 100600 002040 LDXBUF ; 1006-07
151 000057' 431000 002340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 3-1
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0599
152 000060' 100700 000214
153 000061' 000000 001340
154 000062' 101010 060000 MWORD <RPCT,J=1006> ; 1010
155 000063' 000000 000220
156
157 ; Packet Buffer B loading
158
159 000064' 101100 000003 SELBUF (3) ; 1011-14
160 000065' 732000 240340
161 000066' 101200 002040
162 000067' 431000 002340
163 000070' 101300 000174
164 000071' 000000 001340
165 000072' 101400 000000
166 000073' 001000 000340
167 000074' 101517 770377 MWORD <LDCT,J=1777,SD0,OR,D=2,SKCN,MGC=377> ; 1015
168 000075' 732000 240300
169 000076' 101600 002040 LDXBUF ; 1016-17
170 000077' 431000 002340
171 000100' 101700 000214
172 000101' 000000 001340
173 000102' 102010 160000 MWORD <RPCT,J=1016> ; 1020
174 000103' 000000 000220
175
176 ; Read each word of buffer A and verify 0's
177
178 000104' 102100 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1021
179 000105' 342007 400340
180 000106' 102200 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1022
181 000107' 302007 400740
182 000110' 102317 770000 MWORD <LDCT,J=1777,S0B,AND,B=16,D=2> ; 1023
183 000111' 342007 000300
184 000112' 102400 000006 SELBUF (6) ; 1024-27
185 000113' 732000 240340
186 000114' 102500 002040
187 000115' 431000 002340
188 000116' 102600 000174
189 000117' 000000 001340
190 000120' 102700 000000
191 000121' 001000 000340
192 000122' 103000 000132 RDBUFF ; 1030-31
193 000123' 342006 401340
194 000124' 103100 000300
195 000125' 732006 402340
196 000126' 103230 000000 MWORD <CJS,J=3000> ; 1032
197 000127' 000000 000020
198 000130' 103310 300000 MWORD <RPCT,J=1030> ; 1033
199 000131' 000000 000220
200
201 ; Read each word of buffer B and verify 1's
202
203 000132' 103400 000377 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=377> ; 1034
204 000133' 732007 240340
205 000134' 103500 000003 MWORD <CONT,SD0,OR,B=17,D=2,SKCN,MGC=3> ; 1035
206 000135' 732007 640340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 3-2
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0600
207 000136' 103617 770000 MWORD <LDCT,J=1777> ; 1036
208 000137' 000000 000300
209 000140' 103700 000007 SELBUF (7) ; 1037-42
210 000141' 732000 240340
211 000142' 104000 002040
212 000143' 431000 002340
213 000144' 104100 000174
214 000145' 000000 001340
215 000146' 104200 000000
216 000147' 001000 000340
217 000150' 104300 000132 RDBUFF ; 1043-44
218 000151' 342006 401340
219 000152' 104400 000300
220 000153' 732006 402340
221 000154' 104530 000000 MWORD <CJS,J=3000> ; 1045
222 000155' 000000 000020
223 000156' 104610 430000 MWORD <RPCT,J=1043> ; 1046
224 000157' 000000 000220
225 000160' 104750 000000 MWORD <JMAP,J=5000,S0B,AND,B=17,D=2> ; 1047
226 000161' 342007 400040
227
228 ;#********************************************************************
229 ; C1516 - Compare R15 and R16 and check for PLI PE
230 ; MRESET - Reset the Packet Buffer and Link modules
231 ; MEXIT - Exit and write completion code to CSR
232 ;#********************************************************************
233
234 000162' 777777 777776 SUBTAB (C1516) ; 3000 ..
235 000163' 000000000000#
236 000164' 777777 777776 SUBTAB (MRESET) ; 4000 ..
237 000165' 000000000000#
238 000166' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
239 000167' 000000000000#
240 000170' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 4
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0601
241
242 ;#********************************************************************
243 ;* TEST 11 - Tranmit Buffer A Test
244 ;
245 ; Description: This test verifies Transmit Buffer A on the
246 ; packet buffer module. A data pattern is written
247 ; to the buffer after selecting and resetting it.
248 ; Then the data is read back and verified.
249 ;
250 ; Procedure: KL> Load microcode
251 ; KL> Port Clear
252 ; KL> Start port
253 ;
254 ; UC> Build data pattern
255 ; UC> Write to each word of transmit buffer A
256 ; UC> Read each word back and verify
257 ; If failed - exit test with error code in EBUF
258 ; Code 1 - Buffer A failure - data error
259 ; Code 2 - Buffer A failure - parity error
260 ;
261 ; UC> Repeat with each data pattern
262 ;
263 ; KL> Read EBUF and determine test disposition
264 ;
265 ; Data Patrns: 0,-1,1,376,2,375,4,373,10,367,20,357,40,337
266 ; 100,277,200,177
267 ;
268 ; FRU: Packet Buffer Module
269 ;#********************************************************************
270
271 ; Initialization
272
273 000171' 201 00 0 00 000000' TST11: MOVEI Z3 ; get address of module start
274 000172' 260 17 0 00 000001* GO TRACE ; handle trace output
275 000173' 201 01 0 00 000217' MOVEI 1,T11M ; set up microcode address
276 000174' 260 17 0 00 000003* GO TLOAD ; load/verify it
277 000175' 263 17 0 00 000000 RTN ; failed - exit test
278
279 ; Do the test
280
281 000176' 260 17 0 00 000005* GO MSTART ; start the test at 5777
282 000177' 201 01 0 00 000310 MOVEI 1,^D200 ; set up wait of 200 ms
283 000200' 260 17 0 00 000007* GO MWAIT ; wait for completion
284
285 ; Handle error printouts
286
287 000201' 027 00 0 00 000206' SCOPER MA11 ; print error message
288 000202' 255 00 0 00 000000 JFCL ; loop on error
289 000203' 254 00 0 00 000204' JRST TX11 ; altmode exit
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 5
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0602
290
291 ; End of test
292
293 000204' 260 17 0 00 000013* TX11: GO TSTEND ; handle end of test processing
294 000205' 263 17 0 00 000000 RTN ; return
295
296 ; Error messages
297
298 000206' 240000 000210' MA11: CALL!TXNOT!MA11PN
299 000207' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
300
301 000210' 201 01 0 00 000214' MA11PN: MOVEI 1,MA11LS ; get list address
302 000211' 201 02 0 00 000003 MOVEI 2,3 ; get list length
303 000212' 260 17 0 00 000021* GO MPRINT ; print data
304 000213' 263 17 0 00 000000 RTN ; return
305
306 000214' 037 00 0 00 005564' MA11LS: TMSGC <No failure detected>
307 000215' 037 00 0 00 005637' TMSGC <Transmit Buffer A failure - data error>
308 000216' 037 00 0 00 005650' TMSGC <Transmit Buffer A failure - parity error>
309
310 ;#********************************************************************
311 ; Microcode:
312 ;#********************************************************************
313
314 ; Initialization
315
316 000217' 577700 000000 T11M: MWORD <ADDR=5777,JZ> ; 5777
317 000220' 000000 000000
318 000221' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
319 000222' 000000 000020
320 000223' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
321 000224' 342006 000300
322 000225' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
323 000226' 307006 000620
324 000227' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
325 000230' 302006 000440
326
327 ; R7 - Scratch AC for data patterns
328 ; R14 - 8 bit mask (377)
329 ; R15 - Actual data (right justified)
330 ; R16 - Correct data (right justified)
331 ; R17 - Completion code (right justified)
332
333 ; Build data patterns
334
335 000231' 100000 000000 MWORD <ADDR=1000,CONT,SD0,AND,B=7,D=2> ; 1000
336 000232' 742003 400340
337 000233' 100111 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1001 - 0's
338 000234' 432077 000020
339 000235' 100211 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1002 - comp
340 000236' 472077 000020
341 000237' 100300 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 1003
342 000240' 402073 400740
343 000241' 100411 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1004 - 1
344 000242' 432077 000020
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 5-1
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0603
345 000243' 100511 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1005 - comp
346 000244' 472077 000020
347
348 000245' 100600 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 1006
349 000246' 437073 400340
350 000247' 100711 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1007 - 2 ...
351 000250' 432077 000020
352 000251' 101011 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1010 - comp
353 000252' 472077 000020
354 000253' 101100 000200 MWORD <CONT,SDA,AND,A=14,B=5,D=2,SKCN,MGC=200>; 1011
355 000254' 542142 640340
356 000255' 101210 140000 MWORD <CJP,J=1014,SAB,XOR,A=7,B=5,D=1,CENA,CCFZ>
357 000256' 161472 420060
358 000257' 101310 060000 MWORD <JMAP,J=1006,D=1> ; 1013
359 000260' 001000 000040
360 000261' 101450 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1014 - done
361 000262' 442007 400040
362
363 ;#********************************************************************
364 ; Subroutine to test the buffer for one data pattern
365 ;#********************************************************************
366
367 ; Write data pattern to each word of buffer
368
369 000263' 110011 010000 MWORD <ADDR=1100,JMAP,J=1101> ; 1100
370 000264' 000000 000040
371 000265' 110100 000002 SELBUF (2) ; 1101-04
372 000266' 732000 240340
373 000267' 110200 002040
374 000270' 431000 002340
375 000271' 110300 000174
376 000272' 000000 001340
377 000273' 110400 000000
378 000274' 001000 000340
379 000275' 110517 770000 MWORD <LDCT,J=1777,S0A,OR,A=16,D=2> ; 1105
380 000276' 432160 000300
381 000277' 110600 002040 LDXBUF ; 1106-07
382 000300' 431000 002340
383 000301' 110700 000214
384 000302' 000000 001340
385 000303' 111011 060000 MWORD <RPCT,J=1106> ; 1110
386 000304' 000000 000220
387
388 ; Read each word back and verify
389
390 000305' 111100 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1111
391 000306' 342007 400340
392 000307' 111200 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1112
393 000310' 302007 400740
394 000311' 111317 770000 MWORD <LDCT,J=1777> ; 1113
395 000312' 000000 000300
396 000313' 111400 000006 SELBUF (6) ; 1114-17
397 000314' 732000 240340
398 000315' 111500 002040
399 000316' 431000 002340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 5-2
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0604
400 000317' 111600 000174
401 000320' 000000 001340
402 000321' 111700 000000
403 000322' 001000 000340
404 000323' 112000 000132 RDBUFF ; 1120-21
405 000324' 342006 401340
406 000325' 112100 000300
407 000326' 732006 402340
408 000327' 112230 000000 MWORD <CJS,J=3000> ; 1122
409 000330' 000000 000020
410 000331' 112311 200000 MWORD <RPCT,J=1120> ; 1123
411 000332' 000000 000220
412 000333' 112400 000000 MWORD <CRTN,D=1> ; 1124
413 000334' 001000 000240
414
415 ;#********************************************************************
416 ; C1516 - Compare R15 and R16 and check for PLI PE
417 ; MRESET - Reset the Packet Buffer and Link modules
418 ; MEXIT - Exit and write completion code to CSR
419 ;#********************************************************************
420
421 000335' 777777 777776 SUBTAB (C1516) ; 3000 ..
422 000336' 000000000000#
423 000337' 777777 777776 SUBTAB (MRESET) ; 4000 ..
424 000340' 000000000000#
425 000341' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
426 000342' 000000000000#
427 000343' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 6
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0605
428
429 ;#********************************************************************
430 ;* TEST 12 - Transmit Buffer B Test
431 ;
432 ; Description: This test verifies Transmit Buffer B on the
433 ; packet buffer module. A data pattern is written
434 ; to the buffer after selecting and resetting it.
435 ; Then the data is read back and verified.
436 ;
437 ; Procedure: KL> Load microcode
438 ; KL> Port Clear
439 ; KL> Start port
440 ;
441 ; UC> Build data pattern
442 ; UC> Write to each word of transmit buffer B
443 ; UC> Read each word back and verify
444 ; If failed - exit test with error code in EBUF
445 ; Code 1 - Buffer B failure - data error
446 ; Code 2 - Buffer B failure - parity error
447 ;
448 ; UC> Repeat with each data pattern
449 ;
450 ; KL> Read EBUF and determine test disposition
451 ;
452 ; Data Patrns: 0,-1,1,376,2,375,4,373,10,367,20,357,40,337
453 ; 100,277,200,177
454 ;
455 ; FRU: Packet Buffer Module
456 ;#********************************************************************
457
458 ; Initialization
459
460 000344' 201 00 0 00 000000' TST12: MOVEI Z3 ; get address of module start
461 000345' 260 17 0 00 000172* GO TRACE ; handle trace output
462 000346' 201 01 0 00 000372' MOVEI 1,T12M ; set up microcode address
463 000347' 260 17 0 00 000174* GO TLOAD ; load/verify it
464 000350' 263 17 0 00 000000 RTN ; failed - exit test
465
466 ; Do the test
467
468 000351' 260 17 0 00 000176* GO MSTART ; start the test at 5777
469 000352' 201 01 0 00 000310 MOVEI 1,^D200 ; set up wait of 200 ms
470 000353' 260 17 0 00 000200* GO MWAIT ; wait for completion
471
472 ; Handle error printouts
473
474 000354' 027 00 0 00 000361' SCOPER MA12 ; print error message
475 000355' 255 00 0 00 000000 JFCL ; loop on error
476 000356' 254 00 0 00 000357' JRST TX12 ; altmode exit
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 7
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0606
477
478 ; End of test
479
480 000357' 260 17 0 00 000204* TX12: GO TSTEND ; handle end of test processing
481 000360' 263 17 0 00 000000 RTN ; return
482
483 ; Error messages
484
485 000361' 240000 000363' MA12: CALL!TXNOT!MA12PN
486 000362' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
487
488 000363' 201 01 0 00 000367' MA12PN: MOVEI 1,MA12LS ; get list address
489 000364' 201 02 0 00 000003 MOVEI 2,3 ; get list length
490 000365' 260 17 0 00 000212* GO MPRINT ; print data
491 000366' 263 17 0 00 000000 RTN ; return
492
493 000367' 037 00 0 00 005564' MA12LS: TMSGC <No failure detected>
494 000370' 037 00 0 00 005661' TMSGC <Transmit Buffer B failure - data error>
495 000371' 037 00 0 00 005672' TMSGC <Transmit Buffer B failure - parity error>
496
497 ;#********************************************************************
498 ; Microcode:
499 ;#********************************************************************
500
501 ; Initialization
502
503 000372' 577700 000000 T12M: MWORD <ADDR=5777,JZ> ; 5777
504 000373' 000000 000000
505 000374' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
506 000375' 000000 000020
507 000376' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
508 000377' 342006 000300
509 000400' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
510 000401' 307006 000620
511 000402' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
512 000403' 302006 000440
513
514 ; R7 - Scratch AC for data patterns
515 ; R14 - 8 bit mask (377)
516 ; R15 - Actual data (right justified)
517 ; R16 - Correct data (right justified)
518 ; R17 - Completion code (right justified)
519
520 ; Build data patterns
521
522 000404' 100000 000000 MWORD <ADDR=1000,CONT,SD0,AND,B=7,D=2> ; 1000
523 000405' 742003 400340
524 000406' 100111 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1001 - 0's
525 000407' 432077 000020
526 000410' 100211 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1002 - comp
527 000411' 472077 000020
528 000412' 100300 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 1003
529 000413' 402073 400740
530 000414' 100411 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1004 - 1
531 000415' 432077 000020
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 7-1
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0607
532 000416' 100511 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1005 - comp
533 000417' 472077 000020
534
535 000420' 100600 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 1006
536 000421' 437073 400340
537 000422' 100711 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1007 - 2 ...
538 000423' 432077 000020
539 000424' 101011 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1010 - comp
540 000425' 472077 000020
541 000426' 101100 000200 MWORD <CONT,SDA,AND,A=14,B=5,D=2,SKCN,MGC=200>; 1011
542 000427' 542142 640340
543 000430' 101210 140000 MWORD <CJP,J=1014,SAB,XOR,A=7,B=5,D=1,CENA,CCFZ>
544 000431' 161472 420060
545 000432' 101310 060000 MWORD <JMAP,J=1006,D=1> ; 1013
546 000433' 001000 000040
547 000434' 101450 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1014 - done
548 000435' 442007 400040
549
550 ;#********************************************************************
551 ; Subroutine to test the buffer for one data pattern
552 ;#********************************************************************
553
554 ; Write data pattern to each word of buffer
555
556 000436' 110011 010000 MWORD <ADDR=1100,JMAP,J=1101> ; 1100
557 000437' 000000 000040
558 000440' 110100 000003 SELBUF (3) ; 1101-04
559 000441' 732000 240340
560 000442' 110200 002040
561 000443' 431000 002340
562 000444' 110300 000174
563 000445' 000000 001340
564 000446' 110400 000000
565 000447' 001000 000340
566 000450' 110517 770000 MWORD <LDCT,J=1777,S0A,OR,A=16,D=2> ; 1105
567 000451' 432160 000300
568 000452' 110600 002040 LDXBUF ; 1106-07
569 000453' 431000 002340
570 000454' 110700 000214
571 000455' 000000 001340
572 000456' 111011 060000 MWORD <RPCT,J=1106> ; 1110
573 000457' 000000 000220
574
575 ; Read each word back and verify
576
577 000460' 111100 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1111
578 000461' 342007 400340
579 000462' 111200 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1112
580 000463' 302007 400740
581 000464' 111317 770000 MWORD <LDCT,J=1777> ; 1113
582 000465' 000000 000300
583 000466' 111400 000007 SELBUF (7) ; 1114-17
584 000467' 732000 240340
585 000470' 111500 002040
586 000471' 431000 002340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 7-2
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0608
587 000472' 111600 000174
588 000473' 000000 001340
589 000474' 111700 000000
590 000475' 001000 000340
591 000476' 112000 000132 RDBUFF ; 1120-21
592 000477' 342006 401340
593 000500' 112100 000300
594 000501' 732006 402340
595 000502' 112230 000000 MWORD <CJS,J=3000> ; 1122
596 000503' 000000 000020
597 000504' 112311 200000 MWORD <RPCT,J=1120> ; 1123
598 000505' 000000 000220
599 000506' 112400 000000 MWORD <CRTN,D=1> ; 1124
600 000507' 001000 000240
601
602 ;#********************************************************************
603 ; C1516 - Compare R15 and R16 and check for PLI PE
604 ; MRESET - Reset the Packet Buffer and Link modules
605 ; MEXIT - Exit and write completion code to CSR
606 ;#********************************************************************
607
608 000510' 777777 777776 SUBTAB (C1516) ; 3000 ..
609 000511' 000000000000#
610 000512' 777777 777776 SUBTAB (MRESET) ; 4000 ..
611 000513' 000000000000#
612 000514' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
613 000515' 000000000000#
614 000516' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 8
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0609
615
616 ;#********************************************************************
617 ;* TEST 13 - Transmit Buffer Addressing Test
618 ;
619 ; Description: This test verifies that both buffers can be
620 ; loaded properly. Each buffer is selected by a
621 ; 'Select Buffer' function and an address pattern
622 ; is written to each location of the buffer. After
623 ; both buffers have been written, they are read to
624 ; verify the contents.
625 ;
626 ; Procedure: KL> Load microcode
627 ; KL> Port Clear
628 ; KL> Start port
629 ;
630 ; UC> Write address pattern to buffer A
631 ; UC> Write complemented address pattern to buffer B
632 ; UC> Read/verify each word of buffer A
633 ; UC> Read/verify each word of buffer B
634 ; If failed - exit test with error code in EBUF
635 ; Code 1 - Buffer A failure - data error
636 ; Code 2 - Buffer A failure - parity error
637 ; Code 3 - Buffer B failure - data error
638 ; Code 4 - Buffer B failure - parity error
639 ;
640 ; KL> Read EBUF and determine test disposition
641 ;
642 ; FRU: Packet Buffer Module
643 ;#********************************************************************
644
645 ; Initialization
646
647 000517' 201 00 0 00 000000' TST13: MOVEI Z3 ; get address of module start
648 000520' 260 17 0 00 000345* GO TRACE ; handle trace output
649 000521' 201 01 0 00 000547' MOVEI 1,T13M ; set up microcode address
650 000522' 260 17 0 00 000347* GO TLOAD ; load/verify it
651 000523' 263 17 0 00 000000 RTN ; failed - exit test
652
653 ; Do the test
654
655 000524' 260 17 0 00 000351* GO MSTART ; start the test at 5777
656 000525' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
657 000526' 260 17 0 00 000353* GO MWAIT ; wait for completion
658
659 ; Handle error printouts
660
661 000527' 027 00 0 00 000534' SCOPER MA13 ; print error message
662 000530' 255 00 0 00 000000 JFCL ; loop on error
663 000531' 254 00 0 00 000532' JRST TX13 ; altmode exit
664
665 ; End of test
666
667 000532' 260 17 0 00 000357* TX13: GO TSTEND ; handle end of test processing
668 000533' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 9
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0610
669
670 ; Error messages
671
672 000534' 240000 000536' MA13: CALL!TXNOT!MA13PN
673 000535' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
674
675 000536' 201 01 0 00 000542' MA13PN: MOVEI 1,MA13LS ; get list address
676 000537' 201 02 0 00 000005 MOVEI 2,5 ; get list length
677 000540' 260 17 0 00 000365* GO MPRINT ; print data
678 000541' 263 17 0 00 000000 RTN ; return
679
680 000542' 037 00 0 00 005564' MA13LS: TMSGC <No failure detected>
681 000543' 037 00 0 00 005703' TMSGC <Transmit Buffer A addressing failure - data error>
682 000544' 037 00 0 00 005716' TMSGC <Transmit Buffer A addressing failure - parity error>
683 000545' 037 00 0 00 005731' TMSGC <Transmit Buffer B addressing failure - data error>
684 000546' 037 00 0 00 005744' TMSGC <Transmit Buffer B addressing failure - parity error>
685
686 ;#********************************************************************
687 ; Microcode:
688 ;#********************************************************************
689
690 ; Initialization
691
692 000547' 577700 000000 T13M: MWORD <ADDR=5777,JZ> ; 5777
693 000550' 000000 000000
694 000551' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
695 000552' 000000 000020
696 000553' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
697 000554' 342006 000300
698 000555' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
699 000556' 307006 000620
700 000557' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
701 000560' 302006 000440
702
703 ; R14 - 8 bit mask (377)
704 ; R15 - Actual data (right justified)
705 ; R16 - Correct data (right justified)
706 ; R17 - Completion code (right justified)
707
708 ; Packet Buffer A loading
709
710 000561' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
711 000562' 000000 000040
712 000563' 100100 000002 SELBUF (2) ; 1001-04
713 000564' 732000 240340
714 000565' 100200 002040
715 000566' 431000 002340
716 000567' 100300 000174
717 000570' 000000 001340
718 000571' 100400 000000
719 000572' 001000 000340
720 000573' 100517 770000 MWORD <LDCT,J=1777,S0A,AND,D=2> ; 1005
721 000574' 442000 000300
722 000575' 100600 002040 LDXBUF ; 1006-07
723 000576' 431000 002340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 9-1
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0611
724 000577' 100700 000214
725 000600' 000000 001340
726 000601' 101010 060000 MWORD <RPCT,J=1006,S0A,PLUS,D=2,CRY> ; 1010
727 000602' 402000 000620
728
729 ; Packet Buffer B loading
730
731 000603' 101100 000003 SELBUF (3) ; 1011-14
732 000604' 732000 240340
733 000605' 101200 002040
734 000606' 431000 002340
735 000607' 101300 000174
736 000610' 000000 001340
737 000611' 101400 000000
738 000612' 001000 000340
739 000613' 101517 770000 MWORD <LDCT,J=1777,S0A,AND,B=7,D=2> ; 1015
740 000614' 442003 400300
741 000615' 101600 000000 MWORD <CONT,S0A,XNOR,A=7,D=2> ; 1016
742 000616' 472070 000340
743 000617' 101700 002040 LDXBUF ; 1017-20
744 000620' 431000 002340
745 000621' 102000 000214
746 000622' 000000 001340
747 000623' 102110 160000 MWORD <RPCT,J=1016,S0B,B=7,PLUS,D=2,CRY> ; 1021
748 000624' 302003 400620
749
750 ; Read each word of buffer A and verify
751
752 000625' 102200 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1022
753 000626' 342007 400340
754 000627' 102300 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1023
755 000630' 302007 400740
756 000631' 102417 770000 MWORD <LDCT,J=1777,S0B,AND,B=16,D=2> ; 1024
757 000632' 342007 000300
758 000633' 102500 000006 SELBUF (6) ; 1025-30
759 000634' 732000 240340
760 000635' 102600 002040
761 000636' 431000 002340
762 000637' 102700 000174
763 000640' 000000 001340
764 000641' 103000 000000
765 000642' 001000 000340
766 000643' 103100 000132 RDBUFF ; 1031-32
767 000644' 342006 401340
768 000645' 103200 000300
769 000646' 732006 402340
770 000647' 103330 000000 MWORD <CJS,J=3000> ; 1033
771 000650' 000000 000020
772 000651' 103410 310000 MWORD <RPCT,J=1031,S0B,PLUS,B=16,D=2,CRY> ; 1034
773 000652' 302007 000620
774
775 ; Read each word of buffer B
776
777 000653' 103500 000000 MWORD <CONT,S0B,AND,B=7,D=2> ; 1035
778 000654' 342003 400340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 9-2
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0612
779 000655' 103600 000003 MWORD <CONT,SD0,OR,B=17,D=2,SKCN,MGC=3> ; 1036
780 000656' 732007 640340
781 000657' 103717 770000 MWORD <LDCT,J=1777> ; 1037
782 000660' 000000 000300
783 000661' 104000 000007 SELBUF (7) ; 1040-43
784 000662' 732000 240340
785 000663' 104100 002040
786 000664' 431000 002340
787 000665' 104200 000174
788 000666' 000000 001340
789 000667' 104300 000000
790 000670' 001000 000340
791 000671' 104400 000000 MWORD <CONT,S0A,XNOR,A=7,B=16,D=2> ; 1044
792 000672' 472077 000340
793 000673' 104500 000132 RDBUFF ; 1045-46
794 000674' 342006 401340
795 000675' 104600 000300
796 000676' 732006 402340
797 000677' 104730 000000 MWORD <CJS,J=3000> ; 1047
798 000700' 000000 000020
799 000701' 105010 440000 MWORD <RPCT,J=1044,S0B,PLUS,B=7,D=2,CRY> ; 1050
800 000702' 302003 400620
801 000703' 105150 000000 MWORD <JMAP,J=5000,S0B,AND,B=17,D=2> ; 1051
802 000704' 342007 400040
803
804 ;#********************************************************************
805 ; C1516 - Compare R15 and R16 and check for PLI PE
806 ; MRESET - Reset the Packet Buffer and Link modules
807 ; MEXIT - Exit and write completion code to CSR
808 ;#********************************************************************
809
810 000705' 777777 777776 SUBTAB (C1516) ; 3000 ..
811 000706' 000000000000#
812 000707' 777777 777776 SUBTAB (MRESET) ; 4000 ..
813 000710' 000000000000#
814 000711' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
815 000712' 000000000000#
816 000713' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 10
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0613
817
818 ;#********************************************************************
819 ;* TEST 14 - PB Address Counter Test (Transmit)
820 ;
821 ; Description: This test verifies that 'Select Buffer' function
822 ; causes the address counter of the selected
823 ; transmit buffer to be reset. This function is
824 ; issued, then data is written into part of the
825 ; buffer. Then this function is issued again and
826 ; more data written. Then the buffer is read and
827 ; the data should have been written into the
828 ; beginning of the buffer.
829 ;
830 ; This is repeated for transmit buffers A and B.
831 ;
832 ; Procedure: KL> Load microcode
833 ; KL> Port Clear
834 ; KL> Start port
835 ;
836 ; UC> Select buffer A
837 ; UC> Write address pattern to first 400 bytes of buffer
838 ; UC> Issue 'Select Buffer' function
839 ; UC> Write complemented pattern to first 100 bytes of
840 ; buffer
841 ; UC> Read first 400 bytes of buffer and verify pattern
842 ; If failed - exit test with error code in EBUF
843 ; Code 1 - Buffer A failure - data error
844 ; Code 2 - Buffer A failure - parity error
845 ;
846 ; UC> Select buffer B and repeat above steps
847 ; If failed - exit test with error code in EBUF
848 ; Code 3 - Buffer B failure - data error
849 ; Code 4 - Buffer B failure - parity error
850 ;
851 ; KL> Read EBUF and determine test disposition
852 ;
853 ; FRU: Packet Buffer Module
854 ;#********************************************************************
855
856 ; Initialization
857
858 000714' 201 00 0 00 000000' TST14: MOVEI Z3 ; get address of module start
859 000715' 260 17 0 00 000520* GO TRACE ; handle trace output
860 000716' 201 01 0 00 000744' MOVEI 1,T14M ; set up microcode address
861 000717' 260 17 0 00 000522* GO TLOAD ; load/verify it
862 000720' 263 17 0 00 000000 RTN ; failed - exit test
863
864 ; Do the test
865
866 000721' 260 17 0 00 000524* GO MSTART ; start the test at 5777
867 000722' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
868 000723' 260 17 0 00 000526* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 11
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0614
869
870 ; Handle error printouts
871
872 000724' 027 00 0 00 000731' SCOPER MA14 ; print error message
873 000725' 255 00 0 00 000000 JFCL ; loop on error
874 000726' 254 00 0 00 000727' JRST TX14 ; altmode exit
875
876 ; End of test
877
878 000727' 260 17 0 00 000532* TX14: GO TSTEND ; handle end of test processing
879 000730' 263 17 0 00 000000 RTN ; return
880
881 ; Error messages
882
883 000731' 240000 000733' MA14: CALL!TXNOT!MA14PN
884 000732' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
885
886 000733' 201 01 0 00 000737' MA14PN: MOVEI 1,MA14LS ; get list address
887 000734' 201 02 0 00 000005 MOVEI 2,5 ; get list length
888 000735' 260 17 0 00 000540* GO MPRINT ; print data
889 000736' 263 17 0 00 000000 RTN ; return
890
891 000737' 037 00 0 00 005564' MA14LS: TMSGC <No failure detected>
892 000740' 037 00 0 00 005757' TMSGC <Transmit Buffer A load/read/select failure - data error>
893 000741' 037 00 0 00 005602' TMSGC <Transmit Buffer A read failure - parity error>
894 000742' 037 00 0 00 005773' TMSGC <Transmit Buffer B load/read/select failure - data error>
895 000743' 037 00 0 00 005625' TMSGC <Transmit Buffer B read failure - parity error>
896
897 ;#********************************************************************
898 ; Microcode:
899 ;#********************************************************************
900
901 ; Initialization
902
903 000744' 577700 000000 T14M: MWORD <ADDR=5777,JZ> ; 5777
904 000745' 000000 000000
905 000746' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
906 000747' 000000 000020
907 000750' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
908 000751' 342006 000300
909 000752' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
910 000753' 307006 000620
911 000754' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
912 000755' 302006 000440
913
914 ; R5 - Buffer selected (2 for A, 3 for B)
915 ; R7 - Scratch AC for data patterns
916 ; R14 - 8 bit mask (377)
917 ; R15 - Actual data (right justified)
918 ; R16 - Correct data (right justified)
919 ; R17 - Completion code (right justified)
920
921 ; Select buffer A
922 ; Call subroutine to do testing
923
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 11-1
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0615
924 000756' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
925 000757' 000000 000040
926 000760' 100100 000002 SELBUF (2) ; 1001-04
927 000761' 732000 240340
928 000762' 100200 002040
929 000763' 431000 002340
930 000764' 100300 000174
931 000765' 000000 001340
932 000766' 100400 000000
933 000767' 001000 000340
934 000770' 100500 000002 MWORD <CONT,SD0,OR,B=5,D=2,SKCN,MGC=2> ; 1005
935 000771' 732002 640340
936 000772' 100620 000001 MWORD <CJS,J=2000,SD0,OR,B=17,D=2,SKCN,MGC=1> ; 1006
937 000773' 732007 640020
938
939 ; Select buffer B
940 ; Call subroutine to do testing
941
942 000774' 100700 000003 SELBUF (3) ; 1007-12
943 000775' 732000 240340
944 000776' 101000 002040
945 000777' 431000 002340
946 001000' 101100 000174
947 001001' 000000 001340
948 001002' 101200 000000
949 001003' 001000 000340
950 001004' 101300 000003 MWORD <CONT,SD0,OR,B=5,D=2,SKCN,MGC=3> ; 1013
951 001005' 732002 640340
952 001006' 101420 000003 MWORD <CJS,J=2000,SD0,OR,B=17,D=2,SKCN,MGC=3> ; 1014
953 001007' 732007 640020
954 001010' 101550 000000 MWORD <JMAP,J=5000,S0B,AND,B=17,D=2> ; 1015
955 001011' 342007 400040
956
957 ;#********************************************************************
958 ; Subroutine to write address pattern, etc.
959 ;#********************************************************************
960
961 ; Write address pattern to first 400 bytes of buffer
962
963 001012' 200003 770000 MWORD <ADDR=2000,LDCT,J=377,S0B,AND,D=2> ; 2000
964 001013' 342000 000300
965 001014' 200100 002040 LDXBUF ; 2001-02
966 001015' 431000 002340
967 001016' 200200 000214
968 001017' 000000 001340
969 001020' 200320 010000 MWORD <RPCT,J=2001,S0B,PLUS,D=2,CRY> ; 2003
970 001021' 302000 000620
971
972 ; Issue 'Select Buffer' function
973 ; Write complemented pattern to first 100 bytes of buffer
974
975 001022' 200400 002040 MWORD <CONT,S0A,OR,A=5,D=1,OENA,SELM,MGC=40> ; 2004
976 001023' 431050 002340
977 001024' 200500 000174 MWORD <CONT,SELP,MGC=174> ; 2005
978 001025' 000000 001340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 11-2
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0616
979 001026' 200600 770000 MWORD <LDCT,J=77,S0B,AND,B=7,D=2> ; 2006
980 001027' 342003 400300
981 001030' 200700 000000 MWORD <CONT,S0A,XNOR,A=7,D=2> ; 2007
982 001031' 472070 000340
983 001032' 201000 002040 LDXBUF ; 2010-11
984 001033' 431000 002340
985 001034' 201100 000214
986 001035' 000000 001340
987 001036' 201220 070000 MWORD <RPCT,J=2007,S0B,PLUS,B=7,D=2,CRY> ; 2012
988 001037' 302003 400620
989
990 ; Read first 100 bytes of buffer and verify pattern
991 ; If failed - exit test with error code in CSR
992
993 001040' 201300 000004 MWORD <CONT,SDA,OR,A=5,B=4,D=2,SKCN,MGC=4> ; 2013
994 001041' 532052 240340
995 001042' 201400 002040 MWORD <CONT,S0A,OR,A=4,D=1,OENA,SELM,MGC=40> ; 2014
996 001043' 431040 002340
997 001044' 201500 000174 MWORD <CONT,SELP,MGC=174> ; 2015
998 001045' 000000 001340
999 001046' 201600 770000 MWORD <LDCT,J=77,S0B,AND,B=7,D=2> ; 2016
1000 001047' 342003 400300
1001 001050' 201700 000000 MWORD <CONT,S0A,XNOR,A=7,B=16,D=2> ; 2017
1002 001051' 472077 000340
1003 001052' 202000 000132 RDBUFF ; 2020-21
1004 001053' 342006 401340
1005 001054' 202100 000300
1006 001055' 732006 402340
1007 001056' 202230 000000 MWORD <CJS,J=3000> ; 2022
1008 001057' 000000 000020
1009 001060' 202320 170000 MWORD <RPCT,J=2017,S0B,PLUS,B=7,D=2,CRY> ; 2023
1010 001061' 302003 400620
1011
1012 ; Read next 300 bytes of buffer and verify pattern
1013 ; If failed - exit test with error code in CSR
1014
1015 001062' 202402 770000 MWORD <LDCT,J=277> ; 2024
1016 001063' 000000 000300
1017 001064' 202500 000000 MWORD <CONT,S0A,OR,A=7,B=16,D=2> ; 2025
1018 001065' 432077 000340
1019 001066' 202600 000132 RDBUFF ; 2026-27
1020 001067' 342006 401340
1021 001070' 202700 000300
1022 001071' 732006 402340
1023 001072' 203030 000000 MWORD <CJS,J=3000> ; 2030
1024 001073' 000000 000020
1025 001074' 203120 260000 MWORD <RPCT,J=2026,S0B,PLUS,B=16,D=2,CRY> ; 2031
1026 001075' 302007 000620
1027 001076' 203200 000000 MWORD <CRTN> ; 2032
1028 001077' 000000 000240
1029
1030 ;#********************************************************************
1031 ; C1516 - Compare R15 and R16 and check for PLI PE
1032 ; MRESET - Reset the Packet Buffer and Link modules
1033 ; MEXIT - Exit and write completion code to CSR
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 11-3
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0617
1034 ;#********************************************************************
1035
1036 001100' 777777 777776 SUBTAB (C1516) ; 3000 ..
1037 001101' 000000000000#
1038 001102' 777777 777776 SUBTAB (MRESET) ; 4000 ..
1039 001103' 000000000000#
1040 001104' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1041 001105' 000000000000#
1042 001106' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 12
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0618
1043
1044 ;#********************************************************************
1045 ;* TEST 15 - PB Address Offset Test (Transmit Read)
1046 ;
1047 ; Description: This test verifies that the 'Select Buffer'
1048 ; function uses the address offset to the transmit
1049 ; buffer specified. An address pattern is loaded
1050 ; into Buffer A. Then the 'Select Buffer' function
1051 ; is repeated giving a buffer offset. Then the
1052 ; buffer is read, verifying the data.
1053 ;
1054 ; This is repeated for each buffer offset 1-17.
1055 ;
1056 ; This is repeated for buffer B.
1057 ;
1058 ; Procedure: KL> Load microcode
1059 ; KL> Port Clear
1060 ; KL> Start port
1061 ;
1062 ; UC> Write address pattern to buffer A
1063 ;
1064 ; UC> Set offset address to 1
1065 ; UC> Read 100 bytes of buffer and verify the data
1066 ; If failed - exit test with error code in EBUF
1067 ; Code 1 - Buffer A failure - data error
1068 ; Code 2 - Buffer A failure - parity error
1069 ; Code 3 - Buffer B failure - data error
1070 ; Code 4 - Buffer B failure - parity error
1071 ;
1072 ; Repeat the above segment for offset addresses 2-17
1073 ;
1074 ; Repeat for buffer B.
1075 ;
1076 ; KL> Read EBUF and determine test disposition
1077 ;
1078 ; FRU: Packet Buffer Module
1079 ;#********************************************************************
1080
1081 ; Initialization
1082
1083 001107' 201 00 0 00 000000' TST15: MOVEI Z3 ; get address of module start
1084 001110' 260 17 0 00 000715* GO TRACE ; handle trace output
1085 001111' 201 01 0 00 001137' MOVEI 1,T15M ; set up microcode address
1086 001112' 260 17 0 00 000717* GO TLOAD ; load/verify it
1087 001113' 263 17 0 00 000000 RTN ; failed - exit test
1088
1089 ; Do the test
1090
1091 001114' 260 17 0 00 000721* GO MSTART ; start the test at 5777
1092 001115' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
1093 001116' 260 17 0 00 000723* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 13
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0619
1094
1095 ; Handle error printouts
1096
1097 001117' 027 00 0 00 001124' SCOPER MA15 ; print error message
1098 001120' 255 00 0 00 000000 JFCL ; loop on error
1099 001121' 254 00 0 00 001122' JRST TX15 ; altmode exit
1100
1101 ; End of test
1102
1103 001122' 260 17 0 00 000727* TX15: GO TSTEND ; handle end of test processing
1104 001123' 263 17 0 00 000000 RTN ; return
1105
1106 ; Error messages
1107
1108 001124' 240000 001126' MA15: CALL!TXNOT!MA15PN
1109 001125' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
1110
1111 001126' 201 01 0 00 001132' MA15PN: MOVEI 1,MA15LS ; get list address
1112 001127' 201 02 0 00 000005 MOVEI 2,5 ; get list length
1113 001130' 260 17 0 00 000735* GO MPRINT ; print data
1114 001131' 263 17 0 00 000000 RTN ; return
1115
1116 001132' 037 00 0 00 005564' MA15LS: TMSGC <No failure detected>
1117 001133' 037 00 0 00 006007' TMSGC <Transmit Buffer A read failure - data error>
1118 001134' 037 00 0 00 005602' TMSGC <Transmit Buffer A read failure - parity error>
1119 001135' 037 00 0 00 006021' TMSGC <Transmit Buffer B read failure - data error>
1120 001136' 037 00 0 00 005625' TMSGC <Transmit Buffer B read failure - parity error>
1121
1122 ;#********************************************************************
1123 ; Microcode:
1124 ;#********************************************************************
1125
1126 ; Initialization
1127
1128 001137' 577700 000000 T15M: MWORD <ADDR=5777,JZ> ; 5777
1129 001140' 000000 000000
1130 001141' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
1131 001142' 000000 000020
1132 001143' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
1133 001144' 342006 000300
1134 001145' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
1135 001146' 307006 000620
1136 001147' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
1137 001150' 302006 000440
1138
1139 ; R4 - Indicates Buffer A (2) or B (3)
1140 ; R7 - Scratch AC for data patterns
1141 ; R14 - 8 bit mask (377)
1142 ; R15 - Actual data (right justified)
1143 ; R16 - Correct data (right justified)
1144 ; R17 - Completion code (right justified)
1145
1146 ; Write address pattern to Buffer A
1147
1148 001151' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 13-1
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0620
1149 001152' 000000 000040
1150 001153' 100100 000002 SELBUF (2) ; 1001-04
1151 001154' 732000 240340
1152 001155' 100200 002040
1153 001156' 431000 002340
1154 001157' 100300 000174
1155 001160' 000000 001340
1156 001161' 100400 000000
1157 001162' 001000 000340
1158 001163' 100517 770000 MWORD <LDCT,J=1777,S0A,AND,D=2> ; 1005
1159 001164' 442000 000300
1160 001165' 100600 002040 LDXBUF ; 1006-07
1161 001166' 431000 002340
1162 001167' 100700 000214
1163 001170' 000000 001340
1164 001171' 101010 060000 MWORD <RPCT,J=1006,S0A,PLUS,D=2,CRY> ; 1010
1165 001172' 402000 000620
1166
1167 ; Initialize Buffer B to 0's
1168
1169 001173' 101100 000003 SELBUF (3) ; 1011-14
1170 001174' 732000 240340
1171 001175' 101200 002040
1172 001176' 431000 002340
1173 001177' 101300 000174
1174 001200' 000000 001340
1175 001201' 101400 000000
1176 001202' 001000 000340
1177 001203' 101517 770000 MWORD <LDCT,J=1777,S0A,AND,D=2> ; 1015
1178 001204' 442000 000300
1179 001205' 101600 002040 LDXBUF ; 1016-17
1180 001206' 431000 002340
1181 001207' 101700 000214
1182 001210' 000000 001340
1183 001211' 102010 160000 MWORD <RPCT,J=1016> ; 1020
1184 001212' 000000 000220
1185
1186 ; Test Buffer A
1187
1188 001213' 102100 000002 MWORD <CONT,SD0,OR,B=4,D=2,SKCN,MGC=2> ; 1021
1189 001214' 732002 240340
1190 001215' 102200 000000 MWORD <CONT,S0A,AND,B=17,D=2> ; 1022
1191 001216' 442007 400340
1192 001217' 102320 000000 MWORD <CJS,J=2000,S0B,PLUS,B=17,D=2,CRY> ; 1023
1193 001220' 302007 400420
1194
1195 ; Write address pattern to Buffer B
1196
1197 001221' 102400 000003 SELBUF (3) ; 1024-27
1198 001222' 732000 240340
1199 001223' 102500 002040
1200 001224' 431000 002340
1201 001225' 102600 000174
1202 001226' 000000 001340
1203 001227' 102700 000000
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 13-2
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0621
1204 001230' 001000 000340
1205 001231' 103017 770000 MWORD <LDCT,J=1777,S0A,AND,D=2> ; 1030
1206 001232' 442000 000300
1207 001233' 103100 002040 LDXBUF ; 1031-32
1208 001234' 431000 002340
1209 001235' 103200 000214
1210 001236' 000000 001340
1211 001237' 103310 310000 MWORD <RPCT,J=1031,S0A,PLUS,D=2,CRY> ; 1033
1212 001240' 402000 000620
1213
1214 ; Initialize Buffer A to 0's
1215
1216 001241' 103400 000002 SELBUF (2) ; 1034-37
1217 001242' 732000 240340
1218 001243' 103500 002040
1219 001244' 431000 002340
1220 001245' 103600 000174
1221 001246' 000000 001340
1222 001247' 103700 000000
1223 001250' 001000 000340
1224 001251' 104017 770000 MWORD <LDCT,J=1777,S0A,AND,D=2> ; 1040
1225 001252' 442000 000300
1226 001253' 104100 002040 LDXBUF ; 1041-42
1227 001254' 431000 002340
1228 001255' 104200 000214
1229 001256' 000000 001340
1230 001257' 104310 410000 MWORD <RPCT,J=1041> ; 1043
1231 001260' 000000 000220
1232
1233 ; Test Buffer B
1234
1235 001261' 104400 000003 MWORD <CONT,SD0,OR,B=4,D=2,SKCN,MGC=3> ; 1044
1236 001262' 732002 240340
1237 001263' 104520 000000 MWORD <CJS,J=2000,S0B,PLUS,B=17,D=2> ; 1045
1238 001264' 302007 400020
1239 001265' 104650 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1046
1240 001266' 442007 400040
1241
1242 ;#********************************************************************
1243 ; Subroutine to read a buffer for offset addresses 1-17
1244 ;
1245 ; R2 - Offset address (right justified)
1246 ; R3 - Maximum offset (17)
1247 ; R5 - Offset address (in bits 7-4 of 7-0)
1248 ;#********************************************************************
1249
1250 ; Set up offset address
1251
1252 001267' 200020 010001 MWORD <ADDR=2000,JMAP,J=2001,SDA,AND,A=14,B=2,D=2,SKCN,MGC=1>
1253 001270' 542141 240040
1254 001271' 200100 000017 MWORD <CONT,SDA,AND,A=14,B=3,D=2,SKCN,MGC=17> ; 2001
1255 001272' 542141 640340
1256 001273' 200200 010000 MWORD <LDCT,J=1,S0A,OR,A=2,B=5,D=7> ; 2002
1257 001274' 437022 400300
1258 001275' 200320 030000 MWORD <RPCT,J=2003,S0B,OR,B=5,D=7> ; 2003
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 13-3
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0622
1259 001276' 337002 400220
1260 001277' 200421 000000 MWORD <CJS,J=2100> ; 2004
1261 001300' 000000 000020
1262 001301' 200520 070000 MWORD <CJP,J=2007,SAB,A=2,B=3,XOR,D=1,CENA,CCFZ>
1263 001302' 161421 420060
1264 001303' 200620 020000 MWORD <JMAP,J=2002,S0B,PLUS,D=2,B=2,CRY> ; 2006
1265 001304' 302001 000440
1266 001305' 200700 000000 MWORD <CRTN,D=1> ; 2007
1267 001306' 001000 000240
1268
1269 ; Select buffer and set offset address
1270
1271 001307' 210000 000000 MWORD <ADDR=2100,CONT,S0A,OR,A=4,D=2> ; 2100
1272 001310' 432040 000340
1273 001311' 210100 000000 MWORD <CONT,SAB,OR,A=5,D=2> ; 2101
1274 001312' 132050 000340
1275 001313' 210200 000004 MWORD <CONT,SDA,OR,D=2,SKCN,MGC=4> ; 2102
1276 001314' 532000 240340
1277 001315' 210300 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 2103
1278 001316' 431000 002340
1279 001317' 210400 000174 MWORD <CONT,SELP,MGC=174> ; 2104
1280 001320' 000000 001340
1281 001321' 210500 000000 MWORD <CONT,D=1> ; 2105
1282 001322' 001000 000340
1283
1284 ; Read 100 bytes of buffer and verify
1285
1286 001323' 210600 770000 MWORD <LDCT,J=77,S0A,OR,A=2,B=16,D=2> ; 2106
1287 001324' 432027 000300
1288 001325' 210700 000132 RDBUFF ; 2107-10
1289 001326' 342006 401340
1290 001327' 211000 000300
1291 001330' 732006 402340
1292 001331' 211130 000000 MWORD <CJS,J=3000,D=1> ; 2111
1293 001332' 001000 000020
1294 001333' 211221 070000 MWORD <RPCT,J=2107,S0B,PLUS,B=16,D=2,CRY> ; 2112
1295 001334' 302007 000620
1296 001335' 211300 000000 MWORD <CRTN,D=1> ; 2113
1297 001336' 001000 000240
1298
1299
1300 ;#********************************************************************
1301 ; C1516 - Compare R15 and R16 and check for PLI PE
1302 ; MRESET - Reset the Packet Buffer and Link modules
1303 ; MEXIT - Exit and write completion code to CSR
1304 ;#********************************************************************
1305
1306 001337' 777777 777776 SUBTAB (C1516) ; 3000 ..
1307 001340' 000000000000#
1308 001341' 777777 777776 SUBTAB (MRESET) ; 4000 ..
1309 001342' 000000000000#
1310 001343' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1311 001344' 000000000000#
1312 001345' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 14
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0623
1313
1314 ;#********************************************************************
1315 ;* TEST 16 - PB Address Offset Test (Transmit Write)
1316 ;
1317 ; Description: This test verifies that the 'Select Buffer'
1318 ; function uses the address offset to the transmit
1319 ; buffer specified. The buffer is zeroed. Then the
1320 ; 'Select Buffer' and 'Load Buffer' functions are
1321 ; issued to write an address pattern into locations
1322 ; 17-0. Then the data is read back and verified.
1323 ;
1324 ; This is repeated for buffer B.
1325 ;
1326 ; Procedure: KL> Load microcode
1327 ; KL> Port Clear
1328 ; KL> Start port
1329 ;
1330 ; UC> Write 0's to buffer A (first 20 locations)
1331 ; UC> Write address pattern to buffer A, addresses
1332 ; 17 to 0, setting the buffer offset for each
1333 ; write.
1334 ; UC> Read locations 0-17 and verify the data
1335 ; If failed - exit test with error code in EBUF
1336 ; Code 1 - Buffer A failure - data error
1337 ; Code 2 - Buffer A failure - parity error
1338 ; Code 3 - Buffer B failure - data error
1339 ; Code 4 - Buffer B failure - parity error
1340 ;
1341 ; Repeat for buffer B.
1342 ;
1343 ; KL> Read EBUF and determine test disposition
1344 ;
1345 ; FRU: Packet Buffer Module
1346 ;#********************************************************************
1347
1348 ; Initialization
1349
1350 001346' 201 00 0 00 000000' TST16: MOVEI Z3 ; get address of module start
1351 001347' 260 17 0 00 001110* GO TRACE ; handle trace output
1352 001350' 201 01 0 00 001376' MOVEI 1,T16M ; set up microcode address
1353 001351' 260 17 0 00 001112* GO TLOAD ; load/verify it
1354 001352' 263 17 0 00 000000 RTN ; failed - exit test
1355
1356 ; Do the test
1357
1358 001353' 260 17 0 00 001114* GO MSTART ; start the test at 5777
1359 001354' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
1360 001355' 260 17 0 00 001116* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 15
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0624
1361
1362 ; Handle error printouts
1363
1364 001356' 027 00 0 00 001363' SCOPER MA16 ; print error message
1365 001357' 255 00 0 00 000000 JFCL ; loop on error
1366 001360' 254 00 0 00 001361' JRST TX16 ; altmode exit
1367
1368 ; End of test
1369
1370 001361' 260 17 0 00 001122* TX16: GO TSTEND ; handle end of test processing
1371 001362' 263 17 0 00 000000 RTN ; return
1372
1373 ; Error messages
1374
1375 001363' 240000 001365' MA16: CALL!TXNOT!MA16PN
1376 001364' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
1377
1378 001365' 201 01 0 00 001371' MA16PN: MOVEI 1,MA16LS ; get list address
1379 001366' 201 02 0 00 000005 MOVEI 2,5 ; get list length
1380 001367' 260 17 0 00 001130* GO MPRINT ; print data
1381 001370' 263 17 0 00 000000 RTN ; return
1382
1383 001371' 037 00 0 00 005564' MA16LS: TMSGC <No failure detected>
1384 001372' 037 00 0 00 006033' TMSGC <Transmit Buffer A write offset failure - data error>
1385 001373' 037 00 0 00 006046' TMSGC <Transmit Buffer A write offset failure - parity error>
1386 001374' 037 00 0 00 006062' TMSGC <Transmit Buffer B write offset failure - data error>
1387 001375' 037 00 0 00 006075' TMSGC <Transmit Buffer B write offset failure - parity error>
1388
1389 ;#********************************************************************
1390 ; Microcode:
1391 ;#********************************************************************
1392
1393 ; Initialization
1394
1395 001376' 577700 000000 T16M: MWORD <ADDR=5777,JZ> ; 5777
1396 001377' 000000 000000
1397 001400' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
1398 001401' 000000 000020
1399 001402' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
1400 001403' 342006 000300
1401 001404' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
1402 001405' 307006 000620
1403 001406' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
1404 001407' 302006 000440
1405
1406 ; R4 - Indicates Buffer A (2) or B (3)
1407 ; R14 - 8 bit mask (377)
1408 ; R15 - Actual data (right justified)
1409 ; R16 - Correct data (right justified)
1410 ; R17 - Completion code (right justified)
1411
1412 ; Select buffer A and do test
1413
1414 001410' 100000 000002 MWORD <ADDR=1000,CONT,SDA,AND,A=14,B=4,D=2,SKCN,MGC=2>
1415 001411' 542142 240340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 15-1
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0625
1416 001412' 100120 000001 MWORD <CJS,J=2000,SD0,OR,B=17,D=2,SKCN,MGC=1> ; 1001
1417 001413' 732007 640020
1418
1419 ; Select buffer B and do test
1420
1421 001414' 100200 000003 MWORD <CONT,SDA,AND,A=14,B=4,D=2,SKCN,MGC=3> ; 1002
1422 001415' 542142 240340
1423 001416' 100320 000003 MWORD <CJS,J=2000,SD0,OR,B=17,D=2,SKCN,MGC=3> ; 1003
1424 001417' 732007 640020
1425 001420' 100450 000000 MWORD <JMAP,J=5000,SD0,AND,B=17,D=2> ; 1004
1426 001421' 742007 400040
1427
1428 ;#********************************************************************
1429 ; Subroutine to do the testing
1430 ;#********************************************************************
1431
1432 ; Zero Buffer A (first 20 locations)
1433
1434 001422' 200020 012040 MWORD <ADDR=2000,JMAP,J=2001,S0A,A=4,OR,D=1,OENA,SELM,MGC=40>
1435 001423' 431040 002040
1436 001424' 200100 170174 MWORD <LDCT,J=17,S0A,AND,D=2,SELP,MGC=174> ; 2001
1437 001425' 442000 001300
1438 001426' 200200 002040 LDXBUF ; 2002-03
1439 001427' 431000 002340
1440 001430' 200300 000214
1441 001431' 000000 001340
1442 001432' 200420 020000 MWORD <RPCT,J=2002> ; 2004
1443 001433' 000000 000220
1444
1445 ; Write address pattern to first 20 locations
1446
1447 001434' 200500 000017 MWORD <CONT,SDA,AND,A=14,B=2,D=2,SKCN,MGC=17> ; 2005
1448 001435' 542141 240340
1449 001436' 200600 010000 MWORD <LDCT,J=1,S0A,OR,A=2,B=5,D=7> ; 2006
1450 001437' 437022 400300
1451 001440' 200720 070000 MWORD <RPCT,J=2007,S0B,OR,B=5,D=7> ; 2007
1452 001441' 337002 400220
1453 001442' 201000 002040 MWORD <CONT,SAB,A=4,B=5,OR,D=1,OENA,SELM,MGC=40>
1454 001443' 131042 402340
1455 001444' 201100 000174 MWORD <CONT,S0A,AND,D=2,SELP,MGC=174> ; 2011
1456 001445' 442000 001340
1457 001446' 201200 000000 MWORD <CONT,D=1> ; 2012
1458 001447' 001000 000340
1459 001450' 201300 000000 MWORD <CONT,S0A,OR,A=2,D=2> ; 2013
1460 001451' 432020 000340
1461 001452' 201400 002040 LDXBUF ; 2014-15
1462 001453' 431000 002340
1463 001454' 201500 000214
1464 001455' 000000 001340
1465 001456' 201620 200000 MWORD <CJP,J=2020,S0B,OR,B=2,D=1,CENA,CCFZ> ; 2016
1466 001457' 331401 020060
1467 001460' 201720 060000 MWORD <JMAP,J=2006,S0B,SMIN,B=2,D=2> ; 2017
1468 001461' 312001 000040
1469
1470 ; Read each word of buffer and verify
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 15-2
DFCIA3 MAC 6-Jun-83 09:56 PB Transmit Buffer Tests SEQ 0626
1471
1472 001462' 202000 170000 MWORD <LDCT,J=17,S0B,AND,B=16,D=2> ; 2020
1473 001463' 342007 000300
1474 001464' 202100 000004 MWORD <CONT,SDA,OR,A=4,D=2,SKCN,MGC=4> ; 2021
1475 001465' 532040 240340
1476 001466' 202200 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 2022
1477 001467' 431000 002340
1478 001470' 202300 000174 MWORD <CONT,S0A,AND,D=2,SELP,MGC=174> ; 2023
1479 001471' 442000 001340
1480 001472' 202400 000000 MWORD <CONT,D=1> ; 2024
1481 001473' 001000 000340
1482 001474' 202500 000132 RDBUFF ; 2025-26
1483 001475' 342006 401340
1484 001476' 202600 000300
1485 001477' 732006 402340
1486 001500' 202730 000000 MWORD <CJS,J=3000> ; 2027
1487 001501' 000000 000020
1488 001502' 203020 250000 MWORD <RPCT,J=2025,S0B,PLUS,B=16,D=2,CRY> ; 2030
1489 001503' 302007 000620
1490 001504' 203100 000000 MWORD <CRTN> ; 2031
1491 001505' 000000 000240
1492
1493 ;#********************************************************************
1494 ; C1516 - Compare R15 and R16 and check for PLI PE
1495 ; MRESET - Reset the Packet Buffer and Link modules
1496 ; MEXIT - Exit and write completion code to CSR
1497 ;#********************************************************************
1498
1499 001506' 777777 777776 SUBTAB (C1516) ; 3000 ..
1500 001507' 000000000000#
1501 001510' 777777 777776 SUBTAB (MRESET) ; 4000 ..
1502 001511' 000000000000#
1503 001512' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1504 001513' 000000000000#
1505 001514' 777777 777777 -1
1506
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 16
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0627
1507 SUBTTL PB Receive Buffer Tests
1508
1509 ;#********************************************************************
1510 ;* TEST 17 - Receive Buffer A Test
1511 ;
1512 ; Description: This test verifies Receive Buffer A on the packet
1513 ; buffer module. A data pattern is written to the
1514 ; buffer after selecting and resetting it. Then
1515 ; the data is read back and verified.
1516 ;
1517 ; Procedure: KL> Load microcode
1518 ; KL> Port Clear
1519 ; KL> Start port
1520 ;
1521 ; UC> Build data pattern
1522 ; UC> Write to each word of transmit buffer A
1523 ; UC> Set maintenance mode and transmit the buffer
1524 ; (loop back into receive buffer)
1525 ; UC> Wait for 'CCRcvBufAFul' to assert
1526 ; UC> Read each word of receive buffer and verify
1527 ; If failed - exit test with error code in EBUF
1528 ; Code 1 - Buffer A failure - data error
1529 ; Code 2 - Buffer A failure - parity error
1530 ;
1531 ; UC> Repeat with each data pattern
1532 ;
1533 ; KL> Read EBUF and determine test disposition
1534 ;
1535 ; Data Patrns: 0,-1,1,376,2,375,4,373,10,367,20,357,40,337
1536 ; 100,277,200,177
1537 ;
1538 ; FRU: Packet Buffer Module
1539 ;#********************************************************************
1540
1541 ; Initialization
1542
1543 001515' 201 00 0 00 000000' TST17: MOVEI Z3 ; get address of module start
1544 001516' 260 17 0 00 001347* GO TRACE ; handle trace output
1545 001517' 201 01 0 00 001543' MOVEI 1,T17M ; set up microcode address
1546 001520' 260 17 0 00 001351* GO TLOAD ; load/verify it
1547 001521' 263 17 0 00 000000 RTN ; failed - exit test
1548
1549 ; Do the test
1550
1551 001522' 260 17 0 00 001353* GO MSTART ; start the test at 5777
1552 001523' 201 01 0 00 000310 MOVEI 1,^D200 ; set up wait of 200 ms
1553 001524' 260 17 0 00 001355* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 17
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0628
1554
1555 ; Handle error printouts
1556
1557 001525' 027 00 0 00 001532' SCOPER MA17 ; print error message
1558 001526' 255 00 0 00 000000 JFCL ; loop on error
1559 001527' 254 00 0 00 001530' JRST TX17 ; altmode exit
1560
1561 ; End of test
1562
1563 001530' 260 17 0 00 001361* TX17: GO TSTEND ; handle end of test processing
1564 001531' 263 17 0 00 000000 RTN ; return
1565
1566 ; Error messages
1567
1568 001532' 240000 001534' MA17: CALL!TXNOT!MA17PN
1569 001533' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
1570
1571 001534' 201 01 0 00 001540' MA17PN: MOVEI 1,MA17LS ; get list address
1572 001535' 201 02 0 00 000003 MOVEI 2,3 ; get list length
1573 001536' 260 17 0 00 001367* GO MPRINT ; print data
1574 001537' 263 17 0 00 000000 RTN ; return
1575
1576 001540' 037 00 0 00 005564' MA17LS: TMSGC <No failure detected>
1577 001541' 037 00 0 00 006111' TMSGC <Receive Buffer A failure - data error>
1578 001542' 037 00 0 00 006121' TMSGC <Receive Buffer A failure - parity error>
1579
1580 ;#********************************************************************
1581 ; Microcode:
1582 ;#********************************************************************
1583
1584 ; Initialization
1585
1586 001543' 577700 000000 T17M: MWORD <ADDR=5777,JZ> ; 5777
1587 001544' 000000 000000
1588 001545' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
1589 001546' 000000 000020
1590 001547' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
1591 001550' 342006 000300
1592 001551' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
1593 001552' 307006 000620
1594 001553' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
1595 001554' 302006 000440
1596
1597 ; R7 - Scratch AC for data patterns
1598 ; R14 - 8 bit mask (377)
1599 ; R15 - Actual data (right justified)
1600 ; R16 - Correct data (right justified)
1601 ; R17 - Completion code (right justified)
1602
1603 ; Build data patterns
1604
1605 001555' 100000 000000 MWORD <ADDR=1000,CONT,SD0,AND,B=7,D=2> ; 1000
1606 001556' 742003 400340
1607 001557' 100111 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1001 - 0's
1608 001560' 432077 000020
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 17-1
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0629
1609 001561' 100211 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1002 - comp
1610 001562' 472077 000020
1611 001563' 100300 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 1003
1612 001564' 402073 400740
1613 001565' 100411 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1004 - 1
1614 001566' 432077 000020
1615 001567' 100511 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1005 - comp
1616 001570' 472077 000020
1617
1618 001571' 100600 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 1006
1619 001572' 437073 400340
1620 001573' 100711 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1007 - 2 ...
1621 001574' 432077 000020
1622 001575' 101011 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1010 - comp
1623 001576' 472077 000020
1624 001577' 101100 000200 MWORD <CONT,SDA,AND,A=14,B=5,D=2,SKCN,MGC=200>; 1011
1625 001600' 542142 640340
1626 001601' 101210 140000 MWORD <CJP,J=1014,SAB,XOR,A=7,B=5,D=1,CENA,CCFZ>
1627 001602' 161472 420060
1628 001603' 101310 060000 MWORD <JMAP,J=1006,D=1> ; 1013
1629 001604' 001000 000040
1630 001605' 101450 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1014 - done
1631 001606' 442007 400040
1632
1633 ;#********************************************************************
1634 ; Subroutine to test the buffer for one data pattern
1635 ;#********************************************************************
1636
1637 ; Write data pattern to each word of transmit buffer
1638
1639 001607' 110011 010000 MWORD <ADDR=1100,JMAP,J=1101,S0A,OR,A=16,B=2,D=2>
1640 001610' 432161 000040
1641 001611' 110100 000002 SELBUF (2) ; 1101-04
1642 001612' 732000 240340
1643 001613' 110200 002040
1644 001614' 431000 002340
1645 001615' 110300 000174
1646 001616' 000000 001340
1647 001617' 110400 000000
1648 001620' 001000 000340
1649 001621' 110521 000000 MWORD <CJS,J=2100> ; 1105
1650 001622' 000000 000020
1651 001623' 110617 750000 MWORD <LDCT,J=1775,S0A,OR,A=16,D=2> ; 1106
1652 001624' 432160 000300
1653 001625' 110700 002040 LDXBUF ; 1107-10
1654 001626' 431000 002340
1655 001627' 111000 000214
1656 001630' 000000 001340
1657 001631' 111111 070000 MWORD <RPCT,J=1107> ; 1111
1658 001632' 000000 000220
1659
1660 ; Set maintenance mode and loop back the data into the receive buffer
1661
1662 001633' 111200 000340 SETMOD (340) ; 1112-14
1663 001634' 732000 240340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 17-2
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0630
1664 001635' 111300 002040
1665 001636' 431000 002340
1666 001637' 111400 000274
1667 001640' 000000 001340
1668 001641' 111500 000000 TXMIT (0) ; 1115-17
1669 001642' 732000 240340
1670 001643' 111600 002040
1671 001644' 431000 002340
1672 001645' 111700 000314
1673 001646' 000000 001340
1674 001647' 112020 000000 MWORD <CJS,J=2000> ; 1120
1675 001650' 000000 000020
1676
1677 ; Read each word back and verify
1678
1679 001651' 112100 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1121
1680 001652' 342007 400340
1681 001653' 112200 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1122
1682 001654' 302007 400740
1683 001655' 112300 000004 SELBUF (4) ; 1123-26
1684 001656' 732000 240340
1685 001657' 112400 002040
1686 001660' 431000 002340
1687 001661' 112500 000174
1688 001662' 000000 001340
1689 001663' 112600 000000
1690 001664' 001000 000340
1691 001665' 112700 000004 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=4> ; 1127
1692 001666' 732007 240340
1693 001667' 113000 000132 RDBUFF ; 1130-31
1694 001670' 342006 401340
1695 001671' 113100 000300
1696 001672' 732006 402340
1697 001673' 113230 000000 MWORD <CJS,J=3000> ; 1132
1698 001674' 000000 000020
1699 001675' 113300 000000 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=0> ; 1133
1700 001676' 732007 240340
1701 001677' 113400 000132 RDBUFF ; 1134-35
1702 001700' 342006 401340
1703 001701' 113500 000300
1704 001702' 732006 402340
1705 001703' 113630 000000 MWORD <CJS,J=3000> ; 1136
1706 001704' 000000 000020
1707 001705' 113717 750000 MWORD <LDCT,J=1775,S0A,OR,A=2,B=16,D=2> ; 1137
1708 001706' 432027 000300
1709 001707' 114000 000132 RDBUFF ; 1140-41
1710 001710' 342006 401340
1711 001711' 114100 000300
1712 001712' 732006 402340
1713 001713' 114230 000000 MWORD <CJS,J=3000> ; 1142
1714 001714' 000000 000020
1715 001715' 114311 400000 MWORD <RPCT,J=1140> ; 1143
1716 001716' 000000 000220
1717 001717' 114400 000000 MWORD <CRTN> ; 1144
1718 001720' 000000 000240
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 17-3
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0631
1719
1720 ; Subroutine to wait for transmit to complete
1721
1722 001721' 200000 200000 MWORD <ADDR=2000,LDCT,J=20> ; 2000
1723 001722' 000000 000300
1724 001723' 200120 010000 MWORD <RPCT,J=2001> ; 2001
1725 001724' 000000 000220
1726 001725' 200220 040000 MWORD <CJP,J=2004,CENA,CCAF> ; 2002
1727 001726' 000400 050060
1728 001727' 200320 020000 MWORD <JMAP,J=2002> ; 2003
1729 001730' 000000 000040
1730 001731' 200400 000000 MWORD <CRTN> ; 2004
1731 001732' 000000 000240
1732
1733 ; Subroutine to write the length bytes
1734
1735 001733' 210000 000004 MWORD <ADDR=2100,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2100
1736 001734' 732000 240340
1737 001735' 210100 002040 LDXBUF ; 2101-02
1738 001736' 431000 002340
1739 001737' 210200 000214
1740 001740' 000000 001340
1741 001741' 210300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2103
1742 001742' 732000 240340
1743 001743' 210400 002040 LDXBUF ; 2104
1744 001744' 431000 002340
1745 001745' 210500 000214
1746 001746' 000000 001340
1747 001747' 210600 000000 MWORD <CRTN> ; 2105
1748 001750' 000000 000240
1749
1750 ;#********************************************************************
1751 ; C1516 - Compare R15 and R16 and check for PLI PE
1752 ; MRESTA - Reset the Packet Buffer and Link modules
1753 ; MEXIT - Exit and write completion code to CSR
1754 ;#********************************************************************
1755
1756 001751' 777777 777776 SUBTAB (C1516) ; 3000 ..
1757 001752' 000000000000#
1758 001753' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
1759 001754' 000000000000#
1760 001755' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1761 001756' 000000000000#
1762 001757' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 18
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0632
1763
1764 ;#********************************************************************
1765 ;* TEST 20 - Receive Buffer B Test
1766 ;
1767 ; Description: This test verifies Receive Buffer B on the packet
1768 ; buffer module. A data pattern is written to the
1769 ; buffer after selecting and resetting it. Then
1770 ; the data is read back and verified.
1771 ;
1772 ; Procedure: KL> Load microcode
1773 ; KL> Port Clear
1774 ; KL> Start port
1775 ;
1776 ; UC> Build data pattern
1777 ; UC> Write to each word of transmit buffer B
1778 ; UC> Set maintenance mode and transmit the buffer
1779 ; (loop back into receive buffer)
1780 ; UC> Wait for 'CCRcvBufBFul' to assert
1781 ; UC> Read each word of receive buffer and verify
1782 ; If failed - exit test with error code in EBUF
1783 ; Code 1 - Buffer B failure - data error
1784 ; Code 2 - Buffer B failure - parity error
1785 ;
1786 ; UC> Repeat with each data pattern
1787 ;
1788 ; KL> Read EBUF and determine test disposition
1789 ;
1790 ; Data Patrns: 0,-1,1,376,2,375,4,373,10,367,20,357,40,337
1791 ; 100,277,200,277
1792 ;
1793 ; FRU: Packet Buffer Module
1794 ;#********************************************************************
1795
1796 ; Initialization
1797
1798 001760' 201 00 0 00 000000' TST20: MOVEI Z3 ; get address of module start
1799 001761' 260 17 0 00 001516* GO TRACE ; handle trace output
1800 001762' 201 01 0 00 002006' MOVEI 1,T20M ; set up microcode address
1801 001763' 260 17 0 00 001520* GO TLOAD ; load/verify it
1802 001764' 263 17 0 00 000000 RTN ; failed - exit test
1803
1804 ; Do the test
1805
1806 001765' 260 17 0 00 001522* GO MSTART ; start the test at 5777
1807 001766' 201 01 0 00 000310 MOVEI 1,^D200 ; set up wait of 200 ms
1808 001767' 260 17 0 00 001524* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 19
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0633
1809
1810 ; Handle error printouts
1811
1812 001770' 027 00 0 00 001775' SCOPER MA20 ; print error message
1813 001771' 255 00 0 00 000000 JFCL ; loop on error
1814 001772' 254 00 0 00 001773' JRST TX20 ; altmode exit
1815
1816 ; End of test
1817
1818 001773' 260 17 0 00 001530* TX20: GO TSTEND ; handle end of test processing
1819 001774' 263 17 0 00 000000 RTN ; return
1820
1821 ; Error messages
1822
1823 001775' 240000 001777' MA20: CALL!TXNOT!MA20PN
1824 001776' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
1825
1826 001777' 201 01 0 00 002003' MA20PN: MOVEI 1,MA20LS ; get list address
1827 002000' 201 02 0 00 000003 MOVEI 2,3 ; get list length
1828 002001' 260 17 0 00 001536* GO MPRINT ; print data
1829 002002' 263 17 0 00 000000 RTN ; return
1830
1831 002003' 037 00 0 00 005564' MA20LS: TMSGC <No failure detected>
1832 002004' 037 00 0 00 006132' TMSGC <Receive Buffer B failure - data error>
1833 002005' 037 00 0 00 006142' TMSGC <Receive Buffer B failure - parity error>
1834
1835 ;#********************************************************************
1836 ; Microcode:
1837 ;#********************************************************************
1838
1839 ; Initialization
1840
1841 002006' 577700 000000 T20M: MWORD <ADDR=5777,JZ> ; 5777
1842 002007' 000000 000000
1843 002010' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
1844 002011' 000000 000020
1845 002012' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
1846 002013' 342006 000300
1847 002014' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
1848 002015' 307006 000620
1849 002016' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
1850 002017' 302006 000440
1851
1852 ; R7 - Scratch AC for data patterns
1853 ; R14 - 8 bit mask (377)
1854 ; R15 - Actual data (right justified)
1855 ; R16 - Correct data (right justified)
1856 ; R17 - Completion code (right justified)
1857
1858 ; Build data patterns
1859
1860 002020' 100000 000000 MWORD <ADDR=1000,CONT,SD0,AND,B=7,D=2> ; 1000
1861 002021' 742003 400340
1862 002022' 100111 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1001 - 0's
1863 002023' 432077 000020
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 19-1
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0634
1864 002024' 100211 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1002 - comp
1865 002025' 472077 000020
1866 002026' 100300 000000 MWORD <CONT,S0A,PLUS,CRY,A=7,B=7,D=2> ; 1003
1867 002027' 402073 400740
1868 002030' 100411 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1004 - 1
1869 002031' 432077 000020
1870 002032' 100511 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1005 - comp
1871 002033' 472077 000020
1872
1873 002034' 100600 000000 MWORD <CONT,S0A,OR,A=7,B=7,D=7> ; 1006
1874 002035' 437073 400340
1875 002036' 100711 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,OR,D=2> ; 1007 - 2 ...
1876 002037' 432077 000020
1877 002040' 101011 000000 MWORD <CJS,J=1100,S0A,A=7,B=16,XNOR,D=2> ; 1010 - comp
1878 002041' 472077 000020
1879 002042' 101100 000200 MWORD <CONT,SDA,AND,A=14,B=5,D=2,SKCN,MGC=200>; 1011
1880 002043' 542142 640340
1881 002044' 101210 140000 MWORD <CJP,J=1014,SAB,XOR,A=7,B=5,D=1,CENA,CCFZ>
1882 002045' 161472 420060
1883 002046' 101310 060000 MWORD <JMAP,J=1006,D=1> ; 1013
1884 002047' 001000 000040
1885 002050' 101450 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1014 - done
1886 002051' 442007 400040
1887
1888 ;#********************************************************************
1889 ; Subroutine to test the buffer for one data pattern
1890 ;#********************************************************************
1891
1892 ; Write data pattern to each word of transmit buffer
1893
1894 002052' 110011 010000 MWORD <ADDR=1100,JMAP,J=1101,S0A,OR,A=16,B=2,D=2>
1895 002053' 432161 000040
1896 002054' 110100 000003 SELBUF (3) ; 1101-04
1897 002055' 732000 240340
1898 002056' 110200 002040
1899 002057' 431000 002340
1900 002060' 110300 000174
1901 002061' 000000 001340
1902 002062' 110400 000000
1903 002063' 001000 000340
1904 002064' 110521 000000 MWORD <CJS,J=2100> ; 1105
1905 002065' 000000 000020
1906 002066' 110617 750000 MWORD <LDCT,J=1775,S0A,OR,A=16,D=2> ; 1106
1907 002067' 432160 000300
1908 002070' 110700 002040 LDXBUF ; 1107-10
1909 002071' 431000 002340
1910 002072' 111000 000214
1911 002073' 000000 001340
1912 002074' 111111 070000 MWORD <RPCT,J=1107> ; 1111
1913 002075' 000000 000220
1914
1915 ; Set maintenance mode and loop back the data into the receive buffer
1916
1917 002076' 111200 000341 SETMOD (341) ; 1112-14
1918 002077' 732000 240340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 19-2
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0635
1919 002100' 111300 002040
1920 002101' 431000 002340
1921 002102' 111400 000274
1922 002103' 000000 001340
1923 002104' 111500 000001 TXMIT (1) ; 1115-17
1924 002105' 732000 240340
1925 002106' 111600 002040
1926 002107' 431000 002340
1927 002110' 111700 000314
1928 002111' 000000 001340
1929 002112' 112020 000000 MWORD <CJS,J=2000> ; 1120
1930 002113' 000000 000020
1931
1932 ; Read each word back and verify
1933
1934 002114' 112100 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1121
1935 002115' 342007 400340
1936 002116' 112200 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1122
1937 002117' 302007 400740
1938 002120' 112300 000005 SELBUF (5) ; 1123-26
1939 002121' 732000 240340
1940 002122' 112400 002040
1941 002123' 431000 002340
1942 002124' 112500 000174
1943 002125' 000000 001340
1944 002126' 112600 000000
1945 002127' 001000 000340
1946 002130' 112700 000004 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=4> ; 1127
1947 002131' 732007 240340
1948 002132' 113000 000132 RDBUFF ; 1130-31
1949 002133' 342006 401340
1950 002134' 113100 000300
1951 002135' 732006 402340
1952 002136' 113230 000000 MWORD <CJS,J=3000> ; 1132
1953 002137' 000000 000020
1954 002140' 113300 000000 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=0> ; 1133
1955 002141' 732007 240340
1956 002142' 113400 000132 RDBUFF ; 1134-35
1957 002143' 342006 401340
1958 002144' 113500 000300
1959 002145' 732006 402340
1960 002146' 113630 000000 MWORD <CJS,J=3000> ; 1136
1961 002147' 000000 000020
1962 002150' 113717 750000 MWORD <LDCT,J=1775,S0A,OR,A=2,B=16,D=2> ; 1137
1963 002151' 432027 000300
1964 002152' 114000 000132 RDBUFF ; 1140-41
1965 002153' 342006 401340
1966 002154' 114100 000300
1967 002155' 732006 402340
1968 002156' 114230 000000 MWORD <CJS,J=3000> ; 1142
1969 002157' 000000 000020
1970 002160' 114311 400000 MWORD <RPCT,J=1140> ; 1143
1971 002161' 000000 000220
1972 002162' 114400 000000 MWORD <CRTN> ; 1144
1973 002163' 000000 000240
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 19-3
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0636
1974
1975 ; Subroutine to wait for transmit to complete
1976
1977 002164' 200000 200000 MWORD <ADDR=2000,LDCT,J=20> ; 2000
1978 002165' 000000 000300
1979 002166' 200120 010000 MWORD <RPCT,J=2001> ; 2001
1980 002167' 000000 000220
1981 002170' 200220 040000 MWORD <CJP,J=2004,CENA,CCBF> ; 2002
1982 002171' 000400 060060
1983 002172' 200320 020000 MWORD <JMAP,J=2002> ; 2003
1984 002173' 000000 000040
1985 002174' 200400 000000 MWORD <CRTN> ; 2004
1986 002175' 000000 000240
1987
1988 ; Subroutine to write the length bytes
1989
1990 002176' 210000 000004 MWORD <ADDR=2100,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2100
1991 002177' 732000 240340
1992 002200' 210100 002040 LDXBUF ; 2101-02
1993 002201' 431000 002340
1994 002202' 210200 000214
1995 002203' 000000 001340
1996 002204' 210300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2103
1997 002205' 732000 240340
1998 002206' 210400 002040 LDXBUF ; 2104
1999 002207' 431000 002340
2000 002210' 210500 000214
2001 002211' 000000 001340
2002 002212' 210600 000000 MWORD <CRTN> ; 2105
2003 002213' 000000 000240
2004
2005 ;#********************************************************************
2006 ; C1516 - Compare R15 and R16 and check for PLI PE
2007 ; MRESTA - Reset the Packet Buffer and Link modules
2008 ; MEXIT - Exit and write completion code to CSR
2009 ;#********************************************************************
2010
2011 002214' 777777 777776 SUBTAB (C1516) ; 3000 ..
2012 002215' 000000000000#
2013 002216' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
2014 002217' 000000000000#
2015 002220' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
2016 002221' 000000000000#
2017 002222' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 20
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0637
2018
2019 ;#********************************************************************
2020 ;* TEST 21 - Receive Buffer Addressing Test
2021 ;
2022 ; Description: This test verifies that both buffers can be
2023 ; loaded properly. An address pattern is written
2024 ; into transmit buffer A, and the complement of it
2025 ; to transmit buffer B. Then the data is loaded
2026 ; into each receive buffer by a 'Transmit' function
2027 ; in maintenance mode. After both receive buffers
2028 ; have been loaded, they are read to verify the
2029 ; contents.
2030 ;
2031 ; Procedure: KL> Load microcode
2032 ; KL> Port Clear
2033 ; KL> Start port
2034 ;
2035 ; UC> Write address pattern to transmit buffer A
2036 ; UC> Write complemented address pattern to transmit buffer B
2037 ; UC> Set maintenance mode
2038 ; UC> Issue 'transmit' function of TA to RA and TB to RB
2039 ; UC> Wait for 'transmit' functions to complete
2040 ; UC> Read/verify each word of receive buffer A
2041 ; UC> Read/verify each word of receive buffer B
2042 ; If failed - exit test with error code in EBUF
2043 ; Code 1 - Buffer A failure - data error
2044 ; Code 2 - Buffer A failure - parity error
2045 ; Code 3 - Buffer B failure - data error
2046 ; Code 4 - Buffer B failure - parity error
2047 ;
2048 ; KL> Read EBUF and determine test disposition
2049 ;
2050 ; FRU: Packet Buffer Module
2051 ;#********************************************************************
2052
2053 ; Initialization
2054
2055 002223' 201 00 0 00 000000' TST21: MOVEI Z3 ; get address of module start
2056 002224' 260 17 0 00 001761* GO TRACE ; handle trace output
2057 002225' 201 01 0 00 002253' MOVEI 1,T21M ; set up microcode address
2058 002226' 260 17 0 00 001763* GO TLOAD ; load/verify it
2059 002227' 263 17 0 00 000000 RTN ; failed - exit test
2060
2061 ; Do the test
2062
2063 002230' 260 17 0 00 001765* GO MSTART ; start the test at 5777
2064 002231' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
2065 002232' 260 17 0 00 001767* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 21
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0638
2066
2067 ; Handle error printouts
2068
2069 002233' 027 00 0 00 002240' SCOPER MA21 ; print error message
2070 002234' 255 00 0 00 000000 JFCL ; loop on error
2071 002235' 254 00 0 00 002236' JRST TX21 ; altmode exit
2072
2073 ; End of test
2074
2075 002236' 260 17 0 00 001773* TX21: GO TSTEND ; handle end of test processing
2076 002237' 263 17 0 00 000000 RTN ; return
2077
2078 ; Error messages
2079
2080 002240' 240000 002242' MA21: CALL!TXNOT!MA21PN
2081 002241' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
2082
2083 002242' 201 01 0 00 002246' MA21PN: MOVEI 1,MA21LS ; get list address
2084 002243' 201 02 0 00 000005 MOVEI 2,5 ; get list length
2085 002244' 260 17 0 00 002001* GO MPRINT ; print data
2086 002245' 263 17 0 00 000000 RTN ; return
2087
2088 002246' 037 00 0 00 005564' MA21LS: TMSGC <No failure detected>
2089 002247' 037 00 0 00 006153' TMSGC <Receive Buffer A addressing failure - data error>
2090 002250' 037 00 0 00 006166' TMSGC <Receive Buffer A addressing failure - parity error>
2091 002251' 037 00 0 00 006201' TMSGC <Receive Buffer B addressing failure - data error>
2092 002252' 037 00 0 00 006214' TMSGC <Receive Buffer B addressing failure - parity error>
2093
2094 ;#********************************************************************
2095 ; Microcode:
2096 ;#********************************************************************
2097
2098 ; Initialization
2099
2100 002253' 577700 000000 T21M: MWORD <ADDR=5777,JZ> ; 5777
2101 002254' 000000 000000
2102 002255' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
2103 002256' 000000 000020
2104 002257' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
2105 002260' 342006 000300
2106 002261' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
2107 002262' 307006 000620
2108 002263' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
2109 002264' 302006 000440
2110
2111 ; R14 - 8 bit mask (377)
2112 ; R15 - Actual data (right justified)
2113 ; R16 - Correct data (right justified)
2114 ; R17 - Completion code (right justified)
2115
2116 ; Packet Buffer A loading
2117
2118 002265' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
2119 002266' 000000 000040
2120 002267' 100100 000002 SELBUF (2) ; 1001-04
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 21-1
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0639
2121 002270' 732000 240340
2122 002271' 100200 002040
2123 002272' 431000 002340
2124 002273' 100300 000174
2125 002274' 000000 001340
2126 002275' 100400 000000
2127 002276' 001000 000340
2128 002277' 100521 000000 MWORD <CJS,J=2100> ; 1005
2129 002300' 000000 000020
2130 002301' 100617 750000 MWORD <LDCT,J=1775,S0A,AND,D=2> ; 1006
2131 002302' 442000 000300
2132 002303' 100700 002040 LDXBUF ; 1007-10
2133 002304' 431000 002340
2134 002305' 101000 000214
2135 002306' 000000 001340
2136 002307' 101110 070000 MWORD <RPCT,J=1007,S0A,PLUS,D=2,CRY> ; 1011
2137 002310' 402000 000620
2138
2139 ; Packet Buffer B loading
2140
2141 002311' 101200 000003 SELBUF (3) ; 1012-15
2142 002312' 732000 240340
2143 002313' 101300 002040
2144 002314' 431000 002340
2145 002315' 101400 000174
2146 002316' 000000 001340
2147 002317' 101500 000000
2148 002320' 001000 000340
2149 002321' 101621 000000 MWORD <CJS,J=2100> ; 1016
2150 002322' 000000 000020
2151 002323' 101717 750000 MWORD <LDCT,J=1775,S0A,AND,B=7,D=2> ; 1017
2152 002324' 442003 400300
2153 002325' 102000 000000 MWORD <CONT,S0A,XNOR,A=7,D=2> ; 1020
2154 002326' 472070 000340
2155 002327' 102100 002040 LDXBUF ; 1021-22
2156 002330' 431000 002340
2157 002331' 102200 000214
2158 002332' 000000 001340
2159 002333' 102310 200000 MWORD <RPCT,J=1020,S0B,B=7,PLUS,D=2,CRY> ; 1023
2160 002334' 302003 400620
2161
2162 ; Set maintenance mode and loop back each buffer into the
2163 ; receive buffer
2164
2165 002335' 102400 000340 SETMOD (340) ; 1024-26
2166 002336' 732000 240340
2167 002337' 102500 002040
2168 002340' 431000 002340
2169 002341' 102600 000274
2170 002342' 000000 001340
2171 002343' 102700 000000 TXMIT (0) ; 1027-31
2172 002344' 732000 240340
2173 002345' 103000 002040
2174 002346' 431000 002340
2175 002347' 103100 000314
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 21-2
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0640
2176 002350' 000000 001340
2177 002351' 103220 000000 MWORD <CJS,J=2000> ; 1032
2178 002352' 000000 000020
2179 002353' 103300 000341 SETMOD (341) ; 1033-35
2180 002354' 732000 240340
2181 002355' 103400 002040
2182 002356' 431000 002340
2183 002357' 103500 000274
2184 002360' 000000 001340
2185 002361' 103600 000201 TXMIT (201) ; 1036-40
2186 002362' 732000 240340
2187 002363' 103700 002040
2188 002364' 431000 002340
2189 002365' 104000 000314
2190 002366' 000000 001340
2191 002367' 104120 400000 MWORD <CJS,J=2040> ; 1041
2192 002370' 000000 000020
2193
2194 ; Read each word of buffer A and verify
2195
2196 002371' 104200 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1042
2197 002372' 342007 400340
2198 002373' 104300 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1043
2199 002374' 302007 400740
2200 002375' 104400 000004 SELBUF (4) ; 1044-47
2201 002376' 732000 240340
2202 002377' 104500 002040
2203 002400' 431000 002340
2204 002401' 104600 000174
2205 002402' 000000 001340
2206 002403' 104700 000000
2207 002404' 001000 000340
2208 002405' 105000 000004 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=4> ; 1050
2209 002406' 732007 240340
2210 002407' 105100 000132 RDBUFF ; 1051-52
2211 002410' 342006 401340
2212 002411' 105200 000300
2213 002412' 732006 402340
2214 002413' 105330 000000 MWORD <CJS,J=3000> ; 1053
2215 002414' 000000 000020
2216 002415' 105400 000000 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=0> ; 1054
2217 002416' 732007 240340
2218 002417' 105500 000132 RDBUFF ; 1055-56
2219 002420' 342006 401340
2220 002421' 105600 000300
2221 002422' 732006 402340
2222 002423' 105730 000000 MWORD <CJS,J=3000> ; 1057
2223 002424' 000000 000020
2224 002425' 106017 750000 MWORD <LDCT,J=1775,S0B,AND,B=16,D=2> ; 1060
2225 002426' 342007 000300
2226 002427' 106100 000132 RDBUFF ; 1061-62
2227 002430' 342006 401340
2228 002431' 106200 000300
2229 002432' 732006 402340
2230 002433' 106330 000000 MWORD <CJS,J=3000> ; 1063
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 21-3
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0641
2231 002434' 000000 000020
2232 002435' 106410 610000 MWORD <RPCT,J=1061,S0B,PLUS,B=16,D=2,CRY> ; 1064
2233 002436' 302007 000620
2234
2235 ; Read each word of buffer B
2236
2237 002437' 106500 000000 MWORD <CONT,S0B,AND,B=7,D=2> ; 1065
2238 002440' 342003 400340
2239 002441' 106600 000003 MWORD <CONT,SD0,OR,B=17,D=2,SKCN,MGC=3> ; 1066
2240 002442' 732007 640340
2241 002443' 106700 000005 SELBUF (5) ; 1067-72
2242 002444' 732000 240340
2243 002445' 107000 002040
2244 002446' 431000 002340
2245 002447' 107100 000174
2246 002450' 000000 001340
2247 002451' 107200 000000
2248 002452' 001000 000340
2249 002453' 107300 000004 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=4> ; 1073
2250 002454' 732007 240340
2251 002455' 107400 000132 RDBUFF ; 1074-75
2252 002456' 342006 401340
2253 002457' 107500 000300
2254 002460' 732006 402340
2255 002461' 107630 000000 MWORD <CJS,J=3000> ; 1076
2256 002462' 000000 000020
2257 002463' 107700 000000 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=0> ; 1077
2258 002464' 732007 240340
2259 002465' 110000 000132 RDBUFF ; 1100-01
2260 002466' 342006 401340
2261 002467' 110100 000300
2262 002470' 732006 402340
2263 002471' 110230 000000 MWORD <CJS,J=3000> ; 1102
2264 002472' 000000 000020
2265 002473' 110317 750000 MWORD <LDCT,J=1775> ; 1103
2266 002474' 000000 000300
2267 002475' 110400 000000 MWORD <CONT,S0A,XNOR,A=7,B=16,D=2> ; 1104
2268 002476' 472077 000340
2269 002477' 110500 000132 RDBUFF ; 1105-06
2270 002500' 342006 401340
2271 002501' 110600 000300
2272 002502' 732006 402340
2273 002503' 110730 000000 MWORD <CJS,J=3000> ; 1107
2274 002504' 000000 000020
2275 002505' 111011 040000 MWORD <RPCT,J=1104,S0B,PLUS,B=7,D=2,CRY> ; 1110
2276 002506' 302003 400620
2277 002507' 111150 000000 MWORD <JMAP,J=5000,S0B,AND,B=17,D=2> ; 1111
2278 002510' 342007 400040
2279
2280 ; Subroutine to wait for transmit to complete
2281
2282 002511' 200000 200000 MWORD <ADDR=2000,LDCT,J=20> ; 2000
2283 002512' 000000 000300
2284 002513' 200120 010000 MWORD <RPCT,J=2001> ; 2001
2285 002514' 000000 000220
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 21-4
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0642
2286 002515' 200220 040000 MWORD <CJP,J=2004,CENA,CCAF> ; 2002
2287 002516' 000400 050060
2288 002517' 200320 020000 MWORD <JMAP,J=2002> ; 2003
2289 002520' 000000 000040
2290 002521' 200400 000000 MWORD <CRTN> ; 2004
2291 002522' 000000 000240
2292
2293 002523' 204000 200000 MWORD <ADDR=2040,LDCT,J=20> ; 2040
2294 002524' 000000 000300
2295 002525' 204120 410000 MWORD <RPCT,J=2041> ; 2041
2296 002526' 000000 000220
2297 002527' 204220 440000 MWORD <CJP,J=2044,CENA,CCBF> ; 2042
2298 002530' 000400 060060
2299 002531' 204320 420000 MWORD <JMAP,J=2042> ; 2043
2300 002532' 000000 000040
2301 002533' 204400 000000 MWORD <CRTN> ; 2044
2302 002534' 000000 000240
2303
2304 ; Subroutine to write the length bytes
2305
2306 002535' 210000 000004 MWORD <ADDR=2100,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2100
2307 002536' 732000 240340
2308 002537' 210100 002040 LDXBUF ; 2101-02
2309 002540' 431000 002340
2310 002541' 210200 000214
2311 002542' 000000 001340
2312 002543' 210300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2103
2313 002544' 732000 240340
2314 002545' 210400 002040 LDXBUF ; 2104
2315 002546' 431000 002340
2316 002547' 210500 000214
2317 002550' 000000 001340
2318 002551' 210600 000000 MWORD <CRTN> ; 2105
2319 002552' 000000 000240
2320
2321 ;#********************************************************************
2322 ; C1516 - Compare R15 and R16 and check for PLI PE
2323 ; MRESTA - Reset the Packet Buffer and Link modules
2324 ; MEXIT - Exit and write completion code to CSR
2325 ;#********************************************************************
2326
2327 002553' 777777 777776 SUBTAB (C1516) ; 3000 ..
2328 002554' 000000000000#
2329 002555' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
2330 002556' 000000000000#
2331 002557' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
2332 002560' 000000000000#
2333 002561' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 22
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0643
2334
2335 ;#********************************************************************
2336 ;* TEST 22 - Retransmit Buffer A Test
2337 ;
2338 ; Description: This test verifies that Transmit Buffer A can be
2339 ; retransmitted and Receive Buffer A read correctly
2340 ; each time. An address pattern is written to
2341 ; the transmit buffer, then it is transmitted to
2342 ; the receive buffer several times, verifying the
2343 ; contents of the receive buffer each time.
2344 ;
2345 ; Procedure: KL> Load microcode
2346 ; KL> Port Clear
2347 ; KL> Start port
2348 ;
2349 ; UC> Write address pattern to transmit buffer A
2350 ;
2351 ; UC> Set maintenance mode and transmit the buffer
2352 ; (loop back into receive buffer)
2353 ; UC> Wait for 'CCRcvBufAFul' to assert
2354 ; UC> Read each word of receive buffer and verify
2355 ; If failed - exit test with error code in EBUF
2356 ; Code 1 - Buffer A failure - data error
2357 ; Code 2 - Buffer A failure - parity error
2358 ;
2359 ; UC> Repeat the above 3 steps 4 times
2360 ;
2361 ; KL> Read EBUF and determine test disposition
2362 ;
2363 ; FRU: Packet Buffer Module
2364 ;#********************************************************************
2365
2366 ; Initialization
2367
2368 002562' 201 00 0 00 000000' TST22: MOVEI Z3 ; get address of module start
2369 002563' 260 17 0 00 002224* GO TRACE ; handle trace output
2370 002564' 201 01 0 00 002610' MOVEI 1,T22M ; set up microcode address
2371 002565' 260 17 0 00 002226* GO TLOAD ; load/verify it
2372 002566' 263 17 0 00 000000 RTN ; failed - exit test
2373
2374 ; Do the test
2375
2376 002567' 260 17 0 00 002230* GO MSTART ; start the test at 5777
2377 002570' 201 01 0 00 000310 MOVEI 1,^D200 ; set up wait of 200 ms
2378 002571' 260 17 0 00 002232* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 23
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0644
2379
2380 ; Handle error printouts
2381
2382 002572' 027 00 0 00 002577' SCOPER MA22 ; print error message
2383 002573' 255 00 0 00 000000 JFCL ; loop on error
2384 002574' 254 00 0 00 002575' JRST TX22 ; altmode exit
2385
2386 ; End of test
2387
2388 002575' 260 17 0 00 002236* TX22: GO TSTEND ; handle end of test processing
2389 002576' 263 17 0 00 000000 RTN ; return
2390
2391 ; Error messages
2392
2393 002577' 240000 002601' MA22: CALL!TXNOT!MA22PN
2394 002600' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
2395
2396 002601' 201 01 0 00 002605' MA22PN: MOVEI 1,MA22LS ; get list address
2397 002602' 201 02 0 00 000003 MOVEI 2,3 ; get list length
2398 002603' 260 17 0 00 002244* GO MPRINT ; print data
2399 002604' 263 17 0 00 000000 RTN ; return
2400
2401 002605' 037 00 0 00 005564' MA22LS: TMSGC <No failure detected>
2402 002606' 037 00 0 00 006111' TMSGC <Receive Buffer A failure - data error>
2403 002607' 037 00 0 00 006121' TMSGC <Receive Buffer A failure - parity error>
2404
2405 ;#********************************************************************
2406 ; Microcode:
2407 ;#********************************************************************
2408
2409 ; Initialization
2410
2411 002610' 577700 000000 T22M: MWORD <ADDR=5777,JZ> ; 5777
2412 002611' 000000 000000
2413 002612' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
2414 002613' 000000 000020
2415 002614' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
2416 002615' 342006 000300
2417 002616' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
2418 002617' 307006 000620
2419 002620' 000300 000000 MWORD <CONT,S0B,PLUS,B=14,D=2,CRY> ; 3
2420 002621' 302006 000740
2421
2422 ; Do the testing
2423
2424 002622' 000410 000000 MWORD <CJS,J=1000> ; 4
2425 002623' 000000 000020
2426 002624' 000510 120000 MWORD <CJS,J=1012> ; 5
2427 002625' 000000 000020
2428 002626' 000610 120000 MWORD <CJS,J=1012> ; 6
2429 002627' 000000 000020
2430 002630' 000710 120000 MWORD <CJS,J=1012> ; 7
2431 002631' 000000 000020
2432 002632' 001050 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 10
2433 002633' 442007 400040
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 23-1
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0645
2434
2435 ;#********************************************************************
2436 ; Subroutine to do the testing
2437 ;
2438 ; R14 - 8 bit mask (377)
2439 ; R15 - Actual data (right justified)
2440 ; R16 - Correct data (right justified)
2441 ; R17 - Completion code (right justified)
2442 ;#********************************************************************
2443
2444 ; Transmit Buffer A loading
2445
2446 002634' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
2447 002635' 000000 000040
2448 002636' 100100 000002 SELBUF (2) ; 1001-04
2449 002637' 732000 240340
2450 002640' 100200 002040
2451 002641' 431000 002340
2452 002642' 100300 000174
2453 002643' 000000 001340
2454 002644' 100400 000000
2455 002645' 001000 000340
2456 002646' 100521 000000 MWORD <CJS,J=2100> ; 1005
2457 002647' 000000 000020
2458 002650' 100617 750000 MWORD <LDCT,J=1775,S0A,AND,D=2> ; 1006
2459 002651' 442000 000300
2460 002652' 100700 002040 LDXBUF ; 1007-10
2461 002653' 431000 002340
2462 002654' 101000 000214
2463 002655' 000000 001340
2464 002656' 101110 070000 MWORD <RPCT,J=1007,S0A,PLUS,D=2,CRY> ; 1011
2465 002657' 402000 000620
2466
2467 ; Set maintenance mode and loop back into receive buffer
2468
2469 002660' 101200 000340 SETMOD (340) ; 1012-14
2470 002661' 732000 240340
2471 002662' 101300 002040
2472 002663' 431000 002340
2473 002664' 101400 000274
2474 002665' 000000 001340
2475 002666' 101500 000000 TXMIT (0) ; 1015-17
2476 002667' 732000 240340
2477 002670' 101600 002040
2478 002671' 431000 002340
2479 002672' 101700 000314
2480 002673' 000000 001340
2481 002674' 102010 220000 MWORD <CJP,J=1022,CENA,CCAF> ; 1020
2482 002675' 000400 050060
2483 002676' 102110 200000 MWORD <JMAP,J=1020> ; 1021
2484 002677' 000000 000040
2485 002700' 102200 000000 MWORD <CONT> ; 1022
2486 002701' 000000 000340
2487
2488 ; Read each word of buffer and verify
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 23-2
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0646
2489
2490 002702' 102300 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1023
2491 002703' 342007 400340
2492 002704' 102400 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1024
2493 002705' 302007 400740
2494 002706' 102500 000004 SELBUF (4) ; 1025-30
2495 002707' 732000 240340
2496 002710' 102600 002040
2497 002711' 431000 002340
2498 002712' 102700 000174
2499 002713' 000000 001340
2500 002714' 103000 000000
2501 002715' 001000 000340
2502 002716' 103100 000004 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=4> ; 1031
2503 002717' 732007 240340
2504 002720' 103200 000132 RDBUFF ; 1032-33
2505 002721' 342006 401340
2506 002722' 103300 000300
2507 002723' 732006 402340
2508 002724' 103430 000000 MWORD <CJS,J=3000> ; 1034
2509 002725' 000000 000020
2510 002726' 103500 000000 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=0> ; 1035
2511 002727' 732007 240340
2512 002730' 103600 000132 RDBUFF ; 1036-37
2513 002731' 342006 401340
2514 002732' 103700 000300
2515 002733' 732006 402340
2516 002734' 104030 000000 MWORD <CJS,J=3000> ; 1040
2517 002735' 000000 000020
2518 002736' 104117 750000 MWORD <LDCT,J=1775,S0B,AND,B=16,D=2> ; 1041
2519 002737' 342007 000300
2520 002740' 104200 000132 RDBUFF ; 1042-43
2521 002741' 342006 401340
2522 002742' 104300 000300
2523 002743' 732006 402340
2524 002744' 104430 000000 MWORD <CJS,J=3000> ; 1044
2525 002745' 000000 000020
2526 002746' 104510 420000 MWORD <RPCT,J=1042,S0B,PLUS,B=16,D=2,CRY> ; 1045
2527 002747' 302007 000620
2528 002750' 104600 000000 MWORD <CRTN> ; 1046
2529 002751' 000000 000240
2530
2531 ; Subroutine to write the length bytes
2532
2533 002752' 210000 000004 MWORD <ADDR=2100,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2100
2534 002753' 732000 240340
2535 002754' 210100 002040 LDXBUF ; 2101-02
2536 002755' 431000 002340
2537 002756' 210200 000214
2538 002757' 000000 001340
2539 002760' 210300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2103
2540 002761' 732000 240340
2541 002762' 210400 002040 LDXBUF ; 2104
2542 002763' 431000 002340
2543 002764' 210500 000214
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 23-3
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0647
2544 002765' 000000 001340
2545 002766' 210600 000000 MWORD <CRTN> ; 2105
2546 002767' 000000 000240
2547
2548 ;#********************************************************************
2549 ; C1516 - Compare R15 and R16 and check for PLI PE
2550 ; MRESTA - Reset the Packet Buffer and Link modules
2551 ; MEXIT - Exit and write completion code to CSR
2552 ;#********************************************************************
2553
2554 002770' 777777 777776 SUBTAB (C1516) ; 3000 ..
2555 002771' 000000000000#
2556 002772' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
2557 002773' 000000000000#
2558 002774' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
2559 002775' 000000000000#
2560 002776' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 24
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0648
2561
2562 ;#********************************************************************
2563 ;* TEST 23 - Retransmit Buffer B Test
2564 ;
2565 ; Description: This test verifies that Transmit Buffer B can be
2566 ; retransmitted and Receive Buffer B read correctly
2567 ; each time. An address pattern is written to
2568 ; the transmit buffer, then it is transmitted to
2569 ; the receive buffer several times, verifying the
2570 ; contents of the receive buffer each time.
2571 ;
2572 ; Procedure: KL> Load microcode
2573 ; KL> Port Clear
2574 ; KL> Start port
2575 ;
2576 ; UC> Write address pattern to transmit buffer B
2577 ;
2578 ; UC> Set maintenance mode and transmit the buffer
2579 ; (loop back into receive buffer)
2580 ; UC> Wait for 'CCRcvBufBFul' to assert
2581 ; UC> Read each word of receive buffer and verify
2582 ; If failed - exit test with error code in EBUF
2583 ; Code 1 - Buffer B failure - data error
2584 ; Code 2 - Buffer B failure - parity error
2585 ;
2586 ; UC> Repeat the above 3 steps 4 times
2587 ;
2588 ; KL> Read EBUF and determine test disposition
2589 ;
2590 ; FRU: Packet Buffer Module
2591 ;#********************************************************************
2592
2593 ; Initialization
2594
2595 002777' 201 00 0 00 000000' TST23: MOVEI Z3 ; get address of module start
2596 003000' 260 17 0 00 002563* GO TRACE ; handle trace output
2597 003001' 201 01 0 00 003025' MOVEI 1,T23M ; set up microcode address
2598 003002' 260 17 0 00 002565* GO TLOAD ; load/verify it
2599 003003' 263 17 0 00 000000 RTN ; failed - exit test
2600
2601 ; Do the test
2602
2603 003004' 260 17 0 00 002567* GO MSTART ; start the test at 5777
2604 003005' 201 01 0 00 000310 MOVEI 1,^D200 ; set up wait of 200 ms
2605 003006' 260 17 0 00 002571* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 25
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0649
2606
2607 ; Handle error printouts
2608
2609 003007' 027 00 0 00 003014' SCOPER MA23 ; print error message
2610 003010' 255 00 0 00 000000 JFCL ; loop on error
2611 003011' 254 00 0 00 003012' JRST TX23 ; altmode exit
2612
2613 ; End of test
2614
2615 003012' 260 17 0 00 002575* TX23: GO TSTEND ; handle end of test processing
2616 003013' 263 17 0 00 000000 RTN ; return
2617
2618 ; Error messages
2619
2620 003014' 240000 003016' MA23: CALL!TXNOT!MA23PN
2621 003015' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
2622
2623 003016' 201 01 0 00 003022' MA23PN: MOVEI 1,MA23LS ; get list address
2624 003017' 201 02 0 00 000003 MOVEI 2,3 ; get list length
2625 003020' 260 17 0 00 002603* GO MPRINT ; print data
2626 003021' 263 17 0 00 000000 RTN ; return
2627
2628 003022' 037 00 0 00 005564' MA23LS: TMSGC <No failure detected>
2629 003023' 037 00 0 00 006132' TMSGC <Receive Buffer B failure - data error>
2630 003024' 037 00 0 00 006142' TMSGC <Receive Buffer B failure - parity error>
2631
2632 ;#********************************************************************
2633 ; Microcode:
2634 ;#********************************************************************
2635
2636 ; Initialization
2637
2638 003025' 577700 000000 T23M: MWORD <ADDR=5777,JZ> ; 5777
2639 003026' 000000 000000
2640 003027' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
2641 003030' 000000 000020
2642 003031' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
2643 003032' 342006 000300
2644 003033' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
2645 003034' 307006 000620
2646 003035' 000300 000000 MWORD <CONT,S0B,PLUS,B=14,D=2,CRY> ; 3
2647 003036' 302006 000740
2648
2649 ; Do the testing
2650
2651 003037' 000410 000000 MWORD <CJS,J=1000> ; 4
2652 003040' 000000 000020
2653 003041' 000510 120000 MWORD <CJS,J=1012> ; 5
2654 003042' 000000 000020
2655 003043' 000610 120000 MWORD <CJS,J=1012> ; 6
2656 003044' 000000 000020
2657 003045' 000710 120000 MWORD <CJS,J=1012> ; 7
2658 003046' 000000 000020
2659 003047' 001050 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 10
2660 003050' 442007 400040
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 25-1
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0650
2661
2662 ;#********************************************************************
2663 ; Subroutine to do the testing
2664 ;
2665 ; R14 - 8 bit mask (377)
2666 ; R15 - Actual data (right justified)
2667 ; R16 - Correct data (right justified)
2668 ; R17 - Completion code (right justified)
2669 ;#********************************************************************
2670
2671 ; Transmit Buffer B loading
2672
2673 003051' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
2674 003052' 000000 000040
2675 003053' 100100 000003 SELBUF (3) ; 1001-04
2676 003054' 732000 240340
2677 003055' 100200 002040
2678 003056' 431000 002340
2679 003057' 100300 000174
2680 003060' 000000 001340
2681 003061' 100400 000000
2682 003062' 001000 000340
2683 003063' 100521 000000 MWORD <CJS,J=2100> ; 1005
2684 003064' 000000 000020
2685 003065' 100617 750000 MWORD <LDCT,J=1775,S0A,AND,D=2> ; 1006
2686 003066' 442000 000300
2687 003067' 100700 002040 LDXBUF ; 1007-10
2688 003070' 431000 002340
2689 003071' 101000 000214
2690 003072' 000000 001340
2691 003073' 101110 070000 MWORD <RPCT,J=1007,S0A,PLUS,D=2,CRY> ; 1011
2692 003074' 402000 000620
2693
2694 ; Set maintenance mode and loop back into receive buffer
2695
2696 003075' 101200 000341 SETMOD (341) ; 1012-14
2697 003076' 732000 240340
2698 003077' 101300 002040
2699 003100' 431000 002340
2700 003101' 101400 000274
2701 003102' 000000 001340
2702 003103' 101500 000201 TXMIT (201) ; 1015-17
2703 003104' 732000 240340
2704 003105' 101600 002040
2705 003106' 431000 002340
2706 003107' 101700 000314
2707 003110' 000000 001340
2708 003111' 102010 220000 MWORD <CJP,J=1022,CENA,CCBF> ; 1020
2709 003112' 000400 060060
2710 003113' 102110 200000 MWORD <JMAP,J=1020> ; 1021
2711 003114' 000000 000040
2712 003115' 102200 000000 MWORD <CONT> ; 1022
2713 003116' 000000 000340
2714
2715 ; Read each word of buffer and verify
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 25-2
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0651
2716
2717 003117' 102300 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1023
2718 003120' 342007 400340
2719 003121' 102400 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1024
2720 003122' 302007 400740
2721 003123' 102500 000005 SELBUF (5) ; 1025-30
2722 003124' 732000 240340
2723 003125' 102600 002040
2724 003126' 431000 002340
2725 003127' 102700 000174
2726 003130' 000000 001340
2727 003131' 103000 000000
2728 003132' 001000 000340
2729 003133' 103100 000004 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=4> ; 1031
2730 003134' 732007 240340
2731 003135' 103200 000132 RDBUFF ; 1032-33
2732 003136' 342006 401340
2733 003137' 103300 000300
2734 003140' 732006 402340
2735 003141' 103430 000000 MWORD <CJS,J=3000> ; 1034
2736 003142' 000000 000020
2737 003143' 103500 000000 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=0> ; 1035
2738 003144' 732007 240340
2739 003145' 103600 000132 RDBUFF ; 1036-37
2740 003146' 342006 401340
2741 003147' 103700 000300
2742 003150' 732006 402340
2743 003151' 104030 000000 MWORD <CJS,J=3000> ; 1040
2744 003152' 000000 000020
2745 003153' 104117 750000 MWORD <LDCT,J=1775,S0B,AND,B=16,D=2> ; 1041
2746 003154' 342007 000300
2747 003155' 104200 000132 RDBUFF ; 1042-43
2748 003156' 342006 401340
2749 003157' 104300 000300
2750 003160' 732006 402340
2751 003161' 104430 000000 MWORD <CJS,J=3000> ; 1044
2752 003162' 000000 000020
2753 003163' 104510 420000 MWORD <RPCT,J=1042,S0B,PLUS,B=16,D=2,CRY> ; 1045
2754 003164' 302007 000620
2755 003165' 104600 000000 MWORD <CRTN> ; 1046
2756 003166' 000000 000240
2757
2758 ; Subroutine to write the length bytes
2759
2760 003167' 210000 000004 MWORD <ADDR=2100,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2100
2761 003170' 732000 240340
2762 003171' 210100 002040 LDXBUF ; 2101-02
2763 003172' 431000 002340
2764 003173' 210200 000214
2765 003174' 000000 001340
2766 003175' 210300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2103
2767 003176' 732000 240340
2768 003177' 210400 002040 LDXBUF ; 2104
2769 003200' 431000 002340
2770 003201' 210500 000214
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 25-3
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0652
2771 003202' 000000 001340
2772 003203' 210600 000000 MWORD <CRTN> ; 2105
2773 003204' 000000 000240
2774
2775 ;#********************************************************************
2776 ; C1516 - Compare R15 and R16 and check for PLI PE
2777 ; MRESTA - Reset the Packet Buffer and Link modules
2778 ; MEXIT - Exit and write completion code to CSR
2779 ;#********************************************************************
2780
2781 003205' 777777 777776 SUBTAB (C1516) ; 3000 ..
2782 003206' 000000000000#
2783 003207' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
2784 003210' 000000000000#
2785 003211' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
2786 003212' 000000000000#
2787 003213' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 26
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0653
2788
2789 ;#********************************************************************
2790 ;* TEST 24 - Transmit Xmt Buffer A to Rcv Buffer B
2791 ;
2792 ; Description: This test verifies that Transmit Buffer A can be
2793 ; transmitted to Receive Buffer B. An address
2794 ; pattern is written to the transmit buffer and the
2795 ; other transmit buffer is cleared. Then the data
2796 ; is transmitted. Then Receive Buffer B is read
2797 ; and verified.
2798 ;
2799 ; Procedure: KL> Load microcode
2800 ; KL> Port Clear
2801 ; KL> Start port
2802 ;
2803 ; UC> Write address pattern to transmit buffer A
2804 ; UC> Write 0's to transmit buffer B
2805 ; UC> Set maintenance mode and transmit Buffer A
2806 ; to Buffer B (loop back)
2807 ; UC> Wait for 'CCRcvBufBFul' to assert
2808 ; UC> Read each word of receive buffer and verify
2809 ; If failed - exit test with error code in EBUF
2810 ; Code 1 - Buffer B failure - data error
2811 ; Code 2 - Buffer B failure - parity error
2812 ;
2813 ; KL> Read EBUF and determine test disposition
2814 ;
2815 ; FRU: Packet Buffer Module
2816 ;#********************************************************************
2817
2818 ; Initialization
2819
2820 003214' 201 00 0 00 000000' TST24: MOVEI Z3 ; get address of module start
2821 003215' 260 17 0 00 003000* GO TRACE ; handle trace output
2822 003216' 201 01 0 00 003242' MOVEI 1,T24M ; set up microcode address
2823 003217' 260 17 0 00 003002* GO TLOAD ; load/verify it
2824 003220' 263 17 0 00 000000 RTN ; failed - exit test
2825
2826 ; Do the test
2827
2828 003221' 260 17 0 00 003004* GO MSTART ; start the test at 5777
2829 003222' 201 01 0 00 000310 MOVEI 1,^D200 ; set up wait of 200 ms
2830 003223' 260 17 0 00 003006* GO MWAIT ; wait for completion
2831
2832 ; Handle error printouts
2833
2834 003224' 027 00 0 00 003231' SCOPER MA24 ; print error message
2835 003225' 255 00 0 00 000000 JFCL ; loop on error
2836 003226' 254 00 0 00 003227' JRST TX24 ; altmode exit
2837
2838 ; End of test
2839
2840 003227' 260 17 0 00 003012* TX24: GO TSTEND ; handle end of test processing
2841 003230' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 27
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0654
2842
2843 ; Error messages
2844
2845 003231' 240000 003233' MA24: CALL!TXNOT!MA24PN
2846 003232' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
2847
2848 003233' 201 01 0 00 003237' MA24PN: MOVEI 1,MA24LS ; get list address
2849 003234' 201 02 0 00 000003 MOVEI 2,3 ; get list length
2850 003235' 260 17 0 00 003020* GO MPRINT ; print data
2851 003236' 263 17 0 00 000000 RTN ; return
2852
2853 003237' 037 00 0 00 005564' MA24LS: TMSGC <No failure detected>
2854 003240' 037 00 0 00 006132' TMSGC <Receive Buffer B failure - data error>
2855 003241' 037 00 0 00 006142' TMSGC <Receive Buffer B failure - parity error>
2856
2857 ;#********************************************************************
2858 ; Microcode:
2859 ;#********************************************************************
2860
2861 ; Initialization
2862
2863 003242' 577700 000000 T24M: MWORD <ADDR=5777,JZ> ; 5777
2864 003243' 000000 000000
2865 003244' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
2866 003245' 000000 000020
2867 003246' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
2868 003247' 342006 000300
2869 003250' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
2870 003251' 307006 000620
2871 003252' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
2872 003253' 302006 000440
2873
2874 ; R7 - Scratch AC for data patterns
2875 ; R14 - 8 bit mask (377)
2876 ; R15 - Actual data (right justified)
2877 ; R16 - Correct data (right justified)
2878 ; R17 - Completion code (right justified)
2879
2880 ; Transmit Buffer A loading
2881
2882 003254' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
2883 003255' 000000 000040
2884 003256' 100100 000002 SELBUF (2) ; 1001-04
2885 003257' 732000 240340
2886 003260' 100200 002040
2887 003261' 431000 002340
2888 003262' 100300 000174
2889 003263' 000000 001340
2890 003264' 100400 000000
2891 003265' 001000 000340
2892 003266' 100521 000000 MWORD <CJS,J=2100> ; 1005
2893 003267' 000000 000020
2894 003270' 100617 750000 MWORD <LDCT,J=1775,S0A,AND,D=2> ; 1006
2895 003271' 442000 000300
2896 003272' 100700 002040 LDXBUF ; 1007-10
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 27-1
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0655
2897 003273' 431000 002340
2898 003274' 101000 000214
2899 003275' 000000 001340
2900 003276' 101110 070000 MWORD <RPCT,J=1007,S0A,PLUS,D=2,CRY> ; 1011
2901 003277' 402000 000620
2902
2903 ; Transmit Buffer B loading
2904
2905 003300' 101200 000003 SELBUF (3) ; 1012-15
2906 003301' 732000 240340
2907 003302' 101300 002040
2908 003303' 431000 002340
2909 003304' 101400 000174
2910 003305' 000000 001340
2911 003306' 101500 000000
2912 003307' 001000 000340
2913 003310' 101621 000000 MWORD <CJS,J=2100> ; 1016
2914 003311' 000000 000020
2915 003312' 101717 750000 MWORD <LDCT,J=1775,S0A,AND,D=2> ; 1017
2916 003313' 442000 000300
2917 003314' 102000 002040 LDXBUF ; 1020-21
2918 003315' 431000 002340
2919 003316' 102100 000214
2920 003317' 000000 001340
2921 003320' 102210 200000 MWORD <RPCT,J=1020> ; 1022
2922 003321' 000000 000220
2923
2924 ; Set maintenance mode and loop back into receive buffer
2925
2926 003322' 102300 000341 SETMOD (341) ; 1023-25
2927 003323' 732000 240340
2928 003324' 102400 002040
2929 003325' 431000 002340
2930 003326' 102500 000274
2931 003327' 000000 001340
2932 003330' 102600 000200 TXMIT (200) ; 1026-30
2933 003331' 732000 240340
2934 003332' 102700 002040
2935 003333' 431000 002340
2936 003334' 103000 000314
2937 003335' 000000 001340
2938 003336' 103110 330000 MWORD <CJP,J=1033,CENA,CCBF> ; 1031
2939 003337' 000400 060060
2940 003340' 103210 310000 MWORD <JMAP,J=1031> ; 1032
2941 003341' 000000 000040
2942
2943 ; Read each word of buffer and verify
2944
2945 003342' 103300 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1033
2946 003343' 342007 400340
2947 003344' 103400 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1034
2948 003345' 302007 400740
2949 003346' 103500 000005 SELBUF (5) ; 1035-40
2950 003347' 732000 240340
2951 003350' 103600 002040
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 27-2
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0656
2952 003351' 431000 002340
2953 003352' 103700 000174
2954 003353' 000000 001340
2955 003354' 104000 000000
2956 003355' 001000 000340
2957 003356' 104100 000004 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=4> ; 1041
2958 003357' 732007 240340
2959 003360' 104200 000132 RDBUFF ; 1042-43
2960 003361' 342006 401340
2961 003362' 104300 000300
2962 003363' 732006 402340
2963 003364' 104430 000000 MWORD <CJS,J=3000> ; 1044
2964 003365' 000000 000020
2965 003366' 104500 000000 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=0> ; 1045
2966 003367' 732007 240340
2967 003370' 104600 000132 RDBUFF ; 1046-47
2968 003371' 342006 401340
2969 003372' 104700 000300
2970 003373' 732006 402340
2971 003374' 105030 000000 MWORD <CJS,J=3000> ; 1050
2972 003375' 000000 000020
2973 003376' 105117 750000 MWORD <LDCT,J=1775,S0B,AND,B=16,D=2> ; 1051
2974 003377' 342007 000300
2975 003400' 105200 000132 RDBUFF ; 1052-53
2976 003401' 342006 401340
2977 003402' 105300 000300
2978 003403' 732006 402340
2979 003404' 105430 000000 MWORD <CJS,J=3000> ; 1054
2980 003405' 000000 000020
2981 003406' 105510 520000 MWORD <RPCT,J=1052,S0B,PLUS,B=16,D=2,CRY> ; 1055
2982 003407' 302007 000620
2983 003410' 105650 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1056
2984 003411' 442007 400040
2985
2986 ; Subroutine to write the length bytes
2987
2988 003412' 210000 000004 MWORD <ADDR=2100,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2100
2989 003413' 732000 240340
2990 003414' 210100 002040 LDXBUF ; 2101-02
2991 003415' 431000 002340
2992 003416' 210200 000214
2993 003417' 000000 001340
2994 003420' 210300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2103
2995 003421' 732000 240340
2996 003422' 210400 002040 LDXBUF ; 2104
2997 003423' 431000 002340
2998 003424' 210500 000214
2999 003425' 000000 001340
3000 003426' 210600 000000 MWORD <CRTN> ; 2105
3001 003427' 000000 000240
3002
3003 ;#********************************************************************
3004 ; C1516 - Compare R15 and R16 and check for PLI PE
3005 ; MRESTA - Reset the Packet Buffer and Link modules
3006 ; MEXIT - Exit and write completion code to CSR
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 27-3
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0657
3007 ;#********************************************************************
3008
3009 003430' 777777 777776 SUBTAB (C1516) ; 3000 ..
3010 003431' 000000000000#
3011 003432' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
3012 003433' 000000000000#
3013 003434' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
3014 003435' 000000000000#
3015 003436' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 28
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0658
3016
3017 ;#********************************************************************
3018 ;* TEST 25 - Transmit Xmt Buffer B to Rcv Buffer A
3019 ;
3020 ; Description: This test verifies that Transmit Buffer B can be
3021 ; transmitted to Receive Buffer A. An address
3022 ; pattern is written to the transmit buffer and the
3023 ; other transmit buffer is cleared. Then the data
3024 ; is transmitted. Then Receive Buffer A is read
3025 ; and verified.
3026 ;
3027 ; Procedure: KL> Load microcode
3028 ; KL> Port Clear
3029 ; KL> Start port
3030 ;
3031 ; UC> Write address pattern to transmit buffer B
3032 ; UC> Write 0's to transmit buffer A
3033 ; UC> Set maintenance mode and transmit Buffer B
3034 ; to Buffer A (loop back)
3035 ; UC> Wait for 'CCRcvBufAFul' to assert
3036 ; UC> Read each word of receive buffer and verify
3037 ; If failed - exit test with error code in EBUF
3038 ; Code 1 - Buffer A failure - data error
3039 ; Code 2 - Buffer A failure - parity error
3040 ;
3041 ; KL> Read EBUF and determine test disposition
3042 ;
3043 ; FRU: Packet Buffer Module
3044 ;#********************************************************************
3045
3046 ; Initialization
3047
3048 003437' 201 00 0 00 000000' TST25: MOVEI Z3 ; get address of module start
3049 003440' 260 17 0 00 003215* GO TRACE ; handle trace output
3050 003441' 201 01 0 00 003465' MOVEI 1,T25M ; set up microcode address
3051 003442' 260 17 0 00 003217* GO TLOAD ; load/verify it
3052 003443' 263 17 0 00 000000 RTN ; failed - exit test
3053
3054 ; Do the test
3055
3056 003444' 260 17 0 00 003221* GO MSTART ; start the test at 5777
3057 003445' 201 01 0 00 000310 MOVEI 1,^D200 ; set up wait of 200 ms
3058 003446' 260 17 0 00 003223* GO MWAIT ; wait for completion
3059
3060 ; Handle error printouts
3061
3062 003447' 027 00 0 00 003454' SCOPER MA25 ; print error message
3063 003450' 255 00 0 00 000000 JFCL ; loop on error
3064 003451' 254 00 0 00 003452' JRST TX25 ; altmode exit
3065
3066 ; End of test
3067
3068 003452' 260 17 0 00 003227* TX25: GO TSTEND ; handle end of test processing
3069 003453' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 29
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0659
3070
3071 ; Error messages
3072
3073 003454' 240000 003456' MA25: CALL!TXNOT!MA25PN
3074 003455' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
3075
3076 003456' 201 01 0 00 003462' MA25PN: MOVEI 1,MA25LS ; get list address
3077 003457' 201 02 0 00 000003 MOVEI 2,3 ; get list length
3078 003460' 260 17 0 00 003235* GO MPRINT ; print data
3079 003461' 263 17 0 00 000000 RTN ; return
3080
3081 003462' 037 00 0 00 005564' MA25LS: TMSGC <No failure detected>
3082 003463' 037 00 0 00 006111' TMSGC <Receive Buffer A failure - data error>
3083 003464' 037 00 0 00 006121' TMSGC <Receive Buffer A failure - parity error>
3084
3085 ;#********************************************************************
3086 ; Microcode:
3087 ;#********************************************************************
3088
3089 ; Initialization
3090
3091 003465' 577700 000000 T25M: MWORD <ADDR=5777,JZ> ; 5777
3092 003466' 000000 000000
3093 003467' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
3094 003470' 000000 000020
3095 003471' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
3096 003472' 342006 000300
3097 003473' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
3098 003474' 307006 000620
3099 003475' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
3100 003476' 302006 000440
3101
3102 ; R7 - Scratch AC for data patterns
3103 ; R14 - 8 bit mask (377)
3104 ; R15 - Actual data (right justified)
3105 ; R16 - Correct data (right justified)
3106 ; R17 - Completion code (right justified)
3107
3108 ; Transmit Buffer B loading
3109
3110 003477' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
3111 003500' 000000 000040
3112 003501' 100100 000003 SELBUF (3) ; 1001-04
3113 003502' 732000 240340
3114 003503' 100200 002040
3115 003504' 431000 002340
3116 003505' 100300 000174
3117 003506' 000000 001340
3118 003507' 100400 000000
3119 003510' 001000 000340
3120 003511' 100521 000000 MWORD <CJS,J=2100> ; 1005
3121 003512' 000000 000020
3122 003513' 100617 750000 MWORD <LDCT,J=1775,S0A,AND,D=2> ; 1006
3123 003514' 442000 000300
3124 003515' 100700 002040 LDXBUF ; 1007-10
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 29-1
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0660
3125 003516' 431000 002340
3126 003517' 101000 000214
3127 003520' 000000 001340
3128 003521' 101110 070000 MWORD <RPCT,J=1007,S0A,PLUS,D=2,CRY> ; 1011
3129 003522' 402000 000620
3130
3131 ; Transmit Buffer A loading
3132
3133 003523' 101200 000002 SELBUF (2) ; 1012-15
3134 003524' 732000 240340
3135 003525' 101300 002040
3136 003526' 431000 002340
3137 003527' 101400 000174
3138 003530' 000000 001340
3139 003531' 101500 000000
3140 003532' 001000 000340
3141 003533' 101621 000000 MWORD <CJS,J=2100> ; 1016
3142 003534' 000000 000020
3143 003535' 101717 750000 MWORD <LDCT,J=1775,S0A,AND,D=2> ; 1017
3144 003536' 442000 000300
3145 003537' 102000 002040 LDXBUF ; 1020-21
3146 003540' 431000 002340
3147 003541' 102100 000214
3148 003542' 000000 001340
3149 003543' 102210 200000 MWORD <RPCT,J=1020> ; 1022
3150 003544' 000000 000220
3151
3152 ; Set maintenance mode and loop back into receive buffer
3153
3154 003545' 102300 000340 SETMOD (340) ; 1023-25
3155 003546' 732000 240340
3156 003547' 102400 002040
3157 003550' 431000 002340
3158 003551' 102500 000274
3159 003552' 000000 001340
3160 003553' 102600 000001 TXMIT (1) ; 1026-30
3161 003554' 732000 240340
3162 003555' 102700 002040
3163 003556' 431000 002340
3164 003557' 103000 000314
3165 003560' 000000 001340
3166 003561' 103110 330000 MWORD <CJP,J=1033,CENA,CCAF> ; 1031
3167 003562' 000400 050060
3168 003563' 103210 310000 MWORD <JMAP,J=1031> ; 1032
3169 003564' 000000 000040
3170
3171 ; Read each word of buffer and verify
3172
3173 003565' 103300 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1033
3174 003566' 342007 400340
3175 003567' 103400 000000 MWORD <CONT,S0B,PLUS,B=17,D=2,CRY> ; 1034
3176 003570' 302007 400740
3177 003571' 103500 000004 SELBUF (4) ; 1035-40
3178 003572' 732000 240340
3179 003573' 103600 002040
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 29-2
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0661
3180 003574' 431000 002340
3181 003575' 103700 000174
3182 003576' 000000 001340
3183 003577' 104000 000000
3184 003600' 001000 000340
3185 003601' 104100 000004 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=4> ; 1041
3186 003602' 732007 240340
3187 003603' 104200 000132 RDBUFF ; 1042-43
3188 003604' 342006 401340
3189 003605' 104300 000300
3190 003606' 732006 402340
3191 003607' 104430 000000 MWORD <CJS,J=3000> ; 1044
3192 003610' 000000 000020
3193 003611' 104500 000000 MWORD <CONT,SD0,OR,B=16,D=2,SKCN,MGC=0> ; 1045
3194 003612' 732007 240340
3195 003613' 104600 000132 RDBUFF ; 1046-47
3196 003614' 342006 401340
3197 003615' 104700 000300
3198 003616' 732006 402340
3199 003617' 105030 000000 MWORD <CJS,J=3000> ; 1050
3200 003620' 000000 000020
3201 003621' 105117 750000 MWORD <LDCT,J=1775,S0B,AND,B=16,D=2> ; 1051
3202 003622' 342007 000300
3203 003623' 105200 000132 RDBUFF ; 1052-53
3204 003624' 342006 401340
3205 003625' 105300 000300
3206 003626' 732006 402340
3207 003627' 105430 000000 MWORD <CJS,J=3000> ; 1054
3208 003630' 000000 000020
3209 003631' 105510 520000 MWORD <RPCT,J=1052,S0B,PLUS,B=16,D=2,CRY> ; 1055
3210 003632' 302007 000620
3211 003633' 105650 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1056
3212 003634' 442007 400040
3213
3214 ; Subroutine to write the length bytes
3215
3216 003635' 210000 000004 MWORD <ADDR=2100,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2100
3217 003636' 732000 240340
3218 003637' 210100 002040 LDXBUF ; 2101-02
3219 003640' 431000 002340
3220 003641' 210200 000214
3221 003642' 000000 001340
3222 003643' 210300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2103
3223 003644' 732000 240340
3224 003645' 210400 002040 LDXBUF ; 2104
3225 003646' 431000 002340
3226 003647' 210500 000214
3227 003650' 000000 001340
3228 003651' 210600 000000 MWORD <CRTN> ; 2105
3229 003652' 000000 000240
3230
3231 ;#********************************************************************
3232 ; C1516 - Compare R15 and R16 and check for PLI PE
3233 ; MRESTA - Reset the Packet Buffer and Link modules
3234 ; MEXIT - Exit and write completion code to CSR
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 29-3
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0662
3235 ;#********************************************************************
3236
3237 003653' 777777 777776 SUBTAB (C1516) ; 3000 ..
3238 003654' 000000000000#
3239 003655' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
3240 003656' 000000000000#
3241 003657' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
3242 003660' 000000000000#
3243 003661' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 30
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0663
3244
3245 ;#********************************************************************
3246 ;* TEST 26 - PB Address Offset Test (Receive Read)
3247 ;
3248 ; Description: This test verifies that the 'Select Buffer'
3249 ; function uses the address offset to the receive
3250 ; buffer specified. An address pattern is loaded
3251 ; into Transmit Buffer A and a 'Transmit' function
3252 ; is done to load Receive Buffer A. Then the
3253 ; receive buffer is read 17 times giving offset
3254 ; addresses of 1-17.
3255 ;
3256 ; This is repeated for buffer B.
3257 ;
3258 ; Procedure: KL> Load microcode
3259 ; KL> Port Clear
3260 ; KL> Start port
3261 ;
3262 ; UC> Write address pattern to buffer A
3263 ; UC> Transmit into receive buffer A
3264 ;
3265 ; UC> Set offset address to 1
3266 ; UC> Read 100 bytes of buffer and verify the data
3267 ; If failed - exit test with error code in EBUF
3268 ; Code 1 - Buffer A failure - data error
3269 ; Code 2 - Buffer A failure - parity error
3270 ; Code 3 - Buffer B failure - data error
3271 ; Code 4 - Buffer B failure - parity error
3272 ;
3273 ; Repeat the above segment for offset addresses 2-17
3274 ;
3275 ; Repeat for buffer B.
3276 ;
3277 ; KL> Read EBUF and determine test disposition
3278 ;
3279 ; FRU: Packet Buffer Module
3280 ;#********************************************************************
3281
3282 ; Initialization
3283
3284 003662' 201 00 0 00 000000' TST26: MOVEI Z3 ; get address of module start
3285 003663' 260 17 0 00 003440* GO TRACE ; handle trace output
3286 003664' 201 01 0 00 003712' MOVEI 1,T26M ; set up microcode address
3287 003665' 260 17 0 00 003442* GO TLOAD ; load/verify it
3288 003666' 263 17 0 00 000000 RTN ; failed - exit test
3289
3290 ; Do the test
3291
3292 003667' 260 17 0 00 003444* GO MSTART ; start the test at 5777
3293 003670' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
3294 003671' 260 17 0 00 003446* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 31
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0664
3295
3296 ; Handle error printouts
3297
3298 003672' 027 00 0 00 003677' SCOPER MA26 ; print error message
3299 003673' 255 00 0 00 000000 JFCL ; loop on error
3300 003674' 254 00 0 00 003675' JRST TX26 ; altmode exit
3301
3302 ; End of test
3303
3304 003675' 260 17 0 00 003452* TX26: GO TSTEND ; handle end of test processing
3305 003676' 263 17 0 00 000000 RTN ; return
3306
3307 ; Error messages
3308
3309 003677' 240000 003701' MA26: CALL!TXNOT!MA26PN
3310 003700' 170000 005560' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
3311
3312 003701' 201 01 0 00 003705' MA26PN: MOVEI 1,MA26LS ; get list address
3313 003702' 201 02 0 00 000005 MOVEI 2,5 ; get list length
3314 003703' 260 17 0 00 003460* GO MPRINT ; print data
3315 003704' 263 17 0 00 000000 RTN ; return
3316
3317 003705' 037 00 0 00 005564' MA26LS: TMSGC <No failure detected>
3318 003706' 037 00 0 00 006227' TMSGC <Receive Buffer A read failure - data error>
3319 003707' 037 00 0 00 006240' TMSGC <Receive Buffer A read failure - parity error>
3320 003710' 037 00 0 00 006252' TMSGC <Receive Buffer B read failure - data error>
3321 003711' 037 00 0 00 006263' TMSGC <Receive Buffer B read failure - parity error>
3322
3323 ;#********************************************************************
3324 ; Microcode:
3325 ;#********************************************************************
3326
3327 ; Initialization
3328
3329 003712' 577700 000000 T26M: MWORD <ADDR=5777,JZ> ; 5777
3330 003713' 000000 000000
3331 003714' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
3332 003715' 000000 000020
3333 003716' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
3334 003717' 342006 000300
3335 003720' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
3336 003721' 307006 000620
3337 003722' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
3338 003723' 302006 000440
3339
3340 ; R4 - Indicates Buffer A (2) or B (3)
3341 ; R7 - Scratch AC for data patterns
3342 ; R14 - 8 bit mask (377)
3343 ; R15 - Actual data (right justified)
3344 ; R16 - Correct data (right justified)
3345 ; R17 - Completion code (right justified)
3346
3347 ; Write address pattern to Buffer A
3348
3349 003724' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 31-1
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0665
3350 003725' 000000 000040
3351 003726' 100100 000002 SELBUF (2) ; 1001-04
3352 003727' 732000 240340
3353 003730' 100200 002040
3354 003731' 431000 002340
3355 003732' 100300 000174
3356 003733' 000000 001340
3357 003734' 100400 000000
3358 003735' 001000 000340
3359 003736' 100500 000004 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=4> ; 1005
3360 003737' 732000 240340
3361 003740' 100600 002040 LDXBUF ; 1006-07
3362 003741' 431000 002340
3363 003742' 100700 000214
3364 003743' 000000 001340
3365 003744' 101017 760000 MWORD <LDCT,J=1776,S0A,AND,D=2> ; 1010
3366 003745' 442000 000300
3367 003746' 101100 002040 LDXBUF ; 1011-12
3368 003747' 431000 002340
3369 003750' 101200 000214
3370 003751' 000000 001340
3371 003752' 101310 110000 MWORD <RPCT,J=1011,S0A,PLUS,D=2,CRY> ; 1013
3372 003753' 402000 000620
3373 003754' 101400 000340 SETMOD (340) ; 1014-16
3374 003755' 732000 240340
3375 003756' 101500 002040
3376 003757' 431000 002340
3377 003760' 101600 000274
3378 003761' 000000 001340
3379 003762' 101700 000000 TXMIT (0) ; 1017-21
3380 003763' 732000 240340
3381 003764' 102000 002040
3382 003765' 431000 002340
3383 003766' 102100 000314
3384 003767' 000000 001340
3385 003770' 102210 240000 MWORD <CJP,J=1024,CENA,CCAF> ; 1022
3386 003771' 000400 050060
3387 003772' 102310 220000 MWORD <JMAP,J=1022> ; 1023
3388 003773' 000000 000040
3389
3390 ; Initialize Buffer B to 0's
3391
3392 003774' 102400 000003 SELBUF (3) ; 1024-27
3393 003775' 732000 240340
3394 003776' 102500 002040
3395 003777' 431000 002340
3396 004000' 102600 000174
3397 004001' 000000 001340
3398 004002' 102700 000000
3399 004003' 001000 000340
3400 004004' 103000 000004 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=4> ; 1030
3401 004005' 732000 240340
3402 004006' 103100 002040 LDXBUF ; 1031-32
3403 004007' 431000 002340
3404 004010' 103200 000214
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 31-2
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0666
3405 004011' 000000 001340
3406 004012' 103317 760000 MWORD <LDCT,J=1776,S0A,AND,D=2> ; 1033
3407 004013' 442000 000300
3408 004014' 103400 002040 LDXBUF ; 1034-35
3409 004015' 431000 002340
3410 004016' 103500 000214
3411 004017' 000000 001340
3412 004020' 103610 340000 MWORD <RPCT,J=1034> ; 1036
3413 004021' 000000 000220
3414 004022' 103700 000340 SETMOD (340) ; 1037-41
3415 004023' 732000 240340
3416 004024' 104000 002040
3417 004025' 431000 002340
3418 004026' 104100 000274
3419 004027' 000000 001340
3420 004030' 104200 000000 TXMIT (0) ; 1042-44
3421 004031' 732000 240340
3422 004032' 104300 002040
3423 004033' 431000 002340
3424 004034' 104400 000314
3425 004035' 000000 001340
3426 004036' 104510 470000 MWORD <CJP,J=1047,CENA,CCAF> ; 1045
3427 004037' 000400 050060
3428 004040' 104610 450000 MWORD <JMAP,J=1045> ; 1046
3429 004041' 000000 000040
3430
3431 ; Test Buffer A
3432
3433 004042' 104700 000004 MWORD <CONT,SD0,OR,B=4,D=2,SKCN,MGC=4> ; 1047
3434 004043' 732002 240340
3435 004044' 105000 000000 MWORD <CONT,S0A,AND,B=17,D=2> ; 1050
3436 004045' 442007 400340
3437 004046' 105120 000000 MWORD <CJS,J=2000,S0B,PLUS,B=17,D=2,CRY> ; 1051
3438 004047' 302007 400420
3439
3440 ; Write address pattern to Buffer B
3441
3442 004050' 105200 000003 SELBUF (3) ; 1052-55
3443 004051' 732000 240340
3444 004052' 105300 002040
3445 004053' 431000 002340
3446 004054' 105400 000174
3447 004055' 000000 001340
3448 004056' 105500 000000
3449 004057' 001000 000340
3450 004060' 105600 000004 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=4> ; 1056
3451 004061' 732000 240340
3452 004062' 105700 002040 LDXBUF ; 1057-60
3453 004063' 431000 002340
3454 004064' 106000 000214
3455 004065' 000000 001340
3456 004066' 106117 760000 MWORD <LDCT,J=1776,S0A,AND,D=2> ; 1061
3457 004067' 442000 000300
3458 004070' 106200 002040 LDXBUF ; 1062-63
3459 004071' 431000 002340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 31-3
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0667
3460 004072' 106300 000214
3461 004073' 000000 001340
3462 004074' 106410 620000 MWORD <RPCT,J=1062,S0A,PLUS,D=2,CRY> ; 1064
3463 004075' 402000 000620
3464
3465 ; Initialize Buffer A to 0's
3466
3467 004076' 106500 000002 SELBUF (2) ; 1065-70
3468 004077' 732000 240340
3469 004100' 106600 002040
3470 004101' 431000 002340
3471 004102' 106700 000174
3472 004103' 000000 001340
3473 004104' 107000 000000
3474 004105' 001000 000340
3475 004106' 107100 000004 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=4> ; 1071
3476 004107' 732000 240340
3477 004110' 107200 002040 LDXBUF ; 1072-73
3478 004111' 431000 002340
3479 004112' 107300 000214
3480 004113' 000000 001340
3481 004114' 107417 760000 MWORD <LDCT,J=1776,S0A,AND,D=2> ; 1074
3482 004115' 442000 000300
3483 004116' 107500 002040 LDXBUF ; 1075-76
3484 004117' 431000 002340
3485 004120' 107600 000214
3486 004121' 000000 001340
3487 004122' 107710 750000 MWORD <RPCT,J=1075> ; 1077
3488 004123' 000000 000220
3489 004124' 110000 000341 SETMOD (341) ; 1100-02
3490 004125' 732000 240340
3491 004126' 110100 002040
3492 004127' 431000 002340
3493 004130' 110200 000274
3494 004131' 000000 001340
3495 004132' 110300 000201 TXMIT (201) ; 1103-05
3496 004133' 732000 240340
3497 004134' 110400 002040
3498 004135' 431000 002340
3499 004136' 110500 000314
3500 004137' 000000 001340
3501 004140' 110611 100000 MWORD <CJP,J=1110,CENA,CCBF> ; 1106
3502 004141' 000400 060060
3503 004142' 110711 060000 MWORD <JMAP,J=1106> ; 1107
3504 004143' 000000 000040
3505
3506 ; Test Buffer B
3507
3508 004144' 111000 000005 MWORD <CONT,SD0,OR,B=4,D=2,SKCN,MGC=5> ; 1110
3509 004145' 732002 240340
3510 004146' 111120 000000 MWORD <CJS,J=2000,S0B,PLUS,B=17,D=2> ; 1111
3511 004147' 302007 400020
3512 004150' 111250 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1112
3513 004151' 442007 400040
3514
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 31-4
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0668
3515 ;#********************************************************************
3516 ; Subroutine to read a buffer for offset addresses 1-17
3517 ;
3518 ; R2 - Offset address (right justified)
3519 ; R3 - Maximum offset (17)
3520 ; R5 - Offset address (in bits 6-3 of 7-0)
3521 ;#********************************************************************
3522
3523 ; Set up offset address
3524
3525 004152' 200020 010000 MWORD <ADDR=2000,JMAP,J=2001,S0A,AND,B=2,D=2> ; 2000
3526 004153' 442001 000040
3527 004154' 200100 000000 MWORD <CONT,S0B,PLUS,B=2,D=2,CRY> ; 2001
3528 004155' 302001 000740
3529 004156' 200200 000017 MWORD <CONT,SDA,AND,A=14,B=3,D=2,SKCN,MGC=17> ; 2002
3530 004157' 542141 640340
3531 004160' 200300 010000 MWORD <LDCT,J=1,S0A,OR,A=2,B=5,D=7> ; 2003
3532 004161' 437022 400300
3533 004162' 200420 040000 MWORD <RPCT,J=2004,S0B,OR,B=5,D=7> ; 2004
3534 004163' 337002 400220
3535 004164' 200521 000000 MWORD <CJS,J=2100> ; 2005
3536 004165' 000000 000020
3537 004166' 200620 100000 MWORD <CJP,J=2010,SAB,A=2,B=3,XOR,D=1,CENA,CCFZ>
3538 004167' 161421 420060
3539 004170' 200720 030000 MWORD <JMAP,J=2003,S0B,PLUS,D=2,B=2,CRY> ; 2007
3540 004171' 302001 000440
3541 004172' 201000 000000 MWORD <CRTN,D=1> ; 2010
3542 004173' 001000 000240
3543
3544 ; Select buffer and set offset address
3545
3546 004174' 210000 000000 MWORD <ADDR=2100,CONT,S0A,OR,A=4,D=2> ; 2100
3547 004175' 432040 000340
3548 004176' 210100 000000 MWORD <CONT,SAB,OR,A=5,D=2> ; 2101
3549 004177' 132050 000340
3550 004200' 210200 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 2102
3551 004201' 431000 002340
3552 004202' 210300 000174 MWORD <CONT,SELP,MGC=174> ; 2103
3553 004203' 000000 001340
3554
3555 ; Read 100 bytes of buffer and verify
3556
3557 004204' 210400 770000 MWORD <LDCT,J=77,S0A,SMIN,A=2,B=16,D=2> ; 2104
3558 004205' 412027 000300
3559 004206' 210500 000132 RDBUFF ; 2105-06
3560 004207' 342006 401340
3561 004210' 210600 000300
3562 004211' 732006 402340
3563 004212' 210730 000000 MWORD <CJS,J=3000,D=1> ; 2107
3564 004213' 001000 000020
3565 004214' 211021 050000 MWORD <RPCT,J=2105,S0B,PLUS,B=16,D=2,CRY> ; 2110
3566 004215' 302007 000620
3567 004216' 211100 000000 MWORD <CRTN,D=1> ; 2111
3568 004217' 001000 000240
3569
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 31-5
DFCIA3 MAC 6-Jun-83 09:56 PB Receive Buffer Tests SEQ 0669
3570 ;#********************************************************************
3571 ; C1516 - Compare R15 and R16 and check for PLI PE
3572 ; MRESTA - Reset the Packet Buffer and Link modules
3573 ; MEXIT - Exit and write completion code to CSR
3574 ;#********************************************************************
3575
3576 004220' 777777 777776 SUBTAB (C1516) ; 3000 ..
3577 004221' 000000000000#
3578 004222' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
3579 004223' 000000000000#
3580 004224' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
3581 004225' 000000000000#
3582 004226' 777777 777777 -1
3583
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 32
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0670
3584 SUBTTL Link Node Address Tests
3585
3586 ;#********************************************************************
3587 ;* TEST 27 - Addressing Test 1
3588 ;
3589 ; Description: This test verifies the node address compare logic
3590 ; on the LINK module. Packets are transmitted to
3591 ; all possible other nodes (with internal loopback
3592 ; mode set). The result should be a no-response.
3593 ;
3594 ; Procedure: KL> Load microcode
3595 ; KL> Port Clear
3596 ; KL> Start port
3597 ;
3598 ; UC> Initialize node address of 0
3599 ; UC> Initialize port for internal Link loopback
3600 ; UC> Build packet in Buffer A and send on Path A
3601 ; UC> Verify no response results
3602 ; If failed - exit test with error code 1 in CSR
3603 ;
3604 ; UC> Repeat for node addresses 1-377 (except for
3605 ; our node address)
3606 ;
3607 ; UC> Repeat for Buffer A / Path B (Error code 2)
3608 ; UC> Repeat for Buffer B / Path A (Error code 3)
3609 ; UC> Repeat for Buffer B / Path B (Error code 4)
3610 ;
3611 ; UC> Set appropriate completion code in CSR
3612 ; KL> Read CSR and determine test disposition
3613 ;
3614 ; FRU: Packet Buffer Module
3615 ;#********************************************************************
3616
3617 ; Initialization
3618
3619 004227' 201 00 0 00 000000' TST27: MOVEI Z3 ; get address of module start
3620 004230' 260 17 0 00 003663* GO TRACE ; handle trace output
3621 004231' 201 01 0 00 004257' MOVEI 1,T27M ; set up microcode address
3622 004232' 260 17 0 00 003665* GO TLOAD ; load/verify it
3623 004233' 263 17 0 00 000000 RTN ; failed - exit test
3624
3625 ; Do the test
3626
3627 004234' 260 17 0 00 003667* GO MSTART ; start the test at 5777
3628 004235' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
3629 004236' 260 17 0 00 003671* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 33
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0671
3630
3631 ; Handle error printouts
3632
3633 004237' 027 00 0 00 004244' SCOPER MA27 ; print error message
3634 004240' 255 00 0 00 000000 JFCL ; loop on error
3635 004241' 254 00 0 00 004242' JRST TX27 ; altmode exit
3636
3637 ; End of test
3638
3639 004242' 260 17 0 00 003675* TX27: GO TSTEND ; handle end of test processing
3640 004243' 263 17 0 00 000000 RTN ; return
3641
3642 ; Error messages
3643
3644 004244' 240000 004246' MA27: CALL!TXNOT!MA27PN
3645 004245' 170000 006275' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
3646
3647 004246' 201 01 0 00 004252' MA27PN: MOVEI 1,MA27LS ; get list address
3648 004247' 201 02 0 00 000005 MOVEI 2,5 ; get list length
3649 004250' 260 17 0 00 003703* GO MPRINT ; print data
3650 004251' 263 17 0 00 000000 RTN ; return
3651
3652 004252' 037 00 0 00 005564' MA27LS: TMSGC <No failure detected>
3653 TMSGC <Buffer A / Path A - Sent loopback packet to another
3654 004253' 037 00 0 00 006301' node - did not result in no-response>
3655 TMSGC <Buffer A / Path B - Sent loopback packet to another
3656 004254' 037 00 0 00 006324' node - did not result in no-response>
3657 TMSGC <Buffer B / Path A - Sent loopback packet to another
3658 004255' 037 00 0 00 006347' node - did not result in no-response>
3659 TMSGC <Buffer B / Path B - Sent loopback packet to another
3660 004256' 037 00 0 00 006372' node - did not result in no-response>
3661
3662 ;#********************************************************************
3663 ; Microcode:
3664 ;#********************************************************************
3665
3666 ; Initialization
3667
3668 004257' 577700 000000 T27M: MWORD <ADDR=5777,JZ> ; 5777
3669 004260' 000000 000000
3670 004261' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
3671 004262' 000000 000020
3672 004263' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
3673 004264' 342006 000300
3674 004265' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
3675 004266' 307006 000620
3676 004267' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
3677 004270' 302006 000440
3678
3679 ; R4 - Node address used
3680 ; R5 - Actual node address
3681 ; R14 - 8 bit mask (377)
3682 ; R17 - Completion code (right justified)
3683
3684 ; First, set up the LINK and Packet Buffer modules
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 33-1
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0672
3685
3686 004271' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
3687 004272' 000000 000040
3688 004273' 100100 000332 RDNADR ; 1001-02
3689 004274' 342006 401340
3690 004275' 100200 000300
3691 004276' 732006 402340
3692 004277' 100300 000000 MWORD <CONT,S0A,A=15,B=5,OR,D=2> ; 1003
3693 004300' 432152 400340
3694 004301' 100400 000000 MWORD <CONT,SAB,A=14,B=5,AND,D=2> ; 1004
3695 004302' 142142 400340
3696
3697 ; Select PB Buffer A / Path A
3698
3699 004303' 100500 000002 WRLS (0,2) ; 1005-06
3700 004304' 542140 240340
3701 004305' 100600 002000
3702 004306' 431000 230340
3703 004307' 100700 000240 WRLS (1,240) ; 1007-10
3704 004310' 542140 240340
3705 004311' 101000 002001
3706 004312' 431000 230340
3707 004313' 101100 000000 WRLS (2,0) ; 1011-12
3708 004314' 542140 240340
3709 004315' 101200 002002
3710 004316' 431000 230340
3711 004317' 101320 000001 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=1> ; 1013
3712 004320' 732007 640020
3713
3714 ; Select PB Buffer A / Path B
3715
3716 004321' 101400 000002 WRLS (0,2) ; 1014-15
3717 004322' 542140 240340
3718 004323' 101500 002000
3719 004324' 431000 230340
3720 004325' 101600 000241 WRLS (1,241) ; 1016-17
3721 004326' 542140 240340
3722 004327' 101700 002001
3723 004330' 431000 230340
3724 004331' 102000 000200 WRLS (2,200) ; 1020-21
3725 004332' 542140 240340
3726 004333' 102100 002002
3727 004334' 431000 230340
3728 004335' 102220 000002 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=2> ; 1022
3729 004336' 732007 640020
3730
3731 ; Select PB Buffer B / Path A
3732
3733 004337' 102300 000003 WRLS (0,3) ; 1023-24
3734 004340' 542140 240340
3735 004341' 102400 002000
3736 004342' 431000 230340
3737 004343' 102500 000240 WRLS (1,240) ; 1025-26
3738 004344' 542140 240340
3739 004345' 102600 002001
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 33-2
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0673
3740 004346' 431000 230340
3741 004347' 102700 000001 WRLS (2,1) ; 1027-30
3742 004350' 542140 240340
3743 004351' 103000 002002
3744 004352' 431000 230340
3745 004353' 103120 000003 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=3> ; 1031
3746 004354' 732007 640020
3747
3748 ; Select PB Buffer B / Path B
3749
3750 004355' 103200 000003 WRLS (0,3) ; 1032-33
3751 004356' 542140 240340
3752 004357' 103300 002000
3753 004360' 431000 230340
3754 004361' 103400 000241 WRLS (1,241) ; 1034-35
3755 004362' 542140 240340
3756 004363' 103500 002001
3757 004364' 431000 230340
3758 004365' 103600 000201 WRLS (2,201) ; 1036-37
3759 004366' 542140 240340
3760 004367' 103700 002002
3761 004370' 431000 230340
3762 004371' 104020 000004 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=4> ; 1040
3763 004372' 732007 640020
3764 004373' 104150 000000 MWORD <JMAP,J=5000,S0B,AND,D=2,B=17> ; 1041
3765 004374' 342007 400040
3766
3767 ;#********************************************************************
3768 ; Subroutine to load buffer, transmit, then check result
3769 ;#********************************************************************
3770
3771 004375' 200003 770000 MWORD <ADDR=2000,LDCT,J=377,S0A,AND,B=4,D=2> ; 2000
3772 004376' 442002 000300
3773 004377' 200120 610000 MWORD <CJP,J=2061,SAB,A=4,B=5,XOR,D=1,CENA,CCFZ>
3774 004400' 161442 420060
3775 004401' 200200 000377 DLINK (377) ; 2002-04
3776 004402' 732000 240340
3777 004403' 200300 002040
3778 004404' 431000 002340
3779 004405' 200400 000354
3780 004406' 000000 001340
3781 004407' 200500 000050 ELINK (50) ; 2005-07
3782 004410' 732000 240340
3783 004411' 200600 002040
3784 004412' 431000 002340
3785 004413' 200700 000154
3786 004414' 000000 001340
3787 004415' 201055 000020 MDELAY (20) ; 2010
3788 004416' 542140 240020
3789 004417' 201100 000000 LSBWR ; 2011-14
3790 004420' 732000 220340
3791 004421' 201200 002040
3792 004422' 431000 002340
3793 004423' 201300 000174
3794 004424' 000000 001340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 33-3
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0674
3795 004425' 201400 000000
3796 004426' 001000 000340
3797 004427' 201555 000020 MDELAY (20) ; 2015
3798 004430' 542140 240020
3799 004431' 201622 000000 MWORD <CJS,J=2200,SD0,OR,D=2,SKCN,MGC=0> ; 2016
3800 004432' 732000 240020
3801 004433' 201722 000007 MWORD <CJS,J=2200,SD0,OR,D=2,SKCN,MGC=7> ; 2017
3802 004434' 732000 240020
3803 004435' 202022 000000 MWORD <CJS,J=2200,S0A,A=4,OR,D=2> ; 2020
3804 004436' 432040 000020
3805 004437' 202122 000000 MWORD <CJS,J=2200,S0A,A=4,XNOR,D=2> ; 2021
3806 004440' 472040 000020
3807 004441' 202222 000000 MWORD <CJS,J=2200,S0A,A=5,OR,D=2> ; 2022
3808 004442' 432050 000020
3809 004443' 202322 000000 MWORD <CJS,J=2200,S0A,AND,D=2> ; 2023
3810 004444' 442000 000020
3811 004445' 202422 000000 MWORD <CJS,J=2200,S0A,AND,D=2> ; 2024
3812 004446' 442000 000020
3813 004447' 202500 000001 LSMOD1 ; 2025-27
3814 004450' 732000 220340
3815 004451' 202600 002040
3816 004452' 431000 002340
3817 004453' 202700 000274
3818 004454' 000000 001340
3819 004455' 203055 000001 MDELAY (1) ; 2030
3820 004456' 542140 240020
3821 004457' 203100 000250 ABOXMT ; 2031
3822 004460' 000000 001340
3823 004461' 203255 000001 MDELAY (1) ; 2032
3824 004462' 542140 240020
3825 004463' 203300 000050 RSXSTA ; 2033
3826 004464' 000000 001340
3827 004465' 203455 000001 MDELAY (1) ; 2034
3828 004466' 542140 240020
3829 004467' 203500 000050 RSXSTA ; 2035
3830 004470' 000000 001340
3831 004471' 203655 000001 MDELAY (1) ; 2036
3832 004472' 542140 240020
3833 004473' 203700 000002 LTXMIT ; 2037-41
3834 004474' 732000 220340
3835 004475' 204000 002040
3836 004476' 431000 002340
3837 004477' 204100 000314
3838 004500' 000000 001340
3839 004501' 204255 000001 MDELAY (1) ; 2042
3840 004502' 542140 240020
3841 004503' 204320 450000 MWORD <CJP,J=2045,CENA,CCXA> ; 2043
3842 004504' 000400 070060
3843 004505' 204420 430000 MWORD <JMAP,J=2043> ; 2044
3844 004506' 000000 000040
3845 004507' 204555 000040 MDELAY (40) ; 2045
3846 004510' 542140 240020
3847 004511' 204600 000003 MWORD <CONT,SD0,OR,D=2,RDLM,MGC=3> ; 2046
3848 004512' 732000 220340
3849 004513' 204700 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 2047
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 33-4
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0675
3850 004514' 431000 002340
3851 004515' 205000 000174 MWORD <CONT,SELP,MGC=174> ; 2050
3852 004516' 000000 001340
3853 004517' 205155 000010 MDELAY (10) ; 2051
3854 004520' 542140 240020
3855 004521' 205200 000032 RDRSTA ; 2052-53
3856 004522' 342006 401340
3857 004523' 205300 000300
3858 004524' 732006 402340
3859 004525' 205400 000000 MWORD <CONT,SAB,A=14,B=15,AND,D=2> ; 2054
3860 004526' 142146 400340
3861 004527' 205500 000001 RDLS (7,1) ; 2055
3862 004530' 732003 620340
3863 004531' 205600 000000 MWORD <CONT,S0B,PLUS,B=7,D=2,CRY> ; 2056
3864 004532' 302003 400740
3865 004533' 205700 000003 MWORD <CONT,SDA,A=7,B=7,AND,D=2,SKCN,MGC=3> ; 2057
3866 004534' 542073 640340
3867 004535' 206000 000000 MWORD <CONT,SAB,A=14,B=7,AND,D=2> ; 2060
3868 004536' 142143 400340
3869 004537' 206120 630000 MWORD <CJP,J=2063,SAB,A=15,B=7,AND,D=1,CENA,CCFZ>; 2061
3870 004540' 141553 420060
3871 004541' 206250 000000 MWORD <JMAP,J=5000> ; 2062
3872 004542' 000000 000040
3873 004543' 206320 010000 MWORD <RPCT,J=2001,S0B,PLUS,D=2,B=4,CRY> ; 2063
3874 004544' 302002 000620
3875 004545' 206400 000000 MWORD <CRTN> ; 2064
3876 004546' 000000 000240
3877
3878 ;#********************************************************************
3879 ; Subroutine to load transmit buffer
3880 ;#********************************************************************
3881
3882 004547' 220000 002040 MWORD <ADDR=2200,CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 2200
3883 004550' 431000 002340
3884 004551' 220100 000214 MWORD <CRTN,SELP,MGC=214> ; 2201
3885 004552' 000000 001240
3886
3887 ;#********************************************************************
3888 ; Subroutine to do a delay (count in R0)
3889 ;#********************************************************************
3890
3891 004553' 550055 020000 MWORD <ADDR=5500,CJP,J=5502,S0B,SMIN,D=2,CENA,CCFZ>
3892 004554' 312400 020060
3893 004555' 550155 000000 MWORD <JMAP,J=5500> ; 5501
3894 004556' 000000 000040
3895 004557' 550200 000000 MWORD <CRTN> ; 5502
3896 004560' 000000 000240
3897
3898 ;#********************************************************************
3899 ; MRESET - Reset the Packet Buffer and Link modules
3900 ; MEXIT - Exit and write completion code to CSR
3901 ;#********************************************************************
3902
3903 004561' 777777 777776 SUBTAB (MRESET) ; 4000 ..
3904 004562' 000000000000#
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 33-5
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0676
3905 004563' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
3906 004564' 000000000000#
3907 004565' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 34
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0677
3908
3909 ;#********************************************************************
3910 ;* TEST 30 - Addressing Test 2
3911 ;
3912 ; Description: This test verifies the node address compare logic
3913 ; on the LINK module. A packet is transmitted to
3914 ; self (with internal loopback mode set). The
3915 ; transmit should succeed although a CRC error will
3916 ; result.
3917 ;
3918 ; Procedure: KL> Load microcode
3919 ; KL> Port Clear
3920 ; KL> Start port
3921 ;
3922 ; UC> Obtain our node address
3923 ; UC> Initialize port for internal Link loopback
3924 ; UC> Build loopback packet and send it on Path A
3925 ; UC> Verify the transmit loaded Buffer A
3926 ; If failed - exit test with error code 1 in CSR
3927 ;
3928 ; UC> Repeat for Buffer A / Path B (Error code 2)
3929 ; UC> Repeat for Buffer B / Path A (Error code 3)
3930 ; UC> Repeat for Buffer B / Path B (Error code 4)
3931 ;
3932 ; UC> Set appropriate completion code in CSR
3933 ; KL> Read CSR and determine test disposition
3934 ;
3935 ; FRU: Packet Buffer Module
3936 ;#********************************************************************
3937
3938 ; Initialization
3939
3940 004566' 201 00 0 00 000000' TST30: MOVEI Z3 ; get address of module start
3941 004567' 260 17 0 00 004230* GO TRACE ; handle trace output
3942 004570' 201 01 0 00 004616' MOVEI 1,T30M ; set up microcode address
3943 004571' 260 17 0 00 004232* GO TLOAD ; load/verify it
3944 004572' 263 17 0 00 000000 RTN ; failed - exit test
3945
3946 ; Do the test
3947
3948 004573' 260 17 0 00 004234* GO MSTART ; start the test at 5777
3949 004574' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
3950 004575' 260 17 0 00 004236* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 35
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0678
3951
3952 ; Handle error printouts
3953
3954 004576' 027 00 0 00 004603' SCOPER MA30 ; print error message
3955 004577' 255 00 0 00 000000 JFCL ; loop on error
3956 004600' 254 00 0 00 004601' JRST TX30 ; altmode exit
3957
3958 ; End of test
3959
3960 004601' 260 17 0 00 004242* TX30: GO TSTEND ; handle end of test processing
3961 004602' 263 17 0 00 000000 RTN ; return
3962
3963 ; Error messages
3964
3965 004603' 240000 004605' MA30: CALL!TXNOT!MA30PN
3966 004604' 170000 006275' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
3967
3968 004605' 201 01 0 00 004611' MA30PN: MOVEI 1,MA30LS ; get list address
3969 004606' 201 02 0 00 000005 MOVEI 2,5 ; get list length
3970 004607' 260 17 0 00 004250* GO MPRINT ; print data
3971 004610' 263 17 0 00 000000 RTN ; return
3972
3973 004611' 037 00 0 00 005564' MA30LS: TMSGC <No failure detected>
3974 TMSGC <Buffer A / Path A - Sent loopback packet to self -
3975 004612' 037 00 0 00 006415' resulted in no-response>
3976 TMSGC <Buffer A / Path B - Sent loopback packet to self -
3977 004613' 037 00 0 00 006435' resulted in no-response>
3978 TMSGC <Buffer B / Path A - Sent loopback packet to self -
3979 004614' 037 00 0 00 006455' resulted in no-response>
3980 TMSGC <Buffer B / Path B - Sent loopback packet to self -
3981 004615' 037 00 0 00 006475' resulted in no-response>
3982
3983 ;#********************************************************************
3984 ; Microcode:
3985 ;#********************************************************************
3986
3987 ; Initialization
3988
3989 004616' 577700 000000 T30M: MWORD <ADDR=5777,JZ> ; 5777
3990 004617' 000000 000000
3991 004620' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
3992 004621' 000000 000020
3993 004622' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
3994 004623' 342006 000300
3995 004624' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
3996 004625' 307006 000620
3997 004626' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
3998 004627' 302006 000440
3999
4000 ; R5 - Actual node address
4001 ; R14 - 8 bit mask (377)
4002 ; R17 - Completion code (right justified)
4003
4004 ; First, set up the LINK and Packet Buffer modules
4005
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 35-1
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0679
4006 004630' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
4007 004631' 000000 000040
4008 004632' 100100 000332 RDNADR ; 1001-02
4009 004633' 342006 401340
4010 004634' 100200 000300
4011 004635' 732006 402340
4012 004636' 100300 000000 MWORD <CONT,S0A,A=15,B=5,OR,D=2> ; 1003
4013 004637' 432152 400340
4014 004640' 100400 000000 MWORD <CONT,SAB,A=14,B=5,AND,D=2> ; 1004
4015 004641' 142142 400340
4016
4017 ; Select PB Buffer A / Path A
4018
4019 004642' 100500 000002 WRLS (0,2) ; 1005-06
4020 004643' 542140 240340
4021 004644' 100600 002000
4022 004645' 431000 230340
4023 004646' 100700 000240 WRLS (1,240) ; 1007-10
4024 004647' 542140 240340
4025 004650' 101000 002001
4026 004651' 431000 230340
4027 004652' 101100 000000 WRLS (2,0) ; 1011-12
4028 004653' 542140 240340
4029 004654' 101200 002002
4030 004655' 431000 230340
4031 004656' 101320 000001 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=1> ; 1013
4032 004657' 732007 640020
4033
4034 ; Select PB Buffer A / Path B
4035
4036 004660' 101400 000002 WRLS (0,2) ; 1014-15
4037 004661' 542140 240340
4038 004662' 101500 002000
4039 004663' 431000 230340
4040 004664' 101600 000241 WRLS (1,241) ; 1016-17
4041 004665' 542140 240340
4042 004666' 101700 002001
4043 004667' 431000 230340
4044 004670' 102000 000200 WRLS (2,200) ; 1020-21
4045 004671' 542140 240340
4046 004672' 102100 002002
4047 004673' 431000 230340
4048 004674' 102220 000002 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=2> ; 1022
4049 004675' 732007 640020
4050
4051 ; Select PB Buffer B / Path A
4052
4053 004676' 102300 000003 WRLS (0,3) ; 1023-24
4054 004677' 542140 240340
4055 004700' 102400 002000
4056 004701' 431000 230340
4057 004702' 102500 000240 WRLS (1,240) ; 1025-26
4058 004703' 542140 240340
4059 004704' 102600 002001
4060 004705' 431000 230340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 35-2
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0680
4061 004706' 102700 000001 WRLS (2,1) ; 1027-30
4062 004707' 542140 240340
4063 004710' 103000 002002
4064 004711' 431000 230340
4065 004712' 103120 000003 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=3> ; 1031
4066 004713' 732007 640020
4067
4068 ; Select PB Buffer B / Path B
4069
4070 004714' 103200 000003 WRLS (0,3) ; 1032-33
4071 004715' 542140 240340
4072 004716' 103300 002000
4073 004717' 431000 230340
4074 004720' 103400 000241 WRLS (1,241) ; 1034-35
4075 004721' 542140 240340
4076 004722' 103500 002001
4077 004723' 431000 230340
4078 004724' 103600 000201 WRLS (2,201) ; 1036-37
4079 004725' 542140 240340
4080 004726' 103700 002002
4081 004727' 431000 230340
4082 004730' 104020 000004 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=4> ; 1040
4083 004731' 732007 640020
4084 004732' 104150 000000 MWORD <JMAP,J=5000,S0B,AND,D=2,B=17> ; 1041
4085 004733' 342007 400040
4086
4087 ;#********************************************************************
4088 ; Subroutine to load buffer, transmit, then check result
4089 ;#********************************************************************
4090
4091 004734' 200020 010000 MWORD <ADDR=2000,JMAP,J=2001> ; 2000
4092 004735' 000000 000040
4093 004736' 200100 000377 DLINK (377) ; 2001-03
4094 004737' 732000 240340
4095 004740' 200200 002040
4096 004741' 431000 002340
4097 004742' 200300 000354
4098 004743' 000000 001340
4099 004744' 200400 000050 ELINK (50) ; 2004-06
4100 004745' 732000 240340
4101 004746' 200500 002040
4102 004747' 431000 002340
4103 004750' 200600 000154
4104 004751' 000000 001340
4105 004752' 200755 000020 MDELAY (20) ; 2007
4106 004753' 542140 240020
4107 004754' 201000 000000 LSBWR ; 2010-13
4108 004755' 732000 220340
4109 004756' 201100 002040
4110 004757' 431000 002340
4111 004760' 201200 000174
4112 004761' 000000 001340
4113 004762' 201300 000000
4114 004763' 001000 000340
4115 004764' 201455 000020 MDELAY (20) ; 2014
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 35-3
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0681
4116 004765' 542140 240020
4117 004766' 201522 000000 MWORD <CJS,J=2200,SD0,OR,D=2,SKCN,MGC=0> ; 2015
4118 004767' 732000 240020
4119 004770' 201622 000007 MWORD <CJS,J=2200,SD0,OR,D=2,SKCN,MGC=7> ; 2016
4120 004771' 732000 240020
4121 004772' 201722 000000 MWORD <CJS,J=2200,S0A,A=5,OR,D=2> ; 2017
4122 004773' 432050 000020
4123 004774' 202022 000000 MWORD <CJS,J=2200,S0A,A=5,XNOR,D=2> ; 2020
4124 004775' 472050 000020
4125 004776' 202122 000000 MWORD <CJS,J=2200,S0A,A=5,OR,D=2> ; 2021
4126 004777' 432050 000020
4127 005000' 202222 000000 MWORD <CJS,J=2200,S0A,AND,D=2> ; 2022
4128 005001' 442000 000020
4129 005002' 202322 000000 MWORD <CJS,J=2200,S0A,AND,D=2> ; 2023
4130 005003' 442000 000020
4131 005004' 202400 000001 LSMOD1 ; 2024-26
4132 005005' 732000 220340
4133 005006' 202500 002040
4134 005007' 431000 002340
4135 005010' 202600 000274
4136 005011' 000000 001340
4137 005012' 202755 000001 MDELAY (1) ; 2027
4138 005013' 542140 240020
4139 005014' 203000 000250 ABOXMT ; 2030
4140 005015' 000000 001340
4141 005016' 203155 000001 MDELAY (1) ; 2031
4142 005017' 542140 240020
4143 005020' 203200 000050 RSXSTA ; 2032
4144 005021' 000000 001340
4145 005022' 203355 000001 MDELAY (1) ; 2033
4146 005023' 542140 240020
4147 005024' 203400 000050 RSXSTA ; 2034
4148 005025' 000000 001340
4149 005026' 203555 000001 MDELAY (1) ; 2035
4150 005027' 542140 240020
4151 005030' 203600 000002 LTXMIT ; 2036-40
4152 005031' 732000 220340
4153 005032' 203700 002040
4154 005033' 431000 002340
4155 005034' 204000 000314
4156 005035' 000000 001340
4157 005036' 204155 000001 MDELAY (1) ; 2041
4158 005037' 542140 240020
4159 005040' 204220 440000 MWORD <CJP,J=2044,CENA,CCXA> ; 2042
4160 005041' 000400 070060
4161 005042' 204320 420000 MWORD <JMAP,J=2042> ; 2043
4162 005043' 000000 000040
4163 005044' 204455 000040 MDELAY (40) ; 2044
4164 005045' 542140 240020
4165 005046' 204500 000003 MWORD <CONT,SD0,OR,D=2,RDLM,MGC=3> ; 2045
4166 005047' 732000 220340
4167 005050' 204600 002040 MWORD <CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 2046
4168 005051' 431000 002340
4169 005052' 204700 000174 MWORD <CONT,SELP,MGC=174> ; 2047
4170 005053' 000000 001340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 35-4
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0682
4171 005054' 205055 000010 MDELAY (10) ; 2050
4172 005055' 542140 240020
4173 005056' 205100 000032 RDRSTA ; 2051-52
4174 005057' 342006 401340
4175 005060' 205200 000300
4176 005061' 732006 402340
4177 005062' 205300 000000 MWORD <CONT,SAB,A=14,B=15,AND,D=2> ; 2053
4178 005063' 142146 400340
4179 005064' 205400 000001 RDLS (7,1) ; 2054
4180 005065' 732003 620340
4181 005066' 205500 000000 MWORD <CONT,S0B,PLUS,B=7,D=2,CRY> ; 2055
4182 005067' 302003 400740
4183 005070' 205600 000003 MWORD <CONT,SDA,A=7,B=7,AND,D=2,SKCN,MGC=3> ; 2056
4184 005071' 542073 640340
4185 005072' 205700 000000 MWORD <CONT,SAB,A=14,B=7,AND,D=2> ; 2057
4186 005073' 142143 400340
4187 005074' 206050 000000 MWORD <CJP,J=5000,SAB,A=7,B=15,AND,D=1,CENA,CCFZ>; 2060
4188 005075' 141476 420060
4189 005076' 206100 000000 MWORD <CRTN> ; 2061
4190 005077' 000000 000240
4191
4192 ;#********************************************************************
4193 ; Subroutine to load transmit buffer
4194 ;#********************************************************************
4195
4196 005100' 220000 002040 MWORD <ADDR=2200,CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 2200
4197 005101' 431000 002340
4198 005102' 220100 000214 MWORD <CRTN,SELP,MGC=214> ; 2201
4199 005103' 000000 001240
4200
4201 ;#********************************************************************
4202 ; Subroutine to do a delay (count in R0)
4203 ;#********************************************************************
4204
4205 005104' 550055 020000 MWORD <ADDR=5500,CJP,J=5502,S0B,SMIN,D=2,CENA,CCFZ>
4206 005105' 312400 020060
4207 005106' 550155 000000 MWORD <JMAP,J=5500> ; 5501
4208 005107' 000000 000040
4209 005110' 550200 000000 MWORD <CRTN> ; 5502
4210 005111' 000000 000240
4211
4212 ;#********************************************************************
4213 ; MRESET - Reset the Packet Buffer and Link modules
4214 ; MEXIT - Exit and write completion code to CSR
4215 ;#********************************************************************
4216
4217 005112' 777777 777776 SUBTAB (MRESET) ; 4000 ..
4218 005113' 000000000000#
4219 005114' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
4220 005115' 000000000000#
4221 005116' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 36
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0683
4222
4223 ;#********************************************************************
4224 ;* TEST 31 - Addressing Test 3
4225 ;
4226 ; Description: This test verifies the node address compare logic
4227 ; on the LINK module. Loopback packets are sent to
4228 ; this node, with the 'Swap Address' LINK Control
4229 ; enabled. A no-response should result.
4230 ;
4231 ; Procedure: KL> Load microcode
4232 ; KL> Port Clear
4233 ; KL> Start port
4234 ;
4235 ; UC> Initialize node address of 0
4236 ; UC> Initialize port for internal Link loopback
4237 ; UC> Build loopback packet and send it to this port
4238 ; UC> Verify no response results
4239 ; If failed - exit test with error code 1 in CSR
4240 ;
4241 ; Repeat for each combination of Buffer/Path selection
4242 ;
4243 ; UC> Set appropriate completion code in CSR
4244 ; KL> Read CSR and determine test disposition
4245 ;
4246 ; FRU: Packet Buffer Module
4247 ;#********************************************************************
4248
4249 ; Initialization
4250
4251 005117' 201 00 0 00 000000' TST31: MOVEI Z3 ; get address of module start
4252 005120' 260 17 0 00 004567* GO TRACE ; handle trace output
4253 005121' 201 01 0 00 005147' MOVEI 1,T31M ; set up microcode address
4254 005122' 260 17 0 00 004571* GO TLOAD ; load/verify it
4255 005123' 263 17 0 00 000000 RTN ; failed - exit test
4256
4257 ; Do the test
4258
4259 005124' 260 17 0 00 004573* GO MSTART ; start the test at 5777
4260 005125' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
4261 005126' 260 17 0 00 004575* GO MWAIT ; wait for completion
4262
4263 ; Handle error printouts
4264
4265 005127' 027 00 0 00 005134' SCOPER MA31 ; print error message
4266 005130' 255 00 0 00 000000 JFCL ; loop on error
4267 005131' 254 00 0 00 005132' JRST TX31 ; altmode exit
4268
4269 ; End of test
4270
4271 005132' 260 17 0 00 004601* TX31: GO TSTEND ; handle end of test processing
4272 005133' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 37
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0684
4273
4274 ; Error messages
4275
4276 005134' 240000 005136' MA31: CALL!TXNOT!MA31PN
4277 005135' 170000 006275' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
4278
4279 005136' 201 01 0 00 005142' MA31PN: MOVEI 1,MA31LS ; get list address
4280 005137' 201 02 0 00 000005 MOVEI 2,5 ; get list length
4281 005140' 260 17 0 00 004607* GO MPRINT ; print data
4282 005141' 263 17 0 00 000000 RTN ; return
4283
4284 005142' 037 00 0 00 005564' MA31LS: TMSGC <No failure detected>
4285 005143' 037 00 0 00 006515' TMSGC <Buffer A / Path A - Packet to self did not result in no-response>
4286 005144' 037 00 0 00 006533' TMSGC <Buffer A / Path B - Packet to self did not result in no-response>
4287 005145' 037 00 0 00 006551' TMSGC <Buffer B / Path A - Packet to self did not result in no-response>
4288 005146' 037 00 0 00 006567' TMSGC <Buffer B / Path B - Packet to self did not result in no-response>
4289 ;#********************************************************************
4290 ; Microcode:
4291 ;#********************************************************************
4292
4293 ; Initialization
4294
4295 005147' 577700 000000 T31M: MWORD <ADDR=5777,JZ> ; 5777
4296 005150' 000000 000000
4297 005151' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
4298 005152' 000000 000020
4299 005153' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
4300 005154' 342006 000300
4301 005155' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
4302 005156' 307006 000620
4303 005157' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
4304 005160' 302006 000440
4305
4306 ; R5 - Actual node address
4307 ; R14 - 8 bit mask (377)
4308 ; R17 - Completion code (right justified)
4309
4310 ; First, set up the LINK and Packet Buffer modules
4311
4312 005161' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
4313 005162' 000000 000040
4314 005163' 100100 000332 RDNADR ; 1001-02
4315 005164' 342006 401340
4316 005165' 100200 000300
4317 005166' 732006 402340
4318 005167' 100300 000000 MWORD <CONT,S0A,A=15,B=5,OR,D=2> ; 1003
4319 005170' 432152 400340
4320 005171' 100400 000000 MWORD <CONT,SAB,A=14,B=5,AND,D=2> ; 1004
4321 005172' 142142 400340
4322 005173' 100500 000377 DLINK (377) ; 1005-07
4323 005174' 732000 240340
4324 005175' 100600 002040
4325 005176' 431000 002340
4326 005177' 100700 000354
4327 005200' 000000 001340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 37-1
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0685
4328 005201' 101000 000056 ELINK (56) ; 1010-12
4329 005202' 732000 240340
4330 005203' 101100 002040
4331 005204' 431000 002340
4332 005205' 101200 000154
4333 005206' 000000 001340
4334
4335 ; Select PB Buffer A / Path A
4336
4337 005207' 101300 000002 WRLS (0,2) ; 1013-14
4338 005210' 542140 240340
4339 005211' 101400 002000
4340 005212' 431000 230340
4341 005213' 101500 000240 WRLS (1,240) ; 1015-16
4342 005214' 542140 240340
4343 005215' 101600 002001
4344 005216' 431000 230340
4345 005217' 101700 000000 WRLS (2,0) ; 1017-20
4346 005220' 542140 240340
4347 005221' 102000 002002
4348 005222' 431000 230340
4349 005223' 102120 000001 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=1> ; 1021
4350 005224' 732007 640020
4351
4352 ; Select PB Buffer A / Path B
4353
4354 005225' 102200 000002 WRLS (0,2) ; 1022-23
4355 005226' 542140 240340
4356 005227' 102300 002000
4357 005230' 431000 230340
4358 005231' 102400 000241 WRLS (1,241) ; 1024-25
4359 005232' 542140 240340
4360 005233' 102500 002001
4361 005234' 431000 230340
4362 005235' 102600 000200 WRLS (2,200) ; 1026-27
4363 005236' 542140 240340
4364 005237' 102700 002002
4365 005240' 431000 230340
4366 005241' 103020 000002 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=2> ; 1030
4367 005242' 732007 640020
4368
4369 ; Select PB Buffer B / Path A
4370
4371 005243' 103100 000003 WRLS (0,3) ; 1031-32
4372 005244' 542140 240340
4373 005245' 103200 002000
4374 005246' 431000 230340
4375 005247' 103300 000240 WRLS (1,240) ; 1033-34
4376 005250' 542140 240340
4377 005251' 103400 002001
4378 005252' 431000 230340
4379 005253' 103500 000001 WRLS (2,1) ; 1035-36
4380 005254' 542140 240340
4381 005255' 103600 002002
4382 005256' 431000 230340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 37-2
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0686
4383 005257' 103720 000003 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=3> ; 1037
4384 005260' 732007 640020
4385
4386 ; Select PB Buffer B / Path B
4387
4388 005261' 104000 000003 WRLS (0,3) ; 1040-41
4389 005262' 542140 240340
4390 005263' 104100 002000
4391 005264' 431000 230340
4392 005265' 104200 000241 WRLS (1,241) ; 1042-43
4393 005266' 542140 240340
4394 005267' 104300 002001
4395 005270' 431000 230340
4396 005271' 104400 000201 WRLS (2,201) ; 1044-45
4397 005272' 542140 240340
4398 005273' 104500 002002
4399 005274' 431000 230340
4400 005275' 104620 000004 MWORD <CJS,J=2000,SD0,OR,D=2,B=17,SKCN,MGC=4> ; 1046
4401 005276' 732007 640020
4402 005277' 104750 000000 MWORD <JMAP,J=5000,S0B,AND,D=2,B=17> ; 1047
4403 005300' 342007 400040
4404
4405 ;#********************************************************************
4406 ; Subroutine to load buffer, transmit, then check result
4407 ;#********************************************************************
4408
4409 005301' 200020 010000 MWORD <ADDR=2000,JMAP,J=2001> ; 2000
4410 005302' 000000 000040
4411 005303' 200100 000377 DLINK (377) ; 2001-03
4412 005304' 732000 240340
4413 005305' 200200 002040
4414 005306' 431000 002340
4415 005307' 200300 000354
4416 005310' 000000 001340
4417 005311' 200400 000056 ELINK (56) ; 2004-06
4418 005312' 732000 240340
4419 005313' 200500 002040
4420 005314' 431000 002340
4421 005315' 200600 000154
4422 005316' 000000 001340
4423 005317' 200755 000010 MDELAY (10) ; 2007
4424 005320' 542140 240020
4425 005321' 201000 000000 LSBWR ; 2010-13
4426 005322' 732000 220340
4427 005323' 201100 002040
4428 005324' 431000 002340
4429 005325' 201200 000174
4430 005326' 000000 001340
4431 005327' 201300 000000
4432 005330' 001000 000340
4433 005331' 201455 000010 MDELAY (10) ; 2014
4434 005332' 542140 240020
4435 005333' 201522 000000 MWORD <CJS,J=2200,SD0,OR,D=2,SKCN,MGC=0> ; 2015
4436 005334' 732000 240020
4437 005335' 201622 000007 MWORD <CJS,J=2200,SD0,OR,D=2,SKCN,MGC=7> ; 2016
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 37-3
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0687
4438 005336' 732000 240020
4439 005337' 201722 000000 MWORD <CJS,J=2200,S0A,A=5,OR,D=2> ; 2017
4440 005340' 432050 000020
4441 005341' 202022 000000 MWORD <CJS,J=2200,S0A,A=5,XNOR,D=2> ; 2020
4442 005342' 472050 000020
4443 005343' 202122 000000 MWORD <CJS,J=2200,S0A,A=5,OR,D=2> ; 2021
4444 005344' 432050 000020
4445 005345' 202222 000000 MWORD <CJS,J=2200,S0A,AND,D=2> ; 2022
4446 005346' 442000 000020
4447 005347' 202322 000000 MWORD <CJS,J=2200,S0A,AND,D=2> ; 2023
4448 005350' 442000 000020
4449 005351' 202400 000001 LSMOD1 ; 2024-26
4450 005352' 732000 220340
4451 005353' 202500 002040
4452 005354' 431000 002340
4453 005355' 202600 000274
4454 005356' 000000 001340
4455 005357' 202755 000001 MDELAY (1) ; 2027
4456 005360' 542140 240020
4457 005361' 203000 000250 ABOXMT ; 2030
4458 005362' 000000 001340
4459 005363' 203155 000005 MDELAY (5) ; 2031
4460 005364' 542140 240020
4461 005365' 203200 000050 RSXSTA ; 2032
4462 005366' 000000 001340
4463 005367' 203355 000005 MDELAY (5) ; 2033
4464 005370' 542140 240020
4465 005371' 203400 000002 LTXMIT ; 2034-36
4466 005372' 732000 220340
4467 005373' 203500 002040
4468 005374' 431000 002340
4469 005375' 203600 000314
4470 005376' 000000 001340
4471 005377' 203755 000005 MDELAY (5) ; 2037
4472 005400' 542140 240020
4473 005401' 204020 420000 MWORD <CJP,J=2042,CENA,CCXA> ; 2040
4474 005402' 000400 070060
4475 005403' 204120 400000 MWORD <JMAP,J=2040> ; 2041
4476 005404' 000000 000040
4477 005405' 204255 000002 MDELAY (2) ; 2042
4478 005406' 542140 240020
4479 005407' 204300 000032 RDRSTA ; 2043-44
4480 005410' 342006 401340
4481 005411' 204400 000300
4482 005412' 732006 402340
4483 005413' 204500 000000 MWORD <CONT,SAB,A=14,B=15,AND,D=2> ; 2045
4484 005414' 142146 400340
4485 005415' 204600 000001 RDLS (7,1) ; 2046
4486 005416' 732003 620340
4487 005417' 204700 000000 MWORD <CONT,S0B,PLUS,B=7,D=2,CRY> ; 2047
4488 005420' 302003 400740
4489 005421' 205000 000003 MWORD <CONT,SDA,A=7,B=7,AND,D=2,SKCN,MGC=3> ; 2050
4490 005422' 542073 640340
4491 005423' 205100 000000 MWORD <CONT,SAB,A=14,B=7,AND,D=2> ; 2051
4492 005424' 142143 400340
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 37-4
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0688
4493 005425' 205220 540000 MWORD <CJP,J=2054,SAB,A=15,B=7,AND,D=1,CENA,CCFZ>; 2052
4494 005426' 141553 420060
4495 005427' 205350 000000 MWORD <JMAP,J=5000> ; 2053
4496 005430' 000000 000040
4497 005431' 205400 000000 MWORD <CRTN> ; 2054
4498 005432' 000000 000240
4499
4500 ;#********************************************************************
4501 ; Subroutine to load transmit buffer
4502 ;#********************************************************************
4503
4504 005433' 220000 002040 MWORD <ADDR=2200,CONT,S0A,OR,D=1,OENA,SELM,MGC=40> ; 2200
4505 005434' 431000 002340
4506 005435' 220100 000214 MWORD <CRTN,SELP,MGC=214> ; 2201
4507 005436' 000000 001240
4508
4509 ;#********************************************************************
4510 ; Subroutine to do a delay (count in R0)
4511 ;#********************************************************************
4512
4513 005437' 550055 020000 MWORD <ADDR=5500,CJP,J=5502,S0B,SMIN,D=2,CENA,CCFZ>
4514 005440' 312400 020060
4515 005441' 550155 000000 MWORD <JMAP,J=5500> ; 5501
4516 005442' 000000 000040
4517 005443' 550200 000000 MWORD <CRTN> ; 5502
4518 005444' 000000 000240
4519
4520 ;#********************************************************************
4521 ; MRESET - Reset the Packet Buffer and Link modules
4522 ; MEXIT - Exit and write completion code to CSR
4523 ;#********************************************************************
4524
4525 005445' 777777 777776 SUBTAB (MRESET) ; 4000 ..
4526 005446' 000000000000#
4527 005447' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
4528 005450' 000000000000#
4529 005451' 777777 777777 -1
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 38
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0689
4530
4531 ;#********************************************************************
4532 ;* TEST 32 - Node Address Test
4533 ;
4534 ; Description: This test reads the node address register on the
4535 ; LINK module.
4536 ;
4537 ; Procedure: KL> Load microcode
4538 ; KL> Port Clear
4539 ; KL> Start port
4540 ;
4541 ; UC> Read node address (with 'Swap Address' LINK
4542 ; Control disabled)
4543 ; UC> Read node address (with 'Swap Address' LINK
4544 ; Control enabled)
4545 ; UC> Verify that one is a complement of the other
4546 ; If failed - exit test with error code 1 in CSR
4547 ;
4548 ; UC> Set appropriate completion code in CSR
4549 ; KL> Read CSR and determine test disposition
4550 ;
4551 ; FRU: Link Module
4552 ;#********************************************************************
4553
4554 ; Initialization
4555
4556 005452' 201 00 0 00 000000' TST32: MOVEI Z3 ; get address of module start
4557 005453' 260 17 0 00 005120* GO TRACE ; handle trace output
4558 005454' 201 01 0 00 005477' MOVEI 1,T32M ; set up microcode address
4559 005455' 260 17 0 00 005122* GO TLOAD ; load/verify it
4560 005456' 263 17 0 00 000000 RTN ; failed - exit test
4561
4562 ; Do the test
4563
4564 005457' 260 17 0 00 005124* GO MSTART ; start the test at 5777
4565 005460' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
4566 005461' 260 17 0 00 005126* GO MWAIT ; wait for completion
4567
4568 ; Handle error printouts
4569
4570 005462' 027 00 0 00 005467' SCOPER MA32 ; print error message
4571 005463' 255 00 0 00 000000 JFCL ; loop on error
4572 005464' 254 00 0 00 005465' JRST TX32 ; altmode exit
4573
4574 ; End of test
4575
4576 005465' 260 17 0 00 005132* TX32: GO TSTEND ; handle end of test processing
4577 005466' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 39
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0690
4578
4579 ; Error messages
4580
4581 005467' 240000 005471' MA32: CALL!TXNOT!MA32PN
4582 005470' 170000 006275' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
4583
4584 005471' 201 01 0 00 005475' MA32PN: MOVEI 1,MA32LS ; get list address
4585 005472' 201 02 0 00 000002 MOVEI 2,2 ; get list length
4586 005473' 260 17 0 00 005140* GO MPRINT ; print data
4587 005474' 263 17 0 00 000000 RTN ; return
4588
4589 005475' 037 00 0 00 005564' MA32LS: TMSGC <No failure detected>
4590 005476' 037 00 0 00 006605' TMSGC <Node address not complemented correctly>
4591
4592 ;#********************************************************************
4593 ; Microcode:
4594 ;#********************************************************************
4595
4596 ; Initialization
4597
4598 005477' 577700 000000 T32M: MWORD <ADDR=5777,JZ> ; 5777
4599 005500' 000000 000000
4600 005501' 000000 060000 MWORD <ADDR=0,LDCT,J=6,S0B,AND,B=14,D=2> ; 0
4601 005502' 342006 000300
4602 005503' 000100 010000 MWORD <RPCT,J=1,S0B,PLUS,B=14,D=7,CRY> ; 1
4603 005504' 307006 000620
4604 005505' 000210 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 2
4605 005506' 302006 000440
4606
4607 ; R14 - 8 bit mask (377)
4608 ; R15 - Node address complemented
4609 ; R16 - Node address
4610 ; R17 - Completion code (right justified)
4611
4612 ; Read node address
4613
4614 005507' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001,S0B,AND,B=17,D=2>; 1000
4615 005510' 342007 400040
4616 005511' 100100 000200 SETMOD (200) ; 1001-03
4617 005512' 732000 240340
4618 005513' 100200 002040
4619 005514' 431000 002340
4620 005515' 100300 000274
4621 005516' 000000 001340
4622 005517' 100400 000332 RDNADR ; 1004-05
4623 005520' 342006 401340
4624 005521' 100500 000300
4625 005522' 732006 402340
4626 005523' 100600 000000 MWORD <CONT,S0A,A=15,B=16,OR,D=2> ; 1006
4627 005524' 432157 000340
4628
4629 ; Set 'SWAP Address' LINK Control bit
4630 ; Read complemented node address
4631
4632 005525' 100700 000002 ELINK (2) ; 1007-11
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page 39-1
DFCIA3 MAC 6-Jun-83 09:56 Link Node Address Tests SEQ 0691
4633 005526' 732000 240340
4634 005527' 101000 002040
4635 005530' 431000 002340
4636 005531' 101100 000154
4637 005532' 000000 001340
4638 005533' 101200 000332 RDNADR ; 1012-13
4639 005534' 342006 401340
4640 005535' 101300 000300
4641 005536' 732006 402340
4642
4643 ; Compare results
4644
4645 005537' 101400 000000 MWORD <CONT,SAB,A=14,B=15,AND,D=2> ; 1014
4646 005540' 142146 400340
4647 005541' 101500 000000 MWORD <CONT,SAB,A=14,B=16,AND,D=2> ; 1015
4648 005542' 142147 000340
4649 005543' 101600 000000 MWORD <CONT,S0A,A=15,B=7,D=2> ; 1016
4650 005544' 402153 400340
4651 005545' 101700 000000 MWORD <CONT,SAB,XNOR,A=16,B=7,D=2> ; 1017
4652 005546' 172163 400340
4653 005547' 102050 000000 MWORD <CJP,J=5000,SAB,A=14,B=7,D=1,AND,CENA,CCFZ>
4654 005550' 141543 420060
4655 005551' 102150 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,SKCN,MGC=1>; 1021
4656 005552' 732007 640040
4657
4658 ;#********************************************************************
4659 ; MRESET - Reset the Packet Buffer and Link modules
4660 ; MEXIT - Exit and write completion code to CSR
4661 ;#********************************************************************
4662
4663 005553' 777777 777776 SUBTAB (MRESET) ; 4000 ..
4664 005554' 000000000000#
4665 005555' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
4666 005556' 000000000000#
4667 005557' 777777 777777 -1
4668
4669 ;#********************************************************************
4670 ; End of DFCIA3.MAC
4671 ;#********************************************************************
4672
4673 XLIST
4674
NO ERRORS DETECTED
PROGRAM BREAK IS 006616
CPU TIME USED 08:19.811
210P CORE USED
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page S-1
DFCIA3 MAC 6-Jun-83 09:56 SYMBOL TABLE SEQ 0692
BUFF 000000 ext MA25PN 003456' TRACE 005453' ext .LADDR 000100 000000 spd
BUFGEN 000000 ext MA26 003677' TST10 000000' ent .LAND 000000 spd
C1516 000000 ext MA26LS 003705' TST11 000171' ent .LB 000000 spd
CALL 200000 000000 spd MA26PN 003701' TST12 000344' ent .LCCAF 000000 spd
CHINIT 000000 ext MA27 004244' TST13 000517' ent .LCCBF 000000 spd
CSRPNT 000000 ext MA27LS 004252' TST14 000714' ent .LCCFZ 000000 spd
ERESET 000000 ext MA27PN 004246' TST15 001107' ent .LCCXA 000000 spd
GO 260740 000000 MA30 004603' TST16 001346' ent .LCENA 000000 spd
IPACLR 000000 ext MA30LS 004611' TST17 001515' ent .LCJP 000000 spd
LAST 010000 000000 spd MA30PN 004605' TST20 001760' ent .LCJS 000000 spd
LDCRAM 000000 ext MA31 005134' TST21 002223' ent .LCONT 000000 spd
LDCSR 000000 ext MA31LS 005142' TST22 002562' ent .LCRTN 000000 spd
LDEBUF 000000 ext MA31PN 005136' TST23 002777' ent .LCRY 000000 spd
LDRAR 000000 ext MA32 005467' TST24 003214' ent .LD 000000 spd
MA10 000015' MA32LS 005475' TST25 003437' ent .LJ 010000 spd
MA10LS 000023' MA32PN 005471' TST26 003662' ent .LJMAP 000000 spd
MA10PN 000017' MEXIT 000000 ext TST27 004227' ent .LJZ 000000 spd
MA11 000206' MPRINT 005473' ext TST30 004566' ent .LLDCT 000000 spd
MA11LS 000214' MRESET 000000 ext TST31 005117' ent .LLDLM 000000 spd
MA11PN 000210' MRESTA 000000 ext TST32 005452' ent .LMGC 000001 spd
MA12 000361' MSG 100000 000000 spd TSTEND 005465' ext .LOENA 002000 spd
MA12LS 000367' MSTART 005457' ext TSTSUB 000000 ext .LOR 000000 spd
MA12PN 000363' MWAIT 005461' ext TX10 000013' .LPLUS 000000 spd
MA13 000534' PNTMSG 037000 000000 TX11 000204' .LRDLM 000000 spd
MA13LS 000542' RDCRAM 000000 ext TX12 000357' .LRPCT 000000 spd
MA13PN 000536' RDCSR 000000 ext TX13 000532' .LS0A 000000 spd
MA14 000731' RDEBUF 000000 ext TX14 000727' .LS0B 000000 spd
MA14LS 000737' RDLAR 000000 ext TX15 001122' .LSAB 000000 spd
MA14PN 000733' RTN 263740 000000 TX16 001361' .LSD0 000000 spd
MA15 001124' SAVCOD 000000 ext TX17 001530' .LSDA 000000 spd
MA15LS 001132' SAVCSR 000000 ext TX20 001773' .LSELM 000000 spd
MA15PN 001126' SAVEBU 000000 ext TX21 002236' .LSELP 000000 spd
MA16 001363' SAVLAR 000000 ext TX22 002575' .LSKCN 000000 spd
MA16LS 001371' SCOPER 027000 000000 TX23 003012' .LSMIN 000000 spd
MA16PN 001365' SCOSW 000000 ext TX24 003227' .LXNOR 000000 spd
MA17 001532' T10M 000030' ent TX25 003452' .LXOR 000000 spd
MA17LS 001540' T11M 000217' ent TX26 003675' .MA 000017 spd
MA17PN 001534' T12M 000372' ent TX27 004242' .MAND 000007 spd
MA20 001775' T13M 000547' ent TX30 004601' .MB 000017 spd
MA20LS 002003' T14M 000744' ent TX31 005132' .MCCAF 000037 spd
MA20PN 001777' T15M 001137' ent TX32 005465' .MCCBF 000037 spd
MA21 002240' T16M 001376' ent TXALL 060000 000000 spd .MCCFZ 000037 spd
MA21LS 002246' T17M 001543' ent TXNOT 040000 000000 spd .MCCXA 000037 spd
MA21PN 002242' T20M 002006' ent UDEBUG 000000 ext .MCENA 000001 spd
MA22 002577' T21M 002253' ent Z3 000000' .MCJP 000017 spd
MA22LS 002605' T22M 002610' ent $ARG2 000001 .MCJS 000017 spd
MA22PN 002601' T23M 003025' ent $B 000043 .MCONT 000017 spd
MA23 003014' T24M 003242' ent $CHR 554743 .MCRTN 000017 spd
MA23LS 003022' T25M 003465' ent $GARG 000001 .MCRY 000001 spd
MA23PN 003016' T26M 003712' ent %ADDR 001022 spd .MD 000007 spd
MA24 003231' T27M 004257' ent %ML 102150 000001 spd .MJ 007777 spd
MA24LS 003237' T30M 004616' ent %MR 732007 640040 spd .MJMAP 000017 spd
MA24PN 003233' T31M 005147' ent .DATAI 000000 ext .MJZ 000017 spd
MA25 003454' T32M 005477' ent .DATAO 000000 ext .MLDCT 000017 spd
MA25LS 003462' TLOAD 005455' ext .LA 000000 spd .MLDLM 000037 spd
.MAIN MACRO %53A(1152) 18:52 29-Oct-84 Page S-2
DFCIA3 MAC 6-Jun-83 09:56 SYMBOL TABLE SEQ 0693
.MMGC 001777 spd
.MOENA 000001 spd
.MOR 000007 spd
.MPLUS 000007 spd
.MRDLM 000037 spd
.MRPCT 000017 spd
.MS0A 000007 spd
.MS0B 000007 spd
.MSAB 000007 spd
.MSD0 000007 spd
.MSDA 000007 spd
.MSELM 000007 spd
.MSELP 000007 spd
.MSKCN 000037 spd
.MSMIN 000007 spd
.MXNOR 000007 spd
.MXOR 000007 spd
.RA 000010 000000 spd
.RAND 040000 000000 spd
.RB 400000 spd
.RCCAF 050000 spd
.RCCBF 060000 spd
.RCCFZ 020000 spd
.RCCXA 070000 spd
.RCENA 000400 000000 spd
.RCJP 000060 spd
.RCJS 000020 spd
.RCONT 000340 spd
.RCRTN 000240 spd
.RCRY 000400 spd
.RD 001000 000000 spd
.RJ 000000 spd
.RJMAP 000040 spd
.RJZ 000000 spd
.RLDCT 000300 spd
.RLDLM 230000 spd
.RMGC 000000 spd
.ROENA 000000 spd
.ROR 030000 000000 spd
.RPLUS 000000 spd
.RRDLM 220000 spd
.RRPCT 000220 spd
.RS0A 400000 000000 spd
.RS0B 300000 000000 spd
.RSAB 100000 000000 spd
.RSD0 700000 000000 spd
.RSDA 500000 000000 spd
.RSELM 002000 spd
.RSELP 001000 spd
.RSKCN 240000 spd
.RSMIN 010000 000000 spd
.RXNOR 070000 000000 spd
.RXOR 060000 000000 spd
BUFF 21#
BUFGEN 35# SEQ 0694
C1516 30# 235 422 609 811 1037 1307 1500 1757 2012 2328 2555 2782 3010
3238 3577
CALL 100 298 485 672 883 1108 1375 1568 1823 2080 2393 2620 2845 3073
3309 3644 3965 4276 4581
CHINIT 26#
CSRPNT 21#
ERESET 26#
IPACLR 26#
LAST 101 299 486 673 884 1109 1376 1569 1824 2081 2394 2621 2846 3074
3310 3645 3966 4277 4582
LDCRAM 25#
LDCSR 25#
LDEBUF 25#
LDRAR 25#
MA10 89 100#
MA10LS 103 108#
MA10PN 100 103#
MA11 287 298#
MA11LS 301 306#
MA11PN 298 301#
MA12 474 485#
MA12LS 488 493#
MA12PN 485 488#
MA13 661 672#
MA13LS 675 680#
MA13PN 672 675#
MA14 872 883#
MA14LS 886 891#
MA14PN 883 886#
MA15 1097 1108#
MA15LS 1111 1116#
MA15PN 1108 1111#
MA16 1364 1375#
MA16LS 1378 1383#
MA16PN 1375 1378#
MA17 1557 1568#
MA17LS 1571 1576#
MA17PN 1568 1571#
MA20 1812 1823#
MA20LS 1826 1831#
MA20PN 1823 1826#
MA21 2069 2080#
MA21LS 2083 2088#
MA21PN 2080 2083#
MA22 2382 2393#
MA22LS 2396 2401#
MA22PN 2393 2396#
MA23 2609 2620#
MA23LS 2623 2628#
MA23PN 2620 2623#
MA24 2834 2845#
MA24LS 2848 2853#
MA24PN 2845 2848# SEQ 0695
MA25 3062 3073#
MA25LS 3076 3081#
MA25PN 3073 3076#
MA26 3298 3309#
MA26LS 3312 3317#
MA26PN 3309 3312#
MA27 3633 3644#
MA27LS 3647 3652#
MA27PN 3644 3647#
MA30 3954 3965#
MA30LS 3968 3973#
MA30PN 3965 3968#
MA31 4265 4276#
MA31LS 4279 4284#
MA31PN 4276 4279#
MA32 4570 4581#
MA32LS 4584 4589#
MA32PN 4581 4584#
MEXIT 30# 239 426 613 815 1041 1311 1504 1761 2016 2332 2559 2786 3014
3242 3581 3906 4220 4528 4666
MPRINT 30# 105 303 490 677 888 1113 1380 1573 1828 2085 2398 2625 2850
3078 3314 3649 3970 4281 4586
MRESET 30# 237 424 611 813 1039 1309 1502 3904 4218 4526 4664
MRESTA 30# 1759 2014 2330 2557 2784 3012 3240 3579
MSG 101 299 486 673 884 1109 1376 1569 1824 2081 2394 2621 2846 3074
3310 3645 3966 4277 4582
MSTART 30# 83 281 468 655 866 1091 1358 1551 1806 2063 2376 2603 2828
3056 3292 3627 3948 4259 4564
MWAIT 30# 85 283 470 657 868 1093 1360 1553 1808 2065 2378 2605 2830
3058 3294 3629 3950 4261 4566
RDCRAM 25#
RDCSR 25#
RDEBUF 25#
RDLAR 25#
SAVCOD 31#
SAVCSR 31#
SAVEBU 31#
SAVLAR 31#
SCOSW 35#
T10M 15 77 120#
T11M 15 275 316#
T12M 15 462 503#
T13M 15 649 692#
T14M 15 860 903#
T15M 15 1085 1128#
T16M 15 1352 1395#
T17M 15 1545 1586#
T20M 16 1800 1841#
T21M 16 2057 2100#
T22M 16 2370 2411#
T23M 16 2597 2638#
T24M 16 2822 2863#
T25M 16 3050 3091# SEQ 0696
T26M 16 3286 3329#
T27M 16 3621 3668#
T30M 17 3942 3989#
T31M 17 4253 4295#
T32M 17 4558 4598#
TLOAD 21# 78 276 463 650 861 1086 1353 1546 1801 2058 2371 2598 2823
3051 3287 3622 3943 4254 4559
TRACE 21# 76 274 461 648 859 1084 1351 1544 1799 2056 2369 2596 2821
3049 3285 3620 3941 4252 4557
TST10 9 75#
TST11 9 273#
TST12 9 460#
TST13 9 647#
TST14 9 858#
TST15 9 1083#
TST16 9 1350#
TST17 9 1543#
TST20 10 1798#
TST21 10 2055#
TST22 10 2368#
TST23 10 2595#
TST24 10 2820#
TST25 10 3048#
TST26 10 3284#
TST27 10 3619#
TST30 11 3940#
TST31 11 4251#
TST32 11 4556#
TSTEND 21# 95 293 480 667 878 1103 1370 1563 1818 2075 2388 2615 2840
3068 3304 3639 3960 4271 4576
TSTSUB 21#
TX10 91 95#
TX11 289 293#
TX12 476 480#
TX13 663 667#
TX14 874 878#
TX15 1099 1103#
TX16 1366 1370#
TX17 1559 1563#
TX20 1814 1818#
TX21 2071 2075#
TX22 2384 2388#
TX23 2611 2615#
TX24 2836 2840#
TX25 3064 3068#
TX26 3300 3304#
TX27 3635 3639#
TX30 3956 3960#
TX31 4267 4271#
TX32 4572 4576#
TXALL 101 299 486 673 884 1109 1376 1569 1824 2081 2394 2621 2846 3074
3310 3645 3966 4277 4582
TXNOT 100 298 485 672 883 1108 1375 1568 1823 2080 2393 2620 2845 3073 SEQ 0697
3309 3644 3965 4276 4581
UDEBUG 21#
Z3 41# 75 273 460 647 858 1083 1350 1543 1798 2055 2368 2595 2820
3048 3284 3619 3940 4251 4556
$ARG2 120# 120 122# 122 124# 124 126# 126 128# 128 138# 138 140# 140
142# 142 144# 144 146# 146 148# 148 150# 150 152# 152 154# 154
159# 159 161# 161 163# 163 165# 165 167# 167 169# 169 171# 171
173# 173 178# 178 180# 180 182# 182 184# 184 186# 186 188# 188
190# 190 192# 192 194# 194 196# 196 198# 198 203# 203 205# 205
207# 207 209# 209 211# 211 213# 213 215# 215 217# 217 219# 219
221# 221 223# 223 225# 225 316# 316 318# 318 320# 320 322# 322
324# 324 335# 335 337# 337 339# 339 341# 341 343# 343 345# 345
348# 348 350# 350 352# 352 354# 354 356# 356 358# 358 360# 360
369# 369 371# 371 373# 373 375# 375 377# 377 379# 379 381# 381
383# 383 385# 385 390# 390 392# 392 394# 394 396# 396 398# 398
400# 400 402# 402 404# 404 406# 406 408# 408 410# 410 412# 412
503# 503 505# 505 507# 507 509# 509 511# 511 522# 522 524# 524
526# 526 528# 528 530# 530 532# 532 535# 535 537# 537 539# 539
541# 541 543# 543 545# 545 547# 547 556# 556 558# 558 560# 560
562# 562 564# 564 566# 566 568# 568 570# 570 572# 572 577# 577
579# 579 581# 581 583# 583 585# 585 587# 587 589# 589 591# 591
593# 593 595# 595 597# 597 599# 599 692# 692 694# 694 696# 696
698# 698 700# 700 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 731# 731 733# 733 735# 735
737# 737 739# 739 741# 741 743# 743 745# 745 747# 747 752# 752
754# 754 756# 756 758# 758 760# 760 762# 762 764# 764 766# 766
768# 768 770# 770 772# 772 777# 777 779# 779 781# 781 783# 783
785# 785 787# 787 789# 789 791# 791 793# 793 795# 795 797# 797
799# 799 801# 801 903# 903 905# 905 907# 907 909# 909 911# 911
924# 924 926# 926 928# 928 930# 930 932# 932 934# 934 936# 936
942# 942 944# 944 946# 946 948# 948 950# 950 952# 952 954# 954
963# 963 965# 965 967# 967 969# 969 975# 975 977# 977 979# 979
981# 981 983# 983 985# 985 987# 987 993# 993 995# 995 997# 997
999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009 1015# 1015
1017# 1017 1019# 1019 1021# 1021 1023# 1023 1025# 1025 1027# 1027 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1148# 1148 1150# 1150 1152# 1152
1154# 1154 1156# 1156 1158# 1158 1160# 1160 1162# 1162 1164# 1164 1169# 1169
1171# 1171 1173# 1173 1175# 1175 1177# 1177 1179# 1179 1181# 1181 1183# 1183
1188# 1188 1190# 1190 1192# 1192 1197# 1197 1199# 1199 1201# 1201 1203# 1203
1205# 1205 1207# 1207 1209# 1209 1211# 1211 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1235# 1235 1237# 1237
1239# 1239 1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262
1264# 1264 1266# 1266 1271# 1271 1273# 1273 1275# 1275 1277# 1277 1279# 1279
1281# 1281 1286# 1286 1288# 1288 1290# 1290 1292# 1292 1294# 1294 1296# 1296
1395# 1395 1397# 1397 1399# 1399 1401# 1401 1403# 1403 1414# 1414 1416# 1416
1421# 1421 1423# 1423 1425# 1425 1434# 1434 1436# 1436 1438# 1438 1440# 1440
1442# 1442 1447# 1447 1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457
1459# 1459 1461# 1461 1463# 1463 1465# 1465 1467# 1467 1472# 1472 1474# 1474
1476# 1476 1478# 1478 1480# 1480 1482# 1482 1484# 1484 1486# 1486 1488# 1488
1490# 1490 1586# 1586 1588# 1588 1590# 1590 1592# 1592 1594# 1594 1605# 1605
1607# 1607 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1618# 1618 1620# 1620
1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630 1639# 1639 1641# 1641
1643# 1643 1645# 1645 1647# 1647 1649# 1649 1651# 1651 1653# 1653 1655# 1655 SEQ 0698
1657# 1657 1662# 1662 1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672
1674# 1674 1679# 1679 1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689
1691# 1691 1693# 1693 1695# 1695 1697# 1697 1699# 1699 1701# 1701 1703# 1703
1705# 1705 1707# 1707 1709# 1709 1711# 1711 1713# 1713 1715# 1715 1717# 1717
1722# 1722 1724# 1724 1726# 1726 1728# 1728 1730# 1730 1735# 1735 1737# 1737
1739# 1739 1741# 1741 1743# 1743 1745# 1745 1747# 1747 1841# 1841 1843# 1843
1845# 1845 1847# 1847 1849# 1849 1860# 1860 1862# 1862 1864# 1864 1866# 1866
1868# 1868 1870# 1870 1873# 1873 1875# 1875 1877# 1877 1879# 1879 1881# 1881
1883# 1883 1885# 1885 1894# 1894 1896# 1896 1898# 1898 1900# 1900 1902# 1902
1904# 1904 1906# 1906 1908# 1908 1910# 1910 1912# 1912 1917# 1917 1919# 1919
1921# 1921 1923# 1923 1925# 1925 1927# 1927 1929# 1929 1934# 1934 1936# 1936
1938# 1938 1940# 1940 1942# 1942 1944# 1944 1946# 1946 1948# 1948 1950# 1950
1952# 1952 1954# 1954 1956# 1956 1958# 1958 1960# 1960 1962# 1962 1964# 1964
1966# 1966 1968# 1968 1970# 1970 1972# 1972 1977# 1977 1979# 1979 1981# 1981
1983# 1983 1985# 1985 1990# 1990 1992# 1992 1994# 1994 1996# 1996 1998# 1998
2000# 2000 2002# 2002 2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108
2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126 2128# 2128 2130# 2130
2132# 2132 2134# 2134 2136# 2136 2141# 2141 2143# 2143 2145# 2145 2147# 2147
2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159 2165# 2165
2167# 2167 2169# 2169 2171# 2171 2173# 2173 2175# 2175 2177# 2177 2179# 2179
2181# 2181 2183# 2183 2185# 2185 2187# 2187 2189# 2189 2191# 2191 2196# 2196
2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206 2208# 2208 2210# 2210
2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220 2222# 2222 2224# 2224
2226# 2226 2228# 2228 2230# 2230 2232# 2232 2237# 2237 2239# 2239 2241# 2241
2243# 2243 2245# 2245 2247# 2247 2249# 2249 2251# 2251 2253# 2253 2255# 2255
2257# 2257 2259# 2259 2261# 2261 2263# 2263 2265# 2265 2267# 2267 2269# 2269
2271# 2271 2273# 2273 2275# 2275 2277# 2277 2282# 2282 2284# 2284 2286# 2286
2288# 2288 2290# 2290 2293# 2293 2295# 2295 2297# 2297 2299# 2299 2301# 2301
2306# 2306 2308# 2308 2310# 2310 2312# 2312 2314# 2314 2316# 2316 2318# 2318
2411# 2411 2413# 2413 2415# 2415 2417# 2417 2419# 2419 2424# 2424 2426# 2426
2428# 2428 2430# 2430 2432# 2432 2446# 2446 2448# 2448 2450# 2450 2452# 2452
2454# 2454 2456# 2456 2458# 2458 2460# 2460 2462# 2462 2464# 2464 2469# 2469
2471# 2471 2473# 2473 2475# 2475 2477# 2477 2479# 2479 2481# 2481 2483# 2483
2485# 2485 2490# 2490 2492# 2492 2494# 2494 2496# 2496 2498# 2498 2500# 2500
2502# 2502 2504# 2504 2506# 2506 2508# 2508 2510# 2510 2512# 2512 2514# 2514
2516# 2516 2518# 2518 2520# 2520 2522# 2522 2524# 2524 2526# 2526 2528# 2528
2533# 2533 2535# 2535 2537# 2537 2539# 2539 2541# 2541 2543# 2543 2545# 2545
2638# 2638 2640# 2640 2642# 2642 2644# 2644 2646# 2646 2651# 2651 2653# 2653
2655# 2655 2657# 2657 2659# 2659 2673# 2673 2675# 2675 2677# 2677 2679# 2679
2681# 2681 2683# 2683 2685# 2685 2687# 2687 2689# 2689 2691# 2691 2696# 2696
2698# 2698 2700# 2700 2702# 2702 2704# 2704 2706# 2706 2708# 2708 2710# 2710
2712# 2712 2717# 2717 2719# 2719 2721# 2721 2723# 2723 2725# 2725 2727# 2727
2729# 2729 2731# 2731 2733# 2733 2735# 2735 2737# 2737 2739# 2739 2741# 2741
2743# 2743 2745# 2745 2747# 2747 2749# 2749 2751# 2751 2753# 2753 2755# 2755
2760# 2760 2762# 2762 2764# 2764 2766# 2766 2768# 2768 2770# 2770 2772# 2772
2863# 2863 2865# 2865 2867# 2867 2869# 2869 2871# 2871 2882# 2882 2884# 2884
2886# 2886 2888# 2888 2890# 2890 2892# 2892 2894# 2894 2896# 2896 2898# 2898
2900# 2900 2905# 2905 2907# 2907 2909# 2909 2911# 2911 2913# 2913 2915# 2915
2917# 2917 2919# 2919 2921# 2921 2926# 2926 2928# 2928 2930# 2930 2932# 2932
2934# 2934 2936# 2936 2938# 2938 2940# 2940 2945# 2945 2947# 2947 2949# 2949
2951# 2951 2953# 2953 2955# 2955 2957# 2957 2959# 2959 2961# 2961 2963# 2963
2965# 2965 2967# 2967 2969# 2969 2971# 2971 2973# 2973 2975# 2975 2977# 2977
2979# 2979 2981# 2981 2983# 2983 2988# 2988 2990# 2990 2992# 2992 2994# 2994 SEQ 0699
2996# 2996 2998# 2998 3000# 3000 3091# 3091 3093# 3093 3095# 3095 3097# 3097
3099# 3099 3110# 3110 3112# 3112 3114# 3114 3116# 3116 3118# 3118 3120# 3120
3122# 3122 3124# 3124 3126# 3126 3128# 3128 3133# 3133 3135# 3135 3137# 3137
3139# 3139 3141# 3141 3143# 3143 3145# 3145 3147# 3147 3149# 3149 3154# 3154
3156# 3156 3158# 3158 3160# 3160 3162# 3162 3164# 3164 3166# 3166 3168# 3168
3173# 3173 3175# 3175 3177# 3177 3179# 3179 3181# 3181 3183# 3183 3185# 3185
3187# 3187 3189# 3189 3191# 3191 3193# 3193 3195# 3195 3197# 3197 3199# 3199
3201# 3201 3203# 3203 3205# 3205 3207# 3207 3209# 3209 3211# 3211 3216# 3216
3218# 3218 3220# 3220 3222# 3222 3224# 3224 3226# 3226 3228# 3228 3329# 3329
3331# 3331 3333# 3333 3335# 3335 3337# 3337 3349# 3349 3351# 3351 3353# 3353
3355# 3355 3357# 3357 3359# 3359 3361# 3361 3363# 3363 3365# 3365 3367# 3367
3369# 3369 3371# 3371 3373# 3373 3375# 3375 3377# 3377 3379# 3379 3381# 3381
3383# 3383 3385# 3385 3387# 3387 3392# 3392 3394# 3394 3396# 3396 3398# 3398
3400# 3400 3402# 3402 3404# 3404 3406# 3406 3408# 3408 3410# 3410 3412# 3412
3414# 3414 3416# 3416 3418# 3418 3420# 3420 3422# 3422 3424# 3424 3426# 3426
3428# 3428 3433# 3433 3435# 3435 3437# 3437 3442# 3442 3444# 3444 3446# 3446
3448# 3448 3450# 3450 3452# 3452 3454# 3454 3456# 3456 3458# 3458 3460# 3460
3462# 3462 3467# 3467 3469# 3469 3471# 3471 3473# 3473 3475# 3475 3477# 3477
3479# 3479 3481# 3481 3483# 3483 3485# 3485 3487# 3487 3489# 3489 3491# 3491
3493# 3493 3495# 3495 3497# 3497 3499# 3499 3501# 3501 3503# 3503 3508# 3508
3510# 3510 3512# 3512 3525# 3525 3527# 3527 3529# 3529 3531# 3531 3533# 3533
3535# 3535 3537# 3537 3539# 3539 3541# 3541 3546# 3546 3548# 3548 3550# 3550
3552# 3552 3557# 3557 3559# 3559 3561# 3561 3563# 3563 3565# 3565 3567# 3567
3668# 3668 3670# 3670 3672# 3672 3674# 3674 3676# 3676 3686# 3686 3688# 3688
3690# 3690 3692# 3692 3694# 3694 3699# 3699 3701# 3701 3703# 3703 3705# 3705
3707# 3707 3709# 3709 3711# 3711 3716# 3716 3718# 3718 3720# 3720 3722# 3722
3724# 3724 3726# 3726 3728# 3728 3733# 3733 3735# 3735 3737# 3737 3739# 3739
3741# 3741 3743# 3743 3745# 3745 3750# 3750 3752# 3752 3754# 3754 3756# 3756
3758# 3758 3760# 3760 3762# 3762 3764# 3764 3771# 3771 3773# 3773 3775# 3775
3777# 3777 3779# 3779 3781# 3781 3783# 3783 3785# 3785 3787# 3787 3789# 3789
3791# 3791 3793# 3793 3795# 3795 3797# 3797 3799# 3799 3801# 3801 3803# 3803
3805# 3805 3807# 3807 3809# 3809 3811# 3811 3813# 3813 3815# 3815 3817# 3817
3819# 3819 3821# 3821 3823# 3823 3825# 3825 3827# 3827 3829# 3829 3831# 3831
3833# 3833 3835# 3835 3837# 3837 3839# 3839 3841# 3841 3843# 3843 3845# 3845
3847# 3847 3849# 3849 3851# 3851 3853# 3853 3855# 3855 3857# 3857 3859# 3859
3861# 3861 3863# 3863 3865# 3865 3867# 3867 3869# 3869 3871# 3871 3873# 3873
3875# 3875 3882# 3882 3884# 3884 3891# 3891 3893# 3893 3895# 3895 3989# 3989
3991# 3991 3993# 3993 3995# 3995 3997# 3997 4006# 4006 4008# 4008 4010# 4010
4012# 4012 4014# 4014 4019# 4019 4021# 4021 4023# 4023 4025# 4025 4027# 4027
4029# 4029 4031# 4031 4036# 4036 4038# 4038 4040# 4040 4042# 4042 4044# 4044
4046# 4046 4048# 4048 4053# 4053 4055# 4055 4057# 4057 4059# 4059 4061# 4061
4063# 4063 4065# 4065 4070# 4070 4072# 4072 4074# 4074 4076# 4076 4078# 4078
4080# 4080 4082# 4082 4084# 4084 4091# 4091 4093# 4093 4095# 4095 4097# 4097
4099# 4099 4101# 4101 4103# 4103 4105# 4105 4107# 4107 4109# 4109 4111# 4111
4113# 4113 4115# 4115 4117# 4117 4119# 4119 4121# 4121 4123# 4123 4125# 4125
4127# 4127 4129# 4129 4131# 4131 4133# 4133 4135# 4135 4137# 4137 4139# 4139
4141# 4141 4143# 4143 4145# 4145 4147# 4147 4149# 4149 4151# 4151 4153# 4153
4155# 4155 4157# 4157 4159# 4159 4161# 4161 4163# 4163 4165# 4165 4167# 4167
4169# 4169 4171# 4171 4173# 4173 4175# 4175 4177# 4177 4179# 4179 4181# 4181
4183# 4183 4185# 4185 4187# 4187 4189# 4189 4196# 4196 4198# 4198 4205# 4205
4207# 4207 4209# 4209 4295# 4295 4297# 4297 4299# 4299 4301# 4301 4303# 4303
4312# 4312 4314# 4314 4316# 4316 4318# 4318 4320# 4320 4322# 4322 4324# 4324
4326# 4326 4328# 4328 4330# 4330 4332# 4332 4337# 4337 4339# 4339 4341# 4341 SEQ 0700
4343# 4343 4345# 4345 4347# 4347 4349# 4349 4354# 4354 4356# 4356 4358# 4358
4360# 4360 4362# 4362 4364# 4364 4366# 4366 4371# 4371 4373# 4373 4375# 4375
4377# 4377 4379# 4379 4381# 4381 4383# 4383 4388# 4388 4390# 4390 4392# 4392
4394# 4394 4396# 4396 4398# 4398 4400# 4400 4402# 4402 4409# 4409 4411# 4411
4413# 4413 4415# 4415 4417# 4417 4419# 4419 4421# 4421 4423# 4423 4425# 4425
4427# 4427 4429# 4429 4431# 4431 4433# 4433 4435# 4435 4437# 4437 4439# 4439
4441# 4441 4443# 4443 4445# 4445 4447# 4447 4449# 4449 4451# 4451 4453# 4453
4455# 4455 4457# 4457 4459# 4459 4461# 4461 4463# 4463 4465# 4465 4467# 4467
4469# 4469 4471# 4471 4473# 4473 4475# 4475 4477# 4477 4479# 4479 4481# 4481
4483# 4483 4485# 4485 4487# 4487 4489# 4489 4491# 4491 4493# 4493 4495# 4495
4497# 4497 4504# 4504 4506# 4506 4513# 4513 4515# 4515 4517# 4517 4598# 4598
4600# 4600 4602# 4602 4604# 4604 4614# 4614 4616# 4616 4618# 4618 4620# 4620
4622# 4622 4624# 4624 4626# 4626 4632# 4632 4634# 4634 4636# 4636 4638# 4638
4640# 4640 4645# 4645 4647# 4647 4649# 4649 4651# 4651 4653# 4653 4655# 4655
$B 120# 120 122# 122 124# 124 126# 126 128# 128 138# 138 140# 140
142# 142 144# 144 146# 146 148# 148 150# 150 152# 152 154# 154
159# 159 161# 161 163# 163 165# 165 167# 167 169# 169 171# 171
173# 173 178# 178 180# 180 182# 182 184# 184 186# 186 188# 188
190# 190 192# 192 194# 194 196# 196 198# 198 203# 203 205# 205
207# 207 209# 209 211# 211 213# 213 215# 215 217# 217 219# 219
221# 221 223# 223 225# 225 316# 316 318# 318 320# 320 322# 322
324# 324 335# 335 337# 337 339# 339 341# 341 343# 343 345# 345
348# 348 350# 350 352# 352 354# 354 356# 356 358# 358 360# 360
369# 369 371# 371 373# 373 375# 375 377# 377 379# 379 381# 381
383# 383 385# 385 390# 390 392# 392 394# 394 396# 396 398# 398
400# 400 402# 402 404# 404 406# 406 408# 408 410# 410 412# 412
503# 503 505# 505 507# 507 509# 509 511# 511 522# 522 524# 524
526# 526 528# 528 530# 530 532# 532 535# 535 537# 537 539# 539
541# 541 543# 543 545# 545 547# 547 556# 556 558# 558 560# 560
562# 562 564# 564 566# 566 568# 568 570# 570 572# 572 577# 577
579# 579 581# 581 583# 583 585# 585 587# 587 589# 589 591# 591
593# 593 595# 595 597# 597 599# 599 692# 692 694# 694 696# 696
698# 698 700# 700 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 731# 731 733# 733 735# 735
737# 737 739# 739 741# 741 743# 743 745# 745 747# 747 752# 752
754# 754 756# 756 758# 758 760# 760 762# 762 764# 764 766# 766
768# 768 770# 770 772# 772 777# 777 779# 779 781# 781 783# 783
785# 785 787# 787 789# 789 791# 791 793# 793 795# 795 797# 797
799# 799 801# 801 903# 903 905# 905 907# 907 909# 909 911# 911
924# 924 926# 926 928# 928 930# 930 932# 932 934# 934 936# 936
942# 942 944# 944 946# 946 948# 948 950# 950 952# 952 954# 954
963# 963 965# 965 967# 967 969# 969 975# 975 977# 977 979# 979
981# 981 983# 983 985# 985 987# 987 993# 993 995# 995 997# 997
999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009 1015# 1015
1017# 1017 1019# 1019 1021# 1021 1023# 1023 1025# 1025 1027# 1027 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1148# 1148 1150# 1150 1152# 1152
1154# 1154 1156# 1156 1158# 1158 1160# 1160 1162# 1162 1164# 1164 1169# 1169
1171# 1171 1173# 1173 1175# 1175 1177# 1177 1179# 1179 1181# 1181 1183# 1183
1188# 1188 1190# 1190 1192# 1192 1197# 1197 1199# 1199 1201# 1201 1203# 1203
1205# 1205 1207# 1207 1209# 1209 1211# 1211 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1235# 1235 1237# 1237
1239# 1239 1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262
1264# 1264 1266# 1266 1271# 1271 1273# 1273 1275# 1275 1277# 1277 1279# 1279 SEQ 0701
1281# 1281 1286# 1286 1288# 1288 1290# 1290 1292# 1292 1294# 1294 1296# 1296
1395# 1395 1397# 1397 1399# 1399 1401# 1401 1403# 1403 1414# 1414 1416# 1416
1421# 1421 1423# 1423 1425# 1425 1434# 1434 1436# 1436 1438# 1438 1440# 1440
1442# 1442 1447# 1447 1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457
1459# 1459 1461# 1461 1463# 1463 1465# 1465 1467# 1467 1472# 1472 1474# 1474
1476# 1476 1478# 1478 1480# 1480 1482# 1482 1484# 1484 1486# 1486 1488# 1488
1490# 1490 1586# 1586 1588# 1588 1590# 1590 1592# 1592 1594# 1594 1605# 1605
1607# 1607 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1618# 1618 1620# 1620
1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630 1639# 1639 1641# 1641
1643# 1643 1645# 1645 1647# 1647 1649# 1649 1651# 1651 1653# 1653 1655# 1655
1657# 1657 1662# 1662 1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672
1674# 1674 1679# 1679 1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689
1691# 1691 1693# 1693 1695# 1695 1697# 1697 1699# 1699 1701# 1701 1703# 1703
1705# 1705 1707# 1707 1709# 1709 1711# 1711 1713# 1713 1715# 1715 1717# 1717
1722# 1722 1724# 1724 1726# 1726 1728# 1728 1730# 1730 1735# 1735 1737# 1737
1739# 1739 1741# 1741 1743# 1743 1745# 1745 1747# 1747 1841# 1841 1843# 1843
1845# 1845 1847# 1847 1849# 1849 1860# 1860 1862# 1862 1864# 1864 1866# 1866
1868# 1868 1870# 1870 1873# 1873 1875# 1875 1877# 1877 1879# 1879 1881# 1881
1883# 1883 1885# 1885 1894# 1894 1896# 1896 1898# 1898 1900# 1900 1902# 1902
1904# 1904 1906# 1906 1908# 1908 1910# 1910 1912# 1912 1917# 1917 1919# 1919
1921# 1921 1923# 1923 1925# 1925 1927# 1927 1929# 1929 1934# 1934 1936# 1936
1938# 1938 1940# 1940 1942# 1942 1944# 1944 1946# 1946 1948# 1948 1950# 1950
1952# 1952 1954# 1954 1956# 1956 1958# 1958 1960# 1960 1962# 1962 1964# 1964
1966# 1966 1968# 1968 1970# 1970 1972# 1972 1977# 1977 1979# 1979 1981# 1981
1983# 1983 1985# 1985 1990# 1990 1992# 1992 1994# 1994 1996# 1996 1998# 1998
2000# 2000 2002# 2002 2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108
2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126 2128# 2128 2130# 2130
2132# 2132 2134# 2134 2136# 2136 2141# 2141 2143# 2143 2145# 2145 2147# 2147
2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159 2165# 2165
2167# 2167 2169# 2169 2171# 2171 2173# 2173 2175# 2175 2177# 2177 2179# 2179
2181# 2181 2183# 2183 2185# 2185 2187# 2187 2189# 2189 2191# 2191 2196# 2196
2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206 2208# 2208 2210# 2210
2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220 2222# 2222 2224# 2224
2226# 2226 2228# 2228 2230# 2230 2232# 2232 2237# 2237 2239# 2239 2241# 2241
2243# 2243 2245# 2245 2247# 2247 2249# 2249 2251# 2251 2253# 2253 2255# 2255
2257# 2257 2259# 2259 2261# 2261 2263# 2263 2265# 2265 2267# 2267 2269# 2269
2271# 2271 2273# 2273 2275# 2275 2277# 2277 2282# 2282 2284# 2284 2286# 2286
2288# 2288 2290# 2290 2293# 2293 2295# 2295 2297# 2297 2299# 2299 2301# 2301
2306# 2306 2308# 2308 2310# 2310 2312# 2312 2314# 2314 2316# 2316 2318# 2318
2411# 2411 2413# 2413 2415# 2415 2417# 2417 2419# 2419 2424# 2424 2426# 2426
2428# 2428 2430# 2430 2432# 2432 2446# 2446 2448# 2448 2450# 2450 2452# 2452
2454# 2454 2456# 2456 2458# 2458 2460# 2460 2462# 2462 2464# 2464 2469# 2469
2471# 2471 2473# 2473 2475# 2475 2477# 2477 2479# 2479 2481# 2481 2483# 2483
2485# 2485 2490# 2490 2492# 2492 2494# 2494 2496# 2496 2498# 2498 2500# 2500
2502# 2502 2504# 2504 2506# 2506 2508# 2508 2510# 2510 2512# 2512 2514# 2514
2516# 2516 2518# 2518 2520# 2520 2522# 2522 2524# 2524 2526# 2526 2528# 2528
2533# 2533 2535# 2535 2537# 2537 2539# 2539 2541# 2541 2543# 2543 2545# 2545
2638# 2638 2640# 2640 2642# 2642 2644# 2644 2646# 2646 2651# 2651 2653# 2653
2655# 2655 2657# 2657 2659# 2659 2673# 2673 2675# 2675 2677# 2677 2679# 2679
2681# 2681 2683# 2683 2685# 2685 2687# 2687 2689# 2689 2691# 2691 2696# 2696
2698# 2698 2700# 2700 2702# 2702 2704# 2704 2706# 2706 2708# 2708 2710# 2710
2712# 2712 2717# 2717 2719# 2719 2721# 2721 2723# 2723 2725# 2725 2727# 2727
2729# 2729 2731# 2731 2733# 2733 2735# 2735 2737# 2737 2739# 2739 2741# 2741 SEQ 0702
2743# 2743 2745# 2745 2747# 2747 2749# 2749 2751# 2751 2753# 2753 2755# 2755
2760# 2760 2762# 2762 2764# 2764 2766# 2766 2768# 2768 2770# 2770 2772# 2772
2863# 2863 2865# 2865 2867# 2867 2869# 2869 2871# 2871 2882# 2882 2884# 2884
2886# 2886 2888# 2888 2890# 2890 2892# 2892 2894# 2894 2896# 2896 2898# 2898
2900# 2900 2905# 2905 2907# 2907 2909# 2909 2911# 2911 2913# 2913 2915# 2915
2917# 2917 2919# 2919 2921# 2921 2926# 2926 2928# 2928 2930# 2930 2932# 2932
2934# 2934 2936# 2936 2938# 2938 2940# 2940 2945# 2945 2947# 2947 2949# 2949
2951# 2951 2953# 2953 2955# 2955 2957# 2957 2959# 2959 2961# 2961 2963# 2963
2965# 2965 2967# 2967 2969# 2969 2971# 2971 2973# 2973 2975# 2975 2977# 2977
2979# 2979 2981# 2981 2983# 2983 2988# 2988 2990# 2990 2992# 2992 2994# 2994
2996# 2996 2998# 2998 3000# 3000 3091# 3091 3093# 3093 3095# 3095 3097# 3097
3099# 3099 3110# 3110 3112# 3112 3114# 3114 3116# 3116 3118# 3118 3120# 3120
3122# 3122 3124# 3124 3126# 3126 3128# 3128 3133# 3133 3135# 3135 3137# 3137
3139# 3139 3141# 3141 3143# 3143 3145# 3145 3147# 3147 3149# 3149 3154# 3154
3156# 3156 3158# 3158 3160# 3160 3162# 3162 3164# 3164 3166# 3166 3168# 3168
3173# 3173 3175# 3175 3177# 3177 3179# 3179 3181# 3181 3183# 3183 3185# 3185
3187# 3187 3189# 3189 3191# 3191 3193# 3193 3195# 3195 3197# 3197 3199# 3199
3201# 3201 3203# 3203 3205# 3205 3207# 3207 3209# 3209 3211# 3211 3216# 3216
3218# 3218 3220# 3220 3222# 3222 3224# 3224 3226# 3226 3228# 3228 3329# 3329
3331# 3331 3333# 3333 3335# 3335 3337# 3337 3349# 3349 3351# 3351 3353# 3353
3355# 3355 3357# 3357 3359# 3359 3361# 3361 3363# 3363 3365# 3365 3367# 3367
3369# 3369 3371# 3371 3373# 3373 3375# 3375 3377# 3377 3379# 3379 3381# 3381
3383# 3383 3385# 3385 3387# 3387 3392# 3392 3394# 3394 3396# 3396 3398# 3398
3400# 3400 3402# 3402 3404# 3404 3406# 3406 3408# 3408 3410# 3410 3412# 3412
3414# 3414 3416# 3416 3418# 3418 3420# 3420 3422# 3422 3424# 3424 3426# 3426
3428# 3428 3433# 3433 3435# 3435 3437# 3437 3442# 3442 3444# 3444 3446# 3446
3448# 3448 3450# 3450 3452# 3452 3454# 3454 3456# 3456 3458# 3458 3460# 3460
3462# 3462 3467# 3467 3469# 3469 3471# 3471 3473# 3473 3475# 3475 3477# 3477
3479# 3479 3481# 3481 3483# 3483 3485# 3485 3487# 3487 3489# 3489 3491# 3491
3493# 3493 3495# 3495 3497# 3497 3499# 3499 3501# 3501 3503# 3503 3508# 3508
3510# 3510 3512# 3512 3525# 3525 3527# 3527 3529# 3529 3531# 3531 3533# 3533
3535# 3535 3537# 3537 3539# 3539 3541# 3541 3546# 3546 3548# 3548 3550# 3550
3552# 3552 3557# 3557 3559# 3559 3561# 3561 3563# 3563 3565# 3565 3567# 3567
3668# 3668 3670# 3670 3672# 3672 3674# 3674 3676# 3676 3686# 3686 3688# 3688
3690# 3690 3692# 3692 3694# 3694 3699# 3699 3701# 3701 3703# 3703 3705# 3705
3707# 3707 3709# 3709 3711# 3711 3716# 3716 3718# 3718 3720# 3720 3722# 3722
3724# 3724 3726# 3726 3728# 3728 3733# 3733 3735# 3735 3737# 3737 3739# 3739
3741# 3741 3743# 3743 3745# 3745 3750# 3750 3752# 3752 3754# 3754 3756# 3756
3758# 3758 3760# 3760 3762# 3762 3764# 3764 3771# 3771 3773# 3773 3775# 3775
3777# 3777 3779# 3779 3781# 3781 3783# 3783 3785# 3785 3787# 3787 3789# 3789
3791# 3791 3793# 3793 3795# 3795 3797# 3797 3799# 3799 3801# 3801 3803# 3803
3805# 3805 3807# 3807 3809# 3809 3811# 3811 3813# 3813 3815# 3815 3817# 3817
3819# 3819 3821# 3821 3823# 3823 3825# 3825 3827# 3827 3829# 3829 3831# 3831
3833# 3833 3835# 3835 3837# 3837 3839# 3839 3841# 3841 3843# 3843 3845# 3845
3847# 3847 3849# 3849 3851# 3851 3853# 3853 3855# 3855 3857# 3857 3859# 3859
3861# 3861 3863# 3863 3865# 3865 3867# 3867 3869# 3869 3871# 3871 3873# 3873
3875# 3875 3882# 3882 3884# 3884 3891# 3891 3893# 3893 3895# 3895 3989# 3989
3991# 3991 3993# 3993 3995# 3995 3997# 3997 4006# 4006 4008# 4008 4010# 4010
4012# 4012 4014# 4014 4019# 4019 4021# 4021 4023# 4023 4025# 4025 4027# 4027
4029# 4029 4031# 4031 4036# 4036 4038# 4038 4040# 4040 4042# 4042 4044# 4044
4046# 4046 4048# 4048 4053# 4053 4055# 4055 4057# 4057 4059# 4059 4061# 4061
4063# 4063 4065# 4065 4070# 4070 4072# 4072 4074# 4074 4076# 4076 4078# 4078
4080# 4080 4082# 4082 4084# 4084 4091# 4091 4093# 4093 4095# 4095 4097# 4097 SEQ 0703
4099# 4099 4101# 4101 4103# 4103 4105# 4105 4107# 4107 4109# 4109 4111# 4111
4113# 4113 4115# 4115 4117# 4117 4119# 4119 4121# 4121 4123# 4123 4125# 4125
4127# 4127 4129# 4129 4131# 4131 4133# 4133 4135# 4135 4137# 4137 4139# 4139
4141# 4141 4143# 4143 4145# 4145 4147# 4147 4149# 4149 4151# 4151 4153# 4153
4155# 4155 4157# 4157 4159# 4159 4161# 4161 4163# 4163 4165# 4165 4167# 4167
4169# 4169 4171# 4171 4173# 4173 4175# 4175 4177# 4177 4179# 4179 4181# 4181
4183# 4183 4185# 4185 4187# 4187 4189# 4189 4196# 4196 4198# 4198 4205# 4205
4207# 4207 4209# 4209 4295# 4295 4297# 4297 4299# 4299 4301# 4301 4303# 4303
4312# 4312 4314# 4314 4316# 4316 4318# 4318 4320# 4320 4322# 4322 4324# 4324
4326# 4326 4328# 4328 4330# 4330 4332# 4332 4337# 4337 4339# 4339 4341# 4341
4343# 4343 4345# 4345 4347# 4347 4349# 4349 4354# 4354 4356# 4356 4358# 4358
4360# 4360 4362# 4362 4364# 4364 4366# 4366 4371# 4371 4373# 4373 4375# 4375
4377# 4377 4379# 4379 4381# 4381 4383# 4383 4388# 4388 4390# 4390 4392# 4392
4394# 4394 4396# 4396 4398# 4398 4400# 4400 4402# 4402 4409# 4409 4411# 4411
4413# 4413 4415# 4415 4417# 4417 4419# 4419 4421# 4421 4423# 4423 4425# 4425
4427# 4427 4429# 4429 4431# 4431 4433# 4433 4435# 4435 4437# 4437 4439# 4439
4441# 4441 4443# 4443 4445# 4445 4447# 4447 4449# 4449 4451# 4451 4453# 4453
4455# 4455 4457# 4457 4459# 4459 4461# 4461 4463# 4463 4465# 4465 4467# 4467
4469# 4469 4471# 4471 4473# 4473 4475# 4475 4477# 4477 4479# 4479 4481# 4481
4483# 4483 4485# 4485 4487# 4487 4489# 4489 4491# 4491 4493# 4493 4495# 4495
4497# 4497 4504# 4504 4506# 4506 4513# 4513 4515# 4515 4517# 4517 4598# 4598
4600# 4600 4602# 4602 4604# 4604 4614# 4614 4616# 4616 4618# 4618 4620# 4620
4622# 4622 4624# 4624 4626# 4626 4632# 4632 4634# 4634 4636# 4636 4638# 4638
4640# 4640 4645# 4645 4647# 4647 4649# 4649 4651# 4651 4653# 4653 4655# 4655
$CHR 120# 120 122# 122 124# 124 126# 126 128# 128 138# 138 140# 140
142# 142 144# 144 146# 146 148# 148 150# 150 152# 152 154# 154
159# 159 161# 161 163# 163 165# 165 167# 167 169# 169 171# 171
173# 173 178# 178 180# 180 182# 182 184# 184 186# 186 188# 188
190# 190 192# 192 194# 194 196# 196 198# 198 203# 203 205# 205
207# 207 209# 209 211# 211 213# 213 215# 215 217# 217 219# 219
221# 221 223# 223 225# 225 316# 316 318# 318 320# 320 322# 322
324# 324 335# 335 337# 337 339# 339 341# 341 343# 343 345# 345
348# 348 350# 350 352# 352 354# 354 356# 356 358# 358 360# 360
369# 369 371# 371 373# 373 375# 375 377# 377 379# 379 381# 381
383# 383 385# 385 390# 390 392# 392 394# 394 396# 396 398# 398
400# 400 402# 402 404# 404 406# 406 408# 408 410# 410 412# 412
503# 503 505# 505 507# 507 509# 509 511# 511 522# 522 524# 524
526# 526 528# 528 530# 530 532# 532 535# 535 537# 537 539# 539
541# 541 543# 543 545# 545 547# 547 556# 556 558# 558 560# 560
562# 562 564# 564 566# 566 568# 568 570# 570 572# 572 577# 577
579# 579 581# 581 583# 583 585# 585 587# 587 589# 589 591# 591
593# 593 595# 595 597# 597 599# 599 692# 692 694# 694 696# 696
698# 698 700# 700 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 731# 731 733# 733 735# 735
737# 737 739# 739 741# 741 743# 743 745# 745 747# 747 752# 752
754# 754 756# 756 758# 758 760# 760 762# 762 764# 764 766# 766
768# 768 770# 770 772# 772 777# 777 779# 779 781# 781 783# 783
785# 785 787# 787 789# 789 791# 791 793# 793 795# 795 797# 797
799# 799 801# 801 903# 903 905# 905 907# 907 909# 909 911# 911
924# 924 926# 926 928# 928 930# 930 932# 932 934# 934 936# 936
942# 942 944# 944 946# 946 948# 948 950# 950 952# 952 954# 954
963# 963 965# 965 967# 967 969# 969 975# 975 977# 977 979# 979
981# 981 983# 983 985# 985 987# 987 993# 993 995# 995 997# 997 SEQ 0704
999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009 1015# 1015
1017# 1017 1019# 1019 1021# 1021 1023# 1023 1025# 1025 1027# 1027 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1148# 1148 1150# 1150 1152# 1152
1154# 1154 1156# 1156 1158# 1158 1160# 1160 1162# 1162 1164# 1164 1169# 1169
1171# 1171 1173# 1173 1175# 1175 1177# 1177 1179# 1179 1181# 1181 1183# 1183
1188# 1188 1190# 1190 1192# 1192 1197# 1197 1199# 1199 1201# 1201 1203# 1203
1205# 1205 1207# 1207 1209# 1209 1211# 1211 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1235# 1235 1237# 1237
1239# 1239 1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262
1264# 1264 1266# 1266 1271# 1271 1273# 1273 1275# 1275 1277# 1277 1279# 1279
1281# 1281 1286# 1286 1288# 1288 1290# 1290 1292# 1292 1294# 1294 1296# 1296
1395# 1395 1397# 1397 1399# 1399 1401# 1401 1403# 1403 1414# 1414 1416# 1416
1421# 1421 1423# 1423 1425# 1425 1434# 1434 1436# 1436 1438# 1438 1440# 1440
1442# 1442 1447# 1447 1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457
1459# 1459 1461# 1461 1463# 1463 1465# 1465 1467# 1467 1472# 1472 1474# 1474
1476# 1476 1478# 1478 1480# 1480 1482# 1482 1484# 1484 1486# 1486 1488# 1488
1490# 1490 1586# 1586 1588# 1588 1590# 1590 1592# 1592 1594# 1594 1605# 1605
1607# 1607 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1618# 1618 1620# 1620
1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630 1639# 1639 1641# 1641
1643# 1643 1645# 1645 1647# 1647 1649# 1649 1651# 1651 1653# 1653 1655# 1655
1657# 1657 1662# 1662 1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672
1674# 1674 1679# 1679 1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689
1691# 1691 1693# 1693 1695# 1695 1697# 1697 1699# 1699 1701# 1701 1703# 1703
1705# 1705 1707# 1707 1709# 1709 1711# 1711 1713# 1713 1715# 1715 1717# 1717
1722# 1722 1724# 1724 1726# 1726 1728# 1728 1730# 1730 1735# 1735 1737# 1737
1739# 1739 1741# 1741 1743# 1743 1745# 1745 1747# 1747 1841# 1841 1843# 1843
1845# 1845 1847# 1847 1849# 1849 1860# 1860 1862# 1862 1864# 1864 1866# 1866
1868# 1868 1870# 1870 1873# 1873 1875# 1875 1877# 1877 1879# 1879 1881# 1881
1883# 1883 1885# 1885 1894# 1894 1896# 1896 1898# 1898 1900# 1900 1902# 1902
1904# 1904 1906# 1906 1908# 1908 1910# 1910 1912# 1912 1917# 1917 1919# 1919
1921# 1921 1923# 1923 1925# 1925 1927# 1927 1929# 1929 1934# 1934 1936# 1936
1938# 1938 1940# 1940 1942# 1942 1944# 1944 1946# 1946 1948# 1948 1950# 1950
1952# 1952 1954# 1954 1956# 1956 1958# 1958 1960# 1960 1962# 1962 1964# 1964
1966# 1966 1968# 1968 1970# 1970 1972# 1972 1977# 1977 1979# 1979 1981# 1981
1983# 1983 1985# 1985 1990# 1990 1992# 1992 1994# 1994 1996# 1996 1998# 1998
2000# 2000 2002# 2002 2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108
2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126 2128# 2128 2130# 2130
2132# 2132 2134# 2134 2136# 2136 2141# 2141 2143# 2143 2145# 2145 2147# 2147
2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159 2165# 2165
2167# 2167 2169# 2169 2171# 2171 2173# 2173 2175# 2175 2177# 2177 2179# 2179
2181# 2181 2183# 2183 2185# 2185 2187# 2187 2189# 2189 2191# 2191 2196# 2196
2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206 2208# 2208 2210# 2210
2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220 2222# 2222 2224# 2224
2226# 2226 2228# 2228 2230# 2230 2232# 2232 2237# 2237 2239# 2239 2241# 2241
2243# 2243 2245# 2245 2247# 2247 2249# 2249 2251# 2251 2253# 2253 2255# 2255
2257# 2257 2259# 2259 2261# 2261 2263# 2263 2265# 2265 2267# 2267 2269# 2269
2271# 2271 2273# 2273 2275# 2275 2277# 2277 2282# 2282 2284# 2284 2286# 2286
2288# 2288 2290# 2290 2293# 2293 2295# 2295 2297# 2297 2299# 2299 2301# 2301
2306# 2306 2308# 2308 2310# 2310 2312# 2312 2314# 2314 2316# 2316 2318# 2318
2411# 2411 2413# 2413 2415# 2415 2417# 2417 2419# 2419 2424# 2424 2426# 2426
2428# 2428 2430# 2430 2432# 2432 2446# 2446 2448# 2448 2450# 2450 2452# 2452
2454# 2454 2456# 2456 2458# 2458 2460# 2460 2462# 2462 2464# 2464 2469# 2469
2471# 2471 2473# 2473 2475# 2475 2477# 2477 2479# 2479 2481# 2481 2483# 2483 SEQ 0705
2485# 2485 2490# 2490 2492# 2492 2494# 2494 2496# 2496 2498# 2498 2500# 2500
2502# 2502 2504# 2504 2506# 2506 2508# 2508 2510# 2510 2512# 2512 2514# 2514
2516# 2516 2518# 2518 2520# 2520 2522# 2522 2524# 2524 2526# 2526 2528# 2528
2533# 2533 2535# 2535 2537# 2537 2539# 2539 2541# 2541 2543# 2543 2545# 2545
2638# 2638 2640# 2640 2642# 2642 2644# 2644 2646# 2646 2651# 2651 2653# 2653
2655# 2655 2657# 2657 2659# 2659 2673# 2673 2675# 2675 2677# 2677 2679# 2679
2681# 2681 2683# 2683 2685# 2685 2687# 2687 2689# 2689 2691# 2691 2696# 2696
2698# 2698 2700# 2700 2702# 2702 2704# 2704 2706# 2706 2708# 2708 2710# 2710
2712# 2712 2717# 2717 2719# 2719 2721# 2721 2723# 2723 2725# 2725 2727# 2727
2729# 2729 2731# 2731 2733# 2733 2735# 2735 2737# 2737 2739# 2739 2741# 2741
2743# 2743 2745# 2745 2747# 2747 2749# 2749 2751# 2751 2753# 2753 2755# 2755
2760# 2760 2762# 2762 2764# 2764 2766# 2766 2768# 2768 2770# 2770 2772# 2772
2863# 2863 2865# 2865 2867# 2867 2869# 2869 2871# 2871 2882# 2882 2884# 2884
2886# 2886 2888# 2888 2890# 2890 2892# 2892 2894# 2894 2896# 2896 2898# 2898
2900# 2900 2905# 2905 2907# 2907 2909# 2909 2911# 2911 2913# 2913 2915# 2915
2917# 2917 2919# 2919 2921# 2921 2926# 2926 2928# 2928 2930# 2930 2932# 2932
2934# 2934 2936# 2936 2938# 2938 2940# 2940 2945# 2945 2947# 2947 2949# 2949
2951# 2951 2953# 2953 2955# 2955 2957# 2957 2959# 2959 2961# 2961 2963# 2963
2965# 2965 2967# 2967 2969# 2969 2971# 2971 2973# 2973 2975# 2975 2977# 2977
2979# 2979 2981# 2981 2983# 2983 2988# 2988 2990# 2990 2992# 2992 2994# 2994
2996# 2996 2998# 2998 3000# 3000 3091# 3091 3093# 3093 3095# 3095 3097# 3097
3099# 3099 3110# 3110 3112# 3112 3114# 3114 3116# 3116 3118# 3118 3120# 3120
3122# 3122 3124# 3124 3126# 3126 3128# 3128 3133# 3133 3135# 3135 3137# 3137
3139# 3139 3141# 3141 3143# 3143 3145# 3145 3147# 3147 3149# 3149 3154# 3154
3156# 3156 3158# 3158 3160# 3160 3162# 3162 3164# 3164 3166# 3166 3168# 3168
3173# 3173 3175# 3175 3177# 3177 3179# 3179 3181# 3181 3183# 3183 3185# 3185
3187# 3187 3189# 3189 3191# 3191 3193# 3193 3195# 3195 3197# 3197 3199# 3199
3201# 3201 3203# 3203 3205# 3205 3207# 3207 3209# 3209 3211# 3211 3216# 3216
3218# 3218 3220# 3220 3222# 3222 3224# 3224 3226# 3226 3228# 3228 3329# 3329
3331# 3331 3333# 3333 3335# 3335 3337# 3337 3349# 3349 3351# 3351 3353# 3353
3355# 3355 3357# 3357 3359# 3359 3361# 3361 3363# 3363 3365# 3365 3367# 3367
3369# 3369 3371# 3371 3373# 3373 3375# 3375 3377# 3377 3379# 3379 3381# 3381
3383# 3383 3385# 3385 3387# 3387 3392# 3392 3394# 3394 3396# 3396 3398# 3398
3400# 3400 3402# 3402 3404# 3404 3406# 3406 3408# 3408 3410# 3410 3412# 3412
3414# 3414 3416# 3416 3418# 3418 3420# 3420 3422# 3422 3424# 3424 3426# 3426
3428# 3428 3433# 3433 3435# 3435 3437# 3437 3442# 3442 3444# 3444 3446# 3446
3448# 3448 3450# 3450 3452# 3452 3454# 3454 3456# 3456 3458# 3458 3460# 3460
3462# 3462 3467# 3467 3469# 3469 3471# 3471 3473# 3473 3475# 3475 3477# 3477
3479# 3479 3481# 3481 3483# 3483 3485# 3485 3487# 3487 3489# 3489 3491# 3491
3493# 3493 3495# 3495 3497# 3497 3499# 3499 3501# 3501 3503# 3503 3508# 3508
3510# 3510 3512# 3512 3525# 3525 3527# 3527 3529# 3529 3531# 3531 3533# 3533
3535# 3535 3537# 3537 3539# 3539 3541# 3541 3546# 3546 3548# 3548 3550# 3550
3552# 3552 3557# 3557 3559# 3559 3561# 3561 3563# 3563 3565# 3565 3567# 3567
3668# 3668 3670# 3670 3672# 3672 3674# 3674 3676# 3676 3686# 3686 3688# 3688
3690# 3690 3692# 3692 3694# 3694 3699# 3699 3701# 3701 3703# 3703 3705# 3705
3707# 3707 3709# 3709 3711# 3711 3716# 3716 3718# 3718 3720# 3720 3722# 3722
3724# 3724 3726# 3726 3728# 3728 3733# 3733 3735# 3735 3737# 3737 3739# 3739
3741# 3741 3743# 3743 3745# 3745 3750# 3750 3752# 3752 3754# 3754 3756# 3756
3758# 3758 3760# 3760 3762# 3762 3764# 3764 3771# 3771 3773# 3773 3775# 3775
3777# 3777 3779# 3779 3781# 3781 3783# 3783 3785# 3785 3787# 3787 3789# 3789
3791# 3791 3793# 3793 3795# 3795 3797# 3797 3799# 3799 3801# 3801 3803# 3803
3805# 3805 3807# 3807 3809# 3809 3811# 3811 3813# 3813 3815# 3815 3817# 3817
3819# 3819 3821# 3821 3823# 3823 3825# 3825 3827# 3827 3829# 3829 3831# 3831 SEQ 0706
3833# 3833 3835# 3835 3837# 3837 3839# 3839 3841# 3841 3843# 3843 3845# 3845
3847# 3847 3849# 3849 3851# 3851 3853# 3853 3855# 3855 3857# 3857 3859# 3859
3861# 3861 3863# 3863 3865# 3865 3867# 3867 3869# 3869 3871# 3871 3873# 3873
3875# 3875 3882# 3882 3884# 3884 3891# 3891 3893# 3893 3895# 3895 3989# 3989
3991# 3991 3993# 3993 3995# 3995 3997# 3997 4006# 4006 4008# 4008 4010# 4010
4012# 4012 4014# 4014 4019# 4019 4021# 4021 4023# 4023 4025# 4025 4027# 4027
4029# 4029 4031# 4031 4036# 4036 4038# 4038 4040# 4040 4042# 4042 4044# 4044
4046# 4046 4048# 4048 4053# 4053 4055# 4055 4057# 4057 4059# 4059 4061# 4061
4063# 4063 4065# 4065 4070# 4070 4072# 4072 4074# 4074 4076# 4076 4078# 4078
4080# 4080 4082# 4082 4084# 4084 4091# 4091 4093# 4093 4095# 4095 4097# 4097
4099# 4099 4101# 4101 4103# 4103 4105# 4105 4107# 4107 4109# 4109 4111# 4111
4113# 4113 4115# 4115 4117# 4117 4119# 4119 4121# 4121 4123# 4123 4125# 4125
4127# 4127 4129# 4129 4131# 4131 4133# 4133 4135# 4135 4137# 4137 4139# 4139
4141# 4141 4143# 4143 4145# 4145 4147# 4147 4149# 4149 4151# 4151 4153# 4153
4155# 4155 4157# 4157 4159# 4159 4161# 4161 4163# 4163 4165# 4165 4167# 4167
4169# 4169 4171# 4171 4173# 4173 4175# 4175 4177# 4177 4179# 4179 4181# 4181
4183# 4183 4185# 4185 4187# 4187 4189# 4189 4196# 4196 4198# 4198 4205# 4205
4207# 4207 4209# 4209 4295# 4295 4297# 4297 4299# 4299 4301# 4301 4303# 4303
4312# 4312 4314# 4314 4316# 4316 4318# 4318 4320# 4320 4322# 4322 4324# 4324
4326# 4326 4328# 4328 4330# 4330 4332# 4332 4337# 4337 4339# 4339 4341# 4341
4343# 4343 4345# 4345 4347# 4347 4349# 4349 4354# 4354 4356# 4356 4358# 4358
4360# 4360 4362# 4362 4364# 4364 4366# 4366 4371# 4371 4373# 4373 4375# 4375
4377# 4377 4379# 4379 4381# 4381 4383# 4383 4388# 4388 4390# 4390 4392# 4392
4394# 4394 4396# 4396 4398# 4398 4400# 4400 4402# 4402 4409# 4409 4411# 4411
4413# 4413 4415# 4415 4417# 4417 4419# 4419 4421# 4421 4423# 4423 4425# 4425
4427# 4427 4429# 4429 4431# 4431 4433# 4433 4435# 4435 4437# 4437 4439# 4439
4441# 4441 4443# 4443 4445# 4445 4447# 4447 4449# 4449 4451# 4451 4453# 4453
4455# 4455 4457# 4457 4459# 4459 4461# 4461 4463# 4463 4465# 4465 4467# 4467
4469# 4469 4471# 4471 4473# 4473 4475# 4475 4477# 4477 4479# 4479 4481# 4481
4483# 4483 4485# 4485 4487# 4487 4489# 4489 4491# 4491 4493# 4493 4495# 4495
4497# 4497 4504# 4504 4506# 4506 4513# 4513 4515# 4515 4517# 4517 4598# 4598
4600# 4600 4602# 4602 4604# 4604 4614# 4614 4616# 4616 4618# 4618 4620# 4620
4622# 4622 4624# 4624 4626# 4626 4632# 4632 4634# 4634 4636# 4636 4638# 4638
4640# 4640 4645# 4645 4647# 4647 4649# 4649 4651# 4651 4653# 4653 4655# 4655
$GARG 120# 120 122# 122 124# 124 126# 126 128# 128 138# 138 140# 140
142# 142 144# 144 146# 146 148# 148 150# 150 152# 152 154# 154
159# 159 161# 161 163# 163 165# 165 167# 167 169# 169 171# 171
173# 173 178# 178 180# 180 182# 182 184# 184 186# 186 188# 188
190# 190 192# 192 194# 194 196# 196 198# 198 203# 203 205# 205
207# 207 209# 209 211# 211 213# 213 215# 215 217# 217 219# 219
221# 221 223# 223 225# 225 316# 316 318# 318 320# 320 322# 322
324# 324 335# 335 337# 337 339# 339 341# 341 343# 343 345# 345
348# 348 350# 350 352# 352 354# 354 356# 356 358# 358 360# 360
369# 369 371# 371 373# 373 375# 375 377# 377 379# 379 381# 381
383# 383 385# 385 390# 390 392# 392 394# 394 396# 396 398# 398
400# 400 402# 402 404# 404 406# 406 408# 408 410# 410 412# 412
503# 503 505# 505 507# 507 509# 509 511# 511 522# 522 524# 524
526# 526 528# 528 530# 530 532# 532 535# 535 537# 537 539# 539
541# 541 543# 543 545# 545 547# 547 556# 556 558# 558 560# 560
562# 562 564# 564 566# 566 568# 568 570# 570 572# 572 577# 577
579# 579 581# 581 583# 583 585# 585 587# 587 589# 589 591# 591
593# 593 595# 595 597# 597 599# 599 692# 692 694# 694 696# 696
698# 698 700# 700 710# 710 712# 712 714# 714 716# 716 718# 718 SEQ 0707
720# 720 722# 722 724# 724 726# 726 731# 731 733# 733 735# 735
737# 737 739# 739 741# 741 743# 743 745# 745 747# 747 752# 752
754# 754 756# 756 758# 758 760# 760 762# 762 764# 764 766# 766
768# 768 770# 770 772# 772 777# 777 779# 779 781# 781 783# 783
785# 785 787# 787 789# 789 791# 791 793# 793 795# 795 797# 797
799# 799 801# 801 903# 903 905# 905 907# 907 909# 909 911# 911
924# 924 926# 926 928# 928 930# 930 932# 932 934# 934 936# 936
942# 942 944# 944 946# 946 948# 948 950# 950 952# 952 954# 954
963# 963 965# 965 967# 967 969# 969 975# 975 977# 977 979# 979
981# 981 983# 983 985# 985 987# 987 993# 993 995# 995 997# 997
999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009 1015# 1015
1017# 1017 1019# 1019 1021# 1021 1023# 1023 1025# 1025 1027# 1027 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1148# 1148 1150# 1150 1152# 1152
1154# 1154 1156# 1156 1158# 1158 1160# 1160 1162# 1162 1164# 1164 1169# 1169
1171# 1171 1173# 1173 1175# 1175 1177# 1177 1179# 1179 1181# 1181 1183# 1183
1188# 1188 1190# 1190 1192# 1192 1197# 1197 1199# 1199 1201# 1201 1203# 1203
1205# 1205 1207# 1207 1209# 1209 1211# 1211 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1235# 1235 1237# 1237
1239# 1239 1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262
1264# 1264 1266# 1266 1271# 1271 1273# 1273 1275# 1275 1277# 1277 1279# 1279
1281# 1281 1286# 1286 1288# 1288 1290# 1290 1292# 1292 1294# 1294 1296# 1296
1395# 1395 1397# 1397 1399# 1399 1401# 1401 1403# 1403 1414# 1414 1416# 1416
1421# 1421 1423# 1423 1425# 1425 1434# 1434 1436# 1436 1438# 1438 1440# 1440
1442# 1442 1447# 1447 1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457
1459# 1459 1461# 1461 1463# 1463 1465# 1465 1467# 1467 1472# 1472 1474# 1474
1476# 1476 1478# 1478 1480# 1480 1482# 1482 1484# 1484 1486# 1486 1488# 1488
1490# 1490 1586# 1586 1588# 1588 1590# 1590 1592# 1592 1594# 1594 1605# 1605
1607# 1607 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1618# 1618 1620# 1620
1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630 1639# 1639 1641# 1641
1643# 1643 1645# 1645 1647# 1647 1649# 1649 1651# 1651 1653# 1653 1655# 1655
1657# 1657 1662# 1662 1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672
1674# 1674 1679# 1679 1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689
1691# 1691 1693# 1693 1695# 1695 1697# 1697 1699# 1699 1701# 1701 1703# 1703
1705# 1705 1707# 1707 1709# 1709 1711# 1711 1713# 1713 1715# 1715 1717# 1717
1722# 1722 1724# 1724 1726# 1726 1728# 1728 1730# 1730 1735# 1735 1737# 1737
1739# 1739 1741# 1741 1743# 1743 1745# 1745 1747# 1747 1841# 1841 1843# 1843
1845# 1845 1847# 1847 1849# 1849 1860# 1860 1862# 1862 1864# 1864 1866# 1866
1868# 1868 1870# 1870 1873# 1873 1875# 1875 1877# 1877 1879# 1879 1881# 1881
1883# 1883 1885# 1885 1894# 1894 1896# 1896 1898# 1898 1900# 1900 1902# 1902
1904# 1904 1906# 1906 1908# 1908 1910# 1910 1912# 1912 1917# 1917 1919# 1919
1921# 1921 1923# 1923 1925# 1925 1927# 1927 1929# 1929 1934# 1934 1936# 1936
1938# 1938 1940# 1940 1942# 1942 1944# 1944 1946# 1946 1948# 1948 1950# 1950
1952# 1952 1954# 1954 1956# 1956 1958# 1958 1960# 1960 1962# 1962 1964# 1964
1966# 1966 1968# 1968 1970# 1970 1972# 1972 1977# 1977 1979# 1979 1981# 1981
1983# 1983 1985# 1985 1990# 1990 1992# 1992 1994# 1994 1996# 1996 1998# 1998
2000# 2000 2002# 2002 2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108
2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126 2128# 2128 2130# 2130
2132# 2132 2134# 2134 2136# 2136 2141# 2141 2143# 2143 2145# 2145 2147# 2147
2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159 2165# 2165
2167# 2167 2169# 2169 2171# 2171 2173# 2173 2175# 2175 2177# 2177 2179# 2179
2181# 2181 2183# 2183 2185# 2185 2187# 2187 2189# 2189 2191# 2191 2196# 2196
2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206 2208# 2208 2210# 2210
2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220 2222# 2222 2224# 2224 SEQ 0708
2226# 2226 2228# 2228 2230# 2230 2232# 2232 2237# 2237 2239# 2239 2241# 2241
2243# 2243 2245# 2245 2247# 2247 2249# 2249 2251# 2251 2253# 2253 2255# 2255
2257# 2257 2259# 2259 2261# 2261 2263# 2263 2265# 2265 2267# 2267 2269# 2269
2271# 2271 2273# 2273 2275# 2275 2277# 2277 2282# 2282 2284# 2284 2286# 2286
2288# 2288 2290# 2290 2293# 2293 2295# 2295 2297# 2297 2299# 2299 2301# 2301
2306# 2306 2308# 2308 2310# 2310 2312# 2312 2314# 2314 2316# 2316 2318# 2318
2411# 2411 2413# 2413 2415# 2415 2417# 2417 2419# 2419 2424# 2424 2426# 2426
2428# 2428 2430# 2430 2432# 2432 2446# 2446 2448# 2448 2450# 2450 2452# 2452
2454# 2454 2456# 2456 2458# 2458 2460# 2460 2462# 2462 2464# 2464 2469# 2469
2471# 2471 2473# 2473 2475# 2475 2477# 2477 2479# 2479 2481# 2481 2483# 2483
2485# 2485 2490# 2490 2492# 2492 2494# 2494 2496# 2496 2498# 2498 2500# 2500
2502# 2502 2504# 2504 2506# 2506 2508# 2508 2510# 2510 2512# 2512 2514# 2514
2516# 2516 2518# 2518 2520# 2520 2522# 2522 2524# 2524 2526# 2526 2528# 2528
2533# 2533 2535# 2535 2537# 2537 2539# 2539 2541# 2541 2543# 2543 2545# 2545
2638# 2638 2640# 2640 2642# 2642 2644# 2644 2646# 2646 2651# 2651 2653# 2653
2655# 2655 2657# 2657 2659# 2659 2673# 2673 2675# 2675 2677# 2677 2679# 2679
2681# 2681 2683# 2683 2685# 2685 2687# 2687 2689# 2689 2691# 2691 2696# 2696
2698# 2698 2700# 2700 2702# 2702 2704# 2704 2706# 2706 2708# 2708 2710# 2710
2712# 2712 2717# 2717 2719# 2719 2721# 2721 2723# 2723 2725# 2725 2727# 2727
2729# 2729 2731# 2731 2733# 2733 2735# 2735 2737# 2737 2739# 2739 2741# 2741
2743# 2743 2745# 2745 2747# 2747 2749# 2749 2751# 2751 2753# 2753 2755# 2755
2760# 2760 2762# 2762 2764# 2764 2766# 2766 2768# 2768 2770# 2770 2772# 2772
2863# 2863 2865# 2865 2867# 2867 2869# 2869 2871# 2871 2882# 2882 2884# 2884
2886# 2886 2888# 2888 2890# 2890 2892# 2892 2894# 2894 2896# 2896 2898# 2898
2900# 2900 2905# 2905 2907# 2907 2909# 2909 2911# 2911 2913# 2913 2915# 2915
2917# 2917 2919# 2919 2921# 2921 2926# 2926 2928# 2928 2930# 2930 2932# 2932
2934# 2934 2936# 2936 2938# 2938 2940# 2940 2945# 2945 2947# 2947 2949# 2949
2951# 2951 2953# 2953 2955# 2955 2957# 2957 2959# 2959 2961# 2961 2963# 2963
2965# 2965 2967# 2967 2969# 2969 2971# 2971 2973# 2973 2975# 2975 2977# 2977
2979# 2979 2981# 2981 2983# 2983 2988# 2988 2990# 2990 2992# 2992 2994# 2994
2996# 2996 2998# 2998 3000# 3000 3091# 3091 3093# 3093 3095# 3095 3097# 3097
3099# 3099 3110# 3110 3112# 3112 3114# 3114 3116# 3116 3118# 3118 3120# 3120
3122# 3122 3124# 3124 3126# 3126 3128# 3128 3133# 3133 3135# 3135 3137# 3137
3139# 3139 3141# 3141 3143# 3143 3145# 3145 3147# 3147 3149# 3149 3154# 3154
3156# 3156 3158# 3158 3160# 3160 3162# 3162 3164# 3164 3166# 3166 3168# 3168
3173# 3173 3175# 3175 3177# 3177 3179# 3179 3181# 3181 3183# 3183 3185# 3185
3187# 3187 3189# 3189 3191# 3191 3193# 3193 3195# 3195 3197# 3197 3199# 3199
3201# 3201 3203# 3203 3205# 3205 3207# 3207 3209# 3209 3211# 3211 3216# 3216
3218# 3218 3220# 3220 3222# 3222 3224# 3224 3226# 3226 3228# 3228 3329# 3329
3331# 3331 3333# 3333 3335# 3335 3337# 3337 3349# 3349 3351# 3351 3353# 3353
3355# 3355 3357# 3357 3359# 3359 3361# 3361 3363# 3363 3365# 3365 3367# 3367
3369# 3369 3371# 3371 3373# 3373 3375# 3375 3377# 3377 3379# 3379 3381# 3381
3383# 3383 3385# 3385 3387# 3387 3392# 3392 3394# 3394 3396# 3396 3398# 3398
3400# 3400 3402# 3402 3404# 3404 3406# 3406 3408# 3408 3410# 3410 3412# 3412
3414# 3414 3416# 3416 3418# 3418 3420# 3420 3422# 3422 3424# 3424 3426# 3426
3428# 3428 3433# 3433 3435# 3435 3437# 3437 3442# 3442 3444# 3444 3446# 3446
3448# 3448 3450# 3450 3452# 3452 3454# 3454 3456# 3456 3458# 3458 3460# 3460
3462# 3462 3467# 3467 3469# 3469 3471# 3471 3473# 3473 3475# 3475 3477# 3477
3479# 3479 3481# 3481 3483# 3483 3485# 3485 3487# 3487 3489# 3489 3491# 3491
3493# 3493 3495# 3495 3497# 3497 3499# 3499 3501# 3501 3503# 3503 3508# 3508
3510# 3510 3512# 3512 3525# 3525 3527# 3527 3529# 3529 3531# 3531 3533# 3533
3535# 3535 3537# 3537 3539# 3539 3541# 3541 3546# 3546 3548# 3548 3550# 3550
3552# 3552 3557# 3557 3559# 3559 3561# 3561 3563# 3563 3565# 3565 3567# 3567 SEQ 0709
3668# 3668 3670# 3670 3672# 3672 3674# 3674 3676# 3676 3686# 3686 3688# 3688
3690# 3690 3692# 3692 3694# 3694 3699# 3699 3701# 3701 3703# 3703 3705# 3705
3707# 3707 3709# 3709 3711# 3711 3716# 3716 3718# 3718 3720# 3720 3722# 3722
3724# 3724 3726# 3726 3728# 3728 3733# 3733 3735# 3735 3737# 3737 3739# 3739
3741# 3741 3743# 3743 3745# 3745 3750# 3750 3752# 3752 3754# 3754 3756# 3756
3758# 3758 3760# 3760 3762# 3762 3764# 3764 3771# 3771 3773# 3773 3775# 3775
3777# 3777 3779# 3779 3781# 3781 3783# 3783 3785# 3785 3787# 3787 3789# 3789
3791# 3791 3793# 3793 3795# 3795 3797# 3797 3799# 3799 3801# 3801 3803# 3803
3805# 3805 3807# 3807 3809# 3809 3811# 3811 3813# 3813 3815# 3815 3817# 3817
3819# 3819 3821# 3821 3823# 3823 3825# 3825 3827# 3827 3829# 3829 3831# 3831
3833# 3833 3835# 3835 3837# 3837 3839# 3839 3841# 3841 3843# 3843 3845# 3845
3847# 3847 3849# 3849 3851# 3851 3853# 3853 3855# 3855 3857# 3857 3859# 3859
3861# 3861 3863# 3863 3865# 3865 3867# 3867 3869# 3869 3871# 3871 3873# 3873
3875# 3875 3882# 3882 3884# 3884 3891# 3891 3893# 3893 3895# 3895 3989# 3989
3991# 3991 3993# 3993 3995# 3995 3997# 3997 4006# 4006 4008# 4008 4010# 4010
4012# 4012 4014# 4014 4019# 4019 4021# 4021 4023# 4023 4025# 4025 4027# 4027
4029# 4029 4031# 4031 4036# 4036 4038# 4038 4040# 4040 4042# 4042 4044# 4044
4046# 4046 4048# 4048 4053# 4053 4055# 4055 4057# 4057 4059# 4059 4061# 4061
4063# 4063 4065# 4065 4070# 4070 4072# 4072 4074# 4074 4076# 4076 4078# 4078
4080# 4080 4082# 4082 4084# 4084 4091# 4091 4093# 4093 4095# 4095 4097# 4097
4099# 4099 4101# 4101 4103# 4103 4105# 4105 4107# 4107 4109# 4109 4111# 4111
4113# 4113 4115# 4115 4117# 4117 4119# 4119 4121# 4121 4123# 4123 4125# 4125
4127# 4127 4129# 4129 4131# 4131 4133# 4133 4135# 4135 4137# 4137 4139# 4139
4141# 4141 4143# 4143 4145# 4145 4147# 4147 4149# 4149 4151# 4151 4153# 4153
4155# 4155 4157# 4157 4159# 4159 4161# 4161 4163# 4163 4165# 4165 4167# 4167
4169# 4169 4171# 4171 4173# 4173 4175# 4175 4177# 4177 4179# 4179 4181# 4181
4183# 4183 4185# 4185 4187# 4187 4189# 4189 4196# 4196 4198# 4198 4205# 4205
4207# 4207 4209# 4209 4295# 4295 4297# 4297 4299# 4299 4301# 4301 4303# 4303
4312# 4312 4314# 4314 4316# 4316 4318# 4318 4320# 4320 4322# 4322 4324# 4324
4326# 4326 4328# 4328 4330# 4330 4332# 4332 4337# 4337 4339# 4339 4341# 4341
4343# 4343 4345# 4345 4347# 4347 4349# 4349 4354# 4354 4356# 4356 4358# 4358
4360# 4360 4362# 4362 4364# 4364 4366# 4366 4371# 4371 4373# 4373 4375# 4375
4377# 4377 4379# 4379 4381# 4381 4383# 4383 4388# 4388 4390# 4390 4392# 4392
4394# 4394 4396# 4396 4398# 4398 4400# 4400 4402# 4402 4409# 4409 4411# 4411
4413# 4413 4415# 4415 4417# 4417 4419# 4419 4421# 4421 4423# 4423 4425# 4425
4427# 4427 4429# 4429 4431# 4431 4433# 4433 4435# 4435 4437# 4437 4439# 4439
4441# 4441 4443# 4443 4445# 4445 4447# 4447 4449# 4449 4451# 4451 4453# 4453
4455# 4455 4457# 4457 4459# 4459 4461# 4461 4463# 4463 4465# 4465 4467# 4467
4469# 4469 4471# 4471 4473# 4473 4475# 4475 4477# 4477 4479# 4479 4481# 4481
4483# 4483 4485# 4485 4487# 4487 4489# 4489 4491# 4491 4493# 4493 4495# 4495
4497# 4497 4504# 4504 4506# 4506 4513# 4513 4515# 4515 4517# 4517 4598# 4598
4600# 4600 4602# 4602 4604# 4604 4614# 4614 4616# 4616 4618# 4618 4620# 4620
4622# 4622 4624# 4624 4626# 4626 4632# 4632 4634# 4634 4636# 4636 4638# 4638
4640# 4640 4645# 4645 4647# 4647 4649# 4649 4651# 4651 4653# 4653 4655# 4655
%ADDR 120# 120 122# 122 124 124# 126 126# 128 128# 138# 138 140 140#
142 142# 144 144# 146 146# 148 148# 150 150# 152 152# 154 154#
159 159# 161 161# 163 163# 165 165# 167 167# 169 169# 171 171#
173 173# 178 178# 180 180# 182 182# 184 184# 186 186# 188 188#
190 190# 192 192# 194 194# 196 196# 198 198# 203 203# 205 205#
207 207# 209 209# 211 211# 213 213# 215 215# 217 217# 219 219#
221 221# 223 223# 225 225# 316# 316 318# 318 320 320# 322 322#
324 324# 335# 335 337 337# 339 339# 341 341# 343 343# 345 345#
348 348# 350 350# 352 352# 354 354# 356 356# 358 358# 360 360# SEQ 0710
369# 369 371 371# 373 373# 375 375# 377 377# 379 379# 381 381#
383 383# 385 385# 390 390# 392 392# 394 394# 396 396# 398 398#
400 400# 402 402# 404 404# 406 406# 408 408# 410 410# 412 412#
503# 503 505# 505 507 507# 509 509# 511 511# 522# 522 524 524#
526 526# 528 528# 530 530# 532 532# 535 535# 537 537# 539 539#
541 541# 543 543# 545 545# 547 547# 556# 556 558 558# 560 560#
562 562# 564 564# 566 566# 568 568# 570 570# 572 572# 577 577#
579 579# 581 581# 583 583# 585 585# 587 587# 589 589# 591 591#
593 593# 595 595# 597 597# 599 599# 692# 692 694# 694 696 696#
698 698# 700 700# 710# 710 712 712# 714 714# 716 716# 718 718#
720 720# 722 722# 724 724# 726 726# 731 731# 733 733# 735 735#
737 737# 739 739# 741 741# 743 743# 745 745# 747 747# 752 752#
754 754# 756 756# 758 758# 760 760# 762 762# 764 764# 766 766#
768 768# 770 770# 772 772# 777 777# 779 779# 781 781# 783 783#
785 785# 787 787# 789 789# 791 791# 793 793# 795 795# 797 797#
799 799# 801 801# 903# 903 905# 905 907 907# 909 909# 911 911#
924# 924 926 926# 928 928# 930 930# 932 932# 934 934# 936 936#
942 942# 944 944# 946 946# 948 948# 950 950# 952 952# 954 954#
963# 963 965 965# 967 967# 969 969# 975 975# 977 977# 979 979#
981 981# 983 983# 985 985# 987 987# 993 993# 995 995# 997 997#
999 999# 1001 1001# 1003 1003# 1005 1005# 1007 1007# 1009 1009# 1015 1015#
1017 1017# 1019 1019# 1021 1021# 1023 1023# 1025 1025# 1027 1027# 1128# 1128
1130# 1130 1132 1132# 1134 1134# 1136 1136# 1148# 1148 1150 1150# 1152 1152#
1154 1154# 1156 1156# 1158 1158# 1160 1160# 1162 1162# 1164 1164# 1169 1169#
1171 1171# 1173 1173# 1175 1175# 1177 1177# 1179 1179# 1181 1181# 1183 1183#
1188 1188# 1190 1190# 1192 1192# 1197 1197# 1199 1199# 1201 1201# 1203 1203#
1205 1205# 1207 1207# 1209 1209# 1211 1211# 1216 1216# 1218 1218# 1220 1220#
1222 1222# 1224 1224# 1226 1226# 1228 1228# 1230 1230# 1235 1235# 1237 1237#
1239 1239# 1252# 1252 1254 1254# 1256 1256# 1258 1258# 1260 1260# 1262 1262#
1264 1264# 1266 1266# 1271# 1271 1273 1273# 1275 1275# 1277 1277# 1279 1279#
1281 1281# 1286 1286# 1288 1288# 1290 1290# 1292 1292# 1294 1294# 1296 1296#
1395# 1395 1397# 1397 1399 1399# 1401 1401# 1403 1403# 1414# 1414 1416 1416#
1421 1421# 1423 1423# 1425 1425# 1434# 1434 1436 1436# 1438 1438# 1440 1440#
1442 1442# 1447 1447# 1449 1449# 1451 1451# 1453 1453# 1455 1455# 1457 1457#
1459 1459# 1461 1461# 1463 1463# 1465 1465# 1467 1467# 1472 1472# 1474 1474#
1476 1476# 1478 1478# 1480 1480# 1482 1482# 1484 1484# 1486 1486# 1488 1488#
1490 1490# 1586# 1586 1588# 1588 1590 1590# 1592 1592# 1594 1594# 1605# 1605
1607 1607# 1609 1609# 1611 1611# 1613 1613# 1615 1615# 1618 1618# 1620 1620#
1622 1622# 1624 1624# 1626 1626# 1628 1628# 1630 1630# 1639# 1639 1641 1641#
1643 1643# 1645 1645# 1647 1647# 1649 1649# 1651 1651# 1653 1653# 1655 1655#
1657 1657# 1662 1662# 1664 1664# 1666 1666# 1668 1668# 1670 1670# 1672 1672#
1674 1674# 1679 1679# 1681 1681# 1683 1683# 1685 1685# 1687 1687# 1689 1689#
1691 1691# 1693 1693# 1695 1695# 1697 1697# 1699 1699# 1701 1701# 1703 1703#
1705 1705# 1707 1707# 1709 1709# 1711 1711# 1713 1713# 1715 1715# 1717 1717#
1722# 1722 1724 1724# 1726 1726# 1728 1728# 1730 1730# 1735# 1735 1737 1737#
1739 1739# 1741 1741# 1743 1743# 1745 1745# 1747 1747# 1841# 1841 1843# 1843
1845 1845# 1847 1847# 1849 1849# 1860# 1860 1862 1862# 1864 1864# 1866 1866#
1868 1868# 1870 1870# 1873 1873# 1875 1875# 1877 1877# 1879 1879# 1881 1881#
1883 1883# 1885 1885# 1894# 1894 1896 1896# 1898 1898# 1900 1900# 1902 1902#
1904 1904# 1906 1906# 1908 1908# 1910 1910# 1912 1912# 1917 1917# 1919 1919#
1921 1921# 1923 1923# 1925 1925# 1927 1927# 1929 1929# 1934 1934# 1936 1936#
1938 1938# 1940 1940# 1942 1942# 1944 1944# 1946 1946# 1948 1948# 1950 1950#
1952 1952# 1954 1954# 1956 1956# 1958 1958# 1960 1960# 1962 1962# 1964 1964# SEQ 0711
1966 1966# 1968 1968# 1970 1970# 1972 1972# 1977# 1977 1979 1979# 1981 1981#
1983 1983# 1985 1985# 1990# 1990 1992 1992# 1994 1994# 1996 1996# 1998 1998#
2000 2000# 2002 2002# 2100# 2100 2102# 2102 2104 2104# 2106 2106# 2108 2108#
2118# 2118 2120 2120# 2122 2122# 2124 2124# 2126 2126# 2128 2128# 2130 2130#
2132 2132# 2134 2134# 2136 2136# 2141 2141# 2143 2143# 2145 2145# 2147 2147#
2149 2149# 2151 2151# 2153 2153# 2155 2155# 2157 2157# 2159 2159# 2165 2165#
2167 2167# 2169 2169# 2171 2171# 2173 2173# 2175 2175# 2177 2177# 2179 2179#
2181 2181# 2183 2183# 2185 2185# 2187 2187# 2189 2189# 2191 2191# 2196 2196#
2198 2198# 2200 2200# 2202 2202# 2204 2204# 2206 2206# 2208 2208# 2210 2210#
2212 2212# 2214 2214# 2216 2216# 2218 2218# 2220 2220# 2222 2222# 2224 2224#
2226 2226# 2228 2228# 2230 2230# 2232 2232# 2237 2237# 2239 2239# 2241 2241#
2243 2243# 2245 2245# 2247 2247# 2249 2249# 2251 2251# 2253 2253# 2255 2255#
2257 2257# 2259 2259# 2261 2261# 2263 2263# 2265 2265# 2267 2267# 2269 2269#
2271 2271# 2273 2273# 2275 2275# 2277 2277# 2282# 2282 2284 2284# 2286 2286#
2288 2288# 2290 2290# 2293# 2293 2295 2295# 2297 2297# 2299 2299# 2301 2301#
2306# 2306 2308 2308# 2310 2310# 2312 2312# 2314 2314# 2316 2316# 2318 2318#
2411# 2411 2413# 2413 2415 2415# 2417 2417# 2419 2419# 2424 2424# 2426 2426#
2428 2428# 2430 2430# 2432 2432# 2446# 2446 2448 2448# 2450 2450# 2452 2452#
2454 2454# 2456 2456# 2458 2458# 2460 2460# 2462 2462# 2464 2464# 2469 2469#
2471 2471# 2473 2473# 2475 2475# 2477 2477# 2479 2479# 2481 2481# 2483 2483#
2485 2485# 2490 2490# 2492 2492# 2494 2494# 2496 2496# 2498 2498# 2500 2500#
2502 2502# 2504 2504# 2506 2506# 2508 2508# 2510 2510# 2512 2512# 2514 2514#
2516 2516# 2518 2518# 2520 2520# 2522 2522# 2524 2524# 2526 2526# 2528 2528#
2533# 2533 2535 2535# 2537 2537# 2539 2539# 2541 2541# 2543 2543# 2545 2545#
2638# 2638 2640# 2640 2642 2642# 2644 2644# 2646 2646# 2651 2651# 2653 2653#
2655 2655# 2657 2657# 2659 2659# 2673# 2673 2675 2675# 2677 2677# 2679 2679#
2681 2681# 2683 2683# 2685 2685# 2687 2687# 2689 2689# 2691 2691# 2696 2696#
2698 2698# 2700 2700# 2702 2702# 2704 2704# 2706 2706# 2708 2708# 2710 2710#
2712 2712# 2717 2717# 2719 2719# 2721 2721# 2723 2723# 2725 2725# 2727 2727#
2729 2729# 2731 2731# 2733 2733# 2735 2735# 2737 2737# 2739 2739# 2741 2741#
2743 2743# 2745 2745# 2747 2747# 2749 2749# 2751 2751# 2753 2753# 2755 2755#
2760# 2760 2762 2762# 2764 2764# 2766 2766# 2768 2768# 2770 2770# 2772 2772#
2863# 2863 2865# 2865 2867 2867# 2869 2869# 2871 2871# 2882# 2882 2884 2884#
2886 2886# 2888 2888# 2890 2890# 2892 2892# 2894 2894# 2896 2896# 2898 2898#
2900 2900# 2905 2905# 2907 2907# 2909 2909# 2911 2911# 2913 2913# 2915 2915#
2917 2917# 2919 2919# 2921 2921# 2926 2926# 2928 2928# 2930 2930# 2932 2932#
2934 2934# 2936 2936# 2938 2938# 2940 2940# 2945 2945# 2947 2947# 2949 2949#
2951 2951# 2953 2953# 2955 2955# 2957 2957# 2959 2959# 2961 2961# 2963 2963#
2965 2965# 2967 2967# 2969 2969# 2971 2971# 2973 2973# 2975 2975# 2977 2977#
2979 2979# 2981 2981# 2983 2983# 2988# 2988 2990 2990# 2992 2992# 2994 2994#
2996 2996# 2998 2998# 3000 3000# 3091# 3091 3093# 3093 3095 3095# 3097 3097#
3099 3099# 3110# 3110 3112 3112# 3114 3114# 3116 3116# 3118 3118# 3120 3120#
3122 3122# 3124 3124# 3126 3126# 3128 3128# 3133 3133# 3135 3135# 3137 3137#
3139 3139# 3141 3141# 3143 3143# 3145 3145# 3147 3147# 3149 3149# 3154 3154#
3156 3156# 3158 3158# 3160 3160# 3162 3162# 3164 3164# 3166 3166# 3168 3168#
3173 3173# 3175 3175# 3177 3177# 3179 3179# 3181 3181# 3183 3183# 3185 3185#
3187 3187# 3189 3189# 3191 3191# 3193 3193# 3195 3195# 3197 3197# 3199 3199#
3201 3201# 3203 3203# 3205 3205# 3207 3207# 3209 3209# 3211 3211# 3216# 3216
3218 3218# 3220 3220# 3222 3222# 3224 3224# 3226 3226# 3228 3228# 3329# 3329
3331# 3331 3333 3333# 3335 3335# 3337 3337# 3349# 3349 3351 3351# 3353 3353#
3355 3355# 3357 3357# 3359 3359# 3361 3361# 3363 3363# 3365 3365# 3367 3367#
3369 3369# 3371 3371# 3373 3373# 3375 3375# 3377 3377# 3379 3379# 3381 3381#
3383 3383# 3385 3385# 3387 3387# 3392 3392# 3394 3394# 3396 3396# 3398 3398# SEQ 0712
3400 3400# 3402 3402# 3404 3404# 3406 3406# 3408 3408# 3410 3410# 3412 3412#
3414 3414# 3416 3416# 3418 3418# 3420 3420# 3422 3422# 3424 3424# 3426 3426#
3428 3428# 3433 3433# 3435 3435# 3437 3437# 3442 3442# 3444 3444# 3446 3446#
3448 3448# 3450 3450# 3452 3452# 3454 3454# 3456 3456# 3458 3458# 3460 3460#
3462 3462# 3467 3467# 3469 3469# 3471 3471# 3473 3473# 3475 3475# 3477 3477#
3479 3479# 3481 3481# 3483 3483# 3485 3485# 3487 3487# 3489 3489# 3491 3491#
3493 3493# 3495 3495# 3497 3497# 3499 3499# 3501 3501# 3503 3503# 3508 3508#
3510 3510# 3512 3512# 3525# 3525 3527 3527# 3529 3529# 3531 3531# 3533 3533#
3535 3535# 3537 3537# 3539 3539# 3541 3541# 3546# 3546 3548 3548# 3550 3550#
3552 3552# 3557 3557# 3559 3559# 3561 3561# 3563 3563# 3565 3565# 3567 3567#
3668# 3668 3670# 3670 3672 3672# 3674 3674# 3676 3676# 3686# 3686 3688 3688#
3690 3690# 3692 3692# 3694 3694# 3699 3699# 3701 3701# 3703 3703# 3705 3705#
3707 3707# 3709 3709# 3711 3711# 3716 3716# 3718 3718# 3720 3720# 3722 3722#
3724 3724# 3726 3726# 3728 3728# 3733 3733# 3735 3735# 3737 3737# 3739 3739#
3741 3741# 3743 3743# 3745 3745# 3750 3750# 3752 3752# 3754 3754# 3756 3756#
3758 3758# 3760 3760# 3762 3762# 3764 3764# 3771# 3771 3773 3773# 3775 3775#
3777 3777# 3779 3779# 3781 3781# 3783 3783# 3785 3785# 3787 3787# 3789 3789#
3791 3791# 3793 3793# 3795 3795# 3797 3797# 3799 3799# 3801 3801# 3803 3803#
3805 3805# 3807 3807# 3809 3809# 3811 3811# 3813 3813# 3815 3815# 3817 3817#
3819 3819# 3821 3821# 3823 3823# 3825 3825# 3827 3827# 3829 3829# 3831 3831#
3833 3833# 3835 3835# 3837 3837# 3839 3839# 3841 3841# 3843 3843# 3845 3845#
3847 3847# 3849 3849# 3851 3851# 3853 3853# 3855 3855# 3857 3857# 3859 3859#
3861 3861# 3863 3863# 3865 3865# 3867 3867# 3869 3869# 3871 3871# 3873 3873#
3875 3875# 3882# 3882 3884 3884# 3891# 3891 3893 3893# 3895 3895# 3989# 3989
3991# 3991 3993 3993# 3995 3995# 3997 3997# 4006# 4006 4008 4008# 4010 4010#
4012 4012# 4014 4014# 4019 4019# 4021 4021# 4023 4023# 4025 4025# 4027 4027#
4029 4029# 4031 4031# 4036 4036# 4038 4038# 4040 4040# 4042 4042# 4044 4044#
4046 4046# 4048 4048# 4053 4053# 4055 4055# 4057 4057# 4059 4059# 4061 4061#
4063 4063# 4065 4065# 4070 4070# 4072 4072# 4074 4074# 4076 4076# 4078 4078#
4080 4080# 4082 4082# 4084 4084# 4091# 4091 4093 4093# 4095 4095# 4097 4097#
4099 4099# 4101 4101# 4103 4103# 4105 4105# 4107 4107# 4109 4109# 4111 4111#
4113 4113# 4115 4115# 4117 4117# 4119 4119# 4121 4121# 4123 4123# 4125 4125#
4127 4127# 4129 4129# 4131 4131# 4133 4133# 4135 4135# 4137 4137# 4139 4139#
4141 4141# 4143 4143# 4145 4145# 4147 4147# 4149 4149# 4151 4151# 4153 4153#
4155 4155# 4157 4157# 4159 4159# 4161 4161# 4163 4163# 4165 4165# 4167 4167#
4169 4169# 4171 4171# 4173 4173# 4175 4175# 4177 4177# 4179 4179# 4181 4181#
4183 4183# 4185 4185# 4187 4187# 4189 4189# 4196# 4196 4198 4198# 4205# 4205
4207 4207# 4209 4209# 4295# 4295 4297# 4297 4299 4299# 4301 4301# 4303 4303#
4312# 4312 4314 4314# 4316 4316# 4318 4318# 4320 4320# 4322 4322# 4324 4324#
4326 4326# 4328 4328# 4330 4330# 4332 4332# 4337 4337# 4339 4339# 4341 4341#
4343 4343# 4345 4345# 4347 4347# 4349 4349# 4354 4354# 4356 4356# 4358 4358#
4360 4360# 4362 4362# 4364 4364# 4366 4366# 4371 4371# 4373 4373# 4375 4375#
4377 4377# 4379 4379# 4381 4381# 4383 4383# 4388 4388# 4390 4390# 4392 4392#
4394 4394# 4396 4396# 4398 4398# 4400 4400# 4402 4402# 4409# 4409 4411 4411#
4413 4413# 4415 4415# 4417 4417# 4419 4419# 4421 4421# 4423 4423# 4425 4425#
4427 4427# 4429 4429# 4431 4431# 4433 4433# 4435 4435# 4437 4437# 4439 4439#
4441 4441# 4443 4443# 4445 4445# 4447 4447# 4449 4449# 4451 4451# 4453 4453#
4455 4455# 4457 4457# 4459 4459# 4461 4461# 4463 4463# 4465 4465# 4467 4467#
4469 4469# 4471 4471# 4473 4473# 4475 4475# 4477 4477# 4479 4479# 4481 4481#
4483 4483# 4485 4485# 4487 4487# 4489 4489# 4491 4491# 4493 4493# 4495 4495#
4497 4497# 4504# 4504 4506 4506# 4513# 4513 4515 4515# 4517 4517# 4598# 4598
4600# 4600 4602 4602# 4604 4604# 4614# 4614 4616 4616# 4618 4618# 4620 4620#
4622 4622# 4624 4624# 4626 4626# 4632 4632# 4634 4634# 4636 4636# 4638 4638# SEQ 0713
4640 4640# 4645 4645# 4647 4647# 4649 4649# 4651 4651# 4653 4653# 4655 4655#
%ML 120# 120 122# 122 124# 124 126# 126 128# 128 138# 138 140# 140
142# 142 144# 144 146# 146 148# 148 150# 150 152# 152 154# 154
159# 159 161# 161 163# 163 165# 165 167# 167 169# 169 171# 171
173# 173 178# 178 180# 180 182# 182 184# 184 186# 186 188# 188
190# 190 192# 192 194# 194 196# 196 198# 198 203# 203 205# 205
207# 207 209# 209 211# 211 213# 213 215# 215 217# 217 219# 219
221# 221 223# 223 225# 225 316# 316 318# 318 320# 320 322# 322
324# 324 335# 335 337# 337 339# 339 341# 341 343# 343 345# 345
348# 348 350# 350 352# 352 354# 354 356# 356 358# 358 360# 360
369# 369 371# 371 373# 373 375# 375 377# 377 379# 379 381# 381
383# 383 385# 385 390# 390 392# 392 394# 394 396# 396 398# 398
400# 400 402# 402 404# 404 406# 406 408# 408 410# 410 412# 412
503# 503 505# 505 507# 507 509# 509 511# 511 522# 522 524# 524
526# 526 528# 528 530# 530 532# 532 535# 535 537# 537 539# 539
541# 541 543# 543 545# 545 547# 547 556# 556 558# 558 560# 560
562# 562 564# 564 566# 566 568# 568 570# 570 572# 572 577# 577
579# 579 581# 581 583# 583 585# 585 587# 587 589# 589 591# 591
593# 593 595# 595 597# 597 599# 599 692# 692 694# 694 696# 696
698# 698 700# 700 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 731# 731 733# 733 735# 735
737# 737 739# 739 741# 741 743# 743 745# 745 747# 747 752# 752
754# 754 756# 756 758# 758 760# 760 762# 762 764# 764 766# 766
768# 768 770# 770 772# 772 777# 777 779# 779 781# 781 783# 783
785# 785 787# 787 789# 789 791# 791 793# 793 795# 795 797# 797
799# 799 801# 801 903# 903 905# 905 907# 907 909# 909 911# 911
924# 924 926# 926 928# 928 930# 930 932# 932 934# 934 936# 936
942# 942 944# 944 946# 946 948# 948 950# 950 952# 952 954# 954
963# 963 965# 965 967# 967 969# 969 975# 975 977# 977 979# 979
981# 981 983# 983 985# 985 987# 987 993# 993 995# 995 997# 997
999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009 1015# 1015
1017# 1017 1019# 1019 1021# 1021 1023# 1023 1025# 1025 1027# 1027 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1148# 1148 1150# 1150 1152# 1152
1154# 1154 1156# 1156 1158# 1158 1160# 1160 1162# 1162 1164# 1164 1169# 1169
1171# 1171 1173# 1173 1175# 1175 1177# 1177 1179# 1179 1181# 1181 1183# 1183
1188# 1188 1190# 1190 1192# 1192 1197# 1197 1199# 1199 1201# 1201 1203# 1203
1205# 1205 1207# 1207 1209# 1209 1211# 1211 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1235# 1235 1237# 1237
1239# 1239 1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262
1264# 1264 1266# 1266 1271# 1271 1273# 1273 1275# 1275 1277# 1277 1279# 1279
1281# 1281 1286# 1286 1288# 1288 1290# 1290 1292# 1292 1294# 1294 1296# 1296
1395# 1395 1397# 1397 1399# 1399 1401# 1401 1403# 1403 1414# 1414 1416# 1416
1421# 1421 1423# 1423 1425# 1425 1434# 1434 1436# 1436 1438# 1438 1440# 1440
1442# 1442 1447# 1447 1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457
1459# 1459 1461# 1461 1463# 1463 1465# 1465 1467# 1467 1472# 1472 1474# 1474
1476# 1476 1478# 1478 1480# 1480 1482# 1482 1484# 1484 1486# 1486 1488# 1488
1490# 1490 1586# 1586 1588# 1588 1590# 1590 1592# 1592 1594# 1594 1605# 1605
1607# 1607 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1618# 1618 1620# 1620
1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630 1639# 1639 1641# 1641
1643# 1643 1645# 1645 1647# 1647 1649# 1649 1651# 1651 1653# 1653 1655# 1655
1657# 1657 1662# 1662 1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672
1674# 1674 1679# 1679 1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689
1691# 1691 1693# 1693 1695# 1695 1697# 1697 1699# 1699 1701# 1701 1703# 1703 SEQ 0714
1705# 1705 1707# 1707 1709# 1709 1711# 1711 1713# 1713 1715# 1715 1717# 1717
1722# 1722 1724# 1724 1726# 1726 1728# 1728 1730# 1730 1735# 1735 1737# 1737
1739# 1739 1741# 1741 1743# 1743 1745# 1745 1747# 1747 1841# 1841 1843# 1843
1845# 1845 1847# 1847 1849# 1849 1860# 1860 1862# 1862 1864# 1864 1866# 1866
1868# 1868 1870# 1870 1873# 1873 1875# 1875 1877# 1877 1879# 1879 1881# 1881
1883# 1883 1885# 1885 1894# 1894 1896# 1896 1898# 1898 1900# 1900 1902# 1902
1904# 1904 1906# 1906 1908# 1908 1910# 1910 1912# 1912 1917# 1917 1919# 1919
1921# 1921 1923# 1923 1925# 1925 1927# 1927 1929# 1929 1934# 1934 1936# 1936
1938# 1938 1940# 1940 1942# 1942 1944# 1944 1946# 1946 1948# 1948 1950# 1950
1952# 1952 1954# 1954 1956# 1956 1958# 1958 1960# 1960 1962# 1962 1964# 1964
1966# 1966 1968# 1968 1970# 1970 1972# 1972 1977# 1977 1979# 1979 1981# 1981
1983# 1983 1985# 1985 1990# 1990 1992# 1992 1994# 1994 1996# 1996 1998# 1998
2000# 2000 2002# 2002 2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108
2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126 2128# 2128 2130# 2130
2132# 2132 2134# 2134 2136# 2136 2141# 2141 2143# 2143 2145# 2145 2147# 2147
2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159 2165# 2165
2167# 2167 2169# 2169 2171# 2171 2173# 2173 2175# 2175 2177# 2177 2179# 2179
2181# 2181 2183# 2183 2185# 2185 2187# 2187 2189# 2189 2191# 2191 2196# 2196
2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206 2208# 2208 2210# 2210
2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220 2222# 2222 2224# 2224
2226# 2226 2228# 2228 2230# 2230 2232# 2232 2237# 2237 2239# 2239 2241# 2241
2243# 2243 2245# 2245 2247# 2247 2249# 2249 2251# 2251 2253# 2253 2255# 2255
2257# 2257 2259# 2259 2261# 2261 2263# 2263 2265# 2265 2267# 2267 2269# 2269
2271# 2271 2273# 2273 2275# 2275 2277# 2277 2282# 2282 2284# 2284 2286# 2286
2288# 2288 2290# 2290 2293# 2293 2295# 2295 2297# 2297 2299# 2299 2301# 2301
2306# 2306 2308# 2308 2310# 2310 2312# 2312 2314# 2314 2316# 2316 2318# 2318
2411# 2411 2413# 2413 2415# 2415 2417# 2417 2419# 2419 2424# 2424 2426# 2426
2428# 2428 2430# 2430 2432# 2432 2446# 2446 2448# 2448 2450# 2450 2452# 2452
2454# 2454 2456# 2456 2458# 2458 2460# 2460 2462# 2462 2464# 2464 2469# 2469
2471# 2471 2473# 2473 2475# 2475 2477# 2477 2479# 2479 2481# 2481 2483# 2483
2485# 2485 2490# 2490 2492# 2492 2494# 2494 2496# 2496 2498# 2498 2500# 2500
2502# 2502 2504# 2504 2506# 2506 2508# 2508 2510# 2510 2512# 2512 2514# 2514
2516# 2516 2518# 2518 2520# 2520 2522# 2522 2524# 2524 2526# 2526 2528# 2528
2533# 2533 2535# 2535 2537# 2537 2539# 2539 2541# 2541 2543# 2543 2545# 2545
2638# 2638 2640# 2640 2642# 2642 2644# 2644 2646# 2646 2651# 2651 2653# 2653
2655# 2655 2657# 2657 2659# 2659 2673# 2673 2675# 2675 2677# 2677 2679# 2679
2681# 2681 2683# 2683 2685# 2685 2687# 2687 2689# 2689 2691# 2691 2696# 2696
2698# 2698 2700# 2700 2702# 2702 2704# 2704 2706# 2706 2708# 2708 2710# 2710
2712# 2712 2717# 2717 2719# 2719 2721# 2721 2723# 2723 2725# 2725 2727# 2727
2729# 2729 2731# 2731 2733# 2733 2735# 2735 2737# 2737 2739# 2739 2741# 2741
2743# 2743 2745# 2745 2747# 2747 2749# 2749 2751# 2751 2753# 2753 2755# 2755
2760# 2760 2762# 2762 2764# 2764 2766# 2766 2768# 2768 2770# 2770 2772# 2772
2863# 2863 2865# 2865 2867# 2867 2869# 2869 2871# 2871 2882# 2882 2884# 2884
2886# 2886 2888# 2888 2890# 2890 2892# 2892 2894# 2894 2896# 2896 2898# 2898
2900# 2900 2905# 2905 2907# 2907 2909# 2909 2911# 2911 2913# 2913 2915# 2915
2917# 2917 2919# 2919 2921# 2921 2926# 2926 2928# 2928 2930# 2930 2932# 2932
2934# 2934 2936# 2936 2938# 2938 2940# 2940 2945# 2945 2947# 2947 2949# 2949
2951# 2951 2953# 2953 2955# 2955 2957# 2957 2959# 2959 2961# 2961 2963# 2963
2965# 2965 2967# 2967 2969# 2969 2971# 2971 2973# 2973 2975# 2975 2977# 2977
2979# 2979 2981# 2981 2983# 2983 2988# 2988 2990# 2990 2992# 2992 2994# 2994
2996# 2996 2998# 2998 3000# 3000 3091# 3091 3093# 3093 3095# 3095 3097# 3097
3099# 3099 3110# 3110 3112# 3112 3114# 3114 3116# 3116 3118# 3118 3120# 3120
3122# 3122 3124# 3124 3126# 3126 3128# 3128 3133# 3133 3135# 3135 3137# 3137 SEQ 0715
3139# 3139 3141# 3141 3143# 3143 3145# 3145 3147# 3147 3149# 3149 3154# 3154
3156# 3156 3158# 3158 3160# 3160 3162# 3162 3164# 3164 3166# 3166 3168# 3168
3173# 3173 3175# 3175 3177# 3177 3179# 3179 3181# 3181 3183# 3183 3185# 3185
3187# 3187 3189# 3189 3191# 3191 3193# 3193 3195# 3195 3197# 3197 3199# 3199
3201# 3201 3203# 3203 3205# 3205 3207# 3207 3209# 3209 3211# 3211 3216# 3216
3218# 3218 3220# 3220 3222# 3222 3224# 3224 3226# 3226 3228# 3228 3329# 3329
3331# 3331 3333# 3333 3335# 3335 3337# 3337 3349# 3349 3351# 3351 3353# 3353
3355# 3355 3357# 3357 3359# 3359 3361# 3361 3363# 3363 3365# 3365 3367# 3367
3369# 3369 3371# 3371 3373# 3373 3375# 3375 3377# 3377 3379# 3379 3381# 3381
3383# 3383 3385# 3385 3387# 3387 3392# 3392 3394# 3394 3396# 3396 3398# 3398
3400# 3400 3402# 3402 3404# 3404 3406# 3406 3408# 3408 3410# 3410 3412# 3412
3414# 3414 3416# 3416 3418# 3418 3420# 3420 3422# 3422 3424# 3424 3426# 3426
3428# 3428 3433# 3433 3435# 3435 3437# 3437 3442# 3442 3444# 3444 3446# 3446
3448# 3448 3450# 3450 3452# 3452 3454# 3454 3456# 3456 3458# 3458 3460# 3460
3462# 3462 3467# 3467 3469# 3469 3471# 3471 3473# 3473 3475# 3475 3477# 3477
3479# 3479 3481# 3481 3483# 3483 3485# 3485 3487# 3487 3489# 3489 3491# 3491
3493# 3493 3495# 3495 3497# 3497 3499# 3499 3501# 3501 3503# 3503 3508# 3508
3510# 3510 3512# 3512 3525# 3525 3527# 3527 3529# 3529 3531# 3531 3533# 3533
3535# 3535 3537# 3537 3539# 3539 3541# 3541 3546# 3546 3548# 3548 3550# 3550
3552# 3552 3557# 3557 3559# 3559 3561# 3561 3563# 3563 3565# 3565 3567# 3567
3668# 3668 3670# 3670 3672# 3672 3674# 3674 3676# 3676 3686# 3686 3688# 3688
3690# 3690 3692# 3692 3694# 3694 3699# 3699 3701# 3701 3703# 3703 3705# 3705
3707# 3707 3709# 3709 3711# 3711 3716# 3716 3718# 3718 3720# 3720 3722# 3722
3724# 3724 3726# 3726 3728# 3728 3733# 3733 3735# 3735 3737# 3737 3739# 3739
3741# 3741 3743# 3743 3745# 3745 3750# 3750 3752# 3752 3754# 3754 3756# 3756
3758# 3758 3760# 3760 3762# 3762 3764# 3764 3771# 3771 3773# 3773 3775# 3775
3777# 3777 3779# 3779 3781# 3781 3783# 3783 3785# 3785 3787# 3787 3789# 3789
3791# 3791 3793# 3793 3795# 3795 3797# 3797 3799# 3799 3801# 3801 3803# 3803
3805# 3805 3807# 3807 3809# 3809 3811# 3811 3813# 3813 3815# 3815 3817# 3817
3819# 3819 3821# 3821 3823# 3823 3825# 3825 3827# 3827 3829# 3829 3831# 3831
3833# 3833 3835# 3835 3837# 3837 3839# 3839 3841# 3841 3843# 3843 3845# 3845
3847# 3847 3849# 3849 3851# 3851 3853# 3853 3855# 3855 3857# 3857 3859# 3859
3861# 3861 3863# 3863 3865# 3865 3867# 3867 3869# 3869 3871# 3871 3873# 3873
3875# 3875 3882# 3882 3884# 3884 3891# 3891 3893# 3893 3895# 3895 3989# 3989
3991# 3991 3993# 3993 3995# 3995 3997# 3997 4006# 4006 4008# 4008 4010# 4010
4012# 4012 4014# 4014 4019# 4019 4021# 4021 4023# 4023 4025# 4025 4027# 4027
4029# 4029 4031# 4031 4036# 4036 4038# 4038 4040# 4040 4042# 4042 4044# 4044
4046# 4046 4048# 4048 4053# 4053 4055# 4055 4057# 4057 4059# 4059 4061# 4061
4063# 4063 4065# 4065 4070# 4070 4072# 4072 4074# 4074 4076# 4076 4078# 4078
4080# 4080 4082# 4082 4084# 4084 4091# 4091 4093# 4093 4095# 4095 4097# 4097
4099# 4099 4101# 4101 4103# 4103 4105# 4105 4107# 4107 4109# 4109 4111# 4111
4113# 4113 4115# 4115 4117# 4117 4119# 4119 4121# 4121 4123# 4123 4125# 4125
4127# 4127 4129# 4129 4131# 4131 4133# 4133 4135# 4135 4137# 4137 4139# 4139
4141# 4141 4143# 4143 4145# 4145 4147# 4147 4149# 4149 4151# 4151 4153# 4153
4155# 4155 4157# 4157 4159# 4159 4161# 4161 4163# 4163 4165# 4165 4167# 4167
4169# 4169 4171# 4171 4173# 4173 4175# 4175 4177# 4177 4179# 4179 4181# 4181
4183# 4183 4185# 4185 4187# 4187 4189# 4189 4196# 4196 4198# 4198 4205# 4205
4207# 4207 4209# 4209 4295# 4295 4297# 4297 4299# 4299 4301# 4301 4303# 4303
4312# 4312 4314# 4314 4316# 4316 4318# 4318 4320# 4320 4322# 4322 4324# 4324
4326# 4326 4328# 4328 4330# 4330 4332# 4332 4337# 4337 4339# 4339 4341# 4341
4343# 4343 4345# 4345 4347# 4347 4349# 4349 4354# 4354 4356# 4356 4358# 4358
4360# 4360 4362# 4362 4364# 4364 4366# 4366 4371# 4371 4373# 4373 4375# 4375
4377# 4377 4379# 4379 4381# 4381 4383# 4383 4388# 4388 4390# 4390 4392# 4392 SEQ 0716
4394# 4394 4396# 4396 4398# 4398 4400# 4400 4402# 4402 4409# 4409 4411# 4411
4413# 4413 4415# 4415 4417# 4417 4419# 4419 4421# 4421 4423# 4423 4425# 4425
4427# 4427 4429# 4429 4431# 4431 4433# 4433 4435# 4435 4437# 4437 4439# 4439
4441# 4441 4443# 4443 4445# 4445 4447# 4447 4449# 4449 4451# 4451 4453# 4453
4455# 4455 4457# 4457 4459# 4459 4461# 4461 4463# 4463 4465# 4465 4467# 4467
4469# 4469 4471# 4471 4473# 4473 4475# 4475 4477# 4477 4479# 4479 4481# 4481
4483# 4483 4485# 4485 4487# 4487 4489# 4489 4491# 4491 4493# 4493 4495# 4495
4497# 4497 4504# 4504 4506# 4506 4513# 4513 4515# 4515 4517# 4517 4598# 4598
4600# 4600 4602# 4602 4604# 4604 4614# 4614 4616# 4616 4618# 4618 4620# 4620
4622# 4622 4624# 4624 4626# 4626 4632# 4632 4634# 4634 4636# 4636 4638# 4638
4640# 4640 4645# 4645 4647# 4647 4649# 4649 4651# 4651 4653# 4653 4655# 4655
%MR 120# 120 122# 122 124# 124 126# 126 128# 128 138# 138 140# 140
142# 142 144# 144 146# 146 148# 148 150# 150 152# 152 154# 154
159# 159 161# 161 163# 163 165# 165 167# 167 169# 169 171# 171
173# 173 178# 178 180# 180 182# 182 184# 184 186# 186 188# 188
190# 190 192# 192 194# 194 196# 196 198# 198 203# 203 205# 205
207# 207 209# 209 211# 211 213# 213 215# 215 217# 217 219# 219
221# 221 223# 223 225# 225 316# 316 318# 318 320# 320 322# 322
324# 324 335# 335 337# 337 339# 339 341# 341 343# 343 345# 345
348# 348 350# 350 352# 352 354# 354 356# 356 358# 358 360# 360
369# 369 371# 371 373# 373 375# 375 377# 377 379# 379 381# 381
383# 383 385# 385 390# 390 392# 392 394# 394 396# 396 398# 398
400# 400 402# 402 404# 404 406# 406 408# 408 410# 410 412# 412
503# 503 505# 505 507# 507 509# 509 511# 511 522# 522 524# 524
526# 526 528# 528 530# 530 532# 532 535# 535 537# 537 539# 539
541# 541 543# 543 545# 545 547# 547 556# 556 558# 558 560# 560
562# 562 564# 564 566# 566 568# 568 570# 570 572# 572 577# 577
579# 579 581# 581 583# 583 585# 585 587# 587 589# 589 591# 591
593# 593 595# 595 597# 597 599# 599 692# 692 694# 694 696# 696
698# 698 700# 700 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 731# 731 733# 733 735# 735
737# 737 739# 739 741# 741 743# 743 745# 745 747# 747 752# 752
754# 754 756# 756 758# 758 760# 760 762# 762 764# 764 766# 766
768# 768 770# 770 772# 772 777# 777 779# 779 781# 781 783# 783
785# 785 787# 787 789# 789 791# 791 793# 793 795# 795 797# 797
799# 799 801# 801 903# 903 905# 905 907# 907 909# 909 911# 911
924# 924 926# 926 928# 928 930# 930 932# 932 934# 934 936# 936
942# 942 944# 944 946# 946 948# 948 950# 950 952# 952 954# 954
963# 963 965# 965 967# 967 969# 969 975# 975 977# 977 979# 979
981# 981 983# 983 985# 985 987# 987 993# 993 995# 995 997# 997
999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009 1015# 1015
1017# 1017 1019# 1019 1021# 1021 1023# 1023 1025# 1025 1027# 1027 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1148# 1148 1150# 1150 1152# 1152
1154# 1154 1156# 1156 1158# 1158 1160# 1160 1162# 1162 1164# 1164 1169# 1169
1171# 1171 1173# 1173 1175# 1175 1177# 1177 1179# 1179 1181# 1181 1183# 1183
1188# 1188 1190# 1190 1192# 1192 1197# 1197 1199# 1199 1201# 1201 1203# 1203
1205# 1205 1207# 1207 1209# 1209 1211# 1211 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1235# 1235 1237# 1237
1239# 1239 1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262
1264# 1264 1266# 1266 1271# 1271 1273# 1273 1275# 1275 1277# 1277 1279# 1279
1281# 1281 1286# 1286 1288# 1288 1290# 1290 1292# 1292 1294# 1294 1296# 1296
1395# 1395 1397# 1397 1399# 1399 1401# 1401 1403# 1403 1414# 1414 1416# 1416
1421# 1421 1423# 1423 1425# 1425 1434# 1434 1436# 1436 1438# 1438 1440# 1440 SEQ 0717
1442# 1442 1447# 1447 1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457
1459# 1459 1461# 1461 1463# 1463 1465# 1465 1467# 1467 1472# 1472 1474# 1474
1476# 1476 1478# 1478 1480# 1480 1482# 1482 1484# 1484 1486# 1486 1488# 1488
1490# 1490 1586# 1586 1588# 1588 1590# 1590 1592# 1592 1594# 1594 1605# 1605
1607# 1607 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1618# 1618 1620# 1620
1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630 1639# 1639 1641# 1641
1643# 1643 1645# 1645 1647# 1647 1649# 1649 1651# 1651 1653# 1653 1655# 1655
1657# 1657 1662# 1662 1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672
1674# 1674 1679# 1679 1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689
1691# 1691 1693# 1693 1695# 1695 1697# 1697 1699# 1699 1701# 1701 1703# 1703
1705# 1705 1707# 1707 1709# 1709 1711# 1711 1713# 1713 1715# 1715 1717# 1717
1722# 1722 1724# 1724 1726# 1726 1728# 1728 1730# 1730 1735# 1735 1737# 1737
1739# 1739 1741# 1741 1743# 1743 1745# 1745 1747# 1747 1841# 1841 1843# 1843
1845# 1845 1847# 1847 1849# 1849 1860# 1860 1862# 1862 1864# 1864 1866# 1866
1868# 1868 1870# 1870 1873# 1873 1875# 1875 1877# 1877 1879# 1879 1881# 1881
1883# 1883 1885# 1885 1894# 1894 1896# 1896 1898# 1898 1900# 1900 1902# 1902
1904# 1904 1906# 1906 1908# 1908 1910# 1910 1912# 1912 1917# 1917 1919# 1919
1921# 1921 1923# 1923 1925# 1925 1927# 1927 1929# 1929 1934# 1934 1936# 1936
1938# 1938 1940# 1940 1942# 1942 1944# 1944 1946# 1946 1948# 1948 1950# 1950
1952# 1952 1954# 1954 1956# 1956 1958# 1958 1960# 1960 1962# 1962 1964# 1964
1966# 1966 1968# 1968 1970# 1970 1972# 1972 1977# 1977 1979# 1979 1981# 1981
1983# 1983 1985# 1985 1990# 1990 1992# 1992 1994# 1994 1996# 1996 1998# 1998
2000# 2000 2002# 2002 2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108
2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126 2128# 2128 2130# 2130
2132# 2132 2134# 2134 2136# 2136 2141# 2141 2143# 2143 2145# 2145 2147# 2147
2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159 2165# 2165
2167# 2167 2169# 2169 2171# 2171 2173# 2173 2175# 2175 2177# 2177 2179# 2179
2181# 2181 2183# 2183 2185# 2185 2187# 2187 2189# 2189 2191# 2191 2196# 2196
2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206 2208# 2208 2210# 2210
2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220 2222# 2222 2224# 2224
2226# 2226 2228# 2228 2230# 2230 2232# 2232 2237# 2237 2239# 2239 2241# 2241
2243# 2243 2245# 2245 2247# 2247 2249# 2249 2251# 2251 2253# 2253 2255# 2255
2257# 2257 2259# 2259 2261# 2261 2263# 2263 2265# 2265 2267# 2267 2269# 2269
2271# 2271 2273# 2273 2275# 2275 2277# 2277 2282# 2282 2284# 2284 2286# 2286
2288# 2288 2290# 2290 2293# 2293 2295# 2295 2297# 2297 2299# 2299 2301# 2301
2306# 2306 2308# 2308 2310# 2310 2312# 2312 2314# 2314 2316# 2316 2318# 2318
2411# 2411 2413# 2413 2415# 2415 2417# 2417 2419# 2419 2424# 2424 2426# 2426
2428# 2428 2430# 2430 2432# 2432 2446# 2446 2448# 2448 2450# 2450 2452# 2452
2454# 2454 2456# 2456 2458# 2458 2460# 2460 2462# 2462 2464# 2464 2469# 2469
2471# 2471 2473# 2473 2475# 2475 2477# 2477 2479# 2479 2481# 2481 2483# 2483
2485# 2485 2490# 2490 2492# 2492 2494# 2494 2496# 2496 2498# 2498 2500# 2500
2502# 2502 2504# 2504 2506# 2506 2508# 2508 2510# 2510 2512# 2512 2514# 2514
2516# 2516 2518# 2518 2520# 2520 2522# 2522 2524# 2524 2526# 2526 2528# 2528
2533# 2533 2535# 2535 2537# 2537 2539# 2539 2541# 2541 2543# 2543 2545# 2545
2638# 2638 2640# 2640 2642# 2642 2644# 2644 2646# 2646 2651# 2651 2653# 2653
2655# 2655 2657# 2657 2659# 2659 2673# 2673 2675# 2675 2677# 2677 2679# 2679
2681# 2681 2683# 2683 2685# 2685 2687# 2687 2689# 2689 2691# 2691 2696# 2696
2698# 2698 2700# 2700 2702# 2702 2704# 2704 2706# 2706 2708# 2708 2710# 2710
2712# 2712 2717# 2717 2719# 2719 2721# 2721 2723# 2723 2725# 2725 2727# 2727
2729# 2729 2731# 2731 2733# 2733 2735# 2735 2737# 2737 2739# 2739 2741# 2741
2743# 2743 2745# 2745 2747# 2747 2749# 2749 2751# 2751 2753# 2753 2755# 2755
2760# 2760 2762# 2762 2764# 2764 2766# 2766 2768# 2768 2770# 2770 2772# 2772
2863# 2863 2865# 2865 2867# 2867 2869# 2869 2871# 2871 2882# 2882 2884# 2884 SEQ 0718
2886# 2886 2888# 2888 2890# 2890 2892# 2892 2894# 2894 2896# 2896 2898# 2898
2900# 2900 2905# 2905 2907# 2907 2909# 2909 2911# 2911 2913# 2913 2915# 2915
2917# 2917 2919# 2919 2921# 2921 2926# 2926 2928# 2928 2930# 2930 2932# 2932
2934# 2934 2936# 2936 2938# 2938 2940# 2940 2945# 2945 2947# 2947 2949# 2949
2951# 2951 2953# 2953 2955# 2955 2957# 2957 2959# 2959 2961# 2961 2963# 2963
2965# 2965 2967# 2967 2969# 2969 2971# 2971 2973# 2973 2975# 2975 2977# 2977
2979# 2979 2981# 2981 2983# 2983 2988# 2988 2990# 2990 2992# 2992 2994# 2994
2996# 2996 2998# 2998 3000# 3000 3091# 3091 3093# 3093 3095# 3095 3097# 3097
3099# 3099 3110# 3110 3112# 3112 3114# 3114 3116# 3116 3118# 3118 3120# 3120
3122# 3122 3124# 3124 3126# 3126 3128# 3128 3133# 3133 3135# 3135 3137# 3137
3139# 3139 3141# 3141 3143# 3143 3145# 3145 3147# 3147 3149# 3149 3154# 3154
3156# 3156 3158# 3158 3160# 3160 3162# 3162 3164# 3164 3166# 3166 3168# 3168
3173# 3173 3175# 3175 3177# 3177 3179# 3179 3181# 3181 3183# 3183 3185# 3185
3187# 3187 3189# 3189 3191# 3191 3193# 3193 3195# 3195 3197# 3197 3199# 3199
3201# 3201 3203# 3203 3205# 3205 3207# 3207 3209# 3209 3211# 3211 3216# 3216
3218# 3218 3220# 3220 3222# 3222 3224# 3224 3226# 3226 3228# 3228 3329# 3329
3331# 3331 3333# 3333 3335# 3335 3337# 3337 3349# 3349 3351# 3351 3353# 3353
3355# 3355 3357# 3357 3359# 3359 3361# 3361 3363# 3363 3365# 3365 3367# 3367
3369# 3369 3371# 3371 3373# 3373 3375# 3375 3377# 3377 3379# 3379 3381# 3381
3383# 3383 3385# 3385 3387# 3387 3392# 3392 3394# 3394 3396# 3396 3398# 3398
3400# 3400 3402# 3402 3404# 3404 3406# 3406 3408# 3408 3410# 3410 3412# 3412
3414# 3414 3416# 3416 3418# 3418 3420# 3420 3422# 3422 3424# 3424 3426# 3426
3428# 3428 3433# 3433 3435# 3435 3437# 3437 3442# 3442 3444# 3444 3446# 3446
3448# 3448 3450# 3450 3452# 3452 3454# 3454 3456# 3456 3458# 3458 3460# 3460
3462# 3462 3467# 3467 3469# 3469 3471# 3471 3473# 3473 3475# 3475 3477# 3477
3479# 3479 3481# 3481 3483# 3483 3485# 3485 3487# 3487 3489# 3489 3491# 3491
3493# 3493 3495# 3495 3497# 3497 3499# 3499 3501# 3501 3503# 3503 3508# 3508
3510# 3510 3512# 3512 3525# 3525 3527# 3527 3529# 3529 3531# 3531 3533# 3533
3535# 3535 3537# 3537 3539# 3539 3541# 3541 3546# 3546 3548# 3548 3550# 3550
3552# 3552 3557# 3557 3559# 3559 3561# 3561 3563# 3563 3565# 3565 3567# 3567
3668# 3668 3670# 3670 3672# 3672 3674# 3674 3676# 3676 3686# 3686 3688# 3688
3690# 3690 3692# 3692 3694# 3694 3699# 3699 3701# 3701 3703# 3703 3705# 3705
3707# 3707 3709# 3709 3711# 3711 3716# 3716 3718# 3718 3720# 3720 3722# 3722
3724# 3724 3726# 3726 3728# 3728 3733# 3733 3735# 3735 3737# 3737 3739# 3739
3741# 3741 3743# 3743 3745# 3745 3750# 3750 3752# 3752 3754# 3754 3756# 3756
3758# 3758 3760# 3760 3762# 3762 3764# 3764 3771# 3771 3773# 3773 3775# 3775
3777# 3777 3779# 3779 3781# 3781 3783# 3783 3785# 3785 3787# 3787 3789# 3789
3791# 3791 3793# 3793 3795# 3795 3797# 3797 3799# 3799 3801# 3801 3803# 3803
3805# 3805 3807# 3807 3809# 3809 3811# 3811 3813# 3813 3815# 3815 3817# 3817
3819# 3819 3821# 3821 3823# 3823 3825# 3825 3827# 3827 3829# 3829 3831# 3831
3833# 3833 3835# 3835 3837# 3837 3839# 3839 3841# 3841 3843# 3843 3845# 3845
3847# 3847 3849# 3849 3851# 3851 3853# 3853 3855# 3855 3857# 3857 3859# 3859
3861# 3861 3863# 3863 3865# 3865 3867# 3867 3869# 3869 3871# 3871 3873# 3873
3875# 3875 3882# 3882 3884# 3884 3891# 3891 3893# 3893 3895# 3895 3989# 3989
3991# 3991 3993# 3993 3995# 3995 3997# 3997 4006# 4006 4008# 4008 4010# 4010
4012# 4012 4014# 4014 4019# 4019 4021# 4021 4023# 4023 4025# 4025 4027# 4027
4029# 4029 4031# 4031 4036# 4036 4038# 4038 4040# 4040 4042# 4042 4044# 4044
4046# 4046 4048# 4048 4053# 4053 4055# 4055 4057# 4057 4059# 4059 4061# 4061
4063# 4063 4065# 4065 4070# 4070 4072# 4072 4074# 4074 4076# 4076 4078# 4078
4080# 4080 4082# 4082 4084# 4084 4091# 4091 4093# 4093 4095# 4095 4097# 4097
4099# 4099 4101# 4101 4103# 4103 4105# 4105 4107# 4107 4109# 4109 4111# 4111
4113# 4113 4115# 4115 4117# 4117 4119# 4119 4121# 4121 4123# 4123 4125# 4125
4127# 4127 4129# 4129 4131# 4131 4133# 4133 4135# 4135 4137# 4137 4139# 4139 SEQ 0719
4141# 4141 4143# 4143 4145# 4145 4147# 4147 4149# 4149 4151# 4151 4153# 4153
4155# 4155 4157# 4157 4159# 4159 4161# 4161 4163# 4163 4165# 4165 4167# 4167
4169# 4169 4171# 4171 4173# 4173 4175# 4175 4177# 4177 4179# 4179 4181# 4181
4183# 4183 4185# 4185 4187# 4187 4189# 4189 4196# 4196 4198# 4198 4205# 4205
4207# 4207 4209# 4209 4295# 4295 4297# 4297 4299# 4299 4301# 4301 4303# 4303
4312# 4312 4314# 4314 4316# 4316 4318# 4318 4320# 4320 4322# 4322 4324# 4324
4326# 4326 4328# 4328 4330# 4330 4332# 4332 4337# 4337 4339# 4339 4341# 4341
4343# 4343 4345# 4345 4347# 4347 4349# 4349 4354# 4354 4356# 4356 4358# 4358
4360# 4360 4362# 4362 4364# 4364 4366# 4366 4371# 4371 4373# 4373 4375# 4375
4377# 4377 4379# 4379 4381# 4381 4383# 4383 4388# 4388 4390# 4390 4392# 4392
4394# 4394 4396# 4396 4398# 4398 4400# 4400 4402# 4402 4409# 4409 4411# 4411
4413# 4413 4415# 4415 4417# 4417 4419# 4419 4421# 4421 4423# 4423 4425# 4425
4427# 4427 4429# 4429 4431# 4431 4433# 4433 4435# 4435 4437# 4437 4439# 4439
4441# 4441 4443# 4443 4445# 4445 4447# 4447 4449# 4449 4451# 4451 4453# 4453
4455# 4455 4457# 4457 4459# 4459 4461# 4461 4463# 4463 4465# 4465 4467# 4467
4469# 4469 4471# 4471 4473# 4473 4475# 4475 4477# 4477 4479# 4479 4481# 4481
4483# 4483 4485# 4485 4487# 4487 4489# 4489 4491# 4491 4493# 4493 4495# 4495
4497# 4497 4504# 4504 4506# 4506 4513# 4513 4515# 4515 4517# 4517 4598# 4598
4600# 4600 4602# 4602 4604# 4604 4614# 4614 4616# 4616 4618# 4618 4620# 4620
4622# 4622 4624# 4624 4626# 4626 4632# 4632 4634# 4634 4636# 4636 4638# 4638
4640# 4640 4645# 4645 4647# 4647 4649# 4649 4651# 4651 4653# 4653 4655# 4655
.DATAI 26#
.DATAO 26#
.LA 337 339 341 343 345 348 350 352 354 356 379 524 526 528
530 532 535 537 539 541 543 566 741 791 975 981 993 995
1001 1017 1252 1254 1256 1262 1271 1273 1286 1414 1421 1434 1447 1449
1453 1459 1474 1607 1609 1611 1613 1615 1618 1620 1622 1624 1626 1639
1651 1707 1862 1864 1866 1868 1870 1873 1875 1877 1879 1881 1894 1906
1962 2153 2267 3529 3531 3537 3546 3548 3557 3692 3694 3699 3703 3707
3716 3720 3724 3733 3737 3741 3750 3754 3758 3773 3787 3797 3803 3805
3807 3819 3823 3827 3831 3839 3845 3853 3859 3865 3867 3869 4012 4014
4019 4023 4027 4036 4040 4044 4053 4057 4061 4070 4074 4078 4105 4115
4121 4123 4125 4137 4141 4145 4149 4157 4163 4171 4177 4183 4185 4187
4318 4320 4337 4341 4345 4354 4358 4362 4371 4375 4379 4388 4392 4396
4423 4433 4439 4441 4443 4455 4459 4463 4471 4477 4483 4489 4491 4493
4626 4645 4647 4649 4651 4653
.LADDR 120 122 138 316 318 335 369 503 505 522 556 692 694 710
903 905 924 963 1128 1130 1148 1252 1271 1395 1397 1414 1434 1586
1588 1605 1639 1722 1735 1841 1843 1860 1894 1977 1990 2100 2102 2118
2282 2293 2306 2411 2413 2446 2533 2638 2640 2673 2760 2863 2865 2882
2988 3091 3093 3110 3216 3329 3331 3349 3525 3546 3668 3670 3686 3771
3882 3891 3989 3991 4006 4091 4196 4205 4295 4297 4312 4409 4504 4513
4598 4600 4614
.LAND 124 148 178 182 192 217 225 320 335 354 360 390 404 507
522 541 547 577 591 696 720 739 752 756 766 777 793 801
907 954 963 979 999 1003 1019 1132 1158 1177 1190 1205 1224 1239
1252 1254 1288 1399 1414 1421 1425 1436 1447 1455 1472 1478 1482 1590
1605 1624 1630 1679 1693 1701 1709 1845 1860 1879 1885 1934 1948 1956
1964 2104 2130 2151 2196 2210 2218 2224 2226 2237 2251 2259 2269 2277
2415 2432 2458 2490 2504 2512 2518 2520 2642 2659 2685 2717 2731 2739
2745 2747 2867 2894 2915 2945 2959 2967 2973 2975 2983 3095 3122 3143
3173 3187 3195 3201 3203 3211 3333 3365 3406 3435 3456 3481 3512 3525
3529 3559 3672 3688 3694 3699 3703 3707 3716 3720 3724 3733 3737 3741 SEQ 0720
3750 3754 3758 3764 3771 3787 3797 3809 3811 3819 3823 3827 3831 3839
3845 3853 3855 3859 3865 3867 3869 3993 4008 4014 4019 4023 4027 4036
4040 4044 4053 4057 4061 4070 4074 4078 4084 4105 4115 4127 4129 4137
4141 4145 4149 4157 4163 4171 4173 4177 4183 4185 4187 4299 4314 4320
4337 4341 4345 4354 4358 4362 4371 4375 4379 4388 4392 4396 4402 4423
4433 4445 4447 4455 4459 4463 4471 4477 4479 4483 4489 4491 4493 4600
4614 4622 4638 4645 4647 4653
.LB 124 126 128 178 180 182 192 194 203 205 217 219 225 320
322 324 335 337 339 341 343 345 348 350 352 354 356 360
390 392 404 406 507 509 511 522 524 526 528 530 532 535
537 539 541 543 547 577 579 591 593 696 698 700 739 747
752 754 756 766 768 772 777 779 791 793 795 799 801 907
909 911 934 936 950 952 954 979 987 993 999 1001 1003 1005
1009 1017 1019 1021 1025 1132 1134 1136 1188 1190 1192 1235 1237 1239
1252 1254 1256 1258 1262 1264 1286 1288 1290 1294 1399 1401 1403 1414
1416 1421 1423 1425 1447 1449 1451 1453 1465 1467 1472 1482 1484 1488
1590 1592 1594 1605 1607 1609 1611 1613 1615 1618 1620 1622 1624 1626
1630 1639 1679 1681 1691 1693 1695 1699 1701 1703 1707 1709 1711 1845
1847 1849 1860 1862 1864 1866 1868 1870 1873 1875 1877 1879 1881 1885
1894 1934 1936 1946 1948 1950 1954 1956 1958 1962 1964 1966 2104 2106
2108 2151 2159 2196 2198 2208 2210 2212 2216 2218 2220 2224 2226 2228
2232 2237 2239 2249 2251 2253 2257 2259 2261 2267 2269 2271 2275 2277
2415 2417 2419 2432 2490 2492 2502 2504 2506 2510 2512 2514 2518 2520
2522 2526 2642 2644 2646 2659 2717 2719 2729 2731 2733 2737 2739 2741
2745 2747 2749 2753 2867 2869 2871 2945 2947 2957 2959 2961 2965 2967
2969 2973 2975 2977 2981 2983 3095 3097 3099 3173 3175 3185 3187 3189
3193 3195 3197 3201 3203 3205 3209 3211 3333 3335 3337 3433 3435 3437
3508 3510 3512 3525 3527 3529 3531 3533 3537 3539 3557 3559 3561 3565
3672 3674 3676 3688 3690 3692 3694 3711 3728 3745 3762 3764 3771 3773
3855 3857 3859 3861 3863 3865 3867 3869 3873 3993 3995 3997 4008 4010
4012 4014 4031 4048 4065 4082 4084 4173 4175 4177 4179 4181 4183 4185
4187 4299 4301 4303 4314 4316 4318 4320 4349 4366 4383 4400 4402 4479
4481 4483 4485 4487 4489 4491 4493 4600 4602 4604 4614 4622 4624 4626
4638 4640 4645 4647 4649 4651 4653 4655
.LCCAF 1726 2286 2481 3166 3385 3426
.LCCBF 1981 2297 2708 2938 3501
.LCCFZ 356 543 1262 1465 1626 1881 3537 3773 3869 3891 4187 4205 4493 4513
4653
.LCCXA 3841 4159 4473
.LCENA 356 543 1262 1465 1626 1726 1881 1981 2286 2297 2481 2708 2938 3166
3385 3426 3501 3537 3773 3841 3869 3891 4159 4187 4205 4473 4493 4513
4653
.LCJP 356 543 1262 1465 1626 1726 1881 1981 2286 2297 2481 2708 2938 3166
3385 3426 3501 3537 3773 3841 3869 3891 4159 4187 4205 4473 4493 4513
4653
.LCJS 122 196 221 318 337 339 343 345 350 352 408 505 524 526
530 532 537 539 595 694 770 797 905 936 952 1007 1023 1130
1192 1237 1260 1292 1397 1416 1423 1486 1588 1607 1609 1613 1615 1620
1622 1649 1674 1697 1705 1713 1843 1862 1864 1868 1870 1875 1877 1904
1929 1952 1960 1968 2102 2128 2149 2177 2191 2214 2222 2230 2255 2263
2273 2413 2424 2426 2428 2430 2456 2508 2516 2524 2640 2651 2653 2655
2657 2683 2735 2743 2751 2865 2892 2913 2963 2971 2979 3093 3120 3141
3191 3199 3207 3331 3437 3510 3535 3563 3670 3711 3728 3745 3762 3787 SEQ 0721
3797 3799 3801 3803 3805 3807 3809 3811 3819 3823 3827 3831 3839 3845
3853 3991 4031 4048 4065 4082 4105 4115 4117 4119 4121 4123 4125 4127
4129 4137 4141 4145 4149 4157 4163 4171 4297 4349 4366 4383 4400 4423
4433 4435 4437 4439 4441 4443 4445 4447 4455 4459 4463 4471 4477
.LCONT 140 142 144 146 150 152 159 161 163 165 169 171 178 180
184 186 188 190 192 194 203 205 209 211 213 215 217 219
335 341 348 354 371 373 375 377 381 383 390 392 396 398
400 402 404 406 522 528 535 541 558 560 562 564 568 570
577 579 583 585 587 589 591 593 712 714 716 718 722 724
731 733 735 737 741 743 745 752 754 758 760 762 764 766
768 777 779 783 785 787 789 791 793 795 926 928 930 932
934 942 944 946 948 950 965 967 975 977 981 983 985 993
995 997 1001 1003 1005 1017 1019 1021 1150 1152 1154 1156 1160 1162
1169 1171 1173 1175 1179 1181 1188 1190 1197 1199 1201 1203 1207 1209
1216 1218 1220 1222 1226 1228 1235 1254 1271 1273 1275 1277 1279 1281
1288 1290 1414 1421 1438 1440 1447 1453 1455 1457 1459 1461 1463 1474
1476 1478 1480 1482 1484 1605 1611 1618 1624 1641 1643 1645 1647 1653
1655 1662 1664 1666 1668 1670 1672 1679 1681 1683 1685 1687 1689 1691
1693 1695 1699 1701 1703 1709 1711 1735 1737 1739 1741 1743 1745 1860
1866 1873 1879 1896 1898 1900 1902 1908 1910 1917 1919 1921 1923 1925
1927 1934 1936 1938 1940 1942 1944 1946 1948 1950 1954 1956 1958 1964
1966 1990 1992 1994 1996 1998 2000 2120 2122 2124 2126 2132 2134 2141
2143 2145 2147 2153 2155 2157 2165 2167 2169 2171 2173 2175 2179 2181
2183 2185 2187 2189 2196 2198 2200 2202 2204 2206 2208 2210 2212 2216
2218 2220 2226 2228 2237 2239 2241 2243 2245 2247 2249 2251 2253 2257
2259 2261 2267 2269 2271 2306 2308 2310 2312 2314 2316 2419 2448 2450
2452 2454 2460 2462 2469 2471 2473 2475 2477 2479 2485 2490 2492 2494
2496 2498 2500 2502 2504 2506 2510 2512 2514 2520 2522 2533 2535 2537
2539 2541 2543 2646 2675 2677 2679 2681 2687 2689 2696 2698 2700 2702
2704 2706 2712 2717 2719 2721 2723 2725 2727 2729 2731 2733 2737 2739
2741 2747 2749 2760 2762 2764 2766 2768 2770 2884 2886 2888 2890 2896
2898 2905 2907 2909 2911 2917 2919 2926 2928 2930 2932 2934 2936 2945
2947 2949 2951 2953 2955 2957 2959 2961 2965 2967 2969 2975 2977 2988
2990 2992 2994 2996 2998 3112 3114 3116 3118 3124 3126 3133 3135 3137
3139 3145 3147 3154 3156 3158 3160 3162 3164 3173 3175 3177 3179 3181
3183 3185 3187 3189 3193 3195 3197 3203 3205 3216 3218 3220 3222 3224
3226 3351 3353 3355 3357 3359 3361 3363 3367 3369 3373 3375 3377 3379
3381 3383 3392 3394 3396 3398 3400 3402 3404 3408 3410 3414 3416 3418
3420 3422 3424 3433 3435 3442 3444 3446 3448 3450 3452 3454 3458 3460
3467 3469 3471 3473 3475 3477 3479 3483 3485 3489 3491 3493 3495 3497
3499 3508 3527 3529 3546 3548 3550 3552 3559 3561 3688 3690 3692 3694
3699 3701 3703 3705 3707 3709 3716 3718 3720 3722 3724 3726 3733 3735
3737 3739 3741 3743 3750 3752 3754 3756 3758 3760 3775 3777 3779 3781
3783 3785 3789 3791 3793 3795 3813 3815 3817 3821 3825 3829 3833 3835
3837 3847 3849 3851 3855 3857 3859 3861 3863 3865 3867 3882 4008 4010
4012 4014 4019 4021 4023 4025 4027 4029 4036 4038 4040 4042 4044 4046
4053 4055 4057 4059 4061 4063 4070 4072 4074 4076 4078 4080 4093 4095
4097 4099 4101 4103 4107 4109 4111 4113 4131 4133 4135 4139 4143 4147
4151 4153 4155 4165 4167 4169 4173 4175 4177 4179 4181 4183 4185 4196
4314 4316 4318 4320 4322 4324 4326 4328 4330 4332 4337 4339 4341 4343
4345 4347 4354 4356 4358 4360 4362 4364 4371 4373 4375 4377 4379 4381
4388 4390 4392 4394 4396 4398 4411 4413 4415 4417 4419 4421 4425 4427
4429 4431 4449 4451 4453 4457 4461 4465 4467 4469 4479 4481 4483 4485 SEQ 0722
4487 4489 4491 4504 4616 4618 4620 4622 4624 4626 4632 4634 4636 4638
4640 4645 4647 4649 4651
.LCRTN 412 599 1027 1266 1296 1490 1717 1730 1747 1972 1985 2002 2290 2301
2318 2528 2545 2755 2772 3000 3228 3541 3567 3875 3884 3895 4189 4198
4209 4497 4506 4517
.LCRY 126 128 180 322 324 341 392 509 511 528 579 698 700 726
747 754 772 799 909 911 969 987 1009 1025 1134 1136 1164 1192
1211 1264 1294 1401 1403 1488 1592 1594 1611 1681 1847 1849 1866 1936
2106 2108 2136 2159 2198 2232 2275 2417 2419 2464 2492 2526 2644 2646
2691 2719 2753 2869 2871 2900 2947 2981 3097 3099 3128 3175 3209 3335
3337 3371 3437 3462 3527 3539 3565 3674 3676 3863 3873 3995 3997 4181
4301 4303 4487 4602 4604
.LD 124 126 128 140 142 146 148 150 159 161 165 167 169 178
180 182 184 186 190 192 194 203 205 209 211 215 217 219
225 320 322 324 335 337 339 341 343 345 348 350 352 354
356 358 360 371 373 377 379 381 390 392 396 398 402 404
406 412 507 509 511 522 524 526 528 530 532 535 537 539
541 543 545 547 558 560 564 566 568 577 579 583 585 589
591 593 599 696 698 700 712 714 718 720 722 726 731 733
737 739 741 743 747 752 754 756 758 760 764 766 768 772
777 779 783 785 789 791 793 795 799 801 907 909 911 926
928 932 934 936 942 944 948 950 952 954 963 965 969 975
979 981 983 987 993 995 999 1001 1003 1005 1009 1017 1019 1021
1025 1132 1134 1136 1150 1152 1156 1158 1160 1164 1169 1171 1175 1177
1179 1188 1190 1192 1197 1199 1203 1205 1207 1211 1216 1218 1222 1224
1226 1235 1237 1239 1252 1254 1256 1258 1262 1264 1266 1271 1273 1275
1277 1281 1286 1288 1290 1292 1294 1296 1399 1401 1403 1414 1416 1421
1423 1425 1434 1436 1438 1447 1449 1451 1453 1455 1457 1459 1461 1465
1467 1472 1474 1476 1478 1480 1482 1484 1488 1590 1592 1594 1605 1607
1609 1611 1613 1615 1618 1620 1622 1624 1626 1628 1630 1639 1641 1643
1647 1651 1653 1662 1664 1668 1670 1679 1681 1683 1685 1689 1691 1693
1695 1699 1701 1703 1707 1709 1711 1735 1737 1741 1743 1845 1847 1849
1860 1862 1864 1866 1868 1870 1873 1875 1877 1879 1881 1883 1885 1894
1896 1898 1902 1906 1908 1917 1919 1923 1925 1934 1936 1938 1940 1944
1946 1948 1950 1954 1956 1958 1962 1964 1966 1990 1992 1996 1998 2104
2106 2108 2120 2122 2126 2130 2132 2136 2141 2143 2147 2151 2153 2155
2159 2165 2167 2171 2173 2179 2181 2185 2187 2196 2198 2200 2202 2206
2208 2210 2212 2216 2218 2220 2224 2226 2228 2232 2237 2239 2241 2243
2247 2249 2251 2253 2257 2259 2261 2267 2269 2271 2275 2277 2306 2308
2312 2314 2415 2417 2419 2432 2448 2450 2454 2458 2460 2464 2469 2471
2475 2477 2490 2492 2494 2496 2500 2502 2504 2506 2510 2512 2514 2518
2520 2522 2526 2533 2535 2539 2541 2642 2644 2646 2659 2675 2677 2681
2685 2687 2691 2696 2698 2702 2704 2717 2719 2721 2723 2727 2729 2731
2733 2737 2739 2741 2745 2747 2749 2753 2760 2762 2766 2768 2867 2869
2871 2884 2886 2890 2894 2896 2900 2905 2907 2911 2915 2917 2926 2928
2932 2934 2945 2947 2949 2951 2955 2957 2959 2961 2965 2967 2969 2973
2975 2977 2981 2983 2988 2990 2994 2996 3095 3097 3099 3112 3114 3118
3122 3124 3128 3133 3135 3139 3143 3145 3154 3156 3160 3162 3173 3175
3177 3179 3183 3185 3187 3189 3193 3195 3197 3201 3203 3205 3209 3211
3216 3218 3222 3224 3333 3335 3337 3351 3353 3357 3359 3361 3365 3367
3371 3373 3375 3379 3381 3392 3394 3398 3400 3402 3406 3408 3414 3416
3420 3422 3433 3435 3437 3442 3444 3448 3450 3452 3456 3458 3462 3467
3469 3473 3475 3477 3481 3483 3489 3491 3495 3497 3508 3510 3512 3525 SEQ 0723
3527 3529 3531 3533 3537 3539 3541 3546 3548 3550 3557 3559 3561 3563
3565 3567 3672 3674 3676 3688 3690 3692 3694 3699 3701 3703 3705 3707
3709 3711 3716 3718 3720 3722 3724 3726 3728 3733 3735 3737 3739 3741
3743 3745 3750 3752 3754 3756 3758 3760 3762 3764 3771 3773 3775 3777
3781 3783 3787 3789 3791 3795 3797 3799 3801 3803 3805 3807 3809 3811
3813 3815 3819 3823 3827 3831 3833 3835 3839 3845 3847 3849 3853 3855
3857 3859 3861 3863 3865 3867 3869 3873 3882 3891 3993 3995 3997 4008
4010 4012 4014 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040 4042
4044 4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074 4076
4078 4080 4082 4084 4093 4095 4099 4101 4105 4107 4109 4113 4115 4117
4119 4121 4123 4125 4127 4129 4131 4133 4137 4141 4145 4149 4151 4153
4157 4163 4165 4167 4171 4173 4175 4177 4179 4181 4183 4185 4187 4196
4205 4299 4301 4303 4314 4316 4318 4320 4322 4324 4328 4330 4337 4339
4341 4343 4345 4347 4349 4354 4356 4358 4360 4362 4364 4366 4371 4373
4375 4377 4379 4381 4383 4388 4390 4392 4394 4396 4398 4400 4402 4411
4413 4417 4419 4423 4425 4427 4431 4433 4435 4437 4439 4441 4443 4445
4447 4449 4451 4455 4459 4463 4465 4467 4471 4477 4479 4481 4483 4485
4487 4489 4491 4493 4504 4513 4600 4602 4604 4614 4616 4618 4622 4624
4626 4632 4634 4638 4640 4645 4647 4649 4651 4653 4655
.LJ 122 124 126 128 138 148 154 167 173 182 196 198 207 221
223 225 318 320 322 324 337 339 343 345 350 352 356 358
360 369 379 385 394 408 410 505 507 509 511 524 526 530
532 537 539 543 545 547 556 566 572 581 595 597 694 696
698 700 710 720 726 739 747 756 770 772 781 797 799 801
905 907 909 911 924 936 952 954 963 969 979 987 999 1007
1009 1015 1023 1025 1130 1132 1134 1136 1148 1158 1164 1177 1183 1192
1205 1211 1224 1230 1237 1239 1252 1256 1258 1260 1262 1264 1286 1292
1294 1397 1399 1401 1403 1416 1423 1425 1434 1436 1442 1449 1451 1465
1467 1472 1486 1488 1588 1590 1592 1594 1607 1609 1613 1615 1620 1622
1626 1628 1630 1639 1649 1651 1657 1674 1697 1705 1707 1713 1715 1722
1724 1726 1728 1843 1845 1847 1849 1862 1864 1868 1870 1875 1877 1881
1883 1885 1894 1904 1906 1912 1929 1952 1960 1962 1968 1970 1977 1979
1981 1983 2102 2104 2106 2108 2118 2128 2130 2136 2149 2151 2159 2177
2191 2214 2222 2224 2230 2232 2255 2263 2265 2273 2275 2277 2282 2284
2286 2288 2293 2295 2297 2299 2413 2415 2417 2424 2426 2428 2430 2432
2446 2456 2458 2464 2481 2483 2508 2516 2518 2524 2526 2640 2642 2644
2651 2653 2655 2657 2659 2673 2683 2685 2691 2708 2710 2735 2743 2745
2751 2753 2865 2867 2869 2871 2882 2892 2894 2900 2913 2915 2921 2938
2940 2963 2971 2973 2979 2981 2983 3093 3095 3097 3099 3110 3120 3122
3128 3141 3143 3149 3166 3168 3191 3199 3201 3207 3209 3211 3331 3333
3335 3337 3349 3365 3371 3385 3387 3406 3412 3426 3428 3437 3456 3462
3481 3487 3501 3503 3510 3512 3525 3531 3533 3535 3537 3539 3557 3563
3565 3670 3672 3674 3676 3686 3711 3728 3745 3762 3764 3771 3773 3787
3797 3799 3801 3803 3805 3807 3809 3811 3819 3823 3827 3831 3839 3841
3843 3845 3853 3869 3871 3873 3891 3893 3991 3993 3995 3997 4006 4031
4048 4065 4082 4084 4091 4105 4115 4117 4119 4121 4123 4125 4127 4129
4137 4141 4145 4149 4157 4159 4161 4163 4171 4187 4205 4207 4297 4299
4301 4303 4312 4349 4366 4383 4400 4402 4409 4423 4433 4435 4437 4439
4441 4443 4445 4447 4455 4459 4463 4471 4473 4475 4477 4493 4495 4513
4515 4600 4602 4604 4614 4653 4655
.LJMAP 128 138 225 324 358 360 369 511 545 547 556 700 710 801
911 924 954 1136 1148 1239 1252 1264 1403 1425 1434 1467 1594 1628
1630 1639 1728 1849 1883 1885 1894 1983 2108 2118 2277 2288 2299 2432 SEQ 0724
2446 2483 2659 2673 2710 2871 2882 2940 2983 3099 3110 3168 3211 3337
3349 3387 3428 3503 3512 3525 3539 3676 3686 3764 3843 3871 3893 3997
4006 4084 4091 4161 4207 4303 4312 4402 4409 4475 4495 4515 4604 4614
4655
.LJZ 120 316 503 692 903 1128 1395 1586 1841 2100 2411 2638 2863 3091
3329 3668 3989 4295 4598
.LLDCT 124 148 167 182 207 320 379 394 507 566 581 696 720 739
756 781 907 963 979 999 1015 1132 1158 1177 1205 1224 1256 1286
1399 1436 1449 1472 1590 1651 1707 1722 1845 1906 1962 1977 2104 2130
2151 2224 2265 2282 2293 2415 2458 2518 2642 2685 2745 2867 2894 2915
2973 3095 3122 3143 3201 3333 3365 3406 3456 3481 3531 3557 3672 3771
3993 4299 4600
.LLDLM 3701 3705 3709 3718 3722 3726 3735 3739 3743 3752 3756 3760 4021 4025
4029 4038 4042 4046 4055 4059 4063 4072 4076 4080 4339 4343 4347 4356
4360 4364 4373 4377 4381 4390 4394 4398
.LMGC 140 142 144 150 152 159 161 163 167 169 171 184 186 188
192 194 203 205 209 211 213 217 219 354 371 373 375 381
383 396 398 400 404 406 541 558 560 562 568 570 583 585
587 591 593 712 714 716 722 724 731 733 735 743 745 758
760 762 766 768 779 783 785 787 793 795 926 928 930 934
936 942 944 946 950 952 965 967 975 977 983 985 993 995
997 1003 1005 1019 1021 1150 1152 1154 1160 1162 1169 1171 1173 1179
1181 1188 1197 1199 1201 1207 1209 1216 1218 1220 1226 1228 1235 1252
1254 1275 1277 1279 1288 1290 1414 1416 1421 1423 1434 1436 1438 1440
1447 1453 1455 1461 1463 1474 1476 1478 1482 1484 1624 1641 1643 1645
1653 1655 1662 1664 1666 1668 1670 1672 1683 1685 1687 1691 1693 1695
1699 1701 1703 1709 1711 1735 1737 1739 1741 1743 1745 1879 1896 1898
1900 1908 1910 1917 1919 1921 1923 1925 1927 1938 1940 1942 1946 1948
1950 1954 1956 1958 1964 1966 1990 1992 1994 1996 1998 2000 2120 2122
2124 2132 2134 2141 2143 2145 2155 2157 2165 2167 2169 2171 2173 2175
2179 2181 2183 2185 2187 2189 2200 2202 2204 2208 2210 2212 2216 2218
2220 2226 2228 2239 2241 2243 2245 2249 2251 2253 2257 2259 2261 2269
2271 2306 2308 2310 2312 2314 2316 2448 2450 2452 2460 2462 2469 2471
2473 2475 2477 2479 2494 2496 2498 2502 2504 2506 2510 2512 2514 2520
2522 2533 2535 2537 2539 2541 2543 2675 2677 2679 2687 2689 2696 2698
2700 2702 2704 2706 2721 2723 2725 2729 2731 2733 2737 2739 2741 2747
2749 2760 2762 2764 2766 2768 2770 2884 2886 2888 2896 2898 2905 2907
2909 2917 2919 2926 2928 2930 2932 2934 2936 2949 2951 2953 2957 2959
2961 2965 2967 2969 2975 2977 2988 2990 2992 2994 2996 2998 3112 3114
3116 3124 3126 3133 3135 3137 3145 3147 3154 3156 3158 3160 3162 3164
3177 3179 3181 3185 3187 3189 3193 3195 3197 3203 3205 3216 3218 3220
3222 3224 3226 3351 3353 3355 3359 3361 3363 3367 3369 3373 3375 3377
3379 3381 3383 3392 3394 3396 3400 3402 3404 3408 3410 3414 3416 3418
3420 3422 3424 3433 3442 3444 3446 3450 3452 3454 3458 3460 3467 3469
3471 3475 3477 3479 3483 3485 3489 3491 3493 3495 3497 3499 3508 3529
3550 3552 3559 3561 3688 3690 3699 3701 3703 3705 3707 3709 3711 3716
3718 3720 3722 3724 3726 3728 3733 3735 3737 3739 3741 3743 3745 3750
3752 3754 3756 3758 3760 3762 3775 3777 3779 3781 3783 3785 3787 3789
3791 3793 3797 3799 3801 3813 3815 3817 3819 3821 3823 3825 3827 3829
3831 3833 3835 3837 3839 3845 3847 3849 3851 3853 3855 3857 3861 3865
3882 3884 4008 4010 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040
4042 4044 4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074
4076 4078 4080 4082 4093 4095 4097 4099 4101 4103 4105 4107 4109 4111 SEQ 0725
4115 4117 4119 4131 4133 4135 4137 4139 4141 4143 4145 4147 4149 4151
4153 4155 4157 4163 4165 4167 4169 4171 4173 4175 4179 4183 4196 4198
4314 4316 4322 4324 4326 4328 4330 4332 4337 4339 4341 4343 4345 4347
4349 4354 4356 4358 4360 4362 4364 4366 4371 4373 4375 4377 4379 4381
4383 4388 4390 4392 4394 4396 4398 4400 4411 4413 4415 4417 4419 4421
4423 4425 4427 4429 4433 4435 4437 4449 4451 4453 4455 4457 4459 4461
4463 4465 4467 4469 4471 4477 4479 4481 4485 4489 4504 4506 4616 4618
4620 4622 4624 4632 4634 4636 4638 4640 4655
.LOENA 142 150 161 169 186 211 373 381 398 560 568 585 714 722
733 743 760 785 928 944 965 975 983 995 1152 1160 1171 1179
1199 1207 1218 1226 1277 1434 1438 1453 1461 1476 1643 1653 1664 1670
1685 1737 1743 1898 1908 1919 1925 1940 1992 1998 2122 2132 2143 2155
2167 2173 2181 2187 2202 2243 2308 2314 2450 2460 2471 2477 2496 2535
2541 2677 2687 2698 2704 2723 2762 2768 2886 2896 2907 2917 2928 2934
2951 2990 2996 3114 3124 3135 3145 3156 3162 3179 3218 3224 3353 3361
3367 3375 3381 3394 3402 3408 3416 3422 3444 3452 3458 3469 3477 3483
3491 3497 3550 3701 3705 3709 3718 3722 3726 3735 3739 3743 3752 3756
3760 3777 3783 3791 3815 3835 3849 3882 4021 4025 4029 4038 4042 4046
4055 4059 4063 4072 4076 4080 4095 4101 4109 4133 4153 4167 4196 4324
4330 4339 4343 4347 4356 4360 4364 4373 4377 4381 4390 4394 4398 4413
4419 4427 4451 4467 4504 4618 4634
.LOR 140 142 150 159 161 167 169 184 186 194 203 205 209 211
219 337 343 348 350 371 373 379 381 396 398 406 524 530
535 537 558 560 566 568 583 585 593 712 714 722 731 733
743 758 760 768 779 783 785 795 926 928 934 936 942 944
950 952 965 975 983 993 995 1005 1017 1021 1150 1152 1160 1169
1171 1179 1188 1197 1199 1207 1216 1218 1226 1235 1256 1258 1271 1273
1275 1277 1286 1290 1416 1423 1434 1438 1449 1451 1453 1459 1461 1465
1474 1476 1484 1607 1613 1618 1620 1639 1641 1643 1651 1653 1662 1664
1668 1670 1683 1685 1691 1695 1699 1703 1707 1711 1735 1737 1741 1743
1862 1868 1873 1875 1894 1896 1898 1906 1908 1917 1919 1923 1925 1938
1940 1946 1950 1954 1958 1962 1966 1990 1992 1996 1998 2120 2122 2132
2141 2143 2155 2165 2167 2171 2173 2179 2181 2185 2187 2200 2202 2208
2212 2216 2220 2228 2239 2241 2243 2249 2253 2257 2261 2271 2306 2308
2312 2314 2448 2450 2460 2469 2471 2475 2477 2494 2496 2502 2506 2510
2514 2522 2533 2535 2539 2541 2675 2677 2687 2696 2698 2702 2704 2721
2723 2729 2733 2737 2741 2749 2760 2762 2766 2768 2884 2886 2896 2905
2907 2917 2926 2928 2932 2934 2949 2951 2957 2961 2965 2969 2977 2988
2990 2994 2996 3112 3114 3124 3133 3135 3145 3154 3156 3160 3162 3177
3179 3185 3189 3193 3197 3205 3216 3218 3222 3224 3351 3353 3359 3361
3367 3373 3375 3379 3381 3392 3394 3400 3402 3408 3414 3416 3420 3422
3433 3442 3444 3450 3452 3458 3467 3469 3475 3477 3483 3489 3491 3495
3497 3508 3531 3533 3546 3548 3550 3561 3690 3692 3701 3705 3709 3711
3718 3722 3726 3728 3735 3739 3743 3745 3752 3756 3760 3762 3775 3777
3781 3783 3789 3791 3799 3801 3803 3807 3813 3815 3833 3835 3847 3849
3857 3861 3882 4010 4012 4021 4025 4029 4031 4038 4042 4046 4048 4055
4059 4063 4065 4072 4076 4080 4082 4093 4095 4099 4101 4107 4109 4117
4119 4121 4125 4131 4133 4151 4153 4165 4167 4175 4179 4196 4316 4318
4322 4324 4328 4330 4339 4343 4347 4349 4356 4360 4364 4366 4373 4377
4381 4383 4390 4394 4398 4400 4411 4413 4417 4419 4425 4427 4435 4437
4439 4443 4449 4451 4465 4467 4481 4485 4504 4616 4618 4624 4626 4632
4634 4640 4655
.LPLUS 126 128 180 322 324 341 392 509 511 528 579 698 700 726 SEQ 0726
747 754 772 799 909 911 969 987 1009 1025 1134 1136 1164 1192
1211 1237 1264 1294 1401 1403 1488 1592 1594 1611 1681 1847 1849 1866
1936 2106 2108 2136 2159 2198 2232 2275 2417 2419 2464 2492 2526 2644
2646 2691 2719 2753 2869 2871 2900 2947 2981 3097 3099 3128 3175 3209
3335 3337 3371 3437 3462 3510 3527 3539 3565 3674 3676 3863 3873 3995
3997 4181 4301 4303 4487 4602 4604
.LRDLM 3789 3813 3833 3847 3861 4107 4131 4151 4165 4179 4425 4449 4465 4485
.LRPCT 126 154 173 198 223 322 385 410 509 572 597 698 726 747
772 799 909 969 987 1009 1025 1134 1164 1183 1211 1230 1258 1294
1401 1442 1451 1488 1592 1657 1715 1724 1847 1912 1970 1979 2106 2136
2159 2232 2275 2284 2295 2417 2464 2526 2644 2691 2753 2869 2900 2921
2981 3097 3128 3149 3209 3335 3371 3412 3462 3487 3533 3565 3674 3873
3995 4301 4602
.LS0A 142 148 150 161 169 186 211 337 339 341 343 345 348 350
352 360 373 379 381 398 524 526 528 530 532 535 537 539
547 560 566 568 585 714 720 722 726 733 739 741 743 760
785 791 928 944 965 975 981 983 995 1001 1017 1152 1158 1160
1164 1171 1177 1179 1190 1199 1205 1207 1211 1218 1224 1226 1239 1256
1271 1277 1286 1434 1436 1438 1449 1455 1459 1461 1476 1478 1607 1609
1611 1613 1615 1618 1620 1622 1630 1639 1643 1651 1653 1664 1670 1685
1707 1737 1743 1862 1864 1866 1868 1870 1873 1875 1877 1885 1894 1898
1906 1908 1919 1925 1940 1962 1992 1998 2122 2130 2132 2136 2143 2151
2153 2155 2167 2173 2181 2187 2202 2243 2267 2308 2314 2432 2450 2458
2460 2464 2471 2477 2496 2535 2541 2659 2677 2685 2687 2691 2698 2704
2723 2762 2768 2886 2894 2896 2900 2907 2915 2917 2928 2934 2951 2983
2990 2996 3114 3122 3124 3128 3135 3143 3145 3156 3162 3179 3211 3218
3224 3353 3361 3365 3367 3371 3375 3381 3394 3402 3406 3408 3416 3422
3435 3444 3452 3456 3458 3462 3469 3477 3481 3483 3491 3497 3512 3525
3531 3546 3550 3557 3692 3701 3705 3709 3718 3722 3726 3735 3739 3743
3752 3756 3760 3771 3777 3783 3791 3803 3805 3807 3809 3811 3815 3835
3849 3882 4012 4021 4025 4029 4038 4042 4046 4055 4059 4063 4072 4076
4080 4095 4101 4109 4121 4123 4125 4127 4129 4133 4153 4167 4196 4318
4324 4330 4339 4343 4347 4356 4360 4364 4373 4377 4381 4390 4394 4398
4413 4419 4427 4439 4441 4443 4445 4447 4451 4467 4504 4618 4626 4634
4649
.LS0B 124 126 128 178 180 182 192 217 225 320 322 324 390 392
404 507 509 511 577 579 591 696 698 700 747 752 754 756
766 772 777 793 799 801 907 909 911 954 963 969 979 987
999 1003 1009 1019 1025 1132 1134 1136 1192 1237 1258 1264 1288 1294
1399 1401 1403 1451 1465 1467 1472 1482 1488 1590 1592 1594 1679 1681
1693 1701 1709 1845 1847 1849 1934 1936 1948 1956 1964 2104 2106 2108
2159 2196 2198 2210 2218 2224 2226 2232 2237 2251 2259 2269 2275 2277
2415 2417 2419 2490 2492 2504 2512 2518 2520 2526 2642 2644 2646 2717
2719 2731 2739 2745 2747 2753 2867 2869 2871 2945 2947 2959 2967 2973
2975 2981 3095 3097 3099 3173 3175 3187 3195 3201 3203 3209 3333 3335
3337 3437 3510 3527 3533 3539 3559 3565 3672 3674 3676 3688 3764 3855
3863 3873 3891 3993 3995 3997 4008 4084 4173 4181 4205 4299 4301 4303
4314 4402 4479 4487 4513 4600 4602 4604 4614 4622 4638
.LSAB 356 543 1262 1273 1453 1626 1881 3537 3548 3694 3773 3859 3867 3869
4014 4177 4185 4187 4320 4483 4491 4493 4645 4647 4651 4653
.LSD0 140 159 167 184 194 203 205 209 219 335 371 396 406 522
558 583 593 712 731 758 768 779 783 795 926 934 936 942
950 952 1005 1021 1150 1169 1188 1197 1216 1235 1290 1416 1423 1425 SEQ 0727
1484 1605 1641 1662 1668 1683 1691 1695 1699 1703 1711 1735 1741 1860
1896 1917 1923 1938 1946 1950 1954 1958 1966 1990 1996 2120 2141 2165
2171 2179 2185 2200 2208 2212 2216 2220 2228 2239 2241 2249 2253 2257
2261 2271 2306 2312 2448 2469 2475 2494 2502 2506 2510 2514 2522 2533
2539 2675 2696 2702 2721 2729 2733 2737 2741 2749 2760 2766 2884 2905
2926 2932 2949 2957 2961 2965 2969 2977 2988 2994 3112 3133 3154 3160
3177 3185 3189 3193 3197 3205 3216 3222 3351 3359 3373 3379 3392 3400
3414 3420 3433 3442 3450 3467 3475 3489 3495 3508 3561 3690 3711 3728
3745 3762 3775 3781 3789 3799 3801 3813 3833 3847 3857 3861 4010 4031
4048 4065 4082 4093 4099 4107 4117 4119 4131 4151 4165 4175 4179 4316
4322 4328 4349 4366 4383 4400 4411 4417 4425 4435 4437 4449 4465 4481
4485 4616 4624 4632 4640 4655
.LSDA 354 541 993 1252 1254 1275 1414 1421 1447 1474 1624 1879 3529 3699
3703 3707 3716 3720 3724 3733 3737 3741 3750 3754 3758 3787 3797 3819
3823 3827 3831 3839 3845 3853 3865 4019 4023 4027 4036 4040 4044 4053
4057 4061 4070 4074 4078 4105 4115 4137 4141 4145 4149 4157 4163 4171
4183 4337 4341 4345 4354 4358 4362 4371 4375 4379 4388 4392 4396 4423
4433 4455 4459 4463 4471 4477 4489
.LSELM 142 150 161 169 186 194 211 219 373 381 398 406 560 568
585 593 714 722 733 743 760 768 785 795 928 944 965 975
983 995 1005 1021 1152 1160 1171 1179 1199 1207 1218 1226 1277 1290
1434 1438 1453 1461 1476 1484 1643 1653 1664 1670 1685 1695 1703 1711
1737 1743 1898 1908 1919 1925 1940 1950 1958 1966 1992 1998 2122 2132
2143 2155 2167 2173 2181 2187 2202 2212 2220 2228 2243 2253 2261 2271
2308 2314 2450 2460 2471 2477 2496 2506 2514 2522 2535 2541 2677 2687
2698 2704 2723 2733 2741 2749 2762 2768 2886 2896 2907 2917 2928 2934
2951 2961 2969 2977 2990 2996 3114 3124 3135 3145 3156 3162 3179 3189
3197 3205 3218 3224 3353 3361 3367 3375 3381 3394 3402 3408 3416 3422
3444 3452 3458 3469 3477 3483 3491 3497 3550 3561 3690 3777 3783 3791
3815 3835 3849 3857 3882 4010 4095 4101 4109 4133 4153 4167 4175 4196
4316 4324 4330 4413 4419 4427 4451 4467 4481 4504 4618 4624 4634 4640
.LSELP 144 152 163 171 188 192 213 217 375 383 400 404 562 570
587 591 716 724 735 745 762 766 787 793 930 946 967 977
985 997 1003 1019 1154 1162 1173 1181 1201 1209 1220 1228 1279 1288
1436 1440 1455 1463 1478 1482 1645 1655 1666 1672 1687 1693 1701 1709
1739 1745 1900 1910 1921 1927 1942 1948 1956 1964 1994 2000 2124 2134
2145 2157 2169 2175 2183 2189 2204 2210 2218 2226 2245 2251 2259 2269
2310 2316 2452 2462 2473 2479 2498 2504 2512 2520 2537 2543 2679 2689
2700 2706 2725 2731 2739 2747 2764 2770 2888 2898 2909 2919 2930 2936
2953 2959 2967 2975 2992 2998 3116 3126 3137 3147 3158 3164 3181 3187
3195 3203 3220 3226 3355 3363 3369 3377 3383 3396 3404 3410 3418 3424
3446 3454 3460 3471 3479 3485 3493 3499 3552 3559 3688 3779 3785 3793
3817 3821 3825 3829 3837 3851 3855 3884 4008 4097 4103 4111 4135 4139
4143 4147 4155 4169 4173 4198 4314 4326 4332 4415 4421 4429 4453 4457
4461 4469 4479 4506 4620 4622 4636 4638
.LSKCN 140 159 167 184 203 205 209 354 371 396 541 558 583 712
731 758 779 783 926 934 936 942 950 952 993 1150 1169 1188
1197 1216 1235 1252 1254 1275 1414 1416 1421 1423 1447 1474 1624 1641
1662 1668 1683 1691 1699 1735 1741 1879 1896 1917 1923 1938 1946 1954
1990 1996 2120 2141 2165 2171 2179 2185 2200 2208 2216 2239 2241 2249
2257 2306 2312 2448 2469 2475 2494 2502 2510 2533 2539 2675 2696 2702
2721 2729 2737 2760 2766 2884 2905 2926 2932 2949 2957 2965 2988 2994
3112 3133 3154 3160 3177 3185 3193 3216 3222 3351 3359 3373 3379 3392 SEQ 0728
3400 3414 3420 3433 3442 3450 3467 3475 3489 3495 3508 3529 3699 3703
3707 3711 3716 3720 3724 3728 3733 3737 3741 3745 3750 3754 3758 3762
3775 3781 3787 3797 3799 3801 3819 3823 3827 3831 3839 3845 3853 3865
4019 4023 4027 4031 4036 4040 4044 4048 4053 4057 4061 4065 4070 4074
4078 4082 4093 4099 4105 4115 4117 4119 4137 4141 4145 4149 4157 4163
4171 4183 4322 4328 4337 4341 4345 4349 4354 4358 4362 4366 4371 4375
4379 4383 4388 4392 4396 4400 4411 4417 4423 4433 4435 4437 4455 4459
4463 4471 4477 4489 4616 4632 4655
.LSMIN 1467 3557 3891 4205 4513
.LXNOR 339 345 352 526 532 539 741 791 981 1001 1609 1615 1622 1864
1870 1877 2153 2267 3805 4123 4441 4651
.LXOR 356 543 1262 1626 1881 3537 3773
.MA 337 339 341 343 345 348 350 352 354 356 379 524 526 528
530 532 535 537 539 541 543 566 741 791 975 981 993 995
1001 1017 1252 1254 1256 1262 1271 1273 1286 1414 1421 1434 1447 1449
1453 1459 1474 1607 1609 1611 1613 1615 1618 1620 1622 1624 1626 1639
1651 1707 1862 1864 1866 1868 1870 1873 1875 1877 1879 1881 1894 1906
1962 2153 2267 3529 3531 3537 3546 3548 3557 3692 3694 3699 3703 3707
3716 3720 3724 3733 3737 3741 3750 3754 3758 3773 3787 3797 3803 3805
3807 3819 3823 3827 3831 3839 3845 3853 3859 3865 3867 3869 4012 4014
4019 4023 4027 4036 4040 4044 4053 4057 4061 4070 4074 4078 4105 4115
4121 4123 4125 4137 4141 4145 4149 4157 4163 4171 4177 4183 4185 4187
4318 4320 4337 4341 4345 4354 4358 4362 4371 4375 4379 4388 4392 4396
4423 4433 4439 4441 4443 4455 4459 4463 4471 4477 4483 4489 4491 4493
4626 4645 4647 4649 4651 4653
.MAND 124 148 178 182 192 217 225 320 335 354 360 390 404 507
522 541 547 577 591 696 720 739 752 756 766 777 793 801
907 954 963 979 999 1003 1019 1132 1158 1177 1190 1205 1224 1239
1252 1254 1288 1399 1414 1421 1425 1436 1447 1455 1472 1478 1482 1590
1605 1624 1630 1679 1693 1701 1709 1845 1860 1879 1885 1934 1948 1956
1964 2104 2130 2151 2196 2210 2218 2224 2226 2237 2251 2259 2269 2277
2415 2432 2458 2490 2504 2512 2518 2520 2642 2659 2685 2717 2731 2739
2745 2747 2867 2894 2915 2945 2959 2967 2973 2975 2983 3095 3122 3143
3173 3187 3195 3201 3203 3211 3333 3365 3406 3435 3456 3481 3512 3525
3529 3559 3672 3688 3694 3699 3703 3707 3716 3720 3724 3733 3737 3741
3750 3754 3758 3764 3771 3787 3797 3809 3811 3819 3823 3827 3831 3839
3845 3853 3855 3859 3865 3867 3869 3993 4008 4014 4019 4023 4027 4036
4040 4044 4053 4057 4061 4070 4074 4078 4084 4105 4115 4127 4129 4137
4141 4145 4149 4157 4163 4171 4173 4177 4183 4185 4187 4299 4314 4320
4337 4341 4345 4354 4358 4362 4371 4375 4379 4388 4392 4396 4402 4423
4433 4445 4447 4455 4459 4463 4471 4477 4479 4483 4489 4491 4493 4600
4614 4622 4638 4645 4647 4653
.MB 124 126 128 178 180 182 192 194 203 205 217 219 225 320
322 324 335 337 339 341 343 345 348 350 352 354 356 360
390 392 404 406 507 509 511 522 524 526 528 530 532 535
537 539 541 543 547 577 579 591 593 696 698 700 739 747
752 754 756 766 768 772 777 779 791 793 795 799 801 907
909 911 934 936 950 952 954 979 987 993 999 1001 1003 1005
1009 1017 1019 1021 1025 1132 1134 1136 1188 1190 1192 1235 1237 1239
1252 1254 1256 1258 1262 1264 1286 1288 1290 1294 1399 1401 1403 1414
1416 1421 1423 1425 1447 1449 1451 1453 1465 1467 1472 1482 1484 1488
1590 1592 1594 1605 1607 1609 1611 1613 1615 1618 1620 1622 1624 1626
1630 1639 1679 1681 1691 1693 1695 1699 1701 1703 1707 1709 1711 1845 SEQ 0729
1847 1849 1860 1862 1864 1866 1868 1870 1873 1875 1877 1879 1881 1885
1894 1934 1936 1946 1948 1950 1954 1956 1958 1962 1964 1966 2104 2106
2108 2151 2159 2196 2198 2208 2210 2212 2216 2218 2220 2224 2226 2228
2232 2237 2239 2249 2251 2253 2257 2259 2261 2267 2269 2271 2275 2277
2415 2417 2419 2432 2490 2492 2502 2504 2506 2510 2512 2514 2518 2520
2522 2526 2642 2644 2646 2659 2717 2719 2729 2731 2733 2737 2739 2741
2745 2747 2749 2753 2867 2869 2871 2945 2947 2957 2959 2961 2965 2967
2969 2973 2975 2977 2981 2983 3095 3097 3099 3173 3175 3185 3187 3189
3193 3195 3197 3201 3203 3205 3209 3211 3333 3335 3337 3433 3435 3437
3508 3510 3512 3525 3527 3529 3531 3533 3537 3539 3557 3559 3561 3565
3672 3674 3676 3688 3690 3692 3694 3711 3728 3745 3762 3764 3771 3773
3855 3857 3859 3861 3863 3865 3867 3869 3873 3993 3995 3997 4008 4010
4012 4014 4031 4048 4065 4082 4084 4173 4175 4177 4179 4181 4183 4185
4187 4299 4301 4303 4314 4316 4318 4320 4349 4366 4383 4400 4402 4479
4481 4483 4485 4487 4489 4491 4493 4600 4602 4604 4614 4622 4624 4626
4638 4640 4645 4647 4649 4651 4653 4655
.MCCAF 1726 2286 2481 3166 3385 3426
.MCCBF 1981 2297 2708 2938 3501
.MCCFZ 356 543 1262 1465 1626 1881 3537 3773 3869 3891 4187 4205 4493 4513
4653
.MCCXA 3841 4159 4473
.MCENA 356 543 1262 1465 1626 1726 1881 1981 2286 2297 2481 2708 2938 3166
3385 3426 3501 3537 3773 3841 3869 3891 4159 4187 4205 4473 4493 4513
4653
.MCJP 356 543 1262 1465 1626 1726 1881 1981 2286 2297 2481 2708 2938 3166
3385 3426 3501 3537 3773 3841 3869 3891 4159 4187 4205 4473 4493 4513
4653
.MCJS 122 196 221 318 337 339 343 345 350 352 408 505 524 526
530 532 537 539 595 694 770 797 905 936 952 1007 1023 1130
1192 1237 1260 1292 1397 1416 1423 1486 1588 1607 1609 1613 1615 1620
1622 1649 1674 1697 1705 1713 1843 1862 1864 1868 1870 1875 1877 1904
1929 1952 1960 1968 2102 2128 2149 2177 2191 2214 2222 2230 2255 2263
2273 2413 2424 2426 2428 2430 2456 2508 2516 2524 2640 2651 2653 2655
2657 2683 2735 2743 2751 2865 2892 2913 2963 2971 2979 3093 3120 3141
3191 3199 3207 3331 3437 3510 3535 3563 3670 3711 3728 3745 3762 3787
3797 3799 3801 3803 3805 3807 3809 3811 3819 3823 3827 3831 3839 3845
3853 3991 4031 4048 4065 4082 4105 4115 4117 4119 4121 4123 4125 4127
4129 4137 4141 4145 4149 4157 4163 4171 4297 4349 4366 4383 4400 4423
4433 4435 4437 4439 4441 4443 4445 4447 4455 4459 4463 4471 4477
.MCONT 140 142 144 146 150 152 159 161 163 165 169 171 178 180
184 186 188 190 192 194 203 205 209 211 213 215 217 219
335 341 348 354 371 373 375 377 381 383 390 392 396 398
400 402 404 406 522 528 535 541 558 560 562 564 568 570
577 579 583 585 587 589 591 593 712 714 716 718 722 724
731 733 735 737 741 743 745 752 754 758 760 762 764 766
768 777 779 783 785 787 789 791 793 795 926 928 930 932
934 942 944 946 948 950 965 967 975 977 981 983 985 993
995 997 1001 1003 1005 1017 1019 1021 1150 1152 1154 1156 1160 1162
1169 1171 1173 1175 1179 1181 1188 1190 1197 1199 1201 1203 1207 1209
1216 1218 1220 1222 1226 1228 1235 1254 1271 1273 1275 1277 1279 1281
1288 1290 1414 1421 1438 1440 1447 1453 1455 1457 1459 1461 1463 1474
1476 1478 1480 1482 1484 1605 1611 1618 1624 1641 1643 1645 1647 1653
1655 1662 1664 1666 1668 1670 1672 1679 1681 1683 1685 1687 1689 1691 SEQ 0730
1693 1695 1699 1701 1703 1709 1711 1735 1737 1739 1741 1743 1745 1860
1866 1873 1879 1896 1898 1900 1902 1908 1910 1917 1919 1921 1923 1925
1927 1934 1936 1938 1940 1942 1944 1946 1948 1950 1954 1956 1958 1964
1966 1990 1992 1994 1996 1998 2000 2120 2122 2124 2126 2132 2134 2141
2143 2145 2147 2153 2155 2157 2165 2167 2169 2171 2173 2175 2179 2181
2183 2185 2187 2189 2196 2198 2200 2202 2204 2206 2208 2210 2212 2216
2218 2220 2226 2228 2237 2239 2241 2243 2245 2247 2249 2251 2253 2257
2259 2261 2267 2269 2271 2306 2308 2310 2312 2314 2316 2419 2448 2450
2452 2454 2460 2462 2469 2471 2473 2475 2477 2479 2485 2490 2492 2494
2496 2498 2500 2502 2504 2506 2510 2512 2514 2520 2522 2533 2535 2537
2539 2541 2543 2646 2675 2677 2679 2681 2687 2689 2696 2698 2700 2702
2704 2706 2712 2717 2719 2721 2723 2725 2727 2729 2731 2733 2737 2739
2741 2747 2749 2760 2762 2764 2766 2768 2770 2884 2886 2888 2890 2896
2898 2905 2907 2909 2911 2917 2919 2926 2928 2930 2932 2934 2936 2945
2947 2949 2951 2953 2955 2957 2959 2961 2965 2967 2969 2975 2977 2988
2990 2992 2994 2996 2998 3112 3114 3116 3118 3124 3126 3133 3135 3137
3139 3145 3147 3154 3156 3158 3160 3162 3164 3173 3175 3177 3179 3181
3183 3185 3187 3189 3193 3195 3197 3203 3205 3216 3218 3220 3222 3224
3226 3351 3353 3355 3357 3359 3361 3363 3367 3369 3373 3375 3377 3379
3381 3383 3392 3394 3396 3398 3400 3402 3404 3408 3410 3414 3416 3418
3420 3422 3424 3433 3435 3442 3444 3446 3448 3450 3452 3454 3458 3460
3467 3469 3471 3473 3475 3477 3479 3483 3485 3489 3491 3493 3495 3497
3499 3508 3527 3529 3546 3548 3550 3552 3559 3561 3688 3690 3692 3694
3699 3701 3703 3705 3707 3709 3716 3718 3720 3722 3724 3726 3733 3735
3737 3739 3741 3743 3750 3752 3754 3756 3758 3760 3775 3777 3779 3781
3783 3785 3789 3791 3793 3795 3813 3815 3817 3821 3825 3829 3833 3835
3837 3847 3849 3851 3855 3857 3859 3861 3863 3865 3867 3882 4008 4010
4012 4014 4019 4021 4023 4025 4027 4029 4036 4038 4040 4042 4044 4046
4053 4055 4057 4059 4061 4063 4070 4072 4074 4076 4078 4080 4093 4095
4097 4099 4101 4103 4107 4109 4111 4113 4131 4133 4135 4139 4143 4147
4151 4153 4155 4165 4167 4169 4173 4175 4177 4179 4181 4183 4185 4196
4314 4316 4318 4320 4322 4324 4326 4328 4330 4332 4337 4339 4341 4343
4345 4347 4354 4356 4358 4360 4362 4364 4371 4373 4375 4377 4379 4381
4388 4390 4392 4394 4396 4398 4411 4413 4415 4417 4419 4421 4425 4427
4429 4431 4449 4451 4453 4457 4461 4465 4467 4469 4479 4481 4483 4485
4487 4489 4491 4504 4616 4618 4620 4622 4624 4626 4632 4634 4636 4638
4640 4645 4647 4649 4651
.MCRTN 412 599 1027 1266 1296 1490 1717 1730 1747 1972 1985 2002 2290 2301
2318 2528 2545 2755 2772 3000 3228 3541 3567 3875 3884 3895 4189 4198
4209 4497 4506 4517
.MCRY 126 128 180 322 324 341 392 509 511 528 579 698 700 726
747 754 772 799 909 911 969 987 1009 1025 1134 1136 1164 1192
1211 1264 1294 1401 1403 1488 1592 1594 1611 1681 1847 1849 1866 1936
2106 2108 2136 2159 2198 2232 2275 2417 2419 2464 2492 2526 2644 2646
2691 2719 2753 2869 2871 2900 2947 2981 3097 3099 3128 3175 3209 3335
3337 3371 3437 3462 3527 3539 3565 3674 3676 3863 3873 3995 3997 4181
4301 4303 4487 4602 4604
.MD 124 126 128 140 142 146 148 150 159 161 165 167 169 178
180 182 184 186 190 192 194 203 205 209 211 215 217 219
225 320 322 324 335 337 339 341 343 345 348 350 352 354
356 358 360 371 373 377 379 381 390 392 396 398 402 404
406 412 507 509 511 522 524 526 528 530 532 535 537 539
541 543 545 547 558 560 564 566 568 577 579 583 585 589 SEQ 0731
591 593 599 696 698 700 712 714 718 720 722 726 731 733
737 739 741 743 747 752 754 756 758 760 764 766 768 772
777 779 783 785 789 791 793 795 799 801 907 909 911 926
928 932 934 936 942 944 948 950 952 954 963 965 969 975
979 981 983 987 993 995 999 1001 1003 1005 1009 1017 1019 1021
1025 1132 1134 1136 1150 1152 1156 1158 1160 1164 1169 1171 1175 1177
1179 1188 1190 1192 1197 1199 1203 1205 1207 1211 1216 1218 1222 1224
1226 1235 1237 1239 1252 1254 1256 1258 1262 1264 1266 1271 1273 1275
1277 1281 1286 1288 1290 1292 1294 1296 1399 1401 1403 1414 1416 1421
1423 1425 1434 1436 1438 1447 1449 1451 1453 1455 1457 1459 1461 1465
1467 1472 1474 1476 1478 1480 1482 1484 1488 1590 1592 1594 1605 1607
1609 1611 1613 1615 1618 1620 1622 1624 1626 1628 1630 1639 1641 1643
1647 1651 1653 1662 1664 1668 1670 1679 1681 1683 1685 1689 1691 1693
1695 1699 1701 1703 1707 1709 1711 1735 1737 1741 1743 1845 1847 1849
1860 1862 1864 1866 1868 1870 1873 1875 1877 1879 1881 1883 1885 1894
1896 1898 1902 1906 1908 1917 1919 1923 1925 1934 1936 1938 1940 1944
1946 1948 1950 1954 1956 1958 1962 1964 1966 1990 1992 1996 1998 2104
2106 2108 2120 2122 2126 2130 2132 2136 2141 2143 2147 2151 2153 2155
2159 2165 2167 2171 2173 2179 2181 2185 2187 2196 2198 2200 2202 2206
2208 2210 2212 2216 2218 2220 2224 2226 2228 2232 2237 2239 2241 2243
2247 2249 2251 2253 2257 2259 2261 2267 2269 2271 2275 2277 2306 2308
2312 2314 2415 2417 2419 2432 2448 2450 2454 2458 2460 2464 2469 2471
2475 2477 2490 2492 2494 2496 2500 2502 2504 2506 2510 2512 2514 2518
2520 2522 2526 2533 2535 2539 2541 2642 2644 2646 2659 2675 2677 2681
2685 2687 2691 2696 2698 2702 2704 2717 2719 2721 2723 2727 2729 2731
2733 2737 2739 2741 2745 2747 2749 2753 2760 2762 2766 2768 2867 2869
2871 2884 2886 2890 2894 2896 2900 2905 2907 2911 2915 2917 2926 2928
2932 2934 2945 2947 2949 2951 2955 2957 2959 2961 2965 2967 2969 2973
2975 2977 2981 2983 2988 2990 2994 2996 3095 3097 3099 3112 3114 3118
3122 3124 3128 3133 3135 3139 3143 3145 3154 3156 3160 3162 3173 3175
3177 3179 3183 3185 3187 3189 3193 3195 3197 3201 3203 3205 3209 3211
3216 3218 3222 3224 3333 3335 3337 3351 3353 3357 3359 3361 3365 3367
3371 3373 3375 3379 3381 3392 3394 3398 3400 3402 3406 3408 3414 3416
3420 3422 3433 3435 3437 3442 3444 3448 3450 3452 3456 3458 3462 3467
3469 3473 3475 3477 3481 3483 3489 3491 3495 3497 3508 3510 3512 3525
3527 3529 3531 3533 3537 3539 3541 3546 3548 3550 3557 3559 3561 3563
3565 3567 3672 3674 3676 3688 3690 3692 3694 3699 3701 3703 3705 3707
3709 3711 3716 3718 3720 3722 3724 3726 3728 3733 3735 3737 3739 3741
3743 3745 3750 3752 3754 3756 3758 3760 3762 3764 3771 3773 3775 3777
3781 3783 3787 3789 3791 3795 3797 3799 3801 3803 3805 3807 3809 3811
3813 3815 3819 3823 3827 3831 3833 3835 3839 3845 3847 3849 3853 3855
3857 3859 3861 3863 3865 3867 3869 3873 3882 3891 3993 3995 3997 4008
4010 4012 4014 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040 4042
4044 4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074 4076
4078 4080 4082 4084 4093 4095 4099 4101 4105 4107 4109 4113 4115 4117
4119 4121 4123 4125 4127 4129 4131 4133 4137 4141 4145 4149 4151 4153
4157 4163 4165 4167 4171 4173 4175 4177 4179 4181 4183 4185 4187 4196
4205 4299 4301 4303 4314 4316 4318 4320 4322 4324 4328 4330 4337 4339
4341 4343 4345 4347 4349 4354 4356 4358 4360 4362 4364 4366 4371 4373
4375 4377 4379 4381 4383 4388 4390 4392 4394 4396 4398 4400 4402 4411
4413 4417 4419 4423 4425 4427 4431 4433 4435 4437 4439 4441 4443 4445
4447 4449 4451 4455 4459 4463 4465 4467 4471 4477 4479 4481 4483 4485
4487 4489 4491 4493 4504 4513 4600 4602 4604 4614 4616 4618 4622 4624 SEQ 0732
4626 4632 4634 4638 4640 4645 4647 4649 4651 4653 4655
.MJ 122 124 126 128 138 148 154 167 173 182 196 198 207 221
223 225 318 320 322 324 337 339 343 345 350 352 356 358
360 369 379 385 394 408 410 505 507 509 511 524 526 530
532 537 539 543 545 547 556 566 572 581 595 597 694 696
698 700 710 720 726 739 747 756 770 772 781 797 799 801
905 907 909 911 924 936 952 954 963 969 979 987 999 1007
1009 1015 1023 1025 1130 1132 1134 1136 1148 1158 1164 1177 1183 1192
1205 1211 1224 1230 1237 1239 1252 1256 1258 1260 1262 1264 1286 1292
1294 1397 1399 1401 1403 1416 1423 1425 1434 1436 1442 1449 1451 1465
1467 1472 1486 1488 1588 1590 1592 1594 1607 1609 1613 1615 1620 1622
1626 1628 1630 1639 1649 1651 1657 1674 1697 1705 1707 1713 1715 1722
1724 1726 1728 1843 1845 1847 1849 1862 1864 1868 1870 1875 1877 1881
1883 1885 1894 1904 1906 1912 1929 1952 1960 1962 1968 1970 1977 1979
1981 1983 2102 2104 2106 2108 2118 2128 2130 2136 2149 2151 2159 2177
2191 2214 2222 2224 2230 2232 2255 2263 2265 2273 2275 2277 2282 2284
2286 2288 2293 2295 2297 2299 2413 2415 2417 2424 2426 2428 2430 2432
2446 2456 2458 2464 2481 2483 2508 2516 2518 2524 2526 2640 2642 2644
2651 2653 2655 2657 2659 2673 2683 2685 2691 2708 2710 2735 2743 2745
2751 2753 2865 2867 2869 2871 2882 2892 2894 2900 2913 2915 2921 2938
2940 2963 2971 2973 2979 2981 2983 3093 3095 3097 3099 3110 3120 3122
3128 3141 3143 3149 3166 3168 3191 3199 3201 3207 3209 3211 3331 3333
3335 3337 3349 3365 3371 3385 3387 3406 3412 3426 3428 3437 3456 3462
3481 3487 3501 3503 3510 3512 3525 3531 3533 3535 3537 3539 3557 3563
3565 3670 3672 3674 3676 3686 3711 3728 3745 3762 3764 3771 3773 3787
3797 3799 3801 3803 3805 3807 3809 3811 3819 3823 3827 3831 3839 3841
3843 3845 3853 3869 3871 3873 3891 3893 3991 3993 3995 3997 4006 4031
4048 4065 4082 4084 4091 4105 4115 4117 4119 4121 4123 4125 4127 4129
4137 4141 4145 4149 4157 4159 4161 4163 4171 4187 4205 4207 4297 4299
4301 4303 4312 4349 4366 4383 4400 4402 4409 4423 4433 4435 4437 4439
4441 4443 4445 4447 4455 4459 4463 4471 4473 4475 4477 4493 4495 4513
4515 4600 4602 4604 4614 4653 4655
.MJMAP 128 138 225 324 358 360 369 511 545 547 556 700 710 801
911 924 954 1136 1148 1239 1252 1264 1403 1425 1434 1467 1594 1628
1630 1639 1728 1849 1883 1885 1894 1983 2108 2118 2277 2288 2299 2432
2446 2483 2659 2673 2710 2871 2882 2940 2983 3099 3110 3168 3211 3337
3349 3387 3428 3503 3512 3525 3539 3676 3686 3764 3843 3871 3893 3997
4006 4084 4091 4161 4207 4303 4312 4402 4409 4475 4495 4515 4604 4614
4655
.MJZ 120 316 503 692 903 1128 1395 1586 1841 2100 2411 2638 2863 3091
3329 3668 3989 4295 4598
.MLDCT 124 148 167 182 207 320 379 394 507 566 581 696 720 739
756 781 907 963 979 999 1015 1132 1158 1177 1205 1224 1256 1286
1399 1436 1449 1472 1590 1651 1707 1722 1845 1906 1962 1977 2104 2130
2151 2224 2265 2282 2293 2415 2458 2518 2642 2685 2745 2867 2894 2915
2973 3095 3122 3143 3201 3333 3365 3406 3456 3481 3531 3557 3672 3771
3993 4299 4600
.MLDLM 3701 3705 3709 3718 3722 3726 3735 3739 3743 3752 3756 3760 4021 4025
4029 4038 4042 4046 4055 4059 4063 4072 4076 4080 4339 4343 4347 4356
4360 4364 4373 4377 4381 4390 4394 4398
.MMGC 140 142 144 150 152 159 161 163 167 169 171 184 186 188
192 194 203 205 209 211 213 217 219 354 371 373 375 381
383 396 398 400 404 406 541 558 560 562 568 570 583 585 SEQ 0733
587 591 593 712 714 716 722 724 731 733 735 743 745 758
760 762 766 768 779 783 785 787 793 795 926 928 930 934
936 942 944 946 950 952 965 967 975 977 983 985 993 995
997 1003 1005 1019 1021 1150 1152 1154 1160 1162 1169 1171 1173 1179
1181 1188 1197 1199 1201 1207 1209 1216 1218 1220 1226 1228 1235 1252
1254 1275 1277 1279 1288 1290 1414 1416 1421 1423 1434 1436 1438 1440
1447 1453 1455 1461 1463 1474 1476 1478 1482 1484 1624 1641 1643 1645
1653 1655 1662 1664 1666 1668 1670 1672 1683 1685 1687 1691 1693 1695
1699 1701 1703 1709 1711 1735 1737 1739 1741 1743 1745 1879 1896 1898
1900 1908 1910 1917 1919 1921 1923 1925 1927 1938 1940 1942 1946 1948
1950 1954 1956 1958 1964 1966 1990 1992 1994 1996 1998 2000 2120 2122
2124 2132 2134 2141 2143 2145 2155 2157 2165 2167 2169 2171 2173 2175
2179 2181 2183 2185 2187 2189 2200 2202 2204 2208 2210 2212 2216 2218
2220 2226 2228 2239 2241 2243 2245 2249 2251 2253 2257 2259 2261 2269
2271 2306 2308 2310 2312 2314 2316 2448 2450 2452 2460 2462 2469 2471
2473 2475 2477 2479 2494 2496 2498 2502 2504 2506 2510 2512 2514 2520
2522 2533 2535 2537 2539 2541 2543 2675 2677 2679 2687 2689 2696 2698
2700 2702 2704 2706 2721 2723 2725 2729 2731 2733 2737 2739 2741 2747
2749 2760 2762 2764 2766 2768 2770 2884 2886 2888 2896 2898 2905 2907
2909 2917 2919 2926 2928 2930 2932 2934 2936 2949 2951 2953 2957 2959
2961 2965 2967 2969 2975 2977 2988 2990 2992 2994 2996 2998 3112 3114
3116 3124 3126 3133 3135 3137 3145 3147 3154 3156 3158 3160 3162 3164
3177 3179 3181 3185 3187 3189 3193 3195 3197 3203 3205 3216 3218 3220
3222 3224 3226 3351 3353 3355 3359 3361 3363 3367 3369 3373 3375 3377
3379 3381 3383 3392 3394 3396 3400 3402 3404 3408 3410 3414 3416 3418
3420 3422 3424 3433 3442 3444 3446 3450 3452 3454 3458 3460 3467 3469
3471 3475 3477 3479 3483 3485 3489 3491 3493 3495 3497 3499 3508 3529
3550 3552 3559 3561 3688 3690 3699 3701 3703 3705 3707 3709 3711 3716
3718 3720 3722 3724 3726 3728 3733 3735 3737 3739 3741 3743 3745 3750
3752 3754 3756 3758 3760 3762 3775 3777 3779 3781 3783 3785 3787 3789
3791 3793 3797 3799 3801 3813 3815 3817 3819 3821 3823 3825 3827 3829
3831 3833 3835 3837 3839 3845 3847 3849 3851 3853 3855 3857 3861 3865
3882 3884 4008 4010 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040
4042 4044 4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074
4076 4078 4080 4082 4093 4095 4097 4099 4101 4103 4105 4107 4109 4111
4115 4117 4119 4131 4133 4135 4137 4139 4141 4143 4145 4147 4149 4151
4153 4155 4157 4163 4165 4167 4169 4171 4173 4175 4179 4183 4196 4198
4314 4316 4322 4324 4326 4328 4330 4332 4337 4339 4341 4343 4345 4347
4349 4354 4356 4358 4360 4362 4364 4366 4371 4373 4375 4377 4379 4381
4383 4388 4390 4392 4394 4396 4398 4400 4411 4413 4415 4417 4419 4421
4423 4425 4427 4429 4433 4435 4437 4449 4451 4453 4455 4457 4459 4461
4463 4465 4467 4469 4471 4477 4479 4481 4485 4489 4504 4506 4616 4618
4620 4622 4624 4632 4634 4636 4638 4640 4655
.MOENA 142 150 161 169 186 211 373 381 398 560 568 585 714 722
733 743 760 785 928 944 965 975 983 995 1152 1160 1171 1179
1199 1207 1218 1226 1277 1434 1438 1453 1461 1476 1643 1653 1664 1670
1685 1737 1743 1898 1908 1919 1925 1940 1992 1998 2122 2132 2143 2155
2167 2173 2181 2187 2202 2243 2308 2314 2450 2460 2471 2477 2496 2535
2541 2677 2687 2698 2704 2723 2762 2768 2886 2896 2907 2917 2928 2934
2951 2990 2996 3114 3124 3135 3145 3156 3162 3179 3218 3224 3353 3361
3367 3375 3381 3394 3402 3408 3416 3422 3444 3452 3458 3469 3477 3483
3491 3497 3550 3701 3705 3709 3718 3722 3726 3735 3739 3743 3752 3756
3760 3777 3783 3791 3815 3835 3849 3882 4021 4025 4029 4038 4042 4046 SEQ 0734
4055 4059 4063 4072 4076 4080 4095 4101 4109 4133 4153 4167 4196 4324
4330 4339 4343 4347 4356 4360 4364 4373 4377 4381 4390 4394 4398 4413
4419 4427 4451 4467 4504 4618 4634
.MOR 140 142 150 159 161 167 169 184 186 194 203 205 209 211
219 337 343 348 350 371 373 379 381 396 398 406 524 530
535 537 558 560 566 568 583 585 593 712 714 722 731 733
743 758 760 768 779 783 785 795 926 928 934 936 942 944
950 952 965 975 983 993 995 1005 1017 1021 1150 1152 1160 1169
1171 1179 1188 1197 1199 1207 1216 1218 1226 1235 1256 1258 1271 1273
1275 1277 1286 1290 1416 1423 1434 1438 1449 1451 1453 1459 1461 1465
1474 1476 1484 1607 1613 1618 1620 1639 1641 1643 1651 1653 1662 1664
1668 1670 1683 1685 1691 1695 1699 1703 1707 1711 1735 1737 1741 1743
1862 1868 1873 1875 1894 1896 1898 1906 1908 1917 1919 1923 1925 1938
1940 1946 1950 1954 1958 1962 1966 1990 1992 1996 1998 2120 2122 2132
2141 2143 2155 2165 2167 2171 2173 2179 2181 2185 2187 2200 2202 2208
2212 2216 2220 2228 2239 2241 2243 2249 2253 2257 2261 2271 2306 2308
2312 2314 2448 2450 2460 2469 2471 2475 2477 2494 2496 2502 2506 2510
2514 2522 2533 2535 2539 2541 2675 2677 2687 2696 2698 2702 2704 2721
2723 2729 2733 2737 2741 2749 2760 2762 2766 2768 2884 2886 2896 2905
2907 2917 2926 2928 2932 2934 2949 2951 2957 2961 2965 2969 2977 2988
2990 2994 2996 3112 3114 3124 3133 3135 3145 3154 3156 3160 3162 3177
3179 3185 3189 3193 3197 3205 3216 3218 3222 3224 3351 3353 3359 3361
3367 3373 3375 3379 3381 3392 3394 3400 3402 3408 3414 3416 3420 3422
3433 3442 3444 3450 3452 3458 3467 3469 3475 3477 3483 3489 3491 3495
3497 3508 3531 3533 3546 3548 3550 3561 3690 3692 3701 3705 3709 3711
3718 3722 3726 3728 3735 3739 3743 3745 3752 3756 3760 3762 3775 3777
3781 3783 3789 3791 3799 3801 3803 3807 3813 3815 3833 3835 3847 3849
3857 3861 3882 4010 4012 4021 4025 4029 4031 4038 4042 4046 4048 4055
4059 4063 4065 4072 4076 4080 4082 4093 4095 4099 4101 4107 4109 4117
4119 4121 4125 4131 4133 4151 4153 4165 4167 4175 4179 4196 4316 4318
4322 4324 4328 4330 4339 4343 4347 4349 4356 4360 4364 4366 4373 4377
4381 4383 4390 4394 4398 4400 4411 4413 4417 4419 4425 4427 4435 4437
4439 4443 4449 4451 4465 4467 4481 4485 4504 4616 4618 4624 4626 4632
4634 4640 4655
.MPLUS 126 128 180 322 324 341 392 509 511 528 579 698 700 726
747 754 772 799 909 911 969 987 1009 1025 1134 1136 1164 1192
1211 1237 1264 1294 1401 1403 1488 1592 1594 1611 1681 1847 1849 1866
1936 2106 2108 2136 2159 2198 2232 2275 2417 2419 2464 2492 2526 2644
2646 2691 2719 2753 2869 2871 2900 2947 2981 3097 3099 3128 3175 3209
3335 3337 3371 3437 3462 3510 3527 3539 3565 3674 3676 3863 3873 3995
3997 4181 4301 4303 4487 4602 4604
.MRDLM 3789 3813 3833 3847 3861 4107 4131 4151 4165 4179 4425 4449 4465 4485
.MRPCT 126 154 173 198 223 322 385 410 509 572 597 698 726 747
772 799 909 969 987 1009 1025 1134 1164 1183 1211 1230 1258 1294
1401 1442 1451 1488 1592 1657 1715 1724 1847 1912 1970 1979 2106 2136
2159 2232 2275 2284 2295 2417 2464 2526 2644 2691 2753 2869 2900 2921
2981 3097 3128 3149 3209 3335 3371 3412 3462 3487 3533 3565 3674 3873
3995 4301 4602
.MS0A 142 148 150 161 169 186 211 337 339 341 343 345 348 350
352 360 373 379 381 398 524 526 528 530 532 535 537 539
547 560 566 568 585 714 720 722 726 733 739 741 743 760
785 791 928 944 965 975 981 983 995 1001 1017 1152 1158 1160
1164 1171 1177 1179 1190 1199 1205 1207 1211 1218 1224 1226 1239 1256 SEQ 0735
1271 1277 1286 1434 1436 1438 1449 1455 1459 1461 1476 1478 1607 1609
1611 1613 1615 1618 1620 1622 1630 1639 1643 1651 1653 1664 1670 1685
1707 1737 1743 1862 1864 1866 1868 1870 1873 1875 1877 1885 1894 1898
1906 1908 1919 1925 1940 1962 1992 1998 2122 2130 2132 2136 2143 2151
2153 2155 2167 2173 2181 2187 2202 2243 2267 2308 2314 2432 2450 2458
2460 2464 2471 2477 2496 2535 2541 2659 2677 2685 2687 2691 2698 2704
2723 2762 2768 2886 2894 2896 2900 2907 2915 2917 2928 2934 2951 2983
2990 2996 3114 3122 3124 3128 3135 3143 3145 3156 3162 3179 3211 3218
3224 3353 3361 3365 3367 3371 3375 3381 3394 3402 3406 3408 3416 3422
3435 3444 3452 3456 3458 3462 3469 3477 3481 3483 3491 3497 3512 3525
3531 3546 3550 3557 3692 3701 3705 3709 3718 3722 3726 3735 3739 3743
3752 3756 3760 3771 3777 3783 3791 3803 3805 3807 3809 3811 3815 3835
3849 3882 4012 4021 4025 4029 4038 4042 4046 4055 4059 4063 4072 4076
4080 4095 4101 4109 4121 4123 4125 4127 4129 4133 4153 4167 4196 4318
4324 4330 4339 4343 4347 4356 4360 4364 4373 4377 4381 4390 4394 4398
4413 4419 4427 4439 4441 4443 4445 4447 4451 4467 4504 4618 4626 4634
4649
.MS0B 124 126 128 178 180 182 192 217 225 320 322 324 390 392
404 507 509 511 577 579 591 696 698 700 747 752 754 756
766 772 777 793 799 801 907 909 911 954 963 969 979 987
999 1003 1009 1019 1025 1132 1134 1136 1192 1237 1258 1264 1288 1294
1399 1401 1403 1451 1465 1467 1472 1482 1488 1590 1592 1594 1679 1681
1693 1701 1709 1845 1847 1849 1934 1936 1948 1956 1964 2104 2106 2108
2159 2196 2198 2210 2218 2224 2226 2232 2237 2251 2259 2269 2275 2277
2415 2417 2419 2490 2492 2504 2512 2518 2520 2526 2642 2644 2646 2717
2719 2731 2739 2745 2747 2753 2867 2869 2871 2945 2947 2959 2967 2973
2975 2981 3095 3097 3099 3173 3175 3187 3195 3201 3203 3209 3333 3335
3337 3437 3510 3527 3533 3539 3559 3565 3672 3674 3676 3688 3764 3855
3863 3873 3891 3993 3995 3997 4008 4084 4173 4181 4205 4299 4301 4303
4314 4402 4479 4487 4513 4600 4602 4604 4614 4622 4638
.MSAB 356 543 1262 1273 1453 1626 1881 3537 3548 3694 3773 3859 3867 3869
4014 4177 4185 4187 4320 4483 4491 4493 4645 4647 4651 4653
.MSD0 140 159 167 184 194 203 205 209 219 335 371 396 406 522
558 583 593 712 731 758 768 779 783 795 926 934 936 942
950 952 1005 1021 1150 1169 1188 1197 1216 1235 1290 1416 1423 1425
1484 1605 1641 1662 1668 1683 1691 1695 1699 1703 1711 1735 1741 1860
1896 1917 1923 1938 1946 1950 1954 1958 1966 1990 1996 2120 2141 2165
2171 2179 2185 2200 2208 2212 2216 2220 2228 2239 2241 2249 2253 2257
2261 2271 2306 2312 2448 2469 2475 2494 2502 2506 2510 2514 2522 2533
2539 2675 2696 2702 2721 2729 2733 2737 2741 2749 2760 2766 2884 2905
2926 2932 2949 2957 2961 2965 2969 2977 2988 2994 3112 3133 3154 3160
3177 3185 3189 3193 3197 3205 3216 3222 3351 3359 3373 3379 3392 3400
3414 3420 3433 3442 3450 3467 3475 3489 3495 3508 3561 3690 3711 3728
3745 3762 3775 3781 3789 3799 3801 3813 3833 3847 3857 3861 4010 4031
4048 4065 4082 4093 4099 4107 4117 4119 4131 4151 4165 4175 4179 4316
4322 4328 4349 4366 4383 4400 4411 4417 4425 4435 4437 4449 4465 4481
4485 4616 4624 4632 4640 4655
.MSDA 354 541 993 1252 1254 1275 1414 1421 1447 1474 1624 1879 3529 3699
3703 3707 3716 3720 3724 3733 3737 3741 3750 3754 3758 3787 3797 3819
3823 3827 3831 3839 3845 3853 3865 4019 4023 4027 4036 4040 4044 4053
4057 4061 4070 4074 4078 4105 4115 4137 4141 4145 4149 4157 4163 4171
4183 4337 4341 4345 4354 4358 4362 4371 4375 4379 4388 4392 4396 4423
4433 4455 4459 4463 4471 4477 4489 SEQ 0736
.MSELM 142 150 161 169 186 194 211 219 373 381 398 406 560 568
585 593 714 722 733 743 760 768 785 795 928 944 965 975
983 995 1005 1021 1152 1160 1171 1179 1199 1207 1218 1226 1277 1290
1434 1438 1453 1461 1476 1484 1643 1653 1664 1670 1685 1695 1703 1711
1737 1743 1898 1908 1919 1925 1940 1950 1958 1966 1992 1998 2122 2132
2143 2155 2167 2173 2181 2187 2202 2212 2220 2228 2243 2253 2261 2271
2308 2314 2450 2460 2471 2477 2496 2506 2514 2522 2535 2541 2677 2687
2698 2704 2723 2733 2741 2749 2762 2768 2886 2896 2907 2917 2928 2934
2951 2961 2969 2977 2990 2996 3114 3124 3135 3145 3156 3162 3179 3189
3197 3205 3218 3224 3353 3361 3367 3375 3381 3394 3402 3408 3416 3422
3444 3452 3458 3469 3477 3483 3491 3497 3550 3561 3690 3777 3783 3791
3815 3835 3849 3857 3882 4010 4095 4101 4109 4133 4153 4167 4175 4196
4316 4324 4330 4413 4419 4427 4451 4467 4481 4504 4618 4624 4634 4640
.MSELP 144 152 163 171 188 192 213 217 375 383 400 404 562 570
587 591 716 724 735 745 762 766 787 793 930 946 967 977
985 997 1003 1019 1154 1162 1173 1181 1201 1209 1220 1228 1279 1288
1436 1440 1455 1463 1478 1482 1645 1655 1666 1672 1687 1693 1701 1709
1739 1745 1900 1910 1921 1927 1942 1948 1956 1964 1994 2000 2124 2134
2145 2157 2169 2175 2183 2189 2204 2210 2218 2226 2245 2251 2259 2269
2310 2316 2452 2462 2473 2479 2498 2504 2512 2520 2537 2543 2679 2689
2700 2706 2725 2731 2739 2747 2764 2770 2888 2898 2909 2919 2930 2936
2953 2959 2967 2975 2992 2998 3116 3126 3137 3147 3158 3164 3181 3187
3195 3203 3220 3226 3355 3363 3369 3377 3383 3396 3404 3410 3418 3424
3446 3454 3460 3471 3479 3485 3493 3499 3552 3559 3688 3779 3785 3793
3817 3821 3825 3829 3837 3851 3855 3884 4008 4097 4103 4111 4135 4139
4143 4147 4155 4169 4173 4198 4314 4326 4332 4415 4421 4429 4453 4457
4461 4469 4479 4506 4620 4622 4636 4638
.MSKCN 140 159 167 184 203 205 209 354 371 396 541 558 583 712
731 758 779 783 926 934 936 942 950 952 993 1150 1169 1188
1197 1216 1235 1252 1254 1275 1414 1416 1421 1423 1447 1474 1624 1641
1662 1668 1683 1691 1699 1735 1741 1879 1896 1917 1923 1938 1946 1954
1990 1996 2120 2141 2165 2171 2179 2185 2200 2208 2216 2239 2241 2249
2257 2306 2312 2448 2469 2475 2494 2502 2510 2533 2539 2675 2696 2702
2721 2729 2737 2760 2766 2884 2905 2926 2932 2949 2957 2965 2988 2994
3112 3133 3154 3160 3177 3185 3193 3216 3222 3351 3359 3373 3379 3392
3400 3414 3420 3433 3442 3450 3467 3475 3489 3495 3508 3529 3699 3703
3707 3711 3716 3720 3724 3728 3733 3737 3741 3745 3750 3754 3758 3762
3775 3781 3787 3797 3799 3801 3819 3823 3827 3831 3839 3845 3853 3865
4019 4023 4027 4031 4036 4040 4044 4048 4053 4057 4061 4065 4070 4074
4078 4082 4093 4099 4105 4115 4117 4119 4137 4141 4145 4149 4157 4163
4171 4183 4322 4328 4337 4341 4345 4349 4354 4358 4362 4366 4371 4375
4379 4383 4388 4392 4396 4400 4411 4417 4423 4433 4435 4437 4455 4459
4463 4471 4477 4489 4616 4632 4655
.MSMIN 1467 3557 3891 4205 4513
.MXNOR 339 345 352 526 532 539 741 791 981 1001 1609 1615 1622 1864
1870 1877 2153 2267 3805 4123 4441 4651
.MXOR 356 543 1262 1626 1881 3537 3773
.RA 337 339 341 343 345 348 350 352 354 356 379 524 526 528
530 532 535 537 539 541 543 566 741 791 975 981 993 995
1001 1017 1252 1254 1256 1262 1271 1273 1286 1414 1421 1434 1447 1449
1453 1459 1474 1607 1609 1611 1613 1615 1618 1620 1622 1624 1626 1639
1651 1707 1862 1864 1866 1868 1870 1873 1875 1877 1879 1881 1894 1906
1962 2153 2267 3529 3531 3537 3546 3548 3557 3692 3694 3699 3703 3707 SEQ 0737
3716 3720 3724 3733 3737 3741 3750 3754 3758 3773 3787 3797 3803 3805
3807 3819 3823 3827 3831 3839 3845 3853 3859 3865 3867 3869 4012 4014
4019 4023 4027 4036 4040 4044 4053 4057 4061 4070 4074 4078 4105 4115
4121 4123 4125 4137 4141 4145 4149 4157 4163 4171 4177 4183 4185 4187
4318 4320 4337 4341 4345 4354 4358 4362 4371 4375 4379 4388 4392 4396
4423 4433 4439 4441 4443 4455 4459 4463 4471 4477 4483 4489 4491 4493
4626 4645 4647 4649 4651 4653
.RAND 124 148 178 182 192 217 225 320 335 354 360 390 404 507
522 541 547 577 591 696 720 739 752 756 766 777 793 801
907 954 963 979 999 1003 1019 1132 1158 1177 1190 1205 1224 1239
1252 1254 1288 1399 1414 1421 1425 1436 1447 1455 1472 1478 1482 1590
1605 1624 1630 1679 1693 1701 1709 1845 1860 1879 1885 1934 1948 1956
1964 2104 2130 2151 2196 2210 2218 2224 2226 2237 2251 2259 2269 2277
2415 2432 2458 2490 2504 2512 2518 2520 2642 2659 2685 2717 2731 2739
2745 2747 2867 2894 2915 2945 2959 2967 2973 2975 2983 3095 3122 3143
3173 3187 3195 3201 3203 3211 3333 3365 3406 3435 3456 3481 3512 3525
3529 3559 3672 3688 3694 3699 3703 3707 3716 3720 3724 3733 3737 3741
3750 3754 3758 3764 3771 3787 3797 3809 3811 3819 3823 3827 3831 3839
3845 3853 3855 3859 3865 3867 3869 3993 4008 4014 4019 4023 4027 4036
4040 4044 4053 4057 4061 4070 4074 4078 4084 4105 4115 4127 4129 4137
4141 4145 4149 4157 4163 4171 4173 4177 4183 4185 4187 4299 4314 4320
4337 4341 4345 4354 4358 4362 4371 4375 4379 4388 4392 4396 4402 4423
4433 4445 4447 4455 4459 4463 4471 4477 4479 4483 4489 4491 4493 4600
4614 4622 4638 4645 4647 4653
.RB 124 126 128 178 180 182 192 194 203 205 217 219 225 320
322 324 335 337 339 341 343 345 348 350 352 354 356 360
390 392 404 406 507 509 511 522 524 526 528 530 532 535
537 539 541 543 547 577 579 591 593 696 698 700 739 747
752 754 756 766 768 772 777 779 791 793 795 799 801 907
909 911 934 936 950 952 954 979 987 993 999 1001 1003 1005
1009 1017 1019 1021 1025 1132 1134 1136 1188 1190 1192 1235 1237 1239
1252 1254 1256 1258 1262 1264 1286 1288 1290 1294 1399 1401 1403 1414
1416 1421 1423 1425 1447 1449 1451 1453 1465 1467 1472 1482 1484 1488
1590 1592 1594 1605 1607 1609 1611 1613 1615 1618 1620 1622 1624 1626
1630 1639 1679 1681 1691 1693 1695 1699 1701 1703 1707 1709 1711 1845
1847 1849 1860 1862 1864 1866 1868 1870 1873 1875 1877 1879 1881 1885
1894 1934 1936 1946 1948 1950 1954 1956 1958 1962 1964 1966 2104 2106
2108 2151 2159 2196 2198 2208 2210 2212 2216 2218 2220 2224 2226 2228
2232 2237 2239 2249 2251 2253 2257 2259 2261 2267 2269 2271 2275 2277
2415 2417 2419 2432 2490 2492 2502 2504 2506 2510 2512 2514 2518 2520
2522 2526 2642 2644 2646 2659 2717 2719 2729 2731 2733 2737 2739 2741
2745 2747 2749 2753 2867 2869 2871 2945 2947 2957 2959 2961 2965 2967
2969 2973 2975 2977 2981 2983 3095 3097 3099 3173 3175 3185 3187 3189
3193 3195 3197 3201 3203 3205 3209 3211 3333 3335 3337 3433 3435 3437
3508 3510 3512 3525 3527 3529 3531 3533 3537 3539 3557 3559 3561 3565
3672 3674 3676 3688 3690 3692 3694 3711 3728 3745 3762 3764 3771 3773
3855 3857 3859 3861 3863 3865 3867 3869 3873 3993 3995 3997 4008 4010
4012 4014 4031 4048 4065 4082 4084 4173 4175 4177 4179 4181 4183 4185
4187 4299 4301 4303 4314 4316 4318 4320 4349 4366 4383 4400 4402 4479
4481 4483 4485 4487 4489 4491 4493 4600 4602 4604 4614 4622 4624 4626
4638 4640 4645 4647 4649 4651 4653 4655
.RCCAF 1726 2286 2481 3166 3385 3426
.RCCBF 1981 2297 2708 2938 3501 SEQ 0738
.RCCFZ 356 543 1262 1465 1626 1881 3537 3773 3869 3891 4187 4205 4493 4513
4653
.RCCXA 3841 4159 4473
.RCENA 356 543 1262 1465 1626 1726 1881 1981 2286 2297 2481 2708 2938 3166
3385 3426 3501 3537 3773 3841 3869 3891 4159 4187 4205 4473 4493 4513
4653
.RCJP 356 543 1262 1465 1626 1726 1881 1981 2286 2297 2481 2708 2938 3166
3385 3426 3501 3537 3773 3841 3869 3891 4159 4187 4205 4473 4493 4513
4653
.RCJS 122 196 221 318 337 339 343 345 350 352 408 505 524 526
530 532 537 539 595 694 770 797 905 936 952 1007 1023 1130
1192 1237 1260 1292 1397 1416 1423 1486 1588 1607 1609 1613 1615 1620
1622 1649 1674 1697 1705 1713 1843 1862 1864 1868 1870 1875 1877 1904
1929 1952 1960 1968 2102 2128 2149 2177 2191 2214 2222 2230 2255 2263
2273 2413 2424 2426 2428 2430 2456 2508 2516 2524 2640 2651 2653 2655
2657 2683 2735 2743 2751 2865 2892 2913 2963 2971 2979 3093 3120 3141
3191 3199 3207 3331 3437 3510 3535 3563 3670 3711 3728 3745 3762 3787
3797 3799 3801 3803 3805 3807 3809 3811 3819 3823 3827 3831 3839 3845
3853 3991 4031 4048 4065 4082 4105 4115 4117 4119 4121 4123 4125 4127
4129 4137 4141 4145 4149 4157 4163 4171 4297 4349 4366 4383 4400 4423
4433 4435 4437 4439 4441 4443 4445 4447 4455 4459 4463 4471 4477
.RCONT 140 142 144 146 150 152 159 161 163 165 169 171 178 180
184 186 188 190 192 194 203 205 209 211 213 215 217 219
335 341 348 354 371 373 375 377 381 383 390 392 396 398
400 402 404 406 522 528 535 541 558 560 562 564 568 570
577 579 583 585 587 589 591 593 712 714 716 718 722 724
731 733 735 737 741 743 745 752 754 758 760 762 764 766
768 777 779 783 785 787 789 791 793 795 926 928 930 932
934 942 944 946 948 950 965 967 975 977 981 983 985 993
995 997 1001 1003 1005 1017 1019 1021 1150 1152 1154 1156 1160 1162
1169 1171 1173 1175 1179 1181 1188 1190 1197 1199 1201 1203 1207 1209
1216 1218 1220 1222 1226 1228 1235 1254 1271 1273 1275 1277 1279 1281
1288 1290 1414 1421 1438 1440 1447 1453 1455 1457 1459 1461 1463 1474
1476 1478 1480 1482 1484 1605 1611 1618 1624 1641 1643 1645 1647 1653
1655 1662 1664 1666 1668 1670 1672 1679 1681 1683 1685 1687 1689 1691
1693 1695 1699 1701 1703 1709 1711 1735 1737 1739 1741 1743 1745 1860
1866 1873 1879 1896 1898 1900 1902 1908 1910 1917 1919 1921 1923 1925
1927 1934 1936 1938 1940 1942 1944 1946 1948 1950 1954 1956 1958 1964
1966 1990 1992 1994 1996 1998 2000 2120 2122 2124 2126 2132 2134 2141
2143 2145 2147 2153 2155 2157 2165 2167 2169 2171 2173 2175 2179 2181
2183 2185 2187 2189 2196 2198 2200 2202 2204 2206 2208 2210 2212 2216
2218 2220 2226 2228 2237 2239 2241 2243 2245 2247 2249 2251 2253 2257
2259 2261 2267 2269 2271 2306 2308 2310 2312 2314 2316 2419 2448 2450
2452 2454 2460 2462 2469 2471 2473 2475 2477 2479 2485 2490 2492 2494
2496 2498 2500 2502 2504 2506 2510 2512 2514 2520 2522 2533 2535 2537
2539 2541 2543 2646 2675 2677 2679 2681 2687 2689 2696 2698 2700 2702
2704 2706 2712 2717 2719 2721 2723 2725 2727 2729 2731 2733 2737 2739
2741 2747 2749 2760 2762 2764 2766 2768 2770 2884 2886 2888 2890 2896
2898 2905 2907 2909 2911 2917 2919 2926 2928 2930 2932 2934 2936 2945
2947 2949 2951 2953 2955 2957 2959 2961 2965 2967 2969 2975 2977 2988
2990 2992 2994 2996 2998 3112 3114 3116 3118 3124 3126 3133 3135 3137
3139 3145 3147 3154 3156 3158 3160 3162 3164 3173 3175 3177 3179 3181
3183 3185 3187 3189 3193 3195 3197 3203 3205 3216 3218 3220 3222 3224 SEQ 0739
3226 3351 3353 3355 3357 3359 3361 3363 3367 3369 3373 3375 3377 3379
3381 3383 3392 3394 3396 3398 3400 3402 3404 3408 3410 3414 3416 3418
3420 3422 3424 3433 3435 3442 3444 3446 3448 3450 3452 3454 3458 3460
3467 3469 3471 3473 3475 3477 3479 3483 3485 3489 3491 3493 3495 3497
3499 3508 3527 3529 3546 3548 3550 3552 3559 3561 3688 3690 3692 3694
3699 3701 3703 3705 3707 3709 3716 3718 3720 3722 3724 3726 3733 3735
3737 3739 3741 3743 3750 3752 3754 3756 3758 3760 3775 3777 3779 3781
3783 3785 3789 3791 3793 3795 3813 3815 3817 3821 3825 3829 3833 3835
3837 3847 3849 3851 3855 3857 3859 3861 3863 3865 3867 3882 4008 4010
4012 4014 4019 4021 4023 4025 4027 4029 4036 4038 4040 4042 4044 4046
4053 4055 4057 4059 4061 4063 4070 4072 4074 4076 4078 4080 4093 4095
4097 4099 4101 4103 4107 4109 4111 4113 4131 4133 4135 4139 4143 4147
4151 4153 4155 4165 4167 4169 4173 4175 4177 4179 4181 4183 4185 4196
4314 4316 4318 4320 4322 4324 4326 4328 4330 4332 4337 4339 4341 4343
4345 4347 4354 4356 4358 4360 4362 4364 4371 4373 4375 4377 4379 4381
4388 4390 4392 4394 4396 4398 4411 4413 4415 4417 4419 4421 4425 4427
4429 4431 4449 4451 4453 4457 4461 4465 4467 4469 4479 4481 4483 4485
4487 4489 4491 4504 4616 4618 4620 4622 4624 4626 4632 4634 4636 4638
4640 4645 4647 4649 4651
.RCRTN 412 599 1027 1266 1296 1490 1717 1730 1747 1972 1985 2002 2290 2301
2318 2528 2545 2755 2772 3000 3228 3541 3567 3875 3884 3895 4189 4198
4209 4497 4506 4517
.RCRY 126 128 180 322 324 341 392 509 511 528 579 698 700 726
747 754 772 799 909 911 969 987 1009 1025 1134 1136 1164 1192
1211 1264 1294 1401 1403 1488 1592 1594 1611 1681 1847 1849 1866 1936
2106 2108 2136 2159 2198 2232 2275 2417 2419 2464 2492 2526 2644 2646
2691 2719 2753 2869 2871 2900 2947 2981 3097 3099 3128 3175 3209 3335
3337 3371 3437 3462 3527 3539 3565 3674 3676 3863 3873 3995 3997 4181
4301 4303 4487 4602 4604
.RD 124 126 128 140 142 146 148 150 159 161 165 167 169 178
180 182 184 186 190 192 194 203 205 209 211 215 217 219
225 320 322 324 335 337 339 341 343 345 348 350 352 354
356 358 360 371 373 377 379 381 390 392 396 398 402 404
406 412 507 509 511 522 524 526 528 530 532 535 537 539
541 543 545 547 558 560 564 566 568 577 579 583 585 589
591 593 599 696 698 700 712 714 718 720 722 726 731 733
737 739 741 743 747 752 754 756 758 760 764 766 768 772
777 779 783 785 789 791 793 795 799 801 907 909 911 926
928 932 934 936 942 944 948 950 952 954 963 965 969 975
979 981 983 987 993 995 999 1001 1003 1005 1009 1017 1019 1021
1025 1132 1134 1136 1150 1152 1156 1158 1160 1164 1169 1171 1175 1177
1179 1188 1190 1192 1197 1199 1203 1205 1207 1211 1216 1218 1222 1224
1226 1235 1237 1239 1252 1254 1256 1258 1262 1264 1266 1271 1273 1275
1277 1281 1286 1288 1290 1292 1294 1296 1399 1401 1403 1414 1416 1421
1423 1425 1434 1436 1438 1447 1449 1451 1453 1455 1457 1459 1461 1465
1467 1472 1474 1476 1478 1480 1482 1484 1488 1590 1592 1594 1605 1607
1609 1611 1613 1615 1618 1620 1622 1624 1626 1628 1630 1639 1641 1643
1647 1651 1653 1662 1664 1668 1670 1679 1681 1683 1685 1689 1691 1693
1695 1699 1701 1703 1707 1709 1711 1735 1737 1741 1743 1845 1847 1849
1860 1862 1864 1866 1868 1870 1873 1875 1877 1879 1881 1883 1885 1894
1896 1898 1902 1906 1908 1917 1919 1923 1925 1934 1936 1938 1940 1944
1946 1948 1950 1954 1956 1958 1962 1964 1966 1990 1992 1996 1998 2104
2106 2108 2120 2122 2126 2130 2132 2136 2141 2143 2147 2151 2153 2155 SEQ 0740
2159 2165 2167 2171 2173 2179 2181 2185 2187 2196 2198 2200 2202 2206
2208 2210 2212 2216 2218 2220 2224 2226 2228 2232 2237 2239 2241 2243
2247 2249 2251 2253 2257 2259 2261 2267 2269 2271 2275 2277 2306 2308
2312 2314 2415 2417 2419 2432 2448 2450 2454 2458 2460 2464 2469 2471
2475 2477 2490 2492 2494 2496 2500 2502 2504 2506 2510 2512 2514 2518
2520 2522 2526 2533 2535 2539 2541 2642 2644 2646 2659 2675 2677 2681
2685 2687 2691 2696 2698 2702 2704 2717 2719 2721 2723 2727 2729 2731
2733 2737 2739 2741 2745 2747 2749 2753 2760 2762 2766 2768 2867 2869
2871 2884 2886 2890 2894 2896 2900 2905 2907 2911 2915 2917 2926 2928
2932 2934 2945 2947 2949 2951 2955 2957 2959 2961 2965 2967 2969 2973
2975 2977 2981 2983 2988 2990 2994 2996 3095 3097 3099 3112 3114 3118
3122 3124 3128 3133 3135 3139 3143 3145 3154 3156 3160 3162 3173 3175
3177 3179 3183 3185 3187 3189 3193 3195 3197 3201 3203 3205 3209 3211
3216 3218 3222 3224 3333 3335 3337 3351 3353 3357 3359 3361 3365 3367
3371 3373 3375 3379 3381 3392 3394 3398 3400 3402 3406 3408 3414 3416
3420 3422 3433 3435 3437 3442 3444 3448 3450 3452 3456 3458 3462 3467
3469 3473 3475 3477 3481 3483 3489 3491 3495 3497 3508 3510 3512 3525
3527 3529 3531 3533 3537 3539 3541 3546 3548 3550 3557 3559 3561 3563
3565 3567 3672 3674 3676 3688 3690 3692 3694 3699 3701 3703 3705 3707
3709 3711 3716 3718 3720 3722 3724 3726 3728 3733 3735 3737 3739 3741
3743 3745 3750 3752 3754 3756 3758 3760 3762 3764 3771 3773 3775 3777
3781 3783 3787 3789 3791 3795 3797 3799 3801 3803 3805 3807 3809 3811
3813 3815 3819 3823 3827 3831 3833 3835 3839 3845 3847 3849 3853 3855
3857 3859 3861 3863 3865 3867 3869 3873 3882 3891 3993 3995 3997 4008
4010 4012 4014 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040 4042
4044 4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074 4076
4078 4080 4082 4084 4093 4095 4099 4101 4105 4107 4109 4113 4115 4117
4119 4121 4123 4125 4127 4129 4131 4133 4137 4141 4145 4149 4151 4153
4157 4163 4165 4167 4171 4173 4175 4177 4179 4181 4183 4185 4187 4196
4205 4299 4301 4303 4314 4316 4318 4320 4322 4324 4328 4330 4337 4339
4341 4343 4345 4347 4349 4354 4356 4358 4360 4362 4364 4366 4371 4373
4375 4377 4379 4381 4383 4388 4390 4392 4394 4396 4398 4400 4402 4411
4413 4417 4419 4423 4425 4427 4431 4433 4435 4437 4439 4441 4443 4445
4447 4449 4451 4455 4459 4463 4465 4467 4471 4477 4479 4481 4483 4485
4487 4489 4491 4493 4504 4513 4600 4602 4604 4614 4616 4618 4622 4624
4626 4632 4634 4638 4640 4645 4647 4649 4651 4653 4655
.RJ 122 124 126 128 138 148 154 167 173 182 196 198 207 221
223 225 318 320 322 324 337 339 343 345 350 352 356 358
360 369 379 385 394 408 410 505 507 509 511 524 526 530
532 537 539 543 545 547 556 566 572 581 595 597 694 696
698 700 710 720 726 739 747 756 770 772 781 797 799 801
905 907 909 911 924 936 952 954 963 969 979 987 999 1007
1009 1015 1023 1025 1130 1132 1134 1136 1148 1158 1164 1177 1183 1192
1205 1211 1224 1230 1237 1239 1252 1256 1258 1260 1262 1264 1286 1292
1294 1397 1399 1401 1403 1416 1423 1425 1434 1436 1442 1449 1451 1465
1467 1472 1486 1488 1588 1590 1592 1594 1607 1609 1613 1615 1620 1622
1626 1628 1630 1639 1649 1651 1657 1674 1697 1705 1707 1713 1715 1722
1724 1726 1728 1843 1845 1847 1849 1862 1864 1868 1870 1875 1877 1881
1883 1885 1894 1904 1906 1912 1929 1952 1960 1962 1968 1970 1977 1979
1981 1983 2102 2104 2106 2108 2118 2128 2130 2136 2149 2151 2159 2177
2191 2214 2222 2224 2230 2232 2255 2263 2265 2273 2275 2277 2282 2284
2286 2288 2293 2295 2297 2299 2413 2415 2417 2424 2426 2428 2430 2432
2446 2456 2458 2464 2481 2483 2508 2516 2518 2524 2526 2640 2642 2644 SEQ 0741
2651 2653 2655 2657 2659 2673 2683 2685 2691 2708 2710 2735 2743 2745
2751 2753 2865 2867 2869 2871 2882 2892 2894 2900 2913 2915 2921 2938
2940 2963 2971 2973 2979 2981 2983 3093 3095 3097 3099 3110 3120 3122
3128 3141 3143 3149 3166 3168 3191 3199 3201 3207 3209 3211 3331 3333
3335 3337 3349 3365 3371 3385 3387 3406 3412 3426 3428 3437 3456 3462
3481 3487 3501 3503 3510 3512 3525 3531 3533 3535 3537 3539 3557 3563
3565 3670 3672 3674 3676 3686 3711 3728 3745 3762 3764 3771 3773 3787
3797 3799 3801 3803 3805 3807 3809 3811 3819 3823 3827 3831 3839 3841
3843 3845 3853 3869 3871 3873 3891 3893 3991 3993 3995 3997 4006 4031
4048 4065 4082 4084 4091 4105 4115 4117 4119 4121 4123 4125 4127 4129
4137 4141 4145 4149 4157 4159 4161 4163 4171 4187 4205 4207 4297 4299
4301 4303 4312 4349 4366 4383 4400 4402 4409 4423 4433 4435 4437 4439
4441 4443 4445 4447 4455 4459 4463 4471 4473 4475 4477 4493 4495 4513
4515 4600 4602 4604 4614 4653 4655
.RJMAP 128 138 225 324 358 360 369 511 545 547 556 700 710 801
911 924 954 1136 1148 1239 1252 1264 1403 1425 1434 1467 1594 1628
1630 1639 1728 1849 1883 1885 1894 1983 2108 2118 2277 2288 2299 2432
2446 2483 2659 2673 2710 2871 2882 2940 2983 3099 3110 3168 3211 3337
3349 3387 3428 3503 3512 3525 3539 3676 3686 3764 3843 3871 3893 3997
4006 4084 4091 4161 4207 4303 4312 4402 4409 4475 4495 4515 4604 4614
4655
.RJZ 120 316 503 692 903 1128 1395 1586 1841 2100 2411 2638 2863 3091
3329 3668 3989 4295 4598
.RLDCT 124 148 167 182 207 320 379 394 507 566 581 696 720 739
756 781 907 963 979 999 1015 1132 1158 1177 1205 1224 1256 1286
1399 1436 1449 1472 1590 1651 1707 1722 1845 1906 1962 1977 2104 2130
2151 2224 2265 2282 2293 2415 2458 2518 2642 2685 2745 2867 2894 2915
2973 3095 3122 3143 3201 3333 3365 3406 3456 3481 3531 3557 3672 3771
3993 4299 4600
.RLDLM 3701 3705 3709 3718 3722 3726 3735 3739 3743 3752 3756 3760 4021 4025
4029 4038 4042 4046 4055 4059 4063 4072 4076 4080 4339 4343 4347 4356
4360 4364 4373 4377 4381 4390 4394 4398
.RMGC 140 142 144 150 152 159 161 163 167 169 171 184 186 188
192 194 203 205 209 211 213 217 219 354 371 373 375 381
383 396 398 400 404 406 541 558 560 562 568 570 583 585
587 591 593 712 714 716 722 724 731 733 735 743 745 758
760 762 766 768 779 783 785 787 793 795 926 928 930 934
936 942 944 946 950 952 965 967 975 977 983 985 993 995
997 1003 1005 1019 1021 1150 1152 1154 1160 1162 1169 1171 1173 1179
1181 1188 1197 1199 1201 1207 1209 1216 1218 1220 1226 1228 1235 1252
1254 1275 1277 1279 1288 1290 1414 1416 1421 1423 1434 1436 1438 1440
1447 1453 1455 1461 1463 1474 1476 1478 1482 1484 1624 1641 1643 1645
1653 1655 1662 1664 1666 1668 1670 1672 1683 1685 1687 1691 1693 1695
1699 1701 1703 1709 1711 1735 1737 1739 1741 1743 1745 1879 1896 1898
1900 1908 1910 1917 1919 1921 1923 1925 1927 1938 1940 1942 1946 1948
1950 1954 1956 1958 1964 1966 1990 1992 1994 1996 1998 2000 2120 2122
2124 2132 2134 2141 2143 2145 2155 2157 2165 2167 2169 2171 2173 2175
2179 2181 2183 2185 2187 2189 2200 2202 2204 2208 2210 2212 2216 2218
2220 2226 2228 2239 2241 2243 2245 2249 2251 2253 2257 2259 2261 2269
2271 2306 2308 2310 2312 2314 2316 2448 2450 2452 2460 2462 2469 2471
2473 2475 2477 2479 2494 2496 2498 2502 2504 2506 2510 2512 2514 2520
2522 2533 2535 2537 2539 2541 2543 2675 2677 2679 2687 2689 2696 2698
2700 2702 2704 2706 2721 2723 2725 2729 2731 2733 2737 2739 2741 2747 SEQ 0742
2749 2760 2762 2764 2766 2768 2770 2884 2886 2888 2896 2898 2905 2907
2909 2917 2919 2926 2928 2930 2932 2934 2936 2949 2951 2953 2957 2959
2961 2965 2967 2969 2975 2977 2988 2990 2992 2994 2996 2998 3112 3114
3116 3124 3126 3133 3135 3137 3145 3147 3154 3156 3158 3160 3162 3164
3177 3179 3181 3185 3187 3189 3193 3195 3197 3203 3205 3216 3218 3220
3222 3224 3226 3351 3353 3355 3359 3361 3363 3367 3369 3373 3375 3377
3379 3381 3383 3392 3394 3396 3400 3402 3404 3408 3410 3414 3416 3418
3420 3422 3424 3433 3442 3444 3446 3450 3452 3454 3458 3460 3467 3469
3471 3475 3477 3479 3483 3485 3489 3491 3493 3495 3497 3499 3508 3529
3550 3552 3559 3561 3688 3690 3699 3701 3703 3705 3707 3709 3711 3716
3718 3720 3722 3724 3726 3728 3733 3735 3737 3739 3741 3743 3745 3750
3752 3754 3756 3758 3760 3762 3775 3777 3779 3781 3783 3785 3787 3789
3791 3793 3797 3799 3801 3813 3815 3817 3819 3821 3823 3825 3827 3829
3831 3833 3835 3837 3839 3845 3847 3849 3851 3853 3855 3857 3861 3865
3882 3884 4008 4010 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040
4042 4044 4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074
4076 4078 4080 4082 4093 4095 4097 4099 4101 4103 4105 4107 4109 4111
4115 4117 4119 4131 4133 4135 4137 4139 4141 4143 4145 4147 4149 4151
4153 4155 4157 4163 4165 4167 4169 4171 4173 4175 4179 4183 4196 4198
4314 4316 4322 4324 4326 4328 4330 4332 4337 4339 4341 4343 4345 4347
4349 4354 4356 4358 4360 4362 4364 4366 4371 4373 4375 4377 4379 4381
4383 4388 4390 4392 4394 4396 4398 4400 4411 4413 4415 4417 4419 4421
4423 4425 4427 4429 4433 4435 4437 4449 4451 4453 4455 4457 4459 4461
4463 4465 4467 4469 4471 4477 4479 4481 4485 4489 4504 4506 4616 4618
4620 4622 4624 4632 4634 4636 4638 4640 4655
.ROENA 142 150 161 169 186 211 373 381 398 560 568 585 714 722
733 743 760 785 928 944 965 975 983 995 1152 1160 1171 1179
1199 1207 1218 1226 1277 1434 1438 1453 1461 1476 1643 1653 1664 1670
1685 1737 1743 1898 1908 1919 1925 1940 1992 1998 2122 2132 2143 2155
2167 2173 2181 2187 2202 2243 2308 2314 2450 2460 2471 2477 2496 2535
2541 2677 2687 2698 2704 2723 2762 2768 2886 2896 2907 2917 2928 2934
2951 2990 2996 3114 3124 3135 3145 3156 3162 3179 3218 3224 3353 3361
3367 3375 3381 3394 3402 3408 3416 3422 3444 3452 3458 3469 3477 3483
3491 3497 3550 3701 3705 3709 3718 3722 3726 3735 3739 3743 3752 3756
3760 3777 3783 3791 3815 3835 3849 3882 4021 4025 4029 4038 4042 4046
4055 4059 4063 4072 4076 4080 4095 4101 4109 4133 4153 4167 4196 4324
4330 4339 4343 4347 4356 4360 4364 4373 4377 4381 4390 4394 4398 4413
4419 4427 4451 4467 4504 4618 4634
.ROR 140 142 150 159 161 167 169 184 186 194 203 205 209 211
219 337 343 348 350 371 373 379 381 396 398 406 524 530
535 537 558 560 566 568 583 585 593 712 714 722 731 733
743 758 760 768 779 783 785 795 926 928 934 936 942 944
950 952 965 975 983 993 995 1005 1017 1021 1150 1152 1160 1169
1171 1179 1188 1197 1199 1207 1216 1218 1226 1235 1256 1258 1271 1273
1275 1277 1286 1290 1416 1423 1434 1438 1449 1451 1453 1459 1461 1465
1474 1476 1484 1607 1613 1618 1620 1639 1641 1643 1651 1653 1662 1664
1668 1670 1683 1685 1691 1695 1699 1703 1707 1711 1735 1737 1741 1743
1862 1868 1873 1875 1894 1896 1898 1906 1908 1917 1919 1923 1925 1938
1940 1946 1950 1954 1958 1962 1966 1990 1992 1996 1998 2120 2122 2132
2141 2143 2155 2165 2167 2171 2173 2179 2181 2185 2187 2200 2202 2208
2212 2216 2220 2228 2239 2241 2243 2249 2253 2257 2261 2271 2306 2308
2312 2314 2448 2450 2460 2469 2471 2475 2477 2494 2496 2502 2506 2510
2514 2522 2533 2535 2539 2541 2675 2677 2687 2696 2698 2702 2704 2721 SEQ 0743
2723 2729 2733 2737 2741 2749 2760 2762 2766 2768 2884 2886 2896 2905
2907 2917 2926 2928 2932 2934 2949 2951 2957 2961 2965 2969 2977 2988
2990 2994 2996 3112 3114 3124 3133 3135 3145 3154 3156 3160 3162 3177
3179 3185 3189 3193 3197 3205 3216 3218 3222 3224 3351 3353 3359 3361
3367 3373 3375 3379 3381 3392 3394 3400 3402 3408 3414 3416 3420 3422
3433 3442 3444 3450 3452 3458 3467 3469 3475 3477 3483 3489 3491 3495
3497 3508 3531 3533 3546 3548 3550 3561 3690 3692 3701 3705 3709 3711
3718 3722 3726 3728 3735 3739 3743 3745 3752 3756 3760 3762 3775 3777
3781 3783 3789 3791 3799 3801 3803 3807 3813 3815 3833 3835 3847 3849
3857 3861 3882 4010 4012 4021 4025 4029 4031 4038 4042 4046 4048 4055
4059 4063 4065 4072 4076 4080 4082 4093 4095 4099 4101 4107 4109 4117
4119 4121 4125 4131 4133 4151 4153 4165 4167 4175 4179 4196 4316 4318
4322 4324 4328 4330 4339 4343 4347 4349 4356 4360 4364 4366 4373 4377
4381 4383 4390 4394 4398 4400 4411 4413 4417 4419 4425 4427 4435 4437
4439 4443 4449 4451 4465 4467 4481 4485 4504 4616 4618 4624 4626 4632
4634 4640 4655
.RPLUS 126 128 180 322 324 341 392 509 511 528 579 698 700 726
747 754 772 799 909 911 969 987 1009 1025 1134 1136 1164 1192
1211 1237 1264 1294 1401 1403 1488 1592 1594 1611 1681 1847 1849 1866
1936 2106 2108 2136 2159 2198 2232 2275 2417 2419 2464 2492 2526 2644
2646 2691 2719 2753 2869 2871 2900 2947 2981 3097 3099 3128 3175 3209
3335 3337 3371 3437 3462 3510 3527 3539 3565 3674 3676 3863 3873 3995
3997 4181 4301 4303 4487 4602 4604
.RRDLM 3789 3813 3833 3847 3861 4107 4131 4151 4165 4179 4425 4449 4465 4485
.RRPCT 126 154 173 198 223 322 385 410 509 572 597 698 726 747
772 799 909 969 987 1009 1025 1134 1164 1183 1211 1230 1258 1294
1401 1442 1451 1488 1592 1657 1715 1724 1847 1912 1970 1979 2106 2136
2159 2232 2275 2284 2295 2417 2464 2526 2644 2691 2753 2869 2900 2921
2981 3097 3128 3149 3209 3335 3371 3412 3462 3487 3533 3565 3674 3873
3995 4301 4602
.RS0A 142 148 150 161 169 186 211 337 339 341 343 345 348 350
352 360 373 379 381 398 524 526 528 530 532 535 537 539
547 560 566 568 585 714 720 722 726 733 739 741 743 760
785 791 928 944 965 975 981 983 995 1001 1017 1152 1158 1160
1164 1171 1177 1179 1190 1199 1205 1207 1211 1218 1224 1226 1239 1256
1271 1277 1286 1434 1436 1438 1449 1455 1459 1461 1476 1478 1607 1609
1611 1613 1615 1618 1620 1622 1630 1639 1643 1651 1653 1664 1670 1685
1707 1737 1743 1862 1864 1866 1868 1870 1873 1875 1877 1885 1894 1898
1906 1908 1919 1925 1940 1962 1992 1998 2122 2130 2132 2136 2143 2151
2153 2155 2167 2173 2181 2187 2202 2243 2267 2308 2314 2432 2450 2458
2460 2464 2471 2477 2496 2535 2541 2659 2677 2685 2687 2691 2698 2704
2723 2762 2768 2886 2894 2896 2900 2907 2915 2917 2928 2934 2951 2983
2990 2996 3114 3122 3124 3128 3135 3143 3145 3156 3162 3179 3211 3218
3224 3353 3361 3365 3367 3371 3375 3381 3394 3402 3406 3408 3416 3422
3435 3444 3452 3456 3458 3462 3469 3477 3481 3483 3491 3497 3512 3525
3531 3546 3550 3557 3692 3701 3705 3709 3718 3722 3726 3735 3739 3743
3752 3756 3760 3771 3777 3783 3791 3803 3805 3807 3809 3811 3815 3835
3849 3882 4012 4021 4025 4029 4038 4042 4046 4055 4059 4063 4072 4076
4080 4095 4101 4109 4121 4123 4125 4127 4129 4133 4153 4167 4196 4318
4324 4330 4339 4343 4347 4356 4360 4364 4373 4377 4381 4390 4394 4398
4413 4419 4427 4439 4441 4443 4445 4447 4451 4467 4504 4618 4626 4634
4649
.RS0B 124 126 128 178 180 182 192 217 225 320 322 324 390 392 SEQ 0744
404 507 509 511 577 579 591 696 698 700 747 752 754 756
766 772 777 793 799 801 907 909 911 954 963 969 979 987
999 1003 1009 1019 1025 1132 1134 1136 1192 1237 1258 1264 1288 1294
1399 1401 1403 1451 1465 1467 1472 1482 1488 1590 1592 1594 1679 1681
1693 1701 1709 1845 1847 1849 1934 1936 1948 1956 1964 2104 2106 2108
2159 2196 2198 2210 2218 2224 2226 2232 2237 2251 2259 2269 2275 2277
2415 2417 2419 2490 2492 2504 2512 2518 2520 2526 2642 2644 2646 2717
2719 2731 2739 2745 2747 2753 2867 2869 2871 2945 2947 2959 2967 2973
2975 2981 3095 3097 3099 3173 3175 3187 3195 3201 3203 3209 3333 3335
3337 3437 3510 3527 3533 3539 3559 3565 3672 3674 3676 3688 3764 3855
3863 3873 3891 3993 3995 3997 4008 4084 4173 4181 4205 4299 4301 4303
4314 4402 4479 4487 4513 4600 4602 4604 4614 4622 4638
.RSAB 356 543 1262 1273 1453 1626 1881 3537 3548 3694 3773 3859 3867 3869
4014 4177 4185 4187 4320 4483 4491 4493 4645 4647 4651 4653
.RSD0 140 159 167 184 194 203 205 209 219 335 371 396 406 522
558 583 593 712 731 758 768 779 783 795 926 934 936 942
950 952 1005 1021 1150 1169 1188 1197 1216 1235 1290 1416 1423 1425
1484 1605 1641 1662 1668 1683 1691 1695 1699 1703 1711 1735 1741 1860
1896 1917 1923 1938 1946 1950 1954 1958 1966 1990 1996 2120 2141 2165
2171 2179 2185 2200 2208 2212 2216 2220 2228 2239 2241 2249 2253 2257
2261 2271 2306 2312 2448 2469 2475 2494 2502 2506 2510 2514 2522 2533
2539 2675 2696 2702 2721 2729 2733 2737 2741 2749 2760 2766 2884 2905
2926 2932 2949 2957 2961 2965 2969 2977 2988 2994 3112 3133 3154 3160
3177 3185 3189 3193 3197 3205 3216 3222 3351 3359 3373 3379 3392 3400
3414 3420 3433 3442 3450 3467 3475 3489 3495 3508 3561 3690 3711 3728
3745 3762 3775 3781 3789 3799 3801 3813 3833 3847 3857 3861 4010 4031
4048 4065 4082 4093 4099 4107 4117 4119 4131 4151 4165 4175 4179 4316
4322 4328 4349 4366 4383 4400 4411 4417 4425 4435 4437 4449 4465 4481
4485 4616 4624 4632 4640 4655
.RSDA 354 541 993 1252 1254 1275 1414 1421 1447 1474 1624 1879 3529 3699
3703 3707 3716 3720 3724 3733 3737 3741 3750 3754 3758 3787 3797 3819
3823 3827 3831 3839 3845 3853 3865 4019 4023 4027 4036 4040 4044 4053
4057 4061 4070 4074 4078 4105 4115 4137 4141 4145 4149 4157 4163 4171
4183 4337 4341 4345 4354 4358 4362 4371 4375 4379 4388 4392 4396 4423
4433 4455 4459 4463 4471 4477 4489
.RSELM 142 150 161 169 186 194 211 219 373 381 398 406 560 568
585 593 714 722 733 743 760 768 785 795 928 944 965 975
983 995 1005 1021 1152 1160 1171 1179 1199 1207 1218 1226 1277 1290
1434 1438 1453 1461 1476 1484 1643 1653 1664 1670 1685 1695 1703 1711
1737 1743 1898 1908 1919 1925 1940 1950 1958 1966 1992 1998 2122 2132
2143 2155 2167 2173 2181 2187 2202 2212 2220 2228 2243 2253 2261 2271
2308 2314 2450 2460 2471 2477 2496 2506 2514 2522 2535 2541 2677 2687
2698 2704 2723 2733 2741 2749 2762 2768 2886 2896 2907 2917 2928 2934
2951 2961 2969 2977 2990 2996 3114 3124 3135 3145 3156 3162 3179 3189
3197 3205 3218 3224 3353 3361 3367 3375 3381 3394 3402 3408 3416 3422
3444 3452 3458 3469 3477 3483 3491 3497 3550 3561 3690 3777 3783 3791
3815 3835 3849 3857 3882 4010 4095 4101 4109 4133 4153 4167 4175 4196
4316 4324 4330 4413 4419 4427 4451 4467 4481 4504 4618 4624 4634 4640
.RSELP 144 152 163 171 188 192 213 217 375 383 400 404 562 570
587 591 716 724 735 745 762 766 787 793 930 946 967 977
985 997 1003 1019 1154 1162 1173 1181 1201 1209 1220 1228 1279 1288
1436 1440 1455 1463 1478 1482 1645 1655 1666 1672 1687 1693 1701 1709
1739 1745 1900 1910 1921 1927 1942 1948 1956 1964 1994 2000 2124 2134 SEQ 0745
2145 2157 2169 2175 2183 2189 2204 2210 2218 2226 2245 2251 2259 2269
2310 2316 2452 2462 2473 2479 2498 2504 2512 2520 2537 2543 2679 2689
2700 2706 2725 2731 2739 2747 2764 2770 2888 2898 2909 2919 2930 2936
2953 2959 2967 2975 2992 2998 3116 3126 3137 3147 3158 3164 3181 3187
3195 3203 3220 3226 3355 3363 3369 3377 3383 3396 3404 3410 3418 3424
3446 3454 3460 3471 3479 3485 3493 3499 3552 3559 3688 3779 3785 3793
3817 3821 3825 3829 3837 3851 3855 3884 4008 4097 4103 4111 4135 4139
4143 4147 4155 4169 4173 4198 4314 4326 4332 4415 4421 4429 4453 4457
4461 4469 4479 4506 4620 4622 4636 4638
.RSKCN 140 159 167 184 203 205 209 354 371 396 541 558 583 712
731 758 779 783 926 934 936 942 950 952 993 1150 1169 1188
1197 1216 1235 1252 1254 1275 1414 1416 1421 1423 1447 1474 1624 1641
1662 1668 1683 1691 1699 1735 1741 1879 1896 1917 1923 1938 1946 1954
1990 1996 2120 2141 2165 2171 2179 2185 2200 2208 2216 2239 2241 2249
2257 2306 2312 2448 2469 2475 2494 2502 2510 2533 2539 2675 2696 2702
2721 2729 2737 2760 2766 2884 2905 2926 2932 2949 2957 2965 2988 2994
3112 3133 3154 3160 3177 3185 3193 3216 3222 3351 3359 3373 3379 3392
3400 3414 3420 3433 3442 3450 3467 3475 3489 3495 3508 3529 3699 3703
3707 3711 3716 3720 3724 3728 3733 3737 3741 3745 3750 3754 3758 3762
3775 3781 3787 3797 3799 3801 3819 3823 3827 3831 3839 3845 3853 3865
4019 4023 4027 4031 4036 4040 4044 4048 4053 4057 4061 4065 4070 4074
4078 4082 4093 4099 4105 4115 4117 4119 4137 4141 4145 4149 4157 4163
4171 4183 4322 4328 4337 4341 4345 4349 4354 4358 4362 4366 4371 4375
4379 4383 4388 4392 4396 4400 4411 4417 4423 4433 4435 4437 4455 4459
4463 4471 4477 4489 4616 4632 4655
.RSMIN 1467 3557 3891 4205 4513
.RXNOR 339 345 352 526 532 539 741 791 981 1001 1609 1615 1622 1864
1870 1877 2153 2267 3805 4123 4441 4651
.RXOR 356 543 1262 1626 1881 3537 3773
ABOXMT 3821 4139 4457
CALC 120 122 124 126 128 138 140 142 144 146 148 150 152 154 SEQ 0746
159 161 163 165 167 169 171 173 178 180 182 184 186 188
190 192 194 196 198 203 205 207 209 211 213 215 217 219
221 223 225 316 318 320 322 324 335 337 339 341 343 345
348 350 352 354 356 358 360 369 371 373 375 377 379 381
383 385 390 392 394 396 398 400 402 404 406 408 410 412
503 505 507 509 511 522 524 526 528 530 532 535 537 539
541 543 545 547 556 558 560 562 564 566 568 570 572 577
579 581 583 585 587 589 591 593 595 597 599 692 694 696
698 700 710 712 714 716 718 720 722 724 726 731 733 735
737 739 741 743 745 747 752 754 756 758 760 762 764 766
768 770 772 777 779 781 783 785 787 789 791 793 795 797
799 801 903 905 907 909 911 924 926 928 930 932 934 936
942 944 946 948 950 952 954 963 965 967 969 975 977 979
981 983 985 987 993 995 997 999 1001 1003 1005 1007 1009 1015
1017 1019 1021 1023 1025 1027 1128 1130 1132 1134 1136 1148 1150 1152
1154 1156 1158 1160 1162 1164 1169 1171 1173 1175 1177 1179 1181 1183
1188 1190 1192 1197 1199 1201 1203 1205 1207 1209 1211 1216 1218 1220
1222 1224 1226 1228 1230 1235 1237 1239 1252 1254 1256 1258 1260 1262
1264 1266 1271 1273 1275 1277 1279 1281 1286 1288 1290 1292 1294 1296
1395 1397 1399 1401 1403 1414 1416 1421 1423 1425 1434 1436 1438 1440
1442 1447 1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1472 1474
1476 1478 1480 1482 1484 1486 1488 1490 1586 1588 1590 1592 1594 1605
1607 1609 1611 1613 1615 1618 1620 1622 1624 1626 1628 1630 1639 1641
1643 1645 1647 1649 1651 1653 1655 1657 1662 1664 1666 1668 1670 1672
1674 1679 1681 1683 1685 1687 1689 1691 1693 1695 1697 1699 1701 1703
1705 1707 1709 1711 1713 1715 1717 1722 1724 1726 1728 1730 1735 1737
1739 1741 1743 1745 1747 1841 1843 1845 1847 1849 1860 1862 1864 1866
1868 1870 1873 1875 1877 1879 1881 1883 1885 1894 1896 1898 1900 1902
1904 1906 1908 1910 1912 1917 1919 1921 1923 1925 1927 1929 1934 1936
1938 1940 1942 1944 1946 1948 1950 1952 1954 1956 1958 1960 1962 1964
1966 1968 1970 1972 1977 1979 1981 1983 1985 1990 1992 1994 1996 1998
2000 2002 2100 2102 2104 2106 2108 2118 2120 2122 2124 2126 2128 2130
2132 2134 2136 2141 2143 2145 2147 2149 2151 2153 2155 2157 2159 2165
2167 2169 2171 2173 2175 2177 2179 2181 2183 2185 2187 2189 2191 2196
2198 2200 2202 2204 2206 2208 2210 2212 2214 2216 2218 2220 2222 2224
2226 2228 2230 2232 2237 2239 2241 2243 2245 2247 2249 2251 2253 2255
2257 2259 2261 2263 2265 2267 2269 2271 2273 2275 2277 2282 2284 2286
2288 2290 2293 2295 2297 2299 2301 2306 2308 2310 2312 2314 2316 2318
2411 2413 2415 2417 2419 2424 2426 2428 2430 2432 2446 2448 2450 2452
2454 2456 2458 2460 2462 2464 2469 2471 2473 2475 2477 2479 2481 2483
2485 2490 2492 2494 2496 2498 2500 2502 2504 2506 2508 2510 2512 2514
2516 2518 2520 2522 2524 2526 2528 2533 2535 2537 2539 2541 2543 2545
2638 2640 2642 2644 2646 2651 2653 2655 2657 2659 2673 2675 2677 2679
2681 2683 2685 2687 2689 2691 2696 2698 2700 2702 2704 2706 2708 2710
2712 2717 2719 2721 2723 2725 2727 2729 2731 2733 2735 2737 2739 2741
2743 2745 2747 2749 2751 2753 2755 2760 2762 2764 2766 2768 2770 2772
2863 2865 2867 2869 2871 2882 2884 2886 2888 2890 2892 2894 2896 2898
2900 2905 2907 2909 2911 2913 2915 2917 2919 2921 2926 2928 2930 2932
2934 2936 2938 2940 2945 2947 2949 2951 2953 2955 2957 2959 2961 2963
2965 2967 2969 2971 2973 2975 2977 2979 2981 2983 2988 2990 2992 2994
2996 2998 3000 3091 3093 3095 3097 3099 3110 3112 3114 3116 3118 3120
3122 3124 3126 3128 3133 3135 3137 3139 3141 3143 3145 3147 3149 3154
3156 3158 3160 3162 3164 3166 3168 3173 3175 3177 3179 3181 3183 3185 SEQ 0747
3187 3189 3191 3193 3195 3197 3199 3201 3203 3205 3207 3209 3211 3216
3218 3220 3222 3224 3226 3228 3329 3331 3333 3335 3337 3349 3351 3353
3355 3357 3359 3361 3363 3365 3367 3369 3371 3373 3375 3377 3379 3381
3383 3385 3387 3392 3394 3396 3398 3400 3402 3404 3406 3408 3410 3412
3414 3416 3418 3420 3422 3424 3426 3428 3433 3435 3437 3442 3444 3446
3448 3450 3452 3454 3456 3458 3460 3462 3467 3469 3471 3473 3475 3477
3479 3481 3483 3485 3487 3489 3491 3493 3495 3497 3499 3501 3503 3508
3510 3512 3525 3527 3529 3531 3533 3535 3537 3539 3541 3546 3548 3550
3552 3557 3559 3561 3563 3565 3567 3668 3670 3672 3674 3676 3686 3688
3690 3692 3694 3699 3701 3703 3705 3707 3709 3711 3716 3718 3720 3722
3724 3726 3728 3733 3735 3737 3739 3741 3743 3745 3750 3752 3754 3756
3758 3760 3762 3764 3771 3773 3775 3777 3779 3781 3783 3785 3787 3789
3791 3793 3795 3797 3799 3801 3803 3805 3807 3809 3811 3813 3815 3817
3819 3821 3823 3825 3827 3829 3831 3833 3835 3837 3839 3841 3843 3845
3847 3849 3851 3853 3855 3857 3859 3861 3863 3865 3867 3869 3871 3873
3875 3882 3884 3891 3893 3895 3989 3991 3993 3995 3997 4006 4008 4010
4012 4014 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040 4042 4044
4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074 4076 4078
4080 4082 4084 4091 4093 4095 4097 4099 4101 4103 4105 4107 4109 4111
4113 4115 4117 4119 4121 4123 4125 4127 4129 4131 4133 4135 4137 4139
4141 4143 4145 4147 4149 4151 4153 4155 4157 4159 4161 4163 4165 4167
4169 4171 4173 4175 4177 4179 4181 4183 4185 4187 4189 4196 4198 4205
4207 4209 4295 4297 4299 4301 4303 4312 4314 4316 4318 4320 4322 4324
4326 4328 4330 4332 4337 4339 4341 4343 4345 4347 4349 4354 4356 4358
4360 4362 4364 4366 4371 4373 4375 4377 4379 4381 4383 4388 4390 4392
4394 4396 4398 4400 4402 4409 4411 4413 4415 4417 4419 4421 4423 4425
4427 4429 4431 4433 4435 4437 4439 4441 4443 4445 4447 4449 4451 4453
4455 4457 4459 4461 4463 4465 4467 4469 4471 4473 4475 4477 4479 4481
4483 4485 4487 4489 4491 4493 4495 4497 4504 4506 4513 4515 4517 4598
4600 4602 4604 4614 4616 4618 4620 4622 4624 4626 4632 4634 4636 4638
4640 4645 4647 4649 4651 4653 4655
CONCAT 120 122 124 126 128 138 140 142 144 146 148 150 152 154
159 161 163 165 167 169 171 173 178 180 182 184 186 188
190 192 194 196 198 203 205 207 209 211 213 215 217 219
221 223 225 316 318 320 322 324 335 337 339 341 343 345
348 350 352 354 356 358 360 369 371 373 375 377 379 381
383 385 390 392 394 396 398 400 402 404 406 408 410 412
503 505 507 509 511 522 524 526 528 530 532 535 537 539
541 543 545 547 556 558 560 562 564 566 568 570 572 577
579 581 583 585 587 589 591 593 595 597 599 692 694 696
698 700 710 712 714 716 718 720 722 724 726 731 733 735
737 739 741 743 745 747 752 754 756 758 760 762 764 766
768 770 772 777 779 781 783 785 787 789 791 793 795 797
799 801 903 905 907 909 911 924 926 928 930 932 934 936
942 944 946 948 950 952 954 963 965 967 969 975 977 979
981 983 985 987 993 995 997 999 1001 1003 1005 1007 1009 1015
1017 1019 1021 1023 1025 1027 1128 1130 1132 1134 1136 1148 1150 1152
1154 1156 1158 1160 1162 1164 1169 1171 1173 1175 1177 1179 1181 1183
1188 1190 1192 1197 1199 1201 1203 1205 1207 1209 1211 1216 1218 1220
1222 1224 1226 1228 1230 1235 1237 1239 1252 1254 1256 1258 1260 1262
1264 1266 1271 1273 1275 1277 1279 1281 1286 1288 1290 1292 1294 1296
1395 1397 1399 1401 1403 1414 1416 1421 1423 1425 1434 1436 1438 1440
1442 1447 1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1472 1474 SEQ 0748
1476 1478 1480 1482 1484 1486 1488 1490 1586 1588 1590 1592 1594 1605
1607 1609 1611 1613 1615 1618 1620 1622 1624 1626 1628 1630 1639 1641
1643 1645 1647 1649 1651 1653 1655 1657 1662 1664 1666 1668 1670 1672
1674 1679 1681 1683 1685 1687 1689 1691 1693 1695 1697 1699 1701 1703
1705 1707 1709 1711 1713 1715 1717 1722 1724 1726 1728 1730 1735 1737
1739 1741 1743 1745 1747 1841 1843 1845 1847 1849 1860 1862 1864 1866
1868 1870 1873 1875 1877 1879 1881 1883 1885 1894 1896 1898 1900 1902
1904 1906 1908 1910 1912 1917 1919 1921 1923 1925 1927 1929 1934 1936
1938 1940 1942 1944 1946 1948 1950 1952 1954 1956 1958 1960 1962 1964
1966 1968 1970 1972 1977 1979 1981 1983 1985 1990 1992 1994 1996 1998
2000 2002 2100 2102 2104 2106 2108 2118 2120 2122 2124 2126 2128 2130
2132 2134 2136 2141 2143 2145 2147 2149 2151 2153 2155 2157 2159 2165
2167 2169 2171 2173 2175 2177 2179 2181 2183 2185 2187 2189 2191 2196
2198 2200 2202 2204 2206 2208 2210 2212 2214 2216 2218 2220 2222 2224
2226 2228 2230 2232 2237 2239 2241 2243 2245 2247 2249 2251 2253 2255
2257 2259 2261 2263 2265 2267 2269 2271 2273 2275 2277 2282 2284 2286
2288 2290 2293 2295 2297 2299 2301 2306 2308 2310 2312 2314 2316 2318
2411 2413 2415 2417 2419 2424 2426 2428 2430 2432 2446 2448 2450 2452
2454 2456 2458 2460 2462 2464 2469 2471 2473 2475 2477 2479 2481 2483
2485 2490 2492 2494 2496 2498 2500 2502 2504 2506 2508 2510 2512 2514
2516 2518 2520 2522 2524 2526 2528 2533 2535 2537 2539 2541 2543 2545
2638 2640 2642 2644 2646 2651 2653 2655 2657 2659 2673 2675 2677 2679
2681 2683 2685 2687 2689 2691 2696 2698 2700 2702 2704 2706 2708 2710
2712 2717 2719 2721 2723 2725 2727 2729 2731 2733 2735 2737 2739 2741
2743 2745 2747 2749 2751 2753 2755 2760 2762 2764 2766 2768 2770 2772
2863 2865 2867 2869 2871 2882 2884 2886 2888 2890 2892 2894 2896 2898
2900 2905 2907 2909 2911 2913 2915 2917 2919 2921 2926 2928 2930 2932
2934 2936 2938 2940 2945 2947 2949 2951 2953 2955 2957 2959 2961 2963
2965 2967 2969 2971 2973 2975 2977 2979 2981 2983 2988 2990 2992 2994
2996 2998 3000 3091 3093 3095 3097 3099 3110 3112 3114 3116 3118 3120
3122 3124 3126 3128 3133 3135 3137 3139 3141 3143 3145 3147 3149 3154
3156 3158 3160 3162 3164 3166 3168 3173 3175 3177 3179 3181 3183 3185
3187 3189 3191 3193 3195 3197 3199 3201 3203 3205 3207 3209 3211 3216
3218 3220 3222 3224 3226 3228 3329 3331 3333 3335 3337 3349 3351 3353
3355 3357 3359 3361 3363 3365 3367 3369 3371 3373 3375 3377 3379 3381
3383 3385 3387 3392 3394 3396 3398 3400 3402 3404 3406 3408 3410 3412
3414 3416 3418 3420 3422 3424 3426 3428 3433 3435 3437 3442 3444 3446
3448 3450 3452 3454 3456 3458 3460 3462 3467 3469 3471 3473 3475 3477
3479 3481 3483 3485 3487 3489 3491 3493 3495 3497 3499 3501 3503 3508
3510 3512 3525 3527 3529 3531 3533 3535 3537 3539 3541 3546 3548 3550
3552 3557 3559 3561 3563 3565 3567 3668 3670 3672 3674 3676 3686 3688
3690 3692 3694 3699 3701 3703 3705 3707 3709 3711 3716 3718 3720 3722
3724 3726 3728 3733 3735 3737 3739 3741 3743 3745 3750 3752 3754 3756
3758 3760 3762 3764 3771 3773 3775 3777 3779 3781 3783 3785 3787 3789
3791 3793 3795 3797 3799 3801 3803 3805 3807 3809 3811 3813 3815 3817
3819 3821 3823 3825 3827 3829 3831 3833 3835 3837 3839 3841 3843 3845
3847 3849 3851 3853 3855 3857 3859 3861 3863 3865 3867 3869 3871 3873
3875 3882 3884 3891 3893 3895 3989 3991 3993 3995 3997 4006 4008 4010
4012 4014 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040 4042 4044
4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074 4076 4078
4080 4082 4084 4091 4093 4095 4097 4099 4101 4103 4105 4107 4109 4111
4113 4115 4117 4119 4121 4123 4125 4127 4129 4131 4133 4135 4137 4139
4141 4143 4145 4147 4149 4151 4153 4155 4157 4159 4161 4163 4165 4167 SEQ 0749
4169 4171 4173 4175 4177 4179 4181 4183 4185 4187 4189 4196 4198 4205
4207 4209 4295 4297 4299 4301 4303 4312 4314 4316 4318 4320 4322 4324
4326 4328 4330 4332 4337 4339 4341 4343 4345 4347 4349 4354 4356 4358
4360 4362 4364 4366 4371 4373 4375 4377 4379 4381 4383 4388 4390 4392
4394 4396 4398 4400 4402 4409 4411 4413 4415 4417 4419 4421 4423 4425
4427 4429 4431 4433 4435 4437 4439 4441 4443 4445 4447 4449 4451 4453
4455 4457 4459 4461 4463 4465 4467 4469 4471 4473 4475 4477 4479 4481
4483 4485 4487 4489 4491 4493 4495 4497 4504 4506 4513 4515 4517 4598
4600 4602 4604 4614 4616 4618 4620 4622 4624 4626 4632 4634 4636 4638
4640 4645 4647 4649 4651 4653 4655
DLINK 3775 4093 4322 4411
ELINK 3781 4099 4328 4417 4632
FIELD 120 122 124 126 128 138 140 142 144 146 148 150 152 154
159 161 163 165 167 169 171 173 178 180 182 184 186 188
190 192 194 196 198 203 205 207 209 211 213 215 217 219
221 223 225 316 318 320 322 324 335 337 339 341 343 345
348 350 352 354 356 358 360 369 371 373 375 377 379 381
383 385 390 392 394 396 398 400 402 404 406 408 410 412
503 505 507 509 511 522 524 526 528 530 532 535 537 539
541 543 545 547 556 558 560 562 564 566 568 570 572 577
579 581 583 585 587 589 591 593 595 597 599 692 694 696
698 700 710 712 714 716 718 720 722 724 726 731 733 735
737 739 741 743 745 747 752 754 756 758 760 762 764 766
768 770 772 777 779 781 783 785 787 789 791 793 795 797
799 801 903 905 907 909 911 924 926 928 930 932 934 936
942 944 946 948 950 952 954 963 965 967 969 975 977 979
981 983 985 987 993 995 997 999 1001 1003 1005 1007 1009 1015
1017 1019 1021 1023 1025 1027 1128 1130 1132 1134 1136 1148 1150 1152
1154 1156 1158 1160 1162 1164 1169 1171 1173 1175 1177 1179 1181 1183
1188 1190 1192 1197 1199 1201 1203 1205 1207 1209 1211 1216 1218 1220
1222 1224 1226 1228 1230 1235 1237 1239 1252 1254 1256 1258 1260 1262
1264 1266 1271 1273 1275 1277 1279 1281 1286 1288 1290 1292 1294 1296
1395 1397 1399 1401 1403 1414 1416 1421 1423 1425 1434 1436 1438 1440
1442 1447 1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1472 1474
1476 1478 1480 1482 1484 1486 1488 1490 1586 1588 1590 1592 1594 1605
1607 1609 1611 1613 1615 1618 1620 1622 1624 1626 1628 1630 1639 1641
1643 1645 1647 1649 1651 1653 1655 1657 1662 1664 1666 1668 1670 1672
1674 1679 1681 1683 1685 1687 1689 1691 1693 1695 1697 1699 1701 1703
1705 1707 1709 1711 1713 1715 1717 1722 1724 1726 1728 1730 1735 1737
1739 1741 1743 1745 1747 1841 1843 1845 1847 1849 1860 1862 1864 1866
1868 1870 1873 1875 1877 1879 1881 1883 1885 1894 1896 1898 1900 1902
1904 1906 1908 1910 1912 1917 1919 1921 1923 1925 1927 1929 1934 1936
1938 1940 1942 1944 1946 1948 1950 1952 1954 1956 1958 1960 1962 1964
1966 1968 1970 1972 1977 1979 1981 1983 1985 1990 1992 1994 1996 1998
2000 2002 2100 2102 2104 2106 2108 2118 2120 2122 2124 2126 2128 2130
2132 2134 2136 2141 2143 2145 2147 2149 2151 2153 2155 2157 2159 2165
2167 2169 2171 2173 2175 2177 2179 2181 2183 2185 2187 2189 2191 2196
2198 2200 2202 2204 2206 2208 2210 2212 2214 2216 2218 2220 2222 2224
2226 2228 2230 2232 2237 2239 2241 2243 2245 2247 2249 2251 2253 2255
2257 2259 2261 2263 2265 2267 2269 2271 2273 2275 2277 2282 2284 2286
2288 2290 2293 2295 2297 2299 2301 2306 2308 2310 2312 2314 2316 2318
2411 2413 2415 2417 2419 2424 2426 2428 2430 2432 2446 2448 2450 2452
2454 2456 2458 2460 2462 2464 2469 2471 2473 2475 2477 2479 2481 2483 SEQ 0750
2485 2490 2492 2494 2496 2498 2500 2502 2504 2506 2508 2510 2512 2514
2516 2518 2520 2522 2524 2526 2528 2533 2535 2537 2539 2541 2543 2545
2638 2640 2642 2644 2646 2651 2653 2655 2657 2659 2673 2675 2677 2679
2681 2683 2685 2687 2689 2691 2696 2698 2700 2702 2704 2706 2708 2710
2712 2717 2719 2721 2723 2725 2727 2729 2731 2733 2735 2737 2739 2741
2743 2745 2747 2749 2751 2753 2755 2760 2762 2764 2766 2768 2770 2772
2863 2865 2867 2869 2871 2882 2884 2886 2888 2890 2892 2894 2896 2898
2900 2905 2907 2909 2911 2913 2915 2917 2919 2921 2926 2928 2930 2932
2934 2936 2938 2940 2945 2947 2949 2951 2953 2955 2957 2959 2961 2963
2965 2967 2969 2971 2973 2975 2977 2979 2981 2983 2988 2990 2992 2994
2996 2998 3000 3091 3093 3095 3097 3099 3110 3112 3114 3116 3118 3120
3122 3124 3126 3128 3133 3135 3137 3139 3141 3143 3145 3147 3149 3154
3156 3158 3160 3162 3164 3166 3168 3173 3175 3177 3179 3181 3183 3185
3187 3189 3191 3193 3195 3197 3199 3201 3203 3205 3207 3209 3211 3216
3218 3220 3222 3224 3226 3228 3329 3331 3333 3335 3337 3349 3351 3353
3355 3357 3359 3361 3363 3365 3367 3369 3371 3373 3375 3377 3379 3381
3383 3385 3387 3392 3394 3396 3398 3400 3402 3404 3406 3408 3410 3412
3414 3416 3418 3420 3422 3424 3426 3428 3433 3435 3437 3442 3444 3446
3448 3450 3452 3454 3456 3458 3460 3462 3467 3469 3471 3473 3475 3477
3479 3481 3483 3485 3487 3489 3491 3493 3495 3497 3499 3501 3503 3508
3510 3512 3525 3527 3529 3531 3533 3535 3537 3539 3541 3546 3548 3550
3552 3557 3559 3561 3563 3565 3567 3668 3670 3672 3674 3676 3686 3688
3690 3692 3694 3699 3701 3703 3705 3707 3709 3711 3716 3718 3720 3722
3724 3726 3728 3733 3735 3737 3739 3741 3743 3745 3750 3752 3754 3756
3758 3760 3762 3764 3771 3773 3775 3777 3779 3781 3783 3785 3787 3789
3791 3793 3795 3797 3799 3801 3803 3805 3807 3809 3811 3813 3815 3817
3819 3821 3823 3825 3827 3829 3831 3833 3835 3837 3839 3841 3843 3845
3847 3849 3851 3853 3855 3857 3859 3861 3863 3865 3867 3869 3871 3873
3875 3882 3884 3891 3893 3895 3989 3991 3993 3995 3997 4006 4008 4010
4012 4014 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040 4042 4044
4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074 4076 4078
4080 4082 4084 4091 4093 4095 4097 4099 4101 4103 4105 4107 4109 4111
4113 4115 4117 4119 4121 4123 4125 4127 4129 4131 4133 4135 4137 4139
4141 4143 4145 4147 4149 4151 4153 4155 4157 4159 4161 4163 4165 4167
4169 4171 4173 4175 4177 4179 4181 4183 4185 4187 4189 4196 4198 4205
4207 4209 4295 4297 4299 4301 4303 4312 4314 4316 4318 4320 4322 4324
4326 4328 4330 4332 4337 4339 4341 4343 4345 4347 4349 4354 4356 4358
4360 4362 4364 4366 4371 4373 4375 4377 4379 4381 4383 4388 4390 4392
4394 4396 4398 4400 4402 4409 4411 4413 4415 4417 4419 4421 4423 4425
4427 4429 4431 4433 4435 4437 4439 4441 4443 4445 4447 4449 4451 4453
4455 4457 4459 4461 4463 4465 4467 4469 4471 4473 4475 4477 4479 4481
4483 4485 4487 4489 4491 4493 4495 4497 4504 4506 4513 4515 4517 4598
4600 4602 4604 4614 4616 4618 4620 4622 4624 4626 4632 4634 4636 4638
4640 4645 4647 4649 4651 4653 4655
GO 76 78 83 85 95 105 274 276 281 283 293 303 461 463
468 470 480 490 648 650 655 657 667 677 859 861 866 868
878 888 1084 1086 1091 1093 1103 1113 1351 1353 1358 1360 1370 1380
1544 1546 1551 1553 1563 1573 1799 1801 1806 1808 1818 1828 2056 2058
2063 2065 2075 2085 2369 2371 2376 2378 2388 2398 2596 2598 2603 2605
2615 2625 2821 2823 2828 2830 2840 2850 3049 3051 3056 3058 3068 3078
3285 3287 3292 3294 3304 3314 3620 3622 3627 3629 3639 3649 3941 3943
3948 3950 3960 3970 4252 4254 4259 4261 4271 4281 4557 4559 4564 4566
4576 4586 SEQ 0751
LDXBUF 150 169 381 568 722 743 965 983 1160 1179 1207 1226 1438 1461
1653 1737 1743 1908 1992 1998 2132 2155 2308 2314 2460 2535 2541 2687
2762 2768 2896 2917 2990 2996 3124 3145 3218 3224 3361 3367 3402 3408
3452 3458 3477 3483
LSBWR 3789 4107 4425
LSMOD1 3813 4131 4449
LTXMIT 3833 4151 4465
MDELAY 3787 3797 3819 3823 3827 3831 3839 3845 3853 4105 4115 4137 4141 4145
4149 4157 4163 4171 4423 4433 4455 4459 4463 4471 4477
MFLD 120# 120 122# 122 124# 124 126# 126 128# 128 138# 138 140# 140
142# 142 144# 144 146# 146 148# 148 150# 150 152# 152 154# 154
159# 159 161# 161 163# 163 165# 165 167# 167 169# 169 171# 171
173# 173 178# 178 180# 180 182# 182 184# 184 186# 186 188# 188
190# 190 192# 192 194# 194 196# 196 198# 198 203# 203 205# 205
207# 207 209# 209 211# 211 213# 213 215# 215 217# 217 219# 219
221# 221 223# 223 225# 225 316# 316 318# 318 320# 320 322# 322
324# 324 335# 335 337# 337 339# 339 341# 341 343# 343 345# 345
348# 348 350# 350 352# 352 354# 354 356# 356 358# 358 360# 360
369# 369 371# 371 373# 373 375# 375 377# 377 379# 379 381# 381
383# 383 385# 385 390# 390 392# 392 394# 394 396# 396 398# 398
400# 400 402# 402 404# 404 406# 406 408# 408 410# 410 412# 412
503# 503 505# 505 507# 507 509# 509 511# 511 522# 522 524# 524
526# 526 528# 528 530# 530 532# 532 535# 535 537# 537 539# 539
541# 541 543# 543 545# 545 547# 547 556# 556 558# 558 560# 560
562# 562 564# 564 566# 566 568# 568 570# 570 572# 572 577# 577
579# 579 581# 581 583# 583 585# 585 587# 587 589# 589 591# 591
593# 593 595# 595 597# 597 599# 599 692# 692 694# 694 696# 696
698# 698 700# 700 710# 710 712# 712 714# 714 716# 716 718# 718
720# 720 722# 722 724# 724 726# 726 731# 731 733# 733 735# 735
737# 737 739# 739 741# 741 743# 743 745# 745 747# 747 752# 752
754# 754 756# 756 758# 758 760# 760 762# 762 764# 764 766# 766
768# 768 770# 770 772# 772 777# 777 779# 779 781# 781 783# 783
785# 785 787# 787 789# 789 791# 791 793# 793 795# 795 797# 797
799# 799 801# 801 903# 903 905# 905 907# 907 909# 909 911# 911
924# 924 926# 926 928# 928 930# 930 932# 932 934# 934 936# 936
942# 942 944# 944 946# 946 948# 948 950# 950 952# 952 954# 954
963# 963 965# 965 967# 967 969# 969 975# 975 977# 977 979# 979
981# 981 983# 983 985# 985 987# 987 993# 993 995# 995 997# 997
999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009 1015# 1015
1017# 1017 1019# 1019 1021# 1021 1023# 1023 1025# 1025 1027# 1027 1128# 1128
1130# 1130 1132# 1132 1134# 1134 1136# 1136 1148# 1148 1150# 1150 1152# 1152
1154# 1154 1156# 1156 1158# 1158 1160# 1160 1162# 1162 1164# 1164 1169# 1169
1171# 1171 1173# 1173 1175# 1175 1177# 1177 1179# 1179 1181# 1181 1183# 1183
1188# 1188 1190# 1190 1192# 1192 1197# 1197 1199# 1199 1201# 1201 1203# 1203
1205# 1205 1207# 1207 1209# 1209 1211# 1211 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1235# 1235 1237# 1237
1239# 1239 1252# 1252 1254# 1254 1256# 1256 1258# 1258 1260# 1260 1262# 1262
1264# 1264 1266# 1266 1271# 1271 1273# 1273 1275# 1275 1277# 1277 1279# 1279
1281# 1281 1286# 1286 1288# 1288 1290# 1290 1292# 1292 1294# 1294 1296# 1296
1395# 1395 1397# 1397 1399# 1399 1401# 1401 1403# 1403 1414# 1414 1416# 1416
1421# 1421 1423# 1423 1425# 1425 1434# 1434 1436# 1436 1438# 1438 1440# 1440
1442# 1442 1447# 1447 1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457
1459# 1459 1461# 1461 1463# 1463 1465# 1465 1467# 1467 1472# 1472 1474# 1474 SEQ 0752
1476# 1476 1478# 1478 1480# 1480 1482# 1482 1484# 1484 1486# 1486 1488# 1488
1490# 1490 1586# 1586 1588# 1588 1590# 1590 1592# 1592 1594# 1594 1605# 1605
1607# 1607 1609# 1609 1611# 1611 1613# 1613 1615# 1615 1618# 1618 1620# 1620
1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630 1639# 1639 1641# 1641
1643# 1643 1645# 1645 1647# 1647 1649# 1649 1651# 1651 1653# 1653 1655# 1655
1657# 1657 1662# 1662 1664# 1664 1666# 1666 1668# 1668 1670# 1670 1672# 1672
1674# 1674 1679# 1679 1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689
1691# 1691 1693# 1693 1695# 1695 1697# 1697 1699# 1699 1701# 1701 1703# 1703
1705# 1705 1707# 1707 1709# 1709 1711# 1711 1713# 1713 1715# 1715 1717# 1717
1722# 1722 1724# 1724 1726# 1726 1728# 1728 1730# 1730 1735# 1735 1737# 1737
1739# 1739 1741# 1741 1743# 1743 1745# 1745 1747# 1747 1841# 1841 1843# 1843
1845# 1845 1847# 1847 1849# 1849 1860# 1860 1862# 1862 1864# 1864 1866# 1866
1868# 1868 1870# 1870 1873# 1873 1875# 1875 1877# 1877 1879# 1879 1881# 1881
1883# 1883 1885# 1885 1894# 1894 1896# 1896 1898# 1898 1900# 1900 1902# 1902
1904# 1904 1906# 1906 1908# 1908 1910# 1910 1912# 1912 1917# 1917 1919# 1919
1921# 1921 1923# 1923 1925# 1925 1927# 1927 1929# 1929 1934# 1934 1936# 1936
1938# 1938 1940# 1940 1942# 1942 1944# 1944 1946# 1946 1948# 1948 1950# 1950
1952# 1952 1954# 1954 1956# 1956 1958# 1958 1960# 1960 1962# 1962 1964# 1964
1966# 1966 1968# 1968 1970# 1970 1972# 1972 1977# 1977 1979# 1979 1981# 1981
1983# 1983 1985# 1985 1990# 1990 1992# 1992 1994# 1994 1996# 1996 1998# 1998
2000# 2000 2002# 2002 2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108
2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126 2128# 2128 2130# 2130
2132# 2132 2134# 2134 2136# 2136 2141# 2141 2143# 2143 2145# 2145 2147# 2147
2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159 2165# 2165
2167# 2167 2169# 2169 2171# 2171 2173# 2173 2175# 2175 2177# 2177 2179# 2179
2181# 2181 2183# 2183 2185# 2185 2187# 2187 2189# 2189 2191# 2191 2196# 2196
2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206 2208# 2208 2210# 2210
2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220 2222# 2222 2224# 2224
2226# 2226 2228# 2228 2230# 2230 2232# 2232 2237# 2237 2239# 2239 2241# 2241
2243# 2243 2245# 2245 2247# 2247 2249# 2249 2251# 2251 2253# 2253 2255# 2255
2257# 2257 2259# 2259 2261# 2261 2263# 2263 2265# 2265 2267# 2267 2269# 2269
2271# 2271 2273# 2273 2275# 2275 2277# 2277 2282# 2282 2284# 2284 2286# 2286
2288# 2288 2290# 2290 2293# 2293 2295# 2295 2297# 2297 2299# 2299 2301# 2301
2306# 2306 2308# 2308 2310# 2310 2312# 2312 2314# 2314 2316# 2316 2318# 2318
2411# 2411 2413# 2413 2415# 2415 2417# 2417 2419# 2419 2424# 2424 2426# 2426
2428# 2428 2430# 2430 2432# 2432 2446# 2446 2448# 2448 2450# 2450 2452# 2452
2454# 2454 2456# 2456 2458# 2458 2460# 2460 2462# 2462 2464# 2464 2469# 2469
2471# 2471 2473# 2473 2475# 2475 2477# 2477 2479# 2479 2481# 2481 2483# 2483
2485# 2485 2490# 2490 2492# 2492 2494# 2494 2496# 2496 2498# 2498 2500# 2500
2502# 2502 2504# 2504 2506# 2506 2508# 2508 2510# 2510 2512# 2512 2514# 2514
2516# 2516 2518# 2518 2520# 2520 2522# 2522 2524# 2524 2526# 2526 2528# 2528
2533# 2533 2535# 2535 2537# 2537 2539# 2539 2541# 2541 2543# 2543 2545# 2545
2638# 2638 2640# 2640 2642# 2642 2644# 2644 2646# 2646 2651# 2651 2653# 2653
2655# 2655 2657# 2657 2659# 2659 2673# 2673 2675# 2675 2677# 2677 2679# 2679
2681# 2681 2683# 2683 2685# 2685 2687# 2687 2689# 2689 2691# 2691 2696# 2696
2698# 2698 2700# 2700 2702# 2702 2704# 2704 2706# 2706 2708# 2708 2710# 2710
2712# 2712 2717# 2717 2719# 2719 2721# 2721 2723# 2723 2725# 2725 2727# 2727
2729# 2729 2731# 2731 2733# 2733 2735# 2735 2737# 2737 2739# 2739 2741# 2741
2743# 2743 2745# 2745 2747# 2747 2749# 2749 2751# 2751 2753# 2753 2755# 2755
2760# 2760 2762# 2762 2764# 2764 2766# 2766 2768# 2768 2770# 2770 2772# 2772
2863# 2863 2865# 2865 2867# 2867 2869# 2869 2871# 2871 2882# 2882 2884# 2884
2886# 2886 2888# 2888 2890# 2890 2892# 2892 2894# 2894 2896# 2896 2898# 2898
2900# 2900 2905# 2905 2907# 2907 2909# 2909 2911# 2911 2913# 2913 2915# 2915 SEQ 0753
2917# 2917 2919# 2919 2921# 2921 2926# 2926 2928# 2928 2930# 2930 2932# 2932
2934# 2934 2936# 2936 2938# 2938 2940# 2940 2945# 2945 2947# 2947 2949# 2949
2951# 2951 2953# 2953 2955# 2955 2957# 2957 2959# 2959 2961# 2961 2963# 2963
2965# 2965 2967# 2967 2969# 2969 2971# 2971 2973# 2973 2975# 2975 2977# 2977
2979# 2979 2981# 2981 2983# 2983 2988# 2988 2990# 2990 2992# 2992 2994# 2994
2996# 2996 2998# 2998 3000# 3000 3091# 3091 3093# 3093 3095# 3095 3097# 3097
3099# 3099 3110# 3110 3112# 3112 3114# 3114 3116# 3116 3118# 3118 3120# 3120
3122# 3122 3124# 3124 3126# 3126 3128# 3128 3133# 3133 3135# 3135 3137# 3137
3139# 3139 3141# 3141 3143# 3143 3145# 3145 3147# 3147 3149# 3149 3154# 3154
3156# 3156 3158# 3158 3160# 3160 3162# 3162 3164# 3164 3166# 3166 3168# 3168
3173# 3173 3175# 3175 3177# 3177 3179# 3179 3181# 3181 3183# 3183 3185# 3185
3187# 3187 3189# 3189 3191# 3191 3193# 3193 3195# 3195 3197# 3197 3199# 3199
3201# 3201 3203# 3203 3205# 3205 3207# 3207 3209# 3209 3211# 3211 3216# 3216
3218# 3218 3220# 3220 3222# 3222 3224# 3224 3226# 3226 3228# 3228 3329# 3329
3331# 3331 3333# 3333 3335# 3335 3337# 3337 3349# 3349 3351# 3351 3353# 3353
3355# 3355 3357# 3357 3359# 3359 3361# 3361 3363# 3363 3365# 3365 3367# 3367
3369# 3369 3371# 3371 3373# 3373 3375# 3375 3377# 3377 3379# 3379 3381# 3381
3383# 3383 3385# 3385 3387# 3387 3392# 3392 3394# 3394 3396# 3396 3398# 3398
3400# 3400 3402# 3402 3404# 3404 3406# 3406 3408# 3408 3410# 3410 3412# 3412
3414# 3414 3416# 3416 3418# 3418 3420# 3420 3422# 3422 3424# 3424 3426# 3426
3428# 3428 3433# 3433 3435# 3435 3437# 3437 3442# 3442 3444# 3444 3446# 3446
3448# 3448 3450# 3450 3452# 3452 3454# 3454 3456# 3456 3458# 3458 3460# 3460
3462# 3462 3467# 3467 3469# 3469 3471# 3471 3473# 3473 3475# 3475 3477# 3477
3479# 3479 3481# 3481 3483# 3483 3485# 3485 3487# 3487 3489# 3489 3491# 3491
3493# 3493 3495# 3495 3497# 3497 3499# 3499 3501# 3501 3503# 3503 3508# 3508
3510# 3510 3512# 3512 3525# 3525 3527# 3527 3529# 3529 3531# 3531 3533# 3533
3535# 3535 3537# 3537 3539# 3539 3541# 3541 3546# 3546 3548# 3548 3550# 3550
3552# 3552 3557# 3557 3559# 3559 3561# 3561 3563# 3563 3565# 3565 3567# 3567
3668# 3668 3670# 3670 3672# 3672 3674# 3674 3676# 3676 3686# 3686 3688# 3688
3690# 3690 3692# 3692 3694# 3694 3699# 3699 3701# 3701 3703# 3703 3705# 3705
3707# 3707 3709# 3709 3711# 3711 3716# 3716 3718# 3718 3720# 3720 3722# 3722
3724# 3724 3726# 3726 3728# 3728 3733# 3733 3735# 3735 3737# 3737 3739# 3739
3741# 3741 3743# 3743 3745# 3745 3750# 3750 3752# 3752 3754# 3754 3756# 3756
3758# 3758 3760# 3760 3762# 3762 3764# 3764 3771# 3771 3773# 3773 3775# 3775
3777# 3777 3779# 3779 3781# 3781 3783# 3783 3785# 3785 3787# 3787 3789# 3789
3791# 3791 3793# 3793 3795# 3795 3797# 3797 3799# 3799 3801# 3801 3803# 3803
3805# 3805 3807# 3807 3809# 3809 3811# 3811 3813# 3813 3815# 3815 3817# 3817
3819# 3819 3821# 3821 3823# 3823 3825# 3825 3827# 3827 3829# 3829 3831# 3831
3833# 3833 3835# 3835 3837# 3837 3839# 3839 3841# 3841 3843# 3843 3845# 3845
3847# 3847 3849# 3849 3851# 3851 3853# 3853 3855# 3855 3857# 3857 3859# 3859
3861# 3861 3863# 3863 3865# 3865 3867# 3867 3869# 3869 3871# 3871 3873# 3873
3875# 3875 3882# 3882 3884# 3884 3891# 3891 3893# 3893 3895# 3895 3989# 3989
3991# 3991 3993# 3993 3995# 3995 3997# 3997 4006# 4006 4008# 4008 4010# 4010
4012# 4012 4014# 4014 4019# 4019 4021# 4021 4023# 4023 4025# 4025 4027# 4027
4029# 4029 4031# 4031 4036# 4036 4038# 4038 4040# 4040 4042# 4042 4044# 4044
4046# 4046 4048# 4048 4053# 4053 4055# 4055 4057# 4057 4059# 4059 4061# 4061
4063# 4063 4065# 4065 4070# 4070 4072# 4072 4074# 4074 4076# 4076 4078# 4078
4080# 4080 4082# 4082 4084# 4084 4091# 4091 4093# 4093 4095# 4095 4097# 4097
4099# 4099 4101# 4101 4103# 4103 4105# 4105 4107# 4107 4109# 4109 4111# 4111
4113# 4113 4115# 4115 4117# 4117 4119# 4119 4121# 4121 4123# 4123 4125# 4125
4127# 4127 4129# 4129 4131# 4131 4133# 4133 4135# 4135 4137# 4137 4139# 4139
4141# 4141 4143# 4143 4145# 4145 4147# 4147 4149# 4149 4151# 4151 4153# 4153
4155# 4155 4157# 4157 4159# 4159 4161# 4161 4163# 4163 4165# 4165 4167# 4167 SEQ 0754
4169# 4169 4171# 4171 4173# 4173 4175# 4175 4177# 4177 4179# 4179 4181# 4181
4183# 4183 4185# 4185 4187# 4187 4189# 4189 4196# 4196 4198# 4198 4205# 4205
4207# 4207 4209# 4209 4295# 4295 4297# 4297 4299# 4299 4301# 4301 4303# 4303
4312# 4312 4314# 4314 4316# 4316 4318# 4318 4320# 4320 4322# 4322 4324# 4324
4326# 4326 4328# 4328 4330# 4330 4332# 4332 4337# 4337 4339# 4339 4341# 4341
4343# 4343 4345# 4345 4347# 4347 4349# 4349 4354# 4354 4356# 4356 4358# 4358
4360# 4360 4362# 4362 4364# 4364 4366# 4366 4371# 4371 4373# 4373 4375# 4375
4377# 4377 4379# 4379 4381# 4381 4383# 4383 4388# 4388 4390# 4390 4392# 4392
4394# 4394 4396# 4396 4398# 4398 4400# 4400 4402# 4402 4409# 4409 4411# 4411
4413# 4413 4415# 4415 4417# 4417 4419# 4419 4421# 4421 4423# 4423 4425# 4425
4427# 4427 4429# 4429 4431# 4431 4433# 4433 4435# 4435 4437# 4437 4439# 4439
4441# 4441 4443# 4443 4445# 4445 4447# 4447 4449# 4449 4451# 4451 4453# 4453
4455# 4455 4457# 4457 4459# 4459 4461# 4461 4463# 4463 4465# 4465 4467# 4467
4469# 4469 4471# 4471 4473# 4473 4475# 4475 4477# 4477 4479# 4479 4481# 4481
4483# 4483 4485# 4485 4487# 4487 4489# 4489 4491# 4491 4493# 4493 4495# 4495
4497# 4497 4504# 4504 4506# 4506 4513# 4513 4515# 4515 4517# 4517 4598# 4598
4600# 4600 4602# 4602 4604# 4604 4614# 4614 4616# 4616 4618# 4618 4620# 4620
4622# 4622 4624# 4624 4626# 4626 4632# 4632 4634# 4634 4636# 4636 4638# 4638
4640# 4640 4645# 4645 4647# 4647 4649# 4649 4651# 4651 4653# 4653 4655# 4655
MWORD 120 122 124 126 128 138 140 142 144 146 148 150 152 154
159 161 163 165 167 169 171 173 178 180 182 184 186 188
190 192 194 196 198 203 205 207 209 211 213 215 217 219
221 223 225 316 318 320 322 324 335 337 339 341 343 345
348 350 352 354 356 358 360 369 371 373 375 377 379 381
383 385 390 392 394 396 398 400 402 404 406 408 410 412
503 505 507 509 511 522 524 526 528 530 532 535 537 539
541 543 545 547 556 558 560 562 564 566 568 570 572 577
579 581 583 585 587 589 591 593 595 597 599 692 694 696
698 700 710 712 714 716 718 720 722 724 726 731 733 735
737 739 741 743 745 747 752 754 756 758 760 762 764 766
768 770 772 777 779 781 783 785 787 789 791 793 795 797
799 801 903 905 907 909 911 924 926 928 930 932 934 936
942 944 946 948 950 952 954 963 965 967 969 975 977 979
981 983 985 987 993 995 997 999 1001 1003 1005 1007 1009 1015
1017 1019 1021 1023 1025 1027 1128 1130 1132 1134 1136 1148 1150 1152
1154 1156 1158 1160 1162 1164 1169 1171 1173 1175 1177 1179 1181 1183
1188 1190 1192 1197 1199 1201 1203 1205 1207 1209 1211 1216 1218 1220
1222 1224 1226 1228 1230 1235 1237 1239 1252 1254 1256 1258 1260 1262
1264 1266 1271 1273 1275 1277 1279 1281 1286 1288 1290 1292 1294 1296
1395 1397 1399 1401 1403 1414 1416 1421 1423 1425 1434 1436 1438 1440
1442 1447 1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1472 1474
1476 1478 1480 1482 1484 1486 1488 1490 1586 1588 1590 1592 1594 1605
1607 1609 1611 1613 1615 1618 1620 1622 1624 1626 1628 1630 1639 1641
1643 1645 1647 1649 1651 1653 1655 1657 1662 1664 1666 1668 1670 1672
1674 1679 1681 1683 1685 1687 1689 1691 1693 1695 1697 1699 1701 1703
1705 1707 1709 1711 1713 1715 1717 1722 1724 1726 1728 1730 1735 1737
1739 1741 1743 1745 1747 1841 1843 1845 1847 1849 1860 1862 1864 1866
1868 1870 1873 1875 1877 1879 1881 1883 1885 1894 1896 1898 1900 1902
1904 1906 1908 1910 1912 1917 1919 1921 1923 1925 1927 1929 1934 1936
1938 1940 1942 1944 1946 1948 1950 1952 1954 1956 1958 1960 1962 1964
1966 1968 1970 1972 1977 1979 1981 1983 1985 1990 1992 1994 1996 1998
2000 2002 2100 2102 2104 2106 2108 2118 2120 2122 2124 2126 2128 2130
2132 2134 2136 2141 2143 2145 2147 2149 2151 2153 2155 2157 2159 2165 SEQ 0755
2167 2169 2171 2173 2175 2177 2179 2181 2183 2185 2187 2189 2191 2196
2198 2200 2202 2204 2206 2208 2210 2212 2214 2216 2218 2220 2222 2224
2226 2228 2230 2232 2237 2239 2241 2243 2245 2247 2249 2251 2253 2255
2257 2259 2261 2263 2265 2267 2269 2271 2273 2275 2277 2282 2284 2286
2288 2290 2293 2295 2297 2299 2301 2306 2308 2310 2312 2314 2316 2318
2411 2413 2415 2417 2419 2424 2426 2428 2430 2432 2446 2448 2450 2452
2454 2456 2458 2460 2462 2464 2469 2471 2473 2475 2477 2479 2481 2483
2485 2490 2492 2494 2496 2498 2500 2502 2504 2506 2508 2510 2512 2514
2516 2518 2520 2522 2524 2526 2528 2533 2535 2537 2539 2541 2543 2545
2638 2640 2642 2644 2646 2651 2653 2655 2657 2659 2673 2675 2677 2679
2681 2683 2685 2687 2689 2691 2696 2698 2700 2702 2704 2706 2708 2710
2712 2717 2719 2721 2723 2725 2727 2729 2731 2733 2735 2737 2739 2741
2743 2745 2747 2749 2751 2753 2755 2760 2762 2764 2766 2768 2770 2772
2863 2865 2867 2869 2871 2882 2884 2886 2888 2890 2892 2894 2896 2898
2900 2905 2907 2909 2911 2913 2915 2917 2919 2921 2926 2928 2930 2932
2934 2936 2938 2940 2945 2947 2949 2951 2953 2955 2957 2959 2961 2963
2965 2967 2969 2971 2973 2975 2977 2979 2981 2983 2988 2990 2992 2994
2996 2998 3000 3091 3093 3095 3097 3099 3110 3112 3114 3116 3118 3120
3122 3124 3126 3128 3133 3135 3137 3139 3141 3143 3145 3147 3149 3154
3156 3158 3160 3162 3164 3166 3168 3173 3175 3177 3179 3181 3183 3185
3187 3189 3191 3193 3195 3197 3199 3201 3203 3205 3207 3209 3211 3216
3218 3220 3222 3224 3226 3228 3329 3331 3333 3335 3337 3349 3351 3353
3355 3357 3359 3361 3363 3365 3367 3369 3371 3373 3375 3377 3379 3381
3383 3385 3387 3392 3394 3396 3398 3400 3402 3404 3406 3408 3410 3412
3414 3416 3418 3420 3422 3424 3426 3428 3433 3435 3437 3442 3444 3446
3448 3450 3452 3454 3456 3458 3460 3462 3467 3469 3471 3473 3475 3477
3479 3481 3483 3485 3487 3489 3491 3493 3495 3497 3499 3501 3503 3508
3510 3512 3525 3527 3529 3531 3533 3535 3537 3539 3541 3546 3548 3550
3552 3557 3559 3561 3563 3565 3567 3668 3670 3672 3674 3676 3686 3688
3690 3692 3694 3699 3701 3703 3705 3707 3709 3711 3716 3718 3720 3722
3724 3726 3728 3733 3735 3737 3739 3741 3743 3745 3750 3752 3754 3756
3758 3760 3762 3764 3771 3773 3775 3777 3779 3781 3783 3785 3787 3789
3791 3793 3795 3797 3799 3801 3803 3805 3807 3809 3811 3813 3815 3817
3819 3821 3823 3825 3827 3829 3831 3833 3835 3837 3839 3841 3843 3845
3847 3849 3851 3853 3855 3857 3859 3861 3863 3865 3867 3869 3871 3873
3875 3882 3884 3891 3893 3895 3989 3991 3993 3995 3997 4006 4008 4010
4012 4014 4019 4021 4023 4025 4027 4029 4031 4036 4038 4040 4042 4044
4046 4048 4053 4055 4057 4059 4061 4063 4065 4070 4072 4074 4076 4078
4080 4082 4084 4091 4093 4095 4097 4099 4101 4103 4105 4107 4109 4111
4113 4115 4117 4119 4121 4123 4125 4127 4129 4131 4133 4135 4137 4139
4141 4143 4145 4147 4149 4151 4153 4155 4157 4159 4161 4163 4165 4167
4169 4171 4173 4175 4177 4179 4181 4183 4185 4187 4189 4196 4198 4205
4207 4209 4295 4297 4299 4301 4303 4312 4314 4316 4318 4320 4322 4324
4326 4328 4330 4332 4337 4339 4341 4343 4345 4347 4349 4354 4356 4358
4360 4362 4364 4366 4371 4373 4375 4377 4379 4381 4383 4388 4390 4392
4394 4396 4398 4400 4402 4409 4411 4413 4415 4417 4419 4421 4423 4425
4427 4429 4431 4433 4435 4437 4439 4441 4443 4445 4447 4449 4451 4453
4455 4457 4459 4461 4463 4465 4467 4469 4471 4473 4475 4477 4479 4481
4483 4485 4487 4489 4491 4493 4495 4497 4504 4506 4513 4515 4517 4598
4600 4602 4604 4614 4616 4618 4620 4622 4624 4626 4632 4634 4636 4638
4640 4645 4647 4649 4651 4653 4655
PNTMSG 108 109 110 111 112 306 307 308 493 494 495 680 681 682
683 684 891 892 893 894 895 1116 1117 1118 1119 1120 1383 1384 SEQ 0756
1385 1386 1387 1576 1577 1578 1831 1832 1833 2088 2089 2090 2091 2092
2401 2402 2403 2628 2629 2630 2853 2854 2855 3081 3082 3083 3317 3318
3319 3320 3321 3652 3654 3656 3658 3660 3973 3975 3977 3979 3981 4284
4285 4286 4287 4288 4589 4590
RDBUFF 192 217 404 591 766 793 1003 1019 1288 1482 1693 1701 1709 1948
1956 1964 2210 2218 2226 2251 2259 2269 2504 2512 2520 2731 2739 2747
2959 2967 2975 3187 3195 3203 3559
RDLS 3861 4179 4485
RDNADR 3688 4008 4314 4622 4638
RDRSTA 3855 4173 4479
RSXSTA 3825 3829 4143 4147 4461
RTN 79 96 106 277 294 304 464 481 491 651 668 678 862 879
889 1087 1104 1114 1354 1371 1381 1547 1564 1574 1802 1819 1829 2059
2076 2086 2372 2389 2399 2599 2616 2626 2824 2841 2851 3052 3069 3079
3288 3305 3315 3623 3640 3650 3944 3961 3971 4255 4272 4282 4560 4577
4587
SCOPER 89 287 474 661 872 1097 1364 1557 1812 2069 2382 2609 2834 3062
3298 3633 3954 4265 4570
SELBUF 140 159 184 209 371 396 558 583 712 731 758 783 926 942
1150 1169 1197 1216 1641 1683 1896 1938 2120 2141 2200 2241 2448 2494
2675 2721 2884 2905 2949 3112 3133 3177 3351 3392 3442 3467
SETMOD 1662 1917 2165 2179 2469 2696 2926 3154 3373 3414 3489 4616
SUBTAB 234 236 238 421 423 425 608 610 612 810 812 814 1036 1038
1040 1306 1308 1310 1499 1501 1503 1756 1758 1760 2011 2013 2015 2327
2329 2331 2554 2556 2558 2781 2783 2785 3009 3011 3013 3237 3239 3241
3576 3578 3580 3903 3905 4217 4219 4525 4527 4663 4665
TMSGC 108 109 110 111 112 306 307 308 493 494 495 680 681 682
683 684 891 892 893 894 895 1116 1117 1118 1119 1120 1383 1384
1385 1386 1387 1576 1577 1578 1831 1832 1833 2088 2089 2090 2091 2092
2401 2402 2403 2628 2629 2630 2853 2854 2855 3081 3082 3083 3317 3318
3319 3320 3321 3652 3653 3655 3657 3659 3973 3974 3976 3978 3980 4284
4285 4286 4287 4288 4589 4590
TXMIT 1668 1923 2171 2185 2475 2702 2932 3160 3379 3420 3495
WRLS 3699 3703 3707 3716 3720 3724 3733 3737 3741 3750 3754 3758 4019 4023
4027 4036 4040 4044 4053 4057 4061 4070 4074 4078 4337 4341 4345 4354
4358 4362 4371 4375 4379 4388 4392 4396
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 1
DFCIA4 MAC 6-Jun-83 09:58 Test Module DFCIA4.MAC SEQ 0757
1 SUBTTL Test Module DFCIA4.MAC
2
3 SALL
4
5 SEARCH DFCIA,MONSYM
6
7 ; Tests/Microcode 33-40
8
9 ENTRY TST33,TST34,TST35,TST36,TST37,TST40
10 ENTRY T33M,T34M,T35M,T36M,T37M,T40M
11
12 ; EXTERN's located in DFCIA1.MAC
13
14 EXTERN TLOAD,MVPNT,TFLOAD,RDNODE,TIDLE,TPCB,SETENA,TSTEND
15 EXTERN UDEBUG,BUFF,CSRPNT,TRACE,TSTSUB,TLOAD,PCB,TSTREP
16 EXTERN TEXEC,TTPNT,TCMD,TRESPC,TFMFLG,TRSFLG,TSTATC,TSTATA
17 EXTERN TPTFLG,TXCTID,TDPORT,TBYTE,TWORD,TPAT,TREGN,TREGD
18 EXTERN CONPNT,CPORT,CTABLE,CTYPE,CVALID,SREPOR
19 EXTERN CHKRSP,RWAIT,BPACK,INSQUE,PACKET,RSPONS,QFDG10,QFDG7
20
21 ; EXTERN's located in DFCIA2.MAC
22
23 EXTERN MSTART,MWAIT,MPRINT,MEXIT,MRESET,MRESTA
24 EXTERN SAVCSR,SAVLAR,SAVEBU,SAVCOD
25
26 ; EXTERN's located in DFCIAI.MAC (Port Handling Routines)
27
28 EXTERN LDEBUF,LDRAR,LDCRAM,LDCSR,RDEBUF,RDLAR,RDCRAM,RDCSR
29 EXTERN ERESET,IPACLR,.DATAI,.DATAO,CHINIT,RUNTME,DEBTIM
30
31 ; EXTERN's located in DFCIAU.MAC (Utility Routines)
32
33 EXTERN BUFGEN,SCOSW,PATPNT
34
35 ;#********************************************************************
36 ; Z4 - Address for use in DDT
37 ;#********************************************************************
38
39 000000' Z4: ; address of 00000'
40
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 2
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0758
41 SUBTTL Transmit Tests
42
43 ;#********************************************************************
44 ;* TEST 33 - 'Transmit Status'
45 ;
46 ; Description: This test verifies the transmit status bits which
47 ; are statiscized on the PILA module, but originate
48 ; on the LINK module.
49 ;
50 ; Procedure: KL> Load microcode
51 ; KL> Port Clear
52 ; KL> Start port
53 ;
54 ; UC> Verify that transmit status bits are 0xx01001
55 ; initially (CDA and CDB indeterminate).
56 ; UC> Verify that if CDA or CDB is set, they will
57 ; clear at some point (some other node on the
58 ; CI is transmitting).
59 ; UC> Set link controls to disable 'Force Arb'.
60 ; Start a transmit, verify that 'ARB Done' sets
61 ; shortly afterwards.
62 ; UC> Set link controls to enable 'Force Arb'.
63 ; Start a transmit, verify that 'ARB Done' sets
64 ; shortly afterwards.
65 ; UC> Start a transmit, verify that 'XMTR Busy' sets
66 ; shortly afterwards.
67 ; UC> Start a transmit, then give 'ABORT Transmission'
68 ; command. Verify that 'XMTR Attn' condition code
69 ; sets, and 'Transmission Aborted' transmit status
70 ; bit also sets.
71 ; UC> Start a transmit, then give 'Reset Transmit Status'
72 ; command. Verify that transmit status clears.
73 ; UC> Start a transmit and wait for it to complete. Then
74 ; give 'Reset Transmit Status' command. Verify that
75 ; transmit status clears.
76 ; If failed - exit test with error code in EBUF
77 ; Code 1 - Transmit status not 0XX01001 initially.
78 ; Code 2 - 'CDB' or 'CDA' never cleared.
79 ; Code 3 - 'ARB Done' not set after transmit initiated.
80 ; Code 4 - 'ARB Done' not set after transmit initiated ('Force
81 ; Arbitration' link control set).
82 ; Code 5 - 'XMTR Busy' not set after transmit initiated.
83 ; Code 6 - 'Transmission Aborted' set by 'ABORT Transmission'
84 ; command.
85 ; Code 7 - 'Reset Transmit Status' did not clear transmit
86 ; status (Transmit not completed).
87 ; Code 10 - 'Reset Transmit Status' did not clear transmit
88 ; status.
89 ;
90 ; KL> Read EBUF and determine test disposition
91 ;
92 ; FRU: Link Module
93 ;#********************************************************************
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 3
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0759
94
95 ; Initialization
96
97 000000' 201 00 0 00 000000' TST33: MOVEI Z4 ; get address of module start
98 000001' 260 17 0 00 000000* GO TRACE ; handle trace output
99 000002' 201 01 0 00 000034' MOVEI 1,T33M ; set up microcode address
100 000003' 260 17 0 00 000000* GO TLOAD ; load/verify it
101 000004' 263 17 0 00 000000 RTN ; failed - exit test
102
103 ; Do the test
104
105 000005' 260 17 0 00 000000* GO MSTART ; start the test at 5777
106 000006' 201 01 0 00 000062 MOVEI 1,^D50 ; set up wait of 50 ms
107 000007' 260 17 0 00 000000* GO MWAIT ; wait for completion
108
109 ; Handle error printouts
110
111 000010' 027 00 0 00 000015' SCOPER MA33 ; print error message
112 000011' 255 00 0 00 000000 JFCL ; loop on error
113 000012' 254 00 0 00 000013' JRST TX33 ; altmode exit
114
115 ; End of test
116
117 000013' 260 17 0 00 000000* TX33: GO TSTEND ; handle end of test processing
118 000014' 263 17 0 00 000000 RTN ; return
119
120 ; Error messages
121
122 000015' 240000 000017' MA33: CALL!TXNOT!MA33PN
123 000016' 170000 003046' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
124
125 000017' 201 01 0 00 000023' MA33PN: MOVEI 1,MA33LS ; get list address
126 000020' 201 02 0 00 000011 MOVEI 2,9 ; get list length
127 000021' 260 17 0 00 000000* GO MPRINT ; print data
128 000022' 263 17 0 00 000000 RTN ; return
129
130 000023' 037 00 0 00 003052' MA33LS: TMSGC <No failure detected>
131 000024' 037 00 0 00 003057' TMSGC <Transmit status not 0xx01001 initially.>
132 000025' 037 00 0 00 003070' TMSGC <'CDB' or 'CDA' never cleared.>
133 000026' 037 00 0 00 003077' TMSGC <'ARB Done' not set after transmit initiated.>
134 TMSGC <'ARB Done' not set after transmit initiated ('Force
135 000027' 037 00 0 00 003111' Arbitration' link control set).>
136 000030' 037 00 0 00 003133' TMSGC <'XMTR Busy' not set after transmit initiated.>
137 000031' 037 00 0 00 003145' TMSGC <''Transmission Aborted' set by 'ABORT Transmission' command.>
138 TMSGC <'Reset Transmit Status' did not clear transmit status
139 000032' 037 00 0 00 003162' (Transmit not completed).>
140 000033' 037 00 0 00 003203' TMSGC <'Reset Transmit Status' did not clear transmit status.>
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 4
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0760
141
142 ;#********************************************************************
143 ; Microcode:
144 ;#********************************************************************
145
146 ; Initialization
147
148 000034' 577700 000000 T33M: MWORD <ADDR=5777,JZ> ; 5777
149 000035' 000000 000000
150 000036' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
151 000037' 000000 000020
152 000040' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
153 000041' 342006 000300
154 000042' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
155 000043' 307006 000620
156 000044' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
157 000045' 302006 000440
158
159 ; R14 - 8 bit mask (377)
160 ; R10 - Contains the transmit status read
161 ; R15 - Actual data (right justified) (R10 without bits 5,6 set)
162 ; R16 - Correct data (right justified)
163 ; R17 - Completion code (right justified)
164
165 ; Set up transmit buffer
166
167 000046' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001,S0A,OR,A=16,B=2,D=2>
168 000047' 432161 000040
169 000050' 100100 000002 SELBUF (2) ; 1001-04
170 000051' 732000 240340
171 000052' 100200 002040
172 000053' 431000 002340
173 000054' 100300 000174
174 000055' 000000 001340
175 000056' 100400 000000
176 000057' 001000 000340
177 000060' 100525 000000 MWORD <CJS,J=2500> ; 1005
178 000061' 000000 000020
179
180 ; Call each segment
181
182 000062' 100611 000001 MWORD <CJS,J=1100,SD0,OR,B=17,D=2,SKCN,MGC=1> ; 1006
183 000063' 732007 640020
184 000064' 100712 000002 MWORD <CJS,J=1200,SD0,OR,B=17,D=2,SKCN,MGC=2> ; 1007
185 000065' 732007 640020
186 000066' 101013 000003 MWORD <CJS,J=1300,SD0,OR,B=17,D=2,SKCN,MGC=3> ; 1010
187 000067' 732007 640020
188 000070' 101114 000004 MWORD <CJS,J=1400,SD0,OR,B=17,D=2,SKCN,MGC=4> ; 1011
189 000071' 732007 640020
190 000072' 101215 000005 MWORD <CJS,J=1500,SD0,OR,B=17,D=2,SKCN,MGC=5> ; 1012
191 000073' 732007 640020
192 000074' 101316 000006 MWORD <CJS,J=1600,SD0,OR,B=17,D=2,SKCN,MGC=6> ; 1013
193 000075' 732007 640020
194 000076' 101417 000007 MWORD <CJS,J=1700,SD0,OR,B=17,D=2,SKCN,MGC=7> ; 1014
195 000077' 732007 640020
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 4-1
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0761
196 000100' 101520 000010 MWORD <CJS,J=2000,SD0,OR,B=17,D=2,SKCN,MGC=10>; 1015
197 000101' 732007 640020
198 000102' 101650 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1016
199 000103' 442007 400040
200
201 ; (A) Verify that transmit status bits are 0xx01001 initially
202 ; (CDA and CDB indeterminate).
203
204 000104' 110000 000000 MWORD <ADDR=1100,CONT> ; 1100
205 000105' 000000 000340
206 000106' 110100 000232 RDXSTA ; 1101-02
207 000107' 342006 401340
208 000110' 110200 000300
209 000111' 732006 402340
210 000112' 110300 000000 MWORD <CONT,S0A,OR,A=15,B=10,D=2> ; 1103
211 000113' 432154 000340
212 000114' 110400 000237 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=237,D=2>;1104
213 000115' 542147 240340
214 000116' 110500 000000 MWORD <CONT,SAB,AND,A=16,B=15,D=2> ; 1105
215 000117' 142166 400340
216 000120' 110600 000011 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=11,D=2>; 1106
217 000121' 542147 240340
218 000122' 110711 110000 MWORD <CJP,J=1111,SAB,XOR,A=15,B=16,D=1,CENA,CCFZ>
219 000123' 161557 020060
220 000124' 111050 000000 MWORD <JMAP,J=5000> ; 1110
221 000125' 000000 000040
222 000126' 111100 000000 MWORD <CRTN> ; 1111
223 000127' 000000 000240
224
225 ; (B) Verify that if CDA or CDB is set, they will clear at
226 ; some point (some other node on the CI is transmitting).
227
228 000130' 120010 000000 MWORD <ADDR=1200,LDCT,J=1000,D=1> ; 1200
229 000131' 001000 000300
230 000132' 120100 000232 RDXSTA ; 1201-02
231 000133' 342006 401340
232 000134' 120200 000300
233 000135' 732006 402340
234 000136' 120300 000100 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=100,D=2>;1203
235 000137' 542147 240340
236 000140' 120412 070000 MWORD <CJP,J=1207,SAB,A=15,B=16,AND,D=1,CENA,CCFZ>
237 000141' 141557 020060
238 000142' 120512 010000 MWORD <RPCT,J=1201> ; 1205
239 000143' 000000 000220
240 000144' 120650 000000 MWORD <JMAP,J=5000> ; 1206
241 000145' 000000 000040
242 000146' 120710 000000 MWORD <LDCT,J=1000,D=1> ; 1207
243 000147' 001000 000300
244 000150' 121000 000232 RDXSTA ; 1210-11
245 000151' 342006 401340
246 000152' 121100 000300
247 000153' 732006 402340
248 000154' 121200 000040 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=40,D=2>; 1212
249 000155' 542147 240340
250 000156' 121312 160000 MWORD <CJP,J=1216,SAB,A=15,B=16,AND,D=1,CENA,CCFZ>
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 4-2
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0762
251 000157' 141557 020060
252 000160' 121412 100000 MWORD <RPCT,J=1210> ; 1214
253 000161' 000000 000220
254 000162' 121550 000000 MWORD <JMAP,J=5000> ; 1215
255 000163' 000000 000040
256 000164' 121600 000000 MWORD <CRTN> ; 1216
257 000165' 000000 000240
258
259 ; (C) Set link controls to disable 'Force Arb'. Start a transmit,
260 ; verify that 'ARB Done' sets shortly afterwards.
261
262 000166' 130000 000000 MWORD <ADDR=1300,CONT> ; 1300
263 000167' 000000 000340
264 000170' 130100 000240 SETMOD (240) ; 1301-03
265 000171' 732000 240340
266 000172' 130200 002040
267 000173' 431000 002340
268 000174' 130300 000274
269 000175' 000000 001340
270 000176' 130400 000377 DLINK (377) ; 1304-06
271 000177' 732000 240340
272 000200' 130500 002040
273 000201' 431000 002340
274 000202' 130600 000354
275 000203' 000000 001340
276 000204' 130700 000351 ELINK (351) ; 1307-11
277 000205' 732000 240340
278 000206' 131000 002040
279 000207' 431000 002340
280 000210' 131100 000154
281 000211' 000000 001340
282 000212' 131200 000000 TXMIT (0) ; 1312-14
283 000213' 732000 240340
284 000214' 131300 002040
285 000215' 431000 002340
286 000216' 131400 000314
287 000217' 000000 001340
288 000220' 131500 030000 MWORD <LDCT,J=3> ; 1315
289 000221' 000000 000300
290 000222' 131613 160000 MWORD <RPCT,J=1316> ; 1316
291 000223' 000000 000220
292 000224' 131710 000000 MWORD <LDCT,J=1000> ; 1317
293 000225' 000000 000300
294 000226' 132000 000232 RDXSTA ; 1320-21
295 000227' 342006 401340
296 000230' 132100 000300
297 000231' 732006 402340
298 000232' 132200 000010 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=10,D=2>; 1322
299 000233' 542147 240340
300 000234' 132313 250000 MWORD <CJP,J=1325,SAB,AND,A=16,B=15,D=2,CENA,CCFZ>
301 000235' 142566 420060
302 000236' 132400 000000 MWORD <CRTN> ; 1324
303 000237' 000000 000240
304 000240' 132513 200000 MWORD <RPCT,J=1320> ; 1325
305 000241' 000000 000220
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 4-3
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0763
306 000242' 132650 000000 MWORD <JMAP,J=5000> ; 1326
307 000243' 000000 000040
308
309 ; (D) Set link controls to enable 'Force Arb'. Start a transmit,
310 ; verify that 'ARB Done' sets shortly afterwards.
311
312 000244' 140000 000000 MWORD <ADDR=1400,CONT> ; 1400
313 000245' 000000 000340
314 000246' 140100 000240 SETMOD (240) ; 1401-03
315 000247' 732000 240340
316 000250' 140200 002040
317 000251' 431000 002340
318 000252' 140300 000274
319 000253' 000000 001340
320 000254' 140400 000377 DLINK (377) ; 1404-06
321 000255' 732000 240340
322 000256' 140500 002040
323 000257' 431000 002340
324 000260' 140600 000354
325 000261' 000000 001340
326 000262' 140700 000355 ELINK (355) ; 1407-11
327 000263' 732000 240340
328 000264' 141000 002040
329 000265' 431000 002340
330 000266' 141100 000154
331 000267' 000000 001340
332 000270' 141200 000000 TXMIT (0) ; 1412-14
333 000271' 732000 240340
334 000272' 141300 002040
335 000273' 431000 002340
336 000274' 141400 000314
337 000275' 000000 001340
338 000276' 141500 030000 MWORD <LDCT,J=3> ; 1415
339 000277' 000000 000300
340 000300' 141614 160000 MWORD <RPCT,J=1416> ; 1416
341 000301' 000000 000220
342 000302' 141701 000000 MWORD <LDCT,J=100> ; 1417
343 000303' 000000 000300
344 000304' 142000 000232 RDXSTA ; 1420-21
345 000305' 342006 401340
346 000306' 142100 000300
347 000307' 732006 402340
348 000310' 142200 000010 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=10,D=2>; 1422
349 000311' 542147 240340
350 000312' 142314 250000 MWORD <CJP,J=1425,SAB,AND,A=16,B=15,D=2,CENA,CCFZ>
351 000313' 142566 420060
352 000314' 142400 000000 MWORD <CRTN> ; 1424
353 000315' 000000 000240
354 000316' 142514 200000 MWORD <RPCT,J=1420> ; 1425
355 000317' 000000 000220
356 000320' 142650 000000 MWORD <JMAP,J=5000> ; 1426
357 000321' 000000 000040
358
359 ; (E) Start a transmit, verify that 'XMTR Busy' sets shortly afterwards.
360
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 4-4
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0764
361 000322' 150000 000000 MWORD <ADDR=1500,CONT> ; 1500
362 000323' 000000 000340
363 000324' 150100 000240 SETMOD (240) ; 1501-03
364 000325' 732000 240340
365 000326' 150200 002040
366 000327' 431000 002340
367 000330' 150300 000274
368 000331' 000000 001340
369 000332' 150400 000377 DLINK (377) ; 1504-06
370 000333' 732000 240340
371 000334' 150500 002040
372 000335' 431000 002340
373 000336' 150600 000354
374 000337' 000000 001340
375 000340' 150700 000355 ELINK (355) ; 1507-11
376 000341' 732000 240340
377 000342' 151000 002040
378 000343' 431000 002340
379 000344' 151100 000154
380 000345' 000000 001340
381 000346' 151200 000000 TXMIT (0) ; 1512-14
382 000347' 732000 240340
383 000350' 151300 002040
384 000351' 431000 002340
385 000352' 151400 000314
386 000353' 000000 001340
387 000354' 151500 030000 MWORD <LDCT,J=3> ; 1515
388 000355' 000000 000300
389 000356' 151615 160000 MWORD <RPCT,J=1516> ; 1516
390 000357' 000000 000220
391 000360' 151701 000000 MWORD <LDCT,J=100> ; 1517
392 000361' 000000 000300
393 000362' 152000 000232 RDXSTA ; 1520-21
394 000363' 342006 401340
395 000364' 152100 000300
396 000365' 732006 402340
397 000366' 152200 000001 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=1,D=2> ; 1522
398 000367' 542147 240340
399 000370' 152315 250000 MWORD <CJP,J=1525,SAB,AND,A=16,B=15,D=2,CENA,CCFZ>
400 000371' 142566 420060
401 000372' 152400 000000 MWORD <CRTN> ; 1524
402 000373' 000000 000240
403 000374' 152515 200000 MWORD <RPCT,J=1520> ; 1525
404 000375' 000000 000220
405 000376' 152650 000000 MWORD <JMAP,J=5000> ; 1526
406 000377' 000000 000040
407
408 ; (F) Start a transmit, then give 'ABORT Transmission' command.
409 ; Verify that 'XMTR Attn' condition code sets, and 'Transmission
410 ; Aborted' transmit status bit also sets.
411
412 000400' 160000 000000 MWORD <ADDR=1600,CONT> ; 1600
413 000401' 000000 000340
414 000402' 160100 000240 SETMOD (240) ; 1601-03
415 000403' 732000 240340
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 4-5
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0765
416 000404' 160200 002040
417 000405' 431000 002340
418 000406' 160300 000274
419 000407' 000000 001340
420 000410' 160400 000377 DLINK (377) ; 1604-06
421 000411' 732000 240340
422 000412' 160500 002040
423 000413' 431000 002340
424 000414' 160600 000354
425 000415' 000000 001340
426 000416' 160700 000355 ELINK (355) ; 1607-11
427 000417' 732000 240340
428 000420' 161000 002040
429 000421' 431000 002340
430 000422' 161100 000154
431 000423' 000000 001340
432 000424' 161200 000000 TXMIT (0) ; 1612-14
433 000425' 732000 240340
434 000426' 161300 002040
435 000427' 431000 002340
436 000430' 161400 000314
437 000431' 000000 001340
438 000432' 161500 030000 MWORD <LDCT,J=3> ; 1615
439 000433' 000000 000300
440 000434' 161616 160000 MWORD <RPCT,J=1616> ; 1616
441 000435' 000000 000220
442 000436' 161700 000250 ABOXMT ; 1617
443 000437' 000000 001340
444 000440' 162000 400000 MWORD <LDCT,J=40> ; 1620
445 000441' 000000 000300
446 000442' 162116 210000 MWORD <RPCT,J=1621> ; 1621
447 000443' 000000 000220
448 000444' 162216 240000 MWORD <CJP,J=1624,D=1,CENA,CCXA> ; 1622
449 000445' 001400 070060
450 000446' 162350 000000 MWORD <JMAP,J=5000> ; 1623
451 000447' 000000 000040
452 000450' 162400 000232 RDXSTA ; 1624-25
453 000451' 342006 401340
454 000452' 162500 000300
455 000453' 732006 402340
456 000454' 162600 000020 MWORD <CONT,SDA,AND,A=15,B=16,MGC=20,D=2> ; 1626
457 000455' 542157 000340
458 000456' 162750 000000 MWORD <CJP,J=5000,S0A,OR,A=16,D=2,CENA,CCFZ> ; 1627
459 000457' 432560 020060
460 000460' 163000 000000 MWORD <CRTN> ; 1630
461 000461' 000000 000240
462
463 ; (G) Start a transmit, then give 'Reset Transmit Status' command.
464 ; Verify that transmit status clears.
465
466 000462' 170000 000000 MWORD <ADDR=1700,CONT> ; 1700
467 000463' 000000 000340
468 000464' 170100 000240 SETMOD (240) ; 1701-03
469 000465' 732000 240340
470 000466' 170200 002040
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 4-6
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0766
471 000467' 431000 002340
472 000470' 170300 000274
473 000471' 000000 001340
474 000472' 170400 000377 DLINK (377) ; 1704-06
475 000473' 732000 240340
476 000474' 170500 002040
477 000475' 431000 002340
478 000476' 170600 000354
479 000477' 000000 001340
480 000500' 170700 000355 ELINK (355) ; 1707-11
481 000501' 732000 240340
482 000502' 171000 002040
483 000503' 431000 002340
484 000504' 171100 000154
485 000505' 000000 001340
486 000506' 171200 000000 TXMIT (0) ; 1712-14
487 000507' 732000 240340
488 000510' 171300 002040
489 000511' 431000 002340
490 000512' 171400 000314
491 000513' 000000 001340
492 000514' 171500 030000 MWORD <LDCT,J=3> ; 1715
493 000515' 000000 000300
494 000516' 171617 160000 MWORD <RPCT,J=1716> ; 1716
495 000517' 000000 000220
496 000520' 171700 000050 RSXSTA ; 1717
497 000521' 000000 001340
498 000522' 172000 200000 MWORD <LDCT,J=20> ; 1720
499 000523' 000000 000300
500 000524' 172117 210000 MWORD <RPCT,J=1721> ; 1721
501 000525' 000000 000220
502 000526' 172200 000232 RDXSTA ; 1722-23
503 000527' 342006 401340
504 000530' 172300 000300
505 000531' 732006 402340
506 000532' 172400 000226 MWORD <CONT,SDA,AND,A=15,B=16,SKCN,MGC=226,D=2>
507 000533' 542157 240340
508 000534' 172517 270000 MWORD <CJP,J=1727,S0A,OR,A=16,D=2,CENA,CCFZ> ; 1725
509 000535' 432560 020060
510 000536' 172650 000000 MWORD <JMAP,J=5000> ; 1726
511 000537' 000000 000040
512 000540' 172700 000000 MWORD <CRTN> ; 1727
513 000541' 000000 000240
514
515 ; (H) Start a transmit and wait for it to complete. Then give 'Reset
516 ; Transmit Status' command. Verify that transmit status clears.
517
518 000542' 200000 000000 MWORD <ADDR=2000,CONT> ; 2000
519 000543' 000000 000340
520 000544' 200100 000240 SETMOD (240) ; 2001-03
521 000545' 732000 240340
522 000546' 200200 002040
523 000547' 431000 002340
524 000550' 200300 000274
525 000551' 000000 001340
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 4-7
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0767
526 000552' 200400 000377 DLINK (377) ; 2004-06
527 000553' 732000 240340
528 000554' 200500 002040
529 000555' 431000 002340
530 000556' 200600 000354
531 000557' 000000 001340
532 000560' 200700 000355 ELINK (355) ; 2007-11
533 000561' 732000 240340
534 000562' 201000 002040
535 000563' 431000 002340
536 000564' 201100 000154
537 000565' 000000 001340
538 000566' 201200 000000 TXMIT (0) ; 2012-14
539 000567' 732000 240340
540 000570' 201300 002040
541 000571' 431000 002340
542 000572' 201400 000314
543 000573' 000000 001340
544 000574' 201500 200000 MWORD <LDCT,J=20> ; 2015
545 000575' 000000 000300
546 000576' 201620 160000 MWORD <RPCT,J=2016> ; 2016
547 000577' 000000 000220
548 000600' 201720 210000 MWORD <CJP,J=2021,CENA,CCXA> ; 2017
549 000601' 000400 070060
550 000602' 202020 170000 MWORD <JMAP,J=2017> ; 2020
551 000603' 000000 000040
552 000604' 202100 000050 RSXSTA ; 2021
553 000605' 000000 001340
554 000606' 202200 200000 MWORD <LDCT,J=20> ; 2022
555 000607' 000000 000300
556 000610' 202320 230000 MWORD <RPCT,J=2023> ; 2023
557 000611' 000000 000220
558 000612' 202400 000232 RDXSTA ; 2024-25
559 000613' 342006 401340
560 000614' 202500 000300
561 000615' 732006 402340
562 000616' 202600 000226 MWORD <CONT,SDA,AND,A=15,B=16,SKCN,MGC=226,D=2>
563 000617' 542157 240340
564 000620' 202720 310000 MWORD <CJP,J=2031,S0A,OR,A=16,D=2,CENA,CCFZ> ; 2027
565 000621' 432560 020060
566 000622' 203050 000000 MWORD <JMAP,J=5000> ; 2030
567 000623' 000000 000040
568 000624' 203100 000000 MWORD <CRTN> ; 2031
569 000625' 000000 000240
570
571 ;#********************************************************************
572 ; Subroutine to initialize the contents of a buffer
573 ;#********************************************************************
574
575 000626' 250000 000004 MWORD <ADDR=2500,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2500
576 000627' 732000 240340
577 000630' 250100 002040 LDXBUF ; 2501-02
578 000631' 431000 002340
579 000632' 250200 000214
580 000633' 000000 001340
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 4-8
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0768
581 000634' 250300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2503
582 000635' 732000 240340
583 000636' 250400 002040 LDXBUF ; 2504-05
584 000637' 431000 002340
585 000640' 250500 000214
586 000641' 000000 001340
587 000642' 250603 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2506
588 000643' 342000 000300
589 000644' 250700 002040 LDXBUF ; 2507-10
590 000645' 431000 002340
591 000646' 251000 000214
592 000647' 000000 001340
593 000650' 251100 000010 MWORD <CONT,SDA,AND,A=14,D=2,RDLM,MGC=10> ; 2511
594 000651' 542140 220340
595 000652' 251200 002040 LDXBUF ; 2512-13
596 000653' 431000 002340
597 000654' 251300 000214
598 000655' 000000 001340
599 000656' 251400 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2514
600 000657' 472000 000340
601 000660' 251500 002040 LDXBUF ; 2515-16
602 000661' 431000 002340
603 000662' 251600 000214
604 000663' 000000 001340
605 000664' 251700 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2517
606 000665' 472000 000340
607 000666' 252000 002040 LDXBUF ; 2520-21
608 000667' 431000 002340
609 000670' 252100 000214
610 000671' 000000 001340
611 000672' 252203 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2522
612 000673' 342000 000300
613 000674' 252325 230000 MWORD <RPCT,J=2523,S0B,PLUS,D=2,CRY> ; 2523
614 000675' 302000 000620
615 000676' 252400 000000 MWORD <CRTN> ; 2524
616 000677' 000000 000240
617
618 ;#********************************************************************
619 ; MRESTA - Reset the Packet Buffer and Link modules
620 ; MEXIT - Exit and write completion code to CSR
621 ;#********************************************************************
622
623 000700' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
624 000701' 000000000000#
625 000702' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
626 000703' 000000000000#
627 000704' 777777 777777 -1
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 5
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0769
628
629 ;#********************************************************************
630 ;* TEST 34 - 'Abort Transmission' Function (Active)
631 ;
632 ; Description: This test verifies that 'Abort Transmission'
633 ; function aborts an active transmission and sets
634 ; 'Xmtr Attention' line and sets 'Transmission
635 ; Aborted' bit in the transmit status register.
636 ;
637 ; Procedure: KL> Load microcode
638 ; KL> Port Clear
639 ; KL> Start port
640 ;
641 ; UC> Initialize transmit buffer A
642 ; UC> Set maintenance mode and transmit the buffer
643 ; (loop back into receive buffer)
644 ; UC> Set 'Abort transmission'
645 ; UC> Verify that 'XMTR Attn' condition code is set
646 ; UC> Read transmit status that 'Xmit Aborted' is set
647 ; If failed - exit test with error code in EBUF
648 ; Code 1 - 'XMTR Attn' did not set
649 ; Code 2 - 'Transmission Aborted' bit not set
650 ;
651 ; KL> Read EBUF and determine test disposition
652 ;
653 ; FRU: Link Module
654 ;#********************************************************************
655
656 ; Initialization
657
658 000705' 201 00 0 00 000000' TST34: MOVEI Z4 ; get address of module start
659 000706' 260 17 0 00 000001* GO TRACE ; handle trace output
660 000707' 201 01 0 00 000733' MOVEI 1,T34M ; set up microcode address
661 000710' 260 17 0 00 000003* GO TLOAD ; load/verify it
662 000711' 263 17 0 00 000000 RTN ; failed - exit test
663
664 ; Do the test
665
666 000712' 260 17 0 00 000005* GO MSTART ; start the test at 5777
667 000713' 201 01 0 00 000024 MOVEI 1,^D20 ; set up wait of 20 ms
668 000714' 260 17 0 00 000007* GO MWAIT ; wait for completion
669
670 ; Handle error printouts
671
672 000715' 027 00 0 00 000722' SCOPER MA34 ; print error message
673 000716' 255 00 0 00 000000 JFCL ; loop on error
674 000717' 254 00 0 00 000720' JRST TX34 ; altmode exit
675
676 ; End of test
677
678 000720' 260 17 0 00 000013* TX34: GO TSTEND ; handle end of test processing
679 000721' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 6
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0770
680
681 ; Error messages
682
683 000722' 240000 000724' MA34: CALL!TXNOT!MA34PN
684 000723' 170000 003046' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
685
686 000724' 201 01 0 00 000730' MA34PN: MOVEI 1,MA34LS ; get list address
687 000725' 201 02 0 00 000003 MOVEI 2,3 ; get list length
688 000726' 260 17 0 00 000021* GO MPRINT ; print data
689 000727' 263 17 0 00 000000 RTN ; return
690
691 000730' 037 00 0 00 003052' MA34LS: TMSGC <No failure detected>
692 000731' 037 00 0 00 003217' TMSGC <'XMTR Attn' not set by 'Abort Xmit' command>
693 000732' 037 00 0 00 003231' TMSGC <'Transmission Aborted' not set by 'Abort Xmit' command>
694
695 ;#********************************************************************
696 ; Microcode:
697 ;#********************************************************************
698
699 ; Initialization
700
701 000733' 577700 000000 T34M: MWORD <ADDR=5777,JZ> ; 5777
702 000734' 000000 000000
703 000735' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
704 000736' 000000 000020
705 000737' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
706 000740' 342006 000300
707 000741' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
708 000742' 307006 000620
709 000743' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
710 000744' 302006 000440
711
712 ; R14 - 8 bit mask (377)
713 ; R10 - Contains the transmit status read
714 ; R15 - Actual data (right justified) (R10 without bits 5,6 set)
715 ; R16 - Correct data (right justified)
716 ; R17 - Completion code (right justified)
717
718 ; Set up transmit buffer
719
720 000745' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001,S0A,OR,A=16,B=2,D=2>
721 000746' 432161 000040
722 000747' 100100 000002 SELBUF (2) ; 1001-04
723 000750' 732000 240340
724 000751' 100200 002040
725 000752' 431000 002340
726 000753' 100300 000174
727 000754' 000000 001340
728 000755' 100400 000000
729 000756' 001000 000340
730 000757' 100525 000000 MWORD <CJS,J=2500> ; 1005
731 000760' 000000 000020
732
733 ; Set maintenance mode and start looping the data into
734 ; the receive buffer, then abort the transmission.
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 6-1
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0771
735
736 000761' 100600 000240 SETMOD (240) ; 1006-10
737 000762' 732000 240340
738 000763' 100700 002040
739 000764' 431000 002340
740 000765' 101000 000274
741 000766' 000000 001340
742 000767' 101100 000377 DLINK (377) ; 1011-13
743 000770' 732000 240340
744 000771' 101200 002040
745 000772' 431000 002340
746 000773' 101300 000354
747 000774' 000000 001340
748 000775' 101400 050000 MWORD <LDCT,J=5> ; 1014
749 000776' 000000 000300
750 000777' 101510 150000 MWORD <RPCT,J=1015> ; 1015
751 001000' 000000 000220
752 001001' 101600 000000 TXMIT (0) ; 1016-20
753 001002' 732000 240340
754 001003' 101700 002040
755 001004' 431000 002340
756 001005' 102000 000314
757 001006' 000000 001340
758 001007' 102100 050000 MWORD <LDCT,J=5> ; 1021
759 001010' 000000 000300
760 001011' 102210 220000 MWORD <RPCT,J=1022> ; 1022
761 001012' 000000 000220
762 001013' 102300 000250 ABOXMT ; 1023
763 001014' 000000 001340
764
765 ; First check 'XMTR Attn'
766
767 001015' 102400 100000 MWORD <LDCT,J=10> ; 1024
768 001016' 000000 000300
769 001017' 102510 250000 MWORD <RPCT,J=1025> ; 1025
770 001020' 000000 000220
771 001021' 102610 300000 MWORD <CJP,J=1030,CENA,CCXA> ; 1026
772 001022' 000400 070060
773 001023' 102750 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,SKCN,MGC=1>; 1027
774 001024' 732007 640040
775
776 ; Read transmit status
777
778 001025' 103000 000232 RDXSTA ; 1030-31
779 001026' 342006 401340
780 001027' 103100 000300
781 001030' 732006 402340
782
783 ; Verify 'Transmission Aborted' bit is set
784
785 001031' 103200 000020 MWORD <CONT,SDA,AND,A=15,B=16,MGC=20,D=2> ; 1032
786 001032' 542157 000340
787 001033' 103350 000000 MWORD <CJP,J=5000,S0A,OR,A=16,D=2,CENA,CCFZ> ; 1033
788 001034' 432560 020060
789 001035' 103450 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1034
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 6-2
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0772
790 001036' 442007 400040
791
792 ;#********************************************************************
793 ; Subroutine to initialize the contents of a buffer
794 ;#********************************************************************
795
796 001037' 250000 000004 MWORD <ADDR=2500,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2500
797 001040' 732000 240340
798 001041' 250100 002040 LDXBUF ; 2501-02
799 001042' 431000 002340
800 001043' 250200 000214
801 001044' 000000 001340
802 001045' 250300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2503
803 001046' 732000 240340
804 001047' 250400 002040 LDXBUF ; 2504-05
805 001050' 431000 002340
806 001051' 250500 000214
807 001052' 000000 001340
808 001053' 250603 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2506
809 001054' 342000 000300
810 001055' 250700 002040 LDXBUF ; 2507-10
811 001056' 431000 002340
812 001057' 251000 000214
813 001060' 000000 001340
814 001061' 251100 000010 MWORD <CONT,SDA,AND,A=14,D=2,RDLM,MGC=10> ; 2511
815 001062' 542140 220340
816 001063' 251200 002040 LDXBUF ; 2512-13
817 001064' 431000 002340
818 001065' 251300 000214
819 001066' 000000 001340
820 001067' 251400 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2514
821 001070' 472000 000340
822 001071' 251500 002040 LDXBUF ; 2515-16
823 001072' 431000 002340
824 001073' 251600 000214
825 001074' 000000 001340
826 001075' 251700 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2517
827 001076' 472000 000340
828 001077' 252000 002040 LDXBUF ; 2520-21
829 001100' 431000 002340
830 001101' 252100 000214
831 001102' 000000 001340
832 001103' 252203 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2522
833 001104' 342000 000300
834 001105' 252325 230000 MWORD <RPCT,J=2523,S0B,PLUS,D=2,CRY> ; 2523
835 001106' 302000 000620
836 001107' 252400 000000 MWORD <CRTN> ; 2524
837 001110' 000000 000240
838
839 ;#********************************************************************
840 ; MRESTA - Reset the Packet Buffer and Link modules
841 ; MEXIT - Exit and write completion code to CSR
842 ;#********************************************************************
843
844 001111' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 6-3
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0773
845 001112' 000000000000#
846 001113' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
847 001114' 000000000000#
848 001115' 777777 777777 -1
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 7
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0774
849
850 ;#********************************************************************
851 ;* TEST 35 - 'Abort Transmission' Function (Inactive)
852 ;
853 ; Description: This test verifies that 'Abort Transmission'
854 ; function does nothing if a transmit is not active
855 ; and the 'Xmtr Attention' line is set.
856 ;
857 ; Procedure: KL> Load microcode
858 ; KL> Port Clear
859 ; KL> Start port
860 ;
861 ; UC> Initialize transmit buffer A
862 ; UC> Set maintenance mode and transmit the buffer
863 ; (loop back into receive buffer)
864 ; UC> Wait for the transmission to complete
865 ; UC> Read transmit status
866 ; UC> Set 'Abort transmission'
867 ; UC> Read transmit status and verify that it
868 ; did not change
869 ; If failed - exit test with error code in EBUF
870 ; Code 1 - 'Abort Transmission' affected an
871 ; inactive transmit
872 ;
873 ; KL> Read EBUF and determine test disposition
874 ;
875 ; FRU: Link Module
876 ;#********************************************************************
877
878 ; Initialization
879
880 001116' 201 00 0 00 000000' TST35: MOVEI Z4 ; get address of module start
881 001117' 260 17 0 00 000706* GO TRACE ; handle trace output
882 001120' 201 01 0 00 001143' MOVEI 1,T35M ; set up microcode address
883 001121' 260 17 0 00 000710* GO TLOAD ; load/verify it
884 001122' 263 17 0 00 000000 RTN ; failed - exit test
885
886 ; Do the test
887
888 001123' 260 17 0 00 000712* GO MSTART ; start the test at 5777
889 001124' 201 01 0 00 000024 MOVEI 1,^D20 ; set up wait of 20 ms
890 001125' 260 17 0 00 000714* GO MWAIT ; wait for completion
891
892 ; Handle error printouts
893
894 001126' 027 00 0 00 001133' SCOPER MA35 ; print error message
895 001127' 255 00 0 00 000000 JFCL ; loop on error
896 001130' 254 00 0 00 001131' JRST TX35 ; altmode exit
897
898 ; End of test
899
900 001131' 260 17 0 00 000720* TX35: GO TSTEND ; handle end of test processing
901 001132' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 8
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0775
902
903 ; Error messages
904
905 001133' 240000 001135' MA35: CALL!TXNOT!MA35PN
906 001134' 170000 003046' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
907
908 001135' 201 01 0 00 001141' MA35PN: MOVEI 1,MA35LS ; get list address
909 001136' 201 02 0 00 000002 MOVEI 2,2 ; get list length
910 001137' 260 17 0 00 000726* GO MPRINT ; print data
911 001140' 263 17 0 00 000000 RTN ; return
912
913 001141' 037 00 0 00 003052' MA35LS: TMSGC <No failure detected>
914 001142' 037 00 0 00 003245' TMSGC <'Transmission Aborted' affected an inactive transmit>
915
916 ;#********************************************************************
917 ; Microcode:
918 ;#********************************************************************
919
920 ; Initialization
921
922 001143' 577700 000000 T35M: MWORD <ADDR=5777,JZ> ; 5777
923 001144' 000000 000000
924 001145' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
925 001146' 000000 000020
926 001147' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
927 001150' 342006 000300
928 001151' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
929 001152' 307006 000620
930 001153' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
931 001154' 302006 000440
932
933 ; R14 - 8 bit mask (377)
934 ; R10 - Contains the transmit status read
935 ; R15 - Actual data (right justified) (R10 without bits 5,6 set)
936 ; R16 - Correct data (right justified)
937 ; R17 - Completion code (right justified)
938
939 ; Set up transmit buffer
940
941 001155' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001,S0A,OR,A=16,B=2,D=2>
942 001156' 432161 000040
943 001157' 100100 000002 SELBUF (2) ; 1001-04
944 001160' 732000 240340
945 001161' 100200 002040
946 001162' 431000 002340
947 001163' 100300 000174
948 001164' 000000 001340
949 001165' 100400 000000
950 001166' 001000 000340
951 001167' 100525 000000 MWORD <CJS,J=2500> ; 1005
952 001170' 000000 000020
953
954 ; Set maintenance mode and start looping the data into
955 ; the receive buffer, then wait for it to complete
956
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 8-1
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0776
957 001171' 100600 000240 SETMOD (240) ; 1006-10
958 001172' 732000 240340
959 001173' 100700 002040
960 001174' 431000 002340
961 001175' 101000 000274
962 001176' 000000 001340
963 001177' 101100 000377 DLINK (377) ; 1011-13
964 001200' 732000 240340
965 001201' 101200 002040
966 001202' 431000 002340
967 001203' 101300 000354
968 001204' 000000 001340
969 001205' 101400 000355 ELINK (355) ; 1014-16
970 001206' 732000 240340
971 001207' 101500 002040
972 001210' 431000 002340
973 001211' 101600 000154
974 001212' 000000 001340
975 001213' 101700 100000 MWORD <LDCT,J=10> ; 1017
976 001214' 000000 000300
977 001215' 102010 200000 MWORD <RPCT,J=1020> ; 1020
978 001216' 000000 000220
979 001217' 102100 000000 TXMIT (0) ; 1021-23
980 001220' 732000 240340
981 001221' 102200 002040
982 001222' 431000 002340
983 001223' 102300 000314
984 001224' 000000 001340
985 001225' 102400 200000 MWORD <LDCT,J=20> ; 1024
986 001226' 000000 000300
987 001227' 102510 250000 MWORD <RPCT,J=1025> ; 1025
988 001230' 000000 000220
989 001231' 102610 300000 MWORD <CJP,J=1030,CENA,CCXA> ; 1026
990 001232' 000400 070060
991 001233' 102710 260000 MWORD <JMAP,J=1026> ; 1027
992 001234' 000000 000040
993
994 ; Read transmit status, then issue 'Abort Transmission' command,
995 ; then re-read transmit status.
996
997 001235' 103000 000050 RSXSTA ; 1030
998 001236' 000000 001340
999 001237' 103100 200000 MWORD <LDCT,J=20> ; 1031
1000 001240' 000000 000300
1001 001241' 103210 320000 MWORD <RPCT,J=1032> ; 1032
1002 001242' 000000 000220
1003 001243' 103300 000232 RDXSTA ; 1033-34
1004 001244' 342006 401340
1005 001245' 103400 000300
1006 001246' 732006 402340
1007 001247' 103500 000000 MWORD <CONT,S0A,OR,A=15,B=16,D=2> ; 1035
1008 001250' 432157 000340
1009 001251' 103600 000250 ABOXMT ; 1036
1010 001252' 000000 001340
1011 001253' 103700 200000 MWORD <LDCT,J=20> ; 1037
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 8-2
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0777
1012 001254' 000000 000300
1013 001255' 104010 400000 MWORD <RPCT,J=1040> ; 1040
1014 001256' 000000 000220
1015 001257' 104100 000232 RDXSTA ; 1041-42
1016 001260' 342006 401340
1017 001261' 104200 000300
1018 001262' 732006 402340
1019
1020 ; Verify the 2nd transmit status is the same as the first
1021
1022 001263' 104300 000000 MWORD <CONT,S0A,OR,A=15,B=10,D=2> ; 1043
1023 001264' 432154 000340
1024 001265' 104400 000000 MWORD <CONT,SAB,A=14,B=15,AND,D=2> ; 1044
1025 001266' 142146 400340
1026 001267' 104500 000000 MWORD <CONT,SAB,A=14,B=16,AND,D=2> ; 1045
1027 001270' 142147 000340
1028 001271' 104600 000000 MWORD <CONT,S0A,AND,B=17,D=2> ; 1046
1029 001272' 442007 400340
1030 001273' 104700 000000 MWORD <CONT,SAB,XOR,A=16,B=15,D=2> ; 1047
1031 001274' 162166 400340
1032 001275' 105000 000217 MWORD <CONT,SDA,AND,A=15,B=15,D=2,SKCN,MGC=217>
1033 001276' 542156 640340
1034 001277' 105150 000000 MWORD <CJP,J=5000,S0A,OR,A=15,D=2,CENA,CCFZ> ; 1051
1035 001300' 432550 020060
1036 001301' 105250 000001 MWORD <JMAP,J=5000,SD0,OR,B=17,D=2,SKCN,MGC=1>; 1052
1037 001302' 732007 640040
1038
1039 ;#********************************************************************
1040 ; Subroutine to initialize the contents of a buffer
1041 ;#********************************************************************
1042
1043 001303' 250000 000004 MWORD <ADDR=2500,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2500
1044 001304' 732000 240340
1045 001305' 250100 002040 LDXBUF ; 2501-02
1046 001306' 431000 002340
1047 001307' 250200 000214
1048 001310' 000000 001340
1049 001311' 250300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2503
1050 001312' 732000 240340
1051 001313' 250400 002040 LDXBUF ; 2504-05
1052 001314' 431000 002340
1053 001315' 250500 000214
1054 001316' 000000 001340
1055 001317' 250603 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2506
1056 001320' 342000 000300
1057 001321' 250700 002040 LDXBUF ; 2507-10
1058 001322' 431000 002340
1059 001323' 251000 000214
1060 001324' 000000 001340
1061 001325' 251100 000010 MWORD <CONT,SDA,AND,A=14,D=2,RDLM,MGC=10> ; 2511
1062 001326' 542140 220340
1063 001327' 251200 002040 LDXBUF ; 2512-13
1064 001330' 431000 002340
1065 001331' 251300 000214
1066 001332' 000000 001340
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 8-3
DFCIA4 MAC 6-Jun-83 09:58 Transmit Tests SEQ 0778
1067 001333' 251400 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2514
1068 001334' 472000 000340
1069 001335' 251500 002040 LDXBUF ; 2515-16
1070 001336' 431000 002340
1071 001337' 251600 000214
1072 001340' 000000 001340
1073 001341' 251700 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2517
1074 001342' 472000 000340
1075 001343' 252000 002040 LDXBUF ; 2520-21
1076 001344' 431000 002340
1077 001345' 252100 000214
1078 001346' 000000 001340
1079 001347' 252203 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2522
1080 001350' 342000 000300
1081 001351' 252325 230000 MWORD <RPCT,J=2523,S0B,PLUS,D=2,CRY> ; 2523
1082 001352' 302000 000620
1083 001353' 252400 000000 MWORD <CRTN> ; 2524
1084 001354' 000000 000240
1085
1086 ;#********************************************************************
1087 ; MRESTA - Reset the Packet Buffer and Link modules
1088 ; MEXIT - Exit and write completion code to CSR
1089 ;#********************************************************************
1090
1091 001355' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
1092 001356' 000000000000#
1093 001357' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1094 001360' 000000000000#
1095 001361' 777777 777777 -1
1096
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 9
DFCIA4 MAC 6-Jun-83 09:58 Receive Tests SEQ 0779
1097 SUBTTL Receive Tests
1098
1099 ;#********************************************************************
1100 ;* TEST 36 - Receiver Status
1101 ;
1102 ; Description: This test reads receiver status register and
1103 ; verifies it.
1104 ;
1105 ; Procedure: KL> Load microcode
1106 ; KL> Port Clear
1107 ; KL> Start port
1108 ;
1109 ; UC> Read receive status, verify that the result
1110 ; is a 0 after initialization.
1111 ; UC> Set 'Rcvr A Ena', 'Rcvr B Ena' with link control
1112 ; bits. Then read receive status and verify
1113 ; that these bits are now set.
1114 ; UC> Set PILA Maintenance Mode, verify 'CRC Error'
1115 ; is not set.
1116 ; UC> Set Internal LINK loopback mode. Then transmit
1117 ; a packet with bad CRC. Read receive status and
1118 ; verify CRC Error set. Repeat for Buffer A and B.
1119 ; If failed - exit test with error code in EBUF
1120 ; Code 1 - Receive status not cleared initially.
1121 ; Code 2 - Receivers not enabled after setting link control
1122 ; Code 3 - 'CRC Error' set in PILA Maintenance Mode
1123 ; Code 4 - 'CRC Error' not set after transmitting bad CRC,
1124 ; Buffer A
1125 ; Code 5 - 'CRC Error' not set after transmitting bad CRC,
1126 ; Buffer B
1127 ;
1128 ; KL> Read EBUF and determine test disposition
1129 ;
1130 ; FRU: Link Module
1131 ;#********************************************************************
1132
1133 ; Initialization
1134
1135 001362' 201 00 0 00 000000' TST36: MOVEI Z4 ; get address of module start
1136 001363' 260 17 0 00 001117* GO TRACE ; handle trace output
1137 001364' 201 01 0 00 001413' MOVEI 1,T36M ; set up microcode address
1138 001365' 260 17 0 00 001121* GO TLOAD ; load/verify it
1139 001366' 263 17 0 00 000000 RTN ; failed - exit test
1140
1141 ; Do the test
1142
1143 001367' 260 17 0 00 001123* GO MSTART ; start the test at 5777
1144 001370' 201 01 0 00 000144 MOVEI 1,^D100 ; set up wait of 100 ms
1145 001371' 260 17 0 00 001125* GO MWAIT ; wait for completion
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 10
DFCIA4 MAC 6-Jun-83 09:58 Receive Tests SEQ 0780
1146
1147 ; Handle error printouts
1148
1149 001372' 027 00 0 00 001377' SCOPER MA36 ; print error message
1150 001373' 255 00 0 00 000000 JFCL ; loop on error
1151 001374' 254 00 0 00 001375' JRST TX36 ; altmode exit
1152
1153 ; End of test
1154
1155 001375' 260 17 0 00 001131* TX36: GO TSTEND ; handle end of test processing
1156 001376' 263 17 0 00 000000 RTN ; return
1157
1158 ; Error messages
1159
1160 001377' 240000 001401' MA36: CALL!TXNOT!MA36PN
1161 001400' 170000 003260' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
1162
1163 001401' 201 01 0 00 001405' MA36PN: MOVEI 1,MA36LS ; get list address
1164 001402' 201 02 0 00 000006 MOVEI 2,6 ; get list length
1165 001403' 260 17 0 00 001137* GO MPRINT ; print data
1166 001404' 263 17 0 00 000000 RTN ; return
1167
1168 001405' 037 00 0 00 003052' MA36LS: TMSGC <No failure detected>
1169 001406' 037 00 0 00 003264' TMSGC <Receive status not cleared initially>
1170 001407' 037 00 0 00 003274' TMSGC <Receivers not enabled after setting link control>
1171 001410' 037 00 0 00 003307' TMSGC <'CRC Error' set in PILA Maintenance Mode>
1172 001411' 037 00 0 00 003320' TMSGC <'CRC Error' not set after transmitting bad CRC (Buffer A)>
1173 001412' 037 00 0 00 003334' TMSGC <'CRC Error' not set after transmitting bad CRC (Buffer B)>
1174
1175 ;#********************************************************************
1176 ; Microcode:
1177 ;#********************************************************************
1178
1179 ; Initialization
1180
1181 001413' 577700 000000 T36M: MWORD <ADDR=5777,JZ> ; 5777
1182 001414' 000000 000000
1183 001415' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
1184 001416' 000000 000020
1185 001417' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
1186 001420' 342006 000300
1187 001421' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
1188 001422' 307006 000620
1189 001423' 000300 000000 MWORD <CONT,S0B,PLUS,B=14,D=2,CRY> ; 3
1190 001424' 302006 000740
1191 001425' 000400 000040 SETMOD (40) ; 4-6
1192 001426' 732000 240340
1193 001427' 000500 002040
1194 001430' 431000 002340
1195 001431' 000600 000274
1196 001432' 000000 001340
1197 001433' 000700 000041 SETMOD (41) ; 7-11
1198 001434' 732000 240340
1199 001435' 001000 002040
1200 001436' 431000 002340
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 10-1
DFCIA4 MAC 6-Jun-83 09:58 Receive Tests SEQ 0781
1201 001437' 001100 000274
1202 001440' 000000 001340
1203 001441' 001210 000000 MWORD <JMAP,J=1000> ; 12
1204 001442' 000000 000040
1205
1206 ; R14 - 8 bit mask (377)
1207 ; R10 - Contains the transmit status read
1208 ; R15 - Actual data (right justified) (R10 without bits 5,6 set)
1209 ; R16 - Correct data (right justified)
1210 ; R17 - Completion code (right justified)
1211
1212 ; Set up transmit buffer A/B
1213
1214 001443' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
1215 001444' 000000 000040
1216 001445' 100100 000002 SELBUF (2) ; 1001-04
1217 001446' 732000 240340
1218 001447' 100200 002040
1219 001450' 431000 002340
1220 001451' 100300 000174
1221 001452' 000000 001340
1222 001453' 100400 000000
1223 001454' 001000 000340
1224 001455' 100525 000000 MWORD <CJS,J=2500> ; 1005
1225 001456' 000000 000020
1226 001457' 100600 000003 SELBUF (3) ; 1006-11
1227 001460' 732000 240340
1228 001461' 100700 002040
1229 001462' 431000 002340
1230 001463' 101000 000174
1231 001464' 000000 001340
1232 001465' 101100 000000
1233 001466' 001000 000340
1234 001467' 101225 000000 MWORD <CJS,J=2500> ; 1012
1235 001470' 000000 000020
1236
1237 ; Call each segment
1238
1239 001471' 101300 000002 SELBUF (2) ; 1013-16
1240 001472' 732000 240340
1241 001473' 101400 002040
1242 001474' 431000 002340
1243 001475' 101500 000174
1244 001476' 000000 001340
1245 001477' 101600 000000
1246 001500' 001000 000340
1247 001501' 101711 000001 MWORD <CJS,J=1100,SD0,OR,B=17,D=2,SKCN,MGC=1> ; 1017
1248 001502' 732007 640020
1249 001503' 102012 000002 MWORD <CJS,J=1200,SD0,OR,B=17,D=2,SKCN,MGC=2> ; 1020
1250 001504' 732007 640020
1251 001505' 102113 000003 MWORD <CJS,J=1300,SD0,OR,B=17,D=2,SKCN,MGC=3> ; 1021
1252 001506' 732007 640020
1253 001507' 102214 000004 MWORD <CJS,J=1400,SD0,OR,B=17,D=2,SKCN,MGC=4> ; 1022
1254 001510' 732007 640020
1255 001511' 102315 000005 MWORD <CJS,J=1500,SD0,OR,B=17,D=2,SKCN,MGC=5> ; 1023
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 10-2
DFCIA4 MAC 6-Jun-83 09:58 Receive Tests SEQ 0782
1256 001512' 732007 640020
1257 001513' 102450 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1024
1258 001514' 442007 400040
1259
1260 ; (A) Read receive status, verify that the result
1261 ; is zero after initialization.
1262
1263 001515' 110000 000000 MWORD <ADDR=1100,CONT> ; 1100
1264 001516' 000000 000340
1265 001517' 110100 000032 RDRSTA ; 1101-02
1266 001520' 342006 401340
1267 001521' 110200 000300
1268 001522' 732006 402340
1269 001523' 110300 000000 MWORD <CONT,SAB,AND,A=14,B=15,D=2> ; 1103
1270 001524' 142146 400340
1271 001525' 110411 060000 MWORD <CJP,J=1106,S0A,OR,A=15,D=1,CENA,CCFZ> ; 1104
1272 001526' 431550 020060
1273 001527' 110550 000000 MWORD <JMAP,J=5000> ; 1105
1274 001530' 000000 000040
1275 001531' 110600 000000 MWORD <CRTN> ; 1106
1276 001532' 000000 000240
1277
1278 ; (B) Set 'Rcvr A Ena', 'Rcvr B Ena' with link control
1279 ; bits. Then read receive status and verify
1280 ; that these bits are now set.
1281
1282 001533' 120000 000000 MWORD <ADDR=1200,CONT> ; 1200
1283 001534' 000000 000340
1284 001535' 120100 000377 DLINK (377) ; 1201-03
1285 001536' 732000 240340
1286 001537' 120200 002040
1287 001540' 431000 002340
1288 001541' 120300 000354
1289 001542' 000000 001340
1290 001543' 120400 000211 ELINK (211) ; 1204-06
1291 001544' 732000 240340
1292 001545' 120500 002040
1293 001546' 431000 002340
1294 001547' 120600 000154
1295 001550' 000000 001340
1296 001551' 120700 000032 RDRSTA ; 1207-10
1297 001552' 342006 401340
1298 001553' 121000 000300
1299 001554' 732006 402340
1300 001555' 121100 000000 MWORD <CONT,S0A,OR,A=15,B=10,D=2> ; 1211
1301 001556' 432154 000340
1302 001557' 121200 000240 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=240,D=2>;1212
1303 001560' 542147 240340
1304 001561' 121300 000000 MWORD <CONT,SAB,AND,A=16,B=15,D=2> ; 1213
1305 001562' 142166 400340
1306 001563' 121400 000240 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=240,D=2>;1214
1307 001564' 542147 240340
1308 001565' 121512 170000 MWORD <CJP,J=1217,SAB,XOR,A=15,B=16,D=1,CENA,CCFZ>
1309 001566' 161557 020060
1310 001567' 121650 000000 MWORD <JMAP,J=5000> ; 1216
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 10-3
DFCIA4 MAC 6-Jun-83 09:58 Receive Tests SEQ 0783
1311 001570' 000000 000040
1312 001571' 121700 000000 MWORD <CRTN> ; 1217
1313 001572' 000000 000240
1314
1315 ; (C) Set PILA Maintenance Mode, verify 'CRC Error'
1316 ; is not set.
1317
1318 001573' 130000 000000 MWORD <ADDR=1300,CONT> ; 1300
1319 001574' 000000 000340
1320 001575' 130100 000340 SETMOD (340) ; 1301-03
1321 001576' 732000 240340
1322 001577' 130200 002040
1323 001600' 431000 002340
1324 001601' 130300 000274
1325 001602' 000000 001340
1326 001603' 130400 000032 RDRSTA ; 1304-05
1327 001604' 342006 401340
1328 001605' 130500 000300
1329 001606' 732006 402340
1330 001607' 130600 000000 MWORD <CONT,S0A,OR,A=15,B=10,D=2> ; 1306
1331 001610' 432154 000340
1332 001611' 130700 000100 MWORD <CONT,SDA,AND,A=14,B=16,SKCN,MGC=100,D=2>;1307
1333 001612' 542147 240340
1334 001613' 131000 000000 MWORD <CONT,SAB,AND,A=16,B=15,D=2> ; 1310
1335 001614' 142166 400340
1336 001615' 131113 130000 MWORD <CJP,J=1313,S0A,OR,A=15,D=1,CENA,CCFZ> ; 1311
1337 001616' 431550 020060
1338 001617' 131250 000000 MWORD <JMAP,J=5000> ; 1312
1339 001620' 000000 000040
1340 001621' 131300 000000 MWORD <CRTN> ; 1313
1341 001622' 000000 000240
1342
1343 ; (D) Set Internal LINK loopback mode. Then transmit
1344 ; a packet with bad CRC. Read receive status and
1345 ; verify CRC Error set. Buffer A is used.
1346
1347 001623' 140000 000000 MWORD <ADDR=1400,CRTN> ; 1400
1348 001624' 000000 000240
1349 001625' 140100 000240 SETMOD (240) ; 1401-03
1350 001626' 732000 240340
1351 001627' 140200 002040
1352 001630' 431000 002340
1353 001631' 140300 000274
1354 001632' 000000 001340
1355 001633' 140400 000377 DLINK (377) ; 1404-06
1356 001634' 732000 240340
1357 001635' 140500 002040
1358 001636' 431000 002340
1359 001637' 140600 000354
1360 001640' 000000 001340
1361 001641' 140700 000355 ELINK (355) ; 1407-11
1362 001642' 732000 240340
1363 001643' 141000 002040
1364 001644' 431000 002340
1365 001645' 141100 000154
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 10-4
DFCIA4 MAC 6-Jun-83 09:58 Receive Tests SEQ 0784
1366 001646' 000000 001340
1367 001647' 141200 000000 TXMIT (0) ; 1412-14
1368 001650' 732000 240340
1369 001651' 141300 002040
1370 001652' 431000 002340
1371 001653' 141400 000314
1372 001654' 000000 001340
1373 001655' 141500 200000 MWORD <LDCT,J=20> ; 1415
1374 001656' 000000 000300
1375 001657' 141614 160000 MWORD <RPCT,J=1416> ; 1416
1376 001660' 000000 000220
1377 001661' 141714 210000 MWORD <CJP,J=1421,CENA,CCXA> ; 1417
1378 001662' 000400 070060
1379 001663' 142014 170000 MWORD <JMAP,J=1417> ; 1420
1380 001664' 000000 000040
1381 001665' 142100 000032 RDRSTA ; 1421-22
1382 001666' 342006 401340
1383 001667' 142200 000300
1384 001670' 732006 402340
1385 001671' 142300 000000 MWORD <CONT,S0A,OR,A=15,B=10,D=2> ; 1423
1386 001672' 432154 000340
1387 001673' 142400 000100 MWORD <CONT,SD0,AND,A=14,B=16,MGC=100,D=2> ; 1424
1388 001674' 742147 000340
1389 001675' 142550 000000 MWORD <CJP,J=5000,SAB,AND,A=16,B=15,D=2,CENA,CCFZ>
1390 001676' 142566 420060
1391 001677' 142600 000000 MWORD <CRTN> ; 1426
1392 001700' 000000 000240
1393
1394 ; (E) Set Internal LINK loopback mode. Then transmit
1395 ; a packet with bad CRC. Read receive status and
1396 ; verify CRC Error set. Buffer B is used.
1397
1398 001701' 150000 000000 MWORD <ADDR=1500,CRTN> ; 1500
1399 001702' 000000 000240
1400 001703' 150100 000241 SETMOD (241) ; 1501-03
1401 001704' 732000 240340
1402 001705' 150200 002040
1403 001706' 431000 002340
1404 001707' 150300 000274
1405 001710' 000000 001340
1406 001711' 150400 000377 DLINK (377) ; 1504-06
1407 001712' 732000 240340
1408 001713' 150500 002040
1409 001714' 431000 002340
1410 001715' 150600 000354
1411 001716' 000000 001340
1412 001717' 150700 000355 ELINK (355) ; 1507-11
1413 001720' 732000 240340
1414 001721' 151000 002040
1415 001722' 431000 002340
1416 001723' 151100 000154
1417 001724' 000000 001340
1418 001725' 151200 000201 TXMIT (201) ; 1512-14
1419 001726' 732000 240340
1420 001727' 151300 002040
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 10-5
DFCIA4 MAC 6-Jun-83 09:58 Receive Tests SEQ 0785
1421 001730' 431000 002340
1422 001731' 151400 000314
1423 001732' 000000 001340
1424 001733' 151500 200000 MWORD <LDCT,J=20> ; 1515
1425 001734' 000000 000300
1426 001735' 151615 160000 MWORD <RPCT,J=1516> ; 1516
1427 001736' 000000 000220
1428 001737' 151715 210000 MWORD <CJP,J=1521,CENA,CCXA> ; 1517
1429 001740' 000400 070060
1430 001741' 152015 170000 MWORD <JMAP,J=1517> ; 1520
1431 001742' 000000 000040
1432 001743' 152100 000032 RDRSTA ; 1521-22
1433 001744' 342006 401340
1434 001745' 152200 000300
1435 001746' 732006 402340
1436 001747' 152300 000000 MWORD <CONT,S0A,OR,A=15,B=10,D=2> ; 1523
1437 001750' 432154 000340
1438 001751' 152400 000100 MWORD <CONT,SD0,AND,A=14,B=16,MGC=100,D=2> ; 1524
1439 001752' 742147 000340
1440 001753' 152550 000000 MWORD <CJP,J=5000,SAB,AND,A=16,B=15,D=2,CENA,CCFZ>
1441 001754' 142566 420060
1442 001755' 152600 000000 MWORD <CRTN> ; 1526
1443 001756' 000000 000240
1444
1445 ;#********************************************************************
1446 ; Subroutine to initialize the contents of a buffer
1447 ;#********************************************************************
1448
1449 001757' 250000 000004 MWORD <ADDR=2500,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2500
1450 001760' 732000 240340
1451 001761' 250100 002040 LDXBUF ; 2501-02
1452 001762' 431000 002340
1453 001763' 250200 000214
1454 001764' 000000 001340
1455 001765' 250300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2503
1456 001766' 732000 240340
1457 001767' 250400 002040 LDXBUF ; 2504-05
1458 001770' 431000 002340
1459 001771' 250500 000214
1460 001772' 000000 001340
1461 001773' 250603 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2506
1462 001774' 342000 000300
1463 001775' 250700 002040 LDXBUF ; 2507-10
1464 001776' 431000 002340
1465 001777' 251000 000214
1466 002000' 000000 001340
1467 002001' 251100 000010 MWORD <CONT,SDA,AND,A=14,D=2,RDLM,MGC=10> ; 2511
1468 002002' 542140 220340
1469 002003' 251200 002040 LDXBUF ; 2512-13
1470 002004' 431000 002340
1471 002005' 251300 000214
1472 002006' 000000 001340
1473 002007' 251400 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2514
1474 002010' 472000 000340
1475 002011' 251500 002040 LDXBUF ; 2515-16
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 10-6
DFCIA4 MAC 6-Jun-83 09:58 Receive Tests SEQ 0786
1476 002012' 431000 002340
1477 002013' 251600 000214
1478 002014' 000000 001340
1479 002015' 251700 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2517
1480 002016' 472000 000340
1481 002017' 252000 002040 LDXBUF ; 2520-21
1482 002020' 431000 002340
1483 002021' 252100 000214
1484 002022' 000000 001340
1485 002023' 252203 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2522
1486 002024' 342000 000300
1487 002025' 252325 230000 MWORD <RPCT,J=2523,S0B,PLUS,D=2,CRY> ; 2523
1488 002026' 302000 000620
1489 002027' 252400 000000 MWORD <CRTN> ; 2524
1490 002030' 000000 000240
1491
1492 ;#********************************************************************
1493 ; MRESTA - Reset the Packet Buffer and Link modules
1494 ; MEXIT - Exit and write completion code to CSR
1495 ;#********************************************************************
1496
1497 002031' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
1498 002032' 000000000000#
1499 002033' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1500 002034' 000000000000#
1501 002035' 777777 777777 -1
1502
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 11
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0787
1503 SUBTTL Parity Tests
1504
1505 ;#********************************************************************
1506 ;* TEST 37 - PLI Parity Test
1507 ;
1508 ; Description: This test verifies the parity checking logic on
1509 ; the CBUS module. The transmit buffer is loaded
1510 ; with data having good parity. This is then read
1511 ; over the PLI interface. No parity error should
1512 ; occur. Then the transmit buffer is looped back
1513 ; to the receive buffer with bad parity. This is
1514 ; read over the PLI interface and a parity error
1515 ; should result.
1516 ;
1517 ; Procedure: KL> Load microcode
1518 ; KL> Port Clear
1519 ; KL> Start port
1520 ;
1521 ; UC> Write data to first 400 words of buffer A with
1522 ; good parity
1523 ; UC> Write data to first 400 words of buffer B with
1524 ; good parity
1525 ; UC> Read each word of buffer A and verify data and
1526 ; that no parity error occurred
1527 ; UC> Read each word of buffer B and verify data and
1528 ; that no parity error occurred
1529 ; If failed - exit test with error code 1-2 in CSR
1530 ;
1531 ; UC> Set maintenance mode and zero parity bit
1532 ; UC> Loopback buffer A data to receive buffer A
1533 ; UC> Read each word of buffer A and verify data and
1534 ; that a parity error occurred
1535 ; If failed - exit test with error code 3 in CSR
1536 ;
1537 ; UC> Set maintenance mode and zero parity bit
1538 ; UC> Loopback buffer B data to receive buffer B
1539 ; UC> Read each word of buffer B and verify data and
1540 ; that a parity error occurred
1541 ; If failed - exit test with error code 4 in CSR
1542 ;
1543 ; UC> Set appropriate completion code in CSR
1544 ; KL> Read CSR and determine test disposition
1545 ;
1546 ; FRU: Packet Buffer Module
1547 ;#********************************************************************
1548
1549 ; Initialization
1550
1551 002036' 201 00 0 00 000000' TST37: MOVEI Z4 ; get address of module start
1552 002037' 260 17 0 00 001363* GO TRACE ; handle trace output
1553 002040' 201 01 0 00 002066' MOVEI 1,T37M ; set up microcode address
1554 002041' 260 17 0 00 001365* GO TLOAD ; load/verify it
1555 002042' 263 17 0 00 000000 RTN ; failed - exit test
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 12
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0788
1556
1557 ; Do the test
1558
1559 002043' 260 17 0 00 001367* GO MSTART ; start the test at 5777
1560 002044' 201 01 0 00 000050 MOVEI 1,^D40 ; set up wait of 40 ms
1561 002045' 260 17 0 00 001371* GO MWAIT ; wait for completion
1562
1563 ; Handle error printouts
1564
1565 002046' 027 00 0 00 002053' SCOPER MA37 ; print error message
1566 002047' 255 00 0 00 000000 JFCL ; loop on error
1567 002050' 254 00 0 00 002051' JRST TX37 ; altmode exit
1568
1569 ; End of test
1570
1571 002051' 260 17 0 00 001375* TX37: GO TSTEND ; handle end of test processing
1572 002052' 263 17 0 00 000000 RTN ; return
1573
1574 ; Error messages
1575
1576 002053' 240000 002055' MA37: CALL!TXNOT!MA37PN
1577 002054' 170000 003260' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
1578
1579 002055' 201 01 0 00 002061' MA37PN: MOVEI 1,MA37LS ; get list address
1580 002056' 201 02 0 00 000005 MOVEI 2,5 ; get list length
1581 002057' 260 17 0 00 001403* GO MPRINT ; print data
1582 002060' 263 17 0 00 000000 RTN ; return
1583
1584 002061' 037 00 0 00 003052' MA37LS: TMSGC <No failure detected>
1585 002062' 037 00 0 00 003350' TMSGC <Buffer A load/read with good parity failed>
1586 002063' 037 00 0 00 003361' TMSGC <Buffer B load/read with good parity failed>
1587 002064' 037 00 0 00 003372' TMSGC <Buffer A loopback with bad parity failed>
1588 002065' 037 00 0 00 003403' TMSGC <Buffer B loopback with bad parity failed>
1589
1590 ;#********************************************************************
1591 ; Microcode:
1592 ;#********************************************************************
1593
1594 ; Initialization
1595
1596 002066' 577700 000000 T37M: MWORD <ADDR=5777,JZ> ; 5777
1597 002067' 000000 000000
1598 002070' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
1599 002071' 000000 000020
1600 002072' 000100 060000 MWORD <LDCT,J=6,CONT,S0B,AND,B=14,D=2> ; 1
1601 002073' 342006 000340
1602 002074' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
1603 002075' 307006 000620
1604 002076' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
1605 002077' 302006 000440
1606
1607 ; R14 - 8 bit mask (377)
1608 ; R15 - Actual data (right justified)
1609 ; R16 - Correct data (right justified)
1610 ; R17 - Completion code (right justified)
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 12-1
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0789
1611
1612 ; Packet Buffer A loading
1613
1614 002100' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001> ; 1000
1615 002101' 000000 000040
1616 002102' 100100 000002 SELBUF (2) ; 1001-04
1617 002103' 732000 240340
1618 002104' 100200 002040
1619 002105' 431000 002340
1620 002106' 100300 000174
1621 002107' 000000 001340
1622 002110' 100400 000000
1623 002111' 001000 000340
1624 002112' 100521 000000 MWORD <CJS,J=2100> ; 1005
1625 002113' 000000 000020
1626 002114' 100603 770000 MWORD <LDCT,J=377,S0A,AND,D=2> ; 1006
1627 002115' 442000 000300
1628 002116' 100700 002040 LDXBUF ; 1007-10
1629 002117' 431000 002340
1630 002120' 101000 000214
1631 002121' 000000 001340
1632 002122' 101110 070000 MWORD <RPCT,J=1007,S0A,PLUS,D=2,CRY> ; 1011
1633 002123' 402000 000620
1634
1635 ; Packet Buffer B loading
1636
1637 002124' 101200 000003 SELBUF (3) ; 1012-15
1638 002125' 732000 240340
1639 002126' 101300 002040
1640 002127' 431000 002340
1641 002130' 101400 000174
1642 002131' 000000 001340
1643 002132' 101500 000000
1644 002133' 001000 000340
1645 002134' 101621 000000 MWORD <CJS,J=2100> ; 1016
1646 002135' 000000 000020
1647 002136' 101703 770000 MWORD <LDCT,J=377,S0A,AND,D=2> ; 1017
1648 002137' 442000 000300
1649 002140' 102000 002040 LDXBUF ; 1020-21
1650 002141' 431000 002340
1651 002142' 102100 000214
1652 002143' 000000 001340
1653 002144' 102210 200000 MWORD <RPCT,J=1020,S0A,PLUS,D=2,CRY> ; 1022
1654 002145' 402000 000620
1655
1656 ; Read each word of buffer A and verify data and that no
1657 ; parity error occurred
1658
1659 002146' 102300 000000 MWORD <CONT,S0B,AND,B=16,D=2> ; 1023
1660 002147' 342007 000340
1661 002150' 102400 000000 MWORD <CONT,S0B,AND,B=17,D=2> ; 1024
1662 002151' 342007 400340
1663 002152' 102503 770000 MWORD <LDCT,J=377,S0B,PLUS,B=17,D=2,CRY> ; 1025
1664 002153' 302007 400700
1665 002154' 102600 000006 SELBUF (6) ; 1026-31
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 12-2
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0790
1666 002155' 732000 240340
1667 002156' 102700 002040
1668 002157' 431000 002340
1669 002160' 103000 000174
1670 002161' 000000 001340
1671 002162' 103100 000000
1672 002163' 001000 000340
1673 002164' 103200 000132 RDBUFF ; 1032-33
1674 002165' 342006 401340
1675 002166' 103300 000300
1676 002167' 732006 402340
1677 002170' 103400 000132 RDBUFF ; 1034-35
1678 002171' 342006 401340
1679 002172' 103500 000300
1680 002173' 732006 402340
1681 002174' 103600 000132 RDBUFF ; 1036-37
1682 002175' 342006 401340
1683 002176' 103700 000300
1684 002177' 732006 402340
1685 002200' 104030 000000 MWORD <CJS,J=3000> ; 1040
1686 002201' 000000 000020
1687 002202' 104150 000000 MWORD <CJP,J=5000,CENA,CCPP> ; 1041
1688 002203' 000400 150060
1689 002204' 104210 360000 MWORD <RPCT,J=1036,S0B,PLUS,B=16,D=2,CRY> ; 1042
1690 002205' 302007 000620
1691
1692 ; Read each word of buffer B and verify data and that no
1693 ; parity error occurred
1694
1695 002206' 104300 000000 MWORD <CONT,S0B,AND,B=16,D=2> ; 1043
1696 002207' 342007 000340
1697 002210' 104403 770000 MWORD <LDCT,J=377,S0B,PLUS,B=17,D=2,CRY> ; 1044
1698 002211' 302007 400700
1699 002212' 104500 000007 SELBUF (7) ; 1045-50
1700 002213' 732000 240340
1701 002214' 104600 002040
1702 002215' 431000 002340
1703 002216' 104700 000174
1704 002217' 000000 001340
1705 002220' 105000 000000
1706 002221' 001000 000340
1707 002222' 105100 000132 RDBUFF ; 1051-52
1708 002223' 342006 401340
1709 002224' 105200 000300
1710 002225' 732006 402340
1711 002226' 105300 000132 RDBUFF ; 1053-54
1712 002227' 342006 401340
1713 002230' 105400 000300
1714 002231' 732006 402340
1715 002232' 105500 000132 RDBUFF ; 1055-56
1716 002233' 342006 401340
1717 002234' 105600 000300
1718 002235' 732006 402340
1719 002236' 105730 000000 MWORD <CJS,J=3000> ; 1057
1720 002237' 000000 000020
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 12-3
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0791
1721 002240' 106050 000000 MWORD <CJP,J=5000,CENA,CCPP> ; 1060
1722 002241' 000400 150060
1723 002242' 106110 550000 MWORD <RPCT,J=1055,S0B,PLUS,B=16,D=2,CRY> ; 1061
1724 002243' 302007 000620
1725 002244' 106250 000000 MWORD <JMAP,J=5000,S0B,AND,B=17,D=2> ; 1062
1726 002245' 342007 400040
1727 002246' 106312 000000 MWORD <JMAP,J=1200> ; 1062
1728 002247' 000000 000040
1729
1730 ; Set mode for zero parity and maintenance mode, then
1731 ; transmit Buffer A
1732
1733 002250' 120000 000000 MWORD <ADDR=1200,CONT> ; 1200
1734 002251' 000000 000340
1735 002252' 120100 000002 SELBUF (2) ; 1201-04
1736 002253' 732000 240340
1737 002254' 120200 002040
1738 002255' 431000 002340
1739 002256' 120300 000174
1740 002257' 000000 001340
1741 002260' 120400 000000
1742 002261' 001000 000340
1743 002262' 120500 000360 SETMOD (360) ; 1205-07
1744 002263' 732000 240340
1745 002264' 120600 002040
1746 002265' 431000 002340
1747 002266' 120700 000274
1748 002267' 000000 001340
1749 002270' 121000 000000 TXMIT (0) ; 1210-12
1750 002271' 732000 240340
1751 002272' 121100 002040
1752 002273' 431000 002340
1753 002274' 121200 000314
1754 002275' 000000 001340
1755 002276' 121320 000000 MWORD <CJS,J=2000> ; 1213
1756 002277' 000000 000020
1757
1758 ; Read each word of buffer A and verify data and that a
1759 ; parity error occurred
1760
1761 002300' 121400 000000 MWORD <CONT,S0B,AND,A=16,B=17,D=2> ; 1214
1762 002301' 342167 400340
1763 002302' 121503 770000 MWORD <LDCT,J=377,S0B,PLUS,B=17,D=2,CRY> ; 1215
1764 002303' 302007 400700
1765 002304' 121600 000006 SELBUF (6) ; 1216-21
1766 002305' 732000 240340
1767 002306' 121700 002040
1768 002307' 431000 002340
1769 002310' 122000 000174
1770 002311' 000000 001340
1771 002312' 122100 000000
1772 002313' 001000 000340
1773 002314' 122200 000132 RDBUFF ; 1222-23
1774 002315' 342006 401340
1775 002316' 122300 000300
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 12-4
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0792
1776 002317' 732006 402340
1777 002320' 122400 000132 RDBUFF ; 1224-25
1778 002321' 342006 401340
1779 002322' 122500 000300
1780 002323' 732006 402340
1781 002324' 122600 000132 RDBUFF ; 1226-27
1782 002325' 342006 401340
1783 002326' 122700 000300
1784 002327' 732006 402340
1785 002330' 123030 000000 MWORD <CJS,J=3000> ; 1230
1786 002331' 000000 000020
1787 002332' 123112 330000 MWORD <CJP,J=1233,CENA,CCPP> ; 1231
1788 002333' 000400 150060
1789 002334' 123250 000000 MWORD <JMAP,J=5000> ; 1232
1790 002335' 000000 000040
1791 002336' 123312 260000 MWORD <RPCT,J=1226,S0B,PLUS,B=16,D=2,CRY> ; 1233
1792 002337' 302007 000620
1793 002340' 123413 000000 MWORD <JMAP,J=1300> ; 1234
1794 002341' 000000 000040
1795
1796 ; Set mode for zero parity and maintenance mode, then
1797 ; transmit Buffer B
1798
1799 002342' 130000 000000 MWORD <ADDR=1300,CONT> ; 1300
1800 002343' 000000 000340
1801 002344' 130100 000003 SELBUF (3) ; 1301-04
1802 002345' 732000 240340
1803 002346' 130200 002040
1804 002347' 431000 002340
1805 002350' 130300 000174
1806 002351' 000000 001340
1807 002352' 130400 000000
1808 002353' 001000 000340
1809 002354' 130500 000361 SETMOD (361) ; 1305-07
1810 002355' 732000 240340
1811 002356' 130600 002040
1812 002357' 431000 002340
1813 002360' 130700 000274
1814 002361' 000000 001340
1815 002362' 131000 000201 TXMIT (201) ; 1310-12
1816 002363' 732000 240340
1817 002364' 131100 002040
1818 002365' 431000 002340
1819 002366' 131200 000314
1820 002367' 000000 001340
1821 002370' 131320 000000 MWORD <CJS,J=2000> ; 1313
1822 002371' 000000 000020
1823
1824 ; Read each word of buffer B and verify data and that a
1825 ; parity error occurred
1826
1827 002372' 131400 000000 MWORD <CONT,S0B,AND,A=16,B=17,D=2> ; 1314
1828 002373' 342167 400340
1829 002374' 131503 770000 MWORD <LDCT,J=377,S0B,PLUS,B=17,D=2,CRY> ; 1315
1830 002375' 302007 400700
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 12-5
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0793
1831 002376' 131600 000007 SELBUF (7) ; 1316-21
1832 002377' 732000 240340
1833 002400' 131700 002040
1834 002401' 431000 002340
1835 002402' 132000 000174
1836 002403' 000000 001340
1837 002404' 132100 000000
1838 002405' 001000 000340
1839 002406' 132200 000132 RDBUFF ; 1322-23
1840 002407' 342006 401340
1841 002410' 132300 000300
1842 002411' 732006 402340
1843 002412' 132400 000132 RDBUFF ; 1324-25
1844 002413' 342006 401340
1845 002414' 132500 000300
1846 002415' 732006 402340
1847 002416' 132600 000132 RDBUFF ; 1326-27
1848 002417' 342006 401340
1849 002420' 132700 000300
1850 002421' 732006 402340
1851 002422' 133030 000000 MWORD <CJS,J=3000> ; 1330
1852 002423' 000000 000020
1853 002424' 133113 330000 MWORD <CJP,J=1333,CENA,CCPP> ; 1331
1854 002425' 000400 150060
1855 002426' 133250 000000 MWORD <JMAP,J=5000> ; 1332
1856 002427' 000000 000040
1857 002430' 133313 260000 MWORD <RPCT,J=1326,S0B,PLUS,B=16,D=2,CRY> ; 1333
1858 002431' 302007 000620
1859 002432' 133450 000000 MWORD <JMAP,J=5000,S0B,AND,B=17,D=2> ; 1334
1860 002433' 342007 400040
1861
1862 ; Subroutine to wait for transmit to complete
1863
1864 002434' 200000 200000 MWORD <ADDR=2000,LDCT,J=20> ; 2000
1865 002435' 000000 000300
1866 002436' 200120 010000 MWORD <RPCT,J=2001> ; 2001
1867 002437' 000000 000220
1868 002440' 200220 040000 MWORD <CJP,J=2004,CENA,CCAF> ; 2002
1869 002441' 000400 050060
1870 002442' 200320 020000 MWORD <JMAP,J=2002> ; 2003
1871 002443' 000000 000040
1872 002444' 200400 000000 MWORD <CRTN> ; 2004
1873 002445' 000000 000240
1874
1875 ; Subroutine to write the length bytes
1876
1877 002446' 210000 000004 MWORD <ADDR=2100,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2100
1878 002447' 732000 240340
1879 002450' 210100 002040 LDXBUF ; 2101-02
1880 002451' 431000 002340
1881 002452' 210200 000214
1882 002453' 000000 001340
1883 002454' 210300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2103
1884 002455' 732000 240340
1885 002456' 210400 002040 LDXBUF ; 2104
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 12-6
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0794
1886 002457' 431000 002340
1887 002460' 210500 000214
1888 002461' 000000 001340
1889 002462' 210600 000000 MWORD <CRTN> ; 2105
1890 002463' 000000 000240
1891
1892 ;#********************************************************************
1893 ; Compare R15 and R16 and dispatch correctly on error
1894 ;#********************************************************************
1895
1896 002464' 300000 000000 MWORD <ADDR=3000,CONT,SAB,AND,A=14,B=15,D=2> ; 3000
1897 002465' 142146 400340
1898 002466' 300100 000000 MWORD <CONT,SAB,AND,A=14,B=16,D=2> ; 3001
1899 002467' 142147 000340
1900 002470' 300230 040000 MWORD <CJP,J=3004,SAB,XOR,A=15,B=16,D=1,CENA,CCFZ>
1901 002471' 161557 020060
1902 002472' 300350 000000 MWORD <JMAP,J=5000> ; 3003
1903 002473' 000000 000040
1904 002474' 300400 000000 MWORD <CRTN> ; 3004
1905 002475' 000000 000240
1906
1907 ;#********************************************************************
1908 ; MRESTA - Reset the Packet Buffer and Link modules
1909 ; MEXIT - Exit and write completion code to CSR
1910 ;#********************************************************************
1911
1912 002476' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
1913 002477' 000000000000#
1914 002500' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
1915 002501' 000000000000#
1916 002502' 777777 777777 -1
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 13
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0795
1917
1918 ;#********************************************************************
1919 ;* TEST 40 - LINK Parity Test
1920 ;
1921 ; Description: This test verifies the parity checking logic on
1922 ; the LINK module. A packet containing valid parity
1923 ; is looped back at the LINK. No parity error
1924 ; should result. Then a packet containing bad
1925 ; parity is looped back and parity error checked
1926 ; for.
1927 ;
1928 ; Procedure: KL> Load microcode
1929 ; KL> Port Clear
1930 ; KL> Start port
1931 ;
1932 ; UC> Set link controls to enable 'Valid REC PAR'.
1933 ; Start a transmit, verify that 'XBUF PE' does
1934 ; not appear in the receiver status register.
1935 ; UC> Set link controls to disable 'Valid REC PAR'.
1936 ; Start a transmit, verify that 'XBUF PE' does
1937 ; appear in the receiver status register.
1938 ; If failed - exit test with error code in EBUF
1939 ; Code 1 - Parity error detected during receive
1940 ; Code 2 - Parity error should have occurred but didn't
1941 ;
1942 ; KL> Read EBUF and determine test disposition
1943 ;
1944 ; FRU: Link Module
1945 ;#********************************************************************
1946
1947 ; Initialization
1948
1949 002503' 201 00 0 00 000000' TST40: MOVEI Z4 ; get address of module start
1950 002504' 260 17 0 00 002037* GO TRACE ; handle trace output
1951 002505' 201 01 0 00 002531' MOVEI 1,T40M ; set up microcode address
1952 002506' 260 17 0 00 002041* GO TLOAD ; load/verify it
1953 002507' 263 17 0 00 000000 RTN ; failed - exit test
1954
1955 ; Do the test
1956
1957 002510' 260 17 0 00 002043* GO MSTART ; start the test at 5777
1958 002511' 201 01 0 00 000062 MOVEI 1,^D50 ; set up wait of 50 ms
1959 002512' 260 17 0 00 002045* GO MWAIT ; wait for completion
1960
1961 ; Handle error printouts
1962
1963 002513' 027 00 0 00 002520' SCOPER MA40 ; print error message
1964 002514' 255 00 0 00 000000 JFCL ; loop on error
1965 002515' 254 00 0 00 002516' JRST TX40 ; altmode exit
1966
1967 ; End of test
1968
1969 002516' 260 17 0 00 002051* TX40: GO TSTEND ; handle end of test processing
1970 002517' 263 17 0 00 000000 RTN ; return
1971
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 13-1
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0796
1972 ; Error messages
1973
1974 002520' 240000 002522' MA40: CALL!TXNOT!MA40PN
1975 002521' 170000 003260' LAST!TXALL!MSG![ASCIZ /FRU: PILA Module/]
1976
1977 002522' 201 01 0 00 002526' MA40PN: MOVEI 1,MA40LS ; get list address
1978 002523' 201 02 0 00 000003 MOVEI 2,3 ; get list length
1979 002524' 260 17 0 00 002057* GO MPRINT ; print data
1980 002525' 263 17 0 00 000000 RTN ; return
1981
1982 002526' 037 00 0 00 003052' MA40LS: TMSGC <No failure detected>
1983 002527' 037 00 0 00 003414' TMSGC <Parity error occurred during receive>
1984 002530' 037 00 0 00 003424' TMSGC <Parity error should have occurred during receive but didn't>
1985
1986 ;#********************************************************************
1987 ; Microcode:
1988 ;#********************************************************************
1989
1990 ; Initialization
1991
1992 002531' 577700 000000 T40M: MWORD <ADDR=5777,JZ> ; 5777
1993 002532' 000000 000000
1994 002533' 000040 000000 MWORD <ADDR=0,CJS,J=4000> ; 0
1995 002534' 000000 000020
1996 002535' 000100 060000 MWORD <LDCT,J=6,S0B,AND,B=14,D=2> ; 1
1997 002536' 342006 000300
1998 002537' 000200 020000 MWORD <RPCT,J=2,S0B,PLUS,B=14,D=7,CRY> ; 2
1999 002540' 307006 000620
2000 002541' 000310 000000 MWORD <JMAP,J=1000,S0B,PLUS,B=14,D=2,CRY> ; 3
2001 002542' 302006 000440
2002
2003 ; R14 - 8 bit mask (377)
2004 ; R10 - Contains the transmit status read
2005 ; R15 - Actual data (right justified) (R10 without bits 5,6 set)
2006 ; R16 - Correct data (right justified)
2007 ; R17 - Completion code (right justified)
2008
2009 ; Set up transmit buffer
2010
2011 002543' 100010 010000 MWORD <ADDR=1000,JMAP,J=1001,S0A,OR,A=16,B=2,D=2>
2012 002544' 432161 000040
2013 002545' 100100 000002 SELBUF (2) ; 1001-04
2014 002546' 732000 240340
2015 002547' 100200 002040
2016 002550' 431000 002340
2017 002551' 100300 000174
2018 002552' 000000 001340
2019 002553' 100400 000000
2020 002554' 001000 000340
2021 002555' 100525 000000 MWORD <CJS,J=2500> ; 1005
2022 002556' 000000 000020
2023
2024 ; Call each segment
2025
2026 002557' 100611 000001 MWORD <CJS,J=1100,SD0,OR,B=17,D=2,SKCN,MGC=1> ; 1006
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 13-2
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0797
2027 002560' 732007 640020
2028 002561' 100712 000002 MWORD <CJS,J=1200,SD0,OR,B=17,D=2,SKCN,MGC=2> ; 1007
2029 002562' 732007 640020
2030 002563' 101050 000000 MWORD <JMAP,J=5000,S0A,AND,B=17,D=2> ; 1010
2031 002564' 442007 400040
2032
2033 ; (A) Set link controls to enable 'Valid REC PAR'.
2034 ; Start a transmit, verify that 'XBUF PE' does
2035 ; not appear in the receiver status register.
2036
2037 002565' 110020 000000 MWORD <ADDR=1100,CRTN,J=2000> ; 1100
2038 002566' 000000 000240
2039 002567' 110100 000240 SETMOD (240) ; 1101-03
2040 002570' 732000 240340
2041 002571' 110200 002040
2042 002572' 431000 002340
2043 002573' 110300 000274
2044 002574' 000000 001340
2045 002575' 110400 000377 DLINK (377) ; 1104-06
2046 002576' 732000 240340
2047 002577' 110500 002040
2048 002600' 431000 002340
2049 002601' 110600 000354
2050 002602' 000000 001340
2051 002603' 110700 000151 ELINK (151) ; 1107-11
2052 002604' 732000 240340
2053 002605' 111000 002040
2054 002606' 431000 002340
2055 002607' 111100 000154
2056 002610' 000000 001340
2057 002611' 111200 000000 TXMIT (0) ; 1112-14
2058 002612' 732000 240340
2059 002613' 111300 002040
2060 002614' 431000 002340
2061 002615' 111400 000314
2062 002616' 000000 001340
2063 002617' 111500 200000 MWORD <LDCT,J=20> ; 1115
2064 002620' 000000 000300
2065 002621' 111611 160000 MWORD <RPCT,J=1116> ; 1116
2066 002622' 000000 000220
2067 002623' 111711 210000 MWORD <CJP,J=1121,CENA,CCXA> ; 1117
2068 002624' 000400 070060
2069 002625' 112011 170000 MWORD <JMAP,J=1117> ; 1120
2070 002626' 000000 000040
2071 002627' 112100 000232 RDXSTA ; 1121-22
2072 002630' 342006 401340
2073 002631' 112200 000300
2074 002632' 732006 402340
2075 002633' 112300 000000 MWORD <CONT,S0A,OR,A=15,B=10,D=2> ; 1123
2076 002634' 432154 000340
2077 002635' 112400 000200 MWORD <CONT,SD0,AND,A=14,B=16,MGC=200,D=2> ; 1124
2078 002636' 742147 000340
2079 002637' 112500 000000 MWORD <CONT,SAB,AND,A=16,B=15,D=2> ; 1125
2080 002640' 142166 400340
2081 002641' 112600 000000 MWORD <CONT,S0A,AND,B=16,D=2> ; 1126
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 13-3
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0798
2082 002642' 442007 000340
2083 002643' 112711 310000 MWORD <CJP,J=1131,S0A,OR,A=15,D=1,CENA,CCFZ> ; 1127
2084 002644' 431550 020060
2085 002645' 113050 000000 MWORD <JMAP,J=5000> ; 1130
2086 002646' 000000 000040
2087 002647' 113100 000000 MWORD <CRTN> ; 1131
2088 002650' 000000 000240
2089
2090 ; (B) Set link controls to disable 'Valid REC PAR'.
2091 ; Start a transmit, verify that 'XBUF PE' does
2092 ; appear in the transmit status register.
2093
2094 002651' 120020 000000 MWORD <ADDR=1200,CRTN,J=2000> ; 1200
2095 002652' 000000 000240
2096 002653' 120100 000240 SETMOD (240) ; 1201-03
2097 002654' 732000 240340
2098 002655' 120200 002040
2099 002656' 431000 002340
2100 002657' 120300 000274
2101 002660' 000000 001340
2102 002661' 120400 000377 DLINK (377) ; 1204-06
2103 002662' 732000 240340
2104 002663' 120500 002040
2105 002664' 431000 002340
2106 002665' 120600 000354
2107 002666' 000000 001340
2108 002667' 120700 000111 ELINK (111) ; 1207-11
2109 002670' 732000 240340
2110 002671' 121000 002040
2111 002672' 431000 002340
2112 002673' 121100 000154
2113 002674' 000000 001340
2114 002675' 121200 000000 TXMIT (0) ; 1212-14
2115 002676' 732000 240340
2116 002677' 121300 002040
2117 002700' 431000 002340
2118 002701' 121400 000314
2119 002702' 000000 001340
2120 002703' 121500 200000 MWORD <LDCT,J=20> ; 1215
2121 002704' 000000 000300
2122 002705' 121612 160000 MWORD <RPCT,J=1216> ; 1216
2123 002706' 000000 000220
2124 002707' 121712 210000 MWORD <CJP,J=1221,CENA,CCXA> ; 1217
2125 002710' 000400 070060
2126 002711' 122012 170000 MWORD <JMAP,J=1217> ; 1220
2127 002712' 000000 000040
2128 002713' 122100 000232 RDXSTA ; 1221-22
2129 002714' 342006 401340
2130 002715' 122200 000300
2131 002716' 732006 402340
2132 002717' 122300 000000 MWORD <CONT,S0A,OR,A=15,B=10,D=2> ; 1223
2133 002720' 432154 000340
2134 002721' 122400 000200 MWORD <CONT,SD0,AND,A=14,B=16,MGC=200,D=2> ; 1224
2135 002722' 742147 000340
2136 002723' 122500 000000 MWORD <CONT,SAB,AND,A=16,B=15,D=2> ; 1225
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 13-4
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0799
2137 002724' 142166 400340
2138 002725' 122600 000000 MWORD <CONT,S0A,AND,B=16,D=2> ; 1226
2139 002726' 442007 000340
2140 002727' 122750 000000 MWORD <CJP,J=5000,S0A,OR,A=15,D=1,CENA,CCFZ> ; 1227
2141 002730' 431550 020060
2142 002731' 123000 000000 MWORD <CRTN> ; 1230
2143 002732' 000000 000240
2144
2145 ;#********************************************************************
2146 ; Subroutine reset the transmit buffer
2147 ;#********************************************************************
2148
2149 002733' 200000 000000 MWORD <ADDR=2000,CONT> ; 2000
2150 002734' 000000 000340
2151 002735' 200100 000002 SELBUF (2) ; 2001-04
2152 002736' 732000 240340
2153 002737' 200200 002040
2154 002740' 431000 002340
2155 002741' 200300 000174
2156 002742' 000000 001340
2157 002743' 200400 000000
2158 002744' 001000 000340
2159 002745' 200500 100000 MWORD <LDCT,J=10> ; 2005
2160 002746' 000000 000300
2161 002747' 200620 060000 MWORD <RPCT,J=2006> ; 2006
2162 002750' 000000 000220
2163 002751' 200700 000050 RSXSTA ; 2007
2164 002752' 000000 001340
2165 002753' 201000 100000 MWORD <LDCT,J=10> ; 2010
2166 002754' 000000 000300
2167 002755' 201120 110000 MWORD <RPCT,J=2011> ; 2011
2168 002756' 000000 000220
2169 002757' 201200 000050 RSXSTA ; 2012
2170 002760' 000000 001340
2171 002761' 201300 100000 MWORD <LDCT,J=10> ; 2013
2172 002762' 000000 000300
2173 002763' 201420 140000 MWORD <RPCT,J=2014> ; 2014
2174 002764' 000000 000220
2175 002765' 201500 000000 MWORD <CRTN> ; 2015
2176 002766' 000000 000240
2177
2178 ;#********************************************************************
2179 ; Subroutine to initialize the contents of a buffer
2180 ;#********************************************************************
2181
2182 002767' 250000 000004 MWORD <ADDR=2500,CONT,SD0,OR,D=2,SKCN,MGC=4> ; 2500
2183 002770' 732000 240340
2184 002771' 250100 002040 LDXBUF ; 2501-02
2185 002772' 431000 002340
2186 002773' 250200 000214
2187 002774' 000000 001340
2188 002775' 250300 000000 MWORD <CONT,SD0,OR,D=2,SKCN,MGC=0> ; 2503
2189 002776' 732000 240340
2190 002777' 250400 002040 LDXBUF ; 2504-05
2191 003000' 431000 002340
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 13-5
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0800
2192 003001' 250500 000214
2193 003002' 000000 001340
2194 003003' 250603 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2506
2195 003004' 342000 000300
2196 003005' 250700 002040 LDXBUF ; 2507-10
2197 003006' 431000 002340
2198 003007' 251000 000214
2199 003010' 000000 001340
2200 003011' 251100 000010 MWORD <CONT,SDA,AND,A=14,D=2,RDLM,MGC=10> ; 2511
2201 003012' 542140 220340
2202 003013' 251200 002040 LDXBUF ; 2512-13
2203 003014' 431000 002340
2204 003015' 251300 000214
2205 003016' 000000 001340
2206 003017' 251400 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2514
2207 003020' 472000 000340
2208 003021' 251500 002040 LDXBUF ; 2515-16
2209 003022' 431000 002340
2210 003023' 251600 000214
2211 003024' 000000 001340
2212 003025' 251700 000000 MWORD <CONT,S0A,XNOR,D=2> ; 2517
2213 003026' 472000 000340
2214 003027' 252000 002040 LDXBUF ; 2520-21
2215 003030' 431000 002340
2216 003031' 252100 000214
2217 003032' 000000 001340
2218 003033' 252203 770000 MWORD <LDCT,J=377,S0B,AND,D=2> ; 2522
2219 003034' 342000 000300
2220 003035' 252325 230000 MWORD <RPCT,J=2523,S0B,PLUS,D=2,CRY> ; 2523
2221 003036' 302000 000620
2222 003037' 252400 000000 MWORD <CRTN> ; 2524
2223 003040' 000000 000240
2224
2225 ;#********************************************************************
2226 ; MRESTA - Reset the Packet Buffer and Link modules
2227 ; MEXIT - Exit and write completion code to CSR
2228 ;#********************************************************************
2229
2230 003041' 777777 777776 SUBTAB (MRESTA) ; 4000 ..
2231 003042' 000000000000#
2232 003043' 777777 777776 SUBTAB (MEXIT) ; 5000 ..
2233 003044' 000000000000#
2234 003045' 777777 777777 -1
2235
2236 ;#********************************************************************
2237 ; End of DFCIA4.MAC
2238 ;#********************************************************************
2239
2240 XLIST
2241
NO ERRORS DETECTED
PROGRAM BREAK IS 003441
CPU TIME USED 04:36.793
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page 13-6
DFCIA4 MAC 6-Jun-83 09:58 Parity Tests SEQ 0801
146P CORE USED
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page S-1
DFCIA4 MAC 6-Jun-83 09:58 SYMBOL TABLE SEQ 0802
BPACK 000000 ext RDCSR 000000 ext TX37 002051' .MCCFZ 000037 spd
BUFF 000000 ext RDEBUF 000000 ext TX40 002516' .MCCPP 000037 spd
BUFGEN 000000 ext RDLAR 000000 ext TXALL 060000 000000 spd .MCCXA 000037 spd
CALL 200000 000000 spd RDNODE 000000 ext TXCTID 000000 ext .MCENA 000001 spd
CHINIT 000000 ext RSPONS 000000 ext TXNOT 040000 000000 spd .MCJP 000017 spd
CHKRSP 000000 ext RTN 263740 000000 UDEBUG 000000 ext .MCJS 000017 spd
CONPNT 000000 ext RUNTME 000000 ext Z4 000000' .MCONT 000017 spd
CPORT 000000 ext RWAIT 000000 ext $ARG2 000001 .MCRTN 000017 spd
CSRPNT 000000 ext SAVCOD 000000 ext $B 000056 .MCRY 000001 spd
CTABLE 000000 ext SAVCSR 000000 ext $CHR 000043 626456 .MD 000007 spd
CTYPE 000000 ext SAVEBU 000000 ext $GARG 000000 .MJ 007777 spd
CVALID 000000 ext SAVLAR 000000 ext %ADDR 002525 spd .MJMAP 000017 spd
DEBTIM 000000 ext SCOPER 027000 000000 %ML 252400 000000 spd .MJZ 000017 spd
ERESET 000000 ext SCOSW 000000 ext %MR 000240 spd .MLDCT 000017 spd
GO 260740 000000 SETENA 000000 ext .DATAI 000000 ext .MMGC 001777 spd
INSQUE 000000 ext SREPOR 000000 ext .DATAO 000000 ext .MOENA 000001 spd
IPACLR 000000 ext T33M 000034' ent .LA 000000 spd .MOR 000007 spd
LAST 010000 000000 spd T34M 000733' ent .LADDR 000100 000000 spd .MPLUS 000007 spd
LDCRAM 000000 ext T35M 001143' ent .LAND 000000 spd .MRDLM 000037 spd
LDCSR 000000 ext T36M 001413' ent .LB 000000 spd .MRPCT 000017 spd
LDEBUF 000000 ext T37M 002066' ent .LCCAF 000000 spd .MS0A 000007 spd
LDRAR 000000 ext T40M 002531' ent .LCCFZ 000000 spd .MS0B 000007 spd
MA33 000015' TBYTE 000000 ext .LCCPP 000000 spd .MSAB 000007 spd
MA33LS 000023' TCMD 000000 ext .LCCXA 000000 spd .MSD0 000007 spd
MA33PN 000017' TDPORT 000000 ext .LCENA 000000 spd .MSDA 000007 spd
MA34 000722' TEXEC 000000 ext .LCJP 000000 spd .MSELM 000007 spd
MA34LS 000730' TFLOAD 000000 ext .LCJS 000000 spd .MSELP 000007 spd
MA34PN 000724' TFMFLG 000000 ext .LCONT 000000 spd .MSKCN 000037 spd
MA35 001133' TIDLE 000000 ext .LCRTN 000000 spd .MXNOR 000007 spd
MA35LS 001141' TLOAD 002506' ext .LCRY 000000 spd .MXOR 000007 spd
MA35PN 001135' TPAT 000000 ext .LD 000000 spd .RA 000010 000000 spd
MA36 001377' TPCB 000000 ext .LJ 010000 spd .RAND 040000 000000 spd
MA36LS 001405' TPTFLG 000000 ext .LJMAP 000000 spd .RB 400000 spd
MA36PN 001401' TRACE 002504' ext .LJZ 000000 spd .RCCAF 050000 spd
MA37 002053' TREGD 000000 ext .LLDCT 000000 spd .RCCFZ 020000 spd
MA37LS 002061' TREGN 000000 ext .LMGC 000001 spd .RCCPP 150000 spd
MA37PN 002055' TRESPC 000000 ext .LOENA 002000 spd .RCCXA 070000 spd
MA40 002520' TRSFLG 000000 ext .LOR 000000 spd .RCENA 000400 000000 spd
MA40LS 002526' TST33 000000' ent .LPLUS 000000 spd .RCJP 000060 spd
MA40PN 002522' TST34 000705' ent .LRDLM 000000 spd .RCJS 000020 spd
MEXIT 000000 ext TST35 001116' ent .LRPCT 000000 spd .RCONT 000340 spd
MPRINT 002524' ext TST36 001362' ent .LS0A 000000 spd .RCRTN 000240 spd
MRESET 000000 ext TST37 002036' ent .LS0B 000000 spd .RCRY 000400 spd
MRESTA 000000 ext TST40 002503' ent .LSAB 000000 spd .RD 001000 000000 spd
MSG 100000 000000 spd TSTATA 000000 ext .LSD0 000000 spd .RJ 000000 spd
MSTART 002510' ext TSTATC 000000 ext .LSDA 000000 spd .RJMAP 000040 spd
MVPNT 000000 ext TSTEND 002516' ext .LSELM 000000 spd .RJZ 000000 spd
MWAIT 002512' ext TSTREP 000000 ext .LSELP 000000 spd .RLDCT 000300 spd
PACKET 000000 ext TSTSUB 000000 ext .LSKCN 000000 spd .RMGC 000000 spd
PATPNT 000000 ext TTPNT 000000 ext .LXNOR 000000 spd .ROENA 000000 spd
PCB 000000 ext TWORD 000000 ext .LXOR 000000 spd .ROR 030000 000000 spd
PNTMSG 037000 000000 TX33 000013' .MA 000017 spd .RPLUS 000000 spd
QFDG10 000000 ext TX34 000720' .MAND 000007 spd .RRDLM 220000 spd
QFDG7 000000 ext TX35 001131' .MB 000017 spd .RRPCT 000220 spd
RDCRAM 000000 ext TX36 001375' .MCCAF 000037 spd .RS0A 400000 000000 spd
.MAIN MACRO %53A(1152) 19:01 29-Oct-84 Page S-2
DFCIA4 MAC 6-Jun-83 09:58 SYMBOL TABLE SEQ 0803
.RS0B 300000 000000 spd
.RSAB 100000 000000 spd
.RSD0 700000 000000 spd
.RSDA 500000 000000 spd
.RSELM 002000 spd
.RSELP 001000 spd
.RSKCN 240000 spd
.RXNOR 070000 000000 spd
.RXOR 060000 000000 spd
BPACK 19#
BUFF 15# SEQ 0804
BUFGEN 33#
CALL 122 683 905 1160 1576 1974
CHINIT 29#
CHKRSP 19#
CONPNT 18#
CPORT 18#
CSRPNT 15#
CTABLE 18#
CTYPE 18#
CVALID 18#
DEBTIM 29#
ERESET 29#
INSQUE 19#
IPACLR 29#
LAST 123 684 906 1161 1577 1975
LDCRAM 28#
LDCSR 28#
LDEBUF 28#
LDRAR 28#
MA33 111 122#
MA33LS 125 130#
MA33PN 122 125#
MA34 672 683#
MA34LS 686 691#
MA34PN 683 686#
MA35 894 905#
MA35LS 908 913#
MA35PN 905 908#
MA36 1149 1160#
MA36LS 1163 1168#
MA36PN 1160 1163#
MA37 1565 1576#
MA37LS 1579 1584#
MA37PN 1576 1579#
MA40 1963 1974#
MA40LS 1977 1982#
MA40PN 1974 1977#
MEXIT 23# 626 847 1094 1500 1915 2233
MPRINT 23# 127 688 910 1165 1581 1979
MRESET 23#
MRESTA 23# 624 845 1092 1498 1913 2231
MSG 123 684 906 1161 1577 1975
MSTART 23# 105 666 888 1143 1559 1957
MVPNT 14#
MWAIT 23# 107 668 890 1145 1561 1959
PACKET 19#
PATPNT 33#
PCB 15#
QFDG10 19#
QFDG7 19#
RDCRAM 28#
RDCSR 28#
RDEBUF 28# SEQ 0805
RDLAR 28#
RDNODE 14#
RSPONS 19#
RUNTME 29#
RWAIT 19#
SAVCOD 24#
SAVCSR 24#
SAVEBU 24#
SAVLAR 24#
SCOSW 33#
SETENA 14#
SREPOR 18#
T33M 10 99 148#
T34M 10 660 701#
T35M 10 882 922#
T36M 10 1137 1181#
T37M 10 1553 1596#
T40M 10 1951 1992#
TBYTE 17#
TCMD 16#
TDPORT 17#
TEXEC 16#
TFLOAD 14#
TFMFLG 16#
TIDLE 14#
TLOAD 14# 15# 100 661 883 1138 1554 1952
TPAT 17#
TPCB 14#
TPTFLG 17#
TRACE 15# 98 659 881 1136 1552 1950
TREGD 17#
TREGN 17#
TRESPC 16#
TRSFLG 16#
TST33 9 97#
TST34 9 658#
TST35 9 880#
TST36 9 1135#
TST37 9 1551#
TST40 9 1949#
TSTATA 16#
TSTATC 16#
TSTEND 14# 117 678 900 1155 1571 1969
TSTREP 15#
TSTSUB 15#
TTPNT 16#
TWORD 17#
TX33 113 117#
TX34 674 678#
TX35 896 900#
TX36 1151 1155#
TX37 1567 1571#
TX40 1965 1969# SEQ 0806
TXALL 123 684 906 1161 1577 1975
TXCTID 17#
TXNOT 122 683 905 1160 1576 1974
UDEBUG 15#
Z4 39# 97 658 880 1135 1551 1949
$ARG2 148# 148 150# 150 152# 152 154# 154 156# 156 167# 167 169# 169
171# 171 173# 173 175# 175 177# 177 182# 182 184# 184 186# 186
188# 188 190# 190 192# 192 194# 194 196# 196 198# 198 204# 204
206# 206 208# 208 210# 210 212# 212 214# 214 216# 216 218# 218
220# 220 222# 222 228# 228 230# 230 232# 232 234# 234 236# 236
238# 238 240# 240 242# 242 244# 244 246# 246 248# 248 250# 250
252# 252 254# 254 256# 256 262# 262 264# 264 266# 266 268# 268
270# 270 272# 272 274# 274 276# 276 278# 278 280# 280 282# 282
284# 284 286# 286 288# 288 290# 290 292# 292 294# 294 296# 296
298# 298 300# 300 302# 302 304# 304 306# 306 312# 312 314# 314
316# 316 318# 318 320# 320 322# 322 324# 324 326# 326 328# 328
330# 330 332# 332 334# 334 336# 336 338# 338 340# 340 342# 342
344# 344 346# 346 348# 348 350# 350 352# 352 354# 354 356# 356
361# 361 363# 363 365# 365 367# 367 369# 369 371# 371 373# 373
375# 375 377# 377 379# 379 381# 381 383# 383 385# 385 387# 387
389# 389 391# 391 393# 393 395# 395 397# 397 399# 399 401# 401
403# 403 405# 405 412# 412 414# 414 416# 416 418# 418 420# 420
422# 422 424# 424 426# 426 428# 428 430# 430 432# 432 434# 434
436# 436 438# 438 440# 440 442# 442 444# 444 446# 446 448# 448
450# 450 452# 452 454# 454 456# 456 458# 458 460# 460 466# 466
468# 468 470# 470 472# 472 474# 474 476# 476 478# 478 480# 480
482# 482 484# 484 486# 486 488# 488 490# 490 492# 492 494# 494
496# 496 498# 498 500# 500 502# 502 504# 504 506# 506 508# 508
510# 510 512# 512 518# 518 520# 520 522# 522 524# 524 526# 526
528# 528 530# 530 532# 532 534# 534 536# 536 538# 538 540# 540
542# 542 544# 544 546# 546 548# 548 550# 550 552# 552 554# 554
556# 556 558# 558 560# 560 562# 562 564# 564 566# 566 568# 568
575# 575 577# 577 579# 579 581# 581 583# 583 585# 585 587# 587
589# 589 591# 591 593# 593 595# 595 597# 597 599# 599 601# 601
603# 603 605# 605 607# 607 609# 609 611# 611 613# 613 615# 615
701# 701 703# 703 705# 705 707# 707 709# 709 720# 720 722# 722
724# 724 726# 726 728# 728 730# 730 736# 736 738# 738 740# 740
742# 742 744# 744 746# 746 748# 748 750# 750 752# 752 754# 754
756# 756 758# 758 760# 760 762# 762 767# 767 769# 769 771# 771
773# 773 778# 778 780# 780 785# 785 787# 787 789# 789 796# 796
798# 798 800# 800 802# 802 804# 804 806# 806 808# 808 810# 810
812# 812 814# 814 816# 816 818# 818 820# 820 822# 822 824# 824
826# 826 828# 828 830# 830 832# 832 834# 834 836# 836 922# 922
924# 924 926# 926 928# 928 930# 930 941# 941 943# 943 945# 945
947# 947 949# 949 951# 951 957# 957 959# 959 961# 961 963# 963
965# 965 967# 967 969# 969 971# 971 973# 973 975# 975 977# 977
979# 979 981# 981 983# 983 985# 985 987# 987 989# 989 991# 991
997# 997 999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009
1011# 1011 1013# 1013 1015# 1015 1017# 1017 1022# 1022 1024# 1024 1026# 1026
1028# 1028 1030# 1030 1032# 1032 1034# 1034 1036# 1036 1043# 1043 1045# 1045
1047# 1047 1049# 1049 1051# 1051 1053# 1053 1055# 1055 1057# 1057 1059# 1059
1061# 1061 1063# 1063 1065# 1065 1067# 1067 1069# 1069 1071# 1071 1073# 1073
1075# 1075 1077# 1077 1079# 1079 1081# 1081 1083# 1083 1181# 1181 1183# 1183 SEQ 0807
1185# 1185 1187# 1187 1189# 1189 1191# 1191 1193# 1193 1195# 1195 1197# 1197
1199# 1199 1201# 1201 1203# 1203 1214# 1214 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1232# 1232 1234# 1234
1239# 1239 1241# 1241 1243# 1243 1245# 1245 1247# 1247 1249# 1249 1251# 1251
1253# 1253 1255# 1255 1257# 1257 1263# 1263 1265# 1265 1267# 1267 1269# 1269
1271# 1271 1273# 1273 1275# 1275 1282# 1282 1284# 1284 1286# 1286 1288# 1288
1290# 1290 1292# 1292 1294# 1294 1296# 1296 1298# 1298 1300# 1300 1302# 1302
1304# 1304 1306# 1306 1308# 1308 1310# 1310 1312# 1312 1318# 1318 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1347# 1347 1349# 1349 1351# 1351 1353# 1353
1355# 1355 1357# 1357 1359# 1359 1361# 1361 1363# 1363 1365# 1365 1367# 1367
1369# 1369 1371# 1371 1373# 1373 1375# 1375 1377# 1377 1379# 1379 1381# 1381
1383# 1383 1385# 1385 1387# 1387 1389# 1389 1391# 1391 1398# 1398 1400# 1400
1402# 1402 1404# 1404 1406# 1406 1408# 1408 1410# 1410 1412# 1412 1414# 1414
1416# 1416 1418# 1418 1420# 1420 1422# 1422 1424# 1424 1426# 1426 1428# 1428
1430# 1430 1432# 1432 1434# 1434 1436# 1436 1438# 1438 1440# 1440 1442# 1442
1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457 1459# 1459 1461# 1461
1463# 1463 1465# 1465 1467# 1467 1469# 1469 1471# 1471 1473# 1473 1475# 1475
1477# 1477 1479# 1479 1481# 1481 1483# 1483 1485# 1485 1487# 1487 1489# 1489
1596# 1596 1598# 1598 1600# 1600 1602# 1602 1604# 1604 1614# 1614 1616# 1616
1618# 1618 1620# 1620 1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630
1632# 1632 1637# 1637 1639# 1639 1641# 1641 1643# 1643 1645# 1645 1647# 1647
1649# 1649 1651# 1651 1653# 1653 1659# 1659 1661# 1661 1663# 1663 1665# 1665
1667# 1667 1669# 1669 1671# 1671 1673# 1673 1675# 1675 1677# 1677 1679# 1679
1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689 1695# 1695 1697# 1697
1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709 1711# 1711
1713# 1713 1715# 1715 1717# 1717 1719# 1719 1721# 1721 1723# 1723 1725# 1725
1727# 1727 1733# 1733 1735# 1735 1737# 1737 1739# 1739 1741# 1741 1743# 1743
1745# 1745 1747# 1747 1749# 1749 1751# 1751 1753# 1753 1755# 1755 1761# 1761
1763# 1763 1765# 1765 1767# 1767 1769# 1769 1771# 1771 1773# 1773 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1791# 1791 1793# 1793 1799# 1799 1801# 1801 1803# 1803 1805# 1805 1807# 1807
1809# 1809 1811# 1811 1813# 1813 1815# 1815 1817# 1817 1819# 1819 1821# 1821
1827# 1827 1829# 1829 1831# 1831 1833# 1833 1835# 1835 1837# 1837 1839# 1839
1841# 1841 1843# 1843 1845# 1845 1847# 1847 1849# 1849 1851# 1851 1853# 1853
1855# 1855 1857# 1857 1859# 1859 1864# 1864 1866# 1866 1868# 1868 1870# 1870
1872# 1872 1877# 1877 1879# 1879 1881# 1881 1883# 1883 1885# 1885 1887# 1887
1889# 1889 1896# 1896 1898# 1898 1900# 1900 1902# 1902 1904# 1904 1992# 1992
1994# 1994 1996# 1996 1998# 1998 2000# 2000 2011# 2011 2013# 2013 2015# 2015
2017# 2017 2019# 2019 2021# 2021 2026# 2026 2028# 2028 2030# 2030 2037# 2037
2039# 2039 2041# 2041 2043# 2043 2045# 2045 2047# 2047 2049# 2049 2051# 2051
2053# 2053 2055# 2055 2057# 2057 2059# 2059 2061# 2061 2063# 2063 2065# 2065
2067# 2067 2069# 2069 2071# 2071 2073# 2073 2075# 2075 2077# 2077 2079# 2079
2081# 2081 2083# 2083 2085# 2085 2087# 2087 2094# 2094 2096# 2096 2098# 2098
2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108 2110# 2110 2112# 2112
2114# 2114 2116# 2116 2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126
2128# 2128 2130# 2130 2132# 2132 2134# 2134 2136# 2136 2138# 2138 2140# 2140
2142# 2142 2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159
2161# 2161 2163# 2163 2165# 2165 2167# 2167 2169# 2169 2171# 2171 2173# 2173
2175# 2175 2182# 2182 2184# 2184 2186# 2186 2188# 2188 2190# 2190 2192# 2192
2194# 2194 2196# 2196 2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206
2208# 2208 2210# 2210 2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220
2222# 2222 SEQ 0808
$B 148# 148 150# 150 152# 152 154# 154 156# 156 167# 167 169# 169
171# 171 173# 173 175# 175 177# 177 182# 182 184# 184 186# 186
188# 188 190# 190 192# 192 194# 194 196# 196 198# 198 204# 204
206# 206 208# 208 210# 210 212# 212 214# 214 216# 216 218# 218
220# 220 222# 222 228# 228 230# 230 232# 232 234# 234 236# 236
238# 238 240# 240 242# 242 244# 244 246# 246 248# 248 250# 250
252# 252 254# 254 256# 256 262# 262 264# 264 266# 266 268# 268
270# 270 272# 272 274# 274 276# 276 278# 278 280# 280 282# 282
284# 284 286# 286 288# 288 290# 290 292# 292 294# 294 296# 296
298# 298 300# 300 302# 302 304# 304 306# 306 312# 312 314# 314
316# 316 318# 318 320# 320 322# 322 324# 324 326# 326 328# 328
330# 330 332# 332 334# 334 336# 336 338# 338 340# 340 342# 342
344# 344 346# 346 348# 348 350# 350 352# 352 354# 354 356# 356
361# 361 363# 363 365# 365 367# 367 369# 369 371# 371 373# 373
375# 375 377# 377 379# 379 381# 381 383# 383 385# 385 387# 387
389# 389 391# 391 393# 393 395# 395 397# 397 399# 399 401# 401
403# 403 405# 405 412# 412 414# 414 416# 416 418# 418 420# 420
422# 422 424# 424 426# 426 428# 428 430# 430 432# 432 434# 434
436# 436 438# 438 440# 440 442# 442 444# 444 446# 446 448# 448
450# 450 452# 452 454# 454 456# 456 458# 458 460# 460 466# 466
468# 468 470# 470 472# 472 474# 474 476# 476 478# 478 480# 480
482# 482 484# 484 486# 486 488# 488 490# 490 492# 492 494# 494
496# 496 498# 498 500# 500 502# 502 504# 504 506# 506 508# 508
510# 510 512# 512 518# 518 520# 520 522# 522 524# 524 526# 526
528# 528 530# 530 532# 532 534# 534 536# 536 538# 538 540# 540
542# 542 544# 544 546# 546 548# 548 550# 550 552# 552 554# 554
556# 556 558# 558 560# 560 562# 562 564# 564 566# 566 568# 568
575# 575 577# 577 579# 579 581# 581 583# 583 585# 585 587# 587
589# 589 591# 591 593# 593 595# 595 597# 597 599# 599 601# 601
603# 603 605# 605 607# 607 609# 609 611# 611 613# 613 615# 615
701# 701 703# 703 705# 705 707# 707 709# 709 720# 720 722# 722
724# 724 726# 726 728# 728 730# 730 736# 736 738# 738 740# 740
742# 742 744# 744 746# 746 748# 748 750# 750 752# 752 754# 754
756# 756 758# 758 760# 760 762# 762 767# 767 769# 769 771# 771
773# 773 778# 778 780# 780 785# 785 787# 787 789# 789 796# 796
798# 798 800# 800 802# 802 804# 804 806# 806 808# 808 810# 810
812# 812 814# 814 816# 816 818# 818 820# 820 822# 822 824# 824
826# 826 828# 828 830# 830 832# 832 834# 834 836# 836 922# 922
924# 924 926# 926 928# 928 930# 930 941# 941 943# 943 945# 945
947# 947 949# 949 951# 951 957# 957 959# 959 961# 961 963# 963
965# 965 967# 967 969# 969 971# 971 973# 973 975# 975 977# 977
979# 979 981# 981 983# 983 985# 985 987# 987 989# 989 991# 991
997# 997 999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009
1011# 1011 1013# 1013 1015# 1015 1017# 1017 1022# 1022 1024# 1024 1026# 1026
1028# 1028 1030# 1030 1032# 1032 1034# 1034 1036# 1036 1043# 1043 1045# 1045
1047# 1047 1049# 1049 1051# 1051 1053# 1053 1055# 1055 1057# 1057 1059# 1059
1061# 1061 1063# 1063 1065# 1065 1067# 1067 1069# 1069 1071# 1071 1073# 1073
1075# 1075 1077# 1077 1079# 1079 1081# 1081 1083# 1083 1181# 1181 1183# 1183
1185# 1185 1187# 1187 1189# 1189 1191# 1191 1193# 1193 1195# 1195 1197# 1197
1199# 1199 1201# 1201 1203# 1203 1214# 1214 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1232# 1232 1234# 1234
1239# 1239 1241# 1241 1243# 1243 1245# 1245 1247# 1247 1249# 1249 1251# 1251
1253# 1253 1255# 1255 1257# 1257 1263# 1263 1265# 1265 1267# 1267 1269# 1269 SEQ 0809
1271# 1271 1273# 1273 1275# 1275 1282# 1282 1284# 1284 1286# 1286 1288# 1288
1290# 1290 1292# 1292 1294# 1294 1296# 1296 1298# 1298 1300# 1300 1302# 1302
1304# 1304 1306# 1306 1308# 1308 1310# 1310 1312# 1312 1318# 1318 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1347# 1347 1349# 1349 1351# 1351 1353# 1353
1355# 1355 1357# 1357 1359# 1359 1361# 1361 1363# 1363 1365# 1365 1367# 1367
1369# 1369 1371# 1371 1373# 1373 1375# 1375 1377# 1377 1379# 1379 1381# 1381
1383# 1383 1385# 1385 1387# 1387 1389# 1389 1391# 1391 1398# 1398 1400# 1400
1402# 1402 1404# 1404 1406# 1406 1408# 1408 1410# 1410 1412# 1412 1414# 1414
1416# 1416 1418# 1418 1420# 1420 1422# 1422 1424# 1424 1426# 1426 1428# 1428
1430# 1430 1432# 1432 1434# 1434 1436# 1436 1438# 1438 1440# 1440 1442# 1442
1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457 1459# 1459 1461# 1461
1463# 1463 1465# 1465 1467# 1467 1469# 1469 1471# 1471 1473# 1473 1475# 1475
1477# 1477 1479# 1479 1481# 1481 1483# 1483 1485# 1485 1487# 1487 1489# 1489
1596# 1596 1598# 1598 1600# 1600 1602# 1602 1604# 1604 1614# 1614 1616# 1616
1618# 1618 1620# 1620 1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630
1632# 1632 1637# 1637 1639# 1639 1641# 1641 1643# 1643 1645# 1645 1647# 1647
1649# 1649 1651# 1651 1653# 1653 1659# 1659 1661# 1661 1663# 1663 1665# 1665
1667# 1667 1669# 1669 1671# 1671 1673# 1673 1675# 1675 1677# 1677 1679# 1679
1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689 1695# 1695 1697# 1697
1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709 1711# 1711
1713# 1713 1715# 1715 1717# 1717 1719# 1719 1721# 1721 1723# 1723 1725# 1725
1727# 1727 1733# 1733 1735# 1735 1737# 1737 1739# 1739 1741# 1741 1743# 1743
1745# 1745 1747# 1747 1749# 1749 1751# 1751 1753# 1753 1755# 1755 1761# 1761
1763# 1763 1765# 1765 1767# 1767 1769# 1769 1771# 1771 1773# 1773 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1791# 1791 1793# 1793 1799# 1799 1801# 1801 1803# 1803 1805# 1805 1807# 1807
1809# 1809 1811# 1811 1813# 1813 1815# 1815 1817# 1817 1819# 1819 1821# 1821
1827# 1827 1829# 1829 1831# 1831 1833# 1833 1835# 1835 1837# 1837 1839# 1839
1841# 1841 1843# 1843 1845# 1845 1847# 1847 1849# 1849 1851# 1851 1853# 1853
1855# 1855 1857# 1857 1859# 1859 1864# 1864 1866# 1866 1868# 1868 1870# 1870
1872# 1872 1877# 1877 1879# 1879 1881# 1881 1883# 1883 1885# 1885 1887# 1887
1889# 1889 1896# 1896 1898# 1898 1900# 1900 1902# 1902 1904# 1904 1992# 1992
1994# 1994 1996# 1996 1998# 1998 2000# 2000 2011# 2011 2013# 2013 2015# 2015
2017# 2017 2019# 2019 2021# 2021 2026# 2026 2028# 2028 2030# 2030 2037# 2037
2039# 2039 2041# 2041 2043# 2043 2045# 2045 2047# 2047 2049# 2049 2051# 2051
2053# 2053 2055# 2055 2057# 2057 2059# 2059 2061# 2061 2063# 2063 2065# 2065
2067# 2067 2069# 2069 2071# 2071 2073# 2073 2075# 2075 2077# 2077 2079# 2079
2081# 2081 2083# 2083 2085# 2085 2087# 2087 2094# 2094 2096# 2096 2098# 2098
2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108 2110# 2110 2112# 2112
2114# 2114 2116# 2116 2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126
2128# 2128 2130# 2130 2132# 2132 2134# 2134 2136# 2136 2138# 2138 2140# 2140
2142# 2142 2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159
2161# 2161 2163# 2163 2165# 2165 2167# 2167 2169# 2169 2171# 2171 2173# 2173
2175# 2175 2182# 2182 2184# 2184 2186# 2186 2188# 2188 2190# 2190 2192# 2192
2194# 2194 2196# 2196 2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206
2208# 2208 2210# 2210 2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220
2222# 2222
$CHR 148# 148 150# 150 152# 152 154# 154 156# 156 167# 167 169# 169
171# 171 173# 173 175# 175 177# 177 182# 182 184# 184 186# 186
188# 188 190# 190 192# 192 194# 194 196# 196 198# 198 204# 204
206# 206 208# 208 210# 210 212# 212 214# 214 216# 216 218# 218
220# 220 222# 222 228# 228 230# 230 232# 232 234# 234 236# 236 SEQ 0810
238# 238 240# 240 242# 242 244# 244 246# 246 248# 248 250# 250
252# 252 254# 254 256# 256 262# 262 264# 264 266# 266 268# 268
270# 270 272# 272 274# 274 276# 276 278# 278 280# 280 282# 282
284# 284 286# 286 288# 288 290# 290 292# 292 294# 294 296# 296
298# 298 300# 300 302# 302 304# 304 306# 306 312# 312 314# 314
316# 316 318# 318 320# 320 322# 322 324# 324 326# 326 328# 328
330# 330 332# 332 334# 334 336# 336 338# 338 340# 340 342# 342
344# 344 346# 346 348# 348 350# 350 352# 352 354# 354 356# 356
361# 361 363# 363 365# 365 367# 367 369# 369 371# 371 373# 373
375# 375 377# 377 379# 379 381# 381 383# 383 385# 385 387# 387
389# 389 391# 391 393# 393 395# 395 397# 397 399# 399 401# 401
403# 403 405# 405 412# 412 414# 414 416# 416 418# 418 420# 420
422# 422 424# 424 426# 426 428# 428 430# 430 432# 432 434# 434
436# 436 438# 438 440# 440 442# 442 444# 444 446# 446 448# 448
450# 450 452# 452 454# 454 456# 456 458# 458 460# 460 466# 466
468# 468 470# 470 472# 472 474# 474 476# 476 478# 478 480# 480
482# 482 484# 484 486# 486 488# 488 490# 490 492# 492 494# 494
496# 496 498# 498 500# 500 502# 502 504# 504 506# 506 508# 508
510# 510 512# 512 518# 518 520# 520 522# 522 524# 524 526# 526
528# 528 530# 530 532# 532 534# 534 536# 536 538# 538 540# 540
542# 542 544# 544 546# 546 548# 548 550# 550 552# 552 554# 554
556# 556 558# 558 560# 560 562# 562 564# 564 566# 566 568# 568
575# 575 577# 577 579# 579 581# 581 583# 583 585# 585 587# 587
589# 589 591# 591 593# 593 595# 595 597# 597 599# 599 601# 601
603# 603 605# 605 607# 607 609# 609 611# 611 613# 613 615# 615
701# 701 703# 703 705# 705 707# 707 709# 709 720# 720 722# 722
724# 724 726# 726 728# 728 730# 730 736# 736 738# 738 740# 740
742# 742 744# 744 746# 746 748# 748 750# 750 752# 752 754# 754
756# 756 758# 758 760# 760 762# 762 767# 767 769# 769 771# 771
773# 773 778# 778 780# 780 785# 785 787# 787 789# 789 796# 796
798# 798 800# 800 802# 802 804# 804 806# 806 808# 808 810# 810
812# 812 814# 814 816# 816 818# 818 820# 820 822# 822 824# 824
826# 826 828# 828 830# 830 832# 832 834# 834 836# 836 922# 922
924# 924 926# 926 928# 928 930# 930 941# 941 943# 943 945# 945
947# 947 949# 949 951# 951 957# 957 959# 959 961# 961 963# 963
965# 965 967# 967 969# 969 971# 971 973# 973 975# 975 977# 977
979# 979 981# 981 983# 983 985# 985 987# 987 989# 989 991# 991
997# 997 999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009
1011# 1011 1013# 1013 1015# 1015 1017# 1017 1022# 1022 1024# 1024 1026# 1026
1028# 1028 1030# 1030 1032# 1032 1034# 1034 1036# 1036 1043# 1043 1045# 1045
1047# 1047 1049# 1049 1051# 1051 1053# 1053 1055# 1055 1057# 1057 1059# 1059
1061# 1061 1063# 1063 1065# 1065 1067# 1067 1069# 1069 1071# 1071 1073# 1073
1075# 1075 1077# 1077 1079# 1079 1081# 1081 1083# 1083 1181# 1181 1183# 1183
1185# 1185 1187# 1187 1189# 1189 1191# 1191 1193# 1193 1195# 1195 1197# 1197
1199# 1199 1201# 1201 1203# 1203 1214# 1214 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1232# 1232 1234# 1234
1239# 1239 1241# 1241 1243# 1243 1245# 1245 1247# 1247 1249# 1249 1251# 1251
1253# 1253 1255# 1255 1257# 1257 1263# 1263 1265# 1265 1267# 1267 1269# 1269
1271# 1271 1273# 1273 1275# 1275 1282# 1282 1284# 1284 1286# 1286 1288# 1288
1290# 1290 1292# 1292 1294# 1294 1296# 1296 1298# 1298 1300# 1300 1302# 1302
1304# 1304 1306# 1306 1308# 1308 1310# 1310 1312# 1312 1318# 1318 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1347# 1347 1349# 1349 1351# 1351 1353# 1353 SEQ 0811
1355# 1355 1357# 1357 1359# 1359 1361# 1361 1363# 1363 1365# 1365 1367# 1367
1369# 1369 1371# 1371 1373# 1373 1375# 1375 1377# 1377 1379# 1379 1381# 1381
1383# 1383 1385# 1385 1387# 1387 1389# 1389 1391# 1391 1398# 1398 1400# 1400
1402# 1402 1404# 1404 1406# 1406 1408# 1408 1410# 1410 1412# 1412 1414# 1414
1416# 1416 1418# 1418 1420# 1420 1422# 1422 1424# 1424 1426# 1426 1428# 1428
1430# 1430 1432# 1432 1434# 1434 1436# 1436 1438# 1438 1440# 1440 1442# 1442
1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457 1459# 1459 1461# 1461
1463# 1463 1465# 1465 1467# 1467 1469# 1469 1471# 1471 1473# 1473 1475# 1475
1477# 1477 1479# 1479 1481# 1481 1483# 1483 1485# 1485 1487# 1487 1489# 1489
1596# 1596 1598# 1598 1600# 1600 1602# 1602 1604# 1604 1614# 1614 1616# 1616
1618# 1618 1620# 1620 1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630
1632# 1632 1637# 1637 1639# 1639 1641# 1641 1643# 1643 1645# 1645 1647# 1647
1649# 1649 1651# 1651 1653# 1653 1659# 1659 1661# 1661 1663# 1663 1665# 1665
1667# 1667 1669# 1669 1671# 1671 1673# 1673 1675# 1675 1677# 1677 1679# 1679
1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689 1695# 1695 1697# 1697
1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709 1711# 1711
1713# 1713 1715# 1715 1717# 1717 1719# 1719 1721# 1721 1723# 1723 1725# 1725
1727# 1727 1733# 1733 1735# 1735 1737# 1737 1739# 1739 1741# 1741 1743# 1743
1745# 1745 1747# 1747 1749# 1749 1751# 1751 1753# 1753 1755# 1755 1761# 1761
1763# 1763 1765# 1765 1767# 1767 1769# 1769 1771# 1771 1773# 1773 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1791# 1791 1793# 1793 1799# 1799 1801# 1801 1803# 1803 1805# 1805 1807# 1807
1809# 1809 1811# 1811 1813# 1813 1815# 1815 1817# 1817 1819# 1819 1821# 1821
1827# 1827 1829# 1829 1831# 1831 1833# 1833 1835# 1835 1837# 1837 1839# 1839
1841# 1841 1843# 1843 1845# 1845 1847# 1847 1849# 1849 1851# 1851 1853# 1853
1855# 1855 1857# 1857 1859# 1859 1864# 1864 1866# 1866 1868# 1868 1870# 1870
1872# 1872 1877# 1877 1879# 1879 1881# 1881 1883# 1883 1885# 1885 1887# 1887
1889# 1889 1896# 1896 1898# 1898 1900# 1900 1902# 1902 1904# 1904 1992# 1992
1994# 1994 1996# 1996 1998# 1998 2000# 2000 2011# 2011 2013# 2013 2015# 2015
2017# 2017 2019# 2019 2021# 2021 2026# 2026 2028# 2028 2030# 2030 2037# 2037
2039# 2039 2041# 2041 2043# 2043 2045# 2045 2047# 2047 2049# 2049 2051# 2051
2053# 2053 2055# 2055 2057# 2057 2059# 2059 2061# 2061 2063# 2063 2065# 2065
2067# 2067 2069# 2069 2071# 2071 2073# 2073 2075# 2075 2077# 2077 2079# 2079
2081# 2081 2083# 2083 2085# 2085 2087# 2087 2094# 2094 2096# 2096 2098# 2098
2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108 2110# 2110 2112# 2112
2114# 2114 2116# 2116 2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126
2128# 2128 2130# 2130 2132# 2132 2134# 2134 2136# 2136 2138# 2138 2140# 2140
2142# 2142 2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159
2161# 2161 2163# 2163 2165# 2165 2167# 2167 2169# 2169 2171# 2171 2173# 2173
2175# 2175 2182# 2182 2184# 2184 2186# 2186 2188# 2188 2190# 2190 2192# 2192
2194# 2194 2196# 2196 2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206
2208# 2208 2210# 2210 2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220
2222# 2222
$GARG 148# 148 150# 150 152# 152 154# 154 156# 156 167# 167 169# 169
171# 171 173# 173 175# 175 177# 177 182# 182 184# 184 186# 186
188# 188 190# 190 192# 192 194# 194 196# 196 198# 198 204# 204
206# 206 208# 208 210# 210 212# 212 214# 214 216# 216 218# 218
220# 220 222# 222 228# 228 230# 230 232# 232 234# 234 236# 236
238# 238 240# 240 242# 242 244# 244 246# 246 248# 248 250# 250
252# 252 254# 254 256# 256 262# 262 264# 264 266# 266 268# 268
270# 270 272# 272 274# 274 276# 276 278# 278 280# 280 282# 282
284# 284 286# 286 288# 288 290# 290 292# 292 294# 294 296# 296
298# 298 300# 300 302# 302 304# 304 306# 306 312# 312 314# 314 SEQ 0812
316# 316 318# 318 320# 320 322# 322 324# 324 326# 326 328# 328
330# 330 332# 332 334# 334 336# 336 338# 338 340# 340 342# 342
344# 344 346# 346 348# 348 350# 350 352# 352 354# 354 356# 356
361# 361 363# 363 365# 365 367# 367 369# 369 371# 371 373# 373
375# 375 377# 377 379# 379 381# 381 383# 383 385# 385 387# 387
389# 389 391# 391 393# 393 395# 395 397# 397 399# 399 401# 401
403# 403 405# 405 412# 412 414# 414 416# 416 418# 418 420# 420
422# 422 424# 424 426# 426 428# 428 430# 430 432# 432 434# 434
436# 436 438# 438 440# 440 442# 442 444# 444 446# 446 448# 448
450# 450 452# 452 454# 454 456# 456 458# 458 460# 460 466# 466
468# 468 470# 470 472# 472 474# 474 476# 476 478# 478 480# 480
482# 482 484# 484 486# 486 488# 488 490# 490 492# 492 494# 494
496# 496 498# 498 500# 500 502# 502 504# 504 506# 506 508# 508
510# 510 512# 512 518# 518 520# 520 522# 522 524# 524 526# 526
528# 528 530# 530 532# 532 534# 534 536# 536 538# 538 540# 540
542# 542 544# 544 546# 546 548# 548 550# 550 552# 552 554# 554
556# 556 558# 558 560# 560 562# 562 564# 564 566# 566 568# 568
575# 575 577# 577 579# 579 581# 581 583# 583 585# 585 587# 587
589# 589 591# 591 593# 593 595# 595 597# 597 599# 599 601# 601
603# 603 605# 605 607# 607 609# 609 611# 611 613# 613 615# 615
701# 701 703# 703 705# 705 707# 707 709# 709 720# 720 722# 722
724# 724 726# 726 728# 728 730# 730 736# 736 738# 738 740# 740
742# 742 744# 744 746# 746 748# 748 750# 750 752# 752 754# 754
756# 756 758# 758 760# 760 762# 762 767# 767 769# 769 771# 771
773# 773 778# 778 780# 780 785# 785 787# 787 789# 789 796# 796
798# 798 800# 800 802# 802 804# 804 806# 806 808# 808 810# 810
812# 812 814# 814 816# 816 818# 818 820# 820 822# 822 824# 824
826# 826 828# 828 830# 830 832# 832 834# 834 836# 836 922# 922
924# 924 926# 926 928# 928 930# 930 941# 941 943# 943 945# 945
947# 947 949# 949 951# 951 957# 957 959# 959 961# 961 963# 963
965# 965 967# 967 969# 969 971# 971 973# 973 975# 975 977# 977
979# 979 981# 981 983# 983 985# 985 987# 987 989# 989 991# 991
997# 997 999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009
1011# 1011 1013# 1013 1015# 1015 1017# 1017 1022# 1022 1024# 1024 1026# 1026
1028# 1028 1030# 1030 1032# 1032 1034# 1034 1036# 1036 1043# 1043 1045# 1045
1047# 1047 1049# 1049 1051# 1051 1053# 1053 1055# 1055 1057# 1057 1059# 1059
1061# 1061 1063# 1063 1065# 1065 1067# 1067 1069# 1069 1071# 1071 1073# 1073
1075# 1075 1077# 1077 1079# 1079 1081# 1081 1083# 1083 1181# 1181 1183# 1183
1185# 1185 1187# 1187 1189# 1189 1191# 1191 1193# 1193 1195# 1195 1197# 1197
1199# 1199 1201# 1201 1203# 1203 1214# 1214 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1232# 1232 1234# 1234
1239# 1239 1241# 1241 1243# 1243 1245# 1245 1247# 1247 1249# 1249 1251# 1251
1253# 1253 1255# 1255 1257# 1257 1263# 1263 1265# 1265 1267# 1267 1269# 1269
1271# 1271 1273# 1273 1275# 1275 1282# 1282 1284# 1284 1286# 1286 1288# 1288
1290# 1290 1292# 1292 1294# 1294 1296# 1296 1298# 1298 1300# 1300 1302# 1302
1304# 1304 1306# 1306 1308# 1308 1310# 1310 1312# 1312 1318# 1318 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1347# 1347 1349# 1349 1351# 1351 1353# 1353
1355# 1355 1357# 1357 1359# 1359 1361# 1361 1363# 1363 1365# 1365 1367# 1367
1369# 1369 1371# 1371 1373# 1373 1375# 1375 1377# 1377 1379# 1379 1381# 1381
1383# 1383 1385# 1385 1387# 1387 1389# 1389 1391# 1391 1398# 1398 1400# 1400
1402# 1402 1404# 1404 1406# 1406 1408# 1408 1410# 1410 1412# 1412 1414# 1414
1416# 1416 1418# 1418 1420# 1420 1422# 1422 1424# 1424 1426# 1426 1428# 1428 SEQ 0813
1430# 1430 1432# 1432 1434# 1434 1436# 1436 1438# 1438 1440# 1440 1442# 1442
1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457 1459# 1459 1461# 1461
1463# 1463 1465# 1465 1467# 1467 1469# 1469 1471# 1471 1473# 1473 1475# 1475
1477# 1477 1479# 1479 1481# 1481 1483# 1483 1485# 1485 1487# 1487 1489# 1489
1596# 1596 1598# 1598 1600# 1600 1602# 1602 1604# 1604 1614# 1614 1616# 1616
1618# 1618 1620# 1620 1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630
1632# 1632 1637# 1637 1639# 1639 1641# 1641 1643# 1643 1645# 1645 1647# 1647
1649# 1649 1651# 1651 1653# 1653 1659# 1659 1661# 1661 1663# 1663 1665# 1665
1667# 1667 1669# 1669 1671# 1671 1673# 1673 1675# 1675 1677# 1677 1679# 1679
1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689 1695# 1695 1697# 1697
1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709 1711# 1711
1713# 1713 1715# 1715 1717# 1717 1719# 1719 1721# 1721 1723# 1723 1725# 1725
1727# 1727 1733# 1733 1735# 1735 1737# 1737 1739# 1739 1741# 1741 1743# 1743
1745# 1745 1747# 1747 1749# 1749 1751# 1751 1753# 1753 1755# 1755 1761# 1761
1763# 1763 1765# 1765 1767# 1767 1769# 1769 1771# 1771 1773# 1773 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1791# 1791 1793# 1793 1799# 1799 1801# 1801 1803# 1803 1805# 1805 1807# 1807
1809# 1809 1811# 1811 1813# 1813 1815# 1815 1817# 1817 1819# 1819 1821# 1821
1827# 1827 1829# 1829 1831# 1831 1833# 1833 1835# 1835 1837# 1837 1839# 1839
1841# 1841 1843# 1843 1845# 1845 1847# 1847 1849# 1849 1851# 1851 1853# 1853
1855# 1855 1857# 1857 1859# 1859 1864# 1864 1866# 1866 1868# 1868 1870# 1870
1872# 1872 1877# 1877 1879# 1879 1881# 1881 1883# 1883 1885# 1885 1887# 1887
1889# 1889 1896# 1896 1898# 1898 1900# 1900 1902# 1902 1904# 1904 1992# 1992
1994# 1994 1996# 1996 1998# 1998 2000# 2000 2011# 2011 2013# 2013 2015# 2015
2017# 2017 2019# 2019 2021# 2021 2026# 2026 2028# 2028 2030# 2030 2037# 2037
2039# 2039 2041# 2041 2043# 2043 2045# 2045 2047# 2047 2049# 2049 2051# 2051
2053# 2053 2055# 2055 2057# 2057 2059# 2059 2061# 2061 2063# 2063 2065# 2065
2067# 2067 2069# 2069 2071# 2071 2073# 2073 2075# 2075 2077# 2077 2079# 2079
2081# 2081 2083# 2083 2085# 2085 2087# 2087 2094# 2094 2096# 2096 2098# 2098
2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108 2110# 2110 2112# 2112
2114# 2114 2116# 2116 2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126
2128# 2128 2130# 2130 2132# 2132 2134# 2134 2136# 2136 2138# 2138 2140# 2140
2142# 2142 2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159
2161# 2161 2163# 2163 2165# 2165 2167# 2167 2169# 2169 2171# 2171 2173# 2173
2175# 2175 2182# 2182 2184# 2184 2186# 2186 2188# 2188 2190# 2190 2192# 2192
2194# 2194 2196# 2196 2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206
2208# 2208 2210# 2210 2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220
2222# 2222
%ADDR 148# 148 150# 150 152 152# 154 154# 156 156# 167# 167 169 169#
171 171# 173 173# 175 175# 177 177# 182 182# 184 184# 186 186#
188 188# 190 190# 192 192# 194 194# 196 196# 198 198# 204# 204
206 206# 208 208# 210 210# 212 212# 214 214# 216 216# 218 218#
220 220# 222 222# 228# 228 230 230# 232 232# 234 234# 236 236#
238 238# 240 240# 242 242# 244 244# 246 246# 248 248# 250 250#
252 252# 254 254# 256 256# 262# 262 264 264# 266 266# 268 268#
270 270# 272 272# 274 274# 276 276# 278 278# 280 280# 282 282#
284 284# 286 286# 288 288# 290 290# 292 292# 294 294# 296 296#
298 298# 300 300# 302 302# 304 304# 306 306# 312# 312 314 314#
316 316# 318 318# 320 320# 322 322# 324 324# 326 326# 328 328#
330 330# 332 332# 334 334# 336 336# 338 338# 340 340# 342 342#
344 344# 346 346# 348 348# 350 350# 352 352# 354 354# 356 356#
361# 361 363 363# 365 365# 367 367# 369 369# 371 371# 373 373#
375 375# 377 377# 379 379# 381 381# 383 383# 385 385# 387 387# SEQ 0814
389 389# 391 391# 393 393# 395 395# 397 397# 399 399# 401 401#
403 403# 405 405# 412# 412 414 414# 416 416# 418 418# 420 420#
422 422# 424 424# 426 426# 428 428# 430 430# 432 432# 434 434#
436 436# 438 438# 440 440# 442 442# 444 444# 446 446# 448 448#
450 450# 452 452# 454 454# 456 456# 458 458# 460 460# 466# 466
468 468# 470 470# 472 472# 474 474# 476 476# 478 478# 480 480#
482 482# 484 484# 486 486# 488 488# 490 490# 492 492# 494 494#
496 496# 498 498# 500 500# 502 502# 504 504# 506 506# 508 508#
510 510# 512 512# 518# 518 520 520# 522 522# 524 524# 526 526#
528 528# 530 530# 532 532# 534 534# 536 536# 538 538# 540 540#
542 542# 544 544# 546 546# 548 548# 550 550# 552 552# 554 554#
556 556# 558 558# 560 560# 562 562# 564 564# 566 566# 568 568#
575# 575 577 577# 579 579# 581 581# 583 583# 585 585# 587 587#
589 589# 591 591# 593 593# 595 595# 597 597# 599 599# 601 601#
603 603# 605 605# 607 607# 609 609# 611 611# 613 613# 615 615#
701# 701 703# 703 705 705# 707 707# 709 709# 720# 720 722 722#
724 724# 726 726# 728 728# 730 730# 736 736# 738 738# 740 740#
742 742# 744 744# 746 746# 748 748# 750 750# 752 752# 754 754#
756 756# 758 758# 760 760# 762 762# 767 767# 769 769# 771 771#
773 773# 778 778# 780 780# 785 785# 787 787# 789 789# 796# 796
798 798# 800 800# 802 802# 804 804# 806 806# 808 808# 810 810#
812 812# 814 814# 816 816# 818 818# 820 820# 822 822# 824 824#
826 826# 828 828# 830 830# 832 832# 834 834# 836 836# 922# 922
924# 924 926 926# 928 928# 930 930# 941# 941 943 943# 945 945#
947 947# 949 949# 951 951# 957 957# 959 959# 961 961# 963 963#
965 965# 967 967# 969 969# 971 971# 973 973# 975 975# 977 977#
979 979# 981 981# 983 983# 985 985# 987 987# 989 989# 991 991#
997 997# 999 999# 1001 1001# 1003 1003# 1005 1005# 1007 1007# 1009 1009#
1011 1011# 1013 1013# 1015 1015# 1017 1017# 1022 1022# 1024 1024# 1026 1026#
1028 1028# 1030 1030# 1032 1032# 1034 1034# 1036 1036# 1043# 1043 1045 1045#
1047 1047# 1049 1049# 1051 1051# 1053 1053# 1055 1055# 1057 1057# 1059 1059#
1061 1061# 1063 1063# 1065 1065# 1067 1067# 1069 1069# 1071 1071# 1073 1073#
1075 1075# 1077 1077# 1079 1079# 1081 1081# 1083 1083# 1181# 1181 1183# 1183
1185 1185# 1187 1187# 1189 1189# 1191 1191# 1193 1193# 1195 1195# 1197 1197#
1199 1199# 1201 1201# 1203 1203# 1214# 1214 1216 1216# 1218 1218# 1220 1220#
1222 1222# 1224 1224# 1226 1226# 1228 1228# 1230 1230# 1232 1232# 1234 1234#
1239 1239# 1241 1241# 1243 1243# 1245 1245# 1247 1247# 1249 1249# 1251 1251#
1253 1253# 1255 1255# 1257 1257# 1263# 1263 1265 1265# 1267 1267# 1269 1269#
1271 1271# 1273 1273# 1275 1275# 1282# 1282 1284 1284# 1286 1286# 1288 1288#
1290 1290# 1292 1292# 1294 1294# 1296 1296# 1298 1298# 1300 1300# 1302 1302#
1304 1304# 1306 1306# 1308 1308# 1310 1310# 1312 1312# 1318# 1318 1320 1320#
1322 1322# 1324 1324# 1326 1326# 1328 1328# 1330 1330# 1332 1332# 1334 1334#
1336 1336# 1338 1338# 1340 1340# 1347# 1347 1349 1349# 1351 1351# 1353 1353#
1355 1355# 1357 1357# 1359 1359# 1361 1361# 1363 1363# 1365 1365# 1367 1367#
1369 1369# 1371 1371# 1373 1373# 1375 1375# 1377 1377# 1379 1379# 1381 1381#
1383 1383# 1385 1385# 1387 1387# 1389 1389# 1391 1391# 1398# 1398 1400 1400#
1402 1402# 1404 1404# 1406 1406# 1408 1408# 1410 1410# 1412 1412# 1414 1414#
1416 1416# 1418 1418# 1420 1420# 1422 1422# 1424 1424# 1426 1426# 1428 1428#
1430 1430# 1432 1432# 1434 1434# 1436 1436# 1438 1438# 1440 1440# 1442 1442#
1449# 1449 1451 1451# 1453 1453# 1455 1455# 1457 1457# 1459 1459# 1461 1461#
1463 1463# 1465 1465# 1467 1467# 1469 1469# 1471 1471# 1473 1473# 1475 1475#
1477 1477# 1479 1479# 1481 1481# 1483 1483# 1485 1485# 1487 1487# 1489 1489#
1596# 1596 1598# 1598 1600 1600# 1602 1602# 1604 1604# 1614# 1614 1616 1616# SEQ 0815
1618 1618# 1620 1620# 1622 1622# 1624 1624# 1626 1626# 1628 1628# 1630 1630#
1632 1632# 1637 1637# 1639 1639# 1641 1641# 1643 1643# 1645 1645# 1647 1647#
1649 1649# 1651 1651# 1653 1653# 1659 1659# 1661 1661# 1663 1663# 1665 1665#
1667 1667# 1669 1669# 1671 1671# 1673 1673# 1675 1675# 1677 1677# 1679 1679#
1681 1681# 1683 1683# 1685 1685# 1687 1687# 1689 1689# 1695 1695# 1697 1697#
1699 1699# 1701 1701# 1703 1703# 1705 1705# 1707 1707# 1709 1709# 1711 1711#
1713 1713# 1715 1715# 1717 1717# 1719 1719# 1721 1721# 1723 1723# 1725 1725#
1727 1727# 1733# 1733 1735 1735# 1737 1737# 1739 1739# 1741 1741# 1743 1743#
1745 1745# 1747 1747# 1749 1749# 1751 1751# 1753 1753# 1755 1755# 1761 1761#
1763 1763# 1765 1765# 1767 1767# 1769 1769# 1771 1771# 1773 1773# 1775 1775#
1777 1777# 1779 1779# 1781 1781# 1783 1783# 1785 1785# 1787 1787# 1789 1789#
1791 1791# 1793 1793# 1799# 1799 1801 1801# 1803 1803# 1805 1805# 1807 1807#
1809 1809# 1811 1811# 1813 1813# 1815 1815# 1817 1817# 1819 1819# 1821 1821#
1827 1827# 1829 1829# 1831 1831# 1833 1833# 1835 1835# 1837 1837# 1839 1839#
1841 1841# 1843 1843# 1845 1845# 1847 1847# 1849 1849# 1851 1851# 1853 1853#
1855 1855# 1857 1857# 1859 1859# 1864# 1864 1866 1866# 1868 1868# 1870 1870#
1872 1872# 1877# 1877 1879 1879# 1881 1881# 1883 1883# 1885 1885# 1887 1887#
1889 1889# 1896# 1896 1898 1898# 1900 1900# 1902 1902# 1904 1904# 1992# 1992
1994# 1994 1996 1996# 1998 1998# 2000 2000# 2011# 2011 2013 2013# 2015 2015#
2017 2017# 2019 2019# 2021 2021# 2026 2026# 2028 2028# 2030 2030# 2037# 2037
2039 2039# 2041 2041# 2043 2043# 2045 2045# 2047 2047# 2049 2049# 2051 2051#
2053 2053# 2055 2055# 2057 2057# 2059 2059# 2061 2061# 2063 2063# 2065 2065#
2067 2067# 2069 2069# 2071 2071# 2073 2073# 2075 2075# 2077 2077# 2079 2079#
2081 2081# 2083 2083# 2085 2085# 2087 2087# 2094# 2094 2096 2096# 2098 2098#
2100 2100# 2102 2102# 2104 2104# 2106 2106# 2108 2108# 2110 2110# 2112 2112#
2114 2114# 2116 2116# 2118 2118# 2120 2120# 2122 2122# 2124 2124# 2126 2126#
2128 2128# 2130 2130# 2132 2132# 2134 2134# 2136 2136# 2138 2138# 2140 2140#
2142 2142# 2149# 2149 2151 2151# 2153 2153# 2155 2155# 2157 2157# 2159 2159#
2161 2161# 2163 2163# 2165 2165# 2167 2167# 2169 2169# 2171 2171# 2173 2173#
2175 2175# 2182# 2182 2184 2184# 2186 2186# 2188 2188# 2190 2190# 2192 2192#
2194 2194# 2196 2196# 2198 2198# 2200 2200# 2202 2202# 2204 2204# 2206 2206#
2208 2208# 2210 2210# 2212 2212# 2214 2214# 2216 2216# 2218 2218# 2220 2220#
2222 2222#
%ML 148# 148 150# 150 152# 152 154# 154 156# 156 167# 167 169# 169
171# 171 173# 173 175# 175 177# 177 182# 182 184# 184 186# 186
188# 188 190# 190 192# 192 194# 194 196# 196 198# 198 204# 204
206# 206 208# 208 210# 210 212# 212 214# 214 216# 216 218# 218
220# 220 222# 222 228# 228 230# 230 232# 232 234# 234 236# 236
238# 238 240# 240 242# 242 244# 244 246# 246 248# 248 250# 250
252# 252 254# 254 256# 256 262# 262 264# 264 266# 266 268# 268
270# 270 272# 272 274# 274 276# 276 278# 278 280# 280 282# 282
284# 284 286# 286 288# 288 290# 290 292# 292 294# 294 296# 296
298# 298 300# 300 302# 302 304# 304 306# 306 312# 312 314# 314
316# 316 318# 318 320# 320 322# 322 324# 324 326# 326 328# 328
330# 330 332# 332 334# 334 336# 336 338# 338 340# 340 342# 342
344# 344 346# 346 348# 348 350# 350 352# 352 354# 354 356# 356
361# 361 363# 363 365# 365 367# 367 369# 369 371# 371 373# 373
375# 375 377# 377 379# 379 381# 381 383# 383 385# 385 387# 387
389# 389 391# 391 393# 393 395# 395 397# 397 399# 399 401# 401
403# 403 405# 405 412# 412 414# 414 416# 416 418# 418 420# 420
422# 422 424# 424 426# 426 428# 428 430# 430 432# 432 434# 434
436# 436 438# 438 440# 440 442# 442 444# 444 446# 446 448# 448
450# 450 452# 452 454# 454 456# 456 458# 458 460# 460 466# 466 SEQ 0816
468# 468 470# 470 472# 472 474# 474 476# 476 478# 478 480# 480
482# 482 484# 484 486# 486 488# 488 490# 490 492# 492 494# 494
496# 496 498# 498 500# 500 502# 502 504# 504 506# 506 508# 508
510# 510 512# 512 518# 518 520# 520 522# 522 524# 524 526# 526
528# 528 530# 530 532# 532 534# 534 536# 536 538# 538 540# 540
542# 542 544# 544 546# 546 548# 548 550# 550 552# 552 554# 554
556# 556 558# 558 560# 560 562# 562 564# 564 566# 566 568# 568
575# 575 577# 577 579# 579 581# 581 583# 583 585# 585 587# 587
589# 589 591# 591 593# 593 595# 595 597# 597 599# 599 601# 601
603# 603 605# 605 607# 607 609# 609 611# 611 613# 613 615# 615
701# 701 703# 703 705# 705 707# 707 709# 709 720# 720 722# 722
724# 724 726# 726 728# 728 730# 730 736# 736 738# 738 740# 740
742# 742 744# 744 746# 746 748# 748 750# 750 752# 752 754# 754
756# 756 758# 758 760# 760 762# 762 767# 767 769# 769 771# 771
773# 773 778# 778 780# 780 785# 785 787# 787 789# 789 796# 796
798# 798 800# 800 802# 802 804# 804 806# 806 808# 808 810# 810
812# 812 814# 814 816# 816 818# 818 820# 820 822# 822 824# 824
826# 826 828# 828 830# 830 832# 832 834# 834 836# 836 922# 922
924# 924 926# 926 928# 928 930# 930 941# 941 943# 943 945# 945
947# 947 949# 949 951# 951 957# 957 959# 959 961# 961 963# 963
965# 965 967# 967 969# 969 971# 971 973# 973 975# 975 977# 977
979# 979 981# 981 983# 983 985# 985 987# 987 989# 989 991# 991
997# 997 999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009
1011# 1011 1013# 1013 1015# 1015 1017# 1017 1022# 1022 1024# 1024 1026# 1026
1028# 1028 1030# 1030 1032# 1032 1034# 1034 1036# 1036 1043# 1043 1045# 1045
1047# 1047 1049# 1049 1051# 1051 1053# 1053 1055# 1055 1057# 1057 1059# 1059
1061# 1061 1063# 1063 1065# 1065 1067# 1067 1069# 1069 1071# 1071 1073# 1073
1075# 1075 1077# 1077 1079# 1079 1081# 1081 1083# 1083 1181# 1181 1183# 1183
1185# 1185 1187# 1187 1189# 1189 1191# 1191 1193# 1193 1195# 1195 1197# 1197
1199# 1199 1201# 1201 1203# 1203 1214# 1214 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1232# 1232 1234# 1234
1239# 1239 1241# 1241 1243# 1243 1245# 1245 1247# 1247 1249# 1249 1251# 1251
1253# 1253 1255# 1255 1257# 1257 1263# 1263 1265# 1265 1267# 1267 1269# 1269
1271# 1271 1273# 1273 1275# 1275 1282# 1282 1284# 1284 1286# 1286 1288# 1288
1290# 1290 1292# 1292 1294# 1294 1296# 1296 1298# 1298 1300# 1300 1302# 1302
1304# 1304 1306# 1306 1308# 1308 1310# 1310 1312# 1312 1318# 1318 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1347# 1347 1349# 1349 1351# 1351 1353# 1353
1355# 1355 1357# 1357 1359# 1359 1361# 1361 1363# 1363 1365# 1365 1367# 1367
1369# 1369 1371# 1371 1373# 1373 1375# 1375 1377# 1377 1379# 1379 1381# 1381
1383# 1383 1385# 1385 1387# 1387 1389# 1389 1391# 1391 1398# 1398 1400# 1400
1402# 1402 1404# 1404 1406# 1406 1408# 1408 1410# 1410 1412# 1412 1414# 1414
1416# 1416 1418# 1418 1420# 1420 1422# 1422 1424# 1424 1426# 1426 1428# 1428
1430# 1430 1432# 1432 1434# 1434 1436# 1436 1438# 1438 1440# 1440 1442# 1442
1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457 1459# 1459 1461# 1461
1463# 1463 1465# 1465 1467# 1467 1469# 1469 1471# 1471 1473# 1473 1475# 1475
1477# 1477 1479# 1479 1481# 1481 1483# 1483 1485# 1485 1487# 1487 1489# 1489
1596# 1596 1598# 1598 1600# 1600 1602# 1602 1604# 1604 1614# 1614 1616# 1616
1618# 1618 1620# 1620 1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630
1632# 1632 1637# 1637 1639# 1639 1641# 1641 1643# 1643 1645# 1645 1647# 1647
1649# 1649 1651# 1651 1653# 1653 1659# 1659 1661# 1661 1663# 1663 1665# 1665
1667# 1667 1669# 1669 1671# 1671 1673# 1673 1675# 1675 1677# 1677 1679# 1679
1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689 1695# 1695 1697# 1697 SEQ 0817
1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709 1711# 1711
1713# 1713 1715# 1715 1717# 1717 1719# 1719 1721# 1721 1723# 1723 1725# 1725
1727# 1727 1733# 1733 1735# 1735 1737# 1737 1739# 1739 1741# 1741 1743# 1743
1745# 1745 1747# 1747 1749# 1749 1751# 1751 1753# 1753 1755# 1755 1761# 1761
1763# 1763 1765# 1765 1767# 1767 1769# 1769 1771# 1771 1773# 1773 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1791# 1791 1793# 1793 1799# 1799 1801# 1801 1803# 1803 1805# 1805 1807# 1807
1809# 1809 1811# 1811 1813# 1813 1815# 1815 1817# 1817 1819# 1819 1821# 1821
1827# 1827 1829# 1829 1831# 1831 1833# 1833 1835# 1835 1837# 1837 1839# 1839
1841# 1841 1843# 1843 1845# 1845 1847# 1847 1849# 1849 1851# 1851 1853# 1853
1855# 1855 1857# 1857 1859# 1859 1864# 1864 1866# 1866 1868# 1868 1870# 1870
1872# 1872 1877# 1877 1879# 1879 1881# 1881 1883# 1883 1885# 1885 1887# 1887
1889# 1889 1896# 1896 1898# 1898 1900# 1900 1902# 1902 1904# 1904 1992# 1992
1994# 1994 1996# 1996 1998# 1998 2000# 2000 2011# 2011 2013# 2013 2015# 2015
2017# 2017 2019# 2019 2021# 2021 2026# 2026 2028# 2028 2030# 2030 2037# 2037
2039# 2039 2041# 2041 2043# 2043 2045# 2045 2047# 2047 2049# 2049 2051# 2051
2053# 2053 2055# 2055 2057# 2057 2059# 2059 2061# 2061 2063# 2063 2065# 2065
2067# 2067 2069# 2069 2071# 2071 2073# 2073 2075# 2075 2077# 2077 2079# 2079
2081# 2081 2083# 2083 2085# 2085 2087# 2087 2094# 2094 2096# 2096 2098# 2098
2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108 2110# 2110 2112# 2112
2114# 2114 2116# 2116 2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126
2128# 2128 2130# 2130 2132# 2132 2134# 2134 2136# 2136 2138# 2138 2140# 2140
2142# 2142 2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159
2161# 2161 2163# 2163 2165# 2165 2167# 2167 2169# 2169 2171# 2171 2173# 2173
2175# 2175 2182# 2182 2184# 2184 2186# 2186 2188# 2188 2190# 2190 2192# 2192
2194# 2194 2196# 2196 2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206
2208# 2208 2210# 2210 2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220
2222# 2222
%MR 148# 148 150# 150 152# 152 154# 154 156# 156 167# 167 169# 169
171# 171 173# 173 175# 175 177# 177 182# 182 184# 184 186# 186
188# 188 190# 190 192# 192 194# 194 196# 196 198# 198 204# 204
206# 206 208# 208 210# 210 212# 212 214# 214 216# 216 218# 218
220# 220 222# 222 228# 228 230# 230 232# 232 234# 234 236# 236
238# 238 240# 240 242# 242 244# 244 246# 246 248# 248 250# 250
252# 252 254# 254 256# 256 262# 262 264# 264 266# 266 268# 268
270# 270 272# 272 274# 274 276# 276 278# 278 280# 280 282# 282
284# 284 286# 286 288# 288 290# 290 292# 292 294# 294 296# 296
298# 298 300# 300 302# 302 304# 304 306# 306 312# 312 314# 314
316# 316 318# 318 320# 320 322# 322 324# 324 326# 326 328# 328
330# 330 332# 332 334# 334 336# 336 338# 338 340# 340 342# 342
344# 344 346# 346 348# 348 350# 350 352# 352 354# 354 356# 356
361# 361 363# 363 365# 365 367# 367 369# 369 371# 371 373# 373
375# 375 377# 377 379# 379 381# 381 383# 383 385# 385 387# 387
389# 389 391# 391 393# 393 395# 395 397# 397 399# 399 401# 401
403# 403 405# 405 412# 412 414# 414 416# 416 418# 418 420# 420
422# 422 424# 424 426# 426 428# 428 430# 430 432# 432 434# 434
436# 436 438# 438 440# 440 442# 442 444# 444 446# 446 448# 448
450# 450 452# 452 454# 454 456# 456 458# 458 460# 460 466# 466
468# 468 470# 470 472# 472 474# 474 476# 476 478# 478 480# 480
482# 482 484# 484 486# 486 488# 488 490# 490 492# 492 494# 494
496# 496 498# 498 500# 500 502# 502 504# 504 506# 506 508# 508
510# 510 512# 512 518# 518 520# 520 522# 522 524# 524 526# 526
528# 528 530# 530 532# 532 534# 534 536# 536 538# 538 540# 540 SEQ 0818
542# 542 544# 544 546# 546 548# 548 550# 550 552# 552 554# 554
556# 556 558# 558 560# 560 562# 562 564# 564 566# 566 568# 568
575# 575 577# 577 579# 579 581# 581 583# 583 585# 585 587# 587
589# 589 591# 591 593# 593 595# 595 597# 597 599# 599 601# 601
603# 603 605# 605 607# 607 609# 609 611# 611 613# 613 615# 615
701# 701 703# 703 705# 705 707# 707 709# 709 720# 720 722# 722
724# 724 726# 726 728# 728 730# 730 736# 736 738# 738 740# 740
742# 742 744# 744 746# 746 748# 748 750# 750 752# 752 754# 754
756# 756 758# 758 760# 760 762# 762 767# 767 769# 769 771# 771
773# 773 778# 778 780# 780 785# 785 787# 787 789# 789 796# 796
798# 798 800# 800 802# 802 804# 804 806# 806 808# 808 810# 810
812# 812 814# 814 816# 816 818# 818 820# 820 822# 822 824# 824
826# 826 828# 828 830# 830 832# 832 834# 834 836# 836 922# 922
924# 924 926# 926 928# 928 930# 930 941# 941 943# 943 945# 945
947# 947 949# 949 951# 951 957# 957 959# 959 961# 961 963# 963
965# 965 967# 967 969# 969 971# 971 973# 973 975# 975 977# 977
979# 979 981# 981 983# 983 985# 985 987# 987 989# 989 991# 991
997# 997 999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009
1011# 1011 1013# 1013 1015# 1015 1017# 1017 1022# 1022 1024# 1024 1026# 1026
1028# 1028 1030# 1030 1032# 1032 1034# 1034 1036# 1036 1043# 1043 1045# 1045
1047# 1047 1049# 1049 1051# 1051 1053# 1053 1055# 1055 1057# 1057 1059# 1059
1061# 1061 1063# 1063 1065# 1065 1067# 1067 1069# 1069 1071# 1071 1073# 1073
1075# 1075 1077# 1077 1079# 1079 1081# 1081 1083# 1083 1181# 1181 1183# 1183
1185# 1185 1187# 1187 1189# 1189 1191# 1191 1193# 1193 1195# 1195 1197# 1197
1199# 1199 1201# 1201 1203# 1203 1214# 1214 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1232# 1232 1234# 1234
1239# 1239 1241# 1241 1243# 1243 1245# 1245 1247# 1247 1249# 1249 1251# 1251
1253# 1253 1255# 1255 1257# 1257 1263# 1263 1265# 1265 1267# 1267 1269# 1269
1271# 1271 1273# 1273 1275# 1275 1282# 1282 1284# 1284 1286# 1286 1288# 1288
1290# 1290 1292# 1292 1294# 1294 1296# 1296 1298# 1298 1300# 1300 1302# 1302
1304# 1304 1306# 1306 1308# 1308 1310# 1310 1312# 1312 1318# 1318 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1347# 1347 1349# 1349 1351# 1351 1353# 1353
1355# 1355 1357# 1357 1359# 1359 1361# 1361 1363# 1363 1365# 1365 1367# 1367
1369# 1369 1371# 1371 1373# 1373 1375# 1375 1377# 1377 1379# 1379 1381# 1381
1383# 1383 1385# 1385 1387# 1387 1389# 1389 1391# 1391 1398# 1398 1400# 1400
1402# 1402 1404# 1404 1406# 1406 1408# 1408 1410# 1410 1412# 1412 1414# 1414
1416# 1416 1418# 1418 1420# 1420 1422# 1422 1424# 1424 1426# 1426 1428# 1428
1430# 1430 1432# 1432 1434# 1434 1436# 1436 1438# 1438 1440# 1440 1442# 1442
1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457 1459# 1459 1461# 1461
1463# 1463 1465# 1465 1467# 1467 1469# 1469 1471# 1471 1473# 1473 1475# 1475
1477# 1477 1479# 1479 1481# 1481 1483# 1483 1485# 1485 1487# 1487 1489# 1489
1596# 1596 1598# 1598 1600# 1600 1602# 1602 1604# 1604 1614# 1614 1616# 1616
1618# 1618 1620# 1620 1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630
1632# 1632 1637# 1637 1639# 1639 1641# 1641 1643# 1643 1645# 1645 1647# 1647
1649# 1649 1651# 1651 1653# 1653 1659# 1659 1661# 1661 1663# 1663 1665# 1665
1667# 1667 1669# 1669 1671# 1671 1673# 1673 1675# 1675 1677# 1677 1679# 1679
1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689 1695# 1695 1697# 1697
1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709 1711# 1711
1713# 1713 1715# 1715 1717# 1717 1719# 1719 1721# 1721 1723# 1723 1725# 1725
1727# 1727 1733# 1733 1735# 1735 1737# 1737 1739# 1739 1741# 1741 1743# 1743
1745# 1745 1747# 1747 1749# 1749 1751# 1751 1753# 1753 1755# 1755 1761# 1761
1763# 1763 1765# 1765 1767# 1767 1769# 1769 1771# 1771 1773# 1773 1775# 1775 SEQ 0819
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1791# 1791 1793# 1793 1799# 1799 1801# 1801 1803# 1803 1805# 1805 1807# 1807
1809# 1809 1811# 1811 1813# 1813 1815# 1815 1817# 1817 1819# 1819 1821# 1821
1827# 1827 1829# 1829 1831# 1831 1833# 1833 1835# 1835 1837# 1837 1839# 1839
1841# 1841 1843# 1843 1845# 1845 1847# 1847 1849# 1849 1851# 1851 1853# 1853
1855# 1855 1857# 1857 1859# 1859 1864# 1864 1866# 1866 1868# 1868 1870# 1870
1872# 1872 1877# 1877 1879# 1879 1881# 1881 1883# 1883 1885# 1885 1887# 1887
1889# 1889 1896# 1896 1898# 1898 1900# 1900 1902# 1902 1904# 1904 1992# 1992
1994# 1994 1996# 1996 1998# 1998 2000# 2000 2011# 2011 2013# 2013 2015# 2015
2017# 2017 2019# 2019 2021# 2021 2026# 2026 2028# 2028 2030# 2030 2037# 2037
2039# 2039 2041# 2041 2043# 2043 2045# 2045 2047# 2047 2049# 2049 2051# 2051
2053# 2053 2055# 2055 2057# 2057 2059# 2059 2061# 2061 2063# 2063 2065# 2065
2067# 2067 2069# 2069 2071# 2071 2073# 2073 2075# 2075 2077# 2077 2079# 2079
2081# 2081 2083# 2083 2085# 2085 2087# 2087 2094# 2094 2096# 2096 2098# 2098
2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108 2110# 2110 2112# 2112
2114# 2114 2116# 2116 2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126
2128# 2128 2130# 2130 2132# 2132 2134# 2134 2136# 2136 2138# 2138 2140# 2140
2142# 2142 2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159
2161# 2161 2163# 2163 2165# 2165 2167# 2167 2169# 2169 2171# 2171 2173# 2173
2175# 2175 2182# 2182 2184# 2184 2186# 2186 2188# 2188 2190# 2190 2192# 2192
2194# 2194 2196# 2196 2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206
2208# 2208 2210# 2210 2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220
2222# 2222
.DATAI 29#
.DATAO 29#
.LA 167 210 212 214 216 218 234 236 248 250 298 300 348 350
397 399 456 458 506 508 562 564 593 720 785 787 814 941
1007 1022 1024 1026 1030 1032 1034 1061 1269 1271 1300 1302 1304 1306
1308 1330 1332 1334 1336 1385 1387 1389 1436 1438 1440 1467 1761 1827
1896 1898 1900 2011 2075 2077 2079 2083 2132 2134 2136 2140 2200
.LADDR 148 150 167 204 228 262 312 361 412 466 518 575 701 703
720 796 922 924 941 1043 1181 1183 1214 1263 1282 1318 1347 1398
1449 1596 1598 1614 1733 1799 1864 1877 1896 1992 1994 2011 2037 2094
2149 2182
.LAND 152 198 206 212 214 216 230 234 236 244 248 250 294 298
300 344 348 350 393 397 399 452 456 502 506 558 562 587
593 611 705 778 785 789 808 814 832 926 1003 1015 1024 1026
1028 1032 1055 1061 1079 1185 1257 1265 1269 1296 1302 1304 1306 1326
1332 1334 1381 1387 1389 1432 1438 1440 1461 1467 1485 1600 1626 1647
1659 1661 1673 1677 1681 1695 1707 1711 1715 1725 1761 1773 1777 1781
1827 1839 1843 1847 1859 1896 1898 1996 2030 2071 2077 2079 2081 2128
2134 2136 2138 2194 2200 2218
.LB 152 154 156 167 182 184 186 188 190 192 194 196 198 206
208 210 212 214 216 218 230 232 234 236 244 246 248 250
294 296 298 300 344 346 348 350 393 395 397 399 452 454
456 502 504 506 558 560 562 705 707 709 720 773 778 780
785 789 926 928 930 941 1003 1005 1007 1015 1017 1022 1024 1026
1028 1030 1032 1036 1185 1187 1189 1247 1249 1251 1253 1255 1257 1265
1267 1269 1296 1298 1300 1302 1304 1306 1308 1326 1328 1330 1332 1334
1381 1383 1385 1387 1389 1432 1434 1436 1438 1440 1600 1602 1604 1659
1661 1663 1673 1675 1677 1679 1681 1683 1689 1695 1697 1707 1709 1711
1713 1715 1717 1723 1725 1761 1763 1773 1775 1777 1779 1781 1783 1791
1827 1829 1839 1841 1843 1845 1847 1849 1857 1859 1896 1898 1900 1996 SEQ 0820
1998 2000 2011 2026 2028 2030 2071 2073 2075 2077 2079 2081 2128 2130
2132 2134 2136 2138
.LCCAF 1868
.LCCFZ 218 236 250 300 350 399 458 508 564 787 1034 1271 1308 1336
1389 1440 1900 2083 2140
.LCCPP 1687 1721 1787 1853
.LCCXA 448 548 771 989 1377 1428 2067 2124
.LCENA 218 236 250 300 350 399 448 458 508 548 564 771 787 989
1034 1271 1308 1336 1377 1389 1428 1440 1687 1721 1787 1853 1868 1900
2067 2083 2124 2140
.LCJP 218 236 250 300 350 399 448 458 508 548 564 771 787 989
1034 1271 1308 1336 1377 1389 1428 1440 1687 1721 1787 1853 1868 1900
2067 2083 2124 2140
.LCJS 150 177 182 184 186 188 190 192 194 196 703 730 924 951
1183 1224 1234 1247 1249 1251 1253 1255 1598 1624 1645 1685 1719 1755
1785 1821 1851 1994 2021 2026 2028
.LCONT 169 171 173 175 204 206 208 210 212 214 216 230 232 234
244 246 248 262 264 266 268 270 272 274 276 278 280 282
284 286 294 296 298 312 314 316 318 320 322 324 326 328
330 332 334 336 344 346 348 361 363 365 367 369 371 373
375 377 379 381 383 385 393 395 397 412 414 416 418 420
422 424 426 428 430 432 434 436 442 452 454 456 466 468
470 472 474 476 478 480 482 484 486 488 490 496 502 504
506 518 520 522 524 526 528 530 532 534 536 538 540 542
552 558 560 562 575 577 579 581 583 585 589 591 593 595
597 599 601 603 605 607 609 722 724 726 728 736 738 740
742 744 746 752 754 756 762 778 780 785 796 798 800 802
804 806 810 812 814 816 818 820 822 824 826 828 830 943
945 947 949 957 959 961 963 965 967 969 971 973 979 981
983 997 1003 1005 1007 1009 1015 1017 1022 1024 1026 1028 1030 1032
1043 1045 1047 1049 1051 1053 1057 1059 1061 1063 1065 1067 1069 1071
1073 1075 1077 1189 1191 1193 1195 1197 1199 1201 1216 1218 1220 1222
1226 1228 1230 1232 1239 1241 1243 1245 1263 1265 1267 1269 1282 1284
1286 1288 1290 1292 1294 1296 1298 1300 1302 1304 1306 1318 1320 1322
1324 1326 1328 1330 1332 1334 1349 1351 1353 1355 1357 1359 1361 1363
1365 1367 1369 1371 1381 1383 1385 1387 1400 1402 1404 1406 1408 1410
1412 1414 1416 1418 1420 1422 1432 1434 1436 1438 1449 1451 1453 1455
1457 1459 1463 1465 1467 1469 1471 1473 1475 1477 1479 1481 1483 1600
1616 1618 1620 1622 1628 1630 1637 1639 1641 1643 1649 1651 1659 1661
1665 1667 1669 1671 1673 1675 1677 1679 1681 1683 1695 1699 1701 1703
1705 1707 1709 1711 1713 1715 1717 1733 1735 1737 1739 1741 1743 1745
1747 1749 1751 1753 1761 1765 1767 1769 1771 1773 1775 1777 1779 1781
1783 1799 1801 1803 1805 1807 1809 1811 1813 1815 1817 1819 1827 1831
1833 1835 1837 1839 1841 1843 1845 1847 1849 1877 1879 1881 1883 1885
1887 1896 1898 2013 2015 2017 2019 2039 2041 2043 2045 2047 2049 2051
2053 2055 2057 2059 2061 2071 2073 2075 2077 2079 2081 2096 2098 2100
2102 2104 2106 2108 2110 2112 2114 2116 2118 2128 2130 2132 2134 2136
2138 2149 2151 2153 2155 2157 2163 2169 2182 2184 2186 2188 2190 2192
2196 2198 2200 2202 2204 2206 2208 2210 2212 2214 2216
.LCRTN 222 256 302 352 401 460 512 568 615 836 1083 1275 1312 1340
1347 1391 1398 1442 1489 1872 1889 1904 2037 2087 2094 2142 2175 2222
.LCRY 154 156 613 707 709 834 928 930 1081 1187 1189 1487 1602 1604
1632 1653 1663 1689 1697 1723 1763 1791 1829 1857 1998 2000 2220 SEQ 0821
.LD 152 154 156 167 169 171 175 182 184 186 188 190 192 194
196 198 206 208 210 212 214 216 218 228 230 232 234 236
242 244 246 248 250 264 266 270 272 276 278 282 284 294
296 298 300 314 316 320 322 326 328 332 334 344 346 348
350 363 365 369 371 375 377 381 383 393 395 397 399 414
416 420 422 426 428 432 434 448 452 454 456 458 468 470
474 476 480 482 486 488 502 504 506 508 520 522 526 528
532 534 538 540 558 560 562 564 575 577 581 583 587 589
593 595 599 601 605 607 611 613 705 707 709 720 722 724
728 736 738 742 744 752 754 773 778 780 785 787 789 796
798 802 804 808 810 814 816 820 822 826 828 832 834 926
928 930 941 943 945 949 957 959 963 965 969 971 979 981
1003 1005 1007 1015 1017 1022 1024 1026 1028 1030 1032 1034 1036 1043
1045 1049 1051 1055 1057 1061 1063 1067 1069 1073 1075 1079 1081 1185
1187 1189 1191 1193 1197 1199 1216 1218 1222 1226 1228 1232 1239 1241
1245 1247 1249 1251 1253 1255 1257 1265 1267 1269 1271 1284 1286 1290
1292 1296 1298 1300 1302 1304 1306 1308 1320 1322 1326 1328 1330 1332
1334 1336 1349 1351 1355 1357 1361 1363 1367 1369 1381 1383 1385 1387
1389 1400 1402 1406 1408 1412 1414 1418 1420 1432 1434 1436 1438 1440
1449 1451 1455 1457 1461 1463 1467 1469 1473 1475 1479 1481 1485 1487
1600 1602 1604 1616 1618 1622 1626 1628 1632 1637 1639 1643 1647 1649
1653 1659 1661 1663 1665 1667 1671 1673 1675 1677 1679 1681 1683 1689
1695 1697 1699 1701 1705 1707 1709 1711 1713 1715 1717 1723 1725 1735
1737 1741 1743 1745 1749 1751 1761 1763 1765 1767 1771 1773 1775 1777
1779 1781 1783 1791 1801 1803 1807 1809 1811 1815 1817 1827 1829 1831
1833 1837 1839 1841 1843 1845 1847 1849 1857 1859 1877 1879 1883 1885
1896 1898 1900 1996 1998 2000 2011 2013 2015 2019 2026 2028 2030 2039
2041 2045 2047 2051 2053 2057 2059 2071 2073 2075 2077 2079 2081 2083
2096 2098 2102 2104 2108 2110 2114 2116 2128 2130 2132 2134 2136 2138
2140 2151 2153 2157 2182 2184 2188 2190 2194 2196 2200 2202 2206 2208
2212 2214 2218 2220
.LJ 150 152 154 156 167 177 182 184 186 188 190 192 194 196
198 218 220 228 236 238 240 242 250 252 254 288 290 292
300 304 306 338 340 342 350 354 356 387 389 391 399 403
405 438 440 444 446 448 450 458 492 494 498 500 508 510
544 546 548 550 554 556 564 566 587 611 613 703 705 707
709 720 730 748 750 758 760 767 769 771 773 787 789 808
832 834 924 926 928 930 941 951 975 977 985 987 989 991
999 1001 1011 1013 1034 1036 1055 1079 1081 1183 1185 1187 1203 1214
1224 1234 1247 1249 1251 1253 1255 1257 1271 1273 1308 1310 1336 1338
1373 1375 1377 1379 1389 1424 1426 1428 1430 1440 1461 1485 1487 1598
1600 1602 1604 1614 1624 1626 1632 1645 1647 1653 1663 1685 1687 1689
1697 1719 1721 1723 1725 1727 1755 1763 1785 1787 1789 1791 1793 1821
1829 1851 1853 1855 1857 1859 1864 1866 1868 1870 1900 1902 1994 1996
1998 2000 2011 2021 2026 2028 2030 2037 2063 2065 2067 2069 2083 2085
2094 2120 2122 2124 2126 2140 2159 2161 2165 2167 2171 2173 2194 2218
2220
.LJMAP 156 167 198 220 240 254 306 356 405 450 510 550 566 709
720 773 789 930 941 991 1036 1203 1214 1257 1273 1310 1338 1379
1430 1604 1614 1725 1727 1789 1793 1855 1859 1870 1902 2000 2011 2030
2069 2085 2126
.LJZ 148 701 922 1181 1596 1992
.LLDCT 152 228 242 288 292 338 342 387 391 438 444 492 498 544 SEQ 0822
554 587 611 705 748 758 767 808 832 926 975 985 999 1011
1055 1079 1185 1373 1424 1461 1485 1600 1626 1647 1663 1697 1763 1829
1864 1996 2063 2120 2159 2165 2171 2194 2218
.LMGC 169 171 173 182 184 186 188 190 192 194 196 206 208 212
216 230 232 234 244 246 248 264 266 268 270 272 274 276
278 280 282 284 286 294 296 298 314 316 318 320 322 324
326 328 330 332 334 336 344 346 348 363 365 367 369 371
373 375 377 379 381 383 385 393 395 397 414 416 418 420
422 424 426 428 430 432 434 436 442 452 454 456 468 470
472 474 476 478 480 482 484 486 488 490 496 502 504 506
520 522 524 526 528 530 532 534 536 538 540 542 552 558
560 562 575 577 579 581 583 585 589 591 593 595 597 601
603 607 609 722 724 726 736 738 740 742 744 746 752 754
756 762 773 778 780 785 796 798 800 802 804 806 810 812
814 816 818 822 824 828 830 943 945 947 957 959 961 963
965 967 969 971 973 979 981 983 997 1003 1005 1009 1015 1017
1032 1036 1043 1045 1047 1049 1051 1053 1057 1059 1061 1063 1065 1069
1071 1075 1077 1191 1193 1195 1197 1199 1201 1216 1218 1220 1226 1228
1230 1239 1241 1243 1247 1249 1251 1253 1255 1265 1267 1284 1286 1288
1290 1292 1294 1296 1298 1302 1306 1320 1322 1324 1326 1328 1332 1349
1351 1353 1355 1357 1359 1361 1363 1365 1367 1369 1371 1381 1383 1387
1400 1402 1404 1406 1408 1410 1412 1414 1416 1418 1420 1422 1432 1434
1438 1449 1451 1453 1455 1457 1459 1463 1465 1467 1469 1471 1475 1477
1481 1483 1616 1618 1620 1628 1630 1637 1639 1641 1649 1651 1665 1667
1669 1673 1675 1677 1679 1681 1683 1699 1701 1703 1707 1709 1711 1713
1715 1717 1735 1737 1739 1743 1745 1747 1749 1751 1753 1765 1767 1769
1773 1775 1777 1779 1781 1783 1801 1803 1805 1809 1811 1813 1815 1817
1819 1831 1833 1835 1839 1841 1843 1845 1847 1849 1877 1879 1881 1883
1885 1887 2013 2015 2017 2026 2028 2039 2041 2043 2045 2047 2049 2051
2053 2055 2057 2059 2061 2071 2073 2077 2096 2098 2100 2102 2104 2106
2108 2110 2112 2114 2116 2118 2128 2130 2134 2151 2153 2155 2163 2169
2182 2184 2186 2188 2190 2192 2196 2198 2200 2202 2204 2208 2210 2214
2216
.LOENA 171 266 272 278 284 316 322 328 334 365 371 377 383 416
422 428 434 470 476 482 488 522 528 534 540 577 583 589
595 601 607 724 738 744 754 798 804 810 816 822 828 945
959 965 971 981 1045 1051 1057 1063 1069 1075 1193 1199 1218 1228
1241 1286 1292 1322 1351 1357 1363 1369 1402 1408 1414 1420 1451 1457
1463 1469 1475 1481 1618 1628 1639 1649 1667 1701 1737 1745 1751 1767
1803 1811 1817 1833 1879 1885 2015 2041 2047 2053 2059 2098 2104 2110
2116 2153 2184 2190 2196 2202 2208 2214
.LOR 167 169 171 182 184 186 188 190 192 194 196 208 210 232
246 264 266 270 272 276 278 282 284 296 314 316 320 322
326 328 332 334 346 363 365 369 371 375 377 381 383 395
414 416 420 422 426 428 432 434 454 458 468 470 474 476
480 482 486 488 504 508 520 522 526 528 532 534 538 540
560 564 575 577 581 583 589 595 601 607 720 722 724 736
738 742 744 752 754 773 780 787 796 798 802 804 810 816
822 828 941 943 945 957 959 963 965 969 971 979 981 1005
1007 1017 1022 1034 1036 1043 1045 1049 1051 1057 1063 1069 1075 1191
1193 1197 1199 1216 1218 1226 1228 1239 1241 1247 1249 1251 1253 1255
1267 1271 1284 1286 1290 1292 1298 1300 1320 1322 1328 1330 1336 1349
1351 1355 1357 1361 1363 1367 1369 1383 1385 1400 1402 1406 1408 1412 SEQ 0823
1414 1418 1420 1434 1436 1449 1451 1455 1457 1463 1469 1475 1481 1616
1618 1628 1637 1639 1649 1665 1667 1675 1679 1683 1699 1701 1709 1713
1717 1735 1737 1743 1745 1749 1751 1765 1767 1775 1779 1783 1801 1803
1809 1811 1815 1817 1831 1833 1841 1845 1849 1877 1879 1883 1885 2011
2013 2015 2026 2028 2039 2041 2045 2047 2051 2053 2057 2059 2073 2075
2083 2096 2098 2102 2104 2108 2110 2114 2116 2130 2132 2140 2151 2153
2182 2184 2188 2190 2196 2202 2208 2214
.LPLUS 154 156 613 707 709 834 928 930 1081 1187 1189 1487 1602 1604
1632 1653 1663 1689 1697 1723 1763 1791 1829 1857 1998 2000 2220
.LRDLM 593 814 1061 1467 2200
.LRPCT 154 238 252 290 304 340 354 389 403 440 446 494 500 546
556 613 707 750 760 769 834 928 977 987 1001 1013 1081 1187
1375 1426 1487 1602 1632 1653 1689 1723 1791 1857 1866 1998 2065 2122
2161 2167 2173 2220
.LS0A 167 171 198 210 266 272 278 284 316 322 328 334 365 371
377 383 416 422 428 434 458 470 476 482 488 508 522 528
534 540 564 577 583 589 595 599 601 605 607 720 724 738
744 754 787 789 798 804 810 816 820 822 826 828 941 945
959 965 971 981 1007 1022 1028 1034 1045 1051 1057 1063 1067 1069
1073 1075 1193 1199 1218 1228 1241 1257 1271 1286 1292 1300 1322 1330
1336 1351 1357 1363 1369 1385 1402 1408 1414 1420 1436 1451 1457 1463
1469 1473 1475 1479 1481 1618 1626 1628 1632 1639 1647 1649 1653 1667
1701 1737 1745 1751 1767 1803 1811 1817 1833 1879 1885 2011 2015 2030
2041 2047 2053 2059 2075 2081 2083 2098 2104 2110 2116 2132 2138 2140
2153 2184 2190 2196 2202 2206 2208 2212 2214
.LS0B 152 154 156 206 230 244 294 344 393 452 502 558 587 611
613 705 707 709 778 808 832 834 926 928 930 1003 1015 1055
1079 1081 1185 1187 1189 1265 1296 1326 1381 1432 1461 1485 1487 1600
1602 1604 1659 1661 1663 1673 1677 1681 1689 1695 1697 1707 1711 1715
1723 1725 1761 1763 1773 1777 1781 1791 1827 1829 1839 1843 1847 1857
1859 1996 1998 2000 2071 2128 2194 2218 2220
.LSAB 214 218 236 250 300 350 399 1024 1026 1030 1269 1304 1308 1334
1389 1440 1896 1898 1900 2079 2136
.LSD0 169 182 184 186 188 190 192 194 196 208 232 246 264 270
276 282 296 314 320 326 332 346 363 369 375 381 395 414
420 426 432 454 468 474 480 486 504 520 526 532 538 560
575 581 722 736 742 752 773 780 796 802 943 957 963 969
979 1005 1017 1036 1043 1049 1191 1197 1216 1226 1239 1247 1249 1251
1253 1255 1267 1284 1290 1298 1320 1328 1349 1355 1361 1367 1383 1387
1400 1406 1412 1418 1434 1438 1449 1455 1616 1637 1665 1675 1679 1683
1699 1709 1713 1717 1735 1743 1749 1765 1775 1779 1783 1801 1809 1815
1831 1841 1845 1849 1877 1883 2013 2026 2028 2039 2045 2051 2057 2073
2077 2096 2102 2108 2114 2130 2134 2151 2182 2188
.LSDA 212 216 234 248 298 348 397 456 506 562 593 785 814 1032
1061 1302 1306 1332 1467 2200
.LSELM 171 208 232 246 266 272 278 284 296 316 322 328 334 346
365 371 377 383 395 416 422 428 434 454 470 476 482 488
504 522 528 534 540 560 577 583 589 595 601 607 724 738
744 754 780 798 804 810 816 822 828 945 959 965 971 981
1005 1017 1045 1051 1057 1063 1069 1075 1193 1199 1218 1228 1241 1267
1286 1292 1298 1322 1328 1351 1357 1363 1369 1383 1402 1408 1414 1420
1434 1451 1457 1463 1469 1475 1481 1618 1628 1639 1649 1667 1675 1679
1683 1701 1709 1713 1717 1737 1745 1751 1767 1775 1779 1783 1803 1811 SEQ 0824
1817 1833 1841 1845 1849 1879 1885 2015 2041 2047 2053 2059 2073 2098
2104 2110 2116 2130 2153 2184 2190 2196 2202 2208 2214
.LSELP 173 206 230 244 268 274 280 286 294 318 324 330 336 344
367 373 379 385 393 418 424 430 436 442 452 472 478 484
490 496 502 524 530 536 542 552 558 579 585 591 597 603
609 726 740 746 756 762 778 800 806 812 818 824 830 947
961 967 973 983 997 1003 1009 1015 1047 1053 1059 1065 1071 1077
1195 1201 1220 1230 1243 1265 1288 1294 1296 1324 1326 1353 1359 1365
1371 1381 1404 1410 1416 1422 1432 1453 1459 1465 1471 1477 1483 1620
1630 1641 1651 1669 1673 1677 1681 1703 1707 1711 1715 1739 1747 1753
1769 1773 1777 1781 1805 1813 1819 1835 1839 1843 1847 1881 1887 2017
2043 2049 2055 2061 2071 2100 2106 2112 2118 2128 2155 2163 2169 2186
2192 2198 2204 2210 2216
.LSKCN 169 182 184 186 188 190 192 194 196 212 216 234 248 264
270 276 282 298 314 320 326 332 348 363 369 375 381 397
414 420 426 432 468 474 480 486 506 520 526 532 538 562
575 581 722 736 742 752 773 796 802 943 957 963 969 979
1032 1036 1043 1049 1191 1197 1216 1226 1239 1247 1249 1251 1253 1255
1284 1290 1302 1306 1320 1332 1349 1355 1361 1367 1400 1406 1412 1418
1449 1455 1616 1637 1665 1699 1735 1743 1749 1765 1801 1809 1815 1831
1877 1883 2013 2026 2028 2039 2045 2051 2057 2096 2102 2108 2114 2151
2182 2188
.LXNOR 599 605 820 826 1067 1073 1473 1479 2206 2212
.LXOR 218 1030 1308 1900
.MA 167 210 212 214 216 218 234 236 248 250 298 300 348 350
397 399 456 458 506 508 562 564 593 720 785 787 814 941
1007 1022 1024 1026 1030 1032 1034 1061 1269 1271 1300 1302 1304 1306
1308 1330 1332 1334 1336 1385 1387 1389 1436 1438 1440 1467 1761 1827
1896 1898 1900 2011 2075 2077 2079 2083 2132 2134 2136 2140 2200
.MAND 152 198 206 212 214 216 230 234 236 244 248 250 294 298
300 344 348 350 393 397 399 452 456 502 506 558 562 587
593 611 705 778 785 789 808 814 832 926 1003 1015 1024 1026
1028 1032 1055 1061 1079 1185 1257 1265 1269 1296 1302 1304 1306 1326
1332 1334 1381 1387 1389 1432 1438 1440 1461 1467 1485 1600 1626 1647
1659 1661 1673 1677 1681 1695 1707 1711 1715 1725 1761 1773 1777 1781
1827 1839 1843 1847 1859 1896 1898 1996 2030 2071 2077 2079 2081 2128
2134 2136 2138 2194 2200 2218
.MB 152 154 156 167 182 184 186 188 190 192 194 196 198 206
208 210 212 214 216 218 230 232 234 236 244 246 248 250
294 296 298 300 344 346 348 350 393 395 397 399 452 454
456 502 504 506 558 560 562 705 707 709 720 773 778 780
785 789 926 928 930 941 1003 1005 1007 1015 1017 1022 1024 1026
1028 1030 1032 1036 1185 1187 1189 1247 1249 1251 1253 1255 1257 1265
1267 1269 1296 1298 1300 1302 1304 1306 1308 1326 1328 1330 1332 1334
1381 1383 1385 1387 1389 1432 1434 1436 1438 1440 1600 1602 1604 1659
1661 1663 1673 1675 1677 1679 1681 1683 1689 1695 1697 1707 1709 1711
1713 1715 1717 1723 1725 1761 1763 1773 1775 1777 1779 1781 1783 1791
1827 1829 1839 1841 1843 1845 1847 1849 1857 1859 1896 1898 1900 1996
1998 2000 2011 2026 2028 2030 2071 2073 2075 2077 2079 2081 2128 2130
2132 2134 2136 2138
.MCCAF 1868
.MCCFZ 218 236 250 300 350 399 458 508 564 787 1034 1271 1308 1336
1389 1440 1900 2083 2140 SEQ 0825
.MCCPP 1687 1721 1787 1853
.MCCXA 448 548 771 989 1377 1428 2067 2124
.MCENA 218 236 250 300 350 399 448 458 508 548 564 771 787 989
1034 1271 1308 1336 1377 1389 1428 1440 1687 1721 1787 1853 1868 1900
2067 2083 2124 2140
.MCJP 218 236 250 300 350 399 448 458 508 548 564 771 787 989
1034 1271 1308 1336 1377 1389 1428 1440 1687 1721 1787 1853 1868 1900
2067 2083 2124 2140
.MCJS 150 177 182 184 186 188 190 192 194 196 703 730 924 951
1183 1224 1234 1247 1249 1251 1253 1255 1598 1624 1645 1685 1719 1755
1785 1821 1851 1994 2021 2026 2028
.MCONT 169 171 173 175 204 206 208 210 212 214 216 230 232 234
244 246 248 262 264 266 268 270 272 274 276 278 280 282
284 286 294 296 298 312 314 316 318 320 322 324 326 328
330 332 334 336 344 346 348 361 363 365 367 369 371 373
375 377 379 381 383 385 393 395 397 412 414 416 418 420
422 424 426 428 430 432 434 436 442 452 454 456 466 468
470 472 474 476 478 480 482 484 486 488 490 496 502 504
506 518 520 522 524 526 528 530 532 534 536 538 540 542
552 558 560 562 575 577 579 581 583 585 589 591 593 595
597 599 601 603 605 607 609 722 724 726 728 736 738 740
742 744 746 752 754 756 762 778 780 785 796 798 800 802
804 806 810 812 814 816 818 820 822 824 826 828 830 943
945 947 949 957 959 961 963 965 967 969 971 973 979 981
983 997 1003 1005 1007 1009 1015 1017 1022 1024 1026 1028 1030 1032
1043 1045 1047 1049 1051 1053 1057 1059 1061 1063 1065 1067 1069 1071
1073 1075 1077 1189 1191 1193 1195 1197 1199 1201 1216 1218 1220 1222
1226 1228 1230 1232 1239 1241 1243 1245 1263 1265 1267 1269 1282 1284
1286 1288 1290 1292 1294 1296 1298 1300 1302 1304 1306 1318 1320 1322
1324 1326 1328 1330 1332 1334 1349 1351 1353 1355 1357 1359 1361 1363
1365 1367 1369 1371 1381 1383 1385 1387 1400 1402 1404 1406 1408 1410
1412 1414 1416 1418 1420 1422 1432 1434 1436 1438 1449 1451 1453 1455
1457 1459 1463 1465 1467 1469 1471 1473 1475 1477 1479 1481 1483 1600
1616 1618 1620 1622 1628 1630 1637 1639 1641 1643 1649 1651 1659 1661
1665 1667 1669 1671 1673 1675 1677 1679 1681 1683 1695 1699 1701 1703
1705 1707 1709 1711 1713 1715 1717 1733 1735 1737 1739 1741 1743 1745
1747 1749 1751 1753 1761 1765 1767 1769 1771 1773 1775 1777 1779 1781
1783 1799 1801 1803 1805 1807 1809 1811 1813 1815 1817 1819 1827 1831
1833 1835 1837 1839 1841 1843 1845 1847 1849 1877 1879 1881 1883 1885
1887 1896 1898 2013 2015 2017 2019 2039 2041 2043 2045 2047 2049 2051
2053 2055 2057 2059 2061 2071 2073 2075 2077 2079 2081 2096 2098 2100
2102 2104 2106 2108 2110 2112 2114 2116 2118 2128 2130 2132 2134 2136
2138 2149 2151 2153 2155 2157 2163 2169 2182 2184 2186 2188 2190 2192
2196 2198 2200 2202 2204 2206 2208 2210 2212 2214 2216
.MCRTN 222 256 302 352 401 460 512 568 615 836 1083 1275 1312 1340
1347 1391 1398 1442 1489 1872 1889 1904 2037 2087 2094 2142 2175 2222
.MCRY 154 156 613 707 709 834 928 930 1081 1187 1189 1487 1602 1604
1632 1653 1663 1689 1697 1723 1763 1791 1829 1857 1998 2000 2220
.MD 152 154 156 167 169 171 175 182 184 186 188 190 192 194
196 198 206 208 210 212 214 216 218 228 230 232 234 236
242 244 246 248 250 264 266 270 272 276 278 282 284 294
296 298 300 314 316 320 322 326 328 332 334 344 346 348
350 363 365 369 371 375 377 381 383 393 395 397 399 414 SEQ 0826
416 420 422 426 428 432 434 448 452 454 456 458 468 470
474 476 480 482 486 488 502 504 506 508 520 522 526 528
532 534 538 540 558 560 562 564 575 577 581 583 587 589
593 595 599 601 605 607 611 613 705 707 709 720 722 724
728 736 738 742 744 752 754 773 778 780 785 787 789 796
798 802 804 808 810 814 816 820 822 826 828 832 834 926
928 930 941 943 945 949 957 959 963 965 969 971 979 981
1003 1005 1007 1015 1017 1022 1024 1026 1028 1030 1032 1034 1036 1043
1045 1049 1051 1055 1057 1061 1063 1067 1069 1073 1075 1079 1081 1185
1187 1189 1191 1193 1197 1199 1216 1218 1222 1226 1228 1232 1239 1241
1245 1247 1249 1251 1253 1255 1257 1265 1267 1269 1271 1284 1286 1290
1292 1296 1298 1300 1302 1304 1306 1308 1320 1322 1326 1328 1330 1332
1334 1336 1349 1351 1355 1357 1361 1363 1367 1369 1381 1383 1385 1387
1389 1400 1402 1406 1408 1412 1414 1418 1420 1432 1434 1436 1438 1440
1449 1451 1455 1457 1461 1463 1467 1469 1473 1475 1479 1481 1485 1487
1600 1602 1604 1616 1618 1622 1626 1628 1632 1637 1639 1643 1647 1649
1653 1659 1661 1663 1665 1667 1671 1673 1675 1677 1679 1681 1683 1689
1695 1697 1699 1701 1705 1707 1709 1711 1713 1715 1717 1723 1725 1735
1737 1741 1743 1745 1749 1751 1761 1763 1765 1767 1771 1773 1775 1777
1779 1781 1783 1791 1801 1803 1807 1809 1811 1815 1817 1827 1829 1831
1833 1837 1839 1841 1843 1845 1847 1849 1857 1859 1877 1879 1883 1885
1896 1898 1900 1996 1998 2000 2011 2013 2015 2019 2026 2028 2030 2039
2041 2045 2047 2051 2053 2057 2059 2071 2073 2075 2077 2079 2081 2083
2096 2098 2102 2104 2108 2110 2114 2116 2128 2130 2132 2134 2136 2138
2140 2151 2153 2157 2182 2184 2188 2190 2194 2196 2200 2202 2206 2208
2212 2214 2218 2220
.MJ 150 152 154 156 167 177 182 184 186 188 190 192 194 196
198 218 220 228 236 238 240 242 250 252 254 288 290 292
300 304 306 338 340 342 350 354 356 387 389 391 399 403
405 438 440 444 446 448 450 458 492 494 498 500 508 510
544 546 548 550 554 556 564 566 587 611 613 703 705 707
709 720 730 748 750 758 760 767 769 771 773 787 789 808
832 834 924 926 928 930 941 951 975 977 985 987 989 991
999 1001 1011 1013 1034 1036 1055 1079 1081 1183 1185 1187 1203 1214
1224 1234 1247 1249 1251 1253 1255 1257 1271 1273 1308 1310 1336 1338
1373 1375 1377 1379 1389 1424 1426 1428 1430 1440 1461 1485 1487 1598
1600 1602 1604 1614 1624 1626 1632 1645 1647 1653 1663 1685 1687 1689
1697 1719 1721 1723 1725 1727 1755 1763 1785 1787 1789 1791 1793 1821
1829 1851 1853 1855 1857 1859 1864 1866 1868 1870 1900 1902 1994 1996
1998 2000 2011 2021 2026 2028 2030 2037 2063 2065 2067 2069 2083 2085
2094 2120 2122 2124 2126 2140 2159 2161 2165 2167 2171 2173 2194 2218
2220
.MJMAP 156 167 198 220 240 254 306 356 405 450 510 550 566 709
720 773 789 930 941 991 1036 1203 1214 1257 1273 1310 1338 1379
1430 1604 1614 1725 1727 1789 1793 1855 1859 1870 1902 2000 2011 2030
2069 2085 2126
.MJZ 148 701 922 1181 1596 1992
.MLDCT 152 228 242 288 292 338 342 387 391 438 444 492 498 544
554 587 611 705 748 758 767 808 832 926 975 985 999 1011
1055 1079 1185 1373 1424 1461 1485 1600 1626 1647 1663 1697 1763 1829
1864 1996 2063 2120 2159 2165 2171 2194 2218
.MMGC 169 171 173 182 184 186 188 190 192 194 196 206 208 212
216 230 232 234 244 246 248 264 266 268 270 272 274 276 SEQ 0827
278 280 282 284 286 294 296 298 314 316 318 320 322 324
326 328 330 332 334 336 344 346 348 363 365 367 369 371
373 375 377 379 381 383 385 393 395 397 414 416 418 420
422 424 426 428 430 432 434 436 442 452 454 456 468 470
472 474 476 478 480 482 484 486 488 490 496 502 504 506
520 522 524 526 528 530 532 534 536 538 540 542 552 558
560 562 575 577 579 581 583 585 589 591 593 595 597 601
603 607 609 722 724 726 736 738 740 742 744 746 752 754
756 762 773 778 780 785 796 798 800 802 804 806 810 812
814 816 818 822 824 828 830 943 945 947 957 959 961 963
965 967 969 971 973 979 981 983 997 1003 1005 1009 1015 1017
1032 1036 1043 1045 1047 1049 1051 1053 1057 1059 1061 1063 1065 1069
1071 1075 1077 1191 1193 1195 1197 1199 1201 1216 1218 1220 1226 1228
1230 1239 1241 1243 1247 1249 1251 1253 1255 1265 1267 1284 1286 1288
1290 1292 1294 1296 1298 1302 1306 1320 1322 1324 1326 1328 1332 1349
1351 1353 1355 1357 1359 1361 1363 1365 1367 1369 1371 1381 1383 1387
1400 1402 1404 1406 1408 1410 1412 1414 1416 1418 1420 1422 1432 1434
1438 1449 1451 1453 1455 1457 1459 1463 1465 1467 1469 1471 1475 1477
1481 1483 1616 1618 1620 1628 1630 1637 1639 1641 1649 1651 1665 1667
1669 1673 1675 1677 1679 1681 1683 1699 1701 1703 1707 1709 1711 1713
1715 1717 1735 1737 1739 1743 1745 1747 1749 1751 1753 1765 1767 1769
1773 1775 1777 1779 1781 1783 1801 1803 1805 1809 1811 1813 1815 1817
1819 1831 1833 1835 1839 1841 1843 1845 1847 1849 1877 1879 1881 1883
1885 1887 2013 2015 2017 2026 2028 2039 2041 2043 2045 2047 2049 2051
2053 2055 2057 2059 2061 2071 2073 2077 2096 2098 2100 2102 2104 2106
2108 2110 2112 2114 2116 2118 2128 2130 2134 2151 2153 2155 2163 2169
2182 2184 2186 2188 2190 2192 2196 2198 2200 2202 2204 2208 2210 2214
2216
.MOENA 171 266 272 278 284 316 322 328 334 365 371 377 383 416
422 428 434 470 476 482 488 522 528 534 540 577 583 589
595 601 607 724 738 744 754 798 804 810 816 822 828 945
959 965 971 981 1045 1051 1057 1063 1069 1075 1193 1199 1218 1228
1241 1286 1292 1322 1351 1357 1363 1369 1402 1408 1414 1420 1451 1457
1463 1469 1475 1481 1618 1628 1639 1649 1667 1701 1737 1745 1751 1767
1803 1811 1817 1833 1879 1885 2015 2041 2047 2053 2059 2098 2104 2110
2116 2153 2184 2190 2196 2202 2208 2214
.MOR 167 169 171 182 184 186 188 190 192 194 196 208 210 232
246 264 266 270 272 276 278 282 284 296 314 316 320 322
326 328 332 334 346 363 365 369 371 375 377 381 383 395
414 416 420 422 426 428 432 434 454 458 468 470 474 476
480 482 486 488 504 508 520 522 526 528 532 534 538 540
560 564 575 577 581 583 589 595 601 607 720 722 724 736
738 742 744 752 754 773 780 787 796 798 802 804 810 816
822 828 941 943 945 957 959 963 965 969 971 979 981 1005
1007 1017 1022 1034 1036 1043 1045 1049 1051 1057 1063 1069 1075 1191
1193 1197 1199 1216 1218 1226 1228 1239 1241 1247 1249 1251 1253 1255
1267 1271 1284 1286 1290 1292 1298 1300 1320 1322 1328 1330 1336 1349
1351 1355 1357 1361 1363 1367 1369 1383 1385 1400 1402 1406 1408 1412
1414 1418 1420 1434 1436 1449 1451 1455 1457 1463 1469 1475 1481 1616
1618 1628 1637 1639 1649 1665 1667 1675 1679 1683 1699 1701 1709 1713
1717 1735 1737 1743 1745 1749 1751 1765 1767 1775 1779 1783 1801 1803
1809 1811 1815 1817 1831 1833 1841 1845 1849 1877 1879 1883 1885 2011
2013 2015 2026 2028 2039 2041 2045 2047 2051 2053 2057 2059 2073 2075 SEQ 0828
2083 2096 2098 2102 2104 2108 2110 2114 2116 2130 2132 2140 2151 2153
2182 2184 2188 2190 2196 2202 2208 2214
.MPLUS 154 156 613 707 709 834 928 930 1081 1187 1189 1487 1602 1604
1632 1653 1663 1689 1697 1723 1763 1791 1829 1857 1998 2000 2220
.MRDLM 593 814 1061 1467 2200
.MRPCT 154 238 252 290 304 340 354 389 403 440 446 494 500 546
556 613 707 750 760 769 834 928 977 987 1001 1013 1081 1187
1375 1426 1487 1602 1632 1653 1689 1723 1791 1857 1866 1998 2065 2122
2161 2167 2173 2220
.MS0A 167 171 198 210 266 272 278 284 316 322 328 334 365 371
377 383 416 422 428 434 458 470 476 482 488 508 522 528
534 540 564 577 583 589 595 599 601 605 607 720 724 738
744 754 787 789 798 804 810 816 820 822 826 828 941 945
959 965 971 981 1007 1022 1028 1034 1045 1051 1057 1063 1067 1069
1073 1075 1193 1199 1218 1228 1241 1257 1271 1286 1292 1300 1322 1330
1336 1351 1357 1363 1369 1385 1402 1408 1414 1420 1436 1451 1457 1463
1469 1473 1475 1479 1481 1618 1626 1628 1632 1639 1647 1649 1653 1667
1701 1737 1745 1751 1767 1803 1811 1817 1833 1879 1885 2011 2015 2030
2041 2047 2053 2059 2075 2081 2083 2098 2104 2110 2116 2132 2138 2140
2153 2184 2190 2196 2202 2206 2208 2212 2214
.MS0B 152 154 156 206 230 244 294 344 393 452 502 558 587 611
613 705 707 709 778 808 832 834 926 928 930 1003 1015 1055
1079 1081 1185 1187 1189 1265 1296 1326 1381 1432 1461 1485 1487 1600
1602 1604 1659 1661 1663 1673 1677 1681 1689 1695 1697 1707 1711 1715
1723 1725 1761 1763 1773 1777 1781 1791 1827 1829 1839 1843 1847 1857
1859 1996 1998 2000 2071 2128 2194 2218 2220
.MSAB 214 218 236 250 300 350 399 1024 1026 1030 1269 1304 1308 1334
1389 1440 1896 1898 1900 2079 2136
.MSD0 169 182 184 186 188 190 192 194 196 208 232 246 264 270
276 282 296 314 320 326 332 346 363 369 375 381 395 414
420 426 432 454 468 474 480 486 504 520 526 532 538 560
575 581 722 736 742 752 773 780 796 802 943 957 963 969
979 1005 1017 1036 1043 1049 1191 1197 1216 1226 1239 1247 1249 1251
1253 1255 1267 1284 1290 1298 1320 1328 1349 1355 1361 1367 1383 1387
1400 1406 1412 1418 1434 1438 1449 1455 1616 1637 1665 1675 1679 1683
1699 1709 1713 1717 1735 1743 1749 1765 1775 1779 1783 1801 1809 1815
1831 1841 1845 1849 1877 1883 2013 2026 2028 2039 2045 2051 2057 2073
2077 2096 2102 2108 2114 2130 2134 2151 2182 2188
.MSDA 212 216 234 248 298 348 397 456 506 562 593 785 814 1032
1061 1302 1306 1332 1467 2200
.MSELM 171 208 232 246 266 272 278 284 296 316 322 328 334 346
365 371 377 383 395 416 422 428 434 454 470 476 482 488
504 522 528 534 540 560 577 583 589 595 601 607 724 738
744 754 780 798 804 810 816 822 828 945 959 965 971 981
1005 1017 1045 1051 1057 1063 1069 1075 1193 1199 1218 1228 1241 1267
1286 1292 1298 1322 1328 1351 1357 1363 1369 1383 1402 1408 1414 1420
1434 1451 1457 1463 1469 1475 1481 1618 1628 1639 1649 1667 1675 1679
1683 1701 1709 1713 1717 1737 1745 1751 1767 1775 1779 1783 1803 1811
1817 1833 1841 1845 1849 1879 1885 2015 2041 2047 2053 2059 2073 2098
2104 2110 2116 2130 2153 2184 2190 2196 2202 2208 2214
.MSELP 173 206 230 244 268 274 280 286 294 318 324 330 336 344
367 373 379 385 393 418 424 430 436 442 452 472 478 484
490 496 502 524 530 536 542 552 558 579 585 591 597 603 SEQ 0829
609 726 740 746 756 762 778 800 806 812 818 824 830 947
961 967 973 983 997 1003 1009 1015 1047 1053 1059 1065 1071 1077
1195 1201 1220 1230 1243 1265 1288 1294 1296 1324 1326 1353 1359 1365
1371 1381 1404 1410 1416 1422 1432 1453 1459 1465 1471 1477 1483 1620
1630 1641 1651 1669 1673 1677 1681 1703 1707 1711 1715 1739 1747 1753
1769 1773 1777 1781 1805 1813 1819 1835 1839 1843 1847 1881 1887 2017
2043 2049 2055 2061 2071 2100 2106 2112 2118 2128 2155 2163 2169 2186
2192 2198 2204 2210 2216
.MSKCN 169 182 184 186 188 190 192 194 196 212 216 234 248 264
270 276 282 298 314 320 326 332 348 363 369 375 381 397
414 420 426 432 468 474 480 486 506 520 526 532 538 562
575 581 722 736 742 752 773 796 802 943 957 963 969 979
1032 1036 1043 1049 1191 1197 1216 1226 1239 1247 1249 1251 1253 1255
1284 1290 1302 1306 1320 1332 1349 1355 1361 1367 1400 1406 1412 1418
1449 1455 1616 1637 1665 1699 1735 1743 1749 1765 1801 1809 1815 1831
1877 1883 2013 2026 2028 2039 2045 2051 2057 2096 2102 2108 2114 2151
2182 2188
.MXNOR 599 605 820 826 1067 1073 1473 1479 2206 2212
.MXOR 218 1030 1308 1900
.RA 167 210 212 214 216 218 234 236 248 250 298 300 348 350
397 399 456 458 506 508 562 564 593 720 785 787 814 941
1007 1022 1024 1026 1030 1032 1034 1061 1269 1271 1300 1302 1304 1306
1308 1330 1332 1334 1336 1385 1387 1389 1436 1438 1440 1467 1761 1827
1896 1898 1900 2011 2075 2077 2079 2083 2132 2134 2136 2140 2200
.RAND 152 198 206 212 214 216 230 234 236 244 248 250 294 298
300 344 348 350 393 397 399 452 456 502 506 558 562 587
593 611 705 778 785 789 808 814 832 926 1003 1015 1024 1026
1028 1032 1055 1061 1079 1185 1257 1265 1269 1296 1302 1304 1306 1326
1332 1334 1381 1387 1389 1432 1438 1440 1461 1467 1485 1600 1626 1647
1659 1661 1673 1677 1681 1695 1707 1711 1715 1725 1761 1773 1777 1781
1827 1839 1843 1847 1859 1896 1898 1996 2030 2071 2077 2079 2081 2128
2134 2136 2138 2194 2200 2218
.RB 152 154 156 167 182 184 186 188 190 192 194 196 198 206
208 210 212 214 216 218 230 232 234 236 244 246 248 250
294 296 298 300 344 346 348 350 393 395 397 399 452 454
456 502 504 506 558 560 562 705 707 709 720 773 778 780
785 789 926 928 930 941 1003 1005 1007 1015 1017 1022 1024 1026
1028 1030 1032 1036 1185 1187 1189 1247 1249 1251 1253 1255 1257 1265
1267 1269 1296 1298 1300 1302 1304 1306 1308 1326 1328 1330 1332 1334
1381 1383 1385 1387 1389 1432 1434 1436 1438 1440 1600 1602 1604 1659
1661 1663 1673 1675 1677 1679 1681 1683 1689 1695 1697 1707 1709 1711
1713 1715 1717 1723 1725 1761 1763 1773 1775 1777 1779 1781 1783 1791
1827 1829 1839 1841 1843 1845 1847 1849 1857 1859 1896 1898 1900 1996
1998 2000 2011 2026 2028 2030 2071 2073 2075 2077 2079 2081 2128 2130
2132 2134 2136 2138
.RCCAF 1868
.RCCFZ 218 236 250 300 350 399 458 508 564 787 1034 1271 1308 1336
1389 1440 1900 2083 2140
.RCCPP 1687 1721 1787 1853
.RCCXA 448 548 771 989 1377 1428 2067 2124
.RCENA 218 236 250 300 350 399 448 458 508 548 564 771 787 989
1034 1271 1308 1336 1377 1389 1428 1440 1687 1721 1787 1853 1868 1900
2067 2083 2124 2140 SEQ 0830
.RCJP 218 236 250 300 350 399 448 458 508 548 564 771 787 989
1034 1271 1308 1336 1377 1389 1428 1440 1687 1721 1787 1853 1868 1900
2067 2083 2124 2140
.RCJS 150 177 182 184 186 188 190 192 194 196 703 730 924 951
1183 1224 1234 1247 1249 1251 1253 1255 1598 1624 1645 1685 1719 1755
1785 1821 1851 1994 2021 2026 2028
.RCONT 169 171 173 175 204 206 208 210 212 214 216 230 232 234
244 246 248 262 264 266 268 270 272 274 276 278 280 282
284 286 294 296 298 312 314 316 318 320 322 324 326 328
330 332 334 336 344 346 348 361 363 365 367 369 371 373
375 377 379 381 383 385 393 395 397 412 414 416 418 420
422 424 426 428 430 432 434 436 442 452 454 456 466 468
470 472 474 476 478 480 482 484 486 488 490 496 502 504
506 518 520 522 524 526 528 530 532 534 536 538 540 542
552 558 560 562 575 577 579 581 583 585 589 591 593 595
597 599 601 603 605 607 609 722 724 726 728 736 738 740
742 744 746 752 754 756 762 778 780 785 796 798 800 802
804 806 810 812 814 816 818 820 822 824 826 828 830 943
945 947 949 957 959 961 963 965 967 969 971 973 979 981
983 997 1003 1005 1007 1009 1015 1017 1022 1024 1026 1028 1030 1032
1043 1045 1047 1049 1051 1053 1057 1059 1061 1063 1065 1067 1069 1071
1073 1075 1077 1189 1191 1193 1195 1197 1199 1201 1216 1218 1220 1222
1226 1228 1230 1232 1239 1241 1243 1245 1263 1265 1267 1269 1282 1284
1286 1288 1290 1292 1294 1296 1298 1300 1302 1304 1306 1318 1320 1322
1324 1326 1328 1330 1332 1334 1349 1351 1353 1355 1357 1359 1361 1363
1365 1367 1369 1371 1381 1383 1385 1387 1400 1402 1404 1406 1408 1410
1412 1414 1416 1418 1420 1422 1432 1434 1436 1438 1449 1451 1453 1455
1457 1459 1463 1465 1467 1469 1471 1473 1475 1477 1479 1481 1483 1600
1616 1618 1620 1622 1628 1630 1637 1639 1641 1643 1649 1651 1659 1661
1665 1667 1669 1671 1673 1675 1677 1679 1681 1683 1695 1699 1701 1703
1705 1707 1709 1711 1713 1715 1717 1733 1735 1737 1739 1741 1743 1745
1747 1749 1751 1753 1761 1765 1767 1769 1771 1773 1775 1777 1779 1781
1783 1799 1801 1803 1805 1807 1809 1811 1813 1815 1817 1819 1827 1831
1833 1835 1837 1839 1841 1843 1845 1847 1849 1877 1879 1881 1883 1885
1887 1896 1898 2013 2015 2017 2019 2039 2041 2043 2045 2047 2049 2051
2053 2055 2057 2059 2061 2071 2073 2075 2077 2079 2081 2096 2098 2100
2102 2104 2106 2108 2110 2112 2114 2116 2118 2128 2130 2132 2134 2136
2138 2149 2151 2153 2155 2157 2163 2169 2182 2184 2186 2188 2190 2192
2196 2198 2200 2202 2204 2206 2208 2210 2212 2214 2216
.RCRTN 222 256 302 352 401 460 512 568 615 836 1083 1275 1312 1340
1347 1391 1398 1442 1489 1872 1889 1904 2037 2087 2094 2142 2175 2222
.RCRY 154 156 613 707 709 834 928 930 1081 1187 1189 1487 1602 1604
1632 1653 1663 1689 1697 1723 1763 1791 1829 1857 1998 2000 2220
.RD 152 154 156 167 169 171 175 182 184 186 188 190 192 194
196 198 206 208 210 212 214 216 218 228 230 232 234 236
242 244 246 248 250 264 266 270 272 276 278 282 284 294
296 298 300 314 316 320 322 326 328 332 334 344 346 348
350 363 365 369 371 375 377 381 383 393 395 397 399 414
416 420 422 426 428 432 434 448 452 454 456 458 468 470
474 476 480 482 486 488 502 504 506 508 520 522 526 528
532 534 538 540 558 560 562 564 575 577 581 583 587 589
593 595 599 601 605 607 611 613 705 707 709 720 722 724
728 736 738 742 744 752 754 773 778 780 785 787 789 796 SEQ 0831
798 802 804 808 810 814 816 820 822 826 828 832 834 926
928 930 941 943 945 949 957 959 963 965 969 971 979 981
1003 1005 1007 1015 1017 1022 1024 1026 1028 1030 1032 1034 1036 1043
1045 1049 1051 1055 1057 1061 1063 1067 1069 1073 1075 1079 1081 1185
1187 1189 1191 1193 1197 1199 1216 1218 1222 1226 1228 1232 1239 1241
1245 1247 1249 1251 1253 1255 1257 1265 1267 1269 1271 1284 1286 1290
1292 1296 1298 1300 1302 1304 1306 1308 1320 1322 1326 1328 1330 1332
1334 1336 1349 1351 1355 1357 1361 1363 1367 1369 1381 1383 1385 1387
1389 1400 1402 1406 1408 1412 1414 1418 1420 1432 1434 1436 1438 1440
1449 1451 1455 1457 1461 1463 1467 1469 1473 1475 1479 1481 1485 1487
1600 1602 1604 1616 1618 1622 1626 1628 1632 1637 1639 1643 1647 1649
1653 1659 1661 1663 1665 1667 1671 1673 1675 1677 1679 1681 1683 1689
1695 1697 1699 1701 1705 1707 1709 1711 1713 1715 1717 1723 1725 1735
1737 1741 1743 1745 1749 1751 1761 1763 1765 1767 1771 1773 1775 1777
1779 1781 1783 1791 1801 1803 1807 1809 1811 1815 1817 1827 1829 1831
1833 1837 1839 1841 1843 1845 1847 1849 1857 1859 1877 1879 1883 1885
1896 1898 1900 1996 1998 2000 2011 2013 2015 2019 2026 2028 2030 2039
2041 2045 2047 2051 2053 2057 2059 2071 2073 2075 2077 2079 2081 2083
2096 2098 2102 2104 2108 2110 2114 2116 2128 2130 2132 2134 2136 2138
2140 2151 2153 2157 2182 2184 2188 2190 2194 2196 2200 2202 2206 2208
2212 2214 2218 2220
.RJ 150 152 154 156 167 177 182 184 186 188 190 192 194 196
198 218 220 228 236 238 240 242 250 252 254 288 290 292
300 304 306 338 340 342 350 354 356 387 389 391 399 403
405 438 440 444 446 448 450 458 492 494 498 500 508 510
544 546 548 550 554 556 564 566 587 611 613 703 705 707
709 720 730 748 750 758 760 767 769 771 773 787 789 808
832 834 924 926 928 930 941 951 975 977 985 987 989 991
999 1001 1011 1013 1034 1036 1055 1079 1081 1183 1185 1187 1203 1214
1224 1234 1247 1249 1251 1253 1255 1257 1271 1273 1308 1310 1336 1338
1373 1375 1377 1379 1389 1424 1426 1428 1430 1440 1461 1485 1487 1598
1600 1602 1604 1614 1624 1626 1632 1645 1647 1653 1663 1685 1687 1689
1697 1719 1721 1723 1725 1727 1755 1763 1785 1787 1789 1791 1793 1821
1829 1851 1853 1855 1857 1859 1864 1866 1868 1870 1900 1902 1994 1996
1998 2000 2011 2021 2026 2028 2030 2037 2063 2065 2067 2069 2083 2085
2094 2120 2122 2124 2126 2140 2159 2161 2165 2167 2171 2173 2194 2218
2220
.RJMAP 156 167 198 220 240 254 306 356 405 450 510 550 566 709
720 773 789 930 941 991 1036 1203 1214 1257 1273 1310 1338 1379
1430 1604 1614 1725 1727 1789 1793 1855 1859 1870 1902 2000 2011 2030
2069 2085 2126
.RJZ 148 701 922 1181 1596 1992
.RLDCT 152 228 242 288 292 338 342 387 391 438 444 492 498 544
554 587 611 705 748 758 767 808 832 926 975 985 999 1011
1055 1079 1185 1373 1424 1461 1485 1600 1626 1647 1663 1697 1763 1829
1864 1996 2063 2120 2159 2165 2171 2194 2218
.RMGC 169 171 173 182 184 186 188 190 192 194 196 206 208 212
216 230 232 234 244 246 248 264 266 268 270 272 274 276
278 280 282 284 286 294 296 298 314 316 318 320 322 324
326 328 330 332 334 336 344 346 348 363 365 367 369 371
373 375 377 379 381 383 385 393 395 397 414 416 418 420
422 424 426 428 430 432 434 436 442 452 454 456 468 470
472 474 476 478 480 482 484 486 488 490 496 502 504 506 SEQ 0832
520 522 524 526 528 530 532 534 536 538 540 542 552 558
560 562 575 577 579 581 583 585 589 591 593 595 597 601
603 607 609 722 724 726 736 738 740 742 744 746 752 754
756 762 773 778 780 785 796 798 800 802 804 806 810 812
814 816 818 822 824 828 830 943 945 947 957 959 961 963
965 967 969 971 973 979 981 983 997 1003 1005 1009 1015 1017
1032 1036 1043 1045 1047 1049 1051 1053 1057 1059 1061 1063 1065 1069
1071 1075 1077 1191 1193 1195 1197 1199 1201 1216 1218 1220 1226 1228
1230 1239 1241 1243 1247 1249 1251 1253 1255 1265 1267 1284 1286 1288
1290 1292 1294 1296 1298 1302 1306 1320 1322 1324 1326 1328 1332 1349
1351 1353 1355 1357 1359 1361 1363 1365 1367 1369 1371 1381 1383 1387
1400 1402 1404 1406 1408 1410 1412 1414 1416 1418 1420 1422 1432 1434
1438 1449 1451 1453 1455 1457 1459 1463 1465 1467 1469 1471 1475 1477
1481 1483 1616 1618 1620 1628 1630 1637 1639 1641 1649 1651 1665 1667
1669 1673 1675 1677 1679 1681 1683 1699 1701 1703 1707 1709 1711 1713
1715 1717 1735 1737 1739 1743 1745 1747 1749 1751 1753 1765 1767 1769
1773 1775 1777 1779 1781 1783 1801 1803 1805 1809 1811 1813 1815 1817
1819 1831 1833 1835 1839 1841 1843 1845 1847 1849 1877 1879 1881 1883
1885 1887 2013 2015 2017 2026 2028 2039 2041 2043 2045 2047 2049 2051
2053 2055 2057 2059 2061 2071 2073 2077 2096 2098 2100 2102 2104 2106
2108 2110 2112 2114 2116 2118 2128 2130 2134 2151 2153 2155 2163 2169
2182 2184 2186 2188 2190 2192 2196 2198 2200 2202 2204 2208 2210 2214
2216
.ROENA 171 266 272 278 284 316 322 328 334 365 371 377 383 416
422 428 434 470 476 482 488 522 528 534 540 577 583 589
595 601 607 724 738 744 754 798 804 810 816 822 828 945
959 965 971 981 1045 1051 1057 1063 1069 1075 1193 1199 1218 1228
1241 1286 1292 1322 1351 1357 1363 1369 1402 1408 1414 1420 1451 1457
1463 1469 1475 1481 1618 1628 1639 1649 1667 1701 1737 1745 1751 1767
1803 1811 1817 1833 1879 1885 2015 2041 2047 2053 2059 2098 2104 2110
2116 2153 2184 2190 2196 2202 2208 2214
.ROR 167 169 171 182 184 186 188 190 192 194 196 208 210 232
246 264 266 270 272 276 278 282 284 296 314 316 320 322
326 328 332 334 346 363 365 369 371 375 377 381 383 395
414 416 420 422 426 428 432 434 454 458 468 470 474 476
480 482 486 488 504 508 520 522 526 528 532 534 538 540
560 564 575 577 581 583 589 595 601 607 720 722 724 736
738 742 744 752 754 773 780 787 796 798 802 804 810 816
822 828 941 943 945 957 959 963 965 969 971 979 981 1005
1007 1017 1022 1034 1036 1043 1045 1049 1051 1057 1063 1069 1075 1191
1193 1197 1199 1216 1218 1226 1228 1239 1241 1247 1249 1251 1253 1255
1267 1271 1284 1286 1290 1292 1298 1300 1320 1322 1328 1330 1336 1349
1351 1355 1357 1361 1363 1367 1369 1383 1385 1400 1402 1406 1408 1412
1414 1418 1420 1434 1436 1449 1451 1455 1457 1463 1469 1475 1481 1616
1618 1628 1637 1639 1649 1665 1667 1675 1679 1683 1699 1701 1709 1713
1717 1735 1737 1743 1745 1749 1751 1765 1767 1775 1779 1783 1801 1803
1809 1811 1815 1817 1831 1833 1841 1845 1849 1877 1879 1883 1885 2011
2013 2015 2026 2028 2039 2041 2045 2047 2051 2053 2057 2059 2073 2075
2083 2096 2098 2102 2104 2108 2110 2114 2116 2130 2132 2140 2151 2153
2182 2184 2188 2190 2196 2202 2208 2214
.RPLUS 154 156 613 707 709 834 928 930 1081 1187 1189 1487 1602 1604
1632 1653 1663 1689 1697 1723 1763 1791 1829 1857 1998 2000 2220
.RRDLM 593 814 1061 1467 2200 SEQ 0833
.RRPCT 154 238 252 290 304 340 354 389 403 440 446 494 500 546
556 613 707 750 760 769 834 928 977 987 1001 1013 1081 1187
1375 1426 1487 1602 1632 1653 1689 1723 1791 1857 1866 1998 2065 2122
2161 2167 2173 2220
.RS0A 167 171 198 210 266 272 278 284 316 322 328 334 365 371
377 383 416 422 428 434 458 470 476 482 488 508 522 528
534 540 564 577 583 589 595 599 601 605 607 720 724 738
744 754 787 789 798 804 810 816 820 822 826 828 941 945
959 965 971 981 1007 1022 1028 1034 1045 1051 1057 1063 1067 1069
1073 1075 1193 1199 1218 1228 1241 1257 1271 1286 1292 1300 1322 1330
1336 1351 1357 1363 1369 1385 1402 1408 1414 1420 1436 1451 1457 1463
1469 1473 1475 1479 1481 1618 1626 1628 1632 1639 1647 1649 1653 1667
1701 1737 1745 1751 1767 1803 1811 1817 1833 1879 1885 2011 2015 2030
2041 2047 2053 2059 2075 2081 2083 2098 2104 2110 2116 2132 2138 2140
2153 2184 2190 2196 2202 2206 2208 2212 2214
.RS0B 152 154 156 206 230 244 294 344 393 452 502 558 587 611
613 705 707 709 778 808 832 834 926 928 930 1003 1015 1055
1079 1081 1185 1187 1189 1265 1296 1326 1381 1432 1461 1485 1487 1600
1602 1604 1659 1661 1663 1673 1677 1681 1689 1695 1697 1707 1711 1715
1723 1725 1761 1763 1773 1777 1781 1791 1827 1829 1839 1843 1847 1857
1859 1996 1998 2000 2071 2128 2194 2218 2220
.RSAB 214 218 236 250 300 350 399 1024 1026 1030 1269 1304 1308 1334
1389 1440 1896 1898 1900 2079 2136
.RSD0 169 182 184 186 188 190 192 194 196 208 232 246 264 270
276 282 296 314 320 326 332 346 363 369 375 381 395 414
420 426 432 454 468 474 480 486 504 520 526 532 538 560
575 581 722 736 742 752 773 780 796 802 943 957 963 969
979 1005 1017 1036 1043 1049 1191 1197 1216 1226 1239 1247 1249 1251
1253 1255 1267 1284 1290 1298 1320 1328 1349 1355 1361 1367 1383 1387
1400 1406 1412 1418 1434 1438 1449 1455 1616 1637 1665 1675 1679 1683
1699 1709 1713 1717 1735 1743 1749 1765 1775 1779 1783 1801 1809 1815
1831 1841 1845 1849 1877 1883 2013 2026 2028 2039 2045 2051 2057 2073
2077 2096 2102 2108 2114 2130 2134 2151 2182 2188
.RSDA 212 216 234 248 298 348 397 456 506 562 593 785 814 1032
1061 1302 1306 1332 1467 2200
.RSELM 171 208 232 246 266 272 278 284 296 316 322 328 334 346
365 371 377 383 395 416 422 428 434 454 470 476 482 488
504 522 528 534 540 560 577 583 589 595 601 607 724 738
744 754 780 798 804 810 816 822 828 945 959 965 971 981
1005 1017 1045 1051 1057 1063 1069 1075 1193 1199 1218 1228 1241 1267
1286 1292 1298 1322 1328 1351 1357 1363 1369 1383 1402 1408 1414 1420
1434 1451 1457 1463 1469 1475 1481 1618 1628 1639 1649 1667 1675 1679
1683 1701 1709 1713 1717 1737 1745 1751 1767 1775 1779 1783 1803 1811
1817 1833 1841 1845 1849 1879 1885 2015 2041 2047 2053 2059 2073 2098
2104 2110 2116 2130 2153 2184 2190 2196 2202 2208 2214
.RSELP 173 206 230 244 268 274 280 286 294 318 324 330 336 344
367 373 379 385 393 418 424 430 436 442 452 472 478 484
490 496 502 524 530 536 542 552 558 579 585 591 597 603
609 726 740 746 756 762 778 800 806 812 818 824 830 947
961 967 973 983 997 1003 1009 1015 1047 1053 1059 1065 1071 1077
1195 1201 1220 1230 1243 1265 1288 1294 1296 1324 1326 1353 1359 1365
1371 1381 1404 1410 1416 1422 1432 1453 1459 1465 1471 1477 1483 1620
1630 1641 1651 1669 1673 1677 1681 1703 1707 1711 1715 1739 1747 1753 SEQ 0834
1769 1773 1777 1781 1805 1813 1819 1835 1839 1843 1847 1881 1887 2017
2043 2049 2055 2061 2071 2100 2106 2112 2118 2128 2155 2163 2169 2186
2192 2198 2204 2210 2216
.RSKCN 169 182 184 186 188 190 192 194 196 212 216 234 248 264
270 276 282 298 314 320 326 332 348 363 369 375 381 397
414 420 426 432 468 474 480 486 506 520 526 532 538 562
575 581 722 736 742 752 773 796 802 943 957 963 969 979
1032 1036 1043 1049 1191 1197 1216 1226 1239 1247 1249 1251 1253 1255
1284 1290 1302 1306 1320 1332 1349 1355 1361 1367 1400 1406 1412 1418
1449 1455 1616 1637 1665 1699 1735 1743 1749 1765 1801 1809 1815 1831
1877 1883 2013 2026 2028 2039 2045 2051 2057 2096 2102 2108 2114 2151
2182 2188
.RXNOR 599 605 820 826 1067 1073 1473 1479 2206 2212
.RXOR 218 1030 1308 1900
ABOXMT 442 762 1009
CALC 148 150 152 154 156 167 169 171 173 175 177 182 184 186 SEQ 0835
188 190 192 194 196 198 204 206 208 210 212 214 216 218
220 222 228 230 232 234 236 238 240 242 244 246 248 250
252 254 256 262 264 266 268 270 272 274 276 278 280 282
284 286 288 290 292 294 296 298 300 302 304 306 312 314
316 318 320 322 324 326 328 330 332 334 336 338 340 342
344 346 348 350 352 354 356 361 363 365 367 369 371 373
375 377 379 381 383 385 387 389 391 393 395 397 399 401
403 405 412 414 416 418 420 422 424 426 428 430 432 434
436 438 440 442 444 446 448 450 452 454 456 458 460 466
468 470 472 474 476 478 480 482 484 486 488 490 492 494
496 498 500 502 504 506 508 510 512 518 520 522 524 526
528 530 532 534 536 538 540 542 544 546 548 550 552 554
556 558 560 562 564 566 568 575 577 579 581 583 585 587
589 591 593 595 597 599 601 603 605 607 609 611 613 615
701 703 705 707 709 720 722 724 726 728 730 736 738 740
742 744 746 748 750 752 754 756 758 760 762 767 769 771
773 778 780 785 787 789 796 798 800 802 804 806 808 810
812 814 816 818 820 822 824 826 828 830 832 834 836 922
924 926 928 930 941 943 945 947 949 951 957 959 961 963
965 967 969 971 973 975 977 979 981 983 985 987 989 991
997 999 1001 1003 1005 1007 1009 1011 1013 1015 1017 1022 1024 1026
1028 1030 1032 1034 1036 1043 1045 1047 1049 1051 1053 1055 1057 1059
1061 1063 1065 1067 1069 1071 1073 1075 1077 1079 1081 1083 1181 1183
1185 1187 1189 1191 1193 1195 1197 1199 1201 1203 1214 1216 1218 1220
1222 1224 1226 1228 1230 1232 1234 1239 1241 1243 1245 1247 1249 1251
1253 1255 1257 1263 1265 1267 1269 1271 1273 1275 1282 1284 1286 1288
1290 1292 1294 1296 1298 1300 1302 1304 1306 1308 1310 1312 1318 1320
1322 1324 1326 1328 1330 1332 1334 1336 1338 1340 1347 1349 1351 1353
1355 1357 1359 1361 1363 1365 1367 1369 1371 1373 1375 1377 1379 1381
1383 1385 1387 1389 1391 1398 1400 1402 1404 1406 1408 1410 1412 1414
1416 1418 1420 1422 1424 1426 1428 1430 1432 1434 1436 1438 1440 1442
1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475
1477 1479 1481 1483 1485 1487 1489 1596 1598 1600 1602 1604 1614 1616
1618 1620 1622 1624 1626 1628 1630 1632 1637 1639 1641 1643 1645 1647
1649 1651 1653 1659 1661 1663 1665 1667 1669 1671 1673 1675 1677 1679
1681 1683 1685 1687 1689 1695 1697 1699 1701 1703 1705 1707 1709 1711
1713 1715 1717 1719 1721 1723 1725 1727 1733 1735 1737 1739 1741 1743
1745 1747 1749 1751 1753 1755 1761 1763 1765 1767 1769 1771 1773 1775
1777 1779 1781 1783 1785 1787 1789 1791 1793 1799 1801 1803 1805 1807
1809 1811 1813 1815 1817 1819 1821 1827 1829 1831 1833 1835 1837 1839
1841 1843 1845 1847 1849 1851 1853 1855 1857 1859 1864 1866 1868 1870
1872 1877 1879 1881 1883 1885 1887 1889 1896 1898 1900 1902 1904 1992
1994 1996 1998 2000 2011 2013 2015 2017 2019 2021 2026 2028 2030 2037
2039 2041 2043 2045 2047 2049 2051 2053 2055 2057 2059 2061 2063 2065
2067 2069 2071 2073 2075 2077 2079 2081 2083 2085 2087 2094 2096 2098
2100 2102 2104 2106 2108 2110 2112 2114 2116 2118 2120 2122 2124 2126
2128 2130 2132 2134 2136 2138 2140 2142 2149 2151 2153 2155 2157 2159
2161 2163 2165 2167 2169 2171 2173 2175 2182 2184 2186 2188 2190 2192
2194 2196 2198 2200 2202 2204 2206 2208 2210 2212 2214 2216 2218 2220
2222
CONCAT 148 150 152 154 156 167 169 171 173 175 177 182 184 186
188 190 192 194 196 198 204 206 208 210 212 214 216 218
220 222 228 230 232 234 236 238 240 242 244 246 248 250 SEQ 0836
252 254 256 262 264 266 268 270 272 274 276 278 280 282
284 286 288 290 292 294 296 298 300 302 304 306 312 314
316 318 320 322 324 326 328 330 332 334 336 338 340 342
344 346 348 350 352 354 356 361 363 365 367 369 371 373
375 377 379 381 383 385 387 389 391 393 395 397 399 401
403 405 412 414 416 418 420 422 424 426 428 430 432 434
436 438 440 442 444 446 448 450 452 454 456 458 460 466
468 470 472 474 476 478 480 482 484 486 488 490 492 494
496 498 500 502 504 506 508 510 512 518 520 522 524 526
528 530 532 534 536 538 540 542 544 546 548 550 552 554
556 558 560 562 564 566 568 575 577 579 581 583 585 587
589 591 593 595 597 599 601 603 605 607 609 611 613 615
701 703 705 707 709 720 722 724 726 728 730 736 738 740
742 744 746 748 750 752 754 756 758 760 762 767 769 771
773 778 780 785 787 789 796 798 800 802 804 806 808 810
812 814 816 818 820 822 824 826 828 830 832 834 836 922
924 926 928 930 941 943 945 947 949 951 957 959 961 963
965 967 969 971 973 975 977 979 981 983 985 987 989 991
997 999 1001 1003 1005 1007 1009 1011 1013 1015 1017 1022 1024 1026
1028 1030 1032 1034 1036 1043 1045 1047 1049 1051 1053 1055 1057 1059
1061 1063 1065 1067 1069 1071 1073 1075 1077 1079 1081 1083 1181 1183
1185 1187 1189 1191 1193 1195 1197 1199 1201 1203 1214 1216 1218 1220
1222 1224 1226 1228 1230 1232 1234 1239 1241 1243 1245 1247 1249 1251
1253 1255 1257 1263 1265 1267 1269 1271 1273 1275 1282 1284 1286 1288
1290 1292 1294 1296 1298 1300 1302 1304 1306 1308 1310 1312 1318 1320
1322 1324 1326 1328 1330 1332 1334 1336 1338 1340 1347 1349 1351 1353
1355 1357 1359 1361 1363 1365 1367 1369 1371 1373 1375 1377 1379 1381
1383 1385 1387 1389 1391 1398 1400 1402 1404 1406 1408 1410 1412 1414
1416 1418 1420 1422 1424 1426 1428 1430 1432 1434 1436 1438 1440 1442
1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475
1477 1479 1481 1483 1485 1487 1489 1596 1598 1600 1602 1604 1614 1616
1618 1620 1622 1624 1626 1628 1630 1632 1637 1639 1641 1643 1645 1647
1649 1651 1653 1659 1661 1663 1665 1667 1669 1671 1673 1675 1677 1679
1681 1683 1685 1687 1689 1695 1697 1699 1701 1703 1705 1707 1709 1711
1713 1715 1717 1719 1721 1723 1725 1727 1733 1735 1737 1739 1741 1743
1745 1747 1749 1751 1753 1755 1761 1763 1765 1767 1769 1771 1773 1775
1777 1779 1781 1783 1785 1787 1789 1791 1793 1799 1801 1803 1805 1807
1809 1811 1813 1815 1817 1819 1821 1827 1829 1831 1833 1835 1837 1839
1841 1843 1845 1847 1849 1851 1853 1855 1857 1859 1864 1866 1868 1870
1872 1877 1879 1881 1883 1885 1887 1889 1896 1898 1900 1902 1904 1992
1994 1996 1998 2000 2011 2013 2015 2017 2019 2021 2026 2028 2030 2037
2039 2041 2043 2045 2047 2049 2051 2053 2055 2057 2059 2061 2063 2065
2067 2069 2071 2073 2075 2077 2079 2081 2083 2085 2087 2094 2096 2098
2100 2102 2104 2106 2108 2110 2112 2114 2116 2118 2120 2122 2124 2126
2128 2130 2132 2134 2136 2138 2140 2142 2149 2151 2153 2155 2157 2159
2161 2163 2165 2167 2169 2171 2173 2175 2182 2184 2186 2188 2190 2192
2194 2196 2198 2200 2202 2204 2206 2208 2210 2212 2214 2216 2218 2220
2222
DLINK 270 320 369 420 474 526 742 963 1284 1355 1406 2045 2102
ELINK 276 326 375 426 480 532 969 1290 1361 1412 2051 2108
FIELD 148 150 152 154 156 167 169 171 173 175 177 182 184 186
188 190 192 194 196 198 204 206 208 210 212 214 216 218
220 222 228 230 232 234 236 238 240 242 244 246 248 250 SEQ 0837
252 254 256 262 264 266 268 270 272 274 276 278 280 282
284 286 288 290 292 294 296 298 300 302 304 306 312 314
316 318 320 322 324 326 328 330 332 334 336 338 340 342
344 346 348 350 352 354 356 361 363 365 367 369 371 373
375 377 379 381 383 385 387 389 391 393 395 397 399 401
403 405 412 414 416 418 420 422 424 426 428 430 432 434
436 438 440 442 444 446 448 450 452 454 456 458 460 466
468 470 472 474 476 478 480 482 484 486 488 490 492 494
496 498 500 502 504 506 508 510 512 518 520 522 524 526
528 530 532 534 536 538 540 542 544 546 548 550 552 554
556 558 560 562 564 566 568 575 577 579 581 583 585 587
589 591 593 595 597 599 601 603 605 607 609 611 613 615
701 703 705 707 709 720 722 724 726 728 730 736 738 740
742 744 746 748 750 752 754 756 758 760 762 767 769 771
773 778 780 785 787 789 796 798 800 802 804 806 808 810
812 814 816 818 820 822 824 826 828 830 832 834 836 922
924 926 928 930 941 943 945 947 949 951 957 959 961 963
965 967 969 971 973 975 977 979 981 983 985 987 989 991
997 999 1001 1003 1005 1007 1009 1011 1013 1015 1017 1022 1024 1026
1028 1030 1032 1034 1036 1043 1045 1047 1049 1051 1053 1055 1057 1059
1061 1063 1065 1067 1069 1071 1073 1075 1077 1079 1081 1083 1181 1183
1185 1187 1189 1191 1193 1195 1197 1199 1201 1203 1214 1216 1218 1220
1222 1224 1226 1228 1230 1232 1234 1239 1241 1243 1245 1247 1249 1251
1253 1255 1257 1263 1265 1267 1269 1271 1273 1275 1282 1284 1286 1288
1290 1292 1294 1296 1298 1300 1302 1304 1306 1308 1310 1312 1318 1320
1322 1324 1326 1328 1330 1332 1334 1336 1338 1340 1347 1349 1351 1353
1355 1357 1359 1361 1363 1365 1367 1369 1371 1373 1375 1377 1379 1381
1383 1385 1387 1389 1391 1398 1400 1402 1404 1406 1408 1410 1412 1414
1416 1418 1420 1422 1424 1426 1428 1430 1432 1434 1436 1438 1440 1442
1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475
1477 1479 1481 1483 1485 1487 1489 1596 1598 1600 1602 1604 1614 1616
1618 1620 1622 1624 1626 1628 1630 1632 1637 1639 1641 1643 1645 1647
1649 1651 1653 1659 1661 1663 1665 1667 1669 1671 1673 1675 1677 1679
1681 1683 1685 1687 1689 1695 1697 1699 1701 1703 1705 1707 1709 1711
1713 1715 1717 1719 1721 1723 1725 1727 1733 1735 1737 1739 1741 1743
1745 1747 1749 1751 1753 1755 1761 1763 1765 1767 1769 1771 1773 1775
1777 1779 1781 1783 1785 1787 1789 1791 1793 1799 1801 1803 1805 1807
1809 1811 1813 1815 1817 1819 1821 1827 1829 1831 1833 1835 1837 1839
1841 1843 1845 1847 1849 1851 1853 1855 1857 1859 1864 1866 1868 1870
1872 1877 1879 1881 1883 1885 1887 1889 1896 1898 1900 1902 1904 1992
1994 1996 1998 2000 2011 2013 2015 2017 2019 2021 2026 2028 2030 2037
2039 2041 2043 2045 2047 2049 2051 2053 2055 2057 2059 2061 2063 2065
2067 2069 2071 2073 2075 2077 2079 2081 2083 2085 2087 2094 2096 2098
2100 2102 2104 2106 2108 2110 2112 2114 2116 2118 2120 2122 2124 2126
2128 2130 2132 2134 2136 2138 2140 2142 2149 2151 2153 2155 2157 2159
2161 2163 2165 2167 2169 2171 2173 2175 2182 2184 2186 2188 2190 2192
2194 2196 2198 2200 2202 2204 2206 2208 2210 2212 2214 2216 2218 2220
2222
GO 98 100 105 107 117 127 659 661 666 668 678 688 881 883
888 890 900 910 1136 1138 1143 1145 1155 1165 1552 1554 1559 1561
1571 1581 1950 1952 1957 1959 1969 1979
LDXBUF 577 583 589 595 601 607 798 804 810 816 822 828 1045 1051
1057 1063 1069 1075 1451 1457 1463 1469 1475 1481 1628 1649 1879 1885 SEQ 0838
2184 2190 2196 2202 2208 2214
MFLD 148# 148 150# 150 152# 152 154# 154 156# 156 167# 167 169# 169
171# 171 173# 173 175# 175 177# 177 182# 182 184# 184 186# 186
188# 188 190# 190 192# 192 194# 194 196# 196 198# 198 204# 204
206# 206 208# 208 210# 210 212# 212 214# 214 216# 216 218# 218
220# 220 222# 222 228# 228 230# 230 232# 232 234# 234 236# 236
238# 238 240# 240 242# 242 244# 244 246# 246 248# 248 250# 250
252# 252 254# 254 256# 256 262# 262 264# 264 266# 266 268# 268
270# 270 272# 272 274# 274 276# 276 278# 278 280# 280 282# 282
284# 284 286# 286 288# 288 290# 290 292# 292 294# 294 296# 296
298# 298 300# 300 302# 302 304# 304 306# 306 312# 312 314# 314
316# 316 318# 318 320# 320 322# 322 324# 324 326# 326 328# 328
330# 330 332# 332 334# 334 336# 336 338# 338 340# 340 342# 342
344# 344 346# 346 348# 348 350# 350 352# 352 354# 354 356# 356
361# 361 363# 363 365# 365 367# 367 369# 369 371# 371 373# 373
375# 375 377# 377 379# 379 381# 381 383# 383 385# 385 387# 387
389# 389 391# 391 393# 393 395# 395 397# 397 399# 399 401# 401
403# 403 405# 405 412# 412 414# 414 416# 416 418# 418 420# 420
422# 422 424# 424 426# 426 428# 428 430# 430 432# 432 434# 434
436# 436 438# 438 440# 440 442# 442 444# 444 446# 446 448# 448
450# 450 452# 452 454# 454 456# 456 458# 458 460# 460 466# 466
468# 468 470# 470 472# 472 474# 474 476# 476 478# 478 480# 480
482# 482 484# 484 486# 486 488# 488 490# 490 492# 492 494# 494
496# 496 498# 498 500# 500 502# 502 504# 504 506# 506 508# 508
510# 510 512# 512 518# 518 520# 520 522# 522 524# 524 526# 526
528# 528 530# 530 532# 532 534# 534 536# 536 538# 538 540# 540
542# 542 544# 544 546# 546 548# 548 550# 550 552# 552 554# 554
556# 556 558# 558 560# 560 562# 562 564# 564 566# 566 568# 568
575# 575 577# 577 579# 579 581# 581 583# 583 585# 585 587# 587
589# 589 591# 591 593# 593 595# 595 597# 597 599# 599 601# 601
603# 603 605# 605 607# 607 609# 609 611# 611 613# 613 615# 615
701# 701 703# 703 705# 705 707# 707 709# 709 720# 720 722# 722
724# 724 726# 726 728# 728 730# 730 736# 736 738# 738 740# 740
742# 742 744# 744 746# 746 748# 748 750# 750 752# 752 754# 754
756# 756 758# 758 760# 760 762# 762 767# 767 769# 769 771# 771
773# 773 778# 778 780# 780 785# 785 787# 787 789# 789 796# 796
798# 798 800# 800 802# 802 804# 804 806# 806 808# 808 810# 810
812# 812 814# 814 816# 816 818# 818 820# 820 822# 822 824# 824
826# 826 828# 828 830# 830 832# 832 834# 834 836# 836 922# 922
924# 924 926# 926 928# 928 930# 930 941# 941 943# 943 945# 945
947# 947 949# 949 951# 951 957# 957 959# 959 961# 961 963# 963
965# 965 967# 967 969# 969 971# 971 973# 973 975# 975 977# 977
979# 979 981# 981 983# 983 985# 985 987# 987 989# 989 991# 991
997# 997 999# 999 1001# 1001 1003# 1003 1005# 1005 1007# 1007 1009# 1009
1011# 1011 1013# 1013 1015# 1015 1017# 1017 1022# 1022 1024# 1024 1026# 1026
1028# 1028 1030# 1030 1032# 1032 1034# 1034 1036# 1036 1043# 1043 1045# 1045
1047# 1047 1049# 1049 1051# 1051 1053# 1053 1055# 1055 1057# 1057 1059# 1059
1061# 1061 1063# 1063 1065# 1065 1067# 1067 1069# 1069 1071# 1071 1073# 1073
1075# 1075 1077# 1077 1079# 1079 1081# 1081 1083# 1083 1181# 1181 1183# 1183
1185# 1185 1187# 1187 1189# 1189 1191# 1191 1193# 1193 1195# 1195 1197# 1197
1199# 1199 1201# 1201 1203# 1203 1214# 1214 1216# 1216 1218# 1218 1220# 1220
1222# 1222 1224# 1224 1226# 1226 1228# 1228 1230# 1230 1232# 1232 1234# 1234
1239# 1239 1241# 1241 1243# 1243 1245# 1245 1247# 1247 1249# 1249 1251# 1251 SEQ 0839
1253# 1253 1255# 1255 1257# 1257 1263# 1263 1265# 1265 1267# 1267 1269# 1269
1271# 1271 1273# 1273 1275# 1275 1282# 1282 1284# 1284 1286# 1286 1288# 1288
1290# 1290 1292# 1292 1294# 1294 1296# 1296 1298# 1298 1300# 1300 1302# 1302
1304# 1304 1306# 1306 1308# 1308 1310# 1310 1312# 1312 1318# 1318 1320# 1320
1322# 1322 1324# 1324 1326# 1326 1328# 1328 1330# 1330 1332# 1332 1334# 1334
1336# 1336 1338# 1338 1340# 1340 1347# 1347 1349# 1349 1351# 1351 1353# 1353
1355# 1355 1357# 1357 1359# 1359 1361# 1361 1363# 1363 1365# 1365 1367# 1367
1369# 1369 1371# 1371 1373# 1373 1375# 1375 1377# 1377 1379# 1379 1381# 1381
1383# 1383 1385# 1385 1387# 1387 1389# 1389 1391# 1391 1398# 1398 1400# 1400
1402# 1402 1404# 1404 1406# 1406 1408# 1408 1410# 1410 1412# 1412 1414# 1414
1416# 1416 1418# 1418 1420# 1420 1422# 1422 1424# 1424 1426# 1426 1428# 1428
1430# 1430 1432# 1432 1434# 1434 1436# 1436 1438# 1438 1440# 1440 1442# 1442
1449# 1449 1451# 1451 1453# 1453 1455# 1455 1457# 1457 1459# 1459 1461# 1461
1463# 1463 1465# 1465 1467# 1467 1469# 1469 1471# 1471 1473# 1473 1475# 1475
1477# 1477 1479# 1479 1481# 1481 1483# 1483 1485# 1485 1487# 1487 1489# 1489
1596# 1596 1598# 1598 1600# 1600 1602# 1602 1604# 1604 1614# 1614 1616# 1616
1618# 1618 1620# 1620 1622# 1622 1624# 1624 1626# 1626 1628# 1628 1630# 1630
1632# 1632 1637# 1637 1639# 1639 1641# 1641 1643# 1643 1645# 1645 1647# 1647
1649# 1649 1651# 1651 1653# 1653 1659# 1659 1661# 1661 1663# 1663 1665# 1665
1667# 1667 1669# 1669 1671# 1671 1673# 1673 1675# 1675 1677# 1677 1679# 1679
1681# 1681 1683# 1683 1685# 1685 1687# 1687 1689# 1689 1695# 1695 1697# 1697
1699# 1699 1701# 1701 1703# 1703 1705# 1705 1707# 1707 1709# 1709 1711# 1711
1713# 1713 1715# 1715 1717# 1717 1719# 1719 1721# 1721 1723# 1723 1725# 1725
1727# 1727 1733# 1733 1735# 1735 1737# 1737 1739# 1739 1741# 1741 1743# 1743
1745# 1745 1747# 1747 1749# 1749 1751# 1751 1753# 1753 1755# 1755 1761# 1761
1763# 1763 1765# 1765 1767# 1767 1769# 1769 1771# 1771 1773# 1773 1775# 1775
1777# 1777 1779# 1779 1781# 1781 1783# 1783 1785# 1785 1787# 1787 1789# 1789
1791# 1791 1793# 1793 1799# 1799 1801# 1801 1803# 1803 1805# 1805 1807# 1807
1809# 1809 1811# 1811 1813# 1813 1815# 1815 1817# 1817 1819# 1819 1821# 1821
1827# 1827 1829# 1829 1831# 1831 1833# 1833 1835# 1835 1837# 1837 1839# 1839
1841# 1841 1843# 1843 1845# 1845 1847# 1847 1849# 1849 1851# 1851 1853# 1853
1855# 1855 1857# 1857 1859# 1859 1864# 1864 1866# 1866 1868# 1868 1870# 1870
1872# 1872 1877# 1877 1879# 1879 1881# 1881 1883# 1883 1885# 1885 1887# 1887
1889# 1889 1896# 1896 1898# 1898 1900# 1900 1902# 1902 1904# 1904 1992# 1992
1994# 1994 1996# 1996 1998# 1998 2000# 2000 2011# 2011 2013# 2013 2015# 2015
2017# 2017 2019# 2019 2021# 2021 2026# 2026 2028# 2028 2030# 2030 2037# 2037
2039# 2039 2041# 2041 2043# 2043 2045# 2045 2047# 2047 2049# 2049 2051# 2051
2053# 2053 2055# 2055 2057# 2057 2059# 2059 2061# 2061 2063# 2063 2065# 2065
2067# 2067 2069# 2069 2071# 2071 2073# 2073 2075# 2075 2077# 2077 2079# 2079
2081# 2081 2083# 2083 2085# 2085 2087# 2087 2094# 2094 2096# 2096 2098# 2098
2100# 2100 2102# 2102 2104# 2104 2106# 2106 2108# 2108 2110# 2110 2112# 2112
2114# 2114 2116# 2116 2118# 2118 2120# 2120 2122# 2122 2124# 2124 2126# 2126
2128# 2128 2130# 2130 2132# 2132 2134# 2134 2136# 2136 2138# 2138 2140# 2140
2142# 2142 2149# 2149 2151# 2151 2153# 2153 2155# 2155 2157# 2157 2159# 2159
2161# 2161 2163# 2163 2165# 2165 2167# 2167 2169# 2169 2171# 2171 2173# 2173
2175# 2175 2182# 2182 2184# 2184 2186# 2186 2188# 2188 2190# 2190 2192# 2192
2194# 2194 2196# 2196 2198# 2198 2200# 2200 2202# 2202 2204# 2204 2206# 2206
2208# 2208 2210# 2210 2212# 2212 2214# 2214 2216# 2216 2218# 2218 2220# 2220
2222# 2222
MWORD 148 150 152 154 156 167 169 171 173 175 177 182 184 186
188 190 192 194 196 198 204 206 208 210 212 214 216 218
220 222 228 230 232 234 236 238 240 242 244 246 248 250
252 254 256 262 264 266 268 270 272 274 276 278 280 282 SEQ 0840
284 286 288 290 292 294 296 298 300 302 304 306 312 314
316 318 320 322 324 326 328 330 332 334 336 338 340 342
344 346 348 350 352 354 356 361 363 365 367 369 371 373
375 377 379 381 383 385 387 389 391 393 395 397 399 401
403 405 412 414 416 418 420 422 424 426 428 430 432 434
436 438 440 442 444 446 448 450 452 454 456 458 460 466
468 470 472 474 476 478 480 482 484 486 488 490 492 494
496 498 500 502 504 506 508 510 512 518 520 522 524 526
528 530 532 534 536 538 540 542 544 546 548 550 552 554
556 558 560 562 564 566 568 575 577 579 581 583 585 587
589 591 593 595 597 599 601 603 605 607 609 611 613 615
701 703 705 707 709 720 722 724 726 728 730 736 738 740
742 744 746 748 750 752 754 756 758 760 762 767 769 771
773 778 780 785 787 789 796 798 800 802 804 806 808 810
812 814 816 818 820 822 824 826 828 830 832 834 836 922
924 926 928 930 941 943 945 947 949 951 957 959 961 963
965 967 969 971 973 975 977 979 981 983 985 987 989 991
997 999 1001 1003 1005 1007 1009 1011 1013 1015 1017 1022 1024 1026
1028 1030 1032 1034 1036 1043 1045 1047 1049 1051 1053 1055 1057 1059
1061 1063 1065 1067 1069 1071 1073 1075 1077 1079 1081 1083 1181 1183
1185 1187 1189 1191 1193 1195 1197 1199 1201 1203 1214 1216 1218 1220
1222 1224 1226 1228 1230 1232 1234 1239 1241 1243 1245 1247 1249 1251
1253 1255 1257 1263 1265 1267 1269 1271 1273 1275 1282 1284 1286 1288
1290 1292 1294 1296 1298 1300 1302 1304 1306 1308 1310 1312 1318 1320
1322 1324 1326 1328 1330 1332 1334 1336 1338 1340 1347 1349 1351 1353
1355 1357 1359 1361 1363 1365 1367 1369 1371 1373 1375 1377 1379 1381
1383 1385 1387 1389 1391 1398 1400 1402 1404 1406 1408 1410 1412 1414
1416 1418 1420 1422 1424 1426 1428 1430 1432 1434 1436 1438 1440 1442
1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475
1477 1479 1481 1483 1485 1487 1489 1596 1598 1600 1602 1604 1614 1616
1618 1620 1622 1624 1626 1628 1630 1632 1637 1639 1641 1643 1645 1647
1649 1651 1653 1659 1661 1663 1665 1667 1669 1671 1673 1675 1677 1679
1681 1683 1685 1687 1689 1695 1697 1699 1701 1703 1705 1707 1709 1711
1713 1715 1717 1719 1721 1723 1725 1727 1733 1735 1737 1739 1741 1743
1745 1747 1749 1751 1753 1755 1761 1763 1765 1767 1769 1771 1773 1775
1777 1779 1781 1783 1785 1787 1789 1791 1793 1799 1801 1803 1805 1807
1809 1811 1813 1815 1817 1819 1821 1827 1829 1831 1833 1835 1837 1839
1841 1843 1845 1847 1849 1851 1853 1855 1857 1859 1864 1866 1868 1870
1872 1877 1879 1881 1883 1885 1887 1889 1896 1898 1900 1902 1904 1992
1994 1996 1998 2000 2011 2013 2015 2017 2019 2021 2026 2028 2030 2037
2039 2041 2043 2045 2047 2049 2051 2053 2055 2057 2059 2061 2063 2065
2067 2069 2071 2073 2075 2077 2079 2081 2083 2085 2087 2094 2096 2098
2100 2102 2104 2106 2108 2110 2112 2114 2116 2118 2120 2122 2124 2126
2128 2130 2132 2134 2136 2138 2140 2142 2149 2151 2153 2155 2157 2159
2161 2163 2165 2167 2169 2171 2173 2175 2182 2184 2186 2188 2190 2192
2194 2196 2198 2200 2202 2204 2206 2208 2210 2212 2214 2216 2218 2220
2222
PNTMSG 130 131 132 133 135 136 137 139 140 691 692 693 913 914
1168 1169 1170 1171 1172 1173 1584 1585 1586 1587 1588 1982 1983 1984
RDBUFF 1673 1677 1681 1707 1711 1715 1773 1777 1781 1839 1843 1847
RDRSTA 1265 1296 1326 1381 1432
RDXSTA 206 230 244 294 344 393 452 502 558 778 1003 1015 2071 2128
RSXSTA 496 552 997 2163 2169 SEQ 0841
RTN 101 118 128 662 679 689 884 901 911 1139 1156 1166 1555 1572
1582 1953 1970 1980
SCOPER 111 672 894 1149 1565 1963
SELBUF 169 722 943 1216 1226 1239 1616 1637 1665 1699 1735 1765 1801 1831
2013 2151
SETMOD 264 314 363 414 468 520 736 957 1191 1197 1320 1349 1400 1743
1809 2039 2096
SUBTAB 623 625 844 846 1091 1093 1497 1499 1912 1914 2230 2232
TMSGC 130 131 132 133 134 136 137 138 140 691 692 693 913 914
1168 1169 1170 1171 1172 1173 1584 1585 1586 1587 1588 1982 1983 1984
TXMIT 282 332 381 432 486 538 752 979 1367 1418 1749 1815 2057 2114
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 1
DFCIA5 MAC 27-Oct-84 18:58 Test Module DFCIA5.MAC SEQ 0842
1 SUBTTL Test Module DFCIA5.MAC
2
3 SALL
4
5 SEARCH DFCIA,MONSYM
6
7 ; Tests/Microcode 41-51
8
9 ENTRY TST41,TST42,TST43,TST44,TST45,TST46,TST47,TST50,TST51
10 ENTRY TST52,TST53,TST54,CHKRQV,PDUMP
11 INTERN CRCSAV,CRCOFF,CRCTAB,RQAFLG
12
13 ; EXTERN's located in DFCIA1.MAC
14
15 EXTERN MVPNT,TFLOAD,TSLOAD,RDNODE,TIDLE,TPCB,SETENA,SETDSA,PCB,BUFF
16 EXTERN UDEBUG,SDEBUG,CSRPNT,TRACE,TSTSUB,TSTREP,TSTEND
17 EXTERN TEXEC,TTPNT,TCMD,TRESPC,TFMFLG,TRSFLG,TSTATC,TSTATA
18 EXTERN TPTFLG,TXCTID,TDPORT,TBYTE,TWORD,TPAT,TREGN,TREGD
19 EXTERN CONPNT,CPORT,CTABLE,CTYPE,CVALID,SREPOR
20 EXTERN CHKRSP,RWAIT,BPACK,BPACKN,INSQUE,PACKET,RSPONS,QFDG10,QFDG7
21 EXTERN CHKINT,NUMENT,ALTF,TXADDL,CONVIR,PPCB,PQUEUE,DDUMP,DDEBUG
22 EXTERN STASNT,.SREXP,STARCA,STARCB,.RREXP
23
24 ; EXTERN's located in DFCIAI.MAC (Port Handling Routines)
25
26 EXTERN LDCSR,RDCSR,IPACLR,RUNTME,DEBTIM,ISTOP,LCHAR,PSTAMP,RDLAR
27
28 ; EXTERN's located in DFCIAU.MAC (Utility Routines)
29
30 EXTERN BUFGEN
31
32 ;#********************************************************************
33 ; Z5 - Address for use in DDT
34 ;#********************************************************************
35
36 000000' Z5: ; address of 00000'
37
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 2
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0843
38 SUBTTL CRC Tests
39
40 ;#********************************************************************
41 ;* TEST 41 - CRC Test 1
42 ;
43 ; Description: This test verifies that the CRC is calculated
44 ; correctly. The link module does a lookup in a
45 ; 256 byte ROM in order to calculate the CRC. This
46 ; test verifies that the correct CRC is generated
47 ; for all data patterns of a single data byte. The
48 ; data portion of the packet is 256 bytes, which
49 ; are a counting pattern from 0-377 (octal).
50 ;
51 ; Procedure: KL> Load microcode
52 ; KL> Port Clear
53 ; KL> Start port
54 ;
55 ; KL> Build a loopback packet, insert on command
56 ; queue, and wait for a response
57 ; KL> Verify proper response
58 ; KL> Verify data portion of packet received properly
59 ; If failed - print error message and exit test
60 ;
61 ; Repeat 200 times.
62 ;
63 ; FRU: Link Module
64 ;#********************************************************************
65
66 000310 T41PAK==^D200 ; number of packets to send
67
68 ; Initialization
69
70 000000' 201 00 0 00 000000' TST41: MOVEI Z5 ; get address of module start
71 000001' 260 17 0 00 000000* GO TRACE ; handle trace output
72 000002' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
73 000003' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
74 000004' 476 00 0 00 005404' SETOM DUMPP# ; set 'dump possible' flag
75 000005' 260 17 0 00 000000* GO IPACLR ; do a 'port clear'
76 000006' 402 00 0 00 005413' SETZM TERMES# ; clear ucode load error message
77 000007' 260 17 0 00 000000* GO TFLOAD ; load operational microcode
78 GO [MOVEM TERMES ; error - save error message
79 SETO ERFLG,
80 000010' 260 17 0 00 004310' RTN]
81 000011' 260 17 0 00 000000* GO RDNODE ; read node address
82 000012' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
83 000013' 202 01 0 00 000000* MOVEM 1,CPORT ; save our port number
84 000014' 027 00 0 00 000206' SCOPER MA41 ; print error message
85 000015' 255 00 0 00 000000 JFCL ; loop on error
86 000016' 254 00 0 00 000202' JRST TX41 ; altmode exit
87 000017' 326 15 0 00 000202' JUMPN ERFLG,TX41 ; error yet? yes - abort test
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 3
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0844
88
89 ; Start port
90
91 000020' 260 17 0 00 000000* GO TIDLE ; start port
92 000021' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
93 000022' 027 00 0 00 000210' SCOPER MB41 ; print error message
94 000023' 255 00 0 00 000000 JFCL ; loop on error
95 000024' 254 00 0 00 000202' JRST TX41 ; altmode exit
96 000025' 326 15 0 00 000202' JUMPN ERFLG,TX41 ; error yet? yes - abort test
97
98 ; Enable the port
99
100 000026' 260 17 0 00 000000* GO SETENA ; ensure the port is enabled
101 000027' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
102 000030' 027 00 0 00 000213' SCOPER MC41 ; print error message
103 000031' 255 00 0 00 000000 JFCL ; loop on error
104 000032' 254 00 0 00 000202' JRST TX41 ; altmode exit
105 000033' 326 15 0 00 000202' JUMPN ERFLG,TX41 ; error yet? yes - abort test
106
107 ; Initialize statistics
108
109 000034' 402 00 0 00 004301' SETZM NPAKS ; clear sent count
110 000035' 402 00 0 00 004302' SETZM NPAKSE ; clear sent status error count
111 000036' 402 00 0 00 004303' SETZM NPAKR ; clear recv count
112 000037' 402 00 0 00 004304' SETZM NPAKRE ; clear recv status error count
113 000040' 402 00 0 00 004305' SETZM NPAKRC ; clear recv CRC error count
114 000041' 402 00 0 00 004306' SETZM NPAKRD ; clear recv dt.cmp error count (pkts)
115 000042' 402 00 0 00 004307' SETZM NPAKRW ; clear recv dt.cmp error count (words)
116
117 ; Initialize packet data
118
119 000043' 402 00 0 00 000000* SETZM TFMFLG ; set to COMPAT mode
120 000044' 402 00 0 00 000000* SETZM TRSFLG ; set no response requested
121 000045' 201 11 0 00 000015 MOVEI OP,SNDLB ; set op code (LOOPBACK)
122 000046' 201 00 0 00 000122 MOVEI 122 ; set data pattern to 8 bit
123 000047' 202 00 0 00 000000* MOVEM TPAT ; counting pattern
124 000050' 402 00 0 00 000000* SETZM TBYTE ; clear byte count
125 000051' 201 00 0 00 000100 MOVEI ^D64 ; get length
126 000052' 202 00 0 00 000000* MOVEM TWORD ; save it
127 000053' 402 00 0 00 000000* SETZM TXCTID ; clear XCT-ID
128 000054' 200 00 0 00 000013* MOVE CPORT ; get our port number
129 000055' 202 00 0 00 000000* MOVEM TDPORT ; set it up
130 000056' 402 00 0 00 000000* SETZM TPTFLG ; initialize to auto path
131 000057' 201 11 0 00 000015 MOVEI OP,SNDLB ; set up op code
132 000060' 260 17 0 00 000000* GO BPACK ; set up packet data
133 000061' 402 00 0 00 000000* SETZM TSTSUB ; initialize subtest number
134 000062' 402 00 0 00 005412' SETZM RQAFLG# ; clear response queue available flag
135 000063' 402 00 0 00 005404' SETZM DUMPP ; clear 'dump possible' flag
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 4
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0845
136
137 ; Increment packet number
138
139 000064' 350 01 0 00 000061* TA41: AOS 1,TSTSUB ; increment packet number
140 000065' 303 01 0 00 000310 CAILE 1,T41PAK ; done yet?
141 000066' 254 00 0 00 000136' JRST TE41 ; yes - check test results
142 000067' 400 06 0 00 000000 SETZ 6, ; clear hung count
143
144 ; Send a packet
145
146 000070' 037 07 0 00 000003 TB41: TTALTM ; altmode typed?
147 000071' 334 00 0 00 000000 SKIPA ; no - keep checking CSR, etc.
148 000072' 476 00 0 00 000000* SETOM ALTF ; yes - set flag
149 000073' 332 00 0 00 000072* SKIPE ALTF ; altmode flagged?
150 000074' 254 00 0 00 000202' JRST TX41 ; yes - exit
151 000075' 336 00 0 00 000000* SKIPN LCHAR ; last character in here already?
152 000076' 202 00 0 00 000075* MOVEM LCHAR ; no - save 'last char typed'
153 000077' 260 17 0 00 000000* GO PSTAMP ; check for S typed
154 000100' 400 07 0 00 000000 SETZ 7, ; clear 'packet put on queue' flag
155 000101' 261 17 0 00 000013 PUT Q ; save queue number
156 000102' 201 13 0 00 000006 MOVEI Q,6 ; get DGM free queue number
157 000103' 260 17 0 00 000000* GO CHKINT ; get list of queue entries
158 000104' 255 00 0 00 000000 JFCL ; ignore error
159 000105' 476 00 0 00 000000# SETOM PCB+26 ; reset the interlock
160 000106' 262 17 0 00 000013 GET Q ; restore queue number
161 000107' 200 00 0 00 000000* MOVE NUMENT ; get entry count
162 000110' 305 00 0 00 000002 CAIGE 2 ; 2 or more?
163 000111' 254 00 0 00 000122' JRST TC41 ; no - continue
164 000112' 400 13 0 00 000000 SETZ Q, ; set to cmd queue #3
165 000113' 260 17 0 00 000000* GO INSQUE ; insert into queue
166 000114' 334 00 0 00 000000 SKIPA ; failed - continue
167 000115' 474 07 0 00 000000 SETO 7, ; set 'packet put on queue' flag
168 000116' 332 00 0 00 000007 SKIPE 7 ; put on cmd queue?
169 000117' 350 00 0 00 004301' AOS NPAKS ; yes - increment packet sent count
170 000120' 337 00 0 00 000107* SKIPG NUMENT ; was the queue empty?
171 GO [GO RDCSR ; yes - set 'CMDQAV'
172 MOVEI 1,PENABL!MPRUN
173 TRZ 1,RESQAV
174 TRO 1,CMDQAV
175 GO LDCSR
176 000121' 260 17 0 00 004313' RTN]
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 5
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0846
177
178 ; Check for a response
179
180 000122' 260 17 0 00 004167' TC41: GO CHKRQV ; check response queue available
181 000123' 260 17 0 00 000000* GO CHKRSP ; check for RspQ entry
182 JRST [SETZM RQAFLG ; no entry found - continue
183 MOVE 1,PCB+21 ; get response queue FLINK
184 GO CONVIR ; convert to virtual
185 CAIE 1,PCB+21 ; queue really empty?
186 SETOM RQAFLG ; no - set rsp queue avail flag
187 000124' 254 00 0 00 004321' JRST TD41]
188 000125' 400 06 0 00 000000 SETZ 6, ; clear hung count
189 000126' 260 17 0 00 004141' GO MCHECK ; determine results
190 000127' 260 17 0 00 004116' GO MCOMP2 ; compare packet data
191 000130' 254 00 0 00 000122' JRST TC41 ; keep looking for responses
192
193 ; No more responses
194
195 000131' 350 00 0 00 000006 TD41: AOS 6 ; increment hung count
196 000132' 303 06 0 00 007640 CAILE 6,^D4000 ; check 4000 times and no response?
197 JRST [SETOM DUMPP ; yes - set 'dump possible' flag
198 000133' 254 00 0 00 004327' JRST TE41] ; and exit
199 000134' 322 07 0 00 000070' JUMPE 7,TB41 ; send current packet? yes - go do so
200 000135' 254 00 0 00 000064' JRST TA41 ; no - already did - go do next packet
201
202 ; Check for any stragglers
203
204 000136' 400 03 0 00 000000 TE41: SETZ 3, ; set up for RUNTME
205 000137' 260 17 0 00 000000* GO RUNTME ; get current run time
206 000140' 200 01 0 00 000000* MOVE 1,DEBTIM ; get time in milliseconds
207 000141' 271 01 0 00 000310 ADDI 1,^D200 ; wait an addl 200 msecs
208 000142' 202 01 0 00 005405' MOVEM 1,ENDTIM# ; save maximum time
209 000143' 260 17 0 00 004167' TF41: GO CHKRQV ; check response queue available
210 000144' 260 17 0 00 000123* GO CHKRSP ; check for RspQ entry
211 JRST [SETZM RQAFLG ; no entry found - continue
212 MOVE 1,PCB+21 ; get response queue FLINK
213 GO CONVIR ; convert to virtual
214 CAIE 1,PCB+21 ; queue really empty?
215 SETOM RQAFLG ; no - set rsp queue avail flag
216 000145' 254 00 0 00 004331' JRST TG41]
217 000146' 260 17 0 00 004141' GO MCHECK ; determine results
218 000147' 260 17 0 00 004116' GO MCOMP2 ; compare packet data
219 000150' 254 00 0 00 000143' JRST TF41 ; keep looking for responses
220 000151' 400 03 0 00 000000 TG41: SETZ 3, ; set up for RUNTME
221 000152' 260 17 0 00 000137* GO RUNTME ; get current run time
222 000153' 200 01 0 00 000140* MOVE 1,DEBTIM ; get time in milliseconds
223 000154' 317 01 0 00 005405' CAMG 1,ENDTIM ; time expired yet?
224 000155' 254 00 0 00 000143' JRST TF41 ; no - keep looping
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 6
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0847
225
226 ; Done with test - now check results
227
228 000156' 200 00 0 00 004301' TH41: MOVE NPAKS ; get number of packets sent
229 000157' 302 00 0 00 000310 CAIE T41PAK ; correct number?
230 000160' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
231 000161' 200 00 0 00 004302' MOVE NPAKSE ; get status errors
232 000162' 303 00 0 00 000024 CAILE T41PAK/^D10 ; more than 10% received?
233 000163' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
234 000164' 200 00 0 00 004303' MOVE NPAKR ; get receive count
235 000165' 305 00 0 00 000264 CAIGE T41PAK*^D9/^D10 ; more than 90% received?
236 000166' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
237 000167' 200 00 0 00 004304' MOVE NPAKRE ; number of receive status errors
238 000170' 303 00 0 00 000024 CAILE T41PAK/^D10 ; more than 10% received?
239 000171' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
240 000172' 332 00 0 00 004306' SKIPE NPAKRD ; any receive dt.cmp errors?
241 000173' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
242 000174' 200 00 0 00 004305' MOVE NPAKRC ; number of receive CRC errors
243 000175' 303 00 0 00 000024 CAILE T41PAK/^D10 ; more than 10% received?
244 000176' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
245 000177' 027 00 0 00 000216' SCOPER MD41 ; print error message
246 000200' 255 00 0 00 000000 JFCL ; loop on error
247 000201' 254 00 0 00 000202' JRST TX41 ; altmode exit
248
249 ; End of test
250
251 000202' 260 17 0 00 000000* TX41: GO TSTEND ; handle end of test processing
252 000203' 260 17 0 00 000000* GO SETDSA ; disable the port
253 000204' 260 17 0 00 000000* GO ISTOP ; stop the port
254 000205' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 7
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0848
255
256 ; Error messages
257
258 000206' 260000 004270' MA41: TXALL!CALL!LODERR
259 000207' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
260
261 000210' 160000 004343' MB41: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
262 000211' 260000 004242' TXALL!CALL!PDUMP
263 000212' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
264
265 000213' 160000 004351' MC41: TXALL!MSG![ASCIZ /Could not enable the port/]
266 000214' 260000 004242' TXALL!CALL!PDUMP
267 000215' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
268
269 000216' 160000 004357' MD41: TXALL!MSG![ASCIZ /Errors noted with external loopback:/]
270 000217' 260000 000223' TXALL!CALL!MD41PN
271 000220' 260000 004242' TXALL!CALL!PDUMP
272 000221' 160000 004367' TXALL!MSG![ASCIZ /FRU: Link Module (Check CI cables & Star/]
273 000222' 170000 004400' LAST!TXALL!MSG![ASCIZ / Coupler connections)/]
274
275 000223' 037 00 0 00 004406' MD41PN: TMSGC < What Expected Actual>
276 000224' 037 00 0 00 004416' TMSGC <----------- -------- ------>
277 000225' 037 00 0 00 004426' TMSGC <Packets Sent >
278 000226' 004 11 0 00 004432' PNTDCP 9,[T41PAK]
279 000227' 004 11 0 00 004301' PNTDCP 9,NPAKS
280 000230' 037 00 0 00 004433' TMSGC < Status Errors >
281 000231' 004 11 0 00 004356' PNTDCP 9,[0]
282 000232' 004 11 0 00 004302' PNTDCP 9,NPAKSE
283 000233' 037 00 0 00 004437' TMSGC <Packets Rcvd >
284 000234' 004 11 0 00 004432' PNTDCP 9,[T41PAK]
285 000235' 004 11 0 00 004303' PNTDCP 9,NPAKR
286 000236' 037 00 0 00 004443' TMSGC < Status Errors 0.>
287 000237' 004 11 0 00 004304' PNTDCP 9,NPAKRE
288 000240' 037 00 0 00 004451' TMSGC < CRC Errors 0.>
289 000241' 004 11 0 00 004305' PNTDCP 9,NPAKRC
290 000242' 037 00 0 00 004457' TMSGC < DtCmp Errors (PKTS) 0.>
291 000243' 004 11 0 00 004306' PNTDCP 9,NPAKRD
292 000244' 037 00 0 00 004465' TMSGC < DtCmp Errors (WORDS) 0.>
293 000245' 004 11 0 00 004307' PNTDCP 9,NPAKRW
294 000246' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 8
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0849
295
296 ;#********************************************************************
297 ;* TEST 42 - CRC Test 2
298 ;
299 ; Description: This test verifies that the CRC is calculated
300 ; correctly. This test verifies that a CRC error
301 ; occurs when the correct CRC data is appended to
302 ; the packet with a single bit error. The data
303 ; portion of the packet is 256 bytes, which are a
304 ; counting pattern from 0-377 (octal).
305 ;
306 ; Procedure: KL> Load microcode
307 ; KL> Port Clear
308 ; KL> Start port
309 ;
310 ; KL> Build a loopback packet, insert on command
311 ; queue, and wait for a response
312 ; KL> Verify proper response (retries exhausted, no response).
313 ; If failed - print error message and exit test
314 ;
315 ; Repeat 320 times, ten times for each packet with
316 ; a single bit error in bits 0-31.
317 ;
318 ; FRU: Link Module
319 ;#********************************************************************
320
321 000500 T42PAK==^D320 ; number of packets to send
322 000100 T42LEN==^D64 ; packet length
323
324 ; Initialization
325
326 000247' 201 00 0 00 000000' TST42: MOVEI Z5 ; get address of module start
327 000250' 260 17 0 00 000001* GO TRACE ; handle trace output
328 000251' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
329 000252' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
330 000253' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
331 000254' 260 17 0 00 000005* GO IPACLR ; do a 'port clear'
332 000255' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
333 000256' 260 17 0 00 000007* GO TFLOAD ; load operational microcode
334 GO [MOVEM TERMES ; error - save error message
335 SETO ERFLG,
336 000257' 260 17 0 00 004310' RTN]
337 000260' 260 17 0 00 000011* GO RDNODE ; read node address
338 000261' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
339 000262' 202 01 0 00 000054* MOVEM 1,CPORT ; save our port number
340 000263' 027 00 0 00 000451' SCOPER MA42 ; print error message
341 000264' 255 00 0 00 000000 JFCL ; loop on error
342 000265' 254 00 0 00 000443' JRST TX42 ; altmode exit
343 000266' 326 15 0 00 000443' JUMPN ERFLG,TX42 ; error yet? yes - abort test
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 9
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0850
344
345 ; Start port
346
347 000267' 260 17 0 00 000020* GO TIDLE ; start port
348 000270' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
349 000271' 027 00 0 00 000453' SCOPER MB42 ; print error message
350 000272' 255 00 0 00 000000 JFCL ; loop on error
351 000273' 254 00 0 00 000443' JRST TX42 ; altmode exit
352 000274' 326 15 0 00 000443' JUMPN ERFLG,TX42 ; error yet? yes - abort test
353
354 ; Enable the port
355
356 000275' 260 17 0 00 000026* GO SETENA ; ensure the port is enabled
357 000276' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
358 000277' 027 00 0 00 000456' SCOPER MC42 ; print error message
359 000300' 255 00 0 00 000000 JFCL ; loop on error
360 000301' 254 00 0 00 000443' JRST TX42 ; altmode exit
361 000302' 326 15 0 00 000443' JUMPN ERFLG,TX42 ; error yet? yes - abort test
362
363 ; Initialize statistics
364
365 000303' 402 00 0 00 004301' SETZM NPAKS ; clear sent count
366 000304' 402 00 0 00 004302' SETZM NPAKSE ; clear sent status error count
367 000305' 402 00 0 00 004303' SETZM NPAKR ; clear recv count
368 000306' 402 00 0 00 004304' SETZM NPAKRE ; clear recv status error count
369
370 ; Initialize packet data
371
372 000307' 402 00 0 00 000043* SETZM TFMFLG ; set to COMPAT mode
373 000310' 402 00 0 00 000044* SETZM TRSFLG ; set no response requested
374 000311' 201 00 0 00 000001 MOVEI 1 ; set to Path A
375 000312' 202 00 0 00 000056* MOVEM TPTFLG ; save it
376 000313' 201 00 0 00 000122 MOVEI 122 ; set data pattern to 8 bit
377 000314' 202 00 0 00 000047* MOVEM TPAT ; counting pattern
378 000315' 402 00 0 00 000050* SETZM TBYTE ; clear byte count
379 000316' 201 00 0 00 000100 MOVEI T42LEN ; get length
380 000317' 202 00 0 00 000052* MOVEM TWORD ; save it
381 000320' 402 00 0 00 000053* SETZM TXCTID ; clear XCT-ID
382 000321' 200 00 0 00 000262* MOVE CPORT ; get our port number
383 000322' 202 00 0 00 000055* MOVEM TDPORT ; set it up
384 000323' 201 11 0 00 000015 MOVEI OP,SNDLB ; set up op code
385 000324' 260 17 0 00 000060* GO BPACK ; set up packet data
386 000325' 200 00 0 00 000000# MOVE PACKET+T42LEN+5 ; get CRC
387 000326' 202 00 0 00 001364' MOVEM CRCSAV ; save it
388 000327' 402 00 0 00 000064* SETZM TSTSUB ; initialize subtest number
389 000330' 402 00 0 00 005412' SETZM RQAFLG ; clear response queue available flag
390 000331' 402 00 0 00 005404' SETZM DUMPP ; clear 'dump possible' flag
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 10
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0851
391
392 ; Increment packet number
393
394 000332' 350 01 0 00 000327* TA42: AOS 1,TSTSUB ; get subtest number
395 000333' 231 01 0 00 000012 IDIVI 1,^D10 ; divide by 10
396 000334' 332 00 0 00 000002 SKIPE 2 ; remainder?
397 GO [MOVE CRCSAV ; yes - get CRC and invert
398 MOVEI 1,10 ; one of the bits
399 LSH 1,(2)
400 XOR 1
401 MOVEM PACKET+T42LEN+5
402 000335' 260 17 0 00 004473' RTN]
403 000336' 200 01 0 00 000332* MOVE 1,TSTSUB ; increment packet number
404 000337' 303 01 0 00 000500 CAILE 1,T42PAK ; done yet?
405 000340' 254 00 0 00 000410' JRST TE42 ; yes - check test results
406 000341' 400 06 0 00 000000 SETZ 6, ; clear hung count
407
408 ; Send a packet
409
410 000342' 037 07 0 00 000003 TB42: TTALTM ; altmode typed?
411 000343' 334 00 0 00 000000 SKIPA ; no - keep checking CSR, etc.
412 000344' 476 00 0 00 000073* SETOM ALTF ; yes - set flag
413 000345' 332 00 0 00 000344* SKIPE ALTF ; altmode flagged?
414 000346' 254 00 0 00 000443' JRST TX42 ; yes - exit
415 000347' 336 00 0 00 000076* SKIPN LCHAR ; last character in here already?
416 000350' 202 00 0 00 000347* MOVEM LCHAR ; no - save 'last char typed'
417 000351' 260 17 0 00 000077* GO PSTAMP ; check for S typed
418 000352' 400 07 0 00 000000 SETZ 7, ; clear 'packet put on queue' flag
419 000353' 261 17 0 00 000013 PUT Q ; save queue number
420 000354' 201 13 0 00 000006 MOVEI Q,6 ; get DGM free queue number
421 000355' 260 17 0 00 000103* GO CHKINT ; get list of queue entries
422 000356' 255 00 0 00 000000 JFCL ; ignore error
423 000357' 476 00 0 00 000000# SETOM PCB+26 ; reset the interlock
424 000360' 262 17 0 00 000013 GET Q ; restore queue number
425 000361' 200 00 0 00 000120* MOVE NUMENT ; get entry count
426 000362' 305 00 0 00 000002 CAIGE 2 ; 2 or more?
427 000363' 254 00 0 00 000374' JRST TC42 ; no - continue
428 000364' 400 13 0 00 000000 SETZ Q, ; set to cmd queue #3
429 000365' 260 17 0 00 000113* GO INSQUE ; insert into queue
430 000366' 334 00 0 00 000000 SKIPA ; failed - continue
431 000367' 474 07 0 00 000000 SETO 7, ; set 'packet put on queue' flag
432 000370' 332 00 0 00 000007 SKIPE 7 ; put on cmd queue?
433 000371' 350 00 0 00 004301' AOS NPAKS ; yes - increment packet sent count
434 000372' 337 00 0 00 000361* SKIPG NUMENT ; was the queue empty?
435 GO [GO RDCSR ; yes - set 'CMDQAV'
436 MOVEI 1,PENABL!MPRUN
437 TRZ 1,RESQAV
438 TRO 1,CMDQAV
439 GO LDCSR
440 000373' 260 17 0 00 004313' RTN]
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 11
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0852
441
442 ; Check for a response
443
444 000374' 260 17 0 00 004167' TC42: GO CHKRQV ; check response queue available
445 000375' 260 17 0 00 000144* GO CHKRSP ; check for RspQ entry
446 JRST [SETZM RQAFLG ; no entry found - continue
447 MOVE 1,PCB+21 ; get response queue FLINK
448 GO CONVIR ; convert to virtual
449 CAIE 1,PCB+21 ; queue really empty?
450 SETOM RQAFLG ; no - set rsp queue avail flag
451 000376' 254 00 0 00 004501' JRST TD42]
452 000377' 400 06 0 00 000000 SETZ 6, ; clear hung count
453 000400' 260 17 0 00 004141' GO MCHECK ; determine results
454 000401' 260 17 0 00 004116' GO MCOMP2 ; compare packet data
455 000402' 254 00 0 00 000374' JRST TC42 ; keep looking for responses
456
457 ; No more responses
458
459 000403' 350 00 0 00 000006 TD42: AOS 6 ; increment hung count
460 000404' 303 06 0 00 007640 CAILE 6,^D4000 ; check 4000 times and no response?
461 JRST [SETOM DUMPP ; yes - set 'dump possible' flag
462 000405' 254 00 0 00 004507' JRST TE42] ; and exit
463 000406' 322 07 0 00 000342' JUMPE 7,TB42 ; send current packet? yes - go do so
464 000407' 254 00 0 00 000332' JRST TA42 ; no - already did - go do next packet
465
466 ; Check for any stragglers
467
468 000410' 400 03 0 00 000000 TE42: SETZ 3, ; set up for RUNTME
469 000411' 260 17 0 00 000152* GO RUNTME ; get current run time
470 000412' 200 01 0 00 000153* MOVE 1,DEBTIM ; get time in milliseconds
471 000413' 271 01 0 00 000310 ADDI 1,^D200 ; wait an addl 200 msecs
472 000414' 202 01 0 00 005405' MOVEM 1,ENDTIM# ; save maximum time
473 000415' 260 17 0 00 004167' TF42: GO CHKRQV ; check response queue available
474 000416' 260 17 0 00 000375* GO CHKRSP ; check for RspQ entry
475 JRST [SETZM RQAFLG ; no entry found - continue
476 MOVE 1,PCB+21 ; get response queue FLINK
477 GO CONVIR ; convert to virtual
478 CAIE 1,PCB+21 ; queue really empty?
479 SETOM RQAFLG ; no - set rsp queue avail flag
480 000417' 254 00 0 00 004511' JRST TG42]
481 000420' 260 17 0 00 004141' GO MCHECK ; determine results
482 000421' 260 17 0 00 004116' GO MCOMP2 ; compare packet data
483 000422' 254 00 0 00 000415' JRST TF42 ; keep looking for responses
484 000423' 400 03 0 00 000000 TG42: SETZ 3, ; set up for RUNTME
485 000424' 260 17 0 00 000411* GO RUNTME ; get current run time
486 000425' 200 01 0 00 000412* MOVE 1,DEBTIM ; get time in milliseconds
487 000426' 317 01 0 00 005405' CAMG 1,ENDTIM ; time expired yet?
488 000427' 254 00 0 00 000415' JRST TF42 ; no - keep looping
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 12
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0853
489
490 ; Done with test - now check results
491
492 000430' 200 00 0 00 004301' TH42: MOVE NPAKS ; get number of packets sent
493 000431' 302 00 0 00 000500 CAIE T42PAK ; correct number?
494 000432' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
495 000433' 200 00 0 00 004302' MOVE NPAKSE ; get status errors
496 000434' 312 00 0 00 004301' CAME NPAKS ; same number sent?
497 000435' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
498 000436' 332 00 0 00 004303' SKIPE NPAKR ; any packets received?
499 000437' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
500 000440' 027 00 0 00 000461' SCOPER MD42 ; print error message
501 000441' 255 00 0 00 000000 JFCL ; loop on error
502 000442' 254 00 0 00 000443' JRST TX42 ; altmode exit
503
504 ; End of test
505
506 000443' 260 17 0 00 000202* TX42: GO TSTEND ; handle end of test processing
507 000444' 200 00 0 00 004302' MOVE NPAKSE ; get number of status errors
508 000445' 272 00 0 00 000000# ADDM STASNT+^D10+.SREXP ; update statistics for expected errors
509 000446' 260 17 0 00 000203* GO SETDSA ; disable the port
510 000447' 260 17 0 00 000204* GO ISTOP ; stop the port
511 000450' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 13
DFCIA5 MAC 27-Oct-84 18:58 CRC Tests SEQ 0854
512
513 ; Error messages
514
515 000451' 260000 004270' MA42: TXALL!CALL!LODERR
516 000452' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
517
518 000453' 160000 004343' MB42: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
519 000454' 260000 004242' TXALL!CALL!PDUMP
520 000455' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
521
522 000456' 160000 004351' MC42: TXALL!MSG![ASCIZ /Could not enable the port/]
523 000457' 260000 004242' TXALL!CALL!PDUMP
524 000460' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
525
526 000461' 160000 004357' MD42: TXALL!MSG![ASCIZ /Errors noted with external loopback:/]
527 000462' 260000 000466' TXALL!CALL!MD42PN
528 000463' 260000 004242' TXALL!CALL!PDUMP
529 000464' 160000 004367' TXALL!MSG![ASCIZ /FRU: Link Module (Check CI cables & Star/]
530 000465' 170000 004400' LAST!TXALL!MSG![ASCIZ / Coupler connections)/]
531
532 000466' 037 00 0 00 004406' MD42PN: TMSGC < What Expected Actual>
533 000467' 037 00 0 00 004416' TMSGC <----------- -------- ------>
534 000470' 037 00 0 00 004426' TMSGC <Packets Sent >
535 000471' 004 11 0 00 004517' PNTDCP 9,[T42PAK]
536 000472' 004 11 0 00 004301' PNTDCP 9,NPAKS
537 000473' 037 00 0 00 004433' TMSGC < Status Errors >
538 000474' 004 11 0 00 004301' PNTDCP 9,NPAKS
539 000475' 004 11 0 00 004302' PNTDCP 9,NPAKSE
540 000476' 037 00 0 00 004520' TMSGC <Packets Rcvd 0>
541 000477' 004 11 0 00 004303' PNTDCP 9,NPAKR
542 000500' 037 00 0 00 004526' TMSGC < Status Errors 0>
543 000501' 004 11 0 00 004304' PNTDCP 9,NPAKRE
544 000502' 263 17 0 00 000000 RTN
545
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 14
DFCIA5 MAC 27-Oct-84 18:58 Microcode Functional Tests SEQ 0855
546 SUBTTL Microcode Functional Tests
547
548 ;#********************************************************************
549 ;* TEST 43 - Idle Loop Test
550 ;
551 ; Description: This test loads the operational microcode and
552 ; verifies that the port is working well enough to
553 ; enter the idle loop. Also, the ability of the
554 ; microcode to change from 'disable' state to
555 ; 'enable' state and back is checked.
556 ;
557 ; Procedure: KL> Load microcode
558 ; KL> Port Clear
559 ;
560 ; KL> Start port
561 ; KL> Verify that the port entered the IDLE loop
562 ; If failed - print error message and exit test
563 ;
564 ; KL> Write 'Disable' bit in CSR
565 ; KL> Verify that 'Disable Complete' is set by the port
566 ; If failed - print error message and exit test
567 ;
568 ; KL> Write 'Enable' bit in CSR
569 ; KL> Verify that 'Enable Complete' is set by the port
570 ; If failed - print error message and exit test
571 ;
572 ; FRU: Packet Buffer Module
573 ;#********************************************************************
574
575 ; Initialization
576
577 000503' 201 00 0 00 000000' TST43: MOVEI Z5 ; get address of module start
578 000504' 260 17 0 00 000250* GO TRACE ; handle trace output
579 000505' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
580 000506' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
581 000507' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
582 000510' 260 17 0 00 000254* GO IPACLR ; do a 'port clear'
583 000511' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
584 000512' 260 17 0 00 000256* GO TFLOAD ; load operational microcode
585 GO [MOVEM TERMES ; error - save error message
586 SETO ERFLG,
587 000513' 260 17 0 00 004310' RTN]
588
589 ; Handle error printouts
590
591 000514' 350 00 0 00 000336* AOS TSTSUB ; initialize subtest number
592 000515' 027 00 0 00 000565' SCOPER MA43 ; print error message
593 000516' 255 00 0 00 000000 JFCL ; loop on error
594 000517' 254 00 0 00 000561' JRST TX43 ; altmode exit
595 000520' 326 15 0 00 000561' JUMPN ERFLG,TX43 ; error exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 15
DFCIA5 MAC 27-Oct-84 18:58 Microcode Functional Tests SEQ 0856
596
597 ; Start up the port
598
599 000521' 260 17 0 00 000000* GO TPCB ; initialize the PCB
600 000522' 260 17 0 00 000267* GO TIDLE ; start the port
601 000523' 474 15 0 00 000000 SETO ERFLG, ; failed - set flag
602
603 ; Handle error printouts
604
605 000524' 350 00 0 00 000514* AOS TSTSUB ; initialize subtest number
606 000525' 027 00 0 00 000567' SCOPER MB43 ; print error message
607 000526' 255 00 0 00 000000 JFCL ; loop on error
608 000527' 254 00 0 00 000561' JRST TX43 ; altmode exit
609 000530' 326 15 0 00 000561' JUMPN ERFLG,TX43 ; error exit
610
611 ; Set 'DISABLE' bit in CSR
612
613 000531' 201 01 0 00 000050 MOVEI 1,MPRUN!PDSABL ; get bits to write
614 000532' 260 17 0 00 000000* GO LDCSR ; write CSR
615 000533' 005 00 0 00 000001 DELAY 1 ; wait 1 millisecond
616 000534' 260 17 0 00 000000* GO RDCSR ; read CSR
617 000535' 255 00 0 00 000000 JFCL ; ignore error
618 000536' 607 01 0 00 000040 TLNN 1,(DCOMP) ; 'Disable Complete' bit set?
619 000537' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
620
621 ; Handle error printouts
622
623 000540' 350 00 0 00 000524* AOS TSTSUB ; initialize subtest number
624 000541' 027 00 0 00 000573' SCOPER MC43 ; print error message
625 000542' 255 00 0 00 000000 JFCL ; loop on error
626 000543' 254 00 0 00 000561' JRST TX43 ; altmode exit
627 000544' 326 15 0 00 000561' JUMPN ERFLG,TX43 ; error exit
628
629 ; Set 'ENABLE' bit in CSR
630
631 000545' 201 01 0 00 000030 MOVEI 1,MPRUN!PENABL ; get bits to write
632 000546' 260 17 0 00 000532* GO LDCSR ; write CSR
633 000547' 005 00 0 00 000001 DELAY 1 ; wait 1 millisecond
634 000550' 260 17 0 00 000534* GO RDCSR ; read CSR
635 000551' 255 00 0 00 000000 JFCL ; ignore error
636 000552' 607 01 0 00 000020 TLNN 1,(ECOMP) ; 'Enable Complete' bit set?
637 000553' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
638
639 ; Handle error printouts
640
641 000554' 350 00 0 00 000540* AOS TSTSUB ; initialize subtest number
642 000555' 027 00 0 00 000577' SCOPER MD43 ; print error message
643 000556' 255 00 0 00 000000 JFCL ; loop on error
644 000557' 254 00 0 00 000561' JRST TX43 ; altmode exit
645 000560' 326 15 0 00 000561' JUMPN ERFLG,TX43 ; error exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 16
DFCIA5 MAC 27-Oct-84 18:58 Microcode Functional Tests SEQ 0857
646
647 ; End of test
648
649 000561' 260 17 0 00 000443* TX43: GO TSTEND ; handle end of test processing
650 000562' 260 17 0 00 000446* GO SETDSA ; disable the port
651 000563' 260 17 0 00 000447* GO ISTOP ; stop the port
652 000564' 263 17 0 00 000000 RTN ; return
653
654 ; Error messages
655
656 000565' 260000 004270' MA43: TXALL!CALL!LODERR
657 000566' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
658
659 000567' 160000 004343' MB43: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
660 000570' 240000 000603' TXNOT!CALL!MA43PN
661 000571' 260000 004242' TXALL!CALL!PDUMP
662 000572' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
663
664 000573' 160000 004534' MC43: TXALL!MSG![ASCIZ /Port did not set 'Disable Complete' in CSR/]
665 000574' 240000 000603' TXNOT!CALL!MA43PN
666 000575' 260000 004242' TXALL!CALL!PDUMP
667 000576' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
668
669 000577' 160000 004545' MD43: TXALL!MSG![ASCIZ /Port did not set 'Enable Complete' in CSR/]
670 000600' 240000 000603' TXNOT!CALL!MA43PN
671 000601' 260000 004242' TXALL!CALL!PDUMP
672 000602' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
673
674 000603' 260 17 0 00 000550* MA43PN: GO RDCSR ; read CSR
675 000604' 255 00 0 00 000000 JFCL ; ignore error
676 000605' 201 02 0 00 000023 MOVEI 2,^D19 ; character count so far
677 000606' 201 03 0 00 000023 MOVEI 3,^D19 ; continuation line column number
678 000607' 260 17 0 00 000000* GO CSRPNT ; go print in English
679 000610' 263 17 0 00 000000 RTN ; done - return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 17
DFCIA5 MAC 27-Oct-84 18:58 Microcode Functional Tests SEQ 0858
680
681 ;#********************************************************************
682 ;* TEST 44 - Queue Handling Test
683 ;
684 ; Description: This test verifies that the operational microcode
685 ; handles queues properly, removing entries in the
686 ; proper order from the four command queues and
687 ; putting responses in the proper sequence on the
688 ; response queue and removing entries from and
689 ; adding entries to the free queue properly.
690 ;
691 ; Procedure: KL> Load microcode
692 ; KL> Port Clear
693 ; KL> Initialize PCB
694 ; KL> Insert 2 packets on each command queue 3-0
695 ; KL> Start port
696 ; KL> Remove entries from the response queue and
697 ; verify that the responses are received in
698 ; the proper order
699 ; KL> Continue until all of the responses have
700 ; been processed
701 ; If failed - print error message and exit test
702 ;
703 ; FRU: Operational microcode
704 ;#********************************************************************
705
706 ; Initialization
707
708 000611' 201 00 0 00 000000' TST44: MOVEI Z5 ; get address of module start
709 000612' 260 17 0 00 000504* GO TRACE ; handle trace output
710 000613' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
711 000614' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
712 000615' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
713 000616' 260 17 0 00 000510* GO IPACLR ; do a 'port clear'
714 000617' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
715 000620' 260 17 0 00 000512* GO TFLOAD ; load operational microcode
716 GO [MOVEM TERMES ; error - save error message
717 SETO ERFLG,
718 000621' 260 17 0 00 004310' RTN]
719 000622' 260 17 0 00 000260* GO RDNODE ; read node address
720 000623' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
721 000624' 202 01 0 00 000321* MOVEM 1,CPORT ; save our port number
722 000625' 027 00 0 00 000744' SCOPER MA44 ; print error message
723 000626' 255 00 0 00 000000 JFCL ; loop on error
724 000627' 254 00 0 00 000740' JRST TX44 ; altmode exit
725 000630' 326 15 0 00 000740' JUMPN ERFLG,TX44 ; error yet? yes - abort test
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 18
DFCIA5 MAC 27-Oct-84 18:58 Microcode Functional Tests SEQ 0859
726
727 ; Start port
728
729 000631' 260 17 0 00 000522* GO TIDLE ; start port
730 000632' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
731 000633' 027 00 0 00 000746' SCOPER MB44 ; print error message
732 000634' 255 00 0 00 000000 JFCL ; loop on error
733 000635' 254 00 0 00 000740' JRST TX44 ; altmode exit
734 000636' 326 15 0 00 000740' JUMPN ERFLG,TX44 ; error yet? yes - abort test
735
736 ; Initialize PCB and insert packets
737
738 000637' 402 00 0 00 000000* SETZM PACKET ; zero first word of packet
739 000640' 200 00 0 00 004556' MOVE [PACKET,,PACKET+1] ; build BLT word
740 000641' 251 00 0 00 000000# BLT PACKET+^D255 ; zero packet data
741 000642' 200 00 0 00 000624* MOVE CPORT ; get our port number
742 000643' 137 00 0 00 004557' DPB [POINT 8,PACKET+3,31] ; insert into packet
743 000644' 400 13 0 00 000000 SETZ Q, ; initialize queue number
744 000645' 350 00 0 00 000000# TA44: AOS PACKET+4 ; increment XCT-ID
745 000646' 260 17 0 00 000365* GO INSQUE ; insert in queue
746 000647' 255 00 0 00 000000 JFCL ; error - ignore
747 000650' 350 00 0 00 000000# AOS PACKET+4 ; increment XCT-ID
748 000651' 260 17 0 00 000646* GO INSQUE ; insert in queue
749 000652' 255 00 0 00 000000 JFCL ; error - ignore
750 000653' 350 00 0 00 000013 AOS Q ; increment queue number
751 000654' 307 13 0 00 000003 CAIG Q,3 ; done yet?
752 000655' 254 00 0 00 000645' JRST TA44 ; no - loop till done
753
754 ; Initialize received packet data
755
756 000656' 476 00 0 00 001020' SETOM T44ORD ; initialize results data
757 000657' 200 00 0 00 004560' MOVE [T44ORD,,T44ORD+1] ; ...
758 000660' 251 00 0 00 001040' BLT T44LIS+7 ; ...
759 000661' 476 00 0 00 001017' SETOM T44PNT ; initialize next location pointer
760 000662' 260 17 0 00 000275* GO SETENA ; set enabled state
761 000663' 255 00 0 00 000000 JFCL ; ignore error
762 000664' 201 01 0 00 000430 MOVEI 1,CMDQAV!PENABL!MPRUN ; get run/enable bits
763 000665' 260 17 0 00 000546* GO LDCSR ; get the port going
764
765 ; Set up wait time and check for a response available
766
767 000666' 400 03 0 00 000000 SETZ 3, ; set up for RUNTME
768 000667' 260 17 0 00 000424* GO RUNTME ; get current run time
769 000670' 200 01 0 00 000425* MOVE 1,DEBTIM ; get time in milliseconds
770 000671' 271 01 0 00 000144 ADDI 1,^D100 ; point to maximum time
771 000672' 202 01 0 00 005405' MOVEM 1,ENDTIM# ; save it
772 000673' 260 17 0 00 000000* TB44: GO RWAIT ; wait for response
773 000674' 260 17 0 00 000416* TC44: GO CHKRSP ; check for response entry
774 000675' 254 00 0 00 000713' JRST TD44 ; no responses - determine test results
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 19
DFCIA5 MAC 27-Oct-84 18:58 Microcode Functional Tests SEQ 0860
775
776 ; Got an entry - update test data
777
778 000676' 135 00 0 00 004561' LDB [POINT 8,RSPONS+3,31] ; get port number of source of packet
779 000677' 312 00 0 00 000642* CAME CPORT ; did it come from us?
780 000700' 254 00 0 00 000674' JRST TC44 ; no - get next entry
781 000701' 200 01 0 00 000000# MOVE 1,RSPONS+4 ; get XCT-ID
782 000702' 301 01 0 00 000001 CAIL 1,1 ; in range 1-8?
783 000703' 303 01 0 00 000010 CAILE 1,8
784 000704' 254 00 0 00 000674' JRST TC44 ; no - ignore - get next entry
785 000705' 402 00 0 01 001030' SETZM T44LIS-1(1) ; indicate that we received this one
786 000706' 350 02 0 00 001017' AOS 2,T44PNT ; point to next location
787 000707' 301 02 0 00 000010 CAIL 2,8 ; within range?
788 000710' 254 00 0 00 000674' JRST TC44 ; no - ignore - get next entry
789 000711' 202 01 0 02 001020' MOVEM 1,T44ORD(2) ; save packet received
790 000712' 254 00 0 00 000674' JRST TC44 ; get next entry
791
792 ; No more packets found - check if any more expected
793
794 000713' 200 00 0 00 001017' TD44: MOVE T44PNT ; get packet received count
795 000714' 301 00 0 00 000010 CAIL 8 ; have all of them already?
796 000715' 254 00 0 00 000723' JRST TE44 ; yes - continue
797
798 ; More packets expected - check timeout time
799
800 000716' 400 03 0 00 000000 SETZ 3, ; set up for RUNTME
801 000717' 260 17 0 00 000667* GO RUNTME ; get current run time
802 000720' 200 00 0 00 000670* MOVE DEBTIM ; get current time
803 000721' 315 00 0 00 005405' CAMGE ENDTIM ; exceeds maximum time?
804 000722' 254 00 0 00 000674' JRST TC44 ; no - check for response again
805
806 ; Done receiving entries - determine if an error has occurred
807
808 000723' 260 17 0 00 000616* TE44: GO IPACLR ; stop the port
809 000724' 400 01 0 00 000000 SETZ 1, ; initialize XCT-ID expected
810 000725' 350 00 0 00 000001 TF44: AOS 1 ; point to next entry
811 000726' 303 01 0 00 000010 CAILE 1,8 ; done yet?
812 000727' 254 00 0 00 000735' JRST TG44 ; yes - continue
813 000730' 312 01 0 01 001017' CAME 1,T44ORD-1(1) ; same as expected?
814 000731' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
815 000732' 332 00 0 01 001030' SKIPE T44LIS-1(1) ; got one from this
816 000733' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
817 000734' 254 00 0 00 000725' JRST TF44 ; loop till done
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 20
DFCIA5 MAC 27-Oct-84 18:58 Microcode Functional Tests SEQ 0861
818
819 ; Handle error printout
820
821 000735' 027 00 0 00 000751' TG44: SCOPER MC44 ; print error message
822 000736' 255 00 0 00 000000 JFCL ; loop on error
823 000737' 254 00 0 00 000740' JRST TX44 ; altmode exit
824
825 ; End of test
826
827 000740' 260 17 0 00 000561* TX44: GO TSTEND ; handle end of test processing
828 000741' 260 17 0 00 000562* GO SETDSA ; disable the port
829 000742' 260 17 0 00 000563* GO ISTOP ; stop the port
830 000743' 263 17 0 00 000000 RTN ; exit test
831
832 ; Error messages
833
834 000744' 260000 004270' MA44: TXALL!CALL!LODERR
835 000745' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
836
837 000746' 160000 004343' MB44: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
838 000747' 260000 004242' TXALL!CALL!PDUMP
839 000750' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
840
841 000751' 260000 000754' MC44: TXALL!CALL!MC44PN
842 000752' 260000 004242' TXALL!CALL!PDUMP
843 000753' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
844
845 000754' 037 00 0 00 004562' MC44PN: TMSGC <Command queue entries processed incorrectly or out of order>
846
847 ; Print correct/actual order
848
849 000755' 037 00 0 00 004577' TMSGC <Correct order (XCT-ID): 1 2 3 4 5 6 7 10>
850 000756' 037 00 0 00 004610' TMSGC <Actual order (XCT-ID): >
851 000757' 201 01 0 00 001017' MOVEI 1,T44ORD-1 ; get address of order list
852 000760' 350 00 0 00 000001 MC44P0: AOS 1 ; point to next entry
853 000761' 200 00 0 01 000000 MOVE (1) ; get entry
854 000762' 316 00 0 00 004616' CAMN [-1] ; end of list?
855 000763' 254 00 0 00 000767' JRST MC44P1 ; yes - continue
856 000764' 037 16 0 00 000003 PNTOCS ; no - print it out
857 000765' 037 00 0 00 000040 PSP
858 000766' 254 00 0 00 000760' JRST MC44P0 ; continue till done
859
860 ; Now look for any missing entries
861
862 000767' 201 01 0 00 001030' MC44P1: MOVEI 1,T44LIS-1 ; get address of packet list
863 000770' 350 00 0 00 000001 AOS 1 ; point to next packet entry
864 000771' 301 01 0 00 001041' CAIL 1,T44LIS+8 ; done yet?
865 000772' 263 17 0 00 000000 RTN ; yes - exit
866 000773' 336 00 0 00 001031' SKIPN T44LIS ; missing this entry
867 000774' 254 00 0 00 000770' JRST MC44P1+1 ; no - loop till done
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 21
DFCIA5 MAC 27-Oct-84 18:58 Microcode Functional Tests SEQ 0862
868
869 ; Print missing entries
870
871 000775' 037 00 0 00 004617' TMSGC <Packets not received:>
872 000776' 400 02 0 00 000000 SETZ 2, ; clear entry count
873 000777' 201 01 0 00 001030' MC44P2: MOVEI 1,T44LIS-1 ; get address of packet list
874 001000' 350 00 0 00 000001 AOS 1 ; point to next packet entry
875 001001' 350 00 0 00 000002 AOS 2 ; point to next packet entry
876 001002' 303 02 0 00 000010 CAILE 2,8 ; done yet?
877 001003' 263 17 0 00 000000 RTN ; yes - continue
878 001004' 336 00 0 00 001031' SKIPN T44LIS ; missing this entry
879 001005' 254 00 0 00 001000' JRST MC44P2+1 ; no - loop till done
880 001006' 037 00 0 00 004624' TMSGC < Xct-Id >
881 001007' 200 00 0 00 000002 MOVE 2 ; get entry number
882 001010' 037 16 0 00 000003 PNTOCS ; print it
883 001011' 037 00 0 00 004627' TMSG < on CmdQ>
884 001012' 201 00 0 00 000010 MOVEI 8 ; calculate queue number
885 001013' 274 00 0 00 000002 SUB 2 ; this entry was
886 001014' 242 00 0 00 777777 LSH -1 ; placed on
887 001015' 037 16 0 00 000003 PNTOCS ; print it
888 001016' 254 00 0 00 001000' JRST MC44P2+1 ; loop till done
889
890 ; Test data
891
892 001017' 000000 000000 T44PNT: 0 ; pointer to next location in T44ORD
893 001020' T44ORD: BLOCK 9 ; order of packets received
894 001031' T44LIS: BLOCK 8 ; packets received
895
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 22
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0863
896 SUBTTL Loopback Tests
897
898 ;#********************************************************************
899 ;* TEST 45 - CI Loopback Test (AutoPath/Compat)
900 ;
901 ; Description: This test does data loopback at the STAR coupler
902 ; with various data patterns and packet sizes.
903 ;
904 ; Procedure: KL> Load microcode
905 ; KL> Port Clear
906 ; KL> Start port
907 ;
908 ; KL> Build a loopback packet, insert on command
909 ; queue, and wait for a response
910 ; KL> Verify proper response
911 ; KL> Verify data portion of packet received properly
912 ; If failed - print error message and exit test
913 ;
914 ; Do for:
915 ; data patterns: 116-126
916 ; text length (words): 10-200
917 ;
918 ; FRU: Link Module
919 ;#********************************************************************
920
921 003410 T45PAK==^D9*^D25*^D8 ; number of packets to send
922
923 ; Initialization
924
925 001041' 201 00 0 00 000000' TST45: MOVEI Z5 ; get address of module start
926 001042' 260 17 0 00 000612* GO TRACE ; handle trace output
927 001043' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
928 001044' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
929 001045' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
930 001046' 260 17 0 00 000723* GO IPACLR ; do a 'port clear'
931 001047' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
932 001050' 260 17 0 00 000620* GO TFLOAD ; load operational microcode
933 GO [MOVEM TERMES ; error - save error message
934 SETO ERFLG,
935 001051' 260 17 0 00 004310' RTN]
936 001052' 260 17 0 00 000622* GO RDNODE ; read node address
937 001053' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
938 001054' 202 01 0 00 000677* MOVEM 1,CPORT ; save our port number
939 001055' 027 00 0 00 001265' SCOPER MA45 ; print error message
940 001056' 255 00 0 00 000000 JFCL ; loop on error
941 001057' 254 00 0 00 001261' JRST TX45 ; altmode exit
942 001060' 326 15 0 00 001261' JUMPN ERFLG,TX45 ; error yet? yes - abort test
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 23
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0864
943
944 ; Start port
945
946 001061' 260 17 0 00 000631* GO TIDLE ; start port
947 001062' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
948 001063' 027 00 0 00 001267' SCOPER MB45 ; print error message
949 001064' 255 00 0 00 000000 JFCL ; loop on error
950 001065' 254 00 0 00 001261' JRST TX45 ; altmode exit
951 001066' 326 15 0 00 001261' JUMPN ERFLG,TX45 ; error yet? yes - abort test
952
953 ; Enable the port
954
955 001067' 260 17 0 00 000662* GO SETENA ; ensure the port is enabled
956 001070' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
957 001071' 027 00 0 00 001272' SCOPER MC45 ; print error message
958 001072' 255 00 0 00 000000 JFCL ; loop on error
959 001073' 254 00 0 00 001261' JRST TX45 ; altmode exit
960 001074' 326 15 0 00 001261' JUMPN ERFLG,TX45 ; error yet? yes - abort test
961
962 ; Initialize packet data
963
964 001075' 402 00 0 00 000307* SETZM TFMFLG ; set to COMPAT mode
965 001076' 402 00 0 00 000310* SETZM TRSFLG ; set no response requested
966 001077' 402 00 0 00 000312* SETZM TPTFLG ; initialize to auto path
967 001100' 201 11 0 00 000015 MOVEI OP,SNDLB ; set op code (LOOPBACK)
968 001101' 201 00 0 00 000115 MOVEI 115 ; set initial data pattern
969 001102' 202 00 0 00 000314* MOVEM TPAT ; ...
970 001103' 402 00 0 00 000554* SETZM TSTSUB ; initialize subtest number
971 001104' 260 17 0 00 001356' GO CRCINI ; initialize CRC table
972
973 ; Initialize statistics
974
975 001105' 402 00 0 00 004301' SETZM NPAKS ; clear sent count
976 001106' 402 00 0 00 004302' SETZM NPAKSE ; clear sent status error count
977 001107' 402 00 0 00 004303' SETZM NPAKR ; clear recv count
978 001110' 402 00 0 00 004304' SETZM NPAKRE ; clear recv status error count
979 001111' 402 00 0 00 004305' SETZM NPAKRC ; clear recv CRC error count
980 001112' 402 00 0 00 004306' SETZM NPAKRD ; clear recv dt.cmp error count (pkts)
981 001113' 402 00 0 00 004307' SETZM NPAKRW ; clear recv dt.cmp error count (words)
982 MOVEI [MOVE TXCTID ; set up packet data for text
983 MOVEM PACKET+5 ; length and data pattern
984 RPUT (1,2)
985 MOVE 1,TLEN
986 IMULI 1,^D9
987 ADD 1,TPAT
988 SUBI 1,116
989 MOVEM 1,CRCOFF
990 MOVE 2,CRCTAB(1)
991 MOVEM 2,CRCSAV
992 RGET (2,1)
993 001114' 201 00 0 00 004631' RTN]
994 001115' 202 00 0 00 000000* MOVEM TXADDL
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 24
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0865
995 001116' 402 00 0 00 005412' SETZM RQAFLG ; clear response queue available flag
996 001117' 402 00 0 00 005404' SETZM DUMPP ; clear 'dump possible' flag
997
998 ; Increment pattern
999
1000 001120' 350 01 0 00 001102* TA45: AOS 1,TPAT ; increment pattern
1001 001121' 303 01 0 00 000126 CAILE 1,126 ; done yet?
1002 001122' 254 00 0 00 001212' JRST TG45 ; yes - check test completion
1003 001123' 476 00 0 00 005414' SETOM TLEN# ; initialize length pointer
1004
1005 ; Increment length
1006
1007 001124' 350 01 0 00 005414' TB45: AOS 1,TLEN ; increment length
1008 001125' 301 01 0 00 000031 CAIL 1,^D25 ; done yet?
1009 001126' 254 00 0 00 001120' JRST TA45 ; yes - check next pattern
1010 001127' 402 00 0 00 000315* SETZM TBYTE ; no - clear byte count
1011 001130' 200 00 0 01 001325' MOVE T45LEN(1) ; get length
1012 001131' 202 00 0 00 000317* MOVEM TWORD ; save it
1013 001132' 137 00 0 00 004647' DPB [POINT 14,TXCTID,31] ; put in XCT-ID
1014 001133' 200 00 0 00 001120* MOVE TPAT ; get data pattern
1015 001134' 506 00 0 00 000320* HRLM TXCTID ; set up XCT-ID
1016 001135' 201 12 0 00 000010 MOVEI 12,^D8 ; initialize packet count
1017 001136' 332 00 0 00 000000* SKIPE SDEBUG ; debug mode?
1018 GO [TMSGC <** Pat >
1019 MOVE TPAT
1020 PNTOCS
1021 TMSG < Len >
1022 MOVE TWORD
1023 PNTDEC
1024 TMSGD < **>
1025 001137' 260 17 0 00 004656' RTN]
1026
1027 ; Decrement packet count (7-0)
1028
1029 001140' 361 12 0 00 001124' TC45: SOJL 12,TB45 ; done yet? yes - check next length
1030 001141' 400 06 0 00 000000 SETZ 6, ; clear hung count
1031
1032 ; Send a packet
1033
1034 001142' 037 07 0 00 000003 TD45: TTALTM ; altmode typed?
1035 001143' 334 00 0 00 000000 SKIPA ; no - keep checking CSR, etc.
1036 001144' 476 00 0 00 000345* SETOM ALTF ; yes - set flag
1037 001145' 332 00 0 00 001144* SKIPE ALTF ; altmode flagged?
1038 001146' 254 00 0 00 001261' JRST TX45 ; yes - exit
1039 001147' 336 00 0 00 000350* SKIPN LCHAR ; last character in here already?
1040 001150' 202 00 0 00 001147* MOVEM LCHAR ; no - save 'last char typed'
1041 001151' 260 17 0 00 000351* GO PSTAMP ; check for S typed
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 25
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0866
1042 001152' 400 07 0 00 000000 SETZ 7, ; clear 'packet put on queue' flag
1043 001153' 260 17 0 00 003752' GO MPACK ; build packet into 'PACKET'
1044 001154' 261 17 0 00 000013 PUT Q ; save queue number
1045 001155' 201 13 0 00 000006 MOVEI Q,6 ; get DGM free queue number
1046 001156' 260 17 0 00 000355* GO CHKINT ; get list of queue entries
1047 001157' 255 00 0 00 000000 JFCL ; ignore error
1048 001160' 476 00 0 00 000000# SETOM PCB+26 ; reset the interlock
1049 001161' 262 17 0 00 000013 GET Q ; restore queue number
1050 001162' 200 00 0 00 000372* MOVE NUMENT ; get entry count
1051 001163' 305 00 0 00 000002 CAIGE 2 ; 2 or more?
1052 001164' 254 00 0 00 001176' JRST TE45 ; no - continue
1053 001165' 400 13 0 00 000000 SETZ Q, ; set to cmd queue #3
1054 001166' 260 17 0 00 000651* GO INSQUE ; insert into queue
1055 001167' 334 00 0 00 000000 SKIPA ; failed - continue
1056 001170' 474 07 0 00 000000 SETO 7, ; set 'packet put on queue' flag
1057 001171' 332 00 0 00 000007 SKIPE 7 ; put on cmd queue?
1058 001172' 350 00 0 00 004301' AOS NPAKS ; yes - increment packet sent count
1059 001173' 350 00 0 00 001103* AOS TSTSUB ; increment subtest number
1060 001174' 337 00 0 00 001162* SKIPG NUMENT ; was the queue empty?
1061 GO [GO RDCSR ; yes - set 'CMDQAV'
1062 MOVEI 1,PENABL!MPRUN
1063 TRZ 1,RESQAV
1064 TRO 1,CMDQAV
1065 GO LDCSR
1066 001175' 260 17 0 00 004313' RTN]
1067
1068 ; Check for a response
1069
1070 001176' 260 17 0 00 004167' TE45: GO CHKRQV ; check response queue available
1071 001177' 260 17 0 00 000674* GO CHKRSP ; check for RspQ entry
1072 JRST [SETZM RQAFLG ; no entry found - continue
1073 MOVE 1,PCB+21 ; get response queue FLINK
1074 GO CONVIR ; convert to virtual
1075 CAIE 1,PCB+21 ; queue really empty?
1076 SETOM RQAFLG ; no - set rsp queue avail flag
1077 001200' 254 00 0 00 004666' JRST TF45]
1078 001201' 400 06 0 00 000000 SETZ 6, ; clear hung count
1079 001202' 260 17 0 00 004141' GO MCHECK ; determine results
1080 001203' 260 17 0 00 004004' GO MCOMP ; compare packet data
1081 001204' 254 00 0 00 001176' JRST TE45 ; keep looking for responses
1082
1083 ; No more responses
1084
1085 001205' 350 00 0 00 000006 TF45: AOS 6 ; increment hung count
1086 001206' 303 06 0 00 007640 CAILE 6,^D4000 ; check 4000 times and no response?
1087 JRST [SETOM DUMPP ; yes - set 'dump possible' flag
1088 001207' 254 00 0 00 004674' JRST TG45] ; and exit
1089 001210' 322 07 0 00 001142' JUMPE 7,TD45 ; send current packet? yes - go do so
1090 001211' 254 00 0 00 001140' JRST TC45 ; no - already did - go do next packet
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 26
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0867
1091
1092 ; Check for any stragglers
1093
1094 001212' 332 00 0 00 001136* TG45: SKIPE SDEBUG ; debug mode?
1095 001213' 037 00 0 00 004676' TMSGCD <** Check for stragglers **>
1096 001214' 400 03 0 00 000000 SETZ 3, ; set up for RUNTME
1097 001215' 260 17 0 00 000717* GO RUNTME ; get current run time
1098 001216' 200 01 0 00 000720* MOVE 1,DEBTIM ; get time in milliseconds
1099 001217' 271 01 0 00 000310 ADDI 1,^D200 ; wait an addl 200 msecs
1100 001220' 202 01 0 00 005405' MOVEM 1,ENDTIM# ; save maximum time
1101 001221' 260 17 0 00 004167' TH45: GO CHKRQV ; check response queue available
1102 001222' 260 17 0 00 001177* GO CHKRSP ; check for RspQ entry
1103 JRST [SETZM RQAFLG ; no entry found - continue
1104 MOVE 1,PCB+21 ; get response queue FLINK
1105 GO CONVIR ; convert to virtual
1106 CAIE 1,PCB+21 ; queue really empty?
1107 SETOM RQAFLG ; no - set rsp queue avail flag
1108 001223' 254 00 0 00 004705' JRST TI45]
1109 001224' 260 17 0 00 004141' GO MCHECK ; determine results
1110 001225' 260 17 0 00 004004' GO MCOMP ; compare packet data
1111 001226' 254 00 0 00 001221' JRST TH45 ; keep looking for responses
1112
1113 ; Check timeout
1114
1115 001227' 400 03 0 00 000000 TI45: SETZ 3, ; set up for RUNTME
1116 001230' 260 17 0 00 001215* GO RUNTME ; get current run time
1117 001231' 200 01 0 00 001216* MOVE 1,DEBTIM ; get time in milliseconds
1118 001232' 317 01 0 00 005405' CAMG 1,ENDTIM ; time expired yet?
1119 001233' 254 00 0 00 001221' JRST TH45 ; no - keep looping
1120
1121 ; Done with test - now check results
1122
1123 001234' 332 00 0 00 001212* TJ45: SKIPE SDEBUG ; debug mode?
1124 001235' 037 00 0 00 004713' TMSGCD <** Done - check results **>
1125 001236' 200 00 0 00 004301' MOVE NPAKS ; get number of packets sent
1126 001237' 302 00 0 00 003410 CAIE T45PAK ; correct number?
1127 001240' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
1128 001241' 200 00 0 00 004301' MOVE NPAKS ; get packets sent
1129 001242' 231 00 0 00 000012 IDIVI ^D10 ; get 10%
1130 001243' 315 00 0 00 004302' CAMGE NPAKSE ; more status errors than 10%?
1131 001244' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1132 001245' 200 00 0 00 004303' MOVE NPAKR ; get receive count
1133 001246' 305 00 0 00 003124 CAIGE T45PAK*^D9/^D10 ; more than 90% received?
1134 001247' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
1135 001250' 332 00 0 00 004304' SKIPE NPAKRE ; any receive status errors?
1136 001251' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1137 001252' 332 00 0 00 004306' SKIPE NPAKRD ; any receive dt.cmp errors?
1138 001253' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1139 001254' 332 00 0 00 004305' SKIPE NPAKRC ; any CRC errors?
1140 001255' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1141 001256' 027 00 0 00 001275' SCOPER MD45 ; print error message
1142 001257' 255 00 0 00 000000 JFCL ; loop on error
1143 001260' 254 00 0 00 001261' JRST TX45 ; altmode exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 27
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0868
1144
1145 ; End of test
1146
1147 001261' 260 17 0 00 000740* TX45: GO TSTEND ; handle end of test processing
1148 001262' 260 17 0 00 000741* GO SETDSA ; disable the port
1149 001263' 260 17 0 00 000742* GO ISTOP ; stop the port
1150 001264' 263 17 0 00 000000 RTN ; return
1151
1152 ; Error messages
1153
1154 001265' 260000 004270' MA45: TXALL!CALL!LODERR
1155 001266' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1156
1157 001267' 160000 004343' MB45: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
1158 001270' 260000 004242' TXALL!CALL!PDUMP
1159 001271' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1160
1161 001272' 160000 004351' MC45: TXALL!MSG![ASCIZ /Could not enable the port/]
1162 001273' 260000 004242' TXALL!CALL!PDUMP
1163 001274' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1164
1165 001275' 160000 004357' MD45: TXALL!MSG![ASCIZ /Errors noted with external loopback:/]
1166 001276' 260000 001302' TXALL!CALL!MD45PN
1167 001277' 260000 004242' TXALL!CALL!PDUMP
1168 001300' 160000 004367' TXALL!MSG![ASCIZ /FRU: Link Module (Check CI cables & Star/]
1169 001301' 170000 004400' LAST!TXALL!MSG![ASCIZ / Coupler connections)/]
1170
1171 001302' 037 00 0 00 004406' MD45PN: TMSGC < What Expected Actual>
1172 001303' 037 00 0 00 004416' TMSGC <----------- -------- ------>
1173 001304' 037 00 0 00 004426' TMSGC <Packets Sent >
1174 001305' 004 11 0 00 004722' PNTDCP 9,[T45PAK]
1175 001306' 004 11 0 00 004301' PNTDCP 9,NPAKS
1176 001307' 037 00 0 00 004443' TMSGC < Status Errors 0.>
1177 001310' 004 11 0 00 004302' PNTDCP 9,NPAKSE
1178 001311' 037 00 0 00 004437' TMSGC <Packets Rcvd >
1179 001312' 004 11 0 00 004722' PNTDCP 9,[T45PAK]
1180 001313' 004 11 0 00 004303' PNTDCP 9,NPAKR
1181 001314' 037 00 0 00 004443' TMSGC < Status Errors 0.>
1182 001315' 004 11 0 00 004304' PNTDCP 9,NPAKRE
1183 001316' 037 00 0 00 004451' TMSGC < CRC Errors 0.>
1184 001317' 004 11 0 00 004305' PNTDCP 9,NPAKRC
1185 001320' 037 00 0 00 004457' TMSGC < DtCmp Errors (PKTS) 0.>
1186 001321' 004 11 0 00 004306' PNTDCP 9,NPAKRD
1187 001322' 037 00 0 00 004465' TMSGC < DtCmp Errors (WORDS) 0.>
1188 001323' 004 11 0 00 004307' PNTDCP 9,NPAKRW
1189 001324' 263 17 0 00 000000 RTN
1190
1191 ; Length table
1192
1193 001325' 000000 000012 T45LEN: EXP ^D10,^D20,^D30,^D40,^D50,^D60,^D70,^D80,^D90,^D100
1194 001326' 000000 000024
1195 001327' 000000 000036
1196 001330' 000000 000050
1197 001331' 000000 000062
1198 001332' 000000 000074
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 27-1
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0869
1199 001333' 000000 000106
1200 001334' 000000 000120
1201 001335' 000000 000132
1202 001336' 000000 000144
1203 001337' 000000 000156 EXP ^D110,^D120,^D130,^D140,^D150,^D160,^D170,^D180,^D190,^D200
1204 001340' 000000 000170
1205 001341' 000000 000202
1206 001342' 000000 000214
1207 001343' 000000 000226
1208 001344' 000000 000240
1209 001345' 000000 000252
1210 001346' 000000 000264
1211 001347' 000000 000276
1212 001350' 000000 000310
1213 001351' 000000 000031 EXP ^D25,^D75,^D125,^D175,^D99
1214 001352' 000000 000113
1215 001353' 000000 000175
1216 001354' 000000 000257
1217 001355' 000000 000143
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 28
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0870
1218
1219 ;#********************************************************************
1220 ;* CRCINI - Special routine to clear a CRC table used by TST45-51
1221 ;#********************************************************************
1222
1223 001356' 261 17 0 00 000001 CRCINI: PUT 1 ; save AC1
1224 001357' 402 00 0 00 001366' SETZM CRCTAB ; clear first word
1225 001360' 200 01 0 00 004723' MOVE 1,[CRCTAB,,CRCTAB+1] ; build BLT pointer
1226 001361' 251 01 0 00 001726' BLT 1,CRCTAB+T45PAK/^D8-1 ; clear the rest of it
1227 001362' 262 17 0 00 000001 GET 1 ; restore AC1
1228 001363' 263 17 0 00 000000 RTN ; return
1229
1230 001364' 000000 000000 CRCSAV: 0
1231 001365' 000000 000000 CRCOFF: 0
1232 001366' CRCTAB: BLOCK T45PAK/^D8
1233 001727' 000000 000000 0
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 29
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0871
1234
1235 ;#********************************************************************
1236 ;* TEST 46 - CI Loopback Test (Auto Path/Hiden)
1237 ;
1238 ; Description: This test does data loopback at the STAR coupler
1239 ; with various data patterns and packet sizes.
1240 ;
1241 ; Procedure: KL> Load microcode
1242 ; KL> Port Clear
1243 ; KL> Start port
1244 ;
1245 ; KL> Build a loopback packet, insert on command
1246 ; queue, and wait for a response
1247 ; KL> Verify proper response
1248 ; KL> Verify data portion of packet received properly
1249 ; If failed - print error message and exit test
1250 ;
1251 ; Do for:
1252 ; data patterns: 116-126
1253 ; text length (words): 10-200
1254 ;
1255 ; FRU: Link Module
1256 ;#********************************************************************
1257
1258 003410 T46PAK==^D9*^D25*^D8 ; number of packets to send
1259
1260 ; Initialization
1261
1262 001730' 201 00 0 00 000000' TST46: MOVEI Z5 ; get address of module start
1263 001731' 260 17 0 00 001042* GO TRACE ; handle trace output
1264 001732' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
1265 001733' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
1266 001734' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
1267 001735' 260 17 0 00 001046* GO IPACLR ; do a 'port clear'
1268 001736' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
1269 001737' 260 17 0 00 001050* GO TFLOAD ; load operational microcode
1270 GO [MOVEM TERMES ; error - save error message
1271 SETO ERFLG,
1272 001740' 260 17 0 00 004310' RTN]
1273 001741' 260 17 0 00 001052* GO RDNODE ; read node address
1274 001742' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
1275 001743' 202 01 0 00 001054* MOVEM 1,CPORT ; save our port number
1276 001744' 027 00 0 00 002155' SCOPER MA46 ; print error message
1277 001745' 255 00 0 00 000000 JFCL ; loop on error
1278 001746' 254 00 0 00 002151' JRST TX46 ; altmode exit
1279 001747' 326 15 0 00 002151' JUMPN ERFLG,TX46 ; error yet? yes - abort test
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 30
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0872
1280
1281 ; Start port
1282
1283 001750' 260 17 0 00 001061* GO TIDLE ; start port
1284 001751' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
1285 001752' 027 00 0 00 002157' SCOPER MB46 ; print error message
1286 001753' 255 00 0 00 000000 JFCL ; loop on error
1287 001754' 254 00 0 00 002151' JRST TX46 ; altmode exit
1288 001755' 326 15 0 00 002151' JUMPN ERFLG,TX46 ; error yet? yes - abort test
1289
1290 ; Enable the port
1291
1292 001756' 260 17 0 00 001067* GO SETENA ; ensure the port is enabled
1293 001757' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
1294 001760' 027 00 0 00 002162' SCOPER MC46 ; print error message
1295 001761' 255 00 0 00 000000 JFCL ; loop on error
1296 001762' 254 00 0 00 002151' JRST TX46 ; altmode exit
1297 001763' 326 15 0 00 002151' JUMPN ERFLG,TX46 ; error yet? yes - abort test
1298
1299 ; Initialize packet data
1300
1301 001764' 201 00 0 00 000001 MOVEI 1 ; set to HIDEN mode
1302 001765' 202 00 0 00 001075* MOVEM TFMFLG ; ...
1303 001766' 402 00 0 00 001076* SETZM TRSFLG ; set no response requested
1304 001767' 402 00 0 00 001077* SETZM TPTFLG ; initialize to auto path
1305 001770' 201 11 0 00 000015 MOVEI OP,SNDLB ; set op code (LOOPBACK)
1306 001771' 201 00 0 00 000115 MOVEI 115 ; set initial data pattern
1307 001772' 202 00 0 00 001133* MOVEM TPAT ; ...
1308 001773' 402 00 0 00 001173* SETZM TSTSUB ; initialize subtest number
1309 001774' 260 17 0 00 001356' GO CRCINI ; initialize CRC table
1310
1311 ; Initialize statistics
1312
1313 001775' 402 00 0 00 004301' SETZM NPAKS ; clear sent count
1314 001776' 402 00 0 00 004302' SETZM NPAKSE ; clear sent status error count
1315 001777' 402 00 0 00 004303' SETZM NPAKR ; clear recv count
1316 002000' 402 00 0 00 004304' SETZM NPAKRE ; clear recv status error count
1317 002001' 402 00 0 00 004305' SETZM NPAKRC ; clear recv CRC error count
1318 002002' 402 00 0 00 004306' SETZM NPAKRD ; clear recv dt.cmp error count (pkts)
1319 002003' 402 00 0 00 004307' SETZM NPAKRW ; clear recv dt.cmp error count (words)
1320 MOVEI [MOVE TXCTID ; set up packet data for text
1321 MOVEM PACKET+5 ; length and data pattern
1322 RPUT (1,2)
1323 MOVE 1,TLEN
1324 IMULI 1,^D9
1325 ADD 1,TPAT
1326 SUBI 1,116
1327 MOVEM 1,CRCOFF
1328 MOVE 2,CRCTAB(1)
1329 MOVEM 2,CRCSAV
1330 RGET (2,1)
1331 002004' 201 00 0 00 004724' RTN]
1332 002005' 202 00 0 00 001115* MOVEM TXADDL
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 31
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0873
1333 002006' 402 00 0 00 005412' SETZM RQAFLG ; clear response queue available flag
1334 002007' 402 00 0 00 005404' SETZM DUMPP ; clear 'dump possible' flag
1335
1336 ; Increment pattern
1337
1338 002010' 350 01 0 00 001772* TA46: AOS 1,TPAT ; increment pattern
1339 002011' 303 01 0 00 000126 CAILE 1,126 ; done yet?
1340 002012' 254 00 0 00 002102' JRST TG46 ; yes - check test completion
1341 002013' 476 00 0 00 005414' SETOM TLEN# ; initialize length pointer
1342
1343 ; Increment length
1344
1345 002014' 350 01 0 00 005414' TB46: AOS 1,TLEN ; increment length
1346 002015' 301 01 0 00 000031 CAIL 1,^D25 ; done yet?
1347 002016' 254 00 0 00 002010' JRST TA46 ; yes - check next pattern
1348 002017' 402 00 0 00 001127* SETZM TBYTE ; no - clear byte count
1349 002020' 200 00 0 01 002215' MOVE T46LEN(1) ; get length
1350 002021' 202 00 0 00 001131* MOVEM TWORD ; save it
1351 002022' 137 00 0 00 004647' DPB [POINT 14,TXCTID,31] ; put in XCT-ID
1352 002023' 200 00 0 00 002010* MOVE TPAT ; get data pattern
1353 002024' 506 00 0 00 001134* HRLM TXCTID ; set up XCT-ID
1354 002025' 201 12 0 00 000010 MOVEI 12,^D8 ; initialize packet count
1355 002026' 332 00 0 00 001234* SKIPE SDEBUG ; debug mode?
1356 GO [TMSGC <** Pat >
1357 MOVE TPAT
1358 PNTOCS
1359 TMSG < Len >
1360 MOVE TWORD
1361 PNTDEC
1362 TMSGD < **>
1363 002027' 260 17 0 00 004656' RTN]
1364
1365 ; Decrement packet count (7-0)
1366
1367 002030' 361 12 0 00 002014' TC46: SOJL 12,TB46 ; done yet? yes - check next length
1368 002031' 400 06 0 00 000000 SETZ 6, ; clear hung count
1369
1370 ; Send a packet
1371
1372 002032' 037 07 0 00 000003 TD46: TTALTM ; altmode typed?
1373 002033' 334 00 0 00 000000 SKIPA ; no - keep checking CSR, etc.
1374 002034' 476 00 0 00 001145* SETOM ALTF ; yes - set flag
1375 002035' 332 00 0 00 002034* SKIPE ALTF ; altmode flagged?
1376 002036' 254 00 0 00 002151' JRST TX46 ; yes - exit
1377 002037' 336 00 0 00 001150* SKIPN LCHAR ; last character in here already?
1378 002040' 202 00 0 00 002037* MOVEM LCHAR ; no - save 'last char typed'
1379 002041' 260 17 0 00 001151* GO PSTAMP ; check for S typed
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 32
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0874
1380 002042' 400 07 0 00 000000 SETZ 7, ; clear 'packet put on queue' flag
1381 002043' 260 17 0 00 003752' GO MPACK ; build packet into 'PACKET'
1382 002044' 261 17 0 00 000013 PUT Q ; save queue number
1383 002045' 201 13 0 00 000006 MOVEI Q,6 ; get DGM free queue number
1384 002046' 260 17 0 00 001156* GO CHKINT ; get list of queue entries
1385 002047' 255 00 0 00 000000 JFCL ; ignore error
1386 002050' 476 00 0 00 000000# SETOM PCB+26 ; reset the interlock
1387 002051' 262 17 0 00 000013 GET Q ; restore queue number
1388 002052' 200 00 0 00 001174* MOVE NUMENT ; get entry count
1389 002053' 305 00 0 00 000002 CAIGE 2 ; 2 or more?
1390 002054' 254 00 0 00 002066' JRST TE46 ; no - continue
1391 002055' 400 13 0 00 000000 SETZ Q, ; set to cmd queue #3
1392 002056' 260 17 0 00 001166* GO INSQUE ; insert into queue
1393 002057' 334 00 0 00 000000 SKIPA ; failed - continue
1394 002060' 474 07 0 00 000000 SETO 7, ; set 'packet put on queue' flag
1395 002061' 332 00 0 00 000007 SKIPE 7 ; put on cmd queue?
1396 002062' 350 00 0 00 004301' AOS NPAKS ; yes - increment packet sent count
1397 002063' 350 00 0 00 001773* AOS TSTSUB ; increment subtest number
1398 002064' 337 00 0 00 002052* SKIPG NUMENT ; was the queue empty?
1399 GO [GO RDCSR ; yes - set 'CMDQAV'
1400 MOVEI 1,PENABL!MPRUN
1401 TRZ 1,RESQAV
1402 TRO 1,CMDQAV
1403 GO LDCSR
1404 002065' 260 17 0 00 004313' RTN]
1405
1406 ; Check for a response
1407
1408 002066' 260 17 0 00 004167' TE46: GO CHKRQV ; check response queue available
1409 002067' 260 17 0 00 001222* GO CHKRSP ; check for RspQ entry
1410 JRST [SETZM RQAFLG ; no entry found - continue
1411 MOVE 1,PCB+21 ; get response queue FLINK
1412 GO CONVIR ; convert to virtual
1413 CAIE 1,PCB+21 ; queue really empty?
1414 SETOM RQAFLG ; no - set rsp queue avail flag
1415 002070' 254 00 0 00 004742' JRST TF46]
1416 002071' 400 06 0 00 000000 SETZ 6, ; clear hung count
1417 002072' 260 17 0 00 004141' GO MCHECK ; determine results
1418 002073' 260 17 0 00 004052' GO HCOMP ; compare packet data
1419 002074' 254 00 0 00 002066' JRST TE46 ; keep looking for responses
1420
1421 ; No more responses
1422
1423 002075' 350 00 0 00 000006 TF46: AOS 6 ; increment hung count
1424 002076' 303 06 0 00 007640 CAILE 6,^D4000 ; check 4000 times and no response?
1425 JRST [SETOM DUMPP ; yes - set 'dump possible' flag
1426 002077' 254 00 0 00 004750' JRST TG46] ; and exit
1427 002100' 322 07 0 00 002032' JUMPE 7,TD46 ; send current packet? yes - go do so
1428 002101' 254 00 0 00 002030' JRST TC46 ; no - already did - go do next packet
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 33
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0875
1429
1430 ; Check for any stragglers
1431
1432 002102' 332 00 0 00 002026* TG46: SKIPE SDEBUG ; debug mode?
1433 002103' 037 00 0 00 004676' TMSGCD <** Check for stragglers **>
1434 002104' 400 03 0 00 000000 SETZ 3, ; set up for RUNTME
1435 002105' 260 17 0 00 001230* GO RUNTME ; get current run time
1436 002106' 200 01 0 00 001231* MOVE 1,DEBTIM ; get time in milliseconds
1437 002107' 271 01 0 00 000310 ADDI 1,^D200 ; wait an addl 200 msecs
1438 002110' 202 01 0 00 005405' MOVEM 1,ENDTIM# ; save maximum time
1439 002111' 260 17 0 00 004167' TH46: GO CHKRQV ; check response queue available
1440 002112' 260 17 0 00 002067* GO CHKRSP ; check for RspQ entry
1441 JRST [SETZM RQAFLG ; no entry found - continue
1442 MOVE 1,PCB+21 ; get response queue FLINK
1443 GO CONVIR ; convert to virtual
1444 CAIE 1,PCB+21 ; queue really empty?
1445 SETOM RQAFLG ; no - set rsp queue avail flag
1446 002113' 254 00 0 00 004752' JRST TI46]
1447 002114' 260 17 0 00 004141' GO MCHECK ; determine results
1448 002115' 260 17 0 00 004052' GO HCOMP ; compare packet data
1449 002116' 254 00 0 00 002111' JRST TH46 ; keep looking for responses
1450
1451 ; Check timeout
1452
1453 002117' 400 03 0 00 000000 TI46: SETZ 3, ; set up for RUNTME
1454 002120' 260 17 0 00 002105* GO RUNTME ; get current run time
1455 002121' 200 01 0 00 002106* MOVE 1,DEBTIM ; get time in milliseconds
1456 002122' 317 01 0 00 005405' CAMG 1,ENDTIM ; time expired yet?
1457 002123' 254 00 0 00 002111' JRST TH46 ; no - keep looping
1458
1459 ; Done with test - now check results
1460
1461 002124' 332 00 0 00 002102* TJ46: SKIPE SDEBUG ; debug mode?
1462 002125' 037 00 0 00 004713' TMSGCD <** Done - check results **>
1463 002126' 200 00 0 00 004301' MOVE NPAKS ; get number of packets sent
1464 002127' 302 00 0 00 003410 CAIE T46PAK ; correct number?
1465 002130' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
1466 002131' 200 00 0 00 004301' MOVE NPAKS ; get packets sent
1467 002132' 231 00 0 00 000012 IDIVI ^D10 ; get 10%
1468 002133' 315 00 0 00 004302' CAMGE NPAKSE ; more status errors than 10%?
1469 002134' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1470 002135' 200 00 0 00 004303' MOVE NPAKR ; get receive count
1471 002136' 305 00 0 00 003124 CAIGE T46PAK*^D9/^D10 ; more than 90% received?
1472 002137' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
1473 002140' 332 00 0 00 004304' SKIPE NPAKRE ; any receive status errors?
1474 002141' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1475 002142' 332 00 0 00 004306' SKIPE NPAKRD ; any receive dt.cmp errors?
1476 002143' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1477 002144' 332 00 0 00 004305' SKIPE NPAKRC ; any CRC errors?
1478 002145' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1479 002146' 027 00 0 00 002165' SCOPER MD46 ; print error message
1480 002147' 255 00 0 00 000000 JFCL ; loop on error
1481 002150' 254 00 0 00 002151' JRST TX46 ; altmode exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 34
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0876
1482
1483 ; End of test
1484
1485 002151' 260 17 0 00 001261* TX46: GO TSTEND ; handle end of test processing
1486 002152' 260 17 0 00 001262* GO SETDSA ; disable the port
1487 002153' 260 17 0 00 001263* GO ISTOP ; stop the port
1488 002154' 263 17 0 00 000000 RTN ; return
1489
1490 ; Error messages
1491
1492 002155' 260000 004270' MA46: TXALL!CALL!LODERR
1493 002156' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1494
1495 002157' 160000 004343' MB46: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
1496 002160' 260000 004242' TXALL!CALL!PDUMP
1497 002161' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1498
1499 002162' 160000 004351' MC46: TXALL!MSG![ASCIZ /Could not enable the port/]
1500 002163' 260000 004242' TXALL!CALL!PDUMP
1501 002164' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1502
1503 002165' 160000 004357' MD46: TXALL!MSG![ASCIZ /Errors noted with external loopback:/]
1504 002166' 260000 002172' TXALL!CALL!MD46PN
1505 002167' 260000 004242' TXALL!CALL!PDUMP
1506 002170' 160000 004367' TXALL!MSG![ASCIZ /FRU: Link Module (Check CI cables & Star/]
1507 002171' 170000 004400' LAST!TXALL!MSG![ASCIZ / Coupler connections)/]
1508
1509 002172' 037 00 0 00 004406' MD46PN: TMSGC < What Expected Actual>
1510 002173' 037 00 0 00 004416' TMSGC <----------- -------- ------>
1511 002174' 037 00 0 00 004426' TMSGC <Packets Sent >
1512 002175' 004 11 0 00 004722' PNTDCP 9,[T46PAK]
1513 002176' 004 11 0 00 004301' PNTDCP 9,NPAKS
1514 002177' 037 00 0 00 004443' TMSGC < Status Errors 0.>
1515 002200' 004 11 0 00 004302' PNTDCP 9,NPAKSE
1516 002201' 037 00 0 00 004437' TMSGC <Packets Rcvd >
1517 002202' 004 11 0 00 004722' PNTDCP 9,[T46PAK]
1518 002203' 004 11 0 00 004303' PNTDCP 9,NPAKR
1519 002204' 037 00 0 00 004443' TMSGC < Status Errors 0.>
1520 002205' 004 11 0 00 004304' PNTDCP 9,NPAKRE
1521 002206' 037 00 0 00 004451' TMSGC < CRC Errors 0.>
1522 002207' 004 11 0 00 004305' PNTDCP 9,NPAKRC
1523 002210' 037 00 0 00 004457' TMSGC < DtCmp Errors (PKTS) 0.>
1524 002211' 004 11 0 00 004306' PNTDCP 9,NPAKRD
1525 002212' 037 00 0 00 004465' TMSGC < DtCmp Errors (WORDS) 0.>
1526 002213' 004 11 0 00 004307' PNTDCP 9,NPAKRW
1527 002214' 263 17 0 00 000000 RTN
1528
1529 ; Length table
1530
1531 002215' 000000 000012 T46LEN: EXP ^D10,^D20,^D30,^D40,^D50,^D60,^D70,^D80,^D90,^D100
1532 002216' 000000 000024
1533 002217' 000000 000036
1534 002220' 000000 000050
1535 002221' 000000 000062
1536 002222' 000000 000074
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 34-1
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0877
1537 002223' 000000 000106
1538 002224' 000000 000120
1539 002225' 000000 000132
1540 002226' 000000 000144
1541 002227' 000000 000156 EXP ^D110,^D120,^D130,^D140,^D150,^D160,^D170,^D180,^D190,^D200
1542 002230' 000000 000170
1543 002231' 000000 000202
1544 002232' 000000 000214
1545 002233' 000000 000226
1546 002234' 000000 000240
1547 002235' 000000 000252
1548 002236' 000000 000264
1549 002237' 000000 000276
1550 002240' 000000 000310
1551 002241' 000000 000044 EXP ^D36,^D36,^D36,^D36,^D36
1552 002242' 000000 000044
1553 002243' 000000 000044
1554 002244' 000000 000044
1555 002245' 000000 000044
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 35
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0878
1556
1557 ;#********************************************************************
1558 ;* TEST 47 - CI Loopback Test (Path A/Compat)
1559 ;
1560 ; Description: This test does data loopback at the STAR coupler
1561 ; with various data patterns and packet sizes.
1562 ;
1563 ; Procedure: KL> Load microcode
1564 ; KL> Port Clear
1565 ; KL> Start port
1566 ;
1567 ; KL> Build a loopback packet, insert on command
1568 ; queue, and wait for a response
1569 ; KL> Verify proper response
1570 ; KL> Verify data portion of packet received properly
1571 ; If failed - print error message and exit test
1572 ;
1573 ; Do for:
1574 ; data patterns: 116-126
1575 ; text length (words): 10-200
1576 ;
1577 ; FRU: Link Module
1578 ;#********************************************************************
1579
1580 003410 T47PAK==^D9*^D25*^D8 ; number of packets to send
1581
1582 ; Initialization
1583
1584 002246' 201 00 0 00 000000' TST47: MOVEI Z5 ; get address of module start
1585 002247' 260 17 0 00 001731* GO TRACE ; handle trace output
1586 002250' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
1587 002251' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
1588 002252' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
1589 002253' 260 17 0 00 001735* GO IPACLR ; do a 'port clear'
1590 002254' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
1591 002255' 260 17 0 00 001737* GO TFLOAD ; load operational microcode
1592 GO [MOVEM TERMES ; error - save error message
1593 SETO ERFLG,
1594 002256' 260 17 0 00 004310' RTN]
1595 002257' 260 17 0 00 001741* GO RDNODE ; read node address
1596 002260' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
1597 002261' 202 01 0 00 001743* MOVEM 1,CPORT ; save our port number
1598 002262' 027 00 0 00 002473' SCOPER MA47 ; print error message
1599 002263' 255 00 0 00 000000 JFCL ; loop on error
1600 002264' 254 00 0 00 002467' JRST TX47 ; altmode exit
1601 002265' 326 15 0 00 002467' JUMPN ERFLG,TX47 ; error yet? yes - abort test
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 36
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0879
1602
1603 ; Start port
1604
1605 002266' 260 17 0 00 001750* GO TIDLE ; start port
1606 002267' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
1607 002270' 027 00 0 00 002475' SCOPER MB47 ; print error message
1608 002271' 255 00 0 00 000000 JFCL ; loop on error
1609 002272' 254 00 0 00 002467' JRST TX47 ; altmode exit
1610 002273' 326 15 0 00 002467' JUMPN ERFLG,TX47 ; error yet? yes - abort test
1611
1612 ; Enable the port
1613
1614 002274' 260 17 0 00 001756* GO SETENA ; ensure the port is enabled
1615 002275' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
1616 002276' 027 00 0 00 002500' SCOPER MC47 ; print error message
1617 002277' 255 00 0 00 000000 JFCL ; loop on error
1618 002300' 254 00 0 00 002467' JRST TX47 ; altmode exit
1619 002301' 326 15 0 00 002467' JUMPN ERFLG,TX47 ; error yet? yes - abort test
1620
1621 ; Initialize packet data
1622
1623 002302' 402 00 0 00 001765* SETZM TFMFLG ; set to COMPAT mode
1624 002303' 402 00 0 00 001766* SETZM TRSFLG ; set no response requested
1625 002304' 201 00 0 00 000001 MOVEI 1 ; initialize to path A
1626 002305' 202 00 0 00 001767* MOVEM TPTFLG ; ...
1627 002306' 201 11 0 00 000015 MOVEI OP,SNDLB ; set op code (LOOPBACK)
1628 002307' 201 00 0 00 000115 MOVEI 115 ; set initial data pattern
1629 002310' 202 00 0 00 002023* MOVEM TPAT ; ...
1630 002311' 402 00 0 00 002063* SETZM TSTSUB ; initialize subtest number
1631 002312' 260 17 0 00 001356' GO CRCINI ; initialize CRC table
1632
1633 ; Initialize statistics
1634
1635 002313' 402 00 0 00 004301' SETZM NPAKS ; clear sent count
1636 002314' 402 00 0 00 004302' SETZM NPAKSE ; clear sent status error count
1637 002315' 402 00 0 00 004303' SETZM NPAKR ; clear recv count
1638 002316' 402 00 0 00 004304' SETZM NPAKRE ; clear recv status error count
1639 002317' 402 00 0 00 004305' SETZM NPAKRC ; clear recv CRC error count
1640 002320' 402 00 0 00 004306' SETZM NPAKRD ; clear recv dt.cmp error count (pkts)
1641 002321' 402 00 0 00 004307' SETZM NPAKRW ; clear recv dt.cmp error count (words)
1642 MOVEI [MOVE TXCTID ; set up packet data for text
1643 MOVEM PACKET+5 ; length and data pattern
1644 RPUT (1,2)
1645 MOVE 1,TLEN
1646 IMULI 1,^D9
1647 ADD 1,TPAT
1648 SUBI 1,116
1649 MOVEM 1,CRCOFF
1650 MOVE 2,CRCTAB(1)
1651 MOVEM 2,CRCSAV
1652 RGET (2,1)
1653 002322' 201 00 0 00 004760' RTN]
1654 002323' 202 00 0 00 002005* MOVEM TXADDL
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 37
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0880
1655 002324' 402 00 0 00 005412' SETZM RQAFLG ; clear response queue available flag
1656 002325' 402 00 0 00 005404' SETZM DUMPP ; clear 'dump possible' flag
1657
1658 ; Increment pattern
1659
1660 002326' 350 01 0 00 002310* TA47: AOS 1,TPAT ; increment pattern
1661 002327' 303 01 0 00 000126 CAILE 1,126 ; done yet?
1662 002330' 254 00 0 00 002420' JRST TG47 ; yes - check test completion
1663 002331' 476 00 0 00 005414' SETOM TLEN# ; initialize length pointer
1664
1665 ; Increment length
1666
1667 002332' 350 01 0 00 005414' TB47: AOS 1,TLEN ; increment length
1668 002333' 301 01 0 00 000031 CAIL 1,^D25 ; done yet?
1669 002334' 254 00 0 00 002326' JRST TA47 ; yes - check next pattern
1670 002335' 402 00 0 00 002017* SETZM TBYTE ; no - clear byte count
1671 002336' 200 00 0 01 001325' MOVE T45LEN(1) ; get length
1672 002337' 202 00 0 00 002021* MOVEM TWORD ; save it
1673 002340' 137 00 0 00 004647' DPB [POINT 14,TXCTID,31] ; put in XCT-ID
1674 002341' 200 00 0 00 002326* MOVE TPAT ; get data pattern
1675 002342' 506 00 0 00 002024* HRLM TXCTID ; set up XCT-ID
1676 002343' 201 12 0 00 000010 MOVEI 12,^D8 ; initialize packet count
1677 002344' 332 00 0 00 002124* SKIPE SDEBUG ; debug mode?
1678 GO [TMSGC <** Pat >
1679 MOVE TPAT
1680 PNTOCS
1681 TMSG < Len >
1682 MOVE TWORD
1683 PNTDEC
1684 TMSGD < **>
1685 002345' 260 17 0 00 004656' RTN]
1686
1687 ; Decrement packet count (7-0)
1688
1689 002346' 361 12 0 00 002332' TC47: SOJL 12,TB47 ; done yet? yes - check next length
1690 002347' 400 06 0 00 000000 SETZ 6, ; clear hung count
1691
1692 ; Send a packet
1693
1694 002350' 037 07 0 00 000003 TD47: TTALTM ; altmode typed?
1695 002351' 334 00 0 00 000000 SKIPA ; no - keep checking CSR, etc.
1696 002352' 476 00 0 00 002035* SETOM ALTF ; yes - set flag
1697 002353' 332 00 0 00 002352* SKIPE ALTF ; altmode flagged?
1698 002354' 254 00 0 00 002467' JRST TX47 ; yes - exit
1699 002355' 336 00 0 00 002040* SKIPN LCHAR ; last character in here already?
1700 002356' 202 00 0 00 002355* MOVEM LCHAR ; no - save 'last char typed'
1701 002357' 260 17 0 00 002041* GO PSTAMP ; check for S typed
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 38
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0881
1702 002360' 400 07 0 00 000000 SETZ 7, ; clear 'packet put on queue' flag
1703 002361' 260 17 0 00 003752' GO MPACK ; build packet into 'PACKET'
1704 002362' 261 17 0 00 000013 PUT Q ; save queue number
1705 002363' 201 13 0 00 000006 MOVEI Q,6 ; get DGM free queue number
1706 002364' 260 17 0 00 002046* GO CHKINT ; get list of queue entries
1707 002365' 255 00 0 00 000000 JFCL ; ignore error
1708 002366' 476 00 0 00 000000# SETOM PCB+26 ; reset the interlock
1709 002367' 262 17 0 00 000013 GET Q ; restore queue number
1710 002370' 200 00 0 00 002064* MOVE NUMENT ; get entry count
1711 002371' 305 00 0 00 000002 CAIGE 2 ; 2 or more?
1712 002372' 254 00 0 00 002404' JRST TE47 ; no - continue
1713 002373' 400 13 0 00 000000 SETZ Q, ; set to cmd queue #3
1714 002374' 260 17 0 00 002056* GO INSQUE ; insert into queue
1715 002375' 334 00 0 00 000000 SKIPA ; failed - continue
1716 002376' 474 07 0 00 000000 SETO 7, ; set 'packet put on queue' flag
1717 002377' 332 00 0 00 000007 SKIPE 7 ; put on cmd queue?
1718 002400' 350 00 0 00 004301' AOS NPAKS ; yes - increment packet sent count
1719 002401' 350 00 0 00 002311* AOS TSTSUB ; increment subtest number
1720 002402' 337 00 0 00 002370* SKIPG NUMENT ; was the queue empty?
1721 GO [GO RDCSR ; yes - set 'CMDQAV'
1722 MOVEI 1,PENABL!MPRUN
1723 TRZ 1,RESQAV
1724 TRO 1,CMDQAV
1725 GO LDCSR
1726 002403' 260 17 0 00 004313' RTN]
1727
1728 ; Check for a response
1729
1730 002404' 260 17 0 00 004167' TE47: GO CHKRQV ; check response queue available
1731 002405' 260 17 0 00 002112* GO CHKRSP ; check for RspQ entry
1732 JRST [SETZM RQAFLG ; no entry found - continue
1733 MOVE 1,PCB+21 ; get response queue FLINK
1734 GO CONVIR ; convert to virtual
1735 CAIE 1,PCB+21 ; queue really empty?
1736 SETOM RQAFLG ; no - set rsp queue avail flag
1737 002406' 254 00 0 00 004776' JRST TF47]
1738 002407' 400 06 0 00 000000 SETZ 6, ; clear hung count
1739 002410' 260 17 0 00 004141' GO MCHECK ; determine results
1740 002411' 260 17 0 00 004004' GO MCOMP ; compare packet data
1741 002412' 254 00 0 00 002404' JRST TE47 ; keep looking for responses
1742
1743 ; No more responses
1744
1745 002413' 350 00 0 00 000006 TF47: AOS 6 ; increment hung count
1746 002414' 303 06 0 00 007640 CAILE 6,^D4000 ; check 4000 times and no response?
1747 JRST [SETOM DUMPP ; yes - set 'dump possible' flag
1748 002415' 254 00 0 00 005004' JRST TG47] ; and exit
1749 002416' 322 07 0 00 002350' JUMPE 7,TD47 ; send current packet? yes - go do so
1750 002417' 254 00 0 00 002346' JRST TC47 ; no - already did - go do next packet
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 39
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0882
1751
1752 ; Check for any stragglers
1753
1754 002420' 332 00 0 00 002344* TG47: SKIPE SDEBUG ; debug mode?
1755 002421' 037 00 0 00 004676' TMSGCD <** Check for stragglers **>
1756 002422' 400 03 0 00 000000 SETZ 3, ; set up for RUNTME
1757 002423' 260 17 0 00 002120* GO RUNTME ; get current run time
1758 002424' 200 01 0 00 002121* MOVE 1,DEBTIM ; get time in milliseconds
1759 002425' 271 01 0 00 000310 ADDI 1,^D200 ; wait an addl 200 msecs
1760 002426' 202 01 0 00 005405' MOVEM 1,ENDTIM# ; save maximum time
1761 002427' 260 17 0 00 004167' TH47: GO CHKRQV ; check response queue available
1762 002430' 260 17 0 00 002405* GO CHKRSP ; check for RspQ entry
1763 JRST [SETZM RQAFLG ; no entry found - continue
1764 MOVE 1,PCB+21 ; get response queue FLINK
1765 GO CONVIR ; convert to virtual
1766 CAIE 1,PCB+21 ; queue really empty?
1767 SETOM RQAFLG ; no - set rsp queue avail flag
1768 002431' 254 00 0 00 005006' JRST TI47]
1769 002432' 260 17 0 00 004141' GO MCHECK ; determine results
1770 002433' 260 17 0 00 004004' GO MCOMP ; compare packet data
1771 002434' 254 00 0 00 002427' JRST TH47 ; keep looking for responses
1772
1773 ; Check timeout
1774
1775 002435' 400 03 0 00 000000 TI47: SETZ 3, ; set up for RUNTME
1776 002436' 260 17 0 00 002423* GO RUNTME ; get current run time
1777 002437' 200 01 0 00 002424* MOVE 1,DEBTIM ; get time in milliseconds
1778 002440' 317 01 0 00 005405' CAMG 1,ENDTIM ; time expired yet?
1779 002441' 254 00 0 00 002427' JRST TH47 ; no - keep looping
1780
1781 ; Done with test - now check results
1782
1783 002442' 332 00 0 00 002420* TJ47: SKIPE SDEBUG ; debug mode?
1784 002443' 037 00 0 00 004713' TMSGCD <** Done - check results **>
1785 002444' 200 00 0 00 004301' MOVE NPAKS ; get number of packets sent
1786 002445' 302 00 0 00 003410 CAIE T47PAK ; correct number?
1787 002446' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
1788 002447' 200 00 0 00 004301' MOVE NPAKS ; get packets sent
1789 002450' 231 00 0 00 000012 IDIVI ^D10 ; get 10%
1790 002451' 315 00 0 00 004302' CAMGE NPAKSE ; more status errors than 10%?
1791 002452' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1792 002453' 200 00 0 00 004303' MOVE NPAKR ; get receive count
1793 002454' 305 00 0 00 003124 CAIGE T47PAK*^D9/^D10 ; more than 90% received?
1794 002455' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
1795 002456' 332 00 0 00 004304' SKIPE NPAKRE ; any receive status errors?
1796 002457' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1797 002460' 332 00 0 00 004306' SKIPE NPAKRD ; any receive dt.cmp errors?
1798 002461' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1799 002462' 332 00 0 00 004305' SKIPE NPAKRC ; any CRC errors?
1800 002463' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
1801 002464' 027 00 0 00 002503' SCOPER MD47 ; print error message
1802 002465' 255 00 0 00 000000 JFCL ; loop on error
1803 002466' 254 00 0 00 002467' JRST TX47 ; altmode exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 40
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0883
1804
1805 ; End of test
1806
1807 002467' 260 17 0 00 002151* TX47: GO TSTEND ; handle end of test processing
1808 002470' 260 17 0 00 002152* GO SETDSA ; disable the port
1809 002471' 260 17 0 00 002153* GO ISTOP ; stop the port
1810 002472' 263 17 0 00 000000 RTN ; return
1811
1812 ; Error messages
1813
1814 002473' 260000 004270' MA47: TXALL!CALL!LODERR
1815 002474' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1816
1817 002475' 160000 004343' MB47: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
1818 002476' 260000 004242' TXALL!CALL!PDUMP
1819 002477' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1820
1821 002500' 160000 004351' MC47: TXALL!MSG![ASCIZ /Could not enable the port/]
1822 002501' 260000 004242' TXALL!CALL!PDUMP
1823 002502' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
1824
1825 002503' 160000 004357' MD47: TXALL!MSG![ASCIZ /Errors noted with external loopback:/]
1826 002504' 260000 002510' TXALL!CALL!MD47PN
1827 002505' 260000 004242' TXALL!CALL!PDUMP
1828 002506' 160000 004367' TXALL!MSG![ASCIZ /FRU: Link Module (Check CI cables & Star/]
1829 002507' 170000 004400' LAST!TXALL!MSG![ASCIZ / Coupler connections)/]
1830
1831 002510' 037 00 0 00 004406' MD47PN: TMSGC < What Expected Actual>
1832 002511' 037 00 0 00 004416' TMSGC <----------- -------- ------>
1833 002512' 037 00 0 00 004426' TMSGC <Packets Sent >
1834 002513' 004 11 0 00 004722' PNTDCP 9,[T47PAK]
1835 002514' 004 11 0 00 004301' PNTDCP 9,NPAKS
1836 002515' 037 00 0 00 004443' TMSGC < Status Errors 0.>
1837 002516' 004 11 0 00 004302' PNTDCP 9,NPAKSE
1838 002517' 037 00 0 00 004437' TMSGC <Packets Rcvd >
1839 002520' 004 11 0 00 004722' PNTDCP 9,[T47PAK]
1840 002521' 004 11 0 00 004303' PNTDCP 9,NPAKR
1841 002522' 037 00 0 00 004443' TMSGC < Status Errors 0.>
1842 002523' 004 11 0 00 004304' PNTDCP 9,NPAKRE
1843 002524' 037 00 0 00 004451' TMSGC < CRC Errors 0.>
1844 002525' 004 11 0 00 004305' PNTDCP 9,NPAKRC
1845 002526' 037 00 0 00 004457' TMSGC < DtCmp Errors (PKTS) 0.>
1846 002527' 004 11 0 00 004306' PNTDCP 9,NPAKRD
1847 002530' 037 00 0 00 004465' TMSGC < DtCmp Errors (WORDS) 0.>
1848 002531' 004 11 0 00 004307' PNTDCP 9,NPAKRW
1849 002532' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 41
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0884
1850
1851 ;#********************************************************************
1852 ;* TEST 50 - CI Loopback Test (Path B/Compat)
1853 ;
1854 ; Description: This test does data loopback at the STAR coupler
1855 ; with various data patterns and packet sizes.
1856 ;
1857 ; Procedure: KL> Load microcode
1858 ; KL> Port Clear
1859 ; KL> Start port
1860 ;
1861 ; KL> Build a loopback packet, insert on command
1862 ; queue, and wait for a response
1863 ; KL> Verify proper response
1864 ; KL> Verify data portion of packet received properly
1865 ; If failed - print error message and exit test
1866 ;
1867 ; Do for:
1868 ; data patterns: 116-126
1869 ; text length (words): 10-200
1870 ;
1871 ; FRU: Link Module
1872 ;#********************************************************************
1873
1874 003410 T50PAK==^D9*^D25*^D8 ; number of packets to send
1875
1876 ; Initialization
1877
1878 002533' 201 00 0 00 000000' TST50: MOVEI Z5 ; get address of module start
1879 002534' 260 17 0 00 002247* GO TRACE ; handle trace output
1880 002535' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
1881 002536' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
1882 002537' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
1883 002540' 260 17 0 00 002253* GO IPACLR ; do a 'port clear'
1884 002541' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
1885 002542' 260 17 0 00 002255* GO TFLOAD ; load operational microcode
1886 GO [MOVEM TERMES ; error - save error message
1887 SETO ERFLG,
1888 002543' 260 17 0 00 004310' RTN]
1889 002544' 260 17 0 00 002257* GO RDNODE ; read node address
1890 002545' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
1891 002546' 202 01 0 00 002261* MOVEM 1,CPORT ; save our port number
1892 002547' 027 00 0 00 002760' SCOPER MA50 ; print error message
1893 002550' 255 00 0 00 000000 JFCL ; loop on error
1894 002551' 254 00 0 00 002754' JRST TX50 ; altmode exit
1895 002552' 326 15 0 00 002754' JUMPN ERFLG,TX50 ; error yet? yes - abort test
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 42
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0885
1896
1897 ; Start port
1898
1899 002553' 260 17 0 00 002266* GO TIDLE ; start port
1900 002554' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
1901 002555' 027 00 0 00 002762' SCOPER MB50 ; print error message
1902 002556' 255 00 0 00 000000 JFCL ; loop on error
1903 002557' 254 00 0 00 002754' JRST TX50 ; altmode exit
1904 002560' 326 15 0 00 002754' JUMPN ERFLG,TX50 ; error yet? yes - abort test
1905
1906 ; Enable the port
1907
1908 002561' 260 17 0 00 002274* GO SETENA ; ensure the port is enabled
1909 002562' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
1910 002563' 027 00 0 00 002765' SCOPER MC50 ; print error message
1911 002564' 255 00 0 00 000000 JFCL ; loop on error
1912 002565' 254 00 0 00 002754' JRST TX50 ; altmode exit
1913 002566' 326 15 0 00 002754' JUMPN ERFLG,TX50 ; error yet? yes - abort test
1914
1915 ; Initialize packet data
1916
1917 002567' 402 00 0 00 002302* SETZM TFMFLG ; set to COMPAT mode
1918 002570' 402 00 0 00 002303* SETZM TRSFLG ; set no response requested
1919 002571' 201 00 0 00 000002 MOVEI 2 ; initialize to path B
1920 002572' 202 00 0 00 002305* MOVEM TPTFLG ; ...
1921 002573' 201 11 0 00 000015 MOVEI OP,SNDLB ; set op code (LOOPBACK)
1922 002574' 201 00 0 00 000115 MOVEI 115 ; set initial data pattern
1923 002575' 202 00 0 00 002341* MOVEM TPAT ; ...
1924 002576' 402 00 0 00 002401* SETZM TSTSUB ; initialize subtest number
1925 002577' 260 17 0 00 001356' GO CRCINI ; initialize CRC table
1926
1927 ; Initialize statistics
1928
1929 002600' 402 00 0 00 004301' SETZM NPAKS ; clear sent count
1930 002601' 402 00 0 00 004302' SETZM NPAKSE ; clear sent status error count
1931 002602' 402 00 0 00 004303' SETZM NPAKR ; clear recv count
1932 002603' 402 00 0 00 004304' SETZM NPAKRE ; clear recv status error count
1933 002604' 402 00 0 00 004305' SETZM NPAKRC ; clear recv CRC error count
1934 002605' 402 00 0 00 004306' SETZM NPAKRD ; clear recv dt.cmp error count (pkts)
1935 002606' 402 00 0 00 004307' SETZM NPAKRW ; clear recv dt.cmp error count (words)
1936 MOVEI [MOVE TXCTID ; set up packet data for text
1937 MOVEM PACKET+5 ; length and data pattern
1938 RPUT (1,2)
1939 MOVE 1,TLEN
1940 IMULI 1,^D9
1941 ADD 1,TPAT
1942 SUBI 1,116
1943 MOVEM 1,CRCOFF
1944 MOVE 2,CRCTAB(1)
1945 MOVEM 2,CRCSAV
1946 RGET (2,1)
1947 002607' 201 00 0 00 005014' RTN]
1948 002610' 202 00 0 00 002323* MOVEM TXADDL
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 43
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0886
1949 002611' 402 00 0 00 005412' SETZM RQAFLG ; clear response queue available flag
1950 002612' 402 00 0 00 005404' SETZM DUMPP ; clear 'dump possible' flag
1951
1952 ; Increment pattern
1953
1954 002613' 350 01 0 00 002575* TA50: AOS 1,TPAT ; increment pattern
1955 002614' 303 01 0 00 000126 CAILE 1,126 ; done yet?
1956 002615' 254 00 0 00 002705' JRST TG50 ; yes - check test completion
1957 002616' 476 00 0 00 005414' SETOM TLEN# ; initialize length pointer
1958
1959 ; Increment length
1960
1961 002617' 350 01 0 00 005414' TB50: AOS 1,TLEN ; increment length
1962 002620' 301 01 0 00 000031 CAIL 1,^D25 ; done yet?
1963 002621' 254 00 0 00 002613' JRST TA50 ; yes - check next pattern
1964 002622' 402 00 0 00 002335* SETZM TBYTE ; no - clear byte count
1965 002623' 200 00 0 01 001325' MOVE T45LEN(1) ; get length
1966 002624' 202 00 0 00 002337* MOVEM TWORD ; save it
1967 002625' 137 00 0 00 004647' DPB [POINT 14,TXCTID,31] ; put in XCT-ID
1968 002626' 200 00 0 00 002613* MOVE TPAT ; get data pattern
1969 002627' 506 00 0 00 002342* HRLM TXCTID ; set up XCT-ID
1970 002630' 201 12 0 00 000010 MOVEI 12,^D8 ; initialize packet count
1971 002631' 332 00 0 00 002442* SKIPE SDEBUG ; debug mode?
1972 GO [TMSGC <** Pat >
1973 MOVE TPAT
1974 PNTOCS
1975 TMSG < Len >
1976 MOVE TWORD
1977 PNTDEC
1978 TMSGD < **>
1979 002632' 260 17 0 00 004656' RTN]
1980
1981 ; Decrement packet count (7-0)
1982
1983 002633' 361 12 0 00 002617' TC50: SOJL 12,TB50 ; done yet? yes - check next length
1984 002634' 400 06 0 00 000000 SETZ 6, ; clear hung count
1985
1986 ; Send a packet
1987
1988 002635' 037 07 0 00 000003 TD50: TTALTM ; altmode typed?
1989 002636' 334 00 0 00 000000 SKIPA ; no - keep checking CSR, etc.
1990 002637' 476 00 0 00 002353* SETOM ALTF ; yes - set flag
1991 002640' 332 00 0 00 002637* SKIPE ALTF ; altmode flagged?
1992 002641' 254 00 0 00 002754' JRST TX50 ; yes - exit
1993 002642' 336 00 0 00 002356* SKIPN LCHAR ; last character in here already?
1994 002643' 202 00 0 00 002642* MOVEM LCHAR ; no - save 'last char typed'
1995 002644' 260 17 0 00 002357* GO PSTAMP ; check for S typed
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 44
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0887
1996 002645' 400 07 0 00 000000 SETZ 7, ; clear 'packet put on queue' flag
1997 002646' 260 17 0 00 003752' GO MPACK ; build packet into 'PACKET'
1998 002647' 261 17 0 00 000013 PUT Q ; save queue number
1999 002650' 201 13 0 00 000006 MOVEI Q,6 ; get DGM free queue number
2000 002651' 260 17 0 00 002364* GO CHKINT ; get list of queue entries
2001 002652' 255 00 0 00 000000 JFCL ; ignore error
2002 002653' 476 00 0 00 000000# SETOM PCB+26 ; reset the interlock
2003 002654' 262 17 0 00 000013 GET Q ; restore queue number
2004 002655' 200 00 0 00 002402* MOVE NUMENT ; get entry count
2005 002656' 305 00 0 00 000002 CAIGE 2 ; 2 or more?
2006 002657' 254 00 0 00 002671' JRST TE50 ; no - continue
2007 002660' 400 13 0 00 000000 SETZ Q, ; set to cmd queue #3
2008 002661' 260 17 0 00 002374* GO INSQUE ; insert into queue
2009 002662' 334 00 0 00 000000 SKIPA ; failed - continue
2010 002663' 474 07 0 00 000000 SETO 7, ; set 'packet put on queue' flag
2011 002664' 332 00 0 00 000007 SKIPE 7 ; put on cmd queue?
2012 002665' 350 00 0 00 004301' AOS NPAKS ; yes - increment packet sent count
2013 002666' 350 00 0 00 002576* AOS TSTSUB ; increment subtest number
2014 002667' 337 00 0 00 002655* SKIPG NUMENT ; was the queue empty?
2015 GO [GO RDCSR ; yes - set 'CMDQAV'
2016 MOVEI 1,PENABL!MPRUN
2017 TRZ 1,RESQAV
2018 TRO 1,CMDQAV
2019 GO LDCSR
2020 002670' 260 17 0 00 004313' RTN]
2021
2022 ; Check for a response
2023
2024 002671' 260 17 0 00 004167' TE50: GO CHKRQV ; check response queue available
2025 002672' 260 17 0 00 002430* GO CHKRSP ; check for RspQ entry
2026 JRST [SETZM RQAFLG ; no entry found - continue
2027 MOVE 1,PCB+21 ; get response queue FLINK
2028 GO CONVIR ; convert to virtual
2029 CAIE 1,PCB+21 ; queue really empty?
2030 SETOM RQAFLG ; no - set rsp queue avail flag
2031 002673' 254 00 0 00 005032' JRST TF50]
2032 002674' 400 06 0 00 000000 SETZ 6, ; clear hung count
2033 002675' 260 17 0 00 004141' GO MCHECK ; determine results
2034 002676' 260 17 0 00 004004' GO MCOMP ; compare packet data
2035 002677' 254 00 0 00 002671' JRST TE50 ; keep looking for responses
2036
2037 ; No more responses
2038
2039 002700' 350 00 0 00 000006 TF50: AOS 6 ; increment hung count
2040 002701' 303 06 0 00 007640 CAILE 6,^D4000 ; check 4000 times and no response?
2041 JRST [SETOM DUMPP ; yes - set 'dump possible' flag
2042 002702' 254 00 0 00 005040' JRST TG50] ; and exit
2043 002703' 322 07 0 00 002635' JUMPE 7,TD50 ; send current packet? yes - go do so
2044 002704' 254 00 0 00 002633' JRST TC50 ; no - already did - go do next packet
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 45
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0888
2045
2046 ; Check for any stragglers
2047
2048 002705' 332 00 0 00 002631* TG50: SKIPE SDEBUG ; debug mode?
2049 002706' 037 00 0 00 004676' TMSGCD <** Check for stragglers **>
2050 002707' 400 03 0 00 000000 SETZ 3, ; set up for RUNTME
2051 002710' 260 17 0 00 002436* GO RUNTME ; get current run time
2052 002711' 200 01 0 00 002437* MOVE 1,DEBTIM ; get time in milliseconds
2053 002712' 271 01 0 00 000310 ADDI 1,^D200 ; wait an addl 200 msecs
2054 002713' 202 01 0 00 005405' MOVEM 1,ENDTIM# ; save maximum time
2055 002714' 260 17 0 00 004167' TH50: GO CHKRQV ; check response queue available
2056 002715' 260 17 0 00 002672* GO CHKRSP ; check for RspQ entry
2057 JRST [SETZM RQAFLG ; no entry found - continue
2058 MOVE 1,PCB+21 ; get response queue FLINK
2059 GO CONVIR ; convert to virtual
2060 CAIE 1,PCB+21 ; queue really empty?
2061 SETOM RQAFLG ; no - set rsp queue avail flag
2062 002716' 254 00 0 00 005042' JRST TI50]
2063 002717' 260 17 0 00 004141' GO MCHECK ; determine results
2064 002720' 260 17 0 00 004004' GO MCOMP ; compare packet data
2065 002721' 254 00 0 00 002714' JRST TH50 ; keep looking for responses
2066
2067 ; Check timeout
2068
2069 002722' 400 03 0 00 000000 TI50: SETZ 3, ; set up for RUNTME
2070 002723' 260 17 0 00 002710* GO RUNTME ; get current run time
2071 002724' 200 01 0 00 002711* MOVE 1,DEBTIM ; get time in milliseconds
2072 002725' 317 01 0 00 005405' CAMG 1,ENDTIM ; time expired yet?
2073 002726' 254 00 0 00 002714' JRST TH50 ; no - keep looping
2074
2075 ; Done with test - now check results
2076
2077 002727' 332 00 0 00 002705* TJ50: SKIPE SDEBUG ; debug mode?
2078 002730' 037 00 0 00 004713' TMSGCD <** Done - check results **>
2079 002731' 200 00 0 00 004301' MOVE NPAKS ; get number of packets sent
2080 002732' 302 00 0 00 003410 CAIE T50PAK ; correct number?
2081 002733' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
2082 002734' 200 00 0 00 004301' MOVE NPAKS ; get packets sent
2083 002735' 231 00 0 00 000012 IDIVI ^D10 ; get 10%
2084 002736' 315 00 0 00 004302' CAMGE NPAKSE ; more status errors than 10%?
2085 002737' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2086 002740' 200 00 0 00 004303' MOVE NPAKR ; get receive count
2087 002741' 305 00 0 00 003124 CAIGE T50PAK*^D9/^D10 ; more than 90% received?
2088 002742' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
2089 002743' 332 00 0 00 004304' SKIPE NPAKRE ; any receive status errors?
2090 002744' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2091 002745' 332 00 0 00 004306' SKIPE NPAKRD ; any receive dt.cmp errors?
2092 002746' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2093 002747' 332 00 0 00 004305' SKIPE NPAKRC ; any CRC errors?
2094 002750' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2095 002751' 027 00 0 00 002770' SCOPER MD50 ; print error message
2096 002752' 255 00 0 00 000000 JFCL ; loop on error
2097 002753' 254 00 0 00 002754' JRST TX50 ; altmode exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 46
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0889
2098
2099 ; End of test
2100
2101 002754' 260 17 0 00 002467* TX50: GO TSTEND ; handle end of test processing
2102 002755' 260 17 0 00 002470* GO SETDSA ; disable the port
2103 002756' 260 17 0 00 002471* GO ISTOP ; stop the port
2104 002757' 263 17 0 00 000000 RTN ; return
2105
2106 ; Error messages
2107
2108 002760' 260000 004270' MA50: TXALL!CALL!LODERR
2109 002761' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2110
2111 002762' 160000 004343' MB50: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
2112 002763' 260000 004242' TXALL!CALL!PDUMP
2113 002764' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2114
2115 002765' 160000 004351' MC50: TXALL!MSG![ASCIZ /Could not enable the port/]
2116 002766' 260000 004242' TXALL!CALL!PDUMP
2117 002767' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2118
2119 002770' 160000 004357' MD50: MSG!TXALL![ASCIZ /Errors noted with external loopback:/]
2120 002771' 260000 002775' TXALL!CALL!MD50PN
2121 002772' 260000 004242' TXALL!CALL!PDUMP
2122 002773' 160000 004367' TXALL!MSG![ASCIZ /FRU: Link Module (Check CI cables & Star/]
2123 002774' 170000 004400' LAST!TXALL!MSG![ASCIZ / Coupler connections)/]
2124
2125 002775' 037 00 0 00 004406' MD50PN: TMSGC < What Expected Actual>
2126 002776' 037 00 0 00 004416' TMSGC <----------- -------- ------>
2127 002777' 037 00 0 00 004426' TMSGC <Packets Sent >
2128 003000' 004 11 0 00 004722' PNTDCP 9,[T50PAK]
2129 003001' 004 11 0 00 004301' PNTDCP 9,NPAKS
2130 003002' 037 00 0 00 004443' TMSGC < Status Errors 0.>
2131 003003' 004 11 0 00 004302' PNTDCP 9,NPAKSE
2132 003004' 037 00 0 00 004437' TMSGC <Packets Rcvd >
2133 003005' 004 11 0 00 004722' PNTDCP 9,[T50PAK]
2134 003006' 004 11 0 00 004303' PNTDCP 9,NPAKR
2135 003007' 037 00 0 00 004443' TMSGC < Status Errors 0.>
2136 003010' 004 11 0 00 004304' PNTDCP 9,NPAKRE
2137 003011' 037 00 0 00 004451' TMSGC < CRC Errors 0.>
2138 003012' 004 11 0 00 004305' PNTDCP 9,NPAKRC
2139 003013' 037 00 0 00 004457' TMSGC < DtCmp Errors (PKTS) 0.>
2140 003014' 004 11 0 00 004306' PNTDCP 9,NPAKRD
2141 003015' 037 00 0 00 004465' TMSGC < DtCmp Errors (WORDS) 0.>
2142 003016' 004 11 0 00 004307' PNTDCP 9,NPAKRW
2143 003017' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 47
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0890
2144
2145 ;#********************************************************************
2146 ;* TEST 51 - Link Loopback Test
2147 ;
2148 ; Description: This test does data loopback at the LINK module
2149 ; with various data patterns and packet sizes.
2150 ;
2151 ; Procedure: KL> Load microcode
2152 ; KL> Port Clear
2153 ; KL> Start port
2154 ;
2155 ; KL> Build a self-directed datagram, insert on command
2156 ; queue, and wait for a response
2157 ; KL> Verify proper response
2158 ; KL> Verify data portion of packet received properly
2159 ; If failed - print error message and exit test
2160 ;
2161 ; Do for:
2162 ; data patterns: 116-126
2163 ; text length (words): 10-200
2164 ;
2165 ; FRU: Link Module
2166 ;#********************************************************************
2167
2168 007020 T51PAK==^D9*^D25*^D16 ; number of packets to send
2169
2170 ; Initialization
2171
2172 003020' 201 00 0 00 000000' TST51: MOVEI Z5 ; get address of module start
2173 003021' 260 17 0 00 002534* GO TRACE ; handle trace output
2174 003022' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
2175 003023' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
2176 003024' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
2177 003025' 260 17 0 00 002540* GO IPACLR ; do a 'port clear'
2178 003026' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
2179 003027' 260 17 0 00 002542* GO TFLOAD ; load operational microcode
2180 GO [MOVEM TERMES ; error - save error message
2181 SETO ERFLG,
2182 003030' 260 17 0 00 004310' RTN]
2183 003031' 260 17 0 00 002544* GO RDNODE ; read node address
2184 003032' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
2185 003033' 202 01 0 00 002546* MOVEM 1,CPORT ; save our port number
2186 003034' 027 00 0 00 003243' SCOPER MA51 ; print error message
2187 003035' 255 00 0 00 000000 JFCL ; loop on error
2188 003036' 254 00 0 00 003237' JRST TX51 ; altmode exit
2189 003037' 326 15 0 00 003237' JUMPN ERFLG,TX51 ; error yet? yes - abort test
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 48
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0891
2190
2191 ; Start port
2192
2193 003040' 260 17 0 00 002553* GO TIDLE ; start port
2194 003041' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
2195 003042' 027 00 0 00 003245' SCOPER MB51 ; print error message
2196 003043' 255 00 0 00 000000 JFCL ; loop on error
2197 003044' 254 00 0 00 003237' JRST TX51 ; altmode exit
2198 003045' 326 15 0 00 003237' JUMPN ERFLG,TX51 ; error yet? yes - abort test
2199
2200 ; Enable the port
2201
2202 003046' 260 17 0 00 002561* GO SETENA ; ensure the port is enabled
2203 003047' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
2204 003050' 027 00 0 00 003250' SCOPER MC51 ; print error message
2205 003051' 255 00 0 00 000000 JFCL ; loop on error
2206 003052' 254 00 0 00 003237' JRST TX51 ; altmode exit
2207 003053' 326 15 0 00 003237' JUMPN ERFLG,TX51 ; error yet? yes - abort test
2208
2209 ; Initialize packet data
2210
2211 003054' 402 00 0 00 002572* SETZM TPTFLG ; initialize to auto path
2212 003055' 402 00 0 00 002567* SETZM TFMFLG ; set to COMPAT mode
2213 003056' 402 00 0 00 002570* SETZM TRSFLG ; set no response requested
2214 003057' 201 11 0 00 000001 MOVEI OP,SNDDG ; set op code (SNDDG)
2215 003060' 201 00 0 00 000115 MOVEI 115 ; set initial data pattern
2216 003061' 202 00 0 00 002626* MOVEM TPAT ; ...
2217 003062' 402 00 0 00 002666* SETZM TSTSUB ; initialize subtest number
2218 003063' 260 17 0 00 001356' GO CRCINI ; initialize CRC table
2219
2220 ; Initialize statistics
2221
2222 003064' 402 00 0 00 004301' SETZM NPAKS ; clear sent count
2223 003065' 402 00 0 00 004302' SETZM NPAKSE ; clear sent status error count
2224 003066' 402 00 0 00 004303' SETZM NPAKR ; clear recv count
2225 003067' 402 00 0 00 004304' SETZM NPAKRE ; clear recv status error count
2226 003070' 402 00 0 00 004305' SETZM NPAKRC ; clear recv CRC error count
2227 003071' 402 00 0 00 004306' SETZM NPAKRD ; clear recv dt.cmp error count (pkts)
2228 003072' 402 00 0 00 004307' SETZM NPAKRW ; clear recv dt.cmp error count (words)
2229 MOVEI [MOVE TXCTID ; set up packet data for text
2230 MOVEM PACKET+5 ; length and data pattern
2231 003073' 201 00 0 00 005050' RTN]
2232 003074' 202 00 0 00 002610* MOVEM TXADDL
2233 003075' 402 00 0 00 005412' SETZM RQAFLG ; clear response queue available flag
2234 003076' 402 00 0 00 005404' SETZM DUMPP ; clear 'dump possible' flag
2235
2236 ; Increment pattern
2237
2238 003077' 350 01 0 00 003061* TA51: AOS 1,TPAT ; increment pattern
2239 003100' 303 01 0 00 000126 CAILE 1,126 ; done yet?
2240 003101' 254 00 0 00 003171' JRST TG51 ; yes - check test completion
2241 003102' 476 00 0 00 005414' SETOM TLEN# ; initialize length pointer
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 49
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0892
2242
2243 ; Increment length
2244
2245 003103' 350 01 0 00 005414' TB51: AOS 1,TLEN ; increment length
2246 003104' 301 01 0 00 000031 CAIL 1,^D25 ; done yet?
2247 003105' 254 00 0 00 003077' JRST TA51 ; yes - check next pattern
2248 003106' 402 00 0 00 002622* SETZM TBYTE ; no - clear byte count
2249 003107' 200 00 0 01 001325' MOVE T45LEN(1) ; get length
2250 003110' 202 00 0 00 002624* MOVEM TWORD ; save it
2251 003111' 137 00 0 00 004647' DPB [POINT 14,TXCTID,31] ; put in XCT-ID
2252 003112' 200 00 0 00 003077* MOVE TPAT ; get data pattern
2253 003113' 506 00 0 00 002627* HRLM TXCTID ; set up XCT-ID
2254 003114' 201 12 0 00 000020 MOVEI 12,^D16 ; initialize packet count
2255 003115' 332 00 0 00 002727* SKIPE SDEBUG ; debug mode?
2256 GO [TMSGC <** Pat >
2257 MOVE TPAT
2258 PNTOCS
2259 TMSG < Len >
2260 MOVE TWORD
2261 PNTDEC
2262 TMSGD < **>
2263 003116' 260 17 0 00 004656' RTN]
2264
2265 ; Decrement packet count (15-0)
2266
2267 003117' 361 12 0 00 003103' TC51: SOJL 12,TB51 ; done yet? yes - check next length
2268 003120' 400 06 0 00 000000 SETZ 6, ; clear hung count
2269
2270 ; Send a packet
2271
2272 003121' 037 07 0 00 000003 TD51: TTALTM ; altmode typed?
2273 003122' 334 00 0 00 000000 SKIPA ; no - keep checking CSR, etc.
2274 003123' 476 00 0 00 002640* SETOM ALTF ; yes - set flag
2275 003124' 332 00 0 00 003123* SKIPE ALTF ; altmode flagged?
2276 003125' 254 00 0 00 003237' JRST TX51 ; yes - exit
2277 003126' 336 00 0 00 002643* SKIPN LCHAR ; last character in here already?
2278 003127' 202 00 0 00 003126* MOVEM LCHAR ; no - save 'last char typed'
2279 003130' 260 17 0 00 002644* GO PSTAMP ; check for S typed
2280 003131' 400 07 0 00 000000 SETZ 7, ; clear 'packet put on queue' flag
2281 003132' 260 17 0 00 003752' GO MPACK ; build packet into 'PACKET'
2282 003133' 261 17 0 00 000013 PUT Q ; save queue number
2283 003134' 201 13 0 00 000006 MOVEI Q,6 ; get DGM free queue number
2284 003135' 260 17 0 00 002651* GO CHKINT ; get list of queue entries
2285 003136' 255 00 0 00 000000 JFCL ; ignore error
2286 003137' 476 00 0 00 000000# SETOM PCB+26 ; reset the interlock
2287 003140' 262 17 0 00 000013 GET Q ; restore queue number
2288 003141' 200 00 0 00 002667* MOVE NUMENT ; get entry count
2289 003142' 305 00 0 00 000002 CAIGE 2 ; 4 or more?
2290 003143' 254 00 0 00 003155' JRST TE51 ; no - continue
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 50
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0893
2291 003144' 400 13 0 00 000000 SETZ Q, ; set to cmd queue #3
2292 003145' 260 17 0 00 002661* GO INSQUE ; insert into queue
2293 003146' 334 00 0 00 000000 SKIPA ; failed - continue
2294 003147' 474 07 0 00 000000 SETO 7, ; set 'packet put on queue' flag
2295 003150' 332 00 0 00 000007 SKIPE 7 ; put on cmd queue?
2296 003151' 350 00 0 00 004301' AOS NPAKS ; yes - increment packet sent count
2297 003152' 350 00 0 00 003062* AOS TSTSUB ; increment subtest number
2298 003153' 337 00 0 00 003141* SKIPG NUMENT ; was the queue empty?
2299 GO [GO RDCSR ; yes - set 'CMDQAV'
2300 MOVEI 1,PENABL!MPRUN
2301 TRZ 1,RESQAV
2302 TRO 1,CMDQAV
2303 GO LDCSR
2304 003154' 260 17 0 00 004313' RTN]
2305
2306 ; Check for a response
2307
2308 003155' 260 17 0 00 004167' TE51: GO CHKRQV ; check response queue available
2309 003156' 260 17 0 00 002715* GO CHKRSP ; check for RspQ entry
2310 JRST [SETZM RQAFLG ; no entry found - continue
2311 MOVE 1,PCB+21 ; get response queue FLINK
2312 GO CONVIR ; convert to virtual
2313 CAIE 1,PCB+21 ; queue really empty?
2314 SETOM RQAFLG ; no - set rsp queue avail flag
2315 003157' 254 00 0 00 005053' JRST TF51]
2316 003160' 400 06 0 00 000000 SETZ 6, ; clear hung count
2317 003161' 260 17 0 00 004141' GO MCHECK ; determine results
2318 003162' 260 17 0 00 004004' GO MCOMP ; compare packet data
2319 003163' 254 00 0 00 003155' JRST TE51 ; keep looking for responses
2320
2321 ; No more responses
2322
2323 003164' 350 00 0 00 000006 TF51: AOS 6 ; increment hung count
2324 003165' 303 06 0 00 007640 CAILE 6,^D4000 ; check 4000 times and no response?
2325 JRST [SETOM DUMPP ; yes - set 'dump possible' flag
2326 003166' 254 00 0 00 005061' JRST TG51] ; and exit
2327 003167' 322 07 0 00 003121' JUMPE 7,TD51 ; send current packet? yes - go do so
2328 003170' 254 00 0 00 003117' JRST TC51 ; no - already did - go do next packet
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 51
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0894
2329
2330 ; Check for any stragglers
2331
2332 003171' 332 00 0 00 003115* TG51: SKIPE SDEBUG ; debug mode?
2333 003172' 037 00 0 00 004676' TMSGCD <** Check for stragglers **>
2334 003173' 400 03 0 00 000000 SETZ 3, ; set up for RUNTME
2335 003174' 260 17 0 00 002723* GO RUNTME ; get current run time
2336 003175' 200 01 0 00 002724* MOVE 1,DEBTIM ; get time in milliseconds
2337 003176' 271 01 0 00 000310 ADDI 1,^D200 ; wait an addl 200 msecs
2338 003177' 202 01 0 00 005405' MOVEM 1,ENDTIM# ; save maximum time
2339 003200' 260 17 0 00 004167' TH51: GO CHKRQV ; check response queue available
2340 003201' 260 17 0 00 003156* GO CHKRSP ; check for RspQ entry
2341 JRST [SETZM RQAFLG ; no entry found - continue
2342 MOVE 1,PCB+21 ; get response queue FLINK
2343 GO CONVIR ; convert to virtual
2344 CAIE 1,PCB+21 ; queue really empty?
2345 SETOM RQAFLG ; no - set rsp queue avail flag
2346 003202' 254 00 0 00 005063' JRST TI51]
2347 003203' 260 17 0 00 004141' GO MCHECK ; determine results
2348 003204' 260 17 0 00 004004' GO MCOMP ; compare packet data
2349 003205' 254 00 0 00 003200' JRST TH51 ; keep looking for responses
2350 003206' 400 03 0 00 000000 TI51: SETZ 3, ; set up for RUNTME
2351 003207' 260 17 0 00 003174* GO RUNTME ; get current run time
2352 003210' 200 01 0 00 003175* MOVE 1,DEBTIM ; get time in milliseconds
2353 003211' 317 01 0 00 005405' CAMG 1,ENDTIM ; time expired yet?
2354 003212' 254 00 0 00 003200' JRST TH51 ; no - keep looping
2355
2356 ; Done with test - now check results
2357
2358 003213' 332 00 0 00 003171* TJ51: SKIPE SDEBUG ; debug mode?
2359 003214' 037 00 0 00 004713' TMSGCD <** Done - check results **>
2360 003215' 200 00 0 00 004301' MOVE NPAKS ; get number of packets sent
2361 003216' 302 00 0 00 007020 CAIE T51PAK ; correct number?
2362 003217' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
2363 003220' 200 00 0 00 004302' MOVE NPAKSE ; get status errors
2364 003221' 301 00 0 00 000550 CAIL T51PAK/^D10 ; less than 10% errors?
2365 003222' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
2366 003223' 200 00 0 00 004303' MOVE NPAKR ; get receive count
2367 003224' 305 00 0 00 006250 CAIGE T51PAK*^D9/^D10 ; more than 90% received?
2368 003225' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
2369 003226' 332 00 0 00 004304' SKIPE NPAKRE ; any receive status errors?
2370 003227' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2371 003230' 332 00 0 00 004306' SKIPE NPAKRD ; any receive dt.cmp errors?
2372 003231' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2373 003232' 332 00 0 00 004305' SKIPE NPAKRC ; any receive CRC errors?
2374 003233' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2375 003234' 027 00 0 00 003253' SCOPER MD51 ; print error message
2376 003235' 255 00 0 00 000000 JFCL ; loop on error
2377 003236' 254 00 0 00 003237' JRST TX51 ; altmode exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 52
DFCIA5 MAC 27-Oct-84 18:58 Loopback Tests SEQ 0895
2378
2379 ; End of test
2380
2381 003237' 260 17 0 00 002754* TX51: GO TSTEND ; handle end of test processing
2382 003240' 260 17 0 00 002755* GO SETDSA ; disable the port
2383 003241' 260 17 0 00 002756* GO ISTOP ; stop the port
2384 003242' 263 17 0 00 000000 RTN ; return
2385
2386 ; Error messages
2387
2388 003243' 260000 004270' MA51: TXALL!CALL!LODERR
2389 003244' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2390
2391 003245' 160000 004343' MB51: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
2392 003246' 260000 004242' TXALL!CALL!PDUMP
2393 003247' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2394
2395 003250' 160000 004351' MC51: TXALL!MSG![ASCIZ /Could not enable the port/]
2396 003251' 260000 004242' TXALL!CALL!PDUMP
2397 003252' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2398
2399 003253' 160000 005071' MD51: MSG!TXALL![ASCIZ /Errors noted with internal loopback:/]
2400 003254' 260000 003257' TXALL!CALL!MD51PN
2401 003255' 260000 004242' TXALL!CALL!PDUMP
2402 003256' 170000 005101' LAST!TXALL!MSG![ASCIZ /FRU: Link Module/]
2403
2404 003257' 037 00 0 00 004406' MD51PN: TMSGC < What Expected Actual>
2405 003260' 037 00 0 00 004416' TMSGC <----------- -------- ------>
2406 003261' 037 00 0 00 004426' TMSGC <Packets Sent >
2407 003262' 004 11 0 00 005105' PNTDCP 9,[T51PAK]
2408 003263' 004 11 0 00 004301' PNTDCP 9,NPAKS
2409 003264' 037 00 0 00 004443' TMSGC < Status Errors 0.>
2410 003265' 004 11 0 00 004302' PNTDCP 9,NPAKSE
2411 003266' 037 00 0 00 004437' TMSGC <Packets Rcvd >
2412 003267' 004 11 0 00 005105' PNTDCP 9,[T51PAK]
2413 003270' 004 11 0 00 004303' PNTDCP 9,NPAKR
2414 003271' 037 00 0 00 004443' TMSGC < Status Errors 0.>
2415 003272' 004 11 0 00 004304' PNTDCP 9,NPAKRE
2416 003273' 037 00 0 00 004451' TMSGC < CRC Errors 0.>
2417 003274' 004 11 0 00 004305' PNTDCP 9,NPAKRC
2418 003275' 037 00 0 00 004457' TMSGC < DtCmp Errors (PKTS) 0.>
2419 003276' 004 11 0 00 004306' PNTDCP 9,NPAKRD
2420 003277' 037 00 0 00 004465' TMSGC < DtCmp Errors (WORDS) 0.>
2421 003300' 004 11 0 00 004307' PNTDCP 9,NPAKRW
2422 003301' 263 17 0 00 000000 RTN
2423
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 53
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0896
2424 SUBTTL Miscellanous Tests
2425
2426 ;#********************************************************************
2427 ;* TEST 52 - Crossed CI Cables Test
2428 ;
2429 ; Description: This test sends packets on Path A and verifies
2430 ; that they are received on Path A, and packets on
2431 ; Path B which should be received on Path B. If the
2432 ; CI cables are connected incorrectly, packets sent
2433 ; on one path may be received on the wrong path.
2434 ;
2435 ; Procedure: KL> Load microcode
2436 ; KL> Port Clear
2437 ; KL> Start port
2438 ;
2439 ; KL> Build a loopback packet, insert on command
2440 ; queue, and wait for a response
2441 ; KL> Verify proper response
2442 ; KL> Verify data portion of packet received properly
2443 ; If failed - print error message and exit test
2444 ;
2445 ; Do for:
2446 ; data patterns: zero's (Path A)
2447 ; one's (Path B)
2448 ; text length (words): 16
2449 ; 50 packets on each path
2450 ;
2451 ; FRU: Link Module or CI cables ...
2452 ;#********************************************************************
2453
2454 000062 T52PAK==^D50 ; number of packets to send
2455
2456 ; Initialization
2457
2458 003302' 201 00 0 00 000000' TST52: MOVEI Z5 ; get address of module start
2459 003303' 260 17 0 00 003021* GO TRACE ; handle trace output
2460 003304' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
2461 003305' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
2462 003306' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
2463 003307' 260 17 0 00 003025* GO IPACLR ; do a 'port clear'
2464 003310' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
2465 003311' 260 17 0 00 003027* GO TFLOAD ; load operational microcode
2466 GO [MOVEM TERMES ; error - save error message
2467 SETO ERFLG,
2468 003312' 260 17 0 00 004310' RTN]
2469 003313' 260 17 0 00 003031* GO RDNODE ; read node address
2470 003314' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
2471 003315' 202 01 0 00 003033* MOVEM 1,CPORT ; save our port number
2472 003316' 027 00 0 00 003517' SCOPER MA52 ; print error message
2473 003317' 255 00 0 00 000000 JFCL ; loop on error
2474 003320' 254 00 0 00 003513' JRST TX52 ; altmode exit
2475 003321' 326 15 0 00 003513' JUMPN ERFLG,TX52 ; error yet? yes - abort test
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 54
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0897
2476
2477 ; Start port
2478
2479 003322' 260 17 0 00 003040* GO TIDLE ; start port
2480 003323' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
2481 003324' 027 00 0 00 003521' SCOPER MB52 ; print error message
2482 003325' 255 00 0 00 000000 JFCL ; loop on error
2483 003326' 254 00 0 00 003513' JRST TX52 ; altmode exit
2484 003327' 326 15 0 00 003513' JUMPN ERFLG,TX52 ; error yet? yes - abort test
2485
2486 ; Enable the port
2487
2488 003330' 260 17 0 00 003046* GO SETENA ; ensure the port is enabled
2489 003331' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
2490 003332' 027 00 0 00 003524' SCOPER MC52 ; print error message
2491 003333' 255 00 0 00 000000 JFCL ; loop on error
2492 003334' 254 00 0 00 003513' JRST TX52 ; altmode exit
2493 003335' 326 15 0 00 003513' JUMPN ERFLG,TX52 ; error yet? yes - abort test
2494
2495 ; Initialize statistics
2496
2497 003336' 402 00 0 00 004301' SETZM NPAKS ; clear sent count
2498 003337' 402 00 0 00 004302' SETZM NPAKSE ; clear sent status error count
2499 003340' 402 00 0 00 004303' SETZM NPAKR ; clear recv count
2500 003341' 402 00 0 00 005406' SETZM NPAKAA# ; clear recv sent path A count (Path A)
2501 003342' 402 00 0 00 005407' SETZM NPAKAB# ; clear recv sent path A count (Path B)
2502 003343' 402 00 0 00 005410' SETZM NPAKBA# ; clear recv sent path B count (Path A)
2503 003344' 402 00 0 00 005411' SETZM NPAKBB# ; clear recv sent path B count (Path B)
2504 003345' 402 00 0 00 004304' SETZM NPAKRE ; clear recv status error count
2505
2506 ; Initialize packet data
2507
2508 003346' 402 00 0 00 003055* SETZM TFMFLG ; set to COMPAT mode
2509 003347' 402 00 0 00 003056* SETZM TRSFLG ; set no response requested
2510 003350' 201 00 0 00 000001 MOVEI 1 ; set data pattern to
2511 003351' 202 00 0 00 003112* MOVEM TPAT ; zeros pattern
2512 003352' 402 00 0 00 003106* SETZM TBYTE ; clear byte count
2513 003353' 201 00 0 00 000100 MOVEI ^D64 ; get length
2514 003354' 202 00 0 00 003110* MOVEM TWORD ; save it
2515 003355' 200 00 0 00 003315* MOVE CPORT ; get our port number
2516 003356' 202 00 0 00 000322* MOVEM TDPORT ; set it up
2517 003357' 201 00 0 00 000001 MOVEI 1 ; initialize to path A
2518 003360' 202 00 0 00 003054* MOVEM TPTFLG ; ...
2519 003361' 201 11 0 00 000015 MOVEI OP,SNDLB ; set op code (LOOPBACK)
2520 003362' 260 17 0 00 000324* GO BPACK ; set up packet data
2521 003363' 402 00 0 00 003152* SETZM TSTSUB ; initialize subtest number
2522 003364' 402 00 0 00 005412' SETZM RQAFLG# ; clear response queue available flag
2523 003365' 402 00 0 00 005404' SETZM DUMPP ; clear 'dump possible' flag
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 55
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0898
2524
2525 ; Increment packet number
2526
2527 003366' 350 01 0 00 003363* TA52: AOS 1,TSTSUB ; increment packet number
2528 003367' 307 01 0 00 000062 CAIG 1,T52PAK ; done yet?
2529 003370' 254 00 0 00 003401' JRST TA52A ; no - continue
2530 003371' 201 00 0 00 000002 MOVEI 2 ; yes - set data pattern to ones
2531 003372' 202 00 0 00 003351* MOVEM TPAT ; ...
2532 003373' 201 00 0 00 000002 MOVEI 2 ; initialize to path B
2533 003374' 202 00 0 00 003360* MOVEM TPTFLG ; ...
2534 003375' 201 11 0 00 000015 MOVEI OP,SNDLB ; set op code (LOOPBACK)
2535 003376' 260 17 0 00 003362* GO BPACK ; set up packet data
2536 003377' 303 01 0 00 000144 CAILE 1,T52PAK*2 ; done with both sets of packets?
2537 003400' 254 00 0 00 003450' JRST TE52 ; yes - check test results
2538 003401' 400 06 0 00 000000 TA52A: SETZ 6, ; clear hung count
2539
2540 ; Send a packet
2541
2542 003402' 037 07 0 00 000003 TB52: TTALTM ; altmode typed?
2543 003403' 334 00 0 00 000000 SKIPA ; no - keep checking CSR, etc.
2544 003404' 476 00 0 00 003124* SETOM ALTF ; yes - set flag
2545 003405' 332 00 0 00 003404* SKIPE ALTF ; altmode flagged?
2546 003406' 254 00 0 00 003513' JRST TX52 ; yes - exit
2547 003407' 336 00 0 00 003127* SKIPN LCHAR ; last character in here already?
2548 003410' 202 00 0 00 003407* MOVEM LCHAR ; no - save 'last char typed'
2549 003411' 260 17 0 00 003130* GO PSTAMP ; check for S typed
2550 003412' 400 07 0 00 000000 SETZ 7, ; clear 'packet put on queue' flag
2551 003413' 261 17 0 00 000013 PUT Q ; save queue number
2552 003414' 201 13 0 00 000006 MOVEI Q,6 ; get DGM free queue number
2553 003415' 260 17 0 00 003135* GO CHKINT ; get list of queue entries
2554 003416' 255 00 0 00 000000 JFCL ; ignore error
2555 003417' 476 00 0 00 000000# SETOM PCB+26 ; reset the interlock
2556 003420' 262 17 0 00 000013 GET Q ; restore queue number
2557 003421' 200 00 0 00 003153* MOVE NUMENT ; get entry count
2558 003422' 305 00 0 00 000002 CAIGE 2 ; 2 or more?
2559 003423' 254 00 0 00 003434' JRST TC52 ; no - continue
2560 003424' 400 13 0 00 000000 SETZ Q, ; set to cmd queue #3
2561 003425' 260 17 0 00 003145* GO INSQUE ; insert into queue
2562 003426' 334 00 0 00 000000 SKIPA ; failed - continue
2563 003427' 474 07 0 00 000000 SETO 7, ; set 'packet put on queue' flag
2564 003430' 332 00 0 00 000007 SKIPE 7 ; put on cmd queue?
2565 003431' 350 00 0 00 004301' AOS NPAKS ; yes - increment packet sent count
2566 003432' 337 00 0 00 003421* SKIPG NUMENT ; was the queue empty?
2567 GO [GO RDCSR ; yes - set 'CMDQAV'
2568 MOVEI 1,PENABL!MPRUN
2569 TRZ 1,RESQAV
2570 TRO 1,CMDQAV
2571 GO LDCSR
2572 003433' 260 17 0 00 004313' RTN]
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 56
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0899
2573
2574 ; Check for a response
2575
2576 003434' 260 17 0 00 004167' TC52: GO CHKRQV ; check response queue available
2577 003435' 260 17 0 00 003201* GO CHKRSP ; check for RspQ entry
2578 JRST [SETZM RQAFLG ; no entry found - continue
2579 MOVE 1,PCB+21 ; get response queue FLINK
2580 GO CONVIR ; convert to virtual
2581 CAIE 1,PCB+21 ; queue really empty?
2582 SETOM RQAFLG ; no - set rsp queue avail flag
2583 003436' 254 00 0 00 005106' JRST TD52]
2584 003437' 400 06 0 00 000000 SETZ 6, ; clear hung count
2585 003440' 260 17 0 00 004141' GO MCHECK ; determine results
2586 003441' 260 17 0 00 003563' GO T52CHK ; check path bits
2587 003442' 254 00 0 00 003434' JRST TC52 ; keep looking for responses
2588
2589 ; No more responses
2590
2591 003443' 350 00 0 00 000006 TD52: AOS 6 ; increment hung count
2592 003444' 303 06 0 00 007640 CAILE 6,^D4000 ; check 4000 times and no response?
2593 JRST [SETOM DUMPP ; yes - set 'dump possible' flag
2594 003445' 254 00 0 00 005114' JRST TE52] ; and exit
2595 003446' 322 07 0 00 003402' JUMPE 7,TB52 ; send current packet? yes - go do so
2596 003447' 254 00 0 00 003366' JRST TA52 ; no - already did - go do next packet
2597
2598 ; Check for any stragglers
2599
2600 003450' 400 03 0 00 000000 TE52: SETZ 3, ; set up for RUNTME
2601 003451' 260 17 0 00 003207* GO RUNTME ; get current run time
2602 003452' 200 01 0 00 003210* MOVE 1,DEBTIM ; get time in milliseconds
2603 003453' 271 01 0 00 000310 ADDI 1,^D200 ; wait an addl 200 msecs
2604 003454' 202 01 0 00 005405' MOVEM 1,ENDTIM# ; save maximum time
2605 003455' 260 17 0 00 004167' TF52: GO CHKRQV ; check response queue available
2606 003456' 260 17 0 00 003435* GO CHKRSP ; check for RspQ entry
2607 JRST [SETZM RQAFLG ; no entry found - continue
2608 MOVE 1,PCB+21 ; get response queue FLINK
2609 GO CONVIR ; convert to virtual
2610 CAIE 1,PCB+21 ; queue really empty?
2611 SETOM RQAFLG ; no - set rsp queue avail flag
2612 003457' 254 00 0 00 005116' JRST TG52]
2613 003460' 260 17 0 00 004141' GO MCHECK ; determine results
2614 003461' 260 17 0 00 003563' GO T52CHK ; check path bits
2615 003462' 254 00 0 00 003455' JRST TF52 ; look for next packet
2616
2617 ; Check if time expired
2618
2619 003463' 400 03 0 00 000000 TG52: SETZ 3, ; set up for RUNTME
2620 003464' 260 17 0 00 003451* GO RUNTME ; get current run time
2621 003465' 200 01 0 00 003452* MOVE 1,DEBTIM ; get time in milliseconds
2622 003466' 317 01 0 00 005405' CAMG 1,ENDTIM ; time expired yet?
2623 003467' 254 00 0 00 003455' JRST TF52 ; no - keep looping
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 57
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0900
2624
2625 ; Done with test - now check results
2626
2627 003470' 200 00 0 00 004301' TH52: MOVE NPAKS ; get number of packets sent
2628 003471' 302 00 0 00 000144 CAIE T52PAK*2 ; correct number?
2629 003472' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
2630 003473' 200 00 0 00 004302' MOVE NPAKSE ; get status errors
2631 003474' 303 00 0 00 000012 CAILE T52PAK*2/^D10 ; more than 10% received?
2632 003475' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
2633 003476' 200 00 0 00 004303' MOVE NPAKR ; get receive count
2634 003477' 305 00 0 00 000132 CAIGE T52PAK*2*^D9/^D10 ; more than 90% received?
2635 003500' 474 15 0 00 000000 SETO ERFLG, ; no - set error flag
2636 003501' 200 00 0 00 004304' MOVE NPAKRE ; number of receive status errors
2637 003502' 303 00 0 00 000012 CAILE T52PAK*2/^D10 ; more than 10% received?
2638 003503' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2639 003504' 332 00 0 00 005407' SKIPE NPAKAB ; any sent Path A received Path B?
2640 003505' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2641 003506' 332 00 0 00 005410' SKIPE NPAKBA ; any sent Path B received Path A?
2642 003507' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2643 003510' 027 00 0 00 003527' SCOPER MD52 ; print error message
2644 003511' 255 00 0 00 000000 JFCL ; loop on error
2645 003512' 254 00 0 00 003513' JRST TX52 ; altmode exit
2646
2647 ; End of test
2648
2649 003513' 260 17 0 00 003237* TX52: GO TSTEND ; handle end of test processing
2650 003514' 260 17 0 00 003240* GO SETDSA ; disable the port
2651 003515' 260 17 0 00 003241* GO ISTOP ; stop the port
2652 003516' 263 17 0 00 000000 RTN ; return
2653
2654 ; Error messages
2655
2656 003517' 260000 004270' MA52: TXALL!CALL!LODERR
2657 003520' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2658
2659 003521' 160000 004343' MB52: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
2660 003522' 260000 004242' TXALL!CALL!PDUMP
2661 003523' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2662
2663 003524' 160000 004351' MC52: TXALL!MSG![ASCIZ /Could not enable the port/]
2664 003525' 260000 004242' TXALL!CALL!PDUMP
2665 003526' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2666
2667 003527' 160000 004357' MD52: TXALL!MSG![ASCIZ /Errors noted with external loopback:/]
2668 003530' 260000 003533' TXALL!CALL!MD52PN
2669 003531' 260000 004242' TXALL!CALL!PDUMP
2670 003532' 170000 005124' LAST!TXALL!MSG![ASCIZ /FRU: CI cables crossed or misconnected/]
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 58
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0901
2671
2672 003533' 037 00 0 00 004406' MD52PN: TMSGC < What Expected Actual>
2673 003534' 037 00 0 00 004416' TMSGC <----------- -------- ------>
2674 003535' 037 00 0 00 004426' TMSGC <Packets Sent >
2675 003536' 004 11 0 00 005134' PNTDCP 9,[T52PAK*2]
2676 003537' 004 11 0 00 004301' PNTDCP 9,NPAKS
2677 003540' 037 00 0 00 004433' TMSGC < Status Errors >
2678 003541' 004 11 0 00 004356' PNTDCP 9,[0]
2679 003542' 004 11 0 00 004302' PNTDCP 9,NPAKSE
2680 003543' 037 00 0 00 004437' TMSGC <Packets Rcvd >
2681 003544' 004 11 0 00 005134' PNTDCP 9,[T52PAK*2]
2682 003545' 004 11 0 00 004303' PNTDCP 9,NPAKR
2683 003546' 037 00 0 00 004443' TMSGC < Status Errors 0.>
2684 003547' 004 11 0 00 004304' PNTDCP 9,NPAKRE
2685 003550' 037 00 0 00 005135' TMSGC < Snt A / Rcv A >
2686 003551' 004 11 0 00 005141' PNTDCP 9,[T52PAK]
2687 003552' 004 11 0 00 005406' PNTDCP 9,NPAKAA
2688 003553' 037 00 0 00 005142' TMSGC < Snt A / Rcv B 0.>
2689 003554' 004 11 0 00 005407' PNTDCP 9,NPAKAB
2690 003555' 037 00 0 00 005150' TMSGC < Snt B / Rcv A 0.>
2691 003556' 004 11 0 00 005410' PNTDCP 9,NPAKBA
2692 003557' 037 00 0 00 005156' TMSGC < Snt B / Rcv B >
2693 003560' 004 11 0 00 005141' PNTDCP 9,[T52PAK]
2694 003561' 004 11 0 00 005411' PNTDCP 9,NPAKBB
2695 003562' 263 17 0 00 000000 RTN
2696
2697 ; Check path bits
2698
2699 003563' 135 00 0 00 005162' T52CHK: LDB [POINT 8,RSPONS+3,31] ; get port number
2700 003564' 312 00 0 00 003355* CAME CPORT ; packet from us?
2701 003565' 263 17 0 00 000000 RTN ; no - ignore - exit
2702 003566' 135 11 0 00 005163' LDB OP,[POINT 8,RSPONS+3,23]; get op code
2703 003567' 305 11 0 00 000040 CAIGE OP,40 ; is this response of a packet we sent?
2704 003570' 263 17 0 00 000000 RTN ; no - ignore - exit
2705 003571' 135 01 0 00 005164' LDB 1,[POINT 2,RSPONS+3,14] ; get path returned on
2706 003572' 270 01 0 00 000001 ADD 1,1 ; multiply by 2
2707 003573' 332 00 0 00 000000# SKIPE RSPONS+10 ; sent on Path A?
2708 003574' 350 00 0 00 000001 AOS 1 ; no - offset by 1
2709 XCT [JFCL ; increment path count for packets
2710 JFCL ; sent on Path A or Path B
2711 AOS NPAKBB
2712 AOS NPAKAB
2713 AOS NPAKBA
2714 AOS NPAKAA
2715 JFCL
2716 003575' 256 00 0 01 005165' JFCL](1)
2717 003576' 263 17 0 00 000000 RTN ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 59
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0902
2718
2719 ;#********************************************************************
2720 ;* TEST 53 - REQID Test
2721 ;
2722 ; Description: This test sends request ID packets to all nodes.
2723 ; It builds a configuration table of the result and
2724 ; prints it.
2725 ;
2726 ; Procedure: KL> Read node address
2727 ; KL> Initialize configuration data
2728 ; KL> Initialize packet default data
2729 ; KL> Start up the port
2730 ; Failed - print out error data
2731 ;
2732 ; KL> Do a request ID to node 0
2733 ; Build the packet and put on command queue
2734 ; Wait for a response
2735 ; Decode response
2736 ; Build configuration table entry
2737 ; Repeat for nodes 0-MAXPOR (17)
2738 ;
2739 ; KL> Print out the results
2740 ;
2741 ; FRU: Link module
2742 ;#********************************************************************
2743
2744 ; Initialization
2745
2746 003577' 201 00 0 00 000000' TST53: MOVEI Z5 ; get address of module start
2747 003600' 260 17 0 00 003303* GO TRACE ; handle trace output
2748 003601' 402 00 0 00 004214' SETZM PKSAV1 ; clear 'have status error data' flag
2749 003602' 402 00 0 00 004227' SETZM PKSAV2 ; clear 'have data error data' flag
2750 003603' 476 00 0 00 005404' SETOM DUMPP ; set 'dump possible' flag
2751 003604' 260 17 0 00 003307* GO IPACLR ; do a 'port clear'
2752
2753 ; First read our node address
2754
2755 003605' 260 17 0 00 003313* GO RDNODE ; read node address
2756 003606' 474 15 0 00 000000 SETO ERFLG, ; failed - set error flag
2757 003607' 202 01 0 00 003564* MOVEM 1,CPORT ; save our port number
2758 003610' 027 00 0 00 003731' SCOPER MA53 ; print error message
2759 003611' 255 00 0 00 000000 JFCL ; loop on error
2760 003612' 254 00 0 00 003725' JRST TX53 ; altmode exit
2761 003613' 326 15 0 00 003725' JUMPN ERFLG,TX53 ; error? yes - exit
2762
2763 ; Initialize configuration data
2764
2765 003614' 402 00 0 00 000000* SETZM CVALID ; initialize config table valid flag
2766 003615' 402 00 0 00 000000* SETZM CTABLE ; clear existing configuration table
2767 003616' 200 00 0 00 005175' MOVE [CTABLE,,CTABLE+1] ; ...
2768 003617' 251 00 0 00 000000# BLT CTABLE+MAXPOR ; ...
2769 003620' 200 00 0 00 005202' MOVE [400600,,[TMSG <KL10-Self >]]
2770 003621' 202 00 0 01 003615* MOVEM CTABLE(1) ; save our port definition
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 60
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0903
2771
2772 ; Initialize packet default data
2773
2774 003622' 402 00 0 00 003346* SETZM TFMFLG ; initialize format flag to COMPAT
2775 003623' 402 00 0 00 003347* SETZM TRSFLG ; initialize to not request responses
2776 003624' 402 00 0 00 003374* SETZM TPTFLG ; initialize to auto path
2777 003625' 402 00 0 00 003113* SETZM TXCTID ; initialize both words of the
2778 003626' 402 00 0 00 000000# SETZM TXCTID+1 ; transaction ID
2779 003627' 476 00 0 00 003356* SETOM TDPORT ; initialize destination port number
2780
2781 ; Load operational microcode
2782
2783 003630' 402 00 0 00 005413' SETZM TERMES ; clear ucode load error message
2784 003631' 260 17 0 00 003311* GO TFLOAD ; load operational microcode
2785 GO [MOVEM TERMES ; error - save error message
2786 SETO ERFLG,
2787 003632' 260 17 0 00 004310' RTN]
2788 003633' 027 00 0 00 003733' SCOPER MB53 ; print error message
2789 003634' 255 00 0 00 000000 JFCL ; loop on error
2790 003635' 254 00 0 00 003725' JRST TX53 ; altmode exit
2791 003636' 326 15 0 00 003725' JUMPN ERFLG,TX53 ; error? yes - exit
2792
2793 ; Start up the port
2794
2795 003637' 260 17 0 00 003322* GO TIDLE ; ensure in idle loop
2796 003640' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
2797 003641' 027 00 0 00 003735' SCOPER MC53 ; print error message
2798 003642' 255 00 0 00 000000 JFCL ; loop on error
2799 003643' 254 00 0 00 003725' JRST TX53 ; altmode exit
2800 003644' 326 15 0 00 003725' JUMPN ERFLG,TX53 ; error yet? yes - abort test
2801
2802 ; Next enable the port
2803
2804 003645' 260 17 0 00 003330* GO SETENA ; ensure the port is enabled
2805 003646' 474 15 0 00 000000 SETO ERFLG, ; error - set error flag
2806 003647' 027 00 0 00 003740' SCOPER MD53 ; print error message
2807 003650' 255 00 0 00 000000 JFCL ; loop on error
2808 003651' 254 00 0 00 003725' JRST TX53 ; altmode exit
2809 003652' 326 15 0 00 003725' JUMPN ERFLG,TX53 ; error yet? yes - abort test
2810
2811 ; Now do the request ID's
2812
2813 003653' 350 01 0 00 003627* TA53: AOS 1,TDPORT ; point to next port
2814 003654' 303 01 0 00 000017 CAILE 1,MAXPOR ; done yet?
2815 003655' 254 00 0 00 003720' JRST TC53 ; yes - continue
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 61
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0904
2816
2817 ; Build the packet and put on command queue
2818
2819 003656' 201 11 0 00 000005 MOVEI OP,5 ; set up to do Request ID's
2820 003657' 260 17 0 00 003376* GO BPACK ; build a request ID packet
2821 003660' 201 13 0 00 000003 MOVEI Q,3 ; place entries on cmd queue 0
2822 003661' 260 17 0 00 003425* GO INSQUE ; insert on command queue
2823 003662' 255 00 0 00 000000 JFCL ; error - ignore
2824 003663' 260 17 0 00 000603* GO RDCSR ; read CSR
2825 003664' 255 00 0 00 000000 JFCL ; error - ignore
2826 003665' 660 01 0 00 000400 TRO 1,CMDQAV ; set the 'CMDQAV' bit
2827 003666' 260 17 0 00 000665* GO LDCSR ; write the CSR register
2828
2829 ; Wait for a response
2830
2831 003667' 260 17 0 00 000673* GO RWAIT ; wait for response
2832 003670' 255 00 0 00 000000 JFCL ; timeout - ignore
2833 003671' 260 17 0 00 003456* TB53: GO CHKRSP ; check for response entry
2834 003672' 254 00 0 00 003653' JRST TA53 ; no responses - try next port
2835
2836 ; Got a response - now decode it
2837
2838 003673' 135 02 0 00 005203' LDB 2,[POINT 8,RSPONS+3,23] ; get opcode
2839 003674' 302 02 0 00 000053 CAIE 2,53 ; 'ID Received' packet?
2840 003675' 254 00 0 00 003671' JRST TB53 ; no - check next response
2841 003676' 135 02 0 00 005204' LDB 2,[POINT 1,RSPONS+3,0] ; get status error bit
2842 003677' 326 02 0 00 003671' JUMPN 2,TB53 ; error - yes - check next response
2843 003700' 135 01 0 00 005205' LDB 1,[POINT 8,RSPONS+3,31] ; get port number which sent packet
2844
2845 ; Build configuration table entry
2846
2847 003701' 400 03 0 00 000000 SETZ 3, ; clear status location
2848 003702' 335 00 0 00 000000# SKIPGE RSPONS+6 ; dual path port?
2849 003703' 661 03 0 00 400000 TLO 3,400000 ; yes - set the flag
2850 003704' 135 02 0 00 005206' LDB 2,[POINT 1,RSPONS+9,23] ; get maintenance mode bit
2851 003705' 332 00 0 00 000002 SKIPE 2 ; maintenance mode set?
2852 003706' 661 03 0 00 200000 TLO 3,200000 ; yes - set the flag
2853 003707' 135 02 0 00 005207' LDB 2,[POINT 2,RSPONS+9,22] ; get port state
2854 003710' 137 02 0 00 005210' DPB 2,[POINT 2,3,3] ; save it
2855 003711' 135 02 0 00 005211' LDB 2,[POINT 6,RSPONS+6,31] ; get port type
2856 003712' 137 02 0 00 005212' DPB 2,[POINT 8,3,11] ; save it
2857 003713' 303 02 0 00 000007 CAILE 2,7 ; between 0 and 7?
2858 003714' 201 02 0 00 000007 MOVEI 2,7 ; no - limit to 7
2859 003715' 541 03 0 02 000000* HRRI 3,CTYPE(2) ; insert address of text
2860 003716' 202 03 0 01 003621* MOVEM 3,CTABLE(1) ; save configuration data
2861 003717' 254 00 0 00 003653' JRST TA53 ; loop till done
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 62
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0905
2862
2863 ; All done - shut down the port and print out the results
2864
2865 003720' 260 17 0 00 003514* TC53: GO SETDSA ; disable the port
2866 003721' 260 17 0 00 003515* GO ISTOP ; stop the port
2867 003722' 476 00 0 00 003614* SETOM CVALID ; set config table valid flag
2868 003723' 337 00 0 00 000000* SKIPG TSTREP ; on first pass?
2869 003724' 260 17 0 00 000000* GO CONPNT ; yes - print configuration
2870
2871 ; End of test
2872
2873 003725' 260 17 0 00 003513* TX53: GO TSTEND ; handle end of test processing
2874 003726' 260 17 0 00 003720* GO SETDSA ; disable the port
2875 003727' 260 17 0 00 003721* GO ISTOP ; stop the port
2876 003730' 263 17 0 00 000000 RTN ; return
2877
2878 ; Error messages
2879
2880 003731' 160000 005213' MA53: TXALL!MSG![ASCIZ /Could not read node address/]
2881 003732' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2882
2883 003733' 260000 004270' MB53: TXALL!CALL!LODERR
2884 003734' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2885
2886 003735' 160000 004343' MC53: TXALL!MSG![ASCIZ /Port did not enter IDLE loop/]
2887 003736' 260000 004242' TXALL!CALL!PDUMP
2888 003737' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2889
2890 003740' 160000 004351' MD53: TXALL!MSG![ASCIZ /Could not enable the port/]
2891 003741' 260000 004242' TXALL!CALL!PDUMP
2892 003742' 170000 004337' LAST!TXALL!MSG![ASCIZ /FRU: Port Modules/]
2893
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 63
DFCIA5 MAC 27-Oct-84 18:58 Miscellanous Tests SEQ 0906
2894
2895 ;#********************************************************************
2896 ;* TEST 54 - Statistics Test
2897 ;
2898 ; Description: This test merely prints statistics after pass #1
2899 ; and thereafter every 20 passes.
2900 ;
2901 ; Procedure: KL> Print accumulated statistics
2902 ;
2903 ; FRU: None
2904 ;#********************************************************************
2905
2906 ; Initialization
2907
2908 003743' 201 00 0 00 000000' TST54: MOVEI Z5 ; get address of module start
2909 003744' 260 17 0 00 003600* GO TRACE ; handle trace output
2910 003745' 200 00 0 00 003723* MOVE TSTREP ; get pass count
2911 003746' 231 00 0 00 000024 IDIVI ^D20 ; divide by 20
2912 003747' 336 00 0 00 000001 SKIPN 1 ; remainder?
2913 003750' 260 17 0 00 000000* GO SREPOR ; no - print statistics
2914 003751' 263 17 0 00 000000 RTN ; exit
2915
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 64
DFCIA5 MAC 27-Oct-84 18:58 Miscellaneous Routines SEQ 0907
2916 SUBTTL Miscellaneous Routines
2917
2918 ;#********************************************************************
2919 ;* MPACK - Build a packet based on parameters in AC1
2920 ;#********************************************************************
2921
2922 003752' 200 01 0 00 003625* MPACK: MOVE 1,TXCTID ; get XCT-ID
2923 003753' 556 01 0 00 003372* HLRZM 1,TPAT ; set up data pattern
2924 003754' 135 00 0 00 005221' LDB [POINT 14,1,31] ; get word count
2925 003755' 202 00 0 00 003354* MOVEM TWORD ; set up word count
2926 003756' 402 00 0 00 003352* SETZM TBYTE ; clear byte count also
2927 003757' 200 00 0 00 003607* MOVE CPORT ; get our port number
2928 003760' 202 00 0 00 003653* MOVEM TDPORT ; set it up
2929 003761' 261 17 0 00 000011 PUT OP ; save op code
2930 003762' 303 11 0 00 000040 CAILE OP,40 ; in range 1-40?
2931 003763' 275 11 0 00 000040 SUBI OP,40 ; no - normalize correctly
2932 003764' 260 17 0 00 003657* GO BPACK ; set up packet data
2933 003765' 262 17 0 00 000011 GET OP ; restore op code
2934 003766' 263 17 0 00 000000 RTN
2935
2936
2937 ;#********************************************************************
2938 ;* MPACKN - Build a packet based on parameters in AC1
2939 ;#********************************************************************
2940
2941 003767' 200 01 0 00 003752* MPACKN: MOVE 1,TXCTID ; get XCT-ID
2942 003770' 556 01 0 00 003753* HLRZM 1,TPAT ; set up data pattern
2943 003771' 135 00 0 00 005221' LDB [POINT 14,1,31] ; get word count
2944 003772' 202 00 0 00 003755* MOVEM TWORD ; set up word count
2945 003773' 402 00 0 00 003756* SETZM TBYTE ; clear byte count also
2946 003774' 200 00 0 00 003757* MOVE CPORT ; get our port number
2947 003775' 202 00 0 00 003760* MOVEM TDPORT ; set it up
2948 003776' 261 17 0 00 000011 PUT OP ; save op code
2949 003777' 303 11 0 00 000040 CAILE OP,40 ; in range 1-40?
2950 004000' 275 11 0 00 000040 SUBI OP,40 ; no - normalize correctly
2951 004001' 260 17 0 00 000000* GO BPACKN ; set up packet data
2952 004002' 262 17 0 00 000011 GET OP ; restore op code
2953 004003' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 65
DFCIA5 MAC 27-Oct-84 18:58 Miscellaneous Routines SEQ 0908
2954
2955 ;#********************************************************************
2956 ;* MCOMP - Do data compare of a packet received
2957 ;
2958 ; For each packet received, the transaction ID contains the definition
2959 ; of what the packet should look like. This routine first builds a
2960 ; a packet based on that data, then it does the data compare.
2961 ;#********************************************************************
2962
2963 004004' 135 00 0 00 005222' MCOMP: LDB [POINT 8,RSPONS+3,31] ; get port number
2964 004005' 312 00 0 00 003774* CAME CPORT ; packet from us?
2965 004006' 263 17 0 00 000000 RTN ; no - ignore - exit
2966 004007' 135 11 0 00 005223' LDB OP,[POINT 8,RSPONS+3,23]; get op code
2967 004010' 307 11 0 00 000040 CAIG OP,40 ; is this a packet received?
2968 004011' 263 17 0 00 000000 RTN ; no - return
2969 004012' 261 17 0 00 003767* PUT TXCTID
2970 004013' 261 17 0 00 003770* PUT TPAT
2971 004014' 261 17 0 00 003772* PUT TWORD
2972 004015' 261 17 0 00 003773* PUT TBYTE
2973 004016' 261 17 0 00 005414' PUT TLEN
2974 004017' 200 01 0 00 000000# MOVE 1,RSPONS+5 ; get XCT-ID
2975 004020' 202 01 0 00 004012* MOVEM 1,TXCTID ; save it
2976 004021' 260 17 0 00 003767' GO MPACKN ; build packet data
2977 004022' 200 01 0 00 004014* MOVE 1,TWORD ; get word count
2978 004023' 271 01 0 00 000000# ADDI 1,RSPONS+4 ; get address of last word
2979 004024' 200 00 0 01 000000 MOVE (1) ; get data
2980 004025' 404 00 0 00 005224' AND [777774,,0] ; keep only leftmost 2 bytes
2981 004026' 306 11 0 00 000041 CAIN OP,41 ; datagram?
2982 004027' 202 00 0 01 000000 MOVEM (1) ; yes - save it
2983 004030' 400 06 0 00 000000 SETZ 6, ; initialize error count
2984 004031' 200 05 0 00 004022* MOVE 5,TWORD ; get word count
2985 004032' 200 00 0 05 000000# MCOMP0: MOVE PACKET+4(5) ; get correct
2986 004033' 332 00 0 00 000005 SKIPE 5 ; length word?
2987 004034' 620 00 0 00 000017 TRZ 17 ; no - mask out rightmost 4 bits
2988 004035' 312 00 0 05 000000# CAME RSPONS+4(5) ; same as actual?
2989 004036' 350 00 0 00 000006 AOS 6 ; no - increment error count
2990 004037' 365 05 0 00 004032' SOJGE 5,MCOMP0 ; loop till done
2991 004040' 322 06 0 00 004044' JUMPE 6,MCOMPX ; errors? no - exit
2992 004041' 350 00 0 00 004306' AOS NPAKRD ; yes - increment data compare count
2993 004042' 272 06 0 00 004307' ADDM 6,NPAKRW ; count words in error
2994 004043' 260 17 0 00 004207' GO SAVPK2 ; save packet if needed
2995 004044' 262 17 0 00 005414' MCOMPX: GET TLEN
2996 004045' 262 17 0 00 004015* GET TBYTE
2997 004046' 262 17 0 00 004031* GET TWORD
2998 004047' 262 17 0 00 004013* GET TPAT
2999 004050' 262 17 0 00 004020* GET TXCTID
3000 004051' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 66
DFCIA5 MAC 27-Oct-84 18:58 Miscellaneous Routines SEQ 0909
3001
3002 ;#********************************************************************
3003 ;* HCOMP - Do data compare of a packet received (Hiden mode)
3004 ;
3005 ; For each packet received, the transaction ID contains the definition
3006 ; of what the packet should look like. This routine first builds a
3007 ; a packet based on that data, then it does the data compare.
3008 ;#********************************************************************
3009
3010 004052' 135 00 0 00 005225' HCOMP: LDB [POINT 8,RSPONS+3,31] ; get port number
3011 004053' 312 00 0 00 004005* CAME CPORT ; packet from us?
3012 004054' 263 17 0 00 000000 RTN ; no - ignore - exit
3013 004055' 135 11 0 00 005226' LDB OP,[POINT 8,RSPONS+3,23]; get op code
3014 004056' 307 11 0 00 000040 CAIG OP,40 ; is this a packet received?
3015 004057' 263 17 0 00 000000 RTN ; no - return
3016 004060' 261 17 0 00 004050* PUT TXCTID
3017 004061' 261 17 0 00 004047* PUT TPAT
3018 004062' 261 17 0 00 004046* PUT TWORD
3019 004063' 261 17 0 00 004045* PUT TBYTE
3020 004064' 261 17 0 00 005414' PUT TLEN
3021 004065' 200 01 0 00 000000# MOVE 1,RSPONS+5 ; get XCT-ID
3022 004066' 202 01 0 00 004060* MOVEM 1,TXCTID ; save it
3023 004067' 260 17 0 00 003767' GO MPACKN ; build packet data
3024 004070' 200 01 0 00 004062* MOVE 1,TWORD ; get word count
3025 004071' 271 01 0 00 000000# ADDI 1,RSPONS+4 ; get address of last word
3026 004072' 200 00 0 01 000000 MOVE (1) ; get data
3027 004073' 404 00 0 00 005224' AND [777774,,0] ; keep only leftmost 2 bytes
3028 004074' 306 11 0 00 000041 CAIN OP,41 ; datagram?
3029 004075' 202 00 0 01 000000 MOVEM (1) ; yes - save it
3030 004076' 400 06 0 00 000000 SETZ 6, ; initialize error count
3031 004077' 200 05 0 00 004070* MOVE 5,TWORD ; get word count
3032 004100' 200 00 0 05 000000# HCOMP0: MOVE PACKET+4(5) ; get correct
3033 004101' 312 00 0 05 000000# CAME RSPONS+4(5) ; same as actual?
3034 004102' 350 00 0 00 000006 AOS 6 ; no - increment error count
3035 004103' 365 05 0 00 004100' SOJGE 5,HCOMP0 ; loop till done
3036 004104' 322 06 0 00 004110' JUMPE 6,HCOMPX ; errors? no - exit
3037 004105' 350 00 0 00 004306' AOS NPAKRD ; yes - increment data compare count
3038 004106' 272 06 0 00 004307' ADDM 6,NPAKRW ; count words in error
3039 004107' 260 17 0 00 004207' GO SAVPK2 ; save packet if needed
3040 004110' 262 17 0 00 005414' HCOMPX: GET TLEN
3041 004111' 262 17 0 00 004063* GET TBYTE
3042 004112' 262 17 0 00 004077* GET TWORD
3043 004113' 262 17 0 00 004061* GET TPAT
3044 004114' 262 17 0 00 004066* GET TXCTID
3045 004115' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 67
DFCIA5 MAC 27-Oct-84 18:58 Miscellaneous Routines SEQ 0910
3046
3047 ;#********************************************************************
3048 ;* MCOMP2 - Compare RSPONS against contents of PACKET
3049 ;
3050 ; This is similar to MCOMP except that the packet data in PACKET is
3051 ; not constructed based on the packet data specification contained
3052 ; in the response, in RSPONS.
3053 ;#********************************************************************
3054
3055 004116' 135 00 0 00 005227' MCOMP2: LDB [POINT 8,RSPONS+3,31] ; get port number
3056 004117' 312 00 0 00 004053* CAME CPORT ; packet from us?
3057 004120' 263 17 0 00 000000 RTN ; no - ignore - exit
3058 004121' 135 11 0 00 005230' LDB OP,[POINT 8,RSPONS+3,23]; get op code
3059 004122' 307 11 0 00 000040 CAIG OP,40 ; is this a packet received?
3060 004123' 263 17 0 00 000000 RTN ; no - return
3061 004124' 400 06 0 00 000000 SETZ 6, ; initialize error count
3062 004125' 200 05 0 00 004112* MOVE 5,TWORD ; get word count
3063 004126' 200 00 0 05 000000# MCOM20: MOVE PACKET+4(5) ; get correct
3064 004127' 332 00 0 00 000005 SKIPE 5 ; length word?
3065 004130' 620 00 0 00 000017 TRZ 17 ; no - mask out rightmost 4 bits
3066 004131' 312 00 0 05 000000# CAME RSPONS+4(5) ; same as actual?
3067 004132' 350 00 0 00 000006 AOS 6 ; no - increment error count
3068 004133' 365 05 0 00 004126' SOJGE 5,MCOM20 ; loop till done
3069 004134' 322 06 0 00 004140' JUMPE 6,MCOM2X ; errors? no - exit
3070 004135' 350 00 0 00 004306' AOS NPAKRD ; yes - increment data compare count
3071 004136' 272 06 0 00 004307' ADDM 6,NPAKRW ; count words in error
3072 004137' 260 17 0 00 004207' GO SAVPK2 ; save packet if needed
3073 004140' 263 17 0 00 000000 MCOM2X: RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 68
DFCIA5 MAC 27-Oct-84 18:58 Miscellaneous Routines SEQ 0911
3074
3075 ;#********************************************************************
3076 ;* MCHECK - Check results
3077 ;#********************************************************************
3078
3079 004141' 135 00 0 00 005231' MCHECK: LDB [POINT 8,RSPONS+3,31] ; get port number
3080 004142' 312 00 0 00 004117* CAME CPORT ; packet from us?
3081 004143' 263 17 0 00 000000 RTN ; no - ignore - exit
3082 004144' 135 11 0 00 005232' LDB OP,[POINT 8,RSPONS+3,23]; get op code
3083 004145' 301 11 0 00 000040 CAIL OP,40 ; is this response of a packet we sent?
3084 004146' 254 00 0 00 004155' JRST MCHEC1 ; no - tally differently
3085
3086 ; This is a packet received by dint of 'Rsp Requested' flag or error on
3087 ; transmission.
3088
3089 004147' 200 02 0 00 000000# MOVE 2,RSPONS+3 ; get status word
3090 004150' 603 02 0 00 400000 TLNE 2,400000 ; error bit set?
3091 JRST [AOS NPAKSE ; yes - incr sent status error count
3092 GO SAVPK1 ; and save packet data
3093 004151' 254 00 0 00 005233' RTN] ; and return
3094 004152' 603 02 0 00 110000 TLNE 2,110000 ; packet acked on some path?
3095 JRST [AOS NPAKSE ; yes - incr sent status error count
3096 GO SAVPK1 ; and save packet data
3097 004153' 254 00 0 00 005233' RTN] ; and return
3098 004154' 263 17 0 00 000000 RTN ; return
3099
3100 ; This is an actual response
3101
3102 004155' 350 00 0 00 004303' MCHEC1: AOS NPAKR ; increment packet recv count
3103 004156' 200 02 0 00 000000# MOVE 2,RSPONS+3 ; get status word
3104 004157' 607 02 0 00 400000 TLNN 2,400000 ; error bit set?
3105 004160' 263 17 0 00 000000 RTN ; no - exit
3106 004161' 350 00 0 00 004304' AOS NPAKRE ; yes - incr recv status error count
3107 004162' 260 17 0 00 004202' GO SAVPK1 ; save packet data
3108 004163' 135 00 0 00 005236' LDB [POINT 7,2,7] ; get status
3109 004164' 306 00 0 00 000011 CAIN 11 ; CRC Error?
3110 004165' 350 00 0 00 004305' AOS NPAKRC ; increment recv CRC error count
3111 004166' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 69
DFCIA5 MAC 27-Oct-84 18:58 Miscellaneous Routines SEQ 0912
3112
3113 ;#********************************************************************
3114 ;* CHKRQV - Check for response queue available
3115 ;#********************************************************************
3116
3117 004167' 332 00 0 00 005412' CHKRQV: SKIPE RQAFLG ; rsp queue available flag set?
3118 004170' 263 17 0 00 000000 RTN ; yes - return and process next entry
3119 004171' 261 17 0 00 000001 PUT 1 ; save AC1
3120 004172' 260 17 0 00 003663* GO RDCSR ; read CSR
3121 004173' 400 01 0 00 000000 SETZ 1, ; error - ignore
3122 004174' 602 01 0 00 000200 TRNE 1,RESQAV ; rsp queue available bit set?
3123 004175' 476 00 0 00 005412' SETOM RQAFLG ; yes - set flag
3124 004176' 606 01 0 00 000200 TRNN 1,RESQAV ; rsp queue available bit set?
3125 004177' 350 00 0 17 777777 AOS -1(P) ; no - take skip return
3126 004200' 262 17 0 00 000001 GET 1 ; restore AC1
3127 004201' 263 17 0 00 000000 RTN ; return
3128
3129
3130 ;#********************************************************************
3131 ;* SAVPK1 - Save packet data (status error packet)
3132 ;* SAVPK2 - Save packet data (data error packet)
3133 ;#********************************************************************
3134
3135 004202' 200 00 0 00 005237' SAVPK1: MOVE [RSPONS,,PKDAT1] ; build BLT pointer
3136 004203' 336 00 0 00 004214' SKIPN PKSAV1 ; already saving some data?
3137 004204' 251 00 0 00 004226' BLT PKDAT1+^D9 ; no - save the data
3138 004205' 476 00 0 00 004214' SETOM PKSAV1 ; set the flag
3139 004206' 263 17 0 00 000000 RTN ; return
3140
3141 004207' 200 00 0 00 005240' SAVPK2: MOVE [RSPONS,,PKDAT2] ; build BLT pointer
3142 004210' 336 00 0 00 004227' SKIPN PKSAV2 ; already saving some data?
3143 004211' 251 00 0 00 004241' BLT PKDAT2+^D9 ; no - save the data
3144 004212' 476 00 0 00 004227' SETOM PKSAV2 ; set the flag
3145 004213' 263 17 0 00 000000 RTN ; return
3146
3147 ; Save data areas
3148
3149 004214' 000000 000000 PKSAV1: 0 ; 'have the data' flag
3150 004215' PKDAT1: BLOCK ^D10 ; status error data
3151
3152 004227' 000000 000000 PKSAV2: 0 ; 'have the data' flag
3153 004230' PKDAT2: BLOCK ^D10 ; data error data
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 70
DFCIA5 MAC 27-Oct-84 18:58 Miscellaneous Routines SEQ 0913
3154
3155 ;#********************************************************************
3156 ; PDUMP - Print addl data
3157 ;#********************************************************************
3158
3159 004242' 332 00 0 00 004214' PDUMP: SKIPE PKSAV1 ; have the status error data?
3160 GO [TMSGC <**** Packet with status error ****>
3161 MOVEI 2,PKDAT1 ; yes - get address of data to print
3162 GO PKPNT ; and print it
3163 SETZM PKSAV1
3164 004243' 260 17 0 00 005251' RTN]
3165 004244' 332 00 0 00 004227' SKIPE PKSAV2 ; have the data error data?
3166 GO [TMSGC <**** Packet with data error ****>
3167 MOVEI 2,PKDAT2 ; yes - get address of data to print
3168 GO PKPNT ; and print it
3169 SETZM PKSAV2
3170 004245' 260 17 0 00 005265' RTN]
3171 004246' 336 00 0 00 000000* SKIPN DDEBUG ; dump on error flag set?
3172 004247' 263 17 0 00 000000 RTN ; no - exit
3173 004250' 332 00 0 00 005404' SKIPE DUMPP ; 'dump possible' flag set?
3174 004251' 260 17 0 00 000000* GO DDUMP ; yes - dump
3175 004252' 263 17 0 00 000000 RTN ; no - exit
3176
3177
3178 ;#********************************************************************
3179 ;* PKPNT - Print special saved packet data
3180 ;#********************************************************************
3181
3182 004253' 474 03 0 00 000000 PKPNT: SETO 3, ; clear word pointer
3183 004254' 350 00 0 00 000003 PKPN0: AOS 3 ; point to next word
3184 004255' 301 03 0 00 000012 CAIL 3,^D10 ; done yet?
3185 004256' 263 17 0 00 000000 RTN ; yes - return
3186 004257' 037 00 0 00 005272' TMSGC <RSPONS+> ; print word address
3187 004260' 200 00 0 00 000003 MOVE 3 ; ...
3188 004261' 037 16 0 00 000003 PNTOCS ; ...
3189 004262' 037 00 0 00 005274' TMSG </ >
3190 004263' 200 01 0 00 000002 MOVE 1,2 ; get data address
3191 004264' 270 01 0 00 000003 ADD 1,3 ; add in offset
3192 004265' 200 00 0 01 000000 MOVE (1) ; get data
3193 004266' 037 13 0 00 000000 PNTHW ; print it
3194 004267' 254 00 0 00 004254' JRST PKPN0 ; loop till done
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 71
DFCIA5 MAC 27-Oct-84 18:58 Miscellaneous Routines SEQ 0914
3195
3196 ;#********************************************************************
3197 ;* LODERR - Print ucode load error
3198 ;#********************************************************************
3199
3200 004270' 336 00 0 00 005413' LODERR: SKIPN TERMES ; ucode load error?
3201 004271' 037 00 0 00 005275' TMSGC <Could not read node address>
3202 004272' 336 00 0 00 005413' SKIPN TERMES ; ucode load error?
3203 004273' 263 17 0 00 000000 RTN ; no - return
3204 004274' 037 00 0 00 030242 PCRL
3205 004275' 550 00 0 00 005413' HRRZ TERMES ; get error message
3206 004276' 332 00 0 00 005413' SKIPE TERMES ; any error message given?
3207 004277' 260 17 1 00 000000 GO @0 ; yes - print it
3208 004300' 263 17 0 00 000000 RTN ; no - return
3209
3210
3211 ;#********************************************************************
3212 ; Miscellaneous data
3213 ;#********************************************************************
3214
3215 004301' 000000 000000 NPAKS: 0 ; sent count
3216 004302' 000000 000000 NPAKSE: 0 ; sent status error count
3217 004303' 000000 000000 NPAKR: 0 ; recv count
3218 004304' 000000 000000 NPAKRE: 0 ; recv status error count
3219 004305' 000000 000000 NPAKRC: 0 ; recv CRC error count
3220 004306' 000000 000000 NPAKRD: 0 ; recv dt.cmp error count (pkts)
3221 004307' 000000 000000 NPAKRW: 0 ; recv dt.cmp error count (words)
3222
3223
3224 ;#********************************************************************
3225 ; End of DFCIA5.MAC
3226 ;#********************************************************************
3227
3228 XLIST
3229
NO ERRORS DETECTED
PROGRAM BREAK IS 005415
CPU TIME USED 00:09.890
78P CORE USED
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page S-1
DFCIA5 MAC 27-Oct-84 18:58 SYMBOL TABLE SEQ 0915
ALTF 003405' ext MB41 000210' MSG 100000 000000 spd SETENA 003645' ext
BPACK 003764' ext MB42 000453' MVPNT 000000 ext SNDDG 000001 spd
BPACKN 004001' ext MB43 000567' NPAKAA 005406' SNDLB 000015 spd
BUFF 000000 ext MB44 000746' NPAKAB 005407' SREPOR 003750' ext
BUFGEN 000000 ext MB45 001267' NPAKBA 005410' STARCA 000000 ext
CALL 200000 000000 spd MB46 002157' NPAKBB 005411' STARCB 000000 ext
CHKINT 003415' ext MB47 002475' NPAKR 004303' STASNT 000000 ext
CHKRQV 004167' ent MB50 002762' NPAKRC 004305' T41PAK 000310 spd
CHKRSP 003671' ext MB51 003245' NPAKRD 004306' T42LEN 000100 spd
CMDQAV 000400 spd MB52 003521' NPAKRE 004304' T42PAK 000500 spd
CONPNT 003724' ext MB53 003733' NPAKRW 004307' T44LIS 001031'
CONVIR 005120' ext MC41 000213' NPAKS 004301' T44ORD 001020'
CPORT 004142' ext MC42 000456' NPAKSE 004302' T44PNT 001017'
CRCINI 001356' MC43 000573' NUMENT 003432' ext T45LEN 001325'
CRCOFF 001365' int MC44 000751' OP 000011 T45PAK 003410 spd
CRCSAV 001364' int MC44P0 000760' P 000017 T46LEN 002215'
CRCTAB 001366' int MC44P1 000767' PACKET 000637' ext T46PAK 003410 spd
CSRPNT 000607' ext MC44P2 000777' PCB 000000 ext T47PAK 003410 spd
CTABLE 003716' ext MC44PN 000754' PCRL 037000 030242 T50PAK 003410 spd
CTYPE 003715' ext MC45 001272' PDSABL 000040 spd T51PAK 007020 spd
CVALID 003722' ext MC46 002162' PDUMP 004242' ent T52CHK 003563'
DCOMP 000040 000000 spd MC47 002500' PENABL 000020 spd T52PAK 000062 spd
DDEBUG 004246' ext MC50 002765' PKDAT1 004215' TA41 000064'
DDUMP 004251' ext MC51 003250' PKDAT2 004230' TA42 000332'
DEBTIM 003465' ext MC52 003524' PKPN0 004254' TA44 000645'
DELAY 005000 000000 MC53 003735' PKPNT 004253' TA45 001120'
DUMPP 005404' MCHEC1 004155' PKSAV1 004214' TA46 002010'
ECOMP 000020 000000 spd MCHECK 004141' PKSAV2 004227' TA47 002326'
ENDTIM 005405' MCOM20 004126' PNTDCP 004000 000000 TA50 002613'
ERFLG 000015 MCOM2X 004140' PNTDEC 037640 000000 TA51 003077'
GET 262740 000000 MCOMP 004004' PNTHW 037540 000000 TA52 003366'
GO 260740 000000 MCOMP0 004032' PNTMSG 037000 000000 TA52A 003401'
HCOMP 004052' MCOMP2 004116' PNTOCS 037700 000003 TA53 003653'
HCOMP0 004100' MCOMPX 004044' PPCB 000000 ext TB41 000070'
HCOMPX 004110' MD41 000216' PQUEUE 000000 ext TB42 000342'
INSQUE 003661' ext MD41PN 000223' PSP 037000 000040 TB44 000673'
IPACLR 003604' ext MD42 000461' PSTAMP 003411' ext TB45 001124'
ISTOP 003727' ext MD42PN 000466' PUT 261740 000000 TB46 002014'
LAST 010000 000000 spd MD43 000577' Q 000013 TB47 002332'
LCHAR 003410' ext MD45 001275' QFDG10 000000 ext TB50 002617'
LDCSR 004317' ext MD45PN 001302' QFDG7 000000 ext TB51 003103'
LODERR 004270' MD46 002165' RDCSR 004313' ext TB52 003402'
MA41 000206' MD46PN 002172' RDLAR 000000 ext TB53 003671'
MA42 000451' MD47 002503' RDNODE 003605' ext TBYTE 004111' ext
MA43 000565' MD47PN 002510' RESQAV 000200 spd TC41 000122'
MA43PN 000603' MD50 002770' RQAFLG 005412' int TC42 000374'
MA44 000744' MD50PN 002775' RSPONS 000000 ext TC44 000674'
MA45 001265' MD51 003253' RTN 263740 000000 TC45 001140'
MA46 002155' MD51PN 003257' RUNTME 003464' ext TC46 002030'
MA47 002473' MD52 003527' RWAIT 003667' ext TC47 002346'
MA50 002760' MD52PN 003533' SAVPK1 004202' TC50 002633'
MA51 003243' MD53 003740' SAVPK2 004207' TC51 003117'
MA52 003517' MPACK 003752' SCOPER 027000 000000 TC52 003434'
MA53 003731' MPACKN 003767' SDEBUG 003213' ext TC53 003720'
MAXPOR 000017 spd MPRUN 000010 spd SETDSA 003726' ext TCMD 000000 ext
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page S-2
DFCIA5 MAC 27-Oct-84 18:58 SYMBOL TABLE SEQ 0916
TD41 000131' TJ45 001234'
TD42 000403' TJ46 002124'
TD44 000713' TJ47 002442'
TD45 001142' TJ50 002727'
TD46 002032' TJ51 003213'
TD47 002350' TLEN 005414'
TD50 002635' TPAT 005022' ext
TD51 003121' TPCB 000521' ext
TD52 003443' TPTFLG 003624' ext
TDPORT 003775' ext TRACE 003744' ext
TE41 000136' TREGD 000000 ext
TE42 000410' TREGN 000000 ext
TE44 000723' TRESPC 000000 ext
TE45 001176' TRSFLG 003623' ext
TE46 002066' TSLOAD 000000 ext
TE47 002404' TST41 000000' ent
TE50 002671' TST42 000247' ent
TE51 003155' TST43 000503' ent
TE52 003450' TST44 000611' ent
TERMES 005413' TST45 001041' ent
TEXEC 000000 ext TST46 001730' ent
TF41 000143' TST47 002246' ent
TF42 000415' TST50 002533' ent
TF44 000725' TST51 003020' ent
TF45 001205' TST52 003302' ent
TF46 002075' TST53 003577' ent
TF47 002413' TST54 003743' ent
TF50 002700' TSTATA 000000 ext
TF51 003164' TSTATC 000000 ext
TF52 003455' TSTEND 003725' ext
TFLOAD 003631' ext TSTREP 003745' ext
TFMFLG 003622' ext TSTSUB 003366' ext
TG41 000151' TTALTM 037340 000003
TG42 000423' TTPNT 000000 ext
TG44 000735' TWORD 004662' ext
TG45 001212' TX41 000202'
TG46 002102' TX42 000443'
TG47 002420' TX43 000561'
TG50 002705' TX44 000740'
TG51 003171' TX45 001261'
TG52 003463' TX46 002151'
TH41 000156' TX47 002467'
TH42 000430' TX50 002754'
TH45 001221' TX51 003237'
TH46 002111' TX52 003513'
TH47 002427' TX53 003725'
TH50 002714' TXADDL 003074' ext
TH51 003200' TXALL 060000 000000 spd
TH52 003470' TXCTID 005050' ext
TI45 001227' TXNOT 040000 000000 spd
TI46 002117' UDEBUG 000000 ext
TI47 002435' Z5 000000'
TI50 002722' .RREXP 000000 ext
TI51 003206' .SREXP 000000 ext
TIDLE 003637' ext
ALTF 21# 148 149 412 413 1036 1037 1374 1375 1696 1697 1990 1991 2274
2275 2544 2545 SEQ 0917
BPACK 20# 132 385 2520 2535 2820 2932
BPACKN 20# 2951
BUFF 15#
BUFGEN 30#
CALL 258 262 266 270 271 515 519 523 527 528 656 660 661 665
666 670 671 834 838 841 842 1154 1158 1162 1166 1167 1492 1496
1500 1504 1505 1814 1818 1822 1826 1827 2108 2112 2116 2120 2121 2388
2392 2396 2400 2401 2656 2660 2664 2668 2669 2883 2887 2891
CHKINT 21# 157 421 1046 1384 1706 2000 2284 2553
CHKRQV 10 180 209 444 473 1070 1101 1408 1439 1730 1761 2024 2055 2308
2339 2576 2605 3117#
CHKRSP 20# 181 210 445 474 773 1071 1102 1409 1440 1731 1762 2025 2056
2309 2340 2577 2606 2833
CMDQAV 174 438 762 1064 1402 1724 2018 2302 2570 2826
CONPNT 19# 2869
CONVIR 21# 184 213 448 477 1074 1105 1412 1443 1734 1765 2028 2059 2312
2343 2580 2609
CPORT 19# 83 128 339 382 721 741 779 938 1275 1597 1891 2185 2471
2515 2700 2757 2927 2946 2964 3011 3056 3080
CRCINI 971 1223# 1309 1631 1925 2218
CRCOFF 11 989 1231# 1327 1649 1943
CRCSAV 11 387 397 991 1230# 1329 1651 1945
CRCTAB 11 990 1224 1225 1226 1232# 1328 1650 1944
CSRPNT 16# 678
CTABLE 19# 2766 2767 2768 2770 2860
CTYPE 19# 2859
CVALID 19# 2765 2867
DCOMP 618
DDEBUG 21# 3171
DDUMP 21# 3174
DEBTIM 26# 206 222 470 486 769 802 1098 1117 1436 1455 1758 1777 2052
2071 2336 2352 2602 2621
DUMPP 74# 74 135 197 330 390 461 581 712 929 996 1087 1266 1334
1425 1588 1656 1747 1882 1950 2041 2176 2234 2325 2462 2523 2593 2750
3173
ECOMP 636
ENDTIM 208# 208 223 472# 472 487 771# 771 803 1100# 1100 1118 1438# 1438
1456 1760# 1760 1778 2054# 2054 2072 2338# 2338 2353 2604# 2604 2622
ERFLG 79 82 87 92 96 101 105 230 233 236 239 241 244 335
338 343 348 352 357 361 494 497 499 586 595 601 609 619
627 637 645 717 720 725 730 734 814 816 934 937 942 947
951 956 960 1127 1131 1134 1136 1138 1140 1271 1274 1279 1284 1288
1293 1297 1465 1469 1472 1474 1476 1478 1593 1596 1601 1606 1610 1615
1619 1787 1791 1794 1796 1798 1800 1887 1890 1895 1900 1904 1909 1913
2081 2085 2088 2090 2092 2094 2181 2184 2189 2194 2198 2203 2207 2362
2365 2368 2370 2372 2374 2467 2470 2475 2480 2484 2489 2493 2629 2632
2635 2638 2640 2642 2756 2761 2786 2791 2796 2800 2805 2809
HCOMP 1418 1448 3010#
HCOMP0 3032# 3035
HCOMPX 3036 3040#
INSQUE 20# 165 429 745 748 1054 1392 1714 2008 2292 2561 2822
IPACLR 26# 75 331 582 713 808 930 1267 1589 1883 2177 2463 2751
ISTOP 26# 253 510 651 829 1149 1487 1809 2103 2383 2651 2866 2875 SEQ 0918
LAST 259 263 267 273 516 520 524 530 657 662 667 672 835 839
843 1155 1159 1163 1169 1493 1497 1501 1507 1815 1819 1823 1829 2109
2113 2117 2123 2389 2393 2397 2402 2657 2661 2665 2670 2881 2884 2888
2892
LCHAR 26# 151 152 415 416 1039 1040 1377 1378 1699 1700 1993 1994 2277
2278 2547 2548
LDCSR 26# 175 439 614 632 763 1065 1403 1725 2019 2303 2571 2827
LODERR 258 515 656 834 1154 1492 1814 2108 2388 2656 2883 3200#
MA41 84 258#
MA42 340 515#
MA43 592 656#
MA43PN 660 665 670 674#
MA44 722 834#
MA45 939 1154#
MA46 1276 1492#
MA47 1598 1814#
MA50 1892 2108#
MA51 2186 2388#
MA52 2472 2656#
MA53 2758 2880#
MAXPOR 2768 2814
MB41 93 261#
MB42 349 518#
MB43 606 659#
MB44 731 837#
MB45 948 1157#
MB46 1285 1495#
MB47 1607 1817#
MB50 1901 2111#
MB51 2195 2391#
MB52 2481 2659#
MB53 2788 2883#
MC41 102 265#
MC42 358 522#
MC43 624 664#
MC44 821 841#
MC44P0 852# 858
MC44P1 855 862# 867
MC44P2 873# 879 888
MC44PN 841 845#
MC45 957 1161#
MC46 1294 1499#
MC47 1616 1821#
MC50 1910 2115#
MC51 2204 2395#
MC52 2490 2663#
MC53 2797 2886#
MCHEC1 3084 3102#
MCHECK 189 217 453 481 1079 1109 1417 1447 1739 1769 2033 2063 2317 2347
2585 2613 3079#
MCOM20 3063# 3068
MCOM2X 3069 3073#
MCOMP 1080 1110 1740 1770 2034 2064 2318 2348 2963# SEQ 0919
MCOMP0 2985# 2990
MCOMP2 190 218 454 482 3055#
MCOMPX 2991 2995#
MD41 245 269#
MD41PN 270 275#
MD42 500 526#
MD42PN 527 532#
MD43 642 669#
MD45 1141 1165#
MD45PN 1166 1171#
MD46 1479 1503#
MD46PN 1504 1509#
MD47 1801 1825#
MD47PN 1826 1831#
MD50 2095 2119#
MD50PN 2120 2125#
MD51 2375 2399#
MD51PN 2400 2404#
MD52 2643 2667#
MD52PN 2668 2672#
MD53 2806 2890#
MPACK 1043 1381 1703 1997 2281 2922#
MPACKN 2941# 2976 3023
MPRUN 172 436 613 631 762 1062 1400 1722 2016 2300 2568
MSG 259 261 263 265 267 269 272 273 516 518 520 522 524 526
529 530 657 659 662 664 667 669 672 835 837 839 843 1155
1157 1159 1161 1163 1165 1168 1169 1493 1495 1497 1499 1501 1503 1506
1507 1815 1817 1819 1821 1823 1825 1828 1829 2109 2111 2113 2115 2117
2119 2122 2123 2389 2391 2393 2395 2397 2399 2402 2657 2659 2661 2663
2665 2667 2670 2880 2881 2884 2886 2888 2890 2892
MVPNT 15#
NPAKAA 2500# 2500 2687 2714
NPAKAB 2501# 2501 2639 2689 2712
NPAKBA 2502# 2502 2641 2691 2713
NPAKBB 2503# 2503 2694 2711
NPAKR 111 234 285 367 498 541 977 1132 1180 1315 1470 1518 1637 1792
1840 1931 2086 2134 2224 2366 2413 2499 2633 2682 3102 3217#
NPAKRC 113 242 289 979 1139 1184 1317 1477 1522 1639 1799 1844 1933 2093
2138 2226 2373 2417 3110 3219#
NPAKRD 114 240 291 980 1137 1186 1318 1475 1524 1640 1797 1846 1934 2091
2140 2227 2371 2419 2992 3037 3070 3220#
NPAKRE 112 237 287 368 543 978 1135 1182 1316 1473 1520 1638 1795 1842
1932 2089 2136 2225 2369 2415 2504 2636 2684 3106 3218#
NPAKRW 115 293 981 1188 1319 1526 1641 1848 1935 2142 2228 2421 2993 3038
3071 3221#
NPAKS 109 169 228 279 365 433 492 496 536 538 975 1058 1125 1128
1175 1313 1396 1463 1466 1513 1635 1718 1785 1788 1835 1929 2012 2079
2082 2129 2222 2296 2360 2408 2497 2565 2627 2676 3215#
NPAKSE 110 231 282 366 495 507 539 976 1130 1177 1314 1468 1515 1636
1790 1837 1930 2084 2131 2223 2363 2410 2498 2630 2679 3091 3095 3216#
NUMENT 21# 161 170 425 434 1050 1060 1388 1398 1710 1720 2004 2014 2288
2298 2557 2566
OP 121 131 384 967 1305 1627 1921 2214 2519 2534 2702 2703 2819 2929 SEQ 0920
2930 2931 2933 2948 2949 2950 2952 2966 2967 2981 3013 3014 3028 3058
3059 3082 3083
P 3125
PACKET 20# 386 401 738 739 740 742 744 747 983 1321 1643 1937 2230
2985 3032 3063
PCB 15# 159 183 185 212 214 423 447 449 476 478 1048 1073 1075
1104 1106 1386 1411 1413 1442 1444 1708 1733 1735 1764 1766 2002 2027
2029 2058 2060 2286 2311 2313 2342 2344 2555 2579 2581 2608 2610
PDSABL 613
PDUMP 10 262 266 271 519 523 528 661 666 671 838 842 1158 1162
1167 1496 1500 1505 1818 1822 1827 2112 2116 2121 2392 2396 2401 2660
2664 2669 2887 2891 3159#
PENABL 172 436 631 762 1062 1400 1722 2016 2300 2568
PKDAT1 3135 3137 3150# 3161
PKDAT2 3141 3143 3153# 3167
PKPN0 3183# 3194
PKPNT 3162 3168 3182#
PKSAV1 72 328 579 710 927 1264 1586 1880 2174 2460 2748 3136 3138 3149#
3159 3163
PKSAV2 73 329 580 711 928 1265 1587 1881 2175 2461 2749 3142 3144 3152#
3165 3169
PPCB 21#
PQUEUE 21#
PSTAMP 26# 153 417 1041 1379 1701 1995 2279 2549
Q 155 156 160 164 419 420 424 428 743 750 751 1044 1045 1049
1053 1382 1383 1387 1391 1704 1705 1709 1713 1998 1999 2003 2007 2282
2283 2287 2291 2551 2552 2556 2560 2821
QFDG10 20#
QFDG7 20#
RDCSR 26# 171 435 616 634 674 1061 1399 1721 2015 2299 2567 2824 3120
RDLAR 26#
RDNODE 15# 81 337 719 936 1273 1595 1889 2183 2469 2755
RESQAV 173 437 1063 1401 1723 2017 2301 2569 3122 3124
RQAFLG 11 134# 134 182 186 211 215 389 446 450 475 479 995 1072
1076 1103 1107 1333 1410 1414 1441 1445 1655 1732 1736 1763 1767 1949
2026 2030 2057 2061 2233 2310 2314 2341 2345 2522# 2522 2578 2582 2607
2611 3117 3123
RSPONS 20# 778 781 2699 2702 2705 2707 2838 2841 2843 2848 2850 2853 2855
2963 2966 2974 2978 2988 3010 3013 3021 3025 3033 3055 3058 3066 3079
3082 3089 3103 3135 3141
RUNTME 26# 205 221 469 485 768 801 1097 1116 1435 1454 1757 1776 2051
2070 2335 2351 2601 2620
RWAIT 20# 772 2831
SAVPK1 3092 3096 3107 3135#
SAVPK2 2994 3039 3072 3141#
SDEBUG 16# 1017 1094 1123 1355 1432 1461 1677 1754 1783 1971 2048 2077 2255
2332 2358
SETDSA 15# 252 509 650 828 1148 1486 1808 2102 2382 2650 2865 2874
SETENA 15# 100 356 760 955 1292 1614 1908 2202 2488 2804
SNDDG 2214
SNDLB 121 131 384 967 1305 1627 1921 2519 2534
SREPOR 19# 2913
STARCA 22# SEQ 0921
STARCB 22#
STASNT 22# 508
T41PAK 66# 140 229 232 235 238 243 278 284
T42LEN 322# 379 386 401
T42PAK 321# 404 493 535
T44LIS 758 785 815 862 864 866 873 878 894#
T44ORD 756 757 789 813 851 893#
T44PNT 759 786 794 892#
T45LEN 1011 1193# 1671 1965 2249
T45PAK 921# 1126 1133 1174 1179 1226 1232
T46LEN 1349 1531#
T46PAK 1258# 1464 1471 1512 1517
T47PAK 1580# 1786 1793 1834 1839
T50PAK 1874# 2080 2087 2128 2133
T51PAK 2168# 2361 2364 2367 2407 2412
T52CHK 2586 2614 2699#
T52PAK 2454# 2528 2536 2628 2631 2634 2637 2675 2681 2686 2693
TA41 139# 200
TA42 394# 464
TA44 744# 752
TA45 1000# 1009
TA46 1338# 1347
TA47 1660# 1669
TA50 1954# 1963
TA51 2238# 2247
TA52 2527# 2596
TA52A 2529 2538#
TA53 2813# 2834 2861
TB41 146# 199
TB42 410# 463
TB44 772#
TB45 1007# 1029
TB46 1345# 1367
TB47 1667# 1689
TB50 1961# 1983
TB51 2245# 2267
TB52 2542# 2595
TB53 2833# 2840 2842
TBYTE 18# 124 378 1010 1348 1670 1964 2248 2512 2926 2945 2972 2996 3019
3041
TC41 163 180# 191
TC42 427 444# 455
TC44 773# 780 784 788 790 804
TC45 1029# 1090
TC46 1367# 1428
TC47 1689# 1750
TC50 1983# 2044
TC51 2267# 2328
TC52 2559 2576# 2587
TC53 2815 2865#
TCMD 17#
TD41 187 195#
TD42 451 459# SEQ 0922
TD44 774 794#
TD45 1034# 1089
TD46 1372# 1427
TD47 1694# 1749
TD50 1988# 2043
TD51 2272# 2327
TD52 2583 2591#
TDPORT 18# 129 383 2516 2779 2813 2928 2947
TE41 141 198 204#
TE42 405 462 468#
TE44 796 808#
TE45 1052 1070# 1081
TE46 1390 1408# 1419
TE47 1712 1730# 1741
TE50 2006 2024# 2035
TE51 2290 2308# 2319
TE52 2537 2594 2600#
TERMES 76# 76 78 332 334 583 585 714 716 931 933 1268 1270 1590
1592 1884 1886 2178 2180 2464 2466 2783 2785 3200 3202 3205 3206
TEXEC 17#
TF41 209# 219 224
TF42 473# 483 488
TF44 810# 817
TF45 1077 1085#
TF46 1415 1423#
TF47 1737 1745#
TF50 2031 2039#
TF51 2315 2323#
TF52 2605# 2615 2623
TFLOAD 15# 77 333 584 715 932 1269 1591 1885 2179 2465 2784
TFMFLG 17# 119 372 964 1302 1623 1917 2212 2508 2774
TG41 216 220#
TG42 480 484#
TG44 812 821#
TG45 1002 1088 1094#
TG46 1340 1426 1432#
TG47 1662 1748 1754#
TG50 1956 2042 2048#
TG51 2240 2326 2332#
TG52 2612 2619#
TH41 228#
TH42 492#
TH45 1101# 1111 1119
TH46 1439# 1449 1457
TH47 1761# 1771 1779
TH50 2055# 2065 2073
TH51 2339# 2349 2354
TH52 2627#
TI45 1108 1115#
TI46 1446 1453#
TI47 1768 1775#
TI50 2062 2069#
TI51 2346 2350# SEQ 0923
TIDLE 15# 91 347 600 729 946 1283 1605 1899 2193 2479 2795
TJ45 1123#
TJ46 1461#
TJ47 1783#
TJ50 2077#
TJ51 2358#
TLEN 985 1003# 1003 1007 1323 1341# 1341 1345 1645 1663# 1663 1667 1939 1957#
1957 1961 2241# 2241 2245 2973 2995 3020 3040
TPAT 18# 123 377 969 987 1000 1014 1019 1307 1325 1338 1352 1357 1629
1647 1660 1674 1679 1923 1941 1954 1968 1973 2216 2238 2252 2257 2511
2531 2923 2942 2970 2998 3017 3043
TPCB 15# 599
TPTFLG 18# 130 375 966 1304 1626 1920 2211 2518 2533 2776
TRACE 16# 71 327 578 709 926 1263 1585 1879 2173 2459 2747 2909
TREGD 18#
TREGN 18#
TRESPC 17#
TRSFLG 17# 120 373 965 1303 1624 1918 2213 2509 2775
TSLOAD 15#
TST41 9 70#
TST42 9 326#
TST43 9 577#
TST44 9 708#
TST45 9 925#
TST46 9 1262#
TST47 9 1584#
TST50 9 1878#
TST51 9 2172#
TST52 10 2458#
TST53 10 2746#
TST54 10 2908#
TSTATA 17#
TSTATC 17#
TSTEND 16# 251 506 649 827 1147 1485 1807 2101 2381 2649 2873
TSTREP 16# 2868 2910
TSTSUB 16# 133 139 388 394 403 591 605 623 641 970 1059 1308 1397
1630 1719 1924 2013 2217 2297 2521 2527
TTPNT 17#
TWORD 18# 126 380 1012 1022 1350 1360 1672 1682 1966 1976 2250 2260 2514
2925 2944 2971 2977 2984 2997 3018 3024 3031 3042 3062
TX41 86 87 95 96 104 105 150 247 251#
TX42 342 343 351 352 360 361 414 502 506#
TX43 594 595 608 609 626 627 644 645 649#
TX44 724 725 733 734 823 827#
TX45 941 942 950 951 959 960 1038 1143 1147#
TX46 1278 1279 1287 1288 1296 1297 1376 1481 1485#
TX47 1600 1601 1609 1610 1618 1619 1698 1803 1807#
TX50 1894 1895 1903 1904 1912 1913 1992 2097 2101#
TX51 2188 2189 2197 2198 2206 2207 2276 2377 2381#
TX52 2474 2475 2483 2484 2492 2493 2546 2645 2649#
TX53 2760 2761 2790 2791 2799 2800 2808 2809 2873#
TXADDL 21# 994 1332 1654 1948 2232
TXALL 258 259 261 262 263 265 266 267 269 270 271 272 273 515 SEQ 0924
516 518 519 520 522 523 524 526 527 528 529 530 656 657
659 661 662 664 666 667 669 671 672 834 835 837 838 839
841 842 843 1154 1155 1157 1158 1159 1161 1162 1163 1165 1166 1167
1168 1169 1492 1493 1495 1496 1497 1499 1500 1501 1503 1504 1505 1506
1507 1814 1815 1817 1818 1819 1821 1822 1823 1825 1826 1827 1828 1829
2108 2109 2111 2112 2113 2115 2116 2117 2119 2120 2121 2122 2123 2388
2389 2391 2392 2393 2395 2396 2397 2399 2400 2401 2402 2656 2657 2659
2660 2661 2663 2664 2665 2667 2668 2669 2670 2880 2881 2883 2884 2886
2887 2888 2890 2891 2892
TXCTID 18# 127 381 982 1013 1015 1320 1351 1353 1642 1673 1675 1936 1967
1969 2229 2251 2253 2777 2778 2922 2941 2969 2975 2999 3016 3022 3044
TXNOT 660 665 670
UDEBUG 16#
Z5 36# 70 326 577 708 925 1262 1584 1878 2172 2458 2746 2908
.RREXP 22#
.SREXP 22# 508
DELAY 615 633
GET 160 424 992 1049 1227 1330 1387 1652 1709 1946 2003 2287 2556 2933 SEQ 0925
2952 2995 2996 2997 2998 2999 3040 3041 3042 3043 3044 3126
GO 71 75 77 78 81 91 100 132 153 157 165 171 175 180
181 184 189 190 205 209 210 213 217 218 221 251 252 253
327 331 333 334 337 347 356 385 397 417 421 429 435 439
444 445 448 453 454 469 473 474 477 481 482 485 506 509
510 578 582 584 585 599 600 614 616 632 634 649 650 651
674 678 709 713 715 716 719 729 745 748 760 763 768 772
773 801 808 827 828 829 926 930 932 933 936 946 955 971
1018 1041 1043 1046 1054 1061 1065 1070 1071 1074 1079 1080 1097 1101
1102 1105 1109 1110 1116 1147 1148 1149 1263 1267 1269 1270 1273 1283
1292 1309 1356 1379 1381 1384 1392 1399 1403 1408 1409 1412 1417 1418
1435 1439 1440 1443 1447 1448 1454 1485 1486 1487 1585 1589 1591 1592
1595 1605 1614 1631 1678 1701 1703 1706 1714 1721 1725 1730 1731 1734
1739 1740 1757 1761 1762 1765 1769 1770 1776 1807 1808 1809 1879 1883
1885 1886 1889 1899 1908 1925 1972 1995 1997 2000 2008 2015 2019 2024
2025 2028 2033 2034 2051 2055 2056 2059 2063 2064 2070 2101 2102 2103
2173 2177 2179 2180 2183 2193 2202 2218 2256 2279 2281 2284 2292 2299
2303 2308 2309 2312 2317 2318 2335 2339 2340 2343 2347 2348 2351 2381
2382 2383 2459 2463 2465 2466 2469 2479 2488 2520 2535 2549 2553 2561
2567 2571 2576 2577 2580 2585 2586 2601 2605 2606 2609 2613 2614 2620
2649 2650 2651 2747 2751 2755 2784 2785 2795 2804 2820 2822 2824 2827
2831 2833 2865 2866 2869 2873 2874 2875 2909 2913 2932 2951 2976 2994
3023 3039 3072 3092 3096 3107 3120 3160 3162 3166 3168 3174 3207
PCRL 3204
PNTDCP 278 279 281 282 284 285 287 289 291 293 535 536 538 539
541 543 1174 1175 1177 1179 1180 1182 1184 1186 1188 1512 1513 1515
1517 1518 1520 1522 1524 1526 1834 1835 1837 1839 1840 1842 1844 1846
1848 2128 2129 2131 2133 2134 2136 2138 2140 2142 2407 2408 2410 2412
2413 2415 2417 2419 2421 2675 2676 2678 2679 2681 2682 2684 2686 2687
2689 2691 2693 2694
PNTDEC 1023 1361 1683 1977 2261
PNTHW 3193
PNTMSG 275 276 277 280 283 286 288 290 292 532 533 534 537 540
542 845 849 850 871 880 883 1018 1021 1024 1095 1124 1171 1172
1173 1176 1178 1181 1183 1185 1187 1356 1359 1362 1433 1462 1509 1510
1511 1514 1516 1519 1521 1523 1525 1678 1681 1684 1755 1784 1831 1832
1833 1836 1838 1841 1843 1845 1847 1972 1975 1978 2049 2078 2125 2126
2127 2130 2132 2135 2137 2139 2141 2256 2259 2262 2333 2359 2404 2405
2406 2409 2411 2414 2416 2418 2420 2672 2673 2674 2677 2680 2683 2685
2688 2690 2692 2769 3160 3166 3186 3189 3201
PNTOCS 856 882 887 1020 1358 1680 1974 2258 3188
PSP 857
PUT 155 419 984 1044 1223 1322 1382 1644 1704 1938 1998 2282 2551 2929
2948 2969 2970 2971 2972 2973 3016 3017 3018 3019 3020 3119
RGET 992 1330 1652 1946
RPUT 984 1322 1644 1938
RTN 80 176 254 294 336 402 440 511 544 587 652 679 718 830
865 877 935 993 1025 1066 1150 1189 1228 1272 1331 1363 1404 1488
1527 1594 1653 1685 1726 1810 1849 1888 1947 1979 2020 2104 2143 2182
2231 2263 2304 2384 2422 2468 2572 2652 2695 2701 2704 2717 2787 2876
2914 2934 2953 2965 2968 3000 3012 3015 3045 3057 3060 3073 3081 3093
3097 3098 3105 3111 3118 3127 3139 3145 3164 3170 3172 3175 3185 3203
3208 SEQ 0926
SCOPER 84 93 102 245 340 349 358 500 592 606 624 642 722 731
821 939 948 957 1141 1276 1285 1294 1479 1598 1607 1616 1801 1892
1901 1910 2095 2186 2195 2204 2375 2472 2481 2490 2643 2758 2788 2797
2806
TMSG 883 1021 1359 1681 1975 2259 2769 3189
TMSGC 275 276 277 280 283 286 288 290 292 532 533 534 537 540
542 845 849 850 871 880 1018 1171 1172 1173 1176 1178 1181 1183
1185 1187 1356 1509 1510 1511 1514 1516 1519 1521 1523 1525 1678 1831
1832 1833 1836 1838 1841 1843 1845 1847 1972 2125 2126 2127 2130 2132
2135 2137 2139 2141 2256 2404 2405 2406 2409 2411 2414 2416 2418 2420
2672 2673 2674 2677 2680 2683 2685 2688 2690 2692 3160 3166 3186 3201
TMSGCD 1095 1124 1433 1462 1755 1784 2049 2078 2333 2359
TMSGD 1024 1362 1684 1978 2262
TTALTM 146 410 1034 1372 1694 1988 2272 2542
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 1
DFCIAI MAC 29-Oct-84 18:39 Port Controller Utility Package SEQ 0927
1 SUBTTL Port Controller Utility Package
2
3 SALL
4
5 SEARCH DFCIA,MONSYM
6
7 ; Register Read/write routines
8
9 ENTRY .CONI,.CONO,.DATAO,.DATAI
10 ENTRY LDEBUF,LDRAR,LDCRAM,LDCSR
11 ENTRY RDEBUF,RDLAR,RDCRAM,RDCSR
12
13 ; Port specific utility routines
14
15 ENTRY SETEBU,SETLAR,CLREBU,CHKCSR
16 ENTRY IPACLR,IPASRT,IPASTP,ERESET,IPASST,ISTOP
17 INTERN SNEXT,SLAST,EADDR,AADDR,SDATA
18
19 ; PI system handling routines
20
21 ENTRY INITPI,INITPD,.PIOFF,.PION,PISYOF
22 ENTRY PISYON,SETVEC,.INPNT
23 INTERN INTNUM,INTPC,INTTYP,INTCON,INTAPR,INTTIM,INTUSE
24 INTERN INTCSR,INTEND,.INWD1,.INWD2
25
26 ; Channel handling routines
27
28 ENTRY CHINIT
29 ENTRY GETLOG,CCWPNT,LOGPNT
30 INTERN CBASE,LOGBUF,EPTJMP,ICWA0
31
32 ; User mode support routines
33
34 ENTRY DSETUP,DEVREQ,DEVREL,REQ1,REQ2,REL,LOCPHY
35 ENTRY USRION,USRIOF,ENABLE
36 INTERN SNARKF,HAVIPA,LOCDON
37
38 ; Miscellaneous routines
39
40 ENTRY FFF ; Fatal error routine
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 2
DFCIAI MAC 29-Oct-84 18:39 Port Controller Utility Package SEQ 0928
41
42 ; EXTERN's located in DFCIAU.MAC (Utility Routines module)
43
44 EXTERN .CLOSE,.EXIT,SWITT,RUNTME,DEBTIM,USTIM
45
46 ; EXTERN's located in DFCIA1.MAC (Mainline code..)
47
48 EXTERN UDEBUG,DSPRIN,IGNFLG,SPORT,MLOADN
49 EXTERN CADDR,CWORDL,CWORDR,DRCRAM,DWCRAM,PARFLG
50 EXTERN PCB,TIDLE,TPCB,PMODE
51
52
53 ;#********************************************************************
54 ; ZI - Address for use in DDT
55 ;#********************************************************************
56
57 000000' ZI: ; address of 00000'
58
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 3
DFCIAI MAC 29-Oct-84 18:39 Port Register Read/Write Routines SEQ 0929
59 SUBTTL Port Register Read/Write Routines
60
61 ;#*********************************************************************
62 ;* Notes On I/O Routine Design
63 ;
64 ; 1. All code in this file is re-entrant with the exception of the
65 ; user mode stuff which need not be since the PI system cannot
66 ; be used in user mode.
67 ;
68 ; 2. No AC's are modified unless they return data.
69 ;
70 ; 3. If in (exec mode) with a port it is necessary for the channel
71 ; routines to do a limited amount of paging, a location "CBASE"
72 ; must be set up as a paged address of "0". Then the routines
73 ; will then work properly.
74 ;
75 ; The following routines are given:
76 ;
77 ; Port Register Load/Read Routines:
78 ;
79 ; LDEBUF This is a DATAO with 'Diag Test EBUF' bit set
80 ; in the CSR Register.
81 ;
82 ; LDRAR This is a DATAO with 'Diag Test EBUF' bit not
83 ; set in the CSR Register, and Bit 0 set in the
84 ; data given. The address to put in the RAR is
85 ; in bits 1-13.
86 ;
87 ; LDCRAM This is a DATAO with 'Diag Test EBUF' bit not
88 ; set in the CSR Register, and Bit 0 zero in the
89 ; data given. The data to load in CRAM is in
90 ; bits 6-35.
91 ;
92 ; LDCSR This is simply a CONO.
93 ;
94 ; RDEBUF This is a DATAI with 'Diag Test EBUF' bit set
95 ; in the CSR Register.
96 ;
97 ; RDLAR This is a DATAI with 'Diag Test EBUF' bit not
98 ; set and 'Diag Sel LAR' set in CSR Register
99 ; The data returned is in bits 1-12. Bit 13 is
100 ; returned as the corresponding bit of the RAR.
101 ;
102 ; RDCRAM This is a DATAI with 'Diag Test EBUF' bit not
103 ; set and 'Diag Sel LAR' not set in CSR Regis-
104 ; ter. The data returned is in bits 6-35.
105 ;
106 ; RDCSR This is simply a CONI.
107 ;
108 ;#********************************************************************
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 4
DFCIAI MAC 29-Oct-84 18:39 Port Register Read/Write Routines SEQ 0930
109
110 ;#************************************************************
111 ;* Port Register Load Routines
112 ;
113 ; Port registers are loaded by a CONO or DATAO. The data to be
114 ; written is given right justified in AC1. Each routine will
115 ; will position the data correctly.
116 ;
117 ; Example: MOVE AC1,FOO ; data to write to register
118 ; GO LDXXXX ; XXXX (Register description)
119 ; Return ; no errors are possible
120 ;#************************************************************
121
122 ;#************************************************************
123 ;* LDEBUF - Load EBUF
124 ;
125 ; This routine assumes that 'Diag Test EBUF' bit is already set
126 ; in the CSR Register, so a simple DATAO will load the register.
127 ;#************************************************************
128
129 000000' 332 00 0 00 000000* LDEBUF: SKIPE UDEBUG ; debug mode?
130 000001' 263 17 0 00 000000 RTN ; yes - exit
131 000002' 261 17 0 00 000002 PUT 2 ; save AC2
132 000003' 200 02 0 00 002473' MOVE 2,[DATAO 0,1] ; build a DATAO
133 000004' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
134 000005' 256 00 0 00 000002 XCT 2 ; do the DATAO
135 000006' 262 17 0 00 000002 GET 2 ; restore AC2
136 000007' 263 17 0 00 000000 RTN
137
138
139 ;#************************************************************
140 ;* LDCSR - Load CSR (This is simply a CONO).
141 ;#************************************************************
142
143 000010' 332 00 0 00 000000* LDCSR: SKIPE UDEBUG ; debug mode?
144 000011' 263 17 0 00 000000 RTN ; yes - exit
145 000012' 261 17 0 00 000002 PUT 2 ; save AC2
146 000013' 200 02 0 00 002474' MOVE 2,[CONO] ; build a CONO
147 000014' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
148 000015' 540 02 0 00 000001 HRR 2,1 ; include data to write
149 000016' 256 00 0 00 000002 XCT 2 ; do the CONO
150 000017' 262 17 0 00 000002 GET 2 ; restore AC2
151 000020' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 5
DFCIAI MAC 29-Oct-84 18:39 Port Register Read/Write Routines SEQ 0931
152
153 ;#************************************************************
154 ;* LDRAR - Load RAR
155 ;
156 ; This assumes that 'Diag Test EBUF' bit is not set in CSR, so a DATAO
157 ; loads the RAR). The sign bit set in the data specified in the DATAO
158 ; causes the RAR to be loaded instead of the CRAM.
159 ;
160 ; Data to load is in AC1: Bits 23-34 - CRAM Address
161 ; 35 - 0 - Left half of CRAM word
162 ; 1 - Right half of CRAM word
163 ;#************************************************************
164
165 000021' 332 00 0 00 000010* LDRAR: SKIPE UDEBUG ; debug mode?
166 000022' 263 17 0 00 000000 RTN ; yes - exit
167 000023' 261 17 0 00 000001 RPUT (1,2) ; save AC's
168
169 000025' 200 02 0 00 002473' MOVE 2,[DATAO 0,1] ; build a DATAO
170 000026' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
171 000027' 242 01 0 00 000026 LSH 1,^D22 ; position data correctly
172 000030' 661 01 0 00 400000 TLO 1,400000 ; set sign bit
173 000031' 256 00 0 00 000002 XCT 2 ; do the DATAO
174 000032' 262 17 0 00 000002 RGET (2,1) ; restore AC's
175
176 000034' 263 17 0 00 000000 RTN
177
178
179 ;#************************************************************
180 ;* LDCRAM - Load CRAM
181 ;
182 ; This assumes that 'Diag Test EBUF' bit is not set in CSR, so a
183 ; DATAO loads the CRAM). The sign bit zero in the data specified
184 ; in the DATAO causes the CRAM to be loaded instead of the RAR.
185 ; The data to load is given right justified in AC1.
186 ;#************************************************************
187
188 000035' 332 00 0 00 000021* LDCRAM: SKIPE UDEBUG ; debug mode?
189 000036' 263 17 0 00 000000 RTN ; yes - exit
190 000037' 261 17 0 00 000001 RPUT (1,2) ; save AC's
191
192 000041' 200 02 0 00 002473' MOVE 2,[DATAO 0,1] ; build a DATAO
193 000042' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
194 000043' 621 01 0 00 770000 TLZ 1,770000 ; ensure left 6 bits zero
195 000044' 256 00 0 00 000002 XCT 2 ; do the DATAO
196 000045' 262 17 0 00 000002 RGET (2,1) ; restore AC's
197
198 000047' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 6
DFCIAI MAC 29-Oct-84 18:39 Port Register Read/Write Routines SEQ 0932
199
200 ;#************************************************************
201 ;* Port Register Read Routines
202 ;
203 ; Port registers are read by a CONI or DATAI. The data is
204 ; returned right justified in AC1 with unused bits zero.
205 ;
206 ; Example: MOVE AC1,FOO ; some argument
207 ; GO RDXXXX ; XXXX (Register description)
208 ; Return+1 ; read failed
209 ; Return+2 ; read succeeded
210 ;
211 ; Note: It is not normally possible to tell if the read failed
212 ; or succeeded, except with the CSR register. Reading the CSR
213 ; is set up for a +1 and +2 return. The remaining routines
214 ; return +1 always.
215 ;#************************************************************
216
217 ;#************************************************************
218 ;* RDEBUF - Read EBUF
219 ;
220 ; This routine assumes that 'Diag Test EBUF' bit is already set
221 ; in CSR, so a simple DATAI will load the register.
222 ;#************************************************************
223
224 000050' 332 00 0 00 000035* RDEBUF: SKIPE UDEBUG ; debug mode?
225 000051' 263 17 0 00 000000 RTN ; yes - return
226 000052' 261 17 0 00 000002 PUT 2 ; save AC2
227 000053' 200 02 0 00 002475' MOVE 2,[DATAI 0,1] ; build a DATAI
228 000054' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
229 000055' 256 00 0 00 000002 XCT 2 ; do the DATAI
230 000056' 262 17 0 00 000002 GET 2 ; restore AC2
231 000057' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 7
DFCIAI MAC 29-Oct-84 18:39 Port Register Read/Write Routines SEQ 0933
232
233 ;#************************************************************
234 ;* RDCSR - Read CSR
235 ;#************************************************************
236
237 000060' 350 00 0 17 000000 RDCSR: AOS (P) ; set up return+2
238 000061' 332 00 0 00 000050* SKIPE UDEBUG ; debug mode?
239 000062' 263 17 0 00 000000 RTN ; yes - return
240 000063' 261 17 0 00 000000 RPUT (0,2,3) ; save AC's
241
242 000066' 201 03 0 00 000050 MOVEI 3,^D40 ; retry up to 40 times
243 000067' 200 02 0 00 002476' MOVE 2,[CONI 0,1] ; build a CONI from AC1
244 000070' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
245 000071' 256 00 0 00 000002 RDCS0: XCT 2 ; do the CONI
246 000072' 255 00 0 00 000000 JFCL
247 000073' 255 00 0 00 000000 JFCL
248 000074' 326 01 0 00 000100' JUMPN 1,RDCSX ; succeeded? yes - exit
249 000075' 005 00 0 00 000001 DELAY 1 ; wait 1 millisecond
250 000076' 367 03 0 00 000071' SOJG 3,RDCS0 ; loop till done
251 000077' 370 00 0 17 777775 SOS -3(P) ; failed - set up return+1
252 000100' 262 17 0 00 000003 RDCSX: RGET (3,2,0) ; yes - error - restore AC's
253
254 000103' 263 17 0 00 000000 RTN ; and return
255
256
257 ;#************************************************************
258 ;* RDLAR - Read LAR
259 ;
260 ; This assumes that 'Diag Test EBUF' is not set and 'Diag Sel LAR' is
261 ; set in the CSR Register, so a DATAI can be used to load the CRAM).
262 ;
263 ; The data is returned right justified in AC1:
264 ;
265 ; Bits 23-34 - CRAM Address
266 ; 35 - 0 - Left half of CRAM word
267 ; 1 - Right half of CRAM word
268 ;#************************************************************
269
270 000104' 332 00 0 00 000061* RDLAR: SKIPE UDEBUG ; debug mode?
271 000105' 263 17 0 00 000000 RTN ; yes - return
272 000106' 261 17 0 00 000002 PUT 2 ; save AC2
273 000107' 200 02 0 00 002475' MOVE 2,[DATAI 0,1] ; build a DATAI from AC1
274 000110' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
275 000111' 256 00 0 00 000002 XCT 2 ; do the DATAI
276 000112' 135 01 0 00 002477' LDB 1,[POINT 13,1,13] ; position correctly
277 000113' 262 17 0 00 000002 GET 2 ; restore AC2
278 000114' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 8
DFCIAI MAC 29-Oct-84 18:39 Port Register Read/Write Routines SEQ 0934
279
280 ;#************************************************************
281 ;* RDCRAM - Read CRAM
282 ;
283 ; This assumes that 'Diag Test EBUF' and 'Diag Sel LAR' bits are
284 ; not set in the CSR Register, so a DATAI can be used to load the
285 ; CRAM). The data is returned in AC1.
286 ;#************************************************************
287
288 000115' 332 00 0 00 000104* RDCRAM: SKIPE UDEBUG ; debug mode?
289 000116' 263 17 0 00 000000 RTN ; yes - return
290 000117' 261 17 0 00 000002 PUT 2 ; save AC2
291 000120' 200 02 0 00 002475' MOVE 2,[DATAI 0,1] ; build a DATAI from AC1
292 000121' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
293 000122' 256 00 0 00 000002 XCT 2 ; do the DATAI
294 000123' 621 01 0 00 770000 TLZ 1,770000 ; ensure leftmost 6 bits are zero
295 000124' 262 17 0 00 000002 GET 2 ; restore AC2
296 000125' 263 17 0 00 000000 RTN ; return
297
298
299 ;#************************************************************
300 ;* .CONI - Do a simple CONI (no error checking)
301 ;
302 ; Argument: MBCN - Contains RH number to do (left justified properly)
303 ; as 54000,,0, etc.
304 ;
305 ; Returns: AC1 - Contains result
306 ; +1 always
307 ;#************************************************************
308
309 000126' 332 00 0 00 000115* .CONI: SKIPE UDEBUG ; debug mode?
310 000127' 263 17 0 00 000000 RTN ; yes - exit
311 000130' 261 17 0 00 000002 PUT 2 ; save AC2
312 000131' 200 02 0 00 002476' MOVE 2,[CONI 0,1] ; build a CONI from AC1
313 000132' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
314 000133' 256 00 0 00 000002 XCT 2 ; do the CONI
315 000134' 262 17 0 00 000002 GET 2 ; restore AC2
316 000135' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 9
DFCIAI MAC 29-Oct-84 18:39 Port Register Read/Write Routines SEQ 0935
317
318 ;#************************************************************
319 ;* .CONO - Do a simple CONO
320 ;
321 ; Argument: MBCN - Contains RH number to do (left justified properly)
322 ; as 54000,,0, etc.
323 ;
324 ; Returns: AC1 - Contains data to write to RH or IPA20
325 ; +1 always
326 ;#************************************************************
327
328 000136' 332 00 0 00 000126* .CONO: SKIPE UDEBUG ; debug mode?
329 000137' 263 17 0 00 000000 RTN ; yes - exit
330 000140' 261 17 0 00 000002 PUT 2 ; save AC2
331 000141' 200 02 0 00 002474' MOVE 2,[CONO] ; build a CONO
332 000142' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
333 000143' 540 02 0 00 000001 HRR 2,1 ; include data to write
334 000144' 256 00 0 00 000002 XCT 2 ; do the CONO
335 000145' 262 17 0 00 000002 GET 2 ; restore AC2
336 000146' 263 17 0 00 000000 RTN ; return
337
338
339 ;#************************************************************
340 ;* .DATAI - Do a simple DATAI (no error checking)
341 ;
342 ; Argument: MBCN - Contains RH number to do (left justified properly)
343 ; as 54000,,0, etc.
344 ;
345 ; Returns: AC1 - Contains result
346 ; +1 always
347 ;#************************************************************
348
349 000147' 332 00 0 00 000136* .DATAI: SKIPE UDEBUG ; debug mode?
350 000150' 263 17 0 00 000000 RTN ; yes - exit
351 000151' 261 17 0 00 000002 PUT 2 ; save AC2
352 000152' 200 02 0 00 002475' MOVE 2,[DATAI 0,1] ; build a DATAI from AC1
353 000153' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
354 000154' 256 00 0 00 000002 XCT 2 ; do the DATAI
355 000155' 262 17 0 00 000002 GET 2 ; restore AC2
356 000156' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 10
DFCIAI MAC 29-Oct-84 18:39 Port Register Read/Write Routines SEQ 0936
357
358 ;#************************************************************
359 ;* .DATAO - Do a simple DATAO
360 ;
361 ; Argument: MBCN - Contains RH number to do (left justified properly)
362 ; as 54000,,0, etc.
363 ;
364 ; Returns: AC1 - Contains data to write to RH or IPA20
365 ; +1 always
366 ;#************************************************************
367
368 000157' 332 00 0 00 000147* .DATAO: SKIPE UDEBUG ; debug mode?
369 000160' 263 17 0 00 000000 RTN ; yes - exit
370 000161' 261 17 0 00 000002 PUT 2 ; save AC2
371 000162' 200 02 0 00 002473' MOVE 2,[DATAO 0,1] ; build a DATAO
372 000163' 434 02 0 00 000016 IOR 2,MBCN ; include the device code
373 000164' 256 00 0 00 000002 XCT 2 ; do the DATAO
374 000165' 262 17 0 00 000002 GET 2 ; restore AC2
375 000166' 263 17 0 00 000000 RTN ; return
376
377
378 ;#********************************************************************
379 ;* ERESET - Issue an EBUS reset
380 ;#********************************************************************
381
382 000167' 332 00 0 00 000157* ERESET: SKIPE UDEBUG ; debug mode?
383 000170' 263 17 0 00 000000 RTN ; yes - exit
384 000171' 336 00 0 00 030037 SKIPN USER ; user mode?
385 000172' 7 000 20 0 00 200000 CONO APR,200000 ; no - do an EBUS reset
386 000173' 332 00 0 00 030037 SKIPE USER ; user mode?
387 000174' 260 17 0 00 000252' GO IPACLR ; yes - do a 'port clear' instead
388 000175' 263 17 0 00 000000 RTN
389
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 11
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0937
390 SUBTTL Port Specific Utility Routines
391
392 ;#********************************************************************
393 ;* ISTOP - Stop IPA either by a port clear or by clearing the CSR register
394 ;#********************************************************************
395
396 000176' 332 00 0 00 000167* ISTOP: SKIPE UDEBUG ; debug mode?
397 000177' 263 17 0 00 000000 RTN ; yes - return
398 000200' 261 17 0 00 000000 RPUT (0,1,2) ; save AC's
399
400 000203' 260 17 0 00 000060' GO RDCSR ; read CSR register
401 000204' 474 01 0 00 000000 SETO 1, ; error - ensure error bits are set
402 000205' 200 02 0 00 000001 MOVE 2,1 ; get into AC2
403 000206' 603 01 0 00 004000 TLNE 1,(CRAMPE) ; CRAM parity error bit set?
404 000207' 254 00 0 00 000212' JRST ISTOP0 ; yes - must clear it
405 000210' 606 01 0 00 000010 TRNN 1,MPRUN ; IPA running?
406 000211' 254 00 0 00 000244' JRST ISTOPX ; no - exit
407 000212' 200 00 0 00 000001 ISTOP0: MOVE 1 ; get into AC0
408 000213' 400 01 0 00 000000 SETZ 1, ; CSR data to clear 'MPRUN'
409 000214' 603 00 0 00 002000 TLNE (MBERR) ; MBUS error bit set?
410 000215' 254 00 0 00 000240' JRST ISTOPC ; yes - must do a port clear
411 000216' 603 00 0 00 004000 TLNE (CRAMPE) ; CRAM parity error bit set?
412 000217' 201 01 0 00 004000 MOVEI 1,EBUSPE ; yes - get 'EBUS PE' bit
413 000220' 260 17 0 00 000010' GO LDCSR ; write CSR
414 000221' 260 17 0 00 000060' GO RDCSR ; read CSR register
415 000222' 474 01 0 00 000000 SETO 1, ; error - ensure error bits are set
416 000223' 603 01 0 00 006000 TLNE 1,(CRAMPE!MBERR) ; error bits set?
417 000224' 254 00 0 00 000240' JRST ISTOPC ; yes - must do a port clear
418 000225' 602 01 0 00 000010 TRNE 1,MPRUN ; still running?
419 000226' 254 00 0 00 000240' JRST ISTOPC ; yes - must do a port clear
420 000227' 603 02 0 00 004000 TLNE 2,(CRAMPE) ; was CRAM PE set before?
421 000230' 332 00 0 00 000000* SKIPE PMODE ; yes - running a test?
422 000231' 334 00 0 00 000000 SKIPA ; yes - don't print anything
423 000232' 037 00 0 00 002500' TMSGCD <[CRAM PE cleared]> ; no - let operator know
424 000233' 607 02 0 00 004000 TLNN 2,(CRAMPE) ; was CRAM PE set before?
425 000234' 332 00 0 00 000230* SKIPE PMODE ; no - running a test?
426 000235' 334 00 0 00 000000 SKIPA ; yes - don't print anything
427 000236' 037 00 0 00 002505' TMSGCD <[Port stopped]> ; no - let operator know
428 000237' 254 00 0 00 000244' JRST ISTOPX ; no - exit
429 000240' 201 01 0 00 400000 ISTOPC: MOVEI 1,PCLEAR ; get 'port clear' bit
430 000241' 260 17 0 00 000010' GO LDCSR ; write the CSR register
431 000242' 336 00 0 00 000234* SKIPN PMODE ; no - running a test?
432 000243' 037 00 0 00 002511' TMSGCD <[Port Clear done]> ; let operator know
433 000244' 400 01 0 00 000000 ISTOPX: SETZ 1, ; clear AC1
434 000245' 260 17 0 00 000010' GO LDCSR ; clear CSR register
435 000246' 262 17 0 00 000002 RGET (2,1,0) ; restore AC's
436
437 000251' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 12
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0938
438
439 ;#********************************************************************
440 ;* IPACLR - Issue a port clear
441 ;#********************************************************************
442
443 000252' 261 17 0 00 000001 IPACLR: PUT 1 ; save AC1
444 000253' 201 01 0 00 400000 MOVEI 1,PCLEAR ; get 'port clear' bit
445 000254' 260 17 0 00 000010' GO LDCSR ; write the CSR register
446 000255' 262 17 0 00 000001 GET 1 ; restore AC1
447 000256' 263 17 0 00 000000 RTN ; return
448
449
450 ;#********************************************************************
451 ;* SETEBU - Check that 'Diag Test EBUF' bit is set in CSR and set if not.
452 ;
453 ; Return +1 - Error accessing CSR
454 ; +2 - Ok
455 ;#********************************************************************
456
457 000257' 261 17 0 00 000000 SETEBU: RPUT (0,1) ; save AC's
458
459 000261' 260 17 0 00 000060' GO RDCSR ; read CSR
460 000262' 254 00 0 00 000271' JRST SETEBE ; error return
461 000263' 200 00 0 00 000001 MOVE 1 ; get copy of AC1 into AC0
462 000264' 660 01 0 00 200000 TRO 1,TSTEBF ; set this bit
463 000265' 620 01 0 00 040000 TRZ 1,SELLAR ; clear this bit
464 000266' 312 00 0 00 000001 CAME 1 ; bits already set up ok?
465 000267' 260 17 0 00 000010' GO LDCSR ; no - set/clear them
466 000270' 350 00 0 17 777776 AOS -2(P) ; set up ok return
467 000271' 262 17 0 00 000001 SETEBE: RGET (1,0) ; restore AC's
468
469 000273' 263 17 0 00 000000 RTN ; return
470
471
472 ;#********************************************************************
473 ;* SETLAR - Check that 'Diag Sel LAR' bit is set in CSR and set if not.
474 ;
475 ; Return +1 - Error accessing CSR
476 ; +2 - Ok
477 ;#********************************************************************
478
479 000274' 261 17 0 00 000000 SETLAR: RPUT (0,1) ; save AC's
480
481 000276' 260 17 0 00 000060' GO RDCSR ; read CSR
482 000277' 254 00 0 00 000306' JRST SETLAE ; error return
483 000300' 200 00 0 00 000001 MOVE 1 ; get copy of AC1 into AC0
484 000301' 620 01 0 00 200000 TRZ 1,TSTEBF ; clear this bit
485 000302' 660 01 0 00 040000 TRO 1,SELLAR ; set this bit
486 000303' 312 00 0 00 000001 CAME 1 ; bits already set up ok?
487 000304' 260 17 0 00 000010' GO LDCSR ; is set in CSR Register
488 000305' 350 00 0 17 777776 AOS -2(P) ; set up ok return
489 000306' 262 17 0 00 000001 SETLAE: RGET (1,0) ; restore AC's
490
491 000310' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 13
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0939
492
493 ;#********************************************************************
494 ;* CLREBU - Check that 'Diag Test EBUF' is not set in CSR and clear if is.
495 ;
496 ; Return +1 - Error accessing CSR
497 ; +2 - Ok
498 ;#********************************************************************
499
500 000311' 261 17 0 00 000000 CLREBU: RPUT (0,1) ; save AC's
501
502 000313' 260 17 0 00 000060' GO RDCSR ; read CSR
503 000314' 254 00 0 00 000322' JRST CLREBE ; error return
504 000315' 606 01 0 00 200000 TRNN 1,TSTEBF ; 'Diag Test EBUF' bit set?
505 000316' 254 00 0 00 000321' JRST CLREBX ; no - exit
506 000317' 620 01 0 00 200000 TRZ 1,TSTEBF ; make sure 'Diag Test EBUF' bit
507 000320' 260 17 0 00 000010' GO LDCSR ; is cleared in CSR Register
508 000321' 350 00 0 17 777776 CLREBX: AOS -2(P) ; set up ok return
509 000322' 262 17 0 00 000001 CLREBE: RGET (1,0) ; restore AC's
510
511 000324' 263 17 0 00 000000 RTN ; return
512
513
514 ;#********************************************************************
515 ;* CHKCSR - Check if error bits are set in the CSR register
516 ;
517 ; Also, stop the IPA if it is running, and announce the fact to the
518 ; user.
519 ;#********************************************************************
520
521 000325' 261 17 0 00 000001 CHKCSR: PUT 1 ; save AC1
522 000326' 260 17 0 00 000060' GO RDCSR ; read CSR register
523 000327' 334 00 0 00 000000 SKIPA ; error return
524 000330' 603 01 0 00 002000 TLNE 1,(MBERR) ; MBUS Error bit set?
525 000331' 254 00 0 00 000342' JRST CHKCSX ; yes - error exit
526 000332' 603 01 0 00 004000 TLNE 1,(CRAMPE) ; CRAM PE bit set?
527 GO [MOVEI 1,EBUSPE ; yes - clear it
528 GO LDCSR
529 TMSGCD <[CRAM PE cleared from CSR register]>
530 000333' 260 17 0 00 002526' RTN]
531 000334' 350 00 0 17 777777 AOS -1(P) ; no - set up RTN+2
532
533 ; Also, check to see if the IPA is running
534
535 000335' 606 01 0 00 000010 TRNN 1,MPRUN ; running?
536 000336' 254 00 0 00 000342' JRST CHKCSX ; no - continue
537 000337' 400 01 0 00 000000 SETZ 1, ; clear AC1
538 000340' 260 17 0 00 000010' GO LDCSR ; stop the port
539 000341' 037 00 0 00 002532' TMSGCD <[CSR cleared to stop the port]>
540 000342' 262 17 0 00 000001 CHKCSX: GET 1 ; restore AC1
541 000343' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 14
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0940
542
543 ;#********************************************************************
544 ;* IPASRT - Start the port at the address given in 'SADDR' and with
545 ;* initial parameters given in 'SDATA'.
546 ;
547 ; Arguments: SNEXT - Contains the start address desired.
548 ;
549 ; SDATA - Contains the data to be written to the CSR
550 ; registers to initialize everything correctly.
551 ;
552 ; Note: This routine is normally used in conjunction with IPASTP. IPASTP
553 ; saves the next address in SNEXT and the contents of CSR in SDATA.
554 ; Calling IPASRT after IPASTP has been called will leave the port
555 ; in the same state that it was, unless something is done to the
556 ; port between the calls.
557 ;
558 ; Procedure: (1) Obtain start address in 'SNEXT' and write it to the
559 ; RAR Register.
560 ;
561 ; (2) If SDATA is zero, no initial data is assumed. The
562 ; CSR is written as follows:
563 ;
564 ; Clear 'Single Cycle' - no single stepping apparently
565 ; is desired.
566 ; Set 'MPROC Run' - Start it up at address in RAR.
567 ; Set PIA bits to 4 - Allow interrupts on channel 4.
568 ; Clear all remaining bits.
569 ;
570 ; (3) If SDATA is non-zero, the initial data given in SDATA
571 ; is massaged to ensure that at least the following is
572 ; true of the data:
573 ;
574 ; 'Single Cycle' bit is cleared.
575 ; 'MPROC Run' bit is set.
576 ;
577 ; Return: +1 - Failed (Error reading/writing CSR Register).
578 ; +2 - Failed (Port already running).
579 ; +3 - Failed (Error bits set in CSR)
580 ; +4 - Ok
581 ;#********************************************************************
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 15
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0941
582
583 000344' 261 17 0 00 000000 IPASRT: RPUT (0,1) ; save AC's
584
585
586 ; First check if the port is already running
587
588 000346' 260 17 0 00 000060' GO RDCSR ; read CSR
589 000347' 254 00 0 00 000373' JRST IPASR3 ; error accessing CSR register
590 000350' 602 01 0 00 000010 TRNE 1,MPRUN ; uproc already running?
591 000351' 254 00 0 00 000372' JRST IPASR2 ; yes - exit +2 (error)
592
593 ; Check for error bits set
594
595 000352' 603 01 0 00 006000 TLNE 1,(CRAMPE!MBERR) ; error bits set?
596 000353' 254 00 0 00 000371' JRST IPASR1 ; yes - error exit
597
598 ; Now handle start address
599
600 000354' 622 01 0 00 200000 TRZE 1,TSTEBF ; 'Diag Test EBUF' bit set?
601 000355' 260 17 0 00 000010' GO LDCSR ; yes - clear it
602 000356' 200 01 0 00 000426' MOVE 1,SNEXT ; get start address
603 000357' 242 01 0 00 000001 LSH 1,1 ; position correctly
604 000360' 260 17 0 00 000021' GO LDRAR ; load the register
605
606 ; Set up data to write to CSR
607
608 000361' 336 01 0 00 000430' IPASR0: SKIPN 1,SDATA ; any data given?
609 000362' 201 01 0 00 000014 MOVEI 1,MPRUN!4 ; no - set initial data
610 000363' 620 01 0 00 020000 TRZ 1,SINCYC ; ensure SINCYC are cleared
611 000364' 660 01 0 00 040010 TRO 1,MPRUN!SELLAR ; ensure MPRUN,SELLAR are set
612 000365' 332 00 0 00 030037 SKIPE USER ; user mode?
613 000366' 620 01 0 00 000007 TRZ 1,7 ; yes - clear PI level bits
614
615 ; Write the data to CSR
616
617 000367' 260 17 0 00 000010' GO LDCSR
618 000370' 350 00 0 17 777776 AOS -2(P) ; ok exit (+4)
619 000371' 350 00 0 17 777776 IPASR1: AOS -2(P) ; error exit (+3)
620 000372' 350 00 0 17 777776 IPASR2: AOS -2(P) ; error exit (+2)
621 000373' 262 17 0 00 000001 IPASR3: RGET (1,0) ; error exit (+1)
622
623 000375' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 16
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0942
624
625 ;#********************************************************************
626 ;* IPASTP - Stop the port
627 ;
628 ; Arguments: None
629 ;
630 ; Procedure: Read the CSR Register.
631 ; Clear 'MPROC Run' bit.
632 ; Write this data to CSR.
633 ; Read the CSR Register and save data in SDATA.
634 ; Write 'DIAG Sel LAR' bit in CSR.
635 ; Read the LAR and save data in SNEXT.
636 ;
637 ; Return: +1 - Failed (Error reading/writing CSR Register).
638 ; +2 - Failed (Port not running).
639 ; +3 - Failed (Error bits set in CSR)
640 ; +4 - Ok, SDATA and SADDR have data at stopping point.
641 ;#********************************************************************
642
643 000376' 261 17 0 00 000000 IPASTP: RPUT (0,1) ; save AC's
644
645
646 ; First read CSR and verify that 'MPRUN' is set.
647
648 000400' 260 17 0 00 000060' GO RDCSR ; read CSR
649 000401' 254 00 0 00 000423' JRST IPAST3 ; failed - exit +1
650 000402' 606 01 0 00 000010 TRNN 1,MPRUN ; uproc running?
651 000403' 254 00 0 00 000422' JRST IPAST2 ; no - failed - exit +2
652
653 ; Check for error bits set
654
655 000404' 603 01 0 00 006000 TLNE 1,(CRAMPE!MBERR) ; error bits set?
656 000405' 254 00 0 00 000421' JRST IPAST1 ; yes - error exit
657
658 ; Then clear 'MPRUN'.
659
660 000406' 620 01 0 00 000010 TRZ 1,MPRUN ; clear 'MPROC Run' bit
661 000407' 260 17 0 00 000010' GO LDCSR ; write the CSR
662 000410' 260 17 0 00 000060' GO RDCSR ; read CSR
663 000411' 254 00 0 00 000423' JRST IPAST3 ; failed - exit
664 000412' 202 01 0 00 000430' MOVEM 1,SDATA ; save CSR at halt
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 17
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0943
665
666 ; Now read the stopping address (in LAR)
667
668 000413' 660 01 0 00 040000 TRO 1,SELLAR ; set 'Diag Sel LAR' bit
669 000414' 260 17 0 00 000010' GO LDCSR ; write it
670 000415' 260 17 0 00 000104' GO RDLAR ; read LAR
671 000416' 242 01 0 00 777777 LSH 1,-1 ; get LAR data
672 000417' 202 01 0 00 000426' MOVEM 1,SNEXT ; save the data
673
674 ; Exit
675
676 000420' 350 00 0 17 777776 AOS -2(P) ; ok exit (+4)
677 000421' 350 00 0 17 777776 IPAST1: AOS -2(P) ; error exit (+3)
678 000422' 350 00 0 17 777776 IPAST2: AOS -2(P) ; error exit (+2)
679 000423' 262 17 0 00 000001 IPAST3: RGET (1,0) ; error exit (+1)
680
681 000425' 263 17 0 00 000000 RTN ; return
682
683 ; Parameter locations
684
685 000426' 000000 000000 SNEXT: 0 ; next address
686 000427' 000000 000000 SLAST: 0 ; last address
687 000430' 000000 000000 SDATA: 0 ; contents of CSR at when stopped
688 000431' 000000 000000 EADDR: 0 ; correct stopping address
689 000432' 000000 000000 AADDR: 0 ; actual stopping address
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 18
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0944
690
691 ;#********************************************************************
692 ;* IPASST - Single step the port at the address given in 'SNEXT' and
693 ;* with initial parameters given in 'SDATA'.
694 ;
695 ; Arguments: SADDR - Contains the start address desired.
696 ;
697 ; SDATA - Contains the data to be written to the CSR
698 ; registers to initialize everything correctly.
699 ;
700 ; AC1 - 0 - Don't preserve EBUF data
701 ; -1 - Preserve EBUF data
702 ;
703 ; Procedure: (1) Start the port exactly as IPASRT would have, except
704 ; that 'Single Cycle' is set at the same time as
705 ; 'MPRUN'.
706 ;
707 ; (2) Successive calls to IPASST do as in (1), except
708 ; that SDATA is already set up and SNEXT is being
709 ; continually copied to SLAST and new contents of
710 ; the LAR are being put into SNEXT.
711 ;
712 ; Return: +1 - Failed (Error reading/writing CSR Register).
713 ; +2 - Failed (Port already running).
714 ; +3 - Failed (Error bits set in CSR)
715 ; +4 - Ok
716 ;#********************************************************************
717
718 000433' 261 17 0 00 000000 IPASST: RPUT (0,1) ; save AC's
719
720 000435' 202 01 0 00 003657' MOVEM 1,PRSFLG# ; save 'Preserve EBUF' flag
721
722 ; First check if the port is already running
723
724 000436' 260 17 0 00 000060' GO RDCSR ; read CSR register
725 000437' 254 00 0 00 000514' JRST IPASS4 ; error accessing CSR register
726 000440' 602 01 0 00 000010 TRNE 1,MPRUN ; uproc already running?
727 000441' 254 00 0 00 000513' JRST IPASS3 ; yes - exit +2 (error)
728
729 ; Check for error bits set
730
731 000442' 603 01 0 00 006000 TLNE 1,(CRAMPE!MBERR) ; error bits set?
732 000443' 254 00 0 00 000512' JRST IPASS2 ; yes - error exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 19
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0945
733
734 ; Now handle start address
735
736 000444' 606 01 0 00 200000 TRNN 1,TSTEBF ; 'Diag Test EBUF' bit set?
737 000445' 254 00 0 00 000450' JRST .+3 ; no - continue
738 000446' 620 01 0 00 200000 TRZ 1,TSTEBF ; make sure 'Diag Test EBUF' bit
739 000447' 260 17 0 00 000010' GO LDCSR ; is cleared in CSR Register
740 000450' 200 01 0 00 000426' MOVE 1,SNEXT ; get start address
741 000451' 242 01 0 00 000001 LSH 1,1 ; position correctly
742 000452' 260 17 0 00 000021' GO LDRAR ; load the register
743
744 ; Set up data to write to CSR
745
746 000453' 336 01 0 00 000430' IPASS0: SKIPN 1,SDATA ; any data given?
747 000454' 201 01 0 00 000014 MOVEI 1,MPRUN!4 ; no - set initial data
748 000455' 660 01 0 00 060010 TRO 1,SELLAR!MPRUN!SINCYC ; ensure MPRUN,SELLAR,SINCYC are set
749 000456' 332 00 0 00 030037 SKIPE USER ; user mode?
750 000457' 620 01 0 00 000007 TRZ 1,7 ; yes - clear PI level bits
751
752 ; Do the single step
753
754 000460' 260 17 0 00 000010' GO LDCSR ; write the data
755
756 ; Read CSR
757
758 000461' 260 17 0 00 000060' GO RDCSR ; read CSR
759 000462' 255 00 0 00 000000 JFCL ; ignore error
760 000463' 202 01 0 00 000430' MOVEM 1,SDATA ; save it
761
762 ; Save EBUF contents
763
764 000464' 331 00 0 00 003657' SKIPL PRSFLG ; preserve EBUF data?
765 000465' 254 00 0 00 000475' JRST IPASS1 ; no - continue
766 000466' 660 01 0 00 200000 TRO 1,TSTEBF ; set 'Diag Test EBUF'
767 000467' 260 17 0 00 000010' GO LDCSR ; write it
768 000470' 260 17 0 00 000050' GO RDEBUF ; read the EBUF
769 000471' 202 01 0 00 003661' MOVEM 1,SAVEBF# ; save EBUF data
770 000472' 200 01 0 00 000430' MOVE 1,SDATA ; get CSR data
771 000473' 620 01 0 00 200000 TRZ 1,TSTEBF ; set 'Diag Test EBUF'
772 000474' 260 17 0 00 000010' GO LDCSR ; write it
773
774 ; Read LAR
775
776 000475' 200 00 0 00 000426' IPASS1: MOVE SNEXT ; get original next address
777 000476' 202 00 0 00 000427' MOVEM SLAST ; save in last address
778 000477' 260 17 0 00 000104' GO RDLAR ; read LAR register
779 000500' 242 01 0 00 777777 LSH 1,-1 ; get LAR data
780 000501' 202 01 0 00 000426' MOVEM 1,SNEXT ; set up new next address
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 20
DFCIAI MAC 29-Oct-84 18:39 Port Specific Utility Routines SEQ 0946
781
782 ; Restore EBUF
783
784 000502' 200 01 0 00 000430' MOVE 1,SDATA ; get CSR data back
785 000503' 660 01 0 00 200000 TRO 1,TSTEBF ; set 'Diag Test EBUF'
786 000504' 260 17 0 00 000010' GO LDCSR ; write it
787 000505' 200 01 0 00 003661' MOVE 1,SAVEBF ; restore EBUF data
788 000506' 260 17 0 00 000000' GO LDEBUF ; write the EBUF
789 000507' 200 01 0 00 000430' MOVE 1,SDATA ; get CSR data back
790 000510' 260 17 0 00 000010' GO LDCSR ; write it
791
792 000511' 350 00 0 17 777776 AOS -2(P) ; ok exit (+4)
793 000512' 350 00 0 17 777776 IPASS2: AOS -2(P) ; error exit (+3)
794 000513' 350 00 0 17 777776 IPASS3: AOS -2(P) ; error exit (+2)
795 000514' 262 17 0 00 000001 IPASS4: RGET (1,0) ; error exit (+1)
796
797 000516' 263 17 0 00 000000 RTN ; return
798
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 21
DFCIAI MAC 29-Oct-84 18:39 PI System Routines SEQ 0947
799 SUBTTL PI System Routines
800
801 ;#********************************************************************
802 ;* INITPI - Initialize and Turn On PI System
803 ;
804 ; In exec mode only. Turn on PI system with all channels activated.
805 ; Also, write PI level bits to 0's for all other RH's to ensure that
806 ; only the port interrupts.
807 ;#********************************************************************
808
809 000517' 332 00 0 00 030037 INITPI: SKIPE USER ; user mode?
810 000520' 263 17 0 00 000000 RTN ; yes - exit
811 000521' 261 17 0 00 000001 PUT 1 ; save AC1
812 000522' 7 004 20 0 00 010000 CONO PI,PICLR ; clear PI system
813
814 ; Set PI level bits to zero for each RH slot
815
816 000523' 7 540 20 0 00 000000 CONO 540,0 ; set PIA level bits to 0
817 000524' 7 544 20 0 00 000000 CONO 544,0 ; set PIA level bits to 0
818 000525' 7 550 20 0 00 000000 CONO 550,0 ; set PIA level bits to 0
819 000526' 7 554 20 0 00 000000 CONO 554,0 ; set PIA level bits to 0
820 000527' 7 560 20 0 00 000000 CONO 560,0 ; set PIA level bits to 0
821 000530' 7 570 20 0 00 000000 CONO 570,0 ; set PIA level bits to 0
822 000531' 7 574 20 0 00 000000 CONO 574,0 ; set PIA level bits to 0
823
824 ; Finally activate all channels and turn on the PI system
825
826 000532' 7 004 20 0 00 002177 INITP0: CONO PI,2177 ; activate all channels
827 000533' 7 004 20 0 00 000200 CONO PI,PION ; turn on PI system
828 000534' 261 17 0 00 000000 PUT 0 ; save AC0
829 000535' 200 00 0 00 002541' MOVE [INTNUM,,INTNUM+1] ; build BLT pointer
830 000536' 251 00 0 00 001330' BLT INTEND ; clear interrupt history data
831 000537' 262 17 0 00 000000 RGET (0,1) ; restore AC's
832
833 000541' 263 17 0 00 000000 RTN ; return
834
835 ; Clear PI system after returning from DDT
836
837 000542' 332 00 0 00 030037 INITPD: SKIPE USER ; user mode?
838 000543' 263 17 0 00 000000 RTN ; yes - exit
839 000544' 7 004 20 0 00 010000 CONO PI,PICLR ; clear PI system
840 000545' 254 00 0 00 000532' JRST INITP0 ; continue
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 22
DFCIAI MAC 29-Oct-84 18:39 PI System Routines SEQ 0948
841
842 ;#********************************************************************
843 ;* .PIOFF - Detach port from PI system
844 ;#********************************************************************
845
846 000546' 332 00 0 00 030037 .PIOFF: SKIPE USER ; user mode?
847 000547' 263 17 0 00 000000 RTN ; yes - return
848 000550' 261 17 0 00 000001 PUT 1 ; save AC1
849 000551' 260 17 0 00 000574' GO PISYOF ; no - turn off PI system
850 000552' 260 17 0 00 000060' GO RDCSR ; read CSR
851 000553' 255 00 0 00 000000 JFCL ; error return
852 000554' 620 01 0 00 000007 TRZ 1,7 ; clear PIA bits in CSR
853 000555' 260 17 0 00 000010' GO LDCSR ; write the bit
854 000556' 262 17 0 00 000001 GET 1 ; restore AC1
855 000557' 263 17 0 00 000000 RTN ; exit
856
857
858 ;#********************************************************************
859 ;* .PION - Attach port to PI system (Channel 4)
860 ;#********************************************************************
861
862 000560' 332 00 0 00 030037 .PION: SKIPE USER ; user mode?
863 000561' 263 17 0 00 000000 RTN ; yes - exit
864 000562' 261 17 0 00 000001 PUT 1 ; save AC1
865 000563' 260 17 0 00 000574' GO PISYOF ; turn PI system off
866 000564' 260 17 0 00 000060' GO RDCSR ; read CSR
867 000565' 255 00 0 00 000000 JFCL ; error return
868 000566' 620 01 0 00 000007 TRZ 1,7 ; clear PIA bits
869 000567' 660 01 0 00 000004 TRO 1,4 ; set PI level 4
870 000570' 260 17 0 00 000010' GO LDCSR ; write the bit
871 000571' 260 17 0 00 000577' GO PISYON ; turn PI system back on
872 000572' 262 17 0 00 000001 GET 1 ; restore AC
873 000573' 263 17 0 00 000000 RTN ; exit
874
875
876 ;#********************************************************************
877 ;* PISYOF - Turn PI system off
878 ;#********************************************************************
879
880 000574' 336 00 0 00 030037 PISYOF: SKIPN USER ; user mode?
881 000575' 7 004 20 0 00 000400 CONO PI,PIOFF ; no - turn it off
882 000576' 263 17 0 00 000000 RTN ; exit
883
884
885 ;#********************************************************************
886 ;* PISYON - Turn PI system on
887 ;#********************************************************************
888
889 000577' 336 00 0 00 030037 PISYON: SKIPN USER ; user mode?
890 000600' 7 004 20 0 00 002300 CONO PI,2300 ; no - turn on PI system
891 000601' 263 17 0 00 000000 RTN ; and exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 23
DFCIAI MAC 29-Oct-84 18:39 PI System Routines SEQ 0949
892
893 ;#********************************************************************
894 ;* SETVEC - Set up interrupt vectors for an port under test
895 ;#********************************************************************
896
897 000602' 402 00 0 00 001360' SETVEC: SETZM .INWD1 ; clear special interrupt data
898 000603' 332 00 0 00 030037 SKIPE USER ; user mode?
899 000604' 263 17 0 00 000000 RTN ; yes - exit
900 000605' 261 17 0 00 000000 RPUT (0,1) ; save AC's
901
902 000607' 200 00 0 00 002542' MOVE [JSR VIINT] ; get trap instruction (Vectored Int)
903 000610' 200 01 0 00 001371' MOVE 1,ICWA0+7 ; get initial address of log area
904 000611' 271 01 0 00 000003 ADDI 1,3 ; calculate address of 4th word
905 000612' 270 01 0 00 001374' ADD 1,CBASE ; add special page number
906 000613' 202 00 0 01 000000 MOVEM (1) ; put in 4th word of logout area
907 000614' 200 01 0 00 000622' MOVE 1,IVADDR
908 000615' 260 17 0 00 000623' GO SET2N ; set up 40+2N transfer addresses
909 000616' 476 00 0 00 001067' SETOM INTNUM ; initialize interrupt count
910 000617' 262 17 0 00 000001 RGET (1,0) ; restore AC's
911
912 000621' 263 17 0 00 000000 RTN
913
914 000622' 000000 000000 IVADDR: 0 ; interrupt vector address for port
915
916
917 ;#********************************************************************
918 ;* SET2N - Set up 40 + 2N locations with interrupt dispatch instruction
919 ;#********************************************************************
920
921 000623' 261 17 0 00 000000 SET2N: PUT ; save AC0
922 000624' 200 00 0 00 002543' MOVE [JSR NVIIN1] ; channel 1
923 000625' 202 00 0 00 000042 MOVEM 42
924 000626' 200 00 0 00 002544' MOVE [JSR NVIIN2] ; channel 2
925 000627' 202 00 0 00 000044 MOVEM 44
926 000630' 200 00 0 00 002545' MOVE [JSR NVIIN3] ; channel 3
927 000631' 202 00 0 00 000046 MOVEM 46
928 000632' 200 00 0 00 002546' MOVE [JSR NVIIN4] ; channel 4
929 000633' 202 00 0 00 000050 MOVEM 50
930 000634' 200 00 0 00 002547' MOVE [JSR NVIIN5] ; channel 5
931 000635' 202 00 0 00 000052 MOVEM 52
932 000636' 200 00 0 00 002550' MOVE [JSR NVIIN6] ; channel 6
933 000637' 202 00 0 00 000054 MOVEM 54
934 000640' 200 00 0 00 002551' MOVE [JSR NVIIN7] ; channel 7
935 000641' 202 00 0 00 000056 MOVEM 56
936 000642' 262 17 0 00 000000 GET ; restore AC0
937 000643' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 24
DFCIAI MAC 29-Oct-84 18:39 PI System Routines SEQ 0950
938
939 ;#********************************************************************
940 ;* VIINT - Vectored interrupt (Port)
941 ;
942 ; This routine (and NVIINx) do the following:
943 ;
944 ; - CONI PI and save it
945 ; - Shut off PI system
946 ; - Increment interrupt offset (not to exceed 20 interrupts)
947 ; - Save interrupt data
948 ; - Exit with a JEN after turning PI system back on
949 ;
950 ; Interrupt data maintained:
951 ;
952 ; INTPC - PC interrupted from
953 ; INTTYP - Type 0,,0 - Vectored (If overflow occurred
954 ; 0,,n - Non-vectored channel N the left half is -1)
955 ; INTCON - CONI PI data
956 ; INTAPR - CONI APR data
957 ; INTTIM - Time of interrupt (in msec)
958 ; INTUSE - Time of interrupt (addl time in usec)
959 ; INTCSR - CSR data on interrrupt
960 ; INTNNN - Interrupt #
961 ;
962 ; The index into these tables is saved in INTNUM.
963 ;#********************************************************************
964
965 000644' 000000 000000 VIINT: 0 ; flags and PC get stored here
966 000645' 7 004 24 0 00 003663' CONI PI,VIIPI# ; save CONI PI data
967 000646' 7 004 20 0 00 000400 CONO PI,PIOFF ; no - turn off PI system
968 000647' 261 17 0 00 000000 RPUT (0,1,2,3,$SVUUO,$SVUPC) ; save some stuff
969
970
971 ; Save interrupt data
972
973 000655' 400 00 0 00 000000 SETZ ; initialized interrupt type
974 000656' 350 01 0 00 001067' AOS 1,INTNUM ; increment interrupt number
975 000657' 301 01 0 00 000024 CAIL 1,^D20 ; exceed maximum?
976 000660' 505 00 0 00 777777 HRLI 777777 ; yes - flag such
977 000661' 301 01 0 00 000024 CAIL 1,^D20 ; exceed maximum?
978 000662' 201 01 0 00 000023 MOVEI 1,^D19 ; yes - limit to 20 entries
979 000663' 202 00 0 01 001114' MOVEM INTTYP(1) ; save interrupt type
980 000664' 200 00 0 00 001067' MOVE INTNUM ; get interrupt number
981 000665' 202 00 0 01 001304' MOVEM INTNNN(1) ; save it
982 000666' 200 00 0 00 000644' MOVE VIINT ; get interrupt PC
983 000667' 202 00 0 01 001070' MOVEM INTPC(1) ; save it
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 25
DFCIAI MAC 29-Oct-84 18:39 PI System Routines SEQ 0951
984 000670' 200 00 0 00 003663' MOVE VIIPI ; get CONI PI data
985 000671' 202 00 0 01 001140' MOVEM INTCON(1) ; save it
986 000672' 7 000 24 0 00 000000 CONI APR,0 ; get CONI APR data
987 000673' 202 00 0 01 001164' MOVEM INTAPR(1) ; save it
988 000674' 400 03 0 00 000000 SETZ 3, ; set up for getting time
989 000675' 260 17 0 00 000000* GO RUNTME ; get current time
990 000676' 200 00 0 00 000000* MOVE DEBTIM ; get time in milliseconds
991 000677' 202 00 0 01 001210' MOVEM INTTIM(1) ; save it
992 000700' 200 00 0 00 000000* MOVE USTIM ; get addl time in microseconds
993 000701' 202 00 0 01 001234' MOVEM INTUSE(1) ; save it
994
995 ; Exit after turning on PI system (if not refusing them anymore)
996
997 000702' 200 00 0 01 001304' MOVE INTNNN(1) ; get interrupt number
998 000703' 307 00 0 00 020000 CAIG 20000 ; more than 20000 interrupts?
999 000704' 260 17 0 00 000560' GO .PION ; no - turn on PI system
1000 000705' 303 00 0 00 020000 CAILE 20000 ; more than 20000 interrupts?
1001 000706' 476 00 0 00 001360' SETOM .INWD1 ; yes - indicate such
1002 000707' 262 17 0 00 030114 RGET ($SVUPC,$SVUUO,3,2,1,0) ; restore stuff
1003
1004 000715' 254 12 1 00 000644' JEN @VIINT ; release interrupt and return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 26
DFCIAI MAC 29-Oct-84 18:39 PI System Routines SEQ 0952
1005
1006 ;#********************************************************************
1007 ;* NVIINx - Non-Vectored interrupt (Port)
1008 ;#********************************************************************
1009
1010 000716' 000000 000000 NVIIN1: 0 ; for PC+flags
1011 000717' 7 004 24 0 00 003663' CONI PI,VIIPI ; save CONI PI data
1012 000720' 7 004 20 0 00 000400 CONO PI,PIOFF ; turn off PI system
1013 000721' 261 17 0 00 000000 PUT 0 ; save AC0
1014 000722' 200 00 0 00 000716' MOVE NVIIN1 ; get interrupt PC
1015 000723' 202 00 0 00 001066' MOVEM NVJEN ; save it for JEN
1016 000724' 201 00 0 00 000001 MOVEI 1 ; set up interrupt type
1017 000725' 254 00 0 00 001006' JRST NVIINC ; go to common handling
1018
1019 000726' 000000 000000 NVIIN2: 0 ; for PC+flags
1020 000727' 7 004 24 0 00 003663' CONI PI,VIIPI ; save CONI PI data
1021 000730' 7 004 20 0 00 000400 CONO PI,PIOFF ; turn off PI system
1022 000731' 261 17 0 00 000000 PUT 0 ; save AC0
1023 000732' 200 00 0 00 000726' MOVE NVIIN2 ; get interrupt PC
1024 000733' 202 00 0 00 001066' MOVEM NVJEN ; save it for JEN
1025 000734' 201 00 0 00 000002 MOVEI 2 ; set up interrupt type
1026 000735' 254 00 0 00 001006' JRST NVIINC ; go to common handling
1027
1028 000736' 000000 000000 NVIIN3: 0 ; for PC+flags
1029 000737' 7 004 24 0 00 003663' CONI PI,VIIPI ; save CONI PI data
1030 000740' 7 004 20 0 00 000400 CONO PI,PIOFF ; turn off PI system
1031 000741' 261 17 0 00 000000 PUT 0 ; save AC0
1032 000742' 200 00 0 00 000736' MOVE NVIIN3 ; get interrupt PC
1033 000743' 202 00 0 00 001066' MOVEM NVJEN ; save it for JEN
1034 000744' 201 00 0 00 000003 MOVEI 3 ; set up interrupt type
1035 000745' 254 00 0 00 001006' JRST NVIINC ; go to common handling
1036
1037 000746' 000000 000000 NVIIN4: 0 ; for PC+flags
1038 000747' 7 004 24 0 00 003663' CONI PI,VIIPI ; save CONI PI data
1039 000750' 7 004 20 0 00 000400 CONO PI,PIOFF ; turn off PI system
1040 000751' 261 17 0 00 000000 PUT 0 ; save AC0
1041 000752' 200 00 0 00 000746' MOVE NVIIN4 ; get interrupt PC
1042 000753' 202 00 0 00 001066' MOVEM NVJEN ; save it for JEN
1043 000754' 201 00 0 00 000004 MOVEI 4 ; set up interrupt type
1044 000755' 254 00 0 00 001006' JRST NVIINC ; go to common handling
1045
1046 000756' 000000 000000 NVIIN5: 0 ; for PC+flags
1047 000757' 7 004 24 0 00 003663' CONI PI,VIIPI ; save CONI PI data
1048 000760' 7 004 20 0 00 000400 CONO PI,PIOFF ; turn off PI system
1049 000761' 261 17 0 00 000000 PUT 0 ; save AC0
1050 000762' 200 00 0 00 000756' MOVE NVIIN5 ; get interrupt PC
1051 000763' 202 00 0 00 001066' MOVEM NVJEN ; save it for JEN
1052 000764' 201 00 0 00 000005 MOVEI 5 ; set up interrupt type
1053 000765' 254 00 0 00 001006' JRST NVIINC ; go to common handling
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 27
DFCIAI MAC 29-Oct-84 18:39 PI System Routines SEQ 0953
1054
1055 000766' 000000 000000 NVIIN6: 0 ; for PC+flags
1056 000767' 7 004 24 0 00 003663' CONI PI,VIIPI ; save CONI PI data
1057 000770' 7 004 20 0 00 000400 CONO PI,PIOFF ; turn off PI system
1058 000771' 261 17 0 00 000000 PUT 0 ; save AC0
1059 000772' 200 00 0 00 000766' MOVE NVIIN6 ; get interrupt PC
1060 000773' 202 00 0 00 001066' MOVEM NVJEN ; save it for JEN
1061 000774' 201 00 0 00 000006 MOVEI 6 ; set up interrupt type
1062 000775' 254 00 0 00 001006' JRST NVIINC ; go to common handling
1063
1064 000776' 000000 000000 NVIIN7: 0 ; for PC+flags
1065 000777' 7 004 24 0 00 003663' CONI PI,VIIPI ; save CONI PI data
1066 001000' 7 004 20 0 00 000400 CONO PI,PIOFF ; turn off PI system
1067 001001' 261 17 0 00 000000 PUT 0 ; save AC0
1068 001002' 200 00 0 00 000776' MOVE NVIIN7 ; get interrupt PC
1069 001003' 202 00 0 00 001066' MOVEM NVJEN ; save it for JEN
1070 001004' 201 00 0 00 000007 MOVEI 7 ; set up interrupt type
1071 001005' 254 00 0 00 001006' JRST NVIINC ; go to common handling
1072
1073 ; Save AC's and calculate interrupt number
1074
1075 001006' 261 17 0 00 000001 NVIINC: RPUT (1,2,3,$SVUUO,$SVUPC) ; save some stuff
1076
1077 001013' 350 02 0 00 001067' AOS 2,INTNUM ; increment interrupt number
1078 001014' 301 02 0 00 000024 CAIL 2,^D20 ; exceed maximum?
1079 001015' 505 00 0 00 777777 HRLI 777777 ; yes - flag such
1080 001016' 301 02 0 00 000024 CAIL 2,^D20 ; exceed maximum?
1081 001017' 201 02 0 00 000023 MOVEI 2,^D19 ; yes - limit to 20 entries
1082
1083 ; Save interrupt data
1084
1085 001020' 202 00 0 02 001114' MOVEM INTTYP(2) ; save interrupt type
1086 001021' 200 00 0 00 001067' MOVE INTNUM ; get interrupt number
1087 001022' 202 00 0 02 001304' MOVEM INTNNN(2) ; save interrupt number
1088 001023' 200 00 0 00 001066' MOVE NVJEN ; get interrupt PC
1089 001024' 202 00 0 02 001070' MOVEM INTPC(2) ; save it
1090 001025' 200 00 0 00 003663' MOVE VIIPI ; get CONI PI data
1091 001026' 202 00 0 02 001140' MOVEM INTCON(2) ; save it
1092 001027' 7 000 24 0 00 000000 CONI APR,0 ; get CONI APR data
1093 001030' 202 00 0 02 001164' MOVEM INTAPR(2) ; save it
1094 001031' 260 17 0 00 000060' GO RDCSR ; read CSR register
1095 001032' 255 00 0 00 000000 JFCL ; ignore error
1096 001033' 202 01 0 02 001260' MOVEM 1,INTCSR(2) ; save data
1097 001034' 400 03 0 00 000000 SETZ 3, ; set up for getting time
1098 001035' 260 17 0 00 000675* GO RUNTME ; get current time
1099 001036' 200 00 0 00 000676* MOVE DEBTIM ; get time in milliseconds
1100 001037' 202 00 0 02 001210' MOVEM INTTIM(2) ; save it
1101 001040' 200 00 0 00 000700* MOVE USTIM ; get addl time in microseconds
1102 001041' 202 00 0 02 001234' MOVEM INTUSE(2) ; save it
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 28
DFCIAI MAC 29-Oct-84 18:39 PI System Routines SEQ 0954
1103
1104 ; Save special interrupt data if necessary
1105
1106 001042' 400 03 0 00 000000 SETZ 3, ; clear LAR data
1107 001043' 603 01 0 00 004000 TLNE 1,(CRAMPE) ; CRAM PE occurred?
1108 GO [TLZ 1,(CRAMPE) ; yes - clear it and read
1109 TRO 1,SELLAR!EBUSPE ; LAR
1110 GO LDCSR
1111 GO RDLAR
1112 MOVE 3,1
1113 001044' 260 17 0 00 002552' RTN]
1114 001045' 603 01 0 00 002000 TLNE 1,(MBERR) ; MBUS Error occurred?
1115 GO [GO IPACLR ; yes - clear it and read
1116 MOVEI 1,SELLAR ; LAR
1117 GO LDCSR
1118 GO RDLAR
1119 MOVE 3,1
1120 001046' 260 17 0 00 002560' RTN]
1121 001047' 607 01 0 00 006000 TLNN 1,(CRAMPE!MBERR) ; interrupt bits in CSR set?
1122 001050' 602 01 0 00 007200 TRNE 1,EBUSPE!FQUERR!MVRERR!RESQAV
1123 GO [MOVE 1,INTCSR(2) ; yes - save special interrupt data
1124 MOVEM 1,.INWD1
1125 MOVEM 3,.INWD2
1126 001051' 260 17 0 00 002566' RTN]
1127
1128 ; Turn back on PI system and dismiss interrupt
1129
1130 001052' 200 00 0 02 001304' MOVE INTNNN(2) ; get interrupt number
1131 001053' 307 00 0 00 020000 CAIG 20000 ; more than 20000 interrupts?
1132 001054' 260 17 0 00 000560' GO .PION ; no - turn on PI system
1133 001055' 303 00 0 00 020000 CAILE 20000 ; more than 20000 interrupts?
1134 001056' 476 00 0 00 001360' SETOM .INWD1 ; yes - indicate such
1135 001057' 262 17 0 00 030114 RGET ($SVUPC,$SVUUO,3,2,1,0) ; restore stuff
1136
1137 001065' 254 12 1 00 001066' JEN @NVJEN ; release interrupt and return
1138
1139 001066' 000000 000000 NVJEN: 0
1140
1141 ; Interrupt data storage
1142
1143 001067' 000000 000000 INTNUM: 0
1144
1145 001070' INTPC: BLOCK ^D20
1146 001114' INTTYP: BLOCK ^D20
1147 001140' INTCON: BLOCK ^D20
1148 001164' INTAPR: BLOCK ^D20
1149 001210' INTTIM: BLOCK ^D20
1150 001234' INTUSE: BLOCK ^D20
1151 001260' INTCSR: BLOCK ^D20
1152 001304' INTNNN: BLOCK ^D20
1153 001330' 000000 000000 INTEND: 0
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 29
DFCIAI MAC 29-Oct-84 18:39 PI System Routines SEQ 0955
1154
1155 ;#********************************************************************
1156 ;* .INPNT - Print special interrupt data
1157 ;#********************************************************************
1158
1159 001331' 336 00 0 00 001360' .INPNT: SKIPN .INWD1 ; any interrupt data saved yet?
1160 001332' 263 17 0 00 000000 RTN ; no - return
1161 001333' 261 17 0 00 000000 RPUT (0,1) ; save AC's
1162
1163 001335' 200 01 0 00 001360' MOVE 1,.INWD1 ; get CSR data
1164 001336' 316 01 0 00 002572' CAMN 1,[-1] ; over 20000 interrupts?
1165 JRST [TMSGCD <[More than 20000 interrupts - PI system shut off]>
1166 001337' 254 00 0 00 002606' JRST .INPNX]
1167 001340' 603 01 0 00 004000 TLNE 1,(CRAMPE) ; CRAM PE?
1168 JRST [TMSGC <[CRAM PE at > ; yes - print such
1169 MOVE .INWD2
1170 LSH -1
1171 PNTOCS
1172 TMSGD <]>
1173 001341' 254 00 0 00 002613' JRST .INPNX]
1174 001342' 603 01 0 00 002000 TLNE 1,(MBERR) ; MBUS Error?
1175 JRST [TMSGC <[MBUS ERR at > ; yes - print such
1176 MOVE .INWD2
1177 LSH -1
1178 PNTOCS
1179 TMSGD <]>
1180 001343' 254 00 0 00 002625' JRST .INPNX]
1181 001344' 602 01 0 00 004000 TRNE 1,EBUSPE ; EBUS PE?
1182 JRST [TMSGCD <[EBUS PE]> ; yes - print such
1183 001345' 254 00 0 00 002636' JRST .INPNX]
1184 001346' 602 01 0 00 002000 TRNE 1,FQUERR ; FQ Error?
1185 JRST [TMSGCD <[FreeQ Error]> ; yes - print such
1186 001347' 254 00 0 00 002644' JRST .INPNX]
1187 001350' 602 01 0 00 001000 TRNE 1,MVRERR ; DP Error?
1188 JRST [TMSGCD <[Data Path Error]> ; yes - print such
1189 001351' 254 00 0 00 002653' JRST .INPNX]
1190 001352' 602 01 0 00 000200 TRNE 1,RESQAV ; RESPQ AV?
1191 001353' 037 00 0 00 002655' TMSGCD <[RspQ Avail]> ; yes - print such
1192
1193 ; Exit
1194
1195 001354' 402 00 0 00 001360' .INPNX: SETZM .INWD1 ; clear initial word
1196 001355' 262 17 0 00 000001 RGET (1,0) ; restore AC's
1197
1198 001357' 263 17 0 00 000000 RTN ; return
1199
1200 ; Special interrupt data
1201
1202 001360' 000000 000000 .INWD1: 0 ; CSR data
1203 001361' 000000 000000 .INWD2: 0 ; LAR data
1204
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 30
DFCIAI MAC 29-Oct-84 18:39 Channel Handling Routines SEQ 0956
1205 SUBTTL Channel Handling Routines
1206
1207 ;#*********************************************************************
1208 ;* Routines To Interface With A Channel
1209 ;
1210 ; There are 4 routines available for interfacing with a data channel.
1211 ;
1212 ; CHINIT - Initialize hardware and software. This routine sets up
1213 ; the 3 word data transfer needed by the port microcode
1214 ; when starting up.
1215 ; GETLOG - Snapshot logout data to a buffer area
1216 ; LOGPNT - Print channel logout data
1217 ; CCWPNT - Print the CCW list located in the PCB at location PCB+45.
1218 ;
1219 ; Notes On Initial Control Word Addr:
1220 ;
1221 ; With each controller is an associated channel #. The channel routines
1222 ; default to the following (exec mode) initial control word addresses
1223 ; for each of the channels.
1224 ;
1225 ; TYPE DEV. CODE CHAN # ICW-ADR
1226 ; ---- --------- ------ -------
1227 ; RH20 540 0 000(ICWA0)
1228 ; RH20 544 1 004(ICWA1)
1229 ; RH20 550 2 010(ICWA2)
1230 ; RH20 554 3 014(ICWA3)
1231 ; RH20 560 4 020(ICWA4)
1232 ; NIPort 564 5 024(ICWA5)
1233 ; RH20 570 6 030(ICWA6)
1234 ; CIPort 574 7 034(ICWA7)
1235 ;#*********************************************************************
1236
1237 ; Initial control word addr for each channel
1238
1239 001362' 000000 000000 ICWA0: 0
1240 001363' 000000 000004 ICWA1: 4
1241 001364' 000000 000010 ICWA2: 10
1242 001365' 000000 000014 ICWA3: 14
1243 001366' 000000 000020 ICWA4: 20
1244 001367' 000000 000024 ICWA5: 24
1245 001370' 000000 000030 ICWA6: 30
1246 001371' 000000 000034 ICWA7: 34
1247
1248 ; Miscellaneous channel locations
1249
1250 001372' 000000 000000 EPTJMP: 0 ; jump word for EPT
1251 001373' 000000 000000 EPTADR: 0 ; address of EPT location
1252 001374' 000000 000000 CBASE: 0 ; a base for computing ICWA in RH20
1253 ; the 340000 causes paging
1254 001375' LOGBUF: BLOCK 4 ; logout area
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 31
DFCIAI MAC 29-Oct-84 18:39 Channel Handling Routines SEQ 0957
1255
1256 ;#*********************************************************************
1257 ;* CHINIT - Channel Initialization Routine
1258 ;
1259 ; This routine synchronizes software and hardware channel logic
1260 ; specifically for use by the port. The CCW list is assumed to
1261 ; be a 1 word list located at PCB+45 always.
1262 ;#************************************************************
1263
1264 001401' 261 17 0 00 000000 CHINIT: RPUT (0,1,2,3) ; save AC's
1265
1266
1267 ; Initialize port, set up PCB
1268
1269 001405' 260 17 0 00 000252' GO IPACLR ; clear port
1270 001406' 260 17 0 00 000000* GO TPCB ; set up PCB correctly
1271 001407' 332 00 0 00 000176* SKIPE UDEBUG ; special debug mode?
1272 001410' 254 00 0 00 001505' JRST CHINX ; yes - exit
1273 001411' 336 00 0 00 030037 SKIPN USER ; user mode?
1274 001412' 254 00 0 00 001472' JRST CHIN3 ; no - go handle
1275
1276 ; First build the EPT jump word to point the the CCW in the PCB
1277
1278 001413' 135 01 0 00 002661' LDB 1,[POINT 3,MBCN,9] ; get channel number
1279 001414' 200 01 0 01 001362' MOVE 1,ICWA0(1) ; get ICWA for channel
1280 001415' 7 010 24 0 00 000002 CONI PAG,2 ; get page number of EPT
1281 001416' 242 02 0 00 000011 LSH 2,9 ; position correctly
1282 001417' 621 02 0 00 777777 TLZ 2,777777 ; clear left half
1283 001420' 270 01 0 00 000002 ADD 1,2 ; add in EPT offset
1284 001421' 202 01 0 00 001373' MOVEM 1,EPTADR ; save address of EPT location
1285 001422' 201 02 0 00 000000# MOVEI 2,PCB+45 ; get buffer address
1286 001423' 257 02 0 02 000000 MAP 2,(2) ; map to physical
1287 001424' 621 02 0 00 777000 TLZ 2,777000 ; get rid of misc bits
1288 001425' 661 02 0 00 200000 TLO 2,200000 ; make into a jump CCW
1289 001426' 202 02 0 00 001372' MOVEM 2,EPTJMP ; save the jump word
1290
1291 ; Save CRAM locations 0-17
1292
1293 001427' 201 02 0 00 001512' MOVEI 2,CHCRAM ; get address of storage area
1294 001430' 200 03 0 00 002662' MOVE 3,[-^D16,,0] ; set up AOBJN word
1295 001431' 552 03 0 00 000000* CHIN1: HRRZM 3,CADDR ; set up CRAM address
1296 001432' 260 17 0 00 000000* GO DRCRAM ; read CRAM location
1297 001433' 120 00 0 00 000000* DMOVE CWORDL ; get location
1298 001434' 124 00 0 02 000000 DMOVEM (2) ; save it
1299 001435' 271 02 0 00 000002 ADDI 2,2 ; point to next location
1300 001436' 253 03 0 00 001431' AOBJN 3,CHIN1 ; loop till done
1301
1302 ; Load special microcode
1303
1304 001437' 201 01 0 00 001552' MOVEI 1,MWEPT ; get microcode address
1305 001440' 260 17 0 00 000000* GO MLOADN ; load the microcode
1306 001441' 037 00 0 00 002663' TMSGCD <? Error loading microcode - continuing ...>
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 32
DFCIAI MAC 29-Oct-84 18:39 Channel Handling Routines SEQ 0958
1307
1308 ; Start it up and give the port the special data
1309
1310 001442' 400 01 0 00 000000 SETZ 1, ; get start address
1311 001443' 260 17 0 00 000021' GO LDRAR ; load the register
1312 001444' 201 01 0 00 000010 MOVEI 1,MPRUN ; set initial data
1313 001445' 260 17 0 00 000010' GO LDCSR
1314 001446' 200 01 0 00 001372' MOVE 1,EPTJMP ; get data
1315 001447' 260 17 0 00 000157' GO .DATAO ; do the first DATAO
1316 001450' 200 01 0 00 001373' MOVE 1,EPTADR ; get EPT address
1317 001451' 661 01 0 00 450000 TLO 1,450000 ; make IOP function word
1318 001452' 202 01 0 00 003654' MOVEM 1,EPTIOP# ; save it
1319 001453' 260 17 0 00 000157' GO .DATAO ; do the 2nd DATAO
1320 001454' 400 01 0 00 000000 SETZ 1,
1321 001455' 260 17 0 00 000010' GO LDCSR ; stop the port
1322
1323 ; Restore CRAM locations
1324
1325 001456' 261 17 0 00 000000* PUT PARFLG ; save parity flag
1326 001457' 402 00 0 00 001456* SETZM PARFLG ; don't calculate parity
1327 001460' 201 02 0 00 001512' MOVEI 2,CHCRAM ; get address of storage area
1328 001461' 200 03 0 00 002662' MOVE 3,[-^D16,,0] ; set up AOBJN word
1329 001462' 552 03 0 00 001431* CHIN2: HRRZM 3,CADDR ; set up CRAM address
1330 001463' 120 00 0 02 000000 DMOVE (2) ; save it
1331 001464' 124 00 0 00 001433* DMOVEM CWORDL ; get location
1332 001465' 260 17 0 00 000000* GO DWCRAM ; read CRAM location
1333 001466' 271 02 0 00 000002 ADDI 2,2 ; point to next location
1334 001467' 253 03 0 00 001462' AOBJN 3,CHIN2 ; loop till done
1335 001470' 262 17 0 00 001457* GET PARFLG ; restore parity flag
1336 001471' 254 00 0 00 001500' JRST CHIN4 ; exit
1337
1338 ; First build the EPT jump word to point the the CCW in the PCB
1339
1340 001472' 135 01 0 00 002661' CHIN3: LDB 1,[POINT 3,MBCN,9] ; get channel number
1341 001473' 200 01 0 01 001362' MOVE 1,ICWA0(1) ; get ICWA for channel
1342 001474' 270 01 0 00 001374' ADD 1,CBASE ; no - get paged EPT address
1343 001475' 202 01 0 00 001373' MOVEM 1,EPTADR ; save address of EPT location
1344 001476' 200 02 0 00 002675' MOVE 2,[200000,,PCB+45] ; get jump CCW
1345 001477' 202 02 0 01 000000 MOVEM 2,(1) ; store in EPT location
1346
1347 ; Set up initial CCW list
1348
1349 001500' 201 01 0 00 000000# CHIN4: MOVEI 1,PCB+42 ; get PCB address
1350 001501' 257 01 0 01 000000 MAP 1,(1) ; map to physical
1351 001502' 621 01 0 00 777000 TLZ 1,777000 ; get rid of misc bits
1352 001503' 661 01 0 00 600060 TLO 1,600060 ; make into a 3 word transfer
1353 001504' 202 01 0 00 000000# MOVEM 1,PCB+45 ; save in PCB
1354
1355 ; Done - exit
1356
1357 001505' 262 17 0 00 000003 CHINX: RGET (3,2,1,0) ; restore AC's
1358
1359 001511' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 33
DFCIAI MAC 29-Oct-84 18:39 Channel Handling Routines SEQ 0959
1360
1361 ; CRAM storage - locations 0-17
1362
1363 001512' CHCRAM: BLOCK ^D32
1364
1365 ; First, read the CCW Jump word into R17
1366
1367 001552' 000000 010000 MWEPT: MWORD <ADDR=0,JMAP,J=1> ; 0
1368 001553' 000000 000040
1369 001554' 000100 030000 MWORD <CJP,J=3,CENA,CCER> ; 1
1370 001555' 000400 100060
1371 001556' 000200 010000 MWORD <JMAP,J=1> ; 2
1372 001557' 000000 000040
1373 001560' 000300 000010 MWORD <CONT,SD0,B=17,OR,D=2,SELE,MGC=10> ; 3
1374 001561' 732007 405340
1375 001562' 000400 040000 MWORD <CJP,J=4,CENA,CCER> ; 4
1376 001563' 000400 100060
1377
1378 ; Then, read the IOP Function word into R16
1379
1380 001564' 000500 070000 MWORD <CJP,J=7,CENA,CCER> ; 5
1381 001565' 000400 100060
1382 001566' 000600 050000 MWORD <JMAP,J=5> ; 6
1383 001567' 000000 000040
1384 001570' 000700 000010 MWORD <CONT,SD0,B=16,OR,D=2,SELE,MGC=10> ; 7
1385 001571' 732007 005340
1386 001572' 001000 100000 MWORD <CJP,J=10,CENA,CCER> ; 10
1387 001573' 000400 100060
1388
1389 ; Done getting the data words - now write the CCW
1390 ; jump word into EPT location 34
1391
1392 001574' 001100 002004 MWORD <CONT,S0A,A=16,OR,D=1,OENA,SELE,MGC=4> ; 11
1393 001575' 431160 005340
1394 001576' 001200 000001 MWORD <CONT,SELE,MGC=1> ; 12 (Ex/Dep int)
1395 001577' 000000 005340
1396 001600' 001300 150000 MWORD <CJP,J=15,D=1,CENA,CCER> ; 13
1397 001601' 001400 100060
1398 001602' 001400 130000 MWORD <JMAP,J=13,D=1> ; 14
1399 001603' 001000 000040
1400 001604' 001500 002004 MWORD <CONT,S0A,A=17,OR,D=1,OENA,SELE,MGC=4> ; 15
1401 001605' 431170 005340
1402 001606' 001600 000020 MWORD <CONT,D=1,SELE,MGC=20> ; 16
1403 001607' 001000 005340
1404 001610' 001700 170000 MWORD <JMAP,J=17> ; 17
1405 001611' 000000 000040
1406 001612' 777777 777777 -1
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 34
DFCIAI MAC 29-Oct-84 18:39 Channel Handling Routines SEQ 0960
1407
1408 ;#*********************************************************************
1409 ;* GETLOG - Snapshot The Channel Logout Area
1410 ;
1411 ; This routine takes data from the channel logout area and places it in
1412 ; LOGBUF for LOGPNT to print it out. It zeros the logout area as it
1413 ; transfers also. This routine must be called before calling LOGPNT.
1414 ;#********************************************************************
1415
1416 001613' 332 00 0 00 001407* GETLOG: SKIPE UDEBUG ; debug mode?
1417 001614' 263 17 0 00 000000 RTN ; yes - exit
1418 001615' 261 17 0 00 000000 RPUT (0,1,2) ; save AC's
1419
1420 001620' 135 01 0 00 002661' LDB 1,[POINT 3,MBCN,9] ; get channel number
1421 001621' 200 01 0 01 001362' MOVE 1,ICWA0(1) ; get ICWA
1422 001622' 270 01 0 00 001374' ADD 1,CBASE ; get EPT address
1423 001623' 332 00 0 00 030037 SKIPE USER ; user mode?
1424 GO [MOVE DEVADR ; yes - get device address word
1425 MOVEM LOGARG+1 ; and put in argument list
1426 MOVE 1,[-^D15,,LOGARG]
1427 XCT .DIAG ; get logout data
1428 GO DIAGER ; error
1429 MOVEI 1,LOGARG+2 ; set up address of logout data
1430 001624' 260 17 0 00 002677' RTN]
1431 001625' 201 02 0 00 001375' MOVEI 2,LOGBUF ; get address to save logout data
1432 001626' 504 02 0 00 000001 HRL 2,1 ; build BLT word
1433 001627' 251 02 0 00 001400' BLT 2,LOGBUF+3 ; move the data
1434 001630' 262 17 0 00 000002 RGET (2,1,0) ; restore AC's
1435
1436 001633' 263 17 0 00 000000 RTN ; return
1437
1438 ; Argument list for channel status snapshot routine
1439
1440 001634' 000000 000006 LOGARG: 6 ; function
1441 001635' 000 00 0 00 000000 Z ; reserved for device addr word
1442 001636' BLOCK 4 ; reserved for logout data
1443 001642' BLOCK ^D10 ; room for physical I/O list
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 35
DFCIAI MAC 29-Oct-84 18:39 Channel Handling Routines SEQ 0961
1444
1445 ;#*********************************************************************
1446 ;* CCWPNT - Prints CCW word currently in PCB+45.
1447 ;#********************************************************************
1448
1449 001654' 261 17 0 00 000000 CCWPNT: RPUT (0,1) ; save AC's
1450
1451 001656' 037 00 0 00 002706' TMSGC <CCW (PCB+45): >
1452 001657' 200 00 0 00 000000# MOVE PCB+45 ; get CCW
1453 001660' 037 13 0 00 000000 PNTHW ; print it
1454 001661' 037 00 0 00 002712' TMSG < OP=>
1455 001662' 135 01 0 00 002714' LDB 1,[POINT 3,PCB+45,2] ; get op code
1456 XCT [TMSG <Halt> ; print it
1457 TMSG <?1?>
1458 TMSG <Jump>
1459 TMSG <?3?>
1460 TMSG <Dt-fwd>
1461 TMSG <Dt-rev>
1462 TMSG <Dt-fwd-hlt>
1463 001663' 256 00 0 01 002733' TMSG <Dt-rev-hlt>](1)
1464 001664' 037 00 0 00 002743' TMSG < WC=>
1465 001665' 135 00 0 00 002744' LDB [POINT 11,PCB+45,13] ; get word count
1466 001666' 037 15 0 00 000000 PNTDEC ; print it
1467 001667' 037 00 0 00 002745' TMSG <. Adr=>
1468 001670' 135 00 0 00 002747' LDB [POINT 22,PCB+45,35] ; get address
1469 001671' 037 10 0 00 000000 PNTADR ; print it
1470 001672' 262 17 0 00 000001 RGET (1,0) ; restore AC's
1471
1472 001674' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 36
DFCIAI MAC 29-Oct-84 18:39 Channel Handling Routines SEQ 0962
1473
1474 ;#*********************************************************************
1475 ;* LOGPNT - Channel Logout Printer
1476 ;
1477 ; Routine prints the status of the channel at logout time. Logout data
1478 ; is printed from a buffered area, therefore, GETLOG should be executed
1479 ; first.
1480 ;#********************************************************************
1481
1482 001675' 261 17 0 00 000000 LOGPNT: RPUT (0,1,2,3) ; save AC's
1483
1484 001701' 037 00 0 00 002750' TMSGC <Channel->
1485 001702' 135 01 0 00 002661' LDB 1,[POINT 3,MBCN,9] ; get channel number
1486 001703' 200 03 0 00 000001 MOVE 3,1 ; now to AC3
1487 001704' 200 00 0 00 000003 MOVE 3 ; ready to print
1488 001705' 037 01 0 00 000000 PNT1 ; print it
1489 TMSG <Logout Data
1490 001706' 037 00 0 00 002753' Loc Contents>
1491 001707' 260 17 0 00 001720' GO ICWPT ; print initial cw data
1492 001710' 260 17 0 00 001724' GO LOSPT ; print SW1 data if an RH20
1493 001711' 260 17 0 00 001741' GO TCWPT ; prints TERM CW status
1494 001712' 037 00 0 00 030242 PCRL
1495 001713' 262 17 0 00 000003 RGET (3,2,1,0) ; restore the AC's
1496
1497 001717' 263 17 0 00 000000 RTN ; and exit
1498
1499 ; Printer for initial control word & pointer setup routine
1500
1501 001720' 037 00 0 00 002761' ICWPT: TMSGC < 1 ICW: >
1502 001721' 200 00 0 00 001375' MOVE LOGBUF ; fetch the initial CW
1503 001722' 037 13 0 00 000000 PNTHW ; and print it
1504 001723' 263 17 0 00 000000 RTN ; and exit
1505
1506 ; RH20 status word-1 printer
1507
1508 001724' 037 00 0 00 002764' LOSPT: TMSGC < 2 SW1: >
1509 001725' 200 01 0 00 001376' MOVE 1,LOGBUF+1 ; get SW1 word
1510 001726' 404 01 0 00 002662' AND 1,[777760,,0] ; mask off unwanted bits
1511 001727' 400 02 0 00 000000 SETZ 2, ; initialize text pointer
1512 001730' 603 01 0 00 400000 LOSPT1: TLNE 1,400000 ; bit set?
1513 XCT [TMSG < LOGOUT> ; yes - print text
1514 TMSG < M-PAR>
1515 TMSG < -ADRPE>
1516 TMSG < -WCZRO>
1517 TMSG < NXM>
1518 JFCL
1519 JFCL
1520 JFCL
1521 JFCL
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 37
DFCIAI MAC 29-Oct-84 18:39 Channel Handling Routines SEQ 0963
1522 1523 TMSG < LSTXER>
1524 TMSG < RH-ERR>
1525 TMSG < LNG-WC>
1526 TMSG < SHT-WC>
1527 001731' 256 00 0 02 003012' TMSG < OVRRUN>](2)
1528 001732' 242 01 0 00 000001 LSH 1,1 ; shift in next bit
1529 001733' 350 00 0 00 000002 AOS 2 ; point the next text
1530 001734' 326 01 0 00 001730' JUMPN 1,LOSPT1 ; loop till done
1531 001735' 037 00 0 00 003030' TMSG < CLP points to: >
1532 001736' 135 00 0 00 003034' LDB [POINT 22,LOGBUF+1,35] ; fetch the actual CLP address
1533 001737' 037 16 0 00 000003 PNTOCS ; print in octal
1534 001740' 263 17 0 00 000000 RTN ; and exit
1535
1536 ; Print termination word from the logout area
1537
1538 001741' 037 00 0 00 003035' TCWPT: TMSGC < 3 Last Updated CCW: >
1539 001742' 200 00 0 00 001377' MOVE LOGBUF+2 ; fetch last CCW
1540 001743' 037 13 0 00 000000 PNTHW ; print it
1541 001744' 037 00 0 00 003043' TMSG < WC=>
1542 001745' 135 00 0 00 003045' LDB [POINT 11,LOGBUF+2,13] ; gets word count
1543 001746' 037 15 0 00 000000 PNTDEC ; print it
1544 001747' 037 00 0 00 003046' TMSG <. ADR=>
1545 001750' 135 00 0 00 003050' LDB [POINT 22,LOGBUF+2,35] ; gets address
1546 001751' 037 16 0 00 000003 PNTOCS ; print it in octal
1547 001752' 263 17 0 00 000000 RTN
1548
1549
1550 ;#*********************************************************************
1551 ;* DIAGER - Report Monitor Call Error In User Mode
1552 ;
1553 ; This routine prints an error message stating where and why a
1554 ; diagnostic monitor call has failed.
1555 ;#*********************************************************************
1556
1557 001753' 261 17 0 00 000000 DIAGER: RPUT (0,1) ; save AC's
1558
1559 001755' 202 01 0 00 003660' MOVEM 1,SAC1# ; save the error number
1560 001756' 037 01 0 00 030242 PCRLF
1561 001757' 037 01 0 00 003051' FMSGC <? Error return from diagnostic monitor call at PC->
1562 001760' 540 00 0 17 000000 HRR (P) ; get pc
1563 001761' 037 17 0 00 000003 PNTOCF ; print it
1564 001762' 037 01 0 00 003064' FMSGC <? Error code=>
1565 001763' 200 00 0 00 003660' MOVE SAC1 ; get error code
1566 001764' 037 17 0 00 000003 PNTOCF ; print it
1567 001765' 037 01 0 00 003070' FMSG < - >
1568 001766' 260 17 0 00 002241' GO DGEPNT ; print DIAG error message
1569 001767' 037 01 0 00 030242 PCRLF
1570 001770' 262 17 0 00 000001 RGET (1,0) ; restore AC's
1571
1572 001772' 263 17 0 00 000000 RTN ; return
1573
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 38
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0964
1574 SUBTTL User Mode Support Routines
1575
1576 ;#************************************************************
1577 ;* DSETUP - Setup Routine For Diagnostic Function
1578 ;
1579 ; This routine sets up a location called ".DIAG" with the appropriate
1580 ; JSYS or UUO for a diagnostic monitor call. Two monitor types are
1581 ; presently known 1=TOPS, 4=SNARK. The monitor type is found in bits
1582 ; 21-23 of Monitor Table-11, Entry-112. This information is retrieved
1583 ; by executing a GETTAB UUO which never fails. ".DIAG" is set up so
1584 ; that the AC field is 1 (means AC1 is used for argument pointer).
1585 ;
1586 ; Calling sequence:
1587 ; GO DSETUP ; call the routine
1588 ; RETURN ; returns + 1 always>
1589 ;#************************************************************
1590
1591 001773' 047000 000163 .UUO: 047000,,163 ; CALLI AC,163 for TOPS
1592 001774' 104000 000530 .JSYS: 104000,,530 ; JSYS AC,530 for SNARK
1593 001775' 260 17 0 00 002056' .DIAG: GO NOSET ; a default error reporter
1594
1595 001776' 336 00 0 00 001613* DSETUP: SKIPN UDEBUG ; special debug mode?
1596 001777' 336 00 0 00 030037 SKIPN USER ; exec mode?
1597 002000' 263 17 0 00 000000 RTN ; yes - then exit
1598 002001' 402 00 0 00 003655' SETZM INDIAG# ; a flag used during request
1599 002002' 261 17 0 00 000000 PUT 0 ; save AC0
1600 002003' 200 00 0 00 003071' MOVE [112,,11] ; entry-112,,table-11
1601 002004' 047 00 0 00 000041 GETTAB ; a GETTAB UUO
1602 002005' 260 17 0 00 002456' GO FFF ; GETTABs can't fail
1603 002006' 135 00 0 00 003072' LDB [POINT 3,0,23] ; get monitor type field
1604 002007' 402 00 0 00 003662' SETZM SNARKF# ; init SNARK flag to 1
1605 002010' 350 00 0 00 003662' AOS SNARKF
1606 002011' 306 00 0 00 000001 CAIN 1 ; type = 1
1607 002012' 254 00 0 00 002025' JRST TPSMON ; yes - TOPS monitor
1608 002013' 306 00 0 00 000004 CAIN 4 ; type = 4
1609 002014' 254 00 0 00 002021' JRST SNKMON ; yes - SNARK monitor
1610
1611 ; Unrecognized monitor type
1612
1613 002015' 037 01 0 00 003073' FMSGC <Can't run under this monitor. Type = >
1614 002016' 037 01 0 00 000001 PNT1F
1615 002017' 037 01 0 00 003104' FMSGCD <Type comes from bits 21-23 of Table-11, Entry-112. (1&4) are allowed.>
1616 002020' 260 17 0 00 002456' GO FFF ; fatal out
1617
1618 ; SNARK monitor found
1619
1620 002021' 201 00 0 00 000002 SNKMON: MOVEI 2 ; request function for TOPS20
1621 002022' 202 00 0 00 002324' MOVEM REQARG ; save it in argument block
1622 002023' 200 00 0 00 001774' MOVE .JSYS ; get appropriate JSYS
1623 002024' 254 00 0 00 002032' JRST TPSM2 ; to common code
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 39
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0965
1624
1625 ; TOPS monitor found
1626
1627 002025' 260 17 0 00 002062' TPSMON: GO CPUTST ; test for dual CPU
1628 002026' 201 00 0 00 000001 MOVEI 1 ; request function 1 for TOPS10
1629 002027' 202 00 0 00 002324' MOVEM REQARG ; save it in argument block
1630 002030' 402 00 0 00 003662' SETZM SNARKF ; clear SNARK flag
1631 002031' 200 00 0 00 001773' MOVE .UUO ; get appropriate UUO
1632 002032' 661 00 0 00 000040 TPSM2: TLO (1B12) ; 1 into AC field
1633 002033' 202 00 0 00 001775' MOVEM .DIAG ; move into execute location
1634 002034' 336 00 0 00 003662' SKIPN SNARKF ; TOPS-20 monitor?
1635 002035' 254 00 0 00 002043' JRST SMX ; no
1636 002036' 260 17 0 00 002436' GO ENABLE ; enable avail privileges
1637 002037' 104 00 0 00 000310 USRIO ; set USRIO bit to check privileges
1638 002040' 254 00 0 00 002045' JRST NOPRIV ; user has no privileges for diagnostic
1639 002041' 254 02 1 00 002042' JRSTF @.+1 ; now turn the IOT priv off
1640 002042' 010000 002043' 010000,,.+1 ; modifies the PC word
1641 002043' 262 17 0 00 000000 SMX: GET 0 ; restore the AC
1642 002044' 263 17 0 00 000000 RTN ; exit
1643
1644 002045' 037 01 0 00 003123' NOPRIV: FMSGCD <User does not have proper priviledges to run diagnostic!!>
1645 002046' 260 17 0 00 002456' GO FFF
1646 002047' 201 01 0 00 000101 MOVEI 1,101 ; specify terminal as destination
1647 002050' 200 02 0 00 003140' MOVE 2,[400000,,-1] ; specify the handle
1648 002051' 402 00 0 00 000003 SETZM 3 ; must be cleared
1649 002052' 104 00 0 00 000011 ERSTR ; does an ERSTR JSYS
1650 002053' 260 17 0 00 002456' GO FFF ; error rtn - HALTF
1651 002054' 260 17 0 00 002456' GO FFF ; other error rtn - HALTF
1652 002055' 260 17 0 00 002456' GO FFF ; then back to the monitor
1653
1654 ; Default error reporter if we try to execute a DIAG function with
1655 ; setting up.
1656
1657 002056' 332 00 0 00 001776* NOSET: SKIPE UDEBUG ; debug mode?
1658 JRST [AOS (P) ; yes - return
1659 002057' 254 00 0 00 003141' RTN]
1660 002060' 037 01 0 00 003143' FMSGCD <Diagnostic attempted a DIAG before initialization>
1661 002061' 260 17 0 00 002456' GO FFF
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 40
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0966
1662
1663 ;#************************************************************
1664 ;* CPUTST - Determine Which Of 2 CPU's To Run On
1665 ;
1666 ; Here if TOPS10 only. First find out if we have a dual CPU system.
1667 ; If so, ask user to select the proper one. You must test RH's only that
1668 ; are on the same CPU. This code also sets up to run on the correct one.
1669 ;
1670 ; Calling sequence:
1671 ; GO CPUTST ; call the routine
1672 ; RTN ; RTN+1 always
1673 ;#********************************************************************
1674
1675 002062' 336 00 0 00 030037 CPUTST: SKIPN USER ; user mode?
1676 002063' 263 17 0 00 000000 RTN ; no - exit
1677 002064' 261 17 0 00 000000 RPUT (0,1,2) ; yes - save AC's
1678
1679 002067' 200 00 0 00 003156' MOVE [17,,11] ; TABLE=11 ENTRY=17
1680 002070' 047 00 0 00 000041 GETTAB 0, ; table lookup
1681 002071' 260 17 0 00 002456' GO FFF ; fatal out
1682 002072' 607 00 0 00 000040 TLNN 40 ; dual CPU system?
1683 002073' 254 00 0 00 002113' JRST DPRCX ; no - then we can exit
1684 002074' 336 00 0 00 003656' SKIPN MCPUS# ; msg flag printed flag set?
1685 FMSGC <This is a multi-CPU system. You must choose only 1 to run in.
1686 002075' 037 01 0 00 003157' Furthermore, all the RH's you select "must" be on that CPU.>
1687 002076' 476 00 0 00 003656' SETOM MCPUS ; clear the flag
1688 002077' 037 01 0 00 003211' FMSGC <Select CPU 0 thru 5 <CR> - >
1689 002100' 037 04 0 00 000003 TTIDEC
1690 002101' 254 00 0 00 002100' JRST .-1 ; timeout
1691 002102' 331 00 0 00 000000 SKIPL ; less than 0?
1692 002103' 303 00 0 00 000005 CAILE 5 ; less than or equal 5?
1693 002104' 254 00 0 00 002077' JRST .-5 ; invalid - reask
1694 002105' 200 02 0 00 000000 MOVE 2,0 ; get # to AC for indexing later
1695 002106' 201 01 0 00 000001 MOVEI 1,1 ; set bit mask to assume CPU0
1696 002107' 242 01 0 02 000000 LSH 1,(2) ; shift into position for selected CPU
1697 002110' 505 01 0 00 000014 HRLI 1,14 ; set CPU is Function-14
1698 002111' 047 01 0 00 000075 SETUUO 1, ; set to proper CPU
1699 JRST [FMSGC <SETCPU UUO failed. Either wrong CPU selection or>
1700 FMSGCD <must have wheel privileges.>
1701 002112' 254 00 0 00 003241' GO FFF] ; fatal out
1702 002113' 262 17 0 00 000002 DPRCX: RGET (2,1,0) ; restore AC's
1703
1704 002116' 263 17 0 00 000000 RTN ; and exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 41
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0967
1705
1706 ;#************************************************************
1707 ;* DEVREL - User Mode Release Routine
1708 ;
1709 ; In user mode this routine issues a DIAG monitor call, Function-3,
1710 ; to return device to monitor resources. This routine is different
1711 ; in use from RH20 disk and tape uses in that the device (the port)
1712 ; is released only upon exiting the diagnostic.
1713 ;
1714 ; Calling sequence: GO DEVREL
1715 ; RETURN ; returns +1 always
1716 ;#************************************************************
1717
1718 002117' 336 00 0 00 002056* DEVREL: SKIPN UDEBUG ; special debug mode?
1719 002120' 336 00 0 00 030037 SKIPN USER ; or exec mode?
1720 002121' 263 17 0 00 000000 RTN ; yes - return
1721 002122' 336 00 0 00 002323' SKIPN HAVIPA ; have the port?
1722 002123' 263 17 0 00 000000 RTN ; no - exit
1723 002124' 261 17 0 00 000001 RPUT (1,2) ; save AC's
1724
1725 002126' 260 17 0 00 002410' GO USRION ; ensure user IOT bit is set
1726 002127' 260 17 0 00 000252' GO IPACLR ; do a 'port clear'
1727
1728 ; Get device address
1729
1730 002130' 200 00 0 00 000016 MOVE MBCN ; get device code
1731 002131' 336 00 0 00 003662' SKIPN SNARKF ; TOPS-20 monitor?
1732 002132' 242 00 0 00 000003 LSH 3 ; no - position all the way left
1733 002133' 135 01 0 00 002661' LDB 1,[POINT 3,MBCN,9] ; get channel number
1734 002134' 137 01 0 00 003072' DPB 1,[POINT 3,0,23] ; put into device address
1735 002135' 202 00 0 00 003653' MOVEM DEVADR# ; save it
1736 002136' 202 00 0 00 002322' MOVEM RELARG+1 ; place in argument list
1737 002137' 200 01 0 00 003244' MOVE 1,[-2,,RELARG] ; pointer used
1738 002140' 476 00 0 00 003655' SETOM INDIAG# ; useful for debugging crashes
1739 002141' 256 00 0 00 001775' REL: XCT .DIAG ; execute DIAG function
1740 GO [MOVEM 1,SAC1 ; error
1741 FMSGC <? Release of CI port failed - >
1742 GO DGEPNT ; print error message
1743 PCRLF ; final CRLF
1744 002142' 260 17 0 00 003254' RTN] ; exit
1745 002143' 402 00 0 00 002323' SETZM HAVIPA ; no longer have the device
1746 002144' 402 00 0 00 003655' SETZM INDIAG ; no longer in DIAG JSYS
1747 002145' 260 17 0 00 002362' GO UNLOCK ; unlock pages locked before
1748
1749 ; Clean up and exit
1750
1751 002146' 262 17 0 00 000002 RGET (2,1) ; restore AC's
1752
1753 002150' 336 00 0 00 003662' SKIPN SNARKF ; TOPS-20
1754 002151' 254 00 0 00 002154' JRST .+3 ; no - don't play with USRIOT bit
1755 002152' 254 02 1 00 002153' JRSTF @.+1 ; yes - turn off USER IOT
1756 002153' 010000 002154' 010000,,.+1 ; sets flags
1757 002154' 263 17 0 00 000000 RTN ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 42
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0968
1758
1759 ;#************************************************************
1760 ;* DEVREQ - User Mode Request Routine
1761 ;
1762 ; Does nothing in exec mode. In user mode, this routine executes
1763 ; a diagnostic monitor call of Function 2 to request the port from
1764 ; from the monitor. This routine is different in use from RH20 disk
1765 ; and tape uses in that the device (the port) is requested only when
1766 ; the diagnostic starts up.
1767 ;#************************************************************
1768
1769 002155' 350 00 0 17 000000 DEVREQ: AOS (P) ; set up proper return
1770 002156' 336 00 0 00 002117* SKIPN UDEBUG ; special debug mode?
1771 002157' 336 00 0 00 030037 SKIPN USER ; or exec mode?
1772 002160' 263 17 0 00 000000 RTN ; yes - return
1773 002161' 332 00 0 00 002323' SKIPE HAVIPA ; do we have the port?
1774 002162' 260 17 0 00 002117' GO DEVREL ; yes - release it first
1775 002163' 260 17 0 00 002410' GO USRION ; set USRIOT bit
1776 002164' 261 17 0 00 000001 RPUT (1,0) ; save AC's
1777
1778 002166' 201 00 0 00 000002 MOVEI 2 ; set up function 2 (request
1779 002167' 202 00 0 00 002324' MOVEM REQARG ; channel and all devices)
1780
1781 ; Get device address
1782
1783 002170' 200 00 0 00 000016 MOVE MBCN ; get device code
1784 002171' 336 00 0 00 003662' SKIPN SNARKF ; TOPS-20 monitor?
1785 002172' 242 00 0 00 000003 LSH 3 ; position all the way left
1786 002173' 135 01 0 00 002661' LDB 1,[POINT 3,MBCN,9] ; get channel number
1787 002174' 137 01 0 00 003072' DPB 1,[POINT 3,0,23] ; put into device address
1788 002175' 202 00 0 00 003653' MOVEM DEVADR# ; save it
1789 002176' 202 00 0 00 002325' MOVEM REQARG+1 ; place in argument list
1790
1791 ; Do the request
1792
1793 002177' 200 01 0 00 003261' MOVE 1,[-3,,REQARG] ; pointer word
1794 002200' 476 00 0 00 003655' SETOM INDIAG ; entering DIAG JSYS
1795 002201' 256 00 0 00 001775' REQ1: XCT .DIAG ; a diagnostic call
1796 002202' 334 00 0 00 000000 SKIPA ; error
1797 002203' 254 00 0 00 002214' JRST REQOK ; continue
1798 002204' 550 01 0 00 000001 HRRZ 1,1 ; clear left half
1799 002205' 302 01 0 00 602712 CAIE 1,602712 ; port not enabled?
1800 002206' 254 00 0 00 002213' JRST .+5 ; no - another error - go handle
1801 002207' 037 01 0 00 030242 PCRLF
1802 002210' 037 01 0 00 003262' FMSGC <You must ask the Operator to do an OPR command to enable the NI/CI Port>
1803 002211' 037 01 0 00 030242 PCRLF
1804 002212' 255 00 0 00 000000 REQ2: JFCL
1805 JRST [MOVEM 1,SAC1 ; error
1806 FMSGC <? CI port not available - >
1807 GO DGEPNT ; print error message
1808 PCRLF ; final CRLF
1809 SOS -2(P) ; set up failed return
1810 002213' 254 00 0 00 003307' JRST DEVRQX] ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 43
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0969
1811
1812 002214' 260 17 0 00 000252' REQOK: GO IPACLR ; do a 'port clear'
1813 002215' 476 00 0 00 002323' SETOM HAVIPA ; indicate we have the port
1814 002216' 402 00 0 00 003655' DEVRQX: SETZM INDIAG ; no longer in DIAG JSYS
1815 002217' 262 17 0 00 000000 RGET (0,1) ; restore AC's
1816
1817 002221' 263 17 0 00 000000 RTN ; exit
1818
1819
1820 ;#********************************************************************
1821 ;* ENDIAG - Enable the NI/CI port
1822 ;#********************************************************************
1823
1824 002222' 261 17 0 00 000000 ENDIAG: RPUT (0,1,2) ; save AC's
1825
1826 002225' 200 00 0 00 000016 MOVE MBCN ; get device code
1827 002226' 336 00 0 00 003662' SKIPN SNARKF ; TOPS-20 monitor?
1828 002227' 242 00 0 00 000003 LSH 3 ; no - position all the way left
1829 002230' 135 00 0 00 002661' LDB [POINT 3,MBCN,9] ; get channel number
1830 002231' 202 00 0 00 002330' MOVEM ENARG+1 ; place in argument list
1831 002232' 200 01 0 00 003315' MOVE 1,[-3,,ENARG] ; pointer word
1832 002233' 256 00 0 00 001775' XCT .DIAG ; do the DIAG
1833 002234' 255 00 0 00 000000 JFCL ; error return
1834 002235' 262 17 0 00 000002 RGET (2,1,0) ; restore AC's
1835
1836 002240' 263 17 0 00 000000 RTN ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 44
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0970
1837
1838 ;#********************************************************************
1839 ;* DGEPNT - Decode and print DIAG error
1840 ;#********************************************************************
1841
1842 002241' 261 17 0 00 000000 DGEPNT: RPUT (0,1,2) ; save AC's
1843
1844 002244' 201 02 0 00 002263' MOVEI 2,T10TAB-1 ; get address of TOPS-10 table
1845 002245' 332 00 0 00 003662' SKIPE SNARKF ; TOPS-20 monitor?
1846 002246' 201 02 0 00 002275' MOVEI 2,T20TAB-1 ; yes - get address of TOPS-20 table
1847 002247' 550 01 0 00 003660' HRRZ 1,SAC1 ; get error code
1848
1849 002250' 350 00 0 00 000002 DGEPN0: AOS 2 ; point to next entry
1850 002251' 554 00 0 02 000000 HLRZ (2) ; get entry
1851 002252' 316 00 0 00 003316' CAMN [777777] ; end of list?
1852 JRST [FMSG <Unrecognized error code - >
1853 MOVE SAC1
1854 PNTHW
1855 002253' 254 00 0 00 003325' JRST DGEPNX]
1856 002254' 312 00 0 00 000001 CAME 1 ; match?
1857 002255' 254 00 0 00 002250' JRST DGEPN0 ; no - keep looping
1858 002256' 550 00 0 02 000000 HRRZ (2)
1859 002257' 256 00 1 00 000000 XCT @0
1860
1861 002260' 262 17 0 00 000002 DGEPNX: RGET (2,1,0) ; restore AC's
1862
1863 002263' 263 17 0 00 000000 RTN ; return
1864
1865 ; TOPS-10 Error Messages
1866
1867 002264' 601174 003341' T10TAB: 601174,,[FMSG <Argument count field is non negative>]
1868 002265' 601175 003351' 601175,,[FMSG <Device assigned to another job>]
1869 002266' 601176 003360' 601176,,[FMSG <Argument count is to small>]
1870 002267' 601177 003370' 601177,,[FMSG <Illegal MBC device code selected>]
1871 002270' 601200 003400' 601200,,[FMSG <Device not mounted in maint mode>]
1872 002271' 601201 003403' 601201,,[FMSG <Bad CCW>]
1873 002272' 601202 003416' 601202,,[FMSG <CCW indicates that xfer will cross page boundary>]
1874 002273' 601203 003423' 601203,,[FMSG <No such channel>]
1875 002274' 601204 003427' 601204,,[FMSG <No such drive>]
1876 002275' 777777 777777 -1
1877
1878 ; TOPS-20 Error Messages
1879
1880 002276' 601174 003434' T20TAB: 601174,,[FMSG <Invalid function>]
1881 002277' 601175 003442' 601175,,[FMSG <Device is not assigned>]
1882 002300' 601176 003450' 601176,,[FMSG <Argument block too small>]
1883 002301' 601177 003455' 601177,,[FMSG <Invalid device type>]
1884 002302' 601200 003470' 601200,,[FMSG <WHEEL, OPERATOR, or MAINT capability required>]
1885 002303' 601201 003477' 601201,,[FMSG <Invalid channel command list>]
1886 002304' 601202 003510' 601202,,[FMSG <Illegal to do I/O across page boundary>]
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 45
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0971
1887 002305' 601203 003514' 601203,,[FMSG <No such device>]
1888 002306' 601204 003521' 601204,,[FMSG <Unit does not exist>]
1889 002307' 601205 003527' 601205,,[FMSG <Subunit does not exist>]
1890 002310' 602406 003534' 602406,,[FMSG <Unit already online>]
1891 002311' 602407 003541' 602407,,[FMSG <Unit not online>]
1892 002312' 602614 003550' 602614,,[FMSG <Datagram buffer not available>]
1893 002313' 602705 003562' 602705,,[FMSG <Port does not exist or is not a NI/CI port>]
1894 002314' 602706 003571' 602706,,[FMSG <CI counters not available>]
1895 002315' 602707 003601' 602707,,[FMSG <Fork doesn't own NI/CI Counters>]
1896 002316' 602712 003610' 602712,,[FMSG <NI/CI channel is not enabled>]
1897 002317' 602713 003617' 602713,,[FMSG <Diagnostic owns the channel>]
1898 002320' 777777 777777 -1
1899
1900 ; Argument list for release command
1901
1902 002321' 000000 000003 RELARG: 3 ; function
1903 002322' 000 00 0 00 000000 Z ; reserved for device adr word
1904
1905 002323' 000000 000000 HAVIPA: 0 ; 'have port' flag
1906
1907 ; Argument list for request command
1908
1909 002324' 000 00 0 00 000000 REQARG: Z ; function
1910 002325' 000 00 0 00 000000 Z ; reserved for device address
1911 002326' 001623 416000 ^D1000*^D60*^D4000 ; 4000 minutes (in milleseconds)
1912
1913 ; Argument list for enable command
1914
1915 002327' 000000 000111 ENARG: 111 ; function
1916 002330' 000 00 0 00 000000 Z ; reserved for device address
1917 002331' 777777 777777 -1
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 46
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0972
1918
1919 ;#********************************************************************
1920 ;* LOCPHY - Lock part of the diagnostic
1921 ;#********************************************************************
1922
1923 002332' 336 00 0 00 002156* LOCPHY: SKIPN UDEBUG ; special debug mode?
1924 002333' 336 00 0 00 030037 SKIPN USER ; or exec mode?
1925 002334' 263 17 0 00 000000 RTN ; yes - return
1926 002335' 332 00 0 00 002361' SKIPE LOCDON ; already done?
1927 002336' 263 17 0 00 000000 RTN ; yes - return
1928 002337' 261 17 0 00 000000 RPUT (0,1,2,3) ; save AC's
1929
1930 002343' 400 01 0 00 000000 SETZ 1,
1931 002344' 201 02 0 00 000000* MOVEI 2,PCB ; get PCB address
1932 002345' 242 02 0 00 777767 LSH 2,-9 ; obtain page number
1933 002346' 505 02 0 00 400000 HRLI 2,.FHSLF ; insert process handle
1934 002347' 200 03 0 00 003620' MOVE 3,[500000,,11] ; not cache,,page count
1935 002350' 104 00 0 00 000561 JSYS 561 ; PLOCK JSYS
1936 002351' 005 00 0 00 002734 DELAY ^D1500 ; wait 1 1/2 seconds
1937 002352' 476 00 0 00 002361' SETOM LOCDON ; set already done flag
1938 002353' 402 00 0 00 002323' SETZM HAVIPA ; no longer have the port
1939 002354' 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
1940
1941 002360' 263 17 0 00 000000 RTN ; return
1942
1943 002361' 000000 000000 LOCDON: 0 ; already done flag
1944
1945 ;#********************************************************************
1946 ;* UNLOCK - Unlock part of the diagnostic
1947 ;#********************************************************************
1948
1949 002362' 336 00 0 00 002332* UNLOCK: SKIPN UDEBUG ; special debug mode?
1950 002363' 336 00 0 00 030037 SKIPN USER ; or exec mode?
1951 002364' 263 17 0 00 000000 RTN ; yes - return
1952 002365' 336 00 0 00 002361' SKIPN LOCDON ; already done?
1953 002366' 263 17 0 00 000000 RTN ; yes - return
1954 002367' 261 17 0 00 000000 RPUT (0,1,2,3) ; save AC's
1955
1956 002373' 474 01 0 00 000000 SETO 1,
1957 002374' 201 02 0 00 002344* MOVEI 2,PCB ; get PCB address
1958 002375' 242 02 0 00 777767 LSH 2,-9 ; obtain page number
1959 002376' 505 02 0 00 400000 HRLI 2,.FHSLF ; insert process handle
1960 002377' 200 03 0 00 003621' MOVE 3,[400000,,11] ; not cache,,page count
1961 002400' 104 00 0 00 000561 JSYS 561 ; PLOCK JSYS
1962 002401' 005 00 0 00 002734 DELAY ^D1500 ; wait 1 1/2 seconds
1963 002402' 402 00 0 00 002361' SETZM LOCDON ; clear done flag
1964 002403' 262 17 0 00 000003 RGET (3,2,1,0) ; restore AC's
1965
1966 002407' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 47
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0973
1967
1968 ;#********************************************************************
1969 ;* USRION/USRIOF - Turn User I/O Privileges On/Off
1970 ;
1971 ; This routine does nothing in exec mode. Under TOPS-20 we do an enable
1972 ; of privileges and then a USER I/O JSYS to get User-IOT set. Under TOPS10,
1973 ; a TRPSET UUO gets us into User-IOT mode. USRION will fatal you out if you
1974 ; don't have User IOT privileges.
1975 ;#********************************************************************
1976
1977 002410' 336 00 0 00 002362* USRION: SKIPN UDEBUG ; special debug mode?
1978 002411' 336 00 0 00 030037 SKIPN USER ; exec mode?
1979 002412' 263 17 0 00 000000 RTN ; yes - return
1980 002413' 261 17 0 00 000000 RPUT (0,1) ; save AC's
1981
1982 002415' 336 00 0 00 030516 SKIPN MONTYP ; TOPS10?
1983 GO [MOVEI 1,0 ; yes - setup for RTTRP UUO
1984 TRPSET 1, ; and do it
1985 JFCL
1986 002416' 260 17 0 00 003622' RTN]
1987 002417' 332 00 0 00 030516 SKIPE MONTYP ; TOPS20?
1988 GO [GO ENABLE ; yes - enable available privileges
1989 USRIO ; and set the User I/O bit
1990 JFCL
1991 002420' 260 17 0 00 003626' RTN]
1992 002421' 260 17 0 00 002422' GO .+1 ; push PC onto stack
1993 002422' 262 17 0 00 000001 GET 1 ; pop it from stack into AC1
1994 002423' 607 01 0 00 004000 TLNN 1,(1B6) ; is USRIOT bit set?
1995 JRST [FMSGCD <User does not have sufficient privileges>
1996 002424' 254 00 0 00 003643' JRST FFF]
1997 002425' 262 17 0 00 000001 RGET (1,0) ; restore the AC's
1998
1999 002427' 263 17 0 00 000000 RTN
2000
2001 ; Code to turn User I/O off
2002
2003 002430' 336 00 0 00 002410* USRIOF: SKIPN UDEBUG ; special debug mode?
2004 002431' 336 00 0 00 030037 SKIPN USER ; exec mode?
2005 002432' 263 17 0 00 000000 RTN ; yes - return
2006 002433' 254 02 1 00 002434' JRSTF @.+1 ; turn off the privilege
2007 002434' 010000 002435' 010000,,.+1 ; modifies the PC word
2008 002435' 263 17 0 00 000000 USROFX: RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 48
DFCIAI MAC 29-Oct-84 18:39 User Mode Support Routines SEQ 0974
2009
2010 ;#************************************************************
2011 ;* ENABLE - Enable Capabilities of This Process
2012 ;
2013 ; First read capabilities and then enable them. Same as typing "ENA"
2014 ; from exec level.
2015 ;#************************************************************
2016
2017 002436' 336 00 0 00 002430* ENABLE: SKIPN UDEBUG ; special debug mode?
2018 002437' 336 00 0 00 030037 SKIPN USER ; exec mode?
2019 002440' 263 17 0 00 000000 RTN ; yes - exit
2020 002441' 261 17 0 00 000001 RPUT (1,2,3) ; save AC's
2021
2022 002444' 201 01 0 00 400000 MOVEI 1,.FHSLF ; process handle
2023 002445' 104 00 0 00 000150 RPCAP ; read capabilities
2024 002446' 320 17 0 00 002531' ERCAL [RTN] ; ignore errors
2025 002447' 200 03 0 00 000002 MOVE 3,2 ; get capabilities to AC3
2026 002450' 104 00 0 00 000151 EPCAP ; now enable
2027 002451' 320 17 0 00 002531' ERCAL [RTN] ; ignore errors
2028 002452' 262 17 0 00 000003 RGET (3,2,1) ; restore AC's
2029
2030 002455' 263 17 0 00 000000 RTN ; exit
2031
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 49
DFCIAI MAC 29-Oct-84 18:39 Miscellaneous Routines SEQ 0975
2032 SUBTTL Miscellaneous Routines
2033
2034 ;#************************************************************
2035 ;* FFF - Routine To Handle Fatals
2036 ;
2037 ; There is no return from this call. You end up at DDT in exec mode
2038 ; or the monitor if in user mode.
2039 ;
2040 ; Calling sequence:
2041 ;
2042 ; GO FFF ; call routine
2043 ; ........... ; pgm has fataled out
2044 ;#************************************************************
2045
2046 002456' 260 17 0 00 002117' FFF: GO DEVREL ; release device if necessary
2047 002457' 037 01 0 00 003645' FMSGC <Fatal pgm error at PC - >
2048 002460' 550 00 0 17 000000 HRRZ (P) ; get calling PC
2049 002461' 275 00 0 00 000001 SUBI 1 ; gets correct PC
2050 002462' 037 06 0 00 000001 PNT6F ; print it
2051 002463' 037 01 0 00 030242 PCRLF
2052 002464' 332 00 0 00 030037 SKIPE USER ; user mode?
2053 002465' 254 00 0 00 002470' JRST .+3 ; yes
2054 002466' 254 04 0 00 000000* HALT START ; halt .. restart
2055 002467' 254 00 0 00 002466* JRST START ; to be sure
2056
2057 ; User mode fatal halt
2058
2059 002470' 260 17 0 00 000000* GO .CLOSE ; close output files
2060 002471' 260 17 0 00 000000* GO .EXIT ; exit the job
2061 002472' 254 00 0 00 002467* JRST START ; restart program
2062
2063
2064 ;#********************************************************************
2065 ; End of DFCIAI.MAC Module
2066 ;#********************************************************************
2067
2068 XLIST
2069
NO ERRORS DETECTED
PROGRAM BREAK IS 003664
CPU TIME USED 00:12.482
78P CORE USED
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page S-1
DFCIAI MAC 29-Oct-84 18:39 SYMBOL TABLE SEQ 0976
AADDR 000432' int HAVIPA 002323' int LOGARG 001634' RDLAR 000104' ent
APR 000000 spd ICWA0 001362' int LOGBUF 001375' int REL 002141' ent
CADDR 001462' ext ICWA1 001363' LOGPNT 001675' ent RELARG 002321'
CBASE 001374' int ICWA2 001364' LOSPT 001724' REQ1 002201' ent
CCWPNT 001654' ent ICWA3 001365' LOSPT1 001730' REQ2 002212' ent
CHCRAM 001512' ICWA4 001366' MBCN 000016 REQARG 002324'
CHIN1 001431' ICWA5 001367' MBERR 002000 000000 spd REQOK 002214'
CHIN2 001462' ICWA6 001370' MCPUS 003656' RESQAV 000200 spd
CHIN3 001472' ICWA7 001371' MLOADN 001440' ext RPCAP 104000 000150 int
CHIN4 001500' ICWPT 001720' MONTYP 030516 RTN 263740 000000
CHINIT 001401' ent IGNFLG 000000 ext MPRUN 000010 spd RUNTME 001035' ext
CHINX 001505' INDIAG 003655' MVRERR 001000 spd SAC1 003660'
CHKCSR 000325' ent INITP0 000532' MWEPT 001552' SAVEBF 003661'
CHKCSX 000342' INITPD 000542' ent NOPRIV 002045' SDATA 000430' int
CLREBE 000322' INITPI 000517' ent NOSET 002056' SELLAR 040000 spd
CLREBU 000311' ent INTAPR 001164' int NVIIN1 000716' SET2N 000623'
CLREBX 000321' INTCON 001140' int NVIIN2 000726' SETEBE 000271'
CPUTST 002062' INTCSR 001260' int NVIIN3 000736' SETEBU 000257' ent
CRAMPE 004000 000000 spd INTEND 001330' int NVIIN4 000746' SETLAE 000306'
CWORDL 001464' ext INTNNN 001304' NVIIN5 000756' SETLAR 000274' ent
CWORDR 000000 ext INTNUM 001067' int NVIIN6 000766' SETUUO 047000 000075
DEBTIM 001036' ext INTPC 001070' int NVIIN7 000776' SETVEC 000602' ent
DELAY 005000 000000 INTTIM 001210' int NVIINC 001006' SINCYC 020000 spd
DEVADR 003653' INTTYP 001114' int NVJEN 001066' SLAST 000427' int
DEVREL 002117' ent INTUSE 001234' int P 000017 SMX 002043'
DEVREQ 002155' ent IPACLR 000252' ent PAG 000010 spd SNARKF 003662' int
DEVRQX 002216' IPASR0 000361' PARFLG 001470' ext SNEXT 000426' int
DGEPN0 002250' IPASR1 000371' PCB 002374' ext SNKMON 002021'
DGEPNT 002241' IPASR2 000372' PCLEAR 400000 spd SPORT 000000 ext
DGEPNX 002260' IPASR3 000373' PCRL 037000 030242 START 002472' ext
DIAGER 001753' IPASRT 000344' ent PCRLF 037040 030242 SWITT 000000 ext
DPRCX 002113' IPASS0 000453' PI 000004 spd T10TAB 002264'
DRCRAM 001432' ext IPASS1 000475' PICLR 010000 spd T20TAB 002276'
DSETUP 001776' ent IPASS2 000512' PIOFF 000400 spd TCWPT 001741'
DSPRIN 000000 ext IPASS3 000513' PION 000200 spd TIDLE 000000 ext
DWCRAM 001465' ext IPASS4 000514' PISYOF 000574' ent TPCB 001406' ext
EADDR 000431' int IPASST 000433' ent PISYON 000577' ent TPSM2 002032'
EBUSPE 004000 spd IPAST1 000421' PMODE 000242' ext TPSMON 002025'
ENABLE 002436' ent IPAST2 000422' PNT1 037040 000000 TRPSET 047000 000025
ENARG 002327' IPAST3 000423' PNT1F 037040 000001 TSTEBF 200000 spd
ENDIAG 002222' IPASTP 000376' ent PNT6F 037300 000001 TTIDEC 037200 000003
EPCAP 104000 000151 int ISTOP 000176' ent PNTADR 037400 000000 UDEBUG 002436' ext
EPTADR 001373' ISTOP0 000212' PNTDEC 037640 000000 UNLOCK 002362'
EPTIOP 003654' ISTOPC 000240' PNTHW 037540 000000 USER 030037
EPTJMP 001372' int ISTOPX 000244' PNTMSF 037040 000000 USRIO 104000 000310 int
ERCAL 320740 000000 int IVADDR 000622' PNTMSG 037000 000000 USRIOF 002430' ent
ERESET 000167' ent JEN 254500 000000 PNTOCF 037740 000003 USRION 002410' ent
ERSTR 104000 000011 int JRSTF 254100 000000 PNTOCS 037700 000003 USROFX 002435'
FFF 002456' ent JSYS 104000 000000 PRSFLG 003657' USTIM 001040' ext
FQUERR 002000 spd LDCRAM 000035' ent PUT 261740 000000 VIINT 000644'
GET 262740 000000 LDCSR 000010' ent RDCRAM 000115' ent VIIPI 003663'
GETLOG 001613' ent LDEBUF 000000' ent RDCS0 000071' ZI 000000'
GETTAB 047000 000041 LDRAR 000021' ent RDCSR 000060' ent $ARG2 000017
GO 260740 000000 LOCDON 002361' int RDCSX 000100' $B 000052
HALT 254200 000000 LOCPHY 002332' ent RDEBUF 000050' ent $CHR 000052
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page S-2
DFCIAI MAC 29-Oct-84 18:39 SYMBOL TABLE SEQ 0977
$GARG 000001 .RCENA 000400 000000 spd
$SVUPC 030114 .RCJP 000060 spd
$SVUUO 030113 .RCONT 000340 spd
%ADDR 000020 spd .RD 001000 000000 spd
%ML 001700 170000 spd .RJ 000000 spd
%MR 000040 spd .RJMAP 000040 spd
.CLOSE 002470' ext .RMGC 000000 spd
.CONI 000126' ent .ROENA 000000 spd
.CONO 000136' ent .ROR 030000 000000 spd
.DATAI 000147' ent .RS0A 400000 000000 spd
.DATAO 000157' ent .RSD0 700000 000000 spd
.DIAG 001775' .RSELE 005000 spd
.EXIT 002471' ext .UUO 001773'
.FHSLF 400000 sin
.INPNT 001331' ent
.INPNX 001354'
.INWD1 001360' int
.INWD2 001361' int
.JSYS 001774'
.LA 000000 spd
.LADDR 000100 000000 spd
.LB 000000 spd
.LCCER 000000 spd
.LCENA 000000 spd
.LCJP 000000 spd
.LCONT 000000 spd
.LD 000000 spd
.LJ 010000 spd
.LJMAP 000000 spd
.LMGC 000001 spd
.LOENA 002000 spd
.LOR 000000 spd
.LS0A 000000 spd
.LSD0 000000 spd
.LSELE 000000 spd
.MA 000017 spd
.MB 000017 spd
.MCCER 000037 spd
.MCENA 000001 spd
.MCJP 000017 spd
.MCONT 000017 spd
.MD 000007 spd
.MJ 007777 spd
.MJMAP 000017 spd
.MMGC 001777 spd
.MOENA 000001 spd
.MOR 000007 spd
.MS0A 000007 spd
.MSD0 000007 spd
.MSELE 000007 spd
.PIOFF 000546' ent
.PION 000560' ent
.RA 000010 000000 spd
.RB 400000 spd
.RCCER 100000 spd
AADDR 17 689#
APR 385 986 1092 SEQ 0978
CADDR 49# 1295 1329
CBASE 30 905 1252# 1342 1422
CCWPNT 29 1449#
CHCRAM 1293 1327 1363#
CHIN1 1295# 1300
CHIN2 1329# 1334
CHIN3 1274 1340#
CHIN4 1336 1349#
CHINIT 28 1264#
CHINX 1272 1357#
CHKCSR 15 521#
CHKCSX 525 536 540#
CLREBE 503 509#
CLREBU 15 500#
CLREBX 505 508#
CPUTST 1627 1675#
CRAMPE 403 411 416 420 424 526 595 655 731 1107 1108 1121 1167
CWORDL 49# 1297 1331
CWORDR 49#
DEBTIM 44# 990 1099
DEVADR 1424 1735# 1735 1788# 1788
DEVREL 34 1718# 1774 2046
DEVREQ 34 1769#
DEVRQX 1810 1814#
DGEPN0 1849# 1857
DGEPNT 1568 1742 1807 1842#
DGEPNX 1855 1861#
DIAGER 1428 1557#
DPRCX 1683 1702#
DRCRAM 49# 1296
DSETUP 34 1595#
DSPRIN 48#
DWCRAM 49# 1332
EADDR 17 688#
EBUSPE 412 527 1109 1122 1181
ENABLE 35 1636 1988 2017#
ENARG 1830 1831 1915#
ENDIAG 1824#
EPTADR 1251# 1284 1316 1343
EPTIOP 1318# 1318
EPTJMP 30 1250# 1289 1314
ERESET 16 382#
FFF 40 1602 1616 1645 1650 1651 1652 1661 1681 1701 1996 2046#
FQUERR 1122 1184
GETLOG 29 1416#
HAVIPA 36 1721 1745 1773 1813 1905# 1938
ICWA0 30 903 1239# 1279 1341 1421
ICWA1 1240#
ICWA2 1241#
ICWA3 1242#
ICWA4 1243#
ICWA5 1244#
ICWA6 1245# SEQ 0979
ICWA7 1246#
ICWPT 1491 1501#
IGNFLG 48#
INDIAG 1598# 1598 1738# 1738 1746 1794 1814
INITP0 826# 840
INITPD 21 837#
INITPI 21 809#
INTAPR 23 987 1093 1148#
INTCON 23 985 1091 1147#
INTCSR 24 1096 1123 1151#
INTEND 24 830 1153#
INTNNN 981 997 1087 1130 1152#
INTNUM 23 829 909 974 980 1077 1086 1143#
INTPC 23 983 1089 1145#
INTTIM 23 991 1100 1149#
INTTYP 23 979 1085 1146#
INTUSE 23 993 1102 1150#
IPACLR 16 387 443# 1115 1269 1726 1812
IPASR0 608#
IPASR1 596 619#
IPASR2 591 620#
IPASR3 589 621#
IPASRT 16 583#
IPASS0 746#
IPASS1 765 776#
IPASS2 732 793#
IPASS3 727 794#
IPASS4 725 795#
IPASST 16 718#
IPAST1 656 677#
IPAST2 651 678#
IPAST3 649 663 679#
IPASTP 16 643#
ISTOP 16 396#
ISTOP0 404 407#
ISTOPC 410 417 419 429#
ISTOPX 406 428 433#
IVADDR 907 914#
LDCRAM 10 188#
LDCSR 10 143# 413 430 434 445 465 487 507 528 538 601 617 661
669 739 754 767 772 786 790 853 870 1110 1117 1313 1321
LDEBUF 10 129# 788
LDRAR 10 165# 604 742 1311
LOCDON 36 1926 1937 1943# 1952 1963
LOCPHY 34 1923#
LOGARG 1425 1426 1429 1440#
LOGBUF 30 1254# 1431 1433 1502 1509 1532 1539 1542 1545
LOGPNT 29 1482#
LOSPT 1492 1508#
LOSPT1 1512# 1530
MBCN 133 147 170 193 228 244 274 292 313 332 353 372 1278 1340
1420 1485 1730 1733 1783 1786 1826 1829
MBERR 409 416 524 595 655 731 1114 1121 1174 SEQ 0980
MCPUS 1684# 1684 1687
MLOADN 48# 1305
MONTYP 1982 1987
MPRUN 405 418 535 590 609 611 650 660 726 747 748 1312
MVRERR 1122 1187
MWEPT 1304 1367#
NOPRIV 1638 1644#
NOSET 1593 1657#
NVIIN1 922 1010# 1014
NVIIN2 924 1019# 1023
NVIIN3 926 1028# 1032
NVIIN4 928 1037# 1041
NVIIN5 930 1046# 1050
NVIIN6 932 1055# 1059
NVIIN7 934 1064# 1068
NVIINC 1017 1026 1035 1044 1053 1062 1071 1075#
NVJEN 1015 1024 1033 1042 1051 1060 1069 1088 1137 1139#
P 237 251 466 488 508 531 618 619 620 676 677 678 792 793
794 1562 1658 1769 1809 2048
PAG 1280
PARFLG 49# 1325 1326 1335
PCB 50# 1285 1344 1349 1353 1452 1455 1465 1468 1931 1957
PCLEAR 429 444
PI 812 826 827 839 881 890 966 967 1011 1012 1020 1021 1029 1030
1038 1039 1047 1048 1056 1057 1065 1066
PICLR 812 839
PIOFF 881 967 1012 1021 1030 1039 1048 1057 1066
PION 827
PISYOF 21 849 865 880#
PISYON 22 871 889#
PMODE 50# 421 425 431
PRSFLG 720# 720 764
RDCRAM 11 288#
RDCS0 245# 250
RDCSR 11 237# 400 414 459 481 502 522 588 648 662 724 758 850
866 1094
RDCSX 248 252#
RDEBUF 11 224# 768
RDLAR 11 270# 670 778 1111 1118
REL 34 1739#
RELARG 1736 1737 1902#
REQ1 34 1795#
REQ2 34 1804#
REQARG 1621 1629 1779 1789 1793 1909#
REQOK 1797 1812#
RESQAV 1122 1190
RUNTME 44# 989 1098
SAC1 1559# 1559 1565 1740 1805 1847 1853
SAVEBF 769# 769 787
SDATA 17 608 664 687# 746 760 770 784 789
SELLAR 463 485 611 668 748 1109 1116
SET2N 908 921#
SETEBE 460 467# SEQ 0981
SETEBU 15 457#
SETLAE 482 489#
SETLAR 15 479#
SETVEC 22 897#
SINCYC 610 748
SLAST 17 686# 777
SMX 1635 1641#
SNARKF 36 1604# 1604 1605 1630 1634 1731 1753 1784 1827 1845
SNEXT 17 602 672 685# 740 776 780
SNKMON 1609 1620#
SPORT 48#
START 2054 2055 2061
SWITT 44#
T10TAB 1844 1867#
T20TAB 1846 1880#
TCWPT 1493 1538#
TIDLE 50#
TPCB 50# 1270
TPSM2 1623 1632#
TPSMON 1607 1627#
TSTEBF 462 484 504 506 600 736 738 766 771 785
UDEBUG 48# 129 143 165 188 224 238 270 288 309 328 349 368 382
396 1271 1416 1595 1657 1718 1770 1923 1949 1977 2003 2017
UNLOCK 1747 1949#
USER 384 386 612 749 809 837 846 862 880 889 898 1273 1423 1596
1675 1719 1771 1924 1950 1978 2004 2018 2052
USRIOF 35 2003#
USRION 35 1725 1775 1977#
USROFX 2008#
USTIM 44# 992 1101
VIINT 902 965# 982 1004
VIIPI 966# 966 984 1011 1020 1029 1038 1047 1056 1065 1090
ZI 57#
$ARG2 1367# 1367 1369# 1369 1371# 1371 1373# 1373 1375# 1375 1380# 1380 1382# 1382
1384# 1384 1386# 1386 1392# 1392 1394# 1394 1396# 1396 1398# 1398 1400# 1400
1402# 1402 1404# 1404
$B 1367# 1367 1369# 1369 1371# 1371 1373# 1373 1375# 1375 1380# 1380 1382# 1382
1384# 1384 1386# 1386 1392# 1392 1394# 1394 1396# 1396 1398# 1398 1400# 1400
1402# 1402 1404# 1404
$CHR 1367# 1367 1369# 1369 1371# 1371 1373# 1373 1375# 1375 1380# 1380 1382# 1382
1384# 1384 1386# 1386 1392# 1392 1394# 1394 1396# 1396 1398# 1398 1400# 1400
1402# 1402 1404# 1404
$GARG 1367# 1367 1369# 1369 1371# 1371 1373# 1373 1375# 1375 1380# 1380 1382# 1382
1384# 1384 1386# 1386 1392# 1392 1394# 1394 1396# 1396 1398# 1398 1400# 1400
1402# 1402 1404# 1404
$SVUPC 970 1002 1077 1135
$SVUUO 970 1004 1077 1137
%ADDR 1367# 1367 1369 1369# 1371 1371# 1373 1373# 1375 1375# 1380 1380# 1382 1382#
1384 1384# 1386 1386# 1392 1392# 1394 1394# 1396 1396# 1398 1398# 1400 1400#
1402 1402# 1404 1404#
%ML 1367# 1367 1369# 1369 1371# 1371 1373# 1373 1375# 1375 1380# 1380 1382# 1382
1384# 1384 1386# 1386 1392# 1392 1394# 1394 1396# 1396 1398# 1398 1400# 1400
1402# 1402 1404# 1404 SEQ 0982
%MR 1367# 1367 1369# 1369 1371# 1371 1373# 1373 1375# 1375 1380# 1380 1382# 1382
1384# 1384 1386# 1386 1392# 1392 1394# 1394 1396# 1396 1398# 1398 1400# 1400
1402# 1402 1404# 1404
.CLOSE 44# 2059
.CONI 9 309#
.CONO 9 328#
.DATAI 9 349#
.DATAO 9 368# 1315 1319
.DIAG 1427 1593# 1633 1739 1795 1832
.EXIT 44# 2060
.FHSLF 1933 1959 2022
.INPNT 22 1159#
.INPNX 1166 1173 1180 1183 1186 1189 1195#
.INWD1 24 897 1001 1124 1134 1159 1163 1195 1202#
.INWD2 24 1125 1169 1176 1203#
.JSYS 1592# 1622
.LA 1392 1400
.LADDR 1367
.LB 1373 1384
.LCCER 1369 1375 1380 1386 1396
.LCENA 1369 1375 1380 1386 1396
.LCJP 1369 1375 1380 1386 1396
.LCONT 1373 1384 1392 1394 1400 1402
.LD 1373 1384 1392 1396 1398 1400 1402
.LJ 1367 1369 1371 1375 1380 1382 1386 1396 1398 1404
.LJMAP 1367 1371 1382 1398 1404
.LMGC 1373 1384 1392 1394 1400 1402
.LOENA 1392 1400
.LOR 1373 1384 1392 1400
.LS0A 1392 1400
.LSD0 1373 1384
.LSELE 1373 1384 1392 1394 1400 1402
.MA 1392 1400
.MB 1373 1384
.MCCER 1369 1375 1380 1386 1396
.MCENA 1369 1375 1380 1386 1396
.MCJP 1369 1375 1380 1386 1396
.MCONT 1373 1384 1392 1394 1400 1402
.MD 1373 1384 1392 1396 1398 1400 1402
.MJ 1367 1369 1371 1375 1380 1382 1386 1396 1398 1404
.MJMAP 1367 1371 1382 1398 1404
.MMGC 1373 1384 1392 1394 1400 1402
.MOENA 1392 1400
.MOR 1373 1384 1392 1400
.MS0A 1392 1400
.MSD0 1373 1384
.MSELE 1373 1384 1392 1394 1400 1402
.PIOFF 21 846#
.PION 21 862# 999 1132
.RA 1392 1400
.RB 1373 1384
.RCCER 1369 1375 1380 1386 1396
.RCENA 1369 1375 1380 1386 1396 SEQ 0983
.RCJP 1369 1375 1380 1386 1396
.RCONT 1373 1384 1392 1394 1400 1402
.RD 1373 1384 1392 1396 1398 1400 1402
.RJ 1367 1369 1371 1375 1380 1382 1386 1396 1398 1404
.RJMAP 1367 1371 1382 1398 1404
.RMGC 1373 1384 1392 1394 1400 1402
.ROENA 1392 1400
.ROR 1373 1384 1392 1400
.RS0A 1392 1400
.RSD0 1373 1384
.RSELE 1373 1384 1392 1394 1400 1402
.UUO 1591# 1631
CALC 1367 1369 1371 1373 1375 1380 1382 1384 1386 1392 1394 1396 1398 1400
1402 1404 SEQ 0984
CONCAT 1367 1369 1371 1373 1375 1380 1382 1384 1386 1392 1394 1396 1398 1400
1402 1404
DELAY 249 1936 1962
EPCAP 2026
ERCAL 2024 2027
ERSTR 1649
FIELD 1367 1369 1371 1373 1375 1380 1382 1384 1386 1392 1394 1396 1398 1400
1402 1404
FMSG 1567 1852 1867 1868 1869 1870 1871 1872 1873 1874 1875 1880 1881 1882
1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896
1897
FMSGC 1561 1564 1613 1685 1688 1699 1741 1802 1806 2047
FMSGCD 1615 1644 1660 1700 1995
GET 135 150 174 176 196 198 230 252 254 277 295 315 335 355
374 435 437 446 467 469 489 491 509 511 540 621 623 679
681 795 797 831 833 854 872 910 912 936 1002 1004 1135 1137
1196 1198 1335 1357 1359 1434 1436 1470 1472 1495 1497 1570 1572 1641
1702 1704 1751 1753 1815 1817 1834 1836 1861 1863 1939 1941 1964 1966
1993 1997 1999 2028 2030
GETTAB 1601 1680
GO 387 400 413 414 430 434 445 459 465 481 487 502 507 522
527 528 538 588 601 604 617 648 661 662 669 670 724 739
742 754 758 767 768 772 778 786 788 790 849 850 853 865
866 870 871 908 989 999 1094 1098 1108 1110 1111 1115 1117 1118
1123 1132 1269 1270 1296 1305 1311 1313 1315 1319 1321 1332 1424 1428
1491 1492 1493 1568 1593 1602 1616 1627 1636 1645 1650 1651 1652 1661
1681 1701 1725 1726 1740 1742 1747 1774 1775 1807 1812 1983 1988 1992
2046 2059 2060
HALT 2054
JEN 1004 1137
JRSTF 1639 1755 2006
JSYS 1935 1961
MFLD 1367# 1367 1369# 1369 1371# 1371 1373# 1373 1375# 1375 1380# 1380 1382# 1382
1384# 1384 1386# 1386 1392# 1392 1394# 1394 1396# 1396 1398# 1398 1400# 1400
1402# 1402 1404# 1404
MWORD 1367 1369 1371 1373 1375 1380 1382 1384 1386 1392 1394 1396 1398 1400
1402 1404
PCRL 1494
PCRLF 1560 1569 1743 1801 1803 1808 2051
PNT1 1488
PNT1F 1614
PNT6F 2050
PNTADR 1469
PNTDEC 1466 1543
PNTHW 1453 1503 1540 1854
PNTMSF 1561 1564 1567 1613 1615 1644 1660 1686 1688 1699 1700 1741 1802 1806
1852 1867 1868 1869 1870 1871 1872 1873 1874 1875 1880 1881 1882 1883
1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897
1995 2047
PNTMSG 423 427 432 529 539 1165 1168 1172 1175 1179 1182 1185 1188 1191
1306 1451 1454 1456 1457 1458 1459 1460 1461 1462 1463 1464 1467 1484
1490 1501 1508 1513 1514 1515 1516 1517 1523 1524 1525 1526 1527 1531
1538 1541 1544 SEQ 0985
PNTOCF 1563 1566
PNTOCS 1171 1178 1533 1546
PUT 131 145 167 169 190 192 226 240 242 272 290 311 330 351
370 398 400 443 457 459 479 481 500 502 521 583 585 643
645 718 720 811 828 848 864 900 902 921 968 970 1013 1022
1031 1040 1049 1058 1067 1075 1077 1161 1163 1264 1266 1325 1418 1420
1449 1451 1482 1484 1557 1559 1599 1677 1679 1723 1725 1776 1778 1824
1826 1842 1844 1928 1930 1954 1956 1980 1982 2020 2022
RGET 174 196 252 435 467 489 509 621 679 795 831 910 1002 1135
1196 1357 1434 1470 1495 1570 1702 1751 1815 1834 1861 1939 1964 1997
2028
RPCAP 2023
RPUT 167 190 240 398 457 479 500 583 643 718 900 968 1075 1161
1264 1418 1449 1482 1557 1677 1723 1776 1824 1842 1928 1954 1980 2020
RTN 130 136 144 151 166 176 189 198 225 231 239 254 271 278
289 296 310 316 329 336 350 356 369 375 383 388 397 437
447 469 491 511 530 541 623 681 797 810 833 838 847 855
863 873 882 891 899 912 937 1113 1120 1126 1160 1198 1359 1417
1430 1436 1472 1497 1504 1534 1547 1572 1597 1642 1659 1676 1704 1720
1722 1744 1757 1772 1817 1836 1863 1925 1927 1941 1951 1953 1966 1979
1986 1991 1999 2005 2008 2019 2024 2027 2030
SETUUO 1698
TMSG 1454 1456 1457 1458 1459 1460 1461 1462 1463 1464 1467 1489 1513 1514
1515 1516 1517 1523 1524 1525 1526 1527 1531 1541 1544
TMSGC 1168 1175 1451 1484 1501 1508 1538
TMSGCD 423 427 432 529 539 1165 1182 1185 1188 1191 1306
TMSGD 1172 1179
TRPSET 1984
TTIDEC 1689
USRIO 1637 1989
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 1
DFCIAU MAC 6-Aug-83 09:31 UTILITY Routines Module SEQ 0986
1 SUBTTL UTILITY Routines Module
2
3 SALL
4
5 SEARCH DFCIA,MONSYM
6
7 ; Typeout/typin routines
8
9 ENTRY CLRBUF,TTYYES
10 ENTRY PPDEC,PPDECF,PSDN,ALTCHH,CONVSX,.PNTOC,.PNTDC,.PNTDP
11
12 ; Clock handling routines/variables
13
14 ENTRY STCLOK,MONTIM,PTIME,RUNTME,PSTAMP,.DELAY
15 INTERN CURTIM,MAXTIM,DEBTIM,USTIM,FORPNT,LCHAR
16
17 ; TOPS-10/20 miscellaneous routines
18
19 ENTRY .CLOSE,.RESET,.EXIT
20
21 ; File handling routines
22
23 ENTRY FGETW,FINCMD,FOARG
24
25 ; Data pattern routines
26
27 ENTRY BUFGEN,BUFCOM,PATPNT,PATBUF
28 INTERN WRDERR
29
30 ; Switch handling routines
31
32 ENTRY .SWCHP,SWITT,.ISWT,SWCHPT,SWCOM
33 INTERN .RSWIT,.LSWIT,SWRGT
34
35 ; Miscellaneous routines
36
37 ENTRY PARSER,.COMM,.SARG,.OARG,.DARG,CHKARG,LASARG,DECYN,FIOFF
38 INTERN .CGOT,ARGUM,ARGFLG
39
40 ; Scope routine
41
42 ENTRY SCOPE1
43 INTERN SCOSW,SCOOFF
44
45 ; EXTERN's located in DFCIA1.MAC
46
47 EXTERN EDEBUG,UDEBUG,MDEBUG,CADDR,CWORDL,CWORDR,SPREP2,UVERSN
48 EXTERN TSTPNT,TSTNUM,TSTSUB,TSTPC,TSTREP,TSTOFF,ALTF
49 EXTERN FINPUT,FINECH,TAKFIL,TPAT,CPORT
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 2
DFCIAU MAC 6-Aug-83 09:31 UTILITY Routines Module SEQ 0987
50
51 ; EXTERN's located in DFCIAI.MAC (Port Device Handling Routines module)
52
53 EXTERN RDCSR,GETLOG,LOGPNT,FFF
54
55
56 ;#********************************************************************
57 ; ZU - Address for use in DDT
58 ;#********************************************************************
59
60 000000' ZU: ; address of 00000'
61
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 3
DFCIAU MAC 6-Aug-83 09:31 Printout/Typin Routines SEQ 0988
62 SUBTTL Printout/Typin Routines
63
64 ;#********************************************************************
65 ;* CONVSX - Convert sixbit to octal
66 ;
67 ; Argument: AC1 - Contains a word of sixbit (which may or may not
68 ; be an octal number).
69 ;
70 ; Return: +1 - Error - not a valid octal number
71 ; +2 - Ok - number converted ok - in AC1
72 ;#********************************************************************
73
74 000000' 261 17 0 00 000000 CONVSX: RPUT (0,2) ; save AC's
75
76 000002' 202 01 0 00 006074' MOVEM 1,CONVSS# ; save argument
77 000003' 200 01 0 00 003511' MOVE 1,[POINT 6,CONVSS] ; set to get sixbit char
78 000004' 202 01 0 00 000027' MOVEM 1,CONVSP ; save the pointer
79 000005' 400 02 0 00 000000 SETZ 2, ; clear result
80 000006' 134 01 0 00 000027' CONVS0: ILDB 1,CONVSP ; get a char
81 000007' 322 01 0 00 000022' JUMPE 1,CONVS1 ; zero - all done - exit
82 000010' 301 01 0 00 000020 CAIL 1,20 ; see if its in octal range
83 000011' 303 01 0 00 000027 CAILE 1,27
84 000012' 254 00 0 00 000017' JRST CONVSE ; no - error
85 000013' 405 01 0 00 000007 ANDI 1,7 ; yes - save only digit
86 000014' 242 02 0 00 000003 LSH 2,3 ; multiply by 8
87 000015' 272 01 0 00 000002 ADDM 1,2 ; insert in number
88 000016' 254 00 0 00 000006' JRST CONVS0 ; get next digit
89
90 ; Error
91
92 000017' 262 17 0 00 000002 CONVSE: RGET (2,0) ; restore AC's
93
94 000021' 263 17 0 00 000000 RTN ; return +1
95
96 ; Done - put result into AC1
97
98 000022' 200 01 0 00 000002 CONVS1: MOVE 1,2
99 000023' 262 17 0 00 000002 RGET (2,0) ; restore AC's
100
101 000025' 350 00 0 17 000000 AOS (P) ; set up return +2
102 000026' 263 17 0 00 000000 RTN ; exit
103
104 000027' 000000 000000 CONVSP: 0 ; number to convert
105 000030' 000000 000000 0 ; trailing zeros
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 4
DFCIAU MAC 6-Aug-83 09:31 Printout/Typin Routines SEQ 0989
106
107 ;#********************************************************************
108 ;* ALTCHH - Handle altmode intercept
109 ;
110 ; If an altmode has been typed in response to the question asked
111 ; immediately before this call - exit through ALTMGO.
112 ;
113 ; If an altmode has not been typed - exit to the address specified
114 ; by the right half of the UUO (in $SVUUO).
115 ;#********************************************************************
116
117 000031' 261 17 0 00 000000 ALTCHH: PUT 0 ; save AC0
118 000032' 200 00 0 00 030232 MOVE $CHRIN ; get last character typed
119 000033' 306 00 0 00 000033 CAIN 33 ; altmode?
120 000034' 254 00 0 00 000042' JRST ALTCHX ; yes - handle
121 000035' 302 00 0 00 000175 CAIE 175 ; altmode?
122 000036' 306 00 0 00 000176 CAIN 176 ; altmode?
123 000037' 254 00 0 00 000042' JRST ALTCHX ; yes - handle
124 000040' 262 17 0 00 000000 GET 0 ; no - restore AC0
125 000041' 254 00 1 00 030113 JRST @$SVUUO ; exit
126
127 000042' 262 17 0 00 000000 ALTCHX: GET 0 ; restore AC0
128 000043' 262 17 0 00 006116' GET XX# ; take off return address
129 000044' 254 00 1 00 030063 JRST @ALTMGO ; go to intercept address
130
131
132 ;#********************************************************************
133 ;* CLRBUF - Clear input buffer
134 ;#********************************************************************
135
136 000045' 336 00 0 00 030037 CLRBUF: SKIPN USER ; user mode?
137 000046' 263 17 0 00 000000 RTN ; no - return
138 000047' 261 17 0 00 000000 RPUT (0,1) ; save some AC's
139
140 000051' 201 01 0 00 000100 MOVEI 1,100 ; set up TOPS-10 argument
141 000052' 332 00 0 00 030516 SKIPE MONTYP ; TOPS-20?
142 000053' 051 11 0 00 000000 CLRBFI ; yes - clear input buffer
143 000054' 336 00 0 00 030516 SKIPN MONTYP ; TOPS-10?
144 000055' 104 00 0 00 000100 CFIBF ; yes - clear input buffer
145 000056' 262 17 0 00 000001 RGET (1,0) ; restore AC's
146
147 000060' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 5
DFCIAU MAC 6-Aug-83 09:31 Printout/Typin Routines SEQ 0990
148
149 ;#********************************************************************
150 ;* TTYYES - Answer yes or no question
151 ;
152 ; Calling sequence: MOVE [FMSG <Question?>]
153 ; GO TTYYES
154 ; Return+1 ==> No
155 ; Return+2 ==> Yes
156 ;#********************************************************************
157
158 000061' 261 17 0 00 000000 TTYYES: RPUT (0,1,2) ; save AC's
159
160 000064' 202 00 0 00 000002 MOVEM 2 ; get printout in AC2
161 000065' 256 00 0 00 000002 TTYY0: XCT 2 ; print question
162 000066' 037 01 0 00 003512' FMSG < (Y or N) - > ; print Y or N section
163 000067' 037 10 0 00 000003 TTYY1: TTSIXB ; get it
164 ALTCHK [SKIPE $TWCNT ; did a timeout occur?
165 JRST TTYY0 ; no - error - reask question
166 000070' 007 00 0 00 003515' JRST TTYY1] ; yes - just keep looking for answer
167 000071' 404 00 0 00 003520' AND [770000,,0] ; mask out all but first character
168 000072' 241 00 0 00 000006 ROT 6 ; right justify byte
169 000073' 302 00 0 00 000071 CAIE 71 ; Y?
170 000074' 306 00 0 00 000056 CAIN 56 ; N?
171 000075' 334 00 0 00 000000 SKIPA ; yes - continue
172 000076' 254 00 0 00 000065' JRST TTYY0 ; neither - reask question
173 000077' 306 00 0 00 000071 CAIN 71 ; Y?
174 000100' 350 00 0 17 777775 AOS -3(P) ; increment return
175 000101' 262 17 0 00 000002 RGET (2,1,0) ; restore AC's
176
177 000104' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 6
DFCIAU MAC 6-Aug-83 09:31 Printout/Typin Routines SEQ 0991
178
179 ;#*********************************************************************
180 ;* PSDN - Prints signed decimal numbers
181 ;
182 ; PSDN prints the contents of AC0 as a signed decimal number followed
183 ; by a period. Leading zeros are suppressed.
184 ;#*********************************************************************
185
186 000105' 261 17 0 00 000000 PSDN: PUT
187 JUMPL [TMSG <->
188 MOVN (P)
189 000106' 321 00 0 00 003522' JRST .+1]
190 000107' 037 15 0 00 000000 PNTDEC ; print the number
191 000110' 037 00 0 00 003525' TMSG <.> ; follow with a period
192 000111' 262 17 0 00 000000 GET
193 000112' 263 17 0 00 000000 RTN
194
195 000113' 261 17 0 00 000000 PSDNF: PUT
196 JUMPL [FMSG <->
197 MOVN (P)
198 000114' 321 00 0 00 003526' JRST .+1]
199 000115' 037 15 0 00 000001 PNTDCF
200 000116' 037 01 0 00 000056 PNTCIF "."
201 000117' 262 17 0 00 000000 GET
202 000120' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 7
DFCIAU MAC 6-Aug-83 09:31 Printout/Typin Routines SEQ 0992
203
204 ;#********************************************************************
205 ;* .PNTOC - Print n digit octal number with leading zeros suppressed
206 ;#********************************************************************
207
208 000121' 261 17 0 00 000000 .PNTOC: RPUT (0,1,2,3,4,$SVUUO,$SVUPC)
209
210 000130' 135 01 0 00 003531' LDB 1,[POINT 23,$SVUUO,35] ; get address portion
211 000131' 661 01 0 00 200040 TLO 1,200040 ; make into a "MOVE 1," instruction
212 000132' 261 17 0 00 000001 PUT 1 ; put on stack
213 000133' 200 01 0 17 777772 MOVE 1,-6(P) ; restore AC1
214 000134' 256 00 0 17 000000 XCT (P) ; get number into AC1
215 000135' 262 17 0 00 006116' GET XX# ; pop off temporary stack location
216 000136' 214 02 0 00 000001 MOVM 2,1 ; get absolute value
217 000137' 243 02 0 00 000141' JFFO 2,.+2 ; find out where number starts
218 000140' 201 03 0 00 000043 MOVEI 3,^D35 ; assume at least one bit set
219 000141' 231 03 0 00 000003 IDIVI 3,3 ; calculate # of leading 0's there are
220 000142' 135 02 0 00 003532' LDB 2,[POINT 4,$SVUUO,12] ; get AC field
221 000143' 270 02 0 00 000003 ADD 2,3 ; calculate number of spaces to
222 000144' 275 02 0 00 000014 SUBI 2,^D12 ; print
223 000145' 335 00 0 00 000001 SKIPGE 1 ; number is actually negative?
224 000146' 370 00 0 00 000002 SOS 2 ; yes - allow for minus sign
225 000147' 333 00 0 00 000002 SKIPLE 2 ; number of spaces still 1..n?
226 000150' 256 00 0 02 000163' XCT SPATAB(2) ; yes - print leading spaces
227 000151' 200 00 0 00 000001 MOVE 1 ; get number
228 000152' 037 16 0 00 000003 PNTOCS ; print it
229 000153' 262 17 0 00 030114 RGET ($SVUPC,$SVUUO,4,3,2,1,0)
230
231 000162' 263 17 0 00 000000 RTN ; exit
232
233 ; Table to print leading spaces
234
235 000163' 255 00 0 00 000000 SPATAB: JFCL ; 0
236 000164' 037 00 0 00 003533' TMSG < > ; 1
237 000165' 037 00 0 00 003534' TMSG < > ; 2
238 000166' 037 00 0 00 003535' TMSG < > ; 3
239 000167' 037 00 0 00 003536' TMSG < > ; 4
240 000170' 037 00 0 00 003537' TMSG < > ; 5
241 000171' 037 00 0 00 003541' TMSG < > ; 6
242 000172' 037 00 0 00 003543' TMSG < > ; 7
243 000173' 037 00 0 00 003545' TMSG < > ; 8
244 000174' 037 00 0 00 003547' TMSG < > ; 9
245 000175' 037 00 0 00 003551' TMSG < > ; 10
246 000176' 037 00 0 00 003554' TMSG < > ; 11
247 000177' 037 00 0 00 003557' TMSG < > ; 12
248 000200' 037 00 0 00 003562' TMSG < > ; 13
249 000201' 037 00 0 00 003565' TMSG < > ; 14
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 8
DFCIAU MAC 6-Aug-83 09:31 Printout/Typin Routines SEQ 0993
250
251 ;#********************************************************************
252 ;* .PNTDC - Print n digit decimal number with leading zeros suppressed
253 ;#********************************************************************
254
255 000202' 261 17 0 00 000000 .PNTDC: RPUT (0,1,2,3,4,5,$SVUUO,$SVUPC)
256
257 000212' 135 01 0 00 003531' LDB 1,[POINT 23,$SVUUO,35] ; get address portion
258 000213' 661 01 0 00 200040 TLO 1,200040 ; make into a "MOVE 1," instruction
259 000214' 261 17 0 00 000001 PUT 1 ; put on stack
260 000215' 200 01 0 17 777771 MOVE 1,-7(P) ; restore AC1
261 000216' 256 00 0 17 000000 XCT (P) ; get number into AC1
262 000217' 262 17 0 00 006116' GET XX# ; pop off temporary stack location
263 000220' 214 02 0 00 000001 MOVM 2,1 ; get absolute value
264 000221' 201 04 0 00 000001 MOVEI 4,1 ; digit count
265 000222' 231 02 0 00 000012 .PNTD0: IDIVI 2,^D10 ; divide by 10
266 000223' 322 02 0 00 000226' JUMPE 2,.PNTD1 ; remainder? no - go print
267 000224' 350 00 0 00 000004 AOS 4 ; yes - increment character count
268 000225' 254 00 0 00 000222' JRST .PNTD0 ; and keep looping
269 000226' 200 05 0 00 003570' .PNTD1: MOVE 5,[TMSG < >]
270 000227' 135 02 0 00 003532' LDB 2,[POINT 4,$SVUUO,12] ; get AC field
271 000230' 370 00 0 00 000002 SOS 2 ; allow for initial space
272 000231' 317 02 0 00 000004 CAMG 2,4 ; overflow?
273 GO [IDIVI 1,^D1000 ; yes - divide by 1000
274 SUBI 4,3
275 MOVE 5,[TMSG <K>]
276 000232' 260 17 0 00 003573' RTN]
277 000233' 135 02 0 00 003532' LDB 2,[POINT 4,$SVUUO,12] ; get AC field
278 000234' 370 00 0 00 000002 SOS 2 ; allow for initial space
279 000235' 317 02 0 00 000004 CAMG 2,4 ; overflow?
280 GO [IDIVI 1,^D1000 ; yes - divide by 1000
281 SUBI 4,3
282 MOVE 5,[TMSG <M>]
283 000236' 260 17 0 00 003601' RTN]
284 000237' 135 02 0 00 003532' LDB 2,[POINT 4,$SVUUO,12] ; get AC field
285 000240' 370 00 0 00 000002 SOS 2 ; allow for initial space
286 000241' 274 02 0 00 000004 SUB 2,4 ; calculate number of spaces to print
287 000242' 335 00 0 00 000001 SKIPGE 1 ; number is actually negative?
288 000243' 370 00 0 00 000002 SOS 2 ; yes - allow for minus sign
289 000244' 333 00 0 00 000002 SKIPLE 2 ; number of spaces still 1..n?
290 000245' 256 00 0 02 000163' XCT SPATAB(2) ; yes - print leading spaces
291 000246' 200 00 0 00 000001 MOVE 1 ; get number
292 000247' 037 15 0 00 000000 PNTDEC ; print it
293 000250' 256 00 0 00 000005 XCT 5 ; print trailer
294 000251' 262 17 0 00 030114 RGET ($SVUPC,$SVUUO,5,4,3,2,1,0)
295
296 000261' 263 17 0 00 000000 RTN ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 9
DFCIAU MAC 6-Aug-83 09:31 Printout/Typin Routines SEQ 0994
297
298 ;#********************************************************************
299 ;* .PNTDP - Print n digit decimal number with leading zeros suppressed
300 ;#********************************************************************
301
302 000262' 261 17 0 00 000000 .PNTDP: RPUT (0,1,2,3,4,5,$SVUUO,$SVUPC)
303
304 000272' 135 01 0 00 003531' LDB 1,[POINT 23,$SVUUO,35] ; get address portion
305 000273' 661 01 0 00 200040 TLO 1,200040 ; make into a "MOVE 1," instruction
306 000274' 261 17 0 00 000001 PUT 1 ; put on stack
307 000275' 200 01 0 17 777771 MOVE 1,-7(P) ; restore AC1
308 000276' 256 00 0 17 000000 XCT (P) ; get number into AC1
309 000277' 262 17 0 00 006116' GET XX# ; pop off temporary stack location
310 000300' 214 02 0 00 000001 MOVM 2,1 ; get absolute value
311 000301' 201 04 0 00 000001 MOVEI 4,1 ; digit count
312 000302' 231 02 0 00 000012 .PNTP0: IDIVI 2,^D10 ; divide by 10
313 000303' 322 02 0 00 000306' JUMPE 2,.PNTP1 ; remainder? no - go print
314 000304' 350 00 0 00 000004 AOS 4 ; yes - increment character count
315 000305' 254 00 0 00 000302' JRST .PNTP0 ; and keep looping
316 000306' 200 05 0 00 003605' .PNTP1: MOVE 5,[TMSG <.>]
317 000307' 135 02 0 00 003532' LDB 2,[POINT 4,$SVUUO,12] ; get AC field
318 000310' 370 00 0 00 000002 SOS 2 ; allow for initial space
319 000311' 317 02 0 00 000004 CAMG 2,4 ; overflow?
320 GO [IDIVI 1,^D1000 ; yes - divide by 1000
321 SUBI 4,3
322 MOVE 5,[TMSG <.K>]
323 000312' 260 17 0 00 003610' RTN]
324 000313' 135 02 0 00 003532' LDB 2,[POINT 4,$SVUUO,12] ; get AC field
325 000314' 370 00 0 00 000002 SOS 2 ; allow for initial space
326 000315' 317 02 0 00 000004 CAMG 2,4 ; overflow?
327 GO [IDIVI 1,^D1000 ; yes - divide by 1000
328 SUBI 4,3
329 MOVE 5,[TMSG <.M>]
330 000316' 260 17 0 00 003616' RTN]
331 000317' 135 02 0 00 003532' LDB 2,[POINT 4,$SVUUO,12] ; get AC field
332 000320' 370 00 0 00 000002 SOS 2 ; allow for initial space
333 000321' 274 02 0 00 000004 SUB 2,4 ; calculate number of spaces to print
334 000322' 335 00 0 00 000001 SKIPGE 1 ; number is actually negative?
335 000323' 370 00 0 00 000002 SOS 2 ; yes - allow for minus sign
336 000324' 333 00 0 00 000002 SKIPLE 2 ; number of spaces still 1..n?
337 000325' 256 00 0 02 000163' XCT SPATAB(2) ; yes - print leading spaces
338 000326' 200 00 0 00 000001 MOVE 1 ; get number
339 000327' 037 15 0 00 000000 PNTDEC ; print it
340 000330' 256 00 0 00 000005 XCT 5 ; print trailer
341 000331' 262 17 0 00 030114 RGET ($SVUPC,$SVUUO,5,4,3,2,1,0)
342
343 000341' 263 17 0 00 000000 RTN ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 10
DFCIAU MAC 6-Aug-83 09:31 Printout/Typin Routines SEQ 0995
344
345 ;#********************************************************************
346 ;* PPDEC - Print decimal number in a field of size x.
347 ;
348 ; Call is: PDEC X,ADR
349 ;#********************************************************************
350
351 000342' 261 17 0 00 000000 PPDEC: RPUT (0,1,$SVUUO,$SVUPC) ; save ACs
352
353 000346' 200 00 1 00 030113 MOVE @$SVUUO ; get number to print
354 000347' 135 01 0 00 003532' LDB 1,[POINT 4,$SVUUO,12] ; get size field
355 000350' 322 00 0 00 000361' JUMPE PDECSS ; special print
356 000351' 250 01 0 00 030264 PDEC0: EXCH 1,RADLSC ; put in position
357 000352' 037 16 0 00 000000 PNTDS ; no - print the number
358 000353' 202 01 0 00 030264 MOVEM 1,RADLSC ; restore old field size
359 000354' 262 17 0 00 030114 RGET ($SVUPC,$SVUUO,1,0) ; restore ACs
360
361 000360' 263 17 0 00 000000 RTN ; exit
362
363 000361' 322 01 0 00 000351' PDECSS: JUMPE 1,PDEC0 ; make sure length field is specified
364 XCT [TMSG <0> ; print a bunch of spaces
365 TMSG <0>
366 TMSG < 0>
367 TMSG < 0>
368 TMSG < 0>
369 TMSG < 0>
370 TMSG < 0>
371 TMSG < 0>
372 TMSG < 0>
373 TMSG < 0>
374 TMSG < 0>
375 TMSG < 0>
376 TMSG < 0>
377 TMSG < 0>
378 TMSG < 0>
379 000362' 256 00 0 01 003663' TMSG < 0>](1)
380 000363' 262 17 0 00 030114 RGET ($SVUPC,$SVUUO,1,0) ; restore ACs
381
382 000367' 263 17 0 00 000000 RTN ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 11
DFCIAU MAC 6-Aug-83 09:31 Printout/Typin Routines SEQ 0996
383
384 ;#********************************************************************
385 ;* PPDECF - Force print decimal number in a field of size x.
386 ;
387 ; Call is: PDECF X,ADR
388 ;#********************************************************************
389
390 000370' 261 17 0 00 000000 PPDECF: RPUT (0,1,$SVUUO,$SVUPC) ; save ACs
391
392 000374' 200 00 1 00 030113 MOVE @$SVUUO ; get number to print
393 000375' 135 01 0 00 003532' LDB 1,[POINT 4,$SVUUO,12] ; get size field
394 000376' 322 00 0 00 000407' JUMPE PDECFS ; special print
395 000377' 250 01 0 00 030264 PDECF0: EXCH 1,RADLSC ; put in position
396 000400' 037 16 0 00 000001 PNTDSF ; no - print the number
397 000401' 202 01 0 00 030264 MOVEM 1,RADLSC ; restore old field size
398 000402' 262 17 0 00 030114 RGET ($SVUPC,$SVUUO,1,0) ; restore ACs
399
400 000406' 263 17 0 00 000000 RTN ; exit
401
402 000407' 322 01 0 00 000377' PDECFS: JUMPE 1,PDECF0 ; make sure length field is specified
403 XCT [FMSG <0> ; print a bunch of spaces
404 FMSG <0>
405 FMSG < 0>
406 FMSG < 0>
407 FMSG < 0>
408 FMSG < 0>
409 FMSG < 0>
410 FMSG < 0>
411 FMSG < 0>
412 FMSG < 0>
413 FMSG < 0>
414 FMSG < 0>
415 FMSG < 0>
416 FMSG < 0>
417 FMSG < 0>
418 000410' 256 00 0 01 003703' FMSG < 0>](1)
419 000411' 262 17 0 00 030114 RGET ($SVUPC,$SVUUO,1,0) ; restore ACs
420
421 000415' 263 17 0 00 000000 RTN ; exit
422
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 12
DFCIAU MAC 6-Aug-83 09:31 Clock Handling Routines SEQ 0997
423 SUBTTL Clock Handling Routines
424
425 ;#********************************************************************
426 ;* STCLOK - Initialize program runtime clock
427 ;
428 ; This routine initializes the clock for the program. It is used in
429 ; conjunction with routine "RUNTME".
430 ;
431 ; In exec mode this routine resets, restarts and reads the current
432 ; microsecond time clock into memory for reference by the runtime
433 ; calculator "RUNTME". The clock is set up so it causes a hardware
434 ; interrupt, it merely free runs.
435 ;
436 ; In user mode the program run time is obtained in milliseconds with
437 ; a monitor call, converted to microseconds and stored for future
438 ; reference by the runtime calculator "RUNTME".
439 ;
440 ; This routine may be called anytime to reset the program runtime.
441 ;
442 ; Call Sequence: GO STCLOK ; calls the routine
443 ; RTN-1 ; always returns +1
444 ;#********************************************************************
445
446 000416' 261 17 0 00 000000 STCLOK: RPUT (0,1) ; save AC's
447
448 000420' 332 00 0 00 030037 SKIPE USER ; in user mode?
449 000421' 254 00 0 00 000430' JRST STCU ; yes
450 000422' 7 024 20 0 00 420000 CONO 24,1B18!1B22 ; stop and reset the clock
451 000423' 402 00 0 00 000510 SETZM 510 ; clear EPT locations
452 000424' 402 00 0 00 000511 SETZM 511 ; for timer data
453 000425' 7 024 20 0 00 002000 CONO 24,1B25 ; turns the meter on
454 000426' 7 020 04 0 00 000437' DATAI 20,TMRST1 ; save a double word
455 000427' 254 00 0 00 000434' JRST STCX ; done - exit
456 000430' 476 00 0 00 006105' STCU: SETOM INITM# ; invalidate initial time
457 000431' 260 17 0 00 000441' GO MONTIM ; get monitor time in microseconds
458 000432' 255 00 0 00 000000 JFCL ; in meter format
459 000433' 124 01 0 00 000437' DMOVEM 1,TMRST1 ; save a double word
460 000434' 262 17 0 00 000001 STCX: RGET (1,0) ; restore
461
462 000436' 263 17 0 00 000000 RTN ; exit
463
464 000437' TMRST1: BLOCK 2 ; 2 word initial time storage
465
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 13
DFCIAU MAC 6-Aug-83 09:31 Clock Handling Routines SEQ 0998
466
467 ;#********************************************************************
468 ;* MONTIM - Read program runtime from monitor
469 ;
470 ; Here is a subroutine called by both STCLOK and RUNTME. It reads
471 ; current program runtime in milliseconds from the monitor, converts
472 ; the time to microseconds and positions the microsecond count in AC2
473 ; and AC1 in the same 59 bit format you get when you read the meter
474 ; board microsecond clock. The microsecond count is then returned in
475 ; AC1 and AC2 .....
476 ;
477 ; Call: GO MONTIM ; call the routine
478 ; RTN+1 ; microsecond time in AC1 and AC2
479 ;#********************************************************************
480
481 000441' 261 17 0 00 000003 MONTIM: PUT 3 ; save AC3 (RUNTM JSYS destroys it)
482 000442' 332 00 0 00 030516 SKIPE MONTYP ; TOPS10?
483 000443' 254 00 0 00 000450' JRST MONTI0 ; no - continue
484 000444' 047 01 0 00 000022 CALLI 1,22 ; yes - get current time in jiffies
485 000445' 400 02 0 00 000000 SETZ 2,
486 000446' 225 01 0 00 040433 MULI 1,^D16667
487 000447' 254 00 0 00 000453' JRST MONTI1
488 000450' 201 01 0 00 400000 MONTI0: MOVEI 1,.FHSLF ; get process handle
489 000451' 104 00 0 00 000014 TIME ; does a TIME JSYS
490 000452' 320 17 0 00 003576' ERCAL [RTN] ; error not likely
491 000453' 335 00 0 00 006105' MONTI1: SKIPGE INITM# ; initial time valid?
492 000454' 202 01 0 00 006105' MOVEM 1,INITM# ; no - set it up
493 000455' 274 01 0 00 006105' SUB 1,INITM# ; subtract initial time
494 000456' 400 02 0 00 000000 SETZ 2, ; clear AC2
495 000457' 225 01 0 00 001750 MULI 1,^D1000 ; converts ms to us
496 000460' 244 01 0 00 000014 ASHC 1,^D12 ; put data in proper microsecond format
497 000461' 262 17 0 00 000003 GET 3 ; restore AC3
498 000462' 263 17 0 00 000000 RTN ; and exit
499
500
501 ;#********************************************************************
502 ;* PTIME - Print time of day
503 ;#********************************************************************
504
505 000463' 261 17 0 00 000003 PTIME: PUT 3 ; save AC3
506 000464' 200 03 0 00 003723' MOVE 3,[JFCL] ; non-zero for RUNTME
507 000465' 402 00 0 00 006101' SETZM FORPNT# ; clear forced print flag
508 000466' 260 17 0 00 000477' GO RUNTME ; go print out time
509 000467' 262 17 0 00 000003 GET 3 ; restore AC3
510 000470' 263 17 0 00 000000 RTN ; return
511
512 000471' 261 17 0 00 000003 PTIMEF: PUT 3 ; save AC3
513 000472' 200 03 0 00 003723' MOVE 3,[JFCL] ; non-zero for RUNTME
514 000473' 476 00 0 00 006101' SETOM FORPNT ; set forced print flag
515 000474' 260 17 0 00 000477' GO RUNTME ; go print out time
516 000475' 262 17 0 00 000003 GET 3 ; restore AC3
517 000476' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 14
DFCIAU MAC 6-Aug-83 09:31 Clock Handling Routines SEQ 0999
518
519 ;#********************************************************************
520 ;* RUNTME - Calculate and print program runtime
521 ;
522 ; This reports the elapsed time (exec or user mode) since the last
523 ; call to the initialize routine "STCLOK". The runtime is printed on the
524 ; current line and no line feed is printed at the end of the message.
525 ; It is printed as " 1h 20m 48s"
526 ;
527 ; In exec mode the time is calculated by using the microsecond clock
528 ; that was initialized in the call to "STCLOK". In user mode, "RUNTIME"
529 ; monitor calls are used and the difference is calculated from the last
530 ; call to "STCLOK".
531 ;
532 ; Arguments: AC3 - contains message to print - if zero then the time
533 ; is only calculated and the routine returns (in TMSG format). The
534 ; current time is always placed in CURTIM (in seconds).
535 ;
536 ; Call sequence: GO RUNTME ; call the routine
537 ; RTN+1 ; always returns +1
538 ;#********************************************************************
539
540 000477' 261 17 0 00 000000 RUNTME: RPUT (0,1,2,3) ; save AC's
541
542
543 ; Get the microsecond count
544
545 000503' 332 00 0 00 030037 SKIPE USER ; in user mode?
546 000504' 254 00 0 00 000507' JRST RUNTM0 ; yes
547 000505' 7 020 04 0 00 000567' DATAI 20,TMRUN1 ; exec mode. get dble word time
548 000506' 254 00 0 00 000511' JRST RUNTM1 ; go to common code
549 000507' 260 17 0 00 000441' RUNTM0: GO MONTIM ; get time from mon calls to AC1,AC2
550 000510' 124 01 0 00 000567' DMOVEM 1,TMRUN1 ; save microsecond count in double word
551
552 ; Calculate time
553
554 000511' 120 00 0 00 000567' RUNTM1: DMOVE TMRUN1 ; get current run time
555 000512' 115 00 0 00 000437' DSUB TMRST1 ; calculates actual run time
556 000513' 244 00 0 00 777764 ASHC -^D12 ; right justify
557 000514' 234 00 0 00 003724' DIV [^D1000] ; convert us to ms
558 000515' 202 00 0 00 000573' MOVEM DEBTIM ; save in debug time location
559 000516' 202 01 0 00 000574' MOVEM 1,USTIM ; save microseconds also
560 000517' 230 00 0 00 003724' IDIV [^D1000] ; convert ms to seconds
561 000520' 202 00 0 00 000571' MOVEM CURTIM ; save in current time location
562
563 ; Exit if not printing
564
565 000521' 336 00 0 00 000003 SKIPN 3 ; message to print?
566 JRST [RGET (3,2,1,0) ; no - restore AC's and
567 000522' 254 00 0 00 003725' RTN] ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 15
DFCIAU MAC 6-Aug-83 09:31 Clock Handling Routines SEQ 1000
568
569 ; Print the time
570
571 000523' 256 00 0 00 000003 XCT 3 ; print the message
572 000524' 231 00 0 00 000074 IDIVI ^D60 ; compute minutes, seconds
573 000525' 202 01 0 00 000003 MOVEM 1,3 ; save seconds
574 000526' 231 00 0 00 000074 IDIVI ^D60 ; compute hours, minutes
575 000527' 322 00 0 00 000540' JUMPE RUNTM2 ; print hours if not zero
576
577 ; Print hours
578
579 000530' 332 00 0 00 006101' SKIPE FORPNT ; forced print?
580 000531' 037 15 0 00 000001 PNTDCF ; yes - print hours
581 000532' 336 00 0 00 006101' SKIPN FORPNT ; forced print?
582 000533' 037 15 0 00 000000 PNTDEC ; no - print hours
583
584 000534' 332 00 0 00 006101' SKIPE FORPNT ; forced print?
585 000535' 037 01 0 00 003732' FMSG <h > ; yes
586 000536' 336 00 0 00 006101' SKIPN FORPNT ; forced print?
587 000537' 037 00 0 00 003732' TMSG <h > ; no
588
589 ; Print minutes
590
591 000540' 200 00 0 00 000001 RUNTM2: MOVE 1
592 000541' 332 00 0 00 006101' SKIPE FORPNT ; forced print?
593 000542' 037 15 0 00 000001 PNTDCF ; yes - print minutes
594 000543' 336 00 0 00 006101' SKIPN FORPNT ; forced print?
595 000544' 037 15 0 00 000000 PNTDEC ; no - print minutes
596 000545' 332 00 0 00 006101' SKIPE FORPNT ; forced print?
597 000546' 037 01 0 00 003733' FMSG <m > ; yes
598 000547' 336 00 0 00 006101' SKIPN FORPNT ; forced print?
599 000550' 037 00 0 00 003733' TMSG <m > ; no
600
601 ; Print seconds
602
603 000551' 200 00 0 00 000003 MOVE 3
604 000552' 332 00 0 00 006101' SKIPE FORPNT ; forced print?
605 000553' 037 15 0 00 000001 PNTDCF ; yes - print seconds
606 000554' 336 00 0 00 006101' SKIPN FORPNT ; forced print?
607 000555' 037 15 0 00 000000 PNTDEC ; no - print seconds
608 000556' 332 00 0 00 006101' SKIPE FORPNT ; forced print?
609 000557' 037 01 0 00 003734' FMSG <s >
610 000560' 336 00 0 00 006101' SKIPN FORPNT ; forced print?
611 000561' 037 00 0 00 003735' TMSG <s>
612
613 000562' 262 17 0 00 000003 RUNTMX: RGET (3,2,1,0) ; restore AC's
614
615 000566' 263 17 0 00 000000 RTN ; and exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 16
DFCIAU MAC 6-Aug-83 09:31 Clock Handling Routines SEQ 1001
616
617 ; Timer routine storage
618
619 000567' TMRUN1: BLOCK 2 ; microsecond runtime saved here...
620
621 000571' 000000 000000 CURTIM: 0 ; current time in seconds
622 000572' 000000 000000 MAXTIM: 0 ; maximum wait time
623 000573' 000000 000000 DEBTIM: 0 ; current time in milliseconds
624 000574' 000000 000000 USTIM: 0 ; current usecs (additional to DEBTIM)
625
626
627 ;#********************************************************************
628 ;* PSTAMP - Check for an 'S' typed.
629 ;#********************************************************************
630
631 000575' 261 17 0 00 000000 PSTAMP: RPUT (0,1,2,3,4) ; save AC's
632
633 000602' 200 00 0 00 006106' MOVE LCHAR# ; get last character typed
634 000603' 306 00 0 00 000123 CAIN 123 ; was it an upper case-s?
635 000604' 254 00 0 00 000611' JRST PSTAM0 ; yes - print current statistics
636 000605' 306 00 0 00 000163 CAIN 163 ; lower case-s?
637 000606' 254 00 0 00 000611' JRST PSTAM0 ; yes - print current statistics
638 000607' 302 00 0 00 000023 CAIE 023 ; control-s?
639 000610' 254 00 0 00 000627' JRST PSTAMX ; no - exit
640
641 ; Print runtime data
642
643 000611' 037 01 0 00 003736' PSTAM0: FMSGC <** Test >
644 000612' 200 00 0 00 000000* MOVE TSTNUM ; get test number
645 000613' 037 17 0 00 000003 PNTOCF ; print it
646 000614' 200 00 0 00 000000* MOVE TSTSUB ; get subtest number
647 000615' 322 00 0 00 000620' JUMPE .+3 ; zero? yes - continue
648 000616' 037 01 0 00 003521' FMSG <-> ; no - print it
649 000617' 037 17 0 00 000003 PNTOCF
650 000620' 037 01 0 00 003741' FMSG < at >
651 000621' 260 17 0 00 000471' GO PTIMEF ; print current time
652 000622' 037 01 0 00 003742' FMSG < in Pass >
653 000623' 200 00 0 00 000000* MOVE TSTREP ; get pass count
654 000624' 350 00 0 00 000000 AOS
655 000625' 037 15 0 00 000001 PNTDCF ; print it
656 000626' 037 01 0 00 003744' FMSGD <. **>
657
658 000627' 402 00 0 00 006106' PSTAMX: SETZM LCHAR ; clear last character typed location
659 000630' 262 17 0 00 000004 RGET (4,3,2,1,0) ; restore AC's
660
661 000635' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 17
DFCIAU MAC 6-Aug-83 09:31 Clock Handling Routines SEQ 1002
662
663 ;#********************************************************************
664 ;* .DELAY - Delay a specified amount of time (in milliseconds)
665 ;#********************************************************************
666
667 000636' 261 17 0 00 000000 .DELAY: RPUT (0,1,2,3,$SVUUO,$SVUPC) ; save AC's ...
668
669 000644' 332 00 0 00 030037 SKIPE USER ; user mode?
670 000645' 254 00 0 00 000660' JRST .DELA1 ; yes - go handle
671
672 ; Exec mode - inspect timers
673
674 000646' 135 00 0 00 003531' LDB [POINT 23,$SVUUO,35] ; get address (millisecond count)
675 000647' 400 03 0 00 000000 SETZ 3, ; set up so RUNTME doesn't print time
676 000650' 260 17 0 00 000477' GO RUNTME ; get initial time
677 000651' 200 02 0 00 000573' MOVE 2,DEBTIM ; get time in msecs
678 000652' 272 00 0 00 000002 ADDM 2 ; add in the time to delay
679 000653' 400 03 0 00 000000 .DELA0: SETZ 3, ; set up so RUNTME doesn't print time
680 000654' 260 17 0 00 000477' GO RUNTME ; get time
681 000655' 313 02 0 00 000573' CAMLE 2,DEBTIM ; done?
682 000656' 254 00 0 00 000653' JRST .DELA0 ; no - keep checking time
683 000657' 254 00 0 00 000662' JRST .DELAX ; yes - exit
684
685 ; User mode - use DISMS JSYS
686
687 000660' 135 01 0 00 003531' .DELA1: LDB 1,[POINT 23,$SVUUO,35] ; get address (millisecond count)
688 000661' 104 00 0 00 000167 DISMS ; wait
689
690 ; Exit
691
692 000662' 262 17 0 00 030114 .DELAX: RGET ($SVUPC,$SVUUO,3,2,1,0) ; restore AC's ...
693
694 000670' 263 17 0 00 000000 RTN ; exit
695
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 18
DFCIAU MAC 6-Aug-83 09:31 TOPS10/20 Related Routines SEQ 1003
696 SUBTTL TOPS10/20 Related Routines
697
698 ;#********************************************************************
699 ;* .RESET - Subroutine to issue a RESET JSYS/UUO
700 ;
701 ; In exec mode it does nothing. In user mode it issues the appropriate
702 ; RESET UUO/JSYS that may be desirable at the start or end of a program.
703 ;#********************************************************************
704
705 000671' 336 00 0 00 030037 .RESET: SKIPN USER ; user mode?
706 000672' 263 17 0 00 000000 RTN ; no - exit
707 000673' 336 00 0 00 030516 SKIPN MONTYP ; TOPS20? (non-zero)
708 000674' 254 00 0 00 000700' JRST RST10 ; no - TOPS10
709 000675' 104 00 0 00 000147 RESET ; do a RESET
710 000676' 320 17 0 00 003576' ERCAL [RTN] ; error rtn
711 000677' 254 00 0 00 000702' JRST RSTX ; to exit code
712 000700' 047000 000000 RST10: 047000,,000000 ; RESET UUO, CALLI AC,0 ...
713 000701' 255 00 0 00 000000 JFCL ; error rtn
714 000702' 263 17 0 00 000000 RSTX: RTN ; exit
715
716
717 ;#********************************************************************
718 ;* .CLOSE - Subroutine to close opened files
719 ;
720 ; This does nothing in exec mode. In user mode under TOPS10 and
721 ; TOPS20 it takes the necessary steps to close the output file which
722 ; is necessary if you've been outputting to a disk file and wish to
723 ; leave the program ....
724 ;
725 ; Note *** Once you do a close from a Ctrl-C intercept the PNT File
726 ; gets closed correctly but if you continue, the SUBRTN PKG creates a
727 ; new PNT File and you lose the old one.
728 ;#********************************************************************
729
730 000703' 336 00 0 00 030037 .CLOSE: SKIPN USER ; skip if we're in user mode
731 000704' 263 17 0 00 000000 RTN ; exec mode
732 000705' 037 05 0 00 000002 DROPDV ; SUBRTN PKG UUO or it won't work ok
733 000706' 261 17 0 00 000001 PUT 1 ; save AC
734 000707' 336 00 0 00 030516 SKIPN MONTYP ; TOPS10?
735 000710' 254 00 0 00 000715' JRST CLS10 ; yes - go handle
736 000711' 201 01 0 00 400000 MOVEI 1,.FHSLF ; no - get fork handle
737 000712' 104 00 0 00 000034 CLZFF ; close all files JSYS ..
738 000713' 320 17 0 00 003576' ERCAL [RTN] ; error return
739 000714' 254 00 0 00 000717' JRST CLSX ; exit
740 000715' 070000 000000 CLS10: 070000,,000000 ; CLOSE D,0 UUO ... closes files
741 000716' 255 00 0 00 000000 JFCL
742 000717' 262 17 0 00 000001 CLSX: GET 1 ; restore AC
743 000720' 263 17 0 00 000000 RTN ; and exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 19
DFCIAU MAC 6-Aug-83 09:31 TOPS10/20 Related Routines SEQ 1004
744
745 ;#********************************************************************
746 ;* .EXIT - Subroutine to exit job in user mode
747 ;
748 ; In exec mode it does nothing. In user mode it issues the appropriate
749 ; EXIT UUO or HALTF JSYS getting you back to monitor level. This also
750 ; allows you to continue with a continue command.
751 ;
752 ; Call seq:
753 ; GO .EXIT ; the call
754 ; RTN1 ; rtn+1 always
755 ;#********************************************************************
756
757 000721' 336 00 0 00 030037 .EXIT: SKIPN USER ; user mode?
758 000722' 263 17 0 00 000000 RTN ; no - exec mode - exit
759
760 000723' 261 17 0 00 000001 PUT 1 ; save AC1
761 000724' 336 00 0 00 030516 SKIPN MONTYP ; TOPS20?
762 000725' 254 00 0 00 000732' JRST EXT10 ; no - TOPS10
763
764 000726' 201 01 0 00 400000 MOVEI 1,.FHSLF ; get fork handle
765 000727' 104 00 0 00 000170 HALTF ; halt... to monitor level
766 000730' 255 00 0 00 000000 JFCL ; here on a continue command
767 000731' 254 00 0 00 000734' JRST EXTX ; to exit code
768
769 000732' 047040 000012 EXT10: 047040,,000012 ; EXIT 1, UUO (CALLI 12 F=1)
770 000733' 255 00 0 00 000000 JFCL ; here on a continue command
771
772 000734' 262 17 0 00 000001 EXTX: GET 1 ; restore the AC
773 000735' 263 17 0 00 000000 RTN ; exit
774
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 20
DFCIAU MAC 6-Aug-83 09:31 File Handling Routines SEQ 1005
775 SUBTTL File Handling Routines
776
777 ;#*********************************************************************
778 ;* CHRIN - Routine to read an ASCII character from the selected file.
779 ;#*********************************************************************
780
781 000736' 037 06 0 00 000004 CHRIN: FREAD ; tell DIAMON to get a file character
782 000737' 263 17 0 00 000000 RTN ; error or eof detected during reading
783 000740' 322 00 0 00 000736' JUMPE CHRIN ; eat all null characters
784 000741' 350 00 0 17 000000 AOS (P) ; normal exit +2
785 000742' 263 17 0 00 000000 RTN
786
787
788 ;#*********************************************************************
789 ;* CHRINS - Routine to read an ASCII character from the selected file.
790 ;#*********************************************************************
791
792 000743' 261 17 0 00 000000 CHRINS: PUT 0 ; save AC0
793 000744' 037 06 0 00 000004 FREAD ; get a file character
794 000745' 254 00 0 00 000755' JRST CHRINX ; error or eof detected during reading
795 000746' 322 00 0 00 000744' JUMPE .-2 ; eat all null characters
796 000747' 350 00 0 17 777777 AOS -1(P) ; normal exit +2
797 000750' 202 00 0 17 000000 MOVEM (P) ; put character on stack
798 000751' 332 00 0 00 000000* SKIPE FINECH ; echo flag set?
799 000752' 037 12 0 00 000001 PNTCHF ; yes - echo the character
800 000753' 262 17 0 00 000000 GET 0 ; restore AC0
801 000754' 263 17 0 00 000000 RTN
802
803 000755' 037 01 0 00 003746' CHRINX: FMSGC <[End of > ; end of file
804 000756' 200 00 0 00 000000* MOVE TAKFIL ; print file name
805 000757' 037 01 0 00 000002 PNTSXF
806 000760' 037 01 0 00 000056 PNTCIF "."
807 000761' 200 00 0 00 000000# MOVE TAKFIL+1
808 000762' 037 01 0 00 000002 PNTSXF
809 000763' 037 01 0 00 003751' FMSGD <]>
810 000764' 402 00 0 00 000000* SETZM FINPUT ; clear 'file input' flag
811 000765' 262 17 0 00 000000 GET 0 ; restore AC0
812 000766' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 21
DFCIAU MAC 6-Aug-83 09:31 File Handling Routines SEQ 1006
813
814 ;#********************************************************************
815 ;* FGETW - Get microword entry from file
816 ;
817 ; Arguments: None (but file is already open and ready for use)
818 ;
819 ; Function: Read a file entry consisting of '[ADDR]=Microword Data'
820 ;
821 ; Returns: +1 - Error/EOF occurred
822 ; +2 - OK - Address is in CADDR
823 ; Microword is in CWORDL,CWORDR
824 ;#********************************************************************
825
826 000767' 261 17 0 00 000000 FGETW: RPUT (0,1,2) ; save AC's
827
828 000772' 402 00 0 00 000000* SETZM CADDR ; clear address
829 000773' 402 00 0 00 000000* SETZM CWORDL ; clear left half
830 000774' 402 00 0 00 000000* SETZM CWORDR ; clear right half
831 000775' 260 17 0 00 001034' GO FGETA ; get load address
832 000776' 254 00 0 00 001030' JRST FGETWE ; error/EOF occurred
833 000777' 202 01 0 00 000772* MOVEM 1,CADDR ; save address
834 001000' 260 17 0 00 000736' GO CHRIN ; search for the = sign
835 001001' 254 00 0 00 001030' JRST FGETWE ; error/EOF occurred
836 001002' 302 00 0 00 000075 CAIE "=" ; equal sign?
837 001003' 254 00 0 00 001000' JRST .-3 ; keep looking
838 001004' 260 17 0 00 001056' GO FGETD ; get a 4 digit number
839 001005' 254 00 0 00 001030' JRST FGETWE ; error/EOF occurred
840 001006' 137 01 0 00 003752' DPB 1,[POINT 12,CWORDL,17] ; save it
841 001007' 260 17 0 00 001056' GO FGETD ; get a 4 digit number
842 001010' 254 00 0 00 001030' JRST FGETWE ; error/EOF occurred
843 001011' 137 01 0 00 003753' DPB 1,[POINT 12,CWORDL,29] ; save it
844 001012' 260 17 0 00 001056' GO FGETD ; get a 4 digit number
845 001013' 254 00 0 00 001030' JRST FGETWE ; error/EOF occurred
846 001014' 246 01 0 00 777772 LSHC 1,-^D6 ; right shift 6 bits
847 001015' 137 01 0 00 003754' DPB 1,[POINT 6,CWORDL,35] ; save 4 of the bits
848 001016' 400 01 0 00 000000 SETZ 1, ; clear AC1
849 001017' 246 01 0 00 000006 LSHC 1,^D6 ; left shift 6 bits
850 001020' 137 01 0 00 003755' DPB 1,[POINT 6,CWORDR,11] ; save remaining 6 bits
851 001021' 260 17 0 00 001056' GO FGETD ; get a 4 digit number
852 001022' 254 00 0 00 001030' JRST FGETWE ; error/EOF occurred
853 001023' 137 01 0 00 003756' DPB 1,[POINT 12,CWORDR,23] ; save it
854 001024' 260 17 0 00 001056' GO FGETD ; get a 4 digit number
855 001025' 254 00 0 00 001030' JRST FGETWE ; error/EOF occurred
856 001026' 137 01 0 00 003757' DPB 1,[POINT 12,CWORDR,35] ; save it
857 001027' 350 00 0 17 777775 AOS -3(P) ; done - set up RTN+2
858 001030' 262 17 0 00 000002 FGETWE: RGET (2,1,0) ; restore AC's
859
860 001033' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 22
DFCIAU MAC 6-Aug-83 09:31 File Handling Routines SEQ 1007
861
862 ;#********************************************************************
863 ;* FGETA - Obtain microcode load address 'ADDR:' from file
864 ;
865 ; Returns: +1 - Error/EOF occurred
866 ; +2 - OK - AC1 contains octal address
867 ;#********************************************************************
868
869 001034' 261 17 0 00 000000 FGETA: PUT 0 ; save AC0
870 001035' 260 17 0 00 000736' FGETA0: GO CHRIN ; get a character
871 001036' 254 00 0 00 001046' JRST FGETAE ; exit - error or EOF occurred
872 001037' 306 00 0 00 000073 CAIN ";" ; comment character?
873 001040' 260 17 0 00 001050' GO FSKIPC ; yes - go skip it
874 001041' 302 00 0 00 000133 CAIE "[" ; found beginning of address?
875 001042' 254 00 0 00 001035' JRST FGETA0 ; no - keep looking
876 001043' 260 17 0 00 001056' GO FGETD ; get up to 4 digit # ended by CR or ]
877 001044' 254 00 0 00 001046' JRST FGETAE ; exit - error or EOF occurred
878 001045' 350 00 0 17 777777 AOS -1(P)
879 001046' 262 17 0 00 000000 FGETAE: GET 0 ; restore AC0
880 001047' 263 17 0 00 000000 RTN ; return
881
882 001050' 260 17 0 00 000736' FSKIPC: GO CHRIN ; get a character
883 001051' 254 00 0 00 001046' JRST FGETAE ; exit - error or EOF occurred
884 001052' 302 00 0 00 000015 CAIE 15 ; CRLF yet?
885 001053' 306 00 0 00 000012 CAIN 12
886 001054' 263 17 0 00 000000 RTN ; yes - return
887 001055' 254 00 0 00 001050' JRST FSKIPC ; no - keep looking for it
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 23
DFCIAU MAC 6-Aug-83 09:31 File Handling Routines SEQ 1008
888
889 ;#********************************************************************
890 ;* FGETD - Obtain microcode data entry from file (4 digits).
891 ;
892 ; Returns: +1 - Error/EOF occurred
893 ; +2 - OK - AC1 contains octal data
894 ;#********************************************************************
895
896 001056' 261 17 0 00 000000 FGETD: RPUT (0,2) ; save AC's
897
898 001060' 400 01 0 00 000000 SETZ 1, ; clear result
899 001061' 201 02 0 00 000004 MOVEI 2,4 ; up to 4 digits
900 001062' 260 17 0 00 000736' FGETD0: GO CHRIN ; get a digit
901 001063' 254 00 0 00 001100' JRST FGETDE ; error - exit
902 001064' 306 00 0 00 000015 CAIN 15 ; carriage return?
903 001065' 254 00 0 00 001077' JRST FGETD1 ; yes - done - exit
904 001066' 306 00 0 00 000135 CAIN "]" ; end of address field?
905 001067' 254 00 0 00 001077' JRST FGETD1 ; yes - done - exit
906 001070' 301 00 0 00 000060 CAIL 60 ; is character between
907 001071' 303 00 0 00 000067 CAILE 67 ; 0 and 7?
908 001072' 254 00 0 00 001100' JRST FGETDE ; no - error - exit
909 001073' 275 00 0 00 000060 SUBI 60 ; normalize to 0-7
910 001074' 242 01 0 00 000003 LSH 1,3 ; multiply result so far by 8
911 001075' 272 00 0 00 000001 ADDM 1 ; add current digit
912 001076' 367 02 0 00 001062' SOJG 2,FGETD0 ; loop till done
913 001077' 350 00 0 17 777776 FGETD1: AOS -2(P) ; ok - set up RTN+2
914 001100' 262 17 0 00 000002 FGETDE: RGET (2,0) ; restore AC's
915
916 001102' 263 17 0 00 000000 RTN ; return
917
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 24
DFCIAU MAC 6-Aug-83 09:31 Data Pattern Generator/Compare Routines SEQ 1009
918 SUBTTL Data Pattern Generator/Compare Routines
919
920 ;#********************************************************************
921 ;* BUFGEN - Generate the specified data pattern in the data buffer.
922 ;* BUFCOM - Compare the data buffer with expected data
923 ;
924 ; Arguments: AC2 - Length in words
925 ; AC3 - Address of buffer
926 ; PAT - Data pattern
927 ;
928 ; Returns (BUFCOM): AC1 - Number of words in error
929 ;#********************************************************************
930
931 001103' 402 00 0 00 006115' BUFCOM: SETZM WRDERR ; clear words in error count
932 001104' 476 00 0 00 006102' SETOM GENFLG# ; set to 'compare data'
933 001105' 476 00 0 00 006103' SETOM GENREP# ; set 'report errors' flag
934 001106' 335 00 0 00 000001 SKIPGE 1 ; report errors?
935 001107' 402 00 0 00 006103' SETZM GENREP ; no - clear 'report errors' flag
936 001110' 217 00 0 00 000001 MOVMS 1 ; get absolute value
937 001111' 334 00 0 00 000000 SKIPA
938 001112' 402 00 0 00 006102' BUFGEN: SETZM GENFLG ; set to 'generate data'
939 001113' 202 01 0 00 006104' MOVEM 1,GENTYP# ; save type of transfer
940 001114' 322 14 0 00 003576' JUMPE PAT,[RTN] ; exit immediately if pat is zero
941 001115' 261 17 0 00 000000 RPUT (0,1,2,3,7,PAT) ; save some AC's
942
943
944 ; Handle buffer length - cannot exceed 256 words
945
946 001123' 200 01 0 00 000002 MOVE 1,2 ; get number of full words in buffer
947 001124' 303 01 0 00 000400 CAILE 1,^D256 ; over 256 words?
948 001125' 201 01 0 00 000400 MOVEI 1,^D256 ; yes - limit to 256 words
949 001126' 200 02 0 00 000003 MOVE 2,3 ; get buffer address
950 001127' 202 02 0 00 006072' MOVEM 2,ABUFF# ; save buffer address
951 001130' 213 00 0 00 000001 MOVNS 1 ; generate AOBJN word to sequence
952 001131' 506 01 0 00 000002 HRLM 1,2 ; through the buffer
953
954 ; Now generate/compare the data (for a constant pattern)
955 ; ------------------------------------------------------
956
957 001132' 301 14 0 00 000116 CAIL PAT,VPATRN ; skip if a constant pattern
958 001133' 254 00 0 00 001143' JRST BUFG1 ; go generate variable pattern
959 001134' 200 07 0 14 001241' BUFG0: MOVE 7,PATBUF(PAT) ; get pattern
960 001135' 336 00 0 00 006102' SKIPN GENFLG ; compare data?
961 001136' 202 07 0 02 000000 MOVEM 7,(2) ; no - put into buffer
962 001137' 332 00 0 00 006102' SKIPE GENFLG ; compare data?
963 GO [CAME 7,(2) ; yes - compare it
964 GO DATMES ; error - go handle
965 001140' 260 17 0 00 003760' RTN]
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 25
DFCIAU MAC 6-Aug-83 09:31 Data Pattern Generator/Compare Routines SEQ 1010
966
967 ; Now do next word
968
969 001141' 253 02 0 00 001134' AOBJN 2,BUFG0 ; loop till done
970 001142' 254 00 0 00 001156' JRST BUFGX ; all done - exit
971
972 ; Now generate/compare the data (for a variable pattern)
973 ; ------------------------------------------------------
974
975 ; Generate first word of buffer
976
977 001143' 200 07 0 14 001241' BUFG1: MOVE 7,PATBUF(PAT) ; get pattern pointer word
978 001144' 552 07 0 00 006114' HRRZM 7,VARPAT# ; put adr of 2nd instruction in VARPAT
979 001145' 207 00 0 00 000007 MOVSS 7 ; swap address of pointer
980 001146' 256 00 0 07 000000 XCT (7) ; get first word of pattern
981 001147' 334 00 0 00 000000 SKIPA ; continue
982
983 ; Generate successive words of variable pattern
984
985 001150' 256 00 1 00 006114' BUFG2: XCT @VARPAT ; generate another word of pattern
986 001151' 336 00 0 00 006102' SKIPN GENFLG ; compare data?
987 001152' 202 07 0 02 000000 MOVEM 7,(2) ; no - put into buffer
988 001153' 332 00 0 00 006102' SKIPE GENFLG ; compare data?
989 GO [CAME 7,(2) ; yes - compare it
990 GO DATMES ; error - go handle
991 001154' 260 17 0 00 003760' RTN]
992
993 ; Now do next word
994
995 001155' 253 02 0 00 001150' AOBJN 2,BUFG2 ; loop till done
996
997 ; All done - exit
998
999 001156' 336 00 0 00 006102' BUFGX: SKIPN GENFLG ; compare data?
1000 001157' 254 00 0 00 001172' JRST BUFGXZ ; no - exit
1001 001160' 337 00 0 00 006115' SKIPG WRDERR# ; any compare errors?
1002 001161' 254 00 0 00 001170' JRST BUFGXY ; no - return
1003 001162' 336 00 0 00 006103' SKIPN GENREP ; report errors?
1004 001163' 254 00 0 00 001170' JRST BUFGXY ; no - return
1005 001164' 037 00 0 00 003763' TMSGC <Words in error = >
1006 001165' 200 00 0 00 006115' MOVE WRDERR
1007 001166' 037 15 0 00 000000 PNTDEC
1008 001167' 037 00 0 00 003525' TMSG <.>
1009 001170' 200 01 0 00 006115' BUFGXY: MOVE 1,WRDERR ; get number of errors
1010 001171' 202 01 0 17 777774 MOVEM 1,-4(P) ; save it
1011 001172' 262 17 0 00 000014 BUFGXZ: RGET (PAT,7,3,2,1,0) ; restore AC's
1012
1013 001200' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 26
DFCIAU MAC 6-Aug-83 09:31 Data Pattern Generator/Compare Routines SEQ 1011
1014
1015 ;#********************************************************************
1016 ;* DATMES - A data comparison error has been found. Report the error,
1017 ;* printing a maximum of three lines of errors.
1018 ;#********************************************************************
1019
1020 001201' 261 17 0 00 000000 DATMES: RPUT (0,1,2,3) ; save AC's
1021
1022 001205' 336 00 0 00 006103' SKIPN GENREP ; report errors?
1023 001206' 254 00 0 00 001207' JRST DATM0 ; no - skip this
1024 001207' 350 03 0 00 006115' DATM0: AOS 3,WRDERR ; increment error count
1025
1026 ; Now see if should be printed
1027
1028 001210' 336 00 0 00 006103' SKIPN GENREP ; report errors?
1029 001211' 254 00 0 00 001234' JRST DATMX ; no - exit
1030 001212' 307 03 0 00 000003 CAIG 3,3 ; already print 3 of them?
1031 001213' 254 00 0 00 001215' JRST DATM1 ; no - go print
1032 001214' 254 00 0 00 001234' JRST DATMX ; yes - exit
1033
1034 ; Now print
1035
1036 001215' 302 03 0 00 000001 DATM1: CAIE 3,1 ; first data error?
1037 001216' 254 00 0 00 001221' JRST .+3 ; no - don't print headers ...
1038 001217' 037 00 0 00 003767' TMSGC <Data Compare Error:>
1039 001220' 037 00 0 00 003774' TMSGC <Word ---Correct--- ---Actual---->
1040 001221' 550 00 0 02 000001 HRRZ 1(2) ; get word number, numbered
1041 001222' 274 00 0 00 006072' SUB ABUFF ; from 1 ...
1042 001223' 202 00 0 00 006075' MOVEM CWORDN# ; save current word number
1043 001224' 037 00 0 00 030242 PCRL
1044 001225' 006 04 0 00 000000 PDEC 4,0 ; print it
1045 001226' 037 00 0 00 003535' TMSG < > ; print spaces
1046 001227' 200 00 0 00 000007 MOVE 7 ; get correct data
1047 001230' 037 13 0 00 000000 PNTHW ; print it
1048 001231' 037 00 0 00 003534' TMSG < > ; print some more spaces
1049 001232' 200 00 0 02 000000 MOVE (2) ; get actual data
1050 001233' 037 13 0 00 000000 PNTHW ; print it
1051
1052 ; Exit
1053
1054 001234' 262 17 0 00 000003 DATMX: RGET (3,2,1,0) ; restore AC's
1055
1056 001240' 263 17 0 00 000000 RTN ; return
1057
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 27
DFCIAU MAC 6-Aug-83 09:31 Data Patterns SEQ 1012
1058 SUBTTL Data Patterns
1059
1060 ;#********************************************************************
1061 ;* Data Patterns
1062 ;
1063 ; Here are the locations called by the BUFGEN and BUFCOM routines
1064 ; indexed by the pattern number.
1065 ;#********************************************************************
1066
1067 001241' 000000 000000 PATBUF: 0 ; unused
1068 001242' 000000 000000 0 ; 1 - zeros
1069 001243' 777777 777777 -1 ; 2 - ones
1070 001244' 525252 525252 525252525252 ; 3 - alternate bit in 36-bit word
1071 001245' 252525 252525 252525252525 ; 4 - alternate bit in 36-bit word
1072 001246' 000000 000001 1 ; 5 - floating 1's
1073 001247' 000000 000002 2 ; 6
1074 001250' 000000 000004 4 ; 7
1075 001251' 000000 000010 10 ; 10
1076 001252' 000000 000020 20 ; 11
1077 001253' 000000 000040 40 ; 12
1078 001254' 000000 000100 100 ; 13
1079 001255' 000000 000200 200 ; 14
1080 001256' 000000 000400 400 ; 15
1081 001257' 000000 001000 1000 ; 16
1082 001260' 000000 002000 2000 ; 17
1083 001261' 000000 004000 4000 ; 20
1084 001262' 000000 010000 10000 ; 21
1085 001263' 000000 020000 20000 ; 22
1086 001264' 000000 040000 40000 ; 23
1087 001265' 000000 100000 100000 ; 24
1088 001266' 000000 200000 200000 ; 25
1089 001267' 000000 400000 400000 ; 26
1090 001270' 000001 000000 1,,0 ; 27
1091 001271' 000002 000000 2,,0 ; 30
1092 001272' 000004 000000 4,,0 ; 31
1093 001273' 000010 000000 10,,0 ; 32
1094 001274' 000020 000000 20,,0 ; 33
1095 001275' 000040 000000 40,,0 ; 34
1096 001276' 000100 000000 100,,0 ; 35
1097 001277' 000200 000000 200,,0 ; 36
1098 001300' 000400 000000 400,,0 ; 37
1099 001301' 001000 000000 1000,,0 ; 40
1100 001302' 002000 000000 2000,,0 ; 41
1101 001303' 004000 000000 4000,,0 ; 42
1102 001304' 010000 000000 10000,,0 ; 43
1103 001305' 020000 000000 20000,,0 ; 44
1104 001306' 040000 000000 40000,,0 ; 45
1105 001307' 100000 000000 100000,,0 ; 46
1106 001310' 200000 000000 200000,,0 ; 47
1107 001311' 400000 000000 400000,,0 ; 50
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 28
DFCIAU MAC 6-Aug-83 09:31 Data Patterns SEQ 1013
1108 001312' 777777 777776 777777,,777776 ; 51 - floating 0's
1109 001313' 777777 777775 777777,,777775 ; 52
1110 001314' 777777 777773 777777,,777773 ; 53
1111 001315' 777777 777767 777777,,777767 ; 54
1112 001316' 777777 777757 777777,,777757 ; 55
1113 001317' 777777 777737 777777,,777737 ; 56
1114 001320' 777777 777677 777777,,777677 ; 57
1115 001321' 777777 777577 777777,,777577 ; 60
1116 001322' 777777 777377 777777,,777377 ; 61
1117 001323' 777777 776777 777777,,776777 ; 62
1118 001324' 777777 775777 777777,,775777 ; 63
1119 001325' 777777 773777 777777,,773777 ; 64
1120 001326' 777777 767777 777777,,767777 ; 65
1121 001327' 777777 757777 777777,,757777 ; 66
1122 001330' 777777 737777 777777,,737777 ; 67
1123 001331' 777777 677777 777777,,677777 ; 70
1124 001332' 777777 577777 777777,,577777 ; 71
1125 001333' 777777 377777 777777,,377777 ; 72
1126 001334' 777776 777777 777776,,777777 ; 73
1127 001335' 777775 777777 777775,,777777 ; 74
1128 001336' 777773 777777 777773,,777777 ; 75
1129 001337' 777767 777777 777767,,777777 ; 76
1130 001340' 777757 777777 777757,,777777 ; 77
1131 001341' 777737 777777 777737,,777777 ; 100
1132 001342' 777677 777777 777677,,777777 ; 101
1133 001343' 777577 777777 777577,,777777 ; 102
1134 001344' 777377 777777 777377,,777777 ; 103
1135 001345' 776777 777777 776777,,777777 ; 104
1136 001346' 775777 777777 775777,,777777 ; 105
1137 001347' 773777 777777 773777,,777777 ; 106
1138 001350' 767777 777777 767777,,777777 ; 107
1139 001351' 757777 777777 757777,,777777 ; 110
1140 001352' 737777 777777 737777,,777777 ; 111
1141 001353' 677777 777777 677777,,777777 ; 112
1142 001354' 577777 777777 577777,,777777 ; 113
1143 001355' 377777 777777 377777,,777777 ; 114
1144
1145 000115 FILLFP==.-PATBUF ; read fill pattern
1146
1147 001356' 400000 000001 400000,,000001 ; 115
1148
1149 ; Pattern codes from here require execution of special routines
1150
1151 000116 VPATRN==.-PATBUF
1152
1153 ; Each location contains addresses, the first address should be used
1154 ; to generate the first word in a buffer, the second should be used
1155 ; to generate each remaining word. An execute is performed on the
1156 ; instruction in the specified address. The data is returned in AC7.
1157
1158 001357' 004004' 004005' [GO PATRAN],,[GO PATRA1] ; 116 - random numbers
1159 001360' 004006' 004010' [GO PATADR],,[ADD 7,[1,,1]] ; 117 - memory address pattern
1160 001361' 004011' 004012' [MOVEI 7,1],,[ROT 7,1] ; 120 - floating ones
1161 001362' 004013' 004012' [SETCMI 7,1],,[ROT 7,1] ; 121 - floating zeros
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 29
DFCIAU MAC 6-Aug-83 09:31 Data Patterns SEQ 1014
1162
1163 004014' PATCN2==[BYTE (8)1,2,3,4]
1164 004015' PATCN3==[BYTE (7)1,2,3,4,5]
1165 004016' PATCN4==[BYTE (6)1,2,3,4,5,6]
1166
1167 001363' 004017' 004020' [MOVE 7,PATCN2],,[GO PATCN8] ; 122 - count pattern in 8-bit bytes
1168 001364' 004021' 004022' [MOVE 7,PATCN3],,[GO PATCN7] ; 123 - count pattern in 7-bit bytes
1169 001365' 004023' 004024' [MOVE 7,PATCN4],,[GO PATCN6] ; 124 - count pattern in 6-bit bytes
1170 001366' 004025' 004026' [MOVE 7,PATBUF+3],,[SETCA 7,] ; 125 - alternating 36-bit pattern
1171 001367' 004027' 003723' [MOVE 7,TPAT],,[JFCL] ; 126 - operator selected pattern
1172
1173 000127 FILLVP==.-PATBUF ; read fill pattern
1174
1175 001370' 004031' 003723' [MOVE 7,[400000,,1]],,[JFCL] ; 127 - read buffer fill pattern
1176
1177 000127 MAXPAT==.-PATBUF-1 ; maximum pattern number allowed
1178
1179 ; Random number generator
1180
1181 001371' 200 07 0 00 001372' PATRAN: MOVE 7,.+1 ; get base number
1182 001372' 202 07 0 00 006107' MOVEM 7,OLDRAN# ; save it
1183 001373' 263 17 0 00 000000 RTN
1184
1185 001374' 270 07 0 00 030022 PATRA1: ADD 7,RANDBS ; modify number in AC7
1186 001375' 241 07 0 00 777774 ROT 7,-4 ; to create a new number
1187 001376' 447 07 0 00 006107' EQVB 7,OLDRAN ; put result in AC7 and OLDRAN
1188 001377' 263 17 0 00 000000 RTN
1189
1190 ; Put address of data pattern in AC7
1191
1192 001400' 550 07 0 00 000002 PATADR: HRRZ 7,2 ; get buffer address
1193 001401' 504 07 0 00 000007 HRL 7,7 ; put in both halves
1194 001402' 263 17 0 00 000000 RTN
1195
1196 ; Count the number in AC7 in 8-bit bytes
1197
1198 001403' 261 17 0 00 000005 PATCN8: RPUT (5,6) ; save AC's
1199
1200 001405' 201 05 0 00 000004 MOVEI 5,4 ; set up to loop 4 times
1201 001406' 135 06 0 00 004032' LDB 6,[POINT 8,7,31] ; get last byte into AC6
1202 001407' 350 00 0 00 000006 AOS 6 ; increment byte number
1203 001410' 405 06 0 00 000377 ANDI 6,377 ; clear all but one byte
1204 001411' 242 07 0 00 000010 LSH 7,8 ; shift word
1205 001412' 436 06 0 00 000007 ORM 6,7 ; merge with new byte
1206 001413' 367 05 0 00 001407' SOJG 5,.-4 ; loop on 5 bytes
1207 001414' 242 07 0 00 000004 LSH 7,4 ; shift over and clear bit 32-35
1208 001415' 262 17 0 00 000006 RGET (6,5) ; restore AC's
1209
1210 001417' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 30
DFCIAU MAC 6-Aug-83 09:31 Data Patterns SEQ 1015
1211
1212 ; Count the number in AC7 in 7-bit bytes
1213
1214 001420' 261 17 0 00 000005 PATCN7: RPUT (5,6) ; save AC's
1215
1216 001422' 201 05 0 00 000005 MOVEI 5,5 ; set up to loop 5 times
1217 001423' 135 06 0 00 004033' LDB 6,[POINT 7,7,34] ; get last byte into AC6
1218 001424' 350 00 0 00 000006 AOS 6 ; increment byte number
1219 001425' 405 06 0 00 000177 ANDI 6,177 ; clear all but one byte
1220 001426' 242 07 0 00 000007 LSH 7,7 ; shift word
1221 001427' 436 06 0 00 000007 ORM 6,7 ; merge with new byte
1222 001430' 367 05 0 00 001424' SOJG 5,.-4 ; loop on 5 bytes
1223 001431' 242 07 0 00 000001 LSH 7,1 ; shift over and clear bit 35
1224 001432' 262 17 0 00 000006 RGET (6,5) ; restore AC's
1225
1226 001434' 263 17 0 00 000000 RTN ; return
1227
1228 ; Count the number in AC7 in 6-bit bytes
1229
1230 001435' 261 17 0 00 000005 PATCN6: RPUT (5,6) ; save AC's
1231
1232 001437' 201 05 0 00 000006 MOVEI 5,6 ; set up to loop 6 times
1233 001440' 550 06 0 00 000007 HRRZ 6,7 ; get word into AC6
1234 001441' 350 00 0 00 000006 AOS 6 ; increment byte number
1235 001442' 405 06 0 00 000077 ANDI 6,77 ; clear all but one byte
1236 001443' 242 07 0 00 000006 LSH 7,6 ; shift word
1237 001444' 436 06 0 00 000007 ORM 6,7 ; merge with new byte
1238 001445' 367 05 0 00 001441' SOJG 5,.-4 ; loop on four bytes
1239 001446' 262 17 0 00 000006 RGET (6,5) ; restore AC's
1240
1241 001450' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 31
DFCIAU MAC 6-Aug-83 09:31 Data Patterns SEQ 1016
1242
1243 ;#********************************************************************
1244 ;* PATPNT - Translate pattern number to description
1245 ;#********************************************************************
1246
1247 001451' 037 00 0 00 004034' PATPNT: TMSG <0 - Illegal> ; unused
1248 001452' 037 00 0 00 004037' TMSG <1 - zeros>
1249 001453' 037 00 0 00 004041' TMSG <2 - ones>
1250 001454' 037 00 0 00 004043' TMSG <3 - alternating 5252..>
1251 001455' 037 00 0 00 004050' TMSG <4 - alternating 2525..>
1252 001456' 037 00 0 00 004055' TMSG <5 - 0,,1>
1253 001457' 037 00 0 00 004057' TMSG <6 - 0,,2>
1254 001460' 037 00 0 00 004061' TMSG <7 - 0,,4>
1255 001461' 037 00 0 00 004063' TMSG <10 - 0,,10>
1256 001462' 037 00 0 00 004066' TMSG <11 - 0,,20>
1257 001463' 037 00 0 00 004071' TMSG <12 - 0,,40>
1258 001464' 037 00 0 00 004074' TMSG <13 - 0,,100>
1259 001465' 037 00 0 00 004077' TMSG <14 - 0,,200>
1260 001466' 037 00 0 00 004102' TMSG <15 - 0,,400>
1261 001467' 037 00 0 00 004105' TMSG <16 - 0,,1000>
1262 001470' 037 00 0 00 004110' TMSG <17 - 0,,2000>
1263 001471' 037 00 0 00 004113' TMSG <20 - 0,,4000>
1264 001472' 037 00 0 00 004116' TMSG <21 - 0,,10000>
1265 001473' 037 00 0 00 004121' TMSG <22 - 0,,20000>
1266 001474' 037 00 0 00 004124' TMSG <23 - 0,,40000>
1267 001475' 037 00 0 00 004127' TMSG <24 - 0,,100000>
1268 001476' 037 00 0 00 004132' TMSG <25 - 0,,200000>
1269 001477' 037 00 0 00 004135' TMSG <26 - 0,,400000>
1270 001500' 037 00 0 00 004140' TMSG <27 - 1,,0>
1271 001501' 037 00 0 00 004142' TMSG <30 - 2,,0>
1272 001502' 037 00 0 00 004144' TMSG <31 - 4,,0>
1273 001503' 037 00 0 00 004146' TMSG <32 - 10,,0>
1274 001504' 037 00 0 00 004151' TMSG <33 - 20,,0>
1275 001505' 037 00 0 00 004154' TMSG <34 - 40,,0>
1276 001506' 037 00 0 00 004157' TMSG <35 - 100,,0>
1277 001507' 037 00 0 00 004162' TMSG <36 - 200,,0>
1278 001510' 037 00 0 00 004165' TMSG <37 - 400,,0>
1279 001511' 037 00 0 00 004170' TMSG <40 - 1000,,0>
1280 001512' 037 00 0 00 004173' TMSG <41 - 2000,,0>
1281 001513' 037 00 0 00 004176' TMSG <42 - 4000,,0>
1282 001514' 037 00 0 00 004201' TMSG <43 - 10000,,0>
1283 001515' 037 00 0 00 004204' TMSG <44 - 20000,,0>
1284 001516' 037 00 0 00 004207' TMSG <45 - 40000,,0>
1285 001517' 037 00 0 00 004212' TMSG <46 - 100000,,0>
1286 001520' 037 00 0 00 004215' TMSG <47 - 200000,,0>
1287 001521' 037 00 0 00 004220' TMSG <50 - 400000,,0>
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 32
DFCIAU MAC 6-Aug-83 09:31 Data Patterns SEQ 1017
1288 001522' 037 00 0 00 004223' TMSG <51 - 777777,,777776>
1289 001523' 037 00 0 00 004227' TMSG <52 - 777777,,777775>
1290 001524' 037 00 0 00 004233' TMSG <53 - 777777,,777773>
1291 001525' 037 00 0 00 004237' TMSG <54 - 777777,,777767>
1292 001526' 037 00 0 00 004243' TMSG <55 - 777777,,777757>
1293 001527' 037 00 0 00 004247' TMSG <56 - 777777,,777737>
1294 001530' 037 00 0 00 004253' TMSG <57 - 777777,,777677>
1295 001531' 037 00 0 00 004257' TMSG <60 - 777777,,777577>
1296 001532' 037 00 0 00 004263' TMSG <61 - 777777,,777377>
1297 001533' 037 00 0 00 004267' TMSG <62 - 777777,,776777>
1298 001534' 037 00 0 00 004273' TMSG <63 - 777777,,775777>
1299 001535' 037 00 0 00 004277' TMSG <64 - 777777,,773777>
1300 001536' 037 00 0 00 004303' TMSG <65 - 777777,,767777>
1301 001537' 037 00 0 00 004307' TMSG <66 - 777777,,757777>
1302 001540' 037 00 0 00 004313' TMSG <67 - 777777,,737777>
1303 001541' 037 00 0 00 004317' TMSG <70 - 777777,,677777>
1304 001542' 037 00 0 00 004323' TMSG <71 - 777777,,577777>
1305 001543' 037 00 0 00 004327' TMSG <72 - 777777,,377777>
1306 001544' 037 00 0 00 004333' TMSG <73 - 777776,,777777>
1307 001545' 037 00 0 00 004337' TMSG <74 - 777775,,777777>
1308 001546' 037 00 0 00 004343' TMSG <75 - 777773,,777777>
1309 001547' 037 00 0 00 004347' TMSG <76 - 777767,,777777>
1310 001550' 037 00 0 00 004353' TMSG <77 - 777757,,777777>
1311 001551' 037 00 0 00 004357' TMSG <100 - 777737,,777777>
1312 001552' 037 00 0 00 004364' TMSG <101 - 777677,,777777>
1313 001553' 037 00 0 00 004371' TMSG <102 - 777577,,777777>
1314 001554' 037 00 0 00 004376' TMSG <103 - 777377,,777777>
1315 001555' 037 00 0 00 004403' TMSG <104 - 776777,,777777>
1316 001556' 037 00 0 00 004410' TMSG <105 - 775777,,777777>
1317 001557' 037 00 0 00 004415' TMSG <106 - 773777,,777777>
1318 001560' 037 00 0 00 004422' TMSG <107 - 767777,,777777>
1319 001561' 037 00 0 00 004427' TMSG <110 - 757777,,777777>
1320 001562' 037 00 0 00 004434' TMSG <111 - 737777,,777777>
1321 001563' 037 00 0 00 004441' TMSG <112 - 677777,,777777>
1322 001564' 037 00 0 00 004446' TMSG <113 - 577777,,777777>
1323 001565' 037 00 0 00 004453' TMSG <114 - 377777,,777777>
1324 001566' 037 00 0 00 004460' TMSG <115 - 400000,,1>
1325 001567' 037 00 0 00 004464' TMSG <116 - random numbers>
1326 001570' 037 00 0 00 004471' TMSG <117 - memory address pattern>
1327 001571' 037 00 0 00 004477' TMSG <120 - floating ones>
1328 001572' 037 00 0 00 004503' TMSG <121 - floating zeros>
1329 001573' 037 00 0 00 004510' TMSG <122 - count pattern in 8-bit bytes>
1330 001574' 037 00 0 00 004517' TMSG <123 - count pattern in 7-bit bytes>
1331 001575' 037 00 0 00 004526' TMSG <124 - count pattern in 6-bit bytes>
1332 001576' 037 00 0 00 004535' TMSG <125 - alternating 36-bit pattern>
1333 001577' 037 00 0 00 004544' TMSG <126 - opr select pattern>
1334 001600' 037 00 0 00 004551' TMSG <127 - 400000,,1>
1335
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 33
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1018
1336 SUBTTL Switch Handling Routines
1337
1338 ;#********************************************************************
1339 ;* .SWCHP - Print switch settings in English
1340 ;#********************************************************************
1341
1342 001601' 261 17 0 00 000000 .SWCHP: RPUT (0,1,2,3,4) ; save AC's
1343
1344 001606' 037 01 0 00 004555' FMSGC <Switches: >
1345 001607' 403 02 0 00 000004 SETZB 2,4 ; init print, switch count AC's
1346 001610' 400 03 0 00 000000 SETZ 3, ; set up AC3 to point to
1347 001611' 661 03 0 00 400000 TLO 3,(1B0) ; the leftmost switch
1348 001612' 260 17 0 00 001640' GO SWITT ; get program switches
1349 001613' 037 13 0 00 000001 PNTHWF ; print in octal first
1350 001614' 037 01 0 00 003534' FMSG < >
1351 001615' 260 17 0 00 001640' GO SWITT ; get program switches
1352
1353 001616' 616 00 0 00 000003 .SWCH0: TDNN 3 ; this switch set?
1354 001617' 254 00 0 00 001626' JRST .SWCH1 ; no - continue
1355 001620' 271 04 0 00 000007 ADDI 4,7 ; 6 more characters printed
1356 001621' 303 04 0 00 000052 CAILE 4,^D42 ; print 42 characters yet?
1357 001622' 037 01 0 00 004560' FMSGC < > ; yes - continue on next line
1358 001623' 303 04 0 00 000052 CAILE 4,^D42 ; print 42 characters yet?
1359 001624' 201 04 0 00 000007 MOVEI 4,7 ; yes - reinit print counter
1360 XCT [FMSG <ABORT > ; 0
1361 FMSG <RSTART > ; 1
1362 FMSG <TOTALS > ; 2
1363 FMSG <NOPNT > ; 3
1364 FMSG <PNTLPT > ; 4
1365 FMSG <DING > ; 5
1366 FMSG <LOOPER > ; 6
1367 FMSG <ERSTOP > ; 7
1368 FMSG <PALERS > ; 8
1369 FMSG <RELIAB > ; 9
1370 FMSG <TXTINH > ; 10
1371 FMSG <PAGINH > ; 11
1372 FMSG <MODDVC > ; 12
1373 FMSG <CASINH > ; 13
1374 FMSG <OPRSEL > ; 14
1375 FMSG <CHAIN > ; 15
1376 FMSG <KA10 > ; 16
1377 JFCL
1378 FMSG <TRACE > ; 18
1379 FMSG <INHFLT > ; 19
1380 FMSG <INHMSG > ; 20
1381 FMSG <LOOPGM > ; 21
1382 FMSG <LOOPTS > ; 22
1383 FMSG <RUNALL > ; 23
1384 FMSG <DSPEAR > ; 24
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 34
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1019
1385 1386 FMSG <UDEBUG > ; 25
1387 FMSG <MDEBUG > ; 26
1388 FMSG <SDEBUG > ; 27
1389 FMSG <LDEBUG > ; 28
1390 FMSG <DDEBUG > ; 29
1391 FMSG <EDEBUG > ; 30
1392 JFCL ; 31
1393 JFCL ; 32
1394 JFCL ; 33
1395 JFCL ; 34
1396 001625' 256 00 0 02 004656' JFCL](2) ; 35
1397 001626' 242 03 0 00 777777 .SWCH1: LSH 3,-1 ; right shift the switch pointer
1398 001627' 350 00 0 00 000002 AOS 2 ; increment text pointer
1399 001630' 326 03 0 00 001616' JUMPN 3,.SWCH0 ; done? no - continue
1400 001631' 037 01 0 00 030242 PCRLF
1401 001632' 262 17 0 00 000004 RGET (4,3,2,1,0) ; restore AC's
1402
1403 001637' 263 17 0 00 000000 RTN ; return
1404
1405
1406 ;#********************************************************************
1407 ;* SWITT - Get value of switches
1408 ;#********************************************************************
1409
1410 001640' 200 00 0 00 030046 SWITT: MOVE CONSW ; get switches
1411 001641' 336 00 0 00 030037 SKIPN USER ; user mode?
1412 001642' 037 10 0 00 000002 SWITCH ; no - get switches from KLDCP
1413 001643' 434 00 0 00 001645' IOR SWRGT ; insert addl right hand switches
1414 001644' 263 17 0 00 000000 RTN ; return
1415
1416 001645' 000000 000000 SWRGT: 0 ; right hand switches
1417
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 35
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1020
1418
1419 ;#********************************************************************
1420 ;* .ISWT - Complete switch handling
1421 ;
1422 ; This routine will print out switches if desired, and then enter left
1423 ; hand switches (if user mode) and then enter right hand switches.
1424 ;
1425 ;#********************************************************************
1426
1427 ; Print program switches if desired
1428
1429 001646' 261 17 0 00 000000 .ISWT: RPUT (0,1) ; save AC's
1430
1431 001650' 260 17 0 00 001706' GO .SWPNT ; print switches if desired
1432
1433 ; Now look at switches and determine if we should enter them
1434
1435 001651' 260 17 0 00 001640' .ISWT2: GO SWITT ; get switches
1436 001652' 202 00 0 00 006110' MOVEM SAVSWW# ; save switches
1437 001653' 202 00 0 00 006073' MOVEM CONSWW# ; save in work location
1438 001654' 037 01 0 00 004722' FMSGC <Switches = >
1439 001655' 037 13 0 00 000001 PNTHWF
1440 001656' 037 01 0 00 030242 PCRLF
1441 001657' 476 00 0 00 006113' SETOM SWPSWW# ; set switches printed flag
1442 001660' 336 00 0 00 030037 SKIPN USER ; user mode?
1443 001661' 254 00 0 00 001663' JRST .ISWT7 ; no - don't ask for left hand switches
1444
1445 ; Now input the switches
1446
1447 001662' 260 17 0 00 001717' .ISWT6: GO .SLEFT ; get left hand switches
1448
1449 ; Now get right hand switches
1450
1451 001663' 332 00 0 00 030037 .ISWT7: SKIPE USER ; user mode?
1452 001664' 254 00 0 00 001667' JRST .ISWTB ; yes - go ask for them
1453
1454 ; In exec mode get switches which may have been entered already
1455
1456 001665' 260 17 0 00 001640' .ISWT8: GO SWITT ; get switches
1457 001666' 202 00 0 00 006073' MOVEM CONSWW ; save switches
1458
1459 ; Now input the switches
1460
1461 001667' 260 17 0 00 002020' .ISWTB: GO .SRIGT ; go get right hand switches
1462
1463 ; Now ensure right hand switches are saved and print out new switches
1464 ; if they changed.
1465
1466 001670' 200 00 0 00 006073' .ISWTX: MOVE CONSWW ; get switches
1467 001671' 552 00 0 00 001645' HRRZM SWRGT ; make sure right half is saved away
1468 001672' 202 00 0 00 030046 MOVEM CONSW ; save in real switches location also
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 36
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1021
1469 001673' 260 17 0 00 001640' GO SWITT ; get switches
1470 001674' 312 00 0 00 006110' CAME SAVSWW ; same as original switches?
1471 001675' 254 00 0 00 001700' JRST .ISWTY ; no - go print them out
1472 001676' 332 00 0 00 006113' SKIPE SWPSWW# ; switches already printed?
1473 001677' 254 00 0 00 001703' JRST .ISWTZ ; yes - don't print them
1474 001700' 037 01 0 00 004725' .ISWTY: FMSGC <SWITCHES = >
1475 001701' 037 13 0 00 000001 PNTHWF
1476 001702' 037 01 0 00 030242 PCRLF
1477 001703' 262 17 0 00 000001 .ISWTZ: RGET (1,0) ; done with switch handling
1478
1479 001705' 263 17 0 00 000000 RTN ; return
1480
1481 ; Print switches available
1482
1483 001706' 037 01 0 00 000026 .SWPNT: PFORCE ; handle Control-O
1484 001707' 200 00 0 00 004740' MOVE [FMSGC <Print the selectable pgm switches?>]
1485 001710' 260 17 0 00 000061' GO TTYYES ; go get response
1486 001711' 263 17 0 00 000000 RTN ; no - return
1487 001712' 037 00 1 00 001714' PNTMSG @.SWTXT ; yes - print it
1488 001713' 263 17 0 00 000000 RTN ; return
1489
1490 001714' .SWTXT: [ASCII /
1491 ----Left Side Switches-------- ----Right Side Switches------
1492
1493 SW KL10 11 Function SW Value Function
1494 -- ---- ---- -------- -- ----- --------
1495 0 400000 100000 Abort 18 400000 Program trace
1496 1 200000 040000 Restart 19 200000 Inhibit fault isolation
1497 2 100000 020000 Totals 20 100000 Inhibit error messages
1498 001714' 000000 004741' 3 040000 010000 No print 21 040000 Loop on program/]
1499 [ASCII /
1500 4 020000 004000 Print on LPT 22 020000 Loop on test
1501 5 010000 002000 Ding bell on err 23 010000 Run all test segments
1502 6 004000 001000 Loop on error 24 004000 Disable SPEAR reporting
1503 7 002000 000400 Halt on error 25 002000 User mode debug
1504 8 001000 000200 Print all errors 26 001000 Error message debug
1505 001715' 000000 005074' 9 000400 000100 Reliability mode 27 000400 Test debug /]
1506 [ASCIZ /
1507 10 000200 000040 Text inhibit 28 000200 Load microcode debug
1508 11 000100 000020 Inhibit paging
1509 12 000040 000010 Mod device codes
1510 13 000020 000004 Inhibit cache
1511 14 000010 000002 Operator select
1512 15 000004 000001 Chain.. for DIAMON
1513 16 000002 KA10 50 Hertz power
1514 001716' 000000 005217' /]
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 37
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1022
1515
1516 ;#********************************************************************
1517 ;* .SLEFT - Input left hand switches
1518 ;#********************************************************************
1519
1520 001717' 261 17 0 00 000000 .SLEFT: RPUT (0,1,2,3,4,5,6) ; save AC's
1521
1522
1523 001726' 554 00 0 00 006073' .SLF1: HLRZ CONSWW ; print out left hand switches as
1524 001727' 037 01 0 00 030242 PCRLF ; they currently are
1525 001730' 037 17 0 00 000003 PNTOCF
1526 001731' 037 01 0 00 005315' FMSG < LH Switches <# or ?> - >
1527 001732' 260 17 0 00 002131' GO .SWIN ; go input switches
1528 001733' 254 00 0 00 001737' JRST .SLF2 ; typed a ?
1529 001734' 254 00 0 00 001726' JRST .SLF1 ; error - re-ask question
1530 001735' 506 01 0 00 006073' HRLM 1,CONSWW ; save left hand switches
1531 001736' 254 00 0 00 002010' JRST .SLFX ; exit
1532
1533 001737' 037 01 0 00 030242 .SLF2: PCRLF
1534 001740' 037 01 0 00 005323' PNTMSF [ASCIZ /Type Y,N,^,CR,^Z/]
1535 001741' 037 01 0 00 030243 PCRL2F
1536 001742' 201 05 0 00 000001 MOVEI 5,1 ; init pointer to switch to ask
1537 001743' 275 05 0 00 000002 .SLF3: SUBI 5,2 ; back up
1538 001744' 350 00 0 00 000005 .SLF4: AOS 5 ; forward
1539 001745' 335 00 0 00 000005 SKIPGE 5 ; backed up too much?
1540 001746' 400 05 0 00 000000 SETZ 5, ; yes - init pointer to first switch
1541 001747' 303 05 0 00 000015 CAILE 5,^D13 ; reach end yet?
1542 001750' 254 00 0 00 002010' JRST .SLFX ; yes - exit
1543
1544 001751' 200 04 0 05 002172' .SLF5: MOVE 4,.LSWTN(5) ; get proper bit in AC4
1545 001752' 200 00 0 00 006073' MOVE CONSWW ; get switches
1546 001753' 616 00 0 00 000004 TDNN 4
1547 001754' 037 01 0 00 005327' FMSG <N >
1548 001755' 612 00 0 00 000004 TDNE 4
1549 001756' 037 01 0 00 005330' FMSG <Y >
1550 001757' 200 00 0 05 002154' MOVE .LSWIT(5) ; get SIXBIT switch name
1551 001760' 037 01 0 00 000002 PNTSXF ; print it
1552 001761' 037 00 0 00 005331' TMSG < - >
1553 001762' 037 11 0 00 000003 TTYINP
1554 001763' 306 00 0 00 000015 CAIN 15 ; carraige return?
1555 001764' 260 17 0 00 000045' GO CLRBUF ; clear input buffer
1556 001765' 306 00 0 00 000015 CAIN 15 ; carraige return?
1557 001766' 254 00 0 00 001744' JRST .SLF4 ; yes - next switch
1558 001767' 037 01 0 00 030242 PCRLF
1559 001770' 306 00 0 00 000032 CAIN 32 ; Control-Z?
1560 001771' 254 00 0 00 002010' JRST .SLFX ; yes - exit
1561 001772' 306 00 0 00 000136 CAIN 136 ; ^ back up?
1562 001773' 254 00 0 00 001743' JRST .SLF3 ; yes - go back up
1563 001774' 306 00 0 00 000131 CAIN "Y" ; Y?
1564 001775' 254 00 0 00 002004' JRST .SLF6 ; yes - set switch
1565 001776' 302 00 0 00 000116 CAIE "N" ; N?
1566 001777' 254 00 0 00 001751' JRST .SLF5 ; no - unrecognizable - reask question
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 38
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1023
1567 002000' 200 00 0 00 006073' MOVE CONSWW ; get switches
1568 002001' 412 00 0 00 000004 ANDCAM 4 ; clear switch
1569 002002' 202 00 0 00 006073' MOVEM CONSWW ; save switches
1570 002003' 254 00 0 00 001744' JRST .SLF4 ; continue
1571 002004' 200 00 0 00 006073' .SLF6: MOVE CONSWW ; get switches
1572 002005' 434 00 0 00 000004 IOR 4 ; set switch
1573 002006' 202 00 0 00 006073' MOVEM CONSWW ; save switches
1574 002007' 254 00 0 00 001744' JRST .SLF4 ; continue
1575
1576 002010' 262 17 0 00 000006 .SLFX: RGET (6,5,4,3,2,1,0) ; restore AC's
1577
1578 002017' 263 17 0 00 000000 RTN ; return
1579
1580
1581 ;#********************************************************************
1582 ;* .SRIGT - Enter right hand switches
1583 ;#********************************************************************
1584
1585 002020' 261 17 0 00 000000 .SRIGT: RPUT (0,1,2,3,4,5,6) ; save AC's
1586
1587
1588 002027' 550 00 0 00 006073' .SRG2: HRRZ CONSWW ; print out right hand switches as
1589 002030' 037 01 0 00 030242 PCRLF ; they currently are
1590 002031' 037 17 0 00 000003 PNTOCF
1591 002032' 037 01 0 00 005332' FMSG < RH Switches <# or ?> - >
1592 002033' 260 17 0 00 002131' GO .SWIN ; go input switches
1593 002034' 254 00 0 00 002040' JRST .SRG3 ; typed a ?
1594 002035' 254 00 0 00 002027' JRST .SRG2 ; error - re-ask question
1595 002036' 542 01 0 00 006073' HRRM 1,CONSWW ; save right hand switches
1596 002037' 254 00 0 00 002121' JRST .SRGX ; exit this switch handling
1597
1598 002040' 037 01 0 00 005323' .SRG3: PNTMSF [ASCIZ /Type Y,N,^,CR,^Z/]
1599 002041' 037 01 0 00 030243 PCRL2F
1600 002042' 201 05 0 00 000001 MOVEI 5,1 ; init pointer to switch to ask
1601 002043' 275 05 0 00 000002 .SRG4: SUBI 5,2 ; back up
1602 002044' 350 00 0 00 000005 .SRG5: AOS 5 ; forward
1603 002045' 335 00 0 00 000005 SKIPGE 5 ; backed up too much?
1604 002046' 400 05 0 00 000000 SETZ 5, ; yes - init pointer to first switch
1605 002047' 303 05 0 00 000021 CAILE 5,^D17 ; reach end yet?
1606 002050' 254 00 0 00 002121' JRST .SRGX ; yes
1607 002051' 336 00 0 05 002210' SKIPN .RSWIT(5) ; switch zero?
1608 002052' 254 00 0 00 002044' JRST .SRG5 ; yes - go handle next one
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 39
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1024
1609
1610 002053' 201 04 0 00 400000 .SRG6: MOVEI 4,400000 ; get a bit set in AC4
1611 002054' 210 06 0 00 000005 MOVN 6,5 ; negate for shifting
1612 002055' 242 04 0 06 000000 LSH 4,(6) ; shift over properly
1613 002056' 200 00 0 00 006073' MOVE CONSWW ; get switches
1614 002057' 616 00 0 00 000004 TDNN 4
1615 002060' 037 01 0 00 005327' FMSG <N >
1616 002061' 612 00 0 00 000004 TDNE 4
1617 002062' 037 01 0 00 005330' FMSG <Y >
1618 002063' 200 00 0 05 002210' MOVE .RSWIT(5) ; get SIXBIT switch name
1619 002064' 037 01 0 00 000002 PNTSXF ; print it
1620 002065' 037 00 0 00 005331' TMSG < - >
1621 002066' 037 11 0 00 000003 TTYINP
1622 002067' 306 00 0 00 000015 CAIN 15 ; carraige return?
1623 002070' 260 17 0 00 000045' GO CLRBUF ; clear input buffer
1624 002071' 306 00 0 00 000015 CAIN 15 ; carraige return?
1625 002072' 254 00 0 00 002044' JRST .SRG5 ; yes - next switch
1626 002073' 037 01 0 00 030242 PCRLF
1627 002074' 306 00 0 00 000032 CAIN 32 ; Control-Z?
1628 002075' 254 00 0 00 002121' JRST .SRGX ; yes - exit
1629 002076' 302 00 0 00 000136 CAIE 136 ; ^ back up?
1630 002077' 254 00 0 00 002105' JRST .SRG6B ; no - continue
1631 002100' 322 05 0 00 002053' JUMPE 5,.SRG6 ; at first switch? - yes - reask
1632 002101' 370 00 0 00 000005 .SRG6A: SOS 5 ; decrement switch
1633 002102' 336 00 0 05 002210' SKIPN .RSWIT(5) ; this switch exists?
1634 002103' 254 00 0 00 002101' JRST .SRG6A ; no - try previous one
1635 002104' 254 00 0 00 002053' JRST .SRG6 ; yes - now continue
1636
1637 002105' 306 00 0 00 000131 .SRG6B: CAIN "Y" ; Y?
1638 002106' 254 00 0 00 002115' JRST .SRG7 ; yes - set switch
1639 002107' 302 00 0 00 000116 CAIE "N" ; N?
1640 002110' 254 00 0 00 002053' JRST .SRG6 ; no - unrecognizable - reask question
1641 002111' 200 00 0 00 006073' MOVE CONSWW ; get switches
1642 002112' 620 00 0 04 000000 TRZ (4) ; clear switch
1643 002113' 202 00 0 00 006073' MOVEM CONSWW ; save switches
1644 002114' 254 00 0 00 002044' JRST .SRG5 ; continue
1645 002115' 200 00 0 00 006073' .SRG7: MOVE CONSWW ; get switches
1646 002116' 660 00 0 04 000000 TRO (4) ; set switch
1647 002117' 202 00 0 00 006073' MOVEM CONSWW ; save switches
1648 002120' 254 00 0 00 002044' JRST .SRG5 ; continue
1649
1650 002121' 262 17 0 00 000006 .SRGX: RGET (6,5,4,3,2,1,0) ; restore AC's
1651
1652 002130' 263 17 0 00 000000 RTN ; return
1653
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 40
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1025
1654
1655 ;#********************************************************************
1656 ; .SWIN - Input switches (either as # or ?)
1657 ;
1658 ; Return +1 - ? typed
1659 ; +2 - error
1660 ; +3 - # typed (in AC1)
1661 ; +4 - no change
1662 ;#********************************************************************
1663
1664 002131' 037 11 0 00 000003 .SWIN: TTYINP ; get image mode character
1665 002132' 306 00 0 00 000015 CAIN 15 ; CR typed?
1666 PJRST [GO CLRBUF ; clear input buffer
1667 AOS (P) ; increment return
1668 AOS (P) ; increment return
1669 AOS (P) ; increment return
1670 PCRLF
1671 002133' 254 00 0 00 005340' RTN]
1672 002134' 306 00 0 00 000077 CAIN "?" ; ? typed?
1673 PJRST [PCRL2F ; yes - exit
1674 002135' 254 00 0 00 005346' RTN]
1675 002136' 400 01 0 00 000000 SETZ 1, ; clear number for starters
1676 002137' 301 00 0 00 000060 .SWIN0: CAIL "0" ; number typed is in a valid
1677 002140' 303 00 0 00 000067 CAILE "7" ; range?
1678 PJRST [AOS (P) ; no - error return
1679 PCRLF
1680 002141' 254 00 0 00 005343' RTN]
1681 002142' 275 00 0 00 000060 SUBI 60 ; normalize to 0..7
1682 002143' 242 01 0 00 000003 LSH 1,3 ; shift over current copy of number
1683 002144' 270 01 0 00 000000 ADD 1,0 ; add in new digit
1684 002145' 037 11 0 00 000003 TTYINP ; get a new character
1685 002146' 302 00 0 00 000015 CAIE 15 ; carraige return?
1686 002147' 254 00 0 00 002137' JRST .SWIN0 ; no - go decode as a digit
1687 002150' 260 17 0 00 000045' GO CLRBUF ; clear out extra
1688 002151' 350 00 0 17 000000 AOS (P) ; set up return+2
1689 002152' 350 00 0 17 000000 AOS (P)
1690 002153' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 41
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1026
1691
1692 ;#********************************************************************
1693 ; .LSWIT - Table of left hand switch names
1694 ;#********************************************************************
1695
1696 002154' 41 42 57 62 64 00 .LSWIT: SIXBIT /ABORT /
1697 002155' 62 63 64 41 62 64 SIXBIT /RSTART/
1698 002156' 64 57 64 41 54 63 SIXBIT /TOTALS/
1699 002157' 56 57 60 56 64 00 SIXBIT /NOPNT /
1700 002160' 60 56 64 54 60 64 SIXBIT /PNTLPT/
1701 002161' 44 51 56 47 00 00 SIXBIT /DING /
1702 002162' 54 57 57 60 45 62 SIXBIT /LOOPER/
1703 002163' 45 62 63 64 57 60 SIXBIT /ERSTOP/
1704 002164' 60 41 54 45 62 63 SIXBIT /PALERS/
1705 002165' 62 45 54 51 41 42 SIXBIT /RELIAB/
1706 002166' 64 70 64 51 56 50 SIXBIT /TXTINH/
1707 002167' 55 57 44 44 66 43 SIXBIT /MODDVC/
1708 002170' 57 60 62 63 45 54 SIXBIT /OPRSEL/
1709 002171' 43 50 41 51 56 00 SIXBIT /CHAIN /
1710
1711 002172' 400000 000000 .LSWTN: 400000,,0 ; ABORT
1712 002173' 200000 000000 200000,,0 ; RSTART
1713 002174' 100000 000000 100000,,0 ; TOTALS
1714 002175' 040000 000000 040000,,0 ; NOPNT
1715 002176' 020000 000000 020000,,0 ; PNTLPT
1716 002177' 010000 000000 010000,,0 ; DING
1717 002200' 004000 000000 004000,,0 ; LOOPER
1718 002201' 002000 000000 002000,,0 ; ERSTOP
1719 002202' 001000 000000 001000,,0 ; PALERS
1720 002203' 000400 000000 000400,,0 ; RELIAB
1721 002204' 000200 000000 000200,,0 ; TXTINH
1722 002205' 000040 000000 000040,,0 ; MODDVC
1723 002206' 000010 000000 000010,,0 ; OPRSEL
1724 002207' 000004 000000 000004,,0 ; CHAIN
1725
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 42
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1027
1726
1727 ;#********************************************************************
1728 ; .RSWIT - Table of right hand switch names
1729 ;#********************************************************************
1730
1731 ; Here is the switch prompt table of SIXBIT switch names to use
1732
1733 002210' 64 62 41 43 45 00 .RSWIT: SIXBIT /TRACE/ ; switch 18
1734 002211' 51 56 50 46 54 64 SIXBIT /INHFLT/ ; switch 19
1735 002212' 51 56 50 55 63 47 SIXBIT /INHMSG/ ; switch 20
1736 002213' 54 57 57 60 47 55 SIXBIT /LOOPGM/ ; switch 21
1737 002214' 54 57 57 60 64 63 SIXBIT /LOOPTS/ ; switch 22
1738 002215' 62 65 56 41 54 54 SIXBIT /RUNALL/ ; switch 23
1739 002216' 44 63 60 45 41 62 SIXBIT /DSPEAR/ ; switch 24
1740 002217' 65 44 45 42 65 47 SIXBIT /UDEBUG/ ; switch 25
1741 002220' 55 44 45 42 65 47 SIXBIT /MDEBUG/ ; switch 26
1742 002221' 63 44 45 42 65 47 SIXBIT /SDEBUG/ ; switch 27
1743 002222' 54 44 45 42 65 47 SIXBIT /LDEBUG/ ; switch 28
1744 002223' 44 44 45 42 65 47 SIXBIT /DDEBUG/ ; switch 29
1745 002224' 45 44 45 42 65 47 SIXBIT /EDEBUG/ ; switch 30
1746 002225' 65 56 65 63 45 44 SIXBIT /UNUSED/ ; switch 31
1747 002226' 65 56 65 63 45 44 SIXBIT /UNUSED/ ; switch 32
1748 002227' 65 56 65 63 45 44 SIXBIT /UNUSED/ ; switch 33
1749 002230' 65 56 65 63 45 44 SIXBIT /UNUSED/ ; switch 34
1750 002231' 65 56 65 63 45 44 SIXBIT /UNUSED/ ; switch 35
1751
1752
1753 ;#*********************************************************************
1754 ;* SWCHPT - Prints current state of switches
1755 ;#*********************************************************************
1756
1757 002232' 261 17 0 00 000000 SWCHPT: PUT 0
1758 002233' 037 00 0 00 005350' TMSG <Switches - >
1759 002234' 200 00 0 00 030046 MOVE CONSW
1760 002235' 037 13 0 00 000001 PNTHWF
1761 002236' 037 00 0 00 005314' TMSGC <>
1762 002237' 262 17 0 00 000000 GET 0
1763 002240' 263 17 0 00 000000 RTN
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 43
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1028
1764
1765 ;#********************************************************************
1766 ;* SWCOM - Switch complement routine
1767 ;
1768 ; Argument: AC1 - Contains switch command number (0-x)
1769 ;#********************************************************************
1770
1771 002241' 261 17 0 00 000000 SWCOM: RPUT (0,1,2) ; save AC's
1772
1773 002244' 200 02 0 01 002325' MOVE 2,SWCOMP(1) ; get text
1774 002245' 200 01 0 01 002300' MOVE 1,SWCOMT(1) ; get switch in octal
1775 002246' 336 00 0 00 030037 SKIPN USER ; user mode?
1776 002247' 607 01 0 00 777777 TLNN 1,777777 ; no - left hand switch set?
1777 002250' 254 00 0 00 002260' JRST SWCOM0 ; no - continue
1778
1779 ; Cannot complement
1780
1781 002251' 037 01 0 00 005353' FMSGC <[Alter >
1782 002252' 256 00 0 00 000002 XCT 2
1783 002253' 037 01 0 00 005355' FMSG < with PDP11 Switch >
1784 002254' 200 01 0 17 777777 MOVE 1,-1(P) ; get switch number
1785 XCT [FMSG <12> ; print it
1786 FMSG <11>
1787 FMSG <10>
1788 FMSG <8>
1789 FMSG <7>
1790 FMSG <6>
1791 FMSG <5>
1792 002255' 256 00 0 01 005371' FMSG <1>](1)
1793 002256' 037 01 0 00 005401' FMSGD < only]>
1794 002257' 254 00 0 00 002274' JRST SWCOMX ; exit
1795
1796 ; Ok to complement
1797
1798 002260' 260 17 0 00 001640' SWCOM0: GO SWITT ; get switches
1799 002261' 430 00 0 00 000001 XOR 1 ; complement as specified
1800 002262' 202 00 0 00 030046 MOVEM CONSW ; save switches
1801 002263' 552 00 0 00 001645' HRRZM SWRGT ; save right hand switches
1802 002264' 037 01 0 00 005403' FMSGC <[>
1803 002265' 256 00 0 00 000002 XCT 2 ; print text
1804 002266' 260 17 0 00 001640' GO SWITT ; get switches
1805 002267' 404 00 0 00 000001 AND 1 ; get only this switch
1806 002270' 332 00 0 00 000000 SKIPE ; did it get set?
1807 002271' 037 01 0 00 005404' FMSGD < On]> ; yes
1808 002272' 336 00 0 00 000000 SKIPN ; did it get set?
1809 002273' 037 01 0 00 005406' FMSGD < Off]> ; no
1810 002274' 262 17 0 00 000002 SWCOMX: RGET (2,1,0) ; restore AC's
1811
1812 002277' 263 17 0 00 000000 RTN ; continue
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 44
DFCIAU MAC 6-Aug-83 09:31 Switch Handling Routines SEQ 1029
1813
1814 ; Switches in octal
1815
1816 002300' 040000 000000 SWCOMT: 040000,,0 ; NOPNT
1817 002301' 020000 000000 020000,,0 ; PNTLPT
1818 002302' 010000 000000 010000,,0 ; DING
1819 002303' 002000 000000 002000,,0 ; ERSTOP
1820 002304' 001000 000000 001000,,0 ; PALERS
1821 002305' 000400 000000 000400,,0 ; RELIAB
1822 002306' 000200 000000 000200,,0 ; TXTINH
1823 002307' 000010 000000 000010,,0 ; OPRSEL
1824 002310' 000000 400000 0,,400000 ; TRACE
1825 002311' 000000 200000 0,,200000 ; INHFLT
1826 002312' 000000 100000 0,,100000 ; INHMSG
1827 002313' 000000 040000 0,,040000 ; LOOPGM
1828 002314' 000000 020000 0,,020000 ; LOOPTS
1829 002315' 000000 010000 0,,010000 ; RUNALL
1830 002316' 000000 004000 0,,004000 ; DSPEAR
1831 002317' 000000 002000 0,,002000 ; UDEBUG
1832 002320' 000000 001000 0,,001000 ; MDEBUG
1833 002321' 000000 000400 0,,000400 ; SDEBUG
1834 002322' 000000 000200 0,,000200 ; LDEBUG
1835 002323' 000000 000100 0,,000100 ; DDEBUG
1836 002324' 000000 000040 0,,000040 ; EDEBUG
1837
1838 ; Switch text
1839
1840 002325' 037 01 0 00 005410' SWCOMP: FMSG <NOPNT>
1841 002326' 037 01 0 00 005412' FMSG <PNTLPT>
1842 002327' 037 01 0 00 005414' FMSG <DING>
1843 002330' 037 01 0 00 005415' FMSG <ERSTOP>
1844 002331' 037 01 0 00 005417' FMSG <PALERS>
1845 002332' 037 01 0 00 005421' FMSG <RELIAB>
1846 002333' 037 01 0 00 005423' FMSG <TXTINH>
1847 002334' 037 01 0 00 005425' FMSG <OPRSEL>
1848 002335' 037 01 0 00 005427' FMSG <TRACE>
1849 002336' 037 01 0 00 005431' FMSG <INHFLT>
1850 002337' 037 01 0 00 005433' FMSG <INHMSG>
1851 002340' 037 01 0 00 005435' FMSG <LOOPGM>
1852 002341' 037 01 0 00 005437' FMSG <LOOPTS>
1853 002342' 037 01 0 00 005441' FMSG <RUNALL>
1854 002343' 037 01 0 00 005443' FMSG <DSPEAR>
1855 002344' 037 01 0 00 005445' FMSG <UDEBUG>
1856 002345' 037 01 0 00 005447' FMSG <MDEBUG>
1857 002346' 037 01 0 00 005451' FMSG <SDEBUG>
1858 002347' 037 01 0 00 005453' FMSG <LDEBUG>
1859 002350' 037 01 0 00 005455' FMSG <DDEBUG>
1860 002351' 037 01 0 00 005457' FMSG <EDEBUG>
1861
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 45
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1030
1862 SUBTTL Miscellaneous Routines
1863
1864 ;#********************************************************************
1865 ;* PARSER - Additional CPU parity error service
1866 ;
1867 ; This routine is called by the subroutine package automatically when the
1868 ; processor is interrupted with a memory parity error. It furnishes some
1869 ; additional useful information. (A) IPA status (B) Channel status. If
1870 ; running on a KL10 in exec mode, and the parity error occurs not in the
1871 ; program area but the data buffer, the error will be cleared and the
1872 ; diagnostic will be forced to loop on the error.
1873 ;#********************************************************************
1874
1875 002352' 332 00 0 00 030037 PARSER: SKIPE USER ; user mode?
1876 002353' 260 17 0 00 000000* GO FFF ; yes - fatal error
1877 002354' 261 17 0 00 000000 RPUT (0,1) ; save AC's
1878
1879 002356' 402 00 0 00 000001 SETZM 1
1880 002357' 260 17 0 00 000000* GO RDCSR ; read CSR register
1881 002360' 255 00 0 00 000000 JFCL ; error return
1882 002361' 037 01 0 00 005461' FMSGC <************* Memory Parity Error Occurred *************>
1883 002362' 037 01 0 00 005475' FMSGC <CSR: >
1884 002363' 200 00 0 00 000001 MOVE 1
1885 002364' 037 13 0 00 000001 PNTHWF
1886 002365' 260 17 0 00 000000* GO GETLOG ; get logout area for channel
1887 002366' 260 17 0 00 000000* GO LOGPNT ; print logout data
1888 002367' 336 00 0 00 030041 SKIPN KLFLG ; KL-PROCESSOR?
1889 002370' 260 17 0 00 002353* GO FFF ; no - fatal error
1890 002371' 255 00 0 00 000000 JFCL ; yes
1891 002372' 256 00 0 00 005477' XCT [700400,,0] ; read error addr register
1892 002373' 404 00 0 00 005500' AND 0,[17,777777] ; save 22 bit address
1893 002374' 202 00 0 00 006120' MOVEM XYZ# ; save
1894 002375' 311 00 1 00 006072' CAML 0,@ABUFF# ; in buffer area
1895 002376' 254 00 0 00 002401' JRST CORECT ; yes. we can continue
1896 002377' 037 01 0 00 005501' FMSGCD <Error not in data buffer area, cannot continue>
1897 002400' 260 17 0 00 002370* GO FFF ; fatal out
1898
1899 002401' 037 01 0 00 005514' CORECT: FMSGCD <Error is in the data buffer, diag will continue>
1900 002402' 256 00 0 00 005527' XCT [700240,,0] ; CONI APR
1901 002403' 554 00 0 00 000000 HLRZ 0,0 ; swaps flags to right
1902 002404' 435 00 0 00 000001 IORI 0,1 ; include PI channel
1903 002405' 405 00 0 00 007777 ANDI 0,7777 ; save FLAGS and PI
1904 002406' 434 00 0 00 005530' IOR 0,[700200,,120000] ; clr and re-enable
1905 002407' 256 00 0 00 000000 XCT 0 ; does the CONO
1906 002410' 256 00 0 00 005527' XCT [700240,,0] ; another CONI
1907 002411' 262 17 0 00 000001 GET 1
1908 002412' 262 17 0 00 000000 GET 0
1909 002413' 254 12 1 00 030104 JEN @ITRCH1 ; dismiss the interrupt
1910
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 46
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1031
1911
1912 ;#********************************************************************
1913 ;* .COMM - Match a command entered against a command table.
1914 ;
1915 ; Handle erroneous input by returning to re-ask question.
1916 ;
1917 ; Arguments: AC1 - Contains the SIXBIT command entered
1918 ; AC2 - Contains address of command table
1919 ;
1920 ; Returns: RTN+1 - Return error address (for re-asking question)
1921 ; RTN+2 - Valid command recognized, offset in command
1922 ; table is returned in AC1
1923 ;
1924 ;#********************************************************************
1925
1926 002414' 261 17 0 00 000000 .COMM: RPUT (0,2,3) ; save some AC's
1927
1928 002417' 202 01 0 00 002441' MOVEM 1,.CTYP ; save command typed
1929
1930 ; Now look through each command
1931
1932 002420' 474 03 0 00 000000 SETO 3, ; init test check pointer
1933 002421' 350 00 0 00 000003 .COMM0: AOS 3 ; point to next command
1934 002422' 260 17 0 00 002445' GO .COMM2 ; see if this is the test selected
1935 002423' 254 00 0 00 002421' JRST .COMM0 ; no - try next command
1936 002424' 254 00 0 00 002431' JRST .COMM1 ; yes - go handle
1937
1938 ; Error exit
1939
1940 002425' 262 17 0 00 000003 RGET (3,2,0) ; restore AC's
1941
1942 002430' 263 17 0 00 000000 RTN ; return + 1 (error)
1943
1944 ; Found a valid command
1945
1946 002431' 202 03 0 00 002440' .COMM1: MOVEM 3,.CGOT ; save command number
1947 002432' 202 03 0 00 000001 MOVEM 3,1 ; put into AC1
1948 002433' 262 17 0 00 000003 RGET (3,2,0) ; restore AC's
1949
1950 002436' 350 00 0 17 000000 AOS (P) ; set up return + 2 (valid return)
1951 002437' 263 17 0 00 000000 RTN
1952
1953 ; Storage areas
1954
1955 002440' 000000 000000 .CGOT: 0 ; command number
1956
1957 002441' 000000 000000 .CTYP: 0 ; command typed (SIXBIT)
1958 002442' 000000 000000 0
1959
1960 002443' 000000 000000 .CTBL: 0 ; command to compare
1961 002444' 000000 000000 0
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 47
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1032
1962
1963 ;#********************************************************************
1964 ;* .COMM2 - Compare command typed to table to see if valid
1965 ;
1966 ; AC2 - Contains address of sixbit command table
1967 ; AC3 - Contains current command number (0..)
1968 ;#********************************************************************
1969
1970 002445' 261 17 0 00 000000 .COMM2: RPUT (0,1,2,3) ; save AC's
1971
1972 002451' 270 02 0 00 000003 ADD 2,3 ; calculate address of entry to compare
1973 002452' 200 00 0 02 000000 MOVE (2) ; get cmd table entry
1974 002453' 322 00 0 00 002502' JUMPE .COMM6 ; reached end of table? - yes - exit
1975 002454' 202 00 0 00 002443' MOVEM .CTBL ; save cmd table entry
1976 002455' 200 02 0 00 005531' MOVE 2,[POINT 6,.CTYP,5] ; set up byte pointers
1977 002456' 200 03 0 00 005532' MOVE 3,[POINT 6,.CTBL,5] ; ...
1978 002457' 135 00 0 00 000002 .COMM3: LDB 0,2 ; get character of typed
1979 002460' 135 01 0 00 000003 LDB 1,3 ; get character of table
1980 002461' 322 00 0 00 002467' JUMPE .COMM4 ; end of typed? yes - done
1981 002462' 312 00 0 00 000001 CAME 1 ; no - same as table?
1982 002463' 254 00 0 00 002475' JRST .COMM5 ; no - no match - exit
1983 002464' 133 00 0 00 000002 IBP 2 ; increment byte pointers
1984 002465' 133 00 0 00 000003 IBP 3 ; ...
1985 002466' 254 00 0 00 002457' JRST .COMM3 ; end of table entry? no - keep looping
1986 002467' 262 17 0 00 000003 .COMM4: RGET (3,2,1,0) ; yes - match - done
1987
1988 002473' 350 00 0 17 000000 AOS (P) ; set up return+2
1989 002474' 263 17 0 00 000000 RTN ; return+2
1990 002475' 262 17 0 00 000003 .COMM5: RGET (3,2,1,0) ; no match
1991
1992 002501' 263 17 0 00 000000 RTN ; return+1
1993 002502' 262 17 0 00 000003 .COMM6: RGET (3,2,1,0) ; return as end of list
1994
1995 002506' 350 00 0 17 000000 AOS (P) ; set up return+2
1996 002507' 350 00 0 17 000000 AOS (P) ; set up return+3
1997 002510' 263 17 0 00 000000 RTN ; return+3
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 48
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1033
1998
1999 ;#********************************************************************
2000 ;* .SARG - Obtain SIXBIT argument
2001 ;
2002 ; Arguments: ARGFLG - 0 - No more arguments
2003 ; -1 - More arguments have been given
2004 ; AC1 - Contains executable help message
2005 ;
2006 ; Returns: ARGUM - Contains SIXBIT argument
2007 ; ARGFLG - Updated
2008 ; +1 - Error occurred/Altmode typed/Question mark typed
2009 ; +2 - No argument
2010 ; +3 - Ok
2011 ;#********************************************************************
2012
2013 002511' 261 17 0 00 000000 .SARG: RPUT (0,1,2,3,ALTMGO) ; save AC's
2014
2015 MOVEI [SETOM ALTF ; set up altmode handling to exit
2016 PCRL ; +1 after setting altmode flag
2017 002516' 201 00 0 00 005533' JRST .SARX1] ; and skipping a line
2018 002517' 202 00 0 00 030063 MOVEM ALTMGO
2019
2020 ; Check if any arguments were given at all
2021
2022 002520' 336 00 0 00 002732' SKIPN ARGFLG ; any arguments?
2023 002521' 254 00 0 00 002542' JRST .SARX2 ; no - exit 'no argument'
2024
2025 ; Check for file input
2026
2027 002522' 332 00 0 00 000764* SKIPE FINPUT ; file input?
2028 JRST [GO FSARG ; yes - input octal argument
2029 JRST .SARX1 ; error or EOF occurred
2030 002523' 254 00 0 00 005536' JRST .SARG1] ; continue
2031
2032 ; Input SIXBIT argument
2033
2034 002524' 037 10 0 00 000003 .SARG0: TTSIXB ; get argument
2035 002525' 007 00 0 00 002551' ALTCHK .SARGA ; error - go handle
2036
2037 ; Check result
2038
2039 .SARG1: JUMPE [MOVE $TTCHR ; anything typed? if a space, keep
2040 CAIN 40 ; looking for an argument, if not
2041 JRST .SARG0 ; exit
2042 002526' 322 00 0 00 005541' JRST .SARX2]
2043 002527' 202 00 0 00 002731' MOVEM ARGUM ; save argument
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 49
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1034
2044
2045 ; Check for last argument
2046
2047 002530' 402 00 0 00 002732' SETZM ARGFLG ; clear 'argument typed' flag
2048 002531' 200 01 0 00 030231 MOVE 1,$TTCHR ; get last character typed
2049 002532' 302 01 0 00 000015 CAIE 1,15 ; CR? (end of line)
2050 002533' 476 00 0 00 002732' SETOM ARGFLG ; no - set 'argument typed' flag
2051
2052 ; Check if this should have been the last argument
2053
2054 002534' 331 00 0 17 777775 SKIPL -3(P) ; help message negative?
2055 002535' 254 00 0 00 002541' JRST .+4 ; no - exit
2056 002536' 260 17 0 00 002757' GO LASARG ; check for last argument
2057 002537' 254 00 0 00 002543' JRST .SARX1 ; error - exit +1
2058 JRST [MOVM 1,-3(P) ; any help here?
2059 JUMPE 1,.SARX1 ; no - continue
2060 XCT 1 ; yes - execute it
2061 002540' 254 00 0 00 005545' JRST .SARX1] ; yes - handle
2062 002541' 350 00 0 17 777773 AOS -5(P) ; adjust return
2063 002542' 350 00 0 17 777773 .SARX2: AOS -5(P) ; adjust return
2064
2065 ; Exit
2066
2067 002543' 262 17 0 00 030063 .SARX1: RGET (ALTMGO,3,2,1,0) ; restore AC's
2068
2069 002550' 263 17 0 00 000000 RTN ; return
2070
2071 ; Altmode typed
2072
2073 002551' 262 17 0 00 006117' .SARGA: GET XXT# ; adjust stack properly
2074 002552' 336 00 0 00 030225 SKIPN $TWCNT ; did a timeout occur?
2075 002553' 254 00 0 00 002542' JRST .SARX2 ; yes - assume 'no argument'
2076 002554' 200 01 0 00 030231 MOVE 1,$TTCHR ; no - get character typed
2077 002555' 306 01 0 00 000077 CAIN 1,77 ; was a question mark typed?
2078 JRST [MOVM 1,-3(P) ; yes - any help here?
2079 JUMPE 1,.SARX1 ; no - exit
2080 XCT 1 ; yes - execute it
2081 002556' 254 00 0 00 005545' JRST .SARX1] ; exit
2082 002557' 302 01 0 00 000040 CAIE 1,40 ; space (delimiter character) typed?
2083 JRST [FMSGCD <? Argument error> ; no - error - exit
2084 002560' 254 00 0 00 005556' JRST .SARX1]
2085 002561' 254 00 0 00 002526' JRST .SARG1 ; continue
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 50
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1035
2086
2087 ;#********************************************************************
2088 ;* .OARG - Obtain octal argument
2089 ;
2090 ; Arguments: ARGFLG - 0 - No more arguments
2091 ; -1 - More arguments have been given
2092 ; AC1 - Contains executable help message
2093 ;
2094 ; Returns: ARGUM - Contains octal argument
2095 ; ARGFLG - Updated
2096 ;
2097 ; +1 - Error occurred/Altmode typed/Question mark typed
2098 ; +2 - No argument
2099 ; +3 - Ok
2100 ;#********************************************************************
2101
2102 002562' 261 17 0 00 000000 .OARG: RPUT (0,1,2,3,ALTMGO) ; save AC's
2103
2104 MOVEI [SETOM ALTF ; set up altmode handling to exit
2105 PCRL ; +1 after setting altmode flag
2106 002567' 201 00 0 00 005560' JRST .OARX1] ; and skipping a line
2107 002570' 202 00 0 00 030063 MOVEM ALTMGO
2108
2109 ; Check if any arguments were given at all
2110
2111 002571' 336 00 0 00 002732' SKIPN ARGFLG ; any arguments?
2112 002572' 254 00 0 00 002614' JRST .OARX2 ; no - exit 'no argument'
2113
2114 ; Check for file input
2115
2116 002573' 332 00 0 00 002522* SKIPE FINPUT ; file input?
2117 JRST [GO FOARG ; yes - input octal argument
2118 JRST .OARX1 ; error or EOF occurred
2119 002574' 254 00 0 00 005563' JRST .OARG1] ; continue
2120
2121 ; Input octal argument
2122
2123 002575' 037 03 0 00 000003 .OARG0: TTIOCT ; get a number
2124 002576' 007 00 0 00 002623' ALTCHK .OARGA ; error - go handle
2125
2126 ; Check result
2127
2128 002577' 202 00 0 00 002731' .OARG1: MOVEM ARGUM ; save argument
2129 002600' 336 00 0 00 030510 SKIPN TTNBRF ; any number typed?
2130 JRST [MOVE 1,$TTCHR ; anything typed? if a space, keep
2131 CAIN 1,40 ; looking for an argument, if not
2132 JRST .OARG0 ; exit
2133 002601' 254 00 0 00 005566' JRST .OARX2]
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 51
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1036
2134
2135 ; Check for last argument
2136
2137 002602' 402 00 0 00 002732' SETZM ARGFLG ; clear 'argument typed' flag
2138 002603' 200 01 0 00 030231 MOVE 1,$TTCHR ; get last character typed
2139 002604' 302 01 0 00 000015 CAIE 1,15 ; CR? (end of line)
2140 002605' 476 00 0 00 002732' SETOM ARGFLG ; no - set 'argument typed' flag
2141
2142 ; Check if this should have been the last argument
2143
2144 002606' 331 00 0 17 777775 SKIPL -3(P) ; help message negative?
2145 002607' 254 00 0 00 002613' JRST .+4 ; no - exit
2146 002610' 260 17 0 00 002757' GO LASARG ; check for last argument
2147 002611' 254 00 0 00 002615' JRST .OARX1 ; error - exit +1
2148 JRST [MOVM 1,-3(P) ; any help here?
2149 JUMPE 1,.OARX1 ; no - continue
2150 XCT 1 ; yes - execute it
2151 002612' 254 00 0 00 005572' JRST .OARX1] ; yes - handle
2152 002613' 350 00 0 17 777773 AOS -5(P) ; adjust return
2153 002614' 350 00 0 17 777773 .OARX2: AOS -5(P) ; adjust return
2154
2155 ; Exit
2156
2157 002615' 262 17 0 00 030063 .OARX1: RGET (ALTMGO,3,2,1,0) ; restore AC's
2158
2159 002622' 263 17 0 00 000000 RTN ; return
2160
2161 ; Altmode typed
2162
2163 002623' 262 17 0 00 006117' .OARGA: GET XXT# ; adjust stack properly
2164 002624' 336 00 0 00 030225 SKIPN $TWCNT ; did a timeout occur?
2165 002625' 254 00 0 00 002614' JRST .OARX2 ; yes - assume 'no argument'
2166 002626' 200 01 0 00 030231 MOVE 1,$TTCHR ; no - get character typed
2167 002627' 306 01 0 00 000077 CAIN 1,77 ; was a question mark typed?
2168 JRST [MOVM 1,-3(P) ; yes - any help here?
2169 JUMPE 1,.OARX1 ; no - exit
2170 XCT 1 ; yes - execute it
2171 002630' 254 00 0 00 005572' JRST .OARX1] ; exit
2172 002631' 302 01 0 00 000040 CAIE 1,40 ; space (delimiter character) typed?
2173 JRST [FMSGCD <? Argument error> ; no - error - exit
2174 002632' 254 00 0 00 005576' JRST .OARX1]
2175 002633' 200 00 0 00 030233 MOVE $TYPNB ; get number typed
2176 002634' 254 00 0 00 002577' JRST .OARG1 ; and exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 52
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1037
2177
2178 ;#********************************************************************
2179 ;* DECYN - Decode an argument which should be NO or YES
2180 ;
2181 ; Arguments: ARGUM - Contains sixbit argument
2182 ;
2183 ; Return: +1 - Unrecognizable (print message also)
2184 ; +2 - No
2185 ; +3 - Yes
2186 ;#********************************************************************
2187
2188 002635' 261 17 0 00 000000 DECYN: RPUT (0,1,2) ; save AC's
2189
2190 002640' 200 01 0 00 002731' MOVE 1,ARGUM ; get command into AC1
2191 002641' 201 02 0 00 002653' MOVEI 2,DECLIS ; get address of cmd list
2192 002642' 260 17 0 00 002414' GO .COMM ; handle command decoding
2193 JRST [FMSGCD <? Unrecognized argument>
2194 002643' 254 00 0 00 005606' JRST DECERR]
2195 002644' 332 00 0 00 000001 SKIPE 1 ; NO typed?
2196 002645' 350 00 0 17 777775 AOS -3(P) ; increment return
2197 002646' 350 00 0 17 777775 AOS -3(P) ; increment return
2198 002647' 262 17 0 00 000002 DECERR: RGET (2,1,0) ; restore AC's
2199
2200 002652' 263 17 0 00 000000 RTN ; return
2201
2202 002653' 56 57 00 00 00 00 DECLIS: SIXBIT /NO/
2203 002654' 71 45 63 00 00 00 SIXBIT /YES/
2204 002655' 000 00 0 00 000000 Z
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 53
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1038
2205
2206 ;#********************************************************************
2207 ;* .DARG - Obtain octal/decimal argument
2208 ;
2209 ; Arguments: ARGFLG - 0 - No more arguments
2210 ; -1 - More arguments have been given
2211 ; AC1 - Contains executable help message
2212 ;
2213 ; Returns: ARGUM - Contains octal argument
2214 ; ARGFLG - Updated
2215 ;
2216 ; +1 - Error occurred/Altmode typed/Question mark typed
2217 ; +2 - No argument
2218 ; +3 - Ok
2219 ;#********************************************************************
2220
2221 002656' 261 17 0 00 000000 .DARG: RPUT (0,1,2,3,ALTMGO) ; save AC's
2222
2223 MOVEI [SETOM ALTF ; set up altmode handling to exit
2224 PCRL ; +1 after setting altmode flag
2225 002663' 201 00 0 00 005610' JRST .DARX1] ; and skipping a line
2226 002664' 202 00 0 00 030063 MOVEM ALTMGO
2227
2228 ; Check if any arguments were given at all
2229
2230 002665' 336 00 0 00 002732' SKIPN ARGFLG ; any arguments?
2231 002666' 254 00 0 00 002710' JRST .DARX2 ; no - exit 'no argument'
2232
2233 ; Check for file input
2234
2235 002667' 332 00 0 00 002573* SKIPE FINPUT ; file input?
2236 JRST [GO FOARG ; yes - input octal argument
2237 JRST .DARX1 ; error or EOF occurred
2238 002670' 254 00 0 00 005613' JRST .DARG1] ; continue
2239
2240 ; Input octal/decimal argument
2241
2242 002671' 037 05 0 00 000003 .DARG0: TTICNV ; get a number
2243 002672' 007 00 0 00 002717' ALTCHK .DARGA ; error - go handle
2244
2245 ; Check result
2246
2247 002673' 202 00 0 00 002731' .DARG1: MOVEM ARGUM ; save argument
2248 002674' 336 00 0 00 030510 SKIPN TTNBRF ; any number typed?
2249 JRST [MOVE 1,$TTCHR ; anything typed? if a space, keep
2250 CAIN 1,40 ; looking for an argument, if not
2251 JRST .DARG0 ; exit
2252 002675' 254 00 0 00 005616' JRST .DARX2]
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 54
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1039
2253
2254 ; Check for last argument
2255
2256 002676' 402 00 0 00 002732' SETZM ARGFLG ; clear 'argument typed' flag
2257 002677' 200 01 0 00 030231 MOVE 1,$TTCHR ; get last character typed
2258 002700' 302 01 0 00 000015 CAIE 1,15 ; CR? (end of line)
2259 002701' 476 00 0 00 002732' SETOM ARGFLG ; no - set 'argument typed' flag
2260
2261 ; Check if this should have been the last argument
2262
2263 002702' 331 00 0 17 777775 SKIPL -3(P) ; help message negative?
2264 002703' 254 00 0 00 002707' JRST .+4 ; no - exit
2265 002704' 260 17 0 00 002757' GO LASARG ; check for last argument
2266 002705' 254 00 0 00 002711' JRST .DARX1 ; error - exit +1
2267 JRST [MOVM 1,-3(P) ; any help here?
2268 JUMPE 1,.DARX1 ; no - continue
2269 XCT 1 ; yes - execute it
2270 002706' 254 00 0 00 005622' JRST .DARX1] ; yes - handle
2271 002707' 350 00 0 17 777773 AOS -5(P) ; adjust return
2272 002710' 350 00 0 17 777773 .DARX2: AOS -5(P) ; adjust return
2273
2274 ; Exit
2275
2276 002711' 262 17 0 00 030063 .DARX1: RGET (ALTMGO,3,2,1,0) ; restore AC's
2277
2278 002716' 263 17 0 00 000000 RTN ; return
2279
2280 002717' 262 17 0 00 006117' .DARGA: GET XXT# ; adjust stack properly
2281 002720' 336 00 0 00 030225 SKIPN $TWCNT ; did a timeout occur?
2282 002721' 254 00 0 00 002710' JRST .DARX2 ; yes - assume 'no argument'
2283 002722' 200 01 0 00 030231 MOVE 1,$TTCHR ; no - get character typed
2284 002723' 306 01 0 00 000077 CAIN 1,77 ; was a question mark typed?
2285 JRST [MOVM 1,-3(P) ; yes - any help here?
2286 JUMPE 1,.DARX1 ; no - exit
2287 XCT 1 ; yes - execute it
2288 002724' 254 00 0 00 005622' JRST .DARX1] ; exit
2289 002725' 302 01 0 00 000040 CAIE 1,40 ; space (delimiter character) typed?
2290 JRST [FMSGCD <? Argument error> ; no - error - exit
2291 002726' 254 00 0 00 005626' JRST .DARX1]
2292 002727' 200 00 0 00 030233 MOVE $TYPNB ; get number typed
2293 002730' 254 00 0 00 002673' JRST .DARG1 ; and exit
2294
2295 ; Argument variables
2296
2297 002731' 000000 000000 ARGUM: 0
2298 002732' 000000 000000 ARGFLG: 0
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 55
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1040
2299
2300 ;#********************************************************************
2301 ;* CHKARG - Check for argument when there shouldn't be any
2302 ;
2303 ; Arguments: AC1 - Contains confirmation message
2304 ;
2305 ; Return: +1 - An argument was typed
2306 ; +2 - No argument was typed
2307 ;#********************************************************************
2308
2309 002733' 261 17 0 00 000000 CHKARG: RPUT (0,1,ALTMGO) ; save AC's
2310
2311 002736' 336 00 0 00 002732' SKIPN ARGFLG ; any argument at all?
2312 002737' 254 00 0 00 002752' JRST CHKARX ; no - exit +2
2313 MOVEI [SETOM ALTF ; set up altmode handling to exit
2314 PCRL ; +1 after setting altmode flag
2315 002740' 201 00 0 00 005630' JRST CHKARA] ; and skipping a line
2316 002741' 202 00 0 00 030063 MOVEM ALTMGO
2317
2318 ; Input argument to see if ? typed
2319
2320 002742' 332 00 0 00 002667* SKIPE FINPUT ; file input switch set?
2321 JRST [GO FEOL ; yes - move to end of line
2322 002743' 254 00 0 00 005633' JRST CHKARX]
2323 002744' 037 05 0 00 000003 CHKAR0: TTICNV ; get a number
2324 ALTCHK [GET XXT# ; adjust stack properly
2325 SKIPN $TWCNT ; did a timeout occur?
2326 JRST CHKARY ; yes - error
2327 MOVE 1,$TTCHR ; no - get character typed
2328 CAIE 1,77 ; was a question mark typed?
2329 JRST .+1 ; no - error
2330 XCT -1(P) ; print help message
2331 002745' 007 00 0 00 005635' JRST CHKARA] ; and exit
2332 002746' 336 00 0 00 030510 SKIPN TTNBRF ; any number typed?
2333 JRST [MOVE $TTCHR ; anything typed? if a space, keep
2334 CAIN 40 ; looking for an argument, if not
2335 JRST CHKAR0 ; exit
2336 CAIN 15
2337 JRST CHKARX
2338 002747' 254 00 0 00 005645' JRST CHKARY]
2339
2340 002750' 037 01 0 00 005653' CHKARY: FMSGCD <? No argument expected>
2341 002751' 334 00 0 00 000000 SKIPA
2342 002752' 350 00 0 17 777775 CHKARX: AOS -3(P) ; adjust stack
2343 002753' 262 17 0 00 030063 CHKARA: RGET (ALTMGO,1,0) ; restore AC's
2344
2345 002756' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 56
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1041
2346
2347 ;#********************************************************************
2348 ;* LASARG - Check for last argument when there shouldn't be any more
2349 ;
2350 ; Return: +1 - Error - more arguments
2351 ; +2 - Question mark typed
2352 ; +3 - No more arguments typed
2353 ;#********************************************************************
2354
2355 002757' 261 17 0 00 000000 LASARG: RPUT (0,1,ALTMGO) ; save AC's
2356
2357 002762' 336 00 0 00 002732' SKIPN ARGFLG ; any argument at all?
2358 002763' 254 00 0 00 002776' JRST LASARX ; no - exit +3
2359 MOVEI [SETOM ALTF ; set up altmode handling to exit
2360 PCRL ; +1 after setting altmode flag
2361 002764' 201 00 0 00 005661' JRST LASARA] ; and skipping a line
2362 002765' 202 00 0 00 030063 MOVEM ALTMGO
2363 002766' 332 00 0 00 002742* SKIPE FINPUT ; file input switch set?
2364 JRST [GO FEOL ; yes - move to end of line
2365 002767' 254 00 0 00 005664' JRST LASARX]
2366 002770' 037 05 0 00 000003 LASAR0: TTICNV ; get a number
2367 ALTCHK [GET XXT# ; adjust stack properly
2368 SKIPN $TWCNT ; did a timeout occur?
2369 JRST LASAR1 ; yes - error
2370 MOVE 1,$TTCHR ; get character typed
2371 CAIE 1,77 ; question mark?
2372 JRST .+1 ; yes - continue
2373 002771' 007 00 0 00 005666' JRST LASARX+1] ; no - handle
2374 002772' 336 00 0 00 030510 SKIPN TTNBRF ; any number typed?
2375 JRST [MOVE $TTCHR ; anything typed? if a space, keep
2376 CAIN 40 ; looking for an argument, if not
2377 JRST LASAR0 ; exit
2378 CAIN 15
2379 JRST LASARX
2380 002773' 254 00 0 00 005675' JRST LASAR1]
2381
2382 002774' 037 01 0 00 005703' LASAR1: FMSGCD <? Too many arguments>
2383 002775' 254 00 0 00 003000' JRST .+3
2384 002776' 350 00 0 17 777775 LASARX: AOS -3(P) ; adjust stack
2385 002777' 350 00 0 17 777775 AOS -3(P)
2386 003000' 262 17 0 00 030063 LASARA: RGET (ALTMGO,1,0) ; restore AC's
2387
2388 003003' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 57
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1042
2389
2390 ;#********************************************************************
2391 ;* FIOFF - Routine to turn off the 'file input' switch
2392 ;#********************************************************************
2393
2394 003004' 336 00 0 00 002766* FIOFF: SKIPN FINPUT ; switch set?
2395 003005' 263 17 0 00 000000 RTN ; no - return
2396 003006' 261 17 0 00 000000 PUT 0 ; yes - save AC0
2397 003007' 037 01 0 00 005710' FMSGC <[Input from > ; print message
2398 003010' 200 00 0 00 000756* MOVE TAKFIL ; print file name
2399 003011' 037 01 0 00 000002 PNTSXF
2400 003012' 037 01 0 00 000056 PNTCIF "."
2401 003013' 200 00 0 00 000000# MOVE TAKFIL+1
2402 003014' 037 01 0 00 000002 PNTSXF
2403 003015' 037 01 0 00 005713' FMSGD < aborted]>
2404 003016' 402 00 0 00 003004* SETZM FINPUT ; clear 'file input' flag
2405 003017' 262 17 0 00 000000 GET 0 ; restore AC0
2406 003020' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 58
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1043
2407
2408 ;#********************************************************************
2409 ;* FINCMD - Input a sixbit command from a file
2410 ;
2411 ; Return +1 - Error/EOF
2412 ; +2 - Sixbit word in AC0
2413 ;#********************************************************************
2414
2415 003021' 261 17 0 00 000001 FINCMD: RPUT (1,2) ; save AC's
2416
2417 003023' 402 00 0 00 006077' SETZM FINSIX# ; initialize word
2418 003024' 400 01 0 00 000000 SETZ 1, ; byte count
2419 003025' 200 02 0 00 005716' MOVE 2,[POINT 6,FINSIX] ; initial byte pointer
2420
2421 003026' 260 17 0 00 000743' FINCM0: GO CHRINS ; get a character
2422 003027' 254 00 0 00 003055' JRST FINCMX ; exit - error or EOF occurred
2423 003030' 306 00 0 00 000040 CAIN " " ; space typed?
2424 003031' 254 00 0 00 003045' JRST FINCMC ; yes - exit valid command in AC0
2425 003032' 306 00 0 00 000054 CAIN "," ; comma typed?
2426 003033' 254 00 0 00 003045' JRST FINCMC ; yes - exit valid command in AC0
2427 003034' 306 00 0 00 000015 CAIN 15 ; carriage return typed?
2428 003035' 254 00 0 00 003045' JRST FINCMC ; yes - exit valid command in AC0
2429 003036' 350 00 0 00 000001 AOS 1 ; increment byte count
2430 003037' 303 00 0 00 000140 CAILE 140 ; lowercase?
2431 003040' 275 00 0 00 000040 SUBI 40 ; yes - make into upper case
2432 003041' 275 00 0 00 000040 SUBI 40 ; convert to sixbit
2433 003042' 307 01 0 00 000006 CAIG 1,6 ; exceed 6 characters?
2434 003043' 136 00 0 00 000002 IDPB 2 ; no - save sixbit byte
2435 003044' 254 00 0 00 003026' JRST FINCM0 ; get next character
2436
2437 ; Exit with command in AC0
2438
2439 003045' 202 00 0 00 030231 FINCMC: MOVEM $TTCHR ; save last character typed
2440 003046' 306 00 0 00 000015 CAIN 15 ; carriage return?
2441 GO [GO CHRINS ; yes - strip off the line feed also
2442 JFCL
2443 003047' 260 17 0 00 005717' RTN]
2444 003050' 200 00 0 00 006077' MOVE FINSIX ; get sixbit command
2445 003051' 350 00 0 17 777776 AOS -2(P) ; set up return + 1
2446 003052' 262 17 0 00 000002 RGET (2,1) ; restore AC's
2447
2448 003054' 263 17 0 00 000000 RTN ; return
2449
2450 ; Exit with error or EOF condition
2451
2452 003055' 260 17 0 00 003004' FINCMX: GO FIOFF ; clear 'file input' switch
2453 003056' 400 00 0 00 000000 SETZ 0, ; clear command typed
2454 003057' 262 17 0 00 000002 RGET (2,1) ; restore AC's
2455
2456 003061' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 59
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1044
2457
2458 ;#********************************************************************
2459 ;* FSARG - Input a sixbit argument from a file
2460 ;
2461 ; Return +1 - Error/EOF
2462 ; +2 - Sixbit word in AC0
2463 ;#********************************************************************
2464
2465 003062' 261 17 0 00 000001 FSARG: RPUT (1,2) ; save AC's
2466
2467 003064' 402 00 0 00 006077' SETZM FINSIX ; initialize word
2468 003065' 400 01 0 00 000000 SETZ 1, ; byte count
2469 003066' 200 02 0 00 005716' MOVE 2,[POINT 6,FINSIX] ; initial byte pointer
2470
2471 003067' 260 17 0 00 000743' FSARG0: GO CHRINS ; get a character
2472 003070' 254 00 0 00 003116' JRST FSARGX ; exit - error or EOF occurred
2473 003071' 306 00 0 00 000040 CAIN " " ; space typed?
2474 003072' 254 00 0 00 003106' JRST FSARGC ; yes - exit valid command in AC0
2475 003073' 306 00 0 00 000054 CAIN "," ; comma typed?
2476 003074' 254 00 0 00 003106' JRST FSARGC ; yes - exit valid command in AC0
2477 003075' 306 00 0 00 000015 CAIN 15 ; carriage return typed?
2478 003076' 254 00 0 00 003106' JRST FSARGC ; yes - exit valid command in AC0
2479 003077' 350 00 0 00 000001 AOS 1 ; increment byte count
2480 003100' 303 00 0 00 000140 CAILE 140 ; lowercase?
2481 003101' 275 00 0 00 000040 SUBI 40 ; yes - make into upper case
2482 003102' 275 00 0 00 000040 SUBI 40 ; convert to sixbit
2483 003103' 307 01 0 00 000006 CAIG 1,6 ; exceed 6 characters?
2484 003104' 136 00 0 00 000002 IDPB 2 ; no - save sixbit byte
2485 003105' 254 00 0 00 003067' JRST FSARG0 ; get next character
2486
2487 ; Exit with command in AC0
2488
2489 003106' 202 00 0 00 030231 FSARGC: MOVEM $TTCHR ; save last character typed
2490 003107' 306 00 0 00 000015 CAIN 15 ; carriage return?
2491 GO [GO CHRINS ; yes - strip off the line feed also
2492 JFCL
2493 003110' 260 17 0 00 005717' RTN]
2494 003111' 200 00 0 00 006077' MOVE FINSIX ; get sixbit command
2495 003112' 350 00 0 17 777776 AOS -2(P) ; set up return + 1
2496 003113' 262 17 0 00 000002 RGET (2,1) ; restore AC's
2497
2498 003115' 263 17 0 00 000000 RTN ; return
2499
2500 ; Exit with error or EOF condition
2501
2502 003116' 260 17 0 00 003004' FSARGX: GO FIOFF ; clear 'file input' switch
2503 003117' 400 00 0 00 000000 SETZ 0, ; clear command typed
2504 003120' 262 17 0 00 000002 RGET (2,1) ; restore AC's
2505
2506 003122' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 60
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1045
2507
2508 ;#********************************************************************
2509 ;* FOARG - Input a octal argument from a file
2510 ;
2511 ; Return +1 - Error/EOF
2512 ; +2 - Octal data in AC0
2513 ;#********************************************************************
2514
2515 003123' 261 17 0 00 000001 FOARG: RPUT (1,2,3) ; save AC's
2516
2517 003126' 400 01 0 00 000000 SETZ 1, ; initialize byte count
2518 003127' 403 02 0 00 000003 SETZB 2,3 ; initialize octal and decimal result
2519 003130' 476 00 0 00 006100' SETOM FOFLAG# ; set 'octal' flag
2520 003131' 260 17 0 00 000743' FOARG0: GO CHRINS ; get a character
2521 003132' 254 00 0 00 003177' JRST FOARGX ; exit - error or EOF occurred
2522 003133' 306 00 0 00 000040 CAIN " " ; space typed?
2523 003134' 254 00 0 00 003163' JRST FOARGC ; yes - exit valid command in AC0
2524 003135' 306 00 0 00 000054 CAIN "," ; comma typed?
2525 003136' 254 00 0 00 003163' JRST FOARGC ; yes - exit valid command in AC0
2526 003137' 306 00 0 00 000015 CAIN 15 ; carriage return typed?
2527 003140' 254 00 0 00 003163' JRST FOARGC ; yes - exit valid command in AC0
2528 003141' 306 00 0 00 000056 CAIN "." ; decimal point typed?
2529 003142' 402 00 0 00 006100' SETZM FOFLAG ; yes - clear octal flag
2530 003143' 306 00 0 00 000056 CAIN "." ; decimal point typed?
2531 003144' 254 00 0 00 003131' JRST FOARG0 ; yes - keep looking for delimiter
2532 003145' 350 00 0 00 000001 AOS 1 ; increment byte count
2533 003146' 303 01 0 00 000014 CAILE 1,^D12 ; exceed 12 digits?
2534 003147' 254 00 0 00 003177' JRST FOARGX ; yes - exit - error
2535 003150' 275 00 0 00 000060 SUBI 60 ; convert to octal 0..n
2536 003151' 331 00 0 00 000000 SKIPL 0 ; decimal or octal?
2537 003152' 303 00 0 00 000011 CAILE ^D9 ; (between 0 and 9)
2538 003153' 254 00 0 00 003177' JRST FOARGX ; no - exit - error
2539 003154' 221 02 0 00 000012 IMULI 2,^D10 ; update decimal number
2540 003155' 272 00 0 00 000002 ADDM 2 ; ...
2541 003156' 242 03 0 00 000003 LSH 3,3 ; update octal number
2542 003157' 272 00 0 00 000003 ADDM 3 ; ...
2543 003160' 303 00 0 00 000007 CAILE 7 ; decimal number?
2544 003161' 402 00 0 00 006100' SETZM FOFLAG ; yes - clear octal flag
2545 003162' 254 00 0 00 003131' JRST FOARG0 ; get next character
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 61
DFCIAU MAC 6-Aug-83 09:31 Miscellaneous Routines SEQ 1046
2546
2547 ; Exit with command in AC0
2548
2549 003163' 476 00 0 00 030510 FOARGC: SETOM TTNBRF ; indicate that a number was typed
2550 003164' 202 00 0 00 030231 MOVEM $TTCHR ; save last character typed
2551 003165' 306 00 0 00 000015 CAIN 15 ; carriage return?
2552 GO [GO CHRINS ; yes - strip off the line feed also
2553 JFCL
2554 003166' 260 17 0 00 005717' RTN]
2555 003167' 200 00 0 00 000002 MOVE 2 ; get decimal number
2556 003170' 332 00 0 00 006100' SKIPE FOFLAG ; octal number?
2557 003171' 200 00 0 00 000003 MOVE 3 ; yes - get octal number
2558 003172' 350 00 0 17 777775 AOS -3(P) ; set up return + 1
2559 003173' 262 17 0 00 000003 RGET (3,2,1) ; restore AC's
2560
2561 003176' 263 17 0 00 000000 RTN ; return
2562
2563 ; Exit with error or EOF condition
2564
2565 003177' 260 17 0 00 003004' FOARGX: GO FIOFF ; clear 'file input' switch
2566 003200' 400 00 0 00 000000 SETZ 0, ; clear command typed
2567 003201' 262 17 0 00 000003 RGET (3,2,1) ; restore AC's
2568
2569 003204' 263 17 0 00 000000 RTN ; return
2570
2571
2572 ;#********************************************************************
2573 ;* FEOL - Skip characters until end of line is reached
2574 ;#********************************************************************
2575
2576 003205' 261 17 0 00 000000 FEOL: PUT 0 ; save AC0
2577 003206' 260 17 0 00 000743' FEOL0: GO CHRINS ; get a character
2578 003207' 254 00 0 00 003212' JRST FEOLX ; error/EOF - exit
2579 003210' 302 00 0 00 000012 CAIE 12 ; LF yet?
2580 003211' 254 00 0 00 003206' JRST FEOL0 ; no - keep looking
2581 003212' 262 17 0 00 000000 FEOLX: GET 0 ; restore AC0
2582 003213' 263 17 0 00 000000 RTN ; return
2583
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 62
DFCIAU MAC 6-Aug-83 09:31 Scope Looping And Error Reporting Routine SEQ 1047
2584 SUBTTL Scope Looping And Error Reporting Routine
2585
2586 ;#*********************************************************************
2587 ;* SCOPE1 - Error reporter and scope loop controller
2588 ;
2589 ; This routine is responsible for error reporting and scope looping.
2590 ; Error looping and print options are controlled by switches.
2591 ;
2592 ; Switch Options:
2593 ; --------------
2594 ;
2595 ; DING - 0 No bell on error
2596 ; 1 Ring bell on error (forced)
2597 ;
2598 ; LOOPER - 0 Proceed on error
2599 ; 1 Loop on first occurence of an error
2600 ;
2601 ; ERSTOP - 0 Don't halt on error
2602 ; 1 Halt on error (exec mode only)
2603 ;
2604 ; PALERS - 0 Print error data on first occurance of error only
2605 ; 1 Print error data for all repetitive errors
2606 ;
2607 ; The following two locations should be initialized by the mainline to 0
2608 ; at the start of each test: ERFLG Error/no-error flag
2609 ; ERCNT A local error counter
2610 ; ERRPC PC of last error
2611 ;
2612 ; The scope/error handler is called by executing a UUO whose E-field is a
2613 ; pointer to additional error information. The UUO has a skip and non-skip
2614 ; return to provide the necessary looping capabilities. The non-skip
2615 ; return is the loop on error return and the skip return is the continue
2616 ; test (or no error) return. Pgm branching is accomplished by placing
2617 ; appropriate JRSTs in the return locations.
2618 ;
2619 ; Example: CONSZ DEV,ARG ; test instruction
2620 ; ------- SETOM ERFLG ; detected an error
2621 ; SCOPE TAG ; call the routine via UUO
2622 ; JRST ERADR ; loop return
2623 ; JRST OKADR ; continue return
2624 ;
2625 ; TAG: Cntrl Bits,,ADDR ; variable # of error descriptor
2626 ; Cntrl Bits,,ADDR ; entries
2627 ; ...
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 63
DFCIAU MAC 6-Aug-83 09:31 Scope Looping And Error Reporting Routine SEQ 1048
2628
2629 ; Each word specifies messages or print routines. Each message printed
2630 ; is followed by a CRLF. The right half of each word is a pointer to the
2631 ; start of the ASCIZ message or print routine. The left half furnishes
2632 ; message control information to SCOPE, decoded as follows:
2633 ;
2634 ; 1B2 (MSG) - Right half of word is address of an ASCIZ message.
2635 ;
2636 ; 2B2 (CALL) - Right half of word is address of a special print
2637 ; routine. SCOPE saves AC's 0,1,2,3 so this routine
2638 ; does not have to preserve these.
2639 ;
2640 ; 3B2 (GOTO) - Right half of word is address where to resume this
2641 ; error descriptor table.
2642 ;
2643 ; 1B3 (TXNOT) - Print/call entry if TXTINH not set
2644 ;
2645 ; 1B4 (TXYES) - Print/call entry if TXTINH set
2646 ;
2647 ; 3B4 (TXALL) - Print/call entry always
2648 ;
2649 ; 1B5 (LAST) - Right half of word is address of an ASCIZ message.
2650 ;
2651 ; These bits allows short and normal printout modes, branching, and two
2652 ; level module callout priority.
2653 ;
2654 ; Example: (TXTINH is not set)
2655 ;
2656 ; +-+-+-+-+-+-+
2657 ; ERROR: TEST-XXX (Ebus test)
2658 ; SCOPE PC = XXXXXX TEST PC = XXXXXX SWITCHES = XXXXXX XXXXXX
2659 ; Error description ...
2660 ; Error description ...
2661 ; ...
2662 ; -------------
2663 ;
2664 ; Example: (TXTINH is set)
2665 ;
2666 ; +-+-+-+-+-+-+
2667 ; ERROR: TST-XXX SCOPE PC-XXXXXX SW-XXXXXX XXXXXX
2668 ; Error description ...
2669 ; Error description ...
2670 ; ...
2671 ; -------------
2672 ;
2673 ; NOTE: If the diagnostic is in debug mode (UDEBUG switch set), no error
2674 ; messages are normally printed. With MDEBUG switch set, the error flag
2675 ; is set thereby causing each error message to be printed.
2676 ;#*********************************************************************
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 64
DFCIAU MAC 6-Aug-83 09:31 Scope Looping And Error Reporting Routine SEQ 1049
2677
2678 003214' 261 17 0 00 030114 SCOPE1: PUT $SVUPC ; save the UUO PC
2679 003215' 261 17 0 00 030113 PUT $SVUUO ; save the actual UUO
2680 003216' 261 17 0 00 000000 RPUT (0,1,2) ; save some AC's
2681
2682
2683 ; The stack now looks like this:
2684 ;
2685 ; -5(P) The return addr for SCOPE UUO
2686 ; -4(P) The address from which the SCOPE UUO was called
2687 ; -3(P) The actual UUO that was executed "SCOPE"
2688 ; -2(P) AC0 from before the UUO
2689 ; -1(P) AC1 from before the UUO
2690 ; 0(P) AC2 from before the UUO
2691
2692 ; Get switches
2693
2694 003221' 260 17 0 00 001640' GO SWITT ; get switches
2695 003222' 202 00 0 00 006112' MOVEM SCOSW# ; save switches
2696
2697 ; Handle SPEAR error report
2698
2699 003223' 332 00 0 00 000015 SKIPE ERFLG ; error occurred?
2700 003224' 260 17 0 00 000000* GO SPREP2 ; yes - report it
2701
2702 ; Handle debug printout / error handling
2703
2704 003225' 332 00 0 00 000000* SKIPE UDEBUG ; no-IPA debug mode?
2705 003226' 400 15 0 00 000000 SETZ ERFLG, ; yes - clear error flag
2706 003227' 332 00 0 00 000000* SKIPE MDEBUG ; error message debug mode?
2707 003230' 474 15 0 00 000000 SETO ERFLG, ; yes - set error flag
2708
2709 ; Update scope PC
2710
2711 003231' 550 00 0 17 777774 HRRZ -4(P) ; get PC of the scope call
2712 003232' 202 00 0 00 006111' MOVEM SCOPC# ; save it (scope PC)
2713
2714 ; Error occurred?
2715
2716 003233' 322 15 0 00 003273' JUMPE ERFLG,SCOP4 ; an error occurred? - no check looping
2717
2718 ; Error did occur - update error PC / print error message
2719
2720 003234' 316 00 0 00 030052 CAMN ERRPC ; error has already occurred here?
2721 003235' 254 00 0 00 003243' JRST SCOP0 ; yes - go check if print
2722 003236' 200 00 0 00 006111' MOVE SCOPC ; get scope PC
2723 003237' 202 00 0 00 030052 MOVEM ERRPC ; save as error PC
2724 003240' 200 00 0 00 000614* MOVE TSTSUB ; get current offset
2725 003241' 202 00 0 00 003510' MOVEM SCOOFF ; save as error offset
2726 003242' 254 00 0 00 003251' JRST SCOP2 ; go print error
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 65
DFCIAU MAC 6-Aug-83 09:31 Scope Looping And Error Reporting Routine SEQ 1050
2727
2728 ; Must also check if this is a multiple error from a execute table. Check
2729 ; TSTSUB against SCOOFF - if different then it is not a repeat error.
2730
2731 003243' 200 00 0 00 003510' SCOP0: MOVE SCOOFF ; last offset presented to SCOPE
2732 003244' 312 00 0 00 003240* CAME TSTSUB ; same as current offset?
2733 003245' 254 00 0 00 003251' JRST SCOP2 ; yes - go check if print
2734
2735 ; This is a repeat error here, check if print all errors
2736
2737 003246' 200 00 0 00 006112' SCOP1: MOVE SCOSW ; get switches
2738 003247' 607 00 0 00 001000 TLNN PALERS ; print all errors?
2739 003250' 254 00 0 00 003261' JRST SCOP3 ; no - go ring bell/error halt
2740
2741 ; Print error message
2742
2743 003251' 200 00 0 00 006112' SCOP2: MOVE SCOSW ; get switches
2744 003252' 602 00 0 00 100000 TRNE INHMSG ; inhibit error messages?
2745 003253' 254 00 0 00 003261' JRST SCOP3 ; yes - skip this
2746 003254' 260 17 0 00 003360' GO ERHDR ; print the standard error heading
2747 003255' 550 01 0 17 777775 HRRZ 1,-3(P) ; get the e-field of the UUO
2748 003256' 332 00 0 00 000001 SKIPE 1 ; table address given?
2749 003257' 260 17 0 00 003441' GO ERPNT ; yes - go handle error table
2750 003260' 037 00 0 00 005722' TMSGCD <------------->
2751
2752 ; Handle bell and error halt functions.
2753
2754 003261' 200 00 0 00 006112' SCOP3: MOVE SCOSW ; get switches
2755 003262' 603 00 0 00 010000 TLNE DING ; ding set?
2756 003263' 037 01 0 00 000007 PBELL ; yes - do it
2757 003264' 200 00 0 00 006112' MOVE SCOSW ; get switches
2758 003265' 607 00 0 00 002000 TLNN ERSTOP ; halt on error?
2759 003266' 254 00 0 00 003273' JRST SCOP4 ; no - continue
2760 003267' 332 00 0 00 030037 SKIPE USER ; user mode?
2761 003270' 476 00 0 00 000000* SETOM ALTF ; yes - set abort flag
2762 003271' 336 00 0 00 030037 SKIPN USER ; user mode?
2763 003272' 037 14 0 00 000004 ERRHLT ; yes - halt
2764
2765 ; Error reporting (if any) is done. Now check loop on error switch.
2766
2767 003273' 200 00 0 00 006112' SCOP4: MOVE SCOSW ; get switches
2768 003274' 607 00 0 00 004000 TLNN LOOPER ; loop on error?
2769 003275' 254 00 0 00 003323' JRST SCOPXX ; no - exit +2/3
2770 003276' 326 15 0 00 003304' JUMPN ERFLG,SCOPX1 ; yes - error - yes - exit +1 (loop)
2771
2772 ; Error looping is enabled, but error flag was not set. First check if we
2773 ; are at the same place as the last error - if not, exit +3 because it is
2774 ; not yet time to loop. If yes, exit +1, loop on error.
2775
2776 003277' 200 00 0 00 006111' MOVE SCOPC ; get scope PC and see if this is
2777 003300' 315 00 0 00 030052 CAMGE ERRPC ; earlier than the error PC?
2778 003301' 254 00 0 00 003323' JRST SCOPXX ; earlier - exit +3
2779 003302' 336 00 0 00 030052 SKIPN ERRPC ; no error yet at all?
2780 003303' 254 00 0 00 003323' JRST SCOPXX ; no - exit +3
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 66
DFCIAU MAC 6-Aug-83 09:31 Scope Looping And Error Reporting Routine SEQ 1051
2781
2782 ; Exit +1 (loop return)
2783
2784 003304' 037 07 0 00 000003 SCOPX1: TTALTM ; see if opr wants to abort
2785 003305' 334 00 0 00 000000 SKIPA ; no - continue
2786 003306' 254 00 0 00 003330' JRST SCOPX2 ; yes - altmode exit
2787 003307' 332 00 0 00 003270* SKIPE ALTF ; 'altmode typed' flag set?
2788 003310' 254 00 0 00 003330' JRST SCOPX2 ; yes - altmode exit
2789 003311' 336 00 0 00 006106' SKIPN LCHAR ; last character in here already?
2790 003312' 202 00 0 00 006106' MOVEM LCHAR ; no - save 'last char typed'
2791 003313' 200 00 0 00 006111' MOVE SCOPC ; get scope PC
2792 003314' 202 00 0 00 030052 MOVEM ERRPC ; update error PC
2793 003315' 262 17 0 00 000002 RGET (2,1,0,$SVUUO,$SVUPC) ; restore things
2794
2795 003322' 263 17 0 00 000000 RTN ; exit
2796
2797 ; Exit +2/3 (altmode return / normal return)
2798
2799 003323' 037 07 0 00 000003 SCOPXX: TTALTM ; see if opr wants to abort
2800 003324' 334 00 0 00 000000 SKIPA ; no - continue
2801 003325' 254 00 0 00 003330' JRST SCOPX2 ; yes - altmode exit
2802 003326' 336 00 0 00 003307* SKIPN ALTF ; 'altmode typed' flag set?
2803 003327' 254 00 0 00 003340' JRST SCOPX3 ; no - exit +3 (normal return)
2804
2805 ; Altmode return
2806
2807 003330' 262 17 0 00 000002 SCOPX2: RGET (2,1,0,$SVUUO,$SVUPC) ; restore things
2808
2809 003335' 350 00 0 17 000000 AOS (P) ; set up return +1
2810 003336' 476 00 0 00 003326* SETOM ALTF ; set 'altmode typed' flag
2811 003337' 263 17 0 00 000000 RTN ; exit
2812
2813 ; Normal return - also check for S typed
2814
2815 003340' 336 00 0 00 006106' SCOPX3: SKIPN LCHAR ; last character in here already?
2816 003341' 202 00 0 00 006106' MOVEM LCHAR ; no - save 'last char typed'
2817 003342' 260 17 0 00 000575' GO PSTAMP ; check for S typed
2818 003343' 200 00 0 00 006112' MOVE SCOSW ; get switches
2819 003344' 602 00 0 00 010000 TRNE RUNALL ; run all test segments?
2820 003345' 400 15 0 00 000000 SETZ ERFLG, ; yes - clear error flag
2821 003346' 602 00 0 00 001000 TRNE DEBUG2 ; error message debug?
2822 003347' 400 15 0 00 000000 SETZ ERFLG, ; yes - clear error flag
2823 003350' 262 17 0 00 000002 RGET (2,1,0,$SVUUO,$SVUPC) ; restore things
2824
2825 003355' 350 00 0 17 000000 AOS (P) ; set up return +3
2826 003356' 350 00 0 17 000000 AOS (P) ; set up return +3
2827 003357' 263 17 0 00 000000 RTN ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 67
DFCIAU MAC 6-Aug-83 09:31 Scope Looping And Error Reporting Routine SEQ 1052
2828
2829 ;#********************************************************************
2830 ; ERHDR - Print the standard header messages
2831 ;#********************************************************************
2832
2833 003360' 037 01 0 00 000026 ERHDR: PFORCE ; handle Control-O
2834 003361' 037 00 0 00 005726' TMSGC <+-+-+-+-+-+-+>
2835 003362' 332 00 0 00 000000* SKIPE EDEBUG ; expanded data switch set?
2836 GO [TMSGC <Port-> ; yes - print what port
2837 LDB [POINT 3,MBCN,9]; this is
2838 PNT2
2839 TMSG < Node->
2840 MOVE CPORT
2841 PNT2
2842 PSP
2843 MOVEI 1,.PRIOU
2844 SETO 2,
2845 MOVE 3,[220101,,0]
2846 SKIPE USER
2847 ODTIM
2848 003363' 260 17 0 00 005740' RTN]
2849 003364' 037 00 0 00 005755' TMSGC <Error: >
2850 003365' 260 17 0 00 000000* GO TSTPNT ; print test number
2851 003366' 200 00 0 00 006112' MOVE SCOSW ; get switches
2852 003367' 603 00 0 00 000200 TLNE TXTINH ; short printout desired?
2853 003370' 254 00 0 00 003415' JRST ERSHRT ; yes - go handle
2854
2855 ; Regular format error header
2856
2857 003371' 037 00 0 00 005760' ERNRML: TMSGC <Error PC = >
2858 003372' 550 00 0 17 777772 HRRZ -6(P) ; get adr where SCOPE was called
2859 003373' 274 00 0 00 000000* SUB TSTOFF ; normalize to relocatable address
2860 003374' 037 16 0 00 000003 PNTOCS ; print it
2861 003375' 037 00 0 00 005763' TMSG <'>
2862 003376' 336 00 0 00 000623* SKIPN TSTREP ; pass 1?
2863 003377' 254 00 0 00 003404' JRST ERNRM0 ; yes - don't print pass #
2864 003400' 037 00 0 00 005764' TMSG < Pass >
2865 003401' 200 00 0 00 003376* MOVE TSTREP ; get pass count
2866 003402' 350 00 0 00 000000 AOS
2867 003403' 037 15 0 00 000000 PNTDEC ; print it
2868 003404' 037 00 0 00 005766' ERNRM0: TMSG < Switches = >
2869 003405' 200 00 0 00 006112' MOVE SCOSW ; get switches
2870 003406' 037 13 0 00 000000 PNTHW ; print
2871 003407' 335 00 0 00 000000* SKIPGE UVERSN ; using operational microcode?
2872 003410' 263 17 0 00 000000 RTN ; no - exit
2873 003411' 037 00 0 00 005771' TMSG < Ucode version > ; yes - print out the version
2874 003412' 200 00 0 00 003407* MOVE UVERSN ; get version number
2875 003413' 037 16 0 00 000003 PNTOCS ; print it
2876 003414' 263 17 0 00 000000 RTN ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 68
DFCIAU MAC 6-Aug-83 09:31 Scope Looping And Error Reporting Routine SEQ 1053
2877
2878 ; Short format error header
2879
2880 003415' 037 00 0 00 005775' ERSHRT: TMSG < Error PC >
2881 003416' 550 00 0 17 777772 HRRZ -6(P) ; pick up error PC
2882 003417' 274 00 0 00 003373* SUB TSTOFF ; normalize to relocatable address
2883 003420' 037 16 0 00 000003 PNTOCS ; print the error PC
2884 003421' 037 00 0 00 005763' TMSG <'>
2885 003422' 336 00 0 00 003401* SKIPN TSTREP ; pass 1?
2886 003423' 254 00 0 00 003430' JRST ERSHR0 ; yes - don't print pass #
2887 003424' 037 00 0 00 005764' TMSG < Pass >
2888 003425' 200 00 0 00 003422* MOVE TSTREP ; get pass count
2889 003426' 350 00 0 00 000000 AOS
2890 003427' 037 15 0 00 000000 PNTDEC ; print it
2891 003430' 037 00 0 00 006000' ERSHR0: TMSG < SW >
2892 003431' 200 00 0 00 006112' MOVE SCOSW ; get switches
2893 003432' 037 13 0 00 000000 PNTHW ; print
2894 003433' 335 00 0 00 003412* SKIPGE UVERSN ; using operational microcode?
2895 003434' 263 17 0 00 000000 RTN ; no - exit
2896 003435' 037 00 0 00 006002' TMSG < uVER > ; yes - print out the version
2897 003436' 200 00 0 00 003433* MOVE UVERSN ; get version number
2898 003437' 037 16 0 00 000003 PNTOCS ; print it
2899 003440' 263 17 0 00 000000 RTN ; exit
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 69
DFCIAU MAC 6-Aug-83 09:31 Scope Looping And Error Reporting Routine SEQ 1054
2900
2901 ;#********************************************************************
2902 ; ERPNT - Print error description based on error descriptor table
2903 ;#********************************************************************
2904
2905 003441' 202 01 0 00 006076' ERPNT: MOVEM 1,ERDES# ; save addr of error descriptor table
2906 003442' 336 01 1 00 006076' ERPN0: SKIPN 1,@ERDES ; get entry - zero?
2907 003443' 263 17 0 00 000000 RTN ; yes - exit
2908
2909 003444' 350 00 0 00 006076' AOS ERDES ; update to point at next one
2910 003445' 135 02 0 00 006004' LDB 2,[POINT 3,1,2] ; get entry type
2911 GO @[ERPNE ; yes - dispatch
2912 ERPNM ; handle message
2913 ERPNC ; handle call
2914 ERPNG ; handle goto
2915 ERPNE ; out of range
2916 ERPNE ; out of range
2917 ERPNE ; out of range
2918 003446' 260 17 1 02 006005' ERPNE](2) ; out of range
2919 003447' 607 01 0 00 010000 TLNN 1,(LAST) ; last entry?
2920 003450' 254 00 0 00 003442' JRST ERPN0 ; no - get next entry
2921 003451' 263 17 0 00 000000 RTN ; yes - return
2922
2923 ; Error (entry type out of range)
2924
2925 003452' 037 00 0 00 006015' ERPNE: TMSGC <? Error descriptor entry type out of range>
2926 003453' 263 17 0 00 000000 RTN ; return
2927
2928 ; Handle message
2929
2930 003454' 200 00 0 00 006112' ERPNM: MOVE SCOSW ; get switches
2931 003455' 603 00 0 00 000200 TLNE TXTINH ; text inhibit set?
2932 PJRST [TLNN 1,(TXYES) ; yes - print it?
2933 JRST .+1 ; no - exit
2934 PCRL ; yes - print it
2935 PNTMSG @1 ; and return
2936 003456' 254 00 0 00 006026' RTN]
2937 003457' 607 00 0 00 000200 TLNN TXTINH ; text inhibit set?
2938 PJRST [TLNN 1,(TXNOT) ; no - print it?
2939 RTN ; no - return
2940 PCRL ; yes - print it
2941 PNTMSG @1 ; and return
2942 003460' 254 00 0 00 006033' RTN]
2943 003461' 263 17 0 00 000000 RTN ; return
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page 70
DFCIAU MAC 6-Aug-83 09:31 Scope Looping And Error Reporting Routine SEQ 1055
2944
2945 ; Handle goto
2946
2947 003462' 552 02 0 00 006076' ERPNG: HRRZM 2,ERDES ; update table address
2948 003463' 263 17 0 00 000000 RTN ; exit
2949
2950 ; Handle call
2951
2952 003464' 200 00 0 00 006112' ERPNC: MOVE SCOSW ; get switches
2953 003465' 603 00 0 00 000200 TLNE TXTINH ; text inhibit set?
2954 JRST [TLNN 1,(TXYES) ; yes - call routine?
2955 JRST .+1 ; no - exit
2956 003466' 254 00 0 00 006040' JRST ERPNCG] ; yes - call routine
2957 003467' 607 00 0 00 000200 TLNN TXTINH ; text inhibit set?
2958 PJRST [TLNN 1,(TXNOT) ; no - call routine?
2959 RTN ; no - return
2960 003470' 254 00 0 00 006043' JRST ERPNCG] ; yes - call routine
2961 003471' 263 17 0 00 000000 RTN ; return
2962 003472' 261 17 0 00 000000 ERPNCG: RPUT (0,1,2,3,4,5) ; save some AC's
2963
2964 003500' 260 17 1 00 000001 GO @1 ; call the routine
2965 003501' 262 17 0 00 000005 RGET (5,4,3,2,1,0) ; restore AC's
2966
2967 003507' 263 17 0 00 000000 RTN ; exit
2968
2969 ; Miscellaneous (used for tests that have an execute table)
2970
2971 003510' 000000 000000 SCOOFF: 0 ; error offset
2972
2973
2974 ;#********************************************************************
2975 ; End Stmt for DFCIAU.MAC module
2976 ;#********************************************************************
2977
2978 XLIST
2979
NO ERRORS DETECTED
PROGRAM BREAK IS 006121
CPU TIME USED 00:11.983
82P CORE USED
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page S-1
DFCIAU MAC 6-Aug-83 09:31 SYMBOL TABLE SEQ 1056
ABUFF 006072' DISMS 104000 000167 int FSARGC 003106' PDECF0 000377'
ALTCHH 000031' ent DROPDV 037240 000002 FSARGX 003116' PDECFS 000407'
ALTCHK 007000 000000 EDEBUG 003362' ext FSKIPC 001050' PDECSS 000361'
ALTCHX 000042' ERCAL 320740 000000 int GENFLG 006102' PFORCE 037040 000026
ALTF 005661' ext ERDES 006076' GENREP 006103' PJRST 254000 000000
ALTMGO 030063 ERFLG 000015 GENTYP 006104' PNT2 037100 000000
ARGFLG 002732' int ERHDR 003360' GET 262740 000000 PNTCHF 037500 000001
ARGUM 002731' int ERNRM0 003404' GETLOG 002365' ext PNTCIF 037040 000000
BUFCOM 001103' ent ERNRML 003371' GO 260740 000000 PNTDCF 037640 000001
BUFG0 001134' ERPN0 003442' HALTF 104000 000170 int PNTDEC 037640 000000
BUFG1 001143' ERPNC 003464' INHMSG 100000 spd PNTDS 037700 000000
BUFG2 001150' ERPNCG 003472' INITM 006105' PNTDSF 037700 000001
BUFGEN 001112' ent ERPNE 003452' ITRCH1 030104 PNTHW 037540 000000
BUFGX 001156' ERPNG 003462' JEN 254500 000000 PNTHWF 037540 000001
BUFGXY 001170' ERPNM 003454' KLFLG 030041 PNTMSF 037040 000000
BUFGXZ 001172' ERPNT 003441' LASAR0 002770' PNTMSG 037000 000000
CADDR 000777' ext ERRHLT 037600 000004 LASAR1 002774' PNTOCF 037740 000003
CFIBF 104000 000100 ERRPC 030052 LASARA 003000' PNTOCS 037700 000003
CHKAR0 002744' ERSHR0 003430' LASARG 002757' ent PNTSXF 037040 000002
CHKARA 002753' ERSHRT 003415' LASARX 002776' PPDEC 000342' ent
CHKARG 002733' ent ERSTOP 002000 spd LAST 010000 000000 spd PPDECF 000370' ent
CHKARX 002752' EXT10 000732' LCHAR 006106' int PSDN 000105' ent
CHKARY 002750' EXTX 000734' LOGPNT 002366' ext PSDNF 000113'
CHRIN 000736' FEOL 003205' LOOPER 004000 spd PSP 037000 000040
CHRINS 000743' FEOL0 003206' MAXPAT 000127 spd PSTAM0 000611'
CHRINX 000755' FEOLX 003212' MAXTIM 000572' int PSTAMP 000575' ent
CLRBFI 051440 000000 FFF 002400' ext MBCN 000016 PSTAMX 000627'
CLRBUF 000045' ent FGETA 001034' MDEBUG 003227' ext PTIME 000463' ent
CLS10 000715' FGETA0 001035' MONTI0 000450' PTIMEF 000471'
CLSX 000717' FGETAE 001046' MONTI1 000453' PUT 261740 000000
CLZFF 104000 000034 int FGETD 001056' MONTIM 000441' ent RADLSC 030264
CONSW 030046 FGETD0 001062' MONTYP 030516 RANDBS 030022
CONSWW 006073' FGETD1 001077' ODTIM 104000 000220 int RDCSR 002357' ext
CONVS0 000006' FGETDE 001100' OLDRAN 006107' RESET 104000 000147 int
CONVS1 000022' FGETW 000767' ent P 000017 RST10 000700'
CONVSE 000017' FGETWE 001030' PALERS 001000 spd RSTX 000702'
CONVSP 000027' FILLFP 000115 spd PARSER 002352' ent RTN 263740 000000
CONVSS 006074' FILLVP 000127 spd PAT 000014 RUNALL 010000 spd
CONVSX 000000' ent FINCM0 003026' PATADR 001400' RUNTM0 000507'
CORECT 002401' FINCMC 003045' PATBUF 001241' ent RUNTM1 000511'
CPORT 005744' ext FINCMD 003021' ent PATCN2 004014' spd RUNTM2 000540'
CURTIM 000571' int FINCMX 003055' PATCN3 004015' spd RUNTME 000477' ent
CWORDL 003754' ext FINECH 000751' ext PATCN4 004016' spd RUNTMX 000562'
CWORDN 006075' FINPUT 003016' ext PATCN6 001435' SAVSWW 006110'
CWORDR 003757' ext FINSIX 006077' PATCN7 001420' SCOOFF 003510' int
DATM0 001207' FIOFF 003004' ent PATCN8 001403' SCOP0 003243'
DATM1 001215' FOARG 003123' ent PATPNT 001451' ent SCOP1 003246'
DATMES 001201' FOARG0 003131' PATRA1 001374' SCOP2 003251'
DATMX 001234' FOARGC 003163' PATRAN 001371' SCOP3 003261'
DEBTIM 000573' int FOARGX 003177' PBELL 037040 000007 SCOP4 003273'
DEBUG2 001000 spd FOFLAG 006100' PCRL 037000 030242 SCOPC 006111'
DECERR 002647' FORPNT 006101' int PCRL2F 037040 030243 SCOPE1 003214' ent
DECLIS 002653' FREAD 037300 000004 PCRLF 037040 030242 SCOPX1 003304'
DECYN 002635' ent FSARG 003062' PDEC 006000 000000 SCOPX2 003330'
DING 010000 spd FSARG0 003067' PDEC0 000351' SCOPX3 003340'
.MAIN MACRO %53A(1152) 19:06 29-Oct-84 Page S-2
DFCIAU MAC 6-Aug-83 09:31 SYMBOL TABLE SEQ 1057
SCOPXX 003323' $TWCNT 030225 .SARG1 002526'
SCOSW 006112' int $TYPNB 030233 .SARGA 002551'
SPATAB 000163' .CGOT 002440' int .SARX1 002543'
SPREP2 003224' ext .CLOSE 000703' ent .SARX2 002542'
STCLOK 000416' ent .COMM 002414' ent .SLEFT 001717'
STCU 000430' .COMM0 002421' .SLF1 001726'
STCX 000434' .COMM1 002431' .SLF2 001737'
SWCHPT 002232' ent .COMM2 002445' .SLF3 001743'
SWCOM 002241' ent .COMM3 002457' .SLF4 001744'
SWCOM0 002260' .COMM4 002467' .SLF5 001751'
SWCOMP 002325' .COMM5 002475' .SLF6 002004'
SWCOMT 002300' .COMM6 002502' .SLFX 002010'
SWCOMX 002274' .CTBL 002443' .SRG2 002027'
SWITCH 037400 000002 .CTYP 002441' .SRG3 002040'
SWITT 001640' ent .DARG 002656' ent .SRG4 002043'
SWPSWW 006113' .DARG0 002671' .SRG5 002044'
SWRGT 001645' int .DARG1 002673' .SRG6 002053'
TAKFIL 003010' ext .DARGA 002717' .SRG6A 002101'
TIME 104000 000014 int .DARX1 002711' .SRG6B 002105'
TMRST1 000437' .DARX2 002710' .SRG7 002115'
TMRUN1 000567' .DELA0 000653' .SRGX 002121'
TPAT 004027' ext .DELA1 000660' .SRIGT 002020'
TSTNUM 000612' ext .DELAX 000662' .SWCH0 001616'
TSTOFF 003417' ext .DELAY 000636' ent .SWCH1 001626'
TSTPC 000000 ext .EXIT 000721' ent .SWCHP 001601' ent
TSTPNT 003365' ext .FHSLF 400000 sin .SWIN 002131'
TSTREP 003425' ext .ISWT 001646' ent .SWIN0 002137'
TSTSUB 003244' ext .ISWT2 001651' .SWPNT 001706'
TTALTM 037340 000003 .ISWT6 001662' .SWTXT 001714'
TTICNV 037240 000003 .ISWT7 001663'
TTIOCT 037140 000003 .ISWT8 001665'
TTNBRF 030510 .ISWTB 001667'
TTSIXB 037400 000003 .ISWTX 001670'
TTYINP 037440 000003 .ISWTY 001700'
TTYY0 000065' .ISWTZ 001703'
TTYY1 000067' .LSWIT 002154' int
TTYYES 000061' ent .LSWTN 002172'
TXNOT 040000 000000 spd .OARG 002562' ent
TXTINH 000200 spd .OARG0 002575'
TXYES 020000 000000 spd .OARG1 002577'
UDEBUG 003225' ext .OARGA 002623'
USER 030037 .OARX1 002615'
USTIM 000574' int .OARX2 002614'
UVERSN 003436' ext .PNTD0 000222'
VARPAT 006114' .PNTD1 000226'
VPATRN 000116 spd .PNTDC 000202' ent
WRDERR 006115' int .PNTDP 000262' ent
XX 006116' .PNTOC 000121' ent
XXT 006117' .PNTP0 000302'
XYZ 006120' .PNTP1 000306'
ZU 000000' .PRIOU 000101 sin
$CHRIN 030232 .RESET 000671' ent
$SVUPC 030114 .RSWIT 002210' int
$SVUUO 030113 .SARG 002511' ent
$TTCHR 030231 .SARG0 002524'
ABUFF 950# 950 1041 1894# 1894
ALTCHH 10 117# SEQ 1058
ALTCHX 120 123 127#
ALTF 48# 2015 2104 2223 2313 2359 2761 2787 2802 2810
ALTMGO 129 2015 2018 2067 2104 2107 2157 2223 2226 2276 2311 2316 2343 2357
2362 2386
ARGFLG 38 2022 2047 2050 2111 2137 2140 2230 2256 2259 2298# 2311 2357
ARGUM 38 2043 2128 2190 2247 2297#
BUFCOM 27 931#
BUFG0 959# 969
BUFG1 958 977#
BUFG2 985# 995
BUFGEN 27 938#
BUFGX 970 999#
BUFGXY 1002 1004 1009#
BUFGXZ 1000 1011#
CADDR 47# 828 833
CHKAR0 2323# 2335
CHKARA 2315 2331 2343#
CHKARG 37 2309#
CHKARX 2312 2322 2337 2342#
CHKARY 2326 2338 2340#
CHRIN 781# 783 834 870 882 900
CHRINS 792# 2421 2441 2471 2491 2520 2552 2577
CHRINX 794 803#
CLRBUF 9 136# 1555 1623 1666 1687
CLS10 735 740#
CLSX 739 742#
CONSW 1410 1468 1759 1800
CONSWW 1437# 1437 1457 1466 1523 1530 1545 1567 1569 1571 1573 1588 1595 1613
1641 1643 1645 1647
CONVS0 80# 88
CONVS1 81 98#
CONVSE 84 92#
CONVSP 78 80 104#
CONVSS 76# 76 77
CONVSX 10 74#
CORECT 1895 1899#
CPORT 49# 2840
CURTIM 15 561 621#
CWORDL 47# 829 840 843 847
CWORDN 1042# 1042
CWORDR 47# 830 850 853 856
DATM0 1023 1024#
DATM1 1031 1036#
DATMES 964 990 1020#
DATMX 1029 1032 1054#
DEBTIM 15 558 623# 677 681
DEBUG2 2821
DECERR 2194 2198#
DECLIS 2191 2202#
DECYN 37 2188#
DING 2755
EDEBUG 47# 2835
ERDES 2905# 2905 2906 2909 2947 SEQ 1059
ERFLG 2699 2705 2707 2716 2770 2820 2822
ERHDR 2746 2833#
ERNRM0 2863 2868#
ERNRML 2857#
ERPN0 2906# 2920
ERPNC 2913 2952#
ERPNCG 2956 2960 2962#
ERPNE 2911 2915 2916 2917 2918 2925#
ERPNG 2914 2947#
ERPNM 2912 2930#
ERPNT 2749 2905#
ERRPC 2720 2723 2777 2779 2792
ERSHR0 2886 2891#
ERSHRT 2853 2880#
ERSTOP 2758
EXT10 762 769#
EXTX 767 772#
FEOL 2321 2364 2576#
FEOL0 2577# 2580
FEOLX 2578 2581#
FFF 53# 1876 1889 1897
FGETA 831 869#
FGETA0 870# 875
FGETAE 871 877 879# 883
FGETD 838 841 844 851 854 876 896#
FGETD0 900# 912
FGETD1 903 905 913#
FGETDE 901 908 914#
FGETW 23 826#
FGETWE 832 835 839 842 845 852 855 858#
FILLFP 1145#
FILLVP 1173#
FINCM0 2421# 2435
FINCMC 2424 2426 2428 2439#
FINCMD 23 2415#
FINCMX 2422 2452#
FINECH 49# 798
FINPUT 49# 810 2027 2116 2235 2320 2363 2394 2404
FINSIX 2417# 2417 2419 2444 2467 2469 2494
FIOFF 37 2394# 2452 2502 2565
FOARG 23 2117 2236 2515#
FOARG0 2520# 2531 2545
FOARGC 2523 2525 2527 2549#
FOARGX 2521 2534 2538 2565#
FOFLAG 2519# 2519 2529 2544 2556
FORPNT 15 507# 507 514 579 581 584 586 592 594 596 598 604 606
608 610
FSARG 2028 2465#
FSARG0 2471# 2485
FSARGC 2474 2476 2478 2489#
FSARGX 2472 2502#
FSKIPC 873 882# 887
GENFLG 932# 932 938 960 962 986 988 999 SEQ 1060
GENREP 933# 933 935 1003 1022 1028
GENTYP 939# 939
GETLOG 53# 1886
INHMSG 2744
INITM 456# 456 491# 491 492# 492 493# 493
ITRCH1 1909
KLFLG 1888
LASAR0 2366# 2377
LASAR1 2369 2380 2382#
LASARA 2361 2386#
LASARG 37 2056 2146 2265 2355#
LASARX 2358 2365 2373 2379 2384#
LAST 2919
LCHAR 15 633# 633 658 2789 2790 2815 2816
LOGPNT 53# 1887
LOOPER 2768
MAXPAT 1177#
MAXTIM 15 622#
MBCN 2837
MDEBUG 47# 2706
MONTI0 483 488#
MONTI1 487 491#
MONTIM 14 457 481# 549
MONTYP 141 143 482 707 734 761
OLDRAN 1182# 1182 1187
P 101 174 188 197 213 214 260 261 307 308 784 796 797 857
878 913 1010 1667 1668 1669 1678 1688 1689 1784 1950 1988 1995 1996
2054 2058 2062 2063 2078 2144 2148 2152 2153 2168 2196 2197 2263 2267
2271 2272 2285 2330 2342 2384 2385 2445 2495 2558 2711 2747 2809 2825
2826 2858 2881
PALERS 2738
PARSER 37 1875#
PAT 940 943 957 959 977 1011
PATADR 1159 1192#
PATBUF 27 959 977 1067# 1145 1151 1170 1173 1177
PATCN2 1163# 1167
PATCN3 1164# 1168
PATCN4 1165# 1169
PATCN6 1169 1230#
PATCN7 1168 1214#
PATCN8 1167 1198#
PATPNT 27 1247#
PATRA1 1158 1185#
PATRAN 1158 1181#
PDEC0 356# 363
PDECF0 395# 402
PDECFS 394 402#
PDECSS 355 363#
PPDEC 10 351#
PPDECF 10 390#
PSDN 10 186#
PSDNF 195#
PSTAM0 635 637 643# SEQ 1061
PSTAMP 14 631# 2817
PSTAMX 639 658#
PTIME 14 505#
PTIMEF 512# 651
RADLSC 356 358 395 397
RANDBS 1185
RDCSR 53# 1880
RST10 708 712#
RSTX 711 714#
RUNALL 2819
RUNTM0 546 549#
RUNTM1 548 554#
RUNTM2 575 591#
RUNTME 14 508 515 540# 676 680
RUNTMX 613#
SAVSWW 1436# 1436 1470
SCOOFF 43 2725 2731 2971#
SCOP0 2721 2731#
SCOP1 2737#
SCOP2 2726 2733 2743#
SCOP3 2739 2745 2754#
SCOP4 2716 2759 2767#
SCOPC 2712# 2712 2722 2776 2791
SCOPE1 42 2678#
SCOPX1 2770 2784#
SCOPX2 2786 2788 2801 2807#
SCOPX3 2803 2815#
SCOPXX 2769 2778 2780 2799#
SCOSW 43 2695# 2695 2737 2743 2754 2757 2767 2818 2851 2869 2892 2930 2952
SPATAB 226 235# 290 337
SPREP2 47# 2700
STCLOK 14 446#
STCU 449 456#
STCX 455 460#
SWCHPT 32 1757#
SWCOM 32 1771#
SWCOM0 1777 1798#
SWCOMP 1773 1840#
SWCOMT 1774 1816#
SWCOMX 1794 1810#
SWITT 32 1348 1351 1410# 1435 1456 1469 1798 1804 2694
SWPSWW 1441# 1441 1472# 1472
SWRGT 33 1413 1416# 1467 1801
TAKFIL 49# 804 807 2398 2401
TMRST1 454 459 464# 555
TMRUN1 547 550 554 619#
TPAT 49# 1171
TSTNUM 48# 644
TSTOFF 48# 2859 2882
TSTPC 48#
TSTPNT 48# 2850
TSTREP 48# 653 2862 2865 2885 2888
TSTSUB 48# 646 2724 2732 SEQ 1062
TTNBRF 2129 2248 2332 2374 2549
TTYY0 161# 165 172
TTYY1 163# 166
TTYYES 9 158# 1485
TXNOT 2938 2958
TXTINH 2852 2931 2937 2953 2957
TXYES 2932 2954
UDEBUG 47# 2704
USER 136 448 545 669 705 730 757 1411 1442 1451 1775 1875 2760 2762
2846
USTIM 15 559 624#
UVERSN 47# 2871 2874 2894 2897
VARPAT 978# 978 985
VPATRN 957 1151#
WRDERR 28 931 1001# 1001 1006 1009 1024
XX 128# 128 215# 215 262# 262 309# 309
XXT 2073# 2073 2163# 2163 2280# 2280 2324# 2324 2367# 2367
XYZ 1893# 1893
ZU 60#
$CHRIN 118
$SVUPC 210 229 257 294 304 341 353 359 380 392 398 419 669 692
2678 2795 2809 2825
$SVUUO 125 210 220 231 257 270 277 284 296 304 317 324 331 343
353 354 361 382 392 393 400 421 669 674 687 694 2679 2795
2809 2825
$TTCHR 2039 2048 2076 2130 2138 2166 2249 2257 2283 2327 2333 2370 2375 2439
2489 2550
$TWCNT 164 2074 2164 2281 2325 2368
$TYPNB 2175 2292
.CGOT 38 1946 1955#
.CLOSE 19 730#
.COMM 37 1926# 2192
.COMM0 1933# 1935
.COMM1 1936 1946#
.COMM2 1934 1970#
.COMM3 1978# 1985
.COMM4 1980 1986#
.COMM5 1982 1990#
.COMM6 1974 1993#
.CTBL 1960# 1975 1977
.CTYP 1928 1957# 1976
.DARG 37 2221#
.DARG0 2242# 2251
.DARG1 2238 2247# 2293
.DARGA 2243 2280#
.DARX1 2225 2237 2266 2268 2270 2276# 2286 2288 2291
.DARX2 2231 2252 2272# 2282
.DELA0 679# 682
.DELA1 670 687#
.DELAX 683 692#
.DELAY 14 667#
.EXIT 19 757#
.FHSLF 488 736 764 SEQ 1063
.ISWT 32 1429#
.ISWT2 1435#
.ISWT6 1447#
.ISWT7 1443 1451#
.ISWT8 1456#
.ISWTB 1452 1461#
.ISWTX 1466#
.ISWTY 1471 1474#
.ISWTZ 1473 1477#
.LSWIT 33 1550 1696#
.LSWTN 1544 1711#
.OARG 37 2102#
.OARG0 2123# 2132
.OARG1 2119 2128# 2176
.OARGA 2124 2163#
.OARX1 2106 2118 2147 2149 2151 2157# 2169 2171 2174
.OARX2 2112 2133 2153# 2165
.PNTD0 265# 268
.PNTD1 266 269#
.PNTDC 10 255#
.PNTDP 10 302#
.PNTOC 10 208#
.PNTP0 312# 315
.PNTP1 313 316#
.PRIOU 2843
.RESET 19 705#
.RSWIT 33 1607 1618 1633 1733#
.SARG 37 2013#
.SARG0 2034# 2041
.SARG1 2030 2039# 2085
.SARGA 2035 2073#
.SARX1 2017 2029 2057 2059 2061 2067# 2079 2081 2084
.SARX2 2023 2042 2063# 2075
.SLEFT 1447 1520#
.SLF1 1523# 1529
.SLF2 1528 1533#
.SLF3 1537# 1562
.SLF4 1538# 1557 1570 1574
.SLF5 1544# 1566
.SLF6 1564 1571#
.SLFX 1531 1542 1560 1576#
.SRG2 1588# 1594
.SRG3 1593 1598#
.SRG4 1601#
.SRG5 1602# 1608 1625 1644 1648
.SRG6 1610# 1631 1635 1640
.SRG6A 1632# 1634
.SRG6B 1630 1637#
.SRG7 1638 1645#
.SRGX 1596 1606 1628 1650#
.SRIGT 1461 1585#
.SWCH0 1353# 1399
.SWCH1 1354 1397# SEQ 1064
.SWCHP 32 1342#
.SWIN 1527 1592 1664#
.SWIN0 1676# 1686
.SWPNT 1431 1483#
.SWTXT 1487 1490#
ALTCHK 164 2035 2124 2243 2324 2367
CFIBF 144 SEQ 1065
CLRBFI 142
CLZFF 737
DISMS 688
DROPDV 732
ERCAL 490 710 738
ERRHLT 2763
FMSG 162 196 403 404 405 406 407 408 409 410 411 412 413 414
415 416 417 418 585 597 609 648 650 652 1350 1360 1361 1362
1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376
1378 1379 1380 1381 1382 1383 1384 1386 1387 1388 1389 1390 1391 1526
1547 1549 1591 1615 1617 1783 1785 1786 1787 1788 1789 1790 1791 1792
1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853
1854 1855 1856 1857 1858 1859 1860
FMSGC 643 803 1344 1357 1438 1474 1484 1781 1802 1882 1883 2397
FMSGCD 1896 1899 2083 2173 2193 2290 2340 2382
FMSGD 656 809 1793 1807 1809 2403
FREAD 781 793
GET 92 94 99 101 124 127 128 145 147 175 177 192 201 215
229 231 262 294 296 309 341 343 359 361 380 382 398 400
419 421 460 462 497 509 516 566 613 615 659 661 692 694
742 772 800 811 858 860 879 914 916 1011 1013 1054 1056 1208
1210 1224 1226 1239 1241 1401 1403 1477 1479 1576 1578 1650 1652 1762
1810 1812 1907 1908 1940 1942 1948 1950 1986 1988 1990 1992 1993 1995
2067 2069 2073 2157 2159 2163 2198 2200 2276 2278 2280 2324 2343 2345
2367 2386 2388 2405 2446 2448 2454 2456 2496 2498 2504 2506 2559 2561
2567 2569 2581 2793 2795 2807 2809 2823 2825 2965 2967
GO 273 280 320 327 457 508 515 549 651 676 680 831 834 838
841 844 851 854 870 873 876 882 900 963 964 989 990 1158
1159 1167 1168 1169 1348 1351 1431 1435 1447 1456 1461 1469 1485 1527
1555 1592 1623 1666 1687 1798 1804 1876 1880 1886 1887 1889 1897 1934
2028 2056 2117 2146 2192 2236 2265 2321 2364 2421 2441 2452 2471 2491
2502 2520 2552 2565 2577 2694 2700 2746 2749 2817 2836 2850 2911 2964
HALTF 765
JEN 1909
ODTIM 2847
PBELL 2756
PCRL 1043 2016 2105 2224 2314 2360 2934 2940
PCRL2F 1535 1599 1673
PCRLF 1400 1440 1476 1524 1533 1558 1589 1626 1670 1679
PDEC 1044
PFORCE 1483 2833
PJRST 1666 1673 1678 2932 2938 2958
PNT2 2838 2841
PNTCHF 799
PNTCIF 200 806 2400
PNTDCF 199 580 593 605 655
PNTDEC 190 292 339 582 595 607 1007 2867 2890
PNTDS 357
PNTDSF 396
PNTHW 1047 1050 2870 2893
PNTHWF 1349 1439 1475 1760 1885
PNTMSF 162 196 403 404 405 406 407 408 409 410 411 412 413 414
415 416 417 418 585 597 609 643 648 650 652 656 803 809 SEQ 1066
1344 1350 1357 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370
1371 1372 1373 1374 1375 1376 1378 1379 1380 1381 1382 1383 1384 1386
1387 1388 1389 1390 1391 1438 1474 1484 1526 1534 1547 1549 1591 1598
1615 1617 1781 1783 1785 1786 1787 1788 1789 1790 1791 1792 1793 1802
1807 1809 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851
1852 1853 1854 1855 1856 1857 1858 1859 1860 1882 1883 1896 1899 2083
2173 2193 2290 2340 2382 2397 2403
PNTMSG 187 191 236 237 238 239 240 241 242 243 244 245 246 247
248 249 269 275 282 316 322 329 364 365 366 367 368 369
370 371 372 373 374 375 376 377 378 379 587 599 611 1005
1008 1038 1039 1045 1048 1247 1248 1249 1250 1251 1252 1253 1254 1255
1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269
1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283
1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297
1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311
1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325
1326 1327 1328 1329 1330 1331 1332 1333 1334 1487 1552 1620 1758 1761
2750 2834 2836 2839 2849 2857 2861 2864 2868 2873 2880 2884 2887 2891
2896 2925 2935 2941
PNTOCF 645 649 1525 1590
PNTOCS 228 2860 2875 2883 2898
PNTSXF 805 808 1551 1619 2399 2402
PSP 2842
PUT 74 76 117 138 140 158 160 186 195 208 210 212 255 257
259 302 304 306 351 353 390 392 446 448 481 505 512 540
542 631 633 667 669 733 760 792 826 828 869 896 898 941
943 1020 1022 1198 1200 1214 1216 1230 1232 1342 1344 1429 1431 1520
1522 1585 1587 1757 1771 1773 1877 1879 1926 1928 1970 1972 2013 2015
2102 2104 2188 2190 2221 2223 2309 2311 2355 2357 2396 2415 2417 2465
2467 2515 2517 2576 2678 2679 2680 2682 2962 2964
RESET 709
RGET 92 99 145 175 229 294 341 359 380 398 419 460 566 613
659 692 858 914 1011 1054 1208 1224 1239 1401 1477 1576 1650 1810
1940 1948 1986 1990 1993 2067 2157 2198 2276 2343 2386 2446 2454 2496
2504 2559 2567 2793 2807 2823 2965
RPUT 74 138 158 208 255 302 351 390 446 540 631 667 826 896
941 1020 1198 1214 1230 1342 1429 1520 1585 1771 1877 1926 1970 2013
2102 2188 2221 2309 2355 2415 2465 2515 2680 2962
RTN 94 102 137 147 177 193 202 231 276 283 296 323 330 343
361 382 400 421 462 490 498 510 517 567 615 661 694 706
710 714 731 738 743 758 773 782 785 801 812 860 880 886
916 940 965 991 1013 1056 1183 1188 1194 1210 1226 1241 1403 1414
1479 1486 1488 1578 1652 1671 1674 1680 1690 1763 1812 1942 1951 1989
1992 1997 2069 2159 2200 2278 2345 2388 2395 2406 2443 2448 2456 2493
2498 2506 2554 2561 2569 2582 2795 2811 2827 2848 2872 2876 2895 2899
2907 2921 2926 2936 2939 2942 2943 2948 2959 2961 2967
SWITCH 1412
TIME 489
TMSG 187 191 236 237 238 239 240 241 242 243 244 245 246 247
248 249 269 275 282 316 322 329 364 365 366 367 368 369
370 371 372 373 374 375 376 377 378 379 587 599 611 1008
1045 1048 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258
1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 SEQ 1067
1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286
1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300
1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314
1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328
1329 1330 1331 1332 1333 1334 1552 1620 1758 2839 2861 2864 2868 2873
2880 2884 2887 2891 2896
TMSGC 1005 1038 1039 1761 2834 2836 2849 2857 2925
TMSGCD 2750
TTALTM 2784 2799
TTICNV 2242 2323 2366
TTIOCT 2123
TTSIXB 163 2034
TTYINP 1553 1621 1664 1684
LINK symbol map of DFCIA version (3) page 1
Produced by LINK version 5A(1775) on 29-Oct-84 at 19:06:56 SEQ 1068
Low segment starts at 0 ends at 210055 length 210056 = 137P
466 words free in Low segment
380 Global symbols loaded, therefore min. hash size is 423
Start address is 30000, located in program DFCIA
*************
JOBDAT-INITIAL-SYMBOLS
Zero length module
*************
DFCIA from XTRA:DFCIAT.REL created by MACRO on 29-Oct-84 at 18:45:06
Low segment starts at 140 ends at 30740 length 30601 (octal), 12673. (decimal)
*************
DFCIA from DSK:DFCIA1.REL created by MACRO on 29-Oct-84 at 18:47:20
Low segment starts at 30741 ends at 151760 length 121020 (octal), 41488. (decimal)
ALTF 151654 Global Relocatable BPACK 65174 Entry Absolute
BPACKN 65172 Entry Absolute BUFF 71047 Global Absolute
CADDR 35713 Global Absolute CALPAR 42407 Entry Absolute
CHKINT 65617 Entry Absolute CHKRSP 66134 Entry Absolute
CMDOPC 67105 Entry Absolute CONFIG 42731 Entry Absolute
CONPNT 43041 Entry Absolute CONVIR 65752 Entry Absolute
CPORT 34013 Global Absolute CSRENG 42465 Entry Absolute
CSRPNT 42443 Entry Absolute CTABLE 43077 Global Absolute
CTYPE 43117 Global Absolute CVALID 43076 Global Absolute
CWORDL 35714 Global Absolute CWORDR 35715 Global Absolute
DCRESP 102757 Global Absolute DDEBUG 151663 Global Relocatable
DDUMP 37752 Global Absolute DISMS 104000000167 Global Absolute
DRCRAM 36372 Entry Absolute DSPRIN 34016 Global Absolute
DWCRAM 36340 Entry Absolute EDEBUG 151670 Global Relocatable
FINECH 151673 Global Relocatable FINPUT 151674 Global Relocatable
GETJI 104000000507 Global Absolute GTAD 104000000227 Global Absolute
IGNFLG 34017 Global Absolute INSQUE 65777 Entry Absolute
IPRINT 41341 Entry Absolute LDEBUG 151700 Global Relocatable
MDEBUG 151702 Global Relocatable MLNUM 151703 Global Relocatable
MLOADN 64254 Entry Absolute MLOADY 64256 Entry Absolute
MVPNT 64437 Entry Absolute NUMENT 65751 Global Absolute
OPCPNT 67055 Entry Absolute PACKET 70047 Global Absolute
PARFLG 34000 Global Absolute PCB 70000 Global Absolute
PGMNAM 30600 Global Absolute PMODE 103310 Global Absolute
PNTRSP 42056 Entry Absolute PPAKC 66422 Entry Absolute
PPAKF 66472 Entry Absolute PPAKR 66457 Entry Absolute
PPCB 67434 Entry Absolute PPCBD 67504 Entry Absolute
PQUEUE 66353 Entry Absolute QFDG10 77047 Global Absolute
QFDG7 76447 Global Absolute RDNODE 65076 Entry Absolute
RSPONS 70447 Global Absolute RUPDAT 43166 Entry Absolute
RWAIT 65601 Entry Absolute SDEBUG 151740 Global Relocatable
LINK symbol map of DFCIA version (3) page 2
DFCIA SEQ 1069
SETDSA 42162 Entry Absolute SETENA 42122 Entry Absolute
SPEAR2 151743 Global Relocatable SPORT 34012 Global Absolute
SPREP2 100510 Global Absolute SREPOR 43272 Entry Absolute
STARCA 43556 Global Absolute STARCB 43614 Global Absolute
START 30611 Entry Absolute STARTA 30723 Entry Absolute
STASNT 43474 Global Absolute SUPDAT 43130 Entry Absolute
SYERR 104000000527 Global Absolute TAKFIL 31576 Global Absolute
TBYTE 65162 Global Absolute TCMD 101356 Global Absolute
TCSR 101355 Global Absolute TDPORT 65161 Global Absolute
TEXEC 100665 Entry Absolute TFLOAD 43652 Entry Absolute
TFMFLG 65154 Global Absolute TIDLE 65052 Entry Absolute
TLOAD 64567 Entry Absolute TPAT 65164 Global Absolute
TPCB 64612 Entry Absolute TPTFLG 65156 Global Absolute
TRACE 42206 Entry Absolute TREGD 65166 Global Absolute
TREGN 65165 Global Absolute TRESPA 102356 Global Absolute
TRESPC 101756 Global Absolute TRSFLG 65155 Global Absolute
TSLOAD 151746 Global Relocatable TSTATA 102761 Global Absolute
TSTATC 102760 Global Absolute TSTEND 42244 Entry Absolute
TSTFLG 103300 Global Absolute TSTMSK 103301 Global Absolute
TSTNAM 32203 Global Absolute TSTNUM 103275 Global Absolute
TSTOFF 103305 Global Absolute TSTPC 103277 Global Absolute
TSTPNT 42247 Entry Absolute TSTREP 103302 Global Absolute
TSTSUB 103276 Global Absolute TSTTAB 32050 Global Absolute
TTPNT 102767 Entry Absolute TWORD 65163 Global Absolute
TXADDL 151752 Global Relocatable TXCTID 65157 Global Absolute
UDEBUG 151753 Global Relocatable UVERSN 151754 Global Relocatable
.RREXP 5 Global Absolute Suppressed .SREXP 11 Global Absolute Suppressed
*************
.MAIN from DSK:DFCIA2.REL created by MACRO on 29-Oct-84 at 18:52:18
Low segment starts at 151761 ends at 156154 length 4174 (octal), 2172. (decimal)
C1516 155125 Entry Relocatable MEXIT 155144 Entry Relocatable
MPRINT 155072 Entry Relocatable MRESET 155167 Entry Relocatable
MRESTA 155252 Entry Relocatable MSTART 155061 Entry Relocatable
MWAIT 155022 Entry Relocatable SAVCOD 155124 Global Relocatable
SAVCSR 155121 Global Relocatable SAVEBU 155123 Global Relocatable
SAVLAR 155122 Global Relocatable T2M 152471 Entry Relocatable
T3M 154065 Entry Relocatable T4M 154541 Entry Relocatable
T5M 154672 Entry Relocatable TST1 151761 Entry Relocatable
TST2 152437 Entry Relocatable TST3 154006 Entry Relocatable
TST4 154502 Entry Relocatable TST5 154644 Entry Relocatable
TST6 154727 Entry Relocatable TST7 154764 Entry Relocatable
*************
.MAIN from DSK:DFCIA3.REL created by MACRO on 29-Oct-84 at 19:01:11
Low segment starts at 156155 ends at 164772 length 6616 (octal), 3470. (decimal)
T10M 156205 Entry Relocatable T11M 156374 Entry Relocatable
T12M 156547 Entry Relocatable T13M 156724 Entry Relocatable
T14M 157121 Entry Relocatable T15M 157314 Entry Relocatable
T16M 157553 Entry Relocatable T17M 157720 Entry Relocatable
LINK symbol map of DFCIA version (3) page 3
.MAIN SEQ 1070
T20M 160163 Entry Relocatable T21M 160430 Entry Relocatable
T22M 160765 Entry Relocatable T23M 161202 Entry Relocatable
T24M 161417 Entry Relocatable T25M 161642 Entry Relocatable
T26M 162067 Entry Relocatable T27M 162434 Entry Relocatable
T30M 162773 Entry Relocatable T31M 163324 Entry Relocatable
T32M 163654 Entry Relocatable TST10 156155 Entry Relocatable
TST11 156346 Entry Relocatable TST12 156521 Entry Relocatable
TST13 156674 Entry Relocatable TST14 157071 Entry Relocatable
TST15 157264 Entry Relocatable TST16 157523 Entry Relocatable
TST17 157672 Entry Relocatable TST20 160135 Entry Relocatable
TST21 160400 Entry Relocatable TST22 160737 Entry Relocatable
TST23 161154 Entry Relocatable TST24 161371 Entry Relocatable
TST25 161614 Entry Relocatable TST26 162037 Entry Relocatable
TST27 162404 Entry Relocatable TST30 162743 Entry Relocatable
TST31 163274 Entry Relocatable TST32 163627 Entry Relocatable
*************
.MAIN from DSK:DFCIA4.REL created by MACRO on 29-Oct-84 at 19:06:05
Low segment starts at 164773 ends at 170433 length 3441 (octal), 1825. (decimal)
T33M 165027 Entry Relocatable T34M 165726 Entry Relocatable
T35M 166136 Entry Relocatable T36M 166406 Entry Relocatable
T37M 167061 Entry Relocatable T40M 167524 Entry Relocatable
TST33 164773 Entry Relocatable TST34 165700 Entry Relocatable
TST35 166111 Entry Relocatable TST36 166355 Entry Relocatable
TST37 167031 Entry Relocatable TST40 167476 Entry Relocatable
*************
.MAIN from DSK:DFCIA5.REL created by MACRO on 29-Oct-84 at 19:06:17
Low segment starts at 170434 ends at 176050 length 5415 (octal), 2829. (decimal)
CHKRQV 174623 Entry Relocatable CRCOFF 172021 Global Relocatable
CRCSAV 172020 Global Relocatable CRCTAB 172022 Global Relocatable
PDUMP 174676 Entry Relocatable RQAFLG 176046 Global Relocatable
TST41 170434 Entry Relocatable TST42 170703 Entry Relocatable
TST43 171137 Entry Relocatable TST44 171245 Entry Relocatable
TST45 171475 Entry Relocatable TST46 172364 Entry Relocatable
TST47 172702 Entry Relocatable TST50 173167 Entry Relocatable
TST51 173454 Entry Relocatable TST52 173736 Entry Relocatable
TST53 174233 Entry Relocatable TST54 174377 Entry Relocatable
*************
.MAIN from DSK:DFCIAI.REL created by MACRO on 29-Oct-84 at 19:06:33
Low segment starts at 176051 ends at 201734 length 3664 (octal), 1972. (decimal)
AADDR 176503 Global Relocatable CBASE 177445 Global Relocatable
CCWPNT 177725 Entry Relocatable CHINIT 177452 Entry Relocatable
CHKCSR 176376 Entry Relocatable CLREBU 176362 Entry Relocatable
DEVREL 200170 Entry Relocatable DEVREQ 200226 Entry Relocatable
DSETUP 200047 Entry Relocatable EADDR 176502 Global Relocatable
ENABLE 200507 Entry Relocatable EPCAP 104000000151 Global Absolute
LINK symbol map of DFCIA version (3) page 4
.MAIN SEQ 1071
EPTJMP 177443 Global Relocatable ERCAL 320740000000 Global Absolute
ERESET 176240 Entry Relocatable ERSTR 104000000011 Global Absolute
FFF 200527 Entry Relocatable GETLOG 177664 Entry Relocatable
HAVIPA 200374 Global Relocatable ICWA0 177433 Global Relocatable
INITPD 176613 Entry Relocatable INITPI 176570 Entry Relocatable
INTAPR 177235 Global Relocatable INTCON 177211 Global Relocatable
INTCSR 177331 Global Relocatable INTEND 177401 Global Relocatable
INTNUM 177140 Global Relocatable INTPC 177141 Global Relocatable
INTTIM 177261 Global Relocatable INTTYP 177165 Global Relocatable
INTUSE 177305 Global Relocatable IPACLR 176323 Entry Relocatable
IPASRT 176415 Entry Relocatable IPASST 176504 Entry Relocatable
IPASTP 176447 Entry Relocatable ISTOP 176247 Entry Relocatable
LDCRAM 176106 Entry Relocatable LDCSR 176061 Entry Relocatable
LDEBUF 176051 Entry Relocatable LDRAR 176072 Entry Relocatable
LOCDON 200432 Global Relocatable LOCPHY 200403 Entry Relocatable
LOGBUF 177446 Global Relocatable LOGPNT 177746 Entry Relocatable
PISYOF 176645 Entry Relocatable PISYON 176650 Entry Relocatable
RDCRAM 176166 Entry Relocatable RDCSR 176131 Entry Relocatable
RDEBUF 176121 Entry Relocatable RDLAR 176155 Entry Relocatable
REL 200212 Entry Relocatable REQ1 200252 Entry Relocatable
REQ2 200263 Entry Relocatable RPCAP 104000000150 Global Absolute
SDATA 176501 Global Relocatable SETEBU 176330 Entry Relocatable
SETLAR 176345 Entry Relocatable SETVEC 176653 Entry Relocatable
SLAST 176500 Global Relocatable SNARKF 201733 Global Relocatable
SNEXT 176477 Global Relocatable USRIO 104000000310 Global Absolute
USRIOF 200501 Entry Relocatable USRION 200461 Entry Relocatable
.CONI 176177 Entry Relocatable .CONO 176207 Entry Relocatable
.DATAI 176220 Entry Relocatable .DATAO 176230 Entry Relocatable
.FHSLF 400000 Global Absolute Suppressed .INPNT 177402 Entry Relocatable
.INWD1 177431 Global Relocatable .INWD2 177432 Global Relocatable
.PIOFF 176617 Entry Relocatable .PION 176631 Entry Relocatable
*************
.MAIN from DSK:DFCIAU.REL created by MACRO on 29-Oct-84 at 19:06:48
Low segment starts at 201735 ends at 210055 length 6121 (octal), 3153. (decimal)
ALTCHH 201766 Entry Relocatable ARGFLG 204667 Global Relocatable
ARGUM 204666 Global Relocatable BUFCOM 203040 Entry Relocatable
BUFGEN 203047 Entry Relocatable CHKARG 204670 Entry Relocatable
CLRBUF 202002 Entry Relocatable CLZFF 104000000034 Global Absolute
CONVSX 201735 Entry Relocatable CURTIM 202526 Global Relocatable
DEBTIM 202530 Global Relocatable DECYN 204572 Entry Relocatable
FGETW 202724 Entry Relocatable FINCMD 204756 Entry Relocatable
FIOFF 204741 Entry Relocatable FOARG 205060 Entry Relocatable
FORPNT 210036 Global Relocatable HALTF 104000000170 Global Absolute
LASARG 204714 Entry Relocatable LCHAR 210043 Global Relocatable
MAXTIM 202527 Global Relocatable MONTIM 202376 Entry Relocatable
ODTIM 104000000220 Global Absolute PARSER 204307 Entry Relocatable
PATBUF 203176 Entry Relocatable PATPNT 203406 Entry Relocatable
PPDEC 202277 Entry Relocatable PPDECF 202325 Entry Relocatable
PSDN 202042 Entry Relocatable PSTAMP 202532 Entry Relocatable
PTIME 202420 Entry Relocatable RESET 104000000147 Global Absolute
RUNTME 202434 Entry Relocatable SCOOFF 205445 Global Relocatable
LINK symbol map of DFCIA version (3) page 5
.MAIN SEQ 1072
SCOPE1 205151 Entry Relocatable SCOSW 210047 Global Relocatable
STCLOK 202353 Entry Relocatable SWCHPT 204167 Entry Relocatable
SWCOM 204176 Entry Relocatable SWITT 203575 Entry Relocatable
SWRGT 203602 Global Relocatable TIME 104000000014 Global Absolute
TTYYES 202016 Entry Relocatable USTIM 202531 Global Relocatable
WRDERR 210052 Global Relocatable .CGOT 204375 Global Relocatable
.CLOSE 202640 Entry Relocatable .COMM 204351 Entry Relocatable
.DARG 204613 Entry Relocatable .DELAY 202573 Entry Relocatable
.EXIT 202656 Entry Relocatable .ISWT 203603 Entry Relocatable
.LSWIT 204111 Global Relocatable .OARG 204517 Entry Relocatable
.PNTDC 202137 Entry Relocatable .PNTDP 202217 Entry Relocatable
.PNTOC 202056 Entry Relocatable .PRIOU 101 Global Absolute Suppressed
.RESET 202626 Entry Relocatable .RSWIT 204145 Global Relocatable
.SARG 204446 Entry Relocatable .SWCHP 203536 Entry Relocatable
*************
Index to LINK symbol map of DFCIA version (3) page 6
SEQ 1073
Name Page Name Page Name Page Name Page
DFCIA 1 .MAIN 2 .MAIN 3 .MAIN 3
DFCIA 1 .MAIN 2 .MAIN 3 .MAIN 4
[End of LINK map of DFCIA]