(57)【要約】【課題】プログラムのデバッグにおけるメモリ状態の表示のスクロール操作を容易かつ柔軟に実現すること。【解決手段】本発明にかかるデバッグ用情報処理装置は、メモリを使用して動作するプログラムのデバッグ時乃至デバッグ終了時の当該メモリに書き込まれたデータの少なくとも一部を表示装置に表示させるデバッグ用情報処理装置であって、表示装置に表示される表示内容をアドレス方向にスクロールさせるスクロールバーに設けられたスクロールサムによるユーザからの第１の指示及びスクロールさせるために当該スクロールサム以外によるユーザからの第２の指示を受け付けるスクロール指示受付部と、第１の指示を受け付けたときにスクロール可能な範囲を、メモリ内の特定のアドレス範囲に設定し、第２の指示を受け付けたときにスクロール可能な範囲を、特定のアドレス範囲以外に設定するスクロール制御部と、を備える。【選択図】図１
2012243241.tif 000002
【特許請求の範囲】
【請求項１】
メモリを使用して動作するプログラムのデバッグ時乃至デバッグ終了時の当該メモリに書き込まれたデータの少なくとも一部を表示装置に表示させるデバッグ用情報処理装置であって、
前記表示装置に表示される表示内容をアドレス方向にスクロールさせるスクロールバーに設けられたスクロールサムによるユーザからの第１の指示及び前記スクロールさせるために当該スクロールサム以外による前記ユーザからの第２の指示を受け付けるスクロール指示受付部と、
前記第１の指示を受け付けたときにスクロール可能な範囲を、前記メモリ内の特定のアドレス範囲に設定し、前記第２の指示を受け付けたときにスクロール可能な範囲を、前記特定のアドレス範囲以外に設定するスクロール制御部と、
を備えるデバッグ用情報処理装置。
【請求項２】
前記スクロール制御部は、
前記メモリ内の複数のアドレス範囲のリストを表示させ、
当該リストの中から前記ユーザにより選択されたアドレス範囲を、前記特定のアドレス範囲として設定する
ことを特徴とする請求項１に記載のデバッグ用情報処理装置。
【請求項３】
前記スクロール制御部は、
前記ユーザから指定された前記メモリ内の任意のアドレス範囲を、前記特定のアドレス範囲として設定する
ことを特徴とする請求項１又は２に記載のデバッグ用情報処理装置。
【請求項４】
前記第２の指示は、前記スクロールバーに設けられたスクロールボタンによる前記ユーザからの指示であり、
前記スクロール制御部は、
前記特定のアドレス範囲以外を前記メモリ内の全アドレス範囲として設定し、
前記特定のアドレス範囲を前記全アドレス範囲の一部として設定する
ことを特徴とする請求項１乃至３のいずれか１項に記載のデバッグ用情報処理装置。
【請求項５】
メモリを使用して動作するデバッグ対象プログラムのデバッグ時乃至デバッグ終了時の当該メモリに書き込まれたデータの少なくとも一部を表示装置に表示させる処理をコンピュータに実行させるデバッグ用プログラムであって、
前記表示装置に表示される表示内容をアドレス方向にスクロールさせるスクロールバーに設けられたスクロールサムによるユーザからの第１の指示を受け付けたときにスクロール可能な範囲を、前記メモリ内の特定のアドレス範囲に設定する処理と、
前記スクロールさせるために前記スクロールサム以外による前記ユーザからの第２の指示を受け付けたときにスクロール可能な範囲を、前記特定のアドレス範囲以外に設定する処理と、
を前記コンピュータに実行させるデバッグ用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバッグ用情報処理装置及びデバッグ用プログラムに関し、特に、半導体集積回路上で動作するプログラムをデバッグするためのデバッグ用情報処理装置及びデバッグ用プログラムに関する。
【背景技術】
【０００２】
近年の情報処理装置は、画面サイズ当たりにより多くの情報を表示するために多くの工夫をしている。情報処理装置の中には、半導体集積回路上で動作するプログラムをデバッグするためのデバッグ装置がある。当該デバッグ装置には、デバッグする対象の半導体集積回路に対応する情報量の増加（例えばメモリ空間の広域化やプログラムの肥大化）に伴い、デバッグをする操作者が操作しやすく、かつ的確な情報を表示させたいという要求がある。特にデバッグ装置においては、メモリ空間の広域化により操作者がスクロールバーにより目的のアドレスを表示させるのが非常に困難であり、素早く簡便に表示開始アドレスを変更できることが望まれている。
【０００３】
特許文献１には、容易なスクロール操作によって、表示情報を微調整することを目的とする情報処理装置及びソフトウェアアプリケーションに関する技術が開示されている。
【０００４】
図１４は、特許文献１にかかるソフトウェアアプリケーションにより情報処理装置に表示されるアプリケーションウィンドウ内のドキュメントビューを示した図である。特許文献１の概念は、ソフトウェアアプリケーションの一部として、各スクロールバーが、処理されるコンテンツの異なる部分に関係するように配置された複数のスクロールバーを有することである。例えば、１つのスクロールバーがドキュメント全体をカバーし、一方別のスクロールバーがドキュメントの一部（例えば、１つの特定の段落、章、ページ、もしくは節、または現在アクティブ／可視である段落、章、ページ、もしくは節）のみをカバーしてもよい。または、１つのスクロールバーがコンテンツの先頭をカバーし、一方別のスクロールバーがコンテンツの末尾をカバーしてもよい。もう１つの代替としては、１つのスクロールバーが現在可視であるドキュメントをカバーし、別のスクロールバーが他の利用可能なドキュメントのリストをスクロールする可能性を提供する、ということがある。すなわち、アプリケーションウィンドウに示されるコンテンツに埋め込まれた追加のスクロールバーを有することが可能である先行技術と比べ、ソフトウェアアプリケーション自体が、（埋め込まれたスクロールバーをコンテンツが備えるか否かを問わず）アプリケーションウィンドウに示されるコンテンツを処理するための２つ以上のスクロールバーを提供する。
【０００５】
したがって、特許文献１の第１の側面によると、コンテンツを処理するための装置であって、メモリと、前記メモリに格納されたソフトウェアに従って前記装置の動作を制御する処理装置と、コンテンツを表示するための画面と、を備え、前記メモリは、アプリケーションウィンドウ内の前記画面上でコンテンツをスクロールするように構成されたソフトウェアアプリケーションを備え、前記ソフトウェアアプリケーションは、１つのアプリケーションウィンドウにおいて少なくとも２つの論理的に区別しうるスクロールバーを備え、前記スクロールバーのそれぞれは前記コンテンツの同じ方向に関してスクロール機能を提供し、前記論理的に区別しうるスクロールバーのそれぞれは前記コンテンツの異なる部分を制御する、装置が提供される。
【０００６】
また、特許文献１の第２の側面によると、アプリケーションウィンドウ内の画面上でコンテンツをスクロールするように構成されたソフトウェアアプリケーションであって、前記ソフトウェアアプリケーションは、１つのアプリケーションウィンドウにおいて少なくとも２つの論理的に区別しうるスクロールバーを備え、前記スクロールバーのそれぞれは前記コンテンツの同じ方向に関してスクロール機能を提供し、前記論理的に区別しうるスクロールバーのそれぞれは前記コンテンツの異なる部分を制御する、ソフトウェアアプリケーションが提供される。
【０００７】
また、特許文献１の第３の側面によると、アプリケーションウィンドウ内の画面上でコンテンツをスクロールするように構成されたソフトウェアアプリケーションで使用するための方法であって、１つのアプリケーションウィンドウにおいて少なくとも２つの論理的に区別しうるスクロールバーを提供するステップであって、前記スクロールバーのそれぞれは前記コンテンツの同じ方向に関してスクロール機能を提供し、前記論理的に区別しうるスクロールバーのそれぞれは前記コンテンツの異なる部分を制御するステップ、を含む方法が提供される。
【０００８】
尚、特許文献１の１つの実用的な実装形態においては、２つの平行なスクロールバーがある。しかしながら、２つを超えるスクロールバーが使用されてもよい。さらに、２つ以上の論理的に区別しうるスクロールバーを１つの物理的スクロールバーに埋め込むことが可能である。
【０００９】
図１４によるスクロールバーによって提供されるスクロールを用いて、長いドキュメントをスクロールすること、および、その中でより正確に特定の点を見つけることが容易になる。それにより、ユーザの使用感を向上することができる。このソリューションは、特に画面のサイズが制限されている装置に適合するが、他の装置において使用されてもよい。
【００１０】
図１４は、アプリケーションウィンドウ４００内のドキュメントビューを図示している。このアプリケーションウィンドウは、ウィンドウ右手側に平行なスクロールバー４０１および４０２を備える。双方のスクロールバーは、コンテンツ４０３のスクロールを制御する。ここでは、スクロールバー４０１はドキュメント全体を制御し、スクロールバー４０２はドキュメントの１章を制御する。スクロールバー４０１のエレベータのサイズおよび位置から、現在可視である部分の下および上にさらにコンテンツがあることがわかる。同様に、スクロールバー４０２のエレベータのサイズおよび位置から、カーソル４０４は現在、スクロールバー４０２が制御している章の終わりにあることがわかる。
【００１１】
スクロールバー４０２は、ドキュメントの現在アクティブである章（または、ドキュメントのその他何らかの適合する部分）を制御することができる。すなわち、カーソル４０４が１行下の第ＩＩ章へ移動すると、スクロールバー４０２は第ＩＩ章のコンテンツの制御を開始する。スクロールバー４０２が、ドキュメントの現在可視である部分を制御するように構成されることも可能である。章の代替として、スクロールバー４０２が制御するドキュメントの部分は、例えば段落、ページ、または節であってもよい。さらに別の代替は、「追加」スクロールバー４０２がドキュメントのいずれの部分を制御するかを定義する可能性をユーザに提供することである。例えば、ユーザがドキュメントの一定部分を編集している場合、当該ユーザは、スクロールバー４０２が当該一定部分を制御し、一方スクロールバー４０１がドキュメント全体において正常に動作するよう設定することができる。
【００１２】
図１５は、特許文献１の処理装置のブロック図である。処理装置７００は、ＣＰＵ７０１と、ＣＰＵ７０１に連結された入力／出力モジュール（Ｉ／Ｏ）７０３とを備える。ＣＰＵ７０１は、メモリ７０２および画面（スクリーン）７０５にも連結される。メモリ７０２は、ＣＰＵ７０１において実行可能なＳＷ（ソフトウェアアプリケーション）７０６を備える。
【００１３】
ＣＰＵ７０１は、ＳＷ（ソフトウェアアプリケーション）７０６に従って、処理装置７００のユーザにコンテンツを示すための画面（スクリーン）７０５にアプリケーションウィンドウを示すように装置を制御する。ＳＷ（ソフトウェアアプリケーション）７０６に従って、アプリケーションウィンドウは少なくとも２つの論理的に区別しうるスクロールバーを備え、スクロールバーのそれぞれは前記コンテンツの同じ方向に関してスクロール機能を提供し、論理的に区別しうるスクロールバーのそれぞれはコンテンツの異なる部分を制御する。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特表２００８−５１２７５６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
上述したように、特許文献１における双方のスクロールバー４０１及び４０２は、ソフトウェアアプリケーションの不可欠な部分である。さらに、いくつかの実装において、スクロールバー４０２が制御するドキュメントの部分は動的に変化する場合がある。そのため、特許文献１では、使用者が目的の箇所を表示するためには、第１のスクロールバー４０１のスクロールサムを移動させた後、第２のスクロールバー４０２で微調整する手段を踏まなければ目的の位置へスクロールできないという問題がある。
【００１６】
その理由としては、図１４のスクロールバー４０２によるスクロールでは、制御中の章以外の章へスクロールできず、スクロール可能な範囲が制御中の章（コンテンツ４０３）に限られる。このため、制御中の章以外の章へスクロールするためにはスクロールバー４０１を用いて目的の章へスクロールし、目的のページが表示されなければ、さらにスクロールバー４０２を使ってスクロールする必要があるためである。また、スクロールバー４０１のスクロールサムは、表示するドキュメントの全ページへ移動するようになっており、表示するドキュメントのページ数が増えると、必然的に、スクロールサムを１ドットの移動させたときの移動量が増加することになり、目的のページへスクロールさせるのが困難となる。
【課題を解決するための手段】
【００１７】
本発明の第１の態様にかかるデバッグ用情報処理装置は、
メモリを使用して動作するプログラムのデバッグ時乃至デバッグ終了時の当該メモリに書き込まれたデータの少なくとも一部を表示装置に表示させるデバッグ用情報処理装置であって、
前記表示装置に表示される表示内容をアドレス方向にスクロールさせるスクロールバーに設けられたスクロールサムによるユーザからの第１の指示及び前記スクロールさせるために当該スクロールサム以外による前記ユーザからの第２の指示を受け付けるスクロール指示受付部と、
前記第１の指示を受け付けたときにスクロール可能な範囲を、前記メモリ内の特定のアドレス範囲に設定し、前記第２の指示を受け付けたときにスクロール可能な範囲を、前記特定のアドレス範囲以外に設定するスクロール制御部と、
を備える。
【００１８】
本発明の第２の態様にかかるデバッグ用プログラムは、
メモリを使用して動作するデバッグ対象プログラムのデバッグ時乃至デバッグ終了時の当該メモリに書き込まれたデータの少なくとも一部を表示装置に表示させる処理をコンピュータに実行させるデバッグ用プログラムであって、
前記表示装置に表示される表示内容をアドレス方向にスクロールさせるスクロールバーに設けられたスクロールサムによるユーザからの第１の指示を受け付けたときにスクロール可能な範囲を、前記メモリ内の特定のアドレス範囲に設定する処理と、
前記スクロールサム以外によるユーザからの第２の指示を受け付けたときにスクロール可能な範囲を、前記特定のアドレス範囲以外に設定する処理と、
を前記コンピュータに実行させる。
【００１９】
上述した本発明の第１及び第２の態様により、第１の指示であるスクロールサムによるスクロール可能な範囲が特定のアドレス範囲に限定されるため、スクロール可能な範囲が全アドレス範囲である場合に比べてスクロールサムの長さが長くなる。そのため、ユーザによるスクロールサムのドラッグ等の操作が容易となる。一方、特定のアドレス範囲以外にもスクロールさせたい場合には、例えばスクロールボタン等を用いた第２の指示によりスクロールさせることで対応することができる。よって、一つのスクロールバーにより複数のスクロール可能な範囲を実現することができ、ユーザは、スクロールサムを使い分ける必要がなく、所望のメモリ内容を画面に表示させることができる。
【発明の効果】
【００２０】
本発明により、プログラムのデバッグにおけるメモリ状態の表示のスクロール操作を容易かつ柔軟に実現するためのデバッグ用情報処理装置及びデバッグ用プログラムを提供することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施の形態１にかかるデバッグ用情報処理装置のシステム構成図である。
【図２】本発明の実施の形態１にかかるスクロールバーの移動範囲指定機能の制御フローチャートである。
【図３】本発明の実施の形態１にかかるスクロールバーの移動範囲の半固定機能の制御フローチャートである。
【図４】本発明の実施の形態１にかかるメモリ表示画面ウィンドウの例を示す模式図である。
【図５】本発明の実施の形態１にかかるメモリ表示画面ウィンドウの例を示す模式図である。
【図６】本発明の実施の形態１にかかるメモリ表示画面ウィンドウの例を示す模式図である。
【図７】本発明の実施の形態１にかかるメモリ表示画面ウィンドウの例を示す模式図である。
【図８】本発明の実施の形態１にかかるメモリ表示画面ウィンドウの例を示す模式図である。
【図９】本発明の実施の形態１にかかるデータ分類リストの例を示す模式図である。
【図１０】本発明の実施の形態２にかかるメモリ表示画面ウィンドウの例を示す模式図である。
【図１１】本発明の実施の形態２にかかるメモリ表示画面ウィンドウの例を示す模式図である。
【図１２】本発明の実施の形態２にかかるスクロールバーの移動範囲指定機能の制御フローチャートである。
【図１３】本発明の実施の形態２にかかるデータ分類リストの例を示す模式図である。
【図１４】関連技術のアプリケーションウィンドウ内のドキュメントビューを示した図である。
【図１５】関連技術の処理装置のブロック図である。
【発明を実施するための形態】
【００２２】
以下では、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略する。
【００２３】
＜発明の実施の形態１＞
図１は、本発明の実施の形態１にかかるデバッグ用情報処理装置１００のシステム構成図である。デバッグ用情報処理装置１００は、キーボード、マウス等の入力装置１０１より、動作指示のための入力情報を受け付ける。デバッグ用情報処理装置１００は、入力装置１０１からの入力情報を解析する入力制御部１０２と、表示データを更新するデータ分類部１０３と、描画情報を表示装置１０５へ出力するデータ表示部１０４と、入力情報を保持するメモリ１０８とで構成される。
【００２４】
ここで、表示装置１０５には、デバッグ対象のプログラムの実行に伴う半導体集積回路のメモリ内のデータがアドレス単位に表示されているものとする。但し、メモリ空間の広域化と画面サイズの制約から、表示装置１０５には、全てのアドレスに対応するデータを表示することができず、アドレスの一部に対応するデータが表示されているものとする。それ故、デバッグによりメモリ内のデータを解析するユーザは、所望のアドレスに対応するデータを表示装置１０５に表示させるために、入力装置１０１により画面をスクロールさせる指示を行うものとする。
【００２５】
入力制御部１０２は、入力装置１０１からマウス等のクリック状態と座標の入力情報を受け付けて、入力情報に含まれる座標等の位置情報をメモリ１０８へ、入力情報に含まれる複数の通知情報をデータ分類部１０３へそれぞれ出力する。
【００２６】
メモリ１０８は、入力制御部１０２からマウス等のクリック状態と座標の入力情報を受け付けて、内部に格納する。また、メモリ１０８は、入力制御部１０２へマウス等のクリック状態と座標を返却する。
【００２７】
データ分類リスト１０７は、デバッグ対象の半導体集積回路のメモリにおける複数のアドレス範囲の定義を示す情報である。データ分類リスト１０７の具体例は、図９を用いて後述する。また、表示データリスト１０６には、デバッグ対象の半導体集積回路のメモリ内のデータがアドレスごとに対応付けられた情報である。尚、表示データリスト１０６及びデータ分類リスト１０７は、デバッグ用情報処理装置１００内の記憶装置（不図示）に予め登録されている。
【００２８】
データ分類部１０３は、入力制御部１０２のマウス等のクリック状態と座標の変更を入力する。また、データ分類部１０３は、スクロール範囲半固定スクロールバー２０４のスクロールサム２０３の位置と、表示対象となるデータ分類を、データ表示部１０４へ出力する。また、データ分類部１０３は、データ分類リスト１０７から表示対象となるデータ分類に対応する使用フラグ３０１、各行毎の開始アドレス３０４及び終了アドレス３０５を取得し、データ表示部１０４に表示開始命令、表示データリスト１０６に表示開始アドレスからの表示データをそれぞれ出力する。
【００２９】
言い換えると、データ分類部１０３は、入力制御部１０２から受け付けたマウス等のクリック状態と座標の変更の入力情報に応じて、データ分類リスト１０７に対する入出力を行い、表示データリスト１０６及びデータ表示部１０４へ出力を行う。データ分類部１０３は、入力制御部１０２からデータ分類リスト１０７の一覧表示の要求を受け付けた場合、データ分類リスト１０７から各種データを読み出し、データ表示部１０４を介して表示装置１０５に表示させる。
【００３０】
データ分類部１０３は、入力制御部１０２からデータ分類リスト１０７内のアドレス範囲の定義の一つの選択を受け付けた場合、データ分類リスト１０７から当該選択されたアドレス範囲の定義を読み出し、読み出したアドレス範囲の先頭から表示可能な範囲のアドレスに対応するデータを表示データリスト１０６から読み出し、データ表示部１０４を介して表示装置１０５に表示させる。併せて、データ分類部１０３は、後述するスクロール範囲半固定スクロールバー２０４のスクロールサム２０３のスクロール可能な範囲を当該読み出したアドレス範囲に設定する。
【００３１】
また、データ分類部１０３は、入力制御部１０２からスクロールサム２０３によるスクロール指示を受け付けた場合、上記設定されたスクロール可能な範囲内でスクロールさせた場合のアドレスに対応するデータを表示データリスト１０６から読み出して、データ表示部１０４を介して表示装置１０５に表示させる。
【００３２】
データ表示部１０４は、データ分類部１０３から表示開始命令と、表示データリスト１０６から表示開始命令で指定されたアドレス範囲の表示データとをそれぞれ入力し、表示装置１０５に表示する。
【００３３】
図４は、本発明の実施の形態１にかかるメモリ表示画面ウィンドウ２００の例を示す模式図である。メモリ表示画面ウィンドウ２００は、デバッグ用情報処理装置１００により表示装置１０５に表示される。メモリ表示画面ウィンドウ２００は、表示対象となるメモリ領域を表示するメモリ表示部２０７と、メモリ表示部２０７に表示されているメモリ内容を小さいアドレス方向へスクロールする上スクロールボタン２０２と、同様に大きいアドレス方向へスクロールする下スクロールボタン２０５と、表示されているメモリ領域のスクロール領域を示すスクロール範囲半固定スクロールバー２０４と、スクロール範囲半固定スクロールバー２０４内をスクロールするための制御を行なうためのスクロールサム２０３と、後述するデータ分類メニュー２０６を表示するためのスクロール範囲指定ボタン２０１とで構成される。
【００３４】
図５は、本発明の実施の形態１にかかるメモリ表示画面ウィンドウ２００におけるデータ分類メニュー２０６の例を示す模式図である。データ分類メニュー２０６は、メモリ領域を表すメニューが表示される。例えば、データ分類メニュー２０６には、"全メモリ領域"、"ＲＡＭ領域"、"ＲＯＭ領域"及び"Ｉ／Ｏ領域"といった各領域が対応するアドレス範囲と共に表示される。
【００３５】
図９は、本発明の実施の形態１にかかるデータ分類リスト１０７のフォーマットの例を示す模式図である。図９の例では、データ分類リスト１０７は、使用フラグ３０１、表示フラグ３０２、メモリ種類３０３、開始アドレス３０４及び終了アドレス３０５を１組として、複数行で構成される。尚、データ分類リスト１０７はこれに限定されない。
【００３６】
表示フラグ３０２は、データ分類メニュー２０６の表示時に参照されるフラグであって、'１'が表示対象となる。使用フラグ３０１は、ユーザが指定するメモリ領域をアクティブとし、アクティブな領域には'１'が書き込まれる。初期値は、メモリ種類３０３で示す全メモリ領域が'１'となり、他の使用フラグ３０１は'０'となる。
【００３７】
メモリ種類３０３は、対応するメモリ領域の種類を示す。メモリ種類３０３として、ユーザが直接領域を設定することも可能であり、その場合、ユーザは、入力装置１０１を介して開始アドレス３０４及び終了アドレス３０５を別途設定する。
【００３８】
開始アドレス３０４及び終了アドレス３０５は、メモリ領域のアドレス範囲を示しており、開始アドレスとメモリサイズ等を用いて表現しても良い。
【００３９】
図２は、本発明の実施の形態１にかかるスクロールバーの移動範囲指定機能の制御フローチャートである。また、図３は、本発明の実施の形態１にかかるスクロールバーの移動範囲の半固定機能の制御フローチャートである。以下、図２及び図３を用いて本発明の実施の形態１にかかるデバッグ用情報処理装置１００の動作の説明をする。
【００４０】
図２は、本発明のスクロールバーの移動範囲指定機能の制御フローチャートである。最初に入力制御部１０２は、ユーザによりスクロール範囲指定ボタン２０１がマウス等により押されたか否かを判定（ステップＳ１００）し、押された場合はステップＳ１０１へ進み、押されていなければステップＳ１００に戻ってボタンの入力を待つ。
【００４１】
ステップＳ１００でスクロール範囲指定ボタン２０１が押されたと判定した場合、データ分類部１０３は、データ分類リスト１０７から全てのデータ分類を読み出し、前記リスト中より表示フラグ３０２が'１'、または使用フラグ３０１が'１'のいずれかである行のメモリ種類３０３、開始アドレス３０４及び終了アドレス３０５をデータ分類メニュー２０６に設定して、データ表示部１０４を介して表示装置１０５にデータ分類メニュー２０６を表示する（ステップＳ１０１）。
【００４２】
次に、データ分類部１０３は、ユーザによりデータ分類メニュー２０６内のいずれかのメニューが選択されたか否かを判定する（ステップＳ１０２）。データ分類メニュー２０６内のいずれかのメニューが選択されたと判定した場合はステップＳ１０３に進み、未選択と判定した場合はステップＳ１０２に戻ってメニューの選択を待つ。
【００４３】
ステップＳ１０２でメニューが選択されたと判定した場合は、データ分類部１０３は、選択された情報をデータ分類リスト１０７の該当する行の使用フラグ３０１を'１'、現在使用フラグ３０１が'１'の行を'０'に設定して、データ分類リスト１０７に書き戻す。
【００４４】
そして、データ分類部１０３は、データ表示部１０４へ、選択されたメモリ種類３０３を通知する。通知を受けたデータ表示部１０４は、スクロール範囲半固定スクロールバー２０４のスクロール可能な範囲であるスクロール半固定範囲として、受け取ったメモリ種類３０３が示すアドレス範囲を設定する（ステップＳ１０３）。これにより、スクロールサム２０３の長さが調整される。
【００４５】
つまり、データ分類部１０３は、データ分類メニュー２０６のうちユーザにより選択された領域に応じて、スクロールサム２０３の大きさを調整し、スクロールサム２０３の移動範囲を設定する。
【００４６】
図３は、本発明のスクロールバーの移動範囲の半固定機能の制御フローチャートである。入力制御部１０２は、ユーザからスクロール指示を受け付けたか否かを判定する（ステップＳ２００）。スクロール指示は、ユーザがメモリ表示部２０７に表示された内容をスクロールさせるための入力装置１０１を介した各種操作である。各種操作には、例えば、ユーザがスクロールサム２０３をマウスでドラッグする操作、上スクロールボタン２０２又はスクロールサム２０３をマウスでクリックする操作、キーボードの上下キーやＰａｇｅＵｐ／ＰａｇｅＤｏｗｎキーを押下する操作、又は、マウスのホイールを用いた操作等が含まれる。尚、上記の各種操作に連動して、結果的にスクロールサム２０３が移動することとなる。そのため、入力制御部１０２は、スクロールサム２０３が移動したか否かを判定してもよい。
【００４７】
ステップＳ２００において、スクロール指示を受け付けたと判定した場合はステップＳ２０１へ進み、スクロール指示を受け付けていないと判定した場合ステップＳ２００に戻ってスクロールサム２０３の移動を待つ。
【００４８】
続いて、データ分類部１０３は、受け付けたスクロール指示がスクロールサム２０３によるマウスのドラッグ操作であるか否かを判定する（ステップＳ２０１）。スクロールサム２０３によるマウスのドラッグ操作であればステップＳ２０４へ進み、当該ドラッグ操作でなければステップＳ２０２に進む。尚、ステップＳ２００でスクロールサム２０３が移動したか否かを判定した場合には、ステップＳ２０１において移動方法がスクロールサム２０３のドラッグかを判定するとよい。
【００４９】
ステップＳ２０１において、スクロール指示がスクロールサム２０３によるマウスのドラッグ操作でないと判定した場合、データ表示部１０４はスクロール指示が上スクロールボタン２０２のクリックなら表示開始アドレスを１行分減少させ、下スクロールボタン２０５のクリックなら表示開始アドレスを１行分増加させる（ステップＳ２０２）。
【００５０】
そして、データ表示部１０４は、ステップＳ２０２で変更した表示開始アドレスに従い、以下の式（１）を用いてスクロールサム２０３を表示開始アドレスと対応する位置へ移動させる。ただし、表示開始アドレスがスクロール範囲半固定スクロールバー２０４のスクロールサム２０３の移動範囲を超える場合は、境界位置まで移動させ、処理を終了する（ステップＳ２０３）。
スクロールサム２０３の位置＝（スクロール範囲半固定スクロールバー２０４の高さ
／選択されたデータ分類が示すアドレス範囲）×表示開始アドレス      ・・・（１）
【００５１】
また、ステップＳ２０１において、スクロール指示がスクロールサム２０３によるマウスのドラッグ操作であると判定した場合、データ表示部１０４は、式（２）を用いて表示開始アドレスを変更し、処理を終了する（ステップＳ２０４）。
表示開始アドレス＝（選択されたデータ分類が示すアドレス範囲／スクロール範囲半固定スクロールバー２０４の高さ）×スクロールサム２０３の位置      ・・・（２）
【００５２】
図４乃至図８は、本発明のメモリ表示画面ウィンドウを示す模式図であり、図４乃至図８を用いて、図１乃至図３のメカニズムを説明する。図４は、本発明の初期状態のメモリ表示画面ウィンドウ２００を示す模式図である。図４では、デバッグ用情報処理装置１００が入力装置１０１からの入力を待ち、図２又は図３のステップのいずれも開始可能である状態を表す。また、図４では、スクロールサム２０３の移動範囲として"全メモリ領域"が選択されているものとする。そして、メモリ表示部２０７には、"全メモリ領域"内の任意のアドレス"０８００"から表示可能なアドレス分（ここでは、"０８Ｂ０"）までのデータが表示されているものとする。
【００５３】
図５及び図６は、本発明のスクロール範囲を半固定化する時のメモリ表示画面ウィンドウ２００の例を示す模式図である。図５は、ステップＳ１００及びステップＳ１０１において、ユーザによりスクロール範囲指定ボタン２０１がクリックされ、デバッグ用情報処理装置１００がデータ分類メニュー２０６を表示した状態を表す。また、図６は、ステップＳ１０２及びステップＳ１０３において、データ分類メニュー２０６からユーザによりアドレス範囲が選択された後の状態を示す。
【００５４】
例えば、図５のデータ分類メニュー２０６において"ＲＡＭ領域（１０００〜１ＦＦＦ）"がユーザにより選択されたものとする。このとき、データ分類部１０３は、データ分類リスト１０７から"ＲＡＭ領域（１０００〜１ＦＦＦ）"に対応する開始アドレス３０４"１０００"及び終了アドレス３０５"１ＦＦＦ"を読み出し、表示データリスト１０６から開始アドレス３０４"１０００"から表示可能なアドレス分（ここでは、"１０Ｂ０"）までのデータを読み出し、メモリ表示部２０７に表示する（図６）。これに伴い、スクロールサム２０３がスクロールサム２０３１へと大きさが変化する。これにより、ユーザは、図６のスクロールサム２０３１のマウスポイントによる選択領域が広がり、ドラッグ操作が容易となる。併せて、データ分類部１０３は、スクロールサム２０３のスクロール可能な範囲を、読み出したアドレス範囲（"１０００"〜"１ＦＦＦ"）に設定する。
【００５５】
図７及び図８は、本発明のスクロールサム２０３をドラッグする前後のメモリ表示画面ウィンドウを示す模式図である。図７は、ステップＳ２００において、スクロールサム２０３２をドラッグによって移動する前の状態を表す。図８は、ステップＳ２００、ステップＳ２０１及びステップＳ２０４において、図７のスクロールサム２０３２が入力装置１０１によるドラッグによって移動することで、スクロールサム２０３３で示した位置まで移動したこと表し、表示開始アドレスが"１ＦＦ４"から"１ＦＦＦ"に変化したことを示している。
【００５６】
なお、図８の開始アドレスが"１ＦＦ４"の状態で下スクロールボタン２０５をクリックした場合、ステップＳ２０２及びステップＳ２０３により、スクロールサム２０３３は移動及び長さの変化はしないが、メモリ表示部２０７に表示される表示開始アドレスは"１ＦＦ５"に変化する。次に、上スクロールボタン２０２をクリックした場合、ステップＳ２０２及びステップＳ２０３により、表示開始アドレス"１ＦＦ５"から"１ＦＦ４"に戻る。このように、特定のアドレス範囲外であっても上スクロールボタン２０２及びスクロールサム２０３を用いて容易にスクロールさせることができ、より柔軟なスクロール操作を実現できる。
【００５７】
上述したように、本発明にかかる実施の形態１では、使用者が目的の箇所を表示するために複数のスクロールバーを操作する必要がなく、スクロール範囲を指定することでスクロールサムによるスクロールで目的の位置へスクロールさせることが容易であり、表示範囲の設定を変更せずに、使用者が表示したい箇所にスクロールバーを使って柔軟にスクロールすることができる効果がある。
【００５８】
特に、本発明にかかる実施の形態１で対象とするデータは、半導体集積回路上で動作するプログラムのデバッグにおいて、半導体集積回路内のメモリ状態である。デバッグにおけるメモリ状態を表すデータは、一般の文書データ等と異なり、全てのデータを表示させる必要性が低い。むしろ、プログラムのテスト内容や、エラーの内容等に応じて、特定のアドレス範囲におけるメモリ内のデータを表示することで十分であることが多い。そのため、データの中から特定のアドレス範囲までスクロールさせる操作については、スクロールサムやスクロールボタンを用いるよりも、データ分類メニュー２０６により選択させる方が効率的である。また、データ分類メニュー２０６に全てのアドレスごとに個別に登録しておくことは現実的でない。そのため、特定のアドレス範囲の中で具体的に表示が必要なアドレスまでスクロールさせる場合には、スクロールボタン等をクリックするよりはスクロールサム２０３１等をドラッグする操作の方が容易にスクロールさせることができる。さらに、メモリ内のデータの場合、所望のアドレスに対応するデータが予期せぬ値である場合に、前後のアドレスを表示させるように若干のスクロールをさせるだけで、原因が判明することも多い。この場合、スクロールサム２０３１に設定済みの特定のアドレス範囲をわずかに超えてスクロールさせる必要があることもある。このような場合であっても、データ分類メニュー２０６による選択を再度行う必要がなく、スクロールボタン等を用いることで少量のスクロールが行えるため、柔軟な操作が実現できる。それ故、本発明にかかる実施の形態１は、プログラムのデバッグにおけるメモリ状態の表示において絶大な効果を奏する。
【００５９】
本発明にかかる実施の形態１にかかるデバッグ用情報処理装置１００は、少なくとも以下の構成を備えるものであればよい。すなわち、デバッグ用情報処理装置１００は、メモリを使用して動作するプログラムのデバッグ時乃至デバッグ終了時の当該メモリに書き込まれたデータの少なくとも一部を表示装置１０５に表示させるデバッグ用情報処理装置である。そして、デバッグ用情報処理装置１００は、前記表示装置に表示される表示内容（例えば、図４のメモリ表示部２０７）をアドレス方向にスクロールさせるスクロールバー（例えば、図４のスクロール範囲半固定スクロールバー２０４）に設けられたスクロールサム（例えば、図４のスクロールサム２０３）によるユーザからの第１の指示（例えば、スクロールサム２０３のドラッグ操作）及び前記スクロールさせるために当該スクロールサム以外による前記ユーザからの第２の指示（例えば、図４の上スクロールボタン２０２又は下スクロールボタン２０５をクリックする操作、キーボードの上下キーやＰａｇｅＵｐ／ＰａｇｅＤｏｗｎキーを押下する操作、又は、マウスのホイールを用いた操作等）を受け付けるスクロール指示受付部（例えば、図１の入力制御部１０２）と、前記第１の指示を受け付けたときにスクロール可能な範囲を、前記メモリ内の特定のアドレス範囲に設定し、前記第２の指示を受け付けたときにスクロール可能な範囲を、前記特定のアドレス範囲以外に設定するスクロール制御部（例えば、図１のデータ分類部１０３）と、を備える。
【００６０】
また、前記スクロール制御部は、前記メモリ内の複数のアドレス範囲のリストを表示させ、当該リストの中から前記ユーザにより選択されたアドレス範囲を、前記特定のアドレス範囲として設定することが望ましい。
【００６１】
さらに、前記第２の指示は、前記スクロールバーに設けられたスクロールボタンによる前記ユーザからの指示であり、前記スクロール制御部は、前記特定のアドレス範囲以外を前記メモリ内の全アドレス範囲として設定し、前記特定のアドレス範囲を前記全アドレス範囲の一部として設定するとよい。
【００６２】
＜発明の実施の形態２＞
図１０及び図１１は、本発明の実施の形態２にかかるメモリ表示画面ウィンドウ２５０の例を示す模式図である。実施の形態１に示す図４のメモリ表示画面ウィンドウ２００に対して、図１０のメモリ表示画面ウィンドウ２５０は、ユーザが任意のアドレス範囲を入力するためのスクロール範囲指定テキスト入力領域２０８と、データ分類ドロップダウンメニュー２１０を表示するためのデータ分類ドロップダウンメニュー表示ドロップダウンボタン２０９と、メモリ領域を表すデータ分類ドロップダウンメニュー２１０とに変更された構成である。
【００６３】
図１３は、本発明の実施の形態２にかかるデータ分類リスト１０７のフォーマットの例を示す模式図である。図１３の構成は、実施の形態１の図９に対して、メモリの種類３０３に"直接指定"が追加されている。その他の構成は、図９と同等であるため説明を省略する。
【００６４】
図１２は、本発明の実施の形態２にかかるスクロールバーの移動範囲指定機能の制御フローチャートである。図１２を用いて動作の説明をする。実施の形態１の図２のステップＳ１００及びＳ１０１に対し、図１２はステップＳ３００〜Ｓ３０４が追加変更されている。
【００６５】
最初に入力制御部１０２は、データ分類ドロップダウンメニュー表示ドロップダウンボタン２０９がクリックされた、または、スクロール範囲指定テキスト入力領域２０８にデータが入力されたかを判定（ステップＳ３００）し、クリックまたはデータが入力されればステップＳ３０１へ進み、そうでなければ再びステップＳ３００に戻ってクリックまたはデータが入力されるのを待つ。
【００６６】
ステップＳ３０１は、データ分類ドロップダウンメニュー表示ドロップダウンボタン２０９がクリックされたかどうかを判定（ステップＳ３０１）し、クリックされればステップＳ３０２へ進み、そうでなければステップＳ３０４へ進む。
【００６７】
ステップＳ３０１でデータ分類ドロップダウンメニュー表示ドロップダウンボタン２０９がクリックされた場合にデータ分類部１０３は、図１３のデータ分類リスト１０７からすべてのデータ分類を読み出し、前記リスト中より表示フラグ３０２が'１'、または使用フラグ３０１が'１'の行のメモリ種類３０３、開始アドレス３０４、終了アドレス３０５をデータ分類ドロップダウンメニュー２１０に設定して、データ分類ドロップダウンメニュー２１０を表示する（ステップＳ３０２）。
【００６８】
データ分類部１０３は、データ分類ドロップダウンメニュー２１０で選択されたデータ分類を判定（ステップＳ３０３）し、データ分類ドロップダウンメニュー２１０が選択された場合はステップＳ１０３に進み、データ分類ドロップダウンメニュー２１０が選択されていない場合はステップＳ３０３に戻ってメニューの選択を待つ。
【００６９】
ステップＳ３０３でメニューが選択された場合は、選択された情報を図１３のデータ分類リスト１０７の該当する行の使用フラグ３０１を'１'、現在使用フラグ３０１が'１'の行を'０'に設定して、データ分類リスト１０７に書き戻す。
【００７０】
ステップＳ３０１で、データ分類ドロップメニュー表示ドロップダウンボタン２０９がクリックされてない場合は、ステップＳ３０４でスクロール範囲指定テキスト入力領域２０８に入力されたアドレス範囲の開始アドレスと終了アドレスを数値に変換し、図１３のデータ分類リスト１０７の直接指定行の使用フラグ３０１を'１'、現在使用フラグ３０１が'１'の行を'０'に設定し、開始アドレス３０４に数値に変換した開始アドレス、終了アドレス３０５に数値に変換した終了アドレスを設定して、データ分類リスト１０７に書き戻す。ステップＳ１０３は、図２と同じ処理なので説明を省略する。
【００７１】
図１０及び図１１は、本発明の第２のメモリ表示画面ウィンドウを示す模式図であり、１０及び図１１を用いて、図１２のメカニズムを説明する。図１０は、ステップＳ３００及びステップＳ３０１において、データ分類ドロップダウンメニュー表示ドロップダウンボタン２０９がクリックされ、データ分類ドロップダウンメニュー２１０を表示した状態を表す。直接指定でアドレス追加した場合は、データ分類ドロップダウンメニュー２１０に新たに追加され、データ分類ドロップダウンメニュー表示ドロップダウンボタン２０９をクリックした時に表示される。
【００７２】
図１１は、ステップＳ３００、ステップＳ３０１、ステップＳ３０４及びステップＳ１０３において、ユーザがスクロール範囲指定テキスト入力領域２０８に任意の範囲のアドレスを入力した後にスクロールサム２０３４の大きさが変化し、スクロールサム２０３４の移動範囲が変化したことを示している。
【００７３】
このように、本発明の実施の形態２では、ユーザが任意にスクロールサムの移動範囲を指定できるという効果がある。つまり、本発明の実施の形態２では、実施の形態１に加えて、前記スクロール制御部は、前記ユーザから指定された前記メモリ内の任意のアドレス範囲を、前記特定のアドレス範囲として設定するとよい。
【００７４】
＜その他の発明の実施の形態＞
本発明は、プログラムデバッグを行なうためのデバッガであって、前記デバッガにおける情報表示を行う場合において、特定のアドレス範囲をスクロール範囲半固定スクロールバーのスクロールによるドラッグの移動範囲とし、上下スクロールボタンにより前記移動範囲外まで移動可能とするデータ分類部を有し、使用者が目的の箇所を表示するために複数のスクロールバーを操作する必要がなく、スクロール範囲を指定することでスクロールサムによるスクロールで目的の位置へスクロールさせることが容易であり、表示範囲の設定を変更せずにいつでも使用者が表示したい箇所にスクロールバーを使ってスクロールすることができる効果がある。
【００７５】
また、本発明は以下のように表現することもできる。
１）プログラムデバッグを行なうためのプログラムデバッグ用情報処理装置（デバッガ）であって、前記デバッガにおける情報表示を行う場合において、特定のアドレス範囲をスクロール範囲半固定スクロールバーのスクロールサムによるドラッグの移動範囲とし、上下スクロールボタンによる移動範囲は前記ドラッグの移動範囲外までを移動範囲とするデータ分類部を有することを特徴とするプログラムデバッグ用情報処理装置。
【００７６】
２）１）のデータ分類リストのメモリの種類において、データ分類リストのメモリの種類よりリスト一覧を表示し、前記リスト一覧より選択されたアドレス範囲をスクロール範囲半固定スクロールバーのスクロール範囲として指定できるスクロール範囲指定部を有することを特徴とするプログラムデバッグ用情報処理装置。
【００７７】
３）１）のデータ分類リストのメモリの種類において、スクロール範囲半固定スクロールバーにスクロール範囲をユーザが任意に指定できるスクロール範囲指定部を有することを特徴とするプログラムデバッグ用情報処理装置。
【００７８】
４）プログラムデバッグを行なうためのプログラムデバッグ用情報処理装置（デバッガ）であって、前記デバッガにおける情報表示を行う場合において、データ分類リストのメモリの種類よりリスト一覧を表示するステップと、前記リスト一覧より選択されたアドレス範囲をスクロールサムによるドラッグの移動範囲とし、上下スクロールボタンにより前記移動範囲外まで移動するステップと、前記移動範囲の制御をするステップとを有することを特徴とするプログラムデバッグ用情報処理装置のスクロール制御方法
【００７９】
５）４）の移動範囲の制御をするステップにおいて、スクローサムが移動されたかを判定するステップと、前記移動方法がドラッグによる移動かを判定するステップと、ドラッグによる移動の場合はスクロールサム位置に該当する範囲を表示し、ドラッグ以外の移動の場合は現在の表示位置に対して特定のオフセットを持った位置から表示して、該表示位置にあわせて先頭位置を調整するステップとを有することを特徴とするプログラムデバッグ用情報処理装置のスクロール制御方法。
【００８０】
６）４）のアドレス範囲の指定において、リスト一覧より選択されたアドレス範囲をスクロール範囲半固定スクロールバーのスクロールサムのスクロール範囲として指定することを特徴とするプログラムデバッグ用情報処理装置のスクロール制御方法。
【００８１】
７）４）のアドレス範囲の指定において、スクロール範囲半固定スクロールバーのスクロールサムのスクロール範囲をユーザが任意に指定できるスクロール範囲指定部を有することを特徴とするプログラムデバッグ用情報処理装置。
【００８２】
さらに、本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、上述の実施の形態では、本発明をハードウェアの構成として説明したが、本発明は、これに限定されるものではない。本発明は、任意の処理を、ＣＰＵ（Central Processing Unit）にコンピュータプログラムを実行させることにより実現することも可能である。
【００８３】
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、ＤＶＤ（Digital Versatile Disc）、ＢＤ(Blu-ray(登録商標) Disc)、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（Random Access Memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【符号の説明】
【００８４】
１００  デバッグ用情報処理装置
１０１  入力装置
１０２  入力制御部
１０３  データ分類部
１０４  データ表示部
１０５  表示装置
１０６  表示データリスト
１０７  データ分類リスト
１０８  メモリ
２００  メモリ表示画面ウィンドウ
２０１  スクロール範囲指定ボタン
２０２  上スクロールボタン
２０３  スクロールサム
２０３１  スクロールサム
２０３２  スクロールサム
２０３３  スクロールサム
２０３４  スクロールサム
２０４  スクロール範囲半固定スクロールバー
２０５  下スクロールボタン
２０６  データ分類メニュー
２０７  メモリ表示部
２０８  スクロール範囲指定テキスト入力領域
２０９  データ分類ドロップメニュー表示ドロップダウンボタン
２１０  データ分類ドロップダウンメニュー
２５０  メモリ表示画面ウィンドウ
３０１  使用フラグ
３０２  表示フラグ
３０３  メモリ種類
３０４  開始アドレス
３０５  終了アドレス
４００  アプリケーションウィンドウ
４０１、４０２  スクロールバー
４０３  コンテンツ
４０４  カーソル
７００  処理装置
７０１  ＣＰＵ
７０２  メモリ
７０３  Ｉ／Ｏ
７０４  ソフトウェアアプリケーション
７０５  スクリーン
【図１】
2012243241.tif 000003
【図２】
2012243241.tif 000004
【図３】
2012243241.tif 000005
【図４】
2012243241.tif 000006
【図５】
2012243241.tif 000007
【図６】
2012243241.tif 000008
【図７】
2012243241.tif 000009
【図８】
2012243241.tif 000010
【図９】
2012243241.tif 000011
【図１０】
2012243241.tif 000012
【図１１】
2012243241.tif 000013
【図１２】
2012243241.tif 000014
【図１３】
2012243241.tif 000015
【図１４】
2012243241.tif 000016
【図１５】
2012243241.tif 000017