home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Generous Efforts of Many
/
gemcd.zip
/
GEM.CD.A.po
/
FEATURES:BEAGLE
/
FONTMECH.PRO.S1
/
FONT.MECHANIC
/
CAT.MENU.bas
< prev
next >
Wrap
BASIC Source File
|
2000-01-01
|
4KB
|
77 lines
0 REM <CTRL-M><CTRL-M>===============<CTRL-M> CAT MENU<CTRL-M> (C) 1985<CTRL-M> MARK SIMONSEN<CTRL-M> BEAGLE BROS<CTRL-M>===============<CTRL-M>
1 IF PEEK(103) + PEEK(104) *256 < >2049 THEN POKE 2048,0: POKE 103,1: POKE 104,8: PRINT CHR$(4)"RUN CAT.MENU"
2 SPEED= 255: NOTRACE : LOMEM: 9216: PRINT CHR$(21): TEXT : NORMAL :D$ = CHR$(4)
3 PRINT D$"BLOAD CAT.MENU.ML": PRINT D$"-TYPE.COMMAND"
4 L = 1:U = 1:T = 1:A = 1:B = 1:S = 1:O = 1:SO = 0
5 DIM CA$(255): FOR J = 820 TO 820 +40: READ V: POKE J,V: NEXT
6 REM
7 REM
8 REM
9 REM
10 ONERR GOTO 56
11 TEXT : HOME
12 GOSUB 58: HOME
13 REM
14 REM
15 REM
16 REM
17 POKE 5888 +4,F: POKE 5888 +5,SO *128: IF NOT F THEN PRINT CHR$(7)"NO FILES": END
18 INVERSE : PRINT " CAT MENU ";: NORMAL : HTAB 41 - LEN(F$): PRINT F$;: GOSUB 34: VTAB 23: GOSUB 34: HTAB 11: INVERSE : PRINT " PRESS [H] FOR HELP ";: NORMAL : CALL 5888
19 K$ = CHR$( PEEK(5888 +3) -128): IF K$ = "Q" THEN VTAB 24: HTAB 1: CALL -868: PRINT "QUIT NOW? (Y/N): ";: GET A$: ON A$ < >"Y" AND A$ < >"y" GOTO 99: TEXT : HTAB 1: CALL -868: VTAB 23: DEL 3,3: END
20 IF K$ = "C" THEN TEXT : CALL 820: HOME : PRINT : PRINT D$"CAT": GOSUB 34: PRINT "ANY KEY:";: GET A$: CALL 830
21 IF K$ = "P" THEN TEXT : CALL 820: GOSUB 71: CALL 830: IF A$ < >"" THEN 11
22 IF K$ = "H" THEN TEXT : CALL 820: GOSUB 35: CALL 830
23 ON K$ = "R" GOTO 26: IF K$ = "L" THEN 30
24 IF K$ = "1" OR K$ = "2" THEN PRINT CHR$(4)"PREFIX,D"K$: GOTO 11
25 CALL 5888 +7: GOTO 19
26 FF = PEEK(5888 +6):N$ = CA$(FF):C$ = "-"
27 REM
28 REM
29 TEXT : HTAB 1: CALL -868: VTAB 23: PRINT : PRINT D$;C$; MID$ (N$,2,15): END
30 FF = PEEK(5888 +6):N$ = CA$(FF):M$ = MID$ (N$,18,3):C$ = "LOAD"
31 IF M$ = "BIN" THEN C$ = "BLOAD"
32 IF M$ = "TXT" THEN C$ = "TYPE"
33 TEXT : HTAB 1: CALL -868: VTAB 23: PRINT : PRINT D$;C$; MID$ (N$,2,15): END
34 FOR J = 1 TO 40: PRINT "-";: NEXT : RETURN
35 HOME : HTAB 14: INVERSE : PRINT " HELP SCREEN ": NORMAL : GOSUB 34: VTAB 4: PRINT
36 PRINT " LEFT ARROW : MOVE UP 1 LINE"
37 PRINT " UP ARROW"
38 PRINT "RIGHT ARROW : MOVE DOWN 1 LINE"
39 PRINT " DOWN ARROW"
40 PRINT " [<] : MOVE BACK 1 PAGE"
41 PRINT " [>] : MOVE AHEAD 1 PAGE"
42 PRINT
43 REM
44 PRINT " [S] : SORT FILES"
45 PRINT " [R] : RUN, BRUN, OR EXEC FILE"
46 PRINT " [L] : LOAD, BLOAD, OR TYPE FILE"
47 PRINT " [C] : CATALOG DISK (NORMALLY)"
48 PRINT " [P] : PREFIX CHANGE"
49 PRINT " [1] : NEW DISK, DRIVE 1": PRINT " [2] : NEW DISK, DRIVE 2"
50 PRINT " [H] : HELP SCREEN"
51 PRINT " [Q] : QUIT"
52 VTAB 23: GOSUB 34: HTAB 16: PRINT "ANY KEY:";: GET A$: RETURN
53 DATA 169,4,133,39,169,32,133,43,208,8,169,32,133,39,169,4,133,43,160,0,132,38,132,42,162,4,177,38,145,42,200,208,249,230,39,230,43,202,208,242,96
54 REM
55 REM
56 CALL -3288
57 TEXT : HOME :J = PEEK(222): INVERSE : VTAB 9: HTAB 15: INVERSE : PRINT CHR$(7)" ERROR # "J" ": NORMAL : VTAB 23: HTAB 8: PRINT "PRESS ANY KEY TO RESTART:";: GET A$: GOTO 11
58 PRINT D$"PREFIX": INPUT P$: PRINT D$"OPEN "P$",TDIR": PRINT D$"READ"P$: INPUT L$: INPUT L$: INPUT L$:F = 0:F$ = ""
59 INPUT L$: IF L$ = "" THEN INPUT L$:F$ = LEFT$(L$,17): GOTO 70
60 IF (T) AND MID$ (L$,18,3) = "TXT" THEN 65
61 IF (A) AND MID$ (L$,18,3) = "BAS" THEN 65
62 IF (B) AND MID$ (L$,18,3) = "BIN" THEN 65
63 IF (S) AND MID$ (L$,18,3) = "SYS" THEN 65
64 IF NOT (O) THEN 69
65 IF (L) AND LEFT$(L$,1) = "*" THEN 68
66 IF (U) AND LEFT$(L$,1) = " " THEN 68
67 GOTO 69
68 F = F +1:CA$(F) = LEFT$(L$,39)
69 IF FI <255 THEN 59
70 PRINT D$"CLOSE "P$: RETURN
71 VTAB 14: HTAB 1: GOSUB 75: PRINT SPC( 160): GOSUB 75: PRINT SPC( 40): VTAB 16: POKE 34,15: POKE 35,18
72 PRINT CHR$(4)"PREFIX": INPUT A$: VTAB 18: PRINT "<RETURN> TO ESCAPE";: VTAB 16: HTAB 1: PRINT "PREFIX:"A$;: VTAB 16: HTAB 8: CALL -657:A$ = "": FOR I = 512 TO 767: IF PEEK(I) < >141 THEN A$ = A$ + CHR$( PEEK(I) -128): NEXT
73 ON A$ = "" GOTO 74: PRINT CHR$(4)"PREFIX"A$
74 RETURN
75 FOR I = 1 TO 40: PRINT "_";: NEXT : RETURN
99 HTAB 1: CALL -868: HTAB 11: INVERSE : PRINT " PRESS [H] FOR HELP ";: NORMAL : GOTO 25