10 PRINT "[147]":POKE 53280,0:POKE 53281,1:DIM AE$(200):PRINT 20 PRINT TAB(10);"[169] " 25 PRINT TAB(10);" [146]  [146][169]" 30 PRINT TAB(10);" [146]  [223][146]OMMODORE [192] 64" 35 PRINT TAB(10);"[223] " 40 FOR A=1 TO 3:PRINT:NEXT A 45 PRINT TAB(7);"D I S K" 50 PRINT TAB(11);"O P E R A T I N G" 55 PRINT TAB(21);" S Y S T E M" 60 FOR A=1 TO 4:PRINT:NEXT A 70 PRINT TAB(8);"DESIGNED BY...BOB LLORET" 80 PRINT TAB(11)"[156]COPYRIGHT [144](C) [156]1984" 90 FOR D=1 TO 2500:NEXT D 100 PRINT "[147]":POKE 53280,0:POKE 53281,6 110 PRINT " [213][192][192][192][192] DISK OPERATING SYSTEM V3.0 [146][192][192][192][192][201] " 115 PRINT "[145] [221]";SPC(36)"[221]" 116 PRINT " [221]";SPC(36)"[221]" 120 PRINT " [221] [1][146] FORMAT DISK [4][146] ERASE PRG [221]" 125 PRINT " [221]";TAB(38)"[221]" 130 PRINT " [221] [2][146] RENAME FILE [5][146] WRITE DOS [221]" 135 PRINT " [221]";TAB(38)"[221]" 140 PRINT " [221] [3][146] VALIDATE DISK [6][146] DIRECTORY [221]" 141 PRINT " [221]";TAB(38)"[221]" 142 PRINT " [221] [7][146] HELP SCREEN [221]" 145 FOR A=1 TO 1:PRINT " [221]";TAB(38)"[221]":NEXT A 150 PRINT " [202][192][192][192][192][192][192][192][192]>YOUR CHOICE ?[1-7][146]<[192][192][192][192][192][192][192][192][203]":PRINT:PRINT 160 GET AN$:IF AN$="" THEN 160 170 AN=VAL(AN$) 180 IF AN<1 OR AN>7 THEN 160 190 ON AN GOTO 200,300,400,500,600,700,1200 198 REM **** FORMAT DISK **** 199 REM ======================= 200 PRINT TAB(8);"ENTER DISK NAME (16 CHR)":INPUT "";NA$ 210 PRINT TAB(10);"ENTER DISK ID (2 CHR)":INPUT "";ID$ 220 NA$="NEW0:"+NA$+","+ID$ 230 PRINT TAB(10);"[144] ARE YOU SURE (Y[206]N) ?" 240 GET AN$:IF AN$="" THEN 240 250 IF AN$="Y" THEN 280 260 IF AN$="N" THEN 100 270 IF AN$<>"Y" OR AN$<>"N" THEN 240 280 OPEN 15,8,15,NA$ 290 CLOSE 15 295 GOTO 100 298 REM **** RENAME UTILITY **** 299 REM ========================== 300 PRINT TAB(8);" ENTER NEW NAME (16 CHR)":INPUT "";NN$ 310 PRINT TAB(8);" ENTER OLD NAME (16 CHR)":INPUT "";OLN$ 320 CH$="R0:"+NN$+"="+OLN$ 330 OPEN 15,8,15,CH$:FOR D=1 TO 1500:NEXT D 340 PRINT TAB(17);" DONE ":FOR D=1 TO 1000:NEXT D 350 CLOSE 15:GOTO 100 398 REM **** VALIDATE DISK **** 399 REM ========================= 400 PRINT TAB(12);" VALIDATING DISK " 410 OPEN 15,8,15,"VALIDATE" 440 CLOSE 15:GOTO 100 498 REM **** SCRATCH PROGRAM **** 499 REM ========================= 500 PRINTTAB(3);" NAME OF PROGRAM TO ERASE (16 CHR)":INPUT "";PN$ 510 ER$="S0:"+PN$ 520 OPEN 15,8,15,ER$ 530 FOR D=1 TO 500:NEXT D:PRINT TAB(17);" DONE ":FOR D=1 TO 1500:NEXT D 540 CLOSE 15:GOTO 100 598 REM **** WRITE DOS **** 599 REM =================== 600 PRINT TAB(9);" WRITING D O S FILES " 610 SAVE "DOS",8 620 PRINT TAB(17);" DONE ":FOR D=1 TO 1500:NEXT D 630 CLOSE 15:GOTO 100 700 REM **** DISK DIRECTORY **** 705 REM ========================== 710 PRINT "[147]":POKE 53280,4:POKE 53281,1 720 AE$="":AN=0:A0=0:DE=0:DR$="0" 730 ER=0:F$="":FL=0:I=0:J=0:MM=0:MN=0 750 OPEN 15,8,15:PRINT#15,"I"+DR$ 760 INPUT#15,ER:IF ER=21 THEN890 770 OPEN 8,8,8,"$"+DR$+",SEQ" 780 FOR DE=1 TO 8:F$="":GET #8,C$ 790 IF C$=CHR$(199) THENCLOSE 8:CLOSE 15:GOTO900 800 IF C$="" THENJ=29:GOTO860 810 IF ASC(C$)<>130 THENJ=29:GOTO860 820 AN=AN+1:J=11:GET #8,C$:GET #8,C$ 830 FOR I=1 TO 16:GET #8,C$:F$=F$+C$:NEXT 840 IF LEFT$(F$,3)="DOS" THENAN=AN-1:GOTO860 850 AE$(AN)=DR$+":"+F$ 860 FOR I=1 TO J:GET #8,C$:NEXT 870 IF DE<>8 THENGET #8,C$:GET #8,C$ 880 NEXT:GOTO780 890 PRINT"NO DISKETTE FOUND IN DRIVE";DR$;"":FORD=1TO 2500:NEXT:GOTO 100 900 IF AN=0 THENPRINT "[144]NO PROGRAMS FOUND [146]":FORD=1TO2500:NEXT:GOTO 100 910 PRINT "[147]"TAB(7)"[156][213][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][201]" 920 MM=9:PRINT TAB(7)"[221] * D I R E C T O R Y * [221]" 930 PRINT TAB(7)"[156][202][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][203]":PRINT "" 940 FOR I=1 TO 9:IF AE$(MN*9+1)="" THENMM=I-1:I=9:GOTO960 950 PRINT TAB(11);"[156][";RIGHT$(STR$(I),1);"][146] ";MID$(AE$(MN*9+I),3,16) 960 NEXT:PRINT TAB(11)"[156]YOUR CHOICE [1-9]" 965 PRINT TAB(11)"PRESS F1 FOR DOS" 970 PRINT TAB(11)"OR RETURN FOR MORE" 980 GET C$:IF C$="" THEN980 985 IF C$="[133]" THEN 100 990 IF C$<>CHR$(13) THEN1020 1000 MN=MN+1:IF MN*9+1>AN THENMN=0 1010 GOTO910 1020 IF VAL(C$)<1 OR VAL(C$)>MM THEN980 1030 AE$=AE$(MN*9+VAL(C$)) 1040 PRINT:PRINT "[147]MENU ITEM CHOSEN: #";C$;" - ";MID$(AE$,3,16) 1050 FOR I=18 TO 1 STEP -1:FL=I 1060 IF ASC(MID$(AE$,I,1))<>160 THENI=1 1070 NEXT:PRINT "LOAD";CHR$(34);LEFT$(AE$,FL);CHR$(34);",8" 1080 PRINT "RUN":PRINT "[145][145][145][145][145][145][145][145][145]" 1090 POKE 631,13:POKE 632,13:POKE 198,2:END 1200 PRINT"[147]":POKE 53280,0:POKE 53281,0 1210 PRINT TAB(7)"[156] * H E L P S C R E E N *" 1220 PRINT"[1][146] PRESS #1[154] TO FORMAT A NEW DISK OR ANY DISK YOU WISH "; 1230 PRINT "TO TOTALY ERASE." 1240 PRINT "[2][146] PRESS #2[154] TO CHANGE THE NAME OF ANY PROGRAM ON A DISK."; 1250 PRINT " YOU SHOULD ALWAYS LIST THE DISK DIRECTORY FIRST TO MAKE SURE"; 1260 PRINT " YOU SPELL THE OLD NAME CORRECTLY TO INSURE NO DISK ERRORS." 1270 PRINT "[3][146] PRESS #3[154] AFTER YOU HAVE USED A DISK FOR A WHILE. THIS "; 1280 PRINT "WILL COMPACT YOUR PROGRAMS AND ELIMINATE UNUSED BLOCKS "; 1290 PRINT " ON A DISK." 1300 PRINT "[4][146] PRESS #4[154] WHEN YOU WISH TO ERASE ANY PROGRAM ON A DISK."; 1310 PRINT" ALWAYS LIST THE DISK DIRECTORY TO INSURE PROPER SPELL ING"; 1320 PRINT " OF THE PROGRAM." 1330 PRINT "[5][146] PRESS #5[154] TO MAKE A COPY OF D O S ON ALL YOUR DISKS."; 1340 PRINT " THIS WILL MAKE IT HANDY IF YOU EVER NEED IT." 1350 PRINT "[6][146] PRESS #6[154] TO LIST THE DIRECTORY AND RUN ANY PROGRAM"; 1355 PRINT " ON THE DISK." 1360 PRINT TAB(10)"[158]"; 1370 GET AN$:IF AN$="" THEN 1370 1380 IF AN$="[133]" THEN 100 1390 IF AN$<>"[133]" THEN 1370