                        PRG_MENU and MENMAKE
                 (C) Copyright 1989 by W.D.Parks
                        All Rights Reserved


In response to numerous requests (mostly by the same person), I've
decided to update the documentation to PRG_MENU and MENMAKE.

PRG_MENU, since titled: PRGMN118, PRGMN119, and most recently PRGMN121
is a seemingly simple Menu dispatcher for GEM files (ie PRG). TOS and TTP
files can now also be used and fed a commandline if needed.

  PRG_MENU provides an eight-slot menu, 8 programs can be listed in one
file. If 8 doesn't seem like enough then a chained-menu can easily be
linked to the first one, and another to that and another to that...
ad infinitum... 

  I chose only 8 slots for two reasons:
   1) I wanted to keep PRG_MENU small and very memory UN-hungry.
      The first version required less than 7k bytes.
      This latest version, almost 9k.
   2) Even on a high-resolution screen, things can get pretty crowded
      pretty quickly. So... 8 slots. No clutter, no mess (water soluble ink).
   3) For floppy diskettes, 8 is fine... if ya need more, just chain another
      set of 8 selections...
   4) For hard drives, 8 is fine for a SET of Applications.
      I use 6 menus total and I still don't remember what's on 4 of them... I seldom get that far.

   *) did I say only "two" reasons?  Oh. Well I MEANT four. 
 
 To select an item from the menu, simply click on it or press the respective
 number key... ( I like things that will work with EITHER mouse or keyboard,
 I'm not prejudiced.)
 
 Ok. Did I say eight slots? Well, there are 8 USER-Programable Program slots.
 Two more sorta-slots exist.
 Slot #9: the File_Selector, to execute any program on any drive in any folder
 anytime anywhere anyway anywhy anywho.
 Taking up the tenth slot is the "Chained-Menu" slot. Here is where you list
 another menu name to load in... then clicking on this slot will automatically
 read in another 'set-of-eight' menu listing.
 
 The file that holds the definitions (or more simply, the listing) of the user
 selections is a normal ascii file, called the MEN file because of its 
 extension ".MEN". Originally, this was a simple 8-line file where each line
 was a complete pathspec of an application to be run; it looked like this:
 
C:\ARKSHELL.PRG
D:\STUFF\SHP2SHP.PRG
E:\WORDS\SPELLIR.PRG
F:\GAMES\ARCADE\PONG.PRG
G:\TOODLE\LOU.PRG
H:\GRAPHICS\MVG.PRG
C:\REBOOT.PRG
F:\READRSRC.PRG
 
 That was it. 8 lines of text; no more. But my program was bland. It lacked
 the oomph I'd wanted. So I opened my book, "Oomph for fun and profit" and
 decided to add a title line... and I sure would like to just use the file_
 selector to pick a program to load and ... why not load in another menu file
 instead of exiting and re-running... and why make the user type in upper-case
 and why not allow a short REMark... so... I added those things too.
 
 Now, the MEN file can have these extra goodies tossed in so the USER can 
 customize it to his liking... If this seems confusing, start with the simple,
 no-frills MEN file listed above, then maybe add a title etc etc etc...
 
 Rules:
1- Each line must start with a non-space character.
2- Only the very first line can be the title-line. Start it with an asterik: *
3- A chained-menu can be specified by starting the line with the @ sign.
4- Any line starting with a semicolon ";" will be ignored.
5- A pathspec must start in the first column (see rule#1) and continues
   until the first space character. Anything after the space is considered
   a remark and is ignored.
 

So.. now our MEN file can appear thus:

* A Simple Title             up to 18 characters
@C:\UTILS.MEN                the "chained menu"
!C:\FUN\AND\GAMES\BURP.PRG
D:\WINE\WOMEN\SONGS\LALA.PRG
E:\SINGIN\INTHE\RAIN\MOOG.PRG
F:\ARQUE.PRG
!G:\OLDIES\WACMAN.PRG
E:\GOODIES\MONEY.TTP
F:\small\Things.Tos
D:\BIGGER\STuff\Jack.Tos

  The display, of course, will show only the filenames and not the complete
 pathspec. This is for two reasons:
1) Although I'd prefer the full path to show, it does appear cluttered.
2) Low-Resolution only has 40 columns... why push it?


  Now, what haven't I told you? (thinkin....) Oh yeah. Clicking on the title
 box will give you the file selector and ask for another MEN file. That way
 you can pick ANY menu you want, anywhere, anytime etc etc etc
 
  In version 1.21, there is a built-in file READER. Selecting a file other
 than the standard executable file type (PRG,TOS,TTP,ACC) will automatically
 bring up the file reader and display the selected file for you. You can page
 forward with anykey... page back with cursor-up, quit with <ESC> or Q, even
 goto top of file with <Home>.
 
   PRG_MENU is not intended as a replacement for HOTWIRE (by codehead software)
 but instead is intended as a companion tool... of course, you don't need
 HotWire to run PRG_MENU (and you don't need PRG_MENU to run HotWire, isn't
 nature wonderous!?)  
 Version 1.21 of PRG_MENU uses 9k of memory total. It uses the plain Vanilla
 PEXEC function to execute any selected program. Before execution, the selected
 file's folder is made into the default folder (ie drive and path) and once it
 exits, the original drive and path is restored.
   Originally, no command_line was sent to the selected file. Starting with 
 version 1.19, you may opt to send a command_line to any selected program
 by pressing the "C" key. A small note will appear in the menu stating that
 this "C"ommand_line option is enabled.
   Also in version 1.19, floppy drive support was increased!!! 
 I found PRG_MENU worked just great on floppies. I place all the program names
 in the menu and then simply run the menu to make my selection(s). 
 Then the big bad bug reared its head one night at a computer club meeting.
 I had prepared a selection of files on a floppy, complete with my little ole
 handy-dandy PRG_MENU all set up... I handed it to the guy and he popped it in
 Drive B:   ..... ya see... I don't have a "B:" drive. Never had to worry about
 this. My MEN file explicity stated all files to be on drive "A:\ etc etc".
 This has been remedied. If PRG_MENU finds a pathspec that states "A:" or "B:"
 it will use it's default drive instead (the same one that PRG_MENU was run
 from).

