MOOOOOUUUSSEEEE
This commit is contained in:
parent
dba4644ee7
commit
7a9a8f282a
60
main.asm
60
main.asm
|
@ -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"
|
|
@ -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
|
||||||
|
|
Loading…
Reference in a new issue