start tok64 d64-pIHpth 10 REM *'roloprint' by terry kryger 6/87* 20 cr$=CHR$(13):bs$=CHR$(20):DIMc$(15),ln(15),cn(15),ll(15):PRINTCHR$(14) 30 POKE53280,6:FORi=1TO39:sp$=sp$+" ":NEXT 40 FORi=1TO15:READln(i),cn(i),ll(i):NEXT:GOTO70 50 POKE214,ln:POKE211,cn:SYS58640:RETURN 60 ln=20:cn=0:GOSUB50:RETURN 70 PRINT"{clear}{white}{down*3}";:GOSUB330 80 PRINT"{yellow}":ln=8:b$="R O L O P R I N T":GOSUB410 90 PRINT"{light green}":ln=10:b$="by T.W. Kryger ":GOSUB410:PRINT"{white}" 100 FORi=1TO1000:NEXT:ln=8:cn=1:GOSUB50:PRINTLEFT$(sp$,38) 110 ln=10:cn=1:GOSUB50:PRINTLEFT$(sp$,38) 120 GOSUB60:PRINT"Enter data - Hit {reverse on}RETURN{reverse off} to skip a field" 125 PRINT"{space*13}Hit {reverse on}F1 to QUIT" 130 FORi=1TO15:ln=ln(i):cn=cn(i):GOSUB50:GOSUB240 140 c$(i)=p$:NEXT 150 GOSUB60:PRINTsp$"{up}" 160 PRINTTAB(7)"{reverse on}P{reverse off}RINT{space*5}{reverse on}M{reverse off}ODIFY{space*5}{reverse on}C{reverse off}ANCEL" 170 GETa$:IFa$=""THEN170 180 IFa$="P"ORa$="p"THENGOSUB470:GOTO210 190 IFa$="M"ORa$="m"THEN590 200 IFa$<>"c"ANDa$<>"C"THEN150 210 PRINT"{clear}{down*3}";:GOSUB330:GOTO120 220 GETa$:IFa$=""THEN220 230 REM * input * 240 p$="" 250 IFLEN(p$)>=ll(i)THENRETURN 260 PRINT"{cm p}{left}"; 270 GETa$:IFa$=""THEN270 275 IFa$=CHR$(133)THENPRINT"loading menu":LOAD"sta.store",8,1:RUN 280 IFa$=cr$THENPRINT" {left}":RETURN 290 a=ASC(a$):IF(a<32ANDa<>20)OR(a>95ANDa<193)ORa>218THEN270 300 IFa$=bs$ANDLEN(p$)>0THENPRINT"{left}{space*2}{left*2}";:p$=LEFT$(p$,LEN(p$)-1):GOTO250 310 IFa$=bs$THEN270 320 p$=p$+a$:PRINTa$;:GOTO250 330 PRINT"{cm a}{sh asterisk*38}{cm s}"; 340 FORn=1TO10 350 PRINT"{sh -}{space*38}{sh -}";:NEXT 360 PRINT"{sh -}{space*13}{cm d}{cm i}{cm f}{space*6}{cm d}{cm i}{cm f}{space*13}{sh -}"; 370 PRINT"{sh -}{space*13}{reverse on}{cm k} {reverse off}{cm k}{space*6}{reverse on}{cm k} {reverse off}{cm k}{space*13}{sh -}"; 380 PRINT"{cm z}{sh asterisk*14}{reverse on}{cm d}{reverse off}{sh asterisk*8}{reverse on}{cm d}{reverse off}{sh asterisk*14}{cm x}" 390 RETURN 400 REM * heading printer * 410 cn=20-LEN(b$)/2:GOSUB50 420 FORi=1TOLEN(b$):k$=(MID$(b$,i,1)):z=65:IFASC(k$)>192THENz=193 430 FORj=zTOASC(k$):PRINTCHR$(j);"{left}"; 440 FORn=1TO3:NEXT:NEXT:PRINTk$;:NEXT 450 RETURN 460 REM * printer routine * 470 y=13-LEN(c$(10)):c$(10)=c$(10)+LEFT$(sp$,y)+LEFT$(sp$,13)+c$(11) 480 y=13-LEN(c$(12)):c$(11)=c$(12)+LEFT$(sp$,y)+LEFT$(sp$,13)+c$(13) 490 y=13-LEN(c$(14)):c$(12)=c$(14)+LEFT$(sp$,y)+LEFT$(sp$,13)+c$(15) 500 OPEN4,4,4:REM * upper/lower case for epson mx-80 and tymac interface * 510 GOSUB60:PRINTsp$"{up}":PRINTTAB(9);:INPUT"How many copies{space*2}1{left*3}";nc$ 520 nc=VAL(nc$):IFnc=0THEN150 530 IFnc<1ORnc>10THEN510 540 FORj=1TOnc 550 FORi=1TO12:PRINT#4,c$(i):NEXT 560 PRINT#4:NEXT 570 CLOSE4:RETURN 580 REM * modify * 590 PRINT"{light green}":FORi=1TO15:cn=cn(i)-1:ln=ln(i):GOSUB50:PRINT"{reverse on}";CHR$(i+96):NEXT 600 PRINT"{white}":GOSUB60:PRINTsp$"{up}" 610 PRINTTAB(7)"Re-enter which line? ({light green}A-O{white}) 620 GETa$:IFa$=""THEN620 630 IFASC(a$)<65ORASC(a$)>80THEN600 640 GOSUB60:PRINTsp$"{up}":PRINTTAB(8)"Re-enter text on line "CHR$(ASC(a$)+128) 650 i=ASC(a$)-64:c$(i)="":cn=cn(i):ln=ln(i):GOSUB50:PRINTLEFT$(sp$,ll(i))"{up}" 660 GOSUB50:GOSUB240:c$(i)=p$ 670 PRINT"{clear}{down*3}";:GOSUB330:FORi=1TO15:cn=cn(i):ln=ln(i):GOSUB50:PRINTc$(i) 680 NEXT:GOTO150 690 DATA4,1,38,5,1,38,6,1,38,7,1,38,8,1,38,9,1,38,10,1,38,11,1,38,12,1,38 700 DATA13,1,12,13,27,12,14,1,12,14,27,12,15,1,12,15,27,12 stop tok64 (bastext 1.0)