JP3529123B2 - 自動演奏装置及び自動演奏方法 - Google Patents
自動演奏装置及び自動演奏方法Info
- Publication number
- JP3529123B2 JP3529123B2 JP24966497A JP24966497A JP3529123B2 JP 3529123 B2 JP3529123 B2 JP 3529123B2 JP 24966497 A JP24966497 A JP 24966497A JP 24966497 A JP24966497 A JP 24966497A JP 3529123 B2 JP3529123 B2 JP 3529123B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- performance
- note
- automatic
- performance data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【0001】
【発明の属する技術分野】本発明は、自動的に演奏を行
う自動演奏装置及び自動演奏方法に関し、特に自動演奏
に使用される演奏データの量を減らす技術に関する。
う自動演奏装置及び自動演奏方法に関し、特に自動演奏
に使用される演奏データの量を減らす技術に関する。
【0002】
【従来の技術】近年の電子キーボード、電子オルガン、
電子ピアノ等といった電子楽器は、自動演奏機能を有し
ている。この自動演奏機能には、例えばデモンストレー
ション演奏、自動伴奏等が含まれる。ここで、デモンス
トレーション演奏とは、例えば自動演奏データメモリに
格納されている自動演奏データを順次読み出し、この読
み出された自動演奏データに基づいて楽音を発生するこ
とにより所定曲を自動的に演奏することをいう。また、
自動伴奏とは、例えば自動伴奏データメモリに格納され
ている自動伴奏データを順次読み出し、この読み出され
た自動伴奏データと鍵盤装置からの情報に基づいて自動
的に伴奏音を発生することをいう。
電子ピアノ等といった電子楽器は、自動演奏機能を有し
ている。この自動演奏機能には、例えばデモンストレー
ション演奏、自動伴奏等が含まれる。ここで、デモンス
トレーション演奏とは、例えば自動演奏データメモリに
格納されている自動演奏データを順次読み出し、この読
み出された自動演奏データに基づいて楽音を発生するこ
とにより所定曲を自動的に演奏することをいう。また、
自動伴奏とは、例えば自動伴奏データメモリに格納され
ている自動伴奏データを順次読み出し、この読み出され
た自動伴奏データと鍵盤装置からの情報に基づいて自動
的に伴奏音を発生することをいう。
【0003】ところで、自動演奏データは1曲分の演奏
データで構成されているのに対し、自動伴奏データは数
小節分の演奏データで構成されている。しかしながら、
自動演奏データと自動伴奏データとは、同一形式の複数
の音符データで作成される点で同じであり、しかも、こ
れら両データは略同様に処理される。従って、以下にお
いては、自動演奏や自動伴奏に使用される演奏データを
単に「演奏データ」という。
データで構成されているのに対し、自動伴奏データは数
小節分の演奏データで構成されている。しかしながら、
自動演奏データと自動伴奏データとは、同一形式の複数
の音符データで作成される点で同じであり、しかも、こ
れら両データは略同様に処理される。従って、以下にお
いては、自動演奏や自動伴奏に使用される演奏データを
単に「演奏データ」という。
【0004】演奏データは、例えば図12に示すよう
に、複数の音符データと1つのエンドデータ(ENDデ
ータ)で構成されている。各音符データは例えば4バイ
トで構成されており、各バイトには、「キーナンバ」、
「ステップタイム」、「ゲートタイム」及び「ベロシテ
ィ」が割り当てられている。キーナンバは音高を指示す
るために使用される。ステップタイムは、発音時刻を指
定するために使用される。ゲートタイムは発音の長さを
指定するために使用される。ベロシティは発音の強さを
指定するために使用される。また、エンドデータは例え
ば2バイトで構成され、各バイトには「エンドマーク」
及び「ステップタイム」が割り当てられている。エンド
マークは特殊コードで構成されており、1つの曲の演奏
データの終わりを表すために使用される。
に、複数の音符データと1つのエンドデータ(ENDデ
ータ)で構成されている。各音符データは例えば4バイ
トで構成されており、各バイトには、「キーナンバ」、
「ステップタイム」、「ゲートタイム」及び「ベロシテ
ィ」が割り当てられている。キーナンバは音高を指示す
るために使用される。ステップタイムは、発音時刻を指
定するために使用される。ゲートタイムは発音の長さを
指定するために使用される。ベロシティは発音の強さを
指定するために使用される。また、エンドデータは例え
ば2バイトで構成され、各バイトには「エンドマーク」
及び「ステップタイム」が割り当てられている。エンド
マークは特殊コードで構成されており、1つの曲の演奏
データの終わりを表すために使用される。
【0005】このような従来の自動演奏装置は、例えば
リードオンリメモリ(以下、「ROM」という)で構成
された演奏データメモリを備えている。この演奏データ
メモリには、曲毎に又はリズムの種類毎に演奏データが
記憶されている。そして、ユーザが曲又はリズムを選択
して自動演奏又は自動伴奏を開始させると、自動演奏装
置の制御部は、選択された曲又はリズムに対応する演奏
データを演奏データメモリから読み出し、音源に供給す
る。音源は、受け取った演奏データに基づいて楽音信号
を発生する。この楽音信号は例えばスピーカに供給さ
れ、このスピーカで音響信号に変換される。
リードオンリメモリ(以下、「ROM」という)で構成
された演奏データメモリを備えている。この演奏データ
メモリには、曲毎に又はリズムの種類毎に演奏データが
記憶されている。そして、ユーザが曲又はリズムを選択
して自動演奏又は自動伴奏を開始させると、自動演奏装
置の制御部は、選択された曲又はリズムに対応する演奏
データを演奏データメモリから読み出し、音源に供給す
る。音源は、受け取った演奏データに基づいて楽音信号
を発生する。この楽音信号は例えばスピーカに供給さ
れ、このスピーカで音響信号に変換される。
【0006】
【発明が解決しようとする課題】ところで、電子楽器が
有する音源は、夫々独自の電気的な特性を有している。
従って、1つの演奏データに基づいて発生される音の音
楽的な特性は、各音源によって異なる場合が多い。例え
ば、所定の演奏データをある音源に供給することにより
自動演奏を行わせた場合は好ましい音量バランスで楽音
が発生されるが、その演奏データを他の音源に供給する
ことにより自動演奏を行わせた場合は音量バランスが悪
くなるという事態がしばしば発生する。
有する音源は、夫々独自の電気的な特性を有している。
従って、1つの演奏データに基づいて発生される音の音
楽的な特性は、各音源によって異なる場合が多い。例え
ば、所定の演奏データをある音源に供給することにより
自動演奏を行わせた場合は好ましい音量バランスで楽音
が発生されるが、その演奏データを他の音源に供給する
ことにより自動演奏を行わせた場合は音量バランスが悪
くなるという事態がしばしば発生する。
【0007】一方、演奏データの提供者(例えばメーカ
ー)は、1つの曲を複数の音源で発生できるようにした
いという要求を持っている。このような要求に応えるた
めに、従来の自動演奏装置は、種々の音源に適合する複
数の演奏データを備えている。例えば、各音源に好適な
音量バランスを得るために、各音符データ中のベロシテ
ィデータだけが異なる複数の演奏データが作成され、こ
れらが例えば一つの演奏データメモリに格納されて提供
されている。従って、演奏データを記憶するために必要
な演奏データメモリの容量が増加するという問題があ
る。
ー)は、1つの曲を複数の音源で発生できるようにした
いという要求を持っている。このような要求に応えるた
めに、従来の自動演奏装置は、種々の音源に適合する複
数の演奏データを備えている。例えば、各音源に好適な
音量バランスを得るために、各音符データ中のベロシテ
ィデータだけが異なる複数の演奏データが作成され、こ
れらが例えば一つの演奏データメモリに格納されて提供
されている。従って、演奏データを記憶するために必要
な演奏データメモリの容量が増加するという問題があ
る。
【0008】そこで、本発明の目的は、少ない演奏デー
タ量であるにも拘わらず、各曲本来の音楽的特性で自動
演奏できる自動演奏装置及び自動演奏方法を提供するこ
とにある。
タ量であるにも拘わらず、各曲本来の音楽的特性で自動
演奏できる自動演奏装置及び自動演奏方法を提供するこ
とにある。
【0009】
【課題を解決するための手段】本発明の第1の態様に係
る自動演奏装置は、上記目的を達成するために、1つの
音を発生するために使用される音符データの一部に対応
するデータによって構成された第1演奏データを格納す
る第1の記憶手段と、前記音符データの他の一部に対応
するデータによって構成された第2演奏データを複数格
納する第2の記憶手段と、前記第2の記憶手段に格納さ
れている複数の第2演奏データの中の1つを指定する指
定手段と、前記第1の記憶手段に記憶されている第1演
奏データと前記指定手段で指定された第2演奏データと
に基づいて演奏音を発生する演奏音発生手段、とを備え
ている。
る自動演奏装置は、上記目的を達成するために、1つの
音を発生するために使用される音符データの一部に対応
するデータによって構成された第1演奏データを格納す
る第1の記憶手段と、前記音符データの他の一部に対応
するデータによって構成された第2演奏データを複数格
納する第2の記憶手段と、前記第2の記憶手段に格納さ
れている複数の第2演奏データの中の1つを指定する指
定手段と、前記第1の記憶手段に記憶されている第1演
奏データと前記指定手段で指定された第2演奏データと
に基づいて演奏音を発生する演奏音発生手段、とを備え
ている。
【0010】上記本発明の第1の態様に係る自動演奏装
置において、前記音符データの一部に対応するデータは
音高(ノートナンバ)、音長(ゲートタイム)及び発音
時刻(ステップタイム)を決定するためのデータを含
み、前記音符データの他の一部に対応するデータは音の
大きさ(ベロシティ)を決定するためのデータを含むよ
うに構成できる。この場合、例えば各音源に適するベロ
シティデータを有する複数の第2演奏データを作成して
おき、自動演奏を行う際に、上記指定手段によって好ま
しい第2演奏データを選択すれば、音量バランスのとれ
た自動演奏を行わせることができる。なお、指定手段に
よって音源に適合しない第2演奏データを故意に選択す
ることにより、音量バランスが崩れた自動演奏を故意に
行うことも可能になり、自動演奏のバリエーションが拡
がる。
置において、前記音符データの一部に対応するデータは
音高(ノートナンバ)、音長(ゲートタイム)及び発音
時刻(ステップタイム)を決定するためのデータを含
み、前記音符データの他の一部に対応するデータは音の
大きさ(ベロシティ)を決定するためのデータを含むよ
うに構成できる。この場合、例えば各音源に適するベロ
シティデータを有する複数の第2演奏データを作成して
おき、自動演奏を行う際に、上記指定手段によって好ま
しい第2演奏データを選択すれば、音量バランスのとれ
た自動演奏を行わせることができる。なお、指定手段に
よって音源に適合しない第2演奏データを故意に選択す
ることにより、音量バランスが崩れた自動演奏を故意に
行うことも可能になり、自動演奏のバリエーションが拡
がる。
【0011】また、記第1演奏データを構成する音符デ
ータの一部として、例えばキーナンバ、ゲートタイム及
びベロシティを表すデータを用い、上記第2演奏データ
を構成する音符データの他の一部として、ステップタイ
ムデータを用いることができる。この場合、ステップタ
イムを微妙にずらした複数の第2演奏データを作成して
おけば、同じ曲でも所謂ノリの異なる自動演奏を行わせ
ることができる。
ータの一部として、例えばキーナンバ、ゲートタイム及
びベロシティを表すデータを用い、上記第2演奏データ
を構成する音符データの他の一部として、ステップタイ
ムデータを用いることができる。この場合、ステップタ
イムを微妙にずらした複数の第2演奏データを作成して
おけば、同じ曲でも所謂ノリの異なる自動演奏を行わせ
ることができる。
【0012】また、本発明の第2の態様に係る自動演奏
装置は、上記と同様の目的で、1つの音を発生するため
に使用される音符データによって構成された第1演奏デ
ータを格納する第1の記憶手段と、前記音符データの一
部に対応するデータによって構成された第2演奏データ
を格納する第2の記憶手段と、前記第2の記憶手段に格
納されている第2演奏データを用いるかどうかを指定す
る指定手段と、該指定手段による指定がない場合は、前
記第1の記憶手段に格納されている第1演奏データに基
づいて演奏音を発生し、該指定手段による指定がある場
合は、前記第1の記憶手段に格納されている第1演奏デ
ータに含まれる各音符データの一部が、前記第2の記憶
手段に格納されている第2演奏データに含まれる各デー
タで夫々置き換えられた第1演奏データに基づいて演奏
音を発生する演奏音発生手段、とを備えている。
装置は、上記と同様の目的で、1つの音を発生するため
に使用される音符データによって構成された第1演奏デ
ータを格納する第1の記憶手段と、前記音符データの一
部に対応するデータによって構成された第2演奏データ
を格納する第2の記憶手段と、前記第2の記憶手段に格
納されている第2演奏データを用いるかどうかを指定す
る指定手段と、該指定手段による指定がない場合は、前
記第1の記憶手段に格納されている第1演奏データに基
づいて演奏音を発生し、該指定手段による指定がある場
合は、前記第1の記憶手段に格納されている第1演奏デ
ータに含まれる各音符データの一部が、前記第2の記憶
手段に格納されている第2演奏データに含まれる各デー
タで夫々置き換えられた第1演奏データに基づいて演奏
音を発生する演奏音発生手段、とを備えている。
【0013】また、本発明の第3の態様に係る自動演奏
装置は、上記と同様の目的で、1つの音を発生するため
に使用される音符データによって構成された第1演奏デ
ータを格納する第1の記憶手段と、前記音符データの一
部に対応するデータによって構成された第2演奏データ
を格納する第2の記憶手段と、前記第2の記憶手段に格
納されている第2演奏データを用いるかどうかを指定す
る指定手段と、該指定手段による指定がない場合は、前
記第1の記憶手段に格納されている第1演奏データに基
づいて演奏音を発生し、該指定手段による指定がある場
合は、前記第1の記憶手段に格納されている第1演奏デ
ータに含まれる各音符データの一部に、前記第2の記憶
手段に格納されている第2演奏データに含まれる各デー
タが夫々演算された第1演奏データに基づいて演奏音を
発生する演奏音発生手段、とを備えている。
装置は、上記と同様の目的で、1つの音を発生するため
に使用される音符データによって構成された第1演奏デ
ータを格納する第1の記憶手段と、前記音符データの一
部に対応するデータによって構成された第2演奏データ
を格納する第2の記憶手段と、前記第2の記憶手段に格
納されている第2演奏データを用いるかどうかを指定す
る指定手段と、該指定手段による指定がない場合は、前
記第1の記憶手段に格納されている第1演奏データに基
づいて演奏音を発生し、該指定手段による指定がある場
合は、前記第1の記憶手段に格納されている第1演奏デ
ータに含まれる各音符データの一部に、前記第2の記憶
手段に格納されている第2演奏データに含まれる各デー
タが夫々演算された第1演奏データに基づいて演奏音を
発生する演奏音発生手段、とを備えている。
【0014】これら第2及び第3の態様に係る自動演奏
装置においては、前記音符データは音高、音長、発音時
刻及び音の大きさを決定するデータを含み、前記音符デ
ータの一部に対応するデータは音の大きさを決定するた
めのデータを含むように構成できる。
装置においては、前記音符データは音高、音長、発音時
刻及び音の大きさを決定するデータを含み、前記音符デ
ータの一部に対応するデータは音の大きさを決定するた
めのデータを含むように構成できる。
【0015】本発明の第4の態様に係る自動演奏方法
は、上記目的を達成するために、1つの音を発生するた
めに使用される音符データの一部に対応するデータによ
って構成された第1演奏データを格納し、前記音符デー
タの他の一部に対応するデータによって構成された第2
演奏データを複数格納し、前記格納されている複数の第
2演奏データの中の1つを選択し、該選択された第2演
奏データと前記格納されている第1演奏データとに基づ
いて演奏音を発生する、ように構成されている。
は、上記目的を達成するために、1つの音を発生するた
めに使用される音符データの一部に対応するデータによ
って構成された第1演奏データを格納し、前記音符デー
タの他の一部に対応するデータによって構成された第2
演奏データを複数格納し、前記格納されている複数の第
2演奏データの中の1つを選択し、該選択された第2演
奏データと前記格納されている第1演奏データとに基づ
いて演奏音を発生する、ように構成されている。
【0016】この場合、前記音符データの一部に対応す
るデータは音高、音長及び発音時刻を決定するためのデ
ータを含み、前記音符データの他の一部に対応するデー
タは音の大きさを決定するためのデータを含むように構
成できる。
るデータは音高、音長及び発音時刻を決定するためのデ
ータを含み、前記音符データの他の一部に対応するデー
タは音の大きさを決定するためのデータを含むように構
成できる。
【0017】また、本発明の第5の態様に係る自動演奏
方法は、上記と同様の目的で、1つの音を発生するため
に使用される音符データによって構成された第1演奏デ
ータを格納し、前記音符データの一部に対応するデータ
によって構成された第2演奏データを格納し、前記格納
されている第2演奏データを用いるかどうかを指定し、
該指定がない場合は、前記第1演奏データに基づいて演
奏音を発生し、該指定がある場合は、前記第1演奏デー
タに含まれる各音符データの一部が、前記第2演奏デー
タに含まれる各データで夫々置き換えられた第1演奏デ
ータに基づいて演奏音を発生する、ように構成されてい
る。
方法は、上記と同様の目的で、1つの音を発生するため
に使用される音符データによって構成された第1演奏デ
ータを格納し、前記音符データの一部に対応するデータ
によって構成された第2演奏データを格納し、前記格納
されている第2演奏データを用いるかどうかを指定し、
該指定がない場合は、前記第1演奏データに基づいて演
奏音を発生し、該指定がある場合は、前記第1演奏デー
タに含まれる各音符データの一部が、前記第2演奏デー
タに含まれる各データで夫々置き換えられた第1演奏デ
ータに基づいて演奏音を発生する、ように構成されてい
る。
【0018】更に、本発明の第6の態様に係る自動演奏
方法は、上記と同様の目的で、1つの音を発生するため
に使用される音符データによって構成された第1演奏デ
ータを格納し、前記音符データの一部に対応するデータ
によって構成された第2演奏データを格納し、前記第2
演奏データを用いるかどうかを指定し、該指定がない場
合は、前記第1演奏データに基づいて演奏音を発生し、
該指定がある場合は、前記第1演奏データに含まれる各
音符データの一部に、前記第2演奏データに含まれる各
データが夫々演算された第1演奏データに基づいて演奏
音を発生する、ように構成されている。
方法は、上記と同様の目的で、1つの音を発生するため
に使用される音符データによって構成された第1演奏デ
ータを格納し、前記音符データの一部に対応するデータ
によって構成された第2演奏データを格納し、前記第2
演奏データを用いるかどうかを指定し、該指定がない場
合は、前記第1演奏データに基づいて演奏音を発生し、
該指定がある場合は、前記第1演奏データに含まれる各
音符データの一部に、前記第2演奏データに含まれる各
データが夫々演算された第1演奏データに基づいて演奏
音を発生する、ように構成されている。
【0019】これら第5及び第6の態様に係る自動演奏
方法においては、前記音符データは音高、音長、発音時
刻及び音の大きさを決定するデータを含み、前記音符デ
ータの一部に対応するデータは音の大きさを決定するた
めのデータを含むように構成できる。
方法においては、前記音符データは音高、音長、発音時
刻及び音の大きさを決定するデータを含み、前記音符デ
ータの一部に対応するデータは音の大きさを決定するた
めのデータを含むように構成できる。
【0020】
【発明の実施の形態】以下、本発明の自動演奏装置及び
自動演奏方法の実施の形態を図面を参照しながら詳細に
説明する。なお、本発明に係る自動演奏装置は、独立し
た自動演奏装置として構成することもできるが、以下に
説明する実施の形態では電子楽器に組み込まれた自動演
奏装置について説明する。また、本発明に係る自動演奏
装置は、コード展開しながらリズム演奏を行う所謂自動
伴奏装置にも適用できるが、説明を簡単にするために、
以下では、所定曲を単純に演奏する場合の例を説明す
る。
自動演奏方法の実施の形態を図面を参照しながら詳細に
説明する。なお、本発明に係る自動演奏装置は、独立し
た自動演奏装置として構成することもできるが、以下に
説明する実施の形態では電子楽器に組み込まれた自動演
奏装置について説明する。また、本発明に係る自動演奏
装置は、コード展開しながらリズム演奏を行う所謂自動
伴奏装置にも適用できるが、説明を簡単にするために、
以下では、所定曲を単純に演奏する場合の例を説明す
る。
【0021】(実施の形態1)この実施の形態1に係る
自動演奏装置は、A機種及びB機種で共通に使用される
1種類の第1演奏データと、A機種及びB機種で各別に
使用される2種類の第2演奏データとを有する。第1演
奏データは、音符データの一部分(キーナンバ、ステッ
プタイム及びゲートタイム)で構成され、第2演奏デー
タは、音符データの他の一部分(ベロシティ)で構成さ
れている。
自動演奏装置は、A機種及びB機種で共通に使用される
1種類の第1演奏データと、A機種及びB機種で各別に
使用される2種類の第2演奏データとを有する。第1演
奏データは、音符データの一部分(キーナンバ、ステッ
プタイム及びゲートタイム)で構成され、第2演奏デー
タは、音符データの他の一部分(ベロシティ)で構成さ
れている。
【0022】図1は、本発明の実施の形態に係る自動演
奏装置が適用された電子楽器の構成を示すブロック図で
ある。この電子楽器においては、CPU10、プログラ
ムメモリ11、ワークメモリ12、パネルインタフェー
ス回路13、鍵盤インタフェース回路15、演奏データ
メモリ17、波形メモリ18、音源19及び入力ポート
23がシステムバス30を介して相互に接続されてい
る。システムバス30は、例えばアドレスバス、データ
バス、制御信号バス等で構成されており、上記各要素間
のデータの送受を行うために使用される。
奏装置が適用された電子楽器の構成を示すブロック図で
ある。この電子楽器においては、CPU10、プログラ
ムメモリ11、ワークメモリ12、パネルインタフェー
ス回路13、鍵盤インタフェース回路15、演奏データ
メモリ17、波形メモリ18、音源19及び入力ポート
23がシステムバス30を介して相互に接続されてい
る。システムバス30は、例えばアドレスバス、データ
バス、制御信号バス等で構成されており、上記各要素間
のデータの送受を行うために使用される。
【0023】CPU10は、プログラムメモリ11に記
憶されている制御プログラムに従って動作する。このC
PU10は、電子楽器の各種機能を実現すると共に自動
演奏機能を実現するための処理を行う。このCPU10
によって行われる処理については、後に、フローチャー
トを参照しながら詳細に説明する。
憶されている制御プログラムに従って動作する。このC
PU10は、電子楽器の各種機能を実現すると共に自動
演奏機能を実現するための処理を行う。このCPU10
によって行われる処理については、後に、フローチャー
トを参照しながら詳細に説明する。
【0024】プログラムメモリ11は、例えばROMで
構成されている。このプログラムメモリ11には、上述
した制御プログラムの他に、CPU10が使用する種々
の固定データ、音色パラメータ等が記憶されている。音
色パラメータは、所定の音色の楽音(楽器音)を発生さ
せるために使用されるデータである。音色パラメータ
は、例えば音色及び鍵域毎に複数設けられており、各音
色パラメータは、例えば波形アドレス、周波数データ、
エンベロープデータ、フィルタ係数等で構成されてい
る。なお、このプログラムメモリ11はランダムアクセ
スメモリ(以下、「RAM」という)で構成することも
できる。この場合、例えば電源投入時に、例えばフロッ
ピーディスク、ICカード、CD−ROM等に記憶され
た制御プログラム、音色パラメータ等を該RAMにロー
ドするように構成すればよい。
構成されている。このプログラムメモリ11には、上述
した制御プログラムの他に、CPU10が使用する種々
の固定データ、音色パラメータ等が記憶されている。音
色パラメータは、所定の音色の楽音(楽器音)を発生さ
せるために使用されるデータである。音色パラメータ
は、例えば音色及び鍵域毎に複数設けられており、各音
色パラメータは、例えば波形アドレス、周波数データ、
エンベロープデータ、フィルタ係数等で構成されてい
る。なお、このプログラムメモリ11はランダムアクセ
スメモリ(以下、「RAM」という)で構成することも
できる。この場合、例えば電源投入時に、例えばフロッ
ピーディスク、ICカード、CD−ROM等に記憶され
た制御プログラム、音色パラメータ等を該RAMにロー
ドするように構成すればよい。
【0025】ワークメモリ12は、CPU10が各種処
理を行う際に使用する種々のデータを一時的に記憶す
る。このワークメモリ12には、例えばレジスタ、カウ
ンタ、フラグ等が割り当てられている。ワークメモリ1
2の割当内容については、後に詳細に説明する。
理を行う際に使用する種々のデータを一時的に記憶す
る。このワークメモリ12には、例えばレジスタ、カウ
ンタ、フラグ等が割り当てられている。ワークメモリ1
2の割当内容については、後に詳細に説明する。
【0026】パネルインタフェース回路13には操作パ
ネル14が接続されている。この操作パネル14には、
例えば図2に示すように、自動演奏スイッチ140、イ
ンジケータ141、曲選択スイッチ142、ディスプレ
イ装置143が設けられている。なお、電子楽器には、
通常上記の他に音色選択スイッチ、テンポ設定スイッ
チ、音響効果選択スイッチ、音量スイッチ、リズム選択
スイッチ、種々のインジケータ等が設けられているが、
図2では省略されている。
ネル14が接続されている。この操作パネル14には、
例えば図2に示すように、自動演奏スイッチ140、イ
ンジケータ141、曲選択スイッチ142、ディスプレ
イ装置143が設けられている。なお、電子楽器には、
通常上記の他に音色選択スイッチ、テンポ設定スイッ
チ、音響効果選択スイッチ、音量スイッチ、リズム選択
スイッチ、種々のインジケータ等が設けられているが、
図2では省略されている。
【0027】自動演奏スイッチ140は例えば押釦スイ
ッチで構成され、ユーザが自動演奏の開始及び停止を制
御するために使用される。この自動演奏スイッチ140
が押される毎に、電子楽器は、交互に自動演奏モード及
び通常演奏モードに入る。現在何れのモードにあるか
は、後述する自動演奏フラグによって記憶されると共
に、インジケータ141に表示される。インジケータ1
41は、電子楽器が自動演奏モードにある場合に点灯
し、通常演奏モードにある場合に消灯する。
ッチで構成され、ユーザが自動演奏の開始及び停止を制
御するために使用される。この自動演奏スイッチ140
が押される毎に、電子楽器は、交互に自動演奏モード及
び通常演奏モードに入る。現在何れのモードにあるか
は、後述する自動演奏フラグによって記憶されると共
に、インジケータ141に表示される。インジケータ1
41は、電子楽器が自動演奏モードにある場合に点灯
し、通常演奏モードにある場合に消灯する。
【0028】曲選択スイッチ142は、アップスイッチ
142aとダウンスイッチ142bとで構成されてい
る。アップスイッチ142a及びダウンスイッチ142
bは例えば押釦スイッチで構成されている。アップスイ
ッチ142aは曲番号をインクリメントし、ダウンスイ
ッチ142bは曲番号をデクリメントするために使用さ
れる。この曲選択スイッチ142によって選択された曲
番号は、後述する曲番号レジスタに記憶される。
142aとダウンスイッチ142bとで構成されてい
る。アップスイッチ142a及びダウンスイッチ142
bは例えば押釦スイッチで構成されている。アップスイ
ッチ142aは曲番号をインクリメントし、ダウンスイ
ッチ142bは曲番号をデクリメントするために使用さ
れる。この曲選択スイッチ142によって選択された曲
番号は、後述する曲番号レジスタに記憶される。
【0029】ディスプレイ装置143は、LCD、LE
D、CRTその他の表示器で構成できる。このディスプ
レイ装置143には種々のメッセージが表示される。例
えば、上述した曲番号はこのディスプレイ装置143に
表示され、その表示内容(曲番号)は曲選択スイッチ1
42が操作される毎に変化する。
D、CRTその他の表示器で構成できる。このディスプ
レイ装置143には種々のメッセージが表示される。例
えば、上述した曲番号はこのディスプレイ装置143に
表示され、その表示内容(曲番号)は曲選択スイッチ1
42が操作される毎に変化する。
【0030】パネルインタフェース回路13は、操作パ
ネル14とCPU10との間のデータの送受を制御す
る。即ち、パネルインタフェース回路13は、CPU1
0からの指令に応じて操作パネル14上の各スイッチを
スキャンする。そして、このスキャンにより得られた各
スイッチの開閉状態を示す信号に基づいて、各スイッチ
をそれぞれ1ビットに対応させたパネルデータを作成す
る。パネルデータの各ビットは、例えば「1」でスイッ
チオン、「0」でスイッチオフ状態を表す。このパネル
データは、システムバス30を介してCPU10に送ら
れる。CPU10は、このパネルデータに基づいて、操
作パネル14上の各スイッチのオンイベント又はオフイ
ベントが発生したかどうかを判断する。
ネル14とCPU10との間のデータの送受を制御す
る。即ち、パネルインタフェース回路13は、CPU1
0からの指令に応じて操作パネル14上の各スイッチを
スキャンする。そして、このスキャンにより得られた各
スイッチの開閉状態を示す信号に基づいて、各スイッチ
をそれぞれ1ビットに対応させたパネルデータを作成す
る。パネルデータの各ビットは、例えば「1」でスイッ
チオン、「0」でスイッチオフ状態を表す。このパネル
データは、システムバス30を介してCPU10に送ら
れる。CPU10は、このパネルデータに基づいて、操
作パネル14上の各スイッチのオンイベント又はオフイ
ベントが発生したかどうかを判断する。
【0031】また、パネルインタフェース回路13は、
CPU10から送られてきた文字、数字、記号等を表示
するための表示データをディスプレイ装置143に送
り、また、インジケートデータをインジケータ141に
送る。これにより、CPU10から送られてきた表示デ
ータに従ったメッセージがディスプレイ装置143に表
示され、また、インジケータ141が点灯又は消灯され
る。
CPU10から送られてきた文字、数字、記号等を表示
するための表示データをディスプレイ装置143に送
り、また、インジケートデータをインジケータ141に
送る。これにより、CPU10から送られてきた表示デ
ータに従ったメッセージがディスプレイ装置143に表
示され、また、インジケータ141が点灯又は消灯され
る。
【0032】鍵盤インタフェース回路15には鍵盤装置
16が接続されている。鍵盤装置16は、音程を指示す
るための複数の鍵を有している。この鍵盤装置16に
は、例えば2接点方式の鍵が用いられている。即ち、鍵
盤装置16の各鍵は、押鍵又は離鍵に応じて開閉する2
個のキースイッチを有している。これら各キースイッチ
のオン/オフを示すキースイッチ信号は、鍵盤インタフ
ェース回路15に供給される。
16が接続されている。鍵盤装置16は、音程を指示す
るための複数の鍵を有している。この鍵盤装置16に
は、例えば2接点方式の鍵が用いられている。即ち、鍵
盤装置16の各鍵は、押鍵又は離鍵に応じて開閉する2
個のキースイッチを有している。これら各キースイッチ
のオン/オフを示すキースイッチ信号は、鍵盤インタフ
ェース回路15に供給される。
【0033】鍵盤インタフェース15は、押鍵又は離鍵
に伴う各鍵のオン/オフ状態及び鍵タッチの強さを検出
する。即ち、鍵盤インタフェース15は、鍵盤装置16
からのキースイッチ信号に基づき各鍵のオン/オフ状態
を示すキーデータを生成する。また、上記両キースイッ
チのオン又はオフの時間差に基づき鍵タッチの強さを示
すタッチデータを生成する。これらキーデータ及びタッ
チデータは、CPU10に送られ。CPU10は、この
キーデータ及びタッチデータに基づいて、押鍵又は離鍵
に応じた発音又は消音処理を行う。
に伴う各鍵のオン/オフ状態及び鍵タッチの強さを検出
する。即ち、鍵盤インタフェース15は、鍵盤装置16
からのキースイッチ信号に基づき各鍵のオン/オフ状態
を示すキーデータを生成する。また、上記両キースイッ
チのオン又はオフの時間差に基づき鍵タッチの強さを示
すタッチデータを生成する。これらキーデータ及びタッ
チデータは、CPU10に送られ。CPU10は、この
キーデータ及びタッチデータに基づいて、押鍵又は離鍵
に応じた発音又は消音処理を行う。
【0034】演奏データメモリ17は、本発明の第1の
記憶手段及び第2の記憶手段に対応し、例えばROMで
構成されている。この演奏データメモリ17は、自動演
奏に使用される演奏データを記憶する。この演奏データ
メモリ17に記憶される演奏データの詳細については、
後に詳細に説明する。
記憶手段及び第2の記憶手段に対応し、例えばROMで
構成されている。この演奏データメモリ17は、自動演
奏に使用される演奏データを記憶する。この演奏データ
メモリ17に記憶される演奏データの詳細については、
後に詳細に説明する。
【0035】本発明の演奏音発生手段は、波形メモリ1
8、音源19、D/A変換器20、増幅器21、スピー
カ22及び上述したCPU10により構成されている。
8、音源19、D/A変換器20、増幅器21、スピー
カ22及び上述したCPU10により構成されている。
【0036】波形メモリ18は、例えばROMで構成さ
れ、波形データを記憶する。この波形メモリ18には、
複数の音色パラメータのそれぞれに対応した複数の波形
データが記憶されている。波形データは、例えば音信号
を電気信号に変換し、これをパルスコード変調(PC
M)することにより作成できる。この波形メモリ18
は、システムバス30を介して音源19によりアクセス
される。
れ、波形データを記憶する。この波形メモリ18には、
複数の音色パラメータのそれぞれに対応した複数の波形
データが記憶されている。波形データは、例えば音信号
を電気信号に変換し、これをパルスコード変調(PC
M)することにより作成できる。この波形メモリ18
は、システムバス30を介して音源19によりアクセス
される。
【0037】音源19は、複数の発音チャンネルを有し
ている。この音源19は、CPU10から指定された発
音チャンネルを使用して、音色パラメータに応じた楽音
信号を発生する。即ち、CPU10から発音チャンネル
の指定と音色パラメータを受け取ると、指定された発音
チャンネルは、波形メモリ18から波形データを読み出
し、これにエンベロープを付加することによりデジタル
楽音信号を生成する。このデジタル楽音信号は、D/A
変換器20に供給される。
ている。この音源19は、CPU10から指定された発
音チャンネルを使用して、音色パラメータに応じた楽音
信号を発生する。即ち、CPU10から発音チャンネル
の指定と音色パラメータを受け取ると、指定された発音
チャンネルは、波形メモリ18から波形データを読み出
し、これにエンベロープを付加することによりデジタル
楽音信号を生成する。このデジタル楽音信号は、D/A
変換器20に供給される。
【0038】D/A変換器20は、音源19からのデジ
タル楽音信号をアナログ楽音信号に変換して増幅器21
に送る。増幅器21は、受け取ったアナログ楽音信号を
増幅してスピーカ22に送る。スピーカ22は、増幅器
21からのアナログ楽音信号を音響信号に変換する。こ
れにより、スピーカ22から楽音が発生される。
タル楽音信号をアナログ楽音信号に変換して増幅器21
に送る。増幅器21は、受け取ったアナログ楽音信号を
増幅してスピーカ22に送る。スピーカ22は、増幅器
21からのアナログ楽音信号を音響信号に変換する。こ
れにより、スピーカ22から楽音が発生される。
【0039】入力ポート23は、本発明の指定手段に対
応する。この入力ポート23の一端側は、上述したよう
にシステムバス30に接続されており、他端側はジャン
パー線JPにより接地又はプルアップ(抵抗器Rを介し
て電源Vccに接続)できるように構成されている。こ
の入力ポート23は、複数の第2演奏データから1つを
選択するために使用される。即ち、CPU10は、この
入力ポート23から読み込んだデータが低レベル(Lレ
ベル)の場合はA機種用の第2演奏データを、高レベル
(Hレベル)の場合はB機種用の第2演奏データをそれ
ぞれ使用して自動伴奏を行う。
応する。この入力ポート23の一端側は、上述したよう
にシステムバス30に接続されており、他端側はジャン
パー線JPにより接地又はプルアップ(抵抗器Rを介し
て電源Vccに接続)できるように構成されている。こ
の入力ポート23は、複数の第2演奏データから1つを
選択するために使用される。即ち、CPU10は、この
入力ポート23から読み込んだデータが低レベル(Lレ
ベル)の場合はA機種用の第2演奏データを、高レベル
(Hレベル)の場合はB機種用の第2演奏データをそれ
ぞれ使用して自動伴奏を行う。
【0040】次に、演奏データメモリ17に格納される
演奏データの構成を、図3を参照しながら詳細に説明す
る。この演奏データメモリ17には、第1演奏データ、
A機種用の第2演奏データ及びB機種用の第2演奏デー
タが記憶されている。なお、この実施の形態1では、説
明を簡単にするために、A機種用及びB機種用といった
2種類の第2演奏データが使用されているが、3種類以
上の第2演奏データを使用することもできる。
演奏データの構成を、図3を参照しながら詳細に説明す
る。この演奏データメモリ17には、第1演奏データ、
A機種用の第2演奏データ及びB機種用の第2演奏デー
タが記憶されている。なお、この実施の形態1では、説
明を簡単にするために、A機種用及びB機種用といった
2種類の第2演奏データが使用されているが、3種類以
上の第2演奏データを使用することもできる。
【0041】また、第1演奏データ、A機種用の第2演
奏データ及びB機種用の第2演奏データの各々は、複数
の曲の演奏データを含んでいる。各曲の演奏データは、
図3に示すように、曲番号によって指定される。
奏データ及びB機種用の第2演奏データの各々は、複数
の曲の演奏データを含んでいる。各曲の演奏データは、
図3に示すように、曲番号によって指定される。
【0042】第1演奏データは、曲毎に複数の部分音符
データ(音符データの一部分をいう)と1つのENDデ
ータとで構成されている。各部分音符データは3バイト
で構成されており、各バイトにはキーナンバ、ステップ
タイム及びゲートタイムが割り当てられている。ここ
で、キーナンバは音高を指示するためのデータである。
ステップタイムは、発音時刻を指定するためのデータで
ある。ゲートタイムは発音の長さを指定するためのデー
タである。また、ENDデータは2バイトで構成されて
おり、各バイトにはエンドマーク及びステップタイムが
割り当てられている。エンドマークは特殊コードで構成
されており、1つの曲の終わりを指示するためのデータ
である。
データ(音符データの一部分をいう)と1つのENDデ
ータとで構成されている。各部分音符データは3バイト
で構成されており、各バイトにはキーナンバ、ステップ
タイム及びゲートタイムが割り当てられている。ここ
で、キーナンバは音高を指示するためのデータである。
ステップタイムは、発音時刻を指定するためのデータで
ある。ゲートタイムは発音の長さを指定するためのデー
タである。また、ENDデータは2バイトで構成されて
おり、各バイトにはエンドマーク及びステップタイムが
割り当てられている。エンドマークは特殊コードで構成
されており、1つの曲の終わりを指示するためのデータ
である。
【0043】A機種用の第2演奏データ及びB機種用の
第2演奏データの各々は、曲毎に上記部分音符データの
数に対応するバイト数のデータで構成されている。各バ
イトにはベロシティが割り当てられている。このベロシ
ティは発音の強さを指定するためのデータである。A機
種用の第2演奏データに含まれるベロシティとB機種用
の第2演奏データに含まれるベロシティとでは、そのベ
ロシティの値が異なる。なお、第1演奏データには、部
分音符データ及びENDデータの他に、例えば音色変
更、音量変更といった制御を行うための制御データが含
まれるが、図3では図示を省略している。また、部分音
符データであるかそれ以外のデータであるかは、第1バ
イト目(キーナンバ)の最上位ビットで区別される。
第2演奏データの各々は、曲毎に上記部分音符データの
数に対応するバイト数のデータで構成されている。各バ
イトにはベロシティが割り当てられている。このベロシ
ティは発音の強さを指定するためのデータである。A機
種用の第2演奏データに含まれるベロシティとB機種用
の第2演奏データに含まれるベロシティとでは、そのベ
ロシティの値が異なる。なお、第1演奏データには、部
分音符データ及びENDデータの他に、例えば音色変
更、音量変更といった制御を行うための制御データが含
まれるが、図3では図示を省略している。また、部分音
符データであるかそれ以外のデータであるかは、第1バ
イト目(キーナンバ)の最上位ビットで区別される。
【0044】次に、ワークメモリ12に定義されたレジ
スタ、カウンタ、フラグ等について、図4を参照しなが
ら説明する。
スタ、カウンタ、フラグ等について、図4を参照しなが
ら説明する。
【0045】自動演奏フラグは、この電子楽器が自動演
奏モードであるか通常演奏モードであるかを記憶する。
この自動演奏フラグは、自動演奏モードであれば
「1」、通常演奏モードであれば「0」に設定される。
曲番号レジスタは、曲選択スイッチ142によって選択
された曲の番号を記憶する。この曲番号レジスタの内容
は、第1演奏データ及び第2演奏データの中,から1つ
の曲に対応する部分(演奏データ)を選択するために使
用される。
奏モードであるか通常演奏モードであるかを記憶する。
この自動演奏フラグは、自動演奏モードであれば
「1」、通常演奏モードであれば「0」に設定される。
曲番号レジスタは、曲選択スイッチ142によって選択
された曲の番号を記憶する。この曲番号レジスタの内容
は、第1演奏データ及び第2演奏データの中,から1つ
の曲に対応する部分(演奏データ)を選択するために使
用される。
【0046】音符データポインタは、自動演奏処理(後
述)において、現在処理されている1つの部分音符デー
タを指すために使用される。ベロシティデータポインタ
は、自動演奏処理(後述)において、現在処理されてい
るベロシティデータを指すために使用される。
述)において、現在処理されている1つの部分音符デー
タを指すために使用される。ベロシティデータポインタ
は、自動演奏処理(後述)において、現在処理されてい
るベロシティデータを指すために使用される。
【0047】旧パネルデータレジスタは、前回のパネル
処理(後述する)で得られたパネルデータを記憶する。
新パネルデータレジスタは、今回のパネル処理で得られ
たパネルデータを記憶する。これら旧パネルデータレジ
スタ及び新パネルデータレジスタの内容に基づいて操作
パネル14上のスイッチのイベントがあったかどうかが
判断される。
処理(後述する)で得られたパネルデータを記憶する。
新パネルデータレジスタは、今回のパネル処理で得られ
たパネルデータを記憶する。これら旧パネルデータレジ
スタ及び新パネルデータレジスタの内容に基づいて操作
パネル14上のスイッチのイベントがあったかどうかが
判断される。
【0048】タイミングカウンタは、自動演奏の進行を
制御するために使用される。このタイミングカウンタの
内容は、電子楽器が自動演奏モードに入った時にクリア
され、その後、その時点で設定されているテンポに応じ
た速度でカウントアップされる。
制御するために使用される。このタイミングカウンタの
内容は、電子楽器が自動演奏モードに入った時にクリア
され、その後、その時点で設定されているテンポに応じ
た速度でカウントアップされる。
【0049】基底アドレスレジスタは、入力ポート23
からのデータに応じてA機種用の第2演奏データの先頭
アドレス又はB機種用の第2演奏データの先頭アドレス
を格納する。
からのデータに応じてA機種用の第2演奏データの先頭
アドレス又はB機種用の第2演奏データの先頭アドレス
を格納する。
【0050】曲番号−記憶位置変換テーブルは、曲番号
を、第1演奏データ、A機種用の第2演奏データ及びB
機種用の第2演奏データの中の、その曲番号に対応する
部分(演奏データ)の先頭アドレスに変換するために使
用される。
を、第1演奏データ、A機種用の第2演奏データ及びB
機種用の第2演奏データの中の、その曲番号に対応する
部分(演奏データ)の先頭アドレスに変換するために使
用される。
【0051】次に、上記のように構成された本発明の実
施の形態1に係る自動演奏装置が適用された電子楽器の
動作を、図5〜図7のフローチャートを参照しながら説
明する。
施の形態1に係る自動演奏装置が適用された電子楽器の
動作を、図5〜図7のフローチャートを参照しながら説
明する。
【0052】(1−1)メイン処理
図5は、この電子楽器のメイン処理を示すフローチャー
トである。このメイン処理ルーチンは、電源の投入によ
り起動される。このメイン処理ルーチンが起動される
と、先ず、初期化処理が行われる(ステップS10)。
この初期化処理では、CPU10の内部がリセットされ
ると共に、ワークメモリ12に定義されているバッフ
ァ、レジスタ、カウンタ、フラグ等が初期状態に設定さ
れる。例えば、この初期化処理では、入力ポート23か
らデータが読み込まれる。そして、読み込まれたデータ
がLレベルであればA機種用の第2演奏データの先頭ア
ドレス(曲番号1の演奏データの先頭アドレスに等し
い)が、基底アドレスレジスタにセットされる。一方、
読み込まれたデータがHレベルであればB機種用の第2
演奏データの先頭アドレス(曲番号1の演奏データの先
頭アドレスに等しい)が、基底アドレスレジスタにセッ
トされる。以下の処理においては、この第2演奏データ
先頭アドレスレジスタの内容が、第2演奏データを算出
する祭の基底アドレスとして使用される。
トである。このメイン処理ルーチンは、電源の投入によ
り起動される。このメイン処理ルーチンが起動される
と、先ず、初期化処理が行われる(ステップS10)。
この初期化処理では、CPU10の内部がリセットされ
ると共に、ワークメモリ12に定義されているバッフ
ァ、レジスタ、カウンタ、フラグ等が初期状態に設定さ
れる。例えば、この初期化処理では、入力ポート23か
らデータが読み込まれる。そして、読み込まれたデータ
がLレベルであればA機種用の第2演奏データの先頭ア
ドレス(曲番号1の演奏データの先頭アドレスに等し
い)が、基底アドレスレジスタにセットされる。一方、
読み込まれたデータがHレベルであればB機種用の第2
演奏データの先頭アドレス(曲番号1の演奏データの先
頭アドレスに等しい)が、基底アドレスレジスタにセッ
トされる。以下の処理においては、この第2演奏データ
先頭アドレスレジスタの内容が、第2演奏データを算出
する祭の基底アドレスとして使用される。
【0053】この初期化処理が終了すると、次いで、パ
ネル処理が行われる(ステップS11)。このパネル処
理では、操作パネル14上のスイッチの操作に対応する
処理や、表示器141の点灯又は消灯処理、及びディス
プレイ装置143にデータを表示する処理等が行われ
る。このパネル処理の詳細については後述する。
ネル処理が行われる(ステップS11)。このパネル処
理では、操作パネル14上のスイッチの操作に対応する
処理や、表示器141の点灯又は消灯処理、及びディス
プレイ装置143にデータを表示する処理等が行われ
る。このパネル処理の詳細については後述する。
【0054】次いで、鍵盤処理が行われる(ステップS
12)。この鍵盤処理では、発音処理、消音処理等が行
われる。この鍵盤処理の概要は以下の通りである。即
ち、先ず、鍵スキャン処理が行われる。この処理では、
鍵盤装置16から鍵盤インタフェース回路15を介して
キーデータ(以下、これを「新キーデータ」という)が
読み込まれ、新キーデータレジスタ(図示せず)に格納
される。そして、前回の鍵盤処理で鍵盤装置16から読
み込まれ、ワークメモリ12の旧キーデータレジスタ
(図示せず)に記憶されているキーデータ(以下、「旧
キーデータ」という)と上記新キーデータとの排他的論
理和演算が行われる。この演算結果は、キーイベントマ
ップとして、ワークメモリ12のキーイベントマップ領
域(図示せず)に格納される。その後、新キーデータは
旧キーデータとしてワークメモリ12の旧キーデータレ
ジスタに格納される。
12)。この鍵盤処理では、発音処理、消音処理等が行
われる。この鍵盤処理の概要は以下の通りである。即
ち、先ず、鍵スキャン処理が行われる。この処理では、
鍵盤装置16から鍵盤インタフェース回路15を介して
キーデータ(以下、これを「新キーデータ」という)が
読み込まれ、新キーデータレジスタ(図示せず)に格納
される。そして、前回の鍵盤処理で鍵盤装置16から読
み込まれ、ワークメモリ12の旧キーデータレジスタ
(図示せず)に記憶されているキーデータ(以下、「旧
キーデータ」という)と上記新キーデータとの排他的論
理和演算が行われる。この演算結果は、キーイベントマ
ップとして、ワークメモリ12のキーイベントマップ領
域(図示せず)に格納される。その後、新キーデータは
旧キーデータとしてワークメモリ12の旧キーデータレ
ジスタに格納される。
【0055】次いで、押鍵イベントがあるかどうかが調
べられる。これは、キーイベントマップ中のオンになっ
ているビットに対応する新キーデータ中のビットにオン
になっているビットが存在するかどうかを調べることに
より行われる。ここで、押鍵イベントがあることが判断
されると、次いで、キーイベントマップ中のオンになっ
ているビットに対応する新キーデータ中のオンになって
いるビットに割り当てられているノートナンバが算出さ
れる。
べられる。これは、キーイベントマップ中のオンになっ
ているビットに対応する新キーデータ中のビットにオン
になっているビットが存在するかどうかを調べることに
より行われる。ここで、押鍵イベントがあることが判断
されると、次いで、キーイベントマップ中のオンになっ
ているビットに対応する新キーデータ中のオンになって
いるビットに割り当てられているノートナンバが算出さ
れる。
【0056】次いで、発音処理が行われる。この発音処
理では、上述したようにして算出されたノートナンバ、
鍵盤インタフェース回路15から読み込まれたタッチデ
ータ及びその時点で選択されている音色等に基づきプロ
グラムメモリ11から1つの音色パラメータが読み出さ
れる。次いで、音源19中の1つの発音チャンネルが当
該音の発音用に割り当てられる。そして、上記読み出さ
れた音色パラメータが、この割り当てられた発音チャン
ネルに送られる。これにより、その発音チャンネルにお
いて、上記音色パラメータに基づいた楽音信号が生成さ
れ、これがD/A変換器20、増幅器21及びスピーカ
22に順次送られて鍵操作に基づく音が発生される。
理では、上述したようにして算出されたノートナンバ、
鍵盤インタフェース回路15から読み込まれたタッチデ
ータ及びその時点で選択されている音色等に基づきプロ
グラムメモリ11から1つの音色パラメータが読み出さ
れる。次いで、音源19中の1つの発音チャンネルが当
該音の発音用に割り当てられる。そして、上記読み出さ
れた音色パラメータが、この割り当てられた発音チャン
ネルに送られる。これにより、その発音チャンネルにお
いて、上記音色パラメータに基づいた楽音信号が生成さ
れ、これがD/A変換器20、増幅器21及びスピーカ
22に順次送られて鍵操作に基づく音が発生される。
【0057】一方、押鍵イベントがないことが判断され
ると、次いで、離鍵イベントがあるかどうかが調べられ
る。これは、上記キーイベントマップ中のオンになって
いるビットに対応する新キーデータ中のビットの中にオ
フになっているビットが存在するかどうかを調べること
により行われる。ここで、離鍵イベントがあることが判
断されると、上記と同様にして、キーイベントマップ中
のオンになっているビットに対応する新キーデータ中の
オフになっているビットに割り当てられているノートナ
ンバが算出される。次いで、算出されたノートナンバに
対応する音の消音処理が行われる。この消音処理では、
所定のデータが当該ノートナンバの発音用に割り当てら
れている発音チャンネルに送られる。これにより、当該
発音チャンネルで発音中の音が消音される。以上の処理
によって、鍵盤装置16の操作に応じた発音及び消音が
行われる。
ると、次いで、離鍵イベントがあるかどうかが調べられ
る。これは、上記キーイベントマップ中のオンになって
いるビットに対応する新キーデータ中のビットの中にオ
フになっているビットが存在するかどうかを調べること
により行われる。ここで、離鍵イベントがあることが判
断されると、上記と同様にして、キーイベントマップ中
のオンになっているビットに対応する新キーデータ中の
オフになっているビットに割り当てられているノートナ
ンバが算出される。次いで、算出されたノートナンバに
対応する音の消音処理が行われる。この消音処理では、
所定のデータが当該ノートナンバの発音用に割り当てら
れている発音チャンネルに送られる。これにより、当該
発音チャンネルで発音中の音が消音される。以上の処理
によって、鍵盤装置16の操作に応じた発音及び消音が
行われる。
【0058】以上の鍵盤処理が完了すると、次いで、自
動演奏処理が行われる(ステップS13)。この自動演
奏処理では、演奏データメモリ17から演奏データが読
み出され、この読み出された演奏データに基づいて演奏
音が発生される。この自動演奏処理の詳細については、
後述する。
動演奏処理が行われる(ステップS13)。この自動演
奏処理では、演奏データメモリ17から演奏データが読
み出され、この読み出された演奏データに基づいて演奏
音が発生される。この自動演奏処理の詳細については、
後述する。
【0059】次いで、「その他の処理」が行われる(ス
テップS14)。この「その他の処理」では、例えば図
示しないMIDIインタフェース回路を介して外部機器
との間でMIDIデータを送受信する処理等が行われ
る。その後、ステップS11に戻り、以下、同様の処理
が繰り返される。
テップS14)。この「その他の処理」では、例えば図
示しないMIDIインタフェース回路を介して外部機器
との間でMIDIデータを送受信する処理等が行われ
る。その後、ステップS11に戻り、以下、同様の処理
が繰り返される。
【0060】このように、メイン処理ルーチンの上記ス
テップS11〜S14の繰り返し実行の過程で操作パネ
ル14又は鍵盤装置16が操作されると、その操作に対
応する処理が行われ、電子楽器及び自動演奏装置として
の各種機能が実現されている。
テップS11〜S14の繰り返し実行の過程で操作パネ
ル14又は鍵盤装置16が操作されると、その操作に対
応する処理が行われ、電子楽器及び自動演奏装置として
の各種機能が実現されている。
【0061】(1−2)パネル処理
次に、パネル処理の詳細について、図6のフローチャー
トを参照しながら説明する。このパネル処理ルーチン
は、メイン処理ルーチンから一定周期でコールされる。
トを参照しながら説明する。このパネル処理ルーチン
は、メイン処理ルーチンから一定周期でコールされる。
【0062】パネル処理では、先ず、スイッチイベント
の有無が調べられる(ステップS20)。これは以下の
手順で行われる。先ず、CPU10は、操作パネル14
からパネルデータ(以下、「新パネルデータ」という)
を読み込み、新パネルデータレジスタに格納する。次い
で、この新パネルデータと、前回のパネル処理で読み込
まれて既に旧パネルデータレジスタに記憶されているパ
ネルデータ(以下、「旧パネルデータ」という)との排
他的論理和をとってパネルイベントマップを作成する。
このパネルイベントマップの全ビットがゼロであればス
イッチイベントは発生しなかったものと判断され、そう
でなければスイッチイベントが発生したものと判断され
る。
の有無が調べられる(ステップS20)。これは以下の
手順で行われる。先ず、CPU10は、操作パネル14
からパネルデータ(以下、「新パネルデータ」という)
を読み込み、新パネルデータレジスタに格納する。次い
で、この新パネルデータと、前回のパネル処理で読み込
まれて既に旧パネルデータレジスタに記憶されているパ
ネルデータ(以下、「旧パネルデータ」という)との排
他的論理和をとってパネルイベントマップを作成する。
このパネルイベントマップの全ビットがゼロであればス
イッチイベントは発生しなかったものと判断され、そう
でなければスイッチイベントが発生したものと判断され
る。
【0063】このステップS20でスイッチイベントが
ないことが判断されると、シーケンスはこのパネル処理
ルーチンからメイン処理ルーチンにリターンする。一
方、スイッチイベントがあることが判断されると、次い
で、自動演奏スイッチ140のオンイベントがあるかど
うかが調べられる(ステップS21)。これは、パネル
イベントマップ中の自動演奏スイッチ140に対応する
ビットが「1」であり、且つ新パネルデータ中の自動演
奏スイッチ140に対応するビットが「1」であるかど
うかを調べることにより行われる。ここで、自動演奏ス
イッチ140のオンイベントがないことが判断される
と、シーケンスはステップS26へ分岐する。
ないことが判断されると、シーケンスはこのパネル処理
ルーチンからメイン処理ルーチンにリターンする。一
方、スイッチイベントがあることが判断されると、次い
で、自動演奏スイッチ140のオンイベントがあるかど
うかが調べられる(ステップS21)。これは、パネル
イベントマップ中の自動演奏スイッチ140に対応する
ビットが「1」であり、且つ新パネルデータ中の自動演
奏スイッチ140に対応するビットが「1」であるかど
うかを調べることにより行われる。ここで、自動演奏ス
イッチ140のオンイベントがないことが判断される
と、シーケンスはステップS26へ分岐する。
【0064】一方、自動演奏スイッチ140のオンイベ
ントがあることが判断されると、次いで、自動演奏モー
ドであるかどうかが調べられる(ステップS22)。こ
れは、自動演奏フラグを調べることにより行われる。自
動演奏モードであるかどうかの判断は、以下においても
同じ方法で行われる。
ントがあることが判断されると、次いで、自動演奏モー
ドであるかどうかが調べられる(ステップS22)。こ
れは、自動演奏フラグを調べることにより行われる。自
動演奏モードであるかどうかの判断は、以下においても
同じ方法で行われる。
【0065】そして、自動演奏モードであることが判断
されると、自動演奏フラグが「0」にクリアされ(ステ
ップS23)、その後シーケンスはステップS26に進
む。一方、自動演奏モードでないことが判断されると自
動演奏フラグが「1」にセットされ(ステップS2
4)、次いで、自動演奏開始処理が行われる(ステップ
S25)。
されると、自動演奏フラグが「0」にクリアされ(ステ
ップS23)、その後シーケンスはステップS26に進
む。一方、自動演奏モードでないことが判断されると自
動演奏フラグが「1」にセットされ(ステップS2
4)、次いで、自動演奏開始処理が行われる(ステップ
S25)。
【0066】この自動演奏開始処理では、先ず、音符デ
ータポインタ及びベロシティデータポインタに初期値が
設定される。即ち、第1演奏データの中の、その時点で
選択されている曲(曲番号レジスタに曲番号として格納
されている)に対応する部分(演奏データ)の先頭アド
レスが曲番号−記憶位置変換テーブルから読み出され、
音符データポインタにセットされる。
ータポインタ及びベロシティデータポインタに初期値が
設定される。即ち、第1演奏データの中の、その時点で
選択されている曲(曲番号レジスタに曲番号として格納
されている)に対応する部分(演奏データ)の先頭アド
レスが曲番号−記憶位置変換テーブルから読み出され、
音符データポインタにセットされる。
【0067】同様に、第2演奏データの中の、その時点
で選択されている曲に対応する部分(演奏データ)の先
頭アドレスが曲番号−記憶位置変換テーブルから読み出
され、更に基底アドレスレジスタの内容が加算されてベ
ロシティデータポインタにセットされる。これにより、
入力ポート23からのデータに応じてA機種用又はB機
種用の何れかの第2演奏データが選択され、且つ選択さ
れた第2演奏データの曲番号に対応する部分の先頭アド
レスがベロシティデータポインタにセットされることに
なる。
で選択されている曲に対応する部分(演奏データ)の先
頭アドレスが曲番号−記憶位置変換テーブルから読み出
され、更に基底アドレスレジスタの内容が加算されてベ
ロシティデータポインタにセットされる。これにより、
入力ポート23からのデータに応じてA機種用又はB機
種用の何れかの第2演奏データが選択され、且つ選択さ
れた第2演奏データの曲番号に対応する部分の先頭アド
レスがベロシティデータポインタにセットされることに
なる。
【0068】また、自動演奏開始処理では、タイミング
カウンタの内容がゼロにクリアされると共に、カウント
イネーブルにされる。これにより、タイミングカウンタ
は、その時点で設定されているテンポに応じたインター
バルでカウントアップ動作を開始する。その後シーケン
スはステップS26に分岐する。
カウンタの内容がゼロにクリアされると共に、カウント
イネーブルにされる。これにより、タイミングカウンタ
は、その時点で設定されているテンポに応じたインター
バルでカウントアップ動作を開始する。その後シーケン
スはステップS26に分岐する。
【0069】上記ステップS22〜S24の処理によ
り、自動演奏スイッチ140が押される度に自動演奏モ
ードと通常演奏モードとが交互に反転する。また、上記
ステップS25の処理により、演奏データメモリ17内
の部分音符データ及びベロシティデータを実際に読み出
すアドレスが決定される。
り、自動演奏スイッチ140が押される度に自動演奏モ
ードと通常演奏モードとが交互に反転する。また、上記
ステップS25の処理により、演奏データメモリ17内
の部分音符データ及びベロシティデータを実際に読み出
すアドレスが決定される。
【0070】ステップS26では、曲選択スイッチ14
2のオンイベントがあるかどうかが調べられる。これ
は、パネルイベントマップ中のアップスイッチ142a
又はダウンスイッチ142bの中の何れかに対応するビ
ットが「1」であり、且つ新パネルデータ中のこれらの
スイッチに対応するビットが「1」であるかどうかを順
次調べることにより行われる。ここで、曲選択スイッチ
142の中の何れかのスイッチのオンイベントがあるこ
とが判断されると、オンイベントのあったスイッチに対
応して曲番号が変更される(ステップS27)。即ち、
アップスイッチ142aのオンイベントであれば曲番号
レジスタの内容がインクリメントされ、ダウンスイッチ
142bのオンイベントであれば曲番号レジスタの内容
がデクリメントされる。これらインクリメント又はデク
リメントした結果得られる曲番号は、ディスプレイ装置
143に表示される。上記ステップS26で曲選択スイ
ッチ142のイベントがないことが判断されると、ステ
ップS27はスキップされる。
2のオンイベントがあるかどうかが調べられる。これ
は、パネルイベントマップ中のアップスイッチ142a
又はダウンスイッチ142bの中の何れかに対応するビ
ットが「1」であり、且つ新パネルデータ中のこれらの
スイッチに対応するビットが「1」であるかどうかを順
次調べることにより行われる。ここで、曲選択スイッチ
142の中の何れかのスイッチのオンイベントがあるこ
とが判断されると、オンイベントのあったスイッチに対
応して曲番号が変更される(ステップS27)。即ち、
アップスイッチ142aのオンイベントであれば曲番号
レジスタの内容がインクリメントされ、ダウンスイッチ
142bのオンイベントであれば曲番号レジスタの内容
がデクリメントされる。これらインクリメント又はデク
リメントした結果得られる曲番号は、ディスプレイ装置
143に表示される。上記ステップS26で曲選択スイ
ッチ142のイベントがないことが判断されると、ステ
ップS27はスキップされる。
【0071】次いで、「その他のスイッチ処理」が行わ
れる(ステップS28)。この「その他のスイッチ処
理」では、例えば音色選択スイッチのイベントに応じた
音色変更処理、テンポ設定スイッチのイベントに応じた
テンポ設定処理、音響効果選択スイッチのイベントに応
じた音響効果付与処理、音量スイッチのイベントに応じ
た音量変更処理等が行われる。そして、最後に、新パネ
ルデータが旧パネルデータレジスタに移動され(図示し
ない)、パネル処理は完了する。
れる(ステップS28)。この「その他のスイッチ処
理」では、例えば音色選択スイッチのイベントに応じた
音色変更処理、テンポ設定スイッチのイベントに応じた
テンポ設定処理、音響効果選択スイッチのイベントに応
じた音響効果付与処理、音量スイッチのイベントに応じ
た音量変更処理等が行われる。そして、最後に、新パネ
ルデータが旧パネルデータレジスタに移動され(図示し
ない)、パネル処理は完了する。
【0072】(1−3)自動演奏処理
次に、自動演奏処理の詳細について、図7のフローチャ
ートを参照しながら説明する。この自動演奏処理ルーチ
ンは、メイン処理ルーチンから一定周期でコールされ
る。
ートを参照しながら説明する。この自動演奏処理ルーチ
ンは、メイン処理ルーチンから一定周期でコールされ
る。
【0073】自動演奏処理では、先ず、電子楽器が自動
演奏モードにあるかどうかが調べられる(ステップS3
0)。ここで、自動演奏モードにない、つまり通常演奏
モードにあることがことが判断されると、シーケンスは
メイン処理ルーチンにリターンする。これにより自動演
奏を停止する機能が実現されている。
演奏モードにあるかどうかが調べられる(ステップS3
0)。ここで、自動演奏モードにない、つまり通常演奏
モードにあることがことが判断されると、シーケンスは
メイン処理ルーチンにリターンする。これにより自動演
奏を停止する機能が実現されている。
【0074】一方、自動演奏モードであることが判断さ
れると、タイミングカウンタの内容がステップタイムデ
ータに一致するかどうかが調べられる(ステップS3
1)。即ち、音符データポインタで指される位置から3
バイトのデータが読み出され、ワークメモリ12の所定
領域に記憶される。そして、そのデータの2バイト目に
格納されているステップタイムデータ(部分音符デー
タ、ENDデータ、その他の制御データを問わず、第2
バイト目にはステップタイムデータが格納されている)
とタイミングカウンタの内容とが比較される。ここで、
タイミングカウンタの内容がステップタイムデータに一
致しないことが判断されると、当該部分音符データは、
未だ発音タイミングに至っていないものと認識され、シ
ーケンスはメイン処理ルーチンにリターンする。
れると、タイミングカウンタの内容がステップタイムデ
ータに一致するかどうかが調べられる(ステップS3
1)。即ち、音符データポインタで指される位置から3
バイトのデータが読み出され、ワークメモリ12の所定
領域に記憶される。そして、そのデータの2バイト目に
格納されているステップタイムデータ(部分音符デー
タ、ENDデータ、その他の制御データを問わず、第2
バイト目にはステップタイムデータが格納されている)
とタイミングカウンタの内容とが比較される。ここで、
タイミングカウンタの内容がステップタイムデータに一
致しないことが判断されると、当該部分音符データは、
未だ発音タイミングに至っていないものと認識され、シ
ーケンスはメイン処理ルーチンにリターンする。
【0075】一方、上記ステップS31でタイミングカ
ウンタの内容がステップタイムデータに一致することが
判断されると、次いで、上記ワークメモリ12の所定領
域に格納されているデータは、部分音符データであるか
どうかが調べられる(ステップS32)。これは、該デ
ータの第1バイト目の最上位ビットを調べることにより
行われる。
ウンタの内容がステップタイムデータに一致することが
判断されると、次いで、上記ワークメモリ12の所定領
域に格納されているデータは、部分音符データであるか
どうかが調べられる(ステップS32)。これは、該デ
ータの第1バイト目の最上位ビットを調べることにより
行われる。
【0076】このステップS32で、部分音符データで
あることが判断されると、次いで、ベロシティデータの
読み込みが行われる(ステップS33)。即ち、ベロシ
ティデータポインタで指定される位置から1バイトのベ
ロシティデータが読み出される。これにより、1つの音
を発生するために必要なキーナンバ、ゲートタイム及び
ベロシティの各データが揃う。次いで、発音処理が行わ
れる(ステップS34)。
あることが判断されると、次いで、ベロシティデータの
読み込みが行われる(ステップS33)。即ち、ベロシ
ティデータポインタで指定される位置から1バイトのベ
ロシティデータが読み出される。これにより、1つの音
を発生するために必要なキーナンバ、ゲートタイム及び
ベロシティの各データが揃う。次いで、発音処理が行わ
れる(ステップS34)。
【0077】発音処理では、音源19の所定の発音チャ
ンネルに発音が割り当てられる。そして、音符データ中
のキーナンバ、ベロシティ、及びその時点で選択されて
いる音色等に基づきプログラムメモリ11から音色パラ
メータを読み出され、これらが音源19の割り当てられ
た発音チャンネルに送られる。これにより、該発音チャ
ンネルにおいて、上記音色パラメータに基づいたデジタ
ル楽音信号が生成され、これがD/A変換器20、増幅
器21及びスピーカ22に順次送られて演奏音が発音さ
れる。なお、消音は、図示しない消音処理ルーチンでゲ
ートタイムがゼロになった音源19中の発音チャンネル
が検索され、この発音チャンネルに所定のデータが送ら
れることにより行われる。
ンネルに発音が割り当てられる。そして、音符データ中
のキーナンバ、ベロシティ、及びその時点で選択されて
いる音色等に基づきプログラムメモリ11から音色パラ
メータを読み出され、これらが音源19の割り当てられ
た発音チャンネルに送られる。これにより、該発音チャ
ンネルにおいて、上記音色パラメータに基づいたデジタ
ル楽音信号が生成され、これがD/A変換器20、増幅
器21及びスピーカ22に順次送られて演奏音が発音さ
れる。なお、消音は、図示しない消音処理ルーチンでゲ
ートタイムがゼロになった音源19中の発音チャンネル
が検索され、この発音チャンネルに所定のデータが送ら
れることにより行われる。
【0078】次いで、ベロシティデータポインタの更新
が行われる(ステップS35)。即ち、ベロシティデー
タポインタの内容がインクリメント(+1)される。次
いで、音符データポインタの更新が行われる(ステップ
S36)。即ち、音符データポインタの内容がインクリ
メント(+3)される。その後、シーケンスはステップ
S31に戻り、以下同様の処理が繰り返される。この繰
り返し処理により、現在のタイミングカウンタの内容と
異なるステップタイムデータを有する部分音符データが
出現するまで発音処理が行われる。
が行われる(ステップS35)。即ち、ベロシティデー
タポインタの内容がインクリメント(+1)される。次
いで、音符データポインタの更新が行われる(ステップ
S36)。即ち、音符データポインタの内容がインクリ
メント(+3)される。その後、シーケンスはステップ
S31に戻り、以下同様の処理が繰り返される。この繰
り返し処理により、現在のタイミングカウンタの内容と
異なるステップタイムデータを有する部分音符データが
出現するまで発音処理が行われる。
【0079】一方、上記ステップS32で、部分音符デ
ータでないことが判断されると、その他の処理が行われ
る(ステップS37)。その「その他の処理」には、E
NDデータである場合の自動演奏終了処理、制御データ
である場合の各種制御処理が含まれる。例えば、自動演
奏終了処理では、自動演奏フラグが「0」にクリアされ
る。これにより、メイン処理ルーチンから自動演奏処理
ルーチンがコールされてもステップS30における判断
に従って直ちにメイン処理ルートにリターンするので、
自動演奏は行われない。また、例えば音色を変更するた
めの制御処理では、現在の音色を記憶している図示しな
いレジスタの内容が変更される。これにより、以降の発
音処理(ステップS34)では、選択される音色パラメ
ータが、その音色に対応するものに変更されるので、自
動演奏の音色が変更される。その後、シーケンスはステ
ップS36に分岐し、以下同様の処理が繰り返される。
なお、この「その他の処理」が行われる場合は、ベロシ
ティデータポインタの内容は変更されないので、部分音
符データとベロシティデータとの対応関係が破壊される
ことはない。
ータでないことが判断されると、その他の処理が行われ
る(ステップS37)。その「その他の処理」には、E
NDデータである場合の自動演奏終了処理、制御データ
である場合の各種制御処理が含まれる。例えば、自動演
奏終了処理では、自動演奏フラグが「0」にクリアされ
る。これにより、メイン処理ルーチンから自動演奏処理
ルーチンがコールされてもステップS30における判断
に従って直ちにメイン処理ルートにリターンするので、
自動演奏は行われない。また、例えば音色を変更するた
めの制御処理では、現在の音色を記憶している図示しな
いレジスタの内容が変更される。これにより、以降の発
音処理(ステップS34)では、選択される音色パラメ
ータが、その音色に対応するものに変更されるので、自
動演奏の音色が変更される。その後、シーケンスはステ
ップS36に分岐し、以下同様の処理が繰り返される。
なお、この「その他の処理」が行われる場合は、ベロシ
ティデータポインタの内容は変更されないので、部分音
符データとベロシティデータとの対応関係が破壊される
ことはない。
【0080】上記の実施の形態1では、入力ポート23
から得られたデータに基づいて、複数の第2演奏データ
から1つの演奏データを選択するように構成したが、操
作パネル14上に、第2演奏データ選択用のスイッチを
設け、このスイッチの設定状態に応じて1つの第2演奏
データを選択するように構成してもよい。更には、電子
楽器に各種パラメータを設定するためのシステム値設定
モードを有する電子楽器では、このシステム設定値モー
ドにおいて、所定の値を設定することにより、複数の第
2演奏データの中から1つの演奏データを選択するよう
に構成してもよい。
から得られたデータに基づいて、複数の第2演奏データ
から1つの演奏データを選択するように構成したが、操
作パネル14上に、第2演奏データ選択用のスイッチを
設け、このスイッチの設定状態に応じて1つの第2演奏
データを選択するように構成してもよい。更には、電子
楽器に各種パラメータを設定するためのシステム値設定
モードを有する電子楽器では、このシステム設定値モー
ドにおいて、所定の値を設定することにより、複数の第
2演奏データの中から1つの演奏データを選択するよう
に構成してもよい。
【0081】また、上記実施の形態1では、第2演奏デ
ータを構成する各ベロシティデータは第1演奏データを
構成する部分音符データの1つと1対1に対応するよう
に構成したが、各第2演奏データは、各キーナンバに対
応するベロシティデータで構成することができる。この
場合、自動演奏処理のステップS33では、部分音符デ
ータに含まれるキーナンバに対応するベロシティデータ
を第2演奏データから読み出すように構成すればよい。
ータを構成する各ベロシティデータは第1演奏データを
構成する部分音符データの1つと1対1に対応するよう
に構成したが、各第2演奏データは、各キーナンバに対
応するベロシティデータで構成することができる。この
場合、自動演奏処理のステップS33では、部分音符デ
ータに含まれるキーナンバに対応するベロシティデータ
を第2演奏データから読み出すように構成すればよい。
【0082】(実施の形態2)この実施の形態2に係る
自動演奏装置では、1種類の第1演奏データと1種類の
第2演奏データとを有する。図8に示されるように、第
1演奏データは、音符データ(キーナンバ、ステップタ
イム、ゲートタイム及びベロシティ)で構成され、第2
演奏データは音符データの一部分(ベロシティ)で構成
されている。A機種では第1演奏データに含まれる各音
符データはそのまま使用される。B機種では、第1演奏
データに含まれる各音符データのベロシティが第2演奏
データに含まれる各ベロシティデータで置き換えられる
ことにより形成される音符データが使用される。
自動演奏装置では、1種類の第1演奏データと1種類の
第2演奏データとを有する。図8に示されるように、第
1演奏データは、音符データ(キーナンバ、ステップタ
イム、ゲートタイム及びベロシティ)で構成され、第2
演奏データは音符データの一部分(ベロシティ)で構成
されている。A機種では第1演奏データに含まれる各音
符データはそのまま使用される。B機種では、第1演奏
データに含まれる各音符データのベロシティが第2演奏
データに含まれる各ベロシティデータで置き換えられる
ことにより形成される音符データが使用される。
【0083】本実施の形態2に係る自動演奏装置が適用
された電子楽器の構成は、上述した実施の形態1の電子
楽器の構成(図1のブロック図)と同じである。
された電子楽器の構成は、上述した実施の形態1の電子
楽器の構成(図1のブロック図)と同じである。
【0084】ワークメモリ12に設けられた基底アドレ
スレジスタには、本電子楽器がA機種として動作する場
合に「0」セットされ、B機種として動作する場合は
「1」がセットされる。また、曲番号−記憶位置変換テ
ーブルは、曲番号を、第1演奏データ及び第2演奏デー
タの中の、その曲番号に対応する部分(演奏データ)の
先頭アドレスに変換するために使用される。
スレジスタには、本電子楽器がA機種として動作する場
合に「0」セットされ、B機種として動作する場合は
「1」がセットされる。また、曲番号−記憶位置変換テ
ーブルは、曲番号を、第1演奏データ及び第2演奏デー
タの中の、その曲番号に対応する部分(演奏データ)の
先頭アドレスに変換するために使用される。
【0085】次に、上記のように構成された本発明の実
施の形態2に係る自動演奏装置が適用された電子楽器の
動作を、図5、図6及び図9のフローチャートを参照し
ながら説明する。なお、上述した実施の形態1と同一又
は相当部分には同一符号を付して説明は省略乃至簡略化
し、相違部分を中心に説明する。
施の形態2に係る自動演奏装置が適用された電子楽器の
動作を、図5、図6及び図9のフローチャートを参照し
ながら説明する。なお、上述した実施の形態1と同一又
は相当部分には同一符号を付して説明は省略乃至簡略化
し、相違部分を中心に説明する。
【0086】(2−1)メイン処理
この電子楽器のメイン処理は、初期化処理(ステップS
10)の処理内容を除き、実施の形態1のメイン処理
(図5に示すフローチャート参照)と同じである。
10)の処理内容を除き、実施の形態1のメイン処理
(図5に示すフローチャート参照)と同じである。
【0087】この実施の形態2における初期化処理で
は、入力ポート23から読み込まれたデータがLレベル
であればA機種として動作すべき旨が認識され、「0」
が基底アドレスレジスタにセットされる。一方、読み込
まれたデータがHレベルであればB機種として動作すべ
き旨が認識され、「1」が基底アドレスレジスタにセッ
トされる。以下の処理においては、この基底アドレスレ
ジスタの内容に従って、使用する演奏データが選択され
る。
は、入力ポート23から読み込まれたデータがLレベル
であればA機種として動作すべき旨が認識され、「0」
が基底アドレスレジスタにセットされる。一方、読み込
まれたデータがHレベルであればB機種として動作すべ
き旨が認識され、「1」が基底アドレスレジスタにセッ
トされる。以下の処理においては、この基底アドレスレ
ジスタの内容に従って、使用する演奏データが選択され
る。
【0088】(2−2)パネル処理
この電子楽器のパネル処理は、自動演奏開始処理(ステ
ップS25)の処理内容を除き、実施の形態1のパネル
処理(図6に示すフローチャート参照)と同じである。
ップS25)の処理内容を除き、実施の形態1のパネル
処理(図6に示すフローチャート参照)と同じである。
【0089】この自動演奏開始処理では、先ず、音符デ
ータポインタ及びベロシティデータポインタに初期値が
設定される。即ち、第1演奏データの中の、その時点で
選択されている曲(曲番号レジスタに曲番号として格納
されている)に対応する部分(演奏データ)の先頭アド
レスが曲番号−記憶位置変換テーブルから読み出され、
音符データポインタにセットされる。
ータポインタ及びベロシティデータポインタに初期値が
設定される。即ち、第1演奏データの中の、その時点で
選択されている曲(曲番号レジスタに曲番号として格納
されている)に対応する部分(演奏データ)の先頭アド
レスが曲番号−記憶位置変換テーブルから読み出され、
音符データポインタにセットされる。
【0090】同様に、第2演奏データの中の、その時点
で選択されている曲に対応する部分(演奏データ)の先
頭アドレスが曲番号−記憶位置変換テーブルから読み出
されてベロシティデータポインタにセットされる。この
ベロシティデータポインタの内容は、本電子楽器がB機
種として動作するときにのみ参照される。
で選択されている曲に対応する部分(演奏データ)の先
頭アドレスが曲番号−記憶位置変換テーブルから読み出
されてベロシティデータポインタにセットされる。この
ベロシティデータポインタの内容は、本電子楽器がB機
種として動作するときにのみ参照される。
【0091】(2−3)自動演奏処理
次に、自動演奏処理の詳細について、図9のフローチャ
ートを参照しながら説明する。この自動演奏処理ルーチ
ンは、メイン処理ルーチンから一定周期でコールされ
る。
ートを参照しながら説明する。この自動演奏処理ルーチ
ンは、メイン処理ルーチンから一定周期でコールされ
る。
【0092】ステップS30の処理は、上述した実施の
形態1の処理(図7のフローチャート参照)と同じであ
る。このステップS30で、自動演奏モードであること
が判断されると、タイミングカウンタの内容がステップ
タイムデータに一致するかどうかが調べられる(ステッ
プS31)。この際、音符データポインタで指される位
置から4バイトのデータが読み出される点が、3バイト
のデータが読み出される上記実施の形態1と異なる。
形態1の処理(図7のフローチャート参照)と同じであ
る。このステップS30で、自動演奏モードであること
が判断されると、タイミングカウンタの内容がステップ
タイムデータに一致するかどうかが調べられる(ステッ
プS31)。この際、音符データポインタで指される位
置から4バイトのデータが読み出される点が、3バイト
のデータが読み出される上記実施の形態1と異なる。
【0093】このステップS31でタイミングカウンタ
の内容がステップタイムデータに一致することが判断さ
れると、次いで、上記ワークメモリ12の所定領域に格
納されているデータは、音符データであるかどうかが調
べられる(ステップS32)。これは、該データの第1
バイト目の最上位ビットを調べることにより行われる。
の内容がステップタイムデータに一致することが判断さ
れると、次いで、上記ワークメモリ12の所定領域に格
納されているデータは、音符データであるかどうかが調
べられる(ステップS32)。これは、該データの第1
バイト目の最上位ビットを調べることにより行われる。
【0094】このステップS32で、音符データである
ことが判断されると、次いで、第2演奏データを使用す
るかどうかが調べられる(ステップS40)。これは、
基底レジスタの内容を調べることにより行われる。ここ
で第2演奏データを使用しない(基底レジスタの内容が
「0」である)ことが判断されると、ステップS33の
処理はスキップされる。この場合、先に読み出してワー
クメモリ12の所定領域に格納されている音符データ
(キーナンバ、ステップタイム、ゲートタイム及びベロ
シティ)が発音に使用される。
ことが判断されると、次いで、第2演奏データを使用す
るかどうかが調べられる(ステップS40)。これは、
基底レジスタの内容を調べることにより行われる。ここ
で第2演奏データを使用しない(基底レジスタの内容が
「0」である)ことが判断されると、ステップS33の
処理はスキップされる。この場合、先に読み出してワー
クメモリ12の所定領域に格納されている音符データ
(キーナンバ、ステップタイム、ゲートタイム及びベロ
シティ)が発音に使用される。
【0095】一方、第2演奏データを使用する(基底レ
ジスタの内容が「1」である)ことが判断されると、ベ
ロシティデータの読み込みが行われる(ステップS3
3)。即ち、ベロシティデータポインタで指定される位
置から1バイトのベロシティデータが読み出される。そ
して、上記ワークメモリ12の所定領域に格納されいて
る音符データのベロシティ部分がこのベロシティデータ
によって置き換えられる。この場合、ベロシティデータ
が置き換えられた音符データが発音に使用される。
ジスタの内容が「1」である)ことが判断されると、ベ
ロシティデータの読み込みが行われる(ステップS3
3)。即ち、ベロシティデータポインタで指定される位
置から1バイトのベロシティデータが読み出される。そ
して、上記ワークメモリ12の所定領域に格納されいて
る音符データのベロシティ部分がこのベロシティデータ
によって置き換えられる。この場合、ベロシティデータ
が置き換えられた音符データが発音に使用される。
【0096】次いで、発音処理が行われる(ステップS
34)。次いで、ベロシティデータポインタの更新が行
われる(ステップS35)。即ち、ベロシティデータポ
インタの内容がインクリメント(+1)される。なお、
このステップS35の処理は第2演奏データが使用され
ないときは無意味であるので、その場合は省略するよう
に構成してもよい。
34)。次いで、ベロシティデータポインタの更新が行
われる(ステップS35)。即ち、ベロシティデータポ
インタの内容がインクリメント(+1)される。なお、
このステップS35の処理は第2演奏データが使用され
ないときは無意味であるので、その場合は省略するよう
に構成してもよい。
【0097】次いで、音符データポインタの更新が行わ
れる(ステップS36)。この際、音符データポインタ
が「+4」される点が、「+3」される上記実施の形態
1と異なる。その後、シーケンスはステップS31に戻
り、以下同様の処理が繰り返される。
れる(ステップS36)。この際、音符データポインタ
が「+4」される点が、「+3」される上記実施の形態
1と異なる。その後、シーケンスはステップS31に戻
り、以下同様の処理が繰り返される。
【0098】一方、上記ステップS32で、部分音符デ
ータでないことが判断されると、その他の処理が行われ
る(ステップS37)。その「その他の処理」は、実施
の形態1のそれと同じである。
ータでないことが判断されると、その他の処理が行われ
る(ステップS37)。その「その他の処理」は、実施
の形態1のそれと同じである。
【0099】なお、上記実施の形態2では、第2演奏デ
ータを構成する各ベロシティデータは第1演奏データを
構成する音符データの1つと1対1に対応するように構
成したが、各第2演奏データは、各キーナンバに対応す
るベロシティデータで構成することができる。この場
合、自動演奏処理のステップS33では、音符データに
含まれるキーナンバに対応するベロシティデータを第2
演奏データから読み出すように構成すればよい。
ータを構成する各ベロシティデータは第1演奏データを
構成する音符データの1つと1対1に対応するように構
成したが、各第2演奏データは、各キーナンバに対応す
るベロシティデータで構成することができる。この場
合、自動演奏処理のステップS33では、音符データに
含まれるキーナンバに対応するベロシティデータを第2
演奏データから読み出すように構成すればよい。
【0100】(実施の形態3)この実施の形態3に係る
自動演奏装置は、1種類の第1演奏データと1種類の第
2演奏データとを有する。図10に示されるように、第
1演奏データは、音符データ(キーナンバ、ステップタ
イム、ゲートタイム及びベロシティ)で構成され、第2
演奏データは、上記音符データに含まれるベロシティに
対する変位データで構成されている。ここで、変位デー
タは、例えば2の補数形式で表されている。従って、変
位データは、正、ゼロ及び負の値をとることができる。
A機種では第1演奏データに含まれる各音符データはそ
のまま使用される。B機種では、第1演奏データに含ま
れる各音符データのベロシティに第2演奏データに含ま
れる変位データが加算されることにより形成される音符
データが記憶される。
自動演奏装置は、1種類の第1演奏データと1種類の第
2演奏データとを有する。図10に示されるように、第
1演奏データは、音符データ(キーナンバ、ステップタ
イム、ゲートタイム及びベロシティ)で構成され、第2
演奏データは、上記音符データに含まれるベロシティに
対する変位データで構成されている。ここで、変位デー
タは、例えば2の補数形式で表されている。従って、変
位データは、正、ゼロ及び負の値をとることができる。
A機種では第1演奏データに含まれる各音符データはそ
のまま使用される。B機種では、第1演奏データに含ま
れる各音符データのベロシティに第2演奏データに含ま
れる変位データが加算されることにより形成される音符
データが記憶される。
【0101】本実施の形態3に係る自動演奏装置が適用
された電子楽器の構成は、上述した実施の形態1の電子
楽器の構成(図1のブロック図)と同じである。
された電子楽器の構成は、上述した実施の形態1の電子
楽器の構成(図1のブロック図)と同じである。
【0102】ワークメモリ12に設けられた基底アドレ
スレジスタには、本電子楽器がA機種として動作する場
合に「0」セットされ、B機種として動作する場合は
「1」がセットされる。また、曲番号−記憶位置変換テ
ーブルは、曲番号を、第1演奏データ及び第2演奏デー
タの中の、その曲番号に対応する部分(演奏データ)の
先頭アドレスに変換するために使用される。
スレジスタには、本電子楽器がA機種として動作する場
合に「0」セットされ、B機種として動作する場合は
「1」がセットされる。また、曲番号−記憶位置変換テ
ーブルは、曲番号を、第1演奏データ及び第2演奏デー
タの中の、その曲番号に対応する部分(演奏データ)の
先頭アドレスに変換するために使用される。
【0103】次に、上記のように構成された本発明の実
施の形態3に係る自動演奏装置が適用された電子楽器の
動作を、図5、図6及び図11のフローチャートを参照
しながら説明する。なお、上述した実施の形態1と同一
又は相当部分には同一符号を付して説明は省略乃至簡略
化し、相違部分を中心に説明する。
施の形態3に係る自動演奏装置が適用された電子楽器の
動作を、図5、図6及び図11のフローチャートを参照
しながら説明する。なお、上述した実施の形態1と同一
又は相当部分には同一符号を付して説明は省略乃至簡略
化し、相違部分を中心に説明する。
【0104】(3−1)メイン処理
この電子楽器のメイン処理は、初期化処理(ステップS
10)の処理内容を除き、実施の形態1のメイン処理
(図5に示すフローチャート参照)と同じである。
10)の処理内容を除き、実施の形態1のメイン処理
(図5に示すフローチャート参照)と同じである。
【0105】この実施の形態3における初期化処理で
は、入力ポート23から読み込まれたデータがLレベル
であればA機種として動作すべき旨が認識され、「0」
が基底アドレスレジスタにセットされる。一方、読み込
まれたデータがHレベルであればB機種として動作すべ
き旨が認識され、「1」が基底アドレスレジスタにセッ
トされる。以下の処理においては、この基底アドレスレ
ジスタの内容に従って、使用する演奏データが選択され
る。
は、入力ポート23から読み込まれたデータがLレベル
であればA機種として動作すべき旨が認識され、「0」
が基底アドレスレジスタにセットされる。一方、読み込
まれたデータがHレベルであればB機種として動作すべ
き旨が認識され、「1」が基底アドレスレジスタにセッ
トされる。以下の処理においては、この基底アドレスレ
ジスタの内容に従って、使用する演奏データが選択され
る。
【0106】(3−2)パネル処理
この電子楽器のパネル処理は、自動演奏開始処理(ステ
ップS25)の処理内容を除き、実施の形態1のパネル
処理(図6に示すフローチャート参照)と同じである。
ップS25)の処理内容を除き、実施の形態1のパネル
処理(図6に示すフローチャート参照)と同じである。
【0107】この自動演奏開始処理では、先ず、音符デ
ータポインタ及びベロシティデータポインタに初期値が
設定される。即ち、第1演奏データの中の、その時点で
選択されている曲(曲番号レジスタに曲番号として格納
されている)に対応する部分(演奏データ)の先頭アド
レスが曲番号−記憶位置変換テーブルから読み出され、
音符データポインタにセットされる。
ータポインタ及びベロシティデータポインタに初期値が
設定される。即ち、第1演奏データの中の、その時点で
選択されている曲(曲番号レジスタに曲番号として格納
されている)に対応する部分(演奏データ)の先頭アド
レスが曲番号−記憶位置変換テーブルから読み出され、
音符データポインタにセットされる。
【0108】同様に、第2演奏データの中の、その時点
で選択されている曲に対応する部分(演奏データ)の先
頭アドレスが曲番号−記憶位置変換テーブルから読み出
されてベロシティデータポインタにセットされる。この
ベロシティデータポインタの内容は、本電子楽器がB機
種として動作するときにのみ参照される。
で選択されている曲に対応する部分(演奏データ)の先
頭アドレスが曲番号−記憶位置変換テーブルから読み出
されてベロシティデータポインタにセットされる。この
ベロシティデータポインタの内容は、本電子楽器がB機
種として動作するときにのみ参照される。
【0109】(3−3)自動演奏処理
次に、自動演奏処理の詳細について、図11のフローチ
ャートを参照しながら説明する。この自動演奏処理ルー
チンは、メイン処理ルーチンから一定周期でコールされ
る。
ャートを参照しながら説明する。この自動演奏処理ルー
チンは、メイン処理ルーチンから一定周期でコールされ
る。
【0110】ステップS30の処理は、上述した実施の
形態1の処理(図7のフローチャート参照)と同じであ
る。このステップS30で、自動演奏モードであること
が判断されると、タイミングカウンタの内容がステップ
タイムデータに一致するかどうかが調べられる(ステッ
プS31)。この際、音符データポインタで指される位
置から4バイトのデータが読み出される点が、3バイト
のデータが読み出される上記実施の形態1と異なる。
形態1の処理(図7のフローチャート参照)と同じであ
る。このステップS30で、自動演奏モードであること
が判断されると、タイミングカウンタの内容がステップ
タイムデータに一致するかどうかが調べられる(ステッ
プS31)。この際、音符データポインタで指される位
置から4バイトのデータが読み出される点が、3バイト
のデータが読み出される上記実施の形態1と異なる。
【0111】このステップS31でタイミングカウンタ
の内容がステップタイムデータに一致することが判断さ
れると、次いで、上記ワークメモリ12の所定領域に格
納されているデータは、音符データであるかどうかが調
べられる(ステップS32)。これは、該データの第1
バイト目の最上位ビットを調べることにより行われる。
の内容がステップタイムデータに一致することが判断さ
れると、次いで、上記ワークメモリ12の所定領域に格
納されているデータは、音符データであるかどうかが調
べられる(ステップS32)。これは、該データの第1
バイト目の最上位ビットを調べることにより行われる。
【0112】このステップS32で、音符データである
ことが判断されると、次いで、第2演奏データを使用す
るかどうかが調べられる(ステップS50)。これは、
基底レジスタの内容を調べることにより行われる。ここ
で第2演奏データを使用しない(基底レジスタの内容が
「0」である)ことが判断されると、ステップS51及
びS52の処理はスキップされる。この場合、先に読み
出してワークメモリ12の所定領域に格納されている音
符データ(キーナンバ、ステップタイム、ゲートタイム
及びベロシティ)が発音に使用される。
ことが判断されると、次いで、第2演奏データを使用す
るかどうかが調べられる(ステップS50)。これは、
基底レジスタの内容を調べることにより行われる。ここ
で第2演奏データを使用しない(基底レジスタの内容が
「0」である)ことが判断されると、ステップS51及
びS52の処理はスキップされる。この場合、先に読み
出してワークメモリ12の所定領域に格納されている音
符データ(キーナンバ、ステップタイム、ゲートタイム
及びベロシティ)が発音に使用される。
【0113】一方、第2演奏データを使用する(基底レ
ジスタの内容が「1」である)ことが判断されると、変
位データの読み込みが行われる(ステップS51)。即
ち、ベロシティデータポインタで指定される位置から1
バイトの変位データが読み出される。次いで、ベロシテ
ィ計算が行われる(ステップS52)。即ち、上記ワー
クメモリ12の所定領域に格納されいてる音符データの
ベロシティ部分に、ステップS51で読み出された変位
データが加算される。この加算によりベロシティが変更
された音符データが発音に使用される。
ジスタの内容が「1」である)ことが判断されると、変
位データの読み込みが行われる(ステップS51)。即
ち、ベロシティデータポインタで指定される位置から1
バイトの変位データが読み出される。次いで、ベロシテ
ィ計算が行われる(ステップS52)。即ち、上記ワー
クメモリ12の所定領域に格納されいてる音符データの
ベロシティ部分に、ステップS51で読み出された変位
データが加算される。この加算によりベロシティが変更
された音符データが発音に使用される。
【0114】次いで、発音処理が行われる(ステップS
34)。次いで、ベロシティデータポインタの更新が行
われる(ステップS35)。即ち、ベロシティデータポ
インタの内容がインクリメント(+1)される。なお、
このステップS35の処理は第2演奏データが使用され
ないときは無意味であるので、その場合は省略するよう
に構成してもよい。
34)。次いで、ベロシティデータポインタの更新が行
われる(ステップS35)。即ち、ベロシティデータポ
インタの内容がインクリメント(+1)される。なお、
このステップS35の処理は第2演奏データが使用され
ないときは無意味であるので、その場合は省略するよう
に構成してもよい。
【0115】次いで、音符データポインタの更新が行わ
れる(ステップS36)。この際、音符データポインタ
が「+4」される点が、「+3」される上記実施の形態
1と異なる。その後、シーケンスはステップS31に戻
り、以下同様の処理が繰り返される。
れる(ステップS36)。この際、音符データポインタ
が「+4」される点が、「+3」される上記実施の形態
1と異なる。その後、シーケンスはステップS31に戻
り、以下同様の処理が繰り返される。
【0116】一方、上記ステップS32で、部分音符デ
ータでないことが判断されると、その他の処理が行われ
る(ステップS37)。その「その他の処理」は、実施
の形態1のそれと同じである。
ータでないことが判断されると、その他の処理が行われ
る(ステップS37)。その「その他の処理」は、実施
の形態1のそれと同じである。
【0117】なお、上記実施の形態3では、第2演奏デ
ータを構成する各変位データは第1演奏データを構成す
る音符データの1つと1対1に対応するように構成した
が、各第2演奏データは、各キーナンバに対応する変位
データで構成することができる。この場合、自動演奏処
理のステップS55では、音符データに含まれるキーナ
ンバに対応する変位データを第2演奏データから読み出
すように構成すればよい。
ータを構成する各変位データは第1演奏データを構成す
る音符データの1つと1対1に対応するように構成した
が、各第2演奏データは、各キーナンバに対応する変位
データで構成することができる。この場合、自動演奏処
理のステップS55では、音符データに含まれるキーナ
ンバに対応する変位データを第2演奏データから読み出
すように構成すればよい。
【0118】なた、上記の実施の形態2及び実施の形態
3では、入力ポート23から得られたデータに基づい
て、第2演奏データを使用するかどうかを決定するよう
に構成したが、操作パネル14上に、第2演奏データ選
択用のスイッチを設け、このスイッチの設定状態に応じ
て第2演奏データを使用するかどうかを決定するように
構成してもよい。更には、電子楽器に各種パラメータを
設定するためのシステム値設定モードを有する電子楽器
では、このシステム設定値モードにおいて、所定の値を
設定することにより、第2演奏データを使用するかどう
かを決定するように構成してもよい。
3では、入力ポート23から得られたデータに基づい
て、第2演奏データを使用するかどうかを決定するよう
に構成したが、操作パネル14上に、第2演奏データ選
択用のスイッチを設け、このスイッチの設定状態に応じ
て第2演奏データを使用するかどうかを決定するように
構成してもよい。更には、電子楽器に各種パラメータを
設定するためのシステム値設定モードを有する電子楽器
では、このシステム設定値モードにおいて、所定の値を
設定することにより、第2演奏データを使用するかどう
かを決定するように構成してもよい。
【0119】また、上記実施の形態1〜実施の形態3に
おいて、例えばRAM、フラッシュメモリといった書換
可能な記憶媒体の中に第2演奏データの格納領域を形成
し、例えばMIDIインタフェースを介して送られてく
る第2演奏データを該格納領域に格納するように構成し
てもよい。この場合、当該電子楽器に必要な第2演奏デ
ータのみを該格納領域に格納すればよいので、メモリの
使用効率を高めることができる。
おいて、例えばRAM、フラッシュメモリといった書換
可能な記憶媒体の中に第2演奏データの格納領域を形成
し、例えばMIDIインタフェースを介して送られてく
る第2演奏データを該格納領域に格納するように構成し
てもよい。この場合、当該電子楽器に必要な第2演奏デ
ータのみを該格納領域に格納すればよいので、メモリの
使用効率を高めることができる。
【0120】更に、上記格納領域に格納する第2演奏デ
ータは、鍵盤装置から得るように構成してもよい。この
場合、打鍵時のベロシティ値をそのまま第2演奏データ
とすることもできるし、該ベロシティ値に所定の変更を
施して第2演奏データを生成してもよい。
ータは、鍵盤装置から得るように構成してもよい。この
場合、打鍵時のベロシティ値をそのまま第2演奏データ
とすることもできるし、該ベロシティ値に所定の変更を
施して第2演奏データを生成してもよい。
【0121】
【発明の効果】以上詳述したように、本発明によれば、
少ない演奏データ量であるにも拘わらず、各曲本来の音
楽的特性で自動演奏できる自動演奏装置及び自動演奏方
法を提供できる。
少ない演奏データ量であるにも拘わらず、各曲本来の音
楽的特性で自動演奏できる自動演奏装置及び自動演奏方
法を提供できる。
【図1】本発明の実施の形態1〜実施の形態3に係る自
動演奏装置が適用された電子楽器の構成を示すブロック
図である。
動演奏装置が適用された電子楽器の構成を示すブロック
図である。
【図2】図1に示した電子楽器に適用される操作パネル
の一例を示す図である。
の一例を示す図である。
【図3】本発明の実施の形態1に係る自動演奏装置が適
用された電子楽器で使用される演奏データの形式を示す
図である。
用された電子楽器で使用される演奏データの形式を示す
図である。
【図4】本発明の実施の形態1〜実施の形態3に係る自
動演奏装置が適用された電子楽器のワークメモリ12の
割り当ての一例を示す図である。
動演奏装置が適用された電子楽器のワークメモリ12の
割り当ての一例を示す図である。
【図5】本発明の実施の形態1〜実施の形態3に係る自
動演奏装置が適用された電子楽器のメイン処理を示すフ
ローチャートである。
動演奏装置が適用された電子楽器のメイン処理を示すフ
ローチャートである。
【図6】本発明の実施の形態1〜実施の形態3に係る自
動演奏装置が適用された電子楽器のパネル処理を示すフ
ローチャートである。
動演奏装置が適用された電子楽器のパネル処理を示すフ
ローチャートである。
【図7】本発明の実施の形態1に係る自動演奏装置が適
用された電子楽器の自動演奏処理を示すフローチャート
である。
用された電子楽器の自動演奏処理を示すフローチャート
である。
【図8】本発明の実施の形態2に係る自動演奏装置が適
用された電子楽器で使用される演奏データの形式を示す
図である。
用された電子楽器で使用される演奏データの形式を示す
図である。
【図9】本発明の実施の形態2に係る自動演奏装置が適
用された電子楽器の自動演奏処理を示すフローチャート
である。
用された電子楽器の自動演奏処理を示すフローチャート
である。
【図10】本発明の実施の形態3に係る自動演奏装置が
適用された電子楽器で使用される演奏データの形式を示
す図である。
適用された電子楽器で使用される演奏データの形式を示
す図である。
【図11】本発明の実施の形態3に係る自動演奏装置が
適用された電子楽器の自動演奏処理を示すフローチャー
トである。
適用された電子楽器の自動演奏処理を示すフローチャー
トである。
【図12】従来の自動演奏装置で使用される演奏データ
の形式を示す図である。
の形式を示す図である。
10 CPU
11 プログラムメモリ
12 ワークメモリ
13 パネルインタフェース回路
14 操作パネル
15 鍵盤インタフェース回路
16 鍵盤装置
17 演奏データメモリ
18 波形メモリ
19 音源
20 D/A変換器
21 増幅器
22 スピーカ
23 入力ポート
30 システムバス
─────────────────────────────────────────────────────
フロントページの続き
(56)参考文献 特開 平4−110895(JP,A)
特開 平8−278782(JP,A)
特開 昭56−87091(JP,A)
特開 平4−368996(JP,A)
特開 平8−320688(JP,A)
特開 平8−320689(JP,A)
特開 平6−274172(JP,A)
特開 平6−289875(JP,A)
特開 平5−27763(JP,A)
(58)調査した分野(Int.Cl.7,DB名)
G10H 1/00 - 7/12
Claims (6)
- 【請求項1】1つの楽曲を構成する各音を発生するため
に使用される音符データの一部に対応する部分音符デー
タの列によって構成された第1演奏データを格納する第
1の記憶手段と、前記部分音符データと同数である 前記音符データの他の
一部に対応するデータの列によって構成された第2演奏
データを複数格納する第2の記憶手段と、 前記第2の記憶手段に格納されている複数の第2演奏デ
ータの中の1つを指定する指定手段と、 前記第1の記憶手段に記憶されている第1演奏データの
部分音符データの列のうちの1つの部分音符データと前
記指定手段で指定された第2演奏データのデータの列の
うちの前記1つの部分音符データの順番に対応する1つ
のデータとから形成される音符データが示す演奏音を発
生する演奏音発生手段、とを備えた自動演奏装置。 - 【請求項2】前記1つのデータの前記データの列での順
番は、前記1つの部分音符データの前記部分音符データ
の列での順番に等しい請求項1に記載の自動演奏装置。 - 【請求項3】前記音符データの一部に対応する部分音符
データは音高、音長及び発音時刻を決定するためのデー
タを含み、前記音符データの他の一部に対応するデータ
は音の大きさを決定するためのデータを含む請求項2に
記載の自動演奏装置。 - 【請求項4】1つの楽曲を構成する各音を発生するため
に使用される音符データの一部に対応する部分音符デー
タの列によって構成された第1演奏データを格納し、前記部分音符データと同数である 前記音符データの他の
一部に対応するデータの列によって構成された第2演奏
データを複数格納し、 前記格納されている複数の第2演奏データの中の1つを
選択し、 前記格納されている第1演奏データと該選択された第2
演奏データの部分音符データの列のうちの1つの部分音
符データと前記指定手段で指定された第2演奏データの
データの列のうちの前記1つの部分音符データの順番に
対応する1つのデータとから形成される音符データが示
す演奏音を発生する、自動演奏方法。 - 【請求項5】前記1つのデータの前記データの列での順
番は、前記1つの部分音符データの前記部分音符データ
の列での順番に等しい請求項4に記載の自動演奏方法。 - 【請求項6】前記音符データの一部に対応する部分音符
データは音高、音長及び発音時刻を決定するためのデー
タを含み、前記音符データの他の一部に対応するデータ
は音の大きさを決定するためのデータを含む請求項5に
記載の自動演奏方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24966497A JP3529123B2 (ja) | 1997-08-29 | 1997-08-29 | 自動演奏装置及び自動演奏方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24966497A JP3529123B2 (ja) | 1997-08-29 | 1997-08-29 | 自動演奏装置及び自動演奏方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1173181A JPH1173181A (ja) | 1999-03-16 |
JP3529123B2 true JP3529123B2 (ja) | 2004-05-24 |
Family
ID=17196388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24966497A Expired - Fee Related JP3529123B2 (ja) | 1997-08-29 | 1997-08-29 | 自動演奏装置及び自動演奏方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3529123B2 (ja) |
-
1997
- 1997-08-29 JP JP24966497A patent/JP3529123B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH1173181A (ja) | 1999-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3807275B2 (ja) | コード提示装置およびコード提示用コンピュータプログラム | |
JPS6157640B2 (ja) | ||
JP3568326B2 (ja) | 電子楽器 | |
JPH10187157A (ja) | 自動演奏装置 | |
JPH06259065A (ja) | 電子楽器 | |
JP2008089975A (ja) | 電子楽器 | |
JP3529123B2 (ja) | 自動演奏装置及び自動演奏方法 | |
JP2587737B2 (ja) | 自動伴奏装置 | |
JPH06259064A (ja) | 電子楽器 | |
JP4318194B2 (ja) | 電子楽器の自動伴奏装置及び自動伴奏方法 | |
JP2639381B2 (ja) | 電子楽器 | |
JP2570045B2 (ja) | 電子楽器 | |
JPH06348258A (ja) | 電子楽器の自動演奏装置 | |
JP3630266B2 (ja) | 自動伴奏装置 | |
JP3424989B2 (ja) | 電子楽器の自動伴奏装置 | |
JPH06242781A (ja) | 電子楽器 | |
JPH07146681A (ja) | 電子楽器 | |
JP3324881B2 (ja) | 自動演奏装置 | |
JP2665854B2 (ja) | 自動演奏装置 | |
JP2002287748A (ja) | 電子楽器 | |
JPH0830273A (ja) | 電子楽器のテンポ設定装置 | |
JPH0546177A (ja) | 電子楽器 | |
JPH0772869A (ja) | 電子楽器のチューニング支援装置 | |
JPH0830272A (ja) | 電子楽器のテンポ設定装置 | |
JPH09319372A (ja) | 電子楽器の自動伴奏装置及び自動伴奏方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20031204 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040129 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040223 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040223 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |