Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- TITLE PGM16_3B: BALL MOVEMENT
- EXTRN DISPLAY_BALL: NEAR, BEEP:NEAR
- EXTRN TIMER_FLAG:BYTE, VEL_X: WORD, VEL_Y: WORD
- PUBLIC MOVE_BALL_A
- .MODEL SMALL
- .CODE
- MOVE_BALL_A PROC
- MOV AL,0
- CALL DISPLAY_BALL
- ADD CX,VEL_X
- ADD DX,VEL_Y
- CALL CHECK_BOUNDARY_A
- TEST_TIMER_1:
- CMP TIMER_FLAG,1
- JNE TEST_TIMER_1
- MOV TIMER_FLAG,0
- MOV AL,3
- CALL DISPLAY_BALL
- RET
- MOVE_BALL_A ENDP
- CHECK_BOUNDARY_A PROC
- CMP CX,11
- JG L1
- MOV CX,11
- NEG VEL_X
- CALL BEEP
- JMP L2
- L1: CMP CX,299
- JL L2
- MOV CX,298
- NEG VEL_X
- CALL BEEP
- L2: CMP DX,11
- JG L3
- MOV DX,11
- NEG VEL_Y
- CALL BEEP
- JMP DONE
- L3: CMP DX,188
- JL DONE
- MOV DX,187
- NEG VEL_Y
- CALL BEEP
- ENDP
- DONE:
- RET
- CHECK_BOUNDARY_A
- ENDP
- ;
- END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement