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.