(57)【特許請求の範囲】
【請求項１】
楽曲の演奏情報を発生する演奏情報発生手段と、
前記演奏情報発生手段により発生された演奏情報に基づいて楽曲を演奏する演奏手段と、
演奏される楽曲の譜面を表わす画像情報を一時記憶しておく一時記憶手段と、
演奏される楽曲の譜面を表わす画像情報を発生して前記一時記憶手段に書き込む画像情報発生手段と、
前記演奏手段による楽曲の演奏の進行に応じて譜面の更新を指示する譜面更新指示情報を発生する譜面更新指示情報発生手段と、
画像情報を取り込むフレームメモリと該フレームメモリに取り込んだ画像情報に基づく画像を表示する画面を有し、前記譜面更新指示情報発生手段により譜面更新指示情報が発生されたことを受けて前記一時記憶手段に一時記憶された画像情報をフレームメモリに取り込み該フレームメモリに取り込んだ画像情報に基づいて画面上に譜面を表示する表示手段とを備えた電子楽器であって、
前記譜面更新指示情報発生手段が、少なくとも、前記表示手段の画面上に表示されている譜面の第１の所定位置まで楽曲の演奏が進行した際に、前記譜面更新指示情報の一種である楽曲の演奏が該所定位置まで進行したことを表わす第１の改ページ情報と、前記表示手段の画面上に表示されている譜面の位置であって前記第１の所定位置とは異なる第２の所定位置まで楽曲の演奏が進行した際に、前記譜面更新指示情報の一種である、楽曲の演奏が該第２の所定位置まで進行したことを表わす第２の改ページ情報とを、楽曲の演奏位置を表わす演奏クロックに基づくタイミングに応じて発生するものであり、
前記表示手段が、前記譜面更新指示情報発生手段により前記第１の改ページ情報が発生されたことを受けて、前記一時記憶手段より、次のページの譜面の一部を表わす画像情報を、現在のページの譜面の前記一部に対応する部分を表わす画像情報に代えて取り込んで表示すると共に、前記譜面更新指示情報発生手段により前記第２の改ページ情報が発生されたことを受けて、前記一時記憶手段より、次のページの譜面の、前記一部を除く残りの部分を表わす画像情報を現在のページの譜面の前記残りの部分に対応する部分を表わす画像情報に代えて取り込んで表示するものであって、
前記楽曲の演奏位置を表わす演奏クロックに基づき、前記譜面変更指示情報を発生するタイミングとは異なるタイミングで前記画像情報を発生することを特徴とする電子楽器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、演奏の進行に伴って、画面に表示された譜面を順次改ページする電子楽器に関する。
【０００２】
【従来の技術】
従来より、譜面を画面上に表示しておき、演奏の進行に伴って、その画面に表示された譜面を順次改ページする、いわゆる電子譜面のページ送りを行なう電子楽器が知られている。このような電子楽器では、画面に表示された譜面の改ページにあたり、現在表示されている譜面の演奏が終了した時点で、その画面に表示されている譜面を一旦全て消去し、次に新たなページの譜面を表示することが行なわれている。しかし、これでは、改ページが行なわれる直前で、演奏者が次に演奏する楽譜情報を知ることができないという問題がある。この問題を解決するために、特開昭５９−５２８８号公報に、画面を上段，下段に分割し、それら上段，下段に譜面を表示しておき、演奏が終了した段に表示された譜面を消去し、この段に次のページの譜面を表示するというように、互いに異なるページの譜面を上段，下段それぞれに表示する技術が提案されている。
【０００３】
【発明が解決しようとする課題】
しかしこの技術では、改ページにあたり、先ず演奏が終了した段に表示された譜面を一旦消去し、次にその段に次のページの譜面を表示するものであるため、表示速度が遅くなるという問題がある。
一般に、譜面の楽譜情報をあらわす画像データを生成する場合、全画面に相当する画像情報を保持しておくと膨大なメモリが必要になるため、楽譜情報を符号化して記憶しておき、表示にあたり、これら符号化された楽譜情報を展開して処理することにより画像データを生成する。このように、符号化された楽譜情報を展開処理して画像データを得るのはＣＰＵに大きな負担がかかる。このため、従来の電子楽器では、画面に譜面を表示するにあたり、表示速度が遅くなるという問題を抱えている。さらに、現在表示されているページの譜面の一部分に、次のページの譜面の一部分を表示するというような部分改ページを行なう場合、その部分改ページの形状によっては、表示する音符や記号が欠ける場合があり、このような部分改ページの形状を考慮して画像データを得るには展開処理が非常に複雑になり、表示速度がより遅くなるという問題も抱えている。
【０００４】
本発明は、上記事情に鑑み、表示速度の高速化が図られるとともに、見やすい改ページ形態で譜面を表示することのできる電子楽器を提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記目的を達成する本発明の電子楽器は、
楽曲の演奏情報を発生する演奏情報発生手段と、
上記演奏情報発生手段により発生された演奏情報に基づいて楽曲を演奏する演奏手段と、
演奏される楽曲の譜面を表わす画像情報を一時記憶しておく一時記憶手段と、
演奏される楽曲の譜面を表わす画像情報を発生して上記一時記憶手段に書き込む画像情報発生手段と、
上記演奏手段による楽曲の演奏の進行に応じて譜面の更新を指示する譜面更新指示情報を発生する譜面更新指示情報発生手段と、
画像情報を取り込むフレームメモリとそのフレームメモリに取り込んだ画像情報に基づく画像を表示する画面を有し、上記譜面更新指示情報発生手段により譜面更新指示情報が発生されたことを受けて上記一時記憶手段に一時記憶された画像情報をフレームメモリに取り込みそのフレームメモリに取り込んだ画像情報に基づいて画面上に譜面を表示する表示手段とを備えた電子楽器であって、
上記譜面更新指示情報発生手段が、少なくとも、上記表示手段の画面上に表示されている譜面の第１の所定位置まで楽曲の演奏が進行した際に、上記譜面更新指示情報の一種である楽曲の演奏がその所定位置まで進行したことを表わす第１の改ページ情報と、上記表示手段の画面上に表示されている譜面の位置であって上記第１の所定位置とは異なる第２の所定位置まで楽曲の演奏が進行した際に、上記譜面更新指示情報の一種である、楽曲の演奏がその第２の所定位置まで進行したことを表わす第２の改ページ情報とを、楽曲の演奏位置を表わす演奏クロックに基づくタイミングに応じて発生するものであり、
上記表示手段が、上記譜面更新指示情報発生手段により上記第１の改ページ情報が発生されたことを受けて、上記一時記憶手段より、次のページの譜面の一部を表わす画像情報を、現在のページの譜面の前記一部に対応する部分を表わす画像情報に代えて取り込んで表示すると共に、上記譜面更新指示情報発生手段により上記第２の改ページ情報が発生されたことを受けて、上記一時記憶手段より、次のページの譜面の、上記一部を除く残りの部分を表わす画像情報を現在のページの譜面の上記残りの部分に対応する部分を表わす画像情報に代えて取り込んで表示するものであって、
上記楽曲の演奏位置を表わす演奏クロックに基づき、上記譜面変更指示情報を発生するタイミングとは異なるタイミングで上記画像情報を発生することを特徴とする。
【０００６】
本発明の電子楽器は、譜面更新指示情報が発生されたことを受けて、一時記憶手段に一時記憶された画像情報をフレームメモリに取り込みそのフレームメモリに取り込んだ画像情報に基づいて画面上に譜面を表示するものであるため、改ページにあたり、そのフレームメモリに取り込まれた画像情報の上からそのまま次のページの譜面をあらわす画像情報を上書きすることができる。従って、現在表示されている画像情報を一旦消去することなしに次のページの譜面を表示することができ、表示速度の高速化が図られる。
【０００８】
第１の改ページ情報に応じて画像情報を表示すると、現在表示されているページの譜面の、すでに演奏が終了した第１の部分に、次のページの譜面の対応する部分を表示することができ、次の楽譜情報を容易に知ることができる。また、第２の改ページ情報に応じて画像情報を表示すると、次のページの譜面の第１の部分に加えてさらに、現在表示されているページの譜面の、すでに演奏が終了した第２の部分に、次のページの譜面の対応する部分を表示することができ、従ってこのように部分的に改ページを行なっていくことで次のページの譜面全体を表示することができる。また、部分改ページの形状によっては、表示する音符や記号が欠ける場合があり、このような部分改ページの形状を考慮して画像データを得るには展開処理が非常に複雑になり、表示速度が遅くなるという問題に対しても、あらかじめ展開処理され一時記憶手段に格納された画像情報に対応する部分だけをフレームメモリに転送することにより、表示速度の高速化が図られる。
【０００９】
また、現在演奏中のページの譜面の一部と次のページの譜面の一部との組み合わせの形態を規定する改ページ形態情報を発生する改ページ形態情報発生手段を備え、
上記表示手段が、上記改ページ形態情報発生手段により発生された改ページ形態情報に基づいた形態の譜面を表示するものであることが好ましい。
【００１０】
改ページ形態情報に基づいた形態の譜面を表示すると、譜面の改ページにあたり、その譜面を縦にめくったり、横にめくったり、あるいは斜めにめくったりするというような様々な改ページ形態を自在に選択することができ、表示デザイン上の自由度が増す。
さらに、上記改ページ形態情報発生手段が、１ページ分の譜面の表示態様に応じた改ページ形態情報を発生するものであってもよい。
【００１１】
改ページ形態発生手段が、１ページ分の譜面の表示態様に応じた改ページ形態情報を発生すると、例えば画面に上下２段の楽譜が表示されている場合は、譜面を縦にめくることが好適なため、縦めくりの改ページ形態を選択し、一方画面に１段のみの楽譜が表示されている場合は、譜面を縦にめくると楽譜が半分欠けてしまい実用的でないため、横めくりの改ページ形態を選択するというように、譜面の表示態様に応じて最適な改ページ形態を選択することができる。
【００１２】
また、上記表示手段が、上記譜面更新指示情報発生手段により譜面更新指示情報が発生されたことを受けて、上記一時記憶手段に一時記憶された画像情報を画面の複数の部分領域にそれぞれ対応する分割画像情報毎に時間的に順次取り込んで表示するものであってもよい。
画像情報を、画面の複数の部分領域にそれぞれ対応する分割画像情報毎に時間的に順次取り込んで表示すると、改ページにあたり、そのページが部分的に順次表示される。従って、実際の紙がめくれていくような、いわゆるアニメーション動作を実現することができ、ユーザに自然な改ページの感覚を与えることができる。
【００１３】
また、上記表示手段の画面に表示されている譜面を更新する際の更新の形態を規定する改ページ形態情報を発生する改ページ形態情報発生手段を備え、
上記表示手段が、上記譜面更新指示情報発生手段により譜面更新指示情報が発生されたことを受けて、上記一時記憶手段に一時記憶された画像情報を、上記改ページ形態情報発生手段により発生された改ページ形態情報に応じた形態で、画面の複数の部分領域にそれぞれ対応する分割画像情報毎に時間的に順次取り込んで表示するものであってもよい。
【００１４】
画像情報を、改ページ形態情報に応じた形態で、画面の複数の部分領域にそれぞれ対応する分割画像情報毎に時間的に順次取り込んで表示すると、改ページにあたり、アニメーション動作を伴って、画面上で譜面を縦にめくったり、横にめくったり、あるいは斜めにめくったりするような改ページ形態が自在に選択でき、表示デザイン上の自由度が増す。
【００１５】
さらに、上記表示手段が、上記分割画像情報を、演奏中の楽曲のテンポに応じた時間間隔で順次取り込んで表示するものであってもよい。
楽曲のテンポに応じた時間間隔で順次取り込んで分割画像情報を表示すると、アニメーション動作を伴って、その楽曲のテンポに応じた時間間隔で徐々に次のページが表示されていくため、ユーザのテンポ間隔にあった自然な改ページ動作を行なうことができる。
【００１６】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
図１は、本発明の電子楽器の一実施形態のブロック図である。
図１に示すＣＰＵ１１は、ＲＯＭ１３に格納されたプログラムをデータバス２１を経由して読み出し、各種の処理を行なう。
【００１７】
ＲＡＭ１２には、演奏用の譜面の楽譜データ、演奏により生成される演奏データ、各種操作子のデータ、および各種フラグ等が格納される。
ＲＯＭ１３には、この図１に示す電子楽器全体の制御を行なうためのプログラム等が格納されている。
テンポクロック部１４は、ＣＰＵ１１から指示されたテンポ、即ち４分音符を９６等分したタイミング（ティック）でテンポクロック割込みを発生する。このテンポクロック割込みは自動演奏等を行なうための基本クロックになる。
【００１８】
タイマ１５は、ＣＰＵ１１から指示された時間でタイマ割込みを発生する。このタイマ割込みにより、後述するアニメーション動作を行なうための分割画像の転送タイミングが決定される。
操作子１６は、この図１に示す電子楽器の各種状態を設定するための複数のスイッチを備えている。ユーザは、後述する表示器１８の画面に表示される譜面１ページ分の段数，１段当りの小節数等を、これらスイッチにより設定する。
【００１９】
ＶＲＡＭ１７は、表示器１８に表示される画像データを格納する、いわゆるフレームメモリである。
表示器１８は、ＣＲＴや表示信号を発生する発生回路を備えており、ＶＲＡＭ１７に格納されている画像データがあらわす譜面を表示する。
一時記憶メモリ（オフビットマップ）１９は、ＶＲＡＭ１７と同等の構成のメモリであり、画像データを一時的に記憶する。
【００２０】
音源２０は、ＣＰＵ１１から指定された音高の楽音を発生する。
図２は、図１に示す電子楽器におけるデータの概略の流れを示す図である。
図２の右下に示す表示器１８の画面には、ＶＲＡＭ１７に格納されている画像データがあらわす１ページ目の譜面が表示されている。また一時記憶メモリ１９であるオフビットマップには、２ページ目の譜面の画像データが格納されている。
【００２１】
ＲＡＭ１２に格納されている演奏データが読み出され、音源２０に入力されて楽音が発生する。また読み出された演奏データに応じてテンポクロック部１４から割込みが発生し、これにより３ページ目の楽譜データが画像データに展開される。また、タイマ１５から分割画像用のタイマ割込みが発生し、これによりオフビットマップに格納された２ページ目の譜面の画像データを、画面の複数の部分領域にそれぞれ対応する分割画像データ毎に時間的に順次オフビットマップから読み出されてＶＲＡＭ１７に転送される。これにより、現在表示されている、１ページ目の譜面の、演奏が終了した前半部分がアニメーション動作を伴って、２ページ目の譜面の前半部分に置き換わる。ここで、ＶＲＡＭ１７への、オフビットマップに格納された２ページ目の画像データの書き込みにあたり、１ページ目の、ＶＲＡＭ１７に格納され現在表示されている画像データを消去することなしにその画像データの上からそのまま上書きされる。このため、従来の、演奏が終了した段の画像データを一旦消去し、次にその段に次のページの画像データを表示する技術と比較し、表示速度の高速化が図られる。
【００２２】
図３は、横めくりの改ページ形態を示す図である。
図３に示す画面には、１段のみの楽譜が表示されている。画面の右半分には、現在の演奏位置を示すカーソル３１および現在演奏されているページの譜面の後半部分３２が表示されている。またその画面の左半分には、次のページの譜面の前半部分３３が表示されている。このように、画面に１段のみの楽譜が表示されている場合、譜面を図の縦にめくると演奏中の楽譜が半分欠けてしまい実用的ではないため、横めくりの改ページ形態が選択される。
【００２３】
図４は、縦めくりの改ページ形態を示す図である。
図４に示す画面には、２段の楽譜が表示されている。画面の下半分には、現在の演奏位置を示すカーソル４１および現在演奏されているページの譜面の後半部分４２が表示されている。またその画面の上半分には、次のページの譜面の前半部分４３が表示されている。このように、画面に上下２段の楽譜が表示されている場合は、縦めくりの改ページ形態が選択される。
【００２４】
図５は、横めくりにおけるアニメーション動作を行なうための分割画像を示す図である。
本実施形態では、横めくりにおける半ページ毎のアニメーション動作を行なうにあたり、１ページを、画面の横方向に領域Ｐ１＿１から領域Ｐ１＿６までの６つの領域に分割し、タイマ１５のタイマ割込みにより、前半の半ページを構成する領域Ｐ１＿１から領域Ｐ１＿３までの３つの領域それぞれを順次表示することにより、あるいは後半の半ページを構成する領域Ｐ１＿４から領域Ｐ１＿６までの３つの領域それぞれを順次表示することにより、実際に譜面が横方向にめくれていくようなアニメーション動作が行なわれる。
【００２５】
図６は、縦めくりにおけるアニメーション動作を行なうための分割画像を示す図である。
縦めくりにおける半ページ毎のアニメーション動作を行なうにあたり、１ページを、画面の縦方向に領域Ｐ２＿１から領域Ｐ２＿６までの６つの領域に分割し、タイマ１５のタイマ割込みにより、前半の半ページを構成する領域Ｐ２＿１から領域Ｐ２＿３までの３つの領域それぞれを順次表示することにより、あるいは後半の半ページを構成する領域Ｐ２＿４から領域Ｐ２＿６までの３つの領域それぞれを順次表示することにより、実際に譜面が縦方向にめくれていくようなアニメーション動作が行なわれる。
【００２６】
図７は、図１に示す電子楽器におけるメインルーチンを示すフローチャートである。
図１に示す電子楽器に電源が投入されると、このメインルーチンが実行される。
先ず、ステップＳ１において、初期化が行なわれる。この初期化では、演奏データを読み込み、拍子を設置し、１小節当りの演奏クロック数（ティック数）Ｃを設定する。また、１ページ目の譜面を表示するとともに、２ページ目の譜面を画像展開してオフビットマップに格納しておく。さらに、楽曲のテンポに応じてテンポクロックの割込みタイミングを設定するとともに、タイマ割込みのタイミングを所定の値に設定する。また各種フラグや変数の初期化を行なう。
【００２７】
次にステップＳ２に進み、ユーザにより設定された操作子等の状態を読み込み、ステップＳ３に進む。ステップＳ３では、ユーザにより設定された譜面の表示段数Ｓ、１段あたりの小節数Ｍに合わせて表示画面を更新する。次にステップＳ４に進む。ステップＳ４は、分割画像の設定サブルーチンであり、詳細は後述するが、画像データを、画面の複数の部分領域にそれぞれ対応する分割画像データ毎に格納するエリアを設定する。次にステップＳ５に進む。ステップＳ５は、タイミング設定サブルーチンであり、やはり詳細は後述するが、表示画面に応じて、画像展開のタイミング、改ページのタイミングを設定する。
【００２８】
次に、ステップＳ６に進む。ステップＳ６では、ユーザにより操作子のうちの１つである演奏スタートスイッチが押されていた場合、テンポクロック割込みを許可状態にして演奏のスタート処理を行なう等、その他必要な処理を行ない、ステップＳ２に戻る。
図８は、図７に示すメインルーチンにおける分割画像の設定サブルーチンのフローチャートである。
【００２９】
先ずステップＳ１１において、表示段数Ｓが１か否かが判断される。表示段数Ｓが１であると判断された場合は、横めくりを行なうためステップＳ１２に進む。ステップＳ１２では、縦めくりか横めくりかの形状を示すレジスタＦＩＧに１（横めくり形状）を代入してステップＳ１３に進む。ステップＳ１３では、画面の、図５に示す領域Ｐ１＿１からＰ１＿６までの分割領域の座標を、座標変数Ｐ１から座標変数Ｐ６までに設定してメインルーチンに戻る。
【００３０】
一方、ステップＳ１１において、表示段数Ｓが１でないと判断された場合は、縦めくりを行なうためにステップＳ１４に進む。ステップＳ１４では、レジスタＦＩＧに２（縦めくり形状）を代入してステップＳ１５に進む。ステップＳ１５では、画面の、図６に示す領域Ｐ２＿１から領域Ｐ２＿６までの分割領域の座標を、座標変数Ｐ１から座標変数Ｐ６までに設定してメインルーチンに戻る。
【００３１】
図９は、図７に示すメインルーチンにおけるタイミング設定サブルーチンのフローチャートである。
先ず、ステップＳ２１において、１ページ分の演奏時間を示す変数Ｔ１（ティック）に、Ｓ（１ページあたりの表示段数）×Ｍ（１段あたりの小節）×Ｃ（１小節あたりのティック数）を代入する。次にステップＳ２２に進み、レジスタＦＩＧが１（横めくり形状）か否かが判断される。レジスタＦＩＧが１であると判断された場合は、ステップＳ２３に進む。
【００３２】
ステップＳ２３では、横めくりの画像展開のタイミング、改ページのタイミングを設定するために、先ず、最終段を構成する小節のうちの中央の小節位置を超えるタイミングを示す値［（Ｓ−１）×Ｍ＋ＲｏｕｎｄＵｐ（Ｍ÷２）］×Ｃを、部分改ページタイミング変数Ｎ１に代入する。ここで、ＲｏｕｎｄＵｐとは、小数点以下に端数がある場合には切り上げることを意味する。次に、１ページ分のタイミングを示す値（Ｓ×Ｍ×Ｃ）を、完全改ページを行なうための完全改ページタイミング変数Ｎ２に代入する。また、１ページ分のタイミングを示す値（Ｓ×Ｍ×Ｃ）にさらに１小節分が経過したタイミングを示す値［（Ｓ×Ｍ＋１）×Ｃ］を、符号化された楽音データを展開処理して画像データを生成するための画像展開タイミング変数Ｄ１に代入する。これにより画像展開のタイミングは、改ページのタイミングとは異なるタイミングとなり、画像展開のタイミングと改ページのタイミングとが重なることが防止され、ＣＰＵの負担が軽減される。ステップＳ２３を終了するとメインルーチンに戻る。
【００３３】
一方、ステップＳ２２において、レジスタＦＩＧが１でないと判断された場合は、ステップＳ２４に進む。ステップＳ２４では、縦めくりの画像展開のタイミング、改ページのタイミングを設定するために、先ず、画面に表示された中央の段を超えるタイミングを示す値［ＲｏｕｎｄＵＰ（Ｓ÷２）×Ｍ×Ｃ］を、部分改ページタイミング変数Ｎ１に代入し、次に完全改ページタイミング変数Ｎ２にＳ×Ｍ×Ｃを代入し、さらに画像展開タイミング変数Ｄ１に（Ｓ×Ｍ＋１）×Ｃを代入してメインルーチンに戻る。
【００３４】
図１０は、テンポクロック割込みの処理ルーチンのフローチャートである。
テンポクロック部１４により、ＣＰＵ１１に対して割込みが発生すると、このルーチンが起動される。
先ずステップＳ３１において、クロックの歩進（４分音符を９６等分したタイミング）に応じて画面上のカーソルを移動し、また現在の演奏位置Ｔ（ティック）をインクリメントする。
【００３５】
次にステップＳ３２に進み、演奏データを読み出す演奏時刻が経過しているか否かが判断される。演奏時刻が経過していると判断された場合は、ステップＳ３３に進む。ステップＳ３３では楽音発生処理を行ないステップＳ３４に進む。一方、ステップＳ３２において、演奏時刻がまだ経過していないと判断された場合は、そのままステップ３４に進む。ステップＳ３４は、改ページ処理サブルーチンであり、詳細は後述するが、現在の演奏時刻位置Ｔが完全改ページのタイミングもしくは部分改ページのタイミングに到達したか否かを判断し、その判断に応じて完全改ページの処理，部分改ページの処理を指示し、ステップＳ３５に進む。ステップＳ３５は、画像展開サブルーチンであり、やはり詳細は後述するが、現在の演奏時刻位置Ｔが画像展開タイミングに到達したか否かを判断し、画像展開タイミングに到達したと判断した場合は楽譜データを画像データに展開するための画像展開処理を行なう。ステップＳ３５を終了するとメインルーチンに戻る。
【００３６】
図１１は、図１０に示すテンポクロック割込み処理ルーチンにおける改ページ処理のサブルーチンを示すフローチャートである。
先ずステップＳ４１において、現在の演奏位置Ｔが、部分改ページタイミング変数Ｎ１以上であるか否かが判断される。現在の演奏位置Ｔが部分改ページタイミング変数Ｎ１以上であると判断された場合は部分改ページを行なうためにステップＳ４２に進む。ステップＳ４２では座標指数ｉを１にする。また転送座標Ｐに座標変数Ｐ１を設定する。さらに転送終了値ＰE に、半ページ分を示す数値３を設定する。本実施形態では、１ページ分を６つの分割画像に分割し、半ページ毎に部分改ページ動作を行なうものであり、このため半ページ分として数値３が設定される。またタイマ割込みフラグＦを１に設定してタイマ割込みを許可状態にする。次にステップＳ４３に進み、部分改ページタイミング変数Ｎ１に、演奏クロックにより設定され１ページ分の演奏時間を示す変数Ｔ１を加算し、これを部分改ページタイミング変数Ｎ１に代入することにより部分改ページタイミング変数Ｎ１を次のページに移しメインルーチンに戻る。
【００３７】
一方、ステップＳ４１において、現在の演奏位置Ｔが部分改ページタイミング変数Ｎ１未満であると判断された場合はステップＳ４４に進む。ステップＳ４４では、現在の演奏位置Ｔが完全改ページタイミング変数Ｎ２以上であるか否かが判断される。現在の演奏位置Ｔが完全改ページタイミング変数Ｎ２未満であると判断された場合はそのままメインルーチンに戻る。一方、現在の演奏位置Ｔが完全改ページタイミング変数Ｎ２以上であると判断された場合は完全改ページを行なうためにステップＳ４５に進む。ステップＳ４５では、転送終了値ＰE に、１ページ分を示す数値６を設定する。また、タイマ割込みフラグＦを１に設定してタイマ割込みを許可状態にする。次にステップＳ４６に進み、完全改ページタイミング変数Ｎ２に１ページ分の演奏時間を示す変数Ｔ１を加算し、これを完全改ページタイミング変数Ｎ２に代入することにより、その完全改ページタイミング変数Ｎ２を、次のページを改ページするための値にしてメインルーチンに戻る。
【００３８】
図１２は、テンポクロック割込み処理ルーチンにおけるタイマ割込みの処理ルーチンのフローチャートである。
タイマ割込みが許可状態になっており、タイマ１５によりＣＰＵ１１に対して割込みが発生すると、このタイマ割込みの処理ルーチンが起動する。このルーチンにより、分割画像がオフビットマップからＶＲＡＭ１７に順次転送され、徐々に分割画像が表示されて、いわゆるアニメーション動作を伴った部分改ページが行なわれる。
【００３９】
先ずステップＳ５１において、転送座標Ｐで示される領域の画像データをオフビットマップから読み出してＶＲＡＭ１７に書き込む。これにより、現在表示されている画像データの一部分が、次のページの部分画像データに置き換えられる。次にステップＳ５２に進み、座標指数ｉをインクリメントし、その座標指数ｉを転送座標Ｐに代入する。次にステップＳ５３に進む。ステップＳ５３では、座標指数ｉが転送終了値ＰE より大きいか否かが判断される。座標指数ｉが転送終了時ＰE より大きいと判断された場合は、半ページ分の画像データの転送が終了したため、ステップＳ５４に進む。ステップＳ５４では、タイマ割込みフラグＦを０に設定してタイマ割込みを禁止状態にし、メインルーチンに戻る。一方、座標指数ｉが転送終了値ＰE 以下であると判断された場合は、そのままメインルーチンに戻る。
【００４０】
図１３は、図１０に示す画像展開サブルーチンを示すフローチャートである。先ずステップＳ６１において、現在の演奏位置Ｔが画像展開タイミング変数Ｄ１以上か否かが判断される。現在の演奏位置Ｔが画像展開タイミング変数Ｄ１以上であると判断された場合は、符号化された楽譜データを展開して処理された画像データを得るためにステップＳ６２に進む。ステップＳ６２では、楽譜データを読み出して画像データに展開処理してオフビットマップへ格納する。次にステップＳ６３に進み、画像展開タイミング変数Ｄ１に１ページ分の演奏時間を示す変数Ｔ１を加算し、これを画像展開タイミング変数Ｄ１に代入することにより画像展開タイミング変数Ｄ１を次のページに移しメインルーチンに戻る。一方、ステップ６１において、現在の演奏位置Ｔが画像展開タイミング変数Ｄ１未満であると判断された場合は、そのままメインルーチンに戻る。
【００４１】
尚、本実施形態では、オフピットマップは１画面（１ページ）分であったが、現在表示されている画面と改ページ専用の画面との２画面分のオフピットマップを備え、現在表示されている画面と改ページ専用の画面を切り替えて表示してもよい。一般に、ＶＲＡＭには譜面のデータおよびその譜面のデータとは別に他のアプリケーションのデータが格納される場合が多く、その場合譜面と他のアプリケーションとが同時に画面に表示される。そこで、このような２画面のオフピットマップを備えれば、再描画が必要になった場合であっても、再描画処理が容易になる。
【００４２】
また、本実施形態では、画像転送処理は分割領域の座標を指定して転送したが、ＶＲＡＭ側に、指定された座標の分割領域以外の表示を禁止する部分（マスク）を設け、全画面分の画像データをＶＲＡＭに転送するが、結果的に分割領域のみが表示されるようにしてもよい。この場合、マスクの形状を順次変化させて、徐々に改ページが行なわれるようにすると効果的である。
【００４３】
さらに、本実施形態では、画像展開や改ページのタイミングを演奏クロック（ティック）で設定したが、画像展開や改ページのタイミングを演奏時間で設定してもよい。また、分割画像の転送タイミングをタイマにより設定したが、分割画像の転送タイミングを演奏クロックに応じて設定してもよい。この場合はタイマ割込みではなく、テンポクロック割込みで処理することになる。このようにすると、曲のテンポに応じたタイミングでアニメーション動作を行なうことができ、ユーザのテンポ感覚に見合った改ページ動作が実現される。
【００４４】
また、本実施形態では、楽譜データがあらかじめＲＡＭに格納されていたが、演奏データから変換して楽譜データを生成してもよい。
また、本実施形態では、画像データを、符号化された楽譜データを展開処理して生成したが、あらかじめ画像データを格納しておいてもよい。さらに、演奏がストップしている場合、改ページスイッチを設けて改ページを行なうようにしてもよい。このようにすると、現在のページの演奏をストップし、次のページの演奏に移る場合、現在のページの、残りの部分の部分改ページを行なわず、いきなり次のページに進むことができる。
【００４５】
さらに本実施形態では、改ページ形状は、譜面の段数に応じて自動設定されるようにしたが、ユーザが設定できるようにしてもよい。また、改ページ形状は縦めくり、横めくりに限らず、斜めにめくる形状やその他の形状でもよい。その場合、本実施形態と同様に、形状に合わせて部分改ページのタイミング等を設定すればよい。
【００４６】
また、本実施形態では、部分改ページ動作は、半ページ毎に行なったが、縦めくりの改ページを行なう際、各段の演奏が終了する毎に、順番に部分改ページを行なうようにしてもよい。
また、縦めくりの改ページタイミングを、演奏が終了した段より１つ離れた段で行なうと見やすくなる。
【００４７】
【発明の効果】
以上説明したように、本発明によれば、楽曲の演奏の進行に応じて、画面に表示された譜面を順次改ページするにあたり、表示速度の高速化が図られるとともに、見やすい改ページ形態で表示することができる。
【図面の簡単な説明】
【図１】本発明の電子楽器の一実施形態のブロック図である。
【図２】図１に示す電子楽器におけるデータの概略の流れを示す図である。
【図３】横めくりにおける部分改ページを示す図である。
【図４】縦めくりにおける部分改ページを示す図である。
【図５】横めくりにおけるアニメーション動作をなうための分割画像を示す図である。
【図６】縦めくりにおけるアニメーション動作を行なうための分割画像を示す図である。
【図７】図１に示す電子楽器におけるメインルーチンを示すフローチャートである。
【図８】図７に示すメインルーチンにおける分割画像の設定サブルーチンのフローチャートである。
【図９】図７に示すメインルーチンにおけるタイミング設定サブルーチンのフローチャートである。
【図１０】テンポクロック割込みの処理ルーチンのフローチャートである。
【図１１】図１０に示すテンポクロック割込み処理ルーチンにおける改ページ処理のサブルーチンを示すフローチャートである。
【図１２】テンポクロック割込み処理ルーチンにおけるタイマ割込みの処理ルーチンのフローチャートである。
【図１３】図１０に示す画像展開サブルーチンのフローチャートである。
【符号の説明】
１１  ＣＰＵ
１２  ＲＡＭ
１３  ＲＯＭ
１４  テンポクロック部
１５  タイマ
１６  操作子
１７  ＶＲＡＭ
１８  表示器
１９  一時記憶メモリ
２０  音源
３１，４１  カーソル
３２，４２  譜面の後半部分
３３，４３  譜面の前半部分
【図１】
0004047414.tif 000002
【図２】
0004047414.tif 000003
【図３】
0004047414.tif 000004
【図４】
0004047414.tif 000005
【図５】
0004047414.tif 000006
【図６】
0004047414.tif 000007
【図７】
0004047414.tif 000008
【図８】
0004047414.tif 000009
【図９】
0004047414.tif 000010
【図１０】
0004047414.tif 000011
【図１１】
0004047414.tif 000012
【図１２】
0004047414.tif 000013
【図１３】
0004047414.tif 000014