;:poke56,117:clr
;:sys36864
	;.opt oo
picmem	=$c000
tmp	=2
print	=$ffd2
setcr	=$e56c
farb	=646
spalte	=211
zeile	=214
return	=$aad7
col1	=53280
col2	=col1+1
home	=$e566
tmp2	=tmp+2
axout	=$bdcd
cr	=13
getkey	=65508
clrx	=$e9ff
rvs	=199
tab1	=2
tab2	=17
spri	=704
vic	=$d000
ptr	=2040
vicinit	=65409
irqvec	=$314
rpt	=650
adrx	=$e9f0
bild	=$d1
latch	=820
vc	=vic+17
setnam	=$ffbd
setpar	=$ffba
close	=$ffc3
open	=$ffc0
saver	=$ffd8
loadr	=$ffd5
tast	=198
clrchn	=$ffcc
chkin	=$ffc6
flop	=8
input	=$ffcf
sa	=$b9
ioflag	=$9d
fnlen	=$b7
status	=$90
blank	=$ab3f
chkout	=$ffc9
sid	=vic+$400
	*= 30000
	jmp init
	jmp init2
symb	.byte "\x12 \xaa\x11\x9d\x9d\xaf\xba\x91"
	.byt 0
syart1	.byte "\x12 \xaa\x11\x9d\x9d\xaf\xba"
syart2	.byte "\x12  \x11\x9d\x9d  "
syart3	.byte "\x92\xac\xbb\x11\x9d\x9d\xbc\xbe"
sytab	.word syart1,syart2,syart3
info	.byte "-_wp"
grbit	.byt 1,2,4,8,$10,$20,$40
grbit2	.byt $fe,$fd,$fb,$f7,$ef,$df,$bf
mem	.byt 0
mem2	.byt 0
spflag	.byt 0
edx	.byt 0
edy	.byt 0
spsp	.byt 0
temp	.byt 0
ed	.word 0
runp	.word 0
flag	.byt 0
richt	.byt 0
speed	.byt 0
tmp3	.word 0
far1	.byt 7
far0	.byt 9
tit	.byte "\x08\x93\x12\x9a  === programmierbare lichterwand ===  "
	.byt 0
mentxt	.byte "\x92\x1e - menue -"
	.byt cr
	.byte "\x11 \x9a(e) \x9eedit            \x9a(r) \x9estart"
	.byt cr
	.byte " \x9a(l) \x9emuster laden    \x9a(s) \x9espeichern"
	.byt cr
	.byte " \x9a(x) \x9eende            \x9a(d) \x9edirectory"
	.byt cr
	.byte " \x9a(b) \x9edisk befehl     \x9a(f) \x9eanz.format"
	.byt 0
waehl	.byte "          -- bitte waehlen --          "
	.byt 0
surtxt	.byte "sind sie sicher ? [j/n]                "
	.byt 0
matxt	.byte "dieses (m)uster oder (a)lle ? [m/a]    "
	.byt 0
ta	.byte "druecken sie bitte eine taste !        "
	.byt 0
edtxt	.byte "\x92\x1e - edit -"
	.byt cr
	.byte "\x11 \x9a\x12x\x92    \x9ezurueck      \x9a\x12l\x92    \x9eloeschen"
	.byt cr
	.byte " \x12\x9ai\x92    \x9einvertieren  \x9a\x12crsr\x92 \x9ecursor"
	.byt cr
	.byte " \x9a\x12home\x92 \x9ehome         \x12\x9aclr\x92  \x9eanfang"
	.byt cr
	.byte " \x9a\x12+\x92    \x9evor          \x9a\x12-\x92    \x9ezurueck"
	.byt 0
edt2	.byte "\x13\x11\x11\x11"
	.byt cr
	.byte "\x10}\x9a\x12<\x92 \x9e-10      \x9a\x12>\x92 \x9e+10"
	.byt cr
	.byte "\x10}\x9a\x12[\x92 \x9ep.loesch \x9a\x12]\x92 \x9ep.setzen"
	.byt cr
	.byte "\x10}\x9a\x12w\x92 \x9eroll auf \x9a\x12z\x92 \x9eroll ab"
	.byt cr
	.byte "\x10}\x9a\x12a\x92 \x9er.links  \x9a\x12s\x92 \x9er.rechts"
	.byt cr
	.byte "\x10}\x9a\x12c\x92 \x9eletztes holen"
	.byt cr
	.byte "\x10}\x9a\x12_\x92 \x9e= \x12+\x92 + \x12c"
	.byt cr
	.byte "\x10}\x9a\x12del\x92  \x9eausfuegen"
	.byt cr
	.byte "\x10}\x9a\x12inst\x92 \x9eeinfuegen"
	.byt cr
	.byte "\x10}\x9a\x12h\x92 \x9ehochziehen"
	.byt cr
	.byte "\x10}\x9a\x12n\x92 \x9einfo"
	.byt 0
