WMApm 1.1 review

by rbytes.net on

WMApm is your typical laptop APM (Advanced Power Management) dockapp

License: GPL (GNU General Public License)
File size: 9K
Developer: timecop
0 stars award from rbytes.net

WMApm is your typical laptop APM (Advanced Power Management) dockapp. One interesting feature is "timer" mode, where you can keep track of how long the laptop has been "on battery". This is opposite of the information usually provided by the BIOS, which is "time remaining", and in many cases wrong. This option can be toggled at run-time.

System messages scroll on the bottom of the window, AC plug flashes when battery is charging, and green LED inside the big button flashes red if battery level is critical low. Since version 1.1 there are some #defines for broken APM BIOSes to disable certain features.


* make
* copy wmapm somewhere useful
* dance
* /wmapm &
* phear
(if it doesn't work, skip the phear step)

This works on all machines that have a standard non-borked APM implementation. For people with broken APM implementations, I added some stuff, which was sent to me by Daniel Pittman, to compensate for some of the stupidity. If you see dumb behaviour from wmapm, consider editing wmapm.c and uncomment one, or both, of these lines (on lines 19 and 20):

#define RETARDED_APM if your bios thinks the battery is charging all the time when it's on AC power. What this will do is stop "charging" process as soon as the battery reaches 100%.

#define STUPID_APM if your bios shows -1 minutes remaining when AC is plugged in, or when battery is charging.

If your bios is even dumber than this, and you come up with another special case that needs to be handled, feel free to #ifdef it under < badword >_APM and send me a diff -u. I will include it in the next version. Any of these changes would have to go into acquire_apm_info. Note, I changed format of apminfo structure to get rid of redundancy - now there is only one power state variable, which keeps track whether we are on AC, charging, battery, etc.

Note, all the *_APM stuff is untested - my laptop has a working BIOS. If you test this and it doesn't work as advertised, go ahead and send me a fix.

As soon as ACPI is fixed I will make a version of wmapm for Linux ACPI. But until it works on MY laptop (toshiba satellite 2545xcdt) don't expect me to do anything about it. I will not accept patches either.

WMApm 1.1 search tags