seejpeg v1.10 $Id: README,v 1.10 1999/11/08 06:35:14 evan Exp $ ------------------------------------------------------------------ Copyright (C) 1993-1999 Evan Harris Permission is granted to freely redistribute and modify this code, providing the author(s) get credit for having written it. ------------------------------------------------------------------ seejpeg is another JPEG viewer which utilizes svgalib and contains limited GIF, PPM, BMP and TARGA viewing support. The most useful feature of seejpeg is that it automatically decides on the "best" video mode to use based on the image being displayed and the video card being used. To aid it, various hints may be given as program options. In the worst case, it may be overridden. Video modes supported are limited to 2048x1536, 2048x1152, 1920x1440, 1800x1012, 1600x1200, 1360x768, 1280x1024, 1280x720, 1152x864, 1072x600, 1024x768, 960x720, 848x480, 800x600, 720x540, 640x480, 640x400, 512x384, 400x300, 320x240 and 320x200 in 256, 32K, 16M or 16M32 colours (assuming the video card, and svgalib, supports these modes). Logical screen sizes are only limited by the size of video memory. "16M32" colours is 24 bit colour in a 32 bit colour space. It is the only 24 bit colour mode available on some cards (e.g., Riva 128). If the image is larger than the screen size the arrow keys may be used to scroll around that part of the image which could be loaded into video memory. The Backspace key can be used to move to the previous image. Pressing any other key moves to the next image, or exits the program. ------------------------------------------------------------------ Program options =============== See the manual entry. ------------------------------------------------------------------ Compiling ========= This program was tested using version 1.4.0 of svgalib. It should also work with later versions. The following symbols can be defined in the Makefile: NO_32K_CASCADE If the best mode is available in 16M32, 16M and 32K modes and the complete image doesn't fit in memory using the 16M32 mode, the 16M32 mode is discarded and 16M mode used instead. If the complete image then doesn't fit in memory using the 16M mode, the 16M mode is discarded and 32K mode used instead. If this option is defined this action does not happen. TESTMODE This video mode is tested for - If the video card supports it, we assume that hicolor or truecolor (32K, 16M or 16M32) modes are available. If the video card doesn't support it, we assume that only 256 colour modes are supported. If this is not set in the Makefile, it is assumed to be G640x480x32K. If there is a video card which supports hicolor or truecolor but not this mode, let me know of a better default to test for and I'll change it in the next release. BUG_WORKAROUND Some versions of svgalib with some video cards can scramble the video mode when multiple files or slideshows are shown. This appears to be avoided somewhat if the text video mode is set between each picture. This is what the workaround does. This may not be needed for some versions of svgalib or some video cards. This option is defined by default in the makefile. ONLY_1_8_MODES The new video modes introduced in seejpeg 1.10 require svgalib 1.4.0 or later. If this option is defined, only modes used in seejpeg 1.08 are considered. This allows svgalib 1.3 to be used. Unless you change one of these options, or the default binary location, changing the Makefile should no longer be necessary. PIX_ALIGN is no longer set in the Makefile. If you wish to try different a value for it, see chiptype_init() in display.c. If you lower PIX_ALIGN and it works, send me the changes. To build seejpeg, you require version 6 of the JPEG library. This library is NOT included with seejpeg. It is available on sunsite.unc.edu under /pub/Linux/libs, amongst others. You may need to adjust the JPEG_HEADERS and JPEG_LIBS definitions in the Makefile to find the JPEG header and library files. Note that some prepackaged Linux distributions do not include all of the required libjpeg-6 files in their standard installations. Additionally, those that do do not all install it in the same place. The files may be in /usr/{include,lib}, /usr/local/{include,lib} or /usr/X11R6/{include,lib}, to name three possible locations. If in doubt, obtain, compile and install libjpeg-6 yourself. If you still have problems, let me know. ------------------------------------------------------------------ Acknowledgements ================ The following people have contributed to the development of seejpeg. Thanks everyone. Harm Hanemaayer svgalib development, putting up with lots of silly questions, providing lots of useful information, and a makefile bug report Jean-Francois Cordeau Peter Mutsaers makefile bug report in 1.0 Jeff Grills colour lookup (256 colour mode) bug report in 1.2 Michael Weller PIX_ALIGN patches against 1.1, prompting to add multiple images and the slideshow on-going svgalib development Nils Rennebarth described how to compile with libgr-1.3 cleanly Lord Maximilien helped fixed Trident 800x600 problems, suggested the new options which were added in 1.6 Ed Sawicki suggested the reload keyboard command ------------------------------------------------------------------ Feedback ======== The current version was compiled and tested with svgalib version 1.4.0 and a 4MB Riva128 based video card. There are no known bugs with this configuration (in seejpeg, that is). If you find a bug with any configuration please report it, including all the information displayed using the "-v" option. As of version 1.2, I have considered seejpeg "finished". Despite that, there have been 13 distinct versions since then. 8-) As has been the case since version 1.2, future releases will primarily be bug and compatibility fixes, although new features (sometimes only minor) have been added in each "major" release. Please send any feedback, especially bug reports, to: Evan Harris (evan@cs.mu.oz.au)