この章では、Debug Tool の全機能を使用してデバッグできるアセンブラー・プログラムの準備について説明します。アセンブラー・プログラムを準備するには、以下のステップを実行してください。
Debug Tool Utilities を使用してアセンブラー・プログラムを準備する場合は、ステップ 1 と 2 を一度に実行できます。
アセンブラー・プログラムをデバッグする場合は、ほとんどの Debug Tool コマンドを使用できます。アセンブラー・プログラムのデバッグと、Debug Tool でサポートされているその他のプログラム言語で書かれたプログラムのデバッグには、次に示す 3 つの違いがあります。
アセンブラー・プログラムがこれらの要件に合致するかどうか検査した後、以下の作業を行うことによって、アセンブラー・プログラムを準備します。
ユーザー・プログラムのアセンブルと EQALANGX の作成に、Debug Tool Utilities を使用してアセンブラー・プログラムを準備する方法 の説明があります。
Debug Tool Utilities を使用せずにプログラムをアセンブルする場合は、高水準アセンブラー (HLASM) を使用して SYSADATA DD ステートメントと ADATA オプションを指定する必要があります。これらを指定すると、アセンブラーは SYSADATA ファイルを作成します。SYSADATA ファイルは、Debug Tool が使用するデバッグ情報 (EQALANGX ファイル) を生成する際に必要です。
他の問題判別ツールを使用している場合は、アセンブラー・プログラムを参照して、すべての問題判別ツールで必要となるファイルの作成に必要なアセンブラー・オプションを、すべて指定していることを確認してください。
EQALANGX ファイルを作成するには、EQALANGX プログラムを使用します。 EQALANGX は、Debug Tool の 1 コンポーネントとして出荷され、IBM® Fault Analyzer の 1 コンポーネントとして出荷される IDILANGX プログラムと同じ機能があります。IBM Fault Analyzer がインストールされている場合、IDILANGX プログラムを使用して EQALANGX ファイルを作成することができます。ただし、IDILANGX プログラムのバージョンが、Debug Tool に付属の EQALANGX プログラムのバージョンと同じか、または新しい場合に限ります。この IDILANGX プログラムのバージョンを確認するには、以下のステップを行います。
EQALANGX ファイルを作成するのに IDILANGX を使用したい場合は、これらの手順をスキップして構いません。EQALANGX ファイルの作成手順は、IBM Fault Analyzer の資料を見てください。
Debug Tool Utilities を使用せずに EQALANGX ファイルを作成するには、次のような JCL を使用します。
//XTRACT EXEC PGM=EQALANGX,REGION=32M, // PARM='(ASM ERROR LOUD' //STEPLIB DD DISP=SHR,DSN=hlq.SEQAMOD //SYSADATA DD DISP=SHR,DSN=yourid.sysadata //IDILANGX DD DISP=OLD,DSN=yourid.EQALANGX
以下には、この例で使用されている変数と、EQALANGX プログラムで使用可能なパラメーターを一覧にしてあります。
ERROR および LOUD パラメーターを指定して表示されたメッセージは、 オペレーター宛メッセージまたはプログラマー宛メッセージ (WTO または WTP) です。 IDILANGX プログラムによって表示されるメッセージと戻りコードについて詳しくは、「IBM Fault Analyzer for z/OS® ユーザーズ・ガイドおよびリファレンス」を参照してください。この EQALANGX プログラムも同じメッセージと戻りコードを使用します。
//STEPLIB DD DISP=SHR,DSN=hlq.SEQAMOD
Debug Tool は、名前が yourid.EQALANGX で、 アセンブリー内の最初の CSECT 名に一致するメンバー名の区分データ・セットで EQALANGX デバッグ・ファイルを検索します。EQALANGX デバッグ・ファイルのメンバー名をアセンブリー の最初の CSECT に一致させたい場合は、DD ステートメントでメンバー名を指定する必要はありません。 そうでない場合は、DD ステートメントでメンバー名を指定する必要があります。この場合は、SET SOURCE コマンドを使用して、EQALANGX データが入ったメンバーを Debug Tool に指示する必要があります。
Debug Tool は、専用コード (無名 CSECT) のデバッグをサポートしません。アセンブラー・プログラムで無名 CSECT が検出されると、EQALANGX はエラー・メッセージを出します。
Debug Tool Utilities を使用すると、プログラムのアセンブルと EQALANGX ファイルの作成を同時に実行できます。次の操作を行います。
オプション 5 が使用できない場合は、システム管理者に連絡してください。
パネルのフィールドに関する詳細を表示するには、入力フィールドにカーソルを置いて PF1 を押します。パネルに関する詳細を表示するには、パネル上で入力フィールド以外の任意の場所にカーソルを置き、PF1 を押します。
プログラムをアセンブルし、EQALANGX ファイルを作成すると、プログラムをリンク・エディットできます。
プログラムのリンク・エディットは、通常のリンク・エディット手順で実行できます。あるいは、次のように Debug Tool Utilities を使用したリンク・エディットも可能です。
パネルのフィールドに関する詳細を表示するには、入力フィールドにカーソルを置いて PF1 を押します。パネルに関する詳細を表示するには、パネル上で入力フィールド以外の任意の場所にカーソルを置き、PF1 を押します。
プログラムをリンク・エディットすると、プログラムを実行して Debug Tool を開始できます。
CHANGE リンク・ステートメントを使用して名前を変更した場合、Debug Tool は EQALANGX メンバーを検出できません。例えば、次のリンク・ステートメントを使用した場合は、「PGM1TEST の EQALANGX デバッグ・ファイルが見つかりません (EQALANGX debug file cannot be found for PGM1TEST)」というメッセージが表示されます。
CHANGE PGMTEST1(PGM1TEST) INCLUDE LINKLIB(PGMTEST1)