F6680データ・ストリーム・プログラミング・インタ フェースfor_DEC_OSF/1_______________________________ ユーザーズ・ガイド/インストレーション・ガイド AA-QEG2A-TE 1995年1月 オペレーティング・システム: OSF/1 V3.0A ソフトウェア・バージョン: F6680データ・ストリー ム・プログラミング・イン タフェースfor DEC OSF/1 V1.0 マニュアル・バージョン: V1.0 日本ディジタル イクイップメント株式会社 ________________________________________________________________ 1995年1月 本書の著作権は日本ディジタル イクイップメント株式会社(日本 DEC)が保有しており,本書中の解説および図,表は日本DECの文書 による許可なしに,その全体または一部を,いかなる場合にも再 版あるいは複製することを禁じます。 また,本書に記載されている事項は,予告なく変更されることが ありますので,あらかじめご承知おきください。万一,本書の記 述に誤りがあった場合でも,日本DECは一切その責任を負いかねま す。 本書で解説するソフトウェア(対象ソフトウェア)は,所定のライ センス契約が締結された場合に限り,その使用あるいは複製が許 可されます。 日本DECは,日本DECまたは日本DECの指定する会社から納入された 機器以外の機器で対象ソフトウェアを使用した場合,その性能あ るいは信頼性について一切責任を負いかねます。 (c) Digital Equipment Corporation Japan 1995. All Rights Reserved. Printed in Japan. 以下は米国Digital Equipment Corporationの商標です。 DEC ULTRIX VT DECnet ULTRIX Worksystem Software DECUS UNIBUS DECwindows VAX DIGITAL VAXcluster PDP VMS DIGITAL 以下は他社の商標です。 IBMは米国International Business Machines社の商標です。 _________________________________________________________________ 目次 まえがき................................................. xi 1 製品の概要 1.1 6680拡張データ・ストリームのサポート......... 1-1 1.2 インタフェース・アプリケーション例........... 1-2 1.3 データ・ストリーム・モード................... 1-3 1.4 フィールド・モード........................... 1-3 1.5 FNAの概念の理解.............................. 1-3 2 F6680 DSPIの使用方法 2.1 LU-LUタイプ2セッションの確立................. 2-1 2.2 セッションとの接続........................... 2-2 2.2.1 セッションへのアクティブ接続の要求....... 2-3 2.2.2 セッションへのパッシブ接続の要求......... 2-4 2.3 接続モードの指定方法......................... 2-5 2.4 データ・ストリーム・モード................... 2-5 2.4.1 6680データ・ストリームの送信方法......... 2-6 2.4.2 6680拡張データ・ストリームの受信方法..... 2-7 2.4.2.1 ストリームの確認応答................... 2-8 2.4.2.2 複数の連続ストリームの送信要求を受信し た場合.................................. 2-8 2.5 フィールド・モード........................... 2-9 2.5.1 文字ベクタ............................... 2-10 2.5.2 Kモードベクタ............................ 2-11 2.5.3 拡張属性ベクタ........................... 2-11 2.5.3.1 拡張強調表示........................... 2-13 2.5.3.2 拡張カラー............................. 2-13 2.5.3.3 フィールド・バリデーション............. 2-14 iii 2.5.4 スクリーン・ディスクリプタ・ブロック..... 2-15 2.5.5 書込み制御文字データ構造................. 2-17 2.5.6 6680画面イメージの受信方法............... 2-17 2.6 6680画面イメージからフィールドを検索する方法. 2-18 2.6.1 FDBのフィールド.......................... 2-18 2.6.2 読取り操作と検索操作の指定方法........... 2-20 2.6.3 FDBの使用例(1)........................ 2-23 2.6.4 6680画面イメージへフィールドを書き込む... 2-30 2.7 6680画面イメージを送信する方法............... 2-30 2.8 セッションの終了方法......................... 2-31 3 F6680 DSPIの機能 3.1 リターン・ステータス情報..................... 3-1 3.1.1 関数の戻り値............................. 3-2 3.1.2 ステータス・ベクタの使用方法............. 3-2 3.2 FACOMホストにアクセス情報を提供する方法...... 3-3 3.3 コールバック機能の使用方法................... 3-4 3.4 ブロックおよび非ブロック受信の使用方法....... 3-5 4 OSF/1アプリケーション・プログラムの作成 4.1 アプリケーションのリンク方法................. 4-1 4.2 プログラミング例............................. 4-2 4.3 DEC/FACOMコード変換.......................... 4-3 4.3.1 JEF拡張文字とJEFユーザ定義文字........... 4-3 4.3.2 カスタマイズされた変換テーブルの作成方法. 4-3 5 プロシージャ呼び出し形式 5.1 F6680 DSPIを呼び出す場合の一般形式........... 5-2 5.1.1 session_id............................... 5-2 f6680_acknowledge................................... 5-3 f6680_free_buffer................................... 5-6 f6680_lock_screen................................... 5-9 f6680_read_field.................................... 5-11 f6680_receive_screen................................ 5-14 f6680_receive_stream................................ 5-17 iv f6680_request_connect............................... 5-20 f6680_request_disconnect............................ 5-25 f6680_return_io_port................................ 5-28 f6680_set_owner..................................... 5-31 f6680_transmit_screen............................... 5-34 f6680_transmit_fna_cmd.............................. 5-38 f6680_transmit_stream............................... 5-41 f6680_write_field................................... 5-44 fna_as2eb........................................... 5-47 fna_eb2as........................................... 5-49 fna_put_msg......................................... 5-51 fna_get_msg......................................... 5-54 6 F6680 DSPIのインストレーション 6.1 インストレーション必要事項の確認............. 6-1 6.2 必須ソフトウェア・サブセットの確認........... 6-2 6.3 FACOMホスト・システムへのアクセスの確認...... 6-3 6.4 システム・ディスクのバックアップ............. 6-4 6.5 ライセンスPAKの登録.......................... 6-4 6.6 問題点の通知................................. 6-4 6.7 インストレーション方法....................... 6-5 6.7.1 CD-ROMからのインストレーション........... 6-5 6.7.2 IVPの実行方法............................ 6-13 6.7.3 IVPが失敗した場合........................ 6-13 6.8 内部コマンド・テーブルの再構築............... 6-14 6.9 インストレーション後のF6680 DSPIファイルの配 置............................................ 6-14 6.10 インストレーション例......................... 6-22 v A アテンション識別の値 B F6680 DSPIの定義 C ステータス・コード C.1 成功コード................................... C-1 C.2 情報コード................................... C-2 C.3 エラー・コード............................... C-3 C.4 重大エラー・コード........................... C-8 D 下位レベルのステータス・コード D.1 一般的なエラー・コード....................... D-1 D.2 一般的な2次障害コード........................ D-2 D.3 ゲートウェイから返される異常終了理由のステー タス・コード.................................. D-6 D.4 重大エラー・コード........................... D-10 E F6680 DSPIデータ構造 F jefcodeユーティリティ F.1 jefcodeユーティリティ........................ F-1 F.1.1 起動方法................................. F-1 F.1.2 jefcodeコマンド形式...................... F-1 F.1.3 KMAPファイル............................. F-10 F.1.4 1バイトコード変換テーブル............... F-11 F.1.5 jefcodeエラーメッセージ一覧.............. F-13 G jefknjdefユーティリティ G.1 jefknjdefユーティリティ...................... G-1 G.1.1 起動方法................................. G-1 G.1.2 jefknjdefコマンド形式.................... G-1 vi G.1.3 jefknjdefユーティリティ内のコマンド形式.. G-2 G.1.3.1 useコマンド............................ G-2 G.1.3.2 listコマンド........................... G-3 G.1.3.3 defineコマンド......................... G-7 G.1.3.4 undefineコマンド....................... G-11 G.1.3.5 helpコマンド........................... G-12 G.1.3.6 exitコマンド........................... G-12 G.1.3.7 quitコマンド........................... G-13 G.1.4 jefknjdefエラーメッセージ一覧............ G-14 H jsnatratblユーティリティ H.1 jsnatratblユーティリティ..................... H-1 H.1.1 変換テーブル修正マクロ................... H-1 H.1.1.1 マクロ................................. H-2 H.1.1.2 コメント............................... H-4 H.1.2 変換テーブルの作成....................... H-4 H.1.3 変換テーブル作成例....................... H-6 H.1.4 jsnatratblエラーメッセージ一覧........... H-7 I DEC/JEFコード変換ライブラリ I.1 DEC/JEFコード変換ライブラリ.................. I-1 I.1.1 コード変換ライブラリの概要............... I-1 I.1.1.1 ライブラリ構成......................... I-2 I.1.1.2 リンク方法............................. I-2 I.1.2 コード変換ライブラリの詳細............... I-2 I.1.2.1 Item List.............................. I-2 I.1.2.2 Item Code.............................. I-2 I.1.2.3 変換モードBitmask...................... I-4 I.1.2.3.1 文字列の初期/最終モード............... I-5 I.1.2.3.2 シフト・コード........................ I-6 I.1.2.3.3 Replaceモード(JEFからDECへの変換の場 合のみ)............................... I-7 I.1.2.4 コード変換の例......................... I-7 I.1.2.5 外字の変換............................. I-8 I.1.2.6 制限事項............................... I-8 I.1.2.7 DEC/JEFコード変換ルーチンのインタフェー ス...................................... I-8 ftra_dec_jef_init................................... I-9 ftra_dec_jef_free ................................. I-13 ftra_dec_jef ...................................... I-15 ftra_jef_dec ...................................... I-18 vii I.1.3 省略時変換テーブル....................... I-21 I.1.4 プログラム例............................. I-23 索引 例 2-1 拡張フィールド属性データ構造.............. 2-12 3-1 コールバック・ルーチンのシンタックス...... 3-5 E-1 構造化フィールド・データ構造.............. E-1 E-2 拡張フィールド属性データ構造.............. E-2 E-4 フィールド属性データ構造.................. E-3 E-4 フィールド・バリデーション属性データ構造.. E-3 E-5 フラグ定義データ構造...................... E-4 E-6 スクリーン・ディスクリプタ・ブロック・デー タ構造.................................... E-5 E-7 書込み制御文字(WCC)データ構造............. E-6 E-8 フィールド・ディスクリプタ・ブロック・デー タ構造.................................... E-6 図 1-1 DECnet/SNAネットワークを通したFACOMとOSF/1 の接続例.................................. 1-2 2-1 An Active Connect Request................. 2-4 2-2 文字ベクタ................................ 2-10 2-3 WCCデータ構造............................. 2-17 2-4 AMNUトランザクション画面.................. 2-25 2-5 AMNU操作員画面............................ 2-25 2-6 オプション画面上のトランザクション・ナンバ ー・フィールド............................ 2-26 2-7 AMNUファイルbrowse画面.................... 2-27 3-1 ステータス・ベクタ........................ 3-3 F-1 -k 2の場合のKMAPファイルと変更対象ファイ ル........................................ F-10 F-2 KMAPファイルの出力例...................... F-11 viii F-3 jefcodeが提供する変換テーブル (EBCDICJIS)............................ F-12 G-1 list表示例−1............................ G-4 G-2 list表示例−2............................ G-6 I-1 Item List structure....................... I-2 I-2 変換例.................................... I-7 I-3 DEC -> FACOM 1バイトコード変換テーブル.... I-21 I-4 FACOM -> DEC 1バイトコード変換テーブル.... I-22 表 2-1 拡張強調表示設定.......................... 2-13 2-2 カラー設定................................ 2-13 2-3 フィールド・バリデーション................ 2-14 2-4 拡張属性とマスク定数...................... 2-19 2-5 フィールド・ディスクリプタ・ブロックの操作 選択フィールドのシンボルと意味............ 2-20 6-1 F6680 DSPIのインストレーション必要事項.... 6-1 6-2 必要なサブセット.......................... 6-2 6-3 F6680 DSPIファイル........................ 6-14 A-1 アテンション識別の値...................... A-1 B-1 接続関連定数.............................. B-2 B-2 省略時の拡張属性タイプと値................ B-3 B-3 リプライ・モード定数...................... B-3 B-4 カラー定数................................ B-3 B-5 フィールド/文字属性....................... B-4 B-6 セッション送信状態........................ B-4 B-7 セッション受信連鎖状態.................... B-5 B-8 セッション送信連鎖状態.................... B-5 B-9 ブラケット状態............................ B-5 B-10 LUSTATで使用するフラグ.................... B-5 B-11 アウト・オブ・バウンド要求のFNAコマンド... B-6 B-12 画面所有権................................ B-6 B-13 フィールド操作............................ B-6 B-14 6680指令定義.............................. B-7 B-15 6680副指令定義............................ B-8 B-16 拡張属性タイプ............................ B-10 ix B-17 AIDキー定義............................... B-11 I-1 Item Code一覧............................. I-3 I-2 変換モード................................ I-4 I-3 文字列モードの値.......................... I-5 I-4 指定可能なItem Code....................... I-10 I-5 指定可能なItem Code....................... I-16 I-6 指定可能なItem Code....................... I-19 x _________________________________________________________________ まえがき F6680データ・ストリーム・プログラミング・インタフェースfor DEC OSF/1を使用することにより,OSF/1システム・ユーザは, FACOMホスト上で動作するプログラムとのデータ交換可能なアプリ ケーションを開発することができます。以下,F6680データ・スト リーム・プログラミング・インタフェースfor DEC OSF/1をF6680 DSPIと表記します。 本書の目的 本書では,F6680 DSPIをインストールし,Cプログラミング言語を 使用してFACOMホスト上で動作するプログラムと通信するOSF/1シ ステム・アプリケーションを作成するのに必要な情報について解 説します。本書は,一般的なプログラミング学習書ではありませ ん。ユーザがCでのプログラミング方法を知っていることを前提と しています。 対象読者 本書は,OSF/1システム・プログラマを対象としています。本プ ロダクトを使用するには,FACOMのシステム・ネットワーク体系 ( FNA)を理解しておくこととCプログラミング言語の知識が必要で す。 xi 本書の構成 本書は,以下に示す章と付録から構成されています。第1章から 第5章までがユーザーズ・ガイドであり,製品の概要,使用方法に ついて説明しています。第6章がインストレーション・ガイドで あり,製品のインストレーションについて説明しています。よっ て,初めにインストレーションを実行したいお客様は,まず第6章 をお読み下さい。 第1章 F6680 DSPIとその機能について説明します。 第2章 F6680 DSPIの2つの操作モードとOSF/1アプリケーシ ョンがそれをどのようにして呼び出すかについて説 明します。 第3章 アプリケーションを作成したり実行したりするとき に役に立つプロダクトの機能について説明します。 第4章 シェアラブル・イメージを使用してOSF/1アプリケー ションにF6680 DSPIをリンクする方法について説明 します。この章では,オンラインで提供されるC言語 の5つのプログラミング例について説明されていま す。これらのプログラムは,本プロダクトに含まれ る各種のプログラミング・コールとデータ構造の使 い方を示したものです。 第5章 F6680 DSPI環境を構成するルーチンと呼び出し形式 について説明します。 第6章 F6680 DSPIソフトウェアをインストールするときの 前提条件を示します。次に,setldプロシージャを使 用してF6680 DSPIソフトウェアをインストールし, インストレーションを検証する方法について説明し ます。また,インストレーション時にシステムにコ ピーされるファイルの名前と位置の一覧を示すとと もに,システム上で実行されるインストレーション 例も示します。 付録 A アテンション識別(AID)キー値とシンボル,それに対 応するキーボード上のキーを示します。 xii 付録 B 使用したい言語に対して定義ファイルが提供されて いない場合に,アプリケーションを作成するのに使 用するシンボル,値,意味を示します。 付録 C OSF/1アプリケーションに返されるステータス・コー ドについて説明します。 付録 D 本プロダクトを使用するときに受け取る下位レベル のステータス・コードを示します。 付録 E F6680 DSPI環境を構成するデータ構造の例を示しま す。 付録 F jsnacodeユーティリティの使用方法について説明し ます。 付録 G jsnaknjdefユーティリティの使用方法について説明 します。 付録 H jsnatratblユーティリティの使用方法について説明 します。 第I.1節 DEC/JEFコード変換ライブラリについて説明します。 ________________________ 注意 ________________________ 本書における'DEC SNA Gateway'は特に断らない限り, DECnet SNA Gateway ST及びDEC SNA Peer Serverを意味 します. ______________________________________________________ 関連資料 F6680 DSPIを使用する上で,以下のマニュアルも必要に応じて参 照してください。 DEC SNA Peer Serverについては,以下のマニュアルを参照してく ださい。 xiii o DEC SNA Peer Server Installation and Configuration Guide o DEC SNA Peer Server Management Guide o DEC SNA Peer Server Guide to IBM Resource Definition o DEC SNA Peer Server Network Control Language Reference 以下の富士通(株)社のマニュアルも必要に応じて参照してくださ い。 o FACOM 6650ディスプレイサブシステム使用手引書(97HP- 7040) o FACOM 6650ディスプレイサブシステム総合解説書(97HP- 7010) o FACOM 6683ディスプレイステーション解説書(97HP-7110-3) o FMRシリーズF6680エミュレータV1.1操作手引書(87SP-0290- 4) xiv 表記法 本書では次の表記法を使用します。 xv xvi ___________________________________________________________ 表記________説明___________________________________________ 大文字アル 定数の値やシンボルを示します。明記されていると ファベット おりにコーディングする必要があります。 小文字のイ コマンド行や例におけるイタリック体テキストはそ タリック体 れが示している実際の値を与えなくてはならないこ (italics) とを示します。 [] 大括弧はオプションまたはコンディショナルのパ ラメータやシンボルを囲んでいます。コンディショ ンを適用する場合は,パラメータと値を明記してく ださい。その際,大括弧は入力しないでください。 通常,次のようなルールがパラメータに適用されま す。 o オプション・パラメータは削除することが可能 です。オプション・パラメータを削除すると, 関連しているパラメータに影響がでたり,省略 時の値に設定されたりします。 o コンディション・パラメータは削除することが 可能です。選択されたパラメータは,他のパラ メータがどの様に指定されたかによって,その 意味が決定されます。 () 括弧は引数の羅列の範囲を決めます。引数は指示 に従ってコード・ラインに入力しなければなりませ ん。また,括弧もコード・ライン上に指示されたと おりに入力しなければなりません。 英字の特殊 この特殊タイプは,システム出力かユーザ入力の例 活字 を示します。 …Special type 数字 特に断らない限り,数字は10進数です。 RETURNキーを押すことを示します。特に断らない限 り,すべてのコマンドは,Returnキーを押すことに よって終了します。 等のキーの組み合せは,キーを押し ____________た状態で別のキー(x)を押すことを示します。______ xvii 略称 本書では次の略称を使用します。 ___________________________________________________________ 名称__________________________________略称_________________ 富士通システム・ネットワーク体系 FNA 論理装置 LU 1次論理装置 PLU 2次論理装置 SLU システム・サービス制御点 SSCP ソフトウェア性能レポート SPR 書込み制御文字 WCC F6680データ・ストリーム・プログラミ F6680 DSPI ング・インタフェースfor_DEC_OSF/1__________________________ xviii 1 _________________________________________________________________ 製品の概要 F6680 DSPIを使用すると,FACOMホスト上で動作するアプリケーシ ョンとデータを交換するOSF/1アプリケーションを開発することが できます。F6680 DSPIで開発可能なOSF/1システム・アプリケーシ ョンには,次のようなものがあります。 o FACOM 6680端末用に設計された既存のFACOMアプリケーショ ンと通信しなければならないアプリケーション o FACOM 6680端末,あるいは3279-S3Gまたは3192-Gグラフィッ ク表示システム,IBMパーソナルシステム/55日本語3270パー ソナル・コンピュータ(日本語3270 PC)の諸機能をエミュ レートするアプリケーション o 6680拡張データ・ストリームを使用してFACOMホスト・シス テム上で動作する他社のソフトウェア・プロダクトと通信す るファイル転送アプリケーション F6680 DSPIでは,アプリケーションを開発するときに,ストリー ム・モード(第1.3節を参照)とフィールド・モード(第1.4節を 参照)の2つのモードを提供します。使用するモードは,アプリケ ーションに実行させたい機能によって決まります。 _________________________________________________________________ 1.1 6680拡張データ・ストリームのサポート OSF/1システム・アプリケーションは,F6680 DSPIプロダクトを構 成するプログラミング・プロシージャを使用して,次のような機 能を実行できます。 o 仮想6680ディスプレイを作成する o 未解析のFACOM 6680拡張データ・ストリームを受信する o OSF/1とFACOMの両方のコンピュータ・システム上のデータを アクセスする 製品の概要 1-1 製品の概要 1.1 6680拡張データ・ストリームのサポート o FACOMホストにすでに常駐している6680トランザクションに 接続する o 照会/応答トランザクションを実行する ________________________ 注意 ________________________ このF6680 DSPIプロダクトを使用して分散データベースを更 新しないてください。セッションを失敗した場合障害が生じ たポイントから,セッションを再開することができないた め,このF6680 DSPIプロダクトは分散データベースの更新に は向いていません。 ______________________________________________________ _________________________________________________________________ 1.2 インタフェース・アプリケーション例 F6680 DSPIを使用すると,LUタイプ2セッションで2次側論理装置 (SLU)ハーフ・セッション・パートナーとして動作するアプリケー ションを作成することができます。たとえば,次のようなアプリ ケーションを作成できます。 o FACOM 6680端末の機能をエミュレートするアプリケーション o 6680拡張データ・ストリームを使用してFACOMホスト上で動 作する他社のソフトウェア・プロダクトと通信するファイル 転送アプリケーション o 6680端末入出力用に設計された既存のFACOMアプリケーショ ンと通信する必要のある OSF/1アプリケーション 図 1-1は,F6680 DSPIとDEC SNA Gatewayを使用してFACOMホスト 上のトランザクションに接続する方法を示しています。 図 1-1 DECnet/SNAネットワークを通したFACOMとOSF/1の接続例 1-2 製品の概要 製品の概要 1.3データ・ストリーム・モード _________________________________________________________________ 1.3 データ・ストリーム・モード データ・ストリーム・モードでは,F6680 DSPIは,LU-LUタイプ2 セッションを確立して未解析の3270拡張データ・ストリームを送 受信します。このモードでは,データ・フロー制御レイヤまでの FNAサービスを実行します。次のことは,OSF/1ユーザ側で行って ください。 o データ・ストリームを指令や副指令に合わせて解析する。 o 画面イメージを構築して処理する(必要な場合)。 o 画面イメージからデータ・ストリームを構築し,それを FACOMホストに送信する。 _________________________________________________________________ 1.4 フィールド・モード フィールド・モードでは,F6680 DSPIは,受信したデータ・スト リームを仮想画面イメージに変換します。このモードでは,プレ ゼンテーション・サービス・レイヤまでのFNAサービスを実行しま す。アプリケーションは,F6680 DSPIを呼び出して指定されたフ ィールドの読取りや書込みをすることによって画面を更新できま す。また更新済み画面をFACOMホストに返すため,画面イメージを 6680拡張データ・ストリームに変換して送信します。 _________________________________________________________________ 1.5 FNAの概念の理解 F6680 DSPIを使用すると,各種のアプリケーションを開発するこ とができます。F6680 DSPIがFNAプロトコル・メッセージを送受信 したり解釈したりするので,ユーザはFNAメッセージの形式やプロ トコルに注意を払う必要はありません。したがって,本書を読む 際は,FNAの一般的な知識があれば十分です。次の概念を理解して おくと,このF6680 DSPIプロダクトを効率良く使用するのに役立 ちます。 o FACOM LUタイプ2セッション−LUタイプ2セッションは6680タ イプの表示を提供し,6680拡張データ・ストリームを使用し てデータを送信します。 製品の概要 1-3 製品の概要 1.5 FNAの概念の理解 o 半2重フリップフロップ通信−相互に通信し合う2つのLU は,このメカニズムを使用してデータの送信側と受信側を交 替します。 o セッション処理状態−この状態は,FNA指令,応答,ユー ザ・データ送信の処理を制御します。 o ブラケッティング−FNAがデータを論理要素にまとめる方法 (完全なトランザクション)。 o チェインニング−FNAが大きなデータ・ブロックをいくつか に分割して送信する方法。 1-4 製品の概要 2 _________________________________________________________________ F6680 DSPIの使用方法 F6680 DSPIは,OSF/1アプリケーションがLU-LUタイプ2セッション で次のような動作を要求するために呼び出されるいくつかのプロ シージャから構成されています。 o FACOMアプリケーションとのセッションを確立する o 6680データ・ストリームを送受信する o 仮想6680画面イメージを送受信する o 6680画面イメージの中のフィールドを読み取ったり書き込ん だりする o FACOMアプリケーションとのセッションを終了する _________________________________________________________________ 2.1 LU-LUタイプ2セッションの確立 FNAネットワークのエンド・ユーザは,それぞれの論理装置(LU) がFNAプロトコルに従ってLU-LUセッションを確立してからでない と,メッセージを交換できません。 LUは,システム・サービス制御点(SSCP)に他のLUとのセッション を要求できます。このためには,要求側のLUが,希望するLUを指 定する自己開始(INITS)要求をSSCPに送信します。SSCPは,セッシ ョンの1次LU (PLU)と2次LU (SLU)になるLUを選択してから,PLUに 制御開始(CINIT)要求を送信します。PLUは次にBIND要求をSLUに送 信して,セッションの条件を提案します。SLUは,BIND要求を調べ て,そのセッションを受け入れるか,または拒否します。 DEC SNA Gatewayが関わるタイプ2セッションでは,F6680 DSPIは ユーザ・アプリケーションのLU機能を実行します。このようなセ ッションでは,F6680 DSPIは常にSLUになります。これは,F6680 DSPIが常にBINDの受信側になることを意味しています。 F6680 DSPIの使用方法 2-1 F6680 DSPIの使用方法 2.1 LU-LUタイプ2セッションの確立 OSF/1アプリケーションは,LUタイプ2セッションを確立する為ア クティブ接続要求とパッシブ接続要求の2つの種類の要求をF6680 DSPIに出すことができます。 o アクティブ接続要求は,指定されたFACOMアプリケーション とのセッションを開始するのに,OSF/1アプリケーションが INITSをSSCPに送信したいことをF6680 DSPIに知らせます。 o パッシブ接続要求は,OSF/1アプリケーションがFACOMアプリ ケーションによって開始されたセッションをいつでもスター トできることをF6680 DSPIに知らせます。 _________________________________________________________________ 2.2 セッションとの接続 アクティブまたはパッシブ接続要求を出すには,OSF/1アプリケー ションは f6680_request_connectプロシージャを呼び出します。 入力パラメータには,アプリケーションがF6680 DSPIに渡す次の ような情報が入っています。 o アクティブ/パッシブ接続指示 アクティブ接続要求なのか,パッシブ接続要求なのかを示す 値。 o モード・タイプ指示 データ・ストリーム・モード接続なのか,フィールド・モー ド接続なのかを示す値。データ・ストリーム・モードについ ては第2.4節に,フィールド・モードについては第2.5節に説 明があります。 o ゲートウェイ・ノード名 OSF/1アプリケーションがセッションを確立するのに使用す るゲートウェイ・ノードの名前。 o FACOMアクセス情報 この省略可能なパラメータは,FACOMホストにアクセスする のに必要な省略時の情報リストに関連付けられた識別子で す。これが省略されているときは,パラメータ・リストは必 要な値を明示的に指定しなければなりません。アクセス名と FACOMアクセス情報について詳しくは,第3.2節を参照してく ださい。 o ブロック・モードまたは非ブロック・モード 2-2 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.2セッションとの接続 アプリケーションは,ブロック・モードで動作しているの か,非ブロック・モードで動作しているのかを示さなくては なりません。 f6680_request_connectプロシージャの出力パラメータには, FACOMシステムから次の情報を受信するロケーションが入っていま す。 o セッション識別子 F6680 DSPIがセッションに割り当てたユニークな識別子を受 信するロケーション。アプリケーションがこのセッション上 での拡張データ・ストリームの送受信,シグナル要求の送 信,セッションの終了を要求するたびに,呼び出し時のパラ メータ・リストにセッション識別子を入れなくてはなりませ ん。 o ステータス・ベクタ F6680 DSPIがユーザに完全なステータス情報を提供するた めにOSF/1アプリケーションが割り当てるデータ・タイプ STATUS_RTNとサイズF6680_C_SV_SIZEのベクタ。詳しくは, 第3.1.2項を参照してください。 f6680_request_connectプロシージャのパラメータ・リストは,第 5章を参照してください。 2.2.1 セッションへのアクティブ接続の要求 セッションの典型的なアクティブ要求は,次のようにして行われ ます(図 2-1を参照)。 1. OSF/1アプリケーションがf6680_request_connectプロシージ ャを呼び出し,アクティブ要求指示を設定して,他の必須パ ラメータを提供する。 2. F6680 DSPIが接続要求をDEC SNA Gatewayに送信する。 3. ゲートウェイがINITS要求をSSCPに送信する。SSCPはPLUに知 らせる。 4. PLUがBIND要求をゲートウェイに送信する。 F6680 DSPIの使用方法 2-3 F6680 DSPIの使用方法 2.2セッションとの接続 5. ゲートウェイがBIND要求をF6680 DSPIに送信する。F6680 DSPIはBINDを調べて,セッションを受け入れ,応答をゲート ウェイに送信する。 6. ゲートウェイが肯定応答をPLUに送信する。 7. F6680 DSPIは,ステータス・ベクタにステータスを設定して ユーザに制御を戻すことによって,接続要求を完了する。 図 2-1 An Active Connect Request 2.2.2 セッションへのパッシブ接続の要求 セッションの典型的なパッシブ要求は,次のようにして行われま す。 1. OSF/1アプリケーションがf6680_request_connectプロシージ ャを呼び出し,パッシブ要求指示を設定して,他の必須パラ メータを提供する。 2. F6680 DSPIがDEC SNA Gatewayを介してFACOMホストとの SSCP-LUセッションを確立してから,制御をOSF/1アプリケー ションに戻す。 3. OSF/1アプリケーションがUSS画面を受信するためにNOTIFY OFFLINEとNOTIFY ONLINEをFACOMホストに送信するか,また はPLUからのバインドを待つ。 4. OSF/1アプリケーションがUSS画面を受信することを選択した 場合には,ここでFACOMのアプリケーションを選択する。 5. ある時点で,PLUがBIND要求をゲートウェイに送信する。 6. ゲートウェイがBIND要求をF6680 DSPIに送信する。F6680 DSPIは,BIND要求を調べてセッションを受け入れ,ゲートウ ェイに知らせる。 7. ゲートウェイが肯定応答をPLUに送信する。 2-4 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.2セッションとの接続 8. F6680 DSPIは,ステータス・ベクタにステータスを設定して OSF/1アプリケーションに制御を戻すことによって,接続要 求を完了する。 _________________________________________________________________ 2.3 接続モードの指定方法 F6680 DSPIでは,OSF/1アプリケーションとFACOMアプリケーショ ン・サブシステムとの間に確立されるセッションに,データ・ス トリーム・モードとフィールド・モードの2つの接続モードを用意 しています。 o データ・ストリーム・モードでは(本書では,ストリーム・ モードと呼ぶことが多い),OSF/1アプリケーションとアプ リケーション・サブシステムが完全な6680拡張データ・スト リームを交換します。データ・ストリーム・モードについて は,第2.4節で説明します。 o フィールド・モードでは,OSF/1アプリケーションとアプリ ケーション・サブシステムは,各種のデータ・フィールド から構成される仮想画面イメージの形式でデータを交換し ます。フィールド・モードについては,第2.5節で説明しま す。 _________________________________________________________________ 2.4 データ・ストリーム・モード FACOM社は完全な6680拡張データ・ストリームを,通常は完全な画 面バッファを形成するアプリケーション・データ,指令,構造化 フィールド機能,副指令,制御情報のシーケンスとして定義して います。完全なストリームは,クラスタ・コントローラとホスト 間で送信されます。OSF/1アプリケーションは,6680データ・スト リームの指令と副指令を解析します。 6680拡張データ・ストリームをFACOMホストとの間で交換するため にセッションを確立するには,OSF/1アプリケーションは,f6680_ request_connectプロシージャを呼び出して,パラメータ・リスト の接続モード指示をデータ・ストリーム・モードに設定します。 一度セッションが確立されれば,OSF/1アプリケーションはF6680 DSPIによって提供されるプロシージャを呼び出すことにより, 6680拡張データ・ストリームを送受信することができます。 F6680 DSPIの使用方法 2-5 F6680 DSPIの使用方法 2.4データ・ストリーム・モード 2.4.1 6680データ・ストリームの送信方法 6680データ・ストリームを送信するには,OSF/1アプリケーショ ンは,f6680_transmit_stream プロシージャを呼び出してセッシ ョンを指定し,完全なまたは部分的なデータ・ストリームが入っ ているバッファを指定します。OSF/1アプリケーションは,FNAヘ ッダ情報用にバッファの先頭に余裕を残しておかなくてはなりま せん。この時残さなければならない予備のバイト数は,シンボル FNA_C_HDRSIZEによって定義されます。 o OSF/1アプリケシーョンが,バッファに完全なデータ・ス トリームが入っていることを示している場合には,F6680 DSPIがデータを送信して,OSF/1アプリケーションのturn to sendを解除します。 o アプリケシーョンが部分的なデータ・ストリームしかもたな い場合には,F6680 DSPIはデータを送信しますが,OSF/1ア プリケーションがFACOMホストへデータを送る為のturn to sendは,解除されません。 プロシージャが完了すれば,バッファはただちに再使用できま す。 通常のLUタイプ2の通信では,OSF/1アプリケーションとFACOMアプ リケーション・サブシステムはデータ・ストリームの送信,受信を 毎回交替します。ただし,場合によっては,OSF/1アプリケーショ ンが2つ以上の連続したストリームを送信しなければならないこと があります。もしOSF/1アプリケーションがturn to sendを解除し てしまった場合,アプリケーションはさらに別のストリームを送 信することを次のいずれかの方法で要求できます。 o 最後の送信が終了したときにステータスがF6680_C_OKで,か つSDB構造のSENDステートがF6680_C_CAN_SENDの場合には, OSF/1アプリケーションは別のストリームを送信できます。 o 最後の送信が終了したときにステータスがF6680_C_OKの場合 には,今度はFACOMアプリケーションがデータをOSF/1アプリ ケーションに送信する番です。OSF/1アプリケーションは, FACOMアプリケーションに対して,データを送信する順番を 譲るようSIGNAL要求をFACOMホストに送信できます。 2-6 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.4データ・ストリーム・モード 2番目の場合には,FACOMアプリケーションはSIGNAL要求を引き 受ける必要はありません。したがって,F6680 DSPIは,f6680_ transmit_fna_cmd プロシージャ・コールから戻る前に誰が送信で きるのかを示すフラグの受信を待っていません。このため,OSF/1 アプリケーションには,FACOMアプリケーションがSIGNAL要求を受 け入れたのか,送信の順番を譲ったのかが知らされません。アプ リケーションは,順番を待たずに送信しようとすると,常にエラ ーを受け取りますので,SIGNAL要求を送信したら,アプリケーシ ョンは受信を呼び出して,最終的にF6680_C_OKで終了するように しなければなりません。 2.4.2 6680拡張データ・ストリームの受信方法 6680拡張データ・ストリームを受信するには,OSF/1アプリケーシ ョンは,f6680_receive_stream プロシージャを呼び出して,セッ ションを指定します。F6680 DSPIによって受信用バッファが割り 当てられるため,アプリケーションは,受信用バッファのアドレ スを得るためのバッファ・ポインタ・アドレスをF6680 DSPIに渡 さなくてはなりません。 最も簡単な例では,F6680 DSPIは,受信したデータ・ストリー ムのアドレスをパラメータを介してアプリケーションに返し, 完全な6680データ・ストリームが受信されたことを示すステー タス・コードを返します。受信したデータ・ストリームの最初の FNA_C_HDRSIZEバイトにはFNAヘッダ情報が入っていますが,ユー ザはこれを無視できます。 F6680 DSPIには,ブロッキングと非ブロッキングの2つの受信タ イプがあります。OSF/1アプリケーションがブロック・モードを 指定しているときには,何らかのデータを受信するまで受信は 返りません。OSF/1アプリケーションが非ブロック・モードを指 定しているときには,F6680 DSPIは,受信するデータがなけれ ば,F6680_S_OK_SELECTを返します。この場合,アプリケーショ ンは,F6680 DSPIがデータ・ストリームを受信するまで,さらに f6680_receive_streamプロシージャを呼び出さなくてはなりませ ん。 F6680 DSPIの使用方法 2-7 F6680 DSPIの使用方法 2.4データ・ストリーム・モード 2.4.2.1 ストリームの確認応答 一度完全なストリームが受信されたら,OSF/1アプリケーションは 受信したデータが受諾可能か受諾不可能かをFACOMアプリケーショ ン・サブシステムに知らせなくてはなりません。このためには, OSF/1アプリケーションは f6680_acknowledgeプロシージャを呼び 出して,肯定または否定応答を指定します。 アプリケーションが,f6680_acknowledgeプロシージャを呼び出す 前に f6680_transmit_streamプロシージャを呼び出すと,F6680 DSPIは 暗黙の肯定応答を実行します。つまり,このプロシージャを使用 する必要があるのは,受信したストリームに否定応答するときだ けです。 2.4.2.2 複数の連続ストリームの送信要求を受信した場合 通常のLUタイプ2の通信では,OSF/1アプリケーションとFACOMアプ リケーション・サブシステムは,データ・ストリームの送信,受信 を毎回交替します。 ただし,FACOMサブシステムは,いつでもデータ・ストリームを送 信した後ただちに別のデータ・ストリームを送信する要求をF6680 DSPIに出すことができます。FACOMアプリケーションが送信の順番 を譲ってしまった時には,次のいずれかの方法でさらに別のスト リームを送信するように要求できます。 o 最後の送受信が完了したときにステータスがF6680_C_OK,送 信ステートがF6680_C_ CAN_SEND,SDB構造のブラケット・ス テートがF6680_C_BETBの場合には,FACOMアプリケーション は別のストリームの送信をするためにBIDできます。 F6680 DSPIは,BID要求を受け取ると,データをいつ受信し たかをOSF/1アプリケーションに通知します。OSF/1アプリケ ーションは,BID要求を受信する前に f6680_lock_screenプ ロシージャを呼び出すことにより,F6680 DSPIにBIDを拒否 させることができます。f6680_lock_screenを使用すると, OSF/1アプリケーションは,OSF/1アプリケーションがデー タの送信準備をしている間にPLUがさらにデータを送信し ないようにできます。一度BID要求が受け入れられてしまう と,f6680_lock_screenプロシージャへのコールは効果がな くなります。 2-8 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.4データ・ストリーム・モード o 最後の受信が完了したときにステータスがF6680_OKの場合に は,今度はOSF/1アプリケーションが送信する番です。FACOM は,turn to sendを譲るようにOSF/1アプリケーションに求 めるSIGNAL要求を送信することができます。 SIGNAL要求を受信したときには,F6680 DSPIは要求を受け入れて FACOMアプリケーションにturn to sendを譲らなければなりませ ん。この場合,F6680 DSPIは,turn to sendを譲ってしまったこ とをOSF/1アプリケーションに通知します。OSF/1アプリケーショ ンは f6680_lock_screenプロシージャを呼び出すことができない ため,F6680 DSPIにSIGNAL要求を拒否させます。 _________________________________________________________________ 2.5 フィールド・モード フィールド・モードでは,F6680 DSPIは,文字ベクタ, Kモードベ クタ,属性ベクタの3つの表示ベクタを使用して,データを6680ブ ロック・モード画面イメージで表します。 ブロック・モード画面イメージは,1つ以上のフィールドから構 成されます。2つのベクタにはVT100タイプの端末上で6680ブロッ ク・モード画面イメージを生成するのに必要なすべての情報が入 っており,それらは仮想6680画面イメージを表しています。デー タ・ストリームにwrite structured fieldが入っている場合,そ れぞれのwrite structured fieldはコールバック・ルーチンを使 用してOSF/1アプリケーションとF6680 DSPI間で渡されます。コー ルバック・ルーチンについては,第3.3節を参照してください。 仮想6680画面イメージや構造化フィールドを送受信するための セッションを確立するには,OSF/1アプリケーションは,f6680_ request_connectプロシージャを呼び出して,パラメータ・リスト の中の接続モード指示をフィールド・モードに設定します。OSF/1 アプリケーションは,f6680_request_connectプロシージャを呼び 出す前に,文字ベクタ,属性ベクタ,ならびに次のデータ構造に メモリを割り当てなくてはなりません。 o スクリーン・ディスクリプタ・ブロック構造(SDB)。送受信 ステート,チェインニング,ブラケットステートなどのベク タについての情報を提供する。 o フィールド・ディスクリプタ・ブロック構造(FDB)。どのフ ィールドを読み取ったり書き込んだりするかを識別する。 F6680 DSPIの使用方法 2-9 F6680 DSPIの使用方法 2.5フィールド・モード o 端末特性ブロックのフラグと端末特性ブロック(TCB)。OSF/1 アプリケーションがFACOMホストへの照会応答についての情 報をF6680 DSPIに知らせるときに使用する。 F6680 DSPIは,アプリケーションによって作成されたデータ構 造を f6680_request_connectプロシージャの一部として初期化し ます。OSF/1アプリケーションは,このプロシージャを呼び出す 前に,sdb.scr_sizeを文字および属性ベクタのサイズに初期化し て,F6680 DSPIが画面イメージとして割り当てるためのメモリ量 を確保できるようにもします。 セッションが確立されると通常,OSF/1アプリケーションは,次の 一連の操作を要求するコールを出します。 o FACOMホストのアプリケーション・サブシステムから6680画 面イメージを受信する。 o 画面イメージの中のフィールドを読み取る。 o 画面イメージの中のフィールドに書き込む。 o 画面イメージをFACOMホストに送信する。 2.5.1 文字ベクタ 文字ベクタには,画面イメージに表示される文字に対応する一連 の8ビットEBCDIC文字が入っています。それぞれの文字には,画面 位置に対応するベクタ・アドレスが割り当てられています。 図 2-2 文字ベクタ ________________________ 注意 ________________________ 画面位置は,通常,0から始まる列と桁から成るxとyの座標 によって記述されます。これらの座標をベクタ・アドレスに 変換するには,次の公式を使用します。 i = cx+y 2-10 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.5フィールド・モード ここで,iはベクタ位置を,cはディスプレイ画面の桁数を表 しています。たとえば,80桁からなるディスプレイ画面で は,列4(x=4),桁21(y=21)にある文字は,ベクタ位置で は80×4+21,すなわち341となります。 ______________________________________________________ 2.5.2 Kモードベクタ Kモードベクタには,画面イメージに表示される文字が1バイトコ ードなのか2バイトコードなのかを判別するための情報が格納さ れます。それぞれの文字の画面位置に対応するアドレスに, o 表示されている文字が1バイトコードならば'A' o 表示されている文字が2バイトコードの1バイト目ならば 'K' o 表示されている文字が2バイトコードの2バイト目ならば 'k' が格納されています。 2.5.3 拡張属性ベクタ 属性ベクタは,6680拡張データ・ストリームの中の拡張フィール ド属性構造を使用してF6680 DSPIによって構築されます。属性ベ クタは,ext_attr_def構造の配列から構成されます。それぞれの エントリは,文字ベクタの中の対応する文字の属性を表していま す。たとえば,データ構造の中の各フィールドは,文字がフィー ルドの先頭に位置しているかどうか,保護か,無保護か,FACOMホ ストまたはOSF/1アプリケーションによって変更されたかどうかを 表しています。 属性ベクタは,次のようなフィールドの拡張属性も定義していま す。 o 拡張強調表示 o 拡張カラー o フィールド・バリデーション F6680 DSPIの使用方法 2-11 F6680 DSPIの使用方法 2.5フィールド・モード 以下の4つの項で示す表は,拡張強調表示,拡張カラー,フィール ド・バリデーションの各属性に指定できる値を示しています。 例 2-1は,拡張フィールド属性データ構造を示しています。 例 2-1 拡張フィールド属性データ構造 /* * Extended Field Attribute Definition */ typedef unsigned int BIT; typedef unsigned char UINT8; struct ext_attr_def { BIT attr_mdt : 1; /* Modified Data Tag */ BIT attr_fil1 : 1; /* Reserved Field */ BIT attr_dsp : 2; /* Display */ BIT attr_num : 1; /* Numeric Field */ BIT attr_pro : 1; /* Protected Field */ BIT attr_grh : 2; /* graphic converter */ BIT attr_mbh : 1; /* Modified by Host */ BIT attr_sof : 1; /* Start of field */ BIT attr_ext : 1; /* have the ext attrs changed */ BIT filler : 5; /* Reserved */ /* character attributes */ UINT8 attr_hlt; /* extended highlighting */ UINT8 attr_fcol; /* forground color */ union { struct eattr_bits attr_bits; UINT8 attr_fbit; } attr_fb; /* field bits */ union { struct eattr_bitv attr_bitv; UINT8 attr_fvld; } attr_fv; /* field validataion */ UINT8 attr_filler1; /* reserved */ UINT8 attr_filler2; /* reserved */ }; 2-12 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.5フィールド・モード 2.5.3.1 拡張強調表示 この属性タイプは,フィールドまたは文字の強調表示属性を表し ます。表 2-1は,フィールド値とそれに関連する属性を示してい ます。 表 2-1 拡張強調表示設定 ___________________________________________________________ 値____________________拡張強調表示属性_____________________ F6680_C_DEF_HLT 省略時 F6680_C_DEF_NORMAL 普通輝度 F6680_C_BLINK 明滅 F6680_C_REVERSE 反転表示 F6680_C_UNDRSCR_______下線_________________________________ 2.5.3.2 拡張カラー この属性タイプは,フィールドまたは文字のカラー属性を表して います。表 2-2は,フィールド値とそれに関連する属性を示して います。 表 2-2 カラー設定 ___________________________________________________________ 値____________________拡張カラー属性_______________________ F6680_C_DEF_COL 省略時 F6680_C_BLUE 青 F6680_C_RED 赤 F6680_C_PINK ピンク F6680_C_GREEN 緑 ___________________________________________________________ (次ページに続く) F6680 DSPIの使用方法 2-13 F6680 DSPIの使用方法 2.5フィールド・モード 表 2-2 (続き) カラー設定 ___________________________________________________________ 値____________________拡張カラー属性_______________________ F6680_C_SKYBLUE 空色 F6680_C_YELLOW 黄 F6680_C_WHITE_________白___________________________________ 2.5.3.3 フィールド・バリデーション この属性は,主にユーザの入力,ホストへの送信について制御する ための情報を表します。フィールド・バリデーションに関する拡 張属性は,以下に示すマクロを使用して参照してください。いずれ も, TRUEまたはFALSEの値をとります。 表 2-3 フィールド・バリデーション ___________________________________________________________ 値____________________属性_________________________________ ATTR_TRIGGER トリガフィールド ATTR_MAN_ENTRY 入力必須フィールド ATTR_MAND_FILL 完全入力フィールド ATTR_KANJI 漢字フィールド ATTR_AUTO_ENTER オートエンターフィールド ATTR_EXIT_REQUEST 脱出要求フィールド ATTR_KANA_____________カナフィールド_______________________ プログラム例: 2-14 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.5フィールド・モード struct ext_attr_def attr[F6680_C_DEF_SCR_SIZE]; : : if (attr[n].ATTR_TRIGGER == TRUE) { /* トリガフィールドの処理 */ : : } 2.5.4 スクリーン・ディスクリプタ・ブロック OSF/1アプリケーションは,要求されたフィールド・モード・セッ ションごとに,スクリーン・ディスクリプタ・ブロック(SDB)とい われるデータ構造を割り当てます。F6680 DSPIは,このブロック を使用することにより,表示ベクタ中にある6680画面イメージに ついての情報をアプリケーションに提供します。それぞれのSDB構 成要素について以下に簡単に説明します。 o Current cursor address−OSF/1アプリケーションが f6680_ read_fieldと f6680_write_fieldプロシージャを使用しているときには, F6680 DSPIはこのアドレスを自動的に更新します。OSF/1ア プリケーションが表示ベクタを直接に変更する場合は,カ ーソル・アドレスも更新しなければなりません。最初に, FACOMシステムはこのフィールドの値をデータ・ストリーム 中のInsert Cursor(IC)副指令によって設定します。 o Current screen size−ディスプレイの全文字数。 o Default columns−BIND時に指定される省略時の桁数。 o Default rows−BIND時に指定される省略時の列数。 o Alternate columns−BIND時に指定される代替桁数。 o Alternate rows−BIND時に指定される代替列数。 o Current columns−ディスプレイの現在の全桁数。 o Current rows−ディスプレイの現在の全列数。 o Write control character−6680データ・ストリームからの 書込み制御文字。この値は,アプリケーションが変更しては なりません。 F6680 DSPIの使用方法 2-15 F6680 DSPIの使用方法 2.5フィールド・モード o Flags that describe the action that affected the screen image−実際のデータ構造は付録Fに示してありま す。 o Send state−現在のセッション送信状態。 o Chain state−受信チェイン状態。 o Bracket state−現在のブラケット状態。 o Screen ownership−画面の所有権。 o Character vector−文字ベクタへのポインタ。 o Attribute vector−属性ベクタへのポインタ。F6680 DSPIに よって予約されています。 o Extended attribute vector−拡張属性ベクタへのポイン タ。 o Field desciptor block−フィールド・ディスクリプタ・ブ ロック(FDB)へのポインタ。 o Character sets−文字セット。 SDBを構成するフィールドの実際のデータ構造は,付録 Eに示して あります。 2-16 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.5フィールド・モード 2.5.5 書込み制御文字データ構造 書込み制御文字(WCC)は,端末アラームを鳴らしたりキーボードを 使用可能にしたりする機能を実行するのに使用されます。図 2-3 は,WCCデータ構造を示しています。詳細は,付録 Eを参照してく ださい。 図 2-3 WCCデータ構造 2.5.6 6680画面イメージの受信方法 OSF/1システム・アプリケーションは,f6680_receive_screenプロ シージャを呼び出して,FACOMホストから仮想6680画面イメージと write structured fieldデータを受信します。F6680 DSPIは,セ ッションに指定された表示ベクタに完全な仮想画面イメージを配 置することによってこれに応答します。構造化フィールドが関係 するときには,OSF/1アプリケーションはwrite structured field を受信して処理するためのコールバック・ルーチンを提供しなけ ればなりません。F6680 DSPIは,セッションに指定された表示ベ クタに完全な仮想画面イメージを配置します。 表示ベクタが画面イメージを受信している間は,ユーザがベクタ の中の情報を変更できないようにSDB構造のフラグ・フィールドに 入力禁止フラグが設定されます。F6680 DSPIが表示ベクタに画面 イメージを置くと,OSF/1アプリケーションは,表示ベクタの中の フィールドを読み取ったり変更したりできるようになります。 f6680_receive_stream と同様に,f6680_receive_screen プロシ ージャもブロックおよび非ブロックの両方の受信モードをサポー トします。 ________________________ 注意 ________________________ f6680_read_fieldとf6680_write_fieldプロシージャは, キーボード・リストア・ビットがオフに設定されていると きには,ベクタ変更を許可しません。f6680_read_fieldと F6680 DSPIの使用方法 2-17 F6680 DSPIの使用方法 2.5フィールド・モード f6680_write_fieldを使用しない場合には,OSF/1アプリケー ションがこの機能を行う必要があります。たとえば,データ の受信が続くときには,ユーザは,不完全な画面を変更する ことになります。 ______________________________________________________ _________________________________________________________________ 2.6 6680画面イメージからフィールドを検索する方法 6680仮想画面イメージからフィールドを検索するには,OSF/1ア プリケーションは,f6680_read_field プロシージャをフィール ド・ディスクリプタ・ブロック(FDB)とともに呼び出します。FDB は,f6680_request_connectプロシージャによって指定されてお り,セッション全体で使用されます。FDBは,ターゲット・フィー ルドのオフセット・アドレス,F6680 DSPIがフィールドの位置を 検索するのに使用する属性,希望する操作を指定するシンボル等 を格納するために使用されます。OSF/1アプリケーションは,検索 によって得られたデータ用のバッファも指定します。 付録 Eの例 E-8に,フィールド・ディスクリプタ・データ・ブロ ックの構造を示します。 2.6.1 FDBのフィールド FDB中のフィールドについて以下に説明します。 o Requested extended attributes value−このフィールドは Requested attributes maskフィールドとともに働きます。 アプリケーションは,検索したい属性フィールドをFDBに設 定します。たとえば,数字用フィールドを探すには,OSF/1 アプリケーションはfield_def.req_ext_attrをセットしま す。 o Requested extended attributes mask−このフィールドは Requested attributes valueフィールドと一緒に働きます。 アプリケーションがどの属性をチェックしようとしているの かを指定するのに使用されます。 2-18 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 このフィールドがセットされていると,F6680 DSPIは, Requested attributes valueフィールドに指定された値と該 当する属性とを比較します。このフィールドがクリアされて いると,F6680 DSPIは該当する属性を無視します。たとえ ば,f6680.hファイルを使用して定義されたFDBとともにC言 語で無保護数字フィールドを指定するには,要求する値およ び属性フィールドを次のように設定します。 field_def.ext_attr_mask.attr_pro = TRUE; field_def.req_ext_attr.attr_pro = FALSE; field_def.ext_attr_mask.attr_num = TRUE; field_def.req_ext_attr.attr_num = TRUE; この例では,マスクは,ユーザが数字および保護属性のみに 関心をもっていることを指定し,値は,数字属性フラグをセ ットして,保護属性フラグをクリアすることを指定していま す。 Requested extended attribute maskをマスクする時は,各 拡張属性によってf6680.hで定義されている以下の定数を使 用してください。 表 2-4 拡張属性とマスク定数 ___________________________________________________________ FDBフィー 拡張属性__________ルド________マスク定数___________________ 拡張カラー attr_fcol MASK (or 0xFF) 拡張強調表示 attr_hlt MASK (or 0xFF) 変更フィールド____attr_ext____MASK_(or_0xFF)_____________ o Requested operation−アプリケーションが実行したい操作 を示しています。表 2-5に,FDBの操作選択フィールドに指 定できるシンボルとその意味を示します。 o Requested displacement−フィールドの検索や読取りを始め たいオフセット。 o Reserved for user−ポインタやカウンタなどの情報を入れ ることのできるユーザ用に予約されたフィールド。 o Actual attributes−読み取った,または書き込もうとして いるフィールドの実際の基本属性と拡張属性。 F6680 DSPIの使用方法 2-19 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 o Actual displacement−検索したり読み取ったりしたフィー ルドの実際のオフセットがここに返されます。 o Byte count−フィールドから読み取った,またはフィールド に書き込もうとしている実際のバイト数。 o Last-field-read displacement−F6680 DSPIによって読み取 られた最後のフィールドのオフセット。このフィールドは, sel_read_nextまたはsel_search_next操作の検索操作に使用 されます。 表 2-5は,FDBの操作選択フィールドのシンボルとそれに対応する 意味を示しています。FDBの実際のデータ構造については,付録 E を参照してください。 表 2-5 フィールド・ディスクリプタ・ブロックの操作選択フィー ルドのシンボルと意味 ___________________________________________________________ シンボル__________________意味_____________________________ F6680_C_READ 指定したオフセットを読み取る F6680_C_SEARCH 指定したオフセットから検索する F6680_C_READ_NEXT 次のフィールドを読み取る F6680_C_SEARCH_NEXT_______次のフィールドから検索する_______ 2.6.2 読取り操作と検索操作の指定方法 OSF/1アプリケーションは,FDBを使用して,フィールドを検索す るために次のような読み取り操作と検索操作を指定できます。指 定されたdisplacementが常にフィールドの属性文字のアドレスに なるようにします。 o 指定されたオフセット・アドレスから始まるフィールドを読 み取る 2-20 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 OSF/1アプリケーションは,オペレーションを指定するため に,Requested operationフィールドがreadに設定されたオ フセット・アドレスを含むFDBを提供します。オフセットが フィールドの先頭位置である場合には,F6680 DSPIはそのフ ィールドの内容を指定されたバッファに返します。オフセッ トがフィールドの先頭位置でない場合には,F6680 DSPIは F6680_S_BADOFFSETステータス値を返します。 o フィールドが指定された属性をもつときに,指定されたオフ セット・アドレスから始まるフィールドを読み取る OSF/1アプリケーションは,オフセット・アドレス,属性の マスクと値,readに設定されたRequested operationフィー ルドが指定されているFDBを提供することによって,操作を 指定します。オフセットがフィールドの先頭位置であり,な おかつフィールドが指定された属性をもつ場合には,F6680 DSPIはそのフィールドをバッファに返します。オフセットが フィールドの先頭に位置していない場合には,F6680 DSPIは F6680_S_BADOFFSETステータス値を返します。フィールドが 指定された属性をもたない場合には,F6680 DSPIはF6680_S_ NOFIELDステータス値を返します。 o 次のフィールドを読み取る OSF/1アプリケーションは,操作を指定するためにRequested operationフィールド read_nextを設定したFDBを提供しま す。F6680 DSPIは次のフィールドを返します。最後に読み 取ったフィールドの後にフィールドがないときには,F6680 DSPIはF6680_S_NOFIELDステータス値を返します。 o フィールドが指定された属性をもつ場合に,次のフィールド を読み取る OSF/1アプリケーションは,Requested operationフィールド がread_nextに設定され,属性のマスクと値が指定されてい るFDBを提供して,操作を指定します。次のフィールドが指 定された属性をもつときには,F6680 DSPIはそのフィールド を返します。そうでない場合には,F6680 DSPIはF6680_S_ NOFIELDステータス値を返します。 o 指定されたオフセット・アドレスからフィールドの検索を始 める F6680 DSPIの使用方法 2-21 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 OSF/1アプリケーションは,Requested operationフィールド がsearchに設定され,オフセット・アドレスが指定されてい るFDBを提供して,操作を指定します。F6680 DSPIは,フィ ールドの先頭がみつかるまでこのオフセットから順に画面イ メージを検索します。そして見つかったフィールドをOSF/1 アプリケーションに返します。指定されたオフセットが範囲 外の場合には,F6680 DSPIはF6680_S_BADOFFSETステータス 値を返します。指定されたオフセットの後に始まるフィール ドがない場合には,F6680_S_NOFIELDステータス値を返しま す。 o 指定されたオフセットから順に,指定された属性をもつフィ ールドの検索する OSF/1アプリケーションは,オフセット・アドレス,属性 のマスクと値,searchに設定されたRequested operationフ ィールドが指定されたFDBを提供して,操作を指定します。 F6680 DSPIは,指定されたオフセットから順に,画面イメー ジを検索して指定された属性をもつフィールドを探します。 指定されたフィールドがみつかると,それをOSF/1アプリケ ーションに返します。指定されたオフセットが範囲外にある 場合には,F6680 DSPIはF6680_S_BADOFFSETステータス値を 返します。F6680 DSPIがフィールドをみつけられない場合に は,F6680_S_NOFIELDステータス値を返します。 o 最後に読み取ったフィールド以降のフィールドを検索する OSF/1アプリケーションは,Requested operationフィールド がsearch_nextに設定されたFDBを提供して操作を指定しま す。F6680 DSPIは,最後に読み取ったフィールド以降のフィ ールドを順次検索します。画面イメージの中で,最後に読 み取ったフィールドの後に別のフィールドが存在する場合 には,F6680 DSPIはそれをOSF/1アプリケーションに返しま す。そうでない場合には,F6680_S_NOFIELDステータス値を 返します。 o 最後に読み取ったフィールド以降に指定された属性をもつフ ィールドを検索する OSF/1アプリケーションは,属性のマスクと値,search_next に設定されたRequested operationフィールドが指定されて いるFDBを提供して,操作を指定します。F6680 DSPIは,最 後に読み取ったフィールド以降に指定された属性をもつフィ ールドを順次検索します。画面イメージにこのようなフィー ルドが存在するときには,F6680 DSPIはそれを返します。そ 2-22 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 うでない場合には,F6680_S_NOFIELDステータス値を返しま す。 2.6.3 FDBの使用例(1) 次に示すCプログラミングの例は,FDBの使用方法を示していま す。この項では,FDBを使用して典型的なFACOMアプリケーション 画面からフィールドを取り出す方法を示します。 プログラム例は,FACOMとのセッションを確立してFDBを提供する ことから始まり,次に最初の無保護フィールドを探します。この サンプルOSF/1プログラムは AMNU FACOMトランザクションを書き 込みます。これが終了すると,画面データ全体をFACOMホストに送 信します。ホストは,プログラムが操作の選択を行う為の情報を 画面に表示して応答します。プログラムは,最初の無保護フィー ルドを検索し,次にABRW browseオプションを要求してから次の無 保護フィールドを検索し,トランザクション番号をそのフィール ドに書き込みます。FACOMホストは,browse画面を表示してこれに 応答します。 ヘッダ・ファイルを読み込む プログラムは,最初に必要なヘッダ・ファイルを読み込みます。 #include #include フィールド・モード接続を要求する 次に,フィールド・モード接続要求を出します。NULLパラメータ は明示的なアクセス・パラメータなので,代わりにアクセス名が 使用されます。 F6680 DSPIの使用方法 2-23 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 . . . main() { . . . return_code = f6680_request_connect (&session_id, F6680_C_ACT, F6680_C_FIELD_MODE, F6680_C_BLOCK, transport, node_name, acc_name, NULL, /* LU name */ NULL, /* PLU name */ NULL, /* log mode */ NULL, /* user data */ NULL, /* authorization password */ char_vec, attr_vec, kmode_vec, &fdb, &sdb, status_ret); . . . AMNUトランザクション要求をFACOMホストに送信する アプリケーションは,ここで,後述のwrite_next_fieldルーチン を呼び出して画面上に"AMNU" を書き込んでから,トランザクショ ン名(AMNU)をFACOMホストに送信します。図 2-4は,この時点で AMNUトランザクション画面がどのように表示されるかを示してい ます。 strcpy (field_data,"AMNU"); write_next_field (session_id,field_data,&fdb); 2-24 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 return_code = f6680_transmit_screen (session_id, idx, F6680_C_BLOCK, F6680_C_AID_ENTER, status_ret, NULL); . . . 図 2-4 AMNUトランザクション画面 操作員画面を受信する 次の一連のソースコードによって,AMNU操作員画面を受信しま す。図 2-5を参照してください。 return_code = f6680_receive_screen (session_id, &idx, F6680_C_BLOCK, status_ret, NULL); . . . 図 2-5 AMNU操作員画面 browse操作を要求する F6680 DSPIがこの画面を受信すると,アプリケーションはbrowse 操作を要求します。write_next_fieldルーチンを呼び出すことに F6680 DSPIの使用方法 2-25 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 よって操作員の画面にある最初の無保護フィールドに"ABRW"を書 き込んでから,次の無保護フーィルドに"000001"を書込みます。 strcpy (field_data,"ABRW"); write_next_field (session_id,field_data,&fdb); /* * Write "000001" to the next unprotected field. */ strcpy (field_data,"000001"); write_next_field (session_id,field_data,&fdb); 図 2-6 オプション画面上のトランザクション・ナンバー・フィー ルド トランザクション画面をFACOMホストに送信する 次に,アプリケーションは,図 2-6のようなトランザクション画 面をFACOMホストに送信します。 return_code = f6680_transmit_screen (session_id, idx, F6680_C_BLOCK, F6680_C_AID_ENTER, status_ret, NULL); . . . FACOMホストは,図 2-7のようなデータ画面をF6680 DSPIに送信す ることによって応答します。 2-26 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 return_code = f6680_receive_screen (session_id, &idx, F6680_C_BLOCK, status_ret, NULL); . . . 図 2-7 AMNUファイルbrowse画面 F6680 DSPIの使用方法 2-27 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 read_fieldルーチンを使用してフィールドを検索する アプリケーションは,read_fieldルーチンを呼び出して,画面上 のすべての保護フィールドを検索します。この時点で,AMNU画面 上のフィールドはすべて保護フィールドのため,ルーチンはすべ てのフィールドを検索することができます。FACOMホストから受信 したデータはすべて EBCDIC形式になっています。アプリケーショ ンは,fna_eb2asを呼び出して,データを ASCIIに変換します。変 換された後,データが画面上に表示されます。 fdb.req_ext_attr.attr_pro = 1; fdb.ext_attr_mask.attr_pro = 1; fdb.op.req_op = F6680_C_SEARCH_NEXT; for (i=0; i<20; i++) { length = 255; return_code = f6680_read_field (session_id, field_data,length,status_ret); . . . return_code = fna_eb2as (field_data,field_data,length); . . . } return_code = f6680_request_disconnect (session_id, F6680_C_BLOCK, status_ret); . . . } write_next_fieldルーチンを使用してデータを書き込む このプログラム例の残りの部分では,プログラムの始めの方で 呼び出されていたwrite_next_fieldルーチンのコードを示してい ます。アプリケーションは,最初にf6680_read_fieldを呼び出し て,FDBポインタを次の無保護フィールドの位置に置きます。次に データをASCIIからEBCD ICに変換し,f6680_write_fieldを呼び出 してデータを画面イメージに書き込みます。 2-28 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 void write_next_field (session_id,data,fdb) SESSION_ID_DEF session_id; char *data; struct field_def *fdb; { STATUS_RTN status_ret[F6680_C_SV_SIZE]; STATUS_RTN return_code; int length; char tmp_buf[128]; fdb->req_ext_attr.attr_pro = 0; fdb->op.req_op = F6680_C_SEARCH_NEXT; fdb->ext_attr_mask.attr_pro = 1; length = 0; return_code = f6680_read_field (session_id, tmp_buf, length, status_ret); if (return_code != F6680_S_OK && return_code != F6680_S_OK_TRUNC) { error_handler (session_id,status_ret); exit(1); } fna_as2eb (data,data,strlen(data)); return_code = f6680_write_field(session_id, data, strlen(data), status_ret); if (return_code != F6680_S_OK && return_code != f6680_S_OK_TRUNC) { error_handler (session_id,status_ret); exit(1); } } /* write_next_field */ F6680 DSPIの使用方法 2-29 F6680 DSPIの使用方法 2.6 6680画面イメージからフィールドを検索する方法 プログラム全体のテキスト プログラムの全テキストは,オンラインで /usr/i18n/usr/examples/f6680/amnu.c にあります。 2.6.4 6680画面イメージへフィールドを書き込む 表示ベクタにフィールドを書き込むには,OSF/1アプリケーション は f6680_write_field プロシージャを呼び出してフィールドが入 っているバッファを指定し,フィールド・ディスクリプタ・ブロ ックを使用してacutual displacementフィールド(field_def.act_ disp)にフィールドのアドレスを指定します。f6680_read_field プロシージャを使用すれば,f6680_write_fieldのFDBをセット アップすることができます。f6680_read_fieldプロシージャ は,f6680_write_fieldへの入力となる実際の属性と実際のオフセ ット値を設定します。F6680 DSPIは,指定されたフィールドが保 護されているか,異なるデータ・タイプでない限り,そのフィー ルドにバッファの内容を書き込みます。指定されたデータが画面 イメージの中のフィールドより大きい場合には,プロシージャは F6680_S_OK_TRUNCステータス値を返します。 _________________________________________________________________ 2.7 6680画面イメージを送信する方法 6680画面イメージをFACOMホストに送信するには,OSF/1アプリ ケーションは f6680_transmit_screenプロシージャを呼び出し てセッションを指定します。F6680 DSPIは,セッションに割り当 てられた表示ベクタの内容から6680データ・ストリームを構築し て,そのデータ・ストリームをFACOMホストに送信します。write structured fieldをFACOMホストに送信するには,アプリケーショ ンはコールバック・ルーチンを提供しなければなりません。コー ルバック・ルーチンによって,F6680 DSPIはホストに送信するイ ンバウンド構造化フィールドを構築することができます。 ________________________ 注意 ________________________ LU2セッションでは,通常,OSF/1アプリケーションは,画面 の受信と画面の送信を交互に行います。アプリケーションが 続けて2つの f6680_transmit_screen要求を出すと,F6680 DSPIは,送信する順番ではないことを示すステータス・メッ セージF6680_S_NYTXMITを戻します。OSF/1アプリケーション 2-30 F6680 DSPIの使用方法 F6680 DSPIの使用方法 2.7 6680画面イメージを送信する方法 は,第4章で説明する f6680_transmit_fna_cmdプロシージャ を使用して,OSF/1アプリケシーョンがもう一度送信できる ようにFACOMアプリケシーョンに要求することができます。 OSF/1アプリケーションは,次の f6680_transmit_screen を 出す前にFACOMアプリケシーョンが,誰が送信できるかを示 すフラグを返すのを待たなくてはなりません。 ______________________________________________________ _________________________________________________________________ 2.8 セッションの終了方法 LU-LUセッションを終了するために,OSF/1アプリケーションは, f6680_request_disconnectプロシージャを呼び出してセッション を指定します。 この呼び出しの結果,F6680 DSPIはセッションの終了を要求し, セッションに割り当てられたすべての資源の割り当てを解放し ます。f6680_request_disconnectプロシージャを呼び出すと, F6680 DSPIはTERM_SELFをFACOMシステムに送信し,その結果FACOM システム上にログ・メッセージが残されます。f6680_request_ disconnectプロシージャは,セッションを順番にシャットダウン したり,FACOMサブシステムをログオフしたりしません。アプリケ ーションが f6680_request_disconnectプロシージャを呼び出し たときにセッションがすでにアクティブでなくなっている場合に は,プロダクトは資源の割り当て解放だけを行います。 この時点で,OSF/1アプリケーションは,次にFACOMホストに接続 する前にこのセッションに割り当てたすべての資源(文字および 属性ベクタ,Kモードベクタ,SDB,FDBなど)の割り当てを解放し なければなりません。 F6680 DSPIの使用方法 2-31 3 _________________________________________________________________ F6680 DSPIの機能 F6680 DSPIは,アプリケーションの作成や実行を助ける次のよう な機能を備えています。 o ステータス情報を返す−第3.1節 o アクセス情報をFACOMホストに提供する−第3.2節 o OSF/1 6680インタフェース・コールバック機能を使用する− 第3.3節 o ブロックおよび非ブロック受信を使用する−第3.4節 このような機能を使用してOSF/1システム・アプリケシーョンを作 成する方法については,それぞれの項で説明します。 _________________________________________________________________ 3.1 リターン・ステータス情報 F6680 DSPIは,次のいずれかによってステータス・コードをOSF/1 アプリケーションに返すことができます。 o 関数の戻り値 o ステータス・ベクタ F6680 DSPIのプロシージャは,成功コードか情報またはエラー・ コードのいずれかの第1 レベルのステータス・コードを返しま す。エラー・コードの場合,F6680 DSPIは,ステータス・ベクタ を介してさらに多くのステータス情報をOSF/1アプリケーションに 提供します。たとえば,接続タイプのパラメータに不適切な値を 指定して, OSF/1アプリケーションが接続ルーチンを呼び出した 時,F6680 DSPIが戻り値としてF6680_S_CONFAI(接続失敗)を受 け取ったとします。この場合,F6680 DSPIはステータス・ベクタ にステータス・コードF6680_S_ILLCONTYP(非合法接続タイプ)を 設定します。 F6680 DSPIの機能 3-1 F6680 DSPIの機能 3.1リターン・ステータス情報 F6680 DSPIによって返されるステータス・コードについては,付 録 Bと付録 Dを参照してください。 3.1.1 関数の戻り値 プロシージャは,操作の実行が終了すると,戻り値としてステ ータス情報を呼び出し側に返します。ステータス・コードが SNA3270_S_OKの場合には,正しく実行されたことを示しています が,それ以外のステータスが返された場合には,何らかのイベン トまたはエラーが生じたことを示しています。このような場合に は,ステータス・ベクタからさらに詳しい情報を入手するとよい でしょう。 特定の条件下でのテストを作成するときには,常にステータス・ コード用に定義されたシンボル名を使用します。 3.1.2 ステータス・ベクタの使用方法 すべてのプロシージャは,ステータス構造を介して,ステータ ス・コードをOSF/1アプリケーションに返します。このステータス 構造はエラー状態の完全な情報をOSF/1アプリケーションに提供し ます。ステータス・ベクタは,サイズがF6680_C_SV_SIZEのデー タ・タイプSTATUS_RTNの配列になっています。ステータス・ベク タは,OSF/1アプリケーションによって割り当てられF6680 DSPIを 呼び出す前に0に初期化しておく必要があります。ステータス・コ ードには,次のいずれか一方または両方が入っています。 o エラー・コード o 情報コード エラーのタイプによって,ステータス・ベクタには2つ以上のステ ータス・コードが入る事があります。場合によっては,ステータ ス・ベクタにFACOMセンス・コードが入っていることもあります。 3-2 F6680 DSPIの機能 F6680 DSPIの機能 3.1リターン・ステータス情報 エラーが生じると,それに関連するネットワークの各構成要素が F6680 DSPIにメッセージを渡します。F6680 DSPIは,この情報を ステータス・ベクタに格納します。図 3-1は,ステータス・ベク タのダイアグラムを示しています。 重大なエラーが生じてセッションが切断されると,アプリケーシ ョンは,セッションを終了する代わりに,セッションに再接続し ようとします。アクティブ接続要求またはパッシブ接続要求を出 す方法については,第2.2.1項と第2.2.2項を参照してください。 ________________________ 注意 ________________________ アプリケーションを作成する場合は,F6680 DSPIが返すすべ てのステータス・メッセージについてチェックしてくださ い。原則として,F6680_S_OKステータス・コードだけでな く,F6680 DSPIが返すと考えられる個々のステータス・コー ドについてチェックしてください。成功ステータス・メッセ ージについては,付録 Bを参照してください。 ______________________________________________________ 図 3-1 ステータス・ベクタ _________________________________________________________________ 3.2 FACOMホストにアクセス情報を提供する方法 FACOMアプリケーションとのセッションを確立するには,OSF/1ア プリケーションは次のような情報をFACOMホストに提供しなければ なりません。 o PU識別−セッションを確立するのに使用されるゲートウェイ PU(たとえば,SNA-0)を識別する値。 o アプリケーション名−FACOMホストで接続したいPLUアプリケ ーションを識別するASCII文字列。 o LU名−FACOMホストとのセッションを確立するのに使用した いSLUを示す値。 F6680 DSPIの機能 3-3 F6680 DSPIの機能 3.2 FACOMホストにアクセス情報を提供する方法 o ログオン・モード名−セッションの一連のBINDパラメータを 提供するログオン・モード・テーブルにあるエントリを指定 するASCII文字列(詳しくは,VTAMシステム・プログラマに 問い合わせてください)。 o FACOMユーザ識別−FACOMセッションへのユーザを識別する 値。 o FACOMパスワード−FACOMユーザIDに対応する文字列(FACOM アプリケーションには,パスワードが必要なものとそうでな いものがあります)。 o 省略可能なユーザ・データ−FACOMアプリケシーョンに渡さ れるデータ(データの意味は,FACOMアプリケーションによ って異なります)。 アプリケーションは,jsna2370_request_connectプロシージャを 呼び出すたびにこれらの情報をパラメータとして提供します。こ のプロシージャ呼出しの一般的な形式は,第5章に示してありま す。 ゲートウェイ管理者は,FACOMアクセス情報の完全な,または一 部のリストを定義して,そのリストをアクセス名と対応付ける ことができます。アプリケーションがf6680_request_connectを 呼び出すときのパラメータ・リストにアクセス名を指定すると, 対応リスト中の値がすべてのFACOMアクセス情報の省略時の設定 値となります。アクセス名に既に対応付けられた値に対して上 書きするには,f6680_request_connect呼出し時に新しい値を指 定します。FACOMアクセス情報とアクセス名については,『DEC SNA Peer Server Network Control Language Reference』または, 『DECnet/SNA Gateway-CT and Gateway-ST Management』などを参 照してください。 _________________________________________________________________ 3.3 コールバック機能の使用方法 OSF/1アプリケーションがreceive_screenまたはtransmit_screen を呼び出す場合に,ユーザ作成のコールバック・ルーチンを提供 できます。F6680 DSPIは,FACOMから構造化フィールド(SF)データ を受信した後か,インバウンドSFデータをFACOMに送信する前にコ ールバック・ルーチンを呼び出します。データを受信する場合に は,F6680 DSPIがSFデータをコールバック・ルーチンに渡して処 理し,データを送信する場合には,コールバック・ルーチンがSF 3-4 F6680 DSPIの機能 F6680 DSPIの機能 3.3コールバック機能の使用方法 データ・パラメータを介してインバウンドSFデータをF6680 DSPI に渡します。 例 3-1は,コールバック・ルーチンの構文を示しています。こ の例では,callback_routine がreceive_screenまたはtransmit_ screenコールで指定されたコールバック・ルーチンの名前を表 していることに注意してください。アプリケーションを作成する 際,コールバック・ルーチンにどのような名前を付けてもかまい ません。 例 3-1 コールバック・ルーチンのシンタックス SENSE_CODE Callback-routine (sf_data_ptr) struct sf_struct *sp_data_ptr; Argument sf_struct pointer to the structured field data structure. Return Value F6680_S_OK for success sense code when error occurred. 構造化フィールド・データ構造については,付録 Eの例 E-1を参 照してください。 _________________________________________________________________ 3.4 ブロックおよび非ブロック受信の使用方法 F6680 DSPIは非同期プログラミングはサポートしませんが,ブ ロックおよび非ブロックの接続と受信をサポートします。アプリ ケーションを作成する際には,F6680 DSPIを呼び出すたびにブロ ック・モードまたは非ブロック・モードを指定することができま す。 ブロック・モードの場合,アプリケーションは,データを受信す るまでデータを待ち続け,その間他の活動は行いません。逆に, アプリケーションが非ブロック・モードで受信を行なうと,受信 データが存在するかどうかにかかわらず,受信はただちに戻り値 を返します。 F6680 DSPIの機能 3-5 F6680 DSPIの機能 3.4ブロックおよび非ブロック受信の使用方法 アプリケーションが非ブロック・モードを指定し,受信するデー タがない場合は,通常F6680_S_OK_SELECTが返されます。この場 合,アプリケーションは,F6680 DSPIがデータ・ストリームを受 信するまで,f6680_receive_streamルーチンをさらに呼び出さな くてはなりません。したがって,呼び出し側は,それ以降に受信 したメッセージのソケットを監視し続けるようにします。Select の使用は,そのための1つの方法です。 F6680_OK_SELECTのステータスが返される状態は,通常,受信す るデータがないことを示していますが,例外もあります。F6680 DSPIが受信するすべてのメッセージがアプリケーションに渡され るわけではないのでf6680_receive_screenルーチンは,受信する データがあるにもかかわらず,F6680_OK_SELECTのステータス・メ ッセージを返すことがあります。したがって,アプリケーション は,F6680_OK_SELECTが返された場合でも,データのソケットを監 視し続けるようにします。 ブロック・モードを使用するか,非ブロック・モードを使用する かは,アプリケーションの特定のポイントでシステム資源をどの ように使用したいかによって決まります。非ブロック・モードで 呼び出しを行うと,アプリケーションは延期された待ち状態で時 間を無駄にすることがないので,厳密には,2つのモードのうちで は非ブロック・モードの方が効率的です。これとは対照的に,ブ ロック・モードで呼び出しを行うと,アプリケーションは受信を 待ち続けるので,資源を拘束することがあります。ただし,アプ リケーションがFACOMホストからデータを受信するまで何も実行で きない場合には,ブロック・モードで呼び出しを行う方がよいで しょう。 3-6 F6680 DSPIの機能 4 _________________________________________________________________ OSF/1アプリケーション・プログラムの作成 この章では,アプリケーションをF6680 DSPIのインタフェース・ プロシージャとリンクする方法について説明します。また,F6680 DSPIソフトウェアでオンラインで提供される3つのサンプル・プロ グラムについての説明とその格納場所を示します。これらのプロ グラムはASCII形式になっています。この3つのプログラムをすべ て表示するには,/usr/i18n/usr/examples/f6680ディレクトリに ある以下のファイルを印刷します。このディレクトリの中の3つの プログラムは,個別に印刷することもできます。プログラム名は 次のとおりです。 o stream.c o amnu.c o mult_sess.c それぞれのプログラムについては,第4.2節を参照してください。 _________________________________________________________________ 4.1 アプリケーションのリンク方法 アプリケーション・モジュールを作成してコンパイルしておけ ば,いつでもアプリケーションをF6680 DSPIのサブルーチンとリ ンクすることができます。F6680 DSPIはライセンス・チェッキン グ・ユーティリティを使用しているので,アプリケーション・モ ジュールをLMFライブラリ liblmf.aともリンクしなければなりま せん。 次の例は,オブジェクト・ファイルprogname.oとアーカイ ブ・ランダム・ライブラリlibfna6680.aをリンクしていま す。f6680,lmf,ftraアーカイブ・ランダム・ライブラリとリ ンクするには,-lオプションを使用しなければなりません。 OSF/1アプリケーション・プログラムの作成 4-1 OSF/1アプリケーション・プログラムの作成 4.1アプリケーションのリンク方法 # cc -o progname progname.c -lfna6680 -llmf ________________________ 注意 ________________________ f6680,lmf,traアーカイブ・ランダム・ライブラリを-lオ プションによってリンクする時はリンクする順番に注意し, 例に示されている順番でリンクを行なってください。 ______________________________________________________ ccコマンドと補足オプションについての詳細は,『DEC OSF/1オペ レーティング・システムプログラミング・ガイド』を参照してく ださい。 _________________________________________________________________ 4.2 プログラミング例 ここでは,オンラインで提供される3つのサンプル・プログラムに ついて説明します。各プログラムはCプログラミング言語で書かれ ています。最初の1つはストリーム・モード,他の2つはさらに複 雑なフィールド・モードになっています。3つのサンプル・プログ ラムは,次のような目的で書かれています。 o プログラム1−ストリーム・モードを使用してデータを送 受信する方法を示すとともに,TSSのもとで動作するPFDを 使用してFACOMホストに肯定応答します。このプログラム は,/usr/i18n/usr/examples/f6680/stream.c にあります。 o プログラム2−データベース・アプリケーション(AMNUトラ ンザクション)に接続する方法と,アプリケーションの操作 員画面に示される指示に従ってデータベースをブラウジング する方法を示します。このプログラムはブラウジング操作へ の応答として送信されたそれぞれの情報フィールドを読み取 って,各フィールドの内容と長さを表示します。このプログ ラムは,/usr/i18n/usr/examples/f6680/amnu.c にありま す。 o プログラム3−複数セッションの例で,資源を割り当て,同 時にFACOMホストとの間に2つのセッションを確立する方法 を示します。このプログラムは,/usr/i18n/usr/examples /f6680/mult_sess.c にあります。 4-2 OSF/1アプリケーション・プログラムの作成 OSF/1アプリケーション・プログラムの作成 4.3 DEC/FACOMコード変換 _________________________________________________________________ 4.3 DEC/FACOMコード変換 F6680 DSPIでは,EBCDIC文字セット/ISO Latin文字セットの1バイ ト・コード変換ルーチンとしてfna_as2eb,fna_eb2asの2つのル ーチンを提供しています。 また,1バイトコードおよび2バイトコードが混在したDECコード, FACOMコード相互間の変換を行うルーチン群として,DEC/JEFコー ド変換ライブラリを別サブセットで提供しています。詳細は,第 I.1節を参照してください。 4.3.1 JEF拡張文字とJEFユーザ定義文字 JEF拡張文字とJEFユーザ定義文字といったいわゆる外字の変換に は,別サブセットで提供されているjefknjdefユーティリティによ り作成された外字管理ファイルを利用してDEC/JEFコード変換ライ ブラリによって変換を行います。詳細は,第I.1節を参照してくだ さい。 4.3.2 カスタマイズされた変換テーブルの作成方法 F6680 DSPIソフトウェアは,EBCDICをISO Latin文字セットに変換 する変換テーブルを備えています。第5章では,この変換テーブル を使用できるようにする2つのプログラム呼出しについて説明しま す。 F6680 DSPIにあるISO Latin文字セットは,主として北米で使用さ れるもので,要件に合わないこともあるかもしれません。そのよ うな場合には,ゲートウェイ管理者に新しい変換テーブルを作成 してもらってください。新しい変換テーブルを作成する場合は, それを使用するためのサブルーチンを作成する必要があります。 カスタマイズされた変換テーブルの作成については,付録 Hを参 照してください。 OSF/1アプリケーション・プログラムの作成 4-3 5 _________________________________________________________________ プロシージャ呼び出し形式 この章では,F6680 DSPIのプロシージャの呼び出し形式について 説明します。F6680 DSPIには,次のようなプロシージャがありま す。 o f6680_acknowledge o f6680_free_buffer o f6680_lock_screen o f6680_read_field o f6680_receive_screen o f6680_receive_stream o f6680_request_connect o f6680_request_disconnect o f6680_return_io_port o f6680_set_owner o f6680_transmit_screen o f6680_transmit_fna_cmd o f6680_transmit_stream o f6680_write_field o fna_as2eb o fna_eb2as o fna_get_msg o fna_put_msg プロシージャ呼び出し形式 5-1 プロシージャ呼び出し形式 5.1 F6680 DSPIを呼び出す場合の一般形式 _________________________________________________________________ 5.1 F6680 DSPIを呼び出す場合の一般形式 F6680 DSPIプロシージャを呼び出す際は,次のような一般形式を 使用します。 status=f6680_procedure-name(argument1, argument2,...) status 関数値として返されるステータス・コード。 procedure- 呼び出したいプロシージャの名前。 name () 引数リストを指定する。 argument アプリケシーョンがF6680 DSPIに渡したりF6680 DSPIから受け取る情報が入っている変数。この章で 説明する各プロシージャに対する引数は,簡略表記 を使用して引数の特性を説明しています。これらの 表記規則の要約は付録 Bにあります。 5.1.1 session_id session_id引数は,ほとんどすべてのF6680 DSPIプロダクトのプ ロシージャで使用されます。(この引数を使用しないプロシージ ャは,2つの変換ユーティリティfna_as2ebとfna_eb2as,2つのメ ッセージ・ユーティリティfna_get_msgとfna_put_msgです。) 5-2 プロシージャ呼び出し形式 f6680_acknowledge _________________________________________________________________ f6680_acknowledge _________________________________________________________________ 名称 f6680_acknowledge -受信データの確認応答 _________________________________________________________________ 形式 #include f6680_acknowledge (session_id, sense, status_vec) SESSION_ID_DEF session_id; SENSE_CODE *sense; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session-id 接続時に割り当てられたセッション識別子。 sense PLUに送信されるセンス・コード応答が入っている longword。 プロシージャ呼び出し形式 5-3 f6680_acknowledge status_vec OSF/1アプリケーションがメモリを割り当てて, F6680 DSPIがユーザに完全なステータス情報を提供 するために使用するデータ・タイプSTATUS_RTNとサ イズF6680_C_SV_SIZEのベクタ。ステータス・ベク タには,status_vec[0]からstatus_vec[15]までの 最大16個のエントリが入っている。最初のエントリ (status_vec[0])には,ベクタの中で返されるステー タス・コード数が入っている。 _________________________________________________________________ 機能説明 f6680_acknowledgeプロシージャは,f6680_receive_streamから受 信したデータが受け入れ可能かどうかをFACOMアプリケシーョン・ サブシステムに知らせます。OSF/1アプリケーションは,F6680 DSPIがデータをFACOMホストに返信する事を許可する前に受信した データを確認応答しなければなりません。 アプリケーションがフィールド・モードを使用して(つま り,f6680_receive_screen プロシージャを使用して),FACOMホストからデータを受信する 場合には,プロシージャは受信した画面を自動的に確認応答し ます。したがって,ほとんどの場合,OSF/1アプリケーションは acknowledgeを特に呼び出す必要がありません。 _________________________________________________________________ 診断項目 f6680_acknowledgeプロシージャは,次のステータスを返します。 [F6680_S_OK] 成功。保留されている応答がないときに もこのステータス・メッセージが返され る。 [F6680_S_ACKFAI] 呼び出しが失敗した。 5-4 プロシージャ呼び出し形式 f6680_acknowledge 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NOSUCHSOCK] 無効なセッション識別子。 _________________________________________________________________ 制限事項 なし _________________________________________________________________ 関連項目 f6680_receive_streamプロシージャを参照してください。 プロシージャ呼び出し形式 5-5 f6680_free_buffer _________________________________________________________________ f6680_free_buffer _________________________________________________________________ 名称 f6680_free_buffer - f6680_receive_streamによって割り当てら れたバッファを解放する。 _________________________________________________________________ 形式 #include f6680_free_buffer (session_id, buf, status_vec) SESSION_ID_DEF session_id; char *buf; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ 接続時に割り当てられたセッション識別子。 id buf OSF/1アプリケーションがf6680_receive_streamプロシ ージャを呼び出したときに,割り当てられたバッファ・ ポインタのアドレス 5-6 プロシージャ呼び出し形式 f6680_free_buffer status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 _________________________________________________________________ 機能説明 f6680_free_bufferプロシージャを呼び出すことによって,F6680 DSPIは,それ以前にf6680_receive_streamプロシージャによって 割り当てられたバッファ領域を解放します。 _________________________________________________________________ 診断項目 f6680_free_bufferプロシージャは,次のステータスを返します。 [F6680_S_OK] 成功。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_SVOMIT] ステータス・ベクタが割り当てられてい ない。 [F6680_S_NOSUCHSOCK] 無効なセッション識別子。 [F6680_S_FREEFAI] バッファの解放に失敗。詳細はステータ ス・ベクタを参照。 プロシージャ呼び出し形式 5-7 f6680_free_buffer _________________________________________________________________ 制限事項 なし _________________________________________________________________ 関連項目 f6680_receive_streamも参照してください。 5-8 プロシージャ呼び出し形式 f6680_lock_screen _________________________________________________________________ f6680_lock_screen _________________________________________________________________ 名称 f6680_lock_screen -これ以降の画面処理をロックする _________________________________________________________________ 形式 #include f6680_lock_screen (session_id, status_vec) SESSION_ID_DEF session_id; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ 接続時に割り当てられたセッション識別子。 id status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 プロシージャ呼び出し形式 5-9 f6680_lock_screen _________________________________________________________________ 機能説明 f6680_lock_screenプロシージャを呼び出すことによって,F6680 DSPIは,FACOMホストから受信したBID要求に対して否定応答を送 信します。画面ロック状態は,これ以降のストリームまたは画面 送信要求によって解除されます。 _________________________________________________________________ 診断項目 f6680_lock_screenプロシージャは,次のステータスを返します。 [F6680_S_OK] 成功。 [F6680_S_LOCFAI] 画面ロックに失敗した。詳細は,ステー タス・ベクタを参照。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NOSUCHSOCK] 無効なセッション識別子。 [F6680_S_NYTXMIT] 送信する番になっていない。 _________________________________________________________________ 制限事項 なし _________________________________________________________________ 関連項目 f6680_transmit_screenと f6680_transmit_stream要求も参照して ください。 5-10 プロシージャ呼び出し形式 f6680_read_field _________________________________________________________________ f6680_read_field _________________________________________________________________ 名称 f6680_read_field -表示ベクタから指定フィールドを読み取る _________________________________________________________________ 形式 #include f6680_read_field (session_id, buf, length, status_vec) SESSION_ID_DEF session_id; char *buf; unsigned int length; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ 接続時に割り当てられたセッション識別子。 id buf フィールド・ディスクリプタ・ブロックに指定されたフ ィールドを受け取るバッファのアドレス。nullの場合に は,データはバッファにコピーされず,F6680 DSPIは FDBの中のフィールド・オフセットとサイズだけをその フィールドに返す。 length read_fieldに渡されるデータ・バッファの長さ。 プロシージャ呼び出し形式 5-11 f6680_read_field status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 _________________________________________________________________ 機能説明 f6680_read_fieldプロシージャは,表示ベクタからフィールドを 読み取ります。OSF/1アプリケーションは,フィールドの特徴を FDBの中で指定します。 _________________________________________________________________ 診断項目 f6680_read_fieldプロシージャは,次のステータス・メッセージ を返します。 [F6680_S_OK] 成功。 [F6680_S_OK_TRUNC] データの切り捨てを行って成功した。 [F6680_S_RDFLDFAI] フィールドの読み取りに失敗。詳細は, ステータス・ベクタを参照。 呼び出しに失敗したときには,プロシージャは,ステータス・ベ クタの中に関連コード(1つまたは複数)を返します。 [F6680_S_BADOFFSET] FDB中のバッファ・オフセットが間違って いる。 5-12 プロシージャ呼び出し形式 f6680_read_field [F6680_S_NOSUCHSOCK] 無効なセッションID。 [F6680_S_NOFIELD] 文字ベクタ内にフィールドがみつからな い。 [F6680_S_NOTINFMOD] フィールド・モードになっていない。 _________________________________________________________________ 制限事項 フィールド・モードでのみ使用可能。 _________________________________________________________________ 関連項目 f6680_receive_screenとf6680_write_screenプロシージャも参照 してください。 プロシージャ呼び出し形式 5-13 f6680_receive_screen _________________________________________________________________ f6680_receive_screen _________________________________________________________________ 名称 f6680_receive_screen -表示ベクタに画面イメージを受信する _________________________________________________________________ 形式 #include f6680_receive_screen (session_id, sesidx, io_typ, status_ vec, wsf_cb) SESSION_ID_DEF session_id; unsigned int *sesidx; unsigned long int io_typ; STATUS_RTN status_vec[]; SENSE_CODE (*wsf_cb)( ); _________________________________________________________________ 引数 session_ 接続時に割り当てられたセッション識別子。 id sesidx データをSSCPから受信した場合にはF6680_C_SSCPに設定 し,それ以外の場合にはF6680_C_LULUに設定する。 5-14 プロシージャ呼び出し形式 f6680_receive_screen io_type 受信をブロック・モードにするか,非ブロック・モー ドにするかを指定するフラグ。F6680_C_BLOCKまたは F6680_C_NON_BLOCKのいずれかを指定する。 status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 wsf_cb WSFデータを受信したときに,F6680 DSPIによって呼び 出されるユーザ作成プロシージャ。 _________________________________________________________________ 機能説明 f6680_receive_screenプロシージャは,完全な6680画面イメージ を受信して,セッションに指定された表示ベクタに格納します。 このプロシージャは,ブロック・モードと非ブロック・モードで の受信をサポートします。非ブロック・モード受信では,プロシ ージャは受信するデータがないとF6680_OK_SELECTを返します。受 信する構造化フィールド・データがあると,OSF/1アプリケーシ ョンで用意されたコールバック・ルーチンを呼び出して,write structured fieldデータをそのルーチンに渡します。 _________________________________________________________________ 診断項目 f6680_receive_screenプロシージャは,次のステータス・メッセ ージを返します。 [F6680_S_OK] 成功。 [F6680_S_OK_SELECT] 成功。受信されたデータはない。 プロシージャ呼び出し形式 5-15 f6680_receive_screen [F6680_S_RECVSCRFAI] 画面受信要求に失敗した。さらに詳しい ステータス情報はステータス・ベクタに 格納されている。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NOSUCHSOCK] 無効なセッションID。 [F6680_S_NOTINFMOD] フィールド・モードになっていない。 [F6680_S_EVT_ BIND要求を受信した。 BINDRCV] [F6680_S_EVT_ 送信する番になっていない。 TURNGONE] [F6680_S_EVT_CLEAR] CLEARコマンドによって要求がアボートさ れた。 [F6680_S_EVT_UNBIND] UNBIND要求を受信した。 [F6680_S_EVT_ セッションが終了された。 SESSTERM] [F6680_S_BADQR] 未知の照会要求を受信した。 上記以外のステータス・コードを受信した場合は,付録 Bまたは 付録 Dを参照してください。 _________________________________________________________________ 制限事項 なし 5-16 プロシージャ呼び出し形式 f6680_receive_stream _________________________________________________________________ f6680_receive_stream _________________________________________________________________ 名称 f6680_receive_stream - FACOMホストからデータを受信する _________________________________________________________________ 形式 #include f6680_receive_stream (session_id, sesidx, io_typ, buf, length, status_vec) SESSION_ID_DEF session_id; unsigned int *sesidx; unsigned long int io_typ; char **buf; unsigned int *length; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ f6680_request_connectによって返されたセッション識 id 別子の値。 sesidx データをSSCPから受信した場合にはF6680_C_SSCPに設定 し,それ以外の場合にはF6680_C_LULUに設定する。 プロシージャ呼び出し形式 5-17 f6680_receive_stream io_typ 受信をブロック・モードにするか,非ブロック・モー ドにするかを指定するフラグ。F6680_C_BLOCKまたは F6680_C_NON_BLOCKのいずれかを指定する。 buf バッファ・ポインタのアドレス。ポインタには,F6680 DSPIがFACOMホストから受信したデータ用に割り当てた バッファ位置のアドレスが入っている。 length 受信したデータの長さ。 status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 _________________________________________________________________ 機能説明 f6680_receive_streamプロシージャは,FACOMホストから送信され た6680データ・ストリームを受信します。 _________________________________________________________________ 診断項目 f6680_receive_streamプロシージャは,次のステータス・メッセ ージを返します。 [F6680_S_OK] 成功。 [F6680_S_OK-SELECT] 成功。 [F6680_S_RECVSTRFAI] 受信に失敗。 5-18 プロシージャ呼び出し形式 f6680_receive_stream 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NOSUCHSOCK] 無効なセツションID。 [F6680_S_NOTINFMOD] フィールド・モードになっていない。 [F6680_S_EVT_ BIND要求を受信した。 BINDRCV] [F6680_S_EVT_ 送信する番ではない。 TURNGONE] [F6680_S_EVT_CLEAR] CLEARコマンドによって要求がアボートさ れた。 [F6680_S_EVT_UNBIND] UNBIND要求を受信した。 [F6680_S_EVT_ セッションが終了された。 SESSTERM] 上記以外のステータス・コードを受信した場合は,付録 Bまたは 付録 Dを参照してください。 _________________________________________________________________ 制限事項 フィールド・モードでのみ使用可能。 _________________________________________________________________ 関連項目 f6680_acknowledgeプロシージャを参照してください。 プロシージャ呼び出し形式 5-19 f6680_request_connect _________________________________________________________________ f6680_request_connect _________________________________________________________________ 名称 f6680_request_connect - FACOMホストに接続要求をする _________________________________________________________________ 形式 #include f6680_request_connect (session_id, conn_typ, mode_typ, io_ typ, transport, gateway, accname, luname, pluname, logmode, userdata, authpwd, char_vec, attr_vec, kmode_vec, fdb, sdb, status_vec) SESSION_ID_DEF session_id; unsigned int conn_typ; unsigned long int mode_typ, io_typ, transport; char *gateway, *accname, *luname, *pluname; char *logmode, *userdata, *authpwd, *char_vec, *kmode_vec; struct ext_attr_def_dbcs *attr_vec; struct field_def_dbcs *fdb; struct sdb_def_dbcs *sdb; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ セッションに固有なセッション識別子値を受け取る場 id 所。 5-20 プロシージャ呼び出し形式 f6680_request_connect conn_ 希望する接続タイプ。 typ F6680_C_ACTはアクティブ接続を示し,F6680_C_PASSは パッシブ接続を示す。 mode_ 希望する接続モード。接続は,F6680_C_STREAM_MODE接 typ 続またはF6680_C_FIELD_MODE接続になる。 io_typ 接続要求をブロック・モードにするか,非ブロック・モ ードにするかを指定するフラグ。F6680_C_BLOCKのみ指 定可能。 trans- DEC SNA GatewayとOSF/1アプリケーション間のトランス port ポートプロトコルを指定する。 gateway ゲートウェイ・ノード名文字列。 accname アクセス名文字列。このパラメータがNULL文字列のとき には,パラメータ・リストに必要なFACOMアクセス情報 を提供しなければならない。文字列の最大長は16バイ ト。 luname このセッションで使用するLUの名前。LU名の最大長は32 バイト。このパラメータはNULLでもよい。 FACOMホストの中で接続したいPLUアプリケーション名 pluname (たとえばCICS)。最大長は8バイト。このパラメータ はNULLでもよい。 logmode セッションに関する一連のBIND要求パラメータに対応付 けられたログオン・モード名。最大長は8バイト。この パラメータはNULLでもよい。 user- オプションのユーザ・データ。最大長は128バイト。こ data のパラメータはNULLでもよい。 authpwd LUを承認するのに使用するパスワード。このパラメータ はNULLでもよい。 プロシージャ呼び出し形式 5-21 f6680_request_connect char_ F6680 DSPIが画面イメージを構築するのに使用するデー vec タ構造である文字ベクタへのポインタ。OSF/1アプリケ ーションは,このデータ構造にメモリ・スペースを割り 当てなければなりません。 attr_ F6680 DSPIが画面イメージの属性を格納するのに使用す vec るデータ構造である属性ベクタへのポインタ。属性ベク タは,文字ベクタと同じサイズでなければなりません。 OSF/1アプリケーションは,このデータ構造にメモリ・ スペースを割り当てなければなりません。 kmode_ F6680DSPIが画面イメージの漢字属性を格納するのに vec 使用するデータ構造である文字ベクタへのポインタ。 kmodeベクタは文字ベクタと同じサイズでなければなり ません。OSF/1アプリケーションは,このデータ構造にメ モリ・スペースを割り当てなければなりません。 fdb OSF/1アプリケーションがフィールド属性と操作を指定 するのに使用するデータ構造であるフィールド・ディス クリプタ・ブロックへのポインタ。OSF/1アプリケーシ ョンは,このデータ構造にメモリ・スペースを割り当て なければなりません。 sdb 完全な画面を表わすのに使用するデータ構造であるスク リーン・ディスクリプタ・ブロックへのポインタ。フィ ールド・モード接続の場合には,OSF/1アプリケーショ ンは,f6680_request_connectプロシージャを呼び出す 前に,属性ベクタと文字ベクタのサイズに合わせてSDB 画面サイズを初期化する必要があります。OSF/1アプリ ケーションは,このデータ構造にメモリ・スペースを割 り当てなければなりません。 status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 5-22 プロシージャ呼び出し形式 f6680_request_connect _________________________________________________________________ 機能説明 f6680_request_connectプロシージャは,アクティブ要求またはパ ッシブ要求を出して,OSF/1アプリケーションとFACOMアプリケー ションとの間にデータ・ストリーム・モードまたはフィールド・ モードのセッションを確立します。 _________________________________________________________________ 診断項目 f6680_request_connectプロシージャは,次のステータス・メッセ ージを返します。 [F6680_S_OK] 成功。 [F6680_S_CONFAI] ゲートウェイとの接続に失敗。詳細はス テータス・ベクタを参照。 [F6680_S_ILLMODTYP] 無効な接続モード。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_SVOMIT] ステータス・ベクタが割り当てら れていない。 [F6680_S_CHARVEC] CHAR_VECが短かすぎる。少なくと も'nn'バイトの長さがなければな らない。 [F6680_S_ILLCONTYP] 無効な接続タイプ。 [F6680_S_INVTRANSTYP] 無効なトランスポート。 [F6680_S_PARERR] パラメータが間違っている。 [F6680_S_FUNNOTIMP] 指定されたパラメータは現在使用 不可。 プロシージャ呼び出し形式 5-23 f6680_request_connect [F6680_S_NOSUCHSOCK] 無効なセッションID。 [F6680_S_INSRES] 資源が不十分。 上記以外のステータス・コードを受信したときには,付録 Bまた は付録 Dを参照してください。 _________________________________________________________________ 制限事項 なし 5-24 プロシージャ呼び出し形式 f6680_request_disconnect _________________________________________________________________ f6680_request_disconnect _________________________________________________________________ 名称 f6680_request_disconnect - FACOMホストからのセッションを終 了する _________________________________________________________________ 形式 #include f6680_request_disconnect (session_id, io_typ, status_vec) SESSION_ID_DEF session_id; unsigned long int io_typ; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ 接続時に割り当てられたセッション識別子。 id io_typ 接続要求をブロック・モードにするか,非ブロック・モ ードにするかを指定するフラグ。F6680_C_BLOCKのみ指 定可能。 プロシージャ呼び出し形式 5-25 f6680_request_disconnect status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 _________________________________________________________________ 機能説明 f6680_request_disconnectプロシージャは,それが呼び出される とすぐにセッションを終了します。F6680 DSPIは,FACOMネットワ ークからセッションを切り離し,セッションのために割り当てら れた資源を解放します。OSF/1アプリケーションは,割り当てられ たすべての資源を解放しなければなりません。 _________________________________________________________________ 診断項目 f6680_request_disconnectプロシージャは,次のステータス・メ ッセージを返します。 [F6680_S_OK] 成功。 [F6680_S_DISFAI] 切り離しに失敗。ステータス・ベクタを 参照。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NOSUCHSOCK] 無効なセッションID。 [F6680_S_FUNNOTIMP] 指定されたパラメータは現在使用不可。 5-26 プロシージャ呼び出し形式 f6680_request_disconnect 上記以外のステータス・コードを受信したときには,付録 Bまた は付録 Dを参照してください。 _________________________________________________________________ 制限事項 なし _________________________________________________________________ 関連項目 f6680_request_connectプロシージャを参照してください。 プロシージャ呼び出し形式 5-27 f6680_return_io_port _________________________________________________________________ f6680_return_io_port _________________________________________________________________ 名称 f6680_return_io_port -データの送受信で使用されるI/Oポートを 返す。 _________________________________________________________________ 形式 #include f6680_return_io_port (session_id, io_port, status_vec) SESSION_ID_DEF session_id; unsigned long int *io_port; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ 接続時に割り当てられたセッション識別子。 id io_port プロシージャがI/Oポートを返す変数へのポインタ。 5-28 プロシージャ呼び出し形式 f6680_return_io_port status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 _________________________________________________________________ 機能説明 f6680_return_io_portプロシージャを呼び出すことによって, F6680 DSPIは,下層レイヤでのデータの送受信に使用されるI/Oポ ート(OSF/1の場合socket id)を返します。 _________________________________________________________________ 診断項目 f6680_return_io_portプロシージャは,次のステータス・メッセ ージを返します。 [F6680_S_OK] 成功。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_SVOMIT] ステータスベクタが割り当てられていな い。 [F6680_S_NOSUCHSOCK] 無効なセッション識別子。 [F6680_S_RETIOFAI] I/Oポートの取得に失敗。詳細は,ステー タス・ベクタを参照。 プロシージャ呼び出し形式 5-29 f6680_return_io_port _________________________________________________________________ 制限事項 なし 5-30 プロシージャ呼び出し形式 f6680_set_owner _________________________________________________________________ f6680_set_owner _________________________________________________________________ 名称 f6680_set_owner -アプリケーションはこのプロシージャを使用し て,セッションがSSCPまたはLUのどちらによって所有されている か,あるいは所有されていないかをF6680 DSPIに知らせる _________________________________________________________________ 形式 #include f6680_set_owner (session_id, owner, status_vec) SESSION_ID_DEF session_id; unsigned int owner; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ f6680_request_connectによって返されるセッション識 id 別子値。 owner F6680_C_SSCP_OWNED,F6680_C_LU_OWNED,F6680_C_ UNOWNEDのいずれかに設定する。 プロシージャ呼び出し形式 5-31 f6680_set_owner status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 _________________________________________________________________ 機能説明 OSF/1アプリケーションは,f6680_set_ownerプロシージャを使用 して,セッションがSSCPまたはLUのどちらによって所有されてい るのか,あるいは所有されていないのかをF6680 DSPIに知らせま す。 _________________________________________________________________ 診断項目 f6680_set_ownerプロシージャは,次のステータス・メッセージを 返します。 [F6680_S_OK] 成功。 [F6680_S_SETFAI] 画面所有者を要求された所有者に設定で きなかった。 [F6680_S_LUSTAT_DUE] ユーザがLUステータスをFACOMホストに送 信しなければならない。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NOSUCHSOCK] 無効なセッションID。 5-32 プロシージャ呼び出し形式 f6680_set_owner [F6680_S_PARERR] パラメータが間違っている。 [F6680_S_NO_SSCP] SSCPセッションが使用できない。 [F6680_S_NYT] 送信する番になっていない。 上記以外のステータス・コードを受信したときには,付録 Bまた は付録 Dを参照してください。 _________________________________________________________________ 制限事項 なし プロシージャ呼び出し形式 5-33 f6680_transmit_screen _________________________________________________________________ f6680_transmit_screen _________________________________________________________________ 名称 f6680_transmit_screen -画面を作成し送信する _________________________________________________________________ 形式 #include f6680_transmit_screen (session_id, sesidx, io_typ, aid, status_vec, wsf_cb) SESSION_ID_DEF session_id; unsigned int sesidx; unsigned long int io_typ; unsigned char aid; STATUS_RTN status_vec[]; SENSE_CODE (*wsf_cb)( ); _________________________________________________________________ 引数 session_ 接続時に割り当てられたセッションID。 id sesidx データをSSCPに送信するときにはF6680_SSCPに設定し, それ以外のときにはF6680_LULUに設定する。 5-34 プロシージャ呼び出し形式 f6680_transmit_screen io_typ 接続要求をブロック・モードにするか,非ブロック・モ ードにするかを指定するフラグ。F6680_C_BLOCKのみ指 定可能。 aid アテンション識別(AID)は,アプリケーションがホスト に送信して,データ・ストリームを送信した処置や機能 に注意を向けさせるコード。 status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 wsf_cb 画面送信コールバック・ルーチン。write structured fieldをFACOMホストに送信する前に,このプロシージャ が呼び出されて,インバウンドwrite structured field データを作成する。アプリケーションがコールバック・ ルーチンを必要としないときにはNULLを使用する。 _________________________________________________________________ 機能説明 f6680_transmit_screenプロシージャは,文字ベクタと属性ベク タを解析して,6680データ・ストリームを生成し,完全なスト リームをFACOMホストに送信します。データをFACOMホストに送 信する前に,F6680 DSPIは,送信するインバウンド構造化フィ ールド・データがあるかどうかをチェックします。そしてwrite structured fieldデータを受けるコールバック・ルーチンが呼び 出されます。この時,インバウンド構造化フィールド・データを 送信するコールバック・ルーチンがアプリケーションになければ なりません。 プロシージャ呼び出し形式 5-35 f6680_transmit_screen _________________________________________________________________ 診断項目 f6680_transmit_screenプロシージャは,次のステータス・メッセ ージを返します。 [F6680_S_OK] 成功。 [F6680_S_XMITSCRFAI] 画面送信に失敗した。ステータス・ベク タを参照。 [F6680_S_NOT_OWNER] セッションの所有者でない。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NOSUCHSOCK] 無効なセッションID。 [F6680_S_NOTINFMOD] フィールド・モードになっていない。 [F6680_S_INSRES] 資源が不十分。 [F6680_S_PARERR] パラメータが間違っている。 [F6680_S_NYT] 送信する番になっていない。 [F6680_S_NO_SSCP] SSCPセッションが使用できない。 上記以外のステータス・コードを受信したときには,付録 Bまた は付録 Dを参照してください。 _________________________________________________________________ 制限事項 フィールド・モードでのみ使用可能。 5-36 プロシージャ呼び出し形式 f6680_transmit_screen _________________________________________________________________ 関連項目 f6680_write_fieldプロシージャを参照してください。 プロシージャ呼び出し形式 5-37 f6680_transmit_fna_cmd _________________________________________________________________ f6680_transmit_fna_cmd _________________________________________________________________ 名称 f6680_transmit_fna_cmd - out-of-band要求を送信する _________________________________________________________________ 形式 #include f6680_transmit_fna_cmd (session_id, io_typ, cmd, status_ vec) SESSION_ID_DEF session_id; unsigned long int io_typ; unsigned int cmd; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ 接続時に割り当てられたセッション識別子。 id io_typ 接続要求をブロック・モードにするか,非ブロック・モ ードにするかを指定するフラグ。F6680_C_BLOCKのみ指 定可能。 5-38 プロシージャ呼び出し形式 f6680_transmit_fna_cmd cmd FNAコマンド。有効なコマンドには次のものがある。 o F6680_CMD_NOTIFY_ON o F6680_CMD_NOTIFY_OFF o F6680_CMD_LUSTAT o F6680_CMD_SIGNAL status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 _________________________________________________________________ 機能説明 f6680_transmit_fna_cmdプロシージャは,OSF/1アプリケーション にFNA要求をFACOMホストに送信するメカニズムを提供します。ア プリケーションがNOTIFY,LUSTAT,SIGNALなどのコマンドを送信 する必要がある場合にこのプロシージャを使用します。 _________________________________________________________________ 診断項目 f6680_transmit_fna_cmdプロシージャは,次のステータス・メッ セージを返します。 [F6680_S_OK] 成功。 プロシージャ呼び出し形式 5-39 f6680_transmit_fna_cmd [F6680_S_XMITFNAFAI] コマンドの送信に失敗した。ステータ ス・ベクタを参照。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NO_SSCP] SSCP-LUセッションがない。 [F6680_S_NOSUCHSOCK] 無効なセッションID。 [F6680_S_INSRES] 資源が不十分。 [F6680_S_PARERR] パラメータが間違っている。 上記以外のステータス・コードを受信したときには,付録 Bまた は付録 Dを参照してください。 _________________________________________________________________ 制限事項 なし _________________________________________________________________ 関連項目 f6680_transmit_screenとf6680_transmit_streamプロシージャを 参照してください。 5-40 プロシージャ呼び出し形式 f6680_transmit_stream _________________________________________________________________ f6680_transmit_stream _________________________________________________________________ 名称 f6680_transmit_stream -完全な6680データ・ストリームをFACOM ホストに送信する _________________________________________________________________ 形式 #include f6680_transmit_stream (session_id, sesidx, io_typ, buf, length, last_flag, status_vec) SESSION_ID_DEF session_id; unsigned int *sesidx; unsigned long int io_typ; char *buf; unsigned int length; unsigned int last_flag; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ 接続時に割り当てられたセッション識別子。 id sesidx データをSSCPに送信するときにはF6680_SSCPに設定し, それ以外のときにはF6680_LULUに設定する。 プロシージャ呼び出し形式 5-41 f6680_transmit_stream io_typ 接続要求をブロック・モードにするか,非ブロック・モ ードにするかを指定するフラグ。F6680_C_BLOCKのみ指 定可能。 buf アプリケーションが用意している6680データ・ストリー ムの入ったバッファへのポインタ。 length 6680データ・ストリームの長さ。 last- RU/チェイン状態を示すのに使用されるフラグ。このフ flag ラグは,次のように設定する。 o F6680_C_NOT_LAST−送信されるRUが最後のRUでな い。 o F6680_C_LAST_RU−これは送信される最後のRU。こ れによって,ECIとCDIがセットされる。 o F6680_C_LAST_IN_CHAIN−送信されるRUがチェイ ンの中の最後のRU。まだ送信されていないチェイ ン・データがある。これによって,ECIがセットさ れる。 status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 _________________________________________________________________ 機能説明 f6680_transmit_streamプロシージャは,完全な6680データ・スト リームをFACOMホストに送信します。 5-42 プロシージャ呼び出し形式 f6680_transmit_stream _________________________________________________________________ 診断項目 f6680_transmit_streamプロシージャは,次のステータス・メッセ ージを返します。 [F6680_S_OK] 成功。 [F6680_S_XMITSTRFAI] 送信に失敗した。ステータス・ベクタを 参照。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NOSUCHSOCK] 無効なセッションID。 [F6680_S_NYT] 送信する番になっていない。 [F6680_S_NO_SSCP] SSCPセッションが使用できない。 上記以外のステータス・コードを受信したときには,付録 Bまた は付録 Dを参照してください。 _________________________________________________________________ 制限事項 なし プロシージャ呼び出し形式 5-43 f6680_write_field _________________________________________________________________ f6680_write_field _________________________________________________________________ 名称 f6680_write_field - 6680画面イメージにフィールドを書き込む _________________________________________________________________ 形式 #include f6680_write_field (session_id, buf, length, status_vec) SESSION_ID_DEF session_id; char *buf; unsigned int length; STATUS_RTN status_vec[]; _________________________________________________________________ 引数 session_ 接続時に割り当てられるセッション識別子。 id buf 指定されたフィールドに書き込まれるデータが入ってい るバッファへのポインタ。 length データの長さ。 5-44 プロシージャ呼び出し形式 f6680_write_field status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 _________________________________________________________________ 機能説明 f6680_write_fieldプロシージャは,6680画面イメージにフィール ドを書き込みます。f6680_read_fieldと同様に,呼び出し側がFDB データ構造の中でフィールドを指定します。 _________________________________________________________________ 診断項目 f6680_write_fieldプロシージャは,次のステータス・メッセージ を返します。 [F6680_S_OK] 成功。 [F6680_S_OK_TRUNC] 成功。データが切り捨てられている。 [F6680_S_WTFLDFAI] フィールドの書き込みに失敗した。ステ ータス・ベクタを参照。 呼び出しに失敗したときには,プロシージャはステータス・ベク タの中に関連コード(1つまたは複数)を返します。 [F6680_S_NOSUCHSOCK] 無効なセッションID。 [F6680_S_NOTINFMOD] フィールド・モードになっていない。 プロシージャ呼び出し形式 5-45 f6680_write_field [F6680_S_NOINPUT] WRITE_FIELDの入力データがない。 [F6680_S_BADOFFSET] FDBの中のバッファ・オフセットがフィー ルドの先頭になっていない。 [F6680_S_BADLEN] 読取り/書込みフィールド要求で間違っ たバッファの長さが指定された。 [F6680_S_PROTECTED] フィールドが保護されており,変更でき ない。 [F6680_S_NUMERIC] データは数値でなければならない。 上記以外のステータス・コードを受信したときには,付録 Bまた は付録 Dを参照してください。 _________________________________________________________________ 制限事項 フィールド・モードでのみ使用可能。 _________________________________________________________________ 関連項目 f6680_read_fieldプロシージャも参照してください。 5-46 プロシージャ呼び出し形式 fna_as2eb _________________________________________________________________ fna_as2eb _________________________________________________________________ 名称 fna_as2eb -与えられたバッファ・データを,ISO Latinから EBCDIC文字セットに変換します _________________________________________________________________ 形式 #include fna_as2eb (inbuf, outbuf, length) char *inbuf; char *outbuf; unsigned int length; _________________________________________________________________ 引数 inbuf ISO Latinデータの入った入力バッファ。 outbuf EBCDICデータの入った出力バッファ。 length 入力データの長さを指定する。 プロシージャ呼び出し形式 5-47 fna_as2eb _________________________________________________________________ 機能説明 as2ebユーティリティは,ISO LatinデータのバッファをEBCDIC文 字セットに変換します。 _________________________________________________________________ 診断項目 fna_as2ebユーティリティは,次のステータス・メッセージを返し ます。 [FNA_S_OK] 成功。 [FNA_S_LENGTH] バッファの長さが無効。 _________________________________________________________________ 制限事項 なし _________________________________________________________________ 関連項目 fna_eb2asも参照してください。変換テーブルの変更あるいは新規 の作成に関しては,第4.3.2項を参照してください。 5-48 プロシージャ呼び出し形式 fna_eb2as _________________________________________________________________ fna_eb2as _________________________________________________________________ 名称 fna_eb2as -与えられたバッファ・データをEBCDICからISO Latin 文字セットに変換します。 _________________________________________________________________ 形式 #include fna_eb2as (inbuf, outbuf, length) char *inbuf; char *outbuf; unsigned int length; _________________________________________________________________ 引数 inbuf EBCDICデータの入った入力バッファ。 outbuf ISO Latinデータの入った出力バッファ。 length 入力データの長さを指定する。 プロシージャ呼び出し形式 5-49 fna_eb2as _________________________________________________________________ 機能説明 eb2asユーティリティは,EBCDICデータのバッファをISO Latin文 字セットに変換します。 _________________________________________________________________ 診断項目 fna_eb2asユーティリティは,次のステータス・メッセージを返し ます。 [FNA_S_OK] 成功。 [FNA_S_LENGTH] バッファの長さが無効。 _________________________________________________________________ 制限事項 なし _________________________________________________________________ 関連項目 fna_as2ebも参照してください。変換テーブルの変更あるいは新規 の作成に関しては,第4.3.2項を参照してください。 5-50 プロシージャ呼び出し形式 fna_put_msg _________________________________________________________________ fna_put_msg _________________________________________________________________ 名称 fna_put_msg -エラー・コードが与えられると,fna_put_msgユー ティリティは,エラー・メッセージまたは情報メッセージを標準 エラー・ファイルに書き込みます。 _________________________________________________________________ 形式 #include fna_put_msg (facility, status_vec, locale) char *facility; STATUS_RTN status_vec[]; const char *locale; _________________________________________________________________ 引数 facility FNAなどのファシリティ名を指定する。 プロシージャ呼び出し形式 5-51 fna_put_msg status_ OSF/1アプリケーションがメモリを割り当てて,F6680 vec DSPIがユーザに完全なステータス情報を提供するために 使用するデータ・タイプSTATUS_RTNとサイズF6680_C_ SV_SIZEのベクタ。ステータス・ベクタには,status_ vec[0]からstatus_vec[15]までの最大16個のエントリが 入っている。最初のエントリ(status_vec[0])には,ベ クタの中で返されるステータス・コード数が入ってい る。 locale 将来の拡張用に予約。 _________________________________________________________________ 機能説明 fna_put_msgユーティリティは,指定されたエラー・コード(1つ または複数)のエラー・メッセージまたは情報メッセージを標準 エラー・ファイルに書き込みます。 _________________________________________________________________ 診断項目 fna_put_msgユーティリティは,次のステータス・メッセージを返 します。 [FNA_S_OK] 成功。 [FNA_S_NOTFOUND] 所定のステータス・コードのメッセージ がみつからない。 [FNA_S_OPENFAIL] メッセージ・ファイルのオープンに失敗 した。 _________________________________________________________________ 制限事項 なし 5-52 プロシージャ呼び出し形式 fna_put_msg _________________________________________________________________ 関連項目 fna_get_msgユーティリティも参照してください。 プロシージャ呼び出し形式 5-53 fna_get_msg _________________________________________________________________ fna_get_msg _________________________________________________________________ 名称 fna_get_msg - fna_get_msgユーティリティは,所定のエラー・コ ードのエラー・メッセージまたは情報メッセージを返します。 _________________________________________________________________ 形式 #include fna_get_msg (facility, status_vec, buffer_return, buffer_ length, locale) char *facility; STATUS_RTN status_vec[]; char *buffer_return; unsigned int buffer_length; const char *locale; _________________________________________________________________ 引数 facility FNAなどのファシリティ名を指定する。 5-54 プロシージャ呼び出し形式 fna_get_msg status_vec OSF/1アプリケーションがメモリを割り当てて, F6680 DSPIがユーザに完全なステータス情報を提供 するために使用するデータ・タイプSTATUS_RTNとサ イズF6680_C_SV_SIZEのベクタ。ステータス・ベク タには,status_vec[0]からstatus_vec[15]までの 最大16個のエントリが入っている。最初のエントリ (status_vec[0])には,ベクタの中で返されるステー タス・コード数が入っている。 buffer_ エラー・メッセージを格納するバッファへのポイン return タ。 buffer_ リターン・バッファの長さを指定する。 length locale 将来の拡張用に予約。 _________________________________________________________________ 機能説明 fna_get_msgユーティリティは,所定のエラー・コード(1つま たは複数)のエラー・メッセージまたは情報メッセージを返しま す。 _________________________________________________________________ 診断項目 fna_get_msgユーティリティは,次のステータス・メッセージを返 します。 [FNA_S_OK] 成功。 [FNA_S_NOTFOUND] 指定されたステータス・コードのメッセ ージがみつからない。 [FNA_S_OPENFAIL] メッセージ・ファイルのオープンに失敗 した。 プロシージャ呼び出し形式 5-55 fna_get_msg [FNA_S_TRUNC] 出力バッファが適切な大きさではない。 [FNA_S_LENGTH] バッファの長さが無効。 _________________________________________________________________ 制限事項 なし _________________________________________________________________ 関連項目 fna_put_msgユーティリティも参照してください。 5-56 プロシージャ呼び出し形式 6 _________________________________________________________________ F6680 DSPIのインストレーション この章では,setldインストレーション・プロシージャを使用して OSF/1システム上にF6680データ・ストリーム・プログラミング・ インタフェースfor DEC OSF/1(F6680 DSPI)をインストールする 方法について説明します。第6.9節では,インストレーション時に 作成されるF6680 DSPIファイルについて,第6.10節では,システ ム上で実行されるインストレーションについて説明します。 _________________________________________________________________ 6.1 インストレーション必要事項の確認 表 6-1を参照して,ホスト・システムが必要なすべてのソフトウ ェア,十分なディスク領域,ならびにDEC SNA Gateway製品のいず れか1つをアクセスする能力を備えているかどうかを確認してく ださい。 表 6-1 F6680 DSPIのインストレーション必要事項 ___________________________________________________________ 必要事項______________項目_________________________________ 配布メディア CD-ROM 必須ソフトウェア OSF/1 V3.0A 以下のDEC SNA Gateway製品の内,いずれ か1つが必要 DEC SNA Peer Server V1.2 DECnet/SNA Gateway-ST V1.2A 特権 スーパーユーザ・レベル ___________________________________________________________ (次ページに続く) F6680 DSPIのインストレーション 6-1 F6680 DSPIのインストレーション 6.1インストレーション必要事項の確認 表 6-1 (続き) F6680 DSPIのインストレーション必要事項 ___________________________________________________________ 必要事項______________項目_________________________________ ディスク・スぺース 3200 KB インストレーションに 約10分 必要な時間 PAK___________________ソフトウェア・ライセンス_____________ ________________________ 注意 ________________________ 本書における, 'DEC SNA Gateway'とは,特に断らない限り, DEC SNA Peer Server, DECnet/SNA Gateway-STを意味しま す。 ______________________________________________________ _________________________________________________________________ 6.2 必須ソフトウェア・サブセットの確認 F6680 DSPIをインストールする前に,表 6-1に示すソフトウェア がインストールされていなければなりません。 次の表 6-2に,日本語DEC OSF/1の必要なサブセットを示します。 表 6-2 必要なサブセット ___________________________________________________________ サブセット______説明_______________________________________ _________________日本語DEC_OSF/1サブセット_________________ OSFBASEnnn Base System OSFDCMTnnn______Preparation_Tools__________________________ 6-2 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.2必須ソフトウェア・サブセットの確認 ________________________ 注意 ________________________ o nnnは現在のメジャーバージョンと現在のメンテナンス バージョンを示します。 o OSFDCMTnnnは日本語リファレンス・ページをインスト ールする時に必要となるサブセットです。 o トランスポートとしてDECnetを使用する場合, DECnet/OSI(DNABASEnnn)が必要です。 ______________________________________________________ 表 6-2のサブセットがシステムにインストールされているかどう かを調べるには,F6680 DSPIをインストールする予定のシステム にログインし,次のコマンドを入力してください。 # /etc/setld -i | grep subset-name subset- 検索するサブセット名 name DEC OSF/1環境で,レイヤード製品をインストールする場合の詳細 については,日本語DEC OSF/1 AXPのドキュメントを参照してくだ さい。 インストレーションに必要な時間は,システム構成により約5〜 10分掛かります。 _________________________________________________________________ 6.3 FACOMホスト・システムへのアクセスの確認 F6680 DSPIの機能を使用するにはDEC SNA Gatewayを介してFACOM システムにアクセスする必要があります。本製品をインストール して使用する前に,あらかじめDEC SNA Gatewayを確実にインスト ールしておく必要があります。これらの製品のインストールに関 する詳細は,各製品のインストレーション・ガイドを参照してく ださい。 F6680 DSPIのインストレーション 6-3 F6680 DSPIのインストレーション 6.4システム・ディスクのバックアップ _________________________________________________________________ 6.4 システム・ディスクのバックアップ ソフトウェアをインストールする前に,システム・ディスクのバ ックアップをとっておくことをお勧めします。このためには,そ れぞれのサイトで設定されたバックアップ・プロシージャを使用 してください。システム・ディスク・バックアップの実行方法に ついては,OSF/1のドキュメントを参照してください。 _________________________________________________________________ 6.5 ライセンスPAKの登録 F6680 DSPIプロダクトは,OSF/1ライセンス管理機能(LMF)をサポ ートしています。新しくライセンスが承認されたノードでF6680 DSPIを使用するには,ライセンス・データベース(LDB)にライ センス・プロダクト・オーソライゼイション・キー(ライセンス PAK=Product Authorization Key)を登録しなければなりません。 ライセンスとメディアを一緒に注文した場合は,ライセンスPAKが キットと共に配布されます。それ以外の場合には,PAKはライセン ス注文書に示された場所に別個に配布されます。すでにライセン スをもっているノード上に更新としてF6680 DSPIをインストール する場合には,ライセンスPAK登録は既に完了しています。 第6.7節では,PAKの登録方法について説明します。詳しくは, 『DEC OSF/1 Guide to Software Licensing』またはリファレン ス・ページのlmf(8)を参照してください. _________________________________________________________________ 6.6 問題点の通知 本ソフトウェアについては,日本DEC所定のソフトウェア保証基準 に定められた保証が提供されますので,その内容にしたがった処 置をとってください。 なお,ご不明な点につきましては,日本DECの各支店/営業所にお 問い合せください。 6-4 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.7インストレーション方法 _________________________________________________________________ 6.7 インストレーション方法 ソフトウェアをインストールするには,setld インストレーシ ョン・プロシージャを使用します。このプロシージャを実行する と,一連の質問とともにプロンプトが出されます。ほとんどのプ ロンプトは,肯定(yまたはY)または否定(nまたはN)の答を求 めるものです。を入力すれば,いつでもインストレーシ ョン・プロシージャを中断できます。 OSF/1ホストに配布キットをインストールするには,スーパーユー ザ・アカウントにログインすることが必要です。 6.7.1 CD-ROMからのインストレーション F6680 DSPIをインストールするには、配布キットのCD-ROMをマウ ントしてから、setldインストレーション・プロシージャを使用し ます。以下に、詳細にそのプロシージャを記載します。 1. まず、CD-ROM中のF6680 DSPIのファイルのロケーションを確 認します。CD-ROMに含まれるファイルの一覧については、 Consolidated Software Distribution Disk User's Guideの 索引表を参照してください。 2. CD-ROMをCDドライブに設置し、CDドライブのデバイス名でマ ウントします。 # mount -r -d /dev/dev_name /mnt dev_name CDドライブのデバイス名 3. setldインストレーション・プロシージャを使用してF6680 DSPIをインストールします。 # setld -l /usr/public/cdrom/condist/jaxp/FJD100/kit インストレーション・プロシージャは次のメッセージを表示 します。 Please make sure your installation tape is mounted and on-line. Are you ready? (y/n) F6680 DSPIのインストレーション 6-5 F6680 DSPIのインストレーション 6.7インストレーション方法 サブセットの選択 インストレーションを続ける場合は,yを入力します。プロ シージャは以下に示す,メッセージとサブセット・メニュー を表示します。 F6680 Data Stream Programming Interface for DEC OSF/1, V1.0 Copyright Digital Equipment Corporation. 1995. All Rights Reserved. This software is proprietary to and embodies the confidential technology of Digital Equipment Corporation. Possession, use, duplication or dissemination of this software and media is authorized only pursuant to a valid written license from Digital Equipment Corporation or an authorized sublicensor. The subsets listed below are optional: There may be more optional subsets than can be presented on a single screen. If this is the case, you can choose subsets screen by screen or all at once on the last screen. All of the choices you make will be collected for your confirmation before any subsets are installed. 1) DEC/JEF Code TRA Library 2) DEC/JEF Code TRA Man Pages 3) DEC/JEF Code conv Man Pages 4) DEC/JEF Code conv Utility 5) DEC/JEF ext-KANJI def Man Pages 6) DEC/JEF ext-KANJI def Utility 7) EBCDIC-ASCII Transtable Man Pages 8) EBCDIC-ASCII Transtable Utility 9) F6680 DSPI Man Pages 10) F6680 DSPI Or you may choose one of the following options: 11) ALL of the above 12) CANCEL selections and redisplay menus 13) EXIT without installing any subsets Enter your choices or press RETURN to redisplay menus. Choices (for example, 1 2 4-6): 11 インストレーションを続行する場合は,1〜13のオプション を選択します。 o 1を選択すると,DEC/JEFコード変換ライブラリをインス トールします。 6-6 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.7インストレーション方法 o 2を選択すると,DEC/JEFコード変換ライブラリのオンラ イン・リファレンス・ページ(マニュアル・ページ)を インストールします。 o 3を選択すると,jefcodeユーティリティのオンライン・ リファレンス・ページ(マニュアル・ページ)をインス トールします。 o 4を選択すると,jefcodeユーティリティのイメージをイ ンストールします。 o 5を選択すると,jefknjdefユーティリティのオンライ ン・リファレンス・ページ(マニュアル・ページ)をイ ンストールします。 o 6を選択すると,jefknjdefユーティリティのイメージを インストールします。 o 7を選択すると,jsnatratblユーティリティのオンライ ン・リファレンス・ページ(マニュアル・ページ)をイ ンストールします。 o 8を選択すると,jsnatratblユーティリティのイメージ をインストールします。 o 9を選択すると,F6680 DSPIのアプリケーション・イン ターフェイスについて記述したオンライン・リファレン ス・ページ(マニュアル・ページ)をインストールしま す。 o 10を選択すると,F6680 DSPIのアプリケーション・イン ターフェイスのライブラリをインストールします。 o 11を選択すると,1)から10)の全てを指定したことにな り,F6680 DSPIのすべての機能を利用できます。 o 12を選択すると,再びメニュー画面を表示し,最初から 選択をやり直すことができます。 o 13を選択すると,サブセットのインストールを行わず に,プロシージャを終了します。 サブセットの確認 もし,1〜11を選択すると,インストールするサブセットの 一覧を表示し,利用者が行った選択が正しいかどうか,質問 があります。例えば,11を選択した場合には,次のメッセー ジが表示されます。 F6680 DSPIのインストレーション 6-7 F6680 DSPIのインストレーション 6.7インストレーション方法 You are installing the following optional subsets: DEC/JEF Code TRA Library DEC/JEF Code TRA Man Pages DEC/JEF Code conv Man Pages DEC/JEF Code conv Utility DEC/JEF ext-KANJI def Man Pages DEC/JEF ext-KANJI def Utility EBCDIC-ASCII Transtable Man Pages EBCDIC-ASCII Transtable Utility F6680 DSPI Man Pages F6680 DSPI Is this correct? (y/n): y yを入力すると,インストレーション・プロシージャはそれ ぞれのサブセット毎にコピーと確認を実施します。nを入力 すると,再びサブセットの一覧を表示します。次の例は,11 を選択し,実行した結果として表示されるメッセージです。 Checking file system space required to install selected subsets: File system space checked OK. EBCDIC-ASCII Transtable Utility Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying EBCDIC-ASCII Transtable Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF ext-KANJI def Utility Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF ext-KANJI def Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF Code conv Utility Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF Code conv Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying 6-8 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.7インストレーション方法 DEC/JEF Code TRA Library Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF Code TRA Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying F6680 DSPI Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying F6680 DSPI Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying Creating softlinks for SJRTTBL100 ... done. インストレーション中のIVPの実行 インストレーション・プロシージャの一部として,インス トレーション検証プロシジャ(IVP)を実行することをお勧 めします。それには,次のメッセージに対してyを入力しま す。 IVPは利用者が選択したサブセットが正しくインストールさ れたかどうか確認します。IVPが終了すると,インストレー ションは完了します。オプション11を選択した場合には,次 のようにメッセージが表示されます。 Would you like to run IVP for SJRTTBL100? (y/n) [y]: Beginning the IVP for SJRTTBL100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for SJRTTBL100 finished successfully. EBCDIC-ASCII Transtable Utility Configuring "EBCDIC-ASCII Transtable Utility" (SJRTTBL100) Creating softlinks for SJRTTMAN100 ... done. Would you like to run IVP for SJRTTMAN100? (y/n) [y]: Beginning the IVP for SJRTTMAN100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for SJRTTMAN100 finished successfully. EBCDIC-ASCII Transtable Man Pages Configuring "EBCDIC-ASCII Transtable Man Pages" (SJRTTMAN100) Configuring "DEC/JEF ext-KANJI def Utility" (FJRKDEF210) F6680 DSPIのインストレーション 6-9 F6680 DSPIのインストレーション 6.7インストレーション方法 Configuring "DEC/JEF ext-KANJI def Man Pages" (FJRKDMAN210) ********************* N O T E *********************** * * * You must register a licensed F6680 Data Stream * * Programming Interface for DEC OSF/1 PAK first before * * you can begin using the DSPI. * * * * After the installation, please modify the template to * * include your specific PAK data, register, and load * * the license with the following commands: * * * * lmf register /usr/var/adm/lmf/FNA-6680-DSPI-OA-JAPAN * * lmf reset * * * ********************************************************** [ Press the RETURN key to continue ]: Creating softlinks for FJRCODE100 ... done. Would you like to run IVP for FJRCODE100? (y/n) [y]: Beginning the IVP for FJRCODE100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJRCODE100 finished successfully. DEC/JEF Code conv Utility Configuring "DEC/JEF Code conv Utility" (FJRCODE100) Creating softlinks for FJRCMAN100 ... done. Would you like to run IVP for FJRCMAN100? (y/n) [y]: Beginning the IVP for FJRCMAN100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJRCMAN100 finished successfully. DEC/JEF Code conv Man Pages Configuring "DEC/JEF Code conv Man Pages" (FJRCMAN100) 6-10 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.7インストレーション方法 ********************* N O T E *********************** * * * You must register a licensed F6680 Data Stream * * Programming Interface for DEC OSF/1 PAK first before * * you can begin using the DSPI. * * * * After the installation, please modify the template to * * include your specific PAK data, register, and load * * the license with the following commands: * * * * lmf register /usr/var/adm/lmf/FNA-6680-DSPI-OA-JAPAN * * lmf reset * * * ********************************************************** [ Press the RETURN key to continue ]: Creating softlinks for FJRTRA100 ... done. Would you like to run IVP for FJRTRA100? (y/n) [y]: Beginning the IVP for FJRTRA100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJRTRA100 finished successfully. DEC/JEF Code TRA Library Configuring "DEC/JEF Code TRA Library" (FJRTRA100) Creating softlinks for FJRTRMAN100 ... done. Would you like to run IVP for FJRTRMAN100? (y/n) [y]: Beginning the IVP for FJRTRMAN100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJRTRMAN100 finished successfully. DEC/JEF Code TRA Man Pages Configuring "DEC/JEF Code TRA Man Pages" (FJRTRMAN100) F6680 DSPIのインストレーション 6-11 F6680 DSPIのインストレーション 6.7インストレーション方法 ********************* N O T E *********************** * * * You must register a licensed F6680 Data Stream * * Programming Interface for DEC OSF/1 PAK first before * * you can begin using the DSPI. * * * * After the installation, please modify the template to * * include your specific PAK data, register, and load * * the license with the following commands: * * * * lmf register /usr/var/adm/lmf/FNA-6680-DSPI-OA-JAPAN * * lmf reset * * * ********************************************************** [ Press the RETURN key to continue ]: Creating softlinks for FJDDSPI100 ... done. Would you like to run IVP for FJDDSPI100? (y/n) [y]: Beginning the IVP for FJDDSPI100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJDDSPI100 finished successfully. F6680 DSPI/Japanese Configuring "F6680 DSPI" (FJDDSPI100) Creating softlinks for FJDDSMAN100 ... done. Would you like to run IVP for FJDDSMAN100? (y/n) [y]: Beginning the IVP for FJDDSMAN100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJDDSMAN100 finished successfully. F6680 DSPI Man Pages Configuring "F6680 DSPI Man Pages" (FJDDSMAN100) サブセットが正常にインストールされなかった場合には, IVPは次のメッセージを表示して,インストレーションが失 敗したことを知らせます。 Running IVP for FJDDSPI100 IVP for FJDDSPI100 failed. 6-12 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.7インストレーション方法 6.7.2 IVPの実行方法 F6680 DSPIソフトウェア・サブセットをインストールした後であ れば,いつでもインストレーション検証プロシージャ(IVP)を実 行できます。そのためには,スーパーユーザとしてログインしな ければなりません。setld -vと入力した後に,次の例に示すよう に,確認したいサブセット名を入力します。 # setld -v FJDDSPI100 FJDDSMAN100 この例でわかるように,一度に複数のサブセットの名前を指定す ることができます。それぞれのサブセット名は大文字で指定し, スペースで区切るようにします。IVPを正しく実行できた例を次に 示します。 # setld -v FJDDSPI100 F6680 DSPI(FJDDSPI100) Beginning the IVP for FJDDSPI100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJDDSPI100 finished successfully. F6680 DSPI 6.7.3 IVPが失敗した場合 IVPが失敗した場合には,次のようなメッセージが出されます。 F6680 DSPI(FJDDSPI100) Beginning the IVP for FJDDSPI100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJDDSPI100 failed F6680 DSPI F6680 DSPIのインストレーション 6-13 F6680 DSPIのインストレーション 6.8内部コマンド・テーブルの再構築 _________________________________________________________________ 6.8 内部コマンド・テーブルの再構築 F6680 DSPIをインストールしたら,OSF/1スーパーユーザ・プロン プトに対して rehashコマンドを入力します。このコマンドは, パスにあるディレクトリに存在する内部コマンド・テーブルを再 構築するようにOSF/1シェルに指示します。このコマンドについ ては,『OSF/1 Reference Pages』のrehash(1)を参照してくださ い。 # rehash _________________________________________________________________ 6.9 インストレーション後のF6680 DSPIファイルの配置 setldインストレーション・プロシージャは,F6680 DSPIファイル をシステム上に配置します。表 6-3は,F6680 DSPIファイルと説 明を一覧にしたもので,それぞれの位置も示してあります。 表 6-3 F6680 DSPIファイル _________________________________________________________________ ディレクトリおよびファイル名______説明___________________________ サブセットFJDDSPI100______________F6680_DSPI_____________________ /usr/i18n/usr/examples/f6680 サンプル・プログラム用Makefile /Makefile /usr/i18n/usr/examples/f6680 AMNUトランザクション・プログラ /amnu.c ミング例 /usr/i18n/usr/examples/f6680 マルチ・セッション・プログラミ /mult_sess.c ング例 /usr/i18n/usr/examples/f6680 ストリーム・モード・プログラミ /stream.c ング例 /usr/i18n/usr/include/fna F6680 DSPIの定義が含まれている /f6680.h ヘッダー・ファイル _________________________________________________________________ (次ページに続く) 6-14 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.9インストレーション後のF6680 DSPIファイルの配置 表 6-3 (続き) F6680 DSPIファイル _________________________________________________________________ ディレクトリおよびファイル名______説明___________________________ サブセットFJDDSPI100______________F6680_DSPI_____________________ /usr/i18n/usr/lib/libfna6680.a F6680 DSPIライブラリ /usr/lib/sna/ja_JP.FNA/f6680_ メッセージ・ファイル msg.cat _________________________________________________________________ (次ページに続く) F6680 DSPIのインストレーション 6-15 F6680 DSPIのインストレーション 6.9インストレーション後のF6680 DSPIファイルの配置 表 6-3 (続き) F6680 DSPIファイル _________________________________________________________________ _________________________________________________________________ サブセットFJDDSMAN100_____________F6680_DSPIリファレンス・ページ_ /usr/i18n/usr/share/ja_ f6680_acknowledge サブルーチ JP.deckanji/man/man3/f6680_ ン・マンページ acknowledge.3 /usr/i18n/usr/share/ja_ f6680_free_buffer サブルーチ JP.deckanji/man/man3/f6680_ ン・マンページ free_buffer.3 /usr/i18n/usr/share/ja_ f6680_lock_screen サブルーチ JP.deckanji/man/man3/f6680_ ン・マンページ lock_screen.3 /usr/i18n/usr/share/ja_ f6680_read_field サブルーチン・ JP.deckanji/man/man3/f6680_ マンページ read_field.3 /usr/i18n/usr/share/ja_ f6680_receive_screen サブルーチ JP.deckanji/man/man3/f6680_ ン・マンページ receive_screen.3 /usr/i18n/usr/share/ja_ f6680_receive_stream サブルーチ JP.deckanji/man/man3/f6680_ ン・マンページ receive_stream.3 _________________________________________________________________ (次ページに続く) 6-16 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.9インストレーション後のF6680 DSPIファイルの配置 表 6-3 (続き) F6680 DSPIファイル _________________________________________________________________ ディレクトリおよびファイル名______説明___________________________ サブセットFJDDSMAN100_____________F6680_DSPIリファレンス・ページ_ /usr/i18n/usr/share/ja_ f6680_request_connect サブルー JP.deckanji/man/man3/f6680_ チン・マンページ request_connect.3 /usr/i18n/usr/share/ja_ f6680_request_disconnect サブル JP.deckanji/man/man3/f6680_ ーチン・マンページ request_disconnect.3 _________________________________________________________________ (次ページに続く) F6680 DSPIのインストレーション 6-17 F6680 DSPIのインストレーション 6.9インストレーション後のF6680 DSPIファイルの配置 表 6-3 (続き) F6680 DSPIファイル _________________________________________________________________ ディレクトリおよびファイル名______説明___________________________ サブセットFJDDSMAN100_____________F6680_DSPIリファレンス・ページ_ /usr/i18n/usr/share/ja_ f6680_return_io_port サブルーチ JP.deckanji/man/man3/f6680_ ン・マンページ return_io_port.3 /usr/i18n/usr/share/ja_ f6680_set_owner サブルーチン・ JP.deckanji/man/man3/f6680_ マンページ set_owner.3 /usr/i18n/usr/share/ja_ f6680_transmit_screen サブルー JP.deckanji/man/man3/f6680_ チン・マンページ transmit_screen.3 /usr/i18n/usr/share/ja_ f6680_transmit_fna_cmd サブルー JP.deckanji/man/man3/f6680_ チン・マンページ transmit_fna_cmd.3 /usr/i18n/usr/share/ja_ f6680_transmit_stream サブルー JP.deckanji/man/man3/f6680_ チン・マンページ transmit_stream.3 /usr/i18n/usr/share/ja_ f6680_write_field サブルーチ JP.deckanji/man/man3/f6680_ ン・マンページ write_field.3 _________________________________________________________________ (次ページに続く) 6-18 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.9インストレーション後のF6680 DSPIファイルの配置 表 6-3 (続き) F6680 DSPIファイル _________________________________________________________________ ディレクトリおよびファイル名______説明___________________________ サブセットFJDDSMAN100_____________F6680_DSPIリファレンス・ページ_ /usr/i18n/usr/share/ja_ jsna_get_msgサブルーチン・マン JP.deckanji/man/man3/fna_get_ ページ msg.3 /usr/i18n/usr/share/ja_ jsna_put_msgサブルーチン・マン JP.deckanji/man/man3/fna_put_ ページ msg.3 /usr/i18n/usr/share/ja_ sna_as2ebサブルーチン・マンペー JP.deckanji/man/man3/fna_as2eb.3 ジ /usr/i18n/usr/share/ja_ sna_eb2asサブルーチン・マンペー JP.deckanji/man/man3/fna_eb2as.3 ジ _________________________________________________________________ サブセットFJRTRA100______________________________________________ /usr/i18n/usr/lib/libftra.a DEC/JEFコード変換ライブラリ /usr/i18n/usr/include/fna/ftra_ DEC/JEFコード変換ライブラリ用ヘ def.h ッダー・ファイル /usr/lib/sna/ja_JP.FNA/ftra_ DEC/JEFコード変換ライブラリ用サ sample.c ンプル・プログラム _________________________________________________________________ (次ページに続く) F6680 DSPIのインストレーション 6-19 F6680 DSPIのインストレーション 6.9インストレーション後のF6680 DSPIファイルの配置 表 6-3 (続き) F6680 DSPIファイル _________________________________________________________________ _________________________________________________________________ DEC/JEFコード変換ライブラリ・リ サブセットFJRTRMAN100_____________ファレンス・ページ_____________ /usr/i18n/usr/share/ja_ JP.deckanji/man/man3/ftra_dec_ jef_init.3 /usr/i18n/usr/share/ja_ JP.deckanji/man/man3/ftra_dec_ jef_free.3 /usr/i18n/usr/share/ja_ JP.deckanji/man/man3/ftra_jef_ dec.3 /usr/i18n/usr/share/ja_ JP.deckanji/man/man3/ftra_dec_ jef.3 _________________________________________________________________ サブセットFJRKDEF100_____________________________________________ /usr/i18n/usr/bin/jefknjdef jefknjdefユーティリティ _________________________________________________________________ サブセットFJRKDMAN100____________________________________________ /usr/i18n/usr/share/ja_ jefknjdef日本語リファレンス・ペ JP.deckanji/man/man8/jefknjdef.8 ージ _________________________________________________________________ (次ページに続く) 6-20 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.9インストレーション後のF6680 DSPIファイルの配置 表 6-3 (続き) F6680 DSPIファイル _________________________________________________________________ _________________________________________________________________ サブセットFJRCODE100_____________________________________________ /usr/i18n/usr/bin/jefcode jefcodeユーティリティ /usr/lib/sna/ja_JP.FNA jefcodeユーティリティ・1バイト /fnarjetra.tbl コード変換テーブル /usr/lib/sna/ja_JP.FNA jefcodeユーティリティ・1バイト /fnarjetra.mar コード変換テーブル・テンプレー ト・ファイル /usr/lib/sna/ja_JP.FNA jefcodeユーティリティ・メッセー /jefcode.cat ジ・ファイル _________________________________________________________________ サブセットFJRCMAN100_____________________________________________ /usr/i18n/usr/share/ja_ jefcodeユーティリティ日本語リフ JP.deckanji/man/man1/jefcode.1 ァレンス・ページ _________________________________________________________________ サブセットSJRTTBL100_____________________________________________ /usr/i18n/usr/bin/jsnatratbl jsnatratblユーティリティ _________________________________________________________________ サブセットSJRTTMAN100____________________________________________ /usr/i18n/usr/share/ja_ jsnatratblユーティリティ日本語 JP.deckanji/man/man8 リファレンス・ページ /jsnatratbl.8____________________________________________________ F6680 DSPIのインストレーション 6-21 F6680 DSPIのインストレーション 6.10インストレーション例 _________________________________________________________________ 6.10 インストレーション例 ここでは,F6680 DSPIのインストレーション例を示します。これ はインストレーションの一例ですので,実際のインストレーショ ン・プロシージャは多少異なることに注意してください。 # setld -l /usr/public/cdrom/condist/jaxp/FJD100/kit F6680 Data Stream Programming Interface for DEC OSF/1, V1.0 Copyright Digital Equipment Corporation. 1995. All Rights Reserved. This software is proprietary to and embodies the confidential technology of Digital Equipment Corporation. Possession, use, duplication or dissemination of this software and media is authorized only pursuant to a valid written license from Digital Equipment Corporation or an authorized sublicensor. The subsets listed below are optional: There may be more optional subsets than can be presented on a single screen. If this is the case, you can choose subsets screen by screen or all at once on the last screen. All of the choices you make will be collected for your confirmation before any subsets are installed. 1) DEC/JEF Code TRA Library 2) DEC/JEF Code TRA Man Pages 3) DEC/JEF Code conv Man Pages 4) DEC/JEF Code conv Utility 5) DEC/JEF ext-KANJI def Man Pages 6) DEC/JEF ext-KANJI def Utility 7) EBCDIC-ASCII Transtable Man Pages 8) EBCDIC-ASCII Transtable Utility 9) F6680 DSPI Man Pages 10) F6680 DSPI Or you may choose one of the following options: 11) ALL of the above 12) CANCEL selections and redisplay menus 13) EXIT without installing any subsets Enter your choices or press RETURN to redisplay menus. Choices (for example, 1 2 4-6): 11 You are installing the following optional subsets: 6-22 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.10インストレーション例 DEC/JEF Code TRA Library DEC/JEF Code TRA Man Pages DEC/JEF Code conv Man Pages DEC/JEF Code conv Utility DEC/JEF ext-KANJI def Man Pages DEC/JEF ext-KANJI def Utility EBCDIC-ASCII Transtable Man Pages EBCDIC-ASCII Transtable Utility F6680 DSPI Man Pages F6680 DSPI Is this correct? (y/n): y Checking file system space required to install selected subsets: File system space checked OK. EBCDIC-ASCII Transtable Utility Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying EBCDIC-ASCII Transtable Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF ext-KANJI def Utility Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF ext-KANJI def Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF Code conv Utility Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF Code conv Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF Code TRA Library Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying DEC/JEF Code TRA Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying F6680 DSPIのインストレーション 6-23 F6680 DSPIのインストレーション 6.10インストレーション例 F6680 DSPI Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying F6680 DSPI Man Pages Copying from /usr/public/cdrom/condist/jaxp/FJD100/kit (disk) Verifying Creating softlinks for SJRTTBL100 ... done. Would you like to run IVP for SJRTTBL100? (y/n) [y]: Beginning the IVP for SJRTTBL100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for SJRTTBL100 finished successfully. EBCDIC-ASCII Transtable Utility Configuring "EBCDIC-ASCII Transtable Utility" (SJRTTBL100) Creating softlinks for SJRTTMAN100 ... done. Would you like to run IVP for SJRTTMAN100? (y/n) [y]: Beginning the IVP for SJRTTMAN100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for SJRTTMAN100 finished successfully. EBCDIC-ASCII Transtable Man Pages Configuring "EBCDIC-ASCII Transtable Man Pages" (SJRTTMAN100) Configuring "DEC/JEF ext-KANJI def Utility" (FJRKDEF210) Configuring "DEC/JEF ext-KANJI def Man Pages" (FJRKDMAN210) ********************* N O T E *********************** * * * You must register a licensed F6680 Data Stream * * Programming Interface for DEC OSF/1 PAK first before * * you can begin using the DSPI. * * * * After the installation, please modify the template to * * include your specific PAK data, register, and load * * the license with the following commands: * * * * lmf register /usr/var/adm/lmf/FNA-6680-DSPI-OA-JAPAN * * lmf reset * * * ********************************************************** [ Press the RETURN key to continue ]: Creating softlinks for FJRCODE100 ... done. 6-24 F6680 DSPIのインストレーション F6680 DSPIのインストレーション 6.10インストレーション例 Would you like to run IVP for FJRCODE100? (y/n) [y]: Beginning the IVP for FJRCODE100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJRCODE100 finished successfully. DEC/JEF Code conv Utility Configuring "DEC/JEF Code conv Utility" (FJRCODE100) Creating softlinks for FJRCMAN100 ... done. Would you like to run IVP for FJRCMAN100? (y/n) [y]: Beginning the IVP for FJRCMAN100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJRCMAN100 finished successfully. DEC/JEF Code conv Man Pages Configuring "DEC/JEF Code conv Man Pages" (FJRCMAN100) ********************* N O T E *********************** * * * You must register a licensed F6680 Data Stream * * Programming Interface for DEC OSF/1 PAK first before * * you can begin using the DSPI. * * * * After the installation, please modify the template to * * include your specific PAK data, register, and load * * the license with the following commands: * * * * lmf register /usr/var/adm/lmf/FNA-6680-DSPI-OA-JAPAN * * lmf reset * * * ********************************************************** [ Press the RETURN key to continue ]: Creating softlinks for FJRTRA100 ... done. Would you like to run IVP for FJRTRA100? (y/n) [y]: Beginning the IVP for FJRTRA100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJRTRA100 finished successfully. DEC/JEF Code TRA Library Configuring "DEC/JEF Code TRA Library" (FJRTRA100) Creating softlinks for FJRTRMAN100 ... done. F6680 DSPIのインストレーション 6-25 F6680 DSPIのインストレーション 6.10インストレーション例 Would you like to run IVP for FJRTRMAN100? (y/n) [y]: Beginning the IVP for FJRTRMAN100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJRTRMAN100 finished successfully. DEC/JEF Code TRA Man Pages Configuring "DEC/JEF Code TRA Man Pages" (FJRTRMAN100) ********************* N O T E *********************** * * * You must register a licensed F6680 Data Stream * * Programming Interface for DEC OSF/1 PAK first before * * you can begin using the DSPI. * * * * After the installation, please modify the template to * * include your specific PAK data, register, and load * * the license with the following commands: * * * * lmf register /usr/var/adm/lmf/FNA-6680-DSPI-OA-JAPAN * * lmf reset * * * ********************************************************** [ Press the RETURN key to continue ]: Creating softlinks for FJDDSPI100 ... done. Would you like to run IVP for FJDDSPI100? (y/n) [y]: Beginning the IVP for FJDDSPI100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJDDSPI100 finished successfully. F6680 DSPI/Japanese Configuring "F6680 DSPI" (FJDDSPI100) Creating softlinks for FJDDSMAN100 ... done. Would you like to run IVP for FJDDSMAN100? (y/n) [y]: Beginning the IVP for FJDDSMAN100... Copyright Digital Equipment Corporation. 1995. All Rights Reserved. IVP for FJDDSMAN100 finished successfully. F6680 DSPI Man Pages Configuring "F6680 DSPI Man Pages" (FJDDSMAN100) # 6-26 F6680 DSPIのインストレーション A _________________________________________________________________ アテンション識別の値 表 A-1は,OSF/1アプリケーションがIBMホストに送信するアテン ション識別コードの値を示しています。 表 A-1 アテンション識別の値 ___________________________________________________________ 16進数の文 シンボル___________字(EBCDIC)__相当するキー________________ F6680_C_AID_ENTER 7D 実行キーを押す F6680_C_AID_MAX_ 6E 最大PA PA F6680_C_AID_MIN_ 6B 最小PA PA F6680_C_AID_NONE 60 AIDを生成しない(表示) F6680_C_AID_PF1 F1 PF1キーを押す F6680_C_AID_PF2 F2 PF2キーを押す F6680_C_AID_PF3 F3 PF3キーを押す F6680_C_AID_PF4 F4 PF4キーを押す F6680_C_AID_PF5 F5 PF5キーを押す F6680_C_AID_PF6 F6 PF6キーを押す ___________________________________________________________ (次ページに続く) アテンション識別の値 A-1 アテンション識別の値 表 A-1 (続き) アテンション識別の値 ___________________________________________________________ 16進数の文 シンボル___________字(EBCDIC)__相当するキー________________ F6680_C_AID_PF7 F7 PF7キーを押す F6680_C_AID_PF8 F8 PF8キーを押す F6680_C_AID_PF9 F9 PF9キーを押す F6680_C_AID_PF10 7A PF10キーを押す F6680_C_AID_PF11 7B PF11キーを押す F6680_C_AID_PF12 7C PF12キーを押す F6680_C_AID_PF13 C1 PF13キーを押す F6680_C_AID_PF14 C2 PF14キーを押す F6680_C_AID_PF15 C3 PF15キーを押す F6680_C_AID_PF16 C4 PF16キーを押す F6680_C_AID_PF17 C5 PF17キーを押す F6680_C_AID_PF18 C6 PF18キーを押す F6680_C_AID_PF19 C7 PF19キーを押す F6680_C_AID_PF20 C8 PF20キーを押す F6680_C_AID_PF21 C9 PF21キーを押す F6680_C_AID_PF22 4A PF22キーを押す F6680_C_AID_PF23 4B PF23キーを押す ___________________________________________________________ (次ページに続く) A-2 アテンション識別の値 アテンション識別の値 表 A-1 (続き) アテンション識別の値 ___________________________________________________________ 16進数の文 シンボル___________字(EBCDIC)__相当するキー________________ F6680_C_AID_PF24 4C PF24キーを押す F6680_C_AID_PEN 7E 選択用ライト・ペン・アテンシ ョン F6680_C_AID_PA1 6C PA1キーを押す F6680_C_AID_PA2 6E PA2キーを押す F6680_C_AID_PA3 6B PA3キーを押す F6680_C_AID_CLEAR 6D Clearを押す F6680_C_AID_REQ____F0__________Requestを押す_______________ アテンション識別の値 A-3 B _________________________________________________________________ F6680 DSPIの定義 この付録の表には,アプリケーションを作成するときに使用する シンボルと値が示されています。表の名前は次のとおりです。 o 表 B-1:接続関連定数 o 表 B-2:省略時の拡張属性タイプと値 o 表 B-3:リプライ・モード定数 o 表 B-4:カラー定数 o 表 B-5:フィールド/文字属性 o 表 B-6:セッション送信状態 o 表 B-7:セッション受信連鎖状態 o 表 B-8:セッション送信連鎖状態 o 表 B-9:ブラケット状態 o 表 B-10:LUSTATを使用したフラグ o 表 B-11:アウト・オブ・バウンド要求のFNAコマンド o 表 B-12:画面所有権 o 表 B-13:フィールド操作 o 表 B-14:6680指令定義 o 表 B-15:6680副指令定義 o 表 B-16:拡張属性タイプ o 表 B-17:AIDキー定義 F6680 DSPIにある定義ファイルをご使用になることをお勧めしま す。これは,本製品の将来のリリースによる変更に影響されない ためです。 F6680 DSPIの定義 B-1 F6680 DSPIの定義 表 B-1 接続関連定数 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_ACT 1 アクティブ接続 F6680_C_PASS 0 パッシブ接続 F6680_C_STREAM_MODE 0 ストリーム・モード F6680_C_FIELD_MODE 2 フィールド・モード F6680_C_NON_BLOCK 0 非ブロック F6680_C_BLOCK 1 ブロック F6680_C_DEF_SCR_SIZE 1920 省略時画面サイズ F6680_C_DEF_ROWS 24 省略時行数 F6680_C_DEF_COLS_______80______省略時桁数__________________ B-2 F6680 DSPIの定義 F6680 DSPIの定義 表 B-2 省略時の拡張属性タイプと値 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_DEF_COL 0 省略時カラー F6680_C_DEF_VAL 0 省略時field validation F6680_C_DEF_OUT 0 省略時罫線 F6680_C_DEF_FCOL 0 省略時前景カラー F6680_C_DEF_HLT________0_______省略時強調表示______________ 表 B-3 リプライ・モード定数 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_RP_FMODE 0 フィールド・モード F6680_C_RP_EXTMODE 1 拡張フィールドモード F6680_C_RP_CMODE_______2_______文字モード__________________ 表 B-4 カラー定数 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_BLUE 241 青 F6680_C_RED 242 赤 F6680_C_PINK 243 ピンク F6680_C_GREEN 244 緑 F6680_C_SKYBLUE 245 空色 F6680_C_YELLOW 246 黄色 ___________________________________________________________ (次ページに続く) F6680 DSPIの定義 B-3 F6680 DSPIの定義 表 B-4 (続き) カラー定数 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_WHITE__________247_____白__________________________ 表 B-5 フィールド/文字属性 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_ATTR_NORM 0 普通輝度 F6680_C_ATTR_PEN_DET 1 探知可能 F6680_C_ATTR_HIGH 2 高輝度 F6680_C_ATTR_INVIS 3 非表示 F6680_C_NORMAL 240 標準 F6680_C_BLINK 241 明滅 F6680_C_REVERSE 242 反転表示 F6680_C_UNDRSCR 244 下線 F6680_C_INTENSE________248_____Intensive_display___________ 表 B-6 セッション送信状態 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_CANNOT_SEND 0 送信不可能 F6680_C_CAN_SEND 1 送信可能 F6680_C_MORE_TO_SEND 1 さらに構造化フィールドを送信 _______________________________する(第3.3節を参照)_______ B-4 F6680 DSPIの定義 F6680 DSPIの定義 表 B-7 セッション受信連鎖状態 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_BETC 0 最終連鎖受信が完了した F6680_C_NOT__BETC______1_______最終連鎖受信が完了していない 表 B-8 セッション送信連鎖状態 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_NOT_LAST 0 最終RUが送信されていない F6680_C_LAST_RU 1 最終RUが送信された F6680_C_LAST_IN_CHAIN 2 最終RUが連鎖していて,もう一 _______________________________つの連鎖が続いている________ 表 B-9 ブラケット状態 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_BETB 0 ブラケット間 F6680_C_NOT_BETB_______1_______ブラケット間ではない________ 表 B-10 LUSTATで使用するフラグ ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_ERR_STATE -1 どの状態でもない F6680_C_LUSTAT_DUE 3 LUSTATコマンドを送信する必要 がある F6680_C_SSCP 0 SSCPからデータを受信した ___________________________________________________________ (次ページに続く) F6680 DSPIの定義 B-5 F6680 DSPIの定義 表 B-10 (続き) LUSTATで使用するフラグ ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_LULU 1 LU-LUセッションからデータを _______________________________受信した____________________ 表 B-11 アウト・オブ・バウンド要求のFNAコマンド ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_CMD_NOTIFYON 0 装置がオンラインであることを 知らせる通知コマンド F6680_C_CMD_NOTIFYOFF 1 装置がオフラインであることを 知らせる通知コマンド F6680_C_CMD_LUSTAT 2 LUSTATコマンド F6680_C_CMD_SIGNAL_____3_______信号コマンド________________ 表 B-12 画面所有権 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_SSCP_OWNED 0 SSCP所有 F6680_C_LU_OWNED 1 LU所有 F6680_C_UNOWNED________2_______非所有______________________ 表 B-13 フィールド操作 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_READ 0 読取り F6680_C_SEARCH 1 検索 ___________________________________________________________ (次ページに続く) B-6 F6680 DSPIの定義 F6680 DSPIの定義 表 B-13 (続き) フィールド操作 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_READ_NEXT 2 次のフィールドを読み取る F6680_C_SEARCH_NEXT____2_______次のフィールドを検索する____ 表 B-14 6680指令定義 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_CMD_NULL 0 No command F6680_C_CMD_ERALLUNP 111 Erase all unprotected F6680_C_CMD_ERWRITE 245 Erase/write F6680_C_CMD_READ 242 Read buffer F6680_C_CMD_READMOD 246 Read modified F6680_C_CMD_ 110 Read modified all READMODALL F6680_C_CMD_WRITE 241 Write F6680_C_CMD_WRITESTRF__243_____Write_structured_field______ F6680 DSPIの定義 B-7 F6680 DSPIの定義 表 B-15 6680副指令定義 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_ORD_NUL 0 Null (A)* F6680_C_ORD_MIN 1 副指令コード範囲の最低値* F6680_C_ORD_PT 5 Program tab* F6680_C_ORD_GE 8 Graphics escape* F6680_C_ORD_FF 12 Form feed (P)* F6680_C_ORD_CR 13 Carriage return (P)* F6680_C_ORD_SHIFT_K 40 shift-K F6680_C_ORD_SHIFT_A 41 shift-A F6680_C_ORD_SBA 17 Set buffer address* F6680_C_ORD_EUA 18 Erase unprotected to address* F6680_C_ORD_IC 19 Insert cursor* F6680_C_ORD_NL 21 New line (P)* F6680_C_ORD_EM 25 End message (P)* F6680_C_ORD_DUP 28 Duplicate (A)* F6680_C_ORD_SF 29 Start field* F6680_C_ORD_FM 30 Field mark (A)* F6680_C_ORD_SA 40 Set attribute* ___________________________________________________________ (次ページに続く) B-8 F6680 DSPIの定義 F6680 DSPIの定義 表 B-15 (続き) 6680副指令定義 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_ORD_SFE 41 Start field extended* F6680_C_ORD_MF 44 Modify field* F6680_C_ORD_RA 60 Repeat to address* F6680_C_ORD_SUB 63 Substitution character* F6680_C_ORD_MAX 63 副指令コード範囲の最高値* F6680_C_ORD_SPACE 64 Space character (A)* F6680_C_ORD_HYPHEN 96 Hyphen character (A)* F6680_C_ORD_SFEF 27 Start Field Extended/F* F6680_C_ORD_LDEL 57 Line Delete with Screen Up* F6680_C_ORD_LINS 58 Line Insert with Screen _______________________________Down*_______________________ ________________________ 注意 ________________________ * write副指令は全ての書込み指令のデータ・フィールド中 に存在する事が考えられます。それらは3F(16進数)より大 きな値をもっていないので,表示可能な文字と見分けること ができます。(P)のついた副指令はプリンタをサポートして います。(A)のついた副指令は実際の6680副指令ではなく適 用業務プログラムで使用される特殊文字です。 ______________________________________________________ F6680 DSPIの定義 B-9 F6680 DSPIの定義 表 B-16 拡張属性タイプ ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_ATTR_CHATT 0 全ての文字属性 F6680_C_ATTR_FCOL 66 拡張カラー F6680_C_ATTR_HLT 65 拡張強調表示 F6680_C_ATTR_FATT1 81 拡張属性 F6680_C_ATTR_FATT 192 基本属性 F6680_C_ATTR_FVLD 193 field validation F6680_C_ATTR_FOUT______194_____罫線________________________ B-10 F6680 DSPIの定義 F6680 DSPIの定義 表 B-17 AIDキー定義 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_AID_CLEAR 109 CLEAR (_) F6680_C_AID_ENTER 125 CLEAR (') F6680_C_AID_NONE 96 No AID pressed (-) F6680_C_AID_PA1 108 PA 1 (%) F6680_C_AID_PA2 110 PA 2 (>) F6680_C_AID_PA3 107 PA 3 (,) F6680_C_AID_PF1 241 PF 1 (1) F6680_C_AID_PF2 242 PF 2 (2) F6680_C_AID_PF3 243 PF 3 (3) F6680_C_AID_PF4 244 PF 4 (4) F6680_C_AID_PF5 245 PF 5 (5) F6680_C_AID_PF6 246 PF 6 (6) F6680_C_AID_PF7 247 PF 7 (7) F6680_C_AID_PF8 248 PF 8 (8) F6680_C_AID_PF9 249 PF 9 (9) F6680_C_AID_PF10 122 PF10 (:) F6680_C_AID_PF11 123 PF11 (#) F6680_C_AID_PF12 124 PF12 (@) ___________________________________________________________ (次ページに続く) F6680 DSPIの定義 B-11 F6680 DSPIの定義 表 B-17 (続き) AIDキー定義 ___________________________________________________________ シンボル_______________値______意味________________________ F6680_C_AID_PF13 193 PF13 (A) F6680_C_AID_PF14 194 PF14 (B) F6680_C_AID_PF15 195 PF15 (C) F6680_C_AID_PF16 196 PF16 (D) F6680_C_AID_PF17 197 PF17 (E) F6680_C_AID_PF18 198 PF18 (F) F6680_C_AID_PF19 199 PF19 (G) F6680_C_AID_PF20 200 PF20 (H) F6680_C_AID_PF21 201 PF21 (I) F6680_C_AID_PF22 74 PF22 (¢) F6680_C_AID_PF23 75 PF23 (.) F6680_C_AID_PF24 76 PF24 (<) F6680_C_AID_MAX_PA 110 PAキーコードの最大値 (読み取るため) F6680_C_AID_MIN_PA 107 PAキーコードの最小値 (読み取るため) F6680_C_AID_SYSREQ_____240_____Sys_Request_(0)_____________ B-12 F6680 DSPIの定義 C _________________________________________________________________ ステータス・コード F6680 DSPIは,次の4つのタイプのステータス・コードを返しま す。 成功コード C.1節−行った操作が成功したことを示してい ます。 情報コード C.2節−行った操作の成功についての補足情報 を提供します。 エラー・コード C.3節−行った操作が失敗したが,回復可能で あることを示しています。 重大エラー・コ C.4節−行った操作が失敗し,回復不可能であ ード ることを示しています。 _________________________________________________________________ C.1 成功コード normal successful completion 説明: このメッセージはすべてのルーチンから返され,操作が完了 したことを示します。 対処法: f6680_recive_screenまたはf6680_receive_streamによっ てこのステータス・コードが返されたときには,FACOMホストにデ ータを送信しようとする前にSDB送信状態をチェックする必要があ ります。 data truncated, destination string too small 説明: 読み取りまたは書き込みフィールド・プロシージャが通常ど おりに完了しましたが,受け取りバッファが小さすぎて,指定され たすべてのデータを受け取ることができません。 対処法: より大きいバッファを割り当てて,操作をもう一度実行し ます。 ステータス・コード C-1 ステータス・コード C.2情報コード _________________________________________________________________ C.2 情報コード A BIND request has been received 説明: F6680 DSPIがPLUからBINDを受信しました。 対処法: なし。ソフトウェアが自動的にBINDを処理します。 CLEAR received, data traffic now reset 説明: FACOMシステムがクリア・コマンドを送信しました。 対処法: データ・トラフィック・リセット状態を入力します。詳細 は,ネットワーク管理者に問い合わせてください。 Successful completion, no data was received 説明: ソフトウェアがセッションをチェックしたが,受信するデー タがみつかりませんでした。 対処法: 別の受信を行います。 session terminated 説明: セッションが終了されました。 対処法: 詳細は,通知ベクタを参照。 not your turn to send anymore 説明: FACOMシステムによってBINDが送信され,インタフェースに よって受け取られました。 対処法: データを受信するための受信要求を出します。あるいは, 画面ロック・コマンドを使用するように,アプリケーションのロジ ックを設計し直すことによってこのような状態が生じないようにし ます。 An UNBIND request has been received 説明: ソフトウェアがPLUからUNBINDを受信しました。 対処法: アプリケーションは,disconnect要求を出すか,ソフトウ ェアが再接続するのを待ちます。 The SSCP session is not available 説明: SSCP-LUセッションがありません。 対処法: アプリケーション・コードをチェックします。SSCP-LUセ ッションは,パッシブ接続でしか確立できません。 C-2 ステータス・コード ステータス・コード C.3エラー・コード _________________________________________________________________ C.3 エラー・コード failed to acknowledge data 説明: acknowledge要求が失敗しました。 対処法: 詳細は,ステータス・ベクタを参照。 Bad buffer length was specified on a read/write field request 説明: 負のバッファ長が指定されました。 対処法: バッファ長を正の整数に変更します。 buffer offset in FDB is not the start of field 説明: フィールド・ディスクリプタ・ブロックに指定されたバッフ ァ・オフセットがフィールドの先頭になっていません。 対処法: オフセットをフィールドの先頭になるように変更してか ら,もう一度コマンドを出します。あるいは,検索モードをREAD_ NEXTまたはSEARCHに変更します。 Unknown query request 説明: ソフトウェアが未知の照会要求を受け取りました。 対処法: なし。 CHAR_VEC is too short 説明: 文字ベクタが画面イメージの構築を行うには短かすぎます。 対処法: 文字ベクタと属性ベクタにより大きなメモリ量を割り当て てから,もう一度コマンドを実行します。 connect failed 説明: 接続要求に失敗しました。 対処法: 詳細は,ステータス・ベクタを参照。 disconnect failed 説明: disconnect要求に失敗しました。 対処法: 詳細は,ステータス・ベクタを参照。 ステータス・コード C-3 ステータス・コード C.3エラー・コード request aborted due to CLEAR command 説明: PLUからクリア要求を受け取りました。 対処法: アプリケーションは,disconnectしてからもう一度セッシ ョンを確立しなければなりません。その様な状態が引き続き発生す る場合,PLUはプロトコル・エラーまたはデータ・ストリーム・エ ラーを検出します。トレース機能を使用して,問題点を突きとめま す。 error communicating with Gateway node 説明: 重大な通信エラーが生じて,セッションをロストしました。 対処法: 詳細は,このメッセージに続く2次的なエラー・コードを 参照してください。さらに情報が必要な場合は,ネットワーク管理 者に問い合わせてください。 illegal connection type 説明: f6680_request_connectプロシージャ・コールの中のCONN_ TYPパラメータ値がF6680_C_ACTIVEまたはF6680_C_PASSIVEのどちら にも等しくありませんでした。 対処法: F6680_C_ACTIVEまたはF6680_C_PASSIVEのいずれかに等し いCONN_TYP値をもつf6680_request_connectを出します。 illegal mode type 説明: f6680_request_connectプロシージャ・コール中のMODE_TYP パラメータ値がF6680_C_FIELD_MODEまたはF6680_C_STREAM_MODEの どちらにも等しくありませんでした。 対処法: F6680_C_FIELD_MODEまたはF6680_C_STREAM_MODEのいずれ かに等しいMODE_TYP値をもつf6680_request_connectを出します。 invalid session ID 説明: アプリケーションによって渡されたSESSION_IDに対応するセ ッションがありません。 対処法: セッションがすでにアクティブでなくなっているか,間違 ったSESSION_IDが指定されています。 lock screen failed 説明: 画面ロック要求が失敗しました。 対処法: エンド・ブラケット表示(EBI)を受け取ったかどうかを調 べます。EBIを受け取っていない場合には,それを受け取るまで待 つ必要があります。詳細は,ステータス・ベクタを参照。 C-4 ステータス・コード ステータス・コード C.3エラー・コード negative response received, sense code %X'nn' 説明: 送信がFACOMシステムによって拒否されました。 対処法: センス・コードにもとづいてデータが拒否された理由を判 別して,アプリケーション・ロジックを変更してから,プログラム をもう一度実行します。 network node is not accepting connects 説明: ゲートウェイDECnetエグゼクティブ状態がSHUTまたはOFFに 変更されました。 対処法: システムまたはネットワーク管理者に問い合わせて,ゲー トウェイが使用できない理由を調査してください。 no field was found 説明: FDB内の属性フィールドとオフセット・フィールドによって 指定されたフィールドが存在しないか,文字ベクタの終わりが検出 されるまでにみつからなかったために,文字ベクタ中のフィールド の読取り/書込みができません。 対処法: 開始位置を0にリセットしてから,フィールドを検索しま す。 no input data for WRITE_FIELD verb 説明: 書き込みフィールドの入力データがありません。 対処法: アプリケーション・ロジックを変更してから,もう一度実 行します。 No LU-LU session is active 説明: FACOMホストとのセッションが確立されていません。 対処法: f6680_connect_requestルーチンを呼び出してセッション を確立します。パッシブ接続を要求した場合には,第2.1節を参照 してLU-LUセッションを確立します。 No such session corresponds to the session ID 説明: 無効なセッションIDがソフトウェアに渡されました。 対処法: セッションIDをチェックします。 not in field mode 説明: このプロシージャはフィールド・モードでのみ有効です。 対処法: 正しいモード(フィールド・モードの場合はF6680_C_ FIELD_MODE)を判別して,それに応じて接続の中でCONN_MODEパラ メータを設定します。 ステータス・コード C-5 ステータス・コード C.3エラー・コード data must be numeric 説明: 数字フィールドに非数字データを書き込もうとしました。 対処法: アプリケーション・ロジックを調べて変更してから,もう 一度実行します。 not your turn to receive|transmit data 説明: このメッセージの意味は,現在の状態によって決まります。 受信状態にある場合は,データを受信する番ではなく,送信状態に あるときには,送信する番ではないことを示しています。 対処法: アプリケーションは受信状態または送信状態のいずれかに なります。受信状態になっている場合は,プロシージャが完了して ステータスがSNA3270_S_OKになるように受信を出し続けなければな りません。送信状態になっている場合は,アプリケーション・ロジ ックを調べて変更してから,もう一度実行します。 A parameter error was detected when calling the routine 説明: ソフトウェアが間違ったパラメータを検出しました。 対処法: アプリケーションがソフトウェアに渡したパラメータをチ ェックします。 field is protected, no modification allowed 説明: 保護フィールドにデータを書き込もうとしました。 対処法: アプリケーション・ロジックを調べて変更してから,プロ グラムをもう一度実行します。 FNA protocol error 説明: FNAレイヤでプロトコル・エラーが生じています。 対処法: 詳細は,このメッセージに続く2次的エラー・コードを参 照。さらに情報が必要な場合は,ネットワーク管理者に問い合わせ てください。 failed to read field 説明: フィールド読み取り要求が失敗しました。 対処法: 詳細は,ステータス・ベクタを参照。 failed to receive a screen of data 説明: 画面受信要求が失敗しました。 対処法: 詳細は,ステータス・ベクタを参照。 C-6 ステータス・コード ステータス・コード C.3エラー・コード failed to receive 6680 data stream 説明: ストリーム受信要求が失敗しました。 対処法: 詳細は,ステータス・ベクタを参照。 invalid data received, rejected with sense code %X'nn' 説明: FACOMシステムから無効な6680データを受信しました。 対処法: 詳細は,ネットワーク管理者に問い合わせてください。 Failed to set screen owner to the requested owner 説明: f6680_set_ownerコールが失敗しました。 対処法: 詳細は,isobをチェックしてください。 The inbound SSCP message exceeds the maximum RU size 説明: インバウンドSSCP要求はすべて「チェィン専用」で,最大RU サイズを超えてはなりません。 対処法: システム管理者に問い合わせてください。 unacceptable BIND image, I/O status block has the sense code 説明: 記述されたデータが受け取り可能ではありません。 対処法: IBMシテスム・プログラマは,エラーのあるパラメータを 『DEC SNA Peer Server Guide to IBM Resource Definition』また は『DECnet/SNA Gateway Guide to IBM Parameters』に指定された ように再定義しなければなりません。 failed to write field 説明: フィールド書き込み要求が失敗しました。 対処法: 詳細は,ステータス・ベクタを参照。 failed to transmit a screen of data 対処法: 画面送信要求が失敗しました。 説明: 詳細は,ステータス・ブロックを参照。 failed to transmit FNA command 説明: FNAコマンド送信要求が失敗しました。 対処法: 詳細は,ステータス・ベクタを参照。 failed to transmit 6680 data stream 説明: ストリーム送信要求が失敗しました。 対処法: 詳細は,ステータス・ブロックを参照。 ステータス・コード C-7 ステータス・コード C.4重大エラー・コード _________________________________________________________________ C.4 重大エラー・コード internal error detected 説明: 内部エラーが検出されました。 対処法: この時点で画面に現れるすべてのメッセージを記録して, 問題点をシステム管理者に報告してください。 上位レベルのFNALU6680_S_BUGCHKエラーとともに,次のような2次 エラー・メッセージが現れます。このようなエラー・メッセージが 現れた場合は,6680データ・ストリーム・プログラミング・インタ フェースの動作が異常であることを意味しています。 問題を解決するには,重大エラー・コードに関連するすべてのメ ッセージをコピーします。システム管理者である場合には,『DEC SNA Peer Server Management Guide』や『DECnet/SNA Gateway Problem Determination Guide』などを参照してください。問題を 解決できないときには,ソフトウェア・パフォーマンス・レポート (SPR)を提出してください。 A protocol processing error has been detected formatted FMD data received invalid Data Flow Control (DFC) RU received, RU code %X'nn' insufficient resources to perform requested operation. Error allocating dynamic buffer invalid session control (SC) RU received, RU code %X'nn' C-8 ステータス・コード D _________________________________________________________________ 下位レベルのステータス・コード 付録Dでは,F6680 DSPIの下位レイヤから受け取るエラー・コード やメッセージについて説明します。 o 一般的なエラー・コード(D.1節) o 一般的な2次障害コード(D.2節) o ゲートウェイから返されるアボート理由のステータス・コー ド( D.3節) o 重大なエラー・コード(D.4節) これらのメッセージのテキストは,/usr/lib/fna/ja_JP/f6680_ msg.catにあります。 _________________________________________________________________ D.1 一般的なエラー・コード MU generated a receive check, sense code FACOM sense code 説明: メッセージ・ユニットが受信チェック・センス・コードを返 しました。 対処法: センス・コードに基づいて対処してください。 MU generated a send check, sense code FACOM sense code 説明: メッセージ・ユニット送信チェック・センス・コードを返し ました。 対処法: センス・コードに基づいて対処してください。 PLU violated FNA protocol rules, sense code FACOM sense code 説明: 1次論理装置がFNAプロトコル規則に違反しました。 対処法: センス・コードに基づいて対処してください。 下位レベルのステータス・コード D-1 下位レベルのステータス・コード D.2一般的な2次障害コード _________________________________________________________________ D.2 一般的な2次障害コード abnormal session termination 説明: ゲートウェイとFACOMホスト間のリンクが切れているか,ホ ストが物理装置(PU)またはゲートウェイにつながる回線を非活動化 しました。 対処法: リンクが切れた理由を判別します。FACOMホストへの接続 が再確立されたら,再試行します。 port aborted 説明: リンクがゲートウェイによってアボートされました。 対処法: SNATRACE機能を使用して,セッション・アボートの原因を 判別します。 failed to establish a DECnet link to the Gateway 説明: F6680 DSPIがゲートウェイに接続できません。 対処法: これに続くDECnetエラー・メッセージを調べて,適切な処 置をします。 function not valid with port in current state 説明: ポートが現在の状態ではF6680 DSPIが無効です。プロシージ ャ・コールを出す順番が間違っています。 対処法: アプリケーション中のコードを訂正します。 GAP violation detected by the Gateway 説明: 重大エラーが生じました。 対処法: エラーをシステム管理者に報告します。 GAP violation detected by Access 説明: GAPアクセス・ルーチンによる違反が検出されたために,リ ンクがアボートされました。 対処法: 『DECnet/SNA Gateway Troubleshooting Manual』を参 照。 error communicating with Gateway node 説明: ゲートウェイ・ノードとのDECnet通信エラー。 対処法: これに続くDECnetエラー・メッセージを調べて,適切な処 置をします。 D-2 下位レベルのステータス・コード 下位レベルのステータス・コード D.2一般的な2次障害コード Gateway access routines are incompatible with the Gateway 説明: ゲートウェイ上のソフトウェアがローカルDECnetノード上の FNAソフトウェアと互換性がありません。 対処法: ゲートウェイとDECnetノードの両方に正しいソフトウェ ア・バージョンをインストールします。 failed to allocate memory for a buffer 説明: F6680 DSPIが内部バッファに動的メモリを割り当てられませ んでした。未使用メモリがないことが原因の場合が多い。 対処法: 使用中バッファを解放してフリーなメモリ資源に戻しま す。 Internal error in the Gateway access routines 説明: 重大エラー。 対処法: 画面に現れるエラー・メッセージを記録して,問題点をシ ステム管理者に報告してください。 insufficient resources to establish session 説明: F6680 DSPIがセッションを確立するのに十分なシステム資源 を割り当てられません。 対処法: 詳細は,これに続くメッセージを参照。 parameter GWY-NODE is invalid 説明: GWY-NODEパラメータに無効な値を入力しました。 対処法: エラーを返したコールを調べて,適切な処置をします。 SLU deactivated via DACTLU 説明: FACOM SSCPがDACTLUコマンドを送信することによって,セッ ションを非活動化しました。アプリケーションの中には,UNBINDコ マンドを送信するのではなく,LUを非活動化することによってセッ ションを非活動化するものがあります。 対処法: disconnect要求を出して,アプリケーションとそのステー タスをリセットします。SSCPがまだ使用できる場合には別の接続要 求を出し,SSCPが使用できない場合には終了します。 maximum number of sessions already active 説明: 許容最大数のセッションをすでに確立済みです。 対処法: 終了したセッションごとにdisconnectプロシージャを呼び 出したかどうかを調べます。 下位レベルのステータス・コード D-3 下位レベルのステータス・コード D.2一般的な2次障害コード no event pending 説明: F6680 DSPIがイベントを読み取ろうとしましたが,待ち状態 のイベントがありません。 対処法: なし。 port was not assigned 説明: アプリケーションによって指定されたソケットにポートが割 り当てられていません。 対処法: F6680 DSPIにアクティブなソケットIDを渡します。 no SSCP session 説明: SSCPが確立されていないか,アプリケーションによって無効 なsession_idが指定されています。 対処法: アクティブ・セッションを確立したかどうかと,アプリケ ーションが有効なsession_idを指定しているかどうかを確認しま す。 parameter error 説明: F6680 DSPIに渡されたパラメータが間違っています。 対処法: パラメータをチェックします。 PLU name not specified 説明: アプリケーションが接続要求時にPLUを指定しませんでし た。 対処法: PLU名はパラメータ・リスト中で明示的に指定するか,ア クセス名を介して暗黙に指定しなければなりません。 event pending 説明: イベントが待ち状態です。 対処法: イベントについては,IOSBを参照。 link or PU reinitialized 説明: リンクまたはPUが再度初期化されたことを示す情報メッセー ジ。 対処法: なし。 would block 説明: 受信するデータがありません。 対処法: 時間をおいて,データを受信してみます。 D-4 下位レベルのステータス・コード 下位レベルのステータス・コード D.2一般的な2次障害コード access to LU denied 説明: F6680 DSPIがこのセッションをアクセスする権限をもってい ません。 対処法: ゲートウェイ管理者に問い合わせてください。 session (SLU) not activated 説明: FACOMホストによってセッションが活動化されていません。 対処法: FACOM VTAM操作員に問い合わせて,FACOMホストから論理 装置を調べて,必要であればそれを活動化します。 SLU in use 説明: このソケットはすでに使用中です。 対処法: 別のソケット・アドレスを使用して再試行します。どのソ ケットが有効かわからないときには,システム管理者に問い合わせ てください。 failed to get a socket 説明: F6680 DSPIがシステムからソケットを得られませんでした。 対処法: 詳細は,IOSBを調べてください。 unknown node 説明: 接続要求時に渡されたゲートウェイ・ノード名がネットワー クに対して未知です。 対処法: ゲートウェイ・ノード名をチェックします。 user issued abort 説明: アプリケーションがdisconnect要求を出してソケットをアボ ートしました。 対処法: なし。 user issued reject 説明: F6680 DSPIが受信したバインドを受け入れないため,GAP V1.0セッションのリンクをアボートしました。 対処法: トレース機能を実行して,ゲートウェイがBIND要求を拒否 した理由を調べます。ホストが,受け入れ不可能な大きなアウトバ ウンドRUまたは非合法な機能管理または送信サービス・プロファイ ルを指定したか,範囲外のペーシング値を送信したのが原因と考え られます。 下位レベルのステータス・コード D-5 下位レベルのステータス・コード D.3ゲートウェイから返される異常終了理由のステータス・コード _________________________________________________________________ D.3 ゲートウェイから返される異常終了理由のステータス・コード F6680 DSPIが次のいずれかのコードを返したときは,セッションは アクティブではなくなります。アプリケーションは,別のセッショ ンを確立しようとする前にdisconnect要求を出す必要があります。 gateway protocol error 説明: 重大エラー。 対処法: この時点で画面に表れるエラー・メッセージをコピーし て,問題点をシステム管理者に報告してください。 session terminated abnormally 説明: ゲートウェイとFACOM間のリンクがロストしているか,FACOM が物理装置(PU)またはゲートウェイにつながる回線を非活動化しま した。 対処法: リンクがロストした理由を判別します。FACOMへの接続が 返ったら,再試行します。 FACOM application name was not specified 説明: FACOMアプリケーション名が接続要求またはアクセス名に指 定されていません。 対処法: FACOMアプリケーションは,パラメータ・リスト内に明示 的に指定するか,アクセス名を介して暗黙に指定しなければなりま せん。 the BIND image specified unacceptable values 説明: ゲートウェイがBIND要求イメージを拒否しました。 対処法: トレース機能を実行して,ゲートウェイがBIND要求を拒否 した理由を判別します。FACOMアプリケーションが大きすぎるアウ トバウンドRUまたは非合法な機能管理または送信サービス・プロフ ァイルを指定したか,範囲外のペーシング値を送信したのが原因と 考えられます(『DECnet/SNA Gateway Installation Guide』を参 照)。 PU has not been activated 説明: ゲートウェイ上のPUがFACOMによって活動化されていませ ん。 対処法: VTAM操作員に問い合わせて,FACOMホストからの回線と物 理装置をチェックして,必要であればそれを活動化してください。 活動化されているときには,ゲートウェイと FACOMホスト間にハー ドウェアの問題がある場合があります。 D-6 下位レベルのステータス・コード 下位レベルのステータス・コード D.3ゲートウェイから返される異常終了理由のステータス・コード PU name was not specified 説明: PU名が接続要求またはアクセス名に指定されていません。 対処法: PUは,パラメータ・リストの中に明示的に指定するか,ア クセス名を介して暗黙に指定しなければなりません。 connect request rejected by the FACOM host, sense code %X'FACOM sense code' 説明: FACOMホストがセンス・コードに指定された理由から接続要 求を拒否しました。 対処法: FACOMドキュメントからセンス・コードの意味を判別し て,それに応じて対処します。 internal error in Gateway node 説明: 重大エラー。 対処法: エラーをシステム管理者に報告します。また,ゲートウェ イ・コンソールからの次の形式のメッセージログがセーブされるよ うにします。 GAS -- Fatal Session Error FSE$xxx Gateway access routines are incompatible with the Gateway 説明: ゲートウェイ上のソフトウェアがローカルDECnetノード上の FNAソフトウェアと互換性がありません。 対処法: ゲートウェイとDECnetノードの両方に正しいソフトウェ ア・バージョンがインストールされるようにします。 insufficient Gateway resources for session establishment 説明: セッションを確立するための資源がゲートウェイに不足して います。ゲートウェイで現在アクティブなセッションが使用可能な すべての資源を使用しています。 対処法: 一部のセッションが終了するのを待ってから,再試行しま す。 SSCP has deactivated the session 説明: FACOM SSCPがDACTLUコマンドを送信することによってセッシ ョンを非活動化しました。アプリケーションによっては,UNBINDコ マンドを送信するのではなく,論理装置を非活動化することによっ て,セッションを非活動化するものがあります。 下位レベルのステータス・コード D-7 下位レベルのステータス・コード D.3ゲートウェイから返される異常終了理由のステータス・コード access name not recognized by Gateway node 説明: 存在しないアクセス名を指定しました。 対処法: どのアクセス名が必要かをシステム管理者に問い合わせま す。 PU name not recognized by Gateway node 説明: ユーザまたは使用したアクセス名が存在しないPUを指定しま した。 対処法: どのPU名またはアクセス名が必要かをシステム管理者に問 い合わせます。 session address not recognized by Gateway node 説明: ユーザまたは使用したアクセス名が存在しないセッション・ アドレスを指定しました。 対処法: どのセッション・アドレスまたはアクセス名が必要かをシ ステム管理者に問い合わせます。 FACOM application detected a protocol error, sense code %X'FACOM sense code' 説明: FACOMアプリケーションが,コードによって指定されたプロ トコル・エラーを検出したために,指定されているセンス・コード を付けてUNBIND要求を送信しました。 対処法: FACOMのマニュアルからセンス・コードの意味を判別し て,それに応じて対処します。 session address is already in use 説明: 別のユーザがこのセッション・アドレスを使用しています。 対処法: 別のセッション・アドレスを使用して再試行します。有効 な選択値がわからない場合には,システム管理者に問い合わせてく ださい。 session address has not been activated 説明: SLUがFACOM側から活動化されていません。 対処法: FACOM VTAM操作員に問い合わせて,FACOMホストから論理 装置をチェックして,必要であればそれを活動化します。 UNBIND request received from FACOM application 説明: FACOMアプリケーションが通常のUNBIND RUを送信することに よってセッションを終了しました。 D-8 下位レベルのステータス・コード 下位レベルのステータス・コード D.3ゲートウェイから返される異常終了理由のステータス・コード UNBIND of type %X'type' received from FACOM application 説明: FACOMアプリケーションが指定されたタイプのUNBIND要求を 送信しました。 対処法: FACOMのマニュアルからUNBIND要求での意味を判別して, それに応じて対処します。 下位レベルのステータス・コード D-9 下位レベルのステータス・コード D.4重大エラー・コード _________________________________________________________________ D.4 重大エラー・コード Bad profile 説明: 無効な機能管理または送信サービス・プロファイルが検出さ れました。 対処法: BINDの中のプロファイルをチェックします。 internal error in Gateway access routines 説明: 重大エラー。 対処法: この時点で画面に現れるすべてのメッセージを記録して, 問題点をシステム管理者に報告します。 次のいずれかのエラー・メッセージが現れたときには,F6680 DSPI の動作が異常であることを意味しています。重大エラー・コード に関連するすべてのメッセージを記録して,それをシステム管理 者に知らせます。システム管理者である場合には,『DECnet/SNA Gateway Troubleshooting』を参照してください。問題を解決でき ない場合には,ソフトウェア・パフォーマンス・レポート(SPR)を 提出してください。 failed to free data buffer internal send error Finite state machine state reached contained unrecognized data a cannot occur state was reached in FSM port is in an unknown state Change to exception response D-10 下位レベルのステータス・コード E _________________________________________________________________ F6680 DSPIデータ構造 この付録ではF6680 DSPI環境で構成されるデータ構造を示しま す。ここで示すデータ構造には次のものがあります。 o 例 E-1-構造化フィールド・データ構造 o 例 E-2-拡張フィールド属性データ構造 o 例 E-4-フィールド属性データ構造 o 例 E-5-フラグ定義データ構造 o 例 E-6-スクリーン・ディスクリプタ・ブロック・データ構 造 o 例 E-7-書込み制御文字(WCC)データ構造 o 例 E-8-フィールド・ディスクリプタ・ブロック・データ構 造 例 E-1 構造化フィールド・データ構造 struct sf_struct { UINT32 sf_prm; UINT8 sf_flag; /* SF flag */ UINT16 sf_wsf_cmd; /* write structure field command */ UINT8 *data_ptr; /* pointer to SF data buffer */ UINT16 data_len; /* SF data length */ }; F6680 DSPIデータ構造 E-1 F6680 DSPIデータ構造 例 E-2 拡張フィールド属性データ構造 /* * Extended Field Attribute Definition */ typedef unsigned int BIT; typedef unsigned char UINT8; struct ext_attr_def { BIT attr_mdt : 1; /* Modified Data Tag */ BIT attr_fil1 : 1; /* Reserved Field */ BIT attr_dsp : 2; /* Display */ BIT attr_num : 1; /* Numeric Field */ BIT attr_pro : 1; /* Protected Field */ BIT attr_grh : 2; /* graphic converter */ BIT attr_mbh : 1; /* Modified by Host */ BIT attr_sof : 1; /* Start of field */ BIT attr_ext : 1; /* have the ext attrs changed */ BIT filler : 5; /* Reserved */ /* character attributes */ UINT8 attr_hlt; /* extended highlighting */ UINT8 attr_fcol; /* forground color */ union { struct eattr_bits attr_bits; UINT8 attr_fbit; } attr_fb; /* field bits */ union { struct eattr_bitv attr_bitv; UINT8 attr_fvld; } attr_fv; /* field validataion */ UINT8 attr_filler1; /* reserved */ UINT8 attr_filler2; /* reserved */ }; E-2 F6680 DSPIデータ構造 F6680 DSPIデータ構造 例 E-4 フィールド属性データ構造 struct eattr_bits { BIT attr_kana :1; BIT attr_vertical :1; BIT attr_underscore : 1; BIT attr_overscore : 1; BIT attr_reverse :1; BIT attr_blink :1; BIT attr_filler_fa : 2; }; 例 E-4 フィールド・バリデーション属性データ構造 struct eattr_bitv { BIT attr_trigger : 1; BIT attr_man_entry : 1; BIT attr_mand_fill : 1; BIT attr_kanji :1; BIT attr_auto_enter :1; BIT attr_exit_request :1; BIT attr_filler_fv :2; }; F6680 DSPIデータ構造 E-3 F6680 DSPIデータ構造 例 E-5 フラグ定義データ構造 struct sdb_flg_def { BIT reset_inhib : 1; /* Reset keyboard inhibit */ BIT psa_pend : 1; /* Presentation Space Altered */ BIT scr_erased : 1; /* Screen Was Erased */ BIT size_changed : 1; /* Screen Size Changed */ BIT format_scr : 1; /* Screen is formated */ BIT wrap_scr : 1; /* Screen is wrapped */ BIT sscp_avail : 1; /* SSCP session is available to caller */ BIT base_color : 1; /* TRUE = no extended color */ BIT graphics_erased : 1; /* erase graphics presentation */ }; E-4 F6680 DSPIデータ構造 F6680 DSPIデータ構造 例 E-6 スクリーン・ディスクリプタ・ブロック・データ構造 struct sdb_def { INT16 cur_add; /* Cursor Address */ UINT16 scr_size; /* Screen Size */ UINT8 def_col; /* Default number of columns */ UINT8 def_row; /* Default number of rows */ UINT8 alt_col; /* Alternate number of columns */ UINT8 alt_row; /* Alternate number of rows */ UINT8 cur_col; /* Current number of columns */ UINT8 cur_row; /* Current number of rows */ union { struct wcc_def wcc; /* Write control character */ UINT8 wctl; } wrt_ctl; struct sdb_flg_def flags; /* Flags byte */ UINT8 send_state; /* SLU can or cannot send now */ UINT8 rcv_chain_state; /* are we in chain or not */ UINT8 bracket_state; /* In brackets or between brackets */ UINT8 scr_owner; /* Screen ownership */ char *char_vec; /* Pointer to character vector */ struct ext_attr_def *ext_vec; /* Pointer to extend. attr. vector */ char *kmode_vec; /* Pointer to kmode vector */ UINT16 last_trigger_addr; /* Last trigger address */ struct field_def *fdb; /* Pointer to FDB */ UINT8 reserved_v1[8]; /* reserved */ void *reserved_p1; /* reserved */ void *reserved_p2; /* reserved */ UINT8 reserved1; /* reserved */ UINT8 reserved2; /* reserved */ UINT8 reserved3; /* reserved */ UINT8 reserved4; /* reserved */ UINT8 reserved5; /* reserved */ }; F6680 DSPIデータ構造 E-5 F6680 DSPIデータ構造 例 E-7 書込み制御文字(WCC)データ構造 struct wcc_def { BIT wcc_mdt : 1; /* Reset Modified Data Tag */ BIT wcc_key : 1; /* Restore Keyboard */ BIT wcc_alr : 1; /* Sound alarm */ BIT wcc_spo : 1; /* Start Print */ BIT wcc_prt : 2; /* Print format */ BIT wcc_rset : 1; /* Reset Indicator */ BIT wcc_rsv : 1; /* Reserved */ }; 例 E-8 フィールド・ディスクリプタ・ブロック・データ構造 /* * field_def - Field descriptor block */ struct field_def { struct ext_attr_def req_ext_attr; /* Requested Attributes */ struct ext_attr_def ext_attr_mask; /* Attributes Mask */ UINT16 req_disp; /* Requested Displacement */ UINT16 rsv_cust; /* Reserved for Customer */ struct ext_attr_def act_attr; /* Actual Attributes */ UINT16 act_disp; /* Actual Displacement */ UINT16 byte_cnt; /* Byte count */ UINT16 lfr_disp; /* Last field read displacement */ UINT16 readbuf_cnt; /* Read Buffer byte count */ UINT16 fld_ext; /* extended field attribute */ union { UINT8 req_op; /* Requested Operation */ struct op_def opbits; } op; }; E-6 F6680 DSPIデータ構造 F _________________________________________________________________ jefcodeユーティリティ _________________________________________________________________ F.1 jefcodeユーティリティ jefcodeユーティリティは,F6680データ・ストリーム・プログラ ミング・インタフェースfor DEC OSF/1の本体となる部分のソフト ウェアです。OSF/1のシェル・コマンドにより起動され,その際に 指定された入力ファイルを指定されたコマンドオプションに従っ て変換し,出力ファイルを作成します。 F.1.1 起動方法 次のようなコマンドでjefcodeは起動されます。 % jefcode -ip dec -op jef -i 入力ファイル名 -o 出力ファイ ル名 または % jefcode -ip jef -op dec -i 入力ファイル名 -o 出力ファイ ル名 F.1.2 jefcodeコマンド形式 jefcodeコマンドの形式は次の通りです。 ___________________________________________________________ jefcode jefcodeユーティリティ F-1 jefcodeユーティリティ F.1 jefcodeユーティリティ 入力ファイルをコマンドオプションの指示に従い 変換し,出力ファイルを作成します ___________________________________________________________ (形式) % jefcode -i入力ファイル名 -o出力ファイル名 F-2 jefcodeユーティリティ jefcodeユーティリティ F.1 jefcodeユーティリティ ___________________________________________________________ (オプション)_______________(省略値)________________________ -ip keyword -ip dec -op keyword -op dec -cファイル名 -c fnarjetra -e [ss|ls] -e ss(-kを指定した場合は無視さ れます) -x 外字管理ファイル名 なし -f(s:n, e:n, l:n, kanji|kana) -k KMAPレコード数 なし(レコード数の省略値は1) -t なし -i 変換対象のファイル名 標準入力 -o_変換結果のファイル名____標準出力________________________ KMAPファイルについては, 第F.1.3項を参照してください。 (コマンドオプション) -ip keyword 入力ファイルのコード体系を指定します。ここで指定でき るkeywordは o jef o dec です。 -op keyword jefcodeユーティリティ F-3 jefcodeユーティリティ F.1 jefcodeユーティリティ 出力ファイルのコード体系を指定します。ここで指定でき るkeywordは o jef o dec です。 -c 1バイトコード変換テーブルのファイル名 jsnatratblユーティリティにより作成された,1バイトコー ド変換テーブルのファイル名です。jsnatratblユーティリテ ィについては第H.1節を参照してください。 ________________________ 注意 ________________________ jefcodeユーティリティが,ファイルへのアクセス中に何ら かのエラーを検出した場合はその旨を告げるメッセージを表 示し,出力ファイルは消去されます。 ______________________________________________________ -e [ss|ls] 1. -e ssの場合 o -ip dec -op jefの場合 入力ファイルのデータ中にSS2(X'8E') が現われ場合, 次の1バイトをJISカタカナ・コードセットと解釈しま す。SS2が付加されずにX'A1'以上X'FE'以下のコード が現れた場合は,2バイトコードの上位バイトと解釈 します。-eと-kは同時には指定できません。この指定 がない場合は,-kの指定に従います。変換したJEFコ ードの2バイトコード文字列の前後にはシフトコード (X'28',X'29') が挿入されます。 F-4 jefcodeユーティリティ jefcodeユーティリティ F.1 jefcodeユーティリティ o -ip jef -op decの場合 JISカタカナ・コードセットに変換された場合は,前に SS2を付加してからファイルに出力します。この出力フ ァイルは,端末またはプリンタに直接出力する最終形式 のファイルを想定しています。-eと-kは同時には指定で きません。指定がない場合は,-kの指定に従います。 2. -e lsの場合 o -ip dec -op jefの場合 入力ファイルのデータ中にLS3R(ESC|) が現われたと き以後,X'A1'以上X'FE'以下のコードを2バイトコー ドの上位バイトと解釈します。LS2R(ESC}) が現われ たとき以後のコードを,すべて1バイト・コードと解 釈します。-eと-kは同時には指定できません。この指 定がない場合は,-kの指定に従います。変換したJEFコ ードの2バイトコード文字列の前後にはシフトコード (X'28',X'29') が挿入されます。 o -ip jef -op decの場合 JISカタカナ・コードに変換された場合は,その1バイト 文字列の前後にLS2R, LS3Rを付加してからファイルに出 力します。この出力ファイルは,端末またはプリンタに 直接出力する最終形式のファイルを想定しています。-e と-kは同時には指定できません。指定がない場合は,-k の指定に従います。 -eオプションを指定せずに,環境変数JEFCODE_ESCAPEをss, またはlsに定義することにより,-e ssまたは-e lsと指定し た場合と同じ結果が得られます。以下はC-shellの場合の環 境変数の定義例です。 % setenv JEFCODE_ESCAPE ss ただし,明示的に-e [ss|ls]を指定した場合は,環境変数よ り優先されます。 -x外字管理ファイル名 JEF拡張文字やJEFユーザ定義文字を,DECユーザ定義領域の どの文字コードに割り当てるかを定めた外字管理ファイル名 を指定します。外字管理ファイルは,jefknjdefユーティリ jefcodeユーティリティ F-5 jefcodeユーティリティ F.1 jefcodeユーティリティ ティにより作成,管理されるファイルです。-xを指定した場 合は,必ず外字管理ファイル名を指定しなければなりませ ん。-xの指定がない場合,JEFからDECへの変換の場合はJEF 拡張文字やJEFユーザ定義文字はすべて"□" (X'A2A2')に, DECからJEFへの変換の場合も,DEC拡張漢字セットの文字は すべて"□"(X'A2A2')に変換します。 -f [s:pos] [e:pos | l:len] [kanji | kana] 1レコード内の変換の範囲を指定します。s:posは変換の開 始位置をバイト単位で表します。e:posは変換の終了位置 をバイト単位で表します。l:lenは長さをバイト単位で表し ます。この1コマンド列で規定すべきフィールド数が指定で きない場合は,複数回のjefcodeコマンドを使用してくださ い。各々の-fオプションで指定する範囲が重なってはいけま せん。-fオプションの指定がない時は,1レコード全体が変 換の対象になります。sの省略値はレコードの先頭で,e, l の省略値はレコードの最後の位置を示す値です。eとlは同時 には指定できません。-fオプションを33個以上指定しても, 33個目からのオプションは無視されます。-fオプションは-e とは同時に指定できません。また, s:, e:, l:と値の間にス ペースが入ってはいけません。 モード指定のkanaとkanjiは,同時に指定することはできま せん。 o -ip dec -op jefの場合 モード指定のkeywordは,出力ファイルの開始・終了モ ードを指定します。DEC側の開始モードは,KMAPファイ ルの指定に依存します。 o -ip jef -op decの場合 モード指定のkeywordは,入力ファイルの開始・終了モ ードを指定します。-fオプションを指定しない場合は, 先頭レコードが2バイト・コード開始のシフト・コード (X'28') で始まらない限り,英数字モードから始まるも のと見なします。 F-6 jefcodeユーティリティ jefcodeユーティリティ F.1 jefcodeユーティリティ -k kmapレコード数 KMAPレコード数の省略値は1です。 o -ip dec -op jefの場合 -kを指定した時,入力ファイル名に".kmap"を付加した 名前のファイルが,入力ファイルの2バイトコード・1 バイトコード混在情報を示すKMAPファイルであるとみな されます。ただし,環境変数JEFCODE_KMAPFILE にKMAP ファイル名が定義されている場合には,そのファイル名 が優先的に使用されます。以下はC-shellの場合の環境 変数の定義例です。 % setenv JEFCODE_KMAPFILE KMAPファイル名 コード変換はKMAPファイルに定義されている情報に従っ て実行されます。KMAPレコード数の指定がある場合, KMAPファイルの先頭レコードから指定されたレコード数 を変換する際に使用します。KMAPファイル内の全KMAPレ コード数が指定された値より小さい場合は,全KMAPレコ ード数が指定されているものとして処理されます。-kと -eは同時には指定できません。 この指定がない場合は,-eの指定に従います。 またKMAPコードが"Xk"で対応する入力コードが漢字コー ドだった場合は,KMAPコードは"XX"であると見なしま す。 入力ファイルとして,標準入力を使用した場合は, jefcode_stdio.kmapという名前のKMAPファイルを参 照します。このファイルが無い場合はエラーとなりま す。 o -ip jef -op decの場合 -kの指定がある場合,コマンド・パラメータで指定した 出力ファイル中に1バイトコードがあっても,エスケー プ・シーケンス(SS2,またはLS2R,LS3R) を挿入せず, 出力ファイルの後に".kmap"を付加したファイルを作成 し,2バイトコード・1バイトコードの混在情報を出力 します。ただし,もし環境変数JEFCODE_KMAPFILEにKMAP ファイル名が割り当てられている場合は,そのファイル 名でKMAPファイルが作成されます。KMAPレコード数の指 定がある場合,KMAPファイルに出力されるのは出力ファ jefcodeユーティリティ F-7 jefcodeユーティリティ F.1 jefcodeユーティリティ イルの先頭レコードから数えてKMAPレコード数分のレコ ードに対する2バイトコード・1バイトコードの混在情 報です。 -kと-eは同時には指定できません。この指定がない場合 は-eの指定に従います。 出力ファイルとして標準出力を使用した場合は, jefcode_stdio.kmapという名前のKMAPファイルが作 成されます。 ________________________ 注意 ________________________ -kオプションを指定し, JEF→DEC→JEFのように変換させよ うとして, jefcodeコマンドをパイプでつないで連続実行さ せると,出力中のKMAPファイルが参照できずにエラーとなり ます。この場合は,コマンドを複数回に分けて実行してくだ さい。 ______________________________________________________ -t このオプションは-ip dec -op jefの指定の場合に有効で す。 -tの指定がある場合は,タブをそれ自体有効なコードと解釈 し,タブ・コードを空白文字列へ変換することを行いませ ん。 -tの指定が無い場合は,タブ・コードを次の文字位置が8の 倍数となるようにタブ文字を空白文字に変換します。 空白文字列の変換は,DECコードからJEFコードへの変換の前 に行われます。したがって2バイトコードの前後に挿入され るシフトコード文字(X'28', X'29') はタブ位置の計算には 含まれません。 -i入力ファイル 変換対象のファイル名を指定します。このオプションを省略 した場合は,入力として標準入力が割り当てられます。 F-8 jefcodeユーティリティ jefcodeユーティリティ F.1 jefcodeユーティリティ -o出力ファイル 変換した結果のファイル名を指定します。このオプションを 省略した場合は,出力として標準出力が割り当てられます。 jefcodeユーティリティ F-9 jefcodeユーティリティ F.1 jefcodeユーティリティ F.1.3 KMAPファイル KMAPファイルは,DEC漢字セットの2バイト文字列と1バイト文字列 (ASCII+半角カタカナ)がLS2R ,LS3R またはSS2 のコードなしで 混在したファイルを読み込む(または書き込む)際に使用する(また は作成する)ファイルです。KMAPファイルの中では,変換対象ファ イルのレコードに含まれる漢字を"XX",英数字を"X"で表し,半角 カタカナを"k"で表します。 -k KMAPレコード数で指定したKMAPファイルには,変換対象ファイ ルの先頭レコードから指定されたレコード数分の情報が含まれま す。 図 F-1 -k 2の場合のKMAPファイルと変更対象ファイル F-10 jefcodeユーティリティ jefcodeユーティリティ F.1 jefcodeユーティリティ % jefcode-f s:1 l:30 -f s:41 -l:20 - _%-ip jef -op dec -k 入力ファイル名 出力ファイル名 上記のような1レコード内のある部分のみを変換対象とした場合, 作成されるKMAPレコードは次のような図のものとなり,変換対象 となっていない部分については空白文字(X'20')が埋め込まれま す。 図 F-2 KMAPファイルの出力例 F.1.4 1バイトコード変換テーブル OSF/1システム上ではJISローマ字とJISカタカナが用いられます。 一方,FACOMシステム上では,EBCDICが用いられます。jefcode ユーティリティでは,これらの文字コードを相互に変換するため に,変換テーブルを用います。 jefcodeユーティリティがデフォルトで提供する変換テーブルを 図 F-3に示します。 変換テーブルは最上段の0〜Fは,EBCDICコードでの上位4ビットを 表し,最左段の0〜FはEBCDICコードでの下位4ビットを表します。 上位4ビットに対応する行と下位4ビットに対応する列の交わる位 置に書き込まれている文字および16進コードが,OSF/1システム上 での文字および16進コードを表しています。 もし,ユーザが独自の変換テーブルを定義して使用したい場合は, jsnatratblユーティリティを使用して,変換テーブルを作成し, jefcodeユーティリティでそれを使用することが可能です。 詳細は第H.1節を参照してください。 jefcodeユーティリティ F-11 jefcodeユーティリティ F.1 jefcodeユーティリティ 図 F-3 jefcodeが提供する変換テーブル(EBCDICJIS) 注:EBCDICJISの場合,未定義のEBCDICコードはJISコードの SUB(X'1A')に変換されます。JISEBCDICの場合,未定義のJISコー ドはEBCDICコードのSUB(X'3F')に変換されます。 F-12 jefcodeユーティリティ jefcodeユーティリティ F.1 jefcodeユーティリティ F.1.5 jefcodeエラーメッセージ一覧 jefcodeユーティリテイにおいてエラーが発生したとき,以下に示 すようなエラーメッセージが出力されます。エラーが発生したと きは,出力されたエラーメッセージについての説明と利用者の対応 をよく読み,適切な処置を行ってください。 Abnormal input file read, 説明: 入力ファイルを読もうとしたところエラーが生じました。 利用者の対応: 入力ファイルのプロテクション等を確認して下さ い。 Abnormal output file write, 説明: 出力ファイルに書き込もうとしたところエラーが生じまし た。 利用者の対応: 出力ファイルが作成されるディレクトリのプロテク ション等を確認して下さい。 Abnormal KMAP file read or write, 説明: KMAPファイルにアクセスしようとしてエラーが生じました。 利用者の対応: KMAPファイルの内容,プロテクション等をチェック して下さい。 Abnormal GAIJI control file read, 説明: 外字管理ファイルを読み込もうとしてエラーが生じました。 利用者の対応: 外字管理ファイルのプロテクション等を確認して下 さい。 FIELD parameter mismatch, 説明: -fオプションで指定した変換範囲が,漢字の第2バイト目で 終了している等のエラーです。 利用者の対応: -fオプションで指定した値を確認して下さい。 Insufficient dynamic memory, 説明: ファイルを読み込むためのバッファが確保できません。 利用者の対応: しばらく時間が経った後,再実行し,同じエラーメッ セージが表示される場合は,システム管理者に問い合わせて下さ い。 jefcodeユーティリティ F-13 jefcodeユーティリティ F.1 jefcodeユーティリティ Invalid parameter value specified, 説明: jefcodeの修飾子,コマンド・パラメータで無効な値が指定 されました。 利用者の対応: 指定した値を再確認して,正しい値を指定して下さ い。 Input file not found, 説明: 入力ファイルが見つかりません。 利用者の対応: 指定した入力ファイル名を確認して下さい。 KMAP file not found, 説明: -kオプションで指定したKMAPファイルが見つかりません。 利用者の対応: 指定したKMAPファイル名を確認して下さい。 GAIJI control file not found, 説明: -xオプションで指定した外字管理ファイルが見つかりませ ん。 利用者の対応: 指定した外字管理ファイル名を確認して下さい。 No record in input file, 説明: 入力ファイルの中にレコードが存在していません。 利用者の対応: 入力ファイルの内容を確認して下さい。 No record in KMAP file, 説明: KMAPファイルの中にレコードが存在していません。 利用者の対応: KMAPファイルの内容を確認して下さい。 Translation table load error, 説明: -cオプションで指定した1バイトコード・テーブルを読み込 む際に,エラーが生じました。 利用者の対応: 指定した1バイトコード・テーブル・ファイルの構 造,プロテクション等を確認して下さい。 Invalid Combination of parameter, 説明: パラメータの組み合せが正しくありません。 利用者の対応: 正しい組み合せで実行してください。 Parameter value is not specified, 説明: パラメータ値が指定されていません。 利用者の対応: パラメータ値を指定してください。 F-14 jefcodeユーティリティ jefcodeユーティリティ F.1 jefcodeユーティリティ Invalid keyword, 説明: パラメータのキーワード名が間違っています。 利用者の対応: 正しいキーワード名を指定してください。 jefcodeユーティリティ F-15 G _________________________________________________________________ jefknjdefユーティリティ _________________________________________________________________ G.1 jefknjdefユーティリティ jefknjdefユーティリティは,OSF/1ユーザがJEF拡張文字および JEFユーザ定義文字とDEC拡張漢字セットのユーザ定義領域の文字 との対応を設定,管理するためのソフトウェアです。このプログ ラムはjefknjdefコマンドにより起動されます。 G.1.1 起動方法 次のようなOSF/1のオペレーションにより起動されます。 % jefknjdef [ファイル名] (jefknjdefユーティリティの起動) jefknjdef> (jefknjdefのプロンプト) G.1.2 jefknjdefコマンド形式 jefknjdefコマンドのフォーマットは,次のとおりです。 ___________________________________________________________ jefknjdef__________________________________________________ (形式) jefknjdef (コマンド・パラメー 外字管理ファイル名(省略可) タ) (コマンド・オプショ なし ン)_______________________________________________________ jefknjdefユーティリティ G-1 jefknjdefユーティリティ G.1 jefknjdefユーティリティ G.1.3 jefknjdefユーティリティ内のコマンド形式 jefknjdef>プロンプトに対し,ユーザは次のコマンドを入力する ことができます。 o use o list o define o undefine o help o exit o quit 以下にこれらのコマンド形式について説明します。 G.1.3.1 useコマンド useコマンドは,使用する外字管理ファイルを指定します。 useコマンドのフォーマットは,次のとおりです。 ___________________________________________________________ use_____________________________________________________ (形式) use 外字管理ファイル名 ___________________________________________________________ (コマンド・パラメー タ)__________________(Default)____________________________ 外字管理ファイル名____なし_________________________________ 指定されたファイル名により既存のファイルがあれば,そのファ イルを使用対象とし,なければ新しい外字管理ファイルを作成し ます。ただし,新しいファイルを作成する場合は,スーパー・ユ ーザでなければなりません。外字管理ファイルは,JEF拡張文字お よびJEFユーザ定義文字を,DECユーザ定義領域のどの部分と対応 付けるかの情報を保存するファイルです。 G-2 jefknjdefユーティリティ jefknjdefユーティリティ G.1 jefknjdefユーティリティ ________________________ 注意 ________________________ useコマンドにより選択された外字管理ファイルは, jefknjdefユーティリティ内で次にuseコマンドを発行す るまで,define,undefine,listコマンドの対象ファイルと なります。 また,現在指定されているファイルを再度指定した場合, jefknjdef起動時のファイル内容から編集し直すことができ ます。 ______________________________________________________ G.1.3.2 listコマンド listコマンドは,useコマンドにより指定された外字管理ファイル の内容を区単位,文字単位で, outputで指定したファイルに表形式 で出力します。 listコマンドのフォーマットは,次のとおりです。 ___________________________________________________________ list___________________________________________________ (形式) list ___________________________________________________________ (コマンド・オプショ ン)__________________(Default)____________________________ group nogroup outputファイル名______標準出力_____________________________ jefknjdefユーティリティ G-3 jefknjdefユーティリティ G.1 jefknjdefユーティリティ (コマンド・オプション) group DEC拡張漢字セット区番号 指定された区のコード表をoutputオプションで指定されたフ ァイルに出力します。 outputファイル名 このオプションが省略された場合は,標準出力(端末画面) に出力します。 図 G-1 list表示例−1 jefknjdef> use extern.tbl jefknjdef> list List of the DEC-JEF extended Kanji File: extern.tbl DEC Extended Kanji JEF Kanji DEC Extended Kanji JEF Kanji 1 Group 101 17 Group 117 2 Group 102 18 Group 118 3 Group 103 19 Group 119 4 Group 104 20 Group 154 5 Group 105 21 Group 155 6 Group 106 22 Group 156 7 Group 107 23 Group 158 8 Group 108 24 Group 159 9 Group 109 25 Char 10 Group 110 26 Char 11 Group 111 27 Char 12 Group 112 28 Undefined 13 Group 113 29 Undefined 14 Group 114 30 Undefined 15 Group 115 31 Undefined 16 Group 116 (END of list) Note : DEC Ku No. is decimal. JEF Ku No. is decimal. G-4 jefknjdefユーティリティ jefknjdefユーティリティ G.1 jefknjdefユーティリティ 表中の"Group"はJEF拡張文字が区対応で割り当てられていること を示し、"Char"は文字対応で割り当てられていることを示してい ます。 jefknjdefユーティリティ G-5 jefknjdefユーティリティ G.1 jefknjdefユーティリティ 図 G-2 list表示例−2 jefknjdef> use extern.tbl jefknjdef> list group 25 List of the DEC-JEF extended Kanji File: extern.tbl 25-KU +-----+-----------------------------------------------------------------+ | | 0 1 2 3 4 5 6 7 8 9 A B C D E F | +-----+-----------------------------------------------------------------+ | B92 | .. AA AA AA AA AA .. .. .. .. .. .. .. .. .. .. | | | .. 01 02 03 04 06 .. .. .. .. .. .. .. .. .. .. | | B93 | .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. | | | .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. | | B94 | .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. | | | .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. | | B95 | .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. | | | .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. | | B96 | .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. | | | .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. | | B97 | .. .. .. .. .. .. .. .. .. .. .. AF AF AF AF .. | | | .. .. .. .. .. .. .. .. .. .. .. 0B 0C 0D 0E .. | +-----+-----------------------------------------------------------------+ (End of list) この例は、DEC拡張漢字セット25区に文字対応で割り当てられてい るJEF拡張漢字をlist表示した出力例です。 この例では、JEF拡張漢字コードX'A0A1'がDEC拡張漢字コード X'B921'に、X'A0FB'がX'B97B'に割り当てられています。 G-6 jefknjdefユーティリティ jefknjdefユーティリティ G.1 jefknjdefユーティリティ G.1.3.3 defineコマンド defineコマンドは,useコマンドにより指定された外字管理ファイ ルの情報を定義します。 defineコマンドのフォーマットは,次のとおりです。 ___________________________________________________________ define_______________________________________________ (形式) define (制限) このコマンドは スーパー・ユー ザのみ実行する ことができます ___________________________________________________________ (コマンド・オプション)____________________(Default)______ group なし char なし from JEF拡張文字またはJEFユーザ定義文字区 なし 番号(groupの時) from JEF拡張文字またはJEFユーザ定義文字コ なし ード(charの時) to DEC拡張漢字セット区番号(groupの時) なし to_DEC拡張漢字セット文字コード(charの時)____なし___________ (コマンド・オプション) group JEF拡張文字またはJEFユーザ定義文字を区対応で定義する場 合に使用します。 char jefknjdefユーティリティ G-7 jefknjdefユーティリティ G.1 jefknjdefユーティリティ JEF拡張文字またはJEFユーザ定義文字を文字対応で定義する 場合に使用します。 ________________________ 注意 ________________________ groupとcharは同時には使用できません。 ______________________________________________________ from 指定するオプションは、groupを指定した時はJEF拡張文字ま たはJEFユーザ定義文字の区番号を101〜196までの10進で指 定します。charを指定した時はJEF拡張文字またはJEFユーザ 定義文字を40A1〜A0FEの16進で指定します。 to groupを指定した時は対応させるDEC拡張漢字セットの区番号 を、1〜31までの10進で指定します。 charを指定した時は対応させるDEC拡張漢字セットの文字コードを A121〜BF7Eまでの16進で指定します。 ________________________ 注意 ________________________ DEC拡張漢字セットの文字コードに、JEFコードがcharによっ て割り当てられている時、その文字コードを含む区はgroup を使用して他の区に割り当てることは出来ません。また、 DEC拡張漢字セットの区にJEF漢字がgroupによって割り当て られている場合、そのDEC拡張漢字セットの区に含まれる文 字コードにcharによってJEF漢字を割り当てることも出来ま せん。 ______________________________________________________ defineコマンド使用例を示します。 o 新規にファイルを作成する場合 G-8 jefknjdefユーティリティ jefknjdefユーティリティ G.1 jefknjdefユーティリティ # jefknjdef jefknjdef> use mytbl.tbl jefknjdef> define group from 154 to 1 jefknjdef> define group from 155 to 2 jefknjdef> define group from 164 to 3 jefknjdef> define char from 41A1 to A121 jefknjdef> define char from 41A2 to A122 jefknjdef> exit 上記のコマンドにより新規に作成されたmytbl.tblの中に は、次のような指定がされることになります。 _______________________________________________________ JEF漢字_______________DEC漢字__________________________ JEF拡張文字の第154区 DEC拡張漢字セットの第1区 JEF拡張文字の第155区 DEC拡張漢字セットの第2区 JEF拡張文字の第164区 DEC拡張漢字セットの第3区 JEF拡張文字のX'41A1' DEC拡張漢字セットのX'A121' JEF拡張文字のX'41A2'__DEC拡張漢字セットのX'A122'_______ o 外字管理ファイルを更新する場合 # jefknjdef jefknjdef> use mytbl.tbl jefknjdef> define group from 156 to 4 jefknjdef> exit 上記のコマンドにより既存のmytbl.tblは、次のように更新 されることになります。 jefknjdefユーティリティ G-9 jefknjdefユーティリティ G.1 jefknjdefユーティリティ _______________________________________________________ JEF漢字_______________DEC漢字__________________________ JEF拡張文字の第154区 DEC拡張漢字セットの第1区 JEF拡張文字の第155区 DEC拡張漢字セットの第2区 JEF拡張文字の第156区 DEC拡張漢字セットの第4区 JEF拡張文字の第164区 DEC拡張漢字セットの第3区 JEF拡張文字のX'41A1' DEC拡張漢字セットのX'A121' JEF拡張文字のX'41A2'__DEC拡張漢字セットのX'A122'_______ G-10 jefknjdefユーティリティ jefknjdefユーティリティ G.1 jefknjdefユーティリティ G.1.3.4 undefineコマンド undefineコマンドは,useコマンドにより指定された外字管理ファ イルの情報をクリア(初期化)します。 undefineコマンドのフォーマットは,次のとおりです。 ___________________________________________________________ undefine___________________________________________ (形式) undefine (制限) このコマンドはスーパー・ユーザのみ 実行することができます ___________________________________________________________ (コマンド・オプショ ン)_____________________(Default)_________________________ group DEC拡張漢字セット なし 区番号 char DEC拡張漢字セット なし 文字コード all______________________なし______________________________ (コマンド・オプション) group DEC拡張漢字セット区番号 区対応で定義されているDEC拡張漢字セットのユーザ定義文 字をクリアする場合に使用します。指定するオプションは、 DEC拡張漢字セットの区番号を1〜31までの10進で指定しま す。 char DEC拡張漢字セット文字コード 文字対応で定義されているDEC拡張漢字セットのユーザ定義 文字をクリアする場合に使用します。指定するオプション jefknjdefユーティリティ G-11 jefknjdefユーティリティ G.1 jefknjdefユーティリティ は、DEC拡張漢字セットの文字コードをA121〜BF7Eまでの16 進で指定します。 all 現在定義されているすべての区域を未定義にします。新たに 編集し直したい場合に使用します。 ________________________ 注意 ________________________ 区対応で定義されているDEC拡張漢字のある区内のコード を、charでクリアすることは出来ません。また、あるDEC拡 張漢字が文字対応で定義されている場合、その文字を含ん でいる区をgroupでクリアすることも出来ません。group, char,allを同時に指定した場合は,最後に指定したものが 有効になります。 ______________________________________________________ G.1.3.5 helpコマンド helpコマンドによりjefknjdefユーティリティのコマンド説明を端 末装置に表示します。 helpコマンドのフォーマットは,次のとおりです。 ___________________________________________________________ help___________________________________________________ (形式)______________help_________________________________ G.1.3.6 exitコマンド exitコマンドにより修正した箇所を保存してjefknjdefユーティリ ティを終了します。 exitコマンドのフォーマットは,次のとおりです。 G-12 jefknjdefユーティリティ jefknjdefユーティリティ G.1 jefknjdefユーティリティ ___________________________________________________________ exit___________________________________________________ (形式)______________exit_________________________________ G.1.3.7 quitコマンド quitコマンドにより修正した箇所を保存せずに jefknjdefユーテ ィリティを終了します。 quitコマンドのフォーマットは,次のとおりです。 ___________________________________________________________ quit___________________________________________________ (形式)______________quit_________________________________ jefknjdefユーティリティ G-13 jefknjdefユーティリティ G.1 jefknjdefユーティリティ G.1.4 jefknjdefエラーメッセージ一覧 この節では,コマンドの正常終了を受け入れられない可能性のある 条件を示すエラーメッセージをまとめます。 二重定義はできません, 説明: JEF拡張漢字とユーザ定義文字のDEC拡張漢字セットへの割り 当てが重複しています。 利用者の対応: 重複しないように割り当ててください。 DECのn区は定義されていません, 説明: 未定義の区をクリアしようとしました。 利用者の対応: LISTコマンドを使用して,外字管理ファイルを確認 してください。 指定された区番号は定義されていません, 説明: 未定義の区,あるいは区対応で定義された区に対してLIST GROUPコマンドを使用しました。 利用者の対応: LISTコマンドを使用して,外字管理ファイルを確認 してください。 DECの区番号は1〜31の10進数で指定してください。JEFの区番号は101 〜196の10進数で指定してください, 説明: 入力されたコードが10進数でないか,入力されたコードが規 定された範囲を越えています。 利用者の対応: 入力コードを確認してください。 USEコマンドでファイルを指定してください, 説明: 外字管理ファイル名が指定されていません。 利用者の対応: USEコマンドを使用して,外字管理ファイルを指定 してください。 G-14 jefknjdefユーティリティ H _________________________________________________________________ jsnatratblユーティリティ _________________________________________________________________ H.1 jsnatratblユーティリティ FACOMシステムでは,文字コードセットとしてEBCDICコードを使 用します。OSF/1システムではDEC Multi Character Set(DMCS) を使用します。DMCSは標準的なASCII文字セットのスーパーセッ トです。F6680 DSPIではDMCSと他の文字コードセットとの間で 文字を変換するテーブルを使用します。利用者はjsnatratblユ ーティリティを用いて利用者独自の変換テーブルを作成すること ができます。その際,利用者は,F6680 DSPIで提供するテンプレ ート・ファイルを用います。利用者は,テンプレートファイルを 修正することにより,独自の変換テーブルを作成します。F6680 DSPIで提供するテンプレートファイルは/usr/lib/sna/ja_JP.FNA /fnarjetra.marにありますので参照してください。 H.1.1 変換テーブル修正マクロ もし,F6680 DSPIで提供されている変換テーブルが利用者の要 求を満たしていない場合は,テンプレートファイル中にマクロを 定義することにより,目的とする変換テーブルを作成できます。 変更するには,テンプレートファイル/usr/lib/sna/ja_JP.FNA /fnarjetra.marを利用者のディレクトリ下にコピーしてからvi等 のエディタで変更してください。定義できるマクロは5種類あり ます。また,各マクロの引き数として共通に以下の引き数を指定 できます。 o eb EBCDICコードを16進数2桁で指定します。 jsnatratblユーティリティ H-1 jsnatratblユーティリティ H.1 jsnatratblユーティリティ o as DMCSコードを16進数2桁またはシングル・クオーテイシ ョンマーク(')の後に文字付けて指定します。 ________________________ 注意 ________________________ シングル・クオーテイションマークを使用してasを指定する 場合, DMCS文字にカンマ(,)とセミコロン(;)は指定できませ ん。 カンマは引き数の区切り記号として,またセミコロンは コメント開始記号として解釈されるので,シングル・ク オーテイションのみが指定されたと判断されます。(エ ラーにはならず, 00(ヌルコード)が定義されたと解釈 されます。)よって,カンマ,セミコロンをDMCSコードと して指定する場合は,直接, 16進コード(カンマの場合 は2C,セミコロンの場合は3B )を指定してください。 ______________________________________________________ H.1.1.1 マクロ 1. EB2AS eb,as EB2ASマクロはEBCDICからDMCSに変換する場合のEBCDICコー ドとDMCSコードの対応を定義します。ebで定義されたEBCDIC コードは,asで定義されたDMCSコードに変換されます。この マクロはEBCDICコードからDMCSコードに変換する場合の対応 を定義するだけですので,DMCSコードからEBCDICコードへの 変換には影響を与えません。 例: EB2AS 5A,'! この例ではEBCDICコードの16進数5AをDMCSコードの文字'!' (16進数21)に変換することを定義しています。DMCSコードか らEBCDICコードへの変換時の'!'文字の変換には影響を与え ません。 2. AS2EB as,eb H-2 jsnatratblユーティリティ jsnatratblユーティリティ H.1 jsnatratblユーティリティ AS2EBマクロはDMCSからEBCDICに変換する場合のDMCSコード とEBCDICコードの対応を定義します。asで定義されたDMCSコ ードは,ebで定義されたEBCDICコードに変換されます。この マクロはDMCSコードからEBCDICコードに変換する場合の対応 を定義するだけですので,EBCDICコードからDMCSコードへの 変換には影響を与えません。 例: AS2EB '[,5F この例ではDMCSコードの文字'['(16進数5B)をEBCDICコード の16進数5Fに変換することを定義しています。EBCDICコード からDMCSコードへの変換時の16進数5Fの変換には影響を与え ません。 3. REVTRA eb,as REVTRAマクロはEB2ASマクロとAS2EBマクロを併せたマクロで す。EBCDICコードとDMCSコードの双方向の変換を定義するこ とができます。このマクロで定義されたEBCDICコードとDMCS コードは,EBCDICコードからDMCSコードへの変換時及びDMCS コードからEBCDICコードへの変換時の両方の場合に対応付け られます。 例: REVTRA 4A,A2 この例では,EBCDICコードからDMCSコードへの変換時には, EBCDICコードの16進数4Aは,DMCSコードの16進数A2に変換 し,DMCSコードからEBCDICコードへの変換時には,DMCSコー ドの16進数A2は,EBCDICコードの16進数4Aに変換することを 定義しています。この例は以下のように定義した場合と同じ 意味を持つことになります。 AS2EB A2,4A EB2AS 4A,A2 4. DMFILL = code. jsnatratblユーティリティ H-3 jsnatratblユーティリティ H.1 jsnatratblユーティリティ 文字の割り当てられていないDMCSコードに割り当てるコード を10進数で指定します。通常は,ASCII SUBコード(10進数 26)を指定します。 例: DMFILL = 26. 5. END. 変換テーブルの終わりを示します。 ________________________ 注意 ________________________ マクロは1行に1つしか指定できません。 ______________________________________________________ H.1.1.2 コメント 定義ファイル中の任意の場所にコメント文字列を入れることがで きます。コメントはセミコロン(;)で始まり,行末で終わります。 例: ; This is a comment line. H.1.2 変換テーブルの作成 作成するには,テンプレートファイル/usr/lib/sna/ja_JP.FNA /fnarjetra.marを利用者のディレクトリ下にコピーしてからvi等 のエディタで変更してください。テンプレートファイル/usr/lib /sna/ja_JP.FNA/fnarjetra.marを直接修正しないことをお勧めし ます。 変換テーブルの作成は,修正したテンプレートファイルについて 以下に示すコマンドを実行することにより行ないます。 % jsnatratbl [-l] [-d] [入力ファイル名 [出力ファイル名]] H-4 jsnatratblユーティリティ jsnatratblユーティリティ H.1 jsnatratblユーティリティ -lオプショ 作成された変換テーブルの内容が,表形式のテキ ン ストファイルで出力されます。入力ファィル名に ".lis"を付加したファイルが作成されます。ただし, -dオプションを指定した場合は, "tratbldef.lis"が 作成されます。 -dオプショ jsnatratblユーティリティの省略時のテーブルを出 ン 力します。この省略時のテーブルは,入力ファイル中 に何もコマンドを指定しなかった場合と同じもので す。このオプションを指定すると入力ファイル,出力 ファイル指定共に無効になります。変換テーブルは, "tratbldef.tbl"という出力ファイル名で作成されま す。 入力ファイ jsnatratblユーティリティの入力ファイルとなる変 ル 換テーブル定義ファイル名です。このパラメータは 省略できません。ただし, -dオプションを指定した 場合は無効になり,この場合は省略可能です。 出力ファイ jsnatratblユーティリティの出力ファイルとなる変 ル 換テーブルファイル名です。このパラメータを省略 した場合は,入力ファイル名に".tbl"を付加したファ イル名で出力ファイルが作成されます。ただし, -d オプションを指定した場合は無効になります。 jsnatratblユーティリティ H-5 jsnatratblユーティリティ H.1 jsnatratblユーティリティ H.1.3 変換テーブル作成例 ここで示す変換テーブルの作成例は,カナ文字用変換テーブルに EBCDICコードからDMCSコードに変換する場合は,16進数C0及び16 進数DOを'{'及び'}'に変換し,DMCSコードからEBCDICコードに変 換する場合は,'{'及び'}'を16進数4D及び16進数5Dに変換するよ うに修正する場合を示しています。 DMFILL = 26. ・ ・ ・ ;EB2AS C0,1A ;EB2AS D0,1A ;AS2EB 7B,3F ;AS2EB 7D,3F EB2AS C0,'{ EB2AS D0,'} AS2EB '{,4D AS2EB '},5D ・ ・ ・ .END H-6 jsnatratblユーティリティ jsnatratblユーティリティ H.1 jsnatratblユーティリティ H.1.4 jsnatratblエラーメッセージ一覧 jsnatratblユーティリティにおいてエラーが発生したとき,以下に 示すようなエラーメッセージが出力されます。エラーが発生した ときは,出力されたエラーメッセージについての説明と利用者の対 応をよく読み,適切な処置を行ってください。 Invalid option specified xxx, 説明: jsnatratblコマンドに間違ったオプションが指定されていま す。 利用者の対応: 正しいオプションを指定してください。 Too many parameters are specified, 説明: jsnatratblコマンドのパラメータ指定が多すぎます。 利用者の対応: 指定するパラメータの数を確認してコマンドを入力 し直してください。 Input file name is not specified, 説明: jsnatratblコマンドの入力ファイル名が指定されていませ ん。 利用者の対応: 入力ファイル名を指定してください。 Invalid output file name specification, 説明: jsnatratblコマンドの出力ファイル指定が間違っています。 利用者の対応: 出力ファイル名を確認してコマンドを入力し直して ください。 Cannot open xxx, 説明: ファイルxxxをオープンできません。 利用者の対応: ファイル名またはファイルの保護属性が正しいか確 認してください。 Invalid command name specification - at line nn, 説明: nn行目に間違ったコマンドが指定されています。 利用者の対応: 正しいコマンドに修正してください。 Command parameter not found - at line nn, 説明: nn行目のコマンドのパラメータが指定されていません。 利用者の対応: パラメータを指定してください。 jsnatratblユーティリティ H-7 jsnatratblユーティリティ H.1 jsnatratblユーティリティ Invalid character or string exists - at line nn, 説明: nn行目のコマンドの後に不正な文字列があります。 利用者の対応: 不正文字を取り除くか,またはコマンドのパラメー タが正しいかどうか確認してください。 Too many parameter specified - at line nn, 説明: nn行目のコマンドのパラメータ数が多すぎます。 利用者の対応: パラメータの数を修正するか,またはパラメータ値 にカンマ(,)が指定されていないか確認してください。 Invalid value specification - at line nn, 説明: nn行目のコマンドのパラメータ値が正しくありません。 利用者の対応: 正しいパラメータ値を指定してください。 No value is specified - at line nn, 説明: nn行目のコマンドのパラメータ値が指定されていません。 利用者の対応: パラメータを指定してください。 Invalid decimal number specification - at line nn, 説明: nn行目のコマンドのパラメータ値が正しい10進数で指定され ていません。 利用者の対応: 正しい10進数を指定してください。 Specified value is too large - at line nn, 説明: nn行目のコマンドのパラメータ値が範囲を越えています。 利用者の対応: 正しいパラメータ値を指定してください。 equal(=)specification not found, 説明: コマンドのパラメータ指定にイコール(=)記号が指定され ていません。 利用者の対応: パラメータ値の前にイコール記号を指定してくださ い。 less arguments, 説明: コマンドのパラメータ数が足りません。 利用者の対応: パラメータの数が正しいかを,またはパラメータ値 にセミコロン(;)が指定されていないかを確認してください。 H-8 jsnatratblユーティリティ jsnatratblユーティリティ H.1 jsnatratblユーティリティ value string is too long, 説明: コマンドのパラメータ指定が長すぎます。 利用者の対応: 正しいパラメータ値を指定してください。 invalid hexadecimal value, 説明: パラメータ指定に正しくない16進数が指定されています。 利用者の対応: 正しい16進数を指定してください。 invalid specification of EBCDIC code, 説明: EBCDICコード指定に間違った値が指定されています。 利用者の対応: EBCDICコード指定が正しいか,またはEBCDICパラメ ータにASCII文字を指定していないか確認してください。 jsnatratblユーティリティ H-9 I _________________________________________________________________ DEC/JEFコード変換ライブラリ _________________________________________________________________ I.1 DEC/JEFコード変換ライブラリ ここではDECコードとJEFコード間の変換を行うライブラリの使用 方法を説明します。 漢字コードについては以下の関連資料を参照してください。 富士通関連資料 1. FACOM JEF漢字コード系(99FR-0011-2) DEC関連資料 1. 漢字コード表(AA-A056B-TE-JO) 2. VT282 programmer Reference Manual (YJ-CT82C-01) 3. jefknjdefユーティリティについては本書の第G.1節をご覧く ださい。 I.1.1 コード変換ライブラリの概要 DEC/JEFコード変換ライブラリはDECコード,JEFコード相互間の変 換を行うルーチン群です。 DECコード,JEFコードには1バイトコードおよび2バイトコードを 混在させることが可能です。 DEC/JEFコード変換ライブラリ I-1 DEC/JEFコード変換ライブラリ I.1 DEC/JEFコード変換ライブラリ I.1.1.1 ライブラリ構成 コード変換ライブラリは以下のリンク・ライブラリとして提供さ れています。 /usr/i18n/usr/lib/libftra.a I.1.1.2 リンク方法 DEC/JEFコード変換ライブラリは,F6680 DSPIのライセンスが無い と動作しません。コンパイル時には以下の例のようにリンクライ ブラリにLMFライブラリを指定してください。 cc user_prog -lftra -llmf I.1.2 コード変換ライブラリの詳細 I.1.2.1 Item List いくつかのルーチンで使用されるItem Listは各Itemごとに下記の 構造を持ちます。プログラム言語用定義ファイル内でItem List のテンプレートが設定されています。Item Listの最後にはitem code = 0(FTRA_k_end_of_list)を指定しなければなりません。 図 I-1 Item List structure _______________________________________________________________ ____________reserved______________________item_code____________ 0 |__________________________item_|alue__________________________| 4 | | | I.1.2.2 Item Code 次の表は利用可能なItem Codeの一覧を示しています。記号の値は 各言語用定義ファイル内に定義されています。 I-2 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ I.1 DEC/JEFコード変換ライブラリ 表 I-1 Item Code一覧 ___________________________________________________________ Item_Code___________Item_Value______Description____________ FTRA_k_end_of_list アイテムリストの終了 FTRA_k_trans_mode 変換モード 変換モードの初期値を設 Bitmask 定します。Item Valueは 表 I-2を参照してくださ い。 FTRA_k_asc_ebc_tbl 変換テーブルの DECからFACOMへの1バイト 先頭アドレス コード変換テーブル(256 バイト)を設定します。 FTRA_k_ebc_asc_tbl 変換テーブルの FACOMからDECへの1バイト 先頭アドレス コード変換テーブル(256 バイト)を設定します。 FTRA_k_load_fna jsnatratblユーティリ ティで作成したtbl_file をロードすることを指 定します。tbl_fileは ftra_dec_jef_initルーチ ンの2番目の引き数で指 ____________________________________定します。_____________ ________________________ 注意 ________________________ FTRA_k_asc_ebc_tbl, FTRA_k_ebc_asc_tblで指定される1バ イトコード変換テーブルとはプログラマがソースコード中に 配列として設定するコード変換テーブルのことを意味しま す。jsnatratbleユーティリティで作成される変換テーブル ではありませんので注意が必要です。1バイトコード変換テ ーブルの具体例については, 第I.1.4項プログラム例を参照 してください。 また, Item CodeでFTRA_k_load_fnaが指定されていても,同 時にFTRA_k_asc_ebc_tbl, FTRA_k_ebc_asc_tblが指定されて いれば, FTRA_k_load_fnaの指定は無視され,プログラマがソ ースコード中に配列として設定するコード変換テーブルが優 先的に使用されますので御注意ください。 ______________________________________________________ DEC/JEFコード変換ライブラリ I-3 DEC/JEFコード変換ライブラリ I.1 DEC/JEFコード変換ライブラリ I.1.2.3 変換モードBitmask FTRA_k_trans_modeのItem valueはbitmaskとなっています。各フ ィールドのオフセットを表 I-2に示します。文字列の初期,最終 モードを除くフィールドの値が1の場合,その機能を有効(enable) にします。変換モードを指定する際には必要な機能全てを設定す る必要があります。 FTRA_vのかわりにFTRA_mのprefixを使うことにより,各フィール ドのbit mask patternを利用することができます。 表 I-2 変換モード ___________________________________________________________ Number of Bit_Offset______________bits____Description________________ FTRA_v_dec_first_mode 2 DEC文字列初期モード + FTRA_v_dec_last_mode + 2 DEC文字列最終モード FTRA_v_dec_shift 1 DECロッキング・シフト・コー ドの解釈 FTRA_v_dec_shift_ss 1 DECシングル・シフト・コード の解釈 FTRA_v_jef_first_mode 2 JEF文字列初期モード + FTRA_v_jef_last_mode + 2 JEF文字列最終モード FTRA_v_jef_shift 1 JEFシフト・コードの解釈 FTRA_v_tab_expand 1 TABコードを空白コードに展開 する FTRA_v_replace 1 シフト・コード位置に空白を 入れる +表_I-3参照のこと__________________________________________ ___________________________________________________________ I-4 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ I.1 DEC/JEFコード変換ライブラリ I.1.2.3.1 文字列の初期/最終モード 文字列の初期モード 入力側ではどのような文字セットより文字列が開始されている か,出力側ではどのような文字セットとして出力を受け取るかを 規定します。 文字列の最終モード 出力側ではどのような文字セットとして出力を終了するかを規定 します。入力側においては実際の変換対象文字列に依存するため 意味をもちません。 入出力両方のシフト・コードの解釈が有効である場合,上記モー ド設定に従い必要なシフト・コードが付加されます。 変換モードbitmaskの文字列の初期/最終モードのフィールドは以 下の値をとります。 表 I-3 文字列モードの値 ___________________________________________________________ Value_____________Description______________________________ FTRA_k_kanji_ 漢字文字列モード DEC文字列においては mode ASCII/漢字文字列を示し ます。 JEF文字列においてはDBCS コード列を示します FTRA_k_kana_mode カナ文字列モード DEC文字列においては半角 カナ文字列を示します。 JEF文字列においてはSBCS コード列を示します FTRA_k_any_mode 抑制終了モード 変換終了時のモード合わ せを抑制します FTRA_k_first_ 初期モード 最終モードを文字列初期 mode________________________________モードと同じとします___ DEC/JEFコード変換ライブラリ I-5 DEC/JEFコード変換ライブラリ I.1 DEC/JEFコード変換ライブラリ I.1.2.3.2 シフト・コード DECコード列 半角カナ・コードと漢字コードが混在する文字列において両者を 識別するために使用するシフト・コードには2種類あります。 1. ロッキング・シフト o LS2R (%x'1B7D') 半角カタカナ・コード列の前に使用します o LS3R (%x'1B7C') 漢字コード列の前に使用します DEC漢字コード・セットでは で囲まれた文字 列が半角カタカナを表現します。半角カタカナ以外の1バイ ト・コード(アルファベット等)はどちらに含まれていてもか まいません。 2. シングル・シフト o SS2 (%x'8E') 半角カタカナ・コードの直前に使用します。ロッキン グ・シフトと異なり文字単位に使用するシフト・コード です。 それぞれFTRA_v_dec_shift,FTRA_v_dec_shift_ssにより指定しま す。ともに設定されているときは入力時はどちらのシフト・コー ドも解釈されますが,出力においてはシングル・シフトのみ出力 対象となります。 JEFコード列 SBCSとDBCSが混在する文字列において,両者を識別するために使 用するシフト・コードは以下のとおりです。 o Kシフト(%x'28') 漢字コード列の前に使用します o Aシフト(%x'29') I-6 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ I.1 DEC/JEFコード変換ライブラリ 漢字コード列の直後に使用します I.1.2.3.3 Replaceモード(JEFからDECへの変換の場合のみ) 入力データのシフト・コード位置に空白文字を出力します。空白 文字は%x'40'です。とりわけ漢字とアルファベットが混在するよ うな変換において,変換後のレコード長,および各文字位置を変 えないようにできます。 I.1.2.4 コード変換の例 JEF /DEC漢字コード変換は 次のような変換が行われます。 図 I-2 変換例 o JEFコードからDECコードへ 1 Kシフト/Aシフトコードは削除されます 2 Kシフト/Aシフトコード位置に空白文字が入ります 3 **サポートしていません** 4 **サポートしていません** o DECコードからJEFコードへ 1 Kシフト/Aシフトコードを付加します 2 **サポートしていません** 3 Kシフト/Aシフトコードを付加しません 4 **サポートしていません** DEC/JEFコード変換ライブラリ I-7 DEC/JEFコード変換ライブラリ I.1 DEC/JEFコード変換ライブラリ I.1.2.5 外字の変換 ユーザ定義文字,ベンダー定義文字などのいわゆる外字の変換に はjefknjdefユーティリティにより作成された外字管理ファイルを 利用して変換を行います。jefknjdefユーティリティの詳細は本書 の第G.1節を参照してください。 I.1.2.6 制限事項 シフト・コードを利用した混在文字列を入力として与えた場合, 設定されている1バイトコードテーブルの内容によらず,半角カ ナ・コードを含んだテーブルが設定されているとみなした変換が 行なわれることがあります。 I.1.2.7 DEC/JEFコード変換ルーチンのインタフェース 以下にコード変換ルーチンのインタフェースを示します。 I-8 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_dec_jef_init _________________________________________________________________ ftra_dec_jef_init 変換ルーチン使用環境の初期設定を行います _________________________________________________________________ C binding ftra_dec_jef_init ( ext_file, tbl_file, context, itemlist ) _________________________________________________________________ 戻り値 状態値を返します _________________________________________________________________ 引数 char *ext_file (Input) 外字管理ファイル名 jefknjdefユーティリティにより作成された外字管理ファイルを指 定してユーザ定義文字,JEF拡張文字の変換を行うことができま す。 char *tbl_file (Input) jsnatratblユーティリティで作成される1バイトコード変換テーブ ル・ファイル名 itemlistにFTRA_k_asc_ebc_tbl, FTRA_k_ebc_asc_tblを指定した 場合は,プログラマがソースコード中に配列として宣言したコード 変換テーブルを使用するものと見なされるため, tbl_fileを指定 しても無視されます。 void *context (Output) 変換コンテキスト・ハンドル DEC/JEFコード変換ライブラリ I-9 DEC/JEFコード変換ライブラリ ftra_dec_jef_init 変換コンテキスト・ハンドルが返されます。以降の呼び出しにお いてこのハンドルを用います。 struct FTRA_ITEM_LIST *itemlist (Input) 初期設定を行うパラメータ・リスト 指定可能なItem Codeは次の表 I-4を参照してください。 表 I-4 指定可能なItem Code ___________________________________________________________ Item_Code_______Item_Value__________Description____________ FTRA_k_end_of_ アイテム・リストの終了 list FTRA_k_trans_ 変換モードBitmask 変換モードの初期値を設 mode 定します。Item Valueの 詳細は表 I-2を参照して ください。 FTRA_k_asc_ テーブルの先頭アド DECからFACOMへの1バイ ebc_tbl レス トコード変換テーブル (256バイト)を設定しま す。tbl_fileの指定は無 視されます。 FTRA_k_ebc_ テーブルの先頭アド FACOMからDECへの1バイ asc_tbl レス トコード変換テーブル (256バイト)を設定しま す。tbl_fileの指定は無 視されます。 FTRA_k_load_ jsnatratblユーティリ fna ティで作成したtbl_file をロードすることを指 定します。tbl_fileは ftra_dec_jef_initルーチ ンの2番目の引き数で指 ____________________________________定します。_____________ I-10 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_dec_jef_init ________________________ 注意 ________________________ FTRA_k_asc_ebc_tbl, FTRA_k_ebc_asc_tblで指定される1バ イトコード変換テーブルとはプログラマがソースコード中に 配列として設定するコード変換テーブルのことを意味しま す。jsnatratblユーティリティで作成される変換テーブルで はありませんので注意が必要です。1バイトコード変換テー ブルの具体例については, 第I.1.4項プログラム例を参照し てください。 また, Item CodeでFTRA_k_load_fnaが指定されていても,同 時にFTRA_k_asc_ebc_tbl, FTRA_k_ebc_asc_tblが指定されて いれば, FTRA_k_load_fnaの指定は無視され,プログラマがソ ースコード中に配列として設定するコード変換テーブルが優 先的に使用されますので御注意ください。 ______________________________________________________ _________________________________________________________________ 戻り値 FTRA_s_normal 正常終了 FTRA_s_extnotacc 外字管理ファイルにアクセスできません FTRA_s_cantalloc 変換環境を割り当てできません _________________________________________________________________ 機能説明 o 変換テーブル無指定時は図 I-3,図 I-4が設定されます。 o 変換モード無指定時のデフォルト設定は次のとおりです。 DEC/JEFコード変換ライブラリ I-11 DEC/JEFコード変換ライブラリ ftra_dec_jef_init _______________________________________________________ Field___________Value__________________________________ dec_first_mode FTRA_k_kanji_mode dec_last_mode FTRA_k_kanji_mode dec_shift 1 jef_first_mode FTRA_k_kana_mode jef_last_mode FTRA_k_kana_mode jef_shift_______1______________________________________ I-12 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_dec_jef_free _________________________________________________________________ ftra_dec_jef_free 変換ルーチン使用環境を解放します _________________________________________________________________ C binding ftra_dec_jef_free ( context ) _________________________________________________________________ 戻り値 状態値を返します _________________________________________________________________ 引数 void *context (Input) 変換コンテキスト・ハンドル ftra_dec_jef_initにより取得したハンドルを指定します。 _________________________________________________________________ 戻り値 FTRA_s_normal 正常終了 FTRA_s_badctx 変換コンテキストが正しくありません FTRA_s_invparam パラメータが正しくありません FTRA_s_cantfree 変換環境が解放できません DEC/JEFコード変換ライブラリ I-13 DEC/JEFコード変換ライブラリ ftra_dec_jef_free _________________________________________________________________ 機能説明 ftra_dec_jef_initにより取得した変換環境は,このルーチンによ り解放する必要があります。 I-14 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_dec_jef _________________________________________________________________ ftra_dec_jef DECコードの文字列をJEFコードの文字列に変換します _________________________________________________________________ C binding ftra_dec_jef ( src_buf, src_len, dst_buf, dst_len, ret_len, context, itemlist ) _________________________________________________________________ 戻り値 状態値を返します _________________________________________________________________ 引数 char *src_buf (Input) 変換対象バッファの先頭アドレス 変換すべきDECコード文字列を含んだバッファ int src_len (Input) src_bufのバイト長 char *dst_str (Output) 変換結果出力バッファの先頭アドレス 変換後のJEFコード文字列を含むバッファ int dst_len (Input) dst_bufのバイト長 int *ret_len (Output) 変換結果文字列のバイト長 DEC/JEFコード変換ライブラリ I-15 DEC/JEFコード変換ライブラリ ftra_dec_jef void *context (Input) 変換コンテキスト・ハンドル struct FTRA_ITEM_LIST *itemlist (Input) 変換時設定を行うパラメータ・リスト ftra_dec_jef_initにおいて設定した初期値を一時的に変更するこ とが可能です。初期値は変更されませんので,呼び出しごとの設 定が必要です。 指定可能なItem Codeは表 I-5を参照してください。 表 I-5 指定可能なItem Code ___________________________________________________________ Item_Code___________Description____________________________ FTRA_k_end_of_list アイテム・リストの終了 FTRA_k_trans_mode 変換モードを設定します。Item Valueの詳 細は 表 I-2を参照してください。 FTRA_k_asc_ebc_tbl DECからFACOMへの1バイトコード変換テーブ ____________________ル(256バイト)を設定します。____________ _________________________________________________________________ 戻り値 FTRA_s_normal 正常終了 FTRA_s_truncate 結果文字列の切り詰めが行なわれました (正常終了) FTRA_s_invparam パラメータが正しくありません FTRA_s_badctx 変換コンテキストが正しくありません I-16 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_dec_jef _________________________________________________________________ 機能説明 o DEC漢字文字セット中の未定義コードは%x'44E9'('□')に変 換します。 o DEC拡張漢字文字セットのコードの変換は使用する外字管理 ファイルの設定に依存します。未定義コードは%x'44E9'('□ ')に変換します。 o 入力バッファ(src_buf),出力バッファ(dst_buf)が同じ文字 列領域を指示していた場合の変換結果は不定です。 o 変換対象文字列に漢字および半角カナ・コードが混在する場 合には,それぞれを識別するためにシフト・コードにより明 示されている必要があります(シフト・コードとしてロッキ ング・シフト( LS2R,LS3R )またはシングル・シフト( SS2 )を使用します)。 o 正しい変換結果を得るためには変換モード設定および1バイ トコード変換テーブルが適切に設定されている必要がありま す。 DEC/JEFコード変換ライブラリ I-17 DEC/JEFコード変換ライブラリ ftra_jef_dec _________________________________________________________________ ftra_jef_dec JEFコードの文字列をDECコードの文字列に変換します _________________________________________________________________ C binding ftra_jef_dec ( src_buf, src_len, dst_buf, dst_len, ret_len, context, itemlist ) _________________________________________________________________ 戻り値 状態値を返します _________________________________________________________________ 引数 char *src_buf (Input) 変換対象バッファの先頭アドレス 変換すべきJEFコード文字列を含んだバッファ int src_len (Input) src_bufのバイト長 char *dst_str (Output) 変換結果出力バッファの先頭アドレス 変換後のDECコード文字列を含むバッファ int dst_len (Input) dst_bufのバイト長 int *ret_len (Output) 変換結果文字列のバイト長 I-18 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_jef_dec void *context (Input) 変換コンテキスト・ハンドル struct FTRA_ITEM_LIST *itemlist (Input) 変換時設定を行うパラメータ・リスト ftra_jef_dec_initにおいて設定した初期値を一時的に変更するこ とが可能です。初期値は変更されませんので,呼び出しごとの設 定が必要です。 指定可能なItem Codeは表 I-6を参照してください。 表 I-6 指定可能なItem Code ___________________________________________________________ Item_Code___________Description____________________________ FTRA_k_end_of_list アイテム・リストの終了 FTRA_k_trans_mode 変換モードを設定します。Item Valueの詳 細は表 I-2を参照してください。 FTRA_k_ebc_asc_tbl FACOMからDECへの1バイトコード変換テーブ ____________________ル(256バイト)を設定します。____________ _________________________________________________________________ 戻り値 FTRA_s_normal 正常終了 FTRA_s_truncate 結果文字列の切り詰めが行なわれました (正常終了) FTRA_s_invparam パラメータが正しくありません FTRA_s_badctx 変換コンテキストが正しくありません DEC/JEFコード変換ライブラリ I-19 DEC/JEFコード変換ライブラリ ftra_jef_dec _________________________________________________________________ 機能説明 o 未定義漢字コードは%x'A2A2'('□')に変換します。 o ユーザ定義文字,JEF拡張文字コードの変換は使用する 外字管理ファイルの設定に依存します。未定義コード は%x'A2A2'('□')に変換します。 o 入力バッファ(src_buf),出力バッファ(dst_buf)が同じ文字 列領域を指示していた場合の変換結果は不定です。 o 正しい変換結果を得るためには変換モード設定および1バイ トコード変換テーブルが適切に設定されている必要がありま す。 I-20 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_jef_dec I.1.3 省略時変換テーブル 図 I-3 DEC -> FACOM 1バイトコード変換テーブル 0 1 2 3 4 5 6 7 8 9 A B C D E F -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 0 00 10 40 F0 7C D7 - D7 - - - 58 91 A5 - - 1 01 11 5A F1 C1 D8 C1 D8 - - 41 81 92 A6 - - 2 02 12 7F F2 C2 D9 C2 D9 - - 42 82 93 A7 - - 3 03 13 7B F3 C3 E2 C3 E2 - - 43 83 94 A8 - - 4 37 3C E0 F4 C4 E3 C4 E3 - - 44 84 95 A9 - - 5 2D 3D 6C F5 C5 E4 C5 E4 - - 45 85 96 AA - - 6 2E 32 50 F6 C6 E5 C6 E5 - - 45 86 97 AC - - 7 2F 26 7D F7 C7 E6 C7 E6 - - 47 87 98 AD - - 8 16 18 4D F8 C8 E7 C8 E7 - - 48 88 99 AE - - 9 05 19 5D F9 C9 E8 C9 E8 - - 49 89 9A AF - - A 25 - 5C 7A D1 E9 D1 E9 - - 51 8A 9D BA - - B 0B 27 4E 5E D2 - D2 - - - 52 8C 9E BB - - C 0C 1C 6B 4C D3 5B D3 4F - - 53 8D 9F BC - - D 0D 1D 60 7E D4 - D4 - - - 54 8E A2 BD - - E 0E 1E 4B 6E D5 5F D5 A1 - - 55 8F A3 BE - - F 0F 1F 61 6F D6 6D D6 07 - - 56 90 A4 BF - - ---------------------------------------------------- ※ '-'は %x'3F' DEC/JEFコード変換ライブラリ I-21 DEC/JEFコード変換ライブラリ ftra_jef_dec 図 I-4 FACOM -> DEC 1バイトコード変換テーブル 0 1 2 3 4 5 6 7 8 9 A B C D E F -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 0 00 10 - - 20 26 2D - - BF - - - - 24 30 1 01 11 - - A1 AA 2F - B1 C0 7E - 41 4A - 31 2 02 12 - 16 A2 AB - - B2 C1 CD - 42 4B 53 32 3 03 13 - - A3 AC - - B3 C2 CE - 43 4C 54 33 4 - - - - A4 AD - - B4 C3 CF - 44 4D 55 34 5 09 - 0A - A5 AE - - B5 C4 D0 - 45 4E 56 35 6 - 08 17 - A6 AF - - B6 C5 D1 - 46 4F 57 36 7 7F - 1B 04 A7 - - - B7 C6 D2 - 47 50 58 37 8 - 18 - - A8 B0 - - B8 C7 D3 - 48 51 59 38 9 - 19 - - A9 - - - B9 C8 D4 - 49 52 5A 39 A - - - - 5B 21 - 3A BA C9 D5 DA - - - - B 0B - - - 2E 5C 2C 23 - - - DB - - - - C 0C 1C - 14 3C 2A 25 40 BB - D6 DC - - - - D 0D 1D 05 15 28 29 5F 27 BC CA D7 DD - - - - E 0E 1E 06 - 2B 3B 3E 3D BD CB D8 DE - - - - F 0F 1F 07 - 7C 5E 3F 22 BE CC D9 DF - - - - ---------------------------------------------------- ※ '-'は %x'1A' I-22 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_jef_dec I.1.4 プログラム例 DEC/JEFコード変換ライブラリの使用例 /* **++ ** ** Sample proram for DEC/JEF code-conversion library ** **-- */ #include #include "ftra_def.h" #define TRUE 1 #define FALSE 0 #define BUF_SIZ 256 static unsigned char dec_string[] = "Dec 漢字コード JIS X0208-1983 準拠" ; main () { int status; long context; struct FTRA_ITEM_LIST item[2]; struct FTRA_MODE *tmode; char jef_buf[BUF_SIZ], dec_buf[BUF_SIZ]; int ret_len ; /* Init Item list */ item[0].FTRA_w_code = FTRA_k_trans_mode; item[0].FTRA_l_value = 0; item[1].FTRA_w_code = FTRA_k_end_of_list; /* Define translation mode */ DEC/JEFコード変換ライブラリ I-23 DEC/JEFコード変換ライブラリ ftra_jef_dec tmode = (struct TRA_MODE *)(&item[0].FTRA_l_value); tmode->FTRA_v_dec_first_mode = FTRA_k_kanji_mode; tmode->FTRA_v_dec_last_mode = FTRA_k_kanji_mode; tmode->FTRA_v_dec_shift = TRUE; tmode->FTRA_v_jef_first_mode = FTRA_k_kana_mode; tmode->FTRA_v_jef_last_mode = FTRA_k_kana_mode; tmode->FTRA_v_jef_shift = TRUE; /* INITialization */ status = ftra_dec_jef_init ( "", "", (&context), item ); printf( "INIT %x\n", status ); /* DEC -> JEF translation */ status = ftra_dec_jef ( dec_string, strlen(dec_string), jef_buf, BUF_SIZ, &ret_len, &context, 0) ; printf( "DEC -> JEF %x (%d bytes)\n", status, ret_len ); jef_buf[ret_len] = 0; /* JEF -> DEC translation */ status = ftra_jef_dec ( jef_buf, (unsigned short)ret_len, dec_buf, BUF_SIZ, &ret_len, &context, 0) ; printf( "JEF - > DEC %x (%d bytes)\n", status, ret_len ); dec_buf[ret_len] = 0; /* Output Before & After */ printf( "前 : %s\n", dec_string ); printf( "後 : %s\n", dec_buf ); /* Release context */ status = ftra_dec_jef_free ( &context ); printf( "FREE %x\n", status ); } I-24 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_jef_dec 1バイトコード変換テーブル(配列)の定義例 /* **++ ** ** DEC-->FACOM ** 1-byte code-conversion table example ** **-- */ unsigned char asc_ebc_tbl[256] = { 0x00, 0x01, 0x02, 0x03, 0x37, 0x2d, 0x2e, 0x2f, 0x16, 0x05, 0x25, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x3c, 0x3d, 0x32, 0x26, 0x18, 0x19, 0x3f, 0x27, 0x1c, 0x1d, 0x1e, 0x1f, 0x40, 0x5a, 0x7f, 0x7b, 0xe0, 0x6c, 0x50, 0x7d, 0x4d, 0x5d, 0x5c, 0x4e, 0x6b, 0x60, 0x4b, 0x61, 0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0x7a, 0x5e, 0x4c, 0x7e, 0x6e, 0x6f, 0x7c, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0x3f, 0x5b, 0x3f, 0x5f, 0x6d, 0x3f, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0x3f, 0x4f, 0x3f, 0xa1, 0x07, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x58, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9d, 0x9e, 0x9f, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xac, 0xad, 0xae, 0xaf, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, DEC/JEFコード変換ライブラリ I-25 DEC/JEFコード変換ライブラリ ftra_jef_dec 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f }; I-26 DEC/JEFコード変換ライブラリ DEC/JEFコード変換ライブラリ ftra_jef_dec /* **++ ** ** FACOM-->DEC ** 1-byte code-conversion table example ** **-- */ unsigned char ebc_asc_tbl[256] = { 0x00, 0x01, 0x02, 0x03, 0x1a, 0x09, 0x1a, 0x7f, 0x1a, 0x1a, 0x1a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x1a, 0x1a, 0x08, 0x1a, 0x18, 0x19, 0x1a, 0x1a, 0x1c, 0x1d, 0x1e, 0x1f, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x0a, 0x17, 0x1b, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x05, 0x06, 0x07, 0x1a, 0x1a, 0x16, 0x1a, 0x1a, 0x1a, 0x1a, 0x04, 0x1a, 0x1a, 0x1a, 0x1a, 0x14, 0x15, 0x1a, 0x1a, 0x20, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0x5b, 0x2e, 0x3c, 0x28, 0x2b, 0x7c, 0x26, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0x1a, 0xb0, 0x1a, 0x21, 0x5c, 0x2a, 0x29, 0x3b, 0x5e, 0x2d, 0x2f, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x2c, 0x25, 0x5f, 0x3e, 0x3f, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x3a, 0x23, 0x40, 0x27, 0x3d, 0x22, 0x1a, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0x1a, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0x1a, 0x1a, 0xca, 0xcb, 0xcc, 0x1a, 0x7e, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0x1a, 0xd6, 0xd7, 0xd8, 0xd9, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, 0x1a, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x24, 0x1a, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, DEC/JEFコード変換ライブラリ I-27 DEC/JEFコード変換ライブラリ ftra_jef_dec 0x38, 0x39, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a, 0x1a }; I-28 DEC/JEFコード変換ライブラリ _________________________________________________________________ 索引 _A_____________________________ _F_____________________________ AIDキー定義, B-11 f6680_acknowledge, 5-3 allオプション f6680_free_buffer, 5-6 undefineコマンド, G-12 f6680_lock_screen, 5-9 AMNUトランザクション, 4-2 f6680_read_field, 5-11 f6680_receive_screen, 5-14 _C_____________________________ f6680_receive_stream, 5-17 charオプション f6680_request_connect, 5-20, defineコマンド, G-7 5-23 undefineコマンド, G-11 アクティブまたはパッシブ接続 -cオプション 要求, 2-2 jefcodeユーティリティ, F-4 f6680_request_disconnect, 5-25 _D_____________________________ f6680_return_io_port, 5-28 DECコード列, I-6 f6680_set_owner, 5-31 DECユーザ定義領域, F-5 f6680_transmit_fna_cmd, 5-38 defineコマンド, G-7 f6680_transmit_screen, 5-34 使用例, G-8 f6680_transmit_stream, 5-41 f6680_write_field, 5-44 E F6680 DSPIプロダクト _______________________________ フィールド/文字属性, B-4 EBCDIC/DMCS変換テーブルの作成, F6680 DSPIプロダクト H-1 AIDキー定義, B-11 exitコマンド, G-12 FACOMトランザクションへの接 -eオプション 続, 1-2 jefcodeユーティリティ, F-4 LUSTATを使用したフラグ, B-5 アウト・オブ・バウンド要求の FNAコマンド, B-6 索引-1 F6680 DSPIプロダクト (続き) ftra_dec_jef_init, I-9 インターフェース・アプリケー ftra_jef_dec, I-18 ション, 1-2 -fオプション 開発アプリケーション, 1-1 jefcodeユーティリティ, F-6 拡張属性タイプ, B-10 指定可能オプションの最大数, 拡張属性タイプと値, B-3 F-6 画面所有権, B-6 カラー定数, B-3 _G_____________________________ 照会/応答トランザクション, groupオプション 1-2 defineコマンド, G-7 指令定義, B-7 listコマンド, G-4 シンボルと値, B-1 undefineコマンド, G-11 セッション送信状態, B-4 接続関連定数, B-2 _H_____________________________ 定義ファイル, B-1 helpコマンド, G-12 6680データ・ストリームのサポ ート, 1-1 データ・ストリーム・モード, _I_____________________________ 1-3 -ipオプション フィールド操作, B-6 jefcodeユーティリティ, F-3 副指令定義, B-8 ISO-Latin文字セット, 4-3 ブラケット状態, B-5 Item Code, I-2 分散データベースの更新, 1-2 Item List, I-2 呼び出しの一般形式, 5-2 IVP リプライ・モード定数, B-3 例, 6-13 FACOMアクセス情報, 2-2 -iオプション FACOMパスワード, 3-4 jefcodeユーティリティ, F-8, FACOMユーザ識別, 3-4 F-9 FDB例(1), 2-23 fna_as2eb, 5-47 _J_____________________________ fna_eb2as, 5-49 jefcodeユーティリティ, F-1 fna_get_msg, 5-54 起動, F-1 fna_put_msg, 5-51 コマンド・ラインの最大長, FNA概念, 1-3 F-6 fromオプション コマンドオプション, F-3 defineコマンド, G-8 コマンド形式, F-1 ftra_dec_jef, I-15 jefknjdefコマンド形式, G-1 ftra_dec_jef_free, I-13 索引-2 jefknjdefユーティリティ, G-1 JEF拡張文字, F-5 _P_____________________________ JEFコード列, I-6 PLUアプリケーション名, 3-3 JEFユーザ定義文字, F-5 Product Authorization Key K (PAK), 6-4 _______________________________ PUゲートウェイ識別, 3-3 KMAPファイル, F-7, F-10 環境変数JEFCODE_KMAPFILE, _Q_____________________________ F-7 quitコマンド, G-13 KMAPレコード数, F-7 -kオプション R jefcodeユーティリティ, F-7 _______________________________ jefknjdefユーティリティ, rehashコマンド, 6-14 F-10 Replaceモード, I-7 Kモードベクタ, 2-11 _S_____________________________ _L_____________________________ session_id, 2-3, 5-2 listコマンド, G-3 setld LMF, 6-4 IVP例, 6-5 ライブラリとのリンク, 4-1 SIGNAL要求, 2-6 LS2R, F-5, F-10 SLU, 3-3 LS3R, F-4, F-5, F-10 SS2, F-10 LU-LUタイプ2セッション 確立, 2-1 _T_____________________________ LUSTATを使用したフラグ, B-5 toオプション LUタイプ2 defineコマンド, G-8 通信, 2-6 -tオプション データ・ストリーム・モードで jefcodeユーティリティ, F-8 の, 1-3 LU名, 3-3 _U_____________________________ O undefineコマンド, G-11 _______________________________ useコマンド, G-2 -opオプション jefcodeユーティリティ, F-3 OSF/1システム rehashコマンド, 6-14 outputオプション listコマンド, G-4 索引-3 インストレーション (続き) _W_____________________________ システム・ディスクのバックア Write副指令,書込み順序 ップ, 6-4 表示可能文字との区別, B-9 ファイルの配置, 6-14 ライセンス登録, 6-4 _X_____________________________ インストレーション -xオプション 必須ソフトウェア・サブセット, jefcodeユーティリティ, F-5 6-2 インストレーション必要事項, ア 6-1 _______________________________ アウト・オブ・バウンド要求の _エ____________________________ FNAコマンド, B-6 エスケープ・シーケンス, F-7, アクセス情報,FACOM, 3-3 F-10 LU名, 3-3 LS2R, F-5 PLUアプリケーション名, 3-3 LS3R, F-4, F-5 PUゲートウェイ識別, 3-3 エラーメッセージ アクセス名, 3-4 jefcodeユーティリティ, F-13 省略可能なユーザ・データ, jefknjdefユーティリティ, 3-4 G-14 パスワード, 3-4 jsnatratblユーティリティ, ユーザ識別, 3-4 H-7 ログオン・モード名, 3-3 アクセス名, 3-4 アクティブ接続要求, 2-2 _カ____________________________ 例, 2-3 外字管理ファイル, F-5 値 外字の変換, I-8 アプリケーション作成時に使用, 拡張属性 B-1 値, B-3 アテンション識別の値, A-1 タイプ, B-3, B-10 アプリケーションのリンク, 4-1 マスク定数, 2-19 6680拡張データ・ストリーム, _イ____________________________ 2-5 1バイトコード変換テーブル, 画面イメージ F-11 送信, 2-30 インストレーション, 6-22 フィールドの書き込み, 2-30 IVPの実行, 6-13 画面所有権, B-6 setldプロシージャ, 6-5 カラー属性, 2-13 索引-4 カラー定数, B-3 環境変数JEFCODE_KMAPFILE, F-7 _ス____________________________ 関数の戻り値, 3-2 スクリーン・ディスクリプタ・ブ ケ ロック, 2-9 _______________________________ スクリーン・ディスクリプタ・ブ ゲートウェイ・マネジメント・ソ ロック, 2-15 フトウェア, 6-3 ステータス・コード, 3-1, C-1 アプリケーション・チェック, _コ____________________________ 3-3 国際化ツール・ライブラリとのリ 一般的なエラー・コード, D-1 ンク, 4-1 一般的な2次障害コード, D-2 コード変換ライブラリ, I-1 エラー・コード, C-3 コード変換ライブラリの概要, 下位レベルのステータス・コー I-1 ド, D-1 コード変換ライブラリの詳細, 関数戻り値, 3-2 I-2 ゲートウェイから返される異常 コールバック・ルーチン 終了理由, D-6 構文, 3-5 重大エラー・コード, C-8, 使用方法, 3-4 D-10 情報コード, C-2 ステータス・ベクタ, 3-2 _サ____________________________ 成功コード, C-1 サンプル・プログラム, 4-1 ステータス・ベクタ, 3-2 使用, 3-3 _シ____________________________ 説明, 2-3 システム・ディスクのバックアッ ストリーム・モード, 4-2 プ, 6-4 セ シフト・コード, F-4, F-5, _______________________________ F-6, F-8 セッション シフト・コード, I-6 アクティブ接続要求, 2-2 重大エラー・コード, C-8 確立, 2-1 出力パラメータ, 2-3 識別子, 2-3 指令定義, B-7 終了, 2-31 シンボル 接続, 2-2 アプリケーション書き込み時に パッシブ接続要求, 2-2 使用, B-1 セッション送信状態, B-4 接続関連定数, B-2 索引-5 接続時間経過パラメータ, 2-2 データ・ストリーム・モード (続 接続モード き) 指定方法, 2-5 6680拡張データ・ストリームの タイプ指示, 2-2 受け入れ, 2-8 6680拡張データ・ストリームの _ソ____________________________ 受信, 2-7 属性ベクタ, 2-11 6680拡張データ・ストリームの ソケット・ファイル記述子, 2-3 送信, 2-6 ソケット・ファイル・ディスクリ 複数連続データ・ストリームの プタとsession_id, 5-2 送信, 2-8 ソフトウェア・サブセットの確 認, 6-2 _ニ____________________________ タ F6680 DSPIプロダクト _______________________________ データへのアクセス, 1-1 端末特性ブロック(TCB), 2-10 フィールド・モード, 1-3 入力パラメータ, 2-2 _テ____________________________ 定義テーブル, B-1 _ハ____________________________ 定義ファイル, B-1 パッシブ接続要求, 2-2 データ構造 例, 2-4 書込み制御文字, 2-17, E-6 半2重フリップフロップ通信, 拡張フィールド属性, E-2 1-3 拡張フィールド属性, 2-12 スクリーン・ディスクリプタ・ _ヒ____________________________ ブロック, E-5 必須ソフトウェア・サブセット, フィールド, E-1 6-2 フィールド属性, E-2 否定応答, 2-8 フィールド・ディスクリプタ, 非ブロッキング受信, 2-7 E-6 非ブロック受信の使用, 3-5 フィールド・バリデーション属 性, E-2 フ フラグ定義, E-4 _______________________________ 6680データ・ストリーム機能サポ フィールド操作, B-6 ート, 1-1 フィールド・ディスクリプタ・ブ データ・ストリーム・モード, ロック 1-3, 2-5 読み取り/検索操作, 2-20 索引-6 フィールド・ディスクリプタ・ブ 分散データベースの更新, 1-2 ロック, 2-9, 2-18 操作選択フィールドのシンボル _ヘ____________________________ と意味, 2-20 ヘッダ・ファイルの読込み, フィールド・バリデーション, 2-23 2-14 変換テーブル作成例, H-6 フィールド/文字属性, B-4 変換テーブル修正マクロ, H-1 フィールド・モード, 1-3, 2-9 コメント, H-4 Kモードベクタ, 2-11 マクロ, H-2 拡張属性ベクタ, 2-11 変換テーブルの作成, 4-3, H-4 スクリーン・ディスクリプタ・ 変換モード, I-4 ブロック, 2-9 コード変換の例, I-7 スクリーン・ディスクリプタ・ ブロック, 2-15 _ホ____________________________ 端末特性ブロック(TCB), ホスト・システムへのアクセス確 2-10 認, 6-3 ディスクリプタ・ブロック, 2-9 フィールド検索, 2-18 _モ____________________________ 文字ベクタ, 2-10 文字ベクタ, 2-10 副指令定義, B-8 文字列モード 複数セッション・プログラム例, 最終, I-5 4-2 初期, I-5 複数連続データ・ストリームの送 信, 2-8 _ラ____________________________ ブラウジング操作, 4-2 ライセンス登録, 6-4 ブラケット状態, B-5 ブロッキング受信, 2-7 リ ブロッキングと非ブロッキングの _______________________________ 受信, 2-7 リプライ・モード定数, B-3 ブロックおよび非ブロック受信の 使用, 3-5 _ロ____________________________ ブロックまたは非ブロック・モー ログオン・モード名, 3-3 ド, 2-3 プログラミング例, 4-2 索引-7 F6680データ・ストリーム・プログラミング・インタフェース ユーザーズ・ガイド/インストレーション・ガイド _________________________________________________________________ 1995年1月 発行 日本ディジタル イクイップメント株式会社 〒167 東京都杉並区上荻1-2-1 電話 (03)5349-7111 (大代表) _________________________________________________________________ AA-QEG2A-TE