[comp.sys.tandy] Model 100 utility program

rmb384@leah.UUCP (10/03/87)

	Since I've been poosting alot of "Does Anyone Have...." messages
lately, I thought I'd better contribute a little to the net to help even
things out. (contributions ~= acceptances)

	This is a menu driven systems utility for the Model 100(102/200).
It allows you to page through files (More), kill files (I always hated to 
have to go to basic and do it by hand....), get a directory of .do and .ba
files only, use a text formatter (to be posted soon, use your own in the 
meanwhile.), rename a file, copy a file, go directly into the floppy
utility menu, or into the recently posted Xmodem. 
	It is completly menu driven and well supplied with prompts. You may
make your selection from the menu with either the key contained in the
brcakets (<>) or using a Function Key. There is a bug with using the F
keys however, it will probably return you to the Model 100 "OS" Main menu
rather than util's....If anyone finds a fix for this, let me know.
	In the meanwhile, enjoy.

-------------------------- C U T   H E R E -----------------------

1 ' (c) + 1987 R.M. Bownes III
2 ' This program may be freely copied,
3 ' distributed and modified, provided
4 ' that this notice is left in place.
5 ' Please inform the original author
6 ' of any modifications or improvements
7 ' 
10 CLS
12 KEY ON
15 ON KEY GOSUB 1000,2000,5000,6000,3000,4000,7000,9000
20 PRINT"Model 100 Utility Program V1.6.0"
25 PRINT
40 PRINT"  F1	<M>ore	      F5 <D>irectory"
50 PRINT"  F2	<K>ill	      F6 <F>orm"
60 PRINT"  F3   F<L>oppy util  F7 <R>ename"
62 PRINT"  F4	<C>opy	      F8 <Q>uit (Menu)"
64 PRINT"	<X>modem"
70 Y$=INKEY$:IF Y$="" THEN 70
72 IF Y$="Q" OR Y$="q" THEN GOSUB 9000
80 IF Y$="M" OR Y$="m" THEN GOSUB 1000
90 IF Y$="K" OR Y$="k" THEN GOSUB 2000
100 IF Y$="D" OR Y$="d" THEN GOSUB 3000
110 IF Y$="F" OR Y$="f" THEN GOSUB 4000
120 IF Y$="L" OR Y$="l" THEN GOSUB 5000
122 IF Y$="C" OR Y$="c" THEN GOSUB 6000
124 IF Y$="R" OR Y$="r" THEN GOSUB 7000
126 IF Y$="X" OR Y$="x" THEN GOSUB 8000
130 GOTO 10
1000 ' MORE subr
1010 CLS:FILES: ON ERROR GOTO 1150
1020 INPUT "Which file";F$
1030 B$="ram:"
1035 Q$=B$ + F$
1040 OPEN Q$ FOR INPUT AS 1
1050 FOR I=0 TO 6
1060 INPUT#1,A$
1070 PRINT A$
1080 NEXT
1090 PRINT" MORE ";
1100 Y$=INKEY$: IF Y$="" THEN 1100
1110 IF Y$="q" THEN 1130
1115 PRINT@240,""
1120 GOTO 1050
1130 CLOSE
1140 RETURN
1150 CLOSE
1160 PRINT "Hit any key to continue"
1170 Y$=INKEY$:IF Y$="" THEN 1170
1180 RETURN
2000 ' KILL subr
2010 CLS:ON ERROR GOTO 2050
2020 FILES
2030 INPUT "Kill which file";K$:ON ERROR GOTO 2000
2035 IF K$="" THEN RETURN
2040 KILL K$:RETURN
2050 RETURN
3000 ' Directory
3010 CLS
3020 FILES
3030 PRINT"Strike any key to return";
3040 X$=INKEY$:IF X$="" THEN 3040
3050 RETURN
4000 ' Call Larry's formatter
4010 INPUT"Do you have the printer attached?";P$
4020 IF LEFT$(P$)="Y" OR LEFT$(P$)="y" THEN GOTO 4040
4030 PRINT"You must have a printer attached to use this function":FOR I=1 TO 20:NEXT:RETURN
4040 RUN "form.ba"
4050 RETURN
5000 'Call floppy utilities
5010 RUNM "floppy.co"
5020 RETURN
6000 'Copy lives here
6010 CLS:FILES:PRINT
6020 MAXFILES=3
6030 INPUT "Copy from";FR$
6040 INPUT "Copy to";T$
6045 ON ERROR GOTO 6100
6050 OPEN FR$ FOR INPUT AS #1
6060 OPEN T$ FOR OUTPUT AS #2
6070 INPUT#1,L$
6080 PRINT#2,L$
6090 GOTO 6070
6100 CLOSE:GOSUB 3000:PRINT
6110 GOTO 10
7000 'Rename
7010 CLS:FILES:ON ERROR GOTO 7000
7020 INPUT "Rename file";FR$
7030 INPUT "Rename as";RN$
7040 NAME FR$ AS RN$
7050 RETURN
8000 ' Xmodem call
8001 ' Calls the xmodem program recently
8002 ' posted to the net.
8005 CLS
8010 PRINT "This will not return to the utility"
8015 PRINT"program. Hit any key to enter Xmodem"
8017 PRINT"Hit <M> to return to util menu"
8020 Y$=INKEY$:IF Y$="" GOTO 8020
8030 IF Y$="m" OR Y$="M" THEN RETURN
8040 CLS
8050 RUNM "xmodem.co"
9000 'Close up and go to the menu
9010 CLOSE
9020 MENU