PX1790_unicod Cmp Tec V2_Apr61 PX1790 Unicod V2 Apr61
PX1790_unicodCmpTecV2_Apr61 PX1790_unicodCmpTecV2_Apr61
User Manual: PX1790_unicodCmpTecV2_Apr61
Open the PDF directly: View PDF
.
Page Count: 632
| Download | |
| Open PDF In Browser | View PDF |
TECHNICAL
DOCU MENTATION
for
UNICODE
Automatic Programming System for
Univac Scientific 1103A and 1105
Volume II
April, 1961
PX 1790
DIVISION
UNIVAC
OF SPERRY RAND CORPORATION
PARI, ST. PAUL 16, MINNESOTA
VOLUME I
Page
Table of Contents
I.
II.
INTRODUCTION.
3
GENERAL
1.
2.
.3.
4.
5.
6.
III.
. . I-v
UNICODE Service Routines. .
7
Library Routines. . • . • . . • • . • . 49
UNICODE System Tape Package .
123
UNICODE Sample Coding . . . . . • . . . 153
UNICODE Card Input. . •
163
Statistical Miscellany. .
185
TRANSLATION AND CORRECTION
1.
2.
3.
UNICODE Sentinel Blocks •.
Tape Merge . . . • . . •
Translation Phase
a. Translation Subroutines . .
b. Translators . • • • . .
· 203
217
· 291
· 434
VOLUME II
Table of Contents • • . • . . . . • • • • . II-v
III.
TRANSLATION AND CORRECTION
3.
IV.
Translation Phase
b. Translators (cont.) • • . . • • • • 569
GENERATION PHASE
1.
2.
3.
C~neration Set-up and Dr~T. Loader . . . 949
Generation Subroutines.
. . 959
Generators . . . . . . • • • • • . . . • 1013
VOLUME III
Table of Contents . • . . . . . • . • . . III-v
IV.
GENERATION PHASE
3.
V.
Generators (cont.) . • . . • . . . . . . 1193
ALLOCATION PHASE
1.
Segmentor . . • • • . . . • .
2.
Allooator. . . . • . . . .
3.
Initialization Generator.
1461
1551
1607
VI.
PROCESSING PHASE • . . .
1671
VII.
PROGRAM LISTING PHASE.
1747
......... - ..... ".-
vnlllAA~
..II
TABLE OF CONTENTS
III.
TRANSLATION AND CORRECTION
3.
TRANSLATION PHASE
b.
Translators
LIST String-Out (cont.)
Coding
. • • • • • • • • • • • • • • ••
569
PRINT String-Out
Write-Up ••
Flow Chart s •
Coding • • •
636
638
640
IF String-out
Notes • • • • • • • •
Flow Charts • •
Coding. • • • • • • •
646
664
692
VARY Translation Routine
Notes • • • • •
Flow Charts • •
Coding. • • • • •
RESUME String-out
Flow Chart • • • • •
Coding • • • •
724
729
742
....
JUMJ» String-Out
....
Flow Chart s •
Write-Up •••
Coding • • •
STOP String-Out
Flow Chart • • • • •
Coding • • • • • • • •
Flow Chart-
Coding
• • • •
773
774
776
777
778
781
782
END OF TAPE String-Out
Write-Up •
Flow Charts •
Coding • • • • • • • •
EXIT String-out
....
783
784
788
........
II-v
792
793
VOLUME II
TABLE OF CONTENTS (cont.)
START String-Out
Flow Chart. • •
Coding. • • • .
. 794
795
EQUATION Translation Routine
Note s • • • •
Flow Charts •
Coding
• •
Regions •
Setups and Subroutines.
Constants and Variables
Translation Left. • •
Translation Right •
Error Prints. • • • • • ••
796
806
....
...
812
816
823
830
850
893
PSEUDO-OPERATION HEADING Translator
Write-Up ••
Flow Charts
Coding •••
IV.
.
..........
.
.
.
... ..
......
..
.....
....
921
922
928
GENERATION PHASE
1.
GENERATION SET-UP AND DRUM LOADER
Write-Up
Flow Charts •
Coding
2.
949
950
952
GENERATION SUBROUTINES
Regions • • • • • • • • •
Control Generation
Computer Error
Sentence Heading Error Routine
Op Control Subroutine
• • • •
Write-Up • •
Flow Charts • • • • •
• • • •
Coding • • • • • •
• • •
Constant Call Word Routine for Generation •
Routine to Get Call Word of Referenced Line Number
Line Number Check Routine C - Generation
• •
KI Illegal Line Jump Check Routine - Generation • •
LS Library List Routine - Generation
•••••
Routine for Conversion of Excess-Three to Flex Code
Wr i te -Up • • • • • . • • • • • . • . • . • • • • •
II-vi
959
961
969
973
975
977
980
986
989
992
995
999
1002
TABLE OF CONTENTS (cont.)
VOLUME II
Excess-Three to Flex Code Table • • •
Unityper Modifications for UNICODE
Flow Chart
• • • •
Coding
• • ••
• • • •
3.
.....
1003
1005
1007
1008
GENERATORS
START Generator • • • • • • • • • • • • • • • • • • • • •
JUMP Generation
Wri te-Up
Flow Chart
Coding
IF Generation
Notes • • •
..
Flow Chart s •
Coding
PRINT Generation Routine
Write-Up.
• •••••
Flow Chart • • • • • • • • • • • • • • • • • • • • • •
Coding • • • • • • • • •
COMPUTE Generation Routine
Write-Up • • • • • • • • • • • • •
• • •
Flow Charts • • • • • •
• • •
Coding • • • • • • • • • • • • • • •
• • •
VARY Generation Routine
Write-Up • • • •
• • •
Flow Charts. • • • • • • • • •
• •
Coding • • • • • • • • • • • • •
RESUME Generation • • •
• •
EXIT Generator
• • •
TYPE Generator
Flow Charts • • • • • • •
• • •
Coding • • • • • •
• •
LIST Generator
Flow Chart s.
Coding • • •
READ Generator
Flow Charts. • •
Coding • • • • • • •
sroP Generator
Flow Charts. • • •
• •
Coding • • • • • • • • • • • • • • • • • • • • • •
DIMENSION Generator • • • • • •
PSEUDO-oPERATlON HEADING
END OF TAPE Generation
Write-Up. •
• ••••••••••••••••••
Flow Charts
• • •
• • • •
Coding • • •
...
.. .
...
.....
·....· .....
·...
·...
· . .· ·. ..
· ..· ..
· . . . . . . ·· .. . · . .· .· .. ..
· ..
· . . · . ·. ·. .. ·.. .·. ..· ··. ... ...
·.
. . . . . ·. .· . · ·. .. ..
..
. . . .. .. .. ·. .. . . · . .
·. ·.
·· .. .. .. .· . . · . ·. . . ·· .. ..
·..·..·..
· . . . · ·. .. ..
·..
. . . · . .. .. .· .. .. .· .. .. . .
II-vii
1013
1016
1017
1018
1019
1027
1033
1045
1047
1048
1051
1054
1060
1072
1073
1084
1100
1105
1107
1115
1126
1136
1145
1153
1161
1166
1174
1176
1178
1180
1183
List String-out Regions
(String-out Subroutine Regions also Required)
RE
RE
RE
RE
RE
RE
RE
DD
LA4000
LB40l3
LC4042
MC4067
LD4l0S
MD4132
ND4l6S
TDAr)l"'7
l1.t:.
&...I:.'i,J. •
RE
RE
RE
LF424l
NF430S
LG4344
LH4374
LI444l
LJ4503
L04545
LP455l
LQ46l2
LR4642
LS4653
LT472l
LU4762
LV50ll
LW5065
LX5ll4
ZA514l
ZB5204
ZC5240
ZD527l
ZE5306
ZF5347
ZG 540 4
ZH5444
ZI5503
Z15544
ZK5602
ZL5634
ZM5664
PB5675
PCS730
PD5773
PE6025
PG6040
PH6072
PI6l30
PJ6l63
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
HE
PK~6_2Jl
PL6253
PM6301
PN6334
569
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
P06354
PP6405
PQ6445
PR6476
PT654 I
PU6603
PV6646
PW6716
PX6743
PY6767
PZ7037
SA 7063
S87125
SC7163
SD7207
SE7245
SF 7306
SG7365
SH7424
S17463
SK7506
SL7550
RE
LY7607
RE
IZ7660
RE
RE
WR50023
WP22
Indicators, Counters,
Temporaries, etc.
Heading List
Rewind List
Maximum number of Call Words
in Rewind List
570
List String-Out Routine
2
IA
MJ
TV
TU
LA
0
LW12
LW12
CT
LP17
LP23
3
TP
LW13
EW3
4
TP
LV12
WL5
5
6
7
RP
TP
TP
QS
10074 LA7
LV12
LZ
LV22 \ Q }
Q
12
12
RP
TP
CA
10051
LV12
LA13
LB
LY
Zeroize assem. blk & temps.
o
IA
RJ
LB
SY
SYI
Get next symbol (1st six char. sym.
15
EJ
EJ
EJ
TP
QJ
TP
QJ
TP
QJ
EJ
EJ
EJ
EJ
LX14
LB
LX15
LB
LX12
ZA
SY7
Q
LC yes LB6 no
SYll
Q
LBI0 yes LB12 no
SY12
Q
LB12 no ZA4 yes
LX13
ZA13
LX14
LB22 yes
LX15
LB22 yes
LX16
ZA17 yes
16
17
20
EJ
MJ
IJ
LX17
21
22
23
MJ
RJ
EJ
24
MJ
TP
ZJ
o
1
10
11
1
2
CD
3
4
5
6
7
10
11
12
13
14
25
26
Begin List String-out
Exit to string-out control
Preset add. 1st var. indo word -1
Preset inst. to preset add. in assem.
blk.
Preset add. of 1st C.W. in S.O. -1 in
"'C.W. to S.O." rtn.
Zeroize variable count in String-out
Zeroize Heading List
Set "list'" indicator in fixed
location 12.
~ A)
o
LY44
Sym. = comma?
Sym. = semi-colon?
1st var. = -tape-? Yes~Alarm #1
Yare indo ~Q
Sym. = variable?
Digit or dec. pt. ind.~ Q
Sym. possibly = constant?
Sym. contains letter ind. ~ Q
Sym. = constant? Yes ~ Alarm #2
Sym. = " ~ .-? Yes ---+- Alarm #3
Sym. = comma?
Sym. = semi-colon?
Sym. = open parenthesis? Yes ~
Alarm #4
Sym. = close parenthesis?
No~Alarm #6
Decrease parenthesis level; close
parenthesis on level zero?
Yes ~Alarm #5
Get next symbol
Sym. = tape? Yes ~ tape designation
phase
LB20
ZA30
LB22 no
SY
LX12
o
ZA24
SYI
LB25
o
LB4
No~
LY44
A
ZA37 no LF yes
CD
"'Tape" on parenthesis level zero?
No~ pri~tout #7
CA
571
Variable Phase (Fix & Fl. Pt. Var. Section)
CD
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
IA
LC
RJ
RH
TP
TP
TJ
SY2
LV2
SY5
TA
0
TA4
Q
LV5
LV5
LV6
LV7
LVIO
LV43
RJ
MJ
TP
TP
QT
EJ
EJ
EJ
EJ
TJ
MJ
TP
RHI
LY16
A
MC6 yes
TAl
LC17
Q
TF2
A
LD
LE
MC6
MC2
0
ZB
ZB5
LVII
TF
TP
TP
SY2
LV12
RJ
TK
TFI
TF3
TKI
TP
QJ
CA
SYIO
Me yes
LC25
Q
Check for legal variable sym.
Variable Sym. ~ temp.
6 in "V" --7 A
# char. in sym. > 6?
Var. in Combination List?
Not in List
Var. in Comb. List ~ CW --+ Q
v
1st two octal digits of CW ~ A
Subscripted var. (77---· ) CW?
Function (66--- ) CW?
Floating point var. (65----- ) CW?
Fixed point var. (64---) CW?
Pseudo Ope (5----) CW? --+ Alarm #8
No; Library (4----) CW? ~ Alarm #9
Number of words in file (3 in "u")~
1st line file build-up
XS3 sym. ~ 2nd line file build-up
Format (zero)--74th line file build-up
Obtain avail. last 3 digits for 65-----or 64-- CW
Fix. pt. indo ~ Q
MC4 no
Non-Subs (Fix & Fl. Pt.) Var. Section
Fix.
Pt.
Yare
o
IA
AT
MC
LVIO
TF2
1
RJ
'IE
'lEI
2
RJ
LP
LP4
3
MJ
AT
o
MC7
TF2
6
RJ
RJ
LV7
TE
LP
7
TP
TF2
Q
10
11
RJ
LO
RJ
LR
RJ
SY
LX14
LX15
LOI
LRl
SYI
4
5
Fl.
Pt.
Yare
12
13
14
15
EJ
EJ
MJ
CA
o
TEl
LPI
LB22
LB22
ZB12
64-- C.W. ~ 3rd line file build-up
Add fix pt. var. file-+ Combination List
Adv. & ek. var. count & set fix pt.
ind. bi t.
65----- C.W.~ 3rd line file build-up
Add fl. pt. var. file~ Combination List
Adv. & ck. var. count & set fl. pt. indo
bit
64--- or 65----- C. W. ~ ~ (input var.
list S.O.)
64--- or 65---· C.W.~ var. list S.O.
Store XS3 sym.for Hdg. Edit
Get next sym.
Sym. = comma?
Sym. = semi-colon?
No. ~ Alarm #10
MC16
572
Subscripted Variable Section
®
I
0
IA
RJ
LD
LO
1
RJ
LP
LOI
LPl
2
3
RJ
ill
ill 1
TV
TA5
LY
4
TP
LV12
LY45
5
6
7
10
RJ
EJ
SY
LX16
0
LV12
SYI
LDlO
ZB2l
LY46
11
12
13
14
15
16
RJ
RJ
QJ
QJ
LR
I.Rl
SY
SYI
SY7
Q
MD yes LD15 no
SYll
Q
ND yes LD17 no
17
20
21
22
23
EJ
EJ
EJ
EJ
EJ
LX17
LX13
LX14
LX15
LX16
ND20
ZB27
LD12
LD12
ZC
MJ
0
LD25
ZC6
24
MJ
TP
1P
TP
CA
77---- CW ~ Var. List S.O.
Adv. & check var. count & set Fl.
Pt. Ind. bit
Store XS3 sym. for Heading Edit
No. of subscripts'-+ Index ctr
(cI)
Zeroize count of subscripts processed
Get next sym.
Sym. = open parenthesis?
No=> Alarm #11
Set subscript parenthesis level
= zero
Store XS3 sym. for Hdg. Edit
Get next sym.
Variable ind. -+ Q
Sym. = variable?
Digit or dec. pt. ind. ~ Q
Sym. possible = constant? (1st
cha~ = digit or dec. pt.)
Sym. = close parenthesis?
Sym. = l:l. .? Yes ~ Alarm #12
Sym. = comma?
Sym. = semi-colon?
Sym. = open parenthesis? Yes
... Alarm #13
No ~ Alarm #14
573
IA
MD
o
EJ
LX12
1
RJ
RH
2
4
TP
TJ
RJ
LV2
SY5
TA
5
MJ
0
6
TA4
LV5
LV10
LV7
A
ND7
11
TP
Q'I
EJ
TJ
12
12
TJ
LV6
ZC21
13
14
15
TJ
LV5
13
MJ
0
ZO
ZE
TJ
LV43
ZF6
16
17
20
21
MJ
0
ZF
TP
TP
SYIO
MD21
LVII
Q
ZC21 no
TF
22
23
24
TP
TP
RJ
SY2
LV12
TK
TF3
TKl
25
26
27
AT
RJ
TP
LV10
TE
TF2
TF2
TEl
Q
30
31
32
MJ
0
ND7
TP
QJ
CA
SYIO
ND11 yes
MD33
ZC21 no
11
3
7
10
16
17
QJ
ZC14
RU1
A
MD31 yes
TAl
MD17
Q
M015
TF!
Q
Variable = "Tape"? Yes ===0 Alarm #15
Legal variable sym. (No; Alarm string-out
subs)
6 in "v" ~ A
No. char. in sym. > 6?
Var. in Comb. List?
Not in list
Var. in 1ist~CW ~ CAr
1st two octal digits ofCW -+ A
64--- CW?
(Fix Pt. Var.)
4·---- or 5---- CW?
(Lib. Rtn. or
Pseudo Op.)
65--- CW?
(fl. pt. var.) Yes ~
Alarm #16
66--- C.W.? (function) Yes~ Alarm #17
77--- C.W.? (subs. var.)~Alarm#18
4---- C. W.? (pseudo op.) Yes ~ Alarm
#20
5---- CW?
(library rtn.) ==;> Alarm #19
Fix pt. var. ind.~Q
Sym.= fix pt. var2 No ~ Alarm #16
No. of words in file (3 in "u") --+ 1st
line file build-up
XS3 sym.~ 2nd line file build-up
Format (zero) -+ 4th line file build-up
Obtain avail. last 3 digits for 64--CW
64---- ew ~ 3rd line file build-up
Add fix pt. var. fi Ie ~ Combinat ion Lis t
64---· ew ~ Qv (input for var. list
S.O. )
Fix pt. var. ind. --+ Q
Sym. = fix pt. var.? No ~ Alarm #16
574
@
o
1
.L
IA
TP
QJ
NO
SY13
Q
ZF14 yes
ND2 no
2
RJ
RD
RDl
3
TP
SY2
RS4
4
5
6
RJ
TP
RS2
RS3
RJ
GW
RS
A
GWl
7
RJ
LO
LOl
1.0
11
RJ
RA
RJ
LR
LY45
SY
LX14
LXI5,
LX13
LX17
LRI
LV
SYI
LDII
LOll
ZB27 yes
NQ20
ZF24
LD12 no
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
EJ
EJ
EJ
EJ
MJ
IJ
RJ
TP
EJ
MJ
RJ
EJ
EJ
EJ
o
LY46
LR
LY45
LY
o
SY
LX14
LX15
LX13
MJ
o
CA
ND32
LRI
A
ND25
ZG
SYI
LB22
LB22
ZG5
ZG12
Superscript indicator --+ Q
Sym.= Superscript const.; Yes::::::> Alarm
#21
Const.= fix pt.? (No; Alarm in string-out
subs)
XS3 fix point COns tant ~ input convers ion
routine
Convert XS3 const.~ octal
Octal constant ~ A
Constant~ Const. Pool & Const. CW
~
64---- or 67---- CW ~ var. list
string-out
Store XS3 sym. for Hdg. Edit
Adv. count of subscripts processed
Get next sym.
Symbol = comma?
Symbol = semi-colon?
Sym.= End sent. sym? Yes ==> Alarm #12
Sym. = close parent.?
No ==> Alarm #22
Is this close subscript parent.? (i.e.
parent. on level zero)
Store XS3 close parent~ for Hdg. Edit
No. of valid subscripts Vrocessed ~ A
Correct no. of subscripts for subs. var.?
No ====> Alarm #23
Get next sym.
Sym. = comma?
Sym.= semi-colon?
Sym.= end sent. sym.? Yes ~ Alarm #24
No ==> Alarm #25
575
Variable Phase (Function Section)
21
0
1
IA
LE
RJ
RJ
LO
LP
2
RJ
LR
LRI
3
RJ
4
EJ
SY
LX16
SYI
ZG16
5
6
MJ
0
MC13
TV
TP
TP
LW26
LV12
SZ2
SY
LX17
LX16
LX12
LX13
LEll
7
10
11
RJ
12
13
14
15
EJ
EJ
EJ
EJ
MJ
RA
IJ
MJ
CA
LY47
LY50
[SYl]
LE20
LE17
ZG27
ZG33
0
LEll
LY47
LY47
LEll
0
LE22
66--- CW ~ Var. list string-out
Adv. & check var. count. & set indo bit
(fl. pt.)
Store XS3 symbol for Hdg. Edit
Get next s ym •
Sym.= open parent.? Yes~Alarm
#26
N()==> function symbol w/o arguments
LOl
LPI
Set funct ion parent. level ~ zero
Function symbol ~ temp.
yes
yes
yes
yes
LVI
Sym.=
Sym.=
Sym.=
Sym.=
Alarm
close parenthesis?
open parenthesis?
"Tape"? Yes => Alarm #27
space-period ( ~.)? Yes ====>
#28
Advance function parent. level by two
Close parent. for arguments of function?
[30000]
576
Tape Designation Phase
IA
RJ
EJ
TP
LF
SY
SYI
LX13
ZH
10
EJ
EJ
EJ
SYll
NF yes
SY7
LF13 yes
LX14
LX15
LX16
Q
LF4 no
Q
LF6 no
ZH4 yes
ZH4 yes
ZHlO yes
11
EJ
LX17
ZH14 yes
12
13
MJ
RJ
o
ZH20
RHl
14
15
16
17
20
21
22
23
TP
TJ
RJ
MJ
TP
QT
LV2
SY5
TA
o
1
2
3
4
5
6
7
24
25
26
27
30
QJ
TP
QJ
EJ
TJ
TJ
RH
o
TA4
LV5
LVlO
LV43
LVlO
MJ
o
TP
SYIO
LF30 yes
LVII
QJ
TP
31
32
33
TP
RJ
SY2
LV12
TK
34
35
AT
RJ
TE
36
SP
37
40
41
42
43
MJ
SP
MJ
TP
QJ
TP
CA
LVlO
TF2
o
TA4
o
SYlO
NF26 yes
LF44
A
LF42 yes
TAl
LF26
Q
A
LF40 yes
ZH32 yes
ZH25 yes
Z1
Q
ZI no
TF
TFI
TF3
TKI
TF2
TEl
17
NF12
17
NF12
Q
Z1 no
Get next symbol
Sym. = " ~ . U? Yes => Alarm #29
Digi t or dec. pt. ind. ~Q
Tape sym.= constant?
Var. ind. ---+ Q
Tape sym.= variable?
Sym. = comma? Yes ==> Alarm #30
Sym.= semi-colon? Yes => Alarm #30
Sym.= open parent.? Yes ~ Alarm
#31
Sym.= close parent.? Yes--""7Alarm
#32
No ~ Alarm #33
Sym.= legal variable? (Alarm in
string-out subs)
6 in "v" ~A
No. of char. in sym. > 6?
Yare in Combination List
Not in list
Va r. in 1 is t ~ CW
> Qv
1st two octa 1 digi ts of CW ~ A
64--- CW?
(fix pt. var.)
4---- CW?
Pseudo Op.) Yes==> Alarm
#35
5---- CW?
(Lib. R tn.) Yes ~ Alarm #34
No ~ Alarm #36
Fix. pt. var. ind.~ Q
Sym. = fix pt. var.? No ~ Alarm #36
No. of words in fi Ie (3 in "u") ~lst
line file build-up
XS3 sym.~ 2nd line file build-up
Format (zero) ~ 4th line fi Ie bui ld-up
Obtain avail. last 3 digits for 64--CW
64--- CW ~ 3rd line file build-up
Add. file to Comb. List
64--- CW ~ nu" of A
64--- CW
~
"un of A
Fix. pt. ind.~ Q
Sym. = fix. pt var.?
577
No
~
Alarm #36
Tape Designation Phase (cont.)
o
1
2
3
IA
RP
EJ
EJ
RJ
NF
20011
LXI
LX
RD
NF2
NF5
ZM
RDI
o
10
MJ
TP
RJ
TP
RJ
RS2
RS3
GW
11
12
SP
TP
A
13
14
15
16
TU
RP
EJ
SP
WR
[3000([J
WRI
WR
17
20
21
TJ
TP
QJ
LW24
22
4
5
6
7
ZI7
RS4
RS
A
A
GWl
17
WL4
Q
NF14
NF16
NF26 yes
o
Tape sym.= XS3 {2,3,4,5,6,7,8 9,10
Tape number =l? Yes=> Alarm #56
Tape number = fixed point? (Alarm in
string-out subs)
===> Alarm #37
f
Convert XS3 tape number.
Octal tape # ~ A
Tape number ~ const. pool & const. CW
===>Qy
(const. tape #) ~ "u" of A
67---- CW
Tape # CW
(67---- or 64----)~ S.O.
lis t.
Tape # CW
in Rewind List
Count of Tape # CW's
in Rewind List
~A
Max. no. CW's
A
NF22 no
Q
NF26
ZM4
R.L\
WR
LV15
(Q+) ==> Alarm #57 printout
(Q-) ~Printout made previously
Adv. (1 in "u" & "v") count of CW's
23
24
25
26
27
30
31
32
SA
TV
TP
RJ
EJ
EJ
EJ
EJ
LW25
A
WL4
SY
LX13
LX14
LX15
LX16
o
in Rewind List
Form next avail. add. in Rewind List
NF25
[300001
SYI
NF35
NF35
NF35
ZI16
33
EJ
LX17
ZI22
34
35
36
MJ
0
UZ3
ZI26
TP
ZJ
CA
ZI35
NF37
A
yes
LG no
in Rewind List (18 10)
Tape # CW ~ Rewind List
Get next symbol
Sym. =
" 6.. U?
Sy~n. = comma?
Sym.= semi-colon?
Sym.= open parent.? Yes ~ Alarm
#38
Sym.= close parent.? Yes -?Alarm
#39
No ~ Alarm #40
Error count for sentence
Has there been error? Yes ===> Warning
#41
578
Heading Phase (Edit Variable Names)
o
IA
2
TP
SS
AT
3
4
TU
1
ST
LG
LV17
WL5
LW21
A
1
.L
LY2
LV42
LW22
WL5
LW23
LY3
LG22
LY
LYI
LG21 no
SYI
LG12 yes
LG12 yes
LG26
6
TP
TP
7
IJ
10
11
12
13
14
15
TP
RJ
EJ
EJ
EJ
LV
SY2
LX13
SY
LX14
LX15
LX16
16
EJ
LX17
ZJ
17
20
21
EJ
MJ
o
LX13
W
ZJ4
RA
LG22
LV22
22
TP
[30000)
LTI
23
24
RJ
RA
LT
LYI
LT2
LV32
0
10025
LV12
LG30
LG7
LH
LY17
5
.5 in "v" ' - + A
(5 - # var.) x 2 ~"v" of A
+ add. in Hdg. List ~ preset add.
1st var. in Hdg. List - 4
Address 1st col. Hdg. - 4 ~ temp.
Preset add. of 1st var. indo word
Variable count ~ index counter (Cl)
Preset avail. add. in assem. blk.~Init.
(A)
add.
25
26
27
EJ
MJ
RP
TP
CA
A
L.T
All variable names edited?
Sym.=" ~ . "? Yes ~End list string-out
Get next symbol
Sym.= comma?
Sym.= semi-colon?
Sym.= open parent.? Yes ~ Ii tIe or
column heading.
Sym.= close parent.? Yes -+ Alarm
#42
Sym.=" ~. "? Yes ~ end list string-out
No ~ Warning #43
Adv. "u" of NI ~ add. next var. ind.
word
Yare indo word ~ input edit. var.
subroutine
Edited variable ~ Hdg. List
Adv. avai 1. assem. blk. add. by 4 ~ add.
next var.
Zeroize assem. blk. (258 words)
579
Heading Phase (Column Heading Section)
@
~
@
@
o
IA
LH
TF
GN4
A
1
EJ
LV 30
LI
2
TU
LW22
LH2l
3
TP
LY3
LY2
4
RA
RJ
TP
TP
EJ
EJ
EJ
RJ
RJ
LVl3
LP27
LY
IJ
TP
LY13
LP
LV12
GN4
LX20
LV30
LV
LQ
GN
0
LY
LW23
UI16
LH34
UI4l
LQl
GNI
LIllO
LH13 no
LYI
20
RA
LH2l
LV22
21
TP
[30000J
LTI
22
TV
LY15
LTI
23
24
RJ
RJ
LT
GN
LT2
GNI
RJ
EJ
EJ
SY
LX14
LX15
LX13
LX16
LX17
SYI
LH25
UI25
LJ
LH36
ZJ13
MJ
0
RA
MJ
TP
RP
TP
RJ
RJ
EJ
LY
0
GN4
10025
LV12
LQ
GN
LX21
ZJ17
LV
UI13
MJ
0
CA
LH45
5
6
7
10
11
12
13
14
15
16
17
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
MJ
EJ
EJ
EJ
A
A
UI5
LY17
LQI
GNl
ZJ25
LHIO
Get next chara cter ~ A
Char.= open parent.? Yes ~ title
section
Preset "u" of TP --+ Add. Is t var. ind.
word - 1
Preset avail. add. in Hdg. List ---+ add.
1st col. hdg. - 4
Set col. hdg. bit in hdg. indo ~ 1
Adv. & ck. col. hdg. r.ount
Set level indicator (C l ) --+ zero
Char. = close parent.
Char. = open parent.
Char. = " ~ "?
Store XS3 character for hdg. edit.
Get next char. --+ A
Close parent. on level zero?
Preset avail. assem. blk. add. ~ initial
add.
Adv. "u" of NI ---+ Add. next var. indo
word
Yare indo word ~ input edit col. hdg.
routine
Char. count --+input edit col. hdg.
routine
Edit col. hdg.
Get next char. (throwaway close parent.)
Get next sym.
Sym.= comma?
Sym.= semi-colon?
Sym.= " ~ . n? ---;. end list S.O.
Sym.= open parent.?
Sym.= close parent.? Yes ~ Warning
#44
No ---+ Warning #45
Adv. parent. level by 1
Char. ---+ A
Zeroize assem. blk.
Store XS3 char. for Hdg. Edit
Get next char.
Char. = period? Yes ~Warning #46
580
Heading Phase (Title Section)
o
1
2
3
4
5
6
@
@
IA
TP
RA
TP
TV
TP
TP
RJ
7
EJ
10
EJ
11
EJ
12
13
14
15
16
17
20
21
RJ
MJ
RA
MJ
1J
RJ
EJ
MJ
RJ
RJ
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
RJ
EJ
EJ
EJ
EJ
EJ
MJ
TP
RP
TP
RJ
RJ
EJ
MJ
CA
LI
LV12
LYl3
LV23
LV20
LW4
LVl2
GN
LX20
LV30
LV
LQ
0
LY
0
LY
GN
LX20
0
LS
GN
LY
LV33
LYll
LQIO
LQll
LYl5
GNI
LIl6
LI14
L136
LQ22
L16
LV
L112
L112
GNI
L122
ZJ32
LSI
GNI
SY
LX14
LX15
LX16
LX13
LX17
SY1
L124
L124
LI33
0
GN4
10025
LVl2
ZK4
A
LQ
GN
LX21
0
L142
LJ
ZK
LH2
LY17
LQ22
GNI
ZKl3
LI7
Set level indo = zero
Set title bit in hdg.indicator ~ 1
Preset index (C2)
Preset char. shift
Preset initial add. in assem. blk.
Zeroize char. count.
Get next char.
Char.= close parent.?
Char.= open parent.?
Cha r . = " ~ "?
Store XS3 character for title edit
~®
Adv. parent. level by I
Close parent. on level zero?
Get next char.
Char.= close parent.
No =>Alarm #47
Edit and store title for edit
Get next char. (Throwaway close
parent.)
Get next sym.
Sym.= comma?
Sym.= semi-colon?
Sym.= open parent.?
Sym.= " ~ . "? ~ end list S.O.
Sym.= close parent.? Yes~ Printout
#48
No ==> Printout #49
~@
Zeroize assem. blk.
Store char. ( ~ ) for title edit
Get next char.
Char.= period? Yes ~ Warning #50
581
End List String-out
fftle,
o
IA
TP
LJ
EW3
LY15
1
RA
LY15
LV15
2
TP
QJ
QJ
QJ
TV
LY13
LJ4 yes
LJ6 yes
LJ16 yes
LY15
Q
3
RP
TP
30074
LZ
LJll
[30000]
TP
LV37
4
~
col. hdgs.
& var. 7
names 10
Add. of last entry in string-out ~
temp.
I in "u'" & "v" adv. ~ ini tial add. for
headings in string-out.
Hdg. indo ~ Q
Are there column hdgs.?
Is there title? (w/col. hdgs.)
Is there title? (w/o col. hdgs.)
LJ5 no
LJ13 no
LJ27 no
LJIO
Hdg. list (title-col. hdgs.-var. names)
~S.O.
11
12
Col. 13
hdgs. 14
& var. 15
names
Ti tle& 16
var.
names 17
20
21
22
®
23
@
@
Yare
names
24
25
26
27
30
31
32
MJ
o
TV
RP
TP
LY15
30050
LZ24
WL6
LJ33
LJ15
LJ25
[30000]
Hdg. count
LY15
LJ20
RP
TP
TV
RA
30024
LZ
LJ20
LJ24
LJ21
[30000]
LJ24
LV42
RP
TP
TP
30024
LZSO
LV41
LJ25
[30000]
WL6
LJ33
LJ31
LJ32
MJ
0
33
TV
RP
TP
TP
TU
LY15
30024
LZSO
LV42
LY15
34
CC
30000
LX22
35
RS
LYI5
LWI6
36
AT
WL6
Q
37
40
41
QT
LV40
RJ
WI
WL
WTl
MJ
0
LA
CA
LJ42
5.0.
Hdg. List (col. hdg. and var. names)
~
TV
(6010)~
5.0.
Title~S.O.
AdV: by 2010~Add. following title in
strIng-out
Yare names~S.O.
Hdg. count (4010)~ 5.0.
Hdg. List (var. names)~S.O.
Hdg. count (2010)~ 5.0.
Preset U '., of NI~ add. of 1st word of
hdgs. in string-out
Fast feed 1 sym. ~ 1st char. of hdgs. in
string-out
No. of words in 5.0. wlo hdgs. ~"'u'" &
"v'" of A
No. of words in 5.0. including hdgs.~
[30000]
WL6
LJ34
lM
Q
Word
count~ "v" of
String-out~tape
~ String-out Exit
582
1st word of 5.0.
Adv. and Ck. Var. (Col. Hdg.) Count Subroutine
o
Fl. Pt. 1
Ent.
2
3
Fix Pt. 4
Ent.
5
6
Delete 7
sym.
10
before til
1tTape'~ 12
@
13
14
15
16
Preset 17
at be- 20
gin
21
list S.O.
22
Preset 23
at
24
begin
list
25
S.O.
26
Col.
27
Hdg.
30
Ent.
31
32
@
®
33
34
35
@
36
37
40
IA
MJ
TU
TU
MJ
TU
TU
SP
TJ
MJ
RJ
EJ
EJ
MJ
AT
RA
TP
SP
TU
LP
0
LW
LW2
0
LWI
LW3
WL5
LV17
[3000 oJ
LP17
LQ3
LP6
LP17
LQ3
o
A
LPl5 yes
ZK17
SYI
LF
ZA13
LPII
WL5
LV
[30000]
17
LQ2
RA
TP
TV
LP23
[30000J
LW20
LV22
LQll
LQl
TU
LQll
ZL2
MJ
SP
TJ
MJ
AT
TP
TP
TV
0
LP36
TP
TV
MJ
GA
0
SY
LX12
LX13
0
LV
LP17
[30000]
LP17
LY14
WL5
0
LV
LW4
LV12
LWll
LV23
LV20
0
o
LP32 yes
ZK26
LY14
LQll
r
Vl
Set up inst. for fl. pt. indo
Preset add. of fl. pt. char. limit
Preset add. of fix pt. char. limit
Var. count ~ A
5 > # variables?
No => Printout #51
Get next sym.
Sym.
tape? ~tape designation phase·
Sym. = ,,~ . "? Yes.::::> Alarm #3
=
Adv. var. count ~ list string-out
Fix or fl. pt. indo
~
var. indo word
Preset add. of char. count (var. indo
word)
Adv. NI to preset next add. in assem.b~
Preset add. in assem. blk.
Preset ent. ~ store XS3 char. for var.
name
Add in assem. blk.~ trans. inst. for
warning print
Col. hdg. count ~ A
# Variables > # col. hdgs.?
No ==> Warning #52
Adv. col. hdg. count by 1
Preset add. in assem. blk.
~
&.I .... ~f&.J
LQl
LYll
LQIO
LP
Preset ent. ~ store XS3 char. for
column hdg.
Preset index (C2)
Preset char. shift
Exit
LP41
Call Word ~ Var. List String-out
o
1
2
3
IA
MJ
TP
RJ
LO
0
Q
EW
[30000]
EW2
EWI
MJ
-0
til
CA
L04
Ca 11 word ~ ··v" of EW2
Call word ~ string-out
583
Store XS3 Char. for Hdg. Edi t
@)
Preset
in
yare
count
rtn.
are
Ent.
0
1
2
3
4
5
6
in
Yare
count
rtn.
Preset 11
in
yare
count
rtn.
12
@
Col.
Hdg.
Ent.
~
13
14
15
16
17
20
21
Title~2
IA
MJ
MJ
TP
TJ
MJ
TU
RA
LQ
0
0
[30000J
[3000q]
0
LQ2
[30000J
RS
SP
LQIO
Input:
MV" preset ~ LQ2 or LQ17
Char. count ---+ A
23
(27 » # char.?
8
No 10=>Warning
#53
Preset .. u.... of NI ~ char. count add.
Adv. char. count by I in «v«
Q
LV2
[300001
Decrease shift count
Position char. in A
AT
[30000J
[30000J
Char.
IJ
LYll
LQ
RA
TV
TP
MJ
TP
TJ
MJ
[TP
LQll
LV16
LV17
LV15
LQIO
LYll
LQ
Current word full? (index preset by
yare count routine)
Adv. current assem. blk. address
Reset shift count
Reset index
0
LY15
LV14
0
A
LQ25 yes
ZLIO
LY15
A]
LV34
LQ25 yes
ZL20
LV
Ent.
@
XS3 char. in "v'''' of A
[30000]
[30000]
A
LQ5
ZL
LQ6
LV
23
24
25
TJ
MJ
RA
0
26
27
TP
MJ
CA
GN4
Q
0
LQ7
LY15
~
current word in assem. blk.
Char. count ~ A
23
(27 ) > # char.?
8
No 10~ Warning
#54
Ti tIe char. count ~ A (reset ~ MJ-OLQ after printout; not preset, transferred from drum before operating)
119
(1678) > # char.?
No 10
==>Warning #55
Adv. title (col. hdg.) char. count by
I in "v"
LQ30
584
Store XS3 Sym. for Heading Edit
II\
(@
0
1
2
3
4
5
6
7
10
MJ
TP
TP
r~Q
r
QT
RJ
MJ
CA
LR
0
SY5
SY2
LY12
0
T
'T4"\
LJ.v
LVS2
LQ
0
LRll
Input:
[30000]
LY12
LY3
LR5l
LR
/
~l j
XS3 sym. in SY2,# char. in SY5
# Char in sym. ~ index ctr. (C 3 '
XS3 sym. ~ temp.
All char. trans. ~ Assem. blk.
Next XS3 char. in sym. ~ HV
XS3 char. ---+ ltv" of Q
Store XS3 char. for lHg. Edit
LR3
585
H
oi Q
Edit Title Subroutine
1
IA
MJ
TV
o
LS
0
LW14
[30000]
LS31
2
SP
DV
LY15
LV31
o
3
4
ZJ
RA
LSS yes
5
Q
LS6 no
LV
6
RS
LS31
Q
7
SP
Q
10
ST
SP
EJ
SA
Q
12
13
14
DV
LV
LY15
LV34
LV26
LVI
15
16
DV
ZJ
LV2
LS17 no
Q
17
20
TJ
TU
LVI
LW23
LS23
LS27
21
TU
LW4
LS30
22
23
MJ
TU
0
LW4
LS25
LS27
24
TU
LW26
LS30
25
26
27
30
31
32
MP
TV
A
A
33
RA
RA
11
LYll
o
LS44
o
A
PTeset hdg. list add. ~ middle add. of
title
Char. count ~ A
;~~; # full words in 1/2 title ~ Q
12
Is there partial word?
Adv. Q by 1 ===>total # words in 1/2
title ~ Qv
Oecrease hdg. list add. ~ add. initial
title word in hdg. list
(# words in 1/2 title) * 2 = total # words
in title ~ A
#: Words in ti tIe - 1 ~ index ctr. (C )
2
#: Char. ~ A
# Ch a r . = 119
10
#: Ch a r. + 3 -+ A
,~char. + 3 --+ A
2
@
SP
SA
[30000]
[30000]
LS37 yes
LV2
LS30
44
[30000]
LT
0
RA
~OOOOJ
LS27
LS30
LS31
LYll
34
35
36
37
40
41
MJ
0
SP
AT
TV
Q
LW15
LS31
LV22
LV22
LV
LS27 no
LS
20
LS42
LS43
42
43
[RP
TP
30000
LY20
LS]
[30000J
IJ
Char. to shift --+ A
# Char. to shift = zero?
No ==> shift 1
char.
2 > # char. to shift?
Pr-eset "SP" ~ add. of 1st word in assem.
blk.
Preset "SA" ~ add. of 2nd word in assem.
blk.
#
Preset "SP" ~ add. of 2nd word in assem.
bik.
Preset "SA" ~ add. of 3rd word in assem.
blk.
(# char. to shift) x 6 = shift count
Preset shift count in "SA"
Current title word from assem. blk.~ A
Position edited title word in AL
Edited title word~ hdg. list add.
Adv. "u" of "SP" by 1
Adv. "u" of "SA" by 1
Adv. "v" of "LT" by 1
All of edited title ~ hdg. list?
words edited title ~"u" of A
Add. "w" to dummy repeat
Preset add. of initial title word in hdg.
list
#
Trans. edited title
586
~
hdg. list
44
45
RP
TP
30024
LY20
CA
LS46
LJ
LZ
Trans. 119
587
10
char.
title~hdg.
list.
Edit Variable (Col. Hdg.) Subroutine
2
3
TV
A
LUl5
4
TU
LYI
LU13
5
TU
LYI
LU14
6
RA
LU14
LV22
7
TP
QT
EJ
QJ
TJ
TP
LTI
LV40
LV25
LT24 no
LV27
LV26
Q
LTI
LU23 yes
LTl3 yes
LTl6 yes
LYII
LT20
LYII
1
10
11
®
@
®
LT
IA
MJ
[0
RA
o
12
13
14
15
16
17
o
30000
LY2
MJ
o
TP
LV
LUl5
RA
20
21
22
TP
DV
LTI
LV26
LVI
23
24
25
26
27
30
31
MJ
o
TJ
TJ
TP
MJ
TP
RA
LV31
LV 53
LV26
o
32
33
34
MJ
o
TP
LV
LU15
35
36
37
40
TP
TJ
SA
MJ
CA
SA
RA
LVI
LUl5
LTI
LV30
LV
o
[30000]
30000]
LV23
LV
A
o
A
Exit
Input
Adv. avail. add. hdg. list by 4 in "u"
~ add. next yare in hdg. list
Preset "v" of trans. inst. ~ add. next
yare in hdg. list.
Preset "Sp" inst. ~ add. next var. - 1
in assem. blk.
Preset "SA" inst.~add. next var. - 1
in assem. blk.
Adv. "u" of "SA" by 1 ~ add. next yare
- in assem. blk.
Var. indo word ~ Q
# Char. ~ A & input line
# Char.= 2310v(278)?
Variable floating pt. quan2
1310 > # char.?
Index = 3 to trans. 4 words ~ hdg. list
~@
Index = 1 to trans. 2 words ~ hdg. lis t
Adv. "v" trans. inst. by 1 ~ next add.
hdg. list
# Char. ~ A
# ·Char. + 3 ~ A
# Char. + 3; Quot ~ A
2
LU2
LT33 yes
LT30 yes
LYll
LT35
LYII
LV
LT35
LYII
LVI
A
LU yes
o
~@
12
>
# char.?
10
19 10 > #. char.?
Index = 3 to trans. 4 words
~®
~
hdg. list
Index = 2 to trans. 3 words ~ hdg. list
Adv. "v" trans. ins t. by 1 ~ next add.
hdg. list
~@
Index = 1 to trans. 2 words ~ hdg. list
Adv. "v" of trans. ins t. by 2 ~ add. in
hdg. list.
# Char. ~ Av
1510 > # ch a r • ?
+:= Char, + l~ A
LU2
LT41
588
Edit Var. (Col. Hdg.) Subroutine (cont.)
4
MP
LU
LVI
LVI
LV2
LU4 no
A
5
TV
A
6
TJ
LV24
Q
LU23 yes
LV2
LU14
LUll yes
o
~
@
IA
DV
1
LVI
2
3
DV
ZJ
A
o
7
TP
LV12
A
10
11
MJ
0
RA
LU13
LU14
LV22
12
RA
LU14
LV22
13
14
SP
SA
[30000]
[30000]
[30000]
15
LT
0
[30000]
16
17
20
RA
RA
RA
LU13
LU14
LU15
LV22
LV22
LV
2l
IJ
LYll
LU13
22
23
MJ
TV
0
LT
LV26
24
TV
LUI5
25
26
RP
TP
30004
[30000]
CA
LU27
LU14
44
r
JTI')£"
LoU~U
#char/2; Quot ~ A
Quot + 2 ---+ A
(A) 16 ==> Rem. = # char. to shift ~ A
# Char. to shift = zero?
# Char. to shift x 6 = shift count ~ A
Preset shift count in "v" of SA inst.
7 > shift count? (i.e.,# char. to
shift = 1)
Zero ~ A
Adv. "u" of SP by 1 ~ add. of 1st var.
word
Adv. "u" of SA by 1 ~ add. of 2nd var.
word
Variable word from assem. blk. --+ AL
Add. next word to ~ & shift to position
in AL
Edited word from assembly block ~
heading list
Adv. "u" of SP by 1
Adv. "u" of SA by 1
Adv "v" of trans. ins t. by 1 ~ next add.
in hdg. list
All words trans. from assem. blk.~ hdg.
list
Add. 1st word of var. in assem. blk.~
"u" of TP
Add. for variable in hdg. list ~ nv" oi
TP
LT
[30000]
Trans. words from assem. blk.
wlo editing.
589
~
hdg. list
Fixed Constants
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
0
0
0
0
0
0
0
0
0
0
0
40
0
0
0
0
0
40
0
0
0
0
0
0
0
0
0
20
0
0
0
0
0
0
0
0
0
0
0
0
17
0
0
0
CA
LV
0
0
0
0
0
0
0
0
0
3
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
4
0
0
0
24
0
0
0
0
0
55000
550
55740
557
0
0
0
0
LV54
1
2
6
11
12
77000
66000
65000
64000
3
0
0
27
1
44
5
36
27
0
4
7
27
3
15
17
14
4
0
167
170
24
74
77777
50
24
50000
0
0
0
40000
0
40000
77
23
XS3 space char. ( L\ )
Fl. pt. indo
Fix pt. indo
Flo pt. char. limit (23
= maximum ~
XS3 open parent. character
590
char.)
Relative Constants
IA
LW
LVl2
LVl3
LVl4
LV21
o
o
o
o
LY2(fl
LY24
2
3
o
o
o
o
4
AT
LY20
5
6
AT
AT
AT
LY24
LY30
LY34
LY40
o
1
7
10
11
AT
o
12
o
13
o
14
o
15
RP
16
17
20
21
22
23
24
25
26
o
o
o
o
o
o
o
o
o
CA
Add.
Add.
Add.
Add.
LY30
LY34
LY40
0
LQ17
LW3
LY3
WL6
WL6
LZ12
fl. pt. indo
fix. pt. indo
fl. pt. character limit
fix pt. character limit
To preset add. in assembly block for
XS3 sym. or character store routine
J
To preset inst. to present add. in
assembly block. To preset add. of first
yare indo word - 1
To preset EW3 ~ Add. of 1st CW in
S.O. - 1
Middle add. of title in hdg. list.
30000
LS
WL
WL
LQ
LQ2
Initial add. in S.O. list
LZ44
To preset add. in hdg. list.
To preset add. of var. indo word
Initial address in assem. block
WP = max. no. of tape CW's in Rewind List
Initial add. in Rewind List
0
0
0
LY3
o
LYl7
WP20000
WP
0
LY21
LW27
LYl7
WR
SYl
591
X'53 Codes
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
IA
04
37
LX
77777
77777
77777
77777
77777
77777
77777
77777
77777
03777
24523
22777
77777
77777
77777
77777
00000
00000
00000
00
00
CA
00000
00000
LX25
05
06
07
10
11
12
13
14
04
66
01
21
23
17
43
00
00
77777
77777
77777
77777
77777
77777
77777
77777
77777
77777
07777
77777
77777
77777
77777
77777
00043
00022
00000
00021
00023
1
2
3
4
5
6
7
Servo numbers
8
9
10
TAPE
~
Comma symbol
Semi- eolon symbol
Open parent. symbol "("
Close parent. symbol ")"
Close parent. char.
Period char.
Fast feed 1 sym. (pa cked to left w/zero
fill)
Comma character.
Semi-colon character
592
Alarm
ttl
Alarm
#2
Alarm
#3
Alarm
#4
Alarm
#5
Alarm
#6
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
Alarm
#7
37
40
Al
":t.L
42
IA
RJ
ZA
WA
TP
PB
RJ
MJ
RJ
TP
UP2
TP
TP
TP
RJ
MJ
RJ
TP
RJ
MJ
RJ
TP
RJ
RA
MJ
RJ
TP
RJ
MJ
RJ
TP
TP
TP
TP
RJ
MJ
RJ
TP
RJ
MJ
CA
WAl
UP3
UP
0
LA
WA
SY2
SY3
SY4
PB17
UP2
0
WA
PC
UP2
0
WA
PC17
UP2
LY44
0
WAl
PB22
PB23
PB24
UP3
UP
LB22
WAl
UP3
UP
WA
PD
UP2
0
WA
SY2
SY3
SY4
PD17
UP2
0
WA
PE
TTD,}
UL"
0
ZA43
LA
WAI
UP3
UP
LV
LB22
WAl
UP3
UP
LB22
WAl
PD22
PD23
PD24
UP3
UP
LB22
WAl
UP3
UP
LF
~Exit
~Exit
~Exit
Adv. Parenthesis Level
Var. Phase
~
~
Var. Phase
~
Var. Phase
~
Tape Designation Phase
593
Alarm
u8
Alarm
U9
0
1
2
3
4
5
6
7
10
11
Alarm 12
ulO
13
14
15
16
17
20
Alarm 21
ull
22
23
24
25
26
Alarm 27
U12
30
31
32
33
34
IA
RJ
TP
TP
RJ
MJ
RJ
TP
TP
RJ
MJ
RJ
TP
TP
TP
TP
RJ
MJ
RJ
TP
TP
RJ
TP
MJ
RJ
TP
TP
RJ
MJ
CA
ZB
WA
SY2
PG
UP2
0
WA
SY2
PG16
UP2
0
WA
SZ2
SZ3
SZ4
PH
UP2
0
WA
LY16
PH13
UP2
SY2
0
WA
LY16
PI
UP2
0
ZB34
WAI
PG6
UP3
UP
LB22
WAI
PG23
UP3
UP
LB22
WAI
PH7 }
Print hdg. & set error bit
Pseudo OPe sym.~ printout
Printout u8
Print hdg. & set error bit
Libra ry rtn. sym. ~ printout
Printout u9
Print hdg. & set error bit
PHIO
PHIl
UP3
Symbol
UP
Printout UIO
ZB25
WAI
PH20
UP3
UP
A
LB23
WAI
PIll
UP3
UP
I.A
~
Printout
Print hdg. & set error bit
Subs. var. symbol ~ printout
Printout ull
Print hdg. & set error bit
Subs. var. sym. ~ printout
~
594
Exit
Alarm
#13
0
1
2
3
4
5
Alarm
#14
6
7
IA
RJ
TP
TP
RJ
RA
MJ
RJ
TP
ZC
WA
LY16
PI21
UP2
LY46
0
WA
SY2
11\
TP
TV 1 L
11
12
13
Alarm 14
15
#15
16
17
20
Alarm 21
#16 22
23
24
25
26
27
30
TP
RJ
PJ
UP2
MJ
0
RJ
TP
TP
WA
LY16
PJ 14
UP2
0
WA
SY2
SY3
SY4
LY16
PK
UP2
LV
Alarm
#17
0
1
2
3
4
5
6
7
10
11
12
13
14
RJ
MJ
RJ
TP
TP
TP
L.lJ.U
TP
TP
RJ
MJ
CA
ZC31
IA
RJ
TP
TP
RJ
EJ
ZD
WA
SY2
LY16
SY
LX16
TP
RJ
TP
MJ
TP
PK21
UP2
SY2
RJ
RJ
MJ
CA
0
0
PK22
UP2
I.E21
0
WAl
PI3I
UP3
UP
LV
LD12
WAI
PJ3
PT''''
'" J.~
UP3
UP
LD12
WAI
PJ24
UP3
Print hdg. and set error bit
Subso Varo sym. ~ printout
Printout #13
Adv. subs. parent. level by 1
Print hdg. & set error bit
Illegal sym. ~ printout
Subs. var. sym. ~ printout
Printout #14
Print hdg. & set error bit
Subs. var. sym. ~ printout
UP
Printout #15
LF
WA1
Print hdg. and set error bit
PK15 }
PK1n
PK17
PK4
UP3
UP
LD12
Symbol
WAI
Print hdg. & set error bit
Function symbol ~ printout
Sub. yare sym. ~ printout
Get next symbol
Sym. = open parenthesis? (i.e., are there
arguments w/function)
Parameter for #17~ Uniprint
Printout #17
Current sym. ~ A
--+ Subs. var. sect ion
Parameter for #17A ~ Uniprint
Printout #17A
Delete arguments of function
~ Subs. yare section
PK25
PK32
SYI
ZDll yes
UP3
UP
A
ID13
UP3
UP
I.E 6
LDl2
ZD15
595
~
Printout
Alarm
#18
~
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
IA
RJ
TP
TP
RJ
EJ
TP
RJ
TP
MJ
TP
RJ
TP
TP
RJ
EJ
EJ
EJ
EJ
ZE
WA
SY2
LY16
SY
LX16
PL
UP2
SY2
0
PLI
UP2
LV12
SZ2
SY
LX17
LX16
LX12
LX13
22
23
MJ
IJ
0
24
25
26
27
30
31
32
33
34
35
36
37
40
MJ
0
RA
MJ
LY47
0
RJ
WA
TP
LY50
PJ14
UP2
0
WA
LY50
PI
UP2
0
ZE41
TP
RJ
MJ
RJ
TP
TP
RJ
MJ
CA
LY47
WAI
PL6
PL14
SYI
ZEll
UP3
UP
A
LD13
UP3
UP
LY47
LY50
SYI
ZE23
ZE25
ZE27
ZE34
yes
yes
yes
yes
ZE15
ZE15 no
LD12
LV
ZE15
WAl
PJ24
UP3
UP
LF
WAI
PIll
UP3
UP
LA
Print hdg. & set error bit
Latest subs. var.~ printout
Prior subs. var. ~ printout
Get next symbol
Symbol = open parenthesis
Parameter for #18 ~ printout
Printout #18
Current sym. - - 7 A
~ Subs. var. section
Parameter for #18A ~ Pr intout
Printout #18A
Set parenthesis level = zero
Latest subs. var. sym. ~ temp.
Get next symbol
Sym. = close parenthesis?
Sym. = open parenthesis?
Sym. = "tape"? yes ==> printout #15
Sym. = space-period ( I:l .)? yes--+
printout #12
Close parent. for subscripts?
zero)
Adv. parent. level by 1
Printout #15
~ Tape designation phase
Printout #12
~
596
Exit
( level
IA
RJ
TP
TP
TP
RJ
MJ
RJ
TP
ZF
WA
SY2
LY16
PM
UP2
0
WA
SY2
l()
TO
~L
1.<.1
11
12
13
Alarm 14
15
#21
16
17
20
21
22
23
24
Alarm
25
#22
26
27
TP
RJ
Alarm
#19
0
1
2
3
4
Alarm
#20
5
6
7
.LV
30
31
32
33
34
r v
1
to.
~u
MJ
PM15
UP2
0
WA
SY2
SY3
SY4
LY16
PN
UP2
0
RJ
WA
TP
TP
TP
TP
TP
RJ
TP
MJ
SZ2
SZ3
SZ4
LY16
PO
UP2
SY2
0
ZF35
MJ
RJ
TP
TP
TP
TP
TP
&J
CA
WAl
PM5
PM13
UP3
UP
LD12
WA1
PM23
PM31
UP3
UP
LD12
WA1
PN14
PN15
PN16
PN4
UP3
UP
LD12
WA1
P013
P014
P015
P07
UP3
UP
Print hdg. & set error bit
Lib. rtn. sym. ~ printout
Printout #19
Print hdg. & set error bit
Printout #20
Print hdg. & set error bit
Print hdg. & set error bit
A
LD13
597
Alarm
u23
Alarm
u24
Alarm
u25
Alarm
#26
Alarm
#27
Alarm
#28
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
IA
ZG
RJ
TP
TP
RJ
MJ
WA
LY16
P017
UP2
0
WA
LY16
PP
UP2
0
WA
LY16
PP23
0
WA
SZ2
PQ
UP2
LEll
LR
LE21
LR
0
WA
LY50
PQ15
0
WA
LY50
PH
UP2
0
ZG40
RJ
TP
TP
RJ
MJ
RJ
TP
TP
MJ
RJ
TP
TP
RJ
RJ
RJ
RJ
RJ
MJ
RJ
TP
TP
MJ
RJ
TP
TP
RJ
MJ
CA
WAI
P027
UP3
UP
LB22
WAI
PP15
UP3
UP
LA
WAI
PP36
UP3
ZB24
WA2
PQ5
UP3
UP
LE7
LRI
SYI
LRI
LB22
~
Var. phase
~Exit
}
Save arguments of function
WAI
PQ27
UP3
LB22
WAI
PR12
UP3
UP
LA
~Exit
598
IA
Alarm
#29
Alarm
#30
Alarm
#31
Alarm
#32
Alarm
#33
Alarm
#34
Alarm
#35
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
'Dl
£~u
TP
RJ
MJ
RJ
TP
RJ
MJ
RJ
TP
RJ
MJ
RJ
TP
RJ
MJ
RJ
TP
TP
RJ
MJ
RJ
TP
TP
RJ
MJ
RJ
TP
TP
RJ
MJ
CA
ZH
WA
PR21
UP2
0
WA
PT
UP2
0
WA
PT21
UP2
0
WA
PU
UP2
0
WA
SY2
PU21
UP2
0
WA
SY2
PV
UP2
0
WA
SY2
PV24
UP2
0
ZH37
WAl
nL
UP3
UP
LA
~Exit
WAI
UP3
UP
LA
~Exit
WAI
UP3
UP
LA
WAI
UP3
UP
LA
WAI
PU30
UP3
UP
LA
WAI
PV12
UP3
UP
~Exit
~Exit
~Exit
LA
~Exit
WAI
PV36
UP3
UP
LA
~Exit
599
IA
Alarm
#36
0
1
2
3
4
5
6
Alarm 7
10
#37
11
12
13
14
15
Alarm 16
17
#38
20
21
Alarm 22
23
#39
24
25
Alarm 26
27
#40
30
31
32
33
34
Alarm 35
36
#41
37
40
RJ
TP
TP
TP
TP
RJ
MJ
RJ
TP
TP
TP
TP
RJ
MJ
RJ
TP
RJ
MJ
RJ
TP
RJ
MJ
RJ
TP
TP
TP
TP
RJ
MJ
RJ
TP
RJ
MJ
CA
ZI
WA
SY2
SY3
SY4
PW
UP2
0
WA
SY2
SY3
SY4
PX
UP2
0
WA
PY
UP2
0
WA
PY24
UP2
0
WA
SY2
SY3
SY4
PZ
UP2
0
WA
SA
UP2
0
ZI41
WAI
PW16
PW17
PW20
UP3
UP
LA
~Exit
WAI
PX15
PX16
PX17
UP3
UP
LA
WAI
UP3
~Exit
UP
LA
WAI
UP3
UP
~Exit
LA
---+ Exi t
WAl
PZ14
PZ15
PZ16
UP3
UP
LA
~Exit
WA2
UP3
UP
LA
~Exit
600
0
IA
RJ
1
TP
2
3
Warn- 4
5
ing
6
#43
7
10
RJ
MJ
RJ
TP
TP
TP
TP
Warning
#42
1 1
l.l.
12
Warn- 13
14
ing
15
#44
16
Warn- 17
20
ing
21
#45
22
23
24
25
Warn26
ing
27
#46
30
31
Warn- 32
ing
33
#47
34
35
ZJ
WA
SAl6
UP2
0
WA
SY2
SY3
SY4
S8
WA2
O"l
lUJ
lTD')
TID
Ul. "
UL
MJ
0
WA
SC
UP2
0
WA
SY2
SY3
SY4
SD
I..J
RJ
TP
RJ
MJ
RJ
TP
TP
TP
TP
MJ
RJ
TP
RJ
TP
MJ
RJ
TP
RJ
MJ
CA
Print hdg.; do not set error bit
HP3
UP
~ End list string-out
Print hdg.; do not set error bit
LJ
WA2
S826
S827
S830
UP3
}
~
printout
~
End list string-out
~
End list string-out
WA2
UP3
UP
LJ
WA
SE
UP2
LX13
WA2
5D26 }
SD27
S030 .
UP3
ZJ15
WA2
UP3
UP
SY2
0
Symbol
0
LJ
WA
SE16
UP2
WA2
UP3
UP
0
LJ
Symbol
~
ZJ36
601
~
printout
End list string-out
Warning
#48
Warning
#49
Warning
#50
Alarm
#51
Warning
#52
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
IA
RJ
TP
RJ
MJ
RJ
TP
TP
TP
TP
RJ
MJ
RJ
TP
RJ
MJ
RJ
TP
TP
TP
TP
RJ
MJ
RJ
TP
RJ
MJ
CA
ZK
WA
SF
UP2
WA2
UP3
UP
0
W
WA
SY2
SY3
SY4
SF22
UP2
0
WA
SG
UP2
0
WA
SY2
SY3
SY4
SG15
UP2
0
WA
SH
UP2
0
ZK32
WA2
SF47
SF50
SF51
UP3
UP
L.J
WA2
UP3
~
End list string-out
End list string-out
Print hdg.; do not set error bit
~
UP
W
WA1
SG31
SG32
SG33
UP3
UP
Print hdg.; set error bit
LPII
~
WA2
UP3
UP
W
Var. count subroutine
Print hdg.; do not set error bit
~
602
End list string-out
Warning#53 1
Preset 2
in yare
count 3
rtn.
4
5
A
v
IA
RJ
RP
TP
WA
30004
[30000]
ZL3
SH32
RA
SH32
LV50
TP
RJ
SH14
UP2
LW17
0
UP3
6
TV
7
Warn- 10
ing
11
#54
12
MJ
RJ
RP
TP
13
ZL
WA2
RA
S116
LV50
14
15
16
17
Warn- 20
ing
21
#55
22
23
TP
SI
UP2
LW17
0
WA
30024
LY20
SK15
UP3
UP
LQl
LQ
WA2
ZL23
SK15
LV50
24
25
26
TP
RJ
TP
SK
UP2
ZL27
UP3
UP
LQ22
27
MJ
0
LQ
CA
ZL30
Alarm 0
#56
1
2
3
Alarm 4
#57
5
6
7
10
TV
MJ
RJ
RP
TP
RA
IA
RJ
TP
RJ
MJ
RJ
Truncated yare name (23 char.)~
printout
Put open parent. preceding yare name in
printout
UP
Reset ent.
~'o£~
30004
LY20
RJ
I
rOl
LQ
WA2
ZL13
S116
WA
1
}
CC
WR
TP
RJ
MJ
SL21
UP2
0
CA
ZMll
WAI
UP3
UP
LA
WAI
LV13
UP3
~
LQ
Truncated tit Ie (20 words) ~ Printout
Put open parent. preceding title in
printout
Reset to by-pass printout for remaining
char. of title
NB ~ this instruction used to reset
by preceding instruction
2M
WA
SL
UP2
0
WA
LQ
Truncated column heading (23 char.)~
printout
Put open parent. preceding col. hdg. in
printout
Reset ent.
}
~
~Exit
UP
NF26
603
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
Li st String-out Alarm Texts (Alarm Heading 27 )
10
PB
IA
40 PBl
16
Printout #1
lJ.
W 0 R 0
72101
71 51542
66 24523
T A P E , lJ.
02101
24 52523
A P P E A R
02454
S ~ A S lJ. F
65 01246
50131
34 54656
I R S T ~ V
60170
24 54342
42546
A R I A B L
30 01665
10125
E lJ. T 0 lJ. B
30 01463
E lJ. L I S T
46566
E 0
30 27220
10154
lJ.lJ. R
30 65660
E S T l1 0 F
15131
lJ. S E N T E
01 65305
06630
26300
50
N C E l1 N 0
15051
66 01263
33026
T lJ. C H E C
45 30272
K E 0 . 77 77
27777
40 PB20
13
Printout #2,
26 51506
C 0 N S T A
56624
50 66210
17777
N T , lJ. 77 77
0
0
0
0
0
0
0
0
0
21 01244
, l1 A M 0 N
75150
32 01702
45434
G ~ V A R I
24 25463
A B L E S lJ.
06501
66 51012
53001
T o ~ B E lJ.
46 34656
63027
L r S T E 0
22 77777
77777
. 77 77 77 77 77
CA
PB33
.
- ---- -- - - -
604
3
4
5
6
7
10
IA
40
30
01
50
47
47
24
30
25
11
66
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
54
31
30
51
26
40
51
24
30
71
34
01
27
01
30
67
52
24
30
30
47
24
30
25
66
o
1
2
CA
PC
PC1
50270
65305
26300
25514
51503
54342
65016
30014
30272
30656
01653
50263
66012
45302
PC 20
52305
54305
65346
33342
65015
52543
30270
24274
50660
25652
66302
54342
21012
24546
51503
54342
65016
30014
30272
PC43
16
15131
06630
16573
60124
20170
42546
65101
63465
20101
60151
05066
00150
63330
72201
23
00152
06633
52101
63301
05166
02630
12573
42426
10165
65434
70170
42546
45252
50124
20170
42546
65101
63465
27777
END ~ 0
~ SEN T
Printout #3
F
E
N C E ~ S y
M B 0 L ~ A
M 0
N
G ~ V
A R I A B L
ES~TO~
BE~LIS
TED • ~~
REST~O
F~SENT
ENCE~N
T ~ C H E
C KED • ~
o
Printout #4
OPE N ~ P
ARE N T H
ES I S , ~
~
IS~NOT
W H I C H
L\p
R E C E
DED~BY
~ A D J A C
ENT~~S
D B S
PTE
C R I
D ~ V
A R I A B L
E,~APP
EAR
S ~ A
M 0 N G ~ V
A R I A B L
ES~TO~
BE~LIS
TED
605
•
77 77
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
40
26
52
33
71
66
30
34
30
30
47
24
30
25
66
40
65
21
0
0
0
21
32
65
30
30
CA
IA
0
1
2
3
4
5
6
7
10
11
12
40
52
33
52
34
54
52
66
30
01
24
CA
PD
PD1
46516
24543
30653
34663
01265
65525
50320
50012
24546
51503
54342
65016
30014
30272
PD20
73472
01777
0
0
0
01244
01346
01665
01463
27227
PD32
16
53001
05066
46501
35167
15454
15027
15152
45252
50124
20170
42546
65101
63465
27777
12
55146
77777
0
0
0
75150
63047
10125
46566
77777
PE
PEl
24543
30653
54302
50320
27210
30210
01525
54467
01010
34543
PE13
12
05066
06501
63027
17151
16624
15051
45152
30101
10152
02722
C
L
0 S E ~
Printout #5
P A R E
H
W
T
E
I
E
E S
I T
~ C
S P
N G
N
N T
I S ~
H 0 U
0 R R
D
0 P
~ A P P
0
N
~
E A R S ~ A
M 0 N G ~ V
A R I A B L
E S ~ T 0 ~
B E ~ L I S
T E D
77 77
.
y
Printout #6
0 L
, ~ 77 77 77 77
S
M B
, ~ A M 0 N
G ~ I T E M
S ~ T 0 ~ B
E ~ L I S T
E D
77 77 77
.
Printout #7
P A R E N T
H E S E S ~
P R E C E D
I N G ~ W 0
R
D
,
~ T
A
P E , ~ N 0
T ~ P R 0 P
E R L Y ~ ~
~~~~~P
A I R E D
.
606
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
40
52
01
66
73
01
0
21
32
24
66
01
46
22
40
46
73
34
47
0
21
32
24
66
01
65
CA
PG
PGl
65306
51523
34515
47255
77777
0
01244
01702
25463
51010
01012
34656
77777
PG17
34255
01545
50300
25514
0
01244
01702
25463
51012
01010
66302
PG32
15
72751
05424
00165
14621
77777
0
75150
45434
06501
10101
53001
63027
77777
13
42454
16766
16573
62101
Printout #"8
P S E U D 0
~ 0 P E R A
I 0
Y M B
T
N ~ S
0 L
1
l:l 77 77 77 77 77
~ A M 0 N
G ~ V A R I
!
A B L E S ~
T O~~~~
l:l~~B E l:l
L I S T E D
77 77 77 77 77
Printout #9
L
I
Y ~
I N
M B
0
A R
U T
0 L
,~
B
R
E
R
l:l s
y
0
75150
45434
06501
53001
14634
72277
~ A M 0 N
t
G ~ V A R I
A B L E S ~
T
~ B E ~
~~!::t~ L I
S T E D
77
o
.
607
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
40
26
47
32
51
70
46
0
0
0
22
40
65
34
70
46
0
21
31
30
51
01
52
33
01
54
24
27
30
34
CA
PH
PHI
51474
34656
01315
71345
24543
30210
0
0
0
77777
PH14
67256
52663
24543
30210
0
01505
51464
27012
52305
01010
24543
30653
65672
34526
65656
01665
01473
50322
PH36
12
72401
53450
14646
03201
42425
17777
0
0
0
77777
22
52654
02701
42425
17777
0
16601
65171
57301
00101
10101
05066
46522
56526
66501
74730
10125
46565
27777
G ~ F
S
A ~
I N
0
L
0 W I
N G ~
I A B
C 0
M I
M M
S
V A R
E
L
,
~
Printout #10
L
77 77
- - - - -
-
-. -77 77- 77- 77 77
- -
S U B S
I P T E
V A R I
L E , ~
,
C R
D ~
A B
77 77
~
N 0 T ~
0 L L 0 W
D ~ B Y ~
0 P E N~~
F
E
~~~~~~
P A R E N T
H E S I S
~ S U B S C
R I P T S ~
A S S U M E
D ~ T o ~ B
E ~ M I S S
I N G
77 77
.
608
Printout #11
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
40
30
01
50
47
47
67
52
54
0
22
01
66
30
30
26
27
40
51
24
30
47
67
52
54
0
22
CA
PI
PIl
50270
65305
26300
25514
51503
25652
66650
01777
0
01010
01015
01513
50663
01505
33302
22777
PI22
52305
54305
65346
51503
25652
66650
01777
0
77777
PI33
20
15131
06630
16573
60124
20165
65434
13151
77777
0
10101
43065
10165
05026
16601
64530
77777
11
00152
06633
50124
20165
65434
13151
77777
0
77777
~
N
~
L
N G
S C
S ~
E N D
~ S E
N C E
M B 0
M 0
U B
Printout #12
0
F
T E
S y
~ A
~ S
R I
P T
F 0
R ~ 77 77 77 77
-
---
.~~~~~
~~ ~ R E S
T ~ 0 F ~ S
E N T E N C
E ~ N 0 T ~
C H E C K E
D
77 77 77 77
.
0
P E N ~ P
R E
I
M 0 N
U B S
P T S
R ~ 77
A
E
S
N T H
S ~ A
G ~ S
C R I
~ F 0
77 77 77
- 77- 77- 77- 77. 77
-
609
Printout #13
40
65
21
0
21
24
51
25
66
01
0
22
40
71
66
24
65
32
26
01
PJ
PJl
73472
01777
0
01245
54650
50320
65265
65013
77777
0
77777
PJ15
51542
24523
52523
01244
01656
54345
31515
25230
12447
16567
43452
15154
77777
0
77777
11
72101
02101
02454
75150
72565
26665
40177
0
0
0
22
77777
PJ26
77777
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
CA
13
55146
77777
0
Printout #14
S
y
M B
-,
~
-
-
0 L
, ~ 77 77 77 77
-
A P
A R S l:l
0 N G ~
B S C R
T S ~ F
~ 77 77 77
P E
A
S
I
M
U
P
0 R
77 77
-. 77- 77- -77 77- 77-
W 0 R
T A P
A P P
S ~ A
G ~ S
C R I
~ F 0
D
, ~
E , ~
E A R
M
0
N
U B S
P T S
R ~ 77
-. 77- -77 77- 77- -77
610
Printout #15
4
0
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
01
27
01
34
34
01
01
25
0
0
0
22
40
40
31
51
0
21
32
26
01
0
22
01
01
24
50
PK
PKI
67256
52666
54017
0
34502
30016
31465
50320
50660
01010
70245
46302
0
0
0
77777
PK23
PK23
67502
50210
0
01244
01656
54345
31515
0
01010
01010
01010
54326
66650
~')
oJ.,
30543
' ALL...,
~6j:VU'
n
s
T S !::::.
,.,.
["
I!o
r.
n
51
CA
67652
PK42
27777
0
U
S
IA
0
40
1
65
34
51
2
3
Printout #16
20
52654
50131
77777
0
64667
63330
12466
15251
10101
10101
43424
10177
0
0
0
77777
11
17
66634
17777
0
75150
72565
26665
40177
0
10101
10101
10101
74730
16567
S
I
U
B
S C R
S ~ F
P T
0 R !::::. 77 77 77
- -I - C-
!::::.
N
D E
!::::. F
I N
I N
!::::.
T
L U
H
E
L 0 A T
A p 0
G """"
.
T!::::.!::::.!::::.
!::::.!::::.!::::.!::::.!::::.!::::.
!::::. V A R I A
B L E , !::::. 77
- -- -- --. 77- -77 77- -77 77-
F
U
N
0 N
-, !::::.- A-
G
C T I
!::::. 77 77
- 0- -
M
!::::. s U
N
B
S
C R I P T S
b. F 0 R b. 77
.!::::. b.!::::.!::::.b.
b.!::::. !::::.!::::.!::::.!::::.
!::::.!::::. b. !::::.b.fl
A R
N
611
G U
M E
U
n
L
r
.
U
77 77
Printout #17
#17A
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
40
40
65
34
70
46
0
21
32
26
01
01
0
22
65
34
51
30
54
01
33
22
CA
PL
PL2
PL2
67256
52663
24543
30210
0
01244
01656
54345
31515
01010
0
77777
67256
52666
54014
65660
34242
50516
30264
77777
PL26
14
24
52654
02701
42425
17777
0
75150
72565
26665
40101
10101
0
77701
52654
50131
62466
17024
54630
60126
53027
77777
Printout #18
#18A
B S C R
P T E D ~
A R I A B
~ 77 77
L E
S
U
I
V
---
-
~ A M 0 N
G ~ S U B S
C R I P T S
~ F 0 R ~~
~~~~~~
,
-. 77- -77 -77 -77 ~
S U B
I P
0 R
E
S
R I
T
~ L
T ~
A B
~ N 0
H
.
612
E
S C R
S ~ F
A
T
V
A
L
E
T ~ C
C K
E
D
77 77 77 77 77
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
40
46
73
34
47
0
21
32
26
01
01
0
22
40
52
01
66
73
01
0
21
32
26
01
01
0
22
CA
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
40
65
34
51
0
01
27
PM
PM1
34255
01545
50300
25514
0
01244
01656
54345
31515
01010
0
77777
PM16
65306
51523
34515
47255
77777
0
01244
01656
54345
31515
01017
0
77777
PM33
PN
PNI
67256
14
42454
16766
16573
62101
0
75150
72565
26665
40101
17777
0
77777
15
72751
05424
00165
14621
77777
0
75150
72565
26665
40101
77777
0
77777
17
52654
52666
50131
52
65
01
01
54017
0
34502
30016
54652
66012
66245
01010
77777
77777
0
64667
56752
65434
65150
06621
10101
77777
0
0
0
0
0
0
0
0
0
22
77777
PN20
77777
30
CA
Printout #19
I
y ~
I N
M B
L
B R A R
R 0 U T
E ~ S y
0 L
t
~
~ A M 0 N
t
G l:1
U B S
C R I P T S
6 F 0 R ~~
~~~~ 77 77
s
-. 77- -77 77- 77 77
P S E
~ 0 P
T I 0
y M B
~ 77 77
Printout #20
U D 0
E R A
N ~ S
0 L t
77 77 77
----
,
~ A M 0
G ~ S U B
C R I P T
~ F 0 R ~
~~~ 77 77
-
-
S
I
U B S
---
N
S
S
~
77
-
77 77 77 77 77
Printout #21
C R
P T S A F
0 R ~ 77 77 77
- -I
~
D E
E R
P T
S T
- -
N
C
-L -U
~ S
U P
C R I
~ C 0 N
A N T t
S
~~~~6~
~ 77 77 77 77 77
- - - - - - - - - - - -77 -77 -77 -77 -77
613
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
40
26
47
32
32
26
01
0
21
51
01
0
0
0
22
40
34
30
47
31
27
26
01
0
22
CA
PO
POI
51474
34656
01244
01656
54345
31515
0
01315
71345
01010
0
0
0
77777
P020
50265
26660
25305
01702
01656
54345
31515
0
77777
P031
16
72401
53450
75150
72565
26665
40177
0
14646
03221
10177
0
0
0
77777
11
15454
15067
40151
44634
72565
26665
40177
0
77777
C 0 M M
M I S S
G ~ A M
G ~ S U
C R I P
~ F 0 R
...
,
-
... ...
~
A ~
I N
0
N
B
T
S
S
~
Printout #22
77
- -
F 0 L L
0 W I N G ,
~~ ~ ~ ~ 77
-... -- ...- -- -- -...
-. 77- 77- -77 -77 77-
Printout #23
I
E
M
F
N
C 0
C T
E
V
o!:1 S
C R I
B
~
~ F
0
R R
~ N U
R ~ 0
A L I
u B S
P T S
R ~ 77
-. -77 -77 ...77 77 77
614
40
30
01
50
47
51
01
01
54
01
24
30
51
0
22
01
66
50
30
40
26
47
32
51
26
65
34
54
65
51
0
22
pp
PPI
50270
65305
26300
25514
46465
26465
65672
34526
01010
54305
65346
54017
0
01543
51310
30502
51660
26453
PP24
51474
34656
01315
71345
46516
67256
52660
30506
34650
54017
0
77777
CA
PP40
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
22
15131
06630
16573
60131
17165
16530
56526
60101
10152
06633
50131
77777
0
06566
16530
63001
12633
02722
14
72401
53450
14646
03201
53001
52654
15224
63330
10131
77777
0
77777
E
N
/:). S
N C
M B
0 L
~ C
D ~
Printout #24
0 F
E N T
E ~ S
E
y
0 L ~ F
L 0 W S
L 0 S E
S U B S C
RIPTAA
6.
~~~~~p
A R E N T H
E S I S ~ F
0 R ~ 77 77 77
.
~
~ 0
R
E
S
T
F ~ S E
T E N C E ~
N 0 T ~ C H
E C K E D ~
M M A ~
S S I N
G ~ F 0 L L
0 W I N G ~
C L 0 S E ~
S U B S C R
I P T ~ P A
R E N T H E
S I S ~ ~ F
Printout #25
C 0
M I
0 R
-.
615
...
~
77 77 77
-- -
-
77 77 77 77 77
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
IA
40
71
32
67
65
0
77
54
65
67
01
51
26
40
71
66
24
65
32
47
51
26
01
0
22
CA
PQ
PQl
24545
21012
47305
43015
0
01656
31466
22012
47305
01010
66012
45302
PQ16
51542
24523
52523
01244
01245
30506
31013
66345
77777
0
77777
PQ31
14
03450
45432
06617
13101
0
75230
75167
45432
06665
10150
63330
72277
13
72101
02101
02454
75150
43267
66501
16750
15021
77777
0
77777
Printout #26
W A R N I N
G , ~ A R G
U M E N T (
S ) ~ 0 F ~
77 ~ S
U
P
E
R F L U 0 U
S .~ A R G
U M E N T S
~~~~~ N
0 T ~ C H E
C K E D
77
.
W 0
T A
A P
S ~
G ~
M E
0 F
C T
~ 77
R D
P
P
,~
, ~
Printout #27
E
E A R
A M 0 N
A R G U
N T S
6.
U
N
~ F
0 N ,
77 77 77 77
I
-. 77- -77 -77 -77 -77
616
(\
v
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
IA
40
30
01
50
47
47
54
66
31
51
0
22
01
50
01
33
22
40
34
27
01
50
22
51
66
65
01
51
01
01
01
51
PR
PRl
50270
65305
26300
25514
51503
32674
65015
67502
50210
0
01543
51310
66305
50516
30264
77777
PR22
50702
01662
27306
24663
01305
31016
30502
73472
01010
46465
71515
66245
54306
31016
1)(\
,",v
15131
06630
16573
60124
20124
73050
13101
66634
10177
0
06566
16530
02630
60126
53027
77777
21
44634
45230
53432
45150
02701
53050
63001
55146
10131
17165
42721
23022
56601
53050
":tV
VV
VVVV~
'lnc:nl)
63001
41
42
50
30
51660
26453
PR43
12633
02722
AI\
t...t...
CA
E N
~ S
N C
M B
M 0
D ~ 0 F
E N T E
E ~ S y
R G
U
T
F
0
0 L ~ A
N G ~ A
M E N
S ~ 0 F ~
D N C T I
N , ~~ 77
~
R E S
0
F
~ S
~
0
0 T ~
T
E
E
C
C
D
N T E
~ N
H E
.
N C
K
E
77 77 77 77 77
Printout #29
I N
D ~
~
N
V A
T A
E S
T I
E N
~ S
L
I
P
I
E
D
A
0
D
~
E
0 F
T E N C E
S y M B 0
~ ~/J.~~
0 L L 0 W
.
/J. W 0 R D
/J. T A P E
G
N
~
N
/J.
L
F
S
.
~ R E S T ~
0 F /J. s E N
1\1
1'4
rv
G'
1:0
L...l
N 0
T
l:l
C
H
E
K
E
D
rr
.I.
617
Printout #28
G'
1:0
C
1\
.
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
40
34
27
01
50
22
24
30
46
46
71
66
54
31
30
51
26
40
34
27
01
50
22
01
66
01
71
51
24
30
01
50
66
45
CA
PT
PTI
50702
01662
27306
24663
01265
01515
47340
51500
46517
51542
24523
30656
01653
50263
66012
45302
PT22
50702
01662
27306
24663
01515
52245
33306
31514
65010
54272
52302
65660
65305
26300
01263
30272
PT42
20
44634
45230
53432
45150
14747
40165
22651
13151
16501
72101
02201
60151
05066
00150
63330
72277
20
44634
45230
53432
45150
23050
43050
53465
64651
10171
10166
20154
15131
06630
15051
33026
27777
Printout #30
I
D
~
N
N V A L
~ T A P
D E S I
A T
I
E
G
I 0 N
0 M M
R ~ S
.~ C
A ~ 0
E M I
C 0
L 0 N ~ F 0
L L 0 W S ~
W 0 R D ,~
T A P E .~
R E S T ~ 0
F ~ S E N T
E N C E ~ N
0 T ~ C H E
C K E D
77
-
.
I N
D ~
~ D
N A
.
~
~
0 P
P A R
T H
~ F
Printout #31
V A L I
T A P E
E S I G
T I 0 N
E
S
E
E
N
N
I
S
0 L L 0
W S ~D-D- W
0 R D ,D- T
A P E , ~ R
E S T ~ 0 F
~ S E N T E
N C E ~ N 0
T ~ C H E C
K E D . 77 77
618
0
1
2
3
4
5
6
7
,n
l.V
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
IA
40
34
27
01
50
22
30
50
65
51
51
24
30
01
50
66
45
40
34
27
01
50
22
51
0
21
51
01
71
66
54
31
30
51
26
CA
PO
PUI
50702
01662
27306
24663
01264
01522
66333
01315
71650
54272
52302
65660
65305
26300
01263
30272
PU22
50702
01662
27306
24663
01657
46210
0
01315
71650
01010
51542
24523
30656
01653
50263
66012
45302
PU43
Printout #32
20
44634
45230
53432
45150
65165
45430
06534
14646
10171
10166
20154
15131
06630
15051
33026
27777
21
44634
45230
53432
45150
34725
17777
0
14646
10101
10101
72101
02201
60151
05066
00150
63330
72277
I
N
D tJ. T A
tJ. D E S
A T
~ C
E ~ P
N
.
N
T
I
P E
I G
V A L
H
I
L
A
E
0 N
0 S
R E
S I
r
r
L..
v
L..
~ F 1'\
0 W
W
tJ.~
0 R D
tJ. T
A P E
~ R
E S T tJ. 0 F
~ S E N T E
N C E ~ N 0
T ~ C H E C
K E D
77 77
C'
~
s
.
.
I N
D tJ.
tJ. D
N A
.
tJ.
-
- -
0 L
Printout #33
V A L
T A P
E S I
T I 0
s y M
I
E
G
N
B
• tJ. 77 77
-- -
, tJ. F 0
0 W
L L
S~tJ.tJ.
~~tJ.~~~
W 0 R D ,~
T A P E .tJ.
R E S T tJ. 0
F ~ S E N T
E N C E ~ N
0 T ~ C H E
C K E D
77
.
619
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
40
34
27
01
50
22
24
67
65
21
0
21
51
54
52
65
65
26
01
30
40
34
27
01
50
22
27
54
01
46
0
21
51
54
52
65
65
26
01
30
CA
PV
PVl
50702
01662
27306
24663
01463
54730
66345
73472
01010
0
01315
71650
27210
30220
66015
30506
30015
26333
27227
PV25
50702
01662
27306
24663
01526
51015
24663
65734
21010
0
01315
71650
27210
30220
66015
30506
30015
26333
27227
PV50
23
44634
45230
53432
45150
42554
15451
03001
55146
10177
0
14646
17151
16624
15430
13101
63050
05166
02645
77777
23
44634
45230
53432
45150
53067
15230
45150
72551
10177
0
14646
17151
16624
15430
13101
63050
05166
02645
77777
Printout #34
N V A L
D /J. T A P
/J.D E S I
N A T I 0
/J. L I B
A R Y ~ R
U T I N E
S y M B 0
I
I
E
G
.
N
,
-,
/J./J./J.~
R
0
/J.
L
77
-----
~
W
F 0 L L
/J. w 0
R D , /J. T A
/J. R E
P E
S T /J. 0 F /J.
0
s
·
s E N T E N
C E ~ ~ 0 T
/J. C H E C K
E
D
I
N V A L
·
77 77 77
Printout #35
I
D /J. T A P E
/J. D E S I G
N A T I 0 N
. /J. P S E U
D 0 /J. 0 P E
R A T I 0 N
/J. S y M B 0
L , /J./J./J. 77
-
, ~ F 0 L
0 W s /J. w
R D ,/J. T
P E .~ R
S T /J. 0 F
S E N
C E /J.
/J. C H
E D
·
620
.-
L
0
A
E
/J.
T E N
N 0 T
E C K
77 77 77
IA
0
40
1
34
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
27
01
46
66
30
30
30
01
34
51
24
30
0
0
0
21
51
54
52
CA
PW
PW1
50702
01662
65734
23015
01513
50663
01675
26453
50515
72302
34506
54342
21017
0
0
0
01315
71650
27210
30227
PW25
24
44634
45230
72551
43065
10165
05026
02633
02722
00231
70152
60170
42546
77777
0
0
0
14646
17151
16624
77777
0
1
2
3
4
5
6
40
34
27
01
54
66
30
PX
PXl
50702
01662
50674
23015
01513
50663
7
30
01505
16601
10
11
12
13
14
15
16
17
20
21
22
23
26
27
65
01
24
0
0
0
21
51
54
52
33302
22010
65674
26515
50662
0
0
0
01315
71650
27210
30227
PX24
64530
10124
73027
06566
10177
0
0
0
14646
17151
16624
77777
IA
CA
23
44634
45230
72530
43065
10165
05026
Printout #36
I
V
D ~ T
~ S Y
L , ~
T ~ 0
E N T
N
.
E ~
E C
I
A P E
A
L
M B 0
R E S
F ~ S
E N C
U N C
E D
~ N 0 N
I X E. D ~
0 I N T ~
A R I A B
E , fl 77 77
K
-
H
.
F
P
V
L
77
- -- -- -- - --
-, fl- F- 0 L- L0 W
R
D
P
E
s fl w
,
.
~ T
0
A
77 77 77
Printout #37
I N V A L I
D ~ T A P E
lJ. N U M B E
R ; ~ R E S
T ~ 0 F lJ. s
E N T E N C
I\J
A .,
E I-J.
0 T 1\
C H E C K E
D . lJ.lJ.f:j, A
S S U M E D
lJ. C 0 N S T
A N T , !:l 77
.&.
-- - -- -
t
fl
0 W
R
D
P E
621
F
- - -
0 L L
0
fl T A
77 77 77
s lJ. w
.
~
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
40
51
24
30
51
01
27
24
01
27
26
51
01
50
01
46
66
30
30
30
40
26
52
33
31
65
01
50
22
46
26
51
01
50
01
46
66
30
30
30
CA
PY
PYI
52305
54305
65346
46465
66245
30653
66345
65335
01253
51474
54013
51310
66305
65734
22015
01513
50663
01675
26453
PY25
46516
24543
30653
51464
01662
27306
24663
01653
2'7012
51474
54013
51310
66305
65734
22015
01513
50663
01675
26453
PY50
23
00152
06633
50131
17165
23001
43250
15022
16746
00177
72401
05027
16530
02630
72551
43065
10165
05026
02633
02722
23
53001
05066
46501
65171
45230
53432
45150
35167
53001
72401
05027
16530
02630
72551
43065
10165
05026
02633
02722
0 P
E
E
A R
E S I
N
N
II P
S
fl
T
Printout #38
H
F
0 L L 0 W S
fl T A P E fl
D E
A T
II S
D fl
C 0
0 R
fl
N
II
L
T
E
E
E
S
I
I 0
H 0
B
M
~
0 F
T E
E
G
N
N
·
U L
fl 77
fl
M A
E N D
~ S E
N C E
S Y M B 0
fl R E S
II 0 F fl S
N T E N C
~ U N C H
.
C K E
D
· Printout
C L 0 S E fl
P A R E N T
H E S I S fl
F 0 L L 0 W
S II T A P E
!J. D E S I G
N A T I 0 N
!J. s H 0 U
L D !J. B E !J.
C 0 M M A !J.
0 R !J. E N D
.
!J. 0
N T
~ S
L
T
E
E
E
622
F
E
y
fl
s
M B
!J. R E
fl 0 F fl
N T E N
!J. u N C
C K E D
.
E
N C E
0
S
S
C
H
·
#39
IA
0
1
2
3
4
5
6
7
40
26
51
01
50
01
46
34
PZ
PZl
51474
54013
51310
66305
65734
01473
50322
.. n
"')A
.LV
.c;.':1
..J.c;...Jvv
11
12
13
14
15
16
17
20
21
22
23
47
51
27
0
0
0
22
01
50
01
26
25514
46465
01257
0
CA
J::"')-:>AA
0
0
01543
51310
66305
67502
45302
PZ24
23
72401
05027
16530
02630
72551
46565
20166
16573
60131
17130
30177
0
0
0
06566
16530
02630
63330
72277
Printout #40
C
0
A
l1
N
D
E
E
L
S
C
B
S
0 M M
R ~ E
F ~
0
~
N T E N
~ S y M
I
II
li.
~ M
N G
n
r
1':'
.c.
M B 0
0 L L
D ~ B
.
~
N
~
C
623
I
J\
~
L
~
C'
i::)
0
S
T
Y
~ F
0 W E
Y ~ 77
----
-
~ R E
0 F ~
T E N
U N C
K E D
77
- - S- TS E
C E
H E
.
TA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
40
65
26
01
30
51
52
34
51
24
31
30
30
22
40
71
32
51
54
65
66
26
52
32
52
46
66
30
66
54
31
30
32
22
CA
SA
SAl
30506
30015
26333
27012
50270
30012
32502
50012
67653
01525
27345
54545
77777
SA17
24545
21010
65300
30506
34650
33516
51545
51502
01010
30500
46517
24523
65343
34515
30656
01653
50263
50515
77777
SA42
15
63050
05166
02645
53073
16624
73065
46634
53026
00151
43026
03201
15465
77777
23
03450
12646
15224
63330
17134
76601
43065
73450
10151
13151
16501
00127
25024
02201
60151
05066
00134
43027
77777
Printout #41
S E
C
E
E
D
~ C
0 N
P E
N
T
~ N
H E
~ B
D ~
~ D
N A
~ B
E
0
C
N
T
K
E
Y
A
E S
T
I
G
0
N
.
77 77 77 77 77
I
E C
A U S E ~ 0
F ~ P R E C
E D I N G ~
E R R 0 R S
T
Printout #42
W A R N I N
G , ~ ~ C L
0 S E ~ P A
H
E
T H 0 U T
C 0 R R E
P 0 N D I
G ~~~~
P E N ~ F
L L 0 W S
T A P E ~
E S I G N
T I 0 N
R E S T ~
F ~ S E N
E N C E ~
G N 0 R E
~
R
E N
S I
T
S ~ W I
.
.
624
S
N
0
0
~
D
A
~
0
T
I
D
77 77 77 77 77
IA
0
40
1
71
2
3
4
5
6
7
32
52
34
51
66
30
25
46
25
01
31
30
73
51
51
30
01
66
21
24
0
0
0
22
01
50
01
30
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
CA
5B
5Bl
24545
21010
30012
32502
50016
34515
51674
35
03450
16624
73065
46634
53026
00165
62701
30013
15146
51713
73016
30502
01653
50263
47255
54012
52305
24273
52245
33306
34506
27015
0
0
0
01543
51310
66305
34325
27227
5B36
02701
63330
70151
05066
00165
14601
45001
00133
45032
43050
53465
56630
13101
0
0
0
06566
16530
02630
05154
77777
Printout
W A
R N I
G , ~ ~ T
P E ~ D E
I G N A T
0 N ~ 5 E
T I 0 N ~
H 0 U L D
T:'
B .r.
1\
D
TO
r
n.
v
N
A
5
I
C
S
~
T
L
L 0 W E D ~
B Y ~ T H E
~ E N D ~ 0
F ~ 5 E N T
N
M
0 R
0 P
E A
~ P
T H
, I
A D
E
y
C E ~ S
B 0 L ~
~ A N ~
E N ~ H
D I N G
A R E N
E 5 I 5
N S T E
~ 0 F ~
- - -- -- -- -- - R- - 5- T-
~
~
N T
~ I
E D
625
E
0 F ~ 5 E
E N C E
G N 0 R
.
77 77 77
#43
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
IA
40
71
32
51
54
65
66
26
52
32
52
52
24
26
01
50
30
01
50
50
CA
SC
SCI
24545
21010
65300
30506
34650
33516
51545
51502
01010
30500
30245
47515
51466
33302
32652
65660
65305
26300
51543
SC24
23
03450
12646
15224
63330
17134
76601
43065
73450
10151
12452
46501
03201
74750
42734
20154
15131
06630
13432
02722
Printout #44
W A R N I
N
E N T
E
G , ~~ C L
0 S E ~ P A
R
H
S ~ W I
H 0 U T ~
0 R R E S
0 N D I N
~~~~ 0
E N ~ A P
E A R S ~
M 0 N G ~
0 L U M N
H E A D I
S I
T
C
P
G
P
P
A
C
~
N G S
E S T
~ S E
N C E
N 0 R
626
.
~
~ R
0 F
N T
~
E
E
I G
D
.
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
40
71
32
30
32
47
27
33
25
46
25
50
47
27
24
30
54
51
66
65
21
24
0
0
0
22
01
50
01
30
CA
SD
SDI
24545
21010
26302
01265
50013
34503
51674
30013
51713
73015
01265
50013
34503
54305
65346
01305
31016
30502
73472
34506
27015
0
0
0
01543
51310
66305
34325
27227
SD36
35
03450
15254
73450
14667
33024
20165
62701
15146
02701
15230
14667
33024
20152
06633
50151
02701
53050
63001
55146
56630
13101
0
0
0
06566
16530
02630
05154
77777
Printout #45
W A R
G t~
E C E
G ~ C
M N ~
D I N
N I
N
~
P R
D I N
0 L U
H E A
G ~ S
H 0 U L D ~
B E ~ F 0 L
L 0 W E D ~
B Y ~ 0 P E
N ~ C 0 L U
M N ~ H E A
D I N G ~ P
A R E N T H
E S I S ~ 0
R ~ E N D ~
0 F ~ S E N
T E N C E ~
S Y M B 0 L
, I N S T E
A D ~ 0 F ~
----.1:1- R- - S- T-
E
~ 0 F ~ S E
N T E N C E
~ I G N 0 R
E D
77 77 77
.
627
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
40
71
32
27
30
30
51
26
01
50
30
01
50
50
40
71
32
44
01
01
66
01
54
30
34
01
71
34
54
31
30
32
22
CA
SE
SEI
24545
21010
01513
50663
01657
46013
51466
33302
32220
65660
65305
26300
51543
SE17
24545
21010
24263
26465
52245
33306
24525
01665
01010
65653
31514
34503
66463
30656
01653
50263
50515
77777
SE41
15
03450
13050
10165
05026
34725
45001
74750
42734
10154
15131
06630
13432
02722
22
03450
12427
05066
16530
43050
53065
23024
10125
10147
45032
64651
20166
02201
60151
05066
00134
43027
77777
Printout #46
W A R N I
G
, ~~
N
E N
~ S
N C
M B
N ~
M N
D I
D ~ 0 F
E N T E
E ~ S y
0 L ~ I
C 0 L U
~ H E A
N G
~~R
E S T ~ 0 F
~ S E N T E
N C E ~ I G
N 0 R E D
.
.
W A R N I
G , ~~ A
J A C E N
~ C L 0 S
~ P A R E
T H E S E
~ A P P E
R ~ T 0 ~
Printout #47
N
D
T
E
N
S
A
B
M
E~~~~
I S S I N G
~ F 0 L L 0
W I N G ~ T
I T L E
~
R E S T ~ 0
F ~ S E N T
E N C E ~ I
G N 0 R E D
.
.
628
77 77 77 77 77
0
1
2
3
4
5
6
"7
I
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
IA
40
71
32
51
54
65
66
26
52
32
52
46
66
01
51
66
34
27
40
71
32
66
26
65
01
46
01
27
30
30
51
51
51
33
32
50
65
66
51
0
0
0
22
01
50
01
30
CA
SF
SFl
24545
21010
65300
30506
34650
33516
51545
51502
01010
30500
46517
34664
54306
31016
30502
32505
22777
SF23
24545
21010
46300
66345
33516
25300
46517
25730
01513
50663
01657
46015
52305
46674
30242
01522
66333
21013
30242
31017
0
0
0
01543
51310
66305
3"4325
27227
SF57
21
03450
12646
15224
63330
17134
76601
43065
73450
10151
13151
16501
63022
56601
53050
63001
15430
77777
34
03450
16634
16530
15001
74627
13151
13027
13050
10165
05026
34725
15401
00126
75001
73450
45430
06534
45065
70101
77777
0
0
0
06566
16530
02630
05154
77777
Printout #48
W A R N I N
G , b. b. C L
0 S E b. p A
R E N T H E
S I S b. w I
T H 0 U T b.
rV
P
{\
V
R
R
v
U
0 N D I
C
.;J
N
G
b.b.b. b.o
P
E
L L
T I
b. R
0 F
T E
I G
D
.
b. F 0
0 W S b.
N
.
T L E
E S T
b.
E
N
b. s
N C E II
N 0 R E
77 77 77 77
Printout #49
W A R N
G , b.b.
T L E b.
C T I 0
S H 0 U
I
T
s
N
I
E
N
I::l
L
D
b. F 0
l:l
B
E
L
L
0 W E D
b.
B
Y ~ E
N
T E N
y M
b. 0 R
E N ~
U M N
A D I
p A R
C
B
D
E
E
b. 0 F b. S
N
b. s
0 L
0
0
H
G
P
L
E
!::l
b.
C
!::l
N
E
I
N T H E S
S , !::l I N S
T E A D ~~
0 F !::l 77 77 77
- fl-
-- -- -- -- - - -
R E
F !::l
N T E N
~ 1 G N
E D
77
!::l
0
.
629
S
T
S E
C E
0 R
77 77
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
IA
40
71
32
27
30
30
51
66
01
51
30
30
54
40
47
33
70
34
01
01
27
34
01
51
50
0
0
0
01
33
22
CA
SG
SGI
24545
21010
01513
50663
01657
46013
34664
54306
31010
50663
01343
30272
SG16
51543
24500
30017
24254
66510
46346
22017
24254
01010
46465
32017
0
0
0
50516
30264
77777
SG37
14
03450
13050
10165
05026
34725
45001
63022
56601
10165
05026
25051
27777
21
00166
13134
02454
63065
12530
56630
02454
63065
10131
17134
77777
0
0
0
60126
53027
77777
Printout #50
W A R N
G ,
~
D ~ 0
E N T
E fl S
I
~ E
F ~
E N
y M
N
N
S
C
B
0 L fl I
N
fl
I T L
R E S
E
T
fl
T
fl
0 F fl fl S ~
E N T E N C
E fl I G N 0
R E D
77 77
.
M 0 R
H A N
V E fl
I A B
~ T o
~ L I
D
fl
I A B
.
E ~ T
Printout #51
fl
F I
V A R
L
fl
E
B
S T
S
E
E
V A R
L E S
fl~~~~ F
0 L L 0 W I
N G
/1 77 77 77
H
C K E
- -----fl- N- 0- T-- fl-- C-.
630
E
D
77 77 77 77 77
IA
0
1
2
3
4
5
6
40
71
32
54
67
24
01
7
70
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
46
72
27
27
40
71
32
54
50
33
30
01
25
47
72
27
27
34
0
0
0
0
43
CA
SH
SH1
24545
21010
30012
47500
27345
66332
24543
30652
26306
30463
22777
SH15
24545
21010
30016
01050
24542
54650
70245
46300
30220
26306
30463
01463
50320
0
0
0
0
22777
SH37
13
03450
14751
65146
13330
03265
45001
42425
20130
56501
06630
77777
22
03450
14751
63324
60126
42666
13450
43424
15024
10130
56501
06630
02470
17777
0
0
0
0
77777
Printout #52
W
G
R
U
A
~
V
L
A R N
t
E
M
D
~~
~ C
N ~
I N
H A
R I
T
A
E S
X C E
D E L
D
.
I
N
M 0
0 L
H E
G S
N ~
A
B
.
~
E
E
T
E
S S ~
77 77 77 77
Printout #53
W A R N
G , !::::. ~
R E ~ T
N ~ 2 3
H A R A
E R S ~
~ V A R
B L E ~
M E .~
X C E S
I N
M 0
H A
~ C
C T
I N
I A
N A
~ E
S
~
D E L E T E
D ~ L E A V
I N G ~ 77 77
--- --- --- --- --- --. 77 77 77 77
)
631
0
l
2
IA
40
71
32
3
54
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
50
33
30
01
50
34
72
27
27
34
0
0
0
0
43
CA
SI
SII
24545
21010
30016
01050
24542
54650
26514
01333
50322
26306
30463
01463
50320
0
0
0
0
22777
SI23
22
03450
14751
63324
60126
42666
13450
66747
02427
20130
56501
06630
02470
17777
0
0
0
0
77777
Warning #54
W A R N I N
G ,~~ M 0
E~
~ 2
N
H A
3 ~ C
A R A C T
R S ~ I N
C 0 L U M
~ H E A D
I
N
R
N
H
E
~
G
X C E
D E L
D ~ L
I
N
T
.
~ E
E
E
T
S S ~
E
A V
G ~ 77 77
- ... 77- -77 77- -77
)
632
TA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
40
71
32
54
50
26
66
50
30
30
30
01
50
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
43
CA
SK
SKI
24545
21010
30016
01040
33245
30546
01663
22013
65650
46306
46302
32017
0
0
0
0
0
D
0
0
0
0
0
0
0
0
0
0
0
0
0
0
22777
SK42
41
03450
14751
63324
41401
42426
50134
46646
07226
10127
63027
47034
77777
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
77777
Warning #55
W A R N
G
, f1f1
R E ~
N ~ 1
C H A
T E R
N ~ T
fl
E
E S s
E L E
~ L E
N G ~
.
-
T
1
R
S
r
E
r
N
M 0
H A
9 ~
A C
~
r
T
L
X C
DD
D
T E D
A V I
77 77 77
- - - - -
- -
-- -- - - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ) . 77 77 77 77
633
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
34
27
01
50
22
01
54
66
71
65
67
30
66
30
30
54
40
66
50
31
01
27
24
01
01
01
30
30
52
47
CA
SL
SLI
50702
01662
27306
24663
01662
50674
01040
01244
30270
01516
66016
22015
01513
50663
01343
30272
SL22
51510
73012
30543
66245
30653
66345
24475
46346
01010
50663
65015
54512
22777
SL37
20
44634
45230
53432
45150
45230
72530
15051
64651
10124
76652
62452
43065
10165
05026
25051
27777
15
14724
73431
05066
23001
43250
15065
15032
56601
10165
05026
13101
54630
77777
I N V A L
D ~ T A P
~ D E S I
N A T I 0
.~ T A P
~ N U M B
R ~ 1 ~ N
T ~ A L L
W E D ~~
S ~ 0 U T
U T ~ T A
E
~ R E
T ~ 0 F ~
E N T E N
E ~ I G N
R E D
77
.
.
T 0
N y
F E
~ T
D E
A T
Alarm #56
I
E
G
N
E
E
0
0
A
P
P
S
S
C
0
77
0 ~ M A
~
R
D I F
E N T
A P E ~
S I G N
I 0 N S
~A M 0 N G
~ L I S T ~
~~~~~S
E N T E N C
E S ~ 0 F ~
P R 0 B L E
M
77 77 77 77
634
Alarm #57
Explanation of Indicators, Counters, Temporaries, etc.
LYO
Index counter (C ) -(# subscripts)
l
Avail. add. in assem.
blk. ("u" & "v")
Avail. add. in hdg. list.
Temp. or add. for 1st col. hdg. in hdg.
list - 1
Indicator 1st yare
1
2
3
4
Indicator 2nd yare
Indicator 3rd yare
Indicator 4th yare
Indicator 5th yare
Index counter (C ) - (#char. in assem.
2
blk. word)
Index counter (C )
Heading indicator3
1st bi t = 1 ~ col. hdg. present\
(2nd bit = 1 ~ title present
)
Col. hdg. count
Char. count (v) or string-out count ("u"
5
6
7
10
11
12
13
14
15
& "'v")
16
17
20
l
Current variable XS3 symbol
21
22
23
24
25
26
27
30
Assembly Block (25 )
8
31
32
33
34
35
36
37
40
41
42
43
44
45
46
41
50
)
Parenthesis level
Count of subscripts processed
Subscript parenthesis level
Function parent. level (subs. yare
within subs.)
Function symbol or subs. yare within
subscript sym.
635
PRINT STRING-OUT
Print string-out uses three lines of GN (Get Next Character Routine) with
the following understanding concerning their function. GN2 holds the buffer
input VK address in u and v of the line from which the last character has been
obtained. GN3 holds the shift that has been needed to extract the last
character. It will vary from 6 to 44 8 • GN6 holds the number of the blockette
from which the last character has been obtained. This number varies from 0 to
5 for the 6 blockettes of the block of input data.
When the Print Routine has been entered from CT, Control Routine, the divider following PRINT is the last character. It should be a space, but whatever it is. it is not included in the group of XS3 codes stored in the output
for later conversion and printing.
The current line containing the last character is replaced by a line in
which 77's replace all characters already obtained from it. GN3 is used to
make up the masking QS instruction to secure this replacement.
The current blockette is examined from the last line backward to find the
last line in the blockette which is not a line of spaces. From the address of
this line is subtracted the address of the current line to get the number of
lines of print data to be transferred to the buffer region output, VN. A
search for ~ . is made of the last two lines in the blockette that are not
lines of spaces. If a ~. is found, the Print String-out is terminated. If
it is not found. the first line of the next blockette is examined. If this is
a line of spaces. all lines from the second on to the last line of the blockette which is not a line of spaces are transferred to th& output.
IF this next
blockette first.line is not a line of spaces, it is assumed to be a line number, and this causes a termination of the Print String-out.
Continuing in this manner, each blockette is successively examined until a
~ .is found as indicated, or until a line number is found in the following
blockette. However, if or when print data in 6 blockettes has been transferred
to output. the routine is automatically terminated.
When the routine is terminated, GN2 is set to the address of the first line
of the blockette following the last one from which data has been transferred.
636
GN6 is given the proper number of this blockette. The exit to the Control Routine eventually puts future analysis in the Get Next Sentence Routine. This
routine checks GN2 against a set of addresses of blockette first lines and if
an equality is found, gets the next sentence from the blockette in which the
address in GN2 is found. Otherwise, if no equality is found, the Get Next Sentence Routine gets the next sentence from the following blockette. Following
a print instruction, of course, such an equality is always found.
When blockette 5, the last of 6 in the block, is one of the group examined,
a new block of data is read in by the routine and GN2 and GN6 reset as needed.
When a print instruction is set on the Unityper, a line number goes in the
first 6 places on the first Unityper line. The tab key should be set and used
for all runover lines so that a hanging indention of 6 spaces starts each runover line.
Failure to do so will cause a premature termination of the Print
String-out and an error print-out originating from a string-out subroutine.
Preferably words should be set right out to the end of anyone Unityper
line without any excess spacing. No hyphens should be used to break words at
the end. If all of a word does not go in one line, as many letters as possible
should be put on the top line and the remaining letters should start on the 7th
position following the 6 spaces in the runover line.
However. the routine does not require such close typing right out to the
end preceding a runover.
Much of the excess spacing that might be put in by
ragged indentions on the right is eliminated by the routine. As much as 5
spaces may be left to occur in the print-out by the present system of assembling data from blockettes. If excess spacing is left starting from the 7th
position on, or if excess spacing is left between words in a line, such excess
will be fully duplicated in the final print-out.
~
.'s, as explained, when occurring in the last two non-space-filler words
in a Unityper line or blockette, have the same effect of ending a sentence as
in the rest of UNICODE. However, their uS'e elsewhere in the print-out data
does not have this effect because this data is not examined symbol by symbol.
The blanket rule of eliminating ~. IS, except at the end of a sentence, prevents
pO.ssiblecJl.nfu.sion conc.e,r.ni.ngtheir.. use. Likewise,. they may .be eliminated from
the end of a Print instruction since a following line number in the next blockette serves the same purpose of termination. However, their inclusion at the
end speeds up the program.
637
Flow Chart for PRINT String-Out Routine
Find last word in
current blockette
that is not a
line of spaces.
Replace with 77's all
characters in current
line except those following PRINT and the
divider following it.
Count of no.
blockettes
examined?
Is this the las
blockette in
buffer
ompute number
of words in block
ette to be transferred to output
Transfer significant words of
blockette to output
Is 1:::.. in last
significant linesl---~
of blockette?
Yes
Set up indicators
for string-out
control
Is this the
last blockette
buffer
6 blo cke ttes
Page 1 of 2
No
Setup indicators
for string-out
control
Up count of words
in output
Read in new
block of data
Write block of
string-out on
tape
Setup indicators
for string-out
control
Setup for examining next blockette
Is 1st line of
blockette a line
of spaces?
1---"",(
Up count of
words in output
Is 1st line of
block a line of
spaces?
No
Setup indicators
Setup for
for string-out ~----~
examining next
control
blockette
Read in new
block of data
638
Flow Chart for PRINT String-Qut Routine-Cont.
Flow Chart for Subroutine that looks for
'r---~
Set up to examine
la st significant
line
Page 2 of 2
b.. in Two Lines
-
/.
I s there a f:l, to
rightmost position
on next to last
line?
Is there
in line?
Yes
No
Set upto examine
next to last
significant line
Is there a
in line?
Yes
N0-V
Yes
PRINT STRING-OUT REGIONS
RE
RE
RE
RE
RE
RE
VN3507
WT3207
VK3317
GT21
GN1324
CT714
RE
RE
RE
RE
RE
RE
RE
RE
PS4400
TZ4445
HT4477
NR4527
VR4551
884562
ZP4605
WP4631
640
String-out subroutine
regions used.
Print String-Out
o
IA
MJ
PS
o
Exit
ZP23
TP
TP
ZP6
ZP14
12 TP
13 SA
GN6
BB15
14 TV
15 SP
16 TV
A
30000
A
PS17
TP
30000
A
EJ
ZP2
PS22
PS24
ZP3
PS17
WPI }
25
WPI
10
11
Loop to find
17
last line in a
blockette that 20
is not a line
21
of spaces.
22
23
24
Computation of 25
number of lines 26
to be trans27
ferred to VN
30
from VK block- 31
ette
32
MJ
RS
MJ
TV
LQ
QT
TV
TP
QT
TN
L~~ ~i
35 LA
36 TV
37 RA
40 TV
GN2
GN3
ZP
BB16
CT
PS7
1 TV
2 TP
3 DV
4 SA
5 TV
6 TP
7 QS
A
30000
o
PS17
o
PS17
WPI
ZP4
GN2
ZP4
WP2
A
WPI
ZPl
A17
A
PS43
Current address to v of PS7
A
A
}
Shift ~ A
6
Getting proper mask into Q
17 }
PS6
~oooo
Replacing current line with 77s and any
characters other than divider to be
printed
Clearing counter of blockettes used
Number of lines accumulated (4) to
line accumulative counter
Blockette count to A
Getting address of address of last line
of current blockette to u of PS15
WP5
WP6
17
A
i~l~
~P2
WP2
A
;P2
_
}
Getting address of last line of current
blockette to u of PS17
Contents of last line of current
blockette to A
Is it a line of spaces?
Reducing u of PS17 by one
Address of last significant line in a
bloc ket te to WP 1.
}
Current address to v of WP2 and v of A
L
J
~~43 }
GN2
ZPl2
PS44
41 TV
42 RA
43 RP
44 TP
WP6
PS44
PS44 }
B820
30000
~}
CA
PS45
o
IA
RA
TZ
WP6
WP2
1
TP
A
VN
30000
Number of lines in blockette to be
transferred to WP2
Setting up u of PS43 so that right
number of lines will be transferred to
output region
Setting up u of PS44 so transfer to VN
can be started
Getting right address in VN to which
transfer of lines is to be made
Transfer of excess-three-coded lines of
print data to output region
Number of lines accumulated plus number
of lines transferred from last b1ockives total accumUlated in WP6 to
ate. Total number 0 lInes in output
to first line of output.
641
2 RJ
3
MJ
4
RJ
WT
WT1
HT24
PS
HT20
o
5 TP
6 EJ
ZP2
7 SP
10 AT
BB
BS
11
MJ
12 RJ
13
14
15
16
Setting up GN2 17
to pro per 1st 20
1i ne add:c e S'S of
next blockette
to be examined
VK
o
TZ25
TU
GN2
TP
EJ
17 }
GN2
TZ17
30000 !Z14}
ZP2
o
TZ27
TZ
TP
SA
GN6
BB2l
A
A
TZ23 }
TU
TU
MJ
RJ
RA
RA
17
TZ24
A
30000 17
'IZ25
GN2
WP6
GN2
30000
1Z17 }
ZP15
WP2
PS12
30000
o
MJ
0
CA
TZ32
IA
HT
WP5
ZP1
Zp
fIT11
GN6
ZP13
GN6
ZP1
6 RJ
BB22
NR
NRI
NR2
7 RJ
TZ25
TZ17
10 MJ
11 TP
12 EJ
13 AT
o
TZ
GN6
ZP13
ZP1
~T16 }
GN6
14 RJ
TZ25
TZ20
o
RA
EJ
TP
3 EJ
1
2
4
RA
5
TV
Putting 0 VK VK into GN2
TZ
MJ
SP
AT
31
Getting output written on tape
Exit
Getting new block read in and getting
GN6 reset to zero
Is 1st line of new block a line of
spaces? If not, it is assumed to be a
line number and print is terminated
Setting up GN to proper 1st line address of next b10ckette
Is 1st line of blockette a line of
spaces? If not, it is assumed to be
a line number and print is terminated
Getting address of address of 1st
line of current blockette to Au
Setting up u of next 2 instructionsto
this address of address of 1st line.
Address of 1st line to Au
Address of 1st line to GN2 both in u
and v
Setting up GN2 to proper "tline address of b10ckette to be examined
Bringing up accumulative addition to
date of number of lines in output
Counts no. b10ckettes used
Have 6 b10ckettes been used?
Is this the last blockette in the
block?
Adding one to ordinal number of
blockette to be checked
TZ12 to v of NR1
Check to see if ~. is in last blockette in last 2 significant lines.
If not, return to TZ12.
Setting up GN2 to proper 1st line
address of next blockette
~T25~
642
Is the current blockette No.5 and
hence the last one in block?
Increasing b10ckette number by one as
we go on to next
Setting up GN2 to address of 1st line
of b10ckette next to be examined by
String-out Control
o
TZ
MJ
o
HT20
TZ7
TP
B817
15 MJ
16 RJ
17
120
Getting new
block in.
l
~~ :~
27
RJ
NR
o
HT16
MJ
o
CA
HT30
IA
NR
MJ
1
MJ
o
o
2 SP
3 TU
4 RJ
WPI
5 TO
6 TP
VR5
ZP5
30000
ZP7
7 QT
MJ
A
VRID
VR5
NR15
14
ZP16
TP
15 QT
16 EJ
21
RS
RJ
MJ
CA
1
7
10
0
NR22
TP
IJ
MJ
CA
ZPll
WP3
WP4
30000
WP3
WP
o
Exi t if aLl. is found
Exi t if no Ll. is found
Address of last significant line of
blockette is sent to u of VR5
Check for Ll . in last significant
line
Check for
last line
. in leftmost position on
Check for fJ. in righUnost position
on next to last significant line
Check for Ll . in next to 1ast
significant line
vn~v
VR
6 EJ
}
lm,n
ZP14
ZPI0
2 TP
3 LQ
4 LQ
5 QT
17
VR5
VR
30000
ZPl
VR5
IA
o TP
30000
30000
o
12 TU
13 RS
17
20
TZ4 to v of NRl
Check for Ll . in last 2 significant
lines in blockette. (Goes to TZ4 if
no fJ.. is found)
Returns here if fJ. . has been found
BB6
o
11
::: ~J
Reading in another block of data
to VI(
Keeping up count of number of blocks
read in by string-out
TV
10 EJ
Loop to
locate fJ..
13
GT2
ZP6
Getting a new block of data in
GT
GN6
30000
NRI
NR2
23 TP
24 MJ
25
26
HT24
NRl
WP
WP4
WP3
Index 4 to WP
Mask to WP4
Ll . to WP3
fJ. . shifted 6 places
7777 shifted 6 places
Portion of line is masked out
Is it equal to fJ. . in shifted
position?
6
6
A
NR
VR3
30000
VRI1
643
IA
BB
0
o
o
o
o
o
o
o
o
o
o
o
o
o
o
VK23
VK47
VK73
VKl17
VK143
VK167
BB7
16 0
o
ZP15
17 50
00105 VK
o
0
1 0
2
3
0
0
4 0
5 0
6 0
7
0
10
11
12
13
14
15
0
0
0
0
0
20
0
21
0
22
o
1
o
VK24
VK50
VK74
VK120
VK144
TZ12
0
BB23
IA
ZP
o
o
1
01010 10101
3
0
1
4
5
0
6 0
7 22
10 77
11 22
12
13
14
15
16
17
0
20
0
0
0
0
0
0
21 0
22
23
0
77
CA
o
o
o
o
o
o
30000
Line of spaces
o
~7777}
o
o
o
01
o
5
1
1
Masks
Period
Mask
77
o
o
o
o
Address of address of last line of
1st b10ckette
Used to help to get proper mask for
changing 1st line of b10ckette that
is to be printed
Parameter to use GT ih reading in
another block
Address of 1st line of output
Address of address of 1st line of 1st
blockette
6
2 01
77
Addresses of last lines of b10ckettes
in input
VN
BB
0
Address of beginning lines of
blockettes in input
TZ4
o
CA
0
0
VI(
~
Index
4
77
7777
7
77777
777
77777
77777 77777
77777 77777
ZP24
Masks
644
Temporary Region - WP
o Index for search for
1
2
3
4
5
6
~.
Holds address of last significant line in blockette
Number of lines transferred per blockette
Holds 6.. shifted for comparison
Holds mask shifted
Counter for nwmber of blockettes examined
Nwmber of output lines - accwmulative
645
IF STRING-OUT
There are two separate analyses in this routine - one of the first clause
started by IF subroutine and the second of one or two succeeding clauses started in IU subroutine. Each of these control routines has in turn several subroutines which handle different facets of the string-out.
Examples of typical IF sentences are shown below:
X < Y jump to sentence 7, if X > Y jump to sentence 74.
X = Y jump to sentence 32. 5 ~ .
X > = Y jump to sentence 65, if X < Y jump to sentence 44 ~.
36.
X NOT = Y jump to sentence 2. if X = Y jump to sentence 36 ~ .
13.1
12.
X > Y jump to sentence 6, if X < = Y jump to sentence 52 ~.
X = Y jump to sentence 41, if X NOT = Y jump to sentence 31 ~ .
11.
40.4
X < Y jump to sentence 30, if X = Y jump to sentence 4 ~.
X = Y jump to sentence 50 !:l.
76.
X < = Y jump to sentence 42 ~ .
72.3
X (i,j,k,l) > Y(i,j) jump to sentence 3, if X(i,j,k,l) <
21.2
=y (i,j) jwnp to sentence 5.2
Only one set of variables or constants is permitted in anyone IF sentence.
Each of the first five examples above exhausts all the possible relations
between X and Y. No duplication of relations is permitted in separate clauses.
24.
If
if
If
If
If
If
If
If
If
If
Throughout this write-up the set of variables or constants will be referred
to as X and Y, X being the left-hand value and Y the value on the right of the
relation symbol. In actual use, of course, X and Y may assume any and all of
the combinations of letters and figures that constitute variables and .constants ..
No distinction is made between X and Y. Restrictions on anyone apply equally
to the other.
X and Y may be numbers in scientific notation form. The latter ideally
is a number in decimal form between 1 and 10 times a power of 10. Actually
any number up to 12 decimal digits is permitted to be the left-hand member of
a scientific notation number. Other variations taken care of by the program
are revealed in the examples given below:
646
1.234 e 34
20
3.4567235641 * 10
6.8924 * 10 POW 29
9. 67 ~~ 10 POW 18
8.3276 e -23
-5.298765
*
10 33
2.3678987654
7 ~:~ 10-22
4
..
*
10 -16
...
3.56 ~~ 10 _34
-2.6784 e -39
-2.6784 e -39
-2.6784 e _39
3.3786 * 10-23
The asterisk, used as a multiplication sign in UNICODE, is the only binary
operator permitted in the IF sentence, and it is only allowed in scientific
notation. Note that the superior negative sign may be used in front of the
power of 10 instead of the regular negative sign, but the superior sign may not
be used in front of the left-hand member of a scientific notation number.
Following an asterisk 10 must appear. The next number is assumed to be the
power of 10 whether superior or lower-case. Following e (exponent) the next
number occurring is assumed to be the power of 10.
Too high a value of exponent may give a floating-point number which is too
large to represent. Ordinarily such a number would cause a machine fault and
stop. A subroutine IQ is used in this connection to locate such discrepancies,
avoid the machine-faulting stop, and give an error print-out.
See separate
write-up on this subroutine.
No expressions are allowed in the IF sentence. No plus signs are p~rmitted.
The absence of a negative sign indicates positive. Thus, some examples of what
X and Y may QQl be are: a + b, a - b, a / b, Z + a * b, a2 , ba ,a 3/2 •
If such evaluations are to be compared. they must be computed separately
by other instructions first and then referred to in the IF sentence by the
simple variable to which they have been equated.
In the following chart are given the relation symbols permitted by the
IF routine. NOT, occurring in the second position of a symbol set, is not
647
acceptable.
Thus, NOT NOT is not acceptable, but other double-up relation
symbols are interpreted as single symbols.
For example, < < is taken asmean-
ing <.Tf NOT OCGurs alone as a single relation, it is accepted without e:rror
reference with the print ....out:
Preferred
Form
<
NOT
>
(NOT) interpreted to mean (NOT EQUAL).
Acceptable Variations
Code Figures
Assigned
to Relations
<
< <
2
=
-- --
3
>
> >
4
=
=
=
=
<
NOT>
<>
><
=>
NOT <
S
NOT
6
7
The code figures assigned to these relations are used by the routine to
check on non-duplication of relations and to facilitate the reversal of a
relation symbol when needed. 6 - {2,3,4} = {4,3,2} and 12 - {S,6, 7} ~{7,6,S}.
This enables < to be changed to > and ~ to ~ , and vice versa. = is never
changed to NOT -, and vice versa. A total of three single-relation code
figures is always 9 when all possible relations of X and Y have been postulated
and there is no duplication. Similarly, the total of a double-relation and a
single-relation, non-duplicating symbol is 9.
The X and Y initially examined in the first clause form the set that is
stQred for later comparison in the running program. The sets of X and Y that
appear in the second and third clauses are compared to the first set as a
check on the validity of the sentence.
Ideally any set of X and Y should be repeated with the same order and with
the same set of signs in the second and third clauses as it had in the first.
If care is taken to do this, the routine operation is speeded up. However,
failure to do this does not necessarily invalidate the sentence. If it can be
done without changing the meaning, the program will reverse the relation symbol
to correct altered order and signs.
See section describing technical operation
of JF for details on the theory back of relation-symbol reversal.
648
An example
of how it works is the following:
and -Y < X in the second clause.
and stores the > symbo 1 in output
Let X < -Y be contained in the first clause
The routine interprets the latter as X> -Y,
e
If the second or third variable set cannot be equated to the initial set
by a consistent sign change, an error print-out will occur. All that is
stored from the second and third clauses of an IF sentence for use in the
running program are the line numbers to which jumps are to be made and the
relation code figure for the second test, if any.
No more than two tests are needed in a running program for an IF sentence.
A third IF situation following two tests is always an unconditional jump.
Similarly, if the first test is for a double relation, its failure makes a
second IF hypothesis true, necessitating an unconditional jump, and vice versa.
In the last situation VN6 and VN7 (the second test and line number storage)
are left empty, VNIO gets the line number of the unconditional jump, and VN4
and VN5 take the first test code and line number, respectively.
See attached
sheet explaining output.
To return to additional specifications in writing X and Y, a superior minus
sign is not permitted to indicate negative value of X or Y.
If an absolute
sign has already appeared, a negative sign following it will be ignored since
the absolute sign negates its meaning.
An absolute sign causes the indicator
for such to be put into the proper line, regardless of the previous appearance
of a negative sign.
A~
absolute sign appearing In front of a variable or constant applies only
to that variable or constant.
the value is not noted.
The absence of a closing absolute sign after
However, the appearance of a closing absolute sign
causes a check to see if an open absolute sign has been recorded.
If not,
there is an error print-out.
Only a single value is stored for a function in UNICODE.
The use of a
variable function in an IF sentence presupposes its computation or read-in via
a previous instruction.
Hence arguments following a function, whether of
constants or variables, are ignored both in analysis of the first clause and
in analysis of the second and third clauses.
Also differences between these
superfluous arguments between clauses are not noted.
649
If either X or Y is a fixed-point variable, the other must be a fixedpoint constant or fixed-point variable.
If either X or Y is a floating-point
variable, the other must be a floating-point number or variable.
Based upon
such considerations, the routine translates numbers to octal or floating point,
gives them call words, and stores them in list CL.
If both X and Yare constants, they are sent to the subroutine IT, where
an immediate comparison is made of them.
If the test shows the relation true,
the sentence is changed to a jump sentence and the string-out output modified
accordingly.
G (see print-out schedule) alerts the operator to this decision
9
without error reference.
If the test fails, a jump is made to the beginning of the IF routine and
the remaining sentence clauses (if any) are processed as a separate IFsentenee.
This is the reason recognition of the IF symbol is built into the first part
of IF string-out.
If specific sets of arrays of values of unknowns are to be compared, subscripted variables should be used. Up to four subscripts may be used for each
variable.
Subscripts in an IF sentence may not be expressions.
However, a
subscripted variable used for X or Y in the second or third clauses must agree
in every particular with that used in the first clause. As an example, suppose "X(i,j,k) < Y(i,j,k,l)" is in the first clause; X(i,j,k) and Y(i,j,k,l)
must also appear in the second and third clauses.
All print-outs include as a first element, Sentence
dash indicates a line number which will be typed out.
(IF), where the
Some print-outs merely
give information on how the program has handled an unusual situation.
These
do not cause a reference to the error routine or termination of the IF
string-out.
Other print-outs are accompanied by an error reference but not
termination.
The more serious type includes both error-referencing and IF
string-out termination. Some without built-in termination are used most of
the time with external termination.
In the attached chart of print-outs,
subscripted G's are assigned for simplification of following technical
description of the segments of the IF string-out.
650
Error Reference
J
J
./
J
./
J
J
I
/
Sentence
G
3
Symbol rejected
h_
-4
Dis a1 Iowab Ie character in
G
5
G
6
Incorrectly written
Scientific notation incorrectly written
G
7
Open absolute sign
missing
G
IO
GIl
G
l2
-../
j
( IF)
G
I
G
2
G
S
Gq
I
Bui It-In If
Termination
Print....out
Identification
J
Inconsistent sign change
Exponent
*
J
TO should fOllow jump
I
Becomes Unconditional
Jump to Sentence
' Space period occurs
before sufficient data
given
Comparison symbols
ambiguous
J
Set of variables differs
~..,.
...........
.1 .L V III
';.,..':+':_1
.L IJ .L ... .L CI .1
... ,,01C ...
~
G
l3
(NOT) interpreted as
(not equal)
G
l4
Fixed and floating point
values are not comparable
I
.../
j
*The symbol being examined when this print-out occurs is given here.
It indicates how far in the sentence analysis has gone before external
termination.
651
IF Control
subroutine is the control of analysis of the first clause of the IF
s,~ntence.
It clears VN output lines (except for first four) and clears temporary storage lines VN7l-l2l. See attached charts for explanation of data
stored in these addresses. VN7l-l21 is used first to accumulate data on X.
Then this data is transferred to VN40-70, leaving VN71-121 for use in accumulating data on Y.
IF
The divider routine II is set up so that it can be entered only once
without error during the first-clause analysis. The first two symbol output
lines are sent to temporary storage. A pseudo-op indicator is put in VN33, if
needed.
Recognition of , ; IF ( causes a return to the SY referencing instruction
that gets the next symbol. Ll . recognition sends analysis to the IK termination routine. If the symbol is a constant, control goes to IE. IG takes
over for a fixed-point variable and IH assumes control for all other variables.
A character not identified callses print-out G3 and then a return to get
next symbol.
IK--
Ll. Termination
Zero value is checked for successively in VN5, VN4, VN14, and VN24. If
found in any, print-out GIO ensues with te~ination. If not found, WT, the
tape-write routine, is referenced to get completed data written on tape before
return to CT, the String-out Control Routine.
From the analyses of the second or third clauses, an entry is made to
IK14. The absence of zero in VNIO sends the routine to the loop mentioned
above. If a zero is found in VNIO, a check is made if VN34 equals 00 00003
0'3000. If yes, GIO occurs with termination. If no, VN7 and VN6 are successively examined for zero. If found, GIO occurs with termination. If not
found, a jump is made to the loop of zero checking described above.
IE Constant Analysis
Reference is made to RB for checking validity of a constant.
indicator is stored in VN31 for X and VN32 for Y.
652
A constant
If the number of characters is > 6, the number is converted to floating
point via proper subroutine.
filled with 40
0 O.
Also, a floating-point constant indicator is
This is necessary because a floating-point number may
be zero and its presence as such in regular floating-point location could not
be recognized.
Either a superior or regular dash is permitted to indicate a negative sign
following e or * in scientific notation. Failure of a figure to follow this
sign causes G . 10 not following * causes G . 10 may not be a superior figure.
6
6
After 10, there may be POW, but after this either a negative sign or figure
must be next to avoid G •
6
An exponent is checked by RD subroutine.
If superscript, it is sent to
IN, the Superior to Lower-Case Translator, where G may occur.
4
write-up on this subroutine.
See separate
The exponent is then converted to octal by use of RS subroutine and transferred to proper input line IQ2 either as a positive or negative number.
After
checking and conversion to floating point in IQ (see separate write-up), the
number is changed to negative, if desired.
Failure to find an open absolute sign when a closed one has shown up
causes G •
7
A relation symbol < , > , =, or NOT causes a jump to II subroutine.
symbol sends control to IJ subroutine.
to beginning of loop to get next symbol.
JUMP
Characters ( ) , ; initiate a return
An unrecognized symbol causes
G~
oJ
without termination.
This loop, starting at IEl15, is used frequently as an
exit by other subroutines.
IG--Fixed-Point Variable Analysis
After a reference to RH to check for validity of variable, the call word
is obtained from TS if it is there, or from TA when it is in the Combination
List.
If the call word is not in the latter or the pseudo-op list, it is
secured by adding 64000 to a number put in A by RJ
tk
tkl.
It is then
added to the combination list by using TF and TE. Explanation of uses of
these rout inesis found tn separate wftle;';;lrpS 'o'fe~a(HL
6.53
IH and IL--Floating-Point Variable Analysis
On entry to IH, two separate courses are taken, depending on whether the
sentence is within a pseudo operation or not.
If a subscripted variable is identified, the modulus (the number of words
stored for the variable) is assigned a call word, and this call word put in
the u position of an output line.
In the same word in the v position is put
the number of subscripts.
The format of the data on a subscripted variable obtained from the combination list is as follows:
(call word)
TA4
0
0
TA5
0
(modulus)
TA6
0
(2d subscript
multiplier)
(1st subscript multiplier)
TA7
0
0
(3d subscript multiplier)
(number of subscripts)
The proper multipliers for the subscripts of variables not in the pseudo-op
list are obtained from region TA by means of a small subroutine entered via 2
one-shot RJ switches. The order of entry (only three for any set of subscripts) determines wbich mul tiplier is secured. The Constant call word assi gned
to it is then transferred to the u position of the output line.
The v position
of this line is later filled with the call word of the fixed-point variable or
constant involved.
The call word of the pseudo-op subscripted variable is in the form 0 0
76ZRR where Z is the number of subscripts and RR the current pseudo-op variable
number.
Thus, if 3 single-valued variables have been assigned positions in
the pseudo-op list, (0,1,2), RR will equal 3.
The routine extracts the Z and
sets up an index for processing the subscripts. To the extracted RR is added
63000. This number becomes the call word of the subscripted variable. The
number of subscripts is added to 630RR to give a call word assigned to the
modulus. The call words of the subscript multipliers start with (630RR + 1).
As subscripts are encountered, they are supposed to have call words starting
with (630RR + Z + 1).
Below is given an example of pseudo-op input region
for the case of three subscripts.
654
Assigned Call word
630RR
Subscripted variable
630RR + 1
Ium - 1st multiplier
630RR + 2
630RR + 3
M - 2d multiplier
Modulus
630RR + 4
Subscript 1
630RR + 5
Subscript 2
630RR + 6
Subscript 3
J
A subscripted variable in a pseudo operation may be a regular floatingpoint variable or pseudo-op variable.
Whichever it is, it may have fixed-
point variable subscripts located either in the pseudo-op list or combination
list.
If these subscripts are found in neither list, they are assigned call
words in the 64000 range and put in the combination list.
Note that if a
subscript is a constant, it will not be in the pseudo-op list.
If a subscript of a subscripted variable fails to be either a constant or
a fixed-point variable, G occurs with termination.
5
When the call word of a nonsubscripted variable has been stored, it is
examined to see if it is that of a function. If so, analysis goes to an IL
exit subroutine in which any arguments that might be inadvertently put following the function are ignored.
the IE exit subroutine.
Exits and print-outs are the same as those in
If the call word is not that of a function, the exit
from IL is made via the IE exit subroutine.
II--Relation Symbol Analysis
No more than one entry can be made to this routine during an IF instruction.
A second entry causes G with termination. Failure to have a
5
second relation symbol in the clause follow immediately after the first will
create this error.
A "NOT" occurring in the second position causes the same
error termination.
The data gathered on X is transferred by this coding from VN71-121 to
VN40-70 and the first region is cleared for succeeding data to be gathered
ortY.
655
IJ--Jump Subroutine
Failure of the next symbol to be '~O" causes Ga without error reference.
A loop of symbol recognition similar to that used in the separate jump instruction string-out is included at the start. See the write-up on this
routine. Failure to meet the specifications of the loop causes G with
5
termination. Getting the assumed line number into proper form terminates
this first loop and may cause error print-outs explained in the line-numberroutine write-up. Regardless of what happens in the line-number routine,
its output is transferred to VN5 and the string-out continued. The referenced
number is sent via IX routine to reference list IZ where it is later given
a call word by other routines.
Variables or constants X and Yare compared in the second part of this
subroutine. Combinations of floating-point and fixed-point values cause G •
14
Fixed-point numbers or those assumed to be such are not translated from
excess-three decimal code until the analysis of this subroutine. Then they
may be translated either to octal or floating point, depending upon the nature
of the corresponding variable or constant.
VNII to VN30 output lines are now filled with the data that has been
gathered in the temporary storage regions.
The closing loop checks for parentheses, comma, semicolon, space period,
and IF. G ensues with termination if none occur. Recognition of IF sends
5
the analysis to IU, the beginning control routine for analysis of the second
clause.
IU--Second and Third Clause Control
The absolute sign indicators for X and Yare transferred to the temporary
storage lines directly above the excess-three representation of X and Y,
respectively. Thus 11 identifying lines on each of X and Yare in one location
for future reference.
Exits from this control routine are IY, IY33, JB, and IKI4, depending on
whether X or Y is a constant, fixed-point variable, or floating-point variable,
or whether ~ . has been encountered. Temporary storage region VN150-164 is
cleared for gathering of data on X or Y.
an unrecognized symbol.
656
G occurs without error reference for
3
IY--Number Analysis
This routine (the counterpart to IE) has similar checks on scientific
notation.
G or G follow a misuse of the latter. Excess-three storage of
12
6
data on X and Y is continued in it. The exit loop is in J86-J817 and is
shared with variable subroutines. G occurs if indicated following use of
3
this loop.
JB--Floating-Point Variables
If a f10ating-point-variable symbol is not found in either the combination
list or the pseudo-op list, it cannot be the same as any of the symbols encountered in the first clause.
Hence G follows.
l2
Excess-three representations of subscripts are stored in VNIS6-161.
The exit loop sends analysis to JC for a relation symbol, JF for a jump
symbol, and IKl4 for~.
Additional errors and print-outs are similar to
those of IH and IL.
JC--Relation Symbol Subroutine
Count and storage of excess-three relation symbols is the function of this
routine.
Also data on X is transferred to VNl30-144, and region VNISO-l64
is cleared for use of Y data accumulation.
If two relation symbols have been
found, control is transferred to IUS to get next symbol.
Otherwise, the jump
is made to IU6 since an unidentified symbol has still to be examined.
G
S
followed by termination occurs if routine is referenced twice in a single
clause analysis or if second symbol is "NOT".
JI--Relation-Symbol Check
Referenced from JF, JI examines the count of relation symbols, checks
their consistency with previous counts, and assigns a code figure to the symbol
either in VN6 or temporary location JI123 if all relations have been used in
a sentence.
An accumulative excess number (over 3) of relation symbols causes
Gil-
6S7
JF--Second Jump Subroutine
Let us call the X symbol the second or third time through X and the Y
2
symbol Y • This routine compares excess-three data gathered on X in VN131-14l
2
2
with similar data gathered on X the first time through. If an inequality is
found, Y data in VN15l-l6l is compared to X data.
2
Similarly, as the situation
requires, Y data is compared with Y data and later, if needed, with X data.
2
2
Next signs are compared.
Since the only values obtained from the second and third clauses other than
the line numbers are the relation symbols, it was convenient in a few lines to
use a theory of symbol reversal to correct what might ordinarily have been
errors in position and sign of variables.
Xes) means sign of X.
Following
are the rules that govern such reversal.
Variables
X
Symbol
Reversal
Signs
No
= X2
Y= Y
Yes
2
X
Yes
= Y2
Y = X
2
No'
All sign combinations other than the above cause G • Failures to find
2
equality of {X,Y} with {X ,Y } , exclusive of sign, in any order causes G12 .
2 2
After symbol reversal, if needed, the relation codes are compared for
uniqueness and internal consistency.
A loop to get the line number operates
similarly to the one in IJ.
If VNIO has been filled with a line number, the next loop is the final
exit. If only VN7 has a line number, a loop is entered which, on recognition
of an IF symbol, will send analysis back to IU2 for the third and final
analysis of an IF clause.
The final exit loop permits only a closed paren-
thesis and~. The other loop permits ( ) , ;~.
recognize a symbol causes G with termination.
5
658
IF.
Failure of either to
Prior to analysis of the third clause, this routine puts 00 00003 00000
in VN34.
This indicator is later used to check if sufficient data is given
in the third clause to complete the sentence string-out.
Output VN
o
o
I
Line Number
2
IF77777777
3
o
o
0
34
Number of lines of output in v
Name of instruction
v
v = call word of line number.
o
u
v
o
v
15
o
o
Holds code figure E{2,3,4,5,6,7} to indicate
relation test
Line number of sentence to be jumped to on
first test.
Holds code figure in v for second relation
test
Holds line number of sentence to be jumped
to on second test
Holds line number of sentence to be jumped
to unconditionally
u = Call word of modulus. v = number of subscripts of X
Negative value desired if 40 0 0, otherwise cleared
Absolute value desired if 40 0 0, otherwise clear
Call word of X
u
v
u
16
o
u
v
u
17
o
u
v
u
20
o
o
v
21
o
u
v
4
5
6
7
10
11
12
13
14
= call
of I
= call
of J
= call
word of I multiplier. v
word of J multiplier. v
= call
= call
= call
word
word
22
word of K multiplier. v
word
of K
v = call word of L
u = call word of modulus. v = number of subscripts of Y
Negative value indicator
23
Absolute value indicator
o
v
Call word of Y
u
26
o
o
o
u = call word of subscript multipliers
v = call word of subscripts of Y
27
o
u
v
v
v
30
o
o
v
24
25
u
31
If X is a constant, 40 0 0, otherwise clear
32
If Y is a constant, 40 0 0, otherwise clear
33
Pseudo-op indicator, 40 0 0, otherwise clear
659
*Temporary Storage in VN
X
y
40
71
Floating-point constant
41
72
Fixed-point constant in excess-three
42
73
Used in making call word of multiplier
43
74
44
75
45
76
77
100
101
102
103
46
47
50
51
52
53
{
Indicator of fixed-point variable (40 0 0)
Holds absolute-sign indicator during comparison
2
Excess-three representation of variable
sy3
SY}
Sign of exponent indicator (40
Exponent of 10 in excess three
Subscript 1 in excess three
Subscript 2 in excess three
Subscript 3 in excess three
Subscript 4 in excess three
54
104
105
55
106
u = call word of modulus; v = number of subscripts
Negative sign indicator (40 0 0)
56
107
Absolute sign indicator (40
57
110
Call word in v
60
III
u = call word of I multiplier; v = call word of I
subscript
61
112
u
=call
= call
word of J
62
113
u
= call
= call
word of K
63
114
word of K multiplier; v
subscript
v = call word of L subscript
64
65
66
67
70
115
Index for subscript assembly
116
Count of relation symbols
117
First relation symbol
120
Second relation symbol
121
Floating-point constant indicator (40 0 0)
31
132
33
151 )
152
153
0
word of J multiplier; v
subscript
Negative sign indicator (40
~
0 0)
0)
0 0)
Ab~olute sign indicator (40 0 0)
sy
sy 3
Excess-three representation of variable
660
r134
135
154
~ 136
156
l137
157
160
140
141
155
142
161
162
143
163
144
164
1
Sign of exponent indicator (40
Exponent of 10 in excess-three
0 0)
Subscript 1 in excess-three
Subscript 2 in excess-three
Subscript 3 in excess-three
Subscript 4 in excess-three
Count of relation symbols
First relation symbol
Second relation symbol
*Braced portions are those compared during analyses of second and third
clauses to determine equality of variables.
661
Scientific Notation Checking Routine
The purpose of this routine is to check the size of a number in scientific
notation form and then convert it to floating point. If it is too large for
floating-point representation, the error routine is referenced and the following
error print-out is given: Sentence
(
)--Absolute Value of Number
Too Large. If too small, the floating-point representation is set to' zero
and this print-out occurs: Sentence
(
)--Absolute Value of Number
Too Small--Given Zero Value. In the latter case, the error routine is not
referenced.
To use the routine a number to the left of e or * is first converted to
floating point by use of the "excess-three decimal to floating-point~ routine.
This floating point number, either positive or negative, is put in input line
IQ2. The exponent of 10 after conversion to octal by means of the proper
routine is put in input line IQ3. It also may be either positive or negative.
Instruction RJ IQ IQl then performs the check and, if the absolute value of
the number is not too large, puts the correct floating-point representation
into IQ2 as the output.
662
Superior To Lower-Case Translation of Figures
Input to this routine is one line of superscript figures packed starting
at the left with 77 fillers at the right.
No characters other than superscript
figures are permitted. Thus periods are not allowed, and only integral figures
are translated. Both the input and output are in excess-three decimal code.
The input line, in2, becomes the output line on termination of the referencing
instruction, RJ in inl.
If the first character on the left is 77, no translation is performed.
The input line, in effect, is untouched.
If a character is not a figure or a 77, the error routine uz is referenced and there is a print-out:
Character in Exponent
character.
Sentence
(
).
Disallowable
In the last blank is given the print-out of the
This print-out occurs for every erroneous character in the line
prior to the first 77.
When a 77 is encountered, no further analysis or
translation of the line occurs.
What has been translated is packed at the left,
and the balance of the line is retained the same as it was in the original
input.
663
IF Control Routine
r-l-e-a-r~in-g--o-u-t-p-u-t--a-nd--'
temporary storage
, lines
Number of lines (34)
to v of first line
of output
Flow Charts for IF String-Out
Set up 1st line of
II divider routine
Pseudo-op indicator
to last line of output if within
pseudo-op
Get next symbol
Store 1st two symbol
words in temporary
storage
No
IK Termination
f)"
•
Routine
Has an absolute
sign been used?
Is symbol a
negative sign?
No
Set absolute sign
indicator
Is symbol an
absolute sign?
No
Error reference and
print-out: Sentence
- - ( I F ) space period
occurs before sufficient data given
Is symbol
a constant?
No
Is symbol a fixed point variable?
No
Is symbol a floating
point variable?
as an unconditiona
number been given?
No
Warning Print-out:
Sentence ___ (IF)
symbol
rejected _______
IE CoUtant ROlltines
Convert figllre to
floating point and
store
Are nllmber of
decirna 1 points zero?
-:r
Complement floating
point figure if
negative sign indicator is set
Pli t floating-point
indicator in storage
No
Changing fixed-point
figllre to floating-pt.)
storing. and setting I----~
floating-point indicator
Changing fixed-pt.
nllmber to a floatingpt. nllmber. storing
and setting floatingpoint indicator
No
Complementing Slibrolitine
12
Constant Termination Loop
Get next
symbol
Is symbol an
absolute sign?
No
Error reference and
print-out: Sentence
open
absolute sign missing
Warning Print-Out:
Sentence ___________
UF)
symbol
rejected __________
_ _ (IF)
IG Fixed-Point Variable Routine
Check i f symbol
a va lid
variable
Set fixed-pt.
variable indicator
in temporary
Is sentence
within pseudoop?
Get next call word
of 64, 65, 66 type
Adding symbol and call
word to Comb. List
Pseudo-op ca 11
word to storage
IH and IL Floating-Point Variable Routines
Set ups
Check if valid
floating-point
variable
Is sentence within
pseudo-op?
•________________________________________- - ¥
Is symbol in pseudoop listj~
No
Set
ups
Combination List
symbol search subroutine
<
~
Call word of a
subscript to v of a
storage line
Subscript index
Is subscript
index zero?
Is subscript index
zero?
-~-
No
Call word of multiplier to u of a storage line
index
)
o
"...-_____---~ Yes
Is symbol a pseudo-op
subscripted variable?
Call word
of modulus
No. of
subscripts
formed and put
in storage. Index
set up.
Call word of multiplier to u of a storage line for pseudoop
No
Call word of subscript to v of a
storage line
Subscript
index
Is symbol a
function?
Yes
Get next
symbol
symbol
;?
Yes
Is subscript index
zero?
~NO~ymbOl an
~ute sign?
Is symbol
< >
Is symbol space
period?
= NOT?
a)yes
Warning Print..out:
Sentence
_ _ _ _ (IF)
Yes
Is symbol an argument
variable of a function?
Is symbol an argument No symbol
constant of a function?
rej ected
Yes
Error reference and
No
print-out: Sentence
~n open absolute ~___~~ __________ (IF) Open
~ been used?
absolute sign missing
Yes
Combination List Symbol Search Subroutine
Is symbol in
Combination List?
Yes
Call word to temporary
location
Is symbol a subscripted variable?
Yes
o
Call word No. of
of modsubulu s
scripts
formed and put in
storage. Index set up.
No
Obtain a call word for
variable and store in
a temporary location
Add file on variable
~-~ to Combination List
Subroutine to put call word of subscript multiplier (not for a pseudo-op sub variable) to
u of a storage line
I-shot
switch Jump
to (29)
~
31
I-shot
swi tch . . . j ump
to (31.
xtract 2nd multiplier from dimension
list
Extract 3rd multiplier
from dimension list
30
xtract 1st multi- ~
from dimensio
30)
11 st
et
29
pl~~r
Obtain and store call
word for multiplier
in u of a storage line
3 Subroutines to put call word of a subscript to v of a storage line:
2 - Checking if fixed-point variable is in pseudo-op list and getting call word. if so.
Is fixed-pt. variable
in pseUldo-op list
No
Yes
Call word to v of a
temporary
f<
I-Handling subscript if a constant and checking if it is a fixed-point variable
symbol
Get next symbol
) ;?
Yes
s symbol a
fixed-point
variable?
Check if syt!lboI
is a valid fixe
point con stant
Is symbol
a constant?
No
Check if it is
a valid fixed-pt.
variable
Store in a
temporary
location
No
Store X3 of constant
in a temporary
Convert X3
constant to octal
Obtain call word
for constant
Store call word
of subscript in
v of proper
location
Sentence _ _ _ (IF) Symbol Rejected _ _(Warning only)
~_~
Rejected symbol to
print-out storage
Print-Out:
Sentence
(IF)
symbol
Print-Out:
rejected ______
3-Checking if fixed-point variable is in Combination List and, if not,
adding it in. Call word to location.
A
,
Is fixed-point variable in Combination
List
Yes
,.
Call word to v of
temporary
No
\~
Add variable and call
. . word to Combination
List
Obtain c:all word
for it
--V
~
ID Print-Out Subroutine Sentence_(IF) Inconsistent Sign Change
------------------~
Subroutine
print-out:
Sentence.
(IF)
Reference error
routine
~----~
Print-Out: Inconsistent sign
change
Call word to
v of a temporary
Sentence _____ (IF) Scientific Notation Incorrectly Written
62
Jo-o-----:.t
Print:
Sentence
(IF)
Print:
Scientific
notation
Sentence ______(IF)
A
"7"
-,
Print:
43 ~----~ sentence
Print: Space period
occurs before sufficient data given
-..
Reference
error
routine
and Floating-Point Values Are Not Comparable
t----~
(IF)
Referen ce
error
routine
Space Period Occurs Before Sufficient Data Given
Print:
Sentence
(IF)
Sentence _ _(IF) Fixed-
Print:
Incorrectly
written
Reference
error
routine
t----~
Print: Fix.edand FloatingPoint values are
not comparable
I----:~
Sentence ___ (IF) Oisallowable Character in Exponent _____
Print-out: Oi sallowable character in exponent .____
Add character to
line of
print-out
~--~~last
Reference error
Character put back in
routine and print:I---~ A before exit.
Sentence _____ (IF)
Sentence ____ (IF) TO Should Follow JUMP (Warning only)
~--~
Print:
TO should
follow~--~
JUMP
Sentence ___(IF) Set of Variables Differs From Initial Set
Reference
60 i----.li!IoI error
routine
Print:
Print: Set of
Sentence _ _ _ t------iillt variables differsl----~'
(IF)
from initial set
Sentence _____ (IF) Open Absolute Sign Missing
Print:
Sentence
Reference
error
routin
(IF)
Print: Open
Absolute Sign
Missin
Sentence ___ (IF) Comparison Symbols Ambiguous
Reference
error
routine
-I---~
Print:
Sentence
(IF
____
t----~
Print: Compariso
symbols
ambi uous
1 - - -.....
Sentence _~___ (IF) Incorrectly Wri tten •____
Print-out of symbol
which caused sentence
ana ly si s to break down
Subroutine to reference
Print-Out:
error routine and print:r---3M Incorrectly
Sentence.
(IF)
written
Sentence_(IF) Becomes Unconditional
Set ups of printout subroutine
t----.;~
Jump to Sentence _ _ (Warning only)
Print:
Sentence ____
(IF
l--~
2nd line number
to print-out
storage
Sentence .___ (IF) (NOT) Interpreted a s (NOT EQUAL)
(Warning only)
Print: (NOT)
Interpreted
as (NOT EQUAL)
Print: Becomes
Unconditional
jump to sentence
11 Divider Routine
13
I-shot switch jump to
~
On a second time
th!'u, will jg" to error
pnnt-out ~
Error reference and
print-o'Jt: Sentence
_--_(IF)
Incorrectly written
Store first relation
symbol
Start count of
relation symbols
Transfer group of
X data to new
temporary location
indicator to
1st-test output line
·2~
"4" indicator to
1st-test output line
"3" indicator to
1s t -test output
line
Warning Print-Out:
Sentence _ _ _ =1
J~ymb~
No
~·--..;aI~T? ~
Yes
x = lst
variable or constant in 1st clause of IF.
X2 = ,1st variable or constant in 2nd or 3rd clause of IF.
y = and variable or constant in 1st clause of IF.
Store 2 nd re lation
symbol in temporary
storage
Transfer X2 data
new temporary
location
Y2 = 2nd variable or constant in 2nd or 3rd clause of IF.
Up count of
Clear space for
Y2 data to come
]
'----r--'-
Is count of re- ' )
lation symbols ~ 1
--------~------,/
JF Jump Routine for Second or Third Clause
76~----------------~
Yes
Subroutine to check
consistency of re lation
symbols and assign
code figures
Is line no. for 2nd
test in ou tpu t?
Reverse relation of
single symbol in temporary storage.
6 -{2,3,4}= {4,3,2}
(JI)
No
Is there a re lation
symbol in output for
second test?
Reverse re lation of
single symbol in 2nd
test output line
6 - {2,3,4} = {4,3,2}
Reve rse re lation of
double symbol in
tempora ry storage
12 - {S,6,7}= {7,6,S}
Warning Print-out:
Sentence _ __
(IF) TO should follow
JUIP
Is symbol to,SEN1EN,
Has a line nuntler
a lready been put in
for second test?
STAtEM, LINE, NUIllER,
NO., SENT.?
No
Error reference and
print-out:
Sentence _ _ _ (IF)
incorrectly
written
No
Une number put in
for 2nd test
JI Subfouti ne to Check Consistency of Re lation Symbo Is and Assign Code Figu res
Has a double relation
symbo 1 been used for
1st test?
Is the current count
No
r~elation
of relation symbols 2?r--------------------~~~OI
Put indicator 1f28-" 3\jXi
into 2nd test output relation line
"4'}V
Yes
Yes
Yes
Put indicator
into 2nd test output relation lino
IS -;.;;- current c~~
of relation SymbO~
X it
Put indicator "3"}~Xit
into 2nd test output relation line
No
Indicator "2" put
into temporary
Indicator "4" put
into temporary
Indicator "3" put
into temporary
Warning print_out.}:
Sentence - - _ .
'yXi
(IF) (NOT) inter··
preted as (NOT
EQUAL)
-0"
indicator
to temporary
I
~
~
.
]-VXit
"7" Indicator
to temporary
Subrou,tine to Check Equality of Variables or
Consta)Jts in Separate Clauses
Is one line of one group
line of
other group?
= corresponding
it
~
"4" indicator to
2nd test line
Yes
Alter comparing
instructions
for next line
of groups
1st symbol is NOT
~J
/---~
Set up index for
6 characters
Extract a character
from input line by
shifting and masking
r-~
character
= 77?
No
)-----~82
IN Superior Figure to Excess Three
Lower-Case Figure Routines
~o
Left shift inputoutput line 6
times
0-
co
co
By position of equalIs character one
Yes ity in list, select a
of superior figures I--_~corresponding X3 decimal lower case
figure that will represent it
Replace in input-output line the superior
figure by its corresponding lower-case
X3 decimal figure
Print-out: Sentence
___ Disallowable character
in exponent
Put erroneous
character back in
output line
<0
Flow Chart for IQ - SCientific Notation Evaluation Routine
Clear temporary
holding negative
indicator
Is floatingpoint number
zero?
Yes
Is exponent
zero?
I--~
"fs floatingpo i nt number
negative?
Yes
Yes
[
~O_~Ple--.--ment_J'
Input
Set negative
indicator
[
1 to exponent
value
Yes
Yes
Floating divide
floating-point
number by 10 and 1----~93
store quotient
back in input line
Reduce exponent
value by 1
Floating Multiply
by 10 and store
answer back in input line of fltpt.
number
exponent
zero?
~~
Complement floating-pt. output
NO
Yes
Is 38 =
exponent?
Is 38 >
exponent?
No
N!!------I
Error reference
and print-out:
Sentence-absolute value of
number too large
Yes
Multiply floating
point number by ~----~~94
. 1038
> absolute
of exponent?
Is 39
=
'exponent I ?
Yes
No
Is 201570121001 >
fltpt. no.
Yes
_D_i_v_i_d_e
f_l_t"l"'P_tback
_e_n_O_._b_yJ,
10
and __
store
....
~
1
Di~ide fltpt. no. by ]
10 8 and store back
Form a floating-point
number equal to the
power of 10 indicated
by exponent
exponent
negative?
Yes
fltpt. no.
by power of 10
and store back
Di~ide
Zero put in
output line
No
Multiply fltpt.
no. by power of
10 and store
back
Warning Print-Out:
Sentence --..-- - - absolute value of number too small -Given
zero value
IF STRING-OUT REGIONS
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
SC4417
IE4430
IF4565
IG4631
IH4655
114777
IJ5120
IK5316
IL5340
IM5503
1N5617
105647
IQ5676
IR6025
IS6037
IT6042
IU6105
IY614l
Two auxiliary print-out routines
Constant routine
Control routine
Fixed point variable routine
Floating point variable routine
Relation symbol routine
Jump routine
Termination space period routine
Floating point variable routine
Excess-Three Print-out storage
Superior to lower-case figure routine
Storage for "IN"
Scientific notation check
Constants for IQ
Three temps. for IQ
Preliminary number comparison routine
2nd control routine
2nd constant and fixed-point variable routine
RE
RE
RE
RE
J86177
JC626 1
JF6305
JI6470
2nd floating-point variable routine
2nd relation symbol routine
2nd jump routine
Relation code assignment and consistency
RE
UF6614
Constant storage
RE
ID6702
Error print-out routines.
String-Out Subroutine regions are also needed
to assemble the IF tapes.
692
IF String-Out (Tape 1)
Auxiliary Print-Out Routines
IA
TP
1 TP
2 TP
3 RJ
SC
VNl
UF2
WBlO
WA
4
MJ
0
WB5
WB3 )
WB6
WA12
30000
5
TP
SCIO
HP3
o
6 RJ UP2
7 MJ
0
10 40 SY2
CA SCII
Assists in warning that ~if~ sentence to
"iump" change has been made.
1
foooo J
Prints symbol occurring in sentence at
point where analysis breaks down in
print-out: Incorrectly wri tten _ __
Control Routine
o
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
IA
IF
o
CT
RP 10031 IF3
VN4
TP UF7
RP 10031 IF5
TP UF7
VN7l
TP UF30 VN
TV IF43
II
TP TS4
~F12
QJ IFll
TP UF27 VN33
RJ SY
SYI
TP SY2
A
TP SY2
VN75
TP SY3
VN76
EJ UF20
IF12
EJ UF2l
IF12
EJ UF2
IFl2
IK
EJ UF14
EJ UF4
IF35
EJ UF3
IF4l
IF12
EJ UF17
TP SYll
~F27
QJ IE
TP SYlO
~F3l
QJ IG
TP SY7
~F33
QJ IH
RJ ID16
ID13
MJ o
IF12
TP VNl07
QJ IF12
TP UF27 VNl06
MJ o
IF12
MJ
~F37
Exit
Clearing lines to be used for output
}
I
}
Clearing temporary storage lines
Number of lines (34) to
of VN
Setting up first line of relation routine.
Pseudo-op test
Pseudo-op indicator to VN33
Getting next symbol
Symbol to A
First 2 symbol output lines to
temporary storage
}
}
Get next symbol.
I
(
}
}
}
Jump to space, period routine
Jump to negative sign subroutine
Jump to absolute sign subroutine
Get next symbol
Is symbol a constant? If SOi jump to
constant routine, ie
Is symbol a fixed-point variable. If so,
jump to IG, fixed-point variable routine
Is symbol a floating-point variable?
Jump to IH
Sentence -- (If) Symbol Rejected -sign indicator in proper
storage if an absOlute sign has not
preceded it.
Putsn~gative
}
693
41
TP
UF27
42 MJ 0
43 0 0
CA IF44
VNI07
Puts absolute sign indicator in proper
storage space
IF12
1I3
Constant Routine
o
IA IE
RJ RB
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
TP
EJ
TP
MJ
TP
TP
TJ
TP
RJ
TP
TP
RJ
TP
EJ
EJ
RJ
MJ
TP
QJ
TN
26
27
30
31
32
33
34
35
36
MJ 0
TP SY6
ZJ IElO
TP VN75
RJ SY
TP SY2
EJ UF
EJ UFI
MJ 0
37
40
41
42
43
44
45
TP
TP
RJ
TP
TP
II
IE134
UF27
0
UF27
SY5
UF23
VN75
VN76
GG2
GG3
UF27
SY
SY2
UF
UFI
IE26
0
VNI06
IE25
VN7l
VN72
UF3l
GG2
GG3
TP UF27
MJ 0
RJ IE44
46 RJ SY
47 TP SY2
Ch
RBI
~E5
}
VN3l
IE6
VN32
~E27
GG4
GG5
GG
VN7l
VN12l
SYI
}
}
k . f f·
h {lOr fewer. 's
ec s 1
Igure as 12 or less characters
no letters
Check if right of relation symbol
Constant indicator for X figure to output
Constant indicator for Y figure to output
Is 7 > number of characters?
Conversion of figure to floating point
Floating-point output to proper storage
Floating-point indicator to storage
Get next symbol
A
IE46
IEl02
IE23
IEl17
~E26
Is symbol an e?
Is symbol a * ?
Jump to negative-value subroutine
}
VN7l
Is negative value desired?
Changing floating point figure to negative
figure
30000
A
Are number of decimal points zero?
Storing fixed-point X3 figure
Getting next symbol
IE3l
VN72
SYI
A
IE45
IEIOI
IEl17
Is e next symbol?
Is * next symbol?
Continuation beyond scientific-notation
analysis
GG4
GG5
GG
VN71
VN121
30000
IE37
Changing fixed-point X3 decimal figure to
a floating-point number
I
SYI
Floating-point indicator to storage
Changing fixed-point no. to a floatingpoint no.
Getting next symbol
A
694
50
EJ
UF4
51
52
EJ
TP
UFS
SYll
53
QJ
IEl12
IEl12
Q
1E54
1D42
54 TP
55 TP
56 QJ
SY2
SY13
IES7
VNlOO
57
60
61
62
63
TP
RJ
TP
MJ
RJ
SY2
IN
IN2
RD
IN2 }
INI
RS4 }
IE65
RDI
64
65
66
67
70
TP
RJ
TP
QJ
TN
SY2
RS2
VN77
IE70
RS3
RS4
RS
}
~E72
}
71 MJ
72 TP
73 TP
o
RS3
VN7l
IE73
IQ3
IQ2
74 MJ
75 RJ
o
o
IQ
76
77
100
101
102
103
104
105
TP
RJ
MJ
RJ
RJ
TP
EJ
MJ
106
RJ
TP
EJ
MJ
SY
SY2
UF2S
TP
UF27
SY
107
110
111
112
113
RJ
114 MJ
115 RJ
116 TP
117 EJ
120 RP
121 EJ
122 RP
123 EJ
IQ2
IE26
o
IE44
SY
SY2
UF22
o
o
o
SY
SY2
UF3
20004
UF16
2_0004
UFlO
~E63
}
IQ3
IE7S
IQl
VN71
IE23
IEllS
IE37
SYI
Is symbol a negative sign?
Is symbol a superior negative sign?
Is symbol a figure?
If not, print-out. Sentence - - Scientific
notation incorrectly written
Storing figure
Is symbol an exponent figure? if not, go
directly to X3 decimal to octal conversion
at IE63
Conversion of exponent to X3 decimal
figure
Output to RS 4 and jump to octal
conversion routine
Check if symbol is a legitimate fixed-point
figure
Conversion of figure to octal
Check if sign of figure is negative
Complementing figure and putting into
scientific notation routine input
Figure to input of scientific notation routine
Floating-point figure to input of IQ
scientific notation routine
Dwnmyjump (replaces a discarded instruction)
Check of scientific notation figures and
converts to floating point
Output to storage
Changing output to negative if desired
Continuation beyond scientific notation
Changing fixed point to floating point no.
Getting next symbol
A
IEl06
ID42
SYI
Is next symbol a 10?
Print-out: Sentence -- Scientific notation
incorrectly written
Getting next symbol
A
IE46
IESO
VN77
SYI
IES2
SYI
Is symbol = POW?
If not, jump to other equality tests.
Negati ve sign indicator storage for exponent
Getting next symbol
Getting next symbol
A
IE130
IE122 }
IEllS
IE124}
II
Is symbol an absolute sign?
Iss ymb 0 1 ) ( , ; ?
If symbol is < > = NOT jump to II relation symbol routine
695
124
125
126
127
130
131
132
133
134
EJ
EJ
RJ
MJ
TP
OJ
RJ
MJ
RJ
CA
UF1S
UF14
ID16
o
VNl07
IE115
ID56
o
II
IE135
IJ
IK
1013
lEllS
If symbol is JUMP, go to IJ jump routine
exit
Print-out: Sentence -- Symbol Rejected --
~.
o
Has an open abSOlute sign been encountered?
If not, reference error routine and printout:Sentence- -Open absolute sign missing.
IE132}
ID52
IEl15
III
Fixed-Point Variable Routine
Fixed-point
variable
routine 1st letter
i j , k, 1,or
f
m
0
1
2
3
4
5
6
IA
RJ
TP
TP
OJ
RJ
MJ
TP
MJ
RJ
MJ
TP
MJ
IG
RH
UF27
TS4
IG4
TS
RHI
VN74
~GIO
IGIO
VNIIO
IEl15
TAl
IG14
VNIIO
IE115
14 RJ
15 AT
TK
UF32
TKI
VNIIO
TP
TP
TP
UF33
SY2
TP
UF7
TE
TF
TFI
TF2
TF3
TEl
IEl15
7
10
11
12
13
16
17
20
21
22
23
RJ
MJ
CA
A
o
}
TSl
o
o
TA
o
TA4
o
TS3
Check if symbol is a valid variable
Set fixed-point variable indicator
Is -if" sentence within Pseudo-Operation
Is symbol in Pseudo-Op list?
No
Yes. Pseudo-Op call word to location
Is symbol in Combination List?
No
Yes
Exit for terminating characters before
a divide or jump
Get next call word of 64, 65, 66 type
Adding in 64000 (fixed-point variable callword base)
I
Building up file for addition of item
to Combination List
Adding file to Combination List
Exit for terminating characters before a
divide or jump
IG24
Floating-Point Variable Routine
IA
TV
1 TV
o
2
3
4
S
6
7
10
11
12
TV
TV
TV
TV
TV
TV
RJ
TP
OJ
IH
ILl36
IL136
ILl36
ILl31
IL132
IL132
IL137
IL140
RH
TS4
IH13
IL40
IL20
IL32
IL6l
IL56
IL53
ILl12
ILl13
RHI
~H6l
Set-ups
Check if valid variable.
Check if within pseudo-operation
}
696
Wi thin
Pseudo ...
Op
Ps...()p
Sub. Var.
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
RJ
IS
MJ
o
IP
TP
TJ
153
UF34
MJ
TP
QT
LQ
RS
TP
TP
QT
SA
TP
VNllO
o
1AH2l }
IL64
UF37
VNllO
VNl05
:105 }
Number of subscripts to (vnl05)v
Q
Q
UF6 }
VNl15
Subscript index set up
UF40
Q
VNllO
UF4l
A
A
33
LQ
AT
VNl05
VN73
34
35
36
37
TU
TP
ZJ
RA
A
VNl15
IH37
VN73
17
~H4l
41
IL25
IL
IL33
IL26
43 RJ
IL52
IL34
44 IJ
4.5 MJ
VNl15
46
47
50 TV
51 RJ
IL14l
IL14l
IL14l
IH12l
m36
!E115
IL20
IL40
IL32
IH72
52 ZJ
53 RJ
54 RJ
IU53
IL130
IL25
IH54
ILl12
IL
55 RJ
IL33
1L26
56 RJ
IL52
IL34
TV
TV
}
UF42
IL56
630 RR to Au
630 (RR + no. subscripts), call word
of modulus, to (vnl05)u
~105
IL60
o
}
VN73 )
A17
40 RJ
RJ
Is symbol in pseudo-op list?
No
Yes. Call word to temporary location
Is call word > 760oo?
Exit subroutine
TSl
1846
VNllO
Is subscript index zero?
Call word of multiplier formed in
(vn73)u
Multiplier call word to u of proper
location
Handling subscript as constant &
checking on variable.
Checking if fixed-point variable is
in pseudo-op list and getting call
word, if so
Checking if fixed-point variable is in
combination List and, if not, adding
it in. Call word to location.
Check if symbol is in Comb. List and,
if not, adding it in
Is index vnl15 zero?
Call word for multiplier to location
Constant or fixed-point variable subscript to location. Constant call wd
to location.
Search for call word of var. in
pseudo-op list
Search for call word of var. in Comb.
List and adding it in if not found
697
57
60
Not within 61
Pseudo-op 62
63
RJ
VNl15
0
ILl 42
IL142
m12l
IH52
!E115
IL20
IL40
m72
64 ZJ
65 RJ
66 RJ
IH65
IL130
IL25
m66
ILl12
IL
67 RJ
IL52
IL34
VNl15
0
TA
0
TA4
DI64
ml15
TAl
UF36
VNllO
0
~110}
70
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
110
111
112
113
114
115
116
117
120
121
IJ
MJ
TV
TV
IJ
MJ
RJ
MJ
TP
TP
TJ
MJ
VNllO
IL64
11{1
VNllO
TK
TP
UF33
SY2
A
UF7
TF
TFI
TF2
'IE
TEl
ml15
TP
TP
TP
RJ
MJ
TP
QT
ST
TP
QT
LQ
0
UF44
TA5
UF6
UF45
TA5
A
RJ
GW
TO
A
VNl15
0
lli122
TP
MJ
CA
Check if symbol
Not in
Is in. Putting
tion
Cheek if symbol
iable of 77 ---
nnoo
RJ
AT
UF43
Check if symbol is in Comb. List and,
if not, adding it in
Is subscript index zero?
Call word for multiplier to location
Handling subscripts as constant
& checking on variable
Checking if fixed-point variable is
in Comb. List and, if not, adding it
in. Call word to location.
TF3
A
call word into locais a subscripted vartype
To get call word of 64, 65, 66 types
Adding in 65000 (has to be fl. pt.
var.) and storing
I
~105}
VN1l5
Q
is in Combination List
Adding file to Combination List
Number of subscripts to (vnl05)v
Setting up index
}
25
GWl }
VNl05
A
30000
Modulus to Av
Call word of modulus to (vnl05)u
698
T"/\
P
I~
TT
.L.t\
.Ll..
RJ
SY
SY2
TP
SYI
Getting next symbol
A
IIA 1
RP
20004
EJ
UF16
TP
SY11
Q
Q.}
IL6
IL21 }
TP
QJ
SY13
Q
7
IJ12
ILl 0
10
RJ
RD
RDI
RJ
TP
RJ
TP
RJ
IL63
IL6l
SY2
RS2
RS3
RS4 }
RS
4
5
6
Subscript
a constant 11
12
13
14
15
16
GW
rL j
~l
.
TU
UF35
RJ
IL55
MJ
o
21
TP
SYlO
22
QJ
IL23
Subscript {23
a fixed- 24
point
25
variable
26
RJ
RJ
RH
RHI
IL63
MJ
o
IL6l
30000
RJ
IS
TSI
MJ
o
IL33
IL53
IL53
[IH44]
30000
TO
RJ
ILl35
IL55
o
Is symbol a constant?
If symbol is a superior figure, error
ref. and print-out occurs: Sentence
-- (If) Incorrectly Written -Check for validity of fixed-point
constant
Put constant in temporary location
Converting constant to octal
Getting call word for constant
}
17
20
27
Getting 130
call word 31
for var. [32
in pseudo- 33
op list
Iss ymho 1 ) ( , ; ?
IL53 }
Constant call word to temp. location
Jump index check for subscripts of
pseudo ops. IH57 or IH70 in v
occasionally
Test if symbol is a fixed-point variable. If not, error print: Sentence
incorrectly written --
IL53
LIH44J
MJ
MJ
o
34
RJ
TA
TAl
35
MJ
o
IL4l
Check for validity of variable
Variable to temp. location
Check if variable is in pseudo-op
list
Not in list
Is in list. Putting call word in
location
Or IH 57 in V
Check if fixed-point variable is in
Combination List
Not in list
699
Getting 136
call word . 37
for var.
40
in Comb.
List
rf4l
Putting
42
call word 43
for var.
44
in Comb.
45
List and 46
temp.
47
location 50
51
52
53
54
TU
RJ
MJ
RJ
AT
TP
TP
TP
RJ
TP
TU
RJ
MJ
IL134
IL53
IL55
0
IL53
TK
UF32
UF33
SY2
UF7
1E
TF2
UF35
TV
IL55
0
[QJ
RA
IL53
55
MJ
0
56
57
60
61
62
TU
RA
MJ
TP
RA
MJ
TP
TJ
TJ
RJ
TP
RP
EJ
EJ
RP
EF
EJ
EJ
TP
VN73
IL56
0
SY2
IL6l
63
64
Exit
65
subroutin 66
67
70
71
72
73
74
75
76
77
100
101
102
0
VNllO
UF46
UF47
SY
SY2
20004
UF16
[pI44]
TKl
TF2
TF
Q
I
IL53
}
TFl
TF3
TEl
Call word to location
30000
[VNlOl] }
UF6
30000
Storage of X3 for subscripts
UF6
.
Call word for' mul tiplier to location
A
Is it a dummy function?
Is it not a function?
Get next symbol
IL67
!E115
SYI
A
IL72
}
( ) , ; checks
I sign check
20004
UFlO
UF15
IL76
II
IJ
UF14
D{
~.
~Ll02
~104
Test if symbol is a variable used as
argument of single-valued function
Test if symbol is a constant used as
argument of single-valued function
Error Print: Symbol Rejected --
SY7
QJ
IL67
TP
SYll
QJ
IL67
RJ
ID16
105
MJ
0
·106
ID13
IL67
TP
Check for 107
open ab- 110
solute
sign
111
112
QJ
VNl07
IL67
~LllO
RJ
ID56
1D52
IL67
[ILl 17]
[ILl 22]
114
Putting call word in location
IL53
30000
[VNlll] }
UF6
30000
[VNlll.] }
UF3
103
115
116
Adding variable and call word to
Combination List
IL67
ILl 06
104
113
Is in List
Call word to location
Jump to subscript index for pseudo-oPe
(IH57 or IH70 in v occasionally)
To get call word (next) of 64, 65, 66
Adding in 64000
MJ
0
RJ
RJ
TP
ILl 12
ILl 13
UF44
QT
TA7
A
MJ
0
IL125
}
< >
JUMP
}
}
}
= NOT
Test if there has been an open absolute sign
Error print: Open absolute sign
missing
I-shot switch
I·-shot swi tch
3rd Multiplier ~ A
Q
700
117
120
121
122
123
124
125
126
127
130
131
132
133
134
135
136
137
140
141
142
TP
QT
MJ
UF44
TA6
0
~
UF45
~5
IL125
TP
QT
TA6
LQ
A
RJ
GW
TIl
A
RJ
IL60
IL56
MJ
0
0
0
0
0
0
0
VN73
TA4
30000
VN101
VN111
0
TS3
0
0
0
0
0
0
CA
0
0
0
0
IL143
1st Multip1ier----+A
}
2nd Mul tiplier ~ A
}
GW1 }
Call word for multiplier to (VN73)u
Call word to proper temporary location
VN73
o
o
o
Pseudo-op list routine location
IH44
ILl17
ILl 22
m57
IH70
Relation Symbol Routine
o
1
2
3
IA
RJ
RJ
MJ
12
TP
TP
RJ
TP
RP
EJ
TP
RA
13
EJ
14
15
16
17
20
21
RP
TP
RP
4
5
6
7
10
11
TP
TP
EJ
II
II
IT3
ID40
ID34
o
IF
A
VNl17
VNl16
SYl
UF6
SY
SY2
20003
UFlO
A
VNl16
UF13
30031
VN71
10031
UF7
VN65
UF26
A
1113
1111
Error Print: Sentence (IF) Incorrectly written -Store 1st relation symbol
Start count of relation symbols
Get next symbol
7.
J
VN120
UF6
<
>
::::;
tests
Store 2nd relation symbol
Up count of relation symbolS
Not?
Transfer block of X data to new temporary location
Clearing storage for reception of Y
data
Is count of relation symbols equal
to 2?
III
II16}
VN40
II20}
VN7l
~I4l }
701
One
relation
symbol
22
23
24
25
26
27
30
TP
EJ
EJ
EJ
31
32
33
34
35
>
MJ
0
II27
1131
I133
II35
VN4
IF13
TP
UF6l
0
UF60
0
ID12l
VN4
IF13
VN4
IF13
IDl16
VN4
VN65
IF13
MJ
MJ
TP
MJ
RJ
TP
TP
A
{~50
TP
EJ
EJ
51
52
MJ
TP
UF63
UF26
0
VN66
UF13
OF10
OFll
0
VN67
UFlO
UFll
0
UF64
53
MJ
0
IF12
54
TP
UF62
VN4
55
56
MJ
TP
0
UF63
IF12
VN4
36
37
40
When there 41
are two
42
43
relation
symbolS
44
45
NOT
47
<
TP
VN66
UF10
UFll
UF12
0
UF26
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
MJ
TP
EJ
EJ
EJ
MJ
MJ
TP
EJ
EJ
MJ
TP
TP
MJ
TP
MJ
TP
MJ
TP
EJ
EJ
0
VN67
UF10
OFll
0
UF6
UF26
0
UF63
0
OF62
0
VN67
UFlO
liF11
~ ~SymbOl tests
NOT
<: "2" indicator to output
Return to if control routine to
examine symbol not used
•
> "4" indicator to output
= "3"
indicator to output
Sentence -- NOT interpreted as NOT
EQUAL
NOT = "6" indicator to output
Putting 2 in relation-symbol counter
A
II46
II60
II73
IIl06
NOT?
< ?
> ?
=
A
n52
II54
II56
VN4
< ?
> ?
=
NOT~indicator
"7" to output line for
1st test
Return to if control routine to get
next symbol
NOT > indicator "5" to output line
for 1st test
NOT = indicator "6" to output line
for 1st test
IF12
A
1164
II67
II71
VN65
VN4
IF12
VN4
IF12
VN4
IF12
«?
<>?
<=
«
<>or NOT
= indicator
"6" to output
<=indicator "5" to output
A
II77
mOl
>
»?
702
76
77
100
101
MJ
TP
MJ
TP
o
UF63
o
UF6
1n04
>
VN4
=
NOT
= indicator
»
Count of relation symbols reduced
IF12
VN65
"6" to output
to 1
=
TP
Indicator "4" to output
MJ
o
TP
EJ
VN67
UFIO
A
1Tl12
= < ?
110
EJ
UF11
11114
III
112
113
114
115
116
MJ
o
-- >
TP
UF62
11116
VN4
IF12
VN4
IF12
VN65
= < indicator "5" to
= > indicator "7" to
= = Count of relation
117
120
MJ
TP
UF61
VN4
IF12
VN4
IF12
102
103
104
105
106
107
o
UF64
MJ
o
TP
UF64
MJ
o
TP
UF6
TP
UF60
MJ
CA
o
= indicator
>
"7" to output
q
~
output
output
symbols reduced
to 1
Indicator "3" to output
VN4
IF12
11121
Relation Symbol Code Assignment and Consistency Routine
Relation
symbols
in vn4 and
vn6
1 in
vn142
count
in vn4
2 coming
1
IA
o
MJ
1
TP
TP
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
ZJ
TP
EJ
TP
EJ
EJ
EJ
JI
o
UF7
VN6
J14
VN142
UF26
VN143
UFIO
JI17
IDI03
UF26
TP
A
o
UF6l
o
UF60
o
VN65
UF26
VN142
UF26
Clearing temporary
Has a 2nd-test relation symbol been
supplied?
Is the count of relation symbols 2?
JI13
UF12
TP
MJ
TP
MJ
TP
EJ
~I12 }
JIl5
o
EJ
~I2l}
UFll
MJ
MJ
TP
30000
J1123
.
.....
,.
?
=
?
Error Print: Comparison symbols
ambiguous
< Indicator "2" to temporary
JI123
JI
Jn23
JI
JI123
JI
>
Indicator "4" to temporary
= Indicator "3" to temporary
~I4 }
~I44 }
up
703
If 2 relation symbols in 1st part of
if or in vn4, go to above
Is the current count of relation
symbols 2?
1 in vn4
1 coming
up to go
in vn6
25
26
27
30
31
32
TP
EJ
EJ
EJ
TP
VN143
UF10
UF11
UF12
0
UF26
A
J132
JI34
JI36
JI40
VN6
33
34
MJ
TP
0
UF61
JI
VN6
35
36
TP
0
UF60
JI
VN6
37
40
0
UF63
JI
TP
UF26
ID121
0
VN143
UF10
UF11
UF12
VNl44
UF10
UF11
0
UF64
0
UF62
0
UF63
0
VN144
UFIO
UFll
0
UF6
UF26
VN142
IDl16
JI
A
JI62
JI110
J175
A
JI54
JI56
JI60
JI123
JI
Jn23
JI
Jn23
JI
A
JI66
J171
JI73
VN142 }
VN6
0
UF63
0
UF62
0
VN144
UF10
UF11
0
UF62
0
UF64
JI
JI123
JI
JI123
JI
A
JI101
JI103
JI105
JI123
41
42
43
2 relation 44
symbols.
45
Nothing
46
in vn6,
47
50
1 in vn4
51
52
53
54
55
56
57
60
61
62
63
64
65
1 in vn 4 66
1 in vn 6 67
70
71
72
73
74
75
76
77
100
101
102
103
MJ
MJ
MJ
TP
RJ
MJ
TP
EJ
EJ
EJ
TP
EJ
EJ
MJ
TP
MJ
TP
MJ
TP
MJ
TP
EJ
EJ
MJ
TP
TP
MJ
TP
MJ
TP
MJ
TP
EJ
EJ
MJ
TP
MJ
TP
<
?
> ?
=
?
NOT
Indicator "2" to 2nd test output
line
<
> Indicator "4" to 2nd test output
line
= Indicator 't3 tt to 2nd test output
line
JI123 }
uNOT" occurring alone was miscounted
as one. Recounted as 2
Print:
NOT interpreted as NOT EQUAL
< ?
> ?
=
?
NOT
NOT < ?
NOT > ?
NflT =
NOT < Indi cator "7" to temporary
NOT> Indicator "5" to temporary
NOT
«
<>
<
«
= Indicator
"6" to temporary
?
?
=
Correction of 2 count to 1 count
Indicator "2" in 2nd test output
line
<> Indicator "6" to temporary
= Indicator
"5" to temporary
=< ?
= >?
= =
= < Indicator
= > Indi cator
"5" to temporary
<
~iI
JI123
704
"7" to temporary
1 in vn4
1 in vn6
104
105
106
MJ
Tf
TP
0
UF6
UF60
JI
VN142
VN6
= ~ Correction of 2 count to 1
=
count. Indicator 3 to 2nd test
J output line
107
110
III
112
113
114
115
MJ
TP
EJ
EJ
MJ
TP
MJ
1 in vn4
116
TP
1 in vn6
117
TP
120
121
122
123
TP
MJ
MJ
0
JI
VN144
UFI0
UFll
0
UF63
0
UF6
UF61
A
JI114
JI116
JI121
JI123
0
UF64
0
JI
JI123
JI
0
0
0
CA
Jn24
>< ?
?
=
»
>
<>
Indicator 6 to temporary
JI
VN142
VN6
»
} Corr. of 2 count to 1
Indicato! "4" to 2nd test
output Ilne
>=
Indicator "7" to temporary
Constant Storage
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
IA
30
56
34
42
02
00
0
0
37
16
76
50
01
44
43
17
21
23
04
0
0
52
0
40
0
77
32
0
33
34
0
0
OF
77777
77777
31777
77777
77777
77777
0
0
77777
77777
77777
51667
22777
67475
77777
77777
77777
77777
03777
0
0
51717
77777
77777
77777
77777
77777
77777
1
e
*if
I
\7
0
77777
77777
77777
77777
77777
27777
77777
77777
77777
77777
77777
<
>
=
NOT
~
)
(
;
10
7
14
77777
12
POW
0
2
0
0
34
77777
<
0
77777
0
3
0
.
JUMP
6-4000
3
76000
705
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
60
61
62
63
64
65
0
0
0
0
0
31000
0
0
0
0
0
1
0
0
0
0
0
0
66
65
65
46
50
50
65
0
0
0
77777
0
0
51777
30506
66246
34503
67472
51227
30506
0
0
0
0
0
0
0
0
0
CA
UF66
0
0
0
0
76777
00700
00077
63000
0
65000
77777
0
62000
66000
11
77777
63050
63047
07777
53054
77777
62277
3
4
5
6
7
10
9
TO
SENlEN
STATEM
LINE
NUMBER
NO.
SENT.
=
>
S
r-l>T
~
706
=
If String-Out (Tape 2)
Error Print-Out Routines
o
1
2
3
4
5
6
7
10
11
IA
ID
TP SY2
RJ WA
MJ 0
RJ WA
TP
ID7
RJ UP2
MJ 0
401M3
40 ID17
0
1M
1022 }
WA2
30000
WA1
UP3
1
fr
4
0
0
o
RJ
TP
RJ
MJ
65
01
66
0
TP
AT
RJ
TP
RJ
TP
MJ
40
ID2
ID10
UP2
10
UP3
UP
33
0
0
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
RJ
TP
RJ
RJ
MJ
40
RJ
WA
1041
UP2
SC7
0
IM17
WA
1051
UP2
1041
UP2
TP
RJ
TP
RJ
RJ
MJ
40
RJ
53
RJ
54
55
56
57
TP
RJ
MJ
40
0
30000
73472
54304
30270
0
55146
43026
10101
A
1033
IM15
WA1
UP3
UP
0
IM7
UZ
0
IM23
UZ
WA
ID57
UP2
Sentence -- (If)
Inconsistent sign change
Error routine referenced
3
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
IM16
WA
ID32
UP2
1033
r
Storing rejected symbol and referencing
sentence number routine
o
Sentence -- (If) Symbol Rejected --
Warning only
Sentence -- (
Disa110wable char- -t) _
acte r in exponen
__
A
30000
7
o
:~ )r
Error routine referenced
Sentence -- (If) Incorrectly Written
SC5
30000
4
Error routine referenced
WA2
uP3
UP
UP3
UP
UZI
IF
Sentence -- (If) Scientific notation
Incorrectly written
Error routine referenced
4
UZ1
WA2
0
UP3
UP
30000
IM27
5
Sentence -- (If) Open absolute sign
missing
Error routine referenced
707
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
110
III
112
113
114
115
116
117
120
121
122
123
124
125
126
127
RJ
WA
WA2
TP
1064
UP3
RJ
MJ
40
UP2
0
IM34
UP
30000
4
RJ
TP
TP
SC4
VN4
SC
RJ
MJ
40
RJ
TP
RJ
RJ
MJ
40
40
40
RJ
RJ
TP
RJ
MJ
RJ
RJ
TP
RJ
MJ
40
RJ
TP
RJ
MJ
RJ
1072
UP2
0
IM40
IM47
UP3
UP
30000
10
WA
WA2
ID100
UP2
UZ
0
IM50
IM61
IM70
UZ
UP3
UP
UZI
30000
11
WA
WA2
ID102
UP2
0
UZ
UP3
UP
Warning only
7
5
Sentence -- (If) Comparison symbols
ambiguous
UZI
Error routine referenced.
analysis of sentence
IF
UZI }
WA2
10101
UP2
0
IM75
UP3
UP
ID115
UP2
0
Sentence -- (If) becomes unconditional
Jump to Sentence _ _ _ __
Sentence -- (If) Space period occurs
before sufficient data given
Reference error routine
WA
WA
Sentence -- (If) "To" should follow
"Jump"
Warning only
IF
~A2
UP3
Sentence -- (If) Set of variables differs
From Initial Set
Error routine referenced. Analysis
of sentence terminated.
}
~OOOO
Sentence -- (If)
(NOT EQUAL)
Warn ing on ly
(NOT)
interpreted as
WA
WA2
UZ1
UP3
UP
Sentence -- (If) Fixed- and Floating-Pt.
Values are not comparable
MJ
40
UZ
10127
UP2
0
IM103
IF
Error routine referenced.
sentence discontinued.
CA
10130
RJ
TP
RJ
11
Excess-Three Print-Out Storage
o
Terminate.
IA
1M
30506
30017
63050
77777
SEN
15065
05066
INC 0 N S
1ST E N T
1
65
26
2
0
o
3
34
4
34
50265
65663
o
C E
708
TEN
~
Analysis of
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
01
26
01
46
30
24
01
52
0
77
01
54
01
30
01
66
50
51
01
24
66
50
34
01
33
31
01
01
30
26
34
44
51
30
65343
33245
27346
51712
01263
26663
34500
51503
0
77010
34502
30266
71543
50010
65263
34313
51662
50777
51523
25655
30016
01473
50327
01665
51674
51464
44674
25302
65010
51502
51502
67475
01653
50263
G N 8
H A N G E
A D ! S A ru
L 0 W A B L
C H A R
E
A C T E R II
~ I N II E X
P 0 N E N T
II S 1-
25001
03230
C
52446
42546
32454
05477
13072
05066
0
10100
65154
64673
46666
17777
43050
42601
46634
77777
05001
14667
53432
46565
77777
10165
62701
65171
75277
65147
16750
73466
44601
20166
05066
00177
0
0
0
01
01
51
67
31
67
30
66
30
01
31
24
27
65
65522
01523
27015
54650
51543
31313
50660
24013
50777
65306
01702
25463
34313
01315
42630
05434
12626
12530
00165
42634
12724
23470
77777
60151
45434
06501
13054
45147
n
II
I
R E
llw
E N
~ S
T I
N 0
0 N
l:l 0
A B
T E
N II
I N
llb,.
H 0
F 0
l:ll:l~
N C 0
C T L
R I T
~ l:l II
C I E
F I C
T A T
P E N
S 0 L
II s I
M I S
G
T 0 l:l
U L D
R
Y
T
l:l
N
b,.
I
II
U
G
S
S
b,.
L L 0 W
~ J U 11 P II
~ B E C 0 M
E S fl fl u N
C 0 N D I T
I 0 N A L fl
J U M P fl T
o ~ S E N T
E N C E ~
fl S P
flflp
A C E
E R I
0
0 C C
D ~
U R S
F 0 R
U F F
E N T
T A
E N
fl
fl
F
A
D
S
0-1
3-4503
46634-
11
24
01
46016
26514
53066
75224
~
A
709
S
E
I::l
V
B L
I F
~ F
I N
L
C 0
fl
~ B
E b,.
I C
D
E
G
I
V
T
l:l 0
fl
A R
S
I
A
I
E S fl
F E R
R 0 M
I T I
s E T
M P A
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
110
111
112
113
54
65
65
32
01
01
52
01
51
24
31
01
46
32
66
30
01
51
25
CA
34655
73472
01244
67516
17505
34506
54306
24650
66013
46437
34723
24502
51246
76525
01702
65012
50516
47522
46307
IMl14
S 0 N
S y M B 0
S ~ A M B
G U 0 U S
~ ( N 0 T
fl I N T E
P R E T E
fl A S fl (
0 T fl E Q
fJ2776
X E D
N D fl F
L 0 A T I N
P 0 I N
G
T ~ V A L U
E S fl A R E
fl N 0 T fl C
0 M P A R A
70131
63450
13450
44667
45430
60126
45424
77777
R I
fl
15001
55146
72534
76522
16643
63054
63027
11750
05367
77777
A
F
L
)
I
A
L
I
.
)
R
D
N
U
-
-
B
L
E
Superior to Lower-Case Figure Routine
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
IA
MJ
MJ
0
TP
LQ
QT
EJ
RP
EJ
SN
SA
TU
RA
TP
TP
QS
IJ
MJ
LQ
IN
0
0
0
102
IN2
10
10
20012
103
Q
IN7
A
IN15
30000
10
A
101
0
IN2
IN27
A
Q
IN2
IN4
IN
6
23
IJ
101
IN22
24
25
MJ
RJ
0
1031
IN
ID23
26
27
MJ
0
CA
0
1014
IN30
IN16
0
30000
IN3
0
101
6
A
IN23
IN25 }
IN11
17
0
}
IN15 }
}
}
Exit
Entry
Input-Output Line
Setting up index for 6 characters
Masking out 1st character to A
Is character equal to 771
Is character one of superior X3 decimal
figures?
-n, - (j-r)
-n, -(j-r) + n, j = r in u position
(ioI5+r) ~ in 15
u
X3 decimal figure representat ion ~ Av
Translated figure is incorporated into
Input-Output line
Index of input exhaustion
To exit
When 1st character = 77, no further
translation to X3 decimal is performed.
The 1-0 line is merely returned to
original position.
Exit
Sentence ---(
) Disallowable character in exponent
Parameter
710
Storage for i'IN
Ti
IA
10
n
v
n
v
n
V
1
2
3
4
5
6
7
0
0
0
0
0
0
0
0
0
0
0
0
10
0
0
11
12
13
14
15
16
17
20
21
22
23
24
25
26
0
0
0
0
0
0
0
0
0
0
0
0
0
0
CA
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1027
IA
MJ
MJ
0
IQ
0
0
0
IQ4
0
0
0
0
1'I...1
•• "r
0
IQIOi
TP
IQ3
IQ7
IQ2
IQ11
A
IR11
IQ2
IR1
IRI
IR
IQ3
IQ2
Q
Q
0
IQ3
IQ2
Q
0
A
IQ
}
If exponent is zero, goes to exit
~Q14
}
Is floating point number negative?
}
Changing f1tpt. no. to positive and
putting negative indicator into is2
Scientific 0
Notation
1
Evaluation 2
Routine
3
,.
q
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
ZJ
TP
SJ
TM
TP
TP
TJ
EJ
TJ
RA
FD
TP
TP
MJ
RS
FM
TP
MJ
0
0
..,..,
I
I
[5J
5
60
61
40
20
41
35
55
75
~
'W
~
"-3-'
~
~
~
W
~
~
36
57
0
1
2
3
4
5
6
7
3
4
5
6
7
10
11
12
13
14
8
9
Exit
Entry
Input in f1tpt. of no. to left of e or *.
May be neg. or pOSe Also output line
Exponent of 10 in octal. May be negative
or positive
30000
IQ2
IS2
A
IQ24
IQ30
IQ30
IR2
IR
IQ2
A
IQ15
IR2
IR
102
IQ13
Is 1 > floating point input
Is 1 = floating point input
Is 10 > floating point input
t
t
Loop to reduce floating-point
number to one between 1 and 10
sueh that 1 S flo8tinq point no. < 10
Loop to increase floating-point number
such that 1 S floating-point no. < 10
711
30
31
32
33
34
35
36
TP
ZJ
SJ
TM
TJ
EJ
MJ
37
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
60
61
62
63
64
65
TP
TJ
FD
TP
FD
TP
TP
QJ
TN
IQ3
IQ32
IQ33
A
A
~Q54
IR4
IR4
o
IQ2
IR7
IQ2
Q
IQ2
Q
152
IQ47
IQ2
MJ
o
T.J
IR5
IR5
EJ
MJ
ST
TP
IJ
MJ
o
IR2
IR
IS
o
IQ45
IQ5l
}
IQ37
IQlOl
~QI0l}
IR
}
IQ2
IRI0 l
IQ2 r
~Q
}
IQ2
IQ
IQ54
IQ7l
IQ75
IS
151
1060
1063
IR
}
lSI
IQ56
FM
151
TP
MJ
TP
SJ
FD
Q
IQ3
IQ65
IQ2
~Q67 }
66
67
MJ
o
FM
IQ2
IQ44
lSI
70
MJ
TP
TJ
0
IQ44
A
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
o
FM
IR6
IQ2
IQ2
MJ
0
RJ
TP
RJ
MJ
TP
RJ
TP
RJ
TP
MJ
TP
WA
IQl12
UP2
0
IR3
WA
IQl13
UP2
IQl14
0
IR3
lSI
IQ75
IRlO
IQ44
WAI
UP3 }
UP
IQ
IQ2
WA2
UP3
Is exponent zero?
Is exponent negative?
Is 39 > I exponent I
Is 39 = I exp.1
Output to zero. Sentence _ (
)
absolute value of number too small given zero value
Is (IR7) > (IQ2)? Same printout and
action as above.
Dividing IQ2 by 10 and storing in IQ2
Dividing IQ2 by 1038 and storing in IQ2
Is negative value of floating point
desired?
Making floating-point output negative
Is 38 >
Is 38 =
Jump to
Setting
10
~
exp.?
exp.?
error print-out section
up index for multiplication
151
Index jump
Multiplying 10 to power desired in
floating-point
Is exponent negative?
Dividing fltpt. no. by power of 10
desired
Multiplying fltpt. no. by power of 10
desired
Is (IQ2) > (IR6)? If so, too large,
Multiplying by 1038
Sentence _ ( __ ) absolute value of
number too large
Error routine referenced
Sentence__(__ ) absolute value of
number too small - given zero value
UP
UP3
IQ77
IS2
Warn ing on ly
Clearing is 2
712
r
"'\
'In
FT10
LL
.LV&:.
1-\
III
ZJ
40
40
40
01
46
24
31
30
01
01
IQ5
IQ115
IQl15
IQ123
01242
67663
46673
01506
54016
46245
65472
02323
01743
70244
IQ127
IQ
6
5
4
56551
00170
00151
74725
65151
43230
44646
47030
05451
66730
'I
LLV
112
113
114
115
116
117
120
121
122
123
124
125
126
02
50
01
CA
Tn"
A
If floating point input is zero, goes to
exit
DD
A B
L U T E
A L U E
F !::l N U
E R !::IT
l:l L A R
S
M A
G I
L
V
l:l S
-N !::l
~ Z
V A
E
L
Constants for IQ
0
1
2
3
4
5
6
7
10
11
IA
20
20
IR
45000
14000
0
0
0
0
20
20
37
40
CA
0
0
0
0
16634
15701
74547
0
IR12
0
0
10
1
1
0
47
46
37341
21001
32316
0
-=
=
39
38
1.70141184
1.46936801
1038
Indicator
Temporary Storage
IS 0
I
2
Multiplication index
Multiplication storage
Negative answer indicator
713
0
!::l V
!::lo
M B
0 0
G E
L
E
R 0
U E
If String-Out (Tape 3)
Jump Routine
o
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
X is
floatingpoint
constant
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
IA
RJ
TP
EJ
RJ
TP
RP
EJ
EJ
TP
TJ
RJ
MJ
RJ
MJ
TP
RJ
TP
TP
QJ
TP
QJ
TP
TP
MJ
TP
QJ
TP
ZJ
TP
RJ
TP
MJ
RJ
MJ
TP
TP
RJ
TP
QJ
TN
MJ
TP
MJ
TP
ZJ
IJ
SY
SY2
UF5l
ID63
SY2
20007
UF5l
UF14
SY5
UF23
ID40
o
SY
o
SY2
I.N2
I.N3
SYI
A
IJ7 }
IJ14
IK
~J16
LN4
L~
~J32
~J34
GW
Q
o
IJ52
o
VN72
UF3l
GG2
VNl06
IJ47
GG3
TO, Sentence, Statement, line, number,
NO. 1 Sent. ?
lJ..
Are no. of chars. of what should be
figure < 7?
Sentence -- (If) Incorrectly Written --
}
Getting line number in proper form and
storing output
}
Is X floating-point constant?
}
}
Is Y floating-point constant?
IT
ITI
IT2
Sent to preliminary number comparison
}
Is Y fixed-point variable?
}
Is Y fixed-point constant?
Y is a floating-point variable.
word for X constant to VNS7
:;7 }
IJ160
IJ42
IJ25
GG4
GG5
GG
VN4l
IJ55
~J131 }
Call
Jump to end
Y to floating-point
Jump to comparison
Translation of Y fixed-point constant
to floating-point and storage
Q
o
GG3
"JUMP't
Get next symbol
IJ5l
VN7l
IJ52
VN7l
30000
o
"1\)" should follow
VNS
VN74
VN72
IJ40
VN40
}
1034
IF
SYI
IJ4
~JS3
~J30
ID12~
(If)
A
VN70
IJ23
VN121
IJ25
VN40
VN71
o
TO?
Sentence --
IJ14
ID60
Is X fixed-point constant?
714
;i!:d- (~~ ~
~~!~~ant ~~b61 :~TP
62
63
64
65
66
67
70
71
TP
RJ
TP
QJ
TN
MJ
TP
MJ
~i!:d{~;74 ~~RJ
point
constant
X is
fixedpt. constant
75
76
77
100
101
102
103
104
105
106
107
110
111
112
113
114
115
116
RJ
MJ
TP
RJ
TP
QJ
TN
MJ
TP
MJ
TP
RJ
TP
QJ
TN
MJ
TP
117
120
121
122
123
124
125
126
127
130
131
VN121
IJ57
1J71
o
VN41
UF31
GG2
VN55
IJ66
GG3
!J61
Q
o
GG3
VN40
o
VN72
IJ74
IJI06
IJ116
o
VN41
RS2
VN55
IJI03
RS3
o
RS3
o
}
1J25
GG4
GG5
GG
IJ70
VN40
1J71
J
30000
~J122}
X to octal and storage
Yto octal and storage
Jump to fixed-point comparison
Q
Translation of X excess-three decimal to
octal and storage
IJI05
VN41
IJI06
VN41
30000
o
RS3
o
VN72
MJ
TP
VN41
VN72
30000
IT ~
ITI J
IT2
MJ
o
TP
VN74
IJ124
IJI06
VN41
~JI27}
IJ71
IJ61
IJ34
QJ
RJ
TP
MJ
RJ
MJ
TP
o
o
m~~
TP
136
ZJ
IJ137
Is Y fixed-point constant?
IJ77
IJI07
IJl17
RS4
RS
RS2
VNI06
IJ113
RS3
TP
Is Y floating-point constant?
X to floating=point
Jump to comparison
Translation of X fixed-point constant
to floating-point constant and storage
RS4
RS
Q
IJl15
VN72
IJl16
VN72
VN43
IJ133
VN121
ID122
VN72
r135
~J72
IJ77
~J35 }
~J146}
~JI35}
~Jl44}
Translation of Y excess-three decimal
to octal and storage
Fixed-point numbers to preliminary
comparison
Is Y fixed-point variable?
X to octal and storage
Getting call word for X and storing
X to floating point and storing
Getting call word for X and storing
Is X fixed-point variable?
Is Y floating-point constant?
Is Y fixed-point cMstant?
715
X is
fixedpoint
variable
X is
floati.ng
PQint
varia~le
137
140
141
142
143
144
145
146
147
150
151
152
153
154
155
156
157
160
161
162
163
164
165
166
167
170
171
172
173
174
175
RJ
TP
RJ
TP
MJ
TP
QJ
TP
QJ
TP
ZJ
RJ
MJ
TP
QJ
TP
MJ
RP
TP
RP
TP
TP
RJ
RJ
TP
RP
EJ
EJ
EJ
RJ
MJ
CA
IJ116
VN72
GW
Q
0
VN74
IJ160
VN121
IJ156
VN72
IJ152
IJ52
0
VN74
10122
VN71
0
30010
VN54
30010
VNl05
VN5
IX
SY
SY2
20004
UF16
UF14
UF2
1040
0
IJI76
IJI07
GWI
A
VNll0
IJ160
Y to octal and storage
}
~0122 }
~J150 }
~J154 }
IJ42
Getting call word for Y and storing
Is Y fixed-point variable?
Is Y floating-point constant?
Is Y fixed-point constant?
Y to floating-point constant
IJIS-&,
~J160 }
~J141 }
Is Y fixed-point variable?
Getting call word for Y and storing
IJ162 }
VNII
IJI64
VN21
Transfer of prepa:red data to outpttt region
A
IXI
SYI
A
IJl72 }
IJI66
IK
IU
1034
IF
(
, ; tests
)
~ • check
"if" check
Sentence -- (if) Incorrectly Written --
Preliminary Number Comparison Routine
<
>
0
I
2
3
4
5
6
7
10
II
12
13
14
15
16
17
IA
0
0
TP
EJ
EJ
EJ
EJ
EJ
MJ
TP
TJ
MJ
TP
EJ
IT
0
0
VN4
UF26
UF60
UF61
UF62
UF63
0
IT
ITI
0
IT
ITl
MJ
0
TP
ITI
0
0
1st no. X
2nd no. Y
A
ITII
ITI4
ITI7
IT22
IT25
IT30
< ?
= ?
> ?
<
?
f ?
~
A
IT32
IFI
A
IT32
Change "if" sentence to a "jump"sentence
Jump back to start of IF
IF!
A
716
20
21
S
22
23
24
F 25
26
27
~
30
31
32
Changing 33
IF to a 34
Jump
Sentence 35
36
37
40
41
42
TJ
MJ
TP
TJ
MJ
IT
IT32
IFI
ITI
IT
A
IT
ITI
A
A
TP
IT
ITI
UF63
UFlS
VN5
VN4
TP
RJ
VN33
ID71
VN5
ID65
TP
RJ
RJ
MJ
CA
VN4
IX
WI
TP
EJ
MJ
TP
TJ
TP
TP
o
o
o
o
IFI
IT32
IFI
IT32
IFI
VN
VN2
~Xl }
WIl
IF
Number (6) to 1st line of output
JUMP put into title output line
Line number changed to 5th position of
output
Pseudo-op indicator to 6th output line
Sentence -- (If) Becomes Unconditional
Jump to Sentence -Line number to reference list
Write string-out on tape
IT43
Termination Space Period Routine
o
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
IA
TP
ZJ
TP
ZJ
TP
ZJ
TP
ZJ
RJ
MJ
RJ
IK
VN5
IK2
VN4
IK4
VN14
IK6
VN24
IK10
WI
0
ID77
MJ
TP
ZJ
TP
ZJ
TP
ZJ
CA
0
VN10
IK
VN7
IK20
VN6
IK
IK22
~K12 }
~K12 }
~K12 }
~K12 }
WI'1
IF
ID73
Has a 1st number been filled in?
Has a 1st relation been filled in?
Is there a call word for X?
Is there
To write
Exit
Sentence
before
a call word for Y?
completed data on tape
-- (If) Space period occurs
sufficient data given
IF
~141}
Has a 3rd no. been filled in?
~K12 }
Hass 2nd no. been filled in?
~K12 }
Has a 2nd relation been filled in?
2nd Control Routine
IA
Initial
Contr-ol2nd or
3rd time
thru
0
1
2
3
4
TP
TP
RP
TP
TV
IU
VN56
VNI07
10015
UF7
IU33
Abs. sign of X to more convient location
Abs. sign of Y to more conrient location
Clearing region of temporary Storage
VN43
VN74
IU4
VNl50
JC
Setting up divider routine for 2nd or
3rd time thru
717
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
TP
SY
SY2
SY2
SY3
UF4
UF3
UFl7
UFl4
SYll
IY
SYIO
IY33
SY7
QJ
JB
RJ
TP
TP
TP
EJ
EJ
EJ
EJ
TP
QJ
TP
QJ
RJ
1016
MJ
0
TP
VN151
IU5
UF27
QJ
TP
MJ
0
TP
UF27
MJ
0
o
CA
0
SYI
Get next symbol
A
VN152l
VN153f
IU25
IU31
IU5
IK14
~U17}
~U21}
~U23}
1013
IU5
Q
IU27}
VN150
IU5
VN151
Store 1st two symbol words in temporary
storage
-?
I?
t?
~.
termination
Is symbol a constant?
Is symbol a fixed-point variable?
Is symbol a floating-point variable?
Sentence -- (If) Symbol Rejected -Negative sign if no previous absolule sign
Absolute sign indicator to temporary
location
IU5
JC3
IU34
2nd Constant and Fixed-Point Variable Routine
Constant
&- Fix-Pt.
Var.
Routine 2nd or
3rd time
Thru
IA
TP
TP
IY
VN47
IY4
VNIOO
IY4
SY
SY2
UF
UFI
UF4
UF5
SYll
IYl4
SY2
MJ
0
TP
RJ
UF27
SY
0
1
ZJ
2
TP
3
4
5
6
ZJ
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
RJ
TP
EJ
EJ
EJ
EJ
TP
QJ
MJ
0
RJ
TP
EJ
SY
SY2
UF22
MJ
0
RJ
TP
EJ
SY
SY2
UF25
~yJ
~Y33}
SYI
Did X have a number in scientific notation?
Did y have a number in scientific notation?
Get next symbol
A
IY4
IY21
IY16
IY16
~0110}
VN155
IY33
VN154
SYI
IY12
SYI
e?
*?
-?
-?
Constant?
Exponent to storage
Negati ve sign indicator (40 0 0) to storage
Get nexT. symbol
Get next symbol
A
IY25
1042
SYI
10?
Get next symbol
A
IY31
POW?
718
30
31
32
MJ
0
RJ
SY
MJ
0
33
RJ
RJ
JB17
IDl6
MJ
0
CA
IY36
34
35
IYIO
SYI
IYIO
JB6 "'\
1013 ~
IY33 )
Get next symbol
Termination check loop
2nd Floating-Point Variable Routine
IA
JB
0
RJ
TAl
3rd time 1
thru
2
MJ
TA
0
TJ
RJ
UF36
TA4
JBl7
A
3
4
5
MJ
0
6
7
RJ
TP
RP
EJ
EJ
RP
EJ
EJ
EJ
SY
SY2
20004
UFl6
UF3
20004
UFIO
UFl5
UF14
M.l
0
TP
RJ
VNl51
JB6
ID56
23
MJ
0
24
25
TP
QJ
SY7
JB4
26
IF
SYii
27
QJ
JB4
2nd or
Nonsubscripted variable
Termination
Loop
Not in
Is in
Sub-
scripted
variable
10
11
12
13
14
15
16
17
20
21
22
30
31
32
33
TP
QJ
RJ
1016
MJ
0
JB32
JB37
JB6
JB24
SYI
Is symbol in Comb. List?
Not in
Is in
Go to subscripted variable portion
Get next symbol
A
JBl2 }
JB6
JB20}
JBl5
JC
JF
IKl4
30000
~22}
1052
tests
Abs. sign test
< > = NOT tests
JUMP?
)
(
t
;
!::l.
Has open absolute sign been given?
"Sentence -- (If) Open absolute sign
missing" Krror routine reference and
continuation of analysis
Is symbol a variable? If either a variable
or constant, it is
Is symbol a constant? assumed to be redundant argument
of a single valued
function and no
notice is taken
of it
Sentence -- If Symbol Rejected --
RJ
TS
MJ
0
1013
JB4
TSI
IDIIO
34
35
TP
TJ
UF34
TS3
36
37
~37}
MJ
TV
0
JB4
Is symbol in pseudo-op list?
Sentence -- (If) Set of variables differs
from Initial Set
Is variable subscripted?
No
JB60
JB55
Setting 'ujtyo{sti)1"age sUMoot ine
40
41
42
43
TP
RJ
TP
UF60
JBl7
SYll
JB50
JB61
JB6
Setting up index
Termination check
Is symbol a constant?
QJ
~44}
719
Relation
Symbol
Routine 2nd or
3rd time
thru
44
45
46
47
50
TP
QJ
RJ
MJ
RJ
SYIO
J850
1016
0
JB57
~46}
51
52
53
54
55
56
57
60
61
IJ
RJ
RJ
MJ
TP
RA
MJ
0
0
CA
JB6l
JB17
IDl6
0
SY2
JB55
0
0
0
JB62
JB41
0
I
2
3
4
IA
RJ
RJ
MJ
TP
TP
JC
JC
ID40
0
A
UF6
5
6
7
10
II
12
13
14
15
16
17
20
RJ
TP
RP
EJ
TP
RA
MJ
EJ
RP
TP
RP
TP
SY
SY2
20003
UFIO
A
VNl62
0
UF13
30015
VNl50
10015
UF7
SYI
A
JCI4}
JCII
VNl64
UF6
JC15
JCl
21
22
TP
TJ
VN142
UF26
A
IU6
23
MJ
CA
0
JC24
IU5
Is symbol a fixed-point variable?
Sentence -- (If) Symbol Rejected --
1013
J841
J855
Storing const. or fix.-pt. var. XS3
representation
Index jump to start of loop
JB6 }
Termination check loop
IDl3
JB52
fyNlS:}
UF6
Storage subroutine
30000
VNl56
0
Index temporary
JC3 }
1034
IF
VNl63
VNl62
Sentence -- (If) Incorrectly Written
1st relation symbol to storage
Starting count in counter of relation
symbols
Get next symbol
<>
=?
2nd relation symbol to storage
Count of relation symbols increased
Is 2nd symbol NOT?
Transferring data of X to VN130-144
2
Clearing VN150-l64 for use of Y2 data
accumulation
Is 2 > no. of relation symbols, some
value of SY2 hasn't yet been identified
and stored
Return to gather data on Y
JC17 }
VN130
JC21 }
VN150
}
2nd Jump Routine
Jump
Routine2nd or
3rd time
thru
0
1
2
3
4
5
6
7
IA
TU
TU
TV
RJ
TU
TU
TV
RJ
JF
JF156
JF160
JF154
JF153
JF157
JFl6l
JFl55
JF153
JF145
JF146
JF147
JFl44
JFl45
JFl46
JF147
JF144
Check if X2 = X
Check if Y
2
720
=Y
Reversal
of relation
symbols
due to
ctlanging
of signs
or a1tering of
position
of X & Y
the 2nd
or 3rd
time
thru
10
RJ
JI
JIl
11
12
TP
EJ
A
13
TP
14
15
EJ
MJ
VN130
VN55
VN150
VNI06
0
16
17
TP
EJ
VN150
VNl06
A
20
21
22
23
24
25
26
27
30
MJ
TU
TO
TV
RJ
TU
RJ
RJ
0
JF156
JF16l
JF155
JF153
JFl57
JF160
JF153
JI
103
JF145
JF146
JF147
JF144
JFl45
JF146
JF144
JIl
31
32
TP
EJ
VN130
VN106
A
JF36
Sign follows group equality #1
X2 (s) = yes)
33
34
35
TP
EJ
MJ
VN150
VN55
0
A
X2 (8) 1- y (s)
Inconsistent sign change Y1(s) = Xes)
Y2(s) t xes) Double inequa ity of signs
and reverse equality of no. series
means relation reversal not needed
36
37
TP
EJ
VN150
VN55
A
40
41
42
43
M•.T
0
VN7
JF43
UF63
ID3
44
45
46
47
50
ST
MJ
TP
ZJ
51
52
53
54
5_5
56
ST
MJ
TP
EJ
TP
ST
TV
TP
ZJ
TP
TP
J1123
0
VN6
JF50
UF63
JF16
A
ID3
JF41
JF57
ID3
JF57
JF41
~F46}
:m}
1st left sign = 2nd left sign X2(s)=X(s)
1st left # 2nd left X (s) t xes)
2 Y2(s) = yes)
Inconsistent sign change
Double sign inequality. Relation reversal
needed. Y2(S) f yes)
Y2(s) = yes)
Sign of 2nd rt. = sign of 1st rt. Signs
O.K. Reversal of relation not needed
Inconsistent sign change. Y2 t Y
Left = Right. Check if X = Y2
Right = Left. Check if Y = X2
Checks consistency of relation symbols
and assigns code figures
Y2(s) = Xes). Sign follows group reverse
equality 2nd time. Relation reversal
needed
Inconsistent sign change. Y2(s) t Xes)
Is line no. for 2nd test in output?
Reversing relation of single symbol in
temp_ storage 6~,3t43= (4,3,2}
JF57
~F53}
A
VN6
VN6
0
JF57
VN65
UF26
Uf24
JI123
Checks consistency of relation symbols
and assigns code figures
Is 2nd test line t O?
Reversing relation of 2nd test line.
6-{ 2 t 3 4} = {4 t 3, 2}
}
t
~43}
Was 1st test a double relation test?
A
J1123
12-{S.6.7} = {7.6 S}
t
721
Check of
consistency of
relation
symbols
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
TP
ZJ
TP
ST
ST
EJ
MJ
TP
ZJ
EJ
MJ
TP
ST
EJ
MJ
RJ
Loop to
77
TP
get line 100
EJ
number
101
RJ
TP
102
RP
103
EJ
104
EJ
105
TP
106
TJ
107
RJ
110
MJ
III
RJ
112
MJ
113
TP
114
RJ
115
TP
116
RJ
117
120
TP
ZJ
121
TP
122
ZJ
123
Exit
124
TP
RJ
lQQP ~25
after
126
EJ
final
127
EJ
line no. 130
MJ
is ob- 131
TP
tained 132
RJ
133
RP
EJ
Exit
134
EJ
loop
135
TP
after
136
line no.
for VN7 137
EJ
is obtained. 140
MJ
May be
start of 3rd
time thru if an
nif" is recognized
~F66 }
VN7
JF6l
UF50
VN4
VN6
JI123
t76 }
0
IDl03
VN6
JF70
VN4
~F72 }
[9 - (VN4) - (VN6)]
0
10103
JF76
UF50
VN4
JI123
~F76 }
0
SY
SY2
UF5l
ID63
SY2
20007
UF5l
UF14
SY5
UF23
1040
o
Sy
o
SY2
rn2
LN3
IX
VN6
JF122
VN7
JF124
(VN4)] should equal (JI123)
Comparison symbols ambiguous
Start of procedure to get line no.
Getting next symbol
JFl12
ID60
Is symbol TO
TO should follow Jump
(Warn ing)
A
~1l4}
Is symbol TO, SENTEN, STATEM, LINE,
NUMBER, NO., SENT.?
6.. test
Is 7 > no. of chars.
Incorrectly Written
Exit
Get next symbol
~4
Getting line number in standard form
JFl05}
JFl12
IK14
ID34
IF
SYI
JFl02
}
IXI
~124}
~F13l }
UF2
IU2
o
IJ12
LN3
[9 -
A
Sy
20004
UF16
UF14
UF60
o
= (JI123)
Symbol OK. Can get on to rest of jumps
now
Is 2nd test line = O?
Is (VN6) = (VN4)?
10103
SYI
VNlO
SYI
JF125
IK14
IJ12
VN7
SYI
JF135}
JF132
IK14
VN34
rn3
SY
UF16
UF14
Is line no. for 2nd test zero?
Sending line number to reference list
Is 2nd test line zero?
Has a line number already been put in VN7?
Line number to unconditional jump line
) ?
~. routine of 2nd or 3rd time thru
Incorrectly Written _ __
Line no. to VN7
)
(
t
;
?
6. . test?
Putting indicator "3" in output to indJcate there are to be 3 clauses
Start of 3rd time thru with recognition
of "IF"
Incorrectly Written --
722
...lAl
..,. ...
TO
"'L
142
143
144
145
EJ
MJ
146
EJ
MJ
147
150
151
152
153
154
155
156
157
160
161
162
TP
TP
RA
RA
IJ
MJ
0
0
0
0
0
0
0
CA
U1\T"lA
Vl1v"'t
UF60
0
UF65
[VN43 ]
[VN131]
r\
1'\
IK12
IK16
JF162
0
VN43
VN74
VN131
VN151
0
0
0
J
~.~o
ttl0 I
.JF21
UF42
UF42
JF145
30000
JF21
IDI10
0
0
0
0
0
JF145
JFl46
JF162
0
""
Is this the third clause being analyzed?
Index set up
Check if storage of data for a constant
or variable is equal to same data
gathered for one on the first part of
an "if~ sentence
X
y
absolute
absolute
Index temporary storage
JF163
723
VARY Translation Routine
The VARY translation routine builds from the input VARY sentence the
required lists of symbols for generating the VARY coding and for providing the
necessary connections so that the stated looping processes can be accomplished.
These lists are called the VARY String-out, the VARY File, and the Variable
List. In addition to these tasks, this routine makes appropriate checks.
where possible, for the writing of VARY sentences containing non-ending loops.
It also checks for compatibility of fixed- or floating-point variables and
constants within a Modify Component of a VARY sentence.
String-Out Form for VARY Sentence
Will
o
000
0 000
0 t
t
t
1
V
2
3
0
4
o
A
Y
R
0 0 0 0 0 0
0 0 0 0 0 0
7 7 7 7
s s s s
0 0 0 y
s
y
5
6
7
10
rOO
000
11
o
0
0
0 0 W X 000
12
p
0
Call word
13
Q
O
0 0
0 0 0 0
0
0
Call word O
Call word
l
Call word
2
Call word 3
XS-3 sentence identifier
sssss = sentence call word
YY = number of WITH words (max. 17 )
8
Sentence number of first in range
Sentence number of last in range
Sentence number of transfer, if
stated (zero otherwise)
r = 4 if WL7 is RESUME number (zero
otherwise)
WX = indicator for tests of first
variable
Variable. P=4 if call wordO is 63--and floating. (zero otherwise)
Initial value} qi=4 if absolute valIncrement
ue is specified (ex°t
cept
constants)
L1m1
16
Call
Call
Q3 0 Call
o 0 o 0
17
pI 0
CW~
I
CW o
WXI=indicator for tests of second
variab Ie
Variable
20
1
Q2 0
CW 1
CW I
Initial value
1
CW I
2
CW I
14
15
0
1
Q2 0
21
Q3 0
22
Q4 0
1
word
l
word
2
word
3
0 W Xl 0 0 0 0 0
ttt = number of words in string-out
Sentence number in standard form
1
3
1
CW I
2
I
CW
o
P and Qi have same
Increment
meaning as above
Limit
3
Additional 5 word
components as required
724
The WX indicators in the String-out provide to the VARY generator the
information required so that the necessary tests, if any, may be built to guard
against indefinite loops within the VARY cycle.
These indicators may be
explained by the modify component.
VARY a
a(b) c . . .
.
,
where a denotes the fixed or floating variable, and a, h, and c are fixed-or
floating- point variables and/or constants.
Then,
WX = 00 if a, h, and c are all constants..
gener'ated
No test coding will be
WX = 10 if a and/or care vari ab Ie and b is a stated constant> O.
WX = 14, if a and/or c are variable and b is a stated constant < O.
WX = 20, if b is a variable, and a and c are constants such that
c-a > O.
WX = 21, if b is a variable, and a and c are constants such that
c-a < O.
WX
= 22,
if b is a variable, and a and c are constants such that
c-a = 0
WX = 30, if b is a variable, and a and/or c are variable.
Since the test coding that is built by the VARY generator for all cases
except WX = 00 is only executed at the beginning of the looping process, none
of the variables a , b, or c may be changed by other sentences within the
VARY's range. In order to check that these variables are not altered by their
appearance in other Modify components of this or other VARY sentences, or in
COMPUTE sentences, or on the left of equations, the Variable List is built by
the VARY translator.
This list consists of three word entries for each modify
component of VARY sentences.
These entries remain in the list only until the
translation process has progressed beyond the range of the VARY.
Example:
VARY X O(l)Y with J I(K)lOO Sentences 10 thru 20 •
After the insertion of the 2 three-word items for this sentence, the ~r
iable
List would appear as follows:
725
VLO
0
0
address counter
address counter
Previous entries in
the list, if any
3 word item
{
<:
0 0
E
XS-3 for X
0 0 0 0 0 0 0 0 0 0
XS-3
for Y
{
for J
XS-3
for K
XS-3
<
0 0 0 0 0 0 0 0 0 0 0 0
<:
3 word item
>
For constant 1
:;:.
;:.
:.
For constant 100
When a constant appears for ~ or £ in the Modify component, the corresponding word in the Variable List is cleared.
The three-word items entered for the above sentence remain in the list for
checking by the COMPUTE and Equation translators until sentence 20 has been
processed. Then the VE routine of the Translation subroutines removes these
items from the list.
The first entries into the VARY File are also made by the VARY translator.
This file is used later, to:
1.
2.
3.
Determine when items are to be removed from the Variable List.
Provide exits from VARY sentences when transfer components are not
stated.
Establish the continuation of the VARY loop from the last sentence
in its range.
726
A VARY F1le item consists of two words for each VARY sentence:
Sentence nwmber of last sentence
in range.
CW 2 = Call word of VARY sentence.
CW I = Call word of sentence to
whiCh exit is made.
Y(4 bits) = number of WITH words.
X(2 bits) = 10 if exit is normal
transfer.
= 11 if exit is RESUME
of previous VARY.
All entries in the VARY File item except CWI and X are made by the
VARY translator. The item is completed later by the VE routine of the
Translation Subroutines (see Section III, 3,a).
727
Error Print-Outs Used in VARY Translator
ZA
---
ZB
Format error i.e. t
ZC
Inconsistent use of fixed or floating point operands.
ZD
Minus sign illegal prefix to variable.
ZE
Inconsistent use of absolute value signs.
ZF
is not a variable symbol.
no parenthesis.
type symbol is illegal in scientific notation format.
ZG
Illegal scientific notation format.
ZH
Change modifiers to eliminate infinite loop.
ZI
The number of modifier components exceed 15. Rest of sentence not checked.
ZJ
Misspelling or no referenced sentence.
ZK
No space period symbol.
ZL
Incomplete sentence
ZM
Variable ________must not change values within VARY loop.
ZN
Error in transfer component.
IN
Disallowable character in exponent _____
IQ
NV
i.e. t no (range)component.
Absolute value of number too small - given zero value
{ Absolute value of number too large
Too many vary sentences in program.
VARY must not be last sentence in range of any VARY.
{ Range of inner VARY extends beyond range of outer VARY.
728
Vary Translator Flow Charts
Pick up variable~ Pick u~ ~ni tial valu~ ~
Piclc up incr~m~nting
(]f
Preset program ~
DetermIne If ~v~lue of mO~IfIer
Deter~ assign or find C/W ---;.of ,?odIfIer.
zetoize WL4~WLIO
and send to Temp. @ varIable or constant (set
mInE~ if varIable or con':
~
indicator in'VT'). Assign
stant (set indicator in'VT').
or fin~C/W and send to
Assjlgn or find C/W and send
Temp. ~
to Temp. 14
Preset location
....---__~, necessary for
reentrance.
Bu:illd indicator l!!....
on basis of infor- IEmation concerning
operands stored in
VT20-VT26. Send
indicator to TemQ.UJ
Test operands
in modifier for
infinite loop
design
Move stored
L~
values in Te~.
@ - Temp. @ to
string-out
Build a Variable List~
containing variable,
~
incrementing operand,
and limiting operand of
modifier component
1
Pick up limiting value ~_
of modifier. Determine
if variable or constant
(set indicator in'VTJ.
Assign or find gL15'W and
send to Temp. Q§)
VARY String-Out Control Flow
~------~.--------.-
Test for 'with' and
~ tally in WL4
Error Return
RJ VT VTl
I
No
Exit
-
Process range and
transfer components
Note:
-
In Flow charts that f ollow
g
refer s to varia ble,
..Q. refers to initi al value,
lL refers to incre ment,
..2. refers to limit ing value,
as VARY a a(b)c.
Ia Region I
Get next symbol
Test for letter
QJ (SY7)
Illegal variable
type symbol
NO
YES
Error Routine
Alarm print-out
then proceed
Set op position
of Temp. @
NO
Test for fixed
or fltpt.
(SYIO) QJ
Check variable
type symbol
RJ RH RHI
YES
YES
Search DP List
L(SY2 )
RJ TS TSI
Found
Not found
Test for
pseudo op
QJ (TS4)
NO
Search CB List
for L(SY2)
RJ TA TAl
Not found
Assign 64 type C/W
YES Test for fixed or
fltpt. QJ (SYIO)
~-----~
Send symbol and
C/W to CB Li st
730
I--N_O---..,;~ Assign 65 type C/W
IFVI
First value region 'a'
I
I
Save SYIO in Temp.
Fixed or fl t ..ot ,
indicator
CDI
1
\
Set '40' in OPe of
Temp. @
. Get next symbol
--
Set flag ~to 40
minus indicator
~
~
\~
Yes
Test ( I ) absolute
value sign
No
~
Test
Yes
(-)
No
731
Increment Region 'b' ~
Get next symbol
,
Yes
Test Temp. ~for
(
No
\
Test S1'2 for
(
ERROR
no open paren.
No
Yes
Get next symbol
,11
...... Test for
(SY2)
( I)
Yes
,
Set nOp" portion to
40
Temp.
@
No
,
Test for
Yes
(-)
No
~J
Exit
732
Set flag ~
Bound Phase or Region
II Get next
te t
symbol
Test Temp ~ for
)
No
)
Test SY2 for
~_ _~
ERROR no close paren
Yes
Get next symbol
Set !tOptI portion to
40 Temp.
@
No
Yes
Set flag
No
733
@
Get next symbol
RJ SY SYI
Send SZ2-SZ12 to
Error
No absolute
value sign should be
detected
No
Save SY2
ZZ2-ZZ12
Yes
for
value
"t"
Get next
symbol
No
Test for: "(".
")"I with • sentence
Test Temp ~/'Xit
4
Set parameter to
print: TOO MANY
VARY SENTENCES
Set parameter to
print: RANGE OF
INNER VARY EXTENDS BE YOND
RANGE OF OUTER
VARY
Vary Translator Flow Charts - Build Vary File
Set
(";~~
=(y)
as there been
I--_~
~
No
J
-~~
Set indicator an~
length of vary .
]
files .for yary sen)
tences In maIn progmm
Set parameter to
print: VARY MUST
NOT BE LAST IN
....----RANGE OF VARY
(a)
= Address
(Y)
= Address
of last unclosed item in vary
file.
for inserting
next item in vary
file.
Regions-VARY Translator
HE
HE
HE
HE
HE
HE
HE
HE
HE
HE
HE
HE
HE
HE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
HE
RE
HE
MC4400
LV4566
VV4635
FV4650
BV4663
CV4704
GV4725
HV5040
JV5117
WV5151
DV5214
PV5243
IV5310
SV5362
VZ5417
UV5433
TV5465
EV5506
VT5521
PL5553
105613
IM5743
IN6057
106107
106136
lR6265
ZA6277
ZB6314
ZC6330
ZD6347
ZE6364
ZF6401
ZG6423
ZH6437
Z16455
ZJ6500
ZK6521
ZL6533
ZM6551
VP6573
VQ6633
VS6647
NV6655
lS6711
ZZ6714.
SC6726
742
T[;'L.,.t).,.
Dr;'
UL:.
.Ll'U It:;. I
RE
RE
RE
XV6730
XU6735
ZN6760
Translation Subroutine regions are also needed to assemble the VARY
Translator tapes.
Also included, in the reco tapes of the VARY Translator are ID (130
lines in length) r IM( 114 ), IN( 30 )
8
8
I
of 3 addresses used as temporaries).
IO( 27 ), 10 ( 127 8) ~ IR( 12
8
8
)!
8
and IS (a set
With one 2-1ine exception, this reco
coding is identical to the regions similarly named in the IF String-Out where
they are annotated and reproduced in this manual.
The 2-line exception is:
IA
ID3
RJ
DV
DVI
Build Variable List File
MJ
0
IDS
MC40
Jump back to vary Translator Control
CA
743
Master Control for Vary Translator
o
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
IA
MJ
MJ
RJ
RJ
TP
QJ
RJ
RJ
RJ
MJ
RJ
MC
o
o
VV
FV
SYll
MC6
HV
JV
WV
o
GV
RA
PLIO
RJ
TP
BV
SYll
MC17
HV
QJ
RJ
RJ
RJ
MJ
RJ
RA
RJ
TP
QJ
RJ
RJ
RJ
MJ
RJ
RJ
RJ
RJ
RJ
TP
EJ
EJ
EJ
RJ
MJ
RA
TJ
MJ
RJ
MJ
RJ
TP
QJ
TP
JV
WV
o
GV
PLIO
CV
SYll
MC30
HV
JV
WV
o
GV
OV
PV
IV
SV
PL33
MC154
MC152
MC153
SY
o
CT
XV
VVI
FVl
~C12}
HVI }
JVl
WVl
MC13
GVl
PL2
BVI
Q
MC23
HVI }
Jump out for correction; then process
Test duplication of variable
First value region or 'a'
Test for digit or decimal pt.
a
Constant branch
Variable branch
Increase CTR+l ~CTR
Increment region or "b"
b
JVl
Constant branch
WVl
MC24
GVl
Variable branch
PL2
CVl
Q
MC34
HVI }
JVl
WVl
MC35
GVl
OVl
PVl
IVl
SVl
A
MC47
ZLI
MC54
SYl
MC42
WL4
PLl
MC155 MC52
ZIl
o
VZ
VZl
o
MCl
SY
SYl
SYll
MC57 ~Jl }
SY2
L~4 I
Bound phase or "c"
c
Constant branch
Variable branch
Build Variable File
Build preface region to indicator
Build indicator
Mover region
Possible WITH or SENTEN
Test WITH
Test fj.. (Incomplete sentence)
Test SENTEN
Get next symbol
Go back & test for (WITHtfj.. t SENTEN)
Test no. of WITH words
~
178
Presetting region
Continue processing modifiers
Get next symbol which should be digit
Is it digit?
No~ Error
744
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
110
111
112
113
114
115
116
117
120
121
122
'On ...
l~')
124
125
126
127
130
131
132
133
134
135
136
137
140
141
142
143
l
RJ
TP
TP
rn2
rn3
rn3
rn J
WL5
A
Put line number in proper form
Line number ~ string-out
nT
ntJ
IX
IXI
Put line number in IZ iist
RJ
EJ
EJ
MJ
RJ
EJ
TP
n_T
TP
RJ
MJ
RJ
MJ
TP
RJ
EJ
EJ
EJ
MJ
RJ
EJ
TP
QJ
TP
RJ
TP
TP
RJ
TP
MJ
RJ
EJ
SY
MC146
MC147
0
SY
MC153
SYll
SY2
LN2
0
IX
0
WL5
SY
MC152
MC15l
MC150
0
SY
MC153
SYll
MCl13
SY2
LN2
rn3
SYI
MC70
MC70
MC157
SYI
MC70
Q
ZJl }
LN4
LN }
MC163)IXI
MCI02
WL6
SYI
MCI36
MCI22
MCl07
KUlO
SYI
MCl07
Q
ZJl
LN4
rn
WL7
L~3
A
~
....
TP
QJ
TP
RJ
TP
TP
RJ
RJ
EJ
MJ
RJ
RJ
TV
TP
ST
AT
MC74
}
IX
PL4
0
SY
IXI
WLlO
MC133
SYI
... ,... .... MCi22
1Vlv!;).:l
SYll
Q
MC126 ZJl }
SY2
rn4
LN
LN2
LN3
WL7
rn3
A
IX
IXI }
SY
SYI
MC152 MC136
0
ZKl
VP
VPl
VZ
VZl
SVII
PL30
".
}
MC156
PL
[3°1
Test
Test
Jump
Look
Test
THRU
THROUGH
out to Test ~.
for sentence number
SENTENCE
Test sentence number
Put line number in proper form
TP LN3 WIh insert
Put line no. in IZ list
~
THRU - THROUGH, not detected
Test
Test
Test
Jump
.. ~ ...
"TO"
RESUME
for correction
Test SENTENCE
J Test for digit
~
}
}
e3
Cfl
til
0:::
Process line number
Line number ~ string-out
Line number
Jump to test for
~
~
list IZ
•
Test SENTENCE
Test for digit
Process line number
Line number ~ string-out
Line number -+ list IZ
Test
~.
Build Vary
Presetting
WLn+l ~A
WLn+-l - WL
Put no. of
745
File
region
= n
words in string-out
~
WL
144
145
146
147
150
151
152
153
154
155
156
157
160
161
162
163
164
165
RJ
MJ
66
66
54
66
01
65
71
0
0
EJ
j'lJ
TP
MJ
TP
TP
MJ
CA
SS
0
33546
33545
30656
51777
22777
30506
34663
0
0
MC152
0
WL5
0
L.~3
S51
Me
77777
16732
74730
77777
77777
63050
37777
20
WL
MC161
Mel01
WL6
MC136
WL6
THRU
THROUGH
RESUME
TO
~.
SENTENCE
WITH
(20)8
)
Test
~
.
LN3
A
MC77
0
MC166
746
Process a
IA
LV
0
l'vlJ
0
30000
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
RJ
TP
QJ
RJ
RJ
MJ
TP
TJ
TJ
MJ
TP
TP
QJ
TP
QJ
RA
MJ
RJ
MJ
TP
TJ
TJ
MJ
TP
MJ
TP
QJ
RJ
SYI
Q
ZAI
VT20
RHI
TS1
LV23
36
AT
37
40
41
42
43
44
45
46
MJ
RJ
AT
TJ
TJ
MJ
0
0
CA
SY
SY7
LV4
SY2
RH
TS
0
TS3
LV45
LV46
0
TS3
TS4
LV17
SYIO
LV
SV22
0
TA
0
TA4
LV45
LV46
0
TA4
0
SYIO
LV35
TK
PL14
0
TK
PL15
LV45
LV46
0
0
0
LV47
TP
Region
}
Test for 1st character, a letter
a ~ Temp a
Test variable type symbol
Search DP list
Not in list return
ZAI
A
)
LV14
ZAI
SV22
Q
LV
Test 62777 < CW
ZV21 }
PL4
LV
TAl
LV33
Test for fixed or fltpt.
Ope portion of Temp @ to 40
}
ZAI
A
)
LV31
ZAI
SV22
LV
~V40
}
TK1
SV22
LV42
TKl
SV22
ZAI
XU
ZAI
63000
67000
~
66777
C/W ~ Temp @
Test for Pseudo op
Search Combination List
Not in list return
Test 62777 < C/W
~
C/W of symbo 1 in 1ist
66777
~
Temp
Test for fixed or fltpt.
Sequence number ~ A
Fiypn rnf.- ._!, h4000
c:/W
~ Tpmn
- - -- -- -- --- - -
----~
I
Sequence number
~
65000 C!W ~ Temp
A
@
Jump out for correction
747
@
(f2)
'-.7
Search Variable List "VL" for Modifiers Previously Mentioned
0
1
2
3
4
5
6
7
10
11
12
IA
MJ
SP
SS
SA
TO
SP
RP
EJ
MJ
0
0
CA
VV
0
VL
VVII
VV12
30000
0
0
0
VV6
A
VT20 0
[30000] VV }
ZMI
VLl
0
VV
VLl
0
20000 0
VV13
VLn+l ~ A
-VLl = n = # words - 1
Add J value
Variable ~ A
Search list VL
First Value "a" Region
IA
0
1
2
3
4
5
6
7
10
11
12
TP
FV
0
SYlO
RJ
EJ
SY
PL16
MJ
°PL4
°PL13
SV23
°
°FVl3
MJ
TP
MJ
EJ
MJ
RA
MJ
CA
30000
PL31
SYI
FV5
FV7
PL23
FV2
FVll
FV
PL4
FV2
Set Temp (!)indicator for fixed or floating
point
Test (-)
L(40,0,0) ~ flag
®
(I)
Test
Exit to Control
Set Ope of Temp
(~
748
to '4O'
Increment Region "b"
0
1
2
3
A
':t
5
6
7
10
11
12
13
14
15
16
17
20
IA
MJ
RJ
TP
EJ
TP
EJ
MJ
RJ
TP
EJ
MJ
RA
MJ
EJ
MJ
TP
MJ
CA
BV
0
SY
PL33
PL17
30000
SY1
A
BVI0
}
SY2
A
PL17
0
SY
SY2
PL13
0
SV24
0
PL16
0
PL4
BV7
ZB1
SY1
A
BV13
BV15
PL4
BV7
BV17
BV
PL23
BV7
"
0
Exit
J
Temp @ E({) ~A
Test ( ( )
Test
( ( )
Error print and exit
Test
}
(I )
Set Ope of Temp
@
to '40'
Test for (-)
Set Ope of flag
(]D
to t40' minus inda
BV21
Bound Phase or Region ftc"
IA
0
1
2
3
4
~
~
6
7
10
11
12
13
14
15
16
17
20
MJ
RJ
TP
EJ
TP
CV
0
SY
PL33
PL20
SY2
30000
SYI
A
eVI0
A
L.J
1"" L"-U
nT~n
£OtT"'!
,",v,
MJ
0
SY
SY2
PL13
ZBl
SY1
t:'T
RJ
TP
EJ
MJ
0
RA
SV25
MJ
0
EJ
PL16
MJ
0
TP
PIA
MJ
0
eA
eV21
A
eV13
eVlS
PIA
CV7
eV17
CV
PL23
eV7
Pick
}
~
Temp
Test
Test
ll@)
3 E ( ) )
~A
())
( ) )
)
Error print and exit
@)
}
Test
(I)
Set Ope of Temp
Test for
(-)
Set Ope of flag
749
@ to "40"
®
to "40" minus ind.
Variable Branch
o
I
2
3
4
5
6
7
10
II
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
IA
MJ
TP
TP
EJ
MJ
RJ
MJ
RA
RA
TP
MJ
RJ
MJ
RA
RA
TP
MJ
TP
QJ
RA
RA
RJ
TP
RA
TP
RA
TP
MJ
RA
RA
RJ
TP
RA
TP
RA
TP
RJ
MJ
RA
RA
RA
RA
RA
o
GV
o
PL4
PL3l
SYIO
30000
PL22
A
Set flag ® for VT to '40'
Temp CD = SYIO a ~A
Test consistency of fixed or fltpt.
Error print
Search DP list
Not in list - go search CB
o
GV56
ZCI
TSI
GVI3
PLIO
TS3
GVIO
XU21
TAl
GV2l
PLIO
TA4
GV16
XU2l
Q
GV34
PLIO}
PLIO
TKI
PL30
PL30
GV27
GV54
GV3l
GV44
PLIO}
PLIO
TKI
PL30
PL30
GV40
GV55
GV42
XUI3
GV76
SV23
SV23
SV23
SV23
SV23
TA4
TS3]
PL30
GV54
GV55
Presetters
64000
65000
Q
GV62
PI23
Flag
o
TS
o
GVIO
[SV23]
GV46
o
TA
o
GV16
[SV23]
GV47
o
PL3l
GV23
GV27
GV31
TK
A
[SV23]
GV50
[SV23]
GV51
o
GV40
GV42
TK
A
[SV23]
GV50
SV23
GV52
VT
o
o
55
o
o
o
56
57
60
TP
QJ
TP
PI23
GV60
PL
C/w ~ Temp (13, 14,15)
Preset GVlO
Go to build table
Search CB list
Not in list - go assign C/W
C/w ~ Temp (13, 14,15)
Preset GVI6
Go bui ldhiab Ie
Temp CD = SYIO a ~Q
Test for fixed or fl tpt. variable
Modifiers
Obtain proper sequence
A ~Temp ®
# ~
A
Preset GV27
Temp {13,i4, 15) + 64000
Preset GV3l
"Go build iable
P
Modifiers
Preset GV40
Temp (13,14,15) + 65000
Preset GV42
Build table, but make correction first
o
®~
Q (minus sign indicator)
Reset flag @ to 0
750
Fxd. pt.
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
110
III
112
MJ
TP
QJ
RJ
MJ
RA
TP
TP
QJ
RJ
EJ
MJ
TP
RA
TP
TP
MJ
TJ
MJ
0
0
TP
TP
QT
TJ
MJ
CA
0
SY7
GV64
RH
0
GV67
[SV23]
GV75
GV72
SY
PL13
0
SV23
GV77
SV23
GVI06
0
GVI05
0
0
0
SV23
UV31
ZDl
ZAI }
RHI
GV5
PLIO
Q
GV67
GV
SYI
GV
Q
ZEI
Q
PLIO
A
GV77
GVI07
GV66
ZAI
63000
67000
A
Q
A
A
GVI04 ZAI
0
GVI02
GVl13
Error print
Test
Error for first character a letter
Test for variable type symbol
Test for opening absolute value sign
Detected
Test for closing absolute value sign
Error print; inconsistent use of absolute
Presetter
L(O, 77777, 77777)
751
~
Q
Constant Branch
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
TA
MJ
RJ
RP
TP
EJ
MJ
RJ
MJ
EJ
RA
TP
TP
QJ
MJ
MJ
EJ
EJ
MJ
TP
MJ
TP
QJ
MJ
EJ
EJ
MJ
RP
TP
RJ
RJ
TP
RA
MJ
TP
EJ
EJ
MJ
TP
EJ
MJ
RA
TP
TP
QJ
TP
TP
MJ
CA
HV
0
SY
30011
SZ2
PL13
0
SY
0
PL6
HV12
[SV23]
HV41
HV16
0
0
PL17
PL20
0
SY2
0
PL31
HV26
0
PL7
PL6
0
30011
ZZ2
RB
TQ
TQ2
HV
0
SV23
MC154
MC153
0
SY2
PL7
0
HV51
[SV23]
HV54
ZEI
SV23
SY2
0
HV57
[30000]
SYI
HV4
ZZ2 }
HV6
HV17
SYI
HV45
TVI
PLIO
Q
HV12
HV15
ZE1
HV
HV22
HV22
HV42
PL33
HV
Q
HV55
ZCl
UV1
TVI
ZF1
HV34
SY2
RBI
TQ1
PL30
PL1
HV
Q
HV22
HV22
HV50
PL33
UVI
HV10
~LIO }
Senten: 1
Save this information
Test (I) (absolute sign)
No. (I )detected
(
Test
Test
(*) ~
(E)~
set up routine
set up routine
...
(I)
detected
Preset
... HV12
.....-).
Error print and exit
Go to JV via MC
Test «)
Test (»
Jump out for correction
( () 0 r ()
~ Temp @
Go to JV via MC
Temp CD ~Q
Test fixed or floating point
Error print and exit
Test (.) ~ set up rout ine
Test (E) ~ set up routine
Error print and exit
Send value to temp ®
Set up for return to WV
Presetter for HVl2
Test WITH
Test SENTEN
presetter
Test for previous mention of absolute value sign
No
HV51
HV24
Q
A
HV27
752
Fixed or Floating Point Constant Branch
0
1
2
3
4
5
IA
MJ
RP
TP
TP
QJ
RJ
JV
0
30000
30011 JV3
ZZ2
SY2
PL3l
Q
JV5
JV17
RD
RDI
/..
v
TO
.&.L
SY2
RS4
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
RJ
TP
QJ
RS2
PL23
JV12
RS3
PL
0
RS3
0
RB
SY2
SY3
GG2
PL23
JV25
GG3
PL
0
GG3
0
JV32
RS
Q
JV15
PL30
PL23
JV
PL30
JV
RBI
GG4
GG5
GG
Q
JV30
PL30
PL23
TN
TP
MJ
TP
MJ
RJ
TP
TP
RJ
TP
QJ
TN
TP
MJ
TP
MJ
CA
JV
PL30
JV
Fixed or fltpt. indicator
...
}
}
-~
Q
Fixed-pt. test
XS-3 to octal conversion
Test flag
Exit to WV via MC
Positive value ~ Temp
Exit to WV via Me
®
0~f1ag
753
®
~
1
Fixed
Pt.
Floating
Pt.
Exit for Constant Branch
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
IA
'II"
MJ
RA
TP
TP
QJ
TM
MJ
TP
RJ
TP
RJ
RA
RA
TP
TP
QJ
TP
RA
QT
0
WV2
[SV23]
WV36
WV5
PL30
0
PL30
VT
PL34
GW
WV14
[SV23]
WV37
A
WV20
WV35
WV22
[SV23]
WV40
PLIO
Q
WV27
PL
WV41
WV32
[SV23]
WV42
0
77777
SV23
SV23
SV23
PL
SV23
WV43
TP
TP
LQ
RA
TP
TP
RA
RA
TP
MJ
37
TP
RA
QT
TP
RA
CA
30000
~LIO ~
WV2
WV7
PL34
WVI0
PL34
VTl
Set up for
(I)
detection
Magnitude of constant
~
Temp @
Constant ~ Temp @
Set up reference table
.4.
GWI
PLIO
Q
WVI4
Q
WV
Q
PLIO
PL30
WV22
Q
25
}
}
C/W ~ Temp
@
Test for '40' indicator
L( 3777 •••• ) -+ Q
}
Mask C/W ~ Temp
}
Shift counter PLIO to V
[~V23J
}
WV27
PLIO}
PL30
WV32
WV
77777
Q
Q
PL30
SV23
PL30
Search and assign C/W from constant pool
®
Clear cell (set Ope to 0)
C/W~ Temp
754
@
Build Variable List
0
1
2
3
4
IA
MJ
TV
TP
RA
TP
5
QJ
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
TV
TP
RA
MJ
TV
TP
RA
TP
QJ
TV
TP
RA
MJ
TV
TP
RA
MJ
CA
DV
0
VL
VT20
VL
VT25
DV12
VL
PL
VL
0
VL
VT22
VL
VT26
DV23
VL
PL
VL
0
VL
VT23
VL
0
DV27
30000
DV2
[30000J
PL3
Q
DV6
DV7
[30000J
PL3
DV15
DV13
[30000J
PL3
Q
DV17
DV20
[3OO00J
PL3
DV
DV24
[3OO00J
PL3
DV
1
Counter ~ DV2 v
a ~VLn ; n ~ 1
Increase counter VL by (0,1,1)
Test "b" for variable
J
}
}
}
}
}
No variable:. 0 ~ VL list
Increase Counter VL by (0,1,1) to test "c n
Insert variable in list
Increase counter VL by (0,1,1)
Test" cit for variable
No variable.·. 0
~
VL list
To preface region PV via MC
Insert variable in list
Exit to preface region PV via MC
755
Preface for Indicator Region
0
Test 1
'-. 2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
0; if not) error print)
Infinite loop designed
Test b < 0
Error prin~ infinite loop designed
a'~ Q
Go to test 4
c· ~ Q
C'~A
c-a
~
A
Test c-a > 0
Test Temp
E b for absolute value
Error prin~ infinite loop
3
PV
0
~V37 }
Q
PV41
Q
PV
A
ZH1
}
Test b', if variable, then exit
Test b = O. If so,
error print, infinite loop designed
756
Build Indicator WX
0
IA
MJ
1
TP
2
3
4
5
6
7
10
11
Constant 12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
QJ
RA
TP
QJ
RA
IV
0
VT25
IV3
SV21
VT24
IV6
SV21
MJ
0
TP
QJ
TP
VT26
IV6
SV21
Q
IV22
IV42
VT22
VT22
IV21
SV21
SV21
Q
IV
VT23
VT21
IV32
SV21
0
SV21
Q
IV
VT23
VT21
IV40
SV21
0
0
1
2
4
10
20
SV21
IV12
IV52
LQ
QJ
TP
TJ
TP
QJ
RA
TP
LQ
QJ
TP
ST
ZJ
RA
MJ
TP
LQ
QJ
TP
ST
SJ
RA
MJ
0
0
0
0
0
0
TP
ZJ
CA
30000
v.
IV4
IV47
Q
IVI0
IV46
IV12
Q
IV50
Q
20
IV15
A
IV22
Q
IV22
IV45
Q
21
IV25
A
A
A
IV30
IV44
IV
Q
21
IV35
A
A
IV
IV43
IV
0
0
0
0
}
Test b!
}
Test at
1~B5
1 ~B4
}
Test c'
}
Test bit 5 = 1
}
}
Test b > 0
Test b < 0
1~
B3
}
Test bit 4 = 1
}
Text c-a = 0
1~B2
}
}
Test bit 4 = 1
Test c-a> 0
l~Bl
0
0
A
IV
757
Mover Region
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
IA
MJ
TP
LA
TU
RA
RA
IJ
TP
TP
TP
RA
IJ
TU
MJ
0
0
0
0
0
0
0
0
TP
TU
TP
TP
MJ
0
0
CA
SV
0
30000
[SV22 J A
A
17
A
[SV22]
SVI
PL2
SV3
PLI
SV16 SVI
SV26 SVI
SV27 SV3
[SV21] lWLU]
PL3
SVII
SV17 SVII
SV20 SVII
SV30
0
0
3
4
0
0
SV21
0
0
0
0
0
0
0
0
0
0
SV22
A
SV22
A
SV33 SV16 }
SV34 SV17
SV
0
0
3
0
4
SV35
I
(OP, 0, C/W) ~ A
(OP, 0, C/W) ~(O, C/W t O)~ A
(OP, C/W, C/W) ~ Temp @
Reset SV16
Move Temp ~ WL
Index
Index
Temp
Temp
Temp
Temp
Temp
Reset Index
758
Presetter Region for Re-entry to LV
0
I
2
3
4
5
IA
MJ
TP
TP
RP
TP
RP
u
L
TP
7
10
11
12
13
RP
TP
RP
TP
MJ
CA
VZ
0
PL
PL
10003
PL
10007
30000
PLIO
PLll
VZ5
PL21 }
VZ7
PL
VT20
10005 VZll
PL
SV21 }
10006 VZ13
PL
PL30
0
VZ
VZ14
1
O~
o~
O~
CTR
CTRI
flags
o ~ storage
.J
o ~Temps @ - @
Subroutine for Detection of Asterisk*
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
UV
l\1J
0
RJ
EJ
SY
PL25
0
SY
PL5
SY13
UVI0
SY
SZ2
UV31
SZ2
IN
IN2
RS2
RS3
0
SY2
IN
IN2
RS2
TS3
0
PL26
0
77777
UV32
MJ
RJ
EJ
TP
QJ
RJ
TP
EJ
TP
RJ
TP
RJ
TP
MJ
TP
RJ
TP
RJ
TN
MJ
TP
MJ
00
CA
EVI
SYI
UV4
ZGl
SYI
TVI
Jump to Exi t
Test for XS-3
Error print
SV21 }
SYI
~V21 }
IN2
INI
RS4
RS
IQ3
UV
IN2
INI
RS4
RS
IQ3
UV
RS4
UV16
77777
1
'10'
Test for XS-3 POW
Test
for superscript
Test for superscript (-)
No superscript (-)
J
XS-3 (1)
~
RS4
Superscript (-)
759
Subroutine for Detection of "E"
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
1A
MJ
RJ
EJ
EJ
MJ
RJ
RJ
TP
RJ
TP
MJ
RJ
RJ
TP
RJ
TN
MJ
CA
TV
0
SY
PL16
PL36
0
SY
RD
SY2
RS2
RS3
0
SY
RD
SY2
RS2
RS3
0
TV21
EVI
SYI
TV13
TV5
TV6
SYI
RDI
RS4
RS
1Q3
TV
SYI
RDI
RS4
RS
1Q3
TV
Exit
Test
Test
(-)
(+)
}
Check fixed pt. constant
Decimal
to octal conversion
}
Check fixed pt. constant
Decimal
to octal conversion
Exit for Scientific Notation Set-up Routine
IA
0
MJ
1
TP
TP
RJ
TP
QJ
TP
2
3
4
5
6
7
TN
10
MJ
11
12
TP
MJ
CA
EV
0
ZZ2
ZZ3
GG2
PL23
EV6
PL
GG3
0
GG3
0
HV32
GG4
GG5
GG
Q
EVIl
PI23
IQ2
EV
IQa.
EV
Test flag
Reset flag
EV13
760
~
Set Up Reference Table Used by VL, "WX", and Preface
RA
TP
VT
0
PLII
PL22
VTlO
VT5
PL34
TP
1T'1',)
• .&ow,7
MJ
0
VTll
PL4
VT30
VT14
SY2
VT3l
PL
0
0
0
IA
0
1
2
3
4
5
6
7
10
II
12
13
14
15
16
17
Table 20
21
22
23
24
25
26
27
30
31
MJ
RA
TP
QJ
RA
TP
TP
RA
TP
TP
TP
MJ
0
0
0
0
0
0
0
TP
TP
TP
CA
[30000]
PLI
Q
VT4
PLll
[VT20J
VT5
VT16
PLII
[VT23]
VTll
PLII
[VT20]
VT14
P122
VT
0
0
0
0
0
0
0
0
PL34
PL4
SY2
VT32
0
0
0
0
VT20
VT23
VT20
1
oJ
Exit
Entrance. CTRI + 1 ~ CTRI
Flag ®~Q
Test for variable (-)
Constant
VT20 = Beginning of table
Preset VT5
Variable
L( 40,0, 0) ~ Tab Ie
Preset VTll
Symbol ~ Table
Preset VT14
Reset flag @ to 0
a , the
at the
b, the
c, } the
at
b'
ct
variable
lower limit
incrementing value
upper limit
(-) indicates Variable
761
Constant Pool
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
IA
0
0
0
0
40
52
30
56
0
0
0
42
0
0
02
17
43
0
0
0
0
04
04
0
0
0
0
0
0
0
63
77
CA
IA
0
1
2
3
4
RJ
RJ
MJ
r?P
TP
CA
PL
0
0
1
1
0
77777
77777
77777
0
0
0
1
0
1
0
77777
77777
77777
0
0
0
77777
64000
65000
77777
77777
77777
0
77777
0
0
77777
77777
77777
0
0
0
0
0
0
0
03777 77777
77777 77777
0
0
0
0
0
0
0
0
0
0
0
0
0
0
77777 77777
77777 77777
PL40
POW
E
*
CTR
CTRI
LV
0
fOO()~
PL
XV5
11® -;Te€)
@
a-€)
- lower case minus
(
)
Flag
Flag
Flag
0
XV
XV
Slot for Temp
Slot for ® -
~
X-53
10
1
Temp T
Temp
Temp
Temp
Temp
&
~
+ lower case plus
~3)
LVI
MC2
XVI
WL4
Zeroizes critical part
of Vary Stringout WL4 - WLlO
762
IA
0
1
2
3
4
5
TP
TP
TP
/...
v
7
10
11
12
13
14
15
16
17
20
21
22
XU
XU6
SY2
XU7
TE
0
TF
TFI
TF2
TF3
TEl
LV
{\
v
...,~
...,~
0
RJ
EJ
MJ
TP
MJ
TP
MJ
MJ
MJ
RJ
MJ
CA
0
0
SYI
SY
MC152 ZNl
MCI04
0
XU17 XU5
XU
0
XU20 XU5
VTl
0
XU15
0
0
LV
VTl
VT
GV45
0
XU23
TP
RJ
MJ
A
SY2
Put C/W and XS-3 symbol in CB list
for variable a
I
.J
Put C/W and XS-3 symbol in CB list
for a, b, and c
}
Builds table
Error Prints
0
1
2
3
4
5
6
7
10
11
12
13
14
IA
MJ
RJ
1P
TP
RJ
MJ
77
01
66
54
01
46
40
CA
ZA
0
WA
SY2
ZA14
UP2
0
77777
34650
01240
34242
65734
22777
ZA6
ZA15
ID3
WAI
ZA6
UP3
UP
ZA
77777
15051
17024
54630
72551
77777
6
0 0 0 0 0 0
N 0
T t!l A !:!l V A
R I A B L E
6. S Y M B 0
L
77 77 77 77
6 I S t!l
.
763
0
1
2
3
4
5
6
7
10
11
12
13
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
0
1
2
3
4
5
6
7
10
11
12
13
14
1A
MJ
RJ
TP
RJ
MJ
31
01
01
50
30
34
40
CA
2B
0
WA
2B13
UP2
0
51544
30545
34223
51015
50663
65227
2B5
2814
1D3
WAI
UP3
UP
2B
72466
45154
02201
22454
33065
77777
6
IA
MJ
ZC
0
WA
ZC16
UP2
0
50265
65663
67653
01313
01515
51246
01525
01515
50276
ZC5
2C17
1D3
WAI
UP3
UP
ZC
15065
05066
00151
47230
40131
63450
13450
23054
52277
11
ZO
0
WA
2014
UP2
0
34506
34325
46303
52543
01665
54342
22777
205
2D15
103
WAI
UP3
UP
ZO
76501
00134
22446
03134
10170
42546
77777
7
RJ
TP
RJ
MJ
34
34
01
31
27
46
32
66
24
40
CA
1A
MJ
RJ
1P
RJ
MJ
47
65
46
01
72
24
30
40
CA
F
l:l
l:l
0 R M .A T
R R 0 R
E
E
I
0
N
I
S
N
.
l:l
T
.
E
p
H
I N C 0
I S T E
~ U S E
F l:l F I
D 6. 0
L 0 A
G ~ P
T ~ 0
A N D
M
S
L
I
I
L
l:l
E
S
N
N
S
l:l
T
0
X E
R l:l
I
0 I
P E
S
T
N U
G N
E G
~
.
A R
.
F
N
N
R
s l:l
l:l
I
A L
P R E F I
T 0 ~ V
A R I A B L
X
l:l
E
.
764
0
1
2
3
4
5
6
7
10
11
12
13
14
1A
MJ
RJ
TP
RJ
MJ
34
34
01
31
46
24
34
40
CA
1A
0
MJ
1
RJ
2
3
4
5
6
7
10
11
12
13
14
TP
TP
15
16
17
20
21
RJ
MJ
77
01
65
01
46
34
30
26
66
01
51
40
CA
ZE
0
WA
ZE14
UP2
0
50265
65663
67653
01242
67663
46673
32506
ZE5
ZE15
ZF
0
WA
SY2
ZF21
UP2
0
77777
66735
73472
34650
30322
50016
50663
01505
34515
01010
54472
ZF6
ZF22
1D3
WA1
UP3
UP
ZE
15065
05066
00151
56551
00170
00165
52277
7
I
I
~
F
L
A
I
N C 0
S T E
U S E
~ A B
N S
N T
~ 0
S 0
U T E ~ V
L U E f:::l S
G N S
.
1D3
WA1
ZF6
UP3
UP
ZF
777777
23001
55146
13446
44601
52634
43134
16624
00101
10131
46622
13
0 0 0 0 0 0
~ T Y P E ~
S Y M B 0 L
~ r S ~ I L
L E G A L ~
r N ~ S C I
E N T I F I
C ~ N 0 T A
T I 0 N ~ ~
~!:l~!:l~F
0 R M A T
765
.
0
1
2
3
4
5
6
7
10
11
12
13
0
1
2
3
4
5
6
7
10
11
12
13
14
15
1A
MJ
RJ
TP
RJ
MJ
34
46
50
01
34
54
40
CA
ZG
0
WA
ZG13
UP2
0
46463
01652
66343
50516
51500
47246
ZG5
ZG14
IA
MJ
RJ
ZH
0
ID3
WA
WAI
ZH15
UP2
0
33245
47512
30546
01304
50246
50313
30014
22777
ZH5
ZH16
UP3
UP
TP
RJ
MJ
26
01
34
51
34
34
66
52
40
CA
1D3
WAI
UP3
UP
ZG
03224
63430
13426
62466
13151
62277
6
I L L
L ~ S
N T I
E
G A
C
I
I
F
~ N
I 0
E
C
0 T A T
N ~ F 0
M
R
A T
.
ZH
03230
73431
50166
63447
63001
45034
65151
77777
10
C
H
A N G
E
~ M 0 D I F
I E R S ~ T
o ~ E L I M
I N A T E ~
I
T
P
N F I
~ L
E
.
766
N I
0 0
ZI
0
WA
MC
WAI
rro
ZI22
UP3
RJ
UP2
0
33300
25305
01475
34305
47525
66650
30302
22015
01513
50663
01505
33302
22777
Z15
Z123
UP
ZI
15067
40151
12734
40126
15030
13072
70104
43065
10165
05026
16601
64530
77777
15
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
MJ
RJ
0
1
2
3
4
5
6
7
10
11
12
13
MJ
.1.~
MJ
66
47
31
31
51
50
26
10
66
30
30
26
27
40
CA
47
46
51
54
50
30
30
ZJ
0
WA
ZJ20
UP2
0
34656
46345
54015
30313
26302
50663
22777
.L~
01
51310
15
16
17
20
50
01
33
40
CA
66305
50516 60126
30264 52722
ZJ5
7
ZJ21
IA
,
A
RJ
TP
RJ
MJ
MC
WAI
UP3
UP
ZJ
55230
03201
05101
05430
70165
05026
77777
~~~~
F ~
F I
0 M
N T
C
E
5
T ~
E N
E ~
·
C H
D
·
E
I S
L L I
M
0 R
R E
N C
)
E
N
E
·
6.
N U
R 6. 0
M 0 D I
E R 6. C
P 0 N E
S A E X
E D 6. 1
~ R E S
0 F ~ s
T E N C
N 0 T ~
E C K E
77 77 77 77
T H E
M B
S
P
E
G ~
0 ~
N
~
F E R E
E D ~ S
T E N C
N
Unused area
161
0
1
2
3
4
5
6
7
10
11
IA
MJ
RJ
TP
RJ
MJ
50
26
34
47
40
eA
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
MJ
RJ
TP
RJ
MJ
34
46
30
30
01
24
26
30
40
CA
ZK
0
WA
ZKll
UP2
we
WAl
UP3
UP
ZK
55224
23054
16573
62277
0
51016
30015
51270
25514
ZIG
4
ZK12
ZL
0
WA
ZL15
UP2
0
50265
30663
50663
01342
50510
50323
51475
50662
ZL5
ZL16
N
e
0 ~
s
E ~
P
M
B 0
L
r
N
I 0 0 6.
P
E
s
.
A
R
y
MC
WAI
UP3
UP
ZL
14752
00165
05026
23022
11754
04301
25150
27777
10
L E
E N
E ~
6. N
e 0
T
T
r
M P
E ~ S
E N e
E
.
.
0 ~' R
,
A N G E
6.
0 M P 0 N
E N T . 77 77
e
768
0
1
2
3
4
5
6..,
I
10
11
12
13
14
15
16
17
20
21
IA
MJ
RJ
TP
TP
RJ
MJ
70
46
01
01
50
24
24
71
01
77
46
40
CA
fA
ZM
0
WA
VT20
ZM21
UP2
1D3
WA1
ZM10
UP3
UP
Q
ZM
24543 42425
..,..,..,""..,
V A R
30017
ra...
01010
47676
51660
50323
46673
34663
70245
77777
51515
ZM6
ZM22
0
1
2
3
4
5
6
7
10
MJ
RJ
TP
RJ
MJ
34
50
26
ZN
0
WA
ZN21
UP2
0
54545
50016
65313
51475
11
30
12 30
13 65
14 27
15 01
16 50
17 26
20 47
21 40
CA
30
I
I
I
I
I
10101
56601
12633
00170
06501
33450
47301
77777
22277
13
-
A
I
B
..,.., "".., ..,..,
tJ. ~ tJ. tJ.
A
Ii'
a...
~ ~
tJ.
I
I
I
I
I
I
M U S T ~
N 0 T ~ C H
A N G E tJ. V
A L U E S ~
W I T H I N
tJ. V A R Y tJ.
77 77 77 77 77 77
L
0
0
.
P
Me
WA1
UP3
UP
ZN
15401
65424
05401
25150
R 0 R tJ.
N tJ. T R A
N S F E R ~
C 0 M P 0 N
t:;(\{..{..(\
vvvvv
,-::tA??
..LU~""'"
E
22014
52304
01715
51.540
26515
66013
24662
ZN5
ZN22
73465
64630
15427
10134
45430
15154
27777
14
~ M I
P E L L
D ~ W 0 R
6 0 R tJ.~
N C 0 R R
C T /j, F 0
M A T
77
E
I
E
S
R
.,
1\1
.
T
.L
A
L-l
.
769
T
.L
.
S
E
D
I
E
R
77
Build VARY File
(Entered after processing sentence number of last statement in range)
o
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
@
TU
SP
EJ
RA
SP
EJ
TU
TU
VP
o
VS5
VF
WL3
VS4
VI2
WL6
VI2
VS
A
WL4
WL3
VI
30000
WLI
VF
VI
VI2
A
27
30
31
32
33
ZJ
34
35
QT
LQ
VP5
Q
VS3
TV
MJ
o
CA
VP40
36
37
30000
o
VP3l
}
}
VP6
}
VQ
o
30000
o
o
VP13
36
}
o
~P15 }
VQ4
VS2
~P27
No
Is 23000 > sentence call word?
NoJenter sentence number of last statement in
range into Vary File
Insert call word and no. of WITH words in
next word of Vary File
Is current sentence number = sentence number in
Vary File?
Increase VF by two
( a) = (y)?
}
VP24 )
VP25
Is sentence number at address given by (Y)
:> sentence number at address given by ( a )?
VP
No, so set (a) = (y)
Advance ( y) by two
Exit
VF
VS3
A
Has Vary File exceeded its maximum?
30000
VI2
30000 o
30000 VQlO
VI2
VI
VI2
VSl
SP
TJ
TP
RA
MJ
TP
QT
26
@
IA
MJ
SP
TJ
SP
TJ
TV
TP
SP
SA
TV
SP
AT
:P34 )
~5
Is indicator set? (i.e., has there been a
22---Vary before?)
NOt
so set u of VFO into v of VFO
}
VF
VP5
770
®
(j)
0
1
2
3
4
5
L
0
®
7
10
11
12
13
0
1
2
3
4
5
IA
VQ
RJ
TP
RJ
MJ
RJ
TP
RJ
MJ
RJ
WA
WAI
NV
UP2
0
UP3
UP
VP
WA
WAI
NV7
UP2
0
UP3
TP
RJ
MJ
CA
IA
0
0
WA
NV21
UP2
0
VQ14
0
0
0
VS
1
2
2
0
0
20143
CA
VS6
0
TTn
U["'
VP
WAI
UP3
UP
VP
1
2
0
07777
230000
0
144 = max. length of Vary File (excluding VFO)
(50 Vary statements in problem maximum)
771
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
40
66
50
73
30
34
32
40
70
67
66
24
50
01
50
01
24
40
54
51
30
73
50
73
24
31
54
70
CA
NV
NV1
51510
73017
01653
50263
50015
54244
NV10
24547
65660
01253
65660
66305
34500
32300
24507
54732
NV22
24503
31013
54017
01307
27650
51502
50323
01516
01010
24547
NV34
6
14724
02454
05066
06501
25451
72201
11
30147
15051
00146
16530
02630
15424
15131
30170
27777
12
23001
45050
02454
26630
12530
70154
00151
76630
10101
32277
0 0 ~ M A
N Y ~ V A R
y ~ S E N T
E N C E S ~
I N ~ P R 0
T
G R
~
A M
V A R Y ~ M
T ~ N 0
U S
T ~
E ~
~ S
N C
N T
N
I
~ R
6
N G E ~ 0
~ A N Y ~
A R Y
A S
B
L
T
E
E
E
.
R
y
N
y
V
A N G E~
0 F
E
A
F
6 r N N
R ~ V
~ E X
D S ~
0 N D
A N G E
·A
R
T
E
E
B
~ R
6 0
F ~ 0 U T E
R 6~~~~
V A R Y
.
772
RESUME STRING-OUT
Get next symbo 1 RJ SY SYI
Yes
\~
~
---A-l-ar-m----.
~"">-----.....:;.......V.>---~'IINO sentence no. n ~--No
No
TP SY2
I.N4
(sentence no. referred to)
RJ LN2
Processor
LNO
TP
I.N3
WL4
ixl Routine B
RJ ix
lists line no. in iz
~
Get next symbol
SYI
SY
RJ
,
~
for
No
"l:l"
I
/'
L(5)
WL
TP
(word count)
o
WL
+1
+2
~
WI2
+3
+4
Exit
ended after no.
.. IJ
I
Format of Output
iI
TP L(Resume)
Alarm
sentence not
,
Word count of string-out
output
Line number
RES U M E Title of string-out
Call word of sentence
ttJump to" line number
-
773
0
5
RESUME STRING-OUT
RE
RE
RE
RT44 00
NA4431
NB4446
Translation subroutine regions are also needed to assemble
this tape.
IA
MJ
1 RJ
2 TP
3 QJ
4 MJ
5 EJ
6 MJ
o
7
10
11
12
MJ
TP
RJ
TP
13 RJ
RT
o
SY
SYll
RT4
o
CT
SYI
Exit
Get next symbol
Q
RT5 }
Is symbol a line number?
o
RT27
RTIO
RT7
NAI
o
RTI
SY2
~4
Is symbol SENTEN?
Error print-out: Sentence -- (Resume) Failed
to Reference (VARY) SENTENCE
}
I.N2
I.N3
WIA
IX
IXI
RJ
TP
EJ
MJ
SY
SY2
RT24
SYI }
20 TP
21 TP
22 RJ
23 MJ
24 01
25 54
26 0
27 65
RT26
RT25
SS
CA
RT30
IA
NA
14
15
16
17
o
1
o
Putting referenced line number in Referenced
Line Number List
Is next symbo 1
~.
?
Error print-out: Sentence -- (Resume) No
Space Period Symbol
Word count to output
"RESUME" to title line of output
Get output block written on tape
Exit
D..
RES U M E
5
30506 63050
0
RJ
WA
RT
WAI
NA14
UP2
UP3 }'
UP
MJ
o
31
24344 63027
66510 15430
30543 05026
01
7 31
6
WL
WL2
SSI
o
RT
22777 77777
30656 74730
MJ
2 TP
3 RJ
4
5
o
:T20
NBI
Getting line number in proper form and putting
in output
NA
SEN
TEN
Print-Out and Error Reference: Sentence -(Resume) :
Print-Out: Failed to Reference (VARY) Sentence
Exit
F A I LED
D. T OD.R E
FER E N C
774
10 30
11 24
12 30
13
30
14 40
CA
IA
0 MJ
1 RJ
<"}
t:..
3
4
5
6
7
10
11
TP
RJ
MJ
50
26
34
47
40
CA
01240
54734
50663
22777
NA5
NA15
1171-0
30165
05026
77777
7
E i::l A ~ ( V
A R Y ) II S
E N T E N C
E.
NB
0
WA
NBll
UP2
0
51016
30015
51270
25514
NB5
NB12
RT20
WAI
UP3 }
UP
NB
55224
23054
16573
62277
4
Error Reference and Print-Out: Sentence -(Resume)
Print-Out: No Space Period Symbol
Exit
N 0 ~ S P A
C E ~ P E R
I 0 D II S y
M B
0
775
L
0
Flow Chart for Jump String-out
Store number of
lines (6) in 1st
line of output
Put line number
in standard form
and store in 5th
line
Pseudo-Op
indicator
to 6th line
Get next
symbol
Set up
Get next
symbol
I---_No_~interpret
indicator
Has interpret
indicator been
set?
Yes
Print-Out: Sentence _ has been
interpreted to
mean - jump to
sentence
t--_~
Send line no. to
12 referenced.
Line No Li st
Write string-out
block on tape
JUMP STR lNG-OUT
Following JUMP in this instruction there should be the word TO.
If this
word does not appear in this sequence, the following print-out occurs after
string-out has been completed: Sentence
Hasbeen interpreted To Mean
Jump To Sentence_ __
No reference is made to the error routine with this
print-out"
Any combination of the symbols - TO, SENTEN, STATEM, LINE, NUMBER, NO.,
SENT. - may occur following Jump.
The only essential requirement that the
routine makes is that, if or when none of the above symbols appear, the symbol
under surveillance must be the line number to which the jump is to be made.
Of course, the symbols as shown above are merely the beginning in some
instances of a more complete word. For example, STAmM is the first line output
of the symbol STATEMENT.
The routine only examines the first-line output of
any symbol.
Each time one of the above symbols is recognized, a return is made to the
ftGet Next Symbol Routine" for the next symbol.
Eventually the loop of
recognition of these symbols must be broken by a symbol not in the group.
If a ~ • occurs before the line number has appeared, the error routin-e
is referenced and the print-out is given:
Sentence_ _ _Has No Line Number
Following Jump.
If the loop of recognition of the 7 above-named symbols is broken by a
symbol which exceeds 6 characters, the error routine is referenced, the stringout is terminated, and the print-out reads:
Form.
Sentence
Is Not In Correct
The theory behind this step is that this non-recognized symbol should
be the line number and, as such, have less than 7 characters.
If this assumed line number does have less than 7 characters, it is sent to
the line-number routine to be put into standard form.
See the Write-up on the
line-number routine for what may happen to it here if it fails to meet the
requirements of a line number.
The output from the line-numbe-r routine is put in the proper place in the
output. See jump generation write-up for the format of the jumpstring-out output ..
711
Now a final reference is made to the "Get Next Symbol
Routine.~
If the
next symbol is not a ~ • , the error routine is referenced, the string-out
is terminated, and the print-out is given: Sentence______Is Not in Correct
Form.
If this symbol is a ~ • , a check is made if the sentence is within a
pseudo op and the proper entry made in the output accordingly. Next the referenced line number is sent to the reference list by using the IX routine.
Finally the completed string-out is transferred to tape by using the WT tapewrite routine.
Jump String-Out Regions
RE
RE
RE
RE
RE
RE
RE
VN3507
SY2466
LN2037
IX1552
WT3207
UP421
C1714
1'52762
lJL3067
RE
RE
RE
RE
SJ4700
NQ4730
JK4745
CN5020
RE
RE
Subroutine regions used
778
Jump String-Out
0
1
2
3
4
5
6
P7
f
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
0
1
2
3
4
5
6
7
10
11
12
13
14
0
1
2
3
4
IA
MJ
TP
TP
TP
RJ
EJ
TP
5J
RJ
RJ
MJ
TP
RJ
TP
RJ
EJ
MJ
TP
ZJ
TP
RJ
RJ
MJ
0
CA
0
CN
TS4
CN2
SY
CN5
CN3
NQ14
SY
NQ14
0
SY2
LN2
LN3
SY
CNI
0
SJ27
SJ23
VN4
IX
WT
0
0
SJ30
IA
RJ
MJ
TP
MJ
RJ
MJ
EJ
RP
EJ
TP
TJ
MJ
MJ
CA
NQ
UZ
0
VN4
0
UZ
0
CNI
20007
CN5
SY5
CN4
0
0
NQ15
UZI
JK4
JK43
JKlO
UZI
JK14
NQ4
NQll }
NQ14
A
SJ13
NQ
IA
TP
TP
RJ
MJ
RJ
JK
VN1
JK20
UP2
0
JK3
JK26
UP3
UP
DT
11.0)
CT
VN
VN5
SJ27
SYI
SJ10
SJ27
NQ6
SYI
NQ6
SJlO
LN4
LN
VN4
Exit
Number of lines output (6) to 1st line of VN
Pseudo-op indicator to VN5
Indicator 1 to SJ27
Get next symbol
Is symbol "TO"?
No. Clearing SJ27
Comparison subroutine
Get next symbol
Comparison subroutine
}
SYI
SJ2l
NQ
A
NQ2
A
IX!
WTl
Getting line no. in standard form in VN4
Get next symbol
Is symbol~. ?
}
}
If zero t without error, print: Sentence
has been interpreted to mean, etc.
Line no. to ref. list
Writing block on tape
5J
0
Error reference
Line no. to print-out
Reference error routine
Is symbol a space period?
Is symbol TO) SENTEN, STATEM, LINE NUMBER,
NO.; SENT.?
Is 7 > no. of chars. ?
30000
}
Line no. to print-out space
Sentence
30000
JK
Sentence
779
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
0
1
2
3
4
5
6
7
10
11
12
13
TP
RJ
MJ
RJ
TP
RJ
MJ
RJ
TP
RJ
MJ
0
40
40
40
65
26
0
01
66
51
01
01
30
66
66
01
JK21
UP2
0
66
66
0
01
01
51
01
54
51
44
CA
JK3
JK22
UP2
0
JK3
JK23
UP2
0
JK24
J1(27
JK33
JK45
30506
30017
0
34650
01345
54543
31515
33246
30500
30545
30270
47302
44674
51016
30502
0
22777
33246
01463
50674
01315
71345
67475
JK53
IA
0
01
0
0
0
66
65
65
46
50
50
65
CA
CN
0
22777
0
0
0
51777
30506
66246
34503
67472
51227
30506
CN14
02
UP3
UP
SJ
JK
UP3
UP
SJ23
JK
UP3
UP
}
I
I
5J
3
4
12
6
63050 }
77777
0
I
15051
00126
_
02666
44722
50125
13450
25430
16651
45002
75201
53050
63001
0
77777
50150
45030
72530
14646
03201
22277
6
77777
1
0
7
77777
63050
63047
07777
53054
77777
62277
is not in correct form
Sentence
has been interpreted to meanJump to sentence
has no line number follow-
Sentence
ing jump
Sentence
~
is not in correct form
Has been interpreted to mean
Jump to sentence
~. - -
Has no line number following jump
~.
S
0
E N
S
T
T
T E N
A T E M
L I N E
N U M B E R
N 0
S E N T
.
780
.
Stop String-out Flow Chart
y
No
Superfluous
symbol in
stop sentence
Stop string-out
~ tape
STOP STRING-OUT
RE
SV4400
String-Out Subroutine regions are needed for assembly of
this tape.
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
IA
RJ
EJ
RJ
TP
RJ
RJ
MJ
01
40
65
46
65
01
51
66
CA
SV
SY
SV7
WA
SV10
UP2
SS
0
22777
SVII
67523
67516
73472
34500
52016
30502
SV17
SY1
SV5
WA1
UP3
Get next symbol
= ~.
?
Yes -
string-out~
No-error
Print-out
UP
S51
CT
77777
6
05431
76501
55146
16566
53050
63022
S U P E R
L U 0 U S
S y M B 0
~ I N ~ S
0 P 6 s E
T E N C E
782
F
~
L
T
N
.
tape
END OF TAPE STRING-OUT
The End of Tape string-out routine closes out the translation phase
(Pass I) of the Unicode compilation run. If there was a sub-program preceding
the ~End of Tape~ sentence in the input program, the routine checks to see
if an "Exit" instruction was included in the sub-program. If not, the error
bit is set and ~No exit in preceding sub-program~" is typed on the on-line
Flexowriter. The routine also checks to see if there was exactly one "Start"
sentence in the input program and if not i types "More than one start sentence~
or "No start sentence." on the Flexowriter, whichever applies.
If there were previous errors in the program or if there was not exactly one
"Start" sentence, the routine prints the number of excess constant referrals
and the number of excess referenced-line referrals. The routine then rewinds
the Unicode System Tape (Servo 1), the Library Tape (Servo 2), the Striny"out
Tape (Servo 3 or 6) and the Corrected Problem Tape (Servo 5).
The routine then
types "End of Pass I. Correct errors listed above and recompile." on the online Flexowriter and stops.
If there were no errors in the problem, the number of single valued
variables is stored in fixed location 00007, the End of Tape callword (23000)
is stored in the string-out, and the string-out is written on tape. The
String-out Tape is then rewound and the routine exits to the Unicode Service
Routine in preparation for the next phase of compilation.
783
Does heading bit
indicate within
sub-program?
~heck TS4J
Is the number of
start instructions
equal to one?
~heck VD]
Yes
(TH) rewind UNICOD
system tape
Was there exit
for preceding
program?
[check VDl]
Is there more
No
(TH) rewind
library tape
(WA) type heading
and set error bit
Type: MORE THAN
ONE START
SENTENCE
Type:
NO START
SENTENCE
(TH) rewind
string-out tape
Type: NO EXIT
IN PRECEDING
SUB-PROGRAM
(EA) print number of excess
constant referrals
(EE) print number of excess
referenced-line
referrals
(TH) rewind corrected problem tape
Type: END OF PASS I.
CORRECT ERRORS LISTED ABOVE AND RECOMPILE.
Were there errors
in problem'? ~heck
error bit in UZ2]
Number of single
valued variables to
.....N_o_~ fixed location
00007.
End of tape
call word to
string-out
-;)
(TH) rewind
string-out tape
Exit to UNICODE
service routine
'
Flow Charts for Subroutines Supplied to End-of-Tape String-Out
Print-Out of FX13, Number of Excess Constant Referrals
Is number of excess constant
referrals zero?
Print-Out: Excess
t---~ constant referrals
No
Converts number
"...--.. . . to decimal and
prints it out
Print-Out of IX47, Number of Excess Referenced-Line Referrals
Is number of excess referenced-line referrals zero?
No
Print-Out: Excess
referenced-line
referrals _ _
Converts number to
and prints
it out
~____~decimal
Single Digit Print-Out
Add dummy print
Printing out digit
command to octal
~~.. digi t to get
1---'" via its Flex code
proper Flex code
for digit in list
786
Octal to Decimal Print-Out for Numbers
~
777778 and
~
0
No
Print-Out:
Over 32, 767.
Number ~ 104
to convert to
Printing quotient
digit
3
Number + 10
to convert to
I---~
decimal
decimal
3
Number + 102
to convert to
decimal
Printing quotient
digit
Printing decimal
digit
787
IE------I
Printing quotient
digit
Number + 10
to convert to
decimal
Printing quotient
digit
Regions for End of Tape String-Out
(String-out Subroutine Regions Also Required)
RE
RE
RE
RE
RE
RE
RE
RE
RE
CD
@
ZA77000
TV44 00
TW4435
TX4447
TY4455
EA4502
EE4520
NU4537
ZU4555
IA
TV
0
MJ
0
ZAIO
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
TP
QJ
TP
QJ
RJ
Q
TVlO
Q
TV5
WAI
UP3
UP
A
ZJ
'.IS 4
TV3
VDl
TVlO
WA
75552
UP2
VD
TX
TV13
TP
TY
MJ
TP
0
TY6
UP2
EA
EE
TX2
nI2
TX3
TH2
TX4
TP
RJ
TP
EJ
RJ
RJ
RJ
TP
RJ
TP
RJ
TP
1W
TVl5
UP3
TVl6
UP3
UP
EAI
EEl
TH3
1H
'Ill 3
'Ill
Exi t ~ UNICOIE serv. rtn. (read 1 blk UNICOrn
tape & j wnp to 1st word)
Heading bit --;.. Q35
Within sub"prog:ram (pseudo operation)?
Exi t bit --;.. Q1S'
Was there exit inst. for preceding sub-program
Parameter ---+-Uniprint
Print: NO EXIT IN PRECEDING SUB-PROGRAM
#Start instructions ~ A
#Start inst. = I?
#Start inst. = O? No ~ more than 1 start inst.
Alarm #1 parameter ~ Uniprint
Alarm
Print
Print
Print
#2 parameter
~ Uniprint
alarm
#excess constant referrals
# excess referenced-line referrals
Rewind UNICODE tape (servo #1)
A
Rewind library tape (servo #2)
Codeword to rewind stringout tape (servo #3)
TH3
Adv. servo no. by 3 ~servo #6 if 7 servos
Rewind stringout tape (servo #3 or #6)
~A
26
27
30
31
32
33
34
AT
RJ
TP
RJ
TP
RJ
MS
CA
TN
TH2
TX5
m2
TYl2
UP2
0
TV35
TH
TH3
'Ill
Rewind corrected problem tape (servo #5)
UP3
UP
TV34
Print:
788
END OF PASS I.
CORRECT ERRORS E'OC.
®
IA
Tw
0
1
TP
ZJ
2
3
TP
AT
UZ2
TV17
VBl
TX
A
'lW2
A
7
4
5
6
RJ
TP
TXl
S5
·TX4
WL3
SSl
A
7
AT
1H3
10
RJ
MJ
TN
TH2
TV
CA
0
1W12
0
1
2
3
4
5
IA
0
0
10
10
10
10
CA
TX
0
0
1
2
3
5
TX6
1
23000
0
0
0
0
IA
0
1
2
3
4
5
6
7
00
47
33
30
66
30
00
50
TY
TYl
51543
24500
01656
01653
50263
TY7
51016
5
00166
15150
62454
05066
02277
3
56624
In
C:A
vOoj;
I..l..nll..
VVV.LV
vvvvv
11
12
13
14
15
16
17
20
21
22
23
24
66
00
30
01
34
54
30
01
27
30
54
34
CA
30502
TY13
52070
52246
22010
54302
54545
46346
01242
01245
30265
46302
TY25
63022
12
15131
56501
12651
66601
15465
56630
55170
02701
14752
27777
TP
# errors in problem -+ A
Were there errors in program?
# single valued variables less l~A
# single valued variables ~"v" of fixed
10c. 7
End of tape callword (23000)~ string-out
End of tape string-ont--;. tape
Codeword to rewind string-out tape (servo #3)
~A
11
.LV
TH
C:"lnc:n
Adv. servo no. by 3~ Servo #6 if 7 servos
Rewind string-out tape
Codeword
Codeword
Codeword
Codeword
M 0
R
to
to
to
to
rewind
rewind
rewind
rewind
E ~ T
H A N !::::. 0
N
E ~ S T A R
T !::::. S E N T
E N C E
77
N 0
!::::. Sc;: T A
A .., Ii'
L...1
T E N C E
D
1i.
rr
.L
~
1\1
l'
E N D ~ 0 F
P A S S !::::.
!::::.~ C 0
I
R R E C T !::::.
E R R 0 R S
~ L I S T E
D ~ A B 0 V
E !::::. A N D ~
R E C 0 M P
I L E
77 77
~
.
789
UNICOIE tape
library tape
string-out tape (5 servos)
corrected problem tape
Print-Out of FX13, Number of Excess Constant Referrals
o
IA
MJ
1 TP
2
ZJ
3 TP
4
5
6
7
10
11
12
13
14
15
RJ
TP
EA
o
30000
FX13
EA3
EAlO
UP2
FX13
~A
RJ
MJ
ZU
0
30
01
24
31
65
CA
EA11
72263
26515
50660
30545
02027
EA16
o
}
Exit
Is the number in FX13 zero?
UP3 }
UP
Print-Out: EXCESS CONSTANT REFERRALS --
~U1 }
Converts number to decimal and prints it out
5
Parameter for print-out
E X C E S S
EA
06565
06566
15430
42446
77777
~CONST
ANT ~ R E
FER R A L
S
Print-Out of IX47 t Number of Excess Referenced-Line Referrals
IA
EE
o
MJ
o
1
2
3
TP
IX47
EE3
EE10
4
ZJ
TP
RJ
5 TP
6 RJ
7 MJ
10 0
11
12
13
14
15
16
30
01
30
46
30
46
CA
30000
~E
UP3 }
UP2
UP
Print-Out: EXCESS REFERENCED-LINE REFERRALS
IX47
~U1 }
Converts number to decimal and prints it out
ZU
o
EE11
72263
54303
50263
34503
31305
65020
EE17
EE
6
06565
13054
02702
00154
45424
27777
Input Digit in AvNU
NU3
NUl
1
PR
0
o
2
MJ
0
30000
NU4
37
52
74
70
PR 0
400
500
6 0
0
7 0
0
3
Flex
Codes
Parameter for Print-Out
E X C E S S
~
REF E R
ENe E D LIN E ~ R
E FER R A
L S
Single Digit Print-Out Routine
AT
o
IA
}
Exit
Is the number zero?
Entry_ Adds dummy print command to octal
digit & puts into next instruction
Prints out decimal digit
Exit
Dummy Print Command
o
1
2
3
790
10 fO
11 0
Flex
Codes
i~ 19
14 0
15 0
CA
o
o
o
o
o
o
64
62
66
72
60
33
4
5,
o
7
8
9
NU16
Input in Av. Octal to Decimal Print-Out for NumberS
Print-Out for Numbers> 77777 is: OVER 32,767
o
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
IA
MJ
TJ
TJ
TJ
TJ
TJ
TP
RJ
MJ
DV
RJ
DV
RJ
DV
RJ
DV
RJ
RJ
PR
MJ
TP
TP
RJ
TP
MJ
40
0
0
0
0
0
51
05
0
0
CA
~
77777
ZU
o
ZU32
ZU33
ZU34
ZU35
ZU41
ZU31
UP2
o
ZU35
ZU30
ZU34
ZU30
ZU33
ZU30
ZU32
ZU30
NU2
o
o
A
Q
NU2
ZU42
o
30000
ZU21
ZU17
ZU15
ZU13
ZU11
:3 }
ZU
Q
ZU24
Q
ZU24
Q
ZU24
Q
~g24
ZU36
zu
~U421
NU
J
~OOO
ZU37
2
o
12
144
1750
o
o
o
o
23420
45
70305 40106
23121 11222
1
o
o
o
Exit
Entry. Is 10 > no.?
Is 102 > no2
Is 103 > no.?
Is 104 > no. ?
Is 100 0008 > no.?
Error print-out: OVER 32~767
Jump to exit
~. 104 to convert to decimal
Printing out digit
~~103 to convert to decimal
Printing digit
~ 102 to convert to decimal
Printing digit
~ 10 to convert to decimal
Printing digit
Printing digit
Printing carriage return
Jump to exit
Subroutine to facilitate continued conversion
of octal number to decimal and print out
decimal digit obtained
Parameter for print-out:
10 2
10 3
10
10 4
Carriage return
o
2
!l.
3
, 767
.
V
E R
100,000 < 105
8
Temporary
ZU43
791
OVER 32,767
Exit String-out Flow Chart
Within
Get next
symbol
Alarm prin-t;.out:
SUPERFLUOUS
SYMBOL IN EXIT
SENTENCE
Alarm pr int--out :
EXIT SENTENCE NOT
ALLOWED OUTSIDE SUBPROGRAM
String-out
~
Tape
Exit String...;Out
RE
RE
SW4400
SX4416
String-Out Subroutine regions also needed to assemble this tape
IA
RJ
1 EJ
2 RJ
3 TP
4 RJ
5 TP
6 QJ
7 RJ
10 TP
11 RJ
12 TV
13 RJ
14 TP
SW
SY
SX
WA
SXl
UP2
TS4
SW12
WA
SX12
UP2
TS4
SS
SXll
15 MJ
CA
0
SW16
IA
01
40
65
46
65
01
SX
22777
SX2
67523
67516
73472
34500
0
0
1
2
3
4
5
L
0
7
10
11
12
13
14
15
16
17
20
21
22
'lA
LLn.'IL
SYl
SW5
WAI
UP3
UP
Q
SW7
WAI
UP3
UP
}
}
}
WlA
S51
VDl
CT
77777
6
05431
76501
55146
13072
~'ln.~n.
.J~
OOU.10
'-'.JUJU
66
77
40
40
30
30
30
24
27
34
25
54
30502
0
0
SX13
72346
50663
01505
46465
01516
27300
01525
24472
SX23
63022
0
0
10
60165
05026
16601
17130
76665
16567
45132
27777
CA
Get next symbol
= f:j.,. ?
No; get heading &
Print out error sentence
Yes;
Op of TS4 = 40? (Within Subprogram?)
No; get heading &
Print out alarm sentence
Yes, call word ~ WL4
Output to tape
Indicator to VOl that an Exit has been found
in the last pseudo operation
Exit
·8.
S U
L U
S Y
II ,.,.I
T
J.
.1
E R F
U S f:j.
M B 0 L
N ~ E X
P
0
A
~
co
o::J
t:'
t::.
T E N C E
1\.1
n
.
mask
a
X I T
T E N
b:. N 0 T
L L 0 W
~ 0 U T
D E ~ S
B A p R 0
R A M
E
E
E
A
D
I
N
793
S
C
~
E
S
U
G
Start String-out Flow Chart
Set sentence
sentinel =
START
27000 to call
word indicator
Next symbol
=
II • ?
No
Increase Call-word
type counter
Alarm printout:
SUPERFLUOUS
SYMBOL IN START
. SENTENCE
Start string-out
to tape
START STRING-OUT
RE
S04400
String-Out Subroutine regions are needed for assembly of this tape
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
IA
RA
SP
EJ
MJ
RJ
TP
TP
AT
RJ
EJ
RJ
TP
RJ
RJ
MJ
0
30
65
0
01
40
65
46
65
01
24
50
22
CA
SU
VD
WL2
SU20
0
XJ
SU21
SU22
VB4
SY
SU23
WA
SU24
UP2
SS
0
0
53672
6.6245
0
SU17
0
1
SU4 J
SU5
XJ1
WL2
A
}
WL3
SY1
SU15
WAI }
UP3
Increase VD by 1
WL2 = EQUATN ?
No; do not increase VB4
Yes; increase VB4
START~
WL2
Call word + (VB4)~ WL3
Get next symbol
== /::,.. ?
No; error
Print-out
UP
SSl
CT
1
46650
46677
27000
77777
7
05431
76501
55146
16566
22777
SU25
67523
67516
73472
34500
54660 16530
66305 02630
77777 77777
SU34
String-out~tape
Exit
E
Q
u
A
T N
S T A R T /::,.
C/W
/::,..
S
L
S
U
U
P E R F
U S ~
0
Y M B 0
N ~ S
T
S
""'
~ I
A R
T
A
&....l
L
14'
N T E N C E
795
EQUATION TRANSLATION ROUTINE
When an equation is encountered in a UNICODE Program the translation control transfers this routine from drum to core and jumps to it.
The main func-
tions of the routine are to make up a translation list to be used to generate
machine code, assign call words to symbols, and detect and type out errors.
The translation list is made up by each translation routine as an output
(Region WL).
The equation translation routine is unique in one use of this
list in that it keeps another list within the translation list.
This is called
the function
dummies list and occupies locations WL4-WL23 or 16 10 locations.
Hence there is room for 8 two-word items, the first word being the excessthree code for the symbol and the second word the dummy call word of this symbol.
WLO-WL3 is the heading and the coded symbols start at WL24.
In an equation before START, the symbol is assigned a call word as
follows:
1)
If the symbol is in the Combination List, it already has a call word
which determines the type of symbol with one exception. If the call
word is 65xxx and the next symbol is an open parenthesis, the call
word is changed to 66xxx and case 3 applies.
If the symbol is that
of a subscripted variable, the subscripts are assigned dummy call
words and put in the list at WL4-WL23 and are handled similarly to
the dummy arguments of a function.
2)
If its first character is I, J, K, L or M, it is assigned a 64xxx
call word and the equation is assumed to be fixed point.
3)
If neither of the above cases applies, the next symbol is checked and
if it is an open parenthesis the variable is assigned a 66xxx call
word and a function mode is set.
In this case all variables within
the set of parentheses on the left are function dummies and put in
the list at WL4-WL23.
These dummies apply only to this particular
equation.
After START no function call words are assigned by the equation translator but the pseudo operation heading translator assigns symbols dummy function
call words, if equated to a real function by a COMPUTE. In an equation no
arguments should be written with a function if the function appears on the
796
right or if it appears after START.
Operation symbols are determined to be· fixed point if they appear in a
fixed-point equation (determined by the first symbol) or if they appear when
in the subscript mode; otherwise they are assumed to be floating point. The
list of errors found in this paper suggest what cannot be written in an
equation.
The following pages contain:
1) A list of call words or special codes assigned by the equation
translator.
2)
An example of the output for a function.
3)
A list of error prints.
4.
Explanations of some of the subroutines.
797
Special Codes Used by Equation Translation
Op
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
u
v
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
10
12
11
20
21
30
31
32
33
40
50
60
61
70
71
100
120
0
0
17100
16000
16100
15000
15100
14000
14100
l30xx
l3lxx
101
25xxx
0
0
24xxx
0
0
0
0
0
0
0
0
1
2
I
Absolute value (open)t floating and fixed
Absolute value (closed)t floating
Absolute value (closed), fixed
+ floating
+ fixed
- floating binary
fixed binary
- float ing un ary
fixed unary
t ; comma or semicolon
= equalS sign
multiply
* floating
fixed
multiply
* floating divide
/
/ fixed divide
POW
~. (space period)
( open parenthesis
) closed parenthesis
Superscript = -1 (superscript 1 is ignored)
Superscript = 1/2
Superscript = -1/2
Superscript = 2
Superscript = -2
Superscript = 3
Superscript = -3
<
<
Superscript = +4 to +77 8 (4 ~ xx ~ 77)
Superscript = -4 to -778 (4 = xx = 77)
I Integral POW I >63
In equation for 66xxx, 65xxx or 64xxx
symbol t before START
Equation for 77xxx type symbol, before
START.
-
-
798
EXAMPLE
Output of Equation Translators for an equation which occurs before START:
F(xl~
x2 (I)) =
-I xf 13 + x2
OP
u
v
WL
WL1
0
01
0
06142
55
21001
WL2
30
53672
46650
WL3
WL4
WL5
WL6
0
72
0
72
0
34
0
0
04777
0
05777
0
77777
0
25xxx
77777
62000
77777
75001
77777
62003
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7
10
11
WL24
(J) *S2
(1~
L) /R POW SIN
y~.
words in list
Line number (excess 3) 39.5
} Heading
EQUATN (excess three)
Sentence call word (x=octa1 digit)
xl (excess three)
The function
Call word of xl
dummy list
x2
for this equation.
Call word of x2
#
I
Call word of I
} WLI2-WL23=O
i
0
0
0
0
0
0
0
0
0
0
0
66000
50
32
10
62000
I 14000
12
20
75001
1
0
0
64xxx
0
2
60
0
0
77xxx
i
0
0
62003
0
40
64xxx
0
2
0
0
70
0
65xxx
0 I 100
0
5xxxx
65xxx
0
0
120
F
=
I
xl
I
Superscript 3
+
x2
The Trans lated
Equation
(
J
)
:0:
S2
(
I
t
L
)
/
R
POW
SIN
y
fl.
799
Error Texts for Equations
El.
Function symbol, ----, (sub program dummy) in fixed point equation.
E2.
Subscripted variable symbol, ----, (sub program'dummy) in fixed point
equation.
(sub program dummy) used in fixed point
E3.
Floating point variable,
equation.
E4.
Function symbol,
E5.
Subscripted variable symbol, ----, (sub program dummy) among subscripts
(sub program dummy) among subscripts of ----.
of ----.
(sub program dummy) among subscripts of
E6.
Floating point variable,
E7.
Fixed point variable, ----, (sub program dummy) in floating pt. equation.
E8.
Subscripted variable symbol. ----, among subscripts of
E9.
Library routine, ----, among subscripts of
E10.
Function, ----, among subscripts of ----.
Ell.
Floating point variable, ----, among subscripts of ----.
E12.
Fixed point variable, ----, in floating point equation.
E13.
Library routine, ----, in fixed point equation.
E14.
Floating point symbo1 t in fixed point equation.
E15.
Function, ----, in fixed point equation.
E16.
Subscripted variable symbol, ----, in fixed point equation.
E17.
Library routine symbol, ----, with more than one argument, not followed
by open parenthesis.
E18.
Subscripted variable symbol,
not followed by an open parenthesis.
E19.
Subscripted variable symbol,
(sub program dummy) not followed by
an open parenthesis.
E20.
Subscripted variable symbol,
(function dummy) among subscripts of
800
(function dummy) among subscripts of
E2l.
Floating point variable,
E22.
Fixed point variable, ----, (function dummy) in floating point equation.
E23.
Subscripted variable symbol, ----, (function dummy) not followed by an
open parenthesis.
E24.
More than one separate equation for
E25.
Superfluous symbols on left.
E26.
Function, ----, on left, not fOllowed by an open parenthesis.
Rest of
this sentence not checked.
E27.
Library routine symbol,
is first symbol of sentence.
Rest of
sentence not checked.
E28.
An Equation for ---- in the range of a VARY sentence in which ---appears.
E29.
Illegal symbol (----) for left of equation.
E30.
More than one subscript on ----, an
E3l.
Library routine symbol, ----, on left, among arguments of the function
E32.
Superscript symbol,
among subscripts of ----.
E33.
Superscript symbol,
in fixed point equation.
E34.
More than four superscript symbols in sequence.
E35.
POW operation symbol among subscripts of ----.
E36.
POW operation symbol in fixed point equation.
E37.
Number of library routine operands (by comma count) not equal to number
argument of the function ----.
listed for this routine.
(I ) I
E38.
Interlocking parenthesis and absolute value signs.
E39.
Closed parenthesis appears with no corresporiding open.
801
E40.
Number of subscripts on ---- (by comma count) is not equal to number
obtained from dimension sentence.
E4l.
Open parenthesis among subscripts of ----.
E42.
nlegal symbol, ----, for right of equation.
E43.
Incorrect use of comma.
E44.
Number of equals signs not equal to one.
E4S.
Some open parentheses not closed.
E46.
Number of open absolute value signs not equal to number of closed.
E47.
Number of open parentheses on left not equal to number of closed.
E48.
Superfluous arguments on function ----.
E49.
Within arguments of more than 7 library routines.
Arguments of ----
not checked.
ESO.
Too many dummy arguments on function ----.
Rest of this sentence not
ohecked.
ESI.
Pseudo operation symbol, ----, on right.
ES2.
Incorrect symbol sequence.
ES3.
Closed absolute value appears with no corresponding open.
ES4.
Open parenthesis, on left, among subscripts of ----.
ESS.
Incorrect use of open parenthesis on left among arguments of ----.
ES6.
Incorrect use of comma among arguments of ----.
ES7.
More than 29 unclosed open parentheses and/or absolute value signs.
ES8.
Constant illegal on left, before start.
-!~
802
-!~
SYMBOL PAm CHKCKER
Almost every pair of symbols is checked by this routine.
The bit in
the array on the following page corresponding to the symbol pair consisting of
the last two symbols picked up is checked.
and the error is printed.
If it is a I, the pair is illegal
The left symbol is picked up from SZ2 and the
right from SY2.
After checking a pair the routine sets the right symbol as the left
symbol for the next check.
Hence, before entering the routine, the new right
symbol must be set as an input.
The left symbol is indicated by an address in PC2 and the right symbol
by a shift count in PC3.
from 0 to 20.
The addresses range from PD2 to PD22 and the shifts
Notice from the way that the array is set up that to change a
shift count to an address it is only necessary to add the shift count to
address PD2.
This is the way a right symbol becomes the next left symbol.
If for some reason it is desired that no error be printed out for a symbol,
the shift count is set to 20 and the symbol pairs with any other legally.
The codes for the error print of this routine are with those of the
translation subroutines.
It is called Fl8 and is in region Fl.
803
Meaning of Region PD Used by Symbol Pair Checker (PC)
Right Symbol
"......
+-l• "'0
(l)
(I)
s:::
(I)
0
Of"'"4
• U
So.!
ctl
So.!
Q
'-"
>0-
Ad-
dress
(
j
§I
) or I (closed)
VAR. or Const.
Sub. Var.
FTN
, or ,
+ or * or /
Up Const.
Up Up /
POW
.
LIB
=
~.
I (open)
Doesn't matter
o 0 110 111
o 1 001 010
o 1 001 010
o 1 001 010
o 1 001 010
o 0 110 111
o 0 100 111
o 0 1 1 0 111
o 1 001 001
o 1 101 111
o 1 I I I 111
o 0 100 111
o 0 110 111
o 0 1 1 0 III
o 1 I I I 111
o 0 100 111
o 0 000 000
1 1 0
000
000
000
000
1 1 0
III
110
100
011
OIl
1 1 0
1 1 0
110
111
1 1 0
000
100
o1 1
o11
011
011
100
100
100
o11
111
111
100
100
100
111
100
000
PD2
PD3
PD4
PD5
PD6
PD7
PDI0
PDll
PD12
PDl3
PD14
PD15
PD16
PD17
PD20
PD21
PD22
010
101
101
100
100
010
010
010
101
111
111
010
010
010
111
010
000
Octal
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
67642
112035
112035
112034
112034
67642
47742
67642
111435
157377
177377
47642
67642
67642
177777
47642
0
To see if a symbol pair is legal, find the left symbol in the column
on the left and the right symbol in the row at the top.
If the box of
intersection of the row and column of this symbol pair contains a 1,the
pair is illegal.
If it contains a zero, the pair is legal.
o=
legal symbol pair
1 = illegal symbol pair
804
Get Call Word from Dummy Function List
This routine searches addresses WL4 - WL23 for the symbol in SY2. If
the symbol is found it is put in TU2 and its call word is in TU3 in the v
address. Reference the routine as follows:
RJ
TU
TUI
(Not in list)
(In list)
o
o
MJ
MJ
Send Call Word to Dummy Function List
The XS3 code for the symbol is sent to TP2 and the dummy call word
to TP3 then
RJ TP TPI
sends the two-word file to the list WL4 - WL23.
Delete Library or Function Arguments, or Subscripts
Sometimes an error is encountered and the arguments of a function or
library routine or subscripts of a variable should be ignored without checking
so the number of errors doesn!t become excessive.
To use the routine
RJ
FV
MJ
MJ
0
0
FVI
(IfLl. is encountered)
(after deletion)
805
Equation Translation (P8IJe I)
Left
First Symbol
~:28
In sub program list
In VARY list
...- - - - - " ' - ' - = - ".....:..:~
Before START
After START
~
CW= 5XXXX
}----...::.:.;~-=='-------_ E27 ~
Not In
CB List
= 77XXX
CW
Flt.
Var.
Sentence
CW = 24XXX
E19
Sentence
CW = 25XXX
Fixje
Varp
CW t
=.65XXX
In CB
list
Next
sym
not
(
Check var.
type symbol.
CW = 64XXX
Set fixed eq.
j
!
File to
CB list
E48
~ ..,.
,,, ,,~,
Sentence
CW = 25XXX
c6
In
~Eq.
CW " 65XXX
~
CW =
65XXX
CW = 64XXX
!
CW = 77XXX
!
File to
CB List
mode
!
Raise (
level
8
Raise { level.
1
Set fixed
Eq. mode
'''''~'~
E18
~
~
delete ar~
CW = 66XXX
Raise ( level.
cb
Next sym.
not (
pOInt
E18
Set Ftn mode.
Key
CW - call word
E27 - Error number 27
(See list of errors for text)
CT ,- Trans. Control
Var. - variable
A, AI, A2 - decision on 1st
pltge
x-
octal digit
... - Space code
.... - Space period
= Signs +l
etc.
Ftn. - Functi on
CB - Combination list
args - arguments
( level = 0
Not
= Sign
Clear a u - - f c \
modes
leve110~
E47
Set level = 0
--V
B
"'(j)""
B, Bl, B2 - dec is ion on 2nd
page
11-
$
!
Set "Not in
o-~:':,:: -" .•""," (£ ",
decision
--------0
" .."ow
+
Set FTN.
mode
o --D -- re~erenced
Get next~
symbol
Not = Sign
Next
;~~ess. _ _ _s..:.y_m_._(-{
Eq. - Equation
Ss. - Subscript
Fl t pt. - Floating point
P .Op. - pseudo operation
( - open parenthesis
or parenthesis
I -
) - closed parenthesis
pow - power
absolute value
LIBRARY - library
Equation Translation (PRge 2)
left
Not First Symbol
¢
cp
~E54
Get symbol
~_____S_i_gn____~
A2
E55
Not
Sign
Not
variable
Ftn. mode
Not (
Ftn.
mode
Fixed pt.
LOW:::
E56
cb
Not
Ss mode
~:1c~~as
y
Too many "
0J
E30
va/
Fl.
Ss. mode
level
ESO
F~i~xe~d~v~a_r_ia_b_Ie____~E22 ________ ~
B
Get
N~ext
sym.
Not
leaving 58.
mode
CW = 75XXX
(
Not
Clear 58.
mode
~G
E40
/u . .
Add to CB
Li st or send
back to CB
List
cb
(
Clear
CW to
Trllns. Li st
~
B
CW = 62XXX
,","L;"
CW to Trans.
Lint
~
Not in
CB List
'" ;, '.0.
~ ,
~
In CB list
(5L'"
CW = 65XXX
m.
Al
----0
"o.~
leaving Ftn. mode
Not
Ftn.
/
E21
Not
too
many
S
/
var~CW =
CW to
trans.
62XXX-0
Equation Translation (Page 3)
Symbo Is on Right
Right
~
get
Not superscript
~SymbOl
~_ _N_o_t_-_ _____~ Cl
POW
:is.
p.4
mode
f:41
I
Clear
level raisers
"~'''I
'''
I/:
Ss. mode
~
Not Ss.
mode
E35
~
commas -1
No< Lib,,,, . " ,
Fl.
Eq.
p.6
CW
CW
= 30 for = 31 for +
Subscript mode
or Fixed Eq.
p.5
I/:
0:>
Not
~--------lOi
/
commas -1
E56
~
C
o
Cl
o ~
Flo Eq.
0:>
V
CW = 31 for CW = 21 for +
E36
if
~
Not
I
Not A.
Not
=
~
~-~~------'E42----~
I/:
= signs +
1--------~8
Set for . - - -_ _ _~
CW
*
CW = 61 for
CW = 71 for /
0f
= 10
CW = 60 for *
CW = 70 for /
~
-=-____ Send Trans.
l -_ _
Fixed Eq.
or Subscript
mode
0f
CW
=
-G
List to tape ~
11
~
E45
~
Fl.
CW = 13
B
E44
E46
~
~
Equation Translation (Page 4)
Symbols on Right (Cont.)
)----{T
Library mode
Not too low
CW = 2 00OOO-1-as-t-r-a-i-se-r-=-(-------+ Lower level
l-----"-''------_;o.Clear Library from
Level
too
low
Last level
raiser =
I
#Commas not correct
Clear subscript
mode
E39
~
/'
E38
List~~ p.3
~E37
---f:\
#Subscript not correct
} - - - - - - . : : , . . - - - - - - - - _ . E40~P.3
p.3
p.3
#Char.~/~Mecima/1Pt. _;o.CW=67XXX.
Convert to FlXed
Constant - - - . - j
#
Char
>6
---f0P.3
pt. ~
Dec. pt.
FlO
Fll
Flo
Eq.
}--_ _ _-'p'-t_._~._~_1_ _ _ _ _ _ _ _ _
•
g:n~e~~~
Fl.
--01'.3
/
g~~~:~~ i~ ~~~~r p~~se
Constant
Not Fixed Eq.
--1
~-----. CW 32 - - - - -•• - To special sequence ~
Not
Superscript
.. ~
_ Set up power
Symbol
~ sequence
- - - -•• CW 67XXX - - - - -... Constant to special sequence
Not - (assume
_ _d_i_v_id_e_)_ _ _.... CW = 70 _
Not const.
p.
3 ~ __ Throwaway
~~ rest of super. sym~ E34
~e~~e~~:Cial
i
• ~;!b~~xt_
# Symbols > 4
_=----....:....t
# Symbols ~ 4
E32
Not superscry
fr\
Not
ia
7-l#
P.3~~
.. - - - - - -s-p
-e
-c
-..~--\
-c a s e~
.••~----)
Special case
p.3
(";:\.
~.
_______
1/2, - 1/2
± 2, ± 3,
etc.
To sequence ....- - - - -
--if
Equation Trans 1ation (Page 5)
Right (Cont.)
Before START - Variable
Not
Subscript
mode
CW = 75XXX
0 - CW = 64XXX - - - - - - (
0-
CW = 65XXX -
~
~ CW
get next symbol
Subscript
E 14 - - - - '
Fl. Variable
Fixed Variable
Fixed pt. Variable
0 - C W = 65XXX_Ell
0-
CW = 75XXX
CW = 62XXX
Fixed Variable
E20
CW = 65XXX - - - - - - - - - '
CW = 64XXXX
00
~.
o
0-
CW = 65XXX
E21
~
~ElO
0--
CW = 66XXX
_--,;;.;;...---{
EB
CW
= 77XXX
CW = 5XXXX
Next sym.
)----=-----'~
~mOde
"
' - '" """y. ";
~
~E17
"1""'·' o
Not (
Set Subscript
E12
L..----EIB-0
)---~--~E4B~
mode
~
\.!:J
p.3
,./';\
Set Subscript mode
p.3
)-------~E22
CW = 64XXX +' E 12 - - - - - - - {
(
Not
mode
= 64XXX - - - - - - (
00-
t
(
Jr'\
E23 -~P.3
-~ p.3
Equation Translation (Page 6)
Right (Cont.)
After START - VARIABLE
E5
~--EI4~--------~
Subscript mode
In CB List
Flo Eq.
El5
~
Not
Subscript mode
cw
Subscript modE'
= 61XXX
------0
CW = 63XXX
~E3
Fixed Variable
Not
Subscript mode
E7---G)
&E19
....
0>
Set
cw =
El2
64XXX
C )
Not in CB List
Fixed Eq.
~
Fl.
El4
CW = 65XXX
Not
Subscript mode
D
Fl. Variable
Subscript mode
Fixed
Variable
CW = 65XXX
cw
= 5XXXX • E : 9 - - B
0 - C W = 64XXX
El2
Fixed Variable
CW = 64XXX
Fl,
Variable
cw
Ell
~
= 65XXX
E10
"8
Variable
cb
~)
Equation Translation Routine
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
FR04000
CA04027
CG04067
CH04127
CI04167
CK04227
DA04243
FJ04260
FK04271
FL04303
FM04313
FN04323
FP04337
FU04343
FV04361
HC04405
HF044 12
HG04417
HH04432
HK04444
HL04455
HM04474
HN04506
HQ04515
HR04524
HS04535
HU04551
HV04564
HW04623
HX04645
HY04666
HZ04673
MA04702
MB04717
MC04724
MD04753
ME05001
MG05032
MH05046
MI05067
MJ05211
MK05220
ML05236
MM05253
MN05300
MP05310
MQ05315
MS05337
MT05343
Setups
I
Constants
Left
Right
Subroutine
Right
812
RE
RE
RE
HE
RE
RE
RE
RE
RE
RE
RE
OJ:'
nI:.
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
MU05372
MV05404
MW05410
MX05412
MY05415
MZ05431
NA05434
NB05447
NC05461
ND05471
NE05502
NF05511
NG05532
NH05551
NI05576
NJ05621
NK05626
NL05645
NN05652
NP05670
NS05676
NV05715
NW05733
NX05740
NY05745
NZ05753
PC05762
PD06006
TP06031
TU06057
WC06077
WD06104
XC06115
XD06123
XE06152
XF06205
XG06220
XH06237
XI06251
XL06260
XQ06276
XR06317
XT06344
XV06362
XW06400
XY06405
XZ06432
YB06444
YC06511
YD06.5~32
YE06537
YF06541
1
I
Right
Subroutines
t
Right
1
Subroutine
Right
J
Left
813
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
YG06560
YH06571
Y106603
YJ06611
YK06623
YL06644
YM06673
YN06705
YP06723
YQ06731
YR06745
YS06751
YT06765
YU07003
YV07016
YW07054
YX07075
YY07115
YZ07135
ZA07151
Z807163
ZC07212
ZD07226
ZE07262
ZF07271
ZG07300
ZH07313
Z107330
ZJ07341
ZK07346
ZL07353
ZM07364
ZN07416
ZQ07434
ZR07452
ZT07464
ZV07510
ZW07525
ZX07556
ZY07571
ZZ07615
KX07620
KY07645
VA07663
VC07725
EF73047
EG73106
EH73146
E173212
EJ73251
EK73300
EL73334
Left
~.
Left
Right
}
}
Left
Variables
Error Text Constants
814
RE
RE
HE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
EM73362
EN73410
1
EP73452
ER73515
EX 73556
GA73611
GB73643
GC73706
GD73737
GE74000
GF74027
GH74052
GI74113
GJ74151
GK74202
GL74225
GM74255
GP74306
GQ74343
GV74375
FQ74444
GY74461
GZ74510
Error Text Constants
815
Equation Translation - Setups and Subroutines
Name
Region
Setups
Get CW from dummy Ftn. list
Send CW to dummy Ftn. list
Lower (level on left
Delete Lib., Ss •• Ftn.
Constants & variables
Superfluous args. error
Symbol pair checker
Constants
Lower upper case XS3 constant
FR
TO
TP
XL
FV
WC
WD
PC
PD
MI
Setups
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
IA
FR
MJ
0
10042
CA27
10040
CA27
CH15
CH31
CH22
CI31
CA3
CA3
CK1
CK2
CK3
CK4
CK5
CA27
RP
TP
RP
'IF
TP
TP
TP
'IF
TP
TP
TP
'IF
'IF
TP
TP
TP
TP
vn
ZJ
FR23
WB11
CK6
10020
CA27
FR27
TP
TP
RP
TP
CA
CT
Exit
Clear VA
FR3 }
VA
FR5}
VC
VA15
VA23
VA24
VA40
VAl
VA2
VC10
VC20
VC30
EW3
TP4
XL2
A
FR24
WL2
VB3
YB
WL4
Clear VC
=
=
=
=
=
=
=
=
=
}
}
2
2
0
100
0
1
0
7
0
1
0
1
VCIO VCIO
VC20 VC20
VC30 VC30
EW3 = 0 WL23 WL23
TP4 = 0 WL4 WL4
Clear print ind.
After , Before ~ FR24
WL2 = EQUATI
VB3 = -1
Clear dummy list ~ A
0
0
0
0
0
0
0
0
0
816
o
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
Get CW from Dummy Function List
RJ TU TUl
MJ 0 Not in list
IA TUO
MJ 0 In list
.(30000)
Exit
MJ o
Start
TU4
MJ o
XS3
o
o o
CW
o
o o
Sym. ~ A
TP SY2
A
Not in list --+ TUO (Exit)
RP 20020 TUO
In list
TU7
EJ WIA
o
SP TUlS
} r~Au
17
SS Q
WL3 + r --+ TU14
AT TU16 TU14
Set
for in list
TUl7
RA TUO
File~
output --+ Exit
RP 30002 ~UO
}
o o
o o
TP WL3
o
o
20020
TU2
IN
1
CA TU20
Send Dummy CW to Function List
o
IA
TP
MJ
1
2
MJ
0
0
0
0
3
4
5
6
7
10
Ii
o
o
o
o
TP
TJ
TP
QJ
12
13
14
15
16
17
20
21
RJ
RJ
TP
TP
RJ
MJ
TV
22
23
TP
RA
MJ
24
25
RP
o
CA
(WL4)
WL24
TP4
TP5
VA37
TP12
TE
WA
GQ
(30000)
TP6
o
(0)
(WIA)
WL24
A
TP20
Q
TPI3
TEl
WAI
UP3
}
}
Exit
Start
XS3
CW
Add. of next file in dummy list
Limit add.
O. K. --+ TP20 No ~
.
,..~ •.
- I
Not In
\.ttl LIst + in --+ TPi3
Add to list
}
E50
GQlO
UP
FR
-+ Exit
TP4
TP22
Set address
30002 TP23 } File--+ list
TP2 ( 30000)
TP4
TP25
Modify
0
TP
Exit
2
2
TP26
VAI0
UP2
0
817
Lower ( Level on Left
0
1
2
3
4
5
6
IA
MJ
MJ
0
RS
TJ
MJ
TP
7
TP
10
11
12
13
14
15
QJ
RJ
TP
RJ
TP
MJ
CA
XL
0
0
0
VAl
CA3
0
CA3
XL2
XL
WA
GI
UP2
CA24
0
XL16
(30000)
XL3
0
CA3
XL6
XL
VAl
Q
XLII
WAI
UP3
UP
XL2
XL
}
}
Exit
Start
Ind.
Lower ( level
o K ~ < 1 ~ XL6
Exit
Set level = 1
Pre. point ~exit
No ~
E39
Set print
Exit
818
Delete LIB, SS, FTN
Y RJ FV ];,lT1
(!.J. • exit)
Y+l MJ 0
Y+2 Normal exit
&,-
0
1
2
'l
v
4
S
6
7
10
11
12
13
14
15
16
17
20
21
22
23
0
1
2
3
4
IA
MJ
TP
RJ
EJ
EJ
EJ
MJ
RA
MJ
RS
ZJ
RA
TP
AT
MJ
TP
AT
RA
RJ
MJ
CA
FV
0
WCl
SY
WC2
WC3
WC4
0
WC
0
WC
FV2
FV
CAS
PDl
0
CA36
PDl
VAl
DA
0
FV24
IA
0
0
17
43
WC
0
0
77777
77777
01 22777
CA WCS
Exit
Level = 1
(30000)
WC
SYI
Sym~A
FV7
(~FV7
FVll
FV17
FV2
WCl
FV2
WCl
FV13
WCl
A
PC2
FV
A
PC2
WC
DAI
FV
)~FVll
!.J. • ~ FV17
J
}
Return
Raise level
Return
Lower level
Level zero t no
Increase exit
Set PC with )
-+
Set PC with doesn't
matter
Raise level
Check level
~ Exit
Level
Const.
0
1
77777
77777
77777
(
)
A
u.
Superfluous Argument Error
0
1
2
3
4
5
6
7
10
IA
RJ
TP
TP
RJ
TP
RJ
RJ
MJ
MJ
CA
WD
WA
SZ2
GM
WAI
GM7
UP3
UP
UP3
UP
FVl
UP2
GP
UP2
FV
0
YV
0
ZMl
WDII
I
}
E48
"Args. not checked"
Delete FTN
L\.~@
~©
819
return
•
.L
Pair Checker PC
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
IA
MJ
MJ
0
0
TU
TP
TV
SP
QT
ZJ
RJ
RP
TP
RP
TP
TP
RJ
SP
AT
MJ
CA
IA
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
CA
PC
(30000)
0
0
PC4
P022 P022
20
20
PC2
PC5
}
(30000)Q
PC3
}
PC7
PO
(30000)
A
A
PC12
PC21
WA
WA1
30003 PC15
}
SZ2
FQ6
30003 PC17
}
SY2
FQ12
UP3
FQ
UP2
UP
PD1
0
}
PC2
PC3
PC
0
PC24
PD
0
PD2
0
1
1
1
1
0
0
0
1
1
1
0
0
0
1
0
0
PD23
1
PD2
67642
12035
12035
12034
12034
67642
47742
67642
11435
57377
77377
47642
67642
67642
77777
47642
0
Exit
Start
Address (left symbol)
Shift count (right symbol)
Code word ~ Q
Shift bi t --+ A
A
PC21
Ind.~
OK~
No
t
Left sym.
E52
Right sym.
Set for next check
Exit
Shift bit
1st address of code words
(
) or I (c losed)
Var. or const.
Sub. Var.
FTN
, or ;
+ or -
* or /
Up const.
Up Up /
POW
LIB
=
fl.
I (open)
"Doesn't matter"
820
Conversion of Upper Case XS-3 Constant to Lower Case
0
1
2
3
4
5
6
IA
MJ
MJ
0
0
0
0
TP
MI
0
0
0
0
0
(30000)
MI6
0
0
0
0
MII04
MIlOS
MI46
MI47
MIllO
MII07
MI25
00006
A
MI25
MI2l
A
MIl17
00017
MIl17
Q
MI45
RA
TP
QT
LQ
RA
IJ
RA
RA
RA
IJ
TP
0
MI121
MI12l
MI4
MI5
MII03
MII06
MIlll
MI46
MI50
20013
MI51
MIlOl
Q
MIl17
MI25
MI64
MI50
Mll04
MII04
MII07
MI30
MI27
MI15
MIllO
MII04
37
TP
Mli05
40
41
42
43
44
45
46
47
50
51
52
53
54
55
TP
TP
TP
TP
MJ
MIlll
MIll2
MIll3
MIl14
0
0
0
0
0
0
0
00077
00060
0
00061
0
00040
0
00020
0
0
00041
0
00035
0
00055
~
I
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
56
57
""0
.I.L
TP
TP
TP
TP
TP
LQ
QT
RP
EJ
TP
ST
LA
0
0
0
0
0
0
0
0
0
0
0
}
}
Output data
Input data
Zeroize temp.
Zeroize temp~
Store input
Store input
Set Index
Set Index
Set store command
Convert and Store
00006
MI45
MI14
MII02
MII02
MIl02
MI13
MI2
MI3
MI25
MIl5
MI30
MI27
MI
0
}
Reset for second word
1
)
Preset for second set of
input data
Upper Case
821
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
110
III
112
113
114
115
116
117
120
121
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
TP
LQ
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
00001
0
0
0
0
0
0
MI64
MI46
RA MII04
LQ MII04
PR 0
MS 0
0 00007
0 0
0 0
CA MI122
00075
00036
00057
00062
00077
00003
00004
00005
00006
00007
00010
00011
00012
00013
00014
00022
00077
20013
0
00001
0
I
Lower Case
Lower Case
0
00005
0
0
Q
00006
MI45
00006
MI120
40000
0
00015
0
}
Parameter Error
822
Constants
IA CAO
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
04
06
0
0
0
0
0 0
77777
0 0
1
0 0
0
0 1
1
0 2
2
0 3
3
0 4
4
0 5
5
0 6
6
0 7
7
0 10
10
0 11
11
0 12
12
0 13
13
0 14
14
0 15
15
0
16
16
0 17
17
40 0
0
0 0
64000
0 3
3
0 0
0
17 77777 77777
0 0
65000
0 0
777
0 0
66000
3
06 0
62000
0 0
0
0
20
0
CA CA40
20
(
)
or I (closed)
Variable or const
SSe Var.
e
1
FTN
or ;
+ or * or /
Upper Const.
Upper Upper /
POW
LIB
BY or =
~
~.
I (open)
Zero
( 77 77 77 77 77
0<; K~
for p<;C"
01000
823
for PC
Constants (cont.)
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
IA
11
22
33
44
21
CG
11111
22222
33333
44444
77777
77777
77777
77777
73777
22777
77777
77777
77777
0
23
43
76
25
01
00
15
42
0
0 0
0 0
0 0
0
0
0 0
0 0
0 1
0 0
0 VLl
0 07777
0 0
0 0
0 0
02 0
0 2
0 70000
0 0
0 10000
CA CG40
11111
22222
33333
44444
77777
77777
77777
77777
77777
77777
77777
77777
77777
50
120
77000
70
61000
63000
76000
0
00700
VLl
0
70000
40000
50000
0
0
0
40
0
Fltpt.
Fixed pt.
Ftn.
Sub. var.
77 77 77 77 77
-I
; 77 77 77 77 77
) 77 77 77 77 77
=
~
BY
~
tJ..
-/
~
77 77 77 77 77
77 77 77 77 77
I
=
tJ..
Mask
(
Mask
Mask
)
)
824
~
Constants (cont.)
0
1
2
3
..,.A
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
IA CHO
0 CH35
Cl11
0
0 CI13
0 Cn2
0
0
52 51717
63 77777
02 77777
56 77777
64 77777
0 0
0 0
0 0
0 2
0 0
0 0
0 0
TP CG34
0 1
0 1
0 0
0 0
0 CIO
0 VA32
0 0
0 0
0 0
0 0
ell
34
0
35
36
37
0 0
0 0
0 0
CA CH40
0
0
0
0
75000
77777
77777
77777
77777
77777
12
13
10
2
5
VA24
VA31
0
0
1
3
2
0
0
16100
100
77
16000
F1tpt. /
Fixed pt. /
Fltpt. *
Fixed pt. *
PO W 77 77 77
+ 77 77 77 77 77
>
>
>
*
/
I (closed) floating
I (closed) fixed
I (open) fl. and fixed
Base add. for sequence
for comparison
0
70
32
00100
/
To set VC3 & POW
825
Constants (Cont.)
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
IA
00
20
15
20
20
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
30
0
0
0
0
0
0
0
0
0
CA
CIO
77777
14000
77777
24000
26000
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
0
0
0
20000
0
VC20
VC30
07000
CI20
CI2l
CI22
CI40
77777
0
77777
0
0
13000
15000
14000
17100
71
61
60
60000
10000
33
32
31
30
21
20
3
75000
0
1
/
2
3
CW for 4 to 63 & -4 to -63
2 & -2
3 &-3
-1
Fixed /
Fixed •
Fl.
•
Fixed unary -
Fixed +
Fl.
+
Base add. of print list
0
0
7
VC20
VC30
0
0
0
0
}
Mask
Limits on LIB modes
Fixed Fl.
Fixed +
826
Constants (cont.)
0
1
2
3
4
5
6
7
10
11
12
13
IA
0
0
0
0
0
0
77
0
0
0
0
0
CA
CKO
CI23
VC10
VC20
VC30
WL23
WIA
77777
0
0
0
0
30000
CK14
0
VC10
VC20
VC30
WL23
WL4
77776
25000
24000
WL
67000
0
Fl. +
Set EW3
64 t 65,66xxx separate Eq.
77xxx separate Eq.
Const. CW
Const.
827
Variables for Equation Translation
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
IA
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
VAO
0
0
0
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
0
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
2
0
0
0
0
0
100
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
(0)
Print ind.
( level bit
1 level bit
# ( level raisers in sequence
~ 1 level raisers in sequence
SSe mode level
XS3 of SSe variable
Ftn. mode level
XS3 of Ftn.
Level of subscripts for FTN.
Lib. mode
# commas for Lib.
# of ='s
# of words in up. c. sequence for string-out
Fixed 40 - floating 00
# commas, SV mode (count)
# commas, FTN mode (count)
# commas, Lib. mode (count)
# upper case symbols in sequence
(
POW
Upper case sequence
for string-out
(Call words)
0
0
0
0
7
0
)
Upper case sequence
for special call word
comparison (XS3)
SSe -1 (from dimension list)
not in CB List bit
Ftn. mode format mask
Address in CB List
#
CA VA42
828
Variables ( cont. )
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
IA
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
VC
0
0
0
0
0
0
0
Any decimal points in sequence
Index
Constant CW temp.
Add in to constant CW for Save const. CW
Ind. print for "more than 29 ( 's etc.-
0
0
0
VClO
Address of Lib. level
0
VClO
0
0
0
0
0
0
0
VC20
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
VC30
0
0
0
0
35
0
36
37
0
0
0
0 0
CA VC40
0
0
0
0
0
0
0
0
0
0
0
0
VC20
0
Leve 1 of Lib.
Address of
"#
of commas for Lib.
0
0
"#
commas for Lib.
0
0
0
0
VC30
0
0
0
0
0
1
0
0
J
XS3 of Lib.
829
Equation Translation Left
Section A
Section B
Section C
-
--
First Symbol, Before START
First Symbol, After START
Not First Symbol
Region
Section
YB
A
YH
A
A
A
A
A
A
A
A
A
A
A
ZO
ZI
ZJ
ZK
ZL
OA
KX
KY
B
B
B
B
B
B
B
Letters on left of coding
sheets are connectors (They are
also 0C!)he flow charts)
i. e., B, ~ , etc.
YK
YG
YF
YJ
YE
YO
YI
YC
YM
YN
YW
YS
YR
YQ
yp
YU
YT
Region
Section
ZE
C
C
C
C
C
C
C
C
C
Connector
YX
ZA
ZC
ZB
yz
YY
YL
ZF
ZG
ZH
C
C
C
C
C
C
C
C
C
C
830
Section
[)
A
@
@
A
CD
C
A
Left-Before START-1st Symbol
®
0
1
2
3
4
5
6...,
TA
YB
TP
ZJ
RJ
VD
MJ
TP
QT
EJ
YB2 J
TA
0
TA4
CG30
CG32
TAl}
YC
t
TP
TA4
RJ
TP
QT
EJ
QT
AT
EW
TA4
CG17
CG17
CA32
CK7
0
CA32
CK10
TA5
CAl
YB24
WA
SY2
EX22
UP2
TA4
CG17
CA25
CA31
CA33
SY
CA30
WA
SZ2
EN22
UP2
SY2
0
YB45
QT
AT
TP
QT
ZJ
RJ
TP
TP
RJ
TP
QT
EJ
EJ
EJ
RJ
EJ
RJ
TP
TP
RJ
TP
MJ
CA
)
YW
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
MJ
A
Q
A
YD
EW2}
EW1
Q
~17}
~L3 }
After
~YW
Before.
Not in CB List
In ~
~YC
Lib. -;. YD
No ~
CW ~string
CW = 77XXX~YB17
No ~
25XXX CW ~WL3
YB21
~L3 }
tWAl}}
EX31
UP3
UP
Q
A
YE
YH
YG
SY1
YJ
}
24XXX CW ~ WL3
No prev. Eg.
Prev. Eq. +
E24
CW~A
64XXX~YE
65XXX~YH
66XXX~YG
Sym.~A 77XXX
~YJ
WAl}
EN30
UP3
UP
A
YH10
~YI
E18
Sym.@A
~A
831
No ~
~
End of Left Symbols
@{
IA
YH
0
RJ
1
2
3
EJ
SY
CG7
WA
GA
UP2
SY2
CGll
SY
CG7
0
YH12
4
®{
5
6
7
10
11
RJ
TP
RJ
TP
EJ
RJ
EJ
MJ
CA
IA
RA
0
1
2
3
EJ
RJ
4
TP
5
6
7
10
11
12
13
14
15
16
17
20
RJ
TP
RP
I'P
TP
RP
TP
TP
TP
AT
TP
RJ
MJ
CA
SYI
YK
WAl}
UP3
=~YK
E25
~P }
YV
SYI
YK
YH6
~@)
1:1,
S~~A
=~YK
YK
VA14
VAl
CA3
WA
GL14
UP2
CA3
10011
CA27
10004
CA27
CA27
CA21
PDl
CG15
EW
0
YK21
='s + 1
CA3
A
#
~r}
UP3
level zero--7YK7 no
E47
UP
~~l}
VA3
YK13
VA17
VA36
:C2 }
EW2 }
EWI
ZMl
set to ( level zero
Clear all modes
Clear #SS
set left of PC with
CW~list
~@)
832
=
~
66XXX
£\
v
1
2
3
4
5
6
7
10
IA
YG
RJ
EJ
RJ
SY
TP
TP
RJ
MJ
LQ
MJ
CA
CA30
WA
SZ2
GA6
UP2
0
TA3l
0
sv,
.l.L
YG7
~ A
(~YG7
WAl}
GAll
E26
UP3
UP
FR
25
YF4
Sym
--7
~
no
Exit to trans. control
YGII
65XXX
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
IA
YF
RJ
EJ
MJ
RA
TP
SY
CA30
0
TA4
TA3l
VA4l
VAl
SZ2
VAl
POI
CA26
CA34
CG20
30002
TA3
YF17
RA
TP
TP
RA
TP
TP
TP
TP
RP
TP
CA
SYI
YF3
YHI
CA37
VA41}
CA3
VA7
VAlO
CA3
PC2
TF
TF3
VA40
YXl}
TFI
Sym---;.A
(--?> YF3 no
---;.@
~
=
CW b6XXX
Save address in VA4l
Set Ftn. mode
XS3 of Ftn.
Raise ( level
Set PC
# words
3
Set format
Set mask
Set up to return to
CB list then~®
=
833
77XXX (
0
IA
TP
1
2
3
TP
QT
RA
YJ
VAl
TA5
CA2
VAl
4
TP
PDI
5
6
7
TP
RJ
RS
10
TP
CG24
EW
VA36
SZ2
11
MJ
CA
0
VA5
Set Ss. mode
#Ss. ~VA 36
CA3
PC2
EW2}
EWI
CA3
VA6
YXI
Raise level
Set PC
~A36 }
CW~list
#Ss. -1
XS3~
~
B
Ss. variable
YJ12
64XXX
o
1
IA
TP
MJ
CA
YE
CA24
0
VA16
YH
YE2
Set fixed equation
~
Lib. = 5XXXX
0
1
2
3
4
IA
RJ
TP
TP
RJ
MJ
CA
YD
WA
SY2
GB
UP2
0
WAl}
GB5
E27
UP3
UP
FR
---7
YD5
834
trans. control
No previous Equation
IA
0
1
2
3
4
5
RA
RJ
TP
QI
EJ
MJ
CA
YI
TA5
TD
TA4
CG17
CA31
0
YI6
CAl
TDl
Q
A
YF
YB30
}
Set eq.
Return to list
CW~A
no ~
65XXX~YF
Not in CB List
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
RJ
RJ
AT
TP
QJ
RJ
EJ
TP
AT
TP
RJ
TP
IP
TP
RJ
TP
MJ
CA
YC
RH
TK
CK7
SY10
YM
SY
CA30
VB1
CA31
A
EW
CA26
SZ2
CAl
TE
SY2
0
RH1
TK1
WL3
Check Var. symbol
Increase CW.
25XXX CW ~WL3
~C5}
IJKLM~YM
SY1
No ~
YN
Sym~A
(~YN
~W2}
CW
TF2}
EW1
CW~list
TF
IF1 }
File
TF3
TEl
A
YHI
= 65XXX
~CB
Sym~A
~(A2)
'-'"
YC21
835
no ~
list
Not in CB List 1st Letter IJKLM
0
I
2
3
4
5
6
7
10
II
IA
TP
AT
TP
RJ
TP
TP
TP
TP
RJ
MJ
CA
YM
VBI
CA25
A
EWO
CA24
SY2
CA26
CAl
TEO
0
YM12
A }
EW2
TF2
EWI
VA16
64 XXX
CW~list
Set fixed equation
Sym.~TFI
TF!
TFO }
TF3
TEl
YH
CW~CB
~@
NOT IJKLM Next Sym.
0
1
2
3
4
5
6
7
10
II
12
13
14
15
IA
TP
AT
TP
RJ
TP
TP
TP
TP
TP
RA
TP
TP
TP
MJ
CA
YN
VBI
CA33
A
EWO
SZ2
SZ2
CA34
CA26
VAl
VAl
PDl
CA24
CG20
0
YN16
List
~2 }
TF2
EWI
TFI
VAI0
TF3}
TFO
VA7
CA3
PC2
VA37
VA40
YXI
J
(
66XXX
CW~list
XS3 of Ftn.
Store format
Set Ftn.
Increase level
Set P. C.
Set "not in CB List" bit
Set mask
~®
836
Left After Start 1st symbol
IA
YW
0
1
2
3
4
5
RJ
MJ
TP
RJ
RJ
TP
TS
0
TS3
EW
KY
TS3
6
'l.L
rVT1
£",£",,"'7
7
10
11
12
13
14
15
16
17
20
EJ
EJ
RJ
EJ
RJ
TP
TP
RJ
TP
MJ
CA
CG21
CG22
SY
CA30
WA
SZ2
EP
UP2
SY2
0
YW21
IA
0
1
2
3
4
5
TP
RJ
TP
TP
RA
TP
QT
LQ
TP
TP
YSO
CG24
EWO
SZ2
VAl
VAl
TS3
CG25
Q
Q
PDl
VA36
0
YS14
6
7
10
11
12
13
RS
MJ
CA
\A1.l1
TSl}
YP
EW2 }
EWI
KYI
91
.Ii.
Not in P. Op. list ~YP
In ~
CW ~list
Check Vary List
XXOOO~A
.J
YQ
YR
SYI
YS
61XXX~YQ
63XXX~YR
EP6
UP3
UP
A
YHI
E19
76YXX ~
(~YS
WAl}
no t
Sym~A
~@
EW2 }
EWl
VA6 }
VA5
CA3
Q \
J
36
Q
VA36
PC2
CA3
YXI
(---7
string
Set Ss. mode
Raise level
Store;;; Ss.
Set P.C.
SSe - 1
~®
837
Sym~A
63XXX ~
IA
0
1
2
3
TP
QJ
TP
MJ
CA
YRO
SY10
YR2
CA24
0
~H
}
VA16
YH
YR4
1st letter IJKLM~YR2
No->@
Set fixed eq.
~®
61XXX
0
1
2
3
4
5
6
7
10
11
12
13
IA
RJ
EJ
MJ
RJ
TP
TP
RJ
TP
RJ
RJ
MJ
MJ
CA
YQ
SY
CA30
0
WA
SZ2
GM
UP2
GP
UP2
FV
0
0
YQ14
Not in
0
1
2
3
4
5
IA
yp
RJ
MJ
TP
RJ
RJ
MJ
CA
TA
0
TA4
EW
KY
0
YP6
SY1
YQ3
YH1
WA1}
GM7
Sym~A
(~YQ3
~@
no ~
E48
UP3
UP
g;3}
FV1
YV
YH
"Args. not checked"
Delet@tn.
fl.
~C
~@
P.O~List-After
START-1st Sym
TAl}
YT
Not in CB List
EW2 }
CW~list
EW1
KY1
In
1
~YT
Check Vary List
YU
838
Not in Vary List
0
1
2
3
4
5
6
7
10
11
12
IA
TP
QT
EJ
QT
EJ
EJ
EJ
TP
QS
RJ
MJ
CA
YD
TA4
CG30
CG32
CG17
CA25
CA31
CA33
CG33
CG33
TD
0
YU13
~
YO
A
}
XOOOO~A
5XXXX~
YO
XXOOO~A
64XXX~ YE
65XXX~ YH
YE
YH
YQ
Q
TA5
TOI
YB35
66XXXT YQ
77XXX
Set Equation bit
Return to CB List
Not in CB List
0
1
2
3
4
5
6
7
10
11
12
J3
14
15
IA
RJ
YT
TP
QJ
AT
TP
SYIO
YT3
CA25
CA24
A
CA26
SY2
CG33
EW
TE
TP
TP
TP
TP
RJ
RJ
MJ
AT
MJ
CA
TK
0
CA31
0
YT16
TKl
~T14}
EW2 }
VA16
TF2}
TF
TFI
TF3
EWI
TEl
YH
EW2
YT5
Increase CW counter
1st letter IJKLM~YT3
No ----?YT14
CW = 64XXX
Set fixed Equation
Build file
CW
~list
Fil~>CB
~
A2
CW =~5XXX
839
List
Left - Not 1st symbol
®
{~
3
4
5
6
7
10
11
12
13
14
15
16
17
IA
RJ
RJ
EJ
TP
QJ
EJ
EJ
EJ
EJ
MJ
TP
RJ
TP
RJ
TP
MJ
CA
YX
PC
SY
CG7
SY7
YL
CA30
CG4
CG5
CG6
0
SY2
WA
GC
UP2
CA36
0
YX20
PCl
SYI
Pair Check
YK
=~YK
Q ~
YX5 J
Var.--? YL no ~
yy
~}
ZA
KX
Sym~A
(~yy
, or;
~yz
)~ZA
~ .~KX~@
GC4}
WAI
UP3
UP
PC3
YX
E29
set®
~B
840
1st sym.
Left; not
)
TJ\
0
1
2
3
?J\
~
LIn
TP
CA5
RJ
XL
TP
4
EJ
EJ
5
6
TP
VAl
VA5
VA7
VA7
ZJ
YX
7
TP
CG34
10
11
RJ
MJ
CA
EW
0
ZA12
PC3
XLI
A
ZB
ZC
A
ZA7
EW2
EWI
0
1
2
3
4
5
6
7
10
11
12
13
IA
TP
RJ
TP
QS
TP
QJ
RJ
TP
MJ
TV
RP
TP
CA
ZC
CA27
PC
CG35
VA20
VA37
ZC6
TE
CA27
0
VA41
30003
TFI
ZC14
J
7
J
YX
)
Set PC
Level checker
No +
Leaving Ss. mode--7ZB
Leaving Ftn. mode ~ZC
In Ftn. mode ~YX
No it
CW~list
~®
Leaving Ftn. mode
VA7
PCl
Clear Ftn. mode
~F3 }
~Cll }
#
TEl
VA37
YH
ZC13
YH
~PC
J
conunas ~list
"Not in CB List" bit set
Not set~ZCll
Add to CB List
Clear "not" bit
~~
Send ack
~@
(30000~
841
to CB List
~
)-leaving 5s. mode
Left
IA
ZB
0
1
2
3
RJ
TP
TP
ZJ
4
TP
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
ZJ
RJ
PC
CA27
VA7
ZB4
VA36
ZB6
WA
VA6
GC12
VAIO
UP2
0
CG34
TP
TP
TP
RJ
MJ
TP
RJ
TP
ZJ
RJ
TP
TP
RJ
TP
TP
MJ
CA
EW
VA36
ZB20
WA
VA6
GI12
UP2
CA27
CA27
0
ZB27
PCl
VA5
Do PC
Clear 5s. mode
~B14
}
A
YXI
IA
TP
TP
ZJ
RS
TP
RJ
MJ
RA
TP
TJ
LQ
MJ
CA
YZO
CAll
VA5
YZ3
VA36
CG36
EWO
0
VA20
CK13
VA20
VA40
0
YZ14
commas
Noy
#
}
nO®ZB14
= O~
B
WAI
GC20 }
E30
UP3
GC27
UP
YXI
EW2
EWI
~®
CW~list
}
~B24
Right
No +
}
WAI }
GI17
UP3
UP
VA17 }
VA36
YH
Left
0
1
2
3
4
5
6
7
10
11
12
13
Ftn.mode+
PC3
A
YZ7
CA3
EW2}
EWI
YX
CG37
E40
Clear
#
Ss ..
---7@
or ;
t
Set PC
}
Ss. mode ~ no ---'7Yl7
Commas - ~
C.W .~list
~®
Commas + 1
Too many operands ~TPI0
No •
Shift mask
~PI0 }
3
YX
# commas~ZB24
~®
842
Left
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
IA
yy
TP
RA
TP
ZJ
RJ
PC3
CA3
TP
GA4
VAl
VA7
YY4
WA
VA10
GV3l
T'>T
rrnn
urt:.
TTn
0
WA
VA6
GV15
UP2
CG24
YX
TP
n",
MJ
RJ
TP
TP
RJ
TP
RJ
MJ
CA
EW
0
YY20
(
Set PC
Increase level
~Y11 }
Ftn. mode
WAI
GV45
E55
UP3
ur
1
S5. mode
~YYll
./
~®
WAI }
GV27
UP3
UP
EW2
EW1
YX
~
E54
}
CW~list
~®
Left-not First Symbo1-Var.
IA
YLO
0
1
2
RJ
RHO
CA6
VA7
RH1
PC3
A
3
ZJ
RJ
MJ
TP
QT
EJ
TP
ZJ
YL4
ZD
TAO
0
TA4
CG30
CG32
VA5
YL13
SYI0
YL22
WA
SY2
VA6
ER
UP2
SY2
VB3
CA35
TP
0
YL27
TAl
YLII
Q
A
ZE
A
ZF
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
TP
TP
TP
QJ
RJ
TP
TP
TP
RJ
TP
RA
AT
RJ
MJ
CA
~15
WAI
ER6
ER20
UP3
UP
J
No
Lib.~ZE
]
J
~
SSe mode ~
J
TP2 ]
CA3
Ir3
TPl
YX
]
]
Check symbol
Set PC
Not Ftn. mode -7ZD
Ftn. mode ~
Not in CB List ~YLII
In ~
Not IJKLM ~
no ---7ZF
yes
E21
Assign dummy GW
CW ~dummy list
~®
843
~YL22
Var.- Ftn. mode-. not Ss. mode
IA
0
1
2
3
4
5
6
TP
QJ
RJ
TP
TP
RJ
MJ
CA
ZFO
SYlO
ZF2
WA
ER22
SY2
UP2
0
ZF7
~GO
}
IJKIM
WAI }
UP3
ER27
UP
YL22
!
no~ZGO
E22
.
Return
Not IJKI.M
IA
0
1
2
3
4
5
6
7
10
11
12
RJ
RJ
EJ
RA
AT
TP
RJ
TP
QS
TP
MJ
CA
ZG
PC
SY
CA30
VB3
CA35
SZ2
TPO
VA40
CG
SY2
0
ZG13
PCl
SYI
ZH
CA3
TP3
TP2
TPl
Q
TF3
A
YX2
PC
}
}
Symbol~A
(~ZH
no
~
62XXX CW ~ dummy list
F1 tpt.
~format
Sym~A
~®
844
Ftn. mode-Var.
0
1
2
3
4
5
6
7
10
11
12
13
14
IA
RA
AT
TP
RJ
RA
TP
TP
QS
TP
TP
TP
RA
ZHO
VB3
CH4
SZ2
TPO
VB3
POI
VA40
CG3
VAl
SZ2
CA27
VAl
MJ
0
CA
ZH15
CA3 }
TP3
TP2
TPI
CA3
PC2
Q 1
TF3 )
VAS
VA6
VA36
CA3
YXI
J
(
75XXX CW ~dummy list
Leave space for S8.
Set PC
Ss. var ~format
Set Ss. mode
#
S8. - 1 = 0
Rai~ level
~B
Lib. 5XXXX
o
IA
ZEO
RJ
TP
TP
TP
RJ
5
TP
WA
SY2
VAIO
GO
UP2
CA36
6
MJ
CA
ZE7
1
2
3
4
o
WAI ')
G05 '
G017 )
UP3
UP
PC3
YX
E31
Set PC "doesn't matter"
~®
845
Left - Not 1st symbol
Not Ftn. mode
Var.
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
IA
TP
QJ
RJ
TP
TP
TP
RJ
TP
ZJ
RJ
MJ
TP
RJ
MJ
RJ
MJ
TP
RJ
MJ
RJ
AT
TP
TP
TP
TP
RJ
RJ
MJ
CA
ZO
SYIO
ZI
WA
SY2
VA6
EK
UP2
VD
ZOll
IS
0
IS3
EW
0
TA
0
TA4
EW
0
1K
CA31
A
CA26
SY2
CA27
TE
EW
0
ZD34
Q
Z02
}
IJKlM ---7 ZI
no ~
WAl}
EK6
EK16
UP3
UP
A
Z12
TSI }
Z016
EW2
EWI
YX
TAl }
ZD23
EW2
EWI
YX
TKl
EW2
TF2
TF
TF1
TF3
TEl
EWI
YX
Ell
Before~ZI2
}
}
After t
Not in P.Op.
In ~
list~ZD16
CW~list
~@
Not in CB list-ZD23
In ~
}
CW~string
~@
Increase CW
Assign 65XXX CW
}
File
~CB
CW~list
~®
846
list
1st Letter IJKL\i
0
1
TP
ZJ
2
3
4
5
6
7
RA
RJ
RJ
ZI
VD
ZJ
VB3
CA35
A
SY2
TPO
EWO
10
MJ
0
CA
ZI1l
IA
AT
TP
TP
I
~I2 }
Before START ~
No~ZJ
CA3}
TP3
Dummy CW =
EW2
TP2
62XXX~list
TPl-
EWI
YX
CW
~list
~®
After START
0
RJ
ZJO
TSO
1
2
3
4
MJ
0
TSI }
ZK
In P.vp. list
TP
RJ
MJ
CA
TS3
EW2 ]
CW~list
IA
EW
0
EWI
YX
ZJ5
i no~ZK
~®
Not in P.Op. lis.t
0
1
2
3
4
IA
RJ
MJ
ZKO
TAO
0
TP
RJ
TA4
EW
MJ
0
CA
ZK5
TAl}
ZL
EW21
EWl]
YX
Not in CB List ~ZLO
In ~
CW~list
~®
Not in CB List
0
1
2
3
4
5
6
7
10
IA
ZL
RJ
AT
TP
1K
TP
RJ
RJ
CA26
SY2
CA27
TE
EW
MJ
0
CA
ZLII
TP
TP
CA25
A
TKl }
EW2
Assign 64XXX CW
TF
TFI
TF3
TEl
EWI
YX
New file
Tn}
~CB
CW~list
~®
847
list
Level Checking Sub.
0
1
2
3
4
5
6
7
10
11
12
13
14
IA
MJ
MJ
0
TP
AT
TJ
TP
QJ
RJ
TP
RJ
TP
MJ
CA
DA
0
0
0
VAl
VA2
DA2
VC5
DA
WA
GY12
UP2
CA24
0
DA15
(30000)
DA3
40
A
A
DA
}
gA10 }
WAI }
UP3
Exit
Start
3210
I level +( level ~A
O.K.~ exit no ~
Prev. print ~exit
No ~
E57
UP
VC5
DA
Set Ind.
Exit
Inserted in region YX with jump
at YXl1 = MJ 0 KX
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
EJ
TP
QJ
TP
QJ
TP
ZJ
RJ
TP
RJ
TP
RJ
TP
RJ
TP
MJ
RJ
TP
RJ
TP
MJ
CA
KX
CG11
SY11
KX3
SY13
YXl2
VD
KX7
RO
SY2
RS2
RS3
GW
Q
EW
CA6
0
WA
GZ
UP2
CA36
0
KX25
YV
Q
YX12
Q
KX5
II
J
]
~X20 J
ROI
RS4
RS
A
GW1
EW2
EWI
PC3
YX
WAI
UP3
UP
PC3
YX
J
J
J
.~@
Const. ~ no
~YX12
Superscript ~ YXl2
no
~
After ~ before -7KX20
Check fixed pt. const.
Convert to octal
Assign CW
CW ~list
Set PC
~®
J
E58
set~
~B
848
with doesn't matter.
Check Vary List
,./l
0
1
2
3
4
5
6
'7
•
10
11
12
13
14
15
1"7"t7
~Jo\
1\..1
MJ
TP
ST
TP
QS
TP
0
RP
SY2
20000
(30000)
A
A
Q
KY6
A
KY
RT
lTT
1
v ...... .1.
......... .I.V
RJ
WA
SY2
SY2
GB22
UP2
0
KY16
~v
TP
TP
TP
RJ
MJ
CA
VL
CG26
CG27
A
}
Set up N of RP
UV1{\
Tl't
.....1£
Sym~A
Not in Vary List ~exit
.I.
'f
WAI
GB26 }
GB40
UP3
E28
UP
KY
Exit
849
Equation Translation
Right
Section
Section
Section
Section
Section
Section
Section
Region
ZM
DEGHI F F -
Switch = r / * - + , ; constant
Superscript symbols
POW ) (
VAR Before START
VAR After START, In pseudo Ope list
VAR After START, Not in pseudo Op. list
also ~ .
MB
Section
D
D
MD
D
ME
MA
D
D
D
D
D
D
D
D
D
D
ZZ
ZY
MY
ZX
MZ
ZW
ZV
XC
Region
Section
HL
ZR
NY
ZQ
FN
FM
FL
FP
ZN
G
G
G
G
G
G
G
G
HG
HH
HF
HC
E
XZ
H
HK
MS
MV
E
E
E
MX
E
H
H
H
H
MW
E
MN
MM
MQ
MG
MP
MK
MU
MT
E
E
E
E
E
E
E
E
E
E
HR
HU
HQ
XD
HZ
ZT
XG
XF
XH
MC
XQ
HS
NA
H
H
H
H
H
H
H
H
H
H
H
H
H
H
MH
MJ
ML
Region
XI
XE
XW
XV
XT
XR
XY
HN
HM
HY
HX
HW
ND
NE
NC
NB
HV
NL
NJ
NI
NH
NS
NP
NK
NG
NX
NW
NV
NN
FU
NF
FK
FJ
NZ
YV
850
Section
H
H
H
H
H
H
I
I
I
I
I
I
I
I
I
I
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F
F
Sections of connectors;
Connector
Section
D
F
D
E
H
I
851
Equation Translation
©
{I
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
IA
RJ
RJ
EJ
EJ
EJ
TP
QJ
TP
QJ
TP
QJ
EJ
EJ
EJ
EJ
EJ
EJ
EJ
EJ
EJ
RJ
TP
TP
RJ
TP
MJ
CA
ZM
PC
SY
CA30
CG6
CHS
SY7
-ZT
SY13
Me
SYll
ZV
CG4
CGS
CH6
CH7
CHIO
CHll
CG14
CGll
CG7
WA
SY2
GJ12
UP2
CA36
0
ZM32
PCl
SYI
ZN
ZQ
ZR
Q
ZM7
Pair check
Symbol ~A
(~ZN
)~ZQ
POW~ZR
}
ZW
+~ZX
-~ZY
ZZ
MA
*~ZZ
MD
YV
I-~
ll.
C
MB
=~MB
/~MA
IA
MB
RA
CA3
PC3
EW2 }
EWl
ZM
2
3
TP
RT
VA14
CA21
CGlS
EWO
4
MJ
0
CA
MBS
TP
Constant ----? ZV
No ~
, or ; ~ZW
no t
ZX
Zy
WAI
GJ16 }
UP3
UP
PC3
ZM
no
Superscript~@
}
Right
0
1
Var. --?ZT
~Mll }
~M13 }
ZW
Right
E42
Set PC
©
=
# ='8 + 1
Set PC
CW~ list
~@
852
+
no
+
Right
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
IA
MD
TP
SZ2
CG7
20005
CH5
0
EJ
RP
EJ
0
0
EJ
EJ
EJ
TP
QT
EJ
TP
EJ
MJ
TP
TP
RJ
TP
RA
RA
MJ
CA
0
CA30
CG4
CG5
EW2
CG30
CG32
Q
CH14
0
CA23
CH14
EW
CA27
VA4
VA2
0
MD26
A
MD17
MD6 }
MD17
0
0
MD17
MD17
MD17
Q
~D17 }
~D17 }
ME
PC3
EW2 }
EWI
VA3
CA3
CA3
ZM
Absolute Value
open
,
=
+ POW
-*
/ ---7
MD17
(
~open
J
Lib.-7 open
I ~open
0
Closed --7 ME
Set PC with 0 pen
CW ~string
flear (level raisers
level raisers + 1
Raise I level
~©
853
Absolute Value
I (Closed)
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
TP
RS
TJ
MJ
TP
RJ
TP
RJ
TP
ZJ
RJ
TP
RJ
TP
TJ
RS
TP
ZJ
TP
RJ
MJ
TP
QJ
TP
MJ
CA
ME
CA5
VA2
CA3
0
CA3
WA
GV
UP2
VA3
MEl2
WA
GH24
UP2
VA4
CA3
VA4
VA5
ME22
CHl3
EW
0
VAl6
ME22
CHl2
0
ME31
PC3
CA3
ME4
MEIO
Set PC
Lower level
Level too low ~ME4
~1i
UP3 }
Set level
OK~MEIO
E53
UP
~15 }
=
( Raisers
No ~
= 0 ~ME15
WAI
UP3
UP
}
E38
~20
}
~25
1 > I Level raisers
No ~
Raisers - I
}
SSe mode ~ no~ME25
Fixed CW~list
CA3
EW2
EWI
}
ZM
Q
ME27
EW2
ME23
}
}
~ME20
~©
Fixed Eq.~ME22
No ~
Floating CW ~list
854
Right
/
IA
~1AO
0
TU
1
2
3
4
5
6
TO
CHO
CHI
CA13
VA5
MA5
(30000)
EWO
0
VA16
MA5
(30000)
EWO
0
MA15
7
10
11
12
13
14
TP
TP
ZJ
TP
RJ
MJ
TP
QJ
TP
RJ
MJ
CA
MA12 }
MA5
PC3
Set for /
~10
Ss. mode ~ no ~MAI0
Fixed CW~list
EW2
EWI
ZM
Q
MA12
EW2
EWI
ZM
}
1
J
}
}
Set P.C.
~©
Fixed eq. ~MA5
No ~
Fl. C.W.~ list
~©
Right
*
IA
0
1
2
TU
TU
MJ
CA
ZZO
CH2
CH3
0
ZZ3
MA12
MA5
MA2
Fltpt. *
Fixed Pt. *
~/ sequence
855
Right
(minus)
TP
Zy
CA12
EW2
CG30
CG30
Cl14
Cl15
Q
CH12
CH13
CG34
VA5
ZY16
VA16
ZY16
CI16
RJ
EWO
MJ
0
CI17
EWO
0
ZY24
IA
0
1
2
3
4
5
6
7
10
11
Unary - 12
13
14
15
16
17
20
21
22
23
TP
TP
QT
EJ
EJ
EJ
TP
EJ
EJ
EJ
TP
ZJ
TP
QJ
TP
RJ
MJ
CA
PC3
Q
A
MY
MY
MY
A
MY
MY
MY
Set P.C.
Last CW~Q
}
Var.
Const.
Spec. CW
}
I
~Y14}
~Y21}
EW2 }
EWI
ZM
EW2
&WI }
ZM
~MYO
(closed)~MYO
)~MYO
SSe mode~ZY16
No ~
Fixed eq. ~ no~ZY21
Fixed unary - ~string
~@
Floating unary -
~string
~©
Binary - (minus)
or
+ (plus)
IA
0
1
2
3
4
5
6
7
10
11
12
13
TO
TO
TP
ZJ
TP
QJ
TP
RJ
MJ
TP
RJ
MJ
CA
MYO
CI35
CI36
VA5
MY6
VA16
MY6
(30000)
EWO
0
(30000)
EWO
0
MY14
MY6 }
MYll
Set for -
~Y4 }
~Y11}
Ss. mode
No ~
EW2 }
EW1
ZM
FJ/2}
EW1
ZM
~MY6
Fixed eq. + no ---+ MYll
Fixed +~string
~©
Floating
~©
856
+
~string
Right
+
IA
TP
zxo
0
1
2
3
4
5
TP
QT
EJ
EJ
EJ
CA12
EW2
CG30
CG30
CI14
CIl5
PC3
Q
A
Set PC
Last CW
MZO}
MZO
Var., Const .. or
Spec. CW~MZO
6
1't'
A
7
10
11
Unary +12
EJ
EJ
EJ
Q
MJ
CA
CH12
CH13
CG34
0
ZX13
~Q
MZO
t (closed) ~MZO
MZO}
MZO
MZO
ZM
)~MZO
~©
Binary +
0
1
2
IA
MZO
TU
CI37
CKO
0
MZ3
Tn
MJ
CA
Right
IA
TP
TP
ZJ
RS
TP
RJ
ZW
CAll
VA5
ZW3
VA36
CG36
PC3
A
ZW7
CA3
EW2
EW
EWI
6
7
10
11
12
13
14
15
16
17
20
21
22
23
MJ
ZM
A
ZW25
24
MJ
25
26
27
30
RJ
TP
RJ
0
VC10
CK1
VC10
(30000)
CA3
VAl
WA
VC30
(30000)
GY
UP2
VC20
(30000)
0
WA
GJ24
UP2
0
ZW31
0
1
2
3
4
5
TP
EJ
Tn
TP
AT
EJ
RJ
TU
TP
TP
RJ
TU
RS
MJ
CA
Set for
MY6 }
MY11
MY2
r
I
+
or ;
Set PC
}
>
)
SSe mode ~ no~ZW7
# commas - 1
CW~list
~©
Lib. mode ~ nO-7 ZW25
12
ZW22
Right level ~ZW22
}
No ~
WAI
ZW17 }
GY10
UP3
UP
ZW23 }
CA3
ZW4
WA1
UP3
UP
ZW4
}
E56
#
commas - 1
E43
857
1st Superscript Symbol
D2
IA
Me
RP
10010
CA27
CH31
CH22
CA3
CH15
VA5
MelD
WA
VA6
SY2
SY3
GD21
UP2
0
VA16
MC21
WA
SY2
SY3
GE
UP2
0
MC27
0
1
2
3
4
5
6
TP
TP
TP
TP
TP
TP
7
£,oJ
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
RJ
TP
TP
TP
TP
RJ
f'7T
MJ
TP
QJ
RJ
TP
TP
TP
RJ
MJ
CA
MC2 'I
VC 1
VA23 }
VA24
VA22
VA15
A
Mel7 ~)
WAI
GD37
GD26
GD27
UP3
UP
Clear variables
Set POW sequence
Set count
Set seq.
SSe mode
=1
I
no -?l'viC17
'*
E32
MK
Q
MK
}
Fixed eq.
WAI
GE5
GE6
UP3
UP
}
E33
~
MK
Sequence Loop
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
IT
20
IA
RJ
RJ
TP
QJ
RA
TJ
RJ
TP
RJ
RJ
TP
QJ
TP
AT
TP
MH
PC
SY
SY13
MH4
VA22
CH16
WA
GE16
UP2
SY
SY13
MHll
CA36
PDl
CG34
TF-
MJ
CA
MH21
PCl
SYI
Q
MJ
CA3
MK
WAl}
UP3
UP
SYI
~H14J
PeC.
Sym.-7A
Superscript V no~MJ
Count symbols
5 > # sym. ~MK
no ~
E34
Sym.~A
5
Superscript
No W
Set PC with "doesn't matter"
:C2 }
EW2
CW
S¥2'
A
Sym.~A
0
ZM2
=)
~©
859
~
#Sym
0
1
2
3
4
5
6
0
1
2
3
4
5
6
7
10
11
12
13
14
IA
TP
AT
AT
AT
0
TP
QJ
CA
IA
SP
SA
AT
AT
TJ
TP
QJ
RJ
TP
RJ
TP
TP
MJ
CA
MJ
CH17
CH21
VA22
CA3
30000
VC
ML
MJ7
4
) ~ Sequence
TP CG34
VA+
Dec. pt. in seq.
~
Dec. pt. in seq., i.e., not spec. case
~
]
4
5
6
7
IA
TV
RA
TP
QS
RP
TP
RA
MJ
CA
ML
no~MM
ML
VA22
VA22
CA26
EW3
CJ10
F..W4
ML12
WA
FI
UP2
CJ10
CA24
0
ML15
17
~A15
A
MN
Q
ML7
WA1
UP3
UP
EW3
EW4
MH16
}
# sym in seq.
~A~VA15
Add.~A
Fit in
}
}
Prey.
1ist~MN
print~ML12
F16
Set limit
Set indo
Seq. Fits in List
0
1
2
3
~
Not superscript
A
A
A
MJ4
30000
Q
MM
MN
EW3
MN5
CG27
VA15
30000
VA23
EW3
0
MN10
MN5 }
CA3
Fix address
~4}
Set n of repeat
MN6
}
(30000)
VA15
MH16
Seq. ~list
Set address.
860
no ~
no
+
Possible Special Case
IA
0
1
TP
EJ
2
3
4
5
6
MJ
TP
TP
EJ
TP
'7
EJ
10
11
12
13
14
15
16
17
20
21
22
23
24
EJ
•
TU
TU
TP
TP
EJ
MJ
RA
RA
IJ
TP
RJ
MJ
CA
MMO
VA32
CIO
CA27
0
CH37
VA22
CH24
CA3
CH25
CH26
CH27
CH24
(30000)
(30000)
0
MM14
MM15
VC1
CH30
EWO
0
MM25
A
MM4
VC3
MM5
VC3
~G
>
J
-
~MM4
Clear VC3
}
MP
MQ
MM14 }
MM15
VC1
~M17
}
MLO
CH22
CH22
MM14
EW2 ~
EW1 J
MH17
}
Set VC3 for #. symbols = 3 ~MGO
No ~
= l~MPO
= 2~MQO
4 ~
Set loop addresses
Set index
- 1/2~A
= ~MM17 ~
~MLO
Modify
Return
16100 ~ CW of - 1/2 ~list
~©
Two Symbols in Sequence
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
TP
EJ
MJ
TP
EJ
EJ
EJ
TP
QJ
TP
RJ
TP
TJ
SP
SA
AT
RJ
MJ
CA
MQ
VA32
CI
0
VA33
Cl1
CI3
CI4
SZll
MQll
MI2
RS2
CH32
RS3
RS3
Ve3
CI5
~Q3 }
ML
A
MX
-~MQ3
No~ML
Next sym.
MS
MV
Q
ML
RS4 }
RS
A
}
MW
}
0 }
o
EW2
FlY
EWI
0
MQ22
MH16
= 1-7MX
::: 2 ~MS
= 3~MV
Constant ~
No~ML
Convert to octal
#.
>
77~MW
no ~
13Oxx}
131xx
861
~list
no
#
0
1
2
3
4
5
6
7
10
11
12
13
IA
TU
TO
TP
TP
EJ
MJ
RA
RA
IJ
TP
RJ
MJ
CA
MG
CH34
CH27
CH25
(30000)
(30000)
0
MG3
MG4
VCI
CH33
EW
0
MG14
symbols in sequence = 3
MG3
MG4 }
VCl
A
MG6
ML
CH22 }
CH22
MG3
EW2
EWI }
MH17
#
0
I
2
3
4
IA
MP
TP
EJ
EJ
EJ
MJ
CA
VA32
Cli
CI3
CI4
0
MP5
A
MHl6
MS
MV
MQ7
Set loop addresses
Set index = 2
1/2~A
= Special case ~MG6
'#
~ML
Modify addresses
CW ~list
~©
symbols = I
=l~©
=
=
2~MS
3~MV
~MQ7
862
Superscript Symbol
AT
MKO
SYll
MTO
SY2
CG12
CA16
VA22
CH17
A
CH35
VA22
CH20
TV
A
TP
MJ
CA
SY2
0
MK16
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
TP
QJ
TP
EJ
TP
TP
AT
TV
TP
TP
"
Q
}
MK2
A
MU
PC3
A
A
MKlO
(30000)
Constant ~MTO
no ~
}
-~MU
No (assume /)
Set PC
1J I
~
~sequence
I ~ special sequence
A
A
}
MK14
(30000)
MH
~get
next symbol of sequence
Superscript 0
1
2
3
4
5
6
7
10
11
IA
MUO
TP
TP
AT
CA15
VA22
CH17
A
CH36
TV
TP
TP
AT
TV
TP
MJ
CA
VA.22
CH20
A
SY2
0
MU12
Set PC
e3
r
A
}
MU4
(30000)
A
A
MUIO
(30000)
MH
-
~
J
~sequence
-~specia1
~return
863
sequence
Superscript
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
IA
MT
TP
RJ
TP
RJ
TP
TP
RJ
TP
RJ
CA14
RB
S¥2
SY3
MI
MI2
MI3
GG2
GG3
GW
TP
Q
TP
VA22
CH17
TP
AT
TV
TP
TP
AT
TV
TP
TP
ZJ
TP
MJ
CA
A
VC2
VA22
CH20
A
GG3
SY6
MT25
CA24
0
Up Constant
PC3
RBI
MI4 }
MI5
MIl
GG4
GG5 }
GG
Set PC
Check constant
~Wl
Assign CW
Lower constant
Convert to floating point
}
Store CW
C2
A
X
}
CW ~ sequence
A
A
}
Fltpt. const. ~
Special sequence
MT16
(30000)
MT22
(30000)
A
MH
VC
MH
}
Pt. in sequence
Set ind.
~return
MT27
Constant = 2
0
1
2
3
IA
MS
TP
AT
RJ
MJ
CA
VC3
CI6
EW
0
MS4
A
EW2}
EWl
MH17
CW ----+ 1i s t
864
J
no~MH
Constant
0
1
2
3
IA
TP
AT
RJ
MJ
CA
=3
MV
A
VC3
CI7
EW2
EWI
MH17
EW
0
MV4
CW~list
--+@
Constant
0
1
2
IA
MX
TP
ClIO
EW
0
MX3
RJ
MJ
CA
EW2}
EWI
MH17
I
Const.
o
IA
RA
MW
VA23
CA3
1
MJ
0
ML
CA
MW2
=1
CW~ list
~©
> 77
Change POW to 101
865
Right POW
IA
0
1
2
3
4
5
6
7
10
11
TP
RJ
TP
TP
ZJ
RJ
TP
TP
RJ
MJ
CA
ZR
CH37
EWO
CA17
VA5
ZR5
WA
VA6
GF
UP2
0
ZR12
CW~
string
EW2 }
EWI
PC3
Set PC
~Y
SSe mode
}
~
no~NY
WAI }
GFlO
UP3
UP
ZM
E35
~©
Not SSe mode
IA
0
1
2
3
4
5
TP
QJ
RJ
TP
RJ
MJ
CA
NY
VA16
NY2
WA
GF12
UP2
0
NY6
Q
ZM
}
Floating pt.
No
+
WAI }
UP3
UP
ZM
E36
~©
Right
0
1
2
3
4
5
6
7
10
11
12
13
14
15
IA
TP
TP
RJ
TP
ZJ
TP
ZJ
RS
RS
TJ
EJ
TU
EJ
MJ
CA
ZQ
CA5
CG34
EWO
VA4
FP
VA3
ZQ7
VA3
VAl
CA3
VA5
VCI0
(30000)
0
ZQ16
PC3
EW2 }
EWI
~Q5 }
A
ZQ10
CA3
CA3
FLO
FM
ZQ14}
FN
ZM
eq.~ZM
)
Set PC
CW~string
Last raiser I~FP
no ~
( raisers = 0 ~ ZQI0
No
( raisers - 1
Lower level
Too low~FLO
Leaving Ss. mode ~FMO
Leaving Lib.~FNO
+
~©
866
Leaving Lib.
0
I
2
3
4
5
6
7
10
11
12
13
L4.
TO
TP
ZJ
RJ
TO
TP
TP
RJ
RS
RS
RS
MJ
CA
FN
VC20
(30000)
FN3
WA
VC30
(30000)
GH
UP2
velO
VC20
VC30
0
iNl }
#
FNIO
No
commas c orrect ~FN10
J
WAI
FN5 }
GH13
UP3
UP
_
CH23 }
CH23
CH23
ZM
E37
Take Lib. off list
~@
FN14
Leaving SSe mode
IA
0
1
2
3
4
5
6
7
TP
TP
ZJ
RJ
TP
TP
RJ
MJ
CA
FM
CA27
VA36
FM3
WA
VA6
GI12
UP2
0
FMIO
VA5
A
ZM
WAI
GI17
UP3
UP
ZM
J
Clear SSe mode
# SSe correct-+@
No
J
E40
+
--+@
Level too Low
o
1
2
3
4
5
6
7
IA
FL
TP
TP
QJ
RJ
TP
RJ
TP
MJ
CA
CA3
VA
ZM
WA
GI
UP2
CA24
o
FLIO
=
VAl
Q }
FL3
WAI
QP3
UP )
VA
Set level 0
Previous point --+ZM
No ~
ZM
~\0
1
E39
Set ~oint
867
Interlocking ( and
IA
0
I
2
3
RJ
TP
RJ
MJ
CA
FP
WA
GH24
UP2
0
WAl}
E38
UP3
UP
ZQIO
~)
Section
FP4
Right (
0
I
2
3
4
5
6
7
10
II
12
13
14
IA
TP
TP
ZNO
CA4
CG24
RJ
TP
ZJ
RJ
TP
EW
PC3
EW2
EWI
VA5
ZN5
~II }
Not Ss. mode
SSe mode
WAI }
E41
TP
RJ
TP
RA
RA
MJ
CA
WA
VA6
GJ
UP2
CA27
VA3
VAl
0
ZNI5
GJIO
UP3
UP
VA4
CA3
CA3
ZM
}
}
Set PC
CW --+string
+
~ZNII
Clear J level raisers
Raise level
~©
868
Right-Constant
IA
01
0
1
2
3
4
5
6
7
10
11
12
13
14
TP
TP
ZJ
TP
QJ
RJ
TP
RJ
TP
RJ
TP
RJ
MJ
CA
ZVO
CA6
VA5
ZV5
VA16
ZV5
RD
SY2
RS2
RS3
GWO
Q
EWO
0
ZV15
PC3
A
ZV3
Q
XCO
ROI
RS4
RSO
]
Set PC
SSe mode~ZV5
No ~
J
J
Fixed eq. ~ no~XCO
Check const.
Convert to fixed point
~lJ
IDV2
£WI
J
ZM
Assign CW
CW~ string-out
~----;'list }
Floating Point Constant
0
1
2
3
4
5
IA
RJ
TP
TP
RJ
TP
MJ
CA
XCO
RBO
SY2
SY3
GG2
GG3
0
XC6
~~!}
GG5
GGO
A
ZVll
Check const.
Convert to fltpt.
Const.
858
~A
err. #1
Right - Yare - Before
C9
0
1
2
3
4
5
6
IA
TP
ZJ
RJ
MJ
TP
RJ
TP
7
ZJ
10
11
12
13
14
15
16
17
20
21
22
23
TP
QT
EJ
TP
QJ
RJ
TP
TP
TP
RJ
TP
MJ
CA
ZT
VO
A
XD
Z1'"2
TU
TOl
XE
EW2
EWI
A
0
TU3
EW
VA5
ZTI0
TU3
CG17
CI25
SY10
ZT22
WA
SY2
VA6
ER
UP2
CA6
0
ZT24
1
)
}
}
Before ~ZT2
After --+XD =0
Not in Ftn. list---+XE
In i
CW --+ string
XF
Ss. mOde!
Q
A
XG
Q
ZT15
CW~A
}
WAI }
ER6
ER20
UP3
UP
PC3
ZM
no~XF
75xxx ....-+XG
no ~
Assume 62xxx
IJKLM ~ZT22 no ~
E21
Set PC
~©
Right - In Ftn. list SSe mode 75xxx
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
TP
RJ
RJ
TP
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
XG
CA7
PC
WA
SY2
VA6
EP22
UP2
SY
CA30
0
GP17
UP2
FV
0
0
XG17
PC3 }
PC1
WAI '"
EP30 }
EP41
UP3
UP
SY1
XG12
ZM3
UP3
UP
FV1
YV
ZM1
~PC
E20
Sym~A
(©XG12
~C
}
no
~
"SSe not checked"
delete SSe
II • ~@
~©
869
Not SSe mode-in Ftn. list
0
1
2
3
4
5
6
7
10
11
12
IA
XF
TP
TU3
CG17
CI25
SYI0
XF5
WA
SY2
ER22
UP2
CA6
0
XF13
QT
EJ
TP
QJ
RJ
TP
TP
RJ
TP
MJ
CA
Q
A
xxOOO
}
~A
no
75xxx~XlI
~11 }
IJKLM ~ no ---;.XFll
WAl}
ER27
E22
UP3
UP
PC3
ZM
Set PC
~©
75xxx
0
1
2
3
4
5
6
IA
TP
RJ
RJ
EJ
RJ
TP
TP
7
RJ
10
11
TP
MJ
CA
XlI
CA7
PC
SY
CA30
WA
SZ2
EX
UP2
SY2
0
XH12
1
2
3
4
5
6
IA
TP
TP
TP
TP
TP
RJ
MJ
CA
PC
Do
PC3 }
PCl
SYI
XI
Sym~A
(~XI
WAl}
EX6
E23
UP3
UP
A
ZM3
no ~
iym@)'
A
C
~
75xxx
0
(
XI
CA4
VAl
SZ2
CA27
CG24
EW
0
XI7
+
XlI
PC3
VA5 }
VA6
VA36
EW2 }
EWI
ZNll
Set PC
Set SSe mode
Clear
#
commas
CW~list
----;. (~®
870
Right-Before-Var.
Not in Ftn. list
0
1
2
3
4
5
t..
V
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
IA
RJ
MJ
TP
RJ
XE
TA
0
TA4
EW
CA6
VA16
TAl }
XQ
EW2 }
EW1
PC3
Q
{\T
XE7
XR
TP
TA4
CG17
CG17
CA33
CA31
CA25
CA20
PC
WA
SY2
EL
UP2
SY
CA30
0
GP
UP2
FV
0
0
XE33
Q
A
XT
TP
TP
'l'"
QT
EJ
EJ
EJ
EJ
'IP
RJ
RJ
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
Not in CB
Set PC
Not
fixed
..... •
•
I
I' lxea ~
J>
77xxx~
66xxx~
65xxx~
XV
XW
ZM
PC3
PC1
}
WAl}
EL4
UP3
UP
SY1
XE26
ZM3
UP3
UP
FV1
YV
ZM1
}
IA
WA
TP
TP
SY2
RJ
MJ
CA
EL12
UP2
0
XW5
WAI }
EL17
UP3
UP
ZM
XT
XV
Sym~A
(-- XE@;
No~C
"Args not checked"
D.31ete LIB
a.~
~C
XW
RJ
eq.~XR
XW
64xxx~©
5xxxx ~
Do PC
E13
65xxx
0
1
2
3
4
List~XQ
CW~list
E14
~®
871
in
J
66xxx
IA
xv
2
RJ
RJ
o TP
3
TP
CAI0
PC
WA
SY2
4
TP
EM
5
RJ
RJ
EJ
MJ
TP
RJ
RJ
UP2
SY
CA30
0
GP
UP2
1
6
7
10
11
12
13
14
15
MJ
MJ
CA
FV
0
0
PC3 }
PCl
WAI
EM3 }
UP3
UP
SYI
PC
Do
E15
Sym~A
(~XVII
~©
XVII
ZM3
UP3 }
UP
FVI
YV
ZMl
no ~
"Args not checked"
n.~lete ~.
6.
·--+8
~©
XV16
77xxx
0
1
2
3
4.
5
6
7
10
11
12
13
14
15
IA
TP
RJ
RJ
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
XT
CA7
PC
WA
SY2
EMIl
UP2
SY
CA30
0
GP17
UP2
FV
0
0
PC3 }
PCl
Do
PC
WAI
EM17}
UP3
UP
SYI
XTll
ZM3
UP3 }
UP
FVl
YV
ZMl
E16
Sym~A
(--CS
No~
I
C
-S5. not checked"
Delete ~.
tJ. • ~ C2
~C
XT16
872
Var.
Before - In CB List
Floating Point Equation
IA
XR
0
1
TP
ZJ
2
TP
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
QT
EJ
VA5
XY
TA4
CG17
CG17
CA33
CA31
CA25
CA20
PC
TA4
CI31
CH25
SY
CA30
SZ2
WA
EJ
EJ
EJ
TP
RJ
TP
QT
TJ
RJ
EJ
TP
RJ
TP
RJ
TP
MJ
CA
EN
UP2
SY2
0
XR25
A
XR2
Q
A
Xl
HC
ZM
HF
PC3
PC1
J
1
J
IA
TP
RA
TJ
RS
RJ
TP
TP
RJ
RJ
MJ
MJ
CA
HG
VAl
VC20
CI33
VC20
WA
SZ2
GM11
UP2
FV
0
0
HG13
64xxx~
5xxxx
#
+
HF
pair check
operands = 1~~
~
No
(~HG
J
no
~
E17
Sym~A
~~
VA12
~3}
CH23
WAl}
GM25
UP3
UP
FVl
YV
ZM1
A
77xxx-+ XZ
66xxx~ HC
Sym~A
Lib.
0
1
2
3
4
5
6
7
10
11
12
xxOOO~
65xxx~©
~A13
J
ZMl
SYI
HG
EN5
WAI
UP3
UP
A
ZM2
S8. mode-XY
No
(
Set Lib.
Room+for
No
Add. - 1
Lib.~HH
E49
Delete Lib. args
11
,©C2
~C
873
Room for Lib.
IA
lllI
0
TV
1
TP
ST
A
VA13
CA3
VCI0
A
VA12
VC30
A
SZ2
0
HH12
2
3
4
5
6
7
10
11
RA
TV
TP
RA
TV
TP
MJ
CA
HH2
~30000)
}
#
CH23
HU5
}
(30000)
CH23
HUI0
}
conunas---;.list
Lib.
level~list
XS3 of
Lib.~list
(30000)
ZN
~(
section
64xxx
0
1
2
3
4
IA
RJ
TP
TP
RJ
MJ
CA
HF
WA
SY2
EK20
UP2
0
HF5
WAl}
EK25
UP3
UP
ZM
E12
~©
Floating Pt. Eq.
Right
66xxx
IA
0
1
2
3
4
TP
RJ
RJ
EJ
MJ
CA
HC
CAIO
PC
SY
CA30
0
HC5
PC3 }
PCl
SYI
WD
ZM3
i
Pair check
Sym~A
(~WD
~@
874
no
~
~
77xxx
0
1
2
3
4
5
6
7
10
11
IA
Xl
IP
RJ
RJ
EJ
RJ
IP
CA7
PC
SY
CA30
WA
SZ2
EN22
UP2
SY2
0
Xl12
TP
RJ
TP
MJ
CA
Pair check
PC3}
PC1
SY1
HK
Sym-+A
WAI
EN30
K18
UP3
J
(~HK
UP
A
ZM3
Sym~A
~®
77xxx
0
1
2
3
4
5
6
7
10
IA
HK
TP
TP
QT
ST
TP
TP
TP
RJ
VAl
TA5
CA2
CA3
SZ2
CA4
CG24
EW
0
HK11
MJ
CA
no ~
VA5 }
t36
VA6
PC3
KW2 }
EW1
ZN11
(
Set Ss. mode
Ss. -
1~VA36
Store XS3 of variable
Set PC
(~ list
~(~©
875
SSe mode - Right - In CB List
0
IA
TP
1
QT
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
EJ
EJ
EJ
EJ
TP
RJ
RJ
TP
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
XY
TA4
CG17
CG17
CA33
CA31
CA25
CA20
PC
WA
SY2
VA6
EJ
UP2
SY
CA30
0
GP25
UP2
FV
EJ13
UP3
UP
SYI
XY20
ZM3
UP3 ]
UP
FVl
0
YV
0
XY25
ZMl
Q
A
}
xxOOO~
A
HL
77xxx~
HL
lIM
66xxx-+ lIM
HN
65xxx~ lIN
ZM
PC3
PCl
}
64xxx~©
5xxxx ~
Do pair check
WAI
EJ4 }
E9
Sym--+A
(~XY20
---+@
IA
TP
CA6
PC3
RJ
WA
TP
SY2
VA6
ER
UP2
0
HN7
WAl}
ER6
TP
TP
De~~ Lib.
~C
RJ
MJ
CA
HN
ER20
UP3
UP
ZM
~
"Args not checked"
65xxx
0
1
2
3
4
5
6
no
Set PC
E21
~@
876
66xxx
0
1
2
3
4
5
6..,
,
10
11
IA
JIM
TP
RJ
RJ
TP
CAIO
PC
WA
5Y2
VA6
EJ15
UP2
PC3 }
PCl
Do PC
WAI
EJ20 }
EJ25
UP3
UP
EI0
SY
SYI
Sym
CA30
0
HM12
WD
ZM3
~@
TP
TP
RJ
RJ
EJ
MJ
CA
~A
(~WD
I
no
+
77xxx
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
IA
HI...
TP
RJ
RJ
TP
TP
TP
RJ
RJ
EJ
CA7
PC
WA
5Y2
VA6
E120
UP2
SY
CA30
0
GP17
UP2
FV
0
MJ
TP
RJ
RJ
MJ
MJ
CA
0
PC3 }
PCl
Do PC
~~~6}
EI35
E8
UP3
UP
SYI
HL12
ZM3
UP3
UP
FVi
YV
ZMl
Sym~A
(~HLI2
~@
}
no
~
"Ss. not checked"
"'"'" ....
uele,&e .,~
8.. ----+ C2
-
----+@
HL17
877
~-
Variable Right - Before Not in Ftn. or CB Lists
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
IA
XQ
RJ RH
TP CA27
TP CA26
TP SY2
TP VA16
QJ . HQ
TP VA5
ZJ
XQlO
TP SYlO
QJ XQ12
RJ TK
AT CA25
TP A
RJ EW
RJ TE
TP CA6
MJ
0
CA XQ21
RHI
TF3
TF
TFI
Q
XQ6
A
HR
Q
HS
TKl
TF2
EW2
&WI
TEl
PC3
Check symbol
Set to add to CB List
}
Fixed ~HQ
No ~
Not Ss.~HR
SSe ~.
Not IJKLM~HS
Yes t
CW = 64xxx
}
}
}
}
}
CW~list
Fi Ie --->CB List
Set PC
~©
ZM
Not IJKLM
0
1
2
3
4
5
6
7
10
II'
12
13
IA
HS
RJ
TP
TP
WA
SY2
VA6
EK
UP2
TP
RJ
RJ
AT
TP
RJ
RJ
TP
MJ
CA
1K
CA3l
A
EW
TE
CA6
0
HS14
WAI
EK6 }
EK16
UP3
UP
TKl
EW2 }
TF2
EWI
TEl
PC3
ZM
Ell
Assign 65xxx CW
CW --;..list
file~CB
set@)
~C
878
List
Not Ss. Mode
IA
HIl
CA6
SYIO
HU
TP
TP
QJ
RJ
AT
TP
RJ
TK
7
RJ
TE
10
MJ
0
HIll 1
0
1
2
3
4
5
6
CA
CA3'!
A
EW
PC3
Q
HIl3
TKl
TF2
EW2
EWI
TEl
'\
j
}
}
ZM
Set PC
IJKLM-;.HU
No ~
65xxx CW
CW
~list
File -+CB List
~©
IJKLM
0
1
2
3
4
5
6
7
10
11
12
IA
HU
RJ
TP
TP
RJ
RJ
WA
SY2
EK20
UP2
AT
CA25
A
EW
TE
CA6
0
HU13
TP
RJ
RJ
TP
MJ
CA
TK
WAI }
ER25
UP3
UP
TK1 }
TF2
EW2 }
EW1
TEl
PC3
ZM
E12
Assign 64xxx CW
CW~list
File ~CB List
Set PC
~©
Fixed Equation
o
1
2
3
4
5
6
IA
TP
QJ
RJ
TP
TP
RJ
HQ
SYlO
XQll
WA
SY2
EL12
UP2
MJ
o
CA
HQ7
IJKLM~XQll
No ~
E14
~65xxx
879
CW
Right-After-Var. In P.Op. List
0
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
RJ
MJ
TP
RJ
TP
TP
QJ
TP
ZJ
TP
QI
EJ
EJ
TP
RJ
RJ
EJ
RJ
TP
TP
RJ
TP
MJ
CA
XD
TS
0
1'53
EW
CA6
VA16
HW
VA5
HX
IS3
CG17
CG21
CG22
CA7
PC
SY
CA30
WA
SZ2
EP
UP2
SY2
0
XD27
1'51
HV
EW2
EWI
PC3
3
J
~]
~IIJ
J
Q
A
HY
HZ
PC3J
PCI
SYI
NA
J
UP3
WAI
EP6
UP
A
ZM3
Not in P.Op. list ~ HV
In +
CW ----;.. string
Set PC
Fixed eq.
No ~.
SSe mode ---+HX
No ~
xxOOO~A
6Ixxx~HY
63xxx~HZ
76Yxx
Dope
IA
IP
QT
LQ
TP
ST
IP
IP
IP
RJ
TP
MJ
CA
NA
TS3
CG25
Q
Q
CA3
VAl
SZ2
CG24
EW
CA4
0
NA13
Q
Q
36
+
Sym~A
(~NA
no ~
E19
Sym~A
--+@
76Yxx
0
1
2
3
4
5
6
7
10
11
12
~HW
}
~A36}
VA5 }
VA6
EW2 }
EWI
PC3
ZNll
(
#Ss.~Q
#
commas -->VA36
Set SSe mode
(
CW~list
Set PC
~
880
(--+@
63xxx
0
1
2
3
4
5
6
IA
HZ
TP
QJ
RJ
TP
TP
RJ
MJ
SYIO
HZ2
WA
SY2
EI
UP2
0
£"11.
vl'1.
HZ7
J
Q
ZM
WAI
EI5
UP3
UP
ZM
IJKLM ~ no-;.@
}
E1
----=-(0
61xxx
IA
0
I
2
3
TP
RJ
RJ
EJ
4
MJ
CA
BY
CAI0
PC
SY
CA30
0
HY5
PC3
PCI
SYI
WD
ZM3
}
Do PC
Sym~A
(~WD
~©
no
SS Mode
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
TP
QT
EJ
EJ
TP
RJ
RJ
TP
TP
TP
RJ
RJ
EJ
MJ
RJ
MJ
HX
TS3
CG17
CG2I
CG22
CA7
PC
WA
SY2
VA6
EH
UP2
SY
CA30
0
FV
0
MJ
0
CA
HX21
Q
A
NB
NC
pe3
PCl
WAI
EH6
?
xxOOO~A
)
J
j
EH20
UP3
UP
SYI
HX16
ZM3
FVl
YV
ZMl
61xxx~NB
63xxx~NC
76Yxx J,
Do PC
E5
Sym~A
(-+HX16
~©
Delete SS
~ ~®
--+©
881
~
Fixed Equation
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
TP
QT
EJ
EJ
TP
RJ
RJ
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
HW
TS3
CG17
CG21
CG22
CA7
PC
WA
SY2
EF16
UP2
SY
CA30
0
GPI0
UP2
FV
0
0
HW22
Q
A
NO
NE
PC3
PCl
}
xxOOO-+ A
61xxx-+ NO
63xxx~NE
76Yxx ,
Do PC
}
WAI }
EF24
UP3
UP
SYI
HW15
ZM3
UP3
UP
FVl
YV
ZMI
E2
Sym----+A
(~HW15
}
~©
"Ss. not checked"
Delete ~
~
,,--+
-+@
C2
6 I xxx
IA
0
I
2
3
4
5
6
7
10
TP
RJ
RJ
TP
TP
RJ
RJ
EJ
MJ
CA
NO
CAIO
PC
PC3 }
PCl
WA
SY2
WAl}
EF4
EF
UP2
SY
CA30
0
NOll
UP3
UP
SYI
WO
ZM3
00 PC
El
Sym~A
(©D
~C
882
no
~
63xxx
IA
NE
3
TP
QJ
RJ
TP
4
TP
5
RJ
MJ
CA
SY10
ZM
WA
SY2
EG
UP2
o
1
2
6
IJKLM~©
no t
E3
0
NE7
SS Mode 63xxx
IA
0
1
2
3
4
5
6
7
TP
QJ
RJ
TP
TP
TP
RJ
MJ
CA
NC
SY10
ZM
WA
SY2
VA6
EH22
UP2
0
Q
NC2
}
IJKIM~©
No ~
WAI
EH30 }
EH42
UP3
UP
ZM
NC10
E6
~©
61xxx
0
1
2
3
IA
TP
RJ
RJ
TP
4
TP
5
TP
6
RJ
7
RJ
EJ
MJ
CA
10
11
NB
CA10
PC
WA
SY2
VA6
EG20
UP2
SY
CA30
0
NB12
PC3 }
PC1
Do PC
WAI
EG24 }
EG36
UP3
UP
SY1
WD
ZM3
E4
Sym~A
(~WD
~
883
Right, After, Yare Not in Pseudo Ope List
lA
RJ
MJ
TP
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
HV
TA
0
TA4
CG30
CG31
TA4
EW
CA6
VA16
NG
VA5
NH
TA4
CG17
CG17
CA25
CA31
CA33
CA20
PC
TA4
C131
CH25
SY
CA30
WA
S22
EN
UP2
SY2
0
HV37
QT
EJ
TP
RJ
TP
TP
QJ
TP
2J
TP
QT
EJ
EJ
EJ
EJ
TP
RJ
TP
QT
TJ
RJ
EJ
RJ
TP
TP
RJ
TP
MJ
CA
TAl]
NF
Not in CS
:u ]
No
EW2
EWI
PC3
Set PC
J
I
2
3
4
IA
TP
NL
RJ
RJ
EJ
MJ
CA
PC
Sy
CAIO
CA30
0
NL5
in
~
J
CW~list
Fixed~NG
av12 }
~14 ]
Q
A
Nl
NJ
2M
NL
PC3
PCl
J
UP
A
2M3
CW-+A
77 xxx ---+ NI
64xxx~NJ
65xxx~
1
~A13J
2Ml
SYI
HG
WAI
EN5
UP3
Floating ~
SSe mode~NH
No ,
j
66xxx~NL
5xxxx ~
Do PC
CW~A~VAI3
# operands = 1~(f)
Sym. ---::. A
(~HG
no ~
E17
Sym@_A
~C
66xxx
0
List~NF
4xxxx~FU
PC3}
PCI
SYI
WD
ZM3
Pair check
Sym~A
(~WD
~©
884
no
~
64xxx
I4.
2
3
RJ
TP
TP
RJ
4
MJ
0
1
CA
NJ
WA
SY2
EK20
UP2
0
NJ5
WAI }
EK25
UP3
UP
E12
~©
ZM
77xxx
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
IA
NI
TP
RJ
RJ
EJ
RJ
GA7
TP
TP
RJ
TP
MJ
TP
TP
TP
Q.T
ST
TP
RJ
TP
MJ
CA
PC
SI
CA30
WA
SZ2
EN22
UP2
SY2
0
VAl
SZ2
TA5
CA2
CA3
CG24
EW
CA4
0
NI23
Do PC
PC3 }
PCl
SYI
NI12
Sym.~A
(~NI12
WAI }
EN 30
UP3
UP
A
ZM3
VAS }
VA6
~A36
EW2
EW1
PC3
}
no '"
EI8
Sym~A
~©
Set Ss. mode
Ss. - 1 - + storage
(~1ist
}
Set PC
~ ( section ~
ZN11
885
©
SSe Mode
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
IA
TP
QT
EJ
EJ
EJ
EJ
TP
RJ
RJ
TP
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
NH
TA4
CG17
CG17
CA25
CA31
CA33
CA20
PC
WA
SY2
VA6
EJ
UP2
SY
CA30
0
GP25
UP2
FV
0
0
NH25
Q
A
}
xxOOO--+ A
NK
ZM
NP
NS
PC3
PC1
77xxx~
NK
64xxx~@
65xxx~ NP
66xxx~ NS
5xxxx ,
}
Do PC
WAI
EJ4 }
EJ13
UP3
UP
SYI
NH20
ZM3
UP3
UP
FVl
YV
ZMl
E9
}
Sym.--+A
(---+ NH20
no.
--+@
"Args not checked"
Delete Lib.
fl ~YV
~©
66xxx
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
TP
RJ
RJ
TP
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
NS
CAI0
PC
WA
SY2
VA6
EJ15
UP2
SY
CA30
0
GP
UP2
FV
0
0
NS17
PC3 }
PCl
Do pa i r check
WAI}
EJ20
EJ25
UP3
UP
SYI
NS12
ZM3
UP3
UP
FVl
YV
ZMl
EI0
Sym~A
(~NS12
~©
no
•
"Args not checked"
Delete ~uments
/1, --+C
~@)
886
65xxx
RJ
TP
TP
NP
WA
SY2
VA6
TP
EK
RJ
MJ
CA
UP2
IA
0
1
2
3
4
5
0
WAl}
EK6
EK16
UP3
UP
ZM
NP6
Ell
-+@
77xxx
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
IA
NK
TP
RJ
RJ
CA7
PC
WA
SY2
VA6
EI20
UP2
SY
CA30
0
GP17
UP2
FV
0
0
NK17
TP
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
PC3 }
PCl
Do PC
WAl
EI26 }
EI35
UP3
UP
SYI
NK12
ZM3
UP3 }
UP
FVl
YV
ZMl
E8
Sym~A
(~NK12
~©
no
"S5. not checked"
Delete
@
ll.~C
~©
887
~
Fixed Equation
0
IA
TP
1
QT
2
3
4
EJ
EJ
EJ
EJ
TP
RJ
RJ
TP
TP
RJ
RJ
5
6
7
10
11
12
13
14
15
16
EJ
MJ
CA
NG
TA4
CGl7
CGl7
CA33
CA3l
CA25
CA20
PC
WA
SY2
EL
UP2
SY
CA30
0
NG17
Q
A
NN
NV
}
NW
ZM
PC3 }
PCl
WAI
EL4
UP3
UP
SYI
NX
ZM3
xxOOO~
77xxx-+ NN
66xxx-+ NV
65xxx -+ NW
64xxx~@
5xxxx
Do PC
E13
Sym~A
(~NX
IA
TP
RJ
RJ
MJ
MJ
CA
NX
GP
UP2
FV
0
0
NXS
UP3
UP
FVl
}
YV
ZMl
0
1
2
3
4
IA
NW
WA
SY2
ELl2
UP2
0
NW5
TP
TP
RJ
MJ
CA
WAl}
EL17
UP3
UP
ZM
V
(
"Args not checked"
Delete ~.
/1. ~ C2
~©
65xxx
RJ
no
---+@
5xxxx
0
1
2
3
4
A
E14
--+@
888
66xxx
0
1
2
3
4
5
6
7
I
10
11
12
13
14
15
IA
TP
RJ
RJ
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
NV
CA10
PC
WA
SY2
EM
UP2
SY
PC3 )
PC1 j
Do PC
WAl}
EM3
E15
CA30
NVll
0
GP
UP2
FV
0
0
NV16
ZM3
UP3 }
UP
FV1
YV
ZM1
UP3
UP
SY1
Sym~A
(~NVll
~©
=:g
"Args not checked"
args
77xxx
IA
0
1
2
3
4
5
6
7
TP
RJ
RJ
TP
TP
RJ
RJ
EJ
NN
CA7
PC
WA
SY2
EMIl
UP2
SY
CA30
PC3
PC1
EM17
UP3
UP
SY1
NN11
lY1~
0
LtlYl.)
11
12
13
14
15
TP
RJ
RJ
GP17
UP2
FV
0
UP3
UP
FVl
YV
ZM1
0
NN16
E16
Sym.~A
(~NN11
-~
~~
P7l1.n
1I.T
CA
Do PC
WAI }
10
MJ
MJ
}
}
no
~
"SSe not checked"
Delete SSe
fl. ~®
~©
889
Right, After, Not in P.Op. list
4xxxx
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
TP
RJ
RJ
TP
TP
RJ
RJ
EJ
MJ
TP
RJ
RJ
MJ
MJ
CA
FU
CA6
PC
WA
SY2
GQ21
UP2
SY
CA30
0
GP26
UP2
FV
0
0
FU16
PC3
PC1
}
Do PC
WAI }
GQ27
UP3
UP
SYI
FUll
ZM3
UP3
UP
FV1
YV
ZM1
E51
Sym.~A
(~FU11
-?@
}
no
+
"Operands not checked"
Delete operands
~B
Yare - Right - After Not in P.Op. List
Not in CB List
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
RJ
TP
TP
TP
TP
TP
QJ
TP
ZJ
TP
QJ
RJ
NF
RU
CA26
SY2
CA27
CA6
VA16
NZ
VAS
FJ
SY10
FK
TK
AT
CA31
RJ
TP
RJ
MJ
CA
EW
EW2
TE
0
NF21_
RU1
~l }
Check Yare sym.
Set to add to
CB List
TF3
PC3
Q
NF7
A
NF11
Q
NF13
TK1
EW2
EW1
TF2
TEl
ZM
Set PC
Fixed eq.~NZ
No t
SSe mode -+FJ
No it
IJKLM --+ FK
No ,
Increase CW
65xxx CW~list
~CB
--+©
890
List
Not SS mode - IJKIM
TA
..LJ'\
0
1
2
3
4
5
6
7
10
11
RJ
l'P
TP
RJ
RJ
AT
lP
RJ
RJ
MJ
CA
FK
WA
SY2
EK20
UP2
TK
CA25
A
WA1}
EK25
Increase CW counter
64xxx CW~list
EW21
TF2
EW
EWI
TE
TEl
ZM
0
E12
UP3
UP
TKl
J
CW~CB
~©
FK12
list
Ss. Mode
IA
0
1
2
3
4
5
6
7
10
TP
QJ
RJ
TP
TP
RJ
MJ
TP
MJ
CA
FJ
SYI0
FK4
WA
SY2
EK
UP2
0
VA6
0
FJll
~J2 }
WA1}
EK6
IJKIM~FK4
No f
Ell
IJP3
UP
NFl3
EK16
FJ2
Fixed Equation
0
IA
TP
1
2
3
4
QJ
RJ
5
RJ
6
TP
TP
MJ
CA
NZ
SYIO
FK4
WA
SY2
EL12
UP2
0
NZ7
~2}
WA1}
EL17
IJKIM-FK4
No V
E14
UP3
UP
NF13
891
A·
®
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
IA
TP
YV
CG16
RJ
EW
TP
QJ
RJ
TP
VA7
YV4
VA37
YV6
TE
VA14
EJ
CA3
RJ
WA
TP
GK
ZJ
TP
RJ
TP
EJ
RJ
TP
RJ
TP
EJ
RJ
TP
RJ
TP
UP2
VAl
CA3
WA
GK10
UP2
VA2
CA3
WA
GL
UP2
CA22
RJ
PC
TP
EW3
CA2
CKII
CA3
QT
ST
AT
RJ
MJ
CA
SS
0
EW2
EW1
A
YV7
Q
YV7
TEl
}
}
}
C.W.
~list
Ftn.
+
~YV7
Not in CB List ~ in ~ YV7
Add to list
~14 }
WAI }
no
#
= 's = 1~YV14
no
UP3
UP
E44
~2l }
On ( level zero ~YV2l
No ~
WAI }
UP3
UP
~26
}
WAI }
UP3
UP
PC3 }
PCl
Q
A
A
WL
SSI
FR
}
E45
On
No
I level
zero~YV26
~
E46
~PC
Word count ~ WL
Send S.O. to taoe
Exi t~ Control
YV36
892
~
Equation Translation
Error Prints
Region
Error Numbers
E1,E2
E3,E4
E5,E6
E7,E8
E9,E10
EF
EG
EH
E1
EJ
EK
Ell.E12
&13,&14
E15,E16
E17,E18
E19,E20
E21,E22
E23,E24
E25,E26
E27,E28
E29,&30
E31"E32
E33 tE34
&35,E36
E37 t&38
E39. E40
&41.E42,E43
E44,E45
E46,&47
E48,E49
Suffixes of
error prints
E50.E51
&52
&53 ,E54 •£55
&56,&57
&58
EL
EM
EN
EP
ER
EX
GA
GB
GC
GD
GE
GF
GH
G1
GJ
GK
GL
GM
GP
GQ
FQ
GV
GY
GZ
893
Error Prints for Equation Translation
El
E2
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
IA
EF
40
31
51
25
0
01
25
54
47
50
01
01
01
34
40
65
34
70
46
25
0
01
25
01
01
24
47
01
01
01
34
CA
EF1
67502
50016
51462
0
21011
01525
24470
47734
01010
31347
52513
30536
51502
EF17
67256
52663
24543
30016
51462
0
21011
01010
01010
52545
47012
73430
31347
52513
30536
51502
EF37
15
66634
57347
10177
0
76567
45132
12767
30134
10101
23027
45066
72466
27777
20
52654
02701
42425
57347
10177
0
76567
10101
10101
13254
76747
13450
23027
45066
72466
27777
F U N C T I
0 N 6. S Y M
B 0 L t 6. 77
Sym.
l:l ,6.
(
S
U
6. P R 0 G
R A M l:l D U
M M Y ) 6. I
N 6. 6. lJ.lJ.6.
l:l F I X E D
6. P 0 I N T
6. E Q u A T
I 0 N
77 77
B
.
S
I
U
P
V A
L E
B 0
B S C R
T E D l:l
R I A B
6. S y M
L t l:l 77
Sym.
l:l
B
II
6.
A
M
6.
fj,
6.
I
894
,
II (
S
U
l:l 6. lJ. II II
II llfj,6.6.
P R 0 G R
M 6. D U M
Y ) II I N
F I X E D
P 0 I N T
E Q U A T
0 N
77 77
.
lA
E3
E4
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
31
50
50
34
01
0
01
25
54
01
67
34
30
50
24
40
31
51
25
0
01
25
54
47
01
01
01
54
51
0
22
CA
EG
EG1
46512
32015
66017
24254
77777
0
21011
01525
24470
01010
47477
50013
27015
66013
66345
EG21
67502
50016
51462
0
21011
01525
24470
47734
01010
24475
65672
34526
31017
0
77777
EG4Q
17
46634
25134
02454
63021
77777
0
76567
45132
10101
10127
34301
13472
25034
05367
15022
17
66634
57347
10177
0
76567
45132
12767
30101
10101
15032
56526
66501
77777
0
77777
F L 0 A T I
1\1
11
G ~
0
.L
n
V
T
~
N T ~ V A R
r A B L E
~
.
77 77 77 77 77
Yare
!:l
,
~
~ ~ ~
!:l (
S
U
B !:l p R 0 G
R A M ~ ll~
U
I
1\ D
M M Y ) ~
N II F I X
E D II p 0 I
N T II E Q U
A T I 0 N
.
F
0
U
N
B 0
C T
I
M
L
,
/).
77
~
(
S u
N
A S y
Sym.
~
t
B tl p R 0 G
R A M tl D U
M M Y ) !:l tl
~llll!:l!:l!:l
II A M 0 N
!:l S U B S
R r p T S
0 F !:l 77 77
G
C
II
77
Sym.
77 77 77 77 77
.
895
IA
E5
0
1
2
3
4
5
6
7
E6
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
40
65
34
70
46
25
0
01
25
01
01
24
47
51
25
66
0
22
40
31
50
50
34
01
0
01
25
54
01
67
24
65
34
31
0
22
CA
EO
ED1
67256
52663
24543
30016
51462
0
21011
01010
01010
52545
47012
73430
50320
65265
65015
0
77777
EH23
46512
32015
66017
24254
m77
0
21011
01525
24470
01010
47477
47515
67256
52666
01777
0
77777
ED44
21
52654
02701
42425
57347
10177
0
76567
10101
10101
13254
76747
12447
16567
43452
13101
0
77777
21
46634
25134
02454
63021
77777
0
76567
45132
10101
10127
34301
03201
52654
50151
77777
0
77777
S U B
I P T
V A R
L E ~
B 0 L
Sym.
l:l , i::l
B l:l
l:l ~
~
S
D /J.
l A B
S Y M
• l:l 77
( S U
~ ~ ~ l:l
~~l:l~
P R 0
A M l:l D
M Y ) l:l
0 N G l:l
B S C R
T S ~ o
Sym.
77 77 77
.
C R
E
G R
U M
A M
S U
I P
F ~
77 77
L 0 A T I
G ~ P 0 I
N T ~ V A R
I A B L E ,
11 77 77 77 77 77
Yare
~
• tl ( S U
B ~ P R 0 G
R A M ~6.6.
~ ~ l:l II l:l D
U M M Y ) ~
A M 0 N G l:l
s U B S C R
I P T SAO
F II 77 77 77 77
Sym.
77 77 77 77 77
F
N
.
896
E7
E8
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
IA
40
31
52
70
46
0
01
25
54
01
01
73
31
50
50
24
40
65
34
70
46
25
0
01
50
01
01
54
51
0
22
CA
EI
Ell
34723
51345
24543
30210
0
21011
01525
24470
01010
01276
43013
46512
32015
66013
66345
EI21
67256
52663
24543
30016
51462
0
21012
32010
01010
65672
34526
31017
0
77777
EI37
17
02701
06601
42425
17777
0
76567
45132
10101
10101
74747
45001
46634
25134
05367
15022
16
52654
02701
42425
57347
10177
0
44751
10101
10101
56526
66501
7.7777
0
77777
I X E Of:::"
P 0 I N T f:::"
V A R I A B
f:::" 77 77
L E
Var.
F
f:::",
B f:::"
~
p
( S
R 0
U
G
R A M ~llll
6.6.~~~1l
~ ~ DUM M
Y ) Ll I N Ll
F L 0 A T I
N G ~ P 0 I
N T Ll E Q U
A
T
ION
U B S
I P T E
V A R I
L E l:l S
B 0 L ,
Var.
Ll • Ll A
N G f:::" ~
~ II f:::" f:::"
II S U B
R I P T
o F II 77
Var.
77 77 77
S
.
897
.
C R
D Ll
A B
Y M
Ll 77
M 0
Ll II
f:::" f:::"
S C
S Ll
77 77
77 77
E9
EI0
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
IA
EJ
40
46
73
34
0
01
50
65
65
01
01
0
22
40
31
51
0
01
50
65
65
0
22
EJ1
34255
01545
50302
0
21012
32016
26543
01513
01010
01017
0
77777
EJ16
67502
50210
0
21012
32016
26543
01513
CA
0
77777
EJ27
14
46766
16766
10177
0
44751
56725
45266
10101
10101
77777
0
77777
11
66634
17777
0
44751
56725
45266
10177
0
77777
L
I
8
R A R
Y ~ R 0 U T
~ 77
I N E
Sym.
~ A M 0
~
N G• ~ S U 8
S C R I P T
S ~ 0 F ~ ~
~
6- II
II
~
~
~ll~
77 77 77
Sym.
77 77 77 77 77
.
FUN C T I
0 N ,~ 77 77
Sym.
~. ~ A M 0
N G ~ S U B
S C R I P T
S l:l 0 F l:l 77
Sym.
77 77 77 77 77
.
898
Ell
El2
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
IA
40
31
50
50
34
01
0
01
50
01
01
67
52
01
0
22
40
31
52
70
46
0
01
31
50
50
01
66
CA
EK
EK1
46512
32015
66017
24254
77777
0
21012
32010
01010
01010
25652
66650
77777
0
77777
EK21
34723
51345
24543
30210
0
210.13
46512
32015
66010
01305
34515
EK34
17
46634
25134
02454
63021
77777
0
44751
10101
10101
10165
65434
15131
77777
0
77777
13
02701
06601
42425
17777
0
45001
46634
25134
10101
36724
02277
F L 0
N G ~
N T !J.
I
~
A T I
P 0 I
v A R
A B L E •
77 77 77 77 77
Var.
~
,
N
G ~ ~ ~ ~
~
~ ~ ~
~ ~ ~
A M 0
~ ~ ~
l:l l:l S
U B S C R I
P T S ~ 0 F
77 77 77 77 77
Sym.
77 71 77 77 77
~
.
I X E D ~
P 0 I N T ~
V A R I A B
F
L
E
~
77 77
Var.
, ~ I N ~
F L 0 A T I
N G ~ P 0 I
N T ~ ~ ~~
~ ~ E Q u A
T I 0 N
77
~
.
899
El3
El4
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
IA
40
46
73
34
0
21
34
51
53
50
40
31
50
50
25
0
01
31
52
01
01
34
CA
EL
ELI
34255
01545
50302
0
01345
72302
34506
67246
22777
EL13
46512
32015
66016
51462
0
21013
34723
51345
01010
30536
51502
EI26
11
42454
16766
10177
0
00131
70152
60130
63451
77777
13
46634
25134
57347
10177
0
45001
02701
06601
10101
72466
27777
L I
y ~
I N
Sym.
l:l.
t
I X
0 I
Q U
N
.
B R A R
0 U T
E ,tl 77
R
I N l:l.
E D l:l.
N T II
A T I
77 77 77
F
P
E
0
77
F L 0 A T I
N G ~ P 0 I
N T ~ S Y M
B 0 L
l:l. 77
Sym.
l:l. t l:l. I N l:l.
F I X E D ~
P 0 I N T ~
II ~ II II ll~
II E Q u A T
I 0 N
77 77
.
900
E15
E16
IA
40
EM
0
1.L
'-'.L
~1
67502
50210
0
21013
34723
51345
53672
50227
EM12
67256
52663
24543
30016
51462
0
21013
34723
01010
52513
30536
51502
006
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
51
0
01
31
52
30
51
40
65
34
70
46
25
0
01
31
01
01
01
34
CA
EMI
10
66634
17777
0
45001
02701
06601
46634
77777
F
U N C T
0 N
Sym.
6. I N 6.
X E D 6.
P 0 I N T 6.
E Q u A T I
6.
•
F
I
0
N
14
52654
02701
42425
57347
10177
0
45001
02701
10101
45066
72466
27777
I
, 6. 77 77
.
77 77 77
S U B S C R
I P T E D 6.
V A R I A B
L E 6. S y M
~ 77
B 0 L
Sym.
~
F
•
I
~
X
~ ~ ~
~ p 0
~ E Q
I
901
0 N
I
E
N II
D
~
~ ~
6.
I
T
T
u
.
N
A
77 77
E17
E18
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
IA
EN
40
46
73
34
47
0
01
33
01
01
51
32
21
31
30
51
24
30
40
65
34
70
46
25
0
01
01
01
01
71
01
30
30
34
EN1
34255
01545
50300
24514
CA
0
21017
01475
66332
01010
50300
67473
01505
51464
27012
52305
54305
65346
EN23
67256
52663
24543
30016
51462
0
21015
01010
01010
31514
30270
24500
50015
50663
65227
EN42
21
42454
16766
16573
62101
0
13466
15430
45001
10101
12454
05066
16601
65171
57301
00152
06633
52277
17
52654
02701
42425
57347
10177
0
05166
10101
10101
64651
12573
15152
22454
33065
77777
L I
Y ~
I N
M B
Sym.
B R A R
R 0 U T
E ~ S y
0 L
~
~
~
T
,
H II
~ T
~ll6.
0
G
N
U
W I
M 0 R E
H A Nll
6.
E 6.
M E
~~
A R
N
T
6. N 0 T 6.
F 0 L L 0 W
t
E
D ~
B
Y ~
0 P E N 6. P
A R E N T H
E
S
I
S
.
S
I
U
B
T
S
C
R
E
D
6.
P
77
V A R I A B
L E 6. S Y M
B 0 L , . 6. 77
Sym.
6. , fl
6. 6. 6.
N
0 T
~ 6. II
~6.6.6.6.6.
6.
F
W E
0 L L 0
D 6. B Y
A N 4. 0 P
E N 6. p A R
E N T H E S
I S
77 77 77
~
.
902
E19
0
1
2
3
E20
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
IA
EP
40
65
34
70
46
25
21
01
24
01
43
31
30
24
50
50
65
40
65
34
70
46
25
0
01
50
01
01
43
32
26
01
EP1
61256
52663
24543
30016
51462
0
01176
52545
47010
27674
01505
51464
27012
50015
01522
66333
22777
EP23
67256
52663
24543
30016
51462
0
21011
26663
01010
27674
01244
01656
54345
51310
21
52654
02701
42425
57347
10177
0
56725
13254
10101
74773
16601
65171
57301
15230
45430
06534
77777
20
62654
02701
42425
57347
10177
0
73167
45150
10101
74773
75150
72565
26665
17777
0
0
0
22
77777
EP43
77777
0
CA
S
U B S C
I P T E D
V A R I A
L E !:l S Y
B 0 L , !:l
R
~
B
M
77
Sym.
t
!:l
Llp
(
S
R 0
B
G R
U
A M ~ ~ ~ l:l
!:l D U M M Y
) !:l N 0 T !:l
F
E
A
N
N
S
0 L
D !:l
N !:l
!:l P
T
.
L 0 W
B Y !:l
0 P E
A R E
E S I
77 77 77 77
H
S
U B S
I P T E
V A R I
L E !:l S
B 0 L ,
C R
D !:l
A B
Y
M
!:l 77
Sym.
!:l , !:l (
N C T
I
!:l!:l~
~
F
U
0 N
!:ll:l
!:l D U M M Y
) !:l A M 0 N
G !:l S U B S
C R
6 0
I
F
P T
S
!:l 77 77
Svm_
-01--
.
903
77 77 77 77 77
E21
E22
IA
ER
0
1
2
3
4
5
6
7
10
11
12
13
14
40
31
50
50
34
01
0
01
50
01
01
67
24
ERI
46512
32015
66017
24254
77777
15
65
67256
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
34
31
0
22
40
31
52
70
46
0
01
52666
01777
0
77777
ER23
34723
51345
24543
30210
0
21011
26663
27674
01010
01345
51246
01525
01305
34515
ER41
50
01
43
01
46
32
66
66
CA
0
21011
26663
01010
01010
47477
47515
2.1
46634
25134
02454
63021
77777
0
73167
45150
10101
10127
34301
03201
52654
S0151
77777
0
77777
16
02701
06601
42425
17777
0
73167
45150
74773
10101
00131
63450
13450
36724
02277
F
N
N
I
L 0
G II
T I::.
A B
p
0
I
I
V
L
A
R
E
,
A T
I::. 77 77 77 77 77
Sym.
II
t
II
N C T
(
F
U
I 0 N
II l l l : : . l l l l l l
I::. II I::. II II D
U M M Y ) II
A M 0 N G II
S
U
B S
P
T
I
F II
C R
S 1::.0
77 77 77 77
Sym.
.
77 77 77 77 77
F
P
V
0
I
X E D Ll
I N T !l
A R I A B
L E
t
!:l 77 77
Sym.
~
N
•
C
II (
T
F
U
I 0 N
II D U M M Y
) !:l !:l II !:l II
~ II I N II F
L 0
G I::.
T I::.
T
904
A T
p 0
E Q
I 0 N
I
I
N
N
U
A
.
77
E23
E24
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
40
65
34
70
46
25
0
01
50
01
01
43
31
30
24
30
50
65
40
47
33
30
54
53
50
0
22
CA
EX
EX1
67256
52663
24543
30016
51462
0
21011
26663
01010
27674
01505
51464
27012
50015
01522
66333
22777
EX23
51543
24500
01653
24663
67246
01315
0
77777
EX33
21
52654
02701
42425
57347
10177
0
73167
45150
10101
74773
16601
65171
57301
15230
45430
06534
77777
10
00166
15150
05224
00130
63451
15401
0
77777
S
B
T
S
L E l:l
B 0 L
s
U
I
P
V A R
C
R
E D l:l
I
A B
y
M
, l:l 77
Sym.
~
,
~
(
F
N C T
I 0
U
N
~
{}.
l:l l:l
~{}.
{}.
)
{}.
D U M
N 0
F 0 L L
E D {}. B
A N {}. 0
N {}. P A
N T
S
.
M Y
T
{}.
0 W
Y
{}.
P
E
R E
H E S I
77 77 77 77
M 0 R E {}. T
H A N !:::. 0 N
E {}. S E P A
R A T E {}. E
Q U A T I 0
N {}. F 0 R ~
Sym.
.
905
77 77 77 77 77
E25
E26
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
IA
40
65
46
65
65
30
40
31
51
0
01
46
50
46
01
01
01
01
66
22
66
33
50
01
33
22
CA
GA
GAl
67523
67516
73472
01515
31662
GA7
67502
50210
0
21015
30316
51660
46517
25730
01010
01515
52245
33306
01015
01513
34650
66305
50516
30264
77777
GA32
5
05431
76501
55146
00146
27777
23
66634
17177
0
15001
62101
13151
13027
12450
10101
23050
43050
53465
43065
10166
16530
02630
60126
53027
77777
S
L
S
S
E
U P E R
U 0 U S
Y M B 0
l:1 0 N l:1
F T
77
F
U N C T
.
0 N
~
F
~
L
L
77
I
77 77
Sym.
b:- 0 N
t
L E F T ,
N 0 T ~ F
L L 0 W E
b:- B Y b:- A
6
~
b:-
0
D
N
b:- b:- b:- b:- ~ 6
fl b:- 0 P E N
P A R E N
T H E S I S
~ ~ R E S
T b:- 0 F ~ T
H I S ~ S E
N T E N C E
~ N 0 T ~ C
~
.
H
.
906
C K E D
77 77 77 77 77
E
40
GB
GB1
21
46
34255
42454
73
34
47
0
01
31
65
01545
50300
25514
0
21013
34546
73472
16766
16573
62101
0
46501
56601
55146
IA
E27
0,
2
3
4
5
6
7
10
~
11
E28
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
A,
':t~
42
T
,.
no
R
.Ii.
I
R S
S
T
D
.1
Sym.
~
t
~
I
F
S
y
M
/:).
/:).
/:). /:).
S E
C E
E S
~ T
S E
C E
~ C
01
01010
10101
/:).
51
31016
30502
01543
51310
65016
30502
51660
26453
GB23
50013
66345
51540
0
34500
01542
01513
70245
01010
01653
50263
01713
01777
0
53050
63022
06566
16633
53050
63001
12633
02722
20
05367
15001
17777
0
16633
45032
10124
47301
10101
05066
00134
33426
77777
0
0 F
~
T
N
C'\A~C'\~
C'\C'\nC'\ A
~olU~"i
U
.Ii.
65227
GB43
77777
R
S
66
01
01
34
66
50
30
40
24
24
31
0
01
30
30
01
01
01
30
50
33
0
",
V~
54
CA
~"ia~a
907
J\
R
Y ~ R 0 U T
I N E ~ S y
~
M B 0 L
L
E
l:l l:l R
l:l 0 F
~
~
B 0 L
b.
I S ~
T E N
N 0 T
E C K E
D
N
.
T
H
N
l:l
H
.
A N ~ E Q U
A T I 0 N l:l
F 0 R ~ 77 77
Sym.
l:l I N ~ T H
E ~ R A N G
E fl 0 F l:l A
~ V A R Y ~
6. l:l ~ ~ ~
l:l ~ S E N
E N C E l:l
N l:l w H I
H ~ 77 77 77
l:l
T
I
C
77
Symbol
I\.
J\
no
r
.
no
r
TO'
r.
J\
.Ii.
77 77 77
E29
E30
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
IA
40
34
46
51
0
01
54
01
67
22
40
47
33
30
26
51
0
21
54
66
01
01
34
0
22
CA
GC
Gel
46463
01657
46011
0
01170
01463
51310
24663
77777
GC13
51543
24500
01656
54345
50017
0
01245
32674
01513
01016
31675
51500
0
77777
GC31
11
03224
34725
70101
0
13151
03166
13053
45150
77777
16
00166
15150
72565
26601
77777
0
00124
73050
10101
63330
02666
17777
0
77777
I L L E G A
L b. S y M B
0 L ~ ( ~ ~
Sym.
~ ~ ) ~ F 0
R ~ L E F T
~ 0 F /). E Q
U A T I 0 N
77 77 77 77 77
.
M 0 R
H A N
E l:l S
C R I
0 N /:::;.
/). T
l:l 0 N
E
U
B S
P
T
6.
77 77 77
Sym.
,l:l A N l:l A
R
G U M E N
T l:l 0 F
l:l~
l:l l:l ~ T H E
II F U N C T
I 0 N ~ 77 77
Sym.
77 77 77 77 77
.
908
IA
E31
0,
.1
2
3
4
5
6
7
10
11
E32
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
40
46
73
34
47
0
01
46
24
01
24
50
01
67
50
0
22
40
65
26
65
21
0
0
01
50
01
01
01
25
66
0
22
r--~ preceding pseudo I-----:~
operation."
Determine 22 __ _
call word of first
sentence following sub program
heading
Set index to
# words in
DP list
Insert this call
word at next
position in IN
List
Increa se IN Li st
count by one
t-----iJ~
No
~
Increment to
look at next
DP Word
___ 18
List of Error Print-outs
Program
Entrance
Print-out "Sentence_ _ _ _ _ (SUB)" precedes all of these.
ZAI
No final closing parenthesis.
ZBI}
and
ZGl
The number of open parentheses is not equal to the number
ZCI
Machine or internal error.
ZFl
Failed to exit.
ZHI
Parenthetical expression not allowed for the functional
of close parentheses.
Probably no space period symbol.
variable in the Pseudo Op Heading statement.
ZII
Fixed point operands do not begin with legal characters
i.e. (I, J, K, L or M) in the Pseudo Op Heading.
ZJl
Floating point operands in the Pseudo Op Heading begin
with illegal characters, i.e. (I, J, K, L or M).
ZKl
No closing parenthesis or too many subscripts.
ZLI
Duplicated symbols are not allowed in Pseudo Op Heading.
ZMl
Erroneous subscript found.
ZNl
At least one subscript missing on subscripted variable.
ZOI
The rest of this sentence was not checked.
XN32
No exit
XN3
Constants illegal in Pseudo Op Heading.
in preceding Pseudo Operation.
nnn
'1~O
Regions for Pseudo Operation Heading Translator
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
,RE
RE
PU4400
PV4471
PX4630
PY4667
PZ4714
PW4741
PE4747
DU4761
JL5006
ZA5023
ZB5036
ZC5062
ZF5075
ZG5113
ZH5122
ZI5153
ZJ5204
ZK5234
ZL5252
ZM5273
ZN5306
Z05327
XN5355
There is one conflict between the string-out subroutine regions
and the above regions (each uses region ZO). However, if the above regions are read in first and the string-out subroutine regions second,
the Pseudo-op Heading tape will assemble properly.
929
Master Control Region for Pseudo-op Heading Translator.
3
IA
MJ
RP
TP
RJ
PU
0
10132
PU44
JL
4
TP
5
6
7
TV
TA4
TA4
PU45
SY
P047
o
1
2
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
@
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
QT
RJ
EJ
MJ
RA
MJ
EJ
EJ
0
PU50
0
PU52
PU53
MJ
0
TP
EJ
SZ2
P054
MJ
0
RS
ZJ
PU50
ZBl
MJ
ZJ
TP
TJ
MJ
TP
QT
RA
TP
EJ
EJ
EJ
EJ
MJ
IJ
MJ
0
ZCl
PU55
PU63
PW
XNl7 }
DP
JLl
Q
TS4
PU46
SYI
PU12
XN
PU51
PU7
PU7
PU17
PU26
~U22
I~Paren.
Ctr.
Test ",tt
Test th. "
}
ZAI
PU5l
PU
Test previous symbol for ")".
Error! No close parenthesis
Parenthesis Counter - l~Paren. Ctr.
A~ 0 ; Indicates opening and closing
parens not equal.
PU65
PU
~U65 ]
PZl
PYI
PXl
PVl
ZCl
PU7
ZFl
Test CTRl (assigning CW
sequence numbers) S (77)8
Error!
Mask and save format digit
1, 2, 3, or 4
Modifies address for picking up next
operand.
Format digit 1, 2, 3 or 4~A
Test for '1·
Test for '2'
Test for '3' (Function)
Test for '4' (subscripted variable)
Error! Format digit not I, 2. 3 or 4.
Initial no. operands -l~ PU46
Error! Failed to exit.
0
ZCl
~U57 }
PU57
PU51
PU60
PU61
P062
A
PU46
Region DP (90 slots)
Reference routine for building Pseudo
OP 2nd lines.
(TA4) = no. of operands
Send 40--- CW to TS4
Mask off no. of operands and set CTR2
Test n(tt
Jump to test tt)"
Parentheses Counter +
TA5
P056
PU31
0
Zeroize
PU70
o
0
0
o
o
0
0
77
Mask
17
77777
77777
(
o
o
o
o
0
0
o
21
01
43
77777
22777
77777
77777
77777
77777
1
•
1:::..
)
930
Master Control Region for Pseudo-op Heading Translator (continued)
55
56
57
60
61
62
63
64
65
o
o
o
o
o
o
o
0
0
0
0
0
0
0
o
7
Mask
o
3
4
100
77777
SY7
PU31
77776
Q '
66
77
TP
QJ
67
MJ
0
1
PU25
CA
PU71
70
o
XN3
J
.. 1
Test first character for letter.
o
931
Sub Region for Subscripted Variable
®
(])
@
0
1
2
3
4
5
6
7
10
11
12
IA
MJ
TP
RS
TU
TP
QT
RA
RA
TP
TP
RJ
13
TP
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
LT
RA
AT
54
55
56
57
60
TP
LT
MJ
AT
TP
RA
RA
RA
TP
TP
RJ
EJ
EJ
MJ
RA
MJ
RA
RA
TP
TP
RJ
TP
RA
TP
RA
RA
RA
TP
TP
RJ
EJ
EJ
MJ
RA
PV
0
PU3l
A
A
[OJ
PVlll
PU64
PV10
SY2
PVl14
DU
PVl12
14
A
PUSS
PVI12
6
0
PUSS
PV120
PV12l
PU64
PV27
PVlI6
PV122
SY
PV123
PV124
0
PV125
0
PU64
PV41
SY2
PVI14
DU
PV126
A
A
PU55
PU64
PV52
PVl16
PVl22
SY
PV123
PVl27
0
PV6l
PU42
A
PVllO
PV4
Q
Exit
Mask 'opt portion of
format word and save
in Temp. 2 = PVl12
PVl12
PV1l3}
PU64
[OP]
PVlO
001
A
A
PVI15
PVI16
A
PVl17
PV130
PUSS}
PV12l
PVl17
PV1l3 }
PU64
[DP]
PV27
SYI
PV3l
PV35
PVl02
PVl13
PV3I
PV1l3 }
PU64
[DP]
PV4l
DUI
A
PUSS
PV116
PVl13
PVl13
PU64
[DP]
PV52
SYI
PV54
PVl04
PV133
PU64
CTR + l~eTR)
(set up proper address)
Insert XS-3 symbol in DP List
Reset PVlO)
(Test duplication of symbol)
Previously saved top'~A
Shift op to v of ~
AR + 76 - OO~~
76 1Nl 00 + eTRl~Temp. 5 = PVI16
Previously saved 'op' ~A
Shift top' to A 0-5
Jump out for corfection
Setting up index which
determines when to begin exit
Insert '76' N-- CW in DP
Test ,
Test I)'
Jump to COY.1ectionC!)
Parenthesis counter +1~Paren. Ctr
Insert XS-3 symbol in DP list
~A
'63000 '
-t-cml~A
'63000 •
Save CW in Temp. 5 = PVl16
em1 + l~CTRl
CTR + l~CTR
Send CW to DP List
Test
',I
Jump to cOyyection~
Jump to cOT1ection
932
Sub Region for Subscripted Variable
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
®
101
102
103
104
105
106
107
110
111
112
113
114
115
116
117
@
120
121
122
123
124
125
126
127
130
131
132
133
134
135
136
TP
TP
RJ
TP
AT
RA
RA
RA
TP
TP
IJ
RJ
EJ
MJ
RS
ZJ
o
TP
QJ
TP
TJ
MJ
01
o
SY2
PVl14
DU
PV126
PU55
PUSS
PU64
PV7l
PV116
PV122
PV121
SY
PV127
[DP]
PV61
DUI
Insert XS-3 symbol in DP list
A
·63000· ~A
t63000 t + cm1~A
PVl16
PVl13
PVll3
PU64 )
[DP] >
PV71 J
PV54
SYI
PV77
o
ZK1
PV125
ZGl
PVl13
PV
o
o
SYlO
PV37
PVI07
PVl12
~MI}
1
o
o
o
o
A
ZNl }
PV77
o
o
o
o
o
o
o
TP
SY2
DP
76000
77
o
o
o
77
o
o
77777
77775
o
TP
PVl16
77777
77777
21
17
o
o
o
CTRl+l~CTRl
CTR+1~CTR
Send CW to DP List
Test f)'
Error. No closing parenthesis
Parenthesis counter -l~Paren. Ctr.
Test for same no. of open and close
parens.
(!)Test for subscript
(2) If op > 01 then wrong
~it was used and at least one
subscript will be missing
from DP List
Mask
Temp. 2
1
o
o
o
o
(continued)
o
DP
77777
77777
o
Presetter for
CW
Temp. 5
'l'Amn
XS-3~DP
~
"''''''''''.1:''- ....,
-2
Index
Presetter for
,
CW
~DP
(
o
63000
Parenthesis Counter
CW
77777
)
TP
77777
PVl17
RA
A
:V113 }
PV22
Setting up an index for
the no. of passes thru last loop
Test for subscript
43
MJ
TP
QJ
RA
MJ
CA
o
SYIO
PV135
PU64
o
ZMI
Q
}
PVll3
PV60
@
I, J, K, L or M
PVl37
933
Sub Region for Filing Functions in DP
IA
13
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
MJ
RA
RA
TP
TP
RJ
RA
TP
AT
RA
TP
TP
RA
TP
RS
1U
RA
RA
TP
TP
RJ
EJ
MJ
0
0
17
TP
TP
TP
0
0
CA
PX
0
PU64
PX3
SY2
PX32
DU
PU64
PX36
PU55
PX12
PX35
PX33
PU55
PU31
A
A
PU64
PX22
[30000]
PX34
SY
PX31
0
0
1
77777
SY2
PX35
30000
0
0
PX37
PU42
PX27
PU64}
[DP]
PX3
DU1
PX27
A
PX35
PU64}
[DP]
Increase CTR by 1
Send XS-3 symbol DP
Preset PX3
Increase CTR by 1
C W~A
C W to Temp.~after being sequenced
Temp.@~DPn
Preset PX12
PX12
PU60
CTR1+2~C1R1 ~
:X30
}
PX22
Set up address to obtain
correct format digit
:~!}
[DP]
PX22
SY1
ZH1
PX
1
0
77777
}
DP
DP
DP
0
61000
C1R+1~CTR
Send format digit(l, 2, 3 or 4) to DP
List
Preset PX22
Test
t(t
(
Preset PX3
Preset PX12
Preset PX22
Temp.@)
934
Sub Region for FIXED PO !NT OPERAND
@
IA
PY
0
MJ
0
1
2
3
4
5
6
7
TP
QJ
SYlO
PY3
PU64
PY5
SY2
PY23
RA
RA
TP
TP
RJ
1()
TO
oLio
11
12
13
14
15
16
17
20
21
22
23
24
AT
RA
RA
RA
~v
TP
TP
MJ
0
0
0
TP
TP
CA
00
PY21
PU55
PU55
PU64
PY15
PY20
PY24
0
0
0
0
SY2
PY20
PY25
PD42
Q
ZII
PY22
PU64
[DP 1
PY5
001
}
Testing
for I, J, K, L or M
CTR+l
~CTR
Insert XS-3 symbol in DP
Preset PY5
~A
J\
CW
PY20
PY22
PY22
PU64
[DP]
PY15
PY
0
63000
1
DP
DP
Temp.CD CW plus sequence no.
CTR1+1 ~ CTRl
1'\
CTR+l~CTR
Insert 63---type call word in DP List
Preset PY15
0
Temp.
CW f or FIXED PO INT CONSTANT
Presetter PY5
Presetter PY15
935
Sub Region for FLOATING POINT OPERAND
IA
@
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
MJ
TP
QJ
RA
RA
IP
TP
RJ
TP
AT
RA
RA
RA
TP
TP
MJ
0
0
0
TP
TP
CA
0
1
2
3
4
5
IA
TP
TP
TP
MJ
0
77
CA
PZ
0
SY10
ZJ1
P064
PZ5
SY2
PZ23
DO
PZ21
P055
PU55
PU64
PZ15
PZ20
PZ24
0
0
0
0
SY2
PZ20
PZ25
PU42
Q
PZ3
PZ22
PU64
[DP]
PZ5
DOl
A
PZ20
PZ22
PZ22
PU64
[DP]
PZ15
PZ
0
63000
1
DP
DP
}
PW
PW4
PW4
PW5
0
0
77777
PW6
PU46
P055
P064
PEl
Testing
f or I, J, K, L or M
CTR+1---?Jo CTR
Insert XS-3 symbol
Preset PZ5
Temp.@ - CW plus sequence no.
CTR1+1~CTR1
CTR+1~CTR
Insert 63--- type call word in DP List
Preset PZ15
Temp.@
CW for FLOAT ING PO INT
CTR2}
CTR1
CTR
0
77776
936
Reset counters
@
IA
MJ
0
1
2
TP
RA
TA4
PEI0
3
4
5
6
7
10
11
TP
RA
RJ
RS
A
WL
SS
MJ
0
0
0
PE12
0
0
CA
IA
@
PE
0
0
1
2
3
4
5
6
7
10
11
12
13
MJ
MJ
TP
RJ
MJ
01
01
01
01
01
01
01
VB4
ZO
0
0
Z025
UP2
0
01010
01010
01010
01010
01010
01010
01010
CT
WL3
Pseudo Op CW ~ WL3
22000 + VB4 = CW of 1st sentence
after heading
VB4
WL4
PEll
SSl
PEll
PE
22000
CW~WL4
Word counter + 1~ Word ctr.
Send string out to tape
1
PU
202
UP3
UP
ZO
10101
10101
10101
10101
10101
10101
10101
14
01
01010
10101
15
16
17
20
21
22
23
24
25
01
66
65
66
30
30
50
30
40
CA
01010
33300
66015
33346
50663
01712
51660
26453
Z05
Z026
15430
13101
50165
05026
46501
12633
02722
20
ioioi)
Causes carriage return
before print out
T
S
T
E
H
E
~
T
~
H
I
0
S
E
A
ti
E
N T
E ~ W
N 0
T
E C K
937
R E
F ~
t::. S
N C
S ~
C H
D
.
Test Duplication of Symbol
@
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
IA
MJ
RA
TP
EJ
MJ
TP
TJ
TP
TP
MJ
TP
TP
MJ
RA
IJ
MJ
77
0
77
TP
0
CA
IlJ
0
0020
[DP]
SY2
0
0024
DU20
0023
0022
0
DU23
0022
0
002
0020
0
77777
1
77777
DP
0
0025
[30000]
PU64
A
005
0015
A
0012
002 }
Index + Ctr.
-1
O~A
Index
>
0 indicates error
0020
00
Exit routine
D02 }
Error routine
0020
ZLI
DU2l
002
DU7
77776
0
77776
A
0
= CIR.
Modifty DP address
Jwmp to Exit routine
Index
Presetter for Index
Routine to Make Up List IN of 2nd Lines of Pseudo Op's
IA
0
1
2
3
MJ
4
5
6
7
10
11
12
13
14
AT
TP
QT
LQ
TV
SP
AT
RA
MJ
0
0
0
CA
JL
0
JL12
IN
A
JL14
A
VB4
JL13
IN
0
07777
22000
0
JL15
30000
Q
A
25
A
JL7
}
17
}
[30000]
PU70
JL
a
0
JNl
Exit
Mask to Q
IN = 0 20000 0 initially
Shift to V position number of
pseudo ops.
Set-up to get proper loading
position for next call word in list ..
Securing and loading call
word in list.
Increasing list length count
Exit
Mask
Base call word of pseudo ops
Base address of 1st call word
in list.
938
Error Print-Outs
0
1
2
3
4
5
6
'7
I
IO
11
12
IA
MJ
ZA
RJ
40
CA
WA
ZA12
UP2
0
51013
46012
34503
54305
65346
ZAS
ZA13
IA
ZB
TP
RJ
MJ
50
24
65
24
30
0
MJ
1
RJ
2
3
4
5
6
7
10
11
12
TP
13
14
15
16
17
20
21
22
23
RJ
MJ
66
47
31
01
66
01
66
46
33
01
30
26
52
33
40
CA
0
0
PU
WAI
UP3
UP
ZA
13450
64651
20152
06633
52277
5
Prints: 5ENTENCE _(5UB)
Gives print-out indicated
by parameter.
}
N 0 lJ. F I N
A L lJ. C
L 0
,...
S .L n \:J 11 r-n
A R E N T H
fj,
E 5 I 5
T
11.1
.
PU
WA
ZB23
UP2
0
33300
25305
01515
52245
33306
34650
WAI
OP3
UP
ZB
15067
40151
23050
43050
53065
15051
01305
36724
01665
30010
01506
54015
46516
24543
30653
ZB5
ZB24
10166
10101
74725
13101
53001
05066
06522
16
T H E
N
R ~
U
0
P E
P A R E
T H E 5 E
5 ~ N
~ I
T l:::,. E Q u
L 11 T 0 tl
H E 11 11 11
~ ~ N U M
E R ~ 0 F
C L 0 5 E
P A R E N
N
N
M B E
F 11 0
/j.
/j.
H E
939
S
E
S
5
0
A
T
~
B
11
11
T
.
0
1
2
3
4
5
6
7
10
11
12
0
1
2
3
4
5
6
7
10
11
12
13
14
15
IA
zc
MJ
0
WA
ZC12
UP2
0
24263
01515
66305
01305
22777
ZC5
ZC13
RJ
TP
RJ
MJ
47
30
50
46
54
40
CA
IA
MJ
RJ
TP
RJ
MJ
31
01
34
51
01
24
54
73
40
CA
PU
WAI
UP3
UP
ZC
33450
40134
45024
45451
77777
5
A C H
E !1 0 R
N T E R
L ~ E R
M
R
.
N
I
N A
I
~
R 0
77 77 77 77
ZF
0
WA
ZF15
UP2
0
24344
66510
66220
25242
50510
26300
34512
47255
ZF5
ZF16
PU
WAI
UP3
UP
ZF
63027
13072
15254
54673
16552
15230
60165
14622
10
F A I L E
!1 T 0 !1 E
l:l P
I T
0 B A B L
b:. N 0 b:. S
A C E b:. P
R I 0 D b:.
Y M B 0 L
.
940
D
X
R
Y
P
E
S
.
IA
0
1
2
3
4
5
6
MJ
RJ
TP
RJ
TP
MJ
0
CA
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
MJ
RJ
TP
RJ
MJ
52
33
46
30
65
24
27
66
01
01
66
01
25
01
65
51
27
66
50
40
CA
ZG
0
WA
Z823
UP2
ZG6
0
0
ZG7
ZH
0
WA
ZH30
UP2
0
24543
30663
01307
65653
01505
46465
01315
33300
01010
01316
34515
70245
46300
66333
30672
52013
34503
24663
66227
ZH5
ZH31
Z01
WA1
UP3
UP
PV102
ZG
0
ZOt
WA1
UP3
UP
ZH
05066
42624
25254
45150
16601
17130
15401
10101
10101
75026
02446
43424
13450
00152
75101
33024
20165
04730
77777
23
P A R E N T
H E T I C A
L l:l E X P R
E S S I 0 N
S l:l N 0 T l:l
A L L 0 W E
D l:l F 0 R l:l
T H E l:l l:l l:l
l:l l:l l:ll:l l:l l:l
6. 6. F U N C
T I 0 N A L
l:l V A R I A
BL E l:l I N
l:l T H E l:l P
S E U D
l:l
P l:l H E A
D I N G l:l S
T A T E M E
N T
77 77 77
o
o
.
941
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
IA
MJ
RJ
ZI
0
PU42
WA
WAI
TP
2130
UP2
0
34723
51345
52305
65012
51660
34500
33014
46010
01010
01263
26663
34223
34214
46015
43013
33300
67275
01333
50322
ZI5
ZI31
UP3
UP
RJ
MJ
31
52
51
27
50
32
66
24
01
01
24
01
17
21
47
66
30
52
34
40
CA
ZI
02701
06601
42450
75101
12530
17134
63032
10101
10101
32454
05465
02201
42145
15401
45001
15265
10151
02427
27777
23
I X E D ~
P 0 I N T ~
0 P E R A N
D S ~ D 0 l:l
N 0 T l:l B E
F
G
T
I N
H ~
A L ~
~
II W I
L E G
~ l:l ~
~ 6.l:l~l:l
l:l l:l C
H A R
E R S
E .~
J , K
0 R 6.
M ) II I N 6.
T H E ~ P S
E U D o fj. 0
P 6. H E A D
I N G
77 77
A C T
~ I
( I ,
, L ~
.
.
942
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
MJ
RJ
TP
RJ
MJ
31
50
50
54
34
01
51
30
01
01
54
01
24
54
65
01
45
21
40
CA
ZJ
0
WA
ZJ37
UP2
0
46512
32015
66015
24502
50016
52653
02515
24273
01010
01253
01713
34464
46012
24266
01342
17342
21460
47432
ZJ5
ZJ30
PU42
WA1
UP3
UP
ZJ
46634
25134
15230
76501
63330
06727
20133
45032
10101
03234
46633
63032
63324
63054
23022
14421
15154
27777
22
N
L 0 A T I
G l:l p 0 I
N
T
F
l:l 0
P E
D S ~
~ T H E
R A N
I
N
P S E IT D
0 p ~ H
E A D I N G
~
0
-
/:). ~ ~ ~~
~
~
B E G I
N
~
~
W I T
~
I
L L E G
A L ~ C
R A C T
S ~ I
~
K
(
I
t
L
M
943
)
H
H
A
R
.
E
E
•
77 77
.
, J ,
~ o R
0
1
2
3
4
5
6
7
10
11
12
13
14
15
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
IA
ZK
MJ
RJ
TP
RJ
0
Z01
WA
ZK15
UP2
MJ
0
50
65
24
51012
34503
54305
65346
01665
24507
WAI
UP3
UP
ZK
64651
20152
06633
50151
15101
30165
65434
27777
10
30
54
47
67
52
40
CA
66652
ZK5
ZK16
IA
ZL
MJ
RJ
0
WA
ZUO
UP2
0
67524
66302
47255
24543
66012
71302
01526
51015
01010
01333
50322
TP
RJ
MJ
27
24
73
01
51
51
50
27
01
01
34
40
CA
25652
ZLS
N 0
S I
~
A R
N
E
E
S
I
R
~
M
A
T
N
C L 0
G ~ P
N T H
S ~ 0
0
Y
o
~
~
S
U B S C R I
P T S
77 77
.
Z01
WA1
UP3
UP
ZL
63426
70165
14665
00150
44646
70134
53067
15201
10101
02427
27777
13
D U
A T
Y M
~ A
0 T
0 W
N
D
944
o
B
R
E
P
D l:l
0 L
E ~
A L
D ~
S E
0 P
C
S
S
N
L
I
U
~
~
~
~ ~ ~~~
~ H E A D
I
N G
~
ZL21
~
P L I
E
.
77 77
0
IA
MJ
1
RJ
2
TP
3
4
5
6
7
10
RJ
..
1.1.
12
MJ
30
51
25
66
0..,
t:::.1
40
CA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
IA
MJ
RJ
TP
RJ
MJ
24
65
01
54
34
01
25
66
01
01
24
40
CA
ZM
0
WA
ZM12
UP2
0
54545
67650
65265
01315
22777
ZM5
ZM13
ZN
0
WA
ZN20
UP2
0
66014
66015
65672
34526
65653
51500
65265
30270
01010
01702
25463
ZN5
ZN21
ZOl
WAI
UP3
UP
ZM
15030
16567
43452
16750
77777
5
ZOl
WAl
UP3
UP
ZN
63024
15030
56526
60147
45032
16567
43452
10101
10101
45434
02277
13
R R 0
0 U S lJ.
B S C R
T lJ. F 0
D
77 77
E
.
A
N
E
S
I
U
P
U N
77 77
ll.
lJ.
A
lJ. S
L E
0 N
U B S
R I
P
T
lJ. M
S
S
I
N
S
I
T
T
E
C
G
lJ. 0 N lJ. S U
B S C R I P
T E D lJ.lJ.lJ.
!::,. l:::a lJ. lJ. lJ. lJ.
lJ. lJ. V A R I
A B L E
77
.
945
@
0
1
2
3
4
5
6
7
@
@
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
IA
XN
EJ
MJ
PU54
0
0
WA
XN7
UP2
0
XNI0
51506
66650
30322
50015
27510
33302
32227
TS4
XN21
VDl
XN23
XN30
0
TS4
0
0
0
0
WA
XN45
UP2
0
51013
01345
30263
32015
27510
54246
22777
755"43
XN46
MJ
RJ
TP
RJ
MJ
40
26
50
46
34
67
01
50
TP
QJ
TP
QJ
TP
MJ
RA
MJ
40
0
MJ
RJ
TP
RJ
MJ
50
66
54
50
67
30
50
40
CA
PU7
PU14
ZOI
WAI
UP3
UP
XN2
7
56624
13446
44601
26530
15152
42734
77777
Q
XN25
Q
XN32
VDl
PU3
XN27
PU3
0
0
PU3
WA1
UP3
UP
XN31
07234
00152
02734
26530
15152
63451
77777
7
}
Test closing parenthesis
Print region
0 N S T
T S l:l I
E G A L
N l:l P S
U D 0 l:l 0
l:l H E A D
C
N
L
I
N G
A
L
l:l
.
E
P
I
}
Test for heading bit
}
Test for Exit Bit
Zeroize VDl
Set heading bit
Error Print region
N 0 11
T 11 I
R E C
N G tl
U D 0
E X I
N !:::.. P
E D I
P S E
P
E R A T I 0
N
946
.
l:l 0
IV. GENERATION PHASE
IV.
1.
GENERATION PHASE
Generation Setup and Drum Loader
After the initial print-out:
Pass II.
Generation of Computer Code,
this routine transfers from tape to core to drum the two 27-block sections of
the Subroutine Generators. Next, it transfers from tape to core the 6 blocks
of Generation Subroutines.
RQ routine is then referenced to set up some block and line counters, put
the proper parameter for 5 or 7 Uniservos into Op Control routine, and put two
title blocks on both tape 5 holding Op File I and the tape that is to hold the
generated coding.
This tape will be either on Uniservo 4 or 7, depending on
whether 5 or 7 Uniservos are used. In addition, on the 22nd line of the title
block for the generated coding. the RQ routine puts the contents of 13, which is
a count of the number of blocks of the corrected problem
on tape 5.
The tape holding the string-out input, either on Uniservo 3 or 6, is now
moved forward one block to bypass the title.
Then an exit jump is made to the
beginning address of CG, the Control Generation subroutine.
Also included in the same block as the Generation Set-Up is a Drum Loader
routine which can be used to help update or correct the UNICODE Master Tape.
First a flex or bioctal copy of a revised Generator is loaded into the core.
look at the annotated coding of this Drum Loader will show the numerical PAK
A
setting to the left of a section of coding labeled for the
A start at this address will transfer the Generator to its proper place in
the drum.
In this connection, the separate write-up on the System Tape Package
should be consulted to ensure that the other necessary steps are taken to
update the Master Tape correctly.
949
Generation Set-Up Routines - Flow Charts
Print-Out: Pass
II. Generation
of computer code
Transfer from
type subroutine
generators to
drum via core
(66 blocks)
Transfer
generation
subroutines from
tape to core
(6 blocks)
RQ generation
subroutine Setup routine
Move forward 1
title block on
input string-out
tape
Jump to
control
generation
subroutine
950
Generation Set-Up Routines- Flow Charts
RQ Routine To Set Up Op Control Routines and Write Title Blocks For
Op File I and Generated Routines on Tapes
---:II"
Entr
.---
~
A
Clear ES, number
of lines in Op
File buffer
region
r----:oo
1 blockette of
Z-lines to Op
File title
block
Block to tape 5
Fill remainder
and count of
~- of block with
blocks
Z - lines
1 blockette of
Z - lines to
title block for
generation tape
Block to tape
and count of
blocks
~FILE~
~ TAPE~
r---='"
}
to
1st 2 lines of
2nd blockette
of block
~~~OP~ } t
FILE ~ 1
0
1st
2
lines
of
~
2nd title block
of Op File tape
Filling remainderl
bl oc k wi t h
Z - lines
r - - - 0:f
~
Block to tape 5
land count of
blocks
t -
~
13, counter of
l:l.l:l. GEN 6- to
number of blocks
1st line of
Fill remainder
f--..:;;a second b10ckette ~ corrected prob- j---iI of blocks with
lem, to 2nd line
Z - lines
of 2nd blockette
I---
6 SUBRO } to
UTINES
Fill block with
1st
2 lines of
IE-IE-Z - lines
2nd generation
title block
~
Block to tape
IE-- and count of
blocks
Generation Setup and Drum Loader Regions
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
DA7230
RQ7256
BF7325
BG6250
BH6250
CJ50212
CK56462
CD3300
CE3300
CN600
EX7350
Generation Subroutine regions are also needed to assemble this tape.
952
Generation Setup and Drum Loader
Print-Out:
Pass II. Gener- 1
ation of Computer] 0
Code
1
3
4
5
t..
OT
12
13
RP
TP
TP
RJ
RJ
GT2
BH30000
BR
DA23
GT2
RQ
14
15
16
11
TP
AT
RJ
MJ
TN
DA24
GT2
20
21
23
24
MJ
50
50
50
30
COl
CEI
CNI
103
25
0
o
CA
DA26
RQ
1
IA
MJ
TP
2
TP
GP1
3
4
5
RP
TP
TP
TP
RP
TP
TP
RJ
RA
10024
GP2
GP13
GPl4
10142
GP2
RC
GT2
ES5
TP
TP
RP
TP
TP
RJ
GPI
10166
GP2
RC
GT2
2
To get subroutine
generators on
drum via core
t~11
22
Routine to Set
Up Op Control
Tape Write
Routine and
Write Title
Blocks for Op
Fi Ie and Gen.
Routines on
Tapes
o
6
1
Op File
Setup
DA
BF
DA2l
GT2
BG30000
BR
IA
RJ
TP
RJ
RP
TP
TP
10
11
12
13
14
15
16
11
20
21
uv
DJ\22
BFI
GT3
GT
DA5
CJ
GT3
DAII
CK
GT3}
GT
RQl
~T3}
GT
o
DA20
o
CG
BR }
BR
BR
o
GP7
GP
o
o
To get generation subroutines from
tape to core
To op~rate generation Op-Control
set up routine
{3}
Move forward tape 6 I block. This
servo holds the string-outs plus
I-block title
Dummy jump instruction (replaces
discarded "12" clearing instruction)
Jump to exit
Parameters for generators in 2 seCL
Parameter for generation subroutines
Parameter for moving forward tape 3
1 block
Excess storage of a zero formerly
used in instruction 11
30000 Exit
1 Clears 2 storaqe locations, es = no.
ES5 J
lines in Op File buffer region, np
es 5 = no. of blocks of Op Files
RQ5 } Puts 208 lines of Z's into np
NP
File
NP24}
# Tape #
Into np
NP25
RQll} Filling remainder of np with Z's
NP26
GT3
Parameter ~ generalized tape handler
GT
Writing block on tape via tape hdlr.
GPIO Count of blocks
NP } lll::ll::l 0 P I::l] to np
NP 1
F I L E I::l I
ES-
#
~~~O}
#} .
Fillinq rest ofnp with Z's
GT3 } Using tape handler
GT
953
Gen.Routines
Setup
22 RA
23 TP
24 AT
TN
25 TP
GP7
26 RP
27 TP
10024
GP2
30 TP
31 TP
GP15
13
ES5
RC2
32
33
34
35
36
37
40
41
42
43
44
45
46
RP
TP
TP
RJ
RA
TP
TP
RP
TP
TP
RJ
RA
MJ
CA
10142
GP2
RC4
GT2
ES6
GPII
GP12
10166
GP2
RC4
GT2
ES6
0
RQ47
0
1
2
3
4
5
6
7
10
11
12
13
14
IA
MJ
TP
RJ
MJ
0
01
52
34
01
24
51
52
26
CA
BF
0
BF4
UP2
0
BF5
01010
24656
22010
32305
66345
31012
67663
51273
BF15
GPlO
A
RC4
Count of blocks
Putting proper parameter in RC4 depending on whether TN = 0 or 0 3 O.
The latter is for 7 servos.
ES6
Clearing counter for no. blocks of
generated subroutines
RQ30} 20 lines of Z's to GN, buffer region
GN
of subroutines used in writing on
tape
GN24
b. b. Gen b. to GN
GN25 Count of no. blocks of corrected
problem on tape 5
RQ34 } Filling GN with lines of Z's
GN26
GT3
Writing block on tape
GT
GP10 Count of blocks
GN } b.SUBRO } t GN
UTINES
0
GNI
}
}
RQ43
GN2 }
Filling GN with lines of Z's
GT3
GT
GPI0
RQ
Writing block on tape and counting
blocks
Jump to exit
30000
UP3
UP
BF
10
10101
50134
10101
03054
15001
65147
05401
07777
print-out :666666 Pass II.
} Gives
Generation of Computer Code
954
Parameter
b.
b.
PAS S I
I.b.b.b.b.
b.GENER
ATIONb.
OF6COM
PUTERb.
COD E
Routine used to load Generators from Core to Drum (used only in assembling
initially the UNICODE generators; operated by console manipulation). A changed
generator is first read into the core. Then a start with PAK set to the numbered address shown at left will transfer the generator to its place in the drum.
7400
IA
RP
TP
RP
TP
RP
TP
RP
TP
RP
TP
RP
TP
RP
TP
RP
TP
RP
TP
RP
TP
RP
TP
RP
TP
RP
7402
TP
RP
7350
7352
7354
7356
7360
7362
7364
7366
7370
7372
7374
7376
7404
7406
TP
RP
TP
RP
TP
7410
RP
7412
TP
RP
TP
MS
CA
EX
OR30000
KB
OM30000
KB
OK30000
KB
0030000
KB
OY30000
KB
OU30000
KB
OQ30000
KB
OW30000
KB
OT30000
KB
ON30000
KB
DP30000
KB
0530000
KB
.OZ30000
KB
DX30000
EX44
KB
EN
EX44
EO
EX44
ET
EX44
EU
EX44
EV
EX2
OV30000
KB
OH30000
KB
0130000
KB
OJ30000
KB
0
EX45
Start
EX44
CJ
EX44
EA
EX44
EB
EX44
EC
EX44
ED
EX44
EF
EX44
EY
EX44
EH
EX44
EI
EX44
EJ
EX44
EK
EX44
EL
EX44
EM
Jump
If
Print
Compute
Vary
Resume
Exit
Type
List
Read
Stop
Oimens.
Pseudo-Op Heading
End of Tape
Eq. 1 Listing
Eq. 2 Redundancy
Eq. 3 Generator
955
2. GENERATION SUBROUTINES
2.
RE
'T'l\TI)f\
RE
RE
RE
RE
RE
RE
GT2l
TH2l
UP421
UQ443
US453
UW5l3
Temporary to indicate whether 5 or 7 servos (set In
string-out)
.I..!',," V
}
Tape handler
}
Line-number processing routine
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
EP537 1
BR537
BP564
BQ632
WA653
WB677
GP7l7
RC735
ES742
RG755
OPl047
XPl126
CW1211
LW1250
RE
RE
RE
RE
RE
RE
RE
RE
RE
H11306
KI1336
LS1465
CG1530 }
CH1642
V10670}
VE2044
NP2052
nJ:"
nc.
}
}
~~~~~~ ~J
D~,q,
RE KB2512
RE GN5360
RE CI144
rtE
E
OH6l2
Size of
RE 012604
Generators RE OJ2615
on Drum
OK763
RE OM33
RE ON461
RE 00107
RE OP430
RE DQ174
RE OR30
Generation Subroutine Regions
Machine Error Routine
Sentence number print-out during an error print-out
Op routine to write output on tape and RG routine
used as adjunct to VARY
Call word routine
Routine to get call word of referenced line number
from list
Routine to put call word in referenced line-number list
Illegal line jump check routine
Library list routine
Control generation routine
Excess three to Flex code
Op File buffer
Input
buffer (250nv lines maximum)
Region where any generator operates
Generated routines output buffer
Library List Threshold (keeps max. of library routines
referenced at 99)
Eq. 1, Generation
Eq. 2. Redundancy
Eq. 3, Generator
If
Jump
List
Print
Read
Resume
Start
RK- D$4:25
S-top
RE DT560
RE OU766
Type
Vary
959
l:~
Initial
addresses
of generators
stored on
drum
These
routines
are part
of End of
Tape and
are referenced from
Control
Generation
OV502
OW34
RE OX24
RE OY551
RE OZ53
End of tape
Exit
Pseudo-Op Heading
Compute
oimension
RE ZZ7230 }
RE OA7230
Generation Set-Up Block
RE
ZA77000
Region of UNICODE Service Routines
RE
RE
RE
RE
RE
RE
RE
RE
RE
FC40001
CB40101
OL40102
CL46101
VF47101
IZ47246
JN47722
RW50023
LN50046
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
CJ50212
EA50242
EB50275
EC51260
ED51367
EF52 140
EY53126
EH53322
EI53356
EJ54136
EK54617
EL55247
EM55674
EN55747
E055773
ET56475
EU57307
EV62113
Excess Three to Flex-Code List
Combination List
Dimension List
Constant List
Vary File List
Referenced Line-number List
List of call words of 2nd-line numbers of sub-programs
Rewind List of call words of tape numbers referenced
Library List of call words of library routines referenced
Start
Jump
If
Print
Compute
Vary
Resume
Exit
Type
List
Read
Stop
Dimension
Pseudo-Op Heading
End of Tape
Equation 1, Generation Sorting
Equation 2, Redundancy Check
Equation 3, Generator
RE
RE
RE
RE
RE
IG2675
UG2713
EG2732
BE2750
BU2774
Routine to put Constant List on tape 5
Routine to put Dimension List on tape 5
Rewind tape routine
Gives generation termination print-out
Sends excess-three symbol list to tape 5
Unless otherwise stated in the coding, the above regions are sufficient for
all the Generation Subroutines included in this section.
960
Control Generation Routine
As with the Generation Set-Up Routine, the indicator TN is used to determine
on which Uniservo the string-out input to generation has been written. It may
either be on Uniservo 3 or 6 depending on whether 5 or 7 Uniservos have been
used.
The title block having been passed by, the first line of any block on this
tape beginning a new sentence string-out contains the number of lines in the
string-out. If this number is greater than 1708' two blocks of input for that
sentence are read into the input buffer. The buffer can only preserve a maximum
of 2508 significant words. Any excess lines above 2508 are later overlayed by
the transfer of a generator into the core. Alarms· in the Translation or StringOut Phase have already given adequate protection against possible exceeding of
this string-out buffer maximum so there is no further check made against this
contingency in generation.
The line number of the sentence being analyzed is compared with the numbers
in the referenced line-number list IZ by means of routine HI and, if found,
its call word added to the list
as needed.
The content of BK2, which holds the name of the sentence under analysis, is
compared with a list of sentence titles to determine what type of sentence is
being analyzed. Depending on which equality is found, a jump is made to a
corresponding section of the routine which brings in the proper generator from
the drum, makes a
ref~rencing
return jump to it, and then jumps back to the
beginning entry of Control Generation to get the next sentence input.
The
return jump to the generator causes the generation of the desired sentence
coding, followed by the writing of it on tape and the storing of its Op File
in a buffer for later writing on tape.
If none of a list of 13 sentence types is recognized, a comparison is made
to see if End of Tape instruction has been encountered.
Generator is brought into the core from the drum.
If yes, the End of Tape
Control of the End of Tape
generation is retained in the Controi Generation from CG77-CGIIO where a
succession of return jumps does a variety of things explained more thoroughly
in the write-up on the End of Tape Generatof
Q
The exit from this succession is
a jump to ZAlO, the address of an overall UNICODE control service routine in
the drum.
961
If the End of Tape sentence is not recognized as suggested in the preceding
paragraph, the call word of the sentence is checked to see if it is greater
than 40000.
If yes, the sentence is recognized as a Pseudo-Op Heading and the
generator for this type is brought into the core.
Before referencing this
generator, the line number of the sentence is put in the proper place in the
prelude of the routine which is to be generated.
Following this extra remedial
step, the generator is referenced similarly as with other generators.
If the call word of the sentence proposed above is not greater than
40000, the sentence is determined by this system of elimination to be the only
remaining type not considered - namely, an equation.
This type of sentence requires special handling which is explained at greater
length in another write-up. Briefly an equation sorting routine is transferred
from drum to core and then referenced by Control; next, an equation redundancy
routine is transferred from drum to core and similarly referenced; finally,
the last equation generator is brought into the core and referenced to complete
the handling of the sentence.
sentence input.
Termination is as usual by getting the next
The only final termination to generation lies in the recognition and
handling of an End of Tape sentence.
All generators or portions of generators are transferred to the core at the
same starting address, 2512.
This first line is an exit line, the entry line
for the main referencing of a generator being the Reco equivalent of 2513.
The generators are packed on the drum starting at 50212.
Information con-
cerning their assumed length on the drum and their initial addresses there is
obtained by examination of the annotated copy of Generation Subroutine regions
preceding the Reco coding of the Generation Phase.
962
Flow Chart for Control Generation Routine
\----31i4
Read in first
block string-out
for anyone sentence to input
buffer region
from tape
sentence is being
analyzed?
Yes
Read in second
block of stringout for same sentence to input
buffer region
from tape
IE--------~
963
HI line-numbe
reference-list
check
Is sentence an End
of Tape type?
Is sentence call
word> 40000?
No
Transfer eq~ no. I
(listing) from drum
to core
Yes
Yes
Bring in End of Tape
generator to core
from drum
Bring in Pseudo-Op
Heading generator to
core from drum
Referencing eq. no.
1 (listing) generator
Transfer Op File and
generation routine line
to tape
Put line number into
output line
Transfer eq. no. 2
(redundancy) from
drum to core
eference generator.
alculates 14, closes
out Op Files, gen .. rtnes,
and puts lib. list 1
on tape
Referencing eq. no.
2 (redundancy)
Transfer eq. no. 3
(generator) from drum
to core
Put Dimension
List on tape
Put Constant
List on tape
Reference generator
in core
Put Excess-threesymbol List on tape
ewind tapes 3 and 4
or tapes 6 and 7 and
move backward on tape 5
to beginning of OpFile
Print-Out: END OF GENERATION. To interrupt
compilation set A not
= O. Start.
Computer stop here
must be followed by
start
Jump toZAlO,
UNICODE control
in drum to start
set-up segmentation
Is A = O?
964
Jump to entry
to read in next
block
Rewind all tapes
and computer
stop
Flow Chart for Control Generation Routine (cont.)
Bring in Start generator to core from drum
Transfer dimension
generator to core
from drum
ring in Jump generator
to core from drum
Bring in If generator
to core from drum
Transfer Stop generator to core from drum
Bring in Print generator to core from drum
Transfer Read generator to core from drum
Bring in Compute generator to core from drum
Transfer List generator to core from drum
Transfer Vary generator
to core from drum
Transfer Type generator to core from drum
Transfer Resume generator to core from drum
Transfer Exit generator to core from drum
965
CONTROL GENERATION ROUTINE
o
1
2
3
4
5
6
7
10
11
IA
TP
AT
RJ
TP
TJ
TP
AT
RJ
RJ
CG
TN
CH2
GT2
BK
CH
TN
CH3
GT2
HI
TP
RP
EJ
SN
SA
AT
BK2
20015
CH4
Q
CG34
CG35
12
13
14
15
16
17 TV
20 MJ
21
22
Sentence
is an
equation
23
24
25
26
27
30
31
32
33
34
35
36
37
40
EJ
TP
TJ
RP
TP
RJ
RP
TP
RJ
RP
TP
0
0
0
0
TP
41 RJ
42 MJ
43 RP
44
TP
45
46
47
50
51
52
RP
TP
RP
TP
RP
TP
A
o
CH21
CHI
BK3
A } Bringing in 1st block (for anyone sentence)
GT3
f
t
{3} to bk, buffer input region
GT
rom ape 6
~GIO}
Is input < l71?
A
} Bringing in 2nd block for same sentence to
GT3
input region from tape S'
GT
t
HII
Check if line no. is in ref. list and, if so,
giving it a call word
Name of sentence to A
A
20014
13 12
CG2l Determining if sentence is start t jumpt if
11
10
7
6
5
~
CG14
print, computet varYt resume, exit, type,
o
3
2
1
0
list, read, stop, or dimens. and going to
1
proper transfer command accordingly.
A
CG20
30000
l
CG77
Is sentence an End of Tape?
A
} Is call word >40000? If so, it is a Pseudo-Op
CG75
Heading
DH30000 CG26 }
ET
KB
Translation for equation
KBl
KB
DI30000 CG3l}
EU
KB
Redundancy check for equation
KB
KBl
DJ30000 CG41
.
KB } Transferrlng
equation generator to core
EV
20015
o
CG4l
o
o
o
o
}"Unused
words
BKI
2531 { Putting line number into proper output line
for Pseudo -- Op Head ing Rout ine to correct
oversight in that routine
KB
KBl
Standard return jump to any generator
CG
Return to get next sentence
o
DR30000 CG41 } Transfers Start generator from drum to core
CJ
KB
and then jumps to reference the generator
DM30000 CG41
KB
Same with Jump
EA
DK30000 CG41 }
.
KB
Same wlth
If
EB
0030000 ~41 } Same with Print
EC
966
53 RP
54 TP
55
RP
56 TP
57 RP
60 TP
61 RP
62 TP
63 RP
64 TP
65 RP
66 TP
67 RP
70 TP
71 RP
72 TP
73 RP
74 TP
75 RP
76 TP
77 RP
100 TP
101 TP
102 RJ
103 RJ
104
105
106
107
RJ
RJ
RJ
RJ
110 RJ
III MJ
CA
o
1
DY30000
ED
OU30000
EF
DQ30000
EY
DW30000
EH
DT30000
EI
DN30000
EJ
DP30000
EK
DS30000
EL
DZ30oo0
IA
CH
O'
o
103
3 50
103
4 65
5 44
6 34
66245
67475
31777
54345
51475
24547
30656
52
CG41
. hE'
KB } Sarne WIt
Xlt
CG41}
.
KB
Same WIth
Type
CG41
,., . WIt.n
. ..
KB 1 ~ame
J
L" l' S +
~
!
CG41
.
KB } Same WIth
Read
~41
Same with Stop
CG41
Sarne WIt
. h D'Imenslon
.
KB
DX30000 CG40 } Brings in Pseudo-Op Heading Routine t jumps
EN
KB
to CG40 to perform 1st function of routine
Qefore referencing the generatoy proper
DV3OO00 eG101}
KB
BrIngs In End of Tape generator
EO
CH25
OP1
OP2 } Sends End of Tape data to tape
OP
KB
KB1
Ref. generatorr Calculates 14, closes out
Op Filet gen. rtnes t and puts list 1 on tape
UG1
Puts Dimension List on tape
UG
IG1
Puts Constant List on tape
IG
BUI
Getting Excess-three symbol List
BU
EG1
Rewind 3 and 4 or 6 and 7 and move backward
EG
on 5 to beginning of Op File
BEl
Termination of gen. print-out
BE
ZA10 Exit to UNICODE control in drum
o
CGl12
2 50
7
CG41
.
KB }" Same wIth
Resume
EM
0
0
10 26
11 70
12 54
13 3014 66
15 46
CG41}
.
KB
Same wIth
Compute
CG41 1
KB ~ j Same wi th Vary
171
40000
BK
Parameter to
string-out
BK170 Parameter to
string-out
46677 START
27777 JUMP
77777 IF
6677 PRINT
26766 COMPUT
37777 VARY
74730 RESUME
72346
6f77i EX-IT--
73523
34656
7777 TYPE
67777 LIST
967
read 1st block of any sentence
to input
read 2nd block of same sentence
to input
16
17
20
21
22
23
24
25
54
65
27
30
0
0
0
0
30242
66515
34473
50277
23000
0
23000
CH24
CA
CH26
77777
27777
5065
77777
2
0
0
CH22
}
READ
STOP
DIMENS
END
Op File setup for End of Tape
Gen. setup for End of Tape
Parameter for referencing op routine for
End of Tape
968
COMPUTER ERROR ROUTINE
This routine is used when a compilation inconsistency occurs in the
Generation Phase or later.
It prints the following:
ALARM~XX~Compilation~Inconsistency~(Possible Computer Error).
Recompile.
where XX, a decimal number from 1 - 20, is determined by where the routine is
entered.
The regular entrances to the routine are BRI to BR24.
If the entrance:
is BRl, XX = 1; if the entrance is BRIO, XX = 8; if the entrance is BR24, XX =
20; etc.
The routine should not be entered with a.return
~-ump.
After the print-out, all tapes are rewound, and the computer stops with PAK
set at the UNICODE service entrance of compilation.
A rewind of all tapes with a computer stop is secured without a print-out
by entering the routine at BQ6.
Eleven alarms (entries BRI-BR13) have been assigned at different portions
of the UNICODE coding.
Explanations of these alarms follow:
969
COMPILER INCONSISTENCY OR COMPUTER ERROR ALARMS
Print-out
Entry
Description
ALARM I
BR I
Subscripted variable symbol or call word is not
found in the Dimension List.
ALARM 2
BR 2
Referenced sentence number is not found in the
Reference (IZ) List.
ALARM 3
BR 3
Sentence number of last sentence in the range of
a VARY is not found in the VARY File (VARY generator).
ALARM 4
BR 4
Initial address of Operand List> Current address
(Equation Generator).
ALARM 5
BR 5
Call word is not found in Directory I (Segmentation
Phase) •
ALARM 6
BR 6
Op File III and Directory 4 are inconsistent.
Flagged call word is not found in Op File III
(Allocation Phase).
ALARM 7
BR 7
Tape on Servo 2 positioned incorrectly.
ALARM 8
BR 10
Tape on Servo 3 (or 6) positioned incorrectly.
ALARM 9
BR 11
Tape on Servo 4 (or 7) positioned incorrectly.
ALARM 10
BR 12
Tape on Servo 5 positioned incorrectly.
ALARM 11
BR 13
Call word within routine is not found in Op File
III (Processor).
970
Machine Error Print
IA
BR
0
0
0
BRI ...
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
RJ
CA
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BP
BR25
BQ
BQ
IA
TP
BQ
BP
BR
BPI
30000
BP26
UP2
BQ17
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
SS
AT
0
TP
RJ
TP
MJ
TP
TP
RJ
RA
IJ
MS
0
0
0
CA
10000
BQ16
BP44
GT2
GT3
BQ20
0
0
0
0
BQ21
BQ
BQ
BQ
BQ
BQ
BQ
BQ
BQ
BQ
BQ
BQ
BQ
BQ
BQ
Used entries
Unused entries
BQ
BQ
BQ
BQ
A
} Manipulation to get proper alarm number
17
into print-out coding
BQ3
30000
~3} Print-out
BQ20 Entry for rewind and stop only. Sets index
for 7 Uniservos
Bypasses next instruction if MJl is set
BQll
BQ20 Sets index of rewinding tapes for 5 Uniservos
GT3 "Rewind parameter" to tape handler
Rewind Uniservo via tape handler subroutine
GT
Increasing tape handler parameter to rewind
BP45
next tape
Jump back to rewind remaining tapes
BQ12
Exit and stop
ZA
Index Constant (Used by Read Generator also)
4
Index Constant for 7 Uniservos
6
Holds index for rewinding Uniservos
0
971
IA
0 0
BP
0
30000
1 TP
BPI
BP30
77220
77220
77220
77220
77220
77220
77220
77220
77220
03220
04220
05220
06220
07220
10220
11220
12220
13220
14220
03220
BP27
46245
0
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
10126
15
44701
0
47523
34515
26515
66305
17525
25463
47526
01305
43220
26514
30227
44624
00134
06534
02673
16565
00126
76630
45451
10154
75234
77777
0
0
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
04
05
06
07
10
11
12
13
14
04
04
04
04
04
04
04
04
04
04
05
0
24
0
51
66
50
65
01
34
51
54
54
30
46
10
0
CA
1
1
BP46
Set by entry "return jump~ lines and used
to compute alarm no.
Dummy instruction used to make up instruction
BQ3
1.flflC
2. flfl C
3. flfl C
4. b.flC
5. flfl C
6. b. b. C
7. fl fl C
B. b. fl C
9. fl fl C
10.fl b. C
11.fl fl C
12.Ll b. C
13.flfl C
14.b. b. C
15.b. fl C
16.{:j, l:l C
17.l:l {:j, C
IB.{:j, {:j, C
19 .flfl C
20.flfl C
Parameter for print-out
ALARM fl
Filled in by alarm number computation
coding
o MP I L A
TION61
NCO N S I
STENCY
fl(POSS
I BLE C
o M PUT E
RflERRO
R ) • flflR
E COM P I
LE •
Rewind parameter to tape handler
Constant (Used in Read Generator also)
972
Flow Chart for WAt WB nSentence _ _ C_ _ )" Print-Out - Generation
~ Line fentence)
~ umbe!/\
Type
J
Load ON 77-77 into
print-out storage
Load EQUATI into
print-out storage
Yes
Line number to printout storage
Sentence type to printout storage
Is sentence
type EQUATN
No
Is sentence
type EQUATI?
No
Print-Out:
Sentence
Is sentence
type DIMENS?
(---)
Yes
Load ION 77 - 77 into
print-out storage
973
Is sentence
type COMPUT?
Yes
Load E77 -77 into
print-out storage
WA Subroutine to Print-Out ....Sentence (Line Number) (Sentence Type)"
without Error Referencing
o
IA
WA
o
o
30000
WA2
WB3
A
o
:B5 }
WB6
Is type EQUATN?
WAl5
Is type EQUAT I?
WA16
Is type COMPlJr?
WA20
Is type DIMENS?
WA22
UP3 } Print-Out: Sentence _ _ _ (_ _ _ )
UP
WA
WB5 } Load {~2~~~7~ into print-out storage
WB6
WA12
Load E77 __ 77 into print-out storage
WB6
WA12
WB6
Load ION77777 into print-out storage
WA12
WB
WB1
30506
30010
0
o
7
63050
17777
01
01011
77777
MJ
1 MJ
2 TP
3 TP
4 TP
5 TP
6 EJ
7 EJ
10 EJ
11 EJ
12 TP
13 RJ
14 MJ
15 TP
16 TP
17 MJ
20 TP
21 MJ
WL1
WL2
WB10
WB15
WB11
WB16
WB17
WB
UP2
o
WB11
WB12
o
WB13
o
TP
WB14
23 MJ
CA
WA24
22
o
IA
0
65
2 26
1
3
4
5
6
7
10
11
12
13
14
15
16
17
o
0
0
o
o
g }
43
77
30
51
30
34
30
26
27
CA
01017
77777
53672
50777
77777
51507
53672
51475
34473
WB20
77777
77777
46634
77777
77777
77777
46650
26766
05065
Exit
Start
Line number to print-out storage
Sentence type to print-out storage and A
Parameter for print-out
SEN TEN
CE~~7777
Line number
~~~(77 77
Sentence name
) ~ ~77 77 77
Filler
EQUATI
ON 77_77
E 77 _ _ 77
ION 77 - 77
EQUATN
COMPUT
DIMENS
974
ROUTINE TO CONTROL TRANSFER OF OP FILE 1 ITEMS
AND GENERATED SUBROUTINES TO TAPE
To use Op Control Routine, a parameter word must be sent to 0p1 prior to
the entry instruction RJ Op Op~~ u of Opl must contain the address of the
first line of the generated subroutine; v, the address of the first line of the
Op File 1 entry for the subroutine.
The function of the routine is to transfer
the generated subroutines and Op File 1 items to Uniservos. Z lines are added
to fill up the last block of each generated subroutine. 170 lines constitute
8
a block.
The actual writing on tape units is done by means of the generalized tape
handler routine.
The proper parameter words and entries to the tape handler
routine are supplied in this Op Control Routine.
The entry instruction of this routine is a return jump to RG subroutine
which adds a call word to the Op File and alters the exit line of the generated
routine if the sentence generated is the last sentence in a VARY loop.
Op File 1 items are stored in a buffer region, NP, and accumulated until
they fill a block, whence they are transferred to tape. Not taken care of in
this routine is the final unfilled block of Op File 1 items. The coding
necessary to fill this final Op File 1 block with Z's and transfer it to tape
is contained in the End of Tape instruction.
The routine handles data stored either in the core or drum.
If subroutine
data is in the drum and it exceeds a block. it is transferred a block at a
time into region GN in the core and thence onto tape.
Subroutine data groups
less than a block are transferred from drum to core in one set of repeat
instructions. Op File 1 data groups in the drum are transferred to NP in the
core just as if they were located in the core.
Subroutine data groups in the core are handled somewhat faster.
All
complete blocks of a subroutine are handled as a single unit in their referral
to the generalized tape handler. The last partial block of a subroutine is
then transferred to region GN, where the proper number of Z lines is added to
make a completehlock. Thisre_yion _GNa! 170 lines isnee_dedonly -during Op
a
Control operation. Between referrals to the routine it may be used for other
975
temporary purposes.
In this respect it differs from region NP which is
reserved exclusively for Op File 1 item storage during generation.
At the beginning of generation instruction RJ RQ RQI causes the proper
starting blocks to be written on tapet and sets up the proper parameters for
the generalized tape handler. depending upon whether 5 or 7 Uniservos are used.
On Uniservo for generated subroutines, GEN TAPE is written on the 21st and 22nd
lines of the first block t SUBROUTINES on the 1st and 2nd lines of the 2nd
block. On Uniservo for Op File items, FILE TAPE and OP FILE I are similarly
put on the first two blocks, with Z - fillers on the balance of the block lines.
The counts of blocks of subroutines and Op File I items include these starting
blocks.
The v portion of the first line of a subroutine program must contain the
number of lines of prelude and routine. Similarly, the v portion of the first
line of an Op File I item should contain the number of lines in the item. These
figures are used in this routine.
ES, the counter for the number of lines in NP, is used in the End of Tape
routine to transfer the final Op File I block to tape. ES5, the number of
blocks of Op File 1 written on taper and ES6 the number of blocks of subi
routines written on tape, are also used in subsequent routines.
976
Flow Charts for Op Control Routines - Generation
Op Routine To Store Op Files and Write Buffer Loads on Tape
Add call word to RG
Op File and alter
generation subroutine exit, if
last sentence
of VARY
Will Op File of routine overflow buffer
ion?
Transfer Op File
or its balance
to buffer region
The part of Op
File needed to
fill buffer is
transferred to
buffer region
Transfer buffer region
to tape
Up count of
Op File blocks
Is no. lines not
transferred from Op
File <1701
No
Transfer 170 lines
to buffer region
977
Flow Charts For Op Control Routines - Generation - (Cont.)
XP Routine To Write Generated Routines on Tape
Is subroutine or balance < 170 lines?
Yes
Is subroutine or
balance < 170 lines?
Transfer 170 lines
from drum to buffer region
Yes
Yes
Write buffer on
tape via tape
handler
5
No
Compute number of
complete blocks
Write number of complete blocks on tape
Up count of subroutine blocks
Up count of
subroutine blocks
Transfer subroutine
or balance thereof
to buffer region
I---~
Filling buffer with
Z lines
Transfer buffer
to tape
Up count of subroutine blocks
978
Flow Charts for Op Control Routines - Cont.
RG Routine to Insert Vary Call Word in Exit Line and in Op File I Item of Last Statement in a Vary Range
~
RG
IS sentence call
word for a statemen t other than
vary?
Box I
-]
I-
Reset box I to
continue search
Set indicator
equal zero
4
0-1
2
8---{:ndicator = O?
Decrease Op File
I address in Op
parameter by one
Increase Op File
I item length
by one
Insert call wordlg
"Of vary from Vary
Fi Ie i tern into exit
[line of routIne
Move Op File I
item back one
location
Set indicator
not equal zero
Insert vary call
word as cross
reference in Op
File I item
OP CONTROL SUBROlJfINE
Routine to
Store Op
Fi les and
Write Op
Files on
Tape
o
IA
MJ
OP
o
1 0
30000
2
RG
RJ
TP
4 QT
5 SP
OPI
GP3
OPI
6
TV
A
7
10
11
12
13
14
15
16
17
TP
QT
TP
RA
TJ
TP
ST
SA
TU
GP3
30000
ES
ES2
3
GP5
GP5
ES
GP6
A
20 TP
21 RA
22 TV
23 SP
24 TU
25 RP
26 TP
27 TP
30 RJ
31 RA
32 TP
33 RA
ES
ES3
ES3
ESll
34 RS
ESI
35
6
1 block of 37
170 lines 40
to buffer 41
region NP 42
for trans- 43
fer to
~4
tape
45
46
Last
47
partial
50
block to
51
NP
52
A
30000
30000
RC
GT2
ES5
GP7
ESII
TJ
SP
GP5
ESII
TV
A
RP
TP
TP
MJ
TP
TP
TP
SA
30170
30000
GP5
o
ES
A
ESI
Exit
u = address of 1st line of generated subroutine. v = add~ess of 1st line of Op File
VARY subroutine alters exit lines of routine
RGI
being written on tape
~ll } Address of 1st line of Op File ~ ESII
30000
30000
i~lO } Number of lines in Op File
~
ESI
ESI
ES2 }
ESI
OP44
ES + ESl ~ ES2
Does ES2 exceed l70?
:S4 } Nu mbe r 0 f 1in e s 1e ft to fill NP ~ ES4
17 } Sets up u of repeat command Op 25 so that
proper number of lines needed to fill NP
OP25
are transferred to it
Sets
up v of Op 26 such that Op File i terns are
ES3 }
transferred
to correct part of NP
RCI
OP26
17 }
Sets up u of Op 26 to correct beginning add.
OP26
OP27 } Transfers Op File items to fill up NP
30000
GT3 } Writes completed NP onto a block of tape
GT
Count of Op File blocks
GPIO
Clears ES storage
ES
ESII + ES4 ~ ESll, the next address of Op
ES4
File item to be transferred
ES4
ESI - ES4 ~ ESl, number of lines left in
Op File item to be transferred
OP44
Is 170 > no. of lines left in Op File item?
17 } Setting up u of Op 64 to proper address
OP41
OP42 } Transferring l700p File items to NP
NP
ES4
170 ~ ES4
OP27
ES3
Number lines in NP -7 ES3
ES
Number of lines due to be in NP ~ ES
A
17
TV
GP6
A
OP55
RA
TV
ES3
ES3
OP56
Rel
}
Sets up u of repeat to proper value
}
Sets up v of Op 56 to correct address
980
53 SP
54 TU
55 RP
\.56 TP
ESll
CA
OP57
Routine to
Write Generated
Routines
XP
OPl
GP3
30000
3 LQ
4 QT
OPI
GP3
GP6
5 TJ
6 TP
Drum
Core
Partial
Block
30000
30000
IA
TU
1 TP
2 QT
o
on Tape
A
ES12
GP5
ESlO
17 } Sets up u of Op 56 to correct address
OP56
XP 1 Transfers last quantity of Op File items to
NP, leaving NP as an unfilled partial
30000f
buffer region block.
XP2 }
~S12
2~
XP22
~P40}
7
10
11
12
13
14
15
16
17
20
TJ
SP
TU
RP
TP
TP
RJ
RA
RS
RA
21
22
23
24
25
MJ
TP
TJ
DV
TP
26
27
30
31
32
TP
ST
LA
AT
TV
RC4
ES10
A
25
GT3
GT3
33 RJ
34 RA
35 MP
36 AT
GT2
ES6
ES7
ESlO
GT
ES7
GP5
ESlO
37 TP
40 ZJ
ES12
XP4l
GP6
r
41
SA
42 TU
43 SP
1
ESIO 1
30170
30000
RC4
GT2
ES6
ES12
ES10
17 }
XP13
XP14 }
GN
GT3 }
GT
GPIO
GP5
GP5
o
XP6
ES12
GP5
GP5
~P40}
A
A
ES7
GP10
A
A
FSlO
44
45
TV
RP
30000
46
TP
30000
A
ES7
ES12
A
t
Number of lines of subroutine
~
ES12
Address of 1st line of subrout ines
-7
ESIO
If 30000> address, subroutine is in core.
Otherwise, assumed to be in drum
Test to see if subroutine has fewer than
170 lines left
Set-up u of XP13
~o
right address
Transfer 170 lines of subroutines to GN
Write block on tape
Count of blocks
Reduce ES12 to no. of lines left in subrtne.
Increase ESIO to address of next line of subroutine to be transferred
Test for less than 170 lines in subroutine
Number of blocks in subroutine ~ ES7
Remainder or number lines in last partial
block to ES12
Setting up parameter with correct number of
blocks to be written on tape
Setting up correct referencing address of
parameter
Writing blocks on tape
Count of blocks
Calculating number of lines written on tape
Correcting FSIO address to that of next
line to be transferred
Test to see if any lines left to be written
of subroutine
Setting up u of repeat to proper value
Setting up correct referencing address of
next line of subroutine in XP46
Putting remaining lines of subroutine in GN
981
47
50
51
52
53
54
55
56
57
60
61
62
TP
SS
TU
RA
TV
RA
RP
TP
TP
RJ
RA
MJ
CA
IA
GP5
ES12
A
XP55
ES12
XP56
10000
GP2
RC4
GT2
ES6
o
17 }
A
XP55
GP4
XP56 }
RC3
XP57 }
30000
GT3
GT
GPIO
OP
71
RC
00105
1
0
o
NP
00104
0
o
NP
GN
GN
4 0
o
o
3
o
CA
RC5
IA
GP
01015
34463
74747
01
1 31
2 74
3
0
4 0
5 0
6
7
10
11
12
13
14
15
0
0
0
01
67
01
01
01
CA
Setting up v of XP56 so that Z lines start
at right place in GN
Filling up GN with Z's
Parameter word -7 generalized tape handler
To tape handler
Count of blocks
Exit
XP63
o
2 71
Setting up u of XP55 such that remainder of
GN is filled with right number of lines of
Z's
o
10000
o
o
o
o
65672
66345
31344
66245
01323
GP16
15201
00104
47474
77777
o
Parameter word to write 1 block on tape 5
from NP
Address of 1st line of Op File storage
Tape 4 parameter write from GN
Address of 1st line of storage used for a
partial block of a gen. routine
Parameter temporary used for writing from GN
to either tape 4 or tape 7
f':l f':l t::. 0 P f':l
FILEf':ll
Line of Z 's
Mask
170
30000
o
1
55451
03065
63001
23001
05001
~SUBRO
UTI N E S
~FILE~
~TAPE~
~~GEN~
982
Op Control Subroutine-Sequential Uses
of Temporary Storage (ES)
o
1
2
3
Number of lines in NP, buffer region in which Op Files are accumulated
for writing on tape.
Number of lines in current Op File being stored.
{ Number of lines remaining to be stored from current Op File.
Used to accumulate ES + ESI.
ES ~ ES3
(ES3 + NP) ~ES3t giving the address in NP to which next line is to
{ be transferred.
5
Number of lines put in NP from current Op File the last time a group of
lines was transferred.
Number of blocks of Op File 1 written on tape.
6
Number of blocks of subroutines written on tape.
7
Number of whole blocks of subroutines to be written on tape.
4
10
Address of next line of subroutine to be written on tape.
-11
Address of next line of Op File to be transferred to NP.
12
{NUmber of lines of subroutines.
Number of lines of subroutine in last block.
983
OP CONTROL SUBROUTINE - RG ROUTINE
To Insert Vary Call Word in Exit Line of Last Statement of
Range and in the Op File I Item
o
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
IA
MJ
TU
TP
QT
TJ
TJ
MJ
TJ
TJ
MJ
TP
TU
TU
TP
RP
EJ
SP
LQ
TU
SS
SA
TU
TU
TU
LQ
TV
RA
TV
TP
QJ
SP
TU
TU
TU
TU
SP
SA
TU
RS
TV
50 SA
51 TV
52 RA
RG
o
OP1
RG62
30000
RG63
RG64
o
RG65
RG66
o
RG62
VF
RG70
BK1
30000
30000
RG16
30000
RG3
Q
A
RG7
RG12
RG
RG
RG12
RG
RG71
RG16
RG17
A
RG }
RG20
o
Q
Q
Q
17
RG16
A
A
A
RG17
RG33
RG56
Q25
RG33
RG67
30000
RG17
OP1
Q
RG33
30000
RG71
RG56
OP1
A
A
A
A
30000
RG64
A
OP1
A
30000
A
30000
o
o
~G36}
17
RG43}
RG50
RG52
RG54
17
o
RG53
GPIO
RG54
~G60}
GP10
Exit
Set address of routine into RG3
u-mask ~ Q
Routine CW ~ A
27000 > CW?
No: 30000> CW?
NOi so out
22000>CW? If so, out
No i 23000> CW?
NOi so out
Set QJ indicator bit = 0
CW = 22 --- or 27 --Set EJ initially
Sentence number ~ A
Check for matching sentence number in
Vary File
jn ~ ARu
jn-r~Qu
Set RP for Continuing Search
r~~u
Add r to Starting Point of Previous Search
Reset EJ to continue search at next word
Set address of Vary CW in transfer command
Set Vary CW address in shift command
Address of routine ~ Qv
Set routine address in transfer command
Set to address of exit line
Transfer Vary CW to exit line of routine
Determine if this Op File I item has been
changed before
No, so enter Op File address in Au
Enter Op File I address in commands
Enter # words of item in Au
Add j = 3
Set into RP
Decrease Op File I address in parameter
Set transfer instruction to new address of
Op Fi Ie litem
Set address for insertion of new cross
reference
Increase # words in Op File I item by one
984
®
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
RP
TP
TP
30000
30000
RG
RG55 } Move Op File I item up one location
30000
Set QJ indicator bit = 1
RG7l
SP
30000
17
TP
QT
MJ
0
0
0
0
0
0
0
0
CA
RG62
A
0
77777
27000
30000
22000
23000
0
VFl
0
RG72
Q
30000
RG15
0
0
0
0
0
Vary CW ~ .~
u-mask ~ Q U
Enter Vary CW as Cross Reference in Op File I
Back to continue search
6
0
0
985
CONSTANT CALL WORD ROUTINE FOR GENERATION
At the start of string-out 00 20000 00000 is put in fixed address 10,
which is a counter register for the number of constants. Both u and v of 10
increase with each added constant. If n of 0 2,n n in 10 exceeds 1000 , the
8
computer stops with the alarm print-out -- (Sentence
(
) Too Many
Constants.
Input constant goes to A and the instruction RJ CW CWI activates the
routine. The call word output goes to Q and A •
v
u
The routine occupies 36 8 lines in region CW. Region CI, the list of
constants, may occupy up to 1000 lines in the maximum-size problem. Needed
8
for the alarm print-out is the UP print-out subroutine.
If a constant is already in list CL, entry to the routine gives the call
word by determination of its position. If a constant is not in the list, it
is added to it and given the next call-word-number assignment.
986
Flow Chart - CW Call Word Routine of Constants - Generation
Is constant in
Constant List?
Up count in 10
of length of
Constant List
Yes Add constant to
next position
in list
Yes
Obtain position
of constant
in list
Print Out:
SENTENCE _ __
TOO MANY
CONSTANTS
Add position to
base 66777 to
form call word
Put call word
in
Rewind tapes
and stop
computer
.
-t::\2
~
Call Word-Generation
o
IA
CW
MJ
0
1 TU
10
30000
CW2
2 RP
3 EJ
30000
CL
Q
10
CW7 }
CW4
17
4
SN
5 SA
6 MJ
When constant is
not in
list
Adding
Constant
to list
7 TP
10
11
12
13
14
15
16
17
20
21
22
23
TV
RA
TJ
RJ
TP
RJ
o
A
10
10
CW30
WA
CW26
UP2
o
CW22
Q
CW20
CW27
CW17
WA2
~3
}
MJ
o
BQ6
RA
TP
SP
AT
QT
CW20
Q
10
CW31
CW35
CW36
30000
17
Q
Q
24 LQ
25 MJ
26 40
27 0
Q
o
25
CW
CW32
3
1
1
30 0
31 0
21001
66777
o
32 66
33 50
34 65
35 0
36 0
CA
51510
73012
66245
77777
14724
65150
6665
o
1001
o
CL
Exit
Sets up u of repeat by using Constant List
count in 10
Checks to see if constant is in eLf Con. List
[-j t -(n-r)]
(A)u
[ - j, r - nJ + [ j t ~ = r -7 (A R) u
Constant ~ q
n ~ v of CW17
Counter 10 increased by 1
Is Call List ~ 1000?
Gets sentence number print-out
Sends parameter to error print-out routine
and gets print-out: Too Many Constants
Jump to rewind tapes and computer stop rtne.
(n + CL) ~ v of CW20
Constant added to next position in list
n ~ (AR)u
(r + 66777)~ q. Call word in qu
Extraneous mate~ia1 in q destroyed via mask
and QT. Call word formed in A
Call word put in Q
u
v
.
J ump to eXIt
Parameter word used in print-out
Used also as a constant in LS routine and in
read generator
Threshold check on size of CL
Base number from which call words are determined by adding to position in list CL
T006MA
NYL'lCON
S TAN T S
Mask
Address of 1st line of Constant List
CW37
988
Routine D to Get Call Word of Referenced Line
Number from List IZ - Generation
To use this routine, the referenced line number is put in A.
struction RJ LW LWI will put the call-word output in A and Q.
u
v
Then inIf a line
number is not found in list IZ, the computer will stop with the error printout:
ALARM 2.
COMPILATION INCONSISTENCY (POSSIBLE COMPUTER ERROR).
RECOMPILE.
If the call word of a line number is not found, the computer will stop with
the error print-out: SENTENCE
(
) REFERENCED NUMBER _ __
IS NOT A PROGRAM SENTENCE.
989
Flow Chart - LW Generator Subroutine to Get Call Word of Referenced
Line Number From Referenced-Line-Number List IZ
T-----..;~
Is referenced
1i ne number in
list?
No
Extract word following line number in list
Is this word
zero?
Print-Out: ALARM
2. COMPILATION
INCONSISTENCY
POSSIBLE COMPUTER
ERR OR • RECOMPI LE
Yes
PRINT-OUT:
SENTENCE _ __
___ REFERENCED
NUMBER _ _ __
IS NOT AMONG PROGRAM SENTENCES
Rewind all
Rewind all
Put this call
word output in
Au & Qv
Generation--LW Routine to Get Call Word of Referenced
Line No. from List IZ--Routine D
IA
MJ
0
1 TP
2 TU
3 RP
4 EJ
5 SN
6 SA
7 SA
10 TU
11 TP
12 ZJ
13 TP
14 LA
15 MJ
.16 RJ
17 TP
20 MJ
21
22
23
24
25
26
27
30
31
32
33
34
35
07
40
0
54
50
67
0
01
66
51
65
26
65
CA
LW
0
A
11
30000
IZ
Q
11
LW23
A
30000
LW13
A
A
0
WA
LW22
0
77777
LW24
IZ
30313
26302
47253
0
34650
01240
32542
30506
30227
77777
LW36
30000
LW27
LW3
BR2
LW5
17
0
0
LW11
A
LW16
}
Q
17
Exit
Entry.Storing line no. for possible print-out
Setting up repeat via Reference List Counter
Search for line number in Line No. Call
Word List
(n-rI] =-j, (r-n)
[-j. (r - nJ] + [j, nJ = r
r + IZ ~ Au
Setting up u of next instruction
Call word of line no. ~ Av
Test if call word is there
Call word ~ Qv
Call word ~ Au
- a,
LW
WA2
UP3 }
CW15
77777
11
0
05430
70150
05401
Sentence no. Print-Out
Referenced No. -- Is not a Program Sentence.
Jumps to computer stop after rewind tapes
via CW routine portion
Used as a mask in LS routine
Parameter for Print-Out
Address of 1st line of line no. list
REFERE
NCEDllN
UMBERll
0
15051
15254
44701
63050
77777
77777
llIS~NO
T~AllPR
OGRAM~
SEN TEN
CE •
Unused
991
Line Number Check Routine C -- Generation
Instruction RJ HI HII activates this routine without input.
The routine
picks out the line number of the sentence under surveillance from buffer region
BK and checks to see if this number has previously been put in Line Number
Reference List IZ.
If an equality is found, a check is made to see if the call
word of the line number has been put in the address following the line number
in IZ. If not, the call word of the line number is obtained from the buffer
region and inserted in the v part of this location.
992
Flow Chart for Routine C Generation - HI Reference-List Line-Number Checking Routine
Is line number in
reference list IZ?
Extract word following line number
in list IZ
Is this li~ Yest:;\
zero? .~
No
r2\.J Is
~
~\
call word of sentence in u position?
No
Put call word into line
following referenced
line number in list
Put call word into line
following referenced
line number in list
Shift call word in
list until it is in
v position
Reference-List Line-Number Checking Routine C-- Generation
IA
HI
o
MJ
o
1
2
TU
11
TP
BKI
30000
IZ
Q
3 RP
30000
HI3
A
HI }
HI5
17
4
EJ
5
6
7
10
SN
SA
SA
TU
HI26
o
o
A
HI12
11
LQ
HI12
Q25
12
13
14
15
16
TP
30000
HI
BK3
HI27
Q
HI23
HI17
BK3
30000
HI12
HI21
30000
25
HI
HI24
30000
HI
ZJ
TP
TJ
TV
Call word
of sentence17 TU
is in u position
20 TU
21
22
23
Call word 24
in BK3 is 25
in v po26
sition
27
LQ
MJ
TV
TP
11
o
Q
BK3
MJ
o
0
IZ
0
1
CA
HI30
Exit
Sets up u of repeat by counter 11
Line no. to A
Is line no. in reference list IZ?
-j t (r - n)
j, n+ [- j t (r -n)] = r
r + IZ ~ Au
Sets up instruction to get call word of line
number to A
Puts address in OV of line that should have
call word
A
HI14
A
Exit if a call word is there
Call word of sentence to A
Is [0 1 OJ > (BK3). If so, call word is in v
Sets up right ref.-list address in v of next
instruction
Call word to line following line no. in ref.
list
Sets up same ref.-list address in next
instruction
Transfers call word to v position
Puts address into v of next instruction
Call word to right line in ref. list
o
o
994
KI Illegal Line Jump Check Routine -- Generation
After a call word has been obtained for a line number, it should be put
in A (the rest of A must be cleared) for this test. (The regular call word
u
output of LW gives the call word as desired in A.) In Q should be a pseudou
operation indicator.
40 0 0 indicates that a sentence is within a pseudo
OPe Zero indicates being outside a pseudo Op.
will activate this routine.
Now instruction RJ
Four error print-outs occur for attempted illegal jumps.
by SENTENCE_,_ __
KI
KII
All are prefixed
I)
JUMP TO SENTENCE OUTSIDE PSEUDO OP FROM WITHIN PSEUDO OP IS NOT
PERMITTED.
2)
JUMP TO PSEUDO OP LINE FROM OUTSIDE PSEUDO OP IS NOT PERMITTED.
3)
JUMP FROM ONE PSEUDO OP TO ANOTHER IS NOT PERMITTED.
4)
JUMP TO HEADING OF PSEUDO OP IS NOT PERMITTED.
The computer stops after each of these print-outs and all tapes are rewound.
The call word comparisons within the routine are based on the convention
that all sentences within a pseudo op, except the first, have a call word less
than 23000 and all sentences outside a pseudo op have a call word greater than
22777. The call word of the first line or heading of a pseudo op is 40000 plus.
Only the compute instruction may reference this line. A list IN of 2nd line
pseudo-op call words is used to check illegal jumps from one pseudo op to
another.
995
KI Illegal Line Jump Check Routine - Flow Chart
Line No. Call Word Input in A -Pseudo-Op Indicator in Q
u
Is 400008 > call wor
of line no.?
Is sentence in
pseudo operation?
Is 230008 > call
word of line no.?
No
No
No
Print-Out: SENTENCE
JUMP TO
HEADING OF PSEUDO OP
IS NOT PERMITTED.
Yes
call word of
no. > 22777?
No
Print-Out: SENTENCE_
JUMP TO SENTENCE OUTSIDE PSEUDO OP FROM
WITHIN PSEUDO OP IS
NOT PERMITTED.
SENTENCE
TO PSEUDO
OP LINE FROM OUTSIDE
PSEUDO OP IS NOT
PERMITTED..
Print-Out:
JUMP
-..0
-..0
0'
Rewind of all
Using IN List of call words
of pseudo op second lines,
obtain information on the
pseudo op ~ which the jump
is being made.
Using IN list, obtain
information on the
pseudo op from which
jump is being made
Are the 2 pseudo
the same?
No
Print-Out: JUMP FROM
ONE PSEUDO OP TO
ANOTHER IS NOT PERMITTED.
KI Illegal Line Jump Check Routine--Generation
Line No. Call Word Input in Au
Pseudo-Op Indicator in Q
IA
MJ
o
1
BKI
KI54
KI46
UP2
KI5l
UP2
:3 }
6
TP
TJ
TP
RJ
TP
RJ
7
MJ
KIll
KI52
KI45
o
BQ6
KI14
KI23
UP3 }
KI6
A
Q
2
3
4
5
Call word
< 40000
within
pseudo-op
10 QJ
11 TJ
12 TP
13 MJ
Outside
pseudo-op
14
15
16
17
20
21
TP
TP
TJ
22
MJ
Within
pseudo-op
KI
o
TP
RJ
TP
o
KI53
Q
KI46
UP2
KI47
o
30000
KI57
KIlO
~3
~I
}
:3 }
}
UP3 }
KI6
KI24
23 TU
IN
24
25
26
27
RP
TJ
TP
TU
20000
JNl
Q
30 SP
31 RP
32 TJ
33 TP
34 EJ
BK3
20000
JNl
KI126
Q
35 TP
36 RJ
37 TP
KI46
UP2
KI50
UP3 }
UP
IN
KI126
KI27
Q
40 MJ
41
42
43
44
45
TP
IN
o
KI4l}
KI26
KI126
KI3l
17
KI43 }
KI33
~I
~~ }
MJ
o
TP
MJ
(}
K~I3-3
0
KI55
20
IN
}
Exit
Line No. to Print-Out Storage
Is 40000> call word of line nOe?
Sentence _ _ _ ~Jumpll
To heading of pseudo-op is not permitted
Jump to rewind of servos and computer stop
Is sentence within pseudo-op?
Is 23000> call word of line no.?
Sentence
Jump to sentence outside
pseudo op from within pseudo op is not
permitted
Line no. call word Q
u
Is line no. call word> 22777?
Sentence
Jump
To pseudo op sentence from outside pseudo op
is not permitted
Setting up u of next instruction for comparison of line no. call word with list
IN of pseudo op 2nd lines
Purpose of comparison is to find via Q to
which pseudo op jump is being made
Setting up u of instruction to number within
IN list plus 20000
Getting call word of sentence to u of A
Determining via Q in which pseudo op we
are operating
If pseudo op in which we are operating is
the same as pseudo op to which we are
jumping, Q and KI126 will be equal
Jump
Sentence
From 1 pseudo op to another is not permi tted
Parameter for Sentence
Jump to Sentence
outside pseudo op from within pseudo op
is not permitted
997
46 0
47 40
KI55
KI75
4
12
50 40
KI107
10
51
40
KI117
7
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
110
0
0
0
65
26
0
01
66
66
51
30
27
31
34
52
01
01
52
66
66
67
01
31
67
01
51
65
52
66
01
51
30
52
50
01
66
34
66
27
31
27
34
01
66
0
23000
22777
40000
30506
30017
0
44674
51016
30502
67666
01526
51015
54514
66333
65306
51520
50516
30544
30272
51015
27510
46345
54514
66653
52653
01515
01505
30544
30272
31545
50300
67275
01665
51663
34650
01523
66663
51013
34503
01526
51015
65015
52305
66302
0
0
0
63050
77777
0
75201
53050
63001
53427
53067
15201
70171
45001
72751
13465
60101
73466
27777
26530
15152
03001
70151
42730
06727
20134
16601
73466
27777
14701
15265
10151
10124
33054
15051
05447
02722
33024
20151
53067
15201
05166
44734
72277
0
CA
KI127
III
112
113
114
115
116
117
120
121
122
123
124
125
126
0
Jump
Parameter for Sentence
Parameter for __ to pseudo op sentence from
outside pseudo op is not permitted
Parameter for __ from one pseudo op to
another is not permitted
Parameter for __ to heading of pseudo op is
not permitted
SEN TEN
CE~
~JUMP~
TO~SEN
TENCELl
OUT SID
ELlpSEU
DOLlopLl
FROMLlW
ITHINLl
P S E UD0
LlOPLlIS
LlNOTLlLl
PERMIT
TED.
TOLlPSE
UDOLlOP
~LINELl
FROM~O
U T SID E
~PSEUD
OLlOPLlI
SLlNOTLl
PERMIT
TED •
LlFROM~
ONELlps
EUDOLlO
PLlTO~A
NOT HER
LlISLlNO
TLlPERM
ITT ED.
TOLlHEA
DINGLlO
FLlpSEU
DOLlOPLl
IS~NOT
LlPERMI
T TED •
998
LS Library List Routine - Generation
The list LN built up on the drum starting at 50046 during Generation is a
list of call words of library routines referenced.
Each call word is stored in the u position. Call words less than 50200
designate Permanent Library Routines. Call words ~ 50200 designate library
routines which have been put on the library tape on Uniservo 2 by the Librarian.
LS Library List Routine distinguishes between the two types of library
routines referenced and by means of two one-shot switches puts an indicator
into counter 5 the first time each of the types is used. If a Permanent Library
Routine has been referenced, 40 is put into the operation portion of counter 5.
If a library routine from Uniservo 2 has been referenced, 20 is put into the
operation portion of counter 5. Of course, when both types have been referenced,
60 is in the operation portion of 5.
The input to the routine is the call word of the library routine in A. A
u
search is made of the list to see if that call word has previously been put
in. If it is already there, a quick exit occurs. If it is not there, it is
put in the list at the next empty space and counter 5 is increased by 00 00001
00001 to wO 2000n n where w is the indicator mentioned above and n is the
cumulative number of call words in the list. Before the exit, a check is made
to see if n is less than 100. If it is not, the following print-out occurs:
SENTENCE
(
) TOO MANY LIBRARY ROUTINES.
The blanks in this print-out are filled in, respectively, by a line number
and the sentence type. Of course, if this improbable print-out occurs, all the
tapes are rewound and the computer stops.
999
Flow Chart for Generation
Is 50200 > call word
of library routine?
1- shot
switch. Ha s
this path been traversed befo're?
Library List Routine
switch.
Has this path bee
traversed before?
No
1- shot
I.S
Yes
No
Puts indicator into
counter 5 that
a permanent library
routine has been
referenced
Yes
Is library routine
call word in list UN
No
I--'
No
Put indicator into
counter 5 that a
library routine
on Uniservo
2 has been referenced
Put call word of
routine into library
list UN
o
o
Up counter 5 of library list routines
o
Is library list
length > 99?
Yes
Rewind all tapes
and stop compute
Print-Out: SENTENCE
___ (
) TOO
MANY LIBRARY ROUTINES
Library List Routine--Generation
Input Call Word in Au
o
IA
LS
MJ
o
30000
1 TP
A
Q
2
TJ
LS40
LS7
3
4
RJ
MJ
o
iS3
LSS
5 CC
5
LS12
LS42
6
o
7
MJ
RJ
10 MJ
11 CC
LS7
o
5
12 TP
13 TU
Q
14
15
16
17
20
21
20000
RP
EJ
TV
RA
TP
RA
22 TP
23 QT
24 TJ
25
26
27
30
31
32
33
34
35
36
37
RJ
TP
MJ
40
66
50
54
51
65
0
0
40 0
41
40
42
20
CA
5
rn
5
LS20
Q
5
LW2l
5
Exit
Call Word ~ q
Is 50200 > call word? If so, a Permanent
Library Routine is being referenced
Cail word is ~ 50-200
Puts indicator that library routine from
Uniservo 2 is being referenced into 5
LS12
LSll
LS12
LS4l
Puts indicator that a Permanent Library
Routine has been referenced into 5
Call Word ~ A
A
Sets up u of repeat so that library list
LS14
may be compared
~16 } If library routine is already in list, go to
exit
Putting
library routine call word in list
LS20 }
rn when it has not been found there
LS37
30000
Adding 0 l I t o counter 5
Putting mask 07 77777 77777 into q
Masking indicator bits out of 5 for transfer
A
to A as 0 2000n n
LS
Is
00 20100 00100 > A. Thus n t number of
LS36
rout ines, must be < 10010
WA
WA2} Print-Out: SENTENCE
(
) TOO MANY
LS30
UP3
LIBRARY ROUTINES. Rewinds tapes and stops
o
CW15
computer
Parameter for print-out
LS3l
5
TOOl!\MA
51510 14724
NYl!\LIB
73014 63425
R AR Yl!\R
24547 30154
67663 45030 OUT I N E
S
77777 77777
CI20000 CI
Threshold for number of library roudnes.
CI
10010
o
iN
Address of 1st line of library list
50200 0
Call word of 1st non-permanent library
routine
o
0
Indicator that a Permanent Library Routine
has been referenced
o
0
Indicator that Uniservo 2 Library Routine
has been referenced
LS43
CW27
Q
=
1001
Routine for Conversion of Excess-Three to Flex Code
Three regions
VX (154 addresses), FC (100 8 addresses). and VE (6 ad8
dresses) -- comprise the total 262 needed for this routine.
8
The parameter input line. VX4, holds the address of the first line of input
in the u portion. In the v portion is given the number of words of input. If
every other line starting with the first address is to be selected as input,
40 is put in the operation code of VX4. If every line following the first
address is to be used. 00 is put in the operation code.
In the u portion of VX3, the desired address of the first line of output
should be supplied. V of VX3 must be zero before entering routine. The
routine when operated by instruction RJ VX2 VX will supply in the v portion of
VX3 the number of words of output. The Flex code output is packed from the
left with the necessary added shift-up or shift-down Flex codes.
Every excess-three character from 00 to 76 has a corresponding Flex code
or set of Flex codes assigned to it as shown on the accompanying table.
77,
though assigned Flex code 77. is not stored in the output.
Because of the addition of shift-up and shift-down Flex codes and the
fact that some excess-three characters are represented by more than one Flex
code, greater storage space must be allowed for the output than is needed for
the input.
In the table the first digit of each Flex code representation is not stored
in the output. It is used only to distinguish between lower-case and capital
letters. A 4 in the first position indicates lower-case; 0 indicates capital.
A basic assumption in this routine is that the characters on the Flexowriter are in the standardized form shown in Table I on page 15 of PX38~(Input
and Output Systems - Univac Scientific). Any changes made on the Flexowriter
keyboard from this standard will cause erroneous results in the print and type
instructions of UNICODE.
The keyboard of
proposed on the two
Preparation, of the
this requirement of
the Unityper is assumed to be in accordance with the changes
pages following the code table. See Chapter 8 t Tape
UNICODE Manual for an explanation of a system of bypassing
an altered keyboard.
1002
Excess Three to Flex Code Table
Excess Three
Character Where
Different
Excess
Three
Code
Flex
Code
Character
0
1
056
004
Space
')
A~L.
"'SoJV
'"
/
>
<
437
452
474
470
464
462
466
472
460
433
054
413 01 12
046
070
446
442
446
030
023
016
022
020
026
013
005
014
062
060
411 24 12
3
4
5
6
7
10
II
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
1003
0
1
2
3
4
5
6
7
8
9
/
gtr
(
W
A
B
C
D
E
F
G
H
I
W
W
Isr
Excess Three to Flex Code Table (Cont.)
Excess Three
Character Where
Different
Excess
Three
Code
Flex
Code
074
064
450
042
032
036
011
007
006
003
015
035
012
066
427 61 54
033
W
~
73
74
037
052
044
454
054
024
001
034
017
031
027
025
021
75
76
77
072
444
077
40
*
Character
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
1004
~
I
)
J
K
L
M
N
0
P
Q
R
W
*
"V
W
V
+
/
S
T"
U
V
W
X
y
Z
'\V
=
Ignore
Proposed Unityper Changes
PRESENT
PROPOSED ADDITIONS
SYMBOL
PULSE CODE
NAME
00 0000
Ignore
00 1101
Apostrophe
00 1110
Ampersand
&
01 0000
Carriage return
f
01 1101
Number
01 1110
NAME
SYMBOL
Superscript minus
J
Superscript slash
/
Greater than
>
Superscript three
3
#
Superscript five
5
Cent
t
Superscript eight
8
01 1111
At one
@
Less than
<
10 0000
Tab
t
Superscript two
2
10 0001
Quotation
"
Superscript four
4
10 1101
Dollar
$
Superscript six
6
10 1111
Question
?
Superscript nine
9
11 0000
Sigma
2:
Superscript zero
0
11 0001
Beta
f3
Superscript one
1
11 0010
Colon
11 1101
Per cent
G
Superscript decimal point
%
Superscript Seven
1005
7
0000
-*
00
It
0001
6.
3·
01
10
IT
•
2·
4·
II In
0*
11
1*
0010
0011
-
0
.
.•
,
0100
1
0101
2
0110
3
0111
4
1000
5
1001
6
1010
7
1011
8
1100
q
/*
1110
>**
A
B
C
D
E
F
G
H
I
)
.J
K
L
M
N
0
p
Q
R
+
/
S
T
U
V
W
X
Y
Z
(
6*
rr
f%
Superscript symbols
New symbols
--
8* <**
rr r
7*
*
**
1111
I' f&
5*
• *
fY W I:
1101
*
=
I
q*
r-
~
Excess Three To Flex Code Subroutine Flow Chart
~ Setups
~-L
Has input been
used up?
No
Put input word in
working storage
Convert excess
three character of
word to a set of
Flex code
characters
Yes
Pack to left
and store last
line of output
Store output line
and up count
1
Yes
RJ switches to provide Flex
shift ups (47) or shift downs
(57) only when a change in Flex
code sets is made from caps
to lower case. and vice versa
Pack a Flex code
in working storage
output line.
Have all excess -3
characters of an input line been used?
6-point RJ distrib2'
utor to check if an
output line is filled
Excess-Three to Flex Code Subroutine
iAddress of 1st
line of output
VX3=
Address of 1st
00 if
VX4= every
line of input
line. 40
if everJ
other
line
o
IA
MJ
1 RJ
2
MJ
3
0
4 0
5 TP
6 RP
7
10
11
12
13
14
15
16
17
TV
TV
TV
TV
TP
TP
TP
QJ
TP
20 MJ
21 TP
22 TV
23 TU
24 TU
25 LQ
26 TV
27 IJ
30 MJ
31 TP
32 LQ
No. of words
of input
vx
o
o
o
VX5
Entry
30000
Exit
VX152
10005
VX14l
VX140
VX136
VX137
VX150
VX150
VX4
VX17
VX153
VE5
VXlO}
VX65
VX72
VX47}
VX54
VE }
VEl
Q
VX2l
VE2
Set up input line character index
Set up n-point distributor
to beginning values
o
VX22
VE2
[0 1 OJ ~ VE2
VE
Number of words of input ~ VE
Address of 1st input line ~ u of VX3l
VX31
VE3 } Address of 1st output line~ v of VE3
25
VXl02
Address of 1st output line ~ v of VXl02
VX3l
Index jump for number words of input
VX12l
Line of input ~ VE4
VE4
17
Initial shift of input line so 1st character
will be in proper position
Puts character XY to be masked out in right
6
side of u of VE4
[Sp fc OJ + [0 II OJ~[Sp fc + xy OJ
o
o
VX147
VX4
VX4
VX3
VE3
VE3
VE
o
30000
VE4
33 LQ
VE4
34
35
36
37
TP
VX142
VX143
40
QA
Must be set at zero
before usina subroutine
No. of words of
output
0
o
EJ
VX151
LA
A
o
o
o
Set up to insure that the output will start
with either a shift up or shift down
47
57
Clear 2 addresses of working storage
Parameter VX4 ~ q
Test to see if 40 is in operation code of q
[0 2 oJ -7VE2 to enable input address to be
incremented so every other line is taken
~VX36
If Flex code picked up is a 77 t storing part
of routine is bypassed
44
AR~ AL
1008
41
SJ
VX42
VX45
42
LA
43
SS
A
A
o
44
3
Test if character is lower case. Negative
means lower case
1 Left shift and spli t subtract to eliminate
J
4 from Flex code representation
MJ
o
VX47
Jump to switch
45 LA
A
3
46 MJ
47 RJ
o
VX54
VX55
Left shift to properly position Flex code
at far left of AL
Jump to switch
Entryt5witch to provide shift ups and shift
downs in output only when a change is
made from lower case to caps or vice versa
50
RJ
51
52
53
54
55
56
57
60
61
62
63
64
65
MJ
SA
MJ
RJ
RJ
MJ
SA
66
67
70
71
72
73
74
75
76
77
LQ
SA
TP
SS
RJ
RJ
RJ
RJ
RJ
RJ
MJ
LA
LQ
SA
TP
SS
VX54
trv~
A
VAil~
o
VX73 , Exit. No
VX145
o
VX47
VX47
VX60
VX50
VX57
VX73
o
o
VX144
VEl
VEl
A
A
VX64
VX64
VX64
VX64
VX64
VX64
o
A
VEl
VEl
A
A
100 MJ
o
101
VX73
ZJ
VX52
o
6
o
VEl
o
VE5
VXlOl
VX33
116 TP
VXl52
VE5
A
A
o
+ Exit
+Exit.
- no action.
o
VX64
VXl15
VX150
VX3
VX146
A
A
Exit.
Entry' ~
When Switch has provided a 47 or 57 to be
inserted in VEl, these three steps pack
}
the Flex code into the output line
Clears AR
VX65
N-Point
VXlOl Distributor used to
determine when each
VXlOl
output line has received
VXlOl
its six Flex code characters
VXlOl
VX10l
VXl02
A no-action exit from the Switch causes sub6
routine to transfer the Flex code character
6
to the output, following which Aft is cleared,
o
and a jump is made to the n-point distributor
VEl
102 TP
103 SA
104 SA
105 TP
106 S5
107 TP
110 5A
111 SA
112 TP
113 55
114 MJ
115 IJ
VEl
VXl02
VX146
t.
action.
30000
When a = O?, an excess-three character has
had its Flex code set used up
Completed output line is stored
v of instruction VXl02 is increased by 1
tl02
}
o
VEl
g
VX3
Clears AR
Output line is cleared
} Number
of words of output is increased by 1
o
Index jump to determine when a line of input
has been exhausted
Index is set up for next input line
1009
117
120
121
122
123
124
125
126
127
130
131
132
133
134
135
136
137
140
141
142
143
144
145
146
147
150
151
152
153
RA
MJ
TP
ZJ
TV
RP
TV
LQ
MJ
TP
0
RA
MJ
0
0
0
0
0
0
SP
0
0
0
0
0
0
07
0
0
CA
VX31
0
VEl
VXl23
VX134
10005
VX135
VEl
0
VX102
0
VX3
0
0
0
0
0
0
0
FC
77
0
0
0
1
0
70000
0
2
VX154
VE2
VX31 is increased to take next line of input
VX27
Jump back to input-word index
A
VX2 } Test to see if output line is empty
VX72
up n-point distributor to handle
VX12 } Setting
last
line
of output
VX65
6
Loop of left shifting until elements in VEl
VX64
are in leftmost position
VX131
Putting last line into output
0
Completing count of output lines
VX14
VX2
Handling final line of output
VX130
VX126
VX55
VX50
VXl02
VX101
0
0
57
47
1
0
0
0
}
}
5
0
Constant (used also by Read Generator)
Region FC of Flex codes is not shown here because it has previously been
given in the section explaining the tables used in the translation phase.
EXCESS-THREE TO FLEX COlE
USES OF WORKING STORAGE VE
,0
Index for number of words in input.
1
For a.sembling output characters.
2
To increment address from which input lines are taken.
3
To assemble first address of output.
4
To store line of excess-three characters while working on it.
5
Character index per line of input.
1010
3. GENERATORS
3..
GENERATORS
The generators are described in the order in which they are loaded on
the drum. See Generation Subroutine Regions in the preceding section for
this order.
1013
Start Generator Flow Chart
Generate prelude
& MJ 0 30000
MJ 0 01003
t----aI
Generate Op File
I item
Prelude & Op
File I to tape
START GENERATOR SUBROUTINE
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
RE
RE
RE
PT2512
PL5360
FL2542
RE
RE
OP1047
WL2242
IA
MJ
RP
TP
SP
TU
TP
RP
PT
0
30010
PT16
WL3
A
WL1
30002
PT26
WL3
A
PT15
OP
0
PL
0
0
0
0
0
0
0
0
TP
SP
TU
TP
RJ
MJ
0
0
0
0
0
0
0
MJ
MJ
0
0
CA
(OJ
0
PT30
Generation subroutine
Input to generator
30000
PT3 -}
PL
17
PL
PL5
PT10
FL
17
FL
OP1
OP2
PT
FL
10
Exit
Generate Prelude format
} Sentence
call word to prelude
Standard line no.
Generate Op File. I format
}
} Sentence call word
} Parameters to Op
(~tape)
Exit
Parameters
2
0
0
0
0
30000
01003
2
2
to Op File I
Prelude format
} Op File
1015
I format
Jump Generation Routine
The string-out input to the Jump Generator consists of 6 lines. The first
four conform to the standard format: number of words in string-out in v part
of first line, line number in second line, title in third line, and call word
of sentence in v part of fourth line. The fifth line contains the line number
of the line to which the jump is to be executed.
40 0
0
The sixth line contains
if the sentence is within a pseudo op; if not, it is cleared.
The Jump Generator builds up the Op File, prelude, and running program
from this data. The first line of the generated running program is a dummy
line, MJ
0 30000, put in to conform to the standard format of all generated
running programs. In the v part of the second running program line is put
the call word of the sentence to which the jump is to be made. Following
this line is the ten line, 10 0 I, put in to ensure that the jump will be
made to the second line of running program generated for the sentence. The
first line of any running program has been standardized as the exit line of
that segment of coding.
Also put in the Op File is the call word of the line number to which the
jump is to be made.
A separate routine, KIt is used to determine if the jump is permitted.
Jumps may be made within a pseudo operation only to other sentences that are
also within the same pseudo
OPe
op to sentences within a pseudo
or initial heading of a pseudo
Jumps may not be made from outside a pseudo
OPe
Jumps may not be made to the first line
OPe
As with other generation routines, the final instruction is the reference
to the op routine which stores the Op File and writes the generated routine on
tape.
1016
Jump Generation Flow Chart
.Put call words of
current sentence in
Op File and prelude
......
o......
-.I
Finish building prelude by putting in
line number
Getting call word
of sentence to be
jumped to and putting it in running
program & op file
Check if jump- ]
is illegal
I -
irite Op File,prel
ude. and running
program on tape
~
J
Jump Generation
RE
JU2512
Generation Subroutine regions are also needed to assemble
this tape
IA
MJ
1 SP
2 TU
3 TU
-0
4
5
6
7
10
11
12
13
TP
TP
RJ
TV
TU
TP
RJ
TP
14 RJ
15 MJ
16 0
17
20
21
22
23
24
25
26
27
30
31
32
0
0
0
0
0
0
0
0
0
MJ
MJ
10
CA
JU
0
BK3
30000
17
JU17
JU22
of sentence to 1st line of Op
u position
Call word of sentence to 1st line of
A
prelude in u position
BKI
JU27
Line no. to prelude
BK4
Getting call word of line number to be
A
LW
LWI
jumped to from ref. list
JU3l
Call word to v of running prog. jump line
Q
JU21
Call word to Op File cross reference
A
BK5
} Puts pseudo op indicator into Q
Q
KI
KII
Check to see if jump is permitted
OPI } Writes Op File & prelude & running program
JU16
on tape
OP
OP2
0
JD
Exit
Parameter for writing Op File & generated
JU22
JU17
routine on tape
30000 3
0
Op File "dummy" lines
2
30000 0
30000 11
0
3
0
0
0
Prelude "dummy" lines
0
0
0
0
0
0
30000 }
0
30000 Running program "dummy" lines
0
1
JU33
A
word
} Call
File in
}
}
1018
If Generat ion
The "if" string-out output VN - VN33 t as described in the write-up for samet
becomes the input BK - BK33 of this routine. KB, the control routine, generates
the coding needed for obtaining the variables or constants to be compared. If
X or Y is a subscripted variable, a relative constant call word (10000 or 10001)
is assigned to it in the coding. The regUlar call word of X or Y is stored
following the generated routine. The processor later replaces the 10000 call
word with the address of this stored call word. The stored call word in turn
is replaced by the address of the first line of the array of the variable. This
obviates the necessity of the routine keeping track of where the call word of
the variable has been put and putting this address relative to 1000 in wherever
a reference is made to the variable.
When X or Y is a pseudo op subscripted variable, this indirect method is no
longer necessary. Because the pseudo op call word is a call word of a call
word, the address is obtained by using it directly.
KB uses KC routine to generate the coding needed for getting the right
address of an item in an array of values of a subscripted variable. The number
of subscripts of a subscripted variable must never be zero. The call word of
the first line of an array is obtained by using the subscripts but giving them
zero value. Operation of KC is based upon the following formula:
Z, the modulus t is the product of the number of values assignable to each
subscript in the dimensipn statement. The subscripts vary from right to left.
MK
= Lo where Lo
means the number of values retained for L as shown in dimension
statement t viz: OIM X(IOtJOtKot~). MJ = ~·Ln· MI = JO·~·In·
z = Io·Jo·KD-In- 1 [X(OtOtO,O~ means the address of the variable whose
subscripts are zero. Thus, it is the address of the first line in an array.
It is located by use of the relative constants 10000 and lOOOlt as explained
above_
Thus the program divides the sum of the products and the value of L by the
modulus Z. The remainder in A is added to the address represented by
1019
1 [X(O,O,O,O)] to give the final address of 1 [X(I,J,K,L~. This address is
transferred to A where it is used in a TU instruction to set up a TP inu
struction that will put the variable into a temporary storage location, 60000
for X and 60001 for Y. Following instructions give X and Y absolute or
negative values, if desired. The processor changes 60000 and 60001 to assigned
addresses.
Coding for the tests needed is now generated. The threshold jumps that
make the tests go to manual jumps within the coding. This is done to facilitate
segmentation. In the v addresses of these manual jumps is put the call word
of the line number to which the main jump is to be made. Following the manual
jumps, fflO lines" are put to ensure that the jump to coding of a sentence goes
to the second line of the coding, the first line being an exit.
Subroutine KD generates the test coding for the situation in which three
line numbers of possible jumps have been supplied in the string-out input.
Subroutine KF takes care of the case in which there are two line numbers and
one test which divides X and Y into two exhaustive categories. Also taken
care of in this routine is the situation in which two tests are requested but
no third line number is given for a final jump in case both fail. In the latter
instance, of course, the jump is made back to the beginning address, 1000, of the
coding. From here, a jump is made to the second line'of the coding for the
subsequent sentence.
Subroutine KK takes care of the case when just one test is made in an -if"
sentence. In addition, a segment of it handles the details of termination and
references the op routine to get the Op File and generated routine written on
tape.
KH consists of a group of subroutines which assist in all the functions
described above. The Op File is stored and built up here. In its initial form
KHS7 holds 0 30000 2 in the first line of Op File. This line is not preset
at the start of a use of the Generation Routine. Hen~e. it becomes necessary
to transfer the generation coding afresh either from drum or tape prior to
each use of it. The v of this instruction is added to as lines are filled in
the Op File. One subroutine of KH keeps a count of the line of the running
program relative to 1000 as it loads output region GL. This count, called
1020
100x on ~if~ generation annotated coding, is used to compute jump addresses and
to calculate total lines at end of ~if~ generation.
Print-outs that may occur during~~generation are those which accompany
use oi KI. the illegal line number check routine. (See separate write-up on
KI.) In a KH subroutine. the call word of the line number is obtained from LW,
sent to KI for checking. and then put in the generated routine. (See reference
list write-up for print-out that may occur in LW.)
KA holds constants uSed and KE holds duuooy instructions that are modified
and assembled to make up the generated routine.
Attached is an explanation of the use of temporary storage (addresses
GLlOO - 112), a descriptive format of first eight lines of GL output, and
samples of generated coding.
1021
Initial Lines of Output
GL
Prelude
Exit line
of running program
o
o
u
v
Call word of sentence to u of GL. v = lOOx 1000 + 6. Thus v is no. lines generated routine
incl. "10 lines" and prelude.
1
o
o
v
v = 100x - 1000, number of lines subject to
address modification.
2
o
3
o
o
o
Number of inputs is zero.
4
o
o
o
Number of outputs is zero
5
Line Number
6
MJ
20000 0
o
v
The 2
in 3rd digit from left is a count of
temporaries used. Count of relative constants
is in 4th digit from right.
Line number of sentence
v = lOOx - number of "10" lines + 3. This gives
a jump to 2nd line of coding of subsequent sent.
Entry line of running program.
7
Temporary Storage for If Generation
GL
Where each new line of running program is
assembled before insertion in output GL.
100
101
o
o
lOOK
102
o
o
v
Used in computing jump lines.
103
o
o
v
Number of relative constants used. (10000 and/or
10001)
104
o
o
v
105
o
v
106
o
o
o
v
Call word of subscripted variable equated to
10000.
Call word of subscripted variable equated to
10001.
Number of "10 lines"
107
o
u
v
(BK15)
110
u
v
( BK16)
111
o
o
u
v
(BK17)
112
o
o
v
( BK20)
Ordinal number of running program line relative
to 1000 ("10 lines" are included.) Always has
next line to be used.
1022
Holds, alternatively, the values in
BKlS - 20 on X and BK25 - 30 on Y
when these are subscripted variables.
IF GENERATION - SAMPLE CODING
*Example 1
NOT in Pseudo-Op List
<
First test
>
Second test
For both X and Y: Sign complement desired
Absolute value desired
X and Y subscripted variables with 4 subscripts each
GL
o
1
2
3
4
1000
1001
1002
5
6
7
o
o
o
o
o
u
0
20000
0
0
50
42
02000
o
o
Line Number
1042
MJ
0
u
o
10
SP
MA
u
v
1003
11
MA
u
v
1004
12
MA
u
v
1005
1006
1007
1010
1011
1012
1013
1014
1015
1016
1017
1020
1021
1022
1023
1024
1025
1026
1027
1030
1031
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
TJ
u
u
33
34
35
36
37
u = Call word of "IF" sentence line no.
DV
SA
TU
TP
TM
TN
SP
MA
MA
MA
10000
A
30000
60000
60000
1007
Q
17
Br8... ced portion is ~oding to obtain X in
1011
60000 { prQper form in 60000.
60000
60000 .
u
o
u
v
u
DV
u
u
u
SA
TU
TP
TM
TN
10001
A
30000
60001
60001
v
v
1022
Q
17
1024
60001
60001
60001
TP
TJ
60000
A
60001
60001
1033
1034
TJ
EJ
u = Call word of L subscript
u = Call word of MK = K multiplier
v = Call word of K subscript
u = Call word of MJ
v ~ Call word of J
u ~ Call word of MI
v ~ Call word of I
u ~ Call word of Z, modulus
u = Call word of Z, modulus
Coding to put Y in proper form in 60001.
Explanations of u and v are same as for
X above.
X
A
Is X < Y?
-7J>
Is X ~ Y?
*The sentence from which this program was developed read as follows:
- ~ X( it jii kyl ) l <:
-
+-Y-fi,j t k,IJt
lY(i,j,k,l)1 jump to sentence 54. if - IX(i.j.k,l)1
sentence 4ll.
1023
=-
If
t X( i.j ,x, l)t >lY(i.j,k,l) I jump to
jump -to-Belttence 42, if ...
MJ
10
MJ
10
MJ
10
1035
40
41
42
43
44
45
46
1036
47
o
1032
1033
1034
o
o
o
o
v
X > Y.
v = Call word of line number of 1st test.
X < Y.
1
v
1
o
v
o
o
v = Call word of line number of 2nd test.
v
= Call
word of 3rd line number.
X
= Y.
1
o
v
o
v
1037
1040
1041
1042
10000 equated to 1035 by processor.
word of 1st line of X array.
10001 equated to 1036 by processor.
word of 1st line of Y array.
Temporary storage. 60000 equated to
by processor.
Temporary storage. 60001 equated to
by processor.
1st line of program of next sentence
2nd line of program of next sentence
v = Call
v = Call
this address
this address
(exit).
(entrance).
Op Fi Ie
KH
57
60
61
62
63
64
65
o
o
o
o
o
o
o
u
o
7
41
u
0
u
0
0
0
0
u
u
u
u is
100x
u is
u is
u is
u is
u is
call word of
- 1000 - "10
call word of
call word of
call word of
call word of
call word of
"if" line number.
lines" + 2 temporaries.
X.
Y
2nd test line number.
1st test line number.
3rd line number.
The count kept in GLIOI of the ordinal program number line relative to
1000 is not the same as that shown above since it includes "10 lines".
Proper
deductions are made for this inclusion in computing the totals near the end of
the program.
1024
*Example 2
In Pseudo Op List with a Pseudo Op subscripted variable of 3 subscripts for X
& 2 for Y
< = Single test
Only one line number (one for above test)
Sign Complement of X desired
GL
o
,
~
2
3
4
5
o
o
o
o
o
u
o
20000
0
0
Line Number
MJ
0
SP
u
33
o
o
o
1027
1000
1001
1002
10
MA
u
v
1003
11
MA
u
v
1004
1005
1006
1007
1010
1011
1012
1013
12
13
14
15
16
17
20
21
TJ
1014
1015
1016
1017
1020
1021
1022
1023
22
TJ
23
24
25
26
27
30
31
32
DV
SA
6
7
DV
SA
TU
TP
TN
SP
MA
TU
TP
TP
TJ
MJ
10
1024
1025
u = Call word of "Ir' sentence line number
25
o
X > Y
u
u
v
u
v
u
u
u
=
=
=
=
=
=
=
Call word
Call word
Call word
Call word
Call word
Call word
Call word
= Pseudo op
of K subscript
of MJ
of J
of MI
of I
of Z, modulus
of Z,modulus
call word of call word of X
1006
Q
17
1010
30000 60000 -This puts X into 60000
60000 60000
u
o
u = Call word of J subscript
u
u = Call word of MI
v
v = Call word of I
u
1016 } u = Call word of Z, modulus
u
Q
u
u = Pseudo op call word of call word of Y
17
A
1020 -This puts Y into 60001
30000 60001
60001
A
60000
Is X > Y?
1000
0
v
v = Call word of line no. of 1st test. X ~ Y.
0
1
Temp storage 60000 equated to this address
by processor.
Temp storage 60001 equated to this address
by processor.
u
u
u
A
Op File
KH
57
60
61
o
o
o
u
o
u
3
26
o
u = Call word of "If" sentence line number.
RURRlngprog. length including 2 temporaries
u = Call word of line number of test
*If - X(i,j,k) < = Y(i,j) .lump to sentence
1025
37~.
*Example 3
< First test
> Second test
No 3rd line number
X and Yare not subscripted variables.
GL
1000
1001
1002
1003
1004
1005
1006
0
1
2
3
4
5
6
7
10
11
12
13
14
0 20000
0
0
0
0
Line Number
MJ
1013
0
TP
u
60000
TP
u
60001
TP 60000
A
TJ 60001
1007
EJ 60001
1000
MJ
0
v
1007
15
16
10
MJ
0
0
1
v
17
10
0
.1.
0
u
20
12
0
0
0
u
= Ca 11
word of "if" sentence line number
X
u
u
=Y
=Call
=Ca 11
word of X
word of Y
Is X < Y?
Is X ~ Y?
v = Call word of line number of 2nd test.
X> Y.
v
= Call
word of line number of 1st test.
X < Y.
1
1010
1011
1012
1013
Temporary (60000)
Temporary (60001)
1st line of next sentence coding
2nd line of generated program of next
sentence
Op Fi Ie
KH
57
60
61
62
*If X < Y jump
0
0
0
0
u
0
u
u
4
12
0
0
u
u
u
= Call
= Call
= Call
word of "if" sentence line number
word of 2nd test line number
word of 1st test line number
to sentence 67, if X > Y jump to sentence 33l1.
1026
IIJ 0 30000 to 1st
Is X a pseudo-op
line of object
subscripted variable?
No
Put call word of subscri pted variable in
Op File and up count
of re lati ve constants
in pre lude
Subscri pt data to
temporary storage
Put 10000 in u of stolCed
line,
.. SA 30000 17
ICaarray word
of modu Ius ()
put in u of
J
OJ-
Flow Charts for If Generation
Store call word
variable given 10000
ca II word
11
stored instructions:
TJ 30000 30000
DV 30000
Up count of relative
constants used
to output
~---------~
.. Reco form of generated coding used
throughout in these flow charts for
clarity. Actual instructions
handled are in octal form.
No
No
Is negative value
of X desired?
Store call worjOf
variable given
10000 relative constant ca 11 word
Yes
Is Y a pseudo-op
subscripted variable?
No
I'u t ca 11 wo rd of sub-scri pted variable in
Op Fi Ie and up count of
relative constants in
pre lude
Have any relative
constants of 10000 type No
been used?
Put 10000 in u of
stored line,
SA 30000 17
~
~)unt
~
of relaconstants used
~
Ca 11 word of modu Ius
of array put in u of
stored i nstrllct ions:
Store ca 11 word of
variable given 10001
relative constant
ca II word
TP 30000 6000 I
to output
Is there an unconditional jump?
Uncondi tiona I
jump line number
subroutine
Line Number Call Word Subroutine
Get ting call word
of line number
Call word to v of
temporary holding
IIJ 0 30000
TP 60000 A
to output
TJ 60001 30000
put in temporary
storage
10 0 1
line to output
1st test line
number subroutine
MJ 0 1000
to temporary
storage
First Test Line Number Subroutine
MJ
0
30000
Line number of 1st
to temporary
storage
TP
Line number call
test obtained
word subroutine
60000
A
to output
EJ 60001 30000
to tem po ra ry
storage
Second Test Line Number Subroutine
Line number of 2nd
to temporary
storage
Li ne numbe r ca 11
word subrou ti ne
test obtained
Uncondi tiona 1 Jump Line Nullllber Subroutine
MJ
0
30000
Line number of unconditional jump
obtained
to temporary
storage
11' 60001 A
A
60001
TP 60000 A
to output
TJ 60000 30000
to temporary
storage
to output
TP
number call
subroutine
. to output
L
to temporary_ _
_T_J=-=60000.::.::;.,.-=-_10_00
storage
~8
TP
60000
to output
A
E J 60001 1000
to temporary storage
T J 60001 1000
to temporary storage
Subroutine to Put Line
Store line in
buffer region
TP 60000
in the form 100X
A
to output
TP 60000 A
to output
Up count of lines
o temporary storage
EJ 60001 30000
o temporary storage
100X + 2 to v of
storage line
Unconditional
jump line no.
subroutine
TP 60001 A
to output
1st test line
number subroutine
T J 60000 30000
to temporary storage
1 count to counter
of .. 10 lines"
Subroutine to Generate Coding for a Subscripted Variable
4
SPto temporary
30000 0J
number
subscript.s
three?
Yes
Yes
SP call word 0
of I
to
SP call word 0
of J
to output
Subscripts
storage
Yes
SP callof Kword 0
L subscript call
word to u of
storage line
to output
I
MA call
MA 30000 30000
MA 30000 30000
to temporary
to temporary
Line to
output
call
word
word
of KM of K
to output
1-1
0
N
...0
DV call
q
word of
modulus
to output
17
of address
to hold 1st
I ine of array
to output
MA call
call
word
word
of I
of IM
to temporary
storage
TJ call
word of
modulus
to output
SA call word
TU
Line to
output
AN:=J
to output
NOT= TP 60000 A
27
to output
MA eall
call
word
word
of ~JM of J
to output
'-----,
EJ 60001 300-0-0}-0
to temporary
storage
30
&--_---~
TP 60000 A
to output
TJ 60001 30000}-®
to temporary
storage
30
Termination Subroutine
Sentence call
word to u of 1st
line of Op File
Compute number of
lines subject to
address modification and store
in 2nd line of
prelude
Two relative
constant call
words put at end
of generated
program
Sentence call
word to u of
1st line of
prelude
Compute proper jump
Compute number of
number of line rellines generated
ative to 1000 that
routine including
will go to next UNI- - "10 1ine s" and pre 1CODE instruction.
ude and put this
Put no. in v of 1st
number in 1st line
of prelude
line of object program
Store Op File
and write generated routine
on tape
Have zero relative
constants been used?
No
Has only one relative constant been
used?
Yes
One relative
constant call
word put at end
of generated
program
Compute running
program length including temporaries
and store in 2nd
line of Op File
No
=
TJ 60000 100x+4
to output
<
TP 60000 A
to output
2nd test
-> ?
No
EJ 60001 100x+4
to output
EJ 60000 30000
to temporary
storage
TJ 60001 30000
to temporary
storage
>
EJ 60001 100x+3
to output
TJ 60001 1000
to temporary
storage
<
~lst test
~qUa1S?
J-----iII
;:.
Is 2nd test
an equals?
60000 A
to output
Is 1st
test> ?
No
TJ 60001 10Ox+3
to output
es
1st test line number subroutine
2nd test line number subroutine
Line to
output
EJ 60001 1000
to temporary
storage
2 to count of
"ten" lines
TJ 60000 30000
to temporary
stora e
TP 60001 A
to output
10Ox+2 to v
of storage line
2 to count of
"Ion lines
Line to
output
Unconditional jump
line no. subroutine
1st test line number
subroutine
I
<
Is 2nd test
an equals?
TP 60001 A
to output
TJ
60000 10Ox+3
to output
EJ 60000 1000
to temporary storage
~... MJ 0 1000-~
~ to temporary st~
=
f3i\. JTJ
~
60001
lOOx+4
to output
E"J 60001 30000
to temporary storage
10Ox+3 to v of storage line
Line to ]
output_
<
2nd test
>?
TP 60000 A
to output
No
EJ
60001 100x+4
to output
TJ 60001 30000
to temporary storage
=
TJ
60001 10Ox+4
to output
3 to count
of "10" lines
EJ 60001 30000
to temporary storage
100x+3 to v of
storage line
test line number
subroutine
1st test line number
subroutine
Line to
output
Unconditional jump
line no. subroutine
>
EJ
TJ 60001 10Ox+4
to output
60001 10Ox+3
to output
2nd test line number
subroutine
3 to count of
"ten" lines
> TP 60001 A
to output
Is 2nd test
an equals?
3 to count
of "ten lines
tl
No
TJ 60000 100x+3
to output
Unconditional jump
line no. subroutine
1st test line number
subroutine
Unconditional jump
line no. subroutine
EJ 60000 10Ox+4
to output
1st test line number
subroutine
2nd test line number
subroutine
=
T J 60000 10Ox+4
to output
EJ 60000 10Ox+3
to output
Uncondi tiona 1 jump
line no. subroutine
3 to count
of "10" lines
2nd test line number
subroutine
1st test line number
subroutine
IF Generation Regions
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
KB2512
KA2644
KC2660
KD2737
KE3070
KF3123
KH3265
KK3353
SA3457
KR3462
Generation Subroutine regions are also needed to assemble this tape.
1033
If Generation
KD - Unconditional jump with second test
KB - Start- Control
KF - Unconditional Jump and no second test. KF53 - no unconditional jump
and a second test.
KK - No unconditional jump and no second test. KK47-Termination loop.
KC - Subscripted variable coding
KH and KR - Subsidiary routines
KA - Constants
KE - Dummy instructions
Unconditional
jump wi th 0
second
1
test
2
3
< 1st test'
4
5
6
7
>2nd tesf\
10
11
12
13
14
15
16
17
20
21
22
23
-=-2-n-=-d-t-e-s......
t 1.24
25
26
27
30
31
32
33
34
IA
TP
ZJ
TP
EJ
EJ
TP
RJ
TP
EJ
TP
RJ
RJ
RA
TP
TV
RJ
RJ
RJ
RJ
TP
MJ
TP
RJ
RJ
RS
TP
TV
RJ
RJ
KD
BK7
KD2
BK4
KA4
KA5
KElO
KH40
BK6
KA4
KEll
KH24
KH40
GLI02
KE14
GLI02
KH40
KH3
KH7
KH13
KA4
o
KEll
KH30
KH40
GLI02
KE14
GLl02
KH40
KH13
35 RJ
KH3
36 RJ
37 TP
KA4
-=--'--1s-t-t-e-s.....
t ~J
41 TP
42 RJ
43 TP
44 EJ
KH7
o
KEIO
KH40
BK6
KA5
~
~41
}
Is there a second test?
} Is
Is
KD75
GLIOO} TP
KH35
} Is
~25
first test an =?
first test> ?
60000 A to output
2nd test an =?
GLlOO
KH2l
KH35
TJ 60001 30000
To put proper jump (+3) in v of above
Line to output
Adding 1 to jump storage line in GLI02
KA
EJ 60001 30000
GLIOO
Jump (lOOX + 4) to v of above
GLlOO
Line to output
KH35
KH
Line no. of 2nd test to output plus 1110" line
1st test line no. + 1110" line to output
KH4
KHIO
Unconditional jump line number + 10 line to
output
3 to GLI06 as count of number of 10 lines
GLI06
KK47
Jump to termination loop
GLIOO TJ 60001 30000
100X + 4 to v of above instruction
KH25
KH35
Line to output
KA
100X + 3 now in GLI02
GLlOO
EJ 60001 30000
GLIOO
100X + 3 to v of above
KH35
Line to output
KHIO
MJ 0 v followed by 10 line to output.
v = unconditional jump line no.
KH
MJ 0 v followed.by 10 0 1. 2nd test
line no. = v
KH4
MJ 0 v (first test) with 10 0 1 to output
GLI06
Number of 10 lines (3) to storage
KK47
Jump to termination loop
GLIOO} TP 60000 A to output
KH35
~61
} Is 2nd test >
1034
<2nd test
45 TP
46 RJ
47 RJ
50
RS
51
52
53
54
TP
MJ
TP
TU
55 RJ
56 MJ
57 0
->2nd test 1 60 0
61 TP
62 RJ
63 RJ
64 RA
65 TP
66 TV
67 RJ
70 RJ
71 RJ
72 RJ
73 TP
>lst test I 74 MJ
75 TP
76 RJ
77 TP
<2nd testl 100 EJ
101 TP
102 RJ
103 RJ
104 RA
105 TP
106 TV
107 RJ
110 RJ
III RJ
112 RJ
113 TP
= 2nd tes~MJ
115 TP
116 RJ
117 RJ
120 RS
121 TP
122 TV
123 RJ
124 RJ
125 RJ
126 RJ
KEl4
KH30
KH40
GLI02
KE11
0
KE32
A
GLIOO
KH25
KH35
KR4
KR1
0
0
0
KE14
KH24
KH40
GL102
KEll
GL102
KH40
KH3
KH7
KH13
KA4
0
KE15
KH40
BK6
KA4
KE16
'KH24
KH40
GLI02
KE24
GLI02
KH40
KH3
KH7
KH13
KA4
0
KE16
KH30
KH40
GLI02
KE24
GLI02
KH40
30000
0
0
GLloo
KH21
KH35
KA
GL100
GL100
KH35
KHI3
KH3
KH7
EJ 60001 30000
100X + 4 to v of above
Line to output
KA
lOOX + 4 - 1
GL100
KD32
GL100
GLIOO
TJ 60001
30000
TO A 30000
Puts 61 --- Call word into u of above
instruction
Puts address of next instruction into v of
above instruction and sends line to output.
[TV 61---N:O
EJ 60001 30000
100X + 3 to v of above instruction
Line to output
100X + 3 + 1
TJ 60001 30000
100X + 4 to v of above
Line to output
KH
2nd test
KH4
1st test
KH10
Unconditional test
GL106
3 to count of ten lines
KK47
To termination loop
GL100} TP 60001 A to output
KH35
Is 2nd test =?
GLIOO TJ 60000 30000
KH21
100X + 3 to v of above
KH35
Line to output
KA
100X + 3 + 1
GL100 EJ 60000 30000
GL100
100X + 4 to v of above
KH35
Line to output
KH
2nd test
KH4
1st test
KH10
Unconditional test
GL106
3 to count of "10" lines
KK47
To termi~ation loop
GLloo TJ 60000 30000
KH25
100X + 4 to v of above
KH35
Line to output
KA
100X + 4 - 1
GL100 EJ 60000 30000
GL100 100X + 3 to v of above
KH35
Line to output
KHIO
rrnc6ridTtTonaT test
KH
2nd test
KH4
1st test
~115}
1035
127 TP
130 MJ
CA
StartControl
IA
MJ
1 TV
2 TV
3 TP
o
KA4
o
KB
o
KKIOI
KKI02
KAl
KAI
BKI
KA2
KE
KH40
BKII
KB15
BK14
KAIO
KHl6
20 TU
21 TP
BK14
30
31
32
33
34
35
36
37
Nonsubscripted X
40
41
42
43
44
45
46
47
50
51
52
53
54
KE12
KAl
KAll
30000
KH35
KH41
GLI03
GL2
GL3 }
GL4
GL5
GLIOI
GLIOO)
KH35 f
~5
}
17 }
KB37
KH14
KE31
GLI04
RA
TP
GLI03
KA
KA7
Q
QT
BKll
A
TU
TU
A
A
KE27 }
RP
TP
30004
BK15
KA6
BKII
KC
KEI
KH40
KB31 }
GLI07
Q
TP
Qr
RJ
TP
RJ
MJ
TO
o
A
o
MJ
TP
SP
KEI
BK14
TU
A
RJ
TP
KH40
BK31
KB57
BK13
KB51
QJ
TP
QJ
TP
RJ
TP
QJ
3 to count of "10'" lines
To termination loop
KD131
4 TP
5 TP
6 TP
7 TP
10 TP
11 TP
12 RJ
Generation 13 TP
coding for 14 ZJ
X
15 SP
16 TJ
17 RJ
22
23
24
25
26
27
GLI06
KK47
KE3
KH40
BK12
KB55
KE30
A
Exit
GL6 to v of KH35
KH6 to v of KH41
Clearing GLI03, the counter of relative
constants used
o 20000 0 to output
Clear GL3, GL4
Line no. to GL5
0 1000 to GLIOI
MJ 0 30000 to GL6, first line of Object
Program
If BKII isn't zero, X is a subscripted
variable
If 77000> call word, it is a pseudo-op subscripted variable
Puts call word of sub. var. in Op File & ups
count of relative cons. used
10000 to u of SA 30000 17
Storing call word of variable given 10000
call word
Count of relative const. used increased by 1
o 77777 0 mask to q
Call word of modulus to ~l
fTJ 30000 30000
Modulus call word to u of
30000 q
LDV
Subscript data to GLl07-l2
Mask of 0 0 77777 to q
Number of subscripts to A
Generation of coding for subscripted variable
TP 30000 60000 to GLlOO and to generated
output coding
o
KCl
GLIOO}
KH35
KB47
KE31
Call word to u of
for pseudo op
KB23
GLIOO TP 30000 60000
17
}
GLIOO Call word to u of
KH35
Line to generated
~B47 } Is X a constant?
~B53
instruction (SA 30000 17)
to GLIOO
above
coding output
} Is absolute value desired?
GLIOO} TM 60000 60000 to output
KH35
~57 } Is negative value desired?
1036
55 TP
56 RJ
57 TP
Generation
60 ZJ
coding for 61 SP
y
62 TJ
63 RJ
64
65
66
67
TP
ZJ
TU
TP
70 MJ
71 TU
72 TP
Non-subscripted
y
73
74
75
76
77
100
101
RA
TP
QT
TU
TU
RP
102
TP
QT
RJ
TP
RJ
MJ
TU
MJ
TP
SP
TU
RJ
TP
QJ
TP
QJ
TP
RJ
TP
QJ
TP
RJ
103
104
105
106
107
110
III
112
113
114
115
116
117
120
121
122
123
124
125
126
127
130
131
TP
TP
ZJ
CA
KE4
KH40
BK2l
KB6I
BK24
KAlO
KIH6
GLI03
KB66
KAl2
BK24
o
KAII
BK24
GLI03
KA7
BK2l
A
A
30004
BK25
KA6
BK2l
KC
KE2
KH40
o
A
o
KE2
BK24
A
KH40
BK32
KBl30
BK23
KBl22
KE5
KH40
BK22
KB126
KE6
KH40
BKlO
KD
KB132
GLlOO} TN 60000 60000 to output
KH35
A
Is Y a subscripted variable?
1
KRIO ..,
17
~ If 77000> call word, it is a pseudo op sub.
KBllOJ
variable
Puts call word of sub. var. in Op File and
KH14
ups count of reI. cons. used
Have any relative constants of 10000 type
A
been used?
KB71 }
KE31
10001 to u of SA 30000 17
GLl05 Storing call word of variable given 10001
call word
KB73
KE3l
10000 to u of SA 30000 17
Storing call word of variable given 10000
GLI04
call word
Count of relative constants increased
KA
o 77777 0 to q
Q
TJ 30000 30000
} Modulus call word to u of { DV 30000 q
KE30
KBl02 } Subscript data of Y to temporary storage
GLl07
o 0 77777 to q
Q
Number
of subscripts to A
A
KCl
Gen. of coding for subscripted variable
GLIOO} TP 30000 60001 to output
KH35
KB120
Call word to u of SA 30000 17 for pseudo op
KE31
KB74
TP 30000 60001 to output line
GLIOO
17
} Call word to u of above line
GLlOO
KH35
Line to output
~E27
~B120 }
Is Y a constant?
~124}
Is absolute value desired?
GLlOO}
KH35
TM
~130}
Is negative value desired?
GLIOO}
KH35
TN
A
KF53
"I
J
60001
60001
60001 to output
60001
to output
Is there an unconditional jump?
1037
Unconditional
Jump and
no 2nd
Test
0
1
2
3
4
5
6
7
10
1st test 11
12
13
14
15
16
17
20
21
22
=(lst)
23
24
25
26
> 1st
27
30
31
$ 1st
32
33
34
<
35
IA
RJ
TP
RP
TJ
MJ
MJ
MJ
MJ
MJ
KF
SA2
KE7
30005
KF4
2
3
4
5
6
TP
KEI0
KH40
KEll
KH34
KH40
KIU3
KH7
KA3
0
KEIO
KH40
KE14
0
KE15
KH40
KE16
0
KE15
KH40
KE16
KH34
KH40
KH
KH13
KA3
0
KEIO
KH40
KE14
0
KEIO
KH40
KEll
0
BK7
KF55
BK4
KA4
KA5
KEI0
KH40
BK6
KA4
RJ
TP
RJ
RJ
RJ
RJ
TP
MJ
TP
RJ
TP
MJ
TP
RJ
TP
MJ
TP
RJ
TP
RJ
RJ
RJ
RJ
TP
MJ
TP
RJ
TP
MJ
TP
RJ
TP
MJ
TP
ZJ
TP
EJ
EJ
TP
RJ
36
37
40
41
42
43
NOT =
44
(1st)
45
46
~lst
47
50
51
52
No uncon- 53
ditional
54
jump and
55
a second
56
test
57
«1st test) 60
61
62 TP
63 EJ
"'I
SA
}
A
KF47 ~ ?
KF4
KFll < ?
KF22 = ?
KF26> ?
KF32 $ ?
KF43
NOT = ?
GLI00 }
KH35
GLI00
KH31
KH35
KHIO
KH4
GLI06
KK47
GLIOO}
KH35
GLIOO
KF14
GLIOO}
KH35
GLloo
KF14
GLloo}
KH35
GLIOO
KH31
KH35
KH4
KHIO
GLI06
KK47
GLIOO}
KH35
GLIOO
KF35
GLI00}
KH35
GLIOO
KF35
A
KK
}
~106}
Puts MJ Z 0 in A where Z is code number
for relation test
Determining what first test is
TP
60000 A
to output
TJ 60001 30000
100X + 2 to v of above
Line to output
Unconditional test
1st test
2 to count of 1'10" lines
To termination loop
TP 60000 A to output
EJ 60001 30000
TP 60001 A to output
TJ 60000 30000
TP 60001 A to output
TJ 60000 30000
100X + 2 to v of above
Line to output
1st test
Unconditional jump
2 to count of "10" lines
To termination loop
TP 60000 A to output
EJ 60001 30000
TP 60000 A to output
TJ 60001 30000
Is there a second test?
Is 1st test =?
KF124
GLIOO}
KH35
Is 1st test>?
TP 60000 A to output
~75
Is 2nd test =?
}
1038
TP
RJ
RJ
TP
RJ
RJ
72 RJ
73 TP
MJ
2nd test = 74 TP
75
76 RJ
..,..,
nT
no)
2nd test> 64
65
66
67
70
71
II
100
101
102
103
104
105
= (1st
106
test)
107
110
111
<~nd
112
te.st:
113
114
115
>2nd test1116
117
120
121
122
123
> 1st
124
test
125
126
127
< 2nd 1
130
test
131
132
133
134
135
= 2nd
test
136
137
140
141
1
TP
RS
TV
RJ
TP
MJ
TP
RJ
TP
EJ
TP
RJ
RJ
TP
MJ
TP
RJ
RJ
TP
MJ
TP
RJ
TP
EJ
TP
RJ
RJ
TP
MJ
TP
RJ
RJ
TP
MJ
CA
No Unconditional
Jump &
no Second
Test
0
1
2
3
IA
RJ
TP
RP
TJ
KEll
KH24
KH40
KE21
KH40
KH3
KH7
KA3
0
KEll
KH30
GLIOO
KH21
KH35
TJ 60001 30000
100X + 3 to v of above
Line to output
GLIOO}
EJ 60001
KH35
KH
KH4
GLI06
KK47
GLIOO
KH25
KH40
KH35
KE14
GLI02
GLI02
KH40
KE20
0
KEIO
KH40
BK6
KA5
KE14
KH30
KH40
KEll
0
KE14
KH24
KH40
KE22
0
KE15
KH40
BK6
KA4
KE16
KH24
KH40
KE23
0
KE16
KH30
KH40
KE24
0
KF142
GLIOO
KA
GLIOO
KH35
GLIOO
KF70
GL100 }
KH35
KK
SA2
KE7
30005
KK4
~117 }
GL100
KH25
KH35
GLIOO
KFI01
GL100
KH21
KH35
GLloo
KF70
GLIOO}
KH35
~135}
GLI00
KH21
KH35
GLI00
KF70
GL100
KH25
KH35
GL100
KFIOI
SA
A
1000
to output
2nd test setup
1st test setup
2 to count of ~tenff lines
To termination
TJ 60001 30000
100X + 4 to v of abo've
Line to output
EJ 60001 30000
100X + 4 - 1
100X + 3 to v of above instruction
Line to output
MJ 0 1000
TP
60000 A to output
Is 2nd test>?
EJ 60001 30000
100X + 4 to v of above
Line to output
TJ 60001 30000
EJ 60001 30000
100X + 3 to v of above
Line to output
TJ 60001 1000
TP
60001
A to output
Is 2nd test =?
TJ 60000 30000
looX + 3 to v 0 f above
Line to output
EJ 60000 1000
TJ 60000 30000
100X + 4 to v of above
Line to output
EJ 60000 30000
}
·1
KK43 2: ?
KK44
in A where Z is code number
test
for relation
Pu t s MJ Z 0
1039
4 MJ 2
5 MJ
3
6 MJ 4
7 MJ
5
<1st test 10 MJ 6
11 TP
KElO
12 RJ
KH40
13 TP
KEll
14 RJ
KH34
15 RJ
KH40
16 TP
KE20
17 RJ
KH40
20 RJ
KH7
21 TP
KA
= 1st L 22 MJ 0
KE 10
test ---"-23~TP
24 RJ KH40
25 TP
KE14
-::::>:---_ _ _~2~6 MJ
0
27 TP
KE15
30 RJ
KH40
31 TP
KE16
~<~--______~3~2 MJ
0
33 TP
KE15
34 RJ
KH40
35 TP
KE13
NOT = L 36 MJ 0
37 TP KElO
40 RJ
KH40
41 TP
KE2l
~_ _ _4..:::2=- MJ
0
43 TP
KElO
44 RJ
KH40
45 TP
KE22
46 MJ 0
Termi47 SP
BK3
nation
50 TU A
Loop
51 TP
A
52 TP
GLI03
53 ZJ KK54
54 EJ KA
No. of
55 TP
GLl04
reI. cons. 56 RJ
KH40
= 2
57 TP
GLI05
60 RJ
KH40
61 MJ 0
62 TP
GLI04
63 RJ
KH40
64 TP
GLlOl
65 ST
KA2
66 TV
A
67 ST GLl06
70 AT
KA3
l
KKII < ?
KK23 = ?
KK27 > ?
KK33 ~ ?
KK37 NOT
GLlOO}
KH35
GLlOO
KH3l
KH35
GLlOO}
KH35
KH4
GLl06
KK47
GLloo}
KH35
GLloo
KK14
GLloo}
KH35
GLlOO
KK14
GLloo}
KH35
GLlOO
KK17
GLlOO}
KH35
GLlOO
KK17
GLlOO}
KH35
GLlOO
KK17
17
}
KH57
GL
~K64
}
KK62
GLlOO
KH35
GLlOO
KH35
KK64
GLlOO}
KH35
J
A
GLI
GL
~60
}
Determination of type of 1st test
=?
TP 60000 A to output
TJ 60001 30000
100X + 2 to v of above
Line to output
MJ 0 1000 to output
1st test set-up
1 to count of '"10·' lines
To termination loop
TP 60000 A to output
EJ 60001 30000
TP 60001 A to output
TJ 60000 30000
TP 60001 A to output
TJ 60000 1000
TP 60000 A to output
EJ 60001 1000
TP 60000 A to output
TJ 60001 1000
Sentence call word to u of 1st line of Op
File
Call word to u of 1st line of prelude
Is number of relative const. equal to zero?
Is number of reI. cons. equal to I?
Relative constant call words put at end of
generated program. Numbers were equated
to 10000 and 10001 in coding
Call word of no. equated to 10000 put at end
Ordinal 100X program line to A
Subtracting 1000 and putting in GLI
100X-IOOO to GLv
lOOX-lOOo-number of "ten" lines + 2 to 2nd
line of Op File
1040
71 RA
72 TP
73 ST
GL
GLIOI
GLI06
74
AT
75
76
77
100
101
102
TV
TP
RJ
MJ
0
0
KA4
A
103
0
CA
Subscripted
Variable
Coding
Number of
subscripts
are 4
o
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
1A
MJ
EJ
EJ
EJ
TP
SP
TU
RJ
TP
TU
TV
RJ
TU
TV
RJ
TU
TV
RJ
TP
TV
RA
RJ
TP
RJ
TP
RJ
32 RJ
33 MJ
34 0
35 RJ
3 sub- L 36 MJ
.
--3--7"'- TP
scrIpts
40SP
41
42
TU
RJ
KKI03
OP
o
o
o
GL
KKI04
100X - 1000 + 6 to v of prelude 1st line
KA13
A
A
A
GL6
OPI
OP2
KB
GL6
KH6l
1
J
100X - number of "ten" lines + 3 to v of
1st line of running program
}
Writing Op File and gen. routines on tape
~
KH57
KC
o
KH40
KE26
GLlll
GLlll
KH40
GLIIO
GLIIO
KH40
GLI07
GLI07
KH40
KE27
GLIOI
GLIOO
KH40
KE30
KH40
KE31
KH40
30000
KC53
KC45
KC37
GLIOO
17
}
GLlOO
KH35
GLlOO
GLlOO
GLlOO
KH35
GLlOO
GLlOO
KH35
GLIOO
GLlOO
KH35
GLIOO
GLIOO}
KA3
KH35
GLIOO}
KH35
GLlOO }
KH35
KR4
KR
KA
KA3
KA4
KE25
GLl12
A
o
Are no. of subscripts I?
Are no. of subscripts 2?
Are no. of subscripts 3?
SP 30000 0
Call word of L subscript to above line. Subscripts assumed to be 1,J,K,L
Line to output
MA 30000 30000
KJVl ~ u of above line
K~ v of above
Line to output
JM to u of MA 30000 30000
J to v of above
Line to output
1M to u of MA 30000 30000
I to v of above
Line to output
TJ Mod. 30000
lOOX + 2 to v of above
Line to output
DV Mod. q to output
SA CW 17 to output. CW is call word of
address of line that will hold address of
1st line of array
TU A N1 to output. N1 means Next 1nstr.
KC
62000
o
KD56
KD53
1(8105
GLlOO
A
~~l-()O }
Stored constant used to identify dummy
pseudo op functions
TU 61--- N1 to output
Return to finish handling variable Y
SP 30000 0
Ksil"6sc-:rIpt call word to u of above
KH40
KH35
Line to output
o
KE25
GUll
1041
43
2 sub- 1 44
scripts
45
46
47
50
51
1 sub- 7 52
script
53
54
55
56
TP
MJ
TP
SP
TU
RJ
TP
MJ
TP
SP
TU
MJ
CA
KE26
o
KE25
GLllO
A
KH40
KE26
o
KE25
GLl07
A
o
GLlOO
KC14
GLlOO
17
}
GLlOO
KH35
GLlOO
KC17
GLlOO
17
}
GLIOO
KC2l
MA
30000 30000 to output line
SP 30000 0
J subscript call word to u of above
Line to output
MA 30000 30000 to output line
SP
I
30000 0
call word to u of above
KC57
Subsidiary Subroutines
2nd test
TA
line no.
0 TP
subroutine 1 TP
2 RJ
MJ
1st test [4 TP
line no.
5 TP
subroutine 6 RJ
~MJ
0 TP
di tiona 1
jump line 11 TP
no. sub12 RJ
routine
13 MJ
SUbscri Pted 4 RJ
yare call 15 RA
word to
Op. File
b MJ
17 RJ
20 MJ
3
11
r
+3 J ump
setter
+4 Jump
setter
l~~
~~
23 TV
24
U5
26
27
o
+ 2 Jump ~l
setter
32
33
4
MJ
TP
RA
TV
MJ
TP
RA
TV
MJ
TP
Subroutine 35
to put
line in
36 RA
output
37 RA
40 MJ
KH
KE
BK7
KH56
GLlOO
o
30000
GLlOO
KH45
KE
BK5
KH56
A
KE
BKlO
KH56
A
o
o
KH44
GL2
o
KD56
o
GLlOl
GLl02
GLl02
o
GLlOl
GLl02
GLl02
o
GLlOl
GLl02
GLl02
o
GLlOO
KH35
GLlOl
o
MJ 0 30000 to output line
Line number of 2nd test to A
Getting call word for line number, putting
it in Op File, putting it in output
and putting 10 line in output
A
MJ 0 30000
Line number 1st test to A
Line number call word subroutine
KH45
30000
GLlOO
MJ 0 30000
Line no. of unconditional jump to A
Line number call word subroutine
KH45
30000
KH4l
Call word sent to Op File
Uf'S count of relative constants used in
prelude
KA2
30000
KD53
KB34
GLl02
TU 61 --- NI to output
Return to finish handling variable X
(1000 + count of lines) to GLl02
+3
KA4
GLlOO
30000
GLl02 }
KA5
GLlOO
30000
GLl02
KA3
GLlOO
30000
LGL6]
KA
KA
30000
J
v of GLIOO set to IOOX + 3
lOOX + 4 to v of output line
100X + 2 to v of output line
Inserting output line in proper place in
generated coding
Upping v of KH35 by 1
Count of 1000 plus number of lines
1042
fl
TP
42 RA
43 RA
l44 MJ
Li np
(45 RJ
number
46 TV
call word 47 RJ
subroutine 50 SP
51 TP
52 RJ
53 RJ
Loads 0 p
File
for call
word
55
~4
Op File 1 6
build-up 57
space
60
61
62
63
64
65
Constants
0
1
2
3
4
5
6
7
10
11
12
13
Dummy
Instructions for
Use in
Sui Id ing
Generated
Routine
0
1
2
3
4
5
6
7
10
11
12
13
14
15
A
KH41
KH57
0
LW
Q
KH44
Q
RJ
MJ
0
0
0
0
0
0
0
CA
SK33
KI
KH40
KE17
KH40
0
30000
0
0
0
0
0
0
KH66
IA
0
0
0
0
0
0
0
0
0
0
0
0
CA
KA
0
0
0
0
0
0
0
77777
77000
10000
10001
0
KA14
IA
MJ
TP
TP
TM
TN
TM
TN
MJ
TP
TJ
0
TJ
EJ
TP
KE
0
30000
30000
60000
60000
60001
60001
0
60000
60001
2HOOO
60000
60001
60001
TP
[RH6I]
KA
KA
Loads Op File with call word
Ups v of above by 1
Increases count of Op File lines by 1
30000
KII
KH35
Getting call word of line number
Call word to v of output line
Call word to Op File
Call word of line no. to Au
Puts Pseudo-Op indicator in Q
Check for illegal line numbers
Line to output
GLlOO}
10 0
LWI
GLIOO
KH41
17
Q
KH35
30000
2
0
0
0
0
0
0
1
0
1000
2
3
4
77777
0
0
0
0
6
30000
60000
60001
60000
60000
60001
60001
0
A
30000
0
1000
30000
A
1043
1 to output
16
17
20
21
22
23
24
25
26
27
30
31
32
TJ
10
MJ
EJ
TJ
EJ
EJ
SP
MA
TJ
60000
0
0
60001
60001
60000
60000
30000
30000
30000
30000
30000
A
KE33
30000
1
1000
1000
1000
1000
30000
0
30000
30000
Q
17
30000
17
KE7
30000
CA
SA
BK4
A
0
SA3
IA
TP
TV
RA
RJ
MJ
SP
TJ
MJ
SP
TJ
MJ
CA
KR
KE32
GLIOI
GLIOO
KH40
0
BK14
KC34
0
BK24
KC34
0
KR13
TU A 30000
GL100
GLIOO} 100X + 1 to v of above
KA
Line to output
KH35
30000
Is call word of variable X a dummy function
17
KHl7
of pseudo op?
KB41
Is call word of variable Y a dummy function
17
KC35
of pseudo op?
KB112
DV
SA
TU
CA
IA
0 SP
1 TU
2 MJ
SUbroutin{~
to put
2
TU-A-NI
in output
3
4
5
6
7
10
11
12
}
Puts 1st test code relation number in Au
and then in KE7 u .
}
}
1044
Print Generation Routine
It is assumed that everything following PRINT# in this instruction is to
be printed.
Thus, parentheses are included in the print-out.
data is generally self-explanatory
assumed redundant.
Since the printed
comments following a print instruction are
If they are included, the routine will include them in the
printed output.
It is further assumed that anyone Print instruction is no longer than 6
Unityper lines.
Material that would fill more space than this should be divided
into as many instructions as needed to bring each within the proper limit.
The first line of the string-out contains the number of lines in the stringout.
In the second line is the line number of the instruction.
contains the title, PRINT.
The third
The v portion of the fourth line holds the call
word assigned to the instruction.
The fifth and succeeding lines contain the
excess-three characters which will be converted to Flex code during generation.
Excess-three codes are converted by the routine to Flex codes which are
stored for later printing during the Object Program run.
is referenced during this run to effect the printing.
A library routine
Because the library
routine to print Flex code directly is much shorter than a library routine
that could print directly from excess three, this procedure of converting
from excess-three to Flex code during generation was adopted.
Space saving
during the Object Program run was considered of paramount importance.
GL t the region in which the print subroutine is stored before writing on
tape, has to have at its disposal a variable address length that will hold the
22a-address print subroutine and prelude plus the indeterminate group of Flex
codes.
The Flex codes, 'because of the addition of shift-up and shift-down
codes and substitution of more than one Flex code for a corresponding excessthree character, will likely take up more space than the group of excess-three
lines in BK.
GL cannot exceed 5208 lines and in most cases will be far less.
The size of the Op File 1 item for PRINT is 3 addresses.
routine is 228 + number of words of Flex code.
The number of words in the
running program ts 12e +,nnntjet or words ofnex code.
1045
The generated sub-
After the instruction in BK, the buffer region, has been identified during
generation as PRINT, the control generation routine by instruction RJ UR
activates the print generator.
URI
The print routine generates the coding needed
for the print subroutine and gets it written on the proper tape.
in NP for later writing on tape is the Op File 1 item.
1046
Also stored
Flow Chart of Print Generation Routine
+
Translate "excess
three" input print
lines to Flex code
and store
Compute and build
prelude of gen- E - erated routine
_ 1
lop
Fjle to storage and generated
routine to tape
1
V
~
..
Prepare and insert
parameter line of
"Flex code print
lines" for generated routine
Arrange to have
Flex-print routine I
Build
of library available by sending its fE-- Op File
call word (50002)
to LS library
routine
~
...
C!>mpute storage ad ....
dress of index
parameter for print
routine and put
~
address and parameter in obj ect
program
Get call word for
character index
(117) and put into
generated routine
Prepare object program j urn p exit to
2nd line of succeeding sentence
of obj ec t program
[-
~
Get cal: word for
carriag~~ return
(45) an(:l insert
in genet'"ated
routine
Print Generation
Regions
RE
RE
UR2512
GL5360
Print generator
Storage for generated subroutine plus
prelude
Generation Subroutine Regions are also needed to assemble this tape.
1048
Print Generation
T 1\
TTn
o
MJ
o
30000
1
TP
RS
TV
TP
TP
RJ
TP
TU
TV
BK
A
A
A
UR75 }
UR50
No. of words of excess 3 to parameter line
UR50
UR51
VX4
VX3
Parameter words to X3 to Flex code routine
VX2
VX
VX3
c.rl}{\
SP
AT
UR76
GL20
URI06
URI06
URI06
UR63
URI06
URI06
GI20
URI06 }
UR77
UR65
UR63 }
URIOO
17
}
Gf.21
20 TP
21 RJ
22 TV
URIOI
CW
Q
CWI
UR64
23
24
25
26
27
30
31
32
TP
RJ
TU
SP
TU
TU
TV
URI02
CW
~Wl
RA
Gf.20
UR53
33
TP
RJ
UR54
LS
35
36
37
40
41
42
43
TP
TV
TP
TV
URI04
GL20
46
MJ
J.l-\
2
3
4
5
6
7
10
11
12
13
14
15
16
17
34
RA
TV
TV
RA
RA
RP
TP
44 TP
45 RJ
47 0
50 0
~p I~!!e Jii ~
lS4
0
un
A
BK3
A
A
BKI
Gf.20
UR55
30020
UR55
UR47
OP
o
GL
BK4
Gf.22
30000
Exit
Entry. No. of lines of input -7 a
}
v ...."v
A
}
Jump to X3 to Flex code routine
Output parameter line from X3 to Flex code
Changing u to address relative to 1000
Computing and putting temporary storage
address in running program where needed
Preparing jump exit of running program to
2nd line of succeeding subroutine
Temp storage address in u and v sent to
region accumulating subroutine, later to
be used as a parameter in print tag rtne.
Getting call word for carriage return Flex
cod~
InsertIng call word for carriage return in
program
}
UR65
17
UR52
UR55
UR53 '\.
URI03 J
Getting call word for index 117
Call word to running program
Call word of statement to 1st line of Op
File
Computing & putting no. of lines in running
program, including temporaries, into Op
File
Putting call word for print tag rtne. into
A
LN, so this routine will be available in
LSI
the library
UR56
No. address modification lines to prelude
Number unmodifiable constants to prelude
UR57
UR62
Line no. to prelude
UR55 } Computing & putting proper number in v
URI05
of prelude 1st line
Prelude
& 1st line of running program to
UR44 }
GL
assembly region
OPI } Transferring Op File & subroutine to Op
OP2
File from where it will go on tape later
DR
Exit to 1st line
Parameter line for 0 p control routine
UR52
o
Parameter lines for X3 to Flex code
}
o
}
u = call word of print statement
o
3
30000
v =no. lines, running program, including
50002
o
temporaries
Call word for print tag routine
1049
GL
0
55
0
30000
30000
1
56
0
0
30000
2
Pre- 3
lude 4
5
6
7
10
R~n- 11
nl ng 12
Pro-13
gram 14
15
16
17
20
21
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
101
102
103
104
105
0
0
0
0
0
0
30000
01007
0
01010
0
50002
2
0
0
1011
0
0
0
0
0
0
0
0
30000
30000
30000
0
0
0
0
MJ
PR
TP
TP
10
TP
10
RJ
10
MJ
0
0
0
0
0
0
0
0
0
106 0
CA
0
0
0
0
UR107
= Call word of print statement. v = #
lines prelude & routine
v = number lines subject to address modific ation
v = number of unmodifiab1e constants
u
Line number
Exit - 1st line of running program
v = 1 (45)
u = 1 (117) v = temp. storage address
50000 }
~oooo
Parameter lines to Print Tag Routine
50002
0
1000
4
0
1011
2
45
117
12
14
Jump to print tag routine
Jump back to first line of running program
22
30000
1050
Compute Generation Routine
This routine forms a code that sets up data in the proper location for
the equation coding, followed by a return jump to this part.
All the actual
computational coding is done by the equation generation routine.
The string-out input to the Compute
Generator contains the call words
of the variables or constants in the same sequence in which they appear in the
input sentences.
Subscripted variables have multipliers and moduli saved
in addition to their call words.
Thus one subscripted variable occupies
2. 3 or 4 locations. depending on how many subscripts it has, and the subscript call words follow thereafter.
Functions within pseudo operations have
only the call word of the function in the string-out and no argument call
words. even though the arguments may be stated in the input sentence.
At the
end of every string-out is a line of zeros followed by 01 227-7 (the XS3
representation of !:J. .). .When a compute sentence contains several terms
separated by "and's" in the input sentence. the string-out has a zero line
inserted between the last call word of one term and the first call word of the
following term.
The Compute Generator builds up Operation File It prelude, running program
and file of relative constants from this data.
The first line of the generated
coding - the exit line - is an MJ to the line that follows second after the
last generated line.
line.
The last line of the running code is an MJ to the exit
After this follows a list of generated relative constants.
For terms that are not inside parentheses in the input sentence (that is,
for the first string-out call word and those following zero lines) the routine
generates:
1) In most cases (call-word types 66,65,64,4)
RJ
10
2·)
25--00000
25--00001
or
RJ
10
4--00000
4---00001
For subscripted variables (call-word type 77)
TP
62000
64--TP
62001
64--1, _2 t 30 r 4 0f those.. lines
M5I
'FP
6-2002depending
on how many subscripts
TP
62003
64--the
subscripted
variable has.
RJ
24--24--10
00000
0001
liii'fiiilOi .....
}
1051
-~
-
~
.. - -,-.• - ,.
--"
3)
And for dummy functions ( call-word type 61)
TU
Call word + 1
a
TV
Call word + 1
a
RA
Call word of constant 1
a
[JOOOO]
a RJ
DoooQ]
The terms that are inside parentheses in the input sentence precede the
code of the RJ line and ten line
splits into two groups:
of their respective symbol.
Their handling
those that are within or are input parameters to a
pseudo operation, and those that are not.
To set up input parameters for reference to a pseudo operation the routine
generates:
4)
5)
For functions (call-word type 66)
f3
00
Call word
{3 + 1
00
TP
TP
00
25---
}
For subscripted variables (call-word type 77)
00
TP
00
TP
y
TP
TP
TP
6)
{3
(3+1
25---
Call word} in the location for relative
constants
25--61--in the running code
61--00000
in Operation Fi Ie I
Call word
Call word
relative constant
running code
76X--00000
OP Fi Ie I
77--( 1)
Call word of 63--1st multiplier
with 1,2,3 or 4 subscripts
(2)
Call word of 63--No. (4) , (1) & (4), (1) & (2)
2nd multi& (4) or (1) & (2) & (3) & (4)
plier
of these rows appear in running
(3)
Call word of 63--code.
3rd multiplier
(4))
Call word of 63--modulus
y
For all others (call-word types 64, 65 or 67)
TP
Call word
running code
63---
For terms within parentheses of a function or a subscripted variable
but not within a pseudo operation the routine generates:
1052
7)
For subscripted variables ( call-word types 76 or 77)
8
00
Call word
8
TP
TP
(for 77
only)
8)
00
modulus
Call word
For all others
TP
(Call~word
Call word
Call word
75---
relative constants
running code
62--OP File I (this does not apply for
Call-word type 76)
00000
types 63,64,65 or 67)
running code
62---
1053
Flow Chart of Compute Generation Routine
Clear spaces for Op
File I LF, prelude LE,
temp. storage
LA 13
LA7
LA 11
Set CW of sentence
in u of LE and u
of IF
Set line no. in
LE5 and MJ 0 in LE6
Set in ill 4
addr. to beginning value
LA 17
Get next str ing.
word --;.. A
(preadv.)
LA 22
Yes
V & VI
~-------------------------------------~
"Before get next"
jump to "get
next"
No
MJ place the stored
RJ CW CW
10
0
1
and adv. counters
and check
Is it zero?
LA 23
"Go to
End"
Yes
Is it
8
XS3 l:::..
?
No
Place CW in Op. File I
LA 25
LA46
Are we inside
pseudo?
Are we inside
parenth.?
No
LA 26
Put string.. word
to Q and QT with
mask Op. code
~ temp.
LA33
LA30
Is the CW type
64,65,66?
(25 type)
No
Is the CW type
77? (24 type)
Yes
10
Yes
L32
Is the CW type )~o Thus pseudo oper.
61?
(4. ____ ). Adv" ind.
for inside pseudo
LA31
No
11
Yes
12
,
RJ form 25 CW and
set aside
RJ CW CW
10
0
1
RJ form 24 CW and
set aside
RJ CW CW
10
0
1
Save CW in LC5 and
change exit for zero
str. word to ~
and set "inside
something" to 1
RJ for 4 ____,CW and
set aside
RJ CW CW
10
0
1
......
o
CJl
CJl
,
,
Adv. ind.
"inside something"
Make presetting for
hdl. 77 outside
pseudo,rest exit of
RJ
Jump to get next
string. word
Jump to hdl. 77
in part where first
row is done
,
Jump to ttbefore
get next" string.
word
AdV. index
"inside something"
Jump to get next
str ing. word
Changed exit of zero string. word
LA 134
LA 113
18
,
Generate TO CW+l a
TV CW+l a
RA a "In
a
RJ [ ] [ ]
and place it
8
Set no. of lines in
. Op. File I and heading
code
in gen.
~
Go to End
It
•
Adv. addresses for
generated coding
[,
Restore jump for zero
str ing-out word
\
Jump to "get next tt
MJ to EXIT
13
....---~~
LAlOO
LA74
I Thus single val.
L.11.77
N
/
' \ No
Ivar. 64, 65, or 67.
.. RJ generate
Is the CW 77? I--~_O_ _ _~.,i Is the CW 17?\1----~
IV
TP CW CW
11
20
21
\ I
\
RJ to gen. and
place 0 CW CW
TP addr. 76X ___ _
of CW
and adv. counters
Adv. counters
and check
\
RJ to gen. and
place 0 CW CW
TP addr. of 61 __ _
CW
and adv.ct.
Place CW in
Op File I
Restore exit of
RJ and prep.
25 CW
MJ to gen and
place 0 25_ 25__
TP addr
61 __ _
of CW
Place CW in
Op File I
Adv. counters
and check regions
Jump to get
next string word
Restore
exit of RJ
Do presetting
for hdl 17
inside pseudo
(63 ___ )
Jump to hdl. 77
in part where
first row
is done
Jump to get next
string word
1057
LA53
L.A52
LA47
14
~--..::;M'
Is the CW 77?
15
No
~--~~
Yes
RJ to string and
place 0 CW CW
TP addr 75 __ _
of CW
and adv. count
Place CW in Op
File I
Thus single valued
Is the CW 76? I---~~ 63, 64, 65, or 67.
(IV 62) RJ to generate
IV 16 Tn CW 62 __ _
16 Yes
No
1
RJ to store and
place
o
CW
CW
TP
addr.
of CW
and adv. count
Restore exit of RJ
Make presetting
for hdl. 77
outside pseudo
Prepare to get
next str. word
Jump to handle 77
in part where first
row is done
T
Jump to get next
string word
Mask out bit
after 76 (# of
subs cr.) and
shift to v
(62 ___ )
Adv. counters
Adv. CW of
subscript
RJ to store and
place
TP CW 62 + # of
loc.
and adv. count
Index jump
on no. of
subscr.
Jump to get next
string word
1058
IE-~-__
J
Loop to
get all
subscripts
and mod.
Subroutines
I
II
Generate and place
o CW CW
TP addr. [00000 + no. of loca(;
of CW ".
-first 2 or 3 bits
filled by the different entries
adv. addresses, check
. exceeded regions and jump
to get next stringout word
Generate and put aside
RJ CW CW
10
0
1
Advance index "inside something" and jump to get next
string. word
III Handle 77 CW cases with different entries for inside
and outside pseudo operation,
and jump to get next stringout word
v
When zero stringout word,
place RJ CW CW (
t
10
0
1 was pu
aside by II) and clear both
ltinsJldes" and adv. resp.
clear counters and go to
get next stringout word
IV
VI
Check whether CW is already
in OP File I. When not,
place it there and adv.
with exceed. region check
Only used in RJ by V
Generate and place TP CW
62___ + no. of location
Restore subrout. and advance
counters with exceeded reg.
check. Only ~ed in RJ
by III and ®
Compute Generator
Regions
RE
RE
RE
RE
RE
RE
RE
RE
RE
LA2512
LB2710
LC3117
LJ3172
LK3213
L03217
LS3230
LT3241
LV3251
Main program
Subroutines
Constants
Checks for exceeded regions
Alarm print
Alarm (> region LF)
Alarm (> 1777)
Alarm (> region LE)
Alarm (> region LI)
RE
RE
RE
RE
LP2000
LQ5360
LR6777
W7777
Constant
Constant
Constant
Constant
RE
RE
RE
RE
ID3263
LE5360
LI7000
LF3300
RE
RE
RE
RE
RE
RE
RE
CW1211
BK2242
OPI047
WA653
UP421
BQ632
WB677
LI should always
Temporaries
Generated coding
}fOIIOW LE so that in
Storage for constants the end when adding
Op File I
the generated constants to LE the region never can be exceeded
for
for
for
for
last
last
last
last
addr.
addr.
addr.
addr.
Generation subroutines used
1060
+ I
+I
+1
+I
of
of
of
of
exit
region LF
region LE
region
7
10
IA
MJ
RP
TP
RP
IP
10
SP
TP
TP
11
TP
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
TP
o
1
2
3
4
5
6
LA
o
10014
LC
10005
LC
o
BK3
A
A
30000
LA3 }
LD
t~6
1
17
LE
Place XS3 code of line number in Op File I
Prepare exit line in prelude
~i4 }
Set starting value in temporaries
TP
LD6
A
EJ
EJ
TP
LC
LC7
LC
LB144
LB173
LE5
ID5
W4
LCl
ID6
~46
TJ
LD
TP
QT
TJ
LD6
LC23
LC23
LC17
Le15
RJ
LB36
ID7
LA40
LA42
LA35
LB42
34 MJ
35 TP
36 RJ
o
LA17
LC2
WI
LB36
LB32
37
40
41
42
43
MJ
RJ
MJ
o
TP
W6
TV
LC34
LA17
LB37
LB176
ID13
LA22
TP
MJ
o
LC2
W
44
45
46
47
50
51
52
53
EJ
EJ
TJ
TP
QT
EJ
EJ
RJ
54 MJ
LB36
o
WI
LD6
Place sent. CW in prelude and Op File I
LE6
TP
TP
RA
TP
TP
}
Clear space for prelude
Const. used by LA14
LF
BKI
LC20
LC6
LA5
LC2
LC22
LA20
BK3
TV
}
Exit
Clear temporaries
}
}
Q
(Pre-advanced) bring next string-out word
in storage W6 and to A
Is it zero?
Is itll.?
Are we inside something?
Put string-out word -+Q
Mask out operation code into ID7 and A
CW type 77?
CW type 6l?
CW type 4?
Left only CW type 64. 65, 66; jump to set
as ide RJ CW CW
10 0
LA17
LA74
LC23
Q
ill 7
LC23
LClO
LB133
LA60
LBl16
0
LA17
LA55
}
I
Go to get next string-out word
Set index "inside pseudo operatiOn"}
Jump to set aside HJ CW CW
CW4
10 D I
Go to get next string-out word
.
RJ CW CW
Jump to set aSIde 10 0 1
CW77
Jump to handle 77 CW
Save CW 61---in ID13 v address
Change exit for zero string-out word
LAll3
Set f'ins ide something" to 1
Jump to get next string-out word
Are we inside pseudo? Yes ---+ LA74
inside
In parent. but not inside pseudo:
somemask out Operation Code
(thing
CW type 77?
CW type 76?
Left only type 63, 64, 65 or 67:go
qe'lferatirrg with 62 •.•
7
I
tj
1061
@
@
@
@
@
0
@
55
RJ
LB14
LB2l
56
RJ
LB143
LB134
57 MJ
0
LBl12
60 RJ
LB133
LB167
LC2l
L06
WlO
LC46
L06
LC15
Q
lDlO
36
Q
A
ID6
67 MJ
70 RA
71 RJ
0
L06
LB133
LA70
LC2
LBl16
72 IJ
73 ZJ
WlO
LA70
LA73
LA17
61
62
63
64
65
66
TP
QT
LQ
TP
QT
AT
74
75
76
77
100
TP
QT
EJ
EJ
RJ
LD6
LC23
LC23
LC12
UH33
Q
W7
LAI02
LAl05
LB160
101
102
MJ
RJ
0
LB14
LA17
LB23
103 RJ
104 MJ
LB143
0
LB134
LBl14
105 RJ
LB14
LB15
106 TP
LC23
Q
107 QS
110 RJ
LC14
LB14
LD6
LB15
RJ to gener. and placing
0 CW CW
TP Addr.75--of CW
RJ to taking care of Op
File I
Jump to handle subscr.
var. case
RJ to gener. and placing
CW
CW
0
TP Addr. 75--of CW
Mask out bit # of subscrIpts
# of subscr. in v of ill 10
l
}
}
}
}
CW Type 77
(not inside
pseudo)
.1
Prepare to get next string- CW type 76
out word
@o_ never!Bring CW-l of first subinside Pseudoscript in storage W6
Op)
Space filling jump (free)
Up date CW
Jump to aenerate and place
TP [CW 62 •.. + # of locat.
IJ on # of subscr.
} Subscr. -1
Jump to get next string.
(zero jump
word
needed since
index by 1 too
high)
Operate code ---+ A and ID7
CW type 77?
In parentheCW type 66?
ses inside
pseudo Ope
Left only CW type 64, 65,
or 67
Go to get next string. word
RJ to gener. and place
CW
CW
0
CW type 77 inTP Addr.
76X ••.
side pseudo
of CW
RJ to take care of Op File
Jump to handle subscr.
var. case
RJ to gener. and place
CW
CW
0
TP Addr. 61 •.•
of CW
Put mask for CW code-Q
Change CW in £D6 to sen t.
CW25 •••
CW type 66
RJ to gener. and place
ins ide pseudo
CW
CW
0
TP Addr. 61. .•
of CW
1062
III
RJ
LB143
112
MJ
o
113
114
115
116
117
RA
SP
TU
TO
TP
ill 13
A
A
LC24
120 AT
ID5
121 TV
122 TV
123 MJ
A
A
124 RP
125 TP
126 TV
30004
LC30
LC36
127
130
131
132
133
134
135
136
137
RA
RJ
RP
TP
MJ
TV
RS
TV
RS
LD5
140
141
142
143
144
145
146
147
150
151
152
153
154
155
156
157
RS
TV
RS
TV
RA
RA
ST
RS
SP
AT
TV
RA
LQ
RA
RA
LE6
LE6
LC20
LF1
LE2
LA162
LE
LA163
LE2
LE
LEI
160
RA
LFl
LQ
161 RA
162 RP
163 TP
o
LJ12
10003
LC
LA22
~~33
o
LA17
ill 3
~37
LE
LE
LEI
ID4
LD4
LE2
LB140
A
LE6
30000
LI
164
TP
LC44
165
RJ
MJ
OP
166
RJ to take care of Op
File I
Jump to get reset stringL.A17
out word
J
Adv. CW by 1
,
LC2
Move CW + 1 to u addr.
17
TO [ ] [ ]
LC30
Place
CW
in
u
of
TV [ ] [ ]
}
LC31
P
t
"1003"
in
v
of
A~form excl. 10 lines
A
u
"next addr.+ 2"
Add
#
of
addr.
in
ge
r. coding
C
A
exc 1. 10 1ines
ase
LC30
2
Place "'next addr'W+ "(excl. 10
·CW
I'Ines ) .In v 0 f TV [[][~
LC31 }
1[ J
61 ...
Place "next addr." (incl.
LA167
10 lines) in RP command
LA126 } Place 4 rows of generated coding
30000
LB134
o
LEI
LC43
LC22
LE2
11
Restore exit of case zero
string. word
}
Adv. counters resp. clear
# of 10cat. reI. 100 and
both insides
Fi 11 v of LE (LE7 +. •• )-LE
}
} Fill v of LEI
(LE7 +••• ) - LE - 6 (6 is prelude
coding)
}
Fill v of LE2
~42 } Fi 11
ID5
}
LFl
}
LC2
LC2
v of LF
Fill v of LE6
(second addr. of next routine)
Fill v of LFl
( LE6-LC20)
tA162 } Prepare moving of generated
LA163
constants
LC37
Q33
1
!J
Add constant-s to
addresses
#
of generated
LJ
} Move constants to end of coding
30000
OP1
~2
}
Bring generated coding to tape
1063
Go to
end
167
170
171
172
173
174
175
SP
TU
TP
RJ
TV
TV
MJ
CA
IA
o SP
I
1
2
3
4
5
6
7
10
11
I
exit
161
162
175
12
13
14
15
16
17
20
21
22
176
x
23
24
25
26
27
II
II
exi t
1124
III
AT
TU
MJ
TU
RA
TV
TP
RA
RJ
RA
RA
MJ
TV
MJ
TV
MJ
TV
MJ
TU
RA
TP
SP
TV
RA
MJ
SP
AT
AT
TP
M.l
TP
30
31
32
33
34
35
36
37
40 QS
41 MJ
42 TP
43 QS
44 MJ
45 RP
46 TP
47 RJ
50 TV
LC30
A
LC2
CW
Q
ID3
o
Come from LA123
17
LC32
Patch for generating
RA addr. 1
A
} Get a CW for con st. 1
CWI
LC32
LA125
LA124
Jump back to coding
LA176
LB
LD6
LD6
A
o
LD4
LC26
LD3
LC26
LD2
LJ12
L04
LOS
17
LI
LC36
LJ15
} Form ~ CW CW in next storage addr.
save CW in u in LC36 (used by LB135 in VI)
t~~6
}
LB7
30000
Generate
TP 01 .•. CW + # of locat. and place it
for gener. const. 0
CW CW
for gener. code
TP
01. .• CW + #1 oc.
~il } Advance counters
Put 61000 in v of LC26
o
LC27
1£2
30000
££26
LB
LC26
LB
1£ 11
LC26
Put 75000 in v of UC26
o
1£17
o
LC16
o
LA20
LB25
30000
LD7
A
LC26
o
LD6
ill 6
LC35
LC2
o
1£23
LC13
o
LC23
1£14
o
10004
LC
LBlll
A
Put 62000 in v of LC26
LB
LB25
1£1
} Get next string-out word (in advance,
not yet officially) into LD7
I.D7
Shift # of subscripts 9 bits to the left
6
10
LC26 } Put 76XOOO in v of LC26
Lel0
LB
Form RJ CW CW }
17
}
1
and set it aside
10 ~
~D13
LD
30000
Set index ftinside something" to 1
Only used in RJ
?n6
} Make 24 ... CW before
LB32
~D6
LB32
going to II
} Make 25 ..• CW before going to II
LB47 } Clear temp. storage
Handl. of subscr. var.
LD7
LBI06
Get next string-out word ~ A
LOIO
Modulus ~ u of LDI0
1064
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
TV
RS
SP
RJ
TP
IJ
MJ
RJ
TO
TV
TP
RJ
TO
RJ
IJ
MJ
SP
RJ
TO
RJ
IJ
MJ
77 RJ
100 RJ
101
102
103
104
105
106
107
110
III
112
113
114
115
116
117
120
121
122
123
124
125
126
127
130
131
11162
11163
IV
IV
VI
16
.
eXl t
1-32
133
134
TU
RJ
TO
RJ
MJ
RA
TU
TP
MJ
TV
MJ
TV
MJ
SP
TU
MJ
MJ
TV
MJ
TV
RA
TV
TP
RA
RJ
A
L07
WIO
CW
A
LD7
o
LBlll
A
A
LOll
CW
A
LB133
ID7
o
lO12
CW
A
LB133
L07
o
LB111
CW
A
LBl33
LOIO
LB133
o
LA20
LA20
30000
o
LC40
o
LC41
o
L06
A
o
o
LC16
o
Lel5
LC26
ID3
LC26
LD2
LJ12
RA
LD5
MJ
TP
o
LC25
LD7
LC2
71
CWI
LDIO
}
I/:
}
of subscr.
-l~
v of LD7
LB60
Get const. CW for mod.
CW for mod. ----;. u of LOIO
First IJ on # of subscripts
LBI03
LBl06
LD12
lOll
Get next string -out word ~A
Store multiplier 2 in L012(u)
Store multiplier 1 in LOll(v)
.,
~Wl
} Get CW for multiplier 1
LC26 } Generate and place TP [CW mu 1t. 1] 62 .• •
for multiple 1
63 •.• #of
LB121
Second
I
J
on
#
of
subse
r.
1 oeat.
LB7l
LBl03
71
} Get const. CW for multo 2
CWI
LC26 } Generate and place TP [CW mu 1t. 2] 62. · .
63 .•• # of
LB121
Third IJ on # of subser.
LB77
locat.
LBl03
LBlO6
Get next string-out word~A
Get const. CW for multo 3 (this string
CWI
word has data only in v)
Generate and place TP [CW mu 1t. 3] 62 •.. # of
LC26
LB12l }
for multiple 1
6r~~~t.
LC26 } Generate and place TP [CW modu Ius] 62 .. • # of
LB121
63 .••
LAl7
Go to get next string-out word
locat.
LCI
LBIIO
Get next string-out word to A
(used as subrout. in III)
A
30000
LB121
Set jump to IV62 in IV
LB45
LB121
Set jump to IV63 in IV
LB45
17
LC26 } Prepare IV 16
Generate and place TP CW
LBl22
Jump to right entry
30000
LC26
Place 62 ••• in LC26
LBl25
LC26
Place 63 ••• in LC26
ID2
Add # of locat. to g~
in LC26 v address
LB127
Place flnext addr. for gen. codind'in N!
30000
Place one line of generated coding
LC2
LJll
Adv. counters and check exceeded region
[£-2
30000
Mask CW at hand ---;. A in u address
Q
}
...
}
1
1065
VI
.
-y-eXlt
135
136
137
140
QT
RP
EJ
TP
141
142
143
144
145
146
147
150
151
152
153
154
155
156
157
160
161
162
163
164
165
166
167
170
171
172
173
174
175
176
177
200
201
202
203
204
205
206
MJ
RA
MJ
TV
RP
TP
RA
RJ
RP
TP
TU
RJ
MJ
TV
MJ
SP
TU
MJ
TP
RJ
TP
MJ
SP
TU
TV
MJ
TP
RJ
MJ
TP
RA
TU
QT
EJ
TJ
RA
RA
MJ
CA
LC36
20000
LF2
A
o
LBl36
o
ID3
30002
LD13
L05
LJ12
10003
LC
LD13
LB143
o
LC15
o
LD6
A
o
LA34
LA22
LC45
o
LD6
A
LCll
o
LC20
LB133
o
LC46
LA20
LA20
30000
LC2
LC5
LA20
LA20
o
A
J
LB140 } Compare whether already in Op File 1
LB143
When not yet in Op File 1, put OW in it
LF2
(TP because space is not cleared before~)
in v)
LJ3
} Advance addresses (I
(1 in u)
LCl
Used only in RJ
30000
LB146
LB147 } Place the 2 rows that have {RJ CW CW
30000
been set away
10 0 1
LC2
} Adv. counters
LJI0
~153 } Clear a 11 "ins ide's·' and counte r for
number of addr. in array
LC36
Put CW in u of LC36
LB134
RJ to take care of Op File 1
Jump to get next string-out word
LA17
LC26 } Prepare 163
LB
17
} Prepare IV
LC26
17
LB124
LA23 } Shortcut (skip everything up to
LA17
next zero word)
Restore LA23
LA23
LB144
Jump to handle zero word situation
17
LC26
LC26
Place MJ in end
LB125
LC26
LB126
LA134
Mask for last 3 bits, come from LA41
Q
LeI
Advance to next string-out word
~B201
LB206
LB205
LCl
LCI
LA17
}
Mask out
Is
Is
It
It
It
it
it
is
is
is
LB207
1066
#
of subscripts
I?
< 4?
4
advance once more
2 or 3: advance once more
1
go to get next string-out
word
Constants
IA
0 0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
LC
0
0
0
1
0
0
0
0
0
0
01
0
0
0
0
0
0
0
0
MJ
0
0
0
0
0
TP
0
TU
0
0
0
1
2
3
4
LE7
77777
76000
75000
66000
24000
25000
63000
62000
61000
01000
00700
10000
77000
1003
0
30000
1
30000
30000
30000
30000
LA113
0
LB144
TV
RA
RJ
0
RJ
0
0
TU
TV
TP
0
0
EJ
0
TP
0
MJ
AT
CA
0
0
22777
0
0
0
0
0
0
0
0
0
0
10000
0
0
77777
30000
1
30000
30000
30000
30000
0
XS3 "6.."
}
These four rows belong together
(the 30000 must not be messed up)
This instr.-const. must have zero's
0
30000
LE
0
LB122
0
0
LB124
LF
A
0
6
LE
LF
LC7
0
A
0
0
LB173
7
LQ
LR
U>6
LU
LP
}
For exceeded region checks
LC53
1067
• t t
Exceeded Region Tests
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
IA
TJ
TU
MJ
RA
TJ
TU
MJ
RA
RA
RA
TJ
TU
MJ
RA
TJ
TU
MJ
CA
LJ
LC51
I.S
0
LB140
LC47
LT
0
LD3
LD3
LD3
LC50
LO
0
LBI
LC52
LV
0
LJ21
LA164
LKI
LK
LC2
LB142
LKI
LK
LC3
LC2
LC2
30000
LKI
LK
LC2
LB4
LKI
LK
}
Gen. cons tan ts
Alarm
}
Region LE
Alarm
}
Region LF
Alarm
}
Region LI
Alarm
1068
Alarm Entrance
0
1
2
3
IA
RJ
TP
RJ
MJ
CA
LK
WA
30000
UP2
0
LK4
WA2
UP3
UP
BQ6
1\1 .........
l"\J.Q.LUI
IA
0
40
32
66
27
30
12
7 27
10 65
CA
0
1
2
3
4
5
6
IB
LSI
IB2
30503
30270
30013
30276
12120
54306
22777
LS11
0
7
05424
12651
07226
50104
12427
56530
77777
1
J.
Generated code
exceeds 1777
addresses.
Alarm 2
0
1
2
3
4
5
6
7
IA
0
40
54
01
52
01
30
30
CA
LT
LT1
LT2
30323
31515
01313
04013
72263
27227
LT10
0
6
45150
40151
44630
46501
03027
77777
Region for Op File 1
is exceeded.
Alarm 3
0
1
2
3
4
5
6
7
10
IA
0
40
54
01
30
30
34
01
27
CA
LO
LOl
L02
30323
31515
50305
27012
50320
30722
30272
LOll
0
7
45150
40132
42466
65127
13465
63030
27777
Region for generated
coding is exceeded.
1069
Alarm 4
0
1
2
3
4
5
6
7
10
11
IA
0
40
54
01
30
30
65
01
26
22
CA
LV
LVI
LV2
30323
31515
50305
27012
66245
34650
30302
77777
LV12
0
10
45150
40132
42466
65150
06665
13072
73027
77777
Region for generated
constants is exceeded.
1070
Temporaries
LD
0
1
r
1
[
3
5
,
]
~
10000
10000
~
~
1
V( + 2), IV( + 1), 18( + 4), I( + 1)
CW of gener. const. adv. by
I(+ 1 in u and v)
adv. by V(+ 1)
cleared
in beginning
IV( + 1), 18(+ 4), I( + 1)
Next string-out word
Working space
Working space
Working space
Working space
CW CW
Storage space f or, {RJ
10 0 1
0
7
10
11
12
13
14
1
Index "inside something"
I
Index
pseudo opere
Running # adv; by IV( + 1) r 18(= 0), I( + 1)
Addr. of gen. code adv. by
if
2
4
Compute Generate
10
0
} cleared
later
again
1
Generated Code:
LE
0
1
0 sent.CW 0
2
cleared in
beginning
3
4
5
6
Line # XS3 code
MJ 0
01000
Set by LA12 and LA160
OP File I
LF
0
0 senteCW ¢J
}
1
2
3
4
Generated Constants
LI
0
1
1071
not cleared
in beginning
Vary Generation Routine
The Vary generator uses the string-out and the Vary File as built during
the Translation Phase to prepare the relative coding necessary to perform the
functions of the input Vary sentence.
This generator also provides an Op
File I item to be used by the Segmentation Phase.
The relative coding is
later modified by the Processor according to the information furnished by the
Allocator.
The generated Vary coding may be broken down into the sequence of functions
performed by the Vary sentence.
iIIoI1 ~- GL
.....
v
Set index CT to
number of with
words in sentence
CI~f0
~@
Yes
..... ......
Fir st indicator
stringout address
~
CT2
'@
Is initial
L
~-~-I~
™
~
GL
Insert call
ord of initial
alue in uportion of GL
Insert call
word of variable in vportion of GL
Store address of
next generated
instruction in CT
MJ-O-__ _
Set index CT to
number of with
words in sentence
First indicator
stringout address
~
~
Fill in v-portion of resume
entry line
-+GL
Is variable
fixed point?
CT2
~GL
~GL
10-0-1
GL
TM- ___ -Q
TM-___ -A
Advance CT2
to next vari
able's indicator
Insert call
word of limit
in u-portion
of GL
Insert call word
of increment in
u-portion of GL
Is limit
variable absolute value?
Insert call
word of variables in uportion of GL
TM-A-A
~GL
~GL
J-Q-OI002
~ GL
~
15
~----~
Advance CT2 to
next variable's
indicator
Have all ' t ; ; t } ®
for completion'
21
instructions been
enerated?
~----r----
NO~
Insert call word
of first temporary storage in
v-portion of GL
Insert call word
of increment in
u-portion of GL
~
nsert call
word of limit
in u·-portion
of GIL, - - , - - - - - '
Insert call word
of variable in
v-portion of GL
TJ-· ____ _
..·01002
-~GL
Insert call word
of first temporary
storage in uportion of GL
Set index CT to
number of with
words in sentence
Insert call word
No of limit in uportion of GL
Set number of
working temps (10)
in 3rd word of
prelude
First indicator
stringout address
~ CT2
~
Set second
of Op File
equal to I
Is variabl~ Yes_~
fixed POiW~
I NoB
TM- _____
Is 'dummy·
able fixed
FA-Q- __ _
-7
GL
GL
~
Insert call
word of variable in vportion of GL
increment
absolute
value?
TM- ____ -Q
~GL
Insert call
word of increment in
v-portion
of GL
--------'
Set index
CT to number
of wi th words
in sentence
-Q
Insert call
word of increment in
u-portion
of GL
Insert call
word of increment in
u-portion
of GL
Advance CT2
to next
able's
indicator
RA-___- __ _
~GL
o
--?
First indicator
stringout address
~
GL
Insert call
word of vari
able in
u-portion
of GL
MJ-O- __ _
~GL
Is test
indicator
equal 10 zero?
Yes
Insert call word of
increment in u-portion of GL
Insert call
word of vari
able in vportion of
GL
Is increment
absolute
value?
No
29
Store address
from CT3 in
v-portion of
GL. (address
of jump to
range)
Insert Q address in
v-portion
of GL
0:)
I
'V
Store address of next
generated instruction
in CT3
Insert address of
first relative constant
in u-portion of GL
10-0-4
~GL
~
TP - _____ - - -- -~GL
Insert callword
(50002) of flex print
fixed library routine
in v-portion of GL
RJ -50002-50002
Insert address of first
temporary in v-portion
of GL
CW Find callword
for constant 79
~GL
10-0-3
~GL
Insert call word for
79 in u-portion
of GL
10-2-0
~GL
,
RS
TP-lOOOl-50002
~GL
(10001 is address of
second relative constant)
,
TP - _____ - _____
MS-O- ____ _
~GL
~GL
I
Insert address of this
in.~s.tr,u~Ji()n . . in vportion of GL
1077
Is test indicator
= 22?
(B variable, C-A = 0)
Change entry line of
generated routine to
jump in at next instruction generated
r-------;
Is test indicator
= 21?
(B variable, C-A < 0)
Modify component of
form A(B)C
Is test indicator
= 14?
(A,e variable B < 0)
NO
Is test indicator
= 10?
variable, B> 0)
NO
1078
Test indicator = 20.
(B variable,
C-A> 0)
NO
Insert call
word of increment in
u-portion
of GL
SP-____ ....O
~GL
Insert relative
address of next
instruction in
u- ortion of GL
ZJ-___ --__
~GL
Insert call
word for constant zero in
u-portion of
GL
Insert relative address
of second following
instruction (NI+I) in
v-'portion of GL
Insert call word
of increment in
u-portion of GL
s increment
~
44
MJ~-
____ _
-4-GL
Insert relative
address of next
instruction in
u-portion of
GL
SJ-___- __
~GL
I---_~
absolute
value?
Yes
TM- _____-A
~GL
~GL
Insert call
word of increment in uportion of GL
Insert relative
address of alarm
entry (from CT3)
in v-'portion of GL
TJ-_____ _
~GL
Insert c:all
word for increment in
u-portion of
GL
Insert relative addre~
of alarm entry (from
54
CT3) in v-portion of
GL
Inse~rt relative
address of alarm ~
entry (from CT3)
RS
54
in v'-portion of
GL
Add five (5)
to relative
address of
next instruction
Insert relative
address of next
instruction in
v-portion of GL
Add four (4) to relative
address of next instruc-I---~ 49
tion
Insert calculated
relative address
in u-portion of G
ZJ-___ - __
~GL
I-'
o
co
c
Insert relative
address of next in
struction in
u-portion of GL
Insert relative
address of alarm
entry in v-portion
of GL
Add four (4) to
current relative
address
I s increment
absolute
value?
No
MJ-O-__ _
~GL
Set indicator
(CT4) when
tests are
generated
Is limit
absolute
value?
Advance CT2
to next vari
able's indicator
Insert calculated
relative address
in v-portion of
GL
Add three (3)
to current relative address
Have indicators
for all variables
been checked?
I--~~
as test
coding been
generated?
No
Yes MJ-Q-Ol003
~GL
Put in relative constants and Flex codes
Insert sentence
call word in prelude and in Op
File I item
Adjust prelude to account for generation
of tests
Adjust Op File I item
to account for generation of tests
Number of lines
subject to modification to
second word of
prelude
Number of lines in prelude and routine to first
word of prelude
Sentence number to sixth
word of prelude
<
Q)
'"i
Number of words
in operating routine to second
word of Op File I
item
"<
en
fs8\
~
(1)
::s
(1)
'"i
Q)
c-+
o
'"i
"!Ej
.....
o
.....
o
~
n
CD
.....
::::s-
Insert call word
of last sentence
in third word of
Op File I item
Insert call word
of exit sentence
in fourth word of
Op File I item
Advance relative
>---~ address counter
(CTI) by one
Store one instruction
from EL in next location
of generated coding
region
Insert number of
lines in Op FiIE~
I item in first
word of item
~--~
Advance to next word
in generated coding
region
Transfer five words of
string.out (next variable
information) from address given by CT2 to
temporary storage
(TEO-TE4)
tu
\~Exit! ~
~Vary
Generator
V
.
yVlXlt
fI)
TP-____-A
TM-___ ..:--A
~GL
--+
GL
J-Q-__ _
Insert call
word of limit
in u-portion
of GL
~GL
......
o
co
f'-'
Insert call word
of initial value
in u-portion of GL
Insert relative
address of alarm
entry (from CT3)
in v-portion of
GL
--+ GL
Insert call word of
limit in u-portion of
GL
Is limit
absolute
value?
Insert call word
of limit in uportion of GL
~GL
~
TM- ____ -Q
~
GL
Insert call word
of initial value
in u-portion of
GL
--+GL
TJ-Q- __ _
~GL
Insert relative
address of alarm
entry (from CT3)
in v-portion of
GL
Is initial
value absolute
value?
No
Insert call word
of initial value
in u-portion of
GL
s initial
value absolute
value?
Set index
to six
CT~j
ave all XS-3 digits
been converted to Flex
code (CT5=O)?
Sentence
number
~Q
Next digi t
-7A
<
m
JoooS
~
Cil
CD
ISubtract 03
from XS-3
digit
-~
~
CD
JoooS
m
c-+
0
JoooS
'"!I:l
.......
0
~
.......
0
co
w
Add base address of
Flex code table
Space character add
03 to XS-3 character
required Flex code
into relative constant
word
(')
::r
Add
m
JoooS
70
Add 04 space code into
relative constant word
1----~70
To convert XS-3 sentence number to Flex code, insert in relative constants
c-+
en
Vary Generator Regions
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
VY2512
IN2513
VA2517
VE2567
CE2627
VB2650
FX2673
FL2717
VC2746
FG2760
FD2776
VT3020
DJ3071
DK3130
DL3142
DM3177
EM3212
EN3235
VS3260
BP3304
CV3333
RS3353
ST3356
SA3361
CN3365
RC3460
CT3473
GL3501
TE3502
PF3507
( 1)
(4)
(50)
(40)
(21)
(23)
(24)
(27)
(12 )
( 16)
(22)
(51)
(37)
(12 )
(35)
( 13)
(23)
(23)
(24)
(27)
(20)
(3)
(3)
(4)
( 73)
(13)
(6)
(1)
(5)
( 5)
1084
RE
RE
RE
CWl2ll
LSl465
OPlO47
RE
RE
RE
RE
RE
RE
BR537
KIl336
LWl250
UP421
WA653
BQ632
nT."
IA
0 MJ
CA
0
1
2
3
4
Obtain CW for constant
Insert Library CW in List I
Write Generated routine and Op File I
on tape
Compiler of computer error routine
Illegal jump check routine
Sentence CW locating routine
On line print routine
Print heading routine
To rewind tapes
Sentence string -out
Op File I
Generated coding
Vary File
nrfnn .. n
n.r.
D~.::;q.::;
RE
RE
RE
PL5360
GC5366
VF47l0l
VY
0
VYl
30000
IA IN
RP 10006 IN2 }
PL
TP CN
RP 10005 IN4 }
PF
TP CN
MJ 0
VA
CA IN5
Exit line
Zeroize Prelude area
Zeroize Op File I area
{VAO
= IN4}
1085
CD
@
@)
VA 0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
IA
TP
RJ
TP
RJ
TP
SP
ZJ
TU
SP
RP
EJ
SP
LQ
TU
SS
SA
TU
TU
TU
TU
TP
QT
EJ
MJ
TU
SP
SJ
TV
LT
TV
TP
SP
TJ
QT
MJ
QT
TP
RJ
TV
MJ
CA
VA
CN34
RS2
CN34
RS2
CN34
BK7
VE
VF
BK6
30000
[VFl]
VAll
Q
Q
Q
VA12
A
A
A
A
CN15
30000
BK3
0
30000
30000
VA33
CN3l
10024
Q
CN55
BK3
CN54
CT
0
CT
CN34
KI
CT
0
VA50
GL
RS
GL
RS
GL
0
VA7
VAll
0
BR3
VA13
0
17
VAll
0
0
VA12
VA25
VA30
VA31
Q
A
VA30
VAlO
CT
45
VA34
CEI
Q
CT
Q
0
VA43
A
VA45
A
Q
KII
GL
CE
}
}
}
M.l o - ~GL
Store
MJ 0 1003 ~GL
Store
MJ 0 - ~GL
Is exit sentence number stated?
No, so search Vary file for sentence
number of last sentence in range
Add r to VFl to find Exit call word
Set to continue search
}
}
}
Set up
Vary call word for this Vary File
item ~A
Has the cor. Vary File item been found ?
No, back to continue search
Save Exit call word
Is there an implied resume?
Yes, so set
}
©
to
@
Save Exit call word in CTv
o ~ Q35
Sentence CW ~Ace
Is 26000 > Sentence CW? If yes, then 22Exit CW ~ Au
Exit CW ~Au
1 ~ Q35 indicates wi thin Pseudo-Op.
Illegal sentence number check
Fill v of Exit line
1086
@
VE
0
1
IA
RJ
TU
VE
LW
A
2
TV
()
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
TP
QJ
TP
QT
TJ
TJ
MJ
SP
SA
TU
LT
TP
QT
QT
RS
LT
IJ
MJ
BKI0
VES
CN15
CT
CN54
CN60
0
VF
CN24
A
6
CN6l
A
VF
CT3
43
CT3
0
25
26
27
30
31
32
33
34
35
36
37
TP
QT
EJ
RA
MJ
TV
MJ
RJ
TP
RJ
MJ
CA
CN15
30000
CT2
VE26
0
CN31
0
WA
CN62
UP2
0
VE40
'.::
LWI
CT
CT
Q
VA36
Q
CT2
VE12
VE32
VE34
17
0
VE26
A
Q
CT3
Q
Q
CT3
VE25
VE34
Q
A
VE32
CN53
VE23
CEI
VA36
WA2
UP3
UP
BQ6
}
Obtain call word for Exit
Save call word
~
Is stated Exit a Resume?
}
Yes t so Exit CW to CT2v and Pee
J
26000 >CW?
No, so is 27000 >CW?
NOt so to alarm
1
J
}
VF
m + VF2~Au
Set beginning of search
m
jn ~Av
n ~CT3
m~Q
}
n
0
l
m
jn
SN CW26
SN
CW26
5N
SN CW26
CW22
SN
CW22
n-m ~CT3
.;. 2
Checked all items?
Yes, and not found t so
error
SN CW22
Does exit CW agree
l
with next Vary CW
in Vary File?
NOt so advance to next item
and back
Set
to @ to avoid gen. lO--line
©
}
If so OK
Print alarm
Rewind tapes and stop
1087
IA
~CE
®
r ~~
Store Exit line
12 MJ
13 TP
14 TU
CN26
TE2
GL
CE14
GL
GL
TEl
GL
RS2
CT2
CT
RS
CN5
CE6
VB
CA
0
CE22
No, so TP- - ~GL
TP
TM
CW init
TP
CW··
TM
Inl t CW var
Store
Advance to next variable's indicator
Have we built all 'set initial value'
instructions?
Yes
{VBO = CE21
IA
TP
1 TP
2 SP
3 RJ
VB
CT1
CN34
BK5
LW
CT3
GL
Save address of JUMP TO RANGE
MJ 0 GL
4
Q
20
IJ
21
MJ
VB 0
TV
RJ
TP
7 RJ
5
6
@
RS
[CE2 ]
GL
ST
CT
CT2
SA
TP
QJ
15 TV
16 RJ
17 RA
@
o
CN17
ST2
BK4
CN23
SA3
TE2
CEll
CN27
3 RJ
4 TP
5 TP
6 RJ
7 TP
10
11
®
CE
RS2
10
11
12
13
14
15
16
17
TV
TP
TP
RJ
TP
QT
TJ
TJ
o
RS2
CN17
ST2
CTI
BK4
CN23
SA3
CN15
TEl
CN12
CN13
20
MJ
o
21
22
TP
TEl
FL
VB23
QJ
CA
gE13
10
}
o
10
}
VB21
FX
FL
Q
FX
~GL
~
GL
To find CW of first sentence of range
Insert CW in MJ instruction
Store
GC
Q
A
1
Ye S t so TM - -
LWI
GL
RS
GL
ST
CT
CT2
SA
0
Store
Set index to ~ of WITH words
String-out address of 1st indicator~ CT2
Store next variable info in TE-TE4
Is initial value absolute value?
}
0
1
~GL
Store
Fill in RESUME entry line
Set index to U of WITH words
Set address of first variable
Transfer variable to temporary area
CW of variable ~ A.
64000 > CW?
No, 65000 > CW?
No, so floating variable
CW is 63 ..• , so determine if fixed or
floating
1088
@
FX
5
IA
TP
TO
RJ
TP
QJ
TP
FX
CN27
TE3
RS2
TE4
FX22
VB2
Fixed
GL
GL
RS
Q
FX5 }
GL
6
7
10
11
12
13
14
15
16
17
20
TO
RJ
TP
TO
RJ
TP
RJ
TP
RJ
RA
IJ
TE4
RS2
BP4
TEl
RS2
CN30
RS2
CN33
RS2
CT2
CT
GL
RS
GL
GL
RS
GL
RS
GL
RS
CN5
VB13
21
22
23
MJ
TP
MJ
CA
0
CN30
0
FX24
VC
GL
FX6
IA
TP
Floating Variable. (Build for completion)
GL
TM ~GL
GL
TM -70000
GL
TM CW 70000
(CW of increment.)
RS
Store
~Ll1 } Is limit variable absolute value?
GL
Yes, so TM
A~GL
GL
TM CW A (CW of limit)
RS
GL
FS A - ~GL
GL
FS A CW (CW of variable)
Is limit variable absolute value?
~L15 }
GL
No, so FS CW CW (CW u of limit.)
RS
Store
GL
TM - - A ~GL
GL
TM Q A
RS
Store
GL
TJ - - 01002 ~GL
GL
TJ 70000 01002
PL2
Set # W()rkYng temps into 3rd word of Prelude
PFl
Set word 2 of Op File 1 item = 1
FX16 To store
0
1
2
3
4
@
@
@
@
@
@
FL
20
TU
21
22
23
RJ
TP
TO
FL
CN27
RCI
TE3
RS2
TE4
FL6
CN30
TE4
RS2
CN32
TEl
TE4
FL16
TE4
RS2
CN30
CN27
RS2
CN33
RCI
24-
TU
CN16
25
26
TV
MJ
CA
CNI
0
FL27
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
TV
TO
RJ
TP
QJ
TP
TO
RJ
TP
TV
TP
QJ
TO
RJ
TP
Variable (Build test for completion)
TM -Q~GL
TM CWo
Q~GL
Inc
Store
Is limit variable absolute value?
O~GL
No, so SP 0
SP
TM CWL A ~GL
Store
SS
SS
-
O~GL
CW
o ~GL
TM
var
A A ~GL
TJ
Q
1002~GL
Store
Store
Store
Advance to next indicator address
Back if all tests for completion not
generated
TM
1089
A ~GL
@
VC
@
@
@
@
L
FG
0
1
2
3
4
5
6
7
10
11
0
1
2
3
4
5
6
7
10
11
12
13
14
15
IA
TP
TP
RJ
TP
QT
TJ
TJ
MJ
TP
QJ
CA
VC
BK4
CN23
SA3
CN15
TEl
CN12
CN13
0
TEl
FG
VC12
(Increment Variable Control)
Set index to U of WITH words
CT
Set address of first variable indicator
CT2
To store group of CW's in TE
SA
Send CW of variable to A
Q
A
64000 > CW?
VelO
65000 > CW?
FD
No, so floating variable
FG
CW is 63---; determine if fixed or
Q
floating
FD
IA
TP
QJ
TP
TU
RJ
TP
TV
TP
QJ
TU
RJ
TP
TV
MJ
CA
FG
TE3
FG2
CN27
TE3
RS2
CN31
TEl
TE3
FG12
TE3
RS2
CN26
TEl
(Bui Id Floating increment variable instructions)
Increment CW ~ Q
Q
FG5
Absolute value?
GL
Yes
TM
Q ~GL
GL
TM CWo
Q
Inc
RS
Store
~GL
GL
FA Q
GL
CW
FA Q
var.
Q
Is increment absolute value?
FGII
CW ~GL
GL
No; so FA CWo
var.
Store
Inc
RS
GL
TP
Q -~GL
GL
CW
TP
Q
var~
To store
FD14
0
}
}
}
FG16
1090
@
FD
0
1
2
3
4
~
~
5
6
7
10
11
12
13
14
15
16
17
20
21
22
IA
TP
QJ
TP
TU
RJ
TP
TU
TP
QJ
TV
MJ
TV
RJ
RA
IJ
FD
TE3
FD2
CN27
TE3
RS2
FD15
TEl
TE3
FDII
CN27
0
TE3
RS2
CT2
CT
TP
TV
RJ
CN34
CT3
RS2
0
FD23
M.l
CA
(Bu i Id fixed increment variable instr5. and Jump Back)
Increment to Q
Q
Absolute value?
FD5
GL
YeS so TM
Q ~ GL
~
TM CWo
GL
GL
Inc Q
RS
Store
~
GL
GL
RA
~
RA CW
GL
GL
var
Q
Is increment abs. value?
FD13
~
RA CW
GL
GL
Yes
var Q
FD14
~ GL
CWo
GL
RA CW
No,
var
Inc.
RS
Store
CN5
Advance to next indicator
VC2
Back if all increment instructions not
generated
~ GL
MJ 0
GL
MJ 0
GL
01--- (Back to Jump to
RS
Store
Range)
VT
{VTO = FD22}
t
}
t
1091
®
®
i
@
@
@
@
®
@
VT 0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
IA
TP
TP
RJ
SP
ZJ
MJ
TV
TP
TP
TV
SP
RJ
TU
RJ
TP
TU
TV
RJ
TP
RJ
TP
RJ
TP
RJ
TP
TV
RJ
TP
RJ
TP
TV
RJ
TV
LQ
QJ
LQ
QJ
QJ
LQ
QJ
QJ
CA
VT
BK4
CN23
SA3
TE
VT5
0
CN36
CTI
CN26
RCI
CN3
CW
A
RS2
CN26
CN35
CN25
RS2
CN20
ST2
CN25
RS2
CN21
ST2
CN36
CN25
RS2
CN22
ST2
CN7
CT1
RS2
CTI
TE
VT45
Q
DJ
DL
Q
DJ4
DK
VT51
CT
CT2
SA
0
VSl
[VT6]
VT5
CT3
GL
GL
0
CWI
GL
RS
GL
GL
GL
RS
GL
ST
GL
RS
GL
ST
GL
GL
RS
GL
ST
GL
GL
RS
GCl
Q20
VT43
1
DJ2
VT46
Set index to ~ of WITH words
Set address of 1st indicator
Transfer 5 words to temporary
Is indicator zero?
}
}
Set ® to @)
(CTl) ~CT3. Save alarm print address
TP ~GL
TP 70000
Find CW for 79
10
TP
67... 70000~GL
Store
~GL
TP
TP 10000
TP 10000 50002
Store
10 0 3 ~GL
Store
TP 10001 50002 ~GL
Store
10 0 4 ~GL
Store
R..T 50002 ~GL
RJ 50002 50002 ~ GL
Store
10 2 o ~GL
Store
MS
o -~GL
MS
0 01000+ ...
Store
Change entry to jump into first test
1
VT50
DJ16
= 14 DJ2, indicator = 10
= 30
indicator = 22
indicator = 21. DJ16, indicator = 20
DJ, indicator
DL, indicator
DJ4,
DK12
t
1092
IA
RJ
MJ
RJ
MJ
TP
TU
RJ
TP
SP
SA
OJ
EM22
0
EN22
0
CN26
TE3
RS2
VA6
CTI
CNI
1')
.1. ...
TU
n
13
TV
CT3
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
RJ
MJ
TP
TP
SP
RJ
TU
RJ
TP
TU
SP
SA
TV
RJ
TP
TV
RJ
MJ
CA
RS2
0
TE3
OJ4
VA5
CN
CW
A
RS2
CN33
TE3
CN2
CTI
A
RS2
CN34
CT3
RS2
0
OJ37
IA
TP
TO
RJ
TP
SP
SA
TU
TV
OK
CN26
TE3
RS2
CN35
CTI
CNI
A
CT3
RJ
MJ
CA
RS2
0
OK12
@ Indic.=
@
@
@
OJ 0
1
14
Indic.= lO
2
3
Indic.= 22
4
5
6
7
10
11
Indic.= 20
@
@ Indic.=
21
OK 0
1
2
3
4
5
6
7
10
11
QJ
f\
Indicators: 10, 14, 20(part 1)
EM
Build and store test instI. for case 2
VS
EN
Build ...... store test instr. for case ,J.
VS
GL
TP
A ~GL
TP CWo
GL
A ~GL
RS
Store Inc
-~GL
ZJ GL
0
17
~GL
ZJ NI GL
GL
ZJ NI alarm ~GL
entry
RS
Store
VS
gJ20} Is increment absolute value?
~
QUU
GL
O~GL
SP
for zero
gWl} Find67 CW
••.
GL
SP CW zero 0 ~GL
RS
Store
TJ --~GL
GL
TJ CWo
GL
Inc -~GL
0
0
NI + 1 ~GL
TJ CWo
GL
Inc
RS
Store
-~GL
MJ
0
GL
alarm~GL
GL
MJ
0
entry
RS
Store
VS
GL
GL
RS
GL
°GL17
GL
RS
VS
-
A~ GL
TP
TP CWinc A~GL
Store
SJ--~GL
SJ NI-~GL
SJ NI alarm
entry
Store
1093
@
~
IA
TP
QJ
TP
MJ
TP
TO
RJ
TP
QJ
TP
SP
SA
TV
TP
QJ
SA
MJ
SA
TO
RJ
TP
SP
SA
TU
TV
RJ
RJ
TP
QJ
CA
OL
TE3
OL4
CN26
0
CN30
TE3
RS2
TE3
0I24
CN35
CTI
CNI
A
TE2
0121
CN4
0
CN5
A
RS2
VA6
CTI
CNI
A
CT3
RS2
EN22
TE3
VS
OL35
IA
TP
SP
TP
QJ
SA
OM
CN34
CTI
TE4
DM6
CN52
MJ
SA
0
OM7
6
CN4
0
7
TV
A
GL
10
11
12
RJ
RJ
MJ
CA
RS2
EM22
0
OM13
RS
EM
VS
Indic.= 30DL 0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
@
~
@
®
DM
0
I
2
3
4
5
(b variable, a and/or c variable Indicator = 30)
Q
Is increment absolute value?
OI2
GL
No, TP - - A ~ GL
OL5
Yes, TM - - A ~ GL
GL
GL
T(~)
CWo
A
Inc
RS
Store
Q
Is increment absolute value?
OLII
S J - - ~GL
GL
0
0
NI~GL
GL
SJ Q
Is initial value absolute value?
OL17
No, so add 4 to (A)
17
Dl22
Yes, so add 5 to (A)
17
NI~GL
SJ b
@
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
IA
TP
AT
\loJ
TP
MJ
TP
TU
RJ
TP
QJ
0
Q
EM2
GL
EM5
GL
GL
RS
Q
EM14
GL
GL
RS
GL
GL
1
Q
EM20
GL
RS
30000
}
Q
EN2
GL
EN5
GL
GL
RS
Q
EN14
GL
GL
RS
GL
GL
}
Q
EN20
GL
RS
30000
}
Is initial value absolute value?
J
TP
-A~GL
T~
--A~GL
TM CW init
Store
}
A~GL
Is limit absolute value?
Q ~ GL
TM CW I Q ~ GL
Store
Q ~GL
TJ
TJ
Q alarm ~ GL
entry
Is limit value absolute value?
No, so change u of TJ to CW of limi t
Store
Out
Yes, TM -
Is limit absolute value?
TP --A~GL
TM
--A~GL
T~ CW 1 A ~GL
}
Is initial value absolute value?
TM - - Q ~ GL
TM CW init Q~GL
Store
Q -~GL
TJ
TJ
Q alarm
entry
Is initial value absolute value?
No, so change u of TJ to initial value CW
1095
VS 0
1
2
IJ
3
4
5
6
7
TP
10
11
12
13
14
15
16
17
20
21
22
23
24
@
BP
o
1
2
3
4
5
6
7
Exit
IA
TP
RA
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
QJ
TP
RJ
RJ
TV
RP
TP
TP
TV
TU
TV
TP
TP
TP
QT
RJ
MJ
CA
IA
LQ
TU
TU
SP
S5
SA
TV
SA
SA
TV
TP
SP
SS
AT
SP
RJ
TU
SP
TU
RA
TP
RJ
MJ
CA
VS
CN34
CT2
CT
CT4
VS5
CN34
RS2
CV3
ST
30013
RC
CNI
CN7
CN36
RC
CN2
CN16
CN55
CN36
IS
0
VS25
BP
BK3
Q
Q
ST
CN24
PLI
A
PL
CN6
A
BKI
CTI
CNlO
PFl
BK6
LW
A
GC2
A
PF
CN57
OP
0
BP27
CT4
Set indicator when tests are generated
CN5
Advance to next indicator's address
VT2
Have all variables been checked?
} Yes, so have we put in tests?
Q
BP
GL
Yes, so MJ
0
1003 ~ GL
RS
Store
CV
Convert sentence U to Flex code
VS12
VS13 } Put in relative constants and Flex codes
30000
PF
Set word 1 of Op File I = 1
PFI
Set word 2 of Op File I = 148
PF4
Insert 50002 CW into 5th word of Op. File I
PL
Set V of 1st word of Prelude = 118
PLI
Set 2nd word of Prelude = 2
PL2
Build 3rd word of Prelude
Q
} 50002 call word ~Au
A
LSI
Insert call word in List I
BP
To build Prelude and Op File I {BPO = VS24}
Q17
PL
PF
Sentence CW to Prelude to Op File I
o
o
o
PLl
o
o
PL
PL5
o
o
PFI
o
LWI
PF2
17
PF3
CN4
OPI
OP2
VY
~
}
}
}
}
lines subject to address modification
1 to word 2 of Prelude
U
lines in Prelude + Rtne to 1st word
of Prelude
Store sentence number in word 6 of Prelude
~
words in running rtne. to 2nd word of
Op File I item
CW of last sentence to word 3 of Op File I
}
CW of Exit sentence to word 4 of Op File I
}
Add 4 to ~ lines in Op File I item
To write Op File I and generated routines
on tape
To Exi t
1096
r'U
vV
@
RS
CN6
r'."l:
1
2
3
4
5
6
7
IA
TP
TP
IJ
MJ
LA
LQ
QT
TJ
BKI
CT5
0
RC5
Q
CN51
CN52
Q
CV4
30000
6
6
A
CV15
10
55
CN52
0
11
12
13
14
15
16
17
SA
TV
RA
MJ
SA
AT
MJ
CA
CN32
A
RC5
0
CN52
RC5
0
CV20
0
CV13
30000
CV2
0
Re5
CV2
IA
RJ
RA
MJ
CA
RS
ST2
eTl
0
RS3
ST
CNl
[30000]
IA
TP
RA
MJ
CA
ST
GL
ST
0
ST3
[GC]
CNl
[30000]
IA
TU
RP
SA
CT2
SA2
30005 SA3
[30000] TE
0
[30000]
SA4
n
v
0
1
2
5T 0
1
2
SA 0
1
2
3
TP
MJ
CA
CV
v.L..,
Set index
Sentence "It ~ Q
Finished?
Yest so out
Next digit
3 > digit?
Nn
•• Vt
~A
<:n .....<:lIhtr::lt"t
-...,_ .... _....,-
...,.""
-~
Add Base Flex code address
Set address of Flex code
Add into Flex word
Add 3
Add into Flex word
Store generated coding
1097
IA
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
60
61
0
0
0
0
0
0
0
MS
0
0
0
0
0
0
0
10
10
10
10
0
0
TP
TP
TM
TM
FA
FS
TJ
MJ
SJ
RJ
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
62
40
CN
0
0
0
0
0
5
0
0
0
0
0
0
0
0
lO
0
0
0
2
BKII
VF2
10001
Q
Q
A
Q
A
Q
0
10000
50002
0
0
0
0
0
0
0
0
0
0
0
0
2
0
77777
0
PL
0
0
CN63
0
1
2
117
4
5
6
14
1000
63000
64000
65000
67000
77777
2011
1
3
4
0
BKII
GC
50002
A
Q
A
CE4
CN37
1002
1003
0
VT41
37
52
74
70
64
62
66
72
60
33
77
3
0
26000
0
42
PF
27000
07777
10
1098
63
64
65
66
54
01
47
30
51
54
66
22
CA
30656
30723
67656
31305
01240
73016
30502
77777
CN73
74730
46601
60154
40166
17024
53050
63001
77777
IA
0
0
45
04
06
0
47
30
20
20
57
CA
RC
20000
70000
47173
24200
16200
0
04053
06041
26140
04110
42454
RC13
11
70000
01225
60120
45700
0
02404
40622
61401
30315
50000
IA
0
CT
0
0
1
0
0
01000
2
0
0
0
3
0
0
0
4
0
0
0
5
0
0
0
CA
CT6
/..,
01
70
71
72
RC 0
1
2
3
4
5
6
7
10
11
12
CT 0
R E
~ E
M U
E F
U M E
X I T ~
S T /\ R
E R
~ T
A
A
0 ~ A D V A
R Y !:J. S E N
T E N C E ~
CR
~
N
S
t V A R Y
S E N T E
C E ~ ~
t ~ H A S ~
A N ~ I N D
E F I N I T
E 6- L 0 0 P
CR CR
~
Holds CW for Exit line; then Index for
~ WITH words
~ lines running routine + 1000 (exclude
10 lines)
Holds string-out address of next test
indicator
Address of instruction to jump to Range;
then, address of Alarm Print instruction
Indicator that test coding already
appears
Index for Sentence number conversion (not
stored on MD)
1099
TP WL3 A
Send resume C/W to A
Test type
of
C/W
"27!t type
RJ
LW LWI
line # is processed by
searching list IZ for
a (VARY) statement with
this line #.
Test for
1t26 type
C/W
1l
No
RJ
RESUME GENERATION
Flow Chart
"22ft. type
LW
LWI
line # is processed by
searching list IZ for
a (VARY) statement with
this line #.
..
ALARM
ND
...
-
No
Test for
"22" type
C/W
Test (VARY) No
.. ALARM
fill for C/W
NE
I---
...'
v
~
Build
PRELUDE
...
""-
Test with KI
for C/W within No
same sub. prog.
...
ALARM
Build
OP-FILE I
STOP
~
L_
~r
,
"-- EXIT
1100
RESUME GENERATION
REGIONS
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
NC2512
ND2651
NE2667
WI2242
LW1250
VF47l0l
GL5360
TF2706
OPl047
KI1336
UP42 1
BQ632
WA653
RESUME GENERATO R
o
1
2
3
4
~;anch {J
11
12
rli~
Test
for 22_15
116
U7
22
Branch
Test
Vary
File
for
CW
20
21
22
23
24
25
IA
MJ
TP
QT
SS
ZJ
TP
RJ
TP
QT
SS
ZJ
TP
RJ
TP
QT
SS
ZJ
TP
QT
QT
MJ
o
26
RS
27
30
RA
MJ
Q
TP
QT
,3J
32
33
NC
0
WL3
NC6l
NC62
NC13
WL4
LW
30000
Q
A
o
Send cW to Q from Resume String-Out
Mask i 14-9
Test for 27___ (subtract 27000 )
v
NC5
NC2l
Q
NC56
NCl07
NC120
Send line no. k (referring to Vary sent.)
Routine 0 finds CW for vary sent, in IZ
Save CW in NC66
Mask i14-9 (xxOOO)v
Test for 26
(subtract 26000 )
To prelude generation or error v
Send line no. k (referring to Vary sent.)
Routine D finds CW for Vary sent, in IZ
Save CW in NC66
Mask i 14-9 (xxOOO)v
Test for 22_ (subtract 22000)v
To test Vary file or error
Code word of Vary file (no. of words)
Mask "n" & store in Index ~ NC56
Mask "m" & save in NCl07
Jump to correction (1)
NellO
NCIll
NC130
0
o
Subtract 1 from Index
Add 2 to m
Jump to correction (2)
VF
NC60
Q
Changed to VFm + 2
Mask CW
Q
A
LWI
NC66
NC6l
NC63
NDI
NC4l
WL4
A
LW
Q
NC6l
NC64
NDI
VF
NC57
NC60
LWI
NC66
0
0
NC56
NCI07
0
A
o
A
o
o
A
1101
ll~~
37
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
110
III
112
113
114
115
116
117
EJ
RA
MJ
TP
MJ
RP
TP
LQ
NC66
NC32
0
NC66
0
30010
NC70
WL3
Q
WLI
NC66
30003
NClOO
GL
0
NCl14
OP
NC37
NCl06
NCl12
A
NCl03
NC43
GL
17
GL
GL5
GL7
NC5l
TF
TF
NC125
OPI
OP2
NC
0
0
77777
77000
27000
26000
22000
TU
TP
TV
RP
TP
TU
MJ
TP
RJ
MJ
0
0
0
0
0
0
0
0
0
40
0
0
0
0
0
0
MJ
MJ
0
0
0
TP
RJ
MJ
0
0
0
0
IJ
MJ
0
0
0
0
2
0
NC67
KI
0
2
0
0
0
NC56
0
GL
0
0
0
Q
KII
NC41
0
0
1
2
NC32
NE1
TF
0
0
0
0
0
7777
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
}
}
Test with CW in NC66 for equality
Increment VFm + 2 by 2
Jump to correction (3)
Vary CW in A
Jump to correction (4)
Generate Prelude Format
Move CW of Resume to '"ul! portion
(0, CW, O)Q~(O, 0, O)gl
Line no.
CW
Generate Op File I format
CW Resume
Jump to correction ( 5)
(0 GL TF)
Index
0
0
L(Vary CW)
0
10
2
0
0
CW Resume in u
Prelude format
0
0
Line number
30000
0
3
}
}
}
CW Vary in v
CW Resume in u
Op File I format
CW Vary in u
Send parameter to Q
(4)
( 3)
Parameter for Op rout ine
0
0
1102
120
121
122
123
124
125
126
127
130
131
132
TP
LT
RS
LT
MJ
TP
LT
MJ
LT
RA
MJ
A
NC56
NCI07
NC56
43
0
NC26
NC66 A
10017 TF2
NC134
0
NC133
63
NC32
NC133
NC32
0
1')')
vn
n
134
135
136
TP
MJ
TP
CA
NC136 NC32
NC53
0
VF
Q
NC137
~
•.hJ
NC56
25
NC56
V
n
V
1
J
}
1
n~A
Shift n to AO
(1)
n-m~NC56 = Index
Index shiited right 1 or NC56/2
Move CW of Vary sent. to u address,
jump to correction (6)
(5)
Shift to u position
(2) Add to (VF). i. e .• VFm + 2
.J
}
Preset NC32
(6)
Presetter for NC32
ERROR ROUTINE
0
1
2
3
4
5
6
7
10
11
12
13
14
15
IA
MJ
RJ
TP
RJ
MJ
66
34
54
50
01
54
24
66
40
CA
ND
0
WA
N015
UP2
0
33305
65015
30313
26300
24011
73430
66304
22777
ND5
N016
BQ6
WAI
UP3
UP
NO
43001
05101
05430
16651
77024
16566
73050
77777
10
THERE~
ISe.NO~
REFERE
NCE~TO
~A~(VA
RY)~ST
ATEMEN
T.
ERROR ROUTINE
0
1
2
3
4
5
6
7
10
11
12
IA
MJ
RJ
TP
RJ
MJ
65
30
31
30
51
65
NE
0
WA
NE16
UP2
0
66246
50660
30543
65012
50023
66305
BQ6
WAI
UP3
UP
NE
63047
15430
05026
40150
07234
06601
STATEM
ENT~RE
FERENC
ESAA6N
ON-EX I
STENTll
1103
13
14
15
16
17
01
50
40
CA
70245
65305
26302
NE5
NE17
47343
06630
27777
11
(VARY)
~SENTE
NCE.
1104
~
Generate standard prelude and MJ
0
30000
MJ 0 CW of subprogram heading
-...
Generate
Op File I
item
-
Prelude + generated
coding and Op File I
to tape and storage
EXIT GENERATOR
RE
RE
RE
RE
RE
PX2512
PL5360
FI.2546
OPl047
WL2242
IA
0 MJ
1 RP
2 TP
3 SP
4 TU
5 TP
6 TV
PX
0
30010
PX20
WL3
A
WLI
WL4
RP
TP
SP
TU
SF
TU
TP
RJ
MJ
0
0
0
0
0
0
MJ
MJ
0
0
0
0
CA
30003
PX30
WL3
A
WL4
A
PX33
OP
0
0
0
0
0
0
0
0
0
0
0
[0]
PL
PX34
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
30000
PX3
PL
17
PL
PL5
PL7
PXll
FL
17
FL
17
FL2
OPI
OP2
PX
10
2
0
0
0
0
30000
30000
3
2
0
FL
}
}
}
}
}
}
Generate Prelude Format
Sentence call word to prelude
Standard line no.
CW Sub-routine heading ~2nd line of
coding for sentence
Generate Op File I Format
Sentence call word to Ope File I
CW
subroutine heading to Op File I
Prelude + Generated Coding and Op Fi Ie I
to tape and storage
Exit
Prelude Format
}
Object Program Coding
}
Op File I Format
CW of Subroutine heading
Parameters
1106
Type Generator
Then multivalued data
NO
C (A )
NO
C(A )< 65000?
R
IE---I
Form parameters
for TR
TR3 O;C(UK)+UL;O
TR4 40;C(WK)+1;O
R
Box 1
C(WK) -?- Box 1
Type Generator - Cont.
(WK)<=(WK)+2
SP [
J0
Then :~
call-l~
~=.?
YES
C(A)
C(A) ==
C(A) == )?
(?
YES
(PC)*<:PC)+2
G=O?
.....
.....
o
i.e. merely
print out
input representation
o
-..0
o
I ncrea se (TR4 "v
by 1 (i.e. one
IE:--...L.-........ more word for
translation)
lt
)
~<67000?
YES
'ICn-~TEMP 3 FO ~~ < 64000?
YES
Type Generator - Cont.
Form C (MK) + ML,
Send to Box 2
(i.e. address for
PT parameter in
ML)
Form
o C(UK)+36000
C(TEMP 4) ( i • e. t
PT parameter)
Box 2
Form 0 C(MK)+3500
"PT" in AR (data
for S.G.)
(UK)+ (UK )+Temp 4
(MK)~ (MK)+I
Increase contents
of store referenced
in Box 2 by I, to
allow for" 1\ = 1\ "
Form
o C(TEMP 2)
C(TEMP 3) in
AR
Form
C(UK) + UL t
Send to Box 3
Box 3
TP a
[?]
where C( a )=
1\ = 1\ i n flex i e
(UK)+ (UK)+I
Type Generator - Cont.
"IC"
e-1CCTEMP
I)~~
~_A"V"
I
"u"
.....
.....
.....
.....
Form
determine last
subscript callword
Form
5P(last C/W) 0
IN AR
(TEMP ')'-" AR
Form & store
(5-2 ) in
TEMP 3
Type Generator - Cont.
Search dimension
list for this
item
Q "v" (# subs)
=
I?
~A
R
(=s)
2nd line of
dimension box
--.-,. Q
(Q)
(mod.,
~TEMP
4
#
subs)
Output is
C/W OF 1 multiplier in A "u"
Box 4
Add in to "A"v"
C/W of "rth"
subscript (from
SL list)
Initialize
Set r = 1
in Box 4
to start at 3rd
line of dimension
box
Add in
MA - - - -
to AR
(Temp 3) <=
(Temp 3) -1
Q "v"
R ~~LQ (TEMP 4) 25
(i.e. modulus)
~~
Form
TJ C/W(modulus)
(OK)+2 in AR
~
r + 1
Form
DV C/W(mod)
Form
+35000
Type Generator - Cont.
r
SA
Q
C (MK)
17 in AR
~_ _ _---'
Form
TU A C(OK)+i
in AR
"CV"
~
Form
C(MK)+ML
(address for 77__ _
C/W),send to
Box 5
AR ltv"
Box 5
TP TEMP 1 [?]
(store 77 ___ C/W
in mod const. list)
(MK)
<.= (MK)+l
......
......
w
......
~
N2
·
C(OK)
Store
MJ 01000
o 37000 37000
to A
C (BK3)~OP Fi Ie
item line 1 "u".
:tt: lines i tern ~line
1
"v"
2
(36000 value reI,
to 1000)
C(TEMP 3) -777 =
running lines
Op file item
(line 2)
C(OK) + C(MK) + C(UK)
--~)
TEMP 3
(37000 value reI. to
1000)
in ML
R
C(OK)+C(MK)~TEMP
TEMP 1
(35000 Add.
reI. 1000)
---7
:tt:
Type Generator - Cont.
C(GK) - GL6~ TEMP 4
C(TEMP 4)+C(MK)~GLl
(# lines for add.
mod.)
C(BK3) -+ GL
Set
C(MK)-l
~TEMP
4
C (UK) --+ GL2
to
Initialize
process
1 i st
Transfer UL list to
GL; last address in GL
referenced by EX as
initial start
C(GLl)+C (GL2)
+6 -+ GL ltv"
('# lines of gen
coding)
to
store processed
words at GL6
Parameter describing GL c.
FL~<@>
Type Generator - Cont.
l---+
STOP
o~
line
GL3,GL4
'# ~GL5
Initialize
to
start address processing at loc.
GL6
TYPE GENERATOR
REGIONS
Generation
Subroutines
RE
RE
RE
RE
RE
RE
l RE
RE
Library List Routine
CS CW Constant Call Word Routine
Machine Error Routine
Excess Three Print-Out Routine
Loads Generators and Op Files on Tape
Rout ine to Print: Sentence - (Type)
Rtne.to rewind aii tapes & stop computer
TR ;: VX Exces s Three to Flex Code
Routine
Dimension List
String-Out Buffer Input
Buffer Output Region for Generated Rtne.
LSl465
CSl211
BR537
UP42 I
OPI047
WA653
=
80632
TRl670
RE
RE
RE
DL40102
BK2242
GL5360
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
TY2512
IN2513
TG2530
MV2672
PR2760
MX3030
EX3044
SG3076
RL3137
ST3143
CK3147
FU3165
SB3173
CN3176
PC3272
OK3273
GK3274
UK3275
MK3276
WK3277
TM3300
SL3306
VE3312
FL3320
ML3730
UL4340
Generator proper
Working Space
(;
Region used to build up Op File
1115
Type Generator
IA
MJ
CA
TY
0
TYI
Exit
30000
Initialization
o
IA
TV
1 RP
2 TV
3
TV
TP
5 TP
6 TP
7 TP
4
10
11
12
13
14
TP
TP
TU
SP
RJ
CA
IN
TG14l
10003
SG36
CN73
CN
CN
CNI
CN3l
CN70
CN
CN73
CN56
RL3
IN15
TG13l
IN3
SGlO
FU5
PC
UK
MK
OK
GK
WK
WK
o
RL
}
®~®
Initialize sub-generator
Initialize Op File routine to FL2
Clear PC
UK~O
MK~l
OK~
1000
GK~GIh
}
WK~BK4
}
MJ 0 37002
Generated
Main Routine
IA
TP
1 TP
2 TV
3 SP
4 RJ
5 SP
6 SA
7 RJ
o
10
11
12
13
14
15
16
17
SP
RJ
SA
RJ
SP
AT
SP
AT
20 TU
21 RA
22 SP
23 [0
TG
TG132 TG23
TG133 TG126
CN67 SB
CN4
o
CS
CSI
CN57 o
o
Q
RL3
RL
CN5
o
CS
CSI
CN47
RL3
CN4l
WK
UK
CN63
WK
WK
[30000J
30000
o
RL
o
TR4
17
TR3
TG22
CN45
0
30000]
ffi=:~
Initialize subscript storing routine
458~AR
}
Place in constant pool
PR 0 L (carriage return flex) formed
and put in output
}
79 ~A
Find CW
TP L(79)
output
40
}
1
0
37000 formed and put in
~
A
Start to form entry line for TR
and inform TR of location for output
r
~BOX
r +2
I
~r
Examine rth word
Fl == TP A TM; F2 == MJ 0 TG36
1116
24 TJ
25 TP
26 RJ
CN23 TG30
TG134 TG126
FU4
FU
27
MJ
o
TG34
30
TJ
TU
CN17
CN71
TG33
31
32
33
34
35
36
37
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
< 77000?
No - i.e., 77--- type variable.
Insert in Op File item
Jump to
®
< 6500Q?
No - i.e~ 65,66 -- so"CV" wanted ®~@
Jump to ®
Must be 64---i. e., "IC·' wanted ®~~])
RP
EJ
CA
TGl27
TG34
o
CN72 TG127
TG135 TG23
TG55
o
30004 TG53 1
CN25 TG40 J
TG40
IA
TG40
MJ
TG47
TG45
PC
CN2
PC
CNI
TG55
o
TG136 TG131
TG51
o
o
PC
~
Jump to test PC
~0 Jump to set
( PC+2~PC
) PC - 1 ~ PC
Jump to ®
TG55 TG5l
TG137 TG1l1
TG71
o
TM1
A
CN2l
TG57
TR4
CNI
o
TG20
CN20 TG62
If zer~ continue; non-zero, jump to
MJ
TU
TP
MJ
MJ
RA
RS
MJ
TV
MJ
SP
ZJ
TP
MJ
TP
TJ
RA
MJ
TJ
RJ
MJ
TJ
TP
o
o
SB2
o
CN17
CN14
S8
TG55
TG65
TM2
TG70
TG55
TM2
MJ
o
TJ
TP
RJ
CNl6
CN15
SB2
TP
RJ
TP
QT
SP
SA
TV
SP
CA
TGl40 TG1l1
TR2
TR
CN24 Q
S8
TR3
TM3
MK
CN65
o
A
UK
o
TG101
(T
®~~2)
®
Jump to
Test for, 60 ( ) or none
,
CBD
CBD~~
Jump to set
0
0~~
®
®
Jump to
Not any of above t • • • CW.
Save in TEMP 2
C(A) < 70000?
No,.·. a dummy variable-count 1 more word
for TR and jump to ©
C(A) < 67oo0?
No - a numerical subscript - so note
and jump to ®
C(A) < 65000?
No; a float ing variable, so "CV" ~ TEMP 3
and jump to ®
C(A) < 64oo0? If so DUMMY
No - so subscript, so "IC" ~ TEMP 3
Store in subscript list
0~®.
Go translate
Vmask~Q
Save n (number flex words) in TEMP 4
Current number modifiable constants
Plus ML, is address at which to store
Parameter about to be formed
C(UK)
TGlOO
1117
IA
SA
AT
SP
SA
SA
RJ
106 RA
107 RA
100
101
102
103
104
105
110
III
112
113
114
115
116
117
120
121
122
123
124
125
126
127
130
131
132
133
134
135
136
137
RJ
[0
SA
RJ
MJ
SP
TU
RA
SP
SA
TV
TP
RA
RJ
[0
SA
RJ
MJ
TP
SP
MJ
MJ
0
MJ
140 SP
141
o
1
2
3
4
5
6
7
TGlOO
CNll
TM3
MK
CNI0
CN13
SG34
UK
MK
o
C(MK)
+ 35000 = CW for parameter location
And PT is routine used
Subgen to produce coding
UK + C (TEMP 4) - 4 UK
17
o
SG
TM3
CNI
SG34
o
A
TM
o
o
o
o
TM1
o
CA
TG142
IA
RS
LA
TU
SP
SA
RJ
SP
TU
MV
SB
TM
17
MV
TG36
PR
TG115
TM
6
o
--;>
=
=
Jl
SP TM1 17; J 2 MJ 0 TGl15
Form ncw required"
'"IC or CV"
Subgenerator
Jump to ®
Increase last parameter by 1 to allow
for "t 1\ = 1\ l'
Store "tl\=/\" in UL
UK
+
Ll
Ml
=SaddP TMin "IC
17; L2 = MJ 0 MV
i M2 =$ add in 1tCV""
1
~UK
~
2
N
J2
Constants
2
J
l
Nl (i.e.
}
t
A)
Obtain last stored subscript CW
Add in SP _ _
Find appropriate dimension box
MVIO
20000 BRI
DL
MVl2
Q
17
MK
J;2
17
TG
CNI
17
MV3
[30000J 17
CN52
o
RL
RL3
1
Subgenerator
Either back t or out to processor
Fl
Ll
SG
[30000]
A
A
+
MK
CK
CK3
30000 3OO00J
TM2
o
SG34
SG
TG14
o
TGIOI
17
}
TG117
A
[30000] CNI
UK
CN64
o
}
TG123
A
CN42 [30000]
UK
CNI
CK
CK3
30000 30000]
[30000] o
0
10 RP
11 EJ
12 SN
+ 36000 = "u" of parameter
17
[ 30000]
- jn
1118
+r
13
14
15
16
17
SA
SA
TU
TP
TP
20
21
22
23
24
QT
EJ
ST
TU
RA
25
TU
MVI0
MVl1
o
o
A
MV16
A
+1:
subs
MV35
TM2
MV30
CN33
= I?
CN24
CNl
CN2
CN67
MV16
A
MX
MX12
MXll
MXl
30 SA
31 SA
32 RJ
33 RA
34 IJ
35 LQ
36 QT
37 RJ
CA
[30000]
o
o
IA
SA
SA
RJ
SP
SA
RJ
SP
SA
MV40
CN55
OK
RL3
50
51
52
53
54
55
56
57
SA
RJ
SP
SA
RJ
SP
RJ
SP
CN53
RL3
CN51
OK
RL3
CN14
60
61
62
63
64
SA
TV
TP
RA
RJ
CA
Q
CN61
RL3
MK
CNIO
SG34
RL
CN33
MV27
25
A
No, form &store S-2
Prepare to extract OW in order
Form address of 3rd line of dim. box
and initialize m-extractor
Upon return, CW for 1 mult in A "u"
Add in CW of 1 subscript
and MA _ _
Store
Prepare to pick up next subscript, then
back
Modulus ~ Q 'tv"
A
~A
Place in constant pool
o
TJ L(Mod) 2
TJ L(Mod) C (OK) + 2
Store
CW (Mod) ~A "u"
DV Mod Q
Store
Form 35---type pseudo CW of base 77--in A "u"
o
RL
17
o
RL
o
17
}
o
RL
o
o
RL
o
SG
CN65
o
o
}
~
CSI
o
MK
CK3
}
MX
MK
A
TM
Q
subs, modu Ius ~ TEMP 4
TM3
40
41
42
43
44
45
46
47
~
"#
Q
26 TV
27 RJ
65 MJ
2nd line
[30000] Q
CN60
RL3
MV30
TM2
TM3
CN24
CS
MV40
of 2nd line of box
~Address
MV62
[30000J
CNI
CK
TG13 1
}
~SA
L(CW) 17
Store
TU A 1
TU A "N. I •••
Store
And "CV" is routine used
Subgenerator
C(MK) + ML is address in mod. list for
77---CW
Store base r.W
MK+l~MK
Check length
Jump back to
MV66
1119
®
(Main Routine)
Sub-Processor
IA
o SP
1
RJ
2 TP
3 SP
4 TP
5
6
AT
AT
7 ST
10 SP
11 TP
12 SA
13 ST
14 SP
15 ST
16 AT
17 TP
PR
CN6
RL3
CN34
OK
A
MK
UK
CN7
BK3
A
FU5
CN66
GK
CN70
MK
UK
o
RL
ML
MJ 0 1000
Stored
Set up index address line
TM
TMI
TM2
FLI
35000 (i.e., ML) Val. reI. 1000
36000 (i.e., UL) val. reI. 1000
37000 (i.e., temp) val. reI. 1000
Total ~ lines in running prog.(incl.temps)
17
GL
CW this routine
CW this routine to u of output line
CW and number of lines complete Op File I
item
C(GK) - GL6 = # lines for modification by
this routine
o
o
}
o
}
FL
TM3
GLI
GL2
Complete prelude
20
21
22
23
24
25
26
27
TP
TP
TP
RS
SP
TU
TV
RJ
30 TU
31 SP
32 ST
33
RJ
34
35
36
37
TV
SP
40
41
42
43
AT
[0
TP
SP
SA
SA
CN
CN
BKI
TM3
CN70
A
CN70
EX13
CN65
MK
CNI
EX13
EX7
UK
CN62
30000
UL
GLI
GL2
CN3
TV
45 TP
46 RJ
47 MJ
CN43
OP
CA
PR50
44
A
o
GL3
GL4
GL5
CNI
17
EX
EX7
Set up index for GL mod.
Extract words from GL6
Store words at GL6
Exchange 35, 36, 37*s in GL
EX
EX
o
TM3
EX
PR40
17
PR37
30000]
}
Set in address in GL for UL consts.
Form RP order
Repeated transfer from UL
[30000 ]
o
o
o
GL
OPI
OP2
TY
Now process mod. consts.
}
Total
~
output lines
Parameter
Output
EXIT
1120
~OP
~
GL
Subroutine to Extract Multipliers and Obtain Appropriate CW's
Til
J.A
o
TP
1
MJ
2 TV
3 MJ
4 LQ
RA
TV
7 QT
5
6
10 RJ
11
MJ
12 0
13 0
CA
lIJrV
lV1A
[300001 0
-0
- [30000]
MX13 MXl
o
MX7
Q
25
MX
CN33
MX12
MX1
rl\T~A
vn,,"':t
CS
o
o
o
A
CSI
[30000]
MX2
MX4
1 line ~Q
Switch (initially MX2)
FLIP
Reverse u u" and "v"
Modify entry for next application
FIDP
Extract n
Place in constant pool
Exit
MX14
Replacing 35---, 36---, 37--- Addresses with Values Relative 1000
o
IA
TP
1 QT
2 EJ
3
RJ
4
LQ
5
6
RJ
LQ
7 TP
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
EX
[30000] Q
CN44
CN35
EX31
Q
EX31
Q
Q
A
EX7
EX14
25
EX14
17
[30000]
TP
QT
RP
EJ
CN33
CNI
EX
o
[30000J
TM4
Q
TM5
CN23
30003 EX31
CNIO
EX20
MJ
MJ
o
o
RA
TM4
RA
RA
IJ
MJ
line to Q
Inspect nOp. code"
If a 10 line, O.K.
Process "v"
Shift "u"~"v"
Process "u'"
Restore Q
And output it in GL
1
EX
EX7
TM3
Back for next line
EXIT
Save Q
Mask off 1st two digits
MJ
o
EX26
EX24
TM2
EX27
TMI
EX27
RA
TM4
TM
SS
TM5
35 Add in val. (35)
Subtract original 1st two digits
Q .
S_eJ:. res.ul t back in Q
Exit back to main level
MJ
RA
30 TP
31 MJ
CA
o
TM4
A
o
o
[30000 ]
35
36
37
Add in val (37)
36 Add in val (36)
EX 32
1121
Subgenerator t to Produce Coding Handling Parameters
o
IA
SG
TP
A
1 SA
2 RJ
3 SP
4 RJ
5 QT
6
7
EJ
EJ
10 RJ
11 RJ
12 RJ
13 RJ
14 SP
15 RJ
16 RS
17 TV
20
21
22
23
24
25
26
27
TV
SP
SA
RJ
SP
RJ
SP
SA
CN46
RL3
CN36
ST3
CN24
CN14
CN15
SG40
SG40
SG40
FU4
SG37
LS
SG40
A
SG35
SG37
CN50
RL3
CN37
ST3
SG37
SG37
30 SA
31 RJ
32 SP
33 RJ
34 MJ
35 0
36 0
37 0
40 0
CA
CN54
RL3
CN40
ST3
IA
RJ
1 RA
2 RJ
RL
ST3
OK
CK3
3
MJ
0
CA
RL4
o
Q
o
RL
o
ST
SG37
SG11
SG12
[30000]
[30000]
[30000]
FU
17
LSI
CNl
SG20
"un & ttv" ~Q for PT, IC, CV
Add in TP _ _
Store
10 0 3
Store
Name of routine (1tvtt) to temp.
Is it CV?
Is it IC?
~~} Used
before?
{Initialized to SG13
No, insert in Op File 1, List I, then
ensure this path not taken again
Find address to be changed
[30000]
o
o
RL
o
Name to A ttv"
Add in TP 35000
Store
10
0
4
ST
17
Store
o
Add in RJ _ _
Store
o
RL
o
ST
o
[30000]
o
SG26
o
SG13
30000 30000 }
30000 30000
SG4l
ST
CNl
CK1
[300ooJ
10
2
0
EXIT
Erasable.
Store
Increment OK
Check size of routine
Exit
1122
IA
0 TV
1 TP
2 RA
3 MJ
CA
ST
GK
A
GK
0
STI
[ 30000]
CNI
[ 30000J
SIT'lq
Store
Increment GK
Exit
A
Error Print-Out Routine
IA
0 SP
1 SA
2 SA
3 TJ
4 RJ
5 TP
6 RJ
7 MJ
10 40
11 32
12 66
13 50
14 01
15 51
CA
CK
OK
MK
UK
CN32
WA
CKI0
UP2
0
CKll
30503
30270
66305
66515
50322
CK16
0
0
0
[ 30000]
WAI
UP3
UP
BQ6
5
05424
16530
02630
10146
27777
1
Sum 3 counters
J
}
Print-Out: Sentence _(Type)
Print-Out: Generated Sentence Too Long
Jump to rewind tapes and computer stop
Parameter for print-out routine
GENERA
TED6SE
NTENCE
~TOO~L
ONG.
Updating Op File 1 Item
0
1
2
3
4
5
IA
LA
TV
TP
RA
MJ
0
CA
FU
A
FU5
A
FU5
0
0
FU6
17
FU2
[30000J
CNI
[30000J
[30000]
Shift CW to "u" field
Where?
Store in item
Increment counter
Exit
Counter
Storing SS in Subscript List (SL)
IA
0 TP
1 RA
2 MJ
CA
SB
A
SB
0
SB3
30000
CNI
30000
Store subscript CW
Increment " V" address
and exit
Constants
IA
0 0
1 0
CN
0
0
1
2
(}
0
3 0
4 0
0
2
6
0
45
0
1123
5 0
6 MJ
7 0
0
0
0
117
1000
777
36000
37000
50002
50062
50112
64000
65000
10
11
12
13
14
15
16
17
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
20
21
22
23
24
25
26
27
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
35000 }
67000
70000
76000
77000
77777
40
120
0
30 0
31 0
32 0
33 0
34 0
35 10
36 10
37 10
CA
0
2
0
1000
0
1776
1
0
37000 37000
0
0
3
0
0
4
CN40
IA
40 10
41 40
42 57
43 0
44 77
45 0
46 TP
47 TP
CN40
2
1
04440
GL
0
2
0
0
50
51
52
53
54
55
56
57
TP
TU
SP
SA
HJ
TJ
MJ
PH
Pseudo-address codes
PT }
CV
IC
Library call words
v-mask
:Q~ }
Various string-out symbols
Check on length of gen. coding
0
0
40000
FL
0
0
0
37000
35000 0
32000 1
0
0
0
17
0
0
0
2
0
37002
0
0
1124
60
61
62
63
64
65
66
67
MA
DV
RP
0
0
0
0
0
73
0
31000
PR41
0
UL
ML
FL
SL
ML
0
SL
0
CN14
GL6
0
n.
"II.T, ,..
\'A~ 1;)
V
0
BK4
CN74
70 0
71 0
..,.'"
,'-
0
0
30000
UL
V
CA
0
n.
FL2
1125
OK ~14l0
TK~
START
3
MK-+O
Set up VK
Start to scan at BK7
Start to store subs at
SL
Start to store Mts at
Prepare Op
File 1 item
and prelude
so far as
possible
Inspect rth
word of
stringout
~
770OQ?
No
MM
r.....
en
c-+
Scan dimension
list for this entry
Store thi s C/W
in Op File I item
Extract 2nd line
of dim. box~
note # subscripts in ER
= I?
Build SL list
(# subscripts of
vbl's in
stringout)
Extract 1
multiplier
from dimension list
_
Place it in
....
... the constant
pool
,...,
Bui Id MM Ii st
(C/Wts of muItipliers & moduli
in constant
pool)
... 5-1 mul tipliers?
-'"
Yes
d)0
\~
~-.;..t
Find modulus,
place in con st.
pool, note C/W
in MM list
0-f+
2_
OK
~~r+5~r
TK+l~TK
~,--O_K_+_>6_0K_+_5
H
__
VK -
l~VK
MK
+1
VK
~3-B
= O?
yet?
So 2-4
columns
variables in
sentence
#
=
#
Vbles
= I?
Yes
No
vbles
(columns)
#
Main increment
after one application of this
routine is
20 10 (1 bkt.)
20 ---;.. NC
RA
#
Vbles = S?
J-N_0---l~
OK+1
~ OK
Yes
Then increment
after buffer
emptying is
2(S-V) --+ NCI
4 ---+ NC
~
____________________________,__
~O~NCI
,
0{
OK+MK+TK
= U lines for
modification
OK~lOOO
OK + TK + GL6
= add. ret. GL
for mod. consts.
OK + MK + 1000
= add. reI.
1000 for XS3
words
Prepare to store
gen. coding at
GL6; Start to 1---.::..1 Generate
scan at BK7.
J 0 Exit
Start to scan SL
list from SL
Start to scan MM
list from !VIM
OK + 1000
= add •. reI.
1000 for mod.
consts.
I----~
Complete prelude, up date
list I
~----------~
0.....
.....
w
o
~
Place current
line "# in const.
pool (to be used
as identifying
symbol)
Generate
"10 3 2"
(to cause buffer
emptying as
required)
Gen.
"TP L(XS3) BF"
~
Generate
--.. "TP
LN A"
.~ "i~niN
rG
FLN "
~
Generate
"EJ FLN lOll"
Gen.
. "TP TN FTN "
"-
.
-'"
Generate
"RJ IW IWn
t--
Gen.
"RP 3 n 1010"
where n = "# of
heading words
I---
Form X =
#. heads. + 2010
J--~ + C (NC1), & place
in const. pool
Examine rth
word of
stringout
Fetch (r+s)th
word, which is
last subscript
quoted. (~A"u")
~
Generate
"RA BI L(x)1t
77000?
Yes
Generate
t---~ "TV BI IW"
Box 1
Store this C/W as
a mod. const. for
running prog.
Generate
"10 0 121"
S--D_--]
~~
Look-up #. subscript s in SL
list (formed
during pass 1)
Obtain contents
of (r+p)th word
(Po=O) which
I--~
should be 1st
subscript quoted
Generate
"SP ? 0"
No
AUu"
Obtain one entry
from MM list
which is multiplier for this
subscript
Anv
Obtain one entry
from MM list.
Gen. "TJ mod a+,,-)
J---.::aIwhich is modulusJ---::W
where a is locafor this vble.
tion of this order
(-+ Altu")
"MA '"
n
(for 1 subscr iplt
lt
II
processed?
Thus. gen.
Gen.
ItDV mod
Q"
Gen.
"SA
N
Gen.
f3 17" where
. f3 = add.
I
reI.
1000, of const.
as in Box 1
...
"TO A a +1", where
a = current loc.
reI. 1000
~
r + s
~
r
... Clear AI ER
l~ER
(i.e. assume
fix. pt.)
~~
C/W ~
Yes
65000?
Clear ER, as 1 - - - : : . 1
floating pt.
LA
A
17
No
Add to A
"TP 0 A" and
store in gen list
Yes
Gen
"RJ IW IW"
Gen
" 10-3 -C (ER )"
1----.::..1
r
+
1~ r
~-.::.IVK-1~VK
f;\
_(,~:n BI G(NG)" I--~ It~~n
L(BF165)
~
1000" (test
Gen
"RJ IW IW"
Gen
"10 - 3 - 2"
C (NCl)
for full buffer)
Gen
I---~ "RA BI C (NC 1 )
STOP
Gen
"MJ 0 1000"
-1
Transfer heads to
~
locations fOllowingParam.~ QP
mod. constants
.
_
LIST GENERATOR
REGIONS
Generation
Subroutines
RE
RE
RE
LS1465
CS12ll
BR537
OPlO47
RE
RW50023
RE
RE
RE
DL40102
BK2242
GL5360
RE
WW12
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
LI2512
IN2513
PA2532
PB2632
PC2666
RL3ll3
ST3ll6
OR3l2l
CN3l36
0K3l73
TK3l74
MK3l75
VK3l76
NC3l77
ER3201
TC3204
SL3205
MM32 12
FL3236
fE
Library List Routine
CS = CW Constant Call Word Routine
Machine Error Routine
Routine to Transfer Generated Routine and Op File
to Tape
List of call words of tape numbers referenced for
use of STOP instruction
Dimension List
Buffer input region for string-out
Buffer output region for generated routine
Fixed location where READ and LIST indicators are
stored
Generator proper
Used to store Op File for LIST
NL71002 }
7 in these addresses is
TN7l003 Fixed output locations }
a code figure to keep
BI7l004
processor from modifying
BF7l005
LIST Buffer location
addresses
1136
IA
LI
MJ
0
CA
LII
30000
Exit
Preliminary Initialization
IA
TP
TP
TP
TP
IN
CN7
CN3
CN
BK5
4
TTl
CN24
5
6
TV
TV
7
SP
TP
TP
CN25
CN26
BK3
o
1
2
3
10
11
12
13
14
15
16
.1.U
A
AT
CN27
CN24
CN3
TP
TP
TP
CA
CN
CN
BKI
IN17
TV
OK
TK
MK
1410 running lines at least
3 tllO lines"
o modifiable constants
Set up variable counter
Start scanning string-out at BK7
Build subscript List from SL
Build mult. & mod. List from MM
VK
PA
PA15
PA34
17
GL
FL2
PA5
FL
}
GL3
GL4
GL5
Routine CW to Prelude
Note CW of IW routine
Future cross-refs. to be stored at FL3
Call word and at least no. 3 of lines to
1st line of Op File
o inputs
o outputs
Line number to Prelude
"LIST" Generator - First Pass
o
1
2
3
4
5
6
7
IA
SP
TJ
TU
RP
EJ
LT
RA
SN
PA
[30000]
CN14
6
[30000]
DL
10017
FL
SA
SA
TU
TP
PA3
PA4
A
[30000]
CN20
A
CNI
CN2
10
II
12
13
14
15
16
17
TP
EJ
ST
20
21
22
23
24
25
TO
RA
TU
TP
TP
[0
QT
Q
PA13
PA13
A
PA76
0
PA55
PA3
BRI
PA5
[30000] }
CNI
17
0
0
PA13
Inspect rth word of string-out
Multivalued?
Yes t scan Dimension List
Build Op File 1 item
-jn
+r
+r
+DL =)add. of 2nd line (modulus; S)
Q
ER
[30000]
PA40
ERI
Using v-mask t note ~ subscripts (s)
Build subscript list
Is s = I?
NOt form & store (S-2)
PA37
CN15
PA24
PA25
Note address of 2nd line
Form address of 3rd line
[300()0] Q
30000 30000]
flip-flop oflll-ext.ractor
1 line of dim. box ~ Q
CD TP ® PA25; @ MJ 0 PA27
S~t
1137
26
27
MJ
30
31
32
33
34
35
36
37
RA
TP
QT
RJ
TP
RA
IJ
TP
CA
40
41
42
43
44
45
46
47
LQ
LQ
IA
50
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
QT
RJ
TV
0
Q
Jump to extract v-field
Q "u" ~ Q n v"
PA32
25
PA24
CN15
PA76
PA25
CN20 A
CS
CSI
A
[30000]
PA34
CNI
ERI
PA24
[30000] Q
PA40
PA40
Q
CN20
CS
PA34
Modify for next line
Reset flip-flop to CD
Extract v field
Insert in constant pool, and find CW
Build MM list (A "un)
Back for more multipliers
2nd line again to Q
Shift modulus to nv" and extract it
25
A
CSI
PA44
}
Place in pool
and place in MM list
TP
RA
SP
AT
PA34
ER
PA
CNI
17
PA
RA
RA
RA
AT
RA
RA
RA
RA
PA5
PA15
OK
ER
MK
OK
TK
PA
CNI
CNI
CN4
OK
CNI
CN2
CNI
CN15
Op File Item building op. updated
SL list building OPe updated
OK + 4 ----;. OK
OK + 5 ~OK
1 mod constant
OK + 2 ~ OK (S. V. variable entry)
On e tt 10 1in e "
RS
VK
ZJ
CNI
PA62
SP
EJ
TP
EJ
RA
SP
PA
BK5
CNI
CNIO
CN5
OK
CN5
o
vk - 1 ~ vk
If zero, wrap up this pass.
~umber variables ~ A
PA73
NC
PA74
CNI
No, > 1. 20 10 ~ INC
= 5?
No, OK + 1 ~OK
SS
BK5
1
TP
MJ
TP
TP
MJ
TP
MJ
CA
A
NCI
PB
NC
NCI
PB
PA25
PA27
A
o
CN4
CN
o
PA77
o
[30000]
S ~ A "u"
Bring r count up to date
r + 1
~r
= I?
o
5~A
}
2(5 -
}
Jump to initialization, Pass 2
1 vble, INC = 4
1 or 5 vbles., SUBINC = 0
Jump to init., Pass 2
Constants for m flip-flop
PAIOO
1138
v)
= SUBINC
Initialization t Pass 2
o
IA
SP
PB
OK
1
AT
MK
2
7
AT
SS
SA
TV
SP
AT
TK
MK
CN23
A
ER
CN12
10
11
12
13
14
15
16
17
ST
TP
SP
AT
TP
TU
TU
TU
20
21
22
23
24
25
26
27
TP
30
31
32
33
SP
SA
SA
RJ
CA
3
4
5
6
TV
SP
RJ
SP
SA
SA
TV
o
ER
GLI
C(OK)+C(MK)+C(TK)
o
C( OK)+C(TK)+GL6
o
=#
lines for add. mod.
= add. re 1. GL for mods.
PC53
TC
o
C(OK)+C(MK)+IOOO
= XS3 add. reI. 1000
MK
BK6
BK6
ER
MK
GL2
C(OK)+1000 = mod. const. add. rei. 1000
#. unmods.
FLI
BK5
VK
CN24
CN25
CN26
PC51
PC55
PC 74
CNl2
CN23
CN27
OK
ST
o
LS
LSI
Total number of running lines
Set variable counter
Set to scan at BK7
Start obtaining #. subs from SL list
Start obtaining mults. and mods. from MM
list
Set OK to 1000
Start storing output at GL6
tt50077 n to A
Update list I
GLI
GL2
CN6
A
o
o
o
+6
TC
BK6
OR14
RL2
PB34
o
XS3 add. reI. 1000
+ #. heads
RL
Store MJ 0 Exi t
o
GL
o
o
=#
lines for prelude
Second Pass
PC
BKI
CS
OR
RL2
ORI
RL2
OR2
RL2
7
IA
SP
RJ
SA
RJ
SP
RJ
SP
RJ
10
SP
CNI6
1-1
SA
CN2
o
o
+ 2 in ltv"
12
13
RJ
TP
ST2
GL7
5T
ER
Store it
"TP CW (Jj\J) A
o
1
2
3
4
5
6
o
CSI
o
This line number
Insert in constant pool (CW ---;. A "u")
Add in TP-A
RL
o
EJ
NL
1011
o
RJ
IW
IW
RL
RL
Basic "ten line"
1139
CN21
ER
RL2
OR
ER
14
TV
15
16
17
SP
RJ
TP
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
TU
TV
SP
RJ
SP
SA
RJ
SP
TP
TU
TV
SP
RJ
SP
SA
SA
CA
BK4
CN22
ER
RL2
GL2
OR3
RL2
40
41
42
43
44
45
46
47
IA
RJ
SP
SA
RJ
SP
RJ
SP
SA
PC40
CS
OR4
R12
OR5
RL2
CN32
CN11
50
51
52
53
54
55
56
57
RJ
SP
TJ
TP
RA
TP
RA
SP
ST2
[30000]
CN14
A
PC53
[30000]
PC55
ER
60
61
62
63
64
65
66
67
SA
TU
SP
SA
RJ
SP
EJ
ST
PC5l
o
A
PC62
[30000] 17
OR6
o
Rl2
RL
ER
o
CNI
PC102
CN2
ERI
70
71
SP
SA
TC
OR
A
CN17
ER
R12
GI2
CNlO
NC1
PC40
Q
~"TP
CW( LN)
FLN
0
RL
ER
ER
ER
}
TP CW(TN)
FTN
0
RL
17
0
RL
17
ER
ER
ER
Store this line
# heads ~ A "un
~RP
3n 1010
Store
XS3 add. reI. 1000
}
TP
L(XS3)
BF
0
RL
Store this line
# heads
0
0
+ 20 10
0
+ SUBINC =
CSI
Insert in constant pool
0
0
RL
0
RL
0
0
~ota1
RA const.
}
RA BI
L (INC 1) to output
}
TV BI
IW
to output
Basic 10 line
+ appropriate value to reach IW "store"
line
PC5l
CN15
ST
0
PC130
[300ooJ
CN1
ER
CN15
17
0
0
Examine rth word
Multivalued
Yes t store this CW as a running mod.const.
Set for next time
# SS ~ER
Modify
# SS~A
"u"
Find location of
Last subscript for '"SP _
Last CW --:;. A "u"
Add in SP
0
Store this line
More than 1 subscript?
Yes
t
ott
form and store (S-2)
Add 1 u to find first subscript
1140
order
72
73
74
75
76
77
TU
SP
SA
SA
RJ
RA
CA
100
101
1A
RA
1J
A
PC73
[30000] o
[30000] o
OR7
o
RL
RL2
PC73 CN15
PC100
Subscript ~ v field
Multip1ier--;'u field
MA ~ Op field
Store
Modify to pick up next subscript
102
TU
103
104
105
106
107
RA
SP
TP
SA
SA
PCloo
PC74
ERI
PC74
PC74
ORlO
[30000]
ER1
OK
110
111
112
113
114
115
116
117
RJ
SP
SA
RJ
SP
SA
RJ
RA
RL2
ER1
OR11
RL2
MK
OR12
RL2
MK
RL
0
0
RL
17
0
RL
CNI
120
121
122
123
124
125
126
127
SP
SA
RJ
SP
AT
TP
TP
MJ
OR13
OK
RL2
ER
PC51
CN
A
0
o
o
TU A 1
Complete line
RL
17
PC51
S
ER
PC134
130
TP
CNI
ER
131
132
133
134
135
136
137
TJ
TP
CN13
CN
PC133
ER
17
LA
SA
RJ
SP
RJ
CA
A
CN15
PC73
PC lOS
CN15
o
ER1
o
o
A
OR
o
RL
RL2
OR2
o
RL
RL2
PC140
To pick up next multiplier
To pick up modulus
Set for next time
TJ-2
Save CW (Mod)
TJ CW (Mod) 2
Complete TJ line
Store
-CW (Mod)DV-Q
Store
Add. reI. 1000 of mod. consts.
. "SA CW (Base) 17"
Modify MK for next time
~A
r +s
"u"
~r
Clear A and ER
then jump to form
TP [
] A
Single valued. 1 ~ ER "v" (i.e., assume
fixed)
Text v, 65000
Floating, clear ER "v"
CW ~ A "u"
TP-A
Store
RJ 1W 1W
Store this line
1141
IA
SP
SA
RA
RS
ZJ
SP
RJ
PC140
CN16
o
ER
o
ST2
ST
PC5l
CN15
VK
CN1
pe51
PC146
NC
o
CS
CSI
150
151
152
153
154
155
156
157
SP
OR4
SA
RJ
SP
RJ
TP
TU
TV
Q
o
o
cs
CS1
CN12
160
161
162
163
164
165
166
167
SP
RJ
SP
RJ
SP
SA
RJ
SP
ER
RL2
OR2
RL2
CN16
CN2
ST2
NC1
o
170
171
172
173
174
175
176
177
ZJ
RJ
SP
SA
RJ
TP
TV
SP
CA
PC17l
CS
OR4
Q
RL2
OR14
CN12
ER
PC200
200
201
202
203
204
205
206
207
IA
RJ
SP
SA
TU
TU
TV
RP
TP
PC200
RL2
GL2
CN17
A
PC51
PC53
[0]
[30000]
210
211
212
213
TP
RJ
TP
QS
CN3l
OP
CN15
CN15
140
141
142
143
144
145
146
147
R.J
RL2
CN30
Basic 10-line (10
Plus 0 or 1
r + 1 ~r
Vble count decreased by 1
INC~A
Place in const. pool
RA Bl Complete line
Store
BF165 ~A
Insert in pool
RL
o
ORIO
ER
A
ER
ER
RL
o
3 0)
TJ L(BF165) 1000 formed and put in output
}
o
RJ IW IW to output
Basic 10-1ine
Add 2 to complete it
o
Subinc
PC175
CS]
Zero?
No, insert in pool
RL
o
ST
o
o
RL
ER
ER
o
RL
17
0
PC206
PC207
PC207
PC2l0
[30000]
OPI
OP2
Q
WW
~
A
}
RA BI Subinc formed & put in output
}
MJ 0 1000 formed in A
Store
#: heads
+ 30000
~
A "u"
Transfer heading codes
Parameter to output handler
Go output
l~Q
Inform processor of "LIST"
1142
BK4
RW
[0]
RWI
214
215
216
217
SP
TU
RP
EJ
220
221
222
223
224
RA
SA
TV
TP
MJ
CA
RW
CN33
CN34
0
PC223
A
[30000 ]
BK4
L1
0
PC225
0
1
2
1A
RJ
RA
MJ
CA
RL
ST2
OK
0
RL3
ST
eNl
[30000]
0
1
2
1A
TP
RA
MJ
CA
ST
A
ST
0
ST3
[30000J
CNI
[30000]
L
I
0
1
2
3
4
5
6
7
10
11
12
13
14
0
1
2
3
4
5
6
7
10
11
1A
TP
EJ
RJ
RP
RA
TV
SP
MA
OR
0
NL
50077
[30000J
B1
B1
0
0
Tape#CW~A
0
PC216
PC220
PC224
1
Already in list of CW's?
J
No, increment index by 1
Add [RW]
And insert in list
Exit
32000
1011
50077
1010
0
50077
0
0
TJ
DV
SA
TU
MJ
CA
0
2
0
31000
0
17
32000 1
0
1
OR15
1A
0
0
0
0
CN
0
0
0
0
2
3
0
0
4
0
0
0
0
0
0
5
6
0
0
0
0
24
121
0
1
16
1143
12
13
14
15
16
17
0
0
0
0
10
0
20
21
22
23
24
25
26
27
0
0
0
0
0
0
0
0
30
31
32
33
34
0
0
10
0
0
CA
0
0
0
1
1000
65000
77000
0
3
0
30000
BF
0
0
0
0
BK7
SL
77777
NL
TN
GL6
FL3
SL
MM
MM
0
50077
0
GL
0
1
0
CN35
1172
FL
0
1
RW
1144
Flow Charts oi Read Generator
Call word to 1st line
of prelude & Ope File
Clearing input and
output lines of
prelude
Line number to
prelude
Increase 2 initial
loading addresses of
XS3 variables by one
to allow for an added
10 line
Increase XS3 variable
loading address by 2
to allow for 2 added
10 lines in case of 2
variables
Yes
Count of 3 to v of
first line of Ope File
Call word of read library routine to Ope
File
Set up loa'ding
routine Sf
I s there a ttj ump
line number?
Set up Ope File
loader FB
Starting count of lines
relative to 1000 in OK
1145
No
Is 3 > number of variables?
31 + no. variables =
number of lines subject
to address modification.
Put in 2nd line of
prelude
RL routine to load
temporary in output
TP Call word First temof vari- porary of
ables
Obj ect
index
Program
Above line formed and
sent to output.
Twice number of variables = number of unmodifiable constants.
Put in 3rd line of
prelude
767 + preceding + 3
gives v of exit jump
line. MJ 0 v formed
in a temporary
TU 1023 1011
TU 1024 1005
TU 1025 1010
Above 3 lines sent
to output.
Thrice no. of vars.
+31 - 1 = no. of lines
Object program including temporaries.
Put in 2nd line of
Ope File.
Thrice no. of vars. +
31+6 = no. lines prelude and routine. Put
in v of 1st line of
prelude
Set-ups to make the fol
lowing choices. respectively from boxes in GK
subroutine:
TP 30000 50100
TP 30000 Temp.
TV 30000 10OX+2
GK subroutine
to put group of
lines in output
1146
RA 1005 { Call word of
. (0 1 0)
IJ
Call word of
RA 1010 { (0 1 0)
word of
RA 1011 { Call
(0 1 0)
Above 3 lines formed
to output
and put in output
FD subroutine to
get call word, store
it in generated routine and op. file, a
get modulus index
in A
MJ
0
1026
1026+v
o 1026+2v
Call word }IOO5
of vari{ ables index
~-----t
o
o
1000
0
0
0
Above 4 lines formed and
put in output.
v = no. of variables.
Store name of
variable in
output
Set-ups to store variable names, call words
and modulus indexes
in output.
3:,0
Store modulus index
of variable in output
Al ter instructions I-----~
to get next
variable
1147
index
Zeroize 3rd line of
prelude for no. of unmodifiable constants
k
17 = no. of lines sub~
IS number of
.Les ject
of. to° address modvariables I?
I Icatlon.
Put in 2nd line of
--------~-N-o-----prelude
36 = no. of lines subject to address modification.
Put in 2nd line of
prelude.
25 = no. lines generated routine including "10" lines and
prelude.
Put in 1st line of
prelude
It
=
42
no. lines generated routine including "10" lines and
prelude. Put in 1st
line of prelude
27 to Ope File 2nd line
as no. lines Object
Program including
temporary
15 = no. lines
Object Program including temporary. Put in
Op. File 2nd line.
Set-ups to make the following choices, respectively. from the optional boxes in GK subroutine:
Constant Call} 50100
TP {word of var. name
TP{Call ~ord of } Temp.
mod. Index
TV 1013
lOOx+2
MJ
0 1030
formed in a temporary
5
Set-ups to make the following choices, respectively. from the optional boxes in GK subIE-- routine:
TP{constant call J50l00
word of var. nam
TP{Call word of } Temp.
mod. index
TV
1024
lOOx+2
1148
MJ 0 1016 formed
in a temporary
RL routine to
load temporary
in output
~o
Variables index
Modify set-ups to
handle remaining
variable
Get constant call
word for variable
& store in a
temporary
GK subroutine
to put group of
lines in output
FD subroutine to
get subscripted
variable call word.
store it in generated
routine and Op. File,
and get modulus
index _ __
Get call word for
modulus index and put
in temporary
<0
1000
to output
MJ
0
s there a
"j ump to" line t--~
number?
Load call word of line
number in 0p. File
Put call word
of read library
routine in library list 1
Store Op. File and
put generated routine
on tape via OPe
trol routine ,--Put indicator (0 2 0)
into WW (fixed location
12) to show that a
READ is present.
A
GK Subroutine to Put Group of Lines in Output
TP
1
30000 50100
10
0
lOR I
RJ 50100 50100
2
TP {constant call}50l00 ~ 10
0
word of var.
above 3 lines put in
formed and put in outoutput
put
Get call word for
line number
_Yes~ Is there a "jump tO~N~ MJ
~
line number?
~
~--------~------~
MJ
0 lOOx-l
formed and put in output
--~----------------~
0
{Call word of
line no.
formed in a temporary
,.
\
30000 'Temporary
< of Object
Program
TP {ca 11 \\Ord YTemporary
of nodulus~ of Obj ect
index
Program
formed and put" in output
TP
Is sentence within~es Put pseudo OPe indipseudo op?
cator in Q
~----------------~
OIE--~O_ _----'
,
Test if jump is legall
via KI subroutine
MJ
0
Call word
of line no.
10 0
1
above 2 lines to
output
TV
30000
TV
1013
TV
fQ!il
IQ[]
! lOOx+2
lOOx+2
1024
lOOx+2
formed and put in output
J
1
RJ 50100 50100
{Call word
0
10
3
of con30000
q
stant 1 ~ TP
formed and put in outabove 3 lines put
put
in output
RA lOOx-l
\
Add one to count in
first and second
lines of prelude
IORI
IJ
{!~mg~j:~i}
Program
to output
1150
RL Routine to Load Temporary in Output
~-~
ST subroutine to
load line of generated
routine
Up count of lines relative to 1000 in OK
t------~
ST Subroutine to Load Lines of Generated Routine
Alter loade
~_~ Load line in generated ~---3IIIIinstruction
routine output
t - - - - - - - - ;....
for next
time
FB Subroutine to Load Op. File
Load A into next
line of Op. File
1ter storing
instruction
for next use
of routine
1151
Up count of Ope
File lines
FD Subroutine to Get Call Word of Variable, Store It in Output, Put it
in Op. File and Get Modulus Index in A
Set up TS dimension
list scanner
Get call word of
variable via TS
subroutine
Get modulus of variabl
minus one in Av
~~
Put call word in generated routine output
Load call word in Op.
File via FB routine
TS Subroutine to Get Call Word of Subscripted
Variable From Dimension List
Is variable in
dimension list?
Yes Compute position of
variable in list
No
Rewind all tapes and
stop computer after error print-out: ALARM 1.
COMPILATION INCONSISTENCY 'POSSIBLE COMPUTER
ERR OR' RECOMPILE
1152
Put call word of vari
able into A
READ GENERATOR REGIONS
Generator
+ temporaries
RE
RE
RE
RE
RE
RE
RE
CSl211
LS1465
OPI047
BR537
LWl250
KIl336
VXl670
1
RE
RE
BP564
BQ632
J
RE
RE
RE
RE
DL40102
LL47246
BK2242
GL5360
Dimension List
= IZ t Referenced-line-number List
Input buffer
Generated routines output buffer
RE
WWl2
Fixed location holding read indicator
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE2512
IN2513
FW2647
GK2726
RL3041
ST3044
FD3047
TS3063
FB3073
CN3077
RE
RE
RE
OK3142
ER3143
FL3150
= CW t Call-word subroutine
Generation subroutines
Where Op Fi Ie I is built up
1153
READ GENERATOR
Entry
IA
RE
MJ
0
CA
REI
o
IA
SP
IN
BK3
1
TP
A
2
TP
A
3
TP
TP
TP
CN
CN
BKI
CN3
CN40
4
5
6
7
TV
TP
10
TV
11
TP
TV
12
13
14
15
16
SP
TJ
17
20
21
22
23
SP
ZJ
17
GL
FL
GL3
GL4
GLS
FL
FL2
CN3l ST
CN13 OK
FB
CN32
BK4
o
GKllO IN15
o
AT
SP
TP
BIG
A
GL2
SA
ST
GLI
CNI
FLI
o
}
}
}
1
CN4
o
A
26
AT
CN12
GL
ERl
27
SA
TP
CN3
RE
TV
RJ
SP
A
36
37
40
41
42
43
44
45
46
47
50
}
}
FW
GLI
SA
34
35
}
BIG
TV
33
}
CN3
CNlO
24
25
30
31
32
Exit
30000
SS
RJ
TP
TU
TV
RJ
TP
RJ
RA
ST
RJ
RA
RJ
RL2
BIG
CNI
CS
CN33
A
ERI
RL2
CN4l
RL2
ER
BQ16
RL2
ER
RL2
o
ER
ER
RL
o
o
CSI
ER
ER
ER
RL
ER
RL
BP45
ER
RL
CN15
RL
}
}
}
Call word to 1st line of prelude, GLu
Call word to 1st line of Op File 1 item
Clearing input and output lines of prelude
Line number to prelude
Number (3) to v of 1st line of Op File
Call word (50100) to 3rd line of Op File.
Library call word reference
Initializing ST (load routine) to GL6
Initializing OK to read 0 0 1000
Sets up v of FB to FL3
Is there a ~jump to" line number in the
sentence?
Is 3 > number of variables?
31 + number variables = no. lines subject
to address modification
Number of unmodifiable constants
twice
number of variables
Thrice no. of variables + 31 - 1 no. of
lines of running program including
temporaries
Thrice no. of variables + 31 + 6 no. of
lines prelude and routine
767 + above enumeration gives address of
1st temporary of running program
MJ 0 !~ove formed to make 1st line a
jump to 2nd line of next sentence
Line to generated routine output
Getting constant call word for no.
variables minus one
TP Call Word of
First temp of
Variables Index
Object Program
formed and sent to output
=
=
=
}
TU
1023
1011
}
TU
1024
1005 to output
}
TU
1025
1010 to output
1154
to output
Setups
for a
sub-
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
110
RP
TP
RA
SP
AT
RJ
SP
RJ
TP
TU
10003
CN26
ERI
ER1
ERI
GK72
BP45
CS
CN32
CN27
IN53
GK73
CN1
17
ERI
GK
o
CSI
ER
ER
ER
RL
CN16
RL
BP45
RL
ER
17
ER
TV
RJ
RA
RJ
RA
RJ
TP
SP
RI2
ER
RL2
ER
RL2
CN34
GL7
TU
A
TV
RJ
TP
TV
RJ
TP
SP
TP
RJ
SP
GLll
RL2
RE
CN13
RL2
CNI
CN14
AT
RL
ERI
17
ER
RL
17
ER
RL
INI05
IN122
Q
A
RL2
BKS
ER
RL
ER
ER
}
}
}
}
1005 Call word of
to output
}
RA
1010 Call word of
to output
}
RA
1011
to output
}
IJ Call word of
Variables
Index
}
MJ 0 1000 to output
}
}
III
TU
112
TV
CN33
FD3
113
114
115
116
117
120
121
122
123
124
SP
SA
TV
SA
TV
SP
ST
TP
TP
RJ
CN33
BK5
~N123
}
A
BK5
}
CNI
30000 ER
ER
30000
FD13
125
TP
A
126
127
f30
131
132
A
BK5
IN122 BP45
IN123 CNI
lN125 eN!
FD3
CNI
ERI
IN122
(0 1 0)
(0
1
0)
Call Word of
(0
1
0)
1005 to output
o
1026 0 to output
o
(1026 + v)
0 to output
o
(1026 + 2 v) 0 to output
Setup to get variables from string-out at
BK6
Setup to store call words in output at
certain location
}
~N125
~Rl
~OOO
Puts a succession of lines in output
Gets constant call word for 0 1 0
RA
ER
RL2
ERI
CN31
RJ
IJ
00 30000 30000 to 3 temporaries
Puts in u and v of ERI the address of 2nd
temporary of Object Program
}
}
Setup to store call words at above locat.
+ v. v = no. variables
Setup to store modulus indexes at 1st
location + 2 v
Variables 'index (v - 1) formed in ERl
Get variable from string-out input.
Store variable as fixed const. in output.
Get Dimension List call word of subscripteJ
variable, store in output and Op Fi le t itget modulus - 1 and store in output
Modif~yi1HJiM-tr. ··t1lget·· next
variable
Index jump to get remaining variables
1155
133
MJ
CA
Jump to termination of generation
Zeroize number of unmodifiable constants
Setup to scan string-out at BK6, beginning
of X3 variable list
MJ 0 _
-to temporary ER
Variables index set up in ER2
Is number of variables one?
17 = number of lines subject to address
modification
25 = number of lines generated routine, including ttlO" lines & prelude
15 = Op File count of running program including temporaries
o 1013 0 to temporary as address holding
call word of variable
o 1014 1014 to temporary as address of
temporary in Object Program
Sets up FD routine to store call word in
output
MJ 0 1016 formed in ER
FW
1
TU
CN
CN3l
GL2
FW25
2
3
TP
ST
5
TP
RE
CNI
FW15
CN6
ER
ER2
FW5
GLI
6
TV
CN27
GL
7
TP
CN5
FLI
10
TP
CN17
GK75
11
TP
CN23
ERI
12
TV
CN34
FD3
13
CN30
15
TV
MJ
TP
CNII
ER
FW24
GLI
16
TV
CN36
GL
17
TP
CN7
FLI
20
TP
CN20
GK75
21
TP
CN24
ERI
22
23
24
25
26
27
30
TV
TV
RJ
FD3
ER
RL
ER
TP
RJ
TP
CN35
CN37
RL2
30000
ER
CS
31
32
33
34
35
36
37
40
41
42
43
~ZJ
-2-v-a-r-i---'1 14
abIes
FW44
IA
o TP
able
0
IN134
TP
o
A
A
CSI
GK73
RJ
FD13
FD
RJ
TP
RJ
RA
RA
RA
IJ
TP
TV
RJ
CS
CSI
GK74
GK
BP45
BP45
A
GK72
GK75
FW25
FD3
ER2
RE
CN13
RL2
eNl
FW25
ER
ER
RL
36 = no. of lines subject to address modi-
fication
42 = no. of lines gen. routine incl. 10
lines and prelude
27 = Op File count of Object Program lines,
incl. temps
o 1024 0 to temp. as address holding call
word of variable
o 1026 1026 to temp. as address of temporary of Object Program
Setup FD rtne.to store call word in output
MJ 0 1030 formed in ER
Line to output
Get constant call word for name of subscripted variable and store name in constant pool
Store constant call word in temporary
Get Dimension List call word of subscripted
variable, store in output & Ope File, and
get modulus minus one in A
Get call word of modulus - I and store in
temporary
Put a succession of lines into output
Altering instructions to get a remaining
variable
Jump back to get a remaining variable
MJ 0 1000 to output
1156
Termination
44
45
46
47
5P
BK4
ZJ
SP
FW46
ER3
FB3
50
SP
51
52
53
54
55
56
RJ
RJ
CN40
LS
~W50
~B
~l
}
}
}
Q5
MJ
CA
CN42 OPI
OP
OP2
VX153
VX153
RE
o
FW57
IA
TP
TV
TO
RJ
GK
CN33
CN2l
GK73
RL2
4
TP
5
TV
RJ
CN25
CNI
5T2
5T
CN2l
RL2
CN25
CN2
5T2
RE
RL
ER
ER
5T
ER
}
BK4
A
GK76
OK
CNI
GK17
}
o
1
2
3
6
TP
RJ
TP
10
TP
RJ
11
TP
12
13
14
15
16
17
20
21
TV
RJ
TP
TP
7
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
ZJ
5P
55
TV
RJ
MJ
RJ
TP
TV
RJ
RA
RA
TP
TO
TV
RJ
TP
Tll
TV
RA
RJ
SW
A
RL2
o
RL2
CN25
CNI
5T2
GL
GLI
CN33
GK74
ERl
RL2
CN35
GK75
OK
Eft-
RL2
}
}
ER
ER
ER
RL
}
ER
}
ER
ER
o
o
ER
RL
GK32
RL
ER
ER
ST
CNI
CNI
ER
ER
ER
RL
ER
ER
ER
CN2
RL
}
}
Is there a "jump to" line number?
Store call word of "jump to" line no. as
cross reference in Ope File
Call word referencing read routine in
Library put into Library List
Op File to storage and generated routine
to tape
Indicator bit (0 2 0) put in WW (fixed
location 12) to show a "READ" is present
TP
30000 50100
[ill
formed and put in
output. If more
than 2 variables,
the first; otherwise, the second
Constant
50100
Call Word
of Variable
10 0 1 formed in ER
Line to output without upping count in OK
of lines relative to 1000
RJ 50100 50100 to output
TP
10 0 2 to output
MJ 0 0 to ER
Is there a "jump to" line no. in sentence?
MJ 0
looX - 1 to output
MJ 0 Call Word of Line No.
to output
}
10 0 1 to output
}
Adding one to prelude counts
}
TP
30000 or
Temporary
Call Word
of Object
of Modulus Index Program
TV
or
1013
or
1024
}
1157
to output
looX + 2 to out put
M.oxe t~han2 ya_r. ~ 1 var •• or 2
var. setups determine u of
generated codIng
43
44
45
46
47
50
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
TP
RJ
TP
TV
RJ
TP
CN21
RL2
CN25
CN3
ST2
SS
CN33
CN26
CN30
RL2
CNI
CS
CN32
OK
CNI
TU
A
TV·
Q
TV
TU
RJ
SP
RJ
TP
SP
RJ
TP
TU
SP
SS
RL2
CN34
ERI
OK
CN3
ER
RL
ER
ER
ST
ER
ER
ER
RL
o
CSI
ER
A
ER
RL
TP
}
Putting 1 into constant pool and getting
its call word into Qv
RA
RJ
~
LWI
Q
ER
TP
TP
A
A
TP
CN22
BK3
GKl05
GKl07 Q
ER3
105
106
107
110
TP
RJ
MJ
RA
o
CN35
KII
GK24
CN2
III
RP
RA
20002
CN33
IN15
CNI
CA
GKl13
IA
RJ
RA
RL
ST2
OK
ST
CNI
MJ
CA
0
30000
ER4
KI
ER4
A
30000 to output
loox-l Call Word
of
1
to output
lOOX-;
to output
Subroutine exit
30000
TV
q
IJ Temporary of
Object Program
30000 30000 }
30000 30000
30000 30000
TJ
TP
Generated 0
Routine 1
Loader
Plus
2
lOOX
Counter
}
ER
100
101
102
103
104
112
10 0 3 to output
o
o
RL2
o
o
}
17
ER
ER
RL
ER
RJ
MJ
o
RJ 50100 50100 to output
o
TV
o
}
}
Temporaries used in generation
Getting call word for line number
MJ 0 C~ll word of to ER
Llne No.
Storing call word of line no. in 2
temp~.
Is call word of sentence > 22777?
Put a word with U35 filled into Q to show
Pseudo-O·p. condition
Call word of line no. to A
Test if jump is legal
u
A
}
Increase excess-3 variable loading address
by 2 to allow for 2 added "ten~ lines
Increase initial loading address of excessthree variables to allow for added "10"
line following jump to line number
Loads line into output of generated routin~
Ups count of lOOX. Ordinal count of number
of generated routine line relative to 1000.
Does not include "10~ lines.
RL3
1158
Generated 0
Routine
1
Line
Loader
2
IA
TP
RA
ST
ER
ST
Loads line into output
Alters loading line for next line of
output
30000
eNl
MJ 0
30000
CA ST3
Control Subroutine to get call word of a variable from Dimension List, store it
in output and Op File, and get modulus - 1 in A
IA
FD
v
o TP ER
A
Get call word of variable from Di-
~
~i
3
TP
LA
RJ
RA
TU
TP
QT
SS
MJ
CA
4
5
6
7
10
11
12
13
Get Call
Word of 0
a vari1
able in
Dimension List 2
3
4
5
6
7
Load
Op
File 1
o
1
2
3
Constants
and
Dummy
Commands
Used to
Make up
Generated
Routine
IA
RP
EJ
SN
SA
SA
TO
TP
MJ
CA
IA
TP
RA
RA
MJ
CA
iS7
i~
A
30000
A
17
FB
BP45
FDIO
FB3
TS6
A
30000
CS35
BP45
0
FD14
Q
A
71
30000
1
J
mension List
Put call word in output
}
Put call word in Op File 1
}
Extract modulus from Dimension List,
subtract one from it, and put into Av
TS
o
DL
BRI
TS2
Q
TS
TSI
o
o
A
TS6
30000
A
o
}
17
}
If variable is not in list, computer
stops after a rewind of tapes and
pri nt-out: AI..ARM 1 COMILATION
INCONSISTENCY'POSSIBLE COMPlITER ERROR'
RECOMPILE
Computing position of variable in list
and getting call word of it into A
30000
TSIO
FB
A
FB
FL
0
FB4
30000
CNI
CNI
30000
0
1
2
3
4
5
6
IA
0
0
0
0
0
0
0
CN
0
0
0
0
0
0
0
0
1
2
3
7
15
17
7
0
0
27
Storing line in Op File
Increase storing order
Up count of number of lines
1159
10
11
12
13
14
0
0
0
0
0
o
o
o
o
o
31
34
767
1000
1026
15
16
17
0
1
0
0
3
3
0
1013
0
20
0
1024
0
21
22
23
RJ
0
0
0
24
0
1026
1026
10
o
o
30000
30000
25
1016
GL6
25
26
27
30
31
32
When more33
than 2
34
vars.,
GL37 is 35
initial
loading 36
address 37
of X3
40
names
41
42
o
o
o
o
RA
TP
IJ
TV
o
o
o
TU
o
CA
50100 50100
22777
1014
1014
1005
Q
BK6
DL
LL
o
o
o
o
FL3
GL37
Gl24
GL40
Address holding call word of 1st variable
for more-than-2-variab1e case
Address holding call word of variable for
I-variable case
Address holding call word of 1st variable
for 2-variable case
Address of temporary of Object Program for
I-variable case
Address of temporary of Object Program for
2-variable case
DL is initial location of Dimension List
GL24 is loading address of variable when
only one
GL40 is initial loading addr. of variables
when there are two
42
1030
50100 o
1023
1011
GL
FL
CN43
Call word of Read permanent library routine
1160
Start
Z~Zl
Generate
GL 0 27--- 11
1 0 0
3
0
2 0 0
0
0 0
3
~ 4
0
0 0
5
line #
6 MS 0
0
7 10 0
DA
?
10 EF 0
Stop Generator Flow Charts
Place code for
~ Rewind 1 in CP.
obtain CW
Fill in v-add ..
- of EF in GLlO
~
;7_~_2
Generat
FL 0
1 0 o
2 0 o
2
0
~
Generate
GLII RJ 50077 50071
.....
.....
0.....
Inspect indicator bits in
12 8
12
13
14
15
16
I--~
10 3
RP 30003
TP
?
RP 10024
TP
?
2
1005
WBl05
1001
WB144
Place word of'~rinter
bkpt. stop" symbols
in C.P.
L
Fill in
GL16 "u'~r
~---~
22
11
GL"v"
GLl"v"
3
GL2"v"
3 --;. FL"v"
12 ~ FUttv"
50077 .~ FI2 "uIt
~
-~
~
Extract n (# of
tape no. CWts in
rewind list) from
RW
No
Form
~
= 3n
Form
~ = 2n+3
Increment
by 8
by 8
by 8
Fill in GL14"u"
wi th ( 1042+8)
GL
GLI
FLI
Place GTH parameter
to write 1 block from
List buffer in C.P.;
CW~ERl
Place
AT CW GT3
Set up RP in Box 1
to transfer 3 words;
Set up RA in Box 1
to increment by 3
Place
Set up RP in Box 1
to transfer 2 words;
Set up RA in Box 1
to increment by 2
in ER3
RJ GT2 GT
in ER4
when CW is that
saved in ERl
Place
SP
?
17
in ER2
RJ
l026+2n l024+2n
in ER3
Stop Generator Flow Charts
~~et up TU in Box 1
Set up TP in Box 1
to start from GL17
~o start at RWI
n +-n-l
C~} f~ ~
+2TP I ER2
3R,A a +2
F
ER2
a +a
Box 1
?
?
---------'
0{
F .
ncrement TU order
in Box 1 to extract
next line for RW
~
H
s there a
programmed
Read?
Insert 3 xS3 lines
at end of generated Icoding
Set up RL
subroutine
Check dimension
to see if AUTO
read required
~~~list
-fi\
Set up RL
subroutine
No
Generate
TP, 10, RJ, 10,
MJ, Par am.,) 3
flex code words.
Set up prelude
Parameter
rtne.
~OP
~STOP
\..J
Stop Generator Flow Charts
~
TP - X+20 - 0
_____ 10 0 PR3
No
1
_I
)..-_~
RJ - 0 - 0
10 PR2
PR
>----iJII
u.--~
\---~
MJ
SA L
(rew cod.)
.1----1
0
10 0 PR2
>--~EF
0
A
)..--~
SJ
~~SP
0 x-5
TP
N~~
Zero to
con s t ..
pool
MJ
0
x-13
x+6
x-3
A
SP L(O)
x+1
14
0
I---~
0
11 to
const ..
pool
Rewind
......"
const.pool
>--~code
Stop Generator Flow Charts
®---i
RJ
GT2 GT
~
o (x+14) I
MJ 0 30000
~ 0 x+2 13
Insert 14
flex code
words
Increment
GL by 36
GLI by 22
GL2 by 14
FLI by 33
In above routine X = address reI. 1000 of order currently being generated
STOP GENERATOR REGIONS
Generation
Subroutines
fE
RE
RE
CS12ll
BR537
OPl047
Call word routine (= CW)
Machine error print-out routine
Op control routine
RE
RE
RE
RE
DlAOl02
BK2242
GL5360
RW50023
RE
WW12
Dimension List
Buffer input region
Buffer output region for generated routine
Rewind list of call words of tape no. 's referenced
by read and list instructions
Fixed location of read, list indicator
RE
RE
RE
RE
RE
RE
RE
ST2512
SG2513
HT2513
PG2702
RL3017
CN3024
ER3l37
Temporaries
RE
FL3l44
Where Op File I is built
RE
RE
RE
DA77300
PR77250
GT2l0
Object Program service routine
UNICODE print-out routine
Object program tape handler
RE
RE
WB7l005
IW50077
List buffer (170)
Call word for LIST permanent library routine
Stop Generator
1166
STOP GENERATOR
IA
MJ
CA
HTO
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
44
45
46-
47
50
IA
TP
RP
TP
SP
LA
TU
TV
TV
TP
RP
TP
SP
RJ
TV
RP
TP
TV
TV
SP
LA
TU
TP
QT
ZJ
RP
TP
SP
RJ
TU
TV
TV
TV
CA
IA
TV
TV
TU
TP
QT
TP
TJTP
TP
ST
,...
u
30000
Exit
HT166
lIT 3
GL
0
17
GL
GL
GLI
GLS
lIT 13
GL6
0
CSI
GLIO
HT20
FL
FL
FLI
Set indicator to zero
Zeroize 5 lines of GL
STl
SG
CN
10005
CN
BK3
A
A
CN4
CN2
BKI
30003
CN32
CN27
CS
Q
10003
CN
CN24
CN24
BK3
A
A
WW
CN17
HT30
30006
CN35
CN30
CS
A
CN7
CN4
CN2
SG40
0
17
FL
Q
A
HT125
HT32
GLII
0
CSI
GLl6
GL
GLI
GL2
SG40
CN2
CN5
CN35
CN12
RW
A
FL
FLI
FL2
Q
ER
ERI
eN3-
Hl'fH
CN25
CN2
HT166
ERl
}
}
}
}
}
}
}
}
Call word
11 ~ GL "v"
3 ~GLI ttv"
Line number
MS, "10" line, EF
Rew. I code
Fill in EF "v"
Zeroize 3 lines for Op File item
2 ~ FL ·v"
2 ~ FLI "v"
Call word
I/O indicator word
Is there a list?
RJ, 10, RP, TP, RP, TP
Stop word to constant pool
Fill in TP flU"
22 -+ GL "~,,
11 ~ GLI ·'v"
3 ~L2 tty"
3~FL
"v"
12~FLI tty"
IW CW ~ FL2 "u"
Mask for n from RW list
Extract # tape call words (n)
n~ERI
Testv··<:· :4
4 or more, set indicator to large no.
3 ~ERI
1167
51
52
53
54
55
56
57
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
SP
AT
SA
1
ERI
17
GL14
ER1 }
ERI
ERI
TU
A
RA
RA
RA
SP
RJ
TP
TP
IJ
TP
GL
GLI
FLI
CN31
CS
TU
TP
TU
TV
MJ
SP
AT
SA
AT
TU
CA
100
101
102
103
104
105
106
107
110
III
112
113
114
115
116
117
120
121
122
123
124
125
126
127
130
131
A
ERI
CN15
IA
TV
TU
TV
IJ
MJ
TU
RP
TP
RA
RA
MJ
TV
RS
SA
TP
TV
RJ
TV
RA
RP
TP
QT
ZJ
TP
TV
TP
o
PG
HT166
CNlOO
ER1
CNlOl
CN37
CNl12
CS1
ER1
ER2
HT73
ER3
ER3
ER4
HTl06
HTIIO
HrIOI
ER
CN14
CN24
ER3
CN40
SG100
ER3
17
ER3
HT106
A
o
SG100
CNl05
CN42
CNl03
ER
0
[30000]
[OJ
ER2
HT107
HT105
0
HTl07
HT107
CN41
CN
A
PGl14
RL1
HT124
30003
CN106
CN20
HT151
CN
6
CN16
2n
Form inc. for prelude (3n or 20 + 3)
Add 1042, form (1042 + 3D, 1045 + 20)
Fill in TP2 "un
Increment prelude counters
General GTH parameter to write 1 block
to C.P.
Save it
SP-17~ER2
How many tapes?
< 4; AT GT3 ~ER3
AT L( GTHp)
GT3 - ER3
RJ GT2 GT ~ ER4
Set up RP to write 3 words
Set up RA to inc. by 3
Jump
4 or more tapes; 2n ~A
Add 1024 ~ 1024 + 2n in ER3 v"
Add 0 37 2 ~ RJ 1026 + 2n
? in A
Complete order
Set up RP to write 2 words
1
.t
Set up RA to inc. by 2
Set up TU order to start at RWI
Start at GL17
Count down on n index
Exit
Complete SP order
HTllO
HT105
HTl07
HTl05
HTl13
ER2
HT110
[30000]
[30000]
CN17
HTI03
RLI
CNI03
Increase by 1 "u"
Now HT 103 "v" holds next address in GL
Subtract GL17
Add 1007
Zeroize RL4
And set it up (add. reI. 1000)
Execute PG coding
o
RL4
RL4
PG
HT124
CN6
HT163 }
30000
~127
ER
ER
ER1
}
Increment by 14
Insert XS3 - "END OF OUTPUT"
then go to conclusion
No list - how about a programmed Read?
No. prog. Read - investigate auto-read
Set up ER with #77 CW's
77000 is 1st CW
1168
132
133
134
135
136
137
140
141
142
143
144
145
146
147
150
151
152
153
154
155
156
157
160
161
162
163
164
165
166
TU
IJ
MJ
SP
RP
EJ
CA
IA
SN
SA
SA
TU
TP
QT
ZJ
RA
MJ
TV
TP
RJ
MJ
RP
TP
TV
TV
TV
TV
TP
RJ
MJ
0
CA
6
ER
0
ERI
[0 ]
HT136
HT135
HT155
0
BRI
or
HT140
LI ....
Set up RP
Count down on index
Exit - no auto-read
SG140
SG140
Q
HT136
HT137
17
0
0
HT144
A
[30000] Q
CN25
A
HT147 HT151
ER1
CN1
0
HT133
CN102
RLI
CN13
RL4
PG114 PG
0
HT163
30011
HT157
CN55
GL11
CN7
GL
CN4
GL1
CN2
GL2
CN4
FLI
CN77
OP1
OP
OP2
ST
0
0
0
SG167
Inspect X
If zero, auto-read
No - prepare to search for next CW
Read coding - prepare to gen. coding
Gen from GL11, add entr --+ 1002
Execute PG coding
Go to conclusion
NO READ, NO LIST
22 ~ GL "v"
11 ~ GL1 "v"
3 ~ GL2 "v"
11 ~ FLI "v"
Conclusion - parameter to Op
Exit
Indicator word
1169
PG
0
1
2
3
4
5
6
7
IA
SP
AT
IJ
RS
RJ
TP
RJ
TP
SG167
RL4
CN43
HT166
ER
RL3
CN56
RL3
CN57
17
ER
PG4
CN22
RL
ER
RLI
ER
Add. entr. ~ A "u"
Add TP 20 0
Or < 4 tapes?
Yes, subtract 3 "UH
Store this running line
10 0 PR3
Store this 10 line
RJ 0 0
10
11
12
13
14
IS
16
17
RJ
TP
RJ
SP
RJ
TP
TU
RJ
RL3
CN60
RL3
CN
CS
HT13
A
RL3
RL
ER
RLI
0
CSI
ER
ER
RL
Store this running line
10 PR2 PR
to output
Clear A
~ Constant Pool
20
21
22
23
24
25
26
27
SP
AT
RJ
SP
AT
RJ
SP
SA
RL4
CN44
RL3
RL4
CN45
RL3
RL4
RL4
0
ER
RL
17
ER
RL
17
0
Add entr. ~ A "v"
Add MS 0 1
Store this running line
Add entr. ~ A "un
Add ZJ 1 1000
Store it
Entr. ~A "u"
and A "v"
30
31
32
33
34
35
36
37
AT
RJ
SP
AT
SP
RJ
TU
RJ
CA
CN46
RL3
RL4
CN47
CNlll
CS
A
RL3
SG227
ER
RL
0
ER
0
CSI
ER
RL
Add 45 77775 00001
Store this (SJ line)
Entr. ---::.A "v"
Add TJ-2
40
41
42
43
44
45
46
47
IA
SP
AT
RJ
TP
RJ
SP
RJ
TP
SG227
RL4
CN50
RL3
CN5l
RL3
CN26
CS
HTl15
RL
ER
RL
0
CSI
ER
SO
51
52
53
54
TU
RJ
TP
RJ
SP
A
RL3
CN34
RL3
RL4
RL
ER
RL
17
0
ER
}
}
SP
1(0)
o to
output
1110~A
Constan t Poo 1
TJ L( 11) X + 2
Store this
~
Entr. ~ A "v"
Add 44 77777 77773 ~ MJ line
Store it
SP A 14
Store it
Rewind code ~ A
~ C. P. (Constant Pool)
SA-O
ER
Store it
EF 0 A
Store it
Add entr.
1170
~A
"un
ER
ER
PG60
CN22
Add TP 6 0
or less than 4?
Yes - subtract 3 tlu"
RJ
TP
RJ
SP
AT
RJ
IJ
MJ
RL3
CN56
RL3
RL4
CN53
RL3
HT166
0
RL
ER
RL1
0
ER
RL
PG70
PG77
Store it
10 0 PR3
Store this 10 line
Add entre ~ A "v"
Add 44 77777 77765 (
Store it
How many tapes?
< 4 - jump
TP
TU
RJ
TP
RJ
TP
RJ
SP
CA
CN100
ER1
RL3
CN101
RL3
CN54
RL3
RL4
SG267
ER
ER
RL
ER
RL
ER
RL
17
AT GT3
AT CW(Write param.) GT3
Store it
RJ GT2 GT
Store it
MJ 0 30000
Store it
Add entr. --+ A "u"
IA
AT
RJ
SP
AT
RJ
TV
RP
TP
SG267
ER
CN21
RL
RL3
RL4
17
ER
CN23
RL
RL3
RL1
PG107
30014 PGllO }
CN63 [30000]
Add 0 2 13
Store it
Entr. ~ A flU"
Add 0 14 1
Store it
Extract address in GL list
Insert Flex codes
110
111
112
113
114
RA
RA
RA
RA
MJ
CA
GL
GL1
GL2
FL1
0
SG304
CNll
CN7
CN6
CNI0
[30000]
Inc.
Inc.
Inc.
Inc.
Exit
RL 0
1
2
3
IA
RA
TP
RA
MJ
SG304
RL4
ER
RL1
0
eNI
[30000]
CN1
[30000]
55
56
AT
IJ
CN52
HT166
57
RS
60
61
62
63
64
65
66
67
70
71
72
73
74
75
76
77
100
101
102
103
104
105
106
107
4
[0
CA
0
01
~
SG311
1171
GL ltv" by 368
GLI "v" by 228
GL2 "v" by 148
FLI "v" by 338
~
MJ)
1
2
3
4
5
6
7
IA
0
0
0
0
0
0
0
0
SG311
0
0
0
0
0
0
0
0
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
0
0
0
0
0
0
0
0
0
0
0
0
0
7
2
2
0
0
30
31
32
33
34
35
36
37
0
74
CNO
MS
10
EF
RJ
10
RP
CA
40
41
42
43
44
45
46
47
50
51
52
53
54
55
56
57
IA
TP
RP
TP
TP
MS
ZJ
45
TJ
44
SP
TP
44
MJ
TP
10
RJ
0
0
0
0
0
1
2
2
0
1
3
4
11
12
14
22
33
36
77
1002
1024
1042
77000
0
0
13
3
14
37
0
200
200
1
2
0
0
10000
61616
20100
0
0
0
IW
3
30003
SG351
16161
1005
0
DA
A
IW
2
1005
SG351
30002
10024
RWI
20
0
1
77775
0
77777
A
6
77777
0
1005
0
0
0
RJ in "u"
General rewind
Rewind #1
Breakpoint stop word
Parameter to write 1 block from list buffer
WBI05
1007
WB144
0
1
1000
00001
2
77773
14
0
77765
30000
0
PR3
0
1172
60
61
62
63
64
65
66
67
10
MJ
0
45
PR2
0
1006
47200
PR
1000
3
62204
cr , ENDLl
03
26041
23406
OFD RUN
45
01
14
45000
03041
06220
00000
22031
41454
cr cr
TO LlREW
IND Ll II
70
71
72
73
74
75
76
77
03
24
24
06
30
24
45
0
CA
04013
20121
03041
04051
01301
22140
GL
SG411
01520
00104
70304
40604
40104
20157
10103
FL
o LlTAPE
SLl SETLl
SERVOLl
NO Ll IN Ll
ALlHITLl
START +
cr ditto
IA
AT
RJ
0
0
0
0
30
01
66
0
0
CA
SG411
0
GT2
0
0
0
0
50270
51676
22010
0
0
SG424
100
101
102
103
104
105
106
107
110
III
112
04242
GT3
GT
GLII
GL17
2
CNI04
15131
65267
10101
13
CN2
L(2)
ENDLlOF
.6.0UTPU
T.1\7\
L(3)
1173
Flow Chart for Dimension Generator
o Call word
~--~
Set up index for
number of subscripted variables
2
Preceding made-up Op
File and the dummy line
o
o
Modulus t----~ 0 30000 0, sent to op.
of variable
control routine for
Above two lines made up
storage of Op. File
for Op File of variable
in dimension list
of variable
-----~-f
Variable index
jump
Mask out number
of subscripts
used with current
variable from
dimension list
Alter
instructions
referencing
--.-----1 dimen sion list
so data on
next variable
wi 11 be secured
Yes
No
Add 6
Alter instructions
referencing dimension list so data
on next variable
will be secured
Add 5
Alter instructions
referencing dimension list so
data on next variable will be
secured
DIMENSION GENERATOR
RE
RE
RE
CQ2512
C02547
OPI047
DL40102
0
1
IA
MJ
TP
CQ
0
6
2
QT
30000
Q
COlI
A
3
4
5
6
7
10
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
TP
IJ
SP
TV
SP
TV
TP
RJ
IJ
MJ
TP
QT
TJ
TJ
RA
RA
RA
MJ
RA
RA
RA
MJ
RA
RA
RA
A
COlO
DL2
A
DL3
A
C012
OP
COlO
0
DL3
COlI
CO2
C04
CQ5
CQ7
CQ15
0
CQ5
CQ7
CQ15
0
CQ5
CQ7
CQ15
0
CQ35
COlO
CQ5
17
C013
71
C014
OPI
OP2
CQ15
CQ
Q
A
CQ31
CQ25
C07
C07
C07
CQ5
C06
C06
C06
CQ5
C05
C05
C05
CQ5
HE
MJ
CA
0
1
2
3
4
5
6
7
IA
0
0
0
0
0
0
0
0
0
0
0
0
0
4
5
6
10
0
0
11
12
13
14
15
0
0
0
C015
0
0
0
0
30000
CA
C016
0
~
Exit
Mask # of arrays to establish
index
Set index
}
Call
}
Modulus -+ Op File 1
}
Parameters to Op.
)
}
}
}
}
word~Op
File 1
Exit
Mask # of subscripts
2 >(A)? No-add 4 (it must be Ot1)
4 > (A)?
Add 6
Add 5
Add 4
CO
0
1
2
3
4
0
0
0
[oj
77777
C013
2
0
}
No. of subscripts
}
Modifiers
Index
Mask
Parameters
}
Op File 1
0
1175
Pseudo-Operation Heading (Generation) - Flow Chart
Call word of second
line of pseudo operation to v of second
jump line of generated
coding.
Call word of pseudoop heading to u of
first lines of Op File
I and prelude
Transfer generated routine to
tape and Op. File to
storage via Op control subroutine
PSEUDO-OP HEADING-GENERATION
HE
RE
RE
BK2242
OPI047
PS2512
IA
PS
1
MJ
TV
BK4
PS2l
2
LQ
BK3
Q17
PSlO
PSl2
OPI
OP2
PS
o
3 TU
4 TU
5 TP
6 RJ
7
MJ
10
0
11
12
13
14
15
0
0
17
0
0
0
0
0
20
MJ
16
21 MJ
22 10
23
o
Q
Q
PS23
OP
o
[0]
o
[oj
o
o
o
o
o
o
o
o
0
PS12
CA
PS24
30000
2
2
11
}
}
}
Exit
Call word of second line of subprogram to v
of output iine
Call word of Pseudo-Op heading to u of 1st
line of Op File 1.
Same to u of 1st line of prelude
Transfer generated routine to tape and Op
File to storage
Exit
Op File 1
3
o
o
o
o
30000 }
[0 ]
Prelude of generated routine
Generated routine plus "10" line
1
PSIO
Parameter word for transfer of generator
to tape and Op File to storage
The line number in input buffer line bkl is inserted in PS17
by generation control prior to operation of this routine in the core.
1177
End of Tape--Generation
Control of the End of Tape Generator is in the last part of the Control
Generation subroutine. First the Op File is transferred to the proper storage
area. Then RJ KB KBl does the following things:
It closes out the Op File block, sending it to tape, and adds on an "End of
Entry" block. In the "End of Entry" block following the first two lines, the
contents of locations 5-17 are reproduced. Prior to this, the value of 14 is
computed and a warning print-out given if the number of blocks scheduled to be
put on tape 5 will exceed 2500.
Two blocks of Z t·s are added to the tape holding the generation subroutines
following an ttEnd of Entry" block.
List I of the library routines referenced is sent to tape 5 with an initial
block having in its second line the contents of counter 5. An "End of Entry~
block is added at the end.
Next, RJ UG UGI puts the Dimension List on tape 5 with opening and
closing blocks. RJ IG IGI puts the Constant List on tape 5. RJ BU BUI
references a BX subroutine to build an excess-three symbol list of single-valued
variables. Then the BU subroutine sends this list to tape 5 with the appropriate beginning and ending block.
RJ EG EGI rewinds the string-out input tape and the generation-routine
tapes and moves backward on tape 5 until the reader head is positioned just
before the entry blocks of the Op File I data.
RJ BE BEl gives the termination print-out for generation and provides
the option of interruption or continuation of the UNICODE program.
Subsidiary subroutine TE is another name for KB during the '"End of Tape 1t
operation. TF is a list of labels and a mask. EW is a subroutine which adds
Z's to a title block and transfers it to tape and contains a portion which
puts List I on tape. IW is a subroutine which takes any length list and adds
it to tape, computing the number of blocks and adding at the end an "End of
Entry" block.
1178
RJ BV BV1 is an instruction within TE which in turn references regions
BM, BN, and BO and computes the value of 14.
Explanation of FS, a region of 7 temporaries used during operation of IW,
is given in annotated form following the print-out of the Reco coding.
1179
End of Tape - Generation - Flow Chart
A1
Transfer "End of Tape"
generator from drum
to core
~
Op File to storage
Compute tape 5 data
"End of Entry" to bufcode word, store in 14, ~ fer region
I and print alarm, if needed
~
~
Fill Op File buffer
region with zt s
Final Op File 1
block to tape 5
1
Put data of 5-17 in
buffer region
"End of Entry" block
to tape holding generated routines
"End of Entry" block
to tape 5
DlMENS and (6) to 1st
2 lines of buffer
region
~
E---
~
2 blocks of Z's to
gen. routine tape
List I put
on tape 5
Block to tape 5
~
LIST I and content of
5 to 1st 2 lines of
buffer region
Block
IE-- put on tape 5
Dimension list to
tape 5
"End of Entry"
block to tape 5
1180
CONS~A
and (10) to
region. Block
to tape 5. Constant
List to tape 5. "End
of Entry" block to
tape 5.
buff~r
Build excess-three
symbol list of singlevalued variables
Jump to UNICODE
control routine
in drum to start
set-up segmentation
.....
.....
co
.....
No
Rewind all tapes
and c:omputer
stop
SYMBOL and (7) to
buffer region
Block to tape 5. Symbol
list to tape 5. End of
Entry block to tape 5.
Rewind string-out input
tape. Rewind generation
routine tape. Move
back tape 5 to beginning of Op File.
Print-out: END OF GENERATION. TO INTERRUPT
COMPILATION SET A NOT=
O. START.
Construct Code Word For Tape Data (Word 14)
Bits
#
B1ks Constant Pool
List
.....
.....
co
N
1-26}
#
15-2if
Blks Symbol List
Is v portion of
word + # blocks
symbol list
~ 2500(10)?
Read List Indicator Bits from Location 12
#
B1ks Corrected Problem +
#
B1ks Op File 1 +
#
Blks List I +
#
B1ks Dimension List +
Blks Constant Pool
#
Warning. Uniservo data
will exceed 2500
blocks. Attempt being
made to continue
compilation
End of Tape--Generation
Regions
Generation Subroutine regions are also needed for assembly of this tape.
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
RE
TE2512
TF2565
EW2573
IW2610
IG2675
UG2713
EG2732
BE2750
BU2774
BX3012
BV3052
BM3104
BN3123
803154
FS3214
BZ3223
BW4223
BY2777
1183
End of Tape -- Generation
(See Control Generation Routine (CG77-lll) for control portion of these
End-of-Tape Subroutines.)
IA
o
MJ
1
2
TP
ZJ
3
4
AT
TV
5
6
7
10
TE
o
ES
30000
A
TE3
RCI
TE16
A
TEl1
TP
SS
GP5
A
ES
17
AT
GP4
A
TU
RP
TP
TP
RJ
RA
RJ
A
10000
GP2
RC
GT2
ES5
TEll
TE13
30000
GT3
GT
GPlO
BV
BV1
TF
TFI
30013
NP
NPI
TE23
NP2
TE25
NP15
GT
GPlO
44
TP
TP
RP
TP
RP
TP
RJ
RA
TP
TP
RP
TP
TP
RJ
RA
TP
TP
RJ
RA
RJ
RA
TP
45
TP
46
TP
47
QT
50
51
52
ZJ
RJ
MJ
TF2
TF5
5
TE51
EW4
11
12
13
14
15
16
17
20
21
22
23
24
25
26
27
30
31
32
33
34
35
36
37
40
41
42
43
CA
5
10153
GP2
GT2
ES5
TF
TFI
10166
GP2
RC4
GT2
ES6
GP2
GP2
GT2
FS6
GT2
E56
ES5
o
Exit
Entry
A
Last block of Op File 1 filled with
ZI S and transferred to tape 5
To set up code tape data word 14 and test
length of data to go on Uniservo 5
End of entry block of Op File 1with data
on 5-17 goes to Uniservo 5
GN
GNI
TE33
GN2
GT3
GT
GPlO
GN
GNI
GT
GPlO
GT
GPIO
FS5
NP
Q
NPI
TE
End of entry block of subroutines for
Uniservo 4 or 7
2 blocks of Z's following subroutines
on tape 4 or 7
Setting up counter of blocks from beginning
of Op File on in tape 5
Start of transfer of List I to tape 5
EW
EW5
TE53
1184
IA
30
1 01
2 46
3 26
4 27
o
5
0
CA
o
1
2
3
4
IA
RP
TP
TP
RJ
MJ
5 TP
6 TP
7
QT
10 RJ
11 TP
12 RA
13 MJ
14 0
CA
TF
50270
30506
34656
51506
34473
7777
TF6
15131
65473
60104
56624
05065
EW
10166
GP2
RC
GT2
:~
EW14
GP3
5
IW
FS
;rOOOO
IW64
Q
FS2
IWI
FS4
To finish transferring List I of library
routine call words to tape 5
FS5
FS4
TE
Adding in no. blocks of Library List I to
accumulative block counter
o
o
o
END60F
~ENTRY
LIST&
CONSTA
DIMENS
Mask
o
GT3
j'
Subroutine to fill a block containing 2
title lines with lines of zt s and transfer
to tape 5
No. of blocks of library list goes to FS4
LN
EW15
Subroutine Used to Transfer a List
to Tape
IA
MJ
1 TP
IW
GPlO
30000
FS
TP
3 TJ
IW64
GP6
FS2
GP5
IW64
~W20
~W35
o
2
4
List in
Drum
TP
5 TJ
6 SP
7 TV
10 RP
11 TP
12 TP
13 RJ
14 RA
15 RS
16 RA
o
30170
30000
RC
GT2
FS
FS2
IW64
17
IWll
IW12
NP
GT3
GT
GPlO
GP5
GP5
17 MJ
o
IW4
20 TP
21 TJ
FS2
GP5
A
A
}
}
Exit
Entry. Starting count of number of blocks
with 1
Is list located in drum or core?
Is l70>no. lines left in list? If so, go to
partial-block portion
Setting up transfer line for block transfer
}
Transferring block lines to buffer in core
}
Writing I block on tape
Counting number of blocks
Subtracting no. lines transferred from FS2
Increasing address to next line to be
transferred
Jump back to continue transferring data,
}
Is 170>no. lines left in list? If so, go to
partial block portion
}
-Illookby block, to tape
r
IW35
1185
List in
Core
Partial
Block
to
Tape 5
after
Filling
With Zs
22
23
24
25
26
27
30
31
32
33
34
35
36
GP5
DV
TP
TP
SS
AT
A
TV
RJ
RA
MP
AT
TP
ZJ
SA
~~ ~~
41
42
43
44
45
46
47
TU
RP
TP
TP
55
TO
FSI
GPIO
RC
IW64
Gr2
FS
FSI
IW64
FS2
IW36
GP6
A
IW64
A
30000
30000
GP5
FS2
A
RA
IW52
50
TV
FS2
51
52
53
54
55
56
End of {57
Entry
60
Block
61
62
63
64
RA
RP
TP
TP
RJ
RA
TP
TP
RJ
RA
MJ
0
IW53
10000
GP2
RC
GT2
FS
TF
TFI
EW4
FS
CA
IW65
o
o
No. of whole blocks to be transferred ~FSI
Remainder ~ FS2
FSI
FS2
A
25
GT3
GT3
}
Setting up parameter and transferring
no. whole blocks of list to tape
in one reference to tape handler
GT
FSI
GP5
IW64
}
A
IW57
17
IW42
17
IW43
IW44
NP
Upping block count
Updating address for next line to be
transferred
No. lines left in list~A
Setting up repeat lines to transfer remainder ·of data to NP
}
}
Transferring data to NP
A
17
IW52
GP4
IW53
ReI
IW54 }
30000
~3
}
GPIO
NP
NPI
}
Calculating number of Z lines needed and
setting up repeat lines accordingly
Transferring Z lines to buffer region to
fill up block
Transferring final block to tape
Upping block count
END !J.OF } to terminatIng
.
!J.ENTRY
block
Block to tape
Upping block count of list
EW
GPIO
IW
o
Input line holds address of 1st line of
list in v
Routine to Put List of Constants on Tape 5
IA
MJ
ITP
o
2
ZJ
3 TP
4 TP
5 RJ
6 TP
7 TP
10 QT
IG
o
30000
803
IG3
A
TF3
10
EW4
IGl5
GP3
10
NP
NPI
IG
}
EW
IW64
Q
FS2
}
Exit
Entry
If 803 is zero, the list of constants is
nonexistent
CONSTA to title line of block
Counter to 2nd line of 1st blockette of block
Sends 1st block to tape (title block)
Sends input line to subroutine
Masks out no. of words of constants to FS2
1186
11
12
13
14
RJ
TP
RA
MJ
IW
FS
FS5
1~
n
v
n
v
CA
IG16
.L (A) its o.k. exit
(u) not> (A) print warning: WARNING.
UNISERVO 5 DATA WILL EXCEED 2500 BLOCKS.
ATTEMPT BEING MADE TO CONTINUE COMPILATION.
Exit
'I
0
0
77777
170
0
0
0
0
0
1
2
0
0
3
4705
21
03450
16750
47051
72466
44646
63030
00303
12645
12466
26601
03201
00166
10101
15066
00126
44624
02277
14v
}
UI~uJ.
0
0
0
0
~
Mask
Wordsa 1 b1k
Constant pool
Dimension List
Symbol List
Corr. probe + (ES5) + 1
Temp.
Label + end
Mask
Mask
Remainder + label + end
250010 + 1
Parameter for print
WARNIN
GAllUN
ISERVO
~5LIDAT
A~WILL
~EXCEE
D~2500
~BLOCK
S .1l()'AT
TEMPT~
BEING~
MAD~T
O~~~~~
~b.CONT
INUE()'C
OMPILA
TION.
1191
Temporary Region FS
0
1
2
3
4
5
6
Number of blocks of any List transferred to tape
Number of full blocks of a list transferred
Number of lines in partial block or first-number of lines in list
Number of blocks of constants on tape
Number of blocks of Library List on tape
Number of blocks accumulative back to beginning of Op File 1
Number of blocks of Dimension List
1192
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.3 Linearized : No XMP Toolkit : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37 Create Date : 2004:08:06 20:49:57-07:00 Modify Date : 2009:10:01 06:49:02-07:00 Metadata Date : 2009:10:01 06:49:02-07:00 Producer : Adobe Acrobat 9.13 Paper Capture Plug-in Format : application/pdf Document ID : uuid:f3ab3fb7-f409-47f9-8848-1a5bd7285a12 Instance ID : uuid:03bd96c7-6cb4-4999-ae54-4570e79ae989 Page Layout : SinglePage Page Mode : UseOutlines Page Count : 632EXIF Metadata provided by EXIF.tools