The
following is abridged from “IEE Conference Publication 166, pp 273-276,
September 1978” and reproduced by kind permission of the Institution of
Electrical Engineers, UK
Copyright
IEE
TELESOFTWARE: USING TELETEXT TO SUPPORT A HOME
COMPUTER
J Hedger
ITCA ORACLE
Project at London Weekend Television
SYNOPSIS
Telesoftware
represents perhaps the most practical solution yet to a realistic home computer
system by using teletext to broadcast software right into the heatr of
specially-adapted decoder terminals.
A teletext
decoder already contains many of the basic elements of a simple computer:
memory, visual display, etc. By careful marriage with an appropriate
microprocessor, the result is a small but powerful computer system.
Telesoftware, by deriving its software entirely from a repertoire of programs
transmitted integrally via teletext, eliminates the need for cumbersome storage
peripherals or an expensive hardware link to a distant mainframe, while still
offering the user true interactive capabilities. Operation is a simple as
selecting the appropriate teletext page, and by its nature, the system will
support an infinite number of concurrent users.
The
implementation of Telesoftware will have far-reaching benefits not only for the
domestic user, but also in the worlds of education, science and business, and
may even be applied to helping the handicapped and disabled.
A study
project, initiated by the Independent Television Companies Association, has
already led to the design and construction of an experimental terminal for
demonstration purposes, currently undergoing on-air evaluation using software
transmitted via the ORACLE system. The author reviews the progress of this
project to date, and examines some of the important and varied applications for
this new broadcasting technology.
INTRODUCTION
The word
“Telesoftware” was coined by W J G Overington (1), (2) who first proposed the
idea; it literally means “software at a distance” and it refers to the
transmission of programs for a microprocessor via broadcast teletext. Software
bytes are presented to a terminal as pairs of standard teletext characters,
thus utilizing an existing and well-proven broadcasting system.
The
standard teletext decoder is, in fact, well-suited for adaptation to a small
computer. Its character-generator and associated display circuitry can be pressed
into service as a visual-display-unit (VDU). It has a page-store which may be
used as memory. Even its numeric keypad, normally used to select teletext
pages, can be used to enter simple data. With the addition of a suitable
microprocessor and some extra memory, the result is quite a powerful
stand-alone computer system right inside the television set!
There is,
at this stage, no mass-store; but since all the software for such a system is stored
on the teletext database, the user needs only to select the required page
containing his desired program. Once this has been read-in, it can be loaded
into the microprocessor and executed, obviating the need for data lines or
expensive input devices.
The limit
of separate programs which may be carried by a teletext system at any one time
is, of course, subject to the same parameters as are the limits for normal page
data; namely, that an increase in the number of pages also increases the
maximum access–time to a single page. Programs themselves, however, need not be
confined to a single page, and may consist of data carried on a number of
separate but sequentially-linked pages in the system, and even with a total
capacity limitation, there is a wide variety of uses to which such a system can
be put. Some of these are discussed later on.
EARLY
DEVELOPMENT
The
Independent Television Companies’ Association’s ORACLE teletext systems has
been broadcasting a service of news and information since around mid-1975.
After about
a year of operation, ITCA were
approached by W J G Overington with a proposal for a Telesoftware system
system, he himself having invented the concept. At ITCA it was felt that the
idea had some exciting possibilities as an extension to ORACLE, and so, in
conjunction with Overington, a provisional specification for Telesoftware was
prepared, and the first Telesoftware transmission, based on the use of a
Signetics 2650 microprocessor, was made during late February 1977. The program was
a simple one, designed to show loading and changing of various character on the
television screen.
THE
ORIGINAL SPECIFICATION
The
specification drawn up was somewhat open-ended; deliberately so, since at this
stage it was desired simply to show that a Telesoftware system was indeed
viable. By setting no hard and fast rules, it was hoped that if the system were
eventually adopted by decoder manufacturers, any changes felt to be necessary
could easily be incorporated.
The system
was designed to utilize a standard Teletext decoder in conjunction with a
Signetics 2650 microprocessor, plus extra memory and interfacing.
The MAIN
MEMORY used the RAM (Random Access Memory) page-store already to be found in
the decoder. This was arranged as two 512 x 7 bit memory blocks, and would
allow a program to be entered as 23 rows of 32 columns of Teletext characters.
A SECONDARY
MEMORY was also specified; this being 8k bytes of RAM storage.
There was
also a TERTIARY MEMORY. This was originally intended to act as a partial or
complete replacement for the standard teletext character ROM (Read-only
Memory), so as to allow ANY character-set to be defined and transmitted to a
terminal.
There was
also provision for 8 toggle-switches to be used as a user-controlled register.
An optional
control-program, held on PROM (Programmable Read-Only memory) was incouded,
although for cheapness, this could be substituted by a software-based control
program.
PROGRESS
The first broadcast
of Telesoftware was fairly well reported in the technical press, and in March
1977 a further program was included on page 766 of ORACLE where it remained for
some months.
Clearly,
enthusiasm was by now growing for the project from all areas, but it was still
embarrassed by the lack of a terminal on which to demonstrate the viability of
the system.
As a means
of solving this situation, towards the end of 1977, ITCA initiated a project
for the design and construction of a simple experimental Telesoftware terminal,
using ORACLE to transmit the experimental software. It was decided to use a
simplified and somewhat modified version of the original specification, and
work began in late 1977.
The aim of
the project was to produce quickly a simple device capable of demonstrating the
basic concept of Telesoftware. As such, the resultant design was far from
optimum, It was felt that by showing in a very limited way what was POSSIBLE
with telesoftware, that this would stimulate the interest of decoder manufacturers
and other broadcasters, who in the future, perhaps, would continue the
development to a stage where the specification for an “ideal” system could be
incorporated as an important extension to Teletext. Figure 1 shows how such an
“ideal” terminal might look.
COMPATIBILITY
WITH THE TELETEXT SPECIFICATION
It was very
soon realized that Telesoftware could in no way interfere with the
now-established specification for teletext – indeed, it had to be structured in
such a way as to remain compatible with any modifications which might be made
to the specification in the future. For this reason, it was decided to base
experimental work upon the use of entirely standard teletext transmission
techniques, using normal characters and pages. The system was thus configured
to use pairs of characters to represent bytes of program, with two characters
per single byte, the redundancy being used for protection of the data using the
Hamming error-correction technique.
It would,
in the future, be possible to use some of the extra 8 rows per teletext page,
which are specified as being available although not capable of being displayed
by a normal decoder, for the transmission of telesoftware data, thus separating
it from the normal editorial output.
Alternatively,
if normal pages were to be used, it might be desirable to set a control bit in
Row 00, the header row, so as to inhibit (bit C10) the display of what to a
normal decoder would seem gibberish text!
THE EXPERIMENTAL TERMINAL
The design
consisted of a single add-on board for a teletext decoder, comprising a total
of some 45 integrated circuits. This was made up of secondary memory, a
temporary store, and a special control program, held on erasable PROM, plus of
course the Signetics 2650 microprocessor. The design did not include a tertiary
memory since, by this time, a foreign language character-set facility was
already available within the confines of teletext.
With
large-scale integration, of course, a final design could be reduced to perhaps
two or three integrated circuits but at this early stage, discrete components
were employed as a matter of practicality.
The
teletext keypad, which would normally be used to select pages from the teletext
broadcasts, was used for system control and user data-entry.
The MAIN
MEMORY was the teletext page-stored, addressed by two bytes of indirect address
– the first pointing to a row and the second to a column address. This memory
was in the addressing range Hexadecimal 2000 to 3727.
The TEMPORARY
STORE, which was used as a buffer between main and secondary memory while data
was validated, was 256 bytes of RAM in the addressing range H 1F00 to H 1FFF.
The
SECONDARY MEMORY was 2k bytes of RAM in the range H 4000 to H 47FF.
The CONTROL
PROGRAM was held on ultra-violet erasable PROM. Its functions were as follows:
1
To
accept and interpret commands
2
To
validate incoming data, using the Hamming protection system
3
To
transfer valid data to secondary memory
4
To
re-read data incorrectly received
5
To go
to the start of the program when correctly loaded
The
decision to opt for a single microprocessor and associated instruction set was
basically for convenience in this particular experiment. It may be that when,
in future, a final Telesoftware system is specified, it will be desirable to
transmit programs in an intermediate language rather than in terms of a
specific instruction set. This would allow various different microprocessors to
be employed, and enable the system to support simplified versions of BASIC or
other high-level languages. The disadvantage of this idea is that it would
require considerably more memory in the terminal, and could also increase the
coding requirements on the transmission side.
It would,
in any event, be unwise to specify one microprocessor device, since this would
not allow the system to take advantage of the many developments in
microprocessor technology which continue to take place.
EXPERIMENTAL
PROGRAMS
Two simple
text programs were developed in order to demonstrate and test the basic working
of the system.
The first
was a simple Video Game; a teletext representation of the well-known
“MASTERMIND” game. In this case, the pattern which the player was invited to
guess was randomly generated by the microprocessor, and the keypad used to
enter the user’s guesses. The program used approximately 1k bytes of storage.
The second
program was of the calculation variety, intended as an aid to mortgage
computations, involving the calculation of monthly repayments from other given
variables.
These
programs are now being transmitted via the ORACLE system, together with others,
while the experimental terminal is evaluated.
OTHER
APPLICATIONS
While
technical work continues, other research is taking place at ITCA into other applications
for the system. Some of these are now described.
VIDEO
GAMES
The
Mastermind game program shows a possible usage in this area. The advantage of
Telesoftware games is that the user may select from ANY game being broadcast at
the time, all of which can be played using the SAME hardware, rather than being
limited to specific games built into conventional television games units, or at
best, in the case of a programmable games unit, being able to purchase extra
cartridges (ROM-based) with alternative games on them. The Telesoftware
approach requires no extra cost after the basic hardware has been obtained.
Depending
upon the complexity of the terminal, it would be possible to incorporate
animated games. In the basic terminal, the user interacts with the system via
the teletext keypad, possibly with the keys having cursor-control functions.
With a more sophisticated system, however, there would be provision for one or
more analogue input channels, to accommodate potentiometer or Joystick
controls. These would allow a much wider variety of games to be transmitted.
MATHEMATICAL
ROUTINES
The system
can be used for many different “calculator” functions, as well as for solving
problems requiring more specialized functions, for example, tax calculations,
electricity and gas consumption, metric conversions, etc. It would also be
possible to add a cassette storage system in order to maintain a local
database, and to make use of a low-cost printer or the kind now available for
teletext output.
PUBLIC
INFORMATION
Telesoftware
may be used to provide interactive public information of the kind often
required in dealing with Social Security claims, Health Education, etc. For
example, the user may with to know if he or she is entitled to claim a certain
benefit. By interaction with the appropriate program which would ask a number
of structured questions, an assessment may be made by the terminal, which would
be output on the television screen. The system, which would employ
question-sequences of the “multiple choice” type, could also be used for the
assessment of tax-allowances. If a program is too complex to be held in memory
as a single block, then the system may be instructed to read-in a new page of
program, for example, when the current program reaches the end of a particular
branching sequence. This allows a program to be of virtually unlimited size,
although in practice, the limits of the teletext system in use will dictate the
number of pages available.
Telesoftware
offers a proven social advantage over a human “advisor” in many cases, since it
seems that people are far more truthful and uninhibited when being “questioned”
by a machine. Also, unlike a wired-system, there is no security risk to the
user’s responses, since the Telesoftware terminal clearly has no means of
storing such data or communicating it to anyone else!
EDUCATION
A very
large and important area of Telesoftware application is in the field of
automated education techniques. Quite a number of proven systems already exist
for Computer Managed Learning, but all of these rely upon quite sophisticated
and consequently expensive computer systems and terminals. Such systems are
generally owned by a Local Education Authority and used by individual schools
on a time-sharing basis, so loading problems can occur at times of peak usage.
With
Telesoftware, the techniques can be made available cheaply and easily to any
number of concurrent users.
The system
is perhaps most suited to the multiple-choice type question and answer technique.
It can, in addition, provide complex and possibly animated graphics to
illustrate a subject, and can even control a slide projector if the need
arises!
Probably
the most appealing feature of the system is that fact the programs can be made
available at no cost to the user – perhaps once reason why a number of
educational establishments, including the University of Surrey, who possess a
very large Computer Assisted Learning resource, have already expressed a keen
interest in the educational possibilities offered by Telesoftware.
ADULT
LITERACY AND VOCAL OUTPUT
Telesoftware
could conceivably be used to provide a graded course of literacy for adults,
with programs automatically grading the individual and continuously assessing
progress. It may be possible, in the future, to add a simple vocal output to
the terminal (by the use of synthesized speech) to back up written data in this
respect, although the very considerable amounts of local memory require dto
achieve this are not yet available at realistic cost.
ASSISTING
THE BLIND AND THE DISABLED
It is
possible for a terminal to assume control of various domestic peripherals; a
handicapped person could, for example, use the system to set up telephone
calls, summon assistance, control lights, etc. all by using facilities offered
by the microprocessor.
It could
even render teletext capable of being read by a blind person, by outputting
Braille characters from standard ASCII, via a tactile output device.
FINANCIAL
IMPLICATIONS AND THE FUTURE
It is
expected that, with mass-production of teletext decoders, the extra cost of
incorporating a basic Telesoftware system would be around £50 per unit. Since
this is the only charge which one could possible expect a user to pay, the
system has clear advantages in terms of cost-effectiveness over a wired system,
where line and other charges would apply. However, the areas of usage for
telesoftware are far more clearly defined than with a wired system; since its
advantage is in its local processing capacity rather than database interaction.
It can never, for example, forward a message to another user! For this reason,
telesoftware may well prove to be an asset to systems such as VIEWDATA, by
providing them with a local processing facility instead of them having to make
continuous use of expensive two-way communications with a central computer.
Telesoftware
clearly has a number of applications in the business world, such as
cataloguing, credit control, insurance quotations, etc. to mention but a few of
the ideas yet proposed, but perhaps its major impact will be in the home, where
it will allow the television set to provide many interesting and useful
facilities, all at low cost.
REFERENCES
1
Overington,
W J G, “Telesoftware”, Computing, 12th. May 1977, Vol.5. No. 19, p18
2
Vivian,
R H and Overington, W J G, “Telesoftware makes broadcast teletext interactive”,
This publication
ACKNOWLEDGMENTS
The author
would like to thank P James, R Eason and M Figuerola of Mullard Applications Laboratory,
and N W Green of ITCA for their assistance with this work, and to thank the
ORACLE Board for permission to publish it.
<RETURN TO
TELESOFTWARE INDEX> <SURELINK HOME PAGE>