home *** CD-ROM | disk | FTP | other *** search
- 10 poke53280,.:poke53281,.:print"[147]":sys65511:poke650,128
- 20 open2,8,15:print"[147]":goto430
- 30 rem
- 40 rem ----- directory -----
- 50 rem
- 60 print"[147]":open1,8,0,"$0"
- 70 print"[208]ress [158][211][208][193][195][197] [194][193][210][146] to abort listing."
- 80 print""
- 90 pp=1
- 100 get#1,a$,b$
- 110 get#1,a$,b$
- 120 get#1,a$,b$
- 130 c=0
- 140 ifa$<>""then c=asc(a$)
- 150 ifb$<>""then c=c+asc(b$)*256
- 160 ifc<10thenprint"0";
- 170 printmid$(str$(c),2);tab(3);
- 180 get#1,b$:ifst<>0then280
- 190 ifb$<>chr$(34)then180
- 200 get#1,b$:ifb$<>chr$(34)thenprintb$;:goto200
- 210 get#1,b$:ifb$=chr$(32)then210
- 220 printtab(18):c$=""
- 230 c$=c$+b$:get#1,b$:ifb$<>""then230
- 240 print:print"[145]"left$(c$,3)
- 250 ifpp=1thenprint:pp=0
- 260 gett$:ift$<>""thengoto290
- 270 ifst=0then110
- 280 print" blocks free"
- 290 close1:print"[208]ress [158][210][197][212][213][210][206][146]":pp=0
- 300 getr$:ifr$<>chr$(13)then300
- 310 goto650
- 320 rem
- 330 rem ----- drive status -----
- 340 rem
- 350 print""
- 360 get#2,a$:printtab(5);a$;:ifa$<>chr$(13)goto360
- 370 print"[146]"
- 380 fordl=1to500:next
- 390 goto650
- 400 rem
- 410 rem ----- title screen -----
- 420 rem
- 430 poke53280,.:poke53281,.
- 440 m$="[158] [204][207][193][196][211][212][193][210] [208]resents: ":pl$="":gosub560
- 450 m$=" [202]ason [205]assey ":pl$="":gosub560
- 460 m$="[154] [195]harles [194]arney ":pl$=pl$+"":gosub560
- 470 forx=1to500:next
- 480 m$="[151] [213][212][201][204][201][218][197][210]! ":pl$=pl$+"":gosub560
- 490 m$="[151] ([195]) 1988 by [193]uthors ":pl$=pl$+"":gosub560
- 500 m$=" [208]ress any key to continue ":pl$=pl$+"":gosub560
- 510 geta$:ifa$=""then510
- 520 print"[147]":goto650
- 530 rem
- 540 rem ----- screen effect -----
- 550 rem
- 560 l=len(m$):mi=38-l/2:fori=1tolen(m$)-19
- 570 printpl$spc(mi)left$(m$,i)right$(m$,l-(l-i)):mi=mi-1:next:return
- 580 ld$="[158][204][207][193][196][211][212][193][210] [208]resents:"
- 590 forx=1to200:next
- 600 forx=1tolen(ld$):print""left$(ld$,x):fory=1to100:nexty:nextx:goto450
- 610 goto650
- 620 rem
- 630 rem ----- menu screen -----
- 640 rem
- 650 close15:close1:print"[147]"chr$(14)
- 660 print"[145][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]"
- 670 print" [159] [178] [178] [146]"
- 680 print" [221] [221] [212] [201] [204] [201] [218] [197] [210] [146]"
- 685 print" [173][192][192][192][189] [146]"
- 690 print"[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]"
- 700 printtab(10);"[1] [158][196]irectory"
- 710 printtab(10);"[2] [158][198]ormat a disk"
- 720 printtab(10);"[3] [158][195]lear a disk"
- 730 printtab(10);"[4] [158][201]nitialize drive"
- 740 printtab(10);"[5] [158][214]alidate a disk"
- 750 printtab(10);"[6] [158][211]cratch a file"
- 760 printtab(10);"[7] [158][210]ename a file"
- 770 printtab(10);"[8] [158][195]hange disk name"
- 780 printtab(10);"[9] [158][196]isk status"
- 790 printtab(10);"[[193]] [158][195]hange border color"
- 800 printtab(10);"[[194]] [158][195]hange screen color"
- 810 printtab(10);"[[195]] [158][207]riginal border color"
- 820 printtab(10);"[[196]] [158][207]riginal screen color"
- 830 printtab(10);"[[197]] [158][196]isplay title screen"
- 840 printtab(10);"[[209]] [158][209]uit program"
- 850 getc$:ifc$=""then850
- 860 ifc$="1"then60
- 870 ifc$="2"then1050
- 880 ifc$="3"then1620
- 890 ifc$="4"then1200
- 900 ifc$="5"then1260
- 910 ifc$="6"then1480
- 920 ifc$="7"then1350
- 930 ifc$="8"then1770
- 940 ifc$="9"then350
- 950 ifc$="a"thenq=q+1:poke53280,q:ifq=255thenq=0
- 960 ifc$="q"then2290
- 970 ifc$="b"theny=y+1:poke53281,y:ify=255theny=0
- 980 ifc$="c"thenpoke53280,.
- 990 ifc$="d"thenpoke53281,.
- 1000 ifc$="e"thenprint"[147]":goto430
- 1010 goto850
- 1020 rem
- 1030 rem ----- format a disk -----
- 1040 rem
- 1050 print"[147]"
- 1060 printtab(5);"[208]lease [201]nsert [196]isk [212]o [198]ormat"
- 1070 printtab(5);"[163][163][163][163][163][163] [163][163][163][163][163][163] [163][163][163][163][160][163][163] [163][163][163][163][163][163]"
- 1080 print"[206]ame of disk: ";:gosub2470:n$=a$
- 1090 ifn$=""then650
- 1100 print"[197]nter id of disk: ";:gosub2470:v$=a$
- 1110 print"[193]re you sure: ";:gosub2470:ifa$="n"then650
- 1120 print"[196]isk being formatted...."
- 1130 print"[196]isk name: ";n$:print"[196]isk id: ";v$
- 1140 print"[198]ormat time: 1 minute and 20 seconds..."
- 1150 open15,8,15:print#15,"n0:";n$;",";v$;",8,1":close15
- 1160 gosub2420:n$="":goto650
- 1170 rem
- 1180 rem ----- initialize drive -----
- 1190 rem
- 1200 print"[147]"
- 1210 printtab(10):print"[201]nitializing [196]rive!"
- 1220 open15,8,15,"i":close15:gosub2430:goto650
- 1230 rem
- 1240 rem ----- validate a disk -----
- 1250 rem
- 1260 print"[147]":printtab(4);"[208]lease [201]nsert [196]isk [212]o [214]alidate"
- 1270 printtab(4);"[163][163][163][163][163][163][160][163][163][163][163][163][163] [163][163][163][163] [163][163] [163][163][163][163][163][163][163][163]"
- 1280 printtab(5);" [208]ress [158][210][197][212][213][210][206][146] when ready"
- 1290 getr$:ifr$<>chr$(13)then1290
- 1300 print" [214]alidating disk."
- 1310 open15,8,15,"v":close15:gosub2430:goto650
- 1320 rem
- 1330 rem ----- rename a file -----
- 1340 rem
- 1350 print"[147]"
- 1360 printtab(11);"[210]ename [198]ile"
- 1370 printtab(11);"<<<<<->>>>>"
- 1380 printtab(3);"[207]ld name: ";:gosub2470:s$=a$
- 1390 ifs$=""then650
- 1400 printtab(3);"[206]ew name: ";:gosub2470:d$=a$
- 1410 printtab(3);"[193]re you sure:";:gosub2470:ifa$="n"then650
- 1420 printtab(3);"[210]enaming:";s$;" to ";d$
- 1430 open15,8,15:print#15,"r0:";d$;"=";s$:close15
- 1440 goto650
- 1450 rem
- 1460 rem ----- scratch a file -----
- 1470 rem
- 1480 print"[147]"
- 1490 printtab(11);"[211]cratch [198]ile"
- 1500 printtab(11);"[171][179][171][179][171][179][171][179][171][179][171][179]":print
- 1510 printtab(3);"[198]ile to scratch: ";:gosub2470:w$=a$
- 1520 ifw$=""then650
- 1530 printtab(3);"[193]re you sure? (y/n)"
- 1540 getq$:ifq$<>"y"andq$<>"n"then1540
- 1550 ifq$="n"then650
- 1560 print:printtab(3);"[211]cratching: ";w$
- 1570 open15,8,15:print#15,"s:";w$;",8,1":close15,8,15
- 1580 w$="":goto650
- 1590 rem
- 1600 rem ----- clear a disk -----
- 1610 rem
- 1620 print"[147]"
- 1630 printtab(15);"[195]lear [196]isk"
- 1640 printtab(15);"*--------*"
- 1650 printtab(5);"[208]lease [201]nsert [196]isk [212]o [194]e [195]leared!"
- 1660 print"[196]isk name: ";:gosub2470
- 1670 n$=a$:ifn$=""then650
- 1680 print"[193]re you sure? (y/n)"
- 1690 getq$:ifq$<>"y"andq$<>"n"then1690
- 1700 ifq$="n"then650
- 1710 print"[195]learing disk...."
- 1720 open15,8,15:print#15,"n0:";n$:close15
- 1730 n$="":goto650
- 1740 rem
- 1750 rem ----- change disk name -----
- 1760 rem
- 1770 k=0
- 1780 print"[147]":printtab(10);"[195]hange [196]isk [206]ame"
- 1790 printtab(10);"[163][183][163][183][163][183][163][183][163][183][163][183][163][183][163][183]"
- 1800 printtab(6);"[201]nsert [196]isk [212]o [194]e [195]hanged"
- 1810 printtab(7);"press [158][210][197][212][213][210][206][146] when ready"
- 1820 get a$:ifa$<>chr$(13) then 1820
- 1830 printtab(9);"[145][157][157] [200]old [207]n...... "
- 1840 open15,8,15,"i0"
- 1850 gosub2190
- 1860 open1,8,5,"#"
- 1870 print#15,"u1:5 0 18 0"
- 1880 print#15,"b-p:5 144"
- 1890 dn$=""
- 1900 fork=1to16
- 1910 get#1,a$:ifa$=""thena$=chr$(0)
- 1920 dl$=dl$+a$
- 1930 next
- 1940 print"[147]"tab(5);"[207]ld [206]ame:"dl$
- 1950 printtab(5);"[206]ew [206]ame:";:gosub2470:nn$=a$
- 1960 iflen(nn$)><17goto2030
- 1970 ifright$(nn$,1)=chr$(160)thennn$=left$(nn$,len(nn$)-1)
- 1980 printtab(10);"** name too long **"
- 1990 fordl=1to1000:next
- 2000 printtab(12);"press [158]return[146]"
- 2010 geta$:ifa$<>chr$(13)then2010
- 2020 goto650
- 2030 print"[195]hange on disk? (y/n):"
- 2040 getq$:ifq$<>"y"andq$<>"n"then2040
- 2050 ifq$="n"thenclose1:close15:dl$="":goto650
- 2060 iflen(nn$)<16thennn$=nn$+chr$(160):goto2060
- 2070 print#15,"b-p:5 144"
- 2080 print#1,nn$;
- 2090 print#15,"u2:5 0 18 0"
- 2100 gosub2190
- 2110 print#15,"i0"
- 2120 close1,15
- 2130 printtab(10);"[158][195]hange complete[146]":close15
- 2140 k=1:get a$:ifa$=""then2140
- 2150 ifk=1thendl$="":goto650
- 2160 rem
- 2170 rem ----- get error message -----
- 2180 rem
- 2190 input#15,en,em$,et,es
- 2200 ifen<20thenreturn
- 2210 printtab(5);"disk error"
- 2220 printen;em$;et;es
- 2230 close1:close15
- 2240 geta$:ifa$=""then2240
- 2250 goto650
- 2260 rem
- 2270 rem ----- quit to loadstar -----
- 2280 rem
- 2290 print"[147]":printtab(9);"[193]re you sure? (y/n)"
- 2300 getq$:ifq$<>"y"andq$<>"n"then2300
- 2310 ifq$="n"then650
- 2320 print"[147]":poke53280,0:poke53281,0
- 2330 printtab(12);:print"[158][212]hanks for using"
- 2340 print:printtab(16)"[213][212][201][204][201][218][197][210]"
- 2350 open15,8,15,"r0:hello connect=hello connect":input#15,er:close15
- 2360 ifer<>63thenend
- 2370 load"hello connect",8
- 2380 rem
- 2390 rem ----- delay loops -----
- 2400 rem
- 2410 fort=1to500:next:return
- 2420 fort=1to1500:next:return
- 2430 print"[147][196][207][206][197].....";:fort=1to1500:next:return
- 2440 rem
- 2450 rem ----- input simulation -----
- 2460 rem
- 2470 print"[164]";:a$="":fora=1to17
- 2480 getz$:ifz$=""then2480
- 2490 ifz$=chr$(13)then2560
- 2500 ifz$=chr$(20)anda>1thenprint"[157][157] [157][157][164]";:a=a-1:a$=left$(a$,a-1):goto2480
- 2510 ifa=17then2480
- 2520 ifz$>=" "anda$<="z"then2550
- 2530 ifz$>="[193]"anda$<="[218]"then2550
- 2540 goto2480
- 2550 print"[157]"z$;:poke212,.:print"[164]";:a$=a$+z$:next
- 2560 print"[157] ":return
-