home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
ENTERPRS
/
CPM
/
UTILS
/
S
/
TP3-READ.DOC
< prev
next >
Wrap
Text File
|
2000-06-30
|
16KB
|
490 lines
Welcome to TURBO PASCAL Version 3.0!
------------------------------------
In spite of all efforts, some errors have found their way into
the new TURBO 3.0 manual. In addition, a few features have been
added since the manual went to print.
This file contains all necessary corrections and additions, and
we apologize for any inconvenience this may cause you.
Please make a working copy of your TURBO disk and store the ori-
ginal in a safe place. For help making a backup copy, please
refer to appendix M of the TURBO PASCAL Reference Manual.
Now, using your working copy, run TINST to install TURBO.COM for
your terminal. Installation procedures are discussed in Chapter
One and Appendix L.
*******************************************
* *
* Need help with TURBO? Please see *
* Appendix N in your Reference Manual *
* for answers to common questions. *
* *
*******************************************
-------------------
Contents of the READ.ME File
----------------------------
1. CORRECTIONS to the 3.0 Reference Manual [ All versions ]
2. OMMISSIONS from the 3.0 Reference Manual [ All versions ]
3. New FEATURES [ CP/M-80 ]
4. ADDITIONAL FILE LIST [ CP/M-80 ]
5. READ.ME notes from the IBM PC implementation
-------------------
CORRECTIONS
-----------
Page 96 - Close
---------------
Notice TURBO 3.0 uses DOS' file handles; it is therefore
ALWAYS necessary to Close files, even after reading. You
would otherwise quickly run out of file handles.
Page 102 - SkpEoln / SkpEof
-----------------------------
The correct names for these functions are SeekEof and SeekEoln.
Page 114 - BlockRead / BlockWrite
---------------------------------
In the PC-DOS/MS-DOS versions, the record size used in block
transfers may be specified by an optional Integer parameter.
on Reset or ReWrite, for example:
var
InFile,
OutFile: File;
begin
Assign(InFile,'INDATA');
Reset(InFile,RecSize);
Assign(OutFile,'OUTDATA');
ReWrite(OutFile,RecSize);
:
:
where RecSize is an Integer expression.
Page 162 - TextBackground
-------------------------
Value must be between 0 and 7.
Page 169 - Graphics Windows
---------------------------
When you define a graphics window, the coordinate (0,0) is
now in the upper left corner of the WINDOW, not of the
physical screen. This changes figure 19-2 on page 170:
0,0 should be placed at the upper left corner of the window
(not of the screen).
Page 174 - GetPoint
-------------------
The correct name for this procedure is GetDotColor.
Page 179 - Forward
------------------
The correct name for this procedure is FORWD (not Forward
which is a reserved word).
Page 182 - TurtleWindow
------------------------
The turtle does not stop at the border of the window. You
can still move it outside of the window, but it is not
shown. Even with PenDown, it will not draw outside the
window.
Page 187 - On the Main Menu
---------------------------
The implication that TURBO 3.0 will work with DOS versions
earlier than 2.0 is an error. TURBO 3.0 REQUIRES DOS version
2.0 or later.
Page 189 - ChDir
----------------
Will also log in a drive if used with a drive name, for
example:
ChDir('B:');
Page 189 - GetDir
-----------------
The integer parameter Dr refers to following:
0 = logged drive
1 = A:
2 = B:
etc.
Page 208 - Function Calls
-------------------------
Two of the definitions of RegPack on this page have SI and
DI switched around. The correct definition is:
type
RegPack = record
case Integer of
1: (AX,BX,CX,DX,BP,SI,DI,DS,ES,Flags: Integer);
2: (AL,AH,BL,BH,CL,CH,DL,DH : Byte);
end;
In addition, the type of the parameters in the example pro-
cedure Timer ought to be Integer, not Real.
Page 253 - MOV AL,[BP-1]
------------------------
The correct statement is: MOV AL,[BP+4]
Page 293 - TURBO-BCD will compile and run any program
-----------------------------------------------------
Well - almost. The Real functions Sin, Cos, ArcTan, Ln, Exp,
and Sqrt and the pre-declared constant Pi are not available
in TURBOBCD.
Page 305 - SkpEoln / SkpEof
-----------------------------
The correct names for these functions are SeekEof and SeekEoln.
Page 309 - GetDot
-----------------
The correct name for this procedure is GetDotColor.
Page 317 - Number of Open Files
--------------------------------
This example is unfortunate, because DOS can never handle
more than 16 files open concurrently, regardless of what
you specify in CONFIG.SYS.
Page 325 - RUN-TIME ERROR MESSAGES
----------------------------------
Missing: F0 - Overlay file not found
Page 327 - I/O ERROR MESSAGES
-----------------------------
Missing: F3 - Too many open files (MS/PCDOS only)
-------------------
OMISSIONS
---------
TurtleDelay
-----------
This procedure can be used to slow down the turtle movement
to a speed which the eye can follow. The syntax is
TurtleDelay(Ms);
where Ms is an integer expression giving the delay in
milliseconds between each step of the turtle. The default
TurtleDelay is 0.
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 unim-
portant, 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 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. Typi-
cally it will close all open files, output an error mes-
sage, 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.
-------------------
NEW FEATURES OF CP/M-80 IMPLEMENTATION OF
TURBO 3.0
- AN OVERVIEW -
-----------------------------------------
Inline
------
A constant identifier used in an INLINE statement does not
always generate two bytes of code.
Files
-----
New FIB formats.
Optional 4th parameter on Blockread/Write returns number of
blocks actually read.
SeekEoln function.
SeekEof function.
Misc.
-----
Exit procedure - To exit the current block
OvrDrive procedure - To specify the drive on which to find overlays
ParamCount function - Gives number of characters in the command buffer
ParamSk
function - Gives the string of characters in the command line
Overlays
--------
Overlay files are opened and closed every time they are
accessed. Therefore, there is never a need to specifically
close an overlay file.
The Y compiler directive is no longer supported. Instead,
the OvrPath (MS-DOS MESr OvrDrive (CP/M) standard proce-
dures may be used to specify the drive and subdirectory
in which overlay files reside.
Please note that run-time error F0 indicates that your over-
lay file is missing or is called recursively. (This error
number is omitted from the Reference Manual but is included
elsewhere in this file.)
-------------------
TURBO PASCAL Version 3.0
CP/M-80
Additional File List
In addition to the list of files mentioned in Chapter 1 of
your TURBO Reference Manual, the following files are included
on your TURBO disk:
Sample programs
---------------
LISTER PAS - simple program to list your Pascal source
CMDLIN PAS - get parameters from the command line
CALC PAS - sample spreadsheet program
CALC HLP - spreadsheonlhelp file
CALCDEMO MCS - spreadsheot data file (not for use with TURBO-87)
CALCMAIN PAS - extra program for compiling spreadsheonlif necessary
(please see note inside CALCMAIN.PAS)
=====================================================================
NOTE: The following section is the READ.ME file from the IBM PC
implementation of TURBO PASCAL 3.0 and is included here for
your information.
---------------------------------------------------------------------
GENERAL OVERVIEW OF NEW FEATURES OF TURBO 3.0
---------------------------------------------
A program that was written using TURBO 2.0 may behave differently
using TURBO 3.0:
- TURBO no longer does a ClrScr when your program first begins
- TURBO no longer does a GoToXY(1, 25) when your program terminates
- use of file handles now necessitates closing all files; you
should also place a "FILES =" statement in your CONFIG.SYS file
(please consult your DOS reference manual for more information).
- a read statement using the logical device TRM is terminated with a
<CR>.
TINST Installation
------------------
TINST now allows you to install a pathname which is used by TURBO
when loading the error message file (TURBO.MSG).
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 editor, answer "Y" to
this question.
Chain and Execute
-----------------
Heap preserved during Chain (MS/PC-DOS & CP/M-86).
Chain and Execute no longer set a flag in the command line
parameter.
Inline
------
A constant identifier used in a INLINE statement does not
always generate two bytes of code.
Files
-----
Append procedure (MS/PC-DOS .
Full DOS path-name supported (MS/PC-DOS .
I/O re-direction (MS/PC-DOS .
New FIB formats.
Optional parameter on text file declaration sets buffer size
(MS/PC-DOS & CP/M-86).
Optional parameter on Reset/ReWrite sets (0d size for
untyped files (MS/PC-DOS .
Optional 4th parameter on Blockread/Write sets block size.
Read and ReadLn work with array of char (MS/PC-DOS & CP/M-86).
Seek procedure may take Real argument (MS/PC-DOS .
SeekEoln function.
SeekEof function.
Truncate procedure (MS/PC-DOS .
Misc.
-----
ChDir procedure (MS/PC-DOS .
Command line parameters on Options menu (MS/PC-DOS and CP/M-86).
Delay procedure independent of processor speed (PC-DOS .
Exit procedure.
Extended graphics procedures & functions (see page 309 in
manual for overview).
GetDir procedure (MS/PC-DOS .
MkDir procedure (MS/PC-DOS .
Multiple EXTERNAL subprograms in one file (MS/PC-DOS & CP/M-86).
Optional parameter on Halt to return error code (PC/MS-DOS).
Ove moath procedure (MS/PC-DOS .
OvrDrive procedure (CP/M).
ParamCount function.
ParamSkr function.
RmDir procedure (MS/PC-DOS .
Runs overlays in Memory mode (MS/PC-DOS & CP/M-86)
Turtlegraphics procedures, functions, and constants (see
page 309-310 in manual for overview).
Overlays
--------
Overlays can be run in Memory mode (MS/PC-DOS & CP/M-86).
Overlay files are opened abetwlosed every time they are
accessed. Therefore, there is never a need to specifically
close an overlay file.
The Y compiler directive is no longer supported. Instead,
the OvrPath (MS-DOS MESr OvrDrive (CP/M) standard proce-
dures may be used to specify the drive and subdirectory
in which overlay files reside.
-------------------
TURBO PASCAL Version 3.0
Additional File List
In addition to the list of files mentioned in Chapter 1 of
your TURBO Reference Manual, the following files are included
on your TURBO disk:
ACCESS3 BOX - for TOOLBOX users only: ACCESS.BOX update
Sample programs
---------------
LISTER PAS - simple program to list your Pascal source
TURTLE PAS - demonstrates Turtlegraphics
CMDLIN PAS - get parameters from the command line
DIRECT PAS - demonstrates TURBO directory procedures
ART PAS - sample graphics program
COLOR PAS - sample color program
SOUND PAS - sample sound program
WINDOW PAS - demonstrates windowing
INTRPTCL DOC - get the time from DOS
DOSFCALL DOC - get the date from DOS
EXTERNAL DOC - sample program using externals
CALC PAS - sample spreadsheot program
CALC HLP - spreadsheot help file
CALCDEMO MCS - spreadsheot data file (not for use with TURBO-87)
CALCMAIN PAS - extra program for compiling spreadsheot if necessary
(please see note inside CALCMAIN.PAS)
Special versions of TURBO
-------------------------
These files will only be present on your disk if you have TURBO
with one (or both MESf our extended real number packages.
TURBO with 8087 Support
-----------------------
TURBO-87 COM - TURBO PASCAL compiler with 8087 support
HILB PAS - demonstrates increased speed and precision of
TURBO-87
TEST PAS - demonstrates increased speed and precision of
TURBO-87
TURBO with BCD Reals
--------------------
TURBOBCD COM - TURBO PASCAL compiler with BCD reals
BCD PAS - demonstrates increased precision of TURBOBCD
---------------------------------------------------------------------
NOTE: The above applies to IBM PC and true compatibles only