(57)【特許請求の範囲】
【請求項１】
楽曲に関連した、複数区間長分の表示情報を所定区間長分、表示する表示手段と、
該表示された所定区間長分の表示情報中で、曲の演奏の進行に応じて移動させることにより現在の進行位置を指示する現在位置指示手段と、
該現在位置指示手段によって指示される現在の進行位置が移動するに従って、前記表示された表示情報中、前記現在位置指示手段により既に指示された領域を、前記現在位置指示手段の表示位置から離れた位置で次に表示すべき表示情報によって変更して行く表示変更手段と、
該表示変更手段が前記表示情報を変更する速度を、前記現在位置指示手段によって指示される現在の進行位置が到達した、前記表示情報中の位置に応じて変更する速度変更手段と
を有することを特徴とする表示変更装置。
【請求項２】
楽音を発生させるための楽音情報と、該楽音情報に対応して、当該楽音情報に関連する表示情報とを記憶する記憶手段と、
前記記憶された楽音情報および対応する表示情報を読み出す読み出し手段と、
該読み出された楽音情報に基づいて楽音を発生する楽音発生手段と、
前記読み出された表示情報を表示する表示手段と、
前記読み出し手段による楽音情報の読み出し進行に従って、前記表示手段に表示された表示情報中で、現在の進行位置を移動させて指示する現在位置指示手段と、
該現在位置指示手段によって指示される現在の進行位置が移動するに従って、前記表示された表示情報中、前記現在位置指示手段により既に指示された領域を、前記現在位置指示手段の表示位置から離れた位置で次に表示すべき表示情報によって変更して行く表示変更手段と、
該表示変更手段が前記表示情報を変更する速度を変更する速度変更手段と、
前記現在位置指示手段が指示する進行位置を検出する進行位置検出手段と、
前記指示位置検出手段により第１の指示位置が検出されたときに、前記速度を第１の速度に設定して、前記表示手段に表示された表示情報の先頭から前記次に表示すべき情報により表示を変更するように前記表示変更手段を制御する制御手段とを有し、
前記速度変更手段は、前記指示位置検出手段により第２の指示位置が検出されたときに、当該速度を第２の速度に変更することを特徴とする表示変更装置。
【請求項３】
前記第２の速度は、前記第１の速度より高速度であることを特徴とする請求項２に記載の表示変更装置。
【請求項４】
楽曲に関連した、複数区間長分の表示情報を所定区間長分、表示手段に表示させる表示工程と、
該表示された所定区間長分の表示情報中で、曲の演奏の進行に応じて移動させることにより現在の進行位置を指示する現在位置指示工程と、
該現在位置指示工程によって指示される現在の進行位置が移動するに従って、前記表示された表示情報中、前記現在位置指示工程により既に指示された領域を、前記現在位置指示工程の表示位置から離れた位置で次に表示すべき表示情報によって変更して行く表示変更工程と、
該表示変更工程によって前記表示情報が変更される速度を、前記現在位置指示工程によって指示される現在の進行位置が到達した、前記表示情報中の位置に応じて変更する速度変更工程と
を有することを特徴とする表示変更方法。
【請求項５】
楽曲に関連した、複数区間長分の表示情報を所定区間長分、表示手段に表示させる表示工程と、
該表示された所定区間長分の表示情報中で、曲の演奏の進行に応じて移動させることにより現在の進行位置を指示する現在位置指示工程と、
該現在位置指示工程によって指示される現在の進行位置が移動するに従って、前記表示された表示情報中、前記現在位置指示工程により既に指示された領域を、前記現在位置指示工程の表示位置から離れた位置で次に表示すべき表示情報によって変更して行く表示変更工程と、
該表示変更工程によって前記表示情報が変更される速度を、前記現在位置指示工程によって指示される現在の進行位置が到達した、前記表示情報中の位置に応じて変更する速度変更工程と
を有する表示変更方法をコンピュータに実行させるプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、表示手段に表示された表示情報中現在の進行位置を所定の表示態様によって指示するとともに、既に指示された領域を次に表示すべき表示情報によって変更する表示変更装置、表示変更方法および記憶媒体に関する。
【０００２】
【従来の技術】
表示手段に表示された表示情報中現在の進行位置を所定の表示態様によって指示するとともに、既に指示された領域を次に表示すべき表示情報によって変更する表示変更装置は、従来より知られている。
【０００３】
かかる従来の表示変更装置の典型例としては、表示手段（ディスプレイ）上に楽譜を表示し、演奏の進行に応じた進行位置を、表示楽譜上に所定の表示態様（たとえば、ポインタを表示させたり、色を変更したりするといった態様）で指示する楽譜表示装置がある。そして、従来の楽譜表示装置では、次に表示すべき楽譜を、下記の各種方法により表示させていた。
【０００４】
１）ディスプレイに１画面分（たとえば４小節分）の楽譜を表示し、この楽譜上における現在の演奏位置を示すポインタを、演奏の進行に従って移動させる。このポインタが楽譜の最終位置に到達すると、次の１画面分の楽譜を表示する。
【０００５】
２）１）と同様に、ディスプレイに表示された１画面分の楽譜上、演奏の進行に従ってポインタを移動させる。ポインタが所定距離（たとえば２小節）移動する度に、ポインタの移動が終了した表示領域、すなわち演奏が終了した表示領域の楽譜を、現在表示されている楽譜に続く楽譜に変更して表示する。
【０００６】
３）１）と同様に、ディスプレイに表示された１画面分の楽譜上、演奏の進行に従ってポインタを移動させる。ポインタから所定間隔だけ離れた位置にある楽譜であって、ポインタの移動が終了した楽譜を、ポインタの移動にあわせて逐次新しい楽譜に変更して表示する。
【０００７】
【発明が解決しようとする課題】
しかしながら、上記従来の表示変更装置、特に楽譜表示装置では、次のような問題があった。
【０００８】
すなわち、上記１）の装置では、表示されている楽譜に対する演奏が終了するまで、次の楽譜を見ることができず、楽曲の流れを表示された楽譜から掴むことは困難であった。
【０００９】
また、上記２）の装置では、所定部分（上記例では２小節分）の楽譜が一度に変更されてしまうので、ポインタが楽譜変更位置に達した直後、すなわち楽譜が変更された直後に、その直前の楽譜を確認することができず、不便であった。
【００１０】
さらに、上記３）の装置では、ポインタの進行位置から所定間隔離れた位置にある楽譜が逐次変更されるので、ユーザにとっては、その楽譜の進行に追い立てられるように感じられ、落ち着いて演奏できなくなっていた。
【００１１】
本発明は、この点に着目してなされたものであり、指示直後の表示情報を確認するとともに表示情報の全体像を掴むことができ、ユーザに対して不快な感情を抱かせない表示変更装置、表示変更方法および記憶媒体を提供することを目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成するため、請求項１記載の表示変更装置は、楽曲に関連した、複数区間長分の表示情報を所定区間長分、表示する表示手段と、該表示された所定区間長分の表示情報中で、曲の演奏の進行に応じて移動させることにより現在の進行位置を指示する現在位置指示手段と、該現在位置指示手段によって指示される現在の進行位置が移動するに従って、前記表示された表示情報中、前記現在位置指示手段により既に指示された領域を、前記現在位置指示手段の表示位置から離れた位置で次に表示すべき表示情報によって変更して行く表示変更手段と、該表示変更手段が前記表示情報を変更する速度を、前記現在位置指示手段によって指示される現在の進行位置が到達した、前記表示情報中の位置に応じて変更する速度変更手段とを有することを特徴とする。
【００１３】
ここで、表示情報は、画像情報であっても文字情報であってもよく、画像情報の例としては、楽譜情報が挙げられ、文字情報の例としては、歌詞情報が挙げられる（以下、請求項が変わっても同様）。
【００１４】
また、所定の表示態様とは、たとえば、所定形態のポインタ（位置指示表示）を表示したり、表示情報の色を初期の色から変更したりすることをいう。もちろん、これは例示であり、位置を表示によって指示できるものであればどのようなものであってもよい（以下、請求項が変わっても同様）。
【００１５】
速度変更手段により変更される速度は、現在の進行位置に応じて可変制御されるが、その制御方法としては、進行位置に応じて段階的（デジタル的）に変更する方法や、徐々に（アナログ的）に変更する方法等各種方法がある。
【００１６】
また、請求項２記載の表示変更装置は、楽音を発生させるための楽音情報と、該楽音情報に対応して、当該楽音情報に関連する表示情報とを記憶する記憶手段と、前記記憶された楽音情報および対応する表示情報を読み出す読み出し手段と、該読み出された楽音情報に基づいて楽音を発生する楽音発生手段と、前記読み出された表示情報を表示する表示手段と、前記読み出し手段による楽音情報の読み出し進行に従って、前記表示手段に表示された表示情報中で、現在の進行位置を移動させて指示する現在位置指示手段と、該現在位置指示手段によって指示される現在の進行位置が移動するに従って、前記表示された表示情報中、前記現在位置指示手段により既に指示された領域を、前記現在位置指示手段の表示位置から離れた位置で次に表示すべき表示情報によって変更して行く表示変更手段と、該表示変更手段が前記表示情報を変更する速度を変更する速度変更手段と、前記現在位置指示手段が指示する進行位置を検出する進行位置検出手段と、前記指示位置検出手段により第１の指示位置が検出されたときに、前記速度を第１の速度に設定して、前記表示手段に表示された表示情報の先頭から前記次に表示すべき情報により表示を変更するように前記表示変更手段を制御する制御手段とを有し、前記速度変更手段は、前記指示位置検出手段により第２の指示位置が検出されたときに、当該速度を第２の速度に変更することを特徴とする。
【００１７】
ここで、第１の指示位置は、基本的には、表示された表示情報中いずれかの位置に限定されるものではないが、表示情報の先頭位置から所定距離（たとえば、表示情報全体の２／３、３／４等）以上離れていることが望ましい。また、第２の指示位置は、第１の指示位置より楽音情報の読み出しが進行した位置であり、この位置も、基本的には、第１の指示位置から表示位置の終端位置までのいずれの位置であってもよいが、終端位置により近い位置（たとえば終端位置そのもの）であることが望ましい。さらに、第２の指示位置および第２の速度をそれぞれ複数種類設け、各指示位置に対応して速度を変更するようにしてもよい。（以下、請求項が変わっても同様）
上記目的を達成するため、請求項４記載の表示変更方法は、楽曲に関連した、複数区間長分の表示情報を所定区間長分、表示手段に表示させる表示工程と、該表示された所定区間長分の表示情報中で、曲の演奏の進行に応じて移動させることにより現在の進行位置を指示する現在位置指示工程と、該現在位置指示工程によって指示される現在の進行位置が移動するに従って、前記表示された表示情報中、前記現在位置指示工程により既に指示された領域を、前記現在位置指示工程の表示位置から離れた位置で次に表示すべき表示情報によって変更して行く表示変更工程と、該表示変更工程によって前記表示情報が変更される速度を、前記現在位置指示工程によって指示される現在の進行位置が到達した、前記表示情報中の位置に応じて変更する速度変更工程とを有することを特徴とする。
【００１８】
上記目的を達成するため、請求項５に記載の記憶媒体は、楽曲に関連した、複数区間長分の表示情報を所定区間長分、表示手段に表示させる表示工程と、該表示された所定区間長分の表示情報中で、曲の演奏の進行に応じて移動させることにより現在の進行位置を指示する現在位置指示工程と、該現在位置指示工程によって指示される現在の進行位置が移動するに従って、前記表示された表示情報中、前記現在位置指示工程により既に指示された領域を、前記現在位置指示工程の表示位置から離れた位置で次に表示すべき表示情報によって変更して行く表示変更工程と、該表示変更工程によって前記表示情報が変更される速度を、前記現在位置指示工程によって指示される現在の進行位置が到達した、前記表示情報中の位置に応じて変更する速度変更工程とを有する表示変更方法をコンピュータに実行させるプログラムを格納したことを特徴とする。
【００１９】
好ましくは、前記表示情報は、画像情報と、該画像情報および前記楽音情報を対応付ける対応情報とを含むことを特徴とする。
【００２０】
ここで、対応情報は、たとえば、画像情報中音符（楽音情報中のキーオンイベント）が存在する座標位置を示す座標情報と、隣接する座標情報間の時間間隔を示す間隔情報とにより構成される。もちろん、これは例示に過ぎず、間隔情報に代えて、座標情報が位置する時間を絶対時間で表わした絶対時間情報を採用してもよいし、対応情報を、座標情報＋間隔情報（または絶対時間情報）以外の情報で構成してもよい。
【００２１】
さらに、好ましくは、前記第２の速度は、前記第１の速度より高速度であることを特徴とする。
【００２２】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
【００２３】
本発明の一実施の形態に係る表示変更装置は、楽譜を表示するとともにこの楽譜上の音符を自動演奏する機能を備えたものであって、次のように動作する。
【００２４】
すなわち、表示部に表示された楽譜上に、自動演奏の進行位置を示すポインタを表示させ、このポインタを自動演奏の進行に従って移動させ、ポインタが第１の位置（たとえば表示楽譜の７５％の位置）に到達したときに、既に表示されている楽譜を次に表示すべき楽譜によって更新（表示変更）するためのワイパを、表示楽譜の先頭から第１の速度（たとえば、ポインタの速度の２倍）で移動させ、ポインタが第２の位置（たとえば表示楽譜の最後の位置）に到達したときに、ワイパの移動速度を第２の速度（たとえば、ポインタの速度の４倍）に変更する。
【００２５】
図１は、本実施の形態の表示変更装置の概略構成を示すブロック図である。
【００２６】
同図において、本実施の形態の表示変更装置は、主に文字情報を入力するためのキーボード１と、ポインティングデバイスであるマウス２と、キーボード１の各キーの操作状態を検出するキー操作検出回路３と、マウス２の操作状態を検出するマウス操作検出回路４と、装置全体の制御を司るＣＰＵ５と、該ＣＰＵ５が実行する制御プログラムやテーブルデータ等を記憶するＲＯＭ６と、図２を用いて後述する楽音データや対応データ、各種入力情報および演算結果等を一時的に記憶するＲＡＭ７と、タイマ割込み処理における割込み時間や各種時間を計時するタイマ８と、各種情報等を表示する、たとえば大型液晶ディスプレイ（ＬＣＤ）若しくはＣＲＴ（Cathode Ray Tube）ディスプレイおよび発光ダイオード（ＬＥＤ）等を備えた表示部９と、記憶媒体であるフロッピディスク（ＦＤ）２０をドライブするフロッピディスクドライブ（ＦＤＤ）１０と、前記制御プログラムを含む各種アプリケーションプログラムや各種データ等を記憶するハードディスク（図示せず）をドライブするハードディスクドライブ（ＨＤＤ）１１と、前記制御プログラムを含む各種アプリケーションプログラムや各種データ等を記憶するコンパクトディスク−リード・オンリ・メモリ（ＣＤ−ＲＯＭ）２１をドライブするＣＤ−ＲＯＭドライブ（ＣＤ−ＲＯＭＤ）１２と、外部からのＭＩＤＩ（Musical Instrument Digital Interface）信号を入力したり、ＭＩＤＩ信号（コード）として外部に出力したりするＭＩＤＩインターフェース（Ｉ／Ｆ）１３と、通信ネットワーク１０１を介して、たとえばサーバコンピュータ１０２とデータの送受信を行う通信インターフェース（Ｉ／Ｆ）１４と、ＭＩＤＩＩ／Ｆ１３や通信Ｉ／Ｆ１４を介して入力された楽音データや予め設定された楽音データ等を楽音信号に変換する音源回路１５と、該音源回路１５からの楽音信号に各種効果を付与するための効果回路１６と、該効果回路１６からの楽音信号を音響に変換する、たとえば、ＤＡＣ（Digital-to-Analog Converter）やアンプ、スピーカ等のサウンドシステム１７とにより構成されている。
【００２７】
上記構成要素３〜１６は、バス１８を介して相互に接続され、ＣＰＵ５にはタイマ８が接続され、ＭＩＤＩＩ／Ｆ１３には他のＭＩＤＩ機器１００が接続され、通信Ｉ／Ｆ１４には通信ネットワーク１０１が接続され、音源回路１５には効果回路１６が接続され、効果回路１６にはサウンドシステム１７が接続されている。
【００２８】
ＨＤＤ１１のハードディスクには、前述のように、ＣＰＵ５が実行する制御プログラムも記憶でき、ＲＯＭ６に制御プログラムが記憶されていない場合には、このハードディスクに制御プログラムを記憶させておき、それをＲＡＭ７に読み込むことにより、ＲＯＭ６に制御プログラムを記憶している場合と同様の動作をＣＰＵ５にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。
【００２９】
ＣＤ−ＲＯＭドライブ１２のＣＤ−ＲＯＭ２１から読み出された制御プログラムや各種データは、ＨＤＤ１１内のハードディスクにストアされる。これにより、制御プログラムの新規インストールやバージョンアップ等が容易に行える。なお、このＣＤ−ＲＯＭドライブ１２以外にも、外部記憶装置として、光磁気ディスク（ＭＯ）装置等、様々な形態のメディアを利用するための装置を設けるようにしてもよい。
【００３０】
通信Ｉ／Ｆ１４は、上述のように、たとえばＬＡＮ（Local Area Network）やインターネット、電話回線等の通信ネットワーク１０１に接続されており、該通信ネットワーク１０１を介して、サーバコンピュータ１０２に接続される。ＨＤＤ１１内のハードディスクに上記各プログラムや各種パラメータが記憶されていない場合には、通信Ｉ／Ｆ１４は、サーバコンピュータ１０２からプログラムやパラメータをダウンロードするために用いられる。クライアントとなるコンピュータ（本実施の形態では、表示変更装置）は、通信Ｉ／Ｆ１４および通信ネットワーク１０１を介してサーバコンピュータ１０２へとプログラムやパラメータのダウンロードを要求するコマンドを送信する。サーバコンピュータ１０２は、このコマンドを受け、要求されたプログラムやパラメータを、通信ネットワーク１０１を介してコンピュータへと配信し、コンピュータが通信Ｉ／Ｆ１４を介して、これらプログラムやパラメータを受信してＨＤＤ１１内のハードディスクに蓄積することにより、ダウンロードが完了する。
【００３１】
この他、外部コンピュータ等との間で直接データのやりとりを行うためのインターフェースを備えてもよい。
【００３２】
図２は、前記ＲＡＭ７の所定領域に記憶された楽音データおよび対応データの一例を示す図であり、（ａ）が楽音データの一例を示し、（ｂ）が対応データの一例を示している。
【００３３】
楽音データは、自動演奏を行うためのデータであり、たとえばＭＩＤＩコードによって構成される。もちろん、ＭＩＤＩコードで構成しなければならないというものではない。対応データは、表示部９に楽譜を表示するときに使用するためのデータである。楽譜、ポインタおよびワイパの表示のためには、この他に、画像データ（画像データは、典型的にはビットマップデータであるので、以下、ビットマップデータに限定して説明するが、これに限られるものでないことはいうまでもない）も必要であるが、説明の都合上、その図示を省略している。
【００３４】
（ａ）に示すように、楽音データは、当該曲全体のテンポを示すテンポデータ（初期設定データの一つ）と、楽音の発音を指示するためのキーオンイベントデータと、発音された楽音の消音を指示するためのキーオフイベントデータと、キーオンイベントデータまたはキーオフイベントデータの発生タイミングを示すタイミングデータと、当該曲の終わりを示すエンドデータとにより、主として構成されている。
【００３５】
キーオンイベントデータは、前記音源回路１５に対して発音を指示するキーオンデータと、このイベントの音高を示すノートナンバと、このイベントのベロシティを示すベロシティデータとにより構成されている。
【００３６】
また、キーオフイベントデータは、そのデータ構成は図示されていないが、音源回路１５に対して消音を指示するキーオフデータと、このイベントの音高を示すノートナンバにより構成されている。なお、キーオンイベントデータと同様に、ベロシティデータもキーオフイベントデータに含めるようにしてもよいが、ベロシティデータは、消音時には通常使用しないことが多いため、本実施の形態では、キーオフイベントデータに含めていない。
【００３７】
なお、本実施の形態では、楽音データを上述のように「イベントデータ＋タイミングデータ（相対データ）」という構成にしたが、これに限らず、たとえば「イベントデータ＋絶対時間データ」、「音高データ＋符長データ」等どのような構成にしてもよい。
【００３８】
対応データは、上記楽音データとビットマップデータとを対応づける情報を備えたデータをいい、（ｂ）に示すように、複数の区間長データと、キーオンイベントデータに対応する座標データと、座標データ間の時間間隔をクロック数（後述するタイマ割込み処理（図７および図８）の基準となるタイマ割込み時間間隔を単位とする整数値）で表わした間隔時間データと、当該対応データの終端を示すエンドデータとにより、主として構成されている。
【００３９】
各区間長データは、表示部９の１画面に表示される楽譜長（座標長）を示すデータであり、たとえば画素数で表される。このような区間長データを必要とするのは、表示に係る楽譜の楽譜長は最初の表示画面から最後の表示画面まで一定ではなく、たとえば１画面に４小節分表示可能な場合に、最後の表示画面では、表示すべき楽譜が４小節より少ない小節分残るのみという場合があるからである。この区間長データに基づいて、対応する１画面分のビットマップデータが読み出されて表示される。本実施の形態では、ビットマップデータのうち、楽譜表示に使用されるデータは、曲全体に亘って予め作成され、区間長データに応じて読み出される。もちろん、これに限らず、楽譜を表示するときに、対応するビットマップデータを、たとえば、各種音符を表示させるために各音符毎に用意されたビットマップデータ、および楽音データ等に基づいて作成し、この作成されたビットマップデータを使用するようにしてもよい。
【００４０】
座標データは、ビットマップデータ中、音符が位置する座標、すなわち前記キーオンイベントデータが位置する座標を示すデータである。
【００４１】
間隔時間データは、ビットマップデータ中、隣接する音符間をポインタが移動するのに必要とする時間間隔を示し、前記クロック数で与えられる。したがって、間隔時間データにより示される時間と、隣接するキーオンイベントデータ間の時間間隔とは一致する。しかし、タイミングデータとは別に、間隔時間データを設けるようにしたのは、ポインタおよびワイパの移動速度を間隔時間データに基づいて決定するとともに、ワイパの移動速度をポインタの位置に従って変更するようにしたので、この制御をタイミングデータのみで行わせるのは制御が複雑になってしまうからである。もちろん、制御が複雑化しても、対応データを記憶するメモリ容量を低減化させたい場合には、楽音データのみで表示制御を行わせることができる。
【００４２】
なお、本実施の形態では、対応データを上述のように「座標データ＋間隔時間データ（相対データ）」という構成にしたが、これに限らず、たとえば「座標データ＋絶対時間データ」のような構成にしてもよい。
【００４３】
また、楽音データ、対応データおよびビットマップデータ（画像データ）は、それぞれ複数個用意され、各楽音データに対応して対応データおよびビットマップデータが、たとえば前記ハードディスク等の外部記憶媒体に記憶され、そのうちユーザが指示したもののみが読み出されてＲＡＭ７の所定の記憶領域に格納される。
【００４４】
以上のように構成された表示変更装置が実行する制御処理を、以下、まず図３を参照してその概要を説明し、次の図４〜図８に基づいて詳細に説明する。
【００４５】
図３は、表示部９に表示された楽譜の一例を示す図であり、（ａ）は、ポインタＰのみが移動している状態を示し、（ｂ）は、ポインタＰが第１の表示位置から第２の表示位置の間を移動しているときのワイパＷの移動状態を示し、（ｃ）は、ポインタＰが第２の表示位置にあるときのワイパＷの移動状態を示し、（ｄ）は、ポインタＰが楽譜の先頭に位置したときのワイパＷの移動状態を示している。
【００４６】
演奏が開始されると、（ａ）に示すように、ポインタＰのみが、演奏の進行に従って楽譜上を移動していく。そして、ポインタＰが、第１の表示位置（本実施の形態では、表示された楽譜全体の７５％の位置）に到達したときに、ワイパＷが出現して、ポインタＰと同方向に移動しながら、（ｂ）に示すように、既に演奏を終了した領域を次に表示されるべき楽譜に変更していく。このとき、ポインタＰの移動速度に対して、ワイパＷの移動速度は、本実施の形態では２倍に設定されている。
【００４７】
さらに、ポインタＰが移動し、（ｃ）に示すように、第２の表示位置（本実施の形態では、楽譜の最後）に到達すると、ワイパＷの移動速度を２倍から４倍に変更する。そして、ポインタＰは、（ｄ）に示すように、次の楽譜の先頭に移動し、（ａ）で説明したように、この楽譜上を移動していく。このとき、ワイパＷは、その速度がより高速度に設定されているため、既に演奏が終了した楽譜は、すばやく次の楽譜に変更されていく。
【００４８】
図４は、本実施の形態の表示変更装置、特にＣＰＵ５が実行するメインルーチンの手順を示すフローチャートである。
【００４９】
同図において、まず、ＲＡＭ７のクリア等の初期設定を行う（ステップＳ１）。
【００５０】
次に、自動演奏の開始が指示されたか否かを判別する（ステップＳ２）。ここで、自動演奏の開始の指示は、たとえば、前記表示部９に表示されたスタートボタン（図示せず）を、ユーザが前記マウス２でクリックすることによって行う。
【００５１】
ステップＳ２で、自動演奏の開始が指示されたときには、図５を用いて後述する演奏初期設定処理サブルーチンを実行する（ステップＳ３）一方、自動演奏の開始が指示されないときには、ステップＳ３をスキップしてステップＳ４に進む。
【００５２】
ステップＳ４では、自動演奏の終了が指示されたか否かを判別する。この自動演奏の終了の指示も、たとえば、表示部９に表示されたストップボタン（図示せず）を、ユーザがマウス２でクリックすることによって行う。
【００５３】
ステップＳ４で、自動演奏の終了が指示されたときには、発音中の楽音の発音を停止させるとともに楽譜の表示を終了させ（ステップＳ５）、本実施の形態の表示変更装置が自動演奏中であることを“１”で示す自動演奏中フラグｒｕｎをリセット（“０”）した後に、ステップＳ７に進む一方、自動演奏の終了が指示されないときには、ステップＳ５およびＳ６をスキップしてステップＳ７に進む。
【００５４】
ステップＳ７では、たとえば、ユーザが音色の変更を指示したときの音色変更処理、複数の楽音データから自動演奏させる楽音データを選択する処理、楽音データが複数パート（メロディ、伴奏、リズム等の各パート）で構成されているような場合にどのパートに対して楽譜表示を行うかを選択する処理（複数パートの同時選択ももちろん可能）等のその他処理を実行し、続くステップＳ８では、本メインルーチンを終了させる指示がなされたか否かを判別する。この指示も、表示部９に表示された終了ボタン（図示せず）をマウス２でクリックすることによって行う。
【００５５】
ステップＳ８で、終了が指示されたときには、本メインルーチンを終了する一方、終了が指示されないときには、前記ステップＳ２に戻って、上述の処理を繰り返す。
【００５６】
図５は、ステップＳ３の演奏初期設定処理サブルーチンの詳細な手順を示すフローチャートである。
【００５７】
同図において、まず、前記図２（ｂ）の対応データ中、第１区間長データを読み出し、この区間長データが示す区間長に対応する楽譜のビットマップデータ（画像データ）をＲＡＭ７のビットマップデータ記憶領域から読み出す。そして、このビットマップデータに基づいて、楽譜を、表示部９に１画面分表示する（ステップＳ１１）。
【００５８】
次に、前記ポインタＰが、表示された楽譜の先頭に表示されるように設定する（ステップＳ１２）。具体的には、ポインタＰのビットマップデータを上記ビットマップデータ記憶領域から読み出し、このビットマップデータに基づき、ポインタＰが楽譜の先頭に表示されるように、ステップＳ１１の表示画面を変更する。
【００５９】
続くステップＳ１３では、前記楽音データ内の初期設定データ（前記図２（ａ）のテンポデータ等）を前記音源回路１５に送信し、ステップＳ１４では、楽音データ内の先頭のタイミングデータを読み出して、楽音データの各イベントデータの発生タイミングをカウントするために、ＲＡＭ７上に設けられたソフトカウンタｔｉｍｉｎｇに設定する。
【００６０】
そして、前記対応データ内の先頭の座標データと次の座標データとの座標間隔をこの２つの座標データ値から算出し、この算出された座標間隔および先頭の間隔時間データの値からポインタＰの移動速度を算出して、ＲＡＭ７に確保された領域ｓｐｅｅｄ（以下、この内容を「移動速度ｓｐｅｅｄ」という）に設定する（ステップＳ１５）。すなわち、移動速度ｓｐｅｅｄとは、ポインタＰが１座標（１画素）移動するのに必要なクロック数を示すものであり、その算出方法から分かるように、ポインタＰの移動速度は、楽譜上の隣接する音符間毎に算出されて変更される。
【００６１】
さらに、自動演奏が開始されてからの総クロック数（タイマ割込みの時間間隔を単位とする整数値）をカウントするために、ＲＡＭ７上に確保されたソフトカウンタｓｏｎｇｔｉｍｅ（以下、この内容を「総クロック数ｓｏｎｇｔｉｍｅ」という）をクリア（“０”）し（ステップＳ１６）、自動演奏が開始されてから読み出された間隔時間データの総和を記憶するために、ＲＡＭ７に確保された領域ｐｏｉｎｔｅｒｔｉｍｅ（以下、この内容を「ポインタ移動時間ｐｏｉｎｔｅｒｔｉｍｅ」という）に、前記先頭の間隔時間データ値を設定し（ステップＳ１７）、前記自動演奏中フラグｒｕｎをセット（“１”）した（ステップＳ１８）後に、本演奏初期設定処理を終了する。
【００６２】
図６は、タイマ割込み処理のうち、楽譜表示を行う表示割込み処理サブルーチンの手順を示すフローチャートである。本割込み処理は、４分音符の時間間隔内に４８０回発生するタイマ割込みに応じて起動され、実行される。したがって、テンポに応じてタイマ割込みの時間間隔は変動する。
【００６３】
同図において、まず、自動演奏中フラグｒｕｎが“１”であるか否かを判別し（ステップＳ２１）、ｒｕｎ＝０、すなわち自動演奏中でないときには本表示割込み処理を直ちに終了する一方、ｒｕｎ＝１、すなわち自動演奏中のときにはステップＳ２２に進む。
【００６４】
ステップＳ２２では、割込み回数をカウントするカウンタｃｏｕｎｔを“１”だけインクリメントし、ステップＳ２３では、ワイパＷの移動速度を示すために、ＲＡＭ７に確保されたインデックス領域ｗｉｐｅ（以下、この内容を「ワイパ移動速度ｗｉｐｅ」という）が“０”であるか否かを判別する。ここで、ワイパ移動速度ｗｉｐｅは０〜２のいずれかの整数値を採り、“０”のときには、ワイパＷが表示されていない状態を示し、“１”のときには、ワイパＷがポインタＰの移動速度の２倍の速度で移動している状態を示し、“２”のときには、ワイパＷがポインタＰの移動速度の４倍の速度で移動している状態を示している。
【００６５】
ステップＳ２３で、ｗｉｐｅ≠０のとき、すなわちワイパＷが移動しているときには、図７を用いて後述する表示変更処理サブルーチンを実行する（ステップＳ２４）一方、ｗｉｐｅ＝０のとき、すなわちワイパＷが表示されていないときには、ステップＳ２４をスキップしてステップＳ２５に進む。
【００６６】
ステップＳ２５では、総クロック数ｓｏｎｇｔｉｍｅがポインタ移動時間ｐｏｉｎｔｅｒｔｉｍｅに一致しているか否かを判別し、ｓｏｎｇｔｉｍｅ＝ｐｏｉｎｔｅｒｔｉｍｅのとき、すなわちポインタＰが表示された音符上に重なるべき位置にあるときには、対応データ内で、当該キーオンイベントに対応する座標データを１つ読み出し（ステップＳ２６）、該座標データと次の座標データとの座標間隔をこの２つの座標データから算出し、この算出された座標間隔および上記読み出された座標データに対応する間隔時間データの値から、ポインタＰの移動速度を算出して、移動速度ｓｐｅｅｄに設定し（ステップＳ２７）、ポインタＰの表示位置を上記読み出された座標データに進め（ステップＳ２８）、ポインタ移動時間ｐｏｉｎｔｅｒｔｉｍｅに、上記読み出された座標データに対応する間隔時間データを加算した（ステップＳ２９）後に、後述するステップＳ３２に進む。
【００６７】
このように、ステップＳ２５で、総クロック数ｓｏｎｇｔｉｍｅがポインタ移動時間ｐｏｉｎｔｅｒｔｉｍｅに一致しているか否かを判別し、ｓｏｎｇｔｉｍｅ＝ｐｏｉｎｔｅｒｔｉｍｅのときに、ステップＳ２６〜Ｓ２９の処理を実行するようにしたのは、次の理由による。
【００６８】
すなわち、上述したように、ポインタＰは隣接する各音符間において異なる（同じ場合もある）速度で移動するように設定されている。これは、楽音の発生とポインタＰの指示位置との正確な同期をとるためである。ポインタＰの移動速度を、このように設定するようにした結果、次の音符の楽音が発音されているにも拘わらず、ポインタＰが当該音符を指示していないという状態が発生する場合があり、この場合を考慮して、音符の発音タイミングでは、ステップＳ２６〜Ｓ２９の処理を実行するようにして、必ずポインタＰを当該音符の座標位置に移動するようにしている。
【００６９】
一方、ステップＳ２５で、ｓｏｎｇｔｉｍｅ≠ｐｏｉｎｔｅｒｔｉｍｅのときには、移動速度ｓｐｅｅｄがカウンタｃｏｕｎｔの値より大きいか否かを判別する（ステップＳ３０）。ここで、移動速度ｓｐｅｅｄには、前述したように、ポインタＰが１座標移動するのに必要なクロック数が設定されているため、ステップＳ３０は、ポインタＰを１座標移動させる時間が経過したか否かを判別している。すなわち、この判別結果が“ＹＥＳ”のとき「まだ経過せず」を示す一方、“ＮＯ”のとき「経過した」を示している。
【００７０】
ステップＳ３０で、ｓｐｅｅｄ＞ｃｏｕｎｔ（判別結果が“ＹＥＳ”；まだ経過せず）のときには、直ちに本表示割込み処理を終了する一方、ｓｐｅｅｄ≦ｃｏｕｎｔ（判別結果が“ＮＯ”；経過した）のときには、ポインタＰの表示位置を１座標分進め（ステップＳ３１）、カウンタｃｏｕｎｔをリセットした（ステップＳ３２）後に、ポインタＰの座標位置が表示楽譜の７５％の位置にあるか否かを判別する（ステップＳ３３）。ここで、表示楽譜の７５％の位置とは、１画面に４小節分の楽譜が表示されることを想定した場合に、３小節目近傍の位置に相当する。また、ポインタＰが７５％位置にあるか否かは、たとえば１画面分の座標間隔を算出（または予め設定）し、この値に基づいて行うようにすればよい。
【００７１】
ステップＳ３３で、ポインタＰの座標位置が表示楽譜の７５％の位置にあるときには、ワイパ移動速度ｗｉｐｅを“１”、すなわちポインタＰの移動速度の２倍の速度に設定し（ステップＳ３４）、ワイパＷを表示楽譜の先頭の位置に設定した（ステップＳ３５）後に、本表示割込み処理を終了する。
【００７２】
一方、ステップＳ３３で、ポインタＰの座標位置が表示楽譜の７５％の位置でないときには、その位置が表示楽譜の最終位置にあるか否かを判別する（ステップＳ３６）。
【００７３】
ステップＳ３６で、ポインタＰの座標位置が表示楽譜の最終位置にあるときには、ワイパ移動速度ｗｉｐｅを“２”、すなわちポインタＰの移動速度の４倍の速度に設定した（ステップＳ３７）後に、本表示割込み処理を終了する一方、ポインタＰの座標位置が表示楽譜の最終位置でないときには、直ちに本表示割込み処理を終了する。
【００７４】
図７は、前記ステップＳ２４の表示変更処理サブルーチンの詳細な手順を示すフローチャートである。
【００７５】
同図において、まず、次に表示すべき楽譜があるか否かを判別し（ステップＳ４１）、次に表示すべき楽譜がないときには、本表示変更処理を直ちに終了する一方、次に表示すべき楽譜があるときには、本表示変更処理を行った回数をカウントするために、ＲＡＭ７上に確保されたカウンタｗｉｐｅｃｏｕｎｔ（以下、この内容を「表示変更処理回数ｗｉｐｅｃｏｕｎｔ」という）を“１”だけインクリメントし（ステップＳ４２）、ワイパ移動速度ｗｉｐｅが“１”であるか否かを判別する（ステップＳ４３）。
【００７６】
ステップＳ４３で、ｗｉｐｅ＝１のとき、すなわちワイパＷの移動速度がポインタＰの移動速度の２倍のときには、移動速度ｓｐｅｅｄの１／２が表示変更処理回数ｗｉｐｅｃｏｕｎｔより大きいか否かを判別する（ステップＳ４４）。このステップＳ４４の判別処理の趣旨は、前記ステップＳ３０と同様である。ただし、ステップＳ３０が、移動速度ｓｐｅｅｄそのものとカウンタｃｏｕｎｔの値とを比較しているのに対して、ステップＳ４４では、移動速度ｓｐｅｅｄの１／２と表示変更処理回数ｗｉｐｅｃｏｕｎｔ（これは、実質的にはカウンタｃｏｕｎｔと相違しない）の値とを比較している点が異なっている。これは、ワイパＷをポインタＰの移動速度の２倍の速度で移動させるようにするためである。
【００７７】
ステップＳ４４で、ｓｐｅｅｄ／２≦ｗｉｐｅｃｏｕｎｔのとき、すなわちワイパＷを１座標移動させる時間が経過したときには、ワイパＷの表示位置を１座標分移動させつつ、対応する新しい楽譜を表示し（ステップＳ４５）、表示変更処理回数ｗｉｐｅｃｏｕｎｔをリセットした（ステップＳ４６）後に、ステップＳ４７に進む一方、ｓｐｅｅｄ／２＞ｗｉｐｅｃｏｕｎｔのとき、すなわちワイパＷを１座標移動させる時間が経過しないときには、ステップＳ４５およびＳ４６をスキップしてステップＳ４７に進む。
【００７８】
ステップＳ４７では、１区間分の楽譜の表示を完了したか否かを判別し、１区間分の楽譜の表示を完了したとき、すなわち表示楽譜が全て新しい楽譜に変更されたときには、ワイパ移動速度ｗｉｐｅをリセットした（ステップＳ４８）後に、本表示変更処理を終了する一方、１区間分の楽譜の表示を完了しないときには、直ちに本表示変更処理を終了する。
【００７９】
一方、ステップＳ４３で、ｗｉｐｅ≠１のとき、すなわちｗｉｐｅ＝２であって、ワイパＷの移動速度がポインタＰの移動速度の４倍のときには、移動速度ｓｐｅｅｄの１／４が表示変更処理回数ｗｉｐｅｃｏｕｎｔより大きいか否かを判別する（ステップＳ４９）。
【００８０】
ステップＳ４９で、ｓｐｅｅｄ／４≦ｗｉｐｅｃｏｕｎｔのとき、すなわちワイパＷを１座標移動させる時間が経過したときには、上記ステップＳ４５と同様にして、ワイパＷの表示位置を１座標分移動させつつ、対応する新しい楽譜を表示した（ステップＳ５０）後に、前記ステップＳ４６に進む一方、ｓｐｅｅｄ／４＞ｗｉｐｅｃｏｕｎｔのとき、すなわちワイパＷを１座標移動させる時間が経過しないときには、ステップＳ５０およびＳ４６をスキップして前記ステップＳ４７に進む。
【００８１】
図８は、タイマ割込み処理のうち、自動演奏を行う演奏割込み処理サブルーチンの手順を示すフローチャートである。本割込み処理も、上記表示割込み処理と同様に、４分音符の時間間隔内に４８０回発生するタイマ割込みに応じて起動され、実行される。
【００８２】
同図において、まず、自動演奏中フラグｒｕｎが“１”であるか否かを判別し（ステップＳ６１）、ｒｕｎ≠１、すなわちｒｕｎ＝０であって自動演奏中でないときには、直ちに本演奏割込み処理を終了する一方、ｒｕｎ＝１であって自動演奏中のときにはステップＳ６２に進む。
【００８３】
ステップＳ６２では、タイミングｔｉｍｉｎｇが“０”であるか否かを判別し、ｔｉｍｉｎｇ≠０であって、イベントデータの発生タイミングでないときには、タイミングｔｉｍｉｎｇを“１”だけデクリメントし（ステップＳ６３）、総クロック数ｓｏｎｇｔｉｍｅを“１”だけインクリメントした（ステップＳ６４）後に、本演奏割込み処理を終了する。
【００８４】
一方、ステップＳ６２で、ｔｉｍｉｎｇ＝０であって、イベントデータの発生タイミングのときには、当該イベントデータを演奏データから１つ読み出し（ステップＳ６５）、読み出されたデータが前記エンドデータであるか否かを判別する（ステップＳ６６）。
【００８５】
ステップＳ６６で、読み出されたデータがエンドデータのときには、そのデータを前記音源回路１５に送信し（ステップＳ６７）、自動演奏中フラグｒｕｎをリセットした（ステップＳ６８）後に、本演奏割込み処理を終了する。
【００８６】
一方、ステップＳ６６で、読み出されたデータがエンドデータでないときには、そのデータはタイミングデータであるか否かを判別する（ステップＳ６９）。
【００８７】
ステップＳ６９で、読み出されたデータがタイミングデータでないときには、そのデータはイベントデータ、すなわちオンイベントデータまたはオフイベントデータであるので、そのデータを前記音源回路１５に送信した（ステップＳ７０）後に、前記ステップＳ６２に戻る一方、読み出されたデータがタイミングデータのときには、そのデータ値をタイミングｔｉｍｉｎｇに設定した後に、前記ステップＳ６２に戻る。
【００８８】
このように、本実施の形態では、ワイパＷによる新たな楽譜への変更表示がポインタＰの指示位置から離れた位置（楽譜全体の７５％前後離れた位置）で実行されるので、ユーザは現在演奏が進行している位置前後の楽譜を確認することができる。また、ワイパＷの移動速度を２種類の速度に可変とし、最初はポインタＰの移動速度に対して２倍の速度に設定し、ポインタＰが楽譜の最後に到達するとその速度をさらに２倍（ポインタＰの移動速度の４倍）に変更するようにしたので、自動演奏の進行に対して、ワイパＷによる新たな楽譜への変更表示が遅れず、したがって、ユーザが焦り等の不快感を感じることなく、スムーズに新たな楽譜への変更表示がなされる。
【００８９】
本実施の形態では、表示部９上に表示された楽譜を新たな楽譜に表示変更する例を説明したが、楽譜は画像情報の一例であって、複数画面分の画像情報を順次切り替えて表示していくものであれば、楽譜に限る必要はないことはいうまでもない。もちろん、画像情報に代えて、たとえば歌詞のような文字情報を表示部９上に表示させ、この表示を新たな表示に表示変更するようにしてもよい。
【００９０】
また、本実施の形態では、ワイパＷが移動を開始する位置およびワイパＷの移動速度を変更する位置は、予め固定的に設定されているが、ユーザが自由に変更できるようにしてもよい。同様に、ワイパＷの移動速度は、２段階に予め固定的に設定されているが、この段階数は“２”に限らないことはいうまでもなく、さらに、段階数をユーザが自由に設定できるようにしてもよい。また、ワイパＷの移動速度を徐々に加速して行くようにしてもよい。
【００９１】
また、本実施の形態では、ポインタＰの移動速度ｓｐｅｅｄおよびワイパＷの移動速度ｗｉｐｅを、隣接する音符間毎に変更するようにしたが、これに限らず、常に一定の速度に設定するようにしてもよい。
【００９２】
さらに、本実施の形態では、自動演奏の進行位置をポインタＰによって指示しているが、これに限らず、たとえば、楽譜（または歌詞）の表示色を順次変更する等によって指示するようにしてもよい。この表示色を順次変更する場合には、現在演奏中の位置のみの表示色を変更する方法、現在演奏中の位置までの演奏が終了した領域の表示色を変更する方法等が考えられる。
【００９３】
なお、上述した各実施の形態の機能を実現するソフトウェアのプログラムを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ（またはＣＰＵ５やＭＰＵ）が記憶媒体に格納されたプログラムを読出し実行することによっても、本発明の目的が達成されることは云うまでもない。
【００９４】
この場合、記憶媒体から読出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記憶した記憶媒体は本発明を構成することになる。
【００９５】
プログラムを供給するための記憶媒体としては、たとえば、前記ＨＤＤ１１のハードディスク、ＣＤ−ＲＯＭ２１，ＭＯ，ＭＤ，フロッピーディスク２０、ＣＤ−Ｒ（CD- Recordable）、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。また、他のＭＩＤＩ機器１００や通信ネットワーク１０１を介してサーバコンピュータ１０２からプログラムが供給されるようにしてもよい。
【００９６】
また、コンピュータが読出したプログラムを実行することにより、上述した各実施の形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは云うまでもない。
【００９７】
さらに、記憶媒体から読出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ５などが実際の処理の一部または全部を行い、その処理によって上述した各実施の形態の機能が実現される場合も含まれることは云うまでもない。
【００９８】
【発明の効果】
以上説明したように、請求項１，４，５記載の発明に依れば、表示手段に表示された所定区間長分の表示情報中、既に指示された領域を次に表示すべき表示情報によって変更するときに、その変更速度が、現在の進行位置が到達した、前記表示情報中の位置に応じて可変されるので、進行位置の進行に対して、新たな表示情報への変更表示が遅れず、したがって、ユーザが焦り等の不快感を感じることなく、スムーズに新たな表示情報への変更表示を行うことが可能となる効果を奏する。
【００９９】
請求項２記載の発明に依れば、第１の指示位置が検出されたときに、変更速度が第１の速度に設定されて、表示手段に表示された表示情報の先頭から、次に表示すべき情報によって表示が変更され、第２の指示位置が検出されたときに、前記変更速度が第２の速度に変更されるので、上記効果と同様の効果を得ることができる。そして、第１の指示位置が、表示情報の先頭位置から離れた位置に設定された場合には、ユーザは現在演奏が進行している位置前後の楽譜を確認することができる。
【０１００】
また、好ましくは、前記第２の速度は、前記第１の速度より高速度であるので、演奏の進行に対して、新たな表示情報への変更表示が遅れず、さらにスムーズに新たな表示情報への変更表示を行うことができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係る表示変更装置の概略構成を示すブロック図である。
【図２】楽音データおよび対応データの一例を示す図である。
【図３】図１の表示部に表示された楽譜の一例を示す図である。
【図４】図１の表示変更装置、特にＣＰＵが実行するメインルーチンの手順を示すフローチャートである。
【図５】図４の演奏初期設定処理サブルーチンの詳細な手順を示すフローチャートである。
【図６】タイマ割込み処理のうち、楽譜表示を行う表示割込み処理サブルーチンの手順を示すフローチャートである。
【図７】図６の表示変更処理サブルーチンの詳細な手順を示すフローチャートである。
【図８】タイマ割込み処理のうち、自動演奏を行う演奏割込み処理サブルーチンの手順を示すフローチャートである。
【符号の説明】
５  ＣＰＵ（現在位置指示手段、表示変更手段、速度変更手段、読み出し手段、楽音発生手段、進行位置指示手段、進行位置検出手段、制御手段）
７  ＲＡＭ（記憶手段）
９  表示部（表示手段）
１５  音源回路（楽音発生手段）
１７  サウンドシステム（楽音発生手段）
【図１】
0003651243.tif 000002
【図２】
0003651243.tif 000003
【図３】
0003651243.tif 000004
【図４】
0003651243.tif 000005
【図５】
0003651243.tif 000006
【図６】
0003651243.tif 000007
【図７】
0003651243.tif 000008
【図８】
0003651243.tif 000009