From 7b10d2318d8a9ec53c4058982a456ef22edb8743 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Fri, 23 Oct 2020 17:23:19 +0200 Subject: [PATCH] Kernel 0.94 --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes INC/LIBGUI.I.txt | 34 +++++---- LIB/LIBGUI.G.CUR.txt | 29 ++++++++ LIB/LIBGUI.S.DRAW.txt | 1 - LIB/LIBGUI.S.MBAR.txt | 95 +++++++++++++++++++++++ LIB/LIBGUI.S.MENU.txt | 157 ++++++++++----------------------------- LIB/LIBGUI.S.MOU.txt | 50 +++++++++++-- LIB/LIBGUI.S.SYSBAR.txt | 21 +++--- LIB/LIBGUI.S.WND.txt | 8 +- LIB/LIBGUI.S.txt | 27 +++++++ 10 files changed, 267 insertions(+), 155 deletions(-) create mode 100644 LIB/LIBGUI.S.MBAR.txt diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 2d7f40521c4cd479d65b7ad5433ee4604a89f6fb..5cbf90271c514265efcc3cebb16ac1fc7f044213 100644 GIT binary patch delta 43738 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 delta 38550 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 L.OBJ.Cache jmp OBJ.SetX2Y2 - *-------------------------------------- DrawCBPtrToYA1 pha diff --git a/LIB/LIBGUI.S.MBAR.txt b/LIB/LIBGUI.S.MBAR.txt new file mode 100644 index 00000000..96599772 --- /dev/null +++ b/LIB/LIBGUI.S.MBAR.txt @@ -0,0 +1,95 @@ +NEW + AUTO 3,1 +*-------------------------------------- +MBAR.Init >STYA ZPMENUPtr + >STYA ZPPtr1 + + ldy #S.MBITEM.S + lda (ZPPtr1),y + bmi .80 + + stz DX + stz DX+1 + +.1 lda (ZPPtr1) + beq .8 + + lda #S.MBITEM.TEXT + clc + adc ZPPtr1 + tay + lda ZPPtr1+1 + adc #0 + + ldx hSYSFONB + jsr FON.GetTextSize + + ldy #S.MBITEM.X1 + + lda DX + sta (ZPPtr1),y + + iny + + lda DX+1 + sta (ZPPtr1),y + + iny #S.MBITEM.XT + + lda DX + clc + adc PREFS.MBARXMARGIN + sta DX + sta (ZPPtr1),y + + iny + + lda DX+1 + adc #0 + sta DX+1 + sta (ZPPtr1),y + + lda DX + clc + adc CB.CACHE+S.CB.SrcW + sta DX + + lda DX+1 + adc CB.CACHE+S.CB.SrcW+1 + sta DX+1 + + iny #S.MBITEM.X2 + + lda DX + clc + adc PREFS.MBARXMARGIN + sta DX + sta (ZPPtr1),y + + iny + + lda DX+1 + adc #0 + sta DX+1 + sta (ZPPtr1),y + + lda (ZPPtr1) + clc + adc ZPPtr1 + sta ZPPtr1 + bcc .1 + inc ZPPtr1+1 + bra .1 + +.8 lda #$80 + + ldy #S.MBITEM.S + sta (ZPMENUPtr),y + +.80 clc + rts +*-------------------------------------- +MAN +SAVE usr/src/lib/libgui.s.mbar +LOAD usr/src/lib/libgui.s +ASM diff --git a/LIB/LIBGUI.S.MENU.txt b/LIB/LIBGUI.S.MENU.txt index 2a668fe8..fad05c1f 100644 --- a/LIB/LIBGUI.S.MENU.txt +++ b/LIB/LIBGUI.S.MENU.txt @@ -1,94 +1,6 @@ NEW AUTO 3,1 *-------------------------------------- -MENU.MBarInit >STYA ZPMENUPtr - >STYA ZPPtr1 - - ldy #S.MBAR.S - lda (ZPPtr1),y - bmi .80 - - stz DX - stz DX+1 - -.1 lda (ZPPtr1) - beq .8 - - lda #S.MBAR.TEXT - clc - adc ZPPtr1 - tay - lda ZPPtr1+1 - adc #0 - - ldx hSYSFONB - jsr FON.GetTextSize - - ldy #S.MBAR.X1 - - lda DX - sta (ZPPtr1),y - - iny - - lda DX+1 - sta (ZPPtr1),y - - iny #S.MBAR.XT - - lda DX - clc - adc PREFS.MBARXMARGIN - sta DX - sta (ZPPtr1),y - - iny - - lda DX+1 - adc #0 - sta DX+1 - sta (ZPPtr1),y - - lda DX - clc - adc CB.CACHE+S.CB.SrcW - sta DX - - lda DX+1 - adc CB.CACHE+S.CB.SrcW+1 - sta DX+1 - - iny #S.MBAR.X2 - - lda DX - clc - adc PREFS.MBARXMARGIN - sta DX - sta (ZPPtr1),y - - iny - - lda DX+1 - adc #0 - sta DX+1 - sta (ZPPtr1),y - - lda (ZPPtr1) - clc - adc ZPPtr1 - sta ZPPtr1 - bcc .1 - inc ZPPtr1+1 - bra .1 - -.8 lda #$80 - - ldy #S.MBAR.S - sta (ZPMENUPtr),y - -.80 clc - rts -*-------------------------------------- * MENU.New(int X, int Y, *S.RECT parent *S.MITEM mitems) *-------------------------------------- MENU.New ldy MENU.Stack.Top @@ -174,34 +86,19 @@ MENU.New.RTS rts * hMENU8, ItemID8, Prop8, Value16 *-------------------------------------- MENU.SetMItemProp - ldy #4 - lda (pStack),y hMENU + ldy #4 hMENU + lda (pStack),y >SYSCALL2 GetMemPtr >STYA ZPMENUPtr - - bra .7 - - jsr MENU.GetMItems -.1 lda (ZPPtr1) - beq .8 - - ldy #S.MITEM.F - lda (ZPPtr1),y - cmp #S.MITEM.F.SEP - beq .2 - - ldy #S.MITEM.ID - lda (ZPPtr1),y - ldy #3 ID8 - cmp (pStack),y - beq .7 - -.2 jsr MENU.NextMItem - bra .1 + lda (pStack),y + tax -.7 ldy #2 Prop8 + jsr MENU.FindMItemByID + bcs .9 + + ldy #2 Prop8 lda (pStack),y tay @@ -213,7 +110,10 @@ MENU.SetMItemProp >PULLA sta (ZPPtr1),y -.8 >RET 3 +* clc + +.8 >POP 3 +.9 rts *-------------------------------------- MENU.Show >SYSCALL2 GetMemPtr >STYA ZPMENUPtr @@ -314,10 +214,7 @@ MENU.Enter jsr MENU.GetDX >LDYA L.WND.Screen jsr DrawCBPtrToYA1 - - - - rts + jmp MENU.NewSubMenu .8 ldy #S.MENU.Selected nothing to select.... lda (ZPMENUPtr),y @@ -338,6 +235,34 @@ MENU.Enter jsr MENU.GetDX .9 rts *-------------------------------------- +MENU.NewSubMenu ldy #S.MENU.Selected + lda (ZPMENUPtr),y + tax + + jsr MENU.FindMItemByID + jsr MENU.GetDX + + lda DX + clc + adc Counter + tay + lda DX+1 + adc Counter+1 + + >PUSHYA X1 + >PUSHW DY Y1 + >PUSHWI DX Parent RECT + + ldy #S.MITEM.pMENU+1 + lda (ZPPtr1),y + >PUSHA + dey + lda (ZPPtr1),y + >PUSHA + + jsr MENU.New + jmp MENU.Show +*-------------------------------------- MENU.SetMenuSizePos stz IY Icon Margin W diff --git a/LIB/LIBGUI.S.MOU.txt b/LIB/LIBGUI.S.MOU.txt index 4a18403c..e3faf9c7 100644 --- a/LIB/LIBGUI.S.MOU.txt +++ b/LIB/LIBGUI.S.MOU.txt @@ -153,7 +153,9 @@ MOU.CheckOverWND ldx WND.Stack.Top beq .9 -.1 lda WND.Stack-1,x +.1 stx WND.Stack.Idx + + lda WND.Stack-1,x >SYSCALL GetMemPtr >STYA ZPWNDPtr @@ -174,16 +176,48 @@ MOU.CheckOverWND adc #0 jsr MOU.InRectYA - bcs .3 + bcs .7 + + 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.WAIT - jmp SetCursor + lda #CUR.T.MOVE + jsr SetCursor + clc + rts + +.3 iny #S.WND.MBarY2 -.3 lda #CUR.T.ARROW - jmp SetCursor + lda (ZPWNDPtr),y + cmp MouseData+S.MOUSE.Y1 + iny + lda (ZPWNDPtr),y + sbc MouseData+S.MOUSE.Y1+1 + bcc .6 + + lda #CUR.T.CROSS + jsr SetCursor + clc + rts -.8 +.6 lda #CUR.T.WAIT + jsr SetCursor + clc + rts + +.7 ldx WND.Stack.Idx + + dex + bne .1 + + lda #CUR.T.ARROW + jsr SetCursor .9 sec .99 rts @@ -217,7 +251,7 @@ MOU.ChkWNDBorders iny lda (ZPWNDPtr),y sbc #0 - lda MouseData+S.MOUSE.Y1+1 + eor MouseData+S.MOUSE.Y1+1 bne .3 lda IY diff --git a/LIB/LIBGUI.S.SYSBAR.txt b/LIB/LIBGUI.S.SYSBAR.txt index d15a627c..866c1a69 100644 --- a/LIB/LIBGUI.S.SYSBAR.txt +++ b/LIB/LIBGUI.S.SYSBAR.txt @@ -1,20 +1,11 @@ NEW AUTO 3,1 *-------------------------------------- -SYSBUT.Enter ldy #S.MOUSE.X1 - lda (ZPPtr1),y - cmp RECT.SysBut+S.RECT.X2 - iny - - lda (ZPPtr1),y - sbc RECT.SysBut+S.RECT.X2+1 - bcs .8 - - sec +SYSBUT.Enter sec ror WND.SYSBAR.bSysBut jsr GetCBBuf - bcs .9 + bcs .99 jsr SYSBAR.ShowSysBut @@ -26,11 +17,17 @@ SYSBUT.Enter ldy #S.MOUSE.X1 >PUSHW L.RECT.SysBut Parent RECT >PUSHW L.MENU.Sys jsr MENU.New - bcs .9 +.99 bcs .9 sta hSysMenu >PUSHA hSysMenu + >PUSHBI 4 + >PUSHBI S.MITEM.pMENU + >PUSHW L.MENU.Sys.Programs + jsr MENU.SetMItemProp + + >PUSHB hSysMenu >PUSHBI 6 >PUSHBI S.MITEM.pMENU >PUSHW L.MENU.Sys.Settings diff --git a/LIB/LIBGUI.S.WND.txt b/LIB/LIBGUI.S.WND.txt index 9e88aa83..77445029 100644 --- a/LIB/LIBGUI.S.WND.txt +++ b/LIB/LIBGUI.S.WND.txt @@ -910,7 +910,7 @@ WND.PaintMBar jsr CB.ClearCache lda (ZPWNDPtr),y ply - jsr MENU.MBarInit + jsr MBAR.Init .1 lda (ZPMENUPtr) beq .8 @@ -929,14 +929,14 @@ WND.PaintMBar jsr CB.ClearCache lda hSYSFONB sta CB.CACHE+S.CB.hFont - ldy #S.MBAR.XT + ldy #S.MBITEM.XT lda (ZPMENUPtr),y clc ldy #S.OBJ.X1 adc (ZPWNDPtr),y sta CB.CACHE+S.CB.X1 - ldy #S.MBAR.XT+1 + ldy #S.MBITEM.XT+1 lda (ZPMENUPtr),y ldy #S.OBJ.X1+1 adc (ZPWNDPtr),y @@ -952,7 +952,7 @@ WND.PaintMBar jsr CB.ClearCache adc #0 sta CB.CACHE+S.CB.Y1+1 - lda #S.MBAR.TEXT + lda #S.MBITEM.TEXT clc adc ZPMENUPtr sta CB.CACHE+S.CB.TxtPtr diff --git a/LIB/LIBGUI.S.txt b/LIB/LIBGUI.S.txt index fc8c44ec..c15ddd79 100644 --- a/LIB/LIBGUI.S.txt +++ b/LIB/LIBGUI.S.txt @@ -155,6 +155,7 @@ L.RECT.SysBut .DA RECT.SysBut L.RECT.SysWNDs .DA RECT.SysWNDs L.RECT.SysClk .DA RECT.SysClk L.MENU.Sys .DA MENU.Sys +L.MENU.Sys.Programs .DA MENU.Sys.Programs L.MENU.Sys.Settings .DA MENU.Sys.Settings *-------------------------------------- L.BMs .EQ *-2 @@ -169,6 +170,7 @@ L.BM.Down .DA BM.Down *-------------------------------------- L.CUR.SaveBuf .DA CUR.SaveBuf L.Cursors .DA CUR.Arrow + .DA CUR.Move .DA CUR.ResizeX .DA CUR.ResizeY .DA CUR.ResizeXY1 @@ -362,6 +364,7 @@ OBJ.SetX2Y2 >STYA ZPPtr1 .INB usr/src/lib/libgui.s.cur .INB usr/src/lib/libgui.s.draw .INB usr/src/lib/libgui.s.fon + .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.pat @@ -422,6 +425,7 @@ OBJ.Cache .BS S.OBJ MENU.Stack.Top .BS 1 MENU.Stack .BS MENU.MAX *-------------------------------------- +WND.Stack.Idx .BS 1 WND.Stack.Top .BS 1 WND.Stack .BS WND.MAX *-------------------------------------- @@ -503,6 +507,29 @@ MENU.Sys .77 .AZ "Ctrl-R" .8 .DA #0 *-------------------------------------- +MENU.Sys.Programs +.1 .DA #.2-* next + .DA #S.MITEM.F.ITEM F + .DA #0 S + .DA #42 ID + .DA BM.ID.APPLE pICON + .DA #0 + .DA #0 + .DA #0 KEYSTR + .AZ "GUITest1" + +.2 .DA #.3-* next + .DA #S.MITEM.F.ITEM F + .DA #0 S + .DA #44 ID + .DA BM.ID.APPLE pICON + .DA #0 + .DA #0 + .DA #0 KEYSTR + .AZ "GUITest2" + +.3 .DA #0 +*-------------------------------------- MENU.Sys.Settings .1 .DA #.2-* next .DA #S.MITEM.F.ITEM F