TinyClock v1.0 -------------- NB: TinyClock only works with AmigaDos 2.0 or higher (sorry). [Released in April '92.] There are far too many clock programs for the Amiga -- it seems that no-one likes what's on offer and so writes their own, and places it in the Public Domain. And good, too: we have a LOT of choice. But what about analog clocks? Well, there's Commodore's clock, but that uses over 40K memory and too much of the processor. Then there's WizardClock, but again that is big, and not resizeable (though it is neat, and has lots of nice extras). But, like so many before me, the clock I wanted wasn't there. One that came close was a small analog clock by Matt Dillon. It was rather too limited though. However, using that source as a starting point, I produced TinyClock. Much has been added, for both aesthetics and functionality. Here's a rundown of TinyClock's features: - Resizeable analog display; - Colors used in clock rendering can be changed as desired; - Can save position and colors for subsequent sessions; - Optionally chirps every quarter-hour, and twice on the hour; - Whole window is a 'drag bar', except right-hand and bottom edges, which act as a 'sizing gadget'; - Displays day and date in MenuBar when window is active; - WB 2.0 'icon look', with menus that use screen's font; - Small binary (<6K), uses less than 13K memory running; - Uses miniscule amount of processor (only updates once/minute). Usage Notes ----------- To start, double click on the TinyClock icon. The first time you run, the clock will use default sizes and colors - configure it the way you want, and select 'Save prefs' from the TinyClock menu. TinyClock will then always use these settings. (The preferences are saved to a file called 'S:TinyClock.config'.) You may of course start TinyClock from the CLI, but it does not self-detatch, and would have to be 'run' if you wanted to continue using the CLI. Best way to start it, though, is to shove it in your WBStartup drawer; if you do, set the DONOTWAIT tooltype for Workbench. To keep binary size down, TinyClock takes no command-line options or tooltypes - it uses a config-file instead, as mentioned above. A stack of 2500 bytes seems sufficient for TinyClock (I've had no problems). Strange behaviour ---------------- Since TinyClock updates only once per minute (but in such a way that the minute-hand moves exactly when the minute is up), if you change the system date, it will take upto a minute to be reflected on the clock display. You can however click into the window, and it will be updated immediately. The imagery used to draw the clock (hands, pips) is NOT scaled (unlike the Commodore clock). TinyClock is intended to be just that, and looks pretty ugly if made large. But then, who wants a clock taking up half the screen? No other unexpected behaviour is known. The Menus --------- Self-explanatory, I hope. Here's a quick rundown though... TinyClock menu: To Front Sends clock window to front (there are no depth gadgets) To Back Sends clock window to back Chirp If checked, will beep on quarter-hour (& twice on the hour) Reset prefs Reloads previously saved configuration Save prefs Save current position/size/colors to configuration file About Displays a small message Quit You don't want to do that... Colors menu: (0-3 denote system colors) Background The color of the clock window Hour hand The color of the hour hand Hour hand The color of the minute hand Pips The color of the pips (hour marks) If using Workbench default (2.0) colors, 0 is lightish-grey, 1 is black, 2 is white, 3 is mid-blue. Of course, some combinations look better than others, and some are downright useless (like black hands on a black background...). That's the menus. As mentioned in the 'features' list, almost the whole window is a 'drag bar' (this is like some programs' iconified states). The picture below shows what parts of the window do what: +-------------------------+-+ | | | | | | | Click here to | <---- Click in this region | | | | position | | to resize window | | | | window | | | | | | | | |-------------------------+ | +---------------------------+ Author and Credits ------------------ Original clock code was (C) Matt Dillon (although it's now unrecognisable). TinyClock is written in C and compiled with SAS (Lattice) C v5.10a. Thanks to Mike Meyer et al. for Mg3 (the best pd text editor) and Steve Koren for SKsh. I am always happy to receive bug-reports, comments or suggestions for enhancement of programs I write. I can be contacted by postal mail at: Martin W. Scott, 23 Drum Brae North, Edinburgh, EH4 8AT United Kingdom. or by email: mws@castle.ed.ac.uk TinyClock is freely redistributable, as long as this documentation (unaltered) accompanies it. It may not be sold for profit or included in any commercial product (and that includes magazines) without permission. Contributions are not obligatory, but are always welcome (I'm yet another poor student). Enjoy! Martin.