diff options
author | xride <xride@FreeBSD.org> | 2008-08-11 14:44:18 +0800 |
---|---|---|
committer | xride <xride@FreeBSD.org> | 2008-08-11 14:44:18 +0800 |
commit | 333472b164e84d127eb6e715a2351718915ffbbe (patch) | |
tree | e9d768254084e0ccce507f61d6c4bd471f3fd27d /sysutils/wmbsdbatt/files | |
parent | c7a1d9e0a03cbd4e0b34b991d8a042d4312ee8da (diff) | |
download | freebsd-ports-gnome-333472b164e84d127eb6e715a2351718915ffbbe.tar.gz freebsd-ports-gnome-333472b164e84d127eb6e715a2351718915ffbbe.tar.zst freebsd-ports-gnome-333472b164e84d127eb6e715a2351718915ffbbe.zip |
Print current CPU frequency
PR: ports/126391
Submitted by: Ulrich Spoerlein <uspoerlein@gmail.com>
Diffstat (limited to 'sysutils/wmbsdbatt/files')
-rw-r--r-- | sysutils/wmbsdbatt/files/patch-wmbsdbatt.c | 58 | ||||
-rw-r--r-- | sysutils/wmbsdbatt/files/patch-zz-frequency | 179 |
2 files changed, 237 insertions, 0 deletions
diff --git a/sysutils/wmbsdbatt/files/patch-wmbsdbatt.c b/sysutils/wmbsdbatt/files/patch-wmbsdbatt.c new file mode 100644 index 000000000000..f482d54ba772 --- /dev/null +++ b/sysutils/wmbsdbatt/files/patch-wmbsdbatt.c @@ -0,0 +1,58 @@ +--- wmbsdbatt.c.orig Sat Jul 2 15:23:41 2005 ++++ wmbsdbatt.c Sat Jul 2 15:35:19 2005 +@@ -33,6 +33,7 @@ + #include <stdio.h> + #include <stdlib.h> + #include <string.h> ++#include <unistd.h> + + #include <sys/types.h> + #include <sys/stat.h> +@@ -112,14 +113,26 @@ + void draw_all(void); + int init_stats(void); + int acpi_exists(void); ++void usage(void); + #if 0 + void draw_rate(void); + #endif + ++void ++usage(void) ++{ ++ fprintf(stderr, "%s\n%s\n%s\n", ++ "usage: wmbsdbatt [-h | -b]", ++ " -h help", ++ " -b start with backlight on"); ++ ++ exit(0); ++} ++ + int + main(int argc, char **argv) + { +- int charging, ncolor, show; ++ int charging, ncolor, show, ch; + long timeout; + long animation_timeout, update_timeout; + struct sigaction sa; +@@ -132,6 +145,19 @@ + + sa.sa_handler = SIG_IGN; + sa.sa_flags = SA_NOCLDWAIT; ++ while ((ch = getopt(argc, argv, "bh")) != -1) { ++ switch (ch) { ++ case 'b': ++ backlight = LIGHTON; ++ break; ++ case 'h': ++ usage(); ++ break; ++ default: ++ usage(); ++ break; ++ } ++ } + + sigemptyset(&sa.sa_mask); + sigaction(SIGCHLD, &sa, NULL); diff --git a/sysutils/wmbsdbatt/files/patch-zz-frequency b/sysutils/wmbsdbatt/files/patch-zz-frequency new file mode 100644 index 000000000000..53a3cb213db0 --- /dev/null +++ b/sysutils/wmbsdbatt/files/patch-zz-frequency @@ -0,0 +1,179 @@ +--- backlight_off.xpm Tue Dec 23 19:27:34 2003 ++++ backlight_off.xpm Wed Jan 11 17:40:26 2006 +@@ -56,15 +56,15 @@ + "+@#%&&&%%%&&&&&&&%%%%%%%%&&&%%%%%%%%&&%&&&&%%&&%%&%%%&%&+$", + "+@#%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%%%%%%%%%%%&+$", + "+@#%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&+$", +-"+@#%&&%%%&&&%%%&&&%%%&&&%%%&&&%%%&&&&%&%&&&%&%&&&%%%&&&&+$", +-"+@#%&%&&&%&%&&&%&%&&&%&%&&&%&%&&&%&&%&%&%&%&%&%&%&&&%&&&+$", +-"+@#%&%&&&%&%&&&%&%&&&%&%&&&%&%&&&%&&%&%&%&%&%&%&%&&&%&&&+$", +-"+@#%&%&&&%&%&&&%&%&&&%&%&&&%&%&&&%&&%&%&%&%&%&%&%&&&%&&&+$", +-"+@#%&&%%%&&&%%%&&&%%%&&&%%%&&&%%%&&&&%&%&&&%&%&&&%%%&&&&+$", +-"+@#%&%&&&%&%&&&%&%&&&%&%&&&%&%&&&%&&%&%&%&%&%&%&%&&&%&&&+$", +-"+@#%&%&&&%&%&&&%&%&&&%&%&&&%&%&&&%&&%&%&%&%&%&%&%&&&%&&&+$", +-"+@#%&%&&&%&%&&&%&%&&&%&%&&&%&%&&&%&&%&%&%&%&%&%&%&&&%&&&+$", +-"+@#%&&%%%&&&%%%&&&%%%&&&%%%&&&%%%&&&&%&%&&&%&%&&&%%%&&&&+$", ++"+@#%&%%%&&&%%%&&&%%%&&&%%%&&&&&&&%%%&&&%%%&&&%%%&&&%%%&&+$", ++"+@#%%&&&%&%&&&%&%&&&%&%&&&%&&&&&%&&&%&%&&&%&%&&&%&%&&&%&+$", ++"+@#%%&&&%&%&&&%&%&&&%&%&&&%&&&&&%&&&%&%&&&%&%&&&%&%&&&%&+$", ++"+@#%%&&&%&%&&&%&%&&&%&%&&&%&&&&&%&&&%&%&&&%&%&&&%&%&&&%&+$", ++"+@#%&%%%&&&%%%&&&%%%&&&%%%&&&&&&&%%%&&&%%%&&&%%%&&&%%%&&+$", ++"+@#%%&&&%&%&&&%&%&&&%&%&&&%&&&&&%&&&%&%&&&%&%&&&%&%&&&%&+$", ++"+@#%%&&&%&%&&&%&%&&&%&%&&&%&&&&&%&&&%&%&&&%&%&&&%&%&&&%&+$", ++"+@#%%&&&%&%&&&%&%&&&%&%&&&%&&&&&%&&&%&%&&&%&%&&&%&%&&&%&+$", ++"+@#%&%%%&&&%%%&&&%%%&&&%%%&&&&&&&%%%&&&%%%&&&%%%&&&%%%&&+$", + "+@#%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&++$", + ".+++++++++++++++++++++++++++++++++++++++++++++++++++++++$.", + "..$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$.."}; +--- backlight_on.xpm Tue Dec 16 00:59:51 2003 ++++ backlight_on.xpm Wed Jan 11 17:49:48 2006 +@@ -39,7 +39,7 @@ + ".++++...............................++$$$+$$$+$$$+.+++.++@", + ".++++.$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$.+$$$+$$$+$$$++$+.+$+@", + ".++++.$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$.+$$$+$$$+$$$+++.+$++@", +-".++++$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$.+$$$+$$$+$$$++.+$+++@", ++".++++.$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$.+$$$+$$$+$$$++.+$+++@", + ".++++...............................++$$$+$$$+$$$+.+$+.++@", + ".++++++++++++++++++++++++++++++++++++++++++++++++++$+++$+@", + ".++++...............................++$$$+$$$+$$$+.+++.++@", +@@ -56,15 +56,15 @@ + ".++++++$$$+++++++$$$$$$$$+++$$$$$$$$++$++++$$++$$+$$$+$++@", + ".+++++++++++++++++++++++++++++++++++++$$$$$$$$$$$$$$$$$++@", + ".++++++++++++++++++++++++++++++++++++++++++++++++++++++++@", +-".+++++$$$+++$$$+++$$$+++$$$+++$$$++++$+$+++$+$+++$$$+++++@", +-".++++$+++$+$+++$+$+++$+$+++$+$+++$++$+$+$+$+$+$+$+++$++++@", +-".++++$+++$+$+++$+$+++$+$+++$+$+++$++$+$+$+$+$+$+$+++$++++@", +-".++++$+++$+$+++$+$+++$+$+++$+$+++$++$+$+$+$+$+$+$+++$++++@", +-".+++++$$$+++$$$+++$$$+++$$$+++$$$++++$+$+++$+$+++$$$+++++@", +-".++++$+++$+$+++$+$+++$+$+++$+$+++$++$+$+$+$+$+$+$+++$++++@", +-".++++$+++$+$+++$+$+++$+$+++$+$+++$++$+$+$+$+$+$+$+++$++++@", +-".++++$+++$+$+++$+$+++$+$+++$+$+++$++$+$+$+$+$+$+$+++$++++@", +-".+++++$$$+++$$$+++$$$+++$$$+++$$$++++$+$+++$+$+++$$$+++++@", ++".++++$$$+++$$$+++$$$+++$$$+++++++$$$+++$$$+++$$$+++$$$+++@", ++".+++$+++$+$+++$+$+++$+$+++$+++++$+++$+$+++$+$+++$+$+++$++@", ++".+++$+++$+$+++$+$+++$+$+++$+++++$+++$+$+++$+$+++$+$+++$++@", ++".+++$+++$+$+++$+$+++$+$+++$+++++$+++$+$+++$+$+++$+$+++$++@", ++".++++$$$+++$$$+++$$$+++$$$+++++++$$$+++$$$+++$$$+++$$$+++@", ++".+++$+++$+$+++$+$+++$+$+++$+++++$+++$+$+++$+$+++$+$+++$++@", ++".+++$+++$+$+++$+$+++$+$+++$+++++$+++$+$+++$+$+++$+$+++$++@", ++".+++$+++$+$+++$+$+++$+$+++$+++++$+++$+$+++$+$+++$+$+++$++@", ++".++++$$$+++$$$+++$$$+++$$$+++++++$$$+++$$$+++$$$+++$$$+++@", + ".++++++++++++++++++++++++++++++++++++++++++++++++++++++++@", + " .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ", + " @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ "}; +--- parts.xpm Tue Dec 16 00:59:51 2003 ++++ parts.xpm Wed Jan 11 17:45:26 2006 +@@ -61,13 +61,13 @@ + "+...+@...++...@@...+@...+@...++...+@...++...+@...++###+$###++###$$###+$###+$###++###+$###++###+$###++###", + ".+++..@@@..+++..+++..@@@..+++..+++..@@@..+++..+++.#+++##$$$##+++##+++##$$$##+++##+++##$$$##+++##+++##+++", + ".@@@..@@@..+++..+++..@@@.&+++..+++..+++..+++..+++.#$$$##$$$##+++##+++##$$$##+++##+++##+++##+++##+++##+++", +-"@.@.@+.+.++.@.++.@.@+...++...@+...@@...++...++...+$#$#$+#+#++#$#++#$#$+###++###$+###$$###++###++###++###", +-"@.@.@+.+.++.@.++.@.@+...++...@+...@@...++...++...+$#$#$+#+#++#$#++#$#$+###++###$+###$$###++###++###++###", +-"@.@.@+.+.++.@.++.@.@+...++...@+...@@...++...++...+$#$#$+#+#++#$#++#$#$+###++###$+###$$###++###++###++###", +-".+.+..@.@..+.+..@.@..+++&&+++..+++..@@@..+++..+++.#+#+##$#$##+#+##$#$##+++&&+++##+++##$$$&#+++##+++&&$$$", +-"+.+.++.+.+@.@.@+.@.@@...+@...++...+@...++...+@...++#+#++#+#+$#$#$+#$#$$###+$###++###+$###++###+$###++###", +-"+.+.++.+.+@.@.@+.@.@@...+@...++...+@...++...+@...++#+#++#+#+$#$#$+#$#$$###+$###++###+$###++###+$###++###", +-"+.+.++.+.+@.@.@+.@.@@...+@...++...+@...++...+@...++#+#++#+#+$#$#$+#$#$$###+$###++###+$###++###+$###++###", ++"@.@.@+.+.++...++...@+...++...@+...@@...++...++...+$#$#$+#+#++###++###$+###++###$+###$$###++###++###++###", ++"@.@.@+.+.++...++...@+...++...@+...@@...++...++...+$#$#$+#+#++###++###$+###++###$+###$$###++###++###++###", ++"@.@.@+.+.++...++...@+...++...@+...@@...++...++...+$#$#$+#+#++###++###$+###++###$+###$$###++###++###++###", ++".+.+..@.@..+++..@.@..+++&&+++..+++..@@@..+++..+++.#+#+##$#$##+++##$#$##+++&&+++##+++##$$$&#+++##+++&&$$$", ++"+.+.++.+.+@...@+...@@...+@...++...+@...++...+@...++#+#++#+#+$###$+###$$###+$###++###+$###++###+$###++###", ++"+.+.++.+.+@...@+...@@...+@...++...+@...++...+@...++#+#++#+#+$###$+###$$###+$###++###+$###++###+$###++###", ++"+.+.++.+.+@...@+...@@...+@...++...+@...++...+@...++#+#++#+#+$###$+###$$###+$###++###+$###++###+$###++###", + ".@@@..+++..@@@..+++..@@@&&+++..+++..@@@&.+++..+++##$$$##+++##$$$##+++##$$$&&+++##+++##$$$&#+++##+++##+++", + "+++++++++++++++++++++++++++++++....+++....+++++++++++++++++..##+++####+++++++++++++++++#################", + "++++++++++++++++++++++++++++++++.+++..+..++.+++++..++.+++.+..+++##+##++#+++++##++#+++#+#################", +--- wmbsdbatt.c Tue Dec 23 19:27:34 2003 ++++ wmbsdbatt.c Wed Jan 11 18:00:47 2006 +@@ -67,6 +67,7 @@ + int battery_time; + int temperature; + int low; ++ int freq; + #if 0 + int capacity; + int rate; +@@ -79,6 +80,7 @@ + static char *sysctl_battery_time = "hw.acpi.battery.time"; + static char *sysctl_temperature = "hw.acpi.thermal.tz0.temperature"; + static char *sysctl_acline = "hw.acpi.acline"; ++static char *sysctl_frequency = "dev.cpu.0.freq"; + + typedef enum { LIGHTOFF, LIGHTON } light; + +@@ -106,6 +108,7 @@ + void draw_batt(void); + void draw_low(void); + void draw_temp(void); ++void draw_freq(void); + void draw_statusdigit(void); + void draw_pcgraph(void); + void blink_batt(void); +@@ -238,7 +241,6 @@ + } + if (show) { + /* show */ +- draw_all(); + if (charging) { + blink_pos--; + } +@@ -284,6 +286,10 @@ + addr -= 273; + acpi_info.temperature = addr; + ++ if (sysctlbyname(sysctl_frequency, &addr, &len, NULL, 0) == -1) ++ err(1, "sysctlbyname(\"%s\")", sysctl_frequency); ++ acpi_info.freq = addr; ++ + if (sysctlbyname(sysctl_acline, &addr, &len, NULL, 0) == -1) + err(1, "sysctlbyname(\"%s\")", sysctl_acline); + acpi_info.acline = addr; +@@ -372,6 +378,7 @@ + draw_temp(); + #endif + draw_temp(); ++ draw_freq(); + + if (acpi_info.battery_status == CHARGING) + blink_batt(); +@@ -471,13 +478,35 @@ + temp = 0; + + dockapp_copyarea(parts, pixmap, (temp / 10) * 5 + light_offset, 40, 5, +- 9, 23, 46); ++ 9, 32, 46); + dockapp_copyarea(parts, pixmap, (temp % 10) * 5 + light_offset, 40, 5, +- 9, 29, 46); ++ 9, 38, 46); + + /* '°C'. */ +- dockapp_copyarea(parts, pixmap, 10 + light_offset, 49, 5, 9, 36, 46); +- dockapp_copyarea(parts, pixmap, 15 + light_offset, 49, 5, 9, 42, 46); ++ dockapp_copyarea(parts, pixmap, 10 + light_offset, 49, 5, 9, 44, 46); ++ dockapp_copyarea(parts, pixmap, 15 + light_offset, 49, 5, 9, 50, 46); ++ ++} ++ ++void ++draw_freq(void) ++{ ++ int light_offset=0; ++ int freq = acpi_info.freq; ++ ++ if (backlight == LIGHTON) ++ light_offset = 50; ++ ++ if (freq < 0) ++ freq = 0; ++ else if (freq > 9999) ++ freq = 9999; ++ if (freq >= 1000) ++ dockapp_copyarea(parts, pixmap, ((freq / 1000) % 10) * 5 + light_offset, 40, 5, 9, 4, 46); ++ if (freq >= 100) ++ dockapp_copyarea(parts, pixmap, ((freq / 100) % 10) * 5 + light_offset, 40, 5, 9, 10, 46); ++ dockapp_copyarea(parts, pixmap, ((freq / 10) % 10) * 5 + light_offset, 40, 5, 9, 16, 46); ++ dockapp_copyarea(parts, pixmap, (freq % 10) * 5 + light_offset, 40, 5, 9, 22, 46); + + } + |