Date : Wed, 27 Feb 2002 12:08:41 -0000
From : "Richard Gellman" <r.gellman@...>
Subject: Re: Circuits involving a SAA5050?
Kris Adcock writes:
Reading the SAA 5050 datasheet :
>"The basic input to the SAA5050 is the character data from the teletext
page
>memory. This is a 7 bit code. Each character code defines a dot matrix
>pattern."
>Now, this seems to mean that the bitpattern for each character is supplied
>from elsewhere. Or does it mean that the input 7 bit code (ASCII) is used
as
>an index into the data containing the dot matrix pattern?
The SAA5050 is a teletext self-video generating character ROM.
What this means is, all you have to do is supply it with 1K of RAM, and it
will generate an entire video signal from that 1K represnting 1 page of
data.
The data itself is 7-bit ASCII characters (i.e. 128-255 is the same as
0-127). with most of the first 32 codes being used as control codes.
Each byte is used along with an internal row counter to determine the
character data to be loaded from the internal ROM.
Graphics characters are determined by the order of the bits in the ASCII
code (details of which are in the BBC Micro User Guide).
Seperated graphics adds a fore-background mask to remove 3 rows and 2
columns of data and set them to background colour
Double Height scans each data line twice, starting from the top or halfway
down depending on which half is displayed
The CRS pin when asserted, inserts character rounding half dots between
pixels when they are diagonal, and a more complicated process is used for
double height characters.
Flashing text is done via an internal astable multivibrator, who's output is
logical AND'ed with the pixel decoder output to generate flashing text.
So, in summary.. The SAA5050 is capable of generating a telext display on
its own with only 1K of RAM (and possibly some sync signal generation
circuitry).
As a side point, the SAA5050 also has a remote control decoder built in, but
it was never used in the BBC Micro (or indeed, most TVs).
The only the SAA5050 doesn't do that you should be aware of, is generate the
cursor. That was done by making the 6845CRTC generate a cursor on a blank
screen, then using the SAA5050 to superimpose its output on top of the
6845's output
The SAA5050 however does not decode teletext data out of a TV signal, it
only outputs raw page data from memory as a correctly formmatted teletext
page.
There have been mentions of "Registers" in the SAA5050. There are none. All
control is done through control lines or teletext data in memory.
:)
-- Richard Gellman