fitxt	.byte ": filename ? \x05"
	.byt 0
lodtxt	.byte "\x92\x9claden"
	.byt 0
savtxt	.byte "\x92\x9cspeichern"
	.byt 0
runtxt	.byte "\x92\x1e - start -\x11"
	.byt cr
	.byte "\x9a (x) \x9eende        \x9a(+)\x9e geschw. hoch"
	.byt cr
	.byte "\x9a (v) \x9evon vorn    \x9a(-)\x9e geschw. runter"
	.byt cr
	.byte "\x9a (r) \x9erichtung    \x99geschw.:"
	.byt 0
dirtxt	.byt cr
	.byte "\x99\x11files auf der disk \x12"
	.byt 0
disk	.byte "\x92\x9bdisk befehl eingeben: \x05i0\x9d\x9d"
	.byt 0
noerr	.byt cr
	.byte "\x9e** kein fehler **"
	.byt 0
fotxt	.byte "\x92\x1e - anzeigeformat -\x11"
	.byt cr
	.byte "\x9a (x) \x9eende     \x9a(n)\x9e normal"
	.byt cr
	.byte "\x9a (1) \x9enormal, mit trennlinien"
	.byt cr
	.byte "\x9a (2) \x9evoll     \x9a(i)\x9e farbe 1"
	.byt cr
	.byte "\x9a (3) \x9emini     \x9a(o)\x9e farbe 0"
	.byt 0
copr	.byte "\x13\x11\x11\x11"
	.byt cr
	.byte "\x10}\x98programmiert von"
	.byt cr
	.byte "\x10}nicki heusler"
	.byt cr
	.byte "\x10}5. - 9. mai 1986"
	.byt cr
	.byte "\x11\x10}(c) nig software"
	.byt cr
	.byte "\x10}    service n.s.s."
	.byt cr
	.byte "\x10}all rights reserved"
	.byt cr
	.byte "\x10}version 1.5"
	.byt 0
file	.byte "lig."
name	.byte "------------"
i	.byte "i0"
dirchr	.byte "$0:lig.????????????"
menchr	.byte "fexrslbd"
	.byt 0
menadr	.word form,edit,exit,run,save,load,befehl,dir
edchr	.byte "xil\x11\x91\x1d\x9d\x13\x93+-,.:;wzasc_\x94hn"
	.byt 20,0
edadr	.word back,edinv,edclr,down,up,right,left
	.word hom,shom,vor,rueck,mi10,pl10,reset,set
	.word roauf,roab,roli,rore,last,next,insert,hochz
	.word setinf,delete
strout	sta tmp
	sty tmp+1
	ldy #0
s0	lda (tmp),y
	beq s1
	cmp #"\x10}"
	beq s3
	jsr print
s2	inc tmp
	bne s0
	inc tmp+1
	bne s0
s1	rts
s3	lda #tab2
	sta spalte
	jsr setcr
	ldy #0
	beq s2
adrxa	sei
	and #1
	pha
	lda #0
	stx tmp2
	sta tmp2+1
	ldx #3
a0	asl tmp2
	rol tmp2+1
	dex
	bne a0
	lda tmp2+1
	clc
	adc #>picmem
	sta tmp2+1
	pla
	beq a1
	lda tmp2+1
	clc
	adc #8
	sta tmp2+1
a1	cli
	rts
outxa	pha
	tay
	txa
	pha
	tya
	jsr adrxa
	jsr home
	jsr irqaus
	sei
	ldy #-1
o0	tya
	pha
	txa
	pha
	jsr return
	jsr return
	lda #tab1
	sta spalte
	jsr setcr
	pla
	tax
	pla
	tay
	iny
	cpy #7
	bcs o1
	sty mem
	ldx #7
o2	dex
	bmi o0
	stx mem2
	lda (tmp2),y
	and grbit,x
	beq o3
	lda far1
	bne o9
o3	lda far0
o9	sta farb
	lda #<symb
	ldy #>symb
	jsr strout
	ldx mem2
	ldy mem
	clc
	bcc o2
