home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / SD289.ZIP / SD289.TXT < prev   
Encoding:
Text File  |  1989-10-11  |  44.6 KB  |  919 lines

  1.         
  2.         
  3.                                                      10/11/89
  4.         
  5.         
  6.         
  7.                                  Screen Designer
  8.                                   Version 2.89
  9.         
  10.         
  11.         
  12.                          Copyright (C) 1987, 1988, 1989
  13.                                        by
  14.                                 Michael W. Cocke
  15.         
  16.         
  17.         
  18.                       A Tool for Designing Screen Displays
  19.         
  20.         
  21.         
  22.             This program is being distributed under the `shareware' 
  23.             concept. You are freely encouraged to copy and distribute 
  24.             this program, provided that no changes are made to either the 
  25.             program or the documentation. This means that you can down-
  26.             load this program from a bulletin board, get it through a 
  27.             mail order house, or copy it from a friend.  If you don't 
  28.             find it worthwhile, you won't have risked anything.  But, if 
  29.             you do find it useful, all I ask is that you send me a check 
  30.             for just $15.00.  This buys you to a new copy of the program, 
  31.             WITH ALL updates.  It will also buy you some peace of mind.  
  32.             I'm one person, not a giant software company, and the check 
  33.             you send may make the difference between feeding my cat this 
  34.             week and not feeding my cat this week.
  35.         
  36.             By the way, if you register one version, I don't ask that you 
  37.             keep registering for each upgrade, just download the newest 
  38.             version from your local BBS.
  39.         
  40.                          Please send a check for $15.00 to:
  41.         
  42.                                     Michael Cocke
  43.                                     11 Cedar Road
  44.                                     Montville NJ  07045
  45.                                             
  46.                                                Thank You,
  47.                                                       Mike
  48.                    
  49.         
  50.                                  Hacker Central BBS
  51.                                     (201)334-2555 
  52.                                300/1200/2400 baud  8N1  
  53.                                       24 hours.
  54.                                                
  55.         
  56.         
  57.             ---> Royalty-FREE Source code available for $100.00 (U.S.) <---
  58.                                  Write for details.
  59.         
  60.         
  61.         
  62.         
  63.         
  64.             Technical support, upgrades and requests available upon payment of 
  65.                           $ 15.00 (U.S.) registration fee.
  66.         
  67.  
  68.         
  69.             What is SCREEN DESIGNER:
  70.         
  71.                  SCREEN DESIGNER is a program created to aid you in 
  72.                  designing and producing screens for batch files, pro-
  73.                  grams, and, if you have the right printer, title pages 
  74.                  for word processor documents and spreadsheets.
  75.         
  76.                  Screen Designer was especially designed for programmers.  
  77.                  Whether you program in BASIC, Dbase or C, probably the 
  78.                  worst part of the job is 'prettifying' the screens.  
  79.                  Screen Designer has a programmer's interface that allows 
  80.                  you to draw the screen image you want, and then export 
  81.                  it (formatted properly !) into your source code.  I 
  82.                  originally wrote Screen Designer because I work in 3-4 
  83.                  different languages, and the only common denominator is 
  84.                  that graphics is DAMNED difficult in all of them. 
  85.         
  86.                  The graphics that SCREEN DESIGNER creates can be used on 
  87.                  color or monochrome video systems, and on IBM (tm) 
  88.                  compatible graphics printers.
  89.         
  90.                  To give you an idea of some of the uses of SCREEN DE-
  91.                  SIGNER, all of the help screens and title pages embedded 
  92.                  in the Screen Designer program were created using the 
  93.                  program. 
  94.         
  95.         
  96.             How to run SCREEN DESIGNER:
  97.         
  98.                  SCREEN DESIGNER was designed to work on a monochrome, 
  99.                  CGA, EGA, VGA or PGA equipped IBM (tm) compatible com-
  100.                  puter, with at least 640K Ram and one floppy disk drive.
  101.         
  102.                  To run the program, all you need to do is type 'SD289' 
  103.                  at the DOS prompt, and press <ENTER>.
  104.         
  105.         
  106.                  If you wish to automatically load a file into the Screen 
  107.                  Designer when you start it, simply start the program by 
  108.                  typing 'SD289 filename.txt'  After the two opening 
  109.                  screens display, this file will be loaded just as if you 
  110.                  had selected the load command from the file sub-menu.  
  111.         
  112.         
  113.             How to use SCREEN DESIGNER:
  114.         
  115.                  The Main Editor Screen
  116.         
  117.                    This is the screen where you do the actual drawing, 
  118.                    typing, etc. of your screen image.  In addition to all 
  119.                    of the function keys (explained below), the backspace, 
  120.                    insert, delete, tab, return, and cursor keys all work 
  121.                    normally.  The other keys that work here are:
  122.         
  123.                    <Alt>+<Insert>     Insert a new line at the current 
  124.                                       line.
  125.                    <Alt>+<Delete>     Delete the current line.
  126.         
  127.                    <Alt>+<C>          Center screen contents horizontal-
  128.                                       ly.
  129.                    <Ctrl>+<C>         Center current line contents hori-
  130.                                       zontally. 
  131.                       The horizontal center is a little tricky since 
  132.                       boxes are multi-line constructs.  Rather than try 
  133.                       to explain what happens if there are two boxes of 
  134.  
  135.                       different heights on the same set of lines,  I will 
  136.                       suggest you try it.  The insert and delete keys can 
  137.                       be used to modify the results, if desired.  You 
  138.                       might want to do some experimenting here.
  139.         
  140.                    <Alt>+<V>          Center screen contents vertically.
  141.         
  142.                    <Alt>+<R>          Pops up a ruler line on whatever 
  143.                                       line the cursor is currently on.  
  144.                                       This WILL NOT Destroy the screen 
  145.                                       contents.  To get rid of the ruler 
  146.                                       and restore your screen, do another 
  147.                                       <ALT>+<R>.
  148.         
  149.                    <CTRL>+<A>         Erase to the left of the curser.
  150.         
  151.                    <CTRL>+<S>         Erase to the right of the curser.
  152.         
  153.                    <CTRL>+<W>         Erase to the top of the curser.
  154.         
  155.                    <CTRL>+<Z>         Erase to the bottom of the curser.
  156.         
  157.         
  158.                    In addition to the keys listed above, the following 
  159.                    keys are used with the 'box' capability.
  160.         
  161.                    <HOME>             Mark the upper left corner of a 
  162.                                       single line box.
  163.         
  164.                    <Ctrl>+<HOME>      Mark the upper left corner of a 
  165.                                       double line box.
  166.                    <Alt>+<HOME>       Mark the upper left corner of a
  167.                                       special box.
  168.         
  169.                    <Page Down>        Mark the lower right corner of 
  170.                                       all boxes.
  171.         
  172.                  Screen Wrap  
  173.         
  174.                    The screen wraps in all directions.  This means that 
  175.                    if you move the cursor off the right side of the 
  176.                    screen, it will reappear on the left side, one line 
  177.                    down.  If you move the cursor off the top of the 
  178.                    screen, it will reappear on the bottom of the screen 
  179.                    in the same column.  The screen also wraps diagonally, 
  180.                    so that if you run the cursor off the lower right 
  181.                    corner of the screen, it will reappear in the upper 
  182.                    left corner.
  183.         
  184.                    It is NOT possible to edit more than one screen at a 
  185.                    time.  
  186.         
  187.         
  188.                  The Box Capability
  189.         
  190.                    There is a sophisticated auto-box routine built into 
  191.                    SCREEN DESIGNER, which will allow you to draw boxes of 
  192.                    many different sizes and styles.  All you need to do 
  193.                    is mark the upper left corner of where you want to 
  194.                    draw a box, using one of the <HOME> key combinations 
  195.                    listed above.  Then move the cursor to where you wish 
  196.                    the lower right corner of the box, and press <Page 
  197.                    Down>.  Presto, a box of the desired type and size! 
  198.         
  199.                    There are three separate box patterns available at any 
  200.                    time in SCREEN  DESIGNER. They are the SINGLE BOX, the 
  201.  
  202.                    DOUBLE BOX and the SPECIAL BOX.  The single box is a 
  203.                    single line box (-).  The double box is a double line 
  204.                    box (=).  The special box is one of a number of possi-
  205.                    ble  patterns.   There are  eight  predefined  special 
  206.                    boxes  (that was the number of keys I had left  over), 
  207.                    and a user-defined option to allow you to set any type 
  208.                    of box pattern you might wish.
  209.         
  210.                    As of version 2.11, there is also an 'intersection 
  211.                    mode' to simplify making intersections in the lines 
  212.                    and boxes.  Tee intersections for all four sides are 
  213.                    supported, as are X type intersections (four way).  
  214.                    These are available in both one and two line patterns.  
  215.                    Mixed type patterns are not supported yet (I'm running 
  216.                    out of keys!).
  217.         
  218.                  The Function Keys
  219.                    SCREEN DESIGNER makes use of the programmable function 
  220.                    keys, F1-F10, in all of the sub-menu screens, as well 
  221.                    as in the main edit screen and the line draw screen.
  222.         
  223.                    Some of the function keys 'toggle' an effect.  In the 
  224.                    case of such a toggle key, the function key label (on 
  225.                    line 25 of the screen) will change to show what press-
  226.                    ing the key will do.  The labels always indicate what 
  227.                    pressing the key WILL do;  they do NOT show the cur-
  228.                    rent function of the key.
  229.         
  230.                                 Function Keys from the Main Edit Screen 
  231.                                 --------------------------------------- 
  232.                                 F1         Main screen help
  233.                                 F2         File utilities
  234.                                 F3         Special box design    
  235.                                 F4         Programmers utility
  236.                                 F5         Intersections
  237.                                 F6         Line drawing mode
  238.                                 F7         Screen redraw
  239.                                 F8         Graphics mode 
  240.                                 F9         Restart the program
  241.                                 F10        Exit the program
  242.         
  243.             F1 - HELP
  244.             ---------
  245.                  The F1 key ALWAYS displays a help screen. There are help 
  246.                  screens for each of the sub menus, the main edit screen, 
  247.                  and the line draw screen.
  248.                  |  Except in Graphics mode, the graphics mode help
  249.                  |  screen is displayed by pressing <ALT>+'H'.
  250.         
  251.                  F2 - File Utilities Menu
  252.                  ------------------------
  253.                    The function keys that are used in this menu are:
  254.         
  255.                    F1            File Menu Help
  256.                    F2            File Load
  257.                    F3            File Save
  258.                    F4            Directory List
  259.                    F10           Return to the Main Edit Screen
  260.         
  261.         
  262.                  F1 - File Menu Help
  263.         
  264.                    This key is used to provide a quick reference to the 
  265.                    file menu.
  266.         
  267.                  F2 - File Load
  268.  
  269.                    This key is used to load an already existing file for 
  270.                    further editing.
  271.                    After pressing F2, you will be asked to enter the 
  272.                    filename you want to edit.  If you enter a filename 
  273.                    longer than 12 characters, you will be asked to try 
  274.                    again.  If you press <ENTER> without entering any 
  275.                    filename, you will be returned to the Main Editor 
  276.                    Screen.
  277.                    The files are saved as normal ASCII text files, so you 
  278.                    should be able to edit them with any word processor 
  279.                    that supports a plain ASCII mode (such as Wordstar (in 
  280.                    NON-document mode) or the editors in Turbo Pascal (tm) 
  281.                    or Quickbasic (tm)).
  282.         
  283.                  F3 - File Save
  284.                    This key is used to save a file that you have created. 
  285.                    After you have pressed F2, you will be asked to enter 
  286.                    the filename you want to save.  If you enter a file-
  287.                    name longer than 12 characters, you will be asked to 
  288.                    try again.  If you press <ENTER> without entering any 
  289.                    filename, you will be returned to the Main Editor 
  290.                    Screen.
  291.                    The files are saved as normal ASCII text files, so you 
  292.                    should be able to edit them with any word processor 
  293.                    that supports a plain ASCII mode (such as Wordstar (in 
  294.                    NON-document mode) or the editors in Turbo Pascal (tm) 
  295.                    or Quickbasic (tm)).
  296.         
  297.                  F4 - Directory List
  298.                    This key is used to list the files in the current 
  299.                    directory.  The display stops every 24 lines and 
  300.                    displays 'Press <ENTER> to continue'
  301.         
  302.                  F10 - Return to Main Editor Screen
  303.                    This key is used to return to the Main Edit Screen.
  304.         
  305.             F3 - Alternate Box
  306.             ------------------    
  307.                    This is how you design your 'special' box.  The menu 
  308.                    for  selecting  among the predefined  boxes  is  self-
  309.                    explanatory. The screen will display the different box 
  310.                    patterns  along  with a number for each  one.   Simply 
  311.                    press the corresponding number and the correct pattern 
  312.                    will be generated.
  313.         
  314.                    If the user-defined box option is chosen (number 8), a 
  315.                    new screen will appear.  The left side of the screen 
  316.                    shows a listing of keys with the corresponding charac-
  317.                    ter generated by each key.  The right side of the 
  318.                    screen prompts the user for the characters that will 
  319.                    make up the various corners and sides of the user-
  320.                    defined box.  Pressing <ENTER> after each selection 
  321.                    will move to the next prompt.
  322.         
  323.                    UL stands for Upper Left, UR stands for Upper Right, 
  324.                    LL is Lower Left, LR is Lower Right.  VS is the verti-
  325.                    cal Side and HS is the Horizontal Side.  These charac-
  326.                    ters are entered by typing the standard ASCII key 
  327.                    shown to the left of the graphics characters on the 
  328.                    chart that is displayed on the screen.
  329.         
  330.         
  331.                  Programmer Interface 
  332.                  --------------------
  333.                    This is the function of the program that caused me to 
  334.                    write SCREEN DESIGNER.  I tend to write truly horrible 
  335.  
  336.                    screen interfaces.  This is because, like many pro-
  337.                    grammers, I'm more concerned with the program than 
  338.                    with its appearance.  SCREEN DESIGNER is designed to 
  339.                    remedy those appalling interfaces.  I have tried to 
  340.                    make this function non-language specific, as I work in 
  341.                    several different programming languages.  As written, 
  342.                    this function is adequate for BASIC, C, Dbase and 
  343.                    PASCAL coding conventions.  I haven't tested any other 
  344.                    languages with it.  Suggestions and comments are 
  345.                    welcome.
  346.         
  347.         
  348.         
  349.              Please note that as of version 2.85, the programmers inter-
  350.              face has been completely rewritten.  There are three func-
  351.              tion keys that are available from the programmers interface, 
  352.              and they work slightly differently than you would expect.  
  353.              When using one of the function keys from inside of the 
  354.              programmers interface, you must press <RETURN> after press-
  355.              ing the function key.  I know it's weird - yell at Micro-
  356.              soft!
  357.         
  358.         
  359.                  F1  will display a series of help screens.
  360.                  F2  will 'pop-up' the presets. (more about this later)
  361.                  F10 will return you to the main editor screen.
  362.         
  363.         
  364.             Presets
  365.             -------
  366.                    The preset capability is designed to allow you to save 
  367.                    the answers to the format questionnaire, and to reuse 
  368.                    the saved answers without you having to reenter the  
  369.                    same information over & over again.
  370.         
  371.                    To save a preset:
  372.                    -----------------
  373.                    Answer all of the questions as you normally would.  
  374.                    (see the detailed discussion below.)  When you are 
  375.                    asked for the name of the filename to save the format-
  376.                    ted output to, press <F2>, then press <ENTER>.  The 
  377.                    preset window will pop-up.  Press 'S' to Save a pre-
  378.                    set.  Select the number that you wish to save that 
  379.                    preset as.  (you are allowed presets 1 - 10).  You 
  380.                    will be asked to enter a description of that preset,  
  381.                    You may enter up to 30 characters.  The preset will be 
  382.                    saved, and you will be returned to the main editor 
  383.                    screen.  The formatted file WILL NOT be produced!
  384.         
  385.         
  386.                    To use a preset:
  387.                    ----------------
  388.                    When you are asked if you wish the output lines to be 
  389.                    numbered (see detailed discussion below.), press <F2> 
  390.                    and then press <ENTER>.   The preset window will pop-
  391.                    up.  Press 'U' to Use a preset.  Select the number of 
  392.                    the preset that you wish to use.  (you are allowed 
  393.                    presets 1 - 10) and press <ENTER>.  You will then be 
  394.                    asked for the name of the file that you wish to write 
  395.                    the formatted output to.  After the file has been 
  396.                    written, you will be returned to the main editor 
  397.                    screen. 
  398.         
  399.         
  400.                    Note that the F1 (Help) and F10 (return to main edi-
  401.                    tor) keys will work at any point during this proce-
  402.  
  403.                    dure.
  404.         
  405.             The format questionnaire
  406.             ------------------------
  407.         
  408.                    You are asked a number of questions in this section, a 
  409.                    detailed discussion follows.
  410.         
  411.                    Number Lines (Y/N):
  412.         
  413.                    Do you wish to have each line of the screen image 
  414.                    numbered?  For instance, GWBASIC requires line num-
  415.                    bers, QUICKBASIC considers them optional, and C 
  416.                    doesn't want to consider the prospect of numbered 
  417.                    lines.  If you answer this question 'yes' you will be 
  418.                    asked for a starting number, and an increment between 
  419.                    line numbers. 
  420.         
  421.                    Next, the question 'Right Trim (Y/N)' will be dis-
  422.                    played.
  423.                    
  424.                    This is asking you if you wish to trim trailing blanks 
  425.                    from the right side of the screen image.  All other 
  426.                    formatting will work properly in either mode, this is 
  427.                    for people using non-standard width screens.
  428.         
  429.                    The message "DO NOT ENTER QUOTES FOR THE FOLLOWING 2 
  430.                    QUESTIONS" will be displayed.  If you are working in 
  431.                    BASIC or a similar language which requires PRINT 
  432.                    statements to be quoted, DO NOT type quotes (") here!  
  433.                    I guarantee that the program WILL malfunction.
  434.         
  435.                    The message 'The '^" character will be replaced with 
  436.                    the physical line number in the following statements.' 
  437.                    will display.  This is intended for languages support-
  438.                    ing a 'print at location' statement.  Entering a caret 
  439.                    (^) in either of the next two lines will create a file 
  440.                    formatted as you request,  with the caret (^) being 
  441.                    replaced by the physical line number for each line of 
  442.                    the screen image.
  443.         
  444.                    Example:
  445.                       page=0:row=^:col=4:scrmode=1:st$=
  446.                            will produce a file formatted thus;
  447.                            page=0:row=1-25:col=4:scrmode=1:st$=   etc.
  448.         
  449.                    The message 'Begin lines with:' will be displayed, 
  450.                    this is the programming language statement you wish to 
  451.                    have each line begin with. for example,  if program-
  452.                    ming in BASIC, the answer would be 'PRINT'
  453.         
  454.                    ** Please note that Compound statements under Basic 
  455.                    ARE supported.
  456.         
  457.                    The message 'End lines with:' will be displayed, this 
  458.                    is the programming language statement you wish to have 
  459.                    each line end with. for example, in C you could use 
  460.                    this capability in PRINTF statements.
  461.         
  462.                    ** Please note that Compound statements under Basic 
  463.                    ARE supported.
  464.         
  465.         
  466.                    Next you will be asked for;
  467.                    'Offset from top for line counter metacharacter (0 = 
  468.                    none)'
  469.  
  470.                    
  471.                    This rather indecipherable message relates back to the 
  472.                    caret (^) we discussed above.  Normally the lines will 
  473.                    be numbered 1 to 25.  If, for some reason, you need 
  474.                    them numbered 5 to 30, enter an offset of 5.  In 
  475.                    short, this is the number you wish added to the physi-
  476.                    cal line number in your output file.
  477.         
  478.                    (The curious may wish to know why I phrased this 
  479.                    question in this fashion.  The answer is that my XENIX 
  480.                    is showing.)
  481.         
  482.         
  483.                    Next you will be asked if you need to have screen 
  484.                    lines quoted, this is a yes/no question.  The opening 
  485.                    quotes will be inserted AFTER the 'begin lines with' 
  486.                    field , and the closing quotes will be inserted BEFORE 
  487.                    the 'end lines with' field.  (BASIC programmers, the 
  488.                    answer is YES)
  489.         
  490.         
  491.                    The next question that you will be asked is "Active 
  492.                    area (topmost) only (y/n)"  This question is asking if 
  493.                    you wish all 25 lines output, or only the lines from 1 
  494.                    to the last non-blank line.  For example, if you have 
  495.                    a screen image that only uses lines 1 - 8, do you wish 
  496.                    to output only 8 lines of formatted output, or do you 
  497.                    need to fill the rest of the screen with nulls?
  498.         
  499.         
  500.                    The last question you will be asked is for the name of 
  501.                    the file you wish to save the formatted screen image 
  502.                    in.  If you supply the name of a file that already 
  503.                    exists, it will be OVERWRITTEN.
  504.         
  505.                    If you enter a filename longer than 12 characters, you 
  506.                    will be asked to try again.  If you press <ENTER> 
  507.                    without entering any filename, you will be returned to 
  508.                    the Main Editor Screen. The files are saved as normal 
  509.                    ASCII text files, so you should be able to edit them 
  510.                    with any word processor.
  511.         
  512.         
  513.             Important note regarding DOS versions:
  514.         
  515.             With the addition of the preset capability, the version of 
  516.             DOS that you run Screen Designer under matters!  As written, 
  517.             the preset file will be maintained in the same directory that 
  518.             the Screen Designer executable files are located in, even if 
  519.             you have it in your path and call it from multiple subdirec-
  520.             tories.  IF YOU ARE USING A DOS VERSION PRIOR TO 3.x, THIS 
  521.             WILL NOT WORK!  Screen Designer will check the version of DOS 
  522.             you are using, and if you are using 2.x, the presets file 
  523.             will be maintained in the CURRENT subdirectory.  
  524.         
  525.         
  526.         
  527.                  F5 -  Intersection mode
  528.                  -----------------------
  529.                  Intersection mode is designed to place an 'intersection' 
  530.                  character at the current cursor position.  The way it 
  531.                  works is:
  532.         
  533.                    1) Position the cursor where you want an intersection.
  534.                    2) Press the F5 key.
  535.                    3) Press any one of the following keys;
  536.  
  537.         
  538.                    w, W, a, A, s, S, z, Z, x, X        
  539.         
  540.                    (This is going to be a little difficult.....)
  541.         
  542.                       Visualize the WASZ diamond on your keyboard as 
  543.                       being representative of the four sides of a square. 
  544.                       Lower case supplies single line intersections 
  545.                       appropriate to the side of the square being repre-
  546.                       sented by the appropriate key, upper case gives 
  547.                       double lines.  The x or X key does a 'four way' 
  548.                       intersection.  I suggest a little experimentation.
  549.         
  550.                  F6 - Line Draw Mode
  551.                  -------------------
  552.                    The function keys used from this menu are:
  553.         
  554.                    F1             Line Draw Help
  555.                    F2             Single / Double Line Toggle
  556.                    F3             Pen Up / Down Toggle
  557.                    F4             Redraw the Screen
  558.                    F5             Intersection Mode 
  559.                    F10            Return to the Main Editor Screen
  560.         
  561.                  All of the cursor arrow keys work normally (SEE NOTE 
  562.                  BELOW), as do the backspace, tab, return, insert and 
  563.                  delete keys.  The other keys that work here are:
  564.         
  565.                  <Alt>+<R>            Pops up a ruler line on whatever
  566.                                       line the cursor is currently on.  
  567.                                       This WILL NOT Destroy the screen 
  568.                                       contents.  To get rid of the ruler 
  569.                                       and restore your screen, just do a 
  570.                                       'Screen Redraw'.
  571.         
  572.                  <CTRL>+<A>           Erase to the left of the cursor.
  573.         
  574.                  <CTRL>+<S>           Erase to the right of the cursor.
  575.         
  576.                  <CTRL>+<W>           Erase to the top of the cursor.
  577.         
  578.                  <CTRL>+<Z>           Erase to the bottom of the cursor.
  579.         
  580.                  NOTE:  The cursor keys work as marked when the pen is 
  581.                  UP.  When the pen is down, a line of the selected type 
  582.                  is drawn by the cursor.
  583.         
  584.                  F1 - Line Draw Help
  585.                    This key is used to provide a quick reference to the Line Draw Screen.
  586.         
  587.                  F2 - Single / Double Line Toggle
  588.         
  589.                    This key toggles between single line (-) and double 
  590.                    line (=) mode. Note that the function key line changes 
  591.                    to indicate what pressing the toggle key WILL do, not 
  592.                    the current status of the toggle key.
  593.         
  594.                  F3 - Pen Up / Down Toggle
  595.         
  596.                    This key toggles between pen up (cursor movement) and 
  597.                    pen down (line drawing modes.  The lines are actually 
  598.                    drawn by moving the cursor (with the arrow keys) while 
  599.                    the pen is DOWN.  Appropriate corners will be supplied 
  600.                    automatically. (Well, within limits - the program is 
  601.                    not omniscient.)
  602.         
  603.  
  604.                  F4 - Redraw the Screen
  605.         
  606.                    This  key  is used to redraw the screen after  a  RAM-
  607.                    resident  program has messed it up. It is also  useful 
  608.                    for getting rid of the ruler line.
  609.         
  610.                  F5 - Intersection mode
  611.         
  612.                    Intersection mode is designed to place an 'intersec-
  613.                    tion' character at the current cursor position.  The 
  614.                    way it works is:
  615.         
  616.                    1) Position the cursor where you want an intersection.
  617.                    2) Press the F5 key.
  618.                    3) Press any one of the following keys;
  619.         
  620.         
  621.                    w, W, a, A, s, S, z, Z, x, X        
  622.         
  623.                    (This is going to be a little difficult.....)
  624.         
  625.                    visualize the WASZ diamond on your keyboard as being 
  626.                    representative of the four sides of a square. Lower 
  627.                    case supplies single line intersections appropriate to 
  628.                    the side of the square being represented by the appro-
  629.                    priate key, upper case gives double lines.  The x or X 
  630.                    key does a 'four way' intersection.  I suggest a 
  631.                    little experimentation.
  632.         
  633.                  F10 - Return to main Editor Screen
  634.         
  635.                    This key returns you to the Main Edit Screen.
  636.         
  637.             F7 - Redraw the Screen
  638.             -----------------------
  639.                  This  key  is  used to redraw the screen  after  a  RAM-
  640.                  resident  program has messed it up.  It is  also  useful 
  641.                  for getting rid of the ruler line.
  642.         
  643.             F8 - Graphics Mode 
  644.             ------------------
  645.         
  646.                  This key STARTS the 'GRAPHICS' keyboard mode.  Please 
  647.                  Note that the key used to EXIT graphics mode is the 
  648.                  <ESC> key.
  649.         
  650.         
  651.             F9 - Clear Screen and Restart the Program 
  652.             ------------------------------------------ 
  653.         
  654.                  This key clears the screen and restarts the program.
  655.         
  656.             F10 - Exit the Program
  657.             ----------------------
  658.                    This key is used to exit the program.
  659.         
  660.                    As of Ver 2.11, You will be asked if you have saved 
  661.                    the screen currently displayed. This is a Yes or NO 
  662.                    (Y/N) question.  If you answer yes, the program will 
  663.                    exit.  If the answer is no, you will be asked for the 
  664.                    filename you wish to save the screen in.  The screen 
  665.                    will then be saved and the program will then exit.
  666.         
  667.         
  668.         
  669.             Technical Appendix:
  670.  
  671.             -------------------
  672.         
  673.                  The graphics characters produced by SCREEN DESIGNER are 
  674.                  the extended ASCII character set incorporated in every 
  675.                  video board as part of the standard (as defined by IBM) 
  676.                  character set.  On a CGA, EGA, PGA or other color board, 
  677.                  SCREEN DESIGNER does not operate in the GRAPHICS mode, 
  678.                  but rather in TEXT mode.  This allows the graphics 
  679.                  created by SCREEN DESIGNER to work properly on any type 
  680.                  of computer / video system.
  681.         
  682.                  All files produced by SCREEN DESIGNER are standard ASCII 
  683.                  text files, with no tokenization.  You can edit any of 
  684.                  the image files you create with an ASCII word processor, 
  685.                  such as WORDSTAR in NON-document mode, or the editors in 
  686.                  Turbo Pascal and QuickBasic.
  687.         
  688.                  The files created are 24 records long, with 80 charac-
  689.                  ters per record.  
  690.         
  691.             PLEASE NOTE:   If you use column 80 for your screen design,
  692.                            be advised that in many languages you will 
  693.                            have a problem involving the video systems' 
  694.                            ability (indeed, a desire) to wrap to the next 
  695.                            line.  SCREEN DESIGNER attempts to handle this 
  696.                            problem with column 80 for you, but it will 
  697.                            probably turn out strangely.  I advise that 
  698.                            you design your screens to use columns 1-79, 
  699.                            and ignore column 80 entirely.
  700.         
  701.             If you attempt to read in a file that contains either short 
  702.             lines (less then 80 characters) or short files (less than 24 
  703.             records) SCREEN DESIGNER will pad the records to the requi-
  704.             site length & number.
  705.         
  706.             This program is written in Microsoft QuickBasic 4.5, and 
  707.             makes use of the 'event trapping' features of that language.  
  708.             Attempting to use a RAM-resident program, such as Sidekick 
  709.             (tm), while running SCREEN DESIGNER may produce strange 
  710.             results.
  711.         
  712.             I have attempted to make this program as portable as possi-
  713.             ble.  The screen redraw is a little slow, but keep in mind 
  714.             that SCREEN DESIGNER should work on 98% & 99% compatibles as 
  715.             well as 100% compatibles, and under Windows (tm) and Double-
  716.             Dos (tm).  I felt that the compromise was worth it.
  717.         
  718.         
  719.                  SCREEN DESIGNER has been tested on the following comput-
  720.                  er systems:
  721.                  (machine types are listed generically, to avoid having 
  722.                  to list three pages of trademark credits)
  723.                            AT with CGA
  724.                            AT with EGA
  725.                            AT with monochrome
  726.                            XT with monochrome graphics
  727.                            XT with CGA
  728.                            XT with Hercules 
  729.                            386 with VGA
  730.         
  731.         
  732.                            These systems were run under various versions 
  733.                            of MS-DOS (tm), from  2.11 through 3.2. and 
  734.                            PC-DOS (tm) 3.3
  735.         
  736.         
  737.  
  738.         
  739.             Important note regarding DOS versions:
  740.         
  741.             With the addition of the preset capability, the version of 
  742.             DOS that you run Screen Designer under matters!  As written, 
  743.             the preset file will be maintained in the same directory that 
  744.             the Screen Designer executable files are located in, even if 
  745.             you have it in your path and call it from multiple subdirec-
  746.             tories.  IF YOU ARE USING A DOS VERSION PRIOR TO 3.x, THIS 
  747.             WILL NOT WORK!  Screen Designer will check the version of DOS 
  748.             you are using, and if you are using 2.x, the presets file 
  749.             will be maintained in the CURRENT subdirectory.  
  750.         
  751.         
  752.         
  753.         
  754.             Miscellaneous Notes and Release History:
  755.         
  756.             I'd like to take this opportunity to thank Anthony Scriffig-
  757.             nano, whose program  'CHART'  inspired SCREEN DESIGNER.
  758.         
  759.             I'd also like to thank the system operator of the Software 
  760.             Society BBS (Sparta NJ) for his willingness to put up with my 
  761.             inability to upload the right file the first time (EVER!).  I 
  762.             got the idea for the intersection mode from his main menu.
  763.         
  764.             And, last but not least, I want to thank my wife, Evelyne 
  765.             Stalzer, for tolerating my living at this computer while I 
  766.             wrote SCREEN DESIGNER, and for editing the documentation.
  767.         
  768.         
  769.         
  770.         
  771.             Revision History:
  772.         
  773.             Version .99
  774.             The boxer goes berserk, no line draw mode
  775.         
  776.             Version 1.00
  777.             Beta testing: added corrections for short files & short 
  778.             records, added ruler line, added blank left, right, up & down 
  779.             feature.  (I'll get even with John someday..)
  780.         
  781.             Version 1.45
  782.             The virtual screen wins the battle, but I win the war....
  783.             Where is the cursor going ?, started docs.  figured out the 
  784.             boxer bug, added interlock so up left MUST be above & left of 
  785.             lower right (good morning stupid)
  786.         
  787.         
  788.         
  789.             Version 1.75
  790.             I  found the cursor, rewrite the logical to  physical  screen 
  791.             connection.  (AGAIN!)
  792.         
  793.             Version 2.0
  794.             First Release to the public (Software Society BBS)
  795.         
  796.             2 Days later.....
  797.         
  798.             Version 2.02
  799.             Killed the idea of delay loops in the title display, made it 
  800.             a 'hit a key'.
  801.         
  802.             Version 2.03
  803.             Not released pending $, found minor bug in line draw, on line 
  804.  
  805.             24, going right to left, cursor goes to top of screen. fixed 
  806.             same.
  807.         
  808.             Version 2.04
  809.             Incorporates 2.03 fix and a correction to the virtual-physi-
  810.             cal cursor link.
  811.         
  812.             Version 2.10
  813.             added  intersection  mode, also remapped all F keys  in  draw 
  814.             mode at suggestion of Sid K.
  815.         
  816.             Version 2.11
  817.             At the suggestion of Sid (and original design notes, which I 
  818.             finally found on my desk!) added check for save during exit 
  819.             sequence.
  820.         
  821.             Version 2.30
  822.             Added Trim right and line counter metacharacter to the pro-
  823.             grammer interface. also added offset from top for counter 
  824.             meta.  Rewrote whole programmer interface (internal).  As 
  825.             test, rewrote all help screens using new programmer interface 
  826.             and PROBAS (tm) windowmanager.  New screens only available on 
  827.             color systems, maintaining support for mono systems.
  828.         
  829.             Version 2.33
  830.             Corrected garbage character pickup on exiting 'help' with a 
  831.             function key (Joey DeS).  Added the video mode force feature 
  832.             at request of Chuck A. (sysop of Chuck's attempt), fixed 
  833.             comma bug in programmer interface (Vic LaG.)  
  834.         
  835.             Version 2.35
  836.             Corrected  minor bug in video mode force  routine.   Reworked 
  837.             the way that the INSERT and DELETE keys work.  compile/linked 
  838.             using  OPTCALL  (Public Domain, Copyright  1988,  Michael  W. 
  839.             Cocke)  which  reduced the size of the Executable  file  from 
  840.                 over 140K to about 114K.
  841.         
  842.             Version 2.37
  843.             Added command line facility to enter name of existing file to 
  844.             load for editing.  Added the 'BBS Screen' function to the 
  845.             programmers interface.     
  846.         
  847.             Version 2.39
  848.             Corrected two (actually two and one half) bugs in the command 
  849.             line file load ability.  Non-existant files are now handled 
  850.             properly, and loading a new file from the file menu, after 
  851.             having loaded a file from the command line now works.  the 
  852.             'half bug' was in the way the screen displayed the 'loading' 
  853.             message during startup. it worked, but looked sloppy.        
  854.         
  855.             Version 2.75
  856.             Rewrote  entire  graphics mode,  reworked  graphics  keyboard 
  857.             mode, got mixed mode graphics keyboard to work, almost  broke 
  858.             1  screen barrier, but decided against it on basis of  effort 
  859.             required/registrations  received,   combined  separate   help 
  860.             screens  for  mono & color modes into one  multimode  system, 
  861.             cleaned up main help screens, moved more keystrokes away from 
  862.             the  event  handlers  and back to  keyboard  scanning,  added 
  863.             facility  to  save  under name most  recently  loaded  under. 
  864.             rewrote docs using new version of Wordstar (tm)
  865.         
  866.             Version 2.80
  867.             Not released to the public.  This was a maintenance release 
  868.             implementing a new method of virtual/physical screen mapping.  
  869.             Parts of the code run slower, but Screen Designer will need 
  870.             to address the screen by full XY coordinates when I get 
  871.  
  872.                 around to finishing the ANSI colorizer subsystem.
  873.         
  874.             Version 2.85
  875.             Incorporates version 2.80 improvements plus:  Added the 
  876.             'Preset' capability to the Programmers interface,  Increased 
  877.             support for color systems, rewrote the help screens again,  
  878.             and found/corrected a a TRULY obscure bug that occasionally 
  879.             caused garbage to be written to the end of a formatted-output 
  880.             file. 
  881.         
  882.         
  883.             Version 2.89
  884.             I outsmarted myself in the vertical screen center routine in 
  885.             version 2.85.  I thought I had figured out a way to do it 
  886.             using less RAM - it used less RAM alright, but it didn't work 
  887.             properly. Fixed.   Cleaned up some color-usage errors.  Added 
  888.             the 'toggle ruler line' ability.  Fixed a glitch in the file 
  889.             loader, where a file containing short records would lose the 
  890.             last character of each line (under certain circumstances).  
  891.             Caught several errors in the docs.  Removed the code for 
  892.             screen mode force.  Removed the 'save file under last load 
  893.             name' capability.
  894.         
  895.         
  896.         
  897.         
  898.             It is the policy of MWC Enterprises (Me) to implement REGIS-
  899.             TERED user requests (where possible) in ALL shareware 
  900.             products.  If you have a suggestion, LET ME KNOW!  (If you 
  901.             aren't registered, REGISTER!)  It is a hope (not a policy, 
  902.             but what do you want?) to implement user suggestions in 
  903.             Public Domain Software.
  904.         
  905.         
  906.             IBM is a registered trademark of International Business 
  907.             Machines Corp. Turbo Pascal is a registered trademark of 
  908.             Borland International. QuickBasic is a registered trademark 
  909.             of Microsoft, Inc. 
  910.             Wordstar is a registered trademark of Micropro International 
  911.             Corp. MS-DOS is a registered trademark of Microsoft, Inc. 
  912.             PC-DOS is a registered trademark of International Business 
  913.             Machines Corp.
  914.         
  915.         
  916.  
  917.  
  918.  
  919.