[plug] APM, sleep, and extra keyboard buttons
I am the LinuxAlien
linuxalien at optusnet.com.au
Sun Aug 11 20:11:03 WST 2002
Is there an easy way with out a kernel recompile. Is still haven't managed
to compile a kernel yet. The bios is 3 years old(99) so i will look for an
update. I need a floppy drive though as far as i know. As for powering down
my system, I have apmd installed. With the keyboard, is there a similar
file for a vtt?
Tim
At 11:46 11/08/2002 +0800, you wrote:
>On Sun, 11 Aug 2002 09:49:24 +0800, I am the LinuxAlien wrote:
>
>| When I put it to sleep it immediately wakes up and when i put it into
>| standby i can't wake it up.
>| I just tried to put it to sleep and apm exit with the below error
>|
>| APIC error on CPU0: 00(40)
>
>Many motherboards (in fact, almost all that I've seen) have completely
>broken APM support. When you try to put them to suspend or sleep, they
>either wake up straight away or never come out again. (In a couple of
>Athlon motherboards, it was necessary to remove power to the machine for a
>few seconds and then plug it in again before it would wake up.) This
>happens in both Linux and Windows.
>
>To get a machine to power down nicely when you run shutdown, normally you
>have to fiddle with the APM configuration in the kernel. You might also
>need to have apmd running. Here's the combination that works on my machine:
>
>CONFIG_PM=y
># CONFIG_ACPI is not set
>CONFIG_APM=y
># CONFIG_APM_IGNORE_USER_SUSPEND is not set
>CONFIG_APM_DO_ENABLE=y
># CONFIG_APM_CPU_IDLE is not set
># CONFIG_APM_DISPLAY_BLANK is not set
># CONFIG_APM_RTC_IS_GMT is not set
># CONFIG_APM_ALLOW_INTS is not set
># CONFIG_APM_REAL_MODE_POWER_OFF is not set
>
>You might need to turn REAL_MODE_POWER_OFF on. This is what Windows does.
>
>Don't enable ACPI, in my experience it doesn't work at all under Linux.
>(My machine panicked on boot with ACPI compiled into the kernel.)
>
>A BIOS upgrade /might/ help. A BIOS upgrade /might/ leave you with a
>broken machine.
>
>-------------------------------------------------------------------
>
>| I have a power, wakeup and sleep button on my new key board ( i just
>| went shopping) how do i get these to work?
>
>It all depends on what you mean by, 'work'. (-:
>
>You need to tell X that they exist using xmodmap. Fire up an xterm and run
>xev. Focus the xev window, and press each key that you want to get
>working. It should spit out something like:
>
>KeyPress event, serial 28, synthetic NO, window 0x2c00001,
> root 0x79, subw 0x0, time 2539066450, (380,337), root:(533,448),
> state 0x0, keycode 160 (keysym 0xffcb, F14), same_screen YES,
> XLookupString gives 0 characters: ""
>
>KeyRelease event, serial 28, synthetic NO, window 0x2c00001,
> root 0x79, subw 0x0, time 2539066564, (380,337), root:(533,448),
> state 0x0, keycode 160 (keysym 0xffcb, F14), same_screen YES,
> XLookupString gives 0 characters: ""
>
>(In this case, it's the "mail" button on my Logitech 'internet' keyboard,
>which I've mapped to F14.) Note the keycode that xev tells you for each
>button - in that case, 160. You need to add some stuff to the end of your
>/etc/X11/Xmodmap to map the keycodes that xev tells you into keys that X
>understands. I used extra F-keys that X supports but my keyboard doesn't have:
>
> (for a Logitech keyboard)
>keycode 223 = F13
>keycode 160 = F14
>keycode 174 = F15
>keycode 176 = F16
>keycode 162 = F17
>keycode 164 = F18
>keycode 144 = F19
>keycode 153 = F20
>keycode 236 = F21
>keycode 229 = F22
>keycode 178 = F23
>keycode 230 = F24
>
> (for a Microsoft keyboard)
>keycode 234 = F13
>keycode 233 = F14
>keycode 232 = F15
>keycode 236 = F16
>keycode 229 = F17
>keycode 230 = F18
>keycode 178 = F19
>keycode 235 = F20
>keycode 161 = F21
>keycode 223 = F22
>
> From there, you can use KDE (or whatever WM you use) to map these extra
> keys to do something useful. In my case, I have F13 (sleep) bound to
> starting an Xterm, the Mail button starts Sylpheed, the "Home" button
> starts Mozilla, and so on.
>
>CP.
LinuxAlien
Riverton, Perth, WA
Australian Linux Technical Conference, Perth 2003 http://linux.conf.au
More information about the plug
mailing list