The TELSTAR Viewdata System
TELSTAR is both a a videotex service and a videotex application. Details of the videotex application can be found at https://github.com/johnnewcombe/telstar-2/wiki
Note: If you are familiar with Telstar and want to find out how you can host your own frames on the system, see https://glasstty.com/?p=1728
The TELSTAR videotex system (https://en.wikipedia.org/wiki/Videotex), provides a viewdata/videotext platform similar to those that were prevalent during the 1980s such as Prestel (https://en.wikipedia.org/wiki/Prestel).
The aim of the system is to provide a Viewdata experience for anyone who is interested in how things ‘used to be’. Services in the past typically provided access via the public switched telephone network (PSTN) connection and this is indeed how Telstar works, however, Telstar also makes use of a simple internet connection for modern internet modems.
The service can be accessed using a traditional V23 modem or an internet modem in conjunction with a home computer. In the case of the BBC Microcomputer, Acorn’s Prestel adapter can be used. In addition access can be gained from from a PC or Mobile device using Richard T Russell’s BBC Basic for SDL 2.0 or Matrix Brandy BASIC V for Linux. Access can even be gained from the web thanks to the efforts of Simon Laszcz (see below).
Connecting and Using the Service
Telstar Viewdata Client
To experience Telstar properly it needs to be accessed by an early microcomputer from the videotex era. However for a simple way to get started, the Telstar Viewdata Client can be used. Although an early release, the software is available for Mac, Linux and Windows and has no dependancies nor installation requirements (see below).
The Telstar Viewdata client is available for Mac, Linux and Windows and has no dependencies nor installation requirements. It allows access to viewdata systems through either a direct TCP/IP connection or via a Modem connected to a local serial port. Full details and download links are available here Telstar Viewdata Client.
Vintage Hardware
The service can be accessed using a vintage computer such as the BBC Microcomputer, Apple II (II+///e etc), Spectrum, Torch or Archimedes etc., in addition a Prestel or viewdata terminal can be used. Telstar even supports Minitel terminals. The following videos demonstrate some of the methods of connection and the details are shown below.
PSTN Calling Direct
Dial in service using a 1200/75 full duplex V23 modem:
Baud Rate: 1200/75 full duplex
Word Length: 7
Parity: Even
Stop Bits: 1
The telephone number for direct access is:
01756 664433
If you have difficulty in connecting to Telstar using this number, try connectinge via the PAD (packet assembler/disassembler) as detailed below using the telephone number 01756 664434.
Telstar is also available using Phreaknet, the numbers are:
835-0433
835-0434
PSTN via Packet Assembler Disassembler (PS/PAD)
Dial up access to Telstar can also be made via the Network PS/PAD on the following number using the same settings as above:
01756 664434
At the PAD prompt use the CALL command as follows:
PAD> CALL TELSTAR
The HOSTS command will show the internal PAD directory e.g.
PAD> HOSTS
Name: TELSTAR
Name: NXTEL
Name: CCL4
Name: CAVE
Name: PARTICLES
PAD>
Via the Internet using a Network Modem
Telstar can be accessed via TCP/IP using a network modem (see below), the device should be set as follows.
There are three instances of the TELSTAR service, these are named ‘CURRER’, ELLIS’ and ‘ACTON’ respectively, see the article Telstar: What’s in a Name. Apart from the connection settings (shown below) , the first two are identical aand are available at the following Urls.
Url: glasstty.com
Port: 6502
Baud Rate: 1200/1200 full duplex
Word Length: 8
Parity: None
Stop Bits: 1
Url: glasstty.com
Port: 6503
Baud Rate: 1200/1200 full duplex
Word Length: 8
Parity: None
Stop Bits: 1
The service on port 6504 is specifically set up to use 7 data bits with even parity when used over TCP. It is designed to cater for early terminal systems and software that cannot support 8 data bits with no parity.
Url: glasstty.com
Port: 6504
Baud Rate: 1200/1200 full duplex
Word Length: 7
Parity: Even
Stop Bits: 1
Please Note that these endpoints are not Telnet Servers nor Web Servers, they are simply TCP listeners that support the videotex application protocol see Telstar is not Telnet, below.
For additional information and troubleshooting, see Telstar – Troubleshooting.
Via MiniPavi (Minitel Point d’Accès Videotex)
It is also possible to access Telstar with a Minitel terminal, via MiniPavi, using the access code “TELSTAR”. Full details of MiniPavi can be found at https://www.minipavi.fr/.
Fo further details on using Minitel terminals see https://glasstty.com/using-minitel-terminals-with-telstar/.
Hardware and Software
A vintage home computer requires suitable videotext software. Software designed for use with Prestel will usually work with Telstar, packages are available for the BBC Micro such as Commstar or Acorn’s Prestel ROM software. The Apple II/II+ is supported with Antelope, and Gazelle can be used with the later Apple II machines and the package DataTalk can be used on DR DOS/MS DOS machines. Other software packages produced in the 1980-90s exist for other systems.
Network modems generally require that the software supports the same baud rate for send and receive which may limit the choice in some cases (see below).
V23 Modems
Most V23 (1200/75 baud) modems or dedicated videotex terminals will work with Telstar’s dial in service on 01756 664433, in the case of the BBC Microcomputer, this includes the Acorn Prestel adapter. The system has been tested with the following devices:
- Acorn Prestel Adapter\
- Miracle W2000 Modem
- Pace Nightingale Modem
- Prism Modem 1000
The Prism VTX 5000 system for the Sinclair Spectrum works well, however, Manual Log ON should be selected and 10 asterisks should be entered when the New ID No is requested (See Micronet documentation for details).
Viewdata Terminals
- Tandata TD1616
Network Modems
Suitable modems include the Wifi based solution from Daniel Jameson, see the article (http://www.amibay.com/showthread.php?99878-WiFi-retro-Modem-for-under-a-tenner). Alternatively consider a WiModem232 (https://www.cbmstuff.com/proddetail.php?prod=WiModem232OLED). For a better experience using one of these modems, please see the article Using an Internet Modem For Telstar and the section Telstar is not Telnet below.
TcpSer
TcpSer is a utility that can be used to make a computer behave as if it were a modem. For example, by installing TcpSer on a Raspberry Pi and connecting a USB serial port adapter to the Pi, the Raspberry Pi can easily be made to behave like a Hayes compatible network modem. Another machine running terminal software can then be connected to the Pi’s serial port using a null modem cable.
RiscOS 5 and Raspbery Pi
Telstar can be accessed using RiscOS on modern hardware, such as a Raspberry Pi, using software written by David Pilling called Hearsay II (https://www.davidpilling.com/hearsay.html), see screenshot below right. This package has been updated to include direct TCP connections. This allows the software to be connected directly to Telstar by simply entering glasstty.com, 6503 when prompted. Naturally this will require a DNS server to have been configured within RiscOS. Alternatively the IP address of glasstty.com can be used.
Windows, Linux, Mac OS-X, IOS, Android and Raspberry Pi
To experience Telstar properly it needs to be accessed by an early microcomputer from the videotex era. However, there are several methods of accessing the service using modern devices.
In addition to the Telstar Viewdata Client, Richard T Russell has written BBC BASIC for SDL 2.0 (https://www.bbcbasic.co.uk/bbcsdl/) which is available for desktop (Windows, Linux, Mac OS-X, Raspberry Pi) and mobile devices (Android/IOS). This product includes a Telstar client within the General section of the included examples.
Matrix Brandy is a fork of Brandy Basic, a BBC Basic V interpreter written by David Daniels and distributed under the GNU General Public Licence Version 2. It was Developed on a CentOS 6 32-bit machine, tested on both CentOS 6 64-bit and a Raspberry Pi. Matrix Brandy BASIC V for Linux with SDL can be found here (http://brandy.matrixnetwork.co.uk/), it includes a ‘Telstar’ client compiled as a Windows executable http://brandy.matrixnetwork.co.uk/testing/telstar.zip.
Web Browser
Simon Laszcz has kindly provided a web interface to Telstar and other videotex systems here https://vd-view.azurewebsites.net/.
Telstar is not Telnet
Whilst TELSTAR is accessed using TCP/IP it is not a Telnet Server. However, TELSTAR does include a Telnet parser which will respond to a very small subset of Telnet negotiation requests.
When a client first connects, TELSTAR attempts a simple negotiation with the client to establish two protocol settings;
- to ask the client to not use line mode;
- to indicate that the server will echo any characters received,
Non-Telnet clients can safely ignore this negotiation request completely.
Baud Rate
TELSTAR is designed to operate at 1200 baud when accessed by non-Telnet clients (see below), this speed is set at the server.
Why is Telstar Throttled to 1200 Baud?
This is probably the most common question asked in relation to Telstar. There are two main reasons why throttling exists.
- Prestel was 1200 Baud – This is not strictly accurate of course, it was the modems most commonly used with Prestel that received at 1200 baud, Prestel had a 300 baud service and other speeds were sometimes used for editors and administrators etc.
One of the aims of Telstar was to recreate the feel of an online system such as Prestel the near instant access but slow rendering of pages sets it apart from Teletext page displays of systems such as Ceefax and Oracle.
- Menu Navigation – The way in which menus were navigated on a Prestel type system was primarily through single key presses, e.g. ‘2’ for the News Menu followed by ‘1’ for BBC News etc. A user pressing ‘2’ for the News Menu could immediately follow this by pressing 1 for BBC News and this would cancel the rendering of the News Menu and invoke rendering of the BBC News page. This may seem trivial today but this syetem worked really well and I particularly wanted Telstar to behave in this way to give users the full experience. This is only really possible with Telstar running at a throttled speed.
I want to go Faster!
Whilst TELSTAR is accessed using TCP/IP it is not a Telnet Server. However, TELSTAR does include a Telnet parser which will respond to a very small subset of Telnet negotiation requests. see Telstar is not Telnet above.
If Telstar identifies the client as a Telnet client, the system will run at full speed. Non-Telnet clients can safely ignore this negotiation request completely. If you are writing a client and you want full speed access, simply send something like FF FD 03 after connecting. This is the IAC DO SUPPRESS-GO-AHEAD sequence.
For example Richard Russell’s BBC Basic client uses the following code just after successfully connecting.
REM Start the telnet negotiation:
init$ = CHR$255 + CHR$253 + CHR$3 : REM IAC DO SUPPRESS-GO-AHEAD
PROCout(init$)
Similarly if you want to use Richard’s client at the 1970/80s speed then simply remove that sequence e.g.
REM Start the telnet negotiation:
REM init$ = CHR$255 + CHR$253 + CHR$3 : REM IAC DO SUPPRESS-GO-AHEAD
REM PROCout(init$)
Navigation
Routing is loosely based on the Prestel system, where navigation can take place by following the menu system, additionally, direct access to a page can be gained by using the special combination shown below.
*<page number>#
e.g. *890#
Some special combinations allow for pages to be redisplayed of for navigation to a previous page as follows;
*00 Re-display current frame.
*09 Re-diaplay current frame (included for compatibility).
*# Navigate to the previous page.
Routing by default follows the pure approach, e.g. if the user is viewing page 2 and selects a 1, page 21 will be shown. This is not always appropriate therefore, a Routing Table can be associated to each frame. In cases where the pure routing method is inappropriate e.g. in the above example where pressing 1 should route to page 800 the Routing Table will define this. This means that when following the menu selections pages, data from different information providers can be displayed. This mimics the original Prestel Cross Referencing service and allows full interlinking of content.
Prestel used to have a three frame history allowing the special sequence *# to move back up to three frames. Telstar has a 100 page history accessed in the same manner. All other special sequences used by Prestel are supported.
Telesoftware
Telesoftware is the term given to software that can be downloaded from a videotex system such as Telstar. Software is encoded into frames, by using a Telesoftware compatible videotex client the software can be downloaded and stored to the local machine. Telstar hosts Telesoftware on page 8002.
The provided TEST program is a tokenised BBC BASIC program aimed at providing a simple mechanism for users to test their respective client systems.
More software will be published as it becomes available.
The protocol used is detailed here…
Copyrights and Trade Marks
It is the aim of TELSTAR to respect all copyrights and trade marks. Please let me know if you are affected by any software and content that is published on the system or this site.
Meta-Data
Telstar sends meta-data in a short text response just prior to the first frame being sent and allows clients to automatically update system clocks etc. The meta-data (UTC Date and time only at the moment) sits between the first character 0x0C and a subsequent 0x0C. The char 0x0C is a clear screen character which means that normal users of the system will not see this data, however, clients will.
The first data received from Telstar will look something like the following:
\x0c20180720T1005Z\x0c ...
The date and time in UTC is shown as follows 20180720T1007Z, meaning 10:05, 20 July 2018 UTC.
PLEASE NOTE, this is only appears on the initial page (page 99), however this page can be re-displayed at anytime by accessing page *99#.
Screen Roll Over
Videotex clients do not normally scroll. When the cursor is positioned below the bottom row it appears on the top row, similarly a cursor that is moved up from the top row will appear on the bottom row. The same is true for left and right cursor movements. In line with historic videotex services, Telstar uses this behaviour to calculate the shortest path when positioning the cursor. For example if a status message is to be displayed on the bottom row, and the cursor is currently on the top row, Telstar will move the cursor up as this is the shortest route to the bottom row. For developers creating videotex clients, this will need to be taken into account.
Technical Information
Below is a simple summary of the techinical aspects of the TELSTAR system. Full technical details can be found at the TELSTAR WIKI and associated repositories at https://github.com/johnnewcombe/telstar-2/wiki
Application and Data Servers
TELSTAR consists of three separate services running on Digital Ocean’s cloud based Linux servers. Each server runs in a Docker container which share a common MongoDB database that is separated into a primary and secondary series of data collections. The system is located in a London data centre as close to Banard House as is possible. Each Telstar container can handle multiple simultaneous connections and the system can vbe scaled out as required thereby supporting many users.
TELSTAR is both a a videotex service and a videotex application. If you want to run your own videotex service using the Telstar application, details can be found on the TELSTAR WIKI and associated repositories at https://github.com/johnnewcombe/telstar-2/wiki. The application runs under Docker and can be orchestrated using Docker Compose or Kubernetes and examples of both are shown.
PSTN Modems
Telsatar is co-located with a dedicated Asteris PABX Telephone Exchange. This exchange is connected to Session Initiation Protocol (SIP) based telephone lines to provide a dial-in service. Asterisk has been compiled with the Phreaknet modified version of the Asterisk SoftModem configured for used as V23 1200/75 baud modems.
Frame Routing
Routing is mainly rules based which makes most routing automatic. Other frames make use of a routing tables associated with each frame. In addition special frame allows page redirections to be implemented.
Zero Page Routing
Telstar pages can each have a maximum of 26 frames. E.g. Page 222 includes frames 222a to 222z. In some cases such as large Telesoftware programs or large numbers of news items this may not be enough. To handle these scenarios, Telstar implements Zero Page Routing which adds a zero to the page number to allow additional frames to be added.
e.g.
If a Telesoftware program used 28 frames starting at frame 8002a, 8002z would represent frame 26 and two more frames would be needed to complete the transfer. Zero Page Routing would number frame 27 as 80020a and frame 28 as 80020b. If the program was large enough, Zero Page Routing can continue to add new pages e.g. 800200a-z, 8002000a-z and so on.
Alphagraphics
Telstar implements Alphagraphics as used on Prestel. Alphagrahics provide a large font created using graphics characters. These are typically used for titles and are automatically generated from text. One example of the use of Alphagraphics is the Welcome page.
Gateway Proxy
TELSTAR features a full duplex ‘proxy’ Gateway to other viewdata systems to be presented within Telstar. Systems such as NxTel (https://www.spectrumnextgames.uk/nxtel), CCL4 (http://fish.ccl4.org/java/) and TeeFax can all be accessed via the Telstar Gateway facility.
Response Frames
TELSTAR includes the facility to present forms to the user requesting input. The frames are referred to as response frames. The first use of this functionality was for the city/town/region search facility for the weather service. Response Frames are defined as standard Frame but include a collection of Fields. The fields include field validation and rendering information and are passed to a Response Processor when submitted by the user. The Response Processor is implemented as a plugin and handles the users request (e.g. get weather info) and returns temporary in-memory frames to display the results.
Acknoledgements
Weather Services
- OpenWeatherMap https://openweathermap.org
Artwork
- Simon Rawles http://examples.edit.tf/rawles/
- Andy Jenkinson http://examples.edit.tf/andyuglifruit/
Fonts
- The font for the Telstar Client (MODE7GX2.TTF) was based on ModeSeven by Andrew Bulhak, updated by galax.xyz.
Technical Help
- Darren Storer http://www.g7lwt.com/
- Richard T Russell http://www.bbcbasic.co.uk/index.html
- Daniel Jameson https://stardot.org.uk/
- Rob O’Donnell https://viewdata.org.uk
- Dave E J Hitchins
- Dave Banks https://github.com/hoglet67/
- ‘dukkie’ http://stardot.org.uk/forums/memberlist.php?mode=viewprofile&u=10052
Service Providers
- Application Servers – Digital Ocean (https://digitalocean.com)
- Database Servers – MongoDB Atlas (https://mongodb.com)
- SIP Services – Sipgate (https://sipgate.com)
- Analogue Telephone Adapters – Grandstream (https://http://www.grandstream.com/)
- Modems – US Robotics Courier. (https://www.usr.com/products/56k-dialup-modem/usr3453c/)
References
- [1] Fedida, S. & Malik, R. (1979) The Viewdata Revolution Associated Business Press
- [2] Martin, J. (1982) Viewdata and the Information Society Prentice Hall
- [3] Money, S.A. (1979) Teletext and Viewdata Newnes
- [4] Stokes, A. (1980) Viewdata: a public information utility (2nd Ed.)
- [5] Council for Educational Training (CET) (1986) Format Recommendations for Prestel Telesoftware CET
See Also
- The Telstar Group (https://groups.io/g/telstar)
- BBC BASIC V with Telstar client (http://brandy.matrixnetwork.co.uk/)
- BBC BASIC for Windows and SDL 2.0 with Telstar client (http://www.bbcbasic.co.uk/bbcsdl/)
- Stardot Forums / Retro software / Projecte (https://stardot.org.uk/forums/viewtopic.php?f=53&t=14957)
- Raspberry Pi client for the TELSTAR service (https://www.raspberrypi.org/forums/viewtopic.php?t=217377)
- Format Recommendations for Prestel Telesoftware (https://glasstty.com/wp-content/uploads/2021/05/Prestel-Telesoft-Protocol_small.pdf)
- The Teletext Facegroup Group (https://www.facebook.com/groups/TeletextGroup/)
- Telstar on BlueSky (https://bsky.app/profile/glasstty.bsky.social)
- Hearsay II for RiscOS by David Pilling (https://www.davidpilling.com/hearsay.html)
- Simon Laszcz’s vd-view. (https://vd-view.azurewebsites.net/)