Compucolor.org – Virtual Media

Listing of file='LISTER.BAS;08' on disk='vmedia/printer_pkg_src-sideA-sector.ccvf'

10 REM  *** BASIC FILE LISTER - COPYRIGHT 1980 BY TREVOR TAYLOR ***
15 REM
20 REM  SET UP THE DEFAULT VALUES AS FOLLOWS:
25 REM  BAUD RATE:   DB = 110-9600
30 REM  LINE LENGTH: DL
35 REM  PAGE LENGTH: DP
40 REM  FORM-FEEDS:  FF = 0 - PRINTER CAN'T FF, 1 - CAN FF
45 REM  SKIP LENGTH: DS = 0 - PRINTER SKIPS PAGE PERFORATIONS
50 REM                 <> 0 - NO. OF LINES TO SKIP
55 REM  SINGLE PAGE: DF = 0 - CONTINUOUS FORMS, 1 - SINGLE PAGES
60 REM  HEADER FLAG: HF = 0 - NO HEADER, 1 - PRINT PAGE HEADINGS
65 REM  MECHANICAL DELAY FACTOR: DD = 1-12
70 REM
75 REM  E.G. 8-1/2 X 11 PAPER, 1200 BAUD, WITH FF AND PERF. SKIP
80 DB= 1200:DL= 80:DP= 60:FF= 1:DS= 0:DF= 0:HF= 1:DD= 1
85 REM  BAUD RATE MASKS
90 DIM  B(2,7):B(1,1)= 110:B(1,2)= 150:B(1,3)= 300:B(1,4)= 1200
91 B(1,5)= 2400:B(1,6)= 4800:B(1,7)= 9600
92 B(2,1)= 1:B(2,2)= 130:B(2,3)= 132:B(2,4)= 136
93 B(2,5)= 144:B(2,6)= 160:B(2,7)= 172
95 REM
100 PLOT  6,2,29,12:PRINT "BASIC FILE LISTER"
110 PLOT  27,4:PRINT  "LOAD LISTER.PRG":PLOT  27,27
112 REM  SET UP THE CALL(X) VECTOR
115 POKE  33282,195:POKE  33283,14:POKE  33284,144
120 INPUT "BAUD RATE ? ";BR
121 IF  BR= 0 THEN  BR= DB
122 FOR I= 1TO 7
123 IF B(1,I)= BRGOTO 127
124 NEXT I
125 GOTO 120
127 POKE 36864,B(2,I)
130 INPUT  "LINE LENGTH ? ";LL
131 IF  LL= 0 THEN  LL= DL
132 POKE  36865,LL
140 INPUT  "PAGE LENGTH ? ";PL
141 IF  PL= 0 THEN  PL= DP
142 POKE  36866,PL
150 INPUT  "CAN THE PRINTER FORM-FEED (Y OR N) ? ";AN$
151 POKE  36867,FF
152 IF  AN$= "Y" THEN  POKE  36867,1
153 IF  AN$< > "N" GOTO  160
154 POKE  36867,0
155 GOTO  164
160 INPUT  "DOES PRINTER SKIP PAGE PERFORATIONS (Y OR N) ? ";AN$
161 POKE  36868,DS
162 IF  AN$= "Y" THEN  POKE  36868,0
163 IF  AN$< > "N" GOTO  170
164 INPUT  "NUMBER OF LINES FOR PERFORATION SKIP ? ";SL
165 IF  SL= 0 THEN  SL= DS
166 POKE  36868,SL
170 INPUT  "SINGLE SHEETS OF PAPER (Y OR N) ? ";AN$
171 POKE  36869,DF
172 IF  AN$= "Y" THEN  POKE  36869,1
173 IF  AN$= "N" THEN  POKE  36869,0
180 INPUT  "PRINT PAGE HEADINGS (Y OR N) ? ";AN$
181 POKE 36870,HF
182 IF  AN$= "Y" THEN  POKE  36870,1
183 IF  AN$= "N" THEN  POKE  36870,0
190 INPUT  "MECHANICAL DELAY FACTOR (1-12) ? ";MD
191 POKE  36874,DD
192 IF  MD> 0 AND  MD< 13 THEN  POKE  36874,MD
300 INPUT  "SAVE THIS CONFIGURATION (Y OR N) ? ";AN$
310 IF  AN$< > "Y" GOTO  500
320 INPUT  "FILE NAME ";F$
330 PLOT  27,4:PRINT  "SAVE ";F$;",9000-9EFF,900E,9000"
340 PLOT  27,27
500 X =  CALL (0)
1000 END