2016-01-04 08:25:43 +01:00
|
|
|
|
NEW
|
2019-05-27 08:01:59 +02:00
|
|
|
|
AUTO 3,1
|
2016-01-04 08:25:43 +01:00
|
|
|
|
.LIST OFF
|
|
|
|
|
*--------------------------------------
|
2019-11-15 17:15:43 +01:00
|
|
|
|
BUF.InsertA sta TmpByte
|
2019-11-17 15:39:55 +01:00
|
|
|
|
|
2020-01-23 15:48:22 +01:00
|
|
|
|
jsr BUF.ComputeCOffset
|
2019-11-15 17:15:43 +01:00
|
|
|
|
cpy #255
|
|
|
|
|
beq .8
|
|
|
|
|
|
2020-01-24 16:54:31 +01:00
|
|
|
|
>LDYAI 1
|
2019-11-17 15:39:55 +01:00
|
|
|
|
jsr BUF.BufPtrSetup
|
2020-01-24 16:54:31 +01:00
|
|
|
|
bcs .9
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-15 17:15:43 +01:00
|
|
|
|
jsr BUF.MoveForwardTail
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-15 17:15:43 +01:00
|
|
|
|
.2 lda TmpByte
|
|
|
|
|
sta (BufPtr)
|
|
|
|
|
|
2020-02-28 08:21:46 +01:00
|
|
|
|
jmp SCRN.UnSaved
|
2019-12-16 14:14:11 +01:00
|
|
|
|
|
2021-06-30 21:09:07 +02:00
|
|
|
|
.8 clc
|
2019-11-15 17:15:43 +01:00
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
2019-11-17 15:39:55 +01:00
|
|
|
|
BUF.InsertTAB >LDA.G FileX
|
2020-02-13 12:11:33 +01:00
|
|
|
|
and #3 0-3
|
|
|
|
|
eor #$3 3-0
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-02-13 12:11:33 +01:00
|
|
|
|
inc
|
|
|
|
|
sta TmpByte
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
jsr BUF.ComputeCOffset
|
|
|
|
|
tya
|
|
|
|
|
sec
|
|
|
|
|
adc TmpByte
|
|
|
|
|
bcs .8
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-01-24 16:54:31 +01:00
|
|
|
|
ldy TmpByte
|
|
|
|
|
lda #0
|
2019-11-17 15:39:55 +01:00
|
|
|
|
jsr BUF.BufPtrSetup
|
2020-01-24 16:54:31 +01:00
|
|
|
|
bcs .9
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
jsr BUF.MoveForwardTail
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
lda #C.SPACE
|
|
|
|
|
ldy TmpByte
|
|
|
|
|
dey
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
.2 sta (BufPtr),y
|
|
|
|
|
|
|
|
|
|
dey
|
|
|
|
|
bpl .2
|
|
|
|
|
|
2020-02-28 08:21:46 +01:00
|
|
|
|
jmp SCRN.UnSaved
|
2019-12-16 14:14:11 +01:00
|
|
|
|
|
2020-02-13 12:11:33 +01:00
|
|
|
|
.8 stz TmpByte
|
2021-06-30 21:09:07 +02:00
|
|
|
|
clc
|
|
|
|
|
.9 rts
|
2019-11-17 15:39:55 +01:00
|
|
|
|
*--------------------------------------
|
|
|
|
|
BUF.DelCharAtCursor
|
|
|
|
|
lda BUF.COffset
|
|
|
|
|
clc
|
|
|
|
|
>ADC.G BufBase
|
|
|
|
|
sta BufPtrDst
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
lda BUF.COffset+1
|
|
|
|
|
>ADC.G BufBase+1
|
|
|
|
|
sta BufPtrDst+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
>LDYA BufPtrDst
|
2019-11-15 17:15:43 +01:00
|
|
|
|
iny
|
|
|
|
|
bne .1
|
|
|
|
|
inc
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-15 17:15:43 +01:00
|
|
|
|
.1 >STYA BufPtr
|
|
|
|
|
|
2019-11-18 17:40:32 +01:00
|
|
|
|
lda (BufPtrDst)
|
2019-11-17 15:39:55 +01:00
|
|
|
|
pha Save deleted char for later
|
|
|
|
|
|
2019-11-15 17:15:43 +01:00
|
|
|
|
jsr BUF.MoveBackTail
|
|
|
|
|
|
|
|
|
|
lda FileLen
|
|
|
|
|
bne .5
|
|
|
|
|
dec FileLen+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
.5 dec FileLen
|
2019-11-15 17:15:43 +01:00
|
|
|
|
|
|
|
|
|
jsr BUF.ResetSel
|
|
|
|
|
pla Get back deleted char
|
|
|
|
|
|
|
|
|
|
clc
|
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
2016-02-25 18:02:57 +01:00
|
|
|
|
BUF.InsertClipboard
|
2019-11-04 08:21:40 +01:00
|
|
|
|
>LDA.G hClipBoard
|
2016-02-25 18:02:57 +01:00
|
|
|
|
beq .8
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2018-07-18 17:30:42 +02:00
|
|
|
|
>SYSCALL GetMemPtr
|
2016-02-25 18:02:57 +01:00
|
|
|
|
>STYA ClipboardPtr
|
2019-11-17 15:39:55 +01:00
|
|
|
|
|
2016-02-25 18:02:57 +01:00
|
|
|
|
jsr BUF.ComputeCOffset
|
|
|
|
|
|
2021-06-30 21:09:07 +02:00
|
|
|
|
>LDYA.G ClipBoardLen
|
2019-11-17 15:39:55 +01:00
|
|
|
|
jsr BUF.BufPtrSetup
|
2020-01-24 16:54:31 +01:00
|
|
|
|
bcs .9
|
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
jsr BUF.MoveForwardTail
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-02-28 08:21:46 +01:00
|
|
|
|
>LDA.G ClipBoardLen
|
2019-11-17 15:39:55 +01:00
|
|
|
|
eor #$ff
|
|
|
|
|
tax
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-12-07 10:54:33 +01:00
|
|
|
|
iny
|
2020-02-28 08:21:46 +01:00
|
|
|
|
lda (pData),y ClipBoardLen+1
|
2019-11-17 15:39:55 +01:00
|
|
|
|
eor #$ff
|
|
|
|
|
pha
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
ldy #0
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
.1 inx
|
2019-11-04 14:41:58 +01:00
|
|
|
|
bne .2
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
pla
|
|
|
|
|
inc
|
|
|
|
|
beq .3
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
pha
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
.2 lda (ClipboardPtr),y
|
|
|
|
|
sta (BufPtr),y
|
|
|
|
|
iny
|
2019-11-04 14:41:58 +01:00
|
|
|
|
bne .1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
inc ClipboardPtr+1
|
|
|
|
|
inc BufPtr+1
|
|
|
|
|
bra .1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-01-26 20:36:49 +01:00
|
|
|
|
.3 jsr BUF.ResetSel
|
2019-12-17 13:28:49 +01:00
|
|
|
|
jsr SCRN.UpdateStatusBar
|
2020-02-28 08:21:46 +01:00
|
|
|
|
jmp SCRN.UnSaved
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
|
|
|
|
.8 clc
|
2019-11-17 15:39:55 +01:00
|
|
|
|
.9 rts
|
2019-11-04 14:41:58 +01:00
|
|
|
|
*--------------------------------------
|
2016-02-25 18:02:57 +01:00
|
|
|
|
BUF.DelSel jsr BUF.GetSelLen
|
2020-01-23 15:48:22 +01:00
|
|
|
|
bcs .9 nothing to delete
|
2016-02-25 18:02:57 +01:00
|
|
|
|
|
2019-12-07 10:54:33 +01:00
|
|
|
|
>LDA.G SelStart
|
2019-11-17 15:39:55 +01:00
|
|
|
|
clc
|
|
|
|
|
>ADC.G BufBase
|
|
|
|
|
sta BufPtrDst
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-12-07 10:54:33 +01:00
|
|
|
|
>LDA.G SelStart+1
|
2019-11-17 15:39:55 +01:00
|
|
|
|
>ADC.G BufBase+1
|
|
|
|
|
sta BufPtrDst+1
|
|
|
|
|
|
|
|
|
|
lda BufPtrDst
|
2016-02-25 18:02:57 +01:00
|
|
|
|
clc
|
|
|
|
|
adc SelLen
|
2019-11-17 15:39:55 +01:00
|
|
|
|
sta BufPtr
|
|
|
|
|
|
|
|
|
|
lda BufPtrDst+1
|
2016-02-25 18:02:57 +01:00
|
|
|
|
adc SelLen+1
|
2019-11-17 15:39:55 +01:00
|
|
|
|
sta BufPtr+1
|
|
|
|
|
|
|
|
|
|
jsr BUF.MoveBackTail
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-11-06 14:14:42 +01:00
|
|
|
|
lda FileLen
|
2016-02-25 18:02:57 +01:00
|
|
|
|
sec
|
|
|
|
|
sbc SelLen
|
2019-11-06 14:14:42 +01:00
|
|
|
|
sta FileLen
|
2019-11-17 15:39:55 +01:00
|
|
|
|
|
2019-11-06 14:14:42 +01:00
|
|
|
|
lda FileLen+1
|
2016-02-25 18:02:57 +01:00
|
|
|
|
sbc SelLen+1
|
2019-11-06 14:14:42 +01:00
|
|
|
|
sta FileLen+1
|
2016-02-25 18:02:57 +01:00
|
|
|
|
|
|
|
|
|
.8 clc
|
2019-10-03 08:25:27 +02:00
|
|
|
|
.9 rts
|
2016-02-25 18:02:57 +01:00
|
|
|
|
*--------------------------------------
|
2016-01-29 18:05:08 +01:00
|
|
|
|
BUF.SelToClipboard
|
2016-02-25 18:02:57 +01:00
|
|
|
|
jsr BUF.GetSelLen
|
|
|
|
|
bcs .8
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
>LDA.G hClipBoard
|
2016-01-29 18:05:08 +01:00
|
|
|
|
beq .1
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2018-07-18 17:30:42 +02:00
|
|
|
|
>SYSCALL FreeMem
|
2019-05-29 17:21:14 +02:00
|
|
|
|
>STZ.G hClipBoard
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
.1 >LDYA SelLen
|
2018-07-18 17:30:42 +02:00
|
|
|
|
>SYSCALL GetMem
|
2016-01-29 18:05:08 +01:00
|
|
|
|
bcs .9
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-29 18:05:08 +01:00
|
|
|
|
>STYA ClipboardPtr
|
|
|
|
|
txa
|
2019-05-27 17:37:31 +02:00
|
|
|
|
>STA.G hClipBoard
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2020-01-23 15:48:22 +01:00
|
|
|
|
>LDA.G BufBase
|
2019-11-13 17:33:29 +01:00
|
|
|
|
clc
|
2019-05-27 17:37:31 +02:00
|
|
|
|
>ADC.G SelStart
|
2016-02-25 18:02:57 +01:00
|
|
|
|
sta BufPtr
|
|
|
|
|
|
2020-01-23 15:48:22 +01:00
|
|
|
|
>LDA.G BufBase+1
|
|
|
|
|
>ADC.G SelStart+1
|
2016-02-25 18:02:57 +01:00
|
|
|
|
sta BufPtr+1
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
lda SelLen
|
2019-11-04 08:21:40 +01:00
|
|
|
|
>STA.G ClipBoardLen
|
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
eor #$ff
|
|
|
|
|
tax
|
|
|
|
|
iny
|
2019-05-29 17:21:14 +02:00
|
|
|
|
lda SelLen+1
|
2019-05-27 17:37:31 +02:00
|
|
|
|
sta (pData),y
|
|
|
|
|
eor #$ff
|
|
|
|
|
pha
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-02-25 18:02:57 +01:00
|
|
|
|
ldy #0
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
.2 inx
|
|
|
|
|
bne .3
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
pla
|
|
|
|
|
inc
|
2019-05-29 17:21:14 +02:00
|
|
|
|
beq .8
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
pha
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
.3 lda (BufPtr),y
|
2016-01-29 18:05:08 +01:00
|
|
|
|
sta (ClipboardPtr),y
|
|
|
|
|
iny
|
|
|
|
|
bne .2
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-29 18:05:08 +01:00
|
|
|
|
inc BufPtr+1
|
|
|
|
|
inc ClipboardPtr+1
|
|
|
|
|
bra .2
|
2016-02-25 18:02:57 +01:00
|
|
|
|
|
2016-01-29 18:05:08 +01:00
|
|
|
|
.8 clc
|
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
2016-02-25 18:02:57 +01:00
|
|
|
|
BUF.CopyClipboard
|
2020-02-28 08:21:46 +01:00
|
|
|
|
>LDA.G ClipBoardLen
|
2019-05-24 17:26:07 +02:00
|
|
|
|
eor #$ff
|
|
|
|
|
tax
|
2019-05-27 17:37:31 +02:00
|
|
|
|
iny
|
2019-05-24 17:26:07 +02:00
|
|
|
|
lda (pData),y
|
|
|
|
|
eor #$ff
|
2019-05-27 17:37:31 +02:00
|
|
|
|
pha
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
ldy #0
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
.1 inx
|
2019-05-24 17:26:07 +02:00
|
|
|
|
bne .2
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
pla
|
|
|
|
|
inc
|
|
|
|
|
beq .3
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
pha
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
.2 lda (ClipboardPtr),y
|
|
|
|
|
sta (BufPtr),y
|
|
|
|
|
iny
|
2019-05-24 17:26:07 +02:00
|
|
|
|
bne .1
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
inc ClipboardPtr+1
|
2016-02-25 18:02:57 +01:00
|
|
|
|
inc BufPtr+1
|
2019-05-24 17:26:07 +02:00
|
|
|
|
bra .1
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
.3 tya
|
|
|
|
|
clc
|
|
|
|
|
adc ClipboardPtr
|
|
|
|
|
sta ClipboardPtr
|
2019-06-03 17:50:41 +02:00
|
|
|
|
bcc BUF.CopyAddY
|
2019-05-27 17:37:31 +02:00
|
|
|
|
inc ClipboardPtr+1
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-06-03 17:50:41 +02:00
|
|
|
|
BUF.CopyAddY tya
|
2019-05-27 17:37:31 +02:00
|
|
|
|
clc
|
|
|
|
|
adc BufPtr
|
|
|
|
|
sta BufPtr
|
2019-06-03 17:50:41 +02:00
|
|
|
|
bcc .2
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-05-27 17:37:31 +02:00
|
|
|
|
inc BufPtr+1
|
2019-06-03 17:50:41 +02:00
|
|
|
|
.2 rts
|
2016-02-25 18:02:57 +01:00
|
|
|
|
*--------------------------------------
|
2019-11-15 17:15:43 +01:00
|
|
|
|
BUF.MoveBackTail
|
|
|
|
|
ldy #0
|
|
|
|
|
|
|
|
|
|
lda BufPtr+1
|
|
|
|
|
pha
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-15 17:15:43 +01:00
|
|
|
|
.1 lda (BufPtr),y
|
|
|
|
|
sta (BufPtrDst),y
|
|
|
|
|
beq .8
|
|
|
|
|
|
|
|
|
|
iny
|
|
|
|
|
bne .1
|
|
|
|
|
|
|
|
|
|
inc BufPtr+1
|
|
|
|
|
inc BufPtrDst+1
|
|
|
|
|
bra .1
|
|
|
|
|
|
|
|
|
|
.8 pla
|
|
|
|
|
sta BufPtr+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-15 17:15:43 +01:00
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
2021-06-30 21:09:07 +02:00
|
|
|
|
BUF.MoveForwardTail
|
2019-11-15 17:15:43 +01:00
|
|
|
|
ldy #0
|
|
|
|
|
|
2020-02-10 17:24:49 +01:00
|
|
|
|
ldx #0
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
|
|
|
|
.1 lda (BufPtr),y
|
2020-02-10 17:24:49 +01:00
|
|
|
|
beq .2
|
2019-11-15 17:15:43 +01:00
|
|
|
|
|
2020-02-10 17:24:49 +01:00
|
|
|
|
iny
|
2019-11-15 17:15:43 +01:00
|
|
|
|
bne .1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-02-10 17:24:49 +01:00
|
|
|
|
inx
|
2019-11-15 17:15:43 +01:00
|
|
|
|
inc BufPtr+1
|
|
|
|
|
inc BufPtrDst+1
|
|
|
|
|
bra .1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-02-10 17:24:49 +01:00
|
|
|
|
.2 txa
|
|
|
|
|
eor #$ff
|
|
|
|
|
pha
|
|
|
|
|
tya
|
|
|
|
|
eor #$ff
|
|
|
|
|
tax will move tail len+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
.3 lda (BufPtr),y
|
2019-11-15 17:15:43 +01:00
|
|
|
|
sta (BufPtrDst),y
|
|
|
|
|
|
|
|
|
|
inx
|
|
|
|
|
bne .4
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-15 17:15:43 +01:00
|
|
|
|
pla
|
|
|
|
|
inc
|
|
|
|
|
beq .8
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-15 17:15:43 +01:00
|
|
|
|
pha
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
.4 tya
|
|
|
|
|
bne .5
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
dec BufPtr+1
|
|
|
|
|
dec BufPtrDst+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
.5 dey
|
|
|
|
|
|
|
|
|
|
bra .3
|
2019-11-15 17:15:43 +01:00
|
|
|
|
|
2019-06-03 17:50:41 +02:00
|
|
|
|
.8 rts
|
2016-01-28 18:03:51 +01:00
|
|
|
|
*--------------------------------------
|
2016-01-04 08:25:43 +01:00
|
|
|
|
* Out : Y = Line Length
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
BUF.ComputeCOffset
|
2016-11-04 17:46:16 +01:00
|
|
|
|
jsr BUF.GetLine
|
2016-01-04 08:25:43 +01:00
|
|
|
|
bcs .9
|
2019-08-26 11:26:42 +02:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
phy save line length
|
2019-08-26 11:26:42 +02:00
|
|
|
|
|
2019-11-04 08:21:40 +01:00
|
|
|
|
>LDA.G FileX
|
2019-11-12 17:39:22 +01:00
|
|
|
|
* clc
|
2016-01-04 08:25:43 +01:00
|
|
|
|
adc BUF.LOffset
|
|
|
|
|
sta BUF.COffset
|
2019-08-26 11:26:42 +02:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
lda #0
|
|
|
|
|
adc BUF.LOffset+1
|
|
|
|
|
sta BUF.COffset+1
|
2019-08-26 11:26:42 +02:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
ply
|
2019-08-26 11:26:42 +02:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
clc
|
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
2019-11-04 08:21:40 +01:00
|
|
|
|
BUF.GetNextLine sec
|
|
|
|
|
.HS 90 BCC
|
|
|
|
|
|
|
|
|
|
BUF.GetLine clc
|
|
|
|
|
>LDA.G FileY
|
|
|
|
|
adc #0
|
|
|
|
|
pha
|
|
|
|
|
iny
|
2016-11-04 17:46:16 +01:00
|
|
|
|
lda (pData),y
|
2019-11-04 08:21:40 +01:00
|
|
|
|
adc #0
|
2016-11-04 17:46:16 +01:00
|
|
|
|
tax
|
2019-11-04 08:21:40 +01:00
|
|
|
|
pla
|
|
|
|
|
|
2019-11-13 17:33:29 +01:00
|
|
|
|
BUF.GetLineAX sta BUF.TmpLine1 Requested Line
|
2017-10-12 17:28:59 +02:00
|
|
|
|
stx BUF.TmpLine1+1
|
2016-01-04 08:25:43 +01:00
|
|
|
|
|
2019-11-13 17:33:29 +01:00
|
|
|
|
stz BUF.TmpLine2
|
|
|
|
|
stz BUF.TmpLine2+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
stz BUF.LOffset
|
|
|
|
|
stz BUF.LOffset+1
|
|
|
|
|
|
2019-11-17 15:39:55 +01:00
|
|
|
|
>LDYA.G BufBase
|
2016-01-04 08:25:43 +01:00
|
|
|
|
>STYA BufPtr
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
.1 ldy #0
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
.2 lda (BufPtr),y
|
|
|
|
|
beq .7
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-25 21:24:07 +02:00
|
|
|
|
cmp #C.CR
|
2016-01-04 08:25:43 +01:00
|
|
|
|
beq .3
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
iny
|
|
|
|
|
bne .2
|
|
|
|
|
|
|
|
|
|
.3 lda BUF.TmpLine1
|
|
|
|
|
cmp BUF.TmpLine2
|
|
|
|
|
bne .4
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
lda BUF.TmpLine1+1
|
|
|
|
|
cmp BUF.TmpLine2+1
|
|
|
|
|
beq .8
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
.4 tya
|
|
|
|
|
sec
|
|
|
|
|
adc BufPtr
|
|
|
|
|
sta BufPtr
|
|
|
|
|
bcc .5
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
inc BufPtr+1
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
.5 tya
|
|
|
|
|
sec
|
|
|
|
|
adc BUF.LOffset
|
|
|
|
|
sta BUF.LOffset
|
|
|
|
|
bcc .6
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
inc BUF.LOffset+1
|
|
|
|
|
|
|
|
|
|
.6 inc BUF.TmpLine2
|
|
|
|
|
bne .1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
inc BUF.TmpLine2+1
|
|
|
|
|
bra .1
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
.7 lda BUF.TmpLine1
|
|
|
|
|
cmp BUF.TmpLine2
|
2016-01-28 18:03:51 +01:00
|
|
|
|
bne .9
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-04 08:25:43 +01:00
|
|
|
|
lda BUF.TmpLine1+1
|
|
|
|
|
cmp BUF.TmpLine2+1
|
2016-01-28 18:03:51 +01:00
|
|
|
|
bne .9
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-28 18:03:51 +01:00
|
|
|
|
.8 clc Y = Line length
|
2016-01-04 08:25:43 +01:00
|
|
|
|
rts
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2016-01-28 18:03:51 +01:00
|
|
|
|
.9 sec
|
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
2019-05-29 17:21:14 +02:00
|
|
|
|
BUF.ResetSel lda #$ff
|
|
|
|
|
ldy #SelStart
|
2019-05-28 18:00:53 +02:00
|
|
|
|
|
2019-05-29 17:21:14 +02:00
|
|
|
|
sta (pData),y
|
2019-05-28 18:00:53 +02:00
|
|
|
|
iny
|
2019-05-29 17:21:14 +02:00
|
|
|
|
sta (pData),y
|
2019-05-28 18:00:53 +02:00
|
|
|
|
|
2019-05-29 17:21:14 +02:00
|
|
|
|
iny #SelEnd
|
2019-11-04 08:21:40 +01:00
|
|
|
|
inc lda #0
|
2019-05-29 17:21:14 +02:00
|
|
|
|
sta (pData),y
|
|
|
|
|
iny
|
|
|
|
|
sta (pData),y
|
2016-02-25 18:02:57 +01:00
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
BUF.CheckSelected
|
2019-05-28 18:00:53 +02:00
|
|
|
|
lda BUF.COffset
|
2019-05-29 17:21:14 +02:00
|
|
|
|
ldy #SelStart
|
2019-05-24 17:26:07 +02:00
|
|
|
|
cmp (pData),y
|
2019-05-28 18:00:53 +02:00
|
|
|
|
lda BUF.COffset+1
|
2019-05-29 17:21:14 +02:00
|
|
|
|
iny
|
2016-02-25 18:02:57 +01:00
|
|
|
|
sbc (pData),y
|
2019-05-29 17:21:14 +02:00
|
|
|
|
bcc .9 CC:COffset < SelStart
|
2019-11-04 08:21:40 +01:00
|
|
|
|
|
2019-05-28 18:00:53 +02:00
|
|
|
|
iny #SelEnd
|
2019-05-29 17:21:14 +02:00
|
|
|
|
lda (pData),y
|
|
|
|
|
clc
|
|
|
|
|
sbc BUF.COffset
|
2016-02-25 18:02:57 +01:00
|
|
|
|
iny
|
2019-05-29 17:21:14 +02:00
|
|
|
|
lda (pData),y
|
|
|
|
|
sbc BUF.COffset+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
* CC:SelEnd < COffset
|
2019-05-29 17:21:14 +02:00
|
|
|
|
.9 lda #0
|
|
|
|
|
ror $80 = selected
|
2016-02-25 18:02:57 +01:00
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
|
|
|
|
BUF.GetSelLen ldy #SelEnd
|
|
|
|
|
lda (pData),y
|
|
|
|
|
sec
|
|
|
|
|
ldy #SelStart
|
|
|
|
|
sbc (pData),y
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2019-05-29 17:21:14 +02:00
|
|
|
|
sta SelLen
|
2016-02-25 18:02:57 +01:00
|
|
|
|
tax
|
|
|
|
|
ldy #SelEnd+1
|
|
|
|
|
lda (pData),y
|
2019-05-29 17:21:14 +02:00
|
|
|
|
|
2016-02-25 18:02:57 +01:00
|
|
|
|
ldy #SelStart+1
|
|
|
|
|
sbc (pData),y
|
2019-05-29 17:21:14 +02:00
|
|
|
|
sta SelLen+1
|
2016-02-25 18:02:57 +01:00
|
|
|
|
bcc .9
|
2019-12-07 10:54:33 +01:00
|
|
|
|
|
2016-02-25 18:02:57 +01:00
|
|
|
|
bne .8
|
2019-05-29 17:21:14 +02:00
|
|
|
|
txa
|
2016-02-25 18:02:57 +01:00
|
|
|
|
beq .9
|
2019-12-07 10:54:33 +01:00
|
|
|
|
|
2016-02-25 18:02:57 +01:00
|
|
|
|
.8 clc
|
|
|
|
|
rts
|
2019-12-07 10:54:33 +01:00
|
|
|
|
|
2016-02-25 18:02:57 +01:00
|
|
|
|
.9 sec
|
|
|
|
|
rts
|
|
|
|
|
*--------------------------------------
|
2021-06-30 21:09:07 +02:00
|
|
|
|
* in : Y,A = cnt to insert at COffset
|
2020-01-23 15:48:22 +01:00
|
|
|
|
*--------------------------------------
|
2020-01-26 20:36:49 +01:00
|
|
|
|
BUF.BufPtrSetup >STYA TmpLen
|
|
|
|
|
|
2020-01-24 16:54:31 +01:00
|
|
|
|
tya
|
|
|
|
|
clc
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-01-24 16:54:31 +01:00
|
|
|
|
adc FileLen
|
2020-01-26 20:36:49 +01:00
|
|
|
|
sta FileLen
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-01-27 17:33:11 +01:00
|
|
|
|
tay
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-01-26 20:36:49 +01:00
|
|
|
|
lda TmpLen+1
|
2020-01-24 16:54:31 +01:00
|
|
|
|
adc FileLen+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-01-26 20:36:49 +01:00
|
|
|
|
sta FileLen+1
|
2020-01-24 16:54:31 +01:00
|
|
|
|
|
|
|
|
|
cpy BufLen
|
|
|
|
|
sbc BufLen+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-01-26 20:36:49 +01:00
|
|
|
|
bcc .8
|
|
|
|
|
|
2020-02-11 17:32:33 +01:00
|
|
|
|
jsr BUF.BufPtr.Realloc
|
2020-02-10 17:24:49 +01:00
|
|
|
|
bcs .9
|
2020-01-24 16:54:31 +01:00
|
|
|
|
|
2020-02-11 17:40:12 +01:00
|
|
|
|
jsr BUF.ComputeCOffset
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-01-26 20:36:49 +01:00
|
|
|
|
.8 lda BUF.COffset
|
2019-11-17 15:39:55 +01:00
|
|
|
|
clc
|
|
|
|
|
>ADC.G BufBase
|
|
|
|
|
sta BufPtr
|
|
|
|
|
|
|
|
|
|
lda BUF.COffset+1
|
|
|
|
|
>ADC.G BufBase+1
|
|
|
|
|
sta BufPtr+1
|
2020-01-23 15:48:22 +01:00
|
|
|
|
|
2020-01-26 20:36:49 +01:00
|
|
|
|
lda BufPtr
|
2020-01-24 16:54:31 +01:00
|
|
|
|
clc
|
2020-01-26 20:36:49 +01:00
|
|
|
|
adc TmpLen
|
|
|
|
|
sta BufPtrDst
|
|
|
|
|
|
|
|
|
|
lda BufPtr+1
|
|
|
|
|
adc TmpLen+1
|
|
|
|
|
sta BufPtrDst+1
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-01-26 20:36:49 +01:00
|
|
|
|
clc
|
|
|
|
|
.9 rts
|
2019-11-17 15:39:55 +01:00
|
|
|
|
*--------------------------------------
|
2020-02-11 17:32:33 +01:00
|
|
|
|
BUF.BufPtr.Realloc
|
|
|
|
|
>PUSHB.G hBuf
|
|
|
|
|
|
|
|
|
|
lda FileLen+1
|
|
|
|
|
inc
|
|
|
|
|
inc
|
|
|
|
|
sta BufLen+1
|
|
|
|
|
>PUSHA
|
|
|
|
|
>PUSHBI 0
|
2021-06-30 21:09:07 +02:00
|
|
|
|
|
2020-02-28 08:21:46 +01:00
|
|
|
|
>SYSCALL Realloc
|
2020-02-11 17:32:33 +01:00
|
|
|
|
bcs .9
|
|
|
|
|
|
|
|
|
|
>STYA.G BufBase
|
|
|
|
|
txa
|
|
|
|
|
>STA.G hBuf
|
|
|
|
|
.9 rts
|
|
|
|
|
*--------------------------------------
|
2016-01-04 08:25:43 +01:00
|
|
|
|
MAN
|
2020-07-27 16:09:19 +02:00
|
|
|
|
SAVE usr/src/bin/edit.s.buf
|
|
|
|
|
LOAD usr/src/bin/edit.s
|
2016-01-04 08:25:43 +01:00
|
|
|
|
ASM
|