After installing Ubuntu 10.04 as sole operating system on the computer I found that BIOS time it is different from system time (that shown as time clock when running Ubuntu) but the date it is correct. This is due the fact that Ubuntu set hardware clock (BIOS time) as UTC time and then translate it as local time to display it on screen.
That create a confusion, because I’ve set up the computer to wake-up from BIOS RTC alarm at a specific time, on daily basis. Then surprise, instead to have the computer on at 9:00 local time, it was off. For a while I’ve presumed that the BIOS function wake-up from RTC alarm it was broken, but the culprit it is that Ubuntu use hardware clock as UTC ant not as local time.
To set Ubuntu to use BIOS time (hardware clock) as local time do:
edit the file /etc/default/rcS and change the parameter UTC from UTC=yes to UTC=no
set the hardware clock (BIOS time) to local clock:
sudo hwclock --systohc --localtime
Check that BIOS time it is same as system time with (from terminal):
sudo hwclock -r date
both results should be the same.