o1	lda #tab1+15
	sta spalte
	lda #2
	sta zeile
	jsr setcr
	lda #10
	sta farb
	lda #"#"
	jsr print
	pla
	tax
	pla
	jsr axout
	ldx #2
o8	jsr blank
	dex
	bne o8
	lda #15
	sta zeile
	lda #tab2
	sta spalte
	jsr setcr
	ldy #7
	lda (tmp2),y
	tay
	lda info,y
	jsr print
	jmp setirq
clrmen	ldx #17
clmn	jsr clrx
	inx
	cpx #24
	bcc clmn
	ldx #17
zeilx	stx zeile
	ldx #0
	stx spalte
	jmp setcr
get	jsr getkey
	beq get
	rts
clear	lda #<picmem
	ldy #>picmem
	sta tmp
	sty tmp+1
	ldy #0
	ldx #16
cl	sta (tmp),y
	iny
	bne cl
	inc tmp+1
	dex
	bne cl
	rts
invert	lda #<picmem
	ldy #>picmem
	sta tmp
	sty tmp+1
	ldy #0
	ldx #16
in	lda (tmp),y
	eor #-1
	sta (tmp),y
	iny
	bne in
	inc tmp+1
	dex
	bne in
	rts
getmen	lda #<waehl
	ldy #>waehl
	jsr statout
	jmp get
statout	pha
	tya
	pha
	lda #1
	sta rvs
	ldx #24
	jsr clrx
	jsr zeilx
	lda #12
	sta farb
	pla
	tay
	pla
	jmp strout
screen	jsr vicinit
	lda #0
	sta col1
	sta col2
	lda #<tit
	ldy #>tit
	jsr strout
	ldx #63
	lda #0
sc0	sta spri,x
	dex
	bpl sc0
	lda #255
	sta spri
	lda #128
	sta spri+1
	ldx #3
	ldy #7
sc1	lda #128
	sta spri,x
	lda #128
	sta spri+1,x
	inx
	inx
	inx
	dey
	bne sc1
	lda #255
	sta spri+24
	lda #128
	sta spri+25
	lda #1
	sta vic+23
	sta vic+29
	lda #11
	sta ptr
setirq	lda irqvec+1
	cmp #>irq
	beq deja
	sta oldirq+2
	lda irqvec
	sta oldirq+1
	lda #<irq
	ldy #>irq
irqset	sei
	sta irqvec
	sty irqvec+1
deja	lda #1
	sta spsp
	cli
	rts
irqaus	lda oldirq+1
	ldy oldirq+2
	bne irqset
irq	bit spflag
	bmi an
	lda #0
	sta vic+21
	beq oldirq
an	lda #1
	sta vic+21
	ldx #4
	lda edx
iq0	asl
	dex
	bne iq0
	clc
	adc #38
	sta vic
	ldx #4
	lda edy
iq1	asl
	dex
	bne iq1
	clc
	adc #64
	sta vic+1
	jsr blink
oldirq	jmp 0
blink	dec spsp
	bne iq2
	lda #5
	sta spsp
	inc vic+39
iq2	rts
sure	lda #<surtxt
	ldy #>surtxt
	jsr statout
su0	jsr get
	cmp #"n"
	beq no
	cmp #"j"
	beq ja
	cmp #"y"
	bne su0
ja	sec
	rts
no	clc
	rts
mual	lda #<matxt
	ldy #>matxt
	jsr statout
mu0	jsr get
	cmp #"a"
	beq all
	cmp #"m"
	bne mu0
	sec
	rts
all	clc
	rts
showed	ldx ed
	lda ed+1
	jmp outxa
adred	ldx ed
	lda ed+1
	jmp adrxa
clred	ldx #3
ce0	jsr adrx
	ldy #39
	lda #" "
ce1	sta (bild),y
	dey
	cpy #tab2
	bcs ce1
	inx
	cpx #15
	bcc ce0
	rts
taste	lda #<ta
	ldy #>ta
	jsr statout
	lda #0
	sta tast
	jsr get
clrstat	ldx #24
	jmp clrx
error	jsr sidinit
	lda #9
	sta sid+5
	lda #240
	sta sid+6
	lda #15
	sta sid+24
	sei
	ldx #0
	ldy #0
	inc col1
	lda #17
	sta sid+4
er0	dex
	bne er0
	inc col2
	sty sid+1
	dey
	dey
	bne er0
	dec col1
	cli
sidinit	lda #0
	ldx #24
si	sta sid,x
	dex
	bpl si
	rts
