start:
	bsr	convertpal
	clr.w	-(sp)
	trap	#1




*****************************************
*	color converter			*
*	takes sensible color format	*
*	ie:	1,2,3,4-a,b,c,d,e,f	*
*	and turns it into the ste's 	*
*	stupid format			*
*	ie:	0,8,1,9,2,a,3,b,....	*
*****************************************
convertpal:
	movem.l	d0-a6,-(sp)
	lea	colors,a0
	lea	colorsend,a6
	lea	redcolors,a2
	lea	greencolors,a3
	lea	bluecolors,a4
	lea	palconvert,a1		;where the new pal goes
conloop:
	moveq	#0,d0		;for construction
	moveq	#0,d1
	moveq	#0,d2
	moveq	#0,d3
	moveq	#0,d4
	move.w	(a0)+,d1	;get the color
	move.w	d1,d2		;copy it
	move.w	d2,d3
	and.w	#$0f00,d1	;isolate the red
	lsr.w	#8,d1		;now use it to index
	add.w	d1,d1
	or.w	(a2,d1.w),d0
	and.w	#$00f0,d2	;isolate the red
	lsr.w	#4,d2
	add.w	d2,d2
	or.w	(a3,d2.w),d0
	and.w	#$000f,d3	;isolate the red
	add.w	d3,d3
	or.w	(a4,d3.w),d0
	move.w	d0,(a1)+
	cmp.l	a6,a0
	blt	conloop
	movem.l	(sp)+,d0-a6
	rts
* ==========================================================================

redcolors:
	dc.w	$0000,$0800,$0100,$0900,$0200,$0a00,$0300,$0b00
	dc.w	$0400,$0c00,$0500,$0d00,$0600,$0e00,$0700,$0f00
greencolors:
	dc.w	$0000,$0080,$0010,$0090,$0020,$00a0,$0030,$00b0
	dc.w	$0040,$00c0,$0050,$00d0,$0060,$00e0,$0070,$00f0
bluecolors:
	dc.w	$0000,$0008,$0001,$0009,$0002,$000a,$0003,$000b
	dc.w	$0004,$000c,$0005,$000d,$0006,$000e,$0007,$000f
* ==========================================================================

colors:
	DC.W	$0000,$000B,$022C,$044C,$066D,$088E,$0AAE,$0DDF
	DC.W	$0333,$0555,$0777,$0888,$0AAA,$0CCC,$0DDD,$0FFF

	DC.W	$0000,$011C,$033D,$055D,$077E,$099F,$0BBF,$0EEF
	DC.W	$0444,$0666,$0888,$0999,$0BBB,$0DDD,$0EEE,$0FFF

	DC.W	$0000,$022D,$044E,$066E,$088F,$0AAF,$0CCF,$0FFF
	DC.W	$0555,$0777,$0999,$0AAA,$0CCC,$0EEE,$0FFF,$0FFF

	DC.W	$0000,$033E,$055F,$077F,$099F,$0BBF,$0DDF,$0FFF
	DC.W	$0666,$0888,$0AAA,$0BBB,$0DDD,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$044F,$066F,$088F,$0AAF,$0CCF,$0EEF,$0FFF
	DC.W	$0777,$0999,$0BBB,$0CCC,$0EEE,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$055F,$077F,$099F,$0BBF,$0DDF,$0FFF,$0FFF
	DC.W	$0888,$0AAA,$0CCC,$0DDD,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$066F,$088F,$0AAF,$0CCF,$0EEF,$0FFF,$0FFF
	DC.W	$0999,$0BBB,$0DDD,$0EEE,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$077F,$099F,$0BBF,$0DDF,$0FFF,$0FFF,$0FFF
	DC.W	$0AAA,$0CCC,$0EEE,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$088F,$0AAF,$0CCF,$0EEF,$0FFF,$0FFF,$0FFF
	DC.W	$0BBB,$0DDD,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$099F,$0BBF,$0DDF,$0FFF,$0FFF,$0FFF,$0FFF
	DC.W	$0CCC,$0EEE,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$0AAF,$0CCF,$0EEF,$0FFF,$0FFF,$0FFF,$0FFF
	DC.W	$0DDD,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$0BBF,$0DDF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF
	DC.W	$0EEE,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$0CCF,$0EEF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF
	DC.W	$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$0DDF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF
	DC.W	$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$0EEF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF
	DC.W	$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF
WHITE:

	DC.W	$0000,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF
	DC.W	$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF,$0FFF

	DC.W	$0000,$0EEE,$0EEE,$0EEE,$0EEE,$0EEE,$0EEE,$0EEE
	DC.W	$0EEE,$0EEE,$0EEE,$0EEE,$0EEE,$0EEE,$0EEE,$0EEE

	DC.W	$0000,$0DDD,$0DDD,$0DDD,$0DDD,$0DDD,$0DDD,$0DDD
	DC.W	$0DDD,$0DDD,$0DDD,$0DDD,$0DDD,$0DDD,$0DDD,$0DDD

	DC.W	$0000,$0CCC,$0CCC,$0CCC,$0CCC,$0CCC,$0CCC,$0CCC
	DC.W	$0CCC,$0CCC,$0CCC,$0CCC,$0CCC,$0CCC,$0CCC,$0CCC

	DC.W	$0000,$0BBB,$0BBB,$0BBB,$0BBB,$0BBB,$0BBB,$0BBB
	DC.W	$0BBB,$0BBB,$0BBB,$0BBB,$0BBB,$0BBB,$0BBB,$0BBB

	DC.W	$0000,$0AAA,$0AAA,$0AAA,$0AAA,$0AAA,$0AAA,$0AAA
	DC.W	$0AAA,$0AAA,$0AAA,$0AAA,$0AAA,$0AAA,$0AAA,$0AAA

	DC.W	$0000,$0999,$0999,$0999,$0999,$0999,$0999,$0999
	DC.W	$0999,$0999,$0999,$0999,$0999,$0999,$0999,$0999

	DC.W	$0000
	REPT	15
	DC.W	$0888
	ENDR

	DC.W	$0000
	REPT	15
	DC.W	$0777
	ENDR

	DC.W	$0000
	REPT	15
	DC.W	$0666
	ENDR
	DC.W	$0000
	REPT	15
	DC.W	$0555
	ENDR
	DC.W	$0000
	REPT	15
	DC.W	$0444
	ENDR
	DC.W	$0000
	REPT	15
	DC.W	$0333
	ENDR
	DC.W	$0000
	REPT	15
	DC.W	$0222
	ENDR
	DC.W	$0000
	REPT	15
	DC.W	$0111
	ENDR
	DC.W	$0000
	REPT	15
	DC.W	$0000
	ENDR
colorsend:

palconvert:

	ds.b	2000
