328 lines
13 KiB
Plaintext
328 lines
13 KiB
Plaintext
Welcome to Turbo C ++
|
||
---------------------
|
||
|
||
This README file contains important information about Turbo C++.
|
||
For the latest information about Turbo C++, the accompanying
|
||
programs, and the manuals, read this file in its entirety.
|
||
|
||
|
||
TABLE OF CONTENTS
|
||
-----------------
|
||
1. How to Get Help
|
||
2. Installation
|
||
3. Features
|
||
4. Important Information
|
||
5. Testing Your Expanded Memory
|
||
6. Corrections to the Documents
|
||
7. TCTOUR
|
||
|
||
|
||
1. HOW TO GET HELP
|
||
-------------------
|
||
|
||
If you have any problems, please read this file, the HELPME!.DOC
|
||
file, and the Turbo C++ manuals first. If you still have a question
|
||
and need assistance, help is available from the following sources:
|
||
|
||
1. Type GO BPROGB on the CompuServe bulletin board system for
|
||
instant access to the Borland forums with their libraries of
|
||
technical information and answers to common questions.
|
||
|
||
If you are not a member of CompuServe, see the enclosed special
|
||
offer, and write for full details on how to receive a free
|
||
IntroPak containing a $15 credit toward your first month's on-
|
||
line charges.
|
||
|
||
2. Check with your local software dealer or users' group.
|
||
|
||
3. Write to us at the following address:
|
||
|
||
Borland International
|
||
Turbo C Technical Support
|
||
1800 Green Hills Road
|
||
P.O. Box 660001
|
||
Scotts Valley, CA 95066-0001
|
||
|
||
Please remember to include your serial number or we will be
|
||
unable to process your letter.
|
||
|
||
4. If you have an urgent problem that cannot wait and you have sent
|
||
in the license agreement that came with the package, you may
|
||
call the Borland Technical Support Department at (408) 438-5300.
|
||
Please have the following information ready before calling:
|
||
|
||
a. Product name and serial number on your original distribution
|
||
disk. Please have your serial number ready or we will be
|
||
unable to process your call.
|
||
|
||
b. Product version number. The version number for Turbo C++
|
||
can be displayed by pressing Alt-Space/A.
|
||
|
||
c. Computer brand, model, and the brands and model numbers of
|
||
any additional hardware.
|
||
|
||
d. Operating system and version number. (The version number can
|
||
be determined by typing VER at the MSDOS prompt.)
|
||
|
||
e. Contents of your AUTOEXEC.BAT file.
|
||
|
||
f. Contents of your CONFIG.SYS file.
|
||
|
||
|
||
2. INSTALLATION
|
||
---------------
|
||
|
||
You MUST use the INSTALL program to install Turbo C++.
|
||
The files on the distribution disks are all archived and
|
||
have to be properly assembled. You cannot do this by
|
||
hand!
|
||
|
||
To start the installation, change your current drive to the one
|
||
that has the install program on it and type INSTALL. You will
|
||
be given instructions in a box at the bottom of the screen for
|
||
each prompt. For example, if you will be installing from drive
|
||
A:, type:
|
||
|
||
A:
|
||
INSTALL
|
||
|
||
You should read the rest of this README file to get further
|
||
information about this release before you do the installation.
|
||
|
||
3. FEATURES
|
||
-----------
|
||
|
||
- C++! Turbo C++ offers you the full power of C++ programming,
|
||
implementing the entire C++ 2.0 language as defined by the AT&T
|
||
specification. To help you get started, we're also including
|
||
C++ class libraries.
|
||
|
||
- ANSI C! A 100% implementation of the ANSI C standard.
|
||
|
||
- Borland's Programmer's Platform. The Programmer's Platform belongs
|
||
to the next generation of user interfaces; it goes beyond the old
|
||
integrated environment (IDE) to provide access to the full range of
|
||
programs and tools on your computer. It includes:
|
||
|
||
-- mouse support
|
||
|
||
-- multiple overlapping windows
|
||
|
||
-- a multi-file editor
|
||
|
||
-- user-configurable menu entries to run other programs
|
||
without leaving Turbo C++
|
||
|
||
- VROOMM (overlay manager): VROOMM lets you overlay your code
|
||
without complexity. You select the code segments for
|
||
overlaying; VROOMM takes care of the rest, doing the work
|
||
needed to fit your code into 640K.
|
||
|
||
- An online tour of the Programmer's Platform.
|
||
|
||
- Online hypertext help, with copy-and-paste program examples
|
||
for practically every function.
|
||
|
||
- Many indispensable library functions, including heap checking
|
||
functions and a complete set of complex and BCD math functions.
|
||
|
||
- Note: The list of files is now contained in a separate file
|
||
called FILELIST.DOC, which will appear in the target
|
||
directory you specify during installation.
|
||
|
||
4. IMPORTANT INFORMATION
|
||
------------------------
|
||
|
||
C++ STREAM I/O
|
||
|
||
The standard libraries have all the functions needed for
|
||
the IOSTREAM libraries defined in the AT&T 2.0 spec. If
|
||
you have code that uses the STREAM libraries from the 1.0
|
||
spec, you must link with the appropriate OLDSTRMx.LIB
|
||
file, where 'x' is replaced by the letter for the
|
||
appropriate memory model:
|
||
|
||
oldstrms.lib -- small model
|
||
oldstrmc.lib -- compact model
|
||
oldstrmm.lib -- medium model
|
||
oldstrml.lib -- large model
|
||
oldstrmh.lib -- huge model
|
||
|
||
EXAMPLE PROGRAMS
|
||
|
||
When you are running any example programs that come with
|
||
.PRJ files, if you didn't use the standard directories when
|
||
you installed Turbo C++ you will have to change the .PRJ file
|
||
to reflect your actual directory setup. Do this from inside the
|
||
Turbo C++ IDE with Alt-O|D.
|
||
|
||
Included in this release is source code to the GREP2MSG and
|
||
TASM2MSG filter programs (in EXAMPLES), which give an example of
|
||
how to write your own custom filter programs to use with the
|
||
Transfer Menu.
|
||
|
||
COMPILER AVAILABLE MEMORY
|
||
|
||
To achieve better capacity and flexibility, Turbo C++ uses VROOMM,
|
||
which means that the reported "available memory" number (both with
|
||
the standalone compiler and in the integrated development environment)
|
||
reflects the actual amount of RAM available to VROOMM for the entire
|
||
compiler. What this means is that even when the reported available
|
||
memory approaches or is equal to zero, much larger files can still
|
||
be compiled at the expense of compilation speed. In the Programmer's
|
||
Platform, when memory available for VROOMM reaches zero, the compile
|
||
box will show "Swapping ...." as the amount of available memory; the
|
||
standalone compiler will merely report "Available memory 0" in this case.
|
||
|
||
OVERLAYS AND ASSEMBLY LANGUAGE
|
||
|
||
Just as all "C" modules to be linked into an overlaid executable must
|
||
be compiled with the -Y compiler switch, all assembly language modules
|
||
need to be assembled with the -O TASM switch. If an assembly file is
|
||
the result of a TCC compilation, TCC automatically passes -O to the
|
||
assembler whenever -Y is used. Modules written entirely in assembly
|
||
language must be assembled with the -O switch (using TASM version 2.0
|
||
or newer) if they are to be linked into an overlaid executable. Failure
|
||
to follow these rules may result in the overlaid program failing
|
||
unpredictably when run.
|
||
|
||
LINKING C++ WITH C
|
||
|
||
Linking C++ modules with C modules requires the use of a linkage
|
||
specification. Prototypes for C functions within C++ modules must
|
||
be in one of the following forms:
|
||
extern "C" declaration
|
||
extern "C" { declarations }
|
||
For example, if a C module contains functions "char *SCopy(char*, char*);"
|
||
and "void ClearScreen(void)", they must be declared in a C++ module in
|
||
one of the following ways:
|
||
extern "C" char *SCopy(char*, char*);
|
||
extern "C" void ClearScreen(void);
|
||
or
|
||
extern "C" {
|
||
char *SCopy(char*, char*)
|
||
void ClearScreen(void);
|
||
}
|
||
Failure to do so will result in "Undefined symbol" errors during link.
|
||
For further examples, see the standard header files. There's also a more
|
||
in-depth explanation in the Programmer's Guide.
|
||
|
||
IMPORTANT NOTES
|
||
|
||
- If you use inline assembler in C++, TASM 1.0 may not be able
|
||
to assemble the generated code. If you run into this problem,
|
||
you will need to update to version 2.0 of TASM.
|
||
|
||
- Functions that return structures now take a hidden
|
||
parameter that contains the address where the returned
|
||
structure is to be placed. If you are writing assembler
|
||
code to link with C code you must be sure to allow for
|
||
this extra parameter.
|
||
|
||
- When debugging a mouse application the Options|Debugging|Display
|
||
Swapping option should be set to "Always" for best results.
|
||
|
||
- When running under DOS versions 2.0 or 2.1, you should not rename
|
||
TC, TCC, or TLINK. They need to know their names to be able to
|
||
load their overlays.
|
||
|
||
- TEMC will not allow a macro to contain multiple commands that return
|
||
exit codes.
|
||
|
||
- If you have selected Save Desktop in the Turbo C++ Programmer's
|
||
Platform, everything that you put into the clipboard will be saved
|
||
as part of the desktop. After several sessions this may make
|
||
starting the Programmer's Platform take longer. If this happens
|
||
to you (you will see the message "Loading Desktop" while the
|
||
Programmer's Platform is loading), you can speed things up by
|
||
deleting unneeded things from the clipboard. Just select Alt-E|S
|
||
to show the clipboard, and start deleting.
|
||
|
||
- In some rather unusual situations when stepping through
|
||
a program in the IDE you may get a message saying "Line
|
||
too complex". This means that the Programmer's Platform
|
||
can't step past the line it is currently on. To continue
|
||
stepping, you should move the cursor to the next line in
|
||
the program and press F4 (Go to Cursor). If the line where
|
||
this message occurs is the last line in a function, use
|
||
the Call Stack (Ctrl-F3 or Alt-D|C) to see where the function
|
||
was called from, select the calling function (by moving the
|
||
highlight to it and pressing Enter), move the cursor to the
|
||
next line, and press F4.
|
||
|
||
- If you change your keyboard settings using the Editor Commands
|
||
choice in TCINST, you may lose some key assignments. To avoid
|
||
this, use the following procedure:
|
||
1) don't save the modifications to the EXE; instead invoke
|
||
TCINST with the name of your configuration file, by default
|
||
TCCONFIG.TC.
|
||
2) create a file containing the following line:
|
||
Tab: SmartTab;
|
||
and invoke TEMC with the name of that file and the name
|
||
of your configuration file as arguments.
|
||
As an example, you can follow these exact steps:
|
||
CD \TC\BIN
|
||
TCINST TCCONFIG.TC
|
||
<make changes, save, and exit TCINST>
|
||
COPY CON TEMP.TEM
|
||
Tab: SmartTab;
|
||
<Ctrl-Z>
|
||
TEMC TEMP.TEM TCCONFIG.TC
|
||
|
||
- If a directory contains only one project file, invoking Turbo C++ without
|
||
any parameters will open that project. If this behavior is not
|
||
desired, a second 'dummy' project file must be placed in that
|
||
directory or the current project file must be removed.
|
||
|
||
- Using the 'registerbgidriver' function may result in the following
|
||
link error: "Segment _TEXT exceeds 64K". In order to avoid this,
|
||
it is recommended that the 'registerfarbgidriver' function be used
|
||
instead. Please see UTIL.DOC for a more complete discussion of this
|
||
subject.
|
||
|
||
5. Testing Your Expanded Memory: EMSTEST.COM
|
||
--------------------------------------------
|
||
|
||
Included with Turbo C++ is a program to test your Expanded Memory
|
||
hardware and software. If you have problems using Turbo C++ with
|
||
your EMS, type EMSTEST at the DOS prompt and follow the instructions.
|
||
|
||
6. Corrections to the Documents
|
||
--------------------------------
|
||
|
||
There are no corrections needed currently.
|
||
|
||
7. TCTOUR
|
||
---------
|
||
|
||
TCTOUR is a visual introduction to the Programmer's Platform.
|
||
Since the Programmer's Platform is Borland's newest interface,
|
||
taking the tour is time well spent even if you are already familiar
|
||
with other Borland products.
|
||
|
||
To start the tour, type "TCTOUR" from the DOS prompt.
|
||
|
||
- TCTOUR remembers what lessons a user has completed, and if
|
||
you quit a lesson before completing it, what screen # you last saw.
|
||
This information is stored in a .USR file, and can be recalled by
|
||
starting TCTOUR again and typing your user name at the prompt just
|
||
after the color rainbow.
|
||
|
||
Lessons that a user has completed should show up without shading
|
||
on the main TCTOUR menu. Only new users (no .USR file) get the
|
||
excursion through "Using Tour."
|
||
|
||
- The Navigator can be pulled up within any lesson file and within
|
||
"Using TCTOUR", but nowhere else. It is pulled up by pressing the
|
||
Control key, which allows you to move forward, backward, to the
|
||
beginning of a lesson, to the end of a lesson, to the lesson summary,
|
||
to the main menu, to get a reminder, to quit. Ctrl-B (backwards) is
|
||
disabled when you are on the first slide of a lesson.
|
||
|
||
- Hints (or Reminders) pop up in any lesson files and in "Using TCTOUR".
|
||
They pop up if:
|
||
1) you wait 30 - 60 seconds before doing any action
|
||
2) you press Ctrl-R
|
||
3) you make an incorrect action
|
||
|
||
|