home *** CD-ROM | disk | FTP | other *** search
/ So Much Shareware 1 / SoMuchSharewareV1_1991.iso / util1 / btx101.exe / lha / BTX.DOC < prev    next >
Text File  |  1991-01-30  |  57KB  |  1,374 lines

  1.             ┌─────────┐
  2.       ┌─────┴───┐     │              (tm)
  3.     ──│         │o    │──────────────────
  4.       │   ┌─────┴╨──┐ │  Association of
  5.       │   │         │─┘  Shareware
  6.       └───│    o    │    Professionals
  7.     ──────│    ║    │────────────────────
  8.           └────╨────┘    MEMBER
  9.                                                           BTX v1.01
  10.                                                A Batch File Utility
  11.  
  12.   DESCRIPTION
  13.  
  14.   BTX is a switch-driven, menu utility ideal for systems consultants
  15.   that want fast AND simple batch file menuing or for software authors
  16.   that are looking for a way to tie modules together to give large
  17.   independent systems a more contiguous feel.  BTX is also very
  18.   appropriate for anyone who is already using batch files to automate
  19.   their day-to-day computer tasks.
  20.  
  21.   Unlike other full-blown menu systems, BTX can be run from the
  22.   command line without external data file support.
  23.  
  24.   BTX floods the screen and produces a window containing a number of
  25.   options.  Users select options using the up/down arrow keys,
  26.   pressing a single hot key or via a MS compatible mouse. BTX exits
  27.   with ERRORLEVELs equal to the number of item selected.
  28.  
  29.   What makes BTX unique is that you can produce a darn attractive menu
  30.   directly from the DOS prompt without data files to lose or slow you
  31.   down.  However, BTX can use external data for building complex menu
  32.   systems, complete with context sensitive help.
  33.  
  34.   BTX can be fully configured to carry your name/your product's name
  35.   on the header line as will as in F1 help screens.  You can give your
  36.   users the impression that they are using YOUR program, not BTX.
  37.  
  38.   Best of all, the full BTX executable is under 50K.  After you
  39.   configure it, this can be reduced to just under 25K using a
  40.   compressor such as LZEXE.  This means that BTX fits well on 360K
  41.   floppies; an excellent way to tie everything together.
  42.  
  43.   BTX is designed to run in 80 column, 25 line mode.  I considered
  44.   supporting 43/50 modes but decided against it for now.  If you are
  45.   interested in a version like this, please make your opinion known.
  46.  
  47.  
  48.   HISTORY
  49.  
  50.   A few years back, I wrote a program called BATMEN.  This was a
  51.   simple version of BTX that had much of the same look and feel. I
  52.   had written a golf stats analysis product called DBK that used
  53.   BATMEN as the front-end.  The problem was, BATMEN did not have all
  54.   of the same control features found in DBK.  One of the most obvious
  55.   was the lack of mouse support.  As I began to rip apart BATMEN, I
  56.   realized it would be just as fast to start over.  Thus, BTX was
  57.   created.
  58.  
  59.   If you do not know what BATMEN is, then ignore references to this
  60.   product.  You DO NOT need BATMEN to use or understand BTX.
  61.  
  62.  
  63.   NOTE TO BATMEN USERS
  64.  
  65.   BTX offers all the features of BATMEN but the switch set is not 100%
  66.   compatible.  A few of the previous switches had to be changed to
  67.   circumvent ambiguity.  Specifically, you will have to make these
  68.   changes to your BATMEN batch files if you want to use BTX in place
  69.   of BATMEN:
  70.  
  71.          BATMEN BTX   DESCRIPTION
  72.          ┌────┬─────┬─────────────────────────────────────┐
  73.          │ /b │ /bt │ border type                         │
  74.          │ /m │ /m" │ read menu items from text file      │
  75.          │ /h │ /hd │ text string used as screen header   │
  76.          │ /? │ /?" │ text file containing help lines     │
  77.          │ /! │ /st │ Show stats 1=RAM  2=Drive space     │
  78.          │ /# │ /st │                                     │
  79.          │ /p │ /p? │ Password protect menus              │
  80.          └────┴─────┴─────────────────────────────────────┘
  81.  
  82.   SAMPLES.COM contains lots of BAT files that demonstrates the various
  83.   command line switches.  Run SAMPLES if you would like to see how
  84.   to use these.
  85.  
  86.  
  87.   SWITCHES
  88.  
  89.   The next few paragraphs is targeted at individuals that are
  90.   not familar with switch based utilities.  If you are comfortable
  91.   with programs like ZIP and LHarc, please skip/skim ahead to the
  92.   section that beings with SWITCHES SORTED A to Z.
  93.  
  94.   BTX is heavily laden with features.  All of these are available
  95.   via "the switch".  A switch is something that you put after the
  96.   program name.  For example, DIR /w displays a multi-column format
  97.   of files, right?  The /w is a switch.  Some programs like to use
  98.   dashes to denote switches.  However, if you try DIR -w, you get
  99.   nuthin!  All BTX switches begin with the forward slash.  After
  100.   the slash comes one or more characters to tell BTX what to do
  101.   with that menu.  How about an example:
  102.  
  103.   BTX /info
  104.  
  105.   The /info switch tells you what version of BTX you are running,
  106.   whether or not it has been installed, and my current mailing
  107.   address.
  108.  
  109.   Here are two more for you to try:
  110.  
  111.   BTX /sw1      BTX /sw2
  112.  
  113.   These will give you a complete listing of available switches IF
  114.   BTX has not been installed using the /config switch.
  115.  
  116.  
  117.   YOUR FIRST MENU
  118.  
  119.   Making menus with BTX is darn easy.  Here's all there is to it.
  120.   Enter BTX on the DOS line followed by a few words.  Make sure to
  121.   separate each word with a space and end each word with a capital
  122.   letter.  Observe:
  123.  
  124.   BTX OneO TwoT tHreeH FourF
  125.  
  126.   The capital letters are used to define hot keys.  A hot key is
  127.   a fast way to select items in BTX menus.  You will notice that
  128.   the hot keys in this menu will be OTH and F.  This means that
  129.   when the menu is visible, these keys can be used to select an
  130.   item.  The third item uses a capital H because the T was already
  131.   used by the Two option.
  132.  
  133.   In this example, no switches were used.  Remember, a switch must
  134.   be initiated with a forward slash.  It can appear anywhere in the
  135.   command line, before, during or after the menu items.
  136.  
  137.   If you enter this one, you will see a box in the relative center
  138.   of your screen containing One, Two, tHree and Four.  The capital
  139.   letter will be highlighted in each item.  To navigate within, use
  140.   the up/down arrow keys, home or end to move the menu pointer.
  141.   When the pointer rests on top of the item that you wish to select,
  142.   press ENTER.  The faster method of selecting items is with the
  143.   hot keys.  To select item Four, all you do is press F.  The other
  144.   way, the minimum number of keystrokes would be 2 (END and ENTER).
  145.  
  146.  
  147.   MOUSE CONTROL
  148.  
  149.   If your desk has room for one of the tailed creatures, you will
  150.   be able to control BTX menus this way.  It must be a Microsoft
  151.   compatible mouse with the appropriate mouse driver loaded.  If BTX
  152.   detects a mouse, you will see a very small dot to the immediate
  153.   right of the clock in any of the BTX menu screens.
  154.  
  155.  
  156.   SWITCH BASICS
  157.  
  158.   Moving right along, now let's try a menu call that uses a switch.
  159.   Going back to the first example, you may have noticed that you
  160.   were unable to simply pop the ESC key to exit.  We can fix that.
  161.  
  162.   By including the /esc switch, we tell BTX to allow exiting via
  163.   ESC or right clicking the mouse.  To do this, all we have to do
  164.   is enter the same BTX command again, this time inserting/appending
  165.   the /esc switch.
  166.  
  167.   BTX OneO TwoT tHreeH FourF /esc
  168.  
  169.   There, now the menu will respond to the ESC key.  Remember, BTX
  170.   cares not about where you put your switches.  Just be sure to
  171.   include the forward slash.  In other words, this BTX call would
  172.   produce the same menu.
  173.  
  174.   BTX OneO TwoT /esc tHreeH FourF
  175.  
  176.   Think of it this way.  If it doesn't begin with a / then it's
  177.   going to appear in your menu!
  178.  
  179.  
  180.   SWITCH ARGUMENTS
  181.  
  182.   Some switches require only the switch while others require a value
  183.   to modify the function of the switch.  For example, the /esc switch
  184.   is used by itself.  It's a binary type of switch - either it's OFF
  185.   or ON.  But suppose you want to change the color of something in
  186.   a menu.  This is when you would use a switch argument.
  187.  
  188.   There are three types of arguments.  Numerical, Message and File.
  189.  
  190.  
  191.   NUMERICAL ARGUMENTS
  192.  
  193.   To modify a switch, you will follow the switch with a number or
  194.   some additional characters.  The /bt switch is one that requires
  195.   a numerical argument.  /bt sets the border type.  Because there
  196.   is more than one type, you need to tell BTX which one to use.
  197.  
  198.   BTX OneO TwoT tHreeH FourF /bt1
  199.                                 └─────── use border type 1
  200.  
  201.   Using /bt1, your menu will appear as:
  202.  
  203.                              ┌───────┐
  204.                              │ One   │
  205.                              │ Two   │
  206.                              │ tHree │
  207.                              │ Four  │
  208.                              └───────┘
  209.  
  210.   By default, BTX does not use any border characters.  When using
  211.   switches, just be sure to include the necessary argument directly
  212.   after the switch itself.  NEVER put a space between the switch
  213.   and the argument!
  214.  
  215.  
  216.   MESSAGE ARGUMENTS
  217.  
  218.   A message argument, as you might guess, is used to produce a screen
  219.   based message.  Headers and footers are the best examples of this
  220.   type of switch.  Suppose that you wanted a menu to use a person's
  221.   name in the header line.
  222.  
  223.   BTX OneO TwoT tHreeH /hdFred's_Menu
  224.  
  225.   In this example, the top line would include Fred's Menu.  You must
  226.   use underscores to connect words, otherwise BTX would not know that
  227.   it's all part of the same switch.
  228.  
  229.   FILE ARGUMENTS
  230.  
  231.   The last type is the file argument.  This comes into play when you
  232.   will be using external data files to supply information to your
  233.   menus.  For example, suppose that you had a menu that contained
  234.   menu selections that required several words to describe.  Without
  235.   using an external data file, you might very well run out of command
  236.   line space.  Remember, by default, DOS only recognizes the first
  237.   128 characters.
  238.  
  239.   Therefore:
  240.  
  241.   BTX Defragment_drive_after_deleting_all_BAK_filesD eXitX
  242.  
  243.   IF you wanted to get this wordy with each menu description, you
  244.   can easily see how quickly the 128 character limit is consumed.
  245.   Here's all you would do to handle this problem:
  246.  
  247.   BTX /m"C:\DAT\MENU.DAT"
  248.  
  249.   When BTX runs, it will look in C:\DAT for a text file called
  250.   MENU.DAT.  This file should contain one menu item per line, up to
  251.   a maximum of 10 items.  Here's what the MENU.DAT might look like:
  252.  
  253.             Defragment_drive_after_deleting_all_BAK_filesD
  254.             Backup_all_modified_files_to_tapeB
  255.             run_antiVirus_detection_programV
  256.             eXitX
  257.  
  258.   Because these are being loaded from disk, the underscores may be
  259.   removed.  However, you must still end each one with a character that
  260.   will be used as a hotkey.  Remember to start each item in column 1
  261.   and to left justify each.  By default, BTX will center each item.
  262.  
  263.  
  264.   REMOVING HOT KEYS
  265.  
  266.   Don't like hot keys?  Fine.  Just enter a trailing character
  267.   that DOES NOT appear in the menu item.
  268.  
  269.   BTX One! Two@ Three# Four$
  270.  
  271.   To be perfectly honest, this does not actually remove the hot
  272.   key, it just hides it.  In this instance, pressing ! would select
  273.   item One, @ would select Two and so on.
  274.  
  275.   There!  Now you're a BTX pro.  See, BTX is very simple.  All
  276.   you have to do is decide how you want the menus to appear, then
  277.   use the appropriate switches.
  278.  
  279.   Of course, BTX will select the appropriate default colors based on
  280.   type of monitor detected.  However, you can be the final judge
  281.   of how each menu appears.
  282.  
  283.   Once you have worked with BTX for a while, you will soon learn that
  284.   using command line switches gives you complete control over the
  285.   appearance and performance of your menus.
  286.  
  287.  
  288.   HOW BTX MENUS WORK
  289.  
  290.   Is it enough to just do a BTX OneO TwoT tHreeH FourF eXitX?
  291.   No, it sure is not.  DOS just doesn't let you off the hook
  292.   that easy.  In order to really use BTX menus, you need to
  293.   understand, just a little bit, what a batch file is.
  294.  
  295.   When you run BTX, you select a menu item.  BTX then exits back
  296.   to DOS, telling it which one you wanted.  It is then up to the
  297.   batch file to ensure that the user's request is satisfied.
  298.  
  299.   You're never going to build a menu with OneO TwoT tHreeH in it,
  300.   so let's use something more real life.
  301.  
  302.   BTX Run_123R Backup_all_WKS_filesB eXitX
  303.  
  304.   This menu allows the user to run a spreadsheet or copy all WKS
  305.   files to a floppy drive.  (Note that spaces WITHIN a menu item
  306.   are connected with an underscore.)
  307.  
  308.   To begin, you should create a batch file called BACKUP.BAT
  309.   If you do not have a text editor, use TED.COM
  310.  
  311.   TED BACKUP.BAT
  312.  
  313.   Enter these lines (everything between the dashes)
  314.   --------------------------------------------------------------
  315.   echo off
  316.   cls
  317.  
  318.   :main
  319.   BTX Run_123R Backup_all_WKS_filesB eXitX
  320.   if errorlevel 3 goto end
  321.   if errorlevel 2 goto bakup
  322.   if errorlevel 1 goto ss
  323.   goto main
  324.  
  325.   :ss
  326.   cd\lotus
  327.   123
  328.   goto main
  329.  
  330.   :bakup
  331.   cd\lotus
  332.   copy *.wks A:
  333.   goto main
  334.  
  335.   :end
  336.   --------------------------------------------------------------
  337.           ┌──────────────────────────────────────┐
  338.   :main   │              ┌─────────────────────┐ │
  339.   BTX Run_123R Backup_all_WKS_filesB eXitX ─┐  │ │
  340.   if errorlevel 3 goto end <────────────────┘  │ │
  341.   if errorlevel 2 goto bakup <─────────────────┘ │
  342.   if errorlevel 1 goto ss <──────────────────────┘
  343.   goto main
  344.  
  345.   This is the only tricky part to remember.  The ERRORLEVEL
  346.   statements must run in descending order.  If you have 7 items,
  347.   then your first errorlevel will be IF ERRORLEVEL 7 ...
  348.  
  349.   Everything else is very straight-forward.  All you would do
  350.   is enter whatever sequence of commands necessary to do whatever
  351.   the menu implies.  In the case of this one, what commands would
  352.   the user normally enter to load 123?  Just put those after the
  353.   :ss statement label.  Simple.
  354.  
  355.   If you are not sure of this, pick up a copy of PC-Magazine's DOS
  356.   Power Tools. They have lots of great pointers on how to become a
  357.   batch file fool.
  358.  
  359.  
  360.   SWITCHES SORTED A to Z
  361.  
  362.   Here is a list of the available switches.  Following this
  363.   and the next listing of the switches, each is fully described.
  364.   Be sure to run SAMPLES.COM if you would prefer to learn by
  365.   example.  SAMPLES is a self-extracting file that contains
  366.   over 30 BAT files that demonstrate most of the switches.
  367.  
  368.         /*     Save screen after x secs               OFF
  369.         /?     text file containing help lines        OFF
  370.         /a     screen attribute of the flood char      18
  371.         /ba    border attribute                 112 or 30
  372.         /bt    border type (0=none 1=sngl 2=db...)      0
  373.         /c     Color attribute of normal text   112 or 30
  374.         /d     Delay used for screen clearing          10ms
  375.         /e     How screen clears on exit                0
  376.         /esc   Allow ESC'ing from menus               OFF
  377.         /f     flood character                        178
  378.         /fa    footer    "                            112
  379.         /fhf   F1 help file                          NONE
  380.         /fm    F1 message attribute             112 or 30
  381.         /ha    header    "                            112
  382.         /hd    text string used as screen header      OFF
  383.         /hka   hot key attribute                      112
  384.         /hkd   Hot key delay after entry (in ms)       50
  385.         /hkp   Hot key pause.  Waits for <CR>         OFF
  386.         /info  Shows version #, type and my address
  387.         /m"    read menu items from text file         OFF
  388.         /mti   menu title eg. MAIN MENU              NONE
  389.         /mtj   menu text justification                  C
  390.         /ncc   Turn control breaking OFF (No Cltr-C)  OFF
  391.         /o     select this item on autoexit (/w)       NA
  392.         /p?    Password protect menu items            OFF
  393.         /pb    pad character (usually 32)              32
  394.         /s     sound on exit                          OFF
  395.         /sba   Stat box attribute                      75
  396.         /sf    footer text  (def=Use Up/Dn keys...)
  397.         /sha   attribute of the shadow character        3
  398.         /shc   shadow character                       176
  399.         /shdw  shadow the menu                        OFF
  400.         /sm    side margins                             2
  401.         /st    Show stats 1=RAM  2=Drive space        OFF
  402.         /sw1   Shows switch screen #1
  403.         /sw2   Shows switch screen #2
  404.         /t     text attribute of hilited menu item     15
  405.         /tt    Time type (def=13:00:01)                ON
  406.         /w     wait this many secs, then lauch /o     OFF
  407.         /~     Twinkle screen using this delay        OFF
  408.  
  409.   This version of the switch is list designed for keyboard reference.
  410.  
  411.   ┌───────────────────STANDARD BATMEN SWITCH SET────────────────────────────┐
  412.   │SWITCH   FUNCTION                          DEFAULT       RANGE           │
  413.   ├────┬──────────────────────────────────────────────┬─────────────────────┤
  414.   │ /f │  flood character                       178   │ /f33 - /f219        │
  415.   │ /a │  screen attribute of the flood char     18   │ /a1  - /a127        │
  416.   │ /t │  text attribute of hilited menu item    15   │ /t1  - /t127        │
  417.   │ /c │  Color attribute of normal text  112 or 30   │ /c1 .. c/127        │
  418.   │ /bt│  border type (0=none 1=sngl 2=db...)     0   │ /b0 .. /b6          │
  419.   │ /o │  select this item on autoexit (/w)           │ /o1 .. /omax_items  │
  420.   │ /w │  wait this many secs, then lauch /o    OFF   │ /w1  - /w32767      │
  421.   │ /s │  sound on exit                         OFF   │ /s50 - /s255        │
  422.   │ /m"│  read menu items from text file        OFF   │ /m"C:\menu1.dat     │
  423.   │ /hd│  text string used as screen header     OFF   │ /hMY_OWN_MENU       │
  424.   │ /? │  text file containing help lines       OFF   │ /?C:\help.dat       │
  425.   │ /e │  How screen clears on exit               0   │ /e0 .. /e9          │
  426.   │ /d │  Delay used for screen clearing         10ms │ /d0 .. /d100        │
  427.   │ /* │  Save screen after x secs              OFF   │ /*1 .. /*600        │
  428.   │ /st│  Show stats 1=RAM  2=Drive space       OFF   │ /st1 .. /st4        │
  429.   │ /p?│  Password protect menu items           OFF   │ /pCODE (4 chars max)│
  430.   │ /~ │  Twinkle screen using this delay       OFF   │ /~1 .. /~5000       │
  431.   ├────┴──────────────────────────────────────────────┴─────────────────────┤
  432.   │ BTX - EXPANDED SWITCH SET                           SAMPLES/RANGES      │
  433.   ├──────┬────────────────────────────────────────────┬─────────────────────┤
  434.   │ /ba  │ border attribute                 112 or 30 │                     │
  435.   │ /ha  │ header    "                            112 │                     │
  436.   │ /fa  │ footer    "                            112 │                     │
  437.   │ /fm  │ F1 message attribute             112 or 30 │                     │
  438.   │ /mtj │ menu text justification                  C │ L,R or C  eg. /mtjL │
  439.   │ /mti │ menu title eg. MAIN MENU              NONE │ /mtMAIN_MENU        │
  440.   │ /pb  │ pad character (usually 32)              32 │                     │
  441.   │ /sf  │ footer text  (def=Use Up/Dn keys...)       │                     │
  442.   │ /sm  │ side margins                             2 │                     │
  443.   │ /hka │ hot key attribute                      112 │                     │
  444.   │ /shdw│ shadow the menu                        OFF │                     │
  445.   │ /shc │ shadow character                       176 │                     │
  446.   │ /sha │ attribute of the shadow character        3 │                     │
  447.   │ /esc │ Allow ESC'ing from menus               OFF │                     │
  448.   │ /ncc │ Turn control breaking OFF (No Cltr-C)  OFF │                     │
  449.   │ /tt  │ Time type (def=13:00:01)                ON │ 1-16                │
  450.   │ /sba │ Stat box attribute                      75 │ /sba112             │
  451.   │ /hkp │ Hot key pause.  Waits for <CR>         OFF │ /hkp                │
  452.   │ /hkd │ Hot key delay after entry (in ms)       50 │ /hkd500   1000=1sec │
  453.   │ /fhf │ F1 help file                          NONE │ /fhf"f1.dat"        │
  454.   └──────┴────────────────────────────────────────────┴─────────────────────┘
  455.  
  456.  
  457. BTX SWITCH EXPLANATIONS
  458.  
  459. Each switch uses this format to define what it does, what to expect
  460. as a default, what kind of range it has and so on.  What follows is
  461. addition information and tips on how and when to use the switch.
  462.  
  463. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  464. │        │        │         │                                        │
  465. └───╥────┴───╥────┴────╥────┴───╥────────────────────────────────────┘
  466.     ║        ║         ║        ╚═══What does the switch do?
  467.     ║        ║         ╚══What BTX will use unless switched otherwise
  468.     ║        ╚════What type of values/characters follow the switch
  469.     ╚═════How the switch should appear - without arguments
  470.  
  471. On some of the defaults, you may see 30/112.  This means that color
  472. monitors will use color attribute 30, monochrome will receive 112.
  473.  
  474. If you would like to see more examples, be sure to run SAMPLES.COM
  475.  
  476.  
  477.  
  478. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  479. │  /*    │ 1..600 │   OFF   │  Save screen after x secs              │
  480. └────────┴────────┴─────────┴────────────────────────────────────────┘
  481.  
  482. To keep you monitor is showroom condition, use the /* switch to
  483. blank the screen after a specified number of seconds of keyboard
  484. inactivity.  (Of course, the best way to keep your monitor in showroom
  485. condition is to turn it off when not in use!)
  486.  
  487. SAMPLE
  488.                 BTX This1 That2 The_Other3 /*30
  489.  
  490. This will clear the screen after 30 seconds.  A cursor will then
  491. begin bouncing around the screen to let you know that all is well.
  492. To redisplay the menu, press any key.  Every 30 seconds, the same
  493. bouncing cursor will reappear.
  494.  
  495. NOTE:  Screen save will not work when your use the /w switch
  496.  
  497.  
  498. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  499. │  /?    │ file   │   OFF   │  Specify external help file            │
  500. └────────┴────────┴─────────┴────────────────────────────────────────┘
  501.  
  502. DOS only allows 128 characters on the command line.  This switch
  503. allows you to place help lines of up to 79 characters for each
  504. of the menu items.  Here's how it works:
  505.  
  506. Create a text file that contains one line of explanation for each of
  507. your menu items.  When BTX loads, each line will be displayed when the
  508. menu pointer is resting on that item.
  509.  
  510. SAMPLE
  511.  
  512.         BTX WordW SpreadsheetS Mean18M /?"\HELP.DAT"
  513.  
  514. If HELP.DAT were created and saved in the root directory as...
  515.  
  516. Edit/print a letterC
  517. Crunch some numbersC
  518. Play some golfC
  519.  
  520. Each time the up/down arrow key was pressed, one of these lines
  521. would appear on the 25th line of the BTX screen.  Help lines can
  522. be justified by ended each line with a character code of L,R or C.
  523. In the above example, all lines would be centered.
  524.  
  525.  
  526. For more advanced help, see switch /fhf
  527.  
  528.  
  529. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  530. │  /a    │  0..15 │    18   │  Screen flood color attribute          │
  531. └────────┴────────┴─────────┴────────────────────────────────────────┘
  532.  
  533. Flooding means filling the screen with the same character.  By
  534. default, BTX "floods" with ASCII character #178, which is a ▓.  You
  535. can flood with whatever you want, including a space, which effectively
  536. leaves you with a blank background.
  537.  
  538. The default flood color is green on blue.  This sounds nasty but with
  539. character attribute 178, it's actually very easy on the eyes.
  540.  
  541. SAMPLE
  542.  
  543.         BTX One1 Two2 Three3 /a12  (floods the screen RED)
  544.  
  545. The look of the flood is also based on what character is used.  For
  546. example, you could really get radical and do a:
  547.  
  548.         BTX One1 Two2 Three3 /a77 /f220
  549.  
  550. This would be an excellent menu to keep others away from your monitor.
  551.  
  552. See /f to set flood character.  Try using RGB.EXE and FLD.EXE for
  553. some more help when designing menus.
  554.  
  555.  
  556. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  557. │  /ba   │  0..15 │  30/112 │  Color attribute of the menu border    │
  558. └────────┴────────┴─────────┴────────────────────────────────────────┘
  559.  
  560. All menus have borders.  By default, the menu border color is the
  561. same as the normal (unhighlighted) text.  To change this use the
  562. /ba switch.
  563.  
  564. SAMPLE
  565.         BTX OneO TwoT tHreeH /ba19 /bt2
  566.  
  567. This would give you cyan on blue - which would be darn acceptable
  568. on a color system.  However, a monochrome might not look as nice
  569. because the normal text is set to 112 (reverse video).  Anytime
  570. switches are used to adjust color, be aware that you are explicitly
  571. setting them.  In other words, make sure that menus are tested on
  572. both mono and color systems if they will be used on both.
  573.  
  574. By default, BTX will choose colors that are reasonably agreeable
  575. on both color and monochrome monitors.
  576.  
  577.  
  578. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  579. │  /bt   │  1..6  │    5    │  Type of border for the menu           │
  580. └────────┴────────┴─────────┴────────────────────────────────────────┘
  581.  
  582.    1 ┌─┐    2 ╔═╗   3  ╓─╖    4 ╒═╕    5  none    6 █▄▄▄▄█
  583.      └─┘      ╚═╝      ╙─╜      ╘═╛                 █    █
  584.                                                     █▄▄▄▄█
  585.  
  586. Simple enough, this defines which box drawing characters are used
  587. to surround your menu choices.
  588.  
  589. SAMPLE
  590.               BTX OneO TwoT tHreeH /bt3
  591.  
  592. This will produce a menu that uses single-top, double-side border
  593. characters.
  594.  
  595.  
  596. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  597. │  /c    │ 1..127 │  23/112 │  Color attribute of normal text        │
  598. └────────┴────────┴─────────┴────────────────────────────────────────┘
  599.  
  600. Normal text are the items in a menu that are not currently selected.
  601. In other words, a 5 item menu will always have 4 items that use
  602. the normal color attribute.
  603.  
  604. By default, color monitors will use (23) lightgray on blue, monochrome
  605. will see black on lightgray (112).
  606.  
  607. See switch /t to change color attribute of the highlighted item.
  608.  
  609.  
  610. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  611. │/config │  NONE  │   N/A   │  Installs BTX for registered users     │
  612. └────────┴────────┴─────────┴────────────────────────────────────────┘
  613.  
  614. If you have registered, you are invited to use the /config option.
  615. Before you do, you should create a text file that is 9 lines by 60
  616. characters wide.
  617.  
  618. SAMPLE install file:
  619.  
  620.              For more information about SCUDBLASTERS
  621.              please contact me at:
  622.  
  623.                  PO BOX 512 * Your City, ST 72382
  624.  
  625.              Telephone support is available to all
  626.              registered users.  Free free to call
  627.              anytime to gripe.
  628.                                           Wow!
  629.  
  630. Remember, the file must be pure text that has less than 10 lines,
  631. and less than a max of 60 characters.  Any characters that extend
  632. beyond column 60 will be ignored.
  633.  
  634. Also, decide on what header and footer defaults you would like BTX
  635. to use each time you run it.  This allows you to bypass having to
  636. use the /hd and /sf switches in the command line.
  637.  
  638.  
  639. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  640. │  /d    │ 0..200 │    0    │  Delay used for screen clearing on exit│
  641. └────────┴────────┴─────────┴────────────────────────────────────────┘
  642.  
  643. When using any of the /e options, you may also wish to include a
  644. /d parameter to adjust the speed with which the screen clears.
  645.  
  646. SAMPLE
  647.         BTX This1 That2 The_Other3 /e1 /d5
  648.         or
  649.         BTX this1 that2 eXitX /e8 /d5   ( fast dissolve )
  650.  
  651.  
  652. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  653. │  /e    │  0..9  │    0    │  How the screen is cleared             │
  654. └────────┴────────┴─────────┴────────────────────────────────────────┘
  655.  
  656. Normally, when an item is selected and BTX exits back to DOS, the
  657. screen is cleared.  The default is to clear it immediately and quickly.
  658. However, should you feel that your menus require some variety, try
  659. one of these other methods for screen clearing.
  660.  
  661.     ┌SWITCH  ACTION────────────────────────────────────────────┐
  662.     ││  1    starts at center and grows outward                │
  663.     ││  2    starts at left and right edges and moves inward   │
  664.     ││  3    opposite of e2                                    │
  665.     ││  4    starts and top and clears down                    │
  666.     ││  5    opposite of 4                                     │
  667.     ││  6    clears from left to right                         │
  668.     ││  7    opposite of 6                                     │
  669.     ││  8    dissolve                                          │
  670.     ││  9    does_nothing (no clear screen)                    │
  671.     └┴─────────────────────────────────────────────────────────┘
  672.  
  673. Try running EXITS.BAT from the SAMPLES.COM collection.
  674.  
  675.  
  676. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  677. │  /esc  │  NONE  │   OFF   │  Allows ESC to exit menus              │
  678. └────────┴────────┴─────────┴────────────────────────────────────────┘
  679.  
  680. By default, the ESC key is turned off.  This means that the user
  681. must hit <CR> or press a valid hot key to exit.  Including this
  682. will return an errorlevel of 0 when ESC is pressed.  Be sure that
  683. your batch file is set up to catch this.  See SIMPLE.BAT for an
  684. example of how ESC is handled.
  685.  
  686.  
  687. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  688. │  /f    │ 32..255│   178   │  Define the background for the menu    │
  689. └────────┴────────┴─────────┴────────────────────────────────────────┘
  690.  
  691. In order to produce a shadow effect, there must be a non-black
  692. background.  Just before the menu appears, 2000 ░'s will be
  693. written.  If you don't like this one, you can specify yer own.
  694. Should you grow tired of flooded backgrounds, use 32.
  695.  
  696. SAMPLE
  697.         BTX One1 Two2 Three3 /f32   (blanks the screen)
  698.         BTX One1 Two2 Three3 /f219  (fills screen with █)
  699.  
  700. Also see the /a switch to control background color.  Use RGB.EXE to
  701. explore the character/color possibilities.  e.g.,  RGB 178 will show
  702. you what character 178 looks like in all possible combinations.
  703. Also, run FLD.EXE to test flood character/attribute combinations.
  704.  
  705.  
  706. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  707. │  /fa   │ 1..127 │   112   │  Color attribute of the bottom line    │
  708. └────────┴────────┴─────────┴────────────────────────────────────────┘
  709.  
  710. Sets the color of the line that appears at the very bottom of the
  711. screen.  Normally, this line says something like:
  712.  
  713.      Use the Up/Down arrow keys to select.   Press F1 for help
  714.  
  715. If you would prefer to say something else:
  716.  
  717.     BTX OneO TwoT tHreeH /sfScream_like_a_chicken_to_exitC
  718.  
  719. This will instruct the user on the proper exiting technique.  Remember
  720. to connect words in the message with underscores.  This line will be
  721. centered because it was ended with a upper case C.  If you want it
  722. left justified, end the message normally.  To right justify, end it
  723. with an upper case R.
  724.  
  725.  
  726. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  727. │  /fhf  │  file  │   OFF   │  F1 help file name                     │
  728. └────────┴────────┴─────────┴────────────────────────────────────────┘
  729.  
  730. If you want to offer F1 context sensitive help, you will use this
  731. switch.  This switch is followed by a file name explicitly telling
  732. where the help information is stored.
  733.  
  734. SAMPLE
  735.  
  736.         BTX OneO TwoT tHreeH /fhf"D:\F1.DAT"
  737.  
  738. In this example, you would create a text file called F1.DAT that
  739. must reside in the root directory of the D: drive.  (*This* one must
  740. reside there - you can put your data files wherever you want!)
  741.  
  742. This data file may have up to 10 lines by 60 characters for each menu
  743. item.  Here's what F1.DAT might look like:
  744.  
  745.         @1 This line marks the start of what is displayed for item #1
  746.         If you select this option, you will be loading a
  747.         program that does this, that and the other thing.
  748.         Be careful never to load this program on Tuesdays
  749.         or after having consumed more than one beer.
  750.                 ----------------------------------
  751.                     Press ESC to continue
  752.         @2 Ok, this is the info for item #2
  753.         * * * * * * * * * * * * * * * * * *
  754.         Sorry, no help is available for Two
  755.         * * * * * * * * * * * * * * * * * *
  756.               Press ESC to continue
  757.         @3
  758.         This option will permit you to do all sorts
  759.         of things that you never dreamed possible.  Make
  760.         sure that you are alone when you select this
  761.         option.  Have a real nice day.
  762.  
  763. @ lines tell BTX that the following lines are for that option.
  764. Everything beyond the @ code is ignored so DO NOT put information
  765. on that line that you want displayed to the user.
  766.  
  767. Blank lines are also ignored so you will have to do something creative
  768. if you want space in your F1 help messages.
  769.  
  770. Any key pressed during F1 help message will remove the box and
  771. restore the menu.
  772.  
  773. TIP:  If you have a RAM drive, put this file there!  Access on a
  774. hard drive is normally very fast.  However, using a RAM drive will
  775. ensure instantaneous response.
  776.  
  777.  
  778. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  779. │  /fm   │ 1..127 │   112   │  Color attribute of F1 messages        │
  780. └────────┴────────┴─────────┴────────────────────────────────────────┘
  781.  
  782. Sets the color for the messages that are displayed via /fhf or
  783. the generic help message that is installed via the /config switch.
  784. On these windows, border and text are the same.  Border type is single
  785. box characters.
  786.  
  787.  
  788. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  789. │  /ha   │ 1..127 │   112   │  Color attribute of header line        │
  790. └────────┴────────┴─────────┴────────────────────────────────────────┘
  791.  
  792. The header is the first line on the screen.  It runs from column 1 to 80.
  793. This switch sets the color.
  794.  
  795. SAMPLE
  796.  
  797.    BTX blah1 blah2 blah3 /ha78
  798.  
  799. This would set the color to yellow on red.  Run RGB.EXE to see what
  800. other color attribute values produce.
  801.  
  802.  
  803. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  804. │  /hd   │  mesg  │   NONE  │  Displays a message on the header line │
  805. └────────┴────────┴─────────┴────────────────────────────────────────┘
  806.  
  807. If you omit this item, your menu will appear with a generic title that
  808. will give me credit for writing BTX.  To include your own, use the /hd
  809. switch followed by the text that you wish to display.  Remember that
  810. words must be connected with an underscore.
  811.  
  812. SAMPLE
  813.         BTX OneO TwoT /hHello_World!
  814.  
  815. See the /config switch if you are a registered user!
  816.  
  817.  
  818. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  819. │  /hka  │ 1..127 │  31/112 │  Color attribute of the hot keys       │
  820. └────────┴────────┴─────────┴────────────────────────────────────────┘
  821.  
  822. Choose whatever color you feel is most attractive for highlighting
  823. a single letter in each menu item.
  824.  
  825.  
  826. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  827. │  /hkd  │ 0..1000│   300   │  Msecs of delay after hot key action   │
  828. └────────┴────────┴─────────┴────────────────────────────────────────┘
  829.  
  830. When hot keys are used, the menu bar moves to that item, then
  831. exits.  The /hkd is the switch to use if you want more time for your
  832. users to see what they have pressed.
  833.  
  834. SAMPLE
  835.  
  836.         BTX OneO TwoT /hkd2000
  837.  
  838. In this example, the menu pointer will move to that item, then wait
  839. 2 seconds before exiting.  If you press the wrong hot key, this will
  840. allow you to see that you have made a mistake.  This does not give you
  841. the opportunity to correct it before exiting.
  842.  
  843. See /hkp (hot key pause) if you are building menus that require
  844. absolute user confirmation before exiting.
  845.  
  846. NOTE:  Do not use this with /hkp
  847.  
  848.  
  849. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  850. │  /hkp  │  NONE  │   OFF   │  Waits for <CR> before exiting         │
  851. └────────┴────────┴─────────┴────────────────────────────────────────┘
  852.  
  853. This kind of defeats the hot key purpose but then again, this might
  854. be useful when making selections that do serious things.
  855.  
  856. SAMPLE
  857.  
  858.    BTX format_drive_C:C erase_All_filesA delete_boot_RecordR /hkp
  859.  
  860. When the user hits one of the hot keys, the menu bar will move
  861. to that item but will wait for <CR> to be pressed before exiting.
  862.  
  863.  
  864. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  865. │ /info  │  NONE  │   N/A   │  Shows some info about BTX             │
  866. └────────┴────────┴─────────┴────────────────────────────────────────┘
  867.  
  868. Use this from the DOS prompt to get some more information about BTX.
  869. You will see what version number of BTX you are running along with
  870. my current mailing address.  In addition, this screen will display
  871. your registration number.  Registered copies may be distributed to
  872. your end users but SHOULD NOT be intentionally circulated to BBSs
  873. and disk vendors.
  874.  
  875.  
  876. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  877. │  /m    │  file  │   OFF   │  Read menu items from a text file      │
  878. └────────┴────────┴─────────┴────────────────────────────────────────┘
  879.  
  880. DOS only allows 128 characters on the command line.  This switch
  881. allows you to place your menu items in a text file rather than
  882. including them in the command line.  Here's how it works:
  883.  
  884. Create a text file that contain the lines for each of your menu
  885. items.  Remember to end each line with the hot key that you want
  886. to activate that menu item.  Now save the file and tell BTX
  887. where to find it.
  888.  
  889. SAMPLE
  890.  
  891.         BTX /m"D:BAT.DAT"  (load menu items from file D:BAT.DAT)
  892.  
  893. When defining a file name with a switch, the leading " must be used.
  894. The trailing " may be omitted.
  895.  
  896. You must specify up to 10 items in a single menu, each one being
  897. up to 60 characters in length.  When creating your data file, you
  898. should begin on line 1, left-justifying each.  If you want your
  899. menu items centered, you should use the /mtj switch to move them
  900. left or right.
  901.  
  902. If you have a RAM drive, you should use it here to expedite BTX
  903. loading.
  904.  
  905.  
  906. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  907. │ /mti   │  mesg  │   OFF   │  Inserts menu title                    │
  908. └────────┴────────┴─────────┴────────────────────────────────────────┘
  909.  
  910. Puts some words directly above the menu items.  This gives users a
  911. quick confirmation when building systems with similar looking
  912. menus.
  913.  
  914. SAMPLE
  915.  
  916.    BTX Word_processorW SpreadsheetS DatabaseD eXitX /mtTOP_MENU /bt1
  917.  
  918. yields:
  919.                    ┌────TOP MENU─────┐
  920.                    │  Word processor │
  921.                    │   Spreadsheet   │
  922.                    │    Database     │
  923.                    │      eXit       │
  924.                    └─────────────────┘
  925.  
  926. Be careful not to specify a title that would exceed the width of
  927. the menu box.  If you do this, BTX will begin to randomly erase
  928. files from any available hard drives.  (I just wanted to see if
  929. you were paying attention here.)
  930.  
  931.  
  932. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  933. │ /mtj   │  Char  │    C    │  Justifies menu items in window        │
  934. └────────┴────────┴─────────┴────────────────────────────────────────┘
  935.  
  936. By default, the menu items will appear centered in the menu box.
  937. Some menus look strange with this format.  For example:
  938.  
  939.            BTX [A]-blahA [B]-blahB [C]-blahC /mtjL
  940.  
  941. would look much better if it were left-justified.  Your other
  942. option is R, which I would bet will never be used.
  943.  
  944.  
  945. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  946. │ /ncc   │  NONE  │   OFF   │  Turns Ctrl-C exiting OFF              │
  947. └────────┴────────┴─────────┴────────────────────────────────────────┘
  948.  
  949. By default, BTX menus can be terminated with a Ctrl-Break.  If you
  950. do not want your users messing with DOS prompts, include this
  951. switch to keep them from jumping overboard.
  952.  
  953. SAMPLE
  954.  
  955.         BTX 1-blah1 2-blah2 3-blah3 /ncc
  956.  
  957. Only way to exit now is via a valid menu entry.
  958.  
  959.  
  960.  
  961. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  962. │   /o   │ 1..10  │   OFF   │  Selects this item on autoexit         │
  963. └────────┴────────┴─────────┴────────────────────────────────────────┘
  964.  
  965. Let's say that you want your menu to appear in an autoexec.bat
  966. file but you can't always be sure that someone will be there to
  967. make a decision.  In this case, you can have BTX select an option
  968. after a specified number of seconds.  If the /o switch is not
  969. included, BTX will auto-select item 1.
  970.  
  971. SAMPLE
  972.         BTX One1 Two2 Three3 /w10     (wait 10 secs, then enter One)
  973.         BTX One1 Two2 Three3 /w5 /o2  (wait 5 secs, then enter Two)
  974.  
  975.  
  976. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  977. │  /p?   │  code  │   OFF   │  Requires this password to exit menu   │
  978. └────────┴────────┴─────────┴────────────────────────────────────────┘
  979.  
  980. When the /p? switch is used Ctrl-Breaking is turned OFF.  (Ctrl-Break
  981. and Ctrl-C will no longer halt the menu.)  The /p? switch should be
  982. followed by a 4 character, non-case sensitive string.
  983.  
  984. e.g.  BTX One1 Two2 Three3 /p?ASDF
  985.  
  986. When any of the menu options are selected, a password prompt will
  987. appear on the 25th line.  ESC is also protected unless the /esc
  988. switch is included.  Remember to give your user a way out should
  989. they fall into a password protected menu.
  990.  
  991.  
  992. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  993. │  /pb   │ 32..255│   32    │  Characters used to justify menu items │
  994. └────────┴────────┴─────────┴────────────────────────────────────────┘
  995.  
  996. This is the character (ASCII decimal) that is used to justify menu
  997. items.  Normally, you will want your menus justified with a space,
  998. which is the default.  However, you can experiment to see what looks
  999. good.
  1000.  
  1001. SAMPLE
  1002.           BTX Word_processorW SpreadsheetS DatabaseD eXitX /pd250
  1003.  
  1004. produces:
  1005.                    ┌────MAIN MENU────┐
  1006.                    │ ·Word processor·│
  1007.                    │ ··Spreadsheet···│
  1008.                    │ ···Database·····│
  1009.                    │ ·····eXit·······│
  1010.                    └─────────────────┘
  1011.  
  1012.  
  1013. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1014. │  /s    │ 50..255│    0    │  Make some noise when the screen clears│
  1015. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1016.  
  1017. If you are using the /e1 exit switch, including /s will produce a
  1018. noise where the frequency increases quickly.  It is suggested that you
  1019. use this conservatively if the menu will be used frequently.
  1020.  
  1021. SAMPLE
  1022.         BTX One1 Two2 Three3 /e1 /s100 (makes a noise on exit)
  1023.  
  1024.  
  1025. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1026. │  /sba  │ 1..127 │  75/112 │  Color attribute of the stat boxes     │
  1027. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1028.  
  1029. Stat boxes are yellow on red or black on light gray.  If you would
  1030. prefer something else, use /sba as required.
  1031.  
  1032.  
  1033. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1034. │  /sf   │ mesg   │  NONE   │  Insert a message into bottom line     │
  1035. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1036.  
  1037. This posts a message on the bottom line.  Usually it tells your users
  1038. to press certain keys to select menu items.  Messages can be justified
  1039. by ending the message with a C,L or R.
  1040.  
  1041. The default is message is:
  1042.  
  1043.         ' or hotkeys select    F1 help    ESC to exit'
  1044.  
  1045. SAMPLE
  1046.  
  1047.     BTX Word_processorW SpreadsheetS DatabaseD eXitX /sfHello_there!C
  1048.  
  1049. With this, Hello there! would be centered in line 25.
  1050.  
  1051. Registered users, can use the /config switch to permanently set the
  1052. footer message.
  1053.  
  1054.  
  1055. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1056. │  /sha  │ 1..127 │    3    │  Color attribute of shadow character   │
  1057. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1058.  
  1059. To give the illusion of shadow, a character is placed around two
  1060. sides of the menu when the /shdw switch is used.  By default, this
  1061. is character 176 (░) in gray.  If you would like to change how the
  1062. shadow appears, try adjusting these using the /sha and /shc switches.
  1063.  
  1064. SAMPLE
  1065.             BTX One1 Two2 Three3  /shc219 /sha7
  1066.  
  1067. Uses character 219 (█), colors it light gray.  As a guideline, shadows
  1068. colors should be darker than the flooded background.
  1069.  
  1070.  
  1071. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1072. │  /shc  │ 32..127│   176   │  Define shadow character               │
  1073. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1074.  
  1075. You decide which character the menu shadow casts.  See /sha for more.
  1076.  
  1077. SAMPLE
  1078.           BTX OneO TwoT /shc32 /shdw
  1079.  
  1080. would produce a menu that uses space to create the shadow.
  1081.  
  1082.  
  1083. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1084. │ /shdw  │  NONE  │   OFF   │  Turns ON the shadow character         │
  1085. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1086.  
  1087. Before using /sha and /shc, you must activate the shadow feature by
  1088. including the /shdw switch.
  1089.  
  1090. SAMPLE
  1091.            BTX OneO TwoT /shdw
  1092.  
  1093.  
  1094.  
  1095. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1096. │  /sm   │ 1..10  │    2    │  Controls left and right menu margins  │
  1097. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1098.  
  1099. If have real short menu items, you can increase the width of the
  1100. menu box by increasing the margins.
  1101.  
  1102.         BEFORE /sm...                       AFTER /sm...
  1103.        BTX A:A B:B C:C                 BTX A:A B:B C:C /sm8
  1104.            ┌──────┐                     ┌─────────────────┐
  1105.            │  A:  │                     │        A:       │
  1106.            │  B:  │                     │        B:       │
  1107.            │  C:  │                     │        C:       │
  1108.            │ eXit │                     │      eXit       │
  1109.            └──────┘                     └─────────────────┘
  1110.  
  1111. This is particularly useful when your menu items are narrow but you
  1112. want to include a decent menu title using the /mti switch.
  1113.  
  1114.  
  1115. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1116. │  /st   │  1..4  │   OFF   │  Shows some stats                      │
  1117. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1118.  
  1119. If you would like to show your user drive space or RAM available,
  1120. use the /st switch.
  1121.  
  1122.      ARGUMENT            DISPLAY
  1123.      ┌─────┬────────────────────────────────────┐
  1124.      │  1  │  RAM available before loading BTX  │
  1125.      │  2  │  Space available in default drive  │
  1126.      │  3  │  Both 1 and 2.                     │
  1127.      │  4  │  Both 1 and 2 in the same box      │
  1128.      └─────┴────────────────────────────────────┘
  1129.  
  1130. If your menus are real long, you should use 1, 2 or 3.  This
  1131. provides better menu symmetry.  Be aware that this will degrade menu
  1132. performance on floppy based menus.
  1133.  
  1134. SAMPLE
  1135.          BTX OneO TwoT /st4
  1136.  
  1137. yields:
  1138.                        ┌───────┐
  1139.                        │  One  │
  1140.                        │  Two  │
  1141.                        └───────┘
  1142.      ┌─────────────────────────────────────────────┐
  1143.      │ RAM 640K installed, 425K available    (66%) │
  1144.      │ DRIVE C: has  13.2 Megs available     (20%) │
  1145.      └─────────────────────────────────────────────┘
  1146.  
  1147. Remember, the RAM available is the amount of RAM that WILL BE available
  1148. when BTX loads your application.
  1149.  
  1150.  
  1151.  
  1152. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1153. │  /sw   │  1..2  │   NONE  │  Shows a help screen of switches       │
  1154. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1155.  
  1156. Use this from the DOS line if you need to reference the switch list.
  1157.  
  1158. SAMPLE
  1159.                 BTX /sw1  or  BTX /sw2
  1160.  
  1161.  
  1162. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1163. │  /t    │ 1..127 │ 112/15  │  Color attribute of menu bar           │
  1164. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1165.  
  1166. The attribute of the menu bar represents the colors.  This is
  1167. menu pointer that moves each time the up/down arrow keys are
  1168. pressed, the one that will be selected when they hit <CR>.
  1169.  
  1170. For both mono and color systems, the default is 15 which means
  1171. white on black.  To test any of the color combinations, you can
  1172. use the utility called RGB.EXE to display 0-127 attributes as
  1173. well as any ASCII character.
  1174.  
  1175. e.g.  RGB 65 will show you what A looks like in all possible
  1176.       color combinations.
  1177.  
  1178. Be careful when using this.  Sometimes a /t attribute on a
  1179. color monitor will look fine - but will be invisible on monochrome.
  1180. There must be a sharp contract between this switch and the /c switch.
  1181.  
  1182. See /c for information on setting normal text colors
  1183.  
  1184.  
  1185. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1186. │  /tt   │ 1..16  │   3     │  Select format for time display        │
  1187. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1188.  
  1189. When BTX loads, a clock will be displayed in the upper right corner
  1190. of the screen.  The format will be HH:MM:SS.  If you prefer some
  1191. other format, go for it!
  1192.  
  1193.       1 = 13:30           6 =  1:30pm         11 =  1PM
  1194.       2 = 1330            7 =  1|30pm         12 =  30min
  1195.       3 = 13:30:30        8 =  1:30:30pm      13 =  30sec
  1196.       4 = 13:30:30.30     9 =  1:30:30.30pm   14 =  30hsec
  1197.       5 = 13h30          10 =  1PM30          15 =  13303030
  1198.      16 = secs past midnite
  1199.  
  1200.  
  1201. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1202. │  /~    │ 1..100 │   OFF   │  Save screen using twinkle routine     │
  1203. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1204.  
  1205. This must be used in conjunction with the /* switch.  If you get
  1206. tired of the bouncing rectangle, try this one.
  1207.  
  1208. SAMPLE
  1209.             BTX One1 Two2 Three3 eXitX /*30 /~100
  1210.  
  1211. After 30 seconds the screen saver will be activated.  Rather than
  1212. something that bounces, the screen will be removed and restored
  1213. in a rather unique fashion.  The menu can be restored by pressing any
  1214. key.  The /* timer then starts over until another key is pressed.
  1215.  
  1216. This is not the best "screen saver" but it is kind of fun to watch.
  1217.  
  1218.  
  1219. ┌─SWITCH─┬ARGUMENT┬─DEFAULT─┬──FUNCTION──────────────────────────────┐
  1220. │   /w   │ 1..100 │   OFF   │  Selects this item after x seconds     │
  1221. └────────┴────────┴─────────┴────────────────────────────────────────┘
  1222.  
  1223. Let's say that you want your menu to appear in an autoexec.bat
  1224. file but you can't always be sure that someone will be there to
  1225. make a selection.  In this case, you can have BTX select an
  1226. option after a specified number of seconds.  If the /o switch is
  1227. not included, BTX will auto-select item 1.
  1228.  
  1229. SAMPLE
  1230.         BTX One1 Two2 Three3 /w10     (wait 10 secs, then enter One)
  1231.         BTX One1 Two2 Three3 /w5 /o2  (wait 5 secs, then enter Two)
  1232.  
  1233. NOTE:  BTW will wait /w seconds, then initiate the autoload with a 3
  1234.        second abort.  You will see the menu bar move to the option
  1235.        3 seconds before it is launched.  To abort the autoload, press
  1236.        any key.  If you are paying attention, you will notice that the
  1237.        clock in the upper right hand corner stops when you have under
  1238.        3 seconds remaining.
  1239.  
  1240.        Therefore, if you really want to wait just 10 seconds before
  1241.        loading, you would use /w7
  1242.  
  1243.        If you abort the autoload with keypress, the /w counter will
  1244.        start over!!  You must make your selection within the /w time!
  1245.  
  1246.  
  1247.  
  1248. The BAT Chime
  1249.  
  1250. Each half hour, BTX will chirp to let you know that another 30 minutes
  1251. of your life is gone.  The only way to deactivate this is to save the
  1252. screen or press the F1 key and not hit ESC.
  1253.  
  1254.  
  1255. BATHELPER - BH.EXE
  1256.  
  1257. There are two kinds of computer users.  Those who know how to write
  1258. batch files and those who should learn.  Regardless of the group into
  1259. which you fall, BH may be of interest to you.
  1260.  
  1261. Each time you develop a BTX application, you must sit down with an
  1262. editor and press hundreds of keys to get BTX running.  Even if you
  1263. know precisely what you are doing, this is still a pain.  For the most
  1264. part, each batch file that you write is deadly similar.
  1265.  
  1266. BH is a BATMEN utility that writes a high percentage of the file for
  1267. you.  If you already know how to write batch files, then BH will just
  1268. save you some keystrokes.  If you are learning how to write them, then
  1269. BH might be able to show you how.
  1270.  
  1271. To run BH, just enter it at the DOS prompt.  If you have downloaded
  1272. BTX from a BBS, BH was not included.  This is not some stupid scheme
  1273. to get you to register.  It was not included so to keep the size of
  1274. the ZIP file as small as possible.  BH has a heavy interface which
  1275. means that it's kinda large.  If you need a copy of BH, you may take
  1276. it from my BBS.  The name there is BATHELP.ZIP.  Of course, another
  1277. way to obtain it, along with a fresh copy of BTX, would be to register!
  1278.  
  1279.  
  1280. RGB and FLD
  1281.  
  1282. These are two quick and dirty utilities that I tossed in to help
  1283. with menu design.  Rather than having to continually run BTX to
  1284. check flood characters and screen attributes, you can try these
  1285. instead.
  1286.  
  1287. If you enter RGB by itself, it will display numbers from 1 to 127
  1288. showing you each color attribute.  If you would like to see a
  1289. specific character using the same chart, enter the value after
  1290. the RGB.  For example, RGB 178 will show you what ▓ looks like
  1291. using all color attributes.  You can find ASCII tables in the
  1292. back of every computer book ever printed.
  1293.  
  1294. FLD, which stands for FLOOD, will flood a portion of the screen
  1295. just as BTX does.  RGB does not give you the full effect because
  1296. only one attribute of each is displayed.  Suppose that you were
  1297. considering character 177 using color 78.  All you need do is run
  1298. FLD 177 78 to see what that flood combination will look like in BTX.
  1299.  
  1300. FLD <CR> reminds you of the format.
  1301.  
  1302.  
  1303. EDITING BATCH FILES
  1304.  
  1305. If you are going to be using BTX, you will need a text editor.
  1306. Should be in the market for one, I recommend Qedit from Sammy Mitchell.
  1307. You can obtain a shareware copy from lots of different boards or you
  1308. might order one from Sizzleware at (800) 356-2697 or The Software Labs
  1309. at (800) 359-9998.  They've got fresh copies and they don't slam ya
  1310. on disk prices.
  1311.  
  1312. Included on this disk is a copy of TED.  This is a compact text editor
  1313. which is fine for editing batch files.  It loads fast and doesnt take
  1314. up a bug chunck of drive space.
  1315.  
  1316. For more examples, run SAMPLES.COM
  1317.  
  1318.  
  1319. REGISTRATION
  1320.  
  1321. If you would like to get the most recent version of BTX and be able
  1322. to /config your data into the EXE file, complete ORDER.FRM.
  1323.  
  1324. When you register, you will be able to configure BTX to carry your
  1325. specific message.  For example, you could rename the program to
  1326. MENU.EXE, then configure the F1 help screen and header lines to read:
  1327.  
  1328.                 YER PROGRAM (c) 1991 by Yer Name
  1329.  
  1330. This means that no one but you and I will know that you're customers
  1331. are running BTX.  This if fine with me.  I'm not worried about the
  1332. copyright implications.  But just do me this favor.  Once BTX has been,
  1333. configured with your name, please DO NOT intentionally distribute this
  1334. to BBSs and disk vendors.
  1335.  
  1336. If you have received a copy of BTX that has already been configured,
  1337. please do a BTX /info and send me the registration number.  I will
  1338. send you a fresh copy with a registration key at no charge.
  1339.  
  1340.  
  1341. NOTES as of 01-30-91
  1342.  
  1343. If you find something that does not work, (yes, a bug) please report
  1344. it to me!  However, if the above date is more than a few months old,
  1345. there's a good chance that the program has been updated.  In this
  1346. case, download a fresh copy from my BBS at (313) 662-9160 or write to
  1347. the address given in the ORDER.FRM file.
  1348.  
  1349. If there are any more feature that you would like to see implemented,
  1350. please send me your suggestions.  I will include almost any suggestion
  1351. provided that the code overhead is not too extensive.
  1352.  
  1353. SHAREWARE UPDATE
  1354.  
  1355. You may obtain fresh copies of BTX via EXEC-PC in Elm Grove, Wisconsin.
  1356. I will upload even minor changes there within a week of release.
  1357.  
  1358.  
  1359. CHANGE SUMMARY
  1360. ~~~~~~~~~~~~~~
  1361. On version numbers:  X.yz where
  1362.  
  1363.              X - Major change.  Extensive additions/enhancements
  1364.              y - adds at least one new significant feature
  1365.              z - updated to correct a bug
  1366.  
  1367.  
  1368. 1.01   If you made this call
  1369.  
  1370.        BTX /m"\games.dat" /mtiGAMES_MENU
  1371.  
  1372.        BTX did nothing because there were no menu items on the
  1373.        command line.
  1374.