*------------------------------------* | Flying Shapes | | | | An Extend-O-Save Module for Warp 9 | | | | Version 1.3 | | | | ½ 1993 CodeHead Technologies | | by Charles F. Johnson | *------------------------------------* Flying Shapes simulates the movement of a line, box, polygon or triangle around your screen. Many aspects of this module can be altered, for an almost infinite range of animated graphic effects. Flying Shapes requires Warp 9 v3.70 or later, works in all ST and TT resolutions, and is freeware from CodeHead Technologies. Version 1.1 ----------- Version 1.1 was primarily a bug fix release, but there were several changes from the first version. Version 1.2 ----------- This version fixes a bug that caused Flying Shapes to fail to deallocate its screen memory when it was removed or reloaded. Version 1.3 ----------- Version 1.3 always sets the palette when it kicks in, so it will now yield pleasing displays regardless of your default palette settings. It also fixes a problem that could result in the Warp 9 Control Panel not being listed in the Desk menu after booting up. *** CONFIGURATION OPTIONS *** Shape ----- At the top of the configuration dialog box are six buttons that let you choose which type of shape you want Flying Shapes to draw. The choices are: one line, two lines, one box, two boxes, four-sided polygon, or triangle. In addition to the six shape buttons, there are two buttons labeled "Random" and "Cycle." Here's how they work: Random ------ If this button is selected, then every time Flying Shapes kicks in (by timing out, by moving to the "Fade Now" corner, or by clicking the "Test" button) it will choose a random shape from among the six possibilities. Cycle ----- This button works in conjunction with "Cycle Time" (see below), and it is also affected by the "Random" button described above. If the cycle time is non-zero and this button is selected, then whenever the cycle time expires Flying Shapes will advance in order to the next shape. (The order is not the same as the onscreen buttons.) If the "Random" button described above is also selected, then a new shape will be chosen at random when the cycle time expires. If "Cycle" is not selected but "Random" is, then a random shape will be chosen when Flying Shapes kicks in, but not at every cycle. If this sounds confusing, don't worry. Just play with the settings and it should begin to make sense. Speed ----- You can choose one of four speeds ("1" is the slowest speed, "4" the fastest) to control the rate at which the shapes are drawn. There is also a "Random" button for the speed; if this button is selected, a random speed will be chosen every time Flying Shapes kicks in (or cycles). Length ------ This number determines the length of the shape's "trail." The maximum length is 500; if you enter a number larger than this, Flying Shapes will set it to 500. Of course, there's also a "Random" button for the length; if this button is selected, a random length from 1 to 90 will be chosen whenever Flying Shapes kicks in (or cycles). Delta Values ------------ Shapes are determined by either one or two lines; single lines and boxes require one line, while double boxes/lines, polygons, and triangles require two lines. A line is described by a pair of X/Y coordinates, defining the start and end points of the line. To move shapes around the screen, Flying Shapes adds "delta values" to these coordinates. Specifically, the value in "Left Delta" is added to the starting X coordinate, "Top Delta" is added to the starting Y coordinate, "Right Delta" is added to the ending X coordinate, and "Bottom Delta" is added to the ending Y coordinate. By changing these values, you change the movement of shapes around your screen. Note: when the "RANDOM" buttons are not selected, the SECOND number in the delta value fields is used. The first number is used to set the range of random numbers (see below); when the "RANDOM" buttons are not selected, the first number is ignored. Random Buttons -------------- To the right of each delta value is a button labeled "RANDOM." When this button is selected, Flying Shapes will choose a new random number for the delta value every time the object hits a screen border. The lowest and highest possible random numbers are set by the first and second numbers (respectively) in the delta value fields. The lower limit cannot be set to zero; Flying Shapes will reset it to one if you try. The upper limit, however, can be set to zero; if this is done, the settings of the "RANDOM" buttons are ignored. Cycle Time ---------- This value determines how many seconds Flying Shapes will wait before clearing the screen and restarting with a different shape. To turn off cycling, set Cycle Time to 0. Use Alternate Screen -------------------- This button determines whether Flying Shapes will change the "physical" screen address when it kicks in, or use the existing screen. Changing the screen address may solve some display problems with programs that write directly to the screen; this is the default setting. (If you have a Moniterm big-screen monitor, the setting of this button is ignored; in this case the existing screen is always used, since changing the screen address does not affect the Moniterm.) Test ---- This button lets you see how the current settings look. Click on it to start up Flying Lines in "test mode." When you want to exit test mode, click the left mouse button. (You may have to hold the mouse button down for a second to get Flying Shapes to see it.) Note: when you enter test mode, the current settings are saved into FLYSHAPE.EXT just as if you had clicked the OK button (see below). Cancel/OK --------- Click the Cancel button if you wish to exit the configuration dialog without saving the current settings. When you click the OK button, the current settings are automatically saved into the FLYSHAPE.EXT file; don't rename the module, or you will be unable to save your settings. *** OTHER CHANGES FROM VERSION 1.0 *** The first release of Flying Shapes used a special technique to call Warp 9's VDI line drawing routines directly. Unfortunately, this technique has proven unreliable at present; a future version of Warp 9 may make this possible again. Flying Shapes now uses Line A for graphics output, which does have a positive side: the earlier version would not work if Warp 9's screen acceleration was turned off, but this limitation is removed in version 1.1. Flying Shapes will now kick in and work properly under all conditions. *** KNOWN PROBLEMS *** At present, there are none; all known problems with the earlier releases of Flying Shapes are fixed in version 1.3. *** PLEASE NOTE! *** Just in case you missed it in the Warp 9 release notes, please remember that you should only load and unload EOS modules from the GEM desktop or from HotWire (if you use HotWire). It's not safe to load/unload modules while a program is running, because of limitations in TOS's memory management systems. We recommend using MultiDesk Deluxe to load the Warp 9 Control Panel as the last resident desk accessory, for the highest speed and compatibility. For more information about Warp 9 (or about MultiDesk Deluxe), please contact us at: CodeHead Technologies P.O. Box 74090 Los Angeles, CA 90004 Tel 213-386-5735 (9am to 1pm Pacific) Fax 213-386-5789