	opt	c-
run:
	movem.l	d0-d7/a0-a6,-(sp)
	move.l	#$50000,a0
	move.l	#2559,d0
clr_bitmap:
	clr.l	(a0)+
	dbra	d0,clr_bitmap
	bsr 	makerast

	move.l	4,a6
	jsr	-132(a6)
	move.w	#$03f0,$dff096
	move.l	#copperlist,$dff080
	clr.w	$dff088
	move.w	#$83c0,$dff096
	move.w	#$4000,$dff09a
	move.l	$6c,oldirq
	move.l	#irq,$6c
	move.w	#$c010,$dff09a
wait:
	btst	#6,$bfe001
	bne.w	wait
	move.w	#$4010,$dff09a
	move.l	oldirq,$6c
	move.w	#$c000,$dff09a
	move.l	#gfxlib,a1
	move.l	4,a6
	jsr	-408(a6)
	move.l	d0,a4
	move.w	#$03ff,$dff096
	move.l	38(a4),$dff080
	clr.w	$dff088
	move.w	#$83f0,$dff096
	move.l	a4,a1
	jsr	-414(a6)
	jsr	-138(a6)
	movem.l	(sp)+,d0-d7/a0-a6
	rts
irq:
	movem.l	d0-d7/a0-a6,-(a7)
	bsr makerast
	movem.l	(a7)+,d0-d7/a0-a6
	dc.w	$4ef9
oldirq:	dc.l	0
copperlist:
	dc.w	$00e0,$0005,$00e2,$0000,$0102,$0000
	dc.w	$0100,$1200,$0104,$0000,$0108,$0000,$010a,$0000
	dc.w	$008e,$3081,$0090,$30c1,$0092,$0038,$0094,$00d0
	dc.w	$0180,$0000,$0182,$0fff

cprlst:
	dc.w $0180,$0000
RasDat: dcb.w 21*4,0
	dc.w $6001,$ff00
	dc.w $0180,$0fff
	dc.w $6101,$ff00
	dc.w $0180,$0000
	dc.w	$ffff,$fffe
gfxlib:
	dc.b	"graphics.library",0
	even


MakeRast:

	lea Offsets,a2
	clr.l d0
	sub.b #2,Map
	bpl nocolscroll
	add.b #1,col
	move.b #7,Map
nocolscroll:
	move.b Map,d0
	mulu #20,d0
	add d0,a2
	lea RasDat,a0
	clr.w d0

	move.b col,d0
	move.w #20,d3
	lea Colors,a1
md:
	and.w #127,d0
	move.w d0,d2
	asl.l #1,d2
	clr.w d1
	add.b #1,d0
	move.b (a2)+,d1
	add.b #15,d1
	asl.w #8,d1
	or.w #1,d1
	move.w d1,(a0)+
	move.w #$fffe,(a0)+
	move.w #$0180,(a0)+
	move.w (a1,d2),(a0)+
	dbf d3,md
	rts

	even

Colors:
	dc.w 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
	dc.w $000,$100,$200,$300,$400,$500,$600,$700
	dc.w $800,$900,$a00,$b00,$c00,$d00,$e00
	dc.w $f00,$f10,$f20,$f30,$f40,$f50,$f60,$f70
	dc.w $f80,$f90,$fa0,$fb0,$fc0,$fd0,$fe0
	dc.w $ff0,$ef0,$df0,$cf0,$bf0,$af0,$9f0,$8f0
	dc.w $7f0,$6f0,$5f0,$4f0,$3f0,$2f0,$1f0
	dc.w $0f0,$0f1,$0f2,$0f3,$0f4,$0f5,$0f6,$0f7
	dc.w $0f8,$0f9,$0fa,$0fb,$0fc,$0fd,$0fe
	dc.w $0ff,$0ef,$0df,$0cf,$0bf,$0af,$09f,$08f
	dc.w $07f,$06f,$05f,$04f,$03f,$02f,$01f
	dc.w $00f,$10f,$20f,$30f,$40f,$50f,$60f,$70f
	dc.w $80f,$90f,$a0f,$b0f,$c0f,$d0f,$e0f
	dc.w $f0f,$e0e,$d0d,$c0c,$b0b,$a0a,$909,$808
	dc.w $707,$606,$505,$404,$303,$202,$101,$000
	
Offsets:
	dc.b  0,16,28,37,44,50,54,58,61,64,66,68,70,72,74,75,76,77,78,79
	dc.b  2,18,29,38,45,50,55,58,61,64,66,68,70,72,74,75,76,77,78,79
	dc.b  4,20,31,39,45,51,55,58,62,64,67,69,71,72,74,75,76,77,78,79
	dc.b  6,21,32,40,46,51,56,59,62,65,67,69,71,72,74,75,76,77,78,79
	dc.b  8,23,33,41,47,52,56,60,62,65,67,69,71,72,74,75,76,77,78,79
	dc.b 10,24,34,42,48,52,56,60,63,65,68,69,71,73,74,75,76,77,78,79
	dc.b 12,25,35,42,48,53,57,60,63,66,68,70,71,73,74,75,76,77,78,79
	dc.b 14,27,36,43,49,54,57,61,63,66,68,70,71,73,74,75,76,77,78,79

map: 	dc.b 0
col: 	dc.b 0
	even
oldsp: 	dc.l 0
savecpr: 
	dc.l 0
