The Programmer's Productivity Pack

 



                           T H E   P R O G R A M M E R ' S
                          ---------------------------------


                         P R O D U C T I V I T Y    P A C K
                        ------------------------------------




                                    Version 2.50
                                   --------------



                              U S E R ' S    G U I D E
                             --------------------------




                 Copyright (c) 1988,1989,1990 by Falk Data Systems.
                                All Rights Reserved.



                                August, 1990 Edition



                                  Falk Data Systems
                                 5322 Rockwood Court
                                El Paso, Texas  79932
                                       U.S.A.



                               Phone:  (915) 584-7670
                               CompuServe: 71420,2431


                                 _______                    
                            ____|__     |                (R)
                         --|       |    |-------------------
                           |   ____|__  |  Association of   
                           |  |       |_|  Shareware        
                           |__|   o   |    Professionals    
                         -----|   |   |---------------------
                              |___|___|    MEMBER           



                                       Contents


          General Information ........................................... 1

            The Programmer's Productivity Pack (ProPak) ................  1
            The Shareware Concept ......................................  1
            License ....................................................  3
            Warranty ...................................................  5
            Registration ...............................................  5
            Why Payment Must be in US Funds Drawn on a US Bank .........  6
            Benefits of Becoming a Registered User .....................  7
            Additional Benefits to Registered Users ....................  7
            Technical Support .......................................... 13
            ASP Ombudsman Statement .................................... 14
            Obtaining Updates .......................................... 14
            Trademarks Mentioned ....................................... 16

          Introduction ................................................. 17
            What is ProPak? ............................................ 17
            System Requirements ........................................ 18
            Memory Requirements ........................................ 19
            How To Use This Manual ..................................... 20

          How to Install ProPak ........................................ 22
            Which Files Do I Need? ..................................... 22
            Installing On A Hard Disk System ........................... 23
            Installing On A Floppy Disk System ......................... 24
            Setting ProPak For Your Monitor ............................ 25
            The 80 Column Text Mode .................................... 25
            The Modifier Keys .......................................... 26
            ProPak and Your Keyboard ................................... 26
            The ASCII Poster ........................................... 27

          How To Load And Unload ProPak ................................ 28
            Loading ProPak ............................................. 28
              Bypassing the Opening Screen ............................. 30
              Renaming PROPAK.EXE ...................................... 30
            Using ProSwap .............................................. 30
              Loading ProSwap .......................................... 31
              ProSwap Command Line Options ............................. 33
              ProSwap as a Stand-Alone Program ......................... 37
              Renaming PROSWAP.EXE ..................................... 38
            Unloading ProPak or ProSwap ................................ 38
            Sidekick Considerations .................................... 39
            The DOS PRINT Program ...................................... 41
            In Case of Conflicts With Other Memory-Resident Programs ... 41
            ProPak and Batch Files ..................................... 41
            ProPak Error Messages ...................................... 42
              Beeps and Doesn't Pop Up ................................. 43
              Doesn't Beep or Pop Up ................................... 43





          Table of Contents                                               i



                                       Contents


          The Programmer's Calculator and Attachments .................. 45

          The Programmer's Calculator .................................. 45
            The Quick Start Tutorial ................................... 45
            The In-Depth Reference Guide ............................... 52
              The Range Of Values Available ............................ 52
              The Programmer's Calculator Display ...................... 53
              The Quick Reference Menu ................................. 54
              Signed And Unsigned Modes ................................ 54
              The Four Numeric Formats ................................. 55
              The Calculator Commands .................................. 56
              The Mathematical Operations .............................. 60
              Logical and Bit Manipulation Operations .................. 62
              Moving The Calculator's Display .......................... 64
              Going To The Attachments ................................. 64

          The ASCII and Color Attribute Chart .......................... 66
            The Quick Start Tutorial ................................... 66
            The In-Depth Reference Guide ............................... 68
              25, 43, And 50 Line Screens .............................. 68
              The Columns On The Chart ................................. 68
              The Extended Characters .................................. 69
              Moving Around The Chart .................................. 69
              Other Available Commands ................................. 70
              Returning to the Calculator .............................. 70

          The Keystroke Reference Center ............................... 71
            The Quick Start Tutorial ................................... 71
            The In-Depth Reference Guide ............................... 74
              How To Access The Keystroke Reference Center ............. 75
              The Display .............................................. 75
              Scan Codes and INKEY() Values ............................ 76
              Portability Notes ........................................ 77
              Moving the Display ....................................... 77
              Other Available Commands ................................. 78

          Park Disk(s) and Blank Screen ................................ 79
            The In-Depth Reference Guide ............................... 79

          The Control Center ........................................... 81
            Quick Start Tutorial #1 .................................... 81
            Quick Start Tutorial #2 .................................... 85
            In-Depth Reference Guide ................................... 89
              How To Access The Control Center ......................... 89
              The Control Center ....................................... 89
              Modify Options ........................................... 90
              List Key Recordings ...................................... 90
              Write Keys to File ....................................... 91
              Read Keys From File ...................................... 91
              Delete Key Recordings .................................... 92
              Copy Screen To File ...................................... 92


          Table of Contents                                              ii



                                       Contents


              Print Facility ..........................................  93
              Get Status Info .........................................  93
              Unload From Memory ......................................  94

          The Modify Options Feature ................................... 96
            In-Depth Reference Guide ................................... 96
              The Modify Current Settings Submenu ...................... 96

          Keystroke Recording and Playback ............................ 102
            In-Depth Reference Guide .................................. 102
              How to Start Recording Keystrokes ....................... 103
              Important note! ......................................... 103
              How to Stop Recording Keystrokes ........................ 103
              How To Play Back a Keystroke Recording .................. 104
              Setting The Playback Speed .............................. 104
              The Screen Grabber ...................................... 104
              List Key Recordings ..................................... 105
              Write Keys To File ...................................... 105
              Read Keys From File ..................................... 105
              Delete Key Recordings ................................... 105
              Get Status Info ......................................... 106
              Keystroke Recording TIPS: ............................... 107
            The Screen Grabber Feature ................................ 107
              To Move The Grab Box .................................... 108
              To Change The Size Of The Grab Box ...................... 109
              How To Use The Grab Box ................................. 109
              End-of-Line Characters .................................. 109

          The Screen Capture Facility ................................. 111
            In-Depth Reference Guide .................................. 111

          The Print Facility .......................................... 113
            In-Depth Reference Guide .................................. 113

          PCustom: The Customizing Program ............................ 115
            The Quick Start Tutorial .................................. 115
            The In-Depth Reference Guide .............................. 117
              Starting PCustom ........................................ 117
              Selecting Which Versions To Modify ...................... 117
              How PCustom Works ....................................... 118
              The PCustom Menus ....................................... 119
              The Main Menu ........................................... 119
                The Colors Menu ....................................... 120
                The Hot Keys Menu ..................................... 127
                The Sound Effects Menu ................................ 128
                The Advanced Options Menu ............................. 129
                The Exit PCustom Menu ................................. 137

          Miscellaneous Information ................................... 139
            EXE Compression Utilities ................................. 139
            Change History ............................................ 140


          Table of Contents                                             iii



                                       Contents


          Appendix A
            The Bits and the Bytes. ................................... 143

          Appendix B
            Understanding Two's Complement Numbers .................... 152

          Appendix C
            For Those New to MS-DOS: .................................. 154

          Appendix D
            Background Information .................................... 155

          Appendix E
            Sources for Additional Information ........................ 156

          Appendix F
            What is Falk Data Systems? ................................ 157
            Other Products From Falk Data Systems ..................... 157
              Easy Format ............................................. 157
              Easy Format Tech Kit .................................... 158

          Index ....................................................... 160































          Table of Contents                                              iv












                                       Figures


          Figure  1: Opening Screen ....................................  28
          Figure  2: Programmer's Calculator Display ...................  53
          Figure  3: The Quick Reference Menu ..........................  54
          Figure  4: Decimal Box Display ...............................  60
          Figure  5: ASCII Chart Display ...............................  68
          Figure  6: Keystroke Reference Center Display ................  76
          Figure  7: Control Center Menu ...............................  89
          Figure  8: Modify Current Settings Submenu ...................  96
          Figure  9: PCustom Main Menu ................................. 119
          Figure 10: PCustom Colors Menu ............................... 120
          Figure 11: Custom Colors Submenu ............................. 121
          Figure 12: Calculator Sub-Submenu ............................ 122
          Figure 13: Customize Hot Keys Submenu ........................ 127
          Figure 14: Hot Keys Submenu .................................. 127
          Figure 15: Sound Effects Submenu ............................. 128
          Figure 16: Advanced Options Submenu .......................... 129
          Figure 17: Miscellaneous Sub-Submenu ......................... 134
          Figure 18: Exit PCustom Submenu .............................. 137



          Falk Data Systems             Programmer's Productivity Pack 2.50


                                ---------------------
                                 General Information
                                ---------------------


          The Programmer's Productivity Pack (ProPak):
          ============================================

          "The Programmer's Productivity Pack" is a very long title!  To
          help keep things brief we will often refer to the Programmer's
          Productivity Pack as "ProPak".  When we use the word "ProPak" as
          a shortened form of "Programmer's Productivity Pack" we are
          referring to the entire package and all the programs in the
          package (including ProPak, ProSwap, and PCustom).


          The Shareware Concept:
          ======================

          If you are familiar with the idea behind Shareware, then you know
          that Shareware is the ultimate in money back guarantees.

          Most money back guarantees work like this:  You pay for the
          product and then have some period of time to try it out and see
          whether or not you like it.  If you don't like it or find that it
          doesn't do what you need, you return it (undamaged) and at some
          point - which might take months - you get your money back.  Some
          software companies won't even let you try their product!  In
          order to qualify for a refund, the diskette envelope must have an
          unbroken seal.  With these "licensing" agreements, you only
          qualify for your money back if you haven't tried the product.
          How absurd!

          Shareware is very different.  With Shareware you get to try it
          for a limited time, without spending a penny.  If you decide not
          to continue using it, you throw it away and forget all about it.
          No paperwork, phone calls, or correspondence to waste your
          valuable time.

          Software authors who use this method of distribution feel that
          shareware is the best way to try a product.  You are able to try
          it on your own system(s), in your own special work environment,
          with no sales people looking over your shoulder.  Have you ever
          purchased a car and realized that if you could have test driven
          it for 30 days your purchase decision might have been different?
          With shareware these problems can be avoided - you DO have a 30
          day test-drive!

          After trying a Shareware product and deciding to continue to use
          it, then - and only then - do you pay for it.  Not only that, but
          Shareware is traditionally MUCH less expensive simply because you


          General Information                                             1



          Falk Data Systems             Programmer's Productivity Pack 2.50


          are paying for the software, not the advertising and marketing
          that comprises the majority of the cost of most software (a one
          page add in PC Magazine, one time, can cost upwards of $20,000).
          If the try-before-you-buy concept sounds like an ideal way to
          make your purchase decisions, you're right!

          Some companies burden their products with annoying copy
          protection schemes because they don't trust their users.
          Shareware developers not only don't use copy protection, they
          freely distribute their products because they DO trust their
          users.

          Someone once said that you should never trust software which
          doesn't trust you.  This makes a lot of sense - no wonder
          Shareware is becoming so popular among users and developers.

          The Programmer's Productivity Pack is Shareware.  You may copy it
          and pass it out to your friends and associates.  We not only
          don't mind if you do, we encourage you to pass it out.  What
          better testimony to the usefulness of a product, than the word-
          of-mouth (or disk) advertising by the people who actually use the
          product?  If you like it, chances are your friends will too.

          The only requirement to passing out the Programmer's Productivity
          Pack, is that you pass it out as a complete package - including
          the documentation files and executable programs - and that you
          don't alter or modify any part of the package in any way.

          If you use the product for more than 30 days you must become a
          registered user.  Registration comes with an impressive list of
          benefits, for more details please refer to page 5.

          Shareware is a distribution method, NOT a type of software.
          Shareware is produced by accomplished programmers, just like
          retail software.  There is good and bad shareware, just as there
          is good and bad retail software.  The primary difference between
          shareware and retail software is that with shareware you know if
          it's good or bad BEFORE you pay for it.  Registration of
          shareware products, in addition to being required, is also an
          incentive for programmers to continue to produce quality software
          for the shareware market.

          There is another significant advantage to shareware - it allows
          small companies (like Falk Data Systems) to make software
          available without the hundreds of thousands of dollars in
          expenses that it takes to launch a traditional retail software
          product.  There are many programs on the market today which would
          never have become available without the shareware marketing
          method.  Please show your support for shareware by registering
          those programs you actually use and by passing them on to others.



          General Information                                             2



          Falk Data Systems             Programmer's Productivity Pack 2.50


          License:
          ========

          This software and accompanying documentation are protected by
          United States Copyright law and also by International Treaty
          provisions.  Any use of this software in violation of Copyright
          law or the terms of this agreement will be prosecuted to the best
          of our ability.

          The Programmer's Productivity Pack is NOT a public domain
          program.  It is Copyright (c) 1988, 1989,1990 by Falk Data
          Systems.  The conditions under which you may copy this software
          and documentation are clearly outlined below.

          You are granted a limited license to use the software described
          in this manual.  The software may be used or copied only in
          accordance with the terms of this license.

          Under the terms of this limited license you are granted
          permission by Falk Data Systems to use this software - for
          evaluation purposes - for a period not to exceed 30 days.  If you
          intend to continue using the product after the 30 day evaluation
          period you MUST make a registration payment to Falk Data Systems.

          Using this software after the 30 day evaluation period, without
          registering the software is a violation of the terms of this
          limited license.

          Falk Data Systems intends to vigorously prosecute any and all
          copyright violations.

          Individuals are granted permission by Falk Data Systems to copy
          the Programmer's Productivity Pack diskettes for their own use or
          for other individuals to evaluate, ONLY when the following
          conditions are met.  Computer User Groups, clubs, and bulletin
          boards are granted limited permission by Falk Data Systems to
          copy the diskette and share it with their members, ONLY when the
          following conditions are met.

              o  The Programmer's Productivity Pack package - including all
                 related program files and documentation files - CANNOT be
                 modified in any way and must be distributed as a complete
                 package, without exception.  The PACKING.LST text file
                 contains a list of all files that are part of the
                 Programmer's Productivity Pack package.

              o  No price or other compensation may be charged for the
                 software.  A distribution cost may be charged for the cost
                 of the diskette, shipping and handling, as long as the
                 total does not exceed $10.00 in the U.S. and Canada, or
                 $15.00 internationally.


          General Information                                             3



          Falk Data Systems             Programmer's Productivity Pack 2.50


              o  The Programmer's Productivity Pack package CANNOT be sold
                 as part of some other inclusive package.  Nor can it be
                 included in any commercial software packaging offer,
                 without a written agreement from Falk Data Systems.

              o  The PRINTED User's Guide may not be reproduced in whole or
                 in part, using any means, without the written permission
                 of Falk Data Systems.

              o  The Programmer's Productivity Pack package cannot be
                 "rented" or "leased" to others.

              o  The person receiving a copy of the Programmer's
                 Productivity Pack MUST be made aware that each disk or
                 copy is ONLY for evaluation, and that Falk Data Systems
                 has not received any royalties or payment for the product.

              o  The person receiving a copy of the Programmer's
                 Productivity Pack MUST be made aware that he or she does
                 not become a registered user until Falk Data Systems has
                 received payment for registration of the software.
                 Technical support will only be provided to registered
                 users (those who have registered the software with Falk
                 Data Systems).

              o  Any group, person, or organization, which purchases
                 advertising space in any publication CANNOT distribute the
                 Programmer's Productivity Pack under the "computer club"
                 conditions without written permission from Falk Data
                 Systems.

              o  Falk Data Systems prohibits the distribution of outdated
                 versions of the Programmer's Productivity Pack, without
                 written permission from Falk Data Systems.

          U.S. Government Information:  Use, duplication, or disclosure by
          the Government is subject to restrictions as set forth in
          subdivision (b)(3)(ii) of the Rights in Technical Data and
          Computer Software clause at 252.227-7013.














          General Information                                             4



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Warranty:
          =========

          Falk Data Systems MAKES NO WARRANTY OF ANY KIND, EXPRESSED OR
          IMPLIED, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF
          MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.

          Falk Data Systems does not assume any liability for the use of
          this software beyond its original registration price.

          In no event will Falk Data Systems be liable to you for any
          additional damages, including any lost profits, lost savings or
          other incidental or consequential damages arising from the use of
          or inability to use this software, even if Falk Data Systems has
          been advised of the possibility of such damages.


          Registration:
          =============

          The Programmer's Productivity Pack is NOT a public domain
          program.  It is Copyright (c) 1988, 1989,1990 by Falk Data
          Systems.

          The Programmer's Productivity Pack is distributed on a try-
          before-you-buy basis.  If you use the software after the
          evaluation period, you must make a registration payment to Falk
          Data Systems.

          Please refer the the REGISTER.FRM text file for complete
          information on obtaining a registered version of the Programmer's
          Productivity Pack.





















          General Information                                             5



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Why Payment Must be in U.S. Funds Drawn on a U.S. Bank:
          =======================================================

          Most U.S. software companies require payment in U.S. funds drawn
          on a U.S. bank.  Are they just lazy or what?

          When we first started in this business we didn't enforce this
          inconvenient restriction, but we soon found out why others do.

          When we received the check for our first order from Canada, the
          bank charged us $9.00 more than the check was worth, to cash it.

          When we received the check for our first order from Europe (West
          Germany), the bank charged us $35.00 to cash the check.

          In some cases we were losing money on every sale.  When you lose
          money on every sale you can't afford to make any more sales.
          This is rather absurd for a business that has bills to pay and
          people to support.

          Because of these problems we are now forced to require that every
          payment be in U.S. funds, drawn on a U.S. bank.  This is not
          because we are lazy or inconsiderate, it is simply the only way
          we can stay in business.





























          General Information                                             6



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Benefits of Becoming a Registered User:
          =======================================

          When you become a registered user of ProPak you are entitled to
          many benefits.  With your registration fee, and completed
          registration form, you get additional benefits including:

              o  A printed User's Guide and the most current version on
                 disk (in a sealed envelope).  An ASCII Poster Set
                 including a large 26" X 20", two-color poster of the
                 entire ASCII and IBM extended character sets, and a
                 smaller 8 1/2" X 11" reproduction.

                 Note:  We are gradually moving towards using recycled
                 paper exclusively.  At some point all our printed User's
                 Guides may also be printed on recycled paper.

              o  The next version sent to you on disk, automatically, at no
                 extra charge.

              o  Free technical support.

              o  Additional programs, utilities, and shareware packages, as
                 outlined below.

              o  Discounts on other products from Falk Data Systems.

              o  Automatic notification of future changes, modifications,
                 and new versions, as long as we have your current address
                 (so that mail can reach you).

              o  Automatic notification of other products and releases from
                 Falk Data Systems.

              o  The opportunity to get new versions sometimes weeks or
                 months before non-registered users.

              o  The opportunity to have ALL future versions shipped to you
                 automatically as soon as they are released.

          When we receive your registration form and payment, we will mail
          you a receipt for your payment.  We will also send you the most
          current version on disk in a sealed envelope, a printed User's
          Guide, and more.


          Additional Benefits to Registered Users:
          ========================================

          The following will be provided to registered users of the
          Programmer's Productivity Pack (as a minimum):


          General Information                                             7



          Falk Data Systems             Programmer's Productivity Pack 2.50


              o  A free CompuServe IntroPak, which includes a $15.00 usage
                 credit and a complimentary subscription to CompuServe
                 Magazine, is available to ProPak registered users who do
                 not yet subscribe to CompuServe.  CompuServe will open the
                 door for a whole new world of information, services, and
                 interesting people.  CompuServe is also the best place to
                 obtain technical support for products from Falk Data
                 Systems (and many other vendors and developers).  This
                 CompuServe IntroPak (a $39.95 value) is provided to ProPak
                 registered users compliments of CompuServe, Inc.,  and
                 Falk Data Systems.

              o  An evaluation copy of TAPCIS, from OMNI Information
                 Resources, Inc., and Support Group, Inc.  TAPCIS stands
                 for The Access Program for the CompuServe Information
                 Service.  TAPCIS is a tool that makes using CompuServe
                 easier and more efficient.  TAPCIS will save you hours of
                 online time and make using CompuServe fun.  TAPCIS is a
                 shareware program and is provided for evaluation only.  If
                 you continue to use TAPCIS after the evaluation period you
                 must register it with Support Group, Inc.  TAPCIS
                 registration includes toll free technical support by
                 calling 800-USA-GROUP, and a two layer money back
                 guarantee.  First, since TAPCIS is shareware, you may use
                 it during the evaluation period without committing a
                 penny.  Second, when you register you also get a full 90-
                 day money back guarantee.  This is, without a doubt, one
                 of the best money back guarantees in the industry!  TAPCIS
                 registration is only $79.00.

              o  A free copy of TurboPower Software's world famous TSR
                 Utilities.  These utilities make it easy for you to keep
                 track of your PC's memory usage and to control the memory
                 resident programs you use.  The TSR Utilities include:

                 MAPMEM to give you a picture of your PC's memory usage and
                 how much memory is actually used by your memory resident
                 programs.

                 DEVICE does for device drivers, what MAPMEM does for other
                 memory resident programs.

                 MARK to allow you to "mark" sections of memory and later
                 unload memory resident programs loaded above your "mark"
                 (or marks).  There is also a version called FMARK which
                 performs the same service using even less memory, and
                 MARKNET which is even useful in a network environment.






          General Information                                             8



          Falk Data Systems             Programmer's Productivity Pack 2.50


                 RELEASE to remove memory resident programs from memory
                 even if they were not designed to be removed (like the DOS
                 background PRINT program).  RELNET is similar to RELEASE
                 but is even useful in a network environment.

                 DISABLE can temporarily disable (or reactivate) memory
                 resident programs, without the need to unload them from
                 memory.

                 WATCH to keep an extra close watch over your memory
                 resident programs.

                 Other useful utility programs include EATMEM and RAMFREE.

               TurboPower Software's TSR Utilities are an impressive set of
               programs which Falk Data Systems has been licensed to
               distribute to registered users of ProPak.  See the article
               on the TSR Utilities in the June 26, 1990 issue of PC
               Magazine (page 175).

              o  The best shareware virus protection system available
                 today.  We evaluated several virus protection systems and
                 found, from a technical perspective, the one that is most
                 effective.  A major determining factor was that the
                 program should not only protect you from known virus
                 strains but should also have a good chance of protecting
                 you from new virus strains that may appear in the future.
                 Registered users of ProPak will receive an evaluation copy
                 of Flu Shot Plus, to help protect them from the threat of
                 computer virus infections.  Flu Shot Plus is provided for
                 evaluation only.  If you continue to use Flu Shot Plus
                 after the evaluation period you must register it with
                 Software Concepts Design.

              o  Because the virus problem is becoming more and more
                 important to computer users, we felt that some accurate,
                 detailed information would help to keep you informed and
                 knowledgeable.  So registered users of ProPak will also
                 receive a copy of a very informative article dealing with
                 the computer virus problem.  This article, written by Rob
                 Rosenberger, will dispel the myths and media hype
                 surrounding the virus problem today.  If you want accurate
                 information and a solid understanding of the problem and
                 its background, then this article is for you.

              o  An evaluation copy of 4DOS, the best DOS "shell" available
                 for programmers, developers, and power users.  Most DOS
                 shells are geared towards the user - pull down menus,
                 point and shoot file operations, etc.  For developers and
                 power users these shell programs only get in the way and
                 slow you down.  4DOS is different.  4DOS is a replacement


          General Information                                             9



          Falk Data Systems             Programmer's Productivity Pack 2.50


                 for COMMAND.COM.  4DOS provides all the features of
                 COMMAND.COM, with many improvements and extensions as well
                 as over 40 new commands.  4DOS is provided for evaluation
                 only.  If you continue to use 4DOS after the evaluation
                 period you must register it with JP Software.

                 See the article on 4DOS in the June 26, 1990 issue of PC
                 Magazine (page 49).  There is also an article about 4DOS
                 in the July, 1990 issue of PC World (page 129).

                 Have you ever wished you could copy all files with a .TXT,
                 .DOC, and .ASM extension to drive A:, all in one command.
                 With 4DOS it's easy.  Simply type "COPY *.TXT *.DOC *.ASM
                 A:" <Enter>.  That's it!

                 The extensions provided by 4DOS are phenomenal.  4DOS is
                 one of those programs which, after you try it, you'll
                 wonder how you ever lived without it.  Here are a few of
                 the powerful capabilities provided by 4DOS:

                     -  Minimal Memory Usage

                     -  Faster Batch Files

                     -  On-line Help

                     -  Command Line Editing

                     -  Command History

                     -  Flexible Wildcards

                     -  File Descriptions

                     -  Multiple Commands on a Single Line

                     -  Expanded and Editable Environment and Environment
                        Variables

                     -  Aliases

                     -  Expanded Command Line

                     -  Conditional Commands

                     -  Additional Redirection Options

                     -  EGA/VGA Support

                     -  Network Support



          General Information                                            10



          Falk Data Systems             Programmer's Productivity Pack 2.50


                     -  and much, much more

              o  An evaluation copy of BOOT.SYS, a very handy configuration
                 control program written by Hans Salvisberg in Switzerland.
                 BOOT.SYS makes it easy to control your system
                 configuration at boot time through an easy to use menu
                 system.  See the article on BOOT.SYS in the July, 1990
                 issue of PC Magazine (page 46).

                 BOOT.SYS makes it possible to display one or more menus at
                 boot-up time and to have different parts of CONFIG.SYS
                 and/or AUTOEXEC.BAT executed depending on which menu
                 options are chosen.

                 Many people need different versions of CONFIG.SYS
                 depending on what application they are going to run.  In
                 the past you had to either rename or edit your start-up
                 files and reboot to get a different setup.  Now this
                 process has become much easier and safer by using
                 BOOT.SYS.

                 BOOT.SYS was written for IBM-compatible Personal Computers
                 running under MS-DOS or PC-DOS 2.11 or higher.

                 The following features make BOOT.SYS a must-have for every
                 sophisticated PC installation:

                     -  easy installation, detailed examples for every
                        level of sophistication

                     -  up to nine options per menu (one line per option)
                        and a freely definable prompt area at the top of
                        the screen

                     -  up to 25 consecutive menus, each defining a
                        different aspect of your system configuration

                     -  up to 25 levels of nested menus (submenus),
                        simplifying a systematic approach to systems
                        configuration

                     -  only one version of CONFIG.SYS and AUTOEXEC.BAT; no
                        copying/renaming of files and no rebooting

                     -  select menu options by pressing the corresponding
                        digit key or by moving an arrow

                     -  user-definable timeout and default option for each
                        menu




          General Information                                            11



          Falk Data Systems             Programmer's Productivity Pack 2.50


                     -  switch to an external monitor on boot-up for some
                        laptop computers

                     -  edit individual CONFIG.SYS lines on the fly while
                        booting up

                     -  insert comments into CONFIG.SYS without generating
                        error messages

                     -  uses less than 200 bytes of resident DOS memory

                     -  do a warm or a cold boot from the DOS command line
                        or from a batch file;  change Ctrl-Alt-Del to do a
                        cold boot or disable it altogether

                     -  includes PAUSE.SYS for debugging complex CONFIG.SYS
                        set-ups

                 BOOT.SYS is provided for evaluation only.  If you continue
                 to use BOOT.SYS after the evaluation period you must
                 register it with Hans Salvisberg.

              o  Additional bonuses may also be included in the package
                 sent to registered users of the Programmer's Productivity
                 Pack.

          These additional programs and offers are made available solely as
          a service to Programmer's Productivity Pack registered users.
          Falk Data Systems receives no payments for distributing any of
          these products, even when you register them with the author.
          This is simply another means for Falk Data Systems to support its
          registered users and to help you get the most out of your
          computer systems.




















          General Information                                            12



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Technical Support:
          ==================

          Free technical support is available to all registered users of
          the Programmer's Productivity Pack.

          If you are a registered user and have a question, problem, or
          need help in any way, please feel free to contact us for
          technical support.  We are here to help you.  Falk Data Systems
          wants its customers to be happy with our products.  We will do
          our best to help you get the most out of the Programmer's
          Productivity Pack.

          Most technical support questions are answered in the ProPak
          User's Guide (this document).  So before contacting us for
          technical support, please try to find the answer to your question
          in the User's Guide.  Please check the ANSWERS.TXT text file for
          the answers to the most commonly asked questions regarding
          ProPak.  If you are unable to find the information you need, then
          please feel free to contact us.  Perhaps you've come across
          something that should be included in the User's Guide in the
          future.

          The best way to obtain technical support is through CompuServe.
          You may send CompuServe Mail messages to us on CompuServe
          [71420,2431].  We check our messages every working day, and
          frequently on weekends too.  If you are not a CompuServe
          subscriber be sure to check the appropriate box on your
          registration form and we will provide you with a free CompuServe
          IntroPak and a $15.00 usage credit.

          You may obtain technical support by writing or calling Falk Data
          Systems.

          You may write to us at the following address:

                         Falk Data Systems
                         ProPak Technical Support
                         5322 Rockwood Court
                         El Paso, Texas  79932
                         U.S.A.

          Or you may call our technical support line at (915) 584-7670.
          Our hours are 9:00 am to 5:00 pm, Mountain time, Monday through
          Friday.








          General Information                                            13



          Falk Data Systems             Programmer's Productivity Pack 2.50


          ASP Ombudsman Statement:
          ========================

          This program is produced by a member of the Association of
          Shareware Professionals (ASP).  ASP wants to make sure that the
          shareware principle works for you.  If you are unable to resolve
          a shareware-related problem with an ASP member by contacting the
          member directly, ASP may be able to help.  The ASP Ombudsman can
          help you resolve a dispute or problem with an ASP member, but
          does not provide technical support for members' products.  Please
          write to the ASP Ombudsman at P.O. Box 5786, Bellevue, WA 98006
          or send a CompuServe message via easyplex to ASP Ombudsman
          70007,3536.


          Obtaining Updates:
          ==================

          Distributing a new version of a shareware product can be more
          expensive than most people realize.  Hundreds of disks must be
          sent to shareware distributors, computer user groups, clubs and
          organizations, magazine editors, and more.  This is in addition
          to sending copies to all the registered users who are entitled to
          the new version.  The process is costly not only in postage, but
          also in time and energy.  Therefore, we don't always send out
          updates and modifications to all the usual channels.  This is one
          of the reasons registered users are often able to acquire updates
          and new versions long before non-registered users.

          Another reason why registered users are often able to receive
          updates months before non-registered users is because of the lead
          time involved in updating the catalogs of the disk vendors.  Most
          disk vendors update their catalogs every 1-3 months (depending
          upon the frequency of catalog releases).  This means that even
          after a vendor receives an update it may be several months before
          you find out about it.  If you happen to miss a catalog issue or
          overlook an update notice then it could take even longer for you
          to find out about an update.

          When we release a new version it is sent FIRST to all registered
          users who are entitled to the new version.  Their copy goes in
          the mail even before copies to magazine editors and columnists.
          Some versions are sent ONLY to registered users and NOT to anyone
          else.

          Unless you are a registered user, you have no reliable way of
          knowing whether you have the most current version or an older,
          less capable version.  This clearly shows yet another benefit to
          becoming a registered user.




          General Information                                            14



          Falk Data Systems             Programmer's Productivity Pack 2.50


          When you become a registered user of ProPak, we will send you the
          most current version on disk in a sealed envelope along with a
          printed User's Guide*.  The next version will also be sent to you
          on disk, automatically, as soon as it becomes available.

          If you are a long time registered user, and have already received
          your free update, we have other opportunities for you to receive
          automatic updates at substantially reduced costs.  Complete
          information is sent automatically to registered users who have
          already received their free update.

               * Note:  We are gradually moving towards using recycled
               paper exclusively.  At some point all our printed User's
               Guides may also be printed on recycled paper.







































          General Information                                            15



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Trademarks Mentioned:
          =====================

          Falk Data Systems, ProPak, and the Programmer's Productivity Pack
          are trademarks of Falk Data Systems.

          BRIEF is a trademark of UnderWare, Inc.

          CompuServe is a trademark of CompuServe Incorporated.

          dBASE is a trademark of Ashton-Tate, Inc.

          DESQview is a trademark of Quarterdeck Office Systems.

          Hercules is a registered trademark of Hercules
          Computer Technology, Inc.

          IBM, PC-DOS, PC/XT/AT and PS/2 are registered trademarks of
          International Business Machines Corporation.

          Microsoft and MS-DOS are trademarks or registered trademarks of
          Microsoft Corporation.

          OPTASM is a registered trademark of SLR Systems.

          TaskView and OmniView are trademarks of Sunny Hill Software.

          Periscope is a trademark of The Periscope Company.

          Solution Systems is a trademark of the Software
          Developer's Corporation.

          Turbo Professional is a registered trademark of Sunny
          Hill Software, used under license to TurboPower
          Software.

          TurboPower Software is a trademark of TurboPower Software.

          Turbo Pascal, Turbo Assembler, Turbo Debugger, Sidekick and
          SideKick Plus are registered trademarks of Borland International.

          WordStar is a registered trademark of MicroPro International
          Corporation.

          Some of the trademarks of other companies mentioned in this
          user's guide appear for identification purposes only.







          General Information                                            16



          Falk Data Systems             Programmer's Productivity Pack 2.50


                                    --------------
                                     Introduction
                                    --------------


          What is ProPak?
          ===============

          The Programmer's Productivity Pack, ProPak, is a software package
          designed to provide the utilities and reference tools most
          frequently needed by programmers.  What's more, each individual
          tool or "attachment" within the ProPak package was designed to be
          the best, most powerful, most flexible, and easiest to use in its
          category.

          For instance, The Programmer's Calculator, which is only one of
          the tools built into ProPak, is the best Programmer's Calculator
          on the market, bar none!  Integrating all of these tools into one
          program and placing them at your disposal at one time will make
          the time you spend programming more productive than ever.

          ProPak provides you with:

              o  A Programmer's Calculator that works simultaneously in
                 decimal, binary, hexadecimal, and octal.

              o  Addition, subtraction, multiplication, integer division,
                 and modulus mathematical functions.

              o  SHL, SHR, ROL, ROR, SAL, SAR, RCL, RCR bit manipulation
                 functions.

              o  AND, NOT, OR, and XOR logical functions.

              o  Exchange word and exchange double word functions.

              o  An ASCII and color attribute chart.

              o  A keystroke reference utility that returns both the BIOS
                 scan codes and the dBASE INKEY() values.

              o  Keystroke Recording and Playback that allows up to 100
                 Keystroke Recordings of 1,000 keystrokes each.

              o  A Screen Grabber utility to grab text off the screen and
                 play it back like a Keystroke Recording.

              o  A Screen Capture facility that allows filtering for screen
                 or printer.

              o  Access to the DOS background PRINT facility.


          Introduction                                                   17



          Falk Data Systems             Programmer's Productivity Pack 2.50


              o  A screen blanking facility that will park your hard disk
                 (or disks) while the screen is blanked.

              o  A pop-up DOS shell capability which allows you to shell to
                 DOS from any program, with as much as 600K bytes of memory
                 available in the DOS shell.

              o  Complete control of all the Hot Keys, colors, sound
                 effects, file extensions, memory usage, and more, through
                 PCustom, the customizing program.

          All this and more.  All in one smoothly integrated package.  The
          Programmer's Productivity Pack includes tools which can run
          stand-alone, memory-resident (even with Sidekick), memory-
          resident with swapping, or as a background task in a multitasking
          environment.  And since ProPak provides you with the ability to
          customize every detail, it not only helps you to be more
          productive, it also gives you the freedom to adapt it to your
          particular needs and preferences.

          The Programmer's Productivity Pack can handle dual monitor
          systems, EMS and XMS memory, multitasking systems like DESQview
          and TaskView/OmniView, and more.  Each version can be easily and
          safely unloaded from memory when the need arises.  You even have
          three different methods by which it may be unloaded.

          The Programmer's Productivity Pack is even compatible with
          Borland's Sidekick.  It is so compatible that it can be safely
          loaded AFTER Sidekick.

          All things considered, the Programmer's Productivity Pack should
          become one of your most often used utilities, and you might find
          yourself wondering how you ever got along without it.
          Congratulations on one of your best software acquisitions!


          System Requirements:
          --------------------

          The Programmer's Productivity Pack requires PC/MS-DOS 2.0 or
          higher, on an IBM PC, XT, AT, PS/2, or close compatible.  ProPak
          will work on a floppy disk only system, but a hard disk is
          recommended.

          ProPak supports all common video adapter and monitor
          combinations, including dual monitor systems.  ProPak has been
          tested with the following adapter types:  MDA, CGA, EGA, MCGA,
          and VGA, as well as the Hercules and Hercules InColor cards.

          EMS and/or XMS memory is helpful but not required.



          Introduction                                                   18



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Memory Requirements:
          --------------------

          The actual  memory requirements will vary depending upon which of
          the two versions you use, how swapping is handled, the amount of
          memory you reserve for Keystroke Recordings, etc.

          The swapping version, ProSwap, retains only about 7K bytes of
          memory while resident (and swapped out).  The minimum memory
          requirement for ProPak is about 96K bytes.

          ProPak is shipped with 2K bytes (2,048 bytes) of memory set aside
          for Keystroke Recordings.

          The customizing program, PCustom, requires 256K bytes of RAM.

          ProSwap uses as little memory as possible.  ProSwap can swap
          itself to disk, to EMS memory, or to XMS memory.  All this
          flexibility means that ProSwap is the ideal choice when memory is
          scarce.

          In order to conserve as much of your precious memory as possible,
          ProPak makes extensive use of overlays (ProSwap does not).  An
          overlay is a technique which allows a program to run without
          having all of its machine instructions in memory at the same
          time.  When you pop up the Calculator, the machine instructions
          for The ASCII Chart, Keystroke Reference Center, etc., remain on
          disk, and only the machine instructions needed for the Calculator
          will be in memory.  This has the advantage of requiring less
          memory (a definite virtue for memory-resident programs), but it
          means that ProPak must go to the disk at certain times to get
          instructions on what to do next.

          There is a number of things you can do to maximize ProPak's
          performance and customize its memory usage.  The biggest
          improvement will be obtained through the use of EMS memory.  If
          you have EMS memory, and if you allow ProPak to use it, the
          entire overlay file will be placed into EMS memory.  This means
          two things.  First, the overlay file on disk will no longer be
          needed, which will save you one file handle.  Secondly, reading
          the necessary sections of the overlay file will occur much faster
          because it will be a simple memory transfer rather than a disk
          access, therefore, the size of the overlay buffer can remain
          minimal.  This also conserves the maximum amount of RAM (Random
          Access Memory) for the use of your other programs.








          Introduction                                                   19



          Falk Data Systems             Programmer's Productivity Pack 2.50


          How To Use This Manual:
          -----------------------

          This manual is designed to get you up and running with the
          Programmer's Productivity Pack as quickly as possible.  Besides
          being written in a simple, conversational style there are five
          special features which will help you get the most from ProPak in
          the minimum amount of time.


          The Quick Start Tutorials

               The "Quick Start Tutorials" are designed to help you begin
               using the individual tools in the Programmer's Productivity
               Pack in an efficient and productive manner as quickly as
               possible.

               There are six Quick Start Tutorials in this manual.  Each
               one is complete in itself.  This means that they don't have
               to be read together or in any particular order.  Each
               tutorial should take about 15 minutes or less to complete.
               Although the tutorials don't cover every single feature of
               the program in detail, they will get you comfortable and
               familiar with the major functions in each tool quickly and
               painlessly.  It would be to your benefit to read the Quick
               Start Tutorials, even if you never looked at the rest of the
               manual.  They will help you get your money's worth out of
               this software package.  Take advantage of them.  You'll be
               glad you did!

               Since ProPak was written to be easy to learn and use (to be
               "intuitive") you will probably find that the Quick Start
               Tutorials are all you will need to start working profitably
               with it.


          The In-Depth Reference Guides

               There are ten In-Depth Reference Guides in the ProPak User's
               Guide covering each one of the tools and utilities
               individually.  As the name implies, this is where you can
               find a complete listing and description of each and every
               feature of that tool or program.  Every command and option
               will be given, along with any necessary information on how
               and when to use it.

               The In-Depth Reference Guides contain a tremendous amount of
               helpful information and we suggest that you consult them.
               They are written in the same simple, conversational style
               and should be just as comfortable to read as the tutorials.



          Introduction                                                   20



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Tips and Tricks

               Wherever we have been able to develop helpful tips and
               tricks to make the use of ProPak even more efficient we have
               put them in the User's Guide and marked them with "TIP:".
               Using these techniques does not require any more expertise
               than using any other feature of the program.  They are just
               the by-product of the many hours the author, beta-testers,
               and users have spent using the program.  In future upgrades
               we will include any other tips that we find or develop or
               that you bring to our attention.  Our desire is to provide
               you with the best tools possible.


          The Appendices

               There are five appendices following the User's Guide that
               will be of special value to any of you that are new to
               programming.  They may even help some of you old pros to
               fill in a few gaps in your understanding.  We have
               endeavored to make ProPak a useful tool for both the student
               and the professional programmer.


          The Index

               The Index at the back of the User's Guide is as
               comprehensive as we could make it.  To keep its completeness
               from being counterproductive we have marked the page or
               pages where the feature is most completely covered with bold
               print.  Therefore, even if there is a dozen page listings
               after an entry in the index, going to the one in bold print
               will probably be the most useful.  However, all the listings
               are there for the person who wants to know as much as is
               available about any given feature.


















          Introduction                                                   21



          Falk Data Systems             Programmer's Productivity Pack 2.50


                               -----------------------
                                How to Install ProPak
                               -----------------------


          ProPak is distributed on two 5¬ inch, 360K floppy diskettes or
          one 3« inch, 720K diskette, and/or in a compressed format.


          Which Files Do I Need?:
          =======================

          The following discussion outlines the files included in the
          Programmer's Productivity Pack.

          ProPak.EXE:  This is the MS-DOS memory-resident version of the
          Programmer's Productivity Pack.  ProPak uses overlays
          extensively.  Early versions required a separate overlay file
          called ProPak.OVR.  Beginning with version 2.50 the overlay file
          is appended to the tail-end of the ProPak.EXE file.

          ProSwap.EXE:  This is the flexible-loading version.  ProSwap can
          run as a memory-resident "swapping" version, a standard memory-
          resident version, a background task under DESQview or
          OmniView/TaskView, or as a stand-alone program under MS-DOS.

          PCustom.EXE This is the customizing program which will enable you
          to customize both versions of ProPak.  In fact, you can even
          customize both versions at the same time.

          The customizing program does not need to be present to make
          changes in the program "on the fly".  You can always make changes
          in memory using the "Modify Options" submenu within the ProPak
          Control Center.  The customizing program DOES have to be used if
          you want the changes to be "permanent".  That is, written to disk
          and available to you the next time you turn on your computer.
          Changes made from within ProPak are not "permanent" because they
          are made in memory and will be lost when you unload ProPak or
          turn off your computer.  Both methods of customizing are simple
          to use whenever needed.

          Those are the files that make up the Programmer's Productivity
          Pack, but, there are also several other files on the distribution
          diskettes.

          You will find a file called "ANSWERS.TXT", which answers the most
          commonly asked questions concerning the use of the Programmer's
          Productivity Pack.





          Installing ProPak                                              22



          Falk Data Systems             Programmer's Productivity Pack 2.50


          With this information you can decide which version or versions
          will be the most useful to you.  Whichever files you decide to
          use, we recommend that they all be placed into the same
          subdirectory, preferably in your DOS path.  If the concept of
          directories or paths is new to you please read Appendix C, at the
          back of the User's Guide.  More information is available from
          your MS-DOS User's Guide.

          By the way, PCustom, the customizing program, is not required for
          the operation of ProPak or ProSwap, but, it is nice to have on
          hand.  Unless disk space is at a premium, keep it available at
          all times.


          Installing On A Hard Disk System:
          =================================

          The first step, which should be taken BEFORE you install the
          programs on your hard disk, is to make backup copies.  This is a
          very important safety measure which you should take with every
          new program.  This protects your investment in case a disk
          becomes damaged or erased.  We provide extra labels with the
          registered version for you to place on your backup copies.
          Finally, we recommend that you use the  copies as "working
          copies" and place the original diskettes in a safe place.

          Installing the Programmer's Productivity Pack on your hard disk
          is simply a matter of deciding which files you want to copy to
          your hard disk, and which subdirectory you want to place them in.

          Running an actual "installation" program is not required.  Any
          one of the two versions will run fine.  There is no "PInstall"
          program.

          PCustom allows you to customize various features of the program,
          but it is not necessary in order to get ProPak up and running.
          In fact, ProPak is sophisticated enough to determine for itself
          if you are using a color or monochrome monitor, EMS memory, etc.
          We should add however, that if you are using a black-and-white
          monitor, such as an LCD or gas plasma display, or other gray
          scale type of monitor, you will probably want to run PCustom to
          change the screen colors to the gray scale values.  This is
          covered in the section "Setting ProPak For Your Monitor" (page
          25).  ProPak is already set to look good on monochrome and color
          monitors.








          Installing ProPak                                              23



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Installing On A Floppy Disk System:
          ===================================

          Because ProPak uses overlays and ProSwap uses swapping to
          conserve memory, we recommend that it be run from a hard disk
          rather than from the slower floppy diskette drives.  But, if you
          do not have a hard disk, don't worry.  You can still use the
          Programmer's Productivity Pack.  You will, however, need to have
          the diskette present in the disk drive whenever you are using any
          of the ProPak programs.

          You can greatly improve the performance of ProPak by using
          PCustom to modify it for your floppy disk only system.  For
          specific details refer to the In-Depth Reference Guide for
          PCustom on page 136.

          As with every software product you purchase, your first step
          should be to make backup copies of the distribution diskettes.
          This will protect your investment in case something unexpected
          happens to the original diskettes.  We provide (with the
          registered version) printed labels for you to place on your
          backup copies.  Finally, we recommend that you use the backup
          diskettes as the "working copy" and place the original diskettes
          in a safe place.

          We recommend that you make a separate diskette for each version
          (ProPak and ProSwap) and that you include PCustom on each
          diskette.  This way you will be able to customize the program
          whenever you wish.  However, PCustom is not required for ProPak
          or ProSwap to run.

          Running an actual "installation" program is not required.  Any
          one of the two versions will run fine.  There is no "PInstall"
          program.

          PCustom allows you to customize various features of the programs,
          but it is not necessary in order to get ProPak up and running.
          In fact, ProPak is sophisticated enough to determine for itself
          if you are using a color or monochrome monitor, etc.  We should
          add however, that if you are using a black-and-white monitor,
          such as an LCD or gas plasma display, or another gray scale type
          of monitor, you will probably want to run PCustom to change the
          screen colors to the gray scale values.  This is covered in the
          next section "Setting ProPak For Your Monitor".  ProPak is
          already set to look good on monochrome and color monitors.

          If you are new to MS-DOS and are not sure how to copy files from
          one disk to another, then Appendix C (page 154) contains some
          basic information about directories, subdirectories, and other
          MS-DOS information.  You should also consult your DOS manual to



          Installing ProPak                                              24



          Falk Data Systems             Programmer's Productivity Pack 2.50


          familiarize yourself with DOS and to answer any questions that
          may arise.


          Setting ProPak For Your Monitor:
          ================================

          You do not have to do anything to set up ProPak (or ProSwap) for
          your monitor if you are using either a color or monochrome
          monitor.  ProPak is sophisticated enough to know which one you
          have without asking you.

          However, gray scale type monitors (LCD, gas plasma, etc.) look
          like color monitors to any software.  If you don't tell ProPak
          that you really have a black-and-white display then some of the
          screens will not be very clear.  PCustom enables you to set
          ProPak to look good on a black-and-white monitor.

          To set ProPak to look good on your black-and-white monitor,
          simply type "PCUSTOM" <Enter>.  When the PCustom Main Menu
          appears choose "Modify All Versions Present".  Wait for a second
          and another Menu will appear.  Choose "Colors".  When the
          "Colors" Submenu appears choose "Gray Scale Attribute Set".  Move
          the highlight bar with the <Down> arrow key and press <Enter>
          when "Gray Scale Attribute Set" is highlighted.  Now go to "Exit
          PCustom" and press <Enter>.  Choose "Save Changes" and you are
          done.

          Refer to the section on PCustom (page 120) for more detailed
          information.

          You do not have to make any special arrangements to use ProPak
          with a dual monitor system.


          The 80 Column Text Mode:
          ========================

          In general, the features provided by ProPak are only available
          while in an 80 column text mode.  ProPak will recognize and take
          advantage of 25, 43 and 50 line modes.  ProPak is not designed to
          pop up while in graphics mode.  This is due to the fact that much
          more memory would be needed to save a graphics screen than a text
          screen.  For the same reason, ProPak was not designed for use in
          132 column mode (which is rarely used).  Also, since most of
          ProPak's displays cannot fit on a 40 column screen, it will not
          pop up under those conditions.






          Installing ProPak                                              25



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The Modifier Keys:
          ==================

          Many times in both the manual and the on-screen menus, a
          keystroke command is listed with a caret (^) in front of the key.
          For instance, the Calculator's Quick Reference Menu is opened
          using <^M>.  ProPak is not excessively picky about keystrokes.
          To make things as easy as possible such keys can actually be
          entered in a number of different ways.  Let's use the "^M"
          example.  <^M> can be entered as Ctrl-M, Alt-M, Shift-M, or just
          plain "M".  This makes keystroke commands very easy to remember.

          There are only two categories of exceptions to this rule and they
          will always be explained as they are encountered.  The two
          general categories are outlined below.

          When you are in Hexadecimal format in The Programmer's
          Calculator, the letters "A" through "F" correspond to the
          hexadecimal values 0A hex (10 decimal) through 0F hex (15
          decimal).  Therefore, to use one of these letters as anything
          other than a hexadecimal value, they must be preceded by either
          <Ctrl> or <Alt>.

          Some keys such as <Tab> or <F1> mean the opposite when they are
          modified with <Ctrl>, <Alt> or a <Shift> key.


          ProPak and Your Keyboard:
          =========================

          Knowing how ProPak uses your keyboard can help you get the most
          out of ProPak.  ProPak is able to use more key combinations than
          most software.  The reason for this is twofold.

          When ProPak is installed, it hooks into the BIOS keyboard
          interrupts (Interrupts 09h and 16h) and adds several additional
          capabilities to those interrupts.  These additional features are
          much more apparent to those of you who do not have enhanced
          keyboards.  ProPak is able to recognize many key combinations
          that are normally usable only with an enhanced keyboard.  Also,
          for users of enhanced keyboards, ProPak is able to use about a
          dozen key combinations that are not normally recognized by the
          BIOS alone.  This enhancement to normal keyboard functionality is
          at a very low level, meaning that you do not have to do anything
          special to obtain this benefit.

          On a higher level, ProPak goes to extreme lengths to recognize
          keys logically according to the context in which they are typed.
          For instance, if you are using The Programmer's Calculator and do
          not have NumLock set and you press the <Up> Arrow key, it is
          fairly obvious that you intended to enter the number 8.  This


          Installing ProPak                                              26



          Falk Data Systems             Programmer's Productivity Pack 2.50


          concept helps to make ProPak so easy to use.  It even works with
          the number 5 key, the center key on the numeric keypad, when
          NumLock is NOT on.

          By being aware of ProPak's efforts to make your keyboard more
          functional, you can often think of additional ways to improve
          your productivity.  After all, who knows more about the kinds of
          things you use your computer for than you do?


          The ASCII Poster:
          =================

          (Included in the registered version!)  This 20" x 26" poster
          gives you the character, decimal value, and hexadecimal value of
          the 256 ASCII and extended ASCII characters.  It also has the
          often needed box drawing characters arranged logically and large
          enough to see from a distance.  If you put this in a convenient
          spot near your computer you will never have to look for an ASCII
          chart in a manual again!

































          Installing ProPak                                              27



          Falk Data Systems             Programmer's Productivity Pack 2.50


                           -------------------------------
                            How To Load And Unload ProPak
                           -------------------------------


          Now that you have chosen which files you want to use and have
          installed them on your system, all that remains is to use them.


          Loading ProPak:
          ===============

          When we are speaking in general terms about the Programmer's
          Productivity Pack we use "ProPak".

          To load ProPak into memory type "PROPAK" at the DOS prompt and
          press <Enter>.

          After a brief pause while the program is read from disk, you will
          see a screen appear that is full of information.  You might like
          to take a moment to read over the information on your screen.

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                              Figure 1: Opening Screen

          Figure 1 is a sample of ProPak's opening screen.  It was actually
          captured using ProPak's Screen Capture facility (edited for the
          ASCII documentation).  Referring to Figure 1, or better yet, to
          the actual display on your screen, you will see that ProPak
          provides you with all the information you are likely to need, or
          that you may be curious about.

          The upper portion of the screen provides you with information
          concerning EMS memory.  This information includes the presence or
          absence of EMS memory, the status of EMS memory as reported by
          the Expanded Memory Manager, and most importantly, whether or not
          ProPak is using EMS memory for its overlay file.

          The lower portion of the screen provides detailed information
          regarding how much normal RAM memory is being used by ProPak, as
          well as an approximate breakdown of HOW it is being used.  Here
          is a brief explanation of each of these values:

              o  Program Segment Prefix (PSP) - PC/MS-DOS always places a
                 256 byte chunk of memory at the beginning of each program
                 it executes.  This 256 byte area contains information that
                 the program may use or refer to during execution.




          Loading and Unloading ProPak                                   28



          Falk Data Systems             Programmer's Productivity Pack 2.50


              o  Environment Block (at least) - The is the area of memory
                 where MS-DOS stores any global parameters.  These are
                 strings like your path command, any "SET=?" strings, etc.
                 ProPak does not know how much memory is reserved for the
                 environment block, but it does know how much of the
                 environment block is actually in use storing parameters.

              o  CODE (??,???)  DATA (??,???) - "CODE" refers to the memory
                 used for machine instructions.  "DATA" refers to the
                 memory used for storing internal variables, data
                 structures, etc.

              o  Internal Stacks - A "stack" is a storage area that your
                 computer uses to keep track of information on a temporary
                 basis.  ProPak has five internal stacks, one for each of
                 the tools accessed with a Hot Key.  To minimize memory
                 usage ProPak uses a sophisticated scheme that allows one
                 internal stack to "overflow" onto another internal stack
                 safely.

              o  Overlay Buffer - The overlay buffer is very similar to the
                 CODE area mentioned above.  The overlay buffer contains
                 machine instructions needed by ProPak to perform various
                 tasks.  However, the Overlay Buffer does not always
                 contain the same information.  It contains only the
                 machine instructions needed at any given time.  Machine
                 instructions not currently needed remain on disk in the
                 .OVR file, or in EMS memory if it is in use.  This is a
                 common technique used to conserve memory.

              o  HEAP (where dynamic storage occurs) - The "HEAP" is simply
                 an area of memory set aside for use by ProPak as needed.
                 For example, when you pop up ProPak it saves an area of
                 the screen before it overwrites it.  This is how ProPak is
                 able to restore your screen when it is finished.  The area
                 of the screen is saved on the "HEAP".

          If this information is confusing to you, don't worry.  You don't
          need to memorize any of these values.  This information is there
          for those who like to know exactly how much memory is being used
          by ProPak, and for what it is being used.  Pressing any key will
          clear the screen and return you to the DOS prompt.

          ProPak is a memory-resident program.  What this means is that
          when you first run the program, it will install itself in memory
          and then return control to DOS.  So when you find yourself back
          at the DOS prompt after pressing any key, don't worry, you're
          doing just fine.





          Loading and Unloading ProPak                                   29



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Once you are back at the DOS prompt, you will see two key
          combinations listed.  These are the keys that will activate
          ProPak when they are pressed.  One will pop up The Programmer's
          Calculator and the other will pop up The Control Center.  These
          activation keys are called "Hot Keys." But don't press them yet.
          First, we will show you how ProPak can be removed from memory.


          Bypassing the Opening Screen:
          -----------------------------

          Sometimes you may prefer to start ProPak without viewing the
          Opening (memory usage) screen.  To do this simple start ProPak
          with ANY command line parameter.  That's right.  Type "PROPAK"
          followed by a space and anything you want, then press <Enter>.
          This tells ProPak to "shut-up" and proceed without displaying the
          opening memory status display.


          Renaming PROPAK.EXE:
          --------------------

          ProPak uses overlays which are attached to the end of the
          PROPAK.EXE file.  This means that ProPak must always be able to
          find itself on disk (unless EMS memory is used for the overlays).

          Even though most options are controlled through the configuration
          file (PROPAK.CFG), some options require PCustom to modify the
          .EXE file itself.  To do this, PCustom must be able to find the
          PROPAK.EXE file.

          To enable you to rename PROPAK.EXE, so that it knows it's new
          name, and so that PCustom can find it later, you should always
          use PCustom to rename PROPAK.EXE.  PCustom has a new option which
          will make this easy for you.

          Never change the name of the configuration file (PROPAK.CFG).  If
          you change the name of the configuration file, then ProSwap or
          PCustom will simply write a new PROPAK.CFG file the next time
          they run.  The new file will have all the default values and will
          not retain any customizations you may have made.


          Using ProSwap:
          ==============

          ProSwap is an extremely flexible program containing the most used
          features of The Programmer's Productivity Pack.





          Loading and Unloading ProPak                                   30



          Falk Data Systems             Programmer's Productivity Pack 2.50


              o  ProSwap can be loaded as a swapping memory resident
                 version which swaps most of itself out of memory when not
                 in use.  When loaded in this fashion ProSwap retains only
                 about 7K bytes of memory while resident.  ProSwap can swap
                 itself to:

                     -  XMS memory.

                     -  EMS memory.

                     -  a RAM disk.

                     -  a hard disk.

              o  ProSwap can be loaded as a traditional memory resident
                 program (no swapping).

              o  ProSwap can also be run as a stand-alone DESQview aware
                 program which does not remain memory resident.

          ProSwap has one additional capability not found in ProPak:
          ProSwap provides a pop-up DOS shell capability.  When activated,
          this capability swaps the currently running program out, freeing
          as much memory as possible, then loads a secondary copy of the
          command processor, and places you at the DOS prompt.  This
          capability enables you to shell to DOS from programs that do not
          have this capability built in.

          Important Note:  To use the pop-up DOS shell capability you must
          have PC/MS-DOS 3.0 or later.  If you are using an earlier version
          of DOS you will have to disable the DOS shell capability using
          PCustom, before you can use ProSwap.


          Loading ProSwap:
          ----------------

          To start ProSwap simply type "PROSWAP" <Enter> at the DOS prompt.
          This will start ProSwap in it's default (normal) mode.  Several
          command line options are available and are described in detail
          below.  Before we discuss the command line options, you should be
          aware of some limitations.

          ProSwap is designed to provide you with as much usable memory as
          possible while it is resident.  To accomplish this ProSwap must
          be able to swap itself into and out of memory.  Because of this
          swapping behavior there are several things you must avoid.

              o  ProSwap cannot be loaded into "high" memory using
                 utilities such as QRAM, QEMM, 386MAX, or any similar
                 utility.


          Loading and Unloading ProPak                                   31



          Falk Data Systems             Programmer's Productivity Pack 2.50


              o  ProSwap should not be loaded before programs that contain
                 hardware interrupt handlers.  Examples of such programs
                 are network shells, multitasking operating systems, and
                 communications programs.  If you are going to use ProSwap
                 in these environments you should load it after the network
                 shell or multitasking operating system is installed.

              o  It is possible to load ProSwap and still run
                 communications programs like ProComm or TAPCIS, providing
                 you follow some simple guidelines.  Do NOT pop ProSwap up
                 over your communications program while it is online,
                 uploading or downloading, or waiting to answer an incoming
                 call.  When ProSwap pops up it swaps the current
                 application out - essentially trading places with it in
                 memory.  This will be a problem if the other program was
                 trying to deal with com ports or some other hardware
                 related activity.  Of course, if you are using a program
                 like ProComm or TAPCIS and the program is not online or
                 waiting to answer an incoming call, then it is safe to pop
                 up ProSwap.

              o  ProSwap will not pop up over a program operating in
                 graphics mode.  ProSwap does not know how to save and
                 restore a graphics screen.  So to prevent problems,
                 ProSwap will simply beep and refuse to pop up when your
                 video system is in graphics mode.

          There are also some important restrictions regarding the pop-up
          DOS shell capabilities.

              o  You cannot pop to a DOS shell while you are at the DOS
                 command line.  The problem has to do with the way DOS
                 handles its internal stacks.  You're probably wondering
                 "why would I want to shell to the DOS command line when
                 I'm already at the DOS command line?".  Well, there's
                 really no reason to do this, so this isn't much of a
                 limitation.  Unfortunately, this is one of the first
                 things users try to do when they start experimenting with
                 ProSwap.

              o  This same conflict arises if you pop up a TSR from the DOS
                 command line and then try to pop to a DOS shell using
                 ProSwap.  Even though you popped up another TSR,
                 technically you are still at the DOS command line.

              o  The DOS programs DEBUG and EDLIN are very similar to the
                 DOS command line in terms of how internal DOS stacks are
                 managed.  Because of this you cannot pop to a DOS shell
                 from within DEBUG or EDLIN.




          Loading and Unloading ProPak                                   32



          Falk Data Systems             Programmer's Productivity Pack 2.50


              o  It is possible, under a multitasking system such as
                 DESQview, for ProSwap to not recognize that you are at the
                 DOS command line.  So be very careful when using ProSwap
                 under a multitasking operating system - don't try to pop
                 to a DOS shell from the DOS command line.

              o  Finally, the most important restriction:  Do NOT install
                 another memory resident program while you are within the
                 ProSwap DOS shell.  When you exit from the DOS shell
                 ProSwap will swap the new memory resident program out and
                 the results will not be pretty.

          When ProSwap is swapping to disk, it must be absolutely
          guaranteed that it will have access to it's swap files when it
          swaps itself into or out of memory.  This requirement, coupled
          with the speed issue, means that ProSwap's swap file cannot be
          located on removable media such as a floppy diskette.  ProSwap
          checks for this and will refuse to load if you specify a floppy
          drive as the location for the swap files.  Even though the media
          is technically removable, you may still use a Bernoulli drive as
          the location for the swap files.


          ProSwap Command Line Options:
          -----------------------------

          Some programs are overly picky about how a command line option is
          entered.  Some programs expect each option to be preceded by a
          space and a backslash.  Even worse, some programs are case
          sensitive - a command line option must be lower case, or it must
          be upper case, or some other limitation.  Command line options
          with ProSwap are very easy.

          For instance, if a command line option is "/X" - the "X" may be
          either upper or lower case.  Furthermore, it may be preceded by a
          forward slash (/), a backslash (\), a dash (-), or a space ( ).

















          Loading and Unloading ProPak                                   33



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Here is a brief list of each option.  The list is followed by a
          detailed description of each option.

               -D   force swapping to Disk only

               -E   force swapping to EMS memory only

               -H   Help (same as "-?")

               -M   Minimize swap size (XMS and Disk only)

               -N   No swapping (TSR mode - same as "-T")

               -P   Preserve mouse state within the DOS shell

               -S   Stand-alone (non-resident), DESQview aware mode

               -T   TSR mode (no swapping - same as "-N")

               -U   Unload the previously loaded copy of ProSwap from
                    memory

               -X   force swapping to XMS memory only

               -?   shows a list of all available command line options and
                    returns to the DOS command line (help - same as "-H")


          (D) Force Swapping to Disk Only:

               This option forces ProSwap to swap to disk even if
               sufficient EMS or XMS memory is available.  Swapping to disk
               is inevitably slower than swapping to EMS or XMS memory.
               The speed of the swapping process can be further controlled
               by the "-M" option described below.

               This option can be permanently controlled using PCustom.


          (E) Force Swapping to EMS Memory Only:

               This option forces ProSwap to swap to EMS memory.  If there
               is not enough EMS memory available, then ProSwap will abort
               without attempting to swap to either disk or XMS memory.

               This option can be permanently controlled using PCustom.







          Loading and Unloading ProPak                                   34



          Falk Data Systems             Programmer's Productivity Pack 2.50


          (H) Help:

               Displays a list of command line options and returns to DOS
               without going resident.  This can be accomplished using any
               command line option that is not recognized by ProSwap.  This
               option is the same as "-?" described below.


          (M) Minimize Swap Size:

               This option applies only when ProSwap is swapping to disk or
               to XMS memory (it is ignored when swapping to EMS memory).

               When swapping to disk, two swap files are used.  When
               swapping to XMS memory, two blocks of memory are used.  One
               is used for storing the memory under the control of ProSwap,
               the other is used for storing the memory under the control
               of the application being swapped out.  This allows the
               swapping operation to occur as quickly as possible - at the
               expense of using more disk space, or more XMS memory.

               When the "-M" option is used, ProSwap will use only one file
               when swapping to disk, or one memory block when swapping to
               XMS.  In effect, the two swap images "trade places" with
               each other during the swapping operation.

               This option causes ProSwap to use much less disk space, or
               much less XMS memory.  The price you pay for conserving
               these resources is speed.  Swapping takes much longer in
               this mode.

               This option can be permanently controlled using PCustom.


          (N) No Swapping, and
          (T) TSR Mode:

               These options are identical.  Use the one that is easiest
               for you to remember.

               When ProSwap is loaded in TSR mode, it will load just like
               ProPak.  It will remain in memory until it is unloaded - no
               swapping will be performed.  This means that it will pop-up
               instantly when a hot key is pressed, but it will take much
               more memory away from your other programs.  The pop-up DOS
               shell capability is not available in this mode.

               This option can be permanently controlled using PCustom.





          Loading and Unloading ProPak                                   35



          Falk Data Systems             Programmer's Productivity Pack 2.50


          (P) Preserve Mouse State:

               Most people won't pop to DOS from a program that uses a
               mouse and then run another program that uses a mouse.  So
               there is usually no need for ProSwap to preserve the mouse
               state when it pops to DOS and restore it when it returns
               from DOS.  Some newer mouse drivers are annoyingly slow at
               initializing (which happens every time you pop to DOS),
               which is yet another reason why ProSwap does not normally
               preserve the state of the mouse.

               This option tells ProSwap to preserve the mouse state before
               it shells to DOS, and to restore the mouse state when it
               returns from the DOS shell.  If you use a mouse often, you
               will want to start ProSwap with the "-P" option.


          (S) Stand-Alone Mode:

               This option tells ProSwap to run like a traditional program.
               This means that ProSwap will not go memory resident.  When
               you are finished using ProSwap and exit, you will return to
               DOS.  In this mode ProSwap is DESQview aware and sends all
               screen output to the buffer provided by DESQview rather than
               directly to video memory.

               This option can be permanently controlled using PCustom.


          (U) Unload From Memory:

               Tells ProSwap to look for a copy of itself already loaded
               into memory, and to unload that copy if found.  When this
               option is used, ProSwap will unload the resident copy and
               then return to DOS.

               This is the safest way to unload ProSwap from memory!

               If ProSwap was not previously loaded then this option is
               ignored.

               * When this option is used it should be the *only* option
                 used.










          Loading and Unloading ProPak                                   36



          Falk Data Systems             Programmer's Productivity Pack 2.50


          (X) Force Swapping to XMS Memory Only:

               This option forces ProSwap to swap to XMS memory.  If there
               is not enough XMS memory available then ProSwap will abort
               without attempting to swap to either disk or EMS memory.

               NOTE:  XMS swapping is only available with XMS (Extended
               Memory Specification) extended memory - not with simulated
               extended memory or extended memory which doesn't conform to
               the XMS standard.

               This option can be permanently controlled using PCustom.


          (?) Help:

               Displays a list of command line options and returns to DOS
               without going resident.  This can be accomplished using any
               command line option which is not recognized by ProSwap.
               This option is the same as "-H" described above.


          ProSwap as a Stand-Alone Program:
          ---------------------------------

          By now you have a good grasp of how a memory-resident program is
          loaded into memory.  Now let's examine some of the differences
          between the memory-resident and the stand-alone or multitasking
          capabilities of ProSwap.  ProSwap, when loaded with the "/S"
          option, is designed to run as a stand-alone program under MS-DOS
          or as a background task under DESQview or TaskView/OmniView.

          The memory-resident versions of ProPak write directly to video
          memory when they output information to the screen.  There are
          several advantages to this technique.  First and foremost,
          writing directly to video memory is much faster than sending all
          screen output through the operating system.  Additionally, direct
          screen writing allows ProPak to retain more control over the
          screen.

          Programmers running ProSwap under DESQview or TaskView/OmniView
          should consider the subject of "windows".  In deciding how to set
          up ProSwap you should be aware that some features use the entire
          screen.  For instance, The ASCII and Color Attribute Chart will
          use the entire 25, 43 or 50 lines available on the screen
          (depending upon the current video mode and hardware
          capabilities).  Of course, before overwriting anything currently
          displayed on the screen, both versions of ProPak will copy the
          screen contents to their own internal buffer, and then restore
          the screen before exiting.  If you specify a window size smaller
          than the entire screen, sometimes ProSwap will write outside the


          Loading and Unloading ProPak                                   37



          Falk Data Systems             Programmer's Productivity Pack 2.50


          boundaries of that window.  It will always restore it when it is
          finished, so don't worry.

          When ProSwap is running under a multitasking system it may not be
          the only program using the screen.  If another program is using
          the screen, it would be very rude for ProSwap to overwrite the
          other program's output.  To avoid this, ProSwap sends its screen
          output to the "virtual screen" provided by the multitasking
          system, rather than directly to video memory.  This allows the
          multitasking system to retain control over which application has
          access to the actual screen at any given time.

          What this means to multitasking systems is that ProSwap is very
          considerate of any other programs that might be running
          simultaneously.

          Another consideration is that these multitasking systems provide
          their own keyboard macro (Keystroke Recording and Playback)
          capabilities, and their own screen cut and paste (Screen Grabber)
          facilities.  This includes all the features contained in The
          Control Center.  To conserve memory and avoid redundancy, ProSwap
          does not have those features which the operating environment is
          already providing.


          Renaming PROSWAP.EXE:
          ---------------------

          You are free to change the name of PROSWAP.EXE to any other name
          as long as the .EXE extension is not changed.  PCustom does not
          need to be able to find PROSWAP.EXE to customize it.  However,
          you must not change the name of the configuration file
          (PROSWAP.CFG).

          If you change the name of the configuration file, then ProSwap or
          PCustom will simply write a new PROSWAP.CFG file the next time
          they run.  The new file will have all the default values and will
          not retain any customizations you may have made.


          Unloading ProPak or ProSwap:
          ============================

          At the DOS prompt type "PROPAK -U" and press <Enter>.  If you are
          using ProSwap type "PROSWAP" instead of "PROPAK".  This will
          unload ProPak from memory (if it is safe to do so).  You may use
          "-U", "/U", "\U", or " U" to unload ProPak from memory (the "U"
          may be upper or lower case).  This is the safest way to unload
          ProPak from memory.




          Loading and Unloading ProPak                                   38



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Whether you are at the DOS prompt or not you can unload ProPak
          from memory by popping up The Programmer's Calculator and
          pressing <Alt><U>, <Alt><U>.  That's right, press it twice.  If
          you prefer you can press <Ctrl><U>, <Ctrl><U>.  We told you
          ProPak wasn't picky.  Another alternative is to pop up The
          Control Center and choose the "Unload from Memory" option.  More
          complete information regarding the safest possible method of
          unloading memory-resident programs is listed on pages 94 through
          95.

          If at any time you are unsure if ProPak is loaded in memory
          simply try to install it again.  It won't allow itself to be
          installed twice and will give you a message to the effect that it
          is already resident.  Pressing the Hot Keys will also tell you if
          it is resident or not.


          Sidekick Considerations:
          ========================

          If you are a Sidekick user, especially if you have been one for
          some time, you have probably noticed that Sidekick can cause
          difficulties for other memory-resident programs.  Specially for
          programs loaded after Sidekick.  If you are a dedicated Sidekick
          fan, and there are many of them around, then it would be
          beneficial for you to understand a little about Sidekick's inner
          workings.

          Sidekick is an important consideration for anyone designing
          memory-resident programs.  Sidekick is really an industry wide
          standard because of its popularity.  How well a memory-resident
          program gets along with Sidekick often determines how well a
          memory-resident program gets along with its users.

          With that in mind here are a few tips that could help you with
          all the programs you use while Sidekick is resident.

          As you read in Sidekick's manual, Sidekick should always be the
          last memory-resident program loaded into memory.  There is a very
          practical reason for this requirement.  The gist of the problem
          lies in Sidekick's use of the BIOS keyboard services.  In order
          to ensure that Sidekick will always be able to see any keystrokes
          directed to it, it takes steps to ensure that it gets first crack
          at all keystrokes.  How does Sidekick accomplish this feat?
          Well, not only does Sidekick grab the keyboard hardware interrupt
          when first loaded, it also monitors that interrupt constantly.
          If Sidekick sees another program grab the same interrupt,
          Sidekick grabs it right back.  While this may seem rude, it is
          actually a pretty good idea.  The problem is that Sidekick may
          grab it back more than once!  If the keyboard hardware interrupt
          is grabbed a second time, by any program at all, Sidekick grabs


          Loading and Unloading ProPak                                   39



          Falk Data Systems             Programmer's Productivity Pack 2.50


          the vector again, which fouls up the ISR chain (and hangs your
          system to demonstrate its disapproval).

          Today this seems to directly contradict our view of how a well
          behaved program should conduct itself.  But before you pass
          judgment on Borland you should remember that Sidekick became
          available "way back when".  When memory-resident utilities were
          rarely seen and little understood.  At the time Sidekick was
          written there were very few programs that grabbed the keyboard
          hardware interrupt.  Primarily because there were very few
          memory-resident programs around.  Of course, one could argue that
          Borland should have corrected the problem in a later release.  If
          you've tried SideKick Plus, the next generation of Sidekick,
          you've seen that Borland has in fact corrected this problem.

          With this brief historical background out of the way, we can get
          down to the business of dealing with Sidekick's stingy attitude
          towards the keyboard interrupt.  Even though SideKick Plus is now
          available, there are still hundreds of thousands of people using
          Sidekick.  It is to these people that this information will be
          the most useful.

          Once you understand Sidekick's refusal to share with other
          programs, you will be able to prevent problems from arising.
          Simply make sure not to incur Sidekick's wrath by taking the
          keyboard interrupt away from it.  This holds true for any
          program, memory-resident or stand-alone.  Sidekick must always be
          catered to when dealing with the keyboard hardware interrupt.
          Both versions of ProPak grab the keyboard hardware interrupt
          twice.  Once when they are loaded, and a second time when The
          Keystroke Reference Center is displayed.  That's how ProPak is
          able to show you the contents of the BIOS keyboard status bytes.

          It is for these reasons that ProPak and ProSwap were specially
          designed to work with Sidekick.  ProPak (or ProSwap), during the
          process of loading itself into memory, alters Sidekick internally
          to prevent it from hogging up the keyboard interrupt.  This is
          very similar to the technique used by SideKick Plus when it is
          used in conjunction with Sidekick.  This technique works so well
          that ProPak can safely be loaded AFTER Sidekick, and Sidekick
          will not mind the company at all.

          There is a side effect to this technique (isn't there always?).
          When ProPak is loaded after Sidekick, Sidekick loses its ability
          to detect whether or not it has already been loaded into memory.
          This means that you could load a second copy of Sidekick into
          memory if you forget that it is already loaded.  Actually that's
          a very minor inconvenience compared to the alternative (Sidekick
          throwing up its hands and hanging your system).




          Loading and Unloading ProPak                                   40



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The DOS PRINT Program:
          ======================

          The DOS PRINT program was not designed to be unloaded from memory
          except by rebooting your system.  The reason we mention this here
          is because ProPak will not be able to unload itself if PRINT is
          loaded after it.  The obvious solution is to load PRINT before
          you load ProPak.  This will help to retain ProPak's ability to
          unload itself from memory.  Of course you still have the problem
          of unloading PRINT from memory when you no longer need it.  We
          also have a solution for that problem.  Read on.


          In Case of Conflicts With Other Memory-Resident Programs:
          =========================================================

          ProPak and ProSwap were carefully designed to ensure that they
          are well behaved and can get along with other memory-resident
          programs.  Of course today there are so many memory-resident
          utilities available that it simply wasn't possible to test ProPak
          with all of them.

          As a general rule, whenever you encounter a memory-resident
          program that doesn't get along well with ProPak, simply load
          ProPak before loading the other program.  In virtually every
          instance, this should solve any problems you may encounter with
          other memory-resident programs.

          One example is PopCalc from BellSoft, Inc.  PopCalc is extremely
          rude in the way it deals with other memory resident programs.  As
          pointed out here, the way to avoid conflicts is to load ProPak
          before loading PopCalc.


          ProPak and Batch Files:
          =======================

          Many people like to include ProPak (or ProSwap) in their
          AUTOEXEC.BAT(ch) file so that it will be loaded automatically
          each time the machine is turned on.  There is a number of details
          that should be taken into consideration before positioning ProPak
          in your AUTOEXEC.BAT file.

          First, if you want to be able to unload ProPak from memory, you
          should endeavor to load ProPak last among your memory-resident
          programs.  Of course if your other memory-resident programs can
          also be removed from memory then you may load them in any order.
          Just be sure to unload them in the reverse order from which they
          were installed.  This will avoid having "holes" in memory between
          programs.  For a more complete explanation of the safest methods



          Loading and Unloading ProPak                                   41



          Falk Data Systems             Programmer's Productivity Pack 2.50


          of unloading a memory-resident program refer to pages 94 through
          95.

          One other consideration when using batch files is the DOS
          ERRORLEVEL value returned by other programs.

          The programs that come with the Programmer's Productivity Pack
          all provide clear and detailed error messages if an error should
          occur.  But they also return values in the DOS ERRORLEVEL for any
          errors that result in program termination.  The vast majority of
          you will never need this information, but for the sake of
          consistency it is provided for those who may find it useful.

          DOS ERRORLEVEL will contain the following values under the
          specified conditions:

          00             No error occurred.

          01             Attempt to load a memory-resident program that was
                         already resident in memory.

          02             Attempt to load a memory-resident program after
                         Sidekick

          03             Could not go resident due to an unsafe Hot Key.

          04             Incorrect DOS version.  Requires DOS 2.0 or above.

          05             A file access error occurred.

          06             Program aborted by the user.

          07             An EMS memory error occurred.

          08             Insufficient RAM memory to continue.

          09             Insufficient EMS memory to continue.

          10             Error with overlays.

          55             Any other error.

          99             Internal program error.


          ProPak Error Messages:
          ======================

          Unlike many programs that display a meaningless code for each
          error, the ProPak programs all display simple, clear messages
          when an error occurs.  In almost every case you will understand


          Loading and Unloading ProPak                                   42



          Falk Data Systems             Programmer's Productivity Pack 2.50


          any error messages you encounter without needing any additional
          information.

          There are a few error situations in which the problem may not be
          so obvious.  Two errors that fall into this category are a
          missing overlay file, and incorrect video modes.  The following
          information describes each of these two situations in detail.


          Beeps and Doesn't Pop Up:
          -------------------------

               If you press a Hot Key and ProPak beeps instead of popping
               up there can be two possible causes.

               Missing Overlay File.  First, if you are not using EMS
               memory, ProPak must always have access to itself (the
               overlays are contained with ProPak.EXE).  If the ProPak.EXE
               file is deleted, moved, or renamed, ProPak will beep instead
               of popping up.  This is to avoid a more serious error when
               something is needed from the inaccessible overlay file.  The
               solution is to put the ProPak.EXE back where ProPak expects
               it, but even better is to prevent the problem from ever
               arising.  Don't rename ProPak.EXE without first consulting
               the information provided on page 30.

               Not in 80 Column Text Mode.  Another situation which would
               cause ProPak (or ProSwap) to beep rather than popping up, is
               pressing a Hot Key while the system is in graphics mode, or
               in 40 or 132 column text mode.  The solution is to switch
               back to an 80 column text mode before popping up ProPak (or
               ProSwap).

               There are also two situations in which ProPak will not pop
               up, but no beep sound will be generated to indicate a
               problem.  This is because these situations are not errors,
               rather they are safety measures to prevent errors from
               arising.  These situations are explained below.


          Doesn't Beep or Pop Up:
          -----------------------

               Unsafe to Pop Up.  There is one other situation where no
               error message will appear to explain the current situation.
               This occurs when you attempt to pop up ProPak (or ProSwap)
               at a time when it is not safe for ProPak to pop up.  This is
               a safety measure designed to prevent problems from arising.
               When you press a Hot Key, ProPak does a number of things
               before actually popping up on your screen.  First and most
               importantly, ProPak checks the current state of your system


          Loading and Unloading ProPak                                   43



          Falk Data Systems             Programmer's Productivity Pack 2.50


               to see if it is safe to pop up.  If ProPak determines that
               it may not be safe to pop up at that particular time, then
               it will instead monitor the system very closely for the next
               two seconds in case things become safe during that time.  If
               ProPak determines that the system is in a state that enables
               ProPak to pop up safely, then ProPak will pop up.  However,
               if the two seconds pass without any significant change in
               the state of things, ProPak will simply not pop up.  You
               will rarely, if ever, encounter this situation.  But if you
               do, then you'll know that ProPak is not asleep at the
               switch, but rather it is taking steps to ensure that you
               encounter no unexpected surprises.

               When is it unsafe for ProPak (or ProSwap) to pop up?  For
               instance, ProPak uses a DOS service to read the overlay file
               on the disk.  If another program is using that same DOS
               service then ProPak should wait until the service is
               completed before interrupting the other program.  In other
               words, ProPak avoids interrupting any services that ProPak
               will need to use.

               In Record Keystrokes Mode.  There is one situation in which
               everything is normal but the Hot Keys will not pop up
               ProPak.  This occurs while ProPak is recording keystrokes.
               While in Record Keystrokes Mode, the only Hot Key available
               is the one that turns off Keystroke Recording (<Alt><->).
               For more complete information refer to the Keystroke
               Recording and Playback Quick Start Tutorial on page 85.

          There is also a special case regarding the pop-up DOS shell
          capability of ProSwap.  You cannot pop-up the DOS shell if you
          are already at the DOS command line (this includes popping up
          another TSR over the DOS command line, then attempting to pop up
          a DOS shell).



















          Loading and Unloading ProPak                                   44



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    ---------------------------------------------
                     The Programmer's Calculator and Attachments
                    ---------------------------------------------


          The Programmer's Calculator and its attachments, The ASCII and
          Color Attribute Chart and The Keystroke Reference Center, are an
          integrated set of tools that are powerful, flexible, and fun to
          use.

          Not even a hand-held programmer's calculator could provide all of
          the features that are built into The Programmer's Calculator.
          The Programmer's Calculator has enough features to satisfy the
          professional programmer and yet remains simple enough to be
          useful to the newcomer or student.  The Quick Start Tutorial for
          The Programmer's Calculator begins below.  The In-Depth Reference
          Guide begins on page 52.

          The ASCII and Color Attribute Chart provides a wealth of
          information on the different ASCII characters, color attributes,
          monochrome attributes, and extended characters.  Now you can
          press a key instead of leaving your work to find a reference
          book.  The Quick Start Tutorial for The ASCII and Color
          Attributes Chart begins on page 66.  The In-Depth Reference Guide
          begins on page 68.

          After you try The Keystroke Reference Center you may ask yourself
          how you ever got along without it.  A programmer's dream!  BIOS
          scan codes and dBASE INKEY() values on screen at the touch of a
          key.  The Quick Start Tutorial for The Keystroke Reference Center
          begins on page 71.  The In-Depth Reference Guide begins on page
          74.

          The Screen Blanking and Disk Parking utility is available from
          any one of the attachments to The Programmer's Calculator.  The
          separate In-Depth Reference Guide on page 79 gives you all the
          information you need concerning the Screen Blanking and Disk
          Parking capability.


          The Quick Start Tutorial:
          =========================

          This Quick Start Tutorial is designed to familiarize you with the
          functions and capabilities of The Programmer's Calculator.

          Be sure that ProPak is resident in memory.  Type "PROPAK" <Enter>
          at the DOS prompt.  Once you are sure that ProPak is resident in
          memory you may activate, or pop up, the Calculator, by holding
          down the <Alt> key and pressing <LeftShift>.  This will bring up
          The Programmer's Calculator display.


          The Programmer's Calculator                                    45



          Falk Data Systems             Programmer's Productivity Pack 2.50


          As you can see, you have six outlined boxes making up The
          Programmer's Calculator display.  The boxes are: The Decimal Box;
          The Hexadecimal Box; The Binary Box; The Octal Box; The Program
          Information, Date and Time Box; and The Saved Values Box.

          If you look at the box titles you will see that the Decimal Box
          is highlighted on your screen.  This means that you are currently
          in Decimal format.  In other words, numbers are entered as
          Decimal numbers.  You will still be able to see the same values
          appear in each of the other numeric formats simultaneously.  The
          Signed heading is also highlighted.  This means you can enter
          numbers as positive or negative values.

          To enter numbers into The Programmer's Calculator, you can use
          the top row of number keys, or the numeric keypad.  ProPak does
          not care whether NumLock is set or not.  It is smart enough to
          know that if you press the <PgUp> key, you want it to enter the
          value "9", because that is the key that shares <PgUp>.

          The Programmer's Calculator will accept any digit from 0-9 in
          Decimal format.  In Hexadecimal format, the Calculator will
          accept any value from 0-9 and A-F.  In Binary Format the
          acceptable digits are 0 and 1.  In Octal Format the acceptable
          digits are 0-7.

          Common operations like addition, subtraction, multiplication, or
          division, are performed by pressing their corresponding key.
          Press <+> for addition, <-> for subtraction, <*> for
          multiplication, and either </> or <\> for division.

          Since we don't always enter our numbers correctly it is helpful
          to know how to clear values, delete digits, and even start from
          scratch all over again.  Use the <BackSpace> or <Delete> keys to
          delete a single digit at a time, or use <^E> to clear the current
          Entry.  Use <^A> to Clear All (to reset the whole Calculator).
          Remember, <^E> means Ctrl-E, Alt-E, or just plain "E", as
          explained on page 26.

          Let's start with a simple problem.  Type the following, watching
          the screen to see what happens:

               <5> <+> <5> <=>

          There you have it!  A Calculator can't get much easier to operate
          than that!

          A whole series of calculations can be performed before ever
          requesting a final result.  For instance, type the following:

               <5> <+> <7> <+> <2> <-> <1> <=>



          The Programmer's Calculator                                    46



          Falk Data Systems             Programmer's Productivity Pack 2.50


          As you entered the numbers you noticed that the values
          accumulated in the top value until you requested a final result
          by pressing <=>.  Then the answer appeared on the bottom line.  A
          final result can also be obtained by pressing <Enter> instead of
          <=>.  Type the following:

               <100> <-> <50> <-> <25> <+> <10> <Enter>

          Now let's try multiplication.  Type the following:

               <16> <*> <4> <*> <4> <=>

          Division works the same.  Type the following:

               <64> </> <2> <\> <2> <=>

          Since this is integer division you will not get any fractional
          answers.  As an example of this, type the following:

               <49> </> <10> <=>

          Ten will only go into 49 four times.  There is no floating
          decimal point or remainder given.  To get the remainder you would
          need to use the operation known as "Modulus" which is explained
          in the In-Depth Reference Guide (page 61).

          If you have been watching the screen closely you have noticed
          that even though you have only entered values in Decimal format
          the operations have been carried out simultaneously in each of
          the other numeric formats.

          Even after you have finished this tutorial you probably won't
          remember all of the features available within The Programmer's
          Calculator.  To help you remember, there is a built-in Quick
          Reference Menu.  To activate the Menu simply press <M>.

          If you have done any assembly language programming, then you are
          probably familiar with all of the abbreviations used in the Menu;
          such as SHL for Shift Left and ROR for Rotate Right, etc.
          However, if you are not familiar with these abbreviations, don't
          worry.  Every single Menu option is explained in the In-Depth
          Reference Guide (page 52).  Besides, you're going to get familiar
          with a few of them in just a minute.

          You don't have to bring up the Menu in order to execute a
          command.  The Menu exists solely as a quick reference tool to
          help you remember which keys perform which operations.  Once you
          have used the Calculator a few times you will find that many
          times you won't need the Menu at all.




          The Programmer's Calculator                                    47



          Falk Data Systems             Programmer's Productivity Pack 2.50


          When you press a key that corresponds to an operation the Menu
          will disappear and the action will be executed.  Pressing <Esc>
          makes the Menu disappear without executing any other action.  Try
          pressing <Esc>.

          Let's try one of these functions.  Enter the value "57" into the
          Calculator and press <M> to bring up the Menu.  Shift Left is
          executed by pressing <F3>.  We are going to shift the value left
          4 times.  Press <F3> once.  Each time you press <F3>, the value
          will be shifted left 1 bit position.  You can see this clearly by
          watching the Binary Box as you press <F3> three more times.

          Now we are going to shift it back to the right 4 times.  Type <M>
          to bring up the Menu.  Shift Right (SHR) is <^F3>.  Remember, "^"
          means <Ctrl>, <Shift>, or <Alt>.  Press <^F3> to shift the value
          to the right.  If you do this 4 times you will have the original
          value back.

          The Shift Arithmetic Left <F7> and Right <^F7> and the Rotate
          Left <F5> and Right <^F5> operations function the same way.  Each
          time you press the corresponding key, the value is shifted or
          rotated one bit position.  Try it a few times.  If these
          functions are new to you, perhaps you would like to take the time
          now to read Appendices A (page 143) and B (page 152) at the back
          of The User's Guide.  They should help clarify these operations
          for you.

          Rotate through the Carry Left <F6> and Right <^F6> operate a
          little differently.  The reason for this is that in order to
          properly retain the value of the carry flag during the rotate
          operation, we must do the entire operation in a single step.
          Let's try it.

          Enter any value you wish and press <F6>.  You will see a small
          window open asking you how many bit positions to rotate the
          value.  For this example, press <8> <Enter>, and watch the
          Calculator carry out your command.  To rotate back to the right
          press <^F6>.    Press <8> and <Enter> again and you have your
          original value back.

          Ok.  Let's move on to something new.  Press the <TAB> key a few
          times and watch the screen as you do.  As you can see, the <TAB>
          key moves you from one numeric format to the next in a clockwise
          direction.  If you were to press <Ctrl><Tab>, <Alt><Tab>, or
          <Shift><Tab> instead, you would move counterclockwise from one
          format to the next.

          Now, using the <TAB> key, return to Decimal format again.  A
          shortcut to switching numeric formats is to press the first
          letter of the format you wish to be in.  For instance, press <O>
          and you will be in Octal format, press <B> and you will be in


          The Programmer's Calculator                                    48



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Binary format.  Now press <H> for Hexadecimal format.  When you
          are in Hexadecimal format, the letters A through F correspond to
          the hexadecimal values A through F.  Obviously, pressing <B> will
          not move you into Binary format, but will rather enter the value
          0B Hex (11 decimal).  So will <Shift><B> (upper case).  Try it.
          However, if you press <Ctrl><B> or <Alt><B> you will move to
          Binary format.  Just remember that in Hexadecimal format the
          letters A through F are numeric values.

          Get into Binary format now, using whichever method you prefer.
          <^C>, as you may have noticed on the Menu, operates the feature
          "Change Bits", ProPak's bit manipulation facility.  <C> or
          <Alt><C> brings up the Change Bits option as well (as explained
          on page 26).  The line above the 32 bit value in the Binary Box
          is highlighted.  There is a small arrow pointing to one of the
          bits.  You can move back and forth using the <Left> and <Right>
          arrow keys.  Try it.  The <Home> key takes you directly to the
          leftmost bit and the <End> key takes you directly to the
          rightmost bit.  When you are positioned over a bit that you want
          to change simply press the <Space> bar to toggle the bit.  See
          how it affects the values in the other numeric formats.  After
          you have changed the particular bit or bits that you wanted to
          change, press <Enter> to keep the changes, or press <Esc> to
          cancel the changes.  Pressing <Esc> will always get you out of
          the bit manipulation facility.

          Now, move back to Decimal format.  Once you are in the Decimal
          Box, press <C> again.  As you can see, this option is available
          from each of the four numeric formats.  When you are finished
          manipulating bits and press <Enter> or <Esc> you will be returned
          to the format you were in before.

          As you might have guessed, when you are in Hexadecimal format <C>
          is a value.  Therefore, you need to press <Ctrl><C> or <Alt><C>
          to activate the bit manipulation facility.

          To toggle the current value from positive to negative, or from
          negative to positive, simply press <^-> (<Ctrl><Minus>).  Enter a
          value.  Press <Ctrl><Minus>.  Press it again.  Press it again.
          In the Decimal format nothing changes, except the sign.  Watch
          what it's doing in the other numeric formats.

          The Signed mode allows positive and negative values.  The
          Unsigned mode does not.  Enter the positive value 256 in Decimal.
          To switch to Unsigned mode press <^T>.  That Toggles the sign
          mode.  Obviously you can't toggle the sign of the current value
          in Unsigned mode.  Try it.  Press <Ctrl><Minus>.






          The Programmer's Calculator                                    49



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Wow!  4,294,967,040 sure doesn't look like 256 or -256!  We won't
          go into this now, but, if you read the section on "Range Of
          Values" (page 52) and "Signed And Unsigned Modes" (page 54) they
          will help to explain this phenomenon.

          How about saving, or storing, values for use later, and then
          inserting them back into your calculations?  Well, as the Menu
          shows, the <F9> key is used to save values, and <Ctrl><F9>,
          <Alt><F9>, or <Shift><F9> are used to insert the values back into
          a later calculation.

          Here's how it works.  First clear the Calculator with <^A>.
          Enter a value.  Press <F9>.  Since you have only one value
          present, ProPak knows which one you want to save and saves it
          automatically.  Now enter <+> and another value.  Press <F9>
          again.  Since you have more than one value present a window will
          open with a simple pick list asking you which one you want to
          save.  Like other moving bar Menus, simply use the arrow keys to
          highlight the value you wish to save and press <Enter> to save
          it.  Pressing <Esc> will cancel the save operation.

          Likewise, if all four memory slots are full, a pick list will
          appear asking you which one to overwrite.

          You can use <^S> to Save a value if you don't like using a
          function key.  You can use <^I> to Insert a value instead of
          <^F9> if you prefer.

          Now you are ready to Insert a saved value into the current
          calculation.  Press <^F9> or <^I>.  If only one memory slot has a
          value saved in it, that value is automatically inserted.  Since
          there is more than one saved value, a pick list will appear
          asking you which value to insert.  Pick one and press <Enter>.
          That's about as easy to use as you can get!

          What if you need to leave the computer for a few minutes to do
          something else?  Well, you will probably want to blank your
          screen to prevent it from getting screen burns as a result of
          having the same pixels lit for a long time.  You should also park
          your hard disk (or disks) in case something happens while you are
          gone.  All these things are available at the touch of a key!

          Press <^P> for Park and Blank.  Your screen will blank and a dim
          clock will appear (so you'll know that your computer is still
          on), and your hard disk (or disks) will also be parked on the
          last cylinder.

          By the way, this dim clock will never burn your screen because
          every 60 seconds it will move to another position.  This means
          that for every minute that a pixel is lit, it will be blank for
          over 3 hours!


          The Programmer's Calculator                                    50



          Falk Data Systems             Programmer's Productivity Pack 2.50


          To return to what you were doing when you come back to your
          computer simply press any key.

          What if you want to change the Hot Key that pops up the
          Calculator?  As you can see on the Menu, pressing <^Z> will
          enable you to change the Hot Key "on the fly".  We won't do it
          now, but this is how it's done.  Refer to the In-Depth Reference
          Guide (page 56) for complete information.

          Here is a feature that many people will find useful.  It is the
          ability to capture the screen image (including the Calculator,
          with or without the Menu) to a disk file.  To use this feature,
          simply press <Ctrl><Enter> or <Alt><Enter>.  The screen will be
          saved to disk.

          What if you pop up the Calculator and it covers up something on
          the screen that you need to refer to?  Well, just move the
          Calculator out of the way.

          To move the Calculator up or down simply hold down the <Alt> key
          and press the <Up> or <Down> arrows.  Each time you press
          <Alt><Up> or <Alt><Down> the Calculator will move one line up or
          down.  You can move quickly to the top or bottom of the screen
          using <Alt><PgUp> or <Alt><PgDn>.  When moving the display you
          must use <Alt> and a direction key.  <Shift> and <Ctrl> will not
          work here.  Don't feel constrained, though.  You can use <Home>
          instead of <PgUp> and <End> instead of <PgDn>.

          You can unload ProPak from memory right from within the
          Calculator.  Press <Alt><U>, <Alt><U> (be sure to press <Alt><U>
          twice).  Of course, <Ctrl><U>, <Ctrl><U> will also work.  A
          Message Window will open informing you whether it is safe or
          unsafe to unload.  Regardless of whether it's safe or not,
          pressing <Esc> will return you to the Calculator.  If it is, in
          fact, safe to unload, pressing any key other than <Esc> will
          unload ProPak from memory.

          Well, that completes the Quick Start Tutorial for The
          Programmer's Calculator.  After tinkering with it for a while,
          you will find that it is extremely powerful, flexible, and very
          easy to learn and use.

          You've covered a lot of ground already!  You know how to perform
          mathematical calculations and just about every low level bit
          manipulation you can think of in four numeric formats, as well as
          how to change the Hot Key, move the display, save and insert
          values, capture the screen to a file, toggle the sign, blank your
          screen and park your hard disk(s).  Congratulations!  We told you
          the Calculator would be easy to use!




          The Programmer's Calculator                                    51



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    ---------------------------------------------
                     The Programmer's Calculator and Attachments
                    ---------------------------------------------


          The In-Depth Reference Guide:
          =============================

          The Programmer's Calculator that is built into ProPak is a very
          flexible and powerful Programmer's Calculator.  As a matter of
          fact, there are currently no Programmer's Calculators available
          (even hand-held types) that provide all the features available in
          the ProPak Programmer's Calculator.

          The following pages provide detailed information on the commands
          and operations available in this Programmer's Calculator, as well
          as helpful information concerning its use.


          The Range Of Values Available:
          ------------------------------

          The Programmer's Calculator provides full 32 bit (double word)
          values in four numeric formats and in both Signed and Unsigned
          modes.  The ranges of these values are as follows.

          In Signed mode:

               Decimal format:

                    -2,147,483,648 to +2,147,483,647

               Hexadecimal format:

                    8000 0000 to 7FFF FFFF

               Binary format:

                    10000000 00000000 00000000 00000000
                                          to
                    01111111 11111111 11111111 11111111

               Octal format:

                    20000000000 to 17777777777








          The Programmer's Calculator                                    52



          Falk Data Systems             Programmer's Productivity Pack 2.50


          In Unsigned mode:

               Decimal format:

                    0 to 4,294,967,295

               Hexadecimal format:

                    0000 0000 to FFFF FFFF.

               Binary format:

                    00000000 00000000 00000000 00000000
                                          to
                    11111111 11111111 11111111 11111111.

               Octal format:

                    000000000000 to 37777777777.


          The Programmer's Calculator Display:
          ------------------------------------

          Once ProPak is loaded into memory, The Programmer's Calculator is
          accessed by pressing its Hot Key.  The default Hot Key is
          <LeftShift><Ctrl>.  You can change the default Hot Key using
          PCustom.  Pressing the Hot Key will bring up The Programmer's
          Calculator display.

          The Programmer's Calculator display is designed to allow you to
          view all the values in the four numeric formats simultaneously.
          This feature is especially helpful to those who are just learning
          about other numeric bases.  It also helps you to get a feel for
          the relationship between the different numeric bases commonly
          used in the computer industry.

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                      Figure 2: Programmer's Calculator Display

          In addition, the display tells you which numeric format you are
          currently in, whether you are in Signed or Unsigned mode, whether
          there is any mathematical operation pending, what values (if any)
          are saved, the version of ProPak that you are using, the date,
          and the time.






          The Programmer's Calculator                                    53



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The display is also designed to allow you to see whatever was on
          the screen before the Calculator was popped up.  This is
          accomplished by moving the Calculator display to uncover what is
          underneath it, whenever the need arises.


          The Quick Reference Menu:
          -------------------------

          A Quick Reference Menu is available to refer to while learning to
          use the Calculator, or to access operations that may not be used
          often enough to memorize.

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                         Figure 3: The Quick Reference Menu

          To open the Menu press <^M>.  Of course, as explained on page 26,
          you can use <M>, <Ctrl><M>, <Alt><M> or <Shift><M>.

          The Menu lists all of the functions available in The Programmer's
          Calculator.  There are, however, more keystrokes than those
          listed here to operate each of the functions.


          Signed And Unsigned Modes:
          --------------------------

          The Programmer's Calculator gives you the ability to choose
          whether the values will be treated as Signed or Unsigned.  Signed
          values may be negative or positive.  Unsigned values may only be
          positive.  This allows the Calculator to much more closely mimic
          the actual operations available at the assembly language level.

          Refer to "The Range of Values Available" (page 52) to see what
          the numeric limitations are in each of the modes and formats.

          To toggle (switch back and forth) between Signed and Unsigned
          modes use <^T>.

          If you switch into Unsigned mode while you have a negative number
          in the display the Calculator will treat it according to its
          value in Binary format.  You will go from a small, negative value
          to a huge, positive value instantly.  If this is unclear to you,
          refer to Appendix B, "Two's Complement Numbers" (page 152).







          The Programmer's Calculator                                    54



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The Four Numeric Formats:
          -------------------------

          The Programmer's Calculator provides you with four numeric
          formats through which values may be entered.  Values can only be
          entered in the format which is current (the format which is
          highlighted on the display).  However, any values which are
          entered will always be displayed in all four formats
          simultaneously.  Values may be entered as either decimal,
          hexadecimal, binary, or octal, depending upon which format is
          current.

          The Programmer's Calculator will only accept values that are
          relevant to the current format.  In Decimal it will accept 0-9.
          In Hexadecimal it will accept 0-9 and A-F.  In Binary it will
          accept 0 or 1.  In Octal it will accept 0-7.  Attempting to enter
          a value which is not a part of the digit set for a particular
          format will cause The Programmer's Calculator to beep and ignore
          the keystroke.

          Switching formats is easy.  There are several ways you can do it.

          <Tab>     The <Tab> key switches to the next numeric format
                    clockwise in the display.  It will go from Decimal to
                    Hexadecimal to Binary to Octal and back to Decimal.

          <^Tab>    Pressing <Shift><Tab>, <Alt><Tab> or <Ctrl><Tab> moves
                    backwards, or counterclockwise, through the display.

          You may also switch formats using the first letter of the numeric
          format.

          <^D>      switches to Decimal format.

          <^H>      switches to Hexadecimal format.

          <^B>      switches to Binary format.

          <^O>      switches to Octal format.

          When you are in Hexadecimal format, the <B> and <D> keys
          represent the hexadecimal values 0B Hex (11) and 0D Hex (13), so
          be sure to use either the <Alt> or <Ctrl> key in conjunction with
          the letter to switch to Binary or Decimal format.









          The Programmer's Calculator                                    55



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The Calculator Commands:
          ------------------------

          When you are in The Programmer's Calculator you have all of these
          commands at your disposal.  They are all listed on the Menu, but
          the Menu does not have to be visible for you to use the commands.

          Capture Screen to Disk - To capture the current screen to disk
          press <Ctrl><Enter> or <Alt><Enter>.  This will copy the contents
          of the screen to a disk file that you name in the current
          subdirectory.  A disk file with that name may or may not already
          exist.  If a file with that name exists, you will be asked if you
          want to overwrite it.  ProPak will automatically give the file an
          .SCN extension, unless you change the default using PCustom.  The
          screen will be filtered, partially filtered, or not filtered,
          according to the options you specify with PCustom, or "on the
          fly" with the "Modify Options" choice of The Control Center.  For
          more detailed information refer to the In-Depth Reference Guide
          on page 111.

          Change Hot Key - To change the Hot Key that activates the
          Calculator, press <^Z>.  This will open a window asking you to
          press the key combination you would like to use to pop up the
          Calculator.  If you press a key combination that is already in
          use for another pop-up, such as The Control Center, it will beep
          and wait for you to enter another key.  Also, if you press a
          normal typing key like <A> or <B> or <F5>, that is used often,
          ProPak will beep and wait for you to enter a different key.  You
          should always use a combination of at least two keys.  Either
          <Shift>, <Alt>, or <Ctrl> should always be one of the keys in the
          key combination used as a Hot Key.  ProPak will not accept a Hot
          Key made up of two modifier keys, either, "on the fly".  You
          cannot enter <Alt><LeftShift> or any other such combination as a
          Hot Key from within the program.  That is why we didn't have you
          change Hot Keys in The Quick Start Tutorial.  You could not have
          gone back to the default <Alt><LeftShift> without using PCustom.

          If you decide not to change the Hot Key after having invoked this
          option, press ^@.  You could also view this as <Ctrl><TopRow2>
          since the shift key need not be pressed.  The Hot Key will remain
          unchanged and you will be able to return to the Calculator by
          pressing any key.

          If you are using ProSwap, you may also change the hot key for the
          pop-up DOS shell through this option.








          The Programmer's Calculator                                    56



          Falk Data Systems             Programmer's Productivity Pack 2.50


          TIP: Some Hot Keys are more effective than others.  In order to
               determine which Hot Keys are most effective, keep in mind
               how most software views your keyboard.  Most software
               ignores unrecognized keystrokes.  This is important because
               many of the keystrokes they don't recognize, they also don't
               pass on to other programs that may be present.  Using
               partial key combinations like <Alt><LeftShift> or
               <Ctrl><Alt> will many times circumvent this problem.  Since
               most programs expect something along with these modifier
               keys they will not take any action on key combinations such
               as these.  Therefore, ProPak will be able to see its Hot Key
               regardless of how your other programs deal with
               unrecognizable key combinations.

               Of course, ProPak also expects something other than modifier
               keys (like <Alt><LeftShift>) when it is waiting for keyboard
               input.  To provide you with a means of selecting these
               modifier key combinations as Hot Keys, PCustom presents them
               in a simple pop up menu from which you may choose.

          For more information on hot keys containing only modifier keys
          refer to page 82.

          Change Bits - This very handy bit manipulation facility allows
          you to toggle the setting of any bit or bits in a value.  You do
          not have to be in Binary format to use this feature.  If you are
          not in Binary format when you invoke the Change Bits facility you
          will be placed temporarily in Binary format.  Upon completion you
          will be returned to whatever format you were in previously.

          The Change Bits feature is invoked by pressing <^C>.  Of course,
          if you are in Hexadecimal format <C> or <Shift><C> is a value, so
          you would need to use <Alt><C> or <Ctrl><C>.

          Once invoked, use the <Left> and <Right> arrow keys to move back
          and forth until the arrow is pointing at the bit you want to
          toggle.  You can also use the <Home> key to go to the leftmost
          bit and the <End> key to go the rightmost bit.  Pressing <Space>
          toggles the bit.  You can toggle the bit on or off as many times
          as you wish.  You can change as many bits as you wish.  The
          changes you make here are reflected instantly in each of the
          other numeric formats.  When you are finished, pressing <Enter>
          saves your changes, while pressing <Esc> cancels your changes.

          Change Sign - This is not the same as "Toggle Sign Mode" which
          changes the overall mode of the Calculator from Signed to
          Unsigned or from Unsigned to Signed.  The "Change Sign" operation
          converts the current value from negative to positive, or from
          positive to negative.    This operation is performed by pressing
          <Ctrl><Minus>.  You may use either the top row minus key, or the
          numeric keypad minus key.


          The Programmer's Calculator                                    57



          Falk Data Systems             Programmer's Productivity Pack 2.50


          This is one case where you must use <Ctrl> with <Minus>.  <Alt>
          and <Shift> will not activate it.  Changing the sign will not
          function as you expect if you are in Unsigned mode.

          Clear All - Press <^A>.  This command resets the Calculator and
          redraws the display.  All values, including those which are saved
          in memory slots, will be reset to zero.  When you are in
          Hexadecimal format the <A> key corresponds to the value 0A Hex
          (10).  Therefore, to execute the Clear All command be sure to use
          either <Alt><A> or <Ctrl><A>.

          Clear Entry - Press <E>, <Alt><E>, <Shift><E>, or <Ctrl><E>.
          This command resets the current value and the pending operation
          (Add, Subtract, etc.).  If you accidentally enter the wrong value
          you can delete one digit at a time using <Del> or <BackSpace>.
          If, however, you accidentally enter the wrong mathematical
          operation you would use the Clear Entry command.  The Clear Entry
          command will affect only the current value, not the intermediate
          value (the top value).  Since <E> and <Shift><E> correspond to a
          value in hexadecimal be sure to use <Alt><E> or <Ctrl><E> when in
          the Hexadecimal format.

          Insert a Value - This command takes a value that was previously
          saved to one of the Calculator's four memory slots and inserts it
          into the current value.  You can invoke it in two different ways.
          Either press <^I>, or, as listed on the Menu, press <^F9>.
          Inserted values are always inserted into the current value.
          Inserting the value does not remove it from the memory slot.  You
          can insert the same value many times.

          If more than one memory slot contains a non zero value ProPak
          will ask you which value to insert.  A pick list will appear with
          one of the four memory slots highlighted.  The pick list window
          will always display the values in decimal.  Use the <Up> and
          <Down> arrow keys to select the proper value and press <Enter>.

          Park Disk(s) and Blank Screen - To blank the screen and park your
          hard disk (or disks) simply press <^P>.  This will blank the
          screen and display a clock.  The clock will move every 60
          seconds.  When the screen is initially blanked, your hard disk
          (if present) will also be "parked" on the last cylinder of the
          drive.  If you have two hard disks, both will be parked.  Parking
          simply means that the read/write heads will be positioned over
          the last cylinder.  This will not prevent other programs from
          "unparking" the disk, but if no other programs are active the
          disk will remain parked as long as the screen is blanked.  The
          hard disk parking option may be disabled with PCustom, if
          desired.  Pressing any key "unblanks" the screen and returns you
          to the Calculator.




          The Programmer's Calculator                                    58



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Quit the Calculator - To exit from the Calculator simply press
          <Esc>.  If you are using ProPak or ProSwap, <Esc> will quit the
          current pop-up, but ProPak will remain in memory ready to be
          called up again when needed.  If you are using ProSwap in stand-
          alone mode, <Esc> will quit the program and return you to DOS.

          Quitting the Calculator will not undo any customizing that you
          have done "on the fly", using either The Programmer's Calculator
          or The Control Center (in ProPak only).  Only unloading from
          memory or turning off the computer will undo your changes.
          Customizing done with PCustom is not affected either way since it
          is written to disk.

          Save a Value - This is the companion operation to Insert a Value.
          To save a value to one of the Calculator's four memory slots,
          press <^S>,  or, as listed on the Menu, <F9>.  The Save function
          operates very intuitively.  If there is only one value present it
          will be saved to the first available memory slot.

          If more than one value is present, a pick list will appear and
          ProPak will ask you which one to save.  The pick list window will
          always display the value in decimal.  However, the Saved Values
          Box always displays the saved values in the current numeric
          format.  You choose by moving the highlight bar with the <Up> or
          <Down> arrow key until it highlights the correct value.  Press
          <Enter> and it is saved.  If all the memory slots are filled, a
          pick list will appear and ProPak will ask you which one to
          overwrite.  Again, use the arrow keys and <Enter> to select.

          A value that is saved to memory stays in that memory slot even if
          it is inserted into the current value.  This lets you use that
          same value repeatedly.  Pressing <^A> clears all values in the
          Calculator, including those saved in the memory slots.

          Screen Refresh - <^R> will redraw the screen.  The Screen Refresh
          command will not change any values.  It will simply redraw the
          Calculator display should the need ever arise.

          Toggle Sign Mode - To toggle between Signed and Unsigned modes
          press <^T>.  This will change the way the values are treated
          during calculations and display.  Signed values may be negative
          or positive, whereas Unsigned values may only be positive.  See
          "The Range Of Values Available" (page 52) if you want to know how
          this affects numeric ranges.

          Unload from Memory - To unload ProPak from memory press <Alt><U>,
          <Alt><U> (<Alt><U> twice in a row).  You may also use <Ctrl><U>,
          <Ctrl><U>.  ProPak will first check to see if it is safe to
          unload.  If it is in fact safe it will give you a chance to press
          <Esc> to return to the Calculator, or any other key to actually
          unload ProPak from memory.  This is different than quitting the


          The Programmer's Calculator                                    59



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Calculator using <Esc>.  Pressing <Esc> returns you to DOS, or to
          whatever program you were in when you invoked ProPak, but it
          leaves ProPak in memory, ready to be called again.  If you unload
          ProPak from memory you would have to load ProPak again before
          using it.

          When ProSwap is run in stand-alone (multitasking) mode, the
          unload command functions exactly like pressing <Esc>, it returns
          you to DOS.


          The Mathematical Operations:
          ----------------------------

          All mathematical operations are carried out by entering a value,
          pressing the key corresponding to an operation, entering another
          value, and pressing <Enter> or <=> to request a final result.  A
          whole series of calculations can be performed before requesting a
          final result.

          In The Programmer's Calculator, the top value in the display is
          called the "Intermediate Value", the middle value (where the
          cursor is positioned) is the "Current Value", and the lower value
          is the "Final Result".  Regardless of which numeric format you
          are using, values are always entered into the Current Value (the
          middle number).

              |---------------------
              |      Decimal      |
              |                 5 | <-- Intermediate Value
              |ADD              5 | <-- Current Value
              |     ------------- |
              |                10 | <-- Final Result
              |---------------------
                            Figure 4: Decimal Box Display

          If you do a series of calculations without requesting a final
          result, the Calculator performs the operation and updates the
          value in the Intermediate Value slot.  That way you can see where
          your calculations have brought you so far, the current value
          entered, and the mathematical function to be performed.  Also, a
          final result is not erased until you request another final result
          or Clear All (^A).  This keeps the result of a prior computation
          available without having to store it to a memory slot.

          By the way, it does not matter whether or not NumLock is set.
          The numeric keypad can be used with or without NumLock set.
          Since ProPak modifies the BIOS keyboard interrupts it is able to
          detect all the numeric keypad keys (including the center or 5
          key) regardless of the status of NumLock.



          The Programmer's Calculator                                    60



          Falk Data Systems             Programmer's Productivity Pack 2.50


          All of the available mathematical operations are explained in
          detail below.

          Add - Addition is chosen by pressing <+> (Plus).  You may use the
          top row <Plus> key or the numeric keypad <Plus> key.

          Subtract - Subtraction is chosen by pressing <-> (Minus).  You
          may use the top row <Minus> key or the numeric keypad <Minus>
          key.

          Multiply - Multiplication is chosen by pressing the <*> key.  The
          asterisk key can be either the top row asterisk or the asterisk
          that shares the <PrtSc> key.  On 101/102 key enhanced keyboards
          there is a separate numeric keypad asterisk which can also be
          used.

          Divide - Integer division is performed using the </> (Slash) or
          <\> (Backslash) key.  This is integer division, which means that
          there are no fractional answers or decimal points.  It does not
          give a remainder, either.  To obtain the remainder you would need
          to use Modulus.  Also, since Division (DIV) is the logical
          counterpart to Modulus (MOD), which uses the <F4> key, Division
          may also be performed by using <^F4>.

          Modulus (Remainder) - Modulus (MOD) is chosen by pressing <F4>.
          Modulus returns the remainder of a division operation.  Modulus
          works by dividing the intermediate (top) value by the current
          (middle) value, and returning the remainder of the division (or
          zero if it divided evenly).

          Show Result - Obtaining a result is done by pressing either the
          <Enter> or the <=> (Equals) key.  This displays the final result
          of the calculation.  If no calculation was entered, that is, if
          the only value present is the current value, the result will
          equal the current value.

          The final result will remain displayed until another final result
          is requested.  This is very handy when you need to refer to the
          value later, but don't want to save it to a memory slot.

          Another thing that happens when a final result is requested is
          that the current and intermediate values are automatically reset
          to zero internally.  However, the screen will still display the
          old values until any other key is pressed.  The reason for this
          is that The Programmer's Calculator does its best to display as
          much useful information as possible for as long as possible.

          Delete Digit - Use the <BackSpace> or <Del> keys to delete one
          digit at a time from the current value.  If you need to change
          too many digits in the current value, or if what you need to



          The Programmer's Calculator                                    61



          Falk Data Systems             Programmer's Productivity Pack 2.50


          change is the mathematical operation, use Clear Entry (^E)
          instead.


          Logical and Bit Manipulation Operations:
          ----------------------------------------

          If you are new to low level bit manipulation instructions such as
          AND, OR, XOR, NOT, etc., then please refer to Appendix A (page
          143) which explains each operation in detail.

          AND - AND is selected by pressing the <F1> key.  AND performs a
          logical AND on two values.  It uses the intermediate value (top
          value) and the current value (middle value).  It will return a
          value of 1 whenever both values have a 1 in the same bit
          position.

          NOT - NOT is selected by pressing <^F1>.  NOT performs a logical
          NOT operation on the current value.  NOT is the same as
          performing a "one's complement".  It complements each bit in a
          value by converting all 1's to 0's and all 0's to 1's.  The best
          way to see this is to watch the Binary Box as you perform the
          operation.

          OR - OR is chosen by pressing <F2>.  OR performs a logical OR
          operation, ORing the intermediate value with the current value.
          It will return a value of 1 wherever either or both of the values
          have a 1 in that bit position.

          XOR - XOR is selected by pressing <^F2>.  XOR performs a logical
          eXclusive OR operation, XORing the intermediate value with the
          current value.  It will return a value of 1 wherever either, but
          not both, values have a 1 in that bit position.

          Shift Left - Shift Left (SHL) is selected by pressing <F3>.
          Shift Left affects only the current value by shifting it left one
          bit position each time <F3> is pressed.  This has the same effect
          as multiplying by 2.

          Shift Right - Shift Right (SHR) is chosen by pressing <^F3>.
          Shift Right affects only the current value by shifting it right
          one bit position each time the command is invoked.  This has the
          same effect as dividing by 2.

          Rotate Left - Rotate Left (ROL) is chosen by pressing <F5>.
          Rotate Left affects only the current value.  Rotate Left
          "rotates" the value left by one bit position each time <F4> is
          pressed.  In rotation the bit that "falls off" one end of the
          value is inserted into the other end.  This can be more clearly
          visualized by watching the Binary Box as the operation is
          performed.


          The Programmer's Calculator                                    62



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Rotate Right - Rotate Right (ROR) is chosen by pressing <^F5>.
          Like Rotate Left, Rotate Right affects only the current value.
          The value will be rotated to the right by one bit position each
          time the Rotate Right command is invoked.  The bit that "falls
          off" the right end is reinserted on the left side.

          Rotate through the Carry Left - Rotate through the Carry Left
          (RCL) is chosen by pressing <F6>.  RCL affects only the current
          value.  The RCL operation is similar to the ROL (Rotate Left)
          operation in that it "rotates" the value by a certain number of
          bit positions.  The difference between RCL and ROL lies in the
          fact that with RCL the bit that "falls off" one end of a value is
          inserted into the carry flag and on the next rotate the bit that
          is stored in the carry flag is rotated into the other end of the
          value.  This can be more clearly seen by watching the Binary Box
          as this operation is executed.

          Unlike the other shift and rotate operations that move the value
          by one bit position each time they are invoked, RCL asks you how
          many bit positions to rotate the value.  This is because the
          value of the carry flag must be preserved between each rotation.

          If this is difficult to visualize, Appendix A (page 143) provides
          a detailed explanation, complete with a diagram.

          Rotate through the Carry Right - Rotate through the Carry Right
          (RCR) is chosen by pressing <^F6>.  RCR functions exactly like
          RCL except that the value is rotated right instead of left.

          Shift Arithmetic Left - Shift Arithmetic Left (SAL) is chosen by
          pressing the <F7> key.  Shift Arithmetic Left (SAL) is especially
          useful when using Binary Coded Decimal (BCD) values at the
          assembly language level.  SAL is very similar to the more
          commonly used Shift Left (SHL) instruction.  The major difference
          between the two lies in the fact that SAL preserves the sign of
          the value throughout the shift operation.  You could think of the
          high bit as being shifted into itself.  The best way to see this
          in action is to watch the Binary Box as you execute the
          instruction.

          Shift Arithmetic Right - Shift Arithmetic Right (SAR) is chosen
          by pressing <^F7>.  SAR shifts the current value right one bit
          position each time it is invoked, but the value of the high bit
          (the sign bit) is preserved.

          Exchange Words - Exchange words (XCHG DW) is activated by
          pressing <F8>.  Exchange words affects only the current value.
          This operation swaps the two low order words in the current
          value.




          The Programmer's Calculator                                    63



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Exchange Double Words - Exchange Double Words (XCHG DD) is chosen
          by pressing <^F8>.  Exchange Double Words affects the current
          value by swapping the low and high order double words.  The best
          way to visualize this operation is to watch either the Binary or
          Hexadecimal Box as you execute the instruction.


          Moving The Calculator's Display:
          --------------------------------

          The Programmer's Calculator is designed to let you see as much of
          the screen you were working on as possible.  However, the
          Calculator may cover up exactly what you most need to see.  To
          move the Calculator's display, use the following commands:

          Move Up - <Alt><Up>

          Move Down - <Alt><Down>

          Move to Top - <Alt><PgUp> or <Alt><Home>

          Move to Bottom - <Alt><PgDn> or <Alt><End>


          Going To The Attachments:
          -------------------------

          Attachments are tools in the Programmer's Productivity Pack that
          are accessed through other tools.  There are two attachments to
          The Programmer's Calculator.  In other words, they are reached
          from the Calculator.  These are two commands we have not looked
          at yet.

          The Keystroke Reference Center - <F10> is marked "KeyRef".  This
          is the command that invokes The Keystroke Reference Center.  This
          attachment shows you the BIOS Keyboard Status Bytes, and a wealth
          of other information.  Rather than explain it here, we suggest
          that you go on to The Quick Start Tutorial (page 71) and The In-
          Depth Reference Guide (page 74) for The Keystroke Reference
          Center.

          There is one point that should be covered here that pertains to
          both attachments.  Once you have moved to the attachment, you
          must to use <Alt><Esc> to return to The Programmer's Calculator.
          If you use <Esc> you will return to the DOS prompt, or wherever
          you were when you popped up ProPak (or ProSwap).  This is not a
          bug, it's meant to save you time.  Now, whenever you press the
          Hot Key for the Calculator you will go directly to the
          attachment.  ProPak figures that if that's where you were last,
          that's probably where you want to be now.



          The Programmer's Calculator                                    64



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The ASCII and Color Attribute Chart - <^F10> (Either <Shift>,
          <Alt>, or <Ctrl> with <F10>) is marked ASCII.  This is the
          command that invokes The ASCII and Color Attribute Chart.  This
          is the subject of the next Quick Start Tutorial.

















































          The Programmer's Calculator                                    65



          Falk Data Systems             Programmer's Productivity Pack 2.50


                        -------------------------------------
                         The ASCII and Color Attribute Chart
                        -------------------------------------


          The Quick Start Tutorial:
          =========================

          Load ProPak into memory and press the Hot Key (<Alt><LeftShift>)
          for The Programmer's Calculator.  When the Calculator display
          pops up, press <M> to bring up the Menu.  The command <^F10> is
          marked ASCII.

          Pressing <^F10> closes the Calculator and opens The ASCII and
          Color Attribute Chart attachment.

          There is a lot more to this chart than can fit on one screen,
          regardless of the monitor you have.  That is why the most
          important commands for you to learn are the ones that move you
          around the chart.

               To scroll up one line at a time press <Up> Arrow.

               To scroll down one line at a time press <Down> Arrow.

               To scroll up a screenful at a time press <PgUp>.

               To scroll down a screenful at a time press <PgDn>.

               To go directly to the beginning of the chart press <Home> or
               <Ctrl><PgUp>.

               To go directly to the end of the chart press <End> or
               <Ctrl><PgDn>.

               To go directly to the middle of the chart press <5> on the
               numeric keypad.

          Why not take a little time and just explore your new reference
          chart?

          The information on the chart is self-explanatory, but, in case
          something isn't clear it is all explained in the In-Depth
          Reference Guide that follows this tutorial (page 68).

          Several of the commands you learned in the Calculator work in The
          ASCII Chart, too.  Remember how to capture a screen to disk?  It
          works exactly the same in The ASCII Chart.  Press <Ctrl><Enter>
          (or <Alt><Enter>).  Give the file a name and ProPak saves it to
          disk for you with an .SCN extension.



          ASCII and Color Attribute Chart                                66



          Falk Data Systems             Programmer's Productivity Pack 2.50


          If you need to leave your computer for a while and want to blank
          the screen and park the hard disk (or disks), just press <^P>.
          The screen will blank and display a clock.  Your hard disk (or
          disks) are now parked over the last cylinder.  Any key restores
          the display when you return.

          Press <Esc>.  You have left The ASCII Chart and are back at the
          DOS prompt, or wherever you were when you popped up The
          Programmer's Calculator.  Now press <LeftShift><Ctrl> (the hot
          key).  Instead of going to the Calculator you have come back to
          The ASCII Chart!  The Hot Key will always return you to the tool
          or attachment from which you quit or <Esc>aped.

          Now that you are back in The ASCII and Color Attribute Chart
          press <Alt><Esc>.  This returns you to the Calculator.  If you
          quit the Calculator now with <Esc> and then press the Hot Key,
          you will go to the Calculator and not the chart.

          Return to The ASCII Chart now by pressing <^F10>.  You cannot
          unload ProPak from memory from an attachment.  Try pressing
          <^U><^U>.  All you get are little beeps.  You need to return to
          the Calculator or to the DOS prompt to unload ProPak from memory.

          That is all for this Quick Start Tutorial.  For more insight into
          all of the information that The ASCII and Color Attribute Chart
          puts at your disposal read The In-Depth Reference Guide that
          follows.


























          ASCII and Color Attribute Chart                                67



          Falk Data Systems             Programmer's Productivity Pack 2.50


                        -------------------------------------
                         The ASCII and Color Attribute Chart
                        -------------------------------------


          The In-Depth Reference Guide:
          =============================

          The ASCII and Color Attribute Chart is an attachment to The
          Programmer's Calculator.  The ASCII Chart is called an
          "attachment" because it is attached to the Calculator, and is
          accessed through the Calculator.

          You access The ASCII Chart from the Calculator by pressing
          <^F10>.  That closes the Calculator and opens The ASCII Chart.


          25, 43, And 50 Line Screens:
          ----------------------------

          The ASCII Chart is designed to work with any of the common text
          modes in use today.  Most systems operate with 25 lines of text
          visible on the screen at a time.  ProPak will use all 25 lines to
          show you as much of The ASCII Chart as possible.

          If you have EGA and are in 43 line mode (43 lines of text visible
          on screen at a time), The ASCII Chart will use all 43 lines to
          show you as much information as possible.

          If you have VGA and are in 50 line mode (50 lines of text visible
          on the screen), The ASCII Chart will appear on all 50 lines.


          The Columns On The Chart:
          -------------------------

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                            Figure 5: ASCII Chart Display

          On the left hand side of the Chart there are several columns.
          The first two columns give you the decimal and hexadecimal values
          for each character.  The third column displays the character that
          the ASCII code represents.  The fourth column is made up of three
          asterisks in the actual color that those values represent.  The
          colors are only visible on color monitors, obviously.  The
          asterisks will be in whatever brightness or other quality that
          value represents to the type of monitor that you have.  The next
          three columns describe the foreground color, the background



          ASCII and Color Attribute Chart                                68



          Falk Data Systems             Programmer's Productivity Pack 2.50


          color, and the attribute as it would appear on a monochrome
          display.


          The Extended Characters:
          ------------------------

          On the right hand side of the Chart there is an enlarged
          representation of all the graphics and box drawing characters.
          These are much easier to see than the dinky little characters
          that are actually represented by each code.

          If you are at the beginning of the Chart (ASCII code 00), the
          field at the right will display all the single line box
          characters and their codes.  Moving towards the end of the Chart
          (ascending ASCII values), the field at the right will display all
          the double line boxes and their codes.  On a 25 line monitor you
          can go from one field to the next by simply using <PgDn>.  The
          third field shows all double horizontal and single vertical boxes
          and their codes.  The fourth field shows all the single
          horizontal and double vertical boxes and their codes.  The next
          field shows the graph and block characters and their codes.  The
          next two fields display the common math symbols and their codes.
          The remaining fields show all the control codes.


          Moving Around The Chart:
          ------------------------

          The following commands will move you around the chart whether
          NumLock is set or not.  It makes no difference.  You can easily
          scroll or page through The ASCII Chart to find the information
          you need.

          Scroll Up - To scroll up one line press the <Up> arrow key.

          Scroll Down - To scroll down one line press the <Down> arrow key.

          Page Up - To scroll up one page or screenful at a time press
          <PgUp>.

          Page Down - To scroll down one page or screenful at a time press
          <PgDn>.

          Go to Beginning - To move instantly to the beginning of the Chart
          (ASCII code 00) press <Home> or <Ctrl><PgUp>.

          Go To Center - To move instantly to the center of the Chart
          (ASCII code 127) press the numeric keypad <5> key (the center
          key).



          ASCII and Color Attribute Chart                                69



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Go to End - To move instantly to the end of the Chart (ASCII code
          255) press <END> or <Ctrl><PgDn>.


          Other Available Commands:
          -------------------------

          Park Disk(s) and Blank Screen - As in the Calculator, if you need
          to park your hard disk(s) and blank your screen while you go off
          to do something else, simply press <^P>.  Any key will restore
          your screen when you return.

          Capture Screen To Disk - To capture the current screen to disk,
          press <Ctrl><Enter>, or <Alt><Enter>.  This will copy the
          contents of the screen to a disk file that you name in the
          current subdirectory.  The file will be given an .SCN extension
          unless you change the default using PCustom.  A file may or may
          not already exist with that name.  If a file already exists with
          that name ProPak will ask you whether to overwrite it or not.
          The screen will be filtered, partially filtered, or not filtered,
          according to the options you specify with PCustom or "on the fly"
          with the "Modify Options" choice of The Control Center.  For more
          detailed information on filtering refer to the In-Depth Reference
          Guide on page 100.

          Exiting ProPak from The ASCII Chart - To exit from The ASCII
          Chart and return to DOS, or to the program you were in when you
          popped ProPak up, simply press <Esc>.  <Esc> always exits the
          pop-up, saving your place for when you return.

          Because The ASCII Chart is an "attachment" to the Calculator,
          pressing the same Hot Key that normally activates the Calculator
          will now instead pop up The ASCII Chart.  This saves you the
          trouble of going through the Calculator itself to get back to The
          ASCII Chart when it is the attachment that you were last using.


          Returning to the Calculator:
          ----------------------------

          To return to the Calculator from The ASCII Chart, press
          <Alt><Esc> instead of <Esc>.

          That completes the In-Depth Reference Guide for The ASCII and
          Color Attribute Chart.  As you have seen, it is a lot more useful
          than most of the pop up ASCII charts you have used in the past.

          You now have one more tool to help you save time while working
          with source code or other text files.  Not bad for a few minutes
          of reading!



          ASCII and Color Attribute Chart                                70



          Falk Data Systems             Programmer's Productivity Pack 2.50


                           --------------------------------
                            The Keystroke Reference Center
                           --------------------------------


          The Quick Start Tutorial:
          =========================

          We were rather surprised to find that this quickly became the
          favorite attachment for the people who tested ProPak before it
          was placed on the market.  You are about to see why!

          This Quick Start Tutorial is designed to familiarize you with The
          Keystroke Reference Center in 15 minutes or less.  You'll enjoy
          this utility!

          First, be sure that ProPak is loaded into memory.  Type "PROPAK"
          <Enter> at the DOS prompt.  Next, pop up the Calculator using
          <Alt><LeftShift>.  When the Calculator's display appears, press
          <M> to bring up the Menu.  On the Menu you will see that command
          <F10> is marked "KeyRef" .  This attachment is called The
          Keystroke Reference Center.  Press <F10> to pop up The Keystroke
          Reference Center, and say goodbye to all your charts and lists of
          scan codes and INKEY() values!

          Take a while to look over the display on your screen.  At the top
          it says Keystroke Reference Center, so you know you're in the
          right place.  Below it are three boxes.  The highlighted box on
          the left gives you the dBASE INKEY() value.  The highlighted one
          on the right gives you a BIOS scan code.  The center box tells
          you the version of ProPak you are using, the date, and the time.

          Below that it says "Press a key or key combination:".  Okay,
          press the <Space> bar.

          Presto!  You instantly have the scan code returned by the BIOS
          (used in most programming languages) in the right hand box, and
          the INKEY() value returned by the dBASE dialects (including dBASE
          III Plus, Clipper, Foxbase, QuickSilver, and presumably dBASE IV
          as well) in the left hand box.

          Now press <A>.  Now <Shift><A>.  Press <3> on the top line.
          Press <F7>.  The information on each of those keystrokes appears
          instantly.

          Now press <F1>.  A "Portability Note" has opened which gives you
          some important information about the dBASE INKEY() value for this
          keystroke.





          The Keystroke Reference Center                                 71



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Now press <Alt><Up> Arrow.  This time you get a different
          Portability Note.  Now try pressing <Alt><BackSpace>.  Another
          Portability Note appears.  As you can see, just about all the
          information you will ever need about keyboard return codes is now
          available at the touch of a key!

          With NumLock off, press <5> on your numeric keypad.  More
          information!

          You will probably want to press every key and key combination on
          the board just to see how much information is available, but, we
          need to move on right now.

          Below where you have been entering the keystrokes there is a live
          (real time) display of the values in the BIOS keyboard status
          bytes in low memory.  Watch them as you press <Alt>, <Ctrl>, the
          <LeftShift> and <RightShift> keys, <ScrollLock>, <NumLock> or
          whatever.  As you can see, the screen is instantly updated to
          show you any changes in the bit settings in the BIOS keyboard
          status bytes.

          As with the Calculator, The Keystroke Reference Center can be
          moved around the screen.  Since it uses 25 lines on the screen,
          you will only be able to move it up and down if you have EGA 43
          line mode, or VGA 50 line mode.

          Press <Alt><Left> Arrow.  The display moves one space to the
          left.  You also get the information on the key combination you
          just pressed, complete with a Portability Note.  Press <Space>
          and the Portability Note disappears.  Now press <Alt><Right>
          Arrow.  The display goes back to the right one line.  You get all
          the information on this keystroke, too.

          Press <Alt><Home>.  Clear the Portability Note (press <Space> for
          instance) and press <Alt><End>.  This takes you right across the
          screen.

          If you have 43 or 50 lines available on your screen, you can move
          the display up and down, also.  Press <Alt><Up> Arrow and
          <Alt><Down> Arrow to move a line at a time, and <Alt><PgUp> and
          <Alt><PgDn> to move the height of the whole screen.

          To return to DOS, or to the program you were in before you
          activated ProPak, press <Esc>.  Try it.  Notice that it pauses to
          allow you to see the return codes for the <Esc> key.  Pressing
          any key returns you to DOS.

          Now, press <Alt><LeftShift> to again pop up ProPak.  There you
          are, right back where you left off.  To return to the Calculator
          from The Keystroke Reference Center, simply press <Alt><Esc>
          instead of <Esc>.  Again, it will pause to allow you to examine


          The Keystroke Reference Center                                 72



          Falk Data Systems             Programmer's Productivity Pack 2.50


          the return codes for the <Alt><Esc> key combination.  Pressing
          any key will return you to the Calculator.

          That was pretty easy.  You have just completed the Quick Start
          Tutorial for ProPak's interactive Keystroke Reference Center.
          And you have also added another tool to your productivity
          toolbox.  Happy ProPak'n!














































          The Keystroke Reference Center                                 73



          Falk Data Systems             Programmer's Productivity Pack 2.50


                           --------------------------------
                            The Keystroke Reference Center
                           --------------------------------


          The In-Depth Reference Guide:
          =============================

          The Keystroke Reference Center is an elegant solution to a simple
          yet common problem.

          In virtually every program you write you'll find the need to
          identify a keystroke in order to determine what action to execute
          next.  In most cases this keystroke will be identified by way of
          all or part of the "Scan Code" returned by the system's ROM BIOS.
          Other specialized application development tools or languages such
          as dBASE and its various counterparts (Clipper, FoxBase,
          QuickSilver, and others), return a key code that is different
          than the one normally returned by the ROM BIOS.

          To further complicate matters, not all keyboards are the same.
          There are the older 83 key PC/XT keyboards, the newer 84 key
          PC/AT style keyboards, the 101/102 key "enhanced" keyboards, and
          then the compact keyboards found on many laptop computers (many
          of which are configured to act like an enhanced keyboard by
          having the same key return different values according to various
          conditions).

          What all this means is that most of us keep reference charts from
          books or technical manuals close at hand while programming.  We
          then refer to these books when we need to know what value is
          returned from a specific key.  Of course these books or charts
          usually do not list all of the possible key combinations.  So we
          often end up writing a separate little utility to display the
          return value from each key pressed, which we then use whenever we
          need to find out the value of a particular key or key
          combination.

          Needless to say, neither of these methods is an ideal solution.
          ProPak's interactive Keystroke Reference Center provides the
          solution to this common problem!

          First, because ProPak is memory-resident it is always available
          at the touch of a key.  Second, because we don't always use the
          same languages and tools when developing applications, ProPak's
          interactive Keystroke Reference Center provides the information
          needed for the most common keystroke return values, the BIOS scan
          codes and the dBASE INKEY() return codes, simultaneously.  Third,
          to take the solution a step further, The Keystroke Reference
          Center displays a "Portability Note" whenever a key or key
          combination requiring additional information, is pressed.


          The Keystroke Reference Center                                 74



          Falk Data Systems             Programmer's Productivity Pack 2.50


          To round out The Keystroke Reference Center, a live (real time)
          display of each individual bit in the two BIOS keyboard status
          bytes is displayed in the lower half of the screen.

          Another piece of information that may be of interest to many of
          you is that ProPak modifies the normal keyboard interrupts (Int
          09h and 16h) in order to identify and use more keystrokes than
          are normally available through the BIOS services alone.  Of
          course, if you press one of these special key combinations a
          Portability Note will let you know about it.

          Using The Keystroke Reference Center is as simple as it could
          possibly be.  Instead of paging through a long chart, simply
          press the key or key combination that you are interested in, and
          you'll instantly have all the necessary information.


          How To Access The Keystroke Reference Center:
          ---------------------------------------------

          The Keystroke Reference Center is an attachment to The
          Programmer's Calculator.  This means that it is attached to and
          accessed through the Calculator.

          You access The Keystroke Reference Center from the Calculator by
          pressing <F10>.  That closes the Calculator and opens this
          attachment.


          The Display:
          ------------

          The Keystroke Reference Center display provides you with a great
          deal of information.

          The highlighted box at the top left gives the dBASE INKEY() value
          for any keystroke.  The highlighted box at the top right gives
          the BIOS scan code for any keystroke.  These will be set to the
          values of <F10> when you first access The Keystroke Reference
          Center because that is the key you used to access it.













          The Keystroke Reference Center                                 75



          Falk Data Systems             Programmer's Productivity Pack 2.50


                |-----------------------------------------------------|
                |             Keystroke Reference Center              |
                |-----------------------------------------------------|
                |  dBASE Key Code:  |   ProPak:   |  BIOS Scan Code:  |
                | 11111111 11110111 | Version 2.5 | 01000100 00000000 |
                | Hex          FFF7 |  12-JAN-90  | Hex          4400 |
                | Dec            -9 | 02:50:00 am | Dec        17,408 |
                |-----------------------------------------------------|
                |       Press a key or key combination:  <F10>        |
                |-----------------------------------------------------|
                |             BIOS Keyboard Status Bytes:             |
                |    Byte at 0040:0017H    |    Byte at 0040:0018H    |
                | -------------------------+------------------------- |
                |  1 1 0 0 0 0 0 0         |  0 0 0 0 0 0 0 0         |
                |  | | | | | | | Rt Shift  |  | | | | | | | Left Ctrl |
                |  | | | | | | Left Shift  |  | | | | | | Left Alt    |
                |  | | | | | Ctrl Pressed  |  | | | | | Sys Req Press |
                |  | | | | Alt Pressed     |  | | | | Hold State      |
                |  | | | Scroll Lock       |  | | | Scroll Lock Press |
                |  | | Num Lock State      |  | | Num Lock Pressed    |
                |  | Caps Lock State       |  | Caps Lock Pressed     |
                |  Insert State            |  Insert Pressed          |
                |-----------------------------------------------------|
                |   Press <Alt-Escape> to return to the Calculator.   |
                |-----------------------------------------------------Ù
                    Figure 6: Keystroke Reference Center Display

          The box between the two highlighted boxes tells you what version
          of ProPak you are using, the date, and the time.

          The lower half of the display gives you a live (real time)
          display of the values in the BIOS keyboard status bytes in low
          memory.


          Scan Codes and INKEY() Values:
          ------------------------------

          When you press a key or key combination on your keyboard, the
          software you are using must have some means of identifying or
          recognizing the key you pressed.  To enable software to recognize
          keystrokes, the BIOS in your computer translates each keystroke
          into a particular code.  Your software then uses that code to
          identify which key was pressed.  We refer to this code by various
          names, but the most common name is "Scan Code."  The Keystroke
          Reference Center displays the scan code for each key you press.

          The dBASE language, including the various compilers like
          Clipper, from Nantucket, return codes that are different than the
          BIOS scan codes.  To determine which key was pressed you would



          The Keystroke Reference Center                                 76



          Falk Data Systems             Programmer's Productivity Pack 2.50


          use the built-in INKEY() function.  The INKEY() values are also
          provided by The Keystroke Reference Center.


          Portability Notes:
          ------------------

          Some keys are only available on  enhanced keyboards.  For
          instance, F11 and F12.  Some key combinations are recognized only
          with certain keyboards.  How do you remember which is which?  If
          you use an enhanced keyboard for software development, how do you
          make sure that users who don't have an enhanced keyboard can also
          use your program?

          The Keystroke Reference Center points out special keys or key
          combinations that not every keyboard can utilize.  The Keystroke
          Reference Center does this by way of "Portability Notes" which
          provide you with the information you need regarding the various
          keyboards.


          Moving the Display:
          -------------------

          There are a few keystrokes that have special meaning in The
          Keystroke Reference Center.  These include the keys used to move
          The Keystroke Reference Center display around the screen.

          Although these keystrokes are commands within The Keystroke
          Reference Center they will still be processed just like any other
          keystroke.  All their information, as well as any Portability
          Notes concerning them, will be displayed as the action is carried
          out.

          Move Left - To move the display one column left press <Alt><Left>
          (left arrow).

          Move Right - To move the display one column right press
          <Alt><Right>.

          Move to the Left Side - To move the display all the way to the
          left side of the screen press <Alt><Home>.

          Move to the Right Side - To move the display all the way to the
          right side of the screen press <Alt><End>.

          Move Up - To move the display one line up, press <Alt><Up> (up
          arrow).  You must have more than 25 lines of text visible on your
          screen to use this feature.




          The Keystroke Reference Center                                 77



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Move Down - To move the display one line down, press <Alt><Down>.
          You must have more than 25 lines of text visible on your screen
          to use this feature.

          Move to Top - To move the display all the way to the top of the
          screen, press <Alt><PgUp>.  You must have more than 25 lines of
          text visible on your screen to use this feature.

          Move to Bottom - To move the display all the way to the bottom of
          the screen, press <Alt><PgDn>.  You must have more than 25 lines
          of text visible on your screen to use this feature.


          Other Available Commands:
          -------------------------

          Capture Screen to Disk - To capture the current screen to disk,
          press <Ctrl><Enter>, or <Alt><Enter>.  This will copy the
          contents of the screen to any disk file that you specify.  The
          disk file may or may not already exist.  The screen will be
          filtered, or not filtered, according to the options you specify
          with PCustom or "on the fly" with the "Modify Options" choice on
          The Control Center.  For more detailed information on filtering
          refer to the In-Depth Reference Guide on page 100.

          Returning to the Calculator - To return to the Calculator from
          The Keystroke Reference Center, press <Alt><Esc>.

          Exit from ProPak - Press <Esc> to exit from the pop-up.  This
          will allow you to pop back to the same place you left the next
          time you pop up ProPak.  Because The Keystroke Reference Center
          is an "attachment" to the Calculator, pressing the same Hot Key
          that normally activates the Calculator will instead pop up The
          Keystroke Reference Center.  This saves you the trouble of going
          through the Calculator itself to get back to The Keystroke
          Reference Center when it is the attachment you were last using.

















          The Keystroke Reference Center                                 78



          Falk Data Systems             Programmer's Productivity Pack 2.50


                           -------------------------------
                            Park Disk(s) and Blank Screen
                           -------------------------------


          The In-Depth Reference Guide:
          =============================

          You are probably aware that when the same characters are
          displayed in the same position on your screen for long periods of
          time they tend to burn a permanent image of themselves into the
          phosphorescent coating of your screen.  To avoid this many people
          use automatic screen blanking programs that blank the screen
          after a predetermined period of keyboard inactivity.  Such
          utilities are certainly useful and necessary, but many people
          feel that there is a better way to accomplish the same goal.

          There are some very obvious disadvantages to those particular
          utilities.  The screen is often blanked unexpectedly, which can
          sometimes be rather unsettling.  While the screen is blank it is
          not necessarily obvious whether or not the computer is turned on,
          which is an important consideration when more than one person
          might be using the machine.  Some of these utilities "eat" the
          next keystroke entered, while some do not.  Also, while you are
          away from your computer, your monitor is protected from screen
          burns, but your hard disk is not protected against head crashes.

          ProPak provides an alternative to the many "automatic" screen
          blanking programs.  Most users prefer to stop using their older
          screen blanking programs once they start using ProPak!

          ProPak never blanks your screen "automatically" (i.e.
          unexpectedly).  You are always in control.  Furthermore, when
          ProPak blanks your screen it also displays a clock on the screen
          so that you know that the computer is actually turned on.  This
          clock will never produce screen burns because it moves to a new
          position on the screen every 60 seconds.  This means that for
          every minute the clock is in a certain position, there are over
          three hours when that same position is blank.  To top it all off,
          when ProPak blanks your screen it also parks your hard disk by
          moving the read/write heads to the last cylinder.  If you have
          two hard disks, both will be parked.

          If you do not want to use the Disk Parking feature when you blank
          your screen you can disable that part of the utility with
          PCustom.  Refer to the PCustom In-Depth Reference Guide (page
          135) for complete information on how to disable disk parking.

          ProPak's Screen Blanking and Disk Parking feature can be
          activated from either The Programmer's Calculator or from The
          ASCII and Color Attribute Chart.  In either case, the Screen


          Screen Blanking and Disk Parking                               79



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Blanking and Disk Parking feature is invoked by pressing <P> for
          <P>ark.  You can also use <Ctrl><P> or <Alt><P>.

          Once activated, you may "unblank" the screen and return to where
          you left off by pressing any key.
















































          Screen Blanking and Disk Parking                               80



          Falk Data Systems             Programmer's Productivity Pack 2.50


                                 --------------------
                                  The Control Center
                                 --------------------


          The Control Center is present only in ProPak.EXE.

          It is through The Control Center that you can customize many
          aspects of ProPak "on the fly"; that is, while you are actually
          using ProPak.  It is also through The Control Center that you
          have access to some of ProPak's most useful features.

          There is so much to The Control Center that we have divided it
          into two Quick Start Tutorials.  The first will cover the Modify
          Options feature, the Screen Capture facility, and the Print
          feature.  The second will cover Keystroke Recording and Playback
          and the Screen Grabber feature.

          The five In-Depth Reference Guides are:

             1.  The Control Center..................................... 89

             2.  The Modify Options Feature............................. 96

             3.  Keystroke Recording And Playback (This includes the Screen
                 Grabber feature) ..................................... 102

             4.  The Screen Capture Facility........................... 111

             5.  The Print Facility.................................... 113


          Quick Start Tutorial #1:
          ========================

          This Quick Start Tutorial is intended to familiarize you with The
          Control Center and what it can do for you.  As with the other
          tutorials, you should be able to complete it in about 15 minutes.
          Enjoy!

          If you want to be able to use the background Print facility be
          sure to load the DOS "Print" program before doing this Quick
          Start Tutorial.

          At the DOS prompt, type "PRINT".  When PRINT asks you for the
          device to send the output to just enter the correct response
          (usually PRN).  Be sure that your printer is connected and turned
          on, too.





          The Control Center                                             81



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Be sure that ProPak is resident in memory.  Type "PROPAK" <Enter>
          at the DOS prompt.  Ok.  Let's pop up The Control Center.  Press
          <Ctrl><RightShift>.  This will bring up The Control Center.

          There are nine options on the list.  Some will be bright, while
          others will be dim.  The reason for this is that some of the
          options are not yet available.  You cannot, for instance, list
          Keystroke Recordings if you haven't yet recorded any.

          For now, we'll take a look at the choice that was first
          highlighted when you popped up the Menu.  The "Modify Options"
          choice.  With the "Modify Options" choice highlighted, press
          <Enter> to select it.  This brings up the Modify Options Submenu.

          There are nine options on this Submenu.   The first five allow
          you to change any of the five "Hot Keys" while ProPak is
          resident.  We call this changing Hot Keys "on the fly".  They are
          pretty straightforward and self explanatory.  Let's not change
          any Hot Keys just yet.

          TIP: If you frequently enter extended ASCII codes into your
               source code or other text files using the <Alt> key and the
               number keypad, then you should know about ProPak's
               modification of the BIOS keyboard services.  In order to use
               key combinations like <Alt><Up> to move the Calculator up
               for instance, ProPak has to modify the BIOS keyboard
               interrupts (Interrupts 09h and 16h).

               Because of this, when ProPak is resident in memory, instead
               of holding down the <Alt> key and entering the number
               corresponding to the extended character you wish to insert
               into your document, you will now have to hold down the <Alt>
               key AND a <Shift> key to enter extended ASCII characters.

               However, since both the <Alt> key and the shift keys are
               used as Hot Keys within ProPak, you will need to change the
               Hot Keys for the Control Center and the Calculator.
               Changing them to <Ctrl><LeftShift> and <Ctrl><RightShift>
               will retain all the benefits of using only modifier keys for
               these Hot Keys as mentioned on page 57, as well as retain
               the ability to enter extended ASCII characters.

               Remember that any Hot Keys you change "on the fly" are
               changed in memory only.  The .EXE file is unchanged.  If you
               unload ProPak from memory all of the options modified
               through the Control Center will be "forgotten".  You must
               use PCustom, the customizing program, to make "permanent"
               changes in ProPak.





          The Control Center                                             82



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The next option is "Keystroke Recording/Playback", and as the
          right side of the menu indicates, it is "Enabled."  Highlight
          this option and press <Enter>.  Now it is "Disabled".  You have
          now disabled the Keystroke Recording and Playback feature.  Press
          <Enter> again and the feature is once more "Enabled".  Toggle it
          as often as you wish, but be sure you leave it "Enabled" or the
          next tutorial isn't going to function for you.

          We will cover all of the other features that deal with Keystroke
          Recording and Playback in the next tutorial.

          Keystroke Playback Delay is handled on page 86.

          Read Key Records from File is handled on page 88.

          The last option is "Screen Capture Filter Method".  Pressing
          <Enter> three times will take you through the three options;  "Do
          not filter at all", "Filter for screen", and "Filter for
          printer".  Leave it at "Filter for Printer" and press <Esc>.
          This brings you back to the main Menu.  The Filtering feature is
          explained more fully in the In-Depth Reference Guide (page 100).

          One of the options here in The Control Center is "Copy Screen to
          File".  This simply means taking what is currently on the screen
          and copying that information to a disk file.  The last option on
          the "Modify Options" Menu allowed you to set the filter method
          for the screens you capture.

          Press the letter <C> to select the "Copy Screen To File" option.
          You could have used the arrow keys to move the highlight bar, but
          we wanted you to see that you could also use the first letter of
          the option.  With "Copy Screen To File" highlighted, press
          <Enter>.

          A window will open informing you of the current directory and the
          built-in .SCN file name extension.  The extension may be changed
          using PCustom if you don't like the default .SCN extension.  For
          now, simply enter a name for the file.  Let's use "TEST" for this
          example, and press <Enter>.  When you press <Enter>, the window
          will disappear restoring the underlying screen.  The underlying
          screen will then be copied to a disk file called "TEST.SCN".

          This is a little different than the Screen Capture facility in
          The Programmer's Calculator.  In the Calculator it was operated
          by pressing <Ctrl><Enter> and would copy the screen complete with
          Calculator, Menu, ASCII Chart, or Keystroke Reference Center,
          whichever were present.  In the Control Center it is operated
          from this Menu and the underlying screen is copied in its
          entirety, without the Menu.  There is no difference in the .SCN
          files that they are copied to, though.  Your word processor, or



          The Control Center                                             83



          Falk Data Systems             Programmer's Productivity Pack 2.50


          text editor, can access the files the same, regardless of which
          tool in ProPak performed the Screen Capture.

          In order to use the "Print Facility" feature, you must be using
          DOS 3.0 or above, and you must have loaded the DOS "PRINT"
          program.  The DOS "PRINT" program is an excellent tool that
          allows you to print files in the background while your computer
          is doing other things (like taking you through this tutorial).
          ProPak allows you to submit files to the queue for printing, or
          cancel the files that are already in the queue.

          Can you think of some file you would like to print while you
          complete this tutorial?  Well, if you can, then select "Print
          Facility" and press <Enter>.  This will bring up a window which
          will give you the option to "Submit a File to Print" or to
          "Cancel All Print Files".  Select "Submit a File to Print" and
          press <Enter>.  This will bring up the File Mask Editor.  Enter
          the path and name of the file you want to print and press
          <Enter>.  This brings up the "DOS Print Request Status" window to
          tell you that your file is being printed, but by now the sounds
          coming from your printer have already confirmed this.  Pressing
          <Esc> brings you back to the Menu.  You can finish this tutorial
          while that job is printing.

          ProPak can be unloaded from memory by selecting the "Unload from
          Memory" option on The Control Center.  Just like in the
          Calculator, a window will open letting you know if it is safe to
          unload.  <Esc> tells ProPak that you changed your mind about
          unloading, while any other key instructs ProPak to go ahead and
          unload.

          If you want to exit The Control Center, but leave ProPak resident
          for later use press <Esc> while at The Control Center.  Any
          modifications you made using the Modify Options feature will
          still be in effect the next time you access either The
          Programmer's Calculator or The Control Center.

          We haven't gone through every option in this tutorial, but, this
          is a good time to stop and consider what we've seen so far.
          There is a great deal more information in the In-Depth Reference
          Guides for each of these features.  The next tutorial will cover
          the subject of Keystroke Recordings.











          The Control Center                                             84



          Falk Data Systems             Programmer's Productivity Pack 2.50


                                 --------------------
                                  The Control Center
                                 --------------------


          Quick Start Tutorial #2:
          ========================

          This Quick Start Tutorial may well open the door to the single
          biggest productivity enhancement offered by the Programmer's
          Productivity Pack.  We will cover much more than simply recording
          keystrokes and playing them back later.  We will also look into
          alternative methods of acquiring Keystroke Recordings, how you
          can save Keystroke Recordings to a file or even a group of files,
          and how you can later read these Keystroke Recordings from a file
          and make them available for use.

          First, what is a Keystroke Recording?  It is a string or
          collection of keystrokes that are recorded in memory so that they
          can be played back at the touch of a single key or combination of
          keys.  Many utilities provide what they call keystroke "macros",
          which are basically the same thing ProPak calls Keystroke
          Recordings.  However, we decided to avoid the use of the term
          "macro" because it is confusing to many people.  A macro in
          Quattro Pro is different than a macro in assembly language, which
          is different than a macro in word processing programs like
          SPRINT.  The term "macro" is really not very descriptive or
          precise.  So, to simplify matters let's just keep things
          straightforward and call them Keystroke Recordings.

          There are several ways to produce and use Keystroke Recordings.
          Let's start with a simple example, straight from the DOS prompt.

          First, ensure that ProPak is resident in memory.  Next, press
          <Alt><=>.  <Alt><=> is the Hot Key that starts recording
          keystrokes.  A window will pop up asking you to which key you
          would like this recording assigned.  We call the key and key
          combinations that play back Keystroke Recordings "Trigger Keys".
          This differentiates between them and the Hot Keys ProPak uses.
          Select something simple like <Alt><F10>.  Hold down the <Alt> key
          and press <F10>.  The window will then close.  From this point
          on, every key you type will be recorded.  To keep this example
          simple, type your full name and then press <Alt><->.  Use the top
          row minus key.  <Alt><-> is the Hot Key that turns off Keystroke
          Recording.

          WHILE RECORDING KEYSTROKES, ALL OTHER FEATURES OF PROPAK ARE
          DISABLED.  If you ever find yourself unable to access ProPak when
          you know it is in memory, check that you are not in record
          keystrokes mode (by pressing <Alt><->).



          The Control Center                                             85



          Falk Data Systems             Programmer's Productivity Pack 2.50


          At this point another window opens up and you are given a chance
          to assign a name to that recording.  Since this is our only
          Keystroke Recording, we really don't need a name, but let's give
          it one anyway just for practice.  Call it "MY NAME" and press
          <Enter>.  A window will then let you know how much memory is
          being used to store that recording.  Pressing any key returns you
          to the DOS prompt.

          Now that we are back at the DOS prompt, we can test our Keystroke
          Recording to see what it does.  Clear the DOS command line using
          the <Backspace> key.  Now, press <Alt><F10>.  That was the
          Trigger Key you assigned the recording to.  Your name appears
          instantly at the DOS prompt.

          Did you notice how fast the keystrokes appeared on your screen?
          The keystrokes can play back as fast as 1,000 characters per
          second!  As you might imagine, some word processors and text
          editors can't keep up with this pace and lose a keystroke here
          and there.  To get around this problem ProPak provides you with
          the Keystroke Playback Delay option.  Let's use it now.

          Press <Ctrl><RightShift>.  Once you are in The Control Center,
          select the "Modify Options" choice and press <Enter>.  Move the
          highlight bar to the "Keystroke Playback Delay" choice and press
          <Enter>.  Another window will then open which asks you to enter a
          value from 0 to 100.  Type in "100" and press <Enter>.  This will
          give you a good example of the difference in Playback speeds.
          Now you'll need to use the <Esc> key to return to The Control
          Center, and use the <Esc> key again to return to DOS.  Once you
          are back at the DOS prompt, press <Alt><F10> to play it back one
          more time.  Notice the difference in speed?

          How do you know if you need to use a delay value or not?  Well,
          normally you can leave the delay value set to 0 which will allow
          the keystrokes to be played back at maximum speed.  If you find
          an application where some keystrokes are lost because the program
          can't keep up with the high speed keystrokes, then simply insert
          a Playback delay.  Experimenting is really the best method of
          determining how much of a delay, if any, will work best with the
          various programs you use.

          Let's say you want to make a Keystroke Recording of your usual
          heading for source code files.  There is a way to record this
          without typing it all in!  You could open up one of your program
          files using your usual editor, then use ProPak's Screen Grabber
          feature to grab a chunk of text off the screen and turn it into a
          Keystroke Recording.

          Here's how to do it.  At the DOS prompt, type in "DIR" <Enter>
          just to get some text onto the screen.  Now press <Alt><SPACE> to
          pop up the Screen Grabber.


          The Control Center                                             86



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The box that pops up on your screen is called the "Grab Box".
          This is the box you use to surround the text you would like to
          grab from the screen.

          Use the <Up> and <Left> arrow keys to position the Grab Box at
          the top left corner of the directory listing on your screen.  Now
          hold down <Alt> and use the <Down> and <Right> arrow keys to
          enclose the entire directory.  Experiment with it for a few
          seconds and you'll get the hang of it.

          Before we actually grab part of the directory, you should
          remember that later we will be playing back exactly what is
          grabbed.  So you might not want to grab a bunch of file names
          that DOS might try to execute when you play back the Recording.
          Try grabbing something other than complete file names, or you may
          find DOS executing each line of your Keystroke Recording when it
          is played back.

          Once you have the Grab Box positioned and sized the way you want
          it, press either <Enter> or <Esc> to "grab" the text that was
          highlighted.  This doesn't remove it from the screen, it just
          copies it into memory.

          Now you see a simple Menu of choices for the end of line
          character.  Usually the <Enter> choice will suffice.  <Enter> is
          the same as a carriage return.  All of the options are explained
          in the In-Depth Reference Guide (page 107).

          Once you have chosen an end-of-line character you will be given a
          chance to assign a name to the recording, and asked which key you
          would like to use to play back the recording.  Choose <Alt><F9>
          as the Trigger Key, then choose a name for this recording.

          Return to the DOS prompt and press <Alt><F9>, or whatever you
          chose for a Trigger Key.  There it is, but, boy is it slow!
          Remember that ProPak is now waiting 100 milliseconds between
          characters on Playback.  You know how to change the delay back to
          0.  Do it and then play back this Keystroke Recording again.

          Up till now your Keystroke Recordings are only in memory.  You
          can save these recordings to a file if you want them to be
          available tomorrow morning when you turn your computer on.  To do
          this pop up The Control Center by pressing <Ctrl><RightShift>.
          Select "Write Keys to File" on the Menu, and press <Enter>.  You
          will then be asked for a name for the file.  The file extension
          is set to ".KEY" in order to ensure consistency and to help you
          identify Keystroke Recording files easily.  If you don't like the
          ".KEY" extension, it can be changed using PCustom.  One other
          point, the keystroke recording files will always be placed in the
          same directory from which ProPak was loaded.  This simplifies
          many things, especially finding the files later.


          The Control Center                                             87



          Falk Data Systems             Programmer's Productivity Pack 2.50


          While you are still in The Control Center, select the "List Key
          Recordings" option and press <Enter>.  This will display a list
          of all the current Keystroke Recordings, their Trigger Keys, and
          how many keystrokes are in each recording.  Press <Esc> to return
          to The Control Center.

          Select "Read Keys from File".  Reading Keystroke Recordings back
          from a file is basically the same process as writing them to a
          file, except that you will be choosing a file already in
          existence.

          There are two ways that Keystroke Recordings can be read from a
          file.  You saw the options "Merge" and "Replace" when we looked
          at "Modify Options" in the last tutorial.  If you left it set on
          the default "Merge with Existing Key Records" they will be added
          or merged with any current Keystroke Recordings.  We say "merged"
          because if any recordings in the file use Trigger Keys that are
          currently defined, then the Keystroke Recording in the file will
          replace the one currently defined, while other recordings will
          simply be added to those already in use.

          If the option was set to "Replace Existing Key Records" reading
          the Keystroke Recordings from a file would first cause all the
          Keystroke Recordings in memory to be deleted.  Then the set of
          Keystroke Recordings in the file would replace them.

          Don't "Read Keys from File" just yet.  Instead, select the
          "Delete Key Records" option and press <Enter>.  This option
          allows you to delete one or all of the current Keystroke
          Recordings.  For now, let's delete "all" the current Keystroke
          Recordings.  Go ahead and delete them all, the process should be
          self-explanatory.

          Now select "Read Keys from File".  A window opens up and you see
          the file you wrote to disk with a .KEY extension.  Press <Enter>.
          Your two Keystroke Recordings are back!  Press the Trigger Keys.
          Sure enough, they work.

          Well, now you have even more tools to help you in your pursuit of
          increased productivity.  The Keystroke Recording and Screen
          Grabber features can be used in a wide variety of ways, be
          inventive.  Perhaps you have noticed, too, that despite all of
          ProPak's power and flexibility, its greatest feature is its ease
          of use.  ProPak was designed to be just plain "friendly"!









          The Control Center                                             88



          Falk Data Systems             Programmer's Productivity Pack 2.50


                                 --------------------
                                  The Control Center
                                 --------------------


          In-Depth Reference Guide:
          =========================

          The features of the Control Center have been divided into five
          separate Reference Guides to make each feature easier to find and
          study.  This Reference Guide will cover accessing and exiting The
          Control Center and getting status Information.


          How To Access The Control Center:
          ---------------------------------

          The Control Center is accessed by way of a Hot Key, as long as
          ProPak is resident in memory.  The default Hot Key is
          <Ctrl><RightShift>.  If you are not sure if ProPak is in memory
          type "PROPAK" <Enter> at the DOS prompt.  This will load ProPak
          or produce a message that ProPak is already resident.

          TIP: Along with the message telling you that ProPak is already
               resident, there will be two lines reminding you what the Hot
               Keys for The Programmer's Calculator and The Control Center
               are.  Even if you change the Hot Keys "on the fly" (after
               ProPak is resident), the message will correctly identify the
               current Hot Key assignments!  So if you ever forget the Hot
               Keys, simply attempt to load ProPak again, and you will be
               able to determine what keys are currently in use.  This can
               be a handy feature to remember.


          The Control Center:
          -------------------

                              |--- Control Center ----|
                              | Modify Options        |
                              | List Key Recordings   |
                              | Write Keys to File    |
                              | Read Keys from File   |
                              | Delete Key Recordings |
                              | Copy Screen to File   |
                              | Print Facility        |
                              | Get Status Info       |
                              | Unload from Memory    |
                              |-----------------------|
                            Figure 7: Control Center Menu




          The Control Center                                             89



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Accessing The Control Center will bring up The Control Center
          Menu.  The "Modify Options" choice will be highlighted.  Some of
          the other options will be bright and some dim.  An option is dim
          if it is not currently available.  For instance, if the "List Key
          Recordings" option is dim it means that there are no Key
          Recordings to list.  If the "Print Facility" is dim it means that
          the DOS Print program is not loaded in memory and, therefore, not
          available.

          There are nine options on the Menu grouped according to function.
          The first option, and the one that is highlighted when you first
          access the Menu, is "Modify Options" because that will probably
          be the the most common reason for going to the Menu.  The
          Keystroke Recording and Playback function may be used more often,
          but, it is operated directly from the keyboard, without going to
          the Menu.  The next four options all deal with the Keystroke
          Recording and Playback function.  The last four options are for
          the Screen Capture facility, the Print facility, status
          information, and unloading from memory.

          We will look at all of these options here, but, complete
          information on the Modify Options feature, Keystroke Recordings,
          Screen Capture, and Print functions can be found in their
          respective In-Depth Reference Guides.


          Modify Options:
          ---------------

          Selecting this option will bring up the Modify Current Settings
          Menu.  You can change the five major Hot Keys used by ProPak,
          enable and disable Keystroke Recording, set the keystroke
          Playback delay, and set the methods for reading Keystroke
          Recordings and filtering screens captured to disk.

          Full details may be found in The Modify Options feature of the
          In-Depth Reference Guide (page 96).


          List Key Recordings:
          --------------------

          This option lists all of the current Keystroke Recordings by
          Trigger Key;  the key or keys used to play them back.  It also
          gives the name, if there is one, and how many keystrokes are
          actually contained in each recording.

          TIP: If you are wondering about the memory required for Keystroke
               Recordings you should know that each keystroke requires two
               bytes of memory, regardless of whether it is a single key or
               a key combination (like <Ctrl><F1>).  Also, a small amount


          The Control Center                                             90



          Falk Data Systems             Programmer's Productivity Pack 2.50


               of information is stored with each Keystroke Recording which
               ProPak uses to keep track of things.


          Write Keys to File:
          -------------------

          This option will write all of the Keystroke Recordings that are
          currently in memory to a file.  This lets you reuse the same
          Keystroke Recordings from day to day as needed.  If Keystroke
          Recordings are not saved to a file they will be lost when the
          computer is turned off.

          Writing Keystroke Recordings to a file does not remove them from
          memory.  They will still be active and available until they are
          deleted or replaced.

          Keystroke Recording files will always be stored in the same
          directory that ProPak was loaded from.  ProPak will automatically
          put a .KEY extension on whatever name you choose for the file
          (unless you change the extension using PCustom).

          TIP: The size of the file will depend upon how many Keystroke
               Recordings are currently defined.  Each Keystroke Recording
               written to a file will take the same amount of disk space as
               it took in memory.  In addition, each Keystroke Recording
               file has a short header inserted into it which contains
               information needed by ProPak.  This header is less than 100
               bytes in length.


          Read Keys From File:
          --------------------

          This option provides you with the ability to read Keystroke
          Recordings from a file of previously saved Keystroke Recordings.
          This is an extremely handy feature that allows you to reuse
          Keystroke Recordings over and over without having to redefine
          them each time ProPak is loaded into memory.

          Whether the Keystroke Recordings read from the file are merged
          with the current Keystroke Recordings or replace the current
          recordings is determined by the method currently set on the
          Modify Options Menu.

          When you select this option, ProPak looks into the directory from
          which ProPak was loaded for files with the extension .KEY (or the
          extension you specified using PCustom).  ProPak then displays the
          names of all the files with that extension.  You choose the file
          you wish to load by moving the highlight bar over the name of the
          file you want and pressing <Enter>.


          The Control Center                                             91



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Before loading the Keystroke Recordings from the file into
          memory, ProPak checks to be sure that the file actually contains
          Keystroke Recordings.  If it doesn't, an error message will
          appear and the file will not be read.

          TIP: The maximum number of Keystroke Recordings that can be
               active at one time is 100.  You'll probably never have that
               many keys redefined at once, but this should be considered
               when merging recordings from a file.  The currently active
               recordings plus the ones from the file must add up to no
               more than 100 or ProPak will not read the recordings from
               the file.


          Delete Key Recordings:
          ----------------------

          This option provides two methods for deleting Keystroke
          Recordings that are no longer needed.

          Delete All Recordings - Choosing this option allows you to delete
          all the current Keystroke Recordings.  Of course, this does not
          affect recordings that are stored in disk files.  When this
          option is chosen a window will open asking you to confirm that
          you really want to delete all the Keystroke Recordings currently
          stored in memory.  Choosing "no" cancels the operation while
          choosing "yes" allows ProPak to carry out your request.

          Delete One Recording - When this option is chosen a window will
          open in which all the current Keystroke Recordings will be
          listed.  Each recording will be identified by the Trigger Key
          used to Playback the recording and the name of the recording, if
          one is assigned.

          To select a particular Keystroke Recording for deletion, simply
          position the highlight bar over the one you wish to delete, and
          press <Enter> to delete the recording, or <Esc> to cancel the
          delete operation.  As with the "Delete All Recordings" option, a
          window will open asking you to confirm whether or not you wish to
          actually delete the recording.


          Copy Screen To File:
          --------------------

          This feature allows you to capture the contents of the screen
          beneath the Menu to a disk file.  The text on the screen is
          copied with a carriage return at the end of each line.  The
          screen will be filtered according to the method currently chosen
          on the Modify Current Settings Menu.



          The Control Center                                             92



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Complete information on this feature is available in the In-Depth
          Reference Guide (page 111).


          Print Facility:
          ---------------

          This feature gives you access to the DOS background PRINT
          facility at all times.  Through this option you may submit files
          to be printed in the background, or you may cancel files that
          have already been submitted.

          There are two prerequisites to using this feature.  First, the
          DOS background PRINT program must be installed in memory.
          Secondly, you must be using DOS version 3.0 or later.

          Complete information on this feature is available in the In-Depth
          Reference Guide (page 113).


          Get Status Info:
          ----------------

          The "Get Status Info" option is a quick and easy way for you to
          find out information about Keystroke Recordings and memory usage.
          When you select this option the following information is
          provided:

              o  The first line tells you how many Keystroke Recordings are
                 currently defined and available.

              o  The second line tells you how much memory is actually
                 being used to store these Keystroke Recordings.  This is
                 especially useful when you are considering using PCustom
                 to change the amount of memory that will be set aside for
                 Keystroke Recordings.  Once you have an idea of the kinds
                 of Keystroke Recordings you'll be using, you can decide
                 how much to raise or lower the memory allocated for
                 Keystroke Recordings.  The default allocation is 2,048
                 bytes (2K).

              o  The third line tells you how much heap memory is still
                 available for use.  Heap memory is basically memory held
                 in reserve in case it is needed at any time.  There are
                 two things that use this heap memory on a regular basis.
                 Keystroke Recordings are stored in this area, as you might
                 have guessed.  Also, whenever ProPak displays something on
                 the screen, the contents that were on the screen before
                 are stored in this heap memory area.




          The Control Center                                             93



          Falk Data Systems             Programmer's Productivity Pack 2.50


              o  The fourth line tells you the total amount of memory
                 ProPak is occupying.


          Unload From Memory:
          -------------------

          ProPak may be unloaded from memory by selecting the "Unload From
          Memory" option on The Control Center.  This option performs the
          same function that <Alt><U>, <Alt><U> performs within The
          Programmer's Calculator.  When this option is selected, ProPak
          examines each interrupt vector it uses to determine if any other
          programs have hooked into them since ProPak was loaded.  If no
          other programs have hooked these same interrupts, then ProPak
          will report that it is safe to unload.

          If ProPak determines that it is safe to unload, then it will give
          you another opportunity to change your mind.  Pressing <Esc> will
          return you to The Control Center, while pressing any other key
          will unload ProPak from memory.

          ProPak will not unload itself if doing so could possibly harm
          another program.  Even with all these built-in safety features,
          there are still steps you should take to ensure the safest
          possible operation of your system.

          Consider the DOS memory management techniques in use by current
          versions of MS-DOS.  If you have other programs loaded above
          ProPak in memory, even programs that are not memory-resident, and
          you unload ProPak out from under them, the memory will not
          actually be made available to other programs.  The reason for
          this is that DOS is not designed to handle these "holes" in
          memory between programs.  At the very least this will prevent the
          memory from actually becoming available until any programs that
          were loaded after ProPak have also been unloaded.  In a more
          negative situation, DOS could become confused by this "hole" in
          memory and the results could be unpredictable.

          TIP: The safest possible method of unloading any memory-resident
               program is to do it from DOS rather than from within another
               program.  For example, you are inside WordStar and pop up
               ProPak.  Then you instruct ProPak to unload itself from
               memory.  ProPak would probably be able to do it safely from
               the point of view of the interrupts involved.  But, a better
               method would be to exit from WordStar back to the DOS level
               and then pop up ProPak and tell it to unload itself.  While
               both methods work, and you may never experience any
               difficulties with either method, unloading from the DOS
               level is much safer, and, as a general rule, is the
               preferred method.



          The Control Center                                             94



          Falk Data Systems             Programmer's Productivity Pack 2.50


               This does not mean that you have to use only the "PROPAK -U"
               (command line) method of unloading ProPak from memory.  You
               may also pop up ProPak using a Hot Key and unload it using
               one of its built-in methods.  The important point here is
               that you should be at the DOS prompt when you pop it up for
               the purpose of unloading it from memory.















































          The Control Center                                             95



          Falk Data Systems             Programmer's Productivity Pack 2.50


                             ----------------------------
                              The Modify Options Feature
                             ----------------------------


          In-Depth Reference Guide:
          =========================

          The Modify Options feature was designed to allow you to customize
          many features of ProPak while it is actually resident in memory.
          PCustom enables you to make permanent changes to ProPak, but, the
          "Modify Options" Menu provides you with a means of making changes
          that only affect ProPak until it is unloaded from memory.

          With ProPak in memory, press <Ctrl><RightShift> to access The
          Control Center.  Modify Options is the default option when you
          first access this Menu.  If Modify Options is already highlighted
          then just press <Enter>.  If Modify Options is not highlighted,
          either move the highlight bar using the arrow keys or press <M>
          to select it.


          The Modify Current Settings Submenu:
          ------------------------------------

          ProPak gives you the freedom to customize many features, but with
          this freedom comes some responsibility (doesn't it always?).  The
          first five Menu choices enable you to change any of the Hot Keys
          "on the fly," while ProPak is actually in use.  Before we look at
          these, we should mention that some key combinations work very
          well as Hot Keys while others do not.  The following information
          should help you in deciding which keys to use as Hot Keys, and
          which ones to avoid.


          |------------------- Modify Current Settings --------------------|
          | The Control Center             <Ctrl><RightShift>              |
          | Start Recording Keystrokes     <Alt><=>                        |
          | Stop Recording Keystrokes      <Alt><->                        |
          | Screen Grabber                 <Alt><Space>                    |
          | Calculator and Attachments     <LeftShift><Ctrl>               |
          | Keystroke Recording/Playback   ENABLED                         |
          | Keystroke Playback Delay       0                               |
          | Read Key Recordings from File  MERGE WITH EXISTING KEY RECORDS |
          | Screen Capture Filter Method   FILTER FOR PRINTER              |
          |----------------------------------------------------------------|
                      Figure 8: Modify Current Settings Submenu

          First and foremost, you should always use a combination of two or
          more keys as a Hot Key.  Using a single key as a Hot Key is not
          only risky, but it usually will not work at all.  A good rule of


          The Control Center                                             96



          Falk Data Systems             Programmer's Productivity Pack 2.50


          thumb is to always use two or more keystrokes, at least one of
          which is either the left or right <Shift> key, or a <Ctrl> or
          <Alt> key.

          The most obvious consideration is that you wouldn't want to use
          any key combinations that are used normally in the course of your
          daily computer use as a Hot Key.  For instance, most word
          processing programs already make use of the function keys and
          many key combinations.  So when choosing a new Hot Key, you
          should make sure it doesn't override another key combination that
          is used for something else.

          Another consideration is the extra keys on enhanced keyboards.
          Some of these keys just don't work very well as Hot Keys.  For
          instance, functions keys F11 and F12 are very unreliable when
          used as part of a Hot Key combination.  Because of this, ProPak
          will not accept Hot Keys that include F11 or F12 as part of the
          key combination.

          The best way to determine which keys to use, if you do actually
          need to change any of the defaults, is to experiment.  Try a
          different Hot Key.  If it conflicts with some other program then
          change it.  If it works wonderfully then stick with it.

          TIP: The default Hot Keys like <LeftShift><Ctrl> are keys that
               don't include regular keys.  Because of this, you won't be
               able to specify a Hot Key like <LeftShift><Ctrl> from within
               ProPak itself.  If you want to use these kinds of
               keystrokes, those that have only "shift" or "modifier" keys,
               you will need to use PCustom to make the changes.

               There are two key combinations which you may want to avoid.
               If you frequently enter extended ASCII characters using the
               <Alt><numpad number> technique then you should avoid using
               <Alt><LeftShift> as a hot key.  This is due to the
               extensions ProPak applies to the keyboard.  In order to
               enter extended ASCII characters you will have to hold down
               the <Alt> key AND the <LeftShift> key, while entering the
               ASCII code on the number keypad.  This will interfere with
               the hot key if the hot key is <Alt><LeftShift>.

               If you are using an enhanced keyboard (with dedicated cursor
               movement keys) then you should avoid <Ctrl><LeftShift> as a
               hot key.  This is due to scan code similarities between key
               combinations such as <Ctrl><cursor pad key> and
               <Shift><numpad number> as used on a non-enhanced keyboard.
               If you choose <Ctrl><LeftShift> as a hot key on an enhanced
               keyboard you will frequently find ProPak popping up in
               response to key combinations such as <Ctrl><PgUp>,
               <Ctrl><PgDn>, etc.



          The Control Center                                             97



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Having discussed this information, let's take a look at each of
          the options available on the Modify Current Settings Menu.

          The Control Center (Menu) - This option allows you to change the
          Hot Key that is used to pop up The Control Center.  When ProPak
          was shipped, this Hot Key was set to <Ctrl><RightShift>.

          Remember, if you change this Hot Key you will not be able to
          reset it to the default again without going to PCustom.

          Start Recording Keystrokes - Selecting this option enables you to
          change the Hot Key that is used to START the Keystroke Recording
          feature.  The default Hot Key is <Alt><=>.

          Stop Recording Keystrokes - Selecting this option tells ProPak
          that you wish to change the Hot Key used to STOP Keystroke
          Recording.  The default Stop Recording Hot Key is <Alt><->.

          Screen Grabber - This option allows you to change the Hot Key
          used to pop up the Screen Grabber feature.  The default Hot Key
          is <Alt><Space>.

          Calculator and Attachments - This is the option you would select
          if you wanted to change the Hot Key used to pop up The
          Programmer's Calculator and its various attachments.  This Hot
          Key can also be changed from inside the Calculator itself should
          the need arise.  The default Hot Key for The Programmer's
          Calculator is <LeftShift><Ctrl>.

          If you change this Hot Key you will not be able to reset it to
          the default again without going to PCustom.

          Keystroke Recording/Playback - Using this Menu choice you can
          easily turn the Keystroke Recording and Playback feature on or
          off.  When the keystroke recording and Playback feature is
          enabled, pressing the appropriate keys will cause a Keystroke
          Recording to be played back.  If this feature is disabled, the
          Keystroke Recording will NOT be played back when you press the
          key to which the recording is assigned.  Additionally, you will
          not be able to record keystrokes with this option disabled.  You
          may enable and disable this feature as often as needed.

          Keystroke Playback Delay - ProPak is capable of playing back
          keystrokes as fast as 1,000 characters per second.  This Menu
          option allows you to change the Playback Delay Rate, the delay
          (in milliseconds) inserted between each keystroke played back,
          whenever the need arises.

          Some word processors can't handle rapid fire keystroke input, and
          in attempting to keep up, they sometimes lose a keystroke here
          and there.  In these situations accuracy is far more important


          The Control Center                                             98



          Falk Data Systems             Programmer's Productivity Pack 2.50


          than speed.  After all, what good is a software product that
          executes at warp 19, when the end result is that it quickly comes
          up with the wrong answer?

          With ProPak, you decide how quickly it plays back each keystroke.
          This Menu option will accept any value from 0 to 100.  This means
          that you instruct ProPak to pause from 0 to 100 milliseconds
          between each keystroke that it plays back.

          Read Key Records from File - This option allows you to determine
          exactly how ProPak should handle Keystroke Recordings that are
          read from a file of previously saved Keystroke Recordings.  There
          are two methods available, either of which may be set as the
          default using PCustom.  For those times in which you need to
          change the method at run time, this Menu option makes it easy.

          The first method available, which is also the default method, is
          to merge the Keystroke Recordings that are read from the file
          into the current Keystroke Recordings.  The reason it's called
          "merging" will be clear in a moment.

          As you know, you can give a name to each Keystroke Recording.
          This makes it easier for you to identify different recordings
          later.  ProPak itself does not use that name to identify a
          particular recording.  ProPak identifies each recording based
          upon the key or keys that trigger its Playback.

          Let's say we have a Keystroke Recording that is played back every
          time you press <Alt><F1>.  To ProPak, <Alt><F1> is the most
          important identifying characteristic of the recording because
          that is the key combination ProPak must watch for in order to
          know when you want the recording to be played back.  With ProPak
          you can give the same name to two or more Keystroke Recordings,
          but only one recording at a time can be assigned to a particular
          Trigger Key.  You can have only one Keystroke Recording assigned
          to <Alt><F1> at a time, for instance.

          With this in mind it is easier to see how ProPak handles
          Keystroke Recordings that are read in from a file.  If a
          recording has a Trigger Key that is not already in use by another
          recording, ProPak will add that Keystroke Recording to the list
          of current recordings.  However, if a file contains a Keystroke
          Recording that has the same Trigger Key as a current Keystroke
          Recording, the one in the file will replace the current one and
          become the recording associated with that particular Trigger Key.
          Reading Keystroke Recordings from a file in this manner is called
          "merging."

          There is also another way that ProPak can be instructed to handle
          Keystroke Recordings that are read in from a file.  ProPak can be
          told to replace the current Keystroke Recordings with the ones in


          The Control Center                                             99



          Falk Data Systems             Programmer's Productivity Pack 2.50


          the file.  When this method is specified, ProPak will delete all
          the current recordings right before it reads the file.  Then the
          Keystroke Recordings from the file replace the ones that were in
          memory.

          The method best for you will, of course, depend upon the kinds of
          recordings you use and your normal work habits.

          TIP: When you merge recordings, there is always the possibility
               that one of the Keystroke Recordings in the file uses the
               same Trigger Key as a recording already in memory.  A good
               safety precaution to take before reading in a Keystroke
               Recording file, is to write the current recordings to a file
               with a unique name.  Having done this, you will always be
               able to get those Keystroke Recordings back when you need
               them.

          Screen Capture Filter Method - Almost every programmer and
          computer user has used some method of capturing the information
          currently displayed on the screen.  Perhaps you have used a
          utility that allows you to save screens to disk, or maybe you
          have simply used the "print screen" feature built into your
          computer.  You now have another alternative.

          Perhaps you have run across a situation where characters like
          happy faces and other strange symbols appeared on your screen,
          but, when you tried to print them your printer protested.  Or
          perhaps a character representing an end-of-file mark tricked the
          DOS "TYPE" command into thinking that it marked the end of the
          file (even though there was more text in the file after that
          mark).  Dealing with special characters like this is what the
          filter option in ProPak's Screen Capture facility is all about.

          By turning off filtering, ProPak's Screen Capture facility
          operates much like other similar utilities.  When activated it
          copies the contents of the screen to a disk file that you
          specify.  But to give you more control, you also have two
          additional levels of filtering available.

          By "filtering" we mean that before copying the screen contents to
          a disk file, ProPak will check to see if any of the characters
          present are in the list of characters to be filtered out.  If a
          character is in the list of characters to be filtered out, ProPak
          will replace that character with a dot (".").  Of course if you
          don't like the dot, PCustom allows you to specify any other
          character that you wish, as a replacement character.

          The reason ProPak replaces the character with another character
          is to prevent the alignment from changing.  By doing so, ProPak
          ensures that your captured screen images will still look good,
          regardless of how they were filtered.


          The Control Center                                            100



          Falk Data Systems             Programmer's Productivity Pack 2.50


          There are three levels of filtering available.

              o  Do Not Filter.  The first is no filtering at all.  The
                 screen will be copied to disk without altering any
                 characters.

              o  Filter for Screen.  The second level of filtering filters
                 out characters with ASCII codes 0 (null), 10 (line feed),
                 12 (form feed), 13 (carriage return), 26 (SUB - used as an
                 end-of-file marker), and 127 (DEL - looks like null to
                 many printers).

              o  Filter for Printer.  The third level of filtering filters
                 out characters with ASCII codes from 0 to 31 (the control
                 codes) as well as 127 (looks like null to many printers).
                 This is the recommended option, and is the one set when
                 ProPak is shipped.

          Changing the level of filtering is easy.  Simply press the
          <Enter> key to switch from one level to another.

































          The Control Center                                            101



          Falk Data Systems             Programmer's Productivity Pack 2.50


                          ----------------------------------
                           Keystroke Recording and Playback
                          ----------------------------------


          In-Depth Reference Guide:
          =========================

          You are probably familiar with the concept of "keystroke macros"
          or "keyboard macros".  Those "macro" capabilities are essentially
          the same as ProPak's Keystroke Recording and Playback capability.
          We avoided the use of the term "macro" because it has so many
          different meanings in different contexts that it is often a
          source of confusion to those unfamiliar with the concept.
          Instead we chose to call this feature "Keystroke Recording and
          Playback", which we felt was a more accurate description.

          The Keystroke Recording and Playback capabilities built into
          ProPak are very easy to use.  This capability can save you a
          great deal of time while working on a variety of programming
          projects, regardless of the languages or environments you use for
          development.

          The basic process of Keystroke Recording and Playback involves
          three steps.

             1.  Tell ProPak when to start recording your keystrokes.

             2.  Tell ProPak when to stop recording your keystrokes.

             3.  Play back the recordings as often as necessary.

          It's that simple!

          ProPak enables you to assign up to 1,000 keystrokes to a single
          key or key combination.  This gives you the ability to "remap"
          your keyboard and control the way it actually functions.
          Furthermore, you can have up to 100 individual Keystroke
          Recordings active at one time.  This gives you the ability to
          almost completely reconfigure your keyboard to whatever best
          meets your needs.

          The ability to save Keystroke Recordings to disk and read them
          back later gives you even more control.  By taking advantage of
          the Keystroke Recording file capability you can have an unlimited
          number of Keystroke Recordings available whenever they are
          needed.






          The Control Center                                            102



          Falk Data Systems             Programmer's Productivity Pack 2.50


          How to Start Recording Keystrokes:
          ----------------------------------

          To begin recording keystrokes press <Alt><=>.  When you press
          <Alt><=> a window will open asking you which key should be used
          as a Trigger Key to play back the recording later.  This Trigger
          Key is not the same as a Hot Key like you would use to pop up the
          Calculator for instance.  Because the Trigger Key is not a Hot
          Key, you couldn't use a key combination like <Ctrl><Alt><F10>,
          but you could use either <Ctrl><F10> or <Alt><F10>.  Once you
          have selected the key combination you wish to use, the window
          will close.  Once the window closes, ProPak has shifted into
          Record Mode where each and every keystroke you type, including
          <Enter>, <Esc>, or any other key, is recorded.


          Important note!:
          ----------------

          WHILE RECORDING KEYSTROKES, ALL OTHER FEATURES OF PROPAK ARE
          DISABLED.  You can't, for instance, pop up The Programmer's
          Calculator while keystrokes are being recorded.  If you ever find
          yourself unable to access ProPak when you know it is in memory,
          check that you are not in record keystrokes mode (by pressing
          <Alt><->).  Even though ProPak will only record the first 1,000
          keys you press, it will allow you to keep pressing keys until you
          signal it to stop recording.


          How to Stop Recording Keystrokes:
          ---------------------------------

          When you have finished typing the keystrokes you wish to record
          you must tell ProPak to stop recording.  To do this simply press
          <Alt><->.  Be sure to use the top row <minus> key, not the
          <minus> key by the numeric keypad.

          When you have turned off the recording feature, you will be given
          an opportunity to assign a name to this particular recording.  Of
          course a name is not necessary, but if you have five or six
          Keystroke Recordings present at the same time, giving each a
          unique name can be a great help later on.  ProPak will also tell
          you exactly how much memory is being used to store the Keystroke
          Recording.  This information can be put to good use.  By taking
          note of the memory usage of each of your Keystroke Recordings you
          can get a much clearer picture of how much memory you should set
          aside for these Keystroke Recordings in the future (using
          PCustom).





          The Control Center                                            103



          Falk Data Systems             Programmer's Productivity Pack 2.50


          As you have seen, the process of recording keystrokes is very
          simple and straightforward.  Simply tell ProPak when to start
          recording and when to stop recording.  ProPak does the rest.


          How To Play Back a Keystroke Recording:
          ---------------------------------------

          To use the Keystroke Recording, simply press the key or key
          combination you assigned the Keystroke Recording to when you told
          ProPak to start recording.  If you forget which key was assigned,
          use the "List Key Recordings" option on The Control Center.  This
          will tell you not only the Trigger Keys used to play back each
          recording, but will also show you the names (if any) of the
          recordings and exactly how many keystrokes are recorded in each
          one.


          Setting The Playback Speed:
          ---------------------------

          To control the speed at which the Keystroke Recording is played
          back go to the "Modify Options" choice on The Control Center.
          Then select the "Keystroke Playback Delay" option on the "Modify
          Current Settings" submenu.  You can also change the Playback
          delay value more permanently using PCustom.

          The range of delay is between 0 and 100 milliseconds.


          The Screen Grabber:
          -------------------

          Along the lines of Keystroke Recording and Playback, we should
          also discuss another method by which Keystroke Recordings may be
          obtained.  You don't have to record keystrokes as you type them,
          you can also make a Keystroke Recording out of text that is
          already available on the screen.  Simply pop up the Screen
          Grabber and "grab" the text you want to use as a recording.  This
          capability is discussed in detail at the end of this In-Depth
          Reference Guide (page 107).

          Keystroke Recordings that are "grabbed" off the screen function
          exactly the same as ones that are typed in.  Use whichever method
          is easier for you in any given situation.








          The Control Center                                            104



          Falk Data Systems             Programmer's Productivity Pack 2.50


          List Key Recordings:
          --------------------

          First of all, "Key Recordings" is short for Keystroke Recordings.
          There were some space limitations in some of the Menus.
          Selecting this option on The Control Center will tell you how
          many Keystroke Recordings are currently in memory.  It will list
          them by Trigger Keys and tell you their names, if any, and how
          many keystrokes are in each recording.


          Write Keys To File:
          -------------------

          Since Keystroke Recordings are in the volatile memory of your
          computer they are lost when you unload from memory or turn off
          the power.  Rather than rewrite your Keystroke Recordings every
          day, you can save sets of recordings to a file for future use.
          You could have a different file for each type of job that you do
          on your computer.

          Selecting this option of The Control Center will copy all of the
          current Keystroke Recordings to a file.  You select a name for
          the file and ProPak marks it with a .KEY extension.  You can
          change the default extension using PCustom.


          Read Keys From File:
          --------------------

          This is the option on The Control Center that will read your .KEY
          files and place a set of Keystroke Recordings in memory for you.
          You select the set of Keystroke Recordings that you want by the
          name of the file they are in.

          The Keystroke Recordings in the file will either Replace or Merge
          with the current Keystroke Recordings.  You set that option with
          either Modify Options or PCustom.


          Delete Key Recordings:
          ----------------------

          With this option you can erase one or all of the current
          Keystroke Recordings from memory.  It doesn't affect any that
          have been written to files.







          The Control Center                                            105



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Get Status Info:
          ----------------

          This option of The Control Center tells you, among other things,
          how many Keystroke Recordings are currently in memory.  You would
          still need to List Key Recordings to see what the individual
          Trigger Keys, names, and sizes are.  It also indicates how much
          memory is currently in use by ProPak.













































          The Control Center                                            106



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Keystroke Recording TIPS:
          -------------------------

          The Keystroke Recording and Playback capability was really
          intended to be much more than a quick way to type "Dear Sir or
          Madam".  As an example of how this feature might be used,
          consider the following idea.

          Let's say that you like to always start your source code files
          with a Copyright statement and other basic information.  Perhaps
          your file headers look something like this:


          **********************************************
          *
          * Junior's Custom Software Development
          * and Whatcha-Ma-Call-It Widget Manufacturing
          *
          * Phone: BR-549
          *
          * Copyright (c) 1989, by Junior Samples
          *
          **********************************************


          Of course your file headers probably contain much more
          information, but this example suits our purposes here.  Why not
          make a Keystroke Recording of that header, either by recording
          keystrokes as you type them, or by using the Screen Grabber to
          grab an existing header.  By doing this you will be able to
          insert the entire header at the top of each new source code file
          at the touch of a key.  You can also record other often used key
          combinations and save them all to a disk file called "CODE.KEY",
          for instance.  This is certainly much easier and more efficient
          than retyping them every time, or even copying blocks from one
          file to another.

          With a little imagination you should be able to come up with
          numerous examples of how this capability could improve your
          productivity.


          The Screen Grabber Feature:
          ===========================

          ProPak's Screen Grabber is a tool that "grabs" text from the
          screen, so it can later be played back exactly like a Keystroke
          Recording.





          The Control Center                                            107



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Using the Screen Grabber is also simple and straightforward.  To
          activate the Screen Grabber simply press <Alt><Space>.  This pops
          up the "Grab Box".  Once the Grab Box appears on your screen you
          may use the cursor movement keys (arrow keys plus PgUp, Home,
          etc.) to position and size the Grab Box over the text you want
          grabbed.  The keystroke commands available are very intuitive.
          Using a cursor movement key by itself moves the entire Grab Box,
          using a cursor movement key while the <Alt> key is held down
          changes the size of the Grab Box.


          To Move The Grab Box:
          ---------------------

               <Up> Arrow - Moves the Grab Box up one line.

               <Down> Arrow - Moves the Grab Box down one line.

               <Left> Arrow - Moves the Grab Box left one column.

               <Right> Arrow - Moves the Grab Box right one column.

               <Home> - Moves the Grab Box to the far left side of the
               screen.

               <End> - Moves the Grab Box to the far right side of the
               screen.

               <PgUp> - Moves the Grab Box to the top of the screen.

               <PgDn> - Moves the Grab Box to the bottom of the screen.






















          The Control Center                                            108



          Falk Data Systems             Programmer's Productivity Pack 2.50


          To Change The Size Of The Grab Box:
          -----------------------------------

               <Alt><Up> Arrow - Decreases the height of the Grab Box by
               one line.

               <Alt><Down> Arrow - Increases the height of the Grab Box by
               one line.

               <Alt><Left> Arrow - Decreases the width of the Grab Box by
               one column.

               <Alt><Right> Arrow - Increases the width of the Grab Box by
               one column.

               <Alt><PgUp> - Decreases the height of the Grab Box to a
               single line.

               <Alt><PgDn> - Increases the height of the Grab Box all the
               way to the bottom of the screen.

               <Alt><Home> - Decreases the width of the Grab Box to a
               single column.

               <Alt><End> - Increases the width of the Grab Box all the way
               to the far right side of the screen.


          How To Use The Grab Box:
          ------------------------

          The most efficient way to use the Grab Box is to place the top
          left corner over the beginning of the text you wish to grab, and
          then resize the Grab Box to encompass all the text that will be
          grabbed.


          End-of-Line Characters:
          -----------------------

          The Screen Grabber enables you to choose between five end-of-line
          characters.  When text is grabbed from the screen it is just
          text, no carriage returns, line feeds, or other formatting
          information is included in that text.  Therefore, the Screen
          Grabber allows you five different options for an end of line
          character.  The end of line character is the character that will
          be placed at the right side of each line of grabbed text before
          the text is converted into keystrokes.  Each of the five options
          are described below:




          The Control Center                                            109



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Enter - This option will cause the Keystroke Recording to behave
          exactly as if the <Enter> key was pressed at the end of each line
          during recording.  This is the default option and is also the one
          that is used most often.

          Space - This option will place a space (ASCII 32) at the end of
          each line of text grabbed from the screen.  This is especially
          useful if you will be playing the Keystroke Recording back inside
          a word processor that has an automatic word-wrap feature.  This
          will enable your word processor to wrap each line properly.

          Down Arrow - This option will cause the Keystroke Recording to
          have a <Down> arrow keystroke at the end of each line.  This is
          often useful when working in spreadsheets or data entry screens
          where you would want to move to the next cell or field at the end
          of each line.

          Soft Space - This option places a soft space, a space with the
          high bit set, at the end of each line of text grabbed from the
          screen.  A space (ASCII 32) with the high bit set is the
          character used by most word processors to indicate a space that
          may be removed at the discretion of the software.  This is often
          useful when reformatting or printing a document.

          Nothing - This option adds nothing to the end of each line of
          text grabbed from the screen.  When this option is chosen, the
          beginning of the next line will be placed immediately at the end
          of the current line.

          If these options are not clear to you now, the best way to clear
          things up is to practice with them a few times.






















          The Control Center                                            110



          Falk Data Systems             Programmer's Productivity Pack 2.50


                            -----------------------------
                             The Screen Capture Facility
                            -----------------------------


          In-Depth Reference Guide:
          =========================

          This feature allows you to capture the contents of a screen to a
          disk file.  This works by copying the text that is on the screen
          to a disk file, with a carriage return at the end of each line.
          Optionally, the screen may be filtered according to your needs.
          The filtering options may be specified with PCustom, or changed
          "on the fly" using the "Modify Options" choice of The Control
          Center.

          The filtering is actually pretty straightforward.  Characters
          like Form Feed, Line Feed, etc., which will mess up the screen
          image when you go to print it, will be replaced with a dot "."
          (or any character you choose using PCustom to customize ProPak).
          This way the screen image's alignment remains unchanged, and at
          the same time you save yourself the trouble of editing the file
          before printing it.  It will be ready to go!

          The Screen Capture feature can be activated from either The
          Programmer's Calculator and its attachments or The Control
          Center.

          From The Programmer's Calculator and its attachments it is
          activated by either <Ctrl><Enter> or <Alt><Enter>.  It will copy
          the contents of the screen exactly as they are at the time those
          keys are pressed.  That means that you can copy the The
          Programmer's Calculator display (with or without the Quick
          Reference Menu), The ASCII and Color Attribute Chart display, or
          The Keystroke Reference Center display as part of the screen.

          From The Control Center, the Screen Capture feature is activated
          by selecting the Copy Screen to File option on The Control
          Center.  When you select that option ProPak first removes the
          Menu and then copies the underlying screen in its entirety.

          You will be asked for the name of the file to copy the screen to,
          and an extension of .SCN will automatically be appended to the
          file name.  If you don't like the .SCN extension, you may change
          it with PCustom.

          If a file by that name already exists in the current directory,
          you will be asked to confirm that you wish to overwrite it.  If
          the file does not exist, a new file with that name will be opened
          in the current directory.



          The Control Center                                            111



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Here is an explanation of the actual process involved for those
          who are interested.  First, the screen is copied to an internal
          array where the characters are separated from their corresponding
          attribute bytes.  Then, the array containing the characters will
          have a carriage return appended (added) to the end of each line.
          Optionally, each character will be filtered.  Filtering simply
          means that each character will be examined and compared against a
          filter list.  If the character matches one of the characters on
          the list it will be replaced with the replacement character that
          you specify through PCustom.  The default (normal) replacement
          character is a dot ".".  After this is completed, the "filtered"
          information will be written to the disk file.









































          The Control Center                                            112



          Falk Data Systems             Programmer's Productivity Pack 2.50


                                 --------------------
                                  The Print Facility
                                 --------------------


          In-Depth Reference Guide:
          =========================

          This feature of ProPak gives you access to the DOS background
          PRINT facility at all times.  Through this option you may submit
          files to be printed in the background, or you may cancel files
          that have already been submitted.

          There are two prerequisites to using this feature.  First, the
          DOS background PRINT program must be installed in memory.  It,
          too, is a memory-resident program.  Second, you must be using DOS
          version 3.0 or later.

          Using this facility you may submit files to the DOS background
          PRINT facility by specifying a file name or even a mask
          containing wildcards.  For instance, specifying "*.TXT" will open
          a window showing all the files with the extension .TXT, and allow
          you to move the highlight bar over the file you wish to submit,
          and press <Enter> to submit it.  This "point and shoot" procedure
          will place the file you specify into the "queue" of files waiting
          to be printed.

          You may also cancel all files that are presently in the "queue"
          by selecting "Cancel ALL Print Files" from the "DOS Print
          Control" Menu.

          This is a very easy feature to use, which you will also find to
          be very handy to have available.  It will allow you to continue
          working with your computer while those files are being printed.
          Remember that this is not the same as sending a document to print
          from your word processor.  It will only format the text according
          to any control codes that are embedded in the document.

          If you have never used the DOS background PRINT facility, or if
          you don't remember all the "command line" options available, then
          read on.  The following discussion does not list every option
          available because you can refer to your DOS manual for a complete
          list, but we will cover the most common options.

          The DOS background PRINT facility is a utility program that comes
          with each copy of MS-DOS.  It is a memory-resident program that
          is loaded into memory by typing "PRINT" <Enter> at the DOS
          prompt.  When loading, PRINT will ask you for the name of the
          "list device" which simply means the printing device.  Usually
          "PRN" is the answer you want.  But you could also specify "LPT1",



          The Control Center                                            113



          Falk Data Systems             Programmer's Productivity Pack 2.50


          "LPT2", "AUX", etc.  Consult your DOS manual for more
          information.

          When loading PRINT into memory you may change many of its default
          parameters by adding extra information on the "command line"
          (between the word "PRINT" and pressing the <Enter> key).  The two
          options that you will most likely use are "/B:n" and "/Q:n",
          which are explained below.

          The "/B" option allows you to change the size of PRINT's built-in
          print buffer.  The buffer may be any size from 1 to 32,767 bytes.
          The default is 512 bytes.  We recommend 1,024.  This will
          probably be sufficient for your needs.

          The "/Q" option allows you to change the number of files allowed
          in the "queue".  The queue is the waiting line.  You may specify
          any number from 1 to 32.  We recommend the maximum, which is 32.

          In both cases the option is followed by a colon (":") and a
          number.  The number specifies the setting you desire.  By the
          way, PRINT is case sensitive on this point so be sure to use
          upper-case letters to enter the command line parameters.

          Here's an example of loading PRINT with a 1K byte buffer and a
          maximum of 32 files allowed in the queue at any one time (this is
          what we recommend):

               PRINT /B:1024 /Q:32 <Enter>

          As you can see, PRINT is fairly easy to use.  Your DOS manual
          provides more complete information, including other options that
          are available.





















          The Control Center                                            114



          Falk Data Systems             Programmer's Productivity Pack 2.50


                          ----------------------------------
                           PCustom: The Customizing Program
                          ----------------------------------


          PCustom is ProPak's companion customizing program.  You may never
          use it.  ProPak may be exactly to your liking just the way you
          received it.  You may like the colors we liked, the sounds we
          liked, the way we allocated memory.  But, it is more likely that
          even though you're happy with ProPak there are just one or two
          things you would have done differently.  This is your gateway to
          making those changes.

          Before we get started with PCustom, you should know that PCustom
          works by going into the actual executable file (for ProPak.EXE)
          and making changes internally, and by updating the special
          configuration file (file with the .CFG extension) for both ProPak
          and ProSwap.  This gives your custom features a "permanent" feel.
          It makes the programs act as if they were actually custom written
          just for you!

          By the way, don't let the word permanent scare you.  You can
          change as many features as you want, as often as you want.
          Experiment.  Have fun!


          The Quick Start Tutorial:
          =========================

          If you placed PCustom into the same directory as the other ProPak
          files when you installed the package, then you are ready to
          begin.  If you haven't done this yet, then please do so now.

          Start PCustom by typing "PCUSTOM" <Enter> at the DOS command
          prompt.  If you have a black-and-white (LCD, or Gas plasma)
          monitor you should type "PCUSTOM -B" (or -b, /B, /b, \b, or \B).
          This will make PCustom use the gray scale color set for its own
          screen displays.

          PCustom begins by asking you which of the ProPak files you would
          like to modify.  We won't actually modify any of the programs in
          this tutorial, but, you should select "Modify all versions
          present" and press <Enter>.  Later, when you actually make
          changes, this will ensure that features are consistent between
          the two versions of ProPak.

          Next, the Main Menu appears.  The "Colors" selection is
          highlighted.  The text above the Menu tells you what the
          highlighted selection is for.  Press <Enter>.




          PCustom:  The Customizing Program                             115



          Falk Data Systems             Programmer's Productivity Pack 2.50


          This brings up the Colors Menu.  You can select one of the three
          standard color sets or design your own custom color set.  Select
          "Custom Attribute Set" and press <Enter>.

          This brings up the Select Colors Menu.  Select "ASCII Chart" and
          press <Enter>.

          Here are eight different portions of The ASCII Chart that you can
          customize to your liking.  We won't actually change anything now,
          so you can press <Esc> when you're finished looking around.  That
          pops you back to the Select Colors Menu.

          Select "Calculator" and press <Enter>.  This selection has its
          own Menu.  Choose one of the three options and press <Enter>.
          Make any changes you wish.  You can change your mind at any time,
          so, don't worry.  You can also restore the original colors by
          choosing one of the three default attribute sets on the Colors
          Submenu.

          Check out some more options from the Select Colors Menu and then
          <Esc> back to the Main Menu.  Select "Hot Keys" and press
          <Enter>.

          Here are the five major Hot Keys.  Select one and press <Enter>.
          You can choose your own or pick from the list.  What makes the
          list so useful is that you couldn't normally select any of those
          options from the keyboard.  That's why if you change some the
          default Hot Keys "on the fly" you cannot reset them to the
          default value.  However, you can do it from PCustom.

          <Esc> back to the Main Menu and move to the "Sound Effects"
          option.

          Here you can modify the beeps, clicks, and raspberries (error
          sounds) to be just like you always thought they should be.

          Now move to the "Advanced Options" choice.  Here you can set the
          mode and format the Calculator starts up in, the size and color
          of the "Grab Box", the extensions ProPak puts on files it saves
          for you, and a host of other things.

          Now move to "Exit PCustom".  Highlight "Cancel Changes" and press
          <Enter>.  This takes you out of the program without making any
          changes.

          Well, that's all for this tutorial.  As you can already see,
          PCustom is very easy to use, but very powerful.  You can modify
          almost any aspect of the Programmer's Productivity Pack.  Read
          the following In-Depth Reference Guide for a complete explanation
          of all the possibilities.



          PCustom:  The Customizing Program                             116



          Falk Data Systems             Programmer's Productivity Pack 2.50


                          ----------------------------------
                           PCustom: The Customizing Program
                          ----------------------------------


          The In-Depth Reference Guide:
          =============================

          PCustom is your ticket to a custom made version of the
          Programmer's Productivity Pack.  PCustom gives you the freedom to
          choose.  With ProPak you do not have to adjust your work habits
          and preferences to match the software.  Instead you can change
          the software to match your work habits and preferences.  After
          all, you should be telling your computer what to do, not the
          other way around.


          Starting PCustom:
          -----------------

          When you first start PCustom, by typing "PCUSTOM" <Enter> at the
          DOS command prompt, PCustom will load and wait for your first
          choice.  Throughout the use of PCustom you will find that PCustom
          avoids making decisions for you, but rather lets you stay in
          control.  You may modify whatever you wish, and ignore that which
          you do not wish to modify.  You're the boss, and PCustom knows
          it.


          If you have a black-and-white (gray scale, LCD, or gas plasma)
          monitor you should type "PCUSTOM -B" (or -b, /B, /b,\b, or \B).
          This will make PCustom use the gray scale color set for its
          screen displays.


          Selecting Which Versions To Modify:
          -----------------------------------

          The first option concerns which version or versions of ProPak you
          wish to customize.  PCustom looks to see which versions of ProPak
          are present in the directory and allows you to change a single
          version or all three at the same time.  Of course, if you only
          have two versions present, ProPak will simply report that it
          couldn't find one of them, and will help you modify one or both
          of the versions that are present.

          TIP: Earlier we recommended that everyone keep both versions
               available on their hard disks (ProPak and ProSwap).  To take
               this a step further, we recommend that when running PCustom,
               you modify all versions present.  By doing this you ensure



          PCustom:  The Customizing Program                             117



          Falk Data Systems             Programmer's Productivity Pack 2.50


               that colors, Hot Keys, and all the other customizable
               features are consistent between the two versions of ProPak.

          Let's say you have all three (ProPak.EXE, ProPak.CFG, and
          ProSwap.CFG) present on your hard disk and that you instruct
          PCustom to modify all three.  Then, after making the custom
          changes, you decide that you only want to update ProSwap.CFG and
          that you want both ProPak files to remain unchanged.  That
          doesn't present any problem.  PCustom gives you the freedom to
          make these kinds of decisions.  You can change your mind
          virtually at any time!


          How PCustom Works:
          ------------------

          Your choice of which version or versions to modify tells PCustom
          which versions to read from disk in order to determine their
          current settings.  If you decide later to cancel the changes or
          to limit the versions you wish to change, you will have that
          opportunity before the changes are actually written into the .EXE
          or .CFG files.  But, if you initially tell PCustom not to modify
          a particular file you will not be able to write to that file
          later (unless you restart PCustom).

          To understand how this works, it would be helpful to know a
          little about what it is that PCustom actually does to the .EXE
          and .CFG files.  Here's the basic sequence of events that occur
          during customizing:

          PCustom examines the current directory for one or more of the
          ProPak .EXE and .CFG files.  If none are present, then PCustom
          checks the same directory that it was loaded from (if you are
          using DOS 3.0 or higher).  If one of the ProPak files is still
          not found, PCustom will check the directories in the DOS path.

          Once one or more of the ProPak .EXE and .CFG files are found,
          PCustom asks you which file(s) to modify.  Once PCustom has
          received its instructions, it will read the current settings from
          the .EXE and .CFG file or files and then set its internal values
          to match.  At this point PCustom closes the files and works only
          with its internal tables.  This is why you can always change your
          mind about making any of the changes permanent.

          You then use PCustom's pull down menu system to customize any and
          all features.  When you are through making any custom changes you
          desire, select the "Exit PCustom" choice on the Main Menu.  This
          brings up three additional choices.  Choosing "Save Changes" will
          instruct PCustom to install the new values into the .EXE or .CFG
          files that you selected when PCustom first started.  Choosing
          "Select (Alt-Q)" gives you another chance to select the file or


          PCustom:  The Customizing Program                             118



          Falk Data Systems             Programmer's Productivity Pack 2.50


          files to actually modify.  Choosing "Cancel Changes" returns you
          to DOS without altering the .EXE or .CFG files in any way.

          TIP: The reason this choice lists "(Alt-Q)" is because pressing
               Alt-Q is a shortcut to get to this choice from any Menu or
               Submenu in the Menu system.

          Here's an example of how you might use the "Select" option on the
          "Exit PCustom" submenu.  Let's say that you have both versions of
          ProPak loaded on your hard disk (ProPak and ProSwap).  When you
          started PCustom you told it to modify all the files.  But, when
          it comes time to exit from PCustom and actually write the changes
          to the files, you decide that you only want to modify ProSwap and
          leave ProPak alone.  The "Select" option allows you to do this.
          The "Select" option allows you to write the changes to any or all
          of the files that were read when PCustom first started.  Of
          course, if you told PCustom to ignore one of the files when it
          first started, you cannot now decide to modify that file.

          We use the term "permanent" when we talk about making changes to
          an .EXE or .CFG file, but we mean "permanent" in the sense that
          they are permanent until you change them again at some future
          time.  You may customize the ProPak files as often as you wish.


          The PCustom Menus:
          ------------------

          The following information outlines each option on each Menu and
          Submenu available within PCustom.


          The Main Menu:
          --------------

          The Main Menu is the first menu to appear after you choose which
          versions of ProPak to customize.  You will see the following:

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                             Figure 9: PCustom Main Menu

          The Colors option is highlighted.  If you press <Enter> it will
          be selected.  The text at the top tells you what that option is
          for.  You can select any one of the five options by moving the
          highlight bar with the <Arrow> keys.  Each of these options will
          produce its own menu.  Let's look at each one individually.





          PCustom:  The Customizing Program                             119



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The Colors Menu:

          When you select the Colors option you will see the following:

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                           Figure 10: PCustom Colors Menu

          The Colors option is the door to the many options available for
          choosing the colors you prefer for each and every aspect of the
          ProPak package.

          Each version of ProPak has two built-in color sets, one for color
          monitors, and one for monochrome monitors.  If you use a color
          monitor you will be able to change the color attribute set to
          your preferences.  If you use a monochrome monitor you will be
          able to change the monochrome attribute set as desired.  If you
          use a gray scale (black and white) monitor then you will be
          adjusting the color attribute set (not the monochrome attribute
          set) to your preferences.

          If you have two monitors, say one color and the other monochrome,
          and two display adapters (this is common among programmers who
          spend time with a debugger), then both attribute sets will be
          relevant to your needs.  When you pop up ProPak on your color
          monitor it will automatically use the color attribute set.  When
          you pop it up on your monochrome monitor it will automatically
          use the monochrome attribute set.

          These are the four options you can select from this Menu:

               Color Attribute Set - This option restores ProPak to the
               same color attributes that were in use when ProPak was
               shipped.  This is useful when you have made changes and want
               to quickly restore ProPak to a known starting point before
               continuing with the customizing of individual colors, or for
               just returning ProPak to its original color settings
               whenever you desire.

               Monochrome Attribute Set - Selecting this option
               automatically restores the monochrome attribute set to the
               values that were in use when ProPak was originally shipped.
               You may still change individual attributes later if you
               wish.

               Gray Scale Attribute Set - This option sets the values of
               the color attribute set to those values that look best on a
               gray scale monitor.  These "factory set" values will give
               you a good starting place even if you prefer to change some



          PCustom:  The Customizing Program                             120



          Falk Data Systems             Programmer's Productivity Pack 2.50


               of them later.  You can always move down to the "Custom
               Attribute Set" and fine tune any values you wish to change.

               Custom Attribute Set - This option enables you to customize
               the attribute set to best suit your individual tastes.  If
               you are using a color or gray scale monitor, you will be
               adjusting the color attribute set.  If you are using a
               monochrome monitor you will be adjusting the monochrome
               attribute set.

          PCustom is smart enough to know whether you are using a
          monochrome monitor or a color monitor.  PCustom will
          automatically determine which attribute set should be used, no
          additional steps are necessary on your part.  Since gray scale
          monitors look just like color monitors to software, you do need
          to use the "-B" command line parameter to tell PCustom that you
          have a black-and-white monitor.

          Select the Custom Attribute Set if you wish to customize any of
          the colors on your copy of ProPak.  Move the highlight bar down
          until Custom Attribute Set is highlighted and press <Enter>.
          This will bring up the Select Colors Menu.

          When you select the Custom Attribute Set you will see the
          following Menu appear:

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                          Figure 11: Custom Colors Submenu

          This is the Select Colors Menu.  You can set the colors to each
          of the eight options listed on the Menu.  Let's look at each of
          the options.

               ASCII Chart:  This option provides you with the means of
               customizing the colors used to display The ASCII and Color
               Attribute Chart, which is one of the attachments to The
               Programmer's Calculator.  There are eight separate aspects
               of The ASCII Chart that you can customize.  If you have a
               color monitor you can change the colors to any of the color
               combinations listed in the Color Attribute Chart.  If you
               have a monochrome monitor you will be able to customize
               these features to any of the monochrome attributes listed in
               the Color Attribute Chart.  ProPak will automatically offer
               you only those options which are possible on your monitor.







          PCustom:  The Customizing Program                             121



          Falk Data Systems             Programmer's Productivity Pack 2.50


               These are the eight aspects of The ASCII Chart that you can
               customize.

                    Outline Color (Frame) - As the name implies, this
                    option enables you to change the color of the outline
                    or frame around The ASCII Chart.

                    Title Color (top of chart) - This option changes the
                    color of the title of the chart.

                    Column Heading Color - This option changes the color of
                    the text appearing at the top of each column.

                    ASCII Code Color (Dec & Hex) - This option changes the
                    color of the decimal and hexadecimal values that appear
                    to the left of the ASCII character.

                    ASCII Character Color - This option changes the color
                    of the ASCII character itself, in the left hand section
                    of the chart.

                    Attribute Description Color - This option changes the
                    color of the words that describe the color that each
                    attribute (ASCII code) will produce when used as an
                    attribute byte.

                    Large Character Color - This option enables you to
                    change the color of the enlarged ASCII characters that
                    display in the right hand section of the chart.

                    Large Code Color - Selecting this option enables you to
                    change the color of the decimal value listed next to
                    each of the enlarged characters in the right hand
                    section of the chart.

               Calculator:  This option opens the door for you to customize
               the appearance of the Calculator.  This option leads to a
               submenu which makes available three categories of color
               attributes that go into making up the overall appearance of
               the Calculator.

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                          Figure 12: Calculator Sub-Submenu

               Let's look at the three options on the Submenu.

                    Actual Calculator:  This option enables you to change
                    each individual color involved in the actual Calculator
                    display.  The different portions of the display are:


          PCustom:  The Customizing Program                             122



          Falk Data Systems             Programmer's Productivity Pack 2.50


                         Current Format Highlighting - When you switch from
                         one numeric format to another, Decimal to
                         Hexadecimal, etc., you will notice that the format
                         title and the pending operation (if any) will be
                         updated to appear highlighted.  This option allows
                         you to customize the color of this highlighting.

                         Signed or Unsigned Title - This option controls
                         the color used to display the sign mode at the top
                         center of the Calculator display.

                         High Word, High Nibble - The Programmer's
                         Calculator is specially designed to make it easy
                         to separate the various pieces of information
                         present when handling large values.  This is
                         tremendously useful when keeping track of 32 ones
                         and zeros in the Binary Box.  This option, and the
                         next three that go with it, allows you to make a
                         distinct color difference between the logical
                         divisions of the 32 bit binary values.  This
                         option changes the color of the highest four bits
                         of each value.

                         High Word, Low Nibble - This option changes the
                         color of the second to the highest four bits of
                         each value.

                         Low Word, High Nibble - This option changes the
                         color of the second to the lowest four bits of
                         each value.

                         Low Word, Low Nibble - This option changes the
                         color of the lowest four bits of each value.

                         Normal Values Color - This option changes the
                         appearance of the values in the Decimal and Octal
                         Boxes.

                         Saved Values Color - This option changes the color
                         of the four saved values that appear in the Save
                         Window.

                         Information Color - This option changes the color
                         of the various pieces of identifying information
                         present in the Calculator display.

                         Clock and Date Color - This option changes the
                         color of the date and time displayed in the
                         information window of the Calculator.




          PCustom:  The Customizing Program                             123



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    Calculator Menu:  This option enables you to change
                    each individual color involved in the display of the
                    Calculator's Menu.  This option is best experimented
                    with to see the effect that each color change has on
                    the overall appearance of the Calculator.

                         Information Color - This option changes the colors
                         of the various pieces of information displayed in
                         the Calculator's Menu.

                         Description Color - This option changes the color
                         of the description of each command available
                         within the Calculator.

                         Function Keys Color - This choice changes the
                         color of the normal function key options.

                         Shifted Function Keys - This choice changes the
                         color of the shifted function key options.

                    Save/Insert Pick Window:  This option enables you to
                    change each individual color involved in the display of
                    the "pick window" which is used to select which value
                    to save or insert when more than one is available.

                         Normal Choices Color - This is the color used to
                         display values that may be chosen.

                         Outline Color - This option controls the color of
                         the frame around the pick window.

                         Heading Color - This option controls the color of
                         the title of the pick window.

                         Selected Highlight - This option controls the
                         color of the pick bar, the highlighted bar that
                         you move up and down to select an option.

                         Empty Color - This is the color used to display
                         empty choices, choices with a value of zero.

                         Empty Selected Color - This is the color used when
                         an empty choice (one with a value of zero) is
                         selected.

               Error Messages:  This option enables you to select the
               colors you prefer for error messages.

                    Outline Color - This is the color of the outline around
                    the error message window.



          PCustom:  The Customizing Program                             124



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    Heading Color - This is the color of the title of the
                    error message window.

                    Normal Text Color - Error messages appear in two
                    different colors in order to highlight certain
                    information.  This is the usual color for the text of
                    an error message.

                    Alternate Text Color - This is the color used to
                    highlight or bring attention to some of the information
                    displayed in an error message.

               Keystroke Reference Center:  This option leads to the
               individual choices available for customizing the appearance
               of The Keystroke Reference Center display.

                    Outline - This option changes the color of the outline
                    or frame around The Keystroke Reference Center.

                    Information - This option enables you to customize the
                    color of the various pieces of identifying information
                    present in The Keystroke Reference Center display.

                    Time & Date - This option enables you to customize the
                    color used to display the current time and date.

                    Instructions - This option enables you to change the
                    color of the instructions that appear on the screen in
                    The Keystroke Reference Center display.

                    Status Byte High - The BIOS keyboard status bytes are
                    displayed in two alternating colors to make it easier
                    to identify each bit individually.  Selecting this
                    option enables you to change one of these colors.

                    Status Byte Low - This option enables you to change the
                    alternate color used to display the BIOS keyboard
                    status bytes.

                    Key Code Information - This option controls the color
                    of the information appearing within the code boxes of
                    the display.

                    Key Code Row Heading - This option controls the color
                    of the words "Dec" and "Hex" in the codes boxes.

                    Note Window Outline - This option controls the outline
                    of the Portability Note window.

                    Note Window Text - This option controls the text in the
                    Portability Note window.


          PCustom:  The Customizing Program                             125



          Falk Data Systems             Programmer's Productivity Pack 2.50


               Control Center Menu:  This option leads to the individual
               choices available for customizing the appearance of The
               Control Center and its various submenus.

                    Outline Color - This option controls the color of the
                    frame around The Control Center.

                    Heading (Title) Colors - This option controls the color
                    of The Control Center's title.

                    Normal Choice Colors - This option controls the color
                    of the available choices on The Control Center Menu.

                    Not Available Choice - This option controls the color
                    of the currently unavailable choices on The Control
                    Center Menu.

                    Normal Selected Color - This option controls the color
                    of the highlight bar on The Control Center Menu.

                    Not Available Selected - This option controls the color
                    of the highlight bar when it is positioned over an
                    option that is not currently available.

               Normal Messages:  This option leads to the individual
               choices available for customizing the appearance of the
               Message Window and the text it contains.

                    Outline - This option controls the color of the frame
                    around normal Message Windows.

                    Heading - This option controls the color of the heading
                    of normal Message Windows.

                    Normal Message Text - This option controls the color of
                    text displayed in normal Message Windows.

                    Highlighted Message Text - This option controls the
                    color of special information displayed in normal
                    Message Windows.

                    Alternate Message Text - This option controls the color
                    of unavailable options in Message Windows that also
                    present choices.

                    Normal Selected Text - This option controls the color
                    of the highlight bar in Message Windows that also
                    present choices.





          PCustom:  The Customizing Program                             126



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    Alternate Selected Text - This option controls the
                    color of the highlight bar when unavailable options are
                    selected.

               Screen Blank (Clock):  This option enables you to change the
               color used to display the on screen clock during screen
               blanking and hard disk parking.

               Screen Grabber Box:  This option enables you to customize
               the color of the Screen Grabber's "Grab Box."

               Swapping In/Out Message:  This option enables you to
               customize the color of the message that appears on the
               bottom line of the screen while ProSwap is swapping into or
               out of memory.


          The Hot Keys Menu:

          The second selection on the Main Menu is to customize the Hot
          Keys used by ProPak.  When you select it you will see the
          following Menu.

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                        Figure 13: Customize Hot Keys Submenu

          This Menu enables you to change each of the five Hot Keys used by
          ProPak.

          For each option you will be presented with a list of eight of the
          most useful Hot Keys, plus an option called "Other" through which
          you may select key combinations that are not shown in the initial
          list.

          The Hot Keys appearing in the list are key combinations like
          <LeftShift><Ctrl> or <Ctrl><RightShift> which cannot be entered
          interactively through the "Other" option.  If you were to attempt
          to choose this type of key combination through the "Other"
          option, PCustom would not have any way of knowing if you wanted
          <Ctrl><Alt> or if you intended to follow it up with another
          letter like <Ctrl><Alt><P>.  Those two modifier key combinations
          don't normally produce a scan code.  You can prove this by trying
          them on The Keystroke Reference Center.  PCustom presents a list
          of these types of keys and accepts what you pick from that list.

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                             Figure 14: Hot Keys Submenu


          PCustom:  The Customizing Program                             127



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The same eight Hot Keys are listed for each of the five tools or
          functions that use Hot Keys.  Any key which is dim is already in
          use.  You cannot select the same Hot Key for two functions.  The
          five tools or functions are the following:

               Calculator and Attachments - This option changes the Hot Key
               used to pop up The Programmer's Calculator.  Because the
               current attachment might be The ASCII Chart or The Keystroke
               Reference Center rather than the Calculator, this option
               effectively controls the Hot Key used to pop up any of the
               Calculator attachments.

               Control Center Menu - This option enables you to select the
               Hot Key used to pop up The Control Center.

               Screen Grabber - This option controls the Hot Key that pops
               up the Screen Grabber's Grab Box.

               Start Recording - This option enables you to select the Hot
               Key used to turn on or start the recording of keystrokes.

               Stop Recording - This option enables you to select the Hot
               Key used to turn off or stop the recording of keystrokes.

               Pop-Up DOS Shell - This option enables you to select the Hot
               Key used to activate the Pop-Up DOS Shell capability in
               ProSwap.

          Note:  As mentioned in the TIP on page 97, you should avoid
          <Alt><LeftShift> and <Ctrl><LeftShift> as hot keys.


          The Sound Effects Menu:

          The third choice on the Main Menu allows you to customize the
          sound effects produced by ProPak.  Selecting this option brings
          up the Sound Effects Menu.

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                          Figure 15: Sound Effects Submenu

          This Menu provides you with a simple method of customizing the
          various sound effects used within ProPak.  Alter each effect
          until it sounds the way you prefer on your particular machine.

               Beep Sound - The beep sound is the sound ProPak makes when
               you press a key it doesn't understand, or when something
               occurs that you should know about.



          PCustom:  The Customizing Program                             128



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    You will be able to set the frequency or pitch of the
                    tone and its duration.

               Click Sound - The click sound is the sound ProPak makes when
               you switch formats or toggle the sign in The Programmer's
               Calculator.

                    You will be able to set the frequency or pitch of the
                    tone and its duration.

               Error Sound - The error sound is the sound ProPak makes when
               an error occurs or when ProPak is unable to carry out your
               instructions.  This sound is produced differently than the
               other two sounds.

                    The error sound is made by sounding the beep, pausing,
                    sounding the click, pausing, and then repeating this a
                    specified number of times.

                    You can easily change the duration of the pause and the
                    number of times the sounds are repeated in order to
                    obtain the error effect.


          The Advanced Options Menu:

          The fourth option on the Main Menu is Advanced Options.  This is
          perhaps the most frequently chosen Main Menu option.  This option
          leads to several submenus that enable you to change many features
          that do not fall under the other Main Menu choices.  This could
          almost be called the "Miscellaneous Options" choice on the Main
          Menu.  Selecting this option will bring up the Advanced Options
          Menu.

          When this option is selected you will see the following Menu
          appear:

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                         Figure 16: Advanced Options Submenu

          The following information explains each of the four options and
          what features it allows you to customize.

               Calculator:  This option brings up a Submenu that allows you
               to change the default mode and format for the Calculator
               when it is first popped up.





          PCustom:  The Customizing Program                             129



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    Start up Numeric Mode:  This option enables you to
                    determine whether The Programmer's Calculator initially
                    starts up in Signed or Unsigned mode.

                    Start up Numeric Format:  This option enables you to
                    select the numeric format (Decimal, Hexadecimal,
                    Binary, or Octal) The Programmer's Calculator will be
                    in when it is first started.

               cApture:  This option enables you to make permanent changes
               to the Screen Capture facility.

                    The "A" is capitalized to indicate that this feature
                    can be selected by pressing the <A> key.

               Character Filter Method:  This option enables you to select
               the filter method ProPak will use when capturing screen
               images to disk files.  Filtering simply means that ProPak
               will examine each character to see if it is one of the
               characters that needs to be replaced with another character.
               Why is this important?  Some characters are used as control
               codes for your printer, end-of-file marks for DOS, etc.  By
               filtering out these characters and replacing them with a dot
               ("."), an asterisk ("*") or whatever, the need to edit your
               screen image files before printing them, will disappear.

                    There are three levels of filtering available.

                    1)  No filtering at all.  When this level is chosen, no
                    filtering takes place.  Each character will be copied
                    exactly as it appears on the screen.

                    2)  Minimal filtering (also called Filter for Screen).
                    The following ASCII characters are filtered in this
                    level: 0 (Null), 10 (Line Feed), 12 (Form Feed), 13
                    (Carriage Return), 26 (SUB - often used as an end-of-
                    file marker), and 127 (DEL - looks like Null to many
                    printers).

                    3)  The third level of filtering, Filter for Printer,
                    filters out characters with ASCII codes from 0 to 31
                    (the control codes) as well as 127 (looks like null to
                    many printers).  This is the recommended option, and is
                    the one set when ProPak is shipped.

               Replacement Character:  The replacement character is the
               character that replaces characters that have been filtered
               out.  This is done to prevent the alignment of the screen
               image from changing when a character is filtered out.




          PCustom:  The Customizing Program                             130



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    The replacement character is chosen by simply typing in
                    the character you wish to use.  The normal replacement
                    character is a dot, but you can change that to anything
                    you wish.

                    If, for some reason, you wish to use an extended ASCII
                    character (one with a code greater than 127) as the
                    replacement character, you should enter it so that
                    PCustom can recognize it.

                    You may be accustomed to holding down the <Alt> key
                    while you enter an ASCII code on the numeric keypad, in
                    order to obtain a character from the extended ASCII
                    character set.  Since ProPak and PCustom both make use
                    of keystrokes like <Alt><Up> Arrow, the <Alt> number
                    keypad trick will not work.  To get around this simply
                    hold down <Alt> and a shift key and then enter the
                    ASCII code on the numeric keypad.  For more complete
                    information refer to the explanation on page 82.

               Screen Capture File Extension:  This enables you to change
               the extension ProPak uses for screen image files.  When
               ProPak captures a screen image to be written to disk, it
               prompts you for a file name, and adds a default extension to
               that file name.  By using this option you can change the
               .SCN extension with which ProPak was shipped.

               Grabber:  This option enables you to change the default
               size, location, and color of the Screen Grabber's Grab Box.

                    Color of Grab Box:  This is the one option that can be
                    changed from two different places in PCustom's Menu
                    system.  You may change the color from within the
                    "Customize Colors" Submenu, or, for the sake of
                    convenience, you can change the color of the Grab Box
                    from the same Submenu you use to change the size and
                    location of the Grab Box.

                    Size and Location of Grab Box:  This option enables you
                    to select how big the Grab Box should be when it pops
                    up, as well as where it should be located on the screen
                    when it pops up.

                    To change the size and location, use exactly the same
                    keys you would use if you were actually grabbing text
                    off the screen.  The difference here is that instead of
                    grabbing text off of the screen, PCustom remembers the
                    size and location of the Grab Box when you exit, and
                    instructs ProPak to use those values as the default
                    whenever the Screen Grabber is activated.



          PCustom:  The Customizing Program                             131



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    Pressing <Enter> saves the changes you have made.
                    Pressing <Esc> cancels the changes.

               Swap Control:  This option opens up a sub-menu with several
               options which control how ProSwap handles the swapping
               operation.

                    First Swap Path:  When ProSwap swaps to disk it swaps
                    into files that are marked with the "hidden" attribute.
                    This option controls where the first swap file will be
                    placed.  PCustom will verify your input, so be sure to
                    specify only valid (existing) drives and directories.
                    Floppy disks are not acceptable for swapping purposes,
                    but Bernoulli drives are fine.  This is the same path
                    that will be used by the pop-up DOS shell for it's swap
                    file as well.  Do not specify a filename, only a
                    pathname.

                    Second Swap Path:  This option is just like the
                    previous option except it controls the path for the
                    second swap file.  If you use the "-M" command line
                    option, or choose "Sacrifice speed for space" under the
                    "Swap Tuning" option (below) then the second swap file
                    will not be used at all.

                    Pop-Up DOS Shell:  This determines whether the pop-up
                    DOS shell capabilities will be available when ProSwap
                    is resident.  The only time you will not want the pop-
                    up DOS shell enabled is when you are using a DOS
                    version earlier than 3.0, or when you are trying to
                    avoid conflicts with another program.

                    Max Size of DOS Shell:  The size of the DOS shell can
                    be controlled to a certain extent.  The smallest it can
                    be is about 124K bytes.  The largest it can be is the
                    amount of memory that was available when ProSwap was
                    loaded (less about 20K).  Why would you want to change
                    the size of the DOS shell?  The larger the shell, the
                    longer it will take to swap in and out, and the more
                    disk space or EMS/XMS memory it will require.  By
                    decreasing the maximum size of the DOS shell you will
                    conserve resources and speed up the swapping process.
                    The default is "All Available Memory".

                    EMS Swapping:  This option controls whether EMS
                    (Expanded) memory may be used for swapping purposes.
                    It may be enabled or disabled.  The default is
                    "Enabled".





          PCustom:  The Customizing Program                             132



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    XMS Swapping:  This option controls whether XMS
                    (Extended) memory may be used for swapping purposes.
                    It may be enabled or disabled.  The default is
                    "Enabled".

                    Swap Message (EMS/XMS):  This controls the display of
                    the "Swapping In/Out" message that appears on the
                    bottom line of the screen during the swapping
                    operation.  Generally the message should be displayed.
                    If, for some reason, you don't want this message,
                    simply turn it off here.

                    Prefer EMS over XMS:  When both EMS and XMS memory
                    swapping are enabled, this option controls which one is
                    tried first.  ProSwap will try one, if there's not
                    enough memory available it will try the other.  This
                    option controls whether EMS is tried before XMS memory,
                    or vice versa.

                    Disk Swapping:  This option controls whether swapping
                    to disk is allowed.  Normally ProSwap will swap to disk
                    only when absolutely necessary (when there is
                    insufficient EMS or XMS memory, or when EMS/XMS
                    swapping is disabled).  With this option you can
                    instruct ProSwap to abort during loading if there is
                    not enough EMS or XMS memory - in other words, never
                    use disk swapping.

                    Swap Tuning (XMS/Disk only):  When swapping to disk or
                    XMS memory, ProSwap normally uses two files or two
                    memory blocks.  This takes up more disk space or more
                    XMS memory, but it results in a very fast swapping
                    operation.  If you prefer conserving disk space or XMS
                    memory, at the expense of speed, this option makes it
                    easy.

               Registered To:  We keep track of registered versions by
               serial number, but most people don't like being just a
               number.  This option allows registered users to record their
               name or company name so that ProPak and ProSwap will display
               "Registered to <your name>" when they start.  This lets you
               personalize ProPak and ProSwap.

               Rename ProPak:  There are several important issues involved
               if you want to change the name of the PROPAK.EXE file.
               First, ProPak uses overlays so it must be able to find
               itself on disk at all times.  Second, PCustom must be able
               to locate PROPAK.EXE in order to perform some
               customizations.  This option lets you safely rename
               PROPAK.EXE.  As long as you rename it using this option,
               PCustom will be able to find it in the future, and ProPak


          PCustom:  The Customizing Program                             133



          Falk Data Systems             Programmer's Productivity Pack 2.50


               will know what file to look for to load overlay files.  The
               main restriction here is that the new name cannot be the
               name of an existing file, it must be a "new" name.


               Miscellaneous:  This option takes you a step deeper into
               ProPak's inner workings.  It enables you to specify how
               ProPak is to use memory, handle the cursor, handle disk
               parking, handle Keystroke Recording and Playback, etc.

                    Key Recording FileName Extension:  By default ProPak
                    assigns an extension of .KEY to the names of files
                    containing Keystroke Recordings.  This option enables
                    you to change that extension if you desire.

                    Read Key Recordings from File:  This option controls
                    how Keystroke Recordings will be read from a file.
                    With this option you can instruct ProPak to replace any
                    currently defined Keystroke Recordings with the ones
                    being read from the file, or to merge the ones read
                    from the file with the currently defined Keystroke
                    Recordings.

                    This option allows you to control how much memory
                    ProPak sets aside for Keystroke Recordings.  You may
                    specify any value from 1K (1,024) bytes to 98K
                    (100,352) bytes.  The default is 2K (2,048) bytes.

                    Keystroke Playback Delay:  This option enables you to
                    set a permanent keystroke Playback delay value.  The
                    Playback delay value is the number of milliseconds
                    ProPak should pause between playing back each character
                    in a Keystroke Recording.  This may be any value from 0
                    to 100.  Generally a value of 0 will suffice.

                    Memory Reserved for Recordings:  ProPak is capable of
                    having up to 100 Keystroke Recordings active at any
                    given time, and up to 1,000 keystrokes in each
                    recording.  In order to actually define that many
                    recordings you must have set aside enough memory for
                    the recordings to be stored in memory.  If you use a
                    lot of Keystroke Recordings you will want to set aside
                    more memory for them.  If, on the other hand, you use
                    only a few Keystroke Recordings at a time, you will
                    want to reserve less memory for these recordings thus
                    lowering ProPak's memory requirements.

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                        Figure 17: Miscellaneous Sub-Submenu


          PCustom:  The Customizing Program                             134



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    DOS Print, File Pick Window:  If you have used the file
                    "pick window" which allows you to use a "point and
                    shoot" method of choosing files to be submitted to the
                    DOS background PRINT facility, then you have noticed
                    that it always starts with the current directory.  You
                    can change it to start with the root directory if you
                    prefer.  By selecting the root directory as a starting
                    point, you could easily point and shoot your way into
                    any subdirectory.  This simplifies matters if you often
                    need to print files that are not stored in the current
                    directory.

                    Screen Blanking Options:  When ProPak blanks your
                    screen and displays a moving clock, it also parks your
                    hard disk.  If you have two hard disks, ProPak will
                    park both of them.  Parking simply means positioning
                    the read/write heads over the last cylinder on the hard
                    disk.  This is simply a preventive measure or safety
                    feature.  If you prefer, you may instruct ProPak to NOT
                    park the hard disk or disks when blanking the screen.
                    This submenu option enables you to do that if you
                    desire.

                    Use EMS Memory for overlays:  Normally ProPak will
                    place the overlay file into EMS memory when it starts.
                    This has two advantages.  First, transferring from EMS
                    memory to RAM memory is much faster than transferring
                    from disk to RAM, therefore, the size of the overlay
                    buffer can be smaller.  This means that not only will
                    ProPak perform better, it will do so using less memory
                    than if EMS memory were not used.  This technique also
                    saves one file handle because ProPak will not need to
                    use the overlay file once it is loaded.

                         If you do not have EMS memory, or not enough EMS
                         memory is available for ProPak to use, then ProPak
                         will automatically leave the overlay file on disk
                         and use it from there.

                         This covers about 99 percent of the situations
                         that may arise.  However, if you are a developer
                         working on a project and testing something using
                         EMS memory, there will be times when, even though
                         you have plenty of EMS memory available, you will
                         not want ProPak to use it.  This option enables
                         you to instruct any of the versions of ProPak to
                         not use EMS memory even if it is available.

                    Return to application with:  This option is really only
                    of use to those who have EGA cards.  When ProPak opens
                    up a window it records the previous cursor size and


          PCustom:  The Customizing Program                             135



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    position so that the cursor can later be restored
                    exactly as it was when ProPak was popped up.  Sometimes
                    the cursor size will not be restored properly due to a
                    bug in the EGA's ROM BIOS extensions.  To get around
                    this problem, this option enables you to instruct
                    ProPak to always restore the common two line cursor (a
                    cursor with the bottom two scan lines blinking).  Most
                    user's will never need this option.  You'll know if you
                    are one of those who needs to use it.

                    Overlay Buffer Size Supplement:  This option is
                    intended to improve the performance of all three
                    versions of ProPak on systems that do not have EMS
                    memory.  This option is highly recommended for users
                    who have floppy disk only systems!

                         Choosing this option enables you to increase the
                         size of the overlay buffer in all three versions
                         of ProPak.  Even hard disk users can greatly
                         improve ProPak's performance by increasing the
                         size of the overlay buffer.  Of course, this
                         option will have no effect if ProPak is using EMS
                         memory.

                         The size of the overlay buffer supplement is
                         increased or decreased in 3K byte increments.  The
                         reason for this is because 3K bytes is the
                         smallest change that will significantly affect
                         ProPak's performance.  The minimum size for the
                         overlay buffer supplement is 0 bytes.  This is
                         automatic when EMS memory is in use.  The maximum
                         size for the overlay buffer supplement is 12K
                         (12,288) bytes.

                         For those who do not have EMS memory, the actual
                         size you will need can be determined by the speed
                         of your hard disk and your particular preference.
                         The higher the value the more memory ProPak will
                         require, but, at the same time, the better will be
                         its performance.  Floppy disk only users should
                         set the overlay buffer supplement to the maximum
                         value (12K bytes).  Those with fast hard disks
                         will require a smaller value while those with
                         slower hard disks should consider a larger value.

                         If you have EMS memory and ProPak is allowed to
                         use it, then the value chosen here will not
                         matter.  ProPak will automatically set a small
                         size for the overlay buffer.




          PCustom:  The Customizing Program                             136



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    Microsoft Quick Environment Fix:  This option is only
                    important to people who use the newer versions of the
                    Microsoft Quick Environments - such as QuickBasic 4.5,
                    Quick C 2.0, etc.  This option will enable ProPak to
                    safely pop-up over these environments.  Also, when
                    operating in non-swapping mode (the "-N" or "-T"
                    command line option), ProSwap will normally not work
                    with the Quick Environments.  This option tells ProSwap
                    to deal with this special case when it is running in
                    non-swapping mode.


          The Exit PCustom Menu:

          The fifth option on the Main Menu is Exit PCustom.  This will
          take you back to the DOS prompt.  You can also select whether to
          save or cancel the changes you have made, or whether to limit the
          files which are customized.  If you select this option the Exit
          PCustom Menu will appear.

          When this option is selected you will see the following Menu:

               (Due to space limitations and printer incompatibilities,
                this figure appears only in the printed User's Guide.)

                           Figure 18: Exit PCustom Submenu

               Save Changes:  This option tells PCustom to write the
               changes you have specified into the files themselves.  The
               files you instructed PCustom to alter, when you first
               started PCustom, will automatically be updated when you
               select this option.

                    The changes you have made are "permanent", meaning they
                    are permanent until you change them again using
                    PCustom.

               Select (Alt-Q):  This option allows you to change your mind
               about updating any of the files you chose when PCustom was
               first started.  When you choose "Select" PCustom will again
               show you the menu where you can choose to modify any one of
               the three files or modify all versions present.  If you had
               originally chosen to modify all versions present, you can
               now limit your changes to any one of the versions by
               selecting it with the highlight bar and pressing <Enter>.
               You cannot choose to modify a version that you originally
               did not choose to modify.  PCustom only read the files which
               you selected at the beginning.





          PCustom:  The Customizing Program                             137



          Falk Data Systems             Programmer's Productivity Pack 2.50


                    If you decide not to modify any of the versions, simply
                    press <Esc> at this point and you will be back at the
                    DOS prompt without having altered a thing.

                    The reason "Alt-Q" appears as part of the choice is
                    that it is a "short cut key" which will quickly take
                    you to this point from almost any other point in the
                    Menu system.

               Cancel Changes:  This option enables you to return to DOS
               without altering the files in any way.  This option cancels
               any changes you have made and exits from PCustom.









































          PCustom:  The Customizing Program                             138



          Falk Data Systems             Programmer's Productivity Pack 2.50


                            -----------------------------
                              Miscellaneous Information
                            -----------------------------


          EXE Compression Utilities:
          ==========================

          Many people are now starting to use a free utility called "LZE"
          to compress executable files while still allowing them to run
          normally.  LZE is a wonderfully useful tool, but it does have a
          few drawbacks.

          The main reason PCustom changed from modifying the .EXE files
          directly, to using configuration files, was to allow us to
          compress the programs using LZE or a similar utility.
          Unfortunately, we've encountered some problems.

          There have been numerous reports of LZE-compressed programs
          corrupting DESQview memory blocks when they load.  Since many of
          our users operate in the DESQview environment it just isn't safe
          for us to compress the programs.

          If you do not use DESQview, and wish to compress the programs
          using your copy of LZE (if you have a copy), then here is the
          information you need:

               PCustom may be compressed with LZE without causing any
               difficulties.

               ProPak cannot be safely compressed with LZE because of the
               overlays built onto the tail-end of the ProPak.EXE file.

               ProSwap cannot be safely compressed with LZE because of an
               undetermined problem that affects the pop-up DOS shell
               capability.

          We are currently looking into alternatives for compressing the
          executable files.  There are several utilities available or under
          development which may do the trick.













          Miscellaneous Information                                     139



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Change History:
          ===============


          Version 2.50 (August 12, 1990):
          -------------------------------

          Added ProSwap - the new swapping TSR with additional features
          such as the ability to pop up over an application, swap it out,
          and shell to DOS with as much free memory as possible for the DOS
          shell.

          Deleted ProPakM - it's capabilities were incorporated into
          ProSwap.

          Deleted ProPakS - it's capabilities were incorporated into
          ProPak.

          ProPak's overlays were moved from the separate file (ProPak.OVR)
          onto the end of the executable file (ProPak.EXE).

          The pop-up notes for the Keystroke Reference Center were
          rewritten using assembly language table look-ups for speed.

          The customizing program (PCustom) received major modifications to
          handle the changes and new capabilities added to ProPak and
          ProSwap.

          The techniques used to customize ProPak (and ProSwap) were
          changed.  Rather than customizing the .EXE file, PCustom now uses
          configuration files (ProPak.CFG and ProSwap.CFG) for controlling
          the customizable options in ProPak and ProSwap.

          Provisions were added to enable you to safely rename the ProPak
          and ProSwap executable files.

          Since most 3270 emulators (as well as Windows 3.0) use <Alt><Esc>
          as a standard (non-modifiable) hot key, <Alt><Esc> is now ignored
          within the calculator.  This eliminates the problem of exiting
          from the pop-up when pressing <Alt><Esc>.  <Alt><Esc> works
          exactly the same from within the ASCII Chart and Keystroke
          Reference Center as it did in previous versions.

          Many other subtle internal changes were made for version 2.50.
          This version represents substantial changes over previous
          versions.







          Miscellaneous Information                                     140



          Falk Data Systems             Programmer's Productivity Pack 2.50


          Version 2.02 (October 16, 1989):
          --------------------------------

              o  The memory resident versions (ProPak and ProPakS) were
                 modified to work around problems in the new Microsoft
                 Quick environments such as QuickBasic 4.5.

              o  Added a DESQview Program Information File (PP-PIF.DVP) so
                 those of you using ProPakM can plug it right in.

              o  None of the changes affect the documentation.  The ProPak
                 User's Guide is still current.


          NOTE:  Version 2.02 was developed to work around a problem in the
          Microsoft Quick environment.  This problem appeared when
          attempting to pop up ProPak or ProPakS over the Microsoft
          QuickBasic editor, version 4.5.  This would always result in the
          system hanging and would require the user to turn the computer
          off and then on in order to regain control of the system.

          Further checking revealed that this behavior occurs with most
          "well behaved" memory resident programs, including those which
          conform to the TesSeRact standards for memory resident programs.

          The problem is caused by a bug in the Microsoft Quick Editor.
          The editor contains an ill-behaved Interrupt 16h handler.  The
          editor appears to have been designed on the assumption that it
          would have sole and exclusive control of the computer on which it
          runs.

          Microsoft admits that they have had many complaints regarding the
          behavior of memory resident programs used in conjunction with the
          Quick environments.  Microsoft admits that they are aware of the
          problem and that they know how to fix it.  However, Microsoft has
          stated that they will NOT correct the problem!  Microsoft's
          "official policy" is that because "OS/2" and "Windows" are
          available as alternatives to DOS, there is no longer any reason
          to use memory resident programs.  If a user needs the
          capabilities provided by a memory resident program then that user
          needs to purchase either Windows or OS/2.

          In order to work around Microsoft's poorly written Interrupt 16h
          handler, ProPak and ProPakS now use a technique similar to that
          used by Borland's original SideKick.  When ProPak or ProPakS is
          popped up it grabs back the Interrupt 16h handler.  When you
          return to the application over which ProPak or ProPakS was popped
          the previous Interrupt 16h handler is restored.





          Miscellaneous Information                                     141



          Falk Data Systems             Programmer's Productivity Pack 2.50


          The original version of SideKick also grabbed back the Interrupt
          16h handler, however it did so on a permanent basis.  ProPak and
          ProPakS only grab the Interrupt 16h handler while they are
          activated (popped up) and restore it when they are waiting in the
          background.


          Version 2.01 (May 21, 1989):
          ----------------------------

              o  Corrected a problem on some "almost-AT-compatibles."

              o  A minor change was made relating to the way stack
                 switching is performed.

              o  A minor bug affecting users of IBM DOS 4.00 was also
                 corrected.

              o  None of the changes affect the documentation.  The ProPak
                 User's Guide is still current.


          Earlier versions:
          -----------------

          Earlier versions were not widely distributed.  Version 1.0 even
          had a different name (PrgCalc: The Programmer's Calculator).


























          Miscellaneous Information                                     142



          Appendix A                    Programmer's Productivity Pack 2.50


                                     ------------
                                      Appendix A
                                     ------------


          The Bits and the Bytes:
          =======================

          This appendix provides basic information concerning bits and bit
          level operations.  The primary source for this brief overview was
          Charles Petzold's "PC Tutor" column in the August, 1987, issue of
          "PC Magazine" (Volume 6, Number 14).

          TIP: If you are new to hexadecimal and binary arithmetic, we
               recommend that you find a copy of Jeff Duntemann's excellent
               book "Assembly Language from Square One", published by
               Scott, Foresman and Company.  Chapter One of this book
               contains the clearest and most entertaining introduction to
               the binary and hexadecimal numbering systems that we have
               ever seen.TIP

          For the sake of simplicity, we'll discuss the details of bits
          from the standpoint of 16 bit systems.  16 bit systems include
          IBM PC's, XT's, AT's, and some PS/2's.  For this discussion, when
          we say "16 bit system" we are referring to the microprocessor
          itself, not necessarily all the hardware to which it is
          connected.  If you work with 32 bit systems like the newer 80386
          machines, they are just twice the size, in bits, of 16 bit
          systems.

          On the most basic level, your computer works with bits.  A bit is
          a concrete, real value in your computer.  A bit is simply a state
          - on/off, yes/no, true/false, or 1/0, depending upon how you like
          to think of them.

          Handling bits one at a time would be a very complicated and
          inefficient process for us humans, so we deal with bits in
          groups.  The most common group of bits is called a "byte," which
          is simply a group made up of 8 individual bits.

          Bits are usually represented using the numbers one (1) and zero
          (0).  In fact, these are the only numbers that a single bit can
          represent.  Numbers consisting solely of 1's and 0's are called
          binary numbers, because only two digits make up the entire number
          system.  We are more accustomed to the Decimal system in which 10
          digits (0-9) make up the entire number system.

          Performing mathematical operations on binary numbers is much like
          performing mathematical operations on decimal numbers, except
          only 2 digits (0 and 1) are used.



          Bits and Bytes; A Brief Tutorial                              143



          Appendix A                    Programmer's Productivity Pack 2.50


          For example, in Decimal format, "1 + 1 = 2", but binary numbers
          don't have a digit like "2", so we carry the 1, just like we do
          with decimal numbers.  In decimal numbers when you add "9 + 1"
          there is no digit to represent a value higher than 9, so we carry
          one place as follows:

               Decimal:   9
                        + 1
                        ----
                         10

               Binary is the same:   1
                                   + 1
                                   ----
                                    10

          With decimal numbers, each time a digit is moved left one place,
          the number increases by a power of 10.  If you take the decimal
          value 10 and move it left one place you get the number 100 which
          is 10 times greater than the value with which you started.

          Binary numbers work like this too.  Each time you move a binary
          value left one place the value increases by a power of two.

          The following chart shows a byte size value (8 bits) and the
          result each time a digit is shifted left one place, this should
          give you a better picture of how binary numbers work:


               Binary      Decimal
                value      equivalent
               --------    ----------
               00000000         0
               00000001         1
               00000010         2
               00000100         4
               00001000         8
               00010000        16
               00100000        32
               01000000        64
               10000000       128


          ProPak's Calculator is an excellent tool to help see this first
          hand.  ProPak's Calculator enables you to shift values left and
          right, rotate them left and right, and perform a myriad of
          different operations, all the while showing you the individual
          bit settings.  Watching the bit settings in the binary values
          will show you exactly what is happening as you perform each
          operation.



          Bits and Bytes; A Brief Tutorial                              144



          Appendix A                    Programmer's Productivity Pack 2.50


          The following chart shows the binary values corresponding to the
          decimal numbers from 1 to 10, this should give you a good idea of
          how binary numbers are used to add, subtract, and do other
          mathematical operations:


               Binary    Decimal
               value     equivalent
               ------    ----------

               0001           1
               0010           2
               0011           3
               0100           4
               0101           5
               0110           6
               0111           7
               1000           8
               1001           9
               1010          10




          As you can see:

               in Binary:               1
                                      + 1
                                      ---
                                       10

               then adding another 1:  10
                                      + 1
                                      ---
                                       11

               and another:            11
                                      + 1
                                      ---
                                      100

               and so forth.


          Why is all this binary stuff important?  What does it have to do
          with programming my computer?  Well, your computer's
          microprocessor manipulates groups of bits in its registers.  A
          register is simply a storage location built right into the chip
          itself.  This means the processor can manipulate values in these
          registers very quickly, because it doesn't have to get the value
          from memory somewhere else in the system.


          Bits and Bytes; A Brief Tutorial                              145



          Appendix A                    Programmer's Productivity Pack 2.50


          The types of microprocessors we are discussing generally
          manipulate 8 or 16 bits at a time in their registers.  The
          registers, by the way, are either 8 or 16 bits wide.

          In virtually every field of business, science, and life in
          general, we make up names for things.  The computer field is no
          different.  When we group bits together into logical units, we
          have a name for each unit.  We've already discussed the "BYTE"
          which is a collection of 8 bits that are treated as a single unit
          or group.  A unit with 4 bits is half of a byte, so logically, it
          is called a "NIBBLE" (also spelled "nybble").  Moving in the
          other direction, a group of 16 bits (two bytes), is called a
          "WORD".  A group of 32 bits (four bytes) is called a "DOUBLE
          WORD".

          Knowing this, much of the mystique behind these terms should now
          be cleared up.  Learning a few new terms is not unique to the
          computer industry, if you were a stock broker you would have to
          learn the difference between a put and a call, if you were a
          sailor you would have to learn the difference between port and
          starboard.  The computer field is like any other field.  There
          are new terms to learn, but the result is it will be easier to
          say exactly what you mean and have others understand exactly what
          you are talking about.

          Let's take a look at the range of values that can be represented
          by various groups of bits.  Obviously, when you have a known
          amount of space in which to store a number, there is a limit to
          the size of the number that can be stored there.  Along these
          same lines, if you have enough space to store anything from 0 to
          10 but you want to add the ability to use negative numbers as
          well, then the same storage space will hold anything from -5 to
          +5.  After all, we can only store a limited number of unique
          values in a particular storage space.

          An 8 bit value, a byte, can represent any decimal number (whole
          number) between 0 and 255.  If you want to be able to include
          negative numbers, then we can represent any value from -127 to
          +128 with 8 bits.

          Numbers that can be either positive or negative are called
          "SIGNED" numbers.  Logically, numbers that can only be positive
          are called "UNSIGNED" numbers.

          A 16 bit value, a word, can represent any decimal whole number
          between 0 and 65,535.  If you are using signed numbers, a 16 bit
          word can represent any decimal whole number from -32,767 to
          +32,768.





          Bits and Bytes; A Brief Tutorial                              146



          Appendix A                    Programmer's Productivity Pack 2.50


          A 32 bit value, a double word, can represent any decimal whole
          number between 0 and 4,294,967,295.  A signed 32 bit double word
          can represent any whole number between -2,147,483,648 and
          +2,147,483,647.

          This should help to explain why so many software products on the
          market have similar limits for various operations.  When working
          with a computer you have to stay within the limits of what it is
          able to accomplish using its particular design.  Of course we
          haven't even touched on the subject of numbers that can have
          something after the decimal point.  Fractional numbers, often
          called "floating point" numbers in the computer industry, are an
          entirely different subject and we won't go into detail on them
          here.  Suffice it to say, unless you are using a math coprocessor
          chip, floating point math must be performed with software as the
          processor itself does not understand fractional values.

          Let's take a brief look at the "logical" operations that your
          computer can perform.  This will also help you to understand the
          various operations available within ProPak's Programmer's
          Calculator.

          The first operation we'll look at is one of the most commonly
          used.  The "AND" operation.  Notice we said "AND" and not "ADD".
          "AND" and "ADD" are two entirely different operations.



          AND - When you AND two bits together they produce a 1 only if
          both of the original bits are a 1.

                      0      0      1      1
                  AND 0  AND 1  AND 0  AND 1
                  -----  -----  -----  -----
          equals      0      0      0      1



          This is usually shown by way of a "truth table" which shows how
          the operation works.  A truth table for the AND operator might
          look something like this:


                   AND|  0  |  1
                  ----+-----+-----
                    0 |  0  |  0
                  ----+-----+-----
                    1 |  0  |  1





          Bits and Bytes; A Brief Tutorial                              147



          Appendix A                    Programmer's Productivity Pack 2.50


          You read the table by picking one value from the top line and
          drawing an imaginary line straight down, pick the other value
          from the left side and draw an imaginary line horizontally to the
          right.  Where these two imaginary lines intersect is the result
          you get when you AND the values together.

          Taking this concept further, to 8 or 16 bit numbers, merely
          involves lining up the numbers one above the other like so:


                                  00101011
                              AND 01001000
                                  --------
                                  00001000


          As you can see, only one of the bits in these two bytes have
          matching 1's, therefore only that bit produces a 1 for an answer.



          NOT - The NOT operator is a little bit different than the AND
          operator.  NOT works only on one value, rather than comparing two
          values with each other.  NOT converts all 0's to 1's and vice
          versa.  The NOT truth table looks like this:

                              NOT | 1 | 0
                             -----+---+---
                                  | 0 | 1



          The result is what is known as a "one's complement." In 8086/8088
          assembly language there is a similar instruction called NEG.  NEG
          goes one step further than NOT, after obtaining the one's
          complement of a number, the NEG instruction adds 1 to it, giving
          you the "two's complement" of the original value.  Using ProPak's
          "Change Sign" command produces the same results as the NEG
          instruction.



          OR - The OR operator, like the AND operator, compares two values
          and produces a result.  OR produces a 1 if either of the two
          inputs are a 1.  The truth table for an OR looks like this:

                              OR |  0  |  1
                            -----+-----+-----
                               0 |  0  |  1
                            -----+-----+-----
                               1 |  1  |  1


          Bits and Bytes; A Brief Tutorial                              148



          Appendix A                    Programmer's Productivity Pack 2.50


          XOR - The XOR (eXclusive OR) operator produces a 1, if one and
          only one of the inputs is a 1, if both inputs are 1 it will
          produce a 0.  The XOR truth table follows:

                             XOR |  0  |  1
                           ------+-----+-----
                               0 |  0  |  1
                           ------+-----+-----
                               1 |  1  |  0

          This can sometimes be easier to understand and picture when you
          think of it like this: the XOR operator produces a 1 for a result
          whenever the two bits being compared are different from each
          other.  If the two bits are the same, the answer is 0, if the two
          bits are different, the answer is 1.



          SHL and SHR - The Shift Left and Shift Right operators do exactly
          what their names imply, they shift a value left or right.  For
          instance:

                               take the value: 00001111
                       shift it left 4 places: 11110000
                 then shift it right 2 places: 00111100


          One interesting aspect to these operators is that they can be
          used as very fast multiplication or division operators.  Shift
          Left 1 place is the same as multiplying by 2, Shift Left 2 is the
          same as multiplying by 4, shift left 3 is the same as multiplying
          by 8, and so forth.  Shifting right is the same except the effect
          is like dividing by 2, 4, 8, etc., rather than multiplying.

          There are two similar instructions called Shift Arithmetic Left
          (SAL) and Shift Arithmetic Right (SAR).  These are very similar
          to the shift instructions except the value of the sign bit is
          retained throughout the shift operation.  As with the other
          operators, the best way to see how this works is to fire up
          ProPak's Calculator and tinker with a few examples.  This way
          you'll be able to see first hand what these operators actually
          do.

          Now let's take a brief look at some of the rotate operations.
          The rotate operations are very similar to the shift instructions.
          Understanding the differences is really a matter of considering
          what happens when a bit is shifted off of one end of a number.
          When shifting, if you shift a bit right off the end, it is no
          longer a part of your value.  The rotate operations deal with
          this a little differently.



          Bits and Bytes; A Brief Tutorial                              149



          Appendix A                    Programmer's Productivity Pack 2.50


          The rotate operations function just like their name implies.  The
          rotate operations shift values in the registers, but instead of
          losing the bit that comes off the end, it is rotated around and
          inserted into the other end of the register.  Something like
          this:


                     |---->--------------------------->----|
                     |                                     |
            |----|   |  |-------------------------------|  |
            | CY |<-----| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |<-|
            |----|      |-------------------------------|

                                     Rotate Left


          At the same time that the bit is rotated around to the other end,
          it is also placed in the carry flag (a particular bit position
          within the "flags" register).  Both the Rotate Left (ROL) and
          Rotate Right (ROR) instructions work by taking the bit that
          "falls off of the end" and rotating it around to be put right
          back into the other end of the register.

          Another instruction of this type is the Rotate through the Carry
          instruction (RCL and RCR).  It is very similar to the regular
          rotate instruction, except that the bit that comes off the end is
          passed through the carry flag.  In other words, the value that
          comes in one end of the register is the value that was previously
          in the carry flag.  Here's how it would look:


            |----------------------->-----------------------|
            |                                               |
            |  |----|   |-------------------------------|   |
            |<-| CY |<--| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |<--|
               |----|   |-------------------------------|

                      Rotate through the Carry Left




            |-----------------------<-----------------------|
            |                                               |
            |  |----|   |-------------------------------|   |
            |->| CY |-->| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |->-|
               |----|   |-------------------------------|

                      Rotate through the Carry Right




          Bits and Bytes; A Brief Tutorial                              150



          Appendix A                    Programmer's Productivity Pack 2.50


          How do you use such strange operations when you are programming?
          Well, as you start getting more involved with using MS-DOS or
          your ROM BIOS, you will more and more frequently find the need to
          compare bit patterns, to find out if a particular bit is set in a
          number, and even to shift the bits around in order to see what
          they really represent.

          As your programs become more intimate with the hardware of the
          computer, your need to understand and be able to use other
          numbering systems will grow as well.  This is especially true
          when you program in languages like "C" or "Turbo Pascal", where
          much can be done when you are able to work with binary,
          hexadecimal or octal numbers.  If you deal with assembly language
          then you know by experience what we're talking about.

          We certainly hope that this has answered your questions, and that
          ProPak's Programmer's Calculator will make your programming a
          little easier and much more productive.  Happy ProPak'n!



































          Bits and Bytes; A Brief Tutorial                              151



          Appendix B                    Programmer's Productivity Pack 2.50


                                     ------------
                                      Appendix B
                                     ------------


          Understanding Two's Complement Numbers:
          =======================================

          When manipulating signed values, your computer must be able to
          tell the difference between a positive and a negative number.  It
          does this through the use of a "sign bit." The leftmost bit is
          the sign bit.  When this leftmost bit is a zero (0) the number is
          positive, when that bit is a one (1) the number is negative.  Of
          course, when you are treating a number as an UNsigned value, the
          leftmost bit is just a part of the number, and all values will be
          considered positive.

          There's a little more to negative numbers than just a sign bit.
          To your computer, negative numbers are actually what is called
          the "two's complement" of positive numbers.  While this may sound
          complicated, it is actually very simple and reasonable.  Here is
          a brief explanation of what "two's complement" really means, and
          a simple example to illustrate how it actually works.

          Let's use an 8 bit value for the sake of simplicity, and the
          number 5.  In binary, the number 5 looks like this:

                                00000101

          Now, to obtain the two's complement of that number, we must do
          two things.  First we must complement each bit, simply change
          each 1 to a 0, and each 0 to a 1.  In essence we are just
          reversing each digit.  This is called the one's complement.  Here
          is what our results will look like:


                        Before changing: 00000101
                         After changing: 11111010


          A quick way to do this using ProPak's Calculator is to use the
          "NOT" operator.  It will instantly show you the one's complement
          of the current value.










          Two's Complement Numbers                                      152



          Appendix B                    Programmer's Productivity Pack 2.50


          The next (and final) step we must perform is just as easy.
          Simply add 1 to the number, like this:


                                  11111010
                                 +       1
                                 _________

                                  11111011


          That is the binary representation of -5.  We have just converted
          a positive 5 to a negative 5 in two simple steps.  As you might
          imagine, those two steps are exactly the kind of thing your
          computer is good at, and can do very quickly.  By using this
          technique, the computer is able to subtract one number from
          another simply by adding the two's complement of the value to the
          first value.  In this way the processor is able to perform two
          different kinds of math using basically the same internal
          circuitry.

          Just to show that this really does work, let's change the
          negative 5 back into a positive 5, using the same steps.  Here
          goes:


                     Before changing (-5): 11111011

                           After changing: 00000100

                               Now, add 1: 00000100
                                          +       1
                                          ---------
                                           00000101


          There you have it!  We've converted 5 to -5 and back to 5, using
          the same technique employed by your computer.  With this
          information under your belt, it will be much easier to understand
          overflow flags and the like when you are working on the assembly
          language level.

          In 8086/8088 assembly language, the "NEG" instruction performs
          the two's complement for you.  The Programmer's Calculator
          produces the same result with the "Change Sign" command.








          Two's Complement Numbers                                      153



          Appendix C                    Programmer's Productivity Pack 2.50


                                     ------------
                                      Appendix C
                                     ------------


          For Those New to MS-DOS:
          ========================

          Due to space limitations, this information appears only in the
          printed User's Guide which comes with the registered version.











































          Directories and Paths: A Brief Tutorial                       154



          Appendix D                    Programmer's Productivity Pack 2.50


                                     ------------
                                      Appendix D
                                     ------------


          Background Information:
          =======================

          Due to space limitations, this information appears only in the
          printed User's Guide which comes with the registered version.











































          Background Information                                        155



          Appendix E                    Programmer's Productivity Pack 2.50


                                     ------------
                                      Appendix E
                                     ------------


          Sources for Additional Information:
          ===================================

          Due to space limitations, this information appears only in the
          printed User's Guide which comes with the registered version.











































          Sources for Additional Information                            156



          Appendix F                    Programmer's Productivity Pack 2.50


                                     ------------
                                      Appendix F
                                     ------------


          What is Falk Data Systems?
          ==========================

          Falk Data Systems is a small privately held software developing
          company committed to providing top quality software at reasonable
          prices.  Falk Data Systems believes that the primary purpose of
          business is service, not profit.  This concept is fundamental to
          Falk Data Systems approach to product development, production and
          marketing.


          Other Products From Falk Data Systems:
          ======================================


          Easy Format:
          ------------

          That's right!  Easy Format, the program that's winning 4 and 5
          star awards from shareware disk vendors all over the world.  This
          is the program the Turbo User Group calls "The Most Versatile
          Disk Formatter in the World!"

          If you need to format large quantities of disks, even two
          different sizes simultaneously in two different drives then you
          simply must try Easy Format.  It's easy to use, menu driven, and
          fully customizable.  So if you just need a replacement for the
          DOS format program that's easy to use, then Easy Format is
          exactly what you're looking for.

          If you send disks to others and can't afford to send out faulty
          disks, then you can't afford to be without Easy Format.  It's
          built in "Distribution Quality" mode accepts only perfect disks
          and rejects all others.

          Easy Format gives you complete control over every detail of the
          format process - four different disk testing levels, six
          different bad spot marking options, volume labels and more.  You
          can even place volume labels on disks and still make the disk
          bootable using the DOS SYS command.

          Easy Format gives you the extra touches such as custom boot
          messages (which appear whenever someone tries to boot their
          computer with your disk in drive A:) that make your disks
          special.



          Other Products From Falk Data Systems                         157



          Appendix F                    Programmer's Productivity Pack 2.50


          Three versions including a DESQview specific background format
          program are included.  All this and Easy Format is lightning fast
          too!

          Every option - screen colors, sound effects, language (English,
          German, or Spanish), and more - is fully customizable.  Easy
          Format can even remember your options and use them again
          automatically in the future.

          Order your registered version today directly from Falk Data
          Systems for only $40.00.  The registered version includes an 80+
          page bound printed manual, a bonus disk packed full of useful
          programs, and a free upgrade to the next version.

          NOTE:     Registered users of the Programmer's Productivity Pack
                    are entitled to a 15% discount on their purchase of
                    Easy Format.

          The shareware evaluation version is available from your favorite
          ASP approved disk vendor or a BBS near you.

          For overseas orders please add $10.00 shipping and handling - or
          order direct from:  Hammer House of Shareware, 32 Edenmore
          Street, Rosemount, Londonderry, Northern Ireland, BT48 7JP, Phone
          0504 263779.


          The Easy Format Tech Kit:
          -------------------------

          If you are a programmer or developer, or someone who enjoys
          technical details, then we have something just for you.  The
          "Easy Format Tech Kit" is available to registered users of Easy
          Format for an additional fee.  The Easy Format Tech Kit is a
          retail software product and must be paid for in advance.

          The Easy Format Tech Kit comes with several items, including
          those listed below.

          The Easy Format Tech Kit includes a printed, 80+ page technical
          reference document that tells you everything you ever wanted to
          know about floppy disks and drives (and then some).  You would
          have to purchase over a dozen books to get all the technical
          information that is condensed into this one easy to read source.

          The printed manual that comes with the Easy Format Tech Kit,
          contains over 200 pages of detailed information, designed to help
          you get the most out of the package.

          The Easy Format Tech Kit includes the following items, and more:



          Other Products From Falk Data Systems                         158



          Appendix F                    Programmer's Productivity Pack 2.50


              o  The complete source code for FormatF.EXE - Written
                 entirely in assembly language.  This includes the source
                 code, and printed documentation, for DOSLIB, an assembly
                 language mini-library that will make your assembly
                 language work much easier.

              o  The source code for DvFormat.EXE - Written entirely in
                 assembly language.  This includes the source code, and
                 printed documentation, for DVLIB, an assembly language
                 mini-library designed specifically for assembly language
                 programming under the DESQview multitasking environment.
                 The DvFormat source code requires the DESQview API
                 Reference Manual (which comes with a disk containing
                 DVAPI.INC) from Quarterdeck Office Systems, in order to
                 reassemble the program.

              o  The source code for EzFormat.EXE - written in Turbo Pascal
                 (version 5.5) and assembly language.  This source code
                 requires Turbo Professional (version 5.08) from TurboPower
                 Software in order to recompile the program.

              o  The source code for Txt2Obj, a utility program developed
                 for use in Easy Format.  Txt2Obj takes a text file and
                 compresses it, then converts it into an .OBJ file that can
                 be linked directly into your programs.  This is the tool
                 used to make Easy Format work in English, German and
                 Spanish.

              o  The assembly language source code for FormatF and DvFormat
                 is compatible with OPTASM, OPTLIB, and OPTLINK from SLR
                 Systems, Borland International's TASM, TLIB, and TLINK,
                 and Microsoft's MASM, LIB, and LINK.  Make files are
                 included for the make capabilities of each brand of tools.

              o  The printed documentation that comes with the Easy Format
                 Tech Kit includes several flow charts to help you get the
                 most out of the source code.  Eventually the documentation
                 for the Tech Kit may be printed exclusively on recycled
                 paper.

          The Easy Format Tech Kit is available to registered users of Easy
          Format for only $65.00.

          NOTE:     Registered users of the Programmer's Productivity Pack
                    are entitled to a 15% discount on their purchase of the
                    Easy Format Tech Kit.







          Other Products From Falk Data Systems                         159













                                        Index


          A                                  C
          Add 61                             Calculator and Attachments 45,
          Advanced options menu 129            98, 128
          Alt-Q 119, 137                     Calculator menu 54, 124
          AND 62, 147                        Canada 6
          Answers.TXT 22                     Cancel Changes 116, 119, 138
          ASCII and Color Attribute          Capture Screen to disk 56, 70,
            Chart 65                           78
            Reference Guide 68-70            Carry flag 63, 150
            Tutorial 66-67                   Change Bits (^C) 49, 57
          ASCII poster 27                    Change Hot Key 51, 56, 57, 89,
          ASP 14                               97, 98, 128
            Ombudsman 14                     Change Sign (^-) 57, 148, 153
          Assembly language 47, 54, 63,      Circular queue See: Linked
            153                                list
          Attachments 64, 68, 70, 78         Clear All (^A) 58, 59, 60
          AUTOEXEC.BAT 41                    Clear Entry (^E) 58, 62
                                             Click sound 129
          B                                  Clipper 74, 76
          Background task 22, 37, 74         Color attribute set 120
          Bank charges 6                     Colors menu 120
          Batch files 41                     COMMAND.COM 10
          BBS 3, 158                         Command line
          BCD See: Binary Coded Decimal        DOS 32
          Beep Sound 128                     Command line parameters 38,
          Benefits 7, 8, 9, 13                 114, 115, 117
          Binary Coded Decimal 63              -U 38
          Binary format 46, 48, 52, 54,        ProSwap 33
            55, 57                                -? 37
          Binary numbers 123, 143, 144,           -D 34
            152                                   -E 34
          Bit level operations 62                 -H 35
          Bit manipulation facility 49,           -M 35
            57                                    -N 35
          Bits 49, 57, 62, 143                    -P 36
          Blank screen 58, 67, 79, 135            -S 36
          BOOT.SYS 12                             -T 35
          Bypassing 30                            -U 36
          Bytes 143, 146, 152                     -X 37
                                             Commercial See: Retail
                                             Communications programs 32


          Falk Data Systems                  Programmer's Productivity Pack



                                        Index


          CompuServe 8, 13                   Enhanced keyboard 26, 61, 74,
          Configuration Control 12             77, 97
          Conflicts with other TSR's 41      Environment block 29
          Control Center 39, 98              Error messages 43, 124
            Customizing 126, 128             Error sound 116, 129
            Menu 89                          ERRORLEVEL 42
            Reference Guide 89-95            Europe 6
            Tutorial #1 81-84                Evaluation 3, 9
            Tutorial #2 85-88                Exchange Double Words See:
          Copy screen to file 92               XCHG DD
          Ctrl-@ 56                          Exchange Words See: XCHG DW
          Current value 58, 60, 61           Exclusive OR See: XOR
          Custom attribute set 121           Exit PCustom 119, 137
          Custom colors menu 121             Exit the ASCII Chart 67, 70
          Customizing program See:           Exit the Calculator 59, 60
            PCustom                          Exit The Control Center 84
                                             Exit The Keystroke Reference
          D                                    Center 72, 78
          dBASE 71, 74                       Extended characters 69, 82
          DEBUG 32                           EzFormat.EXE 159
          Decimal format 46, 48, 49, 52,
            55, 144                          F
          Decimal point 61, 147              F11 and F12 97
          Delete Digit 62                    Filter See: Screen Capture,
          DESQview 22, 33, 37                  130
          Device 8                           Final result 60, 61
          Disable 9                          Flu Shot Plus 9
          Disable disk parking 58            FMark 8
          Discount 158                       FormatF.EXE 159
          Discounts 7                        4DOS 10
          Distribute 2, See Also:            FoxBase 74
            Distribution Disk                Fractions 147
          Distribution 3                     Future 7
          Divide 61
          DOS ERRORLEVEL 42                  G
          DOS Extensions 10                  Get status info 93, 106
          DOS Shell 31, 32                   Grab box
          DOS version 3.0 31                   Change size 109, 131
          Double word 146                      Color 131
          Dual monitor systems 18, 25          Move 108
          DvFormat.EXE 159                   Graphics mode 32, 43
                                             Gray scale attribute set 120
          E                                  Guarantee
          Easy Format 157                      Money Back 1
          Easy Format Tech Kit 158
          EatMem 9                           H
          EDLIN 32                           Hard Disk 31
          EMS memory 18, 19, 28, 29, 31,     Hardware Interrupt Handlers 32
            42, 43, 135                      HEAP 29
          End-of-line characters 109         Hexadecimal format 26, 46, 49,
                                               52, 55, 58


          Falk Data Systems                  Programmer's Productivity Pack



                                        Index


          High memory 31                     M
          Hot key                            MapMem 8
            Tips 57, 97                      Mark 8
          Hot Keys menu 127                  Marketing 1, 157
                                             MarkNet 8
          I                                  Mathematical operations 60
          INKEY() 71, 74, 77                 Media Hype 9
          Insert a Value (^I) 58             Memory
          Installation 22                      conserving 19
            Floppy disk 24                     EMS 18, 19, 28, 31
            Hard disk 23                       high 31
          Integer division 61                  XMS 18, 19, 31
          Intermediate value 58, 60, 61      Memory requirements 19
          Internal stacks 29                 Memory-resident version 19,
          IntroPak 8                           22, 28, 29, 59, 74
          ISR 32                             Memory slots 58, 59
                                             Memory Usage Info 30
          K                                  Miscellaneous 134
          KEY extension 87, 88, 91, 105,     Missing overlay file 43
            134                              Modes See: Video modes
          Keyboard 26                        Modifier keys 26, 56
          Keyboard interrupt 26, 60          Modify Current Settings
          KeyRef 64, 71                        submenu 96
          Keystroke Playback Delay 86,       Modify Options 90
            90, 98, 104, 134                   Reference Guide 96-101
          Keystroke Recordings                 Tutorial 81
            Delete 92, 105                   Modulus 61
            Limits 103                       Monitors
            List 90, 105                       Black-and-white 25, 115,
            Memory 134                         117, 121
            Merge 105                          Color 25, 69, 120
            Playback 98, 104                   Gas plasma 25, 115, 117
            Read from file 91, 99, 105,        Gray scale 25, 115, 117,
            134                                120, 121
            Reference Guide 102-110            LCD 25, 115, 117
            Replace 105                        Monochrome 25, 120, 121
            Start 98, 103                    Moving the display 64, 77
            Stop 98, 103                     Multiply 61
            Tutorial 85                      Multitasking system 32, 38, 74
            Write to file 91, 105            Multitasking version 19, 22,
          Keystroke Reference Center 64,       38, 60
            125                              Myth 9
            Reference Guide 74-78
            Tutorial 71-73                   N
                                             Name
          L                                    changing 30, 38
          Launch 2                           NEG 148, 153
          License 3                          Negative to positive 57
          Linked list See: Recursion         Network shells 32
          Loading ProPak 28                  Nibble 146
          Logical operations 62, 147         Non-Registered Users 7, 14


          Falk Data Systems                  Programmer's Productivity Pack



                                        Index


          Normal messages 126                Poster See: ASCII Poster
          NOT 62, 148, 152                   PRINT 41, 84, 90, 113, 135
          Numeric Format 55, 130             Print facility 93
            Switching 49, 55                   Reference Guide 113-114
          Numeric Mode 57, 130                 Tutorial 81
          NumLock 27, 46, 60, 69, 72         ProComm 32
                                             Program Segment Prefix 28
          O                                  Programmer's Calculator
          Octal format 46, 52, 55              Customizing 122, 129
          Ombudsman 14                         Reference Guide 52-65
          OmniView 18, 22, 37                  Tutorial 45-51
          One's complement 152               ProSwap 30
          Opening screen
            Bypassing 30                     Q
          OR 62, 148                         QEMM 31
          Overlay buffer 29, 136             QRAM 31
            Supplement 136                   QuickSilver 74
          Overlay file 19, 28, 29, 43,       Quit PCustom 119, 137
            44, 135                          Quit the ASCII Chart 67, 70
                                             Quit the Calculator 59, 60
          P                                  Quit The Control Center 84
          Park Disk(s) and Blank Screen      Quit The Keystroke Reference
            58, 67, 70, 79, 79-80              Center 72, 78
          Payment Methods 6
          PC Magazine 10                     R
          PC World 10                        RAM 19
          PCustom 115                        RAM Disk 31
            Alt-Q 137                        RamFree 9
            Cancel Changes 138               Range of values 52
            Reference Guide 117-138          RCL 63, 150
            Save changes 137                 RCR 63, 150
            Select 137                       Read/Write heads 58
            Tutorial 115-116                 Recursion See: Circular queue
          PCustom.EXE 22                     Recycled Paper 15
          PCustom menus                      Registered Users 4, 5, 7, 14
            Advanced options menu 129        Registration 5, 7, 14
            Colors menu 120                  Registration Benefits 7
            Custom colors menu 121           Release 9
            Exit PCustom menu 137            RelNet 9
            Hot Keys menu 127                Remainder 61
            Main menu 119                    Rename 30, 38
            Sound effects menu 128           Replacement character 130
          Pick list 58, 59                   Retail 2, 4, 158
          Playback See: Keystroke            Returning to the Calculator
            Recordings                         64, 70, 78
          Pop-Up DOS Shell See: DOS          ROL 62, 150
            Shell                            ROR 63, 150
            Customizing 128                  Rosenberger
          PopCalc 41                           Rob 9
          Portability Note 71, 72, 77        Rotate Left See: ROL
          Positive to negative 57            Rotate Right See: ROR


          Falk Data Systems                  Programmer's Productivity Pack



                                        Index


          Rotate through the Carry Left      T
            See: RCL                         TAPCIS 8, 32
          Rotate through the Carry Right     TaskView 18, 22, 37
            See: RCR                         Tech Kit 158
                                             Technical Support 7, 13
          S                                  Test-Drive 1
          SAL 63, 149                        Text mode 43
          SAR 63, 149                        386MAX 31
          Save a Value (^S) 59               TIP 57, 82, 89, 90, 91, 92,
          Scan code 71, 74, 76                 94, 97, 100, 107, 117, 119,
          SCN extension 56, 66, 70, 83,        143
            111, 131                         Toggle
          Screen Blank                         Bits 57
            Clock 127                          Modes 54, 59
          Screen Capture 56, 70, 78, 130     Toggle Sign Mode (^T) 59
            Filter method 100                Traditional 2
            Reference Guide 111-112          Trigger Key 85, 86, 87, 88,
            Tutorial 81                        90, 92, 99, 100, 103, 104,
          Screen Grabber 98, 104, 107,         105, 106
            127                              Truth tables 147-149
            Tutorial 86                      Try-before-you-buy 1, 5
          Screen Refresh (^R) 59             TSR Utilities 8
          ScrollLock 72                      TurboPower Software 8, 9
          Shareware 1, 5, 14                 Two line cursor 136
          Shift Arithmetic Left See: SAL     Two's complement 152, 153
          Shift Arithmetic Right See:        Two seconds 44
            SAR                              Txt2Obj 159
          Shift keys 26
          Shift Left See: SHL                U
          Shift Right See: SHR               Unblank screen 58
          SHL 62, 149                        Unload from memory 60, 94
          Show Result 61                     Unloading ProPak 38, 94
          SHR 62, 149                        Unpark disk 58
          Sidekick version 28, 39            Unsafe to pop up 44
          Sign bit 152                       Unsafe to unload 51
          Signed mode 49, 52, 54, 58, 59     Unsigned mode 49, 53, 54, 58,
          Signed numbers 146, 152              59
          Software Concepts Design 9         Unsigned numbers 146, 152
          Sound effects menu 128             Updates 14
          Source Code 159
          Stacks See: Internal stacks        V
          Stand-alone version 31, 38         Video
          Start recording keystrokes 98        Adapters 18
          Starting PCustom 117               Video modes
          Status bytes 72                      Display height 25
          Stop recording keystrokes 98         Display width 25
          Subtract 61                          Graphics 25, 32
          Supplement 136                       Text 25
          Swapping 31                        Virtual screen 38
          Swapping Message 127               Virus 9
          System requirements 18             Virus Myths 9


          Falk Data Systems                  Programmer's Productivity Pack



                                        Index


          Virus Protection 9                 X
                                             XCHG DD 64
          W                                  XCHG DW 63
          Warranty 5                         XMS memory 18, 19, 31
          Watch 9                            XOR 62, 149
          West Germany 6
          Word 146














































          Falk Data Systems                  Programmer's Productivity Pack

Comments

Popular posts from this blog

BOTTOM LIVE script

Fawlty Towers script for "A Touch of Class"