Obj_Will_Hit ($F8F3)

Obj_Will_Hit_u ($F8E5)

This routine first modifies the position of the object, and then it checks to see if the missile has hit the object. The Y register contains the (y,x) position of the object, the U register contains a pointer to the (y,x) modification values, the X register contains the missile (y,x) position, and the D register contains the (height/2, width/2) of the object.

(0,u) is temporarily added to the y position of the object, and

(1,u) is temporarily added to the x position.

 

ENTRY:

Y-reg = (y,x) position of the object

X-reg = (y,x) position of the missile

U-reg points to movement (y,x) (Mov_Obj_Hit_u only)

U-reg = movement (y,x) (Mov_Obj_Hit only)

D-reg = (h/2,w/2) size of object

 

EXIT:

Carry bit set if the object & missile have collided

ALL registers saved. Even the original Y-register.

 

Source