From 82f1cb8630667bbf0a747da90131d8397a43e407 Mon Sep 17 00:00:00 2001 From: burniouf Date: Mon, 27 Mar 2023 22:52:33 +0200 Subject: [PATCH] EDIT : bug fix (still some remaining when using from PuTTY) --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes BIN/EDIT.S.CTRL.txt | 4 +- BIN/EDIT.S.DLG.txt | 2 +- BIN/EDIT.S.IO.txt | 184 +++++++++++++++++++++++++++++++++++++++ BIN/EDIT.S.txt | 183 +------------------------------------- 5 files changed, 190 insertions(+), 183 deletions(-) create mode 100644 BIN/EDIT.S.IO.txt diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 5038543cf4bed44bb876ccb35ec32403bd502b21..b13773a72af8ff912e5ab399d30407fcea3310e8 100644 GIT binary patch delta 10185 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 O`is5~yC2=L_WuBw`2pYn delta 10604 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 diff --git a/BIN/EDIT.S.CTRL.txt b/BIN/EDIT.S.CTRL.txt index d10f3e1a..c904fe0d 100644 --- a/BIN/EDIT.S.CTRL.txt +++ b/BIN/EDIT.S.CTRL.txt @@ -89,7 +89,7 @@ Ctrl.A >STZ.G bUpdateStatus jsr SCRN.LineBufOut bcs .9 -.8 jsr GetCh +.8 jsr IO.GetCh bcs .9 beq .8 @@ -460,7 +460,7 @@ Ctrl.Q >LDA.G bUnSaved jsr SCRN.LineBufOut bcs .9 -.1 jsr GetCh +.1 jsr IO.GetCh bcs .9 cmp #'a diff --git a/BIN/EDIT.S.DLG.txt b/BIN/EDIT.S.DLG.txt index c3942d97..8130c9b1 100644 --- a/BIN/EDIT.S.DLG.txt +++ b/BIN/EDIT.S.DLG.txt @@ -88,7 +88,7 @@ DLG.Open >STYA ZPPTR2 .9 rts *-------------------------------------- -DLG.Run jsr GetCh +DLG.Run jsr IO.GetCh bcs .9 cmp #3 diff --git a/BIN/EDIT.S.IO.txt b/BIN/EDIT.S.IO.txt new file mode 100644 index 00000000..0e5d3eb3 --- /dev/null +++ b/BIN/EDIT.S.IO.txt @@ -0,0 +1,184 @@ +NEW + AUTO 3,1 + .LIST OFF +*-------------------------------------- +IO.GetCh >SYSCALL GetChar + bcs .9 + + cmp #C.CR + bne IO.GetCh.1 + + ldy #S.PS.hStdIn Check for any extra LF + lda (pPS),y + >SYSCALL FEOF + bcs .9 + + tay + bne .8 + + >SYSCALL GetChar + bcs .9 + +.8 lda #C.CR + +* clc + +.9 rts +*-------------------------------------- +IO.GetCh.1 tax + + >LDA.G bEscMode + bmi .1 + + cpx #C.ESC + bne .8 + + lda #$ff + >STA.G bEscMode + + inc + clc + rts + +.1 >LDA.G bCSIMode + bmi .11 + + cpx #'[' \e[ ? + bne IO.GetCh.Esc + + lda #$ff + >STA.G bCSIMode + + inc + + sta (pData) #EscBufferPtr + + clc + rts +*-------------------------------------- +.11 lda (pData) #EscBufferPtr + cmp #15 + bcc .10 + +.19 >STZ.G bEscMode + >STA.G bCSIMode + + clc + rts + +.10 inc + sta (pData) + tay + + txa + sta (pData),y + cmp #64 + + bcs IO.GetCh.CSI + + ldx #0 + +.8 txa + clc + rts +*-------------------------------------- +IO.GetCh.Esc >STZ.G bEscMode + +IO.GetCh.Esc1 txa + + ldx #EscChars.Cnt-1 + +.1 cmp EscChars,x + beq .2 + + dex + bpl .1 + + lda #0 + clc + rts + +.2 lda EscAscii,x + clc + rts +*-------------------------------------- +* \e[A UP +* \e[B DOWN +* \e[C FOWARD +* \e[D BACK +* \e[xxx;yyyR DSR ("\e[I6n" reply) +*-------------------------------------- +IO.GetCh.CSI >STZ.G bEscMode + >STA.G bCSIMode + + cpx #'R' Response to cursor position query? + beq .3 + + bra IO.GetCh.Esc1 + +.3 stz TmpByte + + ldy #0 + +.4 iny + + lda (pData),y + cmp #';' + beq .5 + + jsr IO.GetCh.TmpByte10pA + bra .4 + +.5 phy + + lda TmpByte + >STA.G ScreenH + + dec Remove 2 (top & status bar) for viewportH + dec + + >STA.G ViewPortH + + dec + + >STA.G ViewPortHm1 Remove 1 more to store offsert to last line of viewport + + ply + stz TmpByte + +.6 iny + + lda (pData),y + cmp #'R' + beq .7 + + jsr IO.GetCh.TmpByte10pA + bra .6 + +.7 lda TmpByte + >STA.G ScreenW + +.8 lda #0 + clc + rts +*-------------------------------------- +IO.GetCh.TmpByte10pA + and #$0f + pha + lda TmpByte + asl + asl + clc + adc TmpByte + asl + sta TmpByte + pla + clc + adc TmpByte + sta TmpByte + rts +*-------------------------------------- +MAN +SAVE usr/src/bin/edit.s.io +LOAD usr/src/bin/edit.s +ASM diff --git a/BIN/EDIT.S.txt b/BIN/EDIT.S.txt index 1a3b54c1..1f465481 100644 --- a/BIN/EDIT.S.txt +++ b/BIN/EDIT.S.txt @@ -150,7 +150,7 @@ CS.RUN >PUSHW L.MSG.TERMCAP >SYSCALL PrintF Send Query for term W & H bcs CS.INIT.RTS -.1 jsr GetCh +.1 jsr IO.GetCh bcs CS.INIT.RTS * beq .11 @@ -197,7 +197,7 @@ CS.RUN >PUSHW L.MSG.TERMCAP >STA.G hReplace *-------------------------------------- -CS.RUN.LOOP jsr GetCh +CS.RUN.LOOP jsr IO.GetCh bcs CS.RUN.RTS I/O error beq .8 @@ -293,189 +293,12 @@ CS.QUIT ldy #hLineBuf .8 clc rts -*-------------------------------------- -GetCh >SYSCALL GetChar - bcs .9 - - cmp #C.CR - bne GetCh.1 - - ldy #S.PS.hStdIn Check for any extra LF - lda (pPS),y - >SYSCALL FEOF - bcs .9 - - tay - bne .8 - - >SYSCALL GetChar - bcs .9 - -.8 lda #C.CR - -* clc - -.9 rts -*-------------------------------------- -GetCh.1 tax - - >LDA.G bEscMode - bmi .1 - - cpx #C.ESC - bne .8 - - lda #$ff - >STA.G bEscMode - - inc - clc - rts - -.1 >LDA.G bCSIMode - bmi .11 - - cpx #'[' \e[ ? - bne GetCh.Esc - - lda #$ff - >STA.G bCSIMode - - inc - - sta (pData) #EscBufferPtr - - clc - rts -*-------------------------------------- -.11 lda (pData) #EscBufferPtr - cmp #15 - bcc .10 - -.19 >STZ.G bEscMode - >STA.G bCSIMode - - clc - rts - -.10 inc - sta (pData) - tay - - txa - sta (pData),y - cmp #64 - - bcs GetCh.CSI - - ldx #0 - -.8 txa - clc - rts -*-------------------------------------- -GetCh.Esc >STZ.G bEscMode - -GetCh.Esc1 txa - - ldx #EscChars.Cnt-1 - -.1 cmp EscChars,x - beq .2 - - dex - bpl .1 - - lda #0 - clc - rts - -.2 lda EscAscii,x - clc - rts -*-------------------------------------- -* \e[A UP -* \e[B DOWN -* \e[C FOWARD -* \e[D BACK -* \e[xxx;yyyR DSR ("\e[I6n" reply) -*-------------------------------------- -GetCh.CSI >STZ.G bEscMode - >STA.G bCSIMode - - cpx #'R' Response to cursor position query? - beq .3 - - >DEBUG - - bra GetCh.Esc1 - -.3 stz TmpByte - - ldy #0 - -.4 iny - - lda (pData),y - cmp #';' - beq .5 - - jsr GetCh.TmpByte10pA - bra .4 - -.5 phy - - lda TmpByte - >STA.G ScreenH - - dec Remove 2 (top & status bar) for viewportH - dec - - >STA.G ViewPortH - - dec - - >STA.G ViewPortHm1 Remove 1 more to store offsert to last line of viewport - - ply - stz TmpByte - -.6 iny - - lda (pData),y - cmp #'R' - beq .7 - - jsr GetCh.TmpByte10pA - bra .6 - -.7 lda TmpByte - >STA.G ScreenW - -.8 lda #0 - clc - rts -*-------------------------------------- -GetCh.TmpByte10pA - and #$0f - pha - lda TmpByte - asl - asl - clc - adc TmpByte - asl - sta TmpByte - pla - clc - adc TmpByte - sta TmpByte - rts *-------------------------------------- .INB usr/src/bin/edit.s.buf .INB usr/src/bin/edit.s.ctrl .INB usr/src/bin/edit.s.dlg .INB usr/src/bin/edit.s.file + .INB usr/src/bin/edit.s.io .INB usr/src/bin/edit.s.scrn *-------------------------------------- CS.END