(57)【特許請求の範囲】
【請求項１】
処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、
演奏イベントを受けとる第１受取過程と、
該演奏イベントに応じて、第１の記憶装置に記憶された音色データに基づく楽音の生成を指示する生成指示過程と、
設定イベントを受けとる第２受取過程と、
該設定イベントに応じて、前記第１の記憶装置に記憶されている音色データの内容を変更する変更過程と、
前記演奏イベントおよび前記設定イベントの何れもが所定時間以上途切れたことを条件に、前記変更過程により変更された音色データを、前記第１の記憶装置から不揮発性記憶装置である第２の記憶装置に転送する転送過程と
を有することを特徴とする楽音発生装置の制御方法。
【請求項２】
処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、
設定イベントを受けとる受取過程と、
該設定イベントに応じて第１の記憶装置に記憶されている音色データの内容を変更する変更過程と、
前記設定イベントが所定時間以上途切れたことを条件に、前記変更過程により変更された音色データを、前記第１の記憶装置から不揮発性記憶装置である第２の記憶装置に転送する転送過程と、
を有することを特徴とする楽音発生装置の制御方法。
【請求項３】
前記第２の記憶装置は、それぞれ音色データを記憶可能な複数の記憶領域を備えるとともに、その何れの記憶領域に最新の音色データが記憶されているかを識別するための識別情報を前記各記憶領域毎に記憶するものであり、
前記転送過程は、前記変更された音色データを、前記複数の記憶領域のうち前記最新の音色データを記憶していない記憶領域である転送対象記憶領域に転送するとともに、該転送の完了後に、前記転送対象記憶領域内の前記識別情報を、最新の音色データであることを示す識別情報に変更する過程であり、
前記楽音発生装置の電源が投入された際に、前記識別情報に基づいて最新の音色データが記憶されている記憶領域を判定し、この判定された記憶領域に記憶されている音色データを前記第１の記憶装置にロードするロード過程をさらに有することを特徴とする請求項１または２記載の楽音発生装置の制御方法。
【請求項４】
前記第２の記憶装置は、それぞれ音色データを記憶可能な複数の記憶領域を備えており、
前記転送過程において音色データが転送されている途中で前記受取過程、前記第１の受取過程または前記第２の受取過程によって前記設定イベントを受けとると、該音色データの転送を中止するとともに、前記第２の記憶装置の複数の記憶領域のうち転送対象の領域である転送対象記憶領域の音色データを破棄する中止過程
をさらに含み、
前記転送過程は、前記変更された音色データを前記転送対象記憶領域に転送するとともに、前記中止過程による中止の後に変更された音色データを新たに転送する際に、前記中止過程の実行前の転送対象記憶領域に該音色データを転送すること
を特徴とする請求項１または２記載の楽音発生装置の制御方法。
【請求項５】
前記転送過程は、さらに、前記音色データの転送に先立って、前記転送対象記憶領域をクリアするクリア過程を含んでおり、前記中止過程による前記音色データの破棄が前記クリア過程による前記転送対象記憶領域のクリアが完了して前記音色データの転送を開始する前であれば、そのクリアの完了を待って前記音色データの転送を行い、前記音色データの転送を開始した後であれば、再度前記クリア過程を実行した後に前記音色データを転送すること
を特徴とする請求項４記載の楽音発生装置の制御方法。
【請求項６】
処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、
第１の記憶装置に記憶された音色データを適宜変更する更新過程と、
前記更新過程において変更された音色データを、不揮発性記憶装置である第２の記憶装置に転送する転送過程と、
演奏イベントを受けとる受取過程と、
該演奏イベントに応じて、その時点で前記転送過程で行われている音色データの転送を一時的に中断する中断過程と、
該演奏イベントに応じて、前記第１の記憶装置に記憶された音色データに基づく楽音の生成を指示する生成指示過程と、
前記演奏イベントに応じた楽音の生成指示後、前記演奏イベントが所定時間以上途切れたことを条件に、前記中断過程が中断した音色データの転送を、その続きから再開する再開過程と、
を有することを特徴とする楽音発生装置の制御方法。
【請求項７】
処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、
演奏イベントを受けとる第１受取過程と、
設定イベントを受けとる第２受取過程と、
該設定イベントに応じて、第１の記憶装置に記憶されている音色データの内容を変更する変更過程と、
前記演奏イベントおよび前記設定イベントの何れもが所定時間以上途切れたことを条件に、前記変更過程により変更された音色データを、前記第１の記憶装置から不揮発性記憶装置である第２の記憶装置に転送する転送処理を開始する転送開始過程と、
前記転送開始過程により前記転送処理が開始された後、前記演奏イベントが発生すると、前記転送処理を一時的に中断する中断過程と、
該演奏イベントに応じて、前記第１の記憶装置に記憶された音色データに基づく楽音の生成を指示する生成指示過程と、
前記生成指示過程の実行後、前記演奏イベントが所定時間以上途切れたことを条件に、前記中断過程において中断した前記転送処理を、その続きから再開する再開過程と、
前記転送開始過程により前記転送処理が開始された後、前記設定イベントが発生すると、前記転送処理を中止し、該転送処理によって既に転送された音色データを破棄する破棄過程と
を有することを特徴とする楽音発生装置の制御方法。
【請求項８】
所定周期で起動され、前記生成指示過程により生成を指示された楽音の生成を行う楽音生成過程
をさらに有することを特徴とする請求項７記載の楽音発生装置の制御方法。
【請求項９】
処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、
動作モードを、音色データに対して所定の調整を行う調整モードに設定する設定過程と、
該調整モードにおいて、設定イベントを受けとる受取過程と、
該設定イベントに応じて、第１の記憶装置に記憶されている音色データに対して前記調整を行い該音色データを変更する変更過程と、
前記調整モードを解除する解除過程と、
前記解除過程によって前記調整モードを解除する際に、前記変更過程により変更された音色データを、前記第１の記憶装置から不揮発性記憶装置である第２の記憶装置に転送する転送過程と
を有することを特徴とする楽音発生装置の制御方法。
【請求項１０】
請求項１ないし９の何れかの方法を実行することを特徴とする音色データ制御装置。
【請求項１１】
請求項１ないし９の何れかの方法を実行するプログラムを記録したことを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子打楽器に用いて好適な楽音発生装置の制御方法、音色データ転送方法、音色データ制御装置および記録媒体に関する。
【０００２】
【従来の技術】
従来より、ユーザがパッド等を叩くことによって各種の打楽器音を発生させる電子打楽器が知られている。一般的に、各パッドに対応する楽音のパラメータはユーザが適宜設定できるようになっており、所定の操作に基づいて各音色データをフラッシュメモリ等にセーブすることも可能になっている。
【０００３】
【発明が解決しようとする課題】
しかし、上述した技術においては、以下のように種々の問題点があった。
まず、ユーザが所望の音色データを作成した後にセーブすることを忘れて電子打楽器の電源をオフにしてしまうと、せっかく設定した音色データが消失してしまうという問題があった。
【０００４】
さらに、従来の電子打楽器においては、セーブ中にユーザが誤って電源をオフにすると、フラッシュメモリ等におけるデータが破壊され、最悪の場合にはデータを初期化しなければならないという問題もあった。
この発明は上述した事情に鑑みてなされたものであり、高品質な音質を保持しつつ安全かつ確実に音色データをセーブできる楽音発生装置の制御方法、音色データ転送方法、音色データ制御装置および記録媒体を提供することを目的としている。
【０００５】
【課題を解決するための手段】
上記課題を解決するため本発明にあっては、下記構成を具備することを特徴とする。なお、括弧内は例示である。
請求項１記載の構成にあっては、処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、演奏イベントを受けとる第１受取過程と、該演奏イベントに応じて、第１の記憶装置（ＲＡＭ２８）に記憶された音色データに基づく楽音の生成を指示する生成指示過程と、設定イベントを受けとる第２受取過程と、該設定イベントに応じて、前記第１の記憶装置に記憶されている音色データの内容を変更する変更過程と、前記演奏イベントおよび前記設定イベントの何れもが所定時間以上途切れたことを条件に、前記変更過程により変更された音色データを、前記第１の記憶装置から不揮発性記憶装置である第２の記憶装置（フラッシュメモリ２６）に転送する転送過程とを有することを特徴とする。
また、請求項２記載の構成にあっては、処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、設定イベントを受けとる受取過程と、該設定イベントに応じて第１の記憶装置に記憶されている音色データの内容を変更する変更過程と、前記設定イベントが所定時間以上途切れたことを条件に、前記変更過程により変更された音色データを、前記第１の記憶装置から不揮発性記憶装置である第２の記憶装置に転送する転送過程と、を有することを特徴とする。
さらに、請求項３記載の構成にあっては、請求項１または２記載の楽音発生装置の制御方法において、前記第２の記憶装置は、それぞれ音色データを記憶可能な複数の記憶領域を備えるとともに、その何れの記憶領域に最新の音色データが記憶されているかを識別するための識別情報（フラグAF,BF）を前記各記憶領域毎に記憶するものであり、前記転送過程は、前記変更された音色データを、前記複数の記憶領域のうち前記最新の音色データを記憶していない記憶領域である転送対象記憶領域に転送するとともに、該転送の完了後に、前記転送対象記憶領域内の前記識別情報（フラグAF,BF）を、最新の音色データであることを示す識別情報に変更する過程であり、前記楽音発生装置の電源が投入された際に、前記識別情報（フラグAF,BF）に基づいて最新の音色データが記憶されている記憶領域を判定し、この判定された記憶領域に記憶されている音色データを前記第１の記憶装置にロードするロード過程をさらに有することを特徴とする。
また、請求項４記載の構成にあっては、前記第２の記憶装置は、それぞれ音色データを記憶可能な複数の記憶領域を備えており、前記転送過程において音色データが転送されている途中で前記受取過程、前記第１の受取過程または前記第２の受取過程によって前記設定イベントを受けとると、該音色データの転送を中止するとともに、前記第２の記憶装置の複数の記憶領域のうち転送対象の領域である転送対象記憶領域の音色データを破棄する中止過程（ＳＰ７６でＷＭ＝１に設定→ＳＰ８４を実行）をさらに含み、前記転送過程は、前記変更された音色データを前記転送対象記憶領域に転送するとともに、前記中止過程による中止の後に変更された音色データを新たに転送する際に、前記中止過程の実行前の転送対象記憶領域に該音色データを転送することを特徴とする。
さらに、請求項５記載の構成にあっては、請求項４記載の楽音発生装置の制御方法において、前記転送過程は、さらに、前記音色データの転送に先立って、前記転送対象記憶領域をクリアするクリア過程（ＳＰ８４）を含んでおり、前記中止過程による前記音色データの破棄が前記クリア過程による前記転送対象記憶領域のクリアが完了して前記音色データの転送を開始する前（ＷＭ＝２でありＳＰ４４が実行された場合）であれば、そのクリアの完了を待って（ＳＰ９０を実行した後）前記音色データの転送（ＳＰ９４，ＳＰ９６）を行い、前記音色データの転送を開始した後であれば（ＳＰ７４，ＷＭ＝３かつＷＰ≠０であれば）、再度前記クリア過程を実行した後に前記音色データを転送する（ＳＰ７６でＷＭ＝１に設定するゆえＳＰ８４を実行した後にＳＰ９６を実行する）ことを特徴とする。
また、請求項６記載の構成にあっては、処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、第１の記憶装置に記憶された音色データを適宜変更する更新過程と、前記更新過程において変更された音色データを、不揮発性記憶装置である第２の記憶装置に転送する転送過程と、演奏イベントを受けとる受取過程と、該演奏イベントに応じて、その時点で前記転送過程で行われている音色データの転送を一時的に中断する中断過程（ステップＳＰ３０，ＳＰ３４，ＳＰ５２）と、該演奏イベントに応じて、前記第１の記憶装置に記憶された音色データに基づく楽音の生成を指示する生成指示過程と、前記演奏イベントに応じた楽音の生成指示後、前記演奏イベントが所定時間以上途切れたことを条件に、前記中断過程が中断した音色データの転送を、その続きから再開する再開過程と、を有することを特徴とする。
また、請求項７記載の構成にあっては、処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、演奏イベントを受けとる第１受取過程と、設定イベントを受けとる第２受取過程と、該設定イベントに応じて、第１の記憶装置（ＲＡＭ２８）に記憶されている音色データの内容を変更する変更過程と、前記演奏イベントおよび前記設定イベントの何れもが所定時間以上途切れたことを条件に、前記変更過程により変更された音色データを、前記第１の記憶装置から不揮発性記憶装置である第２の記憶装置（フラッシュメモリ２６）に転送する転送処理を開始する転送開始過程と、前記転送開始過程により前記転送処理が開始された後、前記演奏イベントが発生すると、前記転送処理を一時的に中断する中断過程と、該演奏イベントに応じて、前記第１の記憶装置に記憶された音色データに基づく楽音の生成を指示する生成指示過程と、前記生成指示過程の実行後、前記演奏イベントが所定時間以上途切れたことを条件に、前記中断過程において中断した前記転送処理を、その続きから再開する再開過程と、前記転送開始過程により前記転送処理が開始された後、前記設定イベントが発生すると、前記転送処理を中止し、該転送処理によって既に転送された音色データを破棄する破棄過程とを有することを特徴とする。
さらに、請求項８記載の構成にあっては、請求項７記載の楽音発生装置の制御方法において、所定周期で起動され、前記生成指示過程により生成を指示された楽音の生成を行う楽音生成過程をさらに有することを特徴とする。
また、請求項９記載の構成にあっては、処理装置が制御プログラムに基づいて装置各部の制御を行う楽音発生装置において該処理装置によって実行される制御方法であって、動作モードを、音色データに対して所定の調整を行う調整モード（アドレス設定モード）に設定する設定過程と、該調整モードにおいて、設定イベントを受けとる受取過程と、該設定イベントに応じて、第１の記憶装置に記憶されている音色データに対して前記調整を行い該音色データを変更する変更過程と、前記調整モードを解除する解除過程と、前記解除過程によって前記調整モードを解除する際に、前記変更過程により変更された音色データを、前記第１の記憶装置から不揮発性記憶装置である第２の記憶装置に転送する転送過程とを有することを特徴とする。
また、請求項１０記載の構成にあっては、請求項１ないし９の何れかの方法を実行することを特徴とする。
また、請求項１１記載の構成にあっては、請求項１ないし９の何れかの方法を実行するプログラムを記録したことを特徴とする。
【０００６】
【発明の実施の形態】
１．実施形態の構成
次に、図１を参照し本発明の一実施形態の電子打楽器のハードウエア構成を説明する。
図において２は演奏操作子であり、演奏者によって操作される８個のパッドから構成されている。４はリボンコントローラであり、楽音信号に対してビブラート等の効果処理を施すために設けられている。
【０００７】
６はパネル表示器であり、ユーザに対して各種の情報を表示する。８はパネルスイッチであり、音色データの設定等に使用される。特に、パネルスイッチ８には、動作モードの切換用にアドレス設定モードスイッチ８ａおよびプレイモードスイッチ８ｂが設けられている。
【０００８】
その他、パネルスイッチ８には、波形データの読出し方向（正方向／逆方向）の切換、ループ処理の有無の切換等を行うスイッチが設けられている（図示せず）。１０は波形入出力部であり、外部から供給された楽音信号をデジタル信号である波形データに変換し、あるいは生成されたデジタルの楽音信号をアナログ信号に変換しサウンドシステム１２を介して発音させる。
【０００９】
１６はＭＩＤＩインターフェースであり、外部のＭＩＤＩ機器との間でＭＩＤＩ信号のやりとりを行う。２４はＣＰＵであり、後述する制御プログラムに基づいて、バス１４を介して電子打楽器の各部を制御する。２０は外部記録媒体であり、ハードディスク、ＭＯドライブ等から構成されている。１８はドライバであり、ＣＰＵ２４と外部記録媒体２０との間で波形データの入出力を行う。
【００１０】
２２はタイマであり、所定時間毎にＣＰＵ２４にタイマ割込みを発生させる。２６はフラッシュメモリであり、ＣＰＵ２４に対する制御プログラムを格納する第１フラッシュメモリと、音色データＡ，Ｂ（詳細は後述する）および演奏操作子２の各パッドに対する波形データ等を記憶（セーブ）する第２フラッシュメモリとから構成されている。２８はＲＡＭであり、ＣＰＵ２４の動作時における各種のワーク領域として使用される。
【００１１】
２．実施形態のデータ構造
２．１．ＲＡＭ２８
次に、本実施形態におけるデータ構造について説明する。
まず、図２にＲＡＭ２８のメモリマップを示す。図において３０はワーク領域であり、ＣＰＵ２４が電子打楽器の制御プログラムを実行する際に種々のデータが記憶される。３２は音色データ領域であり、発音に使用される音色データＸが記憶される。この音色データＸは、演奏操作子２を構成する８個のパッドの各々に対応する音色データを総称したものである。また、３４はその他データ領域であり、波形データの転送等の際に使用される。
【００１２】
２．２．フラッシュメモリ２６
次に、フラッシュメモリ２６のデータ構造を図３を参照し説明する。図において４０は動作プログラム領域であり、後述する電子打楽器の制御プログラムが格納される。４２，４４は音色データ領域であり、各々音色データＡ，Ｂを記憶する。ここで、各音色データＡ，Ｂは、上記音色データＸと同様の構成を有する。すなわち、ＲＡＭ２８内の音色データ領域３２に対応して、これをセーブするための２系統の音色データ領域４２，４４がフラッシュメモリ２６内に設けられていることになる。
【００１３】
音色データ領域４２，４４のデータ構成は音色データ領域３２と同様であるが、音色データ領域４２，４４には、各領域の記憶状態を示すフラグＡＦ，ＢＦが各々設けられている。フラグＡＦ，ＢＦは共に１バイトのデータであり、「０」，「１」，「２」，「３」の範囲内でセーブの度に循環的にインクリメントされる値が交互に記憶される。但し、音色データ領域４２，４４がクリア状態である場合は、対応するフラグＡＦ，ＢＦの内容は「ＦＦ」に設定される。４６は波形データ領域であり、各種の打楽器等の波形データが記憶されている。４８はその他データ領域であり、上述した以外の各種のデータが記憶される。
【００１４】
３．実施形態の動作
３．１．メインルーチンの起動
次に、本実施形態の動作を説明する。
まず、電子打楽器の電源が投入されると、図４に示すメインルーチンが起動される。図において処理がステップＳＰ２に進むと、電子打楽器のハードウエアに対する検査と、各種の初期設定とが実行される。次に、処理がステップＳＰ４に進むと、フラグＡＦ，ＢＦの内容に基づいて、音色データＡ，Ｂの中から最新の音色データがフラッシュメモリ２６からＲＡＭ２８の音色データ領域３２にロードされる。
【００１５】
ここで、「最新の音色データ」とは、フラグＡＦ，ＢＦのうち大きい方の値に対応する音色データである。但し、「０」は「３」よりも大きいものと看做される。また、フラグＡＦ，ＢＦのうち一方が「ＦＦ」である場合は、他方の音色データが最新であるものと看做される。次に、処理がステップＳＰ６に進むと、現時点の動作モードが検出され、その動作モードに応じた処理（ステップＳＰ８〜ＳＰ１４）が実行される。
【００１６】
本実施形態の動作モードには以下のようなものがある。
（１）演奏操作に基づいて楽音波形を合成するとともに必要に応じて波形データのアドレス以外の音色データを設定する「プレイモード」
（２）演奏操作に基づいて楽音波形を合成するとともに必要に応じて波形データの各種アドレスを設定する「アドレス設定モード」
【００１７】
（３）波形入出力部１０を介して入力された波形データをフラッシュメモリ２６に録音する「録音処理モード」
（４）その他処理を行う「その他処理モード」
特に、プレイモードとアドレス設定モードとは本実施形態を特徴付けるものであるため、その動作の詳細を場合を分けて説明する。
【００１８】
３．２．プレイ処理（データ伝送途中でイベントが発生しない場合）
まず、初期状態において動作モードはプレイモードに設定されているため、処理はステップＳＰ８に進む。ここでは、図５に示すプレイ処理サブルーチンが呼び出される。図において処理がステップＳＰ２０に進むと、演奏操作子２およびパネルスイッチ８がスキャンされ、これらの操作状態（押下／解放）が検出される。
【００１９】
次に、処理がステップＳＰ２２に進むと、なんらかのイベントが検出されたか否かが検出される。ここで「イベント」とは、演奏操作子２やパネルスイッチ８のイベントのみならず、ＭＩＤＩインターフェース１６を介して外部から入力されたイベントや、ＣＰＵ２４が自動演奏等の処理を行っている際にＣＰＵ２４自体が発生させるイベントも含む。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ２４に進み、当該イベントに応じた処理が実行される。一方、「ＮＯ」と判定されると、ステップＳＰ２４はスキップされる。
【００２０】
次に処理がステップＳＰ２６に進むと、所定の音源処理時刻に達したか否かが判定される。すなわち、先に初期設定（ステップＳＰ２）が行われた時刻または先にステップＳＰ２８が実行された時刻から所定時間が経過したか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ２８に進み、ソフトウエア音源処理が行われる。すなわち、発音処理中の発音チャンネルに対して、適切な時間分だけ楽音波形が合成される。
【００２１】
合成された楽音波形は、サンプリング時間毎に波形入出力部１０によって読み出され、サウンドシステム１２を介して発音される。但し、電源投入直後の初期状態のように発音処理中の発音チャンネルが存在しない場合は、ステップＳＰ２８において実質的な処理は行われない。なお、かかる処理は周知のソフトウエア音源と同様である。また、現在時刻が音源処理時刻に達していない場合はステップＳＰ２６において「ＮＯ」と判定され、ステップＳＰ２８はスキップされる。
【００２２】
次に処理がステップＳＰ３０に進むと、変数ＣＮＴが「０」であるか否かが判定される。なお、変数ＣＮＴは先のステップＳＰ２において「０」に初期化されている。ここで「ＹＥＳ」と判定されると、図９に示す転送処理サブルーチンが呼び出される。図において処理がステップＳＰ８０に進むと、変数ＷＭが「０」であるか否かが判定される。
【００２３】
この変数ＷＭは、フラッシュメモリ２６に対する書込みモードを示す変数である。すなわち、書込みモードＷＭは、「０」であればフラッシュメモリ２６に対して書込み状態ではないことを示す。また、「１」であれば書込みリクエスト中、「２」であればフラッシュメモリクリア中、「３」であればデータをコピー中であることを示す。この書込みモードＷＭも先のステップＳＰ２において「０」に初期化されている。
【００２４】
従って、転送処理サブルーチンは直ちに終了し、処理はプレイ処理サブルーチンを介してメインルーチン（図４）に戻る。以後、メインルーチンにおいてステップＳＰ８が実行される毎に上述した処理が繰返されることになる。
【００２５】
３．２．１．パッドオンイベント処理
先のステップＳＰ２２において演奏操作子２の何れかのパッドのオンイベントが検出されると、ステップＳＰ２４においては、図６に示すパッドオンイベント処理が実行される。図において処理がステップＳＰ４０に進むと、イベントの検出されたパッド番号（１〜８）が変数ＰＮに代入される。
【００２６】
次に、処理がステップＳＰ４２に進むと、書込みモードＷＭが「２」（フラッシュメモリクリア中）であるか否かが判定される。上述したように書込みモードＷＭが「０」に初期設定されていると、ここでは「ＮＯ」と判定され、処理はステップＳＰ４６に進む。なお、「ＹＥＳ」と判定される場合のステップＳＰ４４の処理については後述する。
【００２７】
次に、処理がステップＳＰ４６に進むと、このパッドオンイベントに対して発音チャンネルが割り当てられる。次に、処理がステップＳＰ４８に進むと、ＲＡＭ２８内の音色データＸが参照され、パッド番号ＰＮに対応する音色データに基づいて当該発音チャンネルにおける発音準備が行われる。
【００２８】
次に、処理がステップＳＰ５０に進むと、該発音チャンネルにおける発音が指示される。具体的には該発音チャンネルに対して発音処理を許可するフラグがセットされる。これにより、後にソフトウエア音源処理（ステップＳＰ２８）が実行された際に当該発音チャンネルに対して波形合成処理が実行されることになる。
【００２９】
次に、処理がステップＳＰ５２に進むと、変数ＣＮＴに所定の転送待機時間ΔＴが代入される。
以上のステップが終了すると、処理はプレイ処理サブルーチン（図５）に戻る。以後、プレイ処理サブルーチンが実行される毎にステップＳＰ３０において「ＮＯ」と判定され、処理はステップＳＰ３４に進む。
【００３０】
ここでは、変数ＣＮＴが「１」だけデクリメントされる。ステップＳＰ３４が繰返し実行されると、やがて上記転送待機時間ΔＴに対応する時間が経過した時に変数ＣＮＴが再び「０」になるため、ステップＳＰ３２において転送処理サブルーチン（図９）が呼び出されるが、書込みモードＷＭが「０」（書込みなし）であるため、ステップＳＰ８０において直ちに処理が終了する。
【００３１】
このように、書込みモードＷＭが「０」（書込みなし）である場合には、変数ＣＮＴのカウントダウンによって特に意味のある処理は為されない。この状態では、ユーザがパッドを叩く度に発音チャンネルが割り当てられ（図６のステップＳＰ４６）、波形合成によって発音処理が行われる（図５のステップＳＰ２８）ことが実質的な処理の内容になる。
【００３２】
３．２．２．データ変更イベント処理
プレイモードにおいてユーザによって何れかのデータ変更スイッチが操作されると、そのイベントが検出され、プレイ処理サブルーチン（図５）のステップＳＰ２４においては図８に示すデータ変更イベント処理ルーチンが起動される。
【００３３】
図において処理がステップＳＰ７０に進むと、該データ変更スイッチに対応する番号が変数ＤＮ（データ番号）に代入される。さらに、変更された新たなデータの値がＲＡＭ２８内のバッファ領域に格納される。次に処理がステップＳＰ７２に進むと、ＲＡＭ２８内において音色データＸの内容が更新される。すなわち、パッド番号ＰＮのデータ番号ＤＮに係るデータとして、バッファ領域の内容が書込まれる。
【００３４】
先にパッドオンイベント処理ルーチン（図６）のステップＳＰ４０において説明したように、何れかのパッドのオンイベントが検出されると、そのパッドに応じてパッド番号ＰＮが更新される。従って、ステップＳＰ７２の処理は、「最後に操作されたパッドに対して、最後に操作されたデータ変更スイッチに係るデータ内容を更新する」ことに他ならない。
【００３５】
次に処理がステップＳＰ７４に進むと、「転送初期化条件」が充足されるか否かが判定される。なお、転送初期化条件は、
（ａ）書込みモードＷＭが「０」（書込みなし）である、
（ｂ）書込みモードＷＭが「３」（データをコピー中）であって、書込みポインタＷＰが「０」ではない
のうち何れかに該当する時は充足される。
【００３６】
ここでは、書込みモードＷＭが「０」であるから「ＹＥＳ」（充足する）と判定され、処理はステップＳＰ７６に進む。ここでは、書込みモードＷＭが「１」（書込みリクエスト中）に設定される。次に、処理がステップＳＰ７８に進むと、変数ＣＮＴに転送待機時間ΔＴが代入され、本ルーチンの処理は終了する。
【００３７】
以後、プレイ処理サブルーチン（図５）が呼び出されると、転送待機時間ΔＴに対応する回数だけステップＳＰ３０，ＳＰ３１の処理が繰返される。その後、変数ＣＮＴが「０」になり転送処理サブルーチン（図９）が呼び出されると、ステップＳＰ８０において「ＮＯ」と判定され、処理はステップＳＰ８２に進む。
【００３８】
ここでは、書込みモードＷＭの値に応じて処理が分岐される。先に書込みモードＷＭは「１」（書込みリクエスト中）に設定されたため、処理はステップＳＰ８４に進む。ここでは、フラッシュメモリ２６の音色データ領域４２，４４のうち、一方に対してクリア指示が行われる。
【００３９】
ここで、フラグＡＦ，ＢＦのうち「０」〜「３」の範囲の値がセットされていない側があれば、当該領域のデータが破壊されたものと看做され、その領域がクリアされる。一方、フラグＡＦ，ＢＦが共に「０」〜「３」の範囲内であれば、フラグＡＦ，ＢＦの値が小さい方の領域がクリアされる。その際、上述したように、「０」は「３」よりも大きいものと看做される。
【００４０】
なお、本実施形態におけるフラッシュメモリ２６には、「自動クリア機能」が装備されている。これは、ＣＰＵ２４からのクリア指示に応じて、指示された領域をフラッシュメモリ２６（ここでは第２フラッシュメモリ）の内部回路がクリアする（全バイトを「ＦＦ」に設定する）機能である。
【００４１】
従って、ＣＰＵ２４は、一旦クリア指示を行った後は、適宜フラッシュメモリ２６内の第２フラッシュメモリの動作フラグを参照することによって、クリアが完了したか否かを検出することができる。次に、処理がステップＳＰ８６に進むと、書込みモードＷＭが「２」（フラッシュメモリクリア中）に設定され、本ルーチンの処理が終了する。
【００４２】
その後、プレイ処理サブルーチン（図５）を介して再び転送処理サブルーチン（図９）が呼び出されると、処理はステップＳＰ８０，ＳＰ８２を介してステップＳＰ８８に進む。ここでは、サスペンドフラグＳＵＳが“１”であるか否かが判定される。なお、サスペンドフラグＳＵＳは、「１」であればサスペンド中（フラッシュメモリのクリア処理が中断中）であることを意味し、「０」であればサスペンド中ではないことを示すフラグである。
【００４３】
サスペンドフラグＳＵＳは「０」に初期設定されており、上述した各処理ではその内容が変更されていないため、ここでは「ＮＯ」と判定され、処理はステップＳＰ９２に進む。ここでは、クリア指示を行った側の領域が参照され、クリア処理が完了したか否かが判定される。ここで「ＮＯ」と判定されると、転送処理サブルーチン（図９）の処理は終了する。
【００４４】
従って、クリア処理が完了するまで、転送処理サブルーチンにおいてはステップＳＰ８０，ＳＰ８２，ＳＰ９２のみが実行され、実質的な処理は行われない。その後、クリア処理が完了すると、ステップＳＰ９２において「ＹＥＳ」と判定され、処理はステップＳＰ９４に進む。ここでは書込みモードＷＭが「３」（データをコピー中）に設定され、クリアされた音色データ領域の先頭アドレスである「０」が書込みポインタＷＰにセットされる。
【００４５】
これにより、次に転送処理サブルーチン（図９）が呼び出されると、処理はステップＳＰ８２を介してステップＳＰ９６に進む。ここでは、先にフラッシュメモリ２６内でクリア処理された音色データ領域に対して、書込みポインタＷＰを起点として所定量のデータが音色データ領域３２から転送される。ここで、「所定量」とは、約１ｍｓｅｃの処理時間が必要な程度である。さらに、ステップＳＰ９６においては、転送されたデータ量だけ書込みポインタＷＰの値が更新される。
【００４６】
所定量のデータ転送が完了すると、処理はステップＳＰ９８に進み、音色データ領域３２から全データが転送されたか否かが判定される。ここで「ＮＯ」と判定されると、転送処理サブルーチンの処理は終了する。以後、転送処理サブルーチンが呼び出される毎にステップＳＰ９６が実行され、所定量づつ音色データ領域３２から音色データ領域４２または４４にデータが転送される。
【００４７】
やがて全データが転送されると、ステップＳＰ９８において「ＹＥＳ」と判定され、処理はステップＳＰ１００に進む。ここでは書込みモードＷＭが「０」（書込みなし）に戻される。さらに、音色データ領域４２，４４のうち転送された側のフラグＡＦ，ＢＦには、他方のフラグよりも「１」だけインクリメントした値が書込まれる。以上により、先に発生したデータ変更イベントに対応する転送処理が完了する。
【００４８】
このように、何れかのパッドオンイベントが検出された後に何れかのデータ変更スイッチが操作されると、その操作に応じてＲＡＭ２８内のデータが更新される（ステップＳＰ７２）。そして、転送待機時間ΔＴが経過すると、フラッシュメモリ２６のクリア処理が実行され（ステップＳＰ８４）、クリアされた領域に音色データ領域３２の内容が逐次転送される（ステップＳＰ９６）。
【００４９】
ここで、データ変更イベントあるいはパッドオンイベントが生じた時点から転送待機時間ΔＴだけ転送処理を中断させる意義としては、以下の２つが挙げられる。
（１）一般的にフラッシュメモリは書込み回数に制限があり、寿命を長くするためには、書込み回数を減らすことが最も効果的である。そこで、短い間隔（ΔＴ以内）で連続的にデータ変更イベント等が発生した場合は、最後にイベントが途切れた時にセーブを行うこととしたものである。
【００５０】
（２）さらに、パッドオンイベントが生じた場合には、可能な限り速やかに発音を開始させなければユーザが違和感を抱くという問題が生ずる。本実施形態においては、パッドオンイベント直後に転送処理を中断することにより、クリア動作を中断してフラッシュメモリ内の波形データに基づく楽音生成が行えるようにしている。そして、ソフトウエア音源処理（ＳＰ２８，ＳＰ１１８）にリソースを集中させ、高品質の音色で迅速に発音を開始することが可能になる。
【００５１】
３．３．プレイ処理（データ伝送途中でイベントが発生する場合）
３．３．１．書込みモードＷＭが「１」（書込みリクエスト中）である場合のパッドオンイベント
次に、データ転送処理の各段階においてパッドオンイベントやデータ変更イベントがあった場合等の動作を説明する。まず、書込みモードＷＭが「１」（書込みリクエスト中）の場合において新たなパッドオンイベントが発生すると、これに対応してパッドオンイベント処理ルーチン（図６）が呼び出される。
【００５２】
そして、ステップＳＰ４０〜ＳＰ５０を介して、発音チャンネルが割り当てられ新たなパッドオンイベントに対して発音が開始される。ここで、ステップＳＰ５２においては変数ＣＮＴに転送待機時間ΔＴが再設定される。これにより、変数ＣＮＴが「０」にまでカウントダウンされるタイミング、すなわち書込みモードＷＭが「１」（書込みリクエスト中）から「２」（フラッシュメモリクリア中）に変遷するタイミングが先送りされることになる。
【００５３】
３．３．２．書込みモードＷＭが「２」（フラッシュメモリクリア中）である場合のパッドオンイベント
書込みモードＷＭが「２」である場合にパッドオンイベントが発生すると、パッドオンイベント処理ルーチン（図６）のステップＳＰ４２において「ＹＥＳ」と判定され、処理はステップＳＰ４４に進む。ここでは、フラッシュメモリ２６のクリア処理がサスペンド（中断）され、サスペンドフラグＳＵＳが“１”にセットされる。これにより、クリア動作を中断してフラッシュメモリ内の波形データに基づく楽音生成が行えるようになる。
【００５４】
そして、発音開始が指示された後に処理がステップＳＰ５２に進むと、変数ＣＮＴに転送待機時間ΔＴが再設定される。その後、変数ＣＮＴが「０」にまでカウントダウンされると、転送処理サブルーチン（図９）が呼び出され、処理はステップＳＰ８０，ＳＰ８２を介してステップＳＰ８８に進む。
【００５５】
ここで、サスペンドフラグＳＵＳは“１”であるから処理はステップＳＰ９０に進み、先にサスペンドされたクリア処理が再開される。すなわち、先にサスペンドされたクリア処理により途中の領域までクリアされているから、これに続く領域に対してクリア処理が実効されることになる。そして、サスペンドフラグＳＵＳは“０”にセットされる。これにより、以降の処理は、データ伝送途中でイベントが発生しなかった場合と同様になる。
【００５６】
３．３．３．書込みモードＷＭが「３」（データをコピー中）である場合のパッドオンイベント
書込みモードＷＭが「３」である場合にパッドオンイベントが発生すると、上述したように、発音チャンネルの割当と発音開始指示が行われた後、ステップＳＰ５２において変数ＣＮＴに転送待機時間ΔＴがセットされる。
【００５７】
その後、変数ＣＮＴが「０」にカウントダウンされるまでプレイ処理サブルーチン（図５）のステップＳＰ３０において「ＮＯ」と判定され続けるため、転送処理サブルーチン（図９）は呼び出されない。このため、ＲＡＭ２８からフラッシュメモリ２６へのデータ転送（ステップＳＰ９６）が一時的に停止されることになる。そして、変数ＣＮＴが「０」になると、再び転送処理サブルーチン（図９）が呼び出されるようになり、ステップＳＰ９６におけるデータの転送処理が再開されることになる。すなわち、先に停止されたデータ転送で既に転送されていたデータに続くデータの転送が行われる。
【００５８】
３．３．４．転送初期化条件が充足される場合のデータ変更イベント
データ転送途中でデータ変更イベントが発生すると、データ変更イベント処理ルーチン（図８）が呼び出される。ここでは、上述したように、ステップＳＰ７０，ＳＰ７２を介して、ＲＡＭ２８内の音色データ領域３２の内容が更新される。
【００５９】
次に処理がステップＳＰ７４に進むと、「転送初期化条件」が充足されるか否かが判定される。ここで、書込みモードＷＭが「３」（データをコピー中）であって、かつ、書込みポインタＷＰが「０」ではない場合は、上述した、転送初期化条件（ｂ）が満たされる。これは、要するに、「一旦クリア処理された領域に音色データの一部が転送された後に、当該転送すべき音色データに変更が生じた」ということに他ならない。
【００６０】
転送初期化条件（ｂ）が満たされると、ステップＳＰ７４において「ＹＥＳ」と判定され、処理はステップＳＰ７６に進み、書込みモードＷＭが「１」（書込みリクエスト中）にセットされる。これにより、上述したフラッシュメモリ２６のクリア処理が最初からやり直されることになる。
【００６１】
３．３．５．転送初期化条件が充足されない場合のデータ変更イベント
転送初期化条件が充足されない場合とは、具体的には、
・書込みモードＷＭが「１」または「２」である、
・書込みモードＷＭが「３」（データをコピー中）であって書込みポインタＷＰが「０」である
のうち何れかに該当する場合である。
【００６２】
これらの場合においては、転送処理中であっても、実際の音色データの転送処理（ステップＳＰ９６）は未だ行われていない。従って、データ変更イベント処理ルーチン（図８）が呼び出された時にステップＳＰ７６はスキップされ、従前の転送処理はそのまま続行されることになる。
【００６３】
３．３．６．アドレス設定モードスイッチ８ａに対するイベント処理
プレイ処理サブルーチン（図５）のステップＳＰ２２においてアドレス設定モードスイッチ８ａのオンイベントが検出されると、ステップＳＰ２４においては、図７に示すアドレス設定モードスイッチイベント処理が実行される。
【００６４】
図において処理がステップＳＰ６０に進むと、プレイモードの終了処理が行われる。具体的には、各発音チャンネルに対して消音処理が行われる。次に、処理がステップＳＰ６２に進むと、動作モードを示す変数ＭＯＤＥに、アドレス設定モードを示す値ＡＤＳＥＴが代入される。次に、処理がステップＳＰ６４に進むと、アドレス設定モードに対応した画面がパネル表示器６に表示される。以上のステップにより本ルーチンの処理は終了する。
【００６５】
３．４．アドレス設定処理
アドレス設定モードにおいては、メインルーチン（図４）においてステップＳＰ１０が繰返し実行され、その度に図１０に示すアドレス設定処理ルーチンが呼び出される。図においてステップＳＰ１１０〜ＳＰ１１８の処理は、プレイ処理サブルーチン（図５）におけるステップＳＰ２０〜ＳＰ２８と同様に実行される。
【００６６】
但し、各種イベントが検出された場合にステップＳＰ１１４において呼び出される処理はプレイモードの時とは異なる。ところで、アドレス設定処理ルーチン（図１０）においては、プレイ処理サブルーチン（図５）のステップＳＰ３０〜ＳＰ３４に対応するステップは設けられていない。
【００６７】
これは、アドレス設定モードにおいては、設定操作が頻繁に発生するため、設定操作の度にフラッシュメモリ２６へデータを転送することは不適切だからである。そこで、アドレス設定モードで設定されたデータは、このアドレス設定モードを抜けるときにフラッシュメモリ２６に転送することとしている（詳細は後述する）。以下、各イベントに応じた処理について詳述する。
【００６８】
３．４．１．パッドオンイベント処理
ステップＳＰ１１４において、演奏操作子２のパッドオンイベントが検出されると、図１１に示すパッドオンイベント処理ルーチンが呼び出される。図１１の処理はプレイモードにおけるパッドオンイベント処理ルーチン（図６）の内容と同様であり、ステップＳＰ１２０においては、最後に操作されたパッドのパッド番号ＰＮが保存される。
【００６９】
但し、図１１においては、フラッシュメモリ２６へのデータ転送に関係するステップ（図６のステップＳＰ４２，ＳＰ４４，ＳＰ５２）は設けられていない。本ルーチンが設けられていることにより、ユーザはアドレス設定の途中で適宜演奏操作子２のパッドを操作して音色を確認することができる。
【００７０】
３．４．２．アドレス変更イベント処理
アドレス設定モードにおいては、パネルスイッチ８内の一部のスイッチは、波形データの読出しアドレスを設定するために使用される。以下、これらのスイッチをアドレス設定スイッチと呼ぶ。アドレス設定スイッチのイベントが検出されると、ステップＳＰ１１４において図１２に示すアドレス変更イベント処理ルーチンが呼び出される。
【００７１】
図において処理がステップＳＰ１３０に進むと、操作されたアドレス設定スイッチに応じてアドレス番号が変数ＡＮに代入される。ここで、アドレス番号とは、アドレスの種類に応じて予め決定されている番号であり、例えば波形読出しを開始するためのスタートアドレスは「０」、ループ部分の先頭アドレスであるループスタートアドレスは「１」、ループ部分の最終アドレスであるループエンドアドレスは「２」、……のように設定されている。
【００７２】
さらに、ステップＳＰ１３０においては、ＲＡＭ２８内のバッファ領域に、変更後のアドレス値が格納される。次に、処理がステップＳＰ１３２に進むと、バッファ領域内のアドレス値が音色データ領域３２内のアドレス値Ａ（ＰＮ，ＡＮ）に転送される。ここで、「アドレス値Ａ（ＰＮ，ＡＮ）」とは、「パッド番号ＰＮのパッドに対するアドレス番号ＡＮのアドレス値」の意であり、上述したようにパッド番号ＰＮは最後にオンイベントが検出されたパッドの番号である。
【００７３】
次に、処理がステップＳＰ１３４に進むと、チェンジフラグＣＦが“１”に設定される。なお、チェンジフラグＣＦは、アドレス設定モードにおいて何らかのアドレス変更処理が行われた旨を記憶するフラグであり、初期状態では“０”に設定されている。以上のステップにより、アドレス変更イベント処理ルーチンの処理は終了する。
【００７４】
３．４．３．プレイモードスイッチ・イベント処理
ユーザは、波形データのアドレス設定を完了すると、プレイモードスイッチ８ｂを押下する。そのイベントが検出されると、アドレス設定処理ルーチン（図１０）のステップＳＰ１１４においてプレイモードスイッチ・イベント処理ルーチン（図１３）が起動される。
【００７５】
図において処理がステップＳＰ１４０に進むと、発音中のチャンネルに対して消音処理が行われる。次に、処理がステップＳＰ１４２に進むと、チェンジフラグＣＦが“１”であるか否かが判定される。ここで「ＹＥＳ」と判定されると、処理はステップＳＰ１４８に進み、「電源を切らないで下さい」との警告がパネル表示器６に表示される。
【００７６】
次に、処理がステップＳＰ１５０に進むと、フラグＡＦ，ＢＦが参照され、音色データ領域４２，４４のうち一方に対してクリア指示が行われる。ここで、フラグＡＦ，ＢＦのうち「０」〜「３」の範囲の値がセットされていない側があれば、当該領域のデータが破壊されたものと看做され、その領域がクリアされる。一方、フラグＡＦ，ＢＦが共に「０」〜「３」の範囲内であれば、フラグＡＦ，ＢＦの値が小さい方の領域がクリアされる。その際、上述したように、「０」は「３」よりも大きいものと看做される。
【００７７】
次に、処理がステップＳＰ１５２に進むと、適宜フラッシュメモリ２６の内容が参照され、クリア処理が完了するまで処理が待機する。次に処理がステップＳＰ１５４に進むと、クリア処理された領域に対して音色データ領域３２の内容がコピーされる。コピーが完了すると、転送された側のフラグＡＦ，ＢＦには、他方のフラグよりも「１」だけインクリメントした値が書込まれる。また、チェンジフラグＣＦは“０”にセットされる。
【００７８】
次に、処理がステップＳＰ１５６に進むと、ステップＳＰ１４８における警告表示がパネル表示器６から消去される。なお、プレイモードスイッチ８ｂが操作された際にチェンジフラグＣＦが元々“０”であった場合（アドレス値に変更が無かった場合）は、上記ステップＳＰ１４８〜ＳＰ１５６はスキップされる。
【００７９】
次に、処理がステップＳＰ１４４に進むと、動作モードＭＯＤＥにプレイモードを示す値ＰＬＡＹが代入される。次に、処理がステップＳＰ１４６に進むと、プレイモードに対応した画面がパネル表示器６に表示される。以上のステップにより本ルーチンの処理は終了する。従って、以降は、プレイモードにおいて説明した動作が再び繰返されることになる。
【００８０】
４．変形例
本発明は上述した実施形態に限定されるものではなく、例えば以下のように種々の変形が可能である。
（１）上記実施形態においては、「０」，「１」，「２」，「３」の範囲で循環的にインクリメントされる値をフラグＡＦ，ＢＦに交互に記憶させたが、フラグＡＦ，ＢＦの設定方法はこれに限られるものではない。例えば、フラグＡＦ，ＢＦ中のうち３ビットに対して「００１」，「０１０」，「１００」，「００１」，……のように変化させ、“１”になるビットを循環させるようにしてもよい。また、フラグＡＦ，ＢＦに文字コードを格納し、対応する文字を「Ａ」，「Ｂ」，「Ｃ」，「Ｄ」，「Ａ」，「Ｂ」，……のように変化させてもよい。
【００８１】
（２）上記実施形態においては、不揮発性記憶装置の例としてフラッシュメモリ２６を用いたが、不揮発性記憶装置はこれに限られるものではなく、磁気ディスク、光磁気ディスク、バッテリーバックアップ付メモリ等を用いても良い。
【００８２】
（３）上記実施形態は、他のハードウエアを特に要しない電子打楽器として本発明を実現した例であるが、上述した各種の処理の内容をフロッピーディスク、ＣＤ−ＲＯＭ等の記録媒体に格納し、汎用パーソナルコンピュータ上で上述した動作を実現してもよい。
【００８３】
【発明の効果】
以上説明したように本発明によれば、音色データの設定操作が行われた事を契機として不揮発性記憶装置に音色データを転送し、最新のデータを識別する識別情報とともに第１および第２の記憶領域に音色データを交互に転送し、あるいは、演奏イベントを検出したことを条件として、音色データの転送を中断するから、高品質な音質を保持しつつ安全かつ確実に音色データを不揮発性記憶装置にセーブすることができる。
特に、演奏イベント、あるいは設定イベント等が所定時間以上途切れたことを条件に、音色データを第１の記憶装置から不揮発性記憶装置である第２の記憶装置に転送する構成によれば、第１の記憶装置から第２の記憶装置への音色データの転送回数を減少させることができる。これにより、制御負荷や消費電力を節減することができる。さらに、第２の記憶装置がフラッシュメモリのように書込み回数に制限がある記憶装置である場合は、その寿命を延ばすことができる。
また、演奏イベント等が発生したときに転送動作を中断する構成によれば、音色データのバックアップ動作が楽音生成の障害になることを回避でき、レスポンスの良い楽音生成処理を行うことができる。
また、調整モードを解除する際に、音色データを第１の記憶装置から不揮発性記憶装置である第２の記憶装置に転送する構成によれば、調整モードにおいて微妙な調整が行われている間がバックアップ処理を回避でき、動作モードが該調整モードから抜ける時に自動的にバックアップを行うことが可能である。
【図面の簡単な説明】
【図１】本発明の一実施形態の電子打楽器のブロック図である。
【図２】上記実施形態におけるＲＡＭ２８のメモリマップである。
【図３】上記実施形態におけるフラッシュメモリ２６のメモリマップである。
【図４】上記実施形態のメインルーチンのフローチャートである。
【図５】上記実施形態のプレイ処理サブルーチンのフローチャートである。
【図６】上記実施形態のプレイモードのパッドオンイベント処理ルーチンのフローチャートである。
【図７】上記実施形態のプレイモードのアドレス設定モードスイッチ・イベント処理ルーチンのフローチャートである。
【図８】上記実施形態のプレイモードのデータ変更イベント処理ルーチンのフローチャートである。
【図９】上記実施形態のプレイモードの転送処理サブルーチンのフローチャートである。
【図１０】上記実施形態のアドレス設定処理ルーチンのフローチャートである。
【図１１】上記実施形態のアドレス設定モードのパッドオンイベント処理ルーチンのフローチャートである。
【図１２】上記実施形態のアドレス設定モードのアドレス変更イベント処理ルーチンのフローチャートである。
【図１３】上記実施形態のアドレス設定モードのプレイモードスイッチ・イベント処理ルーチンのフローチャートである。
【符号の説明】
２……演奏操作子、４……リボンコントローラ、６……パネル表示器、８……パネルスイッチ、８ａ……アドレス設定モードスイッチ、１０……波形入出力部、１２……サウンドシステム、１４……バス、１６……ＭＩＤＩインターフェース、２０……外部記録媒体、２４……ＣＰＵ、２６……フラッシュメモリ、２８……ＲＡＭ、３０……ワーク領域、３２……音色データ領域、３４……その他データ領域、４０……動作プログラム領域、４２，４４……音色データ領域、４６……波形データ領域、４８……その他データ領域。
【図１】
0003630066.tif 000002
【図２】
0003630066.tif 000003
【図３】
0003630066.tif 000004
【図４】
0003630066.tif 000005
【図５】
0003630066.tif 000006
【図６】
0003630066.tif 000007
【図７】
0003630066.tif 000008
【図８】
0003630066.tif 000009
【図９】
0003630066.tif 000010
【図１０】
0003630066.tif 000011
【図１１】
0003630066.tif 000012
【図１２】
0003630066.tif 000013
【図１３】
0003630066.tif 000014