3318 F889 4C 7C F8 JMP CHN1
3319 F88C AD 29 A4 CHN2 LDA STIY+2 ;GET CHAR COUNT
3320 F88F 85 E9 STA OLDLEN ;GET READY FOR REPLAC
3321 F891 AD 15 A4 LDA CURPO2 ;PNTR TO BEGINNING OF STRING
3322 F894 48 PHA ;SAVE IT
3323 F895 20 2A F9 JSR ADDA ;ADD TO NOWLN (LINE PNTR)
3324 F898 20 44 EB JSR CLR ;CLEAR DISP
3325 F89B A0 05 LDY #M3-M1 ;PRINT "TO"
3326 F89D 20 AF E7 JSR KEP
3327 F8A0 A0 00 LDY #0
3328 F8A2 20 7A F7 JSR IN02 ;GET NEW STRING & REPLAC
3329 F8A5 68 PLA
3330 F8A6 AA TAX
3331 F8A7 F0 06 BEQ CHN4
3332 F8A9 20 1D F9 CHN3 JSR SUB ;RESTORE NOWLN WHERE IT WAS
3333 F8AC CA DEX
3334 F8AD D0 FA BNE CHN3
3335 F8AF 4C 27 F7 CHN4 JMP PLNE ;DISPLAY THE CHANGED LINE
3336 F8B2
3337 F8B2 ;THE FOLLOWING ARE SUBROUTINES USED BY COMMANDS
3338 F8B2 A9 01 CFLG LDA #1 ;SET FLG FOR C COMMAND
3339 F8B4 D0 02 BNE KI2
3340 F8B6 A9 00 KIFLG LDA #0 ;CLR K OR I COMMAND FLG
3341 F8B8 8D 19 A4 KI2 STA COUNT
3342 F8BB 60 RTS
3343 F8BC
3344 F8BC A5 E3 TOPNO LDA TEXT ;SET CURRENT LINE TO TOP
3345 F8BE A6 E4 LDX TEXT+1
3346 F8C0 85 DF TPO1 STA NOWLN
3347 F8C2 86 E0 STX NOWLN+1
3348 F8C4 60 RTS
3349 F8C5
3350 F8C5 A5 E1 SETBOT LDA BOTLN ;SET CURRENT LINE TO BOTTOM
3351 F8C7 A6 E2 LDX BOTLN+1
3352 F8C9 85 E7 STA SAVE
3353 F8CB 86 E8 STX SAVE+1
3354 F8CD 4C C0 F8 JMP TPO1
3355 F8D0
3356 F8D0 AD 1C A4 RESNOW LDA ADDR ;RESTORE CURRENT LINE ADDRESS
3357 F8D3 85 DF STA NOWLN
3358 F8D5 AD 1D A4 LDA ADDR+1
3359 F8D8 85 E0 STA NOWLN+1
3360 F8DA 60 RTS
3361 F8DB
3362 F8DB ; SEE IF CURRENT LINE AT TOP (C SET IF SO)
3363 F8DB A5 DF ATTOP LDA NOWLN
3364 F8DD C5 E3 CMP TEXT
3365 F8DF D0 16 BNE AT01
3366 F8E1 A5 E0 LDA NOWLN+1
3367 F8E3 C5 E4 CMP TEXT+1
3368 F8E5 D0 10 BNE AT01
3369 F8E7 38 SEC
3370 F8E8 60 RTS
3371 F8E9
3372 F8E9 ; SEE IF CURRENT LINE AT BOTTOM (C SET IF SO)
3373 F8E9 A5 DF ATBOT LDA NOWLN
3374 F8EB A6 E0 LDX NOWLN+1
3375 F8ED C5 E1 CMP BOTLN
3376 F8EF D0 06 BNE AT01
3377 F8F1 E4 E2 CPX BOTLN+1
3378 F8F3 D0 02 BNE AT01
3379 F8F5 38 AT02 SEC