10 REM HYPERLINK V2.0 20 REM BY MYKE CARTER 30 REM DECEMBER 7, 1997 40 REM FOR USE WITH RAMLINK & JIFFYDOS 50 REM SUPPORTS C128 40/80-COLUMNS AND C64 MODE 60 REM OPTIMIZED FOR SUPERCPU 64 100 : 110 : REM INITIALIZATION 120 : 130 @#16:M1=64:M2=0:CP=214:SW=37:IFPEEK(65533)=252THEN160 140 CP=235:M2=48:IF(PEEK(215)AND128)THENM1=80:SW=77:(null)%:(null)M1=40:(null)& 150 GOTO200 160 SCPU=ABS((PEEK(53433)AND128)=128) 170 IFSCPU=1THEN200 180 POKE53374,0:POKE53366,0 190 POKE53375,0:POKE53371,0 200 POKE53280,0:POKE53281,0 210 DIMX$(21,5):DIMX(21,3) 220 B1$="[154][194]":B$="[195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195]" 230 NDX=1:LX=0 240 : 250 : REM DISPLAY 260 : 270 PRINT"[147]"CHR$(142); 280 FORX=1TO21 290 FORY=1TO5:READX$(X,Y):NEXTY 300 FORY=1TO3:READX(X,Y):NEXTY 310 IFX$(X,1)="0"THENQT=X-1:X=21:GOTO340 320 IFX(X,3)<>M1ANDX(X,3)<>M2ANDX(X,3)<>0THEN290 330 IFLEN(X$(X,1))>LXTHENLX=LEN(X$(X,1)) 340 NEXTX 350 BL=INT((SW-LX)/2):BR=BL+LX+3 360 B2$=LEFT$(B$,(BR-BL-1)) 370 VP=INT((24-(QT+4))/2)-1 380 POKECP,VP:PRINT:PRINTTAB(BL);"[154][213]";B2$;"[201]":GOSUB910 390 FORX=1TOQT 400 PRINTTAB(BL);B1$"[152] "X$(X,1); 410 PRINTTAB(BR);B1$ 420 NEXTX 430 GOSUB910 440 PRINTTAB(BL);"[202]";B2$"[203]"; 450 GOSUB920 460 PRINTTAB(BL);" "X$(NDX,1) 470 : 480 : REM INPUT AND RESPONSE 490 : 500 GETA$ 510 A=-1*(A$=CHR$(13)) 520 A=A-2*(A$="8"ORA$="9") 530 A=A-3*(A$=""ANDNDX1) 550 A=A-5*(A$="_") 560 A=A-6*(A$="^"ANDM1<>64) 570 A=A-7*(A$=" "ANDM1<>64) 580 ONAGOTO750,590,650,660,610,620,640:GOTO500 590 OPEN15,VAL(A$),15:CLOSE15:IFST=-128THEN500 600 @#VAL(A$):PRINT"[147]":@"$",VAL(A$):END 610 PRINT"[147]":@"$=P":PRINT:END 620 (null):IFM1=40THEN(null)5:RUN 630 (null)0:RUN 640 (null):(null)64 650 Z=1:GOTO680 660 Z=-1 670 : 680 GOSUB920 690 PRINTTAB(BL);"[152] "X$(NDX,1) 700 NDX=NDX+Z 710 GOSUB920 720 PRINTTAB(BL);" "X$(NDX,1) 730 GOTO500 740 : 750 IFSCPUORX(NDX,1)THENPOKE53370,0 760 : 770 ONX(NDX,2)GOSUB930,940 780 : 790 IFSCPUTHEN810 800 POKE53374,0:POKE53367,0:POKE53375,0 810 IFX$(NDX,2)="\"THEN850 820 @"CP"+X$(NDX,3) 830 @"CD//"+X$(NDX,4) 840 ^X$(NDX,5) 850 @"CP"+X$(NDX,3) 860 @"CD//"+X$(NDX,4) 870 \X$(NDX,5) 880 : 890 : REM SUBROUTINES 900 : 910 PRINTTAB(BL);B1$;TAB(BR);B1$:RETURN 920 POKECP,VP+NDX+1:PRINT:RETURN 930 @"S-8",16:@#8:FORI=1TO500:NEXT:RETURN 940 PRINT"[147]"CHR$(14):POKE53280,6:POKE53281,6:RETURN 1000 : 1010 : REM DATA (FILES INFO) 1020 : 1030 REM "MENUNAME","PRGTYPE","PART#","SUBDIR","FILENAME",SCPU,GOSUB,MODE 2000 DATA "0","0","0","0","0",0,0,0: REM END OF DATA