First, I recommend to install the LDG kit available on the
official LDG site.
Next, download the
LDV kit+documentation
To make an LDV, you need:
Warning! By default, the development kit provided by VISION includes these files for the PureC compiler. I strongly recommend to update regularly the .H and .LIB according to the evolution of LDGs.
The tree proposed in VISION LDV kit is the following:
Folder / Sub folder | Files |
<..>/LDV | For LDG management: LDG.H: Librairies dynamiques GEM, header file .H MT_AES.H: To use LDG/LDV under a multi tasking OS. In fact, this file is useful only if you use AES in the LDV, which is unlikely at the moment, but perhaps soon... LDG.LIB, MT_AES.LIB: to be linked with your LDV For LDV management: LDV.H: Definition of structures and interfaces with VISION VAPI.H: Definition of structures and interfaces with VAPI |
<...>/LDV/SRC | Each LDV is there in a directory associated with
its name. In such a directory, there is: <name of ldv>.C: the "source" file of the LDV <name of ldv>.PRJ: the project file (Pure C) |
<...>/LDV/DOC | This documentation |
You can use for the skeleton of an LDV any source of an LDV found in the kit. It is up to you to see which file suits best the LDV you want to make!
The VISION kit provides the following LDVs as well as the sources (in PureC). Here are their characteristics:
INVERT.LDV | |
Description | Inversion of bits of an image |
Capabilities | Any number of bitplans (1, 2, 4, 8, 16, 24 and 32). Machine format. Does not modify the palette. |
Transformation type | In place. This property can also be suppressed from the CAPS define, and VISION can be forced to allocate memory for the destination (teaching only purpose!) |
Uses VAPI | No |
INI file | Yes (English / French) |
Comment | Very simple! Uses only vro_cpyfm VDI function Not really useful: VISION already provides the "Négative" function since version 1.0! |
XWAVE.LDV / YWAVE.LDV | |
Description | Waves on X / Y axis |
Capabilities | Any number of bitplans (1, 2, 4, 8, 16, 24 and 32). Machine format. Does not modify the palette. |
Transformation type | Forces VISION to allocate memory for destination. It must be possible to do without, but this complicates a little the LDV... |
Uses VAPI | Yes (Progress + Raster Interface) |
INI file | Yes (English / French) |
Comment | Amusing and quite simple. Presents the VAPI progress interface and the function to "clear" an image (RaImgWhite). |
BW.LDV | |
Description | Conversion of an image (or part in True colour) to an image in shades of grey |
Capabilities | Any number of bitplans (1, 2, 4, 8, 16, 24 and 32). Machine format. Modifies the palette. |
Transformation type | In place |
Uses VAPI | Yes (Progress + Raster Interface) |
INI file | Yes (English / French) |
Comment | Uses True colour conversion format functions (RaTCConvert and RaTCInvConvert). Shows also how to modify the palette. Compared to the equivalent VISION (B&W conversion) function, this LDV allows to do it on a block (True Colour mode only) |