GEMlib 0.43
Major Changes
This page summaries some historical points about GEM libraries and the main
changes done in GEMlib to get GEMlib 0.43
History: what is GEMlib 0.43
To sum-up, GEMlib 0.43 is a kind of merge between:
...plus some functions added, some bugs fixed, and a lot of internal changes so that gemlib 0.43
is the first safe thread version of gemlib (mgemlib only has the AES bindings
safe thread, and gemlib 0.42.2 has nothing safe thread).
Last main new feature: a full API documentation
generated from the source code using doxygen
GEMlib 0.43 is now thread safe
GEMlib 0.43 has a new include scheme : there are now 4 header
files: gem.h, gemx.h, mt_gem.h and mt_gemx.h.
- If you need the "single thread" AES library design, there's
nothing to change: keep including gem[x].h in your programm.
- If you need a "mutlithread only" GEM library, include mt_gem[x].h
(DO NOT include gem[x].h). Then, only mt_aes functions will be
available (AES functions without the "mt_" prefix are declared in
gem[x].h headers only).
Nota: in all cases, the VDI library is safe thread.
Because of the new design (thread safe) and because of the merge,
some incompatibility between gemlib 0.42.2 and gemlib 0.43.0 (or
between Mgemlib 41 and gemlib 0.43.0) has appear.
from gemlib 0.42.2 to gemlib 0.43.0
- box_get_visible() has been renamed to lbox_get_visible() (this
function is part of the lbox library)
- global vdi data has been removed (vdi_intin, vdi_intout,
vdi_ptsin, vdi_ptsout, vdi_control, vdi_params)
- global aes_params (and _GemParBlk) has been removed. gl_apid,
gl_ap_version and aes_global[] are still here (for "single thread"
design usage only).
from mgemlib 41 to gemlib 0.43.0
- v_ftext16() prototype has changed
- v_ftext_offset16() prototype has changed
- vqt_devinfo() has been renamed to vq_devinfo()
- vqt_f_extent16() has been renamed to vqt_f_extent16n()
(vqt_f_extent16() is the same function with a different
prototypage)
- v_gtext16() prototype has changed
- box_get_visible() has been renamed to lbox_get_visible() (this
function is part of the lbox library)
- global vdi data has been removed (vdi_intin, vdi_intout,
vdi_ptsin, vdi_ptsout, vdi_control, vdi_params)
Older pages
These old pages presents the work in progress when working on GEMlib 0.42.99
(the pre-version of GEMlib 0.43)
Copyright (c)2003-2005 Arnaud
BERCEGEAY <bercegeay at atari.org>
http://arnaud.bercegeay.free.fr/gemlib/changes-0.43.htm