_ _ ____ _ / \ | | __ _ _ __ _ __ ___ | _ \ ___ _ __ ___ __ _| |_ ___ _ __ / _ \ | |/ _` | '__| '_ ` _ \| |_) / _ \ '_ \ / _ \/ _` | __/ _ \ '__| / ___ \| | (_| | | | | | | | | _ < __/ |_) | __/ (_| | || __/ | /_/ \_\_|\__,_|_| |_| |_| |_|_| \_\___| .__/ \___|\__,_|\__\___|_| -----------------------------------------|_|-------------------------------- README.txt version 1.0, 7/21/98 Copyright 1998 Douglas I. Anderson Description =========== AlarmRepeater is a HackMaster hack for PalmOS version 1.0 and version 2.0 (3.0 not fully supported; see known bugs) that lets you repeat your alarm sound a given number of times. This is useful because the PalmPilot speaker tends to be on the quiet side. If you keep your device in your pocket, you may not even hear the alarm. By making the alarm repeat longer, there's a better chance that you'll hear it. For questions about how this differs from other hacks out there, see the "Questions and answers" section below. Requirements ============ * A device running version 1 or 2 of PalmOS (at least I _think_ it should work in version 1...please tell me if I'm wrong). * Approximately 4K available memory for installation, less than 400 bytes to run (for skim version) * The HackMaster extension from DaggerWare. To get a copy, go to: . Note that HackMaster is shareware. Please pay for it. Installation ============ If you haven't already installed HackMaster, do that first. Follow instructions from the HackMaster web page, which can be found at . Remember to register HackMaster. Now, simply install the "AlarmRepeaterHack.prc" file as you would any other ".prc" file. As a safety precaution, you should uninstall all hacks through HackMaster first (otherwise, you're asking for a crash...seriously). Go into hackmaster and click on the "+" to configure AlarmRepeater. Fill in your values. If you want to save space, jump to the section on "Installing the skim version" and then return here. Go back into hackmaster and re-install all your hacks. Note that if you have a hack installed that deals with sounds (such as SystemSoundHack), you must make sure that AlarmRepeater is loaded first. To do this: 1. Uninstall all your hacks (you should have already done this!) 2. Install (check) the hacks one by one in first to last order. 3. Click the reset button and go back into hackmaster (IMPORTANT). 4. Verify that the hacks are listed top to bottom in the correct order (AlarmRepeaterHack should be listed above any other sound related hacks). NOTE: it is important to reset to verify the order and to make sure things are working right. Otherwise, there's no way to decipher HackMaster's ordering. Installing the skim version =========================== AlarmRepeater comes in two versions. A normal one (which is about 4K) and a skim version which is less than 400 bytes. Functionally, there is no difference. However, the skim version is coded very tightly in assembly and also contains no configuration or about box (which makes it hard to change your settings...you would need to re-install the full version to do that). If you want to install the skim version: 1. Uninstall all your hacks through Hackmaster. 2. DO NOT delete the full version of AlarmRepeater. If you do, it will delete your preferences. Installing the skim version will automatically free up the space that the full version was using. 3. Install the skim version like you would any other ".prc" 4. Re-install your hacks as described at the end of the "Installation" section. Usage ===== AlarmRepeaterHack's settings are fairly simple. You enter in how many times you want the alarm to repeat and the delay (in ticks) between each repetition. Note that while the pilot is delaying, you can't do anything else. I would suggest keeping this value small. The one non-obvious feature in AlarmRepeaterHack is the cancel feature. If your device is repeating and you want it to stop, simply hold down either the "up" or "down" hardware buttons. The device will stop beeping at the beginning of the next repetition. Legal Junk & Distribution ========================= Non-profit companies and individuals may use and distribute AlarmRepeaterHack freely. However, I still retain the copyright. Any for-profit company planning to distribute AlarmRepeaterHack must contact me to obtain permission. Although I don't anticipate any trouble I should say that I take no responsibility for any actions this program takes. For legal information on the source code (if this is the full distribution), please see the "README.code" file. Contact Info ============ Probably the easiest way to contact me is via e-mail. However, I always appreciate getting real mail...if you want to, you can consider yourself officially registered if you send me any piece of "real mail." e-mail: dianders AT cs.stanford.edu address: Doug Anderson PO Box 3506 Stanford, CA 94309 web: ...hope to hear from you. Questions and answers ===================== Question: How is this different from hack XYZ? Answer: As you've probably seen, there are other hacks that do similar jobs to this one. One hack, known as AlarmHack, allows you to configure many different options including the actual beep sound and the frequency of reminders. AlarmRepeater DOES NOT match the complexity of AlarmHack. It will only let you set the number of times that your alarm sound is played. Question: So if this is simply a subset of other hacks, why did you write it? Answer: For a number of reasons: 1. AlarmRepeater is freeware, not shareware (though you still need to register HackMaster). 2. AlarmRepeater is much smaller (especially the skim version). This is because it only does one thing. It's not bogged down with features you might not use. 3. AlarmRepeater is faster (at least I think so). Since AlarmRepeater is so small, I could afford to spend some time optimizing it. The skim version is written in hand-optimized 68000 assembly. 4. AlarmRepeater will last longer. Because it doesn't hack datebook-specific code, it is less likely to break with future OS releases (well...ok, so it doesn't work in version 3...but that's because Datebook stopped playing the alarm sound! At least it shouldn't crash and should still work for 3rd party applications). 5. Much of the unimplemented functionality is available through other (free) hacks. For instance, if you want a different alarm sound, SystemSoundHack works fine in conjunction with AlarmRepeaterHack (though see the note about installation order). 6. This is (I believe) the only hack written using Codewarrior that has multiple code resources and has source code available. I have tried to comment my methods so others can follow (see README.code in the full distribution if you are interested). 7. As an exercise to learn how to write hacks. Question: I installed AlarmRepeater, but nothing is working. My alarm doesn't repeat. Answer: Make sure that you installed AlarmRepeater _before_ any other sound-related hacks. See the installation instructions for details on how to do this. Also, make sure you don't have a Palm III, which isn't really supported (see the known bugs section). Known bugs ========== * I have heard that AlarmRepeater will not work with the datebook in PalmOS 3.0. This is because it does not use the SndPlaySystemSound call to play its alarms. You will have to find an other solution for this for now. Perhaps I will address the problem when I get a 3.0 device. However, AlarmRepeater should still work for 3rd party app alarms, such as TikTok. Version History =============== 1.0, 07/21/98 - Initial public release.