A2osX/LIB/LIBGUI.S.MOU.txt
2019-05-05 19:15:37 +02:00

93 lines
1.6 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

NEW
PREFIX
AUTO 4,1
*--------------------------------------
MOU.Init
.1 >PUSHBI 0
>LDYA L.DEVNAME.MOUSE
>SYSCALL2 open
bcc .2
inc DEVNAME.MOUSE+8
lda DEVNAME.MOUSE+8
cmp #'8'
bne .1
rts
.2 sta hDevMouse
clc
rts
*--------------------------------------
MOU.Setup lda DCB.GFX+S.DCB.GFX.W+1
sta MouseClamp+3
lsr
sta CUR.Pos+S.POINT.X+1
lda DCB.GFX+S.DCB.GFX.W
sta MouseClamp+2
ror
sta CUR.Pos+S.POINT.X
lda DCB.GFX+S.DCB.GFX.H+1
sta MouseClamp+7
lsr
sta CUR.Pos+S.POINT.Y+1
lda DCB.GFX+S.DCB.GFX.H
sta MouseClamp+6
ror
sta CUR.Pos+S.POINT.Y
>PUSHW L.MouseClamp
>PUSHBI IOCTL.CONTROL
lda hDevMouse
>SYSCALL2 IOCTL
bcs .9
>LDYA L.CUR.SaveBuf
>STYA CUR.CB+S.CB.DstPtr
lda #CUR.T.ARROW
jsr SetCursor
jsr ShowCursor
clc
.9 rts
*--------------------------------------
MOU.Quit lda hDevMouse
beq .8
pha
>PUSHBI IOCTL.CLOSE
>PUSHWI 0
pla
>SYSCALL2 IOCTL
.8 clc
rts
*--------------------------------------
MOU.ReadMouse lda A2osX.ASCREEN GUI screen active ?
cmp DCB.GFX+S.DCB.GFX.DEVID
bne .9 no, exit....
lda hDevMouse
beq .9
pha
* >PUSHW ZPPtr1
>PUSHBI IOCTL.READ
pla
>SYSCALL2 IOCTL
rts
.9 sec
>RET 2 Discard PTR
*--------------------------------------
MAN
SAVE USR/SRC/LIB/LIBGUI.S.MOU
LOAD USR/SRC/LIB/LIBGUI.S
ASM