(57)【特許請求の範囲】
【請求項１】
テンポが設定された波形データを複数記憶する波形データ記憶手段と、
前記波形データ記憶手段に記憶された所定の波形データを所定の順序で演奏するソングのテンポを記憶するテンポ記憶手段と、
前記波形データ記憶手段に記憶された複数の波形データの中から所定の波形データを選択するための波形データ選択手段と、
前記波形データ選択手段により選択された波形データのテンポを前記テンポ記憶手段に記憶させるテンポ設定手段と
を有するテンポ設定装置。
【請求項２】
請求項１に記載のテンポ設定装置において、さらに、
前記波形データ選択手段により選択された波形データを再生する再生手段
を有するテンポ設定装置。
【請求項３】
請求項１に記載のテンポ設定装置において、
前記波形データ選択手段により選択された波形データのループ部分の拍数を設定する拍数設定手段を備え、
前記テンポ設定手段は、該波形データのテンポを、該波形データのループ部分の時間長および該拍数とに基づき決定し、前記テンポ記憶手段に記憶させる
ものであるテンポ設定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、テンポ設定装置に関し、さらに詳細には、楽曲を再生するときのテンポを指定する際に用いて好適なテンポ設定装置に関する。
【０００２】
なお、テンポとは、楽曲の速さを示すものであり、基準となる音符たる４分音符が、１分間に何拍あるかを表すものである。
【０００３】
【従来の技術】
一般に、電子楽器においては、複数の楽曲のデータを予め記憶しておき、記憶しておいた複数の楽曲のデータの中から所望の楽曲のデータを選択し、選択した楽曲のデータを再生することができるようになされている。
【０００４】
ところで、楽曲のデータを再生する場合にはテンポを設定することが必要であるが、従来の電子楽器においては、使用者が所望するテンポに対応するテンポ値を計算により求め、そのテンポ値をテンポ記憶手段へ入力することによりテンポを設定するようになされていた。
【０００５】
しかしながら、所望するテンポに対応するテンポ値を計算により求めるには、その計算作業が非常に煩雑であり、かつ、時間がかかるという問題点があった。
【０００６】
【発明が解決しようとする課題】
本発明は、上記したような従来の技術の有する種々の問題点に鑑みてなされたものであり、その目的とするところは、楽曲のデータを再生する際の所望のテンポに対応するテンポ値を、極めて簡単に、かつ、感覚的に設定することができるようにしたテンポ設定装置を提供しようとするものである。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、本発明のうち請求項１に記載の発明は、テンポが設定された波形データを複数記憶する波形データ記憶手段と、上記波形データ記憶手段に記憶された所定の波形データを所定の順序で演奏するソングのテンポを記憶するテンポ記憶手段と、上記波形データ記憶手段に記憶された複数の波形データの中から所定の波形データを選択するための波形データ選択手段と、上記波形データ選択手段により選択された波形データのテンポを上記テンポ記憶手段に記憶させるテンポ設定手段とを有するようにしたものである。
【０００８】
従って、本発明のうち請求項１に記載の発明によれば、計算などを行うことなしに、予めテンポを設定された波形データを選択することにより、選択した波形データに設定されていたテンポをテンポ記憶手段に記憶させることができるので、テンポを極めて簡単に、かつ、感覚的に設定することができる。
【０００９】
また、本発明のうち請求項２に記載の発明は、本発明のうち請求項１に記載の発明において、さらに、上記波形データ選択手段により選択された波形データを再生する再生手段を有するようにしたものである。
【００１０】
従って、本発明のうち請求項２に記載の発明によれば、波形データの再生により発音される楽音のテンポを聴いて、実際のテンポを確認しながら楽曲のテンポの設定を行うことができる。
【００１１】
また、本発明のうち請求項３に記載の発明は、本発明のうち請求項１に記載の発明において、上記波形データ選択手段により選択された波形データのループ部分の拍数を設定する拍数設定手段を備え、上記テンポ設定手段は、該波形データのテンポを、該波形データのループ部分の時間長および該拍数とに基づき決定し、上記テンポ記憶手段に記憶させるようにしたものである。
【００１２】
従って、本発明のうち請求項３に記載の発明によれば、波形データのループ部分の時間長および拍数とに基づいて波形データのテンポが設定されるので、波形データに対して容易にテンポの設定が行える。
【００１５】
なお、上記テンポ記憶手段は、楽曲の開始からの音楽的経過時間に対応して複数のテンポを記憶するものとし、このとき、テンポ記憶手段に記憶された各音楽的経過時間に対応する複数のテンポに従う時間経過に対応して複数の波形データを順次再生することにより楽曲を構成するようにしたり、テンポ記憶手段に記憶された各音楽的経過時間に対応する複数のテンポに従う時間経過に対応してメトロノーム音を発生するようにしたり、テンポ記憶手段に記憶された各音楽的経過時間に対応する複数のテンポに従う時間経過に対応して同期信号を外部機器に出力するようにしたりすることができる。
【００１６】
また、上記テンポ記憶手段は、楽曲の開始からの音楽的経過時間に対応して複数のテンポを記憶するものとし、さらにテンポ記憶手段の記憶内容に基づいて楽曲の開始からの音楽的経過時間に対応する物理的経過時間を予め求めて記憶しておき、音楽的経過時間に対応する物理的経過時間を求めるようにすることができる。このようにすることにより、例えば、音楽的経過時間に対応する物理的経過時間を表示することができる。
【００１７】
【発明の実施の形態】
以下、添付の図面を参照しながら、本発明によるテンポ設定装置の実施の形態の一例を詳細に説明する。
【００１８】
図１には、本発明によるテンポ設定装置の実施の形態の一例を備えた電子楽器の全体構成を表すブロック構成図が示されている。
【００１９】
この電子楽器は、その全体の動作の制御を中央処理装置（ＣＰＵ）１０を用いて制御するように構成されており、このＣＰＵ１０には、バス１２を介して、予め複数の音声（楽音）をあるサンプリング周波数によりサンプリングすることによって得た複数の波形データを記憶した波形メモリ１４と、この電子楽器の動作を制御するためのプログラムなどが記憶されたリード・オンリ・メモリ（ＲＯＭ）１６と、ソング（楽曲）を示すデータ（以下、単に「ソング」と称する。）を記憶する領域やワーキング用の領域などが設定されたランダム・アクセス・メモリ（ＲＡＭ）１８と、波形メモリ１４から波形データを読み出して再生する楽音発生器２０と、後述する各種の設定を行うための操作子群ならびに表示器などが設けられた操作パネル２２とを有して構成されている。
【００２０】
即ち、図１に示す電子楽器においては、ＣＰＵ１０によって全体の動作の制御が行われるものであり、楽音発生器２０は、ＣＰＵ１０の制御の下に波形メモリ１４に記憶された波形データを読み出して再生し、再生した波形データに基づいて楽音信号を発生し、楽音発生器２０によって発生された楽音信号はデジタル／アナログ変換器やスピーカーなどから構成されるサウンドシステム（図示せず）を経て、音声（楽音）として出力されることになる。
【００２１】
また、楽音発生器２０は、波形データに基づいて楽音信号を発生する楽音発生部の他に、後述するメトロノーム音を発生するメトロノーム音発生部を備えるものとする。
【００２２】
図２には、操作パネル２２の構成が示されており、操作パネル２２には、図２上において数字１〜８により示す８個のパッド操作子３０と、編集（Ｅｄｉｔ）操作子３２と、メトロノーム（Ｍｅｔｒｏ）操作子３４と、カーソル操作子３６と、ダイヤル操作子４０と、ソングの再生あるいは録音を停止させるプレイモード停止操作子４２と、楽音発生器２０によるソングの再生を開始させるプレイモード再生操作子４４と、ソングの再生位置を進めるプレイモード進み操作子４６と、ソングの再生位置を戻すプレイモード戻し操作子４８と、ソングの再生位置をソングの先頭に戻すプレイモード先頭位置戻し操作子５０と、パッド操作子３０による発音指示を記憶させるためのプレイモード録音操作子５２と、図２上において符号Ａ〜Ｄにより示す４個のトラック（Ｔｒａｃｋ）操作子５４と、新しいソングを作るためのクリエート（Ｃｒｅａｔｅ）操作子５６と、後述するソングのテンポマップを編集（エディット）するためのテンポマップ（Ｔｍａｐ）操作子５８と、ソングを切り替えるための変更（Ｃｈａｎｇｅ）操作子６０と、ソングを削除するための削除（Ｄｅｌｅｔｅ）操作子６２と、ある操作を肯定（Ｙｅｓ）的に確認をする場合に操作するＹｅｓ操作子６４と、ある操作を否定（Ｎｏ）的に確認をする場合に操作するＮｏ／Ｅｘｉｔ操作子６６と、後述する各種パラメータの設定状態などを表示する表示器としての液晶ディスプレイ装置（ＬＣＤ）６８と、現在選択されているトラックを表示する表示器としてのトラック表示器７０と、メトロノーム操作子３４の操作状態を表示する表示器としてのメトロノーム表示器７２とが設けられている。
【００２３】
ここで、上記したテンポマップ（ＴＭＡＰ）とは、ソング毎にソングのテンポの変化を小節単位で設定するもので、指定の小節から「この拍子」の「このテンポ」に変えるという情報が記憶されているものであって、ＲＡＭ１８にそのエリアが設定されている。
【００２４】
そして、テンポマップはソングの先頭から順に、テンポマップ（ＴＭＡＰ）１、テンポマップ（ＴＭＡＰ）２、テンポマップ（ＴＭＡＰ）３・・・と番号を付されて管理されている。
【００２５】
即ち、ソングには予めテンポマップ１が設定されており、このテンポマップ１でソングの初期テンポを決めるものであるが、途中の小節からテンポを変えたいときには、テンポマップ２として新たにテンポマップを作成し、指定の小節からテンポが換わるように順番に設定していくものであり、この実施の形態においては、テンポマップは５０個まで作成することを許容している。
【００２６】
また、パッド操作子３０には、波形メモリ１４に記憶された波形データがそれぞれ割り当てられているものであり、図２上における数字１〜８に対応してパッド番号１〜８がふられて管理されている。そして、各パッド操作子３０をプレイモードにおけるソングの再生停止中に押すと、押されたパッド操作子３０に割り当てられている波形データの発音指示が行われ（このときのみ、複数のパッド操作子３０を同時に押すことを許容している。）、各パッド操作子３０をプレイモードにおける録音中に押すと、現在選択されているトラックに対して当該操作されたパッド操作子３０に割り当てられている波形データの発音指示を記録する。また、ＬＣＤ６８が、後述するクリエート（Ｃｒｅａｔｅ）画面（図１５参照）またはテンポマップ（Ｔｍａｐ）画面（図１８参照）を表示しているときは、各パッド操作子３０を押すと、押されたパッド操作子３０に対応する後述する４個のパラメータから算出されるテンポ値が入力されることになる。
【００２７】
なお、各波形データとして順次に発音される複数の楽音からなる、例えば、１小節の演奏音のデータが記憶されている。従って、各波形データは、その波形データを構成する楽音により規定されるテンポを有している。
【００２８】
また、トラック操作子５４は、図２上における符号Ａ〜Ｄに対応してトラック番号Ａ〜Ｄがふられて管理されている。そして、各トラック操作子５４の操作に応じて、操作されたトラック操作子５４に対応するトラックが選択されることになる。
【００２９】
図３には、波形メモリ１４のフォーマットが概念的に示されており、波形メモリ１４には、パッド番号１のパッド操作子３０に割り当てられる波形データたる波形１を記憶する領域たる波形１エリアと、パッド番号２のパッド操作子３０に割り当てられる波形データたる波形２を記憶する領域たる波形２エリアと、パッド番号３のパッド操作子３０に割り当てられる波形データたる波形３を記憶する領域たる波形３エリアと、パッド番号４のパッド操作子３０に割り当てられる波形データたる波形４を記憶する領域たる波形４エリアと、パッド番号５のパッド操作子３０に割り当てられる波形データたる波形５を記憶する領域たる波形５エリアと、パッド番号６のパッド操作子３０に割り当てられる波形データたる波形６を記憶する領域たる波形６エリアと、パッド番号７のパッド操作子３０に割り当てられる波形データたる波形７を記憶する領域たる波形７エリアと、パッド番号８のパッド操作子３０に割り当てられる波形データたる波形８を記憶する領域たる波形８エリアとが設けられている。
【００３０】
これら波形１エリア〜波形８エリアは、図４に示すように、サンプルエリアと波形パラメータエリアとが設けられている。なお、図４において、「ｎ」は１〜８のいずれかをとるものであり、例えば、「ｎ＝１」の場合には、波形１エリアを示し、サンプルエリアには、波形１としてあるサンプリング周波数でサンプリングされた音声（楽音）の波形データが記憶されており、波形パラメータエリアには、サンプルエリアに記憶された波形１に関する波形パラメータが記憶されている。「ｎ＝２」、「ｎ＝３」、・・・、「ｎ＝８」の場合も、「ｎ＝１」の場合と同様である。
【００３１】
ここで、図５に示す波形パラメータの概念説明図を参照しながら、波形パラメータエリアに記憶される波形パラメータについて説明するが、波形パラメータエリアに記憶される波形パラメータとしては、以下の（１）〜（５）に示すものがある。
【００３２】
（１）Ｓｎ：フレーズ（本明細書においては、波形１エリア〜波形８エリアにそれぞれ記憶される波形データの中で、再生対象として指定される領域を意味するものとする。）の開始点（フレーズ再生開始点）を示す波形パラメータである。Ｓｎは、後述するように、使用者が編集操作子３２、カーソル操作子３６ならびにダイヤル操作子４０を用いて任意に設定可能なようになされている。
【００３３】
（２）Ｌｎ：フレーズをループ（繰り返し）再生する際のループ部分の開始点（フレーズループ点）を示す波形パラメータである。Ｌｎは、後述するように、使用者が編集操作子３２、カーソル操作子３６ならびにダイヤル操作子４０を用いて任意に設定可能なようになされている。
【００３４】
（３）Ｅｎ：フレーズの終了点（フレーズ再生終了点）を示す波形パラメータである。Ｅｎは、後述するように、使用者が編集操作子３２、カーソル操作子３６ならびにダイヤル操作子４０を用いて任意に設定可能なようになされている。（４）Ｎｎ：「Ｅｎ−Ｌｎ」の長さ、即ち、ループ部分の長さを何拍分とするかを示す波形パラメータである。Ｎｎは、後述するように、使用者が編集操作子３２、カーソル操作子３６ならびにダイヤル操作子４０を用いて任意に設定可能なようになされている。
【００３５】
（５）Ｏｎ：処理の基準となる音符を示す波形パラメータである。Ｏｎは、後述するように、使用者が編集操作子３２、カーソル操作子３６ならびにダイヤル操作子４０を用いて任意に設定可能なようになされている。
【００３６】
これらの波形パラメータＬｎ、Ｅｎ、Ｎｎ、Ｏｎに基づいてループ部分の長さ「Ｅｎ−Ｌｎ」を基準部分として後述する式（１）を演算することにより、波形データ（フレーズ）のテンポが求められる。
【００３７】
このように、テンポを、テンポを示す数値で設定するのではなく、基準となる音符およびループ部分が基準となる音符の何拍分かを設定することにより、演算によって自動的にテンポが求められ設定されるようになっており、テンポの設定が容易となっている。
【００３８】
ここでは、テンポ演算をフレーズ全体に基づかず、ループ部分に基づいて行っている。これは、いわゆる裏拍などから始まるフレーズの場合には、フレーズの長さが拍の長さの整数倍とはならず、フレーズの長さを拍の単位として設定するのが困難であるのに対し、ループ部分の長さは必ず拍の長さの整数倍であるため、ループ部分の長さを拍の長さを単位として設定するのは容易であるためである。
【００３９】
また、このとき、ループ部分はテンポを求める以前に波形データの再生態様を決めるために既に設定されているものであり、このループ部分に対し拍数を設定するようにしたため、波形データのいずれの部分に対して拍数を設定するかを改めて指定する手間が省け設定が容易となっている。
【００４０】
なお、本実施の形態では、波形データをループ再生する場合のみを取り上げたが、ループ再生しない場合にはフレーズ全体の長さを基準部分としてテンポを求めるようにしてもよい。
【００４１】
また、図６には、ＲＡＭ１８のワーキングエリアのフォーマットが概念的に示されており、ＲＡＭ１８のワーキングエリアには、テンポマップを設定したテンポマップエリアならびにテンポマップを変換した変換テーブル（物理的時間と音楽的時間との変換を行うテーブル）を記憶する変換テーブルエリアなどが設けられている。なお、テンポマップおよび変換テーブルは、ソング毎に記憶されるようになっている。
【００４２】
なお、ＲＯＭ１６のシステムエリアに記憶されているシステムパラメータとしては、
（１）Ｆｓ：サンプリング周波数
が設定されている。
【００４３】
なお、この実施の形態においては、上記したように、ソングはＲＡＭ１８の所定のエリアに記憶されるものであり、各ソングにはソング番号が１からふられて管理されている。従って、ソング番号を指定することにより、所望のソングを選択することができる。
【００４４】
次に、操作パネルに設けられた各操作子について説明すると、各パッド操作子３０を押すとパッドイベントが発生され、各パッド操作子３０の押圧を解除すると発音停止イベントが発生される。
【００４５】
また、編集操作子３２を押すとエディット（Ｅｄｉｔ）イベントが発生され、波形１〜８に関する波形パラメータＳｎ、Ｌｎ、Ｅｎ、Ｎｎ、Ｏｎをエディットするエディットモードに入ることができる。
【００４６】
なお、エディットモードでいずれかのパッド操作子３０が押されると、エディット対象が押されたパッド操作子３０に割り当てられていた波形データに切り替わるとともに、波形パラメータＳｎ、Ｌｎ、Ｅｎが楽音発生器２０へ送られて、楽音発生器２０の楽音発生部により単独発音する（後述する単独発音処理ルーチン（図１２）参照）。
【００４７】
また、楽音発生器２０のメトロノーム音発生部は、図７（ａ）（ｂ）に示すように、波形パラメータのＬｎ点において小節１拍目のメトロノーム音を発生し、以後は式（１）に示す演算式に従って計算されたテンポＴに従い、波形パラメータＯｎにより定まる各拍毎に、２拍目以後のメトロノーム音を発生させる。
【００４８】
Ｔ＝２４０×Ｆｓ×Ｎｎ／Ｏｎ／（Ｅｎ−Ｌｎ）  ・・・  式（１）
なお、式（１）は、ループ部分の物理的長さ「Ｅｎ−Ｌｎ」（ループ部分の波形データのサンプル数）を基準部分として、以下のようにして得られる。
【００４９】
基準部分の時間：基準部分の長さ／Ｆｓ＝（Ｅｎ−Ｌｎ）／Ｆｓ
Ｏｎ分音符１拍の時間：基準部分の時間／Ｎｎ＝（Ｅｎ−Ｌｎ）／Ｆｓ／Ｎｎ４分音符１拍の時間：（Ｏｎ／４）×Ｏｎ分音符１拍の時間＝Ｏｎ×（Ｅｎ−Ｌｎ）／Ｆｓ／Ｎｎ／４
テンポ：テンポＴ＝１分間の４分音符の数＝６０／４分音符１拍の時間＝２４０×Ｆｓ×Ｎｎ／Ｏｎ／（Ｅｎ−Ｌｎ）＝式（１）
また、メトロノーム操作子３４は、記録、再生、エディット時に、メトロノーム音を鳴らすか否かを選択する操作子であり、押す度にオン（メトロノーム音を鳴らす。）とオフ（メトロノーム音を鳴らさない。）とが切り替わる。
【００５０】
そして、メトロノーム操作子３４がオンされたときに、メトロノーム表示器７２を点灯させ、楽音発生器２０の楽音発生部とメトロノーム音発生部とにより発生された信号をミックスして出力する。一方、メトロノーム操作子３４がオフされたときには、メトロノーム表示器７２を消灯させ、楽音発生器２０の楽音発生部により発生された信号のみを出力する。
【００５１】
また、カーソル操作子３６は、ＬＣＤ６８に表示された各種パラメータを指定するカーソルを移動させるものである。カーソル操作子３６を操作すると、カーソルイベントが発生される。
【００５２】
また、ダイヤル操作子４０はカーソルが存在するパラメータの値を変更させるものであり、プレイモードでは、後述するようにＬＣＤ６８に表示される小節、拍、ティック、現在時刻の分、現在時刻の秒、フレーム、サブフレームの値を変更することができ、一方、プレイモード以外では、各種パラメータの値を変更することができる。ダイヤル操作子４０を操作すると、ダイヤルイベントが発生される。
【００５３】
また、プレイモード停止操作子４２は、プレイモードにおいて再生中のソングの再生の停止させることができ、プレイモード再生操作子４４は、プレイモードにおいてソングの再生を開始させることができる。
【００５４】
また、プレイモード進み操作子４６は、プレイモードのソング再生停止中において一回押す毎にソングの現在位置を１小節先に進めることができ、押し続けると「１小節／０．５秒」で進む。プレイモード進み操作子４６が操作されると、進みイベントが発生される。なお、このプレイモード進み操作子４６は、後述するテンポマップ（Ｔｍａｐ）画面のときは、テンポマップの終了小節値の増加操作子になる。
【００５５】
また、プレイモード戻し操作子４８は、プレイモードのソング再生停止中におおいて一回押す毎にソングの現在位置を１小節前へ戻すことができ、押し続けると「１小節／０．５秒」で戻る。プレイモード戻し操作子４８が操作されると、戻しイベントが発生される。なお、このプレイモード戻し操作子４８は、後述するテンポマップ（Ｔｍａｐ）画面のときは、テンポマップの終了小節値の減少操作子になる。
【００５６】
また、プレイモード録音操作子５２は、トラック操作子５４により選択されたトラックに、パッド操作子３０の操作によって指定されたイベントを記録させる際に操作するものである。
【００５７】
また、トラック操作子５４は、プレイモード録音操作子５２の操作によるイベントの記録時において、イベントを記録するトラックを指定する操作子であり、トラック番号Ａ〜Ｄのいずれか１つのトラックが択一的に選択される。そして、トラック操作子５４によって選択されたトラックのトラック表示器７０が点灯する。
【００５８】
また、クリエート操作子５６、テンポマップ操作子５８、変更操作子６０または削除操作子６２のいずれかを操作すると、ソング（Ｓｏｎｇ）イベントが発生される。
【００５９】
また、Ｙｅｓ操作子６４を操作すると、イエス（Ｙｅｓ）イベントが発生され、Ｎｏ／Ｅｘｉｔ操作子６６を操作すると、ノー／エグジット（Ｎｏ／Ｅｘｉｔ）イベントが発生される。
【００６０】
以上の構成において、この電子楽器によって実行される処理について、添付のフローチャートを参照しながら説明する。
【００６１】
図８には、メインルーチンのフローチャートが示されており、この電子楽器に電源が投入されるとメインルーチンが起動され、電源が遮断されるまで繰り返し実行されることになる。
【００６２】
このメインルーチンが起動されると、各種パラメータの初期化などの初期設定が行われ（ステップＳ８０２）、初期設定が終了すると、ＬＣＤ６８にプレイモード画面が表示され（ステップＳ８０４）、プレイモードとなる（ステップＳ８０６）。この電子楽器においては、通常は、プレイモード画面が表示されたプレイモードにおける処理が行われるものである。
【００６３】
図９には、ＬＣＤ６８に表示されるプレイモード画面の一例が示されており、この図９のプレイモード画面を参照しながら、プレイモードについて説明する。このプレイモード画面においては、再生対象のソングの現在演奏位置における小節、拍、ティック、およびそれに対応する現在時刻の分、現在時刻の秒、フレーム、サブフレーム、再生対象のソングの番号、トラックＡ〜Ｄ、小節線、現在時刻の基準演奏位置、フレーズが示されている。
【００６４】
ここで、ティックとは、この電子楽器の最小時間分解能を示す単位であり、４分音符の１／９６の長さが１ティックとされている。ティックの実際の長さ（物理時間上の長さ）はテンポによってのみ変化する。
【００６５】
各音符の１拍あたりのティック数は、
２分音符のときは    １９２ティック＝１拍
４分音符のときは      ９６ティック＝１拍
８分音符のときは      ４８ティック＝１拍
１６分音符のときは      ２４ティック＝１拍
となる。
【００６６】
また、いずれの場合にも、テンポの基準は４分音符であるので、
６０秒／テンポ＝９６ティックの時間
となる。即ち、
１ティックの時間＝（６０／９６／テンポ）秒
となる。
【００６７】
また、フレームとは、絶対時間の単位であり、
１フレーム＝１／３０秒
である。
【００６８】
また、サブフレームとは、絶対時間の単位であり、
１サブフレーム＝１／１００フレーム＝１／３０００秒
である。
【００６９】
なお、このプレイモードにおいては、ＬＣＤ６８に表示される小節線および各トラックのフレーズは演奏の進行に伴ってテンポマップに応じて表示位置が移動され、ＬＣＤ６８に表示される小節、拍およびティックは演奏の進行に伴ってテンポマップに応じて値が更新され、ＬＣＤ６８に表示される分、秒、フレームおよびサブフレームは演奏の進行に伴ってテンポマップに応じて値が更新されるようになされている。
【００７０】
そして、ステップＳ８０６では、上記したパッド操作子３０やプレイモード停止操作子４２、プレイモード再生操作子４４、プレイモード録音操作子５０などの操作子の操作が検出され、検出結果に応じて波形データの再生、ソングの再生停止や再生開始、記録開始、記録停止などが行われる。
【００７１】
なお、ソングが再生あるいは録音されている間は、ステップＳ８０６内のソングの再生あるいは録音の処理が繰り返し行われ、ソングの再生および録音が停止されている状態ではステップＳ８０６に続いてステップＳ８０８の処理に移行する。
【００７２】
なお、ソングの再生停止中にパッド操作子３０が操作された場合には、後述する単独発音処理と同様の処理により、操作されたパッド操作子３０に対応する波形データがその波形データに設定されている波形パラメータに従って再生される。
【００７３】
ただし、この場合には、後述する単独発音処理とは異なり、メトロノーム音の発音は行われない。
【００７４】
ソングの再生、記録処理は周知の自動演奏装置と同じであるので、煩雑さを防ぐため詳細な説明は省略し概要のみを説明する。
【００７５】
新規ソング作成時には、後述するように、まずそのソングのテンポマップを作成する。続いて、メトロノーム音を鳴らしながら、メトロノーム音に合わせてパッド操作子３０を操作してパッドイベントおよび発音停止イベントをソングとして記録する。このとき、メトロノームは、各演奏時点に対して設定されているテンポに従った速さで、メトロノーム音を発生する。
【００７６】
また、パッド操作の各イベントは、テンポマップの各演奏時点に対して設定されているテンポに従ったティックを単位として規定されたそのイベントの発生タイミングを示すデータが添付されて記録される。
【００７７】
従って、メトロノーム音を聞きながらパッド操作を行うことにより、テンポマップに設定されているテンポに従った速さでの演奏が記憶されることになる。
【００７８】
さらに、各拍のタイミング毎に、ソングの開始からの音楽的経過時間（現在の演奏位置）に対応してＬＣＤ６８に小節、拍、ティック、分、秒、フレーム、サブフレームが表示される。
【００７９】
より詳細には、まずソングの先頭のテンポマップ１に設定されているテンポに従ったティックの時間が経過する度にティック数を積算することにより、ソングの開始からのティック数を求める。これが、ソングの開始からの音楽的経過時間（現在の演奏位置）を示す。積算されたティック数とテンポマップ１の拍子に基づいて小節、拍のタイミングとなったことが判別される。
【００８０】
各拍のタイミング毎に変換テーブルを参照して対応する分、秒、フレーム、サブフレームをＬＣＤ６８に表示する。
【００８１】
また、テンポマップ１に設定されているテンポをメトロノーム音発生部に供給するとともに、各小節の開始タイミング毎に１拍めのメトロノーム音を発音するよう指示する。
【００８２】
現在の演奏位置がテンポマップ１に規定される小節を過ぎ、テンポマップ２に規定される小節となった場合には、テンポマップ２に基づいて同様な処理を行う。テンポマップ３以降についても、同様に処理を行い演奏を進行させる。
【００８３】
同様に、ソングの再生が指示されると、テンポマップに設定されているテンポに従ったティックの時間が経過する度に、ソングに記録されている各イベントの発生タイミングになったか否かを判断し、各イベントの発生タイミングになった場合にはそのイベントを再生し、楽音発生器２０を制御してイベントに対応する波形データの読み出しを行わせる。その他の処理については、記録時と同様である。
【００８４】
次に、編集操作子３２が操作されてエディット（Ｅｄｉｔ）イベントが発生されたか否かを判断し（ステップＳ８０８）、エディットイベントが発生されたと判断された場合には、メインルーチンのサブルーチンとしてエディット（Ｅｄｉｔ）モード処理ルーチン（図１０参照）を実行する（ステップＳ８１０）。
【００８５】
そして、ステップＳ８１０の処理を終了した場合、または、エディットイベントが発生されたと判断されなかった場合には、クリエート操作子５６、テンポマップ操作子５８、変更操作子６０または削除操作子６２のいずれかが操作されてソングイベントが発生されたか否かを判断し（ステップＳ８１２）、ソング（Ｓｏｎｇ）イベントが発生されたと判断された場合には、メインルーチンのサブルーチンとしてソング（Ｓｏｎｇ）モード処理ルーチン（図１３参照）を実行する（ステップＳ８１４）。
【００８６】
そして、ステップＳ８１４の処理を終了した場合、または、ソングイベントが発生されたと判断されなかった場合には、その他のイベントが発生したか否かを判断し（ステップＳ８１６）、その他のイベントが発生されたと判断された場合には、発生されたイベントに対応した処理を行い（ステップＳ８１６）、それからステップＳ８０４へ戻って処理を繰り返す。一方、その他のイベントが発生されなかったと判断された場合には、そのままステップＳ８０４へ戻って処理を繰り返す。
【００８７】
次に、図１０に示すエディット（Ｅｄｉｔ）モード処理ルーチンを参照しながら、エディットモード処理について説明すると、まず、ＬＣＤ６８にエディット（Ｅｄｉｔ）画面を表示し（ステップＳ１００２）、次に、パッド操作子３０が押されてパッドイベントが発生されたか否かを判断する（ステップＳ１００４）。
【００８８】
ここで、パッドイベントが発生されたと判断された場合には、エディット対象の波形データを押されたパッド操作子３０のパッド番号に対応する波形データに変更し、さらに、表示内容を新たな波形のものに変更し（ステップＳ１００６）、それから、エディット・モード処理ルーチンのサブルーチンとして単独発音処理ルーチン（図１２参照）を実行して（ステップＳ１００８）、ステップＳ１０１０へ進む。
【００８９】
一方、パッドイベントが発生されたと判断されなかった場合には、そのままステップＳ１０１０へ進む。
【００９０】
ステップＳ１０１０においては、カーソル操作子３６が操作されてカーソルイベントが発生されたか否かを判断する。
【００９１】
ここで、カーソルイベントが発生されたと判断された場合には、操作されたカーソル操作子３６に応じてカーソルの移動を行い（ステップＳ１０１２）、ステップＳ１０１４へ進む。
【００９２】
一方、カーソルイベントが発生されたと判断されなかった場合には、そのままステップＳ１０１４へ進む。
【００９３】
ステップＳ１０１４においては、ダイヤル操作子４０が操作されてダイヤルイベントが発生されたか否かを判断する。
【００９４】
ここで、ダイヤルイベントが発生されたと判断された場合には、ダイヤル操作子の操作に応じて値の増減を行い（ステップＳ１０１６）、ステップＳ１０１８へ進む。
【００９５】
一方、ダイヤルイベントが発生されたと判断されなかった場合には、そのままステップＳ１０１８へ進む。
【００９６】
ステップＳ１０１８においては、Ｎｏ／Ｅｘｉｔ操作子６６が操作されてＮｏ／Ｅｘｉｔイベントが発生されたか否かを判断する。
【００９７】
ここで、Ｎｏ／Ｅｘｉｔイベントが発生されたと判断されなかった場合には、ステップＳ１００４へ戻って処理を繰り返す。
【００９８】
一方、Ｎｏ／Ｅｘｉｔイベントが発生されたと判断された場合には、このエディットモード処理ルーチンを終了する。
【００９９】
図１１には、ステップＳ１００２でＬＣＤ６８に表示されるエディット画面の一例が示されており、このエディット画面を参照しながら、さらにエディットモード処理について説明する。
【０１００】
このエディット画面においては、パッド番号、波形パラメータＳｎ、波形パラメータＬｎ、波形パラメータＥｎ、波形パラメータＮｎ、波形パラメータＯｎ、テンポが示されている。
【０１０１】
そして、パッド番号の表示領域には、現在エディット対象として選択されている波形データに対応するパッド操作子３０のパッド番号が自動的に表示される。また、カーソル操作子３６によって、カーソルは、波形パラメータＳｎ、波形パラメータＬｎ、波形パラメータＥｎ、波形パラメータＮｎならびに波形パラメータＯｎの５箇所の表示領域に移動可能であり（ステップＳ１０１２）、カーソルが存在する波形パラメータの値が、ダイヤル操作子４０によって指示された値に変更される（ステップＳ１０１６）。
【０１０２】
テンポの表示領域には、表示されている波形パラメータに基づいて、上記した式（１）を自動的に計算することによって得られたテンポを表示している。
【０１０３】
そして、各パッド操作子３０が押されると、エディット対象の波形データが切り替わるとともに、パラメータに従い単独発音の制御情報が楽音発生器２０に送られることになり（ステップＳ１００６）、Ｎｏ／Ｅｘｉｔ操作子６６が押されると、このエディットモード処理ルーチンを終了して、プレーモード画面に戻るものである（ステップＳ１０１８）。
【０１０４】
次に、図１２に示す単独発音処理ルーチンを参照しながら、単独発音処理について説明する。なお、後述する説明においては、ｎは押されたパッド操作子３０のパッド番号である。
【０１０５】
まず、波形パラメータＳｎ、Ｌｎ、Ｅｎ、Ｏｎを楽音発生器２０に供給するとともに波形パラメータＳｎのアドレスから波形データを読み出して発音を開始するよう、楽音発生器２０に指示する（ステップＳ１２０２）。
【０１０６】
それから、楽音発生器２０が波形パラメータＬｎのアドレスの波形データを読み出したか否かが判断される（ステップＳ１２０４）。
【０１０７】
ここで、波形パラメータＬｎのアドレスの波形データを読み出したと判断された場合には、メトロノーム音発生部へ小節１拍目のメトロノーム音を発音するための発音信号を送出し（ステップＳ１２０６）、メトロノーム音発生部へメトロノーム音の発音開始を指示して（ステップＳ１２０８）、ステップＳ１２１０へ進む。
【０１０８】
以後、メトロノーム音発生部は前述の図７（ａ）（ｂ）に示すように、テンポＴを求め各拍のメトロノーム音を発生させる。
【０１０９】
一方、波形パラメータＬｎのアドレスの波形データを読み出したと判断されなかった場合には、そのままステップＳ１２１０へ進む。
【０１１０】
ステップＳ１２１０においては、楽音発生器２０が波形パラメータＥｎのアドレスの波形データを読み出したか否か判断される。
【０１１１】
ここで、波形パラメータＥｎのアドレスの波形データを読み出したと判断された場合には、楽音発生器２０の読み出しアドレスを波形パラメータＬｎへ戻し（ステップＳ１２１２）、ステップＳ１２１４へ進む。
【０１１２】
一方、波形パラメータＥｎのアドレスの波形データを読み出したと判断されなかった場合には、そのままステップＳ１２１４へ進む。
【０１１３】
ステップＳ１２１４においては、各パッド操作子３０の押圧が解除されて発音停止イベントが発生されたか否かを破断する。
【０１１４】
ここで、発音停止イベントが発生されたと判断されなかった場合には、ステップＳ１２０４へ戻って処理を繰り返す。
【０１１５】
一方、発音停止イベントが発生されたと判断された場合には、楽音発生器２０に対して読み出し中の波形データの読み出しを停止させるとともに、メトロノーム音発生部に発音の停止指示を行い（ステップＳ１２１６）、この単独発音処理を終了する。
【０１１６】
以上のように、エディットモードにおいては、通常の演奏操作と同様にパッド操作子３０を操作することにより、そのパッド操作子３０に割り当てられている波形データ（フレーズ）がエディット対象の波形データとして選択されるとともに、その波形データが再生されるようになっており、波形データの選択が感覚的にわかりやすいものとなっているとともに、選択した波形データの確認がすぐにできるようになっている。
【０１１７】
また、波形パラメータの変更をした後でパッド操作子３０を操作して波形データを再生することも、パッド操作子３０を操作して波形データを再生した後に波形パラメータの変更を変更することも可能であり、波形データの内容を確認しながら波形パラメータの変更が行えるようになっている。
【０１１８】
さらに、基準となる拍やループ部分の拍数を設定するときに、波形データの再生と同時に設定中の拍、拍数に応じてメトロノーム音が発生するようになっているので、拍、拍数の設定が適当か否かが容易に判断できるようになっている。
【０１１９】
次に、図１３に示すソングモード処理ルーチンを参照しながら、ソングモード処理について説明すると、まず、クリエート操作子５６が操作されたか否かを判断し（ステップＳ１３０２）、クリエート操作子５６が操作されたと判断された場合には、ソングモード処理ルーチンのサブルーチンとしてクリエート（Ｃｒｅａｔｅ）処理ルーチン（図１４参照）を実行し（ステップＳ１３０４）、クリエート処理ルーチンの実行を終了すると、ステップＳ１３０６へ進む。
【０１２０】
一方、クリエート操作子５６が操作されたと判断されなかった場合には、そのままステップＳ１３０６へ進む。
【０１２１】
ステップＳ１３０６においては、テンポマップ操作子５８が操作されたか否かを判断し、テンポマップ操作子５８が操作されたと判断された場合には、ソングモード処理ルーチンのサブルーチンとしてテンポマップ（Ｔｍａｐ）処理ルーチン（図１７参照）を実行し（ステップＳ１３０８）、テンポマップ処理ルーチンの実行を終了すると、ステップＳ１３１０へ進む。
【０１２２】
一方、テンポマップ操作子５８が操作されたと判断されなかった場合には、そのままステップＳ１３１０へ進む。
【０１２３】
ステップＳ１３１０においては、変更操作子６０が操作されたか否かを判断し、変更操作子６０が操作されたと判断された場合には、ソングモード処理ルーチンのサブルーチンとして変更処理（Ｃｈａｎｇｅ処理）ルーチンを実行し（ステップＳ１３１２）、変更処理ルーチンの実行を終了すると、ステップＳ１３１４へ進む。
【０１２４】
一方、変更操作子６０が操作されたと判断されなかった場合には、そのままステップＳ１３１４へ進む。
【０１２５】
ステップＳ１３１４においては、削除操作子６２が操作されたか否かを判断し、削除操作子６２が操作されたと判断された場合には、ソングモード処理ルーチンのサブルーチンとして削除処理（Ｄｅｌｅｔｅ処理）ルーチンを実行し（ステップＳ１３１６）、削除処理ルーチンの実行を終了すると、このソングモード処理を終了する。
【０１２６】
一方、削除操作子６２が操作されたと判断されなかった場合には、そのままこのソングモード処理を終了する。
【０１２７】
次に、図１４に示すクリエート処理ルーチンを参照しながら、クリエート処理について説明すると、まず、ＬＣＤ６８にクリエート（Ｃｒｅａｔｅ）画面を表示し（ステップＳ１４０２）、次に、ＬＣＤ６８上において表示された拍子の分子の位置に、カーソル操作子３６によりカーソルを移動する（ステップＳ１４０４）。
【０１２８】
それから、カーソル操作子３６が操作されてカーソルイベントが発生されたか否かを判断し（ステップＳ１４０６）、カーソルイベントが発生されたと判断された場合には、操作されたカーソル操作子３６に応じてカーソルの移動を行い（ステップＳ１４０８）、ステップＳ１４１０へ進む。
【０１２９】
一方、カーソルイベントが発生されたと判断されなかった場合には、そのままステップＳ１４１０へ進む。
【０１３０】
ステップＳ１４１０においては、ダイヤル操作子４０が操作されてダイヤルイベントが発生されたか否かを判断する。
【０１３１】
ここで、ダイヤルイベントが発生されたと判断された場合には、ダイヤル操作子の操作に応じて値の増減を行い（ステップＳ１４１２）、ステップＳ１４１４へ進む。
【０１３２】
一方、ダイヤルイベントが発生されたと判断されなかった場合には、そのままステップＳ１４１４へ進む。
【０１３３】
ステップＳ１４１４においては、パッド操作子３０が押されてパッドイベントが発生されたか否かを判断する。
【０１３４】
ここで、パッドイベントが発生されたと判断された場合には、クリエート処理ルーチンのサブルーチンとしてテンポ割り当て処理ルーチン（図１６参照）を実行し（ステップＳ１４１６）、それから、単独発音処理ルーチン（図１２参照）を実行して（ステップＳ１４１８）、ステップＳ１４２０へ進む。
【０１３５】
一方、パッドイベントが発生されたと判断されなかった場合には、そのままステップＳ１４２０へ進む。
【０１３６】
ステップＳ１４２０においては、Ｎｏ／Ｅｘｉｔ操作子６６が操作されてＮｏ／Ｅｘｉｔイベントが発生されたか否かを判断する。
【０１３７】
ここで、Ｎｏ／Ｅｘｉｔイベントが発生されたと判断された場合には、このクリエート処理ルーチンを終了する。
【０１３８】
一方、Ｎｏ／Ｅｘｉｔイベントが発生されたと判断されなかった場合には、Ｙｅｓ操作子６４が操作されてＹｅｓイベントが発生されたか否かを判断する（ステップＳ１４２２）。
【０１３９】
ここで、Ｙｅｓイベントが発生されたと判断された場合には、後述する変換テーブルを作成して（ステップＳ１４２４）、このクリエート処理ルーチンを終了する。
【０１４０】
一方、Ｙｅｓイベントが発生されたと判断されなかった場合には、ステップＳ１４０６へ戻って処理を繰り返す。
【０１４１】
図１５には、ステップＳ１４０２でＬＣＤ６８に表示されるクリエート画面の一例が示されており、このクリエート画面を参照しながら、さらにクリエート処理について説明する。
【０１４２】
このクリエート画面においては、ソング番号、拍子、テンポが示されている。
そして、ソング番号の表示領域には、空いているソング番号が自動的に表示される。
【０１４３】
また、拍子の表示領域には初期値として「４／４」が表示され、テンポの表示領域には初期値として「１２０」が表示される。
【０１４４】
カーソル操作子３６によって、カーソルは、拍子の分子、拍子の分母ならびにテンポの３箇所の表示領域に移動可能であり（ステップＳ１４０８）、カーソルが存在する表示領域の値が、ダイヤル操作子４０によって指示された値に変更される（ステップＳ１４１２）。
【０１４５】
また、パッド操作子３０が押されると単独発音するとともに（ステップＳ１４１８）、カーソルがテンポの表示領域にあるときは、テンポの表示領域に上記した式（１）を自動的に計算することによって得られたテンポを表示する（ステップＳ１４１６）。
【０１４６】
そして、Ｙｅｓ操作子６４が押されると（ステップＳ１４２２）、新たなソングのテンポマップ１と変換テーブルを作り（ステップＳ１４２４）、プレイモード画面に戻る。
【０１４７】
一方、Ｎｏ／Ｅｘｉｔ操作子６６が押されると、クリエート操作子５６が押される前の状態でプレイモード画面に戻る（ステップＳ１４２０）。
【０１４８】
次に、図１６に示すテンポ割り当て処理ルーチンを参照しながら、テンポ割り当て処理について説明すると、まず、変数ｎに操作されたパッド操作子３０のパッド番号を代入する（ステップＳ１６０２）。
【０１４９】
それから、式（１）「Ｔ＝２４０×Ｆｓ×Ｎｎ／Ｏｎ／（Ｅｎ−Ｌｎ）」の演算を行い、テンポＴを得る（ステップＳ１６０４）。
【０１５０】
それから、カーソルがＬＣＤ６８のテンポの表示領域にあるか否かについて判断し（ステップＳ１６０６）、カーソルがＬＣＤ６８のテンポの表示領域にある場合には、テンポの表示領域にステップＳ１６０４で求めたテンポＴの値を代入し、このテンポ割り当て処理ルーチンを終了する。
【０１５１】
一方、カーソルがＬＣＤ６８のテンポの表示領域にない場合には、そのままこのテンポ割り当て処理ルーチンを終了する。
【０１５２】
以上のように、クリエート画面において先頭のテンポマップ、即ち、テンポマップ１が設定されるようになっており、また、クリエート画面においてカーソルがテンポの表示領域にあるときにパッド操作子３０を操作すると、そのパッド操作子３０に割り当てられている波形データに設定されているテンポがテンポマップ１に設定されるとともに、その波形データが再生されるようになっている。
【０１５３】
通常、ソング記録時には、演奏に使用される波形データと同じテンポでパッド操作子３０が操作されるので、これから作成するソングにおいて使用される波形データテンポ設定用として指定することにより、その波形データに予め設定されているテンポがソングの初期テンポとして設定されることになり、テンポの設定が極めて容易となっている。
【０１５４】
これについては、後述するテンポマップ（Ｔｍａａｐ）処理においても同様であり、テンポマップ（Ｔｍａａｐ）処理では、ソング開始時以降にテンポを変更するときに、その時点で使用される波形データをテンポ設定用として指定することにより、その波形データに予め設定されているテンポがその時点のソングのテンポとして設定される。
【０１５５】
なお、カーソルがテンポの表示領域にあるときにのみ、パッド操作子３０の操作によりテンポが設定されるようにしたが、カーソルがいずれの表示領域にあるかに関わらず、パッド操作子３０の操作によりテンポが設定されるようにしてもよい。
【０１５６】
また、パッド操作子３０の操作によりテンポのみが設定されるようにしたが、操作されたパッド操作子３０に割り当てられている波形データの波形パラメータのうち基準となる音符Ｏｎに基づいて、拍子の分母も設定されるようにしてもよい。
【０１５７】
なお、波形パラメータに拍子の分子を規定するものを設け、パッド操作子３０を操作することで、拍子の分母および分子が設定されるようにしてもよい。
【０１５８】
次に、図１７に示すテンポマップ（Ｔｍａｐ）処理ルーチンを参照しながら、テンポマップ処理について説明すると、まず、テンポマップの内容をＲＡＭ１８に設けられたエディットバッファに書き込み、ＬＣＤ６８にテンポマップ（Ｔｍａｐ）画面を表示する（ステップＳ１７０２）。
【０１５９】
それから、カーソル操作子３６が操作されてカーソルイベントが発生されたか否かを判断し（ステップＳ１７０４）、カーソルイベントが発生されたと判断された場合には、操作されたカーソル操作子３６に応じてカーソルの移動を行い（ステップＳ１７０６）、ステップＳ１７０８へ進む。
【０１６０】
一方、カーソルイベントが発生されたと判断されなかった場合には、そのままステップＳ１７０８へ進む。
【０１６１】
ステップＳ１７０８においては、ダイヤル操作子４０が操作されてダイヤルイベントが発生されたか否かを判断する。
【０１６２】
ここで、ダイヤルイベントが発生されたと判断された場合には、ダイヤル操作子の操作に応じて値の増減を行い（ステップＳ１７１０）、ステップＳ１７１２へ進む。
【０１６３】
一方、ダイヤルイベントが発生されたと判断されなかった場合には、そのままステップＳ１７１２へ進む。
【０１６４】
ステップＳ１７１２においては、プレイモード進み操作子４６が操作されて進みイベントが発生されたか否か、または、プレイモード戻し操作子４８が操作されて戻しイベントが発生されたか否かを判断する。
【０１６５】
ここで、進みイベントまたは戻しイベントが発生されたと判断された場合には、テンポマップ処理ルーチンのサブルーチンとしての進み／戻し処理ルーチン（図２４参照）を実行し、ステップＳ１７１６へ進む。
【０１６６】
一方、進みイベントまたは戻しイベントが発生されなかったと判断された場合には、そのままステップＳ１７１６へ進む。
【０１６７】
ステップＳ１７１６においては、パッド操作子３０が押されてパッドイベントが発生されたか否かを判断する。
【０１６８】
ここで、パッドイベントが発生されたと判断された場合には、テンポマップ処理ルーチンのサブルーチンとしてテンポ割り当て処理ルーチン（図１６参照）実行し（ステップＳ１７１８）、それから、単独発音処理ルーチン（図１２参照）を実行して（ステップＳ１７２０）、ステップＳ１７２２へ進む。
【０１６９】
一方、パッドイベントが発生されたと判断されなかった場合には、そのままステップＳ１７２２へ進む。
【０１７０】
ステップＳ１７２２においては、Ｙｅｓ操作子６４が操作されてＹｅｓイベントが発生されたか否かを判断する。
【０１７１】
ここで、Ｙｅｓイベントが発生されたと判断された場合には、そのままこのテンポマップ処理ルーチンを終了する。
【０１７２】
一方、Ｙｅｓイベントが発生されたと判断されなかった場合には、Ｎｏ／Ｅｘｉｔ操作子６６が操作されてＮｏ／Ｅｘｉｔイベントが発生されたか否かを判断する（ステップＳ１７２４）。
【０１７３】
ここで、Ｎｏ／Ｅｘｉｔイベントが発生されたと判断された場合には、そのままこのテンポマップ処理ルーチンを終了する。
【０１７４】
一方、Ｎｏ／Ｅｘｉｔイベントが発生されたと判断されなかった場合には、ステップＳ１７０４へ戻って処理を繰り返す。
【０１７５】
図１８には、ステップＳ１７０２でＬＣＤ６８に表示されるテンポマップ画面の一例が示されており、このテンポマップ画面を参照しながら、さらにテンポマップ処理について説明する。
【０１７６】
このテンポマップ画面においては、ソング番号ならびにテンポマップ（テンポマップ（ＴＭＡＰ１）１〜４、開始小節、終了小節、拍子ならびにテンポよりなる。）が表示されている。
【０１７７】
そして、ソング番号の表示領域には、現在選択されているソング番号が自動的に表示される。
【０１７８】
カーソル操作子３６によって、カーソルは、横方向は終了小節、拍子の分子、拍子の分母ならびにテンポの４箇所の表示領域に移動可能であり、縦方向はＴＭＡＰ１〜５０の行まで移動可能となされている（ステップＳ１７０６）。
【０１７９】
なお、ＴＭＡＰ５〜５０は、カーソルの縦方向の移動によりスクロールされることにより表示される。
【０１８０】
そして、開始小節は、
ＴＭＡＰ１  ならば  １
ＴＭＡＰｎ  ならば  （ＴＭＡＰ  ｎ−１の終了小節）＋１  （ｎは自然数））
になる。
【０１８１】
また、終了小節は、
ＴＭＡＰ１  ならば  値（＊＊＊、１〜２５６）
ＴＭＡＰｎ  ならば  値（＊＊＊、（ＴＭＡＰ  ｎ−１の終了小節）＋１〜２５６）  （ｎは自然数））
をとる。
【０１８２】
値が＊＊＊から数値に変更されると、その下の行にカーソル移動が許容されるようになる。
【０１８３】
なお、カーソルが終了小節の表示領域にあるときにダイヤル操作がなされたときには、変更対象のテンポマップの開始小節から、変更対象のテンポマップの１つ後のテンポマップに設定されている終了小節よりも１つ手前の小節の範囲でのみ終了小節の変更が可能なように制限されている。
【０１８４】
また、パッド操作子３０が押されると単独発音するとともに（ステップＳ１７２０）、テンポ表示領域には、上記した式（１）を自動的に計算することによって得られたテンポを表示する（ステップＳ１７１８）。
【０１８５】
そして、Ｙｅｓ操作子６４が押されると（ステップＳ１７２２）、テンポマップと変換テーブルを作り（ステップＳ１７２４）、プレイモード画面に戻る。
【０１８６】
以上のように、テンポマップ画面においてテンポマップが設定されるようになっており、また、テンポマップ画面においてカーソルがテンポの表示領域にあるときにパッド操作子３０を操作すると、そのパッド操作子３０に割り当てられている波形データに設定されているテンポがテンポマップ１に設定されるとともに、その波形データが再生されるようになっている。
【０１８７】
一方、Ｎｏ／Ｅｘｉｔ操作子６６が押されると、テンポマップ操作子５８が押される前の状態でプレイモード画面に戻る（ステップＳ１７２４）。
【０１８８】
ここで、テンポマップから上記した変換テーブル（この変換テーブルは、物理的時間と音楽的時間との変換を行うテーブルである。）を作成する手法について説明する。
【０１８９】
まず、ＴＭＡＰ１については、開始小節の時刻を「００’００’’００ｆ００」に設定し、以後、拍子、テンポからＴＭＡＰ１の各小節の各拍の時刻を算出し、終了小節、拍子、テンポからＴＭＡＰ１の終了時刻を算出する。
【０１９０】
また、ＴＭＡＰｎ（ｎは自然数）については、開始小節の時刻をＴＭＡＰ（ｎ−１）の終了時刻に設定し、以後、拍子、テンポからＴＭＡＰｎの各小節の各拍の時刻を算出し、終了小節、拍子、テンポからＴＭＡＰ１の終了時刻を算出する。
【０１９１】
従って、テンポマップから物理的時間と音楽的時間との変換を行う変換テーブルを作成することができるものである。
【０１９２】
なお、図１９には、テンポマップの一例が示されており、図２０〜図２３には、図１９に示すテンポマップから作成した変換テーブルが示されていて、図２０はＴＭＡＰ１に関する変換テーブルであり、図２１はＴＭＡＰ２に関する変換テーブルであり、図２２はＴＭＡＰ３に関する変換テーブルであり、図２３はＴＭＡＰ４に関する変換テーブルである。
【０１９３】
即ち、図１９に示すテンポマップの「ＴＭＡＰ１  １−５  ４／４  １２０」より、第１小節から第５小節（計５小節）が４／４拍子で、「拍子１拍＝４分音符」であることがわかる。これと、開始時刻が「００’００’’００ｆ００」であり、テンポが「１２０」であることより、各拍の時間が「６０秒／テンポ１２０＝０．５秒であることがわかり、図２０に示すＴＭＡＰ１に関する第１小節から第５小節までの変換テーブルを作成することができる。
【０１９４】
ここで、ＴＭＡＰ１においては合計２０拍、開始時刻が「００’００’’００ｆ００」であり、テンポが「１２０」であることより、「００’００’’００ｆ００＋（６０秒／テンポ１２０）×２０拍」となり、終了時刻「００’１０’’００ｆ００」がわかり、ＴＭＡＰ２の開始時刻が「００’１０’’００ｆ００」であることがわかる。
【０１９５】
また、図１９に示すテンポマップの「ＴＭＡＰ２  ６−１０  ３／４  １４０」より、第６小節から第１０小節（計５小節）が３／４拍子で、「拍子１拍＝４分音符」であることがわかる。これと、開始時刻が「００’１０’’００ｆ００」であり、テンポが「１４０」であることより、図２１に示すＴＭＡＰ２に関する第６小節から第１０小節までの変換テーブルを作成することができる。
【０１９６】
ここで、ＴＭＡＰ２においては合計１５拍、開始時刻が「００’１０’’００ｆ００」であり、テンポが「１４０」であることより、「００’１０’’００ｆ００＋（６０秒／テンポ１４０）×１５拍」となり、終了時刻「００’１６’’１２ｆ８５」がわかり、ＴＭＡＰ３の開始時刻が「００’１６’’１２ｆ８５」であることがわかる。
【０１９７】
また、図１９に示すテンポマップの「ＴＭＡＰ３  １１−１５  ４／４  １３０」より、第１１小節から第１５小節（計５小節）が４／４拍子で、「拍子１拍＝４分音符」であることがわかる。これと、開始時刻が「００’１６’’１２ｆ８５」であり、テンポが「１３０」であることより、図２２に示すＴＭＡＰ３に関する第１１小節から第１５小節までの変換テーブルを作成することができる。ここで、ＴＭＡＰ３においては合計２０拍、開始時刻が「００’１６’’１２ｆ８５」であり、テンポが「１３０」であることより、「００’１６’’１２ｆ８５＋（６０秒／テンポ１３０）×２０拍」となり、終了時刻「００’２５’’１９ｆ７８」がわかり、ＴＭＡＰ４の開始時刻が「００’２５’’１９ｆ７８」であることがわかる。
【０１９８】
また、図１９に示すテンポマップの「ＴＭＡＰ４  １６−＊＊＊  ４／４  １４０」より、第１６小節からが４／４拍子で、「拍子１拍＝４分音符」であることがわかる。これと、開始時刻が「００’２５’’１９ｆ７８」であり、テンポが「１４０」であることより、図２３に示すＴＭＡＰ４に関する第１６小節以後の変換テーブルを作成することができる。
【０１９９】
次ぎに、図２４に示す進み／戻し処理ループを参照しながら、進み／戻し処理について説明すると、まず、カーソルがＬＣＤ６８の終了小節領域にあるか否かを判断し（ステップＳ２４０２）、カーソルがＬＣＤ６８の終了小節領域にないと判断された場合には、そのままこの進み／戻し処理を終了する。
【０２００】
一方、カーソルがＬＣＤ６８の終了小節領域にあると判断された場合には、カーソルのある終了小節および以下の行の開始小節と終了小節を、各行の開始小節と終了小節の差を保ったまま、同時に増減し（ステップＳ２４０４）、この進み／戻し処理を終了する。
【０２０１】
なお、変更操作子６０が操作されると、ＬＣＤ６８には変更（Ｃｈａｎｇｅ）画面が表示される。図２５には、ＬＣＤ６８に表示される変更画面の一例が示されており、この変更画面を参照しながら変更処理について説明する。
【０２０２】
この変更画面においては、ソング番号が示されている。
【０２０３】
そして、ソング番号の表示領域には、現在選択されているソング番号が自動的に表示される。
【０２０４】
カーソルはソング番号に表示領域に固定されており、カーソルが存在するソング番号の表示領域の値が、ダイヤル操作子４０によって指示された値に変更される。
【０２０５】
そして、Ｙｅｓ操作子６４が押されると、変更されたソング番号を選択されたソング番号として確定してプレイモード画面に戻る。
【０２０６】
一方、Ｎｏ／Ｅｘｉｔ操作子６６が押されると、変更操作子６０が押される前のソング番号を選択し直してプレイモード画面に戻る。
【０２０７】
また、削除操作子６２が操作されると、ＬＣＤ６８には削除（Ｄｅｌｅｔｅ）画面が表示される。図２６には、ＬＣＤ６８に表示される削除画面の一例が示されており、この削除画面を参照しながら削除処理について説明する。
【０２０８】
この削除画面においては、ソング番号が示されている。
【０２０９】
そして、ソング番号の表示領域には、現在選択されているソング番号が自動的に表示される。
【０２１０】
カーソルはソング番号に表示領域に固定されており、カーソルが存在するソング番号の表示領域の値が、ダイヤル操作子４０によって指示された値に変更される。
【０２１１】
そして、Ｙｅｓ操作子６４が押されると、ソング番号の表示領域に表示されたソング番号のソングが削除され、他のソングから一番新しい値のソングを選び、プレイモード画面に戻る。
【０２１２】
一方、Ｎｏ／Ｅｘｉｔ操作子６６が押されると、削除操作子６２が押される前の状態でプレイモード画面に戻る。
【０２１３】
上記した実施の形態では、テンポマップにテンポを設定するにあたり、パッド操作子３０を操作することにより波形データを指定するようにしたが、これに代えて、トラックを指定し、ソングのこのトラックに記録されているパッド操作イベントに基づいてそのパッド操作子３０に割り当てられている波形データを指定するようにしてもよい。
【０２１４】
また、上記した実施の形態においては、特に言及していないが、テンポマップに設定されたテンポに基づいて、外部の機器にテンポを示す同期信号を出力するようにしてもよい。例えば、４分音符の２４分の１の周期、即ち、実施の形態では４ティックが経過する毎にＭＩＤＩ規格に定義されたタイミングクロック信号を外部の機器に出力する。
【０２１５】
また、上記した実施の形態においては、例えば、ソングの先頭からの小節数およびその小節内の拍数などの指定によりソングの任意の音楽的時間を指定し、指定された位置からソングの演奏を途中再生することに関しては触れなかったが、このような再生を行う場合にも、変換マップを参照することによりその音楽的時間に対応するソングの開始からの物理的時間を直ちに求め表示することができる。
【０２１６】
また、上記した実施の形態においては、テンポに対応する時間単位（ティック）に基づいてパッド操作子３０の押圧／押圧解除のタイミングをソングに規定するようにしたが、ソングの先頭からの物理的時間に対応してこれらのタイミングを規定するようにしてもよい。この場合に、変換マップを参照することにより、任意の音楽的時間に対応する物理的時間を直ちに求めることができるため、任意に指定された音楽的時間に対応する位置からソングの途中再生が容易に行える。
【０２１７】
【発明の効果】
本発明は、以上説明したように構成されているので、楽曲のデータを再生する際の所望のテンポに対応するテンポ値を、極めて簡単に、かつ、感覚的に設定することができるという優れた効果を奏する。
【図面の簡単な説明】
【図１】本発明によるテンポ設定装置の実施の形態の一例を備えた電子楽器の全体構成を表すブロック構成図である。
【図２】操作パネルの構成を示す説明図である。
【図３】波形メモリのフォーマットを概念的に示す説明図である。
【図４】波形１エリア〜波形８エリアのフォーマットを概念的に示す説明図である。
【図５】波形パラメータの概念説明図である。
【図６】ＲＡＭ１８のワーキングエリアのフォーマットを概念的に示す説明図である。
【図７】（ａ）（ｂ）は楽音発生器のメトロノーム音発生部によって発生されるメトロノーム音の発生形態を示す説明図である。
【図８】メインルーチンのフローチャートである。
【図９】ＬＣＤに表示されるプレイモード画面の一例を示す説明図である。
【図１０】編集（Ｅｄｉｔ）モード処理ルーチンのフローチャートである。
【図１１】ＬＣＤに表示される編集（Ｅｄｉｔ）画面の一例を示す説明図である。
【図１２】単独発音処理ルーチンのフローチャートである。
【図１３】ソング（Ｓｏｎｇ）モード処理ルーチンのフローチャートである。
【図１４】クリエート（Ｃｒｅａｔｅ）処理ルーチンのフローチャートである。
【図１５】ＬＣＤに表示されるクリエート（Ｃｒｅａｔｅ）画面の一例を示す説明図である。
【図１６】テンポ割り当て処理ルーチンのフローチャートである。
【図１７】テンポマップ（Ｔｍａｐ）処理ルーチンのフローチャートである。
【図１８】ＬＣＤに表示されるテンポマップ（Ｔｍａｐ）画面の一例を示す説明図である。
【図１９】テンポマップの一例を示す説明図である。
【図２０】図１９に示すテンポマップから作成した変換テーブルを示す説明図である。
【図２１】図１９に示すテンポマップから作成した変換テーブルを示す説明図である。
【図２２】図１９に示すテンポマップから作成した変換テーブルを示す説明図である。
【図２３】図１９に示すテンポマップから作成した変換テーブルを示す説明図である。
【図２４】進み／戻し処理ルーチンのフローチャートである。
【図２５】ＬＣＤに表示される変更（Ｃｈａｎｇｅ）画面の一例を示す説明図である。
【図２６】ＬＣＤに表示される削除（Ｄｅｌｅｔｅ）画面の一例を示す説明図である。
【符号の説明】
１０          中央処理装置（ＣＰＵ）
１２          バス
１４          波形メモリ
１６          ＲＯＭ
１８          ＲＡＭ
２０          楽音発生器
２２          操作パネル
【図１】
0003939421.tif 000002
【図２】
0003939421.tif 000003
【図３】
0003939421.tif 000004
【図４】
0003939421.tif 000005
【図５】
0003939421.tif 000006
【図６】
0003939421.tif 000007
【図７】
0003939421.tif 000008
【図８】
0003939421.tif 000009
【図９】
0003939421.tif 000010
【図１０】
0003939421.tif 000011
【図１１】
0003939421.tif 000012
【図１２】
0003939421.tif 000013
【図１３】
0003939421.tif 000014
【図１４】
0003939421.tif 000015
【図１５】
0003939421.tif 000016
【図１６】
0003939421.tif 000017
【図１７】
0003939421.tif 000018
【図１８】
0003939421.tif 000019
【図１９】
0003939421.tif 000020
【図２０】
0003939421.tif 000021
【図２１】
0003939421.tif 000022
【図２２】
0003939421.tif 000023
【図２３】
0003939421.tif 000024
【図２４】
0003939421.tif 000025
【図２５】
0003939421.tif 000026
【図２６】
0003939421.tif 000027