Oh. I almost forgot DEPT.

 Some programs (Pagestream for example) require you to Reset the computer when
you are done. Many games are also best done this way; you don't know what 
they've done to memory. You can specify any slot to be "Reset-on-exit".
Simply start the line with an exclamation point (!). Then when that program is
finished and you exit back to (usually the desktop) PRG_MENU, PRG_MENU will do
a cold-boot.

 When PRG_MENU is run, it looks for a MEN file named, PRGMENU.MEN
This is the default menu file. No provision exists to alter this default.
Once PRG_MENU is run, you can then change to another MEN file but the first
one must be named PRGMENU.MEN. If PRGMENU.MEN is not found, you will be asked
to select another... so "not to worry".

 
 
;-----------------------------------------------------------------------------

MENMAKE:  A nifty little utility to build a MEN file for the above stated 
and afore mentioned program (ie PRG_MENU).

 Even though all that is needed to create a MEN file is any text editor that
can write a standard ASCII file, you still have to manually spell out each
drive:\path\filename.ext  exactly as it exists on your system. This, I found,
can get pretty monotonous. In fact, this is what the file_selector was created
for in the first place. No?
 MENMAKE will display a screen, similar in appearance to PRG_MENU, and allow
you to point-n-click to whichever slot you want to fill and give you access
to the file via the file_selector. You can ADD, DELETE or INSERT any slot you
want. You can LOAD an existing MEN file or create one from scratch.
 Also available is a button to toggle the "Reset-on-exit" for each slot.
CLR will erase the whole thing. Clicking on the title_line will prompt for a
new title (MENMAKE will center it for you if it is less than 18 characters).
CLicking on the 10th slot, will allow you to specify a chained MEN file.

Hmmmmmm.... that's about it.


;-----------------------------------------------------------------------------

I've found PRG_MENU an indespensible utility. Of course I may be prejudiced on
this count... (no. not because I wrote it. because I don't like wading through
all those desktop windows trying to find the program I want to run).


PRG_MENU and MENMAKE are shareware. If you find yourself using these again and
again, remember me (Dr. Bob). A quick $5.00 would be nice... if you insist on
sending more... I guess I could force myself to accept it, but I'm not trying
to get rich here... just remembered. If you don't have the fiver to send then
break out a stamp and write me a small note; tell me what you think of my 
PRG_MENU... Tell me what you think of the Iran-Contra fiasco, tell me what
you think of Paulina Poriczkova...

In other words: Send some FEED-BACK.

I need input in order to make output.


                                                    Sinclairly,
                                                    Dr. Bob
                                                    09/21/89


 