8-Bit Software Online Conversion
:0.M.BSY - Listing
0REM"
Basic System Version 2
DFS Disc Utility by
Andrew York in 1996
1
2*FX255,207
3$&927="DFS Disc Utility By A.M.York
, 1996 ":*FX200,1
4CLS:PRINT" Downloading Basic System
Please wait";:A=0:REPEAT:A=A+1:UNTIL A=
100:*FX18
5VDU21:*K.0DELETE0,9|MRUN|M
6IFPAGE<&1501 GOTO 8
7*K.0 FOR A%=0 TO(TOP-PAGE)STEP4:A%!
&1500=A%!PAGE:NEXT|MPAGE=&1500|MOLD|MDEL
ETE0,9|MRUN|M
8*FX138,0,128
9ENDREMEND :REM Basic System Vers
ion 3
20REM DFS Utility
30REM By Andrew York
40REM In 1996 Protected Version
70IF $&927 ="" THEN PROCexit
80VDU22,7:*FX200,1
90ONERROR IF ERR=17 THEN SOUND1,20,90
,1:CLOSE#0:VDU23,1,0;0;0;0;0;:RUN ELSE V
DU7:PROCerror:END
100PROCmenu
110REPEAT:A$=GET$:IF A$="1" THEN PROCf
ormat
140IF A$="2" THEN PROCverify
150IF A$="3" THEN PROCtitle
160IF A$="4" THEN PROCdelete
170IF A$="5" THEN PROClock
180IF A$="6" THEN PROCbuild
190IF A$="7" OR A$="*" THEN PROCos
191IF A$="8" THEN PROCinfo
192UNTIL FALSE:END:REM PROTECTED STILL
210DEFPROCmenu:ONERROR IF ERR=17 THEN
SOUND1,20,90,1:CLOSE#0:VDU23,1,0;0;0;0;0
;:RUN ELSE VDU7:PROCerror:END
220CLS:VDU23,1,0;0;0;0;0;:*FX4,1
230*FX200,0
240PRINT"
stem ";:PRINT"
";:PRINT"
";
:PRINT"
";
290PRINT" 1. Format disc
";:PRINT"
";:PRINT" 2.
Verify disc ";:PRINT"
";
:PRINT" 3. Make a title
";
340PRINT"
";:PRINT" 4. Delete f
iles ";:PRINT"
";:PRINT"
5. Lock/Unlock files ";
:PRINT"
";
390PRINT" 6. Build !BOOT file
";:PRINT"
";:PRINT" 7.
OS Command ";:PRINT"
";
:PRINT" 8. Information on files"
;:PRINT
450PRINT"
";:PRINT'"
"; :PRINT" ";$&92
7"";:VDU28,0,21,30,20 :ENDPROC
510DEFPROCflash(Y):VDU26:SOUND1,20,90,
1:PRINTTAB(7,Y);CHR$(129);CHR$(136):ENDP
ROC
540DEFPROCformat:PROCflash(5) :VDU28,
0,21,30,20 :PROCdrive :PROCscreen("For
matting"):PRINT:*FX200,1
590command$="ENABLE":PROCcommand:comma
nd$="FORM80 "+drive$:PROCcommand:PROCspa
ce:RUN:ENDPROC
700DEFPROCdrive:VDU28,0,21,30,20 :REP
EAT:CLS:PRINT :INPUTTAB(8);" Drive (0-3)
";drive$:CLS:UNTIL drive$ ="0" OR drive
$ ="1" OR drive$ ="2" OR drive$ ="3":com
mand$="DR."+drive$:PROCcommand:ENDPROC
761REMDIBBL
770DEFPROCcommand:$&900=command$:X%=0:
Y%=9:CALL&FFF7:ENDPROC
780DEFPROCscreen(title$):VDU26:CLS::PR
INT" ";title$;" on drive ";drive$;"
":VDU28,0,24,39,1:PRINT:PRINT CHR$(129);
:ENDPROC
820DEFPROCspace:PRINT:PRINTTAB(5);" Pr
ess space to continue";:REPEAT:A$=GET$:U
NTIL A$=" ":ENDPROC
860DEFPROCverify:PROCflash(7):VDU28,0,
21,30,20:PROCdrive:PROCscreen("Verifying
"):PRINT:command$="VERIFY":PROCcommand:P
ROCspace:RUN:ENDPROC
910DEFPROCdelete:PROCflash(11):VDU28,0
,21,30,20:PROCdrive :VDU28,0,21,30,20:C
LS:VDU26:CLS::FORK%=0TO23:PRINT" ":NEX
T:VDU28,3,23,39,0:PRINTTAB(7,1);"Deletin
g on drive ";drive$:PRINT:PRINT:PRINT"Pr
ess 'Y' to delete a file":PRINT"Press 'N
' not to delete a file":PRINT:PRINT"Pres
s 'Escape to return to the menu"
1020VDU28,3,23,39,9:command$="ENABLE":P
ROCcommand:command$="WIPE *.*":PROCcomma
nd:PRINT:PRINT"Press space to continue":
REPEAT:A$=GET$:UNTIL A$=" ":RUN:ENDPROC
1070DEFPROClock :PROCflash(13):VDU28,0,
21,30,20:PROCdrive :VDU28,0,21,30,20:
PRINT:PRINTTAB(8)" Lock or Unlock ?";:RE
PEAT:locky$=GET$:UNTIL locky$="L" OR loc
ky$="l" OR locky$="U" OR locky$="u":CLS:
VDU26:PRINTTAB(7,13);" ":VDU28,0,21,30,
20
1210IF locky$="L" OR locky$="l" THEN CL
S:PRINT:PRINTTAB(8);" Locking ...";:comm
and$="ACCESS *.* L":PROCcommand:CLS:GOTO
110
1230IF locky$="U" OR locky$="u" THEN CL
S:PRINT:PRINTTAB(8);" Unlocking ...";:co
mmand$="ACCESS *.* ":PROCcommand:CLS:GOT
O110
1240ENDPROC
1250DEFPROCos:VDU26:CLS:VDU23,1,1;0;0;0
;:INPUT"*"command$ :PROCcommand:VDU23
,1,0;0;0;0;:PROCspace :RUN:ENDPROC
1320DEFPROCexit:*FX200,3
1340*FX18
1350VDU7:CALL !-4:ENDPROC
1380DEFPROCbuild:PROCflash(15) :PROCd
rive:PROCscreen("Building !BOOT"):PRINT:
*FX200,0
1420command$="OPT4,3":PROCcommand:comma
nd$="BUILD !Boot":VDU23,1,1;0;0;0;:PROCc
ommand:CLOSE#0:RUN:ENDPROC
1490DEFPROCinfo:PROCflash(19):PROCdrive
:PROCscreen("Info for files"):PRINT:VD
U14:PRINT"Shift scrolls":PRINT:command$=
"INFO *.*":PROCcommand :VDU15:PROCspace:
RUN:ENDPROC
1630DEFPROCerror:ONERROR OFF
1650CLOSE#0:*FX18
1670*FX200,1
1680VDU15:VDU3:VDU26:CLS:REPORT:PRINT"
Press space.";:REPEAT:A$=GET$:UNTIL A$="
":*FX200,0
1750RUN:ENDPROC
1770DEFPROCtitle:PROCflash(9):*FX200,0
1790PROCdrive:CLS:PRINT:VDU23,1,1;0;0;0
;:INPUT" Enter title:"title$:CLS :VDU23,
1,0;0;0;0;:command$="TITLE "+title$ :
PROCcommand:CLS:VDU26:PRINTTAB(7,9);" "
:VDU28,0,21,30,20:GOTO110 :ENDPROC