norm	lda #7
	sta far1
	lda #9
	sta far0
	lda sytab
	sta tmp
	lda sytab+1
	sta tmp+1
	ldy #0
	ldx #syart2-syart1
no0	lda (tmp),y
	sta symb,y
	iny
	dex
	bne no0
	rts
run	jsr clrmen
	lda #<runtxt
	ldy #>runtxt
	jsr strout
ru5	lda #0
	sta runp
	sta runp+1
	jmp ru8
ru0	lda runp+1
	ldx runp
	jsr outxa
	jsr pause
	lda richt
	beq ru1
	lda runp
	sec
	sbc #1
	sta runp
	lda runp+1
	sbc #0
	sta runp+1
	jmp ru2
ru1	inc runp
	bne ru2
	inc runp+1
ru2	lda runp+1
	and #1
	sta runp+1
	jsr control
	jsr getkey
	beq ru0
	cmp #"x"
	bne ru3
	rts
ru3	cmp #"r"
	bne ru4
	lda richt
	eor #-1
	sta richt
	jmp ru0
ru4	cmp #"v"
	beq ru5
	cmp #"+"
	bne ru6
	jmp faster
ru6	cmp #"-"
	bne ru0
	jmp slower
pause	sei
	ldy #0
pa0	ldx speed
	inx
pa1	dex
	bne pa1
	dey
	bne pa0
	cli
	rts
ru8	lda #21
	sta zeile
	lda #26
	sta spalte
	jsr setcr
	lda #1
	sta farb
	lda speed
	lsr
	lsr
	lsr
	sta temp
	lda #32
	sec
	sbc temp
	tax
	lda #0
	jsr axout
	jsr blank
	jmp ru0
faster	ldx #8
fa0	jsr fa1
	dex
	bne fa0
	beq ru8
fa1	dec speed
	lda speed
	cmp #255
	bne fa2
	lda #0
	sta speed
fa2	rts
slower	ldx #8
sl0	jsr sl1
	dex
	bne sl0
	beq ru8
sl1	inc speed
	bne fa2
	lda #255
	sta speed
	rts
control	ldy #7
	lda (tmp2),y
	beq co0
	cmp #2
	bcs co1
	lda #0
	sta runp
	sta runp+1
co0	rts
co1	cmp #3
	bcs co2
	jmp pause
co2	jsr pause
	jsr pause
	jmp pause
form	jsr clrmen
	lda #<fotxt
	ldy #>fotxt
	jsr strout
fo0	jsr getmen
	cmp #"x"
	bne fo3
	rts
fo3	cmp #"i"
	bne fo4
	inc far1
	jmp fo5
fo4	cmp #"o"
	bne fo7
	inc far0
	jmp fo5
fo7	cmp #"n"
	bne fo6
	jsr norm
	jmp fo5
fo6	cmp #"1"
	bcc fo0
	cmp #"4"
	bcs fo0
	sec
	sbc #"1"
	asl
	tax
	lda sytab,x
	sta tmp
	lda sytab+1,x
	sta tmp+1
	ldy #0
	ldx #syart2-syart1
fo2	lda (tmp),y
	sta symb,y
	iny
	dex
	bne fo2
fo5	jsr showed
	jmp fo0
init	jsr clear
	jsr norm
init2	jsr screen
	lda #128
	sta rpt
	jsr shom
	jsr showed
	lda #64
	sta ioflag
	ldx #0
	stx richt
	ldx #96
	stx speed
menue	jsr clred
	lda #<copr
	ldy #>copr
	jsr strout
	jsr clrmen
	lda #<mentxt
	ldy #>mentxt
	jsr strout
	ldx #0
	stx spflag
me1	jsr getmen
	ldx #0
	sta temp
me0	lda menchr,x
	beq me1
	cmp temp
	beq me2
	inx
	bne me0
me2	txa
	asl
	tax
	lda menadr,x
	sta gt+1
	lda menadr+1,x
	sta gt+2
gt	jsr 0
	jmp menue
	rts
edit	jsr hom
	lda #-1
	sta spflag
	jsr showed
	jsr clred
	jsr clrmen
	lda #<edtxt
	ldy #>edtxt
	jsr strout
	lda #<edt2
	ldy #>edt2
	jsr strout
ed0	jsr getmen
	ldx #0
	sta temp
ed1	lda edchr,x
	beq ed0
	cmp temp
	beq ed2
	inx
	bne ed1
ed2	txa
	asl
	tax
	lda edadr,x
	sta go+1
	lda edadr+1,x
	sta go+2
