%main menu%


This is the main menu of SUPER-MAINT.  Use the right and left arrow keys to 
choose an item on the menu bar, and press enter to get the submenu for that 
choice.

SUPER-MAINT is a Make utility for programmers.  It is very flexible in its 
ability to handle files, paths and so on.  Programmers set their Make 
preferences in the Setup section.

SUPER-MAINT is actually four programs.  The first is a powerful make file 
editor (SME.EXE) that automates the writing of make files and provides 
powerful tools for doing so. The second is a flexible Make utility (SM.EXE).
Third is the setup utility (SMSET) with which you set up the parameters for 
all the programs.  Last is the help facility (SMH.EXE).
.cp


HELP        Context sensitive, where help is available.

MAKE        Edit new or old SUPER-MAINT files.

SETUP       Call Setup program to set screen colors, parameters, and more.

TOOLBOX     Program information, Lang Def File Editor, DOS shell

QUIT        Return to DOS
.cp

                     Quick Command Keys:

              alt-x     Quick quit
              alt-q     Quick quit
              ctrl-c    Quick quit
              alt-v     Display Version and Serial Number
              alt-b     Brand of Compiler Reminder Toggle
                 F1     Display Help
              alt-h     Display Help
              alt-f     Files Menu
              alt-m     Make Menu
              alt-s     Setup Menu
              alt-t     Toolbox Menu
              alt-r     Review Current Settings
.cp



                     Mouse Command Keys

              left      Pick a Menu choice
              right     Help
              
If you have a mouse you may exit any menu by placing the mouse cursor over 
the small box at the upper left of the window and pressing the left button.
To exit the program use the small box at the upper left of the screen.
.cp

When using pop-down menus:

              left     Next menu to the left
             right     Next menu to the right
               esc     Return to main menu bar

And if you have a mouse place the cursor on the main menu bar to the right 
or left of the current choice:

              left        left button    Next menu to the left
             right        left button    Next menu to the right
    over small box        left button    Return to main menu bar
          anywhere       right button    Help for current menu
*END*
%program info%

Programmer's SUPER-MAINT(tm) was written by Dan Veaner (CIS 71460,2644).


                            ┌─────────┐
                      ┌─────┴───┐     │              (tm)
                    ──│         │	    │──────────────────
                      │   ┌─────┴╨──┐ │  Association of
                      │   │         │─┘  Shareware
                      └───│    	    │    Professionals
                    ──────│    ║    │────────────────────
                          └────╨────┘    MEMBER


SUPER-MAINT is SHAREWARE.  This allows you to "try before you buy."  If you 
use SUPER-MAINT after a 30 day trial period you must register your copy.  
This program is copyrighted and EmmaSoft reserves all rights to SUPER-MAINT.
.cp

Registration for single machine use is $55 plus $2.50 S&H.  Registered 
users will recieve SUPER-MAINT on disk with printed documentation, as 
well as upgrade notices and discounted upgrades.  Only registered users 
may recieve technical support.  As long as the participating companies 
continue these offers, registered users will also receive a free 
CompuServe intro pak with $15 free on-line credit and a complimentary 
subscription to CompuServe Magazine, PLUS a substantial discount on a
subscription to Shareware Magazine.

Technical support is available from EmmaSoft by phone, mail, or our BBS, and
on CompuServe 71460,2644.
.cp

EmmaSoft accepts checks, Master Card and VISA.  (NY residents please add 
sales tax).  Send your registration to:

                        EmmaSoft
                        PO Box 238
                        Lansing, NY 14882-0238

A registration form is included on the shareware disk and should be printed
by typing "print reg.frm" at the DOS prompt.  You may register by phone with 
a MasterCard or Visa at:   (607) 533-4685

Or with your modem call our BBS.  The latest versions of our shareware are
always on the board, and you may register with MasterCard or Visa there.
Set your modem to 2400, 1200 or 300 bps, N,8,1 and dial 607-533-7072.  The
BBS is available 24 hours a day.

EmmaSoft is open 9-Noon, 1-5  Monday-Friday, and sometimes on Saturday.
*END*
%edit%

Pick Code Files  (alt-p)

SUPER-MAINT senses what drives you have on your system and lets you choose a 
drive to work on.  Next the program lists all the directories on the drive. 
To see more directories use Page Up or Page Down.  Finally, use the + and -
keys to mark or unmark files you want in your Make file.

If you have a mouse place it over the drive letter and press the left button
to choose a drive, and place it over a directory name and press the left
button to choose a directory.  To mark or unmark a file place the mouse
cursor over a choice and press the left button.

To reread drives or directories make sure you are in the drive or directory
window and press ctrl-r.

