fc TAPE 22-103-5    H PETERSON  BOOLEAN FUNCTION GENERATOR (ARC SINE) (TCB)
OCTAL
(24,6)
ca0
cf1000
srh3
ck1
cf107	|program was read into c f 1
ck0
cf107
ex 0
slh3
ck1
cf107	|program was read into c f 1
ck0
cf107
ad5b9	
tsb2-1	|set to return to these program feilds
ts1b8
ca1b9
tsb8
ca1b9
ts1b1	|reset clear program
ca0
tsb9	|reset inputs
si10	|ff reset
ca24
sfb14	|set so largest input is one increment short of pi/2
ca3
clc24
td1b4	|amount output is to be rounded
td2b4
ca3
clc4
cpb15	|ones generator| zero generator--
ca0
b16,ts6b9
ca3
md7b9
td1b5	|column being generated
cf101
b1,cab11	|make table empty
1b1,ts2000+
ao1b1
su4b9
cpb1
-1b2,cf100+
b2,ca0
ts3774	|minor part of mantissa
cab9
b14,slr0+
sf3b9
ts3773	|major part of mantissa
cs3b9
ts3772	|scale factor
IN
ispb13	|sine subroutine
idv53b13
OUT
cs3772
tdb3	|sf of sine
ca3773
sa1	|check if rounding would loose most significant bit
cs0
cpb12


ca3773
b3,srr0+
dm0
cpb11	|if zero make a postive zero
ab0	|restore
b4,clc0	|clead BR
1b4,srr0+
2b4,slr0+
dm0	|did rounding make number zero
cpb10	|yes--  no |
ab0
b5,sd6b9	|leave alone if ones desired compliment if zeros desired
1b5,clc0+
cpb7	|store in table-- omit |
b6,aob9	|next input
su24	|all inputs checked
cpb2	|n0 --  yes |
si1	|conditional stop
sps1
b7,cab9
cf101
b8,ts2000
1b8,cf100+
aob8
td4c1
spb6
b9,si0	|input
ts2000	|start of table
si40	|start of reduction program
si0	|scale factor
ts3777	|end of table
cf100	|restore to proper feilds
si0	|0 if ones generator  1s if zero generator
si17	|mask
b10,cs0	|make out put all ones
spb5
b11,ca0	|be sure zero is a plus zero
spb5
b12,ca3774
srh17	|round bit 15 if next bit was a 1
ad3773
srr0
spb3
b15,cs0	|mask for zero generator
spb16
DECIMAL
b13,
{61}t=c3
LSR FU 6a ARC SINE
za1={61}c3	za2={61}2c3	za3={61}4c3
0,ita26r	itsza3	icp47r	3,imr29r	iad31r	imrza3	iad33r	imrza3	iad35r	imrza3
iad37r	imrza3	iad39r	imrza3	iad41r	itsza1	ica27r	isuza3	isp52r	imrza1	iad43r
imr45r	itsza3	ica27r	its45r	icaza3	26,isp	27,+1.	29,-.0022959648	31,+0.0111462294
33,-.0268999482	35,+.0488025043	37,-.0887556286	39,+.2145852647	41,-1.5707961728	43,+1.570796327
45,+1.	47,ics27r	its45r	icsza3	itsza3	isp3r
52,
0r,ita26r	its+za3	OUT	ca2043	dm0	cp25r	ab0	cp0
ao2042	srh1	ts2042	sp12r	ta22r	IN	its+za2	ica+za3	idv+za2
iad+za2	OUT	ca2042	su1	ts2042	sp	sp12r	sp12r	IN
isp
END OF SUBROUTINE
{61}c3,o
DITTO
8r|0
OCTAL
START AT 40
{67}