home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / c / compile.zip / COMPILE.DOC < prev    next >
Text File  |  1992-08-26  |  34KB  |  872 lines

  1.  
  2.  
  3.  
  4.  
  5.                              QuickCompile v1.0 c1992
  6.  
  7.                             An Automated Make Utility
  8.                                   For QuickBASIC!
  9.  
  10.                                      From:
  11.  
  12.                                 Thomas Software
  13.                                 1375 Beasley Rd.
  14.                                 Jackson, MS  39206
  15.  
  16.  
  17.  
  18.  
  19.  
  20.                        Fast and Easy Compiling and Linking !
  21.  
  22.     QuickCompile is an easy to use, automated Make Utility for MicroSoft's
  23.     QuickBASIC. Additional support for Crescent Software's PDQ replacement
  24.     link library is built in too.
  25.  
  26.     QuickCompile is very user friendly. Familiar QuickBasic style dialog and
  27.     check boxes, online help, and full mouse support insulate the programmer
  28.     from the complicated procedure of compiling and linking on the DOS command
  29.     line.
  30.  
  31.                                     Features
  32.  
  33.     * Easy One Time Input
  34.          Once the user selects the necessary parameters for BC and Link,
  35.          that information is written to the top of the source file as a
  36.          header. QuickCompile will then read this header each time,
  37.          not requiring further user input.
  38.  
  39.     * Automatic Source Search For Defaults
  40.          QuickCompile searches all modules and include files of your source
  41.          code and determines many switches and parameters automatically.
  42.  
  43.     * Detailed Help System
  44.          Instant on-line help is available for all BC and LINK option by
  45.          pressing F1 or clicking an item with the right mouse button.
  46.  
  47.     * Easy Parameter Editing
  48.          BC and Link parameters are stored at the top of the source file
  49.          and may be edited with QuickCompile, the QuickBASIC editor, or any 
  50.          text editor.
  51.  
  52.     * Fast, Skips Unnecessary Steps
  53.          QuickCompile skips unnecessary steps when compiling and linking.
  54.          Source is not recompiled when an up to date .OBJ file exists.
  55.  
  56.     * Full Mouse Support
  57.          QuickCompile's QuickBASIC style dialog and text boxes fully
  58.          support MicroSoft Compatible mouses for easy input.
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.                                   Section I
  69.  
  70.                             QuickCompile Users Manual
  71.  
  72.                                 Table of Contents
  73.  
  74.             Introduction ........................................ 1  
  75.  
  76.             Features ............................................ 1
  77.  
  78.             Contents ............................................ 2
  79.  
  80.             Why Leave The QB Environment To Make EXE Files ...... 3 
  81.  
  82.             Quick Start Instructions ............................ 4   
  83.  
  84.             How It Works ........................................ 5   
  85.  
  86.             Subsequent Benefits.................................. 6   
  87.  
  88.             Invoking From The Command Line ...................... 6   
  89.  
  90.             Modifying A File's Header ........................... 6  
  91.  
  92.             Header Layout ....................................... 7
  93.  
  94.             Important Information & Additions ................... 8
  95.  
  96.             NOCOM.OBJ (No Communications Routines) .............. 9
  97.  
  98.             NOEM.OBJ (No Floating Point Emulation) .............. 9
  99.  
  100.             SMALLERR.OBJ (No Error Messages) ................... 10
  101.             
  102.             OPTIONAL UTILITIES
  103.             
  104.                EXISTS.BAS Module (Check for existance of a file) 10
  105.  
  106.                CHK4QC .......................................... 11
  107.  
  108.                80X ............................................. 12
  109.  
  110.                FILETIME ........................................ 13
  111.  
  112.             Disclaimer ......................................... 13
  113.  
  114.             Technical Support .................................. 13
  115.  
  116.             Registration Form .................................. 14
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.                                      - 2 -
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.                   Why Leave The QB Environment To Make .EXE Files?
  132.  
  133.  
  134.     There are quite a few reasons to leave the congenial QuickBasic editor
  135.     for compiling and linking your programs. When you select "Make EXE File..."
  136.     QB shells to DOS and runs BC to compile the source code. Next,"
  137.     LINK is run to link in .OBJ and .LIB code to produce an exe file.
  138.     Compiling and Linking inside the QuickBasic environment is easy, but you
  139.     pay a price. Many BC and LINK options are not available...
  140.  
  141.  
  142.     You may like another editor better than QuickBasic's. In this case, you
  143.     may use another editor to write programs or make minor modifications to
  144.     source files and compile and link from the command line.
  145.  
  146.  
  147.     Large programs often become too big to run or compile in the Environment.
  148.     Such cases require that you recompile and link the program each time you
  149.     make changes just to see if it still runs. If you don't want to throw
  150.     away all your programming efforts up to that point,  you must leave the
  151.     friendly QB Editor's "Make EXE File..." option behind and face a hostile
  152.     DOS prompt.
  153.  
  154.  
  155.     You may have object files that need to be linked with your program. Such
  156.     object code may contain screen displays, unsupported functions, replacement
  157.     routines, or most anything. OBJ files are not directly accessible to you
  158.     in the environment.
  159.  
  160.  
  161.     Another good reason for linking outside the environment is to take
  162.     advantage of stub files like "NOCOM.OBJ" and "NOEM.OBJ". Stub files help
  163.     reduce the size of your program by extracting unused routines.
  164.  
  165.  
  166.     BC and LINK both have many option switches. Of course, you can't specify
  167.     these switches inside the environment. Switches are used for optimizing
  168.     programs, changing array storage, producing list files, debugging and
  169.     more.
  170.  
  171.     QuickCompile makes it easy for you to choose the right switches for your
  172.     program in two way.
  173.  
  174.         1. QuickCompile searches your source code (including all modules
  175.            listed in a .MAK file and an include file) and determines many
  176.            of the necessary BC switches for you. Of course you may change
  177.            any of these if you wish.
  178.  
  179.         2. Detailed on-line help is available on any BC or LINK option by
  180.            pressing F1 while the cursor is on the option or by clicking on
  181.            it with the right mouse button.
  182.                                      
  183.                                      
  184.                                      
  185.  
  186.                                      - 3 -
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.                             Quick Start Instructions
  195.  
  196.  
  197.     QuickCompile is very easy to use. Most QB programmers will find that
  198.     these "Quick Start" instructions are all that's necessary. However, 
  199.     you should read the other information contained in this document to
  200.     better understand QuickCompile and it's many benefits.
  201.  
  202.     1. Copy COMPILE.EXE and COMPILE.HLP into a directory listed in your
  203.        path statement. Preferably the \QB45 directory.
  204.     
  205.     2. If you have not already done so, load your source code into the QB
  206.        editor and use the File/Save As  menu command to save the source as
  207.        Text (readable by other programs). You should make a backup copy too.
  208.  
  209.     3. Type COMPILE at the DOS prompt and press Enter.
  210.  
  211.     4. Using your mouse or keyboard, select desired source code. Press Enter.
  212.  
  213.     5. Choose <OK> when QuickCompile notes that your source code has no header.
  214.  
  215.     6. Choose the appropriate Compiler Options and click on <OK> when finished.
  216.        QuickCompile automatically chooses most options for you. However, you
  217.        are free to change them as you feel necessary.
  218.        Online help is available for each option by locating the cursor on the
  219.        item and pressing F1 or clicking the right mouse button on the item.
  220.  
  221.     7. Choose any libraries that are needed. Click on add to add each one to
  222.        the "Selected Libraries" box. When finished, click on continue.
  223.  
  224.     8. Choose any .OBJ files that are needed. Click on add to add each one to
  225.        the "Selected Objects" box. When finished, click on continue.
  226.  
  227.     9. Choose the appropriate Link Options and click on <OK> when finished.
  228.        QuickCompile automatically chooses some options for you. However, you
  229.        must choose many of them (if desired) yourself. Most Link switches
  230.        cannot be determined by the content of the source code.
  231.        Online help is available for each option by locating the cursor on the
  232.        item and pressing F1 or clicking the right mouse button on the item.
  233.  
  234.    10. Add any DOS commands you want to run before and after the Compiling and
  235.        Link process. Place an & (with no spaces) between each command.
  236.        Click on <OK> when finished.
  237.        The Compiler directives will now be written to the source code in the
  238.        form of a header for QuickCompile to use in future runs.
  239.  
  240.    11. Choose <NOW>. Sit back and watch BC and Link go to work.
  241.  
  242.  
  243.  
  244.  
  245.                                      
  246.                                      
  247.                                      
  248.                                      
  249.                                      - 4 -
  250.  
  251.  
  252.  
  253.  
  254.  
  255.                                 How it Works
  256.  
  257.     Upon execution, QuickCompile searches the selected source code (including
  258.     any files specified in the program's .MAK file (if present), and any files
  259.     listed behind a '$INCLUDE ' metacommand) for specific keywords. The chosen
  260.     file must have been saved as ascii text. If not, the user is told how to
  261.     do this. (Most experts agree, you should always save in ascii format.)
  262.     From the search information, a determination is made as to which BC
  263.     switches should be used (note: /O is always a default). A dialog box then
  264.     pops up and presents all switch choices. The ones that were previously
  265.     determined as necessary are marked. The user may make any changes he wishes
  266.     at this point and (or) click <OK> to continue. If a switch was used that
  267.     requires a number augment, an edit box pops up with the default.
  268.     You may cursor to any of these switches and press F1 or click the right
  269.     mouse button on a switch to access instant online help about that option.
  270.  
  271.     Next a box is presented containing all libraries in the directory specified
  272.     in the "LIB" environment variable. If "LIB" is not set, a box pops up,
  273.     suggesting it's use, and the current directory is used. The user may change
  274.     directories or drives as necessary. QuickCompile remembers where it's
  275.     executed from and where any selected files are located.
  276.     If PDQ.LIB is selected, it must be the last library. IF not, a warning is
  277.     displayed. (Presence of PDQ.LIB also makes /NOD a link default).
  278.  
  279.     After choosing any libraries that are needed, a similar box pops up with
  280.     .OBJ files. Objects that are automatically determined as necessary are
  281.     shown in the Selected Objects box. This box updates when objects are added.
  282.     If NOCOM.OBJ, _NOERROR.OBJ, _NOREAD.OBJ, or _NOVAL.OBJ is selected, /NOE
  283.     becomes a Link Default.
  284.  
  285.     The Link Box (similar to the BC switches box) pops up, showing all switches
  286.     previously determined as defaults. Again, edit boxes are provided for
  287.     number augments.
  288.     You may cursor to any of these switches and press F1 or click the right
  289.     mouse button on a switch to access instant online help about that option.
  290.     
  291.     Finally, edit boxes will appear and ask for any DOS commands that you
  292.     would like to run before or after compiling and linking. Multiple
  293.     commands may be entered in either box, using an & (with no spaces)
  294.     between each.
  295.  
  296.     Everything that BC and Link need to know has now been determined.
  297.     This information is formatted (in a specific manner) and written to a
  298.     temporary file as a header. The source file is read and appended to this
  299.     header. Next the untouched Original source file is renamed as
  300.     <sourcefile>.BAC and the temporary file is renamed as <sourcefile>.BAS.
  301.  
  302.     Now a batch file named ~M.BAT is created. This file is used to automate the
  303.     BC / Link process. If the Link command line exceeds the maximum allowable
  304.     128 characters, an additional ~M.RSP file is created. Note that both files
  305.     are deleted after compiling is complete.
  306.  
  307.     The user is given the choice to compile Now or Later. If he chooses Now,
  308.     QuickCompile ends and control is passed to the batch file which performs
  309.     the compiling and linking. If Later is chosen, a message about the batch
  310.     file appears, QuickCompile ends, and the user is returned to DOS.
  311.                                      
  312.                                      - 5 -
  313.  
  314.                                 
  315.                                 
  316.                              Subsequent Benefits
  317.  
  318.     Once QuickCompile  has been used on your source code, it will know how to
  319.     handle future compiles by reading the header information that was created
  320.     and written to the source.
  321.  
  322.     To save time and unnecessary drive wear, when compiling programs with
  323.     multiple modules, QuickCompile searches for existing object code. If
  324.     any module's source has not been modified sense it was last compiled,
  325.     (object code exists with a later date/time stamp than the source) it's
  326.     existing object code is used.
  327.  
  328.                          Invoking From The Command Line
  329.  
  330.     COMPILE <FILENAME>
  331.             Causes the file to be compiled without prompting the user. The
  332.             information contained in the file's header is used.
  333.  
  334.     COMPILE (no filename specified)
  335.             Causes the QuickCompile editor to run. The user then selects the
  336.             file to compile. The user is shown all current options for the file
  337.             and is allowed to change any of them if he desires before compiling
  338.             begins. Changes are not written to the file's header.
  339.  
  340.                            Valid Command Line Switches
  341.  
  342.     /B      Run in Black & White mode. (QuickCompile automatically detects
  343.             Black and White Monitors in most cases.)
  344.  
  345.                             Modifying A File's Header.
  346.  
  347.     Once a file has been processed by QuickCompile, the header that was created
  348.     is read to determine the proper options during subsequent compiling and
  349.     linking operations.
  350.  
  351.     However, if the source code is modified later, the header may need to be
  352.     updated to reflect these changes.
  353.  
  354.     The following methods may be used to change a source file's header.
  355.  
  356.                                 Header Editing
  357.  
  358.     Because the header is located at the top of the source code, it's always
  359.     available to QuickCompile. It's also always available to the programmer.
  360.  
  361.     The quickest way to modify a file's header is to make your changes while
  362.     editing the source code.
  363.     <see Header Layout for correct syntax>
  364.  
  365.     You may also edit a header with QuickCompile. Do not load the file from
  366.     the command line. Use the file menu to select the file and choose the
  367.     <EDIT HEADER> option. Previous parameters are displayed as you edit.
  368.                                      
  369.                                Remove Header Option
  370.  
  371.     If you wish, you may use QuickCompile to remove a file header. To remove
  372.     a file's header, select the file and choose the <REMOVE HEADER> option
  373.     from the file select menu.
  374.                                      - 6 -
  375.  
  376.  
  377.                                
  378.                                
  379.                                
  380.                                  Header Layout
  381.  
  382.     The first time a source file is processed by QuickCompile, a small header
  383.     is placed at it's top. This information allows QuickCompile to compile the
  384.     source in the future without requiring user input again.
  385.     The header file may be manually edited by the programmer if desired.
  386.  
  387.  
  388.  
  389.                              - SAMPLE FILE HEADER -
  390.  
  391. 'εΣΘ'--- QuickCompile v1.0 -- Compiler & Linker directives. Do Not Disturb!---
  392. '_CompileStartCommands=
  393. '_CompileModuleFiles= MYPROG.BAS MODULE1.BAS MODULE2.BAS
  394. '_CompileBCSwitches= /O
  395. '_CompileBCListFile=NUL
  396. '_CompileDeleteObjFile= 1
  397. '_CompileLinkFiles=MYPROG.OBJ+MODULE1.OBJ+MODULE2.OBJ
  398. '_CompileLinkLibraries=PRO.LIB+PDQ.LIB
  399. '_CompileLinkSwitches= /E /NOD
  400. '_CompileLinkMapFile=NUL
  401. '_CompileEndCommands=
  402. '---------------------------------------------- 12:48:41 -- 07-18-1991 ---ΘΣε'
  403.  
  404.  
  405.                                 - EXPLANATION -
  406.  
  407. 'εΣΘ'---Identifies the start of the QuickCompile header.
  408.  
  409. '_CompileStartCommands= Any DOS commands that should precede compiling.
  410.  
  411. '_CompileModuleFiles= .BAS files that should be compiled (Found in the .MAK
  412.                       file if present). If an up to date .OBJ file is found,
  413.                       that file will not be recompiled.
  414.  
  415. '_CompileBCSwitches= Switches that BC (Basic Compiler) will use.
  416.  
  417. '_CompileBCListFile= Name of List file created by BC. NUL if none.
  418.  
  419. '_CompileDeleteObjFile= 1 = Delete .OBJ files after linking. 0 = Don't delete.
  420.  
  421. '_CompileLinkFiles= .OBJ files to link. (modules, nocom.obj, etc.)
  422.  
  423. '_CompileLinkLibraries= Libraries to link. (You may use more than one!)
  424.  
  425. '_CompileLinkSwitches= Switches that LINK (Linker) will use.
  426.  
  427. '_CompileLinkMapFile= Name of Map file created by LINK. NUL if none.
  428.  
  429. '_CompileEndCommands= Any DOS commands that should follow compiling.
  430.  
  431. ---ΘΣε' Identifies end of QuickCompile Header.
  432.  
  433.                                      
  434.                                      
  435.                                      
  436.                                      
  437.                                      - 7 -
  438.  
  439.  
  440.  
  441.  
  442.  
  443.                       Important Information & Additions
  444.  
  445.  
  446.     COMPILE.EXE is a self modifying program. Never run an executable file
  447.     compression utility (like PKLITE or LZEXE) on it. This will damage the
  448.     file and make it unusable. For this reason, make a backup copy of
  449.     QuickCompile and related files in case they are needed in the future.
  450.     (Note: It is ok to use ARC or ZIP on the file for transportation.)
  451.  
  452.  
  453.     If you change the name of your source code or one of it's modules after
  454.     the QuickCompile header has been written to it, you will need to edit
  455.     the header to reflect the new name(s). Also, any module that is added
  456.     to your program after the header was written must also be added to the
  457.     the header. You may either manually edit the header from inside
  458.     QuickBASIC, or use QuickCompile to remove it and make a new one. Editing
  459.     a header with QuickCompile will not add the additional modules.
  460.  
  461.  
  462.     QuickCompile does not check for LINK environment variables that may be
  463.     set. You should avoid setting any link switches this way because the
  464.     results will be unpredictable
  465.  
  466.  
  467.     QuickCompile is a "Shell" or "Make" utility for BC and LINK. It is possible
  468.     that the user may select options that will cause BC or LINK to crash, or
  469.     produce an executable file that doesn't operate correctly. QuickCompile
  470.     simply creates batch and response files for BC and LINK and should not
  471.     cause errors or crashes itself.
  472.     If you experience problems, carefully check all options and parameters that
  473.     you have chosen.
  474.     If necessary, manually cut the header from your file and run QuickCompile
  475.     again.
  476.  
  477.     Disclaimer: The user is fully responsible for the use of this program.
  478.                 Thomas Software and the Authors cannot be held liable for
  479.                 any problems or situations that may arise from it's use.
  480.  
  481.  
  482.     MicroSoft and QuickBASIC are registered Trademarks of MicroSoft
  483.     Corporation. PDQ is a copyrighted product of Crescent Software.
  484.     QuickCompile is a copyrighted product of Thomas Software.
  485.  
  486.  
  487.  
  488.                              TECHNICAL SUPPORT
  489.  
  490.   Technical support is available to registered users by mail at the
  491.   address below or by Email on Compuserve to: 71071,2166 or 75720,3376
  492.  
  493.                              Thomas Software        
  494.                              1375 Beasley Rd.
  495.                              Jackson, MS 39206
  496.                                      
  497.                                      
  498.                                      
  499.                                      - 8 -
  500.  
  501.  
  502.  
  503.  
  504.  
  505.                                    NOCOM.OBJ
  506.                          (No Communications Routines)
  507.  
  508.     When your source file includes an OPEN statement with a string variable in
  509.     it, BC will automatically include all com port routines. This happens
  510.     whether you are calling COM or not. 4K bytes in executable file size can be
  511.     saved by linking with NOCOM.OBJ in these cases. Linking with NOCOM.OBJ when
  512.     not necessary will increase your .EXE file size by 32 bytes, so observe the
  513.     the following rules.
  514.  
  515.     OPEN FILE$ FOR INPUT AS #1            Will cause the com routines to be
  516.                                           included. You should link NOCOM.OBJ.
  517.  
  518.     OPEN "MYFILE.TXT" FOR INPUT AS #1     Will not cause com routines to be
  519.                                           included. You should not link with
  520.                                           NOCOM.OBJ.
  521.  
  522.     When Linking with NOCOM.OBJ you must specify the /NOE switch so that LINK
  523.     will search the object file instead of the dictionaries it has created
  524.     to resolve conflicts. QuickCompile automatically selects this option for
  525.     you.
  526.  
  527.     Of course, if your program does use com routines, do not link with
  528.     NOCOM.OBJ.
  529.  
  530.     When MicroSoft packaged QuickBASIC 4.5, they failed to include the object
  531.     file "NOCOM.OBJ". If you order the program disk when you register
  532.     QuickCompile, you receive (free of charge) NOCOM.BAT and NOCOM.SRC. Run
  533.     NOCOM.BAT to create a copy of NOCOM.OBJ if you don't already have one.
  534.  
  535.  
  536.                                      NOEM.OBJ
  537.                           (No Floating Point Emulation
  538.                            Math Coprocessor installed.)
  539.  
  540.     When a program will always be run on a computer with an 8087, 80287, or
  541.     80387 math coprocessor chip, QuickBASIC's software emulation of the math 
  542.     chip's function are not necessary.
  543.  
  544.     Linking such programs with NOEM.OBJ reduces the size of the executable
  545.     file by excluding emulation routines and speeds program execution by
  546.     allowing the coprocessor to operate.
  547.     
  548.     When Linking with NOEM.OBJ you must specify the /NOE switch so that LINK
  549.     will search the object file instead of the dictionaries it has created
  550.     to resolve conflicts. QuickCompile automatically selects this option for
  551.     you.
  552.  
  553.     If there is a possibililty that a program will be run on a computer without
  554.     a math coprocessor, DO NOT link with NOEM.OBJ.
  555.  
  556.                                     
  557.                                     
  558.                                     
  559.                                     
  560.                                     
  561.                                     
  562.                                     - 9 -
  563.  
  564.  
  565.  
  566.                                   
  567.                                   SMALLERR.OBJ
  568.                                (No Error Messages)
  569.  
  570.     If your program has been tested, and you feel that QuickBASIC's Error
  571.     Messages are not necessary at run time, you may further reduce the size
  572.     of the .EXE file by linking with SMALLERR.OBJ.
  573.  
  574.     Linking with this file reduces program size about 1278 bytes by deleting
  575.     the text of error messages from your program. However, Error numbers will
  576.     still be displayed if a run time error does occur.
  577.  
  578.  
  579.     When Linking with SMALLERR.OBJ you must specify the /NOE switch so that
  580.     LINK will search the object file instead of the dictionaries it has
  581.     created to resolve conflicts. QuickCompile automatically selects this
  582.     option for you.
  583.  
  584.     We suggest that you always link the final version of your program with
  585.     SMALLERR.OBJ. You'll still get error numbers that can be looked up in the
  586.     QuickBASIC manual if an error ever occurs.
  587.  
  588.                           OPTIONAL UTILITY PROGRAMS
  589.     NOTE: Registered QuickCompile users who purchase the optional program
  590.     disk receive the following utility programs too.
  591.  
  592.                                EXISTS.BAS Module
  593.                         (Check for existance of a file)
  594.  
  595.     To help you avoid QuickBASIC's ON ERROR statements (and it effects on
  596.     program speed and file size), included on the optional program disk is 
  597.     a Basic Module for you to add to your own programs.
  598.  
  599.     EXISTS.BAS is used to determine if a file is present before your
  600.     program attempts to open it.
  601.  
  602.     To add this function to your program, load your program into the QB
  603.     Environment with the following line:
  604.  
  605.                               QB MYPROG.BAS /L QB
  606.  
  607.     Then, select "Load File" from the "File" menu and add EXISTS.BAS as a
  608.     module. Add the following declaration to your program.
  609.                        DECLARE FUNCTION Exists%(FileName$)
  610.  
  611.     The following is an example of how Exists may be used in a program.
  612.  
  613.                IF Exists%(FileName$) THEN
  614.                    PRINT FileName$; "File found..."
  615.                ELSE
  616.                    PRINT FileName$; "File not found..."
  617.                END IF
  618.  
  619.     EXISTS.BAS uses QuickBASIC's Call InterruptX routine to check for the
  620.     existence of the specified file. For this reason, you will need to link
  621.     with QB.LIB (the default QB library included with QuickBASIC).
  622.     Be certain to select QB.LIB as a library to link with when using
  623.     QuickCompile.
  624.      (cont.)
  625.                                     - 10 -
  626.  
  627.     
  628.     
  629.     
  630.     
  631.     We recommend that your programs should always check to see if a file is
  632.     present before trying to open it. This way, you can prevent user confusion
  633.     in case the file is not available.
  634.  
  635.     The EXISTS.BAS file is heavily commented so that you can see exactly
  636.     how it works. Interrupts are a great way to perform tasks that
  637.     QuickBASIC can't.
  638.  
  639.  
  640.  
  641.                                     CHK4QC
  642.                           
  643.                           Check for QuickCompile Headers
  644.     
  645.     A small utility is included to check your QuickBasic source code for the 
  646.     presence of QuickCompile headers. CHK4QC displays the version of 
  647.     QuickCompile used and the date that the header was written.
  648.     Note: All source code files must have been saved in ASCII.
  649.  
  650.                                   Using CHK4QC
  651.  
  652.     You can run CHK4QC by simply typing the program name at the command prompt
  653.     or use one of the switches after the program name. 
  654.  
  655.     EXAMPLE:
  656.  
  657.                CHK4QC /P              Will send output to printer.
  658.  
  659.     Valid Command Line Switches:
  660.  
  661.                /P - Sends the output to your printer
  662.                /? - Displays online help screen
  663.  
  664.     After running the program, a list of source code files (containing
  665.     QuickCompile Headers) in the current directory will be displayed on 
  666.     your monitor. If the /P switch is used, the output will be sent to the
  667.     printer instead. To check files in any directory, put CHK4QC in a
  668.     directory listed in your path statement and run CHK4QC from the desired
  669.     directory.
  670.  
  671.  
  672.  
  673.  
  674.  
  675.  
  676.  
  677.  
  678.                                     
  679.                                     
  680.                                     
  681.                                     
  682.                                     
  683.                                     
  684.                                     
  685.                                     
  686.                                     
  687.                                     
  688.                                     
  689.                                     - 11 -
  690.  
  691.                              
  692.                              
  693.                              
  694.                                       80X 
  695.                              
  696.                              EGA/VGA Monitor Utility
  697.  
  698.     80X is a small command line or batch file utility for changing the number
  699.     of lines displayed on EGA or VGA monitors in text mode.
  700.     
  701.     VGA users often find it useful to change to 50 (43 for EGA) line mode
  702.     before loading the QB Editor. This way, more lines of source can be
  703.     displayed at once.
  704.  
  705.                                 Using 80X
  706.  
  707.     First, place the 80X.COM file in a directory listed in the PATH
  708.     statement of your AUTOEXEC.BAT file.
  709.  
  710.     At the command line type:    80X <number of lines>
  711.     
  712.     Where <number of lines> is a number that is supported by
  713.     the installed monitor and graphics card.
  714.         25, 43, 80    For VGA
  715.         25, 43        For EGA
  716.  
  717.      The command   80X 50   would change the monitor to 50 line mode.
  718.  
  719.                                Batch File Usage
  720.  
  721.      You might wish to use 80X from a batch file to change to a certain
  722.      number of lines before loading a specified program, then back to another
  723.      when the program terminates.
  724.  
  725.      The following lines typed from the command prompt would create a batch
  726.      file titled QB50.BAT which will run the QB Editor in 50 line mode, and
  727.      then switch back to 25 line mode when QB is exited.
  728.  
  729.         COPY CON QB50.BAT
  730.         80X 50
  731.         QB %1 %2 %3 %4 %5
  732.         80X 25
  733.         <Ctrl-Z>
  734.  
  735.       Now you could type:    QB50 MYFILE.BAS /L MYLIB
  736.  
  737.       This would load MYFILE (with MYLIB quick library) into the QB editor 
  738.       in 50 line mode. When QB is exited, the monitor would return to 25 line
  739.       mode.
  740.       To have a source file execute in 25 line mode (while the QB editor is in
  741.       50 line mode), the following line should be inserted near the top of the
  742.       source code.
  743.                               WIDTH 80, 25
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.                                     - 12 -
  753.  
  754.  
  755.                           
  756.                           
  757.                           
  758.                                    FILETIME
  759.                            
  760.                            Time/Date Stamp Utility
  761.  
  762.     FileTime is a small, easy to use utility program for programmers who
  763.     wish to change the Date/Time Stamp on a group of files before
  764.     distribution.
  765.  
  766.                               Using FileTime
  767.  
  768.     First, place the FILETIME.COM file in a directory listed in the PATH
  769.     statement of your AUTOEXEC.BAT file.
  770.  
  771.     1.    Go to the directory that contains files that you wish to restamp.
  772.  
  773.     2.    Type FILETIME.
  774.  
  775.     3.    Use the cursor keys or mouse to move about the menu and mark files
  776.           to be restamped.
  777.           
  778.               Press the Space bar or double click the left mouse
  779.               button to mark a file.
  780.  
  781.               Pressing Escape will abort the program if necessary.
  782.               
  783.               Once the files that you wish to restamp have been
  784.               marked with a √, press F1 to continue.
  785.  
  786.     4.    At the prompt, enter the new Date to use. Just press Enter to use
  787.           the current system date.
  788.  
  789.     5.    At the prompt, enter the new Time to use. Just press Enter to use
  790.           the current system time.
  791.  
  792.     6.    At the prompt, press y or n to restamp the files with the Date
  793.           and Time that was just entered.
  794.  
  795.  
  796.     Disclaimer: The user is fully responsible for the use of these program.
  797.                 Thomas Software and the Authors cannot be held liable for
  798.                 any problems or situations that may arise from it's use.
  799.  
  800.                              TECHNICAL SUPPORT
  801.  
  802.   Technical support is available to registered users by mail at the
  803.   address below or by Email on Compuserve to: 71071,2166 or 75720,3376
  804.  
  805.                              Thomas Software        
  806.                              1375 Beasley Rd.
  807.                              Jackson, MS 39206
  808.  
  809.                                     - 13 -
  810.  
  811.  
  812.  
  813.  
  814.                        QuickCompile v1.0 REGISTRATION FORM
  815.  
  816.     Please print or type in the information on this form and mail it
  817.     with your $14.95 ShareWare registration fee to:
  818.  
  819.                               Thomas Software
  820.                               1375 Beasley Rd.
  821.                               Jackson, MS 39206
  822.  
  823.     Upon receipt of this form and registration fee, Thomas Software grants
  824.     the user a limited license to use this software. Registered users will
  825.     receive a registration code number.
  826.  
  827.     Please include an additional $10.00 for a disk of the latest version of
  828.     QuickCompile, as well as the utility programs listed in COMPILE.DOC.
  829.  
  830.                                USER INFORMATION
  831.  
  832.               Name:_________________________________________________
  833.  
  834.               Company:______________________________________________
  835.  
  836.               Address:______________________________________________
  837.  
  838.               ______________________________________________________
  839.  
  840.               City:_______________________  State:__________________
  841.  
  842.               Zip:_____________
  843.  
  844.     Amount Enclosed: [ ] $14.95 - Registration code only.
  845.                             or
  846.                      [ ] $24.95 - Registration code and disk.
  847.                                   Disk Size: [ ] 5 1/4" - 360K
  848.                                              [ ] 3 1/2" - 720K
  849.  
  850.                              COMPUTER INFORMATION
  851.                                   (optional)
  852.  
  853.     Brand:_______________________________________ Model:________________
  854.  
  855.         Dos Version:____________    QuickBasic Version:____________
  856.  
  857.               Processor:  [ ] 8088   [ ] 286   [ ] 386   [ ] 486
  858.  
  859.               Monitor: [ ] Mono   [ ] Herc   [ ] CGA   [ ] EGA   [ ] VGA
  860.  
  861.     Comments:____________________________________________________________
  862.  
  863.     _____________________________________________________________________
  864.  
  865.     _____________________________________________________________________
  866.  
  867.     _____________________________________________________________________
  868.  
  869.           By registering your copy of this software, you encourage the
  870.           authors to continue distributing useful programs via ShareWare.
  871.  
  872.