mirror of
https://github.com/A2osX/A2osX.git
synced 2024-08-28 14:29:20 +00:00
Kernel 0.92
This commit is contained in:
parent
64a7b37e2d
commit
3a08dc34ce
Binary file not shown.
@ -196,6 +196,13 @@ L.Color.Pixels .DA Color.Pixels
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
STATUS >STYA ZPIOCTL
|
STATUS >STYA ZPIOCTL
|
||||||
|
|
||||||
|
ldy #S.IOCTL.BUFPTR
|
||||||
|
lda (ZPIOCTL),y
|
||||||
|
sta ZPBasePtr
|
||||||
|
iny
|
||||||
|
lda (ZPIOCTL),y
|
||||||
|
sta ZPBasePtr+1
|
||||||
|
|
||||||
ldy #S.IOCTL.STATCODE
|
ldy #S.IOCTL.STATCODE
|
||||||
lda (ZPIOCTL),y
|
lda (ZPIOCTL),y
|
||||||
beq .1
|
beq .1
|
||||||
@ -203,26 +210,30 @@ STATUS >STYA ZPIOCTL
|
|||||||
cmp #S.IOCTL.STATCODE.GETDIB
|
cmp #S.IOCTL.STATCODE.GETDIB
|
||||||
bne STATUS.DCB
|
bne STATUS.DCB
|
||||||
|
|
||||||
ldx #S.DIB-1
|
ldy #S.DIB-1
|
||||||
.HS 2C bit abs
|
.HS 2C bit abs
|
||||||
.1 ldx #3
|
.1 ldy #3
|
||||||
|
|
||||||
ldy #S.IOCTL.BUFPTR
|
.2 lda DIB,y
|
||||||
lda (ZPIOCTL),y
|
sta (ZPBasePtr),y
|
||||||
sta .3+1
|
dey
|
||||||
iny
|
|
||||||
lda (ZPIOCTL),y
|
|
||||||
sta .3+2
|
|
||||||
|
|
||||||
.2 lda DIB,x
|
|
||||||
.3 sta $ffff,x SELF MODIFIED
|
|
||||||
dex
|
|
||||||
bpl .2
|
bpl .2
|
||||||
|
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
|
|
||||||
STATUS.DCB
|
STATUS.DCB cmp #S.IOCTL.STATCODE.GETDCB
|
||||||
|
bne STATUS.9
|
||||||
|
|
||||||
|
ldy #S.DCB.GFX-1
|
||||||
|
|
||||||
|
.2 lda DCB,y
|
||||||
|
sta (ZPBasePtr),y
|
||||||
|
dey
|
||||||
|
bpl .2
|
||||||
|
|
||||||
|
clc
|
||||||
|
rts
|
||||||
|
|
||||||
STATUS.9 lda #MLI.E.BADCTL
|
STATUS.9 lda #MLI.E.BADCTL
|
||||||
sec
|
sec
|
||||||
@ -274,7 +285,7 @@ OPEN ldx #0 DEV.ID in A
|
|||||||
dey
|
dey
|
||||||
bne .2
|
bne .2
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CONTROL lda DCB+S.DCB.GFX.DEVID NON STANDARD
|
CONTROL lda DCB+S.DCB.GFX.DEVID NON STANDARD
|
||||||
cmp A2osX.ASCREEN
|
cmp A2osX.ASCREEN
|
||||||
beq .8
|
beq .8
|
||||||
|
|
||||||
@ -494,10 +505,10 @@ DCB .DA #S.DCB.T.GFX
|
|||||||
.DA 192 H
|
.DA 192 H
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DRV.END
|
DRV.END
|
||||||
.LI ON
|
.LIST ON
|
||||||
DRV.CS.SIZE .EQ DRV.CS.END-DRV.CS.START
|
DRV.CS.SIZE .EQ DRV.CS.END-DRV.CS.START
|
||||||
DRV.SIZE .EQ DRV.END-DRV.CS.START
|
DRV.SIZE .EQ DRV.END-DRV.CS.START
|
||||||
.LI OFF
|
.LIST OFF
|
||||||
MAN
|
MAN
|
||||||
SAVE USR/SRC/DRV/DHGR.DRV.S
|
SAVE USR/SRC/DRV/DHGR.DRV.S
|
||||||
ASM
|
ASM
|
||||||
|
@ -202,6 +202,9 @@ OPEN php
|
|||||||
ldy #INITMOUSE Reset
|
ldy #INITMOUSE Reset
|
||||||
jsr GOMOUSE
|
jsr GOMOUSE
|
||||||
|
|
||||||
|
lda #S.DIB.S.OPENED
|
||||||
|
tsb DIB+S.DIB.S
|
||||||
|
|
||||||
plp
|
plp
|
||||||
|
|
||||||
clc
|
clc
|
||||||
@ -209,12 +212,18 @@ OPEN php
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CLOSE php
|
CLOSE php
|
||||||
sei
|
sei
|
||||||
|
|
||||||
ldx DEVSLOT0n
|
ldx DEVSLOT0n
|
||||||
lda MOUSEMODx,x keep if VBLInt already activated by kernel
|
lda MOUSEMODx,x keep if VBLInt already activated by kernel
|
||||||
and #MOUSEMODx.INTVBL Disable ALL but VBLInt if previously active
|
and #MOUSEMODx.INTVBL Disable ALL but VBLInt if previously active
|
||||||
ldy #SETMOUSE
|
ldy #SETMOUSE
|
||||||
jsr GOMOUSE
|
jsr GOMOUSE
|
||||||
|
|
||||||
|
lda #S.DIB.S.OPENED
|
||||||
|
trb DIB+S.DIB.S
|
||||||
|
|
||||||
plp
|
plp
|
||||||
|
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -120,14 +120,17 @@ ShowCursor.I lda #S.CB.OP.ORA+S.CB.OP.MASK+S.CB.OP.SAVE
|
|||||||
sbc #0
|
sbc #0
|
||||||
sta CUR.CB+S.CB.DstY+1
|
sta CUR.CB+S.CB.DstY+1
|
||||||
|
|
||||||
DrawCursor.I >LDYA L.GC.Screen
|
DrawCursor.I
|
||||||
jsr GC.Get
|
|
||||||
|
* >LDYA L.GC.Screen
|
||||||
|
* jsr GC.Get
|
||||||
|
|
||||||
|
* >LDYA L.CUR.CB
|
||||||
|
* jsr CLIP.YA
|
||||||
|
* bcs .9
|
||||||
|
|
||||||
>LDYA L.CUR.CB
|
>LDYA L.CUR.CB
|
||||||
jsr CLIP.YA
|
jmp GFXWrite.YA
|
||||||
bcs .9
|
|
||||||
|
|
||||||
jmp GoDevGfx
|
|
||||||
|
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -39,7 +39,7 @@ MOU.Setup lda DCB.GFX+S.DCB.GFX.W+1
|
|||||||
ror
|
ror
|
||||||
sta CUR.Pos+S.POINT.Y
|
sta CUR.Pos+S.POINT.Y
|
||||||
|
|
||||||
>PUSHWI L.MouseClamp
|
>PUSHW L.MouseClamp
|
||||||
>PUSHBI IOCTL.CONTROL
|
>PUSHBI IOCTL.CONTROL
|
||||||
lda hDevMouse
|
lda hDevMouse
|
||||||
>SYSCALL IOCTL
|
>SYSCALL IOCTL
|
||||||
@ -50,6 +50,7 @@ MOU.Setup lda DCB.GFX+S.DCB.GFX.W+1
|
|||||||
|
|
||||||
lda #CUR.T.ARROW
|
lda #CUR.T.ARROW
|
||||||
jsr SetCursor
|
jsr SetCursor
|
||||||
|
jsr ShowCursor
|
||||||
|
|
||||||
clc
|
clc
|
||||||
.9 rts
|
.9 rts
|
||||||
@ -66,22 +67,24 @@ MOU.Quit lda hDevMouse
|
|||||||
.8 clc
|
.8 clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MOU.Read >STYA ZPPtr1
|
MOU.ReadMouse lda A2osX.ASCREEN GUI screen active ?
|
||||||
|
cmp DCB.GFX+S.DCB.GFX.DEVID
|
||||||
|
bne .9 no, exit....
|
||||||
|
|
||||||
lda hDevMouse
|
lda hDevMouse
|
||||||
beq .9
|
beq .9
|
||||||
|
|
||||||
pha
|
pha
|
||||||
>PUSHW ZPPtr1
|
|
||||||
|
* >PUSHW ZPPtr1
|
||||||
>PUSHBI IOCTL.READ
|
>PUSHBI IOCTL.READ
|
||||||
|
|
||||||
pla
|
pla
|
||||||
>SYSCALL IOCTL
|
>SYSCALL IOCTL
|
||||||
bcs .9
|
rts
|
||||||
|
|
||||||
|
.9 sec
|
||||||
.8 sec
|
>RET 2 Discard PTR
|
||||||
.9 rts
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
SAVE USR/SRC/LIB/LIBGUI.S.MOU
|
SAVE USR/SRC/LIB/LIBGUI.S.MOU
|
||||||
|
@ -8,10 +8,17 @@ WND.Init >PUSHBI 0
|
|||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
sta hDevGFX
|
sta hDevGFX
|
||||||
pha
|
|
||||||
>PUSHW L.DCB.GFX
|
>LDYA L.DCB.GFX
|
||||||
pla
|
>STYA IOCTL+S.IOCTL.BUFPTR
|
||||||
>SYSCALL GetDevStatus
|
lda #S.IOCTL.STATCODE.GETDCB
|
||||||
|
sta IOCTL+S.IOCTL.STATCODE
|
||||||
|
|
||||||
|
>PUSHW L.IOCTL
|
||||||
|
>PUSHBI IOCTL.STATUS
|
||||||
|
lda hDevGFX
|
||||||
|
>SYSCALL IOCTL
|
||||||
|
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
lda DCB.GFX+S.DCB.GFX.W
|
lda DCB.GFX+S.DCB.GFX.W
|
||||||
|
@ -73,18 +73,24 @@ CS.START cld
|
|||||||
.DA HideCursor
|
.DA HideCursor
|
||||||
.DA ShowCursor
|
.DA ShowCursor
|
||||||
.DA UpdateCursor
|
.DA UpdateCursor
|
||||||
.DA MOU.Read
|
.DA MOU.ReadMouse
|
||||||
.DA GetScreenGC
|
.DA GetScreenGC
|
||||||
|
*--------------------------------------
|
||||||
J.Cmds .DA DrawLine
|
J.Cmds .DA DrawLine
|
||||||
.DA DrawText
|
.DA DrawText
|
||||||
|
*--------------------------------------
|
||||||
L.DEVNAME.GFX .DA DEVNAME.GFX
|
L.DEVNAME.GFX .DA DEVNAME.GFX
|
||||||
L.DEVNAME.MOUSE .DA DEVNAME.MOUSE
|
L.DEVNAME.MOUSE .DA DEVNAME.MOUSE
|
||||||
L.SYSX7 .DA SYSX7
|
L.SYSX7 .DA SYSX7
|
||||||
L.SYSX7B .DA SYSX7B
|
L.SYSX7B .DA SYSX7B
|
||||||
|
L.IOCTL .DA IOCTL
|
||||||
L.DCB.GFX .DA DCB.GFX
|
L.DCB.GFX .DA DCB.GFX
|
||||||
L.MouseClamp .DA MouseClamp
|
L.MouseClamp .DA MouseClamp
|
||||||
L.GC.Screen .DA GC.Screen
|
L.GC.Screen .DA GC.Screen
|
||||||
|
L.GC.Desktop .DA GC.Desktop
|
||||||
|
L.GC.SysBar .DA GC.SysBar
|
||||||
L.CB.Cache .DA CB.Cache
|
L.CB.Cache .DA CB.Cache
|
||||||
|
*--------------------------------------
|
||||||
L.CUR.CB .DA CUR.CB
|
L.CUR.CB .DA CUR.CB
|
||||||
L.CUR.SaveBuf .DA CUR.SaveBuf
|
L.CUR.SaveBuf .DA CUR.SaveBuf
|
||||||
L.Cursors .DA CUR.Arrow
|
L.Cursors .DA CUR.Arrow
|
||||||
@ -171,8 +177,9 @@ GetScreenGC >LDYA L.GC.Screen
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
GoDevGfx >LDYA L.CB.Cache
|
GoDevGfx >LDYA L.CB.Cache
|
||||||
|
|
||||||
|
GFXWrite.YA >PUSHYA
|
||||||
>PUSHBI IOCTL.WRITE
|
>PUSHBI IOCTL.WRITE
|
||||||
lda hDevMouse
|
lda hDevGFX
|
||||||
>SYSCALL IOCTL
|
>SYSCALL IOCTL
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
@ -233,8 +240,13 @@ PAT.Buf .BS 1 S.BM.F
|
|||||||
.DA 0 S.BM.MASK.OFS
|
.DA 0 S.BM.MASK.OFS
|
||||||
.BS 8 (data)
|
.BS 8 (data)
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
IOCTL .BS S.IOCTL
|
||||||
DCB.GFX .BS S.DCB.GFX
|
DCB.GFX .BS S.DCB.GFX
|
||||||
|
*--------------------------------------
|
||||||
GC.Screen .BS S.GC
|
GC.Screen .BS S.GC
|
||||||
|
GC.Desktop .BS S.GC
|
||||||
|
GC.SysBar .BS S.GC
|
||||||
|
*--------------------------------------
|
||||||
GC.Cache .BS S.GC
|
GC.Cache .BS S.GC
|
||||||
CB.Cache .BS S.CB
|
CB.Cache .BS S.CB
|
||||||
BM.Cache .BS S.BM
|
BM.Cache .BS S.BM
|
||||||
|
@ -47,17 +47,13 @@ L.MouseData .DA MouseData
|
|||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.INIT >LDYA L.LIBGUI
|
CS.INIT >LDYA L.LIBGUI
|
||||||
>SYSCALL LoadLib
|
>SYSCALL LoadLib
|
||||||
bcs CS.INIT.RTS
|
bcs .9
|
||||||
sta hLIBGUI
|
sta hLIBGUI
|
||||||
|
|
||||||
clc
|
* clc
|
||||||
CS.INIT.RTS rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CS.RUN lda A2osX.ASCREEN GUI screen active ?
|
CS.RUN >PUSHW L.MouseData
|
||||||
cmp #3
|
|
||||||
bne .8 no, exit....
|
|
||||||
|
|
||||||
>PUSHW L.MouseData
|
|
||||||
>LIBCALL hLIBGUI,LIBGUI.ReadMouse
|
>LIBCALL hLIBGUI,LIBGUI.ReadMouse
|
||||||
bcs .4
|
bcs .4
|
||||||
|
|
||||||
@ -127,8 +123,6 @@ CS.END
|
|||||||
LIBGUI .AZ "libgui"
|
LIBGUI .AZ "libgui"
|
||||||
hLIBGUI .BS 1
|
hLIBGUI .BS 1
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SYSMENU
|
|
||||||
*--------------------------------------
|
|
||||||
MouseData .BS S.MOUSE
|
MouseData .BS S.MOUSE
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
.DUMMY
|
.DUMMY
|
||||||
|
Loading…
Reference in New Issue
Block a user