10 PARAMETERS=828:PH=INT(PA/256):PL=PAR-256*PH 20 FT=120*256:FH=INT(FT/256):FL=FT-256*FH 900 REM PRINT MESSAGE 910 X1=2:X2=37:Y1=22:Y2=22:SC=160:BC=7:GOSUB2200:POKE199,1:POKE646,7 915 POKE211,20-(LEN(A$)/2):POKE214,22:SYS58732:PRINTA$:RETURN 919 REM PRINT MESSAGE AND WAIT FOR KEY IN K$ 920 GOSUB910:GOSUB3100:RETURN 2100 X1=0:X2=39:Y1=0:Y2=24:SC=255:BC=15:GOSUB2200 2110 A$="[210]EVIEW [195]HANGED [196]IRECTORY":GOSUB2000:MODE=2:GOSUB1030:RETURN 2199 REM BOX 2200 POKEPARMS,X1:POKEPARMS+1,X2:POKEPARMS+2,Y1:POKEPARMS+3,Y2:POKEPARMS+4,SC 2210 POKEPARMS+5,BC:POKE781,PL:POKE782,PH:SYSMB+105:RETURN 2299 REM MOVE CURSOR 2300 POKE211,X:POKE214,Y:SYS58732:RETURN 2499 REM GETWORD 2500 POKEPA,TX:POKEPA+1,CURS:POKEPA+2,LIMIT:POKEPA+3,LEN(W$) 2510 FORI=1TOLEN(W$) 2520 POKEPAR+3+I,ASC(MID$(W$,I,1)+CHR$(0)):NEXT:POKEPA+3+I,0 2530 POKE781,PL:POKE782,PH:SYSMB+150:W$="":GL=PEEK(780):IFGL=0THEN:RETURN 2540 N=PEEK(782)*256+PEEK(781):FORI=1TOGL:W$=W$+CHR$(PEEK(N-1+I)):NEXT 2550 RETURN 2599 REM FRAME 2600 POKEPARMS,X1:POKEPARMS+1,X2:POKEPARMS+2,Y1:POKEPARMS+3,Y2:POKEPARMS+4,FC 2610 POKE781,PL:POKE782,PH:SYSMB+108:RETURN 2699 REM LATTICE 2700 POKEPARMS,X1:POKEPARMS+1,X2:POKEPARMS+2,Y1:POKEPARMS+3,Y2:POKEPARMS+4,S1 2710 POKEPA+5,S2:POKEPA+6,C1:POKEPA+7,C2:POKE781,PL:POKE782,PH:SYSMB+102:RETURN 2799 REM SHADE 2800 POKEPARMS,X1:POKEPARMS+1,X2:POKEPARMS+2,Y1:POKEPARMS+3,Y2 2810 POKE781,PL:POKE782,PH:SYSMB+192:RETURN 2899 REM COPY TILE 2900 POKEPA,FL:POKEPA+1,FH:POKEPA+2,T:POKEPA+3,C 2910 POKE781,PL:POKE782,PH:SYSMB+111:RETURN 2999 REM CHAR SWAP 3000 POKEPARMS,C1:POKEPARMS+1,C2:POKEPARMS+2,C 3010 POKE781,PL:POKE782,PH:SYSMB+186:RETURN 3099 REM BRANCHER 3100 K$=K$+CHR$(0):FORI=1TOLEN(K$):POKEPA-1+I,ASC(MID$(K$,I,1)):NEXT 3105 POKE781,PL:POKE782,PH 3110 SYSMB+195:ITEM=PEEK(253) 3120 RETURN 3199 REM SCREEN TO MENU 3200 POKEPA,Y:POKEPA+1,X1:POKEPA+2,X2:POKEPA+3,MI:POKEPA+4,MC:POKEPA+5,MH 3205 IFRIGHT$(HOT$,1)<>CHR$(0)THENHO$=HO$+CHR$(0) 3210 POKEPA+6,LEN(HOT$) 3220 FORI=1TOLEN(HOT$):POKEPA+6+I,ASC(MID$(HOT$,I,1)):NEXT 3230 POKE781,PL:POKE782,PH:POKE34,PL:POKE35,PH:SYSMB+162:IT=PEEK(253):F%=IT 3240 RETURN 3299 REM GET DIRECTORY SET DIR$ AND LOC 3300 FORI=1TOLEN(DIR$):POKEPA-1+I,ASC(MID$(DIR$,I,1)):NEXT:I=I-1 3310 POKEPA+I,D:POKEPA+I+2,INT(LOC/256):POKEPA+I+1,LOC-(256*PEEK(PA+I+2)) 3320 POKE781,PL:POKE782,PH:POKE780,LEN(DI$):SYSMB+138:F%=PEEK(254)*256+PEEK(253) 3330 F%=F%+1:RETURN 3399 REM FILE REQUESTOR 3400 POKEPA,X:POKEPA+1,Y1:POKEPA+2,Y2:POKEPA+3,MR:POKEPA+4,MC:POKEPA+5,MH 3410 POKEPA+6,MS:POKEPA+7,MODE 3420 POKE781,PL:POKE782,PH:POKE780,LEN(DI$):SYSMB+144:IFMODETHENRETURN 3430 W$="":GL=PEEK(780):IFGL=0THEN:RETURN 3440 N=PEEK(782)*256+PEEK(781):FORI=1TOGL:W$=W$+CHR$(PEEK(N-1+I)):NEXT:RETURN 3499 REM INDEX ITEMS 3500 POKE782,ITEM/256:POKE781,ITEM-256*PEEK(782):SYSMB+132 3510 W$="":GL=PEEK(780):IFGL=0THEN3530 3520 N=PEEK(782)*256+PEEK(781):FORI=1TOGL:W$=W$+CHR$(PEEK(N-1+I)):NEXT 3530 F%=PEEK(254)*256+PEEK(253):RETURN 3699 REM SCROLL DOWN 3700 POKEPARMS,X1:POKEPARMS+1,X2:POKEPARMS+2,Y1:POKEPARMS+3,Y2 3710 POKE781,PL:POKE782,PH:SYSMB+117:RETURN 3799 REM SCROLL UP 3800 POKEPARMS,X1:POKEPARMS+1,X2:POKEPARMS+2,Y1:POKEPARMS+3,Y2 3810 POKE781,PL:POKE782,PH:SYSMB+120:RETURN 4999 REM INSTANT PAGE 5000 POKE53280,0:POKE53281,0:X1=0:X2=39:Y1=0:Y2=24:FC=14:GOSUB2600:REM FRAME 5010 X1=1:X2=38:Y1=1:Y2=23:S1=95:S2=105:C1=L1:C2=L2:GOSUB2700:REM LATTICE 5020 X1=3:X2=36:Y1=2:Y2=4:FC=7:GOSUB2600 5030 X1=4:X2=35:Y1=3:Y2=3:SC=160:BC=1:GOSUB2200 5040 POKE214,3:POKE211,20-(LEN(T$)/2):SYS58732:POKE199,1:POKE646,1:PRINTT$ 5050 A=0:FORI=1TONI:IFLEN(A$(I))>ATHENA=LEN(A$(I)):REM FIND LONGEST ITEM 5060 NEXT 5070 X1=20-(A/2)-3:X2=X1+A+3:Y1=15-(NI/2)-3:Y2=Y1+NI+3:GOSUB2800 5075 X1=X1+1:X2=X2+1:Y1=Y1-1:Y2=Y2-1:GOSUB2600 5080 X1=X1+1:X2=X2-1:Y1=Y1+1:Y2=Y2-1:SC=160:BC=3:GOSUB2200 5090 MY=Y1:MX=X1+1:M2=X2:FORI=1TONI:X=MX:Y=MY+I:GOSUB2300:POKE646,3:POKE199,1 5100 PRINTA$(I):NEXT 5110 IFMS$=""THENA$="[195][210][211][210]/[210][197][212][213][210][206] [212]O [211]ELECT":GOTO5120 5115 A$=MS$:MS$="" 5120 GOSUB910 5130 MI=NI:Y=MY+1:X1=MX-1:X2=M2:MC=3:MH=1:GOSUB3200:RETURN