home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Internet Info 1997 December
/
Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso
/
docs
/
qpeg386.doc
< prev
next >
Wrap
Text File
|
1995-01-15
|
14KB
|
317 lines
-----------------------------------------------------------------------------
Q P E G 3 8 6
_________________
~^~^~^~^~^~^~^~^~
A fast JPEG viewer for MS-DOS. VGA graphics and 80386+ required.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Currently supports JPEG, Targa (TGA), GIF, PCX, BMP, IFF/ILBM (LBM).
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Copyright (c) 1993/94 by Oliver Fromme -- All Rights Reserved
Oliver Fromme, Klingestr. 2, 38640 Goslar, Germany
Internet email: fromme@rz.tu-clausthal.de
WWW: http://www.rz.tu-clausthal.de/~inof/Welcome.html
Version 1.5e of 19-August-1994
This program is Shareware. You may copy the unregistered version, use it,
give it to your friends, upload it to a BBS or something similar, under the
following conditions:
* Don't charge any money for it. If you upload it to a BBS, make sure that
it can be downloaded free (without paying for downloading it, except
for usage fees that have to be paid anyway). Small copying fees (up to
5 DM or 3 $US) may be charged.
* Only distribute the whole original package, with all the files included.
* Don't change the files in any way, except:
You may change the INI, CFG, ASM, and DRV files for private purposes.
Don't distribute modified versions of these files to others without
prior permission of the author of QPEG386.
* If you want to include QPEG386 on a CD-ROM and/or book, please send me
a free copy of the CD/book (this is not a must, but I would appreciate
it very much).
Distribution of the unregistered shareware version is explicitely desired,
provided that the above conditions are accepted.
Graphics cards manufacturers: How about bundling QPEG386 with your product?
I'm sure many of your customers would appreciate that free extra bonus.
This software consists of the following files:
- QPEG386.EXE the main executable file
- QPEG386.INI initialization file (ASCII text)
- QPEG386.CFG standard configuration file (ASCII text)
Subdirectories ENGLISH (*=K) and DEUTSCH (*=C):
- QPEG386.DO* the documentation
- CHANGES.DO* list of changes from previous versions
- CONFIG.DO* how to configure QPEG386
- FAQ.DO* frequently asked questions
- REGISTER.DO* how to register
- REGISTER.FRM registration form (English)
- REGISTER.FOR registration form (German)
- UPDATES.DO* how to get updated versions of QPEG386
Other subdirectories:
- CFG\*.CFG various configuration files
- CFG\CFG.DOC description of the configuration file format
- DRV\*.DRV various video driver files
- DRVSRC\*.ASM source codes for the video drivers
- DRVSRC\DRV.DOC description of the video driver file format
Text files with a DOK extension are German, those with a DOC extension
are English.
There may also be some example JPEG files. They are not part of the QPEG386
software package.
A few warnings, disclaimer etc:
IMPORTANT: Using modes that your hardware (graphics card and/or monitor)
can't handle can damage your hardware! Be sure to use only supported
modes. If you come across a mode which looks flickering or unstable
(i.e. the monitor can't hold the picture), abort QPEG386 immediately and
delete that mode from the configuration file.
YOU ARE USING QPEG386 AT YOUR OWN RISK! THE AUTHOR (OLIVER FROMME) IS NOT
LIABLE FOR ANY DAMAGE CAUSED BY THE USE OF QPEG386 OR BY THE INABILITY
TO USE QPEG386. IF YOU ARE NOT SURE ABOUT THIS, OR IF YOU DON'T ACCEPT
THIS, THEN DO NOT USE QPEG386!
QPEG386 is inexpensive shareware. If you continue using it after a trial
period of 30 days, you are encouraged to pay a small registration fee.
(I try to avoid saying that you MUST register, but actually you MUST.)
The registration is valid for all future updates (you'll get a
registration key which makes the delay disappear). The source code of
the JPEG decoding routines (Pascal and Asm) used by QPEG386 is also
available.
To become a registered user, please print the file REGISTER.FRM and send
it to me with appropriate payment. Read the file REGISTER.DOC for further
information.
All product names mentioned in this software and documentation are trademarks
or registered trademarks of their respective owners. They're used in this
software and documentation for identification purposes only.
"The Graphics Interchange Format(c) is the Copyright property of
CompuServe Incorporated. GIF(sm) is a Service Mark property of
CompuServe Incorporated."
-----------------------------------------------------------------------------
What is QPEG386?
~~~~~~~~~~~~~~~~
QPEG386 (Quick-jPEG, pronounce "Q-Peg-386" [kju:peg]) is a viewer for JPEG
image files. It is about twice as fast as other common JPEG viewers.
Compare it yourself, you'll be surprised.
JPEG (Joint Photographic Experts Group, pronounce "Jay-Peg") is an image file
format which uses a "lossy" compression. JPEG images (they have usually a
"JPG" file extension) are normally very small and offer better compression
than any other image format.
Decoding of JPEG images is a rather complicated process, thus it needs a lot
of computing power and performance. QPEG386 takes advantage of the advanced
features of 80386, 80486 and Pentium (586) CPUs, and it uses large look-up
tables instead of formulas. Well, I don't want to get into details. It's
fast, that's all you could want to know.
Features
~~~~~~~~
- It's fast (have I mentioned that before?).
- Uses advanced features of 80386/486 processors (note, the Cyrix 486DLC
is only an improved 386 rather than a 486).
- Nice preview ability which is even faster (lets you quickly browse through
lots of images, very useful if you're searching for a certain image).
- Works even with a standard VGA card (320x200x16, 640x480x16, 320x200x256).
- Supports many SVGA cards (virtually all with VESA capability).
- Uses truecolor (16M color), hicolor (32K color), 256 color (either
greyscale or dithered color), and 16 color (dithered greyscale) modes.
- You can pan across an image which is bigger than the current screen
resolution (scrolling). Some XMS and/or EMS memory is needed for this.
You can even pan using your mouse, which is much fun (at least on fast
local bus machines).
- You can change the resolution without loading/decoding the image again
(this is restricted to the same color resolution, for example you can't
switch from hicolor to truecolor without reloading the image).
- Supports also the following image file formats (more to come):
* GIF:
+ interlaced and non-interlaced
+ GIF87a and GIF89a (87a subset only)
+ displays the first image of a multi-image GIF
* Targa (TGA):
+ truecolor (15, 16, 24 and 32 bit), greyscaled, or with palette
+ uncompressed or rle compressed (run length encoded)
+ supports all video modes (16, 256, 32K, 64K, 16M)
* PCX:
+ 1 and 4 bit with standard palette
+ 8 bit with extended palette
+ 24 bit truecolor
* BMP (Windows)
+ 1 bit monochrome with palette, uncompressed
+ 4 and 8 bit with palette, uncompressed or RLE4/8 compressed
+ 24 bit truecolor, uncompressed
* BMP (OS/2)
+ 1, 4 and 8 bit with palette, uncompressed
+ 24 bit truecolor, uncompressed
+ also supports the new multi image format (BA-BMP)
* IFF/ILBM (LBM)
+ 1 to 8 bit with palette, and 24 bit truecolor, also DP2 enhanced
+ uncompressed or compressed (ByteRun-1)
+ no HAM yet (due to lack of test images)
Requirements
~~~~~~~~~~~~
- 80386 or better CPU (33 MHz minimum recommended), 386SX is sufficient
- VGA graphics card (SuperVGA recommended, though QPEG386 will run on any
standard VGA card)
- some XMS and/or EMS memory (depending on the size of the images), though
QPEG386 will also run without any XMS/EMS, but then you will be unable to
do any panning/scrolling
- about 500 to 550 Kb of free conventional memory
- MS-DOS 5.0 or compatible operating system
A mouse is not required, but it's much more fun than keyboard control!
A numeric coprocessor is not required. If present, it will not be used,
because it would not speed up decoding/displaying.
Using QPEG386
~~~~~~~~~~~~~
At first you have to configure QPEG386 for your video hardware by running
the SETUP utility once. Please read the CONFIG.DOC file for more
information.
Then just type 'QPEG386' to run it. There are some command line options
(type 'QPEG386 /?' to get a help message), but they're usually not needed.
The graphical user interface of QPEG386 is rather intuitive, so there is no
need for much documentation. Press the 'F1' key to get a list of all
keyboard functions. Hit '?' to get a list of keys that can be used while
viewing an image. You can quit QPEG386 at any time by pressing Alt-X.
QPEG386 can also be used as command line viewer (without graphical user
interface). Type 'QPEG386' followed by one or more filenames. Wildcards
('*' and '?') are allowed, too. Type 'QPEG386 /?' for more information.
Experienced users should have a look at the initialization file QPEG386.INI.
It offers many possibilities to change QPEG386's behaviour, you can even
enable some advanced features which are disabled by default (e.g. automatic
video mode selection). It's a standard ASCII text file, containing
detailed comments for each topic.
Restrictions and Bugs
~~~~~~~~~~~~~~~~~~~~~
QPEG386 can't handle all kinds of JPEG images. Specifically, it can only
decode files which comply with the JFIF standard.
See 'Technical Information' below for more details.
The maximum image width is 4000 pixel. QPEG386 will refuse to decode larger
images. The image height is not limited, but if it's too large it may not
fit into memory (XMS/EMS), thus you can't see the bottom part when scrolling
down. If this happens, try to use a video mode with less colors, because it
needs less memory (see FAQ.DOC). Or buy more memory :-)
How to get an updated version of QPEG386
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Please refer to the UPDATES.DOC file.
Revision history and changes from prior versions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Please refer to the CHANGES.DOC file.
Technical Information
~~~~~~~~~~~~~~~~~~~~~
QPEG386 can decode greyscaled images (containing a single component using
h1v1 upsampling) and YCbCr true color images (containing three interleaved
components in a single scan, using either Yh2v2, Yh2v1 or Yh1v1 upsampling
for Y and Ch1v1 for Cb/Cr), covering virtually all JFIF files in use today.
QPEG386 can handle files that contain restart markers, but it will not use
them for error recovery. QPEG386 can also display JPEG files which were
created with the 'Adobe Photoshop' (at least version 2.5).
The basic JPEG decoding routines are written in pure 386 assembly language,
everything else is written using Borland Pascal 7.0. I am not using
protected mode, because it would slow down the decoding rather than speeding
it up. I have linked the JPEG routines into a single easy to use Pascal
unit, which can also be used within other applications. If you want to
purchase the unit, please read the file REGISTER.DOC for more information.
The JPEG unit provides procedures to open and close a JPEG file, read the
file header, and read the image row by row. It contains routines which
return the lines as 24 bit true color RGB/BGR, 15/16 bit hicolor, 256 color
dithered, 256 color greyscaled, 16 color grayscaled/dithered, and 16 color
greyscaled/dithered for preview (scaled to one eigth or one fourth).
A DLL library which can be used for Windows and protected mode applications
is under development and will be available soon.
Equipment used for Development of QPEG386
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Many people are curious about this, so here it is.
Hardware:
- Pentium 90 MHz, 512 Kb cache, 32 Mb RAM, PCI, Neptune chipset, Award BIOS
- 3.2 Gigabytes of harddisk space (WD, Quantum, Maxtor), both IDE and SCSI
- magneto optical disk drive (Fuji), 25 optical disks (3.2 Gigabytes)
- CD-ROM drive (Toshiba, doublespin)
- 250 Mb tape streamer, 15 tapes (3.75 Gigabytes)
- Cardex Challenger Pro graphics card, Tseng ET4000-W32p, 2 Mb, truecolor
- 15" color SVGA monitor w/ digital control & LCD display
- Advanced Gravis UltraSound (GUS) 1 Mb, Soundblaster, 200 W amplifier
- 16 bit network card, Ethernet NE2000 compatible, twisted pair + coax
- 1200 dpi truecolor flatbed scanner
- TI microLaser PowerPro, 6 Mb RAM, 600 dpi, 12 ppm, Adobe PostScript
- NEC P60 dot matrix printer
- Genius mouse, three buttons
- Highspeed faxmodem 14.4
- Lots of 3.5" HD floppy disks (mainly Fuji)
- Printer spooler:
+ intel 80486-DX2/66, 256 Kb cache, 16 Mb RAM, VLB, SIS chips, AMI BIOS
+ 120 Mb harddisk (Conner), IDE
+ Cardex Cobra graphics card, Tseng ET4000/W32i chips, 2 Mb, truecolor
+ 16 bit network card, Ethernet NE2000 compatible, coax
+ Soundblaster
- Mailbox/BBS (available soon):
+ intel 80386-DX33, 64 Kb cache, 20 Mb RAM, ISA, SIS chipset, AMI BIOS
+ diskless station
+ 16 bit network card, Ethernet NE2000 compatible, coax
+ Highspeed faxmodem 14.4
Software:
- Novell DOS 7 by Novell Inc.
- Borland Pascal 7.0 by Borland Int.
- Turbo Assembler 3.2 by Borland Int.
- XKEY, KEEP8, BOO by Oliver Fromme
- PKTINY 1.5 by Thomas Mönkemeier
- TURBODSK 1.1 by Ciriaco García de Celis
Special thanks to:
Thomas Mönkemeier, Lutz Kotoll, Thilo W. Fischer, Rainer Klaffehn,
Walter Schmies, Stefan Engel, Ben Jos Walbeehm, Uwe Schlenther
and all of my beta testers!
All product names mentioned in this software and documentation are trademarks
or registered trademarks of their respective owners. They're used in this
software and documentation for identification purposes only.
-----------------------------------------------------------------------------