Dec 112017
VX386 is a 24bit (true-color) viewer for the Diamond SpeedStar 24X. It requires at least a 386 and 1.5-2MB of RAM. It is a 32bit application that uses the DPMI interface. File formats supported: JPEG, 24bit TARGA, and GIF.
File VX38613.ZIP from The Programmer’s Corner in
Category Printer + Display Graphics
VX386 is a 24bit (true-color) viewer for the Diamond SpeedStar 24X. It requires at least a 386 and 1.5-2MB of RAM. It is a 32bit application that uses the DPMI interface. File formats supported: JPEG, 24bit TARGA, and GIF.
File Name File Size Zip Size Zip Type
MODXCONF.EXE 101573 43598 deflated
VEMD.386 9272 880 deflated
VX386.DOC 12605 4937 deflated
VX386.EXE 201273 93580 deflated

Download File VX38613.ZIP Here

Contents of the VX386.DOC file

The author makes NO WARRANTY or representation, either express or implied,
with respect to this software, its quality, accuracy, merchantability, or
fitness for a particular purpose. This software is provided "AS IS", and you,
its user, assume the entire risk as to its quality and accuracy.

Here is vx386 v1.3, the image viewer that lets you look at the current image
in a slide show while decoding the next one to extended memory. When
you hit the ENTER or SPACE key, it (almost) immediately displays the
pre-decoded image, and automatically decodes the next one in the slide
show. This way, you don't have to wait. The first image in the show is
sent to the screen while it's being decoded. It can also look for the
images in multiple directories that you specify on the command line.

vx386 is a 32-bit extended dos program. It runs in 386 protected mode.
It uses a flat 32bit address space and 32bit instructions for speed.
It was compiled with the Intel's 386/486 C Code Builder (TM) compiler,

which I highly recommend. The dos extender is DPMI compliant, so it
will run in a fullscreen dos session under MS Windows(TM). vx386 is the
fastest GIF decoder I have ever tested. The JPEG decoder uses the
Idependent JPEG Group's JPEG software. It is the best JPEG
implementation around.

vx386 requires a 386 or better CPU, 1.5-2.0 MB free extended memory, and
one of the following video boards:

Diamond Speedstar 24X

It will display JPEG, 24bit rgb TARGA, and GIF87a or GIF89a files,
but it cannot do the fancy GIF89 stuff. Note, some comercial packages
use proprietary JPEG formats. vx386 supports JFIF and the "baseline"
JPEG formats, which are the most commonly used formats for distributing
JPEG images. If you are having trouble viewing TARGA files, make sure
they are in 24bit unmapped, uncompressed rgb format. This is the
default format of PICLAB, the Imager program that comes with the 24X,
and DJPEG. PBMPLUS also supports this format. vx386 will now display
upside-down targas right-side up.

vx386 is shareware. If you use it beyond the 10 day trial
period, please send $20 US to:

Bailey Brown
188 Morris Rd
Toney, Alabama 35773 USA


73020,3442 (CompuServe)

This initial release definitely has bugs in it. I took my real mode
gif viewer, SGIF, and ported it to 32bit extended dos, then added targa
and jpeg support as quickly as possible. I will fix bugs as soon as
I find them, but I would like to get this thing uploaded so people
can start using their spanking new 24X boards to the full extent of
their image viewing capabilities from dos.

One neat feature of vx386 is that it allows you to specify multiple
paths on the command line, so that you can browse through all of your
images at once, even if they are split among several directories.

It has a very good interactive slideshow capability. You can return to the
previous image, reverse direction, remove files from the slideshow, have
an automatic slideshow and specify the delay between pictures, pause an
automatic slideshow, and preview a image without clearing your current
slideshow selections.

Your can switch resolutions on the fly. In this case, the image is copied
from the screen to extended memory, then the mode is switched, then the
image is displayed, saving you the decoding time.

It will use the higher text modes (80x50, 132x25, 132x44) if they are needed
to display all of the files on the screen.

A more complete description of the features follows.

Version History:


Added detection of and support for upside-down targas. Also
fixed a bug that was probably causing a line of garbage pixels to
appear in one vertical scanline while viewing some targas.

Got rid of extensions on filenames. Now gif filenames are shown in
white, jpegs in red, and targas in cyan. This allows vx386 to display
572 filenames at once in 132x44 mode. The /c option is now defunct.
Program now prings "no files found" message when no image files are
found in current dir or in /d path.

Put delay between frames in slideshow option back in (/Wn).
Fixed problem with displaying some images larger than
640x480 in 32K mode.

Initial version.

COMMAND LINE OPTIONS (not case sensitive)

* means default

/X[S|N] Tells vx386 you have a Diamond Speestar 24X. This switch is
neccessary because vx386 will detect a 24X as a Paradise SVGA.
It will still work in this case, but you will not be able to
use the 24X's extended modes.

The 'S' option tells vx386 to check for snow in 1024x768x256 mode
when decoding the first image in a slideshow to the screen, one
scanline at a time. Snow checking is never needed otherwise.

Then 'N' option tells it not to check for snow. It is best
to try it this way first.

/V[:]x default screen dimensions (colon is optional) where x is one of the

*default (no /v option given) is to use automode, meaning
lowest mode that will show whole picture is used.

