GIF.EXE ver 1.1 by Bob Montgomery [CIS 73357,3140] 1-15-87 This is a GIF file viewer for EGA with the following features: Very fast GIF decoding. Menu driven for selecting file(s) to view; returns with cursor at last position. Shows specified files like a slide show. Cursor automatically moves to next file when marking in menu mode. Creates PC Paint, ZSoft, or EGA PAint file from current pic. The commands are: 1. gif [path\]filename[.ext] to show a single file. The default path is the current directory, and the default extension is GIF. 2. gif [.ext] to get a menu of up to 80 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. gif [#path\][filespec] to get a menu of all files in the specified path meeting filespec (may contain wildcards). The default path is the current directory, and the default filespec is *.GIF; thus just entering 'dg' will give a menu of all GIF files in the current directory. The # was necessary to specify that a path is being requested. Consider the command 'dg \gif'. Does this say you want to view a GIF file named GIF in the root directory, or does it say you want a menu of all GIF files in the subdirectory \GIF? The # makes clear that you want a menu of all GIF files in the subdrectory GIF. Entering dg \gif\d*.adl would get a menu of all files starting with the letter d and having an extension adl in the subdirectory \GIF of the current drive. The only type commands it doesn't understand is a path of the form .\dir (indicating a subdir of the current dir); it does understand a full filespec of the form .\dir\*.gif. 4. gif @[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 ESCape to end the slide show. Pictures that are 320 or less pixels wide are displayed double size. 5. gif ? gives a help screen. The # and @ commands can both be given on the command line. The # specifies the path and filespec (* and ? OK) of the GIF picture files, and the @ specifies the path/filename of the slide file. The @ has higher precedence than #, and you will get a slide show. Thus, if the slide command file and the GIF files are in the \GIF directory, and you are somewhere else, you can do a slide show by either dg @\gif\cmds #\gif or dg #\gif @\gif\cmds. The # and . commands can also be given on the same command line, where the #path specs the path and the .ext specs the extension to look for. This is the same as giving #path\*.ext Commands in menu mode: 1. The up, down, right, and left arrow keys move the cursor around the menu of files. 2. Pressing the spacebar marks a file for viewing 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 ESCape ends the program and returns 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 350 lines. 2. If it is 320 or less pixels wide, pressing 2 will give a double size image (which may be scrollable) and pressing 1 will give the normal size again. 3. Pressing Z will create a ZSoft (PC Paintbrush) file with the same filename and extension PCX. 4. Pressing P will create a PC Paint 2.0 file with the same filename and extension PIC. 5. Pressing R will create a RIX (EGA Paint) file with the same filename and extension SCR. 6. Pressing enter will return to menu or DOS, or show next file for marked menu mode. 7. Pressing ESCape will end the display and return to the menu. All other keys are ignored. The program was first written in C, and then the following parts were rewritten in assembly language (which increased the speed by a factor of 2): 1. GIF decoder for speed. 2. EGA screen writing for speed. 3. Part of PC Paint encoder for speed. 3. File search module for menu mode, since can't do conveniently from C. The program requires an IBM or compatable with at least 256K of RAM, and a EGA adapter (256K) and monitor. If you like and use the program, please support it by sending $10 to: Bob Montgomery 123 Parsons Road Longwood, Fl 32779 This will encourage me to update the program periodically, and to upload other picture viewers/converters. The next program will be a PC Paint picture viewer which can save the EGA screen to ZSoft, RIX, and GIF files. The program took about 1 month to write in its final form. If you use it, $10 is not much to pay for a useful tool; not much more than a typical session on a long distance BBS. Please don't rip me off. Any suggestions or comments can be mailed directly to me, or left on the following BBS's: Compuserve Tsunami BBS, Half Moon Bay, Calif. (415) 726-2726 PC Rockland, Nyack, NJ (914) 353-2176 Revision history: ver 1.1 1-13-87 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.