diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 87d36f4e..7aad878c 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/BIN/EDIT.S.DLG.txt b/BIN/EDIT.S.DLG.txt index b95fe928..747efb9d 100644 --- a/BIN/EDIT.S.DLG.txt +++ b/BIN/EDIT.S.DLG.txt @@ -30,12 +30,10 @@ DLG.Open >STYA ZPPTR2 bcs .9 ldy #S.DLG.Title - jsr DLG.DrawInvBar + jsr DLG.DrawBar .99 bcs .9 - jsr SCRN.LineBufInitNorm - - jsr DLG.VBarToLineBuf + jsr SCRN.LineBufInitDLG ldy #S.DLG.W lda (ZPPTR1),y @@ -83,7 +81,7 @@ DLG.Open >STYA ZPPTR2 bcs .9 ldy #S.DLG.Status - jsr DLG.DrawInvBar + jsr DLG.DrawBar bcs .9 ldy #S.DLG.Ctrls @@ -198,7 +196,7 @@ DLG.CTRL.Draw sta TmpByte A=CtrlID jmp (J.DLG.CTRL.Draw,x) *-------------------------------------- DLG.CTRL.Draw.LBL - jsr SCRN.LineBufInitNorm + jsr SCRN.LineBufInitDlg jsr DLG.CTRL.GotoOrg bcs .9 @@ -222,7 +220,7 @@ DLG.CTRL.Draw.LBL .9 rts *-------------------------------------- DLG.CTRL.Draw.TB - jsr SCRN.LineBufInitNorm + jsr SCRN.LineBufInitEdit jsr DLG.CTRL.GotoOrg bcs .9 @@ -289,7 +287,7 @@ DLG.CTRL.Draw.TB .9 rts *-------------------------------------- DLG.CTRL.Draw.OL - jsr SCRN.LineBufInitNorm + jsr SCRN.LineBufInitDlg jsr DLG.CTRL.GotoOrg bcs .9 @@ -336,7 +334,7 @@ DLG.CTRL.Draw.OL .9 rts *-------------------------------------- DLG.CTRL.Draw.BUT - jsr SCRN.LineBufInitInv + jsr SCRN.LineBufInitBut jsr DLG.CTRL.GotoOrg bcs .9 @@ -369,9 +367,7 @@ DLG.CTRL.Draw.BUT *-------------------------------------- DLG.CTRL.Focus sta TmpByte A=CtrlID - jsr SCRN.LineBufInitNorm - - ldy TmpByte + tay lda (ZPPTR1),y Ctrl Definition tay lda (ZPPTR1),y Ctrl Type @@ -382,6 +378,8 @@ DLG.CTRL.Focus.LBL clc rts DLG.CTRL.Focus.TB + jsr SCRN.LineBufInitEdit + jsr DLG.CTRL.GotoOrg ldy #S.DLG.Focus @@ -452,6 +450,8 @@ DLG.CTRL.Focus.TB jmp SCRN.GotoXY DLG.CTRL.Focus.OL + jsr SCRN.LineBufInitNorm + jsr DLG.CTRL.GotoOrg ldy #S.DLG.Focus @@ -481,6 +481,8 @@ DLG.CTRL.Focus.OL jmp SCRN.LineBufOut DLG.CTRL.Focus.BUT + jsr SCRN.LineBufInitNorm + jsr DLG.CTRL.GotoOrg ldy #S.DLG.Focus @@ -767,8 +769,8 @@ DLG.CTRL.CharIn.BUT clc rts *-------------------------------------- -DLG.DrawInvBar phy - jsr SCRN.LineBufInitInv +DLG.DrawBar phy + jsr SCRN.LineBufInitBar ldy #S.DLG.W lda (ZPPTR1),y @@ -780,6 +782,7 @@ DLG.DrawInvBar phy .1 lda (ZPPTR1),y beq .11 + jsr SCRN.ToLineBuf dex iny @@ -792,8 +795,10 @@ DLG.DrawInvBar phy bne .2 ldy #0 + .3 lda SEQ.NORM,y beq .4 + jsr SCRN.ToLineBuf iny bra .3 @@ -803,12 +808,15 @@ DLG.DrawInvBar phy jmp SCRN.LineBufOut *-------------------------------------- DLG.VBarToLineBuf - lda #C.SO + ldy #0 + +.1 lda SEQ.DLG.RIGHT,y + beq .8 jsr SCRN.ToLineBuf - lda #'x' - jsr SCRN.ToLineBuf - lda #C.SI - jmp SCRN.ToLineBuf + iny + bra .1 + +.8 rts *-------------------------------------- MAN SAVE USR/SRC/BIN/EDIT.S.DLG diff --git a/BIN/EDIT.S.SCRN.txt b/BIN/EDIT.S.SCRN.txt index 025069cd..c9ce1ed5 100644 --- a/BIN/EDIT.S.SCRN.txt +++ b/BIN/EDIT.S.SCRN.txt @@ -39,15 +39,26 @@ SCRN.ResetScrollRgn rts *-------------------------------------- SCRN.UpdateTopBar + jsr SCRN.LineBufInitBar + >PUSHBI 1 >PUSHBI 1 >PUSHBI 2 - >LDYA L.MSG.GOTOXY - >SYSCALL printf + >PUSHW L.MSG.GOTOXY + jsr SCRN.LineBufSprintf bcs .9 - - >LDYA.G LineBufBase - >STYA LineBufPtr + + >LDA.G ScreenW + tax + + lda #C.SPACE + +.1 jsr SCRN.ToLineBuf + dex + bne .1 + + lda #C.CR + jsr SCRN.ToLineBuf >LDA.G FileType tax @@ -58,27 +69,16 @@ SCRN.UpdateTopBar >PUSHYA >PUSHBI 4 >PUSHW L.MSG.TOPBAR - >LDYA LineBufPtr - >SYSCALL sprintf + jsr SCRN.LineBufSprintf bcs .9 >LDA.G bSaved bne .8 - ldy #255 - -.3 iny - lda (LineBufPtr),y - bne .3 - lda #'!' - sta (LineBufPtr),y + jsr SCRN.ToLineBuf - iny - lda #0 - sta (LineBufPtr),y - -.8 jmp SCRN.LineBufOutBar +.8 jmp SCRN.LineBufOut .9 rts *-------------------------------------- SCRN.UpdateMain >LDA.G ScreenY @@ -176,12 +176,12 @@ SCRN.UpdateLineAtALenY jsr SCRN.GotoXY bcs SCRN.UpdateMain.9 - jsr SCRN.LineBufInitNorm + jsr SCRN.LineBufInitEdit ldy #$ff .10 iny - lda SEQ.EDIT,y + lda SEQ.CEOL,y beq .11 jsr SCRN.ToLineBuf bra .10 @@ -267,30 +267,37 @@ SCRN.ToggleSel.RTS rts *-------------------------------------- SCRN.UpdateStatusBar - >LDYA.G LineBufBase - >STYA LineBufPtr + jsr SCRN.LineBufInitBar - >PUSHBI 1 >PUSHB.G ScreenH >PUSHBI 2 - >LDYA L.MSG.GOTOXY - >SYSCALL printf - bcs SCRN.ToggleSel.RTS - - >LDA.G PromptMode - bne .2 + >PUSHW L.MSG.GOTOXY + jsr SCRN.LineBufSprintf + bcs .9 + + >LDA.G ScreenW + tax + + lda #C.SPACE + +.1 jsr SCRN.ToLineBuf + dex + bpl .1 + + lda #C.CR + jsr SCRN.ToLineBuf >LDA.G FileY tax iny lda (pData),y inx - bne .1 + bne .2 inc -.1 >PUSHA +.2 >PUSHA txa >PUSHA >LDA.G FileX @@ -301,8 +308,14 @@ SCRN.UpdateStatusBar >PUSHW FileLen >PUSHBI 7 - bra SCRN.UpdateStatusBarOut + >PUSHW L.MSG.STATUSBAR + jsr SCRN.LineBufSprintf + bcs .9 + jmp SCRN.LineBufOut + +.9 rts *-------------------------------------- +SCRN.UpdateStatusBar.OLD .2 eor #PromptModeHelp beq .3 @@ -528,25 +541,41 @@ SCRN.scrollDn >PUSHBI 0 .9 rts *-------------------------------------- +SCRN.LineBufInitBar + phx + ldx #SEQ.BAR-SEQS + bra SCRN.LineBufInit +SCRN.LineBufInitDlg + phx + ldx #SEQ.DLG-SEQS + bra SCRN.LineBufInit +SCRN.LineBufInitBut + phx + ldx #SEQ.DLG.BUT-SEQS + bra SCRN.LineBufInit +SCRN.LineBufInitEdit + phx + ldx #SEQ.EDIT-SEQS + bra SCRN.LineBufInit SCRN.LineBufInitNorm - clc - .HS B0 BCS + phx + ldx #SEQ.NORM-SEQS + bra SCRN.LineBufInit SCRN.LineBufInitInv - sec + phx + ldx #SEQ.INV-SEQS + +SCRN.LineBufInit >LDYA.G LineBufBase >STYA LineBufPtr - ldy #0 - bcc .1 - ldy #SEQ.INV-SEQ.NORM - -.1 lda SEQ.NORM,y +.1 lda SEQS,x .2 jsr SCRN.ToLineBuf - iny - lda SEQ.NORM,y + inx + lda SEQS,x bne .2 - + plx rts *-------------------------------------- SCRN.ToLineBuf sta (LineBufPtr) @@ -555,6 +584,22 @@ SCRN.ToLineBuf sta (LineBufPtr) inc LineBufPtr+1 .8 rts *-------------------------------------- +SCRN.LineBufSprintf + >LDYA LineBufPtr + >SYSCALL sprintf + bcs .9 + + tya + clc + adc LineBufPtr + sta LineBufPtr + bcc .9 + + inc LineBufPtr+1 + clc + +.9 rts +*-------------------------------------- SCRN.LineBufOut lda #0 jsr SCRN.ToLineBuf diff --git a/BIN/EDIT.S.txt b/BIN/EDIT.S.txt index fc92e2fd..ed11b59b 100644 --- a/BIN/EDIT.S.txt +++ b/BIN/EDIT.S.txt @@ -403,21 +403,31 @@ CharIn.Esc >STZ.G bEscMode .INB USR/SRC/BIN/EDIT.S.DLG .INB USR/SRC/BIN/EDIT.S.FILE .INB USR/SRC/BIN/EDIT.S.SCRN -*-------------------------------------- CS.END -SEQ.DETECT .AZ "Querying terminal capabilities...\e[999;999H\e[6n" +*-------------------------------------- +SEQS .EQ * +SEQ.BAR .AZ "\e[37;40m\e[7m" +SEQ.DLG .AS "\e[30;46m" + .DA #C.SO,#'x',#C.SI + .DA #0 +SEQ.DLG.RIGHT .AS "\e[37;40m" + .DA #C.SO,#'x',#C.SI + .DA #0 +SEQ.DLG.BUT .AS "\e[93;44m" +SEQ.INV .AZ "\e[7m" +SEQ.EDIT .AZ "\e[93;44m" +SEQ.CEOL .AZ "\e[K" +SEQ.NORM .AZ "\e[0m" +*-------------------------------------- +SEQ.DETECT .AZ "Querying term caps...\e[999;999H\e[6n" SEQ.RESET .AZ "\ec" -SEQ.INIT .AS "\ec\e)0" +SEQ.INIT .AS "\ec\e(B\e)0" SEQ.SCROLLRGN .AZ "\e[?7l\e[2;%dr" SEQ.SCROLLUP .AZ "\eD" SEQ.SCROLLDN .AZ "\eM" SEQ.SCROLLCURUP .AZ "\e[?7l\e[%d;%dr\eD" SEQ.SCROLLCURDN .AZ "\e[?7l\e[%d;%dr\eM" -SEQ.BAR .AS "\e[40;37m\e[7m%s" +SEQ.NORM -SEQ.NORM .AZ "\e[0m" -SEQ.INV .AZ "\e[7m" -SEQ.EDIT .AS "\e[93;44m" +SEQ.CEOL -SEQ.CEOL .AZ "\e[K" +*-------------------------------------- MSG.TOPBAR .AZ "A2osX Edit:%s %s" MSG.TXTCR .AZ "TXT/CR" MSG.TXTCRLF .AZ "TXT/CRLF"