1 2; =============================================================== 3; Aug 2003 4; =============================================================== 5; 6; void in_mouse_amx_setpos(uint16_t x, uint16_t y) 7; 8; Set the mouse coordinate. 9; 10; =============================================================== 11 12SECTION code_clib 13SECTION code_input 14 15PUBLIC asm_in_mouse_amx_setpos 16 17EXTERN __input_amx_mouse_x, __input_amx_mouse_y 18 19asm_in_mouse_amx_setpos: 20 21 ; enter : de = x 22 ; bc = y 23 ; 24 ; uses : af, bc, de 25 26test_x: 27 28 inc d 29 dec d 30 jr z, test_y 31 32adjust_x: 33 34 ld de,$ff00 35 36test_y: 37 38 inc b 39 djnz adjust_y 40 41 ld a,c 42 cp 192 43 jr c, set_xy 44 45adjust_y: 46 47 ld bc,191*256 48 49set_xy: 50 51 ld (__input_amx_mouse_x),de ; atomic 52 ld (__input_amx_mouse_y),bc ; atomic 53 54 ret 55