Changes to Clock5 since v1.3 ============================== * GeoFox compatibility. Clock5 now automatically detects if it's running in a 'fox and re-sizes/re-positions the views accordingly. I am completely indebted to Bob Norris for his time, energy, and patience whilst I was figuring out how to get Clock5 to work on his 'fox. Many thanks Bob! * 24 hour clock view. A 'Viewing Options' box has been added which lets you choose between a 12 or 24hr digital clock. It also lets you choose the line width in the Mystify views. * Fixed a bug in Sweet Dreams mode. If your machine was set to start up displaying the Owner Information screen, Sweet Dreams wouldn't run. It's now works with the Owner Info. screen set for start-up. Thanks to Wolfgang Schmid for pointing this out to me. *Program initialisation / saving settings. As more and more variables were getting added into Clock5 for it to remember, it was taking longer and longer for it to both save them and initialise the settings when the program was first run. Also, the format of the Clock5.ini file was changing from version number to version number - meaning that every time a new version of Clock5 was installed, the old Clock5.ini file had to be deleted. By moving from an OPL16 to an OPL32 database structure, I've speeded up the 'saving' routine by >100%. :-) Also, v1.4 will detect a previous version's Clock5.ini file, delete it, and re-initialise the first time it's run. I'm afraid you still have to re-enter your preferences but it's an improvement of having to remember to delete the file yourself! * Background activity monitor. This is now working - for the keyboard at least. When Sleep mode is enabled and Clock5 is in the background, it will monitor ordinary keypresses, Shift+ keypresses, and Fn+ keypresses (NB: not Ctrl+ keypresses) and re-set the sleep timer with every keypress. Therefore when Sleep mode is enabled, Clock5 now behaves like a 'real' screensaver! Points to note: a) it doesn't yet monitor Ctrl+ keypresses, the system keys, or any touch-screen activity, b) it's a relatively processor-intensive activity at present so it tends to slow the keyboard response marginally (more so when there's no external power present - to save battery power). I'll keep working on both of these issues and see if I can improve them in future versions. * Fixed a bug in the sleep timer. Since the sleep timer measures absolute time (i.e. irrespective of whether the Psion has been switched on or off); if the machine was switched off when the timer was due and then switched on later, it would completely miss its cue to come to the foreground. This is now fixed so that it'll come to foreground straight away if it missed its time when switched on. Changes to Clock5 since v1.22 ============================== * Sweet Dreams. This is based upon Steve Litchfields original program and takes its name from it - with his permission of course. ;-) Thanks Steve. As well as giving the flashing external LED option, it can 'beep' the time (using medium-length beeps for the hours and shorter, higher- pitched beeps for the tens of minutes), or speak the time from the voice recordings stored in the new /system/apps/Clock5/Voice directory. For the LED and beeps, the minutes are rounded to the nearest ten minute figure - so the time given will never be more than 5 minutes out either way. Plenty accurate enough for most people in the middle of the night. When Sweet Dreams is enabled and your Psion case is closed, pressing the external 'play' button switches on the machine, flashes the LED (or beeps/speaks the time) and then switches the machine off. Very handy in the middle of the night. (NB: You just have to press the button briefly once. There's a slight delay in the case of the beep and voice options - the reason for which is explained further below) I added the beep/voice options because - although I liked Steve's idea of not disturbing your partner with the silent LED - I frequently travel alone on business when 'disturbing' someone just isn't an issue! Also, personally I find that focussing my eyes on *anything* in the middle of the night takes quite an effort whereas my ears seem to have a 'permanently on' mode of operation! Opening your Psion (assuming this activates it) will also activate Sweet Dreams when it's enabled. However - given that your machine turns off once it's 'done' the time - there's also an option to jump out of Sweet Dreams mode by pressing any key whilst Sweet Dreams mode is running. Also - since nobody can plan for every eventuality - there are bound to be occasions when you know that Sweet Dreams is enabled but you need to open your machine in 'polite' (or maybe not so!) company. There's a 1 second pause before both the beeps or voice option start playing for you to quickly press a key to cancel it. Since memory space is an issue for some people, Clock5 is intelligent enough to know if you've deleted the /Voice directory and will remove the voice option from the Sweet Dreams dialog box. FYI, the 28 ADPCM voice files use something approaching 100Kb of memory space - more than Clock5 itself plus all its associated files (including this one). I apologise now for the voice used (my own...). I surfed the net looking for some pre-recorded files featuring an appropriately sexy female voice - but alas without any luck! If however anyone would care to donate an appropriate female (or male depending on preference) voice, I'd be more than happy to bundle it with Clock5 instead! At the moment, Sweet Dreams only works when Clock5 is in the foreground (with or without password enabled) - not in the background. I can add this feature if people want it though... * Harry Brueckner suggested that the NightClock control logic should be changed slightly to still allow *some* manual control. It has as follows:- The logic behind the NightClock backlight control is now a compromise between control and 'over-control'. Backlight on if power: If ticked, the backlight is always on when power is present/switches off when power isn't present. If un-ticked, the control will switch the backlight off *once* when the box is 1'st un-ticked - but still allows you to manually (or with BL+, Macro5, etc.) turn the light on or off after this. Timed: If ticked, ONLY on between those times (unless over-ridden by power control above). If un-ticked, ALWAYS off (unless over-ridden by power control above). This way, you *can* still have manual control but still control things automatically too... * Changed the 'View' menu around so that the 'Calendar' menu item is at the top of the list. This so that when using the cursor to move right along the menu headings, you don't have to press it twice to get past 'Digital' and then 'Seconds'. My thanks to John Hunting for suggesting this mod. Changes to Clock5 since v1.2 ============================== * Fixed a small bug in the Calendar and Digital minutes views. I'd forgotten that the 11th, 12th, etc. of the month have a 'th' after the number instead of 'st, 'nd', etc. as in say '21st', '22nd', etc. * Corrected some of the information in the Help file which was out of date. * Tweaked the Multi Polygons display to improve the look slightly. Changes to Clock5 since v1.1 ============================== * Added a couple more screensavers: Mystify (Single Polygon) and Mystify (Multiple Polygons). Wonder where I got those names? I felt that the time had come to be able to show WinCE users that you don't need a Pentium PC in order just to bounce some lines around the screen! * Added the NightClock settings and functionality. Now you can set the backlight to come on in the evening and go off in the morning - or switch on/off in the middle of the day if you prefer! It doesn't have to be night time... Also a setting for having the backlight auto-detect whether the external power is connected or not. * The menu structure was becoming a bit cluttered so I added an extra column to the menus and rearranged things slightly (hopefully into a more logical view). Also added a 'memory' to the menu so that it remembers what the last menu option was that was used. * I missed off the Cancel/OK dialog buttons from the 'Sleep Time' pop-up box in v1.1. It still worked fine with the Esc/Enter keys but I've now added the buttons so it'll work with the pointer. * Once Clock5 v1.1 had been 'unlocked' from its password, it'd bring up the menu. If it was then hidden using Ctrl+H instead of the Hide menu, it'd go to the background but leave the keyboard locked. This is now fixed. Thanks to Alastair McCulloch for spotting this. * Another one from Alastair but which took me a lot longer to fix... Fn+Help wasn't captured by the program when it locked the keyboard/silkscreen. In fact, I don't think that key combo. *can* be trapped - which was unfortunate because of course it always fires up the Psion's 'help' details. The program couldn't detect that it was in the background because pressing these keys had also brought up the password dialog box which was patiently waiting for the password to be entered - but now in the background. In the event, I had to write my own password dialog box (instead of using the standard EPOC ones) which would continuously scan the keyboard *and* make sure it stayed in the foreground. Fn+Help will still start up the Psion's help engine - but Clock5 will now come back to the foreground immediately afterwards. * It turns out that some people preferred *not* to have the password entry debounced (i.e. so that the 1st keypress to bring up the password box isn't also the 1st letter entered into the password itself - see previous list of changes for details below). You can now choose this as an option in the password setup dialog box. See the Help file for details also. * Added a keypress beep option to the password dialog box * Fixed a problem that occurred in certain programs when starting up (e.g. Message Suite's Email and Guillaume Dupont's Porfolio). Email (say) would start up then switch into the background for an instant before continuing to run. Unfortunately Clock5 took this as an invitation to jump to the foreground and would promptly do so - leaving the Email program languishing in the background and in need of a task-switcher! Clock5 has now be duly punished and given strict instructions to be better behaved in future... * Fixed a bug in v1.1 and earlier where if you dragged the pointer across the screen it started up the Help file. Doing this more than once made it try to run the same Help file more than once - resulting in an error (and causing much confusion!). Changes to Clock5 since v1.0 ============================== * Added a 'digital minutes only' view. I haven't implemented a 12/24hr switch option yet - but I will. Probably sometime in the next few versions whilst I'm adding some of the other bits I've talked about. * Added a 'calendar' view. I've been thinking about doing this for some time and intend to make it somewhat more interactive than this initial screen. Probably more like the calendar you can bring up in Agenda by pressing the Tab key. Something else for a future version though... * The Hot-key has been changed from 'Fn+Menu' to 'Ctrl+Menu'. This because (as Christian Schmid pointed out) 'Fn+Menu' is normally used in 'Data' to dial phone numbers with. * 'De-bounced' the keyboard for when the password is enabled. Previously when you pressed a key on the keyboard when the password was enabled the password checking box came up and the key you'd pressed became the first letter entered as the password. Now this 1st keypress isn't entered into the password box - the next keypress becomes the 1st letter entered. Thanks to Tim Salmon for pointing this out and reminding me to fix it! * Made Clock5's password 'aware' of the Psion's own system password Previously, if your Clock5 password was enabled in the foreground (i.e. with all the possible key combinations trapped so that no task-switching program could switch programs) and your Psion's system password kicked in (e.g. 1st switch-on the next day or whatever) then you'd get the Owner Info. screen up requesting your system password - but you wouldn't be able to enter it because all the keys were blocked! The only way out of this was to do a soft-reset! Yeuch! Clock5 now detects that the system password is set and asks for permission to temporarily disable it (it'll re-enable it when you exit Clock5). You can chose to ignore this request if you wish and it won't bother you again - but you do so at your own risk! :-) If you let it temporarily disable the system password, you'll still get the Owner Info. screen as before but it won't need the password. All the keys will still be blocked - apart from the ESCAPE key. Press this to bring Clock5 back to the foreground. Thanks (and apologies!) to Joop Smit for finding this particular 'feature'. * 'System Password Check' has been added to the Tools/Settings menu which allows you to toggle between whether or not Clock5 ignores the system password being set. * Improved the animation in the 'About' screen and made the .mbm file much smaller. This has reduced the total memory required for Clock5 (unzipped) by about 40K - even allowing for all the additional features, etc. Not bad, hey? * Re-addressed the power consumption issue. When switched to the background, Clock5 looped around without pausing the processor at all. Consequently the current consumption jumped up to about 110mA when in background mode (i.e. every time you'd normally look at it on the system screen)! This has now been fixed so that in background mode, the program has little or no effect on the current (it reads ~45mA). * Also re-wrote some of the digital clock drawing routine so that it now only draws 68-70mA when in the foreground. NB: I disabled the background mode to measure it - normally you won't be able to measure this! The seconds are also drawn slightly more quickly than before. Changes to Clock5 since v0.95ß =============================== * Made the 'About' screen somewhat prettier and added some animation. * Added the help file and access from Clock5's menu. * Added some 'Power-on' options that let you specify whether your Psion will always switch on with Clock5 in the foreground. It can also enable the password if it's previously been set. * Added a hot-key feature (since I haven't been able to get the background activity monitor to work). At present, I've set it to a default of 'Fn + Menu'. This'll bring Clock5 back to foreground when it's running in the background. If people don't like this hot-key, let me know and I can change it - or I might make a Hot-keys Preferences menu to let you choose your preferred combo. * Clayton Hudson pointed out that the 'sleep' function had stopped working - i.e. that the program wasn't returning from the background at its allotted timeout. In fact, I realised that it hasn't been doing this for the last 0.15 versions - but nobody had pointed it out until now. Anyway, it's now working again. :-) * Francis Muir pointed out that the program didn't in fact block Macro5's default task-switching hot key as I said it did in v0.95ß (ooops!). This was pure laziness on my part for not properly checking it. Anyway, I've since checked it properly and fixed the bug. Thanks for letting me know Francis. Changes to Clock5 since v0.9ß =============================== * A number of people have commented that the password protection didn't protect against task-switching programs such as Macro5. I was aware of the problem but hadn't decided what to do about it. v0.95ßm now traps every possible keypress combination (I think!) when the password is enabled and releases it when the password is disabled so that Clock5's operation forms an invisible overlay over whatever task-switching program you prefer. * I realised that if the password was set and enabled when Clock5 started from its Clock5.ini settings then it didn't lockout the systems keys (etc.) as it should. Fixed. Changes to Clock5 since v0.8ß ============================= * The program now remembers all the preferences when you quit it. It generates an init. file (Clock5.init) and installs it in Clock5's own directory (on c:\ or d:\ drive as appropriate. * In v0.8ß, when you put the program into the background from it's own menu and had the password enabled, it didn't re-enable the system keys. It does now. * When the password was enabled in version 0.8ß, you had to hit either the Menu key or select the menu with the pointer to bring up the password check box. Bob Norris suggested other key combos would be useful. Now any key or pointer event will bring up the password box (Escape exits). * Locked out the 'Kill App' key combo (Ctrl+Fn+Shift+K) for when the password was set. Thanks to Stephen Duffy for pointing out this particular loophole. * Found a bug (myself - for once!) whereby if you pressed Escape immediately after pressing the Menu key, the program would crash. Fixed it. Changes to Clock5 since v0.7ß ============================= * Well the 'Sleep' function has been implemented (sort of)... You can choose the duration that you want Clock5 to sleep for and put it into the background and it'll come to the foreground once this time has been reached. However, it doesn't yet detect keyboard or screen activity whilst it's in the background. So even if you're typing away at something else, it'll come to foreground demanding attention! It's taken the last few days thinking about it but I *think* I've an idea how to fix this... * Got bored when I was trying to figure the above out - so I added another bouncing analog clock (a small one this time)! * Made the shadow behind the main Big Clock display slightly larger - thought this improved the 'look' slightly. * Barrie Pfeifer pointed out that the voice recorder buttons would start the Recorder app. - allowing you back into the system (and hence past the password). After somewhat of a headache (and advice from both Richard Reeve and Steve Litchfield) this has now been fixed. The Recorder app. still works in the background but Clock5 detects the buttons being used and takes over again. I've implemented it so that this only works when the password is set - you might want access to the normal voice button activity at other times. * Fixed a _very_ silly bug whereby I'd forgotten to disable the short key code scan in the menu when the password was set. E.g. pressing Ctrl+E quit the program even when the password was set! - should've seen that one! Thanks to Ben Vaisvil for spotting it. Changes to Clock5 since v0.6ß ============================= * Fixed a bug whereby the program wouldn't quit from the system screen / task list when asked. It will now. This also makes the program work with John Boyce's excellent JB5StopGo program. Thanks to John Butterly for pointing this out. * Added all the password menus and error-trapping logic. The password system lets you choose a password without actually enabling it (i.e. make it immediately 'live'). This is designed to be similar to a PC screensaver password and it's so that v0.8ß onwards can only 'time-out' to password protection mode if one has already been set. If there's no password set, the program will just come to the foreground as a clock display. Enabling the password also locks out all the system keys. You have to press the Menu key or tap the Menu silk-key to bring up password box. Be aware however that if you are running task- switching software such as Backlite+ or SwitchTask these will still work and your password protection will not be foolproof! I'll probably address this issue in a future release by building a task switcher into Clock5 - watch this space. * NB: DO NOT FORGET YOUR PASSWORD! If you do, the only way (as far as I know) of regaining control of your Psion will be to do a soft reset. Use this program at your own risk - I will not be held responsible for any data lost in this way (or any other way for that matter ). Changes to Clock5 since v0.5ß ============================= * Had to completely restructure the main program routine. This because previously the main program ran the clock and checked to see if any menu keys had been pressed. Fine - so long as you don't want it to switch to do something else (e.g. run a different screen saver module). This also would have made writing a password routine more difficult. All very good and well but just restructuring the program doesn't appear in itself to give any obvious benefit to the user - so I added in a bouncing analog clock display in as an alternative display! * Discovered that the power consumption issue (discussed on my web pages) is more to do with the amount of processor time being used to run the program than whether it's in 2 or 4 colour mode. Hence, slowing the speed of the loop which draws the big digits (by telling the processor to go to sleep for a while) significantly reduces the power consumption. The power consumption of v0.6ß has dropped from ~110mA (in v0.4ß) to ~83mA (c.f. an 'at rest' figure of ~45mA). May be able to improve this figure further. The Bouncing Analog display is even lower: ~54mA. * Improved the efficiency of the digit drawing routines which made the code smaller, slightly faster, and much more elegant! Changes to Clock5 since v0.4ß ============================= * Basic menu structure now in place. This meant I could get rid of the somewhat tacky splashscreen I had in the original! Also allows me to hint at features to come in future versions. More importantly, I've structured the menu routine fairly carefully so that implementing future features should be relatively straightforward. * Discovered a bug in 0.4ß which meant that the hour digits were being re-drawn 2 or 3 times a second instead of only once an hour. Fixing this has speeded up the rest of the display slightly. ---------------------- End -----------------------