Documentation of pcd.datatype 43.0
----------------------------------


Introduction
------------

With the help of the pcd.datatype, your datatype sytem is able to read images
from Photo-CD's.
The datatype can produce a 24-bit truecolor or an 8-bit grey-leveled bitmap.

This datatype is Freeware !
Do with it what you want, as long as you do not remove any files from this archive !


Requirements
------------

* OS 3.x
* MC68020 or better
* The picture.datatype 43.x (CyberGraphX system)
* A mounted PIPE: handler !!
* The PCD decoder 'pcdtoppm' (included in this archive)
* A CD-ROM drive able to read Photo-CD's


Installation
------------

Simply click on the 'Install' script.
As the pcd.datatype needs an external decoder, you must select a directory that
is in your path to store the decoder !
The installer will not check your configuration !
You MUST store the decoder 'pcdtoppm' somewhere in your path, otherwise the datatype
will hang up in an endless loop !!


How does the pcd.datatype work ?
---------------------------------

The pcd.datatype is to small to be a standalone decoder.
Whenever the superclass detects a PCD image, it opens the pcd.datatype.
This launches the external PCD decoder 'pcdtoppm', which redirects its output
to the PIPE-handler. The datatype simply reads the decoded RGB values from the
PIPE handler and stores them in the bitmap.


Preferences
-----------

The PCD decoder is able to decompress a PCD image to different resolutions.
The resolution is stored in ENV:DataTypes/pcd.prefs.
The DOS template is RESOLUTION/N,GREY/S.

Value   Bitmap resolution 
1          192 *  128
2          384 *  256
3          768 *  512
4         1536 * 1024
5         3072 * 2048
6         6144 * 4096

The default value is 3 (768*512).
The values 5 and 6 do not make much sense as you need a fast CPU and lots of memory !

If you enable the GREY switch, you will get 8-bit grey-leveled, otherwise 24-bit
truecolor bitmap.


Developer Information
---------------------

This archive also contains the source code !
It was written with Maxon-C++ V3 and PhxAss.
With some minor changes it should be compilable on other compilers too.

You can use the library headers 'libstuff.s' and 'libbase.c' in your own datatypes.
You only need to alter the needed libraries and the classnames !


Author
------

Feel free to contact me for comments, critics or bug reports !

e-mail: astegema@ix.urz.uni-heidelberg.de

WWW: http://www.rzuser.uni-heidelberg.de/~astegema

