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 PDF.
Page Count: 632

DownloadPX1790_unicod Cmp Tec V2_Apr61 PX1790 Unicod V2 Apr61
Open PDF In BrowserView 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 

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

>

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?



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                      : 632
EXIF Metadata provided by
EXIF.tools

Navigation menu