TaleMute v1.2

by John Pane


This free hack intercepts the playing of all sounds except for system feedback sounds. It mutes the audio, and activates an attached TaleDevice for the duration of the sound. TaleDevices are available from Tech Center Labs (TaleLight, TaleVibes, etc), and from Pacific Neotek (Screecher).

If you do not have a TaleDevice, you may be interested in using BackMute, which activates the backlight instead of a TaleDevice.

Unlike some of the prior software for activating TaleDevices, TaleMute will intercept the alarms generated by the new Datebook application (OS 3.0 and later), as well as the alarms generated by the Pager Card.

You can find more information on using TaleMute with the Pager Card at: Using the Synapse Pager Card & TaleVibes by John "FuzzFace" McMahon.

TaleMute is distributed as Freeware. You may run this program without restriction, however you may not distribute it for profit.


Enhanced auto-detect version! AutoTaleMute eliminates the need to enable/disable TaleMute each time you insert/remove your TaleDevice.

Requirements

TaleMute requires HackMaster, or a compatible system patch manager. I encourage you to register your shareware copy of HackMaster if you use it with TaleMute.

TaleMute does not require a TaleDevice to be present. If there is no TaleDevice attached, the muting feature of TaleMute is still functional.

TaleMute is compatible with all released versions of the OS through 3.2, and all PalmOS devices including the new Palm IIIx, Palm V and Palm VII.

Details of Operation

TaleMute is a HackMaster hack. After installing TaleMute, you control its operation by turning it on or off inside HackMaster. TaleMute has no configurable options.

When it is active, TaleMute patches two operating system calls that applications might use to play sounds: SndDoCmd and SndPlaySmf. When either of these routines is called, TaleMute intercepts the call, mutes the audio and activates any attached TaleDevice for the duration of the sound.

TaleDevices are activated by opening the serial port. If the serial port is already open, TaleMute does not interfere with the current serial operation.

Note: by design, TaleMute does not intercept the playing of system sounds, such as the clicks and beeps that are played in response to user-interface activities.

TaleMute attempts to match the duration of the sound. Thus, you can adjust the amount of time that the TaleDevice is active by selecting a sound that has a shorter or longer duration. However, some TaleDevices do not respond well to extremely short activation durations. So, TaleMute activates the TaleDevice for a minimum of 30 ms. Unfortunately, if an application plays a series of very short sounds (< 30ms) in rapid succession, TaleMute will cause the series of sounds to last longer than it should.

Disclaimer

This program is distributed "as is," in the hope that it will be useful, but without any warranty; not even the implied warranties of merchantability or fitness for a particular purpose.

Contact Information

The author can be reached at: JPSoftware@pane.net.

The latest version of TaleMute can be found at: http://www.cs.cmu.edu/~pane/tm/

Version History

v1.2: Work around a problem on the Palm IIIx where the sound does not mute properly

v1.1: Fixes a bug under OS 1 and OS 2, where TaleMute was incorrectly intercepting system sounds.

v1.0: Initial public release.

Copyright

Copyright (C) 1998 John Pane
All rights reserved.


PalmPilot Software by John Pane

  • AutoTaleMute
    Redirects alarms to TaleDevices, with auto-detect.

  • TaleMute
    Redirects alarms to TaleDevices.

  • FlashLight
    Activates a TaleDevice while the Palm V hardware contrast button is depressed.

  • BackMute
    Redirects alarms to Backlight.

  • SilentRadio
    Disables Palm VII wireless chirp or another selected midi sound.

  • John Pane's Home Page

    JPSoftware@pane.net (last modified on 990629)