(57)【要約】【課題】　プラグインボードの能力を充分に発揮できる楽音合成装置を提供する。【解決手段】　マザーボード１００は複数のコネクタ１２１〜１２９を有する。各コネクタにはプラグインボード１９１〜１９９が装着される。各プラグインボードは、記憶手段に記憶された楽音パラメータの値に基づいて楽音信号の生成処理または楽音信号に対するエフェクト付与処理を行なう一方、これらの楽音パラメータの値をマザーボード１００から供給された操作情報に基づいて更新し、この更新後の楽音パラメータの値に対応するアスキーデータをマザーボード１００に出力する。マザーボード１００のＣＰＵ１０１は、パネルスイッチ１５０に対する操作を表す操作情報をプラグインボード１９１〜１９９に供給する一方、これに応じてプラグインボード１９１〜１９９から出力されたアスキーデータが示す更新後の楽音パラメータの値をパネル表示器１６０に表示させる。【選択図】　　　図１
2004013178.tif 000002
【特許請求の範囲】
【請求項１】
　記憶手段に記憶された楽音パラメータの値に基づいて楽音信号の生成処理または楽音信号に対するエフェクト付与処理を行なう一方、前記記憶手段に記憶された楽音パラメータの値を楽音合成装置から供給された操作情報に基づいて更新し、この更新後の楽音パラメータの値に対応するアスキーデータを楽音合成装置に出力する増設ボードが装着されるコネクタと、
　楽音パラメータの増加または減少を指示する操作子と、
　前記操作子に対する操作を表す操作情報を前記コネクタに装着された前記増設ボードに供給する一方、これに応じて当該増設ボードから出力されたアスキーデータが示す更新後の楽音パラメータの値を表示装置に表示させる制御手段と
　を具備する楽音合成装置。
【請求項２】
　記憶手段に記憶された複数の楽音パラメータに基づいて楽音信号の生成処理または楽音信号に対するエフェクト付与処理を行なう増設ボードが装着されるコネクタと、
　操作子と、
　前記コネクタに装着された増設ボードの記憶手段に記憶された複数の楽音パラメータの何れかを示す指定情報を前記操作子に対する操作に応じて生成するパラメータ指定手段と、
　前記コネクタに装着された増設ボードに対して、前記パラメータ指定手段により生成された指定情報が示す楽音パラメータのパラメータ名を要求する一方、この要求に応じて当該増設ボードから送信されたパラメータ名のアスキーデータを受信する第１取得手段と、
　前記コネクタに装着された増設ボードに対して、前記パラメータ指定手段により生成された指定情報が示す楽音パラメータの値を要求し、この要求に応じて当該増設ボードから送信された楽音パラメータの値のアスキーデータを受信する第２取得手段と、
　前記第１取得手段により取得されたアスキーデータが示すパラメータ名と前記第２取得手段により取得されたアスキーデータが示す楽音パラメータの値とを表示装置に表示させる第１制御手段と、
　前記表示装置に表示されている楽音パラメータの値の増加または減少を指示する増減指示情報を前記操作子に対する操作に応じて生成し、この増減指示情報を前記コネクタに装着された増設ボードに供給する増減指示手段と、
　前記増減指示手段から供給された増減指示情報に応じて前記増設ボードが更新した後の楽音パラメータの値を示すアスキーデータを当該増設ボードから受信し、このアスキーデータが示す更新後の楽音パラメータの値を前記表示装置に表示させる第２制御手段と
　を具備する楽音合成装置。
【請求項３】
　演奏情報を入力する入力端子と、
　前記入力端子に入力された演奏情報に応じて楽音信号を生成する本体側音源と、
　供給される楽音信号にエフェクトを付与する本体側エフェクタと、
　前記コネクタに装着された増設ボードが前記入力端子に入力された演奏情報に応じて楽音信号を生成する増設ボードである場合に、この増設ボードにより生成された楽音信号と前記本体側音源により生成された楽音信号とを合成して前記本体側エフェクタに供給するミキサと
　を具備する請求項１または２に記載の楽音合成装置。
【請求項４】
　演奏情報を入力する入力端子と、
　前記入力端子に入力された演奏情報に応じて楽音信号を生成する本体側音源と、
　前記コネクタに装着された増設ボードが楽音信号に対してエフェクトを付与する増設ボードである場合に、前記本体側音源により生成された楽音信号を当該増設ボードに供給する一方、この増設ボードによってエフェクトが付与された楽音信号と前記本体側音源により生成された楽音信号とを合成するミキサと
　を具備する請求項１または２に記載の楽音合成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、電子楽器に用いて好適な楽音合成装置に関する。
【背景技術】
【０００２】
　従来より、本体のマザーボードに各種のプラグインボードを装着できる電子楽器が知られている。また、パーソナルコンピュータ等においても、同様にマザーボードに各種のプラグインボードを装着することができる。パーソナルコンピュータにおいては、プラグインボードを挿入した後、このプラグインボードを動作させるためのソフトウエアをＣＤ−ＲＯＭあるいはフロッピー（登録商標）ディスク等からインストールすることが一般的である。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、電子楽器においてもパーソナルコンピュータと同様にＣＤ−ＲＯＭドライブやフロッピーディスクドライブ等の補助記憶装置を設けることは可能であるが、コストアップになるために設けられていない場合も多い。従って、電子楽器本体の設計時に想定していない機能を有するプラグインボードが開発された場合に、このプラグインボードの能力を充分に発揮させることが困難になるという問題があった。この発明は上述した事情に鑑みてなされたものであり、プラグインボードの能力を充分に発揮できる楽音合成装置を提供することを目的としている。
【課題を解決するための手段】
【０００４】
　上記課題を解決するために、本発明に係る楽音合成装置（マザーボード１００）は、記憶手段に記憶された楽音パラメータの値に基づいて楽音信号の生成処理または楽音信号に対するエフェクト付与処理を行なう一方、前記記憶手段に記憶された楽音パラメータの値を楽音合成装置から供給された操作情報に基づいて更新し、この更新後の楽音パラメータの値に対応するアスキーデータを楽音合成装置に出力する増設ボードが装着されるコネクタ（コネクタ１２１〜１２９）と、楽音パラメータの増加または減少を指示する操作子（パネルスイッチ１５０のインクリメント／デクリメントキー）と、前記操作子に対する操作を表す操作情報を前記コネクタに装着された前記増設ボードに供給する一方、これに応じて当該増設ボードから出力されたアスキーデータが示す更新後の楽音パラメータの値を表示装置（パネル表示器１６０）に表示させる制御手段（ＣＰＵ１０１）と具備することを特徴とする。
【０００５】
　また、本発明に係る楽音合成装置（マザーボード１００）は、記憶手段に記憶された複数の楽音パラメータに基づいて楽音信号の生成処理または楽音信号に対するエフェクト付与処理を行なう増設ボードが装着されるコネクタ（コネクタ１２１〜１２９）と、操作子（パネルスイッチ１５０）と、前記コネクタに装着された増設ボードの記憶手段に記憶された複数の楽音パラメータの何れかを示す指定情報を前記操作子に対する操作に応じて生成するパラメータ指定手段と、前記コネクタに装着された増設ボードに対して、前記パラメータ指定手段により生成された指定情報が示す楽音パラメータのパラメータ名を要求する一方、この要求に応じて当該増設ボードから送信されたパラメータ名のアスキーデータを受信する第１取得手段と、前記コネクタに装着された増設ボードに対して、前記パラメータ指定手段により生成された指定情報が示す楽音パラメータの値を要求し、この要求に応じて当該増設ボードから送信された楽音パラメータの値のアスキーデータを受信する第２取得手段と、前記第１取得手段により取得されたアスキーデータが示すパラメータ名と前記第２取得手段により取得されたアスキーデータが示す楽音パラメータの値とを表示装置に表示させる第１制御手段と、前記表示装置に表示されている楽音パラメータの値の増加または減少を指示する増減指示情報を前記操作子に対する操作に応じて生成し、この増減指示情報を前記コネクタに装着された増設ボードに供給する増減指示手段と、前記増減指示手段から供給された増減指示情報に応じて前記増設ボードが更新した後の楽音パラメータの値を示すアスキーデータを当該増設ボードから受信し、このアスキーデータが示す更新後の楽音パラメータの値を前記表示装置に表示させる第２制御手段とを具備することを特徴とする。
【０００６】
　これらの楽音合成装置によれば、更新の対象となる楽音パラメータに関するアスキーデータが楽音合成装置に通知されるから、楽音合成装置の設計時に想定されていなかった楽音パラメータに関する文字（例えば楽音パラメータのパラメータ名やパラメータ値）であっても、楽音合成装置のソフトウェア等を何ら変更することなく表示装置に表示させることが可能となる。加えて、楽音パラメータの値は増設ボードにおいて更新され、この更新後の楽音パラメータの値が楽音合成装置に送信されて表示装置に表示されるから、楽音パラメータを更新するための計算方法は増設ボードにおいて自在に決定することができ、楽音合成装置においてはこの計算方法について何ら関与する必要はない。
【０００７】
　なお、本発明においては、演奏情報を入力する入力端子（ＭＩＤＩ入力端子１１８）と、前記入力端子に入力された演奏情報に応じて楽音信号を生成する本体側音源（楽音発生器１０８、ＤＳＰ１０４）と、供給される楽音信号にエフェクトを付与する本体側エフェクタ（ＤＳＰ１０４）と、前記コネクタに装着された増設ボードが前記入力端子に入力された演奏情報に応じて楽音信号を生成する増設ボードである場合に、この増設ボードにより生成された楽音信号と前記本体側音源により生成された楽音信号とを合成して前記本体側エフェクタに供給するミキサ（ミキサ１０６）とが更に設けられ得る。この構成によれば、増設ボードに設けられた音源を本体側音源と同様に扱うことができる。また、本発明においては、演奏情報を入力する入力端子と、前記入力端子に入力された演奏情報に応じて楽音信号を生成する本体側音源と、前記コネクタに装着された増設ボードが楽音信号に対してエフェクトを付与する増設ボードである場合に、前記本体側音源により生成された楽音信号を当該増設ボードに供給する一方、この増設ボードによってエフェクトが付与された楽音信号と前記本体側音源により生成された楽音信号とを合成するミキサとが設けられ得る。
【発明を実施するための最良の形態】
【０００８】
１．実施形態の概要
１．１．プラグインボード特有のパラメータの編集
　次に、本実施形態の電子楽器の概要を図６〜図８を参照し説明する。
　図６は、プラグインボード特有のパラメータを編集する場合の概略フローチャートを示す。なお、ここに言う「パラメータ」とは、音色やエフェクトを設定するためのパラメータであり、その内容はプラグインボードの種別に応じて異なる。なお、図の左側のフローはマザーボード上のＣＰＵが実行する処理を示し、右側のフローはプラグインボード上のＣＰＵが実行する処理を表している。
【０００９】
　図において処理がステップＳＰ１０１に進むと、マザーボードにおいて対象となるプラグインボードが選択される。すなわち、本実施形態では複数枚数のプラグインボードを装着可能であり、そのうちのどのプラグインボードと通信を行うのかを指定する必要がある。ここでは、ユーザのパネルスイッチの操作等に応じて、一つのプラグインボードが選択される。次に、ステップＳＰ１０２において、設定すべきパラメータを特定するアドレス情報およびモデルIDがマザーボードからプラグインボードに送信される。プラグインボードにおいては、ステップＳＰ２０１においてこのアドレス情報等が受信され、ステップＳＰ２０２において、指定されたパラメータの現在値がマザーボードに送信される。
【００１０】
　マザーボードにおいて該現在値が受信されると（ステップＳＰ１０３）、本体の表示装置に該パラメータの名称と現在値とが表示される（ステップＳＰ１０４）。次に、ユーザによって、該パラメータのインクリメント／デクリメントが指定される。具体的には、ユーザが上記表示値を見て、電子楽器のパネル上のインクリメント／デクリメントキーを操作したことを想定していおり、本処理ではその操作が検出される。この指定が検出されると、マザーボードからプラグインボードに対して、インクリメント／デクリメントの指示が送信される（ステップＳＰ１０６）。
【００１１】
　次に、プラグインボードのステップＳＰ２０３においてこの指示が受信されると、処理がステップＳＰ２０４に進み、プラグインボード内で上記指示に従って、現在値の更新が行われる。その際、必要に応じてパラメータの値にリミット処理が行われるが、この処理の内容はプラグインボードのみが認識していれば足りる。
【００１２】
　現在値が更新されると、処理はステップＳＰ２０５に進み、更新結果がマザーボードに送信される。マザーボードにおいては、ステップＳＰ１０７においてこの更新結果が受信され、ステップＳＰ１０８において、ユーザに対して更新結果が表示される。この一連のフローでは、プラグインボード特有のいかなるパラメータであっても、電子楽器のパネル上の表示器で値を表示することができ、かつ、パネル上のスイッチの操作により設定値のエディットを行うことが可能である。
【００１３】
１．２．プラグインボード、マザーボード共通データのパラメータの編集
　次に、プラグインボードおよびマザーボードで共用されているパラメータの編集処理の概要を、図７を参照し説明する。まず、ステップＳＰ１１１においては、マザーボードによってユーザによるエディット指示が検出される。ここで、ユーザによるエディット指示は、パネル上のエディット関連のスイッチを操作することによって行われる。次に、処理がステップＳＰ１１２に進むと、該エディット指示に基づいてパラメータの値が更新され表示される。
【００１４】
　次に、処理がステップＳＰ１１３に進むと、更新されたパラメータのアドレス情報、モデルIDおよび設定値がプラグインボードに送信される。プラグインボードにおいては、ステップＳＰ２１１においてアドレス情報、モデルIDおよび設定値を受信すると、これらに基づいて、内部で記憶している設定値が更新される（ステップＳＰ２１２）。以上のように、このフローによれば、マザーボードとプラグインボードとが共通に備えるパラメータについて、電子楽器パネル上の操作子を操作することにより同時にエディットすることができる。
【００１５】
１．３．プラグインボードの音色セレクト
　次に、プラグインボードが音源である場合に、その音色選択を行う処理の概要を図８を参照し説明する。図において処理がステップＳＰ１２１に進むと、マザーボードにおいて対象となるプラグインボードが選択される。次に、ステップＳＰ１２２において、マザーボードからプラグインボードに対して音色マップ（どの音色をサポートしているかを示すマップ）の要求が送信される。
【００１６】
　プラグインボードにおいては、ステップＳＰ２２１においてこの要求が受信され、ステップＳＰ２２２においてマザーボードに音色マップが送信される。マザーボードにおいては、ステップＳＰ１２３において該音色マップが受信され、ステップＳＰ１２４において、どの音色を使用するかが指定される。すなわち、ユーザによるパネルのスイッチの操作が検出され、それに応じて受信した音色マップに含まれる複数音色のうちどの音色を使用するかが指定される。次に、処理がステップＳＰ１２５に進むと、選択された音色の音色名の要求がプラグインボードに送信される。
【００１７】
　プラグインボードにおいては、ステップＳＰ２２３において該要求が受信されると、ステップＳＰ２２４において該音色名を表すアスキーデータがマザーボードに送信される。一方、マザーボードにおいてはステップＳＰ１２６において該アスキーデータが受信され、ステップＳＰ１２７において該アスキーデータがディスプレイに表示される。
【００１８】
　また、音色を切換える必要がある場合、マザーボードにおいてプログラムチェンジおよびバンクセレクトと称する信号が発行される（ステップＳＰ１２８）。これらの信号はステップＳＰ１２９においてプラグインボードに送信される。そして、プラグインボードにおいては、ステップＳＰ２２５においてこれらの信号を受信し、ステップＳＰ２２６において指示された音色に切換えられる。
【００１９】
　この一連のフローでは、プラグインボードの有している音色について、電子楽器のパネルの操作子で効率的に選択できるとともに、パネルの表示器で選択した音色の音色名を表示することができる。また、このフローでは、最終的に音色の切換えをプログラムチェンジとバンクセレクトの信号によって行っている。これにより、外部から入力されるＭＩＤＩ信号と同一の形態で選択を行うことができ、パネルにおける選択と外部からの選択との統一性を保つことができる。
【００２０】
　なお、以上の手順は音色を選択する場合に限られず、プラグインボードの有している全てのエフェクトデータ、波形データ、リズムデータ、自動演奏データ等の音楽データで選択を行う場合に広く適用することができる。
【００２１】
２．実施形態のハードウエア構成
２．１．全体構成
　次に、本実施形態の電子楽器の構成を図１を参照し説明する。図において１００はマザーボードであり、１９１〜１９９はマザーボード１００に対して着脱自在のプラグインボードである。マザーボード１００の内部においてＣＰＵ１０１はＲＯＭ１０２に格納された制御プログラムに基づいて各部の制御を行う。１０３はＲＡＭであり、ＣＰＵ１０１のワークメモリやデータメモリとして用いられる。プラグインボード１９１〜１９９は、それぞれにＣＰＵ、ＲＡＭ、ＲＯＭ等を具備し、マザーボード１００のＣＰＵ１０１とは独立に動作しつつ各種のデータを交換する。
【００２２】
　１０８は楽音発生器であり、ＣＰＵ１０１から供給された演奏情報に基づいて楽音信号を合成する。１０４はＤＳＰであり、複数チャンネルの楽音信号に対してフィルタリング等の処理を施す。１１０はアナログ入力端子であり、ここから入力された音声信号はＡ／Ｄコンバータ１０９を介してデジタル信号に変換される。１２１〜１２９はコネクタであり、ここにプラグインボード１９１〜１９９のコネクタ部と嵌合する。
【００２３】
　１０７はシリアルＩＯポートであり、供給されたパラレル信号をシリアル信号に変換してコネクタ１２１〜１２９に供給するとともに、コネクタ１２１〜１２９あるいはＡ／Ｄコンバータ１０９を介して受信したシリアル信号をパラレル信号に変換する。１０６はミキサであり、供給された各種楽音信号をミキシングする。なお、このミキサ１０６は、時分割複数チャンネル動作によって、出力の供給先毎に異なる混合比のミキシングを行うものである。
【００２４】
　ここで、ミキシングの対象となる楽音信号は、楽音発生器１０８で生成された楽音信号、ＤＳＰ１０４で処理された楽音信号、シリアルＩＯポート１０７を介して供給された楽音信号である。また、ミキシング結果は、シリアルＩＯポート１０７またはＤＳＰ１０４に供給される。ＤＳＰ１０４は複数チャンネルの楽音信号を処理することが可能であり、そのうちの２チャンネルは外部への出力チャンネルになっている。
【００２５】
　すなわち、該出力チャンネルに供給された楽音信号は、フィルタリング処理が施された後、Ｄ／Ａコンバータ１０５を介してアナログ信号に変換され、サウンドシステム２００を介して発音されることになる。
【００２６】
　次に、１１１はタイマであり、ＣＰＵ１０１に対してタイマ割り込みを発生させる。１７０はディスクドライブであり、バス１１５、ＩＯポート１１２を介して供給されたデータをディスク１８０に記録するとともに、ディスク１８０に記録されたデータを読出してＩＯポート１１２、バス１１５を介してＣＰＵ１０１、ＲＡＭ１０３等に出力する。
【００２７】
　１６０はパネル表示器であり、ＩＯポート１１３を介して供給されたデータを表示する。また、１５０はパネルスイッチであり、ユーザによって操作可能な各種の操作子が設けられている。例えば、ここには、「０」〜「９」の数値を入力するテンキーボード、入力された数値を確定させるエンターキー、カーソルを上下左右方向に移動させるカーソルキー、パネル表示器１６０の画面をスクロールさせるスクロールキー、各種パラメータのインクリメントおよびデクリメントを指定するインクリメント／デクリメントキー等が設けられている。これら操作子の操作イベントや操作量はＩＯポート１１４、バス１１５を介してＣＰＵ１０１に通知される。
【００２８】
　次に、１１８はＭＩＤＩ入力端子であり、外部ＭＩＤＩ機器（シーケンサ、キーボード等）からＭＩＤＩ信号を受信する。１１７はフォトカプラであり、ＭＩＤＩ入力端子１１８とマザーボード１００内の回路を電気的に絶縁する。フォトカプラ１１７から出力される入力ＭＩＤＩ信号は、シリアルＩＯポート１１６を介してＣＰＵ１０１に供給されるとともに、コネクタ１２１〜１２９を介してプラグインボード１９１〜１９９にも直接供給される。すなわち、マザーボード１００とプラグインボード１９１に対して同一のＭＩＤＩ信号が同一のタイミングで供給されることになる。
【００２９】
　ここに本実施形態の特徴の一つがある。すなわち、本実施形態においては、ＣＰＵ１０１を介さずにＭＩＤＩ信号をプラグインボード１９１〜１９９に供給するため、プラグインボード１９１〜１９９に対してＭＩＤＩ信号の供給が遅れることを未然に防止することができる。換言すれば、入力されたＭＩＤＩ信号はマザーボード１００、プラグインボード１９１〜１９９の双方に供給され、双方のＣＰＵにおいて予め設定された動作が各々行われることになる。例えば、プラグインボード１９１でサポートされている音色がセレクトされた場合は、プラグインボード１９１側では独自の判断によって楽音合成が行われ、マザーボード１００側では独自の判断で楽音合成が禁止されるのである。
【００３０】
　１２０はドライバであり、バス１１５、シリアルＩＯポート１１６を介してＣＰＵ１０１から供給されたＭＩＤＩ信号を増幅しＭＩＤＩ出力端子１１９を介して出力する。なお、プラグインボード１９１〜１９９によって生成されたＭＩＤＩ信号を外部に出力する必要がある場合は、該ＭＩＤＩ信号はシリアルＩＯポート１１６を介してＣＰＵ１０１に供給される。ＣＰＵ１０１においては、マザーボード１００で生成されたＭＩＤＩ信号と、プラグインボード１９１〜１９９で生成されたＭＩＤＩ信号とが、タイミング調整後にマージされ、マージされたＭＩＤＩ信号がシリアルＩＯポート１１６、ドライバ１２０を介して出力されることになる。
【００３１】
２．２．チャンネル構成
　次に、本実施形態のチャンネル構成を図２を参照し説明する。上述した楽音発生器１０８は、「１６」パート（パートは「１」ＭＩＤＩチャンネルに相当する）、「６４」発音チャンネルの楽音信号を発生するものであり、ミキサ１０６は多数の入力および出力チャンネルを有するデジタルミキサである。ミキサ１０６は、プラグインボード１９１〜１９９に対して、入力「２」チャンネルおよび出力「２」チャンネルを各々割り当てており、Ａ／Ｄコンバータ１０９に対して入力「２」チャンネルを割り当てている。
【００３２】
　さらに、ミキサ１０６は、ＤＳＰ１０４に対する入力および出力として、各々「１６」チャンネルを割り当てている。この出力チャンネルのうち「２」チャンネルは外部への出力チャンネルになっており、該出力チャンネルに係る楽音信号は、ＤＳＰ１０４を介してフィルタリング処理等が行われた後、Ｄ／Ａコンバータ１０５に供給される。
【００３３】
２．３．楽音信号のシグナルフロー
　ミキサ１０６、ＤＳＰ１０４、楽音発生器１０８、プラグインボード１９１〜１９９およびＡ／Ｄコンバータ１０９相互間における楽音信号の流れは、ミキサ１０６のセット状態とＤＳＰ１０４に対するマイクロプログラムとによって決定されるが、このような図３に示すようなシグナルフローとして表現することができる。
【００３４】
　図３において２０１、２０３は楽音発生器１０８における第１パートおよび第３パートであり、第２パート２０２は物理モデル音源のプラグインボードによって実現されている。２１１はＡ／Ｄパートであり、Ａ／Ｄコンバータ１０９によって実現される。
【００３５】
　２０９はインサーションエフェクトであり、第１パートの楽音信号に対して各種の効果を付与する。なお、インサーションエフェクトとは、楽音信号の「１」パートに対して適用されるエフェクトをいう。２１０はインサーションエフェクトの一種であるハモリ効果部であり、プラグインボード（ハモリボード等）によって実現される。ここでハモリ効果とは、入力される波形あるいは波形データに対して、それと所定の音程関係にある楽音を付加し、ハモリの効果を生じさせるものである。
【００３６】
　２０４〜２０８はミキサ部であり、ミキサ１０６によって実現されている。２１２はコーラス効果部、２１３はリバーブ部であり、各々ミキサ部２０６、２０７のミキシング結果に対してコーラス効果およびリバーブ効果を付与する。ミキサ部２０８のミキシング結果は、外部への出力チャンネルになっており、イコライザ２１４を介してイコライジング処理が施された後、Ｄ／Ａコンバータ１０５に供給される。
【００３７】
　上記インサーションエフェクト２０９、コーラス効果部２１２、リバーブ部２１３およびイコライザ２１４は、ＤＳＰ１０４の時分割処理によって実現される。このうちコーラス効果部２１２、リバーブ部２１３およびイコライザ２１４は、複数パートの楽音信号のミキシング結果に対して効果を付与するものである。これらをシステム・エフェクトという。また、ミキサ部２０６〜２０８、２５４のように複数パートの入力が可能なミキサを「グループ」という。
【００３８】
　次に、他のシグナルフローを図４に示す。図において２５２は楽音発生器１０８の第２パートであり、２５３は楽音発生器１０８に対して独立して設けられた１６パート音源である。２５５は３次元定位効果部であり、ミキサ部２０８のミキシング結果に対して３次元定位効果を施す。
【００３９】
　また、２５４は、第１パート２０１〜Ａ／Ｄパート２１１、１６パート音源２５３、３次元定位効果部２５５等の楽音信号を合成するミキサ部である。そして、これらのうちミキサ部２５４はミキサ１０６によって実現され、１６パート音源２５３および３次元定位効果部２５５はプラグインボードによって実現される。
【００４０】
２．４．プラグインボードの種類
　プラグインボード１９１〜１９９には、下記の４種類がある。
（１）シングルパート音源
　シングルパート音源は、上記第２パート２０２のように音源部が単一のパートによって構成されるものである。すなわち、ＭＩＤＩでは「１６チャンネル」のＭＩＤＩチャンネルに基づく演奏データを送信可能であるが、シングルパート音源はそのうち何れか一つのＭＩＤＩチャンネルの演奏だけに応答して楽音を生成する音源である。シングルパート音源から出力される楽音信号は、楽音発生器１０８の各パートと同様に扱われ、ＤＳＰ１０４における各種エフェクトを使用することができる。
【００４１】
（２）マルチパート音源
　マルチパート音源は、上記１６パート音源２５３のように複数パートの音源を有し、各パートの楽音信号をミキシングした状態で出力するものである。マルチパート音源は、上記「１６チャンネル」のＭＩＤＩチャンネルのうち、複数のＭＩＤＩチャンネルの入力に応じて、対応する複数パートの楽音を生成する音源である。所謂、ＧＭ（ジェネラルＭＩＤＩ）音源もマルチパート音源の一つである。
【００４２】
（３）インサーションエフェクト
　インサーションエフェクトは、上述したように楽音信号の「１」パートに対して適用されるエフェクトをいい、ハモリ効果部２１０を実現するプラグインボードがこれに該当する。
【００４３】
（４）システム・エフェクト
　システム・エフェクトは、上述したように、複数パートの楽音信号のミキシング結果に対して効果を付与するものであり、３次元定位効果部２５５を実現するプラグインボードがこれに該当する。他に、リバーブ等の一般のエフェクトを付与するシステム・エフェクトもある。
【００４４】
３．実施形態のプロトコル
３．１．音色マッピング
　本実施形態においてはＸＧ規格の音色マッピングが採用されている。ＸＧ規格においては、音色は「８」バイトのバンク・セレクトＭＳＢ、「８」バイトのバンク・セレクトＬＳＢおよび「８」バイトのプログラムチェンジによって表現される。
【００４５】
　ここで、バンク・セレクトＭＳＢについて、「０」はメロディ音色、「６４」はＳＦＸ音色、「１２６」はＳＦＸキット、「１２７」はドラムボイスに割り当てられている（その他の値については現在のところ使用禁止である）。また、メロディ音色でバンク・セレクトＬＳＢ＝「０」におけるプログラムチェンジは、ＧＭ規格のプログラムチェンジと互換性があり、「１２８」種類の基本音色「Acoustic Grand Piano」,「Bright Acoustic Piano」,……,「銃声」が割り当てられている。
【００４６】
　また、バンク・セレクトＬＳＢによって、これら基本音色のバリエーションがマッピングされる。すなわち、バンク・セレクトＬＳＢが「０」の場合は基本音色、「１」〜「１２７」の場合はそのバリエーションになる。このように、ＸＧ規格においては、最大「４×１２８×１２８＝６５５３６」種類の音色をマッピングすることができる。
【００４７】
３．２．音色選択の一般的方法
　次に、ＸＧ規格においてバンク・セレクトＬＳＢおよびプログラムチェンジに基づく音色選択の一般的方法について説明する。ここでは、一例として、プログラムチェンジが「１７」（ドローバー・オルガン）であって、バンク・セレクトＬＳＢとして「０」（基本音色）、「１」および「２」（バリエーション）がマッピングされている場合を想定する。
【００４８】
　ここで、バンク・セレクトＬＳＢが指定されずにプログラムチェンジ「１７」のみが指定された場合は、ＧＭ規格との互換性を確保するために、「０」（基本音色）が選択される。また、バンク・セレクトＬＳＢとして「０」、「１」または「２」が指定された場合は、当然に該バンク・セレクトＬＳＢに対応する音色が選択されることになる。また、マッピングされていないバンク・セレクトＬＳＢ（例えば「３」）が指定された場合は、「０」（基本音色）が選択される。
【００４９】
　次に、基本音色「０」がマッピングされておらず、バリエーション「１」、「２」のみがマッピングされている場合を想定する。かかる場合には、「１」または「２」のバンク・セレクトＬＳＢが指定された場合は、対応するバリエーションの音色が選択される。しかし、プログラムチェンジのみが指定された場合、あるいは「１」または「２」以外のバンク・セレクトＬＳＢが指定された場合は、バリエーション「１」または「２」のうち一方が選択されることになる。
【００５０】
３．３．通信モード
　プラグインボード１９１〜１９９とマザーボード１００とにおいては、楽音信号（波形データ）と、制御信号とがやりとりされる。このうち、楽音信号はシリアルＩＯポート１０７を介して伝送され、制御信号はシリアルＩＯポート１１６を介して伝送される。ここで、制御信号はＭＩＤＩ信号と同様のフォーマットを有している。
【００５１】
　すなわち、マザーボード１００のＣＰＵ１０１からプラグインボード１９１〜１９９に対して各種の問合わせや設定を行い、逆にプラグインボード１９１〜１９９からＣＰＵ１０１に対してその応答を行う場合は、ＭＩＤＩのシステムエクスクルーシブが使用される。この際、通信モードとして以下の２つが使用される。
【００５２】
（１）モード１
　モード１においては、マザーボード１００と何れか一つの指定されたプラグインボードとの間で双方向通信が行われる。このモード１は、例えば、プラグインボードに対する音色のエディット状態の問合わせや、その応答に使用される。
【００５３】
（２）モード２
　モード２においては、マザーボード１００から全てのプラグインボードに対して一方向通信が行われる。このモード２は、初期設定や音色のエディット時の一方的なデータ送信を行う際に使用される。
【００５４】
３．４．通信内容
（１）信号のフォーマット
　次に、マザーボードおよびプラグインボードは「メッセージ」を交換することによって情報のやりとりを行う。メッセージを送信するにあたっては、ＭＩＤＩのシステムエクスクルーシブと、そのメッセージの種別を示す「モデルID」と、そのメッセージが如何なるパラメータに係るものであるかを示す「アドレス」とが予め相手側に伝送される。
【００５５】
（１−１）モデルIDについて
　モデルIDとしては、「4C」、「4E」および「4F」の３種類がある。ここに「４Ｃ」とは、マザーボードとプラグインボードとの通信用に使用されるとともに、外部ＭＩＤＩ信号によってもコントロール可能であることを示す。また、「４Ｅ」はマザーボードとプラグインボードとの通信用に使用される。
【００５６】
　また、「4F」は、マザーボードとプラグインボードとの通信用の特殊コマンドであることを示す。特殊コマンドにおいては、モデルIDの前に、特殊コマンドの分類（第１または第２特殊コマンド群）を示す「特殊コマンド識別子」と、「request（要求）」または「reply（応答）」の何れかを示す「方向識別子」とが付与される。また、「request（要求）」においては引数を付けることができ、「reply（応答）」のデータ長も可変長である。
【００５７】
（１−２）アドレスについて
　例えば、マザーボードからプラグインボードに対してＭＩＤＩ信号を受信しないように指定するためにはMidiReceiveEnable/Disable（詳細は後述する）なるメッセージを伝送する必要がある。この場合は、最初にマザーボードからプラグインボードに対してMidiReceiveEnable/Disableのアドレス（例えば、0x001002）を伝送し、MidiReceiveEnable/Disableの値として“０”を指定することになる。以下、本実施形態で用いられる各種のメッセージのうち主要なものについて以下説明する。
【００５８】
（２）通常コマンド
　音源を制御する規格として、「General MIDI System Level 1」（いわゆるＧＭ規格）およびＸＧ規格が知られている。本実施形態のマザーボードおよびプラグインボードは、ＧＭ規格およびＸＧ規格で規定された全てのコマンドを相互に交換することができ、これによってマザーボード側からプラグインボードで用いられる各種パラメータの編集を行うことができる。ＧＭおよびＸＧ規格で規定されているコマンドは多岐にわたるが、ここでは本実施形態において使用頻度の高いパラメータチェンジについて説明しておく。
【００５９】
　通常コマンドのモデルIDは「4C」であり、アドレスには変更すべきパラメータのアドレスが「３」バイトで設定される。そして、パラメータチェンジのメッセージそのものは一般的に「１」バイトである。この「１」バイトのメッセージは、例えばオンオフの切換え、「−６４〜＋６３」の範囲のデータ設定、あるいは「０〜１２７」の範囲のデータ設定に用いられる。
【００６０】
（３）システムセットアップ
　以下説明するメッセージは、主としてシステムセットアップ時（電源投入時）にマザーボードとプラグインボードとの間でやりとりされるものであり、モデルIDは「4E」である。
（３−１）DeviceNo
　DeviceNoは、マザーボードからプラグインボードに対して「１〜１６」の何れかのデバイスナンバをセットする「１」バイトのメッセージである。
【００６１】
（３−２）ForceDamp
　ForceDampは、マザーボードからプラグインボードに対してフォースダンプを指示するメッセージであり、その値が「00〜1 F」である場合はフォースダンプを行うべきパートナンバを指定するものであるとみなされ、「7F」である場合は全パートのフォースダンプが行われることとみなされる。
【００６２】
（３−３）MidiReceiveEnable/Disable
　MidiReceiveEnable/Disableは、マザーボードからプラグインボードに対して、ＭＩＤＩ信号を受信すべきか否かを指定するメッセージであり、“１”は受信する旨、“０”は受信しない旨を示す。
【００６３】
（３−４）SinglePartTgParameterBaseAddress
　SinglePartTgParameterBaseAddressは、プラグインボードがシングルパート音源である場合に、マザーボードからプラグインボードに対して、そのベースアドレスを指定するメッセージである。プラグインボードにおいては、このベースアドレスを基準として、各種パラメータを変更するためのアドレスが決定される。
【００６４】
（３−５）InsertionEffectParameterBaseAddressおよびSystemEffectParameterBaseAddress
　InsertionEffectParameterBaseAddressは、プラグインボードがインサーション・エフェクトである場合に、そのベースアドレスを指定するメッセージである。同様に、SystemEffectParameterBaseAddressは、は、プラグインボードがシステム・エフェクトである場合に、そのベースアドレスを指定するメッセージである。
【００６５】
（３−６）SameTypePbTotalNoおよびSameTypePbSerialNo
　SameTypePbTotalNoおよびSameTypePbSerialNoは、複数のプラグインボードのうち同一種類のものが複数存在する場合に、マザーボードからこれらプラグインボードに対して送信されるメッセージである。すなわち、SameTypePbTotalNoは、同一種類のボードが合計で何枚存在するのかを通知するものであり、SameTypePbSerialNoはこれら各ボード毎に割り当てられたシリアルナンバを各ボード毎に通知するものである。
【００６６】
（３−７）MotherDisplayLevel
　MotherDisplayLevelは、本体の表示文字数を各プラグインボードに通知するメッセージである。
【００６７】
（４）ＰＢシステム情報
　以下説明するメッセージは、主としてシステムセットアップ時（電源投入時）にプラグインボードからマザーボードに対して通知されるものであり、モデルIDは「4E」である。
【００６８】
（４−１）PbName
　PbNameは、各プラグインボードからマザーボードに対して、最大１４バイト（２８文字）のアスキーコードで、各プラグインボードの型名（例えば「VH 10-prg」）を通知するものである。
【００６９】
（４−２）PbIconData
　PbIconDataは、３０Ｈ（＝４８）バイトのデータ長を有し、各プラグインボードから、そのアイコンのビットマップデータをマザーボードに通知するメッセージである。
【００７０】
（４−３）PbType
　PbTypeは「３」バイトのデータであり、各プラグインボードからマザーボードに対して、プラグインボードの種別を通知するメッセージである。PbTypeの各バイトを、PbTypeMsb、PbTypeLsbおよびV ersionNoと呼ぶ。
【００７１】
　ここでPbTypeMsbは「０〜３」の値をとり、「０」はシングルパート音源、「１」はマルチパート音源、「２」はインサーションエフェクト、「３」はシステム・エフェクトを示す。また、PbTypeLsbは、各種別毎の細分類を表す。例えば、プラグインボードがシングルパート音源であれば、PbTypeLsbは音源方式（物理モデル音源、ＰＣＭ音源、ＦＭ音源等）を表すことになる。また、VersionNoはプラグインボードのバージョンナンバを表す。
【００７２】
（４−４）TotalNativeSystemParameterNo
　TotalNativeSystemParameterNoは、プラグインボードで用いられ、マザーボード１００のＲＯＭ１０２に記憶された汎用パラメータエディタ（パラメータを編集するプログラム）によってエディットされるべきシステムパラメータの数をＣＰＵ１０１に通知するものである。なお、システムパラメータとは、プラグインボードのモード設定等に用いられるパラメータを指す。
【００７３】
（４−５）TotalNativePartParameterNo
　TotalNativePartParameterNoは、プラグインボードが出力するパートパラメータの数をマザーボードに通知するメッセージである。なお、パートパラメータとは、プラグインボードの各パート毎に設定されるべきパラメータの数である。
【００７４】
（４−６）TotalNativeEffectParameterNo
　TotalNativeEffectParameterNoは、プラグインボードがエフェクタである場合に、選択可能なエフェクトパラメータの数をマザーボードに通知するメッセージである。
【００７５】
（４−７）TotalVoiceMapNo
　TotalVoiceMapNoは、プラグインボードが音源である場合に、選択可能な音色のマップ数をマザーボードに通知するものである。ここに「１」マップは、一のバンク・セレクトＭＳＢおよび一のバンク・セレクトＬＳＢに対応する、プログラムチェンジの内容である。
【００７６】
（４−８）TotalInsertionEffectMapNo
　TotalInsertionEffectMapNoは、プラグインボードがインサーションエフェクトである場合に、選択可能なエフェクトの種類をマザーボードに通知するものである。例えば、インサーションエフェクトとしてボコーダ、デチューン、コーダルおよびクロマチックの効果を選択可能であれば、その合計数「４」がマザーボードに通知されることになる。
【００７７】
（５）第１特殊コマンド群
　上記ＰＢシステム情報のうち「TotalNative……ParameterNo」なる名称を有するパラメータは、音色数やエフェクト数等の「数」を示すものである。第１特殊コマンド群は、これら音色、エフェクト等の具体的な内容の「request（要求）」や「reply（応答）」の前提として、必要な情報をやりとりするためのものである。
【００７８】
（５−１）NativeSystemParameterInformation
　マザーボードからプラグインボードに対するシステムパラメータの具体的内容の「request（要求）」は「１」バイトのメッセージであり、パラメータ番号のみが通知される。ここにパラメータ番号は、最小値が「０」、最大値は「TotalNativeSystemParameterNoの返り値−１」になる。
【００７９】
　上述した例のように、プラグインボードがデチューン等を行うインサーションエフェクトであれば、例えばメロディチャンネルのパラメータが必要であれば「０」、ハーモニーチャンネルのパラメータが必要であれば「１」に設定しておくとよい。
【００８０】
　プラグインボードは、NativeSystemParameterInformationの「request（要求）」を受信すると、これに対する「５」バイトの「reply（応答）」をマザーボードに供給する。この応答は、各「１」バイトのModelID、AddressHi、Add ressMid、AddressLow、およびDataSizeとから成る。
【００８１】
　この「reply」は、後にマザーボードがプラグインボードに対して文字情報等を要求する際に必要となる情報である（詳細は第２特殊コマンド群の解説において詳述する）。まず、ModelIDとは、後にマザーボードから出力される第２特殊コマンドにおいて付与すべきモデルIDを通知するものであり、AddressHi、AddressMidおよびAddressLowは、該第２特殊コマンドにおいて付与すべきアドレスを通知するものである。また、DataSizeは、該第２特殊コマンドの「reply」としてプラグインボードからマザーボードに伝送される文字情報等のデータサイズを通知するものである。
【００８２】
　なお、上述したように、ヘッダ部の前に「reply（応答）」を示す「方向識別子」と、モデルID（「4F」）と、NativeSystemParameterInformationを表すアドレスとが付加される。これらは、上記「reply」中に含まれるModelID、AddressHi、AddressMid、AddressLowとは別個のものであることは言うまでもない。
【００８３】
（５−２）NativePartParameterInformationおよびNativeEffectParameterInformation
　NativePartParameterInformationおよびNativeEffectParameterInformationは、パートパラメータおよびエフェクトパラメータの情報取得に用いられる。上記NativeSystemParameterInformationと同様に、マザーボードからプラグインボードに対するこれらの具体的内容の「request（要求）」は、「１」バイトのメッセージであり、プラグインボードからの「reply」もNativeSystemParameterInformationの「reply」と同様の「５」バイトのメッセージになる。
【００８４】
（５−３）VoiceName
　VoiceNameは、プラグインボードがシングルパート音源である場合に、音色名の問合わせに用いられるパラメータである。マザーボードからプラグインボードに対する「request（要求）」は、MsbNo、LsbNo、およびPgmNoから成る計「３」バイトの音色番号と、「１」バイトのAsciiDataSizeとから成る。ここに、AsciiDataSizeは、本体側で表示可能な文字数（例えば「８」）を示す。
【００８５】
　一方、プラグインボードの「reply」は、「１」バイトのAsciiDataSizeと可変長のVoiceNameとから成る。AsciiDataSizeは「request」に含まれていた通りの文字数であり、VoiceNameはAsciiDataSizeの範囲内で音色名を表示するアスキーコードである。
【００８６】
（５−４）VoiceMapInfo
　VoiceMapInfoは、プラグインボードがシングルパート音源である場合に、マザーボードからプラグインボードに対して音色マップの問合わせに用いられるメッセージである。VoiceMapInfoの「request」は「１」バイトのメッセージであり、マップナンバを指定する。このマップナンバは、「０」〜「TotalVioceMapNoの返り値−１」の範囲で指定される。
【００８７】
　また、VoiceMapInfoの「reply」は「３４」バイトのメッセージであり、「１」バイトのBankMsbNoと、「１」バイトのBankLsbNoと、各々「１」バイトのビットマップPgm0to3AssignBitMap、Pgm4to7AssignBitMap、……、Pgm124to127AssignBitMapとから成る。
【００８８】
　また、ビットマップPgm0to3AssignBitMap、……Pgm124to127AssignBitMapは、BankMsbNoおよびBankLsbNoによって指定されたマップにおいて音色が存在する場合は“１”、存在しない場合は“０”を、対応するビット位置に表したものである。
【００８９】
（５−５）BankMsbIconData
　BankMsbIconDataは、プラグインボードがシングルパート音源である場合に、マザーボードからプラグインボードに対してバンクの分類のアイコンデータの問合わせに用いられるメッセージである。
【００９０】
　BankMsbIconDataの「request」は、「１」バイトのメッセージであり、上記BankMsbNoを指定する。また、その「reply」は、アイコンを表す「４８」バイトのビットマップデータである。例えば、管楽器をシミュレートするバンクの分類にあっては、管楽器をあしらったアイコンを返すようにすると好適である。
【００９１】
（５−６）InsEffectMapInfo
　InsEffectMapInfoは、は、プラグインボードがインサーション・エフェクトである場合に、マザーボードからプラグインボードに対してエフェクト・マップの問合わせに用いられるメッセージである。InsEffectMapInfoの「request」は「１」バイトのメッセージであり、マップナンバを指定する。このマップナンバは、「０」〜「TotalInsertionEffectMapNoの返り値−１」の範囲で指定される。
【００９２】
　また、InsEffectMapInfoの「reply」は「７」バイトのメッセージであり、「１」バイトのTypeMsbと、「１」バイトのTypeLsbと、「１」バイトのPrm1to10Typeと、各「１」バイトのPrm1to4SupportMap、Prm5to8SupportMap、Prm9to12SupportMap、およびPrm13to16SupportMapとから成る。
【００９３】
　ここに、TypeMsbおよびTypeLsbは、上記BankMsbNoおよびBankLsbNoと同様に、エフェクトの種別および種別内のシリアルナンバを示すものである。また、Prm1to4SupportMap、Prm5to8SupportMap、Prm9to12SupportMap、およびPrm13to16SupportMapは、「１〜１６」番のエフェクトについて、存在する場合は“１”、存在しない場合は“０”を、対応するビット位置に表したものである。
【００９４】
（６）第２特殊コマンド群
　第２特殊コマンド群は、主としてマザーボードが認識していない各種のパラメータについて、上記第１特殊コマンド群の「reply」の結果を用いて、プラグインボードから情報を得るためのコマンドである。
【００９５】
　第２特殊コマンド群においては、「方向識別子」の「reply」および「request」は、コマンド毎に異なる値になる。すなわち、以下に述べるParameterName、ParameterInfo、ParameterSupportInfo、RelativeParameter、およびAbsoluteParameterの「request」は各々「00」、「01」、「02」、「03」および「04」なるコードによって表現され、「reply」は各々「40」、「41」、「42」、「43」および「44」なるコードによって表現される。
【００９６】
（６−１）ParameterName
　ParameterNameは、プラグインボードからマザーボードに対してパラメータの名称を通知するためのコマンドである。ParameterNameの「request」においてはメッセージは「０」バイトになる。これは、第２特殊コマンド群を示す「特殊コマンド識別子」と、「request(00)」を示す「方向識別子」と、モデルID（これは、NativeSystemParameterInformationの「reply」に含まれてたModelIDに等しい）と、アドレス情報（同「reply」に含まれていたAddressHi、AddressMid、AddressLowに等しい）とによって、対応するパラメータの名称が特定されるからである。
【００９７】
　ParameterNameの「reply」は、「１」バイトのDat aSizeと、可変長のアスキーデータであるパラメータ名とから成る。DataSizeは該アスキーデータのデータサイズ（文字数）を示す。例えば、プラグインボードがインサーションエフェクトであってアドレス情報として「デチューン」が指定された場合は、「Detune Type」のような文字列を返すとよい。
【００９８】
（６−２）ParameterInfo
　ParameterInfoは、マザーボードからプラグインボードに対してパラメータの値を問い合わせるためのコマンドである。ParameterInfoの「re quest(01)」においてはメッセージは「０」バイトになる。この理由はParameterNameの場合と同様である。
【００９９】
　ParameterInfoの「reply」は、「１」バイトのDataSizeと、数値データMaxValue、MinValueおよびDefaultValueとから構成される。DataSizeはこれら数値データ１個あたりのデータサイズを示すものである。そして、MaxValue、MinValueおよびDefaultValueは、各々パラメータの最大値、最小値およびデフォルト値を示す。
【０１００】
（６−３）ParameterSupportInfo
　ParameterSupportInfoは、マザーボードがサポートしているパラメータについてプラグインボードがサポートしているか否かを知るためのコマンドである。すなわち、ダンプリクエスト、またはパラメータリクエストを受信したときにプラグインボードが対応できるか否かを確認するために用いられる。
【０１０１】
　ParameterSupportInfoの「request」のメッセージは「１」バイトであり、“０”の場合はパラメータリクエスト、“１”の場合はダンプリクエストを示す。これに対するプラグインボードの「reply」も「１」バイトであり、“０”の場合は対応不可、“１”の場合は対応可能であることを示す。
【０１０２】
（６−４）RelativeParameter
　RelativeParameterは、プラグインボードにおけるパラメータが現在値に対して相対変化した時の情報を得るためのコマンドである。RelativeParameterの「request」のメッセージは「３」バイトであり、各「１」バイトのRelativeData、ReplyDataSizeおよびDisplayDataSizeから成る。
【０１０３】
　ここにRelativeDataは、パラメータの現在値に対する変化値（例えば＋１，−１等）であり、ReplyDataSizeは、変化されたパラメータ（数値）の表示データサイズである。また、DisplayDataSizeは、変化されたパラメータ（文字）の表示データサイズである。
【０１０４】
　RelativeParameterの「reply」は、「１」バイトのDataSizeと、該DataSizeで示されたデータ長さのData(数値データ)と、「１」バイトのDisplayDataSizeと、該DisplayDataSizeで示されたデータ長のDisplayData（文字データ）とから成る。
【０１０５】
（６−５）AbsoluteParameter
　AbsoluteParameterは、プラグインボードにおけるパラメータが絶対変化した時の情報を得るためのコマンドである。AbsoluteParameterの「request」のメッセージは「３」バイトであり、各「１」バイトのAbsoluteData、ReplyDataSizeおよびDisplayDataSizeから成る。ここにAbsoluteDataは、パラメータの現在変化値であり、ReplyDataSizeおよびDisplayDataSizeは、上記RelativeParameterの場合と同様である。
【０１０６】
　AbsoluteParameterの「reply」は、「１」バイトのDataSizeと、該DataSizeで示されたデータ長さのData(数値データ)と、「１」バイトのDisplayDataSizeと、該DisplayDataSizeで示されたデータ長のDisplayData（文字データ）とから成る。
【０１０７】
４．実施形態の動作
４．１．初期設定
（１）全般の初期設定
　次に、本実施形態の動作を説明する。まず、電子楽器の電源が投入されると、マザーボード１００（ＣＰＵ１０１）において図５に示すプログラムが起動される。図において処理がステップＳＰ１に進むと、初期設定が行われる。ここでは、まず、通信モードがモード２に設定され全プラグインボードに対して、MotherDisplayLevelが通知される。これにより、各プラグインボードは、MotherDisplayLevelを記憶し、マザーボードに送信する文字列を長さを必要に応じて制限することになる。
【０１０８】
　次に、通信モードがモード１に切換えられ、コネクタ１２１に挿入されているプラグインボード１９１に対して、デバイスナンバ「１」をセットするDeviceNoが伝送される。プラグインボード１９１は、このDeviceNoに基づいてデバイスナンバ「１」を記憶するとともに、PbTypeおよびPbIconDataを出力することにより、プラグインボード１９１の種別等をＣＰＵ１０１に通知する。
【０１０９】
　すなわち、ＣＰＵ１０１は、PbTypeMsbによってプラグインボード１９１の種別を認識し、PbTypeLsbによって細分類（音源方式等）を認識し、VersionNoによってプラグインボード１９１のバージョンナンバを認識し、認識した内容がＲＡＭ１０３に記憶されることになる。また、PbIconDataで指定されたアイコンデータもＲＡＭ１０３に記憶される。
【０１１０】
　次に、プラグインボード１９１は、ＣＰＵ１０１に対して、システムパラメータが存在する場合はTotalNativeSystemParameterNoを通知し、パートパラメータが存在する場合はTotalNativePartParameterNoを通知し、エフェクトパラメータが存在する場合はTotalNativeEffectParameterNoを通知する。
【０１１１】
　また、プラグインボード１９１がシングルパート音源である場合はSinglePartTgParameterBaseAddressとTotalVoiceMapNoとを通知する一方、インサーション・エフェクトである場合はTotalInsertionEffectMapNoとInsertionEffectParameterBaseAddressとを通知する。また、プラグインボードがシステム・エフェクトである場合は、SystemEffectParameterBaseAddressが通知される。これにより、ＣＰＵ１０１にあっては、プラグインボード１９１における各種パラメータの数やベースアドレスが認識され、認識された情報はＲＡＭ１０３に記憶される。
【０１１２】
　そして、プラグインボード１９２〜１９９に対しても同様にデバイスナンバ「２」，「３」，……が通知され、各プラグインボードのPbTypeおよび編集可能な各種パラメータの数やベースアドレスがＲＡＭ１０３に記憶されることになる。従って、ＲＡＭ１０３には、各プラグインボードの種別、細分類、バージョンナンバおよび編集可能な各種パラメータの数が記憶されることになる。
【０１１３】
　次に、パネル表示器１６０において、下表のような文字列を表示した初期メニュー画面が表示される。なお、初期状態では、「１：パート設定」の箇所にカーソル位置がセットされる（「１：パート設定」が白黒反転表示される）。
【表１】
2004013178.tif 000003
【０１１４】
（２）本体音色マップの修正
　上述したように、ＸＧ規格の音色マッピングでは、最大「４×１２８×１２８＝６５５３６」種類の音色をマッピングすることができる。しかし、バンク・セレクトＬＳＢによって表現されるバリエーションのうち発音させるものを一つに限定すれば、選択可能なメロディ音色（バンク・セレクトＭＳＢ＝０）の数はプログラムチェンジの数と等しく「１２８」種類になる。
【０１１５】
　マザーボード１００がどのプログラムチェンジをサポートしているかについては、予めＲＯＭ１０２に記憶されており、初期設定においては、この内容がＲＡＭ１０３に転送される。このＲＡＭ１０３に転送された内容を本体音色マップと呼ぶ。
【０１１６】
　本体音色マップにおいては、各プログラムチェンジが「１」バイトに対応付けられ、マザーボード１００でサポートされているプログラムチェンジについて「１２７」、サポートされていない選択可能音色について「０」が記憶されている。また、プラグインボードによってサポートされているプログラムチェンジについては当該プラグインボードのデバイスナンバ「１〜１６」とマップナンバ「１〜１６」とが記憶される。但し、初期状態においては、どのプラグインボードがどのプログラムチェンジをサポートしているか判別していないため、全てのバイトが「１２７」または「０」になっている。
【０１１７】
　ここで、マザーボード１００およびプラグインボードにおいて同一のプログラムチェンジに係る音色をサポートしている場合、何れの音色を採用するかが問題となる。一般的に、電子楽器の本体価格を抑制するためにマザーボード１００は標準的な性能で楽音合成を行うのに対して、プラグインボードはオプションとして販売されより高性能な楽音合成を行うものである。そこで、両者のサポートするプログラムチェンジが重複する場合は、プラグインボード側の音色を優先的に採用することとしている。
【０１１８】
　具体的には、プラグインボードでサポートしているプログラムチェンジについては、本体音色マップの対応箇所にプラグインボードのデバイスナンバを書込むことにより、マザーボード１００側での発音を禁止するのである。そこで、かかる処理の詳細について以下説明する。
【０１１９】
　まず、上述したように、プラグインボードがシングルパート音源である場合は、TotalVoiceMapNoがＣＰＵ１０１に通知されている。ＣＰＵ１０１は、「０」〜「TotalVoiceMapNo−１」の各マップナンバを指定して、VoiceMapInfoの「request」をプラグインボードに送信する。
【０１２０】
　これに対して、上述したように、プラグインボードよりVoiceMapInfoの「reply」がＣＰＵ１０１に返信される。ＣＰＵ１０１は、この「reply」中のBankMsbNoが「０」であるか否かを判定する。そして、「０」以外であれば、本体音色マップの編集は行われない。
【０１２１】
　一方、「reply」中のBankMsbNoが「０」であれば、BankLsbNoで指定された１２８バイトの記憶位置の中のビットマップPgm0to3AssignBitMap、……、Pgm124to127AssignBitMapのうち「１」が設定されているプログラムチェンジに対応する箇所に、プラグインボードのデバイスナンバとマップナンバとが書込まれる。
【０１２２】
　かかる処理が全てのシングルパート音源について行われることにより、本体音色マップには、各プログラムチェンジがサポートされているのか否か、および、サポートされている場合は対応するボード（マザーボード１００あるいは何れかのプラグインボード）が記憶されることになる。
【０１２３】
４．２．パート設定
（１）「パート設定」の指定
　図５に戻り、処理がステップＳＰ２に進むと、処理を行うための「要因」が発生したか否かが判定される。ここで「要因」とは、例えば、ＭＩＤＩ入力端子１１８を介するＭＩＤＩ信号の入力や、パネルスイッチ１５０におけるイベント等をいう。次に、処理がステップＳＰ３に進むと、「要因」が発生したか否かが判定される。そして、何れの要因も発生しない状態では、ステップＳＰ２、３において処理が待機する。
【０１２４】
　ここで、パネルスイッチ１５０のテンキーボードにおいてエンターキーが押下されると、ステップＳＰ２において当該イベントが検出され、ステップＳＰ３において「ＹＥＳ」と判定され処理はステップＳＰ４に進む。ステップＳＰ４にあっては、「要因」毎に処理が分岐される。
【０１２５】
　ここでは、パネルスイッチ１５０におけるイベントが「要因」であるから処理はステップＳＰ６に進み、該イベントに応じた処理が行われる。上記例にあっては、初期画面の「１：パート設定」にカーソルが位置する際にエンターキーが押下されたのであるから、「１：パート設定が指定された」と判定される。なお、１：パート設定とは、楽音発生器１０８あるいはマルチパート音源（プラグインボード）において何れかのパートの内容を変更することをいう。
【０１２６】
（２）パートの表示
　ところで、パートの編集を行うにあたっては、ユーザが編集対象となるパートを指定する必要がある。さらに、それに先立って、指定可能なパートを表示しておき、ユーザが選択できるようにしておく必要がある。まず、マザーボード１００のみによって指定可能なパートは、楽音発生器１０８で実現される第１パート〜第１６パートと、Ａ／Ｄコンバータ１０９から入力されるパートであり、合計「１７」パートである。
【０１２７】
　また、マルチパート音源の各パートも指定できるようにしておくと便利である。そこで、ＣＰＵ１０１は、マザーボード１００上の各パートのデフォルト状態とマルチパート音源のアイコンおよび名称等を下表のようにパネル表示器１６０に表示する。
【表２】
2004013178.tif 000004
【０１２８】
（３）編集対象パートの指定
　ここで、ユーザがテンキーボードの「２」を押下すると、処理はステップＳＰ３、ＳＰ４を介してＳＰ６に進む。ここでは、入力された「２」がパネル表示器１６０に表示される。さらに、ユーザがエンターキーを押下すると、再び処理はステップＳＰ６に進み、ここで編集対象として「第２パート」が指定されたものと判定される。なお、パート番号が２桁以上である場合は、例えば「１」、「５」のように続けてテンキーボードを押下してエンターキーを押下するとよい。
【０１２９】
（４）音色グループの表示
　次に、編集対象パートに対して音色を指定する必要がある。ここで音色の種類は膨大であるため、音色を複数のグループに分類し、最初にこのグループを指定するようにしている。このため、パネル表示器１６０には、下表のような表示が行われる。
【表３】
2004013178.tif 000005
【０１３０】
　ここで、カーソル位置は、以前に選択されていた音色に対応するグループにセットされる。上記例においては第２パートは「ホンキートンク・ピアノ」に設定されていたから、「１：（内蔵）ピアノ系」にカーソルがセットされる。
【０１３１】
（５）音色名等の表示
　ユーザが「１」〜「２０」のグループ番号を指定した場合は、当該グループに属するプログラムチェンジについて本体音色マップが参照される。ここで、本体音色マップの対応箇所に「１２７」が記憶されている場合は、該プログラムチェンジについてＲＯＭ１０２内に音色名等が記憶されているから、その内容が読み出される。
【０１３２】
　一方、本体音色マップにプラグインボードのデバイスナンバとマップナンバが記憶されている場合は、このマップナンバを伴って該プラグインボードに対してVoiceMapInfoの「request」が送信される。この「reply」が返信されると、ここに含まれるBankMsbNoおよびBankLsbNoに基づいてバンク・セレクトＭＳＢおよびバンク・セレクトＬＳＢがＣＰＵ１０１に認識される。
【０１３３】
　次に、認識されたバンク・セレクトＭＳＢをMsbNoとし、バンク・セレクトＬＳＢをLsbNoとし、プログラムチェンジをPgmNoとし、パネル表示器１６０における音色名の最大表示文字数（例えば２０）をAsciiDataSizeとして、ＣＰＵ１０１からプラグインボードに対してVoiceNameの「request」が送信される。これに対して、プラグインボードより、「２０」以下のAsciiDataSizeと、AsciiDataSizeで示された文字数を有する音色名のアスキーデータとが返されることになる。
【０１３４】
　以上のように、マザーボード１００に内蔵され、あるいはプラグインボードで実現される音色名が得られると、その内容が下表のようにパネル表示器１６０に表示される。
【表４】
2004013178.tif 000006
【０１３５】
　表４において、「☆」の箇所は、実際には、PbIconDataに基づいて、シングルパート音源であるプラグインボードのアイコンが表示される。すなわち、上記例においては、「Acoustic Grand Piano」と「Bright Acoustic Piano」とがプラグインボードによって実現されていることになり、ユーザはパネル表示器１６０の表示画面に基づいて、どのプログラムチェンジにプラグインボードが使用されているのか、直ちに認識することができる。
【０１３６】
　ここで、カーソル位置は、以前に選択されていた音色に対応する音色名にセットされる。上記例においては音色として「ホンキートンク・ピアノ」に設定されていたから、「４：Honky-tonk Piano」にカーソルがセットされる。ここでユーザが「１」〜「８」の音色名を指定すると、その音色が設定対象のパート（第２パート）の音色として設定される。以上のようにして、ユーザは、所望のパートに対する音色を設定することができる。なお、上記表２〜４においてユーザがテンキーボードの「０」を押下した場合には、一段上位のメニューが再表示される。
【０１３７】
４．３．インサーションエフェクト設定
　表１において「２：インサーションエフェクト設定」が選択されると、下表のように、インサーションエフェクトのリストがパネル表示器１６０に表示される。インサーションエフェクトのリストは、内蔵のものの他、PbTypeとして「２」（インサーションエフェクト）が返されたプラグインボードも含まれる。
【０１３８】
【表５】
2004013178.tif 000007
【０１３９】
　なお、上記表示例においても、「☆」の箇所には初期設定時に得たプラグインボードのアイコンが表示される。また、「（シングルＩＥ）」なる文字列は、PbTypeMsbで示された種類に基づいて表示されたものであり、「ＨＭ２１Ｐ」はPbName、「ハモリボード」はPbTypeLsb、「Ｖｅｒ．１．００」はVersionNoに基づいて、各々示された内容に基づくものである。かかる表示が行われた後、カーソル位置は「内蔵インサーションエフェクト」にセットされる。
【０１４０】
　ここで、ユーザがテンキーボードの「１」とエンターキーを押下すると、「１：内蔵インサーションエフェクト」が選択される（なお、以下の説明においては、このような操作を単に「選択する」と表現する）。そして、内蔵インサーションエフェクトに関する各種パラメータのリストがパネル表示器１６０に表示され、ユーザはこれらパラメータを編集することができる。なお、このような動作は周知の電子楽器のものと同様である。
【０１４１】
　一方、ユーザがプラグインボードを選択した場合の動作は本実施形態の特徴の一つでもあるため、この点について詳述する。まず、上述したように、プラグインボードがインサーションエフェクトである場合は、初期設定時にTotalInsertionEffectMapNoがマザーボード１００側に通知されている。そこで、ＣＰＵ１０１は、「０」〜「TotalInsertionEffectMapNo−１」の各マップナンバを指定して、InsEffectMapInfoの「request」をプラグインボードに送信する。
【０１４２】
　これに対して、上述したように、プラグインボードよりInsEffectMapInfoの「reply」がＣＰＵ１０１に返信される。上述したように、この「reply」中のPrm1to4SupportMap、……、Prm13to16SupportMapによって、「１〜１６」番のエフェクトが存在するか否かが表示されている。また、各エフェクトに対応するアドレスは、該プラグインボードのベースアドレス（In sertionEffectParameterBaseAddress）と、InsEffectMapInfoの「reply」中のTypeMsbおよびTypeLsbと、「１〜１６」番のエフェクト番号とに基づいて一意に決定される。
【０１４３】
　そこで、この決定されたアドレスとともに、ＣＰＵ１０１からプラグインボードに対してParameterNameの「request」が送信される。これに対して返される「reply」の中にはパラメータ名を示すアスキーデータが含まれる。同様に、先に決定されたアドレスとともに、ＣＰＵ１０１からプラグインボードに対して、ParameterInfoの「request」が送信される。これに対して返される「reply」の中には、パラメータの最大値、最小値およびデフォルト値を示すMaxValue、MinValueおよびDefaultValueが含まれている。このようにして得られた情報に基づいて、パネル表示器１６０には下表のような表示が行われる。
【０１４４】
【表６】
2004013178.tif 000008
【０１４５】
　表６において「ハモリの強さ」、「ハモリの深さ」なる文字列はParameterNameの「rep ly」中のアスキーデータをそのまま表示したものである。また、双方とも「（０〜＋１２７） 現在値：１０」と表示されているが、ここで「０」はMinValue、「＋１２７」はMaxValue、「１０」はDefaultValueとしてプラグインボードから返された値である。
【０１４６】
　ここでユーザが「２： ハモリの深さ……」を選択すると、その位置にカーソルが移動する。ここでユーザがパネルスイッチ１５０上でインクリメントキーを押下すると、プラグインボードに対してRelativeParameterの「request」が送信される。なお、その際、RelativeDataとして「＋１」が指定される。これに対して、プラグインボードにおいては、「ハモリの深さ」の現在値「１０」を「１」だけインクリメントした結果である「１１」が求められる。
【０１４７】
　そして、RelativeDataの「reply」において、Dataとして該計算結果「１１」が返されることになる。これにより、パネル表示器１６０のカーソル行のうち「現在値：１０」の部分は「現在値：１１」に変更される。逆に、パネルスイッチ１５０においてデクリメントキーが押下された場合は、RelativeDataとして「−１」が指定され、プラグインボードからは現在値を「１」だけ減算した結果が返される。
【０１４８】
　なお、この段階においては、プラグインボードは現在値をインクリメント／デクリメントした結果を返しているだけであって、プラグインボード内のパラメータそのものが変更されているわけではない。変更結果をプラグインボードにセットするためには、ユーザは「３： ボードにセット」を選択する。
【０１４９】
　かかる操作が行われると、変更後の値（パネル表示器１６０に表示されている値）を伴って、変更対象のパラメータに係るパラメータチェンジがプラグインボードに送信される。そして、プラグインボードにおいては、このパラメータチェンジに基づいて、その内部のパラメータが変更されるのである。
【０１５０】
４．４．その他のパラメータの設定
　以上、インサーションエフェクトのプラグインボードにおけるパラメータの設定方法について詳述したが、シングルパート音源、マルチパート音源、またはシステム・エフェクトのプラグインボードに対しても同様にしてパラメータ設定が行われる。
【０１５１】
　すなわち、プラグインボード側から設定対象となるパラメータ等のアスキーデータがマザーボード１００に通知されるから、マザーボード１００の設計時に想定していなかったパラメータについても、マザーボード１００側のソフトウエアをなんら変更することなくパラメータ名を表示させることが可能になる。
【０１５２】
　また、パラメータの値を変更する場合においても、マザーボード１００からRelativeDataとして「＋１」または「−１」が送信され、現在値を変更する計算処理自体はプラグインボード側で実行され、その計算結果がマザーボード１００に返されて表示される。このことは、RelativeDataに対する計算方法をプラグインボードが自由に決定できることを意味する。
【０１５３】
　例えば、指数関数的にパラメータを設定することが好適である場合は、現在値が大となるほど一回あたりのインクリメント／デクリメント幅を大とするとよい。また、パラメータの値に対してリミット処理を施す場合であっても、パラメータの性質に応じて適切な処理を設定することができる。このような計算方法はプラグインボード側のプログラムで自在に決定することができ、しかもマザーボード１００側では一切関知する必要はない。
【０１５４】
４．５．シグナルフローの編集
（１）インサーションエフェクトの割当
　初期画面（表１）において「４：シグナルフローの編集」を選択すると、下表のような文字列を表示したシグナルフロー編集選択画面が表示される。
【表７】
2004013178.tif 000009
【０１５５】
　ここで、ユーザが「インサーションエフェクトの割当」を選択すると、下表８のような画面が表示される。ここでは、各インサーションエフェクトの名称と、該インサーションエフェクトが割り当てられているパート番号とが表示される。なお、下表の例にあっては、全てのインサーションエフェクトが何れかのパートに割り当てられているが、仮にインサーションエフェクトが何れのパートにも割り当てられていない場合は、「パート番号：（なし）」と表示される。
【０１５６】
【表８】
2004013178.tif 000010
【０１５７】
　ここで、ユーザが「１： 内蔵インサーションエフェクト」を選択すると、パネル表示器１６０に下表９の画面が表示される。
【表９】
2004013178.tif 000011
【０１５８】
　ここで、ユーザがパート番号を指定すると、その指定内容に応じてインサーションエフェクトを割り当てるパート番号が設定され、その設定内容を反映して表８の画面が再び表示される。すなわち、ユーザが「５」を選択すると、表８において「パート番号：１」の部分を「パート番号：５」に変更した文字列が表示されることになる。このようにして、ユーザは、内蔵あるいはプラグインボードのインサーションエフェクトを割り当てるパートを自在に設定することができる。
【０１５９】
（２）グループの割当
　表７の画面においてユーザが「２： グループの割当」を選択すると、下表１０のような画面がパネル表示器１６０に表示される。
【表１０】
2004013178.tif 000012
【０１６０】
　表１０において、横軸「Ｇ１」〜「Ｇ４」は「１」〜「４」のグループ番号（図３，４参照）に対応する欄、縦軸は各グループに対する入力信号を指す。そして、両者の交差点に記される「０」〜「１２７」の数字はボリューム値を表す。表１０の内容は、図３のシグナルフローに対応している。例えば、図３によれば、第１グループ（ミキサ部２０６）には、内蔵インサーション・エフェクトを介した第１パートの楽音信号と、第２パートの楽音信号とが入力されるから、「パート１」および「パート２」と記された行に「１」以上の値が表示され、他の行には「０」が記されている。
【０１６１】
　また、図３に示す例にあっては、「第４グループ」なるものはそもそも存在しないから、縦軸「Ｇ４」および横軸の「グループ４」に係る部分は全て「０」になっている。図３および表１０に示すように、各グループには、他のグループから出力された楽音信号（システム・エフェクトが存在する場合はシステム・エフェクトを介した後の楽音信号）も入力可能になっている。
【０１６２】
　ここで、カーソルは横軸「Ｇ１」、縦軸「パート１」の交差点に位置している。ここで、ユーザがカーソルキーを操作すると、上下左右方向の欄にカーソルが移動する。そして、インクリメント／デクリメントキーを操作すると、ボリューム値が変更される。
【０１６３】
　なお、プラグインボード中にマルチパート音源（例えば、図４の１６パート音源２５３）が存在する場合は、表１０中の「ＡＤパート：……」と「グループ１：……」との間に、「☆マルチ音源：　０　　　０　　　０　　　８７」（☆はアイコン）のような行が挿入されることになる。
【０１６４】
（３）システム・エフェクトの割当
　表７の画面においてユーザが「３： システム・エフェクトの割当」を選択すると、下表１１のような画面がパネル表示器１６０に表示される。ここでは、インサーションエフェクトをパートに割り当てる処理と同様にして、システム・エフェクトが各グループに割り当てられる。
【０１６５】
【表１１】
2004013178.tif 000013
【０１６６】
　このように、ユーザは、各パートに対して内蔵の（楽音発生器１０８）の音源を割り当てるかシングルパート音源のプラグインボードを割り当てるかを自由に設定でき、これらパートに対してインサーションエフェクトを自在に割り当てることができる。さらに、各グループを構成するミキサの接続関係や、各グループに挿入されるシステム・エフェクトについても任意に決定することができるから、図３、４に示すようなシグナルフローを自在に設定することができる。
【０１６７】
４．６．ＭＩＤＩ処理
　図５に戻り、ステップＳＰ２，３のループ中にＭＩＤＩ信号が入力されると、処理はステップＳＰ４を介してステップＳＰ５に進む。ここでは、ＭＩＤＩ信号に基づいて発音／消音等の処理が行われる。但し、ノートオン／ノートオフに係る音色（プログラムチェンジ）について、本体音色マップの対応箇所に「１２７」が設定されていない場合は、発音処理は行われない。すなわち、元々マザーボード１００で対応可能な音色であったとしても、シングルパート音源のプラグインボードでサポートされている場合は、マザーボード１００における発音処理は禁止される。
【０１６８】
　かかる場合は、フォトカプラ１１７、コネクタ１２１〜１２９を介して該ＭＩＤＩ信号がプラグインボードに直接供給されるから、該プラグインボードにおいて楽音信号が合成され、シリアルＩＯポート１０７を介してミキサ１０６に該楽音信号が供給されることになる。
【０１６９】
　このように本実施形態によれば、本体音色マップに基づいてマザーボード１００における発音の可否が判定されるから、マザーボード１００とプラグインボード１９１〜１９９とが重複して楽音信号を生成し発音するような事態を防止できる。
【０１７０】
５．変形例
　本発明は上述した実施形態に限定されるわけではなく、種々の変形が可能である。例えば、上記実施形態においては、電源投入直後（ステップＳＰ１）においてプラグインボードの種別（PbType）を検出した。しかし、PbTypeの検出は、新たなボードが装着された際に行ってもよく、所定時間毎に定期的に行ってもよい。
【図面の簡単な説明】
【０１７１】
【図１】本発明の一実施形態のハードウエア構成を示すブロック図である。
【図２】上記実施形態のチャンネル構成を示すブロック図である。
【図３】上記実施形態のシグナルフローの設定例を示すブロック図である。
【図４】上記実施形態のシグナルフローの設定例を示すブロック図である。
【図５】上記実施形態の制御プログラムのフローチャートである。
【図６】マザーボード１００とプラグインボードとの通信状態を示すフローチャートである。
【図７】マザーボード１００とプラグインボードとの通信状態を示すフローチャートである。
【図８】マザーボード１００とプラグインボードとの通信状態を示すフローチャートである。
【符号の説明】
【０１７２】
１００……マザーボード、１０１……ＣＰＵ、１０２……ＲＯＭ、１０３……ＲＡＭ、１０４……ＤＳＰ、１０５……Ｄ／Ａコンバータ、１０６……ミキサ、１０７……シリアルＩＯポート、１０８……楽音発生器、１０９……Ａ／Ｄコンバータ、１１０……アナログ入力端子、１１１……タイマ、１１２……ＩＯポート、１１３……ＩＯポート、１１４……ＩＯポート、１１５……バス、１１６……シリアルＩＯポート、１１７……フォトカプラ、１１８……ＭＩＤＩ入力端子、１１９……ＭＩＤＩ出力端子、１２０……ドライバ、１２１〜１２９……コネクタ、１５０……パネルスイッチ、１６０……パネル表示器、１７０……ディスクドライブ、１８０……ディスク、１９１〜１９９……プラグインボード、２００……サウンドシステム。
【図１】
2004013178.tif 000014
【図２】
2004013178.tif 000015
【図３】
2004013178.tif 000016
【図４】
2004013178.tif 000017
【図５】
2004013178.tif 000018
【図６】
2004013178.tif 000019
【図７】
2004013178.tif 000020
【図８】
2004013178.tif 000021