1******************************* Version 0.9.1  *********************************
2
3	Added port of Pixel City, originally by Shamus Young,
4http://code.google.com/p/pixelcity/
5	Replaced methods deprecated by ImageMagick.
6
7******************************* Version 0.9.0  *********************************
8
9	Added port of drempels, originally by Ryan M. Geiss,
10http://www.geisswerks.com/about_drempels.html
11	Added new saver feedback by Tugrul Galatali.
12	Added support for DPMS to idle the saver when the display isn't on.
13	Fixed brown paper bag bug in hyperspace.
14	Added two new presets to flocks inspired by Matt Richard's Wavy Gravy on
15openprocessing.org
16	Tweaked hufo_smoke to avoid flat flame effect.
17	Fixed unknown argument segfault in lattice.
18	Switched matrixview's main character array to vertex arrays, which helps
19significantly on older nVidia hardware.
20	hyperspace and drempels have command line arguments to disable use of
21shaders in case they behave unexpectedly.
22	Minor changes to fix builds on other platforms.
23
24******************************* Version 0.8.3 *********************************
25
26	New screen saver Lorenz contributed by Soeren Sonnenburg <sonne@debian.org>
27	Fix for SF #2673397 by changing =='s to >='s in widthChange update logic,
28otherwise non-sense values for interpolation would wreak havoc. Also changed for
29xyzChange.
30
31******************************* Version 0.8.2 *********************************
32
33	Limit frame rate to vertical refresh by default if compiled with GLEW
34and GLX_SGI_swap_control is available. Otherwise, maxfps set to 30.
35	--nice eliminated and made default. nanosleep/usleep are much better
36behaved these days.
37	spirographx modified to use vertex arrays and GNU extension sincosf if
38available, dropping CPU usage significantly.
39	Minor updates to correct issues noted by newer compilers.
40	--disable-debug is now the default in configure.
41
42******************************* Version 0.8.1 *********************************
43
44	Pulled in vroot.h patch from Ari Pollak's Debian package.
45	Added missing #include <assert.h> to hyperspace.cpp
46	Image loading in matrixview was hanging for whatever reason,
47		rewritten with the new Magick Wand interface.
48	ImageMagick now required.
49	timeval to double conversion now fixed with an explicit cast of tv_sec
50		to double.
51	Fixed automake files to use CLEANFILES
52	Dropped SSE/3dnow stuff
53	Fixed hyperspace.xml typo in dist_kdessconfig_DATA
54
55******************************* Version 0.8.0 *********************************
56
57	Rough sync against new Windows release, rssavers 0.1
58		Except for skyrocket
59		Added new saver Hyperspace
60
61******************************* Version 0.7.6 *********************************
62
63	Fix to matrixview.c where the body of a thread was accidentally left as a
64subfunction of a function that exits while the thread is still alive.
65
66	Added an autoconf check for ExportImagePixels since it was very recently
67added (5.5.7).
68
69******************************* Version 0.7.5 *********************************
70
71	Removed multiline strings that are no longer supported by gcc 3.3.
72
73	Added spirographx, a port of an OSX app/screensaver SpirographX by
74Holmes Futrell <holmes@neatosoftware.com>.
75	http://homepage.mac.com/solidmag/spiro/
76
77	Added matrixview, based on Alex Zolotov's Matrix GL. Hacked in external
78image loading and ability to modify the resolution of the matrix.
79
80******************************* Version 0.7.4 *********************************
81
82	Fixed bug in lattice when the variable passed to acos would be slightly
83greater than 1, causing cascading nan's that made the program useless.
84
85	Explicitly clearing buffers to avoid garbage in blurring modes.
86
87	Lots of stupid little bug fixes.
88
89******************************* Version 0.7.3 *********************************
90
91	Added trails and blur options to flocks. Also added presets to spruce
92things up in combination with random preset selection when running
93unconfigured.
94
95	Fixed another cpu detection bug, damn off by one errors :)
96
97	Added support for decimal integer arguments to -window-id.
98
99	Added .desktop files for preliminary support of KDE. Not sure where
100the default directory is, but if it isn't specified by --with-kdessconfigdir,
101the configure script checks for the existence of:
102
103/usr/share/applnk/System/ScreenSavers
104
105******************************* Version 0.7.2 *********************************
106
107	Fixed bug in cpu detection code.
108
109	Fixed a bug that included audio data in skyrocket when OpenAL wasn't
110found.
111
112******************************* Version 0.7.1 *********************************
113
114	Fixed a typo crashing skyrocket on big endian machines. Spotted by
115Michel Danzer.
116
117	Two new savers: biof and busyspheres.
118
119	New texture smooth for colorfire.
120
121	Fixed a bug that left screensavers running after they should have quit.
122
123	Replaced compile time cpu feature detection with runtime detection.
124
125******************************* Version 0.7.0 *********************************
126
127	Extracted all binary data from the source into binary files. The
128source distribution has gotten notably smaller as a result.
129
130	The binary files are now converted during compilation to significantly
131larger source files with escaping instead of base64 type inefficient strings.
132The resulting executables have no unnecessary bloat.
133
134	If the bzip2 library is detected on the system, it is used to compress
135the binary data before conversion.
136
137	Added --disable-bzip2 flag to configure. This is to give up space in
138order to avoid a delay while decompressing, which is noticeable in skyrocket
139that has about 3MB of compressed textures and audio.
140
141	Added --disable-sound flag to configure. This chops off about 3.3MB
142(before compression) of audio from skyrocket and any runtime overhead
143associated with sound. Useful if you intend to keep passing volume = 0 to
144skyrocket.
145
146	Added SSE/3DNow optimized code that gives euphoria a nice 10% boost
147on my P4, probably a bit more on an Athlon but I haven't had recent console
148access to one. I'm new at this, so there is probably room for more improvement,
149but this is probably good news to those that use euphoria for wallpaper :)
150	--disable-(sse|3dnow) nukes the code if you wish to build all
151encompassing binaries.
152
153	Added xscreensaver-demo config files provided by Curtis Haas
154<WonderBoy5150@hotmail.com>.
155
156	More intelligent library linking via a patch provided by Alan Swanson
157<swanson@uklinux.net>.
158
159******************************* Version 0.6.8 *********************************
160
161	Terry Walsh (the original author) pointed out a bug causing the camera
162not to rotate in Lattice.
163
164	Fixes to make Sun's compilers content.
165
166	Removed original rate limiter in plasma that caused banding when
167running full screen on my machine (dual 1.7Ghz P4 Xeon w/ GF4 Ti4400).
168
169	Some other plasma cleanups.
170
171	Reorganized much of driver.c
172
173	Added hack_cleanup to handle things that might not automatically be
174freed on exit. Currently just deleting GL lists that might help some people
175using DRI.
176
177	Added a signal handler to deal with exiting in fullscreen mode by
178hitting CTRL-C and some other common signals.
179
180******************************* Version 0.6.7 *********************************
181
182	Fixed a relatively harmless bug where the smoke textures in SkyRocket
183were missing 48 bytes.
184
185	Rearranged command line argument processing to avoid unportable
186rescanning of argv with getopt.
187
188	Now dynamically allocating the largest of the static arrays within
189SkyRocket's initWorld function to fix a SIGSEGV on FreeBSD -current.
190
191	No longer relying on RAND_MAX, which is not 2^31 - 1 on Solaris 9 w/
192gcc 3.2 from sunfreeware.com.
193
194	Made autoconf a bit smarter to find openal on FreeBSD.
195
196	Stopped including unistd.h if including getopt.h to avoid a compilation
197error on FreeBSD w/ the GNU getopt port installed.
198
199	Fixed garbled sound on big endian machines by swapping pairs of bytes
200in the embedded audio samples.
201
202	Now intercepting WM_DELETE_WINDOW and exiting properly, I think :)
203
204******************************* Version 0.6.6 *********************************
205
206	The final Really Slick Screensaver has been ported, SkyRocket! :)
207
208	Parameter randomizing on certain screensavers to spruce things up a bit.
209
210	--nice :) For you number crunchers, --nice uses select() to idle
211between frames. It also uses select() idling in the fps limiting delay loop for
212--maxfps, but don't expect to get exactly, or anywhere near, the specified fps.
213
214	Before you say anything, I know about usleep and nanosleep. Its even in
215the code, just commented out. select() seems to just do a better job, for
216example w/ -x 128, I get 50/50/100fps using usleep/nanosleep/select in the fps
217limiting delay loop.
218
219	Some flocks options were changed to facilitate having --nice/-n.
220
221	I've decided to start scouring the net for cool OpenGL saver material
222originally written for Windows. The first four I've found, loved and ported
223are:
224
225	colorfire
226	hufo_smoke
227	hufo_tunnel
228	sundancer2
229
230	If you spot any with source, shoot me a link. If the source isn't
231available, try politely asking for it :)
232
233******************************* Version 0.6.1 *********************************
234
235	All the savers should now include both time.h and sys/time.h...
236originally I had opted to only include one because of the following ominous
237sounding check in autoconf:
238
239checking whether time.h and sys/time.h may both be included... yes
240
241	But some installations (w/ gcc 2.95.x for example) need both, and I see
242xscreensaver, which compiles on every platform I would concern myself with,
243includes both as well.
244
245	Mild tweaks to configure.in and #includes to support FreeBSD.
246
247******************************* Version 0.6.0 *********************************
248
249	Threw in my first attempt at autoconf.
250
251	Removed dependency on GNU getopt_long. Every option should have a
252semi-logical short option that is always available.
253
254	Built successfully on a Solaris 8 machine w/ gcc 3.2. It was a shell
255server @NYU... if anyone on a desktop SPARC can actually run these before I
256get Solaris back on my Ultra 60, drop me a line.
257
258	Included a tweaked version of debian packaging rules contributed by
259Serge Koenigsmann <serge@koenigsmann.de>
260
261	Support -window-id for previewing in xscreensaver-demo.
262
263	All 9 programs now have basic man pages reflecting the information on
264the Windows config panels for these screensavers.
265
266	Pressing f in window mode now outputs fps to stdout.
267
268	--maxfps/-x <arg> now sets maximum fps to <arg>. This helps flux, which
269just seemed to be running too fast on my desktop to have its effect. I'm using
270busy waiting for now since I am not aware of a way of yielding control without
271things getting choppy. nanosleep doesn't quite deliver on Linux/i386.
272
273******************************* Version 0.5.1 *********************************
274
275	Added Q/q/^C in addition to ESC to quit in windowed mode per request.
276
277	Added -h as an alias for --help per request.
278
279	Added vroot.h to driver.c to fix problem with xscreensaver reported by
280	ZlatkO on freshmeat.net
281
282	A few minor bug fixes and changes.
283
284******************************* Version 0.5.0 *********************************
285
28606/25/02 was a momentous day in Unix screensaver history. At least I think so.
287The Really Slick Screensavers were open sourced under GPL.
288
289Included in this package (version 0.5) are ports of the following 9 screen
290savers:
291
292	helios
293	euphoria
294	solarwinds
295	lattice
296	flux
297	plasma
298	fieldlines
299	flocks
300	cyclone
301
302to GLX. Euphoria and Lattice had been ported to C for inclusion with
303XScreenSaver, which is entirely C, but licensing issues kept that from
304happening. So, after being asked by a few people, I created this standalone
305package. The other 7 screensavers were ported relatively quickly since I could
306leave them as C++.
307
308This release (0.5) can be considered an early beta port. I've never released
309a complete package before, so for now its just static makefiles. They
310sucessfully build this package on a Debian machine tracking unstable.
311
312The source code itself is a bit disorganized, since, in the author's words,
313they were written more as art projects than programming projects. I'll be
314cleaning it up in later releases, especially if I get reports on portability
315to non-x86 or non-Linux OSes.
316
317Tugrul Galatali <tugrul@galatali.com>
318
319