from BC Enterprises
The Only System Menu Program You Need
Menu-Matic, simply put, is a menu program. It allows you to
create a menu from which you can call your programs with the touch of one
key. For the knowledgeable user, this will save huge amounts of time.
For the novice, this can mean the difference between using and not using a
computer. For executives in charge of computer operations, it can mean
countless hours saved by not having to train new workers in the
complexities of DOS.
Menu-Matic has the features you need. The features of the main
menu program include:
- execute up to sixteen options directly from the Main Menu,
plus link up to five additional options to each Main Menu
title, for a total of 80 choices using linked options
- reach any of 80 options using only 1 or 2 keystrokes, no
going from menu to menu searching for the program you want
- automatic screen blackout after five minutes
- shows system date and keeps time on the screen in 12 hr.
- shows system equipment and disk statistics at the touch of a
- ability to add arguments to any or all options
- mark any or all options for password protection, using a
single password, or as many different passwords as you want
- keeps a log of computer operations initiated from Menu-Matic
- keyboard macros to keep typing at a minimum
- make choices by touching number keys or using selection bar
- user defined screen colors
- execution of menu options at preset times
- ability to add a description line for each menu option
The features of the Menu Installation program include:
- easy to use pull-down menu system
- extensive on-line help
- automatic generation of menu records
- easy directory access from within the program
- fully functional data entry system
- multiple report options for printing a hard copy of your menu
- ability to test your menu records from within the Installation
Now comes the pitch. Menu-Matic is not a public-domain program.
It is copyrighted, 1987-1988 to Kevin Clark and BC Enterprises. A good
deal of work went to make this an easy to use, yet powerful, menu system.
We believe that this is the best menu system available at any price. For
all this, we ask a very small payment in return.
If you use this program and find it to be helpful, please send
payment of $25 for one copy, or $20 each for two or more copies. Site
licenses are also available at a low cost. Please send payment to BC
Enterprises, One Kidd Lane, Front Royal, VA 22630. We have been advised
that this price is way too low, and that people won't buy $20-$25 dollar
software. We hope you will prove them wrong. A good many menuing
programs we have seen cost between $50 and $100. There has been a trend
in Shareware recently to offer programs at a rather high price, $50 and
over. Please support this program, which is what Shareware ought to be --
professional quality at a rock-bottom price. And the only way to make
sure you always have the latest version is to register.
Registered users will receive notices of updates and will receive
updated versions of Menu-Matic for a very low fee. (If you include
$5.00 extra with your order, we will mail you an update when it is
released, rather than just a notification.) With your registration,
you will receive a typeset manual. You will also have the chance
to tell us about improvements you would like to see. Your sugges-
tions could become reality. Even if you choose not to send in the
registration fee, we still want to hear what you like or don't like about
the program. If you decide not to register, write to us and tell us why
you think the program is not worth the registration fee.
Now comes the disclaimer. Kevin Clark and BC Enterprises do not
warrant this software as suitable for any particular application. We are
not responsible for any loss of revenue or potential revenue, or for
consequential, special, indirect, or other damages or claims.
This is good software which we believe is also an exceptional
value. We don't think there is any way it could harm any hardware or
software. If you find any bugs in it whatsoever, we would like to hear
Introduction to Menu-Matic
About the Menu-Matic
The Menu-Matic is a program which allows you to call all (or most)
of your application software from one centrally located menu. It does
this by taking advantage of DOS's built in capacity to run BATCH files. A
batch file is a set of commands which are run as if they were entered
individually from the system prompt. When you pick a choice from the
menu, the Menu-Matic immediately writes the batch file onto the disk and
then executes it. You could theoretically type up your own batch files to
call, with just the touch of a few keys, each application program on your
computer, but this would be extremely cumbersome. For one thing, the
problem with 80 batch files would be that you would have to remember the
names of all these files. In contrast, the Menu-Matic allows you just to
"point and shoot" at the programs you want to run. It is infinitely
easier and more practical.
The Menu-Matic program itself is written in Microsoft QuickBASIC
4.00. If you don't already have a copy, we highly recommend that you get
one. It just don't get much better than this. With integrated program
development, compile, and debugging, programming has never been more
pleasant. The Menu-Matic program is roughly 900 lines of BASIC code (the
source file is about 25K long), and includes a couple assembly language
subroutines gleaned from outside sources. I give a nod of the hat here to
Thomas Hanlin III whose shareware assembly language subroutines, called
ADVBAS, are extremely helpful. You can glean similar subroutines out of
magazines and other places, but he has put together a wonderful collection
of them which is well-written and easy to use. Also, the MicroHelp
Toolbox from MicroHelp, Inc., is a nice little collection.
The Menu-Matic installation program is now written in QuickBASIC
also, having been converted from Turbo BASIC 1.00 by Borland. Turbo BASIC
is also a very fine program, though not, in my opinion, of the surpassing
quality of QuickBASIC. The conversion from Turbo BASIC made it possible
to use assembly language and other libraries in the installation program,
which is a big help. The source code for the installation program is over
We bring up the size of the program to give you some idea of the
programming involved, i.e., a whole bunch. 4000 lines of source code are
not written overnight.
Requirements to Run Menu-Matic
To run Menu-Matic you need an IBM PC, XT, AT or clone running DOS
2.0 or higher with 256K of RAM. Menu-Matic only takes up RAM while it is
actually running. Once you begin an application from Menu-Matic, it does
not take up any memory. Menu-Matic has been run successfully on many
no-name clones, as well as on Kaypro, PC's Limited, and Commodore
computers, as well as on PS/2's. You will probably find that it is
impractical to use Menu-Matic unless you have a hard drive. While use
with floppy drives is possible, the tortoise-like speed of floppy drives
means that the program will run very slowly, especially if you have large
data files. There are some good floppy drive speed-up programs available
(there is one included in Mace Utilities that is excellent), and if you
have one of these you might brave it. This documentation file will assume
the Menu-Matic is running from the "C:" hard drive, although it can be run
from whatever hard drive or partition you want.
Files Needed to Run Menu-Matic
You should have seven files to run Menu-Matic. These files are:
MENUMATC.EXE -- the menu executable file.
MENUINST.EXE -- the menu installation program.
MENU.DAT -- data used by menumatc.exe. Comes with
3 slots used. You may keep them or
modify them as you like.
MENU2.DAT -- data file used to hold linked options. Comes
with options linked to "Dos Commands".
MENU.BAT -- batch file to call menumatc.exe
MENUMATC.DOC -- this file.
CNVTO40.EXE -- a program to convert Menu-Matic 3.X files to
4.X files (you must run this first if you are
upgrading from 3.X)
If you have no other files with any of these names in the main, or
"root", directory of your hard drive, then copy all these files to your
hard drive. Now, type MENU at the prompt. This will start the batch file
and call MENUMATC.EXE. If the MENU.DAT file is not in the current
directory, then you will be advised of this. Copy the file to the current
directory and try again. NOTE: the Menu-Matic will not run properly if
you type "menumatc" at the prompt. You must start it from the batch file.
If you want to have Menu-Matic come up when you boot the computer,
then add the command MENU as the last command in your AUTOEXEC.BAT file.
If you have no such file, or don't know what one is, then type:
This will tell you if you already have such a file. If you have one, then
use your word processing program to add MENU at the end. If you do not
have any file by this name, then type:
C>copy con autoexec.bat
prompt $p $g
(^Z is typed by pressing the F6 Function Key.) This will create an
autoexec file to be run whenever the computer is booted. This file will
ask you for the time and ate, and then call the Menu-Matic program.
By making a few changes to the MENU.BAT file, and adding a command
to your AUTOEXEC.BAT file, you can make it possible to call the Menu-Matic
from any disk or sub-directory of your computer. The MENU.BAT file as it
is on the disk is simply:
(DOIT.BAT is the batch file which the Menu-Matic creates in order to run
your applications.) The first thing you must do is to put another command
in your AUTOEXEC.BAT file (before "menu"). This command is "SET PATH=C:\"
(do not type the quotation marks). That command means that whenever you
type in a command at the system prompt, it will search the main directory
of drive C:, where your Menu-Matic will probably be, if the program or
batch file is not found in the current directory. Now, use a word
processor to modify the MENU.BAT file to the following:
(The first two lines are only necessary if you have more than one hard
drive, such as C: and D:.) Once this is done, you can call the Menu-Matic
from any drive or directory, simply by typing "menu" at the prompt. You
can make your life even easier by changing the name of the file from
MENU.BAT to just M.BAT, or creating a new batch file called M.BAT with the
command "menu". Then the Menu-Matic can be called into action from any
drive or subdirectory just by typing "m" (and return, of course).
Your First Menu-Matic Session!
If you are at your "C>" prompt and have copied all the files
onto your hard drive, then type "menu" to start the Menu-Matic. It will
take a second or two to come on the screen. Down the left side of the
menu are choices 1-8, and on the right side are choices A-H. Right now,
you have choices 1, 2, and 3. If you hit any other key it will tell you
that the choice is not available, and ask you to hit Enter. You can also
make a choice using the UP and DOWN arrow keys and then pressing Enter.
A Note About Monitors
If you have a color monitor, then you will see that Menu-Matic is
programmed in colors. We hope you like them. If you don't like them,
that's OK, because you can change them, anyway. If you have a monochrome
monitor and board, or if you have a monochrome monitor and color board,
the screen will appear a little differently. The program senses which
monitor you have and will adjust the display accordingly. However, the
default colors may be a problem if you have a monochrome monitor hooked up
to a color board. In this case, the Menu-Matic would run in color, but
you will probably want it to run in monochrome mode. In version 3.X, you
could force it to run in monochrome by modifying the MENU.BAT file so that
the line reading "menumatc" read "menumatc mono". However, this is no
longer supported, since it is easy enough to use the menu installation
program to choose your own colors. You may still, however, make the menu
installation program run in monochrome by adding the "mono" extension at
the end. For instance, typing "menuinst mono" from the prompt runs the
menu installation program in monochrome. If you run the installation
program from the Menu-Matic, you will need to add the "mono" the commands
that call it, i.e, change "menuinst" to "menuinst mono". (You must use
the menu installation program to change this one. You can't do it from
the system prompt or word processor. We'll talk about the installation
program in a minute.) In any case, the colors on the screen are just the
default colors, and you can use the installation program to change the
colors to whatever you want.
The Menu-Matic program also has a built-in feature which will make
your screen go blank after five minutes of non-use. This only works while
you are in the Menu-Matic, not while you are in other applications called
from the menu. The screen blanking should work properly with any monitor
or adapter card. It simply turns all the display colors to black and then
clears the screen.
Back to the Topic At Hand
The Menu-Matic is a two-level menu. On the first level you may
have one of two things. You can have options which execute directly when
you choose them (such as the "Exit to Dos" and "Setup Menu-Matic" options
on the screen), and you can have options which call up a sub-menu (such as
the option "-Dosatc wholandsandsae
mscreen). As you may have noticed,
options which call sub-menus have a dash ("-") as the first character of
Choose the option "-DOSatc mands", by moving down the selection
bar or by pushing "3". You will be presented with a sub-menu containing a
few simple DOSacommands. Use the selection bar or push "d" to choose
"Directory." Now you are asked to add an argument, or extension, to
command "dir". Type "*.* /p" and hit Enter to see your present
directory. This shows another important feature of the Menu-Matic, that
is, the ability to add run-time arguments onto any menu option. You will
find time and again that this is very handy.
While you are at the Main Menu screen, there are a few other keys
which are active. These keys are the 10 function keys (more about that
later), and the key combinations ALT-S and ALT-M. If you hold down the
ALT and hit S you will see a screen giving some statistics about the
hardware and software on your system. This will work fine for all IBM
compatibles, but the figures may not be correct, or the program may hang
entirely, for non-compatible computers. If you have a computer on which
this function does not work, please write and tell us so that we can
mention this or fix it in the next release.
The ALT and M key combination shows you which "Macros" are
assigned to the 10 function keys. These keys can be used in a number of
different ways, and will discussed in some detail under the section about
using the Menu-Matic Installation program.
Notice that from anywhere except the Main Menu screen, you may hit
ESC to cancel and go back to where you started. On the Main Menu screen,
you must choose the "Exit to DOS" option to end the program. Remember, to
return to the Menu-Matic, just type "menu" at the DOSaprompt.
Time Tracking Functions of the Menu-Matic
The Menu-Matic has built-in functions so that you can track how
much time you spend in your applications. The Menu-Matic does this by
writing a file showing when you entered the Menu-Matic, when you exited
from it, and which choice you exited to. Thus, by comparing the time when
you exited the Menu-Matic to, your database perhaps, with the time when
you re-entered Menu-Matic, you can see how long you spent in your
database. This is helpful for consultants, or accountants, or others who
bill by time. It is also interesting to see how long you spend doing
whatever you do.
The format of the file written by the Menu-Matic is the following:
Date Time -- Entered Menu-Matic
Date Time -- Exited to (Option Name)
In previous version of the Menu-Matic, the time tracking
capability was turned on by using a switch when calling the Menu-Matic.
In version 4.0, however, this is one of the options under the heading
Setup in the installation program.
If you choose to keep a "Cumulative" record, the program will
always append the log of your actions onto a file called MENU.LOG. If you
choose the "Daily" record, the program will keep a daily log of your
activities rather than a running day-to-day log. The daily log writes to
a file called LOG(date).MEN. For instance, on December 30, the file name
would be LOG12-30.MEN. This name is set from the system date, so be sure
your system date is correct. Your system date is set by typing DATE at
the system prompt, or putting DATE as a command in your AUTOEXEC.BAT file.
Using the Menu-Matic Installation Program
When you choose an option to run from your Menu-Matic, the program
writes a batch file and then executes this batch file. Obviously, then,
the program needs to know what commands are to be placed in the batch
file. This is done by using the Menu-Matic installation program. The
only way to set up your Menu-Matic for proper operation is to use the
installation program provided. Since the menu installation program is
basically a database, we will refer to the menu options as "records."
Each separate line of a record is called a field.
If you are presently running the Menu-Matic, then hit -2- to go to
the installation program (otherwise, start the program by typing "menu",
and then choose -2-). You may read the opening screen if you wish, and
then hit Enter. In the lower right hand corner, it shows the amount of
free memory you have, and also the amount of free disk space you have. If
either of these numbers becomes dangerously low, they will flash. A
flashing number does not mean immediate danger, but it means you should be
aware that it could become a problem. Running out of disk space is not
fatal, but running out of memory would probably cause a program crash.
Along the top of the screen is the pulldown menu system. This
type of menu system should be familiar to most users. It is a very simple
but effective type of menu. Along the top of the menu are the headings:
Level, File, Macros, Setup, Auto Exec, and Exit. You may access these
either by pushing the key corresponding to the first letter of the name,
or by moving the selection bar and hitting -Enter-. Once you choose one
of these main headings, you will be given a further list of choices.
After you choose one of these, you may be given still more choices.
As has been said above, the Menu-Matic is a two-level menu system.
The "Level" heading of the pulldown menu lets you specify whether you want
to operate on the main level menu records or on the sub-menu level
records. The sub-menu records are "linked" to the top level records.
If you choose to go to the "Linked Level", then you will be
prompted by a box on the right upper side of the screen. This box will
appear whenever you need to enter a record name or number. You will
notice that when the box comes up, it contains the name of the first
record. Also, a pointer appears at the left of the record names in the
list of records. Use the up arrow or down arrow to move the pointer to
the record you wish to select. The name in the box on the right will
change as you move the pointer. So, if you wish to work on the records
linked to "-DOSatc mandsa, you would move the pointer until it was on
"-DOSaCommands" and then hit -Enter-. The list of main level records will
disappear, and the list of records linked to "-DOS Commandsa will appear.
Now you may proceed with whatever operations you wish on these linked
When you want to go back to the main level, choose the "Level"
heading again and pick "Main Level." Of course, you do not need to return
to the Main Level to in order to exit, or to use any of the other
functions available in the installation program. You need only return to
the main level to perform operations on the main level records.
Note that in order to designate a main level record as being a
linked option (i.e., one that calls a sub-menu) you must place a dash
("-") as the first character of the record. There will be more on linked
Adding Menu Options
This option does just what it implies. It adds new records to
your Menu-Matic. You may place up to sixteen records on the main level,
and up to five records on the linked level. If you try to add beyond
sixteen or five respectively, the program will inform you that you are
attempting a no-no.
You may mark a title for password protection by placing a plus
sign ("+") as the first character of the title. There will be more about
passwords later as well. Note that this symbol can be combined with the
dash character. However, the dash must be placed before the plus sign if
they are combined.
After you enter the option name, you enter the DOSacommands
that you want this selection to run. These commands may be 60 characters
long, and there may be up to ten co wholands per menu option. If any command
can take another argument, to be added when it is executed, make an
asterisk ("*") the first character of the co wholand. For instance, if the
option is to be "Directory" then you might use the following commands:
Option Name: Directory
Command 1 : *dir
Command 2 : pause
Co wholand 3 : menu
When you execute this option from the menu, the program will ask you to
add an argument to the end if you wish: You might add on to the command
"d:*.*" for a complete command of:
Or, you may decide not to add any command, in which case you could simply
The ability to add arguments makes the Menu-Matic extremely
flexbile. For instance, you need only one option for getting all your
directories, rather than one option for every drive and subdirectory. Of
course, specifying that an option may take an argument will slow down
speed of execution since it will require an extra step at run-time. Only
use this if you think a certain command will often need an argument. For
instance, your word processor may take a file name when invoked, so that
you could use an argument from the menu. However, it might be just as
easy for you to enter the file name when you actually get to the word
As has been said, you can mark a title as a linked title, with
sub-menus, if you place a dash ("-") as the first character of the title.
Now for some explanation of this.
Basically, marking something as linked title means that it is
going to be an option that does directly execute, but calls another set of
options (a sub-menu or sub-options). For instance, if you have three word
processors, you might make a title on the Main Menu "-Word Processors".
Then when you chose this option from the Main Menu, you would be presented
with three sub-options, your three word processors.
This may sound somewhat confusing, but linking options is not
difficult to do. As mentioned, you first must mark one or more of the
titles as a linked title by placing a dash as the first character. Note
that when marking a title as a linked title, you need not add any further
DOSaco wholands to it. Any DOSaco mands would just be ignored anyway, so the
title alone is sufficient. You may link up to five sub-options to any of
the records on the main menu. These options may also be password
protected by putting a plus sign ("+") as the first character of the
sub-option. Also, note that you may not want to start names of the
sub-options with the same letter. When in the menu, you can execute
sub-options by hitting the first letter of the option (which is
high-lighted), as well as with the selection bar. However, if more than
one sub-option starts with the same letter, then the first option will be
executed, regardless of where the selection bar might be at the time. If
you password protect any of the sub-options, then you may execute it by
hitting the letter after the plus sign.
The more sub-options you use, the greater the set-up time for the
menu will become. If you are using a slow computer, such as the 8
megahertz XT compatibles we use, then at some point you may feel the
set-up time is too much. If this happens you may want to delete some of
your little-used sub-options. If you are using a 286 or 386 based
computer, then the set-up time will not be very much even if you use the
entire 80 possible sub-options.
When specifying DOSacommands, you will probably want to return to
the menu when the sequence is done. To do this you must return to the
main directory and then execute the MENU.BAT file. You might use the
following commands from a subdirectory:
Command 3: cd \
Command 4: menu
You might use the following commands from a different disk and
Command 4: cd \
Command 5: c:
Command 6: menu
After the data entry lines for your DOSaco mands, there are two
more lines. These are "Description" and "Password". If you choose to
enter something in the Description field, then this text will be displayed
on the bottom line of the Menu-Matic when the selection bar is placed upon
the corresponding entry. For instance, if you have an option named
"PC-Write" and you enter "For all your word processing needs", then this
text will be displayed when the selection bar is on "PC-Write". A
description can be entered for all records, including sub-level records.
The "Password" field enables you to enter a separate password for
each record, if you so choose. You can set a general system password
(under the main pull down heading Setup, then System Password) which will
be the password used if you do not enter separate passwords for records.
In other words, if you mark something for password protection, by placing
a "+" sign as the first character (or second character with the "-" sign),
and you do not add a password in this field, then the password expected at
run-time will be the general system password. If you do choose to enter a
separate password here, then that will be the password expected rather
than the system password. If you do not set a system password or enter a
password in this field, then the Menu-Matic will accept anything for the
password at run-time.
For security purposes, the Menu-Matic automatically adds the
command "echo off" at run-time as the first command of any option. This
means that the co wholands executed are not displayed oe
mscreen. If you
want the commands displayed when it runs, then make "echo on" the first
DOSacommand of the option.
Note: if you add or change a title and do not put any name in for
the title, then the number of the title will not appear on the screen. If
this happens, you can still change or delete this number, even though you
will not see it. If you leave it blank, then you will have a hole in
your menu corresponding to that number. There is nothing necessarily
wrong with this, we just wanted to warn you.
You will note that there is a box at the bottom of the data entry
screen with a list of the function keys and what each does. Besides these
function keys, the following keys and key combinations are available for
use with the data entry editor: Moves cursor one character to the right
Moves cursor one character to the left
Moves cursor one word to the right
Moves cursor one word to the left
Moves cursor to the first data entry field
Moves cursor to the last data entry field
Moves cursor to the beginning of the field
Moves cursor to the end of the field
Erases everything from the cursor to the
end of the line
Delete character to left of cursor,
moves rest of field left one space
Deletes character at cursor position,
moves rest of field left one space