home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Ahoy 1986 May
/
Ahoy_Magazine_86-05_1986_Double_L.d64
/
bigprint
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
10KB
|
272 lines
10 ifpeek(49152)=165andpeek(50056)=251then80
20 poke53280,0:poke53281,1:print"[147][144] 30 seconds for ml set up...."
30 print""tab(20);:poke204,0
40 reada:ifa<>9999then40
50 h=64:l=48:s=7:x=16:n=1
60 fori=49152to50057:reada$:a=asc(a$):b=asc(right$(a$,n))
70 p=x*((a-l)+s*(a>h))+b-l+s*(b>h):pokei,p:next:poke204,1
80 rt$=chr$(13):bp=49152:cl=59903:bc=59610
90 tp$=chr$(164):bt$=chr$(183):fori=1to5:tp$=tp$+tp$:bt$=bt$+bt$:next
100 tp$=tp$+rt$:s8$=" ":up$="[145][145][145][145][145][145][145][145][145][145][145][145][145]"
110 ac$="":dn$=""
120 sa$=s8$+" "
130 poke53280,0:poke53281,1:gosub1750
140 print"[144][142]"tab(9)" big print functions "
150 printtab(9)left$(bt$,21)
160 print""tab(4)tp$spc(4)" please choose any option below "
170 d$=" [d] [192][192] demonstration ":v$=" [v] [192][192] view characters "
180 q$=" [q] [192][192] quit ":s$=" [s] [192][192] save ml program "
190 t2$=s8$+right$(tp$,25)+s8$
200 print""t2$d$"[146]"spc(8)t2$q$
210 print""t2$s$"[146]"spc(8)t2$v$
220 printup$:fori=1to14:printtab(4)" "spc(30)" ":next
230 printspc(4)""s8$s8$s8$s8$
240 printup$"[145][145]"ac$"[169]"spc(28)"[223]":printdn$ac$"[223][146]"spc(20)s8$"[169]"
250 geta$:ifa$=""then250
260 ifa$="d"ora$=rt$thenup=13:m$=d$:goto310
270 ifa$="s"thenup=7:m$=s$:goto330
280 ifa$="q"thenup=10:m$=q$:goto510
290 ifa$<>"v"then250
300 up=4:m$=v$
310 printleft$(up$,up)spc(8)""right$(tp$,25)spc(8)m$"[144]"
320 fori=1toup-1:print:next:on(up-1)/3goto520,510,520,930
330 b=0:e=24:gosub1710
340 print"[147]"tab(11)" save ml program "rt$tab(11)left$(bt$,17)
350 printtab(10)left$(dn$,8);:input"file name bigprintml[157][157][157][157][157][157][157][157][157][157][157][157]";nm$
360 printtab(10)"";:input"device... 8[157][157][157]";dv$:dv=val(dv$):nm$=left$(nm$,16)
370 print""tab(20)" "left$(tp$,len(nm$))
380 printac$ac$"now saving "nm$
390 dv$="n":ifdv>7anddv<12thendv$="y":open1,dv,15,"i0":print#1,"s0:"+nm$:close1
400 sys57812 nm$,dv,1:poke193,0:poke194,192:poke174,138:poke175,195:sys62957
410 ifdv$="n"then130
420 print""tab(20)" "left$(tp$,len(nm$))
430 printtab(10)"verifying.. "nm$
440 poke147,1:sys57812 nm$,dv,1:sys62631:ifst=64then490
450 printac$"verify error - try again [y/n?]"
460 geta$:ifa$="y"then330
470 ifa$="n"then130
480 goto460
490 fori=0to15:poke646,i:sysbp,"-ok-",3,12:forj=1to50:next:next:poke646,0
500 goto130
510 b=0:e=24:gosub1710:sysbp,"bye!",8,12:print""dn$"run[145][145][145]":end
520 ln$="":fori=1to26:ln$=ln$+"[162]":next:cs$="character set"
530 h1$="[213][192][192][192][192][192][192][192][192][192][192][201]"+rt$:h2$="[202][192][192][192][192][192][192][192][192][192][192][203]":im$="[221] image [221]"+rt$
540 c1$(1)=" standard character "
550 c1$(2)=" inverted ":c2$(2)=".[201]."
560 c1$(3)=" upside down":c2$(3)=".[213]."
570 c1$(4)="upside down and inverted":c2$(4)=".[213][201]."
580 c1$(5)=" rotated left ":c2$(5)=".[204]."
590 c1$(6)=" rotated right ":c2$(6)=".[210]."
600 aw$=ac$+ac$+"[169][146][185][185]"+ac$+ac$+"[185][185][223]"+rt$+ac$+ac$+"[223][184][184]"+ac$+ac$+"[184][184][169]"
610 gosub1750:printtab(9)" view large characters "
620 printtab(9)left$(bt$,23)"[145]"
630 fori=1to21:printtab(19)" ":next:print" upper/graphics";
640 printspc(7)"upper/lower case":printspc(2)cs$spc(8)cs$""
650 print" "ln$" ";
660 printspc(6)" [146]"spc(26)" ":printspc(6)" [146]"ln$" "
670 print""tab(14)h1$spc(14)"[221] regular [221]"rt$tab(14)im$spc(14)h2$
680 print""spc(14)h1$spc(14)"[221] reverse [221]"rt$tab(14)""im$spc(14)""h2$
690 print" [172][198][198][198][198][198][198][198][198]"left$(ln$,24)"[187]":printtab(3)"[161]"spc(32)"[161]"
700 printtab(3)"[161]"spc(32)"[161]";
710 print"[145][145]":printtab(4)" ctrl [146] changes character color"
720 printtab(4)"spacebar[146] cycles display options"
730 printtab(3)"[161] return [146] exits to main menu [161]";
740 bx$="[146]"+left$(dn$,6)+ac$+left$(ac$,3):sm$=" press a key to begin"
750 printbx$""sm$"[144]"
760 print""aw$rt$""aw$:restore
770 readx:ifx=9999then800
780 ifx<1024thenp=x:goto770
790 pokex,p:poke(x-1024)+55296,.:goto770
800 c$="1":cm=1:cg$=c2$(cm):ft=0
810 getb$:ifb$=rt$then130
820 ifb$<>""andb$<>" "thenc$=b$:goto890
830 ifb$=" "thenft=ft+1:ifft=1thencm=0
840 ifb$=" "thencm=cm+1-(-6*(cm=6)):goto880
850 ifpeek(653)<>4then810
860 ifcc=0thencc=1
870 cc=(cc+1)and15:goto890
880 cg$=c2$(cm)
890 d1$=cg$+c$:d2$=""+cg$+c$:d3$=""+cg$+c$:d4$=""+cg$+c$:poke646,cc
900 printbx$"[144]"c1$(cm):poke646,cc
910 sysbp,d1$,9,4,,46;d2$,15,4,,46;d3$,9,32,,46;d4$,15,32,,46
920 goto810
930 ul$=ac$+"":fori=1to23:ul$=ul$+"[184]":next:ms$="[146]"+left$(ul$,8)
940 bg$="[157][157][157][157]":g1$="":fori=1to4:g1$=g1$+mid$("good",i,1)+bg$:next
950 bg$="[157][157][157][157]":g2$="":fori=1to4:g2$=g2$+mid$("good",i,1)+bg$:next
960 poke53280,2:print"[147]"spc(7)" big print demonstration "
970 printspc(7)left$(bt$,25)
980 printdn$left$(dn$,8)spc(4)"[172][198][198][198][198][198][198][198][198][198][198][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][162][187]"
990 printspc(4)"[161] spacebar [146] continues the demo [161]"
1000 printspc(4)"[161] return [146] exits to main menu [161]";
1010 j=0:fori=1to3:cb$(i)="":gosub1020:next:goto1050
1020 k=4:ifj=0thenk=5
1030 forj=jtoj+k:cb$(i)=cb$(i)+chr$(peek(bc+j))+" ":ifj=0thenj=1
1040 next:return
1050 printms$rt$ul$:cm$="a standard message":gosub1720:sysbp,"hello!",10,8
1060 gosub1730:ifa$=rt$then130
1070 cm$="a multi-color message":gosub1720:sysbp,".[193].hello!",10,8,,"."
1080 gosub1730:ifa$=rt$then130
1090 cm$="multi-color reversed":gosub1720
1100 sysbp,".[193].hello!",10,8,,".";".[193].[164][164][164][164][164][164]",6,8,,"."
1110 gosub1730:ifa$=rt$then130
1120 cm$="a flashing message":gosub1720:poke781,9:syscl
1130 x$(1)=sa$:x$(2)="flashing":x=1
1140 x=3-x:sysbp,x$(x),10,4:fori=1to150:next
1150 geta$:ifa$=""then1140
1160 ifa$=rt$then130
1170 cm$="alternating colors 1":gosub1720
1180 x$(1)="":x$(2)="":x=1:ca$="alt colors"
1190 x=3-x:sysbp,x$(x)+ca$,10,,,".":fori=1to150:next
1200 geta$:ifa$=""then1190
1210 ifa$=rt$then130
1220 cm$=left$(cm$,19)+"2":gosub1720
1230 x$(1)=".[193].":x$(2)=".[193]."
1240 x=3-x:sysbp,x$(x)+ca$,10,,,".":fori=1to150:next
1250 geta$:ifa$=""then1240
1260 ifa$=rt$then130
1270 b=10:e=14:gosub1710
1280 cm$="standard counter":gosub1720:cv=15
1290 gosub1760:sysbp,cv$,10,15:fori=1to175:next:geta$:ifa$=""then1290
1300 ifa$=rt$then130
1310 cm$="counter with overlay":gosub1720:cv=15
1320 gosub1760:sysbp,".[207]."+cv$,10,15,,".":fori=1to15:next:sysbp,cv$,10,15
1330 fori=1to175:next:geta$:ifa$=""then1320
1340 ifa$=rt$then130
1350 cm$="what's the answer?":gosub1720:fori=10to14:poke781,i:syscl:next
1360 x=int(rnd(.)*10):y=int(rnd(.)*(10-x)):ifx=.ory=.then1360
1370 sysbp,str$(x),6,14;str$(y),11,14;"+",9,12;"[183][183][183][183]",15,12
1380 geta$:ifa$=""then1380
1390 ifa$=" "then1470
1400 ifa$=rt$then130
1410 ifa$<"0"ora$>"9"then1380
1420 sysbp,a$,17,18:ifval(a$)=x+ythen1440
1430 sysbp,"no.[201]._",17,5,,46:cm$="sorry - try again?":gosub1720:goto1460
1440 sysbp,g1$,5;g1$,5,36
1450 cm$="correct - try again?":gosub1720
1460 geta$:ifa$=""then1460
1470 b=5:e=20:gosub1710
1480 ifa$="y"then1350
1490 ifa$=rt$then130
1500 cm$="color bars":gosub1720
1510 fori=1to3:sysbp,cb$(i),(i*5)+1,6,2,46:next
1520 gosub1730:ifa$=rt$then130
1530 b=5:e=21:gosub1710
1540 cm$="a moving message":gosub1720:mm$="moving"
1550 fori=6to17:sysbp,mm$,i,8:poke781,i-1:syscl:forj=1to100:next:next
1560 ifpeek(198)>0then1580
1570 fori=16to6step-1:sysbp,mm$,i,8:poke781,i+4:syscl:forj=1to100:next:next
1580 geta$:ifa$=""then1550
1590 ifa$=rt$then130
1600 b=5:e=20:gosub1710
1610 cm$="a jumping message":gosub1720
1620 j$(1)="ju[145]mp[145]in[145]g":j$(2)="j[145]um[145]pi[145]ng":wh=1
1630 wh=3-wh:fori=10to14step4:poke781,i:syscl:next:sysbp,j$(wh),10,3,1
1640 fori=1to100:next
1650 geta$:ifa$=""then1630
1660 ifa$=rt$then130
1670 b=10:e=14:gosub1710:goto1050
1680 k=4:ifj=0thenk=5
1690 forj=jtoj+k:cb$(i)=cb$(i)+chr$(peek(bc+j))+" ":ifj=0thenj=1
1700 next:return
1710 fori=btoe:poke781,i:syscl:next:return
1720 ns=((23-len(cm$))/2):print""ms$left$(s8$,ns)cm$s8$:return
1730 geta$:ifa$=""then1730
1740 return
1750 fori=24to0step-1:poke781,i:syscl:next:print"[147]";:return
1760 ifcv=0theniv=1
1770 ifcv=15theniv=-1
1780 cv=cv+iv:cv$=right$(str$(cv),2):return
1790 data 105,1024,1264,223,1184,1205,1845,1984,233,1202,1223,1842,2023
1800 data 95,1063,1303,249,1403,1404,248,1523,1524,9999
1810 data a5,d1,48,a5,d2,48,20,fd,ae,20
1820 data 9e,ad,24,0d,30,05,a2,16,4c,37
1830 data a4,a0,00,b1,64,d0,06,20,f8,a8
1840 data 4c,cf,c0,85,d7,c8,b1,64,85,fb
1850 data c8,b1,64,85,fc,a5,64,a4,65,20
1860 data db,b6,20,05,c1,90,04,a5,d6,b0
1870 data 06,a9,16,20,d6,c0,8a,48,20,05
1880 data c1,90,15,a5,d3,aa,c9,28,90,05
1890 data e9,28,b8,50,f6,a9,25,85,ff,20
1900 data f6,c0,90,05,a9,25,20,d6,c0,86
1910 data ff,68,aa,20,f0,e9,18,a5,d1,65
1920 data ff,85,d1,90,02,e6,d2,20,24,ea
1930 data a9,21,20,d6,c0,86,ce,20,15,c1
1940 data 90,35,d0,0d,a9,00,85,9e,20,24
1950 data c1,20,73,00,4c,09,c0,20,fd,ae
1960 data 20,9e,ad,24,0d,30,08,20,a1,b7
1970 data 86,9e,4c,bb,c0,a0,00,b1,64,f0
1980 data 0e,c8,b1,64,85,fd,c8,b1,64,85
1990 data fe,a0,00,b1,fd,85,9e,a5,64,a4
2000 data 65,20,db,b6,20,15,c1,90,02,f0
2010 data c1,20,f8,a8,20,24,c1,68,85,d2
2020 data 68,85,d1,60,85,ff,20,15,c1,90
2030 data 0c,f0,0a,20,fd,ae,20,79,00,c9
2040 data 2c,d0,03,a2,00,60,20,9e,ad,24
2050 data 0d,30,0d,20,a1,b7,e4,ff,90,05
2060 data a2,0e,4c,37,a4,60,a2,16,4c,37
2070 data a4,a0,01,b1,7a,c9,ac,f0,02,18
2080 data 60,20,fd,ae,4c,73,00,20,79,00
2090 data f0,08,49,3a,f0,04,c9,01,38,60
2100 data 18,60,a9,00,85,bf,ae,86,02,86
2110 data 6e,86,6f,85,fd,ad,18,d0,29,02
2120 data 0a,0a,09,d0,85,fe,ad,0e,dc,29
2130 data fe,8d,0e,dc,a0,ff,84,69,c8,84
2140 data cf,84,be,a5,ce,20,17,c3,2c,11
2150 data d0,10,fb,a4,69,c8,84,69,b1,fb
2160 data c5,9e,d0,09,a5,bf,49,80,85,bf
2170 data 4c,e1,c1,b8,c9,12,f0,35,c9,92
2180 data f0,37,c9,0e,f0,39,c9,8e,f0,39
2190 data c9,91,f0,3b,c9,11,f0,3b,c9,1d
2200 data f0,3b,c9,9d,f0,3e,20,31,c3,10
2210 data 50,24,bf,10,56,c9,c1,f0,38,a2
2220 data 08,dd,6f,c3,f0,37,ca,10,f8,30
2230 data 46,a9,80,85,cf,50,36,a9,00,85
2240 data cf,50,30,a9,d8,50,02,a9,d0,85
2250 data fe,50,26,a9,28,50,0d,a9,28,50
2260 data 02,a9,01,20,fd,c2,50,17,a9,01
2270 data 20,17,c3,50,10,a9,01,85,70,d0
2280 data 0a,a5,bf,1d,78,c3,3d,81,c3,85
2290 data bf,c6,d7,d0,03,4c,f4,c2,4c,57
2300 data c1,a2,07,dd,4f,c3,b0,03,ca,d0
2310 data f8,5d,57,c3,05,cf,a2,00,86,6b
2320 data 0a,26,6b,0a,26,6b,0a,26,6b,65
2330 data fd,85,6a,a5,6b,65,fe,85,6b,a5
2340 data 01,29,fb,85,01,a0,07,b1,6a,99
2350 data 61,00,88,10,f8,24,bf,50,14,a2
2360 data 00,a0,03,b5,61,48,b9,65,00,95
2370 data 61,68,99,65,00,e8,88,10,f0,a9
2380 data 20,24,bf,f0,0f,a2,07,a0,08,16
2390 data 61,6a,88,d0,fa,95,61,ca,10,f3
2400 data a9,10,24,bf,f0,03,b8,50,07,4a
2410 data 24,bf,f0,1f,69,7f,a0,07,a2,07
2420 data 70,05,56,61,6a,50,03,16,61,2a
2430 data ca,10,f3,48,88,10,ed,a2,07,68
2440 data 95,61,ca,10,fa,a5,01,09,04,85
2450 data 01,a9,00,85,6c,18,a5,be,65,ce
2460 data a8,a9,04,85,6d,a6,6c,a9,00,36
2470 data 61,2a,36,61,2a,36,62,2a,36,62
2480 data 2a,85,ff,a5,bf,29,04,f0,13,a6
2490 data ff,f0,1b,b1,d1,a2,0f,dd,5f,c3
2500 data f0,05,ca,10,f8,30,0d,8a,05,ff
2510 data aa,bd,5f,c3,91,d1,a5,6e,91,f3
2520 data c8,c6,6d,f0,02,d0,c2,a6,6c,e0
2530 data 06,f0,0c,e8,e8,86,6c,98,18,69
2540 data 24,a8,4c,8b,c2,c6,d7,f0,11,98
2550 data 38,e9,78,85,be,a5,6e,a6,6f,85
2560 data 6f,86,6e,4c,57,c1,ad,0e,dc,09
2570 data 01,8d,0e,dc,60,85,ff,18,a5,d1
2580 data 65,ff,85,d1,90,03,e6,d2,18,a5
2590 data f3,65,ff,85,f3,90,02,e6,f4,b8
2600 data 60,85,ff,38,a5,d1,e5,ff,85,d1
2610 data b0,03,c6,d2,38,a5,f3,e5,ff,85
2620 data f3,b0,02,c6,f4,b8,60,a2,0f,dd
2630 data da,e8,d0,13,8a,a6,70,f0,09,95
2640 data 6d,8a,0a,29,03,85,70,60,85,6e
2650 data 85,6f,60,ca,10,e5,60,00,20,40
2660 data 60,80,a0,c0,ff,80,00,40,20,40
2670 data c0,80,a1,20,6c,7b,62,7c,e1,ff
2680 data fe,7e,7f,61,fc,e2,fb,ec,a0,d5
2690 data 55,c9,49,cc,d2,cf,4f,c3,40,00
2700 data 20,00,10,08,04,00,00,e7,a7,e7
2710 data c7,97,8f,ff,fb,00