(57)【特許請求の範囲】
【請求項１】
外部記憶手段に記憶されている名称により特定される演奏データを該外部記憶手段から内部記憶手段に転送して記憶させる電子楽器において、
外部記憶手段に記憶されている演奏データを記憶可能な内部記憶手段と、
前記外部記憶手段に記憶されている演奏データを選択する選択手段と、
前記選択手段によって選択された演奏データと前記内部記憶手段に記憶されている演奏データとを比較し、前記選択手段によって選択された演奏データの名称と前記内部記憶手段に記憶されている演奏データの名称とが一致し、かつ、前記選択手段によって選択された演奏データの内容と前記内部記憶手段に記憶されている演奏データの内容とが一致すると、前記選択手段によって選択された演奏データと前記内部記憶手段に記憶されている演奏データとが同じであるとの比較結果を生成する比較手段と、
前記比較手段の比較結果が、前記選択手段によって選択された演奏データと前記内部記憶手段に記憶されている演奏データとが同じであることを示す場合に、前記選択手段によって選択された演奏データを前記内部記憶領域へ転送しないように制御する制御手段と
を有する電子楽器。
【請求項２】
内部記憶手段に記憶されている名称により特定される演奏データを該内部記憶手段から外部記憶手段に転送して記憶させる電子楽器において、
内部記憶手段に記憶されている演奏データを選択する選択手段と、
前記選択手段によって選択された演奏データと外部記憶手段に記憶されている演奏データとを比較し、前記選択手段によって選択された演奏データの名称と前記外部記憶手段に記憶されている演奏データの名称とが一致し、かつ、前記選択手段によって選択された演奏データの内容と前記外部記憶手段に記憶されている演奏データの内容とが一致すると、前記選択手段によって選択された演奏データと前記外部記憶手段に記憶されている演奏データとが同じであるとの比較結果を生成する比較手段と、
前記比較手段の比較結果が、前記選択手段によって選択された演奏データと前記外部記憶手段に記憶されている演奏データとが同じであることを示す場合に、前記選択手段によって選択された演奏データを前記外部記憶領域へ転送しないように制御する制御手段と
を有する電子楽器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子楽器に関し、さらに詳細には、外部記憶手段に記憶されている演奏データを、当該外部記憶手段から内部記憶手段に転送して記憶させたり、内部記憶手段に記憶されている演奏データを、当該内部記憶手段から外部記憶手段に転送して記憶させたりすることのできる電子楽器に関する。
【０００２】
なお、本明細書においては、「外部記憶手段に記憶されている演奏データを当該外部記憶手段から内部記憶手段に転送して記憶させる」ことを「ロード」と適宜に称することとし、「内部記憶手段に記憶されている演奏データを当該内部記憶手段から外部記憶手段に転送して記憶させる」ことを「セーブ」と適宜に称することとする。
【０００３】
【従来の技術】
従来より、外部記憶手段としてハード・ディスクなどの外部記憶装置に記憶された演奏データを選択して、当該選択した演奏データを当該外部記憶装置から内部記憶手段としてランダム・アクセス・メモリ（ＲＡＭ）などの内部記憶領域に読み込み、当該内部記憶領域に読み込んだ演奏データに基づいて楽音を生成するようにした電子楽器が知られている。
【０００４】
ところで、上記したような従来の電子楽器においては、複数の演奏データとして外部記憶手段としてのハード・ディスクなどの外部記憶装置に記憶された複数の波形データの中から所望の波形データを選択して（選択する波形データは、単数でもよいし複数でもよい。）、当該選択した波形データを当該外部記憶装置から電子楽器の内部記憶手段としてのＲＡＭなどの内部記憶領域にロードする際には、必ず選択された全ての波形データをロードするようになされていた。
【０００５】
同様に、従来の電子楽器においては、演奏データとして内部記憶手段としてのＲＡＭなどの内部記憶領域に記憶された複数の波形データの中から所望の波形データを選択して（選択する波形データは、単数でもよいし複数でもよい。）、当該選択した波形データを当該内部記憶領域から外部記憶手段としてのハード・ディスクなどの外部記憶装置にセーブする際には、必ず選択された全ての波形データをセーブするようになされていた。
【０００６】
このため、従来の電子楽器においては、演奏データをロードしたりセーブしたりする際に、それらの処理に時間がかかってしまうという問題点があった。
【０００７】
【発明が解決しようとする課題】
本発明は、上記したような従来の技術の有する問題点に鑑みてなされたものであり、その目的とするところは、外部記憶手段に記憶された演奏データを当該外部記憶手段から内部記憶手段に転送して記憶させる際、即ち、外部記憶手段から演奏データを内部記憶手段にロードする際や、内部記憶手段に記憶された演奏データを当該内部記憶手段から外部記憶手段に転送して記憶させる際、即ち、内部記憶手段から演奏データを外部記憶手段にセーブする際に、それらの処理を高速で行って当該処理に要する時間を短縮化することができるようにした電子楽器を提供しようとするものである。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、本発明は、外部記憶手段に記憶された演奏データを当該外部記憶手段から内部記憶手段に転送して記憶させる際、即ち、外部記憶手段から演奏データを内部記憶手段にロードする際に、同じ演奏データが既にロードされているか否かを調べて、既にロードされてる演奏データは再度ロードしないようにして、ロードの処理に要する時間を短縮化するようにしたものである。
【０００９】
より詳細には、本発明は、外部記憶手段から演奏データを内部記憶手段にロードすることを指示された際に（ロードすることを指示された演奏データは、単数でもよいし複数でもよい。）、当該ロードを指示された演奏データが既にロードされているか否かを調べて、既にロードされている演奏データがあれば、当該既にロードされている演奏データはロードせずに、ロードされていない演奏データのみをロードすることにより、ロードの処理に要する時間を短縮化するものである。
【００１０】
そして、外部記憶手段から内部記憶手段に既にロードされている演奏データであっても、当該内部記憶手段に既にロードされている演奏データが編集などの処理によりロード時の状態とは変化してしまい、外部記憶手段に記憶されている演奏データの内容と内部記憶手段に記憶されている演奏データの内容とが異なっている場合には、外部記憶手段に記憶されている演奏データを内部記憶手段に再度ロードすることにより、内部記憶手段に記憶されている演奏データの内容と外部記憶手段に記憶されている演奏データの内容との整合性を保つようにするものである。
【００１１】
また、本発明は、内部記憶手段に記憶された演奏データを当該内部記憶手段から外部記憶手段に転送して記憶させる際、即ち、内部記憶手段から演奏データを外部記憶手段にセーブする際に、同じ演奏データが既にセーブされているか否かを調べて、既にセーブされてる演奏データは再度セーブしないようにして、セーブの処理に要する時間を短縮化するようにしたものである。
【００１２】
より詳細には、本発明は、内部記憶手段から演奏データを外部記憶手段にセーブすることを指示された際に（セーブすることを指示された演奏データは、単数でもよいし複数でもよい。）、当該セーブを指示された演奏データが既にセーブされているか否かを調べて、既にセーブされている演奏データがあれば、当該既にセーブされている演奏データはセーブせずに、セーブされていない演奏データのみをセーブすることにより、セーブの処理に要する時間を短縮化するものである。
【００１３】
そして、内部記憶手段から外部記憶手段に既にセーブされている演奏データであっても、当該外部記憶手段に既にセーブされた演奏データに対応する内部記憶手段に記憶されている演奏データが編集などの処理によりセーブ時の状態とは変化してしまい、外部記憶手段に記憶されている演奏データの内容と内部記憶手段に記憶されている演奏データの内容とが異なっている場合には、内部記憶手段に記憶されている演奏データを外部記憶手段に再度セーブすることにより、内部記憶手段に記憶されている演奏データの内容と外部記憶手段に記憶されている演奏データの内容との整合性を保つようにするものである。
【００１４】
即ち、本発明のうち請求項１に記載の発明は、外部記憶手段に記憶されている名称により特定される演奏データを該外部記憶手段から内部記憶手段に転送して記憶させる電子楽器において、外部記憶手段に記憶されている演奏データを記憶可能な内部記憶手段と、上記外部記憶手段に記憶されている演奏データを選択する選択手段と、上記選択手段によって選択された演奏データと上記内部記憶手段に記憶されている演奏データとを比較し、上記選択手段によって選択された演奏データの名称と上記内部記憶手段に記憶されている演奏データの名称とが一致し、かつ、上記選択手段によって選択された演奏データの内容と上記内部記憶手段に記憶されている演奏データの内容とが一致すると、上記選択手段によって選択された演奏データと上記内部記憶手段に記憶されている演奏データとが同じであるとの比較結果を生成する比較手段と、上記比較手段の比較結果が、上記選択手段によって選択された演奏データと上記内部記憶手段に記憶されている演奏データとが同じであることを示す場合に、上記選択手段によって選択された演奏データを上記内部記憶領域へ転送しないように制御する制御手段とを有するようにしたものである。
【００１５】
また、本発明のうち請求項２に記載の発明は、内部記憶手段に記憶されている名称により特定される演奏データを該内部記憶手段から外部記憶手段に転送して記憶させる電子楽器において、内部記憶手段に記憶されている演奏データを選択する選択手段と、上記選択手段によって選択された演奏データと外部記憶手段に記憶されている演奏データとを比較し、上記選択手段によって選択された演奏データの名称と上記外部記憶手段に記憶されている演奏データの名称とが一致し、かつ、上記選択手段によって選択された演奏データの内容と上記外部記憶手段に記憶されている演奏データの内容とが一致すると、上記選択手段によって選択された演奏データと上記外部記憶手段に記憶されている演奏データとが同じであるとの比較結果を生成する比較手段と、上記比較手段の比較結果が、上記選択手段によって選択された演奏データと上記外部記憶手段に記憶されている演奏データとが同じであることを示す場合に、上記選択手段によって選択された演奏データを上記外部記憶領域へ転送しないように制御する制御手段とを有するようにしたものである。
【００１６】
【発明の実施の形態】
以下、添付の図面を参照しながら、本発明による電子楽器の実施の形態の一例を詳細に説明する。
【００１７】
図１には、本発明の実施の形態の一例による電子楽器のブロック構成図が示されている。
【００１８】
この電子楽器は、その全体の動作を中央処理装置（ＣＰＵ）１０を用いて制御するように構成されている。
【００１９】
そして、この電子楽器には、外部記憶手段としてのハード・ディスクなどの外部記憶装置２００が接続されており、この外部記憶装置２００には、複数の演奏データとして複数の波形データが記憶されている。
【００２０】
また、この電子楽器のＣＰＵ１０には、バス１２を介して、ＣＰＵ１０が後述するフローチャートに示すような動作の制御を行うために実行するプログラムなどが格納されたプログラム・メモリ（なお、プログラム・メモリは、リード・オンリ・メモリ（ＲＯＭ）により構成される。）１４と、ＣＰＵ１０によるプログラムの実行に必要な後述する各種バッファやレジスタなどが設定されたワーキング・エリアとしてのワーキング・メモリ（なお、ワーキング・メモリは、ＲＡＭにより構成される。）１６と、外部記憶装置２００から波形データをロードして記憶可能となされているとともに記憶している波形データを外部記憶装置２００にセーブして記憶可能となされている内部記憶手段としての波形メモリ（なお、波形メモリは、ＲＡＭにより構成される。）１８と、後述する操作パネル１００に配置される各種の操作子よりなる操作子群２０と、後述する操作子パネル１００に配置される表示装置２２と、外部のＭＩＤＩ機器との間で通信を行うためのＭＩＤＩインターフェース（ＭＩＤＩ  Ｉ／Ｆ）２４とが接続されている。
【００２１】
なお、ＣＰＵ１０には、デジタル／アナログ変換器（Ｄ／Ａ）２６が接続されている。このＤ／Ａ２６は、ＣＰＵ１０が波形メモリ１８に記憶された波形データに基づいて生成したデジタル楽音信号を、アナログ楽音信号に変換して出力するものである。
【００２２】
そして、Ｄ／Ａ２６から出力されたアナログ楽音信号は、当該アナログ楽音信号を増幅するためのアンプやこのアンプによって増幅されたアナログ楽音信号を空間に楽音として放音するためのスピーカーなどから構成されるサウンド・システム（図示せず）を介して、楽音として空間に放音されることになる。
【００２３】
また、この電子楽器には、波形メモリ１８に記憶された波形データを編集（「編集」としては、音高や音色の変更などがある。）する機能が設けられている。なお、上記した波形データを編集する機能を実現するための構成は、既に公知の技術を用いることができるものであるので、説明を簡略化して本発明の理解を容易にするために、その詳細な説明は省略する。
【００２４】
また、図２乃至図５には、操作子群２０を構成する各種の操作子ならびに表示装置２２を配置した操作パネル１００の構成説明図が示されている。
【００２５】
ここで、表示装置２２は、例えば、液晶ディスプレイ（ＬＣＤ）により構成される表示画面２２ａを備えており、この表示画面２２ａには、後述するような各種の情報が表示されることになる。
【００２６】
次に、図２乃至図５を参照しながら、操作子群２０を構成する各種の操作子の操作に基づいて実行される動作ならびに当該動作に伴い表示画面２２ａに表示される情報の内容について説明する。
【００２７】
まず、操作子群２０を構成する各種の操作子を説明すると、本発明の実施に関連する操作子としては、メニュー（ＭＥＮＵ）・スイッチ２０ａと、インクリメント（ＩＮＣ）・スイッチ２０ｂと、デクリメント（ＤＥＣ）・スイッチ２０ｃと、アップ（ＵＰ）・スイッチ２０ｄと、ダウン（ＤＯＷＮ）・スイッチ２０ｅと、レフト（ＬＥＦＴ）・スイッチ２０ｆと、ライト（ＲＩＧＨＴ）・スイッチ２０ｇと、エクジット（ＥＸＩＴ）・スイッチ２０ｈと、エンター（ＥＮＴＥＲ）・スイッチ２０ｉと、ファンクション１（Ｆ１）スイッチ２０ｊと、ファンクション２（Ｆ２）スイッチ２０ｋと、ファンクション３（Ｆ３）スイッチ２０ｌと、ファンクション４（Ｆ４）スイッチ２０ｍとが設定されている。
【００２８】
上記した操作子のなかで、インクリメント・スイッチ２０ｂとデクリメント・スイッチ２０ｃとは、設定しようとする値を変更する際に操作するものであり、インクリメント・スイッチ２０ｂを１度押す毎に値が「１」だけ増加し、デクリメント・スイッチ２０ｃを１度押す毎に値が「１」だけ減少する。
【００２９】
また、上記した操作子のなかで、アップ・スイッチ２０ｄ、ダウン・スイッチ２０ｅ、レフト・スイッチ２０ｆならびにライト・スイッチ２０ｇは、表示装置２２の表示画面２２ａに表示されるカーソルの移動を行う際に操作するものであり、アップ・スイッチ２０ｄを押すとカーソルが上方へ移動され、ダウン・スイッチ２０ｅを押すとカーソルが下方へ移動され、レフト・スイッチ２０ｆを押すとカーソルが左方へ移動され、ライト・スイッチ２０ｇを押すとカーソルが右方へ移動される。
【００３０】
ここで、図２の表示装置２２の表示画面２２ａには、この電子楽器の電源投入後において、メニュー・スイッチ２０ａを押した後にダウン・スイッチ２０ｅを２度押したときのメニュー画面が表示されている。この表示画面２２ａの表示内容は、カーソルが「ＤＩＳＫ  Ｌｏａｄ  ｍｅｎｕ」の表示上に位置していて、「ＤＩＳＫ  Ｌｏａｄ  ｍｅｎｕ」が選択された状態を示している。
【００３１】
この図２に示す状態でエンター・スイッチ２０ｉを押すと、表示装置２２の表示画面２２ａが図３に示す状態となる。この図３における表示画面２２ａの表示内容は、ロードしたい波形データの選択画面を示している。
【００３２】
そして、図３における表示画面２２ａにおいて、左側に位置している「＋」マークは、当該「＋」マークを付された名称（なお、以下においては、波形データの名称を適宜に「波形データ名」と称する。）の波形データがロードする対象として選択されていることを示している。即ち、図３においては、「Ｄｒｕｍ  Ｋｉｃｋ  １」という波形データ名の波形データと「ＡＣ．Ｂａｓｓ  １」という波形データ名の波形データとが選択された状態を示している。
【００３３】
ここで、ロードする波形データを選択するには、所望の波形データの波形データ名にカーソル（図３において、カーソルは、波形データ名の下に位置する「下線」により表される。）を位置させた状態において、エンター・スイッチ２０ｉを押せばよい。これにより、ロードする波形データが選択されることになり、波形データ名の左側に「＋」マークが表示される。
【００３４】
また、ロードする波形データとして選択された波形データ名にカーソルが位置している状態において、エンター・スイッチ２０ｉを押すと、ロードする波形データとしての選択が解除され、波形データ名の左側の「＋」マークの表示が消される。
【００３５】
さらに、図３に示す状態でＦ４スイッチ２０ｍを押すと、表示装置２２の表示画面２２ａが図４に示す状態となる。この図４における表示画面２２ａの表示内容は、上記のようにして選択した波形データを波形メモリ１８に順次にロードする際において、波形メモリ１８におけるサンプルについて、選択された波形データの中で最初にロードする波形データがロード開始されることになる先頭のサンプルのサンプル番号（以下、「ロード先サンプル番号」と適宜に称する。）を指示して設定する画面を示している。
【００３６】
そして、図４に示す表示画面２２ａにおいて、インクリメント・スイッチ２０ｂを押すとロード先サンプル番号の値が「１」だけ増加され、デクリメント・スイッチ２０ｃを押すとロード先サンプル番号の値が「１」だけ減少される。
【００３７】
なお、図４に示す表示画面２２ａにおいては、ロード先サンプル番号の値として「００１」が指示されて設定された状態が示されており、波形メモリ１８においてロードを開始されるサンプルのサンプル番号は「１」となる。
【００３８】
この図４に示す状態でＦ４スイッチ２０ｍを押すと、選択された波形データのロードの準備のために、ロードの対象として選択されている波形データが既に波形メモリ１８にロードされているか否かを調べる処理が行われる。なお、この処理は、後述する図８のフローチャートに示す波形メモリ検索処理ルーチンとして実行される。
【００３９】
ここで、ロードの対象として選択されている全ての波形データが波形メモリ１８に記憶されていないか、あるいは、ロードの対象として選択されている全ての波形データが波形メモリ１８に記憶されていても、その波形メモリ１８に記憶されている波形データが全て編集されていて、外部記憶装置２００に記憶された波形データの内容と波形メモリ１８に記憶された波形データの内容とが異なっている場合には、上記した図４に示す状態でＦ４スイッチ２０ｍを押した際に、ロードの対象として選択されている波形データの全てをそのまま波形メモリ１８に自動的にロードする（このロードは、従来の技術において行われていたロードと同様な処理であり、適宜に「通常ロード処理」と称する。なお、この通常ロード処理は、後述する図１０のフローチャートに示す通常ロード処理ルーチンとして実行される。）。
【００４０】
一方、ロードの対象として選択されている波形データのうちの一つでも同じ波形データが既に波形メモリ１８にロードされていて、当該波形メモリ１８に既にロードされた波形データが編集されていないときには、図５における表示画面２２ａの状態に自動的に変化する。この図５における表示画面２２ａの表示内容は、本発明の実施に関連する高速ロード処理（この「高速ロード処理」については後述する。なお、高速ロード処理は、後述する図１１のフローチャートに示す高速ロード処理ルーチンとして実行される。）指示画面を示している。
【００４１】
そして、この図５に示す表示画面２２ａにおいて、高速ロードするか否かの指示を待ち、この指示待ちの状態において「ＡＬＬ」を指定するＦ４スイッチ２０ｍが押された場合には、ロードの対象として選択されている波形データの全てを波形メモリ１８へロードし（このロードは、上記した通常ロード処理により行われる。）、一方、この指示待ちの状態において「ＱＵＩＣＫ」を指定するＦ１スイッチ２０ｊが押された場合には、後述する高速ロード処理を行う（なお、高速ロード処理は、後述する図１１のフローチャートに示す高速ロード処理ルーチンとして実行される。）。
【００４２】
なお、図３に示す波形データの選択画面において選択された波形データ名は、ワーキング・エリア１６に設定された図６に示すセレクト・アレイ（Ｓｅｌｅｃｔ  Ａｒｒａｙ）配列表に、選択された順番で記憶されることになる。
【００４３】
なお、この実施の形態においては、図３に示す波形データの選択画面において選択可能な波形データの最大数は「５」に設定されており、セレクト・アレイ配列表は選択順に最大５つまでの波形データ名が記憶されることになる。
【００４４】
この図６に示すセレクト・アレイ配列表の例においては、順番０には波形データ名として「Ｐｉａｎｏ  １」が記憶され、順番１には波形データ名として「Ｐｉａｎｏ  ３」が記憶され、順番２には波形データ名として「Ｓｔｒｉｎｇｓ  １」が記憶され、順番３には波形データ名として「Ｄｒｕｍ  Ｋｉｃｋ  ２」が記憶され、順番４には波形データ名として「ＡＣ．Ｂａｓｓ  １」が記憶されている。
【００４５】
また、図７には、高速ロード処理する前と後との波形メモリ１８の状態の一例が示されており、図７において左側に高速ロード処理する前の現在の波形メモリ１８の状態が示されており、図７において右側に高速ロード処理後の波形メモリ１８の状態が示されている。
【００４６】
この図７に示す例は、図６に示すセレクト・アレイ配列表に示す波形データがロードの対象として選択されている場合を示しており、図６に示すセレクト・アレイ配列表においては５つの波形データがロードの対象として選択されているが、後述する高速ロード処理において実際にロードされる波形データは、波形データ名「Ｄｒｕｍ  Ｋｉｃｋ  ２」の１つのみとなる。
【００４７】
次に、図８および図１０乃至図１２に示すフローチャートならびに図６に示すセレクト・アレイ配列表、図７に示す波形メモリの状態の説明図および図９に示す波形データ配列表を参照しながら、この電子楽器におけるロードの処理について説明する。
【００４８】
なお、図９に示す波形データ配列表においては、本発明の理解を容易にするために、ロード前の波形メモリ１８の状態が、図７に示す「高速ロード処理する前の現在の波形メモリの状態」と同じ場合において、図６に示すセレクト・アレイ配列表の内容がロードの対象として設定された場合について示している。
【００４９】
なお、上記したフローチャートの処理において使用されるレジスタとしては、以下に説明する（１）乃至（４）に示すものがある。
【００５０】
（１）ＳｅｌｅｃｔＡｒｒａｙ
ロードする波形データとして選択されて、セレクト・アレイ配列表に格納された波形データ名が格納されるレジスタである。
【００５１】
（２）ＬｏａｄＳｔｒａｔｅｇｙ＿Ｌｏａｄ（ＬｏａｄＳｔｒａｔｅｇｙ＿Ｌｏａｄ［ｊ］）
波形メモリ１８のｊ番目（「ｊ」は、０および正の整数である。）のサンプル、即ち、サンプル番号ｊのサンプルにいずれの波形データをロードするのかを分かるように、ロードすべき波形データ名を格納したレジスタである。なお、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｌｏａｄに「不定」が格納されている場合には、ロードすべき波形データ名を特定できない場合を示す。
【００５２】
（３）ＬｏａｄＳｔｒａｔｅｇｙ＿Ｅｒａｓｅ
波形メモリ１８のｊ番目（「ｊ」は、０および正の整数である。）のサンプル、即ち、サンプル番号ｊのサンプルを消去するか否か示す情報を格納したレジスタである。ＬｏａｄＳｔｒａｔｅｇｙ＿Ｅｒａｓｅに「真」が格納されている場合にはそのサンプル番号のサンプルを消去し、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｅｒａｓｅに「偽」が格納されている場合にはそのサンプル番号のサンプルを消去しない。なお、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｅｒａｓｅに「不定」が格納されている場合には、そのサンプル番号のサンプルを消去するか否か特定できない場合を示す。
【００５３】
（４）ＬｏａｄＳｔｒａｔｅｇｙ＿Ｍｏｖｅ（ＬｏａｄＳｔｒａｔｅｇｙ＿Ｍｏｖｅ［ｊ］）
波形メモリ１８のｊ番目（「ｊ」は、０を含む正の整数である。）のサンプル、即ち、サンプル番号ｊのサンプルは交換によりロードできるか否か示す情報を格納したレジスタである。なお、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｍｏｖｅに「不定」が格納されている場合には、そのサンプル番号のサンプルは交換によりロードできるか否か特定できない場合を示す。
【００５４】
まず、図８に示す波形メモリ検索処理ルーチンのフローチャートを参照しながら、ロードしようとする波形データが波形メモリ１８に既にロードされているか否かを調べ波形メモリ検索処理について説明する。
【００５５】
即ち、この図８に示す波形メモリ検索処理ルーチンは、図４に示す状態でＦ４スイッチ２０ｍが押されると起動されるものであり、この波形メモリ検索処理ルーチンが起動されると、上記において図２乃至図４に示す表示画面２２ａを参照しながら説明したロードしようとする波形データの選択操作により選択された波形データの一覧を、ＳｅｌｅｃｔＡｒｒａｙからＬｏａｄＳｔｒａｔｅｇｙ＿Ｌｏａｄにコピーする（ステップＳ８０２）。
【００５６】
次に、図４に示す表示画面２２ａにおいて設定されたロード先サンプル番号から始まる現在の波形メモリ１８の記憶内容とＳｅｌｅｃｔＡｒｒａｙの記憶内容とを比較して、ＳｅｌｅｃｔＡｒｒａｙに無いサンプルは波形メモリ１８から消去する対象となるので、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｅｒａｓｅを「真」にする（ステップＳ８０４）。
【００５７】
それから、ＳｅｌｅｃｔＡｒｒａｙと現在の波形メモリ１８の記憶内容全体とを調べて、ＳｅｌｅｃｔＡｒｒａｙにあるサンプルが波形メモリ１８に存在し、かつ、そのサンプルの波形データが編集されていない場合には、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｍｏｖｅを「真」にして（ステップＳ８０６）、この波形メモリ検索処理ルーチンの処理を終了する。
【００５８】
なお、この電子楽器においては、波形メモリ１８に記憶されている波形データ毎に編集フラグが設けられており、波形メモリ１８に記憶されている波形データに何らかの編集が行われると、編集された波形データに対応するフラグがセットされるものとする。ステップＳ８０６の処理においては、この編集フラグの状態に応じて、波形データが編集されているか否かを判断する。
【００５９】
そして、図９には、図８に示す波形メモリ検索処理ルーチンを実行した後における、配列の状態が示されている。
【００６０】
次に、図１０に示す通常ロード処理ルーチンのフローチャートを参照しながら、選択した全ての波形データをロードする通常ロード処理について説明する。
【００６１】
即ち、この図１０に示す通常ロード処理ルーチンは、図４に示す状態でＦ４スイッチ２０ｍを押した場合あるいは図５に示す状態でＦ４スイッチ２０ｍを押した場合に起動されるものであり、この通常ロード処理ルーチンが起動されると、まず、ロードされる波形データ数分だけ、図４に示す表示画面２２ａで設定したロード先サンプル番号から波形メモリ１８内のサンプルの波形データを消去する（ステップＳ１００２）。
【００６２】
それから、選択された波形データを全てロード先サンプル番号から波形メモリ１８のサンプルへロードし、この通常ロード処理ルーチンを終了する。
【００６３】
従って、通常ロード処理ルーチンの処理によって、選択された全ての波形データは、波形メモリ１８にロードされることになる。
【００６４】
次に、図１１に示す高速ロード処理ルーチンのフローチャートを参照しながら、選択した全ての波形データをロードすることなく必要な波形データのみをロードして、ロード処理の高速化を図る高速ロード処理について説明する。
【００６５】
即ち、この図１１に示す高速ロード処理ルーチンは、図５に示す状態でＦ１スイッチ２０ｊを押した場合に起動されるものであり、この高速ロード処理ルーチンが起動されると、まず、図８に示す波形メモリ検索処理ルーチンのステップＳ８０４で設定されたＬｏａｄＳｔｒａｔｅｇｙ＿Ｅｒａｓｅに基づいて、「真」に設定されている波形メモリ１８のサンプルから波形データの消去を行う（ステップＳ１１０２）。
【００６６】
それから、この高速ロード処理ルーチンのサブ・ルーチンとして図１２のフローチャートに示すサンプル交換処理を行い、交換可能なサンプル間において波形データの交換を行う（ステップＳ１１０４）。
【００６７】
さらに、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｍｏｖｅに基づいて、「偽」に設定されている波形メモリ１８のサンプルに波形データのロードを行う（ステップＳ１１０６）。このとき、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｅｒａｓｅが「偽」であったら、当該波形メモリ１８のサンプルから波形データの消去を行った後に、波形データのロードを行うことになる。
【００６８】
そして、上記したステップＳ１１０６の処理を終了すると、この高速ロード処理ルーチンを終了する。
【００６９】
次に、図１２に示すサンプル交換処理ルーチンのフローチャートを参照しながら、サンプル交換処理について説明する。このサンプル交換処理は、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｍｏｖｅが「真」であったとき、ロードの対象として選択された波形データと同じ波形データを現在の波形メモリ１８のサンプルから探し、当該探したサンプルのサンプル番号の波形データとロードの対象として選択されたサンプルのサンプル番号の波形データとを交換するものである。
【００７０】
このサンプル交換処理ルーチンが起動されると、まず、処理変数ｊにロード先サンプル番号を設定する（ステップＳ１２０２）。
【００７１】
次に、後述するステップＳ１２０４乃至ステップＳ１２１２に示す処理に関して、ロードの対象として選択された波形データ分繰り返し行ったか否か判断され、選択された波形データ分繰り返し行ったと判断された場合には、このサンプル交換処理ルーチンを終了して高速ロード処理ルーチンへリターンするが、選択された波形データ分繰り返し行っていないと判断された場合には、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｍｏｖｅ［ｊ］が「真」であるか否かを判断する（ステップＳ１２０６）。
【００７２】
ここで、ＬｏａｄＳｔｒａｔｅｇｙ＿Ｍｏｖｅ［ｊ］が「真」であると判断された場合には、処理変数ｋにＬｏａｄＳｔｒａｔｅｇｙ＿Ｌｏａｄ［ｊ］と同じ波形データ名のサンプルのサンプル番号を設定し（ステップＳ１２０８）、サンプル番号ｋのサンプルとサンプル番号ｊのサンプルとを交換する（ステップＳ１２１０）。
【００７３】
それから、処理変数ｊを「１」インクリメントして、ステップＳ１２０４の処理へ戻り、以降の処理を繰り返すことになる。
【００７４】
従って、高速ロード処理ルーチンの処理によって、選択された全ての波形データが波形メモリ１８にロードされることなく、選択された全ての波形データのなかで、既に波形メモリ１８にロードされていない波形データならびに既に波形メモリ１８にロードされていても編集された波形データのみがロードされることになるので、ロードの処理を高速で行うことができるようになり、当該ロードの処理に要する時間を短縮化することができるようになる。
【００７５】
次に、波形データのセーブについて説明するが、波形データのセーブの処理については、上記した波形データのロードの処理と同様な処理を行えばよい。
【００７６】
即ち、この電子楽器の電源投入後において、メニュー・スイッチ２０ａを押した後にダウン・スイッチ２０ｅを３度押し、図２におけるメニュー画面においてカーソルを「ＤＩＳＫ  Ｓａｖｅ  ｍｅｎｕ」の表示上に位置させた状態でエンター・スイッチ２０ｉを押すと、表示装置２２の表示画面２２ａが図１３に示す状態となる。この図１３における表示画面２２ａの表示内容は、セーブしたい波形データの選択画面を示している。
【００７７】
そして、図１３における表示画面２２ａにおいては、図３に示すロードの場合と同様に、左側に位置している「＋」マークを付された波形データ名の波形データがセーブする対象として選択されていることを示している。即ち、図１３においては、「Ｐｉａｎｏ  １」という波形データ名の波形データと「Ｓｔｒｉｎｇｓ  １」という波形データ名の波形データとが選択された状態を示している。
【００７８】
ここで、セーブする波形データを選択するには、ロードする波形データを選択する場合と同様に、所望の波形データの波形データ名にカーソル（図１３において、カーソルは、波形データ名の下に位置する「下線」により表される。）を位置させた状態において、エンター・スイッチ２０ｉを押せばよい。これにより、セーブする波形データが選択されることになる。
【００７９】
また、セーブする波形データとして選択された波形データ名にカーソルが位置している状態において、エンター・スイッチ２０ｉを押すと、セーブする波形データとしての選択が解除される。
【００８０】
さらに、ロードの場合と同様に、図１３に示す状態でＦ４スイッチ２０ｍを押すと、選択された波形データのセーブの準備のために、セーブの対象として選択されている波形データが既に外部記憶装置２００にセーブされているか否かを調べる。即ち、セーブを指示されたときには、既にセーブされている波形データがあるか否かを調べるものである。
【００８１】
ここで、セーブの対象として選択されている全ての波形データが外部記憶装置２００に記憶されていないか（即ち、セーブを指示されたときに、既にセーブされている波形データがない場合である。）、あるいは、セーブの対象として選択されている全ての波形データが外部記憶装置２００に記憶されていても、その波形メモリ１８に記憶されている波形データが全て編集されていて、外部記憶装置２００に記憶された波形データの内容と波形メモリ１８に記憶された波形データの内容とが異なっている場合には、上記した図１３に示す状態でＦ４スイッチ２０ｍを押した際に、セーブの対象として選択されている波形データの全てをそのまま外部記憶装置２００に自動的にセーブする（このセーブは、従来の技術において行われていたセーブと同様な処理であり、適宜に「通常セーブ処理」と称する。）。
【００８２】
一方、セーブの対象として選択されている波形データのうちの一つでも同じ波形データが既に外部記憶装置２００にセーブされていて、当該外部記憶装置２００に既にセーブされている波形データと対応する波形メモリ１８に記憶された波形データが編集されていないときには、ロードの場合における図５と同様な表示画面２２ａの状態に自動的に変化する。
【００８３】
そして、この状態において、本発明の実施に関連する高速セーブ処理（なお、「高速セーブ処理」については後述する。）を行うか否かの指示を待ち、この指示待ちの状態においてＦ４スイッチ２０ｍが押された場合には、セーブの対象として選択されている波形データの全てを外部記憶装置２００へセーブし（このセーブは、通常セーブ処理により行われる。）、一方、この指示待ちの状態においてＦ１スイッチ２０ｊが押された場合には、後述する高速セーブ処理を行う。
【００８４】
次に、図１４乃至図１５に示すフローチャートを参照しながら、この電子楽器におけるセーブの処理について説明する。
【００８５】
なお、通常セーブ処理に関しては、公知の技術を適用することができるものであるので、説明を簡略化して本発明の理解を容易にするために、その詳細な説明は省略する。
【００８６】
なお、上記した図１４乃至図１５に示すフローチャートの処理において使用されるレジスタとしては、以下に説明する（１）に示すものがある。
【００８７】
（１）ＳａｖｅＳｔｒａｔｅｇｙ
セーブが必要であるか否かを示す情報を格納したレジスタである。
【００８８】
まず、図１４に示す外部記憶装置検索処理ルーチンのフローチャートを参照しながら、セーブが必要な波形データを検索する処理を行う。
【００８９】
即ち、この図１４に示す外部記憶装置検索処理ルーチンは、図４に示す状態でＦ４スイッチ２０ｍが押されると起動されるものであり、この外部記憶装置検索処理ルーチンが起動されると、セーブしようとする波形データの選択操作により選択された波形データが外部記憶装置２００に記憶されていない場合か、あるいは、外務記憶装置２００に記憶されていても編集されている場合には、その波形データに対応したＳａｖｅＳｔｒａｔｅｇｙを「真」に設定し、そうではない波形データに対応したＳａｖｅＳｔｒａｔｅｇｙを「偽」に設定して（ステップＳ１４０２）、この外部記憶装置検索処理ルーチンを終了する。
【００９０】
次に、図１５に示す高速セーブ処理ルーチンのフローチャートを参照しながら、選択した全ての波形データをセーブすることなく必要な波形データのみをセーブして、セーブ処理の高速化を図る高速セーブ処理について説明する。
【００９１】
即ち、この図１５に示す高速セーブ処理ルーチンは、図５と同様な状態でＦ１スイッチ２０ｊを押した場合に起動されるものであり、この高速セーブ処理ルーチンが起動されると、まず、図１４に示す外部記憶装置検索処理ルーチンのステップ１４０２で設定されたＳａｖｅＳｔｒａｔｅｇｙに基づいて、「真」に設定されている波形データのみを外部記憶装置２００にセーブする（ステップＳ１５０２）。
【００９２】
それから、上記したステップＳ１５０２の処理により、外部記憶装置２００にセーブした波形データに対応する編集フラグをクリアし（ステップＳ１５０４）、この高速セーブ処理ルーチンを終了する。
【００９３】
従って、高速セーブ処理ルーチンの処理によって、選択された全ての波形データが外部記憶装置２００にセーブされることなく、選択された全ての波形データのなかで、既に外部記憶装置２００にセーブされていない波形データならびに既に外部記憶装置２００にセーブされていても編集された波形データのみがセーブされることになるので、セーブの処理を高速で行うことができるようになり、当該セーブの処理に要する時間を短縮化することができるようになる。
【００９４】
なお、上記した実施の形態は、以下の（１）乃至（３）に示すように変形してもよい。
【００９５】
（１）上記した実施の形態においては、高速ロード処理と高速セーブ処理とをともに行う電子楽器について説明したが、これに限られるものではないことは勿論であり、高速ロード処理と高速セーブ処理とのいずれか一方のみを行うようにしてもよい。
【００９６】
（２）上記した実施の形態においては、図３に示す波形データの選択画面において選択可能な波形データの最大数を「５」に設定し、セレクト・アレイ配列表は選択順に最大５つまでの波形データ名が記憶されるものとしたが、これに限られるものではないことは勿論であり、図３に示す波形データの選択画面において選択可能な波形データの最大数を「５」以外の任意の数に設定し、セレクト・アレイ配列表は選択順に当該任意の数までの波形データ名が記憶されるものとしてもよい。
【００９７】
（３）上記した実施の形態ならびに上記し（１）乃至（２）に示すた変形例は、適宜に組み合わせるようにしてもよい。
【００９８】
【発明の効果】
本発明は、以上説明したように構成されているので、外部記憶手段に記憶された演奏データを当該外部記憶手段から内部記憶手段に転送して記憶させる際、即ち、外部記憶手段から演奏データを内部記憶手段にロードする際や、内部記憶手段に記憶された演奏データを当該内部記憶手段から外部記憶手段に転送して記憶させる際、即ち、内部記憶手段から演奏データを外部記憶手段にセーブする際に、それらの処理を高速で行うことが可能になり、当該処理に要する時間を短縮化することができるようになるという優れた効果を奏する。
【図面の簡単な説明】
【図１】本発明の実施の形態の一例による電子楽器のブロック構成図である。
【図２】操作パネルの構成説明図である。
【図３】操作パネルの構成説明図である。
【図４】操作パネルの構成説明図である。
【図５】操作パネルの構成説明図である。
【図６】セレクト・アレイ（Ｓｅｌｅｃｔ  Ａｒｒａｙ）配列表の説明図である。
【図７】高速ロード処理する前と後との波形メモリの状態の一例そ示す説明図である。
【図８】波形メモリ検索処理ルーチンを示すフローチャートである。
【図９】波形データ配列表の説明図である。
【図１０】通常ロード処理ルーチンを示すフローチャートである。
【図１１】高速ロード処理ルーチンを示すフローチャートである。
【図１２】サンプル交換処理ルーチンを示すフローチャートである。
【図１３】操作パネルの構成説明図である。
【図１４】外部記憶装置検索処理ルーチンを示すフローチャートである。
【図１５】高速セーブ処理ルーチンを示すフローチャートである。
【符号の説明】
１０          中央処理装置（ＣＰＵ）
１２          バス
１４          プログラム・メモリ
１６          ワーキング・メモリ
１８          波形メモリ
２０          操作子群
２０ａ        メニュー（ＭＥＮＵ）・スイッチ
２０ｂ        インクリメント（ＩＮＣ）・スイッチ
２０ｃ        デクリメント（ＤＥＣ）・スイッチ
２０ｄ        アップ（ＵＰ）・スイッチ
２０ｅ        ダウン（ＤＯＷＮ）・スイッチ
２０ｆ        レフト（ＬＥＦＴ）・スイッチ
２０ｇ        ライト（ＲＩＧＨＴ）・スイッチ
２０ｈ        エクジット（ＥＸＩＴ）・スイッチ
２０ｉ        エンター（ＥＮＴＥＲ）・スイッチ
２０ｊ        ファンクション１（Ｆ１）スイッチ
２０ｋ        ファンクション２（Ｆ２）スイッチ
２０ｌ        ファンクション３（Ｆ３）スイッチ
２０ｍ        ファンクション４（Ｆ４）スイッチ
２２          表示装置
２２ａ        表示画面
２４          ＭＩＤＩインターフェース（ＭＩＤＩ  Ｉ／Ｆ）
２６          デジタル／アナログ変換器（Ｄ／Ａ）
２００          外部記憶装置
【図１】
0004173616.tif 000002
【図２】
0004173616.tif 000003
【図３】
0004173616.tif 000004
【図４】
0004173616.tif 000005
【図５】
0004173616.tif 000006
【図６】
0004173616.tif 000007
【図７】
0004173616.tif 000008
【図８】
0004173616.tif 000009
【図９】
0004173616.tif 000010
【図１０】
0004173616.tif 000011
【図１１】
0004173616.tif 000012
【図１２】
0004173616.tif 000013
【図１３】
0004173616.tif 000014
【図１４】
0004173616.tif 000015
【図１５】
0004173616.tif 000016