The Slide Show Screen Saver for Windows displays a series of images and (optionally) plays a sequence of sound files from a designated directory. Images in JPEG, GIF, PNG, and BMP formats can be displayed, and full-colour images can be viewed on displays limited to 256 colours. Images too large to display on the screen are automatically scaled to fit. Wave audio (.wav), MP3 (.mp3), and MIDI song files (.mid or .rmi) can be played (assuming you have a sound board, and it includes a MIDI synthesiser). You can configure the rate at which images change and sound files are played, whether images and sounds are chosen at random or are shown in alphabetical order by file name (allowing you to script a slide show), and whether images appear at random positions on the screen to avoid burning in the phosphor (the Prime Directive for screen savers) or appear centred on the screen (preferable, perhaps, for machines running a slide show in a store window or on a trade show stand). Images and sounds can be played independently or synchronised with one another--the latter option allows you to assemble multimedia slide shows with a sound track for each slide. You can optionally display the date and time and/or the names of the current image and sound files above each image.
The Slide Show Screen Saver is available exclusively for 32-bit
Windows systems such as Windows 95/98/Me and Windows
NT/2000/XP. If you want to enter the Gates, you have to pay the
After you've downloaded the program archive, extract the files it contains with Info-Zip or a compatible archive extract program, then copy it to the directory where screen savers lurk on your system, as follows:
copy slidescr.scr c:\windows\system32\SlideShow.scr
copy slidescr.scr c:\windows\system\SlideShow.scr
copy slidescr.scr c:\winnt\system32\SlideShow.scr
The screen saver is supplied as a file conforming to the DOS FILENAME.EXT file name convention to allow you to extract it without requiring an un-ZIP program that understands long file names.
Didn't show up? If "SlideShow" (or "Slide Show") resolutely refuses to appear in the Screen Saver selection box and you're absolutely certain you copied it correctly into the system directory, the source of the difficulty is likely that most dreaded bane of the Windows user and developer, a DLL problem. The Slide Show Screen Saver incorporates "Internet Help" buttons in its Settings dialogue which, when clicked, direct your Internet browser to the appropriate pages on this site. Unfortunately, the system modules (DLLs) required to support this feature were not present in the original release of Windows 95 which, rather than behaving reasonably and simply disabling the feature, instead silently refuses to list a screen saver which requests a DLL missing from the system. If you can't seem to get the screen saver to appear, see if the files "URLMON.DLL" and "SHLWAPI.DLL" are present in the system directory for your version of Windows. If they're missing, that's why the screen saver won't appear. You could try to obtain and install copies of these files (they'll probably magically appear if you install a recent version of Internet Exploder, for example, but I can hardly in good conscience counsel you to consider that). Much safer is to download a variant of the screen saver in which the Internet Help gimmick is disabled. Un-ZIP and copy the contents into your system directory precisely as for the original version, replacing it. The screen saver should now appear in the list--if it still doesn't, I'm out of ideas why not.
It is essential you configure the screen saver in order to specify the directory containing the image files and (optionally) sounds you wish the screen saver to play. Click the "Settings" button to display the screen saver's configuration dialogue, as illustrated below. Items in this dialogue are as follows:
You can either type in the directory name directly (if it's invalid the screen saver will show a warning message when it next starts), or use the "Browse" button to display an open file dialogue. Navigate to the desired slides directory and select any file in the directory and click "OK". The selected directory name will appear in the slide directory edit field. You have to pick a file because the open file dialogue does not understand the concept of choosing a directory...idiots.
DIR /ONE" lists them by default). If you're using this to set up a slide show which plays in a particular order, note that if you have, say, 20 slides you'd want to give them names like "sld01.jpg", "sld02.jpg",... "sld10.jpg", "sld11.jpg",... "sld20.jpg". If you left out the leading zeroes in the slide numbers then, for example, all the "sld2x.jpg" slides would sort before "sld3.jpg", which is probably not what you had in mind.
When you unzip the archive, be sure to use a utility which preserves long file names and specify the option which maintains the directory structure in the archive; the various image processing libraries are kept in subdirectories, with the resulting library files linked into the screen saver proper.
The source code for this screen saver incorporates Fourmilab's Scream SaverTM technology. Because they turn off the cursor and seize control of the screen, mouse, and keyboard, screen savers can be hideously difficult to debug; you can't see the debugger since the screen saver is monopolising the screen, and any mouse motion terminates the screen saver, bringing the debugging session to a screeching halt. Scream Saver avoids these difficulties by allowing you to test an unmodified screen saver in a regular application window which can coexist with a debugger. Scream Saver is a main program which completely emulates scrnsave.lib, allowing you to exercise a screen saver within an application window (in either normal or preview mode) or in full screen mode. The screen saver's settings dialogue can be activated by a menu selection. To build with Scream Saver, simply uncomment the definition of SCREAM_SAVER at the top of the file screamsv.c and rebuild. (It's best to do a "Rebuild All" since Monkey C often screws up dependencies between program files and libraries, and you may get link errors when you change the setting of SCREAM_SAVER.) Launch the Scream Saver build as you would any application. Your screen saver can be tested in its various modes from the "Test" menu. Scream Saver only terminates the screen saver on a mouse click or keypress within its own window--mouse motion does not cause it to exit. This allows you to run your screen saver under a debugger as you would any other normal application. Scream Saver is in the public domain--you're welcome to use it in your own screen savers and pass it along to other developers. (One detail: Scream Saver allows you to start and terminate the screen saver any number of times in one execution session. This never happens when a screen saver is invoked by Windows. If your screen saver doesn't clean up after itself so it can be restarted, it may fail if you start it more than once in a Scream Saver session. You have two options: either fix the screen saver so it is restartable or re-launch Scream Saver for each debug session. The Slide Show Screen Saver is restartable.)
Microsoft Visual C 7.0 introduces a new XML-based file format for the build instructions for a program ("solution/project"), supplanting the Makefile which provided at least a glimmer of hope for portability among releases and compilers. "Solution" and "Project" files are included along with the source code in the various directories. Whether these files will work for you depends on how compatible whatever compiler you're using is with Microsoft C 7.0.
If you aren't able to use the "Solution" and "Project" files, you'll
have to manually create a project, import the files into it, and set
the configuration options appropriately to build a screen saver. The
program should be built as a Win32 application not using
(shudder) MFC. If you re-create the project, you'll
have to add the "../jpeg", "../libpng",
and "../zlib" directories to the include search
path for the slidescr project, and "../zlib"
to the path for the libpng project. Then you'll have
to include the respective libraries in the link of
slidescr. You will also need to include the
Windows libraries comctl32.lib,
and urlmon.lib as well (of
course, by the time you get around to doing this, undoubtedly the Kode
Kiddies will have renamed one or more of these, in which case happy
All prior releases are available from the archives.
Copyright 1990, 1991, 1993, David Koblas. (koblas at netcom.com) Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. This software is provided "as is" without express or implied warranty.
The Graphics Interchange Format© is the Copyright property of CompuServe Incorporated. GIFSM is a Service Mark property of CompuServe Incorporated.
The authors make NO WARRANTY or representation, either express or implied, with respect to this software, its quality, accuracy, merchantability, or fitness for a particular purpose. This software is provided "AS IS", and you, its user, assume the entire risk as to its quality and accuracy.
This software is copyright © 1991-1998, Thomas G. Lane. All Rights Reserved except as specified below.
Permission is hereby granted to use, copy, modify, and distribute this software (or portions thereof) for any purpose, without fee, subject to these conditions:
- If any part of the source code for this software is distributed, then this README file must be included, with this copyright and no-warranty notice unaltered; and any additions, deletions, or changes to the original files must be clearly indicated in accompanying documentation.
- If only executable code is distributed, then the accompanying documentation must state that "this software is based in part on the work of the Independent JPEG Group".
- Permission for use of this software is granted only if the user accepts full responsibility for any undesirable consequences; the authors accept NO LIABILITY for damages of any kind.
These conditions apply to any software derived from or based on the IJG code, not just to the unmodified library. If you use our work, you ought to acknowledge us.
Permission is NOT granted for the use of any IJG author's name or company name in advertising or publicity relating to this software or products derived from it. This software may be referred to only as "the Independent JPEG Group's software".
We specifically permit and encourage the use of this software as the basis of commercial products, provided that all warranty or liability claims are assumed by the product vendor.
The JPEG library contains an excellent colour quantisation module which implements Paul Heckbert's median-cut algorithm with back end Floyd-Steinberg error diffusion. This code is used for all image formats when a full colour image must be displayed on a 256 colour palette display.
Copyright © 1998-2002 Glenn Randers-PehrsonLibpng, in turn, uses the zlib compression and decompression library written by Jean-loup Gailly and Mark Adler.
Copyright © 1996, 1997 Andreas Dilger
Copyright © 1995, 1996 Guy Eric Schalnat, Group 42, Inc.
Contributing Authors: Simon-Pierre Cadieux, Eric S. Raymond, Gilles Vollant, John Bowler, Kevin Bracey, Sam Bushell, Andreas Dilger, Magnus Holmgren, Tom Lane, Dave Martindale, Glenn Randers-Pehrson, Greg Roelofs, Guy Eric Schalnat, Paul Schmidt, Tom Tanner, Willem van Schaik, Tim Wegner.
The PNG Reference Library is supplied "AS IS". The Contributing Authors and Group 42, Inc. disclaim all warranties, expressed or implied, including, without limitation, the warranties of merchantability and of fitness for any purpose. The Contributing Authors and Group 42, Inc. assume no liability for direct, indirect, incidental, special, exemplary, or consequential damages, which may result from the use of the PNG Reference Library, even if advised of the possibility of such damage.
Permission is hereby granted to use, copy, modify, and distribute this source code, or portions hereof, for any purpose, without fee, subject to the following restrictions:
- The origin of this source code must not be misrepresented.
- Altered versions must be plainly marked as such and must not be misrepresented as being the original source.
- This Copyright notice may not be removed or altered from any source or altered source distribution.
The Contributing Authors and Group 42, Inc. specifically permit, without fee, and encourage the use of this source code as a component to supporting the PNG file format in commercial products. If you use this source code in a product, acknowledgement is not required but would be appreciated.
There is no warranty against interference with your enjoyment of the library or against infringement. There is no warranty that our efforts or the library will fulfill any of your particular purposes or needs. This library is provided with all faults, and the entire risk of satisfactory quality, performance, accuracy, and effort is with the user.
© 1995-2002 Jean-loup Gailly and Mark Adler
This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
- The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgement in the product documentation would be appreciated but is not required.
- Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
- This notice may not be removed or altered from any source distribution.
Jean-loup Gailly Mark Adler jloup at gzip.org madler at alumni.caltech.edu
If you use the zlib library in a product, we would appreciate not receiving lengthy legal documents to sign. The sources are provided for free but without warranty of any kind. The library has been entirely written by Jean-loup Gailly and Mark Adler; it does not include third-party code.