登録したウォッチ式の内容の表示,および値の変更を行います(「2.11.6 ウォッチ式を表示/変更する」参照)。
このパネルは,最大4個までオープンすることができます。各パネルは,タイトルバーの“ウォッチ1”,“ウォッチ2”,“ウォッチ3”,“ウォッチ4”の名称で識別され,それぞれ個別にウォッチ式の登録/削除/移動を行うことができます。
ウォッチ式の登録はこのパネル上から行えますが,エディタ パネル/逆アセンブル パネル/メモリ パネル/CPUレジスタ パネル/ローカル変数 パネル/IOR パネルより行うことも可能です。
ウォッチ式が登録されている状態のパネルをクローズした場合,そのパネルは非表示となりますが,登録されていたウォッチ式の情報は保持されます(再度そのパネルをオープンした際に,ウォッチ式が登録されている状態でオープンします)。
プログラムの実行後,ウォッチ式の値が変化すると表示を自動的に更新します(ステップ実行時には,ステップ実行ごとに表示を逐次更新)。
また,リアルタイム表示更新機能を有効にすることにより,プログラム実行中であっても,値の表示をリアルタイムに更新することも可能です。
なお,このパネルは,デバッグ・ツールと接続時のみオープンすることができます。
このエリアの表タイトル部をクリックすることにより,一覧内のウォッチ式をアルファベット順でソートすることができます。
また,カテゴリ(フォルダ)を自由に作成してウォッチ式を分類し,ツリー形式で表示することができます(「(a) ツリーの編集」参照)。
このカテゴリに属するウォッチ式を表示している状態を示します。アイコンをダブルクリック,または“-”マークをクリックすると,カテゴリを閉じウォッチ式を非表示にします。 |
||
このカテゴリに属するウォッチ式が非表示の状態を示します。アイコンをダブルクリック,または“+”マークをクリックすると,カテゴリを開きウォッチ式を表示します。 |
||
配列,ポインタ型変数,構造体/共用体を示すウォッチ式の先頭には,“+”/“-”マークを表示し,これをクリックすることにより展開/折りたたみ表示します。 |
||
下階層のレジスタ(レジスタの部分)を持つウォッチ式の先頭には,“+”/“-”マークを表示し,これをクリックすることにより展開/折りたたみ表示します。 |
ウォッチ式をカテゴリ(フォルダ)で分類し,ツリー形式で表示することができます。
カテゴリを新規に作成する場合は,作成したい位置にキャレットを移動したのち,ツールバーの ボタンのクリック,またはコンテキスト・メニューの[カテゴリを作成]を選択し,任意にカテゴリ名称を入力することにより行います。
なお,カテゴリを削除する場合は,削除したいカテゴリを選択したのち,ツールバーの ボタンのクリック,またはコンテキスト・メニューの[削除]を選択します。
また,作成したカテゴリ名を編集する場合は,編集したいカテゴリ名を選択したのち,次のいずれかの操作により行います。
カテゴリを作成したのち,登録済みのウォッチ式をカテゴリ内に直接ドラッグ・アンド・ドロップすることにより,各ウォッチ式をカテゴリで分類したツリー形式で表示します。
同様に,カテゴリとウォッチ式の表示の順番(上下位置)も,ドラッグ・アンド・ドロップ操作により自由に変更することができます。
配列,ポインタ型変数,構造体/共用体/クラス,レジスタ(部分を表す名前がついているもののみ)を示すウォッチ式の先頭には,“+”マークを表示し,これをクリックすることにより次を展開表示します(展開後“-”マークに変化)。
他のパネル上において,ウォッチ式として登録したい対象に対して,次のいずれかの操作を行います。
なお,この操作が可能なパネルとウォッチ式として登録可能な対象との関係は次のとおりです。
任意のウォッチ パネル(ウォッチ1~ウォッチ4)において,ツールバーの ボタンをクリック,またはコンテキスト・メニューの[新規ウォッチ式を追加]を選択することにより,このエリアの最下段に新規ウォッチ式用のエントリ・ボックスが表示されます。
エントリ・ボックスの[ウォッチ式]エリアにおいて,キーボードより直接ウォッチ式を入力したのち,[Enter]キーを押下します。
(例:variable.BaseClass::member)
虚数の値には,大文字の“I”を掛けてください(例:1.0 + 2.0*I)。“I”はキーワードとなるため,CPUレジスタの“I”を指定する場合は“:REG”を付加してください(例:I:REG)。
また,ウォッチ式は,スコープを指定して登録することができます。スコープ指定してウォッチ式を登録した場合の扱いは次のとおりです。
ロード・モジュール名またはファイル名に空白や以下の記号が含まれている場合,名前をダブルクォーテーション“ ”で囲んでください(例:“c:\folder\prog.abs”$file.c#func)。 |
$,#,(,),[,],&,^,~,%,+,-,*,/,:,?,’,|,\,<,>,!
名前空間内に定義されている関数を指定する場合は,スコープを記入しないでください(例:Scope::func)。
また,同名の関数が存在する場合はパラメータの型名を明記してください(例:func(int, int))。
ロード・モジュール名またはファイル名に空白や以下の記号が含まれている場合,名前をダブルクォーテーション“ ”で囲んでください(例:“c:\folder\prog.abs”$file.c#func#var)。 |
$,#,(,),[,],&,^,~,%,+,-,*,/,:,?,’,|,\,<,>,!
また,同名の関数が存在する場合はパラメータの型名を明記してください(例:func(int, int))。
このエリアで[Ctrl]+[Space]キーを押下することにより,現在のキャレット位置のシンボル名を補完することができます。(「2.21.2 シンボル名の入力補完機能」参照)。 |
同名のC/C++言語変数/CPUレジスタ/I/Oレジスタが存在する際に,スコープ指定せずにそれらを登録した場合,次の順にシンボルを解決し,値を表示します。 |
IOR パネル/CPUレジスタ パネルよりウォッチ式を登録した場合,ウォッチ式には自動的にスコープ指定が付与されます。 |
外部エディタなどから,C/C++言語変数/CPUレジスタ/I/Oレジスタ/アセンブラ・シンボルの文字列を選択し,次のいずれかの操作を行います。
コンパイラによる最適化のため,対象となる変数を使用していないブロックでは変数データがスタック/レジスタに存在しない場合があります。この場合,対象となる変数をウオッチ式として登録しても値の表示は“?”のままとなります。 |
登録済みのウォッチ式の編集は,対象ウォッチ式をダブルクリックし,対象ウォッチ式を編集モードにしたのち,キーボードから編集内容を直接入力して行います([Esc]キーの押下で編集モードをキャンセルします)。
ウォッチ式を編集したのち,[Enter]キーを押下すると編集を完了します。
ツールバーの ボタンのクリック,またはコンテキスト・メニューの[削除]を選択することにより,選択しているウォッチ式を削除します。
コンテキスト・メニューの[アクセス・ブレークの設定]/[トレース出力]を選択することにより,選択しているウォッチ式に各種イベントを設定することができます。
アクセス系のブレーク・イベントが設定された場合,ウォッチ式のアイコンが変化します(ウォッチ式のアイコンの下にブレーク・イベントのイベント・マークを重ねて表示)。トレース・イベントの場合は,ウォッチ式のマークに変化はありません。
イベントを設定することにより,設定したイベントの詳細情報がイベント パネルに反映されます。
ただし,イベントの設定は,対象となるウォッチ式がグローバル変数/関数内スタティック変数/ファイル内スタティック変数/I/Oレジスタの場合にのみ行うことができます。
コンテキスト・メニューの[メモリへジャンプ]を選択することにより,選択しているウォッチ式が定義されているアドレスにキャレットを移動した状態でメモリ パネル(メモリ1)がオープンします(すでにオープンしている場合は,メモリ パネル(メモリ1)にジャンプ)。
ただし,同時に複数のウォッチ式を選択している場合,またはI/Oレジスタ/CPUレジスタを選択している場合は,無効となります。
ウォッチ パネルにフォーカスがある状態で,メイン・ウインドウのツールバー上にある拡大率のドロップダウン・リストを変更することにより,ウォッチ パネルの表示を拡大/縮小することができます。
また,[Ctrl]キーとマウス・ホイールを組み合わせることでも変更可能です。
なお,拡大率を変更した状態のパネルをクローズした場合,拡大率は保持されます(再度パネルをオープンする際に,変更した拡大率でオープンします)。
コンテキスト・メニューやツールバーの[シンボル列を表示]により[シンボル]エリアを表示するかどうかを切り替えます。
ウォッチ式にスコープ指定が含まれる場合、[シンボル]エリアにはウォッチ式からスコープ指定を外して表示します。
ウォッチ式の配列、ポインタ型変数、構造体/共用体/クラスを展開表示した場合、[シンボル]エリアには親を含んだ式を表示します。
なお,ウォッチ式が関数ポインタの場合は,関数名を表示します。
表示進数やエンコードは,ツールバーのボタン,またはコンテキスト・メニューより選択することができます。また,常に16進数値を併記する表示形式を選択することもできます。
なお,デフォルトの表示形式は,ウォッチ式の型に依存して,次のように自動的に決定されます。
また,ウォッチ式の値として表示されるマークや色の意味は次のとおりです(表示の際の文字色/背景色はオプション ダイアログにおける[全般 - フォントと色]カテゴリの設定に依存)。
リアルタイム表示更新機能を行っているウォッチ式の値 |
|||
ツールバーの ボタン,またはコンテキスト・メニューの[表示色をリセット]を選択することにより,強調表示をリセットします。 |
|||
存在しない変数をウォッチ式として登録した場合,またはウォッチ式の値を取得できなかった場合(変数がスコープを外れた場合など) |
|||
読み込み動作によってマイクロコントローラが動作してしまうI/Oレジスタは,読み込み保護対象となり,値の読み込みは行いません。読み込み保護対象のI/Oレジスタ の内容を読み込みたい場合には,コンテキスト・メニューの[値を強制読み込み]を選択してください。 |
リアルタイム表示更新機能を使用することにより,プログラムが停止している状態の時だけでなく,実行中の状態であっても,登録したウォッチ式の値の表示/変更を行うことができます。
リアルタイム表示更新機能についての詳細は,「2.11.1.4 プログラム実行中にメモリの内容を表示/変更する」を参照してください。
ウォッチ式の値の変更は,対象ウォッチ式の値を選択したのち,再度クリックし,キーボードからの直接入力により行います([Esc]キーの押下で編集モードをキャンセルします)。
ウォッチ式の値を編集したのち,[Enter]キーの押下,または編集領域以外へのフォーカスの移動により,ターゲット・メモリに書き込まれます。
ウォッチ式の値の変更方法についての詳細は,「2.11.6.6 ウォッチ式の内容を変更する」を参照してください。
[ファイル]メニュー→[名前を付けてウォッチ・データを保存...]を選択することにより,名前を付けて保存 ダイアログをオープンし,このパネルのすべての内容をテキスト・ファイル(*.txt)/CSVファイル(*.csv)に保存することができます。
また,コンテキスト・メニューの[ウォッチ・データを展開保存...]を選択することにより,名前を付けて保存 ダイアログをオープンし,選択したウォッチ式の内容をテキスト・ファイル(*.txt)/CSVファイル(*.csv)に保存することができます。
ウォッチ式の値の保存方法については,「2.11.6.9 ウォッチ式の表示内容を保存する」を参照してください。
ウォッチ式をコンパイルする際に,どの型として扱われるかを示します。 |
各ウォッチ式がマッピングされているアドレスを表示します(16進数表記固定)。
ただし,ウォッチ式が,単独のCPUレジスタの場合は“-”を,また判別不能の場合では,“?”を表示します。
ウォッチ式/カテゴリに対して,ユーザが自由にコメントを入力することができます。
このエリアに入力したコメントの内容は,各ウォッチ式/カテゴリに対して個別に保持され,プロジェクトのユーザ情報として保存されます。したがって,ウォッチ式/カテゴリを削除すると,対応するメモの内容も破棄されます。
ただし,配列,レジスタなどを展開表示している場合,各展開要素に対してコメントを入力することはできません。
コメントを編集する場合は,編集したい項目をダブルクリックすることにより,選択した項目が編集モードとなります([Esc]キーの押下で編集モードをキャンセルします)。最大256文字までの文字列をキーボードより直接入力することができます(改行コードは無効)。
文字列編集後,[Enter]キーの押下,または編集領域以外へのフォーカスの移動により,文字列編集を完了します。
新規ウォッチ式を登録します。テキスト・ボックスに直接ウォッチ式を入力します(「(c) 新規ウォッチ式の登録」参照)。 |
||
選択しているウォッチ式の値の表記を変数ごとの規定値(「表 A.11 ウォッチ式の表示形式(デフォルト)」参照)で表示します(デフォルト)。 |
||
ウォッチ パネル専用の[ファイル]メニューは次のとおりです(その他の項目は共通)。
このパネルの内容を前回保存したテキスト・ファイル(*.txt)/CSVファイル(*.csv)に保存します(「(c) ウォッチ式の値の保存」参照)。 なお,起動後に初めてこの項目を選択した場合は,[名前を付けてウォッチ・データを保存...]の選択と同等の動作となります。 |
|
このパネルの内容を指定したテキスト・ファイル(*.txt)/CSVファイル(*.csv)に保存するために,名前を付けて保存 ダイアログをオープンします(「(c) ウォッチ式の値の保存」参照)。 |
ウォッチ パネル専用の[編集]メニューは次のとおりです(その他の項目はすべて無効)。
選択範囲の文字列を切り取り,クリップ・ボードにコピーします。 |
|
選択している範囲を文字列としてクリップ・ボードにコピーします。 |
|
テキストが編集状態の場合,クリップ・ボードの内容をキャレット位置に挿入します。 テキストが編集状態以外の場合で,ウォッチ式がクリップ・ボードにコピーされている場合は,コピーされているウォッチ式をキャレット位置に登録します。 |
|
この項目は,選択しているウォッチ式がグローバル変数/関数内スタティック変数/ファイル内スタティック変数,およびI/Oレジスタの場合のみ有効です(複数選択不可)。 アクセス系のブレーク・イベントを設定するために,次のカスケード・メニューを表示します(「2.10.4.1 変数/I/Oレジスタへのブレーク・イベント(アクセス系)を設定する」参照)。 |
|||
選択しているウォッチ式に,リード/ライト・アクセスのブレーク・イベントを,組み合わせブレーク・イベントの条件として設定します。 |
|||
この項目は,選択しているウォッチ式がグローバル変数/関数内スタティック変数/ファイル内スタティック変数,およびI/Oレジスタの場合のみ有効です(複数選択不可)。 トレース関連のイベントを設定するために,次のカスケード・メニューを表示します(「2.13.3 任意区間の実行履歴を収集する」および「2.13.4 条件を満たしたときのみの実行履歴を収集する」参照)。 イベント設定後,対象となるウォッチ式の先頭にイベント・マークが表示されます。 |
|||
選択しているウォッチ式にリード・アクセスした際に,その値をトレース・メモリに記録するポイント・トレース・イベントを設定します。(「(1) 変数/I/Oレジスタへのアクセスが発生したとき」参照)。 |
|||
選択しているウォッチ式にライト・アクセスした際に,その値をトレース・メモリに記録するポイント・トレース・イベントを設定します。(「(1) 変数/I/Oレジスタへのアクセスが発生したとき」参照)。 |
|||
選択しているウォッチ式にリード/ライト・アクセスした際に,その値をトレース・メモリに記録するポイント・トレース・イベントを設定します。(「(1) 変数/I/Oレジスタへのアクセスが発生したとき」参照)。 |
|||
選択しているウォッチ式に対して,リード/ライト・アクセスした際にトレースの記録を開始するトレース・イベントを設定します(「2.13.3.1 トレース開始イベント/トレース終了イベントを設定する」参照)。 |
|||
選択しているウォッチ式に対して,リード/ライト・アクセスした際にトレースの記録を終了するトレース・イベントを設定します(「2.13.3.1 トレース開始イベント/トレース終了イベントを設定する」参照)。 |
|||
トレース パネルをオープンし,取得したトレース・データを表示します。 |
|||
この項目は,選択しているウォッチ式がグローバル変数/関数内スタティック変数/ファイル内スタティック変数,およびI/Oレジスタの場合のみ有効です(複数選択不可)。 タイマ関連のイベントを設定するために,次のカスケード・メニューを表示します(「2.14.3 任意区間の実行時間を計測する」参照)。 イベント設定後,対象となるウォッチ式の先頭にイベント・マークが表示されます。 |
|||
選択しているウォッチ式に対して,リード/ライト・アクセスした際にタイマを開始するイベントを設定します。(「(1) タイマ開始イベントの設定方法」参照)。 |
|||
選択しているウォッチ式に対して,リード/ライト・アクセスした際にタイマを終了するイベントを設定します。(「(2) タイマ終了イベントの設定方法」参照)。 |
|||
リアルタイム表示更新設定のため,次のカスケード・メニューを表示します(「(a) リアルタイム表示更新機能」参照)。 |
|||
リアルタイム表示更新機能の全般設定を行うため,プロパティ パネルをオープンします。 |
|||
新規ウォッチ式を登録します。テキスト・ボックスに直接ウォッチ式を入力します(「(c) 新規ウォッチ式の登録」参照)。 |
|||
選択している範囲の文字列を切り取ってクリップ・ボードに移動します。 |
|||
テキストが編集状態の場合,クリップ・ボードの内容をキャレット位置に挿入します。 テキストが編集状態以外の場合で,ウォッチ式がクリップ・ボードにコピーされている場合は,コピーされているウォッチ式をキャレット位置に登録します。 |
|||
ウォッチ式をインポートするために,ウォッチ式データ・ファイルを開く ダイアログをオープンします(「2.11.6.8 ウォッチ式をエクスポート/インポートする」参照)。 |
|||
選択している項目の表記を変数ごとの規定値(「表 A.11 ウォッチ式の表示形式(デフォルト)」参照)で表示します(デフォルト)。 |
|||
ただし,選択しているウォッチ式が4バイト・データ以外,または型情報を持つ場合は,規定値(「表 A.11 ウォッチ式の表示形式(デフォルト)」参照)で表示します。 |
|||
ただし,選択しているウォッチ式が8バイト・データ以外,または型情報を持つ場合は,規定値(「表 A.11 ウォッチ式の表示形式(デフォルト)」参照)で表示します。 |
|||
選択しているウォッチ式が定義されているアドレスへキャレットを移動した状態でメモリ パネル(メモリ1)をオープンします(「(g) メモリ定義アドレスへのジャンプ」参照)。 |
|||
選択しているウォッチ式の内容を指定したテキスト・ファイル(*.txt)/CSVファイル(*.csv)に保存するために,名前を付けて保存 ダイアログをオープンします(「(c) ウォッチ式の値の保存」参照)。 |