mirror of
https://github.com/A2osX/A2osX.git
synced 2024-09-10 07:54:37 +00:00
SAVE
This commit is contained in:
parent
fd62f73dfb
commit
83358c18c3
@ -84,15 +84,75 @@ BUF.InsertA sta TmpByte
|
|||||||
lda (pData),y
|
lda (pData),y
|
||||||
inc
|
inc
|
||||||
sta (pData),y
|
sta (pData),y
|
||||||
bne .5
|
bne .8
|
||||||
iny
|
iny
|
||||||
lda (pData),y
|
lda (pData),y
|
||||||
inc
|
inc
|
||||||
sta (pData),y
|
sta (pData),y
|
||||||
|
|
||||||
.5 clc
|
.8 clc
|
||||||
|
.9 rts
|
||||||
|
*--------------------------------------
|
||||||
|
BUF.Del ldy #FileLen
|
||||||
|
lda (pData),y
|
||||||
|
iny
|
||||||
|
ora (pData),y
|
||||||
|
bne .10
|
||||||
|
clc
|
||||||
|
rts
|
||||||
|
|
||||||
|
.10 lda (pData),y
|
||||||
|
pha
|
||||||
|
dey
|
||||||
|
lda (pData),y
|
||||||
|
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
|
||||||
|
beq .2
|
||||||
|
lda (BufPtrBackup),y
|
||||||
|
sta (BufPtr),y
|
||||||
|
iny
|
||||||
|
bne .1
|
||||||
|
inc BufPtrBackup+1
|
||||||
|
inc BufPtr+1
|
||||||
|
bra .1
|
||||||
|
|
||||||
|
.2 inc BufPtrBackup
|
||||||
|
bne .3
|
||||||
|
inc BufPtrBackup+1
|
||||||
|
|
||||||
|
.3 lda (BufPtrBackup),y
|
||||||
|
beq .4
|
||||||
|
sta (BufPtr),y
|
||||||
|
iny
|
||||||
|
bne .3
|
||||||
|
inc BufPtrBackup+1
|
||||||
|
inc BufPtr+1
|
||||||
|
bra .3
|
||||||
|
|
||||||
|
.4 ldy #FileLen
|
||||||
|
lda (pData),y
|
||||||
|
sec
|
||||||
|
sbc #1
|
||||||
|
sta (pData),y
|
||||||
|
iny
|
||||||
|
lda (pData),y
|
||||||
|
sbc #0
|
||||||
|
sta (pData),y
|
||||||
|
|
||||||
|
.8 clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* Out : Y = Line Length
|
* Out : Y = Line Length
|
||||||
|
@ -433,10 +433,6 @@ Ctrl.ESC ldy #bEscMode
|
|||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
Ctrl.DEL
|
|
||||||
clc
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
|
||||||
Prompt.Editor pha
|
Prompt.Editor pha
|
||||||
ldy #bInit
|
ldy #bInit
|
||||||
lda (pData),y
|
lda (pData),y
|
||||||
@ -463,7 +459,13 @@ Prompt.Editor pha
|
|||||||
tax
|
tax
|
||||||
jmp (J.CTRL,x)
|
jmp (J.CTRL,x)
|
||||||
|
|
||||||
.4 jmp Ctrl.DEL
|
.4 jsr BUF.Del
|
||||||
|
bcs .9
|
||||||
|
jsr UpdateCurrentLine
|
||||||
|
bcs .9
|
||||||
|
jsr UpdateStatusBar
|
||||||
|
bcs .9
|
||||||
|
rts
|
||||||
|
|
||||||
.7 jsr BUF.InsertA
|
.7 jsr BUF.InsertA
|
||||||
bcs .9
|
bcs .9
|
||||||
@ -554,7 +556,8 @@ Prompt.Save cmp #3
|
|||||||
jsr SaveFile
|
jsr SaveFile
|
||||||
bcc .81
|
bcc .81
|
||||||
jsr UpdateStatusBarErrA
|
jsr UpdateStatusBarErrA
|
||||||
bra .80
|
bcs .9
|
||||||
|
rts
|
||||||
|
|
||||||
.2 cmp #127
|
.2 cmp #127
|
||||||
bne .3
|
bne .3
|
||||||
@ -584,6 +587,7 @@ Prompt.Save cmp #3
|
|||||||
rts
|
rts
|
||||||
|
|
||||||
.81 jsr UpdateTopBar
|
.81 jsr UpdateTopBar
|
||||||
|
bcs .9
|
||||||
.80 jsr UpdateStatusBar
|
.80 jsr UpdateStatusBar
|
||||||
bcs .9
|
bcs .9
|
||||||
rts
|
rts
|
||||||
|
@ -249,6 +249,9 @@ UpdateStatusBar ldy #PromptMode
|
|||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
UpdateStatusBarErrA
|
UpdateStatusBarErrA
|
||||||
|
>PUSHA
|
||||||
|
ldy #ScreenH
|
||||||
|
lda (pData),y
|
||||||
>PUSHA
|
>PUSHA
|
||||||
>LDYA L.MSG.STATUSBAR.E
|
>LDYA L.MSG.STATUSBAR.E
|
||||||
>SYSCALL SYS.PSTRoutYA
|
>SYSCALL SYS.PSTRoutYA
|
||||||
|
@ -400,7 +400,19 @@ CS.QUIT ldy #hBuffer
|
|||||||
>SYSCALL SYS.CoutA
|
>SYSCALL SYS.CoutA
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SaveFile ldy #hFileName
|
SaveFile >PUSHWI 0 Aux type
|
||||||
|
>PUSHBI 4 type=TXT
|
||||||
|
>PUSHBI $C3 access=RW
|
||||||
|
ldy #hFileName
|
||||||
|
lda (pData),y
|
||||||
|
>SYSCALL SYS.GetMemPtrA
|
||||||
|
>PUSHYA
|
||||||
|
>SYSCALL SYS.MLICreateFile
|
||||||
|
bcc .1
|
||||||
|
cmp #$47 File Exists error?
|
||||||
|
bne .9 no, sec;rts
|
||||||
|
|
||||||
|
.1 ldy #hFileName
|
||||||
lda (pData),y
|
lda (pData),y
|
||||||
>SYSCALL SYS.MLIOpenA
|
>SYSCALL SYS.MLIOpenA
|
||||||
bcs .9
|
bcs .9
|
||||||
@ -425,12 +437,14 @@ SaveFile ldy #hFileName
|
|||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
|
|
||||||
.99 lda hFile
|
.99 pha
|
||||||
|
lda hFile
|
||||||
>SYSCALL SYS.MLICloseA
|
>SYSCALL SYS.MLICloseA
|
||||||
lda TmpByte
|
lda TmpByte
|
||||||
>SYSCALL SYS.FreeMemA
|
>SYSCALL SYS.FreeMemA
|
||||||
sec
|
pla
|
||||||
.9 rts
|
.9 sec
|
||||||
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
DecTmpCount lda TmpCount
|
DecTmpCount lda TmpCount
|
||||||
bne .1
|
bne .1
|
||||||
|
Loading…
Reference in New Issue
Block a user