home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Set of Apple II Hard Drive Images
/
hard.hdv
/
HARD
/
UTILS
/
FILESELECT
(
.txt
)
< prev
next >
Encoding:
Amiga
Atari
Commodore
DOS
FM Towns/JPY
Macintosh
Macintosh JP
NeXTSTEP
RISC OS
UTF-8
Wrap
Applesoft BASIC Source Code
|
1991-06-13
|
1.2 KB
|
35 lines
|
[FC] Applesoft BASIC Program (0x0801)
100 REM ONE KEY FILE SELECTOR
180 D$ = CHR$(4): DIM DI$(10),F$(100)
190 REM LOAD IN FILES
200 PRINT D$"PREFIX": INPUT DI$(1):B = 1
210 A$ = "": FOR I = 1 TO B:A$ = A$ +DI$(I): NEXT : FOR I = 1 TO 100:F$(I) = "": NEXT :NF = 1
220 ONERR GOTO 270
230 PRINT D$"OPEN"A$",TDIR": PRINT D$"READ"A$
240 INPUT F$(NF):NF = NF +1
250 GOTO 240
260 REM DISPLAY
270 POKE 216,0: PRINT D$"CLOSE"A$:NF = NF -6
280 PRINT : PRINT CHR$(21): TEXT : HOME :P = 1:NP = NF/12:NP = NP +(NP > INT(NP)):NP = INT(NP): IF B >1 THEN PRINT "SUB";
290 PRINT "DIRECTORY: ";DI$(B): PRINT : PRINT "ENTER LETTER TO RUN FILE, ARROW KEYS PAGE, CTRL-R FOR NEW VOLUME, <ESC> EXITS"
300 PRINT "PAGE "P" OF "NP: FOR I = 1 TO 40: PRINT "-";: NEXT
310 S = 12 *(P -1) +1:E = S +11: IF E >NF THEN E = NF
320 FOR I = S TO E: VTAB 9 +(I -S): PRINT "<"; CHR$(65 +(I -S));"> "; MID$ (F$(I +3),2,21);
330 IF MID$ (F$(I +3),18,3) = "DIR" THEN INVERSE : HTAB 21: PRINT "DIR";: NORMAL
340 PRINT : NEXT
350 VTAB 23: PRINT LEFT$(F$(NF +5),40);
360 REM GET INPUT
370 KB = PEEK(49152): ON KB <128 GOTO 370: POKE 49168,0
380 IF KB = 146 THEN HOME : PRINT "READING IN NEW VOLUME...": RUN
390 IF KB = 155 THEN HOME : END
400 IF KB = 136 THEN P = P -1: GOTO 490
410 IF KB = 149 THEN P = P +1: GOTO 490
420 IF KB <193 OR KB >193 +(E -S) THEN 370
430 F = KB -190:FL$ = MID$ (F$(S +F),2,15)
440 VTAB 6 +F: INVERSE : PRINT "<"; CHR$(62 +F);"> ";FL$: NORMAL
450 REM GET PREFIX IF DIRECTORY
460 IF MID$ (F$(S +F),18,3) = "DIR" THEN B = B +1:DI$(B) = FL$: FOR I = 1 TO 15:DI$(B) = LEFT$(DI$(B), LEN(DI$(B)) -( RIGHT$(DI$(B),1) = CHR$(32))): NEXT :DI$(B) = DI$(B) +"/": GOTO 210
470 REM OTHERWISE EXECUTE FILE
480 PRINT D$"PREFIX"A$: PRINT D$"-"FL$: NEW : END
490 IF P <1 THEN P = NP
500 IF P >NP THEN P = 1
510 HOME : GOTO 290