Kaleidoscope Main Window
Kaleidoscope version 2.6

Congratulations!  You now have a fantastic, colorful, and beautiful screen saver for Windows.  If you have a sound card in your computer, you can choose to have the kaleidoscope flow and change in time to your music.  The music controls various parameters, making strikingly beautiful patterns that would never be possible by just adjusting the given parameters.  The audio being monitored will continually adjust the kaleidoscope.  See the Audio section for more details.

Checking the box to the right of a control will cause the kaleidoscope to choose that value at random each time the kaleidoscope kicks in, and during each new design interval.  When the New Design time elapses, a new pattern is chosen based on the control settings.

See the Version History to see what's new in this version.

The kaleidoscope can be controlled by the following parameters:

Symmetry	Coloring Rotation

Spin	Snazziness

Line Size	Bands

Trail Length	Band Width

Speed	Polite

Rotations	Audio

Cheese Size	Favorites

Depth

Free Floating

Splitting

To slow down the kaleidoscope on fast PCs, see Speed Limit.

To limit the selection of colors used, see Palette.

To Copy any of these beautiful screens to the clipboard, press the Print Screen button at any time.  The show will continue after the snapshot is copied to the clipboard.  You may go to your favorite graphics program and paste in the image you captured at any time.

To make Kaleidoscope run as a stand-alone program, copy the file kaleid.scr to kaleid.exe.  In the Program Manager, choose File->New and enter kaleid.exe /s as the command line.  The kaleidoscope will still stop once the mouse is moved or a key is pressed.  Entering a command line of kaleid.exe alone without any parameters will bring up the settings dialog box from the Program Manager icon.

Please send $15 or $25 to:

David Johnston

28022 NE 147th Place

Duvall, WA  98019

USA

