ライン・モード

クライアントまたはアプリケーションがフルスクリーン表示をサポートしない、またはユーザーがライン・モード環境で作業しなければならない場合もあります。これらの理由で、大部分のエミュレーターはライン・モードをサポートします。ライン・モードは、半二重形式をシミュレートするための ゴーアヘッド 機能をサポートします。ゴーアヘッドがネゴシエーションされると、パートナーは、データの現在の 送信側からゴーアヘッドを受信するまで、データを送信できません。多くの場合、セッションはもちろん半二重であり、ゴーアヘッドで、不要な伝送が追加されることになります。したがって、Telnet のデフォルトは ゴーアヘッドの抑制 (SGA) です。半二重形式を維持するためにゴーアヘッドが必要であれば 、NOSGA パラメーターを使用してください。SGA または NOSGA は、細分度の異なるレベルに対し、すべての 3 つのパラメーター・ブロック・レベルにコーディング可能です。

Telnet は以下のライン・モード接続をサポートします。

標準ライン・モードは、DBCS 変換も BINARY ライン・モード・パラメーター も指定されていないか、または装置タイプが変換によってサポートされていない場合に想定されます。標準ライン・モードは、Telnet による変換が必要な唯一の接続モードです。Telnet は、標準ライン・モード接続の各国語サポートを提供します。ASCII および EBCDIC コード・ページは、変換のベースです。Telnet は、C ランタイム・ライブラリーで使用可能な ICONV サービスを使用します。カスタム・コード・ページ情報については、「z/OS XL C/C++ プログラミング・ガイド」の ICONV サービスを参照してください。ASCII および EBCDIC コード・ページを指定した場合、変換記述子が Telnet に与えられます。Telnet は、変換記述子に基づいて ASCII-EBCDIC および EBCDIC-ASCII の変換テーブルを作成します。コード・ページ名を指定するには、CODEPAGE パラメーターを使用します。以下に例を示します。
CODEPAGE ISO8859-1 IBM1047 
CODEPAGE 処理の結果は以下のようになります。

最初の変換が成功した場合、コンソールにメッセージは表示されません。いずれかの変換の失敗があれば、メッセージが表示されます。最初以外のいずれかの変換が成功した場合、成功を示すメッセージが表示されます。

ライン・モード接続が正しく実行されない場合、デフォルトの変換テーブルが問題の原因になっていることがあります。ASCII および EBCDIC の両方の選択項目に TNSTD を指定して、内部 Telnet 変換テーブルの使用を試みてください。以下に例を示します。
CodePage TNSTD TNSTD

内部コード・ページは、まとめて使用する必要があります。2 つの内部テーブルのうち 1 つだけを指定すると、他の内部テーブルも使用されます。

CODEPAGE は、細分度の異なるレベルに対し、すべての 3 つのパラメーター・ブロック・レベルにコーディング可能です。

バイナリー・ライン・モード は、BINARYLINEMODE パラメーターを使用して設定されます。このモードは、Telnet が変換を行ってはならないことを示します。クライアントからの ASCII データは、現状のまま VTAM® アプリケーションに渡す必要があります。BINARYLINEMODE または NOBINARYLINEMODE は、細分度の異なるレベルに対し、すべての 3 つのパラメーター・ブロック・レベルにコーディング可能です。

変換ライン・モードは DBCSTRANSFORM パラメーターを使用して設定されます。これをコーディングした場合、Telnet を移動するすべてのデータが、サポートされるすべての 装置タイプに関して、DBCS または SBCS の ASCII フルスクリーンから 3270 フルスクリーンに 変換されます。装置タイプがサポートされない場合、標準またはバイナリーのライン・モードが使用されます。DBCSTRANSFORM は、細分度の異なるレベルに対し、TELNETPARMS または PARMSGROUP に コーディング可能です。これは TELNETGLOBALS にはコーディングできません。 変換用の固有のログモードが、装置タイプ TRANSFORM と共に TELNETDEVICE を使用して設定できます。ログモードでは、拡張グラフィックスを サポートしません。
注: 変換ライン・モードは、1 つの TCP/IP スタック上で複数のポートがアクティブである 時に、1 つのポートによってのみ使用することができます。DBCSTRANSFORM は、 最大 250 の同時接続をサポートします。

DBCSTRANSFORM は、VT100 1 バイト文字セット (SBCS) または VT282 2 バイト文字セット (DBCS) の いずれかの変換モードで使用することができます。DBCSTRANSFORM を指定し、TCP/IP プロシージャーの JCL を変更した場合、 以下に示すように、ASCII ベースの端末エミュレーター (VT100 または VT282) が フルスクリーンの 3270 端末に現れます。Telnet はクライアントから ASCII データを受信し、端末タイプによって、それを SBCS または DBCS EBCDIC データに変換します。Telnet は該当する SNA 制御バイトを追加して、データが 3270 端末から来たような外観を与えます。Telnet はホスト・アプリケーションから EBCDIC データを受信し、SNA 制御バイトとデータを、該当する ASCII 制御バイトとデータに変換します。データは ASCII ベースの端末に送信され、3270 フルスクリーン・エミュレーションで表示されます。DBCSTRANSFORM では、TCP/IP プロシージャーに特別なデータ定義 (DD) ステートメントの追加が要求されます。

変換ライン・モードをサポートするには、TCP/IP プロシージャーの JCL に、以下の 3 つの DD ステートメントを追加する必要があります。

//TNDBCSCN DD DSN=TCPIP.SEZAINST(TNDBCSCN),DISP=SHR
//TNDBCSXL DD DSN=TCPIP.SEZAXLD2,DISP=SHR
//TNDBCSER DD SYSOUT=*

DBCSTRACE パラメーターを指定すると、3270 変換ライン・モードから 、SYSPRINT 出力 DD ステートメントに指定された位置に、詳細なトレース出力が送信されます。追加の詳細トレース出力が TNDBCSER にも送信されます。両方のデータ・セットに詳細トレース・データが入ります。DBCSTRACE または NODBCSTRACE は、細分度の異なるレベルに対し、TELNETPARMS または PARMSGROUP に コーディング可能です。これらは TELNETGLOBALS にはコーディングできません。