aboutsummaryrefslogtreecommitdiffstats
path: root/sysutils/wmbsdbatt/files
diff options
context:
space:
mode:
authorxride <xride@FreeBSD.org>2008-08-11 14:44:18 +0800
committerxride <xride@FreeBSD.org>2008-08-11 14:44:18 +0800
commit333472b164e84d127eb6e715a2351718915ffbbe (patch)
treee9d768254084e0ccce507f61d6c4bd471f3fd27d /sysutils/wmbsdbatt/files
parentc7a1d9e0a03cbd4e0b34b991d8a042d4312ee8da (diff)
downloadfreebsd-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.c58
-rw-r--r--sysutils/wmbsdbatt/files/patch-zz-frequency179
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);
+
+ }
+