1 REM +++++++++++++++++++++++++++++++++ 2 REM ! Program .... GETSKRIV 3 REM ! Utg}va 01 82.01.18 4 REM ! av (c) Stig Johansson, Brastad 5 REM ! {ndrat av Sixten L|gdberg 7 REM ! Minne 16 Kbytes 9 REM +++++++++++++++++++++++++++++++++ 10 REM ! Subrutin ORDBEHANDLING. ! 11 REM +------------------------------+ 90 REM ** R% = RADNUMMER. 100 REM ** Z% = RADL[NGD. 110 REM ** K% = BEGR[NSAD RADL[NGD. 120 DIM S$(10%)=25% 130 ; CHR$(12%)'INFO:' : ; 'Denna subrutin kan l{mpligen anv{ndas i' 140 ; 'ex.register-pgm d{r samma text eller' 150 ; 'delvis samma text beh|ver upprepas' 160 ; 'flera g}nger.Inskrivna rader lagrar man' 170 ; 'i en variabel ( se ex.p} rad:330 ).' 180 ; 'Viss rad kan h{mtas med t.ex. INPUT I%,' 190 ; 'och sedan enkelt korrigerigeras.' 200 ; 'Ny text kan skjutas in i h{mtade rader.' 210 ; 'Varje radl{ngd kan begr{nsas, och man' 220 ; 'kan sp{rra s} att end.siffror kan' 230 ; 'skrivar p} viss rad,som p} rad 3 nedan.' 240 ; : ; 'Anv{nd -> f|r att h{mta skriven text' 250 ; 'och <- f|r att backa.' 260 ; : ; 'Detta {r allts} inget komplett' 270 ; 'program, utan en subrutin att anv{ndas' 280 ; 'i andra program.' 290 ; : ; 'TRYCK RETURN. '; : GET A$ 300 ; CHR$(12%) 310 Z%=18% : R%=1% : ; CUR(5%,5%)'Rad:1 > '; : GOSUB 360 320 Z%=18% : R%=2% : ; CUR(6%,5%)'Rad:2 > '; : GOSUB 360 330 Z%=5% : R%=3% : ; CUR(7%,5%)'Rad:3 > '; : GOSUB 360 : V$(I%)=S$ 340 ; CUR(22%,0%)'** N[STA TEXT: '; : GET A$ : GOTO 300 350 REM  SUB-INSKRIVN. 360 S$='' 370 ]$=CHR$(8%,32%,8%) 380 GET [$ : [%=ASC([$) 390 IF Z%<11% IF [%>31% IF [%<45% OR [%>57% GOTO 380 : REM KORT RAD=END.SIFFROR 400 IF [%=13% U$(R%)=S$ : K%=0% : RETURN 410 IF [%>95% [%=[%-32% : REM sm} till STORA bokst{ver. 420 IF [%=8% IF K%<0% K%=0% 430 IF [%=8% IF LEN(S$) K%=K%-1% : S$=LEFT$(S$,K%) : ; ]$; 440 IF [%=9% IF LEN(U$(R%))=0% 380 ELSE [%=ASC(U$(R%)) : U$(R%)=RIGHT$(U$(R%),2%) 450 IF K%>=Z% K%=Z% : GOTO 380 : REM MAX RADL[NGD 460 IF [%>31% K%=K%+1% : ; CHR$([%); : S$=S$+CHR$([%) 470 GOTO 380