                          
MULTI-PRECISION PACKAGE 4-3-62

	n=4	m=24
	xy=1

100/	0
an,	dap pdl
	sub (1		/135
	dap an1
	idx an
	sad (dap pdl+m
	hlt
	lac 100
an1,	jmp i xy

any,	lac t2
	dac 100

anx,	law i 1
	add an
	dac an
	szf 5
	jmp an2
an3,	lac 100
	jmp i an

an2,	clf 5
	idx i an
	jmp an3

	0
pdl,	repeat m, jmp .
                
                                                                             
adu,	cal mu
	jmp ad
adl,	cal ml
	jmp ad
adb,	cal mb
ad,	dap ad1		/100n+200
ad2,	law xy		/ac OR mq
	dap ad6
ad0,	lac i ad6
ad1,	add xy		/y
	spa
	jmp ada
ad6,	dac xy		/ac
	idx ad1
	idx ad6
	sas adt
	jmp ad0
	lac i ad6
	jmp adj
adt,	dac xy		/ac+n-1 OR mq+n-1

adc,	law 1
	add i ad6
	spa
	jmp ad7
	add i ad1
	sma
	jmp ad6
ada,	and (377777
	dac i ad6
	idx ad1
	idx ad6
	sas adt
	jmp adc
	lac i ad6
	add one
	spa
	cla
adj,	add i ad1
	and (377777
	dac adk
	xor i ad6
	ral 1s
	sma
	jmp ad8
	lac i ad6
	xor i ad1
	ral 1s
	sma
	stf 6
ad8,	lac adk
	dac i ad6
	jmp anx

adk,	0

ad7,	lac i ad1
	jmp ada+1
         
                                                                                                                 
sbu,	cal mu
	jmp sb
sbl,	cal ml
	jmp sb
sbb,	cal mb
sb,	dap sb1		/110n+190
	lac ad2
	dap sb6
sbc,	lac i sb6
sb1,	sub xy		/y
	spa
	jmp sbn
sb6,	dac xy		/ac
	idx sb1
	idx sb6
	sas adt
	jmp sbc
sbk,	lac (400000
	jmp sbo

sbn,	add (400000
	jmp sb2

sba,	lac i sb6
	sub i sb1
	sma
	jmp sbp
	and (377777
sb2,	dac i sb6
	idx sb1
	idx sb6
	sas adt
	jmp sba
sbj,	lac (377777
sbo,	sub i sb1
	spa
	cla
	add i sb6
	and (377777
	dac adk
sbq,	xor i sb6
	ral 1s
	sma
	jmp sb8
	lac i sb6
	xor i sb1
	ral 1s
	spa
	stf 6
sb8,	lac adk
	szf 5
	jmp km2
	dac i sb6
	jmp anx

sbp,	sub (1
	sma
	jmp sb6
	rar 1s
	jmp sb2

           
                                                                                                                             
kmu,	cal mu
	jmp km
kml,	cal ml
	jmp km
kmb,	cal mb
km,	dap sb1
	stf 5
	stf 4
	lac ad2
	dap sb6
km6,	lac i sb6
	sub i sb1
	spa
	jmp km3
	sza
km1,	clf 4
	idx sb1
	idx sb6
	sas adt
	jmp km6
	jmp sbk

kma,	lac i sb6
	sub i sb1
	sma
	jmp kmp
km3,	clf 4
	idx sb1
	idx sb6
	sas adt
	jmp kma
	jmp sbj

kmp,	sub (1
	sma
	jmp km1
	jmp km3

km2,	ral 1s
	spa
	clf 5
	sza
	clf 4
	jmp anx


sru,	cal mu
	jmp sr
srl,	cal ml
	jmp sr
srb,	cal mb
sr,	lio i adt	/90n+200
	ril 1s
	sir 1s
	lac adt		/ac+n-1 OR mq+n-1
	jmp sr3

cru,	cal mu
	jmp cr
crl,	cal ml
	jmp cr
crb,	cal mb
cr,			/90n+280
	lio i ad2	/ac OR mq
	lac stt		/ac+n OR mq+n
	jmp sr3

sr1,	lac xy-1
	ral 1s
	rcl 8s
	rcl 9s
sr2,	dac xy
	lac sr1
sr3,	dap sr2
	sad srt
	jmp anx
	sub (1
	dap sr1
	jmp sr1
srt,	lac xy		/ac-1 OR mq-1

             
                                                                                 
slu,	cal mu
	jmp sl
sll,	cal ml
	jmp sl
slb,	cal mb
sl,	lac ad2
	jmp ad

cmu,	cal mu
	jmp cm
cml,	cal ml
	jmp cm
cmb,	cal mb
cm,	lac ad2
	dap cm1
cm3,	lac (400000
	sub i cm1
	sma
	jmp cm2
	cla
	dac i cm1
	idx cm1
	sas stt
	jmp cm3
	jmp anx

cm1,	lac .
	cma
	and (377777
cm2,	dac i cm1
	idx cm1
	sas stt
	jmp cm1
	jmp anx

clu,	cal mu
	jmp cl
cll,	cal ml
	jmp cl
clb,	cal mb
cl,	law zer
	jmp ld

               
                                                                                                                                                  
stu,	cal mu
	jmp st
stl,	cal ml
	jmp st
stb,	cal mb
st,	dap st1		/55n+170
	lac ad2		/mq OR ac
	dap st2
st2,	lac xy
st1,	dac xy
	idx st1
	idx st2
	sas stt
	jmp st2
	jmp anx
stt,	lac xy		/mq+n OR ac+n

ldu,	cal mu
	jmp ld
ldl,	cal ml
	jmp ld
ldb,	cal mb
ld,	dap ld1		/55n+170
	lac ad2		/mq OR ac
	dap ld2
ld1,	lac xy
ld2,	dac xy
	idx ld1
	idx ld2
	sas ldt
	jmp ld1
ldx,	jmp anx
ldt,	dac xy		/mq+n OR ac+n

swu,	cal mu
	jmp sw
swl,	cal ml
	jmp sw
swb,	cal mb
sw,	dap sw1		/85n+170
	lac ad2
	dap sw2
sw1,	lio .
sw2,	lac .
	dac i sw1
	dio i sw2
	idx sw1
	idx sw2
	sas stt
	jmp sw1
	jmp anx

             
                                                                                                                 
smu,	cal mu
	jmp sm
sml,	cal ml
	jmp sm
smb,	cal mb
sm,			/195
	lac i adt	/ac+n-1 OR mq+n-1
	ral 1s
	spa
	stf 5
	jmp anx

spu,	cal mu
	jmp sp
spl,	cal ml
	jmp sp
spb,	cal mb
sp,	lac i adt	/200
	ral 1s
	sma
	stf 5
	jmp anx

szu,	cal mu
	jmp sz
szl,	cal ml
	jmp sz
szb,	cal mb
sz,	lac ad2		/40n+195 (zero)
	dap sz2
sz2,	lac xy
	sza
	jmp anx
	idx sz2
	sas stt
	jmp sz2
	stf 5
	jmp anx

nzu,	cal mu
	jmp nz
nzl,	cal ml
	jmp nz
nzb,	cal mb
nz,	cal sz		/40n+370
	stf 5
	jmp anx

                
                                                                                                                                
mu,	law ac		/260
mu1,	clf 5
mu2,	dap ad2
	sub (1
	dap srt
	dap ott
	add (n+1
	szf 5
	add (n
	dap stt
	dap ldt
	dap xtt
	sub (1
	dap adt
	clf 5
mux,	jmp anx

ml,	law mq		/265
	jmp mu1

mb,	law mq
	stf 5
	jmp mu2		/275

            
                                                                                         
mpy,	dac t2
	cal ldu
	clf 2
	cal sp
	jmp mp8
	cal sml
	jmp mpw
	stf 2
	cal cml
mpw,	law tem
	dap mp0
	cal stb
	cal cl
	add (n
	dap mp1
	jmp mpv

mp1,	lac xy		/tem+n
	dac t
mp0,	lio xy		/tem
	cla
	repeat 21, mus t
	rir 1s
	swap
	dio t
mp3,	add xy		/ac
	spa
	jmp mp2
	dac i mp3
	idx mp3
	dap mp6
	lac t
mp4,	add i mp3
	spa
	jmp mp5
	dac i mp3
mp7,	idx mp0
	sas (lio tem+n
	jmp mp1
	law tem
	dap mp0
	idx mp1
mpv,	add (mq-tem-n	/450nn+60n+35
	dap mp3
	sas (lac mq+n
	jmp mp1
	szf 2
	cal cm
	jmp any
                    
                                                                       
mp2,	and (377777
	dac i mp3
	idx mp3
	dap mp6
	idx t
	sma
	jmp mp4
	jmp mp9

mp5,	and (377777
	dac i mp3
	jmp mp9

mp6,	idx xy
	sma
	jmp mp7
	dzm i mp6
mp9,	idx mp6
	sas (idx ac+n
	jmp mp6
	jmp mp7

mp8,	cal cmu
	cal spl
	jmp mpw-1
	stf 2
	jmp mpw

mpz,	stf 2
	cal cml
	jmp mpw

          
                                                                                  
	17n=n	repe 20,17n=17n+n

div,	clf 3
	szf 6
	jmp anx
	dac t2
	law tem
	cal stl
	lac t2
	cal ld
	lac ac+n-1
	xor mq+n-1
	ral 1s
	spa
	stf 3
	lac t2
	cal spl
	cal cm
	law tem
	cal sw
	cal mb
	cal mg
	law tem
	cal sbu
	cal sm
	jmp dv6
	cal ad
	setup t, 17n
dv3,	law tem
	cal slb
	cal sbu
	cal sp
	jmp dv1
dv4,	idx mq
	isp t
	jmp dv3
dv5,	clf 6
	szf 3 i
dvx,	jmp any
	lac t2
	cal cmu
	cal cml
	jmp anx

dv6,	cal ad
	stf 6
mrb,	cal mb
	jmp mr

dv2,	law tem
	cal slb
	cal adu
	cal sm
	jmp dv4
dv1,	isp t
	jmp dv2
	law tem
	cal ad
	jmp dv5
               
                                                                                
rnd,	dac t2
	szf 6
	jmp anx
	cal dv5
	cal slu
	szf 6
	jmp rn3
	law tem
	cal sb
	cal sp
	jmp rn2
rn3,	clf 6
	law one
	cal adl
rn2,	cal clu
	szf 3
	cal cmb
	jmp any

sqr,	dac t2
	law tm2
	cal stb
	cal nzu
	jmp sq2
	law tnt
	cal ld
sq3,	law tm3
	cal st
sq1,	law tm2
	cal ldb
	law tm3
	cal div
	cal adl
	cal ldu
	cal srl
	cal st
	cal sbu
	cal sz
	jmp sq1
	cal ld
	jmp any

sq2,	cal srl
	jmp sq3

                   
                                                          
xtu,	cal mu
	jmp xt
xtl,	cal ml
	jmp xt
xtb,	cal mb
xt,	lac ad2		/120n+235
	dap xt1
	dzm adk
xt0,	lio ten
	lac adk
	rcr 1s
xt1,	mus .
	rcr 1s
	mus i xt1
	rcr 9s
	rcr 4s
	rir 1s
	dio i xt1
	4c adk
	idx xt1
	sas xtt
	jmp xt0
	lac 100
	cal sp
	jmp ota-1
	lac adk
	sza i
	jmp anx
	stf 6
ota,	lac adt
	dap ot1
	lac adk
	jmp ot1

xtt,	mus .		/ac+n OR mq+n

                 
                                                         
mgu,	cal mu
	jmp mg
mgl,	cal ml
	jmp mg
mgb,	cal mb
mg,	clf 2
	cal sp
	stf 2
mr,	szf 2
	cal cm
	jmp anx

mru,	cal mu
	jmp mr
mrl,	cal ml
	jmp mr

otu,	cal mu
	jmp ot
otl,	cal ml
	jmp ot
otb,	cal mb
ot,	lac adt		/295n+190
	dap ot1
	cla
	jmp ot1

ot2,	cla
	rcl 9s
	rcl 8s
ot1,	lio .
	ril 1s
	sub ten
	repe 22, dis ten
	dio i ot1
	add ten
	swap
	law i 1
	add ot1
	dac ot1
	sas ott
	jmp ot2
	cla
	rcr 1s
	dio rem
	jmp anx
ott,	lio .		/mq-1 OR ac-1
rem,	0

ten,	12

            
                                                                      
lx,	sma
	jmp anx
	cal mg
lx1,	cal xt
	szf 6
	jmp mr
	isp 100
	jmp lx1
	jmp mr

rx,	sma
	jmp anx
	cal mg
rx1,	cal ot
	isp 100
	jmp rx1
	jmp mr


ri,ri2,	listen
ri3,	dio 100
	lac 100
	sza i
	jmp anx
	sub (20
	szm
	jmp anx
	lac 100
	cal xt
	and (17
	dac zer
	law zer
	cal ad
	dzm zer
	jmp ri2

          
                                                                                     
tz,	clf 7
	dac t2
	law tem
	cal st
	law one
	cal ld
	dzm tzk
tz6,	idx tzk
	law tem
	cal xt
	szf 6
	jmp tz7
	cal km
	jmp tz6
	jmp any

tz7,	lac tzk
	sas tk1
	jmp tz8
	law tnt
	jmp ld

tz8,	lac tk2
	dac tzk
	law tnq
	jmp ld

           
                                                          
tz0,	law tem
	cal sw
tz2,	law tem
	cal sb
	cal sm
	jmp tz1
	cal ad
	lac zer
	sza
	jmp tz3
	law 20
tz4,	szf 1
	cal ou
	dzm zer
	jmp any

tx,	dac t2
	law tem
	cal sw
	cal ot
	lac i ad2
	sad one
	stf 1
	jmp any

tz1,	idx zer
	jmp tz2

tz5,	law char r.
tz3,	stf 1
	jmp tz4

tzk,	0

              
                                                            
tou,	cal mu
	jmp to
tol,	cal ml
	jmp to
tob,	cal mb
to,	cal tz
to1,	cal tz0
to2,	cal tx
	cal sz
	jmp to1
to3,	jmp anx

typ,	cal sm
	jmp ty6
	cal cm
tym,	dac tyj
	law char r-
tyl,	cal ou
	lac tyj
	jmp any+1
ty6,	jmp anx

tys,	cal typ
	cal to
tyc,	dac tyj
	law 77
	jmp tyl

tyj,	0

         
                                                                                                       
/common tyo-ppa routine

ou,	dac ouk
	and (77
	szs 60
	jmp ou9
ou5,	clf 1
	sas out
	cal ou0
	cal ou4
ou3,	cal ou7
	lac ouk
	jmp any+1

ou9,	stf 1
	sas oup
	cal ou0
	cal ou8
	jmp ou3

ou8,	sas (72
	sad (74
	dac oup
	jmp anx

ou7,	sas (72
	sad (74
	dac ouc
	jmp anx

ou0,	cal ou4
	add (ral
	dac ou1
	law 252
ou1,	xx
	and (200
	add ou1
	dac ou1

ou2,	cks
	ril 2s
	szf 1
	ril 2s
	spi i
	jmp ou2
	lio ou1
	szf 1
	ppa-i
	szf i 1
	tyo-i
	jmp anx

out,	72
oup,	72
ou4,	sas (72
	sad (74
	dac out
	jmp anx

ouk,	0
ouc,	72

            
                                                                                       
	const

tk2,	0
tnq,	repe n+n,	0
tk1,	0
tnt,	repe n,		0
one,	1
zer,	repe n+n,	0
t2,	0
t,	0
	0
	mq,
mq+n/	ac,
ac+n/	tem,
tem+n+n/	tm2,
tm2+n+n/	tm3,
tm3+n+n/	obl,

               
                                                                                  
pw,	dap pw1
	dzm pwt
pw1,	law .
	cal st
	cal xt
	szf 6
	jmp pw2
	idx pwt
	jmp pw1

pw2,	lac pwt
	jmp any+1

pc,	law one
	clf 7
	cal ldl
	law tnt
	cal pw
	clf 7
	dac tk1
	cal clu
	law tnt
	cal ldl
	cal mb
	law tnq
	cal pw
	clf 7
	add tk1
	dac tk2
	jmp 7751

pwt,	0

	start pc

             
                                                                                                                                                            
