mirror of
https://github.com/A2osX/A2osX.git
synced 2025-01-28 01:31:07 +00:00
Kernel 0.94
This commit is contained in:
parent
875009f09b
commit
efab21a425
Binary file not shown.
Binary file not shown.
@ -222,20 +222,31 @@ LBUF.DrawAtY.AND.ORA
|
||||
|
||||
lda LBUF.MASK,x get MASK bits
|
||||
ora LBUF.C1.MASK clear ONLY bits starting at X1 mod 7
|
||||
and (ZPBasePtr),y Clear screen at C1
|
||||
|
||||
cpx LBUF.C2
|
||||
bne .1
|
||||
|
||||
ora LBUF.C2.MASK special case : C1=C2
|
||||
and (ZPBasePtr),y
|
||||
sta ZPTmpByte
|
||||
|
||||
lda LBUF.DATA,x
|
||||
and LBUF.C1.DATA
|
||||
and LBUF.C2.DATA
|
||||
ora ZPTmpByte
|
||||
sta (ZPBasePtr),y update screen
|
||||
rts
|
||||
|
||||
.1 and (ZPBasePtr),y Clear screen at C1
|
||||
sta ZPTmpByte
|
||||
|
||||
lda LBUF.DATA,x get DATA bits
|
||||
and LBUF.C1.DATA set ONLY bits starting at X1 mod 7
|
||||
and LBUF.C1.DATA set ONLY bits starting at X1 mod 7
|
||||
ora ZPTmpByte ora with screen bits
|
||||
sta (ZPBasePtr),y update screen
|
||||
inx
|
||||
cpx LBUF.C2
|
||||
beq .2 C1=C2, go setup C2
|
||||
|
||||
bra .3
|
||||
|
||||
bcs .8 C1+1 > C2, we are done...
|
||||
|
||||
.1 ldy COL.BANK,x
|
||||
.2 ldy COL.BANK,x
|
||||
sta $C000,y
|
||||
txa
|
||||
lsr
|
||||
@ -243,14 +254,15 @@ LBUF.DrawAtY.AND.ORA
|
||||
|
||||
lda (ZPBasePtr),y
|
||||
and LBUF.MASK,x
|
||||
ora LBUF.DATA,x set all bytes between C1+1 & C2-1
|
||||
sta (ZPBasePtr),y
|
||||
ora LBUF.DATA,x set all bytes between C1+1 & C2-1
|
||||
|
||||
.3 sta (ZPBasePtr),y update screen
|
||||
|
||||
inx
|
||||
cpx LBUF.C2
|
||||
bne .1
|
||||
bne .2
|
||||
|
||||
.2 ldy COL.BANK,x
|
||||
ldy COL.BANK,x
|
||||
sta $C000,y
|
||||
txa
|
||||
lsr
|
||||
@ -262,7 +274,7 @@ LBUF.DrawAtY.AND.ORA
|
||||
sta ZPTmpByte
|
||||
|
||||
lda LBUF.DATA,x get DATA bits
|
||||
and LBUF.C2.DATA set ONLY bits ending at X2 mod 7
|
||||
and LBUF.C2.DATA set ONLY bits ending at X2 mod 7
|
||||
ora ZPTmpByte
|
||||
sta (ZPBasePtr),y update screen
|
||||
|
||||
|
@ -554,6 +554,7 @@ DRV.CS.END
|
||||
CONTROL.80C .DA #SETIOUDIS
|
||||
.DA #CLRTEXT
|
||||
* .DA #SETHIRES
|
||||
|
||||
.DA #CLR80DISP
|
||||
.DA #SETAN3
|
||||
.DA #CLRAN3
|
||||
|
@ -70,14 +70,9 @@ S.OBJ.X2 .EQ 12
|
||||
S.OBJ.Y2 .EQ 14
|
||||
S.OBJ.W .EQ 16
|
||||
S.OBJ.H .EQ 18
|
||||
S.OBJ.Parent .EQ 20
|
||||
S.OBJ.Childs .EQ 22
|
||||
S.OBJ.Childs .EQ 20
|
||||
*
|
||||
S.OBJ .EQ 24
|
||||
*--------------------------------------
|
||||
S.SCREEN.hDEV .EQ S.OBJ.Parent
|
||||
*
|
||||
S.SCREEN .EQ S.OBJ
|
||||
S.OBJ .EQ 22
|
||||
*--------------------------------------
|
||||
S.WND.F.RESIZE .EQ %00000001
|
||||
S.WND.F.MOVE .EQ %00000010
|
||||
|
@ -133,7 +133,7 @@ ShowCursor.I sta CUR.CB+S.CB.OP
|
||||
|
||||
DrawCursor.I sta CUR.CB+S.CB.OP
|
||||
|
||||
>LDYA L.SCR
|
||||
>LDYA L.WND.Screen
|
||||
jsr OBJ.Get
|
||||
|
||||
>LDYA L.CUR.CB
|
||||
|
@ -6,59 +6,63 @@ WND.Init >PUSHBI 0
|
||||
>SYSCALL2 open
|
||||
bcs .9
|
||||
|
||||
sta SCR+S.SCREEN.hDEV
|
||||
sta WND.Screen+S.OBJ.hPARENT
|
||||
|
||||
>LDYA L.DCB.GFX
|
||||
>STYA IOCTL+S.IOCTL.BUFPTR
|
||||
lda #S.IOCTL.STATCODE.GETDCB
|
||||
sta IOCTL+S.IOCTL.STATCODE
|
||||
|
||||
>PUSHB SCR+S.SCREEN.hDEV
|
||||
>PUSHB WND.Screen+S.OBJ.hPARENT
|
||||
>PUSHBI IOCTL.STATUS
|
||||
>PUSHW L.IOCTL
|
||||
>SYSCALL2 IOCTL
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
WND.Setup >LDYA DCB.GFX+S.DCB.GFX.W
|
||||
>STYA SCR+S.OBJ.W
|
||||
>STYA WND.Screen+S.OBJ.W
|
||||
>STYA WND.Desktop+S.OBJ.W
|
||||
>STYA WND.SysBar+S.OBJ.W
|
||||
|
||||
lda SYSFON.H
|
||||
clc
|
||||
adc #6
|
||||
sta WND.SysBar+S.OBJ.H
|
||||
|
||||
lda DCB.GFX+S.DCB.GFX.H
|
||||
sta SCR+S.OBJ.H
|
||||
sta WND.Screen+S.OBJ.H
|
||||
sec
|
||||
sbc WND.SysBar+S.OBJ.H
|
||||
sta WND.Desktop+S.OBJ.H
|
||||
sta WND.SysBar+S.OBJ.X1
|
||||
|
||||
lda DCB.GFX+S.DCB.GFX.H+1
|
||||
sta WND.SysBar+S.OBJ.H+1
|
||||
sbc #0
|
||||
sta WND.Desktop+S.OBJ.H+1
|
||||
sta WND.SysBar+S.OBJ.X1+1
|
||||
|
||||
>LDYA L.SCR
|
||||
>LDYA L.WND.Screen
|
||||
jsr OBJ.SetX2Y2
|
||||
|
||||
>LDYA L.WND.Desktop
|
||||
>STYA SCR.Childs
|
||||
>STYA WND.Screen.Childs
|
||||
jsr OBJ.SetX2Y2
|
||||
|
||||
>LDYA L.WND.SysBar
|
||||
>STYA SCR.Childs+2
|
||||
>STYA WND.Screen.Childs+2
|
||||
jsr OBJ.SetX2Y2
|
||||
|
||||
lda #CUR.T.ARROW
|
||||
sta WND.Desktop+S.WND.hCUR
|
||||
sta WND.SysBar+S.WND.hCUR
|
||||
|
||||
* sta $C057
|
||||
rts
|
||||
*--------------------------------------
|
||||
WND.Quit lda SCR+S.SCREEN.hDEV
|
||||
WND.Quit lda WND.Screen+S.OBJ.hPARENT
|
||||
beq .8
|
||||
|
||||
pha
|
||||
>PUSHBI IOCTL.CLOSE
|
||||
>PUSHWZ
|
||||
@ -73,12 +77,16 @@ WND.New >STYA ZPPtr1
|
||||
>LDYAI S.WND
|
||||
>SYSCALL2 getmem
|
||||
bcs .9
|
||||
|
||||
>STYA ZPWNDPtr
|
||||
|
||||
ldy #S.WND-1
|
||||
|
||||
.1 lda (ZPPtr1),y
|
||||
sta (ZPWNDPtr),y
|
||||
dey
|
||||
bpl .1
|
||||
|
||||
.9 rts
|
||||
*--------------------------------------
|
||||
WND.Paint >STYA ZPPtr1
|
||||
|
@ -128,7 +128,7 @@ L.IOCTL .DA IOCTL
|
||||
L.DCB.GFX .DA DCB.GFX
|
||||
L.MouseClamp .DA MouseClamp
|
||||
L.CB.Cache .DA CB.Cache
|
||||
L.SCR .DA SCR
|
||||
L.WND.Screen .DA WND.Screen
|
||||
L.WND.Desktop .DA WND.Desktop
|
||||
L.WND.SysBar .DA WND.SysBar
|
||||
*--------------------------------------
|
||||
@ -270,14 +270,14 @@ CB.Get >STYA .1+1
|
||||
GFXWrite.CB >LDYA L.CB.Cache
|
||||
|
||||
GFXWrite.YA pha
|
||||
>PUSHB SCR+S.SCREEN.hDEV
|
||||
>PUSHB WND.Screen+S.OBJ.hPARENT
|
||||
>PUSHBI IOCTL.WRITE
|
||||
pla
|
||||
>PUSHYA
|
||||
>SYSCALL2 IOCTL
|
||||
rts
|
||||
*--------------------------------------
|
||||
GetScreenGC >LDYA L.SCR
|
||||
GetScreenGC >LDYA L.WND.Screen
|
||||
rts
|
||||
*--------------------------------------
|
||||
.INB usr/src/lib/libgui.s.bm
|
||||
@ -335,10 +335,11 @@ MouseClamp .BS 8
|
||||
CB.Cache .BS S.CB
|
||||
OBJ.Cache .BS S.OBJ
|
||||
*--------------------------------------
|
||||
SCR .DA #S.OBJ.T.SCREEN
|
||||
.BS S.SCREEN-1
|
||||
WND.Screen .DA #S.OBJ.T.SCREEN
|
||||
.BS S.WND-1
|
||||
*--------------------------------------
|
||||
SCR.Childs .BS 2 WND.Desktop
|
||||
WND.Screen.Childs
|
||||
.BS 2 WND.Desktop
|
||||
.BS 2 WND.SysBar
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
|
@ -445,9 +445,9 @@ MEM.GetMemByID sta ZPMemMgrSPtr
|
||||
sta ZPMemMgrSPtr+1
|
||||
rts
|
||||
*--------------------------------------
|
||||
Mem.SetOwnerPS0 lda #0
|
||||
.HS 2C BIT ABS
|
||||
Mem.SetOwner lda CORE.LastPSID
|
||||
.HS 2C BIT ABS
|
||||
Mem.SetOwnerPS0 lda #0
|
||||
ldy #S.MEM.OWNERPID
|
||||
sta (ZPMemMgrSPtr),y
|
||||
rts
|
||||
|
Loading…
x
Reference in New Issue
Block a user