Compucolor.org – Virtual Media

Listing of file='LTRS.BAS;01' on disk='vmedia/ncc_21-sector.ccvf'

100 REM KY SIZES
110 OUT 8,199:CLEAR 2500:DIM A$(50),B$(50)
115 PLOT 6,6,12,15:PRINT "ONE MOMENT PLEASE...":PLOT 3,64,0
120 FILE "R",1,"BIG",1
130 FOR I= 1TO 49:GET 1,I;A$(I)[7]:NEXT I:FILE "C",1
140 FILE "R",1,"HUG",2:A$(11)= "bh
a|":REM 
150 A$(40)= "cna

md
b":REM 
160 FOR I= 1TO 47:GET 1,I;B$(I)[35]:NEXT I:FILE "C",1
170 PLOT 27,24
200 REM  PRINT EXAMPLES
210 OUT 8,199:PLOT 6,0,12
230 S$= "BLOCK LETTERING EXAMPLES - SIZE ONE"
240 XS= 10:YS= 1:SZ= 1:GOSUB 5000
250 S$= "S I Z E  T W O"
260 XS= 21:YS= 4:SZ= 2:GOSUB 5000
270 S$= "SIZE THREE"
280 XS= 10:YS= 8:SZ= 3:GOSUB 5000
290 S$= "S I Z E  F O U R"
291 XS= 6:YS= 14:SZ= 4:GOSUB 5000
292 S$= "SIZE FIVE"
293 XS= 2:YS= 22:SZ= 5:GOSUB 5000
294 FOR ZZ= 1TO 1000:NEXT
295 OUT 8,255:PLOT 6,0,12
299 REM  BLOCK LETTERING KEYBOARD INPUT
300 PLOT 8,255,29,18,30,16,15,11
310 INPUT "COLOR AND CHARACTERS ";S$:PLOT 8,11
320 INPUT "X START (0-32) ";XS:PLOT 8,11
330 INPUT "Y START (0-64) ";YS:PLOT 8,11
340 INPUT "SIZE (1-5) ";SZ:PLOT 8,11
350 OUT 8,199:PLOT 6,0
360 GOSUB 5000
370 PLOT 3,64,0:FOR Z= 1TO 500:NEXT
380 OUT 8,255:GOTO 300
5000 REM 
5050 XO= XS:YO= YS:PLOT 30,16
5060 IF SZ= 1THEN PLOT 29,15,3,XO,YO:PRINT S$:RETURN
5070 IF SZ= 2THEN PLOT 29,14,3,XO,YO:PRINT S$:RETURN
5080 IF SZ= 5THEN YD= 8:XD= 6:PLOT 15,6,0,29
5090 IF SZ= 3THEN PLOT 30,15:YD= 3:XD= 3
5100 IF SZ= 4THEN PLOT 30,14:YD= 6:XD= 3
5110 FOR I= 1TO LEN (S$):C= ASC (MID$ (S$,I,1))
5120 IF C= 13THEN YS= YS+ YD:XS= XO:GOTO 5270
5130 IF SZ= 4AND C= 32THEN XS= XS+ 2:GOTO 5270
5140 IF C= 32THEN XS= XS+ XD:GOTO 5270
5150 IF C> = 65AND C< = 90THEN C= C- 64:GOTO 5230
5160 IF C> = 48AND C< = 57THEN C= C- 48+ 27:GOTO 5230
5170 IF C> = 33AND C< = 42THEN C= C- 33+ 37:GOTO 5230
5180 IF C= 58OR C= 59THEN C= C- 10:GOTO 5230
5190 IF C= 46THEN C= 47:GOTO 5230
5200 IF SZ< 5AND C> = 16AND C< = 23THEN PLOT 29,C,30
5210 IF C> = 16AND C< = 23THEN BC= C- 16:FC= BC* 8
5220 GOTO 5270
5230 IF XS+ XD> 64THEN XS= XO:YS= YS+ YD
5240 X1= XS:Y1= YS:PLOT 3,X1,Y1
5250 IF SZ= 5THEN GOSUB 5280:GOTO 5270
5260 IF SZ= 3OR SZ= 4THEN PRINT A$(C):XS= XS+ XD
5270 NEXT I:RETURN
5280 FOR JJ= 1TO 7:FOR KK= 1TO 5:PLOT 6
5290 ON ASC (MID$ (B$(C),(JJ- 1)* 5+ KK,1))GOSUB 5310,5320,5330,5340,5350,5360
5300 NEXT KK:PRINT "
";:NEXT JJ:XS= XS+ XD:RETURN
5310 PLOT BC,32:RETURN
5320 PLOT FC,32:RETURN
5330 PLOT BC,124:RETURN
5340 PLOT BC,126:RETURN
5350 PLOT FC,124:RETURN
5360 PLOT FC,126:RETURN
5370 FOR II= 1TO 500:NEXT II:RETURN