Release notes for VISION

Last update : 01/07/22

Version Comments
Current version:, to get it:
  • From VISION updater (assuming your Atari machine has Internet access): check update feature in version 4.7a below and let magic happen...
  • Old school: get it from here
- Support for Img View modules available at (thanks to Lonny Pursell)
- Automatically selected if present in c:/GEMSYS/IMGMOD or edit ImgMod field from section [Folders] of VISION.INI
- By defaut (new install), internal modules are preferred, then Img View modules, then zView LDGs (Global field of section [Img Priorities] in VISION.INI
- In case of an update, please manually change Global = 1,3,2
- Additional scripting commands for:
- clipboard: clip_sel, clip_copy, clip_cut, clip_past, clip_pasteN
- silent modes for progression and form alerts: form_silent, prog_silent
- More documentation:
- Correction of  bugs
- not taking proportional width into account in resize GUI
- VCS scripting files not properly queued from command line
- Snapshot keys ('*' and '/') not working
- Un-accurate detection of Brainstorm's DSP decoder
- Cursor lost under some conditions (4.9b1)
- Block position displayed in window information
- Code size optimizations
- Update from Internet may fail in case curl is used as command line may exceed 124 bytes. In such a case, an error shows in vision.log
- Better handling of events when cursor goes over menu (leaded to general slowness under myAES, thanks to Olivier Landemarre)
- Fixed GEM window memory leak when an image is loaded with an error
- Handling of extended error code reported by a zView LDG (thanks to Lonny Pursell)
- HexDumpOnError added in vision.ini to prevent VISION from opening HexEditor upon an error on loading (sorry no GUI for that)
- VISION has a mirror web site (, for 2 reasons (pick the true one...):
- Due to a very large increase of requests, I setup a mirror site for load-balancing reasons...
- It enables using https for VISION's updates; to configure it:
In VISION.INI, [Update] section set:
Updater = curl
TrustedCAFile =cacert.pem
Please check comments in this section of VISION.INI for more information
Despite the apparences, redirects to an https site (because does not feature https)
At the end, the requests will end-up on a Raspberry PI4 (located at my home) hosting the mirror site
- GUI improvements:
- Filenames with a space within are properly handled (ARGV protocol)
- You can drag'n'drop folder(s) to VISION's icon:
VISION will open the folder(s) in the Image Browser. If you hold Control key, the folders will be added recursively to Image Browser window (may take some time!)
- AP_DRAGDROP protocol handled (when VISION is already started):
  If you drag'n'drop some files to:
 - ToolBar or an existing image: VISION will open these files
If you hold Shift key, theses files will be opened in the Hexadecimal Editor
- Image Browser: these files will replace the ones currently in Image Browser (if any). You can even drop some folders, the files within this folder will get added as well. If you hold Control key; these files will be added recursively (may take some time!).
- Added Fixed Palette dithering (from True Color to 16 or 256 colors) in dither and optimg LDVs. Note that it only applies when TC image has less than 16 or 256 colors. dfixpal.vcs script added.
- Fixes:
- French RSC file fixed (
- Image icons could be displayed wrongly
- Using "Save" feature, image may not be saved to proper location
- Horizontal/Vertical symmetries texts were swapped
- If a LDV failed to execute, the original image may not be restored
- If a LDV failed to execute, the preview was still the same, now it is crossed to report an error
- German vmsg.txt typos fixed (thanks to Lars)
- Small bug fixes
- Log (-NOT- file logging) feature removed, bet it was never used
- Code size optimizations, many code factorizations
- Bugfix: ellipsis drawing and interior fixes (thanks to Throsten/Eero for notifying:
- New dither algorithm: dual-tone
- Function CoGetScreenInfo added to config interface to get informations on the current screen
- New VAPI interfaces:
-Image I/O (Im): ImGetInf, ImLoad, ImFree, ImSave, ImDither, ImGetStdData to open, save, dither, get information on an image file
- File (Fi): FiFileExist, FiFolderExist, FiCopyFile, FiCopyFileR, FiMoveFile, FiCreateFolder, FiCmpFiles to ease file/folder manipulations
- Scripting (VCS files):
- close command supports optional 'nosave' parameter to avoid prompting
- VCS scripts allow iterations inside a folder with filemask and recurse options
- New scripts lloopfol.vcs, ddualton.vcs et ldvopt.vcs in SCRIPTS folder
- Added global variable LFCurrentFile holding the name of the current file in a loop into folders
- New LDVs:
- Dither.ldv: dithers an image using any VISION's algorithm, any number of planes
- OptImg.ldv: optimizes an image based by analyzing it and pick the optimal format for saving based on user-defined profiles
4.7a4Continuous Integration, to get it:
- Reactivity to Control-C improved thanks to G.Tello and O.Landemarre
- A LDV can work on the image from the image file itself (so with its original color depth) when filename is passed using -f<filename> through a vcs script, see scripts/ldvf.vcs for an example
  • VISION can update itself from Internet:
    • Any new version will be published right away. Warning, it could be unstable; worst case download official release from
    • VISION enables this feature if an Internet connection is likely to be present ('STiK' cookie is present or multi-tasking environment such as Mint)
    • Controlled by section [Update] from VISION.INI, sorry no GUI for that
    • VISION relies on the presence of wget or curl tool to update, so make sure one of these is installed:
    • By default:
      • VISION checks for new version each week
      • VISION prompts you before installing new version
  • Way better performances when images are read from a NFS connection
  • LZW decoding stability improved (GIF/TIFF)
  • ShowIBrowser added in VISION.INI to control display of Image Browser window
  • LDVs can accept a string as a parameter (type 3)
    • Reports the number of different colors on each line and globally
    • By default, file cntcol.txt is generated in VISION's folder unless parameter #2 is provided by a VCS script (sorry not available from GUI)
    • 2 algorithms are available (parameter #1):
      • 1: Use a bit array of colors (globally) and color tracking (per line) to count
      • 2: Sort/reduce colors per line and globally (from seedy, see
      • Performances/memory usage are more in favor of algorithm #1 except if the image is really big and has a lot of colors, however memory usage will be greater
    • Generates an image with as many colors as possible
    • Basically used to test CNTCOL LDV
    • Generated image is pretty ugly, just focusing on using maximum number of colors
  • LDV can report a new flag, LDVF_NOCHANGE, to tell VISION image won't change (typically a report LDV such as CNTCOL)
  • VAPI exports new functions for dynamic memory allocation: MeXalloc, MeXrealloc, MeXfree, MeXcalloc, MeXstrdup
    • Main interest is to allow LDV benefit from VISION's memory boundchecks/leakages
  • A scripting file (.VCS) can be loaded from File-->Open
  • Default values for pencil size (using Control-1 to Control-9) can be modifed in VISION.INI (Thickness field in [Graphics] section)
  • Print feature generated an incorrect file for prnting on machine requiring usage of standard VDI
  • Scripting feature: a .VCS text file can be loaded to automate VISION's operations such as catalog, image load/close, LDV run. See SCRIPTS folder for examples
  • Pencil size can be ajusted using Control-1 to Control-9 keys (tablet usage, thanks to Claude for suggestion)
  • Better management of internal/zView module failing to load to give other module a chance to load successfully
  • VISIONL.PRG is now available for low-end machines (1MB), following features are removed (freeing about 120KB):
    • Logging
    • Batch Conversions
    • Scripting
    • Only IMG and TIFF internal image formats are available (all zView LDGs remain automatically available)
    • Printing
    • Help Bubbles
    • Extended memory allocation/tracking features
  • Several improvements on image/Hex dump loading (avoid crash due to improper identifying)
  • DRAG&DROP protocol gracefully failed to avoid timeout
  • Fixes bug 60
  • Includes new version of PNGLIB (1.6.37 for Thorsten Otto's website)
  • Includes new version of LDG (dynamic modules used for VISION's plugins and zView plugin support), fixes an incompatibility with SLB libraries (used for PNG support) previously addressed by a workaround. Thanks to Olivier and Thorsten.
  • RsrcChoice key added in [General] section to accomodate some cases where color icon library cannot detect screen organization. (-1: auto (default), 0: use integrated code for color icons on all AESes, 1: use AES provided routines). Only know configuration requiring this is Falcon+Radeon card in TC32.
  • Fixed checkbox clicks in Real Time Zoom preferences
  • Support for brainstorm JPEG DSP image loading in TC32
  • Menu display on right properly aligned for all AESes (thanks to Daroou)
  • Folder existence routine now working OK on all TOSes (used to fail on TT TOS so all folder preferences were not usable)
  • Fixed double '\' character on folder names
  • Last image close restores default palette
  • Text redraws (mainly for progress windows) now correct for all AESes (leaded to incorrect text updates on TT AES)
  • Under myAES a quit request from menu might have been erased by a mouse click
  • Better management of zoom in Image Browser window
  • VISION logo might not show in "About..."  dialog
  • Progress window shown when building list of files to be added to catalog
  • Fixed palette bug in BMP image loading
Thanks to Guillaume Tello, Kroll, Olivier Landemarre and Daroou for their tests and help
  • Fixes bugs 58, 59
  • Fixes bugs 52, 53, 54, 57
  • Several image loading bugs fixed (BMP, DEGAS, TIFF)
  • Performance improvement when using progress windows; this could be drastic when progress is called many times (e.g.: on a LDV running a 4K image: 1700ms-->400ms)
  • Trace levels LL_GW1 and LL_GW2 added to help troubleshooting GEM messages
  • JPEG default quality set to 90 (75 used previously was really poor)
  • Support for import Targa 32bit and RLE encoded images
  • Support for dithering TC32 --> 256 colors
  • PNG image support for import (requires pnglib shared library,see png.txt)
  • zView external plugins support for import, zView  (see ImgPriorities/Global sections/leys and Folders/zvLDG in VISION.INI for configuration). Plugins are available at (zView itself) and (LP's zView codec pack)
  • On batch conversions, images above a defined size can be reduced (only available from english and french VISION.RSC (high resolution) files)
  • Filtering on image names in catalog window view (hit characters/backspace, switch between 'starts with' and 'contains' with Control-H)
  • Improvements (speed and memory consumption) of .INI file management
  • Many thanks to LP and Vido for zView support and testing and Guillaume Tello and Olivier Landemarre for myAES and memory allocation debugs
  • Fixes bugs 4445, 46, 47, 48, ,49, 50
  • Keyboard strokes improved against different OSes/Virtual environnements
  • Progress windows estimate remaining and completion times.
  • Holding left mouse button on a dialog control is limited to 20 notifications/s, it was almost impossible to define Real Time Zoom window size with nowadays computer's speed.
  • Hex dump now has search capabilities (binary, ASCII caps/no caps, count, wrap around)
  • Logging file a bit like log4j. Controlled by [Logging] section and LoggingFlags et LoggingFile entries from VISION.INI.
  • New function InGetKeyFromFile in VAPI
  • New function CoGetProcessors in VAPI
  • New interface Logging and functions LoDoLog and LoGetLogLevel exposed by VAPI
  • TT-RAM memory can now be used (automatic selection by VISION upon needs).
  • A memory tracker is included and logs allocations/frees/statistics/errors (DEBUG/MEM/INFO/WARNING/ERROR levels)
  • Old protection mecanism removed
  • If graphic resolution is over 1440x900, True Color wheel is 4 times bigger
  • Some hardware capabilities can be masked out to LDVs in VISION.INI, that enables easier testing
  • Aranym native NFJPEG is supported (very fast JPEG decoding!)
  • Catalog will display most recent images first (before looking at name, format and biplanes). Please note this mandates catalog file to be updated. VISION will propose it automatically and exisitng catalog files will be backup-ed prior to the migration.
  • Catalog stability enhanced and longfile name support.
  • VISION can now manage several catalogs (main form or icon window).
  • Catalog dialog and window icon view are kept in sync for updates/adds/removals.
  • Images can be selected from window catalog (with support of control/shift keys); selection can be removed from catalog (DEL key) and image files can be removed also (shift+DEL). Also accessible from a right-click on catalog window
  • A keyword can be defined in catalog INI file to select a category (syntax: Path=[keyword])
  • Catalog INI file can now be applied to whole catalog (not only before adding images)
  • VMSG.RSC has moved to VMSG.TXT to ease translations and limit errors I have done German, Italian and Swedish translations using Google Translate.
  • VMSG.TXT files consistency can be checked using chkmsg.prg
  • If an issue is detected in VISION.INI (e.g. wrong path), VISION will try to fix it automatically.
  • New LDV: BlackHole
  • VISION is published under MIT license.
  • Known bugs and limitations:
  • 51:When an icon in the current number of colors already exists, VISION wrongly tries anyway to free it when exiting. This comes from a very old and fuzzy color icon library and it is way too tricky to solve this comparing to the benefit. Note this error is caught by VISION's allocation tracker and does not lead to any crash nor leak. So live with it. This only happens in 16 colors modes.
4.0f An hexa viewer (beta) is available !
Have a look at the downloads page !


Fixes bugs 34, 35, 36, 37, 38, 39, 40, 41, 42, 43
New version of JPEG (DSP) decoder from Brainstorm thanks to Carsten Pauer. This version is much better for CT2 users.
VISION is available in Italian thanks to Lodovico Zanier
New LDV : Perspective Y
Scale functions ("Change size...", full page, image browser...) are faster from 2 to 3 times !
Real time zoom speed is increased by 10% to 40% !
Zoom on an image is up to 5 times faster !
All these scale/zoom relative functions are also memory optimized as hey require *much* less memory to run.
Some totally invisible stuff added in order to prepare for the future external image modules.
The bit-planes to TOS indexes function (RaRaster2Ind) is 3 to 4 times faster ! I was thinking of optimizing it for long away...
New functions RaTC15RemapColors, RaTC16RemapColors, RaTC32RemapColors, RaRasterRotateGetDstMFDB, RaRasterRotate, CoGetFunctionOptimizations in VAPI
Rotation, gamma correction and brighness have been moved into LDV
You can edit the LDV parameters values by typing in the current displayed value
A LDV can change the parameters sent by VISION (may be useful if you want your LDV to set all parameters to the same value)
VISION can manage the selection, so the LDV has to deal only with a "full" image (see LDVF_NOSELECTION)
In the "LDV Apply" dialog, we can change the size of the preview and even hide the source preview in order to increase the size of the destination preview, here are the keys of interest in the LDV section of VISION.INI :
PreviewDstSize and PreviewSrcSize
If PreviewSrcSize is set to 0, only the destination preview will be displayed
Some memory optimzations : a lot of static data has been moved to dynamic allocations like windows, Undo buffers (you can now have 99 Undo buffer PER image!), etc... Even with the new features VISION saves up some 28 KB of memory !
MeSCopyMemory8, MeSCopyMemory16 , MeSCopyMemory32 functions are 40% to 300% faster !
4.0d Current version. Fixes bugs 30, 31, 32 et 33.
VISION is now available in German thanks to Ulrich Gunthner
New LDV : Pixelize
New function added for LDVs : GetParams allows the input of specific parameters
New functions PrSetText and PrSetProEx in VAPI
New functions RaGetImgSize, RaRasterAlloc and RaRasterFree in VAPI.
New interface Configuration and functions CogetLDVPath and CoGetCurrentLanguage
New interface INI and functions InOpen, InClose, InSaveAndClose, InGetKey, InSetKey and InGetOrSetKey
New interface MEM and functions MeSCopyMemory8, MeSCopyMemory16 and MeSCopyMemory32
LDV can now be cancelled
LDV can refuse to work on the selection block..
When doing Undo/Redo on disk, progress is displayed on the window information bar
One can force the use of the standard VDI format by setting the ForceUseStdVDI variable in section [General] of VISION.INI to 1
You can see LDV performances by setting the ShowPerf variable in section [LDV] of VISION.INI to 1
4.0c Fixes bugs 27, 28, and 29
4.0b Fixes bugs 20, 21,22, 23, 24, 25, 26
  • VISION gets modular !
    A click with the right mouse button on an image displays a popup menu, giving you the ability to start LDV
    Then you can select the LDV you want, have a look at its details and apply it on an image or a part of it.
    A development kit (in French at the moment but the 'C' source code is something universal...) is also available !
  • Big changes in user interface
    - Multitasking environments are much better handled
    - Progres windows are moveale and they redraw well...
    - Some dialog boxes are now non-modal :
    . True Color wheel
    . Index selection on the color palette (now his window is freely moveable and resizable)
    . The album -Yepee !-
    . The thumbnail view of the album -Yepee !-
    - A lot of details like you can iconize, move, resize when a modal window is opened
  • New window : Image Browser
    Sooo cool, this window allows you to display in a very quick way the images in a folder like the ACDSee software on Windows (very nice software !). This window is displayed at startup and gives you acces to the following features :
    - Load image : the image will be displayed and the image list of the same folder will be memorized
    - Previous/Next image : Display the previous or the next image in the folder. You can cancel the loading of an image by typing on the<-- or --> key and then start the load of another image.
    - Edit : Opens a VISION's classic window image, giving you access to modifications
    - Print : Prints the current image
    - Delete : Deletes the image file on disk
    - Zoom : Popup used to change the zoom level of the displayed image
    - Move : If the image cannot be fully displayed in the image browser window, you can move on it by pressing the left mouse button and moving the mouse.
  • The default category in album idea is extended by an INI file
    You can associate a INI file instead of a default category in order to specify the categories to be set depending on the folder where the image is. This INI file is defined in the information album window and is structured like this :
    [Lookn] --> n is the finder priority (0 is the hightest)
    Path=... --> path and mask, if the file to be addes is contained in this variable, the image will be added with the following catagories :
    Catn=... --> Name of the category n (1,2,3). If this category does not exist, it will be created (take care of the 32 categories limit) . If an error occurs, or if Catn is not defined, the default album category will be used.
    This INI file is very powerful ! If you use to organize images into folders, once you created this INI file, all new files will be added without any need to set up categories image per image !
  • VA_START protocol handled
    If your desktop (Thing, Magic,...) uses this protocol, you can load another image in VISION without re-starting it again.
  • Long names can be used
    Depending on the system version (Tos, Mint, Magic...), some system functions does not handle very well long filenames. This can create some errors especially with the batch convert or album features. The long names handling can be removed with the preferences, it replaces the 'scrolling popups" option which wasn't very useful...
  • A right click on the mouse button into the thumnail album window displays a popup that gives you access to :
    - Image loading
    - Information on image
    - HTML export of the thumnails
  • Faster : album sort (up to30 times if your album is very big (above 8 Mb) ) !
  • You can specify the remove, destroy of sources files and the replacement of existing ones on the batch convertion window
  • Filters can be translated into any language (create the language name folder into VISION\FILTRES)
  • The progress window shows the global progress when adding images into album or batch convertion.
  • You can have a different start and end line style in the shape dialog window
  • When using lines or KLines tool, coords are dispalyed in the info bar
  • You can start another program by clicking on an image with the right mouse button (in parallel with VISION if a multitasking system is used)
  • The palette can be displayed by clicking on an image with the right mouse button
  • SplashWindow key added in vision.ini
  • DisplayToolBar key added in vision.ini. To display it again, open the preference dialog box
  • If VISION does not find the vision.ini file, it gives you the ability to tell it where it is
  • Bugs fixes 15, 17, 18 et 19
3.5a Major enhancements:
  • 256 colors dithering (automatic selection)
  • SnapShot function added, activated with '*' and '/' keys on numeric pad:
  • JPEG files can be loaded without DSP
  • JPEG files can now be generated
  • You can divide an image into sub-images and save it (used to generate an array of images in an HTML page)
  • Interleaved GIF files can be loaded
  • Faster : grey level dithering speed-up by 25 % - 35 %
  • Album window is now resizable
  • A new popup appears by clicking with the right button on a window and displays functions Restore, Maximiser, Informations, sauve, sauve as and close
  • A log file can be activated in order to produce automatically a Slide Show file who contains images loaded with 'Open'
  • In 24 bits True Color modes, images are now correctly displayed (some problems still exist...).
  • Fixes bugs 05, 06, 07, 08, 09, 10, 11, 12 and 13
  • Shareware wait fixed to 15 seconds
3.0d Fixes bug #04
3.0c Major enhancements:
  • Automatic detection at start-up of the need to use of standard VDI format
  • Automatic detection at start-up of True Color plane organization (manual panel has been removed)
  • VISION now handles 65K True Color format (still not 24 bits format !)
  • Keyboard speed-up (using direction arrows) to move into images or window catalog
  • The window catalog is less "modal": except modifications on images, you can do everything (close, move, iconize...)
  • All styles (lines, points...) are now saved in VISION.INI
  • The right white strip has been removed in Slide-Show
  • In .VSS slide-show files, you can insert a comment at the end of a command line
  • Fixes bugs #02 and #03
  • Shareware wait set to 10 seconds
3.0b Fixes bug #01
3.0a First Shareware version. Updates are:
  • Real Time window zoom
  • Fastest !
  • More compliance with graphics cards (still not perfect...)
  • Disk undos up to 99 levels
  • Slide-Show linked with catalogue
  • Minor bugs fixed

Quicky replaced by version 3.0b

2.5j Last version distributed by ALIAS