;:sys36864
	*= $c000
	;.opt oo
v	=53248
irqvec	=788
strout	=$ab1e
seil	=832
time	=162
ptr	=2040
shift	=653
ort	=704
pause	=$eeb6
	sei
	lda irqvec+1
	cmp #>neuirq
	beq sat
	sta oldirq+2
	lda irqvec
	sta oldirq+1
	lda #<neuirq
	ldy #>neuirq
	sta irqvec
	sty irqvec+1
	lda #255
	sta flag
	lda #2
	sta flag+1
	lda #<alive
	ldy #>alive
	jmp strout
sat	rts
alive	.byt 13
	.byte "something wonderful has happened: your"
	.byt 13
	.byte "c 64 is alive !\x11"
	brk
anzfad	brk
rnd1	.byt 123
rnd2	.byt 54
kon	brk
byt	brk
flag	.word 257
count	.byt 1
speed	.byt 1
gogo	.byt 1
fadtab	.byt 3,7,15,31,63,127
coltab	.byt 1,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0
push	.byt 254,253,251,247,239,223,191,127
neuirq	jsr irq
oldirq	jmp $ea31
init	lda #0
	sta anzfad
	ldx #127
clrspr	sta seil,x
	dex
	bpl clrspr
rand	jsr rnd
	cmp #8
	bcc rand
	cmp #168
	bcs rand
	asl
	pha
	bcs set
	lda #0
	.byt $2c
set	lda #-1
	sta v+16
	pla
	ldx #12
setx	sta v,x
	dex
	dex
	bpl setx
	jsr tausch
	lda #32
	sta v+1
	ldx #11
	lda #240
sety	sta v+2,x
	sec
	sbc #40
	dex
	dex
	bpl sety
	lda #254
	sta v+23
	lda #11
	sta ptr
	lda #13
	ldx #5
setrest	sta ptr+1,x
	dex
	bpl setrest
	jsr makerest
	lda #0
	sta kon
	sta byt
	lda fadtab
	sta v+21
	lda v+33
	and #15
	tax
	lda coltab,x
	ldx #6
setcol	sta v+39,x
	dex
	bpl setcol
	jsr rnd
	and #3
	clc
	adc #1
	sta speed
	sta count
	rts
rnd	lda rnd1
	eor v+18
	adc rnd2
	sbc time
	sta rnd2
	asl rnd1
	adc rnd1
	sta rnd1
	rts
tausch	ldx #63
tasch	lda spider,x
	sta ort,x
	dex
	bpl tasch
	rts
makerest	lda #1
	ldx #60
mr	sta seil+64,x
	dex
	dex
	dex
	dex
	dex
	dex
	bpl mr
	rts
down	dec count
	bne loch
	lda speed
	sta count
	inc 1+v
	inc 1+v
	jsr off
	ldx anzfad
	lda fadtab,x
	sta v+21
	lda kon
	asl
	clc
	adc kon
	tax
	lda byt
	eor #1
	sta byt
	sta seil,x
	inc kon
	lda kon
	cmp #20
	bcs neu
	rts
neu	inc anzfad
	ldx anzfad
	inc ptr,x
	lda #0
	sta kon
	ldx #63
clr1	sta seil,x
	dex
	bpl clr1
	lda anzfad
	cmp #6
	bcc loch
	ldx #255
	stx flag
	inx
	stx v+21
	inx
	inx
	inx
	inx
	stx flag+1
	inc gogo
loch	rts
irq	lda gogo
	beq down
	dec flag
	bne loch
	dec flag+1
	bne loch
	jsr init
	lda #0
	sta gogo
	jmp down
off	lda shift
	cmp #7
	beq weg
	rts
weg	pla
	pla
weg2	ldy #7
runter	tya
	asl
	tax
	inc v+1,x
	bne ron
	lda v+21
	and push,y
	sta v+21
	lda v+21
	beq full
ron	dey
	bpl runter
	ldx #-1
wait	ldx #1
	jsr pause
	dey
	bne wait
	beq weg2
full	lda oldirq+1
	ldy oldirq+2
	sta irqvec
	sty irqvec+1
	rts
spider	=*
