aatv - A simple aalib-based TV program for meteor/bktr devices on FreeBSD
       Robert Watson <rwatson@FreeBSD.org>

  Introduction

aatv renders meteor/bktr video input using aalib, an ascii art library
available under the LGPL.  There's support for a tuner, but I can't
test it as I don't have a frame sync on my tuner port, causing aatv
to hang waiting for a frame.  If it doesn't work, try changing the
device number in the source to something else.

  Building

Install the aalib package/port, then build aatv.  There are some
compile-time toggles in aatv.c, such as "quiet" and "cleanup_on_sane_exit"
which respectively prevent debugging/frame output to stdout, and cause
the terminal to be cleaned up on exit.  To build the aatv binary, just
run:

    make

  Running

aatv accepts various aalib arguments to set display type, permissible
characters for output, etc.

    ./aatv

You might want to consider things like:

    ./aatv -driver curses
    ./aatv -eight -inverse

  Usage

    Key    Usage
    b      Lower brightness
    B      Raise brightness
    c      Lower contrast
    C      Raise contrast
    r      Set RCA as source
    s      Set SVideo as source
    t      Set Tuner as source (probably broken)
    +      Go up a channel (probably broken)
    -      Go down a channel (probably broken)
    q      Quit

Currently, aatv doesn't support the tuner or extended bktr input types.
It's really just a question of sticking the right ioctl's in video.c and
adding keypresses to the event loop.

  Revision History

0.1	First revision, for what it was worth.
0.2	Basic tuner support, slightly better abstraction.
0.3	Use AUTOMODE instead of always picking NSTC, fix bug in
	mode setting abstraction.
0.4	Sort application defaults together in the source code; always
	check return values when setting defaults.
0.5	Use memory mapped buffer rather than read(2) by default.
0.6	Bugfixes in mapped and read models; mapped reading now no longer
	requires ioctls so may operate better in the presence of input
	channels without a frame sync signal (previously, ioctls would
	hang).
