VGIF.EXE ver 3.4 by Bob Montgomery [CIS 73357,3140] 6-23-88
See revision history for new items. Now supports standard VGA and Orchid
extended VGA. An attempt at supporting other VGA cards is made; don't know
if it works or not-would appreciate feedback.
This is a GIF file viewer for VGA/EGA with the following features:
* Now allows adjustment of picture color and contrast.
* Now allows you to spec a mode on the command line.
* Saves to GIF and PC Paint/Pictor formats in VGA or EGA.
* Now handles up to 500 files.
* Determines equipment and uses VGA where possible.
* Very fast GIF decoding.
* Menu driven for selecting file(s) to view; returns with cursor at last
* Shows specified files like a slide show for EGA.
* /R option allows an application program to show a file and regain control.
* Creates PC Paint, ZSoft, Dr. Halo, or EGA PAint file from current pic
* Gives much better color rendition.
* Now allows creation of full size PC Paint, ZSoft, Dr. Halo (.CUT and .PIC)
and EGA Paint files in EGA mode.
Format: vgif [path\filespec] [path\][filename[.ext]] [/e] [/r] [/mode,number].
The default path is the current directory, and the default extension is
GIF. The /r option returns control to a calling program; see 5 below. The
/e option forces EGA mode if you have VGA, so all file conversions work.
If a filename is given, the single file will be shown. If path is a
directory, a menu of all files meeting filespec will appear. The mode
command is detailed in 6 below.
The commands are:
1. vgif [path\]filename[.ext] shows the file specified. The default path is the
current directory, and the default extension is GIF.
2. vgif [.ext] to get a menu of up to 500 files in current dir with extension
ext. The default extension is GIF. This is handy if you have some pictures
that you don't want to come up in the normal menu; ie, adult and nude pics
can be renamed to ADL extension.
3. vgif [path\][filespec] to get a menu of all files in the specified path
meeting filespec (may contain wildcards but not period). The default path
is the current directory, and the default filespec is *.GIF; just entering
'vgif' will give a menu of all GIF files in the current directory. Shows
whether VGA or EGA and modes supported in upper left corner.
4. vgif @[path\]filename[.ext] to do a slide show from commands in filename. The
default path is the current directory, and the default extension is SLD.
The commands are placed on seperate lines, and consist of either a filename
(GIF extension assumed), or a delay (viewing time) spec of the form d n
where n is the desired viewing time in seconds. The default viewing time is
5 seconds if no delay spec is given. Press any key to end the slide show.
Pictures that are 320 or less pixels wide are displayed double size.
5. vgif /r shows the file and then returns to DOS (or a calling application
program) with the picture still on the screen in EGA/VGA. It is not
necessary to change video mode between viewing each file, but it is up to
the calling program to reset text mode (mode 3) after all viewing is done.
5. vgif /e forces and EGA display with VGA, so all file conversions, slide mode,
and palette revisions work; forces operation like VGIF ver 2.0.
6. vgif /mode,ax[,bx] tells VGIF to use the ax and optional bx values to set
the specified VGA/EGA video mode. Allowable modes and default values are:
Default values Modes for Other Cards
Mode Size & colors ax bx AST/Paradise Vega (bl)
vga200; VGA 320x200x256 13h 0 13h 13h
vga350; VGA 640x350x256 2Dh 0 - -
vga400; VGA 640x400x256 5Eh 0 5Eh 66hø
vga480; VGA 640x480x256 2Eh 0 5Fh 67hø
vga540; VGA 720x540x256 6F05h 68h - 68hø
vga600; VGA 800x600x256 30h 0 - 69hø
ega350; EGA 640x350x16 10h 0 - 10h
ega480; EGA 640x480x16 12h 0 12h 12h
ega600; EGA 800x600x16 29h 0 58h 62hø
ega720; EGA 960x720x16 36h 0 -
ega768; EGA 1024x768x16 37h 0 - 65hø
ø - For Vega Extended boards, set ax=6F05h and mode number in bl.
You may enter any number of these mode specs on the command line.
For example, if you have a Paradise VGA PRO board and want to use
640x480x256 (which is Paradise mode 5Eh) you would enter /vga480,0x5e
on the command line. This will replace the default 2Eh value with 5Eh.
You can enter the mode in decimal, or hex if you use the 0x prefix.
To set the Vega V7VGA, enter /vga480,0x6f05,0x67
I am not sure this will work on all boards, and would like feedback on
7. vgif ? gives a help screen.
Commands in menu mode: * => EGA only
1. The up, down, right, and left arrow keys move the cursor around the menu
of files. PgDn/PgUp goto next/previous page. Pressing a key goes to next
file starting with this character.
2. Pressing the spacebar marks a file for viewing or slides, and moves to the
next file; it will also unmark a previously marked file.
3. Pressing enter will display the marked files in the order they were marked.
If no files were marked, pressing enter displays the file at the cursor.
4. Pressing F3 will display the file size and colors on the next to last line.
5. Pressing F1 will bring up the help screen; any key will return to the menu.
6. * Pressing F2 will do a slide show of marked files until a key is pressed;
doesn't work yet for VGA.
7. Pressing ESCape ends the program and returns to DOS.
8. Pressing Ctrl Break (or Ctrl C) will get you directly to DOS.
All other keys are ignored. If errors are encountered, an error message appears
on the next to last line, and disappears when the cursor is moved.
The menu title is the search spec.
Commands while viewing a file (except in slide mode):
1. The up/down arrow keys will scroll the picture if longer than the screen.
The PgUp and PgDn keys will scroll by 10 lines.
2. If pic is <= 1/2 the screen width, pressing 2 will give a double size image
(which may be scrollable) and pressing 1 will give the normal size again.
For VGA, the picture will be chaged only in the horizontal direction; this
will unsquash some 320x400 pics so the aspect ratio is correct.
3. Pressing + will increase the resolution for VGA (320x200 to 640x480, etc).
4. Pressing - will decrease the resolution for VGA; useful if 800x600 rolls.
Presently, the following commands with an * work only with EGA (or VGA with the
/e option) at this time. Some will be implemented in later versions. All the
conversion options check if the default filename is present, and promt for a
new name if it is. They all now let you know what is happening while the
conversion prodceeds. If you screw up at the new filename prompt, hit Ctrl C
to escape immediately to DOS; this will usually preserve a file you don't want
to write over. The safest bet is to view files on floppy, while running VGIF
from the hard disk. The new file is saved to the default drive, which is the
directory you run VGIF from.
5. * Pressing Z will create a ZSoft (PC Paintbrush) file with the same filename
and extension PCX. The file will be a 640x350 paint file of what is
currently on the screen.
6. Pressing P will create a PC Paint or Pictor file with the same size as the
current screen. The default extension is .PIC, and for EGA it prompts for
a PC Paint or Pictor file.
6. Pressing G or I will create a GIF file on the default drive, and promt for
a new filename-the default extension is GIF; G is for non-interlaced, and
I is for interlaced files. The GIF file will be the same size as the
7. * Pressing R will create a RIX (EGA Paint) file with the same filename and
extension SCR (or SCP if a long pic and L pressed first).
8. * Pressing H will create a Dr. Halo pic file with the same filename and
extension PIC. The file will be a 640x350 paint file of what is currently
on the screen. A palette file will be created.
9. * Pressing C will create a Dr. Halo cut file with the same filename and
extension CUT. The pic will be the same size as the GIF file is currently
on the screen. A palette file will be created.
10. Pressing enter will return to menu or DOS, or show next file for marked
11. Pressing ESCape will end the display and return to the menu.
12.* Pressing L before pressing Z, P, R, C or H will save the picture to that
file type from the top of the current screen to the end of the
picture. Thus, if viewing a 640x480 pic, and you press LP, you will
create a PC Paint pic file that is a 640x480 image. If you had
scrolled up 10 lines, it would create a 640x470 image, etc. Pressing
S will cancel the L command. For Dr. Halo .PIC files, the L creates a
640x480 file if the GIF file was between 351 and 480 rows.
13. The following keys control the picture tone as follows:
F1 Decrease red content of picture.
F2 Increase red content of picture.
F3 Decrease green content of picture.
F4 Increase green content of picture.
F5 Decrease blue content of picture.
F6 Increase blue content of picture.
F7 Decrease contrast of picture (VGA only).
F8 Increase contrast of picture (VGA only).
F9 Decrease brightness of picture (VGA only).
F10 Increase brightness of picture (VGA only).
Alt-F10 Restore original palette after you thoroughly mess up the colors.
V Reverses the current palette (EGA only); interesting effect especially
for black & white images.
After a little experimenting, a 'washed out' VGA picture can be greatly
improved by using F1-F10 , and you can always start over by using Alt-F10.
To retain a black background in a VGA picture, the brightness should be
decreased when the contrast is decresed. If you have really improved the
picture, you can then save it to GIF by pressing G of I.
All other keys are ignored. Pressing Ctrl Break (or Ctrl C) will go to DOS.
VGIF is user supported software. VGIF for the IBM PC is made available for a
free ten day trial period. If you find this program useful, you may license
the program for non-commercial use on one machine by sending $10.00 to:
123 Parsons Road
Longwood, Fl 32779
VGIF may be licensed for commercial use on up to 10 computers at a single site
or set of contiguous sites for $50.00. A commercial site is defined as a
business or individual seeking to make a profit by selling VGIF or incorporating
this program in another program.
Clubs, schools, universities and other organizations may license VGIF for
$30.00 per 6 copies.
All other rights are reserved.
VGIF may not be changed or modified in any way except by the author. VCUT may
be freely distributed for the ten day trial period as long as it remains in its
complete form. Regardless of how the copy is obtained, it is requested that
all users comply with the licensing agreement.
All licensing registrations will be promptly acknowledged. All licensees
will receive prompt notification of product revisions and will be able to
purchase updates at a nominal fee.
All warranties are disclaimed, including damage to hardware and/or
software from use of this product.
Any suggestions or comments can be mailed directly to me, or left on
the following BBS's:
Tsunami BBS, Half Moon Bay, Calif. (415) 726-2726
PC Rockland, S. Nyack, NJ (914) 353-2176 [Freeboard] 300+ Meg Online
ver 1.1 1-13-88
Added test for EGA adapter.
Fixed menu colors.
Allow ESCape from marked file viewing.
Added Ctrl Break (or Ctrl C) exit to DOS anywhere.
Added 'disk full' notification when creating picture file.
Added critical error handler for 'drive not ready' errors.
ver 1.2 1-15-88
Changed name to vgif.
Slide mode now ignore the end of file mark in slide file, and any key
will now end slide mode.
Added slides to menu mode if S pressed-shows marked files as slides
until a key is pressed.
ver 1.3 1-21-88
Added better error checking to GIF file decoding. Notifies if bad GIF
Fixed error reporting bug in single file mode.
ver 1.4 2-9-88
Added instantaneous screen update in slide mode from menu or command
Added the /r option which allows an application program to call VGIF
to view a file and then regain control.
ver 1.5 3-2-88
Added Page Up and Page Down keys to scroll by 10 lines at a time.
Added a max pic height of 819 lines so EGA buffer would not overflow.
Greatly improved color reproduction for 'problem' pictures (such as
FROG, ARCHIT, PUFFIN, VEGTABLE, etc). These pictures typically
have more than 16 colors. Selected colors on basis of frequency
of use where possible.
Fixed following bugs:
1. Line buffer would overflow into other variables if pic width
was > 640 pixels, causing strange results.
2. Didn't recognize the end of image marker correctly. This would
cause the palette to change when the image was done.
ver 1.6 3-11-88
Fixed a bug in handling multiple images. First noticed when viewing
Use same palette for multiple images, and get best color match.
Added L and S commands while viewing a picture. These allow you to
create full size paint program files.
ver 2.0 3-26-88
Added the ability to view long GIF files ( > 819 lines) without
wrapping the display.
Added the C and H (Dr. Halo) file creation option while viewing.
Added the L and S prefixes to paint program file creation commands
while viewing to save long pic files.
Added the Info and Help commands in menu mode.
Deleted the # requirement to specify a directory from the command
line. The program now looks for a directory which meets the
spec on the command line. If none is found, it assumes the spec
is for a single file.
Added F1 - F10, and V palette control keys while viewing a file.
ver 3.0 5-2-88
Added VGA capability, and support for Tseng extended VGA modes
(640x480x256 and 800x600x256).
Determines and displays available modes for your system.
ver 3.1 5-11-88
Fixed a bug in dir/file spec from command line. Now accepts
vgif d:\dir\*.gif or vgif d:*.gif, although the [\]*.gif is not
required, since this is the default filespec.
Fixed a bug in forced EGA when doing slides, where an interlaced pic
displayed at double size would have a 'venetian blind' effect.
Changed so pics larger than 320x200 are shown in 640x480 VGA; can get
800x600 by pressing + key.
Note that EGA mode on the Orchid VGA card appears squashed
vertically. This is normal, and cannot be corrected without
reprograming the parameters for mode 16, which would change
the vertical retrace frequeny, and probably cause your monitor
ver 3.2 5-26-88
Added 500 file menu, and assy language text screen updating; now
Fixed a bug which caused the Vega VGA card to hang up.
ver 3.3 6-9-88
Added user spec of video mode for non-Orchid VGA boards.
Added GIF and Pictor save of current screen for VGA/EGA pics.
Added prompts to screen for conversion to other formats.
Removed conversion starting at first visible row-now does whole pic.
ver 3.4 6-23-88
Fixed a bug in the GIF save routine.
Added color, contrast, and brightness adjustment in VGA.
Fixed a bug in menu mode for marked files.