LOS ALAMOS SCI ENTIFIC LABORATORY
of the
University of California
F LOS ALAMOS . NEW M E X I C O
b
Simulation
of
mawthe
SELS-
-K-,-er
---
-
-.
. .-on
MANIAC
I1
(SFCMA)
L+-
-
d
UNITED STATES
DISCLAIMER
DISCLAIMER
I
L E G A L
N O T I C E
This report was prepared as an account of Government sponsored work. Neither the UnitedStabs, nor the Commission, nor any person actiog on bebalf of the Commission:
A. Makes any warranty or representation. expressed or implied, with respect to 1 e accu- racy, completeneea, or usefulness of the information contained in this report, or that the use of any information, apparatus, method, or process disclosed in this report may not inLrlsge privataly owned rights; or
B. Assumes any liabilities with respect to the use of. or for damages resulting from the
uae of any information, apparatus, method, or process disclosed in tbis report.
As d in the above. "person actfng on behalf of the Commissionm includes any em- ployee or contractor of the Commission, or employee of such contractor, to the extent that such employee or contractor of the Commission. or employee of such contractor prepares, dismeminatee, or provides access to, any information pvlruaat to He employment o r contract with the Commission, or hie employment with such contractor.
This report expressee the
opinions
ofthe
author o r authors and doesnot
necessarily reflectthe
opinionsor
views of the Los Alamos SoientificLaboratory.
Printed in the United States of America. Available from Clearinghouse for Federal Scientific and Technical Information National Bureau of Standards, U. S. Department of Commerce
Springfield, Virginia 22151
LA-3640
UC-32, MATHEMATICS
AND COMPUTERS
TID-4500
LOS ALAMOS SCl ENTl FlC LABORATORY
of the
University of California
LOS A L A M O S NEW M E X I C O
Report written: November 1966
Report distributed: F e b r u a r y 27, 1967
Simulation
of
the SELSlOA Computer
T H I S PAGE
WAS
INTENTIONALLY
The SEL-810~ computer has been simulated on M4NIAC 11; MADCAP has .
been used a s t h e programming language. The exercise has several ob-
jectives: a d e t a i l e d knowledge of t h e l o g i c a l s t r u c t u r e of t h e SEL-810~ .
and t h e preparation of programs would be possible; t h e s u i t a b i l i t y of WCAP could be examined f o r t h i s ' t y p e of application. The two-pass assembler provided f o r t h e SEL computer was tested, and error's i n t h e o r i g i n a l versions were detected and corrected. An account i s given of other experience.
The authors wish t o thank Mark Wells and Roger Lazarus of
T-7
f o ruseful discussions of t h e MADCAP language. We a l s o thank Harold Butler
of MP-1 f o r discussions concerning t h e operation of t h e SEL computer.
One of us (J.R.P.) i s indebted t o Carson Mark f o r t h e i n v i t a t i o n
T H I S PAGE
Abstract
. . .
33
.
Declaratory Statements and I n i t i a l i z a t i o n. . .
12. . . . . .
.
4
.
Input Phase '14
5
.
I n s t r u c t i o n Decoding and Effective Address Computation...
16FIGURES
Page
1. Simulation procedure
. . .
81. Introduction
1.1 A simulator c a l l e d S E M which i n t e r p r e t s SEL-810~ machine
language i n t o equivalent MANIAC I1 (M2) machine language has been w r i t -
t e n using
MADCAP.^
No attempt has been made t o a t t a i n maximum speed ormemory economy; r a t h e r t h e c r i t e r i a of t h e speed of programming t h e simulator and t h e c l a r i t y of t h e f i n a l program have been selected. The
,- W C A P language i s well-suited f o r t h e description as h e l l as t h e pro-
gramming of t h e subject program.
2
1.2 Given t h e SEL assembler c a l l e d MNEMBLER w r i t t e n i n modified
SEL machine language and t h e appropriate SEL loader which converts modi- f i e d t o absolute language, we may then assume t h e existence of a MNEMBLER
machine code; and a program w r i t t e n i n MNEMBLER language may be processed
as showxi i n Fig. 1.
1.3 The input-output complement of M2 i s not t h e same as t h a t of
t h e SEL computer, so compromises a r e necessary. The fast paper t a p e
reader and punch a r e compatible on t h e two computers, s o no modifica-
t i o n i s necessary. The M2 l i n e p r i n t e r has a g r e a t e r width, which causes
no severe d i f f i c u l t y , but t h e character s e t and paper control a r e s l i g h t l y
&CAP
Manual,
GroupT-7,
las Alamos S c i e n t i f i c lsboratory (1964).2
- SEL-810~ Reference Manual, Fort Lauderdale, Florida (1966 )
.
d i f f e r e n t . The proper correspondence i s given l a t e r .
The g r e a t e s t mismatch i s i n t h e ASR-33 t o Mark 3 typewriter map-
ping: No reader o r punch i s a v a i l a b l e on t h e Mark 3, and t h e r e i s a
s u b s t a n t i a l difference i n t h e s p e c i a l character s e t .
1.4 I n t e r r u p t s may be introduced i n t o t h e system by means, of a
paper t a p e giving t h e p r i o r i t y l e v e l and t h e time of t h e i n t e r r u p t i n
cycles
-
or by giving t h e s e t t i n g of t h e SEL program counter a t which.thei n t e r r u p t i s desired. If it i s desired t h a t t h e program run without
i n t e r r u p t s , they can be suppressed by a sense s e t t i n g on t h e M2 console.
1.5 Display of t h e i n t e r n a l s t a t e of t h e SEL-810~:can . . be obtained
under W sense switch control, and changes can be introduced i n t o t h e
SEL computer memory by means of t h e . . M2 W k . 1 keyboard. The a c t u a l SEL
running time can be exhibited.,
1.6 Certain programmed M2 stops i n d i c a t e possible e r r o r s i n t h e
SEL code and a r e provided a s an a i d i n debugging. The meanings of these
stops w i l l be spelled out below. The SEL program may a l s o be stopped
manually or breakpointed.
1.7 Times, i n cycles, f o r carrying out peripheral operations are
entered as parameters Nk, where k i s an integer, and a r e used i n t h e
computation of t h e a c t u a l SEL running time.
1.8
The operating speed of t h e simulator i s approximately 1000times slower than t h e a c t u a l SEL computer. The SEL assembler c a r r i e s
out -[;he full assembly a t about two statements
per
minute.9
. .
. . . . . . . . . . . . . . .
2. Program Organization
2.1 The general organization of the program is shown in Fig. 2, and each part is described in more detail in the following sections. A description of the self-contained procedures is also given.
2.2 The simulator is stored in the M2 disk file, and calling is carried out under standard M2 operating procedure.
2.3
Although a knowledge of certain parts of W C A P is needed to understand the program, the procedure descriptions are made independently of that facility; and a view of the simulator can be had independently.START
(2
Declaratory Statements and
I n i t f a l i z a t i o n
Read i n SEL h-ogrm and I n t e r r u p t Tapes H a l t f o r SEL Data Tape Load Decode I n s t r u c t i o n and Compute E f f e c t i v e C - Frocess + I n t e r r u p t s and BTC I I n t e r p r e t i v e Execution of I n s t r u c t i o n (including
1/b)
4
Display SEL S t a t u s .under Sense .Control
-1
HZ,"
I
3 . Declaratory Statements and I n i t i a l i z a t i o n
. .
3.1' A s i n most compilers, words may be of various n k b e r - t y p e s
and must be declared or implied t o be of a c e r t a i n type. The number-
t y p e s used i n t h i s si~miiatoY We:
3.11 Real: Floating Point Number
3.12 Word-Set: A 48-bit M2 word on which Bool.e@~. set.-
operations may be performed.
3.13 Label: A symbolic location of a MADCAP statement.
3.14 String: A sequence of 8-bit characters of specified
length.
They a r e declared, generally, e a r l y i n t h e program.
3;2 Also e a r l y i n t h e program parameters a r e i n i t i a l i z e d , l a t c h e s
m e s e t , and formats f o r input and output a r e declared.
3.21 N 1 through N13 a r e parameters describing t h e operation
times of various peripheral devices and should be s e t
with proper values if i n t e r r u p t t i m i n g i s t o be simu-
l a t e d properly.
3.22 The parameters prescribing when t h e d i f f e r e n t peripheral
devices
w i l l
next be a v a i l a b l e a r e i n i t i a l i z e d t o zero.3.23 The pointers 11, 12, and I 3 on t h e i n t e r r u p t l i s t s a r e
3.24 Tag b i t 0 ( ~ e l e t n e c l e a r ) i s s e t t o one and the' r e -
~ i n i n g Tag b i t s a r e s e t on i n i t i a l zero. The Tag word
,
i s defined i n Appendix D
.
3.25 The S t a l l A l a r m enable b i t i s s e t . This b i t i s not d i s -
turbed during operation of SELMA and has t h e highest
p r i o r i t y . A l l other b i t s i n t h e i n t e r r u p t enable s e t
a r e i n i t i a l i z e d t o zero.
3.26 Alatch, a f l a g s i g n a l l i n g t h a t t h e highest a c t i v e i n t e r -
r u p t i s t o be turned off a t t h e next LOB or BRU*. i n s t r u c -
4. Input Phase
4.1 When SELMA i s c a l l e d from t h e disk, any absolute SEL tapes
should be i n t h e reader with sens'e 0 i n t h e s e t p o s i t i o n i f more abso-
l u t e t a p e s a r e t o i'ollow.
4.2 The absolute t a p e w i l l be read i n and SEIM w i l l come t o s t o p
0 i f t h e r c a r e more ab,colutc tapco, Thcoc tapco a r c i n otandard EEL
format with a l o c a l address and negative word count a t t h e s t a r t of t h e
t a p e (SEL Manual, p. D
.I,
Debug Dump Tape).
They w i l l be automaticallyloaded a t t h e proper place.
4.3
I f sense 2 i s on, SEIMA w i l l h a l t a t s t o p 2 and p r i n t "Loadtime i n t e r r u p t s . " Any time i n t e r r u p t t a p e i s loaded and sense 2
-
i sl e f t on i n order t o maintain these i n t e r r u p t s i n an a c t i v e s t a t u s .
--
4.4
Sense 3 has a s i m i l a r a c t i o n f o r location interrupts.4.5 ~f sense
6
i s on, s t o p6
w i l l occur, allowing t h e operator t otype an execution s t a r t i n g address i n t o t h e last 13 b i t s of t h e t o p con-
sole r e g i sFer d i splay.
4.6 I f sense
6
i s off, seisse7
w i l l de:.teruf~lc l;he s t ; u . l ; i t g address.It w i l l be 0 (standard assembly l o c a t i o n ) if sense
7
i s off and6677
(standard l o c a t i o n of ioadek start) i f s e t .
4.7 The last s t o p i s "a" and t h i s i s the. only s t o p which always
Go" w i l l be printed, allowing f o r any program d a t a including programs t o be assembled or loaded (which a r e d a t a t o t h e assembler o r loader programs) t o be i n s e r t e d i n t h e reader.
5.
I n s t r u c t i o n Decoding and Effective Address Computation5.1
The i n s t r u c t i o n type i s recognized by t h e first four b i t s of t h e word and, i n t h e case where they a r e a l l zero, by t h e l a s t6
b i t s , which then contain t h e augmented code.. - - .
5.2 A s p e c i a l case i s made f o r t h e i n s t r u c t i o n s of o c t a l type 13 o r 17, which a r e I/O o r i n t e r r u p t type instructions.
I n
the case ofs h i f t instructions,. t h e amount of t h e s h i f t i s extracted f o r transmis- s i o n t o t h e i n t e r p r e t i v e routine.
6. Diagnostics
6.1 I n order t o a s s i s t i n debugging, c e r t a i n f a c i l i t i e s a r e made a v a i l a b l e t o t h e operator and programmer.
6.2
. I f sense4
i s on, a t t h e completion of each SEL i n s t r u c t i o nt h e r e w i l l b e a p r i n t o u t of t h e SEL cycle number, i n decimal; t h e i n -
s t r u c t i o n location: t h e i n s t r u c t i o n i t s e l f ; t h e e f f e c t i v e address l a s t
computed; t h e contents of t h a t address; t h e A and B accumulator contents,
a l l i n octal; and t h e contents of t h e l o c a t i o n c a l l e d Tag ( s e e Appendix
D )
i n binary.6 . 3
Sense5
w i l l cause p r i n t i n g of cycle and i n s t r u c t i o n location, '-
i n decimal, and t h e word-sets EnaSle, Request, and Active i n hexadecimalso t h a t i n t e r r u p t s can be studied.
6.4 Sense 4 and
5
may be actuated together. An example of t h i stype of d i a g n o s t i c p r i n t o u t is:
39
1660 cp=111656 ' e l 6 5 6c
,=034531 A=OOOOOO ~ 4 7 7 6 4 5 T ~ ~ = O O O ~ ~ O O O O O O O O ~ O O O ~6.5 I n order t o breakpoint a SEL i n s t r u c t i o n , e n t e r t h e i n s t r u c -
t i o n l o c a t i o n i n t h e f i r s t 16 b i t s of t h e panel a r r a y i n o c t a l and s e t
sense 9. I f t h e program counter assumes t h e value on the.pane1, t h e r e
w i l l be a s t o p
9
before performing .the i n s t r u c t i o n . S e t t i n g sense9
w i l lrunning since it i s immediately interrogated and r e s e t . Only one break-
point a t a time can be entered.
6.6
Sense switch8
i s t h e "manual" switch and w i l l cause a h a l ta f t e r each SEL i n s t r u c t i o n . This occurs a f t e r any diagnostic p r i n t re-
quested by sense 4 o r
5 .
The console w i l l display, a f t e r every stop,-
t h e i n t e r n a l s t a t e of t h e SEL computer (Appendix E ) . I f now t h e f e t c h
switch i s . depressed, S E N w i l l resume simulation t o t h e next s t o p o r
w i l l run on .automatic, as requested on sense
8.
6.7 The S t a l l Alarm i s implemented. as a trap t o a leveb designated
7. I n t e r r u p t Processor
7.1 If sense 2 or 3 i s on (Sec. 4 ) , t h e i n t e r r u p t l i s t i s i n t e r r o -
gated3 and a l l time i n t e r r u p t s whose cycle i s l e s s than or equal t o t h e
machine cycle a r e entered i n t o Request. I f t h e location i n t e r r u p t l i s t
contains t h e programscounter setting, an i n t e r r u p t i s s i m i l a r l y entered.
7.2 An attempt t o i n t e r r o g a t e an empty l i s t w i l l r e s u l t i n s t o p 12,
which may be overridden by r e s e t t i n g t h e sense switch and continuing.
7.3 If t h e i n t e r r u p t suppress occurring s f t e r c e r t a i n i n s t r u c t i o n s
i s on, it i s turned off, and S E N continues without f u r t h e r ' a c t i o n . .
7.4 An i n t e r r u p t i s processed by t h e i n t e r r u p t procedure described
8. Instruction I n t e r ~ r e t i v e Routines'
8.1
These are i n t e r p r e t i v e routines which simulate each SEL in-.. s t r u c t i o n . The i n s t r u c t i o n s a r e sixteen b i t 2I.s complement notation;
t h e r e f o r e , m a u y of t h e i n t e r p r e t i v e routines involve word-set opera- t i o n s .
8.2 Memory referencing i n s t r u c t i o n s use t h e procedure e f f e c t i v e t o g e t t h e f i n a l e f f e c t i v e address before entering t h e , i n t e r p r e t i v e routine.
8.3 S h i f t i n s t r u c t i o n s use s h i f t t o update t h e cycle number and t o
-
transmit t h e magnitude of t h e s h i f t .8.4 The TO1 I n s t r u c t i o n s e t s a location c a l l e d Alatch t o t h c vabuc
corresponding t o t h e highest a c t i v e i n t e r r u p t . This i n t e r r u p t i s r e s e t a t t h e next LQB o r B R i n s t r u c t i o n . ~
9.
110 I n s t r u c t i o n s9.1 The 110 i n s t r u c t i o n s f o r each peripheral device a r e separate
routines.
9.2 The TEU i n s t r u c t i o n s a r e not implemented, except f o r t h e
l i n e
p r i n t e r , since t h e 110 i n t e r r u p t w i l l be used and each d e v i c e . w i l 1 be
. .
connected t o a separate l e v e l so t h a t no ambiguity of u n i t w i l l occur.
9.3 Conflicts on t h e l i n e p r i n t e r i n CEU i n s t r u c t i o n s a r e detected,
and s t o p e w i l l s i g n a l t h e i r occurrence. The CEU "formst N" causes a
one-line advance, only.
9.4 The meaning of t h e d i f f e r e n t stops can be found i n Appendix C .
9.5 The t e l e t y p e routine uses t h e procedure convert t o e s t a b l i s h
t h e correspondence between t h e Mark 3 typewriter and t h e ASR-33 code.
Refer t o Appendix F f o r t h e equivalence o f , c e r t a i n characters. The typ-
ing of an i l l e g a l character causes a s t o p
7
and ignoring of character socontinuation, i s possible.
9.6 The timing i s c a r r i e d out u ~ i n g t h e parameters N 1 through
N 13 l i s t e d i n Appendix G.
9.7 I t i s possible t o i n s e r t a F l e x m i t e r - g e n e r a t e d tape i n t h e
f a s t reader and have it i n t e r p r e t e d as SEL code. This i s accomplished by
9.8
Whenever an I/O i n s t r u c t i o n i s performed, t h e new time a twhich t h e u n i t w i l l be ready i s i n s e r t e d i n t o t h e 1/0 i n t e r r u p t l i s t
a t t h e i n t e r r u p t l e v e l appropriate t o t h e u n i t . The i n t e r r u p t proc-
10. Procedures
10.1 Complement
The i n t e r s e c t i o n of G with t h e 2's complement of F i s t r a n s -
mitted without s i d e e f f e c t s . ,
10.2 S h i f t
s h i f t (none; p, C , Cycle)
The magnitude of t h e s h i f t i s transmitted from SEL i n s t r u c -
t i o n p
(MANIAC
C );and a s a s i d e e f f e c t , Cycle i s advanced t h e appro-P p r i a t e amount. 10.3 I/O Timing twx (Select, Delay; a l l )
-
If t h e . w a i t f l a g i n t h e110
i n s t r u c t i o n i n F i son,
s e t Cyclet o max'(Cycle, Tunit) where Tunit i s t h e l a s t s e t ready time. Cycle
+
Delay, t h e next ready time, i s s e t i n t o Tunit.
I f t h e w a i t f l a g i s not on but t h e u n i t i s ready, advance p
by 1 ( s k i p ) a,nd advance Tunit.
I n these cases, Mode i s s e t t o S e l e c t with t h e meanings f o r
t h e ASR-33
-
1 keyboard mode0 c l e a r mode
Unit not ready and no wait f l a g causes an e x i t with no s i d e ef- f e c t s . Tag 14 i s s e t i f t h i s l a t t e r e x i t occurs.
10.4 Typewriter Character Conversion
Convert (T; ~ a g )
Tag
5
i s s e t t o 0 f o r output and 1 f o r input before entry.I n t h e c a s e of output, t h e leftmost
8
b i t s of t h e SEL word Wd a r econverted t o t h e appropriate MANIAC character s t r i n g and outputted t o
%:he typewriter (no punch). Contrary t o t h e statements i n t h e manual,
output t o t h e l i n e p r i n t e r i s from t h e r i g h t
8
b i t s .On input, characters typed on t h e Mark
3
typewriter a r e convertedt o an 8 - b i t character r i g h t - j u s t i f i e d . The character formation i s de-
layed u n t i l the change i n case has been completed.
Case designation i s c a r r i e d i n t a g
3
and c a r r i e s between procedurec a l l s s o t h a t t h e current s t a t e can be determined and unnecessary case
change a c t i o n s a r e eliminated.
It'
an i l l e g a l character i s input, T i s s e t t o zero and SELMA w i l lh a l t on s t o p
'7.
.A f e t c h of t h e next i n s t r u c t i o n w i l l allow another t r ywith case remembered from t h e i l l e g a l a c t i o n ( i , e . present s t a t u s ) .
See Appendix F f o r character correspondences,
10.5 E f f e c t i v e
e f f e c t i v e (none; B, C, p )
This procedure computes t h e e f f e c t i v e address of t h e SEL i n -
s t r u c t i o n a t l o c a t i o n p whose image i s stored i n
MANIAC
location CP '
It w i l l map, index with B, and compute t o any i n d i r e c t depth adding 1.
If t h e f i n a l e f f e c t i v e address o r t h e e f f e c t i v e address a t any in- d i r e c t l e v e l exceeds 8192, t h e words:
"Address exceed 8192 a t pxxxx"
w i l l be printed and MANIAC w i l l h a l t .
The l o c a t i o n 8192 r a t h e r than 8191 is' used,because t h e wired-in
SF@ i n s t r u c t i o n associated with t h e i n t e r r u p t hardware i s executed a t
t h e a r t i f i c i a l location 8192.
The procedure has no s i d e e f f e c t s . 10.6 Basic I n t e r r u p t Routine
i n t e r r u p t (none; Active, Enable, Request, p, C, c y c l e )
If t h e i n t e r r u p t l e v e l "Level" i s enabled and no higher l e v e l s
a r e active, t h e wired-in i n s t r u c t i o n SPEPL i s executed a t SEL l o c a t i o n
8192 and both t h e "active" and "request" b i t s . f o r that l e v e l a r e s e t .
If Level does not meet this condition, t h e request b i t i s s e t and
11. Concluding Remarks
-
11.1 The MADCAP language was p a r t i c u l a r l y suited t o t h e writing
of t h i s simulator. The s e t operations were of g r e a t value and had a
naturalness which .made them simple t o use. The g r e a t generality of t h e
various types.of conditional statements helped i n making t h e l o g i c of '
t h e program simply and c l e a r l y exprcooiblc,
11.2 Because-the W C A P statements a r e expressed so easily, we
b e l i e v e t h a t l o g i c a l and s y n t a c t i c e r r o r s a r e l e s s l i k e l y t o occur and,
indeed, it was our experience t h a t t h e debugging time was remarkably
s h o r t e r than f o r other formal languages. .
11.3 I n order t o give support t o these statements, we present t h e
f ollmi1Ig daL&:
Number of compwd MADCAP statements 710
Programming
7
man-weeksMANIAC I1 debugging 19.5 hours
51 sessions
U t i l i z a t i o n time, t o b L e 23.3 hours
"Add Memory t o B Accumulator"
Fig. 3. Program sample of MADCAP statements.
Comments
Save contents of e f f e c t i v e address. S = 0 i f both sign b i t s {15] of F and B accumulators a r e t h e same; otherwise S
f
0.Form algebraic sum of F and B and truncate t o
16
b i t s .I f t h e signs of F and B a r e now
d i f f e r e n t and S = 0, overflow has occurred.
Set overflow l a t c h t o 1. Result t o B accumulator.
Exit t o advance cycle and program
counter
.
S t a t ezent number #1400 - #1401 #1402#140 3
#14& Madcap Statement F = Ce; S = (Fn
[ l 5 ] ) A ( Bn
{15])
F = word (number ( F )
+
number ( B ) ) fl16
unless F
n
[15]
#
Bn
{l5), ands
=- 0, go t o #1403.TW IJ
[4]
-
~ a gB = F
APPENDIX A
Timing Parameters
The following 110 execution times a r e .to be s e t i n SEIMA t o ensure
proper
u M t i n g
ofcycle,
N 1 F i l l reader buffer
N2 Reader enable
N 3 Punch cycle
N4
TWX input (read buffer f i l l time-
e i t h e r mode)N5
TWX
output timeN6
S e t TWX modeN 7
Line p r i n t e r timeiu8
W c h turn-onNg
' Next page N10 ' Next l i n e N 1 1 . E~w,Irle - y r l r r l ; ~ burr er N12 C l e m buffer ( p ~ i . n t . e r )Sense Lights
The f i r s t t e n sense switches on t h e MANIAC console a r e interrogated
by S E W and can be used t o a l l o w various simulator operation nodes. I f
a console s t o p occurs a s a r e s u l t of one of these sense interrogations,
t h e console w i l l display t h e i n t e r n a l s t a t e of t h e SEL .computer, Opera-
t i o n can be resumed by depressing t h e Fetch switch. Sense
-
-
Set Condition0
-
Load Absolute--
and H a l t . There i s no h a l t before t h e f i r s tabsolute tape i s r e a d , ~ ~ it i s assumed t h a t t h e r e i s an
:absolute tape i n t h e reader a t t h e start of SELM4 i f t h i s
sense i s s e t . A s long as sense 0 i s s e t , SEIW w i l l h a l t
a t s t o p 0 f o r more tapes. Sense 0 can' be r e s e t a t any 0 stop. The format f o r an absolute tape i s t h a t given i n
Appendix D of t h e SEL manual f o r t h e '"Debug Dump Tape."
This t a p e can a l s o be loaded with t h e SEL Debug Loader
Program.
Flexmiter-Generated !Tape in,Reader. On reader AIP and
--
MIP instructions, t h e characters read a r e assumed t o be
F l e x m i t e r characters and ' conversion t o ASR-
33
equiva-l e n t s a r e made automatically. The equivalence i s t h a t of
Appendix I?.
Sense
-
-
Set Condition2
-
Time I n t e r r u p t s . S E m w i l l p r i n t "Load time i n t e r r u p t s , "e j e c t a page, and come t o s t o p 2. The Time I n t e r r u p t tape should be i n s e r t e d before continuing operation. Time in- t e r r u p t s w i l l be processed during t h e program a s long a s t h i s sense i s l e f t on.
3
Location I n t e r r u p t s . S E W w i l l p r i n t "Load locationnnzerlpupce,l'
eyecr, a page, -6 come t o s t o p3 .
The Luca- t i o n I n t e r r u p t tape should be i n s e r t e d before continuing operation. Location i n t e r r u p t s w i l l be processed during t h e programas
l o was
t h i s sense i s l e f t on.4
-
P r i n t Standard Diagnostics. After each SEL instruction, p r i n t a l i n e displaying Cycle, p, C,
e, Ce, A, 8, andP
Tag, consecutively. T w i s displayed a s a binary number.
5
-
P r i n t I n t e r r u p t D i q p o s t i c s.
After each SEL instruction, p r l n t a l i n e dispiaying Cycle, p, Enable, Xequest, andActive, consecutively.
It.
sense 4 i s a l s o set, both diag- n o s t i c s a r e printed and a l i n e i s skipped a f t e r t h e i n t e r -rupt diagnostics.
6 H a l t f o r S t a r t i n g Address. Causes console s t o p
6.
m e- 7
16-bit number entered. i n t o console position 2 ( s e e Ap-
Sense
.
,-
S e t Condition7
--
S t a r t a t Loader. The program dl1 start a t 1 5 0 2 5 , ( o c t a l ) .This i s t h e l o c a t i o n of t h e loader i n t h e standard s t a t e .
I f t h e switch i s i n t h e r e s e t position, t h e s t a r t i n g loca-
t i o n i s 0, t h e assembler s t a r t i n g address i n t h e standard
state'. S e t t i n g of sense
6
w i l l a l w a y s override this sense.Manual Operation. .The computer w i l l h a l t a f t e r each SEL
i n s t r u c t i o n a t console s t o p
8
(Sec. 6 ) .sense switch replaces t h e MBMClC Manual/~utomatic
Switch.
9
--
Enter SEL Breakpoint. When t h i s switch i s moved t o "set1',t h e f i r s t 16 b i t s of t h e panel a r r a y a r e entered as a break-
point (Sec.
6 ) .
10 Suppress &I I n t e r r u p t s . A l l i n t e r r u p t s from 110 devices
a r e suppressed. Since detection of
110
i n t e r r u p t s 'can betime-consuming, t h i s sense should be s e t i f no
110
i n t e r -r u p t s a r e expected i n order t o ensure b e t t e r S E M running time.
Absolute Code Modification. When t h i s switch i s "set"
- . . -
a f t e r a console stop, t h e paper t a p e i n t h e reader i s used t o modify t h e SEL absolute code i n t h e SEL simulated
memory. The format of t h e paper tape i s
a. number of corrections i n decimal followed by a car-
Sense
-
S e t Condition-
b. l o c a t i o n t o be modified expressed i n s i x o c t a l d i g i t s
followed by a Tab.
c . contents, i n o c t a l , of t h e modified location followed
by a carriage r e t u r n .
d. s t e p s b and c &e repeated f o r remaining modifica-
APPENDIX C
SEL Console Stops
Console Stop Meaning
0 Load, n e x t a b s o l u t i tape ~ri' r:-+sel; (seilse 0 ) .
1 HLT program h a l t . (Cycle count i s r e s e t t o 0 .)
2 Load time i n t e r r u p t s (sense 2 ) .
3 Load location i n t e r r u p t s (sense 3 ) .
4
Program counter overflow (8192).5
P r i o r i t y I n t e r r u p t group t o o l a r g e .6 Enter s t a r t i n g address i n S (sense 6 ) .
7
I l l e g a l 110 character ( d e l e t e d ).
8 Manual s t e p a l t e r a t i o n s t o p ( s e t d i a l t o 0 t o continue)
(sense 8 ) .
Panel breakpoint stop.
a . I n s e r t data tape and go.
b
.
Incorrect peripheral u n i t number.c. Non-implemented
TEU.
d , Peripheral u n i t i n wrong mode.
e. P r i n t e r c o n f l i c t condition.
f
.
P r i n t e r "input" called.Console S t o p Meaning
APPENDIX D
Tag Meanings
The word "Tagl',which i s displayed i n console p o s i t i o n 3 a f t e r each
SEL stop,has t h e following bit-by-bit meaning. I n i t i a l l y , t h e r e i s a
one i n p o s i t i o n 0 with t h e r e s t zero.
B i t
Location "0" meaning "1" meaning
0 Neutral ~ e l e t y p e Clear Mode
1 Neutral Teletype Keyboard Mode
2 Neutral Teletype Reader Mode
. ~
NOTE: I n i t i a l l y b i t 0 i s a one and b i t s 2 and 3 a r e
zero. CEXJ a c t i o n s can cause any of b i t s 0, 1,
and 2 t o be set; t o a one but t h e other two w i l l
then be s e t t o zero.
Mark 3 i n Upper Case Lower Case '
NOTE: The ASR-33 equivalent of Mark 3 input depends on
t h e case of t h e Mark 3 character, so t h e case must
be remembered from character t o character on input.
S E N assumes t h a t t h e i n i t i a l s t a t e i s upper case.
No overflow Overflow
Character Ou,tput Character Input
sit
.Location "0" meaning "1" meaning
NOTE: Communicates t o convert procedure whether con-
version i s f o r input o r output.
Carry "0" Carry "1"
NOTE: S e t by CSB i n s t r u c t i o n , r e s e t by AMA and SMA.
Neutral Presence of i n t e r r u p t
t o be processed
Reader disabled Reader enabled
hrnch disabled Pu~lch disabled
Neutral . BTC on
not used
,14 NO I/O a c t i o n I/O a c t i o n
. . , NOTE: The.TWX procedure
-
w i l l s e t t h i s t a g t o i n d i c a t e. . . .
. . . . . ,T/O u u l ; i ~ $ . A " i i ~ I , 1bti&y1'
,
no ~ u 1 . k I/O o ~ * s E ~ -t i o n w i l l s e t t h e t a g t o zero, otherwise t o one.
.
15
I n t e r r u p t Suppress o f f Suppress onNOTE: The i n t e r r u p t hardware i s suppressed a f t e r SPB,
PIE, PID, TOI, and CSB instructions. This tag
APPENDIX
F
Teletype
-
Mark 3-
P r i n t e r Character EquivalenceA l l t e l e t y p e characters have t h e i r Mark
3
and p r i n t e r equivalents except:Teletype IvhI-k