go	jsr 0
	jsr showed
	jmp ed0
back	pla
	pla
	rts
edinv	jsr mual
	bcc invall
	jsr adred
	ldy #6
ed3	lda (tmp2),y
	eor #255
	sta (tmp2),y
	dey
	bpl ed3
	rts
invall	jmp invert
edclr	jsr sure
	bcc noclr
	jsr mual
	bcc clrall
	jsr adred
	ldy #7
	lda #0
ed4	sta (tmp2),y
	dey
	bpl ed4
noclr	rts
clrall	jmp clear
down	ldx edy
	cpx #6
	bcs noset
	inc edy
noset	rts
up	ldx edy
	beq noset
	dec edy
	rts
right	ldx edx
	cpx #6
	bcs noset
	inc edx
	rts
left	ldx edx
	beq noset
	dec edx
	rts
hom	lda #3
	sta edx
	sta edy
	rts
shom	lda #0
	sta ed
	sta ed+1
	beq hom
vor	inc ed
	bne noinc
	inc ed+1
	lda ed+1
	and #1
	sta ed+1
noinc	rts
rueck	dec ed
	lda ed
	cmp #-1
	bne noinc
	dec ed+1
	lda ed+1
	and #1
	sta ed+1
	rts
pl10	ldx #10
ed5	jsr vor
	dex
	bne ed5
	rts
mi10	ldx #10
ed6	jsr rueck
	dex
	bne ed6
	rts
reset	jsr adred
	ldy edy
	lda #6
	sec
	sbc edx
	tax
	lda (tmp2),y
	and grbit2,x
	sta (tmp2),y
	rts
set	jsr adred
	ldy edy
	lda #6
	sec
	sbc edx
	tax
	lda (tmp2),y
	ora grbit,x
	sta (tmp2),y
	rts
roauf	jsr adred
	ldy #0
	lda (tmp2),y
	pha
ro0	iny
	lda (tmp2),y
	dey
	sta (tmp2),y
	iny
	cpy #6
	bcc ro0
	pla
	sta (tmp2),y
	jmp up
roab	jsr adred
	ldy #6
	lda (tmp2),y
	pha
ro1	dey
	lda (tmp2),y
	iny
	sta (tmp2),y
	dey
	bne ro1
	pla
	sta (tmp2),y
	jmp down
roli	jsr adred
	ldy #6
ro2	lda (tmp2),y
	asl
	pha
	and #128
	sta temp
	beq ro3
	lda #1
	sta temp
ro3	pla
	ora temp
	and #127
	sta (tmp2),y
	dey
	bpl ro2
	jmp left
rore	jsr adred
	ldy #6
ro4	lda (tmp2),y
	and #127
	lsr
	bcc ro5
	ora #64
ro5	sta (tmp2),y
	dey
	bpl ro4
	jmp right
next	jsr vor
last	jsr rueck
	jsr adred
	ldy #6
la0	lda (tmp2),y
	sta latch,y
	dey
	bpl la0
	jsr vor
	jsr adred
	ldy #6
la1	lda latch,y
	sta (tmp2),y
	dey
	bpl la1
	rts
insert	jsr adred
	lda tmp2
	sta tmp3
	lda tmp2+1
	sta tmp3+1
	lda #<vic-8
	sta tmp2
	lda #>vic-8
	sta tmp2+1
is0	lda tmp2
	tay
	sec
	sbc #8
	sta tmp
	lda tmp2+1
	pha
	sbc #0
	sta tmp+1
	pla
	cpy tmp3
	bne is1
	cmp tmp3+1
	beq is2
is1	ldy #7
is3	lda (tmp),y
	sta (tmp2),y
	dey
	bpl is3
	lda tmp
	sta tmp2
	lda tmp+1
	sta tmp2+1
	bne is0
is2	lda #0
	ldy #7
is4	sta (tmp2),y
	dey
	bpl is4
	rts
delete	jsr adred
de0	lda tmp2+1
	cmp #>vic
	bcs de1
	lda tmp2
	clc
	adc #8
	sta tmp
	lda tmp2+1
	adc #0
	sta tmp+1
	ldy #7
de2	lda (tmp),y
	sta (tmp2),y
	dey
	bpl de2
	lda tmp
	sta tmp2
	lda tmp+1
	sta tmp2+1
	bne de0
de1	ldy #7
	lda #0
de3	sta vic-8,y
	dey
	bpl de3
	rts
hochz	jsr adred
	ldy #6
