ShadeRGB: ;shade from a0 to a1-->a2.d0=step0-32*1024+512,d1=dstmod,d2=nrcols-1
	MOVEM.L D0-D1/A0,-(SP)
	move.w d1,a3			;NO NEG. MODULOS!!!!
	move.w #$f0,d1			;AND-const
	cmp.w #32768,d0			;full intensity?
	blo.s .Loop
.Copy:	move.w (a1)+,(a2)+		;get src2-col->d4
	add.w a3,a2
	dbf d2,.Copy
	bra.s .End
.Loop:	move.w (a0)+,d3			;get src1-col->d3
	move.w (a1)+,d4			;get src2-col->d4
	move.w d3,d5			;R
	clr.b d5
	move.w d4,d7
	clr.b d7
	sub.w d5,d7
	add.w d7,d7
	muls d0,d7
	swap d7
	add.w d5,d7
	move.w d3,d5			;G
	and.w d1,d5
	move.w d4,d6
	and.w d1,d6
	sub.w d5,d6
	add.w d6,d6
	muls d0,d6
	swap d6
	add.w d5,d6
	and.w d1,d6
	move.b d6,d7
	moveq #$f,d6
	and.w d6,d3
	and.w d6,d4
	sub.w d3,d4			;B
	add.w d4,d4
	muls d0,d4
	swap d4
	add.w d3,d4
	or.w d4,d7
	move.w d7,(a2)+
	add.w a3,a2
	dbf d2,.Loop
.End:	MOVEM.L (SP)+,D0-D1/A0
	RTS
