Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-10-16 08:10:02 +02:00
parent fd33c978a0
commit 31157183f7
2 changed files with 59 additions and 74 deletions

Binary file not shown.

View File

@ -90,6 +90,36 @@ MOU.ReadMouse >PULLW ZPPtr1
beq .3
lda MENU.Stack-1,x
jsr MOU.CheckOverMenu
bcc .8
jsr MENU.Destroy
bra .2
.9 sec
.99 rts
.3 jsr MOU.CheckOverWND
bcc .8
.4 lda WND.SysBar+S.OBJ.Y1
ldy #S.MOUSE.Y1
cmp (ZPPtr1),y
lda WND.SysBar+S.OBJ.Y1+1
iny
sbc (ZPPtr1),y
bcs .7
jmp SYSBAR.Enter
.7 jmp SYSBAR.Leave
.8 clc
rts
*--------------------------------------
MOU.CheckOverMenu
>SYSCALL GetMemPtr
>STYA ZPPtr1
pha
@ -109,77 +139,29 @@ MOU.ReadMouse >PULLW ZPPtr1
lda ZPPtr1+1
adc /S.MENU.pX1
jsr MOU.InRectYA
bcc .8
jsr MENU.Destroy
bra .2
.9 sec
.99 rts
.3 ldx WND.Stack.Top
beq .4
* lda WND.Stack-1,x
* jsr MOU.InObjA
.4 lda WND.SysBar+S.OBJ.Y1
ldy #S.MOUSE.Y1
cmp (ZPPtr1),y
lda WND.SysBar+S.OBJ.Y1+1
iny
sbc (ZPPtr1),y
bcs .7
jmp SYSBAR.Enter
.7 jmp SYSBAR.Leave
.8 clc
rts
.8 rts
*--------------------------------------
MOU.InObjA >SYSCALL GetMemPtr
MOU.InObjyA jsr OBJ.GetInCache
ldy #S.MOUSE.X1
lda (ZPPtr1),y
cmp OBJ.Cache+S.OBJ.X1
iny
lda (ZPPtr1),y
cmp OBJ.Cache+S.OBJ.X1+1
bcc .9
MOU.CheckOverWND
ldx WND.Stack.Top
beq .9
iny #S.MOUSE.Y1
lda (ZPPtr1),y
cmp OBJ.Cache+S.OBJ.Y1
iny
lda (ZPPtr1),y
cmp OBJ.Cache+S.OBJ.Y1+1
bcc .9
>SYSCALL GetMemPtr
>STYA ZPWNDPtr
ldy #S.OBJ.F
lda (ZPWNDPtr),y
bit #S.WND.F.BORDER
beq .1
.1
iny #S.MOUSE.X2
lda (ZPPtr1),y
cmp OBJ.Cache+S.OBJ.X2
iny
lda (ZPPtr1),y
cmp OBJ.Cache+S.OBJ.X2+1
bcs .99
iny #S.MOUSE.Y2
lda (ZPPtr1),y
cmp OBJ.Cache+S.OBJ.Y2
iny
lda (ZPPtr1),y
cmp OBJ.Cache+S.OBJ.Y2+1
rts
.9 sec
.99 rts
rts
*--------------------------------------
MOU.InRectYA >STYA ZPRECTPtr
@ -203,20 +185,23 @@ MOU.InRectYA >STYA ZPRECTPtr
iny #S.RECT.X2
lda MouseData+S.MOUSE.X1
cmp (ZPRECTPtr),y
lda (ZPRECTPtr),y
cmp MouseData+S.MOUSE.X1
iny
lda MouseData+S.MOUSE.X1+1
sbc (ZPRECTPtr),y
bcs .99
lda (ZPRECTPtr),y
sbc MouseData+S.MOUSE.X1+1
bcc .9
iny #S.RECT.Y2
lda MouseData+S.MOUSE.Y1
cmp (ZPRECTPtr),y
lda (ZPRECTPtr),y
cmp MouseData+S.MOUSE.Y1
iny
lda MouseData+S.MOUSE.Y1+1
sbc (ZPRECTPtr),y
lda (ZPRECTPtr),y
sbc MouseData+S.MOUSE.Y1+1
bcc .9
clc
rts
.9 sec