Kaleidoscope Main Window
Kaleidoscope 3.1

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 coming into your sound card 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, causing totally different designs to appear depending on the style of music being played.  See the Audio section for more details.

Double-click on any of the Favorites listed on the right to recall all the settings for that pattern.  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.  If synchronizing with audio, new values will be chosen for these settings between songs.

If you have not registered yet, please do so now...  If you are running Windows 95 or NT, then you should look for our 32-bit version called Kaleidoscope 95 (kaleid95.zip).

REGISTRATION FORM

The kaleidoscope can be controlled by the following parameters:

Symmetry	Free Floating

Spin	Splitting

Line Size	Coloring Rotation

Trail Length	Snazziness

Speed	Bands

Rotations	Band Width

Cheese Size	Polite

Cheese Type (32-bit) 	Audio

Depth	Favorites

Width

You are encouraged to experiment with the various settings on your own, and when you find something you like, to add your new settings to the Favorites.  Try adjusting the Cheese Size, as well as differing Widths for dramatic effects!

To see what's new look at the Version History.

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

To limit colors that are used, see Palette.

To Copy or Print any of these beautiful screens, copy to the clipboard by pressing 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.  From there you should be able to print as well.

To run as a stand-alone program, simply use the Explorer or start from "My Computer" to find Kaleidoscope in your Windows 3.1 System directory, then right-click and drag it to your desktop or favorite folder.  After dropping it to the destination, choose "Create Shortcut Here."

To read about the author of this fine piece of software, see About The Author

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 register, We'll be sure to let you know of upcoming programs if you wish to see more software of this caliber.

If you don't use the registration form, then please mention that you have Kaleidoscope 3.1 so that we may send you the appropriate registration number.

We 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, we would dearly love it if you sent in your registration.  Because of contributions so far on versions 1.0 to 1.7, I was able to add the Audio feature.  And because of the support from versions 2.0 to 2.8 we were able to build version 3.1 and also a 32-bit Windows 95/NT version called Kaleidoscope 95 (kaleid95.zip).  Thank you.

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

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

See Troubleshooting if you experience any problems.

Warranty Disclaimer

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


Registration Form
Kaleidoscope 3.1 Registration Information

You can register Kaleidoscope by fax, by mail, or through the CompuServe ShareWare Registration service.  Regardless of the method you choose, Syntrillium will e-mail your registration number within 2 business days and send you a letter confirming your registration along with a receipt if you use a credit card.  If you have any questions about ordering, please do not hesitate to e-mail Syntrillium Software at syntrill@aol.com.

1) FAX:  Fill out the registration form and fax it with your Visa or Mastercard information to Syntrillium Software at 602-941-8170.

2) MAIL:  Mail the registration form with a check drawn in US dollars or your credit card information to:

Syntrillium Software Corporation

P.O. Box 60274

Phoenix, AZ  85082-0274

USA

3) CompuServe:  Use GO SWREG, select Register ShareWare, answer the questions that CompuServe asks, search for keyword "Syntrillium", and select "Display Selected Titles".

REGISTRATION FORM


Registration Form to fill out
Kaleidoscope 3.1 Registration Form

Name:  	________________________________________

Address:	________________________________________

________________________________________

________________________________________

________________________________________

City, State, Zip:	________________________________________

Country:      	____________________

Phone:         	____________________

Fax:             	____________________

Internet Email:	________________________________________

Other Email: 	________________________________________

Choose the level of registration you prefer:

[   ]	$15	Basic Registration for Kaleidoscope 3.1 WITHOUT using the Audio feature.  You will be sent a registration number that will turn off the "Please register" message and authorize you to use Kaleidoscope without the Audio feature.

[   ]	$25	Basic registration for Kaleidoscope 3.1 WITH Audio.  You will be sent a registration number that will turn off the "Please register" message and authorize you to use Kaleidoscope with the Audio feature.

Visa and Mastercard are accepted.  You may fax credit card orders to the number below.

Card #: ________________________________________  Exp Date: ____________

You may answer these if you like!  Just circle or fill in the blanks.

Where did you find Kaleidoscope 3.1?    ___________________________________________

Brand of PC: 	______________________________________

Processor (eg P5/90): ________________

CoProcessor:	x387	x487	Cyrix

Operating System:	Windows 3.1	Windows 95	NT	Other:_____________________

Sound Card:	______________________________________

RAM:  __________    	Hard Drive size: _____________

THANK YOU!!!!  AND PLEASE ALLOW A COUPLE OF WEEKS FOR A REPLY

Syntrillium Software Corporation

P.O. Box 60274 	FAX: 602-941-8170

