Tymshare Base-Host Protocol: Difference between revisions
It's called message, not packet. Add message type column. |
Link to SUMEX-AIM. |
||
| (12 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
[[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 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 [[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. | |||
{| class="wikitable" | |||
| Message number | |||
| Port | |||
| Subtype or data | |||
| Data | |||
|} | |||
Type F messages total 8 octets: | |||
{| class="wikitable" | {| class="wikitable" | ||
| Message number | | Message number | ||
| Port | | Port | ||
| Data | | 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. | |||
{| class="wikitable" | |||
| 200+''n'' | |||
| Port | |||
| Data | |||
| Data | |||
|- | |||
| colspan="4" | Data as per ''n'' | |||
|- | |||
| colspan="3" | ... | |||
| Padding | |||
|} | |||
Type H messages are for sending or receiving a block of words. | |||
{| class="wikitable" | |||
| 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. | |||
Messages. Any number not in this list is illegal. Numbers 1-41 were present in 1975. Numbers 42-61 were added around 1982. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Number | | Number | ||
| Line 185: | Line 228: | ||
| HSI | | HSI | ||
| Host up and answering with # of ports in port byte, and host # in data byte. | | 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. | 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: | [[Category: Network Protocols]] | ||
Latest revision as of 06:26, 10 June 2023

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
- Tymnet information from Norman Hardy
- (FREMONTDOC)TBASE.DOC - TYMCOM-X documenting the Tymeshare Base-Host Protocol.