Things that need fixing
------ ---- ---- ------

The workaround for the "Natoma bug" a) doesn't work and b) restricts
compressed frame size to 128K bytes. Fix it and also provide a
configuration parameter to completely remove it, restoring the (arbitrary)
200K byte frame limit.  (Partially done, using the bigphysarea patch
from Pauline Middlink, but completely untested. Waiting until motion
playback code is added.)

The new IOCTL for motion playback doesn't work, my machine just locks up.

Allow for preview windows that don't start on a 32 bit boundary.
I'll probably steal Jeanette Pauline Middlink's code from her ZR36120
driver if I can decipher it.

There are no applications that read or write MJPEG files.

The read() and write() calls don't do anything yet.  Steal Pauline's.

Change it to conform to the new video4linux2 API.

Images grabbed by the JPEG codec are shifted too far to the right.
Obviously the codec needs to pull HStart out of a different hat.

Frames grabbed by the codec always include both fields, even when that
would be inappropriate.

Once motion capture misses a frame, screen preview never works again
until the computer is power cycled.


Things that are fixed in 0.0.3
------ ---- --- ----- -- - - -

The streaming buffer management has been extensively reworked. Now there
can be more buffers in the driver, up to 32, which allows the application
to be a bit less real-time in its response. The application can also wait
for the full buffers in any order it sees fit. Why it would want to is
another question.

NTSC encoder output is black and white unless Windows 95 used the Buz
before we did.  Actually, usually the output is just black :-( [Read
SAA7185B documentation more carefully.  Ignore the missing line in the
register programming summary table.]

Add IOCTL for motion playback, can probably use same SYNC to wait for it.


Things that are fixed in 0.0.2
------ ---- --- ----- -- - - -

The X server get damaged whenever I use the hacked XTV to view the video.
The screen jumps around sporadically.  This problem is not fixed by merely
stopping and restarting the X server, a system reboot is necessary.
Sometimes stuff gets written into the upper portion of the screen.
This looks like a memory scribbler!  [The code that was supposed to make
sure the DMA wasn't running during initialization actually made sure it
*was* running. Thanks to Ralph Metzler.]  [Protecting shared data with
a spinlock fixed it nicely. Just don't call interruptible_sleep_on()
while the lock is held!]

The colors are wrong when watching TV, about 180 degrees wrong.
They appear right when grabbing JPEG though. [HDelay must be odd,
otherwise U and V get sampled as V and U.]

Far too much output is sent to the syslog.  And the first argument to
printk is generally wrong anyway.

Add support for TV norms other than NTSC. [Thanks to Ralph Metzler.]

The preview image is shifted right quite far. The value for HStart was
obviously pulled out of the wrong hat.

Write the missing parts of the encoder driver, the ones that control
it. [PAL support from Ralph Metzler. Jeez, did I do *anything* on this
driver?]

Add IOCTL to control codec code volume and comment marker.

