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