Virtual Pascal for OS/2 v1.10
Evaluation Licence
(C) 1996 fPrint UK Ltd
Introduction
~~~~~~~~~~~~
This evaluation/demo version of Virtual Pascal for OS/2 includes a
fully functional version of the Integrated Development Environment
(IDE) and the Compiler, but contains only limited online help and
no source code for the Run-Time Library.
What is included in this evaluation version?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The PM version of the IDE, VP/PM is included. This requires OS/2
Presentation Manager to be installed; the demo version does not function
on systems without PM installed.
All Run-Time Library modules, the Turbo Vision library and the
MathPak87 Lite library that form part of VP/2 v1.10 are included in a
Dynamic Link Library VP11DEMO.DLL. The PM Library (OWL), the
TurboPower toolkit upgrades and other extras are available in the full
version only.
Using the demo DLL, you can write applications using any function from
the DLL, but you are not allowed to distribute the executables; this
demo version is for evaluation purposes only. The DLL itself may not
be distributed other than as part of this evaluation licence.
The interface sections of all source modules included in the DLL are
included, enabling you to see the names, parameters and comments of
every function in the DLL. These interface files are located in the
SOURCE directory and subdirectories.
In addition, a small number of examples demonstrating various aspects
of the capabilities of VP/2 are included. For a description of the
examples, please refer to the file Examples.Txt.
What is in the full version?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* The text-mode version of the IDE, which can run on any 32-bit OS/2
system, from v2.0 and up. This version does not require OS/2 PM to
be installed.
* Full source code for most RTL units; all units can be linked
statically into your executable files. Programs written using VP/2
do not rely on any external DLLs (other than the ones supplied as
part of OS/2 :-).
* Upgrade patches for Turbo Vision, Object Windows Library, Object
Professional, ASync Professional and B-Tree Filer are included in
the full version. TechnoJock's Turbo Toolkit is included with full
source code.
* Online help files, covering all OS/2 API calls as well as VP/2
online help for the IDE is included in the full version. Full
context-sensitive help lookup is available.
* A full range of examples, including examples from the supported
toolkits, all examples from "The Art of OS/2 Warp Programming",
totaling more than 150 executables with source code are included.
* Users' contributions, including source code for a number of programs
written by users of VP/2. These include an audio CD player, a
racing game using the DIVE interface, access to Squish fidonet
message bases etc.
* A 365 page printed manual, with 90 pages dedicated to a User's Guide
and the rest covering the Pascal Language of VP/2.
Getting Started
~~~~~~~~~~~~~~~
Once you have installed this Evaluation Licence, you need to reboot
the machine in order for the changes to CONFIG.SYS to take effect. If
you did not let the installation program update your CONFIG.SYS, please
add the x:\VPDEMO\BIN directory to the LIBPATH and PATH statements of
CONFIG.SYS (Where x:\VPDEMO is the directory you chose to install to).
When the machine has rebooted, you can start the VP/2 IDE by clicking
the VP/PM icon in the VP/2 folder, or by writing VPPM on the OS/2 command
line. Change the current directory to one of the examples (For example,
EXAMPLES\CLOCK) by selecting File|Change Directory.
Then, load CLOCK.PAS by pressing F3 or by selecting File|Open. Compile
and run the program simply by pressing Ctrl-F9...
Alternatively, you can browse through the examples, for which icons
have been created on the desktop. Note, that all of the example
executables are really small, because they rely on the VP11DEMO.DLL
for all Run-Time Library code.
Changing the Font Size
~~~~~~~~~~~~~~~~~~~~~~
The default font size of 16x8 used in VP/PM can be changed by specifying
a command line parameter. Start VPPM like this
VPPM /Fx30 /Fy20
to select a 30x20 font, or the nearest match available on your system.
Once you have changed the font size, it becomes the new default and
you do not have to specify it again.
Getting your own code to work
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Because this demo licence is restricted to dynamic linking of the
Run-Time Library, an extra step needs to be taken in order to get
existing Pascal code to work.
As shown in all of the example source codes, you need to instruct VP/2
that all units are Dynamic (ie located in a DLL). This is done by
specifying a {$Dynamic VP11DEMO.LIB} compiler directive just after the
USES clause of the main program file. If you enclose the $Dynamic
directive in a conditional define {$IFDEF VPDEMO} ... {$ENDIF}, the
demo DLL will only be used when using the demo version of the compiler.
A quick example:
Program MyProg;
Uses Crt, Dos, Strings;
...
will not compile with the evaluation licence of VP/2. You need to
instruct VP/2 to look for Crt, Dos, Strings (and the ever-present System
unit, which is always implicitly loaded) in the VP11DEMO.DLL file. This
is done by changing the code to look like this:
Program MyProg;
Uses Crt, Dos, Strings;
{&Dynamic VP11DEMO.LIB}
...
Note, that compiler directives in VP/2 can be specified either with
{$...} or with {&...}, as in the example above. VP/2 introduces a
range of new compiler directive such as Dynamic, and specifying them
with an ampersand (&) instead of dollar ($) allows the source to be
compatible with compilers that do not understand these new directives.
Resolving Type Conflicts and Moving to 32 bit
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Borland Pascal v7 and Borland Delphi 1 are both 16 bit programming
languages, with the basic integer types being 16 bit. VP/2 also
defines Integer and Word to be 16 bit by default, even though the
use of 16 bit integers is quite inefficient in a 32-bit world.
By including the Use32 VP/2 unit in your programs, Integer and Word
are redefined as 32 bit, and the new types SmallInt and SmallWord
are defined as 16 bit types instead. Use32 (available in the
SOURCE\RTL directory) is designed to work with other Pascal compilers
as well, in which case it will not redefine any types, but just define
SmallInt and SmallWord.
We recommend always to include Use32 in all programs and to use the
basic Integer and Word types wherever the size of the variable is
not important. This way, the best code possible will be generated
by both VP/2, Delphi and Borland Pascal with no code changes required.
All Run-Time Library units of VP/2 have been compiled using Use32.
This means, that your programs may report Type Conflicts in places
where none are immediately evident, for example where an Integer is
passed as a Var parameter. To resolve the conflict, either redefine
the parameter to Longint, or include Use32 in the Uses list of your
program.
Pure Interface Units
~~~~~~~~~~~~~~~~~~~~
VP/2 supports the creation of Pure Interface Units. This feature
allows for distribution of the Interface section of units, with
the Implementation section available in compiled form only (As .LIB,
.OBJ or in a .DLL).
This method is what is used to create this demo version. The
Interface sections of all RTL units are available, and include
the VP/2 {$PureInt+} directive. When the compiler encounters this
directive, it creates a VP/2 Interface file (.VPI) only, and assumes
that the object code is available elsewhere. For the demo version,
the object code is available in the VP11DEMO.DLL file.
More information
~~~~~~~~~~~~~~~~
More information is available in the Frequently Asked Questions file
(FAQ.Txt) and the Examples file (Examples.Txt) also part of this
evaluation licence. The licence agreement for this evaluation version
of VP/2 is contained in Licence.Txt. These files, along with this
file (ReadMe.Txt), are all contained in the DOC directory (relative to
your VP/2 installation path).
Those files aside, the documentation included is sparse and we
strongly recommend buying a copy of "the real thing".
If you have a specific problem, please write an e-mail in one of
our electronic support forums; the best is the CompuServe FPRINT
forum. We will answer questions posted in this forum on a daily
basis whenever possible.
Contact Address
~~~~~~~~~~~~~~~
Bug reports or feature requests should be directed to one of the
following addresses. To order VP/2, please send an order to our
address, and we will make sure the nearest local dealer gets in
touch with you.
fPrint UK Ltd
Cambridge House
Hammersmith
London W6 0LE
United Kingdom
Att: Allan Mertner
Tel. +44 (181) 563 2359
Fax. +44 (181) 563 2361
BBS +44 (181) 563 8624
Internet: vpascal@ibm.net
CompuServe: 102212,3041
FidoNet: 2:254/283
WWW: http://www.fprint.co.uk/vpascal
CompuServe: GO FPRINT
or select OS/2 Vendor Forum B (GO OS2BVEN) Section 6.
Trademarks
~~~~~~~~~~
Company names, brand names and product names are trademarks or
registered trademarks of their respective holders.