RFC205 日本語訳

0205 NETCRT - a character display protocol. R.T. Braden. August 1971. (Format: TXT=28272 bytes) (Status: UNKNOWN)
プログラムでの自動翻訳です。
英語原文

Network Working Group                                          R. Braden
Request for Comments: 205                                       UCLA/CCN
NIC: 7172                                                  6 August 1971

コメントを求めるワーキンググループR.ブレーデン要求をネットワークでつないでください: 205UCLA/CCN NIC: 7172 1971年8月6日

                 NETCRT - A CHARACTER DISPLAY PROTOCOL

NETCRT--キャラクタディスプレイプロトコル

   At the May NWG, meeting, CCN circulated dittoed copies of a proposed
   character-display protocol NETCRT.  Since that time, NETCRT has been
   revised significantly; the current version is now being published as
   an RFC, as promised last May.

5月のNWG、ミーティング、循環するCCNでは、提案されたキャラクタディスプレイの写されたコピーはNETCRTについて議定書の中で述べます。 その時以来、NETCRTはかなり改訂されています。 最新版は現在、RFC、去年の5月の約束にされるとして発行されています。

   NETCRT was developed because a particular site (RAND) requested
   Network access to URSA, CCN's display-based crje system.  The primary
   use of URSA at UCLA is conversational remote job entry from a display
   terminal: entering and editing program text, submitting programs for
   batch execution, and examining job output; URSA is not a general-
   purpose time-sharing system.