If you like the Audio feature, and find your CD collection now has a whole new meaning, send in $25, otherwise send in $15.  If you think I am asking too much for your use of my program, then send less (whatever you do think it's worth), along with a short explanation of why you thought it was not worth my asking price, and I will still consider you a "Kaleidoscope User".  I have purchased a Pentium PC, and thus am able to make improvements and bug fixes much more quickly.  It was because of donations from Kaleidoscope users (and users of my other program Cool Edit) that I was able to purchase this PC -- Thanks!  If you register, I'll be sure to let you know of upcoming programs if you wish to see more software of this calibre.

I look forward to hearing from you about what you think of this screen saver, and the concept of a music controlled kaleidoscope.  If you find yourself entranced by the ever-changing patterns of the kaleidoscope, or just totally blown away by the colors and flowing geometric patterns, I would love it if you sent in your donation.  Because of donations so far on versions 1.0 to 1.7, I was able to add the Audio feature.  Thank you.

You may also send mail if you have suggestions, questions, or comments and I'll be sure to answer them.  Comments from users like yourself have made Kaleidoscope what it is today.

PS - Check out my waveform editor for Windows called Cool Edit at a BBS or internet site near you.

Warranty Disclaimer

David Johnston (The Author) makes no warranty of any kind, expressed or implied, including any warranties of fitness for a particular purpose.  In no event will the author be liable for any incidental or consequential damages arising from the use of, or inability to use, this program.


Symmetry

The symmetry controls the number of reflections about the main axis.  For example, choosing a symmetry of 5 will always generate /i star-like patterns, while a symmetry of 6 will generate /i snowflake-like patterns.


Spin

Controls overall spinning of the kaleidoscope.  Positive values spin clockwise while negative values spin it counterclockwise.


Line SIze

Size of the line segments.


Version History

Version 1.0

First kaleidoscopic screen saver.

Version 1.1 to 1.7

Added the following controls:  Depth, Free Floating, Migrating Depths, Splitting, Snazziness, Politeness.

Made Favorites multiple-select so you can choose among your very favorites.

Added more presets.

Version 2.0

Added Audio feature to make kaleidoscope change patterns based on incoming music.

Sped up line drawing by 30% or so.

Version 2.2

Fixed various bugs (like setting symmetry to zero was crashing with faster line drawing).

Version 2.3

Fixed bug in using Polite with Password Protection.  Entering invalid password sort of locked up system.

Version 2.4

Fixed a bug in coloring while Audio is playing.  If the color bands were changing too fast, the kaleidoscope simply went dark.  Now it doesn't just go dark for what seems like no good reason when running while controlled by music.

Added an Audio Configuration dialog to easily adjust the sensitivity settings to fine tune the kaleidoscope to your sound card.

Added the ability to slow down the designs on faster PCs.  (see Speed Limit)

Version 2.5

Added Splitting sensitivity control to audio settings.

Fixed a bug that caused the entire kaleidoscope to go black, and stay there, if a random design was chosen that had a Static color rotation.

Version 2.6

Made a Speed Limit button for slowing the patterns down.

Added a Palette button for customizing the color palette used.


Trail Length

Length of trails.


Slowing Down for fast PCs
System Speed Adjustments

For some PCs (like Pentiums or 486/DX4's or whatever new comes out in the future) it may be necessary to actually slow down the kaleidoscope.  If the patterns move much too quickly for you, you may also want to slow it down.  The default settings are for the fastest possible kaleidoscope, at least on current PCs.  You may be able to adjust these settings to get a faster kaleidoscope if your PC is extremely fast if so desired.

Pressing the Speed Limit button will allow the modification of the lines drawn per interval, and timing between intervals.  The Update Interval parameter specifies how often lines are drawn (this setting is in milliseconds, so a value of 10 is 1/100th of a second).  The Sets of Lines per Interval parameter specifies how many sets of lines will be drawn during each of these intervals.  It is always OK to specify values that are too fast for your PC (for example, drawing 40 sets of lines each 10 milliseconds) -- this will just allow the Kaleidoscope to run as fast as possible on your PC.  Lower values will slow it down.  For example, if you own a Pentium, try drawing 2 sets of lines every 30 milliseconds, this would slow drawing down to about 66 sets of lines per second.

For general purpose slowing down of the pattern for faster PCs, try reducing the Sets of Lines per Interval first, until you reach 1, then if that is not slow enough, start increasing the Update Interval from 20 on up to 100 or more.

For interesting effects, try other combinations like a 10 sets of lines at an update interval of 80ms. This will give a strobing effect on faster PCs -- the design will jump from one pattern to the next 12.5 times a second.

The fastest number of line sets drawn per second will constantly be displayed, and updated when any parameter is changed.  A Line Set refers to one line at each reflection.  After a line set is drawn, the design is perfectly symmetrical (to the degree that the chosen parameters allow).


Speed

Speed of lines.  This value controls the spacing between the lines that are drawn.  Larger spaces between the lines give the illusion of the patterns going faster.  Higher values add more space between lines, thus speeding things up.  To slow the entire kaleidoscopic drawing process on faster PCs, see Speed Limit.


Rotations

Speed of rotations of the individual line segments.


Cheese Size

Size of cheese wedge.  If set to zero, lines are drawn instead of wedges.


Depth

Number of simultaneous reflections.  The entire kaleidoscope is drawn again at smaller and smaller scales.


Secret Reflections Parameter
!!!! Reflections !!!!

How did you find this screen???  Well, anyways, here's the scoop.  Since you were so diligent in looking through the help file, there is another parameter you can adjust to get wild variations on the kaleidoscope.  The only way to change this setting is to open the CONTROL.INI file and go to the kaleidoscope section (search for "Kaleidoscope").  You will notice a line that reads "Reflections=0" somewhere amongst all the settings.  You may enter any value between 1 and 9 to get interesting reflections - that is - the entire kaleidoscope is drawn in multiple places around the screen.  Setting Reflections to 3, for example, will triplicate every line that would normally be drawn otherwise.  You will find some interesting new patterns that you have never seen before by adjusting this parameter.

Have Fun!


Free Floating

With depths of 2 or more, if free floating is not checked, each depth is half the way closer to the center than the previous depth.  If checked, the depths move in and out.


Splitting

Length of continuous trail.  Once the trail reaches this length, it starts in a new position.


Coloring Rotation

The style of color rotation to use.  Color rotation produces stunning effects on 256-color displays by rotating the color palette.  The following styles are available:

Static - Uses a pre-set palette.  Not very interesting.

Flowing - Colors flow, and follow in the direction of drawing.

Wild - Colors flow, and go in the opposite direction of the drawing.

No Rotation - Colors palette is constantly changing, but colors do not flow.


Snazziness

This controls the rate at which the colors change, from slowly changing colors (Eerie) to very quickly changing colors (the bands choices, and Out of Control).


Bands

If set to zero, there are no bands (black segments).  If not zero, this controls the number of black bands present.


Band Width

If bands are chosen (Bands not set to zero), then this controls the width of the black bands.


Polite

If checked, the kaleidoscope will let other applications that are running in the background run first, before drawing.  This will allow other programs to run at their full speed without the screen saver slowing them down.  The kaleidoscope is very computationally expensive.  To see the kaleidoscope run at full speed, though, this can be turned off.  If turned off, other applications will still run in the background, but they will not get as many CPU cycles, and will run slower.


Audio

When the Audio box is checked, the kaleidoscope will follow any music present at the recording inputs.  To set the kaleidoscope to respond to music, you must do the following things:

(1) Use your sound board's mixer application to set the recording input to that of your music.  For example, if using the internal CD ROM to play music, the sound board's mixer should be set to record from CD.  If music is playing into the sound board from an external tape deck or other music source, set the sound board's record input to Line or Aux.

(2) Use Sound Recorder (or any other audio recording program) to see if you can record your music.  If you are able to record, then the kaleidoscope will be able to respond to it as well.  Be sure to close the recording program and stop recording after this test.  The kaleidoscope will not respond to input if another application is currently recording.

The patterns seen will change depending on the frequencies present in the incoming music, and the decibel changes present.  If the kaleidoscope pattern does not go dark, or at least change patterns between songs, then it probably is not responding to the music because of some incompatibility.  If you think the patterns are not changing with the music, let me know what kind of sound board you have so that I may track down the problem and make it work.

There are many fine tuning parameters you can adjust to get the patterns to more closely correspond to the music in the Audio Configuration dialog.

If you have more than one sound board in your system, you can choose the sound board that kaleidoscope will monitor by choosing the Recording Device from the list.

You may specify the Default Recording Method that the Kaleidoscope will use to monitor the incoming audio.  If your board does not record in 16-bit properly, for example, you can set this value to 8-bit instead.  Some combinations of sample rate and bit rate may not be supported by your sound board.  Different sample rate values will give different results when the Kaleidoscope tries to match the music.

A value of 100 for the rest of the settings is the default (looks fine on a 486/DX33).  Slower systems generally look better with higher values (like 150), and faster systems look better by specifying lower values (like 80).

The Bands parameter specifies how often there will be more stripes in the designs, raising this value will make more stripes of all colors.

The Spinning parameter tells how fast the lines will spin in relation to high end audio (like cymbals).  The higher the value, the faster individual lines will spin.

The Splitting parameter tells how sensitive the pattern is to splitting based on beats in the music.  More splitting that will occur with higher values, as more subtle changes in music volume will trigger the restarting of lines in a new location.

The last three Variations parameters determine the chance that the color will change with certain kinds of music.  The higher the value, the more that that color will change.  For example, normally low frequency bass sounds cause blue stripes.  Increasing the Blue Variations value will make more blue stripes given the same music.

The following parameters are controlled or modified by incoming audio:

Snazziness (and all coloring in fact)

Coloring Bands

Line Size (modified)

Speed (modified)

Rotations

Splitting

New Design interval

Parameters that you control:

Symmetry

Spin

Line Size (some control)

Trail Length

Speed (some control)

Cheese Size

Depth

Free Floating

Migrating Depths

Coloring Mode (Flowing works best)

Band Width

If any of the parameters you control are set to random, they will be chosen at random between songs, or after a certain length of silence.

If your screen quickly fades to black, then there is no audio present to respond to.  If this happens and you can hear the music playing, then check to see that your mixer control (software provided with your sound card) is set to record your music.  If this still does not work, make sure your sound card can record at 22050Hz (22KHz) at 16-bit, 44100Hz (44.1KHz) at 8-bit, or 22050Hz (22KHz) at 8-bit.

Sometimes audio cards are not configured correctly and will not handle 16-bit audio even if it is a 16-bit card.  To make sure everything is OK, record at 16-bit with a sound recorder program first to make sure your system can record at this rate.

If your sound card can record 16-bit OK then you will get great correlations between the music and the kaleidoscope.

If you enjoy this feature, I sincerely hope you consider sending in a little extra money.  I am not asking more for the initial program, since many people still don't have sound boards, and cannot use this feature.  I would be greatly interested in hearing how well this feature is working with your sound board and system configuration, even if you send no money at all.


Favorites

Choose cool preset kaleidoscope patterns by double-clicking on the name in the list.  To choose randomly between all the items in the list, click the Choose Randomly option.  To choose randomly between only certain patterns, highlight all the patterns to choose between (hold down on the control key to highlight more than one), and then check the Choose Randomly box.

At any time, you can save your current settings by typing a name for your creation, and clicking the Add button.  If you had any parameters set to random, and you see one you like, click the Last Pattern button to bring up the settings used.  You can then add it to your collection of favorites if you like.


Custom Palette
Customized Palette

Pressing the Palette button brings up the customized palette dialog.  You can restrict the range of colors the Kaleidoscope uses by choosing lower and upper limits on the amounts of each of Red, Green and Blue that are used in the patterns.  A value of zero is the lowest, while a value of 255 is the largest.  For example, if you like Blues a lot, you can set the minimum brightness for Blue to 128, which will guarantee that Blue will always be present in the patterns.  To remove a color from all patterns, set the maximum brightness value to a low value like 64 or less.  Be sure the low value is always lower than the high value, otherwise the high value will be bumped up to the lowest value after you hit OK.