If you are searching for an interactive teletext TV emulation, try my online teletext viewer.
This is a quick start guide to using microcomputer emulators which implement a teletext decoder peripheral, and support a live teletext packet source.
Setting up a teletext packet server using VBIT2
The following instructions will get a VBIT2 hosting a teletext packet server on port 19761, outputting the community run Teefax service.
The packet server is primarily intended for use on localhost or a local network. Serving packets over the internet is not recommended.
Installing on Raspberry Pi OS
Follow the standard VBIT2 install instructions on the VBIT2 github wiki, then:
- Install a service, e.g. Teefax, using
vbit-config
. - Enable the packet server from the Options menu.
- Select Start VBIT2
~/.teletext-services/config.json
file. See the VBIT2 wiki for details.
Other services and automated updates can be configured using the vbit-config
tool.
Installing on Microsoft Windows
- Download the latest VBIT2 binary from github
- Download and install a command-line subversion client if you don't already have one (I use TortoiseSVN).
Use it to check out the Teefax teletext service in your VBIT2 directory using:
svn checkout http://teastop.plus.com/svn/teletext/ teefax
- Run the following command in the same directory:
vbit2.exe --dir ./teefax --format none --packetserver 19761
Windows will ask for permission to open the firewall.
Installing on Linux
- Download the latest VBIT2 source bundle from github (or clone with git), and compile it using
make
- Install a command-line subversion client if you don't already have one.
Use it to check out the Teefax teletext service in your VBIT2 directory using:
svn checkout http://teastop.plus.com/svn/teletext/ teefax
- Run the following command in the same directory:
./vbit2 --dir ./teefax --format none --packetserver 19761
[Configure::Configure] Started
[Configure::Configure] Pages directory is ./teefax
...
[Service::run] Lines per field: 16
[PacketServer::run] TCP packet server thread started
To check for updates to Teefax run svn up
in the teefax directory. This can be automated with a scheduled task on Windows, or a cron job or systemd timer on Linux.
Other services
In addition to Teefax, there is a recreated Ceefax service run by Nathan Dane. This is also distributed using subversion and can be downloaded a similar way:
svn checkout https://feeds.nmsni.co.uk/svn/ceefax/national ceefax
followed by
svn checkout https://feeds.nmsni.co.uk/svn/ceefax/REGION ceefax/regional
where REGION
is one of the available ceefax regions.
Other services use git for distribution (Windows client).
- Chunkytext:
git clone https://zxnet.co.uk/git/cf.git chunkytext
- Spark from TVARK:
git clone https://github.com/spark-teletext/spark-teletext.git spark
Substitute the directory name in the --dir
argument of VBIT2, and change the port number of --packetserver
if you want to run multiple services at once. By default emulators use ports 19761-19764 for their four channel presets.
Standalone server
A simple standalone packet server written in python is also available from github, which can be fed t42 data from a pipe, or from a file specified with the -i
argument.
An example of a restored 1985 Ceefax recording is available, and can be served by invoking the packet server with the arguments -p 19761 -l 4 -i BBC1-1985-12-28-goodenough.t42
Using BeebEm
The Stardot fork of BeebEm for Windows emulates the Acorn ANE01 Teletext Adapter.
- Download and install the latest build of BeebEm from github
- Start BeebEm and go to Hardware->Edit ROM Configuration
Select BBC B and the13 (D)
row. (By default this is empty).
Click Select ROM and choose the ATS-3.0-1.rom file from the BBC directory and OK the dialogs. - Select Hardware->Teletext Data->IP:Localhost:19761-19764 and enable Hardware->Teletext Adapter On/Off
- Reset the emulator (File->Reset). A connection message should appear in the packet-server console.
- Enter the command
*TELETEXT
on the emulated BBC. The Advanced Teletext System terminal should start up on and acquire the index page.
I recommend using the ATS ROM for modern services. The earlier Acorn TFS ROM is very confusing to use and lacks Fastext.
If Hardware->Teletext Data->IP:Custom destination is selected, BeebEm will use the IP address and port numbers specified in preferences.cfg. This enables connections over the network, on alternative ports, and ‘tuning’ the same packet source on more than one ‘channel’ preset.
Hardware->Teletext Data->Capture files reads from four static files as in previous versions of BeebEm.
Using Fuse
Fuse – the Free Unix Spectrum Emulator, emulates the TTX2000 S adaptor.
- Download and install version 1.6.0 or higher of Fuse.
- Download a firmware ROM image and place in Fuse's roms directory, renaming the file to ttx2000s.rom.
- Start Fuse and enable TTX2000 S emulation from the Options->Peripherals->General menu. Alternatively the adaptor can be enabled by using the command line argument
--ttx2000s
. - The Spectrum should boot into the adaptor's ROM and will attempt to connect to a packet server on port 19761 on localhost.
- Pressing enter will switch into page acquisition mode.
Note: The TTX2000 S firmware only supports 12 lines per field or fewer by default. If the teletext service and packet server are configured to use more than 12 lines (as in the TEEFAX example above), you must exit to BASIC using the e
key and enter the following workaround:
POKE 23394,33
RANDOMIZE USR 23500
The POKE keyword is obtained by pressing the o
key. RANDOMIZE is entered using the t
key. USR is obtained by pressing shift
and ctrl
simultaneously to enter extend mode (E cursor) followed by pressing the l
key. For more details on what this poke does see my TTX2000 S page.
By default Fuse maps the four channel presets of the adaptor to ports 19761-19764 on localhost, but alternative ports, and ip addresses or hostnames can be specified on the command line or in Fuse's configuration file. For example:
fuse --ttx2000s --teletext-addr-2 192.168.1.100 --teletext-port-2 19761
Would ‘tune’ channel 2 to a packet server listening on port 19761 of the computer with that ip.
The TTX2000 S telesoftware option automatically changes channel to preset 4, so if you wish to experiment with telesoftware you may wish to set the port 4 argument to mirror port 1 if you only use a single service. Chunkytext currently includes examples of telesoftware downloads for the TTX2000 S.