home *** CD-ROM | disk | FTP | other *** search
/ Jason Aller Floppy Collection / 66.img / TCPLUS-1.ZIP / README < prev    next >
Text File  |  1990-05-04  |  32KB  |  751 lines

  1.                    Welcome to Turbo C ++
  2.                    ---------------------
  3.  
  4. This README file contains important information about Turbo C++.
  5. For the latest information about Turbo C++, the accompanying
  6. programs, and the manuals, read this file in its entirety.
  7.  
  8.  
  9. TABLE OF CONTENTS
  10. -----------------
  11. 1.  How to Get Help
  12. 2.  Installation
  13. 3.  Features
  14. 4.  Important Information
  15. 5.  Testing Your Expanded Memory
  16. 6.  Corrections to the Documents
  17. 7.  TCTOUR
  18. 8.  Files on the Disks
  19.  
  20.  
  21.  1. HOW TO GET HELP
  22. -------------------
  23.  
  24.   If you have any problems, please read this file, the
  25.   HELPME!.DOC file, and the Turbo C++ manuals first. If you still
  26.   have a question and need assistance, help is available from
  27.   the following sources:
  28.  
  29.   1. Type GO BPROGB on the CompuServe bulletin board system for
  30.      instant access to the Borland forums with their libraries of
  31.      technical information and answers to common questions.
  32.  
  33.      If you are not a member of CompuServe, see the enclosed special
  34.      offer, and write for full details on how to receive a free
  35.      IntroPak containing a $15 credit toward your first month's on-
  36.      line charges.
  37.  
  38.   2. Check with your local software dealer or users' group.
  39.  
  40.   3. Write to us at the following address:
  41.  
  42.      Borland International
  43.      Turbo C Technical Support
  44.      1800 Green Hills Road
  45.      P.O. Box 660001
  46.      Scotts Valley, CA  95066-0001
  47.  
  48.      Please remember to include your serial number or we will be
  49.      unable to process your letter.
  50.  
  51.   4. If you have an urgent problem that cannot wait and you have sent
  52.      in the license agreement that came with the package, you may
  53.      call the Borland Technical Support Department at (408) 438-5300.
  54.      Please have the following information ready before calling:
  55.  
  56.      a. Product name and serial number on your original distribution
  57.         disk.  Please have your serial number ready or we will be
  58.         unable to process your call.
  59.  
  60.      b. Product version number. The version number for Turbo C++
  61.         can be displayed by pressing Alt-Space/A.
  62.  
  63.      c. Computer brand, model, and the brands and model numbers of
  64.         any additional hardware.
  65.  
  66.      d. Operating system and version number. (The version number can
  67.         be determined by typing VER at the MSDOS prompt.)
  68.  
  69.      e. Contents of your AUTOEXEC.BAT file.
  70.  
  71.      f. Contents of your CONFIG.SYS file.
  72.  
  73.  
  74. 2. INSTALLATION
  75. ---------------
  76.  
  77.   You MUST use the INSTALL program to install Turbo C++.
  78.   The files on the distribution disks are all archived and
  79.   have to be properly assembled.  You cannot do this by
  80.   hand!
  81.  
  82.   To start the installation, change your current drive to the one
  83.   that has the install program on it and type INSTALL.  You will
  84.   be given instructions in a box at the bottom of the screen for
  85.   each prompt. For example, if you will be installing from drive
  86.   A:, type:
  87.  
  88.     A:
  89.     INSTALL
  90.  
  91.   You should read the rest of this README file to get further
  92.   information about this release before you do the installation.
  93.  
  94. 3. FEATURES
  95. -----------
  96.  
  97.   - C++!  Turbo C++ offers you the full power of C++ programming,
  98.     implementing the entire C++ 2.0 language as defined by the AT&T
  99.     specification.  To help you get started, we're also including
  100.     C++ class libraries.
  101.  
  102.   - ANSI C!  A 100% implementation of the ANSI C standard.
  103.  
  104.   - Borland's new Programmer's Platform. The Programmer's Platform
  105.     is a new generation user interface; it goes beyond the old
  106.     integrated environment (IDE) to provide access to the full range of
  107.     programs and tools on your computer. It includes:
  108.  
  109.     -- mouse support
  110.  
  111.     -- multiple overlapping windows
  112.  
  113.     -- a multi-file editor
  114.  
  115.     -- user-configurable menu entries to run other programs
  116.       without leaving Turbo C++
  117.  
  118.   - VROOMM (overlay manager): VROOMM lets you overlay your code
  119.     without complexity. You select the code segments for
  120.     overlaying; VROOMM takes care of the rest, doing the work
  121.     needed to fit your code into 640K.
  122.  
  123.   - An online tour of the new Programmer's Platform.
  124.  
  125.   - Online hypertext help, with copy-and-paste program examples
  126.     for practically every function.
  127.  
  128.   - Many indispensable library functions, including heap checking
  129.     functions and a complete set of complex and BCD math functions.
  130.  
  131. 4. IMPORTANT INFORMATION
  132. ------------------------
  133.  
  134.   C++ STREAM I/O
  135.  
  136.   The standard libraries have all the functions needed for
  137.   the IOSTREAM libraries defined in the AT&T 2.0 spec.  If
  138.   you have code that uses the STREAM libraries from the 1.0
  139.   spec, you must link with the appropriate OLDSTRMx.LIB
  140.   file, where 'x' is replaced by the letter for the
  141.   appropriate memory model:
  142.  
  143.     oldstrms.lib -- small model
  144.     oldstrmc.lib -- compact model
  145.     oldstrmm.lib -- medium model
  146.     oldstrml.lib -- large model
  147.     oldstrmh.lib -- huge model
  148.  
  149.   EXAMPLE PROGRAMS
  150.  
  151.   When you are running any example programs that come with
  152.   .PRJ files, if you didn't use the standard directories when
  153.   you installed Turbo C++ you will have to change the .PRJ file
  154.   to reflect your actual directory setup.  Do this from inside
  155.   TC with Alt-O/D.
  156.  
  157.   Included in this release is source code to the GREP2MSG and
  158.   TASM2MSG filter programs (in EXAMPLES), which give an example of
  159.   how to write your own custom filter programs to use with the
  160.   Transfer Menu (see page 64 of the User's Guide).
  161.  
  162.   COMPILER AVAILABLE MEMORY
  163.  
  164.   To achieve better capacity and flexibility, Turbo C++ uses VROOMM,
  165.   which means that the reported "available memory" number (both with
  166.   the standalone compiler and in the integrated development environment)
  167.   reflects the actual amount of RAM available to VROOMM for the entire
  168.   compiler. What this means is that even when the reported available
  169.   memory approaches or is equal to zero, much larger files can still
  170.   be compiled at the expense of compilation speed. In the Programmer's
  171.   Platform, when memory available for VROOMM reaches zero, the compile
  172.   box will show "Swapping ...." as the amount of available memory; the
  173.   standalone compiler will merely report "Available memory 0" in this case.
  174.  
  175.  
  176.  
  177.   OVERLAYS AND ASSEMBLY LANGUAGE
  178.  
  179.   Just as all "C" modules to be linked into an overlaid executable must
  180.   be compiled with the -Y compiler switch, all assembly language modules
  181.   need to be assembled with the -O TASM switch. If an assembly file is
  182.   the result of a TCC compilation, TCC automatically passes -O to the
  183.   assembler whenever -Y is used. Modules written entirely in assembly
  184.   language must be assembled with the -O switch (using TASM version 2.0
  185.   or newer) if they are to be linked into an overlaid executable. Failure
  186.   to follow these rules may result in the overlaid program failing
  187.   unpredictably when run.
  188.  
  189.   IMPORTANT NOTES
  190.  
  191.   - If you use inline assembler in C++, TASM 1.0 may not be able
  192.     to assemble the generated code.  If you run into this problem,
  193.     you will need to update to version 2.0 of TASM.
  194.  
  195.   - Functions that return structures now take a hidden
  196.     parameter that contains the address where the returned
  197.     structure is to be placed.  If you are writing assembler
  198.     code to link with C code you must be sure to allow for
  199.     this extra parameter.
  200.  
  201.   - When debugging mouse application the Options|Debugging|Display
  202.     Swapping option should be set to "Always" for best results.
  203.  
  204.   - When running under DOS versions 2.0 or 2.1, you should not rename
  205.     TC, TCC, or TLINK.  They need to know their names to be able to
  206.     load their overlays.
  207.  
  208.   - TEMC will not allow a macro to contain multiple commands that return
  209.     exit codes.
  210.  
  211.   - C++ programs that use either of the stream libraries will not link
  212.     correctly if you compile with the -K command-line switch (default
  213.     char is unsigned) or with the corresponding option in the Programmer's
  214.     Platform ( Alt-Options/Compiler/Code Generation/Unsigned characters).
  215.  
  216.   - Example 2 for the signal() function in the Reference Guide uses
  217.     an extension to signal() that is not supported in C++, so the
  218.     example will not compile as a C++ program.
  219.  
  220.   - If you have selected Save Desktop in the Turbo C++ Programmer's
  221.     Platform, everything that you put into the clipboard will be saved
  222.     as part of the desktop.  After several sessions this may make
  223.     starting the Programmer's Platform take longer.  If this happens
  224.     to you (you will see the message "Loading Desktop" while the
  225.     Programmer's Platform is loading), you can speed things up by
  226.     deleting unneeded things from the clipboard.  Just select Alt-E/S
  227.     to show the clipboard, and start deleting.
  228.  
  229.   - In some rather unusual situations when stepping through
  230.     a program in the IDE you may get a message saying "Line
  231.     too complex".  This means that the Programmer's Platform
  232.     can't step past the line it is currently on.  To continue
  233.     stepping, you should move the cursor to the next line in
  234.     the program and press F4 (Go to Cursor).  If the line where
  235.     this message occurs is the last line in a function, use
  236.     the Call Stack (Ctrl-F3 or Alt-D/C) to see where the function
  237.     was called from, select the calling function (by moving the
  238.     highlight to it and pressing Enter), move the cursor to the
  239.     next line, and press F4.
  240.  
  241.   - If you change your keyboard settings using the Editor Commands 
  242.     choice in TCINST, you may lose some key assignments.  To avoid
  243.     this, use the following procedure:
  244.         1)  don't save the modifications to the EXE; instead invoke
  245.             TCINST with the name of your configuration file, by default
  246.             TCCONFIG.TC.
  247.         2)  create a file containing the following line:
  248.                Tab: SmartTab;
  249.             and invoke TEMC with the name of that file and the name
  250.             of your configuration file as arguments.
  251.     As an example, you can follow these exact steps:
  252.              CD \TC\BIN
  253.              TCINST TCCONFIG.TC
  254.          <make changes, save, and exit TCINST>
  255.          COPY CON TEMP.TEM
  256.              Tab: SmartTab;
  257.              <Ctrl-Z>
  258.              TEMC TEMP.TEM TCCONFIG.TC
  259.          
  260.  
  261. 5. Testing Your Expanded Memory: EMSTEST.COM
  262. --------------------------------------------
  263.  
  264.   Included with Turbo C++ is a program to test your Expanded Memory
  265.   hardware and software. If you have problems using Turbo C++ with
  266.   your EMS, type EMSTEST at the DOS prompt and follow the instructions.
  267.  
  268. 6.  Corrections to the Documents
  269. --------------------------------
  270.  
  271.   GETTING STARTED
  272.  
  273.   - Chapter 4, Page 61: The operator precedence and associativity
  274.     tables should be corrected to match the following information.
  275.     Note there are now sixteen precedence categories. Operators within
  276.     a category have the same precedence. Precedence goes from highest
  277.     to lowest; therefore, any operator in category 1 has precedence
  278.     over any operator in categories 2 through 16; any operator in
  279.     category 2 has precedence over any operator in categories 3
  280.     through 16, and so on.
  281.  
  282.  
  283.     Operators                            Associativity
  284.     --------------------------------------------------
  285.     1.  ( )  [ ]   ->   ::   .           Left to right
  286.     2.  !  ~  +  -  ++  --  &  *
  287.         (typecast)  sizeof  new  delete  Right to left
  288.     3.  .*   ->*                         Left to right
  289.     4.  *   /    %                       Left to right
  290.     5.  +   -                            Left to right
  291.     6.  <<  >>                           Left to right
  292.     7.  <   <=   >   >=                  Left to right
  293.     8.  ==  !=                           Left to right
  294.     9.  &                                Left to right
  295.     10. ^                                Left to right
  296.     11. |                                Left to right
  297.     12. &&                               Left to right
  298.     13. ||                               Left to right
  299.     14. ?: (conditional expression)      Right to left
  300.     15. =  *=  /=  %=  +=  -=  &=
  301.         ^=  |=  <<=  >>=                 Right to left
  302.     16. ,                                Left to right
  303.  
  304.  
  305.   USER'S GUIDE
  306.  
  307.   - Chapter 1, Page 69: The $TASM macro has another macro inside it; to
  308.     wit, $SAVE CUR.
  309.  
  310.   - Chapter 4: There is one new command-line compiler option: -V.
  311.  
  312.     The -V option controls the C++ virtual tables. You have four
  313.     variations of the -V option:
  314.  
  315.     -V      Smart C++ virtual tables
  316.     -Vs     Local C++ virtual tables
  317.     -V0     External C++ virtual tables
  318.     -V1     Public C++ virtual tables
  319.  
  320.     -V is equivalent to the Programmer's Platform command Smart C++ Virtual
  321.       Tables. Use it when you want to generate C++ virtual tables and
  322.       inline functions not expanded inline so that only one instance of a
  323.       given virtual table or inline function will be included in the
  324.       program. This produces the smallest and most efficient executables,
  325.       but uses .OBJ and .ASM extensions only available with TLINK 3.0 and
  326.       TASM 2.0 or newer.
  327.  
  328.     -Vs is equivalent to the Programmer's Platform command Local C++ Virtual
  329.       Tables. Use it when you want Turbo C++ to generate local virtual
  330.       tables and inline functions not expanded inline such that each module
  331.       gets its own private copy of each virtual table or inline function it
  332.       uses. This option uses only standard .OBJ (and .ASM) constructs, but
  333.       produces larger executables.
  334.  
  335.     -V0 and -V1 cooperate to produce global virtual tables.  If you don't
  336.       want to use the Smart or Local options (-V or -Vs), you can use -V0
  337.       and -V1 to produce and reference global virtual tables.  -V0 generates
  338.       external references to virtual tables and inline functions not
  339.       expanded inline.  -V1 produces global tables and inline functions.
  340.       One of the modules in the program must be compiled with the -V1 option
  341.       to supply the definitions for the virtual tables and inline functions.
  342.       All other modules should be compiled with the -V0 option to refer to
  343.       that Public copy of the virtual tables and inline functions.
  344.  
  345.   - Appendix A, Page 230: The WindowsMenu macro is now called the
  346.       WindowMenu macro (no s). It works as documented.
  347.  
  348.   PROGRAMMER'S GUIDE
  349.  
  350.   - In Chapter 1, on page 75: the operator precedence table should be
  351.     changed in accordance with the notes above for the Getting Started
  352.     manual.
  353.  
  354.   - In Chapter 4, on page 200, just after the table, add the following
  355.     information. It replaces the list of information on segment pointers
  356.     on pages 199-200, and also replaces the two sentences (on page 200,
  357.     following the table) describing the _seg modifier.
  358.  
  359.       Segment pointers
  360.  
  361.       Use _seg in segment pointer type declarators. The resulting pointers
  362.       are 16-bit segment pointers. The syntax for _seg is:
  363.  
  364.         <datatype> _seg *<identifier> ;
  365.  
  366.       For example,
  367.  
  368.         int _seg *name;
  369.  
  370.       Any indirection through <identifier> has an assumed offset of 0. In
  371.       arithmetic involving segment pointers the following rules hold true:
  372.  
  373.       1. You can't use the ++, --, +=, or -= operators with segment
  374.          pointers.
  375.  
  376.       2. You cannot subtract one segment pointer from another.
  377.  
  378.       3. When adding a near pointer to a segment pointer, the result is a
  379.          far pointer that is formed by using the segment from the segment
  380.          pointer and the offset from the near pointer. Therefore, the two
  381.          pointers must either point to the same type, or one must be a pointer
  382.          to void. There is no multiplication of the offset regardless of the
  383.          type pointed to.
  384.  
  385.       4. When a segment pointer is used in an indirection expression, it is
  386.          also implicitly converted to a far pointer.
  387.  
  388.       5. When adding or subtracting an integer operand to or from a segment
  389.          pointer, the result is a far pointer, with the segment taken from
  390.          the segment pointer and the offset found by multiplying the size
  391.          of the object pointed to by the integer operand. The arithmetic is
  392.          performed as if the integer were added to or subtracted from the far
  393.          pointer.
  394.  
  395.       6. Segment pointers can be assigned, initialized, passed into and out
  396.          of functions, compared and so forth. (Segment pointers are compared
  397.          as if their values were unsigned integers.) In other words, other
  398.          than the above restrictions, they are treated exactly like any other
  399.          pointer.
  400.  
  401.  
  402.   - Also in Chapter 4, page 200, just before "Declaring functions to be
  403.     near or far," add the following text:
  404.  
  405.       Declaring far objects
  406.  
  407.       You can declare far objects in Turbo C++. For example,
  408.  
  409.         int far x = 5;
  410.         int far z;
  411.         extern int far y = 4;
  412.         static long j;
  413.  
  414.       Turbo C++ creates a separate segment for each far object. The
  415.       command-line compiler options -zE, -zF, and -zH (which can also be set
  416.       using #pragma option) affect the far segment name, class, and group,
  417.       respectively. When you change them with #pragma option, you can change
  418.       them at any time and they apply to any ensuing far object declarations.
  419.       Thus you could use the following sequence to create a far object in a
  420.       specific segment:
  421.  
  422.         #pragma option -zEmysegment -zHmygroup -zFmyclass
  423.         int far x;
  424.         #pragma option -zE* -zH* -zF*
  425.  
  426.       This will put x in segment MYSEGMENT 'MYCLASS' in the group 'MYGROUP',
  427.       then reset all of the far object items to the default values. Note
  428.       that by using these options, several far objects can be forced into a
  429.       single segment:
  430.  
  431.         #pragma option -zEcombined -zFmyclass
  432.         int far x;
  433.         double far y;
  434.         #pragma option -zE* -zF*
  435.  
  436.       Both x and y will appear in the segment COMBINED 'MYCLASS' with no
  437.       group.
  438.  
  439.   LIBRARY REFERENCE
  440.  
  441.   - The examples printed in the Library Reference may not
  442.     necessarily match what's in the help file and on the
  443.     distribution disks. The help file and distribution disk
  444.     examples are the most current.
  445.  
  446.   - Page 43: The return value for function bioskey has been changed. For
  447.     subfunction ONE the return value is zero if no key is waiting,
  448.     0xFFFF(-1) if control-break was pressed, or the normal code for
  449.     any other key.
  450.  
  451. 7. TCTOUR
  452. ---------
  453.  
  454.   TCTOUR is a visual introduction to the new Programmer's Platform.
  455.   Since the Programmer's Platform is Borland's newest interface,
  456.   taking the tour is time well spent even if you are already familiar
  457.   with other Borland products.
  458.  
  459.   To start the tour, type "TCTOUR" from the DOS prompt.
  460.  
  461.   - TCTOUR remembers what lessons a user has completed, and if
  462.     you quit a lesson before completing it, what screen # you last saw.
  463.     This information is stored in a .USR file, and can be recalled by
  464.     starting TCTOUR again and typing your user name at the prompt just
  465.     after the color rainbow.
  466.   
  467.     Lessons that a user has completed should show up without shading
  468.     on the main TCTOUR menu.  Only new users (no .USR file) get the
  469.     excursion through "Using Tour."
  470.  
  471.   - The Navigator can be pulled up within any lesson file and within
  472.     "Using TCTOUR", but nowhere else.  It is pulled up by pressing the
  473.     Control key, which allows you to move forward, backward, to the
  474.     beginning of a lesson, to the end of a lesson, to the lesson summary,
  475.     to the main menu, to get a reminder, to quit. Ctrl-B (backwards) is
  476.     disabled when you are on the first slide of a lesson.
  477.  
  478.   - Hints (or Reminders) pop up in any lesson files and in "Using TCTOUR".
  479.     They pop up if:
  480.         1) you wait 30 - 60 seconds before doing any action
  481.         2) you press Ctrl-R
  482.         3) you make an incorrect action
  483.  
  484. 8. FILES ON THE DISKS
  485. ---------------------
  486.  
  487.   DISK 1
  488.   ------
  489.   INSTALL   EXE - Installation program
  490.   README    COM - Reads this README
  491.   UNZIP     EXE - Program to unzip the .ZIP files
  492.   HELP      CA2 - File used by install program to create TCHELP.TCH
  493.  
  494.   TOUR      ZIP - Turbo C++ demonstration program
  495.      TCTOUR    EXE - Demonstration program
  496.      TCTOUR    OVL - Overlay for TCTOUR.EXE
  497.      TCTOUR0   CBT - Data file for demonstration program
  498.      TCTOUR1   CBT - Data file for demonstration program
  499.      TCTOUR2   CBT - Data file for demonstration program
  500.      TCTOUR3   CBT - Data file for demonstration program
  501.      TCTOUR_M  CBT - Data file for demonstration program
  502.      TCTOUR_P  CBT - Data file for demonstration program
  503.      TCTOUR_S  CBT - Data file for demonstration program
  504.      TCTOUR_U  CBT - Data file for demonstration program
  505.  
  506.   README - This file
  507.  
  508.   DISK 2
  509.   ------
  510.   TC        CA1 - File used by install program to create TC.EXE
  511.  
  512.   DISK 3
  513.   ------
  514.   HELP      CA1 - File used by install program to create TCHELP.TCH
  515.  
  516.   DISK 4
  517.   ------
  518.   TC        CA2 - File used by install program to create TC.EXE
  519.  
  520.   TCALC     ZIP -  Tcalc sources and doc
  521.      TCALC     C   - TurboCalc main program source code
  522.      TCALC     DOC - TurboCalc documentation
  523.      TCALC     H   - The header file for TurboCalc
  524.      TCALC     PRJ - The TurboCalc project file
  525.      TCDISPLY  C   - TurboCalc screen display source code
  526.      TCINPUT   C   - TurboCalc input routines source code
  527.      TCOMMAND  C   - TurboCalc commands source code
  528.      TCPARSER  C   - TurboCalc input parser source code
  529.      TCUTIL    C   - TurboCalc utilities source code
  530.  
  531.   TCC       ZIP - Command-line compiler
  532.      TCC       EXE - Command-line version of Turbo C++ Compiler
  533.  
  534.  
  535.   DISK 5
  536.   ------
  537.   BGI       ZIP - Graphics drivers
  538.      ATT       BGI - Graphics driver for ATT400 graphics card
  539.      BGIDEMO   C   - Graphics demonstration program
  540.      BGIOBJ    EXE - Conversion program for fonts and drivers
  541.      CGA       BGI - Graphics driver for CGA
  542.      EGAVGA    BGI - Graphics driver for EGA and VGA
  543.      GOTH      CHR - Font for gothic character set
  544.      HERC      BGI - Graphics driver for Hercules
  545.      IBM8514   BGI - Graphics driver for IBM 8514 graphics card
  546.      LITT      CHR - Font for small character set
  547.      PC3270    BGI - Graphics driver for PC3270
  548.      SANS      CHR - Font for sans serif character set
  549.      TRIP      CHR - Font for triplex character set
  550.  
  551.   BIN1      ZIP - Miscellaneous binary files
  552.      CPP       EXE - Turbo C++ preprocessor
  553.      EMSTEST   COM - Utility program for detecting expanded memory
  554.      MAKE      EXE - Program for managing projects
  555.      TCINST    EXE - Installation program for TC.EXE
  556.      TLIB      EXE - Borland Turbo Librarian
  557.      TLINK     EXE - Borland Turbo Linker
  558.  
  559.   BIN2      ZIP
  560.      GREP      COM - Turbo GREP program
  561.      GREP2MSG  EXE - GREP filter program for IDE
  562.      OBJXREF   COM - Object file cross-reference utility
  563.      PRJCNVT   EXE - Utility to convert from Turbo C 2.x project files
  564.                      to Turbo C++ project files
  565.      TASM2MSG  EXE - TASM filter program for IDE
  566.      TEMC      EXE - Turbo editor macro compiler
  567.      THELP     COM - Pop-up utility to access TCHELP.TCH
  568.      TOUCH     COM - Program that updates a file's date and time
  569.      TRIGRAPH  EXE - Trigraph conversion utility
  570.  
  571.  
  572.   DISK 6
  573.   ------
  574.   HLIB      ZIP - Huge model libraries
  575.      C0H       OBJ - Huge model startup code
  576.      CH        LIB - Huge model run-time library
  577.      MATHH     LIB - Huge model math library
  578.      OLDSTRMH  LIB - C++ 1.x stream library for huge model
  579.  
  580.   LLIB      ZIP - Large model libraries
  581.      C0L       OBJ - Large model startup code
  582.      CL        LIB - Large model run-time library
  583.      MATHL     LIB - Large model math library
  584.      OLDSTRML  LIB - C++ 1.x stream library for large model
  585.  
  586.   SLIB      ZIP - Small model libraries
  587.      C0S       OBJ - Small model startup code
  588.      C0T       OBJ - Tiny model startup code
  589.      CS        LIB - Small model run-time library
  590.      MATHS     LIB - Small model math library
  591.      OLDSTRMS  LIB - C++ 1.x stream library for small model
  592.  
  593.   STARTUP   ZIP - Startup code files
  594.      BUILD-C0  BAT - Batch file for building the startup code modules
  595.      C0        ASM - Assembler source for startup code
  596.      RULES     ASI - Assembler include file for interfacing with
  597.                      Turbo C++
  598.  
  599.  
  600.   DISK 7
  601.   ------
  602.   CLIB      ZIP - Compact model libraries
  603.      C0C       OBJ - Compact model startup code
  604.      CC        LIB - Compact model run-time library
  605.      MATHC     LIB - Compact model math library
  606.      OLDSTRMC  LIB - C++ 1.x stream library for compact model
  607.  
  608.   EXAMPLES  ZIP - Example programs
  609.      BARCHART  C   - C example file
  610.      CPASDEMO  C   - C example module for the Turbo Pascal - Turbo C++
  611.                      interface demonstration
  612.      CPASDEMO  PAS - Pascal program that demonstrates Turbo Pascal -
  613.                      Turbo C++ interface
  614.      CIRCLE    CPP - C++ example file
  615.      CIRCLE    PRJ - Project file for CIRCLE.CPP
  616.      CTOPAS    CFG - Command-line configuration file for Turbo Pascal -
  617.                      Turbo C++ interface
  618.      CTOPAS    PRJ - Project file for use with TC.EXE that
  619.                      creates Turbo C++ modules in the correct format
  620.                      for linking with Turbo Pascal programs
  621.      DCOPY     CPP - C++ example file
  622.      DEF       CPP - C++ example module used by DICTION.CPP
  623.      DEF       H   - Header file for DEF.CPP
  624.      DEF2      CPP - C++ example - another version of DEF.CPP
  625.      DEF2      H   - Header file for DEF.CPP
  626.      DICTION   CPP - C++ example program
  627.      DICTION   H   - Header file for DICTION.CPP
  628.      DYNPOINT  CPP - C++ example file
  629.      DYNPOINT  PRJ - Project file for DYNPOINT.CPP
  630.      EX??????  PRJ - C++ example programs
  631.      EX??????  PRJ - Project files for C++ example programs
  632.      FIGDEMO   CPP - C++ example file
  633.      FIGDEMO   PRJ - Project file for FIGDEMO.CPP
  634.      FIGURES   CPP - C++ example file
  635.      FIGURES   H   - Header file for FIGURES.CPP
  636.      FILTER    H   - Header file for TASM2MSG.C and GREP2MSG.C
  637.      GAME      C   - C example - simulated baseball game
  638.      GETOPT    C   - Parses options in command line
  639.      GREP2MSG  C   - Example program for Turbo C++ filters
  640.      HELLO     C   - Example Turbo C++ program
  641.      INTRO???  C   - Examples from Getting Started manual
  642.      LIST      CPP - C++ example program - linked list implementation
  643.      LIST      H   - Header file for LIST.CPP
  644.      LIST2     CPP - Another version of LIST.CPP
  645.      LIST2     H   - Header file for LIST2.CPP
  646.      LISTDEMO  CPP - C++ example file
  647.      LISTDEMO  PRJ - Project file for LISTDEMO.CPP
  648.      MATHERR   C   - Source code for handling math library exceptions
  649.      MCIRCLE   CPP - C++ example file
  650.      MCIRCLE   PRJ - Project file for MCIRCLE.CPP
  651.      PIXEL     CPP - C++ example file
  652.      PIXEL     PRJ - Project file for PIXEL.CPP
  653.      PLANETS   C   - C++ graphics example
  654.      PLOTEMP   C   - C graphics example
  655.      PLOTEMP1  C   - C graphics example - bar graphs
  656.      PLOTEMP2  C   - C example - modification of PLOTEMP1.C
  657.      PLOTEMP3  C   - C example - modification of PLOTEMP2.C
  658.      PLOTEMP4  C   - C example - modification of PLOTEMP3.C
  659.      PLOTEMP5  C   - C example - modification of PLOTEMP4.C
  660.      PLOTEMP6  C   - C example - modification of PLOTEMP5.C
  661.      POINT     CPP - C++ example program
  662.      POINT     H   - Header file for POINT.CPP
  663.      POINT2    CPP - C++ example program
  664.      SALESTAG  C   - C example from Chapter 4 of Getting Started
  665.      SOLAR     C   - C example from Chapter 4 of Getting Started
  666.      STACK     CPP - C++ example program - stack implementation
  667.      STACK     H   - Header file for STACK.CPP
  668.      STACK2    CPP - Another version of STACK.CPP
  669.      STACK2    H   - Header file for STACK.CPP
  670.      STRING    CPP - C++ example program
  671.      TASM2MSG  C   - Example program for Turbo C++ filters
  672.      VCIRC     CPP - C++ example program
  673.      VCIRC     PRJ - Project file for VCIRC.CPP
  674.      VPOINT    CPP - C++ example program
  675.      VPOINT    H   - Header file for VPOINT.CPP
  676.      XSTRING   CPP - C++ example program
  677.  
  678.   INCLUDE   ZIP - Turbo C++ header files
  679.      ????????  H   - Header files
  680.  
  681.   MLIB      ZIP - Medium model libraries
  682.      C0M       OBJ - Medium model startup code
  683.      CM        LIB - Medium model run-time library
  684.      MATHM     LIB - Medium model math library
  685.      OLDSTRMM  LIB - C++ 1.x stream library for medium model
  686.  
  687.  
  688.   DISK 8
  689.   ------
  690.   DOC       ZIP - Miscellaneous documentation
  691.      HELPME!   DOC - Answers to commonly asked questions
  692.      OLDSTR    DOC - Information about C++ 1.x streams
  693.      UTIL      DOC - Information about Turbo C++ utilities
  694.      THELP     DOC - Information about THELP.EXE
  695.  
  696.   CLASSEXM  ZIP - C++ class library example files
  697.      DIRECTRY  CPP - Directory class example file
  698.      DIRECTRY  H   - Header file for DIRECTRY.CPP
  699.      DIRECTRY  PRJ - Project file for DIRECTRY.CPP
  700.      FILEDATA  CPP - FileData class example file
  701.      FILEDATA  H   - Header file for FILEDATA.CPP
  702.      LOOKUP    CPP - Lookup table example
  703.      LOOKUP    PRJ - Project file for LOOKUP.CPP
  704.      QUEUETST  CPP - Queue class example file
  705.      QUEUETST  PRJ - Project file for QUEUETST.CPP
  706.      REVERSE   CPP - String class example file
  707.      REVERSE   PRJ - Project file for REVERSE.CPP
  708.      STRNGMAX  CPP - String class example file
  709.      STRNGMAX  PRJ - Project file for STRNGMAX.CPP
  710.      TESTDIR   CPP - Directory example file
  711.  
  712.   CLASSINC  ZIP - Include files for C++ class library
  713.      ????????  H   - Header files
  714.  
  715.   CLASSLIB  ZIP - C++ class library
  716.      TCLASSS   LIB - Library file for C++ classes
  717.  
  718.   CLASSSRC  ZIP - Source files to C++ class library
  719.      ABSTARRY  CPP - Abstract array class definitions
  720.      ARRAY     CPP - Basic array class definitions
  721.      ASSOC     CPP - Association class (used by dictionary class)
  722.      BAG       CPP - Bag class definitions
  723.      BUILD     BAT - Batch file for building class library
  724.      CLASSLIB  DOC - C++ class library documentation
  725.      CLASSLIB  RSP - Response file for building class library
  726.      COLLECT   CPP - Ordered collection class definitions
  727.      CONTAIN   CPP - Container class definitions
  728.      DBLLIST   CPP - Doubly linked list class definitions
  729.      DEQUE     CPP - Dequeue definitions for queue class
  730.      DICT      CPP - Dictionary class definitions
  731.      HASHTBL   CPP - Hash table class definitions
  732.      LDATE     CPP - Date class definitions
  733.      LIST      CPP - List class definitions
  734.      LTIME     CPP - Time class definitions
  735.      OBJECT    CPP - Base class for other objects
  736.      QUEUE     CPP - Queue class definitions
  737.      SET       CPP - Set class definitions
  738.      SORTABLE  CPP - Sorted table class definitions
  739.      SORTARRY  CPP - Sorted array class definitions
  740.      STACK     CPP - Stack class definitions
  741.      STRNG     CPP - String class definitions
  742.  
  743.   XLIB      ZIP - Math and utility libraries
  744.      EMU       LIB - 8087 emulator library
  745.      FP87      LIB - 8087 library
  746.      GRAPHICS  LIB - Graphics library
  747.      OVERLAY   LIB - Overlays library
  748.      WILDARGS  OBJ - Object code for module to expand wildcard arguments
  749.  
  750.  
  751.