Difference between revisions of "Tymshare Base-Host Protocol"

From Computer History Wiki
Jump to: navigation, search
(Type G length does not include the header.)
(Link to SUMEX-AIM.)
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{stub}}
 
 
 
[[Image:Tymnet-man1.jpg|thumb|right|Humorous visualization of Tymnet protocol]]
 
[[Image:Tymnet-man1.jpg|thumb|right|Humorous visualization of Tymnet protocol]]
  
This documents the protocol, as used around 1975-1982, between a PDP-10 host and Varian 620 Tymbase.  At a low level, the interface consists of shared memory; one page (512 words) at address 2000 (octal).  The memory has some metadata and ring buffers for input and output.  The host and the Tymbase regularly poll this memory for updates.
+
This documents the [[protocol]], as used around 1975-1982, between a [[PDP-10]] [[host]] and Varian 620 TymBAS.  At a low level, the interface consists of [[shared memory]]; one page (512 words) at [[address]] 02000 (octal).  The memory has some [[meta-data]] and [[ring buffer]]s for input and output.  The host and the TymBAS regularly poll this memory for updates.
  
Messages are transmitted from the PDP-10 as 36-bit words with four octets in bits 0-31.  Bits 32-35 are unused.
+
Messages are transmitted from the PDP-10 as 36-bit [[word]]s with four [[octet]]s in bits 0-31.  Bits 32-35 are unused.
  
 
Message types A, B, C, and D are just 4 octets.
 
Message types A, B, C, and D are just 4 octets.
Line 30: Line 28:
 
|}
 
|}
  
Type G messages have a variable number of octets.  The message number is 200 (octal) plus the number of data octets following the 16-bit header.  The last word is padded out to a 36-bit boundary.
+
Type G messages have a variable number of octets.  The message number is 0200 (octal) plus the number of data octets following the 16-bit [[header]].  The last word is padded out to a 36-bit boundary.
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 249: Line 247:
 
| B
 
| B
 
| BOC
 
| BOC
| Block ouptut complete.
+
| Block output complete.
 
|-
 
|-
 
| 46
 
| 46
Line 274: Line 272:
 
| B
 
| B
 
| IRQ
 
| IRQ
| Requst block input termination.
+
| Request block input termination.
 
|-
 
|-
 
| 53
 
| 53
Line 311: Line 309:
 
| Enter alt output device mode.
 
| Enter alt output device mode.
 
|-
 
|-
| 200+''n''
+
| 0200+''n''
 
| G
 
| G
 
|
 
|
Line 317: Line 315:
 
|}
 
|}
  
This information comes from the SUMEX-AIM monitor file TYMSRV.MAC, written by Michael A. Heathman in 1975.  Additional updates from the SRI-NIC version from 1982.
+
This information comes from the [[SUMEX-AIM]] monitor file TYMSRV.MAC, written by Michael A. Heathman in 1975.  Additional updates from the [[SRI-NIC]] version from 1982.
 +
 
 +
{{semi-stub}}
 +
 
 +
==External links==
 +
 
 +
* [http://cap-lore.com/Tymnet/ Tymnet information from Norman Hardy]
 +
* [https://github.com/TYMCOM-X/169281.tape/blob/61a4c1fcd77c19952506cd141ca9bb9dd0adfd4c/fremontdoc/tbase.doc (FREMONTDOC)TBASE.DOC] - TYMCOM-X documenting the Tymeshare Base-Host Protocol.
  
[[Category: Networking]]
+
[[Category: Network Protocols]]

Latest revision as of 07:26, 10 June 2023

Humorous visualization of Tymnet protocol

This documents the protocol, as used around 1975-1982, between a PDP-10 host and Varian 620 TymBAS. At a low level, the interface consists of shared memory; one page (512 words) at address 02000 (octal). The memory has some meta-data and ring buffers for input and output. The host and the TymBAS regularly poll this memory for updates.

Messages are transmitted from the PDP-10 as 36-bit words with four octets in bits 0-31. Bits 32-35 are unused.

Message types A, B, C, and D are just 4 octets.

Message number Port Subtype or data Data

Type F messages total 8 octets:

Message number Port Data Data
Data Data Unused Unused

Type G messages have a variable number of octets. The message number is 0200 (octal) plus the number of data octets following the 16-bit header. The last word is padded out to a 36-bit boundary.

200+n Port Data Data
Data as per n
... Padding

Type H messages are for sending or receiving a block of words.

Message number Port Word count, high 8 bits Word count, low 8 bits
Address, high 8 bits Address, middle 8 bits Address, low 8 bits Unused


Messages. Any number not in this list is illegal. Numbers 1-41 were present in 1975. Numbers 42-61 were added around 1982.

Number Type Name Comment
1 A ANS System is answering.
2 A SHT System is up but shut.
3 A CRS Sender is crashed.
4 A DIE Recipient should crash.
5 A NSP Base taken over by new supervisor.
6 B LOG Login, next 4 data characters are the info about terminal type, and port or origin, then name, etc.
7 B AUX Supervisor response to establishing auxiliary circuit.
10 B NOP Back pressure on.
11 B OUP Back pressure off.
12 B GOB Character gobbler.
13 B ZAP Circuit zapper.
14 B EDC Enter deferred echo mode.
15 B LDC Leave deferred echo mode.
16 B GRN Green ball.
17 B RED Red ball.
20 B YEL Yellow ball.
21 B ORG Orange ball.
22 B HNG Hang character - not used.
23 B ETM Enter 2741 transparent mode.
24 B LTM Leave 2741 transparent mode.
25 C LOS Lost ball, data has been lost from buffers. The data filed may tell how many were lost.
26 C SUP Supervisor request (aux circuits).
27 C SUR Supervisor response (aux circuits).
30 C AXC Supervisor string character.
31 F TSP Test pattern probe.
32 F TSR Test pattern response.
33 F SAD Host sad.
34 B ECN Echo on.
35 B ECF Echo off.
36 D TCS Term characteristics, first data byte indicates which characteristics second data byte indicates value to set to.
37 C TCP Term characteristics probe, data byte indicates which terminal characteristic were requested.
40 D TCR Term characteristics response, data is just like TCS, comes in response to a probe; also is reflected by remote when terminal characteristics are sent.
41 C HSI Host up and answering with # of ports in port byte, and host # in data byte.
42 A CLP Super clock info request.
43 F CLR Super clock info.
44 H BKO Start block output.
45 B BOC Block output complete.
46 H BIN Start block input.
47 D INB Block input done, out of buffer.
50 D INE Block input done, completed.
51 D INT Block input done, timeout.
52 B IRQ Request block input termination.
53 D IHR Block input done, host request.
54 B ORQ Request block output termination.
55 B OHR Block output done, host request.
56 C NEG Block IO port negotiation.
57 B BRK Break character received.
60 C PSR Port status.
61 B EAO Enter alt output device mode.
0200+n G Data.

This information comes from the SUMEX-AIM monitor file TYMSRV.MAC, written by Michael A. Heathman in 1975. Additional updates from the SRI-NIC version from 1982.

External links