home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / t / thedrawf.zip / THEDRAW.DOC < prev    next >
Text File  |  1992-03-16  |  324KB  |  8,613 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.                    TheDraw Version 4.50
  10.         Color and Monochrome Screen Image Generator/Editor
  11.                  Operation Manual
  12.  
  13.  
  14.  
  15.                 COPYRIGHT (C) 1986-1992 by
  16.            TheSoft Programming Services and Ian E. Davis
  17.                   All Rights are Reserved
  18.  
  19.  
  20.  
  21.                TheSoft Programming Services
  22.                    P.O. Box 7657
  23.                   Fremont, CA. 94537-7657
  24.  
  25.  
  26.  
  27.               Written using Turbo Pascal v6.0
  28.  
  29.  
  30.  
  31.  
  32.                       PREFACE
  33.  
  34.  
  35.        This document is 149 pages long.  This document is Copyright (C) 1988-
  36.        1992 by TheSoft Programming Services.  All rights are reserved.
  37.  
  38.        The computer software programs  TheDraw  (TM)  and  TheDrawR  (TM) are
  39.        Copyright (C)  1986-1992 by  TheSoft Programming Services.  All rights
  40.        are reserved.
  41.  
  42.        TheDraw and TheDrawR are registered trademarks  of TheSoft Programming
  43.        Services.   Other brand and product names are trademarks or registered
  44.        trademarks of their respective holders.
  45.  
  46.        NOTICE:  An  irresponsible  individual  saw  fit  to  modify  and then
  47.        distribute the  changed copies  of TheDraw.   These  are identified as
  48.        having the altered version numbers of 4.30 and 5.00 typically.   Users
  49.        are  highly  encouraged  to  seek  out  and  delete  any copies of the
  50.        archives TDRAW430 and TDRAW500 they may find.   Steps have  been taken
  51.        to avoid this type of hacking in the future.
  52.  
  53.        This  release  of  TheDraw  was  to  be  v4.10;  however to help avoid
  54.        confusion it is being  distributed as  v4.50.   The latest  release of
  55.        TheDraw may always be found on the following BBS system:
  56.  
  57.       The Great American Dream Machine (sysop Dave Gentry)
  58.       Phone: 415-581-3019
  59.       Fidonet file requests: Node 1:215/215, Magic name "THEDRAW"
  60.  
  61.       Downloading the TDRAW450.ZIP archive:
  62.         To enter "<M>essage Base & Download Menus"      Type [M]
  63.              "<A> IBM and Downloads"            Type [A]
  64.              "<D>ownload Files"             Type [D]
  65.              "<3> ALLDIRS.ZIP and TDRAW450.ZIP"     Type [3]
  66.  
  67.       Leaving a message inquiry:
  68.         To enter "<M>essage Base & Download Menus"      Type [M]
  69.              "<B> E-Mail Messages"              Type [B]
  70.              "<P>ost Private Mail"              Type [P]
  71.              Address message to "Ian Davis"
  72.  
  73.        Although mentioned  elsewhere in  this document,  we urge  you here to
  74.        please write if you ever find a suspicious copy of  TheDraw.   Look to
  75.        the program  history section.  If an entry for your release of TheDraw
  76.        seems spliced in, please notify TheSoft.  The sooner we find out about
  77.        "hacks", the sooner corrective action can take place.
  78.  
  79.        Lastly, with  this release our address for placing orders was changed.
  80.        Please send  all  new  orders  and  inquiries  to  TheSoft Programming
  81.        Services, P.O.  Box 7657, Fremont, CA. 94537-7657.  The old address at
  82.        1929 Whitecliff Court,  Walnut  Creek,  CA,  94596  will  still accept
  83.        orders however for quite some time (such is the shareware business).
  84.  
  85.  
  86.        TheDraw v4.50              Preface                i
  87.  
  88.  
  89.  
  90.                       LICENSE
  91.  
  92.  
  93.        TheDraw is  not a  Public Domain  program and is not free.  TheDraw is
  94.        copyright (C) 1986-1992 by TheSoft Programming Services.
  95.  
  96.        Non-registered users of this  program are  granted a  limited two-week
  97.        license  to  TheDraw  to  evaluate  the programs suitability for their
  98.        requirements.  Any usage of TheDraw beyond the  evaluation time period
  99.        requires registration  of each copy of the program used.   Use of non-
  100.        registered copies of TheDraw beyond the original evaluation  period is
  101.        prohibited.
  102.  
  103.        TheDraw may  NOT be modified in any respect, for any reason, including
  104.        but  not  limited   to,   de-compiling,   disassembling,   or  reverse
  105.        engineering of  the program.   The opening title screen, help screens,
  106.        and all  other  proprietary  program  output  must  never  be altered,
  107.        removed, bypassed or modified by any means.
  108.  
  109.        You are free to distribute the PUBLICLY AVAILABLE shareware version of
  110.        TheDraw to others subject  to  the  above  restrictions  and  also the
  111.        following:
  112.  
  113.       A.   No fee is charged for its use.
  114.  
  115.       B.   No renumeration  may be  accepted for  TheDraw.  This does not
  116.            apply to computer access charges the system operators (Sysops)
  117.            of  or  organizations  owning  bulletin  board systems, online
  118.            services, etc... may charge subscribers.
  119.  
  120.       C.   TheDraw must be copied in unaltered form, complete  with files
  121.            containing  license  information,  the  FULL documentation and
  122.            all  accompanying   files.      The   self-extracting  archive
  123.            distributed by TheSoft must not be altered in ANY respect.
  124.  
  125.       D.   All shareware  houses/distribution firms  must make explicitly
  126.            clear that  the  diskette  purchase  containing  any shareware
  127.            program has NOT registered the shareware with TheSoft.
  128.  
  129.        System Operators  may make  TheDraw available for download only if the
  130.        above conditions are met.  The  self-extracting archive (TDRAW450.EXE)
  131.        distributed by  TheSoft or an equivalent archive may be made available
  132.        only in complete form.    Refer  to  section  FILE  LISTING  to verify
  133.        complete  package  contents.    If  the contents appear altered or not
  134.        complete, you may obtain the latest  release of  TheDraw directly from
  135.        TheSoft  by  sending  a  formatted  diskette  labeled  with  the  word
  136.        "THEDRAW".  Please include $5 for handling.
  137.  
  138.        An alternate means of obtains the latest shareware  archive is calling
  139.        The Great  American Dream  Machine at (510) 581-3019.  See preface for
  140.        download instructions and how to leave comments.
  141.  
  142.  
  143.  
  144.        TheDraw v4.50              License               ii
  145.  
  146.  
  147.  
  148.  
  149.        Commercial distributors of "Public  Domain", "Shareware",  and/or User
  150.        Supported  software  may  distribute  TheDraw  subject  to  the  above
  151.        conditions  only  after  obtaining  WRITTEN  permission  from  TheSoft
  152.        Programming  Services.     This  condition  statement  supersedes  all
  153.        previous agreements.
  154.  
  155.        Please refer to the section entitled registration/ordering section for
  156.        additional information  on registration,  corporate site-licensing and
  157.        related topics.
  158.  
  159.        -----
  160.  
  161.        The above license statement does not  apply to  the REGISTERED version
  162.        of TheDraw.   The  registered software of TheSoft Programming Services
  163.        is protected  under United  States Copyright  and Trademark  Laws.  It
  164.        must be treated just like a book with certain exceptions as follows:
  165.  
  166.        A. TheSoft  Programming  Services  authorizes  the  making of archival
  167.       copies  of  the  registered  software  for  the  sole   purpose  of
  168.       backing-up  your  software  and  protecting  your  investment  from
  169.       possible loss.
  170.  
  171.        B. The  medium  on  which  the  registered  software  is  recorded  is
  172.       transferred to the customer, but not the title to the software.
  173.  
  174.        C. The  customer  may  resell  or  distribute unmodified copies of the
  175.       registered  software  provided  the  customer  has  purchased  from
  176.       TheSoft Programming  one copy  of the  registered software for each
  177.       one sold or distributed.  The  provisions of  this software license
  178.       shall also  be applicable  to third parties receiving copies of the
  179.       registered software from the customer.
  180.  
  181.        D. By saying, "just like a book",  TheSoft Programming  means that the
  182.       registered software  may be used by any number of people and may be
  183.       freely moved from one computer location to another so long as there
  184.       is ABSOLUTELY NO POSSIBILITY of it being used at one location while
  185.       being used at another.  Just like a book that cannot be read by two
  186.       different people in two different locations at the same time.
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.        TheDraw v4.50              License              iii
  203.  
  204.  
  205.  
  206.                    ORDERING INFORMATION
  207.  
  208.  
  209.        Once a registered user of TheDraw, you are free to utilize the program
  210.        as often as you wish.  Other than having a clear conscience, there are
  211.        many advantages  to registered.   You can opt to receive in the mail a
  212.        registered  version  of  TheDraw  with  configurable  editor commands,
  213.        enhanced editing  facilities, context sensitive pop-up help, and macro
  214.        keys.  The registered version support  utility routines  (uncrunch and
  215.        display) offer  Bios write  capability and  snow/hash prevention.  You
  216.        are also notified via mail  when  significant  enhancements  have been
  217.        made to  the program.  Once registered, all upgrades are available for
  218.        a $5 upgrade fee plus the original TheDraw diskette (see below).
  219.  
  220.        There are two ways to register.    The  first  is  by  sending  $15 to
  221.        TheSoft Programming  Services along  with a registration form.  You do
  222.        NOT receive the registered version of  TheDraw for  this registration,
  223.        but  are  notified  of  upgrades.    For  an  additional  $5  plus  $2
  224.        shipping/handling, we send you  the  latest  shareware  and registered
  225.        versions of  TheDraw on  disk along  with documentation  (on disk) and
  226.        utilities. If you want to receive TheDraw on a 3.5 inch diskette (720k
  227.        format), add an additional $3 for each diskette ordered.
  228.  
  229.        If unsure, you can receive the latest shareware version of TheDraw for
  230.        evaluation by sending a formatted diskette plus $5 for handling.
  231.  
  232.        Please use the following form or print the included file "MAILER" when
  233.        placing an order.
  234.  
  235.        -----
  236.        NON U.S.  residents, please  send checks drawn on U.S. funds.  We will
  237.        accept non U.S. currency, but you must include  an additional  $5 (US)
  238.        to cover  exchange handling.   Also add $5 overseas shipping/handling.
  239.        Canadians can obtain postal money orders in U.S. denomination easily.
  240.  
  241.  
  242.        UPGRADING TO LATEST VERSION OF THEDRAW
  243.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  244.        Users who have registered (and received a diskette) may upgrade to the
  245.        latest version  of TheDraw  by sending in their TheDraw ORIGINAL DISK,
  246.        along with $5 plus $2 (shipping/handling).   Please  use the following
  247.        order  form  when  upgrading.    If  there has been an address change,
  248.        please indicate so on the order form.
  249.  
  250.        The original disk must be returned and contain  the registered version
  251.        of  TheDraw.    The  disk  will  be reformatted and the current Master
  252.        copied onto it.  Any  disk  in  poor  condition  will  be  replaced by
  253.        TheSoft.   If the  serial number label is missing or the diskette does
  254.        not contain the registered version  of  TheDraw,  the  update  will be
  255.        refused and the diskette returned unchanged.
  256.  
  257.  
  258.  
  259.  
  260.        TheDraw v4.50             Ordering               iv
  261.  
  262.  
  263.  
  264.  
  265.        Please Remit To:    TheSoft Programming Services
  266.                P.O. Box 7657
  267.                Fremont, CA. 94537-7657
  268.  
  269.        Qty.    Description                      Each    Total
  270.  
  271.        ____    TheDraw Upgrade to version 4.50          $5.00   ________
  272.            (You must return your original diskette
  273.         containing your copy of the registered
  274.         version of TheDraw)
  275.  
  276.        ____    TheDraw Evaluation Copy              $5.00   ________
  277.            (You supply diskette, no registration)
  278.  
  279.        ____    TheDraw Registration                $15.00   ________
  280.            (Does not include a new diskette with the
  281.         registered version of TheDraw)
  282.  
  283.        ____    TheDraw Registration with 5.25" diskette    $20.00   ________
  284.            (Registration including diskette with the
  285.         latest shareware and registered program
  286.         versions along with manual on diskette)
  287.  
  288.        ____    TheDraw Registration with 3.5" diskette     $23.00   ________
  289.            (same as above except on new size media)
  290.                              Subtotal   ________
  291.  
  292.       (Site License discount - see below)        Discount [-________]
  293.  
  294.       (U.S. orders add $2 shipping & handling)       Shipping   ________
  295.       (Foreign orders add $5 shipping)
  296.  
  297.       (Add $5 for Foreign Currency Exchange)    Misc. Charges   ________
  298.  
  299.       (CA residents please add sales tax)             Tax   ________
  300.  
  301.                                 TOTAL  $________
  302.  
  303.       Name: ________________________________________________________
  304.  
  305.        Company: ________________________________________________________
  306.  
  307.        Address: ________________________________________________________
  308.  
  309.         ________________________________________________________
  310.  
  311.         ________________________________________________________
  312.  
  313.  
  314.        All checks  must be  drawn on  U.S. Funds  in U.S. Dollars.  Sorry, no
  315.        C.O.D. orders will be accepted.
  316.  
  317.  
  318.        TheDraw v4.50             Ordering                v
  319.  
  320.  
  321.  
  322.                    SITE LICENSE
  323.  
  324.  
  325.        If you plan on using TheDraw in a corporate, government  office, or in
  326.        any  business  environment  whatsoever,  registration is mandatory and
  327.        the two week limited license is  strictly enforced.   For  such users,
  328.        quantity discounts are available under a Site License agreement.
  329.  
  330.        One MASTER  copy of  TheDraw (with  documentation) will be provided on
  331.        diskette.   The site is responsible for printing the documentation and
  332.        copying the  diskettes for distribution.   Backups of the MASTER disks
  333.        do not count towards the total copies of the license.
  334.  
  335.        With all site licenses, the site will supply  one contact  person with
  336.        which all correspondence will be made.  If a problem should occur, the
  337.        contact person will call and make  arrangements to  get a  fix for the
  338.        glitch.   Updates to  TheDraw will be forwarded to the contact person.
  339.        When filling out the order form, use the contact persons name to avoid
  340.        confusion at a later date.
  341.  
  342.  
  343.        Following is the current site license discount rates:
  344.  
  345.                  TOTAL COPIES     DISCOUNT
  346.                 1 - 4       none
  347.                 5 - 10      10%
  348.                    11 - 20      20%
  349.                    21 - 30      30%
  350.                    31 - 50      40%
  351.                    51 - 100     50%
  352.                   101+          60%
  353.  
  354.  
  355.        NOTE:   All discounts and prices are subject to change without notice.
  356.            Also note that  discounts  are  not  cumulative  and  apply to
  357.            separate orders only.
  358.  
  359.  
  360.        PURCHASE ORDER TERMS AND REQUIREMENTS
  361.        _____________________________________
  362.  
  363.        Purchase Orders less than $100 must be pre-paid.
  364.  
  365.        Terms are net 30 days.
  366.        Freight is prepaid by TheSoft.
  367.        Lead time: Stock items.
  368.  
  369.        Tax exceptions:   Include  appropriate documentation.  Contact TheSoft
  370.        for voice verification if required.
  371.  
  372.  
  373.  
  374.  
  375.  
  376.        TheDraw v4.50          Site Licensing            vi
  377.  
  378.  
  379.  
  380.                      WARRANTY
  381.  
  382.  
  383.        TheDraw is provided AS IS without any warranty,  expressed or implied.
  384.        This  includes  without  limitation  the  fitfulness  to  a particular
  385.        purpose or application and any warranties of merchantability.
  386.  
  387.        While we tried to be as through as  possible while  debugging TheDraw,
  388.        TheSoft  Programming  Services  shall  not  be liable for any damages,
  389.        whether direct, indirect, special,  or  consequential  arising  from a
  390.        failure of  this program  or accompanying files to operate in a manner
  391.        desired by the user.  TheSoft Programming Services shall not be liable
  392.        for any  damage to  data or  property which  may by caused directly or
  393.        indirectly by use of this program.
  394.  
  395.        In no event will TheSoft Programming Services be liable to you for any
  396.        damages, including  any lost profits, lost savings or other incidental
  397.        or consequential damages arising out of your use  or inability  to use
  398.        the program, or for any claim by any other party.
  399.  
  400.        -----
  401.  
  402.        If  you  have  a  problem  with  TheDraw please feel free to write and
  403.        describe the situation.  Registered users,  please include  the serial
  404.        number found on your diskette.
  405.  
  406.        To  those  people  who  have  registered (with diskette), the physical
  407.        diskette is warranted against defects in materials and workmanship for
  408.        a period  of 60  days from  date of shipment by TheSoft.  Any returned
  409.        disks found damaged or bad will be replaced at no charge.
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.        TheDraw v4.50             Warranty              vii
  435.  
  436.  
  437.  
  438.                  TABLE OF CONTENTS
  439.  
  440.  
  441.        Preface ...................................................... i
  442.  
  443.        License
  444.       Single User License ....................................... ii
  445.       Giving out Copies ......................................... ii
  446.       System Operators (Sysops) Info ............................ ii
  447.       Software Distributors - Read this ......................... iii
  448.       Registered Version License Agreement ...................... iii
  449.  
  450.        Ordering Information
  451.       Registration .............................................. iv
  452.          Upgrading to Latest Version of TheDraw ................. iv
  453.          Registration Only (no diskette) ........................ iv
  454.          Registration (diskette sent out) ....................... iv
  455.          Getting a Trial Copy ................................... iv
  456.          Getting a 3.5 inch diskette ............................ iv
  457.       Invoice Order Form ........................................ v
  458.       Site Licensing ............................................ vi
  459.          Bulk Order Discounts ................................... vi
  460.       Purchase Order Terms and Requirements ..................... vi
  461.          Tax Exceptions ......................................... vi
  462.  
  463.        Warranty ..................................................... vii
  464.  
  465.        Introduction ................................................. 1
  466.  
  467.        Definitions .................................................. 3
  468.  
  469.        System Requirements .......................................... 4
  470.       Multitasking Environments ................................. 4
  471.  
  472.        Getting Started .............................................. 5
  473.       File Listing .............................................. 5
  474.       Installing TheDraw ........................................ 6
  475.       Customizing TheDraw ....................................... 6
  476.       Starting TheDraw .......................................... 7
  477.       Leaving/Exiting TheDraw ................................... 7
  478.       Creating your First Screen ................................ 7
  479.          Saving your First Screen ............................... 8
  480.          Exiting TheDraw and Viewing your First Screen .......... 9
  481.          Egads!  What Happened? ................................. 9
  482.       Editing your First Screen ................................. 9
  483.          Changing Colors ........................................ 10
  484.          Painting the Screen .................................... 10
  485.       Making your Second TheDraw Screen ......................... 11
  486.          Drawing Lines .......................................... 11
  487.          Marking a Block ........................................ 12
  488.          Using Sprite mode ...................................... 13
  489.  
  490.  
  491.  
  492.        TheDraw v4.50                          viii
  493.  
  494.  
  495.  
  496.       Animating your Second TheDraw Screen ...................... 15
  497.          Selecting a Scan Pattern ............................... 15
  498.          Viewing the Animation Sequence ......................... 16
  499.          Saving Animation ....................................... 16
  500.       The Example Files ......................................... 17
  501.  
  502.        Operating TheDraw ............................................ 19
  503.       Command Line Filespecs .................................... 19
  504.       The Status Line ........................................... 19
  505.       HELP! ..................................................... 20
  506.       Cursor Control ............................................ 20
  507.       Mouse Control ............................................. 21
  508.       Command Summary ........................................... 22
  509.  
  510.        The Animation System ......................................... 23
  511.       What is Animation? ........................................ 23
  512.       Animation Basics .......................................... 24
  513.       A Simple Example .......................................... 24
  514.       Making a Block Move ....................................... 25
  515.       Easy Animation ............................................ 27
  516.          Animation Scan Patterns ................................ 27
  517.          Recording Cursor Movements ............................. 28
  518.       Editing and Deleting Animation Entries .................... 28
  519.          Changing your Animation Scan Pattern ................... 28
  520.       Advanced Animation Editing ................................ 29
  521.          Editing Partial Animation Sequences .................... 29
  522.         Animation Limiting .................................. 29
  523.         Animation Markers ................................... 30
  524.          Ansi Include Files ..................................... 30
  525.          Making Custom User Ansi Sequences ...................... 30
  526.       Tricks and Techniques ..................................... 31
  527.          Use of Colors .......................................... 31
  528.          Shading ................................................ 31
  529.          Shadowing .............................................. 32
  530.          Pausing ................................................ 33
  531.       Pitfalls and Limitations .................................. 33
  532.  
  533.        Tips and Examples for Programmers ............................ 34
  534.       Programming in Assembler .................................. 34
  535.       Programming in Pascal ..................................... 36
  536.          Turbo Pascal v4.0 through v5.5 ......................... 38
  537.          Turbo Pascal v6.0 ...................................... 40
  538.       Programming in C .......................................... 41
  539.          Using Object Files with C .............................. 43
  540.       Programming in Standard Basic ............................. 44
  541.       Programming in Microsoft QuickBasic v4.0 and v4.5 ......... 45
  542.          Making and Using Quick Libraries ....................... 46
  543.          The Display Routines ................................... 47
  544.          Command Line Compilation ............................... 50
  545.       Programming in Clipper(tm) ................................ 51
  546.  
  547.  
  548.  
  549.  
  550.        TheDraw v4.50                            ix
  551.  
  552.  
  553.  
  554.        Pull-Down Menu System ........................................ 55
  555.       The FILES Menu ............................................ 55
  556.       The GLOBAL Menu ........................................... 57
  557.       The OPTIONS Menu .......................................... 58
  558.          Setup Default Options .................................. 59
  559.       The SCREEN Menu ........................................... 61
  560.       The FONTS Menu ............................................ 63
  561.          Standard Font .......................................... 63
  562.          Choosing a Font Outline ................................ 63
  563.          Font Selection ......................................... 64
  564.       The ANIMATION Menu ........................................ 64
  565.       The COLOR Menu ............................................ 66
  566.       The TOGGLES Menu .......................................... 67
  567.  
  568.        TheDraw Keyboard Commands .................................... 69
  569.       Alt-A  Change Text Color Attributes ....................... 69
  570.       Alt-B  Block Action Commands .............................. 70
  571.            Copy a Block ..................................... 71
  572.            Move a Block ..................................... 71
  573.            Fill a Block ..................................... 72
  574.            Block Text Operations ............................ 73
  575.            Delete a Block ................................... 74
  576.            Erase a Block .................................... 74
  577.            Block Replace Operations ......................... 74
  578.            Load a Block (normal mode only) .................. 75
  579.            Save a Block (normal mode only) .................. 75
  580.            Rescan a Block (animation mode only) ............. 75
  581.       Alt-C  Clear Current Screen ............................... 75
  582.       Alt-D  Set Default Clear Screen Color ..................... 76
  583.       Alt-E  Change Page Layer Edit Screen ...................... 76
  584.            Sprite Editing ................................... 76
  585.       Alt-F  View Function Key Sets ............................. 78
  586.       Alt-G  Global Commands .................................... 78
  587.            Copy Screen ...................................... 79
  588.            Move/Rotate Screen ............................... 79
  589.            Fill Screen ...................................... 79
  590.            Global Text Operations ........................... 80
  591.            Global Replace Operations ........................ 81
  592.       Alt-H  Display Help Information ........................... 81
  593.       Alt-I  Insert a Line ...................................... 82
  594.       ALT-J  Animation Options .................................. 82
  595.            From Normal Edit Mode ............................ 82
  596.            From Animator Mode ............................... 85
  597.              Include - Specify Animation Include Files ...... 85
  598.                Ansi Music ................................... 86
  599.              User_Seq - Specify User Control Sequences ...... 86
  600.              Limit - Specify Animation Limiting ............. 87
  601.              Marker - Specify Animation Markers ............. 88
  602.              Movement - Toggle Storage of Cursor Movement ... 89
  603.              Normal - Convert to Normal Edit Mode ........... 89
  604.              Rescan - Rescan All Screens for New Sequence ... 89
  605.              Pause - Animation Pausing ...................... 89
  606.  
  607.  
  608.        TheDraw v4.50                             x
  609.  
  610.  
  611.  
  612.       Alt-K  Delete a File ...................................... 90
  613.       Alt-L  Load Screen from Disk .............................. 90
  614.       Alt-M  Select Draw Mode (toggle) .......................... 92
  615.       Alt-N  Ruler .............................................. 92
  616.       Alt-O  Change Drive/Sub Directory ......................... 92
  617.       Alt-P  Paint/Fill Commands ................................ 93
  618.       Alt-Q  Redraw Screen (animator mode only) ................. 93
  619.       Alt-R  Restore/Undo Changes ............................... 94
  620.       Alt-S  Save Screen to Disk ................................ 94
  621.            Ansi Text (.ANS) ................................. 94
  622.            Ascii Text (.ASC) ................................ 95
  623.            Assembly Language (.ASM) ......................... 95
  624.            Binary Screen Dump (.BIN) ........................ 96
  625.            Basic BSave Screen Dump (.BSV) ................... 96
  626.            Dos COM Files (.COM) ............................. 96
  627.            Turbo Pascal (.PAS) .............................. 96
  628.            Modern C (.H) .................................... 96
  629.            Intel Compatible Object Code (.OBJ) .............. 97
  630.               Object File Data Formats ...................... 98
  631.            TheDraw Setup Save (.TD) ......................... 98
  632.       Alt-T  Tab Setup .......................................... 99
  633.       Alt-U  Use Color under Cursor ............................. 99
  634.       Alt-V  View a Screen (not load) ........................... 100
  635.       Alt-W  Edit Character (animator mode only) ................ 100
  636.       Alt-X  Exit TheDraw ....................................... 100
  637.       Alt-Y  Delete Current Line ................................ 101
  638.       Alt-Z  Erase Cursor Character (animator mode only) ........ 101
  639.  
  640.       ALT-[LEFT]  Delete Current Column ......................... 101
  641.       ALT-[RIGHT] Insert a Column ............................... 101
  642.       Alt--  Toggle Color Draw Mode ............................. 101
  643.       Alt-=  Toggle Macro Learning Mode ......................... 102
  644.  
  645.       Alternate Color Change Options (CTRL-UP/DOWN/LEFT/RIGHT) .. 102
  646.       Solid Spaces (SHIFT-SPACE) ................................ 103
  647.       Full Screen Editing (CTRL-PRTSC) .......................... 103
  648.  
  649.        The Font Editor (TDFONTS) .................................... 104
  650.       Running TDFonts ........................................... 104
  651.       Viewing a Font ............................................ 105
  652.       Changing a Font ........................................... 105
  653.          Delete Symbol .......................................... 106
  654.          Copy Symbol ............................................ 106
  655.          Modify Symbol .......................................... 106
  656.         Edit Modes .......................................... 107
  657.         Reserved Characters ................................. 107
  658.       Making New Fonts .......................................... 108
  659.       Moving a Font ............................................. 108
  660.       Renaming Fonts ............................................ 109
  661.       Deleting a Font ........................................... 109
  662.       Font Importing ............................................ 109
  663.       Font Exporting ............................................ 109
  664.  
  665.  
  666.        TheDraw v4.50                            xi
  667.  
  668.  
  669.  
  670.        The Presentation Program (THEPP) ............................. 110
  671.  
  672.        The Setup Utility ............................................ 114
  673.       Why Setup? ................................................ 114
  674.       Display Windows and Selecting Options ..................... 115
  675.       Saving and Aborting Changes ............................... 115
  676.       Running Setup ............................................. 115
  677.          Main Menu .............................................. 115
  678.         Editor Configuration ................................ 116
  679.            Changing a key entry ............................. 116
  680.            Allowed Keystrokes ............................... 116
  681.         Keyboard Customize .................................. 117
  682.         Screen Mode ......................................... 117
  683.         Colors .............................................. 119
  684.         Files Directory ..................................... 119
  685.         Memory Usage ........................................ 120
  686.         Defaults ............................................ 120
  687.         Quit/Save ........................................... 121
  688.  
  689.        Appendix A:  Setting up CONFIG.SYS ........................... 122
  690.  
  691.        Appendix B:  Extended/Special Character Set .................. 123
  692.  
  693.        Appendix C:  Common Questions & Answers ...................... 124
  694.  
  695.        Revision History ............................................. 128
  696.  
  697.        The Future ................................................... 135
  698.  
  699.        Comments ..................................................... 136
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.        TheDraw v4.50                           xii
  725.  
  726.  
  727.  
  728.  
  729.                    INTRODUCTION
  730.  
  731.  
  732.        TheDraw is a powerful  screen  image  generator/editor  for  color and
  733.        monochrome  video  users.    What  does that mean?  Literally, TheDraw
  734.        makes designing and figuring out a video screen display childs play.
  735.  
  736.        Its basic premise is this: be easy to use.   The most  novice computer
  737.        user can  make an  Ansi text file screen with TheDraw in only minutes.
  738.        From that point on,  you can  explore and  use more  of the horsepower
  739.        available in TheDraw.
  740.  
  741.        Someone is probably saying "it edits screens...  big deal".  This type
  742.        of person has never known the agony of creating a good looking menu or
  743.        display for a program (assuming he/she programs), making a fancy batch
  744.        file intro screen, or  having to  quickly putting  together a computer
  745.        presentation for the boss.
  746.  
  747.        The biggest  problem facing  most people is we really do not know what
  748.        will look good until  we  see  it.    Manually  editing  a  screen can
  749.        literally  take  hours.    With  TheDraw,  you can free form until you
  750.        really know what is perfect.    With  the  picture  in  mind,  you can
  751.        quickly develop  whatever is necessary or instruct TheDraw to create a
  752.        data file which can be used.  Instead of hours, making a  screen takes
  753.        minutes.
  754.  
  755.        For  the  curious,  TheDraw  can  transform your masterpiece into data
  756.        files with the following formats:
  757.  
  758.          ANSI color text (useful in batch files, BBS's, etc...)
  759.          ASCII text (compatible with word processors and text editors)
  760.          BINARY files (generic, useful in most everything)
  761.          BSAVE (for Basic)
  762.          COM files (actual separate programs executable directly
  763.         by Dos - Great for batch files and presentations)
  764.          ASSEMBLER (for the die-hard coder)
  765.          TURBO PASCAL (directly compilable source code)
  766.          C (format is for Turbo C specifically)
  767.          OBJECT (Intel format compatible, suitable for linking.  Four
  768.         varieties available for Large/Small generic data model, Turbo
  769.         Pascal v4.0+, and QuickBasic v4.0+)
  770.          THEDRAW (custom storage format for FAST loading and saving)
  771.  
  772.        TheDraw was  long ago originally written as an improvement to a simple
  773.        program named AnsiDraw written by Amrich  Enterprises.   Both programs
  774.        provided similar  operation, with  TheDraw giving a much enhanced user
  775.        interface.
  776.  
  777.        TheDraw is  now vastly  improved over  the abilities  of AnsiDraw, and
  778.        most other  screen editors.   It  is compatible with systems that have
  779.        250k of free memory available.  Monochrome and Color monitor users are
  780.  
  781.  
  782.        TheDraw v4.50           Introduction              1
  783.  
  784.  
  785.  
  786.        supported,  and  a  special  keyboard  driver  allows  you to redefine
  787.        keystrokes that do not operate properly or are used by  other programs
  788.        (registered  version).    If  you  have  an  EGA or VGA video display,
  789.        TheDraw permits editing on 43 or 50 line screens respectfully.
  790.  
  791.        Ascii fonts are fully supported.   These are  large scale  letters and
  792.        symbols which  span multiple lines.  Great for making welcome messages
  793.        or notes of importance.
  794.  
  795.        Another feature  TheDraw  fully  supports  is  ANIMATION.    With this
  796.        facility you can develop quick and dirty presentations, or simply make
  797.        a generic screen appear with pizzazz.  You can either let TheDraw make
  798.        an animation  sequence from  a static  image, or  one can be made from
  799.        scratch; thus letting you fully control  the appearance  of your work.
  800.        TheDraw gives  you a  maximum of 16000 separate animation "entries" to
  801.        handle the most complex job.  The final result can be saved  either as
  802.        an ANSI file (Ansi Animation) or TheDraw format file.  See the section
  803.        entitled "The Animation System" for more information.
  804.  
  805.        To get started using TheDraw right away, refer to the section entitled
  806.        "Getting Started with TheDraw".  This section describes how to install
  807.        and run TheDraw.
  808.  
  809.        Enjoy!
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.        TheDraw v4.50           Introduction              2
  841.  
  842.  
  843.  
  844.  
  845.                     DEFINITIONS
  846.  
  847.  
  848.        Throughout  this  documentation  you  may  run  across  the occasional
  849.        enigmatic  word  that  needs  explaining.      The  following are some
  850.        examples you might come across:
  851.  
  852.          enigmatic      - mysterious or cryptic
  853.  
  854.          [ENTER] or C/R - This represents the return key on the keyboard.
  855.                   If you see this in the text, press the Enter
  856.                   key; do not type the actual letters.
  857.  
  858.          ESC or [ESC]   - Means to press the ESC key on the keyboard.
  859.  
  860.          [letter]       - Means to press the  actual key  marked 'letter'
  861.                   on your  keyboard.  ie: [L]oad, [L], or [L]left
  862.                   all mean press the letter 'L' key.
  863.  
  864.          Alt-<letter>   - Alt- is always followed by another character.
  865.            or             Together, this symbol means to first press and
  866.          [ALT-<letter>]   hold down the  ALT  key  on  the  keyboard then
  867.                   type the  letter key following it.  ie: [ALT-A]
  868.                   means hold ALT then press 'A'.
  869.  
  870.          Ctrl-<letter>  - This is executed the same as the ALT key.
  871.          [CTRL-<letter>]  Press and hold down the CTRL then hit the
  872.            or             letter following.  ie:  CTRL-A and ^A mean the
  873.          ^<letter>        same thing - hold CTRL then press 'A'.
  874.  
  875.          [LEFT] [RIGHT] - Means to press the corresponding keypad arrow
  876.          [UP] [DOWN]      key on your keyboard.  Similar to the [letter]
  877.          [TAB] etc...     example shown above.  ie: [UP] means to press
  878.                   the up arrow key.
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898.        TheDraw v4.50            Definitions              3
  899.  
  900.  
  901.  
  902.  
  903.                 SYSTEM REQUIREMENTS
  904.  
  905.  
  906.        TheDraw requires an IBM PC/XT/AT or close compatible running MsDos 2.0
  907.        or  higher.      In  addition,  a monochrome adapter or color graphics
  908.        display adapter (CGA, EGA, or  VGA)  plus  monitor  is  needed  to run
  909.        properly.
  910.  
  911.        In a minimum configuration, 250 kilobytes of free memory are required.
  912.        The maximum memory usage is  430k  of  memory  (8  page  layers, 16000
  913.        animation  entries).    TheDraw  will  always  attempt to allocate all
  914.        available memory up to the limits specified via the Setup utility.
  915.  
  916.  
  917.  
  918.        MULTITASKING ENVIRONMENTS
  919.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  920.        TheDraw can  be  used  under  multitasking  or  windowing environments
  921.        provided  the  full  video  screen  is  allocated  to it.  The program
  922.        directly accesses video memory  and  the  keyboard  hardware  for some
  923.        functions.   TheDraw does  not use any high resolution graphics in its
  924.        operation.
  925.  
  926.        TheDraw  is  known  to  operate  under  Double  Dos  except  for minor
  927.        problems.    Double  Dos  disables certain keyboard sequences (notably
  928.        Ctrl-PrtSc).  For this situation, people  with the  registered version
  929.        of TheDraw can use the Setup utility to redefine the function of Ctrl-
  930.        Prtsc to another key.
  931.  
  932.        TheDraw operates under Microsoft Windows and  Desqview provided memory
  933.        and video requirements (as mentioned above) are taken care of.
  934.  
  935.  
  936.        Note:    It is easy to cause problems with some window environments if
  937.         the user wishes.  Working  in  another  window  while TheDraw
  938.         attempts  to  refresh  its  screen  may result in information
  939.         being overwritten.  Be warned.
  940.  
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.        TheDraw v4.50        System Requirements              4
  957.  
  958.  
  959.  
  960.  
  961.                   GETTING STARTED
  962.  
  963.  
  964.        Setting up TheDraw to operate on your computer is fairly easy.  If you
  965.        received TheDraw  on diskette,  we suggest  you backup the disk before
  966.        proceeding.  It never hurts to play things safe.
  967.  
  968.        On registered diskettes obtained  from  TheSoft  a  batch  file called
  969.        INSTALL.BAT is  included to  simplify installation.  The INSTALL batch
  970.        file is not bundled with the shareware version of TheDraw.
  971.  
  972.  
  973.        FILE LISTING
  974.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  975.        The following briefly lists  those files  included with  the shareware
  976.        version of TheDraw:
  977.  
  978.  
  979.        WHATSNEW.DOC      Brief listing of new additions for this release.
  980.        MAILER        A registration form which when printed can be easily
  981.              folded and mailed.  No envelope is needed.
  982.  
  983.        PRINTDOC.EXE      Program to  simplify printing  out this documention.
  984.              Type "PRINTDOC [enter]" from the dos prompt.
  985.        SETUP.EXE     TheDraw setup utility.  See following section below.
  986.        TDFONTS.EXE       TheDraw font editor utility.
  987.        TDFONTS.TDF       TheDraw font database file.
  988.        THEDRAW.EXE       Shareware version of TheDraw
  989.        THEDRAW.DOC       This documentation file.
  990.  
  991.        SHUTTLE2.ANS  \
  992.        DEMO.TD        \  Example demonstration files.
  993.        SHADING.TD     /  See section "THE DEMO FILES" for descriptions.
  994.        EFFECTS.BIN   /
  995.  
  996.        UNCRUNCH.ASM  \   Implementations of the algorithm needed to display
  997.        UNCRUNCH.PAS   \  screen images compressed (crunched) by TheDraw.
  998.        UNCRUNCH.H      > The first is for assembly language, the second for
  999.        UNCRUN_N.OBJ   /  Turbo Pascal, the third has external C declarations
  1000.        UNCRUN_F.OBJ  /   linking to  routines in the UNCRUN_N/UNCRUN_F files.
  1001.              Refer to  "PROGRAMMERS  PROGRAMMING  TIPS"  for more
  1002.              information.
  1003.  
  1004.        QB4UTIL.BI        QuickBasic 4.x display routine declarations.
  1005.        QB4UTIL.LIB       QuickBasic 4.x display routines in library form.
  1006.  
  1007.        MAKEQLB.BAT       Produces  Quick  Libraries  (.QLB  and .LIB) for use
  1008.              with QuickBasic.  Refer  to "PROGRAMMERS PROGRAMMING
  1009.              TIPS" for more information.
  1010.  
  1011.  
  1012.  
  1013.  
  1014.        TheDraw v4.50          Getting Started                5
  1015.  
  1016.  
  1017.  
  1018.  
  1019.        The registered version of TheDraw adds the files:
  1020.  
  1021.        THEDRAWR.EXE      Registered version of TheDraw
  1022.        THEDRAWR.HLP      Context sensitive help file for registered version.
  1023.        THEPP.EXE     The Presentation Program utility.
  1024.  
  1025.  
  1026.  
  1027.        INSTALLING THEDRAW
  1028.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1029.        You will  want all  files frequently  used placed onto either a "work"
  1030.        diskette or your hard drive.  To reduce space requirements,  the setup
  1031.        utility, documentation  and example  files are  compacted.  You should
  1032.        use INSTALL to obtain these files.
  1033.  
  1034.        First, insert the distribution diskette into drive A.  For floppy disk
  1035.        installation, type the command:
  1036.  
  1037.       A:INSTALL FLOPPY
  1038.  
  1039.        For hard disk installation, type the command:
  1040.  
  1041.       A:INSTALL HD
  1042.  
  1043.        After  either  command  press  [ENTER].    Simply  follow  the  online
  1044.        instructions presented.  Once done, you  are all  set to  go.  INSTALL
  1045.        will explain  about the  README file and PRINTDOC utility.  The README
  1046.        file contains last-minute details about this release of  TheDraw.  The
  1047.        PRINTDOC utility handles sending this documentation to your printer.
  1048.  
  1049.        If  you  have  never  used  TheDraw  before,  you may wish to read the
  1050.        section "Making your First  TheDraw Screen"  below.   More experienced
  1051.        users might  want to  configure items  and are  referred to "The Setup
  1052.        Utility" section.
  1053.  
  1054.  
  1055.        CUSTOMIZING THEDRAW
  1056.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1057.        Many facets of TheDraw can  be  customized  (colors,  options, default
  1058.        preferences, etc...)  using the  external setup utility.  Refer to the
  1059.        section called "The Setup Utility" for information on configuration.
  1060.  
  1061.        Some parameters are often changed when using TheDraw.  The more common
  1062.        of these  can be  updated within TheDraw.  See "Setup Default Options"
  1063.        under the section "Pull-Down Menu System".
  1064.  
  1065.  
  1066.  
  1067.  
  1068.  
  1069.  
  1070.  
  1071.  
  1072.        TheDraw v4.50          Getting Started                6
  1073.  
  1074.  
  1075.  
  1076.        STARTING THEDRAW
  1077.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1078.        By this point you must be eager to start playing with TheDraw;  by all
  1079.        means do  so.   If you're  using a  floppy disk drive, place your work
  1080.        diskette into Drive A and type the following command:
  1081.  
  1082.         THEDRAW       (for shareware version)
  1083.         THEDRAWR      (for registered version)
  1084.  
  1085.        Press [ENTER] to run the program and bring up the  title screen.   Tap
  1086.        a key,  and the edit screen appears.  For quick reference, press [ALT-
  1087.        X] should you need to leave TheDraw at any time.
  1088.  
  1089.        If you are using  a  hard  disk,  get  into  the  TheDraw subdirectory
  1090.        created by  the INSTALL  batch file  (the default is C:\THEDRAW).  Run
  1091.        TheDraw typing:
  1092.  
  1093.         THEDRAW       (for shareware version)
  1094.         THEDRAWR      (for registered version)
  1095.  
  1096.        at the C:\THEDRAW> prompt.   Now  everything  is  ready  to  make your
  1097.        first TheDraw screen.
  1098.  
  1099.  
  1100.        LEAVING/EXITING THEDRAW
  1101.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1102.        Just a  quick note  regarding getting out of TheDraw.  Should you need
  1103.        to leave the program at any time, press [ALT-X] from  the edit screen.
  1104.        TheDraw prompts  to verify.   Type [Y]es or press [ENTER] to return to
  1105.        the dos prompt.
  1106.  
  1107.  
  1108.        CREATING YOUR FIRST SCREEN
  1109.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1110.        After starting TheDraw, and pressing a key to get past the title, what
  1111.        appears  is  the  edit  screen.    The  screen is blank except for the
  1112.        status line along the bottom.  The cursor  will be  in the  upper left
  1113.        corner of the screen.
  1114.  
  1115.        At  this  point,  type  in  your  name  and address as you might on an
  1116.        envelope.  Press [ENTER] after each line.  ie:
  1117.  
  1118.          John Smith
  1119.          123 ABC Street
  1120.          Somewhere, CA 12345
  1121.  
  1122.        Use the [BACKSPACE] key to make deletions, and the arrow  keys to move
  1123.        around in the edit area.
  1124.  
  1125.        TheDraw contains  a wide  variety of commands designed to make editing
  1126.        easier.  Now to use  some  of  these  performing  an  elementary task;
  1127.        centering your address on the screen.
  1128.  
  1129.  
  1130.        TheDraw v4.50          Getting Started                7
  1131.  
  1132.  
  1133.  
  1134.        There are  a number  of ways  to accomplish  the objective.  You could
  1135.        insert spaces onto each line, shifting everything over  as if  using a
  1136.        word  processor.    TheDraw  has  a command for inserting entire blank
  1137.        columns.  However,  the  best  way  is  using  a  feature specifically
  1138.        designed for the task.  To do this:
  1139.  
  1140.       o  First press  [ESC] to  see the pull-down menu bar.  You need the
  1141.          "Text" option from the Global  menu.    Select  the  Global menu
  1142.          using the  left/right arrow  keys then  type [T]  for the "Text"
  1143.          command.  A simpler way is the shortcut;  type [ALT-G]  from the
  1144.          edit screen for global screen functions, then [T]ext.
  1145.  
  1146.       o  A prompt  appears above  the status  line.   Select the [C]enter
  1147.          option.   Since  global  operations  affect  the  entire screen,
  1148.          TheDraw centers -all- lines of your address horizontally.
  1149.  
  1150.       o  Move the  cursor to  the top  line using [UP] arrow key.  Center
  1151.          the address vertically  using  the  insert  line  command.   The
  1152.          shortcut  key  is  [ALT-I].    The  command is also found in the
  1153.          Screen pulldown menu.  Repeat four or five times to fully center
  1154.          the image.
  1155.  
  1156.        The last  thing we  want to  do in  this first  screen is surround the
  1157.        address with a border  outline.   TheDraw has  a easy  global function
  1158.        for doing this also:
  1159.  
  1160.       o  Select "Text" from the Global pulldown menu again.
  1161.  
  1162.       o  Choose the  [O]utline option.  TheDraw responds by drawing a box
  1163.          around the edges of your address.
  1164.  
  1165.        There we have it, your first screen made via TheDraw is complete!
  1166.  
  1167.  
  1168.        SAVING YOUR FIRST SCREEN:
  1169.  
  1170.        After all this work it makes sense to save your screen to disk.  Press
  1171.        [ESC] to  see the pull-down menu bar.  Select the Files menu using the
  1172.        left/right arrow keys then type [S] to choose the "Save" command.  The
  1173.        shortcut is just typing [ALT-S] from the edit screen.
  1174.  
  1175.        TheDraw knows of ten different ways to save a screen.  These vary from
  1176.        Ansi to a custom high speed format.    For  now  choose  Ansi  and all
  1177.        defaults  by  pressing  [ENTER]  four  times.   At the filename prompt
  1178.        appearing next type in:
  1179.  
  1180.       ADDRESS.ANS
  1181.  
  1182.        Press [ENTER] to save the image.  Note how TheDraw  reports the number
  1183.        of output  lines used.  Ansi files are compressed as much as possible,
  1184.        occasionally down to a single line.    Do  not  be  surprised  if this
  1185.        happens to you.
  1186.  
  1187.  
  1188.        TheDraw v4.50          Getting Started                8
  1189.  
  1190.  
  1191.  
  1192.  
  1193.        VIEWING YOUR FIRST SCREEN:
  1194.  
  1195.        To  see  the  results  of  the above, leave TheDraw by typing [ALT-X].
  1196.        Answer [Y]es to the verify prompt.  From the dos prompt, enter:
  1197.  
  1198.       TYPE ADDRESS.ANS
  1199.  
  1200.        Press [ENTER] to see the screen as it appeared within TheDraw.
  1201.  
  1202.  
  1203.  
  1204.  
  1205.        EGADS!  WHAT HAPPENED?
  1206.  
  1207.        It is  possible that  instead of  your address  appearing, instead you
  1208.        were faced with a large amount of gibberish.  Something like:
  1209.  
  1210.       ^[[40m^[[2J^[[2;1H^[[3;1H^[[4;1H etc...
  1211.  
  1212.        This  means  the  Ansi  device  driver  is  missing.   The Ansi driver
  1213.        translates special color and cursor control commands for the screen.
  1214.  
  1215.        TheDraw  creates  Ansi  compatible  files,  but  they  only  appear as
  1216.        intended  when  the  device  driver  is  present.  To install the Ansi
  1217.        driver, please refer to Appendix A ("Setting Up CONFIG.SYS").
  1218.  
  1219.        If you already installed the driver per Appendix  A, something  may be
  1220.        preventing  it   working  or  you  need  to  reinitialize/reboot  your
  1221.        computer.  Device drivers are only installed when the computer "boots"
  1222.        up.  Press [CTRL-ALT-DELETE] to reboot your system.
  1223.  
  1224.  
  1225.  
  1226.  
  1227.        EDITING YOUR FIRST SCREEN
  1228.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1229.        Time to  try some more interesting things.  Restart TheDraw and select
  1230.        "Load" from the Files pulldown menu.  A listing of all available files
  1231.        is displayed.  Type in:
  1232.  
  1233.       ADDRESS   (TheDraw assumes the .ANS extension)
  1234.  
  1235.        Press  [ENTER]  to  load  your  screen.   Everything should now appear
  1236.        exactly as it did  before leaving  TheDraw previously.   To  spruce up
  1237.        your address, let's try adding some color.
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.        TheDraw v4.50          Getting Started                9
  1247.  
  1248.  
  1249.  
  1250.  
  1251.        CHANGING COLORS:
  1252.  
  1253.        To change the color things are drawn with, select "Fore/Back" from the
  1254.        Colors pulldown menu (or the  shortcut  [ALT-A]).    A  screen appears
  1255.        showing the  color palettes.  There are two groups, one for foreground
  1256.        colors and the bottom smaller group for background colors.
  1257.  
  1258.        You choose new colors  either by  using the  arrow keys  or typing the
  1259.        number associated with a color.  Press [ENTER] once you decide.
  1260.  
  1261.        For  example,  to  select  a  Yellow  foreground (color 14) and a Blue
  1262.        background (color 1):
  1263.  
  1264.         Please Select Foreground Color (0-31):  14  [ENTER]
  1265.         Please Select Background Color (0-7):   1   [ENTER]
  1266.  
  1267.        After pressing  [ENTER] for  the background  color, you  return to the
  1268.        edit screen.  Note the color example in the status line was updated.
  1269.  
  1270.  
  1271.  
  1272.        PAINTING THE SCREEN:
  1273.  
  1274.        To  see  the  new  color,  put  the cursor inside the outline box made
  1275.        earlier.  Now select "Paint/Fill" from the Options pulldown menu.
  1276.  
  1277.        Painting in TheDraw refers  to the  effect of  pouring paint  onto the
  1278.        screen.   The pouring  starts where  the cursor  is located.   You can
  1279.        paint  just   color  attributes,   just  character   symbols,  or  any
  1280.        combination.  We want only the address colors changes.  Thus:
  1281.  
  1282.       o  Choose [A]  for Attributes.   Notice  how painting is blocked by
  1283.          the lines of the address outline.
  1284.  
  1285.       o  Use the color change  command again,  this time  selecting Light
  1286.          Green on Black (foreground = 11, background = 0).
  1287.  
  1288.       o  Once back  at the edit screen, move the cursor out away from the
  1289.          outline box.
  1290.  
  1291.       o  Select "Paint/Fill" once more, choosing the [B]oth option.
  1292.  
  1293.       o  When TheDraw  prompts for  a fill  character; type  in a forward
  1294.          slash "/" symbol.
  1295.  
  1296.        Your address  is now  an island  in the middle of a green field.  Save
  1297.        these changes as described previously using the filename:
  1298.  
  1299.          ADDRESS2.ANS
  1300.  
  1301.        Press [ENTER] to save the screen to disk.
  1302.  
  1303.  
  1304.        TheDraw v4.50          Getting Started               10
  1305.  
  1306.  
  1307.  
  1308.  
  1309.        MAKING YOUR SECOND THEDRAW SCREEN
  1310.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1311.        Now for a  little  more  pizazz.    For  this  screen  lets experiment
  1312.        duplicating  the  special  effects  found  in the DEMO.TD example file
  1313.        (more or less).   To see  the sample  file beforehand,  use the "Load"
  1314.        option from the Files pulldown.  Type in:
  1315.  
  1316.          DEMO.TD
  1317.  
  1318.        Press [ENTER]  to load  it.   Follow the  on screen instructions for a
  1319.        quick introduction to the block and  sprite features.   These  will be
  1320.        explained below as your own version of this example gets put together.
  1321.  
  1322.        To get rid of the DEMO.TD example, choose the "Clear Page" option from
  1323.        the Screen  pulldown (or  type the shortcut [ALT-C]).  Answer [A]ll to
  1324.        the first verify  prompt,  and  [Y]es  to  the  second  verify.   This
  1325.        completely clears away everything.
  1326.  
  1327.  
  1328.  
  1329.        DRAWING LINES:
  1330.  
  1331.        Position the  cursor at  column 10,  line 5.  Use the arrow keys until
  1332.        the status line coordinates read (10, 5).  In the first screen we used
  1333.        the Global Outline command to draw a box around your address.  TheDraw
  1334.        has another way of drawing lines too.
  1335.  
  1336.        From the Toggles pulldown, choose "Draw Mode" to turn on  line drawing
  1337.        mode (shortcut is [ALT-M]).  Moving the cursor now draws a line.  Also
  1338.        note the word "Draw" where "Text" was before on the status line.
  1339.  
  1340.        Lets make a small box.  The arrows below indicate the cursor movements
  1341.        required  to  produce  the  box.   Note the special attention given to
  1342.        finishing off the last corner (step 5):
  1343.  
  1344.            //////                        /
  1345.            DDDDD?      DDDDD?      DDDDD?    ^3DDDDD?     ZDDDDD?
  1346.             3v      3           3    ^3     3     3     3
  1347.                 3v   ^3     3     3     3     3     3
  1348.                    DYv    @DDDDDY     @DDDDDY     @DDDDDY
  1349.                    .      .....
  1350.  
  1351.            Step 1      Step 2      Step 3      Step 4      Step 5
  1352.  
  1353.  
  1354.        Turn off line drawing using the  Toggles pulldown  or pressing [ALT-M]
  1355.        again.    Following  the  above  guide,  we moved horizontally six (6)
  1356.        spaces and  vertically three  lines (3)  to create  the box.   The end
  1357.        result however is seven (7) characters wide, and four (4) lines deep.
  1358.  
  1359.  
  1360.  
  1361.  
  1362.        TheDraw v4.50          Getting Started               11
  1363.  
  1364.  
  1365.  
  1366.  
  1367.        Move the  cursor to  coordinates ( 6, 3) and repeat the box procedure.
  1368.        This time move horizontally 14 spaces instead of  6, and  vertically 7
  1369.        lines instead of just 3.  You end up with:
  1370.  
  1371.                   ZDDDDDDDDDDDDD?
  1372.                   3         3
  1373.                   3   ZDDDDD?   3
  1374.                   3   3     3   3
  1375.                   3   3     3   3
  1376.                   3   @DDDDDY   3
  1377.                   3         3
  1378.                   @DDDDDDDDDDDDDY
  1379.  
  1380.        These are  the exact dimensions of the blue box in the DEMO.TD example
  1381.        screen.  To colorize the double box, we'll use a block command.
  1382.  
  1383.        Note:  Please  refer  to  the  section  "SELECT  DRAW  MODE"  for more
  1384.        discussion on line drawing.
  1385.  
  1386.  
  1387.        MARKING A BLOCK:
  1388.  
  1389.        One of  TheDraw's most  useful features is its block editing facility.
  1390.        You can carry out a wide  variety of  operations on  specific parts of
  1391.        the screen.  Areas can be copied, moved, erased, deleted, filled, have
  1392.        text operations performed, saved, etc...   Several block  commands are
  1393.        mirrors of the global screen functions you have already experienced.
  1394.  
  1395.        To  color  the  double  box,  let's  first choose some new attributes.
  1396.        Press [ALT-A] and pick  a  Yellow  foreground  (color  14)  on  a Blue
  1397.        background (color 1).
  1398.  
  1399.        Marking  means   highlighting  the  area  you  want  block  operations
  1400.        performed on.  Begin marking a  block by  pressing [ALT-B].   Position
  1401.        the cursor  on the  upper-left corner  of the  large box and press the
  1402.        [SPACE] bar.  Now  move the  cursor to  the lower-right  corner of the
  1403.        large box and press [SPACE] again.  Notice how the existing colors are
  1404.        emphasized to clearly show the block mark.
  1405.  
  1406.       Mouse Users:   Move the cursor to  the  upper-left  corner.   Press
  1407.              and hold  down the  LEFT mouse button.  Now drag the
  1408.              cursor to the  lower-right  corner  and  release the
  1409.              left button.
  1410.  
  1411.        All block options are now displayed.  Select [F]ill, and the suboption
  1412.        [A]ttributes to colorize the double box to yellow on blue.  Other fill
  1413.        suboptions  affect  just  foreground  colors,  just  backgrounds, just
  1414.        characters (without affecting color), or both colors and characters.
  1415.  
  1416.  
  1417.  
  1418.  
  1419.  
  1420.        TheDraw v4.50          Getting Started               12
  1421.  
  1422.  
  1423.  
  1424.  
  1425.        There is one more step before the double box is finished.   The inside
  1426.        region of  the small  box must  be erased.  Let's use another block to
  1427.        accomplish this:
  1428.  
  1429.       o  Position the cursor to coordinates (11, 6).  This is  the upper-
  1430.          left corner of the inside region.
  1431.  
  1432.       o  Mark a block covering all the inside region.
  1433.  
  1434.       o  Lastly, select the block option [E]rase.
  1435.  
  1436.        There you  have it;  a replica of the blue box in DEMO.TD!  Blocks are
  1437.        invaluable for making alterations of any sort.
  1438.  
  1439.  
  1440.  
  1441.        USING SPRITE MODE:
  1442.  
  1443.        While following the DEMO.TD example, you  saw the  red box  on page 2.
  1444.        Until now  all our  editing was done on page 1, but TheDraw can handle
  1445.        eight  pages  simultaneously.    One  possible  use  is  block copying
  1446.        regions  from  one  screen  to  another.    Normally  you see only the
  1447.        individual pages, totally separate from one another.
  1448.  
  1449.        Sometimes however, it is useful to see all the pages at once.  TheDraw
  1450.        calls this  Sprite Editing Mode.  Pages are treated as glass sheets or
  1451.        layers stacked atop one another.  You are positioned over  the topmost
  1452.        "glass layer" (page 1) looking down.  ie:
  1453.  
  1454.                        ZDDDDDDDD?
  1455.                       .3      . 3
  1456.                     .  3    .   3 Bottommost Page
  1457.                  ZDDDDDDDD?    83
  1458.                    ZDADDDDDD? 3DDDDDY
  1459.                  ZDADDDDDD? 3 3   .
  1460.                  3        3 333 .
  1461.            Topmost Page  3        32CDY
  1462.                  3       1CDY
  1463.                  @DDDDDDDDY
  1464.  
  1465.        The DEMO.TD  example uses  Sprite Editing.  The blue box is on page 1,
  1466.        but the red box is on page 2.  The blue box  appears over  the red one
  1467.        because  of  the  simulated  glass  layers  effect.  The red box would
  1468.        appear over anything on pages 3 to 8, and so on...
  1469.  
  1470.        Now to try out Sprites in our screen.  We need a visible object on the
  1471.        second page.  The following draws a box for this purpose:
  1472.  
  1473.       o  Change to  page 2.   Do  this by choosing "Select Page" from the
  1474.          Screen pulldown, or typing  [ALT-E] (the  shortcut).   Press the
  1475.          "2" key for the second page layer.
  1476.  
  1477.  
  1478.        TheDraw v4.50          Getting Started               13
  1479.  
  1480.  
  1481.  
  1482.  
  1483.       o  Pick "Fore/Back"  from the Colors pulldown (shortcut is [ALT-A])
  1484.          and select  the  colors  of  Light  Red  on  Red (foreground=12,
  1485.          background=4).
  1486.  
  1487.       o  Position  the  cursor  in  the  upper-left corner of the screen-
  1488.          coordinates ( 1, 1).
  1489.  
  1490.       o  Press [ALT-B],  and hit  the [SPACE]  bar.   Move to coordinates
  1491.          (12, 6) then hit [SPACE] the second time.
  1492.  
  1493.       o  Choose  the   [T]ext  option,  and  then  the  [B]ox  suboption.
  1494.          TheDraw draws a red box on the screen.
  1495.  
  1496.       o  Move the cursor inside the  box,  and  select  "Paint"  from the
  1497.          Options pulldown  menu.  Select the [B]oth option, and press the
  1498.          minus key "-" for a fill character.
  1499.  
  1500.        This page now contains an object to act as a  sprite.   Switch back to
  1501.        page 1 by typing [ALT-E] and press the "1" key.
  1502.  
  1503.        If  you  loaded  the  DEMO.TD  example  earlier, TheDraw is already in
  1504.        sprite mode.  The status line page number appears in capitals.  ie:
  1505.  
  1506.         "Page:1"      Sprite mode is off
  1507.         "PAGE:1"      Sprite mode is on
  1508.  
  1509.        If sprite mode is off, type  [ALT-E] and  choose the  [T]oggle option.
  1510.        Once sprite  mode is  enabled you  can see  the red box underneath the
  1511.        double blue box.
  1512.  
  1513.        Nothing you do to page 1 will affect  the contents  of any  page lower
  1514.        down.   Try moving  to coordinates  ( 1,  1) and inserting a few blank
  1515.        lines by typing [ALT-I].  Notice how the red box  stays put  while the
  1516.        blue box shifts.  This is the significance of Sprite editing mode.
  1517.  
  1518.        You  can  place  various  parts  of a screen on different page layers.
  1519.        Changing one  part  can  never  accidentally  affect  any  other.   In
  1520.        animation  mode  sprites  make  certain  special  effects very easy to
  1521.        produce.  Such as having one object "slide" under another.   Animation
  1522.        mode is  introduced below.  Please refer to "THE ANIMATION SYSTEM" for
  1523.        more information.
  1524.  
  1525.        You might  wish to  save this  second screen  now.   Type [ALT-S], and
  1526.        select TheDraw's  custom file  format by  typing [T].   This will save
  1527.        both pages 1 and 2 since they contain data.  Enter the filename:
  1528.  
  1529.       BOXES     (TheDraw assumes a .TD extension)
  1530.  
  1531.        Press [ENTER] to save to disk.
  1532.  
  1533.  
  1534.  
  1535.  
  1536.        TheDraw v4.50          Getting Started               14
  1537.  
  1538.  
  1539.  
  1540.  
  1541.        ANIMATING YOUR SECOND THEDRAW SCREEN
  1542.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1543.        Possibly the  most intriguing  and confusing  facet of  TheDraw is its
  1544.        Animation  mode.    The  animation system allows creating screens with
  1545.        movement, adding excitement to your presentations.
  1546.  
  1547.        In animation  mode,  TheDraw  remembers  the  exact  pattern  in which
  1548.        something is  entered.   In contrast,  the normal  static screens used
  1549.        until now only store what was typed and where.
  1550.  
  1551.        When saving a static screen, there is no notion of  how it  was drawn.
  1552.        The normal  presumption is  such screens  are saved top to bottom (how
  1553.        else would you want  to?)    The  ADDRESS.ANS file  was saved  in this
  1554.        manner.  Recall how it appeared when typed from the dos prompt.
  1555.  
  1556.        Animation mode  goes one  step further  by also remembering -when- you
  1557.        typed something.  This extension  permits  you  to  control  the exact
  1558.        sequence keystrokes appear.
  1559.  
  1560.        Instead of  merely top-to-bottom,  any display order is possible.  You
  1561.        can make screens display sideways if the urge hits.
  1562.  
  1563.  
  1564.        SELECTING A SCAN PATTERN:
  1565.  
  1566.        To ease the pain of making animated screens, TheDraw contains fourteen
  1567.        preprogrammed display  patterns.  There are also two variation toggles
  1568.        which boost the actual  number of  patterns to  over 50.   See section
  1569.        "ANIMATION  SCAN  PATTERNS"  under  "HOW  TO  ANIMATE SOMETHING" for a
  1570.        complete description.
  1571.  
  1572.        To convert your second  screen  into  an  animation  sequence,  do the
  1573.        following:
  1574.  
  1575.       o  Select  "Animation  Mode"  from  the Toggles pulldown or use the
  1576.          shortcut key [ALT-J].    A  list  of  the  preprogrammed display
  1577.          patterns appears.
  1578.  
  1579.       o  Choose the  [A]ngle pattern.   TheDraw  scans the static screens
  1580.          on pages 1 and 2 into the animation sequence.
  1581.  
  1582.        That's it!  The word "PAGE" in the status line has changed  to "ANIM".
  1583.        Also, above the status line is an indicator similar to:
  1584.  
  1585.                   Used:00317  Free:15683
  1586.  
  1587.        The first  number lists  the number  of keystroke entries currently in
  1588.        the animation sequence.  The second is how  many additional keystrokes
  1589.        TheDraw can  store.   The maximum free space is 16000 entries, however
  1590.        that could vary depending on how much free memory is available.
  1591.  
  1592.  
  1593.  
  1594.        TheDraw v4.50          Getting Started               15
  1595.  
  1596.  
  1597.  
  1598.  
  1599.        VIEWING THE ANIMATION SEQUENCE:
  1600.  
  1601.        Let's see what the  animation  sequence  looks  like  in  slow motion.
  1602.        Select the  "Screen Redraw"  from the  Animation pulldown (shortcut is
  1603.        [ALT-Q]).
  1604.  
  1605.        TheDraw prompts for a redraw speed, to control how fast  the animation
  1606.        sequence appears.   A  speed of 0 is maximum speed.  A speed of 255 is
  1607.        very slow, about 5-10 keystrokes per second.
  1608.  
  1609.        Type in the number 50 and press [ENTER].  You can now  see exactly how
  1610.        the animation  will appear once saved to disk.  Once it completes, use
  1611.        the redraw command with some other speeds to get a better feel for it.
  1612.  
  1613.        Try changing the animation  scan pattern.   Select  "Rescan Animation"
  1614.        from  the  Animation  pulldown  (shortcut is [ALT-J], [R]escan).  Pick
  1615.        some other animation pattern, then view them using Screen Redraw.
  1616.  
  1617.  
  1618.  
  1619.        SAVING ANIMATION:
  1620.  
  1621.        Saving animation screens to disk is almost identical  to saving normal
  1622.        static screens.  The only difference is in the available file formats.
  1623.        Only Ansi and TheDraw (TD) custom  formats are  possible.   Only these
  1624.        two permit  saving how  the animation sequence was created.  Note that
  1625.        TD formats also store page data.
  1626.  
  1627.        Ansi files can be typed from Dos.  These are very popular for bulletin
  1628.        board systems,  sign on introductions, presentations, etc...  The only
  1629.        problem is they cannot  store data  about individual  pages and sprite
  1630.        mode.   Ansi files only save exactly what is "seen" on the video.  Any
  1631.        keystrokes which are hidden underneath other objects are lost.
  1632.  
  1633.        TD files are designed for maximum speed.  It is  usually best  to keep
  1634.        one copy  of an  animations sequence  in this  format.   The TD format
  1635.        stores information on everything  including  the  sprite  mode.   Most
  1636.        users save  both TD and Ansi formats, since Ansi can be typed from the
  1637.        Dos prompt.  For now, lets save an Ansi file.
  1638.  
  1639.        Press [ALT-S],  and choose  [A]nsi.   Press [ENTER]  past the options.
  1640.        For a filename enter:
  1641.  
  1642.       BOXES.ANS
  1643.  
  1644.        Press [ENTER]  to save to disk.  The animation system was only briefly
  1645.        touched  upon  here.    The  are  a  large  number  of  other features
  1646.        available.  Almost all commands available for static screens will work
  1647.        with animation mode.   Various  commands  respond  differently  to the
  1648.        animation sequence.   For  complete coverage, please see refer to "THE
  1649.        ANIMATION SYSTEM".
  1650.  
  1651.  
  1652.        TheDraw v4.50          Getting Started               16
  1653.  
  1654.  
  1655.  
  1656.  
  1657.        We have now run through the most important of TheDraw's many features.
  1658.        You  are  encouraged  to  explore  in  detail  the variety of commands
  1659.        available.  It is recommended to save your work periodically to create
  1660.        a log of your efforts.  In this way, as you develop new skills you can
  1661.        document them to avoid forgetting that one crucial step or  neat idea.
  1662.  
  1663.        We have  covered keystroke  entry, editing,  changing colors, painting
  1664.        areas,  drawing  lines/boxes/outlines,  using   blocks,  sprite  mode,
  1665.        animation  mode,   animation  scan  patterns,  and  viewing  animation
  1666.        sequences.
  1667.  
  1668.        You should eventually  read  the  "OPERATING  THEDRAW"  section.   The
  1669.        section  explains  the  status  line,  obtaining help, cursor control,
  1670.        using the mouse, and gives a summary of commands.
  1671.  
  1672.        Refer  to  "PULL-DOWN  MENU  SYSTEM"  for  brief  explanations  of all
  1673.        commands.  Detailed descriptions are found in "THEDRAW COMMANDS".
  1674.  
  1675.        Those who  program should  see "TIPS AND EXAMPLES FOR PROGRAMMERS" for
  1676.        insight into using TheDraw saved files in your own work.
  1677.  
  1678.  
  1679.  
  1680.        THE EXAMPLE FILES
  1681.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1682.        TheDraw comes with four demonstration files to help  show some  of its
  1683.        capabilities; SHUTTLE2.ANS, DEMO.TD, SHADING.TD, and EFFECTS.BIN.
  1684.  
  1685.        SHUTTLE2.ANS is  a simple  animation example  which you  can view from
  1686.        the dos prompt by entering:
  1687.  
  1688.       TYPE SHUTTLE2.ANS
  1689.  
  1690.        Press [ENTER] to see the example  run  through.    You  must  have the
  1691.        ANSI.SYS driver  installed in  your CONFIG.SYS file for this to appear
  1692.        properly.  See APPENDIX A for more details on the CONFIG.SYS file.  If
  1693.        you do not have ANSI.SYS, the THEPP utility provided with registration
  1694.        can be used alternatively (ie: THEPP SHUTTLE2.ANS [ENTER]).
  1695.  
  1696.        The second demo  file,  DEMO.TD,  demonstrates  the  block  and sprite
  1697.        editing  features  of  TheDraw.    To use it, run TheDraw as described
  1698.        above.  Next, press  ALT-L and  type DEMO.TD  [ENTER].    Instructions
  1699.        will appear on screen showing what to do next.
  1700.  
  1701.        The  third  file,  SHADING.TD,  is  an  example  of  all  color  shade
  1702.        variations possible within TheDraw.  Load as the  previous example was
  1703.        (ie: ALT-L,  then type  SHADING.TD [ENTER]).  Three pages are occupied
  1704.        by the example.  Select pages by pressing [ALT-E] followed by a number
  1705.        1,  2  or  3.    Each  page  uses  a  different fill character.  Those
  1706.        frustrated by a seemingly  limited color  palette may  be surprised at
  1707.        the wide variation actually possible.
  1708.  
  1709.  
  1710.        TheDraw v4.50          Getting Started               17
  1711.  
  1712.  
  1713.  
  1714.  
  1715.        To duplicate  a shading example, press [ALT-F6] to select function key
  1716.        set 6.  Set the colors as specified on the  example by  using [ALT-A].
  1717.        Foreground colors  are vertical and background colors horizontal.  Now
  1718.        type [F1], [F2], or [F3] keys to see the shading result.
  1719.  
  1720.        The last demo file,  EFFECTS.BIN, shows  two easy  special effects you
  1721.        may  like  to  use.    The  first  is the illusion of a rotating color
  1722.        banner.  This is done with flashing foreground colors (16 to 31 in the
  1723.        color  select   screen).    Alternating  characters  have  alternating
  1724.        foreground/background attributes.  ie:
  1725.  
  1726.                    3 Character #1   3  Character #2
  1727.            DDDDDDDDDDDDEDDDDDDDDDDDDDDDDEDDDDDDDDDDDDDDD
  1728.            Foreground: 3 Flashing Red   3  Flashing Gray
  1729.            Background: 3 Gray       3  Red
  1730.            DDDDDDDDDDDDADDDDDDDDDDDDDDDDADDDDDDDDDDDDDDD
  1731.  
  1732.        Combine the above color scheme with the a  block symbol  from function
  1733.        key  set  #6.    Press  key  [F4] with attributes in #1 above.  Change
  1734.        attributes to #2 and press [F4] again.  The blocks  will appear  to be
  1735.        alternating.
  1736.  
  1737.        The  restriction  to  this  technique is the flashing foreground color
  1738.        must match an available  background  color.    Since  there  are eight
  1739.        background colors,  the flashing  foreground colors  16 to  23 are the
  1740.        possible options.
  1741.  
  1742.  
  1743.  
  1744.  
  1745.  
  1746.  
  1747.  
  1748.  
  1749.  
  1750.  
  1751.  
  1752.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.  
  1758.  
  1759.  
  1760.  
  1761.  
  1762.  
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.        TheDraw v4.50          Getting Started               18
  1769.  
  1770.  
  1771.  
  1772.  
  1773.                  OPERATING THEDRAW
  1774.  
  1775.  
  1776.        COMMAND LINE FILESPECS
  1777.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1778.        For convenience,  TheDraw allows  you to  specify a  filespec from Dos
  1779.        when first running the program.  ie:
  1780.  
  1781.                   THEDRAW DEMO.TD
  1782.  
  1783.        Only one  file may  be specified  this way.  All files are loaded onto
  1784.        page layer one (except for  THEDRAW  format  files  which  may contain
  1785.        multiple layers).
  1786.  
  1787.  
  1788.  
  1789.        THE STATUS LINE
  1790.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1791.        The status  line of  TheDraw shows various information about the state
  1792.        of the program.  Each structure in the status line is described below:
  1793.  
  1794.       (xx,xx)        Displays the current cursor position.
  1795.  
  1796.       Color      Indicates the current drawing color.   This color is
  1797.              used for any new characters placed onto the screen.
  1798.  
  1799.       Text,      The word displayed indicates if TheDraw is in normal
  1800.       Attr, or       text, color draw mode, or line draw mode.  In color
  1801.       Draw       draw mode,  moving the  cursor changes characters to
  1802.              the current colors.      In  Draw  mode,  moving the
  1803.              cursor with the arrow keys draws a line in the moved
  1804.              direction.
  1805.  
  1806.       Ins        Appears when TheDraw is  in  Insert  keystroke mode.
  1807.              When on, typing a character shifts everything to the
  1808.              right to make room for the new character.
  1809.  
  1810.       Page:x or      Indicates the current screen page edit layer.  In
  1811.       Anim:x     animation mode (see The  Animation  System  for more
  1812.              details), the  word Anim appears.  In addition, this
  1813.              structure indicates when TheDraw  is in  sprite edit
  1814.              mode  (see  ALT-E).    In sprite mode, the structure
  1815.              appears in capital letters.  ie: PAGE or ANIM.
  1816.  
  1817.       Set:xx     Number of the current  function key  set.   This set
  1818.              appears immediately after this indicator.
  1819.  
  1820.  
  1821.        Note: The symbol "x" or "xx" indicates a number of some value.
  1822.  
  1823.  
  1824.  
  1825.  
  1826.        TheDraw v4.50         Operating TheDraw              19
  1827.  
  1828.  
  1829.  
  1830.  
  1831.        HELP!
  1832.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1833.        The shareware  version of  TheDraw contains three outline help screens
  1834.        available from command mode (no sub-functions being used)  by pressing
  1835.        ALT-H.  These outline screens display brief notes about all operations
  1836.        available in the program.
  1837.  
  1838.        The registered version of TheDraw supports context sensitive help.  In
  1839.        other  words,  pressing  ALT-H  anywhere  in the program will bring up
  1840.        specific information on that area of TheDraw.  This can be very useful
  1841.        during the learning stage or for rarely used functions.
  1842.  
  1843.  
  1844.  
  1845.        CURSOR CONTROL
  1846.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1847.        The cursor may be moved by using the following keys:
  1848.  
  1849.         Key           Action
  1850.         DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1851.         Up Arrow      Up one line
  1852.         Down Arrow    Down one line
  1853.         Left Arrow    Left one position
  1854.         Right Arrow   Right one position
  1855.         Home          First column of current line
  1856.         End           Last column of current line
  1857.         PgUp          First line in current column
  1858.         PgDn          Last line in current column
  1859.         Ctrl-Home     First Character of current line
  1860.         Ctrl-End      Last Character of current line (plus 1)
  1861.         Ctrl-PgUp     Upper-left position of screen
  1862.         Ctrl-PgDn     Lower-right position of screen
  1863.         Tab           Next set Tab position (see Alt-T)
  1864.         Shift-Tab     Previous set Tab position (see Alt-T)
  1865.         Enter         First column of following line
  1866.         DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1867.  
  1868.        Naturally, if  you attempt  to move  past the  screen border no action
  1869.        will be taken.  If  no  tab  position  follows  the  current location,
  1870.        pressing [TAB] will return you to column one of the current line.
  1871.  
  1872.  
  1873.  
  1874.  
  1875.  
  1876.  
  1877.  
  1878.  
  1879.  
  1880.  
  1881.  
  1882.  
  1883.  
  1884.        TheDraw v4.50         Operating TheDraw              20
  1885.  
  1886.  
  1887.  
  1888.  
  1889.        MOUSE CONTROL
  1890.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1891.        TheDraw  fully  supports  the  use  of a Microsoft Mouse or compatible
  1892.        device.  Pull down  menus  and  other  facilities  are  available (see
  1893.        section PULL  DOWN MENU  SYSTEM).   You may  use either a two or three
  1894.        button mouse with TheDraw.
  1895.  
  1896.        The mouse operates differently depending on where you  are in TheDraw.
  1897.        At command mode (no sub-functions in use) the mouse functions are:
  1898.  
  1899.          MOVEMENT:        Moves cursor.
  1900.          LEFT BUTTON:     Marks a block.
  1901.          MIDDLE BUTTON:   Toggles line drawing mode
  1902.          RIGHT BUTTON:    Activates pull down menu system.
  1903.  
  1904.  
  1905.        In any sub-function:
  1906.  
  1907.          MOVEMENT:        Moves  cursor/block/screen/etc...   If movement
  1908.                   is allowed, you can use the mouse.
  1909.          LEFT BUTTON:     Equivalent to pressing [ENTER].
  1910.          MIDDLE BUTTON:   Unused.
  1911.          RIGHT BUTTON:    Displays a small window  with all  current menu
  1912.                   options.
  1913.  
  1914.  
  1915.        Someone comfortable  with a  mouse will  find TheDraw easy to get used
  1916.        to.  The mouse is usable everywhere in the program.  If  no particular
  1917.        mouse indicator  appears, the RIGHT mouse button will generally pop up
  1918.        a window with available  options.   Simply click  the RIGHT  button on
  1919.        the wanted option to select it.
  1920.  
  1921.        Users  without  a  mouse  will  find TheDraw operates normally without
  1922.        change.
  1923.  
  1924.        Note: A Microsoft  compatible  mouse  driver  (MSMOUSE.SYS  or similar
  1925.          program)  must  be  installed  into  your CONFIG.SYS file before
  1926.          TheDraw  will  recognize  the  device.    See  APPENDIX   A  for
  1927.          information  on  system  configuration.    Once  the  driver  is
  1928.          installed, TheDraw auto-detects the mouse presence.
  1929.  
  1930.  
  1931.  
  1932.  
  1933.  
  1934.  
  1935.  
  1936.  
  1937.  
  1938.  
  1939.  
  1940.  
  1941.  
  1942.        TheDraw v4.50         Operating TheDraw              21
  1943.  
  1944.  
  1945.  
  1946.  
  1947.        COMMAND SUMMARY
  1948.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1949.        TheDraw provides the following 37 command functions, available through
  1950.        ALT-Letter or CTRL-Letter key sequences plus a pull-down menu system.
  1951.  
  1952.       DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1953.              Alt-A     Change Text Color Attributes
  1954.              Alt-B     Block Action Commands
  1955.              Alt-C     Clear Current Screen
  1956.              Alt-D     Set Default Clear Screen Color
  1957.              Alt-E     Select Screen Page Layers
  1958.              Alt-F     View Function Key Sets
  1959.              Alt-G     Global Commands
  1960.              Alt-H     Display Help Information
  1961.              Alt-I     Insert a Line
  1962.              Alt-J     Animation Options
  1963.              Alt-K     Delete a File
  1964.              Alt-L     Load Screen from Disk
  1965.              Alt-M     Select Draw Mode (toggle)
  1966.              Alt-N     Ruler
  1967.              Alt-O     Change Drive/Sub Directory
  1968.              Alt-P     Paint/Fill Commands
  1969.              Alt-Q     Redraw Screen (animator)
  1970.              Alt-R     Restore/Undo Changes
  1971.              Alt-S     Save Screen to Disk
  1972.              Alt-T     Tab Setup
  1973.              Alt-U     Use Colors under Cursor
  1974.              Alt-V     View a Screen (not load)
  1975.              Alt-W     Edit Character (animator)
  1976.              Alt-X     Exit TheDraw
  1977.              Alt-Y     Delete Current Line
  1978.              Alt-Z     Erase Cursor Character (animator)
  1979.              Alt--     Select Color Draw Mode (toggle)
  1980.              Alt-=     Toggle Macro Learning Mode (reg. version)
  1981.         Ctrl-PrtSc     Toggle Full Screen Editing mode
  1982.         Alt-Left Arrow     Delete column
  1983.        Alt-Right Arrow     Insert column
  1984.  
  1985.          Ctrl-Up Arrow     Increment Foreground Color
  1986.        Ctrl-Down Arrow     Decrement Foreground Color
  1987.        Ctrl-Left Arrow     Increment Background Color
  1988.       Ctrl-Right Arrow     Decrement Background Color
  1989.  
  1990.            Shift-Space     Put a "Solid" space on the Screen.
  1991.  
  1992.                ESC     Activate pull-down menu system from keyboard.
  1993.       DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  1994.  
  1995.        The section  THEDRAW KEYBOARD COMMANDS on the following pages contains
  1996.        explanations for each of the above.
  1997.  
  1998.  
  1999.  
  2000.        TheDraw v4.50         Operating TheDraw              22
  2001.  
  2002.  
  2003.  
  2004.  
  2005.                    THE ANIMATION SYSTEM
  2006.  
  2007.  
  2008.        WHAT IS ANIMATION?
  2009.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  2010.        The animation system of TheDraw allows the user to create screens with
  2011.        movement, adding excitement to your presentations.  In animation mode,
  2012.        TheDraw  basically  remembers  the  exact  order  in  which  you enter
  2013.        something.    This  involves  what  you  type, and more significantly,
  2014.        where you typed it.  For comparison, TheDraw  normally saves  a static
  2015.        image from  the Top  to Bottom  of the screen -- just like any typical
  2016.        text file would be displayed.
  2017.  
  2018.        Animation or sequencing allows a  screen  to  be  displayed  bottom to
  2019.        top, totally  against the  natural order  of things  (so far as Dos is
  2020.        concerned anyway).  With the animation sequence you  put characters in
  2021.        exact locations  in any order you want.  Those keystrokes are repeated
  2022.        in the same order when played back.  For example typing the  numbers 0
  2023.        through 9 backwards along the screen.  ie:
  2024.  
  2025.              ZDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD?
  2026.              3                   3
  2027.              3                   3
  2028.              3      9 8 7 6 5 4 3 2 1 0      3
  2029.              3                   3
  2030.              3 ( <--- typed this direction ) 3
  2031.              @DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDY
  2032.  
  2033.        Upon replay,  the "0"  would appear  first, followed  by the "1", "2",
  2034.        etc...  Exactly as was typed.  Note  in this  example movement  of the
  2035.        cursor was not stored, although it could be.  Storing cursor movements
  2036.        will be discussed later.
  2037.  
  2038.        Animation sequences can be saved in two different formats: ANSI (.ANS)
  2039.        and THEDRAW  (.TD).   A sequence  saved in Ansi can be displayed using
  2040.        the  Dos  TYPE  command  on  any  computer  with  the  ANSI.SYS driver
  2041.        installed (see  Appendix A on how to install it).  Ansi files are also
  2042.        used widely on bulletin board  systems.    TheDraw  is  not  needed to
  2043.        display Ansi files once created.
  2044.  
  2045.        TheDraw's  custom  file  format  (TD)  is  used for quickly saving and
  2046.        loading animation sequences to disk.  The Presentation Program (THEPP)
  2047.        can display an animation sequence saved in TheDraw format.
  2048.  
  2049.        For an  example of  Ansi Animation, enter "TYPE SHUTTLE2.ANS" from the
  2050.        Dos prompt (once the ANSI.SYS driver is installed).
  2051.  
  2052.  
  2053.  
  2054.  
  2055.  
  2056.  
  2057.  
  2058.        TheDraw v4.50           The Animation System             23
  2059.  
  2060.  
  2061.  
  2062.  
  2063.        ANIMATION BASICS
  2064.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  2065.        TheDraw never physically "moves"  an object  when animating something.
  2066.        This is  an illusion created by careful placement of characters (which
  2067.        as you remember can be placed anywhere we want).  The "animation" of a
  2068.        display is done manually; moving those objects step by step.
  2069.  
  2070.        The illusion of movement is simple to describe:
  2071.  
  2072.       o  Draw an object.
  2073.       o  Erase it.
  2074.       o  Redraw object moved over slightly.
  2075.       o  Repeat the above.
  2076.  
  2077.        If  done  properly,  the  object  appears  to move.  Nothing is really
  2078.        "moving" per say, by we are simulating it.
  2079.  
  2080.        For an example, imagine an asterisk in the center of  the screen.   We
  2081.        wish to  have this  asterisk move  to the right.  To do this, first we
  2082.        put a space over the existing asterisk (thus erasing it), then display
  2083.        a new  asterisk over to the right (redrawing it).  Repeating this will
  2084.        "animate" the asterisk, since it appears to move.  ie:
  2085.  
  2086.       ZDBDBDBDBDBDBD?
  2087.       3 3 3 3*3 3 3 3       Asterisk as it initially was drawn.
  2088.       @DADADADADADADY
  2089.       ZDBDBDBDBDBDBD?
  2090.       3 3 3 3_3 3 3 3       Asterisk has been erased
  2091.       @DADADADADADADY
  2092.       ZDBDBDBDBDBDBD?
  2093.       3 3 3 3_3*3 3 3       A new asterisk has been drawn shifted over.
  2094.       @DADADADADADADY
  2095.       ZDBDBDBDBDBDBD?
  2096.       3 3 3 3_3_3*3 3       Above steps repeated.
  2097.       @DADADADADADADY
  2098.  
  2099.        Do the above process quickly, and  the user  effectively sees movement
  2100.        because the  eye smoothly  connects the old asterisk position with the
  2101.        new one for us.
  2102.  
  2103.  
  2104.        A SIMPLE EXAMPLE
  2105.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  2106.        The easiest animation example under TheDraw to play  with is  a snake.
  2107.        Our snake,  we'll call  him Slither from now on, will be a simple life
  2108.        form who grows each time he is moved.  In effect, Slither's tail never
  2109.        shifts because  he grows  so rapidly.   To create this particular life
  2110.        form, enter  animation mode  by pressing  [ALT-J], then  [T]op.  Next,
  2111.        turn on line drawing with [ALT-M] ("Draw" appears on the status line).
  2112.  
  2113.  
  2114.  
  2115.  
  2116.        TheDraw v4.50           The Animation System             24
  2117.  
  2118.  
  2119.  
  2120.        To give  arise to  Slither, move the cursor with the arrow keys.  Keep
  2121.        moving in the same direction and low and behold there  he is.   Change
  2122.        direction, and move for a while.   Make Slither do as many twists and
  2123.        turns as you like, since he really enjoys a good run (or crawl?)
  2124.  
  2125.                  (example run of Slither)
  2126.              ZDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD?
  2127.              3                       3
  2128.              3             ZD?    ZDDD?     3    3
  2129.              3     ZDDDDDDDDDDDY 3    3   3     3    3
  2130.              3     3         3    3   3     3    3
  2131.              3     3 ZDDDDDDDD? ZY    3   @?    3    3
  2132.              3     3 3    ZD? 3 3     3    @D?  3    3
  2133.              3     @DY    3 3 3 @DDDDDY      3  3    3
  2134.              3        3 3 3        ZDDDDDY  3    3
  2135.              3       *DDDDY @DY        3    3    3
  2136.              3    (start)              @DDDDDDDDY    3
  2137.              @DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDY
  2138.  
  2139.        Now for  the moment of truth.  Make Slither repeat what he just did by
  2140.        using animation redraw (ALT-Q).  Enter a delay of about  100, then sit
  2141.        back and watch Slither perform for you exactly as he did before.
  2142.  
  2143.        Notice just  how little  effort it  takes to produce simple animation.
  2144.        Even this uncomplicated approach will  add  that  extra  pizzazz  to a
  2145.        presentation.   Possibilities include  drawing charts, graphs, outline
  2146.        figures, backdrops, etc...   Your  imagination  is  the  only limiting
  2147.        factor.
  2148.  
  2149.        The next section describes how to move objects (such as the asterisk
  2150.        example shown previously) with TheDraw.
  2151.  
  2152.  
  2153.        MAKING A BLOCK MOVE:
  2154.  
  2155.        The  asterisk  example  showed  the  classic  method  for moving small
  2156.        objects.  ie: draw, erase, draw, repeat...   However,  the Ansi driver
  2157.        under which  our animation  special effects  operate is quite limited.
  2158.        The illusion of movement is lost with large  objects because  too much
  2159.        time is spent erasing and redrawing them.  A better way is needed.
  2160.  
  2161.        For larger  objects, we  can use  the block copy facility.  First draw
  2162.        the object, and decide what direction things will move.
  2163.  
  2164.        Now, mark a block over the object -plus-  an extra  blank line  on the
  2165.        side -opposite- to the direction of movement.  ie:
  2166.  
  2167.        block mark outline --> ZDDDDDDD?
  2168.                   3 OBJECT3 --> movement wanted in this direction
  2169.                   @DDDDDDDY
  2170.                    ^
  2171.                    @DDDD extra blank line
  2172.  
  2173.  
  2174.        TheDraw v4.50           The Animation System             25
  2175.  
  2176.  
  2177.  
  2178.  
  2179.        The complicated bit of actually "animating" follows:
  2180.  
  2181.       o  From the block options menu, choose block copy.
  2182.  
  2183.       o  Move the block once in the direction of movement and [S]tamp it.
  2184.  
  2185.       o  Move it again, and [S]tamp.  Repeat as many times as desired.
  2186.  
  2187.       o  For the last shift, press [ENTER] instead of stamping.
  2188.  
  2189.        That's it!  Now try redrawing with [ALT-Q].  You have created a moving
  2190.        object.   This new  approach is  similar to  the asterisk example, but
  2191.        note we do not explicitly erase the entire object before  shifting and
  2192.        redrawing.  A good improvement making each shift almost twice as fast!
  2193.  
  2194.        Objects are  generally larger  than the distance moved between shifts,
  2195.        and afterwards occupy most of the same space as before.  Thus, why you
  2196.        may ask,  bother erasing an area if only to immediately be overwritten
  2197.        again?  We can avoid wasting time and things will go faster.
  2198.  
  2199.                 ZDZDZDZDDDDDDDDDDDDDDDDDD?
  2200.                 3030303[[[[[[[[[[[[[[[[[[3
  2201.                 3030303[[[[[[[[[[[[[[[[[[3
  2202.                 3030303[[[[[ Object [[[[[3
  2203.                 3030303[[[[[[[[[[[[[[[[[[3
  2204.                 3030303[[[[[[[[[[[[[[[[[[3
  2205.                 @D@D@D@DDDDDDDDDDDDDDDDDDY
  2206.                  ^ ^ ^
  2207.                  @DADADD old portion of object,
  2208.                      "erased" by blank line
  2209.  
  2210.        The extra blank  line  erases  what  needs  erasing,  and  the redrawn
  2211.        object overwrites  the rest.  By using more than one blank column/line
  2212.        (and stepping more than once between stamps), the  movement appears to
  2213.        go faster still.
  2214.  
  2215.        Notice that  block copy  was used, not block move.  In animation mode,
  2216.        the block move relocates animation  entries  in  the  block.   Copying
  2217.        leaves the original in place, and -overwrites- it with the moved copy.
  2218.        Just like the asterisk example, we didn't move it, we overwrote it.
  2219.  
  2220.        Block move physically moves  the object  to the  first stamp location.
  2221.        If you  redraw the  animation sequence,  you would find no "movement".
  2222.        The object is drawn only once, where it was moved over to (at least on
  2223.        the first  stamp).   Additional stamps  would behave as expected, only
  2224.        the first stamp would not be as expected.
  2225.  
  2226.  
  2227.  
  2228.  
  2229.  
  2230.  
  2231.  
  2232.        TheDraw v4.50           The Animation System             26
  2233.  
  2234.  
  2235.  
  2236.  
  2237.        EASY ANIMATION
  2238.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  2239.        Rather than start an entire animation screen from scratch, many people
  2240.        find it  easier to take an existing static screen then -add- animation
  2241.        to it.    TheDraw provides  several different  patterns for converting
  2242.        static screens  into animation  sequences.  The patterns specify how a
  2243.        screen is converted, one keystroke at a time.
  2244.  
  2245.  
  2246.        ANIMATION SCAN PATTERNS:
  2247.  
  2248.        TheDraw comes with fourteen built in scan patterns.  In  addition, the
  2249.        way the  scan patterns  work can  be adjusted via two pattern toggles.
  2250.        Use of the toggles yields over 50 possible combinations!  The starting
  2251.        scan patterns are:
  2252.  
  2253.      TOP          Starts at upper-left corner and goes across screen.
  2254.      LEFT         Starts at upper-left corner and goes down screen.
  2255.      CLOCK        Clockwise arm rotates around center of screen.
  2256.      CIRCLES      Growing circles starting from center of screen.
  2257.      CHECKERBOARD Alternating "checkerboard" squares from top of screen.
  2258.      ANGLE        Diagonal from upper-left corner scans across screen.
  2259.      GATE         Opposite lines from each side of screen left/right.
  2260.      PYRAMID      Pyramid shape from bottom center growing upwards.
  2261.      SQUARES      Squares starting from screen border growing inward.
  2262.      SCRAMBLE     Randomly scans entire screen
  2263.      DOOR         Scans top/bottom, on both sides of screen at once.
  2264.      DIAMOND      Growing diamond starting from center of screen.
  2265.      WIGGLE       Starts at upper-left alternating left and right.
  2266.      WIGGLEOUT    Starts in  center of screen with wiggle operation going
  2267.               both up and down at once.
  2268.  
  2269.        The two toggles which alter the above are:
  2270.  
  2271.      REVERSE      Completely reverses a given  pattern.   First keystroke
  2272.               scanned becomes  the last,  the second  becomes next to
  2273.               last, and so on.
  2274.  
  2275.      FLIP         Exchanges the vertical coordinates in a scan.  Assume a
  2276.               25 line  edit buffer.   Any  scan location on line 1 is
  2277.               changed to line 25 and visa versa.
  2278.  
  2279.        You select the toggles before  a  scan  pattern.    When  a  toggle is
  2280.        active, its corresponding indicator appears on the screen.
  2281.  
  2282.        As mentioned  above, many people want to take a static screen, display
  2283.        it normally, then add animation.  The option  to use  in that  case is
  2284.        the Top scanner.  Scanning from the Top yields a sequence which cannot
  2285.        told apart from a static display; but animation can now be added.
  2286.  
  2287.  
  2288.  
  2289.  
  2290.        TheDraw v4.50           The Animation System             27
  2291.  
  2292.  
  2293.  
  2294.  
  2295.        RECORDING CURSOR MOVEMENTS:
  2296.  
  2297.        Occasionally the ability to record actual cursor movements  is useful.
  2298.        They could  be used  as short  pauses, or  a distraction  to the user.
  2299.        Instead of putting keystrokes everything, having the cursor jump about
  2300.        could be sufficient.  TheDraw can record such cursor movements.
  2301.  
  2302.        Toggle on/off  cursor movement recording by picking "Movement Storage"
  2303.        from the Animation pulldown.  The shortcut command  is typing [ALT-J],
  2304.        then [M]ovement.  Moving the cursor in any way adds new entries to the
  2305.        animation sequence.
  2306.  
  2307.        One use for this mode is adding short pauses.  You can have the cursor
  2308.        go around in circles giving the user time to reading something.  There
  2309.        is no definitive reason to use or not use this feature.
  2310.  
  2311.  
  2312.  
  2313.        EDITING AND DELETING ANIMATION ENTRIES
  2314.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  2315.        Editing an animation sequence is a bit more complicated than fixing up
  2316.        a static  screen.   If you  make a mistake, you must be -VERY- careful
  2317.        about using the [DELETE] and [BACKSPACE] keys.  The problem is both of
  2318.        the above keys remove all animation entries from the cursor position.
  2319.  
  2320.        Take the case where you type 'A', 'B' and 'V' all in the same location
  2321.        (say the upper-left corner).  Meaning the 'V' to be  a 'C',  you press
  2322.        [BACKSPACE].   Unfortunately, this  command removes all three letters,
  2323.        not just  the  'V'.    The  delete/backspace  keys  can  be especially
  2324.        disruptive to large animation sequences.
  2325.  
  2326.        TheDraw offers  a special  command to  avoid this problem.  Choose the
  2327.        "Erase Character" command from the Animation  menu (shortcut [ALT-Z]).
  2328.        This removes just the animation entries which are visible.  The 'V' in
  2329.        this case.  You then proceed by typing the 'C' as intended.
  2330.  
  2331.        An alternative technique is the animation  "Change Character" command.
  2332.        Choose  it  from  the  Animation  pulldown (shortcut [ALT-W]), and the
  2333.        existing keystroke under the cursor  beings  to  flicker.   Meanwhile,
  2334.        TheDraw prompts  for the  new character.   Now  you just enter the new
  2335.        symbol and are done.
  2336.  
  2337.  
  2338.        CHANGING YOUR ANIMATION SCAN PATTERN:
  2339.  
  2340.        If you decide to change the scan pattern you selected  earlier, choose
  2341.        "Rescan Animation" from the Animation pulldown, or [ALT-J], [R]escan.
  2342.  
  2343.        Warning: All animation on the current page will be replaced.
  2344.  
  2345.  
  2346.  
  2347.  
  2348.        TheDraw v4.50           The Animation System             28
  2349.  
  2350.  
  2351.  
  2352.  
  2353.        TheDraw deletes  all animation  from the  current page, scans with the
  2354.        new pattern, appending the new results onto the  end of  the animation
  2355.        sequence.  Any customized changes you might have added are lost.  Only
  2356.        the current page is affected.  All other page layers stay intact.
  2357.  
  2358.        You could place some items on lower pages and use  sprite mode.   This
  2359.        only works for things you want moved underneath objects on the current
  2360.        page.    The  registered  version  offers  a  better  solution  called
  2361.        animation limiting.
  2362.  
  2363.  
  2364.        ADVANCED ANIMATION EDITING
  2365.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  2366.        There are several more complex functions which enhance your ability to
  2367.        create unique  special  effects.    These  include  animation limiting
  2368.        offered  in  the  registered  version,  Ansi Include files, and making
  2369.        custom Ansi sequences.   The  latter  especially  useful  with certain
  2370.        bulletin board systems.
  2371.  
  2372.  
  2373.        EDITING PARTIAL ANIMATION SEQUENCES:
  2374.  
  2375.        The shareware version of TheDraw only allows you to work on the end of
  2376.        an animation sequence.  You can  add  or  remove  things  easily.   To
  2377.        update something at the beginning of a sequence is more awkward.
  2378.  
  2379.        The registered  version help  significantly by adding a feature called
  2380.        animation limiting.  Now you can change the point where editing occurs
  2381.        on the  animation sequence.   Instead  of only  the end,  you can edit
  2382.        anywhere from  the  first  to  last  keystroke  entries.    A powerful
  2383.        improvement.
  2384.  
  2385.  
  2386.       ANIMATION LIMITING:
  2387.  
  2388.       Animation limiting  changes the  focal point  of TheDraw.   You can
  2389.       insert, delete and change any keystroke  anywhere in  the animation
  2390.       sequence.
  2391.  
  2392.       Choose "Limiting"  from the Animation pulldown to activate it.  Now
  2393.       use the  arrow keys,  [PGUP], [PGDN],  [HOME] or  [END] to position
  2394.       yourself inside  the sequence.   Once  you find  the correct place,
  2395.       press [ENTER].
  2396.  
  2397.       Picking a edit focal point is that easy.  When  in the  middle of a
  2398.       sequence, everything  after the  focal point is temporarily hidden.
  2399.       Now you can make any updates with no extra fuss.
  2400.  
  2401.       Once done, you should probably return to the  end of  the animation
  2402.       sequence.  Choose "Limiting" again.  Press [END] to reset the focal
  2403.       point, then [ENTER].
  2404.  
  2405.  
  2406.        TheDraw v4.50           The Animation System             29
  2407.  
  2408.  
  2409.  
  2410.  
  2411.       ANIMATION MARKERS:
  2412.  
  2413.       Markers provide a convenient way of jump around within an animation
  2414.       sequence.   Assume you constantly switch between the point where an
  2415.       object is drawn and the sequence  end.   By setting  a marker after
  2416.       the  object  appears  you  can  switch quickly, instead of manually
  2417.       positioning the focal point every time.
  2418.  
  2419.       To set a marker, first position  the  focal  point.    Next, choose
  2420.       "Marker" from  the Animation  pulldown.   TheDraw displays a window
  2421.       listing all current markers.  If  none  are  defined,  the  list is
  2422.       empty.  Type [S]et and enter a description of the marker.  ie:
  2423.  
  2424.         1:  Object has been drawn
  2425.  
  2426.       Press [ENTER]  to save the new marker.  From now on, to position to
  2427.       this marker,  select "Limiting"  from the  Animation pulldown, then
  2428.       [K] for markers.  Pick marker [1] and you are done!
  2429.  
  2430.  
  2431.        ANSI INCLUDE FILES:
  2432.  
  2433.        TheDraw permits "including" the contents of other files in the current
  2434.        animation sequence.  Typically this will be a "Ansi Music" sequence, a
  2435.        frequently used image, complex BBS control codes, etc...
  2436.  
  2437.        The  include  files  are  only  used  when  TheDraw actually saves the
  2438.        current animation sequence.  At that point, the include file is copied
  2439.        into the new output Ansi file TheDraw is making.
  2440.  
  2441.        Include files  are ignored by the animation screen redraw command.  If
  2442.        you want  to see  what everything  might look  like, a  view option is
  2443.        available in  the animation  include window.   Refer to the "ANIMATION
  2444.        OPTIONS" section for more information.
  2445.  
  2446.  
  2447.        MAKING CUSTOM USER ANSI SEQUENCES:
  2448.  
  2449.        You can insert your own short control code sequences directly into and
  2450.        Ansi  file  TheDraw  generates.    This is very useful for special BBS
  2451.        control codes (ie: for user names and such),  or inserting  extra Ansi
  2452.        codes into  the animation.   You  might force  the screen to clear, or
  2453.        cause the display to scroll - functions now supported by TheDraw.
  2454.        User Sequences are only  referred to  when TheDraw  saves a  file, and
  2455.        are  not  used  when  redrawing  (see ALT-Q).  Refer to the "ANIMATION
  2456.        OPTIONS" section for a complete description of user sequence.
  2457.  
  2458.  
  2459.  
  2460.  
  2461.  
  2462.  
  2463.  
  2464.        TheDraw v4.50           The Animation System             30
  2465.  
  2466.  
  2467.  
  2468.  
  2469.        TRICKS AND TECHNIQUES
  2470.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  2471.        Once the above  mentioned  animation  skills  are  down,  certain easy
  2472.        special effects  will help  liven up  a display.   Care given to color
  2473.        selection,  shading,  and  use  of  shadowing   to  furnish   a  three
  2474.        dimensional feel  can perform  wonders.  Animation is also improved on
  2475.        occasion by pausing the display slightly.
  2476.  
  2477.        Ideally you will find the "tricks" are not  really tricks  at all, but
  2478.        rather easy  skills to  master.  A little practice will put you firmly
  2479.        on the right track.
  2480.  
  2481.  
  2482.        USE OF COLORS:
  2483.  
  2484.        Good color selection is as  important  as  the  display  content being
  2485.        viewed.   Colors should  be high  contrast, but  not so as to distract
  2486.        the viewer.  For  example, Yellow  on Cyan  go well  together, however
  2487.        Magenta on  Green do  not.   Extensive theory  exists to predict which
  2488.        color to use with what, but for our  purposes some  experimenting will
  2489.        suffice.   Look for  combinations which  are easy  to read  and do not
  2490.        strain the eyes.  Observing other peoples work is a good teacher.
  2491.  
  2492.        Background colors should be used  to  your  advantage,  not detriment.
  2493.        For example, look closely at the TheDraw title screen and note how the
  2494.        layering was achieved.  Half block  characters (such  as "\"  and "_")
  2495.        are used  extensively with  the solid  portion one color and the blank
  2496.        region another.
  2497.  
  2498.        Lastly, flashing colors in combination with  good background selection
  2499.        is  an  excellent  visual  device.    For example, select flashing red
  2500.        (color 20)  on a  gray background  (color 7).   Put  a block character
  2501.        ("[").  Now select flashing gray (color 23) on a red background (color
  2502.        4).  Put another block character next to the first.   What  you see is
  2503.        the block colors alternating between red and gray, each block opposite
  2504.        of one another.  Repeating this pattern produces a moving effect.  See
  2505.        demo file EFFECTS.BIN for a working example.
  2506.  
  2507.  
  2508.        SHADING:
  2509.  
  2510.        Shading and shadowing discussed below are both used for adding texture
  2511.        and three dimensional quality to a display.  Shading is the process of
  2512.        gradually changing  visual intensity.   This  can be done using bright
  2513.        colors then more subdued  colors, or  using different  characters with
  2514.        different density such as "012[".
  2515.  
  2516.        For successful  shading, one  must be aware of how things truly appear
  2517.        in nature.  Examine a pen sitting on a table carefully.   The color is
  2518.        not uniform,  but rather  is bright in the middle then apparently gets
  2519.        darker towards the edges.  The same holds true for any curvature.
  2520.  
  2521.  
  2522.        TheDraw v4.50           The Animation System             31
  2523.  
  2524.  
  2525.  
  2526.  
  2527.        Example of how color changes on a curved object:
  2528.  
  2529.                   brightest here
  2530.  
  2531.                darker  \\________\\  darker
  2532.                  \_            _\
  2533.                 [            [
  2534.          darkest here  [          [  darkest here
  2535.                   ^]          ^]
  2536.  
  2537.  
  2538.                     0000000000
  2539.                   00112222221100
  2540.                  011222[[[[222110
  2541.                 011222[[[[[[222110
  2542.                 011222[[[[[[222110
  2543.                  011222[[[[222110
  2544.                   00112222221100
  2545.                     0000000000
  2546.  
  2547.  
  2548.        The above character shading example  shows  one  way  of  matching the
  2549.        curvature example.   You  can obtain more gradations by using high and
  2550.        low intensity color in combination.  For a case in point, coloring the
  2551.        following symbols as indicated yields eight shades of blue:
  2552.  
  2553.                     light
  2554.                     blue
  2555.                       3
  2556.                    light DBD?ZA?ZBD blue
  2557.                 cyan  [2121010
  2558.  
  2559.        The file  EFFECTS.BIN demonstrates  the above example.  Every possible
  2560.        shading combination is shown in SHADING.TD, using three pages.
  2561.  
  2562.  
  2563.        SHADOWING:
  2564.  
  2565.        This effect gives an object  the  illusion  of  a  third  dimension by
  2566.        throwing  a  "shadow"  onto  something.    Many  popular  programs use
  2567.        shadowing to highlight menu or other box structures.  Shadows are made
  2568.        by duplicating an object shifted down and over slightly, in a darkened
  2569.        color.  ie:
  2570.                    [[[[[[[[[[[[[[[[[[[[
  2571.                    [[[[[[[[[[[[[[[[[[[[0
  2572.                    [[[[[[[[[[[[[[[[[[[[0
  2573.                    [[[[[[[[[[[[[[[[[[[[0
  2574.                    [[[[[[[[[[[[[[[[[[[[0
  2575.                 00000000000000000000
  2576.  
  2577.        The most effective shadow colors are the light and dark grays.
  2578.  
  2579.  
  2580.        TheDraw v4.50           The Animation System             32
  2581.  
  2582.  
  2583.  
  2584.  
  2585.        PAUSING:
  2586.  
  2587.        TheDraw directly supports two  types  of  animation  pause:  timed and
  2588.        keyboard.    Unfortunately,  there  is  no way to wait for a keystroke
  2589.        response in an Ansi  file.   The keyboard  option is  operable only if
  2590.        TheDraw or  THEPP (see following section in documentation) is used for
  2591.        displaying the animation.  Timed pauses  can be  approximated however,
  2592.        by inserting redundant codes into the Ansi file.
  2593.  
  2594.        One application  might be  slowing down  steps of  an animated object.
  2595.        The object is shifted once,  then  a  short  pause  occurs  before the
  2596.        object is  shifted again.   The  relative speed difference (ie: object
  2597.        redrawn faster than shifting occurs) could  help smooth  the animation
  2598.        in some situations.
  2599.  
  2600.        Another  application  of  course,  is  placing a delay after a message
  2601.        appears.  Whisking something away  too  quickly  might  frustrate some
  2602.        users.  For instance, the SHUTTLE2.ANS example uses two delays.
  2603.  
  2604.  
  2605.  
  2606.        PITFALLS AND LIMITATIONS
  2607.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  2608.        You will discover a few limitations of Ansi animation as you progress.
  2609.        Large objects tend to "ripple" as they move.  ie:
  2610.  
  2611.                   ZDDDDDDDDDDDDDDDDDDDDD?
  2612.                   3             3 <-- ripple effect
  2613.                   3            3
  2614.                  3             3
  2615.                  3             3
  2616.                  @DDDDDDDDDDDDDDDDDDDDDY
  2617.  
  2618.        Large object also use a significant portion of the available animation
  2619.        space.   You will  be amazed how quickly even 16000 entries disappear.
  2620.        Objects up to 30 character by 10 lines (30x10) in  size generally work
  2621.        with minimal  difficulty.  Faster computers can get away with slightly
  2622.        larger blocks.
  2623.  
  2624.        Since only one character point can  change at  any given  time, having
  2625.        multiple objects move simultaneously will slow performance.
  2626.  
  2627.        As with  everything, experience will tell you what is best for a given
  2628.        situation.
  2629.  
  2630.  
  2631.  
  2632.  
  2633.  
  2634.  
  2635.  
  2636.  
  2637.  
  2638.        TheDraw v4.50           The Animation System             33
  2639.  
  2640.  
  2641.  
  2642.  
  2643.              TIPS AND EXAMPLES FOR PROGRAMMERS
  2644.  
  2645.  
  2646.        This section is for individuals writing programs who are interested in
  2647.        using  TheDraw.    Effort  was  put forth to make TheDraw a convenient
  2648.        programmers utility.    The  various  sections  which  follow describe
  2649.        example code  for each  of the various languages TheDraw is compatible
  2650.        with.  The routines are tested and can be quite useful for  those just
  2651.        getting started.
  2652.  
  2653.  
  2654.        PROGRAMMING IN ASSEMBLER:
  2655.  
  2656.        Assembly programmers  will find  ASM formatted  files in standard data
  2657.        byte format, using the DB operator.  Asm files can  have varying sizes
  2658.        depending  upon  the  save  mode  used  (Ascii/Normal/Crunched).   The
  2659.        dimensions and  length of  the save  are displayed  at the  top of all
  2660.        assembler dumps.   If  you crunched  the screen,  you will have to use
  2661.        the uncrunch  routine  provided  in  ASM  source  code (UNCRUNCH.ASM).
  2662.        Values required in the CPU registers are documented in the file.
  2663.  
  2664.        Ascii formatted files must be read as bytes and saved on the screen as
  2665.        words.  This can  be  achieved  using  LODSB  and  STOSW instructions.
  2666.        LODSB loads  into AL  the character.   You  store into  AH the desired
  2667.        screen color attributes.   STOSW then  writes the  two bytes  onto the
  2668.        screen.   An alternate method would be to use the Bios or Dos, however
  2669.        these methods are considerably slower.
  2670.  
  2671.        A normal 4000 byte dump (80x25 screen) is  the easiest  to display via
  2672.        the REP MOVSW instruction.  To display the image, point the ES:DI pair
  2673.        to B800:0000 (for color  screens; B000:0000  monochrome) and  DS:SI to
  2674.        the screen  in your  program.   Also load  CX with the number of video
  2675.        words to display (2000 - A total of 4000 bytes).  ie:
  2676.  
  2677.         MOV      AX,0B800h
  2678.         MOV      ES,AX
  2679.         MOV      DI,0
  2680.         MOV      SI,offset ImageData
  2681.         MOV      CX,2000
  2682.         CLD                   ;Make MOVSW go forward.
  2683.         REP   MOVSW
  2684.  
  2685.        If writing to a EGA screen (80x43), CX would need 3440.   If to  a VGA
  2686.        screen (80x50), CX would need 4000.
  2687.  
  2688.        As shown  above, the  ImageData is  written directly  onto the screen.
  2689.        This will cause hashing or "snow" on some  color video  displays.  You
  2690.        may want  to move  only one  video word  at a  time, pausing until the
  2691.        video hardware is in horizontal or  vertical  retrace.    This  can be
  2692.        accomplished with the following routine.
  2693.  
  2694.  
  2695.  
  2696.        TheDraw v4.50     Tips and Examples for Programmers          34
  2697.  
  2698.  
  2699.  
  2700.  
  2701.        Example:
  2702.  
  2703.       MOV   AX,0B800h
  2704.       MOV   ES,AX
  2705.       MOV   DI,0
  2706.       MOV   SI,offset ImageData
  2707.       MOV   CX,2000
  2708.       CLD
  2709.  
  2710.       MOV   DX,03DAh       ;Save i/o address of CGA status register
  2711.  
  2712.        LOOPA:
  2713.       LODSW            ;Read data to be written
  2714.       MOV   BX,AX          ;Save for later.
  2715.  
  2716.       MOV   AH,9           ;Test mask for Vertical/Horizontal retrace
  2717.  
  2718.       IN    AL,DX          ;Read the status register
  2719.       TEST  AL,8           ;See if in vertical retrace?
  2720.       JNZ   WRITE_IT       ;Jump if so.  No need to wait here.
  2721.  
  2722.        LOOPB:
  2723.       IN    AL,DX          ;Read the status register
  2724.       RCR   AL,1           ;Test bit1.  Make sure we are not in the
  2725.       JC    LOOPB          ;middle of a horizontal retrace.
  2726.  
  2727.        LOOPC:
  2728.       IN    AL,DX          ;Read the status register
  2729.       TEST  AL,AH          ;Wait until in either vertical or
  2730.       JZ    LOOPC          ;horizontal retrace.
  2731.  
  2732.        WRITE_IT:
  2733.       MOV   AX,BX          ;Retrieve the character we loaded before.
  2734.       STOSW            ;Save it.
  2735.  
  2736.       LOOP  LOOPA
  2737.  
  2738.  
  2739.        The above  is a  fairly complex mess, but will reliably place a screen
  2740.        image snow free onto the display.   This  routine is  not needed  on a
  2741.        monochrome video since such hardware does not suffer from snow.
  2742.  
  2743.        Notice the  entry code  is identical  to the  previous simple example.
  2744.        The REP MOVSW is has been replaced with extensive checks  on the video
  2745.        hardware however.
  2746.  
  2747.  
  2748.  
  2749.  
  2750.  
  2751.  
  2752.  
  2753.  
  2754.        TheDraw v4.50     Tips and Examples for Programmers          35
  2755.  
  2756.  
  2757.  
  2758.        PROGRAMMING IN PASCAL:
  2759.  
  2760.        Pascal programmers  have equal  ease with  displaying screens.  Images
  2761.        can be flashed to the screen using the Turbo Pascal  "MOVE" procedure.
  2762.        A pascal NORMAL save can be displayed with the following program:
  2763.  
  2764.      {$I image.pas}
  2765.      type ScreenType = array [0..3999] of Byte;
  2766.      var Screen : ScreenType absolute $B800:0000;
  2767.  
  2768.      begin
  2769.        Move (ImageData,Screen,4000);
  2770.      end.
  2771.  
  2772.        The  above  defines  a  variable  at the absolute address of the video
  2773.        memory.  The importance of defining such an array will  become obvious
  2774.        below.   IMAGEDATA is assumed to be the name of the pascal image dump,
  2775.        but is easily altered  when saving  the file  from TheDraw.   The MOVE
  2776.        procedure puts  ImageData onto  the screen.   Please note this is only
  2777.        for a full screen.    To  display  a  screen  block  is  slightly more
  2778.        difficult.  Our program now becomes:
  2779.  
  2780.      {$I image.pas}
  2781.      type ScreenType = array [0..3999] of Byte;
  2782.      var Screen : ScreenType absolute $B800:0000;
  2783.          X,Offset : Integer;
  2784.      begin
  2785.        Offset := ???;  {Replace ??? with offset to display block}
  2786.  
  2787.        for X := 0 to IMAGEDATA_DEPTH-1 do
  2788.          Move (ImageData[1+X*IMAGEDATA_WIDTH*2],
  2789.            Screen[X*160+Offset],IMAGEDATA_WIDTH*2);
  2790.      end.
  2791.  
  2792.        The  constants  IMAGEDATA_DEPTH  and IMAGEDATA_WIDTH specify the block
  2793.        dimensions of IMAGEDATA, and  are generated  by TheDraw automatically.
  2794.        If  you  change  the  name  identifier,  the width and depth names are
  2795.        updated also.  The depth is the number of vertical lines in the block.
  2796.        Width is  the number  of character  across the  block.   OFFSET is the
  2797.        video address you want the block to appear at.  It is computed with:
  2798.  
  2799.                  (column*2)+(row*160)-162
  2800.  
  2801.                 Column varies 1..80
  2802.                  Row varies 1..25
  2803.  
  2804.        Notice in this example we are using a  loop and  moving one  line at a
  2805.        time.   Lines from  ImageData are  placed on the video at OFFSET.  The
  2806.        address in ImageData is advanced to the location  of the  next line in
  2807.        each loop.   The  video address advances 160 characters each time (the
  2808.        byte width of the video display).
  2809.  
  2810.  
  2811.  
  2812.        TheDraw v4.50     Tips and Examples for Programmers          36
  2813.  
  2814.  
  2815.  
  2816.        Turbo Pascal v3.0 users also have another interesting option.  You can
  2817.        include a .BIN file into a turbo program and then display it using the
  2818.        above techniques.
  2819.  
  2820.        The file actually becomes part of your compiled pascal program.   Once
  2821.        your program is compiled, you no longer need to have the DEMO.BIN file
  2822.        present.
  2823.  
  2824.      procedure DummyProc; external 'DEMO.BIN';
  2825.  
  2826.      type ScreenType = array [0..3999] of Byte;
  2827.      var Screen : ScreenType absolute $B800:0000;
  2828.          X,Depth,Width,Offset : Integer;
  2829.          ImageDataPtr : ^ScreenType;
  2830.      begin
  2831.        Depth := ???;      {Replace ???'s with actual block dimensions}
  2832.        Width := ???;      {as specified by TheDraw after .BIN save.}
  2833.        Offset := ???;     {Replace ??? with position to display block}
  2834.  
  2835.        ImageDataPtr := Addr(DummyProc);
  2836.  
  2837.        for X := 0 to Depth-1 do
  2838.          Move (ImageDataPtr^[1+X*Width*2],Screen[X*160+Offset],Width*2);
  2839.      end.
  2840.  
  2841.        In the above program, we create  a pointer  (IMAGEDATAPTR) pointing at
  2842.        the address  of DUMMYPROC.   The rest of the program is similar to the
  2843.        previous example, except all  occurrences  of  IMAGEDATA  are replaced
  2844.        with  IMAGEDATAPTR^.    Also,  since  the  block  dimensions  are  not
  2845.        available, you must specify them.
  2846.  
  2847.        The up arrow symbol at the end is  very important.   If  you don't use
  2848.        it, Turbo  will copy  the -value- of your pointer to the screen.  This
  2849.        will generally appear as  garbage.   It can  be fun  playing with this
  2850.        concept, you simply must be careful with the pointers.
  2851.  
  2852.        Pascal ASCII  saves are  used similar to strings.  Since the ImageData
  2853.        arrays created do not have color  attributes, we  cannot directly move
  2854.        them to  the video.  The following shows two techniques for displaying
  2855.        these images.
  2856.  
  2857.      --- Pascal ASCII Save Example 1 ---
  2858.  
  2859.      {$I image.pas}
  2860.      var X:Integer;
  2861.      begin
  2862.        ClrScr;
  2863.        for X := 1 to IMAGEDATA_LENGTH do Write (ImageData[X]);
  2864.      end.
  2865.  
  2866.  
  2867.  
  2868.  
  2869.  
  2870.        TheDraw v4.50     Tips and Examples for Programmers          37
  2871.  
  2872.  
  2873.  
  2874.      --- Pascal ASCII Save Example 2 ---
  2875.  
  2876.      {$I image.pas}
  2877.      type ScreenType = array [0..3999] of Byte;
  2878.      var Screen : ScreenType absolute $B800:0000;
  2879.          X:Integer;
  2880.      begin
  2881.        ClrScr;
  2882.        for X := 1 to IMAGEDATA_LENGTH do
  2883.          Screen[X*2-2] := ImageData[X];
  2884.      end.
  2885.  
  2886.        The first example is easiest to  understand.    All  we  are  doing is
  2887.        displaying each  character in IMAGEDATA on the screen using the pascal
  2888.        WRITE function.  This works because the IMAGEDATA block (in this case)
  2889.        is 80  characters wide, so there is no need for a WRITELN.  The cursor
  2890.        will automatically be bumped down to the next  line.  IMAGEDATA_LENGTH
  2891.        is another constant automatically generated by TheDraw.
  2892.  
  2893.        The second  example is  similar to  the first, but directly stuffs the
  2894.        characters onto the screen.    This  will  be  faster  than  the first
  2895.        method.  Notice the Screen[X*2-2].  The multiplication is done because
  2896.        each character occupies two bytes of  video memory.   Since  the first
  2897.        video address is 0, we add -2 to the offset to keep things aligned.
  2898.  
  2899.        To  use  pascal  images  CRUNCHED  by  TheDraw  requires  use  of  the
  2900.        UNCRUNCH.PAS file  included  with  the  package.    The  file contains
  2901.        details and instruction on using crunched images.
  2902.  
  2903.  
  2904.        TURBO PASCAL v4.0 through v5.5:
  2905.  
  2906.        The above  examples will all work for Turbo Pascal v4.0 to v5.5 users,
  2907.        with exception to the external .BIN file example.  The newer compilers
  2908.        do not  support the  old format.  Instead you must use TheDraw's Turbo
  2909.        Pascal compatible Object (.OBJ) files.
  2910.  
  2911.        To use the object file do the following:
  2912.  
  2913.      {$L DEMO.OBJ }
  2914.      procedure ImageData; external;
  2915.      procedure ImageData_Width; external;
  2916.      procedure ImageData_Depth; external;
  2917.      procedure ImageData_Length; external;
  2918.  
  2919.        The procedure name  (ImageData  here)  is  specified  when  making the
  2920.        object  file.    All  four  external  procedure  definitions  must  be
  2921.        specified (Turbo requires it).   Although  these are  "procedures" you
  2922.        MUST NOT  execute them.   They  only contain  image data which must be
  2923.        referred to via pointers.  The modified .BIN example follows:
  2924.  
  2925.  
  2926.  
  2927.  
  2928.        TheDraw v4.50     Tips and Examples for Programmers          38
  2929.  
  2930.  
  2931.  
  2932.      {$L DEMO.OBJ}
  2933.      procedure ImageData; external;
  2934.      procedure ImageData_Width; external;
  2935.      procedure ImageData_Depth; external;
  2936.      procedure ImageData_Length; external;
  2937.  
  2938.      type ScreenType = array [0..3999] of Byte;
  2939.      var Screen : ScreenType absolute $B800:0000;
  2940.          X,Offset : Integer;
  2941.          ImageDataPtr : ^ScreenType;
  2942.          ImageDataWidthPtr : ^Integer;
  2943.          ImageDataDepthPtr : ^Integer;
  2944.          ImageDataLengthPtr : ^Integer;
  2945.  
  2946.      begin
  2947.        Offset := ???;       {Replace ??? with position to display block}
  2948.  
  2949.        ImageDataPtr := @ImageData;
  2950.        ImageDataWidthPtr := @ImageData_Width;
  2951.        ImageDataDepthPtr := @ImageData_Depth;
  2952.        ImageDataLengthPtr := @ImageData_Length;
  2953.  
  2954.        for X := 0 to ImageDataDepthPtr^-1 do
  2955.          Move (ImageDataPtr^[1+X*ImageDataWidthPtr^*2],
  2956.            Screen[X*160+Offset],ImageDataWidthPtr^*2);
  2957.      end.
  2958.  
  2959.        The above is for a generalized block of any dimension.   A  pointer to
  2960.        the IMAGEDATA_LENGTH  is initialized  but not  used.   It is there for
  2961.        example usage only.  The above program can be simplified  somewhat for
  2962.        an entire screen.  ie:
  2963.  
  2964.      {$L DEMO.OBJ}
  2965.      procedure ImageData; external;     {All of these are needed,}
  2966.      procedure ImageData_Width; external;   {otherwise Turbo v4.0-v5.5}
  2967.      procedure ImageData_Depth; external;   {get upset.}
  2968.      procedure ImageData_Length; external;
  2969.  
  2970.      begin
  2971.        Move (pointer(@ImageData)^,ptr($B800,0)^,4000);
  2972.      end.
  2973.  
  2974.        Note the  usage of  typecasting to eliminate the pointer to ImageData.
  2975.        This cleans up the program  appearance  somewhat.    In  addition, the
  2976.        value of  4000 could  be replaced  with a pointer to IMAGEDATA_LENGTH.
  2977.        However, since this is an  entire  screen  why  bother  initializing a
  2978.        pointer.  A full 80 by 25 screen is always 4000 bytes in length.
  2979.  
  2980.  
  2981.  
  2982.  
  2983.  
  2984.  
  2985.  
  2986.        TheDraw v4.50     Tips and Examples for Programmers          39
  2987.  
  2988.  
  2989.  
  2990.        TURBO PASCAL VERSION 6.0:
  2991.  
  2992.        Everything  shown  thus  far  for  Turbo  Pascal  v4.0  to  v5.5 works
  2993.        perfectly well in TP 6.0.  However, the  newest release  allows a more
  2994.        relaxed  preinitialized  constant  definitions.  The previous examples
  2995.        can be shorten to:
  2996.  
  2997.      {$L DEMO.OBJ}
  2998.      procedure ImageData; external;
  2999.      procedure ImageData_Width; external;
  3000.      procedure ImageData_Depth; external;
  3001.      procedure ImageData_Length; external;
  3002.  
  3003.      type ScreenType = array [0..3999] of Byte;
  3004.      var Screen : ScreenType absolute $B800:0000;
  3005.          X,Offset : Integer;
  3006.  
  3007.      const
  3008.        ImageDataPtr : ^ScreenType = @ImageData;
  3009.        ImageDataWidthPtr : ^Integer = @ImageData_Width;
  3010.        ImageDataDepthPtr : ^Integer = @ImageData_Depth;
  3011.        ImageDataLengthPtr : ^Integer = @ImageData_Length;
  3012.  
  3013.      begin
  3014.        Offset := ???;     {Replace ??? with position to display block}
  3015.  
  3016.        for X := 0 to ImageDataDepthPtr^-1 do
  3017.          Move (ImageDataPtr^[1+X*ImageDataWidthPtr^*2],
  3018.            Screen[X*160+Offset],ImageDataWidthPtr^*2);
  3019.      end.
  3020.  
  3021.  
  3022.        In addition, all the external definitions  for public  identifiers are
  3023.        no longer mandatory.   Thus the full screen example reduces to:
  3024.  
  3025.      {$L DEMO.OBJ}
  3026.      procedure ImageData; external;
  3027.  
  3028.      begin
  3029.        Move (pointer(@ImageData)^,ptr($B800,0)^,4000);
  3030.      end.
  3031.  
  3032.        People casually reviewing the literature for v6.0 may note initialized
  3033.        data is permitted within object files now.   Although a  definite vast
  3034.        improvement, the  data is  still private to the object file.  Assuming
  3035.        the  designers  of  Turbo  Pascal  eventually  add  external  variable
  3036.        declarations (similar  to C), the Large object file data model TheDraw
  3037.        currently supports should be compatible.  Until then we must bear with
  3038.        the current approach for accessing image data.
  3039.  
  3040.  
  3041.  
  3042.  
  3043.  
  3044.        TheDraw v4.50     Tips and Examples for Programmers          40
  3045.  
  3046.  
  3047.  
  3048.        PROGRAMMING IN C:
  3049.  
  3050.        C  programmers  have  support  similar  to  that  for pascal.  TheDraw
  3051.        creates the Normal, Ascii,  and Crunched  file formats  using modern C
  3052.        code definitions.  The ImageData arrays are used similar to the pascal
  3053.        case.  Please note, in the following examples  it will  be assumed the
  3054.        programs are compiled in a state supporting 32-bit data pointers.
  3055.  
  3056.        A C NORMAL save is the easiest to display.  For instance:
  3057.  
  3058.      #include <stdio.h>
  3059.      #include <mem.h>
  3060.      #include "image.h"
  3061.      main ()  {
  3062.        /* Kludge a pointer at video memory (segment 0xB800, offset 0) */
  3063.        void far *screen = (void far *) 0xB8000000;
  3064.        memcpy (screen,IMAGEDATA,4000);    /* Move image to screen */
  3065.      }
  3066.  
  3067.        The  <mem.h>  file  reference  contains  the  definition of the memcpy
  3068.        routine.  Users of Microsoft C  should reference  the <memory.h> file.
  3069.        IMAGE.H is  assumed to  contain the array IMAGEDATA created by TheDraw
  3070.        (the name may be changed to anything else  naturally).   The void data
  3071.        type used is a modern C convention.  If your compiler does not support
  3072.        it, use type char instead (or  whatever type  your compiler  wants for
  3073.        parameters to memcpy).
  3074.  
  3075.        Reminder:
  3076.       Be absolutely sure you are using the proper code/data model.  It is
  3077.       very easy to write  the above  program, only  to have  the compiler
  3078.       complain about incompatible pointer sizes and other nastiness.  The
  3079.       function memcpy MUST accept full 32 bit data  pointers.   In TurboC
  3080.       for instance, you must use memory models Compact, Large, or Huge.
  3081.  
  3082.        The above  is for  a full screen image.  To display a block involves a
  3083.        little more work, as in the pascal example.
  3084.  
  3085.      #include <stdio.h>
  3086.      #include <mem.h>
  3087.      #include "image.h"
  3088.      main () {
  3089.        void far *screen;
  3090.        int offset = ???;  /* Replace ??? with offset to display block */
  3091.        int x;
  3092.  
  3093.        for (x=0; x<IMAGEDATA_DEPTH; x++) {
  3094.          (long) screen = 0xB8000000+x*160+offset;
  3095.          memcpy (screen,&IMAGEDATA[x*IMAGEDATA_WIDTH*2],IMAGEDATA_WIDTH*2);
  3096.        }
  3097.      }
  3098.  
  3099.  
  3100.  
  3101.  
  3102.        TheDraw v4.50     Tips and Examples for Programmers          41
  3103.  
  3104.  
  3105.  
  3106.        As before, the variables  IMAGEDATA_DEPTH and  IMAGEDATA_WIDTH specify
  3107.        the block  size saved in IMAGEDATA, and are generated by TheDraw.  The
  3108.        depth is the number  of vertical  lines in  the block.   Width  is the
  3109.        number  of  characters  across  the  block.  OFFSET contains the video
  3110.        address the block is to appear at.  It is computed with:
  3111.  
  3112.                  (column*2)+(row*160)-162
  3113.  
  3114.                 Column varies 1..80
  3115.                  Row varies 1..25
  3116.  
  3117.        A loop is used in this  example to  move one  line at  a time.   Lines
  3118.        from IMAGEDATA  are placed  on the  video at OFFSET.  The address into
  3119.        IMAGEDATA is advanced to the location of the  next line  in each loop.
  3120.        The  video  address  advances  160  characters for each line (the byte
  3121.        width of the video display).
  3122.  
  3123.        Programmers with TurboC can  also  use  the  function  puttext.   This
  3124.        handles everything  the previous  example did  and is  called with the
  3125.        following parameters:
  3126.  
  3127.            XUL    = X coordinate of upper-left corner.
  3128.            YUL    = Y coordinate of upper-left corner.
  3129.            XLR    = X coordinate of lower-right corner.
  3130.            YLR    = Y coordinate of lower-right corner.
  3131.            source = address pointer to data
  3132.  
  3133.        Examples of usage are:
  3134.  
  3135.          puttext (1,1,80,25,IMAGEDATA);
  3136.         /* full screen display */
  3137.  
  3138.          puttext (1,1,IMAGEDATA_WIDTH,IMAGEDATA_DEPTH,IMAGEDATA);
  3139.         /* display block in upper-left corner of screen */
  3140.  
  3141.          puttext (81-IMAGEDATA_WIDTH,26-IMAGEDATA_DEPTH,80,25,IMAGEDATA);
  3142.         /* display block in lower-right corner of screen */
  3143.  
  3144.  
  3145.        In addition to simplifying the code,  this function  can be  used from
  3146.        ANY memory model.  You are not restricted to the larger memory models.
  3147.        However, remember this function will only work for NORMAL screen saves
  3148.        (not Ascii or Crunched).
  3149.  
  3150.  
  3151.  
  3152.  
  3153.  
  3154.  
  3155.  
  3156.  
  3157.  
  3158.  
  3159.  
  3160.        TheDraw v4.50     Tips and Examples for Programmers          42
  3161.  
  3162.  
  3163.  
  3164.        The ASCII  format is  a bit easier to use in C than Pascal.  By taking
  3165.        advantage of the 0 terminated strings  of C,  we can  display an ASCII
  3166.        image by simply doing the following:
  3167.  
  3168.      #include <stdio.h>
  3169.      #include "image.h"
  3170.      main () {
  3171.        printf ("%s",IMAGEDATA);
  3172.      }
  3173.  
  3174.        An alternate technique for displaying ASCII format files is similar to
  3175.        the second pascal example (for doing the same thing).  ie:
  3176.  
  3177.      #include <stdio.h>
  3178.      #include <mem.h>
  3179.      #include "image.h"
  3180.      main () {
  3181.        void far *screen;
  3182.  
  3183.        int x;
  3184.  
  3185.        for (x=0; x<4000; x++) {
  3186.          (long) screen = 0xB8000000 + x*2;
  3187.          memcpy (screen,&IMAGEDATA[x],1);
  3188.        }
  3189.      }
  3190.  
  3191.        Characters are copied one at a  time from  the IMAGEDATA  array to the
  3192.        video memory.   This  is significantly faster than the printf example,
  3193.        since the overhead of going through the operating system is removed.
  3194.  
  3195.        To use C images CRUNCHED by TheDraw, you must use  the code  in either
  3196.        UNCRUN_N.OBJ or  UNCRUN_F.OBJ (depending if you are using a Small/Near
  3197.        or Large/Far code model).   The  file UNCRUNCH.H  contains examples on
  3198.        their usage.
  3199.  
  3200.  
  3201.  
  3202.        USING OBJECT FILES WITH C:
  3203.  
  3204.        C  is  normally  implemented  to smoothly interface with object files.
  3205.        There are two steps to using TheDraw object files with C.
  3206.  
  3207.       1) Specify external variables referencing the screen image.
  3208.       2) Tell the compiler make/project utility to  link the  wanted file
  3209.          with your program.
  3210.  
  3211.        Notice in  the following  program that  no include  is made.  The file
  3212.        containing the image is not C source code.   It  is a  prepared object
  3213.        file merely  needing to  be linked.   Therefore,  we tell the compiler
  3214.        what to expect via EXTERN definitions.
  3215.  
  3216.  
  3217.  
  3218.        TheDraw v4.50     Tips and Examples for Programmers          43
  3219.  
  3220.  
  3221.  
  3222.  
  3223.      #include <stdio.h>
  3224.      #include <mem.h>
  3225.      main () {
  3226.        extern int IMAGEDATA_WIDTH;
  3227.        extern int IMAGEDATA_DEPTH;
  3228.        extern int IMAGEDATA_LENGTH;
  3229.        extern unsigned char IMAGEDATA [];
  3230.  
  3231.        void far *screen;
  3232.        int offset = ???;  /* Replace ??? with offset to display block */
  3233.        int x;
  3234.  
  3235.        for (x=0; x<IMAGEDATA_DEPTH; x++) {
  3236.          (long) screen = 0xB8000000+x*160+offset;
  3237.          memcpy (screen,&IMAGEDATA[x*IMAGEDATA_WIDTH*2],IMAGEDATA_WIDTH*2);
  3238.        }
  3239.      }
  3240.  
  3241.        Notice  the  image  dimensions  (width,depth,length)  are   stored  as
  3242.        variables for  easy reference.  The length parameter is not used here,
  3243.        but included to show its availability.
  3244.  
  3245.        The second step is largely dependent on the compiler setup.   You must
  3246.        create  or  update  a  make  file to link the necessary TheDraw object
  3247.        (.OBJ) file with your program.  If you  use Turbo  C, simply  list the
  3248.        file in the project listing.
  3249.  
  3250.  
  3251.  
  3252.        PROGRAMMING IN STANDARD BASIC:
  3253.  
  3254.        Basic programmers  are a  little more  limited, not  because they lack
  3255.        commands, but lack speed.  Therefore  TheDraw creates  the BSave files
  3256.        with all  addressing information  already programmed.  All you have to
  3257.        do  is  type  'BLOAD  "filename.BSV"'.      The   screen   segment  is
  3258.        automatically set,  so you  don't have  to bother  with DEF SEG=etc...
  3259.        However, if you wish to override the display segment default,  try the
  3260.        following:
  3261.  
  3262.         DEF SEG=&HB800 : BLOAD"filename.BSV"
  3263.  
  3264.        For monochrome video users, replace the B800 with B000.
  3265.  
  3266.        TheDraw allows  partial block saves for basic files.  These files will
  3267.        always be 80 characters wide.  This is a limitation of BLOAD  which we
  3268.        all  must  live  with.    They  can start and end on any vertical line
  3269.        however, so you could load a  full screen  then just  load small block
  3270.        images to  update those parts of the screen needing it.  Make sure you
  3271.        build the partial-block images in TheDraw in the exact screen location
  3272.        you want them to finally appear.  If you save a block starting on line
  3273.        5, and ending on line 8 that is where Basic will display it.
  3274.  
  3275.  
  3276.        TheDraw v4.50     Tips and Examples for Programmers          44
  3277.  
  3278.  
  3279.  
  3280.        PROGRAMMING IN MICROSOFT QUICKBASIC v4.0 AND v4.5:
  3281.  
  3282.        All the techniques mentioned  for Standard  Basic above  are valid for
  3283.        Microsoft's QuickBasic compiler.  However, in QuickBasic v4.0 and v4.5
  3284.        additional means are at our disposal.
  3285.  
  3286.        TheDraw produces QuickBasic compatible  object files  (.OBJ) which are
  3287.        directly linkable.   Each  TheDraw QuickBasic object file contains the
  3288.        screen image data  plus  four  functions  for  referencing  that data.
  3289.        These are  shown below  as used  from within  QuickBasic (assuming the
  3290.        default identifier of IMAGEDATA):
  3291.  
  3292.              DECLARE FUNCTION IMAGEDATA&
  3293.              DECLARE FUNCTION IMAGEDATAWIDTH%
  3294.              DECLARE FUNCTION IMAGEDATADEPTH%
  3295.              DECLARE FUNCTION IMAGEDATALENGTH%
  3296.  
  3297.        Changing the identifier when saving the  object file  alters the above
  3298.        accordingly.  ie:  an identifier of TEST would be:
  3299.  
  3300.              DECLARE FUNCTION TEST&
  3301.              DECLARE FUNCTION TESTWIDTH%
  3302.              DECLARE FUNCTION TESTDEPTH%
  3303.              DECLARE FUNCTION TESTLENGTH%
  3304.  
  3305.        The  functions  are  used  in  conjunction  with  the QB4UTIL.LIB file
  3306.        containing subroutines for displaying  the  screen  image  data.   The
  3307.        first  function,  IMAGEDATA  (or  whatever identifier chosen), returns
  3308.        information regarding the location of the  data.    It  is  used  as a
  3309.        parameter to one of the display subroutines.  ie:
  3310.  
  3311.          CALL UNCRUNCH (IMAGEDATA&, 0)            Use whichever is
  3312.          CALL ASCIIDISPLAY (IMAGEDATA&, 0)     <- appropriate to the
  3313.          CALL NORMALDISPLAY (IMAGEDATA&, 0)       file created by TheDraw
  3314.  
  3315.        The next  two functions  return the  width and depth dimensions of the
  3316.        screen image block.   For  instance,  a  full  screen  would typically
  3317.        return 80  and 25  respectfully (unless  an EGA/VGA display was in use
  3318.        causing the depth to  increase).    These  parameters  are  useful for
  3319.        determining window and viewport sizes, computing area, etc...
  3320.  
  3321.        The last  function returns  the length  of the  data as stored in your
  3322.        program.  A crunched image or a small data block could be quite small.
  3323.        A 80x25 normal binary screen image would be 4000 bytes.
  3324.  
  3325.        To  use   TheDraw  object   files  within  the  QuickBasic  integrated
  3326.        environment requires the making of  a  Microsoft  Quick  Library.   If
  3327.        linking together your program externally, the QB4UTIL.LIB file must be
  3328.        included as  it  contains  the  required  Uncrunch,  AsciiDisplay, and
  3329.        NormalDisplay routines.
  3330.  
  3331.  
  3332.  
  3333.  
  3334.        TheDraw v4.50     Tips and Examples for Programmers          45
  3335.  
  3336.  
  3337.  
  3338.        MAKING AND USING QUICK LIBRARIES:
  3339.  
  3340.        To  ease  the  use  of  TheDraw  object  files,  a  batch  file called
  3341.        MAKEQLB.BAT is included.    The  batch  file  creates  both  the Quick
  3342.        Library files  (.QLB extension)  and the  separate library files (.LIB
  3343.        extension).  The idea being to put everything in one place.
  3344.  
  3345.        Once MAKEQLB has run  successfully,  you  can  use  the  Quick Library
  3346.        within the environment.  ie:
  3347.  
  3348.                 QB /L testfile.QLB
  3349.  
  3350.        In addition,  linking at  the Dos  prompt is  simplified since all you
  3351.        need include is the one file.  ie:
  3352.  
  3353.             LINK program.OBJ+testfile.LIB,,,,;
  3354.  
  3355.           (program.OBJ is assumed created by the BC.EXE compiler)
  3356.  
  3357.        MAKEQLB.BAT must  be in  the same  directory as  LINK.EXE, LIB.EXE and
  3358.        BRUN40.LIB or  BRUN45.LIB (depending  on your  version of QuickBasic),
  3359.        plus naturally the TheDraw object files.  The parameters to  the batch
  3360.        file are:
  3361.  
  3362.           MAKEQLB <targetlib> <objectfile1> <objectfile2> etc...
  3363.  
  3364.        The <targetlib> is any library filename you want.  Do -not- put a file
  3365.        extension on this! (see example below)  The batch adds  the extensions
  3366.        .QLB and  .LIB automatically for you.  The <objectfile> parameters are
  3367.        the names of object files you created with TheDraw.
  3368.  
  3369.            DDDDDDDDDDDDDDDDDDD Example run DDDDDDDDDDDDDDDDDDDD
  3370.  
  3371.           THEDRAW
  3372.              ....assume users creates the QB object files
  3373.               IMAGE1.OBJ and IMAGE2.OBJ
  3374.  
  3375.           MAKEQLB IMAGES SCREEN1.OBJ SCREEN2.OBJ
  3376.              ....creates the files IMAGES.QLB & IMAGES.LIB
  3377.               containing the two above object files plus
  3378.               the required display routines.
  3379.  
  3380.           QB /L IMAGES.QLB
  3381.              ....runs QuickBasic using new Quick Library.
  3382.  
  3383.            DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  3384.  
  3385.        Once the Quick Library is created, using the screen images is a simple
  3386.        matter of  calling a  display routine.   The  display routines must be
  3387.        declare within QuickBasic before they can be called.
  3388.  
  3389.  
  3390.  
  3391.  
  3392.        TheDraw v4.50     Tips and Examples for Programmers          46
  3393.  
  3394.  
  3395.  
  3396.        THE DISPLAY ROUTINES:
  3397.  
  3398.        The file QB4UTIL.BI lists those declarations for convenience.   Simply
  3399.        include it with the following meta command:
  3400.  
  3401.                 REM $INCLUDE: 'QB4UTIL.BI'
  3402.  
  3403.  
  3404.        Four routines are declared within this file:
  3405.  
  3406.       UNCRUNCH            Contains  algorithm  needed to display crunched
  3407.                   screen images.
  3408.       ASCIIDISPLAY        Display ascii-only object files.
  3409.       NORMALDISPLAY       Display normal binary object files.
  3410.       INITSCREENARRAY     Initialize  a   dynamic   array   for  directly
  3411.                   accessing  the  video  screen.    Can  be  used
  3412.                   instead of DEF SEG, PEEK, and POKE.
  3413.  
  3414.  
  3415.        The actual declarations are:
  3416.  
  3417.            DECLARE SUB UNCRUNCH (X&, Z%)
  3418.            DECLARE SUB ASCIIDISPLAY (X&, Z%)
  3419.            DECLARE SUB NORMALDISPLAY (X&, Z%)
  3420.            DECLARE SUB INITSCREENARRAY (A%())
  3421.  
  3422.  
  3423.        The first parameter to  the display  routines is  the identifier saved
  3424.        within a given object file (ie: IMAGEDATA&).
  3425.  
  3426.        The second  parameter of  each display  call is the video location the
  3427.        image will appear.  The upper left screen corner is offset 0 with each
  3428.        line taking 160 bytes (each screen character uses two bytes).  ie:
  3429.  
  3430.            line 1 = offset 0
  3431.            line 2 = offset 160
  3432.            line 3 = offset 320
  3433.            line 4 = offset 480
  3434.            etc...
  3435.  
  3436.        To compute  an arbitrary  video location,  for any text mode including
  3437.        the 43/50 line EGA/VGA modes, use the formula:
  3438.  
  3439.            Video Offset  =  (X-1)*2 + (Y-1)*160
  3440.  
  3441.  
  3442.  
  3443.  
  3444.  
  3445.  
  3446.  
  3447.  
  3448.  
  3449.  
  3450.        TheDraw v4.50     Tips and Examples for Programmers          47
  3451.  
  3452.  
  3453.  
  3454.        Example program  using  images  screens.    Assume  three  screens are
  3455.        available with  the identifiers  Q1, Q2,  and Q3.   Q1 is crunched, Q2
  3456.        saved as Ascii-Only, and Q3 saved with normal binary.
  3457.  
  3458.       REM $INCLUDE: 'QB4UTIL.BI'    ' Get display routine declarations
  3459.  
  3460.       DECLARE FUNCTION Q1&      ' Important!  Do not neglect either
  3461.       DECLARE FUNCTION Q1Width%     ' the "&" or "%" symbols on function
  3462.       DECLARE FUNCTION Q1Depth%     ' declarations shown here.
  3463.       DECLARE FUNCTION Q1Length%
  3464.       DECLARE FUNCTION Q2&
  3465.       DECLARE FUNCTION Q2Width%
  3466.       DECLARE FUNCTION Q2Depth%
  3467.       DECLARE FUNCTION Q2Length%
  3468.       DECLARE FUNCTION Q3&
  3469.       DECLARE FUNCTION Q3Width%
  3470.       DECLARE FUNCTION Q3Depth%
  3471.       DECLARE FUNCTION Q3Length%
  3472.  
  3473.       CLS                    ' Clear screen
  3474.       PRINT "Screen #1 (Crunched)"       ' Print data of this image then
  3475.       PRINT "  Width: "; Q1Width%        ' pause for user.
  3476.       PRINT "  Depth: "; Q1Depth%
  3477.       PRINT "  Length:"; Q1Length%
  3478.       WHILE INKEY$ = "": WEND
  3479.       CLS                    ' Clear screen
  3480.       CALL UNCRUNCH(Q1&, 0)          ' Go uncrunch first image
  3481.       WHILE INKEY$ = "": WEND            ' Pause
  3482.  
  3483.       CLS
  3484.       PRINT "Screen #2 (Ascii Only)"     ' Print data on second image
  3485.       PRINT "  Width: "; Q2Width%        ' and pause for user.
  3486.       PRINT "  Depth: "; Q2Depth%
  3487.       PRINT "  Length:"; Q2Length%
  3488.       WHILE INKEY$ = "": WEND
  3489.       CLS
  3490.       CALL ASCIIDISPLAY(Q2&, 0)          ' Display ascii-only image data.
  3491.       WHILE INKEY$ = "": WEND            ' Pause
  3492.  
  3493.       CLS
  3494.       PRINT "Screen #3 (Normal Binary)"  ' Print data on third image
  3495.       PRINT "  Width: "; Q3Width%        ' and pause for user.
  3496.       PRINT "  Depth: "; Q3Depth%
  3497.       PRINT "  Length:"; Q3Length%
  3498.       WHILE INKEY$ = "": WEND
  3499.       CLS
  3500.       CALL NORMALDISPLAY(Q3&, 0)         ' Display normal binary image.
  3501.       WHILE INKEY$ = "": WEND            ' Pause
  3502.  
  3503.  
  3504.  
  3505.  
  3506.  
  3507.  
  3508.        TheDraw v4.50     Tips and Examples for Programmers          48
  3509.  
  3510.  
  3511.  
  3512.       REM $DYNAMIC               ' Setup dynamic integer array
  3513.       DIM SCREEN%()              ' mapped over video display.
  3514.       INITSCREENARRAY (SCREEN%())
  3515.  
  3516.       FOR Y% = 1 TO 25               ' Make screen scroll downward.
  3517.          FOR X% = 1999 TO 160 STEP -1
  3518.         SCREEN%(X%) = SCREEN%(X%-160)
  3519.          NEXT
  3520.  
  3521.          FOR X% = 0 TO 159 : SCREEN%(X%) = 0 : NEXT   ' Clear top line.
  3522.          FOR X% = 0 TO 1000 : NEXT            ' Slow things down.
  3523.       NEXT
  3524.       END
  3525.  
  3526.        The first call (to  UNCRUNCH) displays  Q1 in  the upper  left corner.
  3527.        The second  call (to  ASCIIDISPLAY) displays  IMAGE2 on the sixth line
  3528.        down, in  the center  of the  screen (40  characters over).   The file
  3529.        QB4UTIL.BI  contains   a  complete  description  of  all  the  display
  3530.        routines for you.
  3531.  
  3532.        Note in the above  example, everything  available in  a TheDraw object
  3533.        file  was  declared  and  used  (the Image, the width, depth, and data
  3534.        length) for example purposes.   In  normal use  you need  only declare
  3535.        what you  wish to  take advantage  of (naturally).  If you always used
  3536.        80x25 screens, there would be no  need to  access the  image width and
  3537.        depth for instance.
  3538.  
  3539.        The  INITSCREENARRAY  sets  up  a  dynamic array mapped over the video
  3540.        display.  To directly manipulate the  screen, you  can perform various
  3541.        useful operations  with this  array.   For instance, the above example
  3542.        scrolls the screen downward thus clearing  the screen.   You  may find
  3543.        this  more  convenient  than  setting  up DEF SEG, and using PEEK/POKE
  3544.        operations.  Initializing the array requires  the following  (the name
  3545.        used here is "screen" - you can change this to anything of course)
  3546.  
  3547.          REM $DYNAMIC
  3548.          DIM SCREEN%()
  3549.          INITSCREENARRAY (SCREEN%())
  3550.  
  3551.        After initializing  an array,  you can set individual screen elements.
  3552.        To put a yellow letter A on the screen for example:
  3553.  
  3554.          SCREEN%(0) = ASC('A') + 256*14
  3555.  
  3556.        Compare against the equivalent PEEK/POKE approach (assume DEF  SEG has
  3557.        been initialized to &HB800 for color, or &HB000 for monochrome video):
  3558.  
  3559.          POKE 0,ASC('A')
  3560.          POKE 1,14
  3561.  
  3562.        Pick whichever approach you feel most comfortable with.
  3563.  
  3564.  
  3565.  
  3566.        TheDraw v4.50     Tips and Examples for Programmers          49
  3567.  
  3568.  
  3569.  
  3570.        COMMAND LINE COMPILATION:
  3571.  
  3572.        The  above   examples  all  assume  using  the  QuickBasic  integrated
  3573.        environment.  For most users this  is  adequate.    However,  the more
  3574.        sophisticated  user  might  prefer  their  own text editor and use dos
  3575.        compilation.
  3576.  
  3577.        Use TheDraw object files  is  done  exactly  as  described previously.
  3578.        Create the  .OBJ files,  and use  MAKEQLB to produce the Quick Library
  3579.        (.QLB) and stand alone (.LIB) library files.  ie:
  3580.  
  3581.       MAKEQLB IMAGES IMAGE1.OBJ IMAGE2.OBJ IMAGE3.OBJ
  3582.  
  3583.        Compile your source code normally using the BC program.  ie:
  3584.  
  3585.       BC MYCODE.BAS,,,;
  3586.  
  3587.        When linking  your program,  simply add  the stand  alone library from
  3588.        MAKEQLB to your command line when making your .EXE file:
  3589.  
  3590.       LINK MYCODE+IMAGES.LIB,,,,;
  3591.  
  3592.        It is  possible to  bypass the  MAKEQLB step.  This requires including
  3593.        all the screen image object files  plus TheDraw's  display routines in
  3594.        your link command.  Instead of MAKEQLB and IMAGES.LIB, type:
  3595.  
  3596.       LINK MYCODE+QB4UTIL.LIB+IMAGE1+IMAGE2+IMAGE3,,,,;
  3597.  
  3598.        The MAKEQLB  approach eliminates some of the extra typing in the final
  3599.        command line.  Since MAKEQLB is used when  updating screens,  using it
  3600.        can save some time can cut down on typo errors.
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.  
  3608.  
  3609.  
  3610.  
  3611.  
  3612.  
  3613.  
  3614.  
  3615.  
  3616.  
  3617.  
  3618.  
  3619.  
  3620.  
  3621.  
  3622.  
  3623.  
  3624.        TheDraw v4.50     Tips and Examples for Programmers          50
  3625.  
  3626.  
  3627.  
  3628.        PROGRAMMING IN CLIPPER(TM) (courtesy of Ian Thurston):
  3629.  
  3630.  
  3631.        A  full  TheDraw  screen  saved  as  a BINARY file (.BIN) has the same
  3632.        format as the Clipper compiler uses to "SAVE  SCREEN TO  <expc>".  For
  3633.        both Clipper  and TheDraw,  a full  text screen  save consists of 2000
  3634.        "words" (or 4000 bytes).    Each  word  represents  the  character and
  3635.        attribute of a single screen location.
  3636.  
  3637.  
  3638.        Importing Full-Screen BINARY files:
  3639.  
  3640.        We can  easily read any file less than 64k bytes into a Clipper memory
  3641.        variable with the "MEMOREAD" function.    Combining  the  MEMOREAD and
  3642.        RESTORE SCREEN command as follows yields:
  3643.  
  3644.          RESTORE SCREEN FROM MEMOREAD("FULL.BIN")
  3645.  
  3646.  
  3647.        Importing Partial-Screen BINARY files:
  3648.  
  3649.        Once  again,  a  partial/block  TheDraw  screen saved to a BINARY file
  3650.        (using the  ALT-B,Save  command)  has  the  same  format  as Clipper's
  3651.        corresponding command:
  3652.  
  3653.          "<expC>=SAVESCREEN(top,left,bottom,right)"
  3654.  
  3655.        For example, assume TheDraw was used to prepare a screen.  It was then
  3656.        blocked using ALT-B, with the upper left corner at row  10, column 10,
  3657.        while  the  lower  right  corner  was  at row 20, column 70.  The Save
  3658.        option was selecting using the Binary  option, and  saved to  the file
  3659.        "PARTIAL.BIN"
  3660.  
  3661.        Again, the  TheDraw Binary file is read into a Clipper memory variable
  3662.        using the "MEMOREAD" function,  which itself  is used  as the argument
  3663.        for the partial screen restore function RESTSCREEN (t,l,b,r,<expC>):
  3664.  
  3665.          RESTSCREEN (10,10,20,70,MEMOREAD("PARTIAL.BIN"))
  3666.  
  3667.        Note:  As is usual with this sort of function, a block can be restored
  3668.        at a different screen location  ...  but  the  width  and  height must
  3669.        remain the  same, else  the display  will look very ugly indeed.  Also
  3670.        correct programming practice would  have us  check for  file existence
  3671.        and length before trying these techniques.  You may choose to wrap the
  3672.        functions inside a parameter checking shell.
  3673.  
  3674.  
  3675.  
  3676.  
  3677.  
  3678.  
  3679.  
  3680.  
  3681.  
  3682.        TheDraw v4.50     Tips and Examples for Programmers          51
  3683.  
  3684.  
  3685.  
  3686.        Combining Multiple BINARY (.BIN) Files:
  3687.  
  3688.        If quite a few Binary files  will be  stored on  disk and incorporated
  3689.        into an application, why not combine them into one Clipper database to
  3690.        simplify things?  The  process  for  accomplishing  this  is described
  3691.        below:
  3692.  
  3693.        a. Create a database for .BIN files using the following structure:
  3694.  
  3695.          Structure for database: BIN.DBF
  3696.  
  3697.          Field Field_Name Type        Width    Dec
  3698.          1 BIN_NAME   Character      8
  3699.          2 BIN_TOP         Numeric        2
  3700.          3 BIN_LEFT   Numeric        2
  3701.          4 BIN_BOTTOM Numeric        2
  3702.          5 BIN_RIGHT  Numeric        2
  3703.          6 BIN_SCREEN Memo          10
  3704.  
  3705.  
  3706.        b. Using  the  MEMOREAD  function,  import  the BIN files as character
  3707.        variables, then store them in memo field BIN_SCREEN  using the REPLACE
  3708.        command.    Next,  save  the  screen display coordinates into BIN_TOP,
  3709.        BIN_LEFT,  BIN_BOTTOM,  and  BIN_RIGHT  (for  a   full  screen,  those
  3710.        coordinates are 0,0,24, and 79).  Finally, store a meaningful name for
  3711.        the screen in BIN_NAME (ie: "MAINMENU" for a main menu display).
  3712.  
  3713.        c. Index the file on BIN_NAME.
  3714.  
  3715.        ----
  3716.        Now to use this file, we need the following function:
  3717.  
  3718.        ********
  3719.        FUNCTION showbins
  3720.        ********
  3721.        PARAMETERS screename
  3722.        PRIVATE tempselect
  3723.        tempselect=SELECT()         && Keep track of where we were working
  3724.        IF SELECT("BIN") = 0        && Check to see if BIN has been opened
  3725.       SELECT 0             && If not, find a blank work area,
  3726.       USE bin INDEX bin_name   && and then open up BIN for use
  3727.        ENDIF
  3728.        SELECT bin              && Go to the BIN area
  3729.        SEEK screename           && Look for the specified screen
  3730.        IF FOUND()              && and show it if it exists
  3731.       RESTSCREEN (bin_top,bin_left,bin_bottom,bin_right,bin_screen)
  3732.        ENDIF
  3733.        SELECT (tempselect)         && return to the original work area
  3734.        RETURN .T.
  3735.  
  3736.        Example Usage:
  3737.       SHOWBINS("MAINMENU")
  3738.  
  3739.  
  3740.        TheDraw v4.50     Tips and Examples for Programmers          52
  3741.  
  3742.  
  3743.  
  3744.        PROGRAMMING IN CLIPPER (courtesy of Larry Stewart):
  3745.  
  3746.        The Clipper compiler uses the same format as TheDraw's BINARY save for
  3747.        it's "SAVE  SCREEN to  memvar" and  SAVESCREEN() functions.   The code
  3748.        example that follows shows how to retrieve a .BIN file  and display it
  3749.        in your compiled EXE program.
  3750.  
  3751.        FUNCTION SHOW_BIN
  3752.  
  3753.        * SYNTAX:    SHOWBIN( <name> [, <expN1>, <expN2>, <expN3>, <expN4> ] )
  3754.        * PURPOSE:   Display a full or partial screen from a .BIN file
  3755.        * ARGUMENTS: <name> contains the name of the .BIN file from TheDraw
  3756.        *        If <expN1> through <expN4> are not present, the routine
  3757.        *        assumes a full screen display will be restored.
  3758.        *        <expN1> is the top row for a partial screen
  3759.        *        <expN2> is the left column for the partial screen
  3760.        *        <expN3> is the bottom row for the partial screen
  3761.        *        <expN4> is the right column for the partial screen
  3762.  
  3763.        PARAMETER binfile,t,l,b,r
  3764.        PRIVATE m_buffer,m_handle,m_bytes,m_size
  3765.  
  3766.        IF ! ("." $ binfile)              && Does file have an extension?
  3767.       binfile = binfile+".BIN"           && No, default to .BIN
  3768.        ENDIF
  3769.  
  3770.        IF ! FILE(binfile)                && Does file exist on disk?
  3771.       RETURN .F.                  && No, return FAIL value.
  3772.        ENDIF
  3773.  
  3774.        IF PCOUNT() = 1               && Any border dimensions passed?
  3775.      m_buffer = SPACE(4000)          && If not, assume full screen.
  3776.      m_handle = FOPEN(binfile,0)
  3777.      m_bytes = FREAD(m_handle,@m_buffer,4000)
  3778.      FCLOSE(m_handle)
  3779.      IF m_bytes = 4000
  3780.        RESTORE SCREEN FROM m_buffer
  3781.        RETURN .T.
  3782.      ELSE
  3783.        RETURN .F.                 &&  Error  if .BIN file did
  3784.        not
  3785.      ENDIF                   && contain 4000 bytes.
  3786.        ENDIF
  3787.  
  3788.        IF PCOUNT() != 5              && Check for correct number of
  3789.      RETURN .F.                   && parameters.
  3790.        ENDIF
  3791.  
  3792.        m_size = 2*((r-l+1)*(b-t+1))          && Compute  number  of  bytes in
  3793.        m_buffer = SPACE(m_size)          && box.  Allocate space for it.
  3794.        m_handle = FOPEN(binfile,0)
  3795.        m_bytes = FREAD(m_handle,@m_buffer,m_size)
  3796.  
  3797.  
  3798.        TheDraw v4.50     Tips and Examples for Programmers          53
  3799.  
  3800.  
  3801.  
  3802.        FCLOSE (m_handle)
  3803.        IF m_bytes = m_size
  3804.      RESTSCREEN (t,l,b,r,m_buffer)
  3805.      RETURN .T.
  3806.        ELSE
  3807.      RETURN .F.                   &&  Error  if  file not big
  3808.        enough.
  3809.        ENDIF
  3810.  
  3811.        Please note:  When you save  a box  (binary block  save) with TheDraw,
  3812.        the screen  position and dimensions are not recorded in the .BIN file.
  3813.        The box may be  restored to  your screen  at any  position you choose;
  3814.        however, the  dimensions of  the box -cannot- be changed.  If you try,
  3815.        the box will appear distorted or  the above  routine will  generate an
  3816.        error.
  3817.  
  3818.        Examples:
  3819.  
  3820.       SHOWBIN ("EXAMPLE1")
  3821.          Displays the full screen image in the file EXAMPLE1.
  3822.  
  3823.       SHOWBIN ("EXAMPLE2",10,20,20,60)
  3824.          Displays  the  40  by  10  block  in EXAMPLE2 at screen position
  3825.          (20,10).
  3826.  
  3827.        ------------------------
  3828.        If you have additional ideas for this section, please send them in!
  3829.  
  3830.  
  3831.  
  3832.  
  3833.  
  3834.  
  3835.  
  3836.  
  3837.  
  3838.  
  3839.  
  3840.  
  3841.  
  3842.  
  3843.  
  3844.  
  3845.  
  3846.  
  3847.  
  3848.  
  3849.  
  3850.  
  3851.  
  3852.  
  3853.  
  3854.  
  3855.  
  3856.        TheDraw v4.50     Tips and Examples for Programmers          54
  3857.  
  3858.  
  3859.  
  3860.  
  3861.                    PULL DOWN MENU SYSTEM
  3862.  
  3863.  
  3864.        TheDraw can be fully controlled via the use of pull  down menus.   The
  3865.        menus greatly  simplify learning  TheDraw by  conveniently showing all
  3866.        related commands.  Each menu also displays the  corresponding shortcut
  3867.        keystrokes (such as ALT-L for files loading).
  3868.  
  3869.        The pull  down menus  are activated from command mode using one of two
  3870.        ways.  Pressing either the [ESC]  key on  the keyboard  or if  using a
  3871.        mouse the  RIGHT-most button.   The  following options bar will appear
  3872.        across the top of the screen:
  3873.  
  3874.        ZDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD?
  3875.        3 Files Global Options Screen foNts Animation   Color Toggles Help 3
  3876.        @DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDY
  3877.  
  3878.        Each  heading  is  briefly  described  below.    For  full  functional
  3879.        descriptions, please  refer to  the appropriate  section under THEDRAW
  3880.        KEYBOARD COMMANDS.
  3881.  
  3882.  
  3883.        The FILES Menu
  3884.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  3885.        The Files  pull-down  menu  offers  assorted  options  for  loading or
  3886.        viewing  existing  files,  deleting  old  files, and saving the screen
  3887.        image currently being edited.  When you load a file,  it is  read into
  3888.        the screen  edit area.   When done with a file, you can save it to any
  3889.        directory or file name.  In  addition,  from  this  pull-down  you can
  3890.        change to  another directory,  temporarily go  to a Dos Shell, or exit
  3891.        TheDraw completely.
  3892.  
  3893.  
  3894.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  3895.       FILES Global Options Screen foNts Animation   Color Toggles Help
  3896.       ZDDDDDDDDDDDDDDDDDDD?
  3897.       3 Load    Alt-L 3
  3898.       3 View    Alt-V 3
  3899.       3 Delete      Alt-K 3
  3900.       3 Change Dir  Alt-O 3
  3901.       3 Save    Alt-S 3
  3902.       3 Quit    Alt-X 3
  3903.       @DDDDDDDDDDDDDDDDDDDY
  3904.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  3905.  
  3906.  
  3907.  
  3908.  
  3909.  
  3910.  
  3911.  
  3912.  
  3913.  
  3914.        TheDraw v4.50           Pull Down Menu System            55
  3915.  
  3916.  
  3917.  
  3918.  
  3919.        LOAD - Load a File (ALT-L)
  3920.  
  3921.       Displays a  list of files under the current directory.  You can use
  3922.       DOS-style wildcard masks for  a listing  of specific  wanted files.
  3923.       Simply type  in the  name of the file to load or use the arrow keys
  3924.       to move the selector bar and press [ENTER].  Activate the pick list
  3925.       by pressing the TAB key or the RIGHT-most mouse button.
  3926.  
  3927.  
  3928.        VIEW - View a File (ALT-V)
  3929.  
  3930.       Similar  to  LOAD,  except  the  image  is loaded only temporarily.
  3931.       Pressing [ENTER] returns to command mode.
  3932.  
  3933.  
  3934.        DELETE - Delete a File (ALT-K)
  3935.  
  3936.       Allows files  to  be  deleted  from  within  TheDraw.    The screen
  3937.       operates  identically  to  the  LOAD  option above.  The difference
  3938.       being TheDraw will attempt to delete any file you select.
  3939.  
  3940.  
  3941.        CHANGE DIR - Change Working Directory (ALT-O)
  3942.  
  3943.       Displays all subdirectories in the current  directory.   Select the
  3944.       wanted  directory  by  typing  it  in  or  using the arrow keys and
  3945.       pressing [ENTER].  To change  to  another  drive,  simply  type the
  3946.       wanted drive followed by a colon.  ie: "C:"
  3947.  
  3948.  
  3949.        SAVE - Save Current Screen to a File (ALT-S)
  3950.  
  3951.       Saves current screen image to one of a variety of file formats.
  3952.  
  3953.  
  3954.        QUIT - Quit/Shell from TheDraw (ALT-X)
  3955.  
  3956.       Allows you  to either  exit TheDraw completely or leave the program
  3957.       just temporarily.  In both cases, you end up at the Dos prompt.
  3958.  
  3959.       To return to TheDraw from a Dos Shell, type EXIT.   This  is useful
  3960.       when you want to run a DOS command without quitting TheDraw.
  3961.  
  3962.  
  3963.  
  3964.  
  3965.  
  3966.  
  3967.  
  3968.  
  3969.  
  3970.  
  3971.  
  3972.        TheDraw v4.50           Pull Down Menu System            56
  3973.  
  3974.  
  3975.  
  3976.        The GLOBAL Menu
  3977.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  3978.        The global  menu offers  options that  affect the  entire edit screen.
  3979.        These options include  moving  and  copying  the  screen,  plus global
  3980.        screen fills and text operations.
  3981.  
  3982.  
  3983.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  3984.       Files GLOBAL Options Screen foNts Animation   Color Toggles Help
  3985.            ZDDDDDDDDDDDDDDD?
  3986.            3 Copy  Alt-G,C 3
  3987.            3 Move  Alt-G,M 3
  3988.            3 Fill  Alt-G,F 3
  3989.            3 Text  Alt-G,T 3
  3990.            @DDDDDDDDDDDDDDDY
  3991.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  3992.  
  3993.  
  3994.        COPY - Global Screen Copy (ALT-G,Copy)
  3995.  
  3996.       Copies the  current screen  page to another page.  You are prompted
  3997.       for which destination page you want.
  3998.  
  3999.  
  4000.        MOVE - Global Screen Movement (ALT-G,Move)
  4001.  
  4002.       Allows the rotating of the screen  around  its  borders.    Use the
  4003.       arrow keys or the mouse.  Press [ENTER] or the LEFT mouse button to
  4004.       save at the new location.
  4005.  
  4006.  
  4007.        FILL - Global Fill Screen (ALT-G,Fill)
  4008.  
  4009.       Fills the entire screen based  on  a  specified  sub-command.   The
  4010.       available  options  allow  just  the  color  attributes,  just  the
  4011.       characters, or both to be changed at once.
  4012.  
  4013.  
  4014.        TEXT - Global Text Operations (ALT-G,Text)
  4015.  
  4016.       Performs various  screen  text  operations.    Available suboptions
  4017.       are:   Draw Box,  Outline contents of screen, Center Justify screen
  4018.       contents, Left Justify, and Right Justify.
  4019.  
  4020.  
  4021.  
  4022.  
  4023.  
  4024.  
  4025.  
  4026.  
  4027.  
  4028.  
  4029.  
  4030.        TheDraw v4.50           Pull Down Menu System            57
  4031.  
  4032.  
  4033.  
  4034.        The OPTIONS Menu
  4035.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  4036.        The Options menu contains  facilities to  aid you  in the  layout of a
  4037.        screen design.  Commands affect things like the current character set,
  4038.        the Tab line setup,  and  the  on-screen  ruler.    A  screen painting
  4039.        function is available also.
  4040.  
  4041.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4042.       Files Global OPTIONS Screen foNts Animation   Color Toggles Help
  4043.               ZDDDDDDDDDDDDDDDDDDDDDD?
  4044.               3 Character Set  Alt-F 3
  4045.               3 Tab Setup      Alt-T 3
  4046.               3 Ruler          Alt-N 3
  4047.               3 Paint/Fill     Alt-P 3
  4048.               3DDDDDDDDDDDDDDDDDDDDDD3
  4049.               3 Setup Options        3
  4050.               @DDDDDDDDDDDDDDDDDDDDDDY
  4051.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4052.  
  4053.  
  4054.        CHARACTER SET - Display and Select Character Set (ALT-F)
  4055.  
  4056.       Shows  a  screen  containing  all  special  IBM  extended character
  4057.       symbols.  From this you can  select which  character set  you would
  4058.       like to work with.  Use the arrow keys or the mouse.  Press [ENTER]
  4059.       to save your choice.
  4060.  
  4061.  
  4062.        TAB SETUP - Adjust TheDraw Tab Stops (ALT-T)
  4063.  
  4064.       This command permits the setting of  tabs in  the editor (positions
  4065.       where the  [TAB] key  stops).  Initially the positions are at every
  4066.       tenth column.   Sub-commands  are available  for setting, clearing,
  4067.       and resetting tabs.
  4068.  
  4069.  
  4070.        RULER - On-Screen Ruler (ALT-N)
  4071.  
  4072.       Places a  pair of lines on the screen which intersect at the cursor
  4073.       position.  Move the ruler using  arrows or  the mouse.   [ENTER] or
  4074.       LEFT mouse  button saves  the new cursor position.  This command is
  4075.       useful for aligning items of the screen.  The ruler can be  held on
  4076.       the screen by selecting the [S]ticky option.
  4077.  
  4078.  
  4079.        PAINT/FILL - Enclosed Area Painter (ALT-P)
  4080.  
  4081.       Lets you  fill an enclosed area easily with characters and/or color
  4082.       attributes.  An area is defined  as  any  shape  formed  using line
  4083.       characters  (from  function  key  sets  1-4).  To use this command,
  4084.       position the cursor inside  the target  area before  activating the
  4085.       pull down menus.
  4086.  
  4087.  
  4088.        TheDraw v4.50           Pull Down Menu System            58
  4089.  
  4090.  
  4091.  
  4092.        SETUP OPTIONS - Default Setup Configuration (no separate key sequence)
  4093.  
  4094.       Provides access  to many  of the  configurable defaults while using
  4095.       TheDraw.  The following options may be changed:
  4096.  
  4097.       WORKSHEET WIDTH
  4098.          Choose how wide the  edit buffer  should be.   Either  80 or 160
  4099.          characters.
  4100.  
  4101.       WORKSHEET DEPTH
  4102.          Choose how  deep the  edit buffer should be.  Can be 23, 25, 43,
  4103.          or 50 lines.  Note the worksheet depth  cannot be  less than the
  4104.          video mode  in use.   For  example, if using 43 line EGA editing
  4105.          the worksheet depth may only be 43 or 50 lines.
  4106.  
  4107.          An exception is the 23  line  buffer,  available  only  with the
  4108.          standard 80x25  video mode.   Using  the 23 line buffer disables
  4109.          full screen editing and [CTRL-PRTSC] is ignored.
  4110.  
  4111.       VIDEO SCREEN MODE
  4112.          Choose one of the  following  video  edit  modes:    Standard 80
  4113.          character  by  25  lines  (80x25),  80x43 (if using EGA card) or
  4114.          80x50 (if using VGA card).
  4115.  
  4116.       MAINTAIN FILE DIRECTORY LISTING WILDCARDS
  4117.          Tells TheDraw to maintain  wildcards specified  in the directory
  4118.          listing  available  during  loading  (or deleting).  For example
  4119.          entering "*.BIN" to  see  all  binary  files  would  normally be
  4120.          forgotten, unless this option was turned on.
  4121.  
  4122.       DEFAULT SAVE SCREEN FORMAT
  4123.          Default file  format TheDraw  should select  when saving a file.
  4124.          Upon hitting ALT-S, you are present with many choices.  Pressing
  4125.          [ENTER] selects  the default  save screen  format.   If you find
  4126.          yourself using a specific  format  often,  changing  the default
  4127.          might make things easier.
  4128.  
  4129.  
  4130.       DEFAULT LOAD SCREEN FORMAT
  4131.          Similar  to  the  above,  but  used  during loading.  If you are
  4132.          working with a given file type  regularly, changing  the default
  4133.          load format  will saves  typing the file extension.  ie:  if set
  4134.          to Binary, "DEMO" becomes "DEMO.BIN" instead of "DEMO.ANS".
  4135.  
  4136.       CREATE BACKUP FILES
  4137.          Instructs TheDraw to generate  backup files  when saving.   If a
  4138.          file  already   exists,  TheDraw  renames  the  existing  file's
  4139.          extension to .BAK before continuing.
  4140.  
  4141.       SAVING FILENAME PICK LIST ON EXIT TO DOS
  4142.          Controls the saving of the filename pick list  to disk  on exit.
  4143.          When off, any accumulated filenames will be lost upon exit.
  4144.  
  4145.  
  4146.        TheDraw v4.50           Pull Down Menu System            59
  4147.  
  4148.  
  4149.  
  4150.       ASK TO SAVE CHANGES BEFORE EXITING
  4151.          TheDraw can  be made  to prompt  before allowing exit to Dos, if
  4152.          changes were made to the current page or any page.
  4153.  
  4154.       USE ALT-KEY HELP WINDOW
  4155.          Holding down the ALT key  for  about  three  seconds  displays a
  4156.          brief pop-up of available commands.  The feature may be disabled
  4157.          by toggling this option.
  4158.  
  4159.       BLANK SCREEN AFTER HOW MANY MINUTES
  4160.          TheDraw will blank the screen by writing blanks if no  action is
  4161.          taken for a specified time.  The time delay can be set from 1 to
  4162.          255 minutes, or turned off completely.
  4163.  
  4164.       DISK SWAP FILE PATHNAME
  4165.          Used when doing a Dos Shell (see ALT-X,S).  TheDraw  attempts to
  4166.          write all  its data  to expanded  memory or  a disk swap file to
  4167.          provide more room during  the shell.   If  insufficient expanded
  4168.          memory (EMM  or EMS) is available, the disk swap file is used at
  4169.          the specified path.   Leaving  this  option  blank  will prevent
  4170.          TheDraw from using a swap file.
  4171.  
  4172.       DEFAULT FILENAME EXTENSIONS
  4173.          The default filename extensions TheDraw uses when saving a file.
  4174.          Change to your preference.   For  instance,  if  saving  an Ansi
  4175.          file, TheDraw will change "DEMO" into "DEMO.ANS".
  4176.  
  4177.       DEFAULT ASM,PASCAL,C SAVE FORMAT
  4178.          Controls if  TheDraw defaults  to Normal, Ascii, or Crunching of
  4179.          screen data.  See ALT-S for more information.
  4180.  
  4181.       FILTER OUT SOLID SPACES ON ANSI/ASCII/ASM/PASCAL/C FILES
  4182.          Occasionally  solid  spaces   (entered   with   Shift-Space  key
  4183.          combination)  cause  prompts  with  other programs.  This filter
  4184.          will convert all solid  spaces  to  normal  spaces  in  the data
  4185.          written to disk (for Ansi, Ascii, Asm, Pascal, and C formats).
  4186.  
  4187.       FORCE CR/LF ON END OF LINES OF ASCII THAT ARE SCREEN WIDTH
  4188.          TheDraw is  faced with  a dilemma  when saving Ascii files.  The
  4189.          Dos TYPE command automatically wraps the cursor down a line when
  4190.          screen width  text (80 characters) is printed.  TheDraw normally
  4191.          handles this by not writing a  carriage return  sequence (CR/LF)
  4192.          for those  lines, as it is not needed.  However, reading such an
  4193.          Ascii file into other  programs can  cause problems.   Therefore
  4194.          this option  forces TheDraw to always write the CR/LF regardless
  4195.          of anything.  A simple, yet effective, solution.
  4196.  
  4197.       RESET COLORS TO WHITE ON END OF ANSI FILES
  4198.          Controls if TheDraw resets the Ansi colors to white after all is
  4199.          said and  done.   Generally of use in animation files, where the
  4200.          last character printed is flashing magenta on a green background
  4201.          (or some even worse color combination).
  4202.  
  4203.  
  4204.        TheDraw v4.50           Pull Down Menu System            60
  4205.  
  4206.  
  4207.  
  4208.       DEFAULT ANSI VIDEO PREPARATION
  4209.          Choose if  by default  TheDraw does nothing, homes the cursor to
  4210.          the upper  left  screen  corder,  or  clears  the  screen before
  4211.          displaying an Ansi file.
  4212.  
  4213.       DEFAULT ANSI SLOW DOWN FACTOR
  4214.          Choose how  many delay  elements TheDraw inserts by default into
  4215.          an  Ansi  file.    Normally  used  on  faster  machines  to make
  4216.          animation more appealing (ie: visible).
  4217.  
  4218.       MAXIMUM ANSI LINE LENGTH
  4219.          Controls the  maximum line  length TheDraw will permit a line of
  4220.          Ansi to become.   Some  programs  have  line  length limitations
  4221.          (such as bulletin board systems).  Since TheDraw can conceivable
  4222.          generate lines thousands of characters long,  this option allows
  4223.          you  to  compensate.    The  setting  can  be between 32 and 255
  4224.          characters, or set to Unlimited if no conflicts exist.
  4225.  
  4226.  
  4227.  
  4228.        The SCREEN Menu
  4229.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  4230.        Use items in the  Screen menu  to erase  a page  layer or  select some
  4231.        other page.  Other options allow you to insert, delete, or restore the
  4232.        contents of individual lines.
  4233.  
  4234.  
  4235.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4236.       Files Global Options SCREEN foNts Animation   Color Toggles Help
  4237.                   ZDDDDDDDDDDDDDDDDDDDDDD?
  4238.                   3 Clear Page     Alt-C 3
  4239.                   3 Select Page    Alt-E 3
  4240.                   3 Insert Line    Alt-I 3
  4241.                   3 Delete Line    Alt-Y 3
  4242.                   3 Insert Column        3
  4243.                   3 Delete Column        3
  4244.                   3 Restore/Undo   Alt-R 3
  4245.                   @DDDDDDDDDDDDDDDDDDDDDDY
  4246.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4247.  
  4248.  
  4249.        CLEAR PAGE - Clear the Current or All Page Layers (ALT-C)
  4250.  
  4251.       Erases the image in the current page.   You may  also opt  to erase
  4252.       all page  layers in  one fell  swoop for  a completely clean slate.
  4253.       You will be prompted  to save  the current  screen if  changes have
  4254.       been made.
  4255.  
  4256.  
  4257.  
  4258.  
  4259.  
  4260.  
  4261.  
  4262.        TheDraw v4.50           Pull Down Menu System            61
  4263.  
  4264.  
  4265.  
  4266.  
  4267.        SELECT PAGE - Choose new page layer to display or work on (ALT-E)
  4268.  
  4269.       Prompts for  a new  page layer  you wish  to edit.   Enter a number
  4270.       between one (1) and the number of available  pages.   The mouse can
  4271.       be used for selection by pressing the RIGHT button.
  4272.  
  4273.  
  4274.        INSERT LINE - Place blank line on screen (ALT-I)
  4275.  
  4276.       Inserts a  blank horizontal screen line at the position of the edit
  4277.       cursor.  This command can be reversed by utilizing the Restore/Undo
  4278.       command (ALT-R).
  4279.  
  4280.  
  4281.        DELETE LINE - Delete current line from screen (ALT-Y)
  4282.  
  4283.       Deletes  a  horizontal  screen  line  at  the  position of the edit
  4284.       cursor.  This command can be reversed by utilizing the Restore/Undo
  4285.       command (ALT-R).
  4286.  
  4287.  
  4288.        INSERT COLUMN - Place blank column on screen (ALT-<left arrow>)
  4289.  
  4290.       Inserts a  blank vertical screen column at the position of the edit
  4291.       cursor.  This command can be reversed by utilizing the Restore/Undo
  4292.       command (ALT-R).
  4293.  
  4294.  
  4295.        DELETE COLUMN - Delete current line from screen (ALT-<right arrow>)
  4296.  
  4297.       Deletes  a  vertical  screen  column  at  the  position of the edit
  4298.       cursor.  This command can be reversed by utilizing the Restore/Undo
  4299.       command (ALT-R).
  4300.  
  4301.  
  4302.        RESTORE/UNDO - Recover from unwanted changes on the screen (ALT-R)
  4303.  
  4304.       Undoes the  most recent  changes done  to the  screen.  The restore
  4305.       can "undo" block operations, line insertion or deletions, animation
  4306.       mode toggles,  global screen functions, font entry, and any changes
  4307.       to the current horizontal  line being  worked on.   Notes  with the
  4308.       latter item, once you leave the current horizontal line any changes
  4309.       are permanent.
  4310.  
  4311.  
  4312.  
  4313.  
  4314.  
  4315.  
  4316.  
  4317.  
  4318.  
  4319.  
  4320.        TheDraw v4.50           Pull Down Menu System            62
  4321.  
  4322.  
  4323.  
  4324.        The FONTS Menu
  4325.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  4326.        The Fonts pulldown menu supports choosing  various styles  and outline
  4327.        types.   The menu  shown below  is only  an example.  The actual fonts
  4328.        available can vary depending on your configuration.   Additional fonts
  4329.        may  be  present,  or  the  ones  shown  changed.   Ascii fonts can be
  4330.        extremely useful in sprucing  up a  display.   They are  excellent for
  4331.        title bars,  or whatever you desire.  Upon choosing an Ascii font, the
  4332.        word "FONT" will appear in the status line.
  4333.  
  4334.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4335.       Files Global Options Screen FONTS Animation   Color Toggles Help
  4336.                      ZDDDDDDDDDDDDDDDDDDDDD?
  4337.                      3 { Standard Font     3
  4338.                      3   outline Type      3
  4339.                      3DDDDDDDDDDDDDDDDDDDDD3
  4340.                      3   A: Outline      * 3
  4341.                      3   B: BigOutline   * 3
  4342.                      3   C: ThickOutline   3
  4343.                      3   D: Medium         3
  4344.                      3   E: Rounded        3
  4345.                      3   F: Raster         3
  4346.                      @DDDDDDDDDDDDDDDDDDDDDY
  4347.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4348.  
  4349.        STANDARD FONT:
  4350.  
  4351.        The standard font is  the normal  text lettering  associated with each
  4352.        key.   This is the default setting upon loading TheDraw.  The standard
  4353.        font is used for lettering seen in the help screens, the pulldown menu
  4354.        bar, status line, etc...
  4355.  
  4356.  
  4357.        OUTLINE TYPE - Choose a Font Outline:
  4358.  
  4359.        The outline  type option  is only  available when an outline formatted
  4360.        font  is  selected.    These  are  indicated  with  an  asterisk ("*")
  4361.        appearing  after  the  font  description.  Outline formatted fonts are
  4362.        special in that they  can appear  in different  styles.   There are 17
  4363.        various styles to choose from.  Some examples are:
  4364.  
  4365.               ZDDDDD?     ZDDDDD7     [_____[
  4366.               3     3     3     :     [     [
  4367.               3     3     3     :     [     [
  4368.               3     3     3     :     [     [
  4369.               @DDDDDY     TMMMMM<     _______
  4370.  
  4371.  
  4372.  
  4373.  
  4374.  
  4375.  
  4376.  
  4377.  
  4378.        TheDraw v4.50           Pull Down Menu System            63
  4379.  
  4380.  
  4381.  
  4382.  
  4383.        FONT SELECTION:
  4384.  
  4385.        Remaining options in the fonts submenu select specific fonts.  TheDraw
  4386.        supports the entire visible Ascii character set (#33 to #126).  ie:
  4387.  
  4388.           !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNO
  4389.           PQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
  4390.  
  4391.        Extended function key symbols are not currently supported.  To enter a
  4392.        given symbol  to the  edit screen, simply press the corresponding key.
  4393.        ie: for a letter "A", type the "A" key.  The symbol  will appear fully
  4394.        in the current color attributes.
  4395.  
  4396.        Not all  symbols are  necessarily available  in all fonts.  Some fonts
  4397.        may only provide the alphabet and numbers.  TheDraw beeps  if a wanted
  4398.        symbol is  not available.  The original fonts distributed with TheDraw
  4399.        do not contain any omissions.
  4400.  
  4401.        Once a font has  been selected,  the word  "FONT" replaces  the "Text"
  4402.        indicator on  the status  line as  a reminder.   In addition, once you
  4403.        start typing symbols the cursor becomes a full block.  So long  as the
  4404.        full block  cursor is  shown, you can use the BackSpace key to correct
  4405.        mistakes on  the  fly.    Press  ALT-R  (Restore/Undo)  to  remove any
  4406.        undesired key sequences completely.
  4407.  
  4408.  
  4409.  
  4410.        The ANIMATION Menu
  4411.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  4412.        Provides  various  facilities  for  working with the TheDraw animation
  4413.        system.  Options  allow  the  display  and  editing  of  the animation
  4414.        sequence.    The  registered  version  of  TheDraw  adds  Limiting and
  4415.        animation markers (as shown below).  Note this menu is  only available
  4416.        when TheDraw is actually in animation mode - otherwise it is disabled.
  4417.  
  4418.  
  4419.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4420.       Files Global Options Screen foNts ANIMATION   Color Toggles Help
  4421.                        ZDDDDDDDDDDDDDDDDDDDDDDDDDDD?
  4422.                        3 Screen Redraw       Alt-Q 3
  4423.                        3 Change Character    Alt-W 3
  4424.                        3 Erase Character     Alt-Z 3
  4425.                        3DDDDDDDDDDDDDDDDDDDDDDDDDDD3
  4426.                        3 Include Files     Alt-G,I 3
  4427.                        3 Limiting          Alt-G,L 3
  4428.                        3 marKer            Alt-G,K 3
  4429.                        3 Movement Storage  Alt-G,M 3
  4430.                        3 Rescan Animation  Alt-G,R 3
  4431.                        3 Pause Animation   Alt-G,P 3
  4432.                        @DDDDDDDDDDDDDDDDDDDDDDDDDDDY
  4433.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4434.  
  4435.  
  4436.        TheDraw v4.50           Pull Down Menu System            64
  4437.  
  4438.  
  4439.  
  4440.        SCREEN REDRAW - Display the Entire Animation Sequence (ALT-Q)
  4441.  
  4442.       Display the  animation sequence  as entered.  The command is useful
  4443.       for seeing how your work is progressing.   The speed  of the redraw
  4444.       may be  controlled by  specifying a  number between 0 (fastest) and
  4445.       255 (slowest).
  4446.  
  4447.  
  4448.        CHANGE CHARACTER - Edit a Character in Animation Sequence (ALT-W)
  4449.  
  4450.       Allows the editing of a mistyped  animation entry.   Animation mode
  4451.       differs  from  the  normal  edit  mode  in that simply overtyping a
  4452.       character does not replace it.  In animation mode, both entries are
  4453.       remembered -  the incorrect  character, plus  the wanted one.  This
  4454.       command can changes entries without adding unwanted new ones.
  4455.  
  4456.  
  4457.        ERASE CHARACTER - Delete a Character from Animation Sequence (ALT-Z)
  4458.  
  4459.       Deletes characters from the animation sequence.  As stated above in
  4460.       the CHANGE CHARACTER option, a character is not replaced or deleted
  4461.       in animation mode by overtyping.   To erase  something this command
  4462.       must  be  used.    Only  the  top-most character (the one currently
  4463.       visible) is removed; anything under it is left intact.
  4464.  
  4465.  
  4466.        INCLUDE FILES - Ansi/Ascii Include Files (ALT-J,Include)
  4467.  
  4468.       Allows text files created by  programs  other  than  TheDraw  to be
  4469.       inserted into  Animation sequences.   Particularly  useful for Ansi
  4470.       Music, BBS control codes, and often used sequences.
  4471.  
  4472.  
  4473.        LIMITING - Animation Sequence Editing (ALT-J,Limit) - Registered
  4474.  
  4475.       Limiting gives  total control  over the  animation sequence, making
  4476.       changes anywhere  trivial.   Normally all changes and additions are
  4477.       done on the end of the animation sequence.  By  using limiting, you
  4478.       can move the edit point to anywhere within the sequence.
  4479.  
  4480.       Once the limit point has been set, TheDraw operates only up to that
  4481.       point.  All deletions, additions and correcting are  done where the
  4482.       limit is  specified.  Everything in the sequence above the limit is
  4483.       protected, temporarily out of the way.
  4484.  
  4485.  
  4486.        MARKER - Animation Markers (ALT-J,marKer) - Registered
  4487.  
  4488.       Markers are  used  to  "mark"  or  "tag"  different  places  in the
  4489.       animation sequence  for later  reference.  Once set, markers can be
  4490.       used for quickly changing the animation limit position  (see above)
  4491.       and viewing specific portions of the animation sequence.
  4492.  
  4493.  
  4494.        TheDraw v4.50           Pull Down Menu System            65
  4495.  
  4496.  
  4497.  
  4498.        MOVEMENT STORAGE - Cursor Movement Storage (ALT-J,Movement)
  4499.  
  4500.       Controls whether  or not cursor movement is stored in the animation
  4501.       sequence.    Normally  only   characters  specifically   typed  are
  4502.       recorded.   With this  option turned  on however,  movements of the
  4503.       cursor are also saved (for example, using the mouse or arrow keys).
  4504.  
  4505.  
  4506.        RESCAN ANIMATION - Animation Screen Rescanning (ALT-J,Rescan)
  4507.  
  4508.       Creates a new animation  sequence using  the current  screen image.
  4509.       Any previous animation is lost (unless in animation limiting mode).
  4510.  
  4511.  
  4512.        PAUSE ANIMATION - Animation Pausing (ALT-J,Pause)
  4513.  
  4514.       Inserts  either  a  keyboard  or  timed  pause  into  the animation
  4515.       sequence.   Gives the opportunity to sit and reflect upon a certain
  4516.       presentation.  Note these pauses are  truly functional  only within
  4517.       TheDraw or  THEPP (The Presentation Program).  In Ansi files, timed
  4518.       pauses cannot be accurately saved.  Keyboard pauses  are flatly not
  4519.       possible with standard Ansi.
  4520.  
  4521.  
  4522.  
  4523.        The COLOR Menu
  4524.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  4525.        Use this menu to select edit colors.  Available options set the normal
  4526.        edit foreground and background  color,  the  default  background color
  4527.        used for  erasing areas,  and "picking up" colors currently used under
  4528.        the cursor.
  4529.  
  4530.  
  4531.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4532.       Files Global Options Screen foNts Animation   COLOR Toggles Help
  4533.                            ZDDDDDDDDDDDDDDDDDDDDD?
  4534.                            3 Fore/Back     Alt-A 3
  4535.                            3 Default       Alt-D 3
  4536.                            3 Under Cursor  Alt-U 3
  4537.                            @DDDDDDDDDDDDDDDDDDDDDY
  4538.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4539.  
  4540.  
  4541.        FORE/BACK - Change New Character Fore/Background Color (ALT-A)
  4542.  
  4543.       Displays a screen showing available colors.   Simply  select wanted
  4544.       color using  mouse, arrow keys, or directly typing the number.  See
  4545.       also CTRL-UP/DOWN.
  4546.  
  4547.  
  4548.  
  4549.  
  4550.  
  4551.  
  4552.        TheDraw v4.50           Pull Down Menu System            66
  4553.  
  4554.  
  4555.  
  4556.  
  4557.        DEFAULT - Change Default Erase Background Color (ALT-D)
  4558.  
  4559.       Similar to above, except  changes  default  color.    This  is used
  4560.       whenever  TheDraw  must  erase  an  area,  or otherwise deal with a
  4561.       "void" created by some operation.
  4562.  
  4563.  
  4564.        UNDER CURSOR - Use Colors Currently Under Cursor (ALT-U)
  4565.  
  4566.       Changes new character  fore/background  color  attributes  to those
  4567.       under the  edit cursor.   Very  useful for making quick updates and
  4568.       fixes.
  4569.  
  4570.  
  4571.  
  4572.        The TOGGLES Menu
  4573.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  4574.        The Toggles menu contains settings for controlling how  TheDraw works.
  4575.        The settings  affect things  like line  draw or sprite mode, animation
  4576.        mode toggling, character insert mode, and full screen editing.
  4577.  
  4578.  
  4579.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4580.       Files Global Options Screen foNts Animation   Color TOGGLES Help
  4581.                            ZDDDDDDDDDDDDDDDDDDDDDDDDD?
  4582.                            3 Draw Mode         Alt-M 3
  4583.                            3 Color Draw        Alt-- 3
  4584.                            3 Sprite Mode     Alt-E,T 3
  4585.                            3 Animation Mode    Alt-J 3
  4586.                            3 Insert Mode         Ins 3
  4587.                            3 Full Screen  Ctrl-PrtSc 3
  4588.                            @DDDDDDDDDDDDDDDDDDDDDDDDDY
  4589.       MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
  4590.  
  4591.  
  4592.        DRAW MODE - Line Draw Mode Toggle (ALT-M)
  4593.  
  4594.       Turns on/off line drawing mode.  Line drawing is accomplished using
  4595.       characters from function key sets 1 to 4.  In this mode, moving the
  4596.       cursor draws a line.  Useful  for creating  abstract shapes quickly
  4597.       and easily.
  4598.  
  4599.  
  4600.        COLOR DRAW - Color Draw Mode Toggle (ALT--)
  4601.  
  4602.       Turns on/off  color attribute drawing mode.  Color drawing involves
  4603.       simply changing characters to the current colors.  A manual  way of
  4604.       easily painting an area a given color.
  4605.  
  4606.  
  4607.  
  4608.  
  4609.  
  4610.        TheDraw v4.50           Pull Down Menu System            67
  4611.  
  4612.  
  4613.  
  4614.        SPRITE MODE - Sprite Editing Toggle (ALT-E,Toggle)
  4615.  
  4616.       Turns on/off  TheDraw Sprite  Editing Mode.   Please refer to ALT-E
  4617.       for discussion about this mode.
  4618.  
  4619.  
  4620.        ANIMATION MODE - Animation Mode Toggle (ALT-J)
  4621.  
  4622.       Changes TheDraw from Normal to Animation mode and visa versa.  When
  4623.       going from  Normal to  Animation mode,  a list  of available screen
  4624.       scanners are presented.  Refer to ALT-J for more details.
  4625.  
  4626.  
  4627.        INSERT MODE - Character Insert Mode Toggle (INS)
  4628.  
  4629.       Turns  on/off  character  insert  mode.    In  insert  mode, typing
  4630.       something bumps  everything to  the right  to make room for the new
  4631.       character.
  4632.  
  4633.  
  4634.        FULL SCREEN - Full Screen Editing Toggle (CTRL-PRTSC)
  4635.  
  4636.       Toggles using the entire screen for editing.   In full  screen edit
  4637.       mode, the  status line  along with  all indicators disappear.  This
  4638.       makes the full 80 by 25 screen available for editing.
  4639.  
  4640.  
  4641.  
  4642.  
  4643.  
  4644.  
  4645.  
  4646.  
  4647.  
  4648.  
  4649.  
  4650.  
  4651.  
  4652.  
  4653.  
  4654.  
  4655.  
  4656.  
  4657.  
  4658.  
  4659.  
  4660.  
  4661.  
  4662.  
  4663.  
  4664.  
  4665.  
  4666.  
  4667.  
  4668.        TheDraw v4.50           Pull Down Menu System            68
  4669.  
  4670.  
  4671.  
  4672.  
  4673.                  THEDRAW KEYBOARD COMMANDS
  4674.  
  4675.  
  4676.             ALT-A: CHANGE TEXT COLOR ATTRIBUTES
  4677.  
  4678.        This function allows you to change  the current  color attributes used
  4679.        by TheDraw.  These attributes "color" any new characters placed on the
  4680.        screen.  When you press ALT-A, the screen will change to a  display of
  4681.        the available and currently selected colors.
  4682.  
  4683.        The lower portion of the screen contains two prompts:
  4684.  
  4685.               Please Select Foreground Color (0-31):
  4686.               Please Select Background Color  (0-7):
  4687.  
  4688.        The cursor  will be  flashing immediately after the first prompt.  You
  4689.        can now change the current foreground color via the Up/Down arrow keys
  4690.        or by  directly typing  the number  associated with a foreground color
  4691.        (see table below).  Mouse users can position  the mouse  on the wanted
  4692.        color then press a button.
  4693.  
  4694.            0  Black              8  Dark Gray
  4695.            1  Blue               9  Light Blue
  4696.            2  Green             10  Light Green
  4697.            3  Cyan              11  Light Cyan
  4698.            4  Red               12  Light Red
  4699.            5  Magenta           13  Light Magenta
  4700.            6  Brown             14  Yellow
  4701.            7  Light Gray        15  White
  4702.  
  4703.        Characters can  be made to blink by selecting colors from the range 16
  4704.        through 31.  These match the above exactly, except they blink.
  4705.  
  4706.        After changing the foreground color  (or  leaving  it  alone)  you can
  4707.        either proceed  to the  background colors by pressing [ENTER] or press
  4708.        [ESC] to return to the edit screen.  The background  color is selected
  4709.        in a fashion similar to the above.  Allowed values are the first eight
  4710.        (0 through 7) colors.  There are no  background colors  available that
  4711.        allow background blinking.
  4712.  
  4713.        Pressing either [ENTER] or [ESC] at this point will return to the edit
  4714.        screen.
  4715.  
  4716.        Notes:   It is possible to  change  the  colors  without  using ALT-A.
  4717.         Please see the Ctrl-<Arrow Key> commands for more details
  4718.         (ie: Ctrl-<Up Arrow>, Ctrl-<Left Arrow>, etc...)
  4719.  
  4720.         Monochrome screen users will find background colors generally
  4721.         useless except when set to light gray (7) while using a black
  4722.         foreground color of 0 or 16 (blinking black).
  4723.  
  4724.  
  4725.  
  4726.        TheDraw v4.50         TheDraw Command Functions          69
  4727.  
  4728.  
  4729.  
  4730.  
  4731.                ALT-B: BLOCK ACTION COMMANDS
  4732.  
  4733.        The  Block  Action  Commands  provide  many facilities for editing the
  4734.        current screen and making  extensive changes.   The  following options
  4735.        are available:
  4736.  
  4737.       o  Move or Copy blocks of text.
  4738.       o  Fill in areas with characters, colors or both.
  4739.       o  Perform left, right or center text justification.
  4740.       o  Draw boxes or outline text with lines quickly and easily.
  4741.       o  Delete or simply Erase blocks of text.
  4742.       o  Load a block of screen area from a file on disk.
  4743.       o  Save just a piece of the current screen to disk.
  4744.       o  Rescan an area into animation sequence (animation mode only).
  4745.  
  4746.        The Block  Action Commands in TheDraw are one of the more useful tools
  4747.        available.  After pressing ALT-B, you will see the following prompt:
  4748.  
  4749.      Use [L]ast block or move to Upper-Left corner and press [SPACE].
  4750.  
  4751.        Press [L] to use  the last  block specified.   Otherwise  define a new
  4752.        block by  indicating the  upper-left and lower-right corners.  Use the
  4753.        arrow keys, PgUp, PgDn, Home or End keys on the  keyboard to  move the
  4754.        cursor to  the wanted  locations, then  press [SPACE]  after you reach
  4755.        each point.
  4756.  
  4757.        The current block is highlighted (colors inverted) to make it obvious.
  4758.        Once you define the upper-left corner of the block, moving above or to
  4759.        the left of it will not invert any text.  TheDraw will  stop the block
  4760.        marking if you press [SPACE] under this situation.
  4761.  
  4762.        Upon pressing  [SPACE] the  second time  (with an  inverted block) you
  4763.        will see the available block option commands.  The items  on the menu,
  4764.        and their significance are described on the following pages.
  4765.  
  4766.        -----
  4767.  
  4768.        Mouse users  may mark  a block  by pressing and holding the LEFT mouse
  4769.        button, moving the mouse  to  wanted  block  size,  and  releasing the
  4770.        button.  Block option commands as described below will then appear.
  4771.  
  4772.  
  4773.  
  4774.  
  4775.  
  4776.  
  4777.  
  4778.  
  4779.  
  4780.  
  4781.  
  4782.  
  4783.  
  4784.        TheDraw v4.50         TheDraw Command Functions          70
  4785.  
  4786.  
  4787.  
  4788.  
  4789.        COPY - Copy a Block
  4790.  
  4791.       Copies the marked block.  Use mouse or normal cursor movement keys,
  4792.       such as the arrow keys, Tab, PgUp, PgDn,  Home or  End to  move the
  4793.       block copy around.  Available sub-commands are:
  4794.  
  4795.         pagE   - Change to  a different page layer screen.  With this
  4796.              option you can choose to stamp (see below) copies of
  4797.              the block  on other  layers.  A small window appears
  4798.              with a prompt for  the  new  page  layer.    Enter a
  4799.              number or press [ESC] to abort.
  4800.  
  4801.         Toggle - Toggles  between  single  layer  and  sprite editing
  4802.              modes (see ALT-E for discussion on  sprite editing).
  4803.              In sprite  mode, any  text on a higher numbered page
  4804.              layer will appear "under" text on the current page.
  4805.  
  4806.         Stamp  - Makes a copy of the  current  block  at  the current
  4807.              position.    Additional  copies  can be made as many
  4808.              times as wished.
  4809.  
  4810.         Under  - Toggles between moving the block "above"  or "under"
  4811.              the current  page layer.   The  block copy starts in
  4812.              above mode.   In  above  mode  the  entire  block is
  4813.              visible,  no  matter  where  it  is moved.  In under
  4814.              mode, the block appears UNDER any other text  on the
  4815.              current page  layer.   It will only show through the
  4816.              black spaces on the current layer.
  4817.  
  4818.              Note:     Under  mode  also  allows  an  interesting
  4819.                    effect.    If  you are sprite editing (see
  4820.                    ALT-E command) the  block  will  appear to
  4821.                    move -between- the current layer and those
  4822.                    below it.
  4823.  
  4824.         [ENTER]  Saves all changes made to all layers.
  4825.  
  4826.         [ESC]    Aborts and removes all changes made to all layers.
  4827.  
  4828.  
  4829.  
  4830.        MOVE - Move a Block
  4831.  
  4832.       Moving a block operates identically to copying a block (see above).
  4833.       The  only  difference  is  the  block is "cut" out from the current
  4834.       screen, leaving a hole behind.  This hole is filled with spaces and
  4835.       the  current  default  background  color  (see  ALT-D regarding the
  4836.       default background color).  All sub-commands  are identical  to the
  4837.       block copy  described above.  Under animation, the exact pattern of
  4838.       a the shifted animation sequence is relocated.
  4839.  
  4840.  
  4841.  
  4842.        TheDraw v4.50         TheDraw Command Functions          71
  4843.  
  4844.  
  4845.  
  4846.  
  4847.        FILL - Fill a Block
  4848.  
  4849.       Fills the marked block  based  on  a  specified  sub-command.   The
  4850.       available options are listed below:
  4851.  
  4852.         Attribute - Changes  both  foreground  and  background  color
  4853.                 attributes  to  current  values  shown  in status
  4854.                 line.
  4855.  
  4856.         Fore      - Changes just  the foreground  color attributes to
  4857.                 current values shown in status line.
  4858.  
  4859.         bacK      - Changes just  the background  color attributes to
  4860.                 current values shown in status line.
  4861.  
  4862.         Use       - Changes  both  foreground  and  background  color
  4863.                 attributes to those  under  the  CURSOR  when you
  4864.                 first pressed  ALT-B.  This is not the upper-left
  4865.                 block corner, but the position on  the screen the
  4866.                 cursor  was  sitting  when  block  commands  were
  4867.                 first selected.
  4868.  
  4869.         Character - Prompts  for  a  keyboard  character  or  special
  4870.                 function set  symbol (see  ALT-F command).  Solid
  4871.                 spaces can be used by pressing  Shift-Space.  The
  4872.                 block  is  then  overwritten  using  whatever was
  4873.                 selected.  The color  attributes at  a given spot
  4874.                 are not changed, just the character there.
  4875.  
  4876.         Both      - Combines  both  the  Attribute and Character fill
  4877.                 operations  described  above.    A  character  is
  4878.                 prompted  for,  then  everything  in the block is
  4879.                 overwritten using that character with the current
  4880.                 color attributes from the status line.
  4881.  
  4882.  
  4883.       These  commands  offer  much  flexibility;  however,  nothing  will
  4884.       satisfy everyone.   For  this reason,  the "last  block" option was
  4885.       added.  To perform multiple fill operations on a given block is now
  4886.       done quickly and easily.
  4887.  
  4888.       ----
  4889.  
  4890.       Note: In animation mode, the Attribute, Fore, bacK, and Use options
  4891.         actually change  characters in the animation sequence (no new
  4892.         characters are added).  Use of  the Character  or Both option
  4893.         in Animator  mode however  WILL add  additional characters to
  4894.         the animation sequence.
  4895.  
  4896.  
  4897.  
  4898.  
  4899.  
  4900.        TheDraw v4.50         TheDraw Command Functions          72
  4901.  
  4902.  
  4903.  
  4904.  
  4905.        TEXT - Block Text Operations
  4906.  
  4907.       Performs various text operations on the specified block.  Available
  4908.       sub-commands are:
  4909.  
  4910.         Box     - Draws a  box using  the current  function set.  The
  4911.               box border is defined by  the  edges  of  the block
  4912.               area.   The contents of the box are left unchanged,
  4913.               however anything where the  box lines  are actually
  4914.               drawn will be overwritten.
  4915.  
  4916.         Outline - Operates  similar  to  the  Box command, except the
  4917.               contents of the block are examined first.   The box
  4918.               border  will  be  adjusted  to just accommodate all
  4919.               words either fully or  partially  contained  by the
  4920.               block area.
  4921.  
  4922.               For  instance,  assume  just  one  character in the
  4923.               center of the  edit  screen.    You  then  mark the
  4924.               entire screen  as a block, and select text outline.
  4925.               The result would only be  a  small  box  around the
  4926.               character.
  4927.  
  4928.               Going the  other way,  if you block marked just the
  4929.               center letter of a long word  (with no  spaces) the
  4930.               block edges  would expand to accommodate the entire
  4931.               word.   Note: the expansion is only  done for words
  4932.               INITIALLY part  of the  block.  Any words the block
  4933.               expansion happens to go  over are  ignored, and are
  4934.               not considered by Text Outline.
  4935.  
  4936.         Center  - Text contained  or partially contained by the block
  4937.               is centered.  The  way this  is done  is similar to
  4938.               the  text  Outline  described  above.  Each line of
  4939.               characters considered  is expanded  to just enclose
  4940.               all words.  The string of words is then centered on
  4941.               the position of the block.
  4942.  
  4943.         Left    - Text contained or partially  contained is  moved to
  4944.               the  left  edge  of  the block.  Block expansion is
  4945.               used so words are not split apart.
  4946.  
  4947.         Right   - Identical to  Left  except  contained  or partially
  4948.               contained text  is moved  to the  right edge of the
  4949.               block.
  4950.  
  4951.  
  4952.       These  commands  are  useful  making  menu  displays,  short memos,
  4953.       letters, etc...
  4954.  
  4955.  
  4956.  
  4957.  
  4958.        TheDraw v4.50         TheDraw Command Functions          73
  4959.  
  4960.  
  4961.  
  4962.  
  4963.        DELETE - Delete a Block
  4964.  
  4965.       This command is fairly intuitive.  The block is completely removed.
  4966.       Anything on the edit screen to the right of the block is shift over
  4967.       to fill  in the space.  The area previously occupied by the shifted
  4968.       text is erased using spaces and  the default  background color (see
  4969.       the ALT-D).
  4970.  
  4971.  
  4972.        ERASE - Erase a Block
  4973.  
  4974.       Erases the  block, without  changing anything  other portion of the
  4975.       edit screen.  The block is  erased  using  spaces  and  the default
  4976.       background color (see ALT-D).
  4977.  
  4978.  
  4979.        REPLACE - Block Character/Color Replace
  4980.  
  4981.       Performs  character  and/or  color  attribute  replacement on block
  4982.       based on specified sub-command.  The pattern is  whatever was under
  4983.       the  cursor  when  ALT-G  was  selected.  The available options are
  4984.       shown below (these are similar to the Fill options):
  4985.  
  4986.         Attribute -   Searches both foreground  and  background color
  4987.                   attributes,  then  replaces  all  matches  with
  4988.                   current values shown on status line.
  4989.  
  4990.         Fore       -  Searches and replaces just the foreground color
  4991.                   attributes with current value.
  4992.  
  4993.         bacK       -  Searches and replaces just the background color
  4994.                   attributes with current value.
  4995.  
  4996.         Character -   Prompts for  a  keyboard  character  or special
  4997.                   function set symbol (see ALT-F command).  Solid
  4998.                   spaces can  be  used  by  pressing Shift-Space.
  4999.                   The block  is then  searched and all characters
  5000.                   matching the pattern are replaced with  the new
  5001.                   selection.    Color  attributes at any position
  5002.                   are not changed, just character values.
  5003.  
  5004.         Both       -  Combines  both  the  Attribute   and  Character
  5005.                   operations  described  above.    A  replacement
  5006.                   character is  prompted for,  then everything on
  5007.                   the screen matching the pattern (both character
  5008.                   and fore/back attributes) is  replaced with the
  5009.                   character and current colors.
  5010.  
  5011.  
  5012.  
  5013.  
  5014.  
  5015.  
  5016.        TheDraw v4.50         TheDraw Command Functions          74
  5017.  
  5018.  
  5019.  
  5020.        The following  commands are  available only  in normal (non-animation)
  5021.        screen edit mode:
  5022.  
  5023.        LOAD - Load a Block
  5024.  
  5025.       Imports a block of data from another screen saved on disk.  You are
  5026.       first prompted  for the  import filespec  (see ALT-L for details on
  5027.       loading files).
  5028.  
  5029.       The import image is then loaded  onto the  screen, and  an inverted
  5030.       area of  the defined  block size  appears.  Move this inverted area
  5031.       using arrow keys, PgUp, PgDn, Home  or End  to the  wanted portion.
  5032.       Press [ENTER]  to save  a copy of the inverted area in the original
  5033.       edit screen.  The rest of the import image is discarded.
  5034.  
  5035.  
  5036.        SAVE - Save a Block
  5037.  
  5038.       Operates almost identically to the normal save screen  command (see
  5039.       ALT-S  for  information  on  saving  edit screens).  The difference
  5040.       being the save is restricted to the defined block.
  5041.  
  5042.  
  5043.        The following command is available only in animation edit mode:
  5044.  
  5045.        RESCAN - Rescan a Block
  5046.  
  5047.       Operates just like the  ALT-J animator  rescan option,  except only
  5048.       the  marked  block  is  rescanned.   The marked block area is first
  5049.       erased from the animation sequence, then the block is rescanned and
  5050.       added onto the end of sequence.
  5051.  
  5052.  
  5053.  
  5054.  
  5055.                 ALT-C: CLEAR CURRENT SCREEN
  5056.  
  5057.        The operation  of this command should be apparent.  Once selected, the
  5058.        following prompt appears:
  5059.  
  5060.       Do you want to CLEAR this Page or All Page Layers? (Yes/No/All)
  5061.  
  5062.        Selecting [Y]es or pressing [ENTER] will clear the  current page layer
  5063.        and nothing  else.   Selecting [N]o  or pressing  [ESC] will abort the
  5064.        command.  Selecting  [A]ll  will  clear  ALL  page  layers.    You are
  5065.        prompted to verify this request before continuing.  Useful if you want
  5066.        a completely clean slate.
  5067.  
  5068.        The clearing of a given page  layer is  done by  using spaces  and the
  5069.        default  background  color  (see  ALT-D).    The  clear  screen can be
  5070.        reversed using the Restore/Undo command (see ALT-R).
  5071.  
  5072.  
  5073.  
  5074.        TheDraw v4.50         TheDraw Command Functions          75
  5075.  
  5076.  
  5077.  
  5078.  
  5079.             ALT-D: SET DEFAULT BACKGROUND COLOR
  5080.  
  5081.        The default  background color  is used  whenever TheDraw  must erase a
  5082.        portion of the screen.  Examples of commands where this is used are:
  5083.  
  5084.       o  Clear Current Screen.
  5085.       o  Block Delete, Erase, and Move.
  5086.       o  Text Operations which move words.
  5087.       o  Use of the Backspace or Delete keys to remove characters.
  5088.       o  Inserting or Deleting of lines or columns.
  5089.  
  5090.        All  these  commands  "clear"  an  area  of  the  screen in one way or
  5091.        another.  TheDraw does  this using  spaces and  the default background
  5092.        color specified.
  5093.  
  5094.        When you  select ALT-D,  the screen  changes to a display of available
  5095.        colors and the current default background color.  In the lower portion
  5096.        of the screen is the prompt:
  5097.  
  5098.                Please Select Background Color (0-7):
  5099.  
  5100.        The  cursor  will  be  flashing  after this prompt.  Select the wanted
  5101.        default background  color via  the Up/Down  arrow keys  or by directly
  5102.        entering the  number associated  with a color (see ALT-A for available
  5103.        colors).  Mouse users simply position  the mouse  on the  wanted color
  5104.        and press a button.
  5105.  
  5106.        Press [ENTER] or [ESC] to return to the edit screen.
  5107.  
  5108.  
  5109.  
  5110.  
  5111.               ALT-E: CHANGE PAGE LAYER/TOGGLE SPRITES
  5112.  
  5113.        The change  page layer  command allows  you to select a different page
  5114.        layer for editing.   Up to  eight simultaneous  layers can  be used at
  5115.        once, in  either normal  or animation  modes.  With this facility, you
  5116.        can load several images, copy/exchange parts and do much more.
  5117.  
  5118.        After pressing ALT-E, the following prompt appears:
  5119.  
  5120.          Display Page Layer (1-8), Toggle Single/Layers, or [ESC]?
  5121.  
  5122.        The number of available  layers (8  here) will  vary depending  on how
  5123.        TheDraw has been configured.  To select a different page layer, simply
  5124.        press the number.   The second  option, [T]oggle  Single/Layers, is to
  5125.        toggle  the  sprite  editing  facility  of  TheDraw.    Sprite mode is
  5126.        indicated by the word  "Page" or  "Anim" appearing  in capital letters
  5127.        on the status line (ie: PAGE).
  5128.  
  5129.  
  5130.  
  5131.  
  5132.        TheDraw v4.50         TheDraw Command Functions          76
  5133.  
  5134.  
  5135.  
  5136.  
  5137.        Sprite editing  allows you  to see everything "underneath" the current
  5138.        page layer.  Imagine several sheets  of glass,  stacked on  top of one
  5139.        another.    If  you  look  down  from  the top-most sheet, you can see
  5140.        anything placed on a piece of glass lower down.
  5141.  
  5142.        The sprite  editing mode  of TheDraw  is akin  to the  layers of glass
  5143.        described above.   In  this case,  layer one  is the top-most sheet of
  5144.        glass.  Page layer eight (8) is the bottom-most sheet of glass.  ie:
  5145.  
  5146.                        ZDDDDDDDD?
  5147.                       .3      . 3
  5148.                     .  3    .   3 Bottom-Most Layer
  5149.                  ZDDDDDDDD?    83
  5150.                    ZDADDDDDD? 3DDDDDY
  5151.                  ZDADDDDDD? 3 3   .
  5152.                  3        3 333 .
  5153.           Top-Most Layer 3        32CDY
  5154.                  3       1CDY
  5155.                  @DDDDDDDDY
  5156.  
  5157.        Naturally, an  object  or  character  closer  to  the  top  will cover
  5158.        anything under  it.  In TheDraw, anything other than a non-solid black
  5159.        space will conceal the contents of a lower layer (see  SHIFT-SPACE for
  5160.        information on solid spaces).
  5161.  
  5162.        Another useful  feature about  sprite editing is only the current page
  5163.        layer may be changed.  Nothing you do will alter a layer  below (short
  5164.        of clearing  all layers),  even though  you can see its contents.  The
  5165.        current layer can be globally moved,  have lines  inserted or deleted,
  5166.        etc...    Anything  lower  down  is  protected unless you specifically
  5167.        change to that page layer for editing.
  5168.  
  5169.        The question than now comes to mind is:  What can be done with it?
  5170.        Imagine you have a  screen  made  of  several  distinct  parts,  say a
  5171.        backdrop with  figures on it.  Now a figure must be moved to make room
  5172.        for something  else.   Unless "block"  shaped, the  block move command
  5173.        (ALT-B) is  tedious to  use.  For something tree shaped, an easier way
  5174.        is desired.
  5175.  
  5176.        Using sprite editing each figure could  have its  own layer,  with the
  5177.        backdrop  placed  on  the  bottom-most  page.    To move a figure, you
  5178.        merely switch to its layer and  use  the  global  screen  move command
  5179.        (ALT-G,M).    Nothing  could  be  simpler.   To see the result of your
  5180.        change, switch back to the top-most layer.
  5181.  
  5182.        Menu making is made easier with sprites also.  Put  together the basic
  5183.        outline (lines,  boxes, etc...)  on one page layer, then switch to one
  5184.        higher up for the text.  If you do not like the  initial text, erasing
  5185.        it will  not harm  the outline.   There are endless more possibilities
  5186.        waiting to be discovered.
  5187.  
  5188.  
  5189.  
  5190.        TheDraw v4.50         TheDraw Command Functions          77
  5191.  
  5192.  
  5193.  
  5194.                ALT-F: VIEW FUNCTION KEY SETS
  5195.  
  5196.        This command presents a display of the 150 special extended characters
  5197.        supported by TheDraw.  These characters are stored in fifteen separate
  5198.        "function key sets".  The current  set  is  displayed  on  the TheDraw
  5199.        status line.
  5200.  
  5201.        Selecting  function  key  sets  within  this display is done using the
  5202.        Up/Down arrow keys or  using the  mouse.   Press [ENTER]  or click the
  5203.        mouse button when satisfied.
  5204.  
  5205.        The  actual  characters  are  accessed  using  the  function  keys  by
  5206.        themselves.  If function key set 7 was  selected, pressing  [F2] would
  5207.        display the second character in that set (a smiley face).
  5208.  
  5209.        ----
  5210.  
  5211.        An alternate  means for  selecting function key sets is available from
  5212.        the normal edit screen.  To use function key sets  1 to  10, press ALT
  5213.        followed by  a function  key 1  to 10.  To use function key sets 11 to
  5214.        15, press CTRL followed by a function key 1 to 5.  ie:
  5215.  
  5216.                ALT-F7 will select function key set 7
  5217.               CTRL-F4 will select function key set 14
  5218.  
  5219.        Note:    Appendix  C  contains  a  list  of   all  special  characters
  5220.         supported  by  the  IBM-PC  extended character set in numeric
  5221.         order.    To  access  these  characters  -without-  using the
  5222.         function  key  sets,  press  and  hold down the ALT key.  Now
  5223.         using the numeric keypad on the side of the keyboard, type in
  5224.         the number  associated with the wanted character.  Once done,
  5225.         release the ALT key.  The  character will  then appear.   ie:
  5226.         press and  hold ALT.   Now type 65 on the numeric keypad, and
  5227.         release ALT.  The letter "A" will appear.
  5228.  
  5229.  
  5230.  
  5231.                   ALT-G: GLOBAL COMMANDS
  5232.  
  5233.        The global commands offer many facilities  for doing  "global" changes
  5234.        to the  entire screen.  All of these commands could be duplicated with
  5235.        block  operations;  they  exist   for  convenience.     The  following
  5236.        selections are available:
  5237.  
  5238.       o  Copy the current screen to another page layer.
  5239.       o  Move/Rotate the current screen around its borders.
  5240.       o  Globally fill the screen with colors and/or characters.
  5241.       o  Perform text operations globally on the screen.
  5242.       o  Globally replace a character or color with something else.
  5243.  
  5244.        After  pressing  ALT-G  the  available  commands are listed.  The menu
  5245.        items are described on the following pages.
  5246.  
  5247.  
  5248.        TheDraw v4.50         TheDraw Command Functions          78
  5249.  
  5250.  
  5251.  
  5252.  
  5253.        COPY - Copy Screen
  5254.  
  5255.       The command first prompts  for the  destination page.   The current
  5256.       screen is then copied to the specified page layer.
  5257.  
  5258.       In  animation  mode,  this  deletes  everything  on the destination
  5259.       layer.  The current screen is then copied item by item to it.
  5260.  
  5261.  
  5262.        MOVE - Move/Rotate Screen
  5263.  
  5264.       Moves the entire screen around its borders.  Use the arrows keys to
  5265.       rotate the  screen.  Press [ENTER] when satisfied or [ESC] to leave
  5266.       the screen as it was.   ie: moving the screen upwards will "rotate"
  5267.       the line at the top of the screen down to the bottom of the screen.
  5268.  
  5269.  
  5270.        FILL - Fill Screen
  5271.  
  5272.       Fills  the  entire  screen  based  on a specified sub-command.  The
  5273.       available options are listed  below  (these  are  identical  to the
  5274.       block fill commands):
  5275.  
  5276.         Attribute - Changes  both  foreground  and  background  color
  5277.                 attributes  to  current  values  shown  in status
  5278.                 line.
  5279.  
  5280.         Fore      - Changes just  the foreground  color attributes to
  5281.                 current values shown in status line.
  5282.  
  5283.         bacK      - Changes just  the background  color attributes to
  5284.                 current values shown in status line.
  5285.  
  5286.         Use       - Changes  both  foreground  and  background  color
  5287.                 attributes to those  under  the  CURSOR  when you
  5288.                 first pressed ALT-G.  This is the position on the
  5289.                 screen  the   cursor  was   sitting  when  global
  5290.                 commands were selected.
  5291.  
  5292.         Character - Prompts  for  a  keyboard  character  or  special
  5293.                 function set symbol (see  ALT-F command).   Solid
  5294.                 spaces can  be used by pressing Shift-Space.  The
  5295.                 screen is  then  overwritten  using  whatever was
  5296.                 selected.    The  color  attributes  at any given
  5297.                 position are not changed,  just the  character at
  5298.                 that position.
  5299.  
  5300.  
  5301.  
  5302.  
  5303.  
  5304.  
  5305.  
  5306.        TheDraw v4.50         TheDraw Command Functions          79
  5307.  
  5308.  
  5309.  
  5310.  
  5311.         Both      - Combines  both  the  Attribute and Character fill
  5312.                 operations  described  above.    A  character  is
  5313.                 prompted  for,  then  everything on the screen is
  5314.                 overwritten using that character with the current
  5315.                 color attributes from the status line.
  5316.  
  5317.  
  5318.       In animation  mode, the Attribute, Fore, bacK, and Use options only
  5319.       alter characters already in  the animation  sequence (no additional
  5320.       characters are  added).  The Character or Both options however WILL
  5321.       add additional characters to the animation sequence.
  5322.  
  5323.  
  5324.        TEXT - Global Text Operations
  5325.  
  5326.       Performs various text operations on  the  screen.    Available sub-
  5327.       commands are:
  5328.  
  5329.         Box     - Draws a  box using  the current  function set.  The
  5330.               box border will be the defined by the  edges of the
  5331.               screen.   The inside  of the box is left unchanged,
  5332.               however anything where the  box lines  are actually
  5333.               drawn will be overwritten.
  5334.  
  5335.         Outline - Operates  similar  to  the Box command, however the
  5336.               contents of the block are examined first.   The box
  5337.               border  will  be  adjusted  to just accommodate all
  5338.               words contained by the screen.
  5339.  
  5340.               For instance, assume you just had  one character in
  5341.               the center of the edit screen.  The result of using
  5342.               global text  outline  would  only  be  a  small box
  5343.               around the character.
  5344.  
  5345.         Center  - Text in  the screen  is centered.   The way this is
  5346.               done  is  similar  to  the  text  Outline described
  5347.               above.    Each  line  of  characters  considered is
  5348.               reduced to just enclose all words.   The  string of
  5349.               words is then centered in the screen.
  5350.  
  5351.         Left    - Text is moved to the left edge of the screen.
  5352.  
  5353.         Right   - Identical to Left except text is moved to the right
  5354.               edge of the screen.
  5355.  
  5356.  
  5357.  
  5358.  
  5359.  
  5360.  
  5361.  
  5362.  
  5363.  
  5364.        TheDraw v4.50         TheDraw Command Functions          80
  5365.  
  5366.  
  5367.  
  5368.  
  5369.        REPLACE - Global Character/Color Replace
  5370.  
  5371.       Performs character and/or  color  attribute  replacement  on entire
  5372.       screen based on specified sub-command.  The pattern is whatever was
  5373.       under the cursor when  ALT-G was  selected.   The available options
  5374.       are shown below (these are similar to the Fill options):
  5375.  
  5376.         Attribute -   Searches  both  foreground and background color
  5377.                   attributes,  then  replaces  all  matches  with
  5378.                   current values shown on status line.
  5379.  
  5380.         Fore       -  Searches and replaces just the foreground color
  5381.                   attributes with current value.
  5382.  
  5383.         bacK       -  Searches and replaces just the background color
  5384.                   attributes with current value.
  5385.  
  5386.         Character -   Prompts  for  a  keyboard  character or special
  5387.                   function set symbol (see ALT-F command).  Solid
  5388.                   spaces  can  be  used  by pressing Shift-Space.
  5389.                   The screen is then searched and  all characters
  5390.                   matching the  pattern are replaced with the new
  5391.                   selection.  Color  attributes  at  any position
  5392.                   are not changed, just character values.
  5393.  
  5394.         Both       -  Combines  both   the  Attribute  and  Character
  5395.                   operations  described  above.    A  replacement
  5396.                   character is  prompted for,  then everything on
  5397.                   the screen matching the pattern (both character
  5398.                   and fore/back  attributes) is replaced with the
  5399.                   character and current colors.
  5400.  
  5401.       These commands operate similar to the block action text commands.
  5402.  
  5403.  
  5404.  
  5405.  
  5406.               ALT-H: DISPLAY HELP INFORMATION
  5407.  
  5408.        The help  screens provide  a quick  reminder for  the various commands
  5409.        supported  by  TheDraw.    The  three  screens  briefly  describe most
  5410.        available functions.
  5411.  
  5412.        The registered  version of  TheDraw supports  context sensitive pop-up
  5413.        help  for  the  ENTIRE  program.    Typing  ALT-H at any position will
  5414.        display specific help on what you are doing.  Try it, you'll like it!
  5415.  
  5416.  
  5417.  
  5418.  
  5419.  
  5420.  
  5421.  
  5422.        TheDraw v4.50         TheDraw Command Functions          81
  5423.  
  5424.  
  5425.  
  5426.                    ALT-I: INSERT A LINE
  5427.  
  5428.        Inserts a blank horizontal line at the current position.   The current
  5429.        line and  all those  below it  are shifted  down.   The bottom line is
  5430.        lost.  The blank line is filled with spaces colored  using the default
  5431.        background color.  This command can be reversed using the Restore/Undo
  5432.        command (ALT-R).
  5433.  
  5434.  
  5435.  
  5436.                   ALT-J: ANIMATOR OPTIONS
  5437.  
  5438.        The Animator Options command  operates differently  depending on which
  5439.        mode you are currently in (normal or animator).
  5440.  
  5441.  
  5442.        ALT-J FROM NORMAL/STATIC MODE
  5443.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  5444.        When in  normal mode,  selecting ALT-J will put TheDraw into animation
  5445.        mode.  To convert the existing normal screen images (static images) to
  5446.        animation entries,  a scan "method" or pattern must be specified.  The
  5447.        particular pattern used tells TheDraw how  to read  your static images
  5448.        for  display.    Scan  patterns  can  be  altered using two adjustment
  5449.        toggles.  These are:
  5450.  
  5451.  
  5452.       REVERSE   Reverse entire  scan  pattern.    Last  character scanned
  5453.             becomes the first displayed in the animation sequence.
  5454.  
  5455.       FLIP      Vertically exchanges  scanning of  the screen scan top to
  5456.             bottom.  For example  the TOP  scanner below  scan across
  5457.             the screen  (left to  right) starting on the bottom line,
  5458.             moving upwards.
  5459.  
  5460.  
  5461.        There  are  fourteen  different  generic  scan   methods/patterns  are
  5462.        available.   By combining these with the above adjust toggles, over 50
  5463.        patterns are possible:
  5464.  
  5465.  
  5466.        TOP - Scan Top to Bottom
  5467.  
  5468.       The static page layers are scanned from their  upper-left to lower-
  5469.       right corners.   The  scan goes  across the screen (left to right).
  5470.       The next line down is then scanned, and so on.
  5471.  
  5472.  
  5473.        LEFT - Scan Left to Right
  5474.  
  5475.       Similar to TOP, except  the  scan  goes  down  the  screen  (top to
  5476.       bottom).  The next column over is then scanned, and so on.
  5477.  
  5478.  
  5479.  
  5480.        TheDraw v4.50         TheDraw Command Functions          82
  5481.  
  5482.  
  5483.  
  5484.  
  5485.        CLOCK - Clock Arm Scan
  5486.  
  5487.       Scans in  clockwise direction  from center of screen to border edge
  5488.       around screen.  Appears somewhat like a growing pie-slice.
  5489.  
  5490.  
  5491.        CIRCLES - Circular Ring Scan
  5492.  
  5493.       Scans image in ever growing circles from center  of screen outward.
  5494.       ie:   small circle,  then slightly larger encompassing circle, then
  5495.       slightly larger again, etc...
  5496.  
  5497.  
  5498.        CHECKERBOARD - Checkerboard Effect Scan
  5499.  
  5500.       Scans alternating squares on  first  pass  creating  a checkerboard
  5501.       appearance, then fills in all the gaps on the second pass.
  5502.  
  5503.  
  5504.        ANGLE - Angle Scan
  5505.  
  5506.       Scans  each  static  page  layer  from  upper-left  to  lower-right
  5507.       corners, using a backward angle approach.  ie:  scan character then
  5508.       move down to next line and backup one position.
  5509.  
  5510.                    AAAAAAAAAA
  5511.                    BBBBBBBBB
  5512.                    CCCCCCCC
  5513.                    DDDDDDD
  5514.                    etc...
  5515.  
  5516.        GATE - Gated Scan
  5517.  
  5518.       Alternating lines  scan from  opposite sides of the screen forwards
  5519.       and backwards  going across.     The first  line will  scan left to
  5520.       right going across the screen.  The second line scans right to left
  5521.       across the screen.  The third line scans as the first, etc...   All
  5522.       lines are processed at once, so the screen appears "gated".
  5523.  
  5524.  
  5525.        PYRAMID - Pyramid Scan
  5526.  
  5527.       Scans in a "pyramid" shape, starting from bottom center of screen.
  5528.                     .
  5529.                        .D.
  5530.                       cDCD.
  5531.                      tDCBCD.
  5532.                     eDCBABCD.
  5533.  
  5534.  
  5535.  
  5536.  
  5537.  
  5538.        TheDraw v4.50         TheDraw Command Functions          83
  5539.  
  5540.  
  5541.  
  5542.  
  5543.        SQUARES - Squares or Spiral Scan
  5544.  
  5545.       Scans static screen images using squares.  The border of the screen
  5546.       is first scanned (progressing clockwise).  The next  smaller square
  5547.       is then scanned, and so.  Produces a spiral effect.
  5548.  
  5549.  
  5550.        SCRAMBLE - Random Scramble Scan
  5551.  
  5552.       Each static page layer is scanned in a completely random order.
  5553.  
  5554.  
  5555.        DOOR - Closing Door Scan
  5556.  
  5557.       Screen is  scanned from  top to  bottom, on both sides of screen at
  5558.       once.  Gives the impression of doors closing on the user.
  5559.  
  5560.  
  5561.        DIAMOND - Growing Diamond Scan
  5562.  
  5563.       Scans image using ever growing diamond shapes from center of screen
  5564.       outward.  Mildly similar to the circle scan in operation.
  5565.  
  5566.  
  5567.        WIGGLE - Wiggle Scan
  5568.  
  5569.       Similar  to  GATE,  except  only  one  line is processed at a time.
  5570.       Produces a  snaking line  appearance starting  from the  top of the
  5571.       screen.   Scan first goes across screen, then returns on next.  The
  5572.       cycle is then repeated.
  5573.  
  5574.  
  5575.        WIGGLEOUT - Wiggle Out Scan
  5576.  
  5577.       Starts in center of screen with wiggle operation going both  up and
  5578.       down at once.
  5579.  
  5580.  
  5581.        Once  the  animation  scan  is  completed,  the  screen is cleared and
  5582.        redrawn.  At this point  TheDraw  will  operate  normally,  except all
  5583.        entries are  sequenced by  the animation  system.  Please refer to the
  5584.        section "The Animation System" for more details on its use.
  5585.  
  5586.        If you have ideas for more animation scanners, please send them!
  5587.  
  5588.  
  5589.  
  5590.  
  5591.  
  5592.  
  5593.  
  5594.  
  5595.  
  5596.        TheDraw v4.50         TheDraw Command Functions          84
  5597.  
  5598.  
  5599.  
  5600.  
  5601.        ALT-J FROM ANIMATOR MODE
  5602.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  5603.        Once in animator mode, selecting ALT-J presents several facilities for
  5604.        managing the animation system.  The following commands are available:
  5605.  
  5606.       o  Specify Animation Include Files
  5607.       o  Specify User Control Sequences
  5608.       o  Toggle storing of cursor movements
  5609.       o  Convert animation screens to normal mode static screen images
  5610.       o  Rescan current animation screen
  5611.       o  Enter a pause into the animation sequence
  5612.  
  5613.        The registered version of TheDraw also supports:
  5614.  
  5615.       o  Animation Position Editing (Sequence Limiting)
  5616.       o  Specify Animation Markers
  5617.  
  5618.  
  5619.        INCLUDE - Specify Animation Include File
  5620.  
  5621.       When creating  an ANSI  file, TheDraw  allows you to "include" text
  5622.       from other files in the new one being created.  Ten different files
  5623.       can  be  included  at  various  points  in the sequence.  These are
  5624.       useful for the so  called "Ansi  Music" sequences,  frequently used
  5625.       images,  complex  BBS  control  code sequences (for systems such as
  5626.       WildCat), etc...   The animation USER-SEQ function  following might
  5627.       be more suitable for the latter task however.
  5628.  
  5629.       When TheDraw  includes another  file, its  contents are copied into
  5630.       the new output file TheDraw is making.   Once the  output Ansi file
  5631.       is created, the include file is not needed again.  The include file
  5632.       need only be present when TheDraw is actually copying text from it.
  5633.  
  5634.       Include  files  are  only  accessed  when TheDraw is saving a file.
  5635.       They are  ignored by  ALT-Q.   If you  wish to  see what everything
  5636.       looks like before saving, use the View option described below.
  5637.  
  5638.       Upon  choosing  the  INCLUDE  option,  a  window will appear on the
  5639.       screen.  All currently defined include files will  be listed, along
  5640.       with their positions in the animation sequence.  The following sub-
  5641.       commands are available:
  5642.  
  5643.          SET   - Sets an include file at the  current animation position.
  5644.              In the shareware version of TheDraw, this will always be
  5645.              the end of the current animation sequence.
  5646.  
  5647.              In the registered version, this is the current animation
  5648.              limit position.   This allows include files to be easily
  5649.              specified "after the fact",  anywhere  in  the animation
  5650.              sequence (see Limit below).
  5651.  
  5652.  
  5653.  
  5654.        TheDraw v4.50         TheDraw Command Functions          85
  5655.  
  5656.  
  5657.  
  5658.  
  5659.          CLEAR - Erases the include file entry you specify.  No verify is
  5660.              done before the entry is deleted, so be warned.
  5661.  
  5662.          VIEW  - Displays  the   entire  animation   sequence,  with  all
  5663.              specified include  files.   Very useful  for testing the
  5664.              appearance of things.
  5665.  
  5666.  
  5667.       Press [ESC] once when done editing the include files.   All changes
  5668.       are saved.
  5669.  
  5670.  
  5671.       ANSI MUSIC WITH INCLUDE FILES:
  5672.  
  5673.       Animation  include  files  are  especially  useful for including so
  5674.       called "Ansi Music" sequences into a TheDraw image.  Ansi  Music is
  5675.       not part  of the standard Ansi driver.  It is an extension found in
  5676.       certain modem communication programs (such as Qmodem).  Please note
  5677.       that TheDraw cannot generate Ansi Music source sequences.  The code
  5678.       format of Ansi Music is as follows:
  5679.  
  5680.                <esc>[MF<music control codes><ctrl-N>
  5681.              3                     3
  5682.                ascii 27             ascii 14
  5683.  
  5684.       The section <music control codes> is a string  of music descriptors
  5685.       identical to  those used  in the  Basic PLAY  command.   Refer to a
  5686.       Basic language reference manual for further information.
  5687.  
  5688.  
  5689.  
  5690.        USER_SEQ - Specify Animation User Control Sequence
  5691.  
  5692.       Allows you to insert your own short control code sequences directly
  5693.       into the  Ansi file output TheDraw generates.  Extremely useful for
  5694.       BBS control codes (ie:  for  user  names  and  such),  or inserting
  5695.       special  extra  Ansi  codes  into  the  animation (ie: clearing the
  5696.       display midstream, or causing an image to scroll).   User Sequences
  5697.       are only  referred to  when TheDraw  saves a file, and are not used
  5698.       when redrawing (see ALT-Q).
  5699.  
  5700.       Upon choosing the USER_SEQ option,  a  window  will  appear  on the
  5701.       screen.    All  currently  defined  user  control sequences will be
  5702.       listed, along with their positions in the animation sequence.
  5703.  
  5704.  
  5705.  
  5706.  
  5707.  
  5708.  
  5709.  
  5710.  
  5711.  
  5712.        TheDraw v4.50         TheDraw Command Functions          86
  5713.  
  5714.  
  5715.  
  5716.  
  5717.       The following sub-commands are available:
  5718.  
  5719.          SET   - Sets a user sequence at the  current animation position.
  5720.              In the shareware version of TheDraw, this will always be
  5721.              the end of  the  current  animation  sequence.    In the
  5722.              registered version,  this is the current animation limit
  5723.              position.    This  allows  control  codes  to  be easily
  5724.              specified after  a screen has been made, anywhere during
  5725.              the display of the animation sequence (see Limit below).
  5726.  
  5727.              You are prompted for the user sequence to  modify.  Next
  5728.              the sequence must be typed in.  For Ansi escape sequence
  5729.              press the escape key (appears as  "^["), an  open square
  5730.              bracket, followed by the necessary command codes.  ie:
  5731.  
  5732.                   <esc>[2J    (will clear the screen)
  5733.  
  5734.          CLEAR - Removes the  user sequence entry you specify.  No verify
  5735.              is done before the entry is deleted, so be warned.
  5736.  
  5737.          VIEW  - Displays the  animation  sequence,  up  to  the position
  5738.              where  the  specified  user  sequence  is  to be output.
  5739.              Useful for jogging your memory.
  5740.  
  5741.  
  5742.  
  5743.        LIMIT - Specify Animation Limit (registered version only)
  5744.  
  5745.       The animation limit facility of  TheDraw  provides  for  a powerful
  5746.       animation editing system.  You can easily correct mistakes, insert,
  5747.       delete or do anything else in the MIDDLE of any animation sequence.
  5748.  
  5749.       To use limiting, you tell  TheDraw  where  to  stop  displaying the
  5750.       animation sequence.   For  example, assume  you had a sequence with
  5751.       5000 entries.  You could  limit  it  to  2000,  correct  a spelling
  5752.       mistake, then  quickly reset the limit back to 5000.  With limiting
  5753.       turned on TheDraw operates as always,  except everything  above the
  5754.       animation limit is temporarily held out of the way.
  5755.  
  5756.       Upon choosing the LIMIT option, you can specify the animation limit
  5757.       position by means of the following keys:
  5758.  
  5759.          Up/Down Arrows   Advance/Backup limit by one position.
  5760.          PgUp/PgDn        Advance/Backup limit by 100 positions.
  5761.          Home             Go to start of sequence (position = 0).
  5762.          End          Go to end of sequence (all entries).
  5763.  
  5764.  
  5765.  
  5766.  
  5767.  
  5768.  
  5769.  
  5770.        TheDraw v4.50         TheDraw Command Functions          87
  5771.  
  5772.  
  5773.  
  5774.  
  5775.          marKer           Move to the position of an animation marker.
  5776.                   Selecting this command displays a window of all
  5777.                   currently   set   animation   markers.    After
  5778.                   choosing a marker, the animation limit moves to
  5779.                   the position  of the marker.  Assuming you have
  5780.                   set markers in  strategic  places,  this allows
  5781.                   you  to  quickly  bounce  around  an  animation
  5782.                   sequence looking for a particular spot.
  5783.  
  5784.       Press [ENTER] to save the  new  animation  limit.    Pressing [ESC]
  5785.       leaves the original animation limit position unchanged.
  5786.  
  5787.  
  5788.  
  5789.        MARKER - Specify Animation Markers (registered version only)
  5790.  
  5791.       Markers  are  used  to  "mark"  different  places  in the animation
  5792.       sequence for later reference.  Once  set, markers  can be  used for
  5793.       changing the  animation limit position (see above) and viewing just
  5794.       portions of the  animation  sequence.      They  can  be  useful in
  5795.       locating things  forgotten or set aside until later, editing images
  5796.       a page at a time, etc...
  5797.  
  5798.       Upon choosing the  MARKER  option,  a  window  will  appear  on the
  5799.       screen.  All currently defined markers are listed, along with their
  5800.       position in the animation  sequence.    The  following sub-commands
  5801.       are available:
  5802.  
  5803.          SET   - Sets a marker at the current animation limit position.
  5804.              This allows  markers to  be easily specified anywhere in
  5805.              the animation sequence.  You are  first be  prompted for
  5806.              which marker  to change.   If the marker is already set,
  5807.              it will be erased before continuing.  After  you specify
  5808.              a marker, you can then enter a comment (32 characters).
  5809.  
  5810.          CLEAR - Erases the marker you specify.  No verify is done before
  5811.              the entry is deleted, so be warned.
  5812.  
  5813.          VIEW  - Displays  the  animation  sequence,  up  to  a specified
  5814.              marker.   Useful for  reminding yourself of what happens
  5815.              early in a 16000 entry animation sequence.
  5816.  
  5817.       Press [ESC] once done editing markers.  All changes are saved.
  5818.  
  5819.  
  5820.  
  5821.  
  5822.  
  5823.  
  5824.  
  5825.  
  5826.  
  5827.  
  5828.        TheDraw v4.50         TheDraw Command Functions          88
  5829.  
  5830.  
  5831.  
  5832.  
  5833.        MOVEMENT - Toggle Storage of Cursor Movements
  5834.  
  5835.       Toggles whether or  not  TheDraw  stores  actual  movements  of the
  5836.       cursor.   Normally only  typed characters are recorded; however, if
  5837.       the cursor movement toggle is on  all movements  of the  cursor are
  5838.       also stored.   Cursor  movements are being stored whenever the ANIM
  5839.       symbol in the status line is flashing.  If you are still  in doubt,
  5840.       watch the  animation entry  count.  It will increase every time you
  5841.       move the cursor.
  5842.  
  5843.  
  5844.        NORMAL - Convert to Normal Edit Mode.
  5845.  
  5846.       Converts what appears on  the screen  to normal  mode images.   All
  5847.       animation is  erased after  executing this  command.  You are first
  5848.       prompted to verify this before continuing.
  5849.  
  5850.       In  the  registered  version,  anything  not  displayed  because of
  5851.       animation  limiting  is  lost.    Only  what appears exactly on the
  5852.       screen when  you select  this command  is converted  to normal mode
  5853.       images.
  5854.  
  5855.  
  5856.        RESCAN - Rescan the Screens
  5857.  
  5858.       Selecting  this  command  prompts  for  an animation scan method as
  5859.       described above in the ALT-J FROM NORMAL MODE  section.  Everything
  5860.       in the  animation sequence  is first erased, then the images on the
  5861.       screens are rescanned.
  5862.  
  5863.       In the registered version,  any  animation  sequence  not displayed
  5864.       because  of  animation  limiting  is  NOT  lost.   It will still be
  5865.       available after this operation is  done.    This  differs  from the
  5866.       above suboption  and permits rebuilding something which did not cut
  5867.       it the first time.
  5868.  
  5869.  
  5870.        PAUSE - Animation Pausing
  5871.  
  5872.       Allows for the  putting  of  pauses  into  the  animation sequence.
  5873.       TheDraw can  wait for  either a  key press or a specified number of
  5874.       seconds.  There is no limit on pauses  and they  may occur anywhere
  5875.       in  the   animation  sequence.      This  can  be  very  useful  in
  5876.       presentations.
  5877.  
  5878.       After selecting PAUSE, the following sub-commands are available:
  5879.  
  5880.          TIME_PAUSE       Creates  a  pause  for  a  specified  number of
  5881.                   seconds (the  pause can  be aborted by pressing
  5882.                   any key  when  actually  displayed).    You are
  5883.                   prompted for the number of seconds to delay.
  5884.  
  5885.  
  5886.        TheDraw v4.50         TheDraw Command Functions          89
  5887.  
  5888.  
  5889.  
  5890.  
  5891.          KEY_ONLY_PAUSE   Creates a pause for a key to be pressed.
  5892.  
  5893.          CLEAR            Erases  pauses  from  the  animation  sequence.
  5894.                   TheDraw  searches  backwards  from  the current
  5895.                   animation  position  for  a  Pause.   If one is
  5896.                   found, you can DELETE,  VIEW up  to this pause,
  5897.                   or  scan  for  the  NEXT pause before this one.
  5898.                   Press [ESC] to abort clearing a pause.
  5899.  
  5900.       Pauses are observed whenever you redraw the animation sequence with
  5901.       ALT-Q.   When you  save an ANSI file, it is not possible to produce
  5902.       the exact pause equivalent (pauses for a key are impossible).   For
  5903.       this  reason,  a  small  separate  presentation  program (THEPP) is
  5904.       included  with  registered  copies   of  TheDraw.     This  program
  5905.       duplicates  the  operation  of  the ALT-Q command, and uses THEDRAW
  5906.       format data files.  See section entitled "The Presentation Program"
  5907.       for information on using THEPP.
  5908.  
  5909.  
  5910.  
  5911.                    ALT-K: DELETE A FILE
  5912.  
  5913.        Deletes a  specified file  from disk.  Use this option to free up disk
  5914.        space when the need arises.   The directory  file selector  (see ALT-L
  5915.        below) displays  everything in  the current  directory.  Use the arrow
  5916.        keys to select a file to delete, or simply type in the filename at the
  5917.        bottom of the screen.  Press [ENTER] to select the file.
  5918.  
  5919.        TheDraw will  then check for the file.  If it exists, you are prompted
  5920.        to verify before continuing.  This  is  your  last  chance  before you
  5921.        delete something you might regret later.
  5922.  
  5923.  
  5924.  
  5925.                ALT-L: LOAD SCREEN FROM DISK
  5926.  
  5927.        This command  allows you  to load any ANSI text, ANSI Animation, ASCII
  5928.        text, BINARY  dump,  Basic  BSAVE,  TheDraw  Object,  TheDraw  COM, or
  5929.        TheDraw (.TD) format file.
  5930.  
  5931.        You are  prompted to continue if the current screen image has not been
  5932.        saved.  The directory  file selector  next displays  all files  in the
  5933.        current directory for convenience.  The selector cursor may be used to
  5934.        choose a file, or a filename can  be  typed  in  directly.    Move the
  5935.        selector cursor  via the  arrow and  PgUp/PgDn keys.   To see the pick
  5936.        list of last 10 files accessed, press the TAB key.   Press  [ENTER] to
  5937.        load the file.
  5938.  
  5939.  
  5940.  
  5941.  
  5942.  
  5943.  
  5944.        TheDraw v4.50         TheDraw Command Functions          90
  5945.  
  5946.  
  5947.  
  5948.  
  5949.        If there  are many  files in the directory, a wildcard filename can be
  5950.        used to display a partial listing  of  those  available.     Wildcards
  5951.        operate  as  found  in  Dos.    Please  refer  to  your Dos manual for
  5952.        additional information.  Wildcards are normally temporary, and are not
  5953.        maintained between  directory invocations.   They can be made "sticky"
  5954.        however by use of the Setup utility.
  5955.  
  5956.        If you type in  the  filename,  a  file  extension  is  assumed unless
  5957.        otherwise specified.   The  assumed value  is ".ANS" unless changed in
  5958.        the setup  options.   The following  file types  require the specified
  5959.        extensions for TheDraw to be able to load them:
  5960.  
  5961.                    Binary Dump      .BIN
  5962.                    Basic BSAVE      .BSV
  5963.                    TheDraw COM File .COM
  5964.                    TheDraw OBJ File .OBJ
  5965.                    TheDraw Format   .TD
  5966.  
  5967.        (Note:   The above filename extensions can be changed in Setup Options
  5968.        menu with TheDraw, or via the Setup Utility Defaults option).
  5969.  
  5970.        A file without one of  the  above  is  assumed  to  be  an  ANSI file.
  5971.        Assembler, Pascal,  and C  format files  cannot be reloaded, except as
  5972.        Ascii text.  You  must  keep  another  copy  of  those  screens safely
  5973.        somewhere in one of the above loadable formats.
  5974.  
  5975.        Binary, BSave,  COM, Object  (OBJ), and  TheDraw format  files are all
  5976.        reloadable and may contain either a full screen or small  block image.
  5977.        Where a  block is  displayed depends upon the file format.  Binary and
  5978.        Object formats load in the upper-left corner.   Formatting information
  5979.        is not  stored with  binary blocks however, so TheDraw will prompt for
  5980.        block width before loading.
  5981.  
  5982.        BSave and COM formats load in the same locations they  were originally
  5983.        saved from.   The TheDraw format is more flexible however, placing you
  5984.        automatically into block copy/move mode to position the block.
  5985.  
  5986.        When loading Ansi or Ascii, only the first screen full is stored.  Any
  5987.        extra lines  below the  first screen are discarded.  Do not be alarmed
  5988.        by Ansi files which might be  hundreds (or  thousands) of  lines long.
  5989.        So  long  as  the  cursor  never  goes below the bottom of the screen,
  5990.        everything will load properly.
  5991.  
  5992.        Ansi  animation  is  automatically  detected  by   TheDraw  using  the
  5993.        following advanced system:  If the cursor suddenly moves to a place it
  5994.        normally could never go, the file must be animated.
  5995.  
  5996.  
  5997.  
  5998.  
  5999.  
  6000.  
  6001.  
  6002.        TheDraw v4.50         TheDraw Command Functions          91
  6003.  
  6004.  
  6005.  
  6006.  
  6007.                   ALT-M: SELECT DRAW MODE
  6008.  
  6009.        TheDraw supports the "drawing" of lines.   This  is easily  done using
  6010.        the arrow  keys while in Draw mode.   The characters used in the lines
  6011.        are those available via  the function  keys from  the current function
  6012.        key set.  Only the first four sets of characters contain lines.   If a
  6013.        function key set without lines  is  selected,  the  first  set (single
  6014.        lines) is  used.   Draw mode  is indicated  by the  word "Draw" at the
  6015.        bottom of the screen.
  6016.  
  6017.        In draw mode, everything  operates without  change.   Typed characters
  6018.        still appear.     The only change is that using the arrow keys makes a
  6019.        line appear in the direction moved.
  6020.  
  6021.  
  6022.  
  6023.  
  6024.                    ALT-N: RULER
  6025.  
  6026.        The Ruler command places a pair of intersecting  lines on  the screen.
  6027.        The point  of intersection  represents the position of the cursor.  It
  6028.        is useful for lining up rows or columns of text or figures.
  6029.  
  6030.        The ruler can be  moved using  all normal  cursor keys  (ie: the arrow
  6031.        keys, Tab,  PgUp, PgDn, Home, End, etc...).  Press [ENTER] to save the
  6032.        new cursor location, or press [ESC]  to return  to the  initial cursor
  6033.        position.
  6034.  
  6035.        The ruler  can held  on the  screen during normal editing by selecting
  6036.        [S]ticky mode.  The  ruler will  appear under  the current  layer.  To
  6037.        turn off the sticky ruler, simply select ALT-N again then press [ESC].
  6038.  
  6039.  
  6040.  
  6041.              ALT-O: CHANGE DRIVE/SUB DIRECTORY
  6042.  
  6043.        This command  allows you  to change  the Dos default directory or path
  6044.        (displayed when loading or  viewing a  file).   All sub-directories of
  6045.        the  current  path  are  displayed  for  you.   A new directory can be
  6046.        selected by using the arrows keys  or typing  in the  pathname.  Press
  6047.        [ENTER] to change to it.  Note that the details of sub-directories are
  6048.        not covered here.  Please refer to your dos manual for that.
  6049.  
  6050.        For example, if you were on  drive C  in a  sub-directory named GAMES,
  6051.        you could  switch to  the subdirectory  UTILITY of drive D by entering
  6052.        "D:\UTILITY".  You could then  get  back  to  the  directory  GAMES by
  6053.        simply entering "C:" (no backslash).
  6054.  
  6055.  
  6056.  
  6057.  
  6058.  
  6059.  
  6060.        TheDraw v4.50         TheDraw Command Functions          92
  6061.  
  6062.  
  6063.  
  6064.  
  6065.                 Alt-P:  PAINT/FILL COMMANDS
  6066.  
  6067.        This command allows enclosed areas to be easily filled with characters
  6068.        and/or attributes.  An enclosed area  is  made  by  using  lines (from
  6069.        function key  sets 1-4) or using the Draw command (see ALT-M).  To use
  6070.        this command, position the cursor inside the area then press ALT-P.
  6071.  
  6072.        The following sub-commands are available:
  6073.  
  6074.      ATTRIBUTE   Changes all  foreground and  background color attributes
  6075.              within the  enclosed area  to those  values shown in the
  6076.              status line.
  6077.  
  6078.      FORE        Changes only the foreground color attributes  within the
  6079.              enclosed area to the current foreground value.
  6080.  
  6081.      BACK        Changes only  the background color attributes within the
  6082.              enclosed area to the current background value.
  6083.  
  6084.      CHARACTER   Prompts for a keyboard character or special function set
  6085.              symbol (see ALT-F command).  Solid spaces can be used by
  6086.              pressing Shift-Space.  All enclosed characters  are then
  6087.              overwritten  using  whatever  was  specified.   No color
  6088.              attributes are changed, just actual character symbols.
  6089.  
  6090.      BOTH        Combines  both  the   Attribute   and   Character  paint
  6091.              operations  above.    A  character is prompted for, then
  6092.              everything  in  the  area  is  overwritten   using  that
  6093.              character  with  the  current  color attributes from the
  6094.              status line.
  6095.  
  6096.        In animation mode, the Character and Both options  add new  entries to
  6097.        the  animation  sequence;  nothing  is deleted.  The Attribute command
  6098.        however only changes the color attributes of characters already in the
  6099.        animation sequence.  No new entries are added.
  6100.  
  6101.  
  6102.  
  6103.                    ALT-Q: REDRAW SCREEN
  6104.             (available in animation mode only)
  6105.  
  6106.        This command  redraws the animation sequence on the screen.  With this
  6107.        you can see how your work is developing.     You are  prompted for the
  6108.        display speed  to redraw at.  Available speeds are from 0 (fastest) to
  6109.        255 (crawl).  A value of about 40  is generally  a good  speed to view
  6110.        at.  Be warned that 255 literally is a crawl speed, displaying between
  6111.        two and four characters per second  (standard PC/XT).   A  slow redraw
  6112.        can be broken out of by pressing any key.
  6113.  
  6114.  
  6115.  
  6116.  
  6117.  
  6118.        TheDraw v4.50         TheDraw Command Functions          93
  6119.  
  6120.  
  6121.  
  6122.                 ALT-R: RESTORE/UNDO CHANGES
  6123.  
  6124.        Restores from  unwanted or  unintended screen  changes.  This function
  6125.        can undo block or global  changes,  clear  or  load  screens,  line or
  6126.        column insert or deletes, animation mode toggles, font entry, mistakes
  6127.        made to the current line, etc...
  6128.  
  6129.        In regards to current line changes,  such modifications  are permanent
  6130.        once you move to a new line.
  6131.  
  6132.  
  6133.  
  6134.                 ALT-S: SAVE SCREEN TO DISK
  6135.  
  6136.        The  Save  Screen  command  offers  many formats for saving the entire
  6137.        current screen.    The  available  formats  are:    Ansi,  Ascii, Asm,
  6138.        Binary, BSave,  Com, C, Pascal, Object, and TheDraw.  Please note that
  6139.        all color attributes are  lost in  an Ascii  file.   All other formats
  6140.        store the complete screen with color (unless specified otherwise).
  6141.  
  6142.        The entire  screen is  saved when  using this  command.  If you do not
  6143.        require the full video, use a block save  (see ALT-B).   These  can be
  6144.        more effective at times.
  6145.  
  6146.        You are  first prompted for which storage format to use.  In animation
  6147.        mode, only ANSI and THEDRAW formats are available.   The  items on the
  6148.        menu are discussed below.
  6149.  
  6150.  
  6151.        ANSI - Ansi text file
  6152.  
  6153.       You are first asked what initial screen preparation you want before
  6154.       the image is displayed.  Options are:
  6155.  
  6156.         CLEAR - Clears the screen
  6157.         HOME  - Move cursor to upper-left corner of screen
  6158.         NONE  - Leave screen and cursor position as is.
  6159.  
  6160.       The next prompt is for the maximum length of each line in the saved
  6161.       file.   TheDraw is  capable of  producing over  1300 characters per
  6162.       screen line (if every character had a differing color combination).
  6163.       Some  applications  and  programs  (ie:  other text editors) cannot
  6164.       handle so many characters per line.  This option limits  the output
  6165.       line length sacrificing time to display the image.  If length is no
  6166.       problem, specify [N]one for the most efficient file.
  6167.  
  6168.       Lastly, you are prompted for the Ansi display speed (a  number from
  6169.       0 to  50).   The operation  is similar to the ALT-Q animator redraw
  6170.       screen function.  Things are slowed down by  adding redundant codes
  6171.       after displayed  characters.   A value of 50 is approximately equal
  6172.       to an ALT-Q speed  of 255  (extremely slow).   Experimentation will
  6173.       find the most appropriate speed for your needs.
  6174.  
  6175.  
  6176.        TheDraw v4.50         TheDraw Command Functions          94
  6177.  
  6178.  
  6179.  
  6180.        ASCII - Ascii Text (no colors)
  6181.  
  6182.       If you  select ASCII,  you are  prompted if  you really want a non-
  6183.       color image  made before  continuing.   The Ascii  file produced is
  6184.       similar to  any file  produced by  a normal  text editor (ie: Turbo
  6185.       Pascal or Sidekick editor).
  6186.  
  6187.       There is one difference  in the  approach used  by TheDraw however.
  6188.       Lines of  Ascii that  are the  full 80  character screen width, are
  6189.       normally NOT  terminated with  a carriage  return sequence (CR/LF).
  6190.       Such Ascii  files viewed  via the Dos TYPE command display properly
  6191.       but do not load correctly into most other software.   Therefore, an
  6192.       option to  force CR/LF  was added  to the Setup Options menu within
  6193.       TheDraw, and the Setup Utility Defaults area.   Set this  toggle if
  6194.       you are having difficulties.
  6195.  
  6196.  
  6197.        ASM - Assembly Language
  6198.  
  6199.       ASM  produces  a  list  of  DB  data statements for use by assembly
  6200.       language  programmers.    Additional  suboptions  are  available to
  6201.       specify  the  assembler  data  format.   You can specify to Crunch,
  6202.       output only Ascii characters, or generate a normal file.  Crunching
  6203.       uses a  custom technique  for compressing color changes and strings
  6204.       of identical  characters to  make the  smallest possible  file.  To
  6205.       display  a  crunched  file  you  must  use  the  uncruncher routine
  6206.       included separately with TheDraw  (UNCRUNCH.ASM).    This  file has
  6207.       comments  explaining  its  use.    It  is compatible with Microsoft
  6208.       (MASM) and  Borland (TASM)  assemblers.   Simple formatting changes
  6209.       may be required for other vendors assemblers.
  6210.  
  6211.       The  Ascii  format  saves  all  characters on the screen.  No color
  6212.       attribute information is stored  however.   The Normal  format is a
  6213.       pure  binary   dump  of  the  screen,  converted  to  an  assembler
  6214.       compatible format.
  6215.  
  6216.       You are also prompted for a reference identifier to use.  This will
  6217.       be the  name used  to access  the data  within a  program.  TheDraw
  6218.       takes this and generates statements to  simplify programming.   For
  6219.       instance, assume a standard full screen with the default IMAGEDATA:
  6220.  
  6221.         IMAGEDATA_WIDTH EQU 80
  6222.         IMAGEDATA_DEPTH EQU 25
  6223.         IMAGEDATA_LENGTH EQU 4000
  6224.         IMAGEDATA LABEL BYTE
  6225.              ... data for screen image follows here ...
  6226.  
  6227.       The width  and depth  statements reflect the character dimension of
  6228.       the image saved.  Saving a block changes them appropriately.   This
  6229.       facilitates easier program development.  Instead of directly coding
  6230.       block sizes refer to the above  identifiers.   Thus eliminating the
  6231.       need to remember arbitrary block sizes.
  6232.  
  6233.  
  6234.        TheDraw v4.50         TheDraw Command Functions          95
  6235.  
  6236.  
  6237.  
  6238.  
  6239.        BINARY - Binary Screen Dump
  6240.  
  6241.       Produces a  straight data byte dump of the video screen.  This data
  6242.       format is generic.  It is useful for  many things,  such as loading
  6243.       screen  images  directly  to  video  ram, etc...  This will be 4000
  6244.       bytes for a standard 80x25 screen, larger for EGA/VGA displays.
  6245.  
  6246.  
  6247.        BSAVE - Basic BSave Screen Dump
  6248.  
  6249.       This file is identical to  a  binary  screen  dump,  except loading
  6250.       codes for Basic are placed at the front.  These files can be loaded
  6251.       from basic with:
  6252.  
  6253.               DEF SEG = &HB800 : BLOAD"filespec.BSV"
  6254.  
  6255.       If you have a monochrome monitor, replace the B800 with B000 in the
  6256.       above line.  BSAVE files are always saved to the full screen width.
  6257.       Block saves are limited by this restriction also.
  6258.  
  6259.  
  6260.        COM - Dos Executable COM Files.
  6261.  
  6262.       Produces a truly separate program executable from Dos by typing the
  6263.       program name.   COM  files are  useful in  batch files and the like
  6264.       for -fast- displaying.  COM file screen blocks  (via ALT-B) display
  6265.       only  the   block  without  changing  anything  else.    You  could
  6266.       conceivably generate a "layering" windows effect if you so desired.
  6267.       TheDraw  has   three  different   styles  of  COM  file,  and  will
  6268.       transparently select the most appropriate to minimize file size.
  6269.  
  6270.  
  6271.        PASCAL - Turbo Pascal Compatible Screen Dump
  6272.  
  6273.       This operates the same  as the  ASM option  described above, except
  6274.       the output  is in  a Turbo  Pascal compatible CONST structure.  See
  6275.       Appendix B for the section entitled "Programmers Programming Tips".
  6276.       To use the Crunched file format, use the file UNCRUNCH.PAS.
  6277.  
  6278.  
  6279.        C - Modern C Formatted Compatible Screen Dump (Turbo C)
  6280.  
  6281.       Again, this operates the same as the ASM option.  The format is for
  6282.       the new  "modern C" string continuation structure.  The data may be
  6283.       uncrunched  using  routines  in  the  two  files  UNCRUN_N.OBJ  and
  6284.       UNCRUN_F.OBJ  (for  near  and  far  code models respectfully).  The
  6285.       header file UNCRUNCH.H contains instructions on their proper usage.
  6286.  
  6287.       We are aware only of TurboC able to handle this  structure.  People
  6288.       using other compilers should use the Object file format below.
  6289.  
  6290.  
  6291.  
  6292.        TheDraw v4.50         TheDraw Command Functions          96
  6293.  
  6294.  
  6295.  
  6296.  
  6297.        OBJECT - Intel Compatible Object Code File
  6298.  
  6299.       This  is   a  format  compatible  with  many  high  level  language
  6300.       compilers.  Object files  can be  produced with  screen information
  6301.       crunched, ascii  only, or  binary normal  (as in ASM format).  Four
  6302.       code/data models are supported:
  6303.  
  6304.                  Turbo Pascal v4.0 (and above)
  6305.                  QuickBasic v4.0 (and above)
  6306.                  Small Data
  6307.                  Large Data
  6308.  
  6309.       The TP40 format is compatible with Turbo Pascal  v4.0 through v6.0.
  6310.       Data  saved  to  these  files  is  referenced by external procedure
  6311.       calls and pointers.  Refer to the topics "TURBO PASCAL v4.0 through
  6312.       v5.5"   and   "TURBO   PASCAL   VERSION  6.0"  in  the  Programmers
  6313.       Programming Tips section for examples.
  6314.  
  6315.       The QB40 format is for use  with QuickBasic  v4.0 and  higher.  The
  6316.       image data  saved to these files are referenced by provided display
  6317.       routines.  The  object  files  are  linkable  (if  you  use  the BC
  6318.       compiler),  or  can  be  incorporated  into a Quick Library for use
  6319.       within the  QuickBasic environment.   When  linking separately, you
  6320.       must include  the file QBUTIL.LIB in addition to any TheDraw object
  6321.       files.  To simplify  matters,  you  can  merge  the  QBUTIL.LIB and
  6322.       object files into one library.
  6323.  
  6324.       A batch  file MAKEQLB.BAT  is provided  to simplify  the process of
  6325.       creating Quick Library and the separate library files.  To use, the
  6326.       first parameter  should be the name of the quick library to create.
  6327.       The following parameters are TheDraw object files plus other object
  6328.       (.OBJ) and library (.LIB) files you want included.  ie:
  6329.  
  6330.                MAKEQLB testlib IMAGE1.OBJ IMAGE2.OBJ
  6331.  
  6332.       This creates  the files named TESTLIB.LIB and TESTLIB.QLB.  Note no
  6333.       file extension was  specified  on  the  "testlib"  parameter above,
  6334.       since the  batch file  adds ".LIB"  and ".QLB"  automatically.  The
  6335.       Quick Library contains the display routines (from QBUTIL.LIB, which
  6336.       is  always  added  by  the  batch  file), plus the screen images in
  6337.       IMAGE1.OBJ and IMAGE2.OBJ.   See  the  topic  "MICROSOFT QUICKBASIC
  6338.       v4.0  AND  v4.5"  in  the  Programmers Programming Tips section for
  6339.       examples on usage.
  6340.  
  6341.  
  6342.  
  6343.  
  6344.  
  6345.  
  6346.  
  6347.  
  6348.  
  6349.  
  6350.        TheDraw v4.50         TheDraw Command Functions          97
  6351.  
  6352.  
  6353.  
  6354.       OBJECT FILE DATA FORMATS:
  6355.  
  6356.       The data formats use the following identifiers:
  6357.  
  6358.                  Small Data        Large Data
  6359.                  DDDDDDDDDD      DDDDDDDDDDDDDDD
  6360.              Segment:      _DATA      filename_DATA
  6361.              Group:        DGROUP         filename_DATA
  6362.  
  6363.       Where "filename" is the actual filename given the object file.
  6364.  
  6365.       The last prompt  under  object  files  is  for  the  data reference
  6366.       identifier.    This  is  the  name  you will use in your program to
  6367.       access the object data.   It  defaults to  IMAGEDATA (for  TP40 and
  6368.       QuickBasic) or _IMAGEDATA (Small or Large Data).  The underscore is
  6369.       usually  required  for  small  or  large   data  formats,   but  is
  6370.       application and compiler dependent.
  6371.  
  6372.       The above  identifier is  used to directly reference the image data
  6373.       stored.    In   addition,   TheDraw   generates   three  additional
  6374.       identifiers similar to the ASM case:
  6375.  
  6376.                  identifier_WIDTH
  6377.                  identifier_DEPTH
  6378.                  identifier_LENGTH
  6379.  
  6380.       For QuickBasic  users the following identifiers are used, called as
  6381.       subroutine functions to obtain the wanted value:
  6382.  
  6383.                  identifierWIDTH
  6384.                  identifierDEPTH
  6385.                  identifierLENGTH
  6386.  
  6387.       In all cases, these contain the  dimensions of  the block specified
  6388.       (width and depth).  The last identifier specifies how long the data
  6389.       block is.  The  width/depth values  are useful  for drawing windows
  6390.       and other  related functions.   The  length parameter is useful for
  6391.       displaying crunched images.
  6392.  
  6393.  
  6394.        THEDRAW - TheDraw Setup Save
  6395.  
  6396.       This format saves everything  about  the  current  configuration of
  6397.       TheDraw.   In normal edit mode, all occupied page layers are saved.
  6398.       In animation mode, the complete animation sequence is  stored.  All
  6399.       other  parameters  are  saved  also  (ie: current colors, tab line,
  6400.       cursor position, current page layer, etc...).
  6401.  
  6402.       The TheDraw format file also has the benefit  of being  the fastest
  6403.       way to  load and retrieve screen images; eight page layers or 16000
  6404.       animation entries take only seconds to load.
  6405.  
  6406.  
  6407.  
  6408.        TheDraw v4.50         TheDraw Command Functions          98
  6409.  
  6410.  
  6411.  
  6412.  
  6413.        Following the above prompts, TheDraw prompts for a  filename.   If the
  6414.        file already  exists, you  are prompted to verify the save.  If you do
  6415.        not specify a filename extension, TheDraw assumes the following:
  6416.  
  6417.               .ANS     ANSI compatible files
  6418.               .ASC     ASCII text files
  6419.               .ASM     Assembler files
  6420.               .BIN     Binary dumps
  6421.               .BSV     Bsave files
  6422.               .COM     files
  6423.               .PAS     Pascal files
  6424.               .H       C files
  6425.               .OBJ     Object files
  6426.               .TD      TheDraw format files.
  6427.  
  6428.        A file without an extension can  be specified  by placing  a period as
  6429.        the last character of the filename (ie: TESTFILE. ).  After entry of a
  6430.        valid filename, the screen is saved to disk.
  6431.  
  6432.        For information and suggestions on using  the screen  files created by
  6433.        TheDraw see Appendix B (Programmers Programming Tips).
  6434.  
  6435.  
  6436.  
  6437.                  ALT-T: TAB SETUP
  6438.  
  6439.        This command allows you to set tabs in the editor (positions where the
  6440.        [TAB] key stops).  Initially the positions are at every  tenth column.
  6441.        Available sub-commands are:
  6442.  
  6443.       SET       - Set a  new tab position.  Move the cursor to the wanted
  6444.               position then press 'S'.
  6445.       CLEAR     - Clears tab at current cursor position
  6446.       RESET     - Resets tab line to initial settings (every ten spaces).
  6447.       ERASE     - Delete all current tab setting for a clean slate.
  6448.       INCREMENT - Prompts for a  step  size.    From  the  current cursor
  6449.               position, every  nth location is then set.  This allows
  6450.               you to  quickly specify,  say every  fourth position if
  6451.               your need requires it.
  6452.  
  6453.        Press [ESC] to leave the tab set command.
  6454.  
  6455.  
  6456.  
  6457.               ALT-U: USE COLORS UNDER CURSOR
  6458.  
  6459.        Changes current  edit colors  (seen on status line) to those currently
  6460.        under the cursor.   This provides  a fast  method to  change to colors
  6461.        already displayed on the screen.
  6462.  
  6463.  
  6464.  
  6465.  
  6466.        TheDraw v4.50         TheDraw Command Functions          99
  6467.  
  6468.  
  6469.  
  6470.  
  6471.                    ALT-V: VIEW A SCREEN
  6472.  
  6473.        This command allows you to look at an image saved on disk.  Nothing is
  6474.        altered by this command.  This might be  used in  conjunction with the
  6475.        block load/import function (see ALT-B).
  6476.  
  6477.        Viewing a  screen is  similar to loading (see ALT-L) except the loaded
  6478.        image is not remembered.  Once the image is fully  displayed, a window
  6479.        appears  with  instructions.      Press  [ENTER]  to  exit  view mode.
  6480.        Pressing any other key  will make  the window  disappear to facilitate
  6481.        viewing.   After about  30 seconds  the window reappears to remind you
  6482.        about view mode (in case you leave the computer unattended).
  6483.  
  6484.  
  6485.  
  6486.                    ALT-W: EDIT CHARACTER
  6487.             (available in animation mode only)
  6488.  
  6489.        Allows the editing of a mistyped animation entry.  This command exists
  6490.        because simply  overwriting an incorrect character does not delete it.
  6491.        In  animation  mode,  both  entries  are  remembered  -  the incorrect
  6492.        character,  plus  the  wanted  one.    Upon redisplaying the animation
  6493.        sequence (see ALT-Q), both  characters would  be seen  (the former for
  6494.        only a millisecond perhaps, but it would appear).
  6495.  
  6496.        Another way  is using ALT-Z to delete the incorrect entry.  The wanted
  6497.        character could then be typed in.  This works perfectly well, and some
  6498.        people may  prefer it;  however, to  quickly change  an entry ALT-W is
  6499.        more convenient.
  6500.  
  6501.        After pressing Alt-W you are prompted to type the new  character.  The
  6502.        current  position  will  flicker.    All  color  changing commands are
  6503.        available (ALT-A and the Ctrl-Arrow keys) while editing.
  6504.  
  6505.  
  6506.  
  6507.  
  6508.                 ALT-X: EXIT THEDRAW
  6509.  
  6510.        Prompts if you wish  to  exit  TheDraw  or  execute  a  shell  to DOS.
  6511.        Responding Yes exits the program.  No cancels the command.
  6512.  
  6513.        Shell  also  exits  to  Dos,  however  TheDraw remains in memory.  All
  6514.        screen page layers and  animation entries  are retained.   To  free up
  6515.        memory for the Dos Shell, TheDraw will try temporarily saving its data
  6516.        to expanded memory/EMS  or  a  disk  swap  file  (if  insufficient EMS
  6517.        exists).    Typing  the  command  "EXIT" at the Dos prompt will return
  6518.        control to TheDraw.
  6519.  
  6520.  
  6521.  
  6522.  
  6523.  
  6524.        TheDraw v4.50         TheDraw Command Functions         100
  6525.  
  6526.  
  6527.  
  6528.  
  6529.                 ALT-Y: DELETE CURRENT LINE
  6530.  
  6531.        Deletes the current horizontal line on  the screen.   All  lines below
  6532.        are shifted  up one  line position.   The bottom line is cleared using
  6533.        spaces and the default background color.   This  command is reversible
  6534.        using the Restore/Undo command (ALT-R).
  6535.  
  6536.  
  6537.  
  6538.                ALT-Z: ERASE CURSOR CHARACTER
  6539.             (available in animation mode only)
  6540.  
  6541.        Erases  the  top-most  character  from  the  animation sequence at the
  6542.        current cursor position.  Only the last character typed at  the cursor
  6543.        position is deleted, everything typed before is unchanged.
  6544.  
  6545.        This  differs  from  the  Backspace  key which deletes everything at a
  6546.        cursor position.
  6547.  
  6548.  
  6549.  
  6550.              ALT-[LEFT]: DELETE CURRENT COLUMN
  6551.  
  6552.        Deletes the current column on the screen.  Everything to  the right of
  6553.        the current  column is shift over one position.  The right-most column
  6554.        is cleared using  spaces  and  the  default  background  color.   This
  6555.        command is  equivalent to  using Block Delete (ALT-B,D) on the current
  6556.        column.  The action is reversible using Restore/Undo (ALT-R).
  6557.  
  6558.  
  6559.  
  6560.                ALT-[RIGHT]: INSERT A COLUMN
  6561.  
  6562.        Inserts a blank vertical column at  the current  position.   The blank
  6563.        column is  filled using  spaces and the default background color.  The
  6564.        current column and all those to  its  right  are  shifted  over.   The
  6565.        right-most  column  is  lost.    The  action  is  reversible using the
  6566.        Restore/Undo command (ALT-R).
  6567.  
  6568.  
  6569.  
  6570.                ALT-- TOGGLE COLOR DRAW MODE
  6571.  
  6572.        Toggles color attribute drawing.   In  this  mode,  moving  the cursor
  6573.        updates the  new character  position to the current edit colors.  This
  6574.        permits easy manual color painting of  a  given  area.    In animation
  6575.        mode, only  those locations  with characters in the animation sequence
  6576.        will be altered.  Unused locations will not be affected.
  6577.  
  6578.        Operation of TheDraw is not changed by this  mode.   Moving the cursor
  6579.        will simply change colors.
  6580.  
  6581.  
  6582.        TheDraw v4.50         TheDraw Command Functions         101
  6583.  
  6584.  
  6585.  
  6586.  
  6587.                ALT-= TOGGLE MACRO LEARN MODE
  6588.                  (registered version only)
  6589.  
  6590.        Activates the  macro learning  mode of TheDrawR.  You are prompted for
  6591.        which macro key to program (0-9).  After specifying the macro, TheDraw
  6592.        remembers everything  you type.   This  is somewhat  akin to animation
  6593.        mode; however, macro learn mode literally  remembers everything.   All
  6594.        editing commands  performed, any  characters typed,  etc...  Up to 512
  6595.        characters will be recorded.
  6596.  
  6597.        Once satisfied with the macro, type ALT-= again  to save  it.   To use
  6598.        the macro,  press ALT  followed by  the proper  number key 0 through 9
  6599.        (do not use the numbers on the keypad).
  6600.  
  6601.        While programming a macro,  selecting  another  macro  chains  the two
  6602.        together.    Chaining  a macro  in this  fashion permits you to create
  6603.        longer macros than available otherwise.   When you  specify the second
  6604.        macro, the one being programmed is saved and learn mode is turned off.
  6605.  
  6606.        To program  the second macro (and continue the sequence), select Alt-=
  6607.        from command mode again.
  6608.  
  6609.        You can create an "endless" macro quite easily.   Simply  have a macro
  6610.        call itself.  For instance, if programming macro 0, type ALT-0.  ie:
  6611.  
  6612.         ALT-= 0 [Enter]     Start programming macro 0.
  6613.         <macro contents>
  6614.         Alt-0
  6615.  
  6616.        TheDraw would repeat the macro contents until ESC was pressed.
  6617.  
  6618.  
  6619.  
  6620.  
  6621.               ALTERNATE COLOR CHANGE OPTIONS
  6622.  
  6623.        For the  experienced user,  TheDraw provides  a more convenient way of
  6624.        adjusting the current status line colors.
  6625.  
  6626.        Pressing Ctrl-Up increments the current foreground color number (found
  6627.        in ALT-A)  and Ctrl-Down decrements it.  These two key combinations do
  6628.        not always work reliably on all  computers (a  Bios flaw  exists).  To
  6629.        get  around  this,  TheDraw  incorporates a special keyboard driver to
  6630.        handle these two keys.  If they do  not work  on your  machine run the
  6631.        SETUP  utility  and  use  "Keyboard Customize" to configure TheDraw to
  6632.        your keyboard.
  6633.  
  6634.        Pressing Ctrl-Right increments the  current  background  color number;
  6635.        Ctrl-Left decrements it.
  6636.  
  6637.  
  6638.  
  6639.  
  6640.        TheDraw v4.50         TheDraw Command Functions         102
  6641.  
  6642.  
  6643.  
  6644.  
  6645.             SHIFT-SPACE: SOLID SPACE CHARACTER
  6646.  
  6647.        As stated elsewhere in this documentation (see ALT-E), the sprite mode
  6648.        of TheDraw makes lower  page layers  appear through  "black spaces" on
  6649.        the  current  page  layer.    This  can  sometimes  be  convenient and
  6650.        sometimes not.  There are instances  when  you  want  to  have  a non-
  6651.        transparent black space on the screen.
  6652.  
  6653.        The Solid  Space performs this function (non-transparent black space).
  6654.        Moving the cursor onto a solid space will  cause the  background color
  6655.        to flicker  as an  indicator.   A Solid  space is  nothing more than a
  6656.        character #255 (which is a blank IBM extended character).
  6657.  
  6658.  
  6659.  
  6660.  
  6661.             CTRL-PRTSC: FULL SCREEN MODE TOGGLE
  6662.  
  6663.        This command toggles screen usage in  TheDraw between  normal and full
  6664.        screen.   In full-screen  mode the  status line  disappears so you can
  6665.        fully use the screen.    Also,  TheDraw  makes  heavy  use  of  pop up
  6666.        windows for  prompts and  messages.   While useful,  it can be awkward
  6667.        since YOU must remember  where you  are at  all times.   For instance,
  6668.        block marking and etc...  It is easy to become confused unless you are
  6669.        careful.  If all else fails, hit ESC a few times to  abort the current
  6670.        command.   Some people  may prefer  this mode  which is fine.  Nothing
  6671.        forces you to use either way.
  6672.  
  6673.        TheDraw will automatically scroll  the video  as necessary,  even with
  6674.        the status  line on.   Full  screen mode  is generally  used to take a
  6675.        complete look at your work.
  6676.  
  6677.        Ctrl-PrtSc only operates from command mode.  It is not available under
  6678.        any  sub  commands  (such  as  Block,  Global,  etc...).  There are no
  6679.        restrictions on full screen use in animation modes.
  6680.  
  6681.  
  6682.  
  6683.  
  6684.  
  6685.  
  6686.  
  6687.  
  6688.  
  6689.  
  6690.  
  6691.  
  6692.  
  6693.  
  6694.  
  6695.  
  6696.  
  6697.  
  6698.        TheDraw v4.50         TheDraw Command Functions         103
  6699.  
  6700.  
  6701.  
  6702.  
  6703.                   THE FONT EDITOR
  6704.  
  6705.  
  6706.        TheDraw has complete support for Ascii class fonts.   These  fonts are
  6707.        letters and symbols drawn using the IBM extended character set.  ie:
  6708.  
  6709.                  ZDDDD?   ZDDDDD?    \\\\
  6710.                  3    3   3 ZD? 3   [_  _[
  6711.                  CDDDD4   3 @DY 3   [\\\\[   etc...
  6712.                  3    3   3 ZD? 3   [____[
  6713.                       @DY @DY   _    _
  6714.  
  6715.        TDFonts is  the management  utility for  adding and  updating the font
  6716.        database.  The utility was designed to be straightforward to learn.
  6717.  
  6718.        There are two types of fonts supported by  TDFonts and  TheDraw: Block
  6719.        and Outline  formatted.   Block fonts are very simple and nothing more
  6720.        than recorded shapes you  enter.   Outline fonts  are special  in that
  6721.        they  can  appear  using  one  of  17 different styles (see "The FONTS
  6722.        Menu").  Included with TheDraw, the  fonts "Outline"  and "BigOutline"
  6723.        are examples of this type.  Some possible types are:
  6724.  
  6725.               ZDDDDD?     ZDDDDD7    [_____[
  6726.               3     3     3     :    [     [
  6727.               3     3     3     :    [     [
  6728.               @DDDDDY     TMMMMM<    _______
  6729.  
  6730.        The choice of formatting types is made when creating a font.  The Font
  6731.        Editor (described later) is used to prepare and update the symbols.
  6732.  
  6733.  
  6734.        RUNNING TDFONTS:
  6735.  
  6736.        To start TDFonts, type from the dos prompt:
  6737.  
  6738.       TDFONTS
  6739.  
  6740.        Press [ENTER] to run the program.   By  default the  program looks for
  6741.        the database file TDFONTS.TDF in the current directory.  To edit other
  6742.        files, list the filename as show:
  6743.  
  6744.       TDFONTS MYFONTS.TDF      (loads MYFONTS.TDF instead of default)
  6745.  
  6746.        Keep in mind only TDFONTS.TDF is actually used by TheDraw.
  6747.  
  6748.  
  6749.  
  6750.  
  6751.  
  6752.  
  6753.  
  6754.  
  6755.  
  6756.        TheDraw v4.50          The Font Editor              104
  6757.  
  6758.  
  6759.  
  6760.  
  6761.        The database is loaded and the font names listed on the screen.  ie:
  6762.  
  6763.       A: Outline
  6764.       B: BigOutline
  6765.       C: Raster
  6766.       D: Rounded
  6767.  
  6768.        Naturally the actual list will vary depending on how the data file has
  6769.        been manipulated.   Along  the bottom  of the  screen are all the edit
  6770.        commands.    These  are  for  viewing,  changing,  adding  new  fonts,
  6771.        importing and exporting fonts, etc...
  6772.  
  6773.  
  6774.        VIEWING FONTS:
  6775.  
  6776.        This command  is for  seeing exactly  how a  given font symbol appears
  6777.        when used in TheDraw.  Any special formatting information is hidden.
  6778.  
  6779.        Select [V]iew from the main menu.  You then must  designate which font
  6780.        should be  displayed.   Use either the up/down arrows keys or type the
  6781.        letter associated with the wanted font.  Press [ENTER] to  continue to
  6782.        continue or [ESC] to return to the main menu.
  6783.  
  6784.        Pressing [ENTER] brings up the font symbol selector bar.  ie:
  6785.  
  6786.           !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNO
  6787.           PQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
  6788.  
  6789.        The  first  character  "!"  is highlighted, and the corresponding font
  6790.        symbol appears below the  selector bar.   You  view symbols  using the
  6791.        arrow keys to choose.  For undefined symbols, the following message is
  6792.        displayed:
  6793.                 Symbol not defined
  6794.  
  6795.        When done, press [ESC] to return to the main menu.
  6796.  
  6797.  
  6798.  
  6799.        CHANGING A FONT:
  6800.  
  6801.        The change command is the used for modifying  or adding  symbols to an
  6802.        existing font.  To create a font, use the [N]ew command.
  6803.  
  6804.        Select [C]hange  from the  main menu.   You  then must designate which
  6805.        font should be worked on.  Use either the up/down arrows keys  or type
  6806.        the letter associated with the wanted font.  Press [ENTER] to continue
  6807.        to continue or [ESC] to return to the main menu.
  6808.  
  6809.  
  6810.  
  6811.  
  6812.  
  6813.  
  6814.        TheDraw v4.50          The Font Editor              105
  6815.  
  6816.  
  6817.  
  6818.  
  6819.        Once a font has been selected,  a screen  similar to  the View command
  6820.        appears.  Additional options are available however:
  6821.  
  6822.       [DEL]       Delete current symbol
  6823.       [INS]       Copying current symbol
  6824.       [ENTER]     Edit or Add symbol
  6825.  
  6826.        These three  commands in  combination with  the font editor (described
  6827.        below) give good flexibility in maintaining the symbol database.
  6828.  
  6829.  
  6830.        DELETE SYMBOL:
  6831.  
  6832.       Removes the database definition for the specified symbol.   You are
  6833.       asked to  verify this  command before  continuing.  Once deleted, a
  6834.       font symbol cannot be restored.
  6835.  
  6836.  
  6837.        COPY SYMBOL:
  6838.  
  6839.       Copies current symbol over  to another  undefined symbol.   You are
  6840.       asked  to  specify  what  the  target  symbol is.  Note: The target
  6841.       symbol cannot be defined.  The prevents overwriting  definitions by
  6842.       accident.    This  option  is  of particular use in duplicating the
  6843.       letters symbols (ie:  "A" to "a", "B" to "b", etc...), assuming you
  6844.       intend uppercase  and lowercase  to appear  the same.  This command
  6845.       permits quickly filling out all the definitions.
  6846.  
  6847.  
  6848.        MODIFY SYMBOL:
  6849.  
  6850.       Transfers the symbol definition  to  the  font  editor.    The font
  6851.       editor is  similar to TheDraw in many respects, supporting a useful
  6852.       subset of functions.  Some  familiarity  with  TheDraw  is assumed.
  6853.       Available editor commands are:
  6854.  
  6855.            [ALT-C]    Clear Screen
  6856.            [ALT-F]    Function key symbol table
  6857.            [ALT-H]    Help Screen
  6858.            [ALT-I]    Insert a blank line
  6859.            [ALT-M]    Toggle line drawing mode
  6860.            [ALT-X]    Leave font editor, saving changes.
  6861.            [ALT-Y]    Delete current line
  6862.              [INS]    Toggle insert mode
  6863.              [DEL]    Delete character under cursor.
  6864.              [ESC]    Leave font editor, discarding changes.
  6865.          [SHIFT-SPACE]    Enter a solid space (a "w" symbol)
  6866.  
  6867.       All function  key sets  are identical  to TheDraw  and are selected
  6868.       using the same keystrokes: [ALT-F1/F10] and [CTRL-F1/F5]
  6869.  
  6870.  
  6871.  
  6872.        TheDraw v4.50          The Font Editor              106
  6873.  
  6874.  
  6875.  
  6876.  
  6877.       EDIT MODES:
  6878.  
  6879.       There are two  main  differences  between  editing  in  TheDraw and
  6880.       TDFonts.    These  refer  to  the  special  edit modes and reserved
  6881.       characters.  The edit modes  are  for  the  two  font  format types
  6882.       (Outline and Block).
  6883.  
  6884.       Outline  formatted  fonts  place  restrictions  on  the  characters
  6885.       composing each symbol.  You can only use  the line  drawing symbols
  6886.       from function  key sets 1 to 4.  In addition, specific symbols must
  6887.       used in specific places for the variable outlines to work properly.
  6888.       Consider the following:
  6889.  
  6890.               UMMMMMM;
  6891.               3 VDD? :        UM;     Horizontal Beam
  6892.               3 :  3 :        3 :        UMMMMMM;
  6893.               3 :  3 :        3 :        @DDDDDD=
  6894.               3 HMM> :        3 :
  6895.               @DDD? V=        @D= < Vertical Column
  6896.               @D=
  6897.  
  6898.       All outline  symbols are  made from vertical columns and horizontal
  6899.       beams.  The "Q" above is a classic example.  The double lines which
  6900.       give the  3D effect  tell TDFonts about the left/right column sides
  6901.       and top/bottom of beams.  The rules of usage are:
  6902.  
  6903.          Double lines are always the rightmost side of a column.
  6904.          Double lines are always the topmost side of a beam.
  6905.  
  6906.       You must  follow  this  guideline  exactly  in  order  to  create a
  6907.       functional  outline  formatted  font.    Not  doing so will produce
  6908.       undesired side effects when changing the outlines in TheDraw.
  6909.  
  6910.  
  6911.       RESERVED CHARACTERS:
  6912.  
  6913.       The  reserved  characters  are  for  solid  spaces  and  specifying
  6914.       descender  lines.    Typically  solid  spaces  are used to fill the
  6915.       inside of columns and beams.  These are drawn with  "w" characters.
  6916.       ie:
  6917.  
  6918.                   UMMMMMMMM;  UMMMMMMMM;
  6919.                   3wwwwwwww:  3wwwwwwww:      Note that solid
  6920.                   3wwVDD?ww:  3wwIMM8ww:      spaces are always
  6921.                   3ww:  3ww:  3ww:  3ww:      visible in TDFonts
  6922.                   3wwHMM>ww:  3ww:  3ww:      verses TheDraw).
  6923.                   3wwwwwwww:  3wwSDDYww:
  6924.                   3wwVDD?ww:  3wwwwwwww:
  6925.                   @DD=  @DD=  @DDDD?wwV=
  6926.                            @DD=&
  6927.  
  6928.  
  6929.  
  6930.        TheDraw v4.50          The Font Editor              107
  6931.  
  6932.  
  6933.  
  6934.  
  6935.       Descenders  also  require  a  special "&" marker.  TheDraw arranges
  6936.       font symbols based on their bottom line.  Note how the "A"  and "Q"
  6937.       were drawn  above.   Lines marked  with ampersands  are not counted
  6938.       when TheDraw aligns the symbols.   Font  symbols  typically needing
  6939.       the descender marks are:
  6940.  
  6941.                 $ , ; _ Q g j p q y
  6942.  
  6943.       Others symbols may require them also, depending on how your font is
  6944.       designed.
  6945.  
  6946.  
  6947.  
  6948.        MAKING NEW FONTS:
  6949.  
  6950.        Creating a new font is a simple two part process.   First  make a font
  6951.        slot with  the [N]ew  command.  Next, use the [C]hange command to fill
  6952.        all the font symbol definitions.
  6953.  
  6954.        After choosing [N]ew, TDFonts prompts for some descriptive name.  This
  6955.        will appear  in the  font listing, and in TheDraw.  Names can be up to
  6956.        12 characters.
  6957.  
  6958.        Once a name is picked name  (which can  be changed  later), you select
  6959.        the font  formatting type.   Choices  are either [B]lock or [O]utline.
  6960.        Refer to "EDIT MODES"  above  for  a  description  of  the difference.
  6961.        Briefly, fonts  of type Block can be drawn using anything - but remain
  6962.        fixed.  As you draw them, they will appear in TheDraw.   Outline fonts
  6963.        can be altered on the fly using the "Outline Type" pulldown command.
  6964.  
  6965.        You have  now generated  a new font slot.  Proceed to use the [C]hange
  6966.        command to define  the  individual  font  symbols.    One  approach to
  6967.        simplify the  procedure is  making a generic symbol such as "O" first.
  6968.        Copy it to other similar symbols (such as "0", "Q", "G", "C", etc...).
  6969.        Only minor edits are needed to finish the first symbols.  Use parts of
  6970.        these to make other symbols, such as "(", ")", and carry onwards.
  6971.  
  6972.        Keep in mind nothing requires you to place letters into  a font.   You
  6973.        could create a font holding several often used patterns or pictures.
  6974.  
  6975.  
  6976.  
  6977.        MOVING A FONT:
  6978.  
  6979.        This command  reorders the  list of  font names.  Use it to place your
  6980.        fonts in alphabetical or any order which you prefer.
  6981.  
  6982.        Press [M], then choose a font (see View command).   Next, TDFonts asks
  6983.        the destination  to put  it.  The font is placed in front of whichever
  6984.        destination font you pick.
  6985.  
  6986.  
  6987.  
  6988.        TheDraw v4.50          The Font Editor              108
  6989.  
  6990.  
  6991.  
  6992.  
  6993.        RENAMING A FONT:
  6994.  
  6995.        Changes font descriptions which appear in the main menu list.   Select
  6996.        [R]ename and  choose a  font.   You are then prompted for the new font
  6997.        name.  Press [ENTER] when done or [ESC] to abort.
  6998.  
  6999.  
  7000.        DELETING A FONT:
  7001.  
  7002.        Permanently removes a font  from the  database file.   Press  [D] then
  7003.        choose the  target font.   TDFonts  asks you to verify this operation.
  7004.        Be careful since deleting a  font  cannot  be  undone.    Type  [Y] to
  7005.        proceed with erasing the font or [N] to abort.
  7006.  
  7007.  
  7008.  
  7009.        FONT IMPORTING:
  7010.  
  7011.        Appends  a  separate  database  file  onto the current database file.
  7012.        Press [I], and TDFonts prompts for a filename.   Type  in the pathname
  7013.        to the  import file.   Press [ENTER] to continue or [ESC] to abort the
  7014.        command.
  7015.  
  7016.        Upon pressing [ENTER] all fonts contained in the specified import file
  7017.        are loaded  and added  to the current database list.  An error message
  7018.        appears if the file was invalid.
  7019.  
  7020.  
  7021.  
  7022.        FONT EXPORTING:
  7023.  
  7024.        Copies fonts in the current database to another file.   Press [E], and
  7025.        choose  the  font  to  export/copy.    TDFonts  prompts for the output
  7026.        filename.  Enter your filename and press [ENTER] to continue  or [ESC]
  7027.        to abort.
  7028.  
  7029.        After hitting  [ENTER], TDFonts  checks to  see if  the file specified
  7030.        already exists.  If so, type [Y] to overwrite the existing file or [N]
  7031.        to abort this command.
  7032.  
  7033.        The new font file is generated and you return to the main menu.
  7034.  
  7035.  
  7036.  
  7037.  
  7038.  
  7039.  
  7040.  
  7041.  
  7042.  
  7043.  
  7044.  
  7045.  
  7046.        TheDraw v4.50          The Font Editor              109
  7047.  
  7048.  
  7049.  
  7050.  
  7051.                  THE PRESENTATION PROGRAM
  7052.  
  7053.  
  7054.        The Presentation  Program (THEPP) included with the registered version
  7055.        of TheDraw is a  command  line  driven  utility  intended  to simplify
  7056.        displays and  demonstrations.   It is flexible and easy to use.  THEPP
  7057.        can display any file loadable by TheDraw (Ansi,  Ascii, Binary, BSave,
  7058.        Object and TheDraw formats).  As with TheDraw, the filename extensions
  7059.        tell THEPP what format a  given  file  is  saved  in.    The following
  7060.        extensions are used (but changeable via the SETUP utility):
  7061.  
  7062.                   Binary Dump        .BIN
  7063.                   Basic BSAVE        .BSV
  7064.                   TheDraw COM Files  .COM
  7065.                   TheDraw OBJ Files  .OBJ
  7066.                   TheDraw Format     .TD
  7067.  
  7068.        Any other  file is assumed to be either Ansi or Ascii.  TheDraw format
  7069.        files store which page layer was  being edited.   THEPP  displays only
  7070.        this page  layer.  If sprite mode was turned on, any page layers below
  7071.        the current one will appear also ("under" the current layer).
  7072.  
  7073.        THEPP takes as its parameters a  list of  filenames to  display on the
  7074.        screen.   This it  will do  as fast and efficiently as possible unless
  7075.        otherwise stated (on other  words,  you  will  probably  want  to slow
  7076.        things down a bit).
  7077.  
  7078.        The  following  options  may  be  interspersed anywhere in the command
  7079.        line, before between or after, any  filenames.   Options are specified
  7080.        by using a slash followed by one of these characters:
  7081.  
  7082.       Character       Action
  7083.  
  7084.           p       Stops THEPP  the display  of pause  messages on the
  7085.               screen.  Note the pauses are still performed.
  7086.  
  7087.           k       Pause for a key  to be  pressed by  user.   This is
  7088.               useful for  placing between  files, so you can stop
  7089.               to appreciate what is shown.  See also /i command.
  7090.  
  7091.           t<num>      Pauses for <num> number of seconds.   Valid numbers
  7092.               for <num> are 1 to 255 seconds.  ie:
  7093.  
  7094.                    /t10   (pause for ten seconds)
  7095.  
  7096.           s<num>      Animation display speed.  This is a slowdown factor
  7097.               identical to the value you enter  when using ALT-Q.
  7098.               It is  used whenever  THEPP displays a Ansi, Ascii,
  7099.               or TheDraw format file.   ie:  s10  slows  down the
  7100.               file display equivalent to an ALT-Q value of 10.
  7101.  
  7102.  
  7103.  
  7104.        TheDraw v4.50         The Presentation Program          110
  7105.  
  7106.  
  7107.  
  7108.  
  7109.       Character       Action (continued)
  7110.  
  7111.           b       Produces a beep on the computer speaker.
  7112.  
  7113.           c       Clears the  screen.   THEPP by default does nothing
  7114.               before displaying a file.  If you wish to clear the
  7115.               screen beforehand use this option.
  7116.  
  7117.           m<x>,<y>    Moves  the  cursor  to  horizontal position <x> and
  7118.               vertical position  <y>.    Useful  if  you  want to
  7119.               control where  an Ansi  or Ascii file will start to
  7120.               appear on the screen, or wish to display  a message
  7121.               using the command below.  ie:
  7122.  
  7123.                  /m40,12   (move cursor to center of screen)
  7124.  
  7125.           a<f>,<b>    Changes   text   output   color  to  the  specified
  7126.               foreground and background colors.   Colors  are the
  7127.               same as listed under ALT-A, but are repeated below:
  7128.  
  7129.                   Black           DGray     (Dark Gray)
  7130.                   Blue            LBlue     (Light Blue)
  7131.                   Green           LGreen    (Light Green)
  7132.                   Cyan            LCyan     (Light Cyan)
  7133.                   Red             LRed      (Light Red)
  7134.                   Magenta         LMagenta  (Light Magenta)
  7135.                   Brown           Yellow
  7136.                   LGray (Light Gray)  White
  7137.  
  7138.               Foreground  colors   may  be   any  of  the  above.
  7139.               Background colors are restricted to the first eight
  7140.               however (Black to LGray).  ie:
  7141.  
  7142.                   /aYellow,Cyan  (Yellow on Cyan background)
  7143.  
  7144.           "text"      Displays  any  message  or text between the quotes.
  7145.               The  message  MUST  be   terminated  by   a  quote,
  7146.               otherwise  THEPP  assumes  the  rest of the command
  7147.               line is a message.  This is useful  if you  wish to
  7148.               display your  own "Press any key to continue" style
  7149.               message, etc...  Use the "m" option described above
  7150.               to  position  messages  anywhere on the screen, and
  7151.               "a" option to select appropriate colors.  ie:
  7152.  
  7153.                       /"Hello World"
  7154.  
  7155.               Prints  message  "Hello   World"   (without  quotes
  7156.               naturally) at cursor position.
  7157.  
  7158.  
  7159.  
  7160.  
  7161.  
  7162.        TheDraw v4.50         The Presentation Program          111
  7163.  
  7164.  
  7165.  
  7166.  
  7167.           v<size>     Specify video  size to  use.   Either 25, 43, or 50
  7168.               vertical  lines.    Note  the  43  &  50 parameters
  7169.               operate identically  (43 lines  always selected for
  7170.               EGA adapter, 50 for VGA).  ie:
  7171.  
  7172.                  /v50  (select VGA 50 line display)
  7173.  
  7174.           f<filename> Directs THEPP  to  obtain  more  commands  from the
  7175.               specified file.   This command file simply contains
  7176.               a list of the above  commands.    In  addition, the
  7177.               command  file  may  call upon another command file.
  7178.               Once  that  nested   command   file   is  finished,
  7179.               execution returns  to the  following instruction in
  7180.               the first file.   Up to  ten levels  of nesting may
  7181.               be active at once.  ie:
  7182.  
  7183.                        /fCOMMANDS.FIL
  7184.  
  7185.               Use file COMMANDS.FIL as source for next commands.
  7186.  
  7187.  
  7188.        If you  do not  give any parameters, THEPP will display an abbreviated
  7189.        help screen for convenience.  Examples of THEPP usage and explanations
  7190.        are given below:
  7191.  
  7192.  
  7193.        THEPP /c/p SHUTTLE2.ANS /m34,25 /aYellow,Black /"Press a key" /k/c
  7194.  
  7195.       Clears the  screen, and  turns off  the display  of pause messages.
  7196.       The Ansi text demo file SHUTTLE2.ANS is displayed,  followed by the
  7197.       message "Press  a key" in Yellow approximately in the center of the
  7198.       bottom line.  THEPP then waits  for  a  key  to  be  pressed before
  7199.       clearing the screen and returning to Dos.
  7200.  
  7201.  
  7202.        THEPP DEMO.TD /c /m38,12 /"BLIP" /b/p/t10 /m1,20
  7203.  
  7204.       Displays the current page layer of DEMO.TD, then immediately clears
  7205.       the screen, displays "BLIP" in the middle of the screen, and sounds
  7206.       the speaker.  The cursor is then placed at the beginning of line 20
  7207.       and THEPP exits.
  7208.  
  7209.  
  7210.        THEPP SOMEFILE.ASC
  7211.  
  7212.       Displays the contents of the Ascii file SOMEFILE.ASC on the screen.
  7213.       Equivalent to using "TYPE SOMEFILE.ASC".
  7214.  
  7215.  
  7216.  
  7217.  
  7218.  
  7219.  
  7220.        TheDraw v4.50         The Presentation Program          112
  7221.  
  7222.  
  7223.  
  7224.  
  7225.        THEPP /fCOMMAND1.FIL /m1,6 /"All done!"
  7226.  
  7227.       Makes THEPP  obtain its  next commands  from the file COMMAND1.FIL.
  7228.       This file simply contains a list  of command  line parameters.   An
  7229.       example might be:
  7230.  
  7231.          Filename #1:  COMMAND1.FIL
  7232.         /m1,1
  7233.         /"Command file 1 running - Running command file 2"
  7234.         /fCOMMAND2.FIL
  7235.         /m1,5
  7236.         /"Command file 1 resumed."
  7237.  
  7238.  
  7239.          Filename #2:  COMMAND2.FIL
  7240.         /m1,2
  7241.         /"Command file 2 running - Running command file 3"
  7242.         /fCOMMAND3.FIL
  7243.         /m1,4
  7244.         /"Command file 2 resumed."
  7245.  
  7246.  
  7247.          Filename #3:  COMMAND3.FIL
  7248.         /m1,3
  7249.         /"Command file 3 running"
  7250.  
  7251.       In this  example, command files are nest two levels deep.  In other
  7252.       words, COMMAND1.FIL  calls  COMMAND2.FIL  which  calls COMMAND3.FIL
  7253.       which then exits back to COMMAND2.FIL which then exits finally back
  7254.       to COMMAND1.FIL.  THEPP allows nesting to go  ten (10)  levels deep
  7255.       for a  large amount of complexity.  Running the above example would
  7256.       produce the output:
  7257.  
  7258.          Command file 1 running - Running command file 2
  7259.          Command file 2 running - Running command file 3
  7260.          Command file 3 running
  7261.          Command file 2 resumed
  7262.          Command file 1 resumed
  7263.          All done!
  7264.  
  7265.       Note:  Conceivably, an semi-endless  loop  is  possible.    In this
  7266.       case, a  command file would call itself (ie: replace /fCOMMAND2.FIL
  7267.       with /fCOMMAND1.FIL in the above example).  If this occurred, THEPP
  7268.       would open  the same  command file 10 times then stop with an error
  7269.       message.
  7270.  
  7271.  
  7272.  
  7273.  
  7274.  
  7275.  
  7276.  
  7277.  
  7278.        TheDraw v4.50         The Presentation Program          113
  7279.  
  7280.  
  7281.  
  7282.  
  7283.                  THE SETUP UTILITY
  7284.  
  7285.  
  7286.        This section describes  how  to  customize  TheDraw  and  install your
  7287.        customizations   in   the   THEDRAW.EXE  or  THEDRAWR.EXE  (registered
  7288.        version) files.
  7289.  
  7290.  
  7291.        WHY SETUP?
  7292.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  7293.        Setup is the  TheDraw  installation  program;  used  to  customize the
  7294.        TheDraw program (.EXE) file.  With this utility you can specify screen
  7295.        modes, change edit colors  and customize  various other  defaults.  It
  7296.        directly  modifies  various  parameter  values  within  your  copy  of
  7297.        THEDRAW.EXE or THEDRAWR.EXE.
  7298.  
  7299.        Via Setup you can do the following:
  7300.  
  7301.       o  Setup the default video display mode
  7302.  
  7303.       o  Change screen colors
  7304.  
  7305.       o  Resize TheDraw's usage of available memory
  7306.  
  7307.       o  Change save screen default parameters.
  7308.  
  7309.       o  Specify initial default filespec wildcards.
  7310.  
  7311.  
  7312.        In the registered version of TheDraw, the Setup utility can also:
  7313.  
  7314.       o  Customize or "remap" the editor command keys and mouse buttons.
  7315.  
  7316.       o  Setup a path to the directory where help files are stored.
  7317.  
  7318.  
  7319.        TheDraw comes ready to run; there is no mandatory installation.  After
  7320.        setting up as specified in "GETTING STARTED", TheDraw is usable.
  7321.  
  7322.        However, you  will need  to run  Setup if  you want  to do  any of the
  7323.        following:
  7324.  
  7325.       o  Change TheDraw default colors.
  7326.  
  7327.       o  Force a display mode or "snow" checking
  7328.  
  7329.       o  Customize the editor commands to preferred sequences.
  7330.  
  7331.       o  Adjust memory usage to better suit your needs.
  7332.  
  7333.  
  7334.  
  7335.  
  7336.        TheDraw v4.50         The Presentation Program          114
  7337.  
  7338.  
  7339.  
  7340.  
  7341.        DISPLAY WINDOWS AND SELECTING OPTIONS
  7342.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  7343.        The setup utility operates  in  a  windowing  user  environment.   You
  7344.        select commands by either pressing the highlighted capital letter of a
  7345.        given option, or using  the Up  and Down  arrow keys  to move  to your
  7346.        selection and then pressing [ENTER].
  7347.  
  7348.  
  7349.        SAVING AND ABORTING CHANGES
  7350.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  7351.        In general,  pressing [ENTER]  will save  any changes.  Pressing [ESC]
  7352.        (as many times as needed) will abort a function and return you  from a
  7353.        submenu to  the main  installation menu.  Where this convention is not
  7354.        followed, instructions are displayed on screen for you.
  7355.  
  7356.  
  7357.        RUNNING SETUP
  7358.        DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  7359.        To get started, from the Dos prompt type:
  7360.  
  7361.       SETUP
  7362.  
  7363.        Press [ENTER] to start the utility.   Once  running, you  are prompted
  7364.        for the program filename to configure.  You can have several different
  7365.        customized copies of TheDraw on your system.  These various  copies of
  7366.        THEDRAW.EXE can  each have  different executable  program names.  This
  7367.        allows you to prepare various editor command-keys, menu colors, etc...
  7368.        if  you  are  so  inclined.   The registered program version is called
  7369.        THEDRAWR.EXE.
  7370.  
  7371.        After selecting a file  to  edit,  SETUP  determines  what  version of
  7372.        TheDraw is  being updated (shareware or registered).  It then proceeds
  7373.        to the main menu.
  7374.  
  7375.  
  7376.        THE MAIN MENU:
  7377.  
  7378.        The  main  setup  menu  displays  all  the  primary  areas  which  are
  7379.        configurable.   Options available  are Editor configuration*, Keyboard
  7380.        customize, Screen mode, Colors,  Help and  overlay file  path*, Memory
  7381.        usage, Defaults, or Quit/Save.  These are described below.
  7382.  
  7383.        * Available while editing the registered version only.
  7384.  
  7385.  
  7386.  
  7387.  
  7388.  
  7389.  
  7390.  
  7391.  
  7392.  
  7393.  
  7394.        TheDraw v4.50         The Presentation Program          115
  7395.  
  7396.  
  7397.  
  7398.  
  7399.        EDITOR CONFIGURATION:
  7400.  
  7401.       The  editor  in  TheDraw  provides  many features, including cursor
  7402.       control, color changing, various  text  operations,  etc...   These
  7403.       editing commands  are assigned  to certain keystrokes, as described
  7404.       earlier throughout this documentation.   This  setup option permits
  7405.       you to change the default assignments for each function.
  7406.  
  7407.       When you  select Editor  Configuration from  SETUP's main menu, the
  7408.       editor installation screen appears.   Three  columns of information
  7409.       will be immediately notable:
  7410.  
  7411.          o  The  first  (left-most)  column  describes  each configurable
  7412.         function available in the editor.
  7413.  
  7414.          o  The second column lists Primary keystrokes.   These  keys are
  7415.         the defaults by which TheDraw normally operates.
  7416.  
  7417.          o  The  third  column  lists  Secondary  keystrokes.   These are
  7418.         optional alternates keystrokes  you  may  press  to  invoke a
  7419.         given   editor   action.      These  keystrokes  always  take
  7420.         precedence over the primary keystrokes described above.
  7421.  
  7422.       Along the bottom of the screen is a list of the keys used to select
  7423.       and modify entries.
  7424.  
  7425.          Key          Action
  7426.          DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  7427.          [UP] [DOWN]      Selects the editor command you wish to change.
  7428.  
  7429.          [PGUP] [PGDN]    Scrolls up/down one full screen page.
  7430.  
  7431.          [ENTER]          Enters the secondary keystroke modify mode.
  7432.  
  7433.          [R]          Restore  all  editor  commands  to the original
  7434.                   default values.
  7435.  
  7436.          [ESC]            Returns to the main SETUP options menu.
  7437.          DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  7438.  
  7439.       After pressing [ENTER] to modify a  command, the  current secondary
  7440.       definition disappears.   You  can then type in your new definition.
  7441.       Anything may  be used  for redefining  a key  except Numbers (0-9),
  7442.       Letters (A-Z,a-z),  [ENTER], [ESC]  and [BACKSPACE].   A maximum of
  7443.       four keystrokes for any given editor  command is  allowed; however,
  7444.       certain  key  combinations  are  equal  to  two  keystrokes.  These
  7445.       include ALT-(key), cursor movement keys ([UP],  [PGDN], etc...) and
  7446.       any keystroke involving a function key ([F1], [CTRL-F4], etc...).
  7447.  
  7448.  
  7449.  
  7450.  
  7451.  
  7452.        TheDraw v4.50         The Presentation Program          116
  7453.  
  7454.  
  7455.  
  7456.  
  7457.       Press  [ESC]  to  save  any  changes  to  keystrokes.   You will be
  7458.       prompted  to  verify  the  save.    If  there   are  any  duplicate
  7459.       keystrokes, SETUP  will point  out the  first occurrence so you can
  7460.       clear up the problem (marked with an asterisk).
  7461.  
  7462.  
  7463.  
  7464.        KEYBOARD CUSTOMIZE:
  7465.  
  7466.       The true IBM-PC and certain clones have a  Bios omission preventing
  7467.       the [CTRL-UP],  [CTRL-DOWN], [ALT-LEFT]  and [ALT-RIGHT] keystrokes
  7468.       from working properly.  TheDraw gets around this by using  a custom
  7469.       keyboard driver.   The  factory defaults from TheSoft will work for
  7470.       the great majority of computers.  However, if you have difficulties
  7471.       try this setup configuration option.
  7472.  
  7473.       SETUP examines  the keyboard  hardware to see what happens when any
  7474.       of the above are pressed.  Upon selecting  this option,  the screen
  7475.       clears and  prompts if you wish to continue.  Next you are asked to
  7476.       press [CTRL-UP], [CTRL-DOWN], [ALT-LEFT]  and  [ALT-RIGHT]  in that
  7477.       order.  The scan codes returned by your keyboard are displayed.
  7478.  
  7479.       Next you  can experiment  to see  that everything is indeed working
  7480.       properly.    Press   [CTRL-UP/DOWN]   and   [ALT-LEFT/RIGHT]  until
  7481.       satisfied  the  keys  were  programmed correctly.  Press [ENTER] to
  7482.       return to the main menu.
  7483.  
  7484.       Note:
  7485.          A few computers react badly to  this driver.   If  your computer
  7486.          does  not  operate  as  expected when running TheDraw, start the
  7487.          setup utility by typing (from the dos prompt):
  7488.  
  7489.            SETUP *
  7490.  
  7491.          Press [ENTER] to start  Setup.    The  current  settings  of the
  7492.          keyboard driver will be displayed.  Respond [Y]es or [N]o if the
  7493.          setting is correct.    If  after  deactivating  the  driver your
  7494.          computer still locks, please contact TheSoft.
  7495.  
  7496.  
  7497.  
  7498.        SCREEN MODE:
  7499.  
  7500.       Normally,  THEDRAW  will  automatically determine the correct video
  7501.       mode of your computer.  You should only  need to  change the Screen
  7502.       mode option if:
  7503.  
  7504.          o  you think TheDraw is incorrectly detecting your hardware.
  7505.  
  7506.          o  you have a Color Graphics Adapter (CGA) that does not produce
  7507.         the "snow" or hashing effect.
  7508.  
  7509.  
  7510.        TheDraw v4.50         The Presentation Program          117
  7511.  
  7512.  
  7513.  
  7514.  
  7515.          o  You have an EGA or VGA video card and wish to always start in
  7516.         43/50 line edit mode.
  7517.  
  7518.          o  your computer  has a composite or LCD video screen, appearing
  7519.         like a CGA but with only one color.  In  this case,  you want
  7520.         the Black and White screen option.
  7521.  
  7522.       Upon pressing  S to  select this  option, a pop-up menu will appear
  7523.       with the available options.  These are fairly apparent:
  7524.  
  7525.  
  7526.       DEFAULT
  7527.  
  7528.          TheDraw will operate in the mode active when first run.
  7529.  
  7530.  
  7531.       BLACK AND WHITE
  7532.  
  7533.          TheDraw will use composite black  and  white  mode  (80 column),
  7534.          regardless  of  the  active  mode  when first run.  The original
  7535.          video mode will be selected when you exit TheDraw.
  7536.  
  7537.  
  7538.       COLOR
  7539.  
  7540.          TheDraw will use color mode (80 column), regardless of what mode
  7541.          active when first run.  The original video mode will be selected
  7542.          when you exit TheDraw.
  7543.  
  7544.  
  7545.       EGA/VGA
  7546.  
  7547.          TheDraw  will  use  color  mode  (80  column)  and  43/50 lines,
  7548.          regardless  of  what  mode  was active initially.  Initial video
  7549.          mode is restored upon exit from TheDraw.
  7550.  
  7551.  
  7552.       MONOCHROME
  7553.  
  7554.          TheDraw uses monochrome video mode,  and  switches  back  to the
  7555.          previous mode upon exiting.
  7556.  
  7557.       After selecting one of the first three options above (Default, B&W,
  7558.       or Color), SETUP checks the screen for snow.   If  you see  snow or
  7559.       hashing, respond Yes to the prompt that appears.
  7560.  
  7561.  
  7562.  
  7563.  
  7564.  
  7565.  
  7566.  
  7567.  
  7568.        TheDraw v4.50         The Presentation Program          118
  7569.  
  7570.  
  7571.  
  7572.  
  7573.        COLOR CONFIGURATION:
  7574.  
  7575.       TheDraw holds  three complete  sets of  configurable colors.  Which
  7576.       color set is used depends  on  the  initial  screen  mode specified
  7577.       above.   The sets  are for  Color, Black  and White, and Monochrome
  7578.       screen users.  A pop-up window prompts for which set to edit.
  7579.  
  7580.       After selecting a color  set, another  pop-up prompts  for the item
  7581.       type to configure.  Options are the Edit Screen, Main Help Display,
  7582.       Directory  (Load/View)  Screen,  Pop-up  help,  and  Pull-Down menu
  7583.       display.
  7584.  
  7585.       Next,  a  menu  of  configurable  items  under  that  type appears.
  7586.       Selecting one displays a view port and list  of available  colors.
  7587.       The view  port shows  an example  of the screen item you chose.  It
  7588.       also reflects any changes in colors as you scroll through the color
  7589.       palette.
  7590.  
  7591.       Use  the  arrows  keys  to  select  a color to your liking from the
  7592.       palette.  Watch the view port  to see  how the  item looks  in that
  7593.       color.  Press [ENTER] or [ESC] to save your choice.
  7594.  
  7595.       Now repeat  this procedure  for every screen color item you want to
  7596.       customize.  When done,  press [ESC]  until you  return to  the main
  7597.       SETUP menu.
  7598.  
  7599.  
  7600.  
  7601.        FILES DIRECTORY:
  7602.  
  7603.       The Files  Directory is  used by  TheDraw to  find its  files.  The
  7604.       shareware version looks for the pick list file (THEDRAW.PCK) there.
  7605.       The registered  version of TheDraw looks for its help and macro key
  7606.       files there in addition.
  7607.  
  7608.       The current setting is  displayed for  you.   To change  it, simply
  7609.       type in the new directory.  Enter a period (.) by itself to use the
  7610.       current directory  of Dos  when TheDraw  is loaded.   Press [ENTER]
  7611.       without entry to leave unchanged.
  7612.  
  7613.  
  7614.  
  7615.  
  7616.  
  7617.  
  7618.  
  7619.  
  7620.  
  7621.  
  7622.  
  7623.  
  7624.  
  7625.  
  7626.        TheDraw v4.50         The Presentation Program          119
  7627.  
  7628.  
  7629.  
  7630.  
  7631.        MEMORY USAGE:
  7632.  
  7633.       TheDraw always  tries to allocate all available memory up to limits
  7634.       specified by this SETUP option.  When fully configured, TheDraw can
  7635.       use  as  much  as  410k  of  memory.  Memory is allocated first for
  7636.       screen page layers and then for the animation system.
  7637.  
  7638.       If you have limited memory, there might not  be enough  space for 8
  7639.       page layers and 16000 animation entries (maximum usage).  There may
  7640.       however be enough  space  for  4  page  layers  and  5000 animation
  7641.       entries, or just one layer, or anything in between.
  7642.  
  7643.       This  is  when  you  may  wish  to  override  the  automatic memory
  7644.       allocation.  To make  TheDraw operate  as in  earlier versions, you
  7645.       would  want  just  2  page  layers  and 5000 entries.  Feel free to
  7646.       experiment.  Keep in mind that TheDraw will scale down all settings
  7647.       when loaded if there is insufficient memory.
  7648.  
  7649.       Upon selecting  this option  the current settings are displayed for
  7650.       you.  The amount of memory occupied by  screen page  layers and the
  7651.       animation system  is also  indicated.   If you  wish to change them
  7652.       answer Yes to the prompt.  You can then enter new values for both.
  7653.  
  7654.  
  7655.  
  7656.        DEFAULTS:
  7657.  
  7658.       TheDraw has certain default  values  used  throughout  the program.
  7659.       Some of these are:
  7660.  
  7661.          o  Initial edit colors
  7662.          o  Default file extensions
  7663.          o  Default file save parameters
  7664.          o  Sticky directory wildcards
  7665.          o  Initial work file directory
  7666.          etc...
  7667.  
  7668.       Selecting Defaults  from the main setup menu displays a screen with
  7669.       several fields.  Use the up and down arrow keys to select the field
  7670.       you wish  to change.   PgUp/PgDn switches between the three screens
  7671.       of options.  To  change a  value follow  the on  screen directions.
  7672.       Pressing [R]  at any  time restores  all "factory" defaults.  Press
  7673.       [ESC] when satisfied with your changes.
  7674.  
  7675.       Note: Many of the defaults may be changed  using TheDraw's internal
  7676.       Setup screen also.
  7677.  
  7678.  
  7679.  
  7680.  
  7681.  
  7682.  
  7683.  
  7684.        TheDraw v4.50         The Presentation Program          120
  7685.  
  7686.  
  7687.  
  7688.  
  7689.        QUIT/SAVE:
  7690.  
  7691.       Once all  changes are completed, select Quit/save at the main SETUP
  7692.       menu.  The message:
  7693.  
  7694.                 Save Changes? (Y/N)
  7695.  
  7696.       appears along the bottom line of  the screen.   Reply  Yes, and all
  7697.       the changes  you have  made will  be saved into TheDraw.  Reply No,
  7698.       and all your changes are ignored.  After  either reply,  you return
  7699.       to the dos prompt.
  7700.  
  7701.       If you ever decide to reset TheDraw completely to factory defaults,
  7702.       simply copy the EXE program file from your  original disk  (you did
  7703.       make  one  right?)  onto  your  work  disk.  If you -just- want the
  7704.       editor commands restored, type [R] under the editor configuration.
  7705.  
  7706.  
  7707.  
  7708.  
  7709.  
  7710.  
  7711.  
  7712.  
  7713.  
  7714.  
  7715.  
  7716.  
  7717.  
  7718.  
  7719.  
  7720.  
  7721.  
  7722.  
  7723.  
  7724.  
  7725.  
  7726.  
  7727.  
  7728.  
  7729.  
  7730.  
  7731.  
  7732.  
  7733.  
  7734.  
  7735.  
  7736.  
  7737.  
  7738.  
  7739.  
  7740.  
  7741.  
  7742.        TheDraw v4.50         The Presentation Program          121
  7743.  
  7744.  
  7745.  
  7746.  
  7747.                     APPENDIX A
  7748.  
  7749.                    SETTING UP CONFIG.SYS
  7750.  
  7751.  
  7752.        The ANSI driver must  be installed  to display  Ansi color  images and
  7753.        Ansi animation  files via  the Dos  TYPE command.  This can be done by
  7754.        adding a 'DEVICE=ANSI.SYS' statement to your CONFIG.SYS file.   If you
  7755.        do  not  have  a  CONFIG.SYS  file,  you  can create one by typing the
  7756.        following in your root directory:
  7757.  
  7758.               COPY CON CONFIG.SYS<enter>
  7759.               DEVICE=ANSI.SYS<enter>
  7760.               ^Z<enter>           ( <-- press CTRL and Z )
  7761.  
  7762.        If you have a CONFIG.SYS file, append the sequence with:
  7763.  
  7764.               EDLIN CONFIG.SYS<enter>
  7765.               #I<enter>
  7766.               DEVICE=ANSI.SYS<enter>
  7767.               ^Z<enter>           ( <-- press CTRL and Z )
  7768.               E<enter>
  7769.  
  7770.        For this to work properly, the ANSI.SYS file must also be in  the root
  7771.        directory of your boot disk or hard drive (whichever is applicable).
  7772.  
  7773.        People wanting  to use  a mouse  with TheDraw  may have  to install an
  7774.        additional file in  their  CONFIG.SYS  file.    If  a  driver  must be
  7775.        installed, follow  the above instructions using the name of your mouse
  7776.        driver (ie: MSMOUSE.SYS or  MOUSE.SYS,  etc...)  instead  of ANSI.SYS.
  7777.        Additional parameters  may be  required.   Please refer  to the manual
  7778.        that came with your mouse for more details.
  7779.  
  7780.        There are many other useful statements  that  can  be  placed  in your
  7781.        CONFIG.SYS file.   Two  which can dramatically improve the performance
  7782.        of DOS are:
  7783.  
  7784.                      BUFFERS=10
  7785.                      FILES=10
  7786.  
  7787.        Add these as stated above.  If you  created a  new CONFIG.SYS  for the
  7788.        DEVICE=ANSI.SYS clause by COPY CON, then append these using the second
  7789.        method.  Enjoy!
  7790.  
  7791.  
  7792.  
  7793.  
  7794.  
  7795.  
  7796.  
  7797.  
  7798.  
  7799.  
  7800.        TheDraw v4.50            Appendix A             122
  7801.  
  7802.  
  7803.  
  7804.  
  7805.                     APPENDIX B
  7806.  
  7807.               EXTENDED/SPECIAL CHARACTER SET
  7808.  
  7809.  
  7810.        The  following  lists  every  symbol  available  in  the  IBM extended
  7811.        character  set.    These  are  all  found  in the 15 special character
  7812.        function key sets supported by TheDraw.
  7813.  
  7814.  
  7815.         Code Symbol     Code Symbol     Code Symbol     Code Symbol
  7816.  
  7817.          128            160             192   @         224   `
  7818.          129            161   !         193   A         225   a
  7819.          130            162   "         194   B         226   b
  7820.          131            163   #         195   C         227   c
  7821.          132            164   $         196   D         228   d
  7822.          133            165   %         197   E         229   e
  7823.          134            166   &         198   F         230   f
  7824.          135            167   '         199   G         231   g
  7825.          136            168   (         200   H         232   h
  7826.          137                169   )         201   I         233   i
  7827.          138   
  7828.          170   *         202   J         234   j
  7829.          139             171   +         203   K         235   k
  7830.          140             172   ,         204   L         236   l
  7831.          141            173   -         205   M         237   m
  7832.          142            174   .         206   N         238   n
  7833.          143            175   /         207   O         239   o
  7834.          144            176   0         208   P         240   p
  7835.          145            177   1         209   Q         241   q
  7836.          146            178   2         210   R         242   r
  7837.          147            179   3         211   S         243   s
  7838.          148            180   4         212   T         244   t
  7839.          149            181   5         213   U         245   u
  7840.          150            182   6         214   V         246   v
  7841.          151            183   7         215   W         247   w
  7842.          152            184   8         216   X         248   x
  7843.          153            185   9         217   Y         249   y
  7844.          154            186   :         218   Z         250   z
  7845.          155            187   ;         219   [         251   {
  7846.          156            188   <         220   \         252   |
  7847.          157            189   =         221   ]         253   }
  7848.          158            190   >         222   ^         254   ~
  7849.          159            191   ?         223   _         255   solid spc
  7850.  
  7851.  
  7852.  
  7853.  
  7854.  
  7855.  
  7856.  
  7857.  
  7858.  
  7859.        TheDraw v4.50            Appendix B             123
  7860.  
  7861.  
  7862.  
  7863.  
  7864.                     APPENDIX C
  7865.  
  7866.                 COMMON QUESTIONS & ANSWERS
  7867.  
  7868.        In an  attempt  to  help  users  with  commonplace  difficulties, this
  7869.        section answers some of the more frequent questions.
  7870.  
  7871.        Q:   When  saving  a  full  screen  Ansi file, TheDraw reports it used
  7872.         only 3 or 4 lines.  Did something go wrong?
  7873.  
  7874.        A:   No.  The number TheDraw reports  is the  number of  output lines.
  7875.         This  is  the  number  of  text  lines,  for  instance, used when
  7876.         uploading such an Ansi screen to a BBS system.   TheDraw normally
  7877.         puts  as  much  information  onto  a  given  output  text line as
  7878.         possible.  A number of the Ansi screen lines could be placed onto
  7879.         one output line; however, the file will display as expected.
  7880.        ----
  7881.        Q:   Why does  TheDraw display  garbage when  I load captured graphics
  7882.         screens?
  7883.  
  7884.        A:   TheDraw is not designed  to handle  high resolution  graphics per
  7885.         say.   TheDraw handles only text images.  It is similar to a word
  7886.         processor in that regard.
  7887.        ----
  7888.        Q:   How can TheDraw support imbedded Ansi BBS control sequences?
  7889.  
  7890.        A:   Previously  users  had  to  resort  to  Animation  Include files,
  7891.         however starting  with TheDraw  v4.0, user  control sequences are
  7892.         directly supported.  Refer  to  command  ALT-J,User-Seq  for more
  7893.         information.
  7894.        ----
  7895.        Q:   How can  I control  the location of the cursor after an Ansi file
  7896.         is displayed?
  7897.  
  7898.        A:   The easiest way is to  convert  your  Ansi  screen  to Animation.
  7899.         Select the  ALT-J, and  the "Top"  scanner.  The top scanner will
  7900.         make your Ansi file  display as  before.   You could  choose some
  7901.         other if you like.  Next, move the cursor where you would like to
  7902.         appear after the display is finished, and press the [SPACE] bar.
  7903.  
  7904.         The space  will  become  the  last  character  displayed  and the
  7905.         position where TheDraw leaves the cursor.
  7906.        ----
  7907.        Q:   Can I  use images  created with  this software in my own programs
  7908.         for public use (or sale)?
  7909.  
  7910.        A:   Yes.  There are  absolutely no  restrictions on  work you create.
  7911.         You  might  add  a  mention  "Screens  produced  by TheDraw", but
  7912.         TheSoft certainly does not require it.
  7913.  
  7914.  
  7915.  
  7916.  
  7917.        TheDraw v4.50            Appendix C             124
  7918.  
  7919.  
  7920.  
  7921.        Q:   How do I upload Ansi files to another computer (a  bulletin board
  7922.         system)?
  7923.  
  7924.        A:   Ansi files  are sent  identically to regular text messages, using
  7925.         your communication  programs Ascii  upload option.   Before doing
  7926.         so, be  aware some  BBS's explicitly do not support Ansi.  If you
  7927.         pass the first hurdle, note  some  BBS's  feature  automatic text
  7928.         wrap-around for  lines which are too long.  Other's simply refuse
  7929.         to accept more than a maximum line length.  Either  of the latter
  7930.         cases will disrupt the appearance of your Ansi files.
  7931.  
  7932.         To  avoid  difficulties,  find  the maximum line length enterable
  7933.         before the above problems occur (generally 70 characters is about
  7934.         average).    Next,  when  saving  your  Ansi files using TheDraw,
  7935.         specify the number determined  (70 here)  for the  maximum output
  7936.         line length.   TheDraw will limit lines to that length, and there
  7937.         should be no problems uploading the image.
  7938.        ----
  7939.        Q:   How do I draw circles/ovals/etc?
  7940.  
  7941.        A:   Smooth circles & ovals  are  not  possible  using  text graphics.
  7942.         Approximations  are  possible  by careful selection of characters
  7943.         and symbols.  For instance:
  7944.                     \\\\
  7945.                      \__    __\
  7946.                     [          [
  7947.                    ^]          ^]
  7948.                     [          [
  7949.                      _\\    \\_
  7950.                     ____
  7951.         The above was produced using symbols from function key set #6.
  7952.        ----
  7953.        Q:   I get disk full error messages when I try saving an Ansi  file to
  7954.         an empty  diskette.   The file  is large, very close to the 16000
  7955.         animation limit.  Is this a bug?
  7956.  
  7957.        A:   Seems unlikely a bug  exists.    The  Ansi  produced  is probably
  7958.         larger than  your diskette.   Try  splitting it  into two smaller
  7959.         chunks.  Although dependant  primarily  on  the  application, the
  7960.         largest  Ansi  file  we  know  of TheDraw producing was about 7.9
  7961.         million bytes (a test  of  16000  random  entries,  32 char/line,
  7962.         ansi pause of 50).  Even larger files might be possible.
  7963.        ----
  7964.        Q:   Why can't I change the video size from 25 lines to 43 or 50 lines
  7965.         as the manual suggests?
  7966.  
  7967.        A:   You must have an EGA or VGA video card adapter installed in order
  7968.         to  use  these  video  modes.    If  you  have a EGA/VGA card and
  7969.         TheDraw is not recognizing  your  hardware,  then  please contact
  7970.         TheSoft describing the situation.
  7971.  
  7972.  
  7973.  
  7974.  
  7975.        TheDraw v4.50            Appendix C             125
  7976.  
  7977.  
  7978.  
  7979.        Q:   How can I combine two Ansi files together?
  7980.  
  7981.        A:   There are  three ways.   Either load them both into TheDraw under
  7982.         animation mode (you will be  prompted  if  to  append  the second
  7983.         file), or use the Dos COPY command.  ie:
  7984.  
  7985.               COPY FILE1.ANS+FILE2.ANS FILE3.ANS
  7986.  
  7987.         The  above  will  create  a  new  file "FILE3.ANS" containing the
  7988.         complete contents of FILE1.ANS and FILE2.ANS.
  7989.  
  7990.         The last  method involves  using a  50 line  buffer mode, loading
  7991.         each target  Ansi file into appropriate portions (an ideal use of
  7992.         Block Load), then saving as one file.
  7993.        ----
  7994.        Q:   My mouse  will not  go below  line 25  when using  the 43/50 line
  7995.         video mode.   I  can use the cursor keys fine, but the mouse gets
  7996.         stuck.  What is wrong?
  7997.  
  7998.        A:   TheDraw requires a mouse  driver  (ie:  MOUSE.SYS,  MOUSE.COM, or
  7999.         similar  variation)  be  installed  which  is compatible with the
  8000.         EGA/VGA video card.   Please contact  your mouse  manufacturer or
  8001.         check local computer bulletin board systems for an update.
  8002.        ----
  8003.        Q:   Every  so  often  I  get  a  funny  space character on my screen.
  8004.         Moving the cursor onto it  cause  the  cursor  to  "flicker" with
  8005.         colors.  Why does that happen?
  8006.  
  8007.        A:   You have  come across  what is termed a "Solid-Space".  These are
  8008.         special characters  normally  used  with  TheDraw's  sprite mode.
  8009.         Solid  spaces   are  entered  by  pressing  the  SHIFT-SPACE  key
  8010.         combination.   They are not normal spaces  (character 32),  but a
  8011.         blank special IBM extended space (character 255).  A setup option
  8012.         exists for filtering them from your Ansi/Ascii screen files.
  8013.        ----
  8014.        Q:   When I  type  saved  ASCII  files,  sometimes  extra  blank lines
  8015.         appear.  What is wrong?
  8016.  
  8017.        A:   Your screen  contains lines which are the full screen width.  The
  8018.         cursor is "wrapping" down to the next line thus causing the extra
  8019.         blank  line  to  appear.    Such  Ascii files are compatible with
  8020.         standard  text  editors.    To  make  Ascii  files  which display
  8021.         properly  using  the  Dos  TYPE command, toggle the "Force CR/LF"
  8022.         option in the Setup options screen to "NO".
  8023.        ----
  8024.        Q:   When I save  animated  Ansi  files,  I  cannot  get  character to
  8025.         display in the lower-right corner.  How can I correct this?
  8026.  
  8027.        A:   You can't.   The screen scrolls whenever a character is displayed
  8028.         in the lower-right  corner.    This  is  extremely  disruptive to
  8029.         animated Ansi file.  TheDraw thus does not output characters, but
  8030.         will however paint the corner with the desired colors.
  8031.  
  8032.  
  8033.        TheDraw v4.50            Appendix C             126
  8034.  
  8035.  
  8036.  
  8037.  
  8038.        Q:   I am a BBS system operator and puzzled  by the  Ansi maximum line
  8039.         length parameter.   What  exactly is  this used  for, and does it
  8040.         mean I can't have full screen Ansi images?
  8041.  
  8042.        A:   The Ansi maximum  line  length  is  completely  separate  of what
  8043.         appears  on  the  screen.    The  parameter  affects  the  output
  8044.         formatting of Ansi files, but not  the way  they appear onscreen.
  8045.         We  must  make  the  distinction between displayed Ansi lines (as
  8046.         they appear) and output lines (as in the .ANS files).
  8047.  
  8048.         Output lines contains large  amounts  of  cursor  positioning and
  8049.         color control  codes.  A given displayed Ansi line might actually
  8050.         translate to an output line over 1000 characters long.
  8051.  
  8052.         In situations where Ansi files are loaded into other software, or
  8053.         uploaded  to  BBS  systems  as  messages,  physical limits on the
  8054.         output line lengths might be  imposed.    Say,  for  instance, 70
  8055.         characters.    This  is  the  maximum  amount of Ansi information
  8056.         TheDraw can pack onto  a given  output line.   This  fact however
  8057.         will not  change the  Ansi screen  is displayed  at all!  TheDraw
  8058.         will compensate for the short output  lines by  moving the cursor
  8059.         and  adjusting  color  codes  as  required.   The more TheDraw is
  8060.         forced to do this, the longer your Ansi file becomes.
  8061.  
  8062.         For maximum speed and the smallest  files, use  an Unlimited line
  8063.         length.    BBS  system  operators should use unlimited length for
  8064.         menu screens and the like --  unless  all  Ansi  files  are being
  8065.         stored as  messages.   Your message base might have a line length
  8066.         limit.  If all your BBS does is display a text file however, then
  8067.         use the unlimited line length.
  8068.  
  8069.  
  8070.  
  8071.  
  8072.  
  8073.  
  8074.  
  8075.  
  8076.  
  8077.  
  8078.  
  8079.  
  8080.  
  8081.  
  8082.  
  8083.  
  8084.  
  8085.  
  8086.  
  8087.  
  8088.  
  8089.  
  8090.  
  8091.        TheDraw v4.50            Appendix C             127
  8092.  
  8093.  
  8094.  
  8095.  
  8096.                  REVISION HISTORY
  8097.  
  8098.  
  8099.        05/01/86  -  Version 1.00  -  Program completed.
  8100.        ____
  8101.  
  8102.        05/05/86  -  Version 1.01
  8103.  
  8104.        Carl Ehmann noticed a glitch in text creation that caused highlighting
  8105.        and blinking attributes  changes  to  go  unnoticed.    This  has been
  8106.        corrected.
  8107.        ____
  8108.  
  8109.        06/05/86  -  Version 1.02
  8110.  
  8111.        Steven Mills  discovered a bug in the file loading routine that caused
  8112.        TheDraw to flag valid filenames as invalid.  It has been squashed.
  8113.  
  8114.        Changed the program to not allow the user to enter a code  #26 or code
  8115.        #27 into  a text screen. A code #26 is the Dos end of file marker, and
  8116.        entering it means loss of all following text upon displaying  the file
  8117.        or reloading  it back  into TheDraw.   A  code #27  is the ANSI driver
  8118.        signal  character.  Supposedly  ANSI  ignores  invalid  sequences, but
  8119.        allowing  the  code  created  "false"  ANSI codes which caused loading
  8120.        problems.
  8121.        ____
  8122.  
  8123.        07/31/86  -  Version 1.03
  8124.  
  8125.        Upon prompting from Carl Ehmann, output line length  limiting has been
  8126.        added.   This will  facilitate other  programs which cannot load lines
  8127.        conceivably going over 1300 characters (such as RBBS).   Color changes
  8128.        can now  be accomplished  using the  Ctrl-Left and Right arrow keys to
  8129.        increment the fore and background colors respectively.
  8130.        ____
  8131.  
  8132.        08/15/86  -  Version 1.10  (later changed to v2.00)
  8133.  
  8134.        Changes in a big way.  New features include:
  8135.      ANSI Animation, Line Drawing, Ruler, movement of
  8136.      blocks UNDER other text and much more!!
  8137.  
  8138.        Quick color change keys have been expanded to  use the  Ctrl-Up, Down,
  8139.        Left, and Right keys in a more logical manner.
  8140.        ____
  8141.  
  8142.        09/13/86  -  Version 2.01
  8143.  
  8144.        A few  more enhancements.   Pop-Up help, and macros have been added to
  8145.        the new registered version of the program.  Also a few aspects  of the
  8146.        animation editor have been sped up.
  8147.  
  8148.  
  8149.        TheDraw v4.50              History              128
  8150.  
  8151.  
  8152.  
  8153.  
  8154.                   REVISION HISTORY (cont)
  8155.  
  8156.  
  8157.        09/19/86 - Version 2.02
  8158.  
  8159.        Fixed a slight bug which was causing TheDraw to display the wrong Help
  8160.        Screen (in registered version).  Also,  the registered  version wasn't
  8161.        keeping track of where its overlay was.
  8162.        ____
  8163.  
  8164.        09/27/86 - Version 2.03
  8165.  
  8166.        Carl Ehmann noticed yet another glitch (what would I do without him?).
  8167.        The Ascii save routine was using ANSI codes  to advance  the cursor to
  8168.        the next line.
  8169.        ____
  8170.  
  8171.        11/28/86 - Version 2.04
  8172.  
  8173.        Ray Buti  discovered an  oddity with  the Pascal  screen save.  If you
  8174.        used a single quote "'" TheDraw didn't compensate  for it.   Therefore
  8175.        when  Turbo  Pascal  compiled  that  screen  it  complained.  Ray also
  8176.        noticed that  characters under  #32 were  missing the  "#" required by
  8177.        Turbo.  These have both been cured.
  8178.  
  8179.        In addition,   the animation load routine has been made more reliable.
  8180.        Occasionally movement just involving the  cursor  (no  text)  would be
  8181.        lost.   Other improvements  were made  to make  animation screen files
  8182.        smaller and display faster.
  8183.        ____
  8184.  
  8185.        03/06/87 - Version 2.10
  8186.  
  8187.        Support for monochrome monitors has finally been added.  Don't ask why
  8188.        I never  did it  before...   The glitches  Paul Pacter (and many other
  8189.        people) found  with IBM  PC Ctrl-Up/Down  keys has  been eliminated. I
  8190.        would have  never noticed  that glitch,  so many thanks!  Kent Godding
  8191.        made an excellent suggestion for a ansi-file slow down routine.   This
  8192.        has  been  added.    Lastly,  a  few  changes were made to the command
  8193.        structure to clarify things and many prompts were cleaned up.
  8194.  
  8195.  
  8196.  
  8197.  
  8198.  
  8199.  
  8200.  
  8201.  
  8202.  
  8203.  
  8204.  
  8205.  
  8206.  
  8207.        TheDraw v4.50              History              129
  8208.  
  8209.  
  8210.  
  8211.  
  8212.                   REVISION HISTORY (cont)
  8213.  
  8214.  
  8215.        06/20/87 - Version 2.20
  8216.  
  8217.        BSave saves fixed to operate properly  for monochrome  monitors.  Ansi
  8218.        files now  output <esc>[40m  color sequences  to clear screen to black
  8219.        color before doing anything else.  Thanks to Barry Simon  for bringing
  8220.        this  oversight  to  my  attention  and  also  suggesting command line
  8221.        filespecs.  Some  new  items  were  added,  most  notably  full screen
  8222.        editing.   Thank Ray  Buti for  finally bugging  me enough  to add it.
  8223.        Also extended options for Asm, Pascal,  and  new  C  storage  modes to
  8224.        crunch and  store only  Ascii in addition to the original normal (4000
  8225.        byte) mode.  Thanks to Douglas A. Nicklow for suggesting the C storage
  8226.        capacity.
  8227.        ____
  8228.  
  8229.        08/22/87 - Version 2.21
  8230.  
  8231.        Fixed a  minor glitch  with window  sizes being  slightly off.  Also I
  8232.        missed a problem in the registered version.  TheDraw was not using the
  8233.        overlay path  entered by the Setup utility when initializing.  So much
  8234.        for learning  from mistakes  (ie: it  happened before).   In addition,
  8235.        using a  command line  filespec sometimes loaded a Ansi or Ascii image
  8236.        with a random background color.  Needless to say, everything  has been
  8237.        fixed.
  8238.        ____
  8239.  
  8240.        04/28/88 - Version 3.00
  8241.  
  8242.        Many, MANY  changes.   TheDraw totally  rewritten to take advantage of
  8243.        Turbo Pascal v4.0.  A new title screen,  dynamic allocation  of screen
  8244.        layers and  animation space  (up to 16000 animation entries and 8 page
  8245.        layers can now be  used),  multi-layer  Sprite  editing,  dos shelling
  8246.        (suggestion from Billy Noto), and a new high-speed TheDraw format data
  8247.        file have all been added.    TheDraw  now  incorporates  its  own Ansi
  8248.        driver so Ansi/Ascii file loading is much faster.
  8249.  
  8250.        The animation  system has  been greatly  expanded.  Five new animation
  8251.        scanners have been added (ANGLE, GATE, PYRAMID, SQUARES,  and WIGGLE).
  8252.        Animation markers(R),  "include files",  animation pausing, support of
  8253.        animation on multiple page  layers (no  longer restricted  to just one
  8254.        page), global  animation screen  copies, and more have all been added.
  8255.        Animation sequences can now  be  appended  together.    The registered
  8256.        version supports easy animation editing.
  8257.  
  8258.        A couple  of bugs  were fixed.   The  pascal save left spurious single
  8259.        entries on the end of lines (yet another discovery of Ray Buti  :-) ).
  8260.        The Ascii Save no longer outputs spaces on the end of every line.
  8261.  
  8262.  
  8263.  
  8264.  
  8265.        TheDraw v4.50              History              130
  8266.  
  8267.  
  8268.  
  8269.  
  8270.                   REVISION HISTORY (cont)
  8271.  
  8272.        (v3.00 cont)
  8273.  
  8274.        The  Setup   utility  has   been  vastly  overhauled  and  now  allows
  8275.        configuring  of  the  TheDraw  edit  screen  colors,  TheDraw keyboard
  8276.        commands(R), and many other parameters.
  8277.        ____
  8278.  
  8279.        09/09/88 - Version 3.10
  8280.  
  8281.        Support for the Microsoft Mouse has been added, making cursor movement
  8282.        and the marking of blocks easier.  Five additional character sets have
  8283.        been added.   These  are accessed via CTRL-F(1-5).  With this revision
  8284.        goes a  new function  key screen  (ALT-F).   Finally, a  few bugs were
  8285.        eradicated.   Many people reported CTRL-Up/Down keys were not working.
  8286.        They did work, however the status display was not always updated (thus
  8287.        causing  the  following  confusion).    TheDraw  now  allows filespecs
  8288.        without extensions  to  be  used  again.    In  addition,  the default
  8289.        filespec extensions  can be  changed using the Setup utility (Ray Buti
  8290.        can now change .PAS to anything he likes  <grin>).   The Setup utility
  8291.        Defaults option now works as advertised.  Finally, the keyboard driver
  8292.        for Ctrl-Up/Down has been changed yet again.  With the  last revision,
  8293.        a few computers were gained but the PCjr was lost.
  8294.        ____
  8295.  
  8296.        04/04/89 - Version 3.20
  8297.  
  8298.        Pull down  menu system has been added to TheDraw.  The program can now
  8299.        be totally controlled by use of a mouse.   Various  small details that
  8300.        escaped detection  regarding the  mouse were corrected.  TheDraw has a
  8301.        new storage format -- COM files.  Separate  programs useful  for batch
  8302.        files and  the like.  They work with blocks and (naturally) the entire
  8303.        screen.  A few bugs floating around the program have been cured.  When
  8304.        attempting a  block save, TheDraw would sometimes display and save the
  8305.        wrong screen portion.  The ALT-U  command was  not processing blinking
  8306.        colors properly  -- thanks  to Darin  May for  pointing this out.  The
  8307.        ALT-L file directory had a minor problem when  there were  exactly 124
  8308.        items displayed.  You could go down to the next page even though there
  8309.        was nothing on it.   Animation  screen copies  might possibly  fail if
  8310.        they run out of room.  What the user saw didn't necessarily match what
  8311.        TheDraw thought was there until everything  got redrawn.   The problem
  8312.        with CTRL-UP/DOWN  simply won't go away.  The driver will work for 99%
  8313.        of  machines,  but  certain  computers  with  non-compatible  keyboard
  8314.        hardware  will  lockup  (notably  the  Tandy 1000A and HX).  The SETUP
  8315.        utility now has a provision for deactivating the driver completely.
  8316.  
  8317.  
  8318.  
  8319.  
  8320.  
  8321.  
  8322.  
  8323.        TheDraw v4.50              History              131
  8324.  
  8325.  
  8326.  
  8327.  
  8328.                   REVISION HISTORY (cont)
  8329.  
  8330.  
  8331.        11/01/89 - Version 3.30
  8332.  
  8333.        TheDraw format files now support block load/save.   A color attributes
  8334.        drawing  mode  has  been  added,  access  via  Alt--.  Thanks to James
  8335.        Carroll  for  this  suggestion.    You  can  now   specify  a  default
  8336.        directory/wildcard when  using sticky  directory listings.   Thanks to
  8337.        Sylvest Adam for this suggestion.   TheDraw supports  a ten  file pick
  8338.        list now.   This  maintains a  listing of the last ten files accessed.
  8339.        Simply press the TAB whenever TheDraw prompts for a filespec.  TheDraw
  8340.        now generates  Intel format  compatible object code files.  Useful for
  8341.        linking with Turbo Pascal v4.0 and above, C plus many other high-level
  8342.        languages.   The ruler  can now  be made  "sticky".   When active, the
  8343.        ruler stays on the screen appearing under the  current page  layer.  A
  8344.        few bugs  were fixed.   The  problem with ansi animation files getting
  8345.        confused  when  saved  without  screen  preparation  has  been solved.
  8346.        Thanks to Terry Blake for reporting it.  Alt-O now properly allows you
  8347.        to change  drives.    A  minor  glitch  with  animation  include files
  8348.        dropping characters  has been  solved.  Finally, the directory listing
  8349.        handles the mouse in a more predictable/controllable manner.
  8350.        ____
  8351.  
  8352.        03/01/91 - Version 4.00
  8353.  
  8354.        A great number of changes, additions, and improvements.  First the bug
  8355.        fixes:   Garry Kraemer  found the  uncruncher wasent  in sync with how
  8356.        TheDraw handled flashing characters.    Michael  Harris  discovered it
  8357.        was possible  to select  a page  0 in version 3.30.  Paul Furman noted
  8358.        BSAVE files was not quite compatible with Basic, lacking a termination
  8359.        sequence.   Carter Downer  noted that 80 column Ansi files produced by
  8360.        TheDraw were not fully compatible with bulletin board systems.
  8361.  
  8362.        New features are:  EGA/VGA screen  editing (43/50  lines for EGA/VGA).
  8363.        A virtual  screen edit  buffer was  added, allowing  screens up to 160
  8364.        characters by 50 lines can  be  edited.    Mouse  aided  line drawing;
  8365.        pressing the  middle mouse button down and moving will draws a line or
  8366.        box.  All cursor keys now function throughout  TheDraw.   Line drawing
  8367.        now tolerates bumping into the screen border.  New animation scanners:
  8368.        Doors*,  Diamond*,  Circle*,  Clock*,   Checkerboard,  and  Wiggleout.
  8369.        Thanks to  Guy StarBuck for suggesting the first four.  The ability to
  8370.        reverse any  animation scan  (making the  scan go  backwards) was also
  8371.        added.   Thanks to  Dorothy Hade  for this excellent suggestion.  User
  8372.        Ctrl sequences permitting BBS operators to install custom Ansi codes.
  8373.        The last animation improvement  was the  ability to  append -ANY- file
  8374.        format  (except  .TD)  to  an  animation sequence.  For non-ansi/ascii
  8375.        files, TheDraw requests an animation scanner to reading the screen.
  8376.  
  8377.  
  8378.  
  8379.  
  8380.  
  8381.        TheDraw v4.50              History              132
  8382.  
  8383.  
  8384.  
  8385.  
  8386.                   REVISION HISTORY (cont)
  8387.  
  8388.        (v4.00 cont)
  8389.  
  8390.        Block and global character/attribute  replace  has  been  added.   The
  8391.        default load  filename extension can now be changed to something other
  8392.        than  ANS.    An  online  setup  menu  was  added  to  TheDraw, making
  8393.        configuration of the environment much easier.  Two additional COM file
  8394.        formats were added, with TheDraw transparently  selecting the  best of
  8395.        the three for a given application.
  8396.  
  8397.        Ascii files  can now  be forced to have carriage returns placed on the
  8398.        end of each line.  ALT-Key pop-up help screen added.  TheDraw  can now
  8399.        save  backup  files.    The  ALT-Left/Right key sequence delete/insert
  8400.        columns.  Automatic screen blanking was added.  Dos Shell now attempts
  8401.        to swap  out information to EMS memory or a disk swap file to increase
  8402.        available memory  during the  shell.   Lastly (whew!),  TheDraw can be
  8403.        made  to  prompt  to  save  changes  before exit.  Either just for the
  8404.        current page, or for all page layers.
  8405.        ____
  8406.  
  8407.        03/18/91 - Version 4.01
  8408.  
  8409.        A minor correction to the .OBJ  file  format  loader,  the  Last Block
  8410.        option works  properly now,  plus a  couple other  minor fixes to bugs
  8411.        somehow squirming through testing.   The  presentation program (THEPP)
  8412.        now  properly  displays  TheDraw  format  files saved with sprite mode
  8413.        turned on.
  8414.  
  8415.        ----
  8416.        Version  numbers  4.10  through  4.40  skipped   because  unauthorized
  8417.        (illegal) modification of TheDraw v4.00 by an individual.
  8418.        ----
  8419.  
  8420.        03/16/92 - Version 4.50
  8421.  
  8422.        Over  50  improvements  and  corrections.  Bug fixes include corrected
  8423.        Ansi file generation, improved QuickBasic support,  cleaned up various
  8424.        screen  display  quirks  associated  with  the  virtual  edit  buffer,
  8425.        problems  with  column  insert/delete,  better  handling  of  switches
  8426.        between 25  and 43/50  line buffers,  difficulty with read-only marked
  8427.        files, quirks with screen  blanker, better  handling of  bell codes in
  8428.        Ansi files,  problem with  Sticky ruler  not being saved to .TD files,
  8429.        glitches with refreshing display in animation mode, plus several other
  8430.        minor improvements.
  8431.  
  8432.  
  8433.  
  8434.  
  8435.  
  8436.  
  8437.  
  8438.  
  8439.        TheDraw v4.50              History              133
  8440.  
  8441.  
  8442.  
  8443.  
  8444.                   REVISION HISTORY (cont)
  8445.  
  8446.        (v4.50 cont)
  8447.  
  8448.        Thanks to:
  8449.       Steven Fischkoff for finding bug with animation scramble scanner.
  8450.       J. T. Merrill for finding problem with THEPP when displaying
  8451.         animated files.
  8452.       Warren Leadbeatter for pointing out circumstances where unwanted
  8453.         blank lines could get inserted into Ansi files.
  8454.       Jeff Lawson for finding bug when loading read-only files, saving
  8455.         small  (less   than  512  bytes)  object  files,  and  suggesting
  8456.         improvements for the QuickBasic MAKEQLB batch file.
  8457.       Ian Thurston for supplying a example for the Clipper compiler.
  8458.       Joe Fischer (and others) for helping identify glitch with Ansi
  8459.         saves relative to spurious linefeeds in the top video line.
  8460.  
  8461.        Improvements include  encrypted screen  data to  thwart hack attempts,
  8462.        internal Ascii  class font  support, true  restore/undo facility which
  8463.        can reverse any screen operation, a 23 line  edit buffer  (very useful
  8464.        for BBS  screen generation), improved cursor viability when foreground
  8465.        and background colors  are  the  same,  pull  down  menus  now display
  8466.        shortcut  keystrokes,   file  directory   used  with  load/view/delete
  8467.        function now  show directories,  more efficient  Ansi file generation,
  8468.        mouse users can now click on items in status line (when pulldown menus
  8469.        displayed) as shortcut for common commands.  Enjoy!
  8470.  
  8471.  
  8472.  
  8473.  
  8474.  
  8475.  
  8476.        (R) = Feature in Registered Version of TheDraw Only
  8477.  
  8478.  
  8479.  
  8480.  
  8481.  
  8482.  
  8483.  
  8484.  
  8485.  
  8486.  
  8487.  
  8488.  
  8489.  
  8490.  
  8491.  
  8492.  
  8493.  
  8494.  
  8495.  
  8496.  
  8497.        TheDraw v4.50              History              134
  8498.  
  8499.  
  8500.  
  8501.  
  8502.                     THE FUTURE
  8503.  
  8504.  
  8505.        Look for these features in the next release of TheDraw:
  8506.  
  8507.         TheDraw  Library  Files  -  Files  which  can  hold multiple
  8508.         screens, screen blocks, etc... along with descriptions.
  8509.  
  8510.        Send in  your ideas,  suggestions, criticisms and bug reports.  Report
  8511.        something first and be immortalized in the docs of TheDraw!
  8512.  
  8513.        If you ever find a copy of TheDraw  with a  version number  other than
  8514.        one  listed  above,  please  take  the  time  to write us a quick note
  8515.        describing it.  Thank you!
  8516.  
  8517.  
  8518.  
  8519.  
  8520.  
  8521.  
  8522.  
  8523.  
  8524.  
  8525.  
  8526.  
  8527.  
  8528.  
  8529.  
  8530.  
  8531.  
  8532.  
  8533.  
  8534.  
  8535.  
  8536.  
  8537.  
  8538.  
  8539.  
  8540.  
  8541.  
  8542.  
  8543.  
  8544.  
  8545.  
  8546.  
  8547.  
  8548.  
  8549.  
  8550.  
  8551.  
  8552.  
  8553.  
  8554.  
  8555.        TheDraw v4.50                           135
  8556.  
  8557.  
  8558.  
  8559.  
  8560.                      COMMENTS
  8561.  
  8562.  
  8563.        Please consider registering for the amount  of $22.   Quality software
  8564.        at good  prices is  very difficult to find.  We at TheSoft Programming
  8565.        Services firmly  believe  in  and  support  the  concept  of shareware
  8566.        products, and  hopefully you  do also.   Please make any checks out to
  8567.        TheSoft Programming Services.  If you  have any  requests, comments or
  8568.        suggestions for TheDraw, please send them to:
  8569.  
  8570.  
  8571.  
  8572.                TheSoft Programming Services
  8573.                c/o Ian Davis - TheDraw
  8574.                P.O. Box 7657
  8575.                Fremont, CA, 94537-7657
  8576.  
  8577.  
  8578.  
  8579.        Thanks for your support!
  8580.  
  8581.  
  8582.  
  8583.  
  8584.  
  8585.  
  8586.  
  8587.  
  8588.  
  8589.  
  8590.  
  8591.  
  8592.  
  8593.  
  8594.  
  8595.  
  8596.  
  8597.  
  8598.  
  8599.  
  8600.  
  8601.  
  8602.  
  8603.  
  8604.  
  8605.  
  8606.  
  8607.  
  8608.  
  8609.  
  8610.  
  8611.  
  8612.  
  8613.        TheDraw v4.50                           136