(57)【特許請求の範囲】
【請求項１】
電子楽器にて発生される楽音の発生形態を指定する各種パラメータから構成されるレジストレーション情報を記憶する第１の記憶手段と、
複数の記憶エリアを備える第２の記憶手段と、
前記第２の記憶手段が備える複数の記憶エリアの内、ユーザ操作に応じて登録指示された記憶エリアに、前記第１の記憶手段に記憶されるレジストレーション情報を登録する登録手段と、
ユーザ操作に応じて、前記第２の記憶手段が備える複数の記憶エリアの中から呼び出し対象となる記憶エリアを表す呼出指示を発生する呼出指示手段と、
前記呼出指示手段によって呼び出し対象とされた少なくとも一方の記憶エリアと他方の記憶エリアとのそれぞれに格納されるレジストレーション情報の中から読み出すパラメータ種の組み合わせを、前記呼出指示手段が最初と同じ呼出指示を繰り返し発生する回数に応じて変更する組み合わせ変更手段と、
前記組み合わせ変更手段によって変更されたパラメータ種の組み合わせに従って前記呼出指示手段により呼び出し対象とされた少なくとも一方の記憶エリアおよび他方の記憶エリアから読み出されるパラメータで構成されるレジストレーション情報を前記第１の記憶手段へ転送する呼出手段と
を具備することを特徴とする電子楽器のレジストレーション装置。
【請求項２】
前記呼出指示手段は、前記第２の記憶手段の複数の記憶エリアに対応付けられた複数の操作子を備え、
前記組み合わせ変更手段は、これら複数の操作子の内の第１および第２の操作子が同時オン操作された場合に、第１の操作子に対応付けられた第１の記憶エリアと第２の操作子に対応付けられた第２の記憶エリアとにそれぞれ格納されるレジストレーション情報の中から読み出すパラメータ種の組み合わせを、当該第１および第２の操作子の同時オン操作の回数に応じて変更することを特徴とする請求項１記載の電子楽器のレジストレーション装置。
【請求項３】
電子楽器として用いられるコンピュータに、
第１のメモリに記憶され、前記電子楽器にて発生される楽音の発生形態を指定する各種パラメータから構成されるレジストレーション情報を、第２のメモリが備える複数の記憶エリアの中からユーザ操作に応じて登録指示された記憶エリアに登録する登録ステップと、
ユーザ操作に応じて、第２のメモリが備える複数の記憶エリアの中から呼び出し対象となる記憶エリアを表す呼出指示を発生する呼出指示手段ステップと、
前記呼出指示ステップにより呼び出し対象とされた少なくとも一方の記憶エリアと他方の記憶エリアとのそれぞれに格納されるレジストレーション情報の中から読み出すパラメータ種の組み合わせを、前記呼出指示ステップが最初と同じ呼出指示を繰り返し発生する回数に応じて変更する組み合わせ変更ステップと、
前記組み合わせ変更ステップにて変更されたパラメータ種の組み合わせに従って前記呼出指示ステップで呼び出し対象とされた少なくとも一方の記憶エリアおよび他方の記憶エリアから読み出されるパラメータで構成されるレジストレーション情報を第１のメモリへ転送する呼出ステップと
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子楽器に用いて好適なレジストレーション装置およびプログラムに関する。
【背景技術】
【０００２】
従来より、発生させる楽音の音色や音量あるいは付加するエフェクト（効果）種類等の、楽音発生形態を指定する各種パラメータの設定内容を一まとめにしたレジストレーション情報をメモリに登録しておき、メモリ登録された複数のレジストレーション情報の内から所望の楽音発生形態を指定するレジストレーション情報を選択し、選択したレジストレーション情報に基づき楽音形成する、所謂、レジストレーション機能を備えた電子楽器が知られている。
【０００３】
こうした電子楽器には、スイッチ操作に応じて、メモリに登録された複数のレジストレーション情報の内から所望のレジストレーション情報を呼出して楽器各部の動作態様を設定するレジストレーション装置が設けられており、当該装置によって例えば演奏中にワンタッチで楽音発生形態を切り替える等して操作性の向上を図るようになっている。
【０００４】
レジストレーション情報の呼び出しに応じて、全てのパラメータの設定を一意的に更新する態様であると、ユーザが意図しない設定に変更されてしまうという弊害が生じる為、一部パラメータを現設定のままに維持し、それ以外のパラメータについてのみ更新させるレジストレーション装置や、例えば特許文献１に開示されるように、最後に更新されたパラメータをレジストレーション呼出しの対象から外すようにしたレジストレーション装置も知られている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−２３７５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、上記特許文献１に開示の技術のように、最後に更新されたパラメータをレジストレーション呼出しの対象から外すようにしても、その「最後に設定したパラメータ」がユーザにとって必ずしも現状維持すべき値になるとは限らない。つまり、最後に設定したパラメータも含めて全面的変更を要することも多々あり、必ずしもユーザの意図を反映したものではない場合が多い。
【０００７】
しかも、上記特許文献１に開示の技術では、最後に更新されたパラメータをレジストレーション呼出しの対象から外すだけなので、例えば一部のパラメータについてはあるレジストレーション情報から呼び出し、残りのパラメータについては別のレジストレーション情報から呼び出すといった具合に、ユーザの好みに従って呼び出すレジストレーション情報を組み合わせることが叶わない。言い換えれば、できる限りユーザの意図に沿った設定に変更することが出来ないという問題がある。
【０００８】
本発明は、このような事情に鑑みてなされたもので、できる限りユーザの意図に沿った設定に変更することができるレジストレーション装置およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、請求項１に記載の発明では、電子楽器にて発生される楽音の発生形態を指定する各種パラメータから構成されるレジストレーション情報を記憶する第１の記憶手段と、複数の記憶エリアを備える第２の記憶手段と、前記第２の記憶手段が備える複数の記憶エリアの内、ユーザ操作に応じて登録指示された記憶エリアに、前記第１の記憶手段に記憶されるレジストレーション情報を登録する登録手段と、ユーザ操作に応じて、前記第２の記憶手段が備える複数の記憶エリアの中から呼び出し対象となる記憶エリアを表す呼出指示を発生する呼出指示手段と、  前記呼出指示手段によって呼び出し対象とされた少なくとも一方の記憶エリアと他方の記憶エリアとのそれぞれに格納されるレジストレーション情報の中から読み出すパラメータ種の組み合わせを、前記呼出指示手段が最初と同じ呼出指示を繰り返し発生する回数に応じて変更する組み合わせ変更手段と、前記組み合わせ変更手段によって変更されたパラメータ種の組み合わせに従って前記呼出指示手段により呼び出し対象とされた少なくとも一方の記憶エリアおよび他方の記憶エリアから読み出されるパラメータで構成されるレジストレーション情報を前記第１の記憶手段へ転送する呼出手段とを具備することを特徴とする。
【００１０】
上記請求項１に従属する請求項２に記載の発明では、  前記呼出指示手段は、前記第２の記憶手段の複数の記憶エリアに対応付けられた複数の操作子を備え、前記組み合わせ変更手段は、これら複数の操作子の内の第１および第２の操作子が同時オン操作された場合に、第１の操作子に対応付けられた第１の記憶エリアと第２の操作子に対応付けられた第２の記憶エリアとにそれぞれ格納されるレジストレーション情報の中から読み出すパラメータ種の組み合わせを、当該第１および第２の操作子の同時オン操作の回数に応じて変更することを特徴とする。
【００１１】
請求項３に記載の発明では、電子楽器として用いられるコンピュータに、第１のメモリに記憶され、前記電子楽器にて発生される楽音の発生形態を指定する各種パラメータから構成されるレジストレーション情報を、第２のメモリが備える複数の記憶エリアの中からユーザ操作に応じて登録指示された記憶エリアに登録する登録ステップと、  ユーザ操作に応じて、第２のメモリが備える複数の記憶エリアの中から呼び出し対象となる記憶エリアを表す呼出指示を発生する呼出指示手段ステップと、前記呼出指示ステップにより呼び出し対象とされた少なくとも一方の記憶エリアと他方の記憶エリアとのそれぞれに格納されるレジストレーション情報の中から読み出すパラメータ種の組み合わせを、前記呼出指示ステップが最初と同じ呼出指示を繰り返し発生する回数に応じて変更する組み合わせ変更ステップと、前記組み合わせ変更ステップにて変更されたパラメータ種の組み合わせに従って前記呼出指示ステップで呼び出し対象とされた少なくとも一方の記憶エリアおよび他方の記憶エリアから読み出されるパラメータで構成されるレジストレーション情報を第１のメモリへ転送する呼出ステップと  を実行させることを特徴とする。
【発明の効果】
【００１２】
本発明では、できる限りユーザの意図に沿った設定に変更することができる。
【図面の簡単な説明】
【００１３】
【図１】実施の一形態による電子楽器１００の全体構成を示すブロック図である。
【図２】ＲＯＭ１３の記憶内容を示すメモリマップである。
【図３】ＲＡＭ１４の記憶内容を示すメモリマップである。
【図４】メインルーチンの動作を示すフローチャートである。
【図５】タイマインタラプト処理の動作を示すフローチャートである。
【図６】イニシャライズ処理の動作を示すフローチャートである。
【図７】スイッチ処理の動作を示すフローチャートである。
【図８】編集スイッチ処理の動作を示すフローチャートである。
【図９】「＋」、「−」スイッチ処理の動作を示すフローチャートである。
【図１０】スタート／ストップスイッチ処理の動作を示すフローチャートである。
【図１１】セーブスイッチ処理の動作を示すフローチャートである。
【図１２】コールスイッチ処理の動作を示すフローチャートである。
【図１３】図１２に続くコールスイッチ処理の動作を示すフローチャートである。
【図１４】鍵盤処理の動作を示すフローチャートである。
【図１５】伴奏処理の動作を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施形態について説明する。
Ａ．構成  
図１は、本発明によるレジストレーション装置を備えた実施の一形態である電子楽器１００の全体構成を示すブロック図である。図１において、鍵盤１０は、演奏操作（押離鍵操作）に応じたキーオン／キーオフ信号、鍵番号およびベロシティ等の演奏情報を発生する。操作部１１は、楽器パネルに配設される各種スイッチから構成され、各スイッチ操作に応じたスイッチイベントを発生する。操作部１１が発生するスイッチイベントは後述するＣＰＵ１２に取り込まれる。
【００１５】
操作部１１には、図示されていないが、編集すべきパラメータ（音色データ番号、伴奏データ番号およびテンポ値の何れか）を指定する編集スイッチ、編集スイッチにより編集項目として指定されたパラメータの値をインクリメント又はデクリメントする「＋」、「−」スイッチ、自動伴奏の開始／停止を指示するスタート／ストップスイッチ、レジストレーション情報の登録（保存）を指示するセーブスイッチおよび登録されたレジストレーション情報の呼出しを指示するコールスイッチが設けられており、これらスイッチ操作に対応した動作については追って述べる。
【００１６】
なお、ここで言う編集スイッチとは、音色データ番号を編集項目に指定する音色スイッチ、伴奏データ番号を編集項目に指定する伴奏スイッチおよびテンポ値を編集項目に指定するテンポスイッチを含む総称である。また、ここで言う編集項目とは、設定変更の対象となるパラメータを意味する。
【００１７】
さらに、セーブスイッチおよびコールスイッチは、後述するＲＡＭ１４のレジストレーションエリアＲＥ（図３参照）に設けられたエリアＲＥ（１）〜（４）にそれぞれ対応付けられた４つのスイッチ（セーブスイッチ１〜４、コールスイッチ１〜４）から構成される。加えて、コールスイッチ１〜４は、単独でオン操作される場合と、２つを同時にオン操作される場合とがあり、これらが意図するところについては追って述べる。
【００１８】
ＣＰＵ１２は、ＲＯＭ１３に記憶される各種プログラムを実行し、操作部１１が発生するスイッチイベントに応じて楽器各部を制御したり、鍵盤１０が発生する演奏情報に応じたノートオン／ノートオフイベントを生成して音源１６を制御する。本発明の要旨に係わるＣＰＵ１２の特徴的な処理動作については後述する。
【００１９】
ＲＯＭ１３は、図２に図示するように、プログラムエリアＰＥ、音色データエリアＴＥおよび伴奏データエリアＡＥを備える。ＲＯＭ１３のプログラムエリアＰＥには、ＣＰＵ１２にロードされる各種プログラムデータが記憶される。ここで言う各種プログラムとは、後述するメインルーチン、タイマインタラプト処理、イニシャライズ処理、スイッチ処理、鍵盤処理および伴奏処理を含む。なお、スイッチ処理は、編集スイッチ処理、「＋」，「−」スイッチ処理、スタート／ストップスイッチ処理、セーブスイッチ処理およびコールスイッチ処理を含む。
【００２０】
ＲＯＭ１３の音色データエリアＴＥには、各種音色の波形データに音色データ番号を対応付けた音色データ（１）〜（ｎ）が記憶される。ＲＯＭ１３の伴奏データエリアＡＥには、自動伴奏に用いる各種伴奏パターンを形成する伴奏データ（１）〜（ｎ）が記憶される。一つの伴奏データは、所定小節分の伴奏曲を構成する各音を表す。一つの音は、曲開始時点からの経過時間で現イベントのタイミングを表すタイムＴと、発音音高（又は消音音高）を表すノートナンバを含むイベントＥＶとが対になって曲進行に対応した時系列のアドレス順に記憶される、いわゆる絶対時間方式と呼ばれるデータ形式で表現され、その終端には曲（伴奏パターン）の終わりを表すデータＥＮＤが設けられる。
【００２１】
ＲＡＭ１４は、図３に図示するように、カレントエリアＣＥ、レジストレーションエリアＲＥおよびワークエリアＷＥを備える。ＲＡＭ１４のカレントエリアＣＥには、現在の楽音発生形態を表すパラメータを一まとめにしたレジストレーション情報が一時記憶される。このカレントエリアＣＥには、発生楽音の音色を指定する音色データ番号がストアされるレジスタＴＯＮＥと、自動伴奏に用いられる伴奏パターンを指定する伴奏データ番号がストアされるレジスタＢＡＮＳＯと、自動伴奏の再生テンポを表すテンポ値がストアされるレジスタＴＥＭＰＯとが設けられる。
【００２２】
ＲＡＭ１４のレジストレーションエリアＲＥには、エリアＲＥ（１）〜（４）が設けられており、これらエリアＲＥ（１）〜（４）にそれぞれ対応付けられた４つのセーブスイッチ１〜４の内、オン操作されたセーブスイッチの番号に対応したエリアＲＥに、上記カレントエリアＣＥに記憶されるレジストレーション情報が登録される。例えば、セーブスイッチ１がオン操作された場合には、レジスタＴＯＮＥ（音色データ番号）、レジスタＢＡＮＳＯ（伴奏データ番号）およびレジスタＴＥＭＰＯ（テンポ値）がエリアＲＥ（１）に登録される。
【００２３】
ＲＡＭ１４のワークエリアＷＥには、各種レジスタ・フラグデータ（Ｔ、ＴＯＮＥＦ、ＢＡＮＳＯＦ、ＴＥＭＰＯＦ、ＡＤ、ＳＴＦ、ＣＯＤＥ、ＲＯＯＴ、ＳＡＶＥ、ＣＡＬＬ１、ＣＡＬＬ２、ＦＣＡＬＬ１およびＦＣＡＬＬ２）が一時記憶される。これら各種レジスタ・フラグデータが意図するところについては、後述の動作説明において述べる。
【００２４】
表示部１５は、例えばカラー液晶パネル等から構成され、ＣＰＵ１２から供給される表示制御信号に応じて楽器各部の設定状態や、カレントエリアＣＥのレジストレーション情報の中で編集項目に指定されたパラメータの値などを画面表示する。音源１６は、周知の波形メモリ読み出し方式にて構成され、ＲＯＭ１３の音色データエリアＴＥに記憶される各種の音色データの内、カレントエリアＣＥのレジストレーション情報に基づきＣＰＵ１２が指定する音色データ（指定音色の波形データ）を用い、演奏情報に応じてＣＰＵ１２が生成するノートオン／ノートオフイベントに従って楽音形成する。また、音源１６はＣＰＵ１２から自動伴奏開始の指示を受けた場合には、カレントエリアＣＥのレジストレーション情報に基づき指定される伴奏データを指定テンポで再生する自動伴奏を行う。サウンドシステム１７は、音源１６から出力される楽音波形をアナログ信号形式に変換した後、不要ノイズ除去やレベル増幅を施してからスピーカから発音させる。
【００２５】
Ｂ．動作  
次に、図４〜図１５を参照して、上記構成による実施形態の動作について説明する。以下では、ＣＰＵ１２が実行するメインルーチン、タイマインタラプト処理、イニシャライズ処理、スイッチ処理（編集スイッチ処理、「＋」，「−」スイッチ処理、スタート／ストップスイッチ処理、セーブスイッチ処理およびコールスイッチ処理）、鍵盤処理および伴奏処理の各動作について述べる。
【００２６】
（１）メインルーチンの動作
電源が投入されると、ＣＰＵ１２は図４に図示するメインルーチンを実行し、ステップＳＡ１に進み、イニシャライズ処理を実行する。イニシャライズ処理では、後述するように、ＲＡＭ１４のワークエリアＷＥにおける各種レジスタ・フラグデータをゼロリセットすると共に、ＲＡＭ１４のカレントエリアＣＥに、デフォルトの設定状態（楽音発生形態）を表すパラメータ（音色データ番号、伴奏データ番号およびテンポ値）を、レジストレーション情報を構成するレジスタＴＯＮＥ、レジスタＢＡＮＳＯおよびレジスタＴＥＭＰＯにそれぞれセットする。
【００２７】
次いで、ステップＳＡ２では、各種スイッチ（編集スイッチ処理、「＋」，「−」スイッチ処理、スタート／ストップスイッチ処理、セーブスイッチ処理およびコールスイッチ処理）の操作に応じたスイッチ処理を実行する。各種スイッチ処理の詳細な動作については追って述べる。
【００２８】
続いて、ステップＳＡ３では、鍵盤処理を実行する。鍵盤処理では、後述するように、伴奏鍵域で押鍵された場合には、押鍵された鍵の音高がコード（和音）として成立するならば、そのコード種および根音をそれぞれレジスタＣＯＤＥ、レジスタＲＯＯＴにストアし、一方、メロディ鍵域で押鍵された場合には、押鍵された鍵の鍵番号およびベロシティを含むノートオンイベントとレジストレーション情報中のレジスタＴＯＮＥ（音色データ番号）とを音源１６に送付して発音指示し、離鍵された場合には、離鍵された鍵の鍵番号を含むノートオフイベントとレジストレーション情報中のレジスタＴＯＮＥ（音色データ番号）とを音源１６に送付して消音指示する。
【００２９】
そして、ステップＳＡ４では、伴奏処理を実行する。伴奏処理では、後述するように、スタートフラグＳＴＦが「１」となって自動伴奏が開始されていると、イベントタイミングに達したかどうかを判断し、イベントタイミングに達していると、読み出しアドレスＡＤを歩進させ、歩進された読み出しアドレスＡＤに応じて伴奏パターンから読み出されるデータ（ＡＤ）が「イベントＥＶ」、「タイムＴ」および「ＥＮＤ」の何れであるかを判別する。
【００３０】
読み出されたデータ（ＡＤ）が「イベントＥＶ」（コード／ベースのイベント）であると、伴奏鍵域でのコード演奏で得られたコード種ＣＯＤＥおよび根音ＲＯＯＴに応じて音高変換されたコード／ベースのイベントを音源１６に供給してコード音（又はベース音）の発音（又は消音）させる。伴奏パターンから読み出されるデータ（ＡＤ）が「タイムＴ」であると、その読み出されたタイムＴを次イベントタイミングとしてレジスタＴにストアする。伴奏パターンから読み出されるデータ（ＡＤ）が伴奏パターンの終わりを表す「ＥＮＤ」ならば、読み出しアドレスＡＤを伴奏パターンの先頭アドレスに戻して伴奏パターンを繰り返し再生させる。
【００３１】
次いで、ステップＳＡ５に進むと、カレントエリアＣＥの内容、すなわち現在の楽音発生形態を表すレジストレーション情報の各パラメータ（レジスタＴＯＮＥの音色データ番号、レジスタＢＡＮＳＯの伴奏データ番号およびレジスタＴＥＭＰＯのテンポ値）を表示部１５に表示する。そして、ステップＳＡ６では、例えば楽器動作の状態を表示部１５に表示させる等の、その他の処理を実行する。この後、上述のステップＳＡ２に処理を戻し、以後、電源がオフされる迄の間、上述のステップＳＡ２〜ＳＡ６の各処理を繰り返し実行する。
【００３２】
（２）タイマインタラプト処理の動作
次に、図５を参照してタイマインタラプト処理の動作を説明する。タイマインタラプト処理は、カレントエリアＣＥに格納されるレジストレーション情報の内、レジスタＴＥＭＰＯに格納されるテンポ値（自動伴奏の再生テンポ）に基づき設定されるインタラプト周期毎に割り込み実行される。割り込み実行タイミングになると、図５に図示するステップＳＢ１に進み、レジスタＴの値をデクリメントして本処理を終える。なお、レジスタＴには、後述するように、自動伴奏のイベントタイミングを表すタイムＴがストアされるようになっている。
【００３３】
（３）イニシャライズ処理の動作
次に、図６を参照してイニシャライズ処理の動作を説明する。上述したメインルーチンのステップＳＡ１（図４参照）を介して本処理が実行されると、ＣＰＵ１２は図６に図示するステップＳＣ１に進み、ＲＡＭ１４のワークエリアＷＥ（図３参照）に設けられる各種レジスタ・フラグデータをゼロリセットし、続くステップＳＣ２では、ＲＡＭ１４のカレントエリアＣＥに、デフォルトの楽音発生形態を表すレジストレーション情報をセットする。すなわち、レジスタＴＯＮＥ、レジスタＢＡＮＳＯおよびレジスタＴＥＭＰＯにそれぞれデフォルト値の音色データ番号、伴奏データ番号およびテンポ値をストアして本処理を終える。
【００３４】
（４）スイッチ処理の動作
次に、図７を参照してスイッチ処理の動作を説明する。上述したメインルーチンのステップＳＡ２（図４参照）を介して本処理が実行されると、ＣＰＵ１２は図７に図示するステップＳＤ１に進み、編集スイッチ（音色スイッチ、伴奏スイッチおよびテンポスイッチ）の内、オン状態のスイッチ種に対応するパラメータ（音色データ番号、伴奏データ番号およびテンポ値）を編集項目に指定する編集スイッチ処理を実行する。
【００３５】
続いて、ステップＳＤ２では、上記ステップＳＤ１の編集スイッチ処理によって編集項目として指定されたパラメータ（音色データ番号、伴奏データ番号およびテンポ値の何れか）を、「＋」スイッチのオン操作に応じてインクリメントしたり、「−」スイッチのオン操作に応じてデクリメントしたりすると共に、インクリメント（又はデクリメント）されたパラメータの値を表示部１５における表示画面の所定位置に表示する「＋」、「−」スイッチ処理を実行する。
【００３６】
次いで、ステップＳＤ３では、スタート／ストップスイッチ処理を実行する。スタート／ストップスイッチ処理では、後述するように、スタート／ストップスイッチのオン操作に応じて反転されたスタートフラグＳＴＦが「１」となって自動伴奏の開始を表す場合には、レジスタＢＡＮＳＯに格納される伴奏データ番号で指定される伴奏パターンの先頭アドレスを読み出しアドレスＡＤとして当該伴奏パターンから最初のデータであるタイムＴを読み出してレジスタＴにストアした後、レジスタＴＥＭＰＯに格納されるテンポ値に基づきインタラプト周期を設定してタイマインタラプト禁止を解除し、一方、オン操作に応じて反転されたスタートフラグＳＴＦが「０」となって自動伴奏の停止を表す場合には、音源１６に対して発音中の全ての伴奏音の消音を指示してタイマインタラプト禁止に設定する。
【００３７】
続いて、ステップＳＤ４では、セーブスイッチのオン操作に応じて、ＲＡＭ１４のカレントエリアＣＥに格納されるレジストレーション情報（レジスタＴＯＮＥ（音色データ番号）、レジスタＢＡＮＳＯ（伴奏データ番号）およびレジスタＴＥＭＰＯ（テンポ値））を読み出し、オン操作されたセーブスイッチの番号ＳＡＶＥに対応するエリアＲＥ（ＳＡＶＥ）に登録するセーブスイッチ処理を実行する。
【００３８】
そして、ステップＳＤ５では、コールスイッチ処理を実行する。コールスイッチ処理では、後述するように、コールスイッチ１〜４の何れかが単独でオン操作された場合には、オン操作されたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）の内容をカレントエリアＣＥにストアするレジストレーション呼び出しを行い、一方、コールスイッチ１〜４の何れか２つが同時にオン操作された場合には、同時オン操作された一方のコールスイッチの番号ＣＡＬＬ１に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）と、他方のコールスイッチの番号ＣＡＬＬ２に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ２）とにそれぞれ格納される各パラメータの中からレジストレーション情報として読み出すパラメータの組み合わせを、同じ２つのコールスイッチの同時オン操作の回数に応じて変更し、変更された組み合わせに従って上記エリアＲＥ（ＣＡＬＬ１）およびエリアＲＥ（ＣＡＬＬ２）から読み出されるパラメータをカレントエリアＣＥにストアするレジストレーション呼び出しを行う。この後、ステップＳＤ６に進み、例えば発生楽音に付加するエフェクト種を選択する等の、その他のスイッチ処理を実行して本処理を終える。
【００３９】
（５）編集スイッチ処理の動作
次に、図８を参照して編集スイッチ処理の動作を説明する。上述したスイッチ処理のステップＳＤ１（図７参照）を介して本処理が実行されると、ＣＰＵ１２は図８に図示するステップＳＥ１に進む。ステップＳＥ１〜ＳＥ３では、編集スイッチを構成する音色スイッチ、伴奏スイッチおよびテンポスイッチの中でオン状態のスイッチ種を判別する。以下、音色スイッチがオン状態の場合、伴奏スイッチがオン状態の場合およびテンポスイッチがオン状態の場合に分けて動作説明を進める。
【００４０】
＜音色スイッチがオン状態の場合＞
音色スイッチがオン状態であると、ステップＳＥ１の判断結果が「ＹＥＳ」となり、ステップＳＥ５に進み、音色フラグＴＯＮＥＦに「１」をセットする一方、伴奏フラグＢＡＮＳＯＦおよびテンポフラグＴＥＭＰＯＦをそれぞれゼロリセットして本処理を終える。なお、音色フラグＴＯＮＥＦ、伴奏フラグＢＡＮＳＯＦおよびテンポフラグＴＥＭＰＯＦは、それぞれ編集項目に指定されたパラメータであるか否かを表すフラグであり、「１」の場合に編集項目であることを表し、「０」の場合に編集項目ではないことを表す。したがって、音色スイッチがオン状態の場合には、レジストレーション情報中の音色データ番号が編集項目として指定される。
【００４１】
＜伴奏スイッチがオン状態の場合＞
伴奏スイッチがオン状態であると、ステップＳＥ２の判断結果が「ＹＥＳ」となり、ステップＳＥ６に進み、伴奏フラグＢＡＮＳＯＦに「１」をセットする一方、音色フラグＴＯＮＥＦおよびテンポフラグＴＥＭＰＯＦをそれぞれゼロリセットして本処理を終える。したがって、伴奏スイッチがオン状態の場合には、レジストレーション情報中の伴奏データ番号が編集項目として指定される。
【００４２】
＜テンポスイッチがオン状態の場合＞
テンポスイッチがオン状態であると、ステップＳＥ３の判断結果が「ＹＥＳ」となり、ステップＳＥ７に進み、テンポフラグＴＥＭＰＯＦに「１」をセットする一方、音色フラグＴＯＮＥＦおよび伴奏フラグＢＡＮＳＯＦをそれぞれゼロリセットして本処理を終える。したがって、テンポスイッチがオン状態の場合には、レジストレーション情報中のテンポ値が編集項目として指定される。なお、音色スイッチ、伴奏スイッチおよびテンポスイッチが何れもオン状態でなければ、上記ステップＳＥ１〜ＳＥ３の各判断結果は何れも「ＮＯ」となるので、ステップＳＥ４に進み、その他のスイッチ処理を実行して本処理を終える。
【００４３】
このように、編集スイッチ処理では、編集スイッチを構成する音色スイッチ、伴奏スイッチおよびテンポスイッチの中でオン状態のスイッチ種を判別し、音色スイッチがオンされていれば、レジストレーション情報中の音色データ番号を編集項目として指定し、伴奏スイッチがオンされていれば、レジストレーション情報中の伴奏データ番号を編集項目として指定し、テンポスイッチがオンされていれば、レジストレーション情報中のテンポ値を編集項目として指定する。
【００４４】
（６）「＋」、「−」スイッチ処理の動作
次に、図９を参照して「＋」、「−」スイッチ処理の動作を説明する。上述したスイッチ処理のステップＳＤ２（図７参照）を介して本処理が実行されると、ＣＰＵ１２は図９に図示するステップＳＦ１に進み、「＋」スイッチがオン操作されたか否かを判断する。「＋」スイッチがオン操作された場合には、判断結果が「ＹＥＳ」となり、ステップＳＦ２以降を実行する。
【００４５】
一方、「＋」スイッチがオン操作されていなければ、上記ステップＳＦ１の判断結果は「ＮＯ」になり、ステップＳＦ９に進み、「−」スイッチがオン操作されたか否かを判断する。「−」スイッチがオン操作された場合には、判断結果が「ＹＥＳ」となり、ステップＳＦ１０以降を実行する。これに対し、「−」スイッチがオン操作されていなければ、上記ステップＳＦ９の判断結果は「ＮＯ」になり、本処理を終える。
【００４６】
以下、「＋」スイッチがオン操作された場合に実行されるステップＳＦ２〜ＳＦ８の動作と、「−」スイッチがオン操作された場合に実行されるステップＳＦ１０〜ＳＦ１６の動作とに分けて説明を進める。
【００４７】
＜「＋」スイッチがオン操作された場合＞
この場合、ステップＳＦ２に進み、音色フラグＴＯＮＥＦが「１」であるか否か、つまりレジストレーション情報中の音色データ番号が編集項目として指定されているかどうかを判断する。音色データ番号が編集項目として指定されていれば、判断結果は「ＹＥＳ」となり、ステップＳＦ３に進む。ステップＳＦ３では、カレントエリアＣＥのレジスタＴＯＮＥに格納される音色データ番号をインクリメントして歩進させた後、ステップＳＦ８に進み、歩進された音色データ番号を表示部１５における表示画面の所定位置に表示して本処理を終える。
【００４８】
一方、音色データ番号が編集項目として指定されていなければ、上記ステップＳＦ２の判断結果は「ＮＯ」となり、ステップＳＦ４に進む。ステップＳＦ４では、伴奏フラグＢＡＮＳＯＦが「１」であるか否か、つまりレジストレーション情報中の伴奏データ番号が編集項目として指定されているかどうかを判断する。伴奏データ番号が編集項目として指定されていれば、判断結果は「ＹＥＳ」となり、ステップＳＦ５に進む。ステップＳＦ５では、カレントエリアＣＥのレジスタＢＡＮＳＯに格納される伴奏データ番号をインクリメントして歩進させた後、ステップＳＦ８に進み、歩進された伴奏データ番号を表示部１５における表示画面の所定位置に表示して本処理を終える。
【００４９】
これに対し、伴奏データ番号が編集項目として指定されていなければ、上記ステップＳＦ４の判断結果は「ＮＯ」となり、ステップＳＦ６に進む。ステップＳＦ６では、テンポフラグＴＥＭＰＯＦが「１」であるか否か、つまりレジストレーション情報中のテンポ値が編集項目として指定されているかどうかを判断する。テンポ値が編集項目として指定されていれば、判断結果は「ＹＥＳ」となり、ステップＳＦ７に進む。ステップＳＦ７では、カレントエリアＣＥのレジスタＴＥＭＰＯに格納されるテンポ値をインクリメントして歩進させた後、ステップＳＦ８に進み、歩進されたテンポ値を表示部１５における表示画面の所定位置に表示して本処理を終える。
【００５０】
＜「−」スイッチがオン操作された場合＞
この場合、ステップＳＦ１０に進み、音色フラグＴＯＮＥＦが「１」であるか否か、つまりレジストレーション情報中の音色データ番号が編集項目として指定されているかどうかを判断する。音色データ番号が編集項目として指定されていれば、判断結果は「ＹＥＳ」となり、ステップＳＦ１１に進む。ステップＳＦ１１では、カレントエリアＣＥのレジスタＴＯＮＥに格納される音色データ番号をデクリメントした後、ステップＳＦ１６に進み、デクリメントされた音色データ番号を表示部１５における表示画面の所定位置に表示して本処理を終える。
【００５１】
一方、音色データ番号が編集項目として指定されていなければ、上記ステップＳＦ１０の判断結果は「ＮＯ」となり、ステップＳＦ１２に進む。ステップＳＦ１０では、伴奏フラグＢＡＮＳＯＦが「１」であるか否か、つまりレジストレーション情報中の伴奏データ番号が編集項目として指定されているかどうかを判断する。伴奏データ番号が編集項目として指定されていれば、判断結果は「ＹＥＳ」となり、ステップＳＦ１３に進む。ステップＳＦ１３では、カレントエリアＣＥのレジスタＢＡＮＳＯに格納される伴奏データ番号をデクリメントした後、ステップＳＦ１６に進み、デクリメントされた伴奏データ番号を表示部１５における表示画面の所定位置に表示して本処理を終える。
【００５２】
これに対し、伴奏データ番号が編集項目として指定されていなければ、上記ステップＳＦ１２の判断結果は「ＮＯ」となり、ステップＳＦ１４に進む。ステップＳＦ１４では、テンポフラグＴＥＭＰＯＦが「１」であるか否か、つまりレジストレーション情報中のテンポ値が編集項目として指定されているかどうかを判断する。テンポ値が編集項目として指定されていれば、判断結果は「ＹＥＳ」となり、ステップＳＦ１５に進む。ステップＳＦ１５では、カレントエリアＣＥのレジスタＴＥＭＰＯに格納されるテンポ値をデクリメントした後、ステップＳＦ１６に進み、デクリメントされたテンポ値を表示部１５における表示画面の所定位置に表示して本処理を終える。一方、テンポ値が編集項目として指定されていなければ、上記ステップＳＦ１４の判断結果は「ＮＯ」になり、本処理を終える。
【００５３】
このように、「＋」、「−」スイッチ処理では、前述の編集スイッチ処理によって指定された編集項目（音色データ番号、伴奏データ番号およびテンポ値）の値を、「＋」スイッチのオン操作に応じてインクリメントしたり、「−」スイッチのオン操作に応じてデクリメントしたりすると共に、インクリメント（又はデクリメント）されたパラメータの値を表示部１５における表示画面の所定位置に表示する。
【００５４】
（７）スタート／ストップスイッチ処理の動作
次に、図１０を参照してスタート／ストップスイッチ処理の動作を説明する。前述したスイッチ処理のステップＳＤ３（図７参照）を介して本処理が実行されると、ＣＰＵ１２は図１０に図示するステップＳＧ１に進み、スタート／ストップスイッチがオン操作されたかどうかを判断する。オン操作されていなければ、判断結果は「ＮＯ」となり、本処理を終えるが、オン操作されていると、上記ステップＳＧ１の判断結果は「ＹＥＳ」になり、ステップＳＧ２に進み、スタートフラグＳＴＦを反転させる。スタートフラグＳＴＦは、そのフラグ値が「１」の場合に自動伴奏開始（もしくは伴奏進行中）を表し、「０」の場合に自動伴奏停止を表す。
【００５５】
次いで、ステップＳＧ３では、オン操作に応じて反転されたスタートフラグＳＴＦが「１」、つまり自動伴奏の開始であるかどうかを判断する。自動伴奏の開始であると、判断結果は「ＹＥＳ」となり、ステップＳＧ４に進む。ステップＳＧ４では、ＲＯＭ１３の伴奏データエリアＡＥにおいて、レジスタＢＡＮＳＯに格納される伴奏データ番号で指定される伴奏パターンの先頭アドレスを、レジスタＡＤにストアする。以下、レジスタＡＤの内容を読み出しアドレスＡＤと称する。
【００５６】
そして、ステップＳＧ５では、読み出しアドレスＡＤに従い、伴奏データ番号で指定される伴奏パターンから最初のデータであるタイムＴを読み出してレジスタＴにストアする。次いで、ステップＳＧ６では、レジスタＴＥＭＰＯに格納されるテンポ値に基づきインタラプト周期を設定し、続くステップＳＧ７では、タイマインタラプト禁止を解除して本処理を終える。なお、上記ステップＳＧ７にてタイマインタラプト禁止が解除されると、前述したタイマインタラプト処理（図５参照）が、上記ステップＳＧ６で設定した周期毎に割り込み実行される。
【００５７】
さて一方、オン操作に応じて反転されたスタートフラグＳＴＦが「０」、つまり自動伴奏停止になると、上記ステップＳＧ３の判断結果は「ＮＯ」になり、ステップＳＧ８に進み、音源１６に対して発音中の全ての伴奏音の消音を指示するオールノートオフ処理を行った後、ステップＳＧ９に進み、タイマインタラプト禁止に設定して本処理を終える。
【００５８】
このように、スタート／ストップスイッチ処理では、スタート／ストップスイッチのオン操作に応じて反転されたスタートフラグＳＴＦが「１」となって自動伴奏の開始を表す場合には、レジスタＢＡＮＳＯに格納される伴奏データ番号で指定される伴奏パターンの先頭アドレスを読み出しアドレスＡＤとして当該伴奏パターンから最初のデータであるタイムＴを読み出してレジスタＴにストアした後、レジスタＴＥＭＰＯに格納されるテンポ値に基づきインタラプト周期を設定してタイマインタラプト禁止を解除する。一方、オン操作に応じて反転されたスタートフラグＳＴＦが「０」となって自動伴奏の停止を表す場合には、音源１６に対して発音中の全ての伴奏音の消音を指示してタイマインタラプト禁止に設定する。
【００５９】
（８）セーブスイッチ処理の動作
次に、図１１を参照してセーブスイッチ処理の動作を説明する。前述したスイッチ処理のステップＳＤ４（図７参照）を介して本処理が実行されると、ＣＰＵ１２は図１１に図示するステップＳＨ１に進み、ＲＡＭ１４のレジストレーションエリアＲＥに設けられたエリアＲＥ（１）〜（４）にそれぞれ対応付けられたセーブスイッチ１〜４の何れかがオン操作されたか否かを判断する。何れもオン操作されていなければ、判断結果は「ＮＯ」になり、本処理を終えるが、何れかがオン操作されると、上記ステップＳＨ１の判断結果は「ＹＥＳ」になり、ステップＳＨ２に進む。
【００６０】
ステップＳＨ２では、オン操作されたセーブスイッチの番号をレジスタＳＡＶＥにストアし、続くステップＳＨ３では、ＲＡＭ１４のカレントエリアＣＥに格納されるレジスタＴＯＮＥ（音色データ番号）、レジスタＢＡＮＳＯ（伴奏データ番号）およびレジスタＴＥＭＰＯ（テンポ値）をそれぞれ読み出し、ＲＡＭ１４のレジストレーションエリアＲＥ中の、レジスタＳＡＶＥにストアされたセーブスイッチの番号に対応するエリアＲＥ（ＳＡＶＥ）にストアして本処理を終える。
【００６１】
このように、セーブスイッチ処理では、セーブスイッチのオン操作に応じて、ＲＡＭ１４のカレントエリアＣＥに格納されるレジストレーション情報（レジスタＴＯＮＥ（音色データ番号）、レジスタＢＡＮＳＯ（伴奏データ番号）およびレジスタＴＥＭＰＯ（テンポ値））を読み出し、オン操作されたセーブスイッチの番号ＳＡＶＥに対応するエリアＲＥ（ＳＡＶＥ）に登録する。
【００６２】
（９）コールスイッチ処理の動作
次に、図１２〜図１３を参照してコールスイッチ処理の動作を説明する。前述したスイッチ処理のステップＳＤ５（図７参照）を介して本処理が実行されると、ＣＰＵ１２は図１２に図示するステップＳＪ１に進み、ＲＡＭ１４のレジストレーションエリアＲＥに設けられたエリアＲＥ（１）〜（４）にそれぞれ対応付けられたコールスイッチ１〜４の何れか２つが同時にオン操作されたか否かを判断する。
【００６３】
コールスイッチが２個同時オン操作されなければ、判断結果は「ＮＯ」になり、ステップＳＪ２に進み、単独のオン操作であるか否かを判断する。オン操作されなければ、判断結果は「ＮＯ」になり、本処理を終えるが、単独のオン操作であると、上記ステップＳＪ２の判断結果は「ＹＥＳ」になり、ステップＳＪ３に進み、オン操作されたコールスイッチの番号をレジスタＣＡＬＬ１にストアする。そして、ステップＳＪ４では、レジスタＣＡＬＬ１にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）の内容をカレントエリアＣＥにストアするレジストレーション呼び出しを行って本処理を終える。
【００６４】
一方、コールスイッチが２個同時オン操作されると、上記ステップＳＪ１の判断結果は「ＹＥＳ」となり、ステップＳＪ５に進み、コールスイッチ１〜４の中で同時にオン操作された２つのコールスイッチの番号をレジスタＣＡＬＬ１，ＣＡＬＬ２にそれぞれストアする。なお、同時にオン操作された２つのコールスイッチの番号の内、数値の小さい方の番号をレジスタＣＡＬＬ１側にストアするルールや、一方のコールスイッチがオンされてから所定時間内に他方のコールスイッチがオンされた時に２個同時オン操作と見なし、先にオン操作された一方のコールスイッチの番号をレジスタＣＡＬＬ１側にストアするルールなどを適用してレジスタＣＡＬＬ１，ＣＡＬＬ２にそれぞれストアするコールスイッチの番号を区別する。
【００６５】
次いで、ステップＳＪ６では、レジスタＣＡＬＬ１，ＣＡＬＬ２にそれぞれ格納され、今回２個同時オン操作されたコールスイッチの各番号と、レジスタＦＣＡＬＬ１，ＦＣＡＬＬ２にそれぞれ格納され、前回２個同時オン操作されたコールスイッチの各番号とが一致するか否かを判断する。以下、最初の２個同時オン操作が為された場合と、２回目以降の２個同時オン操作が為された場合とに分けて動作説明を進める。
【００６６】
＜最初の２個同時オン操作が為された場合＞
最初の２個同時オン操作であると、レジスタＦＣＡＬＬ１，ＦＣＡＬＬ２には前回の２個同時オン操作されたコールスイッチの各番号がストアされていない為、上記ステップＳＪ６の判断結果は「ＮＯ」となり、ステップＳＪ７に進み、２個同時オン操作の回数を計数するレジスタＮに初期値「１」をストアする。以下、レジスタＮの内容を２個同時オン操作回数Ｎと称す。次いで、ステップＳＪ１０では、２個同時オン操作回数Ｎが「１」であるか否かを判断する。最初の２個同時オン操作では、上記ステップＳＪ７において２個同時オン操作回数Ｎが初期値「１」に設定されるので、判断結果は「ＹＥＳ」となり、ステップＳＪ１１に進む。
【００６７】
ステップＳＪ１１では、レジスタＣＡＬＬ１にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）におけるレジスタＴＯＮＥの音色データ番号と、レジスタＢＡＮＳＯの伴奏データ番号と、レジスタＴＥＭＰＯのテンポ値とをカレントエリアＣＥにストアするレジストレーション呼び出しを行う。続いて、ステップＳＪ１２に進み、レジスタＣＡＬＬ１，ＣＡＬＬ２にそれぞれ格納され、今回２個同時オン操作されたコールスイッチの各番号を、前回２個同時オン操作されたコールスイッチの各番号としてレジスタＦＣＡＬＬ１，ＦＣＡＬＬ２にそれぞれストアした後、本処理を終える。
【００６８】
＜２回目以降の２個同時オン操作が為された場合＞
初回と同じ２つのコールスイッチが同時オン操作されたとする。そうすると、レジスタＦＣＡＬＬ１，ＦＣＡＬＬ２にはそれぞれ最初に２個同時オン操作したコールスイッチの各番号がストアされているから、上述したステップＳＪ６の判断結果は「ＹＥＳ」になり、ステップＳＪ８に進む。ステップＳＪ８では、２個同時オン操作回数Ｎをインクリメントして歩進させ、続くステップＳＪ９では、歩進された２個同時オン操作回数Ｎが「６」より大きいか否か、つまり７回目の２個同時オン操作が為されたかどうかを判断する。７回目の２個同時オン操作ならば、判断結果は「ＮＯ」になり、上述したステップＳＪ７に処理を戻し、２個同時オン操作回数Ｎを初期値「１」にリセットする。この場合、上述した最初の２個同時オン操作時の動作が実行される。
【００６９】
これに対し、７回目の２個同時オン操作でない場合、すなわち歩進された２個同時オン操作回数Ｎが「２回目」〜「６回目」の何れかであると、上記ステップＳＪ９の判断結果は「ＮＯ」になり、ステップＳＪ１０に進む。そして、ステップＳＪ１０では、２個同時オン操作回数Ｎが「１回目」であるか否かを判断する為、２個同時オン操作回数Ｎが「２回目」〜「６回目」の何れかの場合には、判断結果が「ＮＯ」となり、ステップＳＪ１３に進む。
【００７０】
次に、ステップＳＪ１３、図１３に図示するステップＳＪ１５、ステップＳＪ１７、ステップＳＪ１９およびステップＳＪ２２では、それぞれ２個同時オン操作回数Ｎが「２回目」、「３回目」、「４回目」、「５回目」および「６回目」であるか否かを判断する。以下、２個同時オン操作回数Ｎが「２回目」、「３回目」、「４回目」、「５回目」および「６回目」の各場合に分けて動作を説明する。
【００７１】
（ａ）２個同時オン操作回数Ｎが「２回目」の場合
２個同時オン操作回数Ｎが「２回目」であると、ステップＳＪ１３の判断結果は「ＹＥＳ」となり、ステップＳＪ１４に進む。ステップＳＪ１４では、レジスタＣＡＬＬ１にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）におけるレジスタＴＯＮＥの音色データ番号と、レジスタＢＡＮＳＯの伴奏データ番号と、レジスタＣＡＬＬ２にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ２）におけるレジスタＴＥＭＰＯのテンポ値とをカレントエリアＣＥにストアするレジストレーション呼び出しを行った後、本処理を終える。
【００７２】
（ｂ）２個同時オン操作回数Ｎが「３回目」の場合
２個同時オン操作回数Ｎが「３回目」であると、図１３に図示するステップＳＪ１５の判断結果が「ＹＥＳ」となり、ステップＳＪ１６に進む。ステップＳＪ１６では、レジスタＣＡＬＬ１にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）におけるレジスタＴＯＮＥの音色データ番号と、レジスタＣＡＬＬ２にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ２）におけるレジスタＢＡＮＳＯの伴奏データ番号と、レジスタＴＥＭＰＯのテンポ値とをカレントエリアＣＥにストアするレジストレーション呼び出しを行った後、本処理を終える。
【００７３】
（ｃ）２個同時オン操作回数Ｎが「４回目」の場合
２個同時オン操作回数Ｎが「４回目」であると、ステップＳＪ１７の判断結果が「ＹＥＳ」となり、ステップＳＪ１８に進む。ステップＳＪ１８では、レジスタＣＡＬＬ１にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）におけるレジスタＢＡＮＳＯの伴奏データ番号と、レジスタＣＡＬＬ２にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ２）におけるレジスタＴＯＮＥの音色データ番号と、レジスタＴＥＭＰＯのテンポ値とをカレントエリアＣＥにストアするレジストレーション呼び出しを行った後、本処理を終える。
【００７４】
（ｄ）２個同時オン操作回数Ｎが「５回目」の場合
２個同時オン操作回数Ｎが「５回目」であると、ステップＳＪ１９の判断結果が「ＹＥＳ」となり、ステップＳＪ２０に進む。ステップＳＪ２０では、レジスタＣＡＬＬ１にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）におけるレジスタＴＥＭＰＯのテンポ値と、レジスタＣＡＬＬ２にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ２）におけるレジスタＴＯＮＥの音色データ番号と、レジスタＢＡＮＳＯの伴奏データ番号とをカレントエリアＣＥにストアするレジストレーション呼び出しを行った後、本処理を終える。
【００７５】
（ｅ）２個同時オン操作回数Ｎが「６回目」の場合
２個同時オン操作回数Ｎが「６回目」であると、ステップＳＪ２１の判断結果が「ＹＥＳ」となり、ステップＳＪ２２に進む。ステップＳＪ２２では、レジスタＣＡＬＬ２にストアしたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ２）におけるレジスタＴＯＮＥの音色データ番号と、レジスタＢＡＮＳＯの伴奏データ番号と、レジスタＴＥＭＰＯのテンポ値とをカレントエリアＣＥにストアするレジストレーション呼び出しを行った後、本処理を終える。
【００７６】
このように、コールスイッチ処理では、コールスイッチ１〜４の何れかが単独でオン操作された場合には、オン操作されたコールスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）の内容をカレントエリアＣＥにストアするレジストレーション呼び出しを行い、一方、コールスイッチ１〜４の何れか２つが同時にオン操作された場合には、同時オン操作された一方のコールスイッチの番号ＣＡＬＬ１に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）と、他方のコールスイッチの番号ＣＡＬＬ２に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ２）とにそれぞれ格納される各パラメータの中からレジストレーション情報として読み出すパラメータの組み合わせを、同じ２つのコールスイッチの同時オン操作の回数に応じて変更し、変更された組み合わせに従って上記エリアＲＥ（ＣＡＬＬ１）およびエリアＲＥ（ＣＡＬＬ２）から読み出されるパラメータをカレントエリアＣＥにストアするレジストレーション呼び出しを行う。
【００７７】
（１０）鍵盤処理の動作
次に、図１４を参照して鍵盤処理の動作を説明する。前述したメインルーチンのステップＳＡ３（図４参照）を介して本処理が実行されると、ＣＰＵ１２は図１４に図示するステップＳＫ１に進み、鍵盤１０の伴奏鍵域の各鍵について鍵走査を行い、続くステップＳＫ２では、その鍵走査で取得される鍵変化に基づき押鍵の有無を判断する。押鍵が無ければ、判断結果は「ＮＯ」となり、後述のステップＳＫ５に進む。なお、伴奏鍵域とは、鍵盤１０における所定の鍵より低音側の鍵域を指し、それとは逆の高音側の鍵域が後述のメロディ鍵域となる。
【００７８】
一方、伴奏鍵域で押鍵が有ると、上記ステップＳＫ２の判断結果は「ＹＥＳ」となり、ステップＳＫ３に進み、押鍵された鍵の鍵番号に基づきコード成立の有無、つまりコード演奏が為されたかどうかを判断する。コードが成立しない押鍵であると、判断結果は「ＮＯ」となり、後述のステップＳＫ５に進むが、コード演奏ならば、上記ステップＳＫ３の判断結果は「ＹＥＳ」となり、ステップＳＫ４に進み、成立したコードのコード種を表すデータをレジスタＣＯＤＥにストアし、成立したコードの根音を表すデータをレジスタＲＯＯＴにストアする。
【００７９】
次いで、ステップＳＫ５では、鍵盤１０のメロディ鍵域の各鍵について鍵走査を行い、続くステップＳＫ６では、鍵走査で得られる鍵変化に基づき押離鍵操作された鍵を判別する。押離鍵操作が行われず、鍵変化無しの場合には本処理を終える。押鍵操作に応じたキーオンイベントが発生した場合には、ステップＳＫ７に進み、押鍵番号（押鍵された鍵の鍵番号）およびベロシティによりノートオンイベントを作成する。
【００８０】
そして、ステップＳＫ８に進み、ＲＡＭ１４のカレントエリアＣＥからレジストレーション情報のレジスタＴＯＮＥ（音色データ番号）を読み出し、読み出した音色データ番号と共に、上記ステップＳＫ８で作成したノートオンイベントを音源１６に供給して本処理を終える。これにより、レジスタＴＯＮＥ（音色データ番号）で指定される音色の楽音が、メロディ鍵域で押鍵された鍵の音高で発音される。
【００８１】
これに対し、離鍵操作に応じたキーオフイベントが発生した場合には、ステップＳＫ９に進む。ステップＳＫ９では、離鍵番号（離鍵された鍵の鍵番号）によりノートオフイベントを作成する。そして、ステップＳＫ８に進み、ＲＡＭ１４のカレントエリアＣＥからレジストレーション情報のレジスタＴＯＮＥ（音色データ番号）を読み出し、読み出した音色データ番号と共に、上記ステップＳＫ９で作成したノートオフイベントを音源１６に供給して本処理を終える。これにより、離鍵された鍵の音高で発音中の楽音が消音される。
【００８２】
このように、鍵盤処理では、伴奏鍵域でコード演奏が為されると、そのコード種および根音をそれぞれレジスタＣＯＤＥ、レジスタＲＯＯＴにストアし、一方、メロディ鍵域で押鍵された場合には、押鍵された鍵の鍵番号およびベロシティを含むノートオンイベントとレジストレーション情報中のレジスタＴＯＮＥ（音色データ番号）とを音源１６に送付して発音指示し、離鍵された場合には、離鍵された鍵の鍵番号を含むノートオフイベントとレジストレーション情報中のレジスタＴＯＮＥ（音色データ番号）とを音源１６に送付して消音指示する。
【００８３】
（１１）伴奏処理の動作
次に、図１５を参照して伴奏処理の動作を説明する。前述したメインルーチンのステップＳＡ４（図４参照）を介して本処理が実行されると、ＣＰＵ１２は図１４に図示するステップＳＬ１に進み、スタートフラグＳＴＦが「１」であるか否か、つまり自動伴奏が開始されているかどうかを判断する。自動伴奏の停止（スタートフラグＳＴＦが「０」）ならば、判断結果は「ＮＯ」になり、本処理を終える。
【００８４】
一方、自動伴奏が開始されていれば、上記ステップＳＬ１の判断結果は「ＹＥＳ」となり、ステップＳＬ２に進む。ステップＳＬ２では、前述したタイマインタラプト処理（図５参照）によりデクリメントされるレジスタＴの値が「０」以下であるか否か、つまりイベントタイミングに達したかどうかを判断する。イベントタイミングに達していなければ、判断結果は「ＮＯ」となり、本処理を終えるが、イベントタイミングに達していると、上記ステップＳＬ２の判断結果は「ＹＥＳ」になり、ステップＳＬ３に進む。
【００８５】
そして、ステップＳＬ３では、伴奏パターンの読み出しを進めるべく読み出しアドレスＡＤをインクリメントして歩進させ、続くステップＳＬ４では、歩進された読み出しアドレスＡＤに応じて伴奏パターンから読み出されるデータ（ＡＤ）が「イベントＥＶ」、「タイムＴ」および「ＥＮＤ」の何れであるかを判別する。なお、歩進された読み出しアドレスＡＤに応じて読み出される伴奏パターンとは、ＲＯＭ１３の伴奏データエリアＡＥにおいて、レジスタＢＡＮＳＯに格納される伴奏データ番号に対応付けられた伴奏パターンを指す。
【００８６】
伴奏パターンから読み出されるデータ（ＡＤ）が「イベントＥＶ」であると、ステップＳＬ５に進み、その読み出されたイベントＥＶがコード音／ベース音のイベントであるか否かを判断する。音高要素を持たないリズム音のイベントならば、判断結果は「ＮＯ」になり、ステップＳＬ７に進み、リズム音のイベントを音源１６に供給してリズム音の発音を指示した後、上述したステップＳＬ３に処理を戻す。
【００８７】
これに対し、コード音／ベース音のイベントであると、上記ステップＳＬ５の判断結果は「ＹＥＳ」となり、ステップＳＬ６に進む。ステップＳＬ６では、前述した鍵盤処理（図１３参照）において、伴奏鍵域でのコード演奏で得られたコード種ＣＯＤＥおよび根音ＲＯＯＴに応じて、コード音／ベース音のイベントに含まれるコード音の音高（又はベース音の音高）を音高変換し、続くステップＳＬ７では、音高変換されたコード音／ベース音のイベントを音源１６に供給してコード音（又はベース音）の発音（又は消音）を指示した後、上述したステップＳＬ３に処理を戻す。
【００８８】
そして、上記ステップＳＬ３において歩進された読み出しアドレスＡＤに応じて、伴奏パターンから「タイムＴ」が読み出されると、ステップＳＬ８に進み、その読み出されたタイムＴを次イベントタイミングとしてレジスタＴにストアして一旦、本処理を終える。
【００８９】
伴奏パターンから読み出されるデータ（ＡＤ）が伴奏パターンの終わりを表す「ＥＮＤ」になると、ステップＳＫ９に進み、ＲＯＭ１３の伴奏データエリアＡＥにおいて、レジスタＢＡＮＳＯに格納される伴奏データ番号に対応付けられた伴奏パターンの先頭アドレスを読み出しアドレスＡＤとしてセットした後、上述したステップＳＫ４に処理を戻す。これにより、自動伴奏進行中であれば、伴奏パターンが繰り返し再生される。
【００９０】
このように、伴奏処理では、スタートフラグＳＴＦが「１」となって自動伴奏が開始されていると、イベントタイミングに達したかどうかを判断し、イベントタイミングに達していると、読み出しアドレスＡＤを歩進させ、歩進された読み出しアドレスＡＤに応じて伴奏パターンから読み出されるデータ（ＡＤ）が「イベントＥＶ」、「タイムＴ」および「ＥＮＤ」の何れであるかを判別する。読み出されたデータ（ＡＤ）が「イベントＥＶ」ならば、コード／ベースのイベントであるか否かを判断する。
【００９１】
音高要素を持たないリズム音のイベントならば、そのリズム音のイベントを音源１６に供給してリズム音の発音させ、コード音／ベース音のイベントであると、伴奏鍵域でのコード演奏で得られたコード種ＣＯＤＥおよび根音ＲＯＯＴに応じて音高変換されたコード音／ベース音のイベントを音源１６に供給してコード音（又はベース音）の発音（又は消音）させる。伴奏パターンから読み出されるデータ（ＡＤ）が「タイムＴ」であると、その読み出されたタイムＴを次イベントタイミングとしてレジスタＴにストアする。伴奏パターンから読み出されるデータ（ＡＤ）が伴奏パターンの終わりを表す「ＥＮＤ」ならば、読み出しアドレスＡＤを伴奏パターンの先頭アドレスに戻して伴奏パターンを繰り返し再生させる。
【００９２】
以上説明したように、本実施形態では、セーブスイッチのオン操作に応じて、カレントエリアＣＥのレジスタＴＯＮＥ（音色データ番号）と、レジスタＢＡＮＳＯ（伴奏データ番号）と、レジスタＴＥＭＰＯ（テンポ値）とを、当該オン操作されたセーブスイッチの番号に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＳＡＶＥ）に登録した後、コールスイッチ１〜４の何れか２つが同時にオン操作されると、同時オン操作された一方のコールスイッチの番号ＣＡＬＬ１に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ１）と、他方のコールスイッチの番号ＣＡＬＬ２に対応するレジストレーションエリアＲＥ中のエリアＲＥ（ＣＡＬＬ２）とにそれぞれ格納される各パラメータの中からレジストレーション情報として読み出すパラメータの組み合わせを、同じ２つのコールスイッチの同時オン操作の回数に応じて変更し、変更された組み合わせに従って上記エリアＲＥ（ＣＡＬＬ１）およびエリアＲＥ（ＣＡＬＬ２）から読み出されるパラメータをカレントエリアＣＥにストアするレジストレーション呼び出しを行う。
【００９３】
したがって、ユーザは好みのパラメータの組み合わせで構成される所望のレジストレーション情報が呼び出されるまで同じ２つのコールスイッチの同時オン操作を繰り返し行い、これにより例えば一部のパラメータについてはあるレジストレーション情報から呼び出し、残りのパラメータについては別のレジストレーション情報から呼び出すといった具合に、できる限りユーザの意図に沿った設定に変更することができる。さらには、同時オン操作する２つのコールスイッチの番号を異ならせることで読み出すパラメータの組み合わせのバリエーションをより一層多種多様化させる為、できる限りユーザの意図に沿った設定に変更することができる。
【００９４】
なお、上述した実施形態では、説明の簡略化を図る為、コールスイッチ１〜４の何れか２つが同時にオン操作された場合について例示したが、これに限定されず２つ以上のコールスイッチが同時オン操作される態様であっても構わない。その場合、読み出すパラメータの組み合わせのバリエーションを増やせる為、きめ細かくユーザの意図に沿った設定に変更することが可能になる。
【符号の説明】
【００９５】
１０  鍵盤
１１  操作部
１２  ＣＰＵ
１３  ＲＯＭ
１４  ＲＡＭ
１５  表示部
１６  音源
１７  サウンドシステム
１００  電子楽器
【図１】
0005605695.tif 000002
【図２】
0005605695.tif 000003
【図３】
0005605695.tif 000004
【図４】
0005605695.tif 000005
【図５】
0005605695.tif 000006
【図６】
0005605695.tif 000007
【図７】
0005605695.tif 000008
【図８】
0005605695.tif 000009
【図９】
0005605695.tif 000010
【図１０】
0005605695.tif 000011
【図１１】
0005605695.tif 000012
【図１２】
0005605695.tif 000013
【図１３】
0005605695.tif 000014
【図１４】
0005605695.tif 000015
【図１５】
0005605695.tif 000016