1 REM +++++++++++++++++++++++++++++++++ 2 REM ! Program .... SHOW.UTL 3 REM ! Utg}va 1.1/P 840403 4 REM ! av (c) Victor Falkteg 5 REM ! {ndrat av /VF/ 7 REM ! Minne 16 Kbytes f|r flexskiva 8 REM ! Ins{nt av 4068 9 REM +++++++++++++++++++++++++++++++++ 10 REM Programmet listar ASCII-fil p} bildsk{rm 11 REM eller printer (PR : ). 12 REM Printer beordras med /P f|re, i eller 13 REM efter filnamnet. 14 REM Programmet {r avpassat till printer som 15 REM klarar minst 120 kol/rad och papper som 16 REM till}ter max 51 rader, varvid rader |ver- 17 REM hoppas f|r att m|jligg|ra vikning och 18 REM h}lslagning. 19 REM Antalet kol/rad {ndras i TAB-utrycken fr}n 20 REM 120 till |nskat v{rde. 21 REM Radantalet per ark {r satt till 51 vilket 22 REM kan {ndras i subrutinerna p} slutet som 23 REM h}ller reda p} n{r tomma rader skall l{g- 24 REM gas in. 25 REM Programmet skriver ut filnamn och sid.-nr 26 REM om antalet sidor |verstiger tv}. 27 REM ******************************************* 100 DIM B$=132% : F%=1% : ; : ; "** S H O W ** PRINTER: /P **"; 110 ; : ; "File: "; : INPUTLINE Z$ : Z$=LEFT$(Z$,LEN(Z$)-2%) : IF Z$="" END 120 P%=INSTR(1%,Z$,"/P") : IF P%=0% P%=INSTR(1%,Z$,"/p") 130 IF P%=0% 160 ELSE L%=2% 140 ONERRORGOTO 150 : Z$=LEFT$(Z$,P%-1%)+RIGHT$(Z$,P%+2%) : IF Z$="" END ELSE 160 150 Z$=RIGHT$(Z$,P%+2%) : IF Z$="" END 160 ONERRORGOTO 170 : F$=Z$ : GOSUB 310 : GOTO 240 170 IF INSTR(1%,Z$,".")=0% Z$=Z$+"." 180 ONERRORGOTO 190 : F$=Z$+"TXT" : GOSUB 310 : GOTO 240 190 ONERRORGOTO 200 : F$=Z$+"DAT" : GOSUB 310 : GOTO 240 200 ONERRORGOTO 210 : F$=Z$+"PAS" : GOSUB 310 : GOTO 240 210 ONERRORGOTO 220 : F$=Z$+"BAS" : GOSUB 310 : GOTO 240 220 ONERRORGOTO 230 : F$=Z$+"HEX" : GOSUB 310 : GOTO 240 230 ONERRORGOTO 110 : F$=Z$+" " : GOSUB 310 : GOTO 240 240 ONERRORGOTO 280 : IF L%=0% ; ELSE OPEN "PR:" ASFILE L% : ; : ; "Printerfile open. Line no:"; 250 GOSUB 320 : R=PEEK(65011) : FOR I=1 TO 99999 : IF L%=0% AND FIX(I/10)=I/10 GET C$ 260 INPUTLINE #1%,B$ : ; #L%B$; : GOSUB 360 270 NEXT I 280 IF ERRCODE=34% 290 ELSE ; "Error no: ";ERRCODE : END 290 IF L%=0% ; 300 GOSUB 340 : ; CHR$(7%); : ; : ; "End of"I-1%" lines file "F$; : END 310 ; CUR(PEEK(65011),6%)F$" "; : OPEN F$ ASFILE 1% : RETURN 320 IF L%=0% RETURN 330 P$="* File: "+F$+" *" : ; #L%;TAB(120%-LEN(P$));P$ : ; #L% : RETURN 340 IF L%=0% RETURN 350 P$="* End of file: "+F$+" *"+NUM$(I-1%)+" lines *" : ; #L% : ; #L%;TAB(120%-LEN(P$));P$ : RETURN 360 IF L%=0% RETURN ELSE ; CUR(R,27%)I; 370 IF FIX(I/88%)=I/88% ; #L% : F%=F%+1% : P$="* File: "+F$+" * Page:"+NUM$(F%)+" *" ELSE 400 380 ; #L%;TAB(120%-LEN(P$));P$ : FOR J%=1% TO 8% : ; #L% : NEXT J% 390 F%=F%+1% : P$="* File: "+F$+" * Page:"+NUM$(F%)+" *" : ; #L%;TAB(120%-LEN(P$));P$ : ; #L% : RETURN 400 IF FIX(I/44%)=I/44% THEN FOR J%=1% TO 2% : ; #L% : NEXT J% : RETURN ELSE RETURN