15

In the original outline specification for the BBC Micro, there are several mentions of teletext, in particular

Graphics: […] (b) Plot a low resolution graphics point to build Teletext graphic characters in a range of colours or shades of grey (minimum: black and white) (PLOT X,Y,C probably C=-1 to complement point, C=0 to plot black point .... C=7 to plot white point)

Video display: […] The 'full screen' should consist of at least 24 lines of 40 characters (*preferably an option of 80 characters from the outset) of upper and lower case alpha-numerics and (colour) Teletext graphics.

and

Teletext: adapter should be available for off-air downloading of software

It seems to me these are two distinct and essentially unrelated requirements:

  1. Display teletext characters on screen.

  2. Be able to buy a peripheral that can download broadcast software.

The second requirement was presumably met by some special peripheral, that only a small percentage of customers would buy.

The first requirement was met by the SAA5050 teletext chip.

This chip added significantly to manufacturing cost, to the extent that the Electron omitted it. And according to an interview with Sophie Wilson

The SAA5050 was a pain - expensive and different from the rest of the machine

So it seems to me that it would be more efficient to meet the teletext character requirement just by including those characters in the software font for the bitmap modes.

Is there some other requirement implicitly included in 'teletext' that I am missing, that required the SAA5050?

10
  • 4
    Can we assume that you are familiar with the concept and are actually trying to ask why the chip was deemed necessary? Commented Jul 29, 2024 at 18:15
  • 3
    I'm not very familiar with the BBC, but if you wanted to be able to render all the teletext block-drawing characters, you'd run out of space in a regular 8-bit font. The linked Wikipedia page has a nice example image where the News logo features a crude logo of the earth, including a translucent design where the dark blue bar in the background is visible "through" the continents. Commented Jul 29, 2024 at 18:18
  • 2
    (Curiously, it appears that they managed to squeeze South America and Australia onto the same half of the globe. Small world.) Commented Jul 29, 2024 at 18:23
  • 2
    Monochrome ▞, no problem. But how would you represent this in every possible foreground/background color combination? Although perhaps I'm only revealing my ignorance about the BBC and/or Teletext. Commented Jul 29, 2024 at 18:41
  • 1
    @triplee I implemented a Viewdata client for X11 some 25 years ago, and while it obviously had to include the Teletext characters, I chose to also include the semigraphics rather than generate them at runtime. There are 224 of them: 92 mostly-ASCII glyphs, and 64 each of "contiguous" and "separated" graphics characters. Double-height text triples the number of glyphs if you want the two halves to be their own single-height glyph rather than generate them on the fly, but many are visually identical and could be deduplicated. It'd probably fit in the 512 glyphs supported by EGA/VGA text mode. Commented Jul 31, 2024 at 11:34

2 Answers 2

24

The Broadcast Teletext Specification of 1976:

... defines the Teletext system for broadcasting information. The main technical features of the system are:

  1. The Teletext system is an information broadcasting system in which Pages of text and graphical symbols are transmitted in coded form on otherwise unused television lines during the field interval.

...

  1. A Page comprises 24 Rows of 40 characters, including a special top Row called the Page-Header.

...

  1. Control Characters are provided to:

    i) select one of seven Display Colours

    ii) select one of eight Background Colours

    iii) display selected characters with Double Height

    iv) cause selected characters to Flash

    v) Conceal selected characters until Revealed by the user.

As stated elsewhere, that document was a product of cooperation between the BBC, the Independent Broadcasting Authority and the British Radio Equipment Manufacturers' Association, i.e. everybody who was broadcasting television or manufacturing receivers within the UK at the time. So 'Teletext' had an agreed, defined meaning — it wasn't just a term the BBC could use to cover whatever it felt like.

As per the quote, the document establishes Teletext as being both the means of piggybacking digital page transmission onto analogue video and the proper interpretation of that data for display.

So it's safe to reason that the BBC's documents used 'teletext' to mean both:

  • the form that pages intended for transmission would take — their shape, control characters, etc; and
  • the radio encoding by which data is transmitted.

On the side topic of display hardware: with eight colours and 40 columns of text, being able to display "(colour) Teletext graphics" in a pure bitmap mode would have required a sensible minimum of 3bpp at 240px (at 6px/character) across, or 90 bytes per line. If you rationalise that into the rest of the BBC's graphics modes it probably would have meant supporting its 4bpp output at 320px, which would need double the bandwidth actually available.

So as painful as incorporating an SAA5050 might have been, full-quality display of Teletext-specification screens wasn't otherwise within the machine's reach. Indeed if you look at the Electron, its firmware maps the absent Teletext mode to a monochrome 320x256 graphics mode, retaining decent-quality 40-column text and doing the semi-graphics as regular pixel output, but losing all colour.

10

Teletext used a system of control characters, which occupied character cells on the screen and were rendered as spaces. This allowed it to produce a 40 column 8 colour display of text and low-resolution graphics, with features like double height text, all while only consuming a fixed 40 bytes per line of data.

There were compromises in this of course, since control characters took up space on the screen you would often lose a character or two at the left edge of the screen, and while you could change the colour of a word, you couldn't change the colour of individual letters in that word.

The memory system in the BBC micro could fetch 40 or 80 bytes on each scan-line and feed them to the video hardware. This was deeply tied to the core architecture of the machine with the video reads being interleaved between the CPU memory accesses. The model B had enough memory to fill the screen with 80 byte lines in a bitmap mode, while the model A only had enough memory to fill the screen with 40 byte lines.

Assuming your characters are 8 pixels wide (as the BBC micro's were) and assuming you have individual colours for each pixel (as the BBC micro did), 80 bytes per line in a bitmapped mode, gives you 80 colums in 2 colours, 40 columns in 4 colours, or 20 columns in 16 colours.

So you can't fully render a teletext screen in any of the BBC micro's bitmap modes. Either the resolution is too low, or the colour depth is too low.

While some paragraphs in the document suggest that reduced colours may be acceptable, other parts of the document clearly suggested that the BBC at least strongly preferred full teletext support.

5
  • 1
    Don't know if the BBC video hardware could have been adapted for it, but the obvious arrangement that springs to mind would be to alternate bitmap bytes with CGA-like attributes (foreground+background+blink), so 80 bytes define 40 columns. It would mean all the Teletext rendering would have to be done in software by the 6502, of course. Commented Jul 29, 2024 at 22:01
  • 1
    And it would only have worked on the model B not the model A due to ram requirements. Commented Jul 29, 2024 at 22:56
  • 3
    I also wonder if time pressure was an issue. The BBC needed teletext and, even if it was expensive, putting a teletext chip in there was possibly easier than trying to come up with some alternative implementation to deliver the same functionality. Commented Jul 30, 2024 at 1:29
  • 9
    Another factor is the higher resolution the SAA5050 used to display text — instead of the 8×8 characters in other modes, teletext characters were displayed with 12×20 pixels, making them significantly smoother and easier to read than the other 40-column modes.  So for text-only programs, MODE 7 was prized for its superior look and readability, as well as for using a mere 1KB of screen memory (compared to 8–20KB for the other modes).  No bitmapped mode could compete with those. Commented Jul 30, 2024 at 18:14
  • 1
    @gidds, yes, very much. Teletext mode 7 (a) looked much better and more pleasant to read than text in bitmapped modes, (b) took up only 1000 bytes of the 32 KB or 16 KB in your model A or B and (c) was consequently much quicker for the 6502 to process over bitmapped text in much larger screen buffers, causing very fast screen activity. An outstanding feature of the BBC Micro/Master over other similar-price similar-stature microcomputers around in those days. Commented Sep 27 at 9:26

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.