(57)【要約】  【課題】  製造コストを低減でき、且つ、アンドゥのためのデータ管理を簡易化することができるレコーダを提供すること。  【解決手段】    編集前の楽音と編集後の楽音とを、複数のブロックからなるトラック０とトラック１とによりブロック単位に区分けして記憶する。よって、アンドゥの実行は１回に限定されるものの、記憶容量は少容量に制限され、製造コストは低減される。また、カレントフラグに記憶されている書込み情報に応じてセレクトフラグの選択情報を元の状態に復帰するだけで、編集前の楽音を読出すことができ、アンドゥのためのデータ管理が簡易化される。  【選択図】        図３
2006023594.tif 000002
【特許請求の範囲】
【請求項１】
複数のブロックにより構成され、その各ブロックにより楽音を区分けして記憶する第１の記憶手段と、
その第１の記憶手段の各ブロックに対応する複数のブロックにより構成され、その各ブロックにより楽音を区分けして記憶する第２の記憶手段と、
その第１と第２との記憶手段の対応するブロック毎に、その対応するどちらのブロックに記憶されている楽音を読出すかを示す選択情報を記憶する第３の記憶手段と、
その第３の記憶手段に記憶された選択情報に従って楽音を読出す読出し手段と、
その読出し手段により読み出された楽音の所定の区間に新たに入力される楽音を合成することを指示する指示手段と、
その指示手段に指示された区間を含むブロック単位の楽音を被合成楽音として、その被合成楽音と新たに入力される楽音とを合成して合成楽音を生成する生成手段と、
その生成手段により合成される被合成楽音を前記第１の記憶手段の所定のブロックから読出した場合には、前記合成楽音を前記第１の記憶手段の所定のブロックに対応する第２の記憶手段のブロックに書込み、前記被合成楽音を前記第２の記憶手段の所定のブロックから読出した場合には、前記合成楽音を第２の記憶手段の所定のブロックに対応する第１の記憶手段のブロックに書込む書込み手段と、
その書込み手段が前記合成楽音を前記第１または第２の記憶手段の所定のブロックに書込んだことを示す書込み情報を前記第１と第２との記憶手段の対応するブロック毎に記憶する第４の記憶手段と、
その第４の記憶手段に記憶されている書込み情報に応じて前記第３の記憶手段に記憶されている選択情報を変更する変更手段とを備えていることを特徴とするレコーダ。
【請求項２】
前記変更手段は、前記第４の記憶手段に記憶されている書込み情報に応じて前記第３の記憶手段に記憶されている選択情報を反転する第１の反転手段と、その第１の反転手段によって反転された状態の選択情報を前記第４の記憶手段に記憶されている書込み情報に応じて再び反転する第２の反転手段とを備えていることを特徴とする請求項１に記載のレコーダ。
【請求項３】
前記読出し手段は、前記第３の記憶手段に記憶された選択情報に従って読出した楽音を繰り返し読出すことを特徴とする請求項１または２に記載のレコーダ。
【請求項４】
複数のブロックにより構成され、その各ブロックにより楽音を区分けして記憶する第１の記憶手段と、
その第１の記憶手段の各ブロックに対応する複数のブロックにより構成され、その各ブロックにより楽音を区分けして記憶する第２の記憶手段と、
その第１と第２との記憶手段の対応するブロック毎に、その対応するどちらのブロックに記憶されている楽音を読出すかを示す選択情報を記憶する第３の記憶手段と、
その第１と第２との記憶手段との対応するブロック毎に、その対応するどちらか一方のブロックに記憶されている楽音を読出す読出し手段と、
その読出し手段により読み出された楽音の所定の区間に新たに入力される楽音を合成することを指示する指示手段と、
その指示手段に指示された区間を含むブロック単位の楽音を被合成楽音として、その被合成楽音と新たに入力される楽音とを合成して合成楽音を生成する生成手段と、
その生成手段により合成される被合成楽音を前記第１の記憶手段の所定のブロックから読出した場合には、前記合成楽音を前記第１の記憶手段の所定のブロックに対応する第２の記憶手段のブロックに書込み、前記被合成楽音を前記第２の記憶手段の所定のブロックから読出した場合には、前記合成楽音を第２の記憶手段の所定のブロックに対応する第１の記憶手段のブロックに書込む書込み手段と、
その書込み手段により合成楽音が書き込まれた前記第１または第２の記憶手段のブロックに対応する前記選択情報を変更する変更手段と、
その変更手段により変更された選択情報とその変更手段により変更された選択情報を除く選択情報とを前記第１と第２との記憶手段の対応するブロック毎に記憶する第４の記憶手段と、
その第４の記憶手段に記憶された選択情報または前記第３の記憶手段に記憶された選択情報に従って前記読込み手段が楽音を読出すように切替える切替え手段とを備えていることを特徴とするレコーダ。
【請求項５】
前記読出し手段は、前記第３または第４の記憶手段に記憶された選択情報に従って読出した楽音を繰り返し読出すことを特徴とする請求項４に記載のレコーダ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、製造コストを低減でき、且つ、アンドゥのためのデータ管理を簡易化することができるレコーダに関する。
【背景技術】
【０００２】
従来より、所定のフレーズを録音し、その録音したフレーズを再生しながら、その再生音に合わせて演奏を行い、その再生音と新たな演奏とを合成して録音するというオーバーダビングを行うことができるレコーダが知られている。
【０００３】
一方、このオーバーダビング可能なレコーダでは、オーバーダビングを実行している際に演奏を間違え、その間違えた演奏と再生音とが合成されてしまうことがある。そのため、そのオーバーダビングをキャンセルして元の状態に戻すアンドゥという機能を搭載したレコーダも知られている。
【０００４】
しかし、このアンドゥという機能を搭載したレコーダでは操作手順の履歴を記憶していたため、そのデータ管理が大変でありソフトウエア的に負担がかかるという問題があった。そこで、次の特許文献１には、編集（オーバーダビング）が行われる毎に、その編集後のトラックのデータを、その編集前のトラックのデータとは独立した新規なトラックとして記憶する技術が開示されている。
【０００５】
この特許文献１に開示された技術によれば、アンドゥの指示に応じて対応するトラックを選択するだけで良いので、煩雑なデータ管理を不要としソフトウエア的な負担を軽減することができるのである。
【特許文献１】特開２００２−１２４０２２号公報（第０００９段落等）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した特許文献１に開示された技術では、オーバーダビングが行われる毎に編集前のトラックのデータを記憶しつつ編集後のトラックのデータを記憶するため、大きな記憶容量が必要であり、製造コストが上昇するという問題点があった。
【０００７】
また、オーバーダビングを実行する場合の演奏は、リアルタイムで演奏される事が多いためアンドゥのためのデータ管理をより簡易化することが要望される。
【０００８】
本発明は、上述した問題点を解決するためになされたものであり、製造コストを低減でき、且つ、アンドゥのためのデータ管理を簡易化することができるレコーダを提供することを目的とする。
【課題を解決するための手段】
【０００９】
この目的を達成するために請求項１記載のレコーダは、複数のブロックにより構成され、その各ブロックにより楽音を区分けして記憶する第１の記憶手段と、その第１の記憶手段の各ブロックに対応する複数のブロックにより構成され、その各ブロックにより楽音を区分けして記憶する第２の記憶手段と、その第１と第２との記憶手段の対応するブロック毎に、その対応するどちらのブロックに記憶されている楽音を読出すかを示す選択情報を記憶する第３の記憶手段と、その第３の記憶手段に記憶された選択情報に従って楽音を読出す読出し手段と、その読出し手段により読み出された楽音の所定の区間に新たに入力される楽音を合成することを指示する指示手段と、その指示手段に指示された区間を含むブロック単位の楽音を被合成楽音として、その被合成楽音と新たに入力される楽音とを合成して合成楽音を生成する生成手段と、その生成手段により合成される被合成楽音を前記第１の記憶手段の所定のブロックから読出した場合には、前記合成楽音を前記第１の記憶手段の所定のブロックに対応する第２の記憶手段のブロックに書込み、前記被合成楽音を前記第２の記憶手段の所定のブロックから読出した場合には、前記合成楽音を第２の記憶手段の所定のブロックに対応する第１の記憶手段のブロックに書込む書込み手段と、その書込み手段が前記合成楽音を前記第１または第２の記憶手段の所定のブロックに書込んだことを示す書込み情報を前記第１と第２との記憶手段の対応するブロック毎に記憶する第４の記憶手段と、その第４の記憶手段に記憶されている書込み情報に応じて前記第３の記憶手段に記憶されている選択情報を変更する変更手段とを備えている。
【００１０】
請求項２記載のレコーダは、請求項１記載のレコーダにおいて、前記変更手段は、前記第４の記憶手段に記憶されている書込み情報に応じて前記第３の記憶手段に記憶されている選択情報を反転する第１の反転手段と、その第１の反転手段によって反転された状態の選択情報を前記第４の記憶手段に記憶されている書込み情報に応じて再び反転する第２の反転手段とを備えている。
【００１１】
請求項３記載のレコーダは、請求項１または２に記載のレコーダにおいて、前記読出し手段は、前記第３の記憶手段に記憶された選択情報に従って読出した楽音を繰り返し読出す。
【００１２】
請求項４記載のレコーダは、複数のブロックにより構成され、その各ブロックにより楽音を区分けして記憶する第１の記憶手段と、その第１の記憶手段の各ブロックに対応する複数のブロックにより構成され、その各ブロックにより楽音を区分けして記憶する第２の記憶手段と、その第１と第２との記憶手段の対応するブロック毎に、その対応するどちらのブロックに記憶されている楽音を読出すかを示す選択情報を記憶する第３の記憶手段と、その第１と第２との記憶手段との対応するブロック毎に、その対応するどちらか一方のブロックに記憶されている楽音を読出す読出し手段と、その読出し手段により読み出された楽音の所定の区間に新たに入力される楽音を合成することを指示する指示手段と、その指示手段に指示された区間を含むブロック単位の楽音を被合成楽音として、その被合成楽音と新たに入力される楽音とを合成して合成楽音を生成する生成手段と、その生成手段により合成される被合成楽音を前記第１の記憶手段の所定のブロックから読出した場合には、前記合成楽音を前記第１の記憶手段の所定のブロックに対応する第２の記憶手段のブロックに書込み、前記被合成楽音を前記第２の記憶手段の所定のブロックから読出した場合には、前記合成楽音を第２の記憶手段の所定のブロックに対応する第１の記憶手段のブロックに書込む書込み手段と、その書込み手段により合成楽音が書き込まれた前記第１または第２の記憶手段のブロックに対応する前記選択情報を変更する変更手段と、その変更手段により変更された選択情報とその変更手段により変更された選択情報を除く選択情報とを前記第１と第２との記憶手段の対応するブロック毎に記憶する第４の記憶手段と、その第４の記憶手段に記憶された選択情報または前記第３の記憶手段に記憶された選択情報に従って前記読込み手段が楽音を読出すように切替える切替え手段とを備えている。
【００１３】
請求項５記載のレコーダは、請求項４に記載のレコーダにおいて、読出し手段は、前記第３または第４の記憶手段に記憶された選択情報に従って読出した楽音を繰り返し読出す。
【発明の効果】
【００１４】
請求項１記載のレコーダによれば、生成手段により生成された合成楽音は、被合成楽音を第１の記憶手段の所定のブロックから読出した場合には第１の記憶手段の所定のブロックに対応する第２の記憶手段のブロックに書込まれ、被合成楽音を第２の記憶手段の所定のブロックから読出した場合には第２の記憶手段の所定のブロックに対応する第１の記憶手段のブロックに書込まれる。よって、編集をする度に、編集前の楽音と、編集後の楽音とだけが効率良く記憶される。従って、アンドゥの実行は１回に限定されるものの、楽音を記憶するための記憶容量を少容量に制限することができ、製造コストを低減することができるという効果がある。
【００１５】
また、第４の記憶手段に記憶されている書込み情報に応じて第３の記憶手段に記憶されている選択情報を変更手段により変更するだけで、編集後の楽音を読出すことができる。
【００１６】
更に、その変更した選択情報を第４の記憶手段に記憶されている書込み情報に応じて再び元の状態に復帰するだけで、編集前の楽音を読出すこともでき、アンドゥを簡易なデータ管理の下で実行することができるという効果がある。
【００１７】
請求項２記載のレコーダによれば、請求項１に記載のレコーダの奏する効果に加え、第４の記憶手段に記憶されている書込み情報に応じて第３の記憶手段に記憶されている選択情報を第１の反転手段により反転するだけで、編集後の楽音を読出すことができる。更に、その反転した選択情報を第４の記憶手段に記憶されている書込み情報に応じて第２の反転手段により再び反転するだけで、編集前の楽音を読出すこともできる。即ち、書込み情報に応じて第２の反転手段により選択情報を反転するという簡易な処理によりアンドゥを実行することができるという効果がある。
【００１８】
請求項３記載のレコーダによれば、請求項２に記載のレコーダの奏する効果に加え、読出し手段は第３の記憶手段に記憶された選択情報に従って読出した楽音を繰返し読出すので、繰返す楽音を何度も記憶しておく必要はなく、記憶手段の記憶容量を少容量に制限することができ、低コストで製造することができるという効果がある。
【００１９】
請求項４記載のレコーダによれば、生成手段により生成された合成楽音は、被合成楽音を第１の記憶手段の所定のブロックから読出した場合には第１の記憶手段の所定のブロックに対応する第２の記憶手段のブロックに書込まれ、被合成楽音を第２の記憶手段の所定のブロックから読出した場合には第２の記憶手段の所定のブロックに対応する第１の記憶手段のブロックに書込まれる。よって、編集をする度に、編集前の楽音と、編集後の楽音とだけが効率良く記憶される。従って、アンドゥの実行は１回に限定されるものの、楽音を記憶するための記憶容量を少容量に制限することができ、製造コストを低減することができるという効果がある。
【００２０】
また、第４の記憶手段に記憶されている選択情報に従って楽音を読出すことで、編集後の楽音を読出すことができ、切替え手段により読出し手段が第３の記憶手段に記憶されている選択情報に従って楽音を読み出すように切替えることで、編集前の楽音を読出すことができる。即ち、読出し手段が第３または第４の記憶手段に記憶されている選択情報のいずれに従って楽音を読出すかを切替えるという簡易な処理によりアンドゥを実行することができるという効果がある。
【００２１】
請求項５記載のレコーダは、請求項４に記載のレコーダの奏する効果に加え、読出し手段は、第３または第４の記憶手段に記憶された選択情報に従って楽音を繰り返し読出すので、繰返す楽音を何度も記憶しておく必要はなく、より記憶手段の記憶容量を少容量に制限することができるという効果がある。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の好ましい実施例について、添付図面を参照して説明する。図１は、本発明のレコーダ１のパネル図である。レコーダ１のパネルには、操作子として、入力レベルを設定するボリューム６ａと、出力レベルを設定するボリューム６ｂと、フレーズ番号を選択するためのセレクター６ｃと、左ペダル６ｄおよび右ペダル６ｅと、ライトスイッチ６ｆとが備えられている。
【００２３】
入力ボリューム６ａは、ギターやマイクロフォンから入力される電気信号のレベルを調節するもので、図示しないレベル表示器などを参照して入力レベルが適切な値になるように調節するものである。
【００２４】
出力ボリューム６ｂは、レコーダ１が記憶しているフレーズを再生する場合に、接続されるアンプに供給する信号のレベルを調節するためのものである。
【００２５】
セレクター６ｃは、ロータリースイッチにより構成され、レコーダが記憶している複数のフレーズのうち、どのフレーズを再生するか、あるいは録音する際に、いずれのフレーズ番号として録音するかを設定するスイッチである。
【００２６】
左ペダル６ｄおよび右ペダル６ｅは、主として足で踏み込むことによりオンとし、足を離すことによりオフとするスイッチであって、常時は内蔵されるバネにより、上方に位置してスイッチはオフ状態にあり、ペダルが踏み込まれることにより、スイッチがオン状態となる。
【００２７】
ライトスイッチ６ｆは、編集後のフレーズの保存を指示するための押しボタン式のスイッチである。このライトスイッチ６ｆを押すことで、編集後のフレーズが後述する保存用トラック９ｃに書き込まれ、たとえ電源を遮断したとしても、次に電源を投入した場合には、この編集後のフレーズを読出すことができる。
【００２８】
また、操作パネルには、上述した操作子の他、ＬＥＤ８ａ、８ｂ、８ｃが備えられている。ＬＥＤ８ａ、８ｂ、８ｃは、それぞれ、録音（ＲＥＣ）、再生（ＰＬＡＹ）、オーバーダビング（ＯＶＥＲＤＵＢ）のモードを表している。
【００２９】
即ち、ＬＥＤ８ａが点灯している場合は録音中を表し、ＬＥＤ８ｂが点灯している場合は再生中を表し、ＬＥＤ８ｃが点灯している場合はオーバンダビング中であることを表し、３つのＬＥＤ８ａ、８ｂ、８ｃがいずれも点灯していない場合は停止中（ＳＴＯＰ）であることを表している。
【００３０】
左ペダル６ｄがオフ位置からオン位置に操作された場合であってセレクター６ｃにより選択されているフレーズ番号のデータが空（録音されていない）の場合には、録音を開始し、ＬＥＤ８ａが点灯される。
【００３１】
左ペダル６ｄがオフ位置からオン位置に操作された場合であってセレクター６ｃにより選択されているフレーズ番号のフレーズが存在する場合（録音済み）には、そのフレーズの再生を開始し、ＬＥＤ８ｂが点灯される。また、フレーズを再生中の場合には、オーバーダビングが開始され、ＬＥＤ８ｃが点灯される。
【００３２】
また、左ペダル６ｄが所定時間（２秒）以上オン位置に保持された場合には、アンドゥ処理が実行され、アンドゥ処理が実行されている期間は、ＬＥＤ８ｃが点滅する。
【００３３】
右ペダル６ｅがオフ位置からオン位置へ操作された場合は、その時点に置いて録音中であれば、録音が停止され、再生中であれば再生が中止され、オーバーダビング中であればオーバーダビングが中止され、３つのＬＥＤ８ａ、８ｂ、８ｃはいずれも消灯される。
【００３４】
また、停止状態において右ペダルが所定時間（２秒）以上オン位置に保持された場合には、セレクター６ｃにより選択されてるフレーズ番号に対応して記憶されているフレーズが消去される。
【００３５】
図２は、レコーダ１の電気的な構成およびこのレコーダ１に接続される機器の概略を示すブロック図である。レコーダ１は、ＣＰＵ５と、ＲＯＭ４と、ＲＡＭ２と、フラッシュＲＯＭ９と、操作子６と、ＬＥＤ８と、Ａ／Ｄ変換器７と、Ｄ／Ａ変換器１０とを備え、バス３により接続されている。
【００３６】
ＣＰＵ５は、制御プログラムの実行主体となる演算装置であり、ＲＯＭ４には、このＣＰＵ５により実行される各種の制御プログラムやその実行の際に参照される固定値データが記憶されている。ＣＰＵ５には、タイマー５ａが内蔵され、左ペダル６ｄまたは右ペダル６ｅがオフ位置からオン位置へ操作されたとき、計時が開始される。また、楽音波形の振幅値をメモリへ書き込んだり、メモリから読み出す場合は、サンプリング周期で処理が行われ、サンプリング周期でＣＰＵ５に割込が発生されるように構成されている。
【００３７】
ＲＯＭ４に記憶される制御プログラムのうち、録音、再生、オーバーダビングなどの処理については、図４から図８を参照して後述する。このうち、図８に示すフローチャートは、サンプリング周期で発生される割込により実行される割込処理を示すものである。
【００３８】
ＲＡＭ２は、ＲＯＭ４に記憶された制御プログラムに従ってＣＰＵ５が各種処理を実行するに当たり使用されるワークエリアと、フラッシュＲＯＭ９から楽音を読出す場合や、フラッシュＲＯＭ９に記憶する前に一時楽音を記憶する領域、ロード２ａ、スタンバイ２ｂ、プレイ２ｃ、セーブ２ｄ、セレクトフラグ２ｅ、カレントフラグ２ｇを備えている。
【００３９】
フラッシュＲＯＭ９は、１ワードなどの単位ではなく、ブロック単位（例えば５１２バイト）で読み書きするように構成されている。この読み書きは、ＲＡＭ２などのアクセス時間に比べ、かなり長い時間を要する。従って、ＲＡＭ２にこれらの一時記憶領域を設け、フラッシュＲＯＭ９から読み出す前は、前もってＲＡＭ２に読み出しておき、フラッシュＲＯＭ９に書き込む場合には、一度ＲＡＭ２に書込み、その後フラッシュＲＯＭ９に書き込むように構成している。
【００４０】
ロード２ａは、フラッシュＲＯＭ９から読み出したデータをまず記憶する領域であり、スタンバイ２ｂは、つぎに読み出されるデータを記憶する領域であり、プレイ２ｃは、読み出しおよび書込が行われる領域であり、このプレイ領域から読み出された楽音が、再生モードの場合には、出力され、オーバーダビングモードの場合には、この領域から読み出された楽音と新たに入力された楽音とが合成されて、再びこのプレイ２ｃに書き込まれる。また、録音モードの場合は、入力された楽音がこのプレイ２ｃに記憶される。セーブ２ｄは、つぎにフラッシュＲＯＭ９に書込まれるデータを記憶する領域である。
【００４１】
これらの領域は、１ブロックの処理が終わる毎にその役割が順次移動する。つまり、最初ロード２ａであった領域は、つぎにスタンバイ２ｂに変わり、スタンバイ２ｂであった領域はプレイ２ｃに変わり、プレイ２ｃであった領域はセーブ２ｄに変わり、セーブ２ｄであった領域はロード２ａに変わる。
【００４２】
セレクトフラグ２ｅは、後述するトラック０（９ａ）とトラック１（９ｂ）との対応するブロック毎に、その対応するどちらのブロックに記憶されている楽音を読出すかを示す選択情報を記憶するものである。
【００４３】
カレントフラグ２ｆは、合成された楽音（合成楽音）を後述するトラック０（９ａ）またはトラック１（９ｂ）の所定のブロックに書込んだことを示す書込み情報をトラック０（９ａ）とトラック１（９ｂ）の対応するブロック毎に記憶するものである。
【００４４】
フラッシュＲＯＭ９は、電源を遮断しても記憶を保持することが可能な書き換え可能なメモリであり、トラック０（９ａ）と、トラック１（９ｂ）と、保存用トラック９ｃとを備えている。
【００４５】
トラック０（９ａ）は、複数のブロックにより構成され、その各ブロックにより録音した楽音を区分けして記録するものである。トラック１（９ｂ）は、トラック０（９ａ）の各ブロックに対応する複数のブロックにより構成され、その各ブロックにより録音した楽音を区分けして記憶するものである。保存用トラック９ｃは、セレクター６ｃで選択することができる複数のフレーズ毎に用意されているトラックであり、トラック０（９ａ）とトラック１（９ｂ）の各ブロックのうちセレクトフラグにより示される編集後のフレーズを記憶するものである。
【００４６】
Ａ／Ｄ変換器７は、アナログ信号をデジタル信号に変換するもので、ギター１１等の楽器音やボーカル等の音声がピックアップやマイクロフォンによりアナログ電気信号に変換され、その電気信号が所定のサンプリング周波数（例えば、３２ＫＨｚ）で標本化され、さらに所定のビット数（例えば１６ビット）に量子化されることによりデジタル信号化される。変換されたデジタル信号は、ＲＡＭ２の一時記憶領域に一時記憶され、その後、フラッシュＲＯＭ９に記憶される。
【００４７】
Ｄ／Ａ変換器１０は、デジタル信号をアナログ信号に変換するもので、フラッシュＲＯＭ９に記憶されたデジタル信号がＣＰＵ５により読み出され、このＤ／Ａ変換器１０によりアナログ信号に変換されて出力される。出力されたアナログ信号は、アンプ２８により増幅されてスピーカ２７により楽音に変換されて放音される。
【００４８】
図３は、レコーダ１がフレーズを録音、オーバーダビングおよび再生する場合のメモリの使い方とフラグとの関係を模式的に示す図である。一つのフレーズを作成する際に、トラック０とトラック１との二つのトラックが使用され、各トラックを構成する各ブロックの記憶容量は、例えば５１２バイトである。
【００４９】
まず、(ａ）は、トラック０およびトラック１に全くフレーズが記憶されていない状態から、トラック０のブロック０から７にフレーズが記憶された場合を示すものである。同図に示すように、トラック０のブロック０からブロック７までを黒く塗りつぶし、楽音が記憶されていることを示している。一方、トラック１のブロック０から７は、空白であり、楽音が記憶されていないことを示している。
【００５０】
セレクトフラグよびカレントフラグは、各ブロックに対応して１ビットのフラグを有するものであり、録音が行われた時は、すべてのセレクトフラグとすべてのカレントフラグが０に設定されている。
【００５１】
この状態から次に、ブロック２から４までの区間でオーバーダビングが行われた場合の状態を（ｂ）に示す。この場合には、ブロック２から４までの区間において、録音時にトラック０に記憶されたので、トラック０に記憶された楽音（被合成楽音）を読み出して、新たに入力された楽音と合成し、合成された楽音は、トラック１のブロック２から４にそれぞれ書き込まれる。
【００５２】
このとき、セレクトフラグの各ブロックに対応するフラグは、書込を行ったトラックを表す符号とする。ここでは、トラック０に書き込んだ場合は０とし、トラック１に書き込んだ場合は１とする。したがって、（ｂ）に示されるセレクトフラグは、ブロック０、１およびブロック５から７までのフラグは０に設定されたままであり、ブロック２から４までのフラグは、１に設定される。
【００５３】
カレントフラグは、今回書込を行ったブロックを示すフラグで、書込を行わなかったブロックのフラグは０に、書込が行われたブロックを示すフラグは１に設定される。したがって、（ｂ）に示されるカレントフラグは、ブロック０および１とブロック５から７までのフラグは０のままであり、ブロック２から４までのフラグは、１に設定される。
【００５４】
つぎに、この（ｂ）の状態から、ブロック１と２の区間においてオーバーダビングが行われた場合を（ｃ）に示す。この場合は、ブロック１については、トラック０に前回楽音が記憶されたので、今回はトラック１に記憶する。ブロック２については、前回トラック１に記憶されたので、今回はトラック１に記憶する。
【００５５】
セレクトフラグについては、（ｂ）のセレクトフラグのうち、新たに書込みを行ったブロックのみ、０と１とを反転する。したがって、ブロック１については、０を１に、ブロック２については、１を０にそれぞれ設定する。
【００５６】
カレントフラグについては、まず、（ｂ）の状態から全てのブロックに対応するフラグを０に設定し、新たに書込みを行ったブロックに対応するフラグのみ１に設定する。
【００５７】
なお、このレコーダでは、停止操作を行うまでは、繰り返しフレーズが読出されて、読出されたフレーズを構成する楽音に新たな楽音を合成して記憶させることができる。
【００５８】
（ｃ）の場合を例にとると、ブロック０からブロック７まで読出しが行われると、再びブロック０から読出しが開始される。読出しは、常にセレクトフラグにより示されるトラック０またはトラック１のブロックから行われる。この場合、書込みを行う際に、カレントフラグが０に設定されているブロックでは、セレクトフラグにより示されるトラックとは異なるトラックに書込みを行い、そのブロックのセレクトフラグを反転し、そのブロックのカレントフラグを１に設定する。しかし、既にカレントフラグが１に設定されている場合には、セレクトフラグにより示されるトラックの同じブロックに書込みを行う。
【００５９】
つぎに、アンドゥ処理について、（ｄ）を参照して説明する。（ｃ）のように記憶が行われ、順次各ブロックについて（ｃ）のセレクトフラグに従って、トラックを選択して読出すと、今回のオーバーダビングを行ったフレーズを読出すことができる。
【００６０】
しかし、このオーバーダビング中の演奏がうまくできなかった場合には、今回のオーバーダビングを行う前の状態に戻し、再度オーバーダビングする必要がある。その場合には、上述のように左ペダルを所定時間以上オンし続けることにより、アンドゥが実行される。
【００６１】
この処理は、（ｄ）に示すように、カレントフラグが０であるブロックに対応するセレクトフラグは、そのままとし、カレントフラグが１であるセレクトフラグを反転する。（ｄ）の場合には、ブロック０、１およびブロック５から７は、カレントフラグが０であるので、対応するセレクトフラグは、そのままとし、カレントフラグが１であるブロック２および３のフラグを反転する。このように処理された状態が（ｄ）であり、この状態は（ｃ）のオーバーダビングを行った状態の前の（ｂ）の状態と一致している。
【００６２】
以上、オーバーダビングを行う場合のメモリへの書込みと、フラグの記憶手順およびアンドゥ処理について説明を行ったが、つぎに図４から図７に示すフローチャートにしたがって、これらの処理について説明する。これらの処理はＣＰＵ５により実行される処理である。
【００６３】
図４は、いわゆるメイン処理であって、レコーダの電源が投入されると起動され、電源が遮断されるまで繰り返し実行されるものである。まず、初期設定としてセレクトフラグとカレントフラグとが全て０に設定し、ブロックのアドレスを示す変数ｉを「０」に設定する（Ｓ１）。つぎに左ペダル６ｄがオンに操作されたかを判断する（Ｓ４）。左ペダル６ｄがオンに操作された場合は（Ｓ２：Ｙｅｓ）、後述する左ペダルオン処理を実行し（Ｓ３）、左ペダル６ｄがオンではない場合（Ｓ２：Ｎｏ）または左ペダルオン処理のつぎに右ペダル６ｅがオンに操作されたかを判断する（Ｓ４）。右ペダル６ｅがオンに操作された場合は（Ｓ４：Ｙｅｓ）、ストップ処理を行う（Ｓ５）。このストップ処理は、録音、再生、オーバーダビングのいずれかを行っている状態の場合に、これらの処理を停止し、ストップ状態に設定する。
【００６４】
右ペダル６ｅがオンではない場合（Ｓ４：Ｎｏ）またはストップ処理のつぎに左ペダル６ｄが２秒以上オン状態に保持されているかを判断する（Ｓ６）。左ペダル６ｄ、および右ペダル６ｅが、オフからオンへ操作された場合に、ＣＰＵ５に内蔵されるタイマー５ａが起動され、オンに保持されている時間が計時される。左ペダル６ｄが２秒以上オンされた場合は（Ｓ６：Ｙｅｓ）後述する左ペダルホールド処理を実行し（Ｓ７）、左ペダル６ｄが２秒以上オンされない場合（Ｓ６：Ｎｏ）または左ペダルホールド処理のつぎに右ペダル６ｅが２秒以上オン状態に保持されているかを判断する（Ｓ８）。
【００６５】
右ペダル６ｅが２秒以上オンされた場合は（Ｓ８：Ｙｅｓ）現在ストップ状態であるかを判断し（Ｓ９）、ストップ状態であれば（Ｓ９：Ｙｅｓ）セレクター６ｃにより選択されているフレーズ番号のフレーズを消去する（Ｓ１０）。右ペダル６ｅが２秒以上オンされていない場合（Ｓ８：Ｎｏ）または、現在ストップ状態でない場合（Ｓ９：Ｎｏ）またはフレーズの消去を行った場合は、つぎに後述する入出力データ処理を行う（Ｓ１１）。
【００６６】
入出力データ処理（Ｓ１１）を終了すると、ライトスイッチ６ｆがオンに操作されたかを判断する（Ｓ１２）。ライトスイッチ６ｆがオンに操作された場合は（Ｓ１２：Ｙｅｓ）、ＲＡＭ２に記憶されているセレクトフラグに記憶されている選択情報に従って、フラッシュＲＯＭ９に記憶されているトラック０またはトラック１の各ブロック毎の楽音を保存用トラック９ｃに書込み、編集後のフレーズとして記憶する（Ｓ１３）。この記憶処理を終了した場合、およびＳ１２の判断処理においてライトスイッチ６ｆがオン操作されていないと判断した場合は、Ｓ２の処理に戻る。
【００６７】
図５は、図４に示すフローチャートのＳ３の左ペダルオン処理の詳細を示すフローチャートである。まず、レコーダが現在停止モード（ＳＴＯＰ）であるかを判断する（Ｓ２０）。停止モードであれば（Ｓ２０：Ｙｅｓ）つぎにセレクター６ｃにより選択されているフレーズ番号のフレーズが記憶されているかを判断する（Ｓ２１）。フレーズが記憶されている場合は（Ｓ２１：Ｙｅｓ）その記憶されているフレーズの読み出しを開始し（Ｓ２２：再生モード）、フレーズが記憶されていない場合は、入力される楽音の記憶を開始し（Ｓ２３：録音モード）この左ペダルオン処理を終了する。
【００６８】
Ｓ２０の判断処理において、停止モードでなければ（Ｓ２０：Ｎｏ）、録音モード（ＲＥＣ）であるかを判断する（Ｓ２４）。録音モードである場合には（Ｓ２４：Ｙｅｓ）、その録音モードにおいて録音されたフレーズの読出しを開始し（Ｓ２５：再生モード）、この処理を終了する。Ｓ２４の判断処理において、録音モードでなければ（Ｓ２４：Ｎｏ）、再生モード（ＰＬＡＹ）であるかを判断する（Ｓ２６）。再生モードである場合には（Ｓ２６：Ｙｅｓ）、オーバーダビングの開始が指示されたことであるので、カレントフラグを全て０に設定し（Ｓ２７）、オーバーダビングを開始し（Ｓ２８）、この左ペダルオン処理を終了する。
【００６９】
Ｓ２６の判断処理において、再生モードでなければ（Ｓ２６：Ｎｏ）、現在のモードはオーバーダビングであり、オーバーダビングを中止して読出しだけを行う再生モードに切り替え（Ｓ２９）、この左ペダルオン処理を終了する。
【００７０】
図６（ａ）は、図４に示すフローチャートのＳ７の左ペダルホールド処理の詳細を示すフローチャートであり、（ｂ）は、（ａ）の処理で実行されるサブルーチンであるアンドゥ処理を示すフローチャートである。
【００７１】
（ａ）の左ペダルホールド処理では、まず、レコーダが現在再生モード（ＰＬＡＹ）であるかを判断する（Ｓ３０）。再生モードであれば（Ｓ３０：Ｙｅｓ）アンドゥ処理を行い（Ｓ３１）この左ペダルホールド処理を終了する。この場合は、引き続き再生モードのままである。
【００７２】
Ｓ３０の判断処理で、再生モードでない場合は（Ｓ３０：Ｎｏ）、オーバーダビングモードであるかを判断する（Ｓ３２）。オーバーダビングモードである場合は（Ｓ３２：Ｙｅｓ）、オーバーダビングを中止し（Ｓ３３）、アンドゥ処理を実行して（Ｓ３４）、再生モードに設定し（Ｓ３５）、この左ペダルホールド処理を終了する。
【００７３】
Ｓ３２の判断処理で、オーバーダビングモードではない場合は（Ｓ３２：Ｎｏ）この左ペダルホールド処理を終了する。ここで、オーバーダビングを中止するとは、読出している楽音と新たに入力した楽音との合成を中止し、プレイ２ｃへの記憶を中止することである。
【００７４】
つぎに（ｂ）に示すアンドゥ処理について説明する。この処理では、各ブロック毎にカレントフラグが「１」を判断し（Ｓ３６）、カレントフラグが「１」であれば（Ｓ３６：Ｙｅｓ）、そのカレントフラグに対応するブロックのセレクトフラグを反転する（Ｓ３７）。Ｓ３７の処理のつぎ、または、Ｓ３６の判断処理でカレントフラグが「１」でない場合は（Ｓ３６：Ｎｏ）、全ブロックについて処理を行ったかを判断し（Ｓ３８）、まだ処理指定していないブロックがある場合は（Ｓ３８：Ｎｏ）、Ｓ３６の処理へ戻り、全てのブロックについての処理を行った場合は（Ｓ３８：Ｙｅｓ）、このアンドゥ処理を終了する。なお、このアンドゥ処理を行っている間、ＬＥＤ８ｃを点滅し、ユーザにアンドゥ処理を行っていることを知らせる。
【００７５】
図７は、図４に示すメイン処理のフローチャートのＳ１１の処理の詳細を示すフローチャートである。この処理では、ＲＡＭ２に一時記憶された楽音や、フラッシュＲＯＭ９からＲＡＭ２への読み出しを行う処理である。
【００７６】
まず、データブロック読み出しイベントが設定されているかを判断する（Ｓ４０）。このデータブロック読み出しイベントは、再生モードまたはオーバーダビングモードにおいて、１ブロックの読み出しが終了し、つぎのブロックの読み出しを行う際に設定されるもので、図８に示すフローチャートを参照して、後述する。
【００７７】
このデータブロック読み出しイベントが設定されている場合は（Ｓ４０：Ｙｅｓ）フラッシュＲＯＭ９から順次読み出しているブロックから楽音を読み出し、ＲＡＭ２のロード２ａに書き込む（Ｓ４１）。フラッシュＲＯＭ９から読み出す場合は、セレクトフラグにより指定されているトラックの対応するブロックから読み出しを行う。
【００７８】
このＳ４１の処理を終了した場合、またはデータブロック読み出しイベントが設定されていない場合（Ｓ４０：Ｎｏ）、データブロック書込イベントが設定されているかを判断する（Ｓ４２）。このデータブロック書込イベントは、録音モードおよびオーバーダビングモードにおいて、１ブロックの書込が終了した際に設定されるイベントであり、図８に示すフローチャートを参照して後述する。
【００７９】
このデータブロック書込イベントが設定されている場合は（Ｓ４２：Ｙｅｓ）、トラック０とトラック１のいずれに記憶するかを決定する。そのために、まず書込を行うブロックのカレントフラグが「１」であるかを判断する（Ｓ４３）。セレクトフラグが「１」である場合は（Ｓ４３：Ｙｅｓ）、すでにオーバーダビングが行われたことを示すので、セレクトフラグにより指定されるトラックの所定のブロックにセーブ２ｄに記憶されている楽音を記憶する（Ｓ４８）。
【００８０】
Ｓ４３の判断処理において、カレントフラグが「１」ではない場合は（Ｓ４３：Ｎｏ）、まだ、そのブロックについてはオーバーダビングが行われいないので、セレクトフラグを反転し、その反転したセレクトフラグの示すトラックの所定のブロックに書き込む。
【００８１】
フローチャートに従って説明すると、まず、カレントフラグを１に設定し（Ｓ４４）、そのブロックについて書込を行ったことを示し、セレクトフラグが「１」であるかを判断する（Ｓ４５）。セレクトフラグが「１」である場合は（Ｓ４５：Ｙｅｓ）セレクトフラグを「０」に設定し（Ｓ４６）、セレクトフラグが「１」でない場合は（Ｓ４５：Ｎｏ）、セレクトフラグを「１」に設定する（Ｓ４７）。
【００８２】
上記のようにしてセレクトフラグを設定すると、そのセレクトフラグが示すトラックの所定のブロックに、ＲＡＭ２のセーブ２ｄ領域に記憶されている楽音を記憶する（Ｓ４８）。Ｓ４２の判断処理において、データブロック書込イベントが設定されていない場合（Ｓ４２：Ｎｏ）およびＳ４８の処理を終了した場合は、この入出力データ処理を終了する。
【００８３】
図８は、録音モード、再生モードおよびオーバーダビングモードにおいて、サンプリング周期で発生される割込処理を示すフローチャートである。
【００８４】
まず、現在のモードが録音（ＲＥＣ）であるかを判断する（Ｓ６０）。録音である場合は（Ｓ６０：Ｙｅｓ）、Ａ／Ｄ変換器７により変換されたデジタル信号である振幅値を、ＲＡＭ２のプレイ２ｃのｉ番目のアドレスに記憶する（Ｓ６１）。ｉは、ブロック内のアドレスを示すものである。
【００８５】
Ｓ６１の処理またはＳ６０の判断処理で録音モードではないと判断した場合（Ｓ６０：Ｎｏ）は、次ぎに現在のモードが再生（ＰＬＡＹ）であるかを判断する（Ｓ６２）。再生である場合は（Ｓ６２：Ｙｅｓ）、ＲＡＭ２のプレイ２ｃのｉ番目のアドレスに記憶されている振幅値をＤ／Ａ変換器１０へ出力する（Ｓ６３）。
【００８６】
Ｓ６３の処理またはＳ６２の判断処理で再生モードではないと判断した場合（Ｓ６２：Ｎｏ）は、次ぎに現在のモードがオーバーダビング（ＯＶＥＲＤＵＢ）であるかを判断する（Ｓ６４）。オーバーダビングモードである場合は（Ｓ６４：Ｙｅｓ）、ＲＡＭ２のプレイ２ｃのｉ番目のアドレスに記憶されている振幅値をＤ／Ａ変換器１０へ出力するとともに、Ａ／Ｄ変換器７により変換された振幅値と合成し、その合成した値をＲＡＭ２のプレイ２ｃのｉ番目のアドレスに書き戻す（Ｓ６５）。
【００８７】
Ｓ６５の処理またはＳ６４の判断処理でオーバーダビングモードではないと判断した場合（Ｓ６４：Ｎｏ）は、次ぎにブロック内のアドレスを示すｉを「１」だけ進める（Ｓ６６）。つぎに、このアドレスｉが、ブロックの最終アドレスを越えたかを判断する（Ｓ６７）。アドレスｉが、ブロックを超えた場合は（Ｓ６７：Ｙｅｓ）、イベントをセットする（Ｓ６８）。このイベントをセットするとは、現在のモードが録音である場合には、データブロック書込イベントを設定し、現在のモードが再生である場合には、データブロック読み出しイベントを設定し、現在のモードがオーバーダビングである場合は、データブロック書込イベントと、データブロック読み出しイベントとを設定するものである。
【００８８】
このイベントのセットの次ぎにアドレスを０に設定し（Ｓ６９）この割込処理を終了する。Ｓ６７の判断処理において、アドレスｉがブロックを超えていない場合も、この割込処理を終了する。
【００８９】
以上、上述した実施例に基づいて説明したように、本発明のレコーダ１によれば、トラック０の所定のブロックから読出した楽音と合成された楽音は、トラック０の所定のブロックに対応するトラック１のブロックに書込まれ、トラック１の所定のブロックから読出された楽音と合成された楽音は、トラック１の所定のブロックに対応するトラック０のブロックに書込まれる。よって、編集をする度に、編集前の楽音と、編集後の楽音とだけが効率良く記憶される。従って、アンドゥの実行は１回に限定されるものの、楽音を記憶するための記憶容量を少容量に制限することができ、レコーダ１の製造コストを低減することができる。また、変更した選択情報をカレントフラグ２ｆに記憶されている書込み情報に応じて再び元の状態に復帰するだけで、編集前の楽音を読出すことができ、アンドゥを簡易なデータ管理の下で実行することができる。
【００９０】
次に、第２の実施例のレコーダ１００について説明する。上述した第１実施例のレコーダ１では、セレクトフラグ２ｅとカレントフラグ２ｆとの２種類のフラグを利用して２つのトラックに記憶されたデータを管理する場合について説明したが、この第２実施例のレコーダ１００では、第１セレクトフラグ２ｇと第２セレクトフラグ２ｈとの２種類のフラグを利用する場合について説明する。
【００９１】
尚、この第２実施例のレコーダ１００については、第１実施例のレコーダ１と相違する点について説明し、第１実施例のレコーダ１と共通する点についての説明は省略する。
【００９２】
図９は、レコーダ１００の電気的な構成およびこのレコーダ１００に接続される機器の概略を示すブロック図である。
【００９３】
レコーダ１００は、レコーダ１のＲＡＭ２に備えられていたセレクトフラグ２ｅとカレントフラグ２ｆとに代えて、第１セレクトフラグ２ｇと、第２セレクトフラグ２ｈとを備え、更に読出しポインタ２ｉを備えている。
【００９４】
第１セレクトフラグ２ｇと第２セレクトフラグ２ｈとは、トラック０とトラック１との対応するブロック毎に、その対応するどちらのブロックに記憶されている楽音を読出すかを示す選択情報を記憶するものである。読出しポインタ２ｉは、第１セレクトフラグ２ｇまたは第２セレクトフラグ２ｈに記憶されているいずれの選択情報に従って楽音を読出すかを示すものである。
【００９５】
図１０は、第２実施例のレコーダ１００がフレーズを録音、オーバーダビングおよびアンドゥする場合のメモリの使い方とフラグとの関係を模式的に示す図である。
【００９６】
（ａ）は、トラック０およびトラック１に全くフレーズが記憶されていない状態から、トラック０のブロック０から７にフレーズが記憶された場合を示している。この場合、第１セレクトフラグおよび第２セレクトフラグは「０」に設定され、読出しポインタ２ｉは第１セレクトフラグを指し示しているとする。
【００９７】
次に（ａ）に示す状態から、ブロック２から４までの区間でオーバーダビングが行われた場合を（ｂ）に示す。この区間でオーバーダビングの指示があると、読出しポインタ２ｉが示す第１セレクトフラグの全部の状態を第２セレクトフラグに書き写し、読出しポインタ２ｉを第１セレクトフラグから第２セレクトフラグを指すように移動する。
【００９８】
また、第１セレクトフラグのブロック２から４に対応する選択情報に従ってトラック０から読出されている楽音（被合成楽音）と新たに入力された楽音とを合成し、合成した楽音（合成楽音）をトラック１のブロック２から４にそれぞれ書き込む。即ち、読出した一方のトラックのブロックに対応する他方のトラックのブロックに合成した楽音を書き込む。
【００９９】
合成した楽音を書込むと、第１セレクトフラグの状態が書き写されている第２セレクトフラグのブロック２から４に対応する選択情報を「０」から「１」に反転する。一方、第１セレクトフラグの選択情報は（ａ）に示す状態のまま維持される。結局、第１セレクトフラグは全て「０」、第２セレクトフラグのブロック２から４に対応する選択情報が「１」、ブロック０，１，５から７に対応する選択情報が「０」に設定される。
【０１００】
つぎに、（ｂ）に示す状態から、ブロック１と２の区間においてオーバーダビングが行われた場合を（ｃ）に示す。この区間でオーバーダビングの指示があると、読出しポインタ２ｉが示す第２セレクトフラグの全部の状態を第１セレクトフラグに書き写し、読出しポインタ２ｉを第２セレクトフラグから第１セレクトフラグを指し示すように移動する。
【０１０１】
また、第２セレクトフラグのブロック１，２に対応する選択情報に従ってトラック０のブロック１とトラック１のブロック２とから読出されている楽音（被合成楽音）と新たに入力された楽音とを合成する。トラック０のブロック１から読出されている楽音（被合成楽音）と新たに入力された楽音とを合成した楽音（合成楽音）は、トラック１のブロック１に書込み、トラック１のブロック２から読出されている楽音（被合成楽音）と新たに入力された楽音とを合成した楽音（合成楽音）は、トラック０のブロック１に書込む。
【０１０２】
合成楽音を書込むと、第２セレクトフラグの状態が書き写された第１セレクトフラグのブロック１に対応する選択情報を「０」から「１」に反転し、ブロック２に対応する選択情報を「１」から「０」に反転する。一方、第２セレクトフラグの選択情報は（ｂ）に示す状態のまま維持される。
【０１０３】
結局、第１セレクトフラグのブロック０，２，５から７に対応する選択情報が「０」、ブロック１，３，４に対応する選択情報が「１」に設定され、第２セレクトフラグのブロック２から４に対応する選択情報が「１」、ブロック０，１，５から７に対応する選択情報が「０」に設定される。
【０１０４】
なお、このレコーダでは、停止操作を行うまでは、繰り返しフレーズが読出されて、読出されたフレーズを構成する楽音に新たな楽音を合成して記憶させることができる。
【０１０５】
（ｃ）の場合を例にとると、ブロック０からブロック７まで読出しが行われると、再びブロック０から読出しが開始される。読出しは、現在読出しポインタ２ｉが示している第１セレクトフラグにより示されるトラック０またはトラック１のブロックから行われる。この場合、書込みを行う際に、第１セレクトフラグと第２セレクトフラグとが一致しているブロックでは、第１セレクトフラグにより示されるトラックとは異なるトラックに書込みを行い、そのブロックの第１セレクトフラグを反転する。しかし、既に第２セレクトフラグを反転済で、第２セレクトフラグと一致していない場合には、第１セレクトフラグにより示されるトラックの同じブロックに書込みを行う。
【０１０６】
つぎに、アンドゥ処理について、（ｄ）を参照して説明する。（ｃ）のように記憶が行われ、順次各ブロックについて（ｃ）において読出しポインタ２ｉが示す第１セレクトフラグに従ってトラックを選択して読出すと、今回のオーバーダビングを行ったフレーズを読出すことができる。
【０１０７】
しかし、このオーバーダビング中の演奏がうまくできなかった場合には、今回のオーバーダビングを行う前の状態に戻し、再度オーバーダビングする必要がある。その場合には、上述のように左ペダル６ｅを所定時間以上オンし続けることにより、アンドゥが実行される。
【０１０８】
このアンドゥ処理は、読出しポインタ２ｉを第１セレクトフラグから第２セレクトフラグを指し示すように移動する。これにより、次回は第２セレクトフラグに記憶されている選択情報に従って楽音が読出される。尚、この第２セレクトフラグが示す状態は、（ｂ）に示す第２セレクトフラグが示す状態と一致している。
【０１０９】
図１１は、図４に示すフローチャートのＳ３の左ペダルオン処理の詳細を示すフローチャートである。第２実施例のレコーダ１００は、第１実施例のレコーダ１と比較して、再生モードであった場合（Ｓ２６：Ｙｅｓ）の後の処理が異なる。
【０１１０】
第２実施例のレコーダ１００では、再生モードであった場合には（Ｓ２６：Ｙｅｓ）、読出しポインタ２ｉが示す一方のセレクトフラグの状態を他方のセレクトフラグに書き写し（Ｓ７０）、読出しポインを一方のセレクトフラグから他方のセレクトフラグに移動する（Ｓ７１）。その後は、第１実施例のレコーダ１と同様に、オーバーダビングを開始し（Ｓ２８）、この左ペダルオン処理を終了する。
【０１１１】
また、図示は省略するが、図６（ｂ）に示すアンドゥの処理においては、第１実施例のレコーダ１はカレントフラグに対応するセレクトフラグを反転する処理（Ｓ３６，Ｓ３７）を介してＳ３８の処理を実行するのに対し、第２実施例のレコーダ１００は、アンドゥの指示に応じて読出しポインタ２ｉを一方のセレクトフラグから他方のセレクトフラグに移動させてた後、Ｓ３８の処理を実行する。このように、２つのセレクトフラグ９ｅ，９ｆを利用する場合には、読出しポインタ２ｉを移動させるだけで良いので簡易なデータ管理の下でアンドゥを実行することができる。
【０１１２】
図１２は、図４に示すメイン処理のフローチャートのＳ１１の処理の詳細を示すフローチャートである。第２実施例のレコーダ１００は、第１実施例のレコーダ１と比較して、データブロック書込みイベントが設定されている場合（Ｓ４２：Ｙｅｓ）の後の処理が異なる。
【０１１３】
データブロック書込イベントが設定されている場合は（Ｓ４２：Ｙｅｓ）、読出しポインタ２ｉが示すセレクトフラグが反転済（読出しポインタ２ｉが示す一方のセレクトフラグが対応する他方のセレクトフラグと一致していない）か否かを判断する（Ｓ７３）。
【０１１４】
その結果、反転済の場合には（Ｓ７３：Ｙｅｓ）、すでにオーバーダビングが行われたことを示すので、読出しポインタ２ｉが示すセレクトフラグにより指定されるトラックの所定のブロックにセーブ２ｄに記憶されている楽音を記憶する（Ｓ４８）。
【０１１５】
一方、反転されていない場合には（Ｓ７３：Ｎｏ）、読出しポインタが示すセレクトフラグが「１」か否かを判断する（Ｓ７４）。その結果、「１」であれば（Ｓ７４：Ｙｅｓ）、その読出しポインタが示すセレクトフラグを「０」に設定し（Ｓ７５）、「１」でなければ（Ｓ７４：Ｎｏ）その読出しポインタが示すセレクトフラグを「１」に設定する（Ｓ７６）。即ち、Ｓ７４からＳ７６の処理において、読出しポインタが示すセレクトフラグを反転するのである。
【０１１６】
こうして、セレクトフラグを設定した後は、第１実施例で説明したのと同様に、そのセレクトフラグが示すトラックの所定のブロックに、ＲＡＭ２のセーブ２ｄ領域に記憶されている楽音を記憶して（Ｓ４８）、この入出力データ処理を終了する。
【０１１７】
以上、説明したように、第２実施例のレコーダ１００によっても第１実施例のレコーダ１と同様に合成された楽音が書込まれるので、編集をする度に、編集前の楽音と、編集後の楽音とだけが記憶される。よって、アンドゥの実行は１回に限定されるものの、楽音を記憶するための記憶容量を少容量に制限することができ、レコーダ１を低コストで製造することができる。また、アンドゥが実行された場合には、読出しポインタ２ｉを移動させるだけで良いためアンドゥを実行するためのデータ管理を簡易にすることができる。
【０１１８】
上記第１実施例において、請求項１記載の読出し手段としては、図５のＳ２２、Ｓ２５、Ｓ２９の処理や図７のＳ４０やＳ４１の処理や図８のＳ６３の処理が該当し、生成手段としては図８のＳ６５の処理が該当し、書込手段としては、図７の４８の処理が該当し、変更手段としては、図６（ａ）のＳ３１やＳ３４の処理や図７のＳ４５からＳ４７までの処理が該当する。請求項２記載の第１の反転手段としては、図７のＳ４５からＳ４７までの処理が該当し、第２の反転手段としては、図６（ａ）のＳ３１やＳ３４の処理が該当する。
【０１１９】
上記第２実施例において、請求項４記載の読出し手段としては、図１１のＳ２２、Ｓ２５、Ｓ２９の処理や図１２のＳ４０やＳ４１の処理や図８のＳ６３の処理が該当し、生成手段としては図８のＳ６５の処理が該当し、書込手段としては、図１２の４８の処理が該当し、変更手段としては、図１２のＳ７４からＳ７６の処理が該当し、切替え手段としては、図１１のＳ７０や図６（ａ）のＳ３１やＳ３４の処理が該当する。
【０１２０】
以上、上記実施例に基づき本発明を説明したが、本発明は、上記実施例に何ら限定されるものでなく、本発明の趣旨を逸脱しない範囲内で種々の改良変形が可能であることは容易に推察できるものである。
【０１２１】
例えば、上記実施例では、アンドゥの開始を指示するために左ペダル６ｄを操作する場合について説明したが、アンドゥの開始を指示する手段としては、左ペダル６ｄを操作する場合に限られず、外部から新たな入力信号が入力された場合にアンドゥを開始するように構成しても良い。
【０１２２】
また、上記第２実施例では、オーバーダビングやアンドゥを実行する度に読出しポインタ２ｉを切替える場合について説明したが、読出しポインタ２ｉの制御方法については、かかる場合に限られず、オーバーダビングが実行された場合には読出しポインタを移動することなく、読出しポインタ２ｉが示す一方のセレクトフラグの選択情報を更新し、他方のセレクトフラグの選択情報に前回の状態を記憶し、アンドゥがあった場合に読出しポインタ２ｉを一方のセレクトフラグから他方のセレクトフラグに移動するように構成しても良い。
【図面の簡単な説明】
【０１２３】
【図１】本発明のレコーダの操作パネル図である。
【図２】レコーダおよびレコーダに接続される機器の電気的な構成を示すブロック図である。
【図３】レコーダがフレーズを録音、オーバーダビングおよび再生する場合のメモリの使い方とフラグとの関係を模式的に示す図である。
【図４】メイン処理を示すフローチャートである。
【図５】左ペダルオン処理の詳細を示すフローチャートである。
【図６】（ａ）は左ペダルホールド処理を示すフローチャートである。（ｂ）はアンドゥ処理を示すフローチャートである。
【図７】入出力データ処理を示すフローチャートである。
【図８】サンプリング周期で起動される割込処理を示すフローチャートである。
【図９】第２実施例のレコーダおよび第２実施例のレコーダに接続される機器の電気的な構成を示すブロック図である。
【図１０】第２実施例のレコーダがフレーズを録音、オーバーダビングおよび再生する場合のメモリの使い方とフラグとの関係を模式的に示す図である。
【図１１】第２実施例の左ペダルオン処理の詳細を示すフローチャートである。
【図１２】第２実施例の入出力データ処理を示すフローチャートである。
【符号の説明】
【０１２４】
１，１００    レコーダ
２ｅ          セレクトフラグ（第３の記憶手段）
２ｆ          カレントフラグ（第４の記憶手段）
２ｇ          第１セレクトフラグ（第３の記憶手段）
２ｈ          第２セレクトフラグ（第４の記憶手段）
２ｉ          読出しポインタ（切替え手段）
６ｅ          左ペダル（指示手段）
６ｄ          右ペダル
９            フラッシュＲＯＭ（記憶手段）
９ａ          トラック０（第１の記憶手段）
９ｂ          トラック１（第２の記憶手段）
【図１】
2006023594.tif 000003
【図２】
2006023594.tif 000004
【図３】
2006023594.tif 000005
【図４】
2006023594.tif 000006
【図５】
2006023594.tif 000007
【図６】
2006023594.tif 000008
【図７】
2006023594.tif 000009
【図８】
2006023594.tif 000010
【図９】
2006023594.tif 000011
【図１０】
2006023594.tif 000012
【図１１】
2006023594.tif 000013
【図１２】
2006023594.tif 000014