letter horizontal vertical colors

R 640 400 256
S 640 480 256 or 16.7M*
T 800 600 256 or 32K*
X 1024 768 256
1 next higher resolution than the one that
the image will fit in, eg 800x600 for 640x480 images
and 1024x768 for 800x600 images.

* vx386 uses 256 for gifs or true/hicolor for targa/jpeg at these resolutions.

/B[d|n] Background color

*none use background color specified in the gif header
(not necessarily color 0 from the color map, which
most gif viewers do).

D find darkest color in colormap and use it for the background

n where n is a number. Use color n in the color map for
the background. n must be in the range [0-nn] where nn
is one less than the number of colors in the image (usually
15 or 255).

vx386 will use color from gif header
vx386 /bd will use darkest color possible
vx386 /b0 will use color 0 (usually black)
vx386 /b255 will use color 255 (usually white)


specify Directories to look for images. Does not assume current directory.


vx386 /d.;c:\pix\people;c:\pix\places;c:\pix\things;..\morepix

will allow you to select images from the current directory and
the directories c:\pix;people, c:\pix\places, c:\pix\things,
and ..\morepix.

/K don't wait for Keypress between pictures (auto slideshow).

/Wn Wait time. Sets pause time to n 100ths of a second.
Useful with auto slideshow.

/R Return to DOS after displaying picture.

/E Leave picture on screen after exiting (don't clear screen).
Useful with /R option.

/C Display filenames in colors corresponding to the directories they
are in so you can see which ones are in the same directory.

SELECTION KEYS (not case sensitive):

ENTER show selected image(s).

SPACE mark image for slideshow.

PAGE UP move to top of screen.
PAGE DN move to bottom of screen.
HOME move to first column.
END move to last column.
^HOME move to tope left corner.
^END move to bottom right corner.

INSERT allows you to insert new choices into the middle of your
selection list. Just go to the selected filename that you want
to come after the new selection, press the "insert" key, and
then select the new file in the regular fashion. While "insert"
mode is activated, an 'I' will appear in the upper-right corner
of the screen.

'f' type 'f' followed by any char to move highlight to first filename
on screen that starts with that char. Good for moving around

'p' preview image (show image witout clearing slideshow list).

make next higher resolution default (starts with 640x480x256).
'x' make next lowere resolution default.

'i' display info on file (path, resolution, colors, size)

^D delete file after prompting

alt+s shell out to dos. Type 'exit' and 'enter' to return to vx386.


'a' use auto resolution.

'1' use next higher than auto resolution, eg. 800x600 for 640x480 image.

'd' use darkest color in images as background.

'k' (don't) wait for keypress.

ESC quit.

INTERACTIVE KEYS (while viewing images)

change to next higher resolution.
change to next lower resolution.

'u' unselect image, ie. remove it from slideshow.

'i' display info on file (path, resolution, colors, size)

^D delete file after prompting

go back to previous image

'r' reverse direction of slideshow.

ESC stop decoding/viewing and return to selection menu.


'a' use auto resolution.

'1' use next higher than auto resolution, eg. 800x600 for 640x480 image.

'd' use darkest color in images as background.

'k' (don't) wait for keypress.


Included is a device driver, VEMD.386, which should be installed in
your [386Enh] section of your windows system.ini file. Put the line


in that section.


This program uses the virtual-memory scheme provided by Intel's Code Builder
C compiler. The program's working space consists of whatever extended memory
is available, plus space in a temporary "swap file". The total working space
is called the "region". If the programs run out of space when processing a
large image, you can increase the region size as explained below. Conversely,
if you need to make the swap file smaller, you can decrease the region size.

As distributed, the program has a region size of 3 MB. Thus, if you have
2 MB of free extended memory, the programs will create a 1 MB swap file upon
startup. If there isn't enough free disk space to create the swap file,
you'll get an error message like this:
DOS Extender: Error X0130: Failure detected during program load
If this happens, you must free up some disk space or reduce the region size
in order to run the program. Another possibility is to put the swap file on a
different disk drive that has more free space. The default swap file is
You can select a different swap file name/location by setting the SWAP
environment variable, for example "set SWAP=D:\XMSWAP.TMP".

If you get an error message that looks like this:
Insufficient memory (case N)
then you need to increase the region size in order to process your image.

The region size for each program is encoded in the program's .EXE file.
To change the region size, run the provided MODXCONF program, for example
modxconf vx386.exe
Follow the on-screen directions to change the region size. (The stored region
size is ignored if it is less than the available extended memory; in that case
the programs always use all available extended memory.)

It is possible to pre-allocate a swap file. This makes vx386 start
up faster, since they don't have to create and delete the swap file. However,
the swap file then takes up space even when you are not using the program.
If you want to create a pre-allocated swap file, run modxconf and follow its
directions, or use any other method to create a file of the right name and
size. Note: when a pre-allocated swap file is present, the region size is
determined by the available extended memory plus the swap file size; the
region size stored in the .EXE file is ignored.

If you are running the programs in a DOS window under Windows 3.x (in 386
enhanced mode), the programs do not allocate a swap file. Instead, the amount
of extended memory indicated by the region size is requested from Windows, and
any swapping needed is handled by Windows using its swap file.

 December 11, 2017  Add comments

Leave a Reply