Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- !/bin/bash
- # increase/decrease/set/get the backlight brightness (range 0-255) by 16
- #
- #get current brightness in hex and convert to decimal
- var1=`setpci -s 00:02.0 F4.B`
- var1=`echo $var1 | tr '[a-z]' '[A-Z]'`
- var1d=$var1
- case "$1" in
- up)
- #calculate new brightness
- var2=`echo "ibase=16; obase=10; a=($var1d+F);if (a<FF) print a else print FF" | bc`
- echo "$0: increasing brightness from 0x$var1 to 0x$var2"
- setpci -s 00:02.0 F4.B=$var2
- ;;
- down)
- #calculate new brightness
- var2=`echo "ibase=16; obase=10; a=($var1d-F);if (a>01) print a else print 01" | bc`
- echo "$0: decreasing brightness from 0x$var1 to 0x$var2"
- setpci -s 00:02.0 F4.B=$var2
- ;;
- set)
- #n.b. this does allow "set 0" i.e. backlight off
- echo "$0: setting brightness to 0x$2"
- setpci -s 00:02.0 F4.B=$2
- ;;
- get)
- echo "$0: current brightness is 0x$var1"
- ;;
- toggle)
- if [ $var1d -eq 0 ] ; then
- echo "toggling up"
- setpci -s 00:02.0 F4.B=FF
- else
- echo "toggling down"
- setpci -s 00:02.0 F4.B=0
- fi
- ;;
- *)
- echo "usage: $0 {up|down|set <val>|get|toggle}"
- ;;
- esac
- exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement