mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-10 06:29:33 +00:00
Kernel 0.94
This commit is contained in:
parent
7b10d2318d
commit
fec70d8a4b
Binary file not shown.
Binary file not shown.
|
@ -8,10 +8,10 @@ LIBGUI.ShowCursor .EQ 10
|
|||
LIBGUI.UpdateCursor .EQ 12
|
||||
LIBGUI.ReadMouse .EQ 14
|
||||
LIBGUI.DrawLine .EQ 16
|
||||
LIBGUI.WND.New .EQ 18
|
||||
LIBJUI.WND.Destroy .EQ 20
|
||||
LIBGUI.WND.SetProp .EQ 22
|
||||
LIBGUI.WND.GetProp .EQ 24
|
||||
LIBGUI.OBJ.SetProp .EQ 18
|
||||
LIBGUI.OBJ.GetProp .EQ 20
|
||||
LIBGUI.WND.New .EQ 22
|
||||
LIBJUI.WND.Destroy .EQ 24
|
||||
LIBGUI.WND.Show .EQ 26
|
||||
LIBGUI.WND.Paint .EQ 28
|
||||
*--------------------------------------
|
||||
|
|
|
@ -6,6 +6,7 @@ CUR.bVisible .BS 1
|
|||
CUR.Pos .BS S.POINT
|
||||
*--------------------------------------
|
||||
CUR.HotPoints .DA #0,#0 CUR.T.ARROW
|
||||
.DA #6,#6 CUR.T.MOVE
|
||||
.DA #7,#4 CUR.ResizeX
|
||||
.DA #6,#5 CUR.ResizeY
|
||||
.DA #5,#5 CUR.ResizeXY1
|
||||
|
|
|
@ -227,9 +227,7 @@ CLIP.Line.RIGHT .EQ 2
|
|||
CLIP.Line.BOTTOM .EQ 4
|
||||
CLIP.Line.TOP .EQ 8
|
||||
*--------------------------------------
|
||||
CLIP.Line
|
||||
* >DEBUG
|
||||
jsr CLIP.Line.EncodeP1
|
||||
CLIP.Line jsr CLIP.Line.EncodeP1
|
||||
jsr CLIP.Line.EncodeP2
|
||||
|
||||
.1 lda CLIP.Line.P1
|
||||
|
@ -340,7 +338,7 @@ CLIP.Line.EncodeP2
|
|||
CLIP.Line.EncodeX.AX
|
||||
pha
|
||||
>SCMPAX OBJ.Cache+S.OBJ.X1
|
||||
bmi .1
|
||||
bpl .1
|
||||
|
||||
tya
|
||||
ora #CLIP.Line.LEFT
|
||||
|
@ -349,17 +347,18 @@ CLIP.Line.EncodeX.AX
|
|||
|
||||
.1 pla
|
||||
>SCMPAX OBJ.Cache+S.OBJ.X2
|
||||
bpl .8
|
||||
bmi .8
|
||||
|
||||
tya
|
||||
ora #CLIP.Line.RIGHT
|
||||
|
||||
.8 rts
|
||||
.8 tya
|
||||
rts
|
||||
*--------------------------------------
|
||||
CLIP.Line.EncodeY.AX
|
||||
pha
|
||||
>SCMPAX OBJ.Cache+S.OBJ.Y1
|
||||
bmi .1
|
||||
bpl .1
|
||||
|
||||
tya
|
||||
ora #CLIP.Line.TOP
|
||||
|
@ -368,12 +367,13 @@ CLIP.Line.EncodeY.AX
|
|||
|
||||
.1 pla
|
||||
>SCMPAX OBJ.Cache+S.OBJ.Y2
|
||||
bpl .8
|
||||
bmi .8
|
||||
|
||||
tya
|
||||
ora #CLIP.Line.BOTTOM
|
||||
|
||||
.8 rts
|
||||
.8 tya
|
||||
rts
|
||||
*--------------------------------------
|
||||
CB.Cache.SetX2Y2
|
||||
lda CB.Cache+S.CB.SrcW
|
||||
|
|
|
@ -8,6 +8,7 @@ UpdateCursor lda CUR.T
|
|||
inc
|
||||
cmp #CUR.T.WAIT+12
|
||||
bne SetCursor
|
||||
|
||||
lda #CUR.T.WAIT
|
||||
*--------------------------------------
|
||||
* Set X2,Y2,SrcPtr
|
||||
|
|
|
@ -15,7 +15,8 @@ DrawLine >PULLW CB.Cache+S.CB.Y2
|
|||
>STYA ZPWNDPtr
|
||||
|
||||
jsr DRAW.ToGlobal
|
||||
jsr DRAW.GetInnerW
|
||||
|
||||
jsr DRAW.GetInnerWND for clipping
|
||||
|
||||
lda CB.Cache+S.CB.X2
|
||||
sec
|
||||
|
@ -265,12 +266,17 @@ DrawLine.IncX lda DX
|
|||
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
* drawbitmap (short int OP, S.BM *bitmap, int X1, int Y1)
|
||||
* drawrectangle (short int OP, short int M, int X1, int Y1, int X2, int Y2)
|
||||
*--------------------------------------
|
||||
|
||||
*--------------------------------------
|
||||
* drawbitmap (short int OP, short int M, S.BM *bitmap, int X1, int Y1)
|
||||
*--------------------------------------
|
||||
DrawBitMap clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
DRAW.YABMAtDXDY >STYA ZPBMPtr Src BM
|
||||
DRAW.xBMAtDXDY >LDYA L.BMs,x
|
||||
DRAW.yaBMAtDXDY >STYA ZPBMPtr Src BM
|
||||
|
||||
lda #S.CB.CMD.BITBLT
|
||||
jsr CB.InitCacheA
|
||||
|
@ -386,7 +392,9 @@ DRAW.AddP1YtoCBX
|
|||
sta CB.Cache+1,x
|
||||
rts
|
||||
*--------------------------------------
|
||||
DRAW.GetInnerW ldy #S.OBJ.X1
|
||||
DRAW.GetInnerWND
|
||||
ldy #S.OBJ.X1
|
||||
|
||||
lda (ZPWNDPtr),y
|
||||
sta OBJ.Cache+S.OBJ.X1
|
||||
iny
|
||||
|
@ -394,6 +402,7 @@ DRAW.GetInnerW ldy #S.OBJ.X1
|
|||
sta OBJ.Cache+S.OBJ.X1+1
|
||||
|
||||
ldy #S.WND.InnerY1
|
||||
|
||||
lda (ZPWNDPtr),y
|
||||
sta OBJ.Cache+S.OBJ.Y1
|
||||
iny
|
||||
|
@ -401,6 +410,7 @@ DRAW.GetInnerW ldy #S.OBJ.X1
|
|||
sta OBJ.Cache+S.OBJ.Y1+1
|
||||
|
||||
ldy #S.WND.InnerW
|
||||
|
||||
lda (ZPWNDPtr),y
|
||||
sta OBJ.Cache+S.OBJ.W
|
||||
iny
|
||||
|
@ -410,7 +420,6 @@ DRAW.GetInnerW ldy #S.OBJ.X1
|
|||
iny #S.WND.InnerH
|
||||
lda (ZPWNDPtr),y
|
||||
sta OBJ.Cache+S.OBJ.H
|
||||
|
||||
iny
|
||||
lda (ZPWNDPtr),y
|
||||
sta OBJ.Cache+S.OBJ.H+1
|
||||
|
@ -428,14 +437,10 @@ DrawCBPtrToYA1 pha
|
|||
jsr DrawCBPtrToYA
|
||||
|
||||
lda hCBBuf
|
||||
stz hCBBuf
|
||||
>SYSCALL FreeMem
|
||||
rts
|
||||
*--------------------------------------
|
||||
DrawCBBufToYA ldx L.CB.Buf
|
||||
stx ZPCBPtr
|
||||
ldx L.CB.Buf+1
|
||||
stx ZPCBPtr+1
|
||||
|
||||
DrawCBPtrToYA bit CUR.bVisible
|
||||
bpl .10
|
||||
|
||||
|
|
|
@ -572,7 +572,7 @@ MENU.ShowMItem1 lda #S.CB.CMD.FILLRECT
|
|||
.11 jsr MENU.GetIcon
|
||||
beq .2
|
||||
|
||||
jsr DRAW.YABMAtDXDY
|
||||
jsr DRAW.yaBMAtDXDY
|
||||
|
||||
.2 lda DX
|
||||
clc
|
||||
|
@ -623,8 +623,7 @@ MENU.ShowMItem1 lda #S.CB.CMD.FILLRECT
|
|||
sta DX+1
|
||||
|
||||
ldx #BM.ID.RIGHT
|
||||
>LDYA L.BMs,x
|
||||
jsr DRAW.YABMAtDXDY
|
||||
jsr DRAW.xBMAtDXDY
|
||||
|
||||
.8 lda DY
|
||||
bne .80
|
||||
|
|
|
@ -12,7 +12,7 @@ MOU.Init >PUSHBI 0
|
|||
bne MOU.Init
|
||||
|
||||
* sec
|
||||
rts
|
||||
rts
|
||||
|
||||
.2 sta hDevMouse
|
||||
|
||||
|
@ -60,14 +60,14 @@ MOU.Quit lda hDevMouse
|
|||
rts
|
||||
*--------------------------------------
|
||||
MOU.ReadMouse >PULLW ZPPtr1
|
||||
|
||||
|
||||
lda A2osX.ASCREEN GUI screen active ?
|
||||
cmp DCB.GFX+S.DCB.GFX.DEVID
|
||||
bne .9 no, exit....
|
||||
|
||||
lda hDevMouse
|
||||
beq .99 CS
|
||||
|
||||
|
||||
>PUSHA
|
||||
>PUSHBI IOCTL.READ
|
||||
>PUSHW L.MouseData
|
||||
|
@ -75,15 +75,14 @@ MOU.ReadMouse >PULLW ZPPtr1
|
|||
bcs .99
|
||||
|
||||
ldy #S.MOUSE-1
|
||||
|
||||
|
||||
.1 lda MouseData,y
|
||||
sta (ZPPtr1),y
|
||||
dey
|
||||
bpl .1
|
||||
|
||||
ldy #S.MOUSE.S
|
||||
lda (ZPPtr1),y
|
||||
bit #S.MOUSE.S.MOVE
|
||||
lda MouseData+S.MOUSE.S
|
||||
bit #S.MOUSE.S.MOVE+S.MOUSE.S.CLK
|
||||
beq .8
|
||||
|
||||
jsr MOU.CheckOverMenu
|
||||
|
@ -95,19 +94,19 @@ MOU.ReadMouse >PULLW ZPPtr1
|
|||
jsr MOU.CheckOverWND
|
||||
bcc .8
|
||||
|
||||
|
||||
|
||||
.8 clc
|
||||
rts
|
||||
|
||||
|
||||
.9 sec
|
||||
.99 rts
|
||||
*--------------------------------------
|
||||
MOU.CheckOverMenu
|
||||
.1 ldx MENU.Stack.Top
|
||||
beq .9
|
||||
|
||||
|
||||
lda MENU.Stack-1,x
|
||||
|
||||
|
||||
>SYSCALL GetMemPtr
|
||||
>STYA ZPMENUPtr
|
||||
pha
|
||||
|
@ -119,7 +118,7 @@ MOU.CheckOverMenu
|
|||
adc /S.OBJ.X1
|
||||
jsr MOU.InRectYA
|
||||
bcs .2
|
||||
|
||||
|
||||
jmp MENU.Enter
|
||||
|
||||
.2 lda ZPMENUPtr
|
||||
|
@ -131,11 +130,11 @@ MOU.CheckOverMenu
|
|||
|
||||
jsr MOU.InRectYA
|
||||
bcc .8
|
||||
|
||||
|
||||
jsr MENU.Destroy
|
||||
|
||||
|
||||
bra .1
|
||||
|
||||
|
||||
.9 sec
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
|
@ -144,7 +143,7 @@ MOU.CheckOverSysBut
|
|||
jsr MOU.InRectYA
|
||||
bcs .9
|
||||
jmp SYSBUT.Enter
|
||||
|
||||
|
||||
.9 jsr SYSBUT.Leave
|
||||
sec
|
||||
rts
|
||||
|
@ -152,13 +151,13 @@ MOU.CheckOverSysBut
|
|||
MOU.CheckOverWND
|
||||
ldx WND.Stack.Top
|
||||
beq .9
|
||||
|
||||
|
||||
.1 stx WND.Stack.Idx
|
||||
|
||||
|
||||
lda WND.Stack-1,x
|
||||
>SYSCALL GetMemPtr
|
||||
>STYA ZPWNDPtr
|
||||
|
||||
|
||||
ldy #S.OBJ.F
|
||||
lda (ZPWNDPtr),y
|
||||
|
||||
|
@ -167,7 +166,7 @@ MOU.CheckOverWND
|
|||
|
||||
jsr MOU.ChkWNDBorders
|
||||
bcc .99
|
||||
|
||||
|
||||
.2 lda ZPWNDPtr
|
||||
clc
|
||||
adc #S.OBJ.X1
|
||||
|
@ -176,21 +175,25 @@ MOU.CheckOverWND
|
|||
adc #0
|
||||
|
||||
jsr MOU.InRectYA
|
||||
bcs .7
|
||||
|
||||
ldy #S.WND.TBarY2
|
||||
bcs .7 not over this WND
|
||||
|
||||
lda MouseData+S.MOUSE.S
|
||||
bit #S.MOUSE.S.CLK
|
||||
beq .22
|
||||
|
||||
jsr WND.Bring2Front
|
||||
|
||||
.22 ldy #S.WND.TBarY2
|
||||
lda (ZPWNDPtr),y
|
||||
cmp MouseData+S.MOUSE.Y1
|
||||
iny
|
||||
lda (ZPWNDPtr),y
|
||||
sbc MouseData+S.MOUSE.Y1+1
|
||||
bcc .3
|
||||
|
||||
lda #CUR.T.MOVE
|
||||
jsr SetCursor
|
||||
clc
|
||||
rts
|
||||
|
||||
bcc .3 not in TBAR
|
||||
|
||||
|
||||
bra .5
|
||||
|
||||
.3 iny #S.WND.MBarY2
|
||||
|
||||
lda (ZPWNDPtr),y
|
||||
|
@ -198,16 +201,31 @@ MOU.CheckOverWND
|
|||
iny
|
||||
lda (ZPWNDPtr),y
|
||||
sbc MouseData+S.MOUSE.Y1+1
|
||||
bcc .6
|
||||
|
||||
lda #CUR.T.CROSS
|
||||
bcc .4 not in MBAR
|
||||
|
||||
|
||||
bra .5
|
||||
|
||||
.4 iny #S.WND.SBarY1
|
||||
|
||||
lda (ZPWNDPtr),y
|
||||
cmp MouseData+S.MOUSE.Y1
|
||||
iny
|
||||
lda (ZPWNDPtr),y
|
||||
sbc MouseData+S.MOUSE.Y1+1
|
||||
bcs .6 not in TBAR
|
||||
|
||||
|
||||
|
||||
.5 lda #CUR.T.ARROW
|
||||
jsr SetCursor
|
||||
clc
|
||||
rts
|
||||
|
||||
|
||||
|
||||
|
||||
.6 lda #CUR.T.WAIT
|
||||
jsr SetCursor
|
||||
|
||||
clc
|
||||
rts
|
||||
|
||||
|
@ -224,7 +242,7 @@ MOU.CheckOverWND
|
|||
*--------------------------------------
|
||||
MOU.ChkWNDBorders
|
||||
stz IY
|
||||
|
||||
|
||||
ldy #S.OBJ.X1
|
||||
lda (ZPWNDPtr),y
|
||||
sec
|
||||
|
@ -240,7 +258,7 @@ MOU.ChkWNDBorders
|
|||
|
||||
lda #CUR.T.RESIZEX
|
||||
sta IY
|
||||
|
||||
|
||||
.1 ldy #S.OBJ.Y1
|
||||
lda (ZPWNDPtr),y
|
||||
sec
|
||||
|
@ -259,10 +277,10 @@ MOU.ChkWNDBorders
|
|||
|
||||
lda #CUR.T.RESIZEXY1
|
||||
jmp SetCursor
|
||||
|
||||
|
||||
.2 lda #CUR.T.RESIZEY
|
||||
sta IY
|
||||
|
||||
|
||||
.3 ldy #S.OBJ.X2
|
||||
lda (ZPWNDPtr),y
|
||||
clc
|
||||
|
@ -275,12 +293,12 @@ MOU.ChkWNDBorders
|
|||
adc #0
|
||||
eor MouseData+S.MOUSE.X2+1
|
||||
bne .5
|
||||
|
||||
|
||||
lda IY
|
||||
beq .4
|
||||
|
||||
|
||||
lda #CUR.T.RESIZEXY2
|
||||
jmp SetCursor
|
||||
jmp SetCursor
|
||||
|
||||
.4 lda #CUR.T.RESIZEX
|
||||
sta IY
|
||||
|
@ -300,7 +318,7 @@ MOU.ChkWNDBorders
|
|||
|
||||
lda #CUR.T.RESIZEXY1
|
||||
.6 jmp SetCursor
|
||||
|
||||
|
||||
.7 lda IY
|
||||
bne .6
|
||||
|
||||
|
@ -310,23 +328,23 @@ MOU.ChkWNDBorders
|
|||
MOU.InRectYA >STYA ZPRECTPtr
|
||||
|
||||
ldy #S.RECT.X1
|
||||
|
||||
|
||||
lda MouseData+S.MOUSE.X1
|
||||
cmp (ZPRECTPtr),y
|
||||
iny
|
||||
lda MouseData+S.MOUSE.X1+1
|
||||
sbc (ZPRECTPtr),y
|
||||
bcc .9
|
||||
|
||||
|
||||
iny #S.RECT.Y1
|
||||
|
||||
|
||||
lda MouseData+S.MOUSE.Y1
|
||||
cmp (ZPRECTPtr),y
|
||||
iny
|
||||
lda MouseData+S.MOUSE.Y1+1
|
||||
sbc (ZPRECTPtr),y
|
||||
bcc .9
|
||||
|
||||
|
||||
iny #S.RECT.X2
|
||||
|
||||
lda (ZPRECTPtr),y
|
||||
|
@ -335,8 +353,8 @@ MOU.InRectYA >STYA ZPRECTPtr
|
|||
lda (ZPRECTPtr),y
|
||||
sbc MouseData+S.MOUSE.X1+1
|
||||
bcc .9
|
||||
|
||||
iny #S.RECT.Y2
|
||||
|
||||
iny #S.RECT.Y2
|
||||
|
||||
lda (ZPRECTPtr),y
|
||||
cmp MouseData+S.MOUSE.Y1
|
||||
|
@ -344,12 +362,12 @@ MOU.InRectYA >STYA ZPRECTPtr
|
|||
lda (ZPRECTPtr),y
|
||||
sbc MouseData+S.MOUSE.Y1+1
|
||||
bcc .9
|
||||
|
||||
|
||||
clc
|
||||
rts
|
||||
|
||||
.9 sec
|
||||
.99 rts
|
||||
.99 rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE usr/src/lib/libgui.s.mou
|
||||
|
|
58
LIB/LIBGUI.S.OBJ.txt
Normal file
58
LIB/LIBGUI.S.OBJ.txt
Normal file
|
@ -0,0 +1,58 @@
|
|||
NEW
|
||||
AUTO 3,1
|
||||
*--------------------------------------
|
||||
OBJ.New
|
||||
*--------------------------------------
|
||||
* hOBJ, Prop8, Value16
|
||||
*--------------------------------------
|
||||
OBJ.SetProp ldy #3
|
||||
|
||||
lda (pStack),y hOBJ
|
||||
|
||||
>SYSCALL2 GetMemPtr
|
||||
>STYA ZPObjPtr
|
||||
|
||||
ldy #2
|
||||
lda (pStack),y
|
||||
|
||||
tay
|
||||
|
||||
lda (ZPObjPtr),y
|
||||
pha old value
|
||||
>PULLA
|
||||
sta (ZPObjPtr),y
|
||||
|
||||
iny
|
||||
lda (ZPObjPtr),y
|
||||
tax
|
||||
>PULLA
|
||||
sta (ZPObjPtr),y
|
||||
|
||||
txa
|
||||
ply
|
||||
|
||||
>RET 2
|
||||
*--------------------------------------
|
||||
* hOBJ, Prop8
|
||||
*--------------------------------------
|
||||
OBJ.GetProp >PULLA
|
||||
pha
|
||||
|
||||
>PULLA
|
||||
>SYSCALL2 GetMemPtr
|
||||
>STYA ZPObjPtr
|
||||
|
||||
ply
|
||||
|
||||
lda (ZPObjPtr),y
|
||||
pha
|
||||
iny
|
||||
lda (ZPObjPtr),y
|
||||
ply
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE usr/src/lib/libgui.s.obj
|
||||
LOAD usr/src/lib/libgui.s
|
||||
ASM
|
|
@ -114,8 +114,8 @@ SYSBAR.ShowSysBut
|
|||
adc #0
|
||||
sta DY+1
|
||||
|
||||
>LDYA L.BM.Apple
|
||||
jsr DRAW.YABMAtDXDY
|
||||
ldx #BM.ID.APPLE
|
||||
jsr DRAW.xBMAtDXDY
|
||||
|
||||
lda RECT.SysBut+S.RECT.X1
|
||||
clc
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -126,10 +126,10 @@ CS.START cld
|
|||
.DA UpdateCursor
|
||||
.DA MOU.ReadMouse
|
||||
.DA DrawLine
|
||||
.DA OBJ.SetProp
|
||||
.DA OBJ.GetProp
|
||||
.DA WND.New
|
||||
.DA WND.Destroy
|
||||
.DA WND.SetProp
|
||||
.DA WND.GetProp
|
||||
.DA WND.Show
|
||||
.DA WND.Paint
|
||||
L.WND.fPaint .DA WND.fPaint
|
||||
|
@ -143,7 +143,6 @@ L.DCB.GFX .DA DCB.GFX
|
|||
L.MouseClamp .DA MouseClamp
|
||||
L.MouseData .DA MouseData
|
||||
L.CB.PTR .DA CB.PTR
|
||||
L.CB.Buf .DA CB.Buf
|
||||
L.CB.Cache .DA CB.Cache
|
||||
L.OBJ.Cache .DA OBJ.Cache
|
||||
L.WND.Screen .DA WND.Screen
|
||||
|
@ -232,7 +231,7 @@ LIB.UNLOAD dec LibCount
|
|||
.8 clc
|
||||
rts
|
||||
*--------------------------------------
|
||||
CB.InitCacheA sta CB.Cache
|
||||
CB.InitCacheA sta CB.Cache+S.CB.CMD
|
||||
*--------------------------------------
|
||||
CB.ClearCache ldx #S.CB-1
|
||||
|
||||
|
@ -253,7 +252,12 @@ CB.GetInCache >STYA .1+1
|
|||
|
||||
rts
|
||||
*--------------------------------------
|
||||
GetCBBuf >LDYAI 512
|
||||
GetCBBuf clc
|
||||
|
||||
ldx hCBBuf
|
||||
bne .9
|
||||
|
||||
>LDYAI 512
|
||||
>SYSCALL GetMem
|
||||
bcs .9
|
||||
|
||||
|
@ -272,23 +276,18 @@ PutCBCache2CBBuf
|
|||
ldx #0
|
||||
|
||||
.1 lda CB.Cache,x
|
||||
jsr PutA2CBBuf
|
||||
inx
|
||||
sta (ZPCBBufPtr)
|
||||
inc ZPCBBufPtr
|
||||
bne .2
|
||||
|
||||
inc ZPCBBufPtr+1
|
||||
|
||||
.2 inx
|
||||
dey
|
||||
bpl .1
|
||||
|
||||
rts
|
||||
*--------------------------------------
|
||||
PutAX2CBBuf jsr PutA2CBBuf
|
||||
|
||||
txa
|
||||
|
||||
PutA2CBBuf sta (ZPCBBufPtr)
|
||||
inc ZPCBBufPtr
|
||||
bne .8
|
||||
inc ZPCBBufPtr+1
|
||||
.8 rts
|
||||
*--------------------------------------
|
||||
GFXWrite.CB >PUSHB WND.Screen+S.OBJ.hPARENT
|
||||
>PUSHBI IOCTL.WRITE
|
||||
>PUSHW L.CB.Cache
|
||||
|
@ -367,6 +366,7 @@ OBJ.SetX2Y2 >STYA ZPPtr1
|
|||
.INB usr/src/lib/libgui.s.mbar
|
||||
.INB usr/src/lib/libgui.s.menu
|
||||
.INB usr/src/lib/libgui.s.mou
|
||||
.INB usr/src/lib/libgui.s.obj
|
||||
.INB usr/src/lib/libgui.s.pat
|
||||
.INB usr/src/lib/libgui.s.sysbar
|
||||
.INB usr/src/lib/libgui.s.text
|
||||
|
@ -418,13 +418,13 @@ CB.PTR .DA #S.CB.CMD.BITBLT
|
|||
.DA #0
|
||||
.BS S.CB-4
|
||||
*--------------------------------------
|
||||
CB.Buf .BS S.CB+1 +Ending 0
|
||||
CB.Cache .BS S.CB
|
||||
OBJ.Cache .BS S.OBJ
|
||||
*--------------------------------------
|
||||
MENU.Stack.Top .BS 1
|
||||
MENU.Stack .BS MENU.MAX
|
||||
*--------------------------------------
|
||||
WND.hWND .BS 1
|
||||
WND.Stack.Idx .BS 1
|
||||
WND.Stack.Top .BS 1
|
||||
WND.Stack .BS WND.MAX
|
||||
|
@ -559,8 +559,8 @@ PREFS.MBARXMARGIN .DA #5
|
|||
PREFS.MENUCOLOR .DA #C.WHITE
|
||||
PREFS.SYSBARCOLOR .DA #C.WHITE
|
||||
PREFS.BORDERCOLOR .DA #C.BLACK
|
||||
PREFS.TBARCOLORA .DA #C16.L.BLUE
|
||||
PREFS.TBARCOLORI .DA #C16.AQUA
|
||||
PREFS.TBARCOLORA .DA #C16.D.BLUE
|
||||
PREFS.TBARCOLORI .DA #C16.L.BLUE
|
||||
PREFS.MBARCOLOR .DA #C.WHITE
|
||||
PREFS.SBARCOLOR .DA #C.WHITE
|
||||
PREFS.DESKTOPCOLOR .DA #C16.D.BLUE
|
||||
|
|
|
@ -46,33 +46,35 @@ L.LOGOFILE .DA LOGOFILE
|
|||
L.WND.TITLE .DA WND.TITLE
|
||||
L.WND.MBAR .DA WND.MBAR
|
||||
L.WND.STATUS .DA WND.STATUS
|
||||
L.WND.Test.fPaint .DA WND.Test.fPaint
|
||||
.DA 0
|
||||
*--------------------------------------
|
||||
CS.INIT >LDYA L.LIBGUI
|
||||
>SYSCALL LoadLib
|
||||
bcs .9
|
||||
|
||||
sta hLIBGUI
|
||||
|
||||
* clc
|
||||
* clc
|
||||
.9
|
||||
CS.INIT.RTS rts
|
||||
*--------------------------------------
|
||||
CS.RUN >LIBCALL hLIBGUI,LIBGUI.ShowCursor
|
||||
|
||||
>PUSHW L.LOGOFILE
|
||||
>PUSHBI O.RDONLY
|
||||
>PUSHBI O.RDONLY
|
||||
>PUSHBI $CB Type
|
||||
>PUSHWZ Aux type
|
||||
>SYSCALL LoadStkObj
|
||||
bcs CS.INIT.RTS
|
||||
|
||||
|
||||
stx hLogo
|
||||
|
||||
|
||||
CS.RUN.LOOP >SLEEP
|
||||
|
||||
>PUSHW L.MouseData
|
||||
>LIBCALL hLIBGUI,LIBGUI.ReadMouse
|
||||
bcs .8
|
||||
bcs CS.RUN.LOOP
|
||||
|
||||
lda MouseData+S.MOUSE.S
|
||||
bit #S.MOUSE.S.MOVE
|
||||
|
@ -86,27 +88,18 @@ CS.RUN.LOOP >SLEEP
|
|||
.1 bit #S.MOUSE.S.CLK
|
||||
beq .2
|
||||
|
||||
* >LDA.G CUR.T
|
||||
* inc
|
||||
* inc
|
||||
* cmp #CUR.T.WAIT+2
|
||||
* bne .11
|
||||
|
||||
* lda #CUR.T.ARROW
|
||||
|
||||
*.11 >STA.G CUR.T
|
||||
* >LIBCALL hLIBGUI,LIBGUI.SetCursor
|
||||
* jmp CS.RUN.LOOP
|
||||
bra CS.RUN.LOOP
|
||||
|
||||
.2 bit #S.MOUSE.S.DCLK
|
||||
beq .8
|
||||
|
||||
jsr WND.Test
|
||||
|
||||
.8 jmp CS.RUN.LOOP
|
||||
beq CS.RUN.LOOP
|
||||
|
||||
jsr WND.Test
|
||||
|
||||
bra CS.RUN.LOOP
|
||||
|
||||
clc
|
||||
rts
|
||||
rts
|
||||
*--------------------------------------
|
||||
CS.DOEVENT lda (pEvent)
|
||||
bpl .9
|
||||
|
@ -120,7 +113,7 @@ CS.QUIT clc
|
|||
CS.QUIT.RTS rts
|
||||
*--------------------------------------
|
||||
WND.Test >PUSHBI S.WND.F.RESIZE+S.WND.F.MOVE+S.WND.F.CLOSE+S.WND.F.MAX+S.WND.F.MIN
|
||||
|
||||
|
||||
>PUSHW MouseData+S.MOUSE.X1
|
||||
>PUSHW MouseData+S.MOUSE.Y1
|
||||
>PUSHWI 280
|
||||
|
@ -128,41 +121,50 @@ WND.Test >PUSHBI S.WND.F.RESIZE+S.WND.F.MOVE+S.WND.F.CLOSE+S.WND.F.MAX+S.WND.F.
|
|||
>LIBCALL hLIBGUI,LIBGUI.WND.New
|
||||
bcs CS.QUIT.RTS
|
||||
sta hWND
|
||||
|
||||
|
||||
>PUSHA A = hWND
|
||||
>PUSHBI S.WND.BGCOLOR
|
||||
>PUSHWI C.WHITE
|
||||
>LIBCALL hLIBGUI,LIBGUI.OBJ.SetProp
|
||||
|
||||
>PUSHB hWND
|
||||
>PUSHBI S.WND.TITLE
|
||||
>PUSHW L.WND.TITLE
|
||||
>LIBCALL hLIBGUI,LIBGUI.WND.SetProp
|
||||
|
||||
>LIBCALL hLIBGUI,LIBGUI.OBJ.SetProp
|
||||
|
||||
>PUSHB hWND
|
||||
>PUSHBI S.WND.MBAR
|
||||
>PUSHW L.WND.MBAR
|
||||
>LIBCALL hLIBGUI,LIBGUI.WND.SetProp
|
||||
>LIBCALL hLIBGUI,LIBGUI.OBJ.SetProp
|
||||
|
||||
>PUSHB hWND
|
||||
>PUSHBI S.WND.STATUS
|
||||
>PUSHW L.WND.STATUS
|
||||
>LIBCALL hLIBGUI,LIBGUI.WND.SetProp
|
||||
>LIBCALL hLIBGUI,LIBGUI.OBJ.SetProp
|
||||
|
||||
>PUSHB hWND
|
||||
>PUSHBI S.WND.BGCOLOR
|
||||
>PUSHWI C.WHITE
|
||||
>LIBCALL hLIBGUI,LIBGUI.WND.SetProp
|
||||
>PUSHBI S.WND.fPaint
|
||||
>PUSHW L.WND.Test.fPaint
|
||||
>LIBCALL hLIBGUI,LIBGUI.OBJ.SetProp
|
||||
>STYA WND.Test.fPaint1+1
|
||||
|
||||
lda hWND
|
||||
>LIBCALL hLIBGUI,LIBGUI.WND.Show
|
||||
|
||||
lda hWND
|
||||
>LIBCALL hLIBGUI,LIBGUI.WND.Paint
|
||||
rts
|
||||
*--------------------------------------
|
||||
WND.Test.fPaint sta hWND
|
||||
|
||||
WND.Test.fPaint1
|
||||
jsr $ffff
|
||||
|
||||
>PUSHB hWND
|
||||
>PUSHBI S.CB.OP.SET
|
||||
>PUSHBI C.BLACK
|
||||
>PUSHWI 0
|
||||
>PUSHWI 0
|
||||
>PUSHWI 300
|
||||
>PUSHWI 80
|
||||
>PUSHWI 10
|
||||
>PUSHWI 10
|
||||
>PUSHWI 200
|
||||
>PUSHWI 60
|
||||
>LIBCALL hLIBGUI,LIBGUI.DrawLine
|
||||
|
||||
rts
|
||||
|
@ -184,7 +186,7 @@ WND.MBAR .DA #.1-* next
|
|||
.DA 0 XT
|
||||
.DA 0 X2
|
||||
.DA 0 MENU
|
||||
.AZ "File"
|
||||
.AZ "File"
|
||||
|
||||
.1 .DA #.2-* next
|
||||
.DA #0 status
|
||||
|
|
Loading…
Reference in New Issue
Block a user