diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index ce1d5bfc..94f3ad15 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/LIB/LIBGUI.S.MBAR.txt b/LIB/LIBGUI.S.MBAR.txt index 58523d31..673f2be6 100644 --- a/LIB/LIBGUI.S.MBAR.txt +++ b/LIB/LIBGUI.S.MBAR.txt @@ -166,10 +166,12 @@ MBAR.Enter ldy #S.WND.pMBAR lda CB.Cache+S.CB.X2+1 sbc MSG+S.MSG.X1+1 bcc .7 -* >DEBUG + ldy #S.MBITEM.S lda (ZPPtr1),y - ora #S.MBITEM.S.SELECTED + bmi .8 Already Selected, nothing to do + + eor #S.MBITEM.S.SELECTED sta (ZPPtr1),y jsr MENU.DestroyAll @@ -177,18 +179,27 @@ MBAR.Enter ldy #S.WND.pMBAR jsr CB.GetBuf bcs .9 - jsr MBAR.DrawMBItem +.2 jsr MBAR.DrawMBItem + +.3 jsr MBAR.NextMBItem + + lda (ZPPtr1) + beq .6 + + ldy #S.MBITEM.S + lda (ZPPtr1),y + bpl .3 + + eor #S.MBITEM.S.SELECTED + sta (ZPPtr1),y - >LDYA L.WND.Screen + jsr MBAR.SetX2 + bra .2 + +.6 >LDYA L.WND.Screen jmp CB.FlushBufToYA -.7 lda CB.Cache+S.CB.X2 - sta CB.Cache+S.CB.X1 - lda CB.Cache+S.CB.X2+1 - sta CB.Cache+S.CB.X1+1 - - lda #S.MBITEM - jsr SkipAPtr1 +.7 jsr MBAR.NextMBItem bra .1 .8 clc @@ -218,13 +229,7 @@ MBAR.Draw >SYSCALL2 GetMemPtr jsr MBAR.DrawMBItem bcs .9 - lda CB.Cache+S.CB.X2 - sta CB.Cache+S.CB.X1 - lda CB.Cache+S.CB.X2+1 - sta CB.Cache+S.CB.X1+1 - - lda #S.MBITEM - jsr SkipAPtr1 + jsr MBAR.NextMBItem bra .1 .8 clc @@ -293,6 +298,14 @@ MBAR.GetMBItems lda ZPMENUPtr sta ZPPtr1+1 rts *-------------------------------------- +MBAR.NextMBItem lda CB.Cache+S.CB.X2 + sta CB.Cache+S.CB.X1 + lda CB.Cache+S.CB.X2+1 + sta CB.Cache+S.CB.X1+1 + + lda #S.MBITEM + jmp SkipAPtr1 +*-------------------------------------- MBAR.SetX2 lda CB.Cache+S.CB.X1 clc ldy #S.MBITEM.W