home *** CD-ROM | disk | FTP | other *** search
-
- shadedown: ; A0=firstcoppercol D3=numberofcols
- move.l #16,d0
- move.l a0,a1
- move.l d3,d6
- mainshade:
- move.l d6,d3
- move.l a1,a0
- shadeloop:
- move.w (a0),d1
- move.w d1,d2
- and.w #$000f,d2
- cmp.w #0,d2
- beq nobluesub
- sub.w #$1,d2
- move.w d1,d5
- and.w #$ff0,d5
- add.w d2,d5
- move.w d5,d1
- nobluesub:
- move.w d1,d2
- and.w #$00f0,d2
- cmp.w #0,d2
- beq nogreensub
- sub.w #$10,d2
- move.w d1,d5
- and.w #$f0f,d5
- add.w d2,d5
- move.w d5,d1
- nogreensub:
- move.w d1,d2
- and.w #$0f00,d2
- cmp.w #0,d2
- beq noredsub
- sub.w #$100,d2
- move.w d1,d5
- and.w #$0ff,d5
- add.w d2,d5
- move.w d5,d1
- noredsub:
- move.w d1,(a0)
- add.l #4,a0
- sub.l #1,d3
- cmp.l #0,d3
- bhi shadeloop
- move.l #12000,d4
- shadeloop4:
- subq.l #1,d4
- cmp.l #0,d4
- bhi shadeloop4
- shadeblank:
- cmp.b #$ff,$dff006
- bne shadeblank
- sub.l #1,d0
- cmp.l #0,d0
- bhi mainshade
- rts
-