MOOOOOUUUSSEEEE

This commit is contained in:
maelstrom 2024-07-26 12:58:43 +03:00
parent dba4644ee7
commit 7a9a8f282a
2 changed files with 55 additions and 13 deletions

View file

@ -29,18 +29,58 @@ main:
lp: lp:
; mov cx, 0 call update_mouse
; mov al, 0
; mov dx, 320
; mov bl, 200
; mov bh, 0
;call gfx_rect jmp lp
jmp $ ; Halt
update_mouse:
cli cli
mov bx, [mouseX] mov bx, [mouseX]
mov ax, [mouseY] mov ax, [mouseY]
sti sti
mov cx, [lastMouseX]
mov dx, [lastMouseY]
push bx
push ax
xor bx, cx
jnz .update
xor ax, dx
jnz .update
pop ax
pop bx
ret
.update:
pop ax
pop bx
call clear_last_mouse
call render_mouse
mov [lastMouseX], bx
mov [lastMouseY], ax
ret
; cx = lastMouseX
; dx = lastMouseY
clear_last_mouse:
pusha
mov al, dl
mov dx, 11
mov bl, 18
mov bh, 0
call gfx_rect
popa
ret
; bx = mouseX
; ax = mouseY
render_mouse:
pusha
mov dx, 0 mov dx, 0
mov cx, 320 mov cx, 320
@ -53,9 +93,8 @@ main:
mov bl, 18 mov bl, 18
call _gfx_blit0 call _gfx_blit0
jmp lp popa
ret
jmp $ ; Halt
; Libs ; Libs
%include "print_util.asm" %include "print_util.asm"
@ -69,4 +108,7 @@ HELLO_WORLD:
No: No:
db 'No.', 0 db 'No.', 0
lastMouseX: dw 0
lastMouseY: dw 0
%include "gfx/gfxd_cursor.asm" %include "gfx/gfxd_cursor.asm"

View file

@ -186,9 +186,9 @@ mouse_callback:
mov ax, 0 mov ax, 0
.x0: .x0:
test bx, 0x8000 test dx, 0x8000
jz .y0 jz .y0
mov bx, 0 mov dx, 0
.y0: .y0:
cmp ax, 320 cmp ax, 320
@ -196,9 +196,9 @@ mouse_callback:
mov ax, 320 mov ax, 320
.x1: .x1:
cmp bx, 200 cmp dx, 200
jle .y1 jle .y1
mov bx, 200 mov dx, 200
.y1: .y1:
; Status ; Status