OS4Depot.net 20130227_1013
  Home Search Mirrors Contact Info Credits

 Readme data for Root » Video » Misc » amitv.lha

Description: Watch TV on your amiga
Install: amitv.lha
Size: 531kb 5
Version: 0.13
Date: 21 Mar 09
Author: Ian Gledhill
Submitter: Ian Gledhill
Email: IanG/amiganet org
Requirements: Bt848/Bt878/Cx2388x-based TV card
Category: video/misc
License: Freeware
Distribute: yes
Min OS Version: 4.0
AmiTV V0.13 (21/03/2009)
================

by Ian Gledhill (Spirantho on various forums) IanG()amiganet.org

**WARNING** This is software in development and it quite likely to crash your
computer, especially if you have interrupts enabled!!! I am not responsible for
loss of code, data or small fluffy rodents as a result of using this program.
Use at your own risk!

This is a preliminary build of a useful TV program. It currently supports Bt848,
Bt878 and Cx2388x chipsets.
It supports PAL and NTSC, but in this build only PAL is supported.

Note well that sometimes the Bt8x8 chip doesn't pick up a good signal, probably
an overflow in the FIFO. If you don't get a signal and you're sure there should
be one, just reselect the overlay mode or something to restart the RISC program.
This may happen on the Cx2388x too if you change video source while it's
running. If in doubt, re-select the overlay mode you want.

When you run the program, two windows open - the video window and the control
window. The menus are attached only to the control menu at the moment.

I haven't worked out how to make nice menus yet, but essentially the options
are:

In the Project menu, only Quit works (It's a handy button to have working).
In the Format menu, nothing works.
In the Overlay menu, you have three options:
* Buffered - This writes the TV data to an internal buffer, and then when
triggered, copies the data to the Overlay buffed.
	Pros 	- Most stable picture.
			- Uses overlay for scaling
			- No corruption because AmiTV can safely lock the bitmap, as it has control
over the rendering, rather than the TV card.
	Cons	- Uses CPU time for rendering.
			- Still not perfectly stable.
			- Requires the picture window or the control window to be activated when
interrupts are disabled.
			- Low frame rate (according to INTUITICKS) unless interrupts are enabled.
			- Window will disappear when the screen is being dragged.

* Direct - This writes the TV data straight to the graphics card.
	Pros		- No CPU time at all
			- Full frame rate at all times
			- No need for interrupts
			- Uses overlay for scaling.
	Cons	- Doesn't work perfectly on any machine except *maybe* the Pegasos II!
			- Window will disappear when the screen is being dragged.

* None - This writes to main RAM and then blits the data to the RastPort of the
window.
	Pros		- Is always visible
			- Uses OS4's transparency correctly
	Cons	- Is very slow!
			- Can't be used with interrupts (yet)
			- Doesn't scale.

You then have an extra option: Full Screen mode. This does what it says on the
tin. It is recommended that if you're using this option you use interrupts on,
as if it's full screen you won't be doing anything else anyway.

In the interrupts menu, there are now two options: Enable Interrupts, and Faked
Interrupts.
Using interrupts is ***VERY LIKELY*** to crash your machine solid. I don't know
why this is, it may just be on the AmigaOne. It's usually pretty stable as long
as the picture is stable. You will, however, get distortion in the video signal.
This is because you can't safely lock the bitmap inside an interrupt. Believe
me, I've tried.
Note that selecting No Overlay mode will disable real interrupts. They can not
be enabled in this mode either.
If you want to use interrupts be *sure* that your picture is solid.

Faked Interrupts are where the program *polls* the interrupt register. This is
more stable as the interrupt is never being triggered, and works on the Cx2388X
chipset, which never seem to trigger an interrupt (yet). It works but it will
annihilate your CPU free time!

The program starts in Buffered Overlay mode with Interrupts disabled. This is a
good compromise as it leaves plenty of CPU time free while giving a reasonable
display.

There are four inputs on TV cards to the decoder chip, cycle between them using
the control window or the Up/Down arrow keys when the video window is selected.

Quit by pressing Escape in the video window, or use the control window menu. If
Escape doesn't work, make sure you have the video window activated (even in full
screen mode).

It is strongly recommended that you use Buffered Overlay mode for most purposes.
Use no interrupts when you need CPU time, use Faked Interrupts when watching
full screen or needing full frame rate. However, PLEASE send me bug reports of
ALL combinations!

Using No Overlay mode will, of course, allow you to take screengrabs should you
need to.

PLEASE let me know if you use this program, no matter what the results. I need
feedback!

Good Luck!

Changelog:

V0.13 (21/03/2009)
============
* Sam440ep now supported! Only Cx2388x chipsets work because the Bt8x8 is a 5V
PCI chip and the Sam insists on 3.3V.
* Interrupt handler now allocated as a system object instead of on the stack. No
real difference so far though.
* No Overlay mode now uses R5G6B5 instead of R8G8B8A8. This allows full
resolution.
* No Overlay mode has gamma attenuation turned off, so it's the correct
brightness now.
* Interrupts aren't even initialised on the Cx2388x chipsets now, there's no
point and it seems to reduce stability. Need to fix this properly if I can just
get a sensible interrupt!
* Loads of bug fixes.







Copyright (c) 2004-2013 Björn Hagström. All rights reserved.
OS4 and its logos are registered trademarks of Hyperion Entertainment