#!/bin/bash
#
#	/etc/rc.d/init.d/915resolution
#
# chkconfig: 2435 23 77
# description: Overwrite RAM copy of video BIOS modes.
# config: /etc/sysconfig/915resolution
#

[ -f /usr/sbin/915resolution ] || exit 0
[ -f /etc/sysconfig/915resolution ] || exit 0

# Source function library.
. /etc/init.d/functions

declare -a VBMODES
. /etc/sysconfig/915resolution

RETVAL=0

start() {
	local mode
	local delim=
	echo -n $"Overwriting video BIOS:"
	for mode in "${VBMODES[@]}"; do
		# uncomment this for debugging...
		# echo -n $"$delim $mode"
		# there's no "silent" mode for now: -q switch needed
		/usr/sbin/915resolution $mode >/dev/null
		local status=$?
		if [ $status -ne 0 ]; then
			RETVAL=$status
			failure $"setting $mode"
			break
		fi
		delim=";"
	done
	if [ $RETVAL -eq 0 ]; then
		success $"${#VBMODES[@]} modes set."
	fi
	echo
	return $RETVAL
}

stop() {
	return 0
}

dostatus() {
	/usr/sbin/915resolution -l
}

case "$1" in
start|restart)
	start
	;;
stop)
	stop
	;;
status)
	dostatus
	;;
*)
	echo $"Usage: 915resolution {start|stop|status|restart}"
	exit 1
esac

exit $?

