10 GOSUB60100:CLR 200 CL$=CHR$(147):HO$=CHR$(19):POKE646,1 210 E$=CHR$(13) 220 POKE53280,6:POKE53281,6:GOSUB1070:POKE53265,11 230 DV=PEEK(693):OPEN15,DV,15:R$=CHR$(18):O$=CHR$(146) 235 FORT=1TO7:L$=L$+CHR$(163):NEXT 236 FORT=1TO40:UL$=UL$+CHR$(163):NEXT 240 REM SETUP MENU 250 : 260 PRINTCL$E$TAB(16)"AUTORUN" 280 PRINT TAB(16)L$:PRINT TAB(19)"BY" 290 PRINT TAB(13)"JONATHAN RODDA":D=4:GOSUB1630 300 PRINT TAB(9)"A - CREATE AUTORUN BOOT"E$ 310 PRINT TAB(9)"V - VIEW DIRECTORY"E$ 320 PRINT TAB(9)"D - SEND DISK COMMAND"E$ 330 PRINT TAB(9)"C - CHANGE DEVICE NUMBER"E$ 340 PRINT TAB(9)"Q - QUIT" 360 D=3:GOSUB1630:PRINTUL$ 370 PRINTTAB(8)"SELECT ONE OF THE ABOVE":POKE53265,27 380 FORT=0TO9:POKE631+T,0:NEXT 385 A=PEEK(203):IFA<>10ANDA<>31ANDA<>18ANDA<>20ANDA<>62THEN385 390 POKE198,. 400 IFA=10THEN700 402 IFA=31THEN500 404 IFA=18THEN540 406 IFA=20THEN460 410 REM RETURN TO BASIC 420 : 430 PRINT"[145] ARE YOU SURE YOU WANT TO QUIT? (Y/N)" 432 A=PEEK(203):IFA<>25ANDA<>39THEN432 434 IFA=39THENPRINT"[145] [145]":GOTO370 436 CLOSE15:OPEN15,8,15,"R0:HELLO CONNECT=HELLO CONNECT":INPUT#15,ER:CLOSE15 437 IFER<>63THENEND 438 LOAD"HELLO CONNECT",8 440 REM CHANGE DEVICE NUMBER 450 : 460 Z=2:GOSUB570:V=VAL(S$):IFV<8ORV>11THEN460 462 CLOSE15:OPEN15,V,15:CLOSE15:IFST=0THEN470 465 PRINT"DRIVE #"V"NOT CONNECTED." 466 FOREU=1TO2500:NEXT 468 GOTO 460 470 POKE693,V:RUN 200 480 REM READ DIRECTORY 490 : 500 PRINTCL$:OPEN1,DV,0,"$":SYS926 510 CLOSE1:GOSUB1460:RUN200 520 REM SEND DISK COMMAND 530 : 540 Z=255:GOSUB570:PRINT#15,S$:GOSUB1430:RUN 200 550 REM KEYBOARD INPUT ROUTINE 560 : 570 GOSUB1480:GOSUB1520:PRINTHO$:D=5 580 GOSUB1630:PRINTC$;:S$="":SC=1 590 GOSUB1380:IFA$=E$ANDS$<>""THENRETURN 600 IFA$=CHR$(34)THEN590 610 IFA$=CHR$(20)ANDLEN(S$)>0THENPRINTA$;:S$=LEFT$(S$,LEN(S$)-1):GOTO590 620 IFZ=5ORZ=2THENIFA$<"0"ORA$>"9"THEN590 630 IFZ=1ANDA$<>"B"ANDA$<>"M"THEN590 640 IFZ=1ANDLEN(S$)=1ANDA$<>E$THEN590 645 IF Z=1 THEN RETURN 650 IFA$<" "ORA$>CHR$(128)ANDA$ZORZ=17ANDLEN(S$)>=16THEN590 660 S$=S$+A$ 670 PRINTA$;:GOTO590 680 REM MAIN AUTORUN ROUTINE 690 : 700 Z=16:GOSUB570:M=751:GOSUB1590:POKE698,L:F$=S$ 710 Z=1:GOSUB570:SH=2:IFA$="B"THENSL=119:GOTO750 720 Z=5:GOSUB570:SA=VAL(S$):H=SA/256 730 HI=INT(H):LO=(H-HI)*256:SL=167 740 IFSA>65535THEN720 750 PRINT E$E$E$"BLANK SCREEN DURING LOAD (Y/N)? ";:SC=1 760 GOSUB1380:IFA$<>"Y"ANDA$<>"N"THEN760 770 PRINTA$:A1$=A$ 780 : 790 POKE710,11:IFA1$="N"THENPOKE710,27 800 Z=17:GOSUB570:GOSUB1480 810 PRINTHO$E$"INSERT A DISK WITH"E$ 820 PRINT"A COPY OF: "R$F$E$ 830 PRINT"AND PRESS 'RETURN'"E$:SC=0 840 GOSUB1380:IFA$<>E$THEN840 850 REM SAVE AUTORUN BOOT 860 : 870 PRINTE$"WRITING: "R$S$ 880 M=49151:GOSUB1590 890 IFSL=167THENPOKE723,LO:POKE724,HI 900 POKE780,1:POKE781,DV:POKE782,1:SYS65466 910 POKE780,L:POKE781,0:POKE782,192:SYS65469 920 POKE251,SL:POKE252,SH:POKE780,251 930 POKE781,4:POKE782,3 940 IFSL=119THENPOKE631,147:POKE632,82:POKE633,213:POKE634,13 950 POKE770,167:POKE771,2:POKE646,14:SYS65496 960 POKE770,131:POKE771,164:POKE646,1 970 POKE723,216:POKE724,2:GOSUB1430 980 IFU$<>"63"THEN RUN 200 990 PRINTE$R$S$O$" EXISTS"E$ 1000 PRINT"PRESS 'R' TO REPLACE: ";R$S$:SC=0 1010 GOSUB1380:IFA$="R"THEN1030 1020 GOTO800 1030 PRINTE$E$"REPLACING: "R$S$ 1040 PRINT#15,"S0:"+S$:GOTO880 1050 REM READ MACHINE LANGUAGE DATA 1060 : 1070 IFPEEK(679)=169ANDPEEK(926)=162THENRETURN 1080 PRINTCL$E$" PLEASE WAIT, READING DATA..." 1090 FORT=0TO87:READD:POKE926+T,D 1100 CK=CK+D:NEXT:IFCK<>12826THEN1620 1110 CK=0:FORT=0TO65:READD:POKE679+T,D 1120 CK=CK+D:NEXT:IFCK<>7617THEN1620 1130 RETURN 1140 DATA 162,001,032,198,255,032,207 1150 DATA 255,032,207,255,032,207,255 1160 DATA 165,144,208,066,032,207,255 1170 DATA 240,061,032,204,255,032,228 1180 DATA 255,201,032,208,005,032,228 1190 DATA 255,240,251,162,001,032,198 1200 DATA 255,032,207,255,141,000,206 1210 DATA 032,207,255,168,174,000,206 1220 DATA 152,032,205,189,169,032,032 1230 DATA 210,255,032,207,255,240,006 1240 DATA 032,210,255,076,223,003,169 1250 DATA 013,032,210,255,076,169,003 1260 DATA 032,204,255,096,169,131,141 1270 DATA 002,003,169,164,141,003,003 1280 DATA 169,001,168,162,008,032,186 1290 DATA 255,169,003,162,240,160,002 1300 DATA 032,189,255,032,066,166,169 1310 DATA 011,141,017,208,169,000,032 1320 DATA 213,255,032,129,255,032,216 1330 DATA 002,076,116,164,166,174,164 1340 DATA 175,134,045,134,047,132,046 1350 DATA 132,048,169,004,133,198,096 1360 REM GET KEYBOARD CHARACTER 1370 : 1380 IF(SC) THEN PRINT"[164]"; 1381 GETA$:IFA$=""THEN1381 1390 IFA$=CHR$(133)THENRUN200 1395 IF(SC) THEN PRINT"[157] [157]"; 1400 RETURN 1410 REM READ DISK ERROR 1420 : 1430 PRINT:INPUT#15,U$,V$,W$,X$ 1440 IF U$="63" OR U$="00" THEN RETURN 1450 PRINTE$R$U$","V$","W$","X$ 1460 PRINTE$"PRESS ANY KEY TO CONTINUE" 1470 GOSUB1380:RETURN 1480 PRINTCL$:D=20:GOSUB1630:PRINTUL$ 1490 PRINT TAB(11)"PRESS F1 FOR MENU":RETURN 1500 REM MESSAGE ROUTINE 1510 : 1520 IFZ<>1THEN1530 1525 C$="IS "+R$+F$+O$+" IN"+E$+E$+"(B)ASIC OR (M)ACHINE LANGUAGE? " 1530 IFZ=2THENC$="ENTER NEW DEVICE NUMBER (8-11): " 1540 IFZ=5THENC$="ENTER START ADDRESS"+E$+E$+"OF "+R$+F$+O$+": " 1550 IFZ=16THENC$="ENTER FILE NAME"+E$+E$+"OF PROGRAM TO AUTORUN: " 1560 IFZ=17THENC$="ENTER FILE NAME OF"+E$+E$+"THE AUTORUN BOOT: " 1570 IFZ=255THENC$="ENTER DISK COMMAND"+E$+E$+">" 1580 RETURN 1590 L=LEN(S$):FORT=1TOL 1600 POKEM+T,ASC(MID$(S$,T,1)) 1610 NEXT:RETURN 1620 PRINT"ERROR IN DATA":END 1630 FORT=1TOD:PRINT:NEXT:RETURN 60100 POKE53280,14:POKE53281,14 60110 PRINTCHR$(142)"[147][213][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][201]"; 60120 FORA=1TO23:PRINT"[221]"SPC(38)"[221]";:NEXT 60130 PRINT"[202][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][203][157][148][192]" 60135 FORA=217TO242:POKEA,PEEK(A)OR128:NEXT 60140 PRINT" LOADSTAR PRESENTS:" 60150 PRINT"  " 60160 PRINT"  AUTO RUN  " 60170 PRINT"   " 60180 PRINT"  BY JONATHAN RODDA  " 60190 PRINT"   " 60200 PRINT"  COPYRIGHT 1987  " 60210 PRINT"   " 60220 PRINT"  " 60230 PRINT" PRESS SPACE TO CONTINUE" 60240 IFPEEK(203)<>60THEN60240 60250 RETURN