Phoenix, AZ  85082-0274  	email: Syntrill@aol.com

USA


About the Author

That's me, David Johnston.  I have been writing graphical (usually line art style) programs since the early eighties, and audio programs since about 1991.  Before getting into programming, I had toyed with building electronic noise makers (synthesizers) and other electronic gizmos.  In high school I was even a pseudo-member of the band with a home-made programmable "sequencer" that I used to make Pac-Man noises for the song Pac ManFever.  I also started programming while in high school, when the school got aCommadore PET computer.  Shortly thereafter I bought an Atari 800 (summer 1992)and started my programming career.  The first program I wrote on that Atari was a graphic line-art program which I built to learn how to program.  I have since programmed on Apple ]['s,Commadore 64's, Macintoshes, IBM PC's (the original on up to today's), numerousmainframes and workstations.  I attended Eastern Montana College for my first twoyears, then moved to the Seattle area and received my BS in Computer Science andEngineering from the University of Washington in 1991.  While finishing college, up until 1995 I have been working at a large software company here in the northwest.  I have now started Syntrillium Software Corporation with my friend Bob Ellison, and hope to continue making wonderful programs.  This is one of them!  With the ShareWare donations I have been able to purchase a Pentium 90,so development on Kaleidoscope (and my other program Cool Edit) has thus accelerated.  I gave my ol' 386-25 to my brother-in-law who started college in the Fall of '94.  In April of '95 I formed the company Syntrillium Software Corporation with my partner Robert Ellison.  The volume of registrations was reaching critical mass, and I was ironically not able to write any new code.  I am happy to report that the company is doing well, and I am back to pounding out ever cooler software.

Yes, I have also written a shareware waveform editor called Cool Edit.  It does everything you would expect a waveform editor to do, and much much more.  Another useful utility I wrote was an RPN calculator for Windows which I use almost every dayfor one reason or another.  I've written other shareware programs too, so look for themat your favorite BBS or Internet site.


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 sway the pattern between clockwise and counterclockwise.


Width

This is the thickness of the lines drawn.  Also, increasing the width will dramatically slow down the evolution of the designs on most systems.  If the speed limit was turned down, it can be turned back up again if using thick lines.


Line SIze

Size of the line segments.


Version History

Version 3.1

New Width setting draws thicker lines for a more solid look.

Fixed audio enabling problem that made the Audio feature not work with some system configurations.

Added double-buffering to the audio capture to help eliminate clicks that were present when using some sound cards.

Added gentle registration reminders.

Made Audio version synchronize a little better with music for non-256 color modes.

Version 2.8

Added a divisor setting to Speed Limit to more smoothly slow down pattern evolution on fast machines.

Changed address to Syntrillium Software Corporation (my new company).

Modified spin parameter so that negative values sway pattern clockwise/counterclockwise.

Version 2.7

Added customized registration.

Fixed color choice bug to keep designs from going black as often.

Version 2.6b

Added the Dream Time setting  (maximum time the kaleidoscope stays blank when no audio is present before starting to display whatever it wants to).  The default setting is 10 seconds.

If audio device is being used when kaleidoscope starts, and it is in audio mode, then the kaleidoscope will try again in 10 seconds to use the audio input port for synchronizing.  Before, if the audio card was busy, it never synchronized with audio.  This would happen if a sound was attached to "application startup" - the sound would play and take over the audio card not letting the kaleidoscope start its monitoring.

Version 2.6a

Enhanced color selection ability when synchronizing with audio.  Designs do not go black as often, and colors are more consistent each time the same audio is played.

Added CD Audio track controls when synchronizing with audio.  Pressing the number keys will advance the CD player to that track.

Version 2.6

Made a Speed Limit button for slowing the patterns down.

Added a Palette button for customizing the color palette used.

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.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.3

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

Version 2.2

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

Version 2.0

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

Sped up line drawing by 30% or so.

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 1.0

First kaleidoscopic screen saver.


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 evolve much too quickly for your taste, 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 and you so desire.

Pressing the Speed Limit button will allow the modification of the lines drawn per interval, and timing between intervals.  The Divisor setting will slow down the patterns smoothly by slowing down the actual drawing algorithm (simulating a slower display driver).  The other two settings make adjustments to system timing.  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 increasing the Divisor setting.  After increasing this value to as much as 40, and the patterns still move too fast, then try reducing the Sets of Lines per Interval first, until you reach 1, then if that is still 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 previous throughput (in lines per second) will be displayed in the box near the bottom for those who are interested.


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.  In the 32-bit version, there are numerous varieties of cheeses, so more than just wedges may be drawn!


Cheese Type

This setting is only available in the 32-bit version (Kaleidoscope 95).  When the Cheese Size is set to anything other than zero, the type of cheese may be chosen.  This causes shapes other than triangles to be generated.  For example, hearts or stringy lines may be drawn instead.


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 (or right-click on the speaker icon next to the clock) to set the recording input to that of your music.  The Options->Properties dialog in the Volume Control will get you to the record settings.  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 since the kaleidoscope will not respond to input if another application is currently recording.)

