334 lines
11 KiB
Plaintext
334 lines
11 KiB
Plaintext
|
|
|||
|
WELCOME TO TURBO PASCAL 3.0
|
|||
|
---------------------------
|
|||
|
|
|||
|
This file contains important information not found in the Reference
|
|||
|
Manual. Included is information on how to get technical help, a
|
|||
|
description of differences between Turbo Pascal 2.0 and 3.0,
|
|||
|
corrections to the Reference Manual, and a complete list of files on
|
|||
|
the distribution disk. Since this file contains information important
|
|||
|
to you, please read it in its entirety; hopefully it will answer any
|
|||
|
questions you may have.
|
|||
|
|
|||
|
Special Note: Turbo Pascal now comes complete with three versions of
|
|||
|
the compiler. The standard compiler: TURBO.COM, the compiler with
|
|||
|
support for the optional 8087 math coprocessor: TURBO-87.COM, and the
|
|||
|
compiler with BCD (Binary Coded Decimal) real number support for precise,
|
|||
|
business oriented computations: TURBOBCD.COM. Simply recompile your
|
|||
|
source code with one of the compilers to take advantage of the optional
|
|||
|
real number support. Please note that to use TURBO-87.COM you must
|
|||
|
have an 8087 coprocessor chip installed in your computer. Most
|
|||
|
computers do not come with the 8087 chip installed.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
TABLE OF CONTENTS
|
|||
|
-----------------
|
|||
|
|
|||
|
1. How to Get Help
|
|||
|
2. Differences between Turbo Pascal 2.0 and 3.0
|
|||
|
3. Corrections to the Reference Manual
|
|||
|
4. File List
|
|||
|
|
|||
|
|
|||
|
|
|||
|
1. HOW TO GET HELP
|
|||
|
------------------
|
|||
|
|
|||
|
If you need help with Turbo Pascal, please read this help file and
|
|||
|
the Reference Manual thoroughly. Also, see Appendix N of the Turbo
|
|||
|
Pascal Reference Manual for common questions and answers.
|
|||
|
|
|||
|
If you still have a question and need technical assistance, please
|
|||
|
have the following information ready before calling our technical
|
|||
|
support department:
|
|||
|
|
|||
|
1. Product name and version number. (The version number of Turbo
|
|||
|
Pascal appears above the "Include error messages?" prompt when the
|
|||
|
program is first loaded.)
|
|||
|
2. Computer name, model and any additional hardware.
|
|||
|
3. Operating system and version number. (The version number
|
|||
|
generally is displayed when your system is first booted.)
|
|||
|
|
|||
|
Technical assistance is also available from the following sources:
|
|||
|
|
|||
|
1. Type GO BORLAND on the CompuServe bulletin board system.
|
|||
|
2. Check with your local software dealer or user group.
|
|||
|
3. Write to: Borland International
|
|||
|
Turbo Pascal Technical Support
|
|||
|
4585 Scotts Valley Drive
|
|||
|
Scotts Valley, CA 95066
|
|||
|
|
|||
|
|
|||
|
|
|||
|
2. DIFFERENCES BETWEEN TURBO PASCAL 2.0 AND 3.0
|
|||
|
-----------------------------------------------
|
|||
|
|
|||
|
General Differences
|
|||
|
-------------------
|
|||
|
|
|||
|
1. Turbo Pascal no longer does a ClrScr when your program first begins.
|
|||
|
2. Turbo Pascal no longer does a GoToXY(1, 25) when your program
|
|||
|
terminates.
|
|||
|
3. The use of file handles now necessitates closing all files, even
|
|||
|
if they were not modified. You should also place a "FILES = 20"
|
|||
|
statement in your CONFIG.SYS file. Note that DOS always uses five
|
|||
|
file handles (standard input, output, error, auxiliary, standard
|
|||
|
printer). Please refer to your DOS technical reference manual for
|
|||
|
more information about DOS file handles.
|
|||
|
4. The handling of some logical devices has been changed to conform
|
|||
|
with standard Pascal and with Turbo Pascal's handling of other
|
|||
|
files:
|
|||
|
a. A read statement using the logical device TRM is now buffered
|
|||
|
and terminates with a <CR>.
|
|||
|
b. The KBD device is not buffered. For this reason, look-ahead
|
|||
|
functions (EOF, EOLN, readln) used on the KBD device will
|
|||
|
always "wait" for a key to be pressed.
|
|||
|
|
|||
|
|
|||
|
TINST Installation
|
|||
|
------------------
|
|||
|
|
|||
|
1. TINST now allows you to install a pathname which is used by Turbo
|
|||
|
Pascal when loading the error message file (TURBO.MSG).
|
|||
|
2. In the screen installation, after choosing your display type, the
|
|||
|
following question will appear:
|
|||
|
Does your screen blink when the text scrolls? (Y/N);
|
|||
|
If the screen is "snowy" in the Turbo Pascal editor, answer "Y" to
|
|||
|
this question.
|
|||
|
|
|||
|
|
|||
|
Chain and Execute
|
|||
|
-----------------
|
|||
|
|
|||
|
1. Heap preserved during Chain.
|
|||
|
2. Chain and Execute no longer set a flag in the command line
|
|||
|
parameter.
|
|||
|
|
|||
|
|
|||
|
Inline
|
|||
|
------
|
|||
|
|
|||
|
A constant identifier used in an INLINE statement does not always
|
|||
|
generate two bytes of code.
|
|||
|
|
|||
|
|
|||
|
New File Oriented Procedures and Functions
|
|||
|
------------------------------------------
|
|||
|
|
|||
|
1. Append procedure.
|
|||
|
2. Full DOS path-name supported.
|
|||
|
3. I/O re-direction.
|
|||
|
4. New FIB formats.
|
|||
|
5. Optional parameter on text file declaration sets buffer size.
|
|||
|
6. Optional parameter on Reset/ReWrite sets block size for
|
|||
|
untyped files.
|
|||
|
7. Optional 4th parameter on BlockRead/BlockWrite returns the number
|
|||
|
of blocks processed.
|
|||
|
8. Read and ReadLn work with array of char.
|
|||
|
9. LongFileSize function.
|
|||
|
10. LongFilePosition function.
|
|||
|
11. LongSeek procedure.
|
|||
|
12. SeekEoln function.
|
|||
|
13. SeekEof function.
|
|||
|
14. Truncate procedure.
|
|||
|
|
|||
|
|
|||
|
Other New Procedures and Functions
|
|||
|
----------------------------------
|
|||
|
|
|||
|
1. ChDir procedure.
|
|||
|
2. Command line parameters on Options menu.
|
|||
|
3. Delay procedure independent of processor speed.
|
|||
|
4. Exit procedure.
|
|||
|
5. Extended graphics procedures & functions (see page 309 in
|
|||
|
manual for overview).
|
|||
|
6. GetDir procedure.
|
|||
|
7. MkDir procedure.
|
|||
|
8. Multiple EXTERNAL subprograms in one file.
|
|||
|
9. Optional parameter on Halt to return error code.
|
|||
|
10. OvrPath procedure.
|
|||
|
11. ParamCount function.
|
|||
|
12. ParamStr function.
|
|||
|
13. RmDir procedure.
|
|||
|
14. Turtlegraphics procedures, functions, and constants (see
|
|||
|
page 309-310 in manual for overview).
|
|||
|
|
|||
|
|
|||
|
Overlays
|
|||
|
--------
|
|||
|
|
|||
|
1. Overlays can be run in Memory mode.
|
|||
|
2. Overlay files are opened and closed every time they are accessed.
|
|||
|
Therefore, there is never a need to specifically close an overlay
|
|||
|
file.
|
|||
|
3. The Y compiler directive is no longer supported. Instead, the
|
|||
|
OvrPath standard procedure may be used to specify the drive and
|
|||
|
subdirectory in which overlay files reside.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3. CORRECTIONS TO THE MANUAL
|
|||
|
----------------------------
|
|||
|
|
|||
|
Page 168: Text Windows
|
|||
|
----------------------
|
|||
|
Add the following text:
|
|||
|
|
|||
|
The maximum number of rows in a text window has been expanded in
|
|||
|
order to support video adapters such as the EGA which support screens
|
|||
|
of up to 43 lines.
|
|||
|
|
|||
|
|
|||
|
Page 189: ChDir
|
|||
|
---------------
|
|||
|
Add the following text:
|
|||
|
|
|||
|
ChDir also changes the logged drive if St contains a DRIVE name
|
|||
|
followed by a colon.
|
|||
|
|
|||
|
|
|||
|
Page 241 & 273:
|
|||
|
---------------
|
|||
|
Add the following section:
|
|||
|
|
|||
|
User Written Error Handlers
|
|||
|
---------------------------
|
|||
|
In Turbo Pascal 3.0 you may write your own error handler, which
|
|||
|
is called in case of an I/O or Run-time error. The procedure must
|
|||
|
have the following header:
|
|||
|
|
|||
|
procedure Error(ErrNo, ErrAddr: Integer);
|
|||
|
|
|||
|
The name of the procedure and its parameters are unimportant, as
|
|||
|
long as it is a procedure with two value parameters of type
|
|||
|
Integer.
|
|||
|
|
|||
|
The value passed in ErrNo is the error type and number. The most
|
|||
|
significant byte, i.e. "Hi(ErrNo)", contains the error type, and
|
|||
|
the least significant byte, i.e. "Lo(ErrNo)", contains the error
|
|||
|
number (see Appendix F or G in the Turbo Pascal Reference Manual).
|
|||
|
|
|||
|
The following error types are defined:
|
|||
|
|
|||
|
0 User Break (Ctrl-C).
|
|||
|
1 I/O error.
|
|||
|
2 Run-time error.
|
|||
|
|
|||
|
In case of a user interrupt (Ctrl-C), the low byte of "ErrNo" is
|
|||
|
always 1. "ErrAddr" contains the address (offset in Code Segment
|
|||
|
for 16 bit versions) of the error.
|
|||
|
|
|||
|
To activate the error handler, assign its offset address to the
|
|||
|
standard variable "ErrorPtr", i.e.
|
|||
|
|
|||
|
ErrorPtr:=Ofs(Error); { 16 bit } or
|
|||
|
ErrorPtr:=Addr(Error); { 8 bit }
|
|||
|
|
|||
|
There are no limits to what an error handler may do. Typically it
|
|||
|
will close all open files, output an error message, and call the
|
|||
|
Halt standard procedure to terminate the program. If an error
|
|||
|
handler returns, i.e. if it does not call Halt, or if an error
|
|||
|
occurs within an error handler, Turbo Pascal will itself output
|
|||
|
the error message and terminate the program.
|
|||
|
|
|||
|
|
|||
|
Page 325: Run-Time Error Messages
|
|||
|
---------------------------------
|
|||
|
Error 91, add the following text:
|
|||
|
|
|||
|
Error also occurs when you do a Dispose(p), where p is a nil
|
|||
|
pointer.
|
|||
|
|
|||
|
|
|||
|
Page 328: I/O Error Messages
|
|||
|
----------------------------
|
|||
|
Error F1, add the following text:
|
|||
|
|
|||
|
Error F1 also occurs when an illegal file name is specified.
|
|||
|
|
|||
|
|
|||
|
Page 365: Compile/Run-Time/I/O Errors
|
|||
|
-------------------------------------
|
|||
|
First question
|
|||
|
|
|||
|
A: You can do two things: break your code into smaller segments
|
|||
|
and use the $1 compiler directive or compile to a .COM or .CMD
|
|||
|
file.
|
|||
|
|
|||
|
should be:
|
|||
|
|
|||
|
A: You can do two things: break your code into smaller segments
|
|||
|
and use the $I compiler directive or compile to a .COM or .CMD
|
|||
|
file.
|
|||
|
|
|||
|
|
|||
|
Page 374: Keyboard
|
|||
|
------------------
|
|||
|
Third question, add the following text:
|
|||
|
|
|||
|
Make sure the C compiler directive is turned off before using the
|
|||
|
KeyPressed function. For information in the C compiler directive,
|
|||
|
see Appendix C in the Reference Manual.
|
|||
|
|
|||
|
|
|||
|
Page 375 - File I/O
|
|||
|
-------------------
|
|||
|
First question, add the following text:
|
|||
|
|
|||
|
Notice that Function Exist should also close the file it just opened
|
|||
|
in order to conserve DOS file handles:
|
|||
|
|
|||
|
Add the following line of code after Reset(Fil);
|
|||
|
|
|||
|
Close(fil);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
4. FILE LIST
|
|||
|
------------
|
|||
|
|
|||
|
File Description
|
|||
|
--------------------------------------------------------------------
|
|||
|
README COM - a program that displays this file
|
|||
|
|
|||
|
TURBO COM - Turbo Pascal compiler
|
|||
|
TURBO-87 COM - Turbo Pascal compiler with 8087 support
|
|||
|
TURBOBCD COM - Turbo Pascal compiler with BCD reals
|
|||
|
TURBO MSG - text file containing error messages
|
|||
|
|
|||
|
TINST COM - installation program
|
|||
|
TINST MSG - messages for the installation program
|
|||
|
|
|||
|
GRAPH P - external declarations for use with routines in
|
|||
|
GRAPH.BIN
|
|||
|
GRAPH BIN - extended graphics and turtlegraphics machine
|
|||
|
language routines
|
|||
|
|
|||
|
CALC PAS - sample spreadsheet program
|
|||
|
CALC INC - include file for CALC.PAS
|
|||
|
CALC HLP - spreadsheet help file
|
|||
|
CALCDEMO MCS - spreadsheet data file (not for use with TURBO-87
|
|||
|
or TURBOBCD)
|
|||
|
|
|||
|
ART PAS - sample graphics program
|
|||
|
CMDLINE PAS - get parameters from the command line
|
|||
|
COLOR PAS - sample color program
|
|||
|
DEMO-BCD PAS - demonstrates increased precision of TURBOBCD
|
|||
|
DEMO1-87 PAS - demonstrates increased speed and precision of
|
|||
|
TURBO-87
|
|||
|
DEMO2-87 PAS - demonstrates increased speed and precision of
|
|||
|
TURBO-87
|
|||
|
GETDATE PAS - get the date from DOS
|
|||
|
GETTIME PAS - get the time from DOS
|
|||
|
LISTER PAS - simple program to list your Pascal source
|
|||
|
SOUND PAS - sample sound program
|
|||
|
SUBDIR PAS - demonstrates Turbo Pascal directory procedures
|
|||
|
TURTLE PAS - demonstrates Turtlegraphics
|
|||
|
WINDOW PAS - demonstrates windowing
|
|||
|
EXTERNAL DOC - sample program using externals
|
|||
|
|
|||
|
ACCESS3 BOX - for DATABASE TOOLBOX users only: ACCESS.BOX update
|
|||
|
|
|||
|
README - this file
|
|||
|
=========================================================================
|