home *** CD-ROM | disk | FTP | other *** search
- bob:
- ; Here starts the bob routine x in d0 y in d1
- mulu #40,d1 ;X-Screen/8*ypos
- move.w d0,d2 ;Save xpos in d2
- lsr.w #3,d0 ;Int (xpos/8)
- and.w #$000f,d2
- lea $60000,a0 ;Pos (0,0) in a1
- add.w d1,a0 ;a0+ypos*44
- add.w d0,a0 ;a0+(xpos/8)
- move.l #$50000,a1 ;source
- move.l #$5005a,a2 ;mask
-
- ;move.l #$ffffffff,d0
- ;tst.w d2
- ;bmi.s wait_kulblit
-
- move.l #$ffff0000,d0
-
- wait_kulblit:
- btst #14,$dff002
- bne.s wait_kulblit
- move.l d0,$dff044 ;Pixel pitch
- move.l a2,$dff050 ;src a (msk)
- move.l a1,$dff04c ;src b (obj)
- move.l a0,$dff048 ;src c (bgn)
- move.l a0,$dff054 ;dst d (dst)
- move.l #$0024ffff,$dff060 ;c,b
- move.l #$ffff0024,$dff064 ;a,d
- ror.w #4,d2
- move.w d2,$dff042 ;if objmask(a)*obj(b)=1 then poke to d=AB
- add.w #$0fca,d2 ; _
- move.w d2,$dff040 ;if objmask(a)=0 then bgn(c) to d=AC
- move.w #%0000001111000010,$dff058
- ; hhhhhhhhhhwwwwww
- add.l #$1f,a1
- add.l #$2000,a0
- bsr vanta
- move.l a2,$dff050 ;src a
- move.l a1,$dff04c ;src b
- move.l a0,$dff048 ;src c
- move.l a0,$dff054 ;dst d
- move.w #%0000001111000010,$dff058
- ; hhhhhhhhhhwwwwww
- rts
-
- vanta:
- btst #14,$dff002
- bne.s vanta
- rts