2.16.1 printfを挿入する

アクション・イベントの1つであるPrintfイベントを設定することにより,プログラムの実行を任意の箇所で一瞬停止させたのち,ソフトウエア処理によりprintfコマンドを実行させ,指定した変数式の値を出力 パネルに出力することができます。

この機能を使用するためには,次の手順で操作を行ってください。

注意 1.

【Full-spec emulator】【E1】【E20】
Printfイベントはソフトウエア・ブレーク機能【Full-spec emulator】【E1】【E20】により実現されます。そのため,Printfイベントを設定するためには,あらかじめ,プロパティ パネル[デバッグ・ツール設定]タブの[ブレーク]カテゴリ内[ソフトウエア・ブレークを使用する]プロパティで[はい]を選択してくさい。

注意 2.

Printfイベントの設定に関しては(有効イベント数の制限など),「2.17.6 イベント設定に関する留意事項」も参照してください。

注意 3.

ステップ実行中( ),またはブレーク関連のイベントを無視したプログラム実行中( )にアクション・イベントは発生しません。

(1)

Printfイベントを設定する

エディタ パネル/逆アセンブル パネル上で,printfコマンドを実行させたい箇所にPrintfイベントを設定します。

各パネルのアドレス表示のある行にキャレットを移動したのち,コンテキスト・メニューの[アクション・イベントの登録...]を選択すると,次のアクション・イベント ダイアログがオープンします。

このダイアログにおいて,次の操作を行ってください。

図 2.140

Printfイベントを設定する(アクション・イベント ダイアログ:[Printfイベント]タブ)

(a)

[出力文字列]の指定

出力 パネルに出力する際に付与する文字列をキーボードより直接入力で指定します。

なお,出力する文字列は,1行分のみ入力可能です(空白可)。

(b)

[変数式]の指定

Printfイベントの対象となる変数式を指定します。

変数式は,テキスト・ボックスに直接入力で指定します(最大指定文字数:1024文字)。

“,”で区切ることにより,1つのPrintfイベントとして10個までの変数式を指定することができます。

エディタ パネル/逆アセンブル パネルにおいて,変数式を選択した状態でこのダイアログをオープンした場合では,選択している変数式がデフォルトで表示されます。

なお,変数式として指定できる基本入力形式と,その際にPrintfイベントとして出力される値についての詳細は,「表 A.12 変数式と出力される値の関係(Printfイベント)」を参照してください。

備考

このテキスト・ボックスで[Ctrl]+[Space]キーを押下することにより,現在のキャレット位置のシンボル名を補完することができます(「2.19.2 シンボル名の入力補完機能」参照)。

(c)

[アドレス]の指定

Printfイベントを設定するアドレスを指定します。

デフォルトで,現在の指定位置のアドレスを表示します。

編集する場合は,テキスト・ボックスにアドレス式を直接入力するか(最大指定文字数:1024文字),またはドロップダウン・リストにより入力履歴項目(最大履歴個数:10個)を選択します。

備考

このテキスト・ボックスで[Ctrl]+[Space]キーを押下することにより,現在のキャレット位置のシンボル名を補完することができます(「2.19.2 シンボル名の入力補完機能」参照)。

(d)

[OK]ボタンのクリック

ここで指定したPrintfイベントをエディタ パネル/逆アセンブル パネル上のキャレット位置の行に設定します。

Printfイベントが設定されると,エディタ パネル/逆アセンブル パネルのイベント・エリアに マークが表示され,イベント パネルで管理されます(「2.17 イベントの管理」参照)。

(2)

プログラムを実行する

プログラムを実行します(「2.8 プログラムの実行」参照)。

プログラムを実行することにより,Printfイベントを設定した箇所の命令実行直前でプログラムを一瞬停止し,指定した変数式の値を出力 パネルに出力します。

(3)

出力結果を確認する

出力 パネルの[デバッグ・ツール]タブでは,指定した変数式の値が次のように出力されます(「図 A.37 Printfイベントの出力結果フォーマット」参照)。

図 2.141

Printfイベントの出力結果例

(4)

Printfイベントを編集する

一度設定したPrintfイベントを編集することができます。

編集を行う場合は,イベント パネルにおいて,編集対象のPrintfイベントを選択したのち,コンテキスト・メニューの[条件の編集...]を選択します。オープンするアクション・イベント ダイアログにおいて,編集が必要な項目を編集したのち,[OK]ボタンをクリックします。