0 REM BASIC SYSTEM 1 REM UTILITY PROGRAMME 2 REM BY ANDREW YORK AGE:14 3 REM FOR MODEL B ONLY 5 :*KEY10 |L O.|M |L RU.|M 6 MODE7:VDU7 7 REM"ƒ***‚PROGRAMME STARTS HEREƒ*** 9 ONERROR IF ERR=17 THEN SOUND40,19,9,3: GOTO11 ELSE GOTO 1610 11 VDU26:VDU15:CLS:VDU23,1,0;0;0;0;:*FX200,0 20 PRINTTAB(10,1);CHR$(141);CHR$(131);"BASIC SYSTEM":PRINTTAB(10,2);CHR$(141);CHR$(131);"BASIC SYSTEM":PRINTTAB(7,3);CHR$(134);" By Andrew York 1995" : PRINTTAB(2,6);CHR$(134);"1) Lock/Unlock a file or files" 60 PRINTTAB(2,7);CHR$(134);"2) Delete/Rename a file":PRINTTAB(2,8);CHR$(134);"3) Dump a file" :PRINTTAB(2,9);CHR$(134);"4) List all files on a drive":PRINTTAB(2,10);CHR$(134);"5) Build a !Boot file in option 4,3" 100 PRINTTAB(2,11);CHR$(134);"6) Read a !BOOT file or make a title":PRINTTAB(2,12);CHR$(134);"7) Verify Disk":PRINTTAB(2,13);CHR$(134);"8) Compact Disk":PRINTTAB(2,14);CHR$(134);"9) Format Disk" :PRINTTAB(2,16);CHR$(134);"ESC to return here" : PRINTTAB(1,18);" Please enter choice" 220 choice$=GET$ : IF choice$="1" THEN PROCflash(1,6):PROCdrive:GOTO 511 230 IF choice$="2" THEN PROCflash(1,7):PROCsure:PROCdrive:GOTO 682 231 IF choice$="3" THEN PROCflash(1,8):PROCdrive:GOTO 880 232 IF choice$="4" THEN PROCflash(1,9):PROCdrive:GOTO 930 233 IF choice$="5" THEN PROCflash(1,10):PROCsure:PROCdrive:GOTO 1080 235 IF choice$="6" THEN PROCflash(1,11):PROCdrive:GOTO 1700 236 IF choice$="7" THEN PROCflash(1,12):PROCsure:PROCdrive:GOTO 1270 237 IF choice$="8" THEN PROCflash(1,13):PROCsure:PROCdrive:GOTO 1370 238 IF choice$="9" THEN PROCflash(1,14):PROCsure:PROCdrive:GOTO 1460 239 IF choice$="*" THEN GOTO 1570 299 GOTO 220 300 DEFPROCflash(X,Y):PRINTTAB(X,Y);CHR$(136);CHR$(135): ENDPROC 330 DEFPROCdrive: INPUTTAB(1,18);"Enter your choice of drive: "drive$ : OSCLI"DR."+drive$ : ENDPROC 361 END 362 DEFPROCsure 364 PRINTTAB(1,18);" ":PRINTTAB(1,18);" Are you sure ?":sur$=GET$:IF sur$="Y" OR sur$="y" THEN ENDPROC 365 IF sur$="N" OR sur$="n" THEN GOTO7 366 GOTO364: ENDPROC 511 PRINTTAB(1,18);" ":PRINTTAB(1,18);"Do you wish to lock or unlock?" 540 B$=GET$:IF B$="L" OR B$="l" THEN C$="lock":POOH$="L" : GOTO 580 560 IF B$="u" OR B$="U" THEN C$="unlock":POOH$=" " : GOTO 580 570 GOTO 540:END 580 PRINTTAB(1,18);"Do you wish to ";C$;" all files on ":PRINTTAB(1,19);"current drive?" : 590 D$=GET$: IF D$="Y" OR D$="y" THEN GOTO 630 601 IF D$="N" OR D$="n" THEN GOTO 651 611 GOTO 590:END 630 OSCLI"ACCESS :"+drive$+".*.* "+POOH$ 640 GOTO7:END 651 PRINTTAB(1,18);" " : PRINTTAB(1,19);" " 660 INPUTTAB(1,18);" Please enter file: "file$ : IF file$="" THEN GOTO 660 667 OSCLI"ACCESS :"+drive$+"."+file$+" "+POOH$:GOTO7:END 682 PRINTTAB(1,18);"Do you wish to delete or rename a file?":rd$=GET$:IF rd$="D" OR rd$="d" THEN GOTO 686 684 IF rd$="R" OR rd$="r" THEN GOTO 1040 685 GOTO682 686 PRINTTAB(1,18);"Do you wish to delete more than one file?" 700 e$=GET$:IF e$="Y" OR e$="y" THEN GOTO 800 720 IF e$="n" OR e$="N" THEN 750 730 GOTO 700:END 750 PRINTTAB(1,18);" " 760 INPUTTAB(1,18);" Please enter file: "wee$ :IF wee$="" THEN GOTO 760 780 OSCLI"DELETE :"+drive$+"."+wee$ : GOTO7:END 800 CLS:VDU132,157,135:PRINT"":VDU132,157,135:PRINT"ƒTake note only files that are":VDU132,157,135:PRINT"ƒ unlocked are listed":VDU132,157,135:PRINT"":VDU132,157,135:PRINT"†Press 'Y' to delete a file" 827 VDU132,157,135:PRINT"†Press 'N' not to delete a file":PRINT:VDU28,0,24,39,6:OSCLI"WIPE :"+drive$+".*.*" 830 VDU15:PRINT:PRINT" †Press " 850 VE$=GET$:IF VE$=" " THEN GOTO7 ELSE GOTO 850 870 END 880 INPUTTAB(1,18);" " 891 INPUTTAB(1,18);" Please enter file: "pee$ :IF pee$="" THEN GOTO 891 901 CLS :VDU132,157,135:PRINT"" :VDU132,157,135:PRINT"ƒDumping file '";pee$;"' on drive '";drive$;"'":VDU132,157,135:PRINT"":VDU132,157,135:PRINT"„ ƒ SCROLLS SCREEN ":VDU132,157,135:PRINT" ":VDU28,0,24,39,6:PRINT:VDU14 : PRINT:OSCLI"DUMP :"+drive$+"."+pee$: GOTO 830: END 930 CLS:VDU132,157,135:PRINT"":VDU132,157,135:PRINT"ƒListing all files on drive '";drive$;"'":VDU132,157,135:PRINT"":VDU132,157,135:PRINT"„ ƒ SCROLLS SCREEN ":VDU132,157,135:PRINT" " :VDU132,157,135:PRINT" " :VDU28,0,24,39,6:PRINT:VDU14:PRINT:OSCLI"INFO :"+drive$+".*.*" 1020 GOTO 830:END 1040 REM 1050 PRINTTAB(1,18);" ":PRINTTAB(1,18);" Enter the file you want":INPUTTAB(1,19);" to rename: "ff$ : IF ff$="" THEN GOTO 1050 1060 PRINTTAB(1,21);" Enter the new name for":INPUTTAB(1,22);" the file: "gg$ : IF gg$="" THEN GOTO 1060 1062 PRINTCHR$(129); :OSCLI"RENAME "+ff$+" "+gg$ : GOTO7:END 1080 CLS:VDU132,157,135:PRINT"":VDU132,157,135:PRINT"ƒBuilding a !BOOT file in option 4,3":VDU132,157,135:PRINT"ƒon drive '";drive$;"'":VDU132,157,135:PRINT"":VDU132,157,135:PRINT"†PRESS ESCAPE TO FINISH":PRINT:VDU28,0,24,39,6:OSCLI"OPT4,3":OSCLI"BUILD :"+drive$+".!BOOT" : END 1200 1210 CLS:VDU132,157,135:PRINT"":VDU132,157,135:PRINT"ƒListing a !BOOT file on drive '";drive$;"'":VDU132,157,135:PRINT"":VDU132,157,135:PRINT"†PRESS ESCAPE TO LEAVE.SHIFT SCROLLS":VDU132,157,135:PRINT"":PRINT:VDU28,0,24,39,6: OSCLI"TYPE !BOOT": GOTO 830:END 1270 CLS: VDU132,157,135:PRINT"":VDU132,157,135:PRINT"ƒVerifying..." :VDU132,157,135:PRINT"" :VDU132,157,135:PRINT"†PRESS ESCAPE TO LEAVE.":VDU132,157,135:PRINT"":PRINT:VDU28,0,24,39,6:PRINT CHR$(129); :OSCLI"VERIFY "+drive$:GOTO 830:END 1370 CLS:VDU132,157,135:PRINT"" :VDU132,157,135:PRINT"ƒCompacting please wait...":VDU132,157,135:PRINT"" :PRINT:VDU28,0,24,39,6:PRINT CHR$(129); : OSCLI"COMPACT "+drive$ :GOTO 830 :END 1440 END 1450 1460 *ENABLE 1470 CLS:VDU132,157,135:PRINT"" :VDU132,157,135:PRINT"ƒFormatting a drive..":VDU132,157,135:PRINT"" :PRINT:VDU28,0,24,39,6:PRINT CHR$(129); :OSCLI"ENABLE":OSCLI"FORM80 "+drive$:GOTO 830:END 1560 1570 INPUTTAB(2,20);"*"cammand$ 1571 IF cammand$="" THEN GOTO 7 1573 REM *FX18 1574 REM 1580 OSCLIcammand$: IF cammand$="ENABLE" THEN PRINTTAB(2,20);" ":GOTO 1570 1583 *FX200,0 1590 GOTO 830 : END 1610 REM ERROR 1620 ONERROROFF 1621 VDU7: *FX200,1 1640 PRINTTAB(1,19);" ":PRINTTAB(1,20);" ":PRINTTAB(1,19); : REPORT 1661 PRINTTAB(1,21);" ":PRINTTAB(0,21);"Press " 1670 K$=GET$: IF K$=" " THEN GOTO 7 ELSE GOTO 1670 1690 END 1700 PRINTTAB(1,18);" ":PRINTTAB(1,18);"Press 'R' to read a !BOOT file":PRINTTAB(1,19);"or press 'T' to create a title" 1730 b$=GET$:IF b$="R" OR b$="r" THEN GOTO 1210 1750 IF b$="T" OR b$="t" THEN GOTO 1800 1760 GOTO 1730:END 1800 PRINTTAB(1,18);" ":PRINTTAB(1,19);" " :PRINTTAB(1,18);"Enter title for drive '";drive$;"'" 1830 INPUTTAB(1,19);""title$: IF title$="" THEN GOTO 1830 ELSE OSCLI"TITLE "+title$ 1850 GOTO7:END