Thank you for your interest and support of the GIF file
viewer Version 2.3a for Foxpro 2.0 & 2.5 !!
Introduction
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
FOXGIF is a small Loadable PLB File (Now reduced to only 10K in size !) that will display ANYSIZE B&W or color GIF File. You do not need to use the RUN or the ! command. FOXGIF Becomes part of FOXPRO when Loaded . It utilizes XMS memory or it's own Virtual Memory System to manage large Images and to speed viewing. GIF files can be viewed from a regular dos file or directly from a FOXPRO Memo Field. FOXGIFF supports many VGA and SUPER VGA monitors by way of loadable screen drivers. Screen drivers are loaded from a disk file or a Foxpro MemoField. A typical call to FOXGIF would look like :=VIEWGIF("FROGG.GIF","VGA.DRV"). FOXGIF supports many SVGA boards including the VESA standard by way of loadable screen drivers from Alchemy Mindworks Inc. Which are included in this package.
Evaluation Copy Limitations
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
If you have the Evaluation Version only 3 of 35 screen drivers are supplied. In addition MEMO Fields are not supported for IMAGES, they are for drivers. This version will not work in a shared Network Environment. And an annoying
Evaluation Copy message pops up on each invocation of the VIEWGIF Function. And The BackGround Proccessing Feature is disabled. To remove these restrictions PLEASE Register !!!!
FOXGIF.PRG DEMO Application
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Included with this package is a demo Program called FOXGIF.PRG This is a small demonstration program that will ask the user to select a GIF Image to View. It asks the User the Screen Type , Memory System to Use and Page buffer size. FOXGIF.PRG Will look for the DRIVERS Database which is included. Feel free to usa any part of the Demo code in your application.
When using FOXPRO(X) you must select Virtual memory Option, and I reccoment
using a 8K page buffer. Select a Screen Driver that matches the hardware you are running on. The Standard VGA drivers should work on any VGA card. If you have a SVGA card that has VESA suport the VESA driver should be used for maximum compatibilty and resolutions.
Paramter 1 is a string containing the GIF file name or a FOXPRO memo feild
reference .The Image File must be a Valid 2 B&W or 16-256 Color GIF file.
And can be as large as your XMS memory limit or DiskSpace. A memo feild
refernce must be precceded by a @ ie) @IMAGEDBF->IMAGE, ALias must be used
if Not currently selected database which ,might be the case if you are loading screen drivers from memo fields.
Paramter 2 is a string containing the screen driver file name or a FOXPRO
memo field reference of which contains the screen driver . A Screen driver is a binary file that that is loaded into memory and executed. Several drivers are provided for Standard VGA and many popular SVGA cards. See DRIVERS.DBF for a list. DRIVERSV contains all of the supported drivers in a memo feild called DRIVER. You can load the screen driver direclty from this file or copy the memo feild to a dos file . ie) Copy memo DRIVER to TRIDENT.DRV . A memo feild refernce must be precceded by a @ ie) @DRIVERS->Driver, Alias must be used if Not currently selected database which ,might be the case if you are loading screen drivers from memo fields.
Parameter 3 is of numeric type , it can be either a 0 or a 1. This parameter
instructs FOXGIF which Expanded Memory scheme to use. 0 for XMS or 1 For Virtual. FOXPRO(X) users need to use the virtual Option. When using XMS memory you need to make sure that at least 512K of XMS memory is free. This should allow the viewing of 800X600X256 Image Larger Images Should leave more free. IF you are using a memory manager like qemm386 that can make available EMS and XMS from the same memory pool you can set EMS setting in config.fp to some amount that will be 512K less then the total EMS in the system or What FOXPRO will use. ie; If you have 2048K or 2MB of Free EMS then set EMS=1536 in your config.fp file. The Virtual Memory Option will Create a (Unique File for LAN) SWAP file and will delete it when completed.
XMS and OR Virtual memory are needed to view Large Images. A 800X600x256
Image requires 480,000 Bytes of memory !
Parameter 4 is of numeric type , it can be either a 0 or a 1. This parameter
instructs FOXGIF which size page buffer to use. The page buffer is used to transfera page of Expanded memory from and to either XMS or Virtual memory Use 0 for a Small 4k buffer and use 1 for Large 8k buffer.The 8K buffer will speed things up when using Virtual memory option other-wise use small page buffer. This Memory is allocated from FOXPRO.
Parameter 5 is of numeric type , it is used to set the amount of time
that a image will appear on the Screen. The number represents MS DOS timer ticks (18/Second) to wait. One this time is expired The Image is left on the screen and it is upto you to call TextMode() to put the screen back into the proper mode. This allows you to display a Image for a certain amount of time while giving the option of doing something else in the background while the image is displayed. Like Playing a Voice or Music File. If 0 is use as the Timeout The User Must hit Escape to Exit the Image and Cursor Keys (panning) is in affect for Images larger than the Screen TextMode is automaticly called in this case. TextMode is called automaticaly on Unloading of PLB.
Programming Examples
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Set Libr to FOXGIF && Make FOXGIF a part of FOXPRO
=ViewGIF("Frogg.GIF","VGA.DRV",1,0,0) && View the GIF file && Call the Viewer
View the Frogg.GIF File with Standard VGA Driver File VGA.DRV using
XMS memory and a small Page Buffer..
Set Libr to FOXGIF
=ViewGIF(@IMAGE",@DRIVER",0,1,1) && View the GIF file
DO SoundIntro
=TextMode()
View The Image File Contained in Memo Field IMAGE. Use Standard VGA Driver
Located in the MemoFeild DRIVER . Use Virtual Memory with a Large 8K Page
Buffer.View The Image and return to FOXPRO for after one Second. Run a program called SoundIntro and Return the Screen to Text Mode.
Using timeout of 0
===================
Once an Image is on the screen you can exit by hiting Escape.
If the Image is larger than the screen use the arrow keys to
move around and PGDN-PGUP to move around the image a page at a time.
Use HOME-END to go to the top and bottom of the image.
0-9 keys select panning speed. Enjoy !!!!!!"
FOXGIF Requirements
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
FOXPRO 2.00 (a Version for FOXPRO 2.5 will be available when 2.5 ships)
VGA Video card Or Higher. 512KB Free XMS or at least 512KB of disk Space Free.
Error Codes Returned By FOXGIF
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
The Followinf Function can be used to Interprete FOCGIF Return Codes..
*****************
Procedure GIFERR
*****************
Paramters _ER
Case _ER=0
return "NO_ERROR_DETECTED"
** Success !!!
Case _ER=100
return "XMS_NOAVAIL_ERROR"
** XMS Memory Requested and not Available
** XMS Driver may not be loaded or Not enough XMS free
Case _ER=101
return "XMS_ALLOC_ERROR"
** Error Allocating XMS Memory . Probabaly not enough XMS.
Case _ER=102
return "VMS_ALLOC_ERROR"
** Virtual memory manager failure. Check your disk space.
Case _ER=103
return "XMS_PUT_ERROR"
** Error Writing to XMS memory
Case _ER=104
return "XMS_GET_ERROR"
** Error Reading XMS
Case _ER=105
return "VMS_PUT_ERROR"
** Error Writing to Virtual memory Swap File. Check Disk Space.
Case _ER=106
return "VMS_GET_ERROR"
** Error Reading Virtual memory Swap File. Check Disk .
Case _ER=107
return "DECODER_ERROR"
** Error GIF Decoder Error. GIF file could be damaged.
Case _ER=108
return "FILE_I_O_ERROR"
** Error Reading Imgae File.
Case _ER=109
return "FOX_MEM_ERROR"
** Error Allocating Memory Foxpro FoxPro Remove TSR Etc..
Case _ER=110
return "DRIVER_LOAD_ERROR"
** Error Loading Screen Driver. check to see if Valid and exists.
Case _ER=111
return "DRIVER_CALL_ERROR"
* Driver File Probabaly damaged.
Case _ER=112
return "DRIVER_TYPE_ERROR"
* Not a Supported Driver
Case _ER=113
return "FILE_OPEN_ERROR"
** Error opening Image File
Case _ER=114
return "NEED_VGA_ERROR"
** Must be running on VGA or better
Case _ER=115
return "OPEN_INPUT_ERROR"
** Error opeing IMAGE File.
Case _ER=116
return "NOXMS_ERROR"
** XMS Driver Not Found
Case _ER=117
return "PARAM1_ERROR"
** PLB Paramater Error Check the Type and count of your paramterts.
Case _ER=118
return "PARAM2_ERROR"
** PLB Paramater Error Check the Type and count of your paramterts.
Case _ER=119
return "PARAM3_ERROR"
** PLB Paramater Error Check the Type and count of your paramterts.
Case _ER=120
return "PARAM4_ERROR"
** PLB Paramater Error Check the Type and count of your paramterts.
Case _ER=121
return "NOT_GIF_ERROR"
** This can't be a valid GIF file.
Endcase
Screen Drivers
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
All VGA/SVGA Screen Drivers are Copyright (c) 1991, 1993 Alchemy Mindworks Inc. Additional VGA and SVGA Screen Drivers and Information on creating your
drivers own can be obtained Alchemy A Detailed Descrition is contained in the GWS.DOC file of the Graphics WorkShop . The Graphics work Shop is a
Excellent Image Manager It can Convert most Formats to another ie) GIF to GIF .
You can Register Graphics Work Shop from Alchemy Mindworks Inc. By Writing to :
Alchemy Mindworks Inc.
P.O. Box 500
Beeton, Ontario
L0G 1A0
Canada
History
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Feb/93 Version 2.2 Intial Release
March 8, 1993 Version 2.3
Tied in Error handler, prev. was not being used.
Fixed problem with loading Screen driver from Disk File.
March 10, 1993 Version 2.3a
Added Workaround to Problem with FOXPRO Standalone EXE's
See FOXBUG.TXT
Support
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
FOXGIF is Copyright (c) 1993 Warren Master
GIF(tm) is a Trade Mark of Compuserve..
If you have any questions/sugestions EMAIL me at (CIS) 70713,2002. Or
leave a message on FOXFORUM (ThirdParty Section) .
I check my EMAIL everyday...
All Suggestions/comments are appericated..
How To Receive FOXGIF
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
You can recieve FOXGIF for a small donation of U.S. $35.00 + $5.00 Handling
To Order: send Check or Money Order payable to:
Warren Master
1530 Pallisade AVenue
Suite 16C
Fort Lee, N.J. 07024
I can be reached via CIS MAIL My I.D. is 70713,2002 and I monitor
the FOXForum daily. No Phone Calls Please! FOXGIF can be recieved
by U.S. Mail or CIS EMAIL..
Distribution
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
This Software may be distributed with your application in a bound EXE or APP
One time ! Additional copies may be used by sending me $2.00/Copy. After 100
copies, it's yours for ever and for as many copies as you like. If you would
like to discuss this with me Please EMail me and I will contact you. Users
who register for Unlimited Distribuition have the option of Changing the
Notice that is in the Status Window....
WARRANTY AND LEGAL STUFF
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
There is no warranty of any kind associated with this software.
I assume NO responsibility for any damage or loss caused by the use of
this programs, however it may happen and whatever may happen.
I will not be liable for any damages whatsoever due to loss of data or any
other reason, even if I have been advised of the possibility of such damages.
Any risk of damage due to any possible inaccurate information or a
misunderstanding of the provided information is assumed by the user
of the information.
By using this software, you agree to these Terms.
That's it...
FOXPRO 2.0 & 2.5 PLB Shareware Catalog By Warren Master January 30, 1993