Pressing the right mouse button gets you help.
.cp

New File (reset) (alt-n)

Reset all values and buffers to start a new session.

Edit Old File    (alt-e)

Get the names of source code files from an old make file so you can add to or
delete from the list and generate a new make file.

Macros           (alt-m)

Build macros for your Make files.  There are enough macros to compile in 
three programming languages using both finished compile/link options and 
debug compile/link options.  Also sets SUPER-MAINT to build either 
EXEcutable files or LIBraries (using alt-l).
.cp

Text Editor      (alt-t)

Access the text editor you specified in the Setup menu.  SUPER-MAINT passes
the current file or a file you specify to the editor of your choice.

File Names       (alt-f)

If you are not using the default name for one or more of your files set the
name here.

.cp

SUPER-MAINT========>  (alt-s)

Make the files you picked to generate.

Choose Default File Name (alt-c)

This is not on the menu.  You automatically get it when you exit the "Pick
Code Files" choice.  If there are files on the list you may press alt-c to 
choose the one that make and other files take their name from.

At the bottom of the Make menu there is a reminder to tell you whether SUPER
MAKE is set to build executable files or to build libraries.  If you have a 
mouse you may place the mouse cursor over this reminder and press the left
button to get the "Choose Default File Name" choice.
*END*

%setup%

Colors              Set the screen colors for SUPER-MAINT.

Which               Set which types of files you want to make.

SUPER-MAINT Files   Tell SUPER-MAINT where to find your text editor, where
                    to put object and executable files, and what files and
                    directories to look for.

Name Defaults       Should SUPER-MAINT use default file names, or do you want
                    to specify each one manually?

Defaults            Compiler specific defaults

Library File Names  Set up memory model information and library names here.  

Glob/Loc            Toggle use of the Global Setup file or local ones.
.cp

                     Quick Command Keys:

              alt-q     Quick quit
              alt-v     Display Version and Serial Number
              alt-i     Information about SUPER-MAINT
              alt-b     Brand of Compiler Reminder Toggle
                 F1     Display Help
              alt-h     Display Help
              alt-c     Change Colors
              alt-w     Set Which Files To Make
              alt-s     SM_Files setup
              alt-f     Set File Names
              alt-d     Set Defaults 
              alt-l     Set Libraries
              alt-g     Toggle Global or Local Setup
              alt-r     Review Current Settings
.cp



                     Mouse Command Keys

              left      Pick a Menu choice
              right     Help
              
If you have a mouse you may exit any menu by placing the mouse cursor over 
the small box at the upper left of the window and pressing the left button.
To exit the program use the small box at the upper left of the screen.
*END*
%setupmn%

Regular     This calls the SUPER-MAINT Setup program the regular way.  You
            may choose what category or categories of settings you want to
            change.  It has the look and feel of the SUPER-MAINT Editor.

Novice      This calls the setup program in 'beginners' mode the same way 
            INSTALL.EXE did -- it walks you through each setup category, 
            one at a time, giving a short explanation of each one before 
            you access it.  You may skip categories as you go along by 
            pressing Esc at an explanation screen.
*END*

%toolbox%




Info about SM    Get information about SUPER-MAINT and EmmaSoft

Version          See the Version and your serial number.

Lang Def Files   Language Definition Files Editor

Manual           The SUPER-MAINT manual on line.  Read it on your screen
                 or press ctrl-p to print it to your printer or a disk
                 file.
.cp




Edit Help        Edit the help file (SUPER.HLP).  Mainly for adding new
                 helps to the file for use with the SUPER-MAINT Help 
                 Facility as a stand alone program.  If you edit this
                 file you MUST do it here, so the SUPER-MAINT Editor can
                 generate a help index file (SUPER.NDX).

Go To DOS        Go to DOS to run other utilities.  Type "exit <Enter>"
                 to return to SUPER-MAINT
*END*

%quit%

Yes              Leave SUPER-MAINT Editor and return to DOS

No               Return to the SUPER-MAINT Editor

*END*
%drives%

       DRIVE WINDOW


       Use Up and Down Arrows to highlight your choice.

       Press <Enter> to choose drive to show.

       Press <Esc> to go back.

       Or with a mouse:

       Place the mouse cursor on your choice and click the left button.

       Drives are read from a file.  To re-read the drives on your system
       press ctrl-r.  (Floppies with the door open are NOT added to the 
       menu.)
*END*
%file mark%

       FILES WINDOW


       Use Page Up and Page Down to See more files.

       Use Home for 1st Screen of files

       Use End for last screen of files

       Use Up and Down arrows to highlight your choice.

       Use + and - to mark files for inclusion in Make File.

       Press <Esc> to go back.

       Or with a mouse:
       Place the mouse cursor on your choice and click the left button.