特定のサイト(RAND)がURSAへのNetworkアクセス、CCNのディスプレイベースのcrjeシステムを要求したので、NETCRTは開発されました。 UCLAのURSAのプライマリ使用はディスプレー装置からの会話形リモートバッチです: プログラム・テキストに入って、編集して、バッチ実行のためのプログラムを提出して、仕事の出力を調べます。 URSAは一般的な目的時分割システムではありません。

   URSA's text editor is designed for a fast updating character display
   and cannot be used in any reasonable way from a typewriter-like
   console.  Therefore, a simple TELNET protocol is not adequate for
   using the crje function of URSA.  Furthermore, we have assumed that
   other ARPA sites will have their own text editors, well matched to
   their own terminals and systems.  Therefore, CCN has implemented
   NETRJS (see RFC #189), to provide remote job submission and retrieval
   services, before implementing NETCRT.

URSAのテキストエディタを速いアップデートキャラクタディスプレイのために設計して、タイプライタのようなコンソールからどんな合理的な方法でも使用できません。 したがって、URSAのcrje機能を使用するには、簡単なTELNETプロトコルは適切ではありません。 その上、私たちは、他のARPAサイトがそれら自身の端末とシステムによく合わせられたそれら自身のテキストエディタを持つと思いました。したがって、CCNはリモート・ジョブ服従と検索サービスを提供するためにNETRJSを実装しました(RFC#189を見ます)、NETCRTを実装する前に。

   There are a number of other functions in URSA besides crje; some of
   these would probably be useful to remote users.  URSA contains a
   comprehensive STATus service, whose constantly-updating displays are
   "windows" into the operation of the machine and the operating system,
   allowing a user to watch the progress of his jobs through the system.
   URSA also includes on-line data set (file) utilities, convenient for
   a user with files stored at CCN.  To obtain access to these
   facilities, a few sites which use CCN heavily may want to implement
   NETCRT.  The schedule for implementation of NETCRT at CCN to allow
   Network access to URSA will depend upon the existence of a user site
   that wants the service and that will write a suitable NETCRT user
   process.  Interested sites are urged to contact the CCN Technical
   Liaison, Bob Braden.

他の多くの機能がcrje以外にURSAにあります。 これらの或るものはたぶんリモート・ユーザーの役に立つでしょう。 URSAは包括的なSTATusサービスを含んでいます、ユーザがシステムを通した彼の仕事の進歩を見るのを許容して。(サービスの絶えずアップデートしているディスプレイはマシンとオペレーティングシステムの操作への「窓」です)。 また、URSAはユーザにとって、便利なCCNに保存されているファイルでオンラインデータセット(ファイル)ユーティリティを含んでいます。 これらの施設へのアクセスを得るために、大いにCCNを使用するいくつかのサイトがNETCRTを実装したがっているかもしれません。 CCNのNETCRTの実装がURSAへのアクセスをNetworkに許すスケジュールはサービスが欲しく、適当なNETCRTユーザ・プロセスを書くユーザの現場の存在に依存するでしょう。 関心があるサイトがCCN Technical Liaison、ボブ・ブレーデンに連絡するよう促されます。

   Even though the implementation schedule for NETCRT is nebulous, we
   are publishing the specs now for several reasons.  First, we would
   like comments and criticisms.  Furthermore, NETCRT contains some
   features which may be useful in the protocol(s) now being developed
   for full graphical displays.

NETCRTのための遂行スケジュールは不明瞭ですが、私たちは現在、いくつかの理由で仕様を発表しています。 まず最初に、私たちは、コメントと批評が欲しいと思います。その上、NETCRTはいくつかの現在完全なグラフィカルなディスプレイのために開発されながらプロトコルで役に立つかもしれない特徴を含んでいます。

Braden                                                          [Page 1]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[1ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

NETCRT PROTOCOL - VERSION 3

NETCRTプロトコル--バージョン3

A. INTRODUCTION

A。 序論

   The UCLA Campus Computing Network (CCN) node intends to provide
   Network access to its conversational remote job entry system URSA.
   The URSA system is display-oriented, supporting only character
   displays with local buffers (originally IBM 2260 displays, now CCI
   301 TV display consoles).  This document defines a third-level
   protocol called NETCRT which allows a Network user in a remote Host
   to look like a CCI console to URSA.  NETCRT is defined in terms of a
   virtual character display ("VCD") terminal, simulated by a process in
   the user host.

(CCN)ノードがNetworkを提供するつもりであるUCLA Campus Computing Networkは会話形リモートバッチシステムにURSAにアクセスします。 URSAシステムはディスプレイ指向です、ローカルのバッファ(元々のIBM2260ディスプレイ、現在のCCI301テレビの表示操作卓)でキャラクタディスプレイだけをサポートして。 このドキュメントはリモートHostのNetworkユーザをCCIコンソールをURSAに似させるNETCRTと呼ばれる第3レベルプロトコルを定義します。 NETCRTはユーザー・ホストのプロセスによってシミュレートされた仮想のキャラクタディスプレイ("VCD")端末に関して定義されます。

   URSA, like many on-line console systems, attempts to provide a good
   man/machine interaction by keeping tight control over the state of
   the terminal.  On the other hand, the Network Working Group has
   deliberately built some "squishiness" into the standard Network
   protocols.  We believe this squishiness is a conceptual mistake when
   dealing with remote man/machine interaction, and we would support
   protocol revisions to allow control over the effective communication
   compliance between processes in different hosts.  However, this
   NETCRT protocol attempts to cope with the present squishiness, which
   is apparently built into a number of host's NCPs.  In fact, we have
   arranged things so a host can improve response time and reduce
   Network traffic with NETCRT by using the message buffering inherent
   in his NCP.

多くのオンラインコンソールシステムのように、URSAは、厳格な管理を保つことによって善人/マシン相互作用を端末の状態の上に供給するのを試みます。 他方では、Network作業部会は故意にいくつかの"squishiness"を標準のNetworkプロトコルに組み込みました。 リモート男性/マシン相互作用に対処するとき、私たちは、このsquishinessが概念的な誤りであると信じています、そして、異なったホストでプロセスの間の有効なコミュニケーションコンプライアンスのコントロールを許すためにプロトコル改正をサポートするでしょう。 しかしながら、このNETCRTプロトコルは、現在のsquishinessに対処するのを試みます。(ホストのNCPの数は明らかにsquishinessに組み込まれます)。 事実上、ホストがNETCRTと共に彼のNCPに固有のメッセージバッファリングを使用することによって応答時間を改良して、Networkトラフィックを減少させることができるように、私たちはものをアレンジしました。

B. THE VIRTUAL CHARACTER DISPLAY

B。 仮想のキャラクタディスプレイ

   A VCD consists of the following virtual hardware (see Figure 1):

VCDは以下の仮想のハードウェアから成ります(図1を見てください):

   1. A rectangular _display screen_ capable of displaying N lines of M
      characters.

1. Nを表示できる_が裏打ちするMキャラクタの長方形の_ディスプレイの画面。

   2. A _local buffer_ of M x N characters used to refresh the display.

2. Nキャラクタが画面の内容を更新するのに使用したM xの_の地方のバッファ_。

   3. A _cursor register_ which addresses the characters in the buffer
      (and hence on the screen).  This register controls the writing of
      text into the local buffer from either the keyboard or the server,
      and the reading of the local buffer by the server.

3. バッファでキャラクタに演説する_カーソルレジスタ_、(したがって、スクリーン、) このレジスタはサーバからキーボードかサーバのどちらかからのローカルのバッファの中へのテキストの書くこと、およびローカルのバッファの示度を制御します。

   4. A _keyboard_ containing text keys and control keys.  Each text key
      enters a character into local buffer at the current cursor address
      and steps the cursor register by 1.

4. テキストキーとコントロールキーを含む_キーボード_。 それぞれのテキストキーは、現在のカーソルアドレスのローカルのバッファの中にキャラクタに入って、1時までにカーソルレジスタを踏みます。

Braden                                                          [Page 2]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[2ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

   5. A _communication interface_ through which the server CPU can send
      a stream of _command_ segments to the VCD and receive a stream of
      _response_ segments from the VCD.  The command segments include
      control commands to the VCD and text to be written into the local
      buffer.  Response segments contain status indicators and text read
      from the buffer.  In addition, both VCD and server may send break
      signals.

5. サーバCPUが_の流れを送ることができる_通信インターフェース_は_セグメントをVCDに命令して、VCDから_応答_セグメントのストリームを受けます。 コマンドセグメントは、ローカルのバッファの中に書かれているためにVCDとテキストに制御コマンドを含んでいます。 応答セグメントはバッファから読まれた自動運転表示灯とテキストを含んでいます。 さらに、VCDとサーバが送るかもしれない両方が信号を壊します。

   The current address in the cursor register, an integer between 0 and
   M x N-1, is displayed as a blitch, underscore, or other visual
   indication at the corresponding point on the screen; this indication
   is called the _cursor_.  Position 0 is the upper left corner of the
   screen.

スクリーンの対応するポイントでのblitch、強調、または他の視覚指示としてカーソルレジスタの現在のアドレス(0とM x N-1の間の整数)を表示します。 この指示は_カーソル_と呼ばれます。位置0はスクリーンの左上隅です。

   The screen is addressed in line ("row") order, and read and write
   operations by the server overflow automatically from one line to the
   next.  The cursor register is not assumed to operate modulo M x Nxsy.
   It is possible for a server command to set the cursor register to M x
   N, one position beyond the last screen position; however, the server
   should never set the register to an address beyond M x N, and it
   should not leave the cursor at M x N when the keyboard is unlocked.

スクリーンは系列(「行」)オーダーで扱われます、そして、サーバオーバーフローで1つの系列から次まで自動的に操作を読み書きしてください。 カーソルレジスタが法M x Nxsyを操作すると思われません。 N、ものが最後のスクリーンの位置を超えて置くM xにカーソルレジスタを設定するサーバコマンドに、それは可能です。 しかしながら、サーバはM x Nを超えてアドレスにレジスタを決して設定するべきではありません、そして、キーボードの錠が開いているとき、それはM xのカーソルをNに残すべきではありません。

   The application program or conversational system using the VCD may
   format each display screen in a variety of ways, and may use a number
   of styles of interaction.  One consequence is that the application
   program might have to look anywhere on the screen (i.e., in the local
   buffer) to find the input information it requires.  We may consider
   three alternative mechanisms for transmitting information from the
   VCD to the serving CPU:

VCDを使用するアプリケーション・プログラムか会話システムが、さまざまな方法で各ディスプレイの画面をフォーマットして、多くのスタイルの相互作用を使用するかもしれません。 1つの結果はアプリケーション・プログラムがそれが必要とする入力情報を見つけるためにスクリーン(すなわち、ローカルのバッファの)でどこでも、を見なければならないかもしれないということです。 私たちはVCDから給仕CPUまで情報を伝えるために3つの代替のメカニズムを考えるかもしれません:

   Mechanism 1    Whenever the user presses a "Transmit" control key,
                  the entire M x N characters in the buffer are
                  transmitted to the server CPU.

ユーザのメカニズム1Wheneverは「伝わってください」というコントロールキーを押しつけて、バッファの全体のM x NキャラクタはサーバCPUに伝えられます。

   Mechanism 2    When the user presses "Transmit", the string of text
                  between a "start" control character and the cursor is
                  transmitted to the server.

ユーザプレスが「伝える」メカニズム2When、「始め」制御文字とカーソルの間のテキストのストリングはサーバに伝えられます。

   Mechanism 3    The server must send a read command segment to the VCD
                  before the "Transmit" key will have an effect.  The
                  read command segment determines which parts of the
                  buffer are to be transmitted to the server.

「伝わってください」というキーに効果がある前にサーバが送らなければならないメカニズム3はVCDにセグメントを命令しますaが、読んだ。 コマンドセグメントが決定するバッファのそれの部分がサーバに伝えられることになっている読み。

   Mechanism 1 may be faulted as too costly in transmission time and
   channel capacity, while Mechanism 2 is too restrictive.  The scheme
   which we propose here is based on Mechanism 3, which subsumes the
   other two.

トランスミッション時間とチャネル容量で高価過ぎるとしてメカニズム1をとがめるかもしれませんが、Mechanism2は制限し過ぎています。 私たちがここで提案する体系はMechanism3に基づいています。(Mechanismは他の2を包括します)。

Braden                                                          [Page 3]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[3ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

   The VCD is assumed to include the following control keys:

VCDが以下のコントロールキーを含んでいると思われます:

   Erase          Clears the display buffer to all blanks and resets the
                  cursor to position 0 (the upper left corner of the
                  screen).

ディスプレイがすべてにバッファリングする抹消Clearsは、0(スクリーンの左上隅)を置くためにカーソルを空白であり、リセットします。

   Transmit       Locks the keyboard and places the VCD under control of
                  the server CPU.  Typically, the server will read
                  specified areas of the screen and perhaps write out
                  new data before unlocking the keyboard again.

Locksを伝えてください。VCD下が制御されるサーバCPUのキーボードと場所。 サーバは、通常、スクリーンの指定された領域を読んで、再びキーボードをアンロックする前に、恐らく新しいデータを書き上げるでしょう。

   Break          Has the same effect as _Transmit_, and in addition
                  sends an interrupt message to the server CPU.  The
                  _Break_ key always sends the interrupt, regardless of
                  the state of the VCD.

同じくらいが中断メッセージに_Transmit_として作用して、さらに、送るHasをサーバCPUに壊してください。 _Break_キーはVCDの州にかかわらずいつも中断を送ります。

   Reset          May be used to unlock the VCD keyboard in case the
                  server CPU fails to respond immediately and the user
                  wishes to enter new or different information.

5月をリセットしてください。使用されて、サーバCPUがすぐに、応じないで、ユーザが新しいか異なった情報を入力するといけなくしたがっているので、VCDキーボードをアンロックしてください。

   These may be called pure control keys, since they do not correspond
   to any text characters.  The following control key does store a
   character into the display buffer:

これらは、どんなテキストキャラクタにも文通していないので、純粋なコントロールキーと呼ばれるかもしれません。 以下のコントロールキーはディスプレイバッファの中としてキャラクタを保存します:

   Newline        Enter a Newline (NL) character into the display buffer
                  and reset the cursor to the beginning of the next
                  line.  If this character is encountered during a read
                  or write operation, it is executed (i.e., the cursor
                  is moved to the beginning of the next line) and the NL
                  is counted as _one_ character.

ディスプレイへのニューラインEnter a Newline(NL)キャラクタは、次の系列の始まりまでカーソルをバッファリングして、リセットします。 それは実行されます、そして、(すなわち、カーソルは次の系列の始まりまで動かされます)このキャラクタがaの間、遭遇するなら、操作を読むか、または書いてください、そして、NLは_1_キャラクタにみなされます。

   Finally, there are assumed to be keys for manually positioning the
   cursor to any address on the screen.  Cursor positioning keys may
   include: cursor right, cursor up, cursor left (BS), cursor down (LF),
   and cursor return (CR).  A tab (HT) mechanism could also be defined,
   although none is included here.

最終的に、スクリーンに手動でどんなアドレスにもカーソルを置くためのキーがあると仮定されます。 カーソル位置決めキーは以下を含むかもしれません。 カーソル権利、カーソルを上へ、あとカーソル(BS)、(LF)へのカーソル、およびカーソルは(CR)を返します。 なにもここに含まれていませんでしたが、また、タブ(HT)メカニズムを定義できました。

C. VCD STATES

C。 VCD州

   The VCD has two internal states, _Local_ and _Control_ (see Figure
   2).

VCDには2つの内部の州があって、_はLocal_と_Control_(図2を見る)です。

   Local State:   The keyboard is unlocked and all keys are active.  The
                  VCD does not accept or recognize any commands from
                  server except (reverse) Break.

地方の州: キーボードの錠が開いていて、すべてのキーがアクティブです。 VCDは、受け入れもしませんし、サーバからの(逆)以外のどんなコマンドも壊れると認めもしません。

Braden                                                          [Page 4]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[4ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

   Control State: The keyboard is locked, and only the _Break_ and
                  _Reset_ keys are active.  The VCD accepts and executes
                  command segments from the server, and returns response
                  segments as the result of read commands.

状態を制御してください: キーボードは固定されます、そして、_のBreak_と_Reset_キーだけがアクティブです。 VCDはサーバからコマンドセグメントを受け入れて、実行して、読みコマンドの結果として応答セグメントを返します。

   The VCD changes from Local to Control state if either:

VCDはどちらかならLocalからControl状態に変化します:

      (1) The user presses the _Transmit_ key; or

(1) ユーザは_Transmit_キーを押します。 または

      (2) the user presses the _Break_ key; or

(2) ユーザは_Break_キーを押します。 または

      (3) the server sends a reverse Break request.

(3) サーバはBreakが要求する逆を送ります。

   _Transmit's_ only effect is to enter Control State; _Break_ enters
   Control State and also sends a break request (INS and X'80') to the
   server.

_伝わってください、_唯一の効果がControl州に入ることであるということです。 _'中断_がControl州に入って、また、中断要求を送る、(INSとX80年、'、)、サーバに。

   The VCD returns to Local State when either:

どちらかであるときに、VCDはLocal州に戻ります:

   1. The user presses the _Reset_ key; or

1. ユーザは_Reset_キーを押します。 または

   2. the VCD encounters a LOCAL command from the server and is not in
      the process of synchronizing a reverse break (see section E
      below).

2. VCDはサーバからLOCALコマンドに遭遇して、逆の中断を同時にさせることの途中にありません(下のセクションEを見てください)。

   We should note that CCI and IBM 2260 character display consoles
   actually have only one control key ("Interrupt" on CCI, "Enter" on
   2260) to perform the functions of both _Break_ and _Transmit_; this
   one key in fact has the function of the _Break_ key of the VCD.  We
   have included both _Break_ and _Transmit_ keys in the VCD for
   generality, but the URSA-NETCRT interface will be programmed to allow
   a Network user of URSA to either (1) employ the _Break_ key
   exclusively, or (2) use either _Break_ or _Transmit_ as appropriate.
   This will be achieved by URSA simply by ignoring those break requests
   (INS messages) which occur while there are outstanding read commands.

私たちは、_Break_と_Transmit_の両方の機能を実行するためにCCIとIBM2260キャラクタディスプレイコンソールには1つのコントロールキー(2260でCCIで「入ってください」と「中断する」)しか実際にないことに注意するべきです。 この1個のキーには、事実上、VCDの_Break_キーの機能があります。 (2) 私たちは一般性のためのVCDで_Break_と_Transmit_キーの両方を入れましたが、URSA-NETCRTインタフェースが排他的に(1) 雇用へのURSAのNetworkユーザに_Break_キーを許容するようにプログラムされるか、または適宜_Break_か_Transmit_のどちらかを使用してください。 これは、単に傑出している読みコマンドがある間に現れるそれらの中断要求(INSメッセージ)を無視することによって、URSAによって達成されるでしょう。

D. VCD COMMANDS

D。 VCDコマンド

   The server sends the VCD a string of command segments.  These are of
   varying length, consisting of an op code and none or more parameters.
   The commands recognized by the VCD are as follows:

サーバは一連のコマンドセグメントをVCDに送ります。 オペコードとなにもか、より多くのパラメタから成って、これらは異なった長さのものです。 VCDによって認識されたコマンドは以下の通りです:

Braden                                                          [Page 5]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[5ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

1. Display & Keyboard Control Commands:

1. ディスプレイとキーボード制御装置は命令します:

   Command      Parameter(s)               Function
   -------      ------------       -----------------------------------

コマンドパラメタ機能------- ------------ -----------------------------------

   ERASE           none            Erase display and reset cursor to 0.
                                   i.e, clear the local buffer.

Eraseのいずれも、0にカーソルを表示して、リセットしません。ERASE、i. e、ローカルのバッファをきれいにしてください。

   BLANK           none            Disable display refresh (i.e., blank
                                   the screen but do not clear the local
                                   buffer).

Disableのいずれも表示しないBLANKはリフレッシュします(すなわち、スクリーンが空白にしなさい、ただし、ローカルのバッファをきれいにしないでください)。

   UNBLANK         none            Enable display refresh.

Enableのいずれも表示しないUNBLANKはリフレッシュします。

   LOCAL           none            Put VCD in _local_ state.  The result
                                   is to suspend command interpretation
                                   and unlock the keyboard.

LOCAL、_地方の_状態のPut VCDのいずれも。 結果は、コマンド解釈を中断させて、キーボードをアンロックすることです。

   SYNC            none            Used to synchronize reverse Break
                                   from server.  SYNC (X'80) is placed
                                   in stream by server at same time that
                                   it sends an INS.  VCD enters Control
                                   State, synchronizes INS with BREAK
                                   command (see next section), and
                                   continues command interpretation.

SYNC、サーバSYNC(X80年)が置かれる逆のBreakを連動させないUsedのいずれもINSを送る時間、同じことをサーバで流れます。 VCDはControl州に入って、BREAKコマンド(次のセクションを見る)にINSを連動させて、コマンド解釈を続けています。

2. Cursor Control Commands:

2. カーソル制御装置は命令します:

   CURSOR  16 bit integer P        Set cursor register to P, where
                                   0 <= P <= M x N.

CURSOR16は整数P Setカーソルレジスタに0<がP<と等しいP=M x Nまで噛み付きました。

   FIND    X'0001' followed        Move the cursor to point to an
           by one character        occurrence of the character c.
           c                       Specifically, search backwards
                                   toward lower addresses) from the
                                   current cursor position and take
                                   the first occurrences of c (i.e.,
                                   the one with the largest address).
                                   If no occurrence is found, leave
                                   cursor at position 0.

FIND X'0001'がMoveに続いた、示すカーソル、キャラクタc.c Specificallyの1回のキャラクタ発生で、後方に低いアドレス)現在のカーソル位置と撮影からのc(すなわち、最も大きいアドレスがあるもの)の最初の発生に向かって探してください。 発生が全く見つけられないなら、位置0にカーソルを残してください。

   SAVE            none            Save a copy of the current cursor
                                   address in local register S.

SAVE、現在のカーソルのSave aコピーがローカルで扱わないなにもSを登録します。

   RESTORE         none            Replace cursor register contents by
                                   value S.

RESTORE、Replaceカーソルレジスタが満足させないなにもSを評価します。

Braden                                                          [Page 6]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[6ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

I/O Commands:

入出力は命令します:

   WRITE n,text    16 bit integer  Write n bytes of text into display
                   n, followed by  buffer starting at current cursor
                   n text bytes.   position and advancing cursor by 1
                                   for each byte (except NL character
                                   advances to beginning of next line).
                                   Here [sigma] + n <= M x N.

WRITE n(ディスプレイnへの16ビットのテキスト整数Write nバイトのテキスト)は、現在のカーソルnテキストバイト位置で始まって、各バイト(次の系列の始まりまでのNLキャラクタ進歩を除いた)単位の1時までにカーソルを進めながら、バッファで続きました。 ここで、[σ]+n<はM x Nと等しいです。

   READ n          16 bit integer  Read n bytes starting at the cursor
                   n.              [sigma] and advancing cursor by one
                                   for each byte (except NL advances
                                   cursor to beginning of next line).
                                   NL counts as one character.  Send the
                                   text to the server as a response
                                   segment.  Must have n + [sigma]
                                   <= M x N.

READ n16はカーソルnで始まる整数Read nバイトに噛み付きました。 [σ]と各バイト(NLを除いて、次の系列の始まりまでカーソルを進める)単位の1つ時までにカーソルを進めること。 NLは1つのキャラクタにみなします。 応答セグメントとしてテキストをサーバに送ってください。 n+[σ]<=M x Nを持たなければなりません。

   SREAD           none            Read S - [sigma] bytes starting from
                                   the current cursor position [sigma]
                                   up to (but not including) the cursor
                                   address stored in register S.  The
                                   cursor is left in position S as a
                                   result.  Send the text to the server
                                   as a response segment.

SREAD、なにも、Read S--現在のカーソルから始める[σ]バイトが[σ]をカーソルがその結果、位置のSに残されるレジスタS.に保存された(しかし、包含しない)カーソルアドレスまで置きます。 応答セグメントとしてテキストをサーバに送ってください。

   AWRITE n,text   16 bit integer  Same as WRITE n, except characters
                   n, followed by  are not stored in buffer if they
                   n text bytes.   have a lower cursor address than
                                   the value in S.

AWRITE n、キャラクタnを除いて、WRITE nが続いたようにテキストの16ビットの整数Sameは彼らであるならバッファにnテキストバイト保存されていません。Sに値より低いカーソルアドレスを持ってください。

   Here are some applications of these commands in URSA:

ここに、URSAのこれらのコマンドのいくつかの利用があります:

   1. One elementary URSA terminal operation reads the screen from
      position x up to (but not including) the current cursor position.
      This could be done with the sequence of VCD command segments:

1. 1つの基本のURSA端末の操作が位置のxからスクリーンを(しかし、包含しない)現在のカーソル位置まで読みます。 VCDコマンドセグメントの系列でこれができました:

                        SAVE
                        CURSOR x
                        SREAD

SAVE CURSOR x SREAD

   2. Another common operation in URSA is to remember the cursor, update
      specific information on the screen, and replace the cursor.  This
      can be done by the following 8 + n byte sequence of command
      segments:

2. URSAでの別の一般的な操作は、カーソルを覚えていて、スクリーンで特殊情報をアップデートして、カーソルを取り替えることです。 コマンドセグメントの以下の8+nバイト列でこれができます:

Braden                                                          [Page 7]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[7ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

                        SAVE
                        CURSOR x
                        WRITE n, text
                        RESTORE

SAVE CURSOR x WRITE n、テキストRESTORE

   3. In URSA, the area in which a user is to type his response is
      usually delimited on the left by a "Start Symbol" (graphic '[1]').
      This is a historical remnant of the IBM 2260, which has only two
      hardware read operators: read the full screen, and read from the
      Start Manual Input Symbol ("SMI") to the cursor.  The SMI read
      operation can be simulated easily on the VCD as follows:

3. URSAでは、「開始記号」(グラフィック'[1]')によって通常、ユーザが彼の応答をタイプすることになっている領域は左で区切られます。 これはIBM2260の歴史的な残りです:(IBMは、ハードウェアがオペレータに読み込んだ2しか持っていません)。 フルスクリーンを読んでください、そして、Start Manual Input Symbol("SMI")からカーソルまで読んでください。 以下のVCDで容易に操作が読まれたSMIをシミュレートできます:

                        SAVE
                        FIND '[1]'
                        SREAD

掘り出し物の'[1]'がSREADであると保存してください。

   4. The _Break_ (or _Transmit_) key on the VCD may serve the function
      of the INTerrupt key on a CCI console (or ENTer on an IBM 2260).
      URSA will often attempt to minimize Network traffic by sending a
      sequence of commands (one message if allocation allows) like the
      following:

4. VCDの上の_Break_(_または、Transmit_)キーはCCIコンソール(または、IBM2260のENTer)で主要なINTerruptの機能がそうするかもしれません。 URSAが、しばしばコマンドの系列を送ることによってNetworkトラフィックを最小にするのを試みる、(1つのメッセージ、配分が許容する、)、以下のように:

                                              -+
            CURSOR m                           |
            WRITE n, text                       - URSA writes a request
            LOCAL                              |
                                              -+
                                              -+
                       +-          +-+         |_ User types response
                       |   _BREAK_   |         |
      - -User Presses  | _TRANSMIT_  |key - - -+
                       +-           -+        -+
              SAVE                             |
              CURSOR p                          - URSA reads response
              SREAD                            |
                                              -+

-+ カーソルm| WRITE n、テキスト--URSAは要求LOCALに書きます。| -+ -+ +- +-+ |_ ユーザは応答をタイプします。| __を壊してください。| | - -ユーザプレス| __を伝えてください。|キー-----++-+-+SAVE| CURSOR p--URSAは応答SREADを読みます。| -+

      At other times, URSA might send the sequence:

他の時に、URSAは系列を送るかもしれません:

                CURSOR m
                WRITE n,TEXT
                LOCAL
                READ  0

カーソルmは地方の読書0をn、テキストに書きます。

      and wait for the INS from the user pressing _Break_ (or the
      response segment triggered by the zero-length read if he presses
      _Transmit_); then URSA will send the appropriate read command
      sequence.

そして、ユーザ圧搾物_Break_(彼が_Transmit_を押すなら、ゼロ・レングスによって引き起こされた応答セグメントは読んだ)からINSを待ってください。 そして、URSAは適切な読みコマンドに系列を送るでしょう。

Braden                                                          [Page 8]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[8ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

F. NETWORK MESSAGE FORMATS

F。 ネットワークメッセージ・フォーマット

   The VCD connects the server through ICP to a standard socket,
   establishing thereby a pair of connections between the VCD and the
   server.  Command segments (server-to-VCD) and response segments
   (VCD-to-server) are sent over these connections, without regard to
   physical message boundaries, using byte size 8.  The VCD is defined
   to operate in a segment-at-a-time mode (rather than character-at-a-
   time), with local echo.  Therefore, the server never echoes under
   NETCRT.

コマンドセグメント(サーバからVCD)と応答セグメント(VCDからサーバ)をこれらの接続の上に送ります、物理メッセージ限界への尊敬なしで、VCDはICPを通して標準のソケットにサーバを接続します、その結果、バイトサイズ8を使用して、VCDとサーバとの1組の関係を確立します。コマンドセグメント(サーバからVCD)と応答セグメント(VCDからサーバ)をこれらの接続の上に送ります、物理メッセージ限界への尊敬なしで、VCDはICPを通して標準のソケットにサーバを接続します、その結果、バイトサイズ8を使用して、VCDとサーバとの1組の関係を確立します。 VCDが一度にセグメントモードで作動するために定義される、(キャラクタよりむしろ、-、-1回、)、ローカルエコーで。 したがって、サーバはNETCRTの下で決して反映しません。

   In many cases URSA will send a sequence of command segments (as in
   the examples of the preceding section) at once; if there is
   sufficient allcocation they will be sent in the same message.
   Response time may be improved, therefore, if the user site is able to
   buffer ahead on command segments.  This buffering does raise break
   synchronization problems, which are solved in the following manner
   for reverse (server-to-user) break:

多くの場合、URSAはすぐに、コマンドセグメント(先行するセクションに関する例のように)の系列を送るでしょう。 十分なallcocationがあると、同じメッセージでそれらを送るでしょう。 したがって、ユーザの現場がコマンドのときに先でセグメントをバッファリングできるなら、応答時間は改良されるかもしれません。 このバッファリングは中断同期問題を提起します:(問題は以下の方法で逆(サーバからユーザ)の中断のために解決されています)。

      The server sends an INS on the control link and also a SYNC
      command (X'80) on the data link to the VCD.  On receiving either,
      the VCD enters Control State and then achieves synchronization
      between the INS and BREAK; if the INS arrives first, the VCD
      executes normally all commands buffered in his host, _except_ it
      ignores LOCAL commands, until the SYNC appears.  Having achieved
      synchronization, the VCD continues normal command interpretation
      (without ignoring ensuring LOCAL commands).

サーバはVCDへのデータ・リンクにおけるコントロールリンクとSYNCコマンド(X80年)にもINSを送ります。 受信すると、VCDはINSとBREAKの間でControl州に入って、次に、同期を達成します。 INSが先着するなら、通常、VCDは彼のホストでバッファリングされたすべてのコマンドを実行して、_それ以外の_はLOCALコマンドを無視します、SYNCが現れるまで。 同期を達成したので、VCDは通常のコマンド解釈(無視がLOCALにコマンドを確実にすることのない)を続けています。

   By this means the server can regain control of the VCD to write new
   information at any time.  For example, when URSA is used under
   NETCRT, most WRITE or AWRITE sequences will be preceded by a BREAK
   from the server, since URSA will not know the current state of the
   VCD.  Even if URSA left the VCD in Control State, the user might have
   manually returned his VCD to Local State by pressing _Reset_.

このようにしてサーバは、いつでも新情報を書くためにVCDのコントロールを取り戻すことができます。 URSAがNETCRTの下で使用されるとき、例えば、ほとんどのWRITEかAWRITE系列がBREAKによってサーバから先行されるでしょう、URSAがVCDの現状を知らないので。 URSAがControl州でVCDを残したとしても、ユーザは圧搾物_Reset_で手動で彼のVCDをLocal州に返したかもしれません。

   After receiving an INS, the VCD executes rather than ignores buffered
   commands so that pending writes will not be lost in case that
   processing at the user side has been held up temporarily.  The read
   commands executed after the server sent an INS might be irrelevant to
   a server, which can ignore the corresponding response segments.  In
   order to do so, the server simply keeps matching counts of read
   commands sent and corresponding response segments received.

INSを受けた後にVCDがバッファリングされて、無視するよりむしろコマンドを実行するので、ユーザ側でのその処理が一時妨げられたといけないので、失われないでしょう未定のそれが、書く。 サーバがINSを送った後に実行された読みコマンドはサーバと無関係であるかもしれません。(それは、対応する応答セグメントを無視できます)。 そうするために、サーバは、単に読みコマンドの合っているカウントを送り続けます、そして、対応する応答セグメントは受信されました。

   Command segments will use the following formats:

コマンドセグメントは以下の形式を使用するでしょう:

   Form 1 (No parameters)  q:OPCODE(8)

フォーム1(パラメタがありません)q: OPCODE(8)

      where q = X'80' means SYNC

'qがX80年の'手段SYNCと等しいところ

Braden                                                          [Page 9]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[9ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

                X'91'   "   LOCAL

「地方'X91年'です」。

                X'92'   "   ERASE

'X92年'「抹消」

                X'93'   "   BLANK

'X93年'「空白」

                X'94'   "   UNBLANK

'X94年'"UNBLANK"

                X'95'   "   SAVE

'X95年'「保存する」

                X'96'   "   RESTORE

「回復'X96年'」

                X'97'   "   SREAD

'X97年'"SREAD"

   Form 2 (16 bit integer)  q:OPCODE(8) + n:INTEGER(16)

フォーム2(16ビットの整数)q: OPCODE(8)+n: INTEGER(16)

      where q = X'9E' means READ n

READ nは、qがXと等しいところでは、'9E'と意味します。

            q = X'9C'   "   CURSOR n

qはX'9C'「CURSOR n」と等しいです。

      In both cases, 0 <= n <= M x N

どちらの場合も、0<はn<=M x Nと等しいです。

   Form 3 (count and text) q:OPCODE(8) + n:LENGTH(16) + (TEXT(8) = n)

フォーム3(カウントとテキスト)q: OPCODE(8)+n: LENGTH(16)+(TEXT(8)=n)

      where q = X'9D' means WRITE

WRITEは、'qがX'9Dと等しいところ'と意味します。

            q = X'9A' means AWRITE

AWRITEは、'qはX'9Aと等しいです'と意味します。

            q = X'9F' and n=1 means FIND

qはXと'9F'等しいです、そして、n=1はFINDを意味します。

   A response segment, caused by a READ or SREAD command, has the
   following format:

READかSREADコマンドで引き起こされた応答セグメントは以下の形式を持っています:

      RESPONSE <-----X'A1' + CURSOR(16) + n:LENGTH(16) + (TEXT(8) = n)

応答<。-----X'A1'+カーソル(16)+n: 長さの(16)+(TEXT(8)=n)

   where n > 0 is the number of characters actually read.  CURSOR(16) is
   an integer giving the final cursor position after the corresponding
   read command.  Note that the command READ 0 is permissible and may be
   used by the server to find the current cursor position, or to find
   out when the user presses _Transmit_.

n>0が実際にキャラクタの数であるところでは、読んでください。 CURSOR(16)は対応がコマンドを読んだ後に最終的なカーソル位置に与える整数です。 コマンドREAD0が許されて、サーバによって使用されて、現在のカーソル位置を見つけるか、またはユーザがいつ_Transmit_を押すかを見つけるかもしれないことに注意してください。

Braden                                                         [Page 10]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[10ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

E.  SCREEN SIZE

E。 画面サイズ

   For simplicity and consistency with URSA, we have chosen to treat the
   cursor as a single integer.  This in turn means that VCD and server
   must agree upon the number of columns M; it is also desirable for the
   server to know N.

URSAがある簡単さと一貫性のために、私たちは、ただ一つの整数としてカーソルを扱うのを選びました。 これは、VCDとサーバが段数Mに同意しなければならないことを順番に意味します。 また、サーバがNを知るのも、望ましいです。

   The agreement on M and N takes place through a one-sided negotiation.
   The server is assumed to know what M and N values he can handle and
   these are published for user sites.  When the VCD is first connected
   to the server, the VCD must send an Open response segment with the
   values M and N:

MとNの協定は一方的な交渉で行われます。 サーバが、彼がどんなMとN値を扱うことができるかを知っていると思われて、これらはユーザの現場に発行されます。 VCDが最初にサーバに接続されるとき、VCDは値MとNがあるオープン応答セグメントを送らなければなりません:

      Open segment <---- X'B1' + M(8) + N(8) + X'0000'

開いているセグメント<。---- X'B1'+M X(8)+N(8)+'0000'

   If the VCD fails to send this segment or the server does not like the
   values, the server closes the connections and the user is considered
   logged off.

VCDがこのセグメントを送らないか、またはサーバが値が好きでないなら、サーバは接続を終えます、そして、ログオフされて、ユーザは考えられます。

Endnotes

エンドノート

   [1] Graphic representation of start symbol: shaded triangle on its
   side.

[1] 開始記号のグラフィック表示: 側の上の陰影をつけられた三角形。

Braden                                                         [Page 11]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[11ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

                        +---------------+
                        |               |
                        | D I S P L A Y |
                        +---------------+
                                ^
                                |
                                | Refresh
                                |
                        +---------------+
                        |     LOCAL     |    Address
                        |     BUFFER    |<------------+
                        +---------------+             |
                         ^  ^       |                 |
     +-----------+  text |  |       |                 |
    /            |_______|  |       |                 |
   |  KEYBOARD   |          |WRITE  |READ             |
   +-------------+          |AWRITE |SREAD            |
                            |       |                 |
            control         |       v                 |
                        +---------------+     +---------------+
                        |      VCD      |     | CURSOR ADDRESS|
                        |    CONTROL    |<--->|    REGISTER   |
                        +---------------+     +---------------+
                            ^       |                 ^
                            |       |                 |
                            |       |                 |
                            |       |                 |
                            |       |                 |
                            |       |                 v
                            |       |         +---------------+
                            |       |         |       S       |
                            |       |         |   REGISTER    |
                            |       |         +---------------+
                            |       v
                        +---------------+
                        |     COMM      |
                        |   INTERFACE   |
                        +---------------+
                            ^       |
                            |       |
                            |       v
                   COMMANDS           RESPONSES

+---------------+ | | | D I S P L A Y| +---------------+ ^ | | リフレッシュしてください。| +---------------+ | ローカル| アドレス| バッファ| <、-、-、-、-、-、-、-、-、-、-、--+ +---------------+ | ^ ^ | | +-----------+ テキスト| | | | / |_______| | | | | キーボード| |書いてください。|読んでください。| +-------------+ |AWRITE|SREAD| | | | コントロール| v| +---------------+ +---------------+ | VCD| | カーソルアドレス| | コントロール| <、-、--、>| レジスタ| +---------------+ +---------------+ ^ | ^ | | | | | | | | | | | | | | v| | +---------------+ | | | S| | | | レジスタ| | | +---------------+ | +に対して---------------+ | COMM| | インタフェース| +---------------+ ^ | | | | COMMANDS RESPONSESに対して

                       Network Connections

ネットワーク接続

              FIGURE 1.  VIRTUAL CHARACTER DISPLAY
              ------------------------------------

図1 仮想のキャラクタディスプレイ------------------------------------

Braden                                                         [Page 12]

RFC 205          NETCRT - A CHARACTER DISPLAY PROTOCOL     6 August 1971

ブレーデン[12ページ]RFC205NETCRT--キャラクタディスプレイプロトコル1971年8月6日

                      Keyboard Unlocked
                    No Commands Executed

アンロックされたいいえコマンドが実行したキーボード

                   +--------------------+
                   |                    |
           +------>|       LOCAL        |------+
           |  +--->|       State        |      |
           |  |    +--------------------+      |
           |  |        |              |        |
           |  |        |              |        |
           |  |        |Break         |        |
           |  |        |              |        |   INS received
   LOCAL   |  |        | key          |        |
           |  |        |  [send INS   |        |
   Command |  |        |   and X'80'] |        |
   Executed|  |        |              |Transmit|
           |  | Reset  |              |        |
           |  |        |              |  key   |
           |  |  key   |              |        |
           |  |        v              v        |
           |  |   +--------------------+       |
           |  +---|       Control      |<------+
           |      |        State       |
           +------|                    |
            |     +--------------------+
            |      ^
            |      |  Keyboard locked,
            |      |  Execute Commands
            +------+
   After INS is
   received, LOCAL
   command is ignored
   until SYNC (X'80')
   is encountered

+--------------------+ | | +------>| ローカル|------+ | +--->| 状態| | | | +--------------------+ | | | | | | | | | | | | | |中断| | | | | | | INSはLOCALを受けました。| | | キー| | | | | '[INS| | コマンドを送ってください| | | X80年'、]| | 実行されます。| | | |伝わってください。| | | リセット| | | | | | | キー| | | キー| | | | | vに対して| | | +--------------------+ | | +---| コントロール| <、-、-、-、-、--+ | | 状態| +------| | | +--------------------+ | ^ | | キーボードはロックされました。| | コマンド+を実行してください。------'INSの後の+が受け取られている、LOCALコマンドがSYNCまで無視される、(X80年、'、)、遭遇します。

                    FIGURE 2.  VCD STATES
                    ---------------------

図2 VCD州---------------------

          [This RFC was put into machine readable form for entry]
           [into the online RFC archives by Lorrie Shiota, 2/02]

[このRFCはエントリーのためのマシンに入れられた読み込み可能なフォームでした][ロリー塩田によるオンラインRFCアーカイブへの2/02]

Braden                                                         [Page 13]

ブレーデン[13ページ]

一覧

 RFC 1〜100  RFC 1401〜1500  RFC 2801〜2900  RFC 4201〜4300 
 RFC 101〜200  RFC 1501〜1600  RFC 2901〜3000  RFC 4301〜4400 
 RFC 201〜300  RFC 1601〜1700  RFC 3001〜3100  RFC 4401〜4500 
 RFC 301〜400  RFC 1701〜1800  RFC 3101〜3200  RFC 4501〜4600 
 RFC 401〜500  RFC 1801〜1900  RFC 3201〜3300  RFC 4601〜4700 
 RFC 501〜600  RFC 1901〜2000  RFC 3301〜3400  RFC 4701〜4800 
 RFC 601〜700  RFC 2001〜2100  RFC 3401〜3500  RFC 4801〜4900 
 RFC 701〜800  RFC 2101〜2200  RFC 3501〜3600  RFC 4901〜5000 
 RFC 801〜900  RFC 2201〜2300  RFC 3601〜3700  RFC 5001〜5100 
 RFC 901〜1000  RFC 2301〜2400  RFC 3701〜3800  RFC 5101〜5200 
 RFC 1001〜1100  RFC 2401〜2500  RFC 3801〜3900  RFC 5201〜5300 
 RFC 1101〜1200  RFC 2501〜2600  RFC 3901〜4000  RFC 5301〜5400 
 RFC 1201〜1300  RFC 2601〜2700  RFC 4001〜4100  RFC 5401〜5500 
 RFC 1301〜1400  RFC 2701〜2800  RFC 4101〜4200 

スポンサーリンク

ANY演算子 『いずれか』を表す比較演算子の修飾子

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る