Dali Clock - a digital clock with melting figures ================================================= This file last updated 6th September 1996 Introduction ------------ The program provides (another!) clock that sits on your icon bar. The clock is a digital clock where the figures gradually melt from one time to the next. Instructions ------------ Run !DaliClock to start the clock. Quit the program to remove the clock. Clicking on the clock display displays the date for as long as the mouse is held down (plus 1 second so you can click to flash up the date). Menu Options ------------ Info: Shows a window with information about the program. Font name: Allows you to select the font to be used on the display. The font must contain all the digits 0..9, and must not be too curvy. The program will display an error if either of these conditions is not met by the selected font at which point you should select an alternative. Font size: Allows you to alter the size of the font displayed. The font must fit vertically on the icon bar. If the font size is too big, an error will be displayed and you should select a smaller size. Animate: This option toggles whether the figures are animated. The animation consumes a small, but possibly significant amount of CPU time. You may want to switch it off if you are performing some CPU intensive task. Date format: Alters the format in which the date is displayed between six formats (of which only the first, third and sixth are of any real use - the others are in for completeness). 24 hour: Switch between a 12 and 24 hour clock. Save choices: Saves the current settings of the font name and size, whether to animate, the date format and the 12/24 hour setting as defaults to be used when the program is started. Quit: Exits the program. Notes ----- For those of you who are interested: 1) This program is, indeed, based on the X program xdaliclock. It has been recoded in BASIC with the redraw code coded in ARM code. 2) The timing is accurate to 1 centi-second (execution speed notwithstanding). This means if you run several instances of this program they will run in lock step (like xdaliclock) - go on, try running 4 daliclocks simultaneously. The correct time (or what your computer thinks is the correct time) is when the digits start to change. 3) The program endeavours to use as little memory as possible. It will grow and shrink its wimpslot as necessary. Lack of memory is treated as a non-fatal error except during initialisation of data structures that must be present. The font menu is only created when needed to save memory. It is destroyed when no longer needed. Consequently, there are occasions when there is insufficient memory to display the font menu, at which point a warning error will be displayed. 4) Mode change messages are trapped and the font regenerated if the screen resolution changes. Requirements ------------ Requires RiscOS 3.10 and an outline font manager (all versions of RiscOS 3 should have one). History ------- Version 0.01beta (26 Aug 1996): First beta release. Version 0.02beta (30 Aug 1996): ARM coded slow font generation bits. Bug fix: desktop outline font detection code fooled by NewerLook. Bug fix: fonts weren't freed if an error occurred during generation. Version 0.03beta (30 Aug 1996): Lots of changes to reduce memory usage. Version 0.04beta (1 Sep 1996): Code overlayed to free up more memory. BASIC code compressed with BasCompress to free up even more memory. Version 1.00 (6th Sep 1996): No changes from 0.04beta. First official release. To do ----- Anti-aliasing. Alarm code (so you don't need to run Dali Clock and Alarm). Allow selection of foreground and background colours. Colour cycling (maybe). Copyright Notice And Acknowledgements ------------------------------------- Unless otherwise noted, all the code is copyright 1996 Steven Singer. The code is based on code in xdaliclock, which contained the following copyright message : xdaliclock - a melting digital clock Copyright (c) 1991, 1992, 1993, 1994, 1995 Jamie Zawinski Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. No representations are made about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. The xdaliclock documentation contained the following note: This program was inspired by the Alto and Macintosh programs of the same name, written by Steve Capps in 1983 or 1984. Beta versions of this program, that is, those whose version numbers are suffixed by "beta" in the Info window, may not be distributed. Other versions may be distributed freely provided all files including this notice, but excluding the "Choices" file, are distributed unchanged. Programs based on the code in this program must include both the copyright and permission notice from this version and the copyright and permission notices from xdaliclock shown above. This software is provided 'as is', with no guarantee of its suitability for any purpose. NO WARRANTY IS GIVEN! Thanks ------ Naturally thanks are due to Jamie Zawinski for writing xdaliclock and allowing the source to be freely available. Also thanks to Steve Capps for writing the first verion. Thanks to Robin Watts and Justin Fletcher (aka. Gerph) for beta testing and suggestions. Contact ------- I can be contacted at the following address : [Out of date contact details deleted] E-mail: singer@ox.compsoc.net