ho0	lda (tmp2),y
	and #127
	bne ho1
	dey
	bpl ho0
	jmp error
ho1	ldy #0
	lda (tmp2),y
	and #127
	bne ho2
	jsr roauf
	jmp ho1
ho2	ldy #0
	lda (tmp2),y
	and #64
	bne ho3
	jsr roli
	jmp ho2
ho3	rts
setinf	jsr adred
	ldy #7
	lda (tmp2),y
	clc
	adc #1
	cmp #4
	bcc si0
	lda #0
si0	sta (tmp2),y
	rts
exit	jsr error
	jsr sure
	bcc noexit
	pla
	pla
	jsr irqaus
	jmp vicinit
noexit	rts
finame	bcc sav
	lda #<lodtxt
	ldy #>lodtxt
	bne out
sav	lda #<savtxt
	ldy #>savtxt
out	pha
	tya
	pha
	jsr clrmen
	pla
	tay
	pla
	jsr strout
	lda #<fitxt
	ldy #>fitxt
	jsr strout
	ldx #11
	lda #" "
fi0	sta name,x
	dex
	bpl fi0
	inx
fi1	jsr input
	cmp #cr
	beq fi2
	sta name,x
	inx
	cpx #12
	bcc fi1
fi2	stx flag
	lda #16
	ldy #>file
	ldx #<file
	jsr setnam
	ldx #flop
	jmp setpar
opnerr	jsr clo15
	lda #2
	ldx #<i
	ldy #>i
	jsr setnam
	lda #15
	tay
	ldx #flop
	jsr setpar
	jmp open
geterr	ldx #15
	jsr chkin
	jsr input
	cmp #"0"
	beq ge1
	pha
	jsr error
	jsr return
	pla
	jsr print
ge0	jsr input
	jsr print
	cmp #cr
	bne ge0
	jsr clrchn
	jsr taste
	sec
	rts
ge1	jsr clrchn
	clc
	rts
clo15	lda #15
	jmp close
save	jsr opnerr
	clc
	jsr finame
	jsr clrstat
	lda flag
	beq abort
	ldx #<vic
	ldy #>vic
	lda #<picmem
	sta tmp2
	lda #>picmem
	sta tmp2+1
	lda #tmp2
	sta sa
	jsr saver
	jmp geterr
abort	jmp clo15
load	jsr opnerr
	sec
	jsr finame
	jsr clrstat
	lda flag
	beq abort
	ldx #<picmem
	ldy #>picmem
	lda #0
	sta sa
	jsr loadr
	jsr geterr
	jsr clo15
	jmp showed
befehl	jsr clrmen
	lda #<disk
	ldy #>disk
	jsr strout
	ldx #0
cm0	jsr input
	cmp #cr
	beq cm1
	sta latch,x
	inx
	bne cm0
cm1	lda #0
	sta latch,x
	jsr opnerr
	ldx #15
	jsr chkout
	lda #<latch
	ldy #>latch
	jsr strout
	jsr clrchn
	jsr geterr
	bcs cm2
	lda #<noerr
	ldy #>noerr
	jsr strout
	jsr taste
cm2	jmp clo15
dir	jsr screen
	lda #<dirtxt
	ldy #>dirtxt
	jsr strout
	jsr opnerr
	ldx #<dirchr
	ldy #>dirchr
	lda #19
	jsr setnam
	lda #6
	jsr close
	ldx #flop
	ldy #0
	lda #6
	jsr setpar
	jsr open
	jsr geterr
	bcc di0
di1	jsr clrchn
	lda #6
	jsr close
	jsr clo15
	jsr screen
	jmp showed
di0	ldx #6
	jsr chkin
	jsr suchquot
	bcs di1
di2	jsr input
	cmp #34
	beq di3
	cmp #" "
	beq di2
	jsr print
	bcc di2
di3	lda #0
	sta rvs
	lda #":"
	jsr print
	jsr return
di5	jsr return
	jsr blank
	jsr blank
	jsr such0
	jsr skip4
	jsr suchquot
	bcs di6
	jsr skip4
di4	jsr input
	cmp #34
	beq di5
	jsr print
	bcc di4
	jmp di5
di6	jsr clrchn
	jsr taste
	jmp di1
suchquot	jsr input
	cmp #34
	beq sq0
	lda status
	beq suchquot
	sec
	rts
sq0	clc
	rts
such0	jsr input
	cmp #0
	beq sq0
	lda status
	beq such0
	sec
	rts
skip4	ldx #4
sk0	jsr input
	dex
	bne sk0
	rts
