(57)【要約】      （修正有）【課題】左手演奏と右手演奏とで微妙に音色変化する自然打楽器音らしさを醸し出す楽音発生装置を提供する。【解決手段】ＣＰＵ１５は、パッド１０の左手演奏又は右手演奏が為されたイベント発生タイミングおよび左手演奏／右手演奏を区別する方向フラグをイベント履歴として記憶する。現イベントが発生すると、イベント履歴を参照して連打判定する判定条件に収まるか否かを判別する。判定条件に収まると、現イベントを前回イベントと同じ手の演奏の連打と見做し、予め記憶された左手／右手演奏時の打撃音の内、前回イベントと同じ手の演奏時の打撃音を選択して発音し、一方、判定条件に収まらず、現イベントが連打と見做されなければ、予め記憶された左手／右手演奏時の打撃音の内、前回イベントと反対の手の演奏時の打撃音を選択して発音する。【選択図】図２
2015225332.tif 000002
【特許請求の範囲】
【請求項１】
パッドを第１の演奏手法で打撃したときに発生する第１の打撃音を表わす波形、及び前記パッドを第２の演奏手法で打撃したときに発生する第２の打撃音を表わす波形を記憶させた第１のメモリと、
前記第１の演奏手法及び第２の演奏手法のいずれか一方を示す情報を記憶する第２のメモリと、
前記パッドが打撃されたか否かを検出する打撃センサと、
前記打撃センサにより打撃が検出される度に、前記検出された打撃と当該打撃の直前に検出された打撃との関係が予め定められた条件を満たすか否かを判別する判別手段と、
前記判別手段により前記予め定められた条件を満たすと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する一方、前記予め定められた条件を満たさないと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法とは異なる演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する選択手段と、
前記選択手段により打撃音を表わす波形が選択された後、前記第２のメモリの記憶内容を、当該選択された波形が表わす打撃音に対応する演奏手法を示す情報に更新する更新手段と、
音源に対して、前記選択手段にて選択された波形を前記第１のメモリから読み出し、当該読み出された波形に基づいた打撃音の生成を指示する生成指示手段と、
を有する楽音発生装置。
【請求項２】
前記判別手段は、
前記打撃センサにて打撃が検出されてから次の打撃が検出されるまでの時間をカウントする第１のカウンタを有し、
前記第１のカウンタでカウントされた時間が、予め設定された第１の時間以下の場合は、予め定められた条件を満たしていないと判別する、請求項１に記載の楽音発生装置。
【請求項３】
前記判別手段は、
前記更新手段により前記第２のメモリの記憶内容を更新する度に、当該第２のメモリの記憶内容と前記選択された波形が表わす打撃音に対応する演奏手法を示す情報とが同一であることを検出したときはカウント値をアップするとともに、同一でない場合は前記カウント値をリセットする第２のカウンタを有し、
前記第１のカウンタでカウントされた時間が、予め設定された第１の時間を超えている場合でかつ、前記第２のカウンタのカウント値が予め設定されたカウント値以上の場合は、前記予め定められた条件を満たしていないと判別する、請求項２に記載の楽音発生装置。
【請求項４】
前記判別手段は、
前記第１のカウンタでカウントされた時間が、予め設定された第１の時間を超えている場合でかつ、前記第２のカウンタのカウント値が予め設定されたカウント値より小さい場合に、乱数を発生する乱数発生手段を有し、
前記乱数発生手段により発生された乱数の値が予め設定された値より小さい場合に前記予め定められた条件を満たしていると判別する、請求項３に記載の楽音発生装置。
【請求項５】
前記第１のカウンタでカウントされた時間が、予め設定された第２の時間を超えている場合に、前記第２のメモリに記憶された情報に係らず、予め定められた演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択するように、前記選択手段を制御する制御手段をさらに設けた、請求項１乃至４のいずれかに記載の楽音発生装置。
【請求項６】
前記第１の演奏手法は、左右いずれか一方の手を用いて前記パッドを打撃する演奏手法であり、前記第２の演奏手法は、他方の手を用いて前記パッドを打撃する演奏手法である、請求項１乃至５のいずれかに記載の楽音発生装置。
【請求項７】
パッドを第１の演奏手法で打撃したときに発生する第１の打撃音を表わす波形、及び前記パッドを第２の演奏手法で打撃したときに発生する第２の打撃音を表わす波形を記憶させた第１のメモリと、前記第１の演奏手法及び第２の演奏手法のいずれか一方を示す情報を記憶する第２のメモリと、前記パッドが打撃されたか否かを検出する打撃センサと、を有する楽音発生装置が、
前記打撃センサにより打撃が検出される度に、前記検出された打撃と当該打撃の直前に検出された打撃との関係が予め定められた条件を満たすか否かを判別し、
前記予め定められた条件を満たすと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する一方、前記予め定められた条件を満たさないと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法とは異なる演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択し、
前記打撃音を表わす波形が選択された後、前記第２のメモリの記憶内容を、当該選択された波形が表わす打撃音に対応する演奏手法を示す情報に更新し、
音源に対して、前記選択された波形を前記第１のメモリから読み出し、当該読み出された波形に基づいた打撃音の生成を指示する、楽音発生方法。
【請求項８】
パッドを第１の演奏手法で打撃したときに発生する第１の打撃音を表わす波形、及び前記パッドを第２の演奏手法で打撃したときに発生する第２の打撃音を表わす波形を記憶させた第１のメモリと、前記第１の演奏手法及び第２の演奏手法のいずれか一方を示す情報を記憶する第２のメモリと、前記パッドが打撃されたか否かを検出する打撃センサと、を有する楽音発生装置として用いられるコンピュータに、
前記打撃センサにより打撃が検出される度に、前記検出された打撃と当該打撃の直前に検出された打撃との関係が予め定められた条件を満たすか否かを判別するステップと、
前記予め定められた条件を満たすと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する一方、前記予め定められた条件を満たさないと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法とは異なる演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択するステップと、
前記打撃音を表わす波形が選択された後、前記第２のメモリの記憶内容を、当該選択された波形が表わす打撃音に対応する演奏手法を示す情報に更新するステップと、
音源に対して、前記選択された波形を前記第１のメモリから読み出し、当該読み出された波形に基づいた打撃音の生成を指示するステップと、
を実行させるプログラム。
【請求項９】
請求項１乃至６の何れかに記載の楽音発生装置と、
鍵盤と、
前記鍵盤に対する押鍵及び離鍵操作に対応して、前記楽音発生装置の音源に対して楽音の発音及び消音を指示する指示手段と、
を有する電子楽器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ドラムのパラディドル奏法を表現し得る等、実際の打楽器音らしさを醸し出す楽音発生装置、電子楽器、楽音発生方法およびプログラムに関する。
【背景技術】
【０００２】
電子打楽器機能を備えた楽音発生装置は、複数のパッドを備え、演奏者が手やスティックで各パッドの表面を叩くパッド操作を検出するセンサの出力に基づき、そのパッド操作が為されたパッドの種類に対応した音色の打楽器音（スネアドラム音やパーカッション音等）を発生するよう構成されている。この種の装置として、例えば特許文献１には、例えば和太鼓のような両膜打楽器の音を忠実に再現する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１４８７８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、実際の自然打楽器の演奏、とりわけドラムの演奏では演奏者が両手に把持するスティックでヘッド（打面の皮）を叩くが、その際、図１１に図示するように、左手のスティックでヘッドを叩く演奏（以下、左手演奏と称す）で膜鳴するドラム音と、右手のスティックでヘッドを叩く演奏（以下、右手演奏と称す）で膜鳴するドラム音とは同じ響きにならない。つまり、左手演奏と右手演奏とでは、ヘッドを叩く位置や打撃の強さが同一ではない為に、ドラム音の音色が微妙に変化し、これが自然打楽器音らしさを醸し出している。
【０００５】
翻って、例えば特許文献１に開示の装置のように、波形読み出し方式でドラム音を発生するものでは、左手演奏と右手演奏とを区別しておらず、単にパッド操作を叩いて生じるノートオンイベントに応じた音量のドラム音色波形を再生する為、上述した左手演奏と右手演奏とで微妙に音色変化する自然打楽器音らしさを醸し出すことが出来ないという問題がある。
【０００６】
本発明は、上述した事情に鑑みてなされたもので、左手演奏と右手演奏とで微妙に音色変化する自然打楽器音らしさを醸し出すことが出来る楽音発生装置、電子楽器、楽音発生方法およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の楽音発生装置は、
パッドを第１の演奏手法で打撃したときに発生する第１の打撃音を表わす波形、及び前記パッドを第２の演奏手法で打撃したときに発生する第２の打撃音を表わす波形を記憶させた第１のメモリと、
前記第１の演奏手法及び第２の演奏手法のいずれか一方を示す情報を記憶する第２のメモリと、
前記パッドが打撃されたか否かを検出する打撃センサと、
前記打撃センサにより打撃が検出される度に、前記検出された打撃と当該打撃の直前に検出された打撃との関係が予め定められた条件を満たすか否かを判別する判別手段と、
前記判別手段により前記予め定められた条件を満たすと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する一方、前記予め定められた条件を満たさないと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法とは異なる演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する選択手段と、
前記選択手段により打撃音を表わす波形が選択された後、前記第２のメモリの記憶内容を、当該選択された波形が表わす打撃音に対応する演奏手法を示す情報に更新する更新手段と、
音源に対して、前記選択手段にて選択された波形を前記第１のメモリから読み出し、当該読み出された波形に基づいた打撃音の生成を指示する生成指示手段と、
を具備することを特徴とする。
【０００８】
本発明の楽音発生方法は、
パッドを第１の演奏手法で打撃したときに発生する第１の打撃音を表わす波形、及び前記パッドを第２の演奏手法で打撃したときに発生する第２の打撃音を表わす波形を記憶させた第１のメモリと、前記第１の演奏手法及び第２の演奏手法のいずれか一方を示す情報を記憶する第２のメモリと、前記パッドが打撃されたか否かを検出する打撃センサと、を有する楽音発生装置が、
前記打撃センサにより打撃が検出される度に、前記検出された打撃と当該打撃の直前に検出された打撃との関係が予め定められた条件を満たすか否かを判別し、
前記予め定められた条件を満たすと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する一方、前記予め定められた条件を満たさないと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法とは異なる演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択し、
前記打撃音を表わす波形が選択された後、前記第２のメモリの記憶内容を、当該選択された波形が表わす打撃音に対応する演奏手法を示す情報に更新し、
音源に対して、前記選択された波形を前記第１のメモリから読み出し、当該読み出された波形に基づいた打撃音の生成を指示する、
ことを特徴とする。
【０００９】
本発明のプログラムは、
パッドを第１の演奏手法で打撃したときに発生する第１の打撃音を表わす波形、及び前記パッドを第２の演奏手法で打撃したときに発生する第２の打撃音を表わす波形を記憶させた第１のメモリと、前記第１の演奏手法及び第２の演奏手法のいずれか一方を示す情報を記憶する第２のメモリと、前記パッドが打撃されたか否かを検出する打撃センサと、を有する楽音発生装置として用いられるコンピュータに、
前記打撃センサにより打撃が検出される度に、前記検出された打撃と当該打撃の直前に検出された打撃との関係が予め定められた条件を満たすか否かを判別するステップと、
前記予め定められた条件を満たすと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する一方、前記予め定められた条件を満たさないと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法とは異なる演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択するステップと、
前記打撃音を表わす波形が選択された後、前記第２のメモリの記憶内容を、当該選択された波形が表わす打撃音に対応する演奏手法を示す情報に更新するステップと、
音源に対して、前記選択された波形を前記第１のメモリから読み出し、当該読み出された波形に基づいた打撃音の生成を指示するステップと、
を実行させることを特徴とする。
【発明の効果】
【００１０】
本発明では、左手演奏と右手演奏とで微妙に音色変化する自然打楽器音らしさを醸し出すことが出来る。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の一形態による楽音発生装置１００の外観を示す外観図である。
【図２】楽音発生装置１００の構成を示すブロック図である。
【図３】ＲＡＭ１５のデータ構成を示すメモリマップである。
【図４】音源１９にアサインされたスネアドラム音のキーナンバの一例およびスネアドラム音色波形の構成を示す図である。
【図５】メインルーチンの動作を示すフローチャートである。
【図６】音源処理の動作を示すフローチャートである。
【図７】パラディドル発音処理の動作を示すフローチャートである。
【図８】前回発音情報調査処理の動作を示すフローチャートである。
【図９】履歴バッファ格納処理の動作を示すフローチャートである。
【図１０】発音処理の動作を示すフローチャートである。
【図１１】ドラムの右手演奏および左手演奏を説明するための図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施形態について説明する。
Ａ．外観および構成
（１）外観
図１は、本発明の実施の一形態による楽音発生装置１００の外観を示す外観図である。この図に示す楽音発生装置１００は、長方形状の筺体を有し、その前面の長手方向に沿って鍵盤１２が設けられ、鍵盤１２の上方に設けられる操作パネル面上には操作部１４を構成する各種操作スイッチ、装置の設定状態や動作状態を画面表示する表示部１８および打楽器演奏用のパッド１０が配設される。
【００１３】
パッド１０は、４つのパッド１０ａ〜１０ｄから構成される。これらパッド１０ａ〜１０ｄには、ユーザ指定の打楽器音色がアサイン可能となっており、例えばパッド１０ａにスネアドラム、パッド１０ｂにタム、パッド１０ｃにクローズドハイハット、パッド１０ｄにオープンハイハットの打楽器音色がアサインされる。
【００１４】
また、図示していないが、こうした外観の楽音発生装置１００は、筺体内部の左右端部にステレオ再生用のスピーカＳＰを備え、発生楽音の音像を定位可能にしている。さらに、楽音発生装置１００の筺体背部には、ＭＩＤＩ入力端子を備え、このＭＩＤＩ入力端子を介して外部のＭＩＤI楽器から入力されるＭＩＤＩデータに従って内蔵する音源１９（後述する）で楽音再生可能な構成となっている。
【００１５】
（２）構成
図２は、楽音発生装置１００の構成を示すブロック図である。この図において、パッド１０は、上述したように、４つの打楽器音色がアサインされるパッド１０ａ〜１０ｄから構成される。これらパッド１０ａ〜１０ｄは、それぞれパッド面に装着される圧電素子を備え、この圧電素子がパッド操作（パッドを叩く操作）で加えられる打撃（振動）に応じた電圧を励起し、これを増幅して出力する。Ａ／Ｄ変換機は、上記パッド１０ａ〜１０ｄの出力信号をＡ／Ｄ変換してパッドデータＰＤを発生する。
【００１６】
鍵盤１２およびキースキャナ１３は、演奏操作（押離鍵操作）に応じたキーオン／キーオフ信号、押鍵された鍵のキーナンバ（又は離鍵された鍵のキーナンバ）およびベロシティ等の演奏情報を出力する。なお、鍵盤１２およびキースキャナ１３が発生する演奏情報は、ＣＰＵ１５においてノートオン／ノートオフイベントに変換された後、音源１９に供給される。
【００１７】
操作部１４は、図示していないが、電源をパワーオン／パワーオフする電源スイッチ、発生楽音の音色を選択する音色選択スイッチ、自動演奏する曲データを選択する曲データ選択スイッチなどの各種スイッチを有し、操作されるスイッチ種に対応したスイッチイベントを発生する。この操作部１４が発生するスイッチイベントは、ＣＰＵ１５に取り込まれる。
【００１８】
ＣＰＵ１５は、操作部１４から供給される各種スイッチイベントに基づき装置各部の動作状態を設定する他、パッド１０が所定レベル以上のパッドデータＰＤを発生した場合にノートオンイベントを生成して音源１９に打楽器音の発音を指示したり、鍵盤１２／キースキャナ１３が発生する演奏情報をノートイベントに変換して音源１９に供給して楽音の発音・消音を指示したりする。
【００１９】
さらに、ＣＰＵ１５は、ＲＡＭ１７に格納される自動演奏データ（曲データ）を読み出して音源１９に供給して自動演奏を制御したり、ＭＩＤＩインタフェース部２１を介して外部のＭＩＤI楽器から入力されるＭＩＤＩイベントを取り込んで楽音の発音・消音を指示したりする。本発明の要旨に係わるＣＰＵ１５の特徴的な処理動作、すなわち左手演奏と右手演奏とで微妙に音色変化する自然打楽器音らしさを醸し出すパッド処理については追って詳述する。
【００２０】
ＲＯＭ１６は、上記ＣＰＵ１５にロードされる各種プログラムを記憶する。各種プログラムとは、後述するメインルーチン、当該メインルーチンからコールされる音源処理を含む。また、音源処理は後述するパラディドル処理を含む。パラディドル処理は、前回発音情報調査処理、履歴バッファ格納処理および発音処理から構成される。
【００２１】
ＲＡＭ１７は、曲データエリアおよびワークエリアを備える。ＲＡＭ１７の曲データエリアには、曲を構成する各音符をＭＩＤＩデータ形式で表現する自動演奏データが格納される。この自動演奏データは、後述するシーケンサ処理の実行に伴って曲進行順に読み出される。ＲＡＭ１７のワークエリアには、ＣＰＵ１５の処理に用いられる各種レジスタ・フラグデータが一時記憶される。
【００２２】
ここで、図３を参照して、ＲＡＭ１７のワークエリアに一時記憶される主要なレジスタ・フラグデータの構成について説明する。図３において、タイマ履歴バッファＴｉｍe［０］〜［７］には、それぞれ８つの異なるイベント発生時点のタイマ値が一時記憶される。このタイマ履歴バッファＴｉｍe［０］〜［７］に格納されるタイマ値が意図するところについては追って述べる。方向履歴バッファＤｉｒｅｃｔｉｏｎ［０］〜［７］には、パッド操作が右手演奏あるいは左手演奏の何れであるかを区別する方向フラグが一時記憶される。方向フラグは、「０」の場合に左手演奏Ｌ、［１］の場合に右手演奏Ｒを表す。
【００２３】
ポインタＰｏｉｎｔｅｒは、上記タイマ履歴バッファＴｉｍe［０］〜［７］あるいは方向履歴バッファＤｉｒｅｃｔｉｏｎ［０］〜［７］に対して次に書き込むべき配列番号を表す。Ｔｍａｘには、連打と見做すことができる前回発音時点（前回イベント）からの最長経過時間がストアされる。Ｔｍｉｎには、連打と見做すことができる前回発音時点（前回イベント）からの最短経過時間がストアされる。
【００２４】
Ｎｍａｘには、左手演奏Ｌあるいは右手演奏Ｒで連打可能な最大回数がストアされる。フラグＤｄｅｆは、連打と見做されなかった場合に、現イベントを「０」（左手演奏）又は「１」（右手演奏）の何れか一方に設定するフラグである。例えば連打と見做されなかった場合に、現イベントを右手演奏と設定するには、フラグＤｅｆを「１」にする。タイマカウンタＴｉｍｅには、１ｍｓｅｃ毎にインクリメントされる自走タイマ値がストアされる。Ｐｒｏｂには、連打になる確率値（パーセント表示値）がストアされる。
【００２５】
再び図２を参照して実施形態の構成について説明を進める。図２において、表示部１８は、ＣＰＵ１５から供給される表示制御信号に基づき、装置各部のパラメータ設定状態や動作状態などを画面表示する。音源１９は、周知の波形メモリ読み出し方式にて構成される複数の発音チャンネル（ＭＩＤＩチャンネル）を備え、ＣＰＵ１５から供給されるノートオン／ノートオフイベントに従って楽音波形データＷを発生する。
【００２６】
音源１９では、例えば図４（ａ）に図示するように、発音チャンネルが音色パートＰａｒｔ１〜１０別に分けられ、その中の音色パートＰａｒｔ１０にドラム音色（スネアドラム）がアサインされ、かつ当該音色パートＰａｒｔ１０の所定のキーナンバがドラム音色（スネアドラム）にアサインされる。また、音源１９は、各種音色の波形データを記憶しており、本実施形態の場合、例えばスネアドラム音色波形については右手演奏時の打撃音（波形データ）および左手演奏時の打撃音（波形データ）を有する。
【００２７】
サウンドシステム２０は、音源１９から出力される楽音波形データＷをアナログ形式の楽音信号に変換し、当該楽音信号から不要ノイズを除去する等のフィルタリングを施した後、これを増幅してスピーカから放音させる。ＭＩＤＩインタフェース部２１は、ＣＰＵ１５の制御の下に、外部のＭＩＤI楽器２００から供給されるＭＩＤＩイベントを取り込む。
【００２８】
Ｂ．動作
次に、図５〜図１０を参照して、上記構成による楽音発生装置１００のＣＰＵ１５が実行するメインルーチン、音源処理、パラディドル処理、前回発音情報調査処理、履歴バッファ格納処理および発音処理の各動作について説明する。なお、以下に述べる動作の主体は、ことわりが無い限りＣＰＵ１５である。
【００２９】
（１）メインルーチンの動作
図５は、メインルーチンの動作を示すフローチャートである。装置電源がパワーオンされると、ＣＰＵ１５は本ルーチンを起動し、図５に図示するステップＳＡ１に進み、装置各部を初期化するイニシャライズ処理を実行する。そして、イニシャライズ処理が完了すると、ステップＳＡ２に進み、操作部１４でユーザ操作されるスイッチ種に対応したスイッチイベントに基づき、例えば音色選択スイッチ操作に応じて発生楽音の音色を選択したり、曲データ選択スイッチ操作に応じて自動演奏する曲データを選択したりする等のスイッチ処理を実行する。
【００３０】
次いで、ステップＳＡ３では、鍵盤処理を実行する。鍵盤処理では、鍵盤１２の押離鍵操作の有無を判別し、押離鍵操作が為されなければノートイベントを発生せず、一方、押鍵操作に応じて鍵盤１２／キースキャナ１３が発生する演奏情報に基づきノートオンイベントを発生し、離鍵操作に応じて鍵盤１２／キースキャナ１３が発生する演奏情報に基づきノートオフイベントを発生する。
【００３１】
続いて、ステップＳＡ４では、ノートイベント発生の有無を判別する。上記ステップＳＡ３の鍵盤処理において、押鍵操作に応じてノートオンイベントもしくは離鍵操作に応じてノートオフイベントが発生すると、上記ステップＳＡ４の判断結果は「ＹＥＳ」になり、ステップＳＡ１１に進み、音源処理（後述する）を実行した後、上述のステップＳＡ２に処理を戻す。
【００３２】
一方、上記ステップＳＡ３の鍵盤処理において、押離鍵操作が為されずノートイベントが発生しなければ、上記ステップＳＡ４の判断結果は「ＮＯ」になり、ステップＳＡ５に進む。ステップＳＡ５では、パッド処理を実行する。パッド処理では、パッド操作されたパッド１０ａ〜１０ｄが所定レベル以上のパッドデータＰＤを発生した場合にノートオンイベントを発生する。
【００３３】
そして、ステップＳＡ６では、ノートイベント発生の有無を判別する。上記ステップＳＡ５のパッド処理において、パッド操作に応じてノートオンイベントが発生した場合には、ステップＳＡ６の判断結果が「ＹＥＳ」になり、ステップＳＡ１１に進み、音源処理（後述する）を実行した後、上述のステップＳＡ２に処理を戻す。
【００３４】
これに対し、上記ステップＳＡ５のパッド処理において、パッド操作が為されず、ノートオンイベントが発生しなければ、上記ステップＳＡ６の判断結果は「ＮＯ」になり、ステップＳＡ７に進む。ステップＳＡ７では、ＭＩＤＩインタフェース部２１を介して外部のＭＩＤI楽器から入力されるＭＩＤＩイベントを取り込むＭＩＤＩ受信処理を実行し、続くステップＳＡ８では、受信したＭＩＤＩイベントがノートイベント（ノートオンイベント又はノートオフイベント）であるか否かを判別する。
【００３５】
上記ステップＳＡ７において受信したＭＩＤＩイベントがノートイベント（ノートオンイベント又はノートオフイベント）であると、上記ステップＳＡ８の判断結果は「ＹＥＳ」になり、ステップＳＡ１１に進み、音源処理（後述する）を実行した後、上述のステップＳＡ２に処理を戻す。
【００３６】
一方、上記ステップＳＡ７において受信したＭＩＤＩイベントがノートイベント（ノートオンイベント又はノートオフイベント）でなければ、上記ステップＳＡ８の判断結果は「ＮＯ」になり、ステップＳＡ９に進み、ＲＡＭ１７に格納される自動演奏データ（曲データ）を読み出すシーケンサ処理を実行する。続いて、ステップＳＡ１０では、上記ステップＳＡ９で読み出した曲データがノートイベント（ノートオンイベント又はノートオフイベント）であるか否かを判別する。
【００３７】
上記ステップＳＡ９で読み出した曲データがノートイベント（ノートオンイベント又はノートオフイベント）であれば、判断結果は「ＹＥＳ」になり、ステップＳＡ１１に進み、音源処理（後述する）を実行した後、上述のステップＳＡ２に処理を戻す。これに対し、上記ステップＳＡ９で読み出した曲データがノートイベント（ノートオンイベント又はノートオフイベント）でなければ、上記ステップＳＡ１０の判断結果は「ＮＯ」になり、上述のステップＳＡ２に処理を戻す。
【００３８】
このように、メインルーチンでは、鍵盤１２を押離鍵操作した場合には、押離鍵操作に応じて発生する演奏情報をノートオンイベント／ノートオフイベントに変換して音源１９に供給し、楽音の発音・消音を指示する。また、パッド１０をパッド操作した場合には、パッド操作で生じるパッドデータＰＤをノートオンイベントに変換して音源１９に供給し、打楽器音の発音を指示する。さらに、ＭＩＤＩインタフェース部２１を介して外部のＭＩＤI楽器２００からＭＩＤＩイベントを取り込んだ場合には、その取り込んだＭＩＤIイベントを音源１９に供給し、楽音の発音・消音を指示する。また、ＲＡＭ１７に格納される自動演奏データ（曲データ）を読み出した場合には、その読み出した曲データ（ＭＩＤＩイベント）を音源１９に供給し、楽音の発音・消音を指示する。
【００３９】
（２）音源処理の動作
次に、図６を参照して音源処理の動作を説明する。図６は、音源処理の動作を示すフローチャートである。上述したメインルーチンのステップＳＡ１１（図５参照）を介して本処理が実行されると、ＣＰＵ１５は図６に図示するステップＳＢ１に進み、発生（又は受信）したノートイベントが、ノートオンイベントあるいはノートオフイベントの何れであるかを判別する。
【００４０】
発生（又は受信）したノートイベントが消音を指示するノートオフイベントであると、ステップＳＢ２に進み、現在発音中の楽音の内、当該ノートオフイベントに含まれるノートナンバ（又はキーナンバ）と同一の音高の楽音の消音を音源１９に指示する通常消音処理を実行して本処理を終える。
【００４１】
一方、発生（又は受信）したノートイベントが発音を指示するノートオンイベントであると、ステップＳＢ３に進む。ステップＳＢ３では、ノートオンイベントがドラムパートの発音チャンネルＣＨのものであるか否かを判断する。ノートオンイベントがドラムパートの発音チャンネルＣＨのものでなければ、判断結果は「ＮＯ」になり、ステップＳＢ４に進む。
【００４２】
ステップＳＢ４では、当該ノートオンイベントに含まれるノートナンバ（又はキーナンバ）およびベロシティに基づき、ノートナンバ（又はキーナンバ）で指定される音高の楽音を、ベロシティに対応した音量で発音するよう音源１９に指示する通常発音処理を実行して本処理を終える。
【００４３】
これに対し、ノートオンイベントがドラムパートの発音チャンネルＣＨのものであると、上記ステップＳＢ３の判断結果は「ＹＥＳ」になり、ステップＳＢ５に進む。ステップＳＢ５では、ノートオンイベントに含まれるキーナンバが、スネアドラム音（パラディドル該当音）にアサインしたものであるか否かを判断する。
【００４４】
ノートオンイベントに含まれるキーナンバが、スネアドラム音（パラディドル該当音）にアサインしたものでなければ、判断結果は「ＮＯ」になり、ステップＳＢ４の通常発音処理を実行する。この場合、通常発音処理では、ドラムパートにアサインされた他の打楽器音の発音を音源１９に指示する。
【００４５】
一方、ノートオンイベントに含まれるキーナンバが、スネアドラム音（パラディドル該当音）にアサインしたものであると、上記ステップＳＢ５の判断結果は「ＹＥＳ」になり、ステップＳＢ６を介してパラディドル発音処理を実行して本処理を終える。
【００４６】
パラディドル発音処理では、後述するように、前回イベントと現イベントとの時間間隔Ｔｄｉｆｆおよび前回イベントまでの連続回数Ｎ１が連打を判定する条件に収まれば、現イベントを前回イベントに続く連打と見做し、例えば前回イベントが左手演奏だったならば現イベントも同じ左手演奏の連打として左手演奏時のスネアドラム音（波形データ）を選択して再生（発音）させる一方、現イベント発生タイミングＴ０（タイマ値）および現イベントの方向フラグＤを履歴記憶する。
【００４７】
また、前回イベントと現イベントとの時間間隔Ｔｄｉｆｆおよび前回イベントまでの連続回数Ｎ１が連打を判定する条件に収まらなければ、現イベントを前回イベントとは反対の手の演奏と見做し、例えば前回イベントが左手演奏だったならば現イベントは右手演奏時のスネアドラム音（波形データ）を選択して再生（発音）させる一方、現イベント発生タイミングＴ０（タイマ値）および現イベントの方向フラグＤを履歴記憶する。
【００４８】
このように、音源処理では、ドラムパートの発音チャンネルＣＨ以外のノートオン／ノートオフイベントが発生した場合には、ノートオンイベントに基づく通常発音処理や、ノートオフイベントに基づく通常消音処理を実行し、ドラムパートの発音チャンネルＣＨにおいてノートオンイベントに含まれるキーナンバが、スネアドラム音（パラディドル該当音）にアサインしたものであると、パラディドル発音処理を実行する。
【００４９】
（３）パラディドル発音処理の動作
図７は、パラディドル発音処理の動作を示すフローチャートである。上述した発音処理のステップＳＢ６（図６参照）を介して本処理が実行されると、ＣＰＵ１５は図７に図示するステップＳＣ１に進み、前回発音情報調査処理を実行する。
【００５０】
前回発音情報調査処理では、後述するように、前回パッド操作（パッドを叩く操作）が行われた時点のタイマ値である前回イベント発生タイミングＴ１をタイマ履歴バッファＴｉｍe［Ｐ］から取得すると共に、前回イベントが右手演奏又は左手演奏の何れであるかを区別する前回方向フラグＤ１を方向履歴バッファＤｉｒｅｃｔｉｏｎ［Ｐ］から取得し、さらに方向履歴バッファＤｉｒｅｃｔｉｏｎ［０］〜［７］に蓄積された過去のパッド操作の向き（右手演奏／左手演奏の区分）の中から前回イベントまで同じ向きのパッド操作が連続した回数Ｎ１を計数する。
【００５１】
続いて、ステップＳＣ２では、現在時刻（現イベントが発生した時刻）でタイマカウンタＴｉｍｅが計時する現イベント発生タイミングＴ０から前述した前回発音情報調査処理で取得した前回イベント発生タイミングＴ１を減算し、前回イベントと現イベントとの時間間隔Ｔｄｉｆｆを算出すると共に、前述した前回発音情報調査処理で同じ向きのパッド操作が連続した回数Ｎ１を最大連続数Ｎｍａｘとしてストアする。
【００５２】
次に、ステップＳＣ３では、上記ステップＳＣ２で算出した前回イベントと現イベントとの時間間隔Ｔｄｉｆｆが、連打と見做すことができる前回発音時点からの最長経過時間Ｔｍａｘ（所定値）を超えているか否かを判断する。
【００５３】
時間間隔Ｔｄｉｆｆが最長経過時間Ｔｍａｘより長く、これにより現イベントが連打と見做せない場合には、上記ステップＳＣ３の判断結果が「ＹＥＳ」になり、ステップＳＣ４に進む。ステップＳＣ４では、フラグＤｄｅｆを現イベントの方向フラグＤにセットする。フラグＤｄｅｆとは、前述したように、連打と見做されなかった場合に、現イベントを「０」（左手演奏）又は「１」（右手演奏）の何れか一方側に設定するフラグである。
【００５４】
連打と見做されなかった場合に、例えば現イベントを右手演奏と設定するには、フラグＤｅｆを「１」にセットする。こうして連打と見做されなかった場合に例えばフラグＤｅｆを「１」にセットすると、現イベントが右手演奏であるとして、ステップＳＣ１１に進み、後述の履歴バッファ格納処理を実行する。
【００５５】
一方、時間間隔Ｔｄｉｆｆが最長経過時間Ｔｍａｘより短いと、上記ステップＳＣ３の判断結果は「ＮＯ」になり、ステップＳＣ５に進む。ステップＳＣ５では、上記ステップＳＣ２で算出した前回イベントと現イベントとの時間間隔Ｔｄｉｆｆが、連打と見做すことができる前回発音時点からの最短経過時間Ｔｍｉｎ（所定値）以下であるか否かを判断する。
【００５６】
時間間隔Ｔｄｉｆｆが最短経過時間Ｔｍｉｎ以下で現イベントが連打と見做せなければ、上記ステップＳＣ５の判断結果は「ＹＥＳ」になり、ステップＳＣ６に進み、前回方向フラグＤ１の反転値を、現イベントの方向フラグＤにセットした後、ステップＳＣ１１に進む。したがって、前回方向フラグＤ１が「１」（右手演奏）だったならば、現イベントの方向フラグＤに「０」（左手演奏）をセットし、一方、前回方向フラグＤ１が「０」（左手演奏）だったならば、現イベントの方向フラグＤに「１」（右手演奏）をセットする。
【００５７】
これに対し、時間間隔Ｔｄｉｆｆが最短経過時間Ｔｍｉｎよりも長く、これにより現イベントが連打と見做せると、上記ステップＳＣ５の判断結果は「ＮＯ」になり、ステップＳＣ７に進む。ステップＳＣ７では、上記ステップＳＣ１の前回発音情報調査処理において取得した前回イベントまでの連続回数Ｎ１が、最大連続回数Ｎｍａｘより少ないか否かを判断する。
【００５８】
過去の連続回数Ｎ１が最大連続回数Ｎｍａｘより多ければ、上記ステップＳＣ７の判断結果は「ＮＯ」になり、ステップＳＣ６に進み、前回方向フラグＤ１の反転値を、現イベントの方向フラグＤにセットした後、ステップＳＣ１１に進む。
【００５９】
一方、前回イベントまでの連続回数Ｎ１が最大連続回数Ｎｍａｘより少なければ、上記ステップＳＣ７の判断結果は「ＹＥＳ」になり、ステップＳＣ８に進む。ステップＳＣ８では、ランダム関数を用いて「０〜１００」の範囲で乱数Ｘを発生させ、続くステップＳＣ９では、発生させた乱数Ｘが確率値Ｐｒｏｂ（所定値）より大きいか否かを判断する。
【００６０】
そして、乱数Ｘが確率値Ｐｒｏｂ（所定値）より大きいと、上記ステップＳＣ９の判断結果は「ＹＥＳ」になり、ステップＳＣ６に進み、前回方向フラグＤ１の反転値を、現イベントの方向フラグＤにセットした後、ステップＳＣ１１に進む。これに対し、乱数Ｘが確率値Ｐｒｏｂ（所定値）より小さければ、上記ステップＳＣ９の判断結果が「ＮＯ」になり、ステップＳＣ１０に進み、前回方向フラグＤ１を現イベントの方向フラグＤにセットして連打である旨を表した後、ステップＳＣ１１に進む。
【００６１】
ステップＳＣ１１では、履歴バッファ格納処理を実行する。この履歴バッファ格納処理では、後述するように、ポインタＰｏｉｎｔｅｒで指定されるタイマ履歴バッファＴｉｍe［Ｐｏｉｎｔｅｒ］に現イベント発生タイミングＴ０（タイマ値）を、方向履歴バッファＤｉｒｅｃｔｉｏｎ［Ｐｏｉｎｔｅｒ］に現イベントの方向フラグＤをそれぞれストアした後、ポインタＰｏｉｎｔｅｒを歩進させ、歩進させたポインタＰｏｉｎｔｅｒの値（２進数）と、「７」の２進数「１１１」との論理積から「０」〜「７」の範囲で更新される新たなポインタＰｏｉｎｔｅｒを発生させる。
【００６２】
続いて、ステップＳＣ１２では、発音処理を実行する。発音処理では、後述するように、現イベントの方向フラグＤに基づき左手演奏又は右手演奏の何れであるかを判別し、左手演奏ならば、左手演奏時のスネアドラム音（波形データ）の波形アドレス（読み出し開始アドレス）を音源１９に指定し、一方、右手演奏ならば、右手演奏時のスネアドラム音（波形データ）の波形アドレス（読み出し開始アドレス）を音源１９に指定し、指定した波形データの再生を音源１９に指示して本処理を終える。これにより、音源１９は現イベントの方向フラグＤが「０」であれば、左手演奏時のスネアドラム音を発音し、現イベントの方向フラグＤが「１」ならば、右手演奏時のスネアドラム音を発音するようになる。
【００６３】
このように、パラディドル発音処理では、前回イベントと現イベントとの時間間隔Ｔｄｉｆｆおよび前回イベントまでの連続回数Ｎ１が連打を判定する条件に収まると、現イベントを前回イベントに続く連打と見做し、例えば前回イベントが左手演奏だったならば現イベントも同じ左手演奏の連打として左手演奏時のスネアドラム音（波形データ）を選択して再生（発音）させる一方、現イベント発生タイミングＴ０（タイマ値）および現イベントの方向フラグＤを履歴記憶する。
【００６４】
また、前回イベントと現イベントとの時間間隔Ｔｄｉｆｆおよび前回イベントまでの連続回数Ｎ１が連打を判定する条件に収まらないと、現イベントを前回イベントとは反対の手の演奏と見做し、例えば前回イベントが左手演奏だったならば現イベントは右手演奏時のスネアドラム音（波形データ）を選択して再生（発音）させる一方、現イベント発生タイミングＴ０（タイマ値）および現イベントの方向フラグＤを履歴記憶する。
【００６５】
（４）前回発音情報調査処理の動作
図８は、前回発音情報調査処理の動作を示すフローチャートである。上述したパラディドル発音処理のステップＳＣ１（図７参照）を介して本処理が実行されると、ＣＰＵ１５は図８に図示するステップＳＤ１に進む。ステップＳＤ１では、（Ｐｏｉｎｔｅｒ−１）ａｎｄ  ７、すなわち現在のポインタＰｏｉｎｔｅｒの値から１を減算した値（２進数）と、「７」の２進数「１１１」との論理積から前回ポインタ値Ｐを算出する。例えば現在のポインタＰｏｉｎｔｅｒの値が「３」であれば、「０１０」と「１１１」との論理積により前回ポインタ値Ｐは「２（０１０）」となる。
【００６６】
また、ステップＳＤ１では、タイマ履歴バッファＴｉｍe［０］〜［７］の内、前回ポインタ値Ｐで指定されるタイマ履歴バッファＴｉｍe［Ｐ］の値、すなわち前回パッド操作（パッドを叩く操作）が行われた時点のタイマ値を読み出してレジスタＴ１にストアする。以下、レジスタＴ１の値を、前回イベント発生タイミングＴ１と称す。
【００６７】
さらに、ステップＳＤ１では、方向履歴バッファＤｉｒｅｃｔｉｏｎ［０］〜［７］の内、前回ポインタ値Ｐで指定される方向履歴バッファＤｉｒｅｃｔｉｏｎ［Ｐ］のフラグ値を読み出し、これを前回方向フラグＤ１とする。前回方向フラグＤ１は、パッド操作が右手演奏あるいは左手演奏の何れであるかを識別するフラグであって、「０」の場合に左手演奏Ｌ、［１］の場合に右手演奏Ｒを表す。
【００６８】
次に、ステップＳＤ２では、右手演奏（あるいは左手演奏）が連続した回数を計数するカウンタＮ１（以下、連続回数Ｎ１と称す）をゼロリセットすると共に、ビット演算による論理積（Ｐ−１）ａｎｄ７に基づき更に１つ前のポインタ値Ｐを算出する。
【００６９】
続いて、ステップＳＤ３では、上記ステップＳＤ２で算出したポインタ値Ｐで指定される方向履歴バッファＤｉｒｅｃｔｉｏｎ［Ｐ］のフラグ値と、上記ステップＳＤ１において取得した前回方向フラグＤ１とが一致するか否か、つまり前々回と前回とが連続して右手演奏（あるいは左手演奏）であったかどうかを判断する。
【００７０】
前々回と前回とが不一致で連続しなければ、上記ステップＳＤ３の判断結果は「ＮＯ」になり、本処理を終えるが、前々回と前回とが一致し、右手演奏（あるいは左手演奏）が連続すると、上記ステップＳＤ３の判断結果は「ＹＥＳ」になり、ステップＳＤ４に進む。ステップＳＤ４では、ビット演算による論理積（Ｐ−１）ａｎｄ７に基づき更にもう１つ前のポインタ値Ｐを算出する。
【００７１】
次いで、ステップＳＤ５では、連続回数Ｎ１をインクリメントして歩進させ、続くステップＳＤ６では、歩進させた連続回数Ｎ１が「７」に達したか否かを判断する。歩進させた連続回数Ｎ１が「７」に達していなければ、判断結果は「ＮＯ」になり、上記ステップＳＤ３に処理を戻す。以後、同じ右手演奏（あるいは左手演奏）が連続する毎に、ポインタ値Ｐを１つ前に更新させながら連続回数Ｎ１を歩進させ、歩進させた連続回数Ｎ１が「７」に達すると、上記ステップＳＤ６の判断結果が「ＹＥＳ」になり、本処理を終える。
【００７２】
このように、前回発音情報調査処理では、前回パッド操作（パッドを叩く操作）が行われた時点のタイマ値である前回イベント発生タイミングＴ１をタイマ履歴バッファＴｉｍe［Ｐ］から取得すると共に、前回パッド操作の向き（右手演奏／左手演奏の区分）を表す前回方向フラグＤ１を方向履歴バッファＤｉｒｅｃｔｉｏｎ［Ｐ］から取得し、さらに方向履歴バッファＤｉｒｅｃｔｉｏｎ［０］〜［７］に蓄積された過去のパッド操作の向き（右手演奏／左手演奏の区分）の中から前回イベントまで同じ向きのパッド操作が連続した回数Ｎ１を計数する。
【００７３】
（５）履歴バッファ格納処理の動作
図９は、履歴バッファ格納処理の動作を示すフローチャートである。前述したパラディドル発音処理のステップＳＣ１１（図７参照）を介して本処理が実行されると、ＣＰＵ１５は図９に図示するステップＳＥ１に進み、ポインタＰｏｉｎｔｅｒで指定されるタイマ履歴バッファＴｉｍe［Ｐｏｉｎｔｅｒ］に、現在時刻（現イベントが発生した時刻）でタイマカウンタＴｉｍｅが計時する現イベント発生タイミングＴ０（タイマ値）をストアする。また、ステップＳＥ１では、ポインタＰｏｉｎｔｅｒで指定される方向履歴バッファＤｉｒｅｃｔｉｏｎ［Ｐｏｉｎｔｅｒ］に、現イベントの方向フラグＤをストアする。
【００７４】
続いて、ステップＳＥ２では、ポインタＰｏｉｎｔｅｒをインクリメントして歩進させる。そして、ステップＳＥ３では、歩進させたポインタＰｏｉｎｔｅｒの値（２進数）と、「７」の２進数「１１１」との論理積を求めることによって、「０」〜「７」の範囲で更新される新たなポインタＰｏｉｎｔｅｒを発生して本処理を終える。
【００７５】
このように、履歴バッファ格納処理では、ポインタＰｏｉｎｔｅｒで指定されるタイマ履歴バッファＴｉｍe［Ｐｏｉｎｔｅｒ］に現イベント発生タイミングＴ０（タイマ値）を、方向履歴バッファＤｉｒｅｃｔｉｏｎ［Ｐｏｉｎｔｅｒ］に現イベントの方向フラグＤをそれぞれストアした後、ポインタＰｏｉｎｔｅｒを歩進させ、歩進させたポインタＰｏｉｎｔｅｒの値（２進数）と、「７」の２進数「１１１」との論理積から「０」〜「７」の範囲で更新される新たなポインタＰｏｉｎｔｅｒを発生させる。
【００７６】
（６）発音処理の動作
図１０は、発音処理の動作を示すフローチャートである。前述したパラディドル発音処理のステップＳＣ１２を介して本処理が実行されると、ＣＰＵ１５は図１０に図示するステップＳＦ１に進み、現イベントの方向フラグＤが「０」、すなわち左手演奏であるか否かを判断する。左手演奏であると、判断結果は「ＹＥＳ」になり、ステップＳＦ２に進み、左手演奏時のスネアドラム音（波形データ）の波形アドレス（読み出し開始アドレス）を音源１９に指定した後、ステップＳＦ４に進む。
【００７７】
一方、現イベントの方向フラグＤが「１」、すなわち右手演奏であると、上記ステップＳＦ１の判断結果は「ＮＯ」になり、ステップＳＦ３に進み、右手演奏時のスネアドラム音（波形データ）の波形アドレス（読み出し開始アドレス）を音源１９に指定した後、ステップＳＦ４に進む。そして、ステップＳＦ４では、指定した波形データの再生を音源１９に指示する波形再生処理を実行して本処理を終える。これにより、音源１９では現イベントの方向フラグＤが「０」であれば、左手演奏時のスネアドラム音を発音し、現イベントの方向フラグＤが「１」ならば、右手演奏時のスネアドラム音を発音する。
【００７８】
以上説明したように、本実施形態では、スネアドラム音がアサインされたパッド１０ａを左手で叩く左手演奏又は右手で叩く右手演奏が為された時点を表すイベント発生タイミングおよび左手演奏／右手演奏の何れであるかを区別する方向フラグを過去複数回にわたったイベント履歴として記憶しておくと共に、左手演奏時のスネアドラム音（波形データ）と右手演奏時のスネアドラム音（波形データ）とを記憶しておく。
【００７９】
そして、現イベントが発生すると、イベント履歴を参照して前回イベントと現イベントとの時間間隔Ｔｄｉｆｆおよび前回イベントまでの連打の連続回数Ｎ１が連打を判定する判定条件に収まるか否かを判別し、判定条件に収まると、現イベントを前回イベントと同じ手の演奏の連打と見做し、例えば前回イベントが左手演奏だったならば現イベントも同じ左手演奏の連打として左手演奏時のスネアドラム音（波形データ）を選択して再生（発音）させる一方、現イベント発生タイミングＴ０（タイマ値）および現イベントの方向フラグＤを新たに履歴記憶する。
【００８０】
一方、判定条件に収まらなければ、現イベントを前回イベントとは反対の手の演奏と見做し、例えば前回イベントが左手演奏だったならば現イベントは右手演奏時のスネアドラム音（波形データ）を選択して再生（発音）させる一方、現イベント発生タイミングＴ０（タイマ値）および現イベントの方向フラグＤを新たに履歴記憶する。
【００８１】
ところで、実際のドラム演奏では、シングルストロークとダブルストロークを組み合わせたパラディドル奏法が知られており、例えばノーマルパラディドルでは「ＲＬＲＲ  ＬＲＬＬ」（Ｒは右手演奏、Ｌは左手演奏を表す）と叩くが、本実施形態によれば、連打を判定する条件に収まるようにストロークすると、上記ノーマルパラディドルを叩いたように左手演奏時のスネアドラム音（波形データ）および右手演奏時のスネアドラム音（波形データ）を自動的に選択して再生（発音）する為、左手演奏と右手演奏とで微妙に音色変化する自然打楽器音らしさを醸し出すことが出来、しかもパラディドル奏法も表現可能になるという効果を奏する。
【００８２】
以上、本発明の実施の一形態について説明したが、本発明はそれに限定されるものではなく、本願出願の特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【００８３】
以下では、本願出願当初の特許請求の範囲に記載された各発明について付記する。
（付記）
［請求項１］
パッドを第１の演奏手法で打撃したときに発生する第１の打撃音を表わす波形、及び前記パッドを第２の演奏手法で打撃したときに発生する第２の打撃音を表わす波形を記憶させた第１のメモリと、
前記第１の演奏手法及び第２の演奏手法のいずれか一方を示す情報を記憶する第２のメモリと、
前記パッドが打撃されたか否かを検出する打撃センサと、
前記打撃センサにより打撃が検出される度に、前記検出された打撃と当該打撃の直前に検出された打撃との関係が予め定められた条件を満たすか否かを判別する判別手段と、
前記判別手段により前記予め定められた条件を満たすと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する一方、前記予め定められた条件を満たさないと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法とは異なる演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する選択手段と、
前記選択手段により打撃音を表わす波形が選択された後、前記第２のメモリの記憶内容を、当該選択された波形が表わす打撃音に対応する演奏手法を示す情報に更新する更新手段と、
音源に対して、前記選択手段にて選択された波形を前記第１のメモリから読み出し、当該読み出された波形に基づいた打撃音の生成を指示する生成指示手段と、
を有する楽音発生装置。
【００８４】
［請求項２］
前記判別手段は、
前記打撃センサにて打撃が検出されてから次の打撃が検出されるまでの時間をカウントする第１のカウンタを有し、
前記第１のカウンタでカウントされた時間が、予め設定された第１の時間以下の場合は、予め定められた条件を満たしていないと判別する、請求項１に記載の楽音発生装置。
【００８５】
［請求項３］
前記判別手段は、
前記更新手段により前記第２のメモリの記憶内容を更新する度に、当該第２のメモリの記憶内容と前記選択された波形が表わす打撃音に対応する演奏手法を示す情報とが同一であることを検出したときはカウント値をアップするとともに、同一でない場合は前記カウント値をリセットする第２のカウンタを有し、
前記第１のカウンタでカウントされた時間が、予め設定された第１の時間を超えている場合でかつ、前記第２のカウンタのカウント値が予め設定されたカウント値以上の場合は、前記予め定められた条件を満たしていないと判別する、請求項２に記載の楽音発生装置。
【００８６】
［請求項４］
前記判別手段は、
前記第１のカウンタでカウントされた時間が、予め設定された第１の時間を超えている場合でかつ、前記第２のカウンタのカウント値が予め設定されたカウント値より小さい場合に、乱数を発生する乱数発生手段を有し、
前記乱数発生手段により発生された乱数の値が予め設定された値より小さい場合に前記予め定められた条件を満たしていると判別する、請求項３に記載の楽音発生装置。
【００８７】
［請求項５］
前記第１のカウンタでカウントされた時間が、予め設定された第２の時間を超えている場合に、前記第２のメモリに記憶された情報に係らず、予め定められた演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択するように、前記選択手段を制御する制御手段をさらに設けた、請求項１乃至４のいずれかに記載の楽音発生装置。
【００８８】
［請求項６］
前記第１の演奏手法は、左右いずれか一方の手を用いて前記パッドを打撃する演奏手法であり、前記第２の演奏手法は、他方の手を用いて前記パッドを打撃する演奏手法である、請求項１乃至５のいずれかに記載の楽音発生装置。
【００８９】
［請求項７］
パッドを第１の演奏手法で打撃したときに発生する第１の打撃音を表わす波形、及び前記パッドを第２の演奏手法で打撃したときに発生する第２の打撃音を表わす波形を記憶させた第１のメモリと、前記第１の演奏手法及び第２の演奏手法のいずれか一方を示す情報を記憶する第２のメモリと、前記パッドが打撃されたか否かを検出する打撃センサと、を有する楽音発生装置が、
前記打撃センサにより打撃が検出される度に、前記検出された打撃と当該打撃の直前に検出された打撃との関係が予め定められた条件を満たすか否かを判別し、
前記予め定められた条件を満たすと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する一方、前記予め定められた条件を満たさないと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法とは異なる演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択し、
前記打撃音を表わす波形が選択された後、前記第２のメモリの記憶内容を、当該選択された波形が表わす打撃音に対応する演奏手法を示す情報に更新し、
音源に対して、前記選択された波形を前記第１のメモリから読み出し、当該読み出された波形に基づいた打撃音の生成を指示する、楽音発生方法。
【００９０】
［請求項８］
パッドを第１の演奏手法で打撃したときに発生する第１の打撃音を表わす波形、及び前記パッドを第２の演奏手法で打撃したときに発生する第２の打撃音を表わす波形を記憶させた第１のメモリと、前記第１の演奏手法及び第２の演奏手法のいずれか一方を示す情報を記憶する第２のメモリと、前記パッドが打撃されたか否かを検出する打撃センサと、を有する楽音発生装置として用いられるコンピュータに、
前記打撃センサにより打撃が検出される度に、前記検出された打撃と当該打撃の直前に検出された打撃との関係が予め定められた条件を満たすか否かを判別するステップと、
前記予め定められた条件を満たすと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択する一方、前記予め定められた条件を満たさないと判別された場合に、前記第２のメモリに記憶された情報で示される演奏手法とは異なる演奏手法に対応する打撃音を表わす波形を前記第１のメモリから選択するステップと、
前記打撃音を表わす波形が選択された後、前記第２のメモリの記憶内容を、当該選択された波形が表わす打撃音に対応する演奏手法を示す情報に更新するステップと、
音源に対して、前記選択された波形を前記第１のメモリから読み出し、当該読み出された波形に基づいた打撃音の生成を指示するステップと、
を実行させるプログラム。
【００９１】
［請求項９］
請求項１乃至６の何れかに記載の楽音発生装置と、
鍵盤と、
前記鍵盤に対する押鍵及び離鍵操作に対応して、前記楽音発生装置の音源に対して楽音の発音及び消音を指示する指示手段と、
を有する電子楽器。
【符号の説明】
【００９２】
１０  パッド
１１  Ａ／Ｄ変換器
１２  鍵盤
１３  キースキャナ
１４  操作部
１５  ＣＰＵ
１６  ＲＯＭ
１７  ＲＡＭ
１８  表示部
１９  音源
２０  サウンドシステム
２１  ＭＩＤＩインタフェース部
１００  楽音発生装置
２００  ＭＩＤＩ楽器
【図１】
2015225332.tif 000003
【図２】
2015225332.tif 000004
【図３】
2015225332.tif 000005
【図４】
2015225332.tif 000006
【図５】
2015225332.tif 000007
【図６】
2015225332.tif 000008
【図７】
2015225332.tif 000009
【図８】
2015225332.tif 000010
【図９】
2015225332.tif 000011
【図１０】
2015225332.tif 000012
【図１１】
2015225332.tif 000013