home *** CD-ROM | disk | FTP | other *** search
- -----------------------------------------------------------------------------
-
- Q P E G
- ___________
- ~^~^~^~^~^~
-
- A fast JPEG viewer for MS-DOS. VGA graphics and 80386+ required.
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
- Copyright (c) 1993 by TBH-Softworx -- all rights reserved
- Oliver Fromme, Klingestr. 2, 38640 Goslar, Germany
- Internet email: inof@asterix.rz.tu-clausthal.de
-
- Version 1.0f of 15-Nov-1993
-
- This program is Shareware. You may copy it, 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).
- * 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 QPEG.
- * QPEG may not be part of any commercial product or service without my
- written permission.
- * QPEG may not be used in any corporate or gouvernment institution without
- being registered.
-
- This software consists of the following files:
- - QPEG.EXE the main executable file
- - QPEG.INI initialization file (ASCII text)
- - QPEG.DAT data file for QPEG (don't modify!)
- - QPEG.DO? the documentation
- - CHANGES.DO? list of changes from previous versions
- - INSTALL.DO? how to configure QPEG
- - REGISTER.FRM registration form
- - JPEGUNIT.PAS order form for the JPEG Pascal unit
- - TBHGLOGO.RLE TBH logo for user interface
- - 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 QPEG
- software package.
-
- 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 QPEG immediately and
- delete that mode from the configuration file.
-
- YOU ARE USING QPEG AT YOUR OWN RISK! THE AUTHOR (OLIVER FROMME) IS NOT
- RESPONSIBLE FOR ANY DAMAGE CAUSED BY THE USE OF QPEG OR BY THE INABILITY
- TO USE QPEG. IF YOU ARE NOT SURE ABOUT THIS, OR IF YOU DON'T ACCEPT THIS,
- THEN DO NOT USE QPEG!
-
- QPEG 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. The source code of the
- JPEG decoding routines used by QPEG is also available.
- To become a registered user, please print the file REGISTER.FRM and send
- it to me with appropriate payment. If you want to get the JPEG source code,
- print the file JPEGUNIT.PAS instead.
-
- All product names mentioned in this software are trademarks or registered
- trademarks of their respective owners.
-
- -----------------------------------------------------------------------------
-
- What is QPEG?
- ~~~~~~~~~~~~~
-
- QPEG (Quick-jPEG, pronounce "Q-Peg" [kju:peg]) is a viewer for JPEG image
- files. As far as I know, it is the fastest viewer available for MS-DOS
- based computers.
-
- 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. QPEG takes advantage of the advanced
- features of 80386 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?).
- - 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 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 GIF images (non-interlaced).
-
-
- Requirements
- ~~~~~~~~~~~~
-
- - 80386 or better CPU (33 MHz minimum recommended)
- - VGA graphics card (SuperVGA recommended, though QPEG will run on any
- standard VGA card)
- - some XMS and/or EMS memory (depending on the size of the images), though
- QPEG will also run without any XMS/EMS, but then you will be unable to
- do any panning/scrolling
- - MS-DOS 5.0
-
-
- Using QPEG
- ~~~~~~~~~~
-
- At first you have to configure QPEG for your video hardware. Please read
- the file INSTALL.DOC for more information.
-
- Then just type 'QPEG' to run it. There are some command line options
- (type 'QPEG /?' to get a help message), but they're usually not needed.
-
- The graphical user interface of QPEG is rather intuitive, so there is no need
- for much documentation. At the top of the screen there's a list of all
- keyboard functions. Hit '?' to get a list of keys that can be used while
- viewing an image. You can quit QPEG at any time by hitting Alt-X.
-
- QPEG can also be used as command line viewer (without graphical user
- interface). Type 'QPEG' followed by one or more names of files or
- directories. Wildcards ('*' and '?') are allowed, too.
-
-
- Restrictions and Bugs
- ~~~~~~~~~~~~~~~~~~~~~
-
- The basic JPEG decoding routines of QPEG are written for maximum speed,
- there's no time for error checking, thus QPEG may lock up your PC if it tries
- to decode a corrupt JPEG file. To prevent that, you can decode the defective
- file using another JPEG decoder (for example DJPEG by Tom Lane / IJG) and
- compress it again. The resulting JPEG file should be decodable by QPEG
- without any problems.
-
- QPEG 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. QPEG 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. Or buy more memory :-)
-
- This version of QPEG can't handle interlaced GIF files.
-
- If you convert a black-and-white image to JPEG format, QPEG may display
- checkerboard patterns in the white areas. This is due to round-off errors.
- NOTE: Do not convert black-and-white images to JPEG format! JPEG is not
- intended to be used for that kind of images, and GIF does usually a better
- job (regarding both image quality and compression). Therefore I don't think
- I should fix that bug, since additional checking for round-off errors would
- cost additional time.
-
-
- How to get an updated version of QPEG
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
- This version is most probably not the last one. There are several ways
- to get an up-to-date version of QPEG:
-
- - You can get it free by FTP via The Internet. Of course that's only
- possible if you've got access to The Internet. You can find QPEG at
- 'ftp.tu-clausthal.de' (139.174.2.10) in /pub/msdos/graphics. There's
- also a mail server available at 'mail-server@rz.tu-clausthal.de'.
-
- - You can get it by registering QPEG. See REGISTER.FRM for more
- information. The registration is valid for all future updates of QPEG.
-
- - If you're already a registered user, you can get an updated version
- free by electronic mail (email). If this is not possible, you can get
- it on disk via normal "snail" mail, but that costs 10 $US or 10 DM
- to cover my expenses. Before sending me money, make sure that there
- IS an updated version (otherwise you might be disappointed because you
- got the same version you already have).
- You can find my mail and email addresses at the top of this documentation
- or by entering 'QPEG /?'.
-
-
- Future Enhancements
- ~~~~~~~~~~~~~~~~~~~
-
- As mentioned before, this is probably not the last version of QPEG.
- These features are planned for future versions:
- - Support for more image formats, e.g. Targa and interlaced GIF files.
- - Mouse support (point and click).
- - Tagging multiple files and view them in sequence.
- - Slideshow option (preloading images, but panning disabled).
- - Shrinking of big images.
- - Option for automatically choosing the appropriate video mode.
- - Support for more SVGA cards. If you've written a working video driver
- that isn't already distributed with QPEG, I would be most grateful if
- you send it to me.
- - More enhancements. If you have any ideas, wishes, comments etc, please
- let me know.
-
-
- Technical Information
- ~~~~~~~~~~~~~~~~~~~~~
-
- QPEG 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.
-
- QPEG can handle files that contain restart markers, but it will not use them
- for error recovery.
-
- 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 print the file JPEGUNIT.PAS and send it to me with
- appropriate payment.
-
- 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
- output the lines as 24 bit true color RGB/BGR, 15 bit hicolor, 256 color
- dithered, 256 color greyscaled, 16 color grayscaled/dithered, and 16 color
- greyscaled/dithered for preview (scaled to one eigth).
-
- -----------------------------------------------------------------------------
-