On 8/8/06, James Richard Tyrer <[EMAIL PROTECTED]> wrote:
Timothy Miller wrote:
> On 8/8/06, James Richard Tyrer <[EMAIL PROTECTED]> wrote:
>
>> Note that mode 1 only has 350 or 400 vertical lines in the VGA emulation
>> modes and the default vertical is 70 Hz with 900 total lines. How would
>> our TV out handle this? OTOH, real CGA character mode (which is in the
>> IBM VGA spec) will work on a TV since it is non-interlaced with 200
>> visible lines and 262 total lines at vertical 60 Hz .
>
> Keep in mind that we have a disconnect between what the host thinks
> VGA is doing and what we're actually scanning out of the video
> controller. The VGA emulator program converts continuously from one
> to the other. Thus, we can have any physical resolution that we want.
> For the TV, we configure the video controller appropriately and set
> up the converstion program to handle the appropriate size of the
> output framebuffer.
>
> Also, if you're wondering how to tell if there's a TV on there, you
> just don't need to. Head 0 has the analog DACs, useful for a
> multisync monitor. We'll configure that via DDC (typically). Head 1,
> IIRC, is connected to the TV chip. We'll just configure the TV
> according to the region (different BIOS images?) on head 2. Then we
> set up the two (independent) video controllers to scan out the same
> framebuffer at two different resolutions (one or both will use the INC
> instruction in the vc to skip the extra space), and viola!
Problem! Which you missed.
In video mode 1, (with a real VGA) the VGA output needs to be either a
350 or 400 lines image while the TV output needs to be 200 lines. How
do we handle this? Do we have the VGA output 480 lines and the TV
output 240 lines?
Interlacing.
This would be fine on my Sony which doesn't have much overscan but ... .
I forget, what did CGA do about overscan? IIRC, you could move the
left margin in DOS.
We can play games with the blanking period if necessary, but I think
that TV pictures do more than the usual Xx480 or whatever. Something
about overscan, but I can't remember.
What did the Atari 800 do? There was a 320x200 mode, and there was
margin all around that on most TVs, and you could set the color of the
margin. There were also tricks you could play to extend pixels into
the overscan area.
Probably best to send 240 to the TV but only use the center 200 lines.
You are also going to need to increase the H blanking to compensate for
overscan, or is 640/720 enough? There is an official spec for overscan
somewhere. The usable area is called the "title safe frame".
I really know sadly too little about TV signals.
IAC, if the VGA is outputting more lines than the TV we would need 2
different character generators or use line doubling for the VGA output.
So, yes you do need to know if you are driving a TV unless you have a
new HDTV that does 480p (accepts regular VGA with no problems).
Are you saying interlacing is not an option here?
_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)