(57)【要約】【課題】  演奏する鍵盤部の位置をＬＥＤによってガイドして演奏教習を行う場合に、その演奏結果をフレーズごとに判定して、判定結果を生かした適切で効率的な演奏練習を可能にする。【解決手段】  ＣＰＵ３は、演奏データメモリ１０に記憶されている曲のイベントデータを順に読み出して演奏をガイドし、ガイドしたイベントデータに対する鍵盤部１の演奏結果を判定して、曲のフレーズにおけるイベントデータに対する判定結果が予め設定されている所定値以上である場合には、次のフレーズにおけるイベントデータを読み出してガイドし、判定結果が所定値に達しない場合には、当該フレーズの最初のイベントデータから読み出してガイドする。【選択図】  図１
2006227246.tif 000002
【特許請求の範囲】
【請求項１】
所定の記憶手段に記憶されている曲のイベントデータを順に読み出して演奏をガイドする演奏ガイド手段と、
前記演奏ガイド手段によってガイドされたイベントデータに対する演奏結果を判定する演奏判定手段と、
前記曲の所定期間におけるイベントデータに対して前記演奏判定手段によって判定された判定結果が予め設定されている所定値以上である場合には前記演奏ガイド手段に対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、前記演奏判定手段によって判定された判定結果が前記所定値に達しない場合には前記演奏ガイド手段に対して当該所定期間の最初のイベントデータから読み出してガイドするように指示する読出指示手段と、
を備えた演奏教習装置。
【請求項２】
所定の記憶手段に記憶されている曲のイベントデータを順に読み出して演奏をガイドする演奏ガイド手段と、
前記演奏ガイド手段によってガイドされたイベントデータに対する演奏結果を判定する演奏判定手段と、
前記曲の所定期間におけるイベントデータに対して前記演奏判定手段によって判定された判定結果が予め設定されている所定値以上である場合には前記演奏ガイド手段に対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、前記演奏判定手段によって判定された判定結果が前記所定値に達しない場合には前記演奏ガイド手段に対して当該所定期間と同じ調の音階フレーズを読み出してガイドするように指示する読出指示手段と、
を備えた演奏教習装置。
【請求項３】
所定の記憶手段に記憶されている曲のイベントデータを順に読み出して演奏をガイドする演奏ガイド手段と、
前記演奏ガイド手段によってガイドされたイベントデータに対する演奏結果を判定する演奏判定手段と、
前記曲の所定期間におけるイベントデータに対して前記演奏判定手段によって判定された判定結果が予め設定されている所定値以上である場合には前記演奏ガイド手段に対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、前記演奏判定手段によって判定された判定結果が前記所定値に達しない場合には前記演奏ガイド手段に対して当該所定期間における特徴的な演奏パターンとして前記記憶手段に予め記憶されている指定フレーズを読み出してガイドするように指示する読出指示手段と、
を備えた演奏教習装置。
【請求項４】
所定の記憶手段に記憶されている曲のイベントデータを順に読み出して演奏をガイドする第１のステップと、
前記第１のステップによってガイドされたイベントデータに対する演奏結果を判定する第２のステップと、
前記曲の所定期間におけるイベントデータに対して前記第２のステップによって判定された判定結果が予め設定されている所定値以上である場合には前記第１のステップに対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、前記第２のステップによって判定された判定結果が前記所定値に達しない場合には前記第１のステップに対して当該所定期間の最初のイベントデータから読み出してガイドするように指示する第３のステップと、
を実行する演奏教習処理のプログラム。
【請求項５】
所定の記憶手段に記憶されている曲のイベントデータを順に読み出して演奏をガイドする第１のステップと、
前記第１のステップによってガイドされたイベントデータに対する演奏結果を判定する第２のステップと、
前記曲の所定期間におけるイベントデータに対して前記第２のステップによって判定された判定結果が予め設定されている所定値以上である場合には前記第１のステップに対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、前記第２のステップによって判定された判定結果が前記所定値に達しない場合には前記第１のステップに対して当該所定期間と同じ調の音階フレーズを読み出してガイドするように指示する第３のステップと、
を実行する演奏教習処理のプログラム。
【請求項６】
所定の記憶手段に記憶されている曲のイベントデータを順に読み出して演奏をガイドする第１のステップと、
前記第１のステップによってガイドされたイベントデータに対する演奏結果を判定する第２のステップと、
前記曲の所定期間におけるイベントデータに対して前記第２のステップによって判定された判定結果が予め設定されている所定値以上である場合には前記第１のステップに対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、前記第２のステップによって判定された判定結果が前記所定値に達しない場合には前記第１のステップに対して当該所定期間における特徴的な演奏パターンとして前記記憶手段に予め記憶されている指定フレーズを読み出してガイドするように指示する第３のステップと、
を実行する演奏教習処理のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、演奏をガイドする演奏教習装置および演奏教習処理のプログラムに関し、特に、演奏する鍵盤の位置を光によってガイドする演奏教習装置および演奏教習処理のプログラムに関するものである。
【背景技術】
【０００２】
電子ピアノや電子オルガンようのな電子楽器の中には、ＬＥＤ（発光ダイオード）等の発光素子によって演奏する鍵盤の位置をガイドする機能を具備したものがある。
ある提案の電子楽器は、メモリから読み出した楽曲を演奏する際に、１小節ごとに各楽音の自動演奏を行った後に、演奏者である生徒がその１小節の練習演奏を行って、各楽音の全ての演奏が正しい場合には次の１小節に進み、１つの楽音でも演奏が間違っている場合には、その同じ１小節を反復して練習演奏を行う構成になっている。（特許文献１参照）
別の提案の演奏指示装置は、予め記憶された押鍵指示データを供給して、操作されるべき鍵盤の位置を視覚又は聴覚に訴えて報知し、押鍵指示データと演奏データとを比較判定し、不一致だと判定した場合には、不一致と判定した箇所から所定期間までの押鍵指示データの供給を繰り返す構成になっている。（特許文献２参照）
別の提案の自動演奏装置は、メモリから読み出した曲データに合わせて鍵盤を演奏する自動演奏進行中に、リピートスイッチをオン操作してリピート再生実行を指示すると、その指示時点の小節から２小節分遡って４小節分の曲データを繰り返し再生する構成になっている。（特許文献３参照）
別の提案の演奏練習装置は、フレーズ単位で構成される曲データに基づき押鍵案内する自動演奏を行いながら、演奏者が押鍵案内される鍵を弾く演奏練習を行うと、適正タイミング域内で押鍵案内された鍵が押鍵されなかった場合に演奏ミスが生じたとして、演奏ミスが生じたフレーズの採点データを減点する。曲データの全フレーズについて採点し終えたときに、一番採点結果の悪いフレーズの先頭から演奏練習を再開させる構成になっている。（特許文献４参照）
【特許文献１】特開昭５８−３５５８３号公報
【特許文献２】特開平８−２４８９５６号公報
【特許文献３】特開２００２−２５１１８５号公報
【特許文献４】特開２００４−２０５９０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記特許文献１および特許文献２の場合には、１小節中の全ての楽音が正しく演奏されない限り次の小節に進むことができない。このため、将来プロの演奏者を目指している人の場合は別であるが、趣味で演奏を行うことを目指している人にとっては、一切の演奏ミスを許さない厳格な先生の指導を受けている生徒と同じように、精神的に大きな苦痛を感じることになり、却って練習意欲を喪失することにもなる。
また、特許文献３の場合には、客観的な演奏評価に基づくものでなく、演奏者が自らの判断でリピート再生の操作を行うので、合理的な演奏練習を期待できない。
また、特許文献４の場合には、あるフレーズで演奏ミスが生じても、とりあえず最後まで自動演奏を続行するので、特に、異なる演奏パターンの複数のフレーズで演奏ミスが生じたような場合には、演奏ミスをしたフレーズの印象が薄れてしまうことになる。
すなわち、上記各特許文献においては、演奏する鍵盤の位置をガイドして、その演奏結果を１小節又は複数の小節からなる所定期間ごとに判定して演奏教習を行う場合に、適切で効率的な演奏練習が得られないという問題があった。
本発明は、このような従来の課題を解決するためのものであり、演奏する鍵盤の位置を光によってガイドして演奏教習を行う場合に、その演奏結果を所定期間ごとに判定して、判定結果を生かした適切で効率的な演奏練習を可能にすることを目的とする。
【課題を解決するための手段】
【０００４】
請求項１に記載の演奏教習装置は、所定の記憶手段（実施形態においては、図１の演奏データメモリ１０に相当する）に記憶されている曲のイベントデータを順に読み出して演奏をガイドする演奏ガイド手段（実施形態においては、図１のＣＰＵ３に相当する）と、演奏ガイド手段によってガイドされたイベントデータに対する演奏結果を判定する演奏判定手段（実施形態においては、図１のＣＰＵ３に相当する）と、曲の所定期間（実施形態においては、フレーズに相当する）におけるイベントデータに対して演奏判定手段によって判定された判定結果が予め設定されている所定値以上である場合には演奏ガイド手段に対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、演奏判定手段によって判定された判定結果が所定値に達しない場合には演奏ガイド手段に対して当該所定期間の最初のイベントデータから読み出してガイドするように指示する読出指示手段（実施形態においては、図１のＣＰＵ３に相当する）と、を備えた構成になっている。
【０００５】
請求項２に記載の演奏教習装置は、所定の記憶手段（実施形態においては、図１の演奏データメモリ１０に相当する）に記憶されている曲のイベントデータを順に読み出して演奏をガイドする演奏ガイド手段（実施形態においては、図１のＣＰＵ３に相当する）と、演奏ガイド手段によってガイドされたイベントデータに対する演奏結果を判定する演奏判定手段（実施形態においては、図１のＣＰＵ３に相当する）と、曲の所定期間（実施形態においては、フレーズに相当する）におけるイベントデータに対して演奏判定手段によって判定された判定結果が予め設定されている所定値以上である場合には演奏ガイド手段に対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、演奏判定手段によって判定された判定結果が所定値に達しない場合には演奏ガイド手段に対して当該所定期間と同じ調の音階フレーズを読み出してガイドするように指示する読出指示手段（実施形態においては、図１のＣＰＵ３に相当する）と、を備えた構成になっている。
【０００６】
請求項３に記載の演奏教習装置は、所定の記憶手段（実施形態においては、図１の演奏データメモリ１０に相当する）に記憶されている曲のイベントデータを順に読み出して演奏をガイドする演奏ガイド手段（実施形態においては、図１のＣＰＵ３に相当する）と、演奏ガイド手段によってガイドされたイベントデータに対する演奏結果を判定する演奏判定手段（実施形態においては、図１のＣＰＵ３に相当する）と、曲の所定期間（実施形態においては、フレーズに相当する）におけるイベントデータに対して演奏判定手段によって判定された判定結果が予め設定されている所定値以上である場合には前記演奏ガイド手段に対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、演奏判定手段によって判定された判定結果が所定値に達しない場合には演奏ガイド手段に対して当該所定期間における特徴的な演奏パターンとして記憶手段に予め記憶されている指定フレーズを読み出してガイドするように指示する読出指示手段（実施形態においては、図１のＣＰＵ３に相当する）と、を備えた構成になっている。
【０００７】
請求項４に記載の演奏教習処理のプログラムは、所定の記憶手段（実施形態においては、図１の演奏データメモリ１０に相当する）に記憶されている曲のイベントデータを順に読み出して演奏をガイドする第１のステップと、第１のステップによってガイドされたイベントデータに対する演奏結果を判定する第２のステップと、曲の所定期間（実施形態においては、フレーズに相当する）におけるイベントデータに対して第２のステップによって判定された判定結果が予め設定されている所定値以上である場合には第１のステップに対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、第２のステップによって判定された判定結果が所定値に達しない場合には第１のステップに対して当該所定期間の最初のイベントデータから読み出してガイドするように指示する第３のステップと、を実行する。
第１のステップないし第３のステップは、実施形態においては、図１のＣＰＵ３によって実行される処理に相当する。
【０００８】
請求項５に記載の演奏教習処理のプログラムは、所定の記憶手段（実施形態においては、図１の演奏データメモリ１０に相当する）に記憶されている曲のイベントデータを順に読み出して演奏をガイドする第１のステップと、第１のステップによってガイドされたイベントデータに対する演奏結果を判定する第２のステップと、曲の所定期間（実施形態においては、フレーズに相当する）におけるイベントデータに対して第２のステップによって判定された判定結果が予め設定されている所定値以上である場合には第１のステップに対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、第２のステップによって判定された判定結果が所定値に達しない場合には第１のステップに対して当該所定期間と同じ調の音階フレーズを読み出してガイドするように指示する第３のステップと、を実行する。
第１のステップないし第３のステップは、実施形態においては、図１のＣＰＵ３によって実行される処理に相当する。
【０００９】
請求項６に記載の演奏教習処理のプログラムは、所定の記憶手段（実施形態においては、図１の演奏データメモリ１０に相当する）に記憶されている曲のイベントデータを順に読み出して演奏をガイドする第１のステップと、第１のステップによってガイドされたイベントデータに対する演奏結果を判定する第２のステップと、曲の所定期間（実施形態においては、フレーズに相当する）におけるイベントデータに対して第２のステップによって判定された判定結果が予め設定されている所定値以上である場合には第１のステップに対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、第２のステップによって判定された判定結果が所定値に達しない場合には第１のステップに対して当該所定期間における特徴的な演奏パターンとして記憶手段に予め記憶されている指定フレーズを読み出してガイドするように指示する第３のステップと、を実行する。
第１のステップないし第３のステップは、実施形態においては、図１のＣＰＵ３によって実行される処理に相当する。
【発明の効果】
【００１０】
本発明の演奏教習装置および演奏教習処理のプログラムによれば、演奏する鍵盤の位置を光によってガイドして演奏教習を行う場合に、その演奏結果を所定期間ごとに判定して、判定結果を生かした適切で効率的な演奏練習を可能にするという効果が得られる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明による演奏教習装置の実施形態について、電子鍵盤楽器を例に採って、図１ないし図２２を参照して説明する。
図１は、実施形態における電子鍵盤楽器の構成を示すブロック図である。鍵盤部１は、押鍵操作に応じて音高やベロシティなどの演奏データを発生する。スイッチ群２は、パワーオン／オフスイッチ、曲セレクトスイッチ、スタート／ストップスイッチ、曲ガイド復帰スイッチ、演奏モードスイッチ、音色設定スイッチ、番号スイッチなどのスイッチで構成され、操作に応じてコマンドやデータを発生する。ＣＰＵ３は、システムバス４を介して、ＬＥＤ群５、押鍵検出回路６、スイッチ検出回路７、プログラムＲＯＭ８、ワークＲＡＭ９、演奏データメモリ１０、表示部１１、割り込みコントローラ１２、タイマ１３、および楽音発生回路１４に接続されている。
【００１２】
ＬＥＤ群５は、鍵盤部１の各鍵に対応して設けられ、点灯によって押鍵すべき鍵をガイドする。押鍵検出回路６は、鍵盤部１で発生した音高やベロシティなどの演奏データを検出してＣＰＵ３に入力する。スイッチ検出回路７は、スイッチ群２の各スイッチの状態を検出してＣＰＵ３に入力する。プログラムＲＯＭ８は、ＣＰＵ３によって実行される演奏教習処理のプログラム、および、デフォルトの初期データなどを記憶している。ワークＲＡＭ９は、ＣＰＵ３によって処理される各種のデータを一時的に記憶する。演奏データメモリ１０は、演奏教習用の複数の曲のイベントデータを記憶しているとともに、演奏教習の効率化のためのデータを記憶している。曲のイベントデータは、図１７に示すように、イベントの種類および次のイベントまでの時間で構成されている。イベントの種類には、ノートオン、ノートオフのほか、プログラムチェンジなどの制御データ、１小節又は２小節以上のフレーズの区切りであるフレーズマーク、曲の終了であるエンドマークなどがある。
表示部１１は、ＬＣＤ（液晶表示デバイス）で構成され、演奏教習用の曲名および曲番号のリスト、セレクトされた曲の楽譜、その曲の演奏上の注意事項などが適宜表示される。タイマ１３は、一定時間ごとに割り込み信号を発生する。割り込みコントローラ１２は、外部からの割り込み信号やタイマ１３からの割り込み信号を優先順位に基づいて制御する。
楽音発生回路１４は、ディジタル／アナログ変換回路（ＤＡＣ）１５、増幅回路１６を介してスピーカ１７に接続され、ＣＰＵ３の発音処理および楽音データに応じて楽音波形データを生成してスピーカ１７から発音させ、ＣＰＵ３の消音処理に応じて発音を停止する。
【００１３】
次に、図１の電子鍵盤楽器における演奏処理の動作について、ＣＰＵ３によって実行されるフローチャート、および、演奏データメモリ１０の曲のイベントデータ（図１７）、ワークＲＡＭ９のデータに基づいて説明する。図１８は、ワークＲＡＭ９のレジスタおよびフラグの内容を示す図である。演奏データメモリ１０の曲は、メロディパート、リズムパート、ベースパートなどの複数のパートで構成されている。すなわち、図１９に示すように、曲番号（曲０、曲１、…）ごとにパート０、パート１、…パートＮおよび曲のテンポで構成されている。
したがって、図１８に示すようにワークＲＡＭ９には以下のエリアが設けられている。各パートの現在アドレス、次のイベントまでの時間、経過時間をストアするレジスタがある。また、演奏練習用に選択されている現在の曲番号、現在のテンポ、テンポカウンタのレジスタがある。また、ガイド中のパート番号、ガイド中のパートのアドレス、ガイド中のパート以外のアドレスを退避するためのレジスタがある。また、次のイベントのセットを要求するフラグであるＮＥＸＴノートセットＲＥＱ、フレーズ練習を要求するフラグであるフレーズ練習ＲＥＱ、フレーズ練習中であることを示すフラグであるフレーズ練習中ＦＬＧがある。また、最大４個までのＮＥＸＴノート［０］〜［３］および現在ノート［０］〜［３］のレジスタがある。また、１曲を通してストアするレジスタのデータとして、ガイドパートのノートオンイベントをカウントする１曲通しノートカウント、ガイドパートの演奏ミスをカウントする１曲通しミスカウント、演奏ごとの評価を累計する１曲通し累計得点および平均する１曲通し平均得点がある。また、各フレーズごとにストアするレジスタのデータとして、現在フレーズノートカウント、現在フレーズミスカウント、現在フレーズ累計得点、現在フレーズ平均得点がある。また、一定時間ごとのタイマ割り込み信号に応じてインクリメントされるＮＥＸＴノートタイマ、現在ノートタイマがある。その他各種フラグがワークＲＡＭ９に設けられている。これらのレジスタおよびフラグの詳細な用途については以下の動作説明の中で順次述べる。
【００１４】
図２は、メインルーチンのフローチャートである。まず、ワークＲＡＭ９のレジスタやフラグ、割り込みコントローラ１２、タイマ１３、表示部１１、その他の各種初期化を行って（ステップＳＡ１）、スイッチ検出回路５によりスイッチ群２の状態を検出する（ステップＳＡ２）。そして、スイッチ群２の中のパワーオフスイッチが操作されたか否かを判別し（ステップＳＡ３）、このスイッチが操作されない場合には、他のスイッチ処理（ステップＳＡ４）、曲データ処理（ステップＳＡ５）、鍵盤処理（ステップＳＡ６）、ＮＥＸＴノートセット処理（ステップＳＡ７）を実行し、ステップＳＡ２に移行してスイッチ群２の状態を検出する処理を繰り返す。ステップＳＡ３においてパワーオフスイッチの操作を検出したときは、ＬＥＤ消灯や表示消去などのパワーオフ処理を行って（ステップＳＡ８）、動作を終了する。
【００１５】
タイマ１３からは一定時間、例えば、９６分音符の時間長ごとのタイマ割り込み信号が出力される。図３は、そのタイマインタラプトのフローチャートである。演奏が停止中であるか否かを判別し（ステップＳＢ１）、演奏停止中の場合はメインルーチンに戻るが、演奏中である場合には、テンポカウンタをインクリメントする（ステップＳＢ２）。そして、テンポカウントが曲のテンポに対応した値に達したか否かを判別する（ステップＳＢ３）。この値に達しない場合にはメインルーチンに戻るが、この値に達したときは、テンポカウントを０にクリアする（ステップＳＢ４）。
【００１６】
次に、現在の演奏モードがガイドモードであるか否かを判別する（ステップＳＢ５）。ガイドモードである場合には、ＮＥＸＴノートタイマの値が曲の終了を示す最大値（７ｆｆｆ）であるか否かを判別し（ステップＳＢ６）、最大値でない場合にはＮＥＸＴノートタイマの値をインクリメントする（ステップＳＢ７）。また、現在ノートタイマの値が最大値（７ｆｆｆ）であるか否かを判別し（ステップＳＢ８）、最大値でない場合には現在ノートタイマの値をインクリメントする（ステップＳＢ９）。
ＮＥＸＴノートタイマおよび現在ノートタイマの値をインクリメントした後、又は、ステップＳＢ５において演奏モードがガイドモードでない場合には、各パートの経過時間をインクリメントする（ステップＳＢ１０）。そして、メインルーチンに戻る。
【００１７】
図４は、メインルーチンにおけるスイッチ処理のフローチャートである。このフローチャートでは、オンされたスイッチに対応する処理を行う。曲セレクトスイッチがオンされたか否かを判別し（ステップＳＣ１）、このスイッチがオンされたときは曲セレクト処理を実行する（ステップＳＣ２）。スタートスイッチがオンされたか否かを判別し（ステップＳＣ３）、このスイッチがオンされたときは曲スタート処理を実行する（ステップＳＣ４）。曲ガイド復帰スイッチがオンされたか否かを判別し（ステップＳＣ５）、このスイッチがオンされたときは処理を実行する（ステップＳＣ６）。他のスイッチがオンされたか否かを判別し（ステップＳＣ７）、他のスイッチがオンされたときは、そのスイッチに対応する処理を実行する（ステップＳＣ８）。オンされたスイッチに対応する処理を実行した後は、メインルーチンに戻る。
【００１８】
図５は、図４のスイッチ処理における曲セレクト処理のフローチャートである。曲セレクトスイッチのオン操作に続いて番号スイッチがオンされると、その曲番号を現在曲番号のレジスタにセットし（ステップＳＤ１）、曲のテンポを現在テンポのレジスタにセットする（ステップＳＤ２）。また、各パートのアドレスをセットする（ステップＳＤ３）。このときのアドレスのセットは、曲スタートに備えて各パートのアドレスを指定するものである。この後は、図４のスイッチ処理に戻る。
【００１９】
図６は、スイッチ処理における曲スタート処理のフローチャートである。テンポカウンタを０にクリアし（ステップＳＥ１）、各パートの現在アドレスに各パートの先頭アドレスをストアする（ステップＳＥ２）。また、各パートの次のイベントまでの時間を０にクリアし（ステップＳＥ３）、各パートの経過時間を０にクリアする（ステップＳＥ４）。次に、演奏モードがガイドモードであるか否かを判別する（ステップＳＥ５）。ガイドモードでない場合、例えば、マニュアル演奏や模範の自動演奏の場合には図４のスイッチ処理に戻る。
【００２０】
演奏モードがガイドモードである場合には、１曲通し累計得点を０にクリアし（ステップＳＥ６）、１曲通し平均得点を０にクリアし（ステップＳＥ７）、１曲通しノートカウントを０にクリアし（ステップＳＥ８）、１曲通しミスカウントを０にクリアする（ステップＳＥ９）。さらに、現在フレーズの累計得点を０にクリアし（ステップＳＥ１０）、現在フレーズの平均得点を０にクリアし（ステップＳＥ１１）、現在フレーズのノートカウントを０にクリアし（ステップＳＥ１２）、現在フレーズのミスカウントを０にクリアする（ステップＳＥ１３）。さらに、ＮＥＸＴノート［０］〜［３］を最大値（ｆｆ）にセットし（ステップＳＥ１４）、フレーズ練習ＲＥＱをオフにし（ステップＳＥ１５）、フレーズ練習中ＦＬＧをオフにする（ステップＳＥ１６）。最後に、ＮＥＸＴノートセットＲＥＱをオンにして（ステップＳＥ１７）、曲スタート処理を終了してメインルーチンに戻る。
【００２１】
図７は、スイッチ処理における曲ガイド復帰処理のフローチャートである。後述するフレーズ練習中において曲ガイド復帰スイッチがオンされたときは、通常の演奏ガイドに復帰するために、全てのノートをオフにして、ＬＣＤに曲ガイドを表示し、ＬＥＤを消灯する（ステップＳＦ１）。次に、各パートのアドレス退避レジスタに退避していたアドレスを対応する現在アドレスに復帰し（ステップＳＦ２）、ＮＥＸＴノートセットＲＥＱをオンにする（ステップＳＦ３）。そして、図４のスイッチ処理に戻る。
【００２２】
図８は、メインルーチンにおける曲データ処理のフローチャートである。最初にパート番号０を指定する（ステップＳＧ１）。そして、パート番号を順に指定しながら各パートの処理を実行する。全部のパートが終了したか否かを判別し（ステップＳＧ２）、全部のパートが終了していない場合には、指定パートのアドレスを読み込み（ステップＳＧ３）、経過時間が次のイベントまでの時間に達したか否かを判別する（ステップＳＧ４）。その時間に達していない場合には、経過時間から次のイベントまでの時間を減算した時間を経過時間として更新する（ステップＳＧ５）。そして、イベント処理をを実行する（ステップＳＧ６）。
【００２３】
図９ないし図１１は、イベント処理のフローチャートである。図８のステップＳＧ３において読み込んだパートアドレスのイベントが曲の最後のエンドマークであるか否かを判別し（ステップＳＨ１）、エンドマークでない場合には、イベントがノートオンであるか否かを判別する（ステップＳＨ２）。ノートオンである場合には、指定しているパートがガイド中のパートであるか否かを判別する（ステップＳＨ３）。ガイド中のパートである場合には、現在の演奏モードがガイドモードであるか否かを判別する（ステップＳＨ４）。ガイドモードである場合には、ＮＥＸＴノートセットＲＥＱをオンにして（ステップＳＨ５）、ノートオンをセットし、ＬＣＤにノートオンイベントを表示し、ノートに対応する鍵盤の位置のＬＥＤを点灯する（ステップＳＨ６）。
一方、現在のモードがガイドモードでない場合には、ＮＥＸＴノートセットＲＥＱをオフの状態で、ノートオンをセットし、ＬＣＤにノートオンイベントを表示し、ノートに対応する鍵盤の位置のＬＥＤを点灯する（ステップＳＨ７）。この場合には、演奏データメモリ１０から読み出したノートオンイベントに対して押鍵すべき鍵をＬＥＤの点灯でガイドするが、演奏に対する評価は行わない。この後、又は、ステップＳＨ３において、指定しているパートがガイド中のパートでない場合には、発音処理を行う（ステップＳＨ８）。
【００２４】
ステップＳＨ２において、読み込んだパートアドレスのイベントがノートオンでない場合には、そのイベントがノートオフであるか否かを判別する（ステップＳＨ９）。ノートオフである場合には、指定しているパートがガイド中のパートであるか否かを判別する（ステップＳＨ１０）。ガイド中のパートである場合には、現在の演奏モードがガイドモードであるか否かを判別する（ステップＳＨ１１）。ガイドモードである場合には、ノートオフをセットし、ＬＣＤにノートオフイベントを表示し、ノートに対応する鍵盤の位置のＬＥＤを消灯する（ステップＳＨ１２）。
一方、現在のモードがガイドモードでない場合には、ノートオフをセットし、ＬＣＤにノートオフイベントを表示し、ノートに対応する鍵盤の位置のＬＥＤを消灯する（ステップＳＨ１３）。この後、又は、ステップＳＨ１０において、指定しているパートがガイド中のパートでない場合には、消音処理を行う（ステップＳＨ１４）。
【００２５】
ステップＳＨ９において、イベントがノートオフでない場合には、図１０のフローチャートにおいて、そのイベントがフレーズマークであるか否かを判別する（ステップＳＨ１５）。フレーズマークである場合には、フレーズ練習中ＦＬＧがオンであるか否かを判別し（ステップＳＨ１６）、フレーズ練習中ＦＬＧがオフである場合には、現在フレーズの平均得点が所定値以下であるか否かを判別する（ステップＳＨ１７）。平均得点が所定値以下である場合には、フレーズ練習ＲＥＱをオンにする（ステップＳＨ１８）。この後、又は、現在フレーズの平均得点が所定値より高い場合には、現在フレーズの累計得点を０にクリアし（ステップＳＨ１９）、現在フレーズの平均得点を０にクリアし（ステップＳＨ２０）、現在フレーズのノートカウントを０にクリアし（ステップＳＨ２１）、現在フレーズのミスカウントを０にクリアし（ステップＳＨ２２）、ＮＥＸＴノート［０］〜［３］を最大値（ｆｆ）にセットする（ステップＳＨ２３）。
【００２６】
次に、フレーズ練習ＲＥＱがオンであるか否かを判別する（ステップＳＨ２４）。フレーズ練習ＲＥＱがオフの場合にはイベント処理を終了するが、フレーズ練習ＲＥＱがオンである場合には、これをオフにリセットして（ステップＳＨ２５）、フレーズ練習中ＦＬＧをオンにセットする（ステップＳＨ２６）。次に、各パートの現在アドレスを対応するレジスタに退避して（ステップＳＨ２７）、フレーズコマンド処理を実行する（ステップＳＨ２８）。
【００２７】
図１２は、フレーズコマンド処理のフローチャートである。フレーズコマンドの値が０、１、又は２以上のいずれであるかを判別し（ステップＳＩ１）、フレーズコマンド値が０の場合には、各パートの現在アドレスに現在フレーズにおける各パートの先頭アドレスをセットする（ステップＳＩ２）。すなわち、現在フレーズの平均得点が所定値以下である場合には、曲の進行を中止して、現在フレーズを先頭アドレスから繰り返す練習を行う。フレーズコマンドの値が１である場合には、現在フレーズと同じ調の音階フレーズを演奏データメモリ１０から読み出して、その先頭アドレスを現在アドレスにセットする（ステップＳＩ３）。この音階フレーズとしては、曲中のフレーズでもよいし、基本フレーズとして予め演奏データメモリ１０に記憶されているものでもよい。フレーズコマンドの値が２以上である場合には、予め演奏データメモリ１０に記憶されている指定フレーズの先頭アドレスを現在アドレスにセットする（ステップＳＩ４）。この場合の指定フレーズは、平均得点が所定値以下である現在フレーズと演奏形態が類似したフレーズ、例えば、演奏の運指が類似したフレーズである。
ステップＳＩ２、ステップＳＩ３、又はステップＳＩ４において、現在アドレスをセットした後は、図１０のフローチャートに戻って、ＮＥＸＴノートセットＲＥＱをオンにして（ステップＳＨ２９）、イベント処理を終了する。
【００２８】
ステップＳＨ１６において、フレーズ練習中ＦＬＧがオンである場合には、全てのノートオフをセットし、ＬＣＤに現在フレーズを表示し、ＬＥＤを消灯する（ステップＳＨ３０）。次に、フレーズコマンド処理を実行する（ステップＳＨ３１）。したがって、再び現在フレーズ、同調の音階フレーズ、又は指定フレーズの先頭アドレスからフレーズ練習を繰り返す。このフレーズ練習中において、曲ガイド復帰スイッチがオンされたときは、図７に示したように、フレーズ練習モードを終了して、通常の演奏ガイドに遷移する。この後、ＮＥＸＴノートセットＲＥＱをオンにして（ステップＳＨ３２）、イベント処理を終了する。
なお、ステップＳＨ１５において、イベントデータがフレーズマークでなく、その他のイベント、例えば、プログラムチェンジなどの制御データである場合には、その他のイベント処理を実行して（ステップＳＨ３３）、イベント処理を終了する。
【００２９】
図９のステップＳＨ１において、イベントデータがエンドマークである場合、すなわち、曲の最後に達したときは、図１１のフローチャートにおいて、フレーズ練習中ＦＬＧがオンであるか否かを判別し（ステップＳＨ３４）、フレーズ練習中ＦＬＧがオンである場合には、全てのノートオフをセットし、ＬＣＤに現在フレーズを表示し、ＬＥＤを消灯する（ステップＳＨ３５）。次に、フレーズコマンド処理を実行する（ステップＳＨ３６）。この場合には、フレーズコマンドの値に応じて、曲の最後のフレーズである現在フレーズ、同調の音階フレーズ、又は指定フレーズの先頭アドレスからフレーズ練習を繰り返す。このフレーズ練習中においても、曲ガイド復帰スイッチがオンされたときは、フレーズ練習モードを終了して、通常の演奏ガイドに遷移する。この後、ＮＥＸＴノートセットＲＥＱをオンにして（ステップＳＨ３７）、イベント処理を終了する。
ステップＳＨ３４において、フレーズ練習中ＦＬＧがオフである場合には、指定しているパートの終了処理を行い（ステップＳＨ３８）、その曲全体に対する平均得点を計算し、計算結果を表示して（ステップＳＨ３９）、イベント処理を終了する。
【００３０】
イベント処理が終了したときは、図８のフローチャートにおいて、次のイベントまでの時間をセットし（ステップＳＧ７）、パートアドレスを更新する（ステップＳＧ８）。そして、ステップＳＧ３からの処理を繰り返す。
ステップＳＧ４において、経過時間が次のイベントまでの時間に達したときは、パート番号を更新して（ステップＳＧ９）、ステップＳＧ２に移行して全部のパート処理が終了したか否かを判別する。全部のパートが終了していない場合には、ステップＳＧ３以下の上記処理を繰り返すが、全部のパート処理が終了したときはメインルーチンに戻る。
【００３１】
図１３は、図２のメインルーチンにおける鍵盤処理のフローチャートである。押鍵がされたか否かを判別し（ステップＳＪ１）、押鍵がされない場合にはメインルーチンに戻るが、押鍵がされたときは、現在の演奏モードがガイドモードであるか否かを判別する（ステップＳＪ２）。ガイドモードである場合には、フレーズ練習中ＦＬＧがオンであるか否かを判別する（ステップＳＪ３）。フレーズ練習中ＦＬＧがオンである場合には、１曲通しノートカウントをインクリメントし（ステップＳＪ４）、現在フレーズのノートカウントをインクリメントする（ステップＳＪ５）。
【００３２】
次に、押鍵された鍵が現在ノートのいずれかと一致するか否かを判別する（ステップＳＪ６）。ワークＲＡＭのレジスタにストアする最大４個の現在ノートおよび次に押鍵すべきＮＥＸＴノートは、図２０に示すように、８ビットで構成されている。８ビットの最上位ビットすなわちＭＳＢは、押鍵されたときに０から１に変化するビットであり、下位７ビットがノートの音高を表わしている。また、現在ノートおよびＮＥＸＴノートの個数が４個に満たない場合には、８ビット全てが１（ｆｆ）で表わされる。図２０の例では、Ｃ４、Ｅ４、Ｇ４の音高のノートがレジスタにストアされている。
【００３３】
図１３のステップＳＪ６において、押鍵された鍵が現在ノートのいずれかと一致したときは、一致した現在ノートのＭＳＢを１（オン）にセットする（ステップＳＪ７）。したがって、同じ鍵を２度押鍵した場合には、２度目の押鍵は無視される。図２０において、Ｅ４の鍵が押鍵されたときは、Ｅ４のノートのＭＳＢを１にし、Ｃ４の鍵が押鍵されたときは、Ｃ４のノートのＭＳＢを１にし、Ｇ４の鍵が押鍵されたときは、Ｇ４のノートのＭＳＢを１にする。次に、現在ノートタイマの値に基づいて得点（図２０の＊）を決定する（ステップＳＪ８）。すなわち、ノートオンイベントの押鍵タイミングと現在ノートタイマとの時間差すなわちタイミングずれに基づいて得点を決定する。ただし、曲のテンポに応じてタイミングずれは相対的に変化するので、現在のテンポに対応したタイミングずれに対応して得点を決定する。例えば、一拍が４分音符のテンポである４８の場合には、図２１に示すように、タイミングずれに対応した得点となる。ステップＳＪ８の後、１曲通しおよび現在ノートの累計得点に決定した得点を加算し（ステップＳＪ９）、１曲通しおよび現在フレーズの平均得点を計算し、計算結果を表示する（ステップＳＪ１０）。
【００３４】
ステップＳＪ６において、押鍵された鍵が現在ノートのいずれとも一致しない場合には、次に押鍵すべきＮＥＸＴノートのいずれかと一致するか否かを判別する（ステップＳＪ１１）。いずれかのＮＥＸＴノートと一致したときは、一致したＮＥＸＴノートのＭＳＢを１にセットして（ステップＳＪ１２）、ＮＥＸＴノートタイマの値に基づいて得点を決定する（ステップＳＪ１３）。この後、１曲通しおよび現在ノートの累計得点に決定した得点を加算し（ステップＳＪ１４）、１曲通しおよび現在フレーズの平均得点を計算し、計算結果を表示する（ステップＳＪ１５）。
【００３５】
ステップＳＪ１１において、押鍵された鍵がＮＥＸＴノートのいずれとも一致しない場合には、１曲通しミスカウントをインクリメントし（ステップＳＪ１６）、現在フレーズのミスカウントをインクリメントし（ステップＳＪ１７）、１曲通しおよび現在フレーズの平均得点を計算し、計算結果を表示する（ステップＳＪ１８）。この後に、フレーズ練習ＲＥＱをオンにする処理（ステップＳＪ１９）を行って、即座にフレーズ練習のモードに遷移するようにしてもよい。なお、このような演奏ミスの場合における平均得点の計算では、累計得点が加算されないので、平均得点が減点されることになる。
ステップＳＪ１８の計算および表示処理の後若しくはステップＳＪ１９のフラグ処理を行った後、又は、ステップＳＪ１０若しくはステップＳＪ１５の計算および表示処理の後は、発音処理を実行する（ステップＳＪ２０）。そして、メインルーチンに戻る。
【００３６】
図１４および図１５は、図２のメインルーチンにおけるＮＥＸＴノートセット処理のフローチャートである。図１４において、ＮＥＸＴノートセットＲＥＱがオンであるか否かを判別し（ステップＳＫ１）、ＮＥＸＴノートセットＲＥＱがオフの場合にはメインルーチンに戻るが、ＮＥＸＴノートセットＲＥＱがオンの場合には、これをオフにリセットして（ステップＳＫ２）、押鍵すべきノートオンイベントが押鍵されたか否かを調査するノータッチ調査を実行する（ステップＳＫ３）。
【００３７】
図１６は、ノータッチ調査のフローチャートである。フレーズ練習中ＦＬＧがオンであるか否かを判別し（ステップＳＬ１）、フレーズ練習中ＦＬＧがオフの場合にはこのフローチャートを終了する。フレーズ練習中ＦＬＧがオンの場合には、最大４個の現在ノートの１つを指定する変数ｉｎｄｅｘを０にセットして（ステップＳＬ２）、ｉｎｄｅｘの値をインクリメントしながら、以下のループ処理を実行する。すなわち、ｉｎｄｅｘで指定された現在ノートのＭＳＢが０（オフ）であるか１（オン）であるかを判別し（ステップＳＬ３）、現在ノートのＭＳＢが０である場合には、１曲通しミスカウントをインクリメントし（ステップＳＬ４）、現在フレーズのミスカウントをインクリメントする（ステップＳＬ５）。この後にフレーズ練習ＲＥＱをオンにセットする処理（ステップＳＬ６）を行って、即座にフレーズ練習のモードに遷移するようにしてもよい。ステップＳＬ５若しくはステップＳＬ６の後、又は、ステップＳＬ３において現在ノートのＭＳＢが１である場合には、ｉｎｄｅｘの値をインクリメントする（ステップＳＬ７）。このときｉｎｄｅｘの値が４になったか否かを判別し（ステップＳＬ８）、ｉｎｄｅｘの値が３以下の場合にはステップＳＬ３に移行してステップＳＬ８までのループ処理を繰り返す。ｉｎｄｅｘの値が４になったときは、このノータッチ調査を終了して、図１４のＮＥＸＴノートセットの処理に戻る。
【００３８】
ノータッチ調査が終了したときは、図１４のフローチャートにおいて、ＮＥＸＴノート［０］〜［３］を現在ノート［０］〜［３］として更新し（ステップＫ４）、ＮＥＸＴノート［０］〜［３］の８ビットを全て１（ｆｆ）にセットする（ステップＳＫ５）。また、ｉｎｄｅｘを０にセットする（ステップＳＫ６）。そして、次のイベントまでの時間を目標時間として設定する（ステップＳＫ７）。次に、ガイド中パートのアドレスをガイド中パートのアドレスとして退避し（ステップＳＫ８）、ガイド中パートのアドレスを更新する（ステップＳＫ９）。そして、ガイド中パートのアドレスを読込み（ステップＳＫ１０）、そのアドレスの次イベントがノートオンであるか否かを判別する（ステップＳＫ１１）。
【００３９】
次イベントがノートオンである場合には、図１５のフローチャートにおいて、ｉｎｄｅｘで指定されたＮＥＸＴノートにノート番号をセットする（ステップＳＫ）。例えば、ＮＥＸＴノートがＣ４である場合には、ＮＥＸＴノートに「００１１１１００」をセットする。次に、ノートオンをセットし、ＬＣＤにＮＥＸＴノートを表示し、ノート番号に対応する鍵のＬＥＤを点滅する（ステップＳＫ１５）。この後、ｉｎｄｅｘの値をインクリメントする（ステップＳＫ１６）。そして、次イベントまでの時間が０であるか否かを判別する（ステップＳＫ１７）。この時間が０である場合、すなわち、同じタイミングの他のイベントがある場合には、図１４のステップＳＫ９に移行して、ステップＳＫ１０、ステップＳＫ１１と進み、次イベントがノートオンである場合には、図１５のステップＳＫ１４に移行してステップＳＫ１７までの処理を繰り返す。ステップＳＫ１７において、次イベントまでの時間が０でない場合には、現在ノートタイマを０にクリアし（ステップＳＫ１８）、ＮＥＸＴノートタイマを０から目標時間を減算した値すなわち目標時間のマイナス値にセットする（ステップＳＫ１９）。そして、メインルーチンに戻る。
【００４０】
図１４のステップＳＫ１１において、次イベントがノートオンでない場合には、そのイベントがフレーズマークであるか否かを判別する（ステップＳＫ１２）。フレーズマークである場合にはメインルーチンに戻るが、フレーズマークでない場合には、図１５のフローチャートにおいて、そのイベントがエンドマークであるか否かを判別する（ステップＳＫ２０）。エンドマークでない場合、例えば、ノートオフやプログラムチェンジなどの制御データである場合には、図１４のステップＳＫ１３において、目標時間に次イベントまでの時間を加算する。そして、ステップＳＫ９以降の処理を実行する。
【００４１】
図１５のステップＳＫ２０において、次イベントがエンドマークである場合には、ＮＥＸＴノートの８ビットを全て１（ｆｆ）にセットし（ステップＳＫ２１）、ノートオフをセットし、ＬＣＤに曲の終了を表示し、ＬＥＤを消灯する（ステップＳＫ２２）。さらに、現在ノートタイマに最大値（７ｆｆｆ）をセットし（ステップＳＫ２３）、ＮＥＸＴノートに最大値（７ｆｆｆ）をセットする（ステップＳＫ２４）。そして、メインルーチンに戻る。
【００４２】
図２２は、曲開始（ＳＴＡＲＴ）から曲終了（ＥＮＤ）までのイベントデータの種類に対応したＮＥＸＴノートセットの処理において、ＮＥＸＴノートおよび現在ノートの内容を表わしている。次イベントデータがＣＥＧのノートオンである場合には、ＮＥＸＴノートにＣＥＧをセットし、曲開始前の現在ノートにｆｆをセットする。次イベントデータがＤＦＧのノートオンである場合には、ＮＥＸＴノートにＤＦＧをセットし、現在ノートにＮＥＸＴノートのＣＥＧをセットする。次イベントデータがフレーズマークである場合には、ＮＥＸＴノートにｆｆをセットし、現在ノートにＮＥＸＴノートのＤＦＧをセットする。次イベントデータがＥＧＢのノートオンである場合には、ＮＥＸＴノートにＥＧＢをセットし、現在ノートにＮＥＸＴノートのｆｆをセットする。次イベントデータがエンドマークである場合には、ＮＥＸＴノートにｆｆをセットし、現在ノートにＮＥＸＴノートのＥＧＢをセットする。
【００４３】
以上のように、上記実施形態によれば、ＣＰＵ３は、演奏データメモリ１０に記憶されている曲のイベントデータを順に読み出して演奏をガイドし、ガイドしたイベントデータに対する鍵盤部１の演奏結果を判定して、曲のフレーズにおけるイベントデータに対する判定結果が予め設定されている所定値以上である場合には、次のフレーズにおけるイベントデータを読み出してガイドし、判定結果が所定値に達しない場合には、当該フレーズの最初のイベントデータから読み出してガイドする。
したがって、演奏する鍵盤部１の位置をＬＥＤによってガイドして演奏教習を行う場合に、その演奏結果をフレーズごとに判定して、フレーズの演奏結果が所定値に達しない場合には、即座にそのフレーズの練習を行ってから次のフレーズに進むので、判定結果を生かした適切で効率的な演奏練習を可能にする。
【００４４】
あるいは、上記実施形態によれば、ＣＰＵ３は、演奏データメモリ１０に記憶されている曲のイベントデータを順に読み出して演奏をガイドし、ガイドしたイベントデータに対する鍵盤部１の演奏結果を判定して、曲のフレーズにおけるイベントデータに対する判定結果が予め設定されている所定値以上である場合には、次のフレーズにおけるイベントデータを読み出してガイドし、判定結果が所定値に達しない場合には、曲の調と同じ調の音階フレーズを演奏データメモリ１０から読み出して、その最初のイベントデータから読み出してガイドする。
したがって、演奏する鍵盤部１の位置をＬＥＤによってガイドして演奏教習を行う場合に、その演奏結果をフレーズごとに判定して、フレーズの演奏結果が所定値に達しない場合には、特に楽譜読みに起因するミスを克服するための基礎練習として、その時点の調の音階フレーズを練習するので、判定結果を生かした適切で効率的な演奏練習を可能にする。
【００４５】
あるいは、上記実施形態によれば、ＣＰＵ３は、演奏データメモリ１０に記憶されている曲のイベントデータを順に読み出して演奏をガイドし、ガイドしたイベントデータに対する鍵盤部１の演奏結果を判定して、曲のフレーズにおけるイベントデータに対する判定結果が予め設定されている所定値以上である場合には、次のフレーズにおけるイベントデータを読み出してガイドし、判定結果が所定値に達しない場合には、当該フレーズにおける特徴的な演奏パターンとして演奏データメモリ１０に予め記憶されている指定フレーズ、例えば、運指が同じフレーズを読み出してガイドする。
したがって、演奏する鍵盤部１の位置をＬＥＤによってガイドして演奏教習を行う場合に、その演奏結果をフレーズごとに判定して、フレーズの演奏結果が所定値に達しない場合には、そのフレーズにおける特徴的な演奏パターンを練習することにより、運指などのように演奏のポイントとなる技術の練習をするので、判定結果を生かした適切で効率的な演奏練習を可能にする。
【００４６】
なお、上記実施形態においては、プログラムＲＯＭ８にあらかじめ記憶された演奏教習処理のプログラムをＣＰＵ３が実行する装置の発明について説明したが、フレキシブルディスク（ＦＤ）、ＣＤ、ＭＤなどの外部記憶媒体に記録されている演奏教習処理のプログラムをハードディスクやフラッシュＲＯＭなどの書き込み可能な不揮発性メモリにインストールしたり、インターネットなどのネットワークからダウンロードした演奏教習処理のプログラムをインストールして、そのプログラムをＣＰＵが実行することも可能である。この場合には、プログラムの発明やそのプログラムを記録した記録媒体の発明を実現できる。
【００４７】
すなわち、本発明による演奏教習処理のプログラムは、所定の記憶手段に記憶されている曲のイベントデータを順に読み出して演奏をガイドする第１のステップと、前記第１のステップによってガイドされたイベントデータに対する演奏結果を判定する第２のステップと、前記曲の所定期間におけるイベントデータに対して前記第２のステップによって判定された判定結果が予め設定されている所定値以上である場合には前記第１のステップに対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、前記第２のステップによって判定された判定結果が前記所定値に達しない場合には前記第１のステップに対して当該所定期間の最初のイベントデータから読み出してガイドするように指示する第３のステップと、を実行する。
【００４８】
また、本発明による演奏教習処理のプログラムは、所定の記憶手段に記憶されている曲のイベントデータを順に読み出して演奏をガイドする第１のステップと、前記第１のステップによってガイドされたイベントデータに対する演奏結果を判定する第２のステップと、前記曲の所定期間におけるイベントデータに対して前記第２のステップによって判定された判定結果が予め設定されている所定値以上である場合には前記第１のステップに対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、前記第２のステップによって判定された判定結果が前記所定値に達しない場合には前記第１のステップに対して当該所定期間と同じ調の音階フレーズを読み出してガイドするように指示する第３のステップと、を実行する。
【００４９】
また、本発明による演奏教習処理のプログラムは、所定の記憶手段に記憶されている曲のイベントデータを順に読み出して演奏をガイドする第１のステップと、前記第１のステップによってガイドされたイベントデータに対する演奏結果を判定する第２のステップと、前記曲の所定期間におけるイベントデータに対して前記第２のステップによって判定された判定結果が予め設定されている所定値以上である場合には前記第１のステップに対して当該所定期間の次の所定期間におけるイベントデータを読み出してガイドするように指示し、前記第２のステップによって判定された判定結果が前記所定値に達しない場合には前記第１のステップに対して当該所定期間における特徴的な演奏パターンとして前記記憶手段に予め記憶されている指定フレーズを読み出してガイドするように指示する第３のステップと、を実行する。
【図面の簡単な説明】
【００５０】
【図１】本発明の演奏教習装置の実施形態における電子鍵盤楽器のブロック図。
【図２】図１におけるＣＰＵのメインルーチンのフローチャート。
【図３】図２のメインルーチンにおけるタイマインタラプト処理のフローチャート。
【図４】図２のメインルーチンにおけるスイッチ処理のフローチャート。
【図５】図４のスイッチ処理における曲セレクト処理のフローチャート。
【図６】図４のスイッチ処理における曲スタート処理のフローチャート。
【図７】図４のスイッチ処理における曲ガイド復帰処理のフローチャート。
【図８】図２のメインルーチンにおける曲データ処理のフローチャート。
【図９】図８の曲データ処理におけるイベント処理のフローチャート。
【図１０】図９に続くイベント処理のフローチャート。
【図１１】図９に続くイベント処理のフローチャート。
【図１２】図１０、図１１のイベント処理におけるフレーズコマンド処理のフローチャート。
【図１３】図２のメインルーチンにおける鍵盤処理のフローチャート。
【図１４】図２のメインルーチンにおけるＮＥＸＴノートセット処理のフローチャート。
【図１５】図１４に続くＮＥＸＴノートセット処理のフローチャート。
【図１６】図１４のＮＥＸＴノートセット処理におけるノータッチ調査のフローチャート。
【図１７】図１の演奏データメモリに記憶されている曲データの構成を示す図。
【図１８】図１のワークＲＡＭにストアされる各種データを示す図。
【図１９】図１の演奏データメモリに記憶されている曲の複数のパートを示す図。
【図２０】図１のワークＲＡＭに記憶されるＮＥＸＴノートおよび現在ノートのデータ構成および演奏結果の得点を示す図。
【図２１】演奏結果におけるタイミングずれと得点との関係を示す図。
【図２２】曲開始から曲終了までのイベントデータの種類に対応したＮＥＸＴノートおよび現在ノートを表わした図。
【符号の説明】
【００５１】
１  鍵盤部
２  スイッチ群
３  ＣＰＵ
４  システムバス
５  ＬＥＤ群
６  押鍵検出回路
７  スイッチ検出回路
８  プログラムＲＯＭ
９  ワークＲＡＭ
１０  演奏データメモリ
１１  表示部
１２  割り込みコントローラ
１３  タイマ
１４  楽音発生回路
１５  ディジタル／アナログ変換回路
１６  増幅回路
１７  スピーカ
【図１】
2006227246.tif 000003
【図２】
2006227246.tif 000004
【図３】
2006227246.tif 000005
【図４】
2006227246.tif 000006
【図５】
2006227246.tif 000007
【図６】
2006227246.tif 000008
【図７】
2006227246.tif 000009
【図８】
2006227246.tif 000010
【図９】
2006227246.tif 000011
【図１０】
2006227246.tif 000012
【図１１】
2006227246.tif 000013
【図１２】
2006227246.tif 000014
【図１３】
2006227246.tif 000015
【図１４】
2006227246.tif 000016
【図１５】
2006227246.tif 000017
【図１６】
2006227246.tif 000018
【図１７】
2006227246.tif 000019
【図１８】
2006227246.tif 000020
【図１９】
2006227246.tif 000021
【図２０】
2006227246.tif 000022
【図２１】
2006227246.tif 000023
【図２２】
2006227246.tif 000024