*END*
%directory mark%

       DIRECTORY WINDOW       


       Use Page Up and Page Down to see more Directories.

       Use Home for 1st Screen of Directories

       Use End for last screen of Directories

       Use Up and Down arrows to highlight your choice.

       Press <Enter> to choose directory to show.

       Press <Esc> to go back.
.cp


       Or with a mouse:

       Place the mouse cursor on your choice and click the left button.


       Directories are read from a file.  To re-read the directories on your 
       system press ctrl-r.  
*END*
%choose name%



       CHOOSE A FILE TO NAME YOUR FILES

       You have set SUPER-MAINT to use a code file name as the name
       of some of your other files (such as your .exe or .com file).
   
       You must now choose a code file name to use.

       Place the menu bar over your choice and press <Esc>.

       Or with a mouse:

       Place the mouse cursor over the small box in the upper left of this
       window and click the left button.
*END*
%set macros%

Command Summary:

              Pg Down    Next Screen
              Pg Up      Last Screen
              Home       First Screen
              End        Last Screen
              Esc        Exit to Make Menu
              alt-q      Quick Quit to DOS
              alt-v      Show Version and Serial Number
              alt-r      Reset this screen according to langx.sm file
              alt-e      Edit this screen
              alt-l      Build for Linker/Lib toggle
              alt-F1     Toggle Command Help List
.cp



If you have a mouse the following commands work:

    Mouse Cursor over the little box       Left Button     Quit
    Mouse Cursor in Upper Menu Window      Right Button    Help
    Mouse Cursor Below Upper Menu Window   Left Button     Next Macro Set
    Mouse Cursor Below Upper Menu Window   Right Button    Last Macro Set
.cp

While Editing:

              alt-F1     Toggle Command Help List
              F1         Help

Make File Format:

                            Target: Dependent
                               Action

