Reprogrammable speech system upgrade for the BBC Model B and Model B+
On this page
Texas Instruments created the TMS5220 voice synthesis processor as a means to add realistic speech output to home computers such as the BBC Micro, pinball machines, and children's toys. It acts as a model of the human vocal tract which allows the speech data to be parameterised and hence compressed considerably compared with just storing raw audio samples.
The speech processor can accept data either from a host microprocessor, or from a mask programmed serial ROM - the TMS6100 voice synthesis memory. However, the high cost and minimum order quantities associated with the setup of a mask means that comparatively few TMS6100s were created, and being mask programmed are fixed in operation.
The TMS6100 emulator solves both of these shortfalls by emulating the operation of the original device through the use of a modern 8 bit microcontroller with on board flash memory. When coupled with an original TMS5220 your system can speak once again.
A typical upgrade kit consists of an original TMS5220 speech processor and TMS6100 emulator, which is a small carrier circuit board the same size as a normal 28 pin chip, along with instructions for fitting into a BBC Model B or Model B+. Except for some early Model B (pre issue 4) motherboards, no soldering is required to install the upgrade.
The upgrade kit fitted in a Model B
By default the chip is preprogrammed with the words and word-parts spoken by 1970's newsreader Kenneth Kendall. In its simplest form entering the following into BBC BASIC:
REPEAT : SOUND -1, GET, 0, 0 : UNTIL 0
then pressing keys on the keyboard will speak the corresponding words.
All 4 operating modes supported by the original are emulated, so from the speech processor's point of view it believes it is connected to a normal TMS6100 chip:
The device can support alternate chip select configurations, in principle allowing for up to 16 devices in parallel to give over 30 minutes worth of continuous speech output.
- Read and branch
- Load address
Unlike the original however, the emulator data can be reprogrammed in circuit so that alternate accents or regional variations can be switched in, without even needing to remove the device from the motherboard. The utility WritePHROM is used to do the reprogramming.
The User guide for the Acorn speech upgrade gives full details of how the parameters for the model of the vocal tract are formed, allowing the possibility of sampling and encoding other voices or alternative dictionaries of words into a custom PHrase ROM (also referred to as a PHROM) which are stored for immediate access.
It is possible to store almost any speech audio file or even audio recorded on your computer's microphone: ideal for setting up an automated telephone menu system! For example, some familiar sound bites are encoded in this example PHROM image to provide light hearted relief.
One less frequently used feature of the BBC Micro is the ability to load ROM filing system data quickly via the speech system, in theory up to 16kbyte of serial memory is available. Since this is non volatile memory the contents are kept when the computer is turned off, eliminating the need to change floppy discs for handy utility programs.
The utility RFSHead can be used to collect your programs into a PHROM format, the example RFS image was created this way and contains a copy of BBCISS7 which can then be run by first selecting the ROM filing system (with *ROM) then CHAINing it as normal.
Other home computers
A number of other similar era devices included a TMS5220/TMS6100 chip set, for example the TI99/4a and a number of Atari pinball machines all used them.
For specialist applications it is possible at the time of supply to set the internal chip select number, also called the BANK number, allowing the PHROM to be uniquely identified. The default is 15 for use with a BBC Micro.
The following six document downloads are available relating to the speech system:
For users wishing to experiment further:
- ReadPHROM allows the data in the speech memory to be extracted. Details of how to use the utility are in its accompanying manual.
- WritePHROM allows the data in the emulator to be rewritten. On a mask programmed speech memory this has no effect as the 'command' sequence used to reprogram the emulator is just a sequence of address load commands. Details of how to use the utility are in its accompanying manual.
- Page 13/14 of the user guide includes a program to say 'ZERO' by feeding raw speech data to the TMS5220.
- Alternative PHROM image contains a set of words spoken in a US accent (as shipped with the BBC Micro in the United States) which can be loaded into the emulator with WritePHROM. It contains a more technical dictionary of words suitable for automation or machine control use.
- Make a speaking clock by joining words spoken by a lady in a US accent. As this PHROM only uses 4k, the speaking clock software could in principle be encoded as in ROMFS format in the remaining 12k free.
Orders can be placed online, or alternatively sent by post.
The speech system upgrade kits are available now, and are offered in various different options depending on the application:
|Kenneth Kendall speech system
||TMS5220 speech processor|
TMS6100 preprogrammed with PHROMA image (Kenneth Kendall)
supplied with instruction leaflet
|Custom emulator image or bank number
||custom image for your application|
only applies at time of supply
please allow an extra 5 days for delivery
©2016 SPROW [Updated 22-Jan-2016] | home