Fix DEL bug (partially)

This commit is contained in:
Rémy GIBERT 2016-01-22 17:29:11 +01:00
parent 8ad193c5fd
commit adaebae51b
2 changed files with 57 additions and 60 deletions

View File

@ -44,16 +44,10 @@ BUF.InsertA sta TmpByte
ply
jsr BUF.GetNewYA
bcs .9
>STYA BufPtr
>LDYA BUF.COffset
>STYA TmpCount
ldy #hBufferBackup
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>STYA BufPtrBackup
ldy #0
.1 jsr DecTmpCount
@ -102,24 +96,30 @@ BUF.Del ldy #FileLen
clc
rts
.10 lda (pData),y
.10 jsr BUF.ComputeCOffset
ldy #FileLen
lda BUF.COffset
clc
sbc (pData),y
lda BUF.COffset
iny
sbc (pData),y
bcs .11
rts
.11 lda (pData),y
pha
dey
lda (pData),y
ply
tay
pla
jsr BUF.GetNewYA
bcs .9
>STYA BufPtr
* bcs .9
bcs *
jsr BUF.ComputeCOffset
>LDYA BUF.COffset
>STYA TmpCount
ldy #hBufferBackup
lda (pData),y
>SYSCALL SYS.GetMemPtrA
>STYA BufPtrBackup
ldy #0
.1 jsr DecTmpCount
@ -132,7 +132,11 @@ BUF.Del ldy #FileLen
inc BufPtr+1
bra .1
.2 inc BufPtrBackup
.2 lda (BufPtrBackup)
cmp #13
beq *
inc BufPtrBackup
bne .3
inc BufPtrBackup+1
@ -252,10 +256,11 @@ BUF.GetLineAX >STAX BUF.TmpLine1
cmp BUF.TmpLine2+1
bne .99
.8 lda BUF.LOffset
sta BUF.COffset
lda BUF.LOffset+1
sta BUF.COffset+1
.8
* lda BUF.LOffset
* sta BUF.COffset
* lda BUF.LOffset+1
* sta BUF.COffset+1
clc Y = Line length
rts
@ -267,34 +272,25 @@ BUF.GetNewYA >STYA TmpLen
lda (pData),y
beq .1
>SYSCALL SYS.FreeMemA
ldy #hBufferBackup
lda #0
sta (pData),y
.1 >PUSHW TmpLen
.1 ldy #hBuffer
lda (pData),y
ldy #hBufferBackup
sta (pData),y
>SYSCALL SYS.GetMemPtrA
>STYA BufPtrBackup
>PUSHW TmpLen
>PUSHBI S.MEM.F.INIT0
>SYSCALL SYS.GetMem
bcs .9
phy
pha
ldy #hBuffer
lda (pData),y
ldy #hBufferBackup
sta (pData),y
>STYA BufPtr
txa
ldy #hBuffer
sta (pData),y
pla
ply
clc
rts
.9 sec
rts
.9 rts
*--------------------------------------
MAN
SAVE BIN/EDIT.S.BUF

View File

@ -178,9 +178,8 @@ SCRN.UpdateLineAtALenY
>LDYA L.SEQ.CEOL
>SYSCALL SYS.PSTRoutYA
bcs .9
clc
.9 rts
rts
.9 jmp Ctrl.Q
*--------------------------------------
* CC = set INV, CS = set NORM
*--------------------------------------
@ -205,7 +204,8 @@ SCRN.UpdateAttrC
sta bSelected
.8 clc
.9 rts
rts
.9 jmp Ctrl.Q
*--------------------------------------
SCRN.UpdateStatusBar
ldy #PromptMode
@ -249,7 +249,9 @@ SCRN.UpdateStatusBar
>PUSHA
>LDYA L.MSG.STATUSBAR,x
>SYSCALL SYS.PSTRoutYA
.9 rts
bcs .9
rts
.9 jmp Ctrl.Q
*--------------------------------------
SCRN.UpdateStatusBarErrA
>PUSHA
@ -258,7 +260,9 @@ SCRN.UpdateStatusBarErrA
>PUSHA
>LDYA L.MSG.STATUSBAR.E
>SYSCALL SYS.PSTRoutYA
bcs .9
rts
.9 jmp Ctrl.Q
*--------------------------------------
SCRN.GotoCurXCurY
ldy #CurX
@ -278,7 +282,9 @@ GotoXY txa
>LDYA L.MSG.GOTOXY
>SYSCALL SYS.PSTRoutYA
bcs .9
rts
.9 jmp Ctrl.Q
*--------------------------------------
SCRN.UpdateViewPort
lda #$ff
@ -338,7 +344,7 @@ SCRN.UpdateViewPort
bpl .3
jsr SCRN.scrollDn
bcc .3
rts
jmp Ctrl.Q
.4 clc
ldy #ScreenY
@ -377,8 +383,7 @@ SCRN.UpdateViewPort
bit bNotRepaint
bpl .4
jsr SCRN.scrollUp
bcc .4
rts
bcs .9
.5 sec
ldy #FileX
@ -403,7 +408,9 @@ SCRN.UpdateViewPort
.6 jsr SCRN.UpdateStatusBar
bcs .9
jsr SCRN.GotoCurXCurY
.9 rts
bcs .9
rts
.9 jmp Ctrl.Q
*--------------------------------------
SCRN.scrollUp lda #$1B
>SYSCALL SYS.CoutA
@ -427,10 +434,8 @@ SCRN.scrollUp lda #$1B
lda #21
jsr SCRN.UpdateLineAtALenY
bcs .9
clc
.9 rts
rts
.9 jmp Ctrl.Q
*--------------------------------------
SCRN.scrollDn lda #$1B
>SYSCALL SYS.CoutA
@ -450,12 +455,8 @@ SCRN.scrollDn lda #$1B
lda #0
jsr SCRN.UpdateLineAtALenY
bcs .9
clc
.9 rts
rts
.9 jmp Ctrl.Q
*--------------------------------------
MAN
SAVE BIN/EDIT.S.SCRN