                                                                                        harmony compiler  phase 1  _  10/30/62

/Form A-31276490732-3a/20

0/

start
              
               
               
                                                                                                                                                                                                                                                                                                                                                                macros  _ 1/6/62  (as amended by Acts of 1/15/62 and 4/30/62)

	define	load A	lac A	termin

	define	store A	dac A	termin

	define	addi A	add A	termin

	define	goto T	jmp T	termin

	define	govia P	jmp i P	termin

	define	subt A	sub A	termin

	define	zero A	dzm A	termin

	define	step1 J	idx J	termin

	define	call S	jda S	termin

	define	band U	and U	termin

	define	halt	hlt	termin

	define	clear	cla	termin

	define	comple	cma	termin

	define	halve	sar 1s	termin

	define	x2to1	ral 1s	termin

	define	x2to6	ral 6s	termin

	define	x2to7	ral 7s	termin

	define	x2to3	ral 3s	termin

	define	exit P	jmp	termin

	define	move A,B	lac A	dac B	termin

	define	sett A,B	lac (B	dac A	termin

	define	trze T	sza i	jmp T	termin

	define	trnz T	sza	jmp T	termin

	define	trpl T	sma	jmp T	termin

	define	trmi T	spa	jmp T	termin

	define	trel A,T	sad A	jmp T	termin

	define	trnl A,T	sas A	jmp T	termin
          
                                                                
	define	write P	law P	jda wr	termin

	define	type Q	lio Q	tyo	termin

	define	ftrel A,T	trel A,T	termin

	define	compla U	lac (U	jda er	termin

	define	error U	lac (U	jda er1	termin

	define	lookup V
		add (V	dap .+1	lac	termin

	define	feed N	law i N	jda fee	termin

	define	step J, I
		lac J	add I	dac J	termin

	define	stepa J, I
		law I	add J	dac J	termin

	define	istepa J, I
		law i I	add J	dac J	termin

	define	grow A, V, C
		lac A	add (V	dac C	termin

	define	tles C, T
		sub C	spa	jmp T	termin

	define	tlesc C, T
		sub (C	spa	jmp T	termin

	define	tgrel C, T
		sub C	sma	jmp T	termin

	define	tgrec C, T
		sub (C	sma+sza-skp	jmp T	termin

	define	test0 Y, Z
		lac Y	sza i	jmp Z	termin

	define	test1 Y, Z
		lac Y	sza	jmp Z	termin

	define	testp Y, Z
		lac Y	sma	jmp Z	termin

	define	testm Y, Z
		lac Y	spa	jmp Z	termin
          
                                                                
	define	testel Y, Z, A
		lac Y	sad Z	jmp A	termin

	define	testnl Y, Z, A
		lac Y	sas Z	jmp A	termin

	define	halfof V
		lac V	sar 1s	dac V	termin

	define	double Q
		lac Q	ral 1s	dac Q	termin

	define	dispat U
		add (U	dap .+1	jmp i	termin

	define	diswit L, U
		add (U	dap .+2	lac L	jmp i	termin

	define	putback U, Q
		add (U	dap .+2	lac Q	dac	termin

	define	answer X
		0	dap X	lac .-2	termin

	define	x10dec
		ral 1s	dac t1	ral 2s	add t1	termin

	define	copy H, I, N
		law H	dap .+3	law I	dap .+2
		lac	dac	idx .-2	idx .-2
		sas (dac I+N	jmp .-5	termin

	define	search W, N, ERR
		dac t1	law W	dap .+2	lac t1
		sad	jmp .+5	idx .-2	sas (sad W+N
		jmp .-5	jmp ERR	lac .-6	add (-sad-W
		termin

	define	print F
		lac F
		repeat 3	rcl 6s	tyo
		termin
          
                                                                / wr, rp, fee, ppp, rpr

wr,	0
	dap wre
wr1,	print i wre
	idx wre
	sas wr
	jmp wr1
wrx,	jmp i wre
wre,	0

rpr,	0
	rrb
	rpa-i
	dap .+1
	jmp

rp,	0
	dap rtx
rt2,	cks
	ril 1s
	spi i
	jmp rt2
	rrb
	rpa-i
	dio t1
	rcr 7s
	spa
	jmp rt2
	law 1000
	add t1
	dap .+2
	law 2525
	670000	/rar
	sma
	jmp rtb
	law 77
	and t1
	sad (77
	cla
	sad (36
	cla
	sad (13
	jmp rt2
rtx,	jmp
rtb,	lac t1
	sza
	hlt
	jmp rt2
          
                                                                
fee,	0
	dap fex
	cli
	lat
	and (700
	sad (700
	jmp fex
	ppa
	isp fee
	jmp .-2
fex,	jmp

ppp,	0
	dap pup
	lio ppp
	lat
	and (700
	sad (700
	jmp pup
	ppb
	ril 6s
	ppb
	ril 6s
	ppb
pup,	jmp

start
          
                                                                                                                                                                                                                                                                                                                                                                                                                            /ap, cr, sbc, snl, rcw, rrc, rch, er, er1, red, blk, eh

u,	halt
ap,	zero lmb
	call rpr
	sett bc, -1
	store nl
	sett mjp, -2

pf,	sett ft, fb

pg,	call rp		/read title

	store chr
	load ft
	putback f, chr
	testnl chr, (21, pg1

xp,	sett pfu, pfr
	sett emp, fb
	sett tc, -1
	goto erf

pg1,	step1 ft
	trnl (fl, pg
hap,	goto rrz

pfr,	zero 1u
	zero 3u
	sett irl, -1
	zero tll
	zero ft
	sett fi, 1
	store sid
	zero rob
	zero gi
	zero gis
	zero ao
	zero tc
	zero mm
	zero ss
	sett rb, 1
	store tbc
	sett tim, -1
	sett st, 26
	goto pum		/copies nt.kt.mt, goes to s1


cr,	answer crx
	type (77
crx,	exit cr

                       
                                 
sbc,	answer sbx
	step1 tbc
	step1 bc
	addi nl
	tgrec all, s3x
	load bc
	complement
sbx,	exit sbc


snl,	answer swx
	step1 nl
	addi bc
	tgrec all, s3x
	load nl
swx,	exit snl

                       
                                                   
rcw,	answer rwx
	load fi
rwx,	exit rcw

rrc,	answer rrx
	move fl2, fi
	store fl1
rrx,	exit rrc


rch,	answer rcx
	load ft
	tgrel fi, rcf
	sett mbh, fb
	store fi
	store ft
	store fl1
	store fl2
	sett bgs, 1

rcy,	call rp		/read body

	store ch
	trnl (74, rcc

rcu,	call rp		/read comment

	trnl (72, rcu
	goto rcy

rcc,	load ch
	trze rc1
	trel (21, rc1
	clear
	goto rc2
rc1,	load (1
rc2,	store pp
	load ft
	putback f, ch
	step1 ft
	tlesc fw, rcs
	load ft
	tlesc fl, rce
	goto rrz
rce,	load ch
	trel (21, rfc
rcs,	load bgs
	diswith ch, rdt
                 
                                                       
rdt,	rd0	rd1	rd2	rd3	rd4

rd0,	trze rda
	trnl (21, rdp
rda,	sett bgs, 1
	goto rcy
rd1,	trnl (65, rdp
	sett bgs, 2
	goto rcy
rd2,	trnl (45, rdp
	sett bgs, 3
	goto rcy
rd3,	trnl (64, rdp
	sett bgs, 4
	goto rcy
rd4,	trze rfc
	trel (21, rfc
rdp,	move pp, bgs
	goto rcy

rfc,	istepa ft, 1
rcf,	load fi
	lookup f
	store ch
	step1 fi
	load ch
	trze rf1
	trel (21, rf1
	move fl1, fl2
	goto rff
rf1,	move fi, fl1

rff,	load ch
rcx,	exit rch

                    
                                                       /error

er,	answer erx
	store arg
	sett uin, 1
	goto erc
er1,	answer ery
	store arg
	sett uin, -1

erc,	sett pfu, ec3
ert,	load mjp
	tgrec -2, erq
	call red
	write erq
	text /
To err is human---to forgive, divine.

/
erq,	call blk
	testnl mjp, bc, erk
	testel tjp, tc, ec
erk,	move mbh, emp

erf,	zero blc
	sett etc, 1
	load emp

err,	lookup f
	store chy
	trze et1
	trel (21, ec0
	type chy
	goto etr

et1,	step1 etc
	subt tc
	trze et2
	trnl (1, et4
	call blk
	goto et4
et2,	call red
et4,	load blc
	tlesc 100, ets
	call cr
	zero blc
	goto eti
ets,	type (0
etr,	step1 blc
eti,	step1 emp
	goto err
                      
                                                         
ec0,	call blk
	type (21
	call cr

ec,	govia pfu
ec3,	type (36
	testp uin, ec1
	call red
ec1,	print arg
	call blk
ec2,	call cr
	move bc, mjp
	move tc, tjp
	testp uin, erx
ery,	exit er1
erx,	exit er

                        
                                                          /red, black, eh

red,	answer rex
	testm rb, rex
	type (35
	sett rb, -1
rex,	exit red


blk,	answer blx
	testp rb, blx
	type (34
	sett rb, +1
blx,	exit blk


s1y,
s1z,	error flexo tmf
	goto te
s1x,	error flexo tff
	goto te
s1w,	error flexo unc
	goto te
s1v,	error flexo ert
	goto te

s3x,	call cr
	write eha
	text /Table overflow.  Subdivide source program./
eha,	call cr
	goto u
rrz,	call cr
	write rry
	text /Measure has too many characters.  Rearrange tape./
rry,	goto eha

pcz,	error flexo nps
	test0 chr, te
pz2,	call rch
	store chr
	trze pz3
	trnl (21, pz2
pz3,	move chr, trm
	goto te

start
                                              
                            
           
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     /scan 1, cn, scan 2

s1,	zero ldl
	zero ucd
	zero num
	zero psi
	zero chi
	zero g
	zero r
	zero cm
	sett fc, 40
	sett fu, 100

s10,	call rch
	store chr
	trze s11
	tgrec 20, s11
s12,	step1 psi
	test1 ldl, s13
	sett ldl, 1
s13,	testnl chr, (20, s14
	clear
s14,	store dig
	load num
	x10dec
	addi dig
	store num
	goto s10

s11,	test0 ldl, s15
	zero ldl
	test0 ucd, s17
	tgrec 1, s16
	move num, n2
	goto s16
s17,	move num, n1
	store n2
	zero num
s16,	step1 ucd

s15,	test0 chr, s18
	trel (21, s18
	step1 chi
	step1 psi
	load chr
	ftrel (73, s19
	ftrel (27, s1a
	ftrel (51, s1b
	ftrel (67, s1c
	trel (33, s1d
	goto s10
                     
                                                       
s19,	move fc, fu
s1a,	halfof fc
	goto s10

s1b,	step1 r
	goto s10
s1c,	step1 g
	goto s10
s1d,	step1 cm
	goto s10

s18,	step1 tc
	move chr, trm
	test0 psi, te
	load ucd
	addi cm
	trze pc
	test1 chi, s1e
	test1 ao, ps
	testel n1, tbc, te
	complaint flexo bbl
	goto te

s1e,	zero ao
	load r
	tlesc 2, s1f
	complaint flexo tmr
	sett r, 1
s1f,	load g
	tlesc 2, s1g
	complaint flexo tmg
	sett g, 1
s1g,	load cm
	tlesc 2, s1h
	complaint flexo tmc
	sett cm, 1

s1h,	load cm
	addi r
	addi ucd
	tgrec 2, s1y
	test1 cm,s1s
	load r
	addi g
	addi ucd
	subt (2
	trmi s1x
	trnz s1t
	test0 g, s1t
	sett rt, 1
	goto sli
                
                                                        
s1s,	sett rt, 2
	goto sli

s1t,	zero rt
sli,	test1 r, s1k
	test1 ucd, s1j
	load (2
	goto s1l
s1j,	clear
	goto s1l
s1k,	test1 sid, sk1
	load nl
	lookup not
	band (117777
	addi (400000
	store t1
	load nl
	putback not, t1
sk1,	load (1
s1l,	store lt
	test0 rt, s1n
	tgrec 1, s1m
	sett tim, 2
	goto s1o

s1m,	testm tim, s1w
	goto s1o

s1n,	sett tim, 100
	sett t2, 1
	move n2, t1
	trze s1v
	tgrec 100, s1v

s1q,	halfof t1
	trze s1p
	halfof tim
	halfof fu
	double t2
	goto s1q

s1p,	testnl n2, t2, s1v
	test1 fu, s1o
	complaint flexo dtu

s1o,	load tim
	halve
	store fc
	goto s2
                    
                                                                                                                            /scan 2

s2,	zero fu
	zero sr
	zero 3i
	zero si
	zero aci
	zero acc
	zero et
	zero ete
	call rrc

s20,	call rch
	store chr
	trze s21
	tgrec 20, s21
	goto s20

s21,	load chr
	search s2z, 25, s20
	dispatch s2y

s2b,	sett sv, 200000
	goto s2a
s2c,	sett sv, 400000
	goto s2a
2sr,	sett sv, 20000
	goto s2a
2ss,	sett sv, 40000
	goto s2a
s2d,	zero sv
s2a,	stepa si, 1
	goto s20
s2e,	stepa sr, 14
	goto s20
s2f,	istepa sr, 14
	goto s20
s2g,	sett 3i, 100000
	goto s20
s2h,	testm aci, s24
	step1 acc
	goto s25
s2i,	testm aci, s24
	istepa acc, 1
s25,	sett aci, 1
	goto s20
s24,	complaint flexo nor
	goto s20
s2j,	testel aci, (1, s26
                      
                                                         
s27,	sett aci, -1
	goto s20
s26,	complaint flexo nor
	zero acc
	goto s27

s2k,	load (1
	goto s28
s2l,	load (2
	goto s28
s2m,	load (3
	goto s28
s2n,	load (4
	goto s28
s2o,	load (5
	goto s28
s38,	load (6
s28,	store et
	test0 ete, s29
	complaint flexo tme
s29,	move et, ete
	goto s20

s2p,	step fu, fc
s2q,	halfof fc
	goto s20

s2r,	test0 si, s51
	trel (1, s52
	complaint flexo tms

s51,	move ss, sv
s52,	test1 cm, s69
	move 3i, ccc
	test1 g, 2s1
	zero gi

2s3,	load tim
	addi fu
	store nft
	test0 rob, s2s
	load nft
	subt rob
	store nft
	tlesc 2, 2s2
	zero rob
	goto s2s

2s2,	move nls, nl
	zero rob
	complaint flexo itg
	goto 2s3

2s1,	move tim, nft
	step rob, tim
	sett gi, 1
	goto s2s
                 
                                                     
s69,	test1 3i, s2t
	move ccc, 3i

s2t,	test0 fu, 2s4
	complaint flexo tic

2s4,	test1 g, 2s1
	zero gi

s2s,	test0 lt, s2u
	tgrec 1, s2v
	load aci
	addi ete
	trze s2w
	complaint flex air
s2w,	sett tne, 200
	goto s70

s2u,	load n1
	addi sr
	addi st
	store ton
	trmi s40
	tlesc 44, s2v
s40,	complaint flexo uat
	goto s2w
s2v,	test0 aci, s31
	load ton
	lookup nt
	addi acc
	store t1
	tlesc 2, s41
	load t1
	tlesc 77, s42
s41,	complaint flexo aor
	goto s2w
s42,	load ton
	putback mt, t1

s31,	load ton
	lookup mt
	addi tll
	store tne
	tlesc 2, s40
	load tne
	tgrec 76, s40
	load tne
	x2to7
	store tne
s30,	test0 ete, s70
	test0 3i, s71
s72,	complaint flexo etr
	goto s70
                   
                                                    
s71,	load ete
	lookup ebl-1
	subt nft
	trze s99
	complement
s99,	store ex
	trpl s73

s79,	complaint flexo eit
	goto s70

s73,	load ton
	addi (1
	lookup mt
	addi tll
	store tnf
	tlesc 2, s39
	load tnf
	tgrec 76, s39
	load tnf
	x2to7
	store tnf
	load ton
	subt (1
	lookup mt
	addi tll
	store tnd
	tlesc 2, s39
	load tnd
	tgrec 76, s39
	load tnd
	x2to7
	store tnd
	load ete
	dispatch ebd-1

s81,	load (2
	addi tne
	call cn
	load (2
	addi tnd
	call cn
	goto s75

s82,	zero cut
	goto s76
                   
                                                   
s83,	sett cut, 4
s76,	load nft
	band (3
	trnz s79
s77,	load nft
	subt cut
	trze s78
	load (2
	addi tnf
	call cn
	load (2
	addi tne
	call cn
	stepa cut, 4
	goto s77

s84,	load (400002
	addi tnf
	call cn
	load (400002
	addi tne
	call cn

	load (400002
	addi tnd
	call cn
	goto s75

s85,	load (2
	addi tne
	call cn
	goto s83

s86,	load (1
	addi tnf
	call cn
	load (1
	addi tne
	call cn
	load (1
	addi tnf
	call cn

s75,	load ex
	addi (2
	addi tne
	addi sv
	call cn
	goto s32
                     
                                                                                                                          
s78,	load ete
	dispatch ebe-1

s93,	load (2
	addi tnd
	call cn
	load (2
	addi tne
	call cn
	goto s32

s95,	load (2
	addi tnf
	call cn
	goto s32

cn,	answer cnx
	store nf
	call snl
	putback not, nf
cnx,	exit cn


s39,	complaint flexo eor

s70,	load nft
	addi tne
	addi sv
	addi 3i
	call cn
	test0 gi, 2sa
	test1 gis, 2sb
	sett gis, 1
	grow nl, -1, nls
	goto 2sb

2sa,	zero gis
2sb,	test0 3i, s32
	load nft
	x2to1
	store tu
	goto s33

s32,	load nft
	store tu
	x2to1
	addi tu
	store tu
s33,	step mm, tu
	move si, sid
	goto te
                       
                                                    
s2z,	22	/s
	43	/l
	65	/e
	61	/a
	62	/b
	63	/c
	57	/( +
	54	/-
	55	/) =
	64	/d
	44	/m
	45	/n
	47	/p
	24	/u
	26	/w
	73	/.
	27	/x
	21	// |
	00	/ space
	50	/q
	70	/h

s2z+25,
s2y,	s2b	s2c	s2d	s2e	s2f	s2g
	s2h	s2i	s2j	s2k	s2l	s2m
	s38	s2n	s2o	s2p	s2q	s2r
	s2r	2sr	2ss

s2y+25,
ebl,	6	/d
	4	/m
	10	/n
	10	/u
	4	/w
	5	/p

ebl+6,
ebd,	s81	s82	s83	s84	s85	s86

ebd+6,
ebe,	s32	s32	s93	s32	s95	s32

ebe+6,

start
                                          
                      
                        
                                                                                                                                                                                                                                                                                                                                                                                                          /terminator, pseudos

te,	test0 trm, s1
	sett sid, 1
	zero tc
	testel mm, 3u, te1
	zero tjp
	load mm
	tles 3u, te9
	complaint flexo mtl
	goto te1
te9,	complaint flexo mts

te1,	test0 rob, te0
	complaint flexo itg
	zero rob
	zero gi
	zero gis
	move nls, nl
te0,	load (600000
	call cn

teb,	call sbc
	putback bar, lmb
	grow nl, 1, lmb
	zero mm
	call rcw
	store mbh
	zero ao
	sett pfu, s1
	goto pue


pc,	zero tht
pcr,	zero ucl
	step1 tht
	tgrec npi, pcz
	load tht
	lookup pnm-1
	store zet
	call rrc

pc2,	call rch
	store chr
	trze pc3
	trnl (21, pc4
	zero chr
pc3,	sett ucl, 1
pc4,	load zet
	lookup 0
	trnl chr, pcr
	test1 ucl, pc9
	step1 zet
	goto pc2
pc9,	load tht
	dispatch pcd-1
                    
                                                      
pcd,	pv1	pv2	pv3	pv4	pv5	pv6
	pv7	pv8	pv9	pva	pvb	pvc
	pvd	pve	pvf	pvg	pvh
pnm,	pn1	pn2	pn3	pn4	pn5	pn6
	pn7	pn8	pn9	pna	pnb	pnc
	pnd	pne	pnf	png	pnh

pn1,	22	0
pn2,	43	0
pn3,	65	0
pn4,	65	45	64	0
pn5,	62	61	22	22	0
pn6,	23	51	65	62	43	65
	0
pn7,	23	65	45	46	51	0
pn8,	61	43	23	46	0
pn9,	24	45	71	23	22	0
pna,	42	65	30	0
pnb,	51	65	22	23	0
pnc,	63	46	47	30	0
pnd,	24	47	0
pne,	64	46	26	45	0
pnf,	70	0
png,	50	0
pnh,	23	65	44	47	46	0

ps,	govia psw

pv1,	sett ss, 200000	/s
	goto psr
pv2,	sett ss, 400000	/l
	goto psr
pv3,	zero ss		/e
	goto psr
pvf,	sett ss, 40000	/h
	goto psr
pvg,	sett ss, 20000	/q
	goto psr

pv5,	sett st, 12	/bass
	goto psr
pv6,	sett st, 26	/treble
	goto psr
pv7,	sett st, 20	/tenor
	goto psr
pv8,	sett st, 22	/alto
	goto psr
                        
                                                          
pv9,	sett ao, 1	/units
	sett psw, p9a
	goto te
p9a,	load n1
	store 1u
	x2to1
	addi n1
	x2to1
	store 3u
	sett irl, -1

psr,	zero ao
	goto te

pv4,	call sbc		/end
	putback bar, (600000
	feed 400
	step1 nl
	call ppp	/no. of notes
	zero t2
	zero t3
p41,	load t3
	lookup not
	store t1
	call ppp	/note entry
	step t2, t1
	step1 t3
	trnl nl, p41
	load t2
	call ppp	/+checksum
	feed 6
	step1 bc
	call ppp	/no. of bars
	zero t2
	zero t3
p42,	load t3
	complement
	lookup bar
	store t1
	call ppp	/bar entry
	step t2, t1
	step1 t3
	trnl bc, p42
	load t2
	call ppp	/+checksum
	feed 300
	goto u


pvh,	sett ao, 1	/tempo
	sett psw, pha
	goto te
pha,	load n1
	addi (700000
	call cn
	goto psr
                   
                             
key,
pva,	call rch		/key
	trze pva
	ftrel (55, pum
	ftrel (57, pus
	trel (54, puf
	call rrc
	goto s1

pum,	sett pfu, s1
pun,	copy nt, kt, 44
pue,	copy kt, mt, 44
	govia pfu

pus,	sett pfu, put
	goto puh
puf,	sett pfu, pug
puh,	sett psw, pun
	sett ao, 1
	goto s1

put,	sett acc, 1
	sett aci, 4
	sett tne, 3
	goto puw
pug,	sett acc, -1
	sett aci, 3
	sett tne, 6

puw,	test0 n1, pw2
	move tne, ton

pw1,	load ton
	lookup nt
	addi acc
	store t4
	load ton
	putback kt, t4
	stepa ton, 7
	tlesc 44, pw1
	istepa n1, 1
	step tne, aci
	tlesc 7, puw
	istepa tne,7
	goto puw

pw2,	sett pfu, psr
	goto pue
                     
                                                      
pvb,	sett ao, 1	/rest
	test0 mm, pb2
	error flexo ilr
	goto i1a

pb2,	sett psw, pb1
	goto te
pb1,	test0 n1, psr
	testp irl, pb3
	load 1u
	addi (100
	x2to1
	store t1
	call snl
	store irl
	putback not, t1
	call snl
	putback not, (600000
	grow nl, 1, lmb

pb3,	call sbc
	putback bar, irl
	istepa n1, 1
	trnz pb3
	goto psr

pvd,	sett ao, 1	/up
	sett psw, pd1
	goto te
pd1,	move n1, tll
	goto psr


pve,	sett ao, 1	/down
	sett psw,pe1
	goto te
pe1,	load n1
	trze pe2
	complement
pe2,	store tll
	goto psr
                          
                                                     

pvc,	sett ao, 2	/copy
	test0 mm, cow
	error flexo ilc
i2a,	sett psw, i1a
	goto te
i1a,
co1,	sett psw, psr
	goto te

cow,	sett psw, co2
	goto te

co2,	move n1, cbh
	trze co3
	tles tbc, co4
co3,	error flexo blc
	goto i1a
co4,	sett psw, co5
	goto te

co5,	load n1
	tgrel cbh, co7
co6,	error flexo brc
	goto psr

co7,	istepa cbh, 1
co8,	load cbh
	complement
	lookup bar
	store t4
	call sbc
	putback bar, t4
	step1 cbh
	tles n1, co8
	goto psr

start
                 
                                  
             
                                         7                                                                                                                                                                                                                                                                                                                                            /temporary^2 storage

ldl,	0	/s1, s2_. preceding char. numeric? 1/yes, 0/no.
ucd,	0	/s1_. number of num. fields read
num,	0	/s1, rin_. value of num. field
n1,	0	/s1_. first number
n2,	0	/s1_. last number of 1 or 2
psi,	0	/s1_. character count
chi,	0	/s1_. non-numeric char. count
fc,	0	/s1, s2_. fraction status
fu,	0	/s1, s2_. fraction used
g,	0	/s1_. count of g's
r,	0	/s1_. count of r's
cm,	0	/s1_. count of commas
rt,	0	/s1_. right indicator_. 0/num, 1/g, 2/cm.
lt,	0	/s1_. left indicator_. 0/num, 1/r, 2/cm.
tim,	0	/s1_. running time
trm,	0	/s1_. terminator
ao,	0	/ps_. arguments outstanding
bc,	0	/te_. bar count
tbc,	0	/sbc_. bar count within tape
tc,	0	/s1_. terminator count within measure
chr,	0	/s1, s2, pc, ri_. character read
dig,	0	/s1_. digit read
ss,	0	/s2_. running status of sle indicator
sv,	0	/s2_. value of ss for particular note
sr,	0	/s2_. staff reloc. count
st,	0	/s2_. staff location (0=subbass)
3i,	0	/s2_. triplet ind._. 0/no, 100000/yes.
aci,	0	/s2_. accid. ind._. 0/none, 1/sharp or flat, -1/natural.
		/key_. spacing
acc,	0	/s2, key_. accid. count
et,	0	/s2_. embell. temp.
ete,	0	/s2_. embell. terminal
nf,	0	/cn_. note forming
ton,	0	/s2, key_. tone pointer to staff (mt)_, note changing
tne,	0	/s2, key_. tone pointer to table_, letter changing
tnd,	0	/s2_. tne-1 for embell.
tnf,	0	/s2_. tne+1 for embell.
nl,	0	/s2_. note location in not
nft,	0	/s2_. note formed, time part
ex,	0	/s2_. time for sustained note
cut,	0	/s2_. time not available to trill loop
mm,	0	/s2_. unitsx3 used in measure to date
tu,	0	/s2_. unitsx3 used by current note
1u,	0	/ps_. 1xunits
3u,	0	/ps_. 3xunits
mbh,	0	/rch_. pointer to beginning of measure in .f
lmb,	0	/te_. last measure starting index in not
tht,	0	/pc_. index of pseudo under investigation
zet,	0	/pc_. character position in pseudos
ucl,	0	/pc_. switch internal to pc
bgm,	0	/pc_. another switch
rn,	0	/rnd_. random number
psw,	0	/ps_. switch for return with argument
              
                                                                            
sid,	0	/s2_. si delayed
ccc,	0	/s2_. triplet status of last non-comma note
nls,	0	/s2_. nl saved
rob,	0	/s2_. time desired by grace notes
gi,	0	/s2_. grace note indicator
gis,	0	/s2_. gi saved
tll,	0	/pvd, pve_. transposition semitone count
pfu,	0	/pf, key_. identity check for title_, switch_. sh. or fl.
si,	0	/s2_. 0/no sle in note_, 1/sle
cbh,	0	/pvc_. copy begins here
irl,	0	/pvb_. is rest location?
np,	0	/pf_. no. of parts
rii,	0	/ri_. index on read
rij,	0	/ri_. index on write or compare
riw,	0	/ri_. switch for compare or write
bgs,	0	/rch_. "end" counter
fi,	0	/rch_. .f index
ft,	0	/rch_. .f top
pp,	0	/rch_. saves character
ch,	0	/rch_. character from tape
fl1,	0	/rch_. location in .f of last terminator
fl2,	0	/rch_. loc. in .f of last termin. before new word
chy,	0	/er_. charac. from .f to be printed
arg,	0	/er_. flexo name of error
uin,	0	/er_. internal switch
etc,	0	/er_. internal terminator count
blc,	0	/er_. bell count
mjp,	0	/er_. last measure having error
tjp,	0	/er_. termin. count in meas. for last error
emp,	0	/er_. internal index on .f
rb,	0	/red, blk_. +1 black, -1 red.
t1,	0
t2,	0
t3,	0
t4,	0

constants

mt=.-100	kt=mt+44	nt=kt+44

nt/	2	4	6	 7	11	13
	15	16	20	22	23	25
	27	31	32	34	36	37
	41	43	45	46	50	52
	53	55	57	61	62	64
	66	67	71	73	75	76


	bar=7750
f=0	fb=.	foo=105	fw=fb+400	fl=fw+200
not=fl+1	all=bar-not-1	npi=pn1-pnm	11a=not
11b=bar	11c=u



start u
                                      
                              
                         
                                        
