123456789101112131415161718192021222324252627282930 |
- #!/bin/sh
- usage () {
- cat <<EOF>&2
- Usage: ${0##*/} WIN_EXE PARAMS"
- Run Wine application while displaying FPS onscreen.
- EOF
- }
- [ $# -eq 0 ] && usage && exit 1
- [ "$1" = "-h" ] && usage && exit
- [ "$1" = "--" ] && shift
- if ! command -v osd_cat >/dev/null 2>&1; then
- echo >&2 "osd_cat not found"
- exit 1
- fi
- ## The unbuffered option is -u on GNU and OpenBSD, -l on others.
- OPT_UNBUF=-l
- case "$(uname)" in
- Linux|OpenBSD) OPT_UNBUF=-u ;;
- esac
- WINEDEBUG=fps wine "$@" 2>&1 | tee /dev/stderr | \
- sed $OPT_UNBUF -n '/^trace:fps:/{s/.* \([^ ]*\)fps/\1/;p}' | \
- osd_cat -l1 -f "-*-*-*-*-*-*-32-*-*-*-*-*-*-*" -O1 -c "yellow"
|