If the dependent has changed since the target was last built (or if the 
target doesn't exist), then take the action to (re)build the target.
*END*
%maker%

                   TO USE:  sm [flags] [filename]

sm        The SUPER-MAINT Make Utility

flags     Tells SUPER-MAINT how to configure.  If you want SUPER-MAINT to
          be configured the way it was the last time you used it you may
          omit the flags.  A flag is ALWAYS preceded by a dash (-) or a 
          slash (/).  There should always be a space between flags.  
          Example:  sm -1 -n filename

filename  The name of the Make file.  If you want to work on the same file
          you worked on last time you do not have to type it again.  (This
          can go before, after, or in between flags.)

Once you have set SUPER-MAINT for the Make File and option flags you want to 
use you only have to type "sm" to build a program.
.cp



Command Summary:

          -h         View help on SUPER-MAINT commands
          -hi        View information about SUPER-MAINT
          -hf        View help on Make File Construction
          -1         Use 1st Memory Model
          -2         Use 2nd Memory Model
          -3         Use 3rd Memory Model
          -d         Build program with debugging information
          -n         Build program without debugging information
          -v         View Current SUPER-MAINT settings
.cp


Command Summary (continued):

          -o         Turn off Viewing Current SUPER-MAINT settings
          -l         Look Only.  Shows commands but Doesn't Do Them
          -r         Reset all flags 
          -s         Suppresses most messages
          -i         Ignore error codes from compilers, linker, etc.
          -e         Erase Object files (to prepare for major rebuild)
          -er        Erase Object files and rebuild in one step
          -t         Touch Dependents (Make Dep File Date = Targ File Date
          -q         Quick setup of items that effect SUPER-MAINT
          -qb        Quick setup - beginner's mode
          -m         Disable Executable Directory Move
.cp

If you use the "View Current SUPER-MAINT commands" (-v) option you will be
presented with a chart showing the current command flag settings.  Line 1
show abbrieviations of the flag name.  Below that is a number which is the
actual setting.  On the third line is the current Make file name (assuming 
you entered a file name) with the .smf extension added.

HP ME DB SM IR                         ER MD TO EO LO VF R
0  2  2  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1  1  
file.smf
.cp

Here is a summary of the flags (flags without the abbrieviation above them
are unused, but reserved for future versions of SUPER-MAINT):

HP    Help                      Always shows 0
ME    Current Memory Model      1 for 1st, 2 for 2nd, 3 for 3rd (User set in
                                SUPER-MAINT Editor)
DB    Debug/Nodebug             1-Use Debug Information (User set in xxD 
                                macros)
                                2-Use No Debug Information (User set in xxND
                                macros)
SM    Supress Messages          1-Messages on 2-Messages off
IR    Ignore Return Codes       0-Stop on Error 1-Ignore errors 
.cp

MO    Exe Move Feature          0-Enable 1-Disable
TO    Touch Dependents          Always shows 0.
LO    Look Only                 Always shows 0.
EO    Erase Object Files        Always shows 0.
ER    Erase and Totally Rebuild Always shows 0.
VF    View Flags                1-On 2-Off  If you can see the chart this 
                                flag is on.
R     Reset                     Always shows 0.
*END*
%edit language defs%

Place the bar over the Language Definition File you would like to edit and
press Enter.

                         Esc    Quit.
                          F1    Help.
*END*
%Edit Language Help%

The Language Definitions editor is divided into two screens.

        Screen 1 contains the Commands Form.  This contains the eight
        compiler, linker, librarian commands at the top of a Language 
        Definition file.

        Screen 2 has the Helps Form.  There are 20 lines that you may
        type help information for this language on.  These lines will
        be the help screens for defining macros.  You may put anything
        you want on them.

See chapter 4 of the manual for an in-depth description of a Language
Definition form.
*END*
%editing help%

WHY EDIT SUPER.HLP?

There are two reasons you may want to edit SUPER.HLP.

1.  Although there is complete help provided as shipped you may want
    to add to or alter some of the text to suit your preferences.

2.  The SUPER-MAINT Help Facility can be used as a separate utility
    for anything you want it for.  You could set up several help
    screens for DOS, for example, and use it from the command line.
    The command syntax is smh[key_word].  For example, if you had a
    section called DIR you would type:  "smh DIR".  Remember that
    you should NOT type the percent signs, and the keywords ARE case
    sensative.
.cp

PLEASE REMEMBER:  

1.  If you give this shareware to someone else, or distribute it in any
    way you MUST pass it on in its original form, either on an exact copy
    of the distribution disk you recieved it on, or the original .zip
    file (as distributed on bulletin boards).  This includes these 
    super.hlp and super.ndx files.

2.  This is copyrighted material.

3.  If you think help should be added to the program please contact 
    EmmaSoft.  All user suggestions for enhancements to our programs
    are seriously considered, and we have included many of them in our 
    products.
.cp

If you change the help file you must follow a certain format.  We can 
describe it here, but not illustrate it, as an illustration would inter-
fere with the workings of this help file.  Help files are in ascii format
and may be edited with any text editor that saves files in pure ascii 
format.  YOU MUST FOLLOW THESE DIRECTIONS CAREFULLY, or the SUPER-MAINT 
editor could crash, with no survivors.  To be on the safe side, make 
copies of SUPER.HLP and SUPER.NDX before starting.  If things don't work
out you can always restore these old files.

It would be a good idea to print out a page or two of SUPER.HLP before
trying this, so you can see a working example of how the help file is 
constructed.
.cp 

HELP CODES:

A help section starts with a key word or phrase.  This must be less than
23 characters long, and has a percent sign at the beginning and end of the
word or phrase.  Ex:  [percent symbol]My Help[percent symbol].

Screens in a help are divided by the divider symbol ([dot]cp 
where [dot] = .)  Ex:     [dot]cp

Help sections always finish with the word END in capital letters with
an asterick (*) at the beginning and end of the word.  
Ex:  [asterick]END[asterick]

Help start, divider, and end codes must start at the beginning of a line.

You may have a maximum of 250 help subjects in SUPER.HLP.
.cp

HELP TEXT FORMAT:

Help text for SUPER-MAINT ***MUST*** follow a certain format in order to 
avoid causing serious problems.  

Between two help codes you may type NO MORE THAN 19 lines of help.  As 
shipped SUPER-MAINT's help screens start with ablank line to make the screen 
more readable.  A blank line is counted as a line.

Each line may be NO MORE THAN 76 characters wide.
.cp

The help functions require two files, SUPER.HLP and SUPER.NDX.  The latter
is an index that tells SUPER-MAINT hoe to read the help file.  IF YOU CHANGE
OR ADD TO SUPER.HLP YOU MUST GENERATE A NEW INDEX.  This is automatically
done if you change help ONLY using the "Edit Help" choice in the Toolbox
menu.  What happens here is that SUPER-MAINT calls your text editor and 
passes it the name of the help file.  When you exit your editor a new index
is automatically generated.  If you get an error message you should restore
the old versions of your help files.

If you follow the above formatting instructions you shouldn't have any 
problems.  If you must have an altered help screen and you can't get this
to work you may send your ascii file on a floppy disk to EmmaSoft and
we will get it to work.  We charge $1 per help topic in your file plus
$2 return postage for this.  Please include payment with your disk.
*END*
%make files%

Below is an example make file (sample.smf) for two source code modules, 
sample.c and sample1.c, included with this package.  The comments are 
included right in the file:

Here are the two macro sets used by this particular file (we are only
compiling in one language (C), so we use that set of macros and the
linker set of macros.  Chapter 3 explains a macro set.
.cp

First Macro Set for Language 1--

L1CO = -c
L1M1 = -AS
L1M2 = -AM
L1M3 = -AL
L1ND = 
L1D = -Zi -Od
L1F1 = 
L1F2 = 
.cp

Second Macro Set for Linker--

LNCO = 
LNM1 = 
LNM2 = 
LNM3 = 
LNND = /E
LND = /CO
LNF1 = /NOE
LNF2 = /ST:25000
.cp

Special Macro User Typed in Manually--

CPY = sample.c+sample1.c

The TNAMES macro--

TNAMES = 
        SAMPLE.OBJ&
        SAMPLE1.OBJ

As long as notes don't have any of the symbols used in macros or action
blocks in them, they don't need any special symbols or formatting.  Also,
NOTES MUST NOT BE ON THE SAME LINE WITH A MACRO OR ACTION BLOCK.
.cp

Action Blocks:

SAMPLE.OBJ:  C:\DUMP\SAMPLE.C
         CL $(L1)  C:\DUMP\SAMPLE.C

SAMPLE1.OBJ:  C:\DUMP\SAMPLE1.C
         CL $(L1)  C:\DUMP\SAMPLE1.C

sample.txt: blank
         copy $(CPY) sample.txt

The above action block deserves special notice for several reasons.  It
is an example of an action block you might put in manually (the SUPER
MAKE Editor does not generate action blocks using DOS commands).
.cp

       1.  It uses a DOS command on the action line.  SUPER-MAINT
       supports these DOS commands (cd, chdir, chkdsk, cls, comp,
       copy, del, dir, diskcomp, diskcopy, fc, find, format, mem,
       mkdir, md, print, ren, remdir, rd, type, xcopy).

       2.  A Placebo has been used for the dependent.  This is any
       word that doesn't represent an actual file.  This allows
       SUPER-MAINT to execute the command on the second line of the
       action block.  The first line of an action block MUST ALWAYS
       have a target and a dependent.  The target is the file to be
       created, the dependent is the file(s) it is created from.  You
       may always use a placebo for the dependent.  If you do the 
       command line will ALWAYS be executed, each time you make your
       program.
.cp

       3.  No path was specified for the dependent.  SUPER-MAINT will
       look for the dependent in the current (default) directory.

       4.  The target is not an object file, or an .exe, .com, or .bat
       file.  SUPER-MAINT generates a message that it doesn't know where
       you want the target file, and that it is putting it in the 
       current (default) directory.

       5.  A user defined macro has been used (CPY).  The other way to
       do this would be to put the whole command right on the command
       line.  Example -- copy sample.c+sample1.c sample.txt
       Either method is acceptable.  By the way you can add commands
       directly to the command line on command lines that use macro
       sets such as (L1).  Just type them after the (L) macro.  You can
       also put user defined macros there if you want.  The only limit
       is that the whole command line, including whatever is contained in 
       macros may not exceed 128 characters.
.cp

SAMPLE.EXE: $(TNAMES)
         LINK $(LN)  @SAMPLE.LNK


Action blocks MUST be two lines with no blank lines in between them, as 
shown above.
.cp

The only trouble with using a LOT of notes is that it slows down the
working of SUPER-MAINT.  So the rules for notes are

       Always put notes on their own line in the file.  For
       clarity's sake skip a line between notes and macros or
       action blocks.

       Never use symbols in notes that are used in macros or
       action blocks (equal sign, colon, dollar sign, etc).

       Be sparing with your notes.

If your ultimate goal is to create a program the .smf file will link
with @xxxxxxxx.lnk.  This is a message to SUPER-MAINT to use the .res
file for the memory model you specified (.lrs, .lrm, .lrl).  When 
compiling a library file the .lbr file is explicitly used in the make
file and by the maker.
*END*
%libset%

Programmer's SUPER-MAINT can handle 3 memory models at one time.  If 
you use memory models you should define the ones you use here, and
keep separate lists of libraries for each model.  Alternatively, you 
may set up all three for the same model, but keep different library
lists in each one, giving you a quick way to change from one set of 
libraries to another.

When shipped Memory Model 1 is the small model, 2 the medium model, and
3 is the large model.  You may store up to 11 libraries here.  Please
note that some compilers require the full path for a library.  Check your
compiler manual for this information.
*END*
