Introduction
============

This is the second release of the OS/2 port of V. It is released at
version 1.21a, the current version of V for Windows and X.  It also
includes popup menu support, a feature to be added in the future to all 
platforms for version 1.22.


Getting Started
===============

You will need to first download vos2-121.zip.  This file includes
the source code and the HTML documentation for the V library including 
generic installation instructions (mainly for X and Windows, but much 
also applies to the OS/2 port).  

To read the HTML documentation you will need a browser that
supports frames such as the newly released Netscape v4.04 for OS/2.
Netscape v2.02 will also work.  To get the new Netscape v4 go to 
http://www.software.ibm.com/os/warp/netscape/

To unpack v121os2.zip:

  1. Download it to a directory where you want to install it.
  2. Change directory to a location where you want to install 
     V GUI for OS/2 and use PK-Zip or InfoZip tools to unzip archive.
  4. Open v\doc\v.htm with your browser

The port has been tested with Borland C++ for OS/2 v2.0, EMX v0.9c, 
and IBM's VisualAge 3.0.  There is a makefile for Watcom C++, however, 
it was developed for v1.17 and has not been updated for v1.21.  Since
I do not have access to Watcom, hopefully someone else can update
it for me and send along the new project files. 

To make things easier, I have included pre-built (without debug info) 
libraries for Borland C++ v2.0, IBM's visualAge 3.0, and EMX 0.9c.  
These libraries include support for OpenGL, but of course, you need 
to install the IBM OpenGL runtime code on your system before you can 
take advantage of OpenGL on your system.

For more info on OpenGL and OS/2, point your browser at
 http://www.utsi.com/~kgl/os2-opengl/

NOTE: V1.21 is not source compatible with apps written
for V1.17.  There are some differences in a few functions.


V for OS/2 Compile Instructions
===============================

The following info gives specific details for compiling the libraries and
sample applications for the specific compilers supported. 


Borland C++ for OS/2 v2.0
=========================

The V port was developed primarily using Borland C++ for OS/2 v2.0.  A
complete set of project files for all the sample applications included
with V can be found in the directory V\BCOS2.  You will need to
reconfigure the project directories settings for your particular system.

The included projects here are for compiling the V library and
all the standard V apps included with the windows
and X versions of V. Since I use Borland as my IDE of choice,
the project files here are very complete.

The main V library comes prebuilt as V\lib\os2\vos2.lib.  It was 
compiled with debugging turned off.

If you wish to rebuild the main V library, use vos2.prj and copy the 
resulting vos2.lib file to V/lib/os2 from V/obj/os2. 

Once you have built the main V library, you should proceed
to build test.prj to build the testapp application demonstrating 
V's capabilities. 

To test out the OpenGL capabilities, try compiling any of the apps
in the V\vopengl\ directory such as vbounce.prj.  


EMX 0.9c
========

Start by editing the CfgEMX.mk file for your system. The file can be
found in the V\emx directory. For most systems, only HOMEV will need 
editing, everything else can remain as is.  Also, make sure the emx binaries
are in your PATH.

When you are happy with it, copy it to the root V directory and
call it config.mk.  

The main V library comes prebuilt as V\lib\os2\vos2.a.  It was 
compiled with debugging turned off.  In addition, there is another
library V\lib\os2\vos2gl.a that includes the routines needed to support
OpenGL.

If you wish to compile the main libraries yourself, then go to V\srcos2 
and run GNU make on the Makefile in there.  Note that all the makefiles 
assume Gnu make.  They will not work for IBM's nmake!!  Gnu make for OS/2 is 
available from most os/2 sites.

If that goes okay, go to the V\test directory and run the Makefile
in there.  That should build the testapp application 
demonstrating V's capabilities.

There is a nice integrated development environment (VIDE) written for V in
the directory V\vide.  You may wish to compile that next to
get going with your own V apps.

To test out the OpenGL capabilities, try compiling any of the apps
in the V\vopengl\ directory.  Use the included makefile.os2 with gmake to 
build each app.


IBM Visual Age C++ 3.0
======================

In V\ibmcpp you'll find makefiles for the V lib (v.mak and vopengl.mak) 
and the included sample applications (vtest.mak, vide.mak, etc.)

1) Edit cfgibm.mkh for your system.  Further helpful hints can
be found in the file itself.

2) Build the V library.  If you intend to use OpenGL and have 
installed it on your system use the vopengl.mak file, otherwise
use the v.mak file.

OpenGL not wanted:
-----------------
nmake DEBUG=1 /f v.mak        builds the debug basic V library
nmake /f v.mak                builds the release basic V library

OpenGL wanted:
-------------
nmake DEBUG=1 /f vopengl.mak  builds the debug openGL V library
nmake /f vopengl.mak          builds the release openGL V library

(Note: Use Selective Install in OS/2 System Tools if you want to install 
       OpenGL on your system)

These makefiles will not work for Gnu make, make sure you use IBM's nmake!!  

If that goes okay, the library will be placed in V\lib\os2, and the
object files in V\obj\os2\ibmcpp


3) Build the test application.

nmake DEBUG=1 /f vtest.mak  builds the debug version of vtest.exe
nmake /f vtest.mak          builds the release version of vtest.exe

Go to the V\bin\os2\ibmcpp directory and you should find vtest.exe.
Run the vtest.exe application to get a demonstration of some of
V's capabilities.

There is a nice integrated development environment (IDE) written for V in
the directory V/vide.  You may wish to compile that next (vide.mak) to
get going with your own V apps.

To test out the OpenGL capabilities, try compiling any of the apps
in the V\vopengl\ directory (vshapes.mak, vbounce.mak, etc).


Watcom C++ for OS/2
===================

An incomplete and out-of-date (v1.17) makefile can be found in the
directory V\WATOS2.  The included makefile here is for compiling the
V library. They were provided by a third party and I cannot give any
support since I do not have Watcom myself.  Since they are for v1.17, 
you will also need to add several new source files to successfully compile
the main library for v1.21.  Those files are vstartup.cpp, vos.cpp, 
vpopmenu.cpp, vslist.cpp, and optionally vbglcnv.cpp (this is the 
OpenGL canvas).

Once you have built the main V library, you should proceed
to the V\test directory and build the testapp application 
demonstrating V's capabilities.  At present I do not have 
any makefiles for that.

There is a nice integrated development environment (IDE) written for V in
the directory V/vide.  You may wish to compile that next to
get going with your own V apps.

To test out the OpenGL capabilities, try compiling any of the apps
in the V\vopengl\ directory.  


Debugging
=========

V includes a built-in configurable debugging system that is described
fully in the V users guide.  In the X port, the debugging output is
written to stderr using printf.  In Windows and OS/2, printf does not
work and so it would seem the debugging routines are pretty much
useless.  While this is true for Windows, there is a workaround for
OS/2.  The public domain program PMPRINTF, written by Mike Cowlishaw of
IBM, will allow debug output to be viewed in a separate PM window as
your V program executes.


Jon Hacker
V port to OS/2
Mar 12/99.


For technical support join the V users mailing list.

To subscribe send a mail with the subject "subscribe" to 
vgui-discuss-REQUEST@other.debian.org. For regular
submission please use vgui-discuss@other.debian.org. The list 
will be archived on www.debian.org/Lists-Archives/ 
