Difference between revisions of "Tymshare Base-Host Protocol"

From Computer History Wiki
Jump to: navigation, search
m (Add a bunch of links; also, too long to be a plain stub :-))
(Link to SUMEX-AIM.)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
[[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 02000 (octal).  The memory has some [[meta-data]] and [[ring buffer]]s 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 [[octet]]s 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 28: Line 28:
 
|}
 
|}
  
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.
+
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 247: Line 247:
 
| B
 
| B
 
| BOC
 
| BOC
| Block ouptut complete.
+
| Block output complete.
 
|-
 
|-
 
| 46
 
| 46
Line 272: Line 272:
 
| B
 
| B
 
| IRQ
 
| IRQ
| Requst block input termination.
+
| Request block input termination.
 
|-
 
|-
 
| 53
 
| 53
Line 309: Line 309:
 
| Enter alt output device mode.
 
| Enter alt output device mode.
 
|-
 
|-
| 200+''n''
+
| 0200+''n''
 
| G
 
| G
 
|
 
|
Line 315: 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}}
 
{{semi-stub}}
  
[[Category: Networking]]
+
==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: 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