2.11.3.1 トレース・イベントを設定する

トレース・イベントを設定するため,トレース・データの収集を開始/終了するトレース開始イベント/トレース終了イベントを設定します。

トレース開始イベント/トレース終了イベントの設定は,次いずれかの操作により行います。

(1)

実行系イベントの場合

実行系イベントをトレース開始イベント/トレース終了イベントに設定することにより,任意の箇所でトレース・データの収集を開始/終了させることができます。

操作は,ソース・テキスト/逆アセンブル・テキストを表示しているエディタ パネル/逆アセンブル パネルで行います。

各パネルのアドレス表示のある行にキャレットを移動したのち,目的のイベント種別に従って,コンテキスト・メニューより次の操作を行います。

イベント種別

操作方法

トレース開始

[トレース設定]→[トレース開始の設定]を選択

トレース終了

[トレース設定]→[トレース終了の設定]を選択

注意

【シミュレータ】
トレース終了イベントはトレース・データとして表示されません。
トレース・データとして表示する場合は,1行下にトレース終了イベントを設定してください。

 

トレース開始イベント/トレース終了イベントは,キャレット位置の行に対応する先頭アドレスの命令に設定されます。

トレース開始イベント/トレース終了イベントが設定されると,設定した行のイベント・エリアに次のイベント・マークが表示されます。

表 2.12

トレース開始イベント/トレース終了イベント・マーク

種別

イベント・マーク

トレース開始

 

トレース終了

 

図 2.120

トレース開始イベント/トレース終了イベントの設定例(逆アセンブル パネルの場合)

(2)

アクセス系イベントの場合【E1】【E20】

アクセス系イベントをトレース開始/トレース終了イベントに設定することにより,任意の変数,またはSFRに対し,指定したアクセスがあった場合にトレース・データの収集を開始/終了させることができます。

備考

ここで説明する操作方法において設定可能なアクセス種別(「表 2.5 変数へのアクセス種別」参照)は,“リード/ライト”のみです。
アクセス種別を“リード”または“ライト”へ変更する場合は,トレース開始イベント/トレース終了イベントを設定したのち,対象イベントの[アクセス種別]項目を編集してください(「2.15.4.2 アクセス系イベントを編集する」参照)。

(a)

エディタ パネル/逆アセンブル パネル上の変数/SFRに設定する場合

操作は,ソース・テキスト/逆アセンブル・テキストを表示しているエディタ パネル/逆アセンブル パネルで行います。

各パネルの任意の変数,またはSFRを選択したのち,目的のイベント種別に従って,コンテキスト・メニューより次の操作を行います。

ただし,対象となる変数は,グローバル変数/関数内スタティック変数/ファイル内スタティック変数のみとなります。

イベント種別

操作方法

トレース開始

[トレースの設定]→[読み書き時にトレース開始の設定]を選択したのち,[Enter]キーを押下

トレース終了

[トレースの設定]→[読み書き時にトレース終了の設定]を選択したのち,[Enter]キーを押下

なお,この際に,コンテキスト・メニュー内のテキスト・ボックスに値を指定した場合,指定した値で読み書きを行った場合のみトレース・データの収集を開始/終了します。値を指定しない場合は,値にかかわらず,選択している変数/SFRに読み書きを行った場合にトレース・データの収集を開始/終了します。

注意 1.

カレント・スコープ内の変数が対象となります。

注意 2.

トレース開始イベント/トレース終了イベントは,アドレス表示がない行上の変数/SFRを選択しても設定することはできません。

(b)

登録したウォッチ式に設定する場合

操作は,ウォッチ パネルで行います。

対象となるウォッチ式を選択したのち(複数選択不可),コンテキスト・メニューより次の操作を行います。

ただし,対象となるウォッチ式は,グローバル変数/関数内スタティック変数/ファイル内スタティック変数/SFRのみとなります。

イベント種別

操作方法

トレース開始

[トレース出力]→[読み書き時にトレース開始の設定]を選択したのち,[Enter]キーを押下

トレース終了

[トレース出力]→[読み書き時にトレース終了の設定]を選択したのち,[Enter]キーを押下

なお,この際に,コンテキスト・メニュー内のテキスト・ボックスに値を指定した場合,指定した値で読み書きを行った場合のみトレース・データの収集を開始/終了します。値を指定しない場合は,値にかかわらず,選択しているウォッチ式に読み書きを行った場合にトレース・データの収集を開始/終了します。

注意

カレント・スコープ内のウォッチ式が対象となります。
カレント・スコープ外のウォッチ式を対象とする場合は,スコープ指定したウォッチ式を選択してください。

 

トレース開始イベント/トレース終了イベントが設定されると,イベント パネルにおいて,トレース・イベントとして1つにまとめて管理され(「2.15 イベントの管理」参照),トレース・イベント項目の“+”マークをクリックすることにより,設定したトレース開始イベント/トレース終了イベントの詳細情報が表示されます。

図 2.121

イベント パネルのトレース開始イベント/トレース終了イベント(実行系)の設定例

備考 1.

トレース開始イベント/トレース終了イベントのいずれかが有効状態で設定されると,イベント パネル上の無条件トレース・イベントのチェックが自動的に外れ,プログラムの実行開始に連動したトレース・データの収集は行いません(設定したトレース開始イベントの条件が成立するまでトレーサは動作しません)。

備考 2.

トレース終了イベントが不要な場合は,未設定でもかまいません。

備考 3.

イベントの設定状態によりイベント・マークは異なります(「2.15.1 設定状態(有効/無効)を変更する」参照)。
また,すでにイベントが設定されている箇所で,新たにイベントを設定した場合は,複数のイベントが設定されていることを示すイベント・マーク( )が表示されます。

備考 4.

【シミュレータ】
トレース開始イベント/トレース終了イベントのいずれかが有効状態で設定されると,プロパティ パネル[デバッグ・ツール設定]タブ上の[トレース]カテゴリ内[トレース機能を使用する]プロパティの指定を自動的に[はい]に変更し,トレース機能が有効化されます。