MAINDEC 11 DZRKJ D_D_RK11_Basic_Logic__I_Dec76 D RK11 Basic Logic I Dec76

MAINDEC-11-DZRKJ-D_D_RK11_Basic_Logic__I_Dec76 MAINDEC-11-DZRKJ-D_D_RK11_Basic_Logic__I_Dec76

User Manual: MAINDEC-11-DZRKJ-D_D_RK11_Basic_Logic__I_Dec76

Open the PDF directly: View PDF PDF.
Page Count: 36

IDENTIFICATION
..............
PRODUCT
CODEI
MAINDEC-l1·0ZR~J·O-D
P~ODUCT
NAMEI
RK11
BASIC
LOGIC
TEST
I
DATE
CREATED
I
DECEMBER,
1976
MAINTAINER
I
DIAGNOSTIC
GROUP
AUTHOR.
JIM
KAPADIA
REVISED
BY
I
PERVEZ
ZAKI
TOM
SAWYER
CHUC1<
HESS
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
RESpbNSIBILITY
FOR
ANY
ERRORS
THAT
MAY
APPEA~
IN
THIS
MANUAL.
THE
SOFTWARE
DESCRIBED
IN
THIS
DOCUMENT
IS
FURNISHED
TO
THE
PURCHASER
UNDER
A
LICENSE
FOR
USE
ON
A
SINGLE
COMPUTER
SYSTEM
AND
CAN
BE
COPIED
(WITH
INCLUSION
OF
DIGITAL'S
COPYRIGHT
NOTICE)
ONLY
FOR
USE
IN
SUCH
SYSTEM,
EXCEPT
AS
MAY
OTHERWISE
BE
PROVIDED
IN
WRITING
BY
DIGITAL.
DIGITAL
EQUIPMENT
CORPORATION
ASSUMES
NO
RESPONSIBILITY
FOR
THE
USE
OR
RELIABILITY
OF
ITS
SOFTWARE
ON
EQUIPMENT
THAT
IS
NOT
SUPPLIED
BY
DIGITAL.
COPYRIGHT
eCl
1975,1976
BY
DIGITAL
EQUIPMENT
CORPORATION
2,0
2,1
2,2
2,3
3,0
4,0
4,1
4,2
4,3
4.4
5.0
6,0
1,0
9.0
10,0
10,1
10,2
10.3
10,4
10,5
10,6
10,7
11.0
12.0
QUICK
LOOK-UP
OPERATING
INSTRUCTIONS
FOR
A
QUICK
REFERENCE,
LOOK
UP
THE
FOLLOWING
SECTIONS:
1.0
ABSTRACT
2.0
REQUIREMENTS
4.1
LOAOING
AND
OPERATOR
ACfION
5.0
SWITCH
OPTIONS
FOR
A
MORE
COMPLETE
EXPLANATION
REFER
TO
THE
TABLE
OF
CONTENTS
BELOW
AND
THE
FOLLOWING
DOCUMENT.
TABLE
OF
CONTENTS
ABSTRACT
REQUIREMENTS
EQUIPMENT
PRELIMINARY
PROGRAMS
EXECUTION
TIME
STARTING
ADDRESS
PROGRAM
CONTROL
MODES
&
OPERATOR
ACTION
PAPER
TAPE
RKDP
DUMP
MODE
RKDP
CHAIN
'MODE
ACT11
SWITCH
OPTIONS
SCOPE
LOOPS
PROGRAM
STRUCTURE
ERROR
REPORTING
ERROR
INTERPRETATION
HANDLERS
AND
COMMON
ROUTINES
TRAP
HANDLER
SCOPE
HANDLER
ERROR
HANDLER
CONTROL
RESET
ROUTINE
CONTR6L
READY
ROUTINE
TIME
DELAY
ROUTINE
OTHER
ROUTINES
TTY
HANDLER
ClIO),
ERROR
TYPEOUT
ROUTINE
POWER
DOWNIPOWER
UP
ROUTINE
UNEXPECTED
TIMEOUT8
& RKll
INTERRUPTS
QUICK
VERYFYING
MODE
1.0
ABSTRACT
THE
RKll
LOGIC
TESTS
CONSIST
OF
A SERIES
or
TESTS
AIMED
AT
CHECKING
THE
BASIC
LOGIC
OF
THE
RKII
CONTROLLER.
THE
~OGIC
TESTS
CONSISTS
OF
TWO
PARTS.
THIS
PROGRAM
IS
PART-X
AND
IT
CHECKS
ONLY
THE
DRIVE-INDEPENDENT
LOGIC
or
THE
RK11
CONTROLLER
(SEE
SEC.
9-0),
IT
SHOULD
BE
NOTED
THAT
LOGIC
TEST-I
AND
LOGIC
TEST-II
TOGETHER
CONSTITUTE
A
COMPLETE
PROGRAM
AND
HENCE
BOTH
OF
THEM
SHOULD
BE
RUN.
USED
CORRECTLY
THIS
PROGRAM
CAN
SE
AN
EFFECTIVE
ANALYTIC
AND
DIAGNOSTIC
TOOL,
2.0
REQUIREMENTS
2.1
EQUIPMENT
A.
PDPl1
WITH
CONSOLE
TELETYPE.
S,
8K
OF
MEMORY
C, RKll
OR
RKV11
CONTROLLER
2.2
PRELIMIHARY
PROGRAMS
NONE
2.3
EXECUTION
TIME
ERROR
FREE
FIRST
PASS
ON
PDP11/20
WITH
CORE
MEMORY
TAKES
APPROXIMATELY
ONE
MINUTE.
CONSIDERABLY
LESS
FOR
FASTER
MACHINES
OR
MEMORIES,
3,0
STARTING
ADDRESS
200
fOR
ANY
MODE
or
OPERATION.
NORMAL
STAPT
UP
wITH
ALL
SWITCHES
DOWN.
4.0
PROGRAM
CONTROL
MODES'
OPERATOR
ACTION
PAPER
TAPE
LOADING
RKDP
DUMP
MODE
RKDP
CHAtN
MODE
ACTll
4.1
PAPER
TAPE
LOADING
LOAD
PROGRAM
INTO
MEMORY
USING
STANDARD
PROCEDURE
FOR
.ABS
TAPES.
PUT
THE
DRIVES
ON
'WRT
PROT'
AND
'LOAD'
AS
A
PRECAUTION
AGAINST
MALFUNCTIONING.
LOAD
ADDRESS
200
4.1.5
SET
SWITCHES
IF
DESIRED
(SEE
SEC
5.0)
IF
TESTING
ON
SIMULATOR
PUT
SW
10
UP.
PRESS
START.
THE
PROGRAM
IDENTIfIES ITSELF
(NAME,MAINDEC
NO).
RK11
LOGIC
TEST
I
MAINDEC-I1-0ZRKJ-D
THEN
THE
PROGRAM
PROCEEDS
WITH
TESTING.
AT
THE
END
OF
A
PASS
THE
'OLLOWING
TYPE-OUT
OCCURS
END
PASS i X
WHERE
X.
PASS
NUMBER
(1,2,3---),
CONTROL
IS
PASSED
TO
THE
BEGINNING
0'
THE
PROGRAM
AND
RE-EXECUTION
BEGINS.
ERROR
FREE
PASSES
OF
THE
PROGRAM
APPEAR
AS
SHOWN
BELOW.
RK11
LOGIC
TEST
I
MAINDEC-I1-DZRKJ-O
END
PASS
1
END
PASS
2
•••
. . .
4.2
RKOP
OUMP
MODE
THE
PROGRAM
IS
LOADED
INTO
THE
MEMORY
BY
THE
RKDP
MONITOR
START
AS
NORMALLY
USING
SA
200
THE
PROGRAM
IDENTIFIES ITSELF
(NAME,MAIHDEC
NO.)
AND
PROCEEDS
WITH
TESTING.
RKDP
CHAIN
,MODE
THE
PROGRAM
IS
CHAIN-LOADED
FROM
THE
RKDP
PACK.
A'TER
THE
PROGRAM
IDENTIFIES ITSELF, IT
PROtEEOS
WITH
TESTING.
4.4
ACT11
MODE
THE
PROGRAM
IS
LOADED
8Y
THE
ACTtt
MONITOR.
ON
STARTING,
IDENTIFIES ITSELF,
PROCEEDS
WITH
THE
EXECUTION
OF
THE
TESTS
AS
BEFORE.
5.0
SWITCH
OPTIONS
I'
THE
PROGRAM
IS
BEING
RUN
ON
A
SWITCHLESS
PROCESSOR
(I.E.
AN
11/34)
THE
PROGRAM
WILL
DETERMINE
THAT
THE
HARDWARE
SWIT:H
REGISTER
IS
NOT
PRESENT
AND
WILL
USE
A
·SOFTWAPE·
SWITCH
REGISTER.
THE
'SOFTWARE'
SWITCH
REGISTER
IS
LOCATED
AT
LOCATION
176
C8),
THE
SETTINGS
or
THE
'SOFTWARE'
SWITCHES
APE
CONTROLLED
THROUGH
A
KEYBOARD
ROUTINE
WHICH
IS
CALLED
BY
TYPING
A
'CONTPOL
G',
THE
PROGRAM
WILL
RECOGNIZE
THE
'CONTROL
G' when.ver
the
proqram
enters
the
seope
routine
or
beo1n. a
new
test,
the
'SOFTWARE'
SWITCH
VALUF~
~RE
ENTERED
AS
AN
OCTAL
NUMBER
IN
RESPONSE
TO
THE
PROMPT
FROM
TH~
SWITCH
ENTRY
ROUTINE:
'SWR
-
NNNNNN
NEW.'
EACH
TIME
SWITCH
SETTING
ARE
ENTERED,
THE
ENTIRE
SWITCH
REGISTER
IMAGE
MUST
BE
ENTERED.
LEADING
ZEROS
ARE
NOT
REQUIRED.,
'RUSOUT'
AND
'CO~TROL
U'
FUNCTIONS
~AY
BE
USED
TO
CORRECT
TYPING
ERROPS
DURING
SWITCH
ENTRY.
ON
PROCESSORS
WITH
HARDWARE
SWITCH
REGISTERS,
THE
'SOFTWARE'
SWITCH
REGISTER
MAY
8E
USED,
IF
THE
PROGRAM
rINDS
ALL
16
SWITCHES
IN
THE
'UP'
POSITION,
ALL
SWITCH
REGISTER
REFERENCES
WILL
8E
TO
THE
'SOFTWARE'
REGISTER
AND
THE
PROCEDURES
DESCRIBED
ABOVE
MUST
BE
FOLLOWED.
SW<15>-1
SW<14>=1
SW<ll>-1
SW<12>=1
SW<II>-1
SW<10>=t
SW<09>-t
SW<08>al
S.1
SW<15>
HALT
ON
ERROR
LOOP
ON
TEST
INHIBIT
ERROR
PRINTOUTS
CYCLE
ON
ERROR
TO
THE
PREVIOUS
'SCOPE'
STATEMENT
INHIBIT
ITERATIONS
TESTING
ON
SIMULATOR
LOOP
ON
SPECIFIC
ERROR
LOOP
ON
TEST
AS
PER
SWC07:00>
THE
PROGRAM
HALTS
ON
ENCOUNTERING
AN
ERROR,
AFTER
TYPING
OUT
THE
ERROR
MESSAGE
AND
PERTINENT
INFORMATION.
PRESSING
"CONTINUE"
RESTORES
NOR~AL
OPERATION
OF
THE
PROGRAM.
5,2
SW<14>
THE
PROGRAM
LOOPS
ON
THE
SU8TEST
THAT
IS
BEING
EXECUTED
WHEN
THE
SWITCH
IS
PUT
ON,
THIS
SWITCH
IS
USED
NORMALLY
ALONG
WITH
sw
15.
SEE
SEC
8.0.
5.3
SW
<13>
THIS
SWITCH
INHIBITS
ALL
ERROR
MESSAGES,
NORMALLY
USED
WHEN
LOOPING
ON
TEST
(5W
14)
OR
LOOPING
ON
ERROR
(SW
9).
5,4
SW
<12>
THIS
SWITCH
ALLOWS
THE
PORGRAM
TO
CYCLE
FROM
THE
POINT
or
ERROR
TO
THE
PREVIOUS
SCOPE
STATEMENT.
NOTE
THAT
IN
DOING
SO
ANY
INITIALIZATION
BEING
DONE
AT
THE
BEGI~JNG
OF
THE
SUBTEST
WILL
BE
DONE
AGAIN
AND
AGAIN.
SEE
SEC
8.0
FOR
DIFFERENT
SCOPE
LOOPS
AVAILABLE.
5,5
sw
<11>
EACH
SUBTEST
WILL
BE
EXECUTED
ONLY
ONCE.
NORMALLY
AFTER
THE
FIRST PASS,
EACH
SUBTEST
IS
ITERATED
A
NUMBER
OF
TIMES
(USUALLY
50,
5
IN
SOME
CASES).
SETTING
THIS
SWITCH
INHIBITS ITERATIONS,
SO
THAT
QUICK
PASSES
CAN
BE
MADE,
5,6
SW
<10>
THIS
SWITCH
WHEN
SET
INDICATES
THAT
TESTING
IS
BEING
DONE
ON
A
SIMULATOR,
THE
SWITCH
SHOULD
8E
PUT
UP
BEFORE
STA~T·
ING
THE
PROGRAM,
NOTE
THAT
RKI1C
IS
NOT
COMPATIBLE
WITH
THE
SIMULATOR.
5,7
SW
<09>
THIS
SWITCH
PROVIDES
THE
TIGHTEST
POSSIBLE
SCOPE
LOOP,
NOTE
THAT
UNLIKE
SW12
THE
INITIALIZATION
or
PARAMETERS
AT
THE
BEGINNING
OF
THE
SUBTEST
MAY
NOT
BE
DONE
IN
THIS CASF, THIS
SWITCH
IS
HELPFUL
wHEN
A
PARTICULAR
PART
OF
A
SUB
TEST
IS
BEING
REPEATED
USING
DIFFERENT
PARAMETERS
AND
YOU
WANT
TO
SCOPE
ON
THE
PARAMETER
IN
ERROR,
(EXAMPLE.
RKDA
IS
BEING
WRITTEN
AND
READ
BACK
WITH
COUNT
PATTERNS
FROM
1
TO
177177.
PATTERN
561
IS
GIVING
ERROR,
YOU
MIGHT
NOT
WANT
TO
GO
THROUGH
THE
560
PATTERNS
BEFORE
HITTING
ERROR
ON
THE
561TH
PATTERN,
IN
THIS
CASE
SW
9
WILL
GIVE
YOU
A
SCOPE
LOOP
ON
THE
561TH
PATTERN
ONLY.)
5,8
SW
<08~
THIS
SWITCH
IS
USED
TO
SELECT
A
PARTICULAR
TEST
CAS
PER
SW<00-07»
fOR
EXECUTION
AND
SUBSEQUENT
LOOPING.
THUS
IF
TEST
15
IS
TO
BE
SELECTED
THE
SWITCH
SETTING
WOULD
BE
000415,
IT
SHOULD
BE
NOTED
THAT
BEFORE
SELECTING
TEST
15,
ALL
THE
PREVIOUS
TESTS
(1-14)
WILL
BE
EXECUTED.
6,0
SCOPE
LOOPS
THERE
ARE
THREE
KINDS
OF
SCOPE
LOOPS
AVAILABLE
1.
SW14:
LOOPING
IS
DONE
FOR
THE
ENTIRE
sue-TEST
2,
SW12z
LOOPING
IS
DONE
FROM
THE
POINT
OF
ERROR
BACK
TO
THE
PREVIOUS
~5COPE'
STATEMENT.
3.
SW09a
PROVIDE
THE
TIGHTEST
POSSIBLE
SCOPE
LOOP
SEE
SEC,
5.7
EX~MPLEI
TST11
SCOPE
INITIALIZATION
ERROR
I
ERROR
2
I
ERROR
3
I
ERROR
"
I
I
TST2.
SCOPE
THE
SEQUENCE
or
LOOPING
FOR
DIFFERENT
CASES
IS
EXPLAINED
BELOW.
NOTE
THAT
'TST1'
AND
'TST2'
ARE
TAGS
WHICH
DEFINE
THE
BOUNDARY
OF
A
TEST,
(IN
THIS
CASE
TEST
1),
TEST
1
STARTS
AT
'TST1'
AND
ENOS
JUST
BEFORE
'TST2'.
IN
THE
ILLUSTRATION
BELOW
-->
INDICATES
THE
POINT
FROM
WHERE
RETURN
IS
MADE
AND
LOOPING
IS
DONE.
1.
ERROR
2
OCCURS,
SW
14
SET.
TSTI
••
ERROR
2
••
TST2-->TST1
••
ERROR
2.,TST2-->TST1
•••
2,
ERROR
'2
OCCURS,
SW
12 SET.
TSTt
•••
ERROR
2-->TST1
•••
ERROR2--)TSTt
•••
3.
ERROR
2,3,
SW
14
SET.
TST1,.ERROR 2.,ERROR
3"TST2-->TST1
••
ERROR
2
••
ERROR
3
••
T8T2-->TST1
•••
4.
ERROR
2,3,
SW
12
8ET.
TSTt."ERROR
2-->TST1,
••
ERROR
2-->T8Tl
••••
NOTE
THAT
LOOPING
IS
DONE
FROM
THE
VERY
FIRST
ERROR
ENCOUNTERED.
THE
MORE
BASIC
AND
ERROR
THE
EARLIER
IT
OCCURS
AND
IS
DETECTED
AND
SHOULD
8E
FIXED.
IN
THE
ABOVE
EXAMPLE
NO
PART
OF
THE
SUB-TEST
IS
BEING
REPEATED
USING
DIFFERENT
PARAMETERS,
HENCE
IT
SO
HAP-
PENS
THAT
SW
9
AND
12
GIVE
THE
SAME
KIND
OF
LOOPS,
THE
EXAMPLE
BELOW
WILL
DEMONSTRATE
THE
DIFFERENCE
BETWEEN
sw
9
AND
12.
TST1,
tSl
SCOPE
I
INITIALIZATION
I
ERROR
I
MOV
:'SLPERR'
CONTAINS
:THE
ADDRESS
TO
LOOP
:BACK
ON
EPROR-
SW
9
I
EPROR
2
TST2z
SCOPE
1.
SW
12
SET,
ERROR
2
REPETITIONS
I
I
OCCURS
N REPETITIONS
DUPING
TST1
••
1,2.,.K.ERROR
2-->TST1
••
1,2
•••
K.ERROR
2-->TST1,.
2.
SW
9 SET,
ERROR
2
OCCURS
DURING
K.TH
REPETITION
IS
••
K
••
ERROR
2-->I
•••
K
••
ERROP
2-->1$
•••
1.0
PROGRAM
DESCRIPTION
IN
THIS
PART
OF
THE
PROGRAM
THAT
PART
OF
THE
RKll
CONTROLLER
IS
CHECKED
wHICH
DOES
NOT
DEPEND
ON
SIGNALS
FROM
THE
DRIVE,
THUS
A
DRIVE
IS
NOT
NEEDED
FOR
THIS
TEST,
BUT
IT
SHOULD
BE
NOTED
THAT
THE
PART-II
OF
THE
'BASIC
LOGIC
TESTS'
MUST
BE
RUN,
IN
ORDER
TO
GET
A
COMPLETE
COVERAGE.
THE
TESTS
ARE
GRADUALLY
8UILT
UP,
CHECKING
THE
MOST
BASIC
AND
SIMPLE
LOGIC
FIRST
AND
THEN
PROGRESSIVELY
MORE
COMPLEX
LOGIC.
THE
FIRST
TEST
CHECKS
THAT
ALL
RKll
REGISTERS
CAN
BE
REFERENCED
WITHOUT
TlMING
OUT,
THEN
THE
INITIALIZATION
LOGIC
or
RKll
IS
CHECKED,
THEN
IT IS
CHECKED
THAT
ALL
REGISTERS
CAN
BE
WRITTEN
AND
READ
CORRECTLY,
BY
FLOATING
A
'I'
AND
THEN
USING
A
COUNT
PATTERN.
THEN
IT
IS
CHECKED
THAT
THE
RKl1
REGISTERS
CAN
BE
CLEARED
USING
CONTROL
RESET
AND
RESET
CBUS
INIT).
FINALLY,
THE
WORD
AND
BYTE
ADDRESSING
LOGIC
or
RK11
IS
CHECKED
TO
SEE
THAT
EACH
REGISTER
IS
UNIQUELY
ADDRESSED.
8.0
ERROR
REPORTING
THE
ERROR
TABLE
STARTING
AT
$ERRTB
CONTAINS
INFORMATION
PERTAINING
TO
EVERY
ERROR
THAT
CAN
OCCUR.
EACH
ITEM
IN
THE
TABLE
CONSISTS
OF
FOUR
ENTRIES.
A.
EM
-
THIS
15
A
POINTER
TO
THE
ERROR
MESSAGE
TO
BE
TYPED
OUT
WHEN
THE
ERROR
OCCURS.
B.
DH
-
THIS
IS
A
POINTER
TO
THE
DATA
HEADER
TO
BE
TYPED
OUT.
C.
DT
THIS
15
A
POINTER'
TO
THE
DATA
wHICH
IS
TO
BE
TYPED TYPED
OUT
UNDER
THE
HEADERS.
D.
0 -
THIS
IS A
TERMINATOR
SIGNIFYING
THE
END
OF
THE
ITEM.
THE
ERROR
CALL
IS
AN
EMT
INSTRUCTION
WITH
ITS
LOWER
BYTE
ENCODED
TO
INDICATE
THE
ERROR
NUMBER.
THUS
"ERROR
1"
WOULD
BE
(EMT.1) IE
104001.
EVERY
ERROR
CORRESPONDS
TO
AN
ITEM
IN
THE
ERROR
TABLE.
THUS
"ERROR
14"
WOULD
CORRESPOND
TO
ITEM
14.
AS
FAR
AS
POSSIBLE,
THE
EPROR
MESSAGES
HAVE
BEEN
KEPT
SHORT,
BUT
CLARITY
IS
NOT
SACRIFICED
FOR
BREVITY.
INSPITE
OF
THIS,
IF
THE
USER
FINDS
A
NEED,
HE
CAN
LOOK
UP
THE
ENTIRE
ERROR
MESSAGE
IN
THE
ERROR
ITEMS
TABLE
FOUND
IN
THE
BEGINNING
or
THE
LISTINGS.
THUS
FOR
"ERROR
14",
"ITEM
14"
IN
THE
ITEM
TABLE
CAN
BE
LOOKED
UP.
WHEN
THE
ERROR
INSTRUCTION
IS
EXECUTED
A
TRAP
OCCURS
TO
THE
ERROR
HANDLER
LOCATED
AT
SERROR
WHICH
PROCESSES
THE
ERROR
CALL.
SEE
SEC
12.3
9.0
ERROR
INTERPRETATION
WHENEVER
AN
ERROR
MESSAGE
IS
PRINTED
OUT,
ALL
REGISTERS
AND
OTHER
DATA
PERTAINING
TO
THE
ERROR
ARE
ALSO
GIVEN.
RKDS,
RKER
•••
RKBA
INDICATE
THE
CONTENTS
or
THE
CORRESPONDING
REGISTERS
AT
THE
TIME
OF
ERROR.
EVERY
ERROR
MESSAGE
CONTAINS
A PC.
THIS
PC
INDICATES
THE
POSITION
IN
PROGRAM
WHERE
THE
ERROR
CALL
IS
LOCATED.
THE
ERROR
MESSAGE,
BECAUSE
OF
PRACTICAL
CONSIDERATIONS
IS
MADE
SHORT
AND
MEANINGFUL,
THE
USER
IS
ADVISED
TO
LOOK
UP
THE
PC
IN
THE
PROGRAM
LISTING,
WHERE
HE
WILL
FINO
MORE
INFORMATION
ABOUT
THE
ERROR,
IN
MANY
INSTANCES,
A
SINGLE
FAULT
WILL
GIVE
RISE
TO
MORE
THAN
ONE
ERROR
REPORT.
A
LITTLE
DELIBERATION
AND
CAREFUL
EXAMINATION
OF
THE
DATA
GIVEN
WILL
BE
CERTAINLY
VERY
HELPFUL
IN
PINPOINTING
THE
FAULT.
A
BRIEF
EXPLANATION
OF
WHAT
ts
BEING
CHECKED
IN
THE
SU8TEST
IS
GIVEN
AT
THE
BEGINNING
OF
EVERY
SUBTEST.
ALL
THE
NUMBERS
GIVEN
WITH
ERROR
MESSAGES
ARE
IN
OCTAL.
10.0
HANDLERS
AND
COMMON
ROUTINES
THE
COMMONLY
USED
ROUTINES
USED
IN
THE
PROGRAM
ARE
CALLED
IN
TWO
WAYS,
A.
AS
A
SUBROUTINE
THROUGH
'JSR'
CALL
8,
THROUGH
A 'TRAP'
HANDLER
10.1
TRAP
HANDLER
MANY
COMMONLY
USED
ROUTINES
IN
THE
PROGRAM
ARE
CALLED
USING
THE
TRAP
INSTRUCTION
AND
THE
'TRAP'
HANDLER.
THE
LOWER
BYTE
OF
THE
TRAP
INSTRUCTION
IS
ENCODED
DIFFERENTLY
FOR
DIFFERENCT
ROUTINES.
THE
TRAP
HANDLER
IS
LOCATED
AT
'STRAP',
WHEN
A
CALL
FOR
A
ROUTINE
IS
EXECUTED,
A
TRAP
OCCURS
TO
THE
HANDLER
AT
"TRAP',
THE
HANDLER
PICKS
UP
THE
LOWER
BYTE
OF
THE
"CALL
INSTRUCTION"
AND
USES
IT
TO
FORM
THE
STARTING
ADDRESS
OF
THE
ROUTINE
TO
GO
TO
FOP
SERVICE.
10.2
SCOPE
HANDLER
THE
'lOT'
TRAP
IS
USED
BY
THE
'SCOPE'
STATEMENT,
WHEN
'SCOPE' IS
EXECUTED,
AN
rOT
TRAP
OCCURS
TO
MEMORY
LOCATION
"SCOPE',
THE
SCOPE
HANDLER
STARTS
AT
'SCOPE,
DEPENDING
ON
THE
SWITCH
SETTINGS
THE
HANDLER
DECIDES
TO
LOOP
ON
TEXT,
INHIBIT
ITERATIONS
ETC.
THERE
ARE
CERTAIN
POINTERS
AND
FLAGS
WHICH
ARE
ADJUSTED~
THUS~
IT
IS
NOT
ADVISABLE
TO
STAPf
THF
PROGRAM
AT
ANY
GIVEN
LOCATION
SINCE
THE
VARIOUS
POINTERS
AND
FLAGS
MAY
NOT
BE
CORRECTLY
ADJUSTED.
10,3
ERROR
HANDLER
AN
EMT
TRAP
INSTRUCTION
IS
USED
BY
THE
ERROR
CALL.
THE
LOWER
BYTE
IS
ENCODED
TO
GIVE
DIFFERENT
ERROR
CALLS.
CEXI
ERROR
1
10400~+lr
ERROR
16 =
t04a00+16).
WHEN
THE
ERROR
STATEMENT
IS
EXECUTED,
A
TRAP
OCCURS
TO
MEMORY
LOCATION
'SERROR',
THE
ERROR
HANDLER
IS
LOCATED
AT
'SERROR'.
THE
HANDLER
FOPMS
THE
POINTER
TO
ERROR
TABLE,
WHICH
IS
USED
IF
AN
ERROR
MESSAGE
IS
TO
BE
TYPED
OUT.
DEPENDI~G
ON
THE
SWITCH
SETTINGS, A
DECISION
ABOUT
HALTING
ON
ERROR,
INHIBITING
TYPEOUT,
LOOPING
ON
ERROR
ETC.
IS
MADE.
IF
AN
ERROR
MESSAGE
IS
TO
BE
TYPED
DUT
AN
EXIT
IS
MADE
TO
THE
ERROR
MESSAGE
TYPEOUT
ROUTINE
LOCATED
AT
'SERRTYP'.
10.4
CONTROL
PESET
ROUTINE
THE
CALL
FOR
THIS
ROUTINE
IS
"CNT.RESET"
AND
IS
AN
ENCODED
'TRAP'
INSTRUCTION,
WHEN
"CNT,RESET"
IS
EXECUTED
THE
CONTROL
RESET
ROUTINE
STARTING
AT
"CN,RST"
IS
ENTERED.
A
CONTPOL
RESET
IS
ISSUED
AND
THE
PROGRAM
WAITS
TILL
THE
CONTROL
READY
SETS,
ON
WHICH
THE
ROUTINE
IS
EXITED.
IF
CONTROL
READY
DOES
NOT
SET
WITHIN
A
CERTAIN
TIME
AN
ERROR
IS
REPORTED.
THE
PC
TYPED
OUT
IS
THE
LOCATION
WHERE
THE
"CNT,RESET"
CALL
IS
LOCATED,
THE
WAITING
TIME
IS
2,8
MS
FOR
11/20
AND
560
US
FOR
11/45
WITH
BIPOLAR
MEMORY.
10,5
CONTROL
READY
ROUTINE
THIS
ROUTINE
IS
CALLED
BY
"CNT,RDY"
CAN
ENCODED
'TRAP'
INSTRUCTION)
AND
IS
LOCATED
AT
"CN,RDY".
THE
ROUTINE
WAITS
FOR
THE
CONTROL
READY
TO
SET
AND
WHEN
IT
DOES,
EXITS
OUT.
IF
CONTROL
READY
DOES
NOT
SET
WITHIN
A SPECIFIED
TIME
AN
ERROR
MESSAGE
IS
GIVEN
CNTRL
ROY
DIDN'T
SET
PC
=
XXXXXX
RKCS
=
YYYYYY
THE
PC
IS
THE
LOCATIO~
AT
WHICH
THE
"CNT.RDY"
CALL
15
LOCATED.
THE
WAITING
TIME
IS 949
~S
FOR
11/20
AND
189
MS
FOR
11/45
WITH
BIPOLAR
MEMORY,
10,6
TIME
DELAY
ROUTINE
THIS
ROUTINE
PROVIDES
A
VARIABLE
TIME
DELAY,
THE
CALL
IS
DELAY
,N
WHERE
N-l
TO
177717
(OCTAL)
TIME
DELAY
PROVIDED_
7.5
TIMES(
X ) N
MICRO
SECS
FOR
11/20,
1.5N
US
FOR
11/45
(N
CONVERTED
TO
DECIMAL
BEFORE
COMPUTING
DELAY)
IF
THE
USER
WANTS
TO
CHANGE
THE
DELAY
AT
ANY
POINT
IT
CAN
BE
DONE
BY'SIMPLY
CHANGING
VARIABLE
'N',
10,7
OTHER
ROUTINES
THERE
ARE
OTHER
COMMONLY
USED
ROUTINES
AS
LISTED
BELOW.
STYPEI
TYPE
ROUTINE
FOR
TYPING
OUT
ASCII
STRI~GS.
LOCATED
AT
"STYPE"
CALLED
BY
"TYPE"
,TYPOCI
ROUTINE
FOR
TYPING
OUT
OCTAL
NUMBERS,
LOCATED
AT
"STYPOC"
CALLED
8Y
"TYPOC"
STYPDS.
ROUTINE
FOR
TYPING
OUT
DECIMAL
NUMBERS.
LOCATED
AT
"STYPOS"
CALLED
BY
"TYPOS"
8ERRTYPa
ROUTINE
FOR
TYPING
OUT
ERROR
~ESSAGES.
LOCATED
AT
SERRTYP
CALLED
BY
"JSR
SERRTYP"
$PWRDN,SPWRUPI
ROUTINE
FOR
HANDLING
POWER
FAILUREIPOWER
UP,
LOCATED
AT
SPWRDN,$PWRUP
$PWRrL,CALLED
WHEN
THERE
IS
A
POWER
FAILURE.
tPWRUP,CALLED
WHEN
THERE
IS
A
POWER
UP.
11,0
UNEXPECTED
TIMEOUTS
AND
RKll
INTERRUPTS
WHEN
AN
UNEXPECTED
TIMEOUT
OCCURS,
THE
PC
AT
WHICH
TIME
OUT
OCCURED
IS
TYPED
OUT
AND
THE
PROGRAM
HALTS.
IF
IT
IS
INTACT,
IT
CAN
BE
~ESTARTED
BY
P~ESSING
CONTINUE.
IF
AN
UNEXPECTED
RKll
INTERRUPT10CBURS
THE
PROGRAM
TYPES
OUT
THE
PC
AT
WHICH
THE
INTERRUPT
CAME
IN
~NO
THEN
HALTS,
PRESSING
CONTINUE
WOULD
RESTART
THE
PROGRAM
FROM
BEGINING.
SW
9-
LOOPING
CAPABILIT~
IS
PROVIDED
AS
A
TROUBLE
SHOOTING
AID.
12.0
QUICK
VERIFYING
MODE
THE
FIRST
PASS
OF
THE
PROGRAM
IS
A
QUICK
VERIFYING
MODE.
ALL
THE
TESTS
ARE
DONE
ONLY
ONCE,
ON
SUBSEQUENT
PASSES
THE
TESTS
ARE
ITERATED
(NORMALLY
50
TIMES, 5
IN
SOME
CASES).
THUS
THE
FIRST
PASS
TAKES
A
SHORTER
TIME
TO
COMPLETE,
WHEREAS
SUBSEQUENT
PASSES
TAKE
MORE
TIME.
MAINDEC-11-0ZRKJ-D
MACYl1
27(1006)
04-0CT-76 13108
DZRKJD.Pll 30-AUG-76 14148
TABLE
OF
CONTENTS
22
49
159
168
170
18t
271
478
515
520
612
651
677
700
122
180
804
826
865
906
929
963
988
1023
1047
1082
1107
1161
1234
1310
1406
1452
1468
1480
1502
1519
1563
1631
1667
1115
1855
1926
1994
2072
2~95
2122
2110
2301
2124
OPERATIONAL
SWITCH
SETTINGS
BASIC
DEfINITIONS
TRAP
CATCHEP
STARTING
ADDRESS(ES)
ACTtl
HOOKS
COMMON
TAGS
ERROR
POINTER
TABLE
INITIALIZE
THE
COMMON
TAGS
TYPE
PROGRAM
NAME
GET
VALUE
FOR
SOFTWARE
SWITCH
REGISTER
Tl
TEST
THAT
ALL
RKll
REGISTERS
CAN
BE
REFERENCED
T2
CHECK
RKll INITIALIZATION
T3
TEST
RKCS
FUNCTION
BITS
1,2,3
T4
TEST
RKCS
EXTENDED
MEMORY
BITS -
4,5
T5
CHECK
RKCS
IDE
BIT b
T6
CHECK
RKCS
SSE,EXB,rMT,IBA BITS -
8,9,10,11
T7
CHECK
READ
ONLY
BITS
Of
RKCS
T10
CHECK
THAT
-GO-
BIT
(0)
CIN
BE
SET
Til'
CHECK
RKCS
WITH
A
COUNT
PATTERN
T12
CHECK
THAT
RKWC
BIT
0-15
CAN
BE
SET
T13
CHECK
RKWC
WITH
A
COUNT
PATTERN
T14
CHECK
THAT
RKBA
CAN
BE
S~T
T15
CHECK
RKBA
WITH
A
COUNT
PATTERN
T16
CHECK
THAT
RKDA
CAN
BE
SET
T17
CHECK
RKDA
WITH
A
COUNT
PATTERN
T20
CHECK
THAT
RK~C~RKBA,RKDA
CAN
BE
CLEARED
BY
RESET
T21
CH!CKTHAT
RKCS,
RKWC.
RKBA,
RKDA
CAN
BE
CLEARED
BY
CONTROL
RESET
122
CHECK
THAT
EACH
RKll
REGISTER
IS
UNIQUELY
ADRESSED
T23
CHECK
THAT
HI
,
LO
BYTES
OF
RKCS
CAN
BE
ADORESSED
T24
CHECK
THAT
HI
,
LO
BYTES
OF
RKWC,BA,DA
CAN
BE
ADDRESSED
END
OF
PASS
ROUTINE
GT3RG:
ROUTINE
FOR
GETTING
RKCS,
RKF.R,
RKDS
GT4RG:
ROUTINE
rOR
GETTING
RKCS,
RKER,
RKOS,
RKDA
DELAYe
TIME
DELAY
ROUTINE
CON.RESET:
CONTROL
REST
ROUTINE
CHT.RDY:
WAIT
FOR
CONTROL
READY
ROUTINE
SCOPE
HANDLER
ROUTINE
ERROR
HANDLER
ROUTINE
ERROR
MESSAGE
TYPEOUT
ROUTINE
TTY
INPUT
ROUTINE
TYPE
ROUTINE
CONVERT
BINARY
TO
DECIMAL
AND
TYPE
ROUTINE
BINARY
TO
OCTAL
(ASCII)
AND
TYPE
TRAP
DECODER
TRAP
TABLE
POWER
DOWN
AND
UP
ROUTINES
ERROP
MESSAGES
ERROR
DATA
POINTERS
ERROR
HEADERS
MAI
~DEC-l1-DZRKJ-D
MACYll
27C
1006)
04-0CT-76
13108
PAGE
1
DZRKJD.Pll
10-AUG-76
14148
1
2
1
4
5
6
7
8
9
tI'l
11
12
!l
14
15
16
t7
18
19
20
21
22
21
24
25
26
27
28
29
10
II
32
)3
)4
lS
36
37
38
19
40
41
42
n
44
45
46
47
49
49
50
SI
52
53
54
5S
56
001100
0001:111
.TITLE
MAINDEC-ll-DZRKJ-D
,.COPYRIGHT
(el
1974,1976
,.DIGITAL
EQUIPMENT CORP.
,.MAYNAM,
MASS.
017S4
,.
,.PROGRAM
BY
JIM
KAPADIA
,.
,.THIS
PROGRAM
WAS
ASSEMBLED
USING
THE
PDP-l1
MUNDEC
SySMAC
,.PACKAGE
(MAINDEC-ll-DZQAC-C2l,
SEPT
14,
1976.
,.
,.JANUARY
1975
.SBTTL
OPERATIONAL
,.
,.
SIUTCH
,.
;.
15
:.
14
:.
13
,.
12
,.
11
,.
11:1
,.
9
,.
8
,.
SWI'l'CH SETTHIGS
USE
HALT
ON
ERROR
LOOP
ON
TEST
INHIBIT
ERROR
TYPEOUTS
CYCLE
ON
ERROR
TO
PREfIOUS
INHIBIT
ITERATIONS
TESTING
ON
SIMULATOR
LOOP
ON
ERROR
LOOP
ON
TEST
IN
SIIR<7'0>
,.PROGRAM REVISED 8Y
TOM
SAWYER,
MARCH
1976
:.REVISED
BY
CHUCK
HESS,
AUGUST
1976
"SCOPE" STATEMENT
,
.............................................................
.
,YOU
ARE
ADVISED
TO
READ
THE
DOCUMENT
BEFORE
USING
THIS
PROGRAM.
JON
GETTING
AN
ERROR
REFER
TO
THE
LISTINGS
AT
THE
PC
POINTED
lOUT
IN
THE
ERROR
MESSAGE. ADJACENT
ERROR
MESSAGES
IF
FOLLOWED
:CAREFULLY
COULD
LEAO
TO
AN
EAS't
PINPOINTING
OF'
THE
rAULT
:
................................................................
.
SBTTL BASIC
DEF
UlrIONS
:.INITIAL
ADDRESS
OF
THE
STACK
POINTER
...
1100
...
STACKa
1100
.EQUIV
EMT,ERROR
"BASIC
DEFINITION
OF
ERROR
CALL
.EQUIV
lOT,
SCOPE
"eASIC
DEFINITION
OF
SCOPE
CALL
:.MISCELLANEOUS
DEFINITIONS
HT=
11
,:
CODE
FOR
HORIZONTAL
TAB
MAINDEC-l1-DZRKJ-D
"'ACYl1
27
(1006)
04-0CT~76
13:
08
P"GE
DZRKJD.Pll
la-AUG-76
14148
BASIC
DEFINITIONS
57
1:101:1012
LF-
12
IICODE
FOR
LI
NE
FEED
58
000015
CR:
15
,'CODE
FOR
CARRIAGE
RETURN
59
000200
CRLFo:
200
, :CODE
FOR
CARRIAGE
RETURN.LINE
FEED
60
177776
PS=
177776
I,PROCESSOR STATUS
WOIIO
61 EQUIV PS,PSW
62
177774
8TKL"'T-
177774
, I STACK
LIMIT
REGISTER
61
177772
PIRQa
177772
"PROGRAM INTERRUPT
REQUEST
REGISTER
64
177570
DSWRa
177570
"
IlARDWARE
SWITCH REGISTER
65
177570
DDISPo:
177570
"HARDWARE
DISPLAY
REGISTER
66
67
: .GENERAL
PURPOSE
REGISTER
DEFINITIONS
69
000000
R0a
,0
, ,GENERAL REGISTER
69
O00001
Rla
U I : GENERAL REGISTER
70
000002
1'20:
'2
, , GENERAL REGISTER
71
000033
1'3-
'3
, ,GENERAL REGISTER
72
PI"0004
R4-
'4
"GENERAL
REGISTER
73
000005
R5o:
'5
, ,GENERAL REGISTER
74 01'10306
R6-
'6
, I
GENERAL
REGISTER
75
O00007
R7a
t7
,:GENERAL
REGISTER
76
000006
SP-
,6
J J
STACK
POINTER
77
000007
PCa
" "PROGRAM
COUNTER
79
79
:.PRIORITY
LEVEL
DEFINITIONS
80
000000
PR0a 0
II
PRIORITY
LEVEL 0
III
001:1040
PRlo:
40
"
PRIORITY
LEVEL 1
92
000100
PR2.
100
, ,
PRIORITY
LEVEL 2
93
00"140
PR3-
140
"PRIORITY
LEVEL 3
84
1:100200
PR4-
200
, :
PRIORITY
LEVEL 4
85
000240
PRS-
240
"PRIORITY
LEVEL 5
86
090300
PR6-
300
, ,
PRIORITY
LEVEL 6
87
000]40
PR7.
340
,
,PRIORITY
LEVEL 7
.98
R9
:."SWITCH
REGISTER" SWITCH
DEFINITIONS
90
100000
SW1S-
100001:1
91 04001'10 SW14,.
40000
92
020000
SW13=
20001:1
93
010030
SW12a
10000
94
004000
SWlla
4000
9S
002000
SWt'0=
2000
96
01:1t000 SW09a
1000
97
000400
SIIi0S.
400
98
000200
SW07.
200
99
000100
SW0&.
100
100
000040
SW05.
40
10t
000020
SW04-
20
102
000010
SW01a
10
103
11100004
SW02- 4
104
000002
SW0ta
2
105
"00001
SW00- 1
106
.EQUlY
SW09,SW9
107
.EQUIV
S1I08,SW8
108
.EOUIV
SW07,SW7
109
.EQUIV
Sil06,SW6
110
.EQUIV
SW0S,SW5
111
I!:OU
IV
SW04,SW4
S£;Q
0014
SEQ
0015
MAINDEC-II-0ZIlKJ-O
IUCYlI
27
(1006'
04-0CT-76
13,08
PAGt
3
DZIIKJD,Pll
30-AUG-n
14,49
BASIC
DEfINITIONS
1 I 3
114
1 I 5
116
117
118
lt9
120
121
122
123
124
125
126
127
128
129
130
131
n2
113
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
10;1
152
153
154
155
156
157
158
159
160
161
162
163
164
165
000114
166
000176
167
168
000200
100000
04000~
020000
010000
004000
002000
001000
000400
000200
000100
000040
000020
000011il
000004
000002
0001il01
001'1004
1'100010
000014
1'101'1014
01'10014
001'1021'1
000024
1'101'1030
000034
000060
000064
000240
001'1000
000174
000000
1'1
00M'
1'1
01'10137
001542
,EOlllV
SN02,S1rI2
,EOUIV
SN01,swl
.FOUIV
5W00,SW0
,.OuA
BJTJ5-
BITU.
BITt
J-
BIT12-
BIT11-
BIT10-
BIT09.
BITIil8-
BIT07-
BIT06-
BITIil5-
BIT04-
BIT03-
SIT0?-
BIT01-
BITil0-
,EOUIV
EOUIY
.EOUIV
.EOUIV
.EQUIV
,EOUlV
.EOUIV
,F.QUIV
.EOUIV
.EOUIV
BIT
DEFINITIONS
100000
40001'1
20000
11'1000
4001'1
2000
1000
400
200
100
40
20
10
4
2
1
BIT09,BIT9
BIT0S,BIT8
BIT07,BlT7
BIT06,BIT6
BIT05,SIT5
SIT04,BJT4
BIT03,BIU
BITI!2,BIT2
BlT01,BlTl
BlT00,eIT0
(BIT01'1
TO
BITI5)
,.SASIC
·CPU·
ERRVEC- 4
RESVEC"
to
TBITVEC-14
TRTVEC=
14
BPTVEC-
14
IOTVEC-
20
PWRVEC=
24
EIATVEC-
30
TRAPVEC-34
TKVEC"
60
TPVEC=
64
PIRQVEC-240
TRAP VECTOII AOOIIESSES
.SBTTL
TRAP CATCHER
...
0
"TIME
OUT
AND
OTHER ERRORS
"RESERVED
AND
ILLEGAL
INSTRUCTIONS
;
,"T"
BIT
,:
TRACE TRAP
I,BREAKPOINT
TRAP
(BPT)
"
INPUT/OUTPUT
TRAP
(lOT)
HSCOPE**
, ,POWER
FAIL
"EMULATOR
TRAP
(EMTl
HERROR**
,,"TRAP"
TIIAP
,
,TTY
KEYBOARD
VECTOR
, I
TTY
PRINTER
VECTOR
"PROGRAM
INTERRUPT REQUEST
VECTOR
,.ALL
UNUSED
LOCATIONS
rROM
4 -
776
CONTAIN A
.+2,HALT"
;.SF.QUENCE
TO
CATCH ILLEGAL TRAPS
AND
INTERRUPTS
I.LOCATION
'"
CONTAINS \l
TO
CATCH
IMPROPERLY
LOADED
VECTORS
.-174
OISPREGI
WORD
I'
sorrWARE
DISPLAY
REGISTER
SWREGI
.WORD
0
I,SOFTWARE
SWITCH
REGISTER
.SBTTL
STARTING
ADORESS(ES)
JMP
"START
" JUMP
TO
STARTING ADDRESS
or
PROGRAM
MAINDEC-1I-0ZRKJ-O
"'ACYll
27(101'16)
04-0CT-76
13",8
PAGE
DZRKJO.
Pl1
3I'J-AUG-76
14148
ACT11
HOOKS
169
170
171
172
173
174
175
0001'146
176
177
000052
171l
179
000204
001'1046
1'11'15370
01'10052
000000
01'10204
SBTTL
ACTll
HOOKS
I ,
•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
IHOOKS RE-QUIRED
BY
ACT11
SVPC-.
; SAVE
PC
._46
'I!:NDAD
1,1)
SET
LOC.
46
TO
ADDRESS
or
IENDAD IN SEOP
.-52
.WORD
1,2)SET
LOC.52
TO
ZERO
-asvpc
; I RESTORE
PC
SEQ
0016
SEQ
",017
MAItfDEC-l1-DZRICJ-D
MACnl
27(11'186)
04-0CT-76
131es
PAGE
DZRICJD.P11
38-AU<;-16
14148
CONMON
TAGS
SEQ
1'11'118
191'1
,S8TTL
COMMON
TAGS
181
182
, ,
••••
***.****************************************************.**
183
,*THIS
TABLE:
CONTUNS
VARIOUS
COMMON
STORAGE
LOCATIONS
184
;*USEO
IN
THE
PROGRAM.
195
186
eellee
.-1101'1
197
1'18111'11'1
.CNTAGz
"START
OF
COMMON
TAGS
188
81'1111'18
88881'10
.PASSI
.WORD
II :
:COIiTUMS
PASS
COUNT
199
!ileU02
!ilge .TSTNMS
.8YTE
e ,
,CONTAINS
THE TEST
NUM8ER
19!il 1'181183
881'1
.ERFLGI
.8YTE
8 :
,CONTAINS
ERROR
FLAG
191
e!il1184
80881313
IlCtfTz
.WORD
1'1
:
,CONTAINS
SUBTEST
ITERATION
COUNT
192
813111'16
00801'10 SLPAORs
.WORD
1'1
:
,CONTAINS
SCOPE
LOOP
ADDRESS
193
001118
1'18881'11'1
SLPERRI
.WORD
1'1
,
,CONTAINS
SCOPE
RETURN
FOR
ERRORS
194
1'11'11112
81'11'11'11'11'1
SERTTLI
.WORD
1'1
I,CONTAINS
TOTAL
ERRORS
DETECTED
195
1'101114 8elil
UTEN81
.BYTE
e I
,CONTAINS
ITEM
CONTROL
8YTE
196
81'11115
eel
IERMAXI
.SYTE
1 ;
,CONTAINS
MAX.
ERRORS
PER
TEST
197
e!il1116
8801'109 .ERRPCa
.WORD
9 :
'CONTAINS
PC
OF
LAST
ERROR
INSTRUCTION
198
891121'1 08891'18
.GDADRI
.WORD
8
I,CONTAINS
ADDRESS
OF
"GOOD" DATA
199
1'11'11122
0881'11'10
SBDADRa
.WORD
8
nCONTAINS
ADDRESS
OF
"SAD"
DATA
201'1
1'181124
081'101'18
SGDDATI
.WORD
1'1
"CONTAINS
"GOOD" DATA
21'11
1'11'11126
1'11'10001'1
SBODATI
.WORO
0
"CONTAINS
"SAD"
DATA
202
1'181138
081'101'11'1
.WORD
1'1
,
,RESERVED--NOT
TO
BE
USED
203
00H32
006660
.!IlO!!O 0
204
1'11'11134
1'11'10
SAUTOBa
.SYTE
8 :
'AUTOMATIC
'"'ODE
INDICATOR
235
001135
1'11'18
SINTAGI
.BYTE
0
;,INTERRUPT
MODE
INDICATOR
286
881136
e801il1il1il
WORD
e
207
891141'1 177571'1
SWRI
.WORD
DSWR
I'
ADDRESS
OF
SWITCH REGISTER
299
81'11142
177578
DISPLr.T1
.WORD
ODISP I I ADDRESS
OF
DISPLAY
REGISTER
209
01'11144 177561'1 STICSI
177569
l'
TTY
KSD
STATUS
210
01'11146
177562
STKBI
177562
, I TTY
KBO
SUFrER
211 1'101150
177564
STPSI
177564
1,TTY
PRINTER STATUS REG. ADDRESS
212
1'101152
177566
STPSI
177566
" TTY PRINTER BUFFER REG. ADDRESS
211
801154
000
SNULLI
.BYTE
0
"CONTAINS
NULL CHARACTER
FOR
FILLS
214
081155
082
.FILLSI
.8YTE
2
:,CONTAINS
OF
FILLER
CHARACTERS REQUIRED
21'5
081156
012
.FILLCI
.SYTE
12
11INSERT
FILL
CHARS. AFTER A
"LINE
FEED"
216
801
157
081'1
STPFLGI
.BYTE
0 "
"TERMINlI"
AVAILABLE"
rLAG
(8IT<07>8e-YES)
217
801160
081'11'100
$
REGAO
I
WORD
1'1
I,CONTAINS
THE
ADDRESS
FROM
218 ,
,WHICH
(SREGe)
WAS
OBTAINED
219
1'11/11162
001'101'10
'REGel
.1i0RO 8
nCONTAINS
«'REGAO)+0)
220
881164
008800
SREG11
.WORO
"
"CONTAINS
«SREGAD)+2)
221
001166
000000
.REG21
.WORD
8
IICONTAINS
«'REGAD)+4)
222
1'101171'1
1'18901'10
.REG31
.WORD
1'1
"CONTAINS
(C$REGAO)+6)
223
881172
0~01ile0
SREG4s
.WORD
0
"CONTAINS
«.REGAD)+10)
224
001174
1'10001'10
.REG51
.WORO
0
"CONTAINS
«UEGAO)+12)
225
001176
008800
'REG6,
,WORD
" :
,CONTAINS
C
(SREGAD)+14)
226
1'101208 000881'1
.REG7.
,WORD
1'1
"CONTAINS
(SREGAO)+16)
227
08121'12 1'100008 $REG191
.WORD
8
"CONTAINS
(CSREGAD)+20)
228
1'11'11204
8001'11'11'1
SREG111
.WORD
0
IICONTAINS
«SREGAD)+22)
229
01'11206
1'101'101'11'1
STIMESI
0
"MAX.
NUMBER
OF
ITERATIONS
230
001211'1
900000
SESCAPEe0
l'
ESCAPE
ON
ERROR
ADDRESS
231
001212
1'177
SQUES.
.ASCII
/11
I f QUESTION
MARK
232
001213
015
SCRLFs
.ASCII
<15>
l'
CARRIAGE
RETURN
233
001214
000012
OLFs
.ASCn
<12>
,fLINE
FEED
234
1
,******************************.***.****.*.**
••
**********
••
*****
23'5
001216
005015
947103
020124
MSG3.
.Ascn
<15><12>/CNT
ROY
DIDN't
SEtl
MAINDEC-l1-DZRKJ-D
l'lACYl1
27C
11'11'16)
04-0CT-76
1311'18
PAGE
DZRKJD.Pl1
J8-AUG-76
14148
COMMON
TAGS
SEQ
01'119
236
001224
842122
020131
844504
237
01'11232
047104
052047
~51440
238
1'11'11241'1
052105
000
239
001244
.EVEN
240
241
:RIC11 REGISTERS
242
I
IF
FOR
Arty
REASON
THE
REGISTER ADDRESSES
ARE
DIP'rERENT
FROM
tHESe:
243
:
(GIVEN
BELOW), THE CONTENTS
OF
THE
APPROPRIATE POINTERS
SHOULD
BE
244
;
MODIFIED
SO
THAT
THE
CORRECT
ADDRESS
IS
USED.
245
246
.EVEN
247
1'101244
177400
RKDSI 17741'10
248
1301246
177402
RKERI 17741'12
249
81'11251'1
17741'14 RKCSI 17741'14
250
01'11252 17741'16
RKWCI
177406
25t
001254
177410
RKSAI
177418
252
081256
177412
RKDAI
177412
253
1'11'11260
177416
RKOBI
177416
2'54
255
256
~TAGS
AND
GENERAL DATA
AREA
2'57 ,
258
259
260
001262
900000
FTITLEI
8
,FLAG
FOR
PRINTING
PROGRAM
TITLE
261
001264
99801'10 TIMER I 0
,TIMER
REGISTER
262
1'11'11266
908201'1
RKPRII
201'1
,CONTAINS
THE
CPU
LEVEL
AT
ilHICH
263
,RKll
NORMALLY
INTERRUPTS.
THIS
WORD
264
,SHOULD
SE
CHANGED
IF
RK11
IS
OESINGATED
265
,A
BR
LEVEL
OTHER
THAN
5.
E.G.
IF IT
IS
CHANGED
266
,TO
6,
tHIS
WORD
SHOULD
SE
CHANGED
TO
241'1.
267
1'11'11271'1
01'19220 RKVECI
220
,CONTAINS
THE
NORMAL
VECTOR
ADDRESS
TO
wHICH
268
,RU1
INTERRUPTS.
Ir
THIS
IS
NOT
SO,
CHANGE
269
,THIS
WORD
TO
CONTAIN
MODIFIED
VECTOR
ADDRESS.
MAINOEC-U-DZRICJ-D
MACYll
27(1006)
04-0CT-76
1311'.
PAGE"
OZRICJO,
Pll
30-AUG-76
14.48
ERROR
POINTER
TULE
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
801272
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
)08
309
H0
311
312
313
314
315
316
317
319
319
320
321
322
323
324
325
MAINDEC-1l-DZRKJ-D
DZRKJD,Pll
l0-AUG-76
326
327
329
001272
010316
329
O01274
011526
H0
881276
011456
331
O01300
000001'1
3)2
H3
334
3)5
801302
010350
H6
001304
IH
1546
337 OO1306
011464
H8
00131O
000080
339
340
341
342
001312
010375
341
801314
811623
344
801316
011464
345
001320
000000
346
347
349
349
001322 010410
350
001324
011575
351
001326
011464
352
001H0
000000
353
354
355
356
001332
010455
357
001334 011650
358
001336
011416
359
801340
000000
360
361
362
363
001342
010511
364
001344 011650
365
801346
011416
366
8013511
80.00.
367
368
369
370
00U52
010567
371
801354
01221U
372
001356
IH1514
313
""1360
••••
80
374
375
376
377
8.1362
.10636
379
.81364
011546
379
••
1366
.114U
l8tll
.0131.
00111000
381
MACY11
27(1006)
lUU
,seUL
ERROR
POINTER
UBLE
,*THIS
TABLE CONTAINS
THP.:
INfORMATION fOR
EACH
ERROR
THAT
CAN
OCCUR,
,*THE
INrORMATION
IS
OBTAINED 8Y USING
THE
INDEX
NUMSER
FOUND
IN
:*LOCATION
UTEMB,
THIS
NUMBER
INDICATES
IIHICH ITEM
IN
THE
TABLE
IS
PERTINENT,
,*NOTEll
IF
UTEMB
IS
0
THE
ONLY
PERTINENT
DATA
IS
(SERRPC),
r*NOTE21
EACH
!TEll!
IN
THE
TABLE
CONTUM!
4 POINTERS EXPLAINED
~s
fOLLOWS I
r*
1*
r*
r*
.ERRTaI
EM
OH
OT
Dr
, I POINTS
TO
THE
ERROR
MESSAGE
,
,POINTS
TO
THE
DATA
HEADER
"POINTS
TO
THE
DATA
,
,POINTS
TO
THE
DATA
fORMAT
:THP.:
ERROR
ITEMS TABLE CONSISTS
Of
ALL
THE
POSSIBLE
ERROR
MESSAGES
,USED
IN
THIS
PROGRAM,
AN
ERROR
C ..
LL
IN
THE
PROGR"M
CORRESPONDS
TO
rTHE ITEM
NUMBER
IN
THE
ERROR
TABLE,
THUS
'ERROR
I'
IN
THE
,PROGRAM
CORRESPONDS
TO
' ITEM
I'
IN
THE
ERROR
TABLE,
, 'EM
...
'
IS
THE
POINTER
TO
THE
ERROR
MESSAGE
IIHICH
WILL
BE
TYPED
,OUT
IN
CASE
THAT
ERROR
WERE
TO
OCCUR,
THUS
fOR 'ERROR
I'
THE
ERROR
,MESSAGE TYPE
OUT
WILL
BE
'TIME
OUT
ON
RlCll
REG',
:
'OHU.'
IS
THE
POINTER
TO
THE
HEADER
BLOCK
IIHICH
IIILL
BE
TYPED
OUT
1 IMMEDIATELY ArTER
THE
ERROR
MESSAGt,
:
'DTH.'
SERVES
AS
A POINTER
TO
THE
MtMORY
LOCATIONS
WHERE
,THE
INfORMATION RtLEVANT
TO
THE
ERROR
TYPE
OUTS
(LIKE
PC,
CONTENTS
,
OF
RICCS
ETC,)
WILL
BE
PICKED
UP
fROM,
:THE
LAST
ROW
CONTAINING
'0'
SERVES
AS
A TERMINATOR,
;EXAMPLEI
:
IF
ON
RUNNING
THIS
PROGRAM
A TIMEOUT
WERE
TO
OCCUR
ON
ADDRESSING
RKDS
:
(177400),
BECAUSE
or
SOME
FAULT,
THE
rOLOWING
TYPEOUT
WOULD
:OCCUR
ON
THE
TELETYPE.
TIME
OUT
ON
RKII
REG
PC
REG
......
17741'10
:
,NOTE
THAT
......
WOULD
BE
THE
ACTUAL
PC
WHEI/E
'ERROR
1"
IS
LOCATED,
,THE
ERROR
HANDLEI/
IS
LOCATED
AT
"ERROR',
THE
ERROR
CALL
IS
AN
"EMT'
'INSTRUCTION
IIITH
ITS
LOIIER BYTE
ENCODED
TO
PROVIDE INDEXING
TO
THE
JITEMS
IN
THE
ERROR
TABLE.
,
THUS
'
ERROR
1
IS
104001
I 'ERROR
126'
IS
104126
ETC.
,
ERROR
ITE148 TABLE
04-0CT-76
13108
PAGE
ERROR
POINTER TABLE
lITEM
EMt
ITIME
OUT
ON
RKll
REG
oHl
,PC
REG
oTI
,.ERRPC
'REG8
0
HTEM
EM2
,REGISTER
NOT
CLEARED
DH2
JPC
RtGADD
RECVo
DT2 , IERRPC .REG0
'REGI
0
: ITEM
EM3
,RKCS
ERROR
DH3
,PC
WROTE
RtAD
DT2
,
$ERRPC
'REGe
.REGI
0
,ITEM
EM4
,
RKCS
ERROR-ON
IIRITING
READ
ONLY
BITS
oH4 ,PC EXPCT
RECVD
DT2
,.ERRPC
.REG0
.REGI
0
,ITEM
EM5
,BUS
INIT
DID
NOT
CLEAR
RKCS
DH5
,PC
RECVD
DTI
, IERRP!!
'REG0
0
,ITEM
EM6
,
'CN'lRL
RESET'
DIDN'T
CLtAR
RKCS,
ON
SnING
GO
DH5
,Pc
RECVD
oTl
,IERRPC: .REGe
0
,ITEM
EM7
,'CNTRL
RDY'
DIDN'T
lET
AftER
CONTROL
RESET
DH3"
,PC
RKCS
RKER RKDS
DT26 ,
IIRRPC
,REG0
IAIGl
'R£G2
0
,ITEM
10
EMU
, REGISTER
NOT
CLEARED
DH2
!PC REGlDD
RECVD
DT2 I IERRPC
'REG'
'R£Gl
0
SEQ
0020
SEQ
0021
MAINoEC-I1-DZRKJ-D
MACYl1
27(1006)
04"OCT-76
13108
PAGE
DZRKJD.Pll
30-AUG-76
14148
ERROR
POINTER TA8LE
SEQ
0022
382
:ITEM
11
383
384
001372
010663
EM11
IRKWC
ERROR
385
001374 011666
DHll
IPC
WROTE
READ
386
001376 011464
oT2 I
SERRPC:
SREG0
SREGI
387
001400 000000
0
388
389
lITEM
12
390
391
001402 011423
EM43
I
UNEXPECTED
RK
11 INTERRUPT
392
001404 011713
DH21
rPC
393
001406
011519
DT21 lSERRPC
394
0914U1
000000
0
395
396
lITEM
11
397
398
091412
010676
EMl1
IRKBA
ERROR
399
001414
911666
OHll
,PC
WROT
READ
400
001416 011464
DT2 I
SERRPC
IREG0
.REGI
491
001420
000000
0
402
403 : ITEM 14
404
405
i10i422
2110711 Er;14 j
CNTr=;L
RESET
DID
NOT
Cr..EAR
REGISTE~
406
991424
011546
DH2
,PC
REGADD
RECVO
407
001426
011464
DT2 I
SERRPC,
IREG0 $REGl
408
001430
900000
0
409
410
:ITEM
15
411
412
001432
010753
EM15
IRKDA
ERROR
413
091434
911666
DHl1
IPC
WROTE
READ
414
001436
1111464
Df2
,SERRPC
SRE~0
fREGl
415
001440
00001219
0
416
417
:ITEM
16
418
419
001442
011301
EM26 ,RKCS ALTERERED
ON
Ct.EARING
"REG-BYTE"
420
12101444
912967
DH26
,pC
REG-BYTE (RKCS)EXP (RKCS)RECVD
421
091446
011514
DT26 ,SERRPC
aREG0
'REGI
aREG2
422
001459
00009121
0
423
424
: ITEM 17
425
426
01211452
910766
EM17
,BUS
INIT
DIDN"T
CLEAR REGISTER
427
091454
011546
DH2
,pC
MGADD
RECVD
428
991456
911464
DT2
,URRPC
'REG9
SREGI
429
001460
00000121
9
430
4H
:ITEM
29
412
433
001462
011922
EM20 I AODRESSING ERROR"TRIED
TO
ADDRESS
REGl,
GOT
REG2
434
001464 011720
DH20
,pC
REGl
REG2
(REGl)
(REG2)
435
001466
IHU74
OT29 'SERRPC .REG9 SREGI
'REG2
SREG3
4)6
901470
9099121121
9
437
MAINOEC-l1"OZRKJ-O
InCrtl
27
(191216)
94"OCT-76
13109
PAGE
10
DZFlKJD.Pll
10-AUG-76
14148
ERROR
POINTER TASLE
SEQ
0023
438
, ITEM
21
439
440
001472
011345
!!:M27
ITRIED
TO
CLEAR
"FIEG-SYTE",
CHANGED
"REG-SYT2"
441
901474
012131
DH27 IPC REG"SYTI
REG-erT2
eYT2-EXPCt
BYT2-RECVD
442
001476
911474
DT20 'SERRPC
SREG0
SREGI
SREG2 SREG3
443
091500
121001211210
0
444
445
: ITEM 22
446
447
1219151212
0t!
193
EM22
'DID
NOT
CLEAR
RKCS
1.0
BYTE
448
001504 011575
OH4
,PC EXPCT
RECVD
449
00151216
911464
OT2
,SERRPe .REG0 SREGI
45121
001510
001219"0
0
451
452
:IEM
23
453
454
901512
011136
EM23
,010
NOT
CLEAR
RKCS
HI
8YTE
455
00t514
011575
OH4
,PC EXPCT
RECVD
456
001516
911464
OT2
ISERRPC tREGe SREGI
457
001520
9121000"
III
458
459
:
ITE'"
24
460
461
001522
011172
E"'24 I TRIED
TO
CLEAR
RKCS
"eYTE",
CHANGED
"REGIS"
462
01H524
011767
DH24
,pC
SYTE
REGIS (REG)EXP (REG)RECVD
463
001526 011474
OT20 ,SERRPC
aREGe
SREGI
SREG2 SREG3
464
00153121 00012100
0
465
466
lITEM
25
467
468
091532 011246
EM25 I
FAILED
TO
CLEAR
'FlEG-eYTE'
469
"01534
12112041
DH25
,pC
REG-eYTE
RECVD
470
001536
12111464
DT2
,IERRPC
IREG0
IREGI
471
01211540
000000
0
472
473
474
475
476
001542
9121001215
STARtl
RESET ,CLEAR
THE
BUS
477
.SSTTI.
INITIAt.UE
THE
COMMON
TAGS
478 , 'Ct.EAR
THE
COMMON
TAGS
(lCMTAG)
AR!!:A
479
001544
01271216
901100
MOV
UCMTAG,R6
"FIRST
t.OCATION
TO
BE
CLEARED
480
1211211550
095026
CLR
(R6)+
"CLEAR
MEMORY
LOCATION
491
1211211552 1212271216
001149
CMP
UWR,R6
I
,DONE!
482
12101556 12101374
_
8NE
.-6
n
LOOP
BlCIt
IF
NO
483
12191560
IH2706
001190
MOV
tsTACf(,SP
"SETUP
THE
STACK POINTER
484
I'
INITIALIZE
FEW
VECTORS
485
001564
012737 005632 000029
MOV
USCOPE,,,
IOTVEC
"lOT
VECTOR
FOR
SCOPE
ROUTINE
486
001572
012737
000340
01210922
MOV
U40,.IIOTVEC+2
IILEVEL
7
487
00160121
012737
906104 900030
MOV
'SERROR,t'EMTVE~
"EMT
VECTOR
FOR
ERROR
ROUTINE
489
00161216
O12737 0011140
01210032
MOV
U40,.nMTVEC+2
"LEVEL
7
489
01211614
012737 010046
121"0034
MOV
UTRAP,.nRAPVEC
"TRAP
VECTOR
FOR
TRAP
CALLS
490
091622
912737
009340
00012136
MOV
U4",tnRAPVEC+Z,LEVEL
7
491
001630
012737
0101]4
000024
MOV
UPWRON, "PWRVEC'
"POWER
FAILURE
VECTOR
492
001636
012737
00034121 00912126
MOV
U40,
,.,WRVEC+2
n LEVEL 7
493
001644
01215037
001206
CLR
ITINES
,'INITIALIZE
NUMBER
OF
ITERATIONS
"UNDEe-ll-DZ~KJ-D
MAeul
27 (18flJ6) 114-0CT-76
131"
PAOE
11
DZ~KJD.Pll
30-AUG-76
14148
INITIALIZE
THE
COMMON
TAGS
nQ
0024
494
001650
0.5037
01112HI
CLR
USCAP!
,
,CLEU
THE
ESCAPE
ON
ERROR
ADDRESS
495
.01654
112737
.e.001
001115
MOVB
U,IERMAX
, ,
ALLOW
ONE
ERROR
PE~
TEIT
496
001662
012737
001662 001106
MOV
••
,8LPADR , ,
INITIALIZE
THE
LDOP
ADDRESS
FOR
SCOPE
497
001670 012737 001670 001110
MOV
'
•••
LPERR
, ,SETUP
THE
ERROR
LOOP
ADDRESS
498
'lsnE
ro~
A
HA~DWARE
SWITCH
REOISTER.
IF
NOT
FOUND
OR
IT
IS
499
"EQUAL
TO
A
0_1",
SETUP
ro~
A sorTWARE
SWITCH
~EGI8TER.
500
001676
81]746
0000.4
MOV
"ERRVEC,-(SP)
"SAVE
E~ROR
VECTO~
501
"01702
812737
081736 000004
MOV
1648,
UERRVEC , ,
SET
UP
ERROR
VECTOR
592
001710
012737
177570
001140
MOV
DSloIR,SWR
I,SETUP
FOR
A
HARDWARE
SIliCH
REGISTER
51'JJ
001716
012737
177570
001142
MOV
IIDDISP,DISPLAY
"AND
A
HARDWARE
DISPLAY
~EGISTER
5e4
001724
022777
177777 177206
CMP
'-I
,tsW~
, ,TRY
TO
REFERENCE
HARDWA~E
8WR
5115
001732
001012
BNE
661
"BRANCH
IF
NO
TIMEOUT
TRAP
OCCURRED
506
, 'AND
THE
HARDWARE
allR
IS
NOT
II
-I
507
001734
000493
B'R
658
"
BRANCH
IF
NO
TIMEOUT
508
001736
012716
001744
641l
MOV
1658,
(SP)
,
,SET
UP
rOR
TRAP
RETURN
509
001742
000002
RTI
510
00t744
012737
0019176
001140
65
..
MOV
UIIREG,SWR
"POINT
TO
SOFTIIARE
SIIR
511
001752
0127]7
000174
001142
MOV
.DISPREG,
DISPLAY
512
001760
012637
000004
661l
MOV
(SP)+,UERRVEC
,
,RElSTORE
ERROR
VECTOR
5tl
514
.S8TTL
TYPE
PROGRAM
NAME
515
,'TYPE
THE
NAME
or
THE
PROGRAM
Ir
FIRST
PASS
516
001764
005227
177777
INC
'-I
l,rIRST
TIME?
517
001770
001043
BNE
6,.
, 'BRANCH
IF
NO
518
001772
104401
002030
TYPE
,688
I,TYPE
AScn
&TilING
519
.SBTTL
GET
VALUE
rOR
SOFTWARE
SWITCH
REGISTER
520
001776
8057]7
080042
TST
"42
, ,
ARE
liE
RUNNING
UNDER
XXDP/lCT?
521
002002
00111106
BNE
69'
I ,
BRANCH
IF
YES
522
002084 023727
001140
000176
CMP
SWR,
tsllREG
,
,SOFTWARE
SIIITCH
REG
SELECTED?
523
002012
001005
BNE
7fU
I 'BRANCH
IF
NO
524
002014
104406
GTSIIR
"
GET
80FT-SIIR
SETTINGS
525
002016
000403
BR
70'
526
002020
112737
000001
001114
69t1
MOVB
U,UUTOB
,
,SET
AUTO-MODE
INDICATOR
527
002026
70"
528
002026 080424
BR
6,.
, ,GET
OVER
THE
ASC
IZ
529
;
,6811
.Ascn
<CRLF>/RKll
LOGIC TEST
1I<15><12>/MUNDEC-l1-DZRKJ-D/<CRLor>
530
002100
6711
531 sTART11
532
002100
012737
002116
000004
MOV
I8AOTMO,,,4
:
SET
TIME
OUT
VECTOR
FOR
UNEXPECTED
5)]
,TIME
OUTS
534
002106
012777
002202
177154
MOV
I8ADINT,
tlRKVEC
,SET
UP
RICll
INTERRUPT
VECTOR
rOR
535
,UNtXPECTED INTERRUPTS
rROM
RKll
536
002114
000516
BR
TSTI
:GO
TO
TEST 1
5)7
5]8
539
540
541
,THIS
ROUTINE
HANDLES
UNEXPECTED
TIME
OUTS
542
543
002116
011600
BADTMOI
MOV
(SP),R0
,SAVE
PC
WHERE
TIME
OUT
OCCURED
544
002120
005740
TST
-(RIll)
545
002122 022626
CMP
CSP)+,
(SP)+
:
RESTORE
STACK
POINTER
546
002124
104401
002132
TYPE
,658
;,TYPE
ASCI!
STRING
547
002130
000417
BR
641
"GET
OVER
THE
Ascn
548
,,65$1
.Ascn
<15>< 12>/UNEXPECTEO TIME
OUT
AT
PC-/
549
802170
64$1
MAINDEC-Il-DZRKJ-O
MACYlI
27(
1006)
04-0CT-76
IlI08
PAGE
12
OZRKJD.
Pl1
30-AUG-76
14148
GET
VALUE
FOR
SOFTWARE
SlitTCH
REGISTER
SEQ
0025
550
002170 010046
MOV
R0,-(SP)
,
SET
UP
rOR TYPING
OUT
PC
551
01/J2172
104482
TYPOC
IGO
nPE
OUT
OCTAL
PC
552
002174
000000
HALT
553
002176
000137
"01542
JMP
"START
55.
555
JTHIS
ROUTINE
HANDLoES
UNEXPECTED
INTERRUPTS
rROM
RKll
556
,SII
9
AND
10
rOil
LOOPING
ON
ERROII
557
,
AND
LOOPING
ON
TEST
IN
WHICH
TIMEOUT
558
,OCCURRED,
ARE
PIIOVIDED.
559
560
002282
011600
BADINTI
MOV
(SP),R0
,SAVE
PC
WHERE
INTERRUPT
OCCURED
561
002284
005740
TST
-(R0)
562
002206 032777 020000
176724
SIT
.20"0",(lSIiR
J
INHI8tT
EAROR
TYPEOUT?
563
002214
0"1015
BNE
11
rYES,
DON'T
TYPE
OUT
564
002216
104401
TYPE
565
C!l02220 0161213 SCRLF
566
0C!12222
104401
TYPE
567
082224
"l1n3
EM43
,TYPE
'UNEXPEXTEO
RKl1
INTERAUPT'
568
,TYPE '
AT
PC.'
569
"02226
104401
"02234
TYPE
,658
"TYPE
AScn
STRING
570
002232
000404
BR
648
U
GET
OVER
THE
ASCI!
571
,,651:
.ASCI!
IAT
PC-I
572
102244
6411
573
002244
010046
NOV
R0,-(SP)
1
SET
UP
FOR
TYPING
OUT
PC
574
002246
104402
TYPOC
:GO
TYPE
OCTAL
PC
WHERE
BAD
575
,INTERUPT
OCCURED
576
tJ0225e
el2777
001000
176662
181
SIT
U000,UIiR
,LOOP
ON
ERROR?
577
002256 001403
BEQ
2.
INO,
BRANCH
578
002260
022626
CMP
(SP)+,
(SP)+
HES,
IIEPOSITION
STACK
579
002262
000177
176620
JMP
ULPADR
IGO
TO
THE
STARTING
ADDRESS
or
580
,THE
TEST
THAT
GAVE
UNEXPECTED
INTERRUPT
581
002266
032777
04000"
176644 211
BIT
'40000,
tSWR
:
LOOP
ON
TEST?
582
002274
001401
BEQ
]I
,NO,
BRANCH
583
002276
000002
RTI
,YES,
LOOP.
GO
BACK
liHER U INTERRUPTED rROM.
584
"02300
000000
HI
HALT ,
UNEXPECTED
INTERRUPT
OCCURtD
AS
585
: INDICATED
IN
THE
TYPE
OUT. U
CAN
LOOP
586
,ON
ERROR,
TEST,OR
INHIBIT
TYPEOUT
BY
587
,SETTING
APPROPRIATE SWITCHES.
588
0023e2
0"0137
001542
JMP
'UURT
:
GO
BACK
TO
THE
START
OF
THE
589
,PROGRAM.
THUS
PRESSING CONTINUE
590
:
ArtER
THE
ABOVE
HALT WILL
591 ,RESTART
THE
PROGRAM
592
591
594
595
,RESTAAT
ArtER
POliER
rUL
596
JTHE
PROGRAM
WOULD
RESTART
HERE
IF
POWER
CAME
BACK
ArTER A P'ALIUIIE.
597
598
002306
PFSTRTI
599
082386
104481
002314
TYPE
,651
"TYPE
ASCI!
STRING
6118
002312
00e411
BR
641 , 'GET
OVER
THE
ASCIZ
601
n65'1
.lSCI!
<15><12>/PWR UP,RESTARTI
682
882]]6
6411
6113
802]]6
005080
CLR
A0
604
te2340
01i15001
CLR
Rl
685
002342
1105201 111 INC
Al
MAINDEC-II-DZRKJ-O
MACYll
27(1006)
04-0CT-76
13108
PAGE
Il
OZRKJO.Pll
30-AUG-76
14I4B
GET
VALUE
rOR
SOFTWARE
SWITCH REGISTER
SEQ
0026
606
002344 001376
BNE
11
607
002346
105200
INCB
R0
608
002350
001374
BNE
11
609
610
611
, I
***************************************************************
612
I*TEST
1 TEST
THAT
lI..L RK11 REGISTERS
CAN
BE
REFERENCED
613
,*THIS
TEST
CHECKS
IF
EVERY
RKll
REGISTER
CAN
BE
614
,*REFERENCED
WITHOUT
TI14ING OI1T.
If'
A TIME
OUT
OCCURS
THE
ERROR
IS
615
I*REPORTEO ,
AN
ERROR
FLAG
(R2)
IS
INCREMENTED.
IT
THERE
WAS
616
,*AN
ERROR
DURING
THIS
TEST,
THE
ENTIRE
PROGRAM
IS
ABORTED
617
, I
***************************************************************
618
002352 000004
TSTlI
SCOPE
619
002354
005002
CLR
R2
620
002356 012737 002402
001110
MOV
1T1,'LPERR
I SET
RETURN
ADRES
FOR
LUP
621
,ON
EROR
(SW9)
622
002364
012737
002456
000004
MOV
111MOUT,
..
4
ISET
UP
ADDRESS
rOR TIMEOUT
VECTOR
623
002372 012700
177771
MOV
'-7,R0
I
INITIALIZE
R0
TO
KEEP
TRACK
OF
REGIS REFERENCED
624
002376
012701
001244
MOV
IRKDS,
Rl
,INITIALIZE
Rt
WITH
RKDS
ADDRESS
625
002402
005731
Ttl
TST
~(Rl)+
,REFERENCE
THE
REGISTER,
626
IIr
IT
CAN'T
BE,
TIMEOUT
TRAP
WILL
OCCUR
627
I
SHIFT
THE
POINTER
628
002404 005200
INC
R0
,ALL
REGISTERS REFERENCED?
629
002406
001375
8N£
...
,
~
H'
NOT.
LOOP
BACK
" REFERENCE
NEXT
REGISTER
630
002410
012737
002116
000004
MOV
.BADTMO,U4
631
002416
005702
TST
R2
:WAS
THERE
AN
ERROR?
632
002420
001415
BEQ
11 INO,BRANCH
633
002422
104401
002430
TYPE
,6,.
"TYPE
ucn
STRING
634
002426
000410
BR
648
:IGET
OVER
THE
UCIZ
635
,
,6551
.Ascn
<1S><12>/PROG
ABORTED/
636
002450
6481
637
002450
000137
005360
JMP
'GET42
lIF
YES,
ABORT
THIS
ENTIRE TEST
618
002454
181
639
002454
000407
BR
T5T2
nEXIT
640
002456
022626
TIMOUTI
CMP
(SP)+,
(SP)+
641
002460
014137
001162
MOV
-(Rll,SREG0
l
GET
ADDRESS
OF
REGISTER
THAT
TIMED
OUT
642
002464
104001
ERROR
1 :TIMED
OUT
WHEN
REFERENCING RK11
643
lREGISTERS
644
002466
005721
TST
(Rl)+
: REPOSITION POINTER
TO
THE
NEXT
REGISTER
ADDRESS
645
002470
005202
INC
R2
ISET
FLAG
INDICATING
ERROR
646
002472 000744
BR
Tl+2
:
BRANCH
SACK
" REFERENCE
THE
NXT
REGISTER
647
648
649
: I
*******
..
*****************************
..
*
..
**********************
..
650
I*TEST
2
CHECK
RUI
INITIALIZATION
651
:
*THIS
TEST
CHECKS
THAT
THE
CONTROLLER
LOGIC
IS
INITIALIZED
652
,*CORRECTLY,
RKWC,
RKDA,
RKDA,
RKDB
SHOULD
BE
CLEAR
AND
653
:*RKCS
SHOULD
HAVE
'CNTRL ROY'
BIT
SET.
654
:1
**
..
************
..
*************************
..
*********************
655
002474 000004
TST21 SCOPE
656
002476 000005
RESET
:ISSUE
A
BUS
INIT
657
002500
012700
177772
MOV
'-6,R0
,SET
:OUNT
FOR
6 REGISTERS
658
002504
012701
001246
MOV
.RKER,R1
:INITIALIZE
AD
RES
659
002510
023711
001250
lSI
CMP
RKCS,I!IR1
lIS
IT
RKCS?
660
002514
001005
BNE
2.
:NO
661
002516
022171
000200
000000
CMP
t200,(HRl
) ,ONLY
BIT
7
OF
RKCS
SHOULD
BE
SET i
MAJNDEC-11-DZRKJ-D MACYll
21(Hl06)
04-0CT-76
13:08
PAGE
14
DZRKJD.P11
30-AUG-76
14:48
T2
CHECK
RKll
INITIALIZATION
SEQ
0027
662
002524
001004
BNE
3$
lBRANCH
IF
ERROR
663
002526
000411
BR
4S
664
002530
005771
000000
2$:
TST
I!I(Rl)
,CHECK
THAT
REST
OF
REGISTERS
665
:ARE
CLEAR
666
002534
001406
BEO
4$
:BRANCH
IF
REGISTER
IS
CLR
667
002536
011137
001162
3S1
MOV
,Rl,.REG0
:GET
ADRES
OF
REGISTER
668
002542
017137
000000 001164
MOV
'(Rl
".REGl
:GET
CONTENTS
or
REGISTER
669
002550
104002
ERROR
2 :
RUI
REGISTER
WAS
FOUND
TO
B
HOT
CLEAR
670
002552
005721
4$1
TST
(Rl)+
IINCREMNT POINTER
TO
NXT
REG
671
002554
005200
INC
R0
:CHKD
ALL
REGS?
672
002556
001354
BNE
1$
:
IF
NOT
LUP
BAK
673
674
:
1************"*********·**"*·*********·*************·***********
675
,lITEST 3 TEST
RKCS
FUNCTION
8lTS
1,2,3
676
,*THIS
TEST
CHECKS
IF
THE
FUNCTION
BIT-I,
2,
3
IN
RKCS
CAN
BE
WRITTEN
,
677
:*READ BACK.
R0
CONTAINS
THE
BIT
THAT
WAS
WRITTEN.
Rl
CONTAINS
THE
678
,*BITS
THAT
WAS/WERE
READ
BACK.
679
:
,***
••
**************************************************
..
*******
680
002560 000004
TST31 SCOPE
681
002562
012737
002574
001110
MOV
'U"LPERR
: SET
RETURN
ADRES
FOR
LOPING
ON
682
:
ERROR
(SW
9)
683
002570 012700
000002
MOV
'2,R0
,INITIALIZE
Btl'
TO
BE
WRITTEN
IN
RKCS
684
002574
010077
176450
1$1
MOV
R0,I!IRKCS I
WRITE
THAT
BIT
IN
RKCS
6115
002600
017701
176444
MOV
tRKCS,Rl
,GET
RKCS
686
002604
"42701
000200
BIC
.200,R1
:MASK
OUT
CNTRL
ROY
BIT
687
002610
020001
CMP
R0,Rl
IIIIAS
REcve
BIT
SAME
AS
WRITTEN
BIT
688
002612
001406
BEQ
2.
: YES,
BRANCH
OTHERWISE REPORT
ERROR
699
002614
010037
001162
MOV
R0,SREG0
IGET
EXPCTD
RKCS,
BIT
THAT
WAS
WRITTEN
690
002620
017737
176424
001164
MOV
,RKCS,
.REGI
IGET
RECVD
RKCS,
BIT
READ
691
002626
10400)
ERROR
3
IBIT
THAT
WAS
WRITTEN
WAS
NOT
READ
BACK
692
002630 006300
2$1
ASL
R0
ISHUT
TO
WRITE
NEXT
BIT
693
002632
020027
000020
CMP
R0,
'20
:HAVE U
CHKD
ALL
3
BITS
1,
2,
3
694
002636
001356
BNE
11 I
IF
NOT,
LOOP
BACK
"
CHECK
THE
NXT
BIT
695
,
696
:
'**********************************************************.****
697
:*TEST
4 TEST
RKCS
EXTENDED
MEMORY
BITS
-
4,5
698
:
*THIS
TEST
CHECKS
IF
THE
'EXTENDED
MEMORY'
Bns
CAN
BE
WRITTEN
699
,llANO
READ
BACK
CORRECTLY.
700
,
,****.*********************************.*********.*******.******
701
002640
000004
T5T41 SCOPE
702
002642
012737
002654
0011
10
MOV
.1I"LPERR
,SET
RETURN
ADRES
FOR
LUPING
703
ION
EROR
(SW
9)
704
002650
012700
000020
MOV
.20,R0
,INITIALIZE
BIT
TO
BE
WRITTEN
IN
RKes
705
002654 010077
176370
lSI
MOV
R0,@lRKCS
IWRITE
THAT
BIT
IN
RKCS
706
002660
017701
176364
MOV
IRKes,Rl
,GET
RKCS
107
002664
042701
000200
BIC
U00,Rl
:MASK
OUT
CNTRL
ROY
BIT
709
002670
020001
CIIIP
R0,Rl
I
illS
RECVD
BIT
SAME
AS
WRITTEN
BIT
709
002672
001406
BEQ
2S
,YES,
BRANCH
710
002674
010037
001162
MOV
R0,SREG0
,GET
EXPCTD
RKCS,
BIT
THAT
WAS
WRITTEN
711
002700
017737
176344
001164
MOV
'RKes,
REG
1
,GET
RKCD
RECVD,
BIT
THAT
WAS
RUD
712
002706
104003
ERROR
3
~BIT
THAT
WAS
WRITTEN
WAS
NOT
READ
lACK
713
002710
006300
2*:
ASL
R0
,SHIFT
TO
ilJRITE
NEXT
BIT
714
002712
022700 000100
CMP
1100,R0
:HAVE U
CHKD
BOTH
BITS,
4,
5
7t5
002716
001356
BNE
IS
I
IF
NOT,
LOOP
BACK
,
CHECK
THE
NXT
BIT
716
I
117
I
,*
••
******
..
**********************************.******************
MAINOEC-ll-DZRKJ-O
MACYll
21(
1006)
04-0CT-76
1),0'
PAGE
15
OZIUI:JO.Pll
U-AUG-76
14.48
T5
CHECK
RKCS
IDE BIT - 6
718
,*TEST
5
CHECK
IIKC8
IDE
BIT
- 6
719
,*THIS
TEST
CHECKS
IF
IDE
BIT
CAN
BE
WRITTEN
,
READ
BACK.
THE
PROCESSOR
720
,*STATUS
IS
SET
AT
PRIORITY 7
SO
THAT
UNWANTED
INTERRUPTS
ARE
t.OCKED
OUT.
721
,
*THEN
IDE
BIT
IS
Ct.EARED
AND
PROCESSOR
PRIORITY
IS
t.OWERED
TO
INSURE THAT
722
,
*NO
INTERRUPTS
OCCUR.
723
, ,
***************************************************************
724
0"272111
"0"004
TST51 SCOPE
725
11102722
012746
"0U40
MOV
1]4",-CSP)
726
002726
012746
002734
MOV
.648,-(SP)
727
002732
"0000'
RTI
728
002734
6411
729
002734
1'13700
001250
MOV
RKCS,RIII
730
002740 012710
000100
MOV
'11/10,8110
'SET
THE
IDE
BIT
731
002744
0'2710
000U0
tMP
1)00,IR0
,ns
IT
WRITTEN
CORRECTLY
732
002750 001406
BEQ
U , YES,
BRANCH
OTHERWISE
REPORT
ERIIOR
733
"02752 "12737
00030"
001162
MOV
1l"0"REG0
,GET
EXPCT
RKCS
734
002760
011037
0"1164
MOV
,R0,.REGI
:GET
RKCS
RECVD
735
002764
104003
ERROR
]
JlOE
BIT
WAS
WRITTEN,
BUT
WAS
NOT
736
,READ
BACK
737
002766
104412
ls.
CNT.RESET
:CONTROL
RESET,
CLEAII
IDE
718
: THIS
IS
A
CALL
FOR
THE
'CNTRL-
739
:RESET'
ROUTINE. A
CONTROt.
RESET
74"
,
IS
ISSUED
AND
AfTER A
CERTAIN
TIME
741
,
IF
THE
'CNTRL ROY'
DOES
NOT
SET
742
:AN
ERROR
IS
REPORTED.
NOTE
THAT
743
,
THE
PC
IN
ERROR
MESSAGE
IS
THE
744
:PC
WHERE
'CNT.RESET'
IS
t.OCATED.
745
"02770
022710
000200
CMP
.,"0"R0
, DID IDE
BIT
GET
CLRD?
746
002774
001406
BEQ
2,
: YES,
BRANCH
747
002776
01"037
001162
MOV
R0,eREG0
:GET
ADRES
OF
RKCS
748
003002
011037
001164
IoI0V
'Re,tREGl
,GET
RKCS
749
003006
104010
ERROR
10
: IDE BIT
COUt.D
NOT
B
CLRD
750
003010
000430
BR
TST6 : IEXIT
751
003012
104414
000010
2$1
DELAY
,10
:WAIT
FOR
AT
LEAST
60
US
752
ION
11/20
12
US
FOR
11/45
753
003016
012777 003066
176244
MOV
.U,I!IRKVEC
:SET
RKll
INTERUPT
VECTOR
TO
754
,
WHICH
RKll
CAN
INTERUPT
If'
THERE
755
:IS
FAULTY
LOGIC
756
003024
013746
001266
MOV
RKPRI,-(SP)
,t.OWER
CPU
PRIORITY
SO
THAT
757
003030
012746
003036
MOV
He,-(SP)
:RKll
CAN
POSSIBLY INTERRUPT
IF
759
003034
1100002 IITI :
THEil
IS
MALFUNCTIONINIG
LOGIC
759
003036
000240
411
NOP
:THE INTERRUPT
WOULD
OCCUR
760
003040
000240
NOP
761
1103042
000240
NOP
762
003044 012746 000340
MOV
U40,-(SP)
763
003050
IU2746
003056
IoI0V
t65.,-(SP)
764
003054 000002
RTt
765
003056
65'1
766
:PRIORITY
761
003056
012777 002202
176204
MOV
.BADINT,I!IRKVEC ISET
UP
UNEXPCTD
INTRUPT
VECTOR
769
003064
000402
BR
TST6 :
IEXIT
769
003866
822626
111
CMP
(8P)+,
(SP)+
,RESTORE
STACK
770
003070
104012
ERROII
12
,AN
UNEXPECTED
RKll
INTERRUPT
171
;OCCURED
PROBABLY
DUE
TO
FAUt.TY
LOGIC
772
713
MAINDEC-ll-DZRKJ-D
MACYl1
27(
1006)
04-0CT-76
13'08
PAGE
16
DZRKJD.PI1
30-AUG-76
14148
T6
CHECK
RKCS
SSE,EXB,FMT,IBA
BITS
-
8,9,10,11
714
775
716
777
778
179
780
781
7&:2
783
784
785
7116
787
788
789
790
791
792
793
794
795
796
797
798
799
880
801
882
803
.,,4
805
8,,6
807
8".
8,,9
810
811
812
.U
814
815
816
817
118
819
820
821
122
823
824
825
826
827
828
829
003072
003074
"03100
003104
"03106
003110
003114
800004
012701
000
••
O
013702
""1250
010112
011200
042700
000200
020100
003116
01U
405
"03120
010137
001162
003124
0U237
001164
003130
104003
003132
006301
003134
022701
010000
003140
001361
"03142
000004
"03144
013700 001250
803150
012710
1702.0
003154
003156
003162
1'111001
042701
822701
083166
001406
01000"
0"0280
00317.
"12737
""'02"
803176
811"17
001164
011132.2 t
04004
00]2"4
0113206
".3212
003216
00323111
0113220
'''0004
812746
012746
000002
013701
000340
IUJl220
001162
".**.*************
••
*********************.*********
••
***********
,*TEST
6 CH!Cf(
RKCS
SSE,nB,FMT,I8A
BITS
-
8,9,10,11
,'tTHIS
TEST
CHECKS
Ir
THE
SSE,
EXB,
1MT
r.
IBA
SITS
CAN
BE
WR!1'!Eii
,*AND
READ
BACK
CORRECTLY
,
,************.**************************************************
TST6.
SCOPE
1"
211
,
MOV
MOV
MOV
MOY
8IC
CMP
BEQ
MOV
MOV
ERROR
ASL
CIoIP
8N[
1400,Rl
RKCS,R2
Rl"R2
.R2,R0
.,00,R0
Rl,R0
2'
Rl,IREg0
I!IR2,IR!Gl
3
Rl
110000,Rl
11
JINUIALIZE
BIT
TO
BE
WRITTEN
IN
RKCS
,WRITE
THAT
BIT
IN
RKCS
,GET
RKCS
,MASK
CNTRL
ROY
BIT
~
,
WAS
THE
READ
BIT
SAME
AS
THE
,WRITTEN
BIT
,
YES
BRANCH,
OTHERWISE
REPORT
ERROII
,
GET
tUTD
RKCS
J
GET
RECYO
RKCS
,8IT
THAT
WAS
WRITTEN
(AS IN 'REGB)
,
liAS
NOT
READ
8ACK
J
SHIrT
TO
WRITE
NEXT
BIT
,HAVE
U
CHECKED
ALL
BITS
"
9,
10,
11
,IF
NOT,
LOOP
BACK
,
CHECK
THE
NXT
BIT
, ,
.*******.*************.*******
•••
***************.*******.******
:*TEST
7 .
CHECK
READ
ONLY
BITS
OF
RKCS
,*THIS
TEST
CHECKS
THAT
TRYING
.TO
SET
THE
UNUSED
BIT
OR
THE
READ
ONLY
,*BITS
DOES
NOT
SET
THEM
OR
AFFECT
ANY
OTHER
BITS
IN
RKCS
, ,
*****.***.*.***.**.******.******.*****.************************
TST7,
SCOPE
MOV
MOY
MOV
BIC
CMP
8!Q
MOV
MOV
!RIIOR
RKCS,R0
117020',
'R"
'R0,Rl
U00"",Rl
U.0,Rl
TST10
t2ee,'REG0
IR",.REGI
4
,TRY SETTING TH!
UNUSED
BIT
,
RO
,ONLY
8ITS
,GET
RKCS
,
MASI(
BIT
12
,IS
'ROY'
8IT
SET?
NO
OTHER
,BIT
SHOULD
BE
SET.
,
,OK,
EXIT
,GET
EXPCTD
RKCS
,a!T
RKCS
RECVD
, TRIED
TO
SET
UNUSED
,
RD
ONLY
BITS
,or
IIKCS
,SHOULD
NOT
HIIVE
AFFECTED
ANY
BITS
,
,.***.*
••
***.*****.****.**.****
••
***
••
*
••
***.***.******.*.******
,*TtST
10
CHECK
THAT
'GO'
BIT
(0)
CAN
8E
SET
'*THIS
TEST
eH!CIC8
THAT
THE
'GO'
8IT
CAN
at
SET,
BY
PERrORMING
,*CONTROL
RElET'
SUING
THAT
THE
EX8
, 18A SET PREVIOUSLY
,*NERE CLEARED.
, ,
*.***.*
••
**
****
••
*
••••
*******
******.*
******
**.*.**.****.
**
*
****
TSTUI
SCOPE
MOV
1]40,-(8P)
MOV
16U,-CSP)
RTI
64*,
MOV
IIKes,Rl
SEQ
0028
SEQ
111029
MAINDEC-l1-DZRKJ-D
MACY11
27(1006)
04-0CT-76
13108
PAGE
17
DZRKJO.Pl1
30-AUG-76
14148
T10
CHECK
THAT
'GO'
BIT
(0)
CAN
BE
SET SEQ
0030
8)0
003224
012711
007576
MOV
17576,'8R1
; SET
ALL
BITS
EXCEPT
GO
831
003230
085000
CLR
R0 I
832
003232
800885
RESET :
ISSUE
BUS
INIT
833
803234
022711
000288
CMP
1200,8Rl
;
CHECK
IF
RKCS
WAS
CLEARED!
834
80)240
001403
BEQ
U
;YES,
BRANCH
OTHERWISE REPORT
ERROR
835
003242
011137
001162
"IOV
,.Rl,
SREG0
:GET
RKCS
836
003246
104005
ERROR
5 ;
BUS
INIT
DID
NOT
CLEAR
RKCS
837
003250
012711
005000
1$,
MOV
'5300,
,Rl
: SET IBA ,.
EXB
IN
RKCS
818
003254
005211
INC
tRl
;SET
GO. CONTROL RESET
839
003256 005200
2.,
INC R0
:KEEP
TIME
840
003260
105700
TSTB R0 :HAVE U WAITED
LONG
FOR CNTRL
ROY
841
:TO
SET?
842
003262
100411
BMI
3S I
IF
YES,
BRANCH
, REPORT
ERROR
943
003264
105711
TSTB
trOll
: lIAS CNTRL
ROY
SET?
844
003266
100373
BPI.
2t
:
IF
NOT
LOOP
BACK
,
WAIT
FOR
IT
845
003270
022711
000200
CMP
.200,
tRl
I
IF
CNTRL
ROY
WAS
SET,
CHK
IF
'CNTRL
846
:RESET'
CLEARED IBA ,.
EXB
BITS
847
003274
001407
BEQ
TST11
:IIr
YES,
EXIT.
OTHERWISE ERROR
848
003276
011137
001162
MOV
8Rl,
SREG0
:GET
RKCS
849
003302
104006
ERROR
6 :GO
BIT
COULD
NOT
BE SET
OR
FAULT IN
850
ITHE
'INIT
I.'
GENERATING LOGIC
851
003304
000403
BR
TST11
;
IEXIT
852
003306
004737
005424
lSI
JSR
PC,GT3RG
:GO,
GET
RKCS,
ER,
OS
853
eHil3312 !
04007
ERROR
7 ICONTROL
READY
DID
NOT
SET AFTER
854
:CONTROL RESET
855
:
856
;
'***************************************************************
857
,*TEST
11
CHECK
RKCS
WITH
A
COUNT
PUTERN
8'58
I*THIS
TEST CHECKS
THAT
RKCS
CAN
BE
CLEARED
FROM
7576
THEN
A
COUNT
859
,*PATTERN
rROM
2
TO
7777
IS
RUN. NOTEI
ALL
PATTERNS WITH
BIT
£I
SET
86£1
I*(GO
BIT)
ARE
AVOIDED
SO
THAT
RKll
MAY
NOT
START
AN
UNDESIRED OPERATION.
861
I *R1 CONTAINS
THE
COUNT
PATTERN
THAT
WAS
WRITTEN
862
:
'***************************************************************
863
£183314
0160£1£14
TST11
1 SCOPE
864
£1£13315 £112737
080810
8£112£16
MOV
lite,
$TIMES
:
100
Ie
ITERATIONS
965
£103324 1612746
0£1e340
MOV
f34£1,-(SP)
966
8£1333£1
012746
£1£13336
MOV
t64S,-(SP)
867
£1£13334
1'160£182
RTI
868
003336
6411
869
883336
0137£1£1
001250
MOV
RKCS, R0
870
003342
01271£1 £187576
MOV
17576,8R0
: SET
ALL
BITS
IN
RKCS
EXCEPT
GO
871
£10334&
£1£15£11£1
CLR
liIR£I
:CLEAR
RKCS
872
£103350 £122710 £1£10208
CMP
'280,~R£I
;
WAS
IT
CLEARED
873
803354
1'£114£15
BEQ
1$
:
YES,
BRANCH
874
80335&
010037
0£11162
MOV
R£I, SREG0 :
GET
ADRES
OF RKCS
875
803362
811£137
0e1164
MOV
liIR8, SREGI
INO,
GET
RKCS
876
£1£13366
1£14£110
ERI'I
0
1'1
10
IRKCS
COULD
NOT
BE
CLEARED
877
003370
0127£11
£1£18002
lSI
MOV
'2,Rl
: WRITE
THIS
BIT
IN
RKCS
878
803374
012737
0834£16
801118
MOV
fl2S,SLPERR
879
0e34e2
£1127£15
177773
MOV
'-5,R5
880
0e340&
01£1110
2t:
HOV
Rl,liIR£I
:WRITE
IT
881
£10341£1 01£1102
MOV
R1,R2
:GET
BIT
THU
WAS
WRITTEN
882
0£13412 £152702 £100200
BIS
'20e,R2
: SET CNTRL
ROY
BIT
883
00341&
0110£13
MOV
liIR0,R3
884
£1£1342£1
1'12£1203
CMP
R2,R3
:
WAS
THAT
BIT
WRITTEN CORRECTLY?
985
£1£13422
0014£17
BEQ
3S J
YES,
BRANCH
MAINOEC-I1-DZRKJ-0
MACY11
27(10£16)
04-0CT-76
13108
PAGE
18
DZRKJD.Pll
38-AUG-76
14148
T11
CHECK
RKCS
WITH A
COUNT
PATTERN SEQ
0031
896
0e3424
01£1237 0£11162
MOV
R2,SREG0
IGET EXPCTD
WORD
887
8£13438
81£1337
0e1164
MOV
R3,
SREGl
:GET
RKCS
RECVD
898
£183434
1£14£1£13
ERROR
3
1010
NOT
READ
SAK
THE
BIT
THAT
889
;
WAS
WRITTEN
890
£1£1343&
£105205 INC
R5
891
083440
£1£11405
SEQ
TST12
:
,EXIT
892
0£13442 0&27£11
000002
3S1
ADD
12,
Rl
:GENERATE
NXT
PATTERN
TO
BE
WRITTEN
893
0e3446
£1227£11
010880
CMP
118e00,R1
;
ALL
PATTERNS WRITTEN?
994
803452
£101355
BNE
2S
I
IF
NOT, LUP
BAK
,
CHK
NXT
PATTERN
895
89& : I
***************************************************************
997
:*TEST
12
CHECK
THAT
RKWC
iUT
0-15
CAN
BE
SET
898
I*THIS
TEST FLOATS A
'1'
THROUGH
RKWC
BIT
0-15
AND
CHECKS
THAT
IT
899
,*CAN
BE
READ
BACK
CORRECTLY,
1'1£1
CONTAINS THE
WORO
THAT
IS
WRITTEN
900
: :
***************************************************************
9£11
8£13454
0000£14
TST121
SCOPE
9£12
eiH456
01270£1
0eee81
HOV
'l,R0
:
INITIALIZE
1'18
FOR
THE
BIT
TO
BE
ill'ltTTEN
IN
RKWC
903
£1£13462
£1137£11
£1£11252
MOV
RKWC,
Rl
984
£1£13466
012737
003474
£1£1111£1
HOV
.1S,SLPERR
,SET
UP
RETURN
AORES FOR
905
,LUPING
ON
ERROR
(SW
9)
906
£1£13474
£I1£11!l11
lS:
MOV
R9,"Rl
: WRITE
THAT
BIT
IN
RICWC
9217
£1£13476
0111£12
MOV
"Rl,R2
998
0£13500
020002
CMP
R£I,R2 :WAS
IT
WRITTEN CORRECTLY
999
1:1£13502
0914£15
BEQ
2S
:
YES,
BRANCH, OTHERWISE,
ERROR
910
1:1£13504
310037
£191162
MOV
R0,SREG0
,GET
EXPCTD
RICWC
BIT
THAT
WAS
WRITTEN
911
£193519
010237
£101164
MOV
R2,SREGI
~GET
RKWC
(THAT liAS
READ
BACK)
912
003514
1£14811
ERROR
11
:010
NOT
READ
BACK
THE
BIT
THAT
913
: liAS WRITTEN
IN
RKWC
914
1!l03516 01!l6390 2$.1
ASL
1'10
:SHIFT
TO
WRITE
THE
NXT
BIT
915
903520
991365
8NE
IS
:
IF
ALL TNE
BITS
HAVE
NOT
BEEN
916
:OONE,
LOOP
BACK
917
918
I
'***************************************************************
919
;*TEST
13
CHECK
RKWC
IIITH A
COUNT
PATTERN
928
,*THIS
TEST CHECKS
THAT
RKWC
CAN
BE CLEARED,
THEN
A
COUNT
PATTERN
921
,*FROM 0
TO
177777
IS
"RITTEN
, CHECKED
IF
IT
WAS
WRITTEN CORRECTLY
922
:
'***************************************************************
923
903522
09£1£1£14
TST131
SCOPE
924
803524
012737
9001!l1£1
001286
MOV
'U,UIMES
:,
DO
10
ITERATIONS
925
093532 013709
0£11252
MOV
RKWC,R0
926
003536
012711!l
177777
MOV
Ii
77777,'1'1£1
,SET
ALL
BITS
IN
RKWC
927
003542
005£110
CLR
8R0
ICLEAR
RUC
928
0£13544
90571£1
TST '1'10 :
WAS
IT
CLEARED?
929
093546
9014£15
BEQ
11
;YES,
BRANCH
930
003550
01£1£137
0£11162
MOV
R0,.REG0
I GET
ADRE&
OF
RKHC
931
£103554 £111037 £101164
MOV
'1'1£1,
'REGI
:NO,
GET
RKIIC
932
083560
18491£1
ERROR
10
:
RKWC
COULD
NOT
BE
CLEARED
933
934
003562
095091
111
CLR
Rl
,INITIALIZE
COUNT
PATTERN
935
003564 012795
177773
MOV
'-5,1'15
9]6
003570
012737
903576
001110
MOV
n',SLPERR
937
003576
010110
2S1
MOV
R1,tR0
,IIRITE
THE PATTERN
IN
THE
REGISTER
938
003600
011902
MOV
'1'10,1'12
939
0£13602 0221102 eMP
Rl,R2
,WAS
IT
WRUTEN CORRRECTLYl
940
003604 001497
BEQ
lS
,YES,
BRANCH
941
0£13606
910137
001162
MOV
Rl,
SREG0
,GET
EXPECTED
WORD
MAINOEC-l1-DZRKJ-D
MACYl
t
27(1006)
04-0CT-'76
13188
P~Gr:
19
DZRKJD.Ptl
)0-AUG-76
14148
Til
CHECK
RKWC
WITH
A
COUNT
PATTERN
942
003612
010237
081
164
MOV
R2,
.REGI
,GET
WORD
THAT
WAS
RECVD
943
003616
104011
ERROR
11
I DID
NOT
READ
BACK
THE
PATTERN
THAT
944
I
WAS
WRITTEN
INTO
THE
REGISTER
945
003620
005205
INC
R5
946
003622
"01402
BEQ
TST14
I,EXIT
if7
003624
005201
3S1 INC
Rl
,
INCREMENT
COUNT
PATTERN
948
003626
001363
BNE
2,
,LUP
BAK
,
WRITE
NXT
PUTERN
IF
NOT
949
,DONE
WITH
ALL
950
J
951
J
'***************************************************************
952
,*TEST
14
CHECK
THAT
RKBA
CAN
BE
SET
953
J
*THIS
TEST FLOATS
~
'1'
THROUGH
RKBA
BITS
0-15
AND
CHECKS
THAT
954
J
*IT
CAN
BE
RUD
B~CK
CORRECTLY.
R0
CONTAINS
THE
WORD
THAT
WAS
955
,*WRITTEN.
956
J
'****************************
*
**********************************
957
003630
000004
TST141 SCOPE
958
003632
012700
000001
MOV
Il,R0
'INITIALIZE
R0
rOR
BIT
TO
BE
959
,WRITTEN IN
RKBA
960
003636
013701
001254
MOV
RKBA,R1
961
003642
012737
003650 001110
MOV
I18,SLPERR
,SET
UP
RETURN
AORES
rOR
962
ILUPING
ON
EROR
(SW
12)
963
003650
1110011
UI
MOV
R0,(lRI
p.RITE
THAT
BIT
IN
RKBA
964
003652
011102
MOV
IIR1,R2
965
003654
020"02
CMP
R0,R2
I
WAS
IT
WRITTEN
CORRECTLY?
966
003656
001405
BEQ
2.
IYES,
BRANCH
967
003660
010037
001162
MOV
R0,.REG0
,GET
EXPCTD
RKBA
(BIT
WRITTEN)
968
003664
"10237
001164
MOV
R2,.REGI
IGET
RKBA
(BIT
READ
BACK)
969
003670
104013
ERROR
13
1010
NOT
READ
BACK
TME
BIT
THAT
970
,WAS
WRITTEN
IN
RKBA
971
003672 006300
2'1
ASL
R0
ISHIFT
Re,
TO
WRITE
NEXT
BIT
972
003674
001365
BNE
18
I
IF
ALL
BITS
ARE
NOT
CHKD,
LOOP
973
,BACK'
WRITE
NXT
BIT
974
975
'J***************************************************************
976
,*TEST
15
CHECK
RKBA
WlTH
A
COUNT
PATTERN
977
,*THIS
TEST
CHECKS
THAT
RKBA
CAN
BE
CLEARED,
THEN
IT
RUNS
A
COUNT
978
,*PATTERN
FROM
0
TO
177777.
Rl
CONTAINS
THE
COUNT
PATTERN
TO
BE
WRITTEN.
979
,
'***************************************************************
980
003676
000004
1ST151
SCOPE
981
003700
012737
000010
001206
MOV
1l0,STIMES
,,00
10 ITERATIONS
982
003706 013700
001254
MOV
RKBA,R0
983
003712
,,12710
177777
MOV
U
77777,
~R0
,SET
ALL
BITS
IN
RKBA
984
0"3716
005010
CLR
IR0
;CLEAR
RKBA
985
003720
005710
TST
,R0
,WAS
IT
CLEARED?
986
003722
001405
BEQ
11 ; YES,
BRANCH
997
003724
0100)7
001162
NOV
R0"REG0
I
GET
AORES
or
RKBA
998
003730
011037 001164
MOV
.R0,.REGI
,NO,
GET
RKBA
989
003734
104010
ERROR
10
,RKBA
COULD
NOT
BE
CLEARED
990
991
003136
005001
1$1
CLP
Rt
1
INITIALIZE
COUNT
PATTERN
992
003740
012705
177773
MOV
'-S,R5
993
003744
012737
003752
001110
HOV
.2S"LPERR
994
003752
0HH10
211
MOV
Rl,IR0
,WRITE
THE
PATTEPN IN
THE
995
,REGISTER
996
0"3754
011002
MOV
_R0,R2
997
003756
020102
CMP
Rl.R2
J
WAS
IT
WRI
ITEN
CORRRECTLY?
IlAINOEC-11-DZRICJ-D MACHI
27(
1006)
04-0cr-76
13108
PAGE
20
OZRICJD.
Pll
3~-AUG-76
14149
TIS
CHECK
RICU
WITH
A
COUNT
PATTERN
998
9C19
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
10t2
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
10211
1029
1030
1031
1032
1033
1014
1035
1036
1037
t038
1039
1040
1041
1042
1043
1044
1045
1046
1841
1848
1049
1050
105t
1052
1053
003760
003762
003766
"03772
003774
003776
004000
"04002
004004
004006
004012
004016
004022
004038
004032
"04034
004036
004040
004044
004050
001407
010U7
01
t037
10.013
005205
001402
005201
001163
000004
005077
012700
013701
012737
010011
011102
020"02
001405
,,10037
010237
104015
004052
006300
004054
001365
004056
004060
004066
004072
084076
004100
004102
004104
004110
084114
804116
884128
1184124
00U32
8"4134
000""4
012737
01]700
012710
0"5010
805710
001405
U0037
111110]7
184010
"850"1
11112705
812737
010118
"11""2
01'"
162
001164
175236
000001
001256
004030
001111/J
001162
001164
000818
"01206
081256
177777
001162
e01164
177773
004132
001110
3
..
,
BEO
MOV
MOV
ERROR
INC
BEQ
tNC
BHE
]I
Rt
t.REG0
'R0,'RI!:Gt
13
R5
TST16
Rl
2S
iYES,
BRANCH
,
GET
EXPECTED
MORO
,GET
WORD
THAT
WAS
RECVO
I DID
NOT
READ
BACK
THE
PATTERN
THAT
,WAS
WRITTEN
INTO
THE
REGISTER
,
,EXIT
'INCREMENT
COUNT
PATTERN
I
LUP
BAK
,
WRITE
NXT
PATTERN
IF
NOT
J
DO"'E
WITH
ALL
I
'***************************************************************
I*TEST
16
CHECK
THAT
RICO
A
CAN
BE
SET
,*THIS
TEST FLOATS A
'1'
THROUGH
RKDA
AND
CHECU
THAT
THE
WORD
WHICH
WAS
,*WRITTEN
IS
READ
BACK
CORRECTLY
I
,***************************************************************
TST161 SCOPE
181
2
..
,
CLR
MOV
HOV
HOV
MOV
NOV,
CMf
BEQ
MOV
MOV
ERROR
ASL
BNE
IRKCS
.1,Re
RKDA,Rl
'U,eLPERR
R0,IIRI
IIR1,R2
R0,R2
U
Re,'REGe
R2,IREGI
15
R0
Ie
ICLEAR
RKCS
,INITIALIZE
R0
rOR
BIT
TO
BE
WRITTEN
IN
RICOA
,SET
UP
RETURN
ADRES
I rOR LUPING
ON
EROR
;WRITE
THAT
BIT
IN
RKDA
,WAS
IT
WRITTEN
CORRECTLY
; YES,
BRANCH
,NO,
GET
EXPCTO
RKD!
(Bn
IGET
RKDA
(BIT
READ
BACK)
,010
NOT
READ
BACt(
THE
BIT
,WAS
WRITTEN
IN
RKDA
,SHIF"l'
R0,
TOWRITE
NXT
BIT
,IF'
ALL
BITS
ARE
NOT
CHKD,
,BACK'
WRlTE
NXT
BIT
WRITTEN)
TH~T
LOOP
,
'***************************************************************
,nEST
17
CHECK
RKDA
WITH
A
COUNT
PATTERN
,*THIS
TEST
CHECU
THAT
RKDA
ClAN
BE
CLEARED,
THEN
A
COUNT
PATTERN
,*FROM
iii
TO
177777
IS
WRITTEN
AND
CHECKED.
R1
CONTAINS
THE
COUNT
,*PATTERN
TO
BE
WRITTEN
,
'***************************************************************
TST17.
SCOPE
1"
211
MOV
MOV
MOV
CLR
TS'1'
BEQ
MOV
MOY
ERROR
CLR
MOV
MOV
MOV
MOV
f10,nIMES
RKDA,RII
U77777"Re
'R0
'Re
11
R""REG"
'1t8,IREGt
18
Rl
'-5,R!!
12"'LPERR
RI"R"
tR0,R2
"DO
10
ITERATIONS
, SET
~LL
BITS
IN
RKDA
,CLEAR
RKOA
, liAS
IT
CLEARED?
,ns.
BRANCH
,GET
ADRES
OF
RKOA
,GO,
GET
RKOA
,RKDA
COULD
NOT
BE
CLEARED
,INITIALIZE
COUNT
PATTERN
. ,WRITE
THE
PATTERN
IN
THE
REGISTER
SEQ
0032
SEQ
01133
MAINDEC-l1-DZRKJ-D
MACYll
27(1006)
04-0CT-76
131'"
PAGE
2t
DZRKJD.Pl1
10-1UG-76
14148
T17
CHECK
RKDA
WITH
A
COUNT
PATTERN
1054
HISS
U56
111157
1058
1059
1060
1061
lI1J62
lIiI63
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
110;7
1078
1079
1080
1081
1082
10U
1084
1085
1086
1087
1088
1089
ta90
1091
lIiI92
1091
1094
1095
1096
1097
1098
1099
1100
1101
1102
1101
1104
1105
1106
1107
1108
t
109
004136
004140
004142
004146
004152
004154
004156
004160
004162
004164
004166
004172
004114
004200
004202
S34206
004210
"04212
004214
004216
004220
004224
0042]0
029102
991497
8101]7
010237
104015
905205
001402
005201
001363
000004
91]790
010002
012701
010103
012720
005201
001314
000005
005712
001405
010237
011237
104017
004232
1105722
004234
005203
004236
001366
004240
004242
004246
004252
004254
004254
004260
004264
004266
004270
004272
004274
004276
004300
000004
012746
012746
00111002
013700
012710
f!l05210
005005
105710
100405
005205
001374
004737
MUNOEC-l1-0ZRKJ-D
DZRKJO.Pll
30-AUG-16
1110
004304
104001
1111
11
12
004306
022713
11
1 3
004312
001405
1114
004114
010037
1115
004320
011037
1116
004324
104014
11
17
004126
013702
1118
O04332
010204
1119
004334
012701
1120
004340
010122
1121
004342 010122
1122
004344
010122
1123
O04346
104412
1124
1125
1126
1127
1128
1129
1130
1111
1132
004350 012703
1133
004354
005714
1134
004356
001405
1115
004360
010437
1136
004364
011437
1137
004370
104014
1138
1139
004372 005724
1140
004374
005203
1141
004376
001366
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
004400
000004
1154
004402
012746
1155
0164406
012146
1156
004412
000002
1157
004414
1158
004414
012705
1159
1160
004420
01
)700
1161
004424
012101
1162
004430
013702
1163
004434
IH2722
1164
004440
012722
1165
004444
005201
001162
901164
001252
177775
177777
001162
001164
000340
004254
09.11250
007560
005424
"'lICYll
14148
01'10200
001162
0161164
001252
177777
177775
001162
001164
000340
004414
177771
001244
177774
001250
017576
177777
27(101:16)
lSi
CMP
BEQ
MOV
MOV
ERROR
INC
BEQ
HOC
BNE
RI,A:!
3t
Rl,
,REG0
R2,.REGl
15
R5
TST20
Ri
2.
,WAS
IT
WRITTEN CORRRECTLY?
,YES,
BRANCH
IGET EXPECTED
WORD
,GET
WORD
THAT
WlS
RECVD
1010
NOT
READ
BACK
TilE PATTERN
THAT
,WAS WRITTEN INTO
THE
REGISTER
nEXIT
I INCREMENT
COUNT
PATTERN
,LUP
BAK
, WRITE
NXT
PATTERN
IF
NOT
,DONE WITII
ALL
r I
•••••••
**************.*****************************************
IUEST
20
CHECK
THAT
RKWC,RKBA,RKDA
CAN
8E
CLEARED 8Y RESET
,*TIIIS
TEST CHECKS
THAT
RKWC,
RKBA
AND
RKOA
CAN
BE
CLEARED
BY
8US
INIT,
,*REUT
INSTRUCTION
IS
USED
,
,*****.*****************************************.***************
TST201
SCOPE;
lSI
2$1
MOV
MOV
MOV
MOV
MOV
INC
BNE
RESET
TST
BEQ
RKWC,R0
R0,R2
'-3,
Rl
Rt,Rl
U
77177,
(R0)
+
Rt
1$
(R2)
3t
:
INITIALIZE
R0
TO
PRINT
TO
FlKWC
: SET
UP
COUNT
FOR
3 REGISTERS
TO
BE
CHKO
,SET
ALL
BITS
IN
Rl<iIIC
RKBA
I
RKOA
I
ISSUE
A
BUS
INIT
:
WAS
THE
REGISTER C
PTD
T~
BY
R2)
CLEARED?
,YES,
BRANCH
MOV
MOV
ERROR
R2,
SREG"
,R2,
'REGl
17
INO,
GET
ADRES
OF
REG
IS
THAT
WAS
NOT
CLEARED
,
GET
CONTENTS
OF
THAT
REGISTER
lSI
TST
INC
8NE
CR2)+
R3
2.
:
RKll
REGISTER C
ADIIES
IN
R0)
COULD
;NOT
BE
CLEARED
BY
BUS
INIT
I INCREMENT POINTER
TO
NXT
REGISTER
,HAVE U
CHKO
ALL
3
REGISTERS?
:
IF
NOT.
LOOP
BACK
,
CHK
NXT
:
'***************************************************************
:*TI:;ST 21
CHE;CKTHAT
RKCS,
RKWC,
RKBA,
RKOA
CAN
8E
CLEARED
BY
CONTROL
RESET
,*RKCS
IS
SET
TO
1560,
RKWC,
RKBA,
RKDA
ARE
ALL
SET
,*TO
177777.
CONTROL
RESET
IS
DONE
AND
IT
IS
CHECKED
,*IF
ALL
THESE REGISTERS
ARE
CLEARED.
,
,*****.*.***********.**********************.**********.*********
TST21:
SCOPE
64$1
1$1
MOV
1340,-(SP)
MOV
.6H,-CSP)
RTl
MOV
!oIOV
INC
CLFI
TSTB
8MI
INC
8NE
JSFI
FlKCS,R0
n560,~R0
'R0
R5
'1'10
2.
R5
1$
PC,GTlFlG
;SET
ALL
WRITABLE
BITS
IN RKeS
I SET GO,
CONTROL
RESET
:010
CNTRL
ROY
SET?
;YES,
BRANCH
,WAI
TEO
LONG?
I
IF
NOT
LUP
BAK
" wAIT
:
GET
RKCS,
ER,
OS
04-0CT-76
13108
PAGE
22
T21
CHECKTHAT
RkCS,
RKWC,
RKBA,
RKDA
CAN
BE
CLEARED
BY
CONTROL
RESET
ERROR
;CNTRL
ROY
DID
NOT
SET
: AFTER
CNTRL
RESET
2U
C14P
'200,
~R0
: DID
CNTRL
RESET
CLEAR
RKCS
BEQ
3. I
YES,
BRANCH
MOV
R0,$REG0
,GET
AORES
OF
RKC
S
MOV
'Re,
.REGI
:
GET
CONTENTS
OF
RKCS
ERROR
14
,CONTROL RESET DID
NOT
CLEAR
RKCS
lSI
MOV
RKWC,R2
MOV
R2,R4
MOV
U77777,Rl
MOV
RldR2)+
,SET
ALL
BITS
IN
RKWC
MOV
I'll,
(R2)+
RKBA
MOV
I'll,
(1'12)+ :
RKOA
CNT.RESET
:GO,
DO
CONTROL
RESET
,THIS
IS
A
CALL
FOR
THE
'CNTRL-
,RESET'
ROUTINE. A
CONTROL
RESET
15
:DONE , AFTER A CERTAIN TIME
IF
,'CNTRL
ROY'
DOES
NOT
SET
AN
ERROR
IS
:REPORTEO.
NOTE
THAT
THE
PC
IN
ERROR
,IS
THE
PC
WHERE
CNT.RESET
IS
,LOCATED.
THIS
IS
A
VERY
8ASIC
ERROR
,
:IF
IT
OCCURS
GO
BACK
TO
TEST
10,
MOV
'-3,R3
4$1 TST
(R4)
1111AS
THE
REGISTER CLEARED?
BEQ
5.
,YES,
8RANCH
MOV
R4,.REG0
:
GET
ADRES
or
REGISTER IN
ERROR
folOV
'R4,
'REG1
~
GET
CONTENTS
OF
THAT
REGISTER
ERROl'.
14
,CONTROL RESET DID
NOT
CLEAR
THE
: REGISTER
WHOOSE
ADRES
IS
IN
R4
5$1- TST
CR4)+
,INCREMENT POINTER
TO
NXT
REGISTER
INC
R3
~CHKD
ALL
REGS?
BNE
U
:IF
NOT, LUP
BAK
,
CHK
THE
NXT
REG
J
'***************************************************************
:*TEST
22
CHECK
THAT
EACH
RUI
REGISTER
IS
UNIQUELY AORESSEO
,*THIS
TEST CHECKS
THAT
EACH
RKll
REGISTER
CAN
BE
UNIQUELY .. OORESSED
1*1)
RKCS
RKWC.
RKBA,
RKDA
ARE
FIRST
SET
TO
177777
(17576
FOR
RKCS)
1*2)
REGISTER WHODa! ADDRESS
IS
IN R0
IS
CLEARED
,*3)
EVERY
OTHER
REGISTER
IS
CHECKED
FOR
ERRONEOUS
CLEARING BECAUSE
,*ADDRESSING ERROR.
IF
SO
THE
MULTIPLE AORESSING
ERROR
IS
REPORTED
1*4)
ADDRESS
IN
Re
IS
CHANGED
TO
THE
NEXT
REGISTER ,
THE
PROCESS
IS
'*
REPEATED.
:
,**********.***********.******************.*********************
TST221
SCOPE
MOV
U4S,-CSP)
MOV
t64t.-(SP)
RTI
6411
MOV
.-7,
R5
:SET
UP
COUNT
rOR
THE.
or
,REGISTERS
TO
BE
UN
HIELY
AODRSO
MOV
RKOS,R8
,INITIALIZE
POINTER
TO
REGIS
TO
BE
SET
lSI
MOV
'-4,1'11
MOY
RKCI,R2
MOV
U
7576,
(Ul+
,SET
BITS
IN
RKCS
211
MOV
1177777,
(.2).
,SET
BITS
IN
RKIIC
INC
R1
,
RKBA
or
SEQ
0034
SEQ
0035
~AINDEC-l1-DZRKJ-D
.. ACYl 1
27(1006
)
04-0CT-76
lH08
PAGE
23
DZRKJD.P11
10-AUG-76
14148
T22
CHECK
THAT tACH IIK11 REGISTER
IS
UNIQUELY
ADRESSED
1166
004446
001174
BNE
21
RKOA
1167
RKMR
Ir
RKllC
1169
004450
1105010
CLR
9R0 'CLEAR REGISTER
(WHOSE
ADDR
IS
IN
!l0)
1169
884452
013702
001250
MOV
RKCS,R2
1170
004456
1120002
CMP
R0,R2
,WAS
THE
CLEARED
REGISTER
RKCS?
1171
004460
001406
SEQ
lS
,YES
1172
,NO-CHECK
Ir
IT
WAS
INADVERTENTLV'
1173
004462
011203
MOV
9R2,R3
'CLEARED
BECAUSE
or
ADDRESSING
1174
804464
04270)
170200
BIC
'170200,
Rl
JERROR
1175
084478
022703
007576
CMP
t7576,R3
1176
084474 081020
BHE
6S J
Ir
SO,
REPORT
ERROR
1177
004476
005722
:III TST
(R2)+
; INCREMENT POINTER
TO
NEXT
REGISTER
1178
004500
012701
177775
MOV
_-3,Rl
,SET
COUNT
FOR
3 REGISTERS
1179
004504
020200
4$,
CMP
R2,M
,WU
THE
CLEARED
REGISTER
SAME
AS
1198
,THE
REGISTER POINTED
TO
BY
R2
1181
004506 001494
SEQ
5.
HES
1182
; NO,
CHECK
Ir
THE
REGIS
UNDER
TEST
1193
; (POINTED
BY
R2)
WAS
INADVERTENTLY
1194
,CLEARED
WHEN
CLEAI'!ING
THE
REGIS
1185
,POINTED
TO
BY
R0,
DUE
TO
1186
,ADDRESSING
ERROR
1187
884510
011203
MOV
.R2,Rl
,GET
CONTENTS
OF
REGIS BEING
CHECKED
1198
004512
010304
MOV
R3,R4
:
FOR
INADVERTENT CLEARING
1189
004514
005104
COM
R4
:CHECK
IF
ANY
BIT
WAS
ERRORNEOUSLY
CLEAPED
1190
004516
001007
8NE 6S
JIF
SO,
REPORT
ERROR
1191
004520
00572:l
511 TST
(R2)+
,INCRMENT
PTR
TO
NEXT
REGISTER
1192
004522
005201
INC
Rl
: INCRNENT
COUNT
119)
004524
01'11367
BNE
4$
ICHECK
THE
REST
1194
J
1195
904526
1'105720 TST
(R0)+
;
INCREIo1ENT
PTR
TO
THE
NXT
REGIS
TO
BE
CLEARED
1196
004530
005205
INC
R5
J
HAVE
ALL
THE
REGIS
BEEN
CHECKED?
1197
004532
Ihl1334
SNE
IS
:
IF
NOT,
LOOP
BACK
1198
094534
000415
BR
TST23 :
,EXIT,
IF
DONE
1199
004536
010037
001162
681
1010V
R0"REGe
J
GET
ADRES
Of
REGISTER THAT
WAS
1200
:TRIED
TO
REFERENCE
1201
004542
010237
091164
MOV
R2"REGI
:
GET
ADRES
OP'
REGISTER
THAT
GOT
1202
: REfERENCED INSTEAD
1203
094546
011037 001166
MOV
@lR0,.REG2 ;GET
CONTENTS
OF
REG
THAT
WAS
1204
:
ADDRESED
"
MEANT
TO
BE
CLEARED
1205
"04552
1'119337
001170
MOV
Rl,SREGl
:
GET
CONTENTS
OF
REGI
STER
THA
r
GOT
1206
;CHANGED INSTEAD
1287
904556
104029
ERROR
20
:POSSIBLE
ADRESING
ERROR.
TRIED
1208
:ADRESING
RKll
REG1STER,
ANOTHER
ONF
1209
:GOT ADRESED. REGIS
IN
R0
WAS
THE
1210
:
ADRESED
ONE,
REG
IN
R2
1211
:WAS
THE
ONE
THAT
GOT
ADRESED
INSTEAD
1212
004560
0217~2
001250
CMP
RKCS,
P2
1213
004564
901744
BEQ
3$
J
RETURN
TO
THE
1214
904566
01'11'1754
BR
5S
J RIGHT POINT
1215
: ,
•••••••••••••••
*
••••••••••••••••••••
*
••••••••••••••••••••••••••
1216
,.nST
23
CHECK
THAT
HI "
LO
BYtES
Of
RKCS
CAN
BE
ADDRESSED
1217
,.THIS
TEST
CHECKS
TIfU
THE
HI
"
LO
BYTES
OF
RKCS
CAN
BE
1218
,.ADDRESSED CORRECTLY.
1219
,.BITS
IN
ALL REGISTERS THAT
CAN
BE
WRITTEN
ARE
SET.
THEN
EACH
1229
,.BYTE
OF
RKCS
IS
REFERENCED
BY
·CLRB·
"
IT
IS
CHECKED
THAT
ONLY
1221
,*THAT
BYTE"
NO
OTHER
REGISTER BYTE
GETS
CLEARED
MAItlDEC-l1-DZRKJ-D
Io1ACYll
27(1006)
04-0CT-76
1311'18
PAGE
24
DZRKJD.Pll
10-AUG-76
14148
T23
CHECK
THAT
HI
"
LO
BYTES
Of
RKCS
CAN
BE
ADDRESSED
12~2
1223
1224
1225
1226
1227
1228
1229
IH9
1231
1232
1233
1234
1235
1236
1237
1218
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1259
1251
1252
125]
1254
1255
1256
1257
1258
1259
1260
1261
1262
126]
1264
1265
1266
1267
126'
1269
1270
1271
1272
1271
1274
1275
1276
1277
004579
994572
984576
904692
994606
094612
084614
094614
1194628
094624
004630
004632
994634
904649
004642
004644
004650
004654
004656
904662
904664
004670
004674
0""01'14
012702
012700
012146
012746
01'10002
013701
"12721
012721
"05209
001374
013701
195011
010184
017703
022702
881011
842703
091417
995937
010137
104922
094676
000411
094700
042793
004784
001486
094786
805037
804712
004714
084128
804722
004726
004732
004734
004736
004748
884742
008303
810337
104023
012780
013705
085725
005288
001417
011503
885183
004744
801772
804746
0111137
084752
'1U95]7
804756
004764
884766
004772
012737
005103
810]]7
104024
177776
177775
080348
884614
80U59
007576
177777
081250
17441""
177776
t
77600
001162
001164
000377
801162
801164
t
77774
981250
001162
001164
177777
981170
001166
, ,
••••••••
*
••••
**
••
*.*
••••
*
••••••••
*
••
*.*
•••••••••••
*
••
*
••••••
*
••
TS1231
SCOPE
6411
III
211
411
511
MOV
MOV
MOV
MOY
RTI
MOV
MOV
MOV
INC
BNE
MOY
CLRB
MOV
MOV
CMP
8NE
BIC
BEQ
CLR
MOV
ERROR
BR
BIC
BEQ
CLF!
SWAB
MOV
ERROR
MOV
MOY
TST
INC
SEQ
MOV
COM
BEQ
MOV
MOV
MOV
COM
MOY
ERROR
.-2,R2
.-l,R0
U40,-(SP)
1641,-(SP)
RKCS,RI
t7576,(R1)+
1177777,(R1)+
lie
18
RKca,RI
lIRl
RI,R4
lIRKCS,R3
.-2,1'12
:u
U77600,Rl
u
IREG8
R],
SREGI
22
U
1317,R3
41
SREG0
R3
R]"REGI
23
'-4,R8
RKCS,R5
(R5)+
R0
6S
lIR5,R)
1'13
51
R1,IREG9
R5,IREGI
'177777,
'REG2
Rl
Rl,IREGl
24
,SET
COUNT
rOR
2BYTES-HI
,
LO
,SET
COUNT
,INITIALIZE
PTR.
TO
RKCS
,SET
ALL
BITS
IN
RKCS
J SET ALL
BITS
IN
RKWC
,
RKBA
I
RKDA
1
INITIALIZE
PTR
TO
RKCS
L0
BYTE
,CLER
RKCS
LO
OR
HI
BYTE
1
GET
RKCS
WORD
,R
U CHUNG
HI
OR
LO
BYTE?
:
BRANCH
If"
HI
BYTE
,MASK
HI
BYTE
:OK
If
LO
BYTE
WAS
CLEARED
,GET
EXPCTD
RKCS.
:GET
RKCS
RECVD,
LO
BYTE
I ALL
RUt
REGISTER'S
WERE
LOADED
WITH
,1'5
THEN
TRIED
TO
ADRES
"
CLR
RKCS
,LO
BYTE,
IT
COULD
NOT
BE
CLEARED.
J
MASK
LO
BYTE
:
OK
IF
HI
BYTE
WAS
CLEARED
:GET
EXPCTD
RKCS,
HI
BYTE
,GET
WHAT
WAS
ACTUALLY
RECVD
,ALL
RUI
REGISTER'S
WERE
LOADED
WITH
II'S
THEN
TRIED
TO
ADRES
"
CLR
RKCS
,HI
BYTE
IT
COULD
NOT
BE
CLEARED.
,INITIALIZE
COUNT
'01'1
REST
Of
REGISTERS
:
INITIALIZE
POINTER
TO
RKCS
: INCREMENT
PTR
TO
NXT
REGIS
I ALL
REGS
DONE?
,If
YES,
GO
"
ADRES
TO
CLEAR
RKCS
HI
BYTE
,IF
NOT,
GET
CONTENTS
Of
THE
REGIS
IBEING
CHKD
,COMPLEMENT
THE
CONTENTS,
SHOULD
BE
,0
rOR
IT
WAS
,PREVIOUSLY
SET
TO
ALL
l'S
IF
IT'S
: 8 BRANCH,
IF
NOT
REPORT
ERROR
J
GET
RKCS-BYTE-ADRES
WHICH
WAS
TRIED
,TO
ADRES
,
GET
ADRES
Of
REGIS
WHICH
GOT
ADRESED
, INSTEAD
,GET
EXPCTD
CONTENTS
OF
REGISTER
, THAT
GO
ADRESED
I
GET
CONTENTS
RECVD
fROM
THAT
REGIS
I ALL
RKll
REGISTERS
WERE
LOADED
S£.O
1'J01b
S(:;Q
0~37
"'At
NOEC-l1-DZRKJ-O
"IACYl1
27
(1336)
04-0CT-76
13108
PTtGE
25
OZRKJD.
PII
10-AUG-16
14148
T23
CHECK
THAT
HI
,
LO
BYTES
O.
RKCS
CAN
BE
ADDRESSED
1278
1279
1280
1291
1282
1293
1284
1295
1296
1287
1289
1299
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
130i
1332
1333
1304
1305
1336
1307
1339
1339
1310
1311
1112
1313
1314
1315
1316
1317
1319
1319
1320
1321
1312
1323
1324
1325
1326
1327
t3H
1329
1330
1331
tB2
1333
004774
004776
005003
035002
005004
005006
0050i2
005016
035020
305020
005024
005030
0050]4
005040
005044
005050
00'5052
005054
005056
00'5060
005064
005066
005372
00'5"'74
005100
005102
005106
'~051!0
005114
005120
005122
005124
00513"
000756
005201
01'15202
001316
000004
312746
0i2i46
000332
012734
313732
012703
013701
012721
312721
1'105200
I'IIH374
105312
010200
042700
01UlI'J1
332N2
0011HH
342701
300402
IH2701
~"H41
1
010231
1'I3271i!2
001431
30031i!1
010137
104025
300.341i!
0050210
177772
031252
177775
001250
007576
177777
000001
t
77430
000377
!t\0!
11:02
001164
6S:
8R
INC
INC
SNE
5$
Rl
R2
2$
WITH
l"S.
RKCS
BYTE (ADRES
UNDER
"BYTE'
IN
ER
MSGE)
WAS
AORESED
USlpjG
'CLRB',
BUT REGISTER (ADRES
UNDER
'REGIS'
IN
ER
t-ISG)
GOT
CHANGED
AS
A
RESULT.
:POSITION
PTR
TO
RICCS
HI
BYTE
:CHK
IF
BOTH
HI
"
LO
BYTES
(RKCS)
:WERE CLEARED
:
IF
NOT
BRANCH
BACK
: ,
•••••••••••••••••••••••••••••••••••••••••••
**
••••
*.*
••
***.*
••
*.
,.TEST
24
CHECK
THAT HI ..
LO
BYTES or
RKWC,BA,DA
CAN
BE
ADDRESSED
,.THIS
TEST CHECKS THAT BYTE OPERATIONS Oil RKWC, RKBA "
RKDA
CAN
BE
DONE
;.CORRECTLY.
FIRST
RKWC, RKCS,
RKBA,
RKDA
ARE
SET
TO.
177777.
;*1
J REGISTER BYTE
POINTED
TO
BY
R2
IS
CLEARED
USING
"CLRB'
,.2)
IT
IS
CHECKED
THTtT
ONLY THAT BYTE
AND
NO
OTHER
BYTES
GET
CLETtRED
,.3)
POINTER
R2
IS
INCREMENTED
TO
TflE
NEXT
REGISTEP-BYTE
" THE PROCESS
:.15
REPEATED. LO BYTE
IS
DONE
FIRST,
THEN
HI-BYTE
IS
DONE.
: ,
•••
**.*
•••••
*
••
*
•••
*.*
•••••
*.*
•••••
***
•••
****
•••
*
••
*.*
•••••••
*.
TST24:
SCOPE
64$1
lSI
26
I
3$ :
4$
:
llS:
MOV
'Hil,-(SP)
i'iOv
i64S,-(SPj
RTI
MOV
MOV
MOV
MOV
MOV
MOV
INC
BJIoE
cr,RB
MV
BIC
MOV
BIT
BNf.
BIC
BP
BIC
BEQ
MOV
BIT
BEQ
5
..
,,1'1
MOV
ERROR
#-6,R4
IlKWC,R2
#-3,
R0
RKCS,Rl
#7576,
(Rl)+
U77777'(1l11+
R0
2$
IiIR2
R2,
R0
#1,1<0
IIR0,1<1
H,P2
3$
U
77400,Rl
4S
077,
Rl
5$
R2,$PEGIll
'1,
R2
111
Rt
Rl,
$REGI
25
: SET
UP
COUNT
FOR
6 REG-BYTES
TO
BE
AORESED
:
INITIAI,IZE
POINTER
TO
RK.WC
:SET
RKCS
lilTS
RKWC
RKBA
RKDA
: ADDRESS .. CLEAR
REGIS
BYTE
UNDER
TEST
;CONVERT
THE
BYTE
AORES
INTO
WORD
;ADRES
THAT
IT
BELONGS
TO
:GET
THE
EfJTIRE
REGIS
wRD
:
liAS
THE
CLRO
BYTE:
HI
OR
LO?
;
WAS
HI,
BRANCH
:
wAS
LO-MASK
HI
BYTE
:
MASI(
LO
BYTE
:wAS
THE
ADDRESSf:D BYTE CLEARED?
BR
IF
¥e.S
;GET
ADRES
Of
REG-BYTE THAT
wAS
:
TR1
ED
TO
B ADRESED , CLETtRED
;
GET
::ONTENT5
OF
REG-S
i'TE
;TRIEO
TO
ADRES & CLR A REGISTER BYTE
;(TtORES
UNDER
"REG-BYTE'
IN
ER
MSGE),
COULD
:NOT
::LEAR
IT.
MAIt>lDf:C-ll-DZRKJ-D
MACYll
27(1006)
04-0CT-76
13108
PTtGE
26
DZRKJD.
Ptl
30-AUG-76
14:
48
T24
CflECK THAT
HI
&
LO
BYTES
OF
RKloIC,
SA,
OA
CAN
BE
ADDRESSED
1334
1335
1336
1337
IH8
13)9
1340
1341
1142
1343
1344
1345
1346
1147
IHf3
1349
1350
1351
13';2
1353
1354
1355
IJ';6
13'57
13513
1359
1360
1361
1362
n63
1364
1365
1366
1167
1368
1369
1370
1371
1372
1373
1174
1375
1376
1377
1378
1379
1380
1381
1392
1393
1384
1395
1386
1387
1388
1389
005132
005136
005142
005144
005150
005156
005162
005164
005173
ij05174
005176
005200
01ilS202
005206
005210
005214
1'l05216
l:l1il5222
005224
(il0S230
1:1052]2
005236
01:15242
017701
022701
0014teJ
010237
012737
310137
104016
012700
013701
1:120102
001433
010105
042705
011503
032701
001003
042703
000402
042703
001016
(il10231
010137
012737
005250
032101
005254
001401
005256
000303
005260
010337
005264
lI'l402
1
005266
005201
00527(il
005200
005272
01'11340
0(il5274
005202
005276
005204
005300
001253
174112
007171:0
1:1.,1162
007776
001166
177772
001252
000031
177401il
000377
001162
001164
000377
01:10001
001170
001164
001166
5St
6S:
76
:
9$ :
9$:
128
:
1081
MOV
CMP
FlEQ
MOV
MOV
MOV
ERflOR
MOV
MOV
CMP
BEQ
MOV
r;IC
MOV
BIT
8NE
SIC
BR
BIC
8Nf:
MOV
MOV
MOV
BIT
BEQ
SWAB
MOV
ERROR
INC
INC
BNE
INC
INC
BNE
~RKCS,Rl
"776,Rl
6$
R2,$PEG0
17776,$Rf.Gl
Rl,
SREG2
16
#-6,
R0
RKWC,Rl
Rl.R2
10$
R1,R5
I1,R5
IiIR5,R3
f1,Rl
8$
#177430,R3
9$
#377,R3
10$
R2,2REG0
Rl,SREGI
077,
SREG2
I1,Rl
128
113
R3,$REGl
21
III
R0
7$
R2
R4
IS
.SBTTL
END
OF
PASS ROUTINE
;WAS RKeS ERRONEOUSLY CI,RD?
:1'10,
BRANCH
;GET
ADRES
OF
REG-BYTE THAT
WAS
:TRIEO
TO
B ADRESEO &
CLEARED.
;
GET
EXPCTD
RKCS
;GET
RICes
RECVD
:
ALL
RKll
REGISTRS
WERE
LOADED WITH
1"
S
;TRIED
TO
AORES
& CLR
'REGIS-BYTE'
(IN
ER
MSGE)
;RKCS
GOT
CHANGED
AS
Tt
RESULT.
'(RKCS)EXP'
:CONTAINS
EXPCTD RKCS.
'RKCS
(RECVD)'
CONTAPIS
, R«CS RECVD.
:SET
COUNT
FOR
BYTES
:INITIALIZE
PTR
TO
RKWC
:
WAS
THE
CLEARED BYTE (PTO
TO
BY
R2)
~SAME
AS
BYTE
TO
BE
eHKD
(PTD
TO
BY
Rl)?
;IF
YES,
00
NOT
CHK
THIS
BYTE
:STRIP
WORD
ADDRESS
FROM
BYTE
ADDRS
;
IS
TI'IE BYTE
TO
B
CHKO
LO
OR
HI
BYTE!
:HI
BYTE-BRANCH
;MASK
HI
BYTE
:
MASK
LO BYTE
,GET
lDRtS
OF
REG-BYTE
THlT
WAS
;TRIED
TO
B
TtORESED
& CLEARED
;GET
ADRS
OF
REG-BYTE THAT
GOT
I ADRESED
INSTEAD
:
GET
EXPCTD CONTENTS
OF
REG-BYTE
~
THAT
GOT
lDRESED
~GET
CONTENTS
RECVD
FOR
THAT
REG-BYTE
~
ALL
RKll
REGISTRS
WERE
LOADED WITH
1'05.
~TRIED
TO
AD
RES
, CLR
'REG-BYT1'
(IN
ER
MSGE)
~'REG-BYT2'
GOT
CHANGD
AS
A
RESULT.
~'BYT2-EXPCT'
(IN
ER
MSGE)
IS
THE EXPCTD CONTENTS
:OF
REG-BYT2.
'BYT2-RECVD'
IS
THE CONTENTS RECVD.
~
INCREMENT PTR
TO
NXT
REG
BYTE
;
ALL
BYTES CHKD1
:NO,
LOOP
BACK
: I
"ICREfoIENT
PTR
TO
NXT
REG
BYTE
TO
B CLRD
;
ALL
BYTES CLRD1
,LOOP
BACK
: ,
••••••••••••
*.*
•••••
*
••
*
•••••••••
**.*
•••
*
••••
**
•••
*
••••••••••••
:*INCPE"IENT
THE
PUS
NUMBER
(SPASS)
:*INDICATE
END-OF-PROGRAM AFTER 1 PASSES
THRU
THE
PROGRAM
SEQ
0038
SEQ
0039
MUNDEC-U
-DZRKJ-D
MACYII
2H
UHll6)
..
-oeT-76
13
11111
PAGE
27
DZII!l:JD.
PI
1
10-AUC-76
14148
END
or
PASS FlOUTINE
1)90
1391
1392
1391
1394
1395
1396
1397
\398
tl99
1400
1401
1482
1403
\48'
140S
1406
\407
140B
1409
14U
140
\412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
142S
1426
1427
142B
1429
1410
1411
1432
1413
1414
1415
1416
1437
1418
1419
144~
1441
1442
1443
1444
1445
005302
005302
005304
t'l0S310
1105314
005320
005326
~05330
005312
005334
0053)6
005340
1'105342
00!5146
005352
005354
005160
1'105364
005366
1'105170
005]72
005374
005]76
805400
005401'1
1'105402
005404
005407
005414
005422
00'5424
005432
005440
005446
"08004
805037
805037
'05237
042737
805127
00001111
Gl03022
012737
000001
005330
104401
013746
11'I44~5
104401
011700
001405
000005
004710
"'80240
'00248
000240
1'10''1]7
002UI0
177
1'115
050041'1
000043
017717
017717
0177]7
000207
001102
801216
00110'
100001'1
005407
001
UJe
005404
000042
377
0424\
2
051501
17362111
1736HI
171b80
0"
100
81'.10
042116
020123
0iJ1162
Ill'll
"4
001166
,*TYPE
"END PASS
nxxxx"
(IlHEFlE
xx
XXX
IS
A DECIMAL.
NUMBER)
,*Ir
1'HI!:RES
A MONlTOFl
CO
TO
IT
I*Ir
THEFIF.
ISN'T
JUMP
TO
STlRTl
SEOPI
1E0PCTI
.ENDCTI
.GETUI
UNDADI
SDOACNI
SCOPE
CLF!
CLPI
INC
BIC
D1!:C
.WOFID
BCT
MOV
.WORO
nOPCT
TYPE
MOV
TYPDS
TYPE
MOV
BEQ
RESET
JSR
NOP
NOP
NOP
JMP
SF!TNADI
."ORO
.tNULL,
.BYTE
SENOMGI
.ASCIZ
nSTNM
*TIMES
SPASS
U001!100,tpUI
(pelt
1
.SOOAr.N
(PC
It,
II (PC
It
1
,UND!IIG
'PlSS,-(SP)
,S[NULL
UU,RII
$OOACN
PC,
(flO)
, ,ZERO
THE
TEST
MUMBER
"
ZEF!O
THE
NUM8ER
0 ..
ITEUTIONS
I,INCREMENT
THE
PASS
1il/'48ER
J
,DON'T
ALLOII l
NEG
••
UIlBEFI
"LOOli'?
"YES
: I
RESTORE
COUNTER
,
,TYPE
"END
PAsa
••
I,SAVE
SPASS rOR
TYPEOUT
"GO
TYPE--OEClMaL
ASCII
III11'H
SIGN
I,TYPE
A NULL CHUACTt:PI
,.CET
MONITOR
ADDRESS
:,
BRANCH
Ir
NO
'40NITOR
I,CLEAR
THE
WORLO
, ,GO
TO
MONITOR
,
,lAVE
1I00M
,rOFl
" ACT11
'(PC).
I,FlETUIIN
START 1
-1,-1,0
"NULL
CHAFllCTE~
STRINCO
<15><12>/F.ND
PASS
.1
.SIlTTL
GTlFlGI FlOUTINE
rOF!
CETTINC
IIKCS, FlltEP,
PtKOS
ICT3RG
:SUAROUTINE rOFi
TRlNSrERFlINC
TNE
CONTENTS
or
RKCS,
RIC!:R,
PtltDS
:TO
tREGO,
'REG1,
SFlEG2
RESPECTIVELY IIIErOPtE TYPING
OUT
AN
,ERF!OFI
MEsaaCE.
,CALL'
JSFI
PC,CT3RG
CTlRCI
NOV
MOV
MOV
IITS
,RltCS,IPEG8
'RKEFI,IREGI
IIRKDS,SREC2
PC
,GET
IIKCS
:GET
RKER
,GET
RltDS
,EXIT
P'ROM
THIS
SUIIROU1'INt
MA
INDEC-l1-DZRKJ-D
MACHI
27C
1086)
04-0CT-76
13:
08
PAGt
2.
OZRKJD.PII
10-aUG-76
14:48
GU/lC:
IIOUTINE
FOR
GETTING FlKCS, RitER, RK05
1446
1447
1448
1449
14514
1451
1452
1453
1454
1455
14'16
1457
1458
14'59
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
147111
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
14112
UU
lt14
1485
1486
1487
1488
1489
149.
1491
1492
1493
1494
1495
1496
1497
1498
1499
151//0
151'11
005450
0",5454
005462
11105464
005472
005416
0.5502
111115504
004737
017737
00""'117
O17637
062716
O05337
01111375
000002
005424
17357':'
......
011"0112
01111264
111//\170
.,1264
.S8TTL
GTUG:
ROUT!NE
1"0/1
GETTl!!G
FiKes.
lI!I'tFi.
'K"5,
IIKOA
IGT4RG
: SUBROUTINE rOR TRANSFERFllNG CO!lTENTS Of' F!KCS, I!KER,
"'IS
:RKDA
TO
SREC8,
,REG1,
IIIEG2,
.REGl
PESPECTIYELY
8E~~~
: TYPING
OUT
AN
EFlROFI
MESSAGE.
:CALLI
JSFI
PC.GT4I1C
GT4FlG: JSR PC,
CTlRC
MOY
'/IKOA
,UEG3
PTS
PC
S8TTL
DELaY:
TIME
"r;LoU ROUTINE
:DELAY
:THIS
ROUTINE PROYlDES A
VUU8LE
TI"E
DELl!.
THt
CALL
roP.
TMUI
: ROUTINE
IS
AN
ENCODED
'TFlAP'
INSTRUCTION.
:ClLL:
OI':LlY
pN
II
IS
ANY
OCTAL NO.
'-'0"
1
TO
177777
:THE
DELAY PFlOYIOED
IS
7.5N
US
(CONVEP.T
N
TO
DECIMAL)
FOIt
11128
:1.514
IJS
FOFl
11/45
I
If
THE
USER
UNTS
TO
CHANCE
THE DELAY
TIME
(EXMP I
'""TER
DELAY
TO
,GtT
A TICHTEFI
SCOPE
LOOP)
Tit!
VARUBLE
'N'
rOLLOWING
'DELAY'
SKOULD
:BE
CHANGED
TO
sun
THE
INDIVIDUAL
NuD.
DELA.
YI
MOV
'UP),
TIMER
:CET
'A!40UNT'
(N)
FOil
WHICH
ADO
'2,
CSP) :DELAY
IS
TO
8E
PIIOVI&E"
,ADJUST
STACK POINTER
TO
lS'
DEC
TIMER ,COUNT
DOWN
TO
0
BNE
is
FlTI
,RETUFIN
TO
MAIN
PPOGRAM
.SBTTL
CON.RESETI
CONTROL
REST
ROUTln
,CON.FlUET
""IS
flOUTINE
USUES.
"
C:ONTFIOL
!lEaET
AND
WUTS
'OR
'THE
'CNTRL
IIOY'
rLAC
TO
SET.
WKEN
THt
rLAC
SETS
,AN
EXIT
II
MADE
OUT
or
THE
IIOUTINE.
I;
'CnRL-II'OY'
,DOES
NOT
SET
WITHIN
1
CERUlli
liME
AN
!I!ROR
MtNUI:
,
CNT
PDY
01011'1'
StT
,
PC-XXXXXI
FlICCS-YYYYYY
SKIP
OVEII
'N'
'IIi
CIVEN.
IIOTE THAT
xxnlX
IS
THE
PC
WHERE
'CMT.RESET'
Gil
'CMT.flDY'
,rs
CALLED.
,CALLI
CNf.IIESE!
.SBnt.
CNT.ROYI
IIUT
rOil
CONTFIOL
REA'"
ROUtINE
'CN.RDY
'THIS
ROUTINE
WUTI
rOil
THE
cOllnot.
READY
lilT
TO
SET
AIID
WHEN
IT
SEQ
0040
SEQ
0041
MAtNDF.C-l
\-DIRI<J-D
MACYI1
27CI0.,b)
04-0~T-76
1311'18
PAGE
29
DIRI<,JD.P1 I
10-AIlG-76
14148
CNT.RDY:
WAit
rOR
CONTROL READY ROUTINE
1502
15rrll
1504
1505
151'16
1507
151'18
1509
1510
15\1
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
\522
1521
1524
\525
1526
1527
1528
1529
\510
1531
1512
1533
ISH
15'5
1516
15n
1',,8
1 '539
1540
1541
1542
1543
1544
1'545
1'546
\547
I'HA
1549
1550
1551
1552
1553
1554
1555
1556
1557
005506
005514
1605522
1'105524
0055]0
005534
005536
00'5542
005544
005552
AIl5554
005556
005560
035564
005574
005574
00!'i5?6
005602
"'05604
IHI5610
005622
"1'15622
005626
005630
11~5632
005632
012777
1"12717
001i14A2
00!5037
10!5177
100H!5
00!5237
1'101372
032177
0011126
10441'11
001216
104401
1'10040)
011646
162716
104402
104401
000404
01774&
1I!l4402
000002
1
~4
407
000001
\775110
001170
173514
001170
02001"0
005566
000002
0~5612
173422
173534
00117.O
173366
:SETS
EXITS
OUT.
IF'
WlTHI
...
A CF.RTAIN
TIME
CNTRL
ROY
DOES
:NOT
SET
AN
EItRaR
IS
REPORTED.
IliAITING
TIME
IS
883
MS
F'OR
11120
1175
MS
FOP
11/45
WITH
BIPOLAR
"'EMORY.
:CALLI
CNT.RDY
CN.RST:
MOV
"I0V
RR
CN.RDts
CLR
lSI
TSTB
2$1
BMI
INC
RNE
BIT
BilE
TYPE
"ISG3
" ,IlRI<CS
'-300,SREG3
CN.ROH4
SREG]
IiRKCS
3$
$REG3
IS
SW
13,
i1SWR
3$
TYPE
,65$
BP
64'
:
165S:
.ASCll
<15><12>/P~=1
641:
;
167.:
66S
I
MOV
SUB
TYPOC
TypF
BR
.Ascn
(Sp),-CSP)
.2,
(SP)
,67$
66S
I
RKCSsl
MOV
(lRKCS,-CSP)
TYPOC
RTI
IISSUe:
A CONTROL RESET
S SET
UP
COUNT
ISKIP
OVER
CN.ROY
:
DID
CNTPL-RDY
SET?
:YES,
EXIT
I WAITED LONG?
sIF
NOT,
GO
BAK , WAIT
I
INHIBIT
TYPEOUT?
;
IF
YES,
SKIP
TYPEOUT
;ITYPE
ASCII
STRING
II
GET
OVER
THE
ASC
IZ
:GO TYPE
PC
IN
THE MAIN PROGRAI'l,
I
WHERE
£R!'IO!'l
OCC!.l~Pe:o
;
:TYPE
ASCll
ST~ING
: I
GET
OVER
THE
Ascn
;GET
RKCS
:GO TYPE
IT
; PETURN
FROM
THIS
:ROUTINE
TO
THE
MUN
;pROGRAM
:
THIS
PART
OP'
THE
PROGRAM
CONTUNS
THE
COMMON
ROUTINES CALLED
:
F'ROM
THE SYS"'AC.
SML
pACKIIGE
.SRTTL
SCOPE
HANDLER ROUTINE
I
1**
***
************************
**********************************
;*THIS
ROUTINF. CONTROLS THE LOOPING
OF
SUBTESTS.
IT
WILL
INCREMENT
;*AND
LOAD
THE
TEST NUMB£RC$TST:<IM)
INTO
THE
DISPLAY
REG.(DISpLAY<710»
;*AND
LOAD THE
ERROR
FLAG (SERP'LG)
INTO
DISPLAY<15108>
I*THE
SWITCH OPTIONS PROVIDED
RY
THIS
ROUTINE AREI
;*SW14:z1
LOOP
ON
TEST
:*S"I1=1
INHIBIT
ITE~ATlONS
: *SWIIl9= 1
LOOP
ON
ERROR
:*SW08=1
LOOP
ON
TEST
IN
SWR<710>
:*CALL
SCOPE
:
,SCOPE=IOT
$SCOP£:
CKSWR
;:
TEST
FOR
CHANGE
IN
SOft-SWR
MAINOEC-ll.0ZIlKJ.O
MIICYII
27(11006)
04-0:::T-76
13:08
PAGE
311
DZRf".JO.Pt t
~II-AUG-76
14148
SCOPE
HANDLER
ROUTlIlE
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1%9
157.,
1571
1572
1573
1574
1575
1576
1577
1578
1579
15A0
1'581
1582
1583
15A4
15A5
1586
1597
1588
15R9
1590
1591
15q2
t!iq3
1594
1595
15q6
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
005634
005642
0<15644
005646
005652
00'5660
005664
00'5670
005672
005674
01/15700
005702
005702
005710
005712
005720
005722
005726
005710
1'l05736
00574111
005746
005750
005756
005760
005764
005770
005772
006{J00
006002
006006
006010
006014
006022
1'l06024
006012
006040
006044
006111'50
006054
"06060
"06066
006074
006100
"06102
1132777
00111
t
0"0416
013746
A12737
A05737
012637
0"0463
022626
012637
A0A4:n
032777
001404
127737
001462
105737
001421
123737
101015
",32777
001404
913737
000443
135037
0"5037
A00415
1'132777
001011
0057)7
001406
"05237
1123737
01i1202
I
1112737
013737
105237
911617
011637
005037
112737
013777
All7'6
00AA02
300"50
000004
005672
177060
001'1004
A00004
000400
173222
01!1110)
001115
00\000
0~1110
0"110)
1"01206
004000
001100
001104
001206
000001
006102
001102
001106
001110
001210
000"01
001102
00112'6
173276
0<10004
173230
001102
001103
173172
0131106
173140
001104
001104
001206
001115
173046
1$:
BIT
'BITI4·,taS
...
R : ,LOOP
ON
PRESENT TEST?
RNE
SOVER
;
:YES
IF'
5,.,4=1
;HIII.START
OF
CODE
FOR
THE
XOR
TESTFR
.....
SXTSTR:
81'1
6$
::IF
RUNNING
ON
THE
"XOR"
TESTER
CHANGE
5$:
MOV
MOV
TST
!lOV
BR
CMP
MOV
BR
6$11
...
UEND
SIT
B£Q
C"IpB
25 :
7$:
4$
:
3$1
111
BEQ
TST8
BF.Q
CMP8
BHI
BIT
BEQ
MOV
E'R
CLRB
CLR
BR
BIT
BNE
TST
BEQ
INC
CMP
BGE
MOV
NOV
SSVLADI
INce
MOV
MOV
CLR
MOVB
SOVERI
MOV
MOV
RTI
SMXCNTI
50
llIERRVEC,
-
(SP)
'5$,UERRVEC
IIU77"60
CSP)+,I!U£RRVEC
SSVLAD
(51')+,
(SP)+
(SP)+,IlIERRVEC
7$
: I
THIS
INSTRUCTION
TO
A
'lOP"
(NOP"'240)
: I SAVE THE
CONTF.NTS
OF
THE
ERROR
VECTOR
IISET
FOR
TI~E:(lUT
nTlME
OUT
ON
XOR?
: I RESTORE THE
ERROR
VECTOR
; ,GO
TO
THE NEXT TEST
:
JCLE~R
THE
STACI<
AF'TER
A
TIME
OI)T
, I RgSTORE
THE
ERROR
VECTOR
: ;
LOOP
ON
THE
PRESENT TEST
OF'
CODe:
F'OR
THE
t8IT08,
!iSIliR
2,
XOR
TESTERU'"
IISWR, STSTNM
'OVER
SF.RFLG
3$
SERIolAX,SERF'loG
3S
.BIT09,~SWR
48
SLpERR,
SLPADR
SOVER
SERF'LG
STINES
U
'SITl1,IlSWR
IS
SPASS
1$
SICHT
STIMES,
SICNT
SOVER
'"stCNT
SMXCNT,
STIMES
STSTNM
CSP)'$LPADR
[51'),
SLpERR
IESCAPE
I1,URMAX
nSTNM,
~DISPLAY
$LPADR,
(SP)
I ,LOOP
ON
SPEC.
TEST?
"
SR
IF
NO
; ION
THF.
RIGHT
TEST?
:,RR
IF
YES
: I HAS
AN
ERROR
OCCURRED?
::BR
IF'
NO
SWR<710>
: I MAX.
ERRORS
FOR
THIS
TEST OCCURRED?
;ISR
IF'
NO
;
,LOOP
ON
ERROR?
;;BR
IF
NO
; I SET LOOP ADDRESS
TO
LAST
SCOPE
II
IERO
THE
ERROR
F'LAG
: I CLEAR THE
NUMBER
OF'
ITERATIONS
TO
MAKE
:
IESCAPE
TO
THE NEXT TEST
: I
INHIBIT
1
TERATlONS?
IISR
IF
YES
:,
IF'
FIRST
PASS
OF'
PROGRAM
: I
INHIBIT
ITERATIONS
; s INCREMENT
ITERATION
COUNT
n
CHECK
THE
NUMBER
OF
ITERATIONS
MADE
: I
BR
IF'
MORE
ITERATION
REQUIRED
:IREINITIALIZE
THE
ITERATION
COUNTER
;
ISET
NUMBER
OF'
ITERATIONS
TO
DO
; I
COUNT
TEST
NUMBERS
;
,SAVE
SCOPE
LOOP
ADDRESS
If
SAVE
ERROR
LOOP
ADDRESS
S
,CLEAR
THE ESCAPE
FROM
ERROR
ADDRESS
n ONLY ALLOw
ONEC
1)
ERROR
ON
NEXT TEST
: I
DISPLAY
TEST
NUMBER
; ,FUDGE RETURN ADDRESS
"FIXES
PS
;IM~X.
NUMBER
OF
IT£RATIONS
I
'***********************************************************************
.SBTTL
ERROR
HANDLER ROUTINE
;*511115-1
,*5W13-1
s*SWll".'
HALT
ON
EPROR
INHIBIT
ERIIOR TYPEOUTS
BELL
ON
ERROI\
SEQ
0042
SEQ
0043
MAl!lOEC-l
1
-OZRKJ-O
M~CYlt
27(1096)
e4-0CT-76
Il1e8
PAGE
11
DZRKJO.Pll
la-AUG-711
14.49
ERROR
HANDLER ROUTINE
SEQ
01'144
1614
,.S\II99-1
t.OOP
ON
ERROR
1615
,.81112-1
CYCLE
ON
ERROR
TO
PREVIOUS
'SCOPE'
1616
,
.GO
TO
IERRTYP
ON
ERROR
1617
16,8
096194
194497
IERROR.
CKSWR
'CHECK
FOR
SOFTWARE SWITCH ENTRY REQUEST
1619
996106
105237
091193
7$1
INCB
SERFLG
,SET
THE
ERROR
FLAG
1629
906112
91'11775 8EQ
7S
'DON'T
t.ET THE
FUG
GO
TO
ZERO
1621
1'196114
IH
3777
99111112
173021il
MOV
STSTNM,
(lDISPLAY
IDISPl.AY
TEST
NUMBER
AND
ERROR
ft.AG
1622
006122
995217
9911
12
181
INC
SERTTL ,COUNT THE
HUMBER
or
ERROPS
1623
O06126
911637
001116
MOV
CSP),SERRPC
,GET
ADDRESS
OF
ERROR
INSTRUCTION
1624
006132
162737
090902
"01116
SUB
fl,
IERRPC
1625
096140
117737 172752
091tl4
MOVS
tllSERPPC,
UTEMS
,
STRIP
AND
SAVE
THE
ERROR
ITEM
CODE
1626
096146
O32777
92"0""
172764
BIT
ISwt),tIISWR
,SKIP
TYPEOUT
rr
SET
1627
096154
01'1101114
'8HE
2.
,SKIP
TYPEOUTS
1628
096156
094737
91'16244 JSR
PC,tIIUERRTYP
,GO
TO
USER
ERROR
ROUTINE
1629
"96162
11'1440' 1'101213 TYPE
"CRLF
163"
"o6166
995777
172146
2S1 TST
IlSWR
, HALT
ON
ERROR
1631
"96172
11'1"002
BPI..
3S
ISKIP
IF
CONTINUE
1632
0"6174
"01'11'19"
HALT
,HALT
ON
ERPOR
I
16]3
006176
11'144"7
CKSWR
,
CHECK
FOR
SOFTWARE
SWITCH ENTRY REQUEST
1614
09621'19 1'132777
Iille000
172732
3$1
BIT
,SW12,f!lSWR
,Sw
12
SF.T?
1635
0"6296
09141112
BEQ
.+6
INO,
BRANCH
1636
906210
913716
091106
MOV
ILPAoR,
CSP)
,ADJUST
RETURN ADRES
FOR
Sitl12
1637
906214
032777
1'101099
172716
BIT
.SW09,f!lSWR
,LOOP
ON
ERROR
SWITCH SET?
1638
096222
0'H4A2
BEQ
4$
'~R
IF
NO
1619
096224
91]716
901110
MOV
.LPERR,
CSP) ,FUDGE
RF-TURN
FOR
LOOPING
1649
1'196230
905737
001219
4$1
TST $ESCAPE I CHECK
FOR
AN
ESCAPE ADDRESS
1641
1'196234
901402
BEQ
5.
,BR
IF
NONE
1642
906236
913716
091210
NOV
'ESCAPE,
CSP) ,FUDGF.
RETURN
ADDRESS
FOR
ESCAPE
1643
006242
800902
581
PTl
,RETUIlN
1644
1645
.SBTTL
ERROR
MESSAGE TYPEOUT ROUTINE
1646
1647
, ,
.....
_
...................................
--_.-.-
...
__
.-
._--
....
1648
1-THIS
ROUTIN!
USES
THE.
-ITEM
CONTROL
BYTE"
($ITEMB)
TO
nETERMINE WIIICH
1649
,.ERROR
IS
TO
BE REPORTED.
IT
THEN
08TAINS,
FROM
THE
"ERROR
TABLF"
(SERRTR),
1650
,*,ND
REPORTS THE APPROPRIATE INf"ORI4ATION CONCERNING THE ERROR.
1651
1652
996244
SERRTYPI
1653
996244
104491
091213
TyPE , SCRLF
:,
"CARRIAGE
RETURN" "
"LINE
FEED"
1654
096250
019046
~OV
RA,-CSP)
:,SAVE
R9
1655
096252 095909
CLR
R9
1
:PICKUP
THE
ITEM
INDF.X
1656
096254
153799
1il911
14
8ISB
f!lUITEM8,R0
1657
996269
111011'194
BNE
IS
:,
IF
ITEM
NUIIBER
IS
ZERO,
JUST
1658
,
,'I'YPE
THE
PC
OF
THE
FRROR
1659
006262
1"3746
901116
MOV
SERRPC, -
(SP)
1
:SAVE
SERRPC
FOR
TYPEOUT
1669
: 'ERROR ADDRESS
1661
906266
194492
TYPOC
: ,GO
TYPE--OCTAL
ASCIHALL
DIGITS)
1662
006271'1
909426
IIR
6.
"GET
OUT
1663
996272
005309
1$1
DEC
R0 : : ADJUST THE
INDEX
SO
THAT
IT
WILL
1664
006274
906109
ASL
R0
"
WORI<
FOR
THE
ERROR
TABLE
1665
096276
006)09
ASL
R0
1666
00631'19 1'196390 ASL
R9
1667
096392
06279~
1'101272
ADD
UERRTII,R0
:,
FORM
TABLE POINTER
1668
096306
A12037
096316
"'OV
(R9)+,28
:
1PICKUP
"ERROR MESSAGE" POINTER
1669
096312
1il0141'14
IIEQ
l8
1,SKIP
TYPEOUT
IF
NO
POINTF.R
NAINoEC-ll-DZRI(J-o
ruCru
27(1006)
04-0CT-76
13198
PAGE
12
oZRKJo.Pll
10-AUG-76
14.48
EPROR
MESSAGE
TYPEOUT ROUTINE
SEQ
"'11145
1670
996314
194401
TYPF.
: I TYPE THE "ERROR MY-SSAGE"
1671
9116316
909000
21:
.1II0Ro 9
:,
"ERROR
T>!ESS~Gf:-
POINTER
GOES
HEPE
1672
006320
104491
001213
TYPE
,SCRLf'
1'"CAPIlIAGE
Rf:TURN" ,
"LINE
FEED"
1673
906124
0120)7
1106334 3S1
MOV
(R9)+,4$
"PICKUP
"DATA
HEADER" POINTER
1674
096330
00t404
BEO
5$
;
,SKIP
TYPEOUT
If'
0
1675
11116332
104401
TYPE ,
,TYPE
THE
"DATA
HEADER"
1676
9116334
11111111100
4*'
.wORD 0
:,
"DATA
HEADER"
POINTER
GOES
HERE
1677
906336
t04491
01H213
TYPE , SCRLF
l'
·CARRIAGE
RETURN" ,
"LINE
rEED"
1678
006342
011000
5
..
MOV
(R9)'RIil
"PICKUP
"DATA
TABLE"
POINTER
1679
0"6344
901904
BNE
,.
"GO
TYPE
THE
oUA
1680
006346
912600
6$1
MaV
(SP)+,R9
: ,PESTORE R0
16U
006350
104491
0012t3
TYPE
,SCRLF
"
-CARRIAGE
RETURN" ,
"LINE
FEED"
1682
906354
000207
RTS
PC
: ,RETURN
1683
9116356
7$1
1684
006156
01
)046
MOV
III
C
R9)
+,
- C
SP)
,ISAVE
II(R9)+
FOR
TYPEOUT
1685
1106169 1114492 TYPOC J ,GO
TYPE--OCTAL
ASCIUALL
DIGITS)
16116
906362
9957111 TST
(R9)
illS
THERE
ANOTHER
NUMBER?
1681
906364
001770
BEQ
U
"BR
IF
NO
1688
906366
tl'l4401
906374
TYPE
,91
,:
TYPE
TWO
(2)
SPACES
1699
906372
900771
BR
7S
,
,l.OOP
1690
006374
1120040
00'"
U,
.ASCIZ
I
"TWO(2)
SPACES
1691
006400
.EVEN
1692
1693
.S8TTL
TTY JNPUT ROUTINE
1694
1695
, ,
••••••••••••••••••••••••••••••••••••••••
-
••••••••
-
•••
-
•••••
* •• -
1696
.E"ABL
LSB
1697
1698
"
..................•.....................................
_
..
-
...
1699
,*sorTWARE
SWITCH REGISTER CHANGE
ROUTI.,r..
1799
I.ROUTINE
IS
ENTERED
FROM
THE TRAP HANDLER,
AND
IIILL
1791
I.SERVICE
THE TEST
FOR
CHANGE
I'f
SOFTW~RE
SWITCH REGISTER TRAP
CALL
1792
,.IIHEN
OPERATING
IN
TTY
FLAG MODE.
1703
006400
022737
00111176
091140
.CKSWR.
CMP
UIIREG,SIIR
,JIS
THE SOFT-SWR SELECTED?
1794
9116406
001074
8NE
15S
" BRANCH
If"
NO
1795
006410
195777
172510
T8TB
.nltS 11CHAR THERE?
1706
906414
1000'1
8PL
15.
nIF
NO,
DON'T
NAIT
AROUND
1797
096416
117746 172524
MOV8
"TK8,-CSP)
uSAVE
THE
CHAR
1709
906422
041716
177690
BIC
'·CI77,CSP)
"STRIP-OFF
THE
ASCII
1709
9"6426
022726
890097
CMP
17,
CSPH
"
IS
IT
A
CONTFIOL
G?
1710
006432
1'1111062
SNE
15'
,
,NO,
RETURN
TO
USER
1711
006414
123727
91111134
0099111
CMPB
UUT08,11
"J.RE
WE
RUNNING
IN
AUTO-MODE?
1712
00U42
891456
IItQ
15S
I,BRANCH
IF
YES
1713
1714
886444
104401
907125
TYPE
"CffTL~
UECRD
THE CONTROL-G
C-G)
1715
006458
184491
8071]2
SGUIIRt
TYPE
,'MSIIR
, , TYPE CURRENT CONTENTS
1716
986454
813746
088176
MOV
SWREG, -
(SP)
"SAVE
SWREG
rOR
TYPEOUT
1717
88646"
104402
TYPOC
"GO
TYPE--OCTAl.
ASCII
(ALL
DIGITS)
1718
896462
194491
907143
TYPE
"MNEII
, I
PROMPT
rOR
NEW
SflR
1719
986466
1118511146
1981 CLR
-(SP)
"CLEAR
COUNTER
1720
006470
005946
CLR
-UP)
J
,THE
NEW
SWR
1721
006472
195777 172446
7$'
TSf!
UTICS
,iCHAR
THERE?
1722
91116476
10111]75
8PL
7t
,J
Ir
NOT
TRY
AGAIN
1723
1724
111065111"
117746
172442
MOV8
IUKB,-CSP)
"
PICK
UP
CHAR
1725
0111651J4
842716
17760111
fllC
'-c177'(SP)
,,~u!:
IT
'-BIT
ASCII
MAINDEC-l1-DZRKJ-D
MACYll
27(006)
04-0CT
..
76
13
:98
PAGE
33
DZRKJD.pll
3e·AUG~76
14148
TTY
INPUT ROUTINE
SEQ
0046
1726
1727
1728
1729
006510
821627
81tl0025
9S1
CMp
(SP),t25
;
IS
IT
A CONTROL-U?
1730
086514
8111805
BNE
Us
;
BRA>JCH
If'
NOT
1731
006516
104481
007120
T'fPE ,SCNTLU
,YES,
ECHO
CONTROL-U
(-U)
1732
006522
862786
0811006
20$:
ADD
'6,
SP
; IGNORE PREVIOUS INPUT
1733
096526
008757
BR
19$
ILET'S
TRY
IT
AGAIN
1734
1735
1736
096530
021627
800815
10$1
CMp
(SP),115
:
,IS
IT
A
<CR>?
1737
086534
001022
BNE
16$
I;
BRANCH
IF
NO
1738
086536
005766 000004
TqT
4(SP)
;
,YES,
IS
IT
THE
FIRST
CHAR?
1739
006542
991403
BEQ
1U
: :
BRANCH
IF
YES
1740
006544
016677
808002
172366
MOV
2(SP),(\ISWR
: :SAVE
NEW
SWR
1741
006552
0627116
000006
118:
ADD
'6,SP
: : CLEAR
liP
STACK
1742
006556
104401
91:11213
1481
TYPE
,SCRLF
: I
ECHO
<CR>
AND
<LF>
1743
0116562
123727
001135
090001
CMPB
SINTlIG,U
:
,RE-ENABLE
TTY
KBO
INTERRUPTS?
1744
006579
001001
BNE
15S
: :
BRANCH
IF
NOT
1745
006572
012777
000100
172344
MOV
1100,(\I$TKS
I I RE-ENABLE
TTY
KBD
INTERRUPTS
1746
006000
000002
15S1
RTJ
IIRETURN
1147
006602
004737
007324
16$
:
JSR
PC,STYPEC
: :ECHO
CHAR
1148
006696
921627
900060
CMP
(SP)
,.60
I rCHAR <
0?
t
749
006612
!-""242111
BLT
U!I
; !BRANCH
If
YES
17~0
006614
021627
0001tl67
CMp
(SP),
.67
: ICHAR >
7?
1751
006020
003015
RGT
18S
: IBRANCH
IF
YES
1752
006622
A42726
000060
BIC
.&A,
(51')+
:
ISTRIP-OFF
ASCII
1753
1'106626
005766
o
1'1
0 Iill'l 2
T5T
2(SP)
: I
IS
IHIS
THE
FIRST
CHAR
1754
006632
00t
403
BEQ
17S
: J
BRANCH
IF
YES
1755
0066)4
006316
ASL
(SP)
:
INO.
SHIFT
PRESENT
1756
1'106636 01'16316 ASL
(SP)
n
CHAR
OVER
TO
MAKE
1757
1'106640
006316
ASL
(SP)
:r
ROOM
FOR
NEIoI
ONE.
1758
1'106642 01'15266 0"'001'12
17S1
INC
2(SP)
:
,KEEP
COUNT
OF
CHAR
1759
01'16646 1'156616
177776
815
-2(Sp),(SP)
: I SET
1111
NEW
CHAR
1760
006652
00A707
BR
7.
:IGET
THE
NEXT
ONE
1761
996654
104491
001212
18$:
TYPE
,.QUES
: I TYPE
?<CR><LF>
1762
006660
0A072A
SR
21'1$
IISIMULUE
CONTROL-U
1763
.DSABL LSB
1764
1765
1766
: I
***************************************************************
1767
,*THIS
ROUTlNf, WILL HIPUT A
SINGI,E
CHAPACTER
FROM
THE TTY
1768
:*CALL:
1769
:*
ROCHR
: I INPUT A
SINGLE
CHARACTER
FROM
THE
TTY
1770
:*
RETURN
HERE
: : CHARACTER
IS
ON
THE
STACK
1771
1*
:
,WITH
PARITY
BIT
STRIPPED
OFF
t
772
1773
1774
006&62
011646
eRDClilH
MOV
(Sp),-(Sp)
;
:PUSH
DOIolN
THE
PC
1715
006664
01666&
1'100094 01tl0902
MOV
4(SP),2(Sp)
I,SAVE
THE
PS
1776
0A6672
105777
172246
lS:
TSTB
UTKS
::WAIT
FOR
1777
006670
11'10375 BPL
1$
"A
CHARACTER
1778
0067A0
t
17766
172242
0001'104
MDVB
(IISTKB,4(SP)
: ,READ THE TTY
1779
006706
",4,.,66
177600
001'1004
BIC
.-C<I77>,4(Sp)
: : GET
RID
OF
JUNK
IF
ANY
1780
006714
026627
0AI'I004 0001'123
CMP
4(SP),
'23
: I
IS
IT
A CONTROL-S?
1781
006722
001013
BNE
35
I:
BRANCH
IF
NO
MAINDEC-l1-0ZRKJ-n
MACYll
27(1006)
04
1o
OCT-76
13:1'18
PAGE
34
DZRKJD.pll
30-AUG-7&
14:
48
TTY INPUT ROUTINE SEQ
0047
1782
01'16724
105777 172214
2$:
TSTB
InKS
: I
WAI
T
FOR
A CHARACTER
1783
096H0
101'1375
BPI.,
2S
:ILOOP
UNTIL
ITS
THERE
1784
006732
117746
172211'1
MOVB
UTKB,-(Sp)
: I
GET
CHARACTER
1795
00673&
1'142716 177601'1
RIC
.-CI77,
(SP)
: :
MAKE
IT
7-BIT
ASCII
1786
1'106742
022627
01'101'121
CMP
(SP)+,'21
::IS
IT
A CONTROL-Q?
1787
1'106746
001366
BNE
2$
: I
IF
NOT
DISCARD
IT
1788
1tl06750
A00750
BR
1$
I
IYES,
RESUME
1789
1'106752
A26627
1'1001'104
000140
3S1
CMp
4(SP),1141'1
: I
IS
IT
UPPER CASE?
1790
1'106760
0A2407
BLT 4S : I
BRANCH
IF
YES
1791
1'106762
026627
000094 000175
CMp
4(SP),1175
IllS
IT
A
SPECIAL
CHAR?
1792
00677A
0"'3f1103
BGT
4S
II
BRANCH
IF
YES
1793
006772
042766
001'1040
000004
BIC
J40,4(SP)
::MAKE
IT
UPPER CASE
1794
90701'1f11
01'11'11'11'12
4&:
RTI
II
GO
BACK
TO
tlSER
1795
: I
**.****.*****
•••
***
••
**
•••
*****
•••
***
•••••
*.*******.*.*********
1796
I*THIS
ROUTINE WILL INPUT A
STRING
FROM
THE
TTY
1797
I*CALL:
1798
1*
ROLIN
I:
INPUT
A
STIlING
FROM
THE
TTY
1799
1*
IIETURN
HERE
I:
ADDRESS
or
FIRST
CHARACTER WILL
BE
ON
THE
STACK
18f11A
1*
I I TERMINATOR WILL
BE
A BYTE
OF
UL
0'
S
1801
1902
007002
01034&
SRDLINI
MOV
R3,-(SP)
:,SAVE
R3
18k'll
097004
f1112703 007111'1
1$1
MOV
UTTYIN,R3
I I GET ADDRESS
1904
007f1110
022703
00712'"
2S1
CMP
UTTYIN+9.,
R3
IIBUFFER
FULL?
1805
007014
101405
BLOS 4S :
:BR
IF
YES
1806
f11fII7016
lf114410
RDCHR
I I
GO
READ
ONE
CHARACTER
FROM
THE
TTY
1907
0"'7020
112613
MOVB
(SP)+,
(R3l
:
,GET
CHARACTER
1809
007022
12271
3
000177
lUI
CMpB
tt77,(R3)
I,IS
IT
A
RUSOUT
1899
007026
fIIfII1A03
BNE
3$
:,
SKIP
IF
NOT
1810
907939
lf114491
001212
4$1
TYPE
,.QUES
:
,TYPE
A'?'
1811
007034
990763
BR
11 : J CLEAR THE BUFFER
AND
LOOP
1812
9f117f1136
111337
097106
lSI
MOVB
(R3),9.
IIECHO
THE CHARACTER
1911
007942
104401
007106
TYPE ,9.
1814
007f1146
122723
000015
CMPB
U5,
(R3)+
, ICHECK
rOR
RETURN
1815
0071'152
001356
BNE
2.
,
,LOOP
IF
NOT
RETURN
1816
1'197054
195063 177777
CLRB
-teR3)
nCLEAR
RETURN
(THE
15)
18t
7
097060
104401
01'11214 TYPE
,eLF
" TYPE A
LINE
FEED
1818
097064
012603
MOV
(SP)+,R3
:rRESTORE
R3
18t9
097066
011646
MOV
(SP),-(sP)
I I ADJUST
THE
STACK
AND
PUT ADDRESS
OF
THE
1820
997970
016666 000004
000f1102
MOV
4(SP),2(SP)
II
FIRST
ASCII
CHARACTER
ON
IT
1821
1'197076
012766 097110
000904
MOV
UTTYIN,4(SP)
1822
007104
0f110002
RTI
I ,RETURN
1823
1'11'17106
000
981
.BYTE
0 , I STORAGE FOR
ASCII
CHAR.
TO
TYPE
1824 01'17197
091'1
.BYTE
0 J ,TERMINATOR
1825
997110
0f11001
1'1
UTYINI
.BLKB
8.
"RESERVE
8 BYTES
FOR
TTY
INPUT
1826
1'107120
o52536
01'15015
900
$CNTLUr
ASCIZ
I-U/<15><12>
: rCONTROL au·
1827
007125
136
006507
009912
SCNTLGr
.ASCIZ
I-G/<15><12>
: rCONTROL
"G"
1828
007132
005015 053523
020122
SMSWRI
ASCrz
<15><12>/SIIR
1
1829
007149
021'1975
090
1830
1'11'17143
049
04704f11
053505
'MNEWI .ASCXZ
NEW
I
1811
01'17150 03644f11 0f110040
1832
1833
.SBTTL
TYPE ROUTINE
1834
1835
, ,
***************************.*************.****
••
*
••
*****.******
1836
I*ROUTINE
TO
TYPE
ASCll
MESSAGE.
MF.SSAGE
MUST
TERMINATE WITH A 0
BYTE.
1837
,*THE
ROUTINE
IfILL
INSERT
A
NUMBER
OF
NULL
CHARACTERS AFTEIl A
LINE
FEED.
MUNDEC-l1-0ZRKJ-0
MACYt 1 27(11'11'16)
04-0CT-76
13108
PAGE
]5
DZRKJD,Pll
10-AUG-76
t4l48
TYPE
ROUTINE
1838
,*NOTEll
'NULL
CONTUNS
THE CHARACTER
TO
BE
USED
AS
THE
'ILLER
CHARACTER,
19)9
:*NOTE21
"ILLS
CONUINS
THE NUM6ER
or
fILLER
CHARACTERS
REQUIRED,
11'140
:*NOTE31
HILLC
CONTAINS
THE CHARACTER
TO
'ILL
AFTER,
1841
,*
1942
:*CALLI
11'141
,*1)
USING
A TRAP
II'lSTRUCTION
1844
,*
TYPE
,"'ESADR
, ,MESADR
IS
FIRST
ADDRESS
or
AN
ASCIZ
STRING
1845
,*OR
1946
1*
TYPE
1947
:*
MESAOR
1848
:*
1849
195O
007154
105737
1'11'11157
STYPP:!
TST8
STP'LG
:,
IS
THERE A
TERMINAL?
1951
01'17160 1"'01'102 BPI" U
I,SR
If
YES
1852
1'11'17162
ettl00el'l
HALT
"HALT
HERE
If'
NO
TERMINAL
1853
1'11'17164
1'11'11'1407
BR
38 ,
,LEAVE
1854
007166
911'1046
1$1
MOV
R0,-(SP)
nSAVE
R0
1955
1'1071'"
1'11761'10
1'101'11'11'12
MOV
f!i2eSP)
,Re
:,
GET ADDRESS
or
ASCIZ
STRII'lG
1856
1'11'17174
112046
2'1
"'OVB
(RI'I)+,-CSP)
" PUSH CHARACTER
TO
AE
TYPED
ONTO
STACK
1957
1'11'17176
01'111'105
BNE
4.
: ,
BR
IF
IT
ISN'T
THE TERMINATOR
1858
1'11'1721'10
1'11'15726
TST
esp)+
:,
IF
TERMINATOR
POP
IT
OFF THE STACK
1859
Ih!7202
1'112600
61'1$1
MOV
(SP)+,Re
,
,RESTORE
R0
1861'1
1'11'1721'14
1'16:>.716
1'11'11'101'12
3$1
ADO
'2.
esP)
:
,ADJUST
RETURN
PC
1861
1'107210
1'10001'12
RT!
:
:RETURN
1862
01'17212
122716
1'101'1011
4$1
CMPS
'HT,(SP)
:
,8RANCH
IF
<HT>
1863
01'17216 I'IIH431'1
BEQ
8,
1864
1'11'17220
122716
1'11'11'1201'1
CMP8
tCRLf'.
(SP)
: 'BRANCH
IF
NOT
<CRLF>
1865
1'11'17224
1'10101'16
RillE 5S
1866
1'11'17226
1'11'15726
TST
(SP).
"POP
<CR><LF>
EQUIV
1967
007230
11'14401 TYPE :
,TYPE
A
CR
AND
Lr
1868
1'107232
1'11'11213
SCRLF
1869
1'11'17234
1051'137
007370
CLRS SCHARCNT
I'
CLEAR CHARACTER COUNT
1870
007240
1'11'10755
BR
2$
I J GET NEXT CHARACTER
1871
1'107242 1'104737
007324
S$:
.lSI!
PC,STYPEC
::
GO
TYPE
THIS
CHARACTER
1872
007246
123726
01H156
68:
C/oIPB
SF'ILLC.
(lIP)+
I:
IS
IT
TIME
FOR
FILLER
CHARS.?
187)
1'107252
001350
BNE
2$
nIF
NO
GO
GET NEXT CHAR.
1874
1'107254
I'll
)746
1'11'11154
MOV
SNULL,-eSp)
I'
GET
OF
FILLER
CHARS.
NEEDED
1875
: :
AND
THE
NULL
CHAR,
1876
1'11'17260
105366
01i1ee01
711
DECB
1
(SP)
:,
DOES A
NULL
NEED
TO
BE TYPED?
lP77
007264
1'102771'1
BLT
6.
:,
BR
IF
NO--GO
POP THE
NULL
orF
OF
STACK
1878
1'107266 1'104737 1'107324 JSR
PC,nYPEC
:
,GO
TYPE A
NULL
1979
1'11'17272
1"'5317
01'17370
OECS
S::HARCNT :
,DO
NOT
COUNT
AS
A
COUNT
1980
1'107276
1'11'10771'1
SR
7$
r
,LOOP
1881
1882
:HDRIZONTAL
TAB PROCESSOR
1893
1894
007301'1 \
12716
001'1040
8$1
MOVS
t'
,
esp)
:
'REPLACE
TAB
wITH
SPACE
1895
1'10731'14
0"'4731
01'17324
95
:
JSR
PC,tTYPEC
I'
TYPE A SPACE
1886
01'173\0
132737
1'101'1007
007370
BITB
17,
SCHARCNT
:,
BRANCH
IF
NOT
AT
1887
01'17316 01'11372 8NE
9a
r ,TAB STOP
198A
007320
1'105726
TST
(SP).
J
,POP
SPACE OFF STACK
1889
1'11'17322
001'1724
BR
28 "
GET
NEXT
CH~
R ACTER
1890
007324
105777
171620
STYPECI
TSTB
Ii$TPS
J
,WAIT
UNTIL
PRINTER
IS
READY
1891
1'11'17330
100175
BPL
nYPEC
1992
1'11'17332
116677
001'101'12
111612
Mova
2(SP),f!iSTPB
I,LOAD
CHAR
TO
8E
TYPEO
INTO
DATA REG.
1893
007340
122166
001'1015
01'1001'12
CMPB
'CR,2(SP)
:,
IS
CHARAoCTER
A CAIIR
IAGE
IIF-TIIRN?
MAINDEC-tl-OZRKJ-D
MACY11
27(
1006)
04-0CT-76
1311'18 PAGE
36
DZRKJD.Pl
I 3;'J-It,UG-76
14148
TYPE
ROUTINE
11'94
11395
1996
\897
1998
1899
1911le
1901
191'12
1903
1904
1905
t
91'16
191117
191'18
191'19
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1929
1929
1930
1931
1912
1933
1914
1915
19]6
1937
19]8
19]9
1941'1
1941
1942
1943
1944
1945
1946
1947
1948
t949
1'107346
091350
1'107354
11107356
1'107364
1'107366
1'107370
"07372
",,,,7374
01117374
007376
00741'117
007402
007404
01'1741'16
1'107412
007416
007420
1'107422
1'107431'1
1'11'17432
1'107436
1'107442
007444
01'17451'1
007452
007454
007456
01'17461'1
01117462
1'11'17464
01'17466
1'107470
1'107472
01'17414
01'17476
007504
1'11'1'7510
007514
007516
1'107520
IH!7524
01'1101'13
11'151'137
000496
122166
1'101402
105227
01'11'100'"
01H12"'7
010046
010146
010246
010346
Bl1ll546
012746
016605
lelll004
005405
112766
1'1051'11'11'1
012703
112723
1'10501'12
11116001
161'1tA5
1'102402
01'15202
000174
061'111'15
1'105702
1'11'1101'12
105716
11'11'141'17
11'16316
10300)
116663
",52702
052702
111'1223
01'15721'1
e2elll27
01'12746
0!l7370
021'1201'1
0001'120
01'11'1055
1'107610
1'11'11'1040
1'11'10001
01'10061'1
01'101'141'1
0001'110
00001'12
1'100001
177777
BNE
CLIIS
8R
lSI
CMP8
B~Q
INC8
SCHARCNTI,WOIID
STYPEXI
RTS
IS
$CHII.PC~T
STYPEX
tLF,2eSP)
STYPEX
(PC)+
o
PC
:,
BRANCH
IF
NO
~
'YES~-CLEAR
CH.R!lCTER
COUNT
r
,EXIT
nIS
CHARACTER A
LINE
FEEO?
J r BRANCH
If'
YES
f f
COUNT
THE CHARACTER
, ,CHARACTER
COUNT
STORAGE
.SBTTL
CONVERT
BINARY
TO
DECIMAL
AND
TYPE
ROUTINE
I :
***************************************************************
,*THIS
ROUTINE
IS
USED
TO
CHANGE A
16-BIT
8INARY
NUMBER
TO
A
S-OIGIT
:*SIGNED
OF.CIMAL
(ASCII)
NUMBER
AND
TYPE
IT.
DEPENDING
ON
WHETHER
THE
:*NUMBER
IS
POSITIVE
OR
NEG,\TIVE
A SPACE
OR
A
MINUS
SIGN
WILL
BE TYPED
:*lIEFORE
THE
FIRST
DIGIT
OF
THE NUMBER.
LEADING
ZEROS
WILL
ALWAYS BE
:*REPLACED
WITH
SPACES.
,*CALL:
$TYPOS:
lSI
2S1
311
4$1
511
6tl
'*1
140V
NUM.
-(SP)
TYPOS
MOV
MOV
MOV
MOV
MOV
MOV
MOV
8PL
NEG
MOV8
CLR
MOV
MOV8
CLR
MOV
SUB
BLT
INC
BR
ADO
TST
8NE
TSTB
8MI
IISLB
BCC
MOVB
BIS
BIS
Move
TST
CMP
eLT
R0,-eSp)
Rl,-(SP)
R2.-(SP)
R3,-eSP)
R5,-(SP)
'2020e,-eSp)
20eSP),R5
It
R5
'-,
1(SP)
RI'I
UDBLK,R3
t'
,
(R3)+
R2
'DTBL(Re)
,Rl
Rt
,R5
U
R2
]I
Rl,R5
112
5S
esP)
7.
esP)
iii
1(SP),-lCR3l
'0,
1'12
.'
,
R2
R2,
(R3).
(Re)+
R0.ue
2.
: I PUT THE
BINARY
NUMBER
ON
THE STACK
,;
GO
TO
THE ROUTINE
: f PUSH Re
ON
STACK
IrPUSH
R!
ON
STACK
:
,PUSH
R2
ON
SUCK
" PUSH
1'13
ON
STACK
f I PUSH
RS
ON
SUCK
I
,SET
BLANK SWITCH
AND
SI
GN
: I GET THE
INPUT
NUMBER
f'
BR
IF
INPUT
IS
POSe
nMAKE
THE
BINARY
NUMBER
POSe
nMAKE
THE
ASCII
NUMBER
NEG.
:,
ZERO THE CONSTANTS
INDEX
"SETUP
THE OUTPUT
POINTER
::
SET THE
FIRST
CHARACTER
TO
A BLANK
I'
CLEAR THE
BCD
NUMBER
: I GET THE CONSTANT
II
FORM
THIS
BCD
DIGIT
"BR
IF
DONE
"
INCREASE
THE
BCD
DIGIT
BY 1
r ,
ADD
BACK
TH!
CONSTANT
,
,CHECK
IP'
BCD
DIGITae
,,'ALL
THROUGH
IF
0
:
,STILL
DOING
LEADING
0'S!
,
,BR
IP'
YES
f
,MSD7
"BR
IF
NO
"YES--SET
THE
SIGN
"MAKE
TH!
BCD
DIGIT
UCII
"MAKE
IT A SPACE
IF
NOT
ALREADY A
DIGIT
; I PUT
THIS
CHARACTER
IN
THE OUTPUT
BUFrER
J'
JUST
INCREMENTING
"CHECK
THE
TABLE
INDEX
"GO
DO
TH!
NEXT
DIGIT
SEQ
0048
SEQ
01'149
MAINDEC-U-DZRKJ-D
"IACYl1
27(1006)
04-0CT-76
13108
PAGE
37
DZRKJD.
Pll
30-AUG-76
1 U
48
CONVERT
RINARY
TO
DECIMAL UlD T'{PE FOUTINE
1950
1951
1952
195]
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
191'"
1971
1972
i9H
1974
1975
1976
1977
1978
1979
1981'1
19111
1982
t
983
19R4
1985
1986
1987
191!l8
1999
1990
1991
1992
19Q3
1994
1995
1996
1997
1999
1
~99
200'"
2001
2.102
2003
N04
2005
001526
007530
007532
007534
007536
007540
007546
001550
001552
007554
"'07556
001560
007562
007566
007574
I}07576
001600
007602
007604
007606
007610
1'107620
1007624
0076]2
91'17636
907642
007644
0a7652
907660
IHl7666
003002
010502
00"764
105726
100"~3
116663
105013
012605
012603
012602
012601
012600
104401
016666
012616
000002
023420
001750
0>!0144
000012
00"'004
017&46
116637
10637
062716
1'100406
112137
112737
111.717
910346
MAINDEC-l1-DZRKJ-D
DZRKJD.Pll
30-AUG-76
2006
0"'7670
010446
2007
"'07672
01"'546
2008
007674
113704
2099
097700
11'05404
201'"
097702
961704
2011
007706
110437
2012
007712
111704
2"'13
007716
0166(;15
2014
007722
O050"'3
2915
007724
00611}5
2916
907726
030404
2317
097730
0k'J61l'J5
2918
007732
006105
2019
l'J07734
0"'6105
2020
I}07736
1'110503
2921
007140
1'106103
2022
007742
105317
2023
l'J07746
100d16
2024
097759
l'J42703
2025
1<107754 1'101002
2026
0077S6
"'05704
2027
007760
001403
2028
097762
00521'14
2029
007764
052703
20N
007770
052703
2911
007714
110337
2032
01
1'1
>!
00
104401
2013
01l'J004
105337
2034
019010
1'103347
2015
010012
002402
2036
010014
005204
2017
010016
O00744
2018
9101}20
012605
2019
010022
012694
2940
010024
O12603
2041
010026
016666
2042
010034
012616
2043
010036
000002
2044
010040
000
2045
l'J10041
090
2046
I}10042
000
2047
010043
000
2048
010044
900000
2049
2050
2051
2052
20S3
2054
2055
2056
2057
2058
010046
810046
2059
0111050
016600
2060
010054
005140
2061
0111056
111000
177777
007619
000c,)02
01'10000
000001
010045
000082
00':!1i!01
000006
000005
MACY11
14:
48
0110045
"'0001'16
010044
019043
090012
010044
177779
000060
000040
910040
010040
O10042
000002
8011002
177776
09901'14
010043
019043
010045
010042
27
(1096)
900004
8$1
9$1
SOTSLI
SDBLKI
BGT
MOV
8R
TS'I'S
8PL
MOVB
CLR8
MOV
MO.
MOV
MOV
MOV
TYPE
IolDV
MOV
RT!
10000.
1000.
100.
h'.
.BLKW
8S
R5,R2
6S
(SP)+
'IS
-I
(SP),-2(1~3)
(I'll)
(SP)t,R5
(S!'}+,Rl
(SP)+,R2
(SPl+,Rl
(SPl+.R0
,SDSLK
2(SP).4(SP)
(SP)+,
(SP)
IIGO
TO
EX!T
,IGET
THE
LSD
nGO
CHANGE
TO
ASCII
, ,WAS
THE
LSD
THE
P'I
RST
IIBR
IF
NO
: I
YES--SET
THE
SIGN
FOR
I I SET
THE
TERMINATOR
I I POP STACK INTO R5
nPOP
STACK
INTO R3
II
POP STACK INTO
1'12
IIPOP
STACK INTO
I'll
I I POP
STACK
INTO R0
II
NOli
TYPE
THE
NUMBER
: I ADJUST THE STACK
: I
RETURN
TO
USER
NON-ZERO?
TYPING
.S8TTL
BINARY
TO
OCTAL
(ASCI!)
AND
TYPE
I
'***************************************************************
:*THIS
ROUTINE
IS
USED
TO
CHANGE
A
16-BTT
BINARY
NUMBER
TO
A
6-DIGIT
I*OCTAL
(ASCII)
NUMBER
AND
TYPE
IT.
:
*STYPOS---ENTER
HERE
TO
SETUP
SUPPRESS
ZEROS
ANO
NUMBER
OF
DIGITS
TO
TYPE
,*CALL:
MOV
NU"I,-(SP)
TYPOS
.BYTE
.BYTE
I ;
NUfoIBEIl
TO
BE
TYPED
" CALL
FOR
TYPEOUT
IIN=l
TO
6
FOR
NUMBER
OF
DIGITS
TO
TYPE
"M:l
OR
l'J
1,1
-TYPE
LEA01NG ZEROS
,
,0=SUPPRESS
LEADING ZEROS
:
*STYPON-·--ENTER
HERE
TO
TYPE
OUT
WITH
THE
SAME
PARA"'ETERS
AS
THE
LAST
I *STYPOS
I)R
STYPOC
I*CALLI
;*
MOV
NUM,-(SP)
TYPON
: I
NUMBER
TO
BE
TYPED
I
;CALL
FOR
TYPEOUT
I*STYPOC·--F.NTER
HERE
FOR
TYPEOUT
OF
A
16
BIT
NUMBER
,*CALLI
1*
MOV
NUM,-(SP)
IINUMBER
TO
BE
TYPED
,*
TYPOC ; ; CALL
FOR
TYPEOUT
$TYPOS:
MOV
MOVe
MoVe
ADD
BR
$
TYPOC
I Move
"'OVB
STYPON I
MOV8
.,OV
II(SP),-(SP)
1(SP),$0FILL·
(SP)+,
$OMOOE+l
'2,
(SP)
$TYPON
tl,S0FILL
.6,$OMOOE+l
IS,SOCNT
R3,-(SP)
94-0CT-76
13198
PAGE
38
BINARY
TO
OCTAL
(ASCII)
AOID
TYPE
MOV
R4,
-(SP)
MOV
R5,-(SP)
MOVe
$OMOOE+1. R4
NEG
R4
ADD
'6,R4
MOVB
R4,
SOMODE
MOVS
S3FILL,
R4
MOV
12(SP),R5
CLR
R3
lSI
ROL
R5
BP 3S
2$
I
1'101.
1'15
ROL
R5
ROL
R5
MOV
R5,R3
)SI
ROL
R3
OEca
SOMODE
8PL
7.
BIC
iI177170,R3
BNE
4$
TST R4
BEQ
59
4$1
INC R4
BIS
.'0,
Rl
SSt
SIS
t'
,
R3
MOVS
Rl,9S
TYPE
,8.
7$1
DECB
.DCNT
IlGT
2,
8LT
6.
INC
1'14
BR
2S
6$
I
MOV
(Sp)+,R5
MOV
(SP)+,R4
MOV
(SPl+,Rl
MOV
2(SP),4(SP)
MOV
(SP)+,
(SP)
RTI
8S!
.BYTE
0
.BYTE
0
SOCNT:
.8YTE
0
I0P'ILLI
.BYTE
0
.OMOOEI
.WORD
°
.S8TTL
TRAP
DECODER
I,PICJ(UP
THE
MODE
I:
LOAD
ZERO
FILL
SWITCH
I:
NU"'BER
OF
DIGITS
TO
TYPE
:
,ADJUST
RETURN
ADDRESS
: I SET THE
ZERO
FILL
SWITCH
,:SET
FOR
SIX(6)
DIGITS
:,
SET
THE
ITERATION
~OUN'!'
I:SAVE
113
IISAVE
1'14
:
,SAVE
RS
;;GET
THE
NUMBER
OF
DIGITS
TO
TYPE
: ISUBTRACT
IT
FOR
MAX.
ULOWED
:
,SAVE
IT
FOR
USE
:
;GET
THE
ZERO
FILL
SWITCH
I
:PICKUP
THE
INPUT
NUMBER
::
CLEAR
THE
OUTPUT
WORD
::ROTATE
MSB
INTO
"C"
: :GO
DO
MS8
:;
FORM
THIS
DIGIT
:;GET
LSB
OF
THIS
DIGIT
:
ITYPE
THIS
DIGIT?
IIBR
IF
NO
I I
GET
RID
OF
JUNK
:
ITEST
rOR
'"
I'
SUPPRESS
THIS
01
: IBR
IF
YES
I
JDON'T
SIlPPRESS
ANY140RE
0'S
IIMAK!:
THIS
DIGIT
ASCII
::
MAKE
ASCII
IF
NOT
,.LRE,.OY
nSAVE
FOR TYPING
I'
GO
TYPE
THIS
DIGIT
I,COUNT
BY
1
, J SR
IF
MORE
TO
DO
J IBR
IF
DONE
:,
INSURE LAST
DIGIT
ISN"T
A
BLANK
:,
GO
DO
THE
LAST
DIGIT
I'
RESTORE
RS
IIRESTORE
R4
"RESTORE
R3
II
SET
THE
STACK
FOR
RETURNING
I ,RETURN
:ISTORAGE
FOR
ASCII
DIGIT
: ITERMINATOR
rOR
TYPE ROUTINE
: J
OCTAL
DIGIT
COUNTER
:IZERO
FILL
SWITCH
I;NUMBER OF
DIGITS
TO
TYPE
"***************************************************************
,
*THIS
ROUTINE WILL PICKUP
THE
LOWER
BYTE
or
THE
"TR,.P"
INSTRUCTION
:
*AND
USE
IT
TO
INDEX
THROUGH
THE TRAP TABLE
rOR
THE
STARTING ADDRESS
,*OF
THE DESIRED ROUTINE.
THEN
USING
THE
ADDRESS OBTAINED
IT
WILL
,*GO
TO
THAT
ROUTINE.
STIIAP:
MOV
R0,-(SP)
nSAVE
R0
MOV
2(SP)'R0
J I GET TR,.P ,.DORESS
TST
-(R0)
"BACKUP
BY
2
MOVB
(R0),R0
: I
GET
RIGHT BYTE
or
TRAP
SEQ
0050
SEQ
0051
~UNDEC-ll·DZRKJ-D
MACYU
27(006)
04-DCT-76
13108
PAGE
39
DZRl(JD.
Ptl
10-AUG-76
14148
TRAP
DECODER
SEQ
0052
2062
2061
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2091
2094
2095
2096
2097
2098
2099
2100
2101
2102
2101
2104
2105
2106
2107
2108
2U9
21
to
2111
2112
2ltl
2lt4
2115
2116
21t7
010060
010062
010066
010070
010072
010100
010102
010104
010106
010110
010112
010114
010116
010120
010122
0t0124
010126
010130
'U0132
010134
010142
010150
010152
010154
010156
010160
010162
010164
011'170
011H
74
0t0202
1'1021'4
006300
016000
000200
011646
016666
000002
010070
007154
007644
007620
007660
007374
006450
006400
006662
007002
005506
005524
005464
012737
012737
010046
010146
010246
010346
010446
11110546
017746
01111637
012737
000000
00111776
I4AINDEC-ll-0IRKJ-D
DZRKJD.Pll
10-AUC-76
2119
2119
2120
B1020eo
Bli7H
2121
010214
113706
2122
910220
005037
2123
010224
005237
2124
011210
0,,1375
2125
010232
012677
2126
010216
012605
2127
010240
1'112604
2128
010242
(1260)
2129
01,,244
1'12602
213111
010246
012601
21lt
010250
IH26"0
2112
010252
1112717
2133
1'110260
012737
2134
010266
104401
2115
010270
191010&
21)6
010272
012716
2137
010274
002106
2118
010276 000002
2119
010300 000000
2140
010102 000776
2141
010304 000000
2142
010306
0050t5
2143
010114
000122
2144
2145
2146
2147
2148
2149
2150
1'10316
044524
2151
0111324 052t:i15
2152
010332
045522
2151
fIIl,,140
11143505
2154
01f11346
000122
2155
2156
010150
042522
2157
010356·
"!HI05
2t58
010364
041440
2159
010]72
042105
216"
2161
010375
122
2162
"10402
051105
2161
2164
018410
045522
2165
018416
nU22
2166
010424
020116
2167
01111412
"47111
2168
010440
042101
2169
010446
020131
21'70 0114!14
00"
21'7t
2172
010455
102
2173
010462 044516
010102
000004
010300
000340
170750
010304
010206
MACYl 1
14149
!hilt';""
0Ul04
010304
,,11Jl14
t
70702
010134
000340
047520
042515
047440
030461
051511
044507
047040
042514
"00
"41511
047522
051503
851117
"5112'7
8201111'7
847440
044502
051525
020124
000002
0\!10024
000026
000024
27(1006)
10100024
000024
000026
042527
047440
020116
051048
042524
052121
0!12117
051101
020123
0"0122
042440
84'7455
052111
042522
046116
051524
044440
044504
ASL
MOV
RTS
R0
nRPAD(R0l,
R0
R0
"POSITION
FOR
INDEXING
;
IINDEX
TO
TA8LE
"
GO
TO
ROUTINE
;,THIS
IS
USE
TO
HANDLE
THE
"GETPRY"
MACRO
nPAP21
MOV
MOV
RTI
(SP),-(SP)
4(
SP),
2
(SP)
.SBTTL
TRap TABLE
, ,MOVE
THE
PC
DOWN
II
MOVE
THE
PSW
DOWN
: ,RESTORE
THE
PSW
:*THtS
TAfILE
CONTUNS
THE
STARTING
ADDRESSES
OF
THE
POUTINES CALLED
,*BY
THE
"TRAP"
INSTRUCTION.
,
I
ITRPADI
ROUTINE
STRAP2
"CALL-TYPE
TTY TYPEOUT ROUTINE
.WORD
$TYPE
STYPOC
STYPOII
STYPON
nYPDS
,
,CALL-TYPOC
,
,CALL-TYPOS
" CALL-TYPON
,
,CALL-TYPOS
TRAP+1
(104401)
TRAP+2(104402)
TRAP+H
104401)
TRAPH
(104404)
TRAP+5
(1
04405)
TYPE OCTAL
NUMBER
(WITH
LEADING ZEROS)
TYPE OCTAL
NUMBER
(NO
LEADING l.EROS)
TYPE OCTAL
NUMBER
(AS
PER
LAST
CALL)
TYPE DECIMAL
NUMBER
(WITH
SIGN)
SGTSWR
IICALL-GTSWR
TRAP+6 (1iI441/16)
GET
son-SWR
SETTING
SCKSWR
'RDCHR
SRDLIII
CN.IIST
DELA.Y
" CALLIICKSWR
, ICALLIIROCHR
,
,CALL-IIDLI>!
: I C
ALL-CNT.
RESET
IICALL-CNT.RDY
,
,C
ALL-DELA
Y
TIIAP+7(
104407)
TEST rOR
CHANGE
IN
SOFT-SWR
TRAP+10(104410)
TTY
TYPElN
CHARACTER
ROUTINE
TRAP+ll
(104411)
TTY
TYPEIN
STRING
R(lUTI~E
TRAP+12(104412)
CONTROL
FlESET
ROUTINE
TRAP+l](104413)
WAn
FOR
CNTRL 1I0Y
TO
SET
TRAP+14(104414)
TIME DELAY ROUTINE
.58TTL
POWER
DOWN
AND
UP
ROUT
I
NES
"
********.***********.**.***************************************
I
POWER
DOliN
ROUTINE
SPWRDNI
MOV
MOV
MOV
NOV
MOV
NOV
MOV
NOV
MOV
MOY
MOV
HALT
BR
UILLUP,(UPWRVEC
IISET
rOR FAST
UP
'340,UPWRVEC+2
IIPRIOl7
110,-(SP)
IIPUSH
R0
ON
STACK
Rl,-CSP)
I,PUSH
Rl
ON
STACK
R2,-CSP)
: IPUSH
R2
ON
STACK
Rl,-(SP)
IIPUSH
Rl
ON
STACK
R4,-eSp)
I,PUSH
R4
ON
STACK
R5,-(SP)
:IPUSH
R5
ON
STACK
('SIIR,-(SP)
"PUSH
UWR
OM
STACK
SP,SSAVR6 :
,SAVE
SP
UPIIRUP,
UPWRVEC "
S!T
UP
VECTOR
"HANG
UP
04·0CT-76
13108
PAGE
49
POIIER
~OWN
AND
UP
ROUTINES
II
**********
••••
****
•••
*
••
*
••
*.*.********.*
••
********************
,POWER
UP
ROUTINE
IPWRUPI
MOV
IIILLUP,UPWRVEC
IISET
FOR
n.ST
DOWN
MOV
U"VR6,SP
J
IGET
SP
CLR
SSAVR6 J I WAIT
LOOP
FOR
THE
TTY
1$1
INC
ISAVR6
UWAIT
FOR
THE
INC
BNE
It
nor
IIORD
"'OY
(SP)+,.5WR
"pop STACK INTO
tSWR
MOY
CSP)+,R5
"POP
STACK INTO
R5
MOV
(SP)+,R4
"POP
STACK INTO
R4
MOV
(SP)+,R3
J ,POP STACK INTO
R3
MOV
CSP)+,R2
J ,POP STACK INTO
R2
MOV
(SP)+,Rt
J ,POP STACK INTO
Rl
MOV
CSP)+,RI'I , ,POP STACK INTO
R0
MOV
UPIIRDN,.fPWRVEC
"SET
UP
THE
POWER
DOWN
VECTOR
MOV
U40,UPWRVEC+2
uPRIO.7
TYPE ,REPORT
THE
POWER
FAILURE
'PIIRMGI
.WORD
'POWER " POIIER
FlIL
MESSAGE
POINTER
MOV
(PC,.,
CSP)
"RESTART
AT
PFSTRT
'P"R"DI
.WORD
P'STRT
r ,RESTART
ADDRESS
RT!
ULLUPI
HALT
II
THE
POIIER
UP
SEQUENCE
WAS
STARTED
BR
.-2
" BEFORE
THE
POWER
DOWN
WAS
COMPLETE
ISHR61
0 r
,PUT
THE
SP
HERE
'POWERI
ASCI!
<15><12>-POWER-
.EVEN
,ERROR
N!:SUGES
.SBTTL
ERROR
MESSAGES
EMil
ASCI!
ITIME
OUT
ON
PKlt
REGISTERI
EM21
.Ascn
IREGISTf!R
NOT
CLEAREDI
EM3'
,lIScn
IRKCS
ERROR
I
EM41
ASCI!
IRKCS ERROR-ON WRI'l'ING
READ
ONLY
BITSI
EM51
.ASCIZ
IBUS
INIT
DID
NOT
CLEAR RKCSI
SEQ
111053
M"INDEC-II-DZRKJ-D
MACYlI
270006
)
04-0CT-76
11108
PAGE
41
DZRKJD,Pll
30-,.UG-76
14149
ERROR
MESSAGES
SEQ
0054
2174
010470
020104
047516 020124
2175
010476 046103
049505 020122
2176
010594
045522
051503
000
2177
2179
010511
103
052116 046122
EM6:
.ASCll
ICNTRL RESET
DIDN'T
CLEAR
liKes,
ON
SETING
'CO"
2179
010516
051040
051505 052105
2190
010524
04204'"
042111
023516
2191
010532 020124 046103 040505
2192
010540 029122 045522
051503
2193
010546
020054
047117 051440
2184
IHA554
052105
047111
020107
2185
010562 043447 021517
000
2196
2197
010567
103
052116
046122
EM71
.ASCn
leNTRL
ROY
DIDN'T
SET U'TER
CNTRL
RESETI
2198
010574
051040
054504 042040
2189
010602 042111
023516 020124
2190
010610
042523
020124
043101
2191
010616 042524
020122
047103
2192
010624
951124
020114
042522
2193
010632 042523
000124
2194
2195
010636 042522 044507
052123
EM101
,Ascn
IREGISTER
NOT
CLUR[DI
2196
010644
051105
047040
052117
2197
010652
341440
042514
051101
2198
010660
04211!15
000
2199
2200
010663
122
053511
020103
EMIli
.ASCIZ
IRKwe ERRORI
2201
010670
051105 047522
000122
2202
2203
221i14
010676 045522 040502 042440
EM131
.ASCIZ
IRKBA
ERROR
I
2205
010704 051122 051117
000
2206
2207
010711
103
052116
046122
EM141
.lIscn
ICNTRL RESET
DIDN'T
CLEAR
REGISTERI
2208
010716
051040
051505
052105
2209
010724 042040
042111
023516
2210
010732
020124 046103
040505
2211
010740
020122
042522
044507
2212
010746 052123 051105
000
2213
2214
010753
122
042113
020101
[
...
15:
ASCIZ
IRKDA
ERROR
I
2215
010760
051105
047522
000122
2216
2217
010766
052502 020123
047111
I!:MI7:
.ASCll
IBUS
INIT
DIDN'!
CLR
REGISTRI
2218
010774
052111
042040
04211
1
2219
011002
021516
020124
046103
2220
911010
020122
042522
044507
2221
011016
052123 000122
2222
2223
IH1022
042101
051104
051505
[14201
.ASCll
IADDRESSING ERROR-TRUD
TO
ADDRESS
REG1,
GOT
REG21
2224
011030 044523 043516 042440
2225
011036
051122 051117
052055
2226
01111J44
044522 042105 052040
2227
011052
020117
042101
051104
2229
011060
051505
020123
042522
2229
011966 030507
920054
947507
MAINDEC-I1-0ZRKJ-O
"'ACYlI
27(1096)
04-0eT-76
13108
PAGE
42
DZPKJO.Pll
19-AUG-76
14:
49
I!:RPOR
MESSAGES
SEQ
0055
2230
011074
920124
042522
031107
2211
911102
000
2232
2233
IHll03
194
042111 023516
EM22:
.Ascn
IOIDN'T
CLEAR
RKCS
LOW
BYTEt
2234
011110 020124
046103
040505
2235
911116
920122
045522
951503
2236
011124 046040 053517
041040
2237
011132
052131
000105
2239
2219
011136 044504 047104 052047
EII23:
.Ascn
IDIDN-T
CLEAR
RKCS
HIGH
BYTI!:I
2240
011144 041440 042514
051191
2241
011152 051040 041513
020123
2242
011160
044510
044107
041040
2243
911166
052131
000105
2244
2245
011172
051124
942511
02011!14 EM24:
.Ascn
ITRII!:D
TO
CLEAR
RKCS
'BYTE',
CHANGED
'REGIS"
2246
011200
047524
041440
042514
2247
011206
051101
051040
041513
2248
011214
020123
941047
052131
2249
011222
1'l23505
020954
044103
22'59
011230
047101
042507
020104
2251
011236 051047 043505
951511
2252
011244
000947
2253
2254
011246
040506
046111
042105
EM251
.Ascn
IrAILI!:D
TO
CLEAR
-REG-BYTE-'
2255
011254 052049
929117
046103
2256
911262
040595
020122
051047
2257
011279
043595 041055
952131
2258
011276
023595
090
2259
2260
011301
122
041513
920123
I!:M26
I
.\SCIl
IRKCS
ALTERED
ON
CLEARING
'RI!:G-BYTE'I
2261
011306
046101
042524 042522
2262
011314 020104
047117
041440
2263
011322
042514
0511111
047111
2264
011330
029107 051047
943505
2265
011336 041955
052131
923505
2266
011344
000
2267
2268
911345
124
044522
942105
I!:M27
I
.ASCIZ
ITRnD
TO
CLEAR
-REG-BYT1",
CHANGED
"REG-SYT2"1
2269
011352
952049
920117
046103
2279
911360
940595
020122
051047
2271
011366
943505
041955
052Ul
2272
011374
923461
920054
044103
2273
011402
047101
0425""
020104
2274
011410
951047
041505
041055
2275
011416
052131
023462
000
2276
2277
911423
125
942516
950130
EMUI
.ASCIZ
IURI!:XPI!:CTED
RU
1 INTERRUPTI
2278
011430
041595
042524 020104
2279
011436 045522
039461
044440
2280
011444 052116
951105
052522
2281
911452
052129
000
2282
2283
011456
.I!:VI!:N
2284
2285
.S8TTL
ERROR
DATA
POINTERS
MA
I
NOEC-ll-DZRKJ-O
"ACYl 1 27
(1006)
"4-0CT-76
13,08
PAGE
43
DZRKJD.PII
'0-AUG-?6
14.48
ERROl!
DATA
POINTERS
SEQ
0056
2286
2297
0lt456
001116 001162
000000
OT1,
.WORO
URRPC,
SREG0, 0
2288
2289
011464
001116 001162 001164
012:
.wORO
URRPC,
IIIEG0,
'REG1,0
2290
011472 000000
2291
2292
011474
00tl16
001162
001164
OT201
.WORD
URRPC.
aREG0,
.REG1
••
REG2,
.REG),
0
2293
011502
01111166
001170 000000
2294
2295
011510
001116
000000
OT211 .IIORO
SERRPC,0
2296
2297
"11514
001116
001162 001164
01261
.IiORD
URRPC.
*REG0,
.REGI.
'R!G2,0
2299
011522 001166 000000
2299
2300
2301
2302
.S8TTL
ERROR
HEADERS
2303
230.
011526
020040
041520
020040
DHI:
.ASCI!
PC
REG-ADORI
2305
011534
051040
043505
040455
2306
011542
042104
000122
2307
2108
011546 020040 041520
020040
OH21
.ASCI!
PC
REGAOO
RECVDI
23;1)9
011554
051040
043505
042101
2110
011562
020104
020040
051040
2111
011510
041505 042126
000
23t2
21tl
011575
040
050040
020103
OH4:
.ASCI!
PC
EXPCT
RECVDI
2lt4
011602
11120040
042440
050130
23\5
011610 052103
020040 051040
2316
011616 041505
042126
000
2111
231
8
011623
040
05011140
020103
OH31
.ASCI!
PC
WROTE
REAOI
2319
011630
1'120040
053440
041522
2320
011636
042524
020040
051040
2321
011644
1,.0505
000104
2322
2123
011650 020040 041520
020040
010151
.ASCl!
PC
RECVOI
2324
011656
020040
042522
053103
2325
£"11664
000104
2326
2327
011666
020041.1 041521'1
020040
DHll
:
.ASCIZ
PC
WROTE
READI
2328
011674
1'121'11'140
051t
27
1'152117
2329
011702 020105 020040
1'142522
2330
1'JI171o!l
1'14211'11
01'1111
2311
2332
1'111713
040
1'150041'1
01'11'1103
OH21:
.ASCI!
PCI
2113
2B4
011720 020040 041520
0201'140 DM20.
.ASCI!
PC
REGI
REG2
(REGl)
(REG2)1
2315
011726
02094"
942522
03051'17
2316
011134
1'121'10416
020041'1
051040
2337
011742
043505
1'120062 020941'1
2338
011150 051050
943595
1'124461
2H9
0111'56
1'121'1041'1
1'151050
043595
2340
1'111764 1'124462
1'11'10
2341
I4AINOEC-II·OlRKJ·O
MACYlI 27(101'16)
irl4-0CT-76
UI9I8
PAGE
44
DZRK,ID.
PI
I
10-AUG-76
14148
ERROR
HUDERS
SE~
9057
2342
1'111167
041'1
059040
021H0l
DH24:
.ASCI!
PC
BYTE:
REGIS (REG)EXP (REG)RECVOI
2343
011714
1'120040
021'11'141'1
954592
2344
912I'J1iI2
042524
0201'140
051940
2345
912910
043505
051511
024040
2346
012016 042522
024507
054195
2341
0121'124 1'120120 051051'1 1'143585
2348
0121'132
05H!51
M1505
042126
2349
1'112040
000
2351'1
2351
012041
040
051i1040
020103
OH25:
.ASCIZ
PC
REG-BYTE RECVDI
2352
012046 020040 042522
02651'11
2351
0121654 0S451'12
042524
0511'140
2354
1'112062
1'14151'15
042126
01'19
2355
2356
111121'167
1'141'1
1'J50041!1
1'120103 DH261
.ASCIZ
PC
REG-BYT
(CS)EXP
(CS)RECVDI
2357
012074
iii 2
1'1 1'1
40
042522
026501
2359
012102
05451'12
020124
024040
2359
012110
85151'13
042451
050131'1
23&0
012116
9241'140
1'15151'13
1'1511'151
2361
012124
1'J4\51iS 1'142126
1'11'10
2362
2363
0121H
041'1
1'1501'140
1'J2I'J1IIl3
OH271
.ASCIZ
PC
R-BYTI R-8YT2 2-EXPCT 2-RECVDI
2364
1'112136 020'-"40
051040
1'1411'155
2365
012144
052131
021'1061 051041'1
2366
1'112152
041055
1'152131
921'11'162
2367
012160
1'13\040 1'142455 051'1130
2368
012166
1'152103
031040
1'151055
2369
1'112114
941505
942126
01'11'1
2370
2371
1'112201
040
050041'1 021'1103 OHl01
._scn
PC
RKCS
RKER
RKOSI
2372
1'11221'16
920040
020040
045522
2313
012214 051503 020040 020040
2374
012222
04552~
051105
0201'140
2375
1'112230
020040 045522
05151'14
2376
012236
000
~317
2378
2379
2380
090001
.END
MAINOEC-11-0ZRKJ-0
MACYl1
27(1006)
04-0CT-76
13108
PAGE
46
DZIIKJO.Pll
l0-AUG-a
14:
48
SYMBOL
TAIILE
BAOINT
002202
OISPII£
000174
ROLIN
104411
BAOTMO
002116
DSWR
177570
IIESVEC-
00212110
BIT0
:II
000001
OTl
011456
IIKBA
001254
BIT021
21002101
OT2
2111464 IIKCS 2101250
BIT2I1
000002
OT20
01i474
IIKDA
901256
BITln
009094
OT21
011510
RKOB
001260
BIT",)
a
0900U
OT26
011514
IIKDS
091244
BIT04
a
000020
EMTVEC·
000030
RKER
901246
BIT0,)
..
000940
EMt
010316
RKPRI
001266
BlT06
:II
000100
EroI10
010636
RKVEC
001270
BIT07
:II
000200
EMU
019663
RKWC
001252
BIT08
..
000400
EM13
910676
R6
='009006
BIT09
a
001000
EM14
010711
R7
a",,09097
BITl
009002
EM15
010753
STACK
901100
BITle
,.
902000
EM17
010766
START
001542
BIT11
=
004000
EH2
019350
STARU
902190
BIT12
=
21100210
E"'20
011822
STKLMT.
177774
BIT13
,.
029090
EM22
011103
SWR
001140
BIT14
:II
040900
EM23
011136
SWREG
001H76
BIT15
a
le0eee
EM24
011172
SW0
00egel
BIT2
a
e0e004
EM25
011246
SW00
..
e000el
BIn
=
e09010
EM26
011301
SW01
..
000002
BIT4
:II
000020
E"'-27
011345
SW02
a
099094
BITS
000040
EM)
010375
SW0) .. 210e010
BIT6
,.
00010e
EM4
010410
510104
..
0eee20
BIT7
..
0002e0
EM43
011423
SW05
..
000040
8IT8
..
00040e
EMS
010455
SW06
a
00'H00
BIT9
..
001gee
EM6
ele511
SW07
,.
00e290
BPTVEC=
0e0014
EM7
010567
SW08
a
000400
CKSWR
..
104407
EPRVEC"
0000e4
SW09
..
901000
CNT.ROa
104413
FTITLE
001262
SWI
..
900002
CNT
.RE:
le4412
GTSWR
104406
SW10
..
002900
CN.ROY
ge5524
GTlPG
005424
SW11
..
004000
CN.PST
ee5506
GT4RG
ee5450
SW12
,.
01000e
CR
,.
000"'15
HT
=
0e0011
Slt/13 '"
020000
CRLf
,.
000200
IOTVEC·
0021020
SW14
=
040000
DDISP
: t
77570
I,F
..
00ee12
SW15
..
100000
DELAY
:II
104414
MSe3
e0121&
SW2
=
000004
DEL".Y
005464
PFSTPT
002306
S..,3
,.
000010
DHI
01152&
PIPQ
=
177772
SW4
..
000020
DHtl
011666
PIRQVE:II
000240
SW5
=
900040
OH2
011546
PP0 =
000000
SW6
=
000100
DH20
011720
PRI
..
000040
SW7
,.
000200
DH21
011713
PP2
000100
SW8
a
000400
DH24
011767
PR3
..
0001416
Sw9
001000
OH25 0121341 PR4 ..
900200
TBITVE=
000014
OH26
012.0&7
PP5
..
000240
TIMER
001264
OH27
012131
PR6
z
000300
TIMOUT
0ij2456
DH3
011623
PR7
000340
TKVEC =
000060
DH30
012201
PS
17777&
TPVEC
:II
000064
DH4
011575
PSW
:0
177776
TRAPVE"
000034
DHS
011650
PWPVEC:o
000024
TRTVEC:II
000014
DISPLA
001142
RDCHR
..
104410
TSTl
002352
MAINDEC-I1-0ZRKJ-D
"IACYll
27(1006)
04-0CT-76
13108
PAGE
47
DZPKJD.
P11
30-AUG-76
14:
48
SYMBOL
TA8LE
STI"Igs
001206
STPF'LG
001157
STKB
001146
STPS
001150
STKS
001144
STRAP
010046
STN
000025
STRAP2
010070
STPB
001152
STRP
::
000015
ASS.
012237
000
EPRORS
DETECTED: 0
DEFAULT GLOBALS
GENERATED
I
DZRKJO,
DZRKJO/LI:
"IE/NL:
MC:
MD:
CND/SOL/NSQ..DZIIKJO.
pll
RUNaTIME:
H
24
,9
SECONDS
RUN-TIME
RATIO:
253/69=3.6
CORE
USEDI
23K
(45
PAGES)
STRPAO
ST8TNM
STTYlN
STYPOS
$TYPE
010102
901102
007110
007374
007154
TST10
003204
TST11
003314
TST12
003454
TST13
003522
TST14
003630
TST15
003676
TST16
004004
TST17 9214056
TST2
002474
TST20
004164
TST21
004240
TST22
004490
TST23
004570
TST24
005904
TST3
092560
TST4
082640
TST5
092720
TST6
003072
TST7
0e3142
TYPOS ,.
le44e5
TYPE
104491
TYPOC
..
104402
TYPON
..
104404
TYPOS ..
104403
Tl
SAUTOS
SBOAOR
SBODAT
SCHARC
SCKSWR
SCMTAG
SCM
1
SCM2
SCM3
SCNTLG
SCNTLlI
SCRLF
SDBLK
SDOAGN
SDTBL
SENDA!)
BENOCT
SENDMG
SENULL
nop
SEOPCT
SERFLG
SERMAX
SEPROR
SERRPC
SERRTB
SERRTY
SERTTL
STYPEC
STYPEX
STYPOC
STYPON
$TYPOS
992402
001134
0"'1122
0e1126
007370
0e640e
ee1100
..
ee0012
..
900024
"
000012
007125
e07120
e01213
0e7610
005400
007600
005370
005336
005407
005404
005302
005330
001103
001115
006104
00111&
001272
00&244
001112
007324
007372
007644
007&60
0076216
SESCAP
001210
SF'ILLC
001156
SF'ILLS
001155
SGOADR
0011221
seOOAT
001124
SGET42
905360
SGTSWR
006450
SHO
a
009900
$lCNT
901104
SILLUP
019300
IINTAG
001135
$ITEMB
001114
eLF
001214
SLPADR
001196
SLPERR
0011U
SMNEW
807143
$MSWR
007132
SMlCNT
006102
SHULL
001154
SNWTSTa
0000el
SOCNT
010942
SOMOOE
010044
SOVER
006066
SPASS
001100
SPOWER
01e306
SPWRAO
0116274
SPWRDN
010134
SPWRMG
010270
SPWRUP
010206
SQU£S
0e1212
SROCKR
0e&662
SPOLIN
007002
SROSZ
..
000910
SREGAD
160116e
SREG0
001162
SPEGI
001164
SREG10
001202
SREGll
001204
SREG2
001166
SREG)
001170
SPEG4
001172
SIIEG5
001174
SREG6
00117&
$REG7
001200
SRTNAD
005402
SSAVR6
010304
SSCOPE
005632
SSETUP"
e00117
SSTUP
177777
SSVLAO
006040
SSVPC
=
000204
SSWII
:II
165400
SSWIIMKII
000000
IXTSTR
005644
$SGET4"
0013000
S0FILL
010043
:0:
012237
SEQ
0058
SEQ
0059

Navigation menu