(3) If synchronizing with music from the CD ROM drive, be sure to close all CD Player control applications for the fastest Kaleidoscope response.  The kaleidoscope display may become jerky when the CD Player program queries the CD ROM drive to display the current track time.  You may use the number keys on the main keyboard to switch between different tracks on the CD while Kaleidoscope is running.

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).  Good settings for a P5/90 are 50 for Bands, and all the Variations, 40 for Spinning, and 105 for Splitting at 22050Hz 16-bit.

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 closer the variations parameter is to zero, the less the colors in that range will cycle.  It is OK to set this value all the way to zero for constant colors based on the current audio.

The Dream Time value controls how long the kaleidoscope stays dark when no audio is present until it starts dreaming and displaying random patterns.  The default dream time is 10 seconds, which means if there is no audio present for more than 10 seconds, the kaleidoscope just starts up displaying whatever it feels like until audio is played again, then it will i wake up and start synchronizing again.

CD Audio Controls

While in Audio mode, pressing any of the numeric keys will advance the CD to the track keyed in.  The MCI CD Audio driver must be installed for this to work, and there must be no other CD player programs running that happen to open the CD device exclusively.  Kaleidoscope will attempt to share the CD device with other applications, but not all CD player applications are this polite.  Pressing the zero key will stop the CD.  Pressing any other track number will start the CD again.  This is very handy when you do not want to stop the kaleidoscope to change the CD track.

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 the audio port was busy when the kaleidoscope started, it will try again in 10 seconds to open the audio input channel and synchronize with the audio.

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, we sincerely hope you consider sending in the extra money.  We are not asking more for the initial program, since many people still don't have sound boards, and cannot use this feature.  We 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.

Double-clicking on the Audio Settings Favorite is a good place to start for kaleidoscopic audio settings.  Be sure to also check the Audio checkbox!  Enjoy your own personal Laser Show now!


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.

Since there are literally millions of unique patterns that can be generated,  you are encouraged to experiment with different settings on your own.  Start with one of the presets, and go from there - moving one or two sliders to see what affect it has on the design.  Only a handful of favorites are listed, which is far fewer than the millions of unique patterns that are possible.

At any time, you can save your current masterpiece by typing a name for your creation, and clicking the Add button.  If you had any parameters set to random, and you see a design you particularly enjoy, go back to the Settings screen and click the Last Pattern button to bring up the exact settings that were used.  You can then add this 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.


Troubleshooting

If you find that the kaleidoscope display is jerky when in the Audio mode and while playing a CD, try closing the CD Player application before starting the kaleidoscope.  The Windows 95 CD Player application has an option to keep the CD playing after the program is closed, or you can start any track playing while the kaleidoscope is running by typing the track number on the main keyboard's number keys (above the QWERTY).

If you experience any "Kaleid Caused a General Protection Fault In..." errors, please let us know about them.  Kaleidoscope pushes some video cards to their limits.  Also, some video card drivers cannot handle the volume of line draw requests, or the drawing of lines outside the screen area. The following cards have had problems with Kaleidoscope reported.  If you suspect that your video card is causing problems with Kaleidscope, you may contact the video card manufacturer's Technical Support department and ask for updated video drivers.

Trident 9400 - Reports of Kaleidoscope not being able to run for more than a few minutes, stopping abruptly with a GP Fault in "Module CXiTLV.DRV AT xxxx:A9BA" where xxxx is any number.  Please contact Trident for updated drivers.

ATI Mach 32 - Some drivers cause the kaleidoscope to slow down dramatically while drawing large lines that go outside the range of the display.  The Mach 64 card works fine.

The choppy audio problem should be resolved.  If you experience choppiness in the audio, please contact us.  MediaVision sound card owners may have other volume control problems (and phasing out sort of problems).  If this is the case, go to the MediaVision mixer control and click OFF the playback of waveform (wave) audio, and make sure the playback of CD audio is ON.  While recording, the MediaVision card pipes the recorded audio back through the Wave out.  Since Kaleidoscope does not record constantly, you hear extra loud audio only while it is recording, and hear sudden choppy sounds when kaleidoscope stops and restarts recording.  Turning OFF the waveform playback solves this problem and will allow you to enjoy the patterns based on audio input.