JPH07152372A - 演奏装置 - Google Patents
演奏装置Info
- Publication number
- JPH07152372A JPH07152372A JP5325858A JP32585893A JPH07152372A JP H07152372 A JPH07152372 A JP H07152372A JP 5325858 A JP5325858 A JP 5325858A JP 32585893 A JP32585893 A JP 32585893A JP H07152372 A JPH07152372 A JP H07152372A
- Authority
- JP
- Japan
- Prior art keywords
- data
- register
- stored
- pitch
- note
- 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.)
- Pending
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
(57)【要約】
【目的】 ワンキープレイによる演奏の容易化を図った
演奏装置を提供する。 【構成】 図9のフローにおいて、SE3ではレジスタ
ADRの現在値が示すアドレスADRに記憶されている
データ(ADR)をレジスタPに格納し、SF6ではイ
ンクリメントしたレジスタADRの現在値が示すアドレ
スADRに記憶されているデータ(ADR)をタイマー
Tにセットする。つまり、タイマーTが“0”となる毎
(1個の音符に対応する符長時間が経過する毎)に、レ
ジスタPには次の音符1個に対応する音高データ(P)
が、タイマーTには同一音符に対応する符長データ
(T)が順次セットされて行く。したがって、このフロ
ーにより、選択された曲の自動演奏データが順次読みさ
れ、これにより内部的に当該曲の自動演奏が進行して行
く。そして、ワンキーSWが操作された際には、レジス
タPに格納されている音高データの示す音高で発音を指
示する。
演奏装置を提供する。 【構成】 図9のフローにおいて、SE3ではレジスタ
ADRの現在値が示すアドレスADRに記憶されている
データ(ADR)をレジスタPに格納し、SF6ではイ
ンクリメントしたレジスタADRの現在値が示すアドレ
スADRに記憶されているデータ(ADR)をタイマー
Tにセットする。つまり、タイマーTが“0”となる毎
(1個の音符に対応する符長時間が経過する毎)に、レ
ジスタPには次の音符1個に対応する音高データ(P)
が、タイマーTには同一音符に対応する符長データ
(T)が順次セットされて行く。したがって、このフロ
ーにより、選択された曲の自動演奏データが順次読みさ
れ、これにより内部的に当該曲の自動演奏が進行して行
く。そして、ワンキーSWが操作された際には、レジス
タPに格納されている音高データの示す音高で発音を指
示する。
Description
【0001】
【産業上の利用分野】本発明は、所謂ワンキープレイに
より演奏可能な演奏装置に関する。
より演奏可能な演奏装置に関する。
【0002】
【従来の技術】従来の演奏装置としては、ワンキープレ
イにより演奏可能な電子楽器が知られている。この電子
楽器には、単一のワンキーSWが設けられているととも
に、所定のメロディを構成する音高データがアドレス順
に記憶されている。そして、ユーザーがワンキーSWを
操作すると、操作したタイミングで音高データが順次読
み出されて、発音処理される。したがって、ユーザーが
当該メロディの発音タイミングでワンキーSWを操作す
れば、操作毎にメロディを構成する音高の楽音が当該メ
ロディの発音タイミングで順次発生し、この順次発生す
る楽音により上記所定のメロディが形成される。よっ
て、困難な鍵盤操作を行わずとも、単に当該メロディの
発音タイミングで単一のワンキーSWを連続的に操作す
ることにより、容易にメロディ演奏を行うことができ
る。
イにより演奏可能な電子楽器が知られている。この電子
楽器には、単一のワンキーSWが設けられているととも
に、所定のメロディを構成する音高データがアドレス順
に記憶されている。そして、ユーザーがワンキーSWを
操作すると、操作したタイミングで音高データが順次読
み出されて、発音処理される。したがって、ユーザーが
当該メロディの発音タイミングでワンキーSWを操作す
れば、操作毎にメロディを構成する音高の楽音が当該メ
ロディの発音タイミングで順次発生し、この順次発生す
る楽音により上記所定のメロディが形成される。よっ
て、困難な鍵盤操作を行わずとも、単に当該メロディの
発音タイミングで単一のワンキーSWを連続的に操作す
ることにより、容易にメロディ演奏を行うことができ
る。
【0003】
【発明が解決しようとする課題】このように従来の電子
楽器にあっては、メロディを構成する音高データのみを
記憶しておき、ワンキーSWの操作タイミングで順次音
高データを読み出して発音処理するように構成されてい
る。したがって、タイミング的な誤りなくワンキーSW
をメロディの発音タイミングに合わせて正しく操作した
場合には、操作タイミング毎に読み出された音高データ
に基づいて発生する楽音により、所定のメロディが形成
される。
楽器にあっては、メロディを構成する音高データのみを
記憶しておき、ワンキーSWの操作タイミングで順次音
高データを読み出して発音処理するように構成されてい
る。したがって、タイミング的な誤りなくワンキーSW
をメロディの発音タイミングに合わせて正しく操作した
場合には、操作タイミング毎に読み出された音高データ
に基づいて発生する楽音により、所定のメロディが形成
される。
【0004】しかし、例えばメロディの発音タイミング
でないにも拘わらず、ワンキーSWを操作してしまう等
のタイミング的な誤操作が発生すると、混乱し、その結
果以降は正しいタイミングでワンキーSWの操作を行う
ことができなくなってしまう。このため、ワンキープレ
イによりメロディを最後まで演奏するためには、途中で
の誤操作なくメロディの発音タイミングでワンキーSW
を操作しなければならず、かかる操作は初心者にとって
は困難となるものであった。
でないにも拘わらず、ワンキーSWを操作してしまう等
のタイミング的な誤操作が発生すると、混乱し、その結
果以降は正しいタイミングでワンキーSWの操作を行う
ことができなくなってしまう。このため、ワンキープレ
イによりメロディを最後まで演奏するためには、途中で
の誤操作なくメロディの発音タイミングでワンキーSW
を操作しなければならず、かかる操作は初心者にとって
は困難となるものであった。
【0005】本発明の課題は、ワンキープレイによる演
奏の容易化を図った演奏装置を提供することにある。
奏の容易化を図った演奏装置を提供することにある。
【0006】
【課題を解決するための手段】上記課題を解決するため
に本発明にあっては、楽曲を構成する自動演奏データを
記憶する記憶手段と、この記憶手段から上記自動演奏デ
ータを順次読み出す読出手段と、使用者により操作され
るマニュアル操作子と、このマニュアル操作子が操作さ
れると、上記読出手段により読み出された自動演奏デー
タに基づいて発音指示を行う発音指示手段とを有してい
る。
に本発明にあっては、楽曲を構成する自動演奏データを
記憶する記憶手段と、この記憶手段から上記自動演奏デ
ータを順次読み出す読出手段と、使用者により操作され
るマニュアル操作子と、このマニュアル操作子が操作さ
れると、上記読出手段により読み出された自動演奏デー
タに基づいて発音指示を行う発音指示手段とを有してい
る。
【0007】
【作用】上記構成において、読出手段は記憶手段に記憶
されている自動演奏データを順次読み出し、よってこの
読出手段による自動演奏データの読み出しにより、発音
のない状態で内部的に自動演奏が進行して行く。そし
て、このように内部的に自動演奏が進行している状態
で、使用者がマニュアル操作子を操作すると、発音手段
は読出手段により読み出された自動演奏データに基づい
て発音指示を行う。したがって、使用者が楽曲の発音タ
イミングに合った正しいタイミングでマニュアル操作子
を操作した場合は無論のこと、発音タイミング以上の頻
繁なタイミングでマニュアル操作子を操作した場合であ
っても、発音指示に基づく楽音の音高は内部的に進行し
ている自動演奏に依存して変化する。
されている自動演奏データを順次読み出し、よってこの
読出手段による自動演奏データの読み出しにより、発音
のない状態で内部的に自動演奏が進行して行く。そし
て、このように内部的に自動演奏が進行している状態
で、使用者がマニュアル操作子を操作すると、発音手段
は読出手段により読み出された自動演奏データに基づい
て発音指示を行う。したがって、使用者が楽曲の発音タ
イミングに合った正しいタイミングでマニュアル操作子
を操作した場合は無論のこと、発音タイミング以上の頻
繁なタイミングでマニュアル操作子を操作した場合であ
っても、発音指示に基づく楽音の音高は内部的に進行し
ている自動演奏に依存して変化する。
【0008】
【実施例】以下、本発明の一実施例について図にしたが
って説明する。すなわち、図2は本発明を適用した電子
楽器の要部平面図であり、楽器本体1にはワンキーSW
2とスタート/ストップSW3等が設けられている。こ
れら各SW2,3、及び図示しない鍵盤の各鍵毎に配設
された鍵盤スイッチ等の操作情報は、図1に示した全体
ブロック図において、スイッチ部4からCPU5に入力
される。CPU5は、ワンキープレイ等の当該電子楽器
が有する機能の実現に必要となる全ての制御を実行する
のみならず、楽音生成用の音源回路ハードウェアを用い
ることなく、プログラム制御により楽音を生成する処理
も実行する。
って説明する。すなわち、図2は本発明を適用した電子
楽器の要部平面図であり、楽器本体1にはワンキーSW
2とスタート/ストップSW3等が設けられている。こ
れら各SW2,3、及び図示しない鍵盤の各鍵毎に配設
された鍵盤スイッチ等の操作情報は、図1に示した全体
ブロック図において、スイッチ部4からCPU5に入力
される。CPU5は、ワンキープレイ等の当該電子楽器
が有する機能の実現に必要となる全ての制御を実行する
のみならず、楽音生成用の音源回路ハードウェアを用い
ることなく、プログラム制御により楽音を生成する処理
も実行する。
【0009】すなわち、ROM6には、後述するメイン
ルーチンによって示される全体処理プログラムと共に、
タイマーインタラプトルーチンによって示される音源処
理プログラムが記憶されており、さらにはエンベロープ
データ(レート、レベル等)、ピッチデータ等の各種楽
音制御パラメータ、PCMの波形データ、及び自動伴奏
データ等が記憶されている。上記ピッチデータは、波形
データを読み出す際のアドレス加算値であって、押鍵に
より鍵盤スイッチがオンとなった際、あるいはワンキー
SW1の操作が有った際には、発生させるべき楽音の音
高に対応するピッチデータと波形スタートアドレス、波
形エンドアドレス、波形ループアドレスがワーキング用
のRAM7に用意されている中間データ記憶領域にセッ
トされる。
ルーチンによって示される全体処理プログラムと共に、
タイマーインタラプトルーチンによって示される音源処
理プログラムが記憶されており、さらにはエンベロープ
データ(レート、レベル等)、ピッチデータ等の各種楽
音制御パラメータ、PCMの波形データ、及び自動伴奏
データ等が記憶されている。上記ピッチデータは、波形
データを読み出す際のアドレス加算値であって、押鍵に
より鍵盤スイッチがオンとなった際、あるいはワンキー
SW1の操作が有った際には、発生させるべき楽音の音
高に対応するピッチデータと波形スタートアドレス、波
形エンドアドレス、波形ループアドレスがワーキング用
のRAM7に用意されている中間データ記憶領域にセッ
トされる。
【0010】RAM7には、タイマーインタラプトルー
チンにおける音源処理により生成される各チャンネルの
楽音波形データ(8チャンネル分の累算波形値)を一時
記憶するための累算用レジスタRが用意されている。上
記タイマーインタラプトルーチンにより生成された楽音
波形データは、CPU5中の特に図示していないインス
トラクションデコーダ等からなる制御部からの信号CO
Mに応答して動作するラッチAにラッチされ、ラッチB
に入力される。該ラッチBは、上記タイマーインタラプ
トルーチンの実行を要求する信号INTの周波数fsに
従ったタイミングで動作する。この信号INTは、ハー
ドクロックにより分周生成される通常40KHz程度の
安定した信号であって、よって、ラッチBからはINT
の周波数fsに依存した一定のサンプリング周期をもっ
て、D/A変換器8に楽音波形データが出力される。
チンにおける音源処理により生成される各チャンネルの
楽音波形データ(8チャンネル分の累算波形値)を一時
記憶するための累算用レジスタRが用意されている。上
記タイマーインタラプトルーチンにより生成された楽音
波形データは、CPU5中の特に図示していないインス
トラクションデコーダ等からなる制御部からの信号CO
Mに応答して動作するラッチAにラッチされ、ラッチB
に入力される。該ラッチBは、上記タイマーインタラプ
トルーチンの実行を要求する信号INTの周波数fsに
従ったタイミングで動作する。この信号INTは、ハー
ドクロックにより分周生成される通常40KHz程度の
安定した信号であって、よって、ラッチBからはINT
の周波数fsに依存した一定のサンプリング周期をもっ
て、D/A変換器8に楽音波形データが出力される。
【0011】上記タイマーインタラプトルーチンは、I
NTの周波数に従った一定の時間間隔でメインルーチン
に割り込んで実行されるが、タイマーインタラプトルー
チンが実際に開始されるタイミング及び終了するタイミ
ングは変動し得る。つまり、CPU5は割り込みがかか
っても、実行中のオペレーションを即時に中断すること
は不可能であり、その実行が終了してからインタラプト
処理に入る。また、タイマーインタラプト処理に要する
時間もそのプロセスに依存することから、楽音波形デー
タの生成周期は不安定なものとなる。そこで、上記CO
M信号によって制御されるラッチAとD/A変換器8と
の間に、正確なタイミング信号である上記INTで制御
されるラッチBを設けてある。これにより、ラッチAの
ラッチタイミングが、インタラプト処理の処理時間等に
より変動しても、INTのタイミングで動作するラッチ
Bの存在により、D/A変換器8の入力データが切り替
わるタイミングはINTと同期する。つまり、D/A変
換器8にはINTの1周期分だけ遅れた信号がINTの
タイミングにて入力され、アナログ変換される。該D/
A変換器8によりアナログ変換された音声波形信号は、
ローパスフィルタ9でフィルタリングされ、その後アン
プ10で増幅され、スピーカ11を介して放音される。
NTの周波数に従った一定の時間間隔でメインルーチン
に割り込んで実行されるが、タイマーインタラプトルー
チンが実際に開始されるタイミング及び終了するタイミ
ングは変動し得る。つまり、CPU5は割り込みがかか
っても、実行中のオペレーションを即時に中断すること
は不可能であり、その実行が終了してからインタラプト
処理に入る。また、タイマーインタラプト処理に要する
時間もそのプロセスに依存することから、楽音波形デー
タの生成周期は不安定なものとなる。そこで、上記CO
M信号によって制御されるラッチAとD/A変換器8と
の間に、正確なタイミング信号である上記INTで制御
されるラッチBを設けてある。これにより、ラッチAの
ラッチタイミングが、インタラプト処理の処理時間等に
より変動しても、INTのタイミングで動作するラッチ
Bの存在により、D/A変換器8の入力データが切り替
わるタイミングはINTと同期する。つまり、D/A変
換器8にはINTの1周期分だけ遅れた信号がINTの
タイミングにて入力され、アナログ変換される。該D/
A変換器8によりアナログ変換された音声波形信号は、
ローパスフィルタ9でフィルタリングされ、その後アン
プ10で増幅され、スピーカ11を介して放音される。
【0012】ROM6の一部には、図3に示すように、
曲A,B・・・のメロディを構成する自動演奏データが
各曲毎に記憶されている。この自動演奏データは、発音
すべき楽音の音高を示す音高データ(P)と音長を示す
符長データ(T)とをアドレス順をもって交互に記憶し
たものであって、一対の音高データ(P)と符長データ
(T)とがメロディを構成する1個の音符に対応してい
る。また、各曲の自動演奏データが記憶されたエリアの
最終アドレスには、曲の終わりを示すENDデータが記
憶されている。なお、符長データ(T)は、4分音符長
を“24”とした値で記憶されており、よって、各音符
は下記の符長データで表され、96分音符長が最小単位
である。
曲A,B・・・のメロディを構成する自動演奏データが
各曲毎に記憶されている。この自動演奏データは、発音
すべき楽音の音高を示す音高データ(P)と音長を示す
符長データ(T)とをアドレス順をもって交互に記憶し
たものであって、一対の音高データ(P)と符長データ
(T)とがメロディを構成する1個の音符に対応してい
る。また、各曲の自動演奏データが記憶されたエリアの
最終アドレスには、曲の終わりを示すENDデータが記
憶されている。なお、符長データ(T)は、4分音符長
を“24”とした値で記憶されており、よって、各音符
は下記の符長データで表され、96分音符長が最小単位
である。
【0013】96分音符・・・1 48分音符・・・2 24分音符・・・4 12分音符・・・8 8分音符・・・12 4分音符・・・24 2分音符・・・48 全音符・・・96 次に、以上の構成にかかる本実施例の動作について、C
PU5によって実行されるプログラムの概容を示したフ
ローチャートに従って説明する。すなわち、図4は本実
施例の全体処理プログラムを示すメインルーチンであ
り、電源の投入に伴って開始され、先ずイニシャライズ
処理(SA1)により、RAM7に設けられたレジスタ
群のクリア等を行う。次に、スイッチ部4に設けられて
いる鍵盤スイッチ以外のワンキーSW2、スタート/ス
トップSW3等の機能スイッチをスキャンし(SA
2)、このSA2におけるスキャン結果により前回の状
態から変化した機能スイッチを識別し、これに応じた処
理を行う(SA3)。引き続きスイッチ部4における鍵
盤スイッチのスキャンを行い(SA4)、このSA4に
おけるスキャン結果に応じてノートオン、ノートオフ等
の対応する処理を行う(SA5)。さらに、SA3及び
SA5にて実行された以外の、その他の処理を実行し
(SA6)、以降電源がオン状態にある間SA2〜SA
6の処理を繰り返す。このメインルーチンに対して、図
5に示した音源処理プログラム(タイマーインタラプト
ルーチン)が信号INTの周波数fsに従ったタイミ
ング、つまり1/fs秒経過毎に割り込んで実行され、
音源処理(SB1)を行う。なお、このタイマーインタ
ラプトルーチンは、優先順位1であって後述する他の
タイマーインタラプトルーチンより最優先に実行され
る。音源処理(SB1)は、図6に示したフローに従っ
て実行され、まずRAM5中に設けられている上記累算
用レジスタRをクリアする(SC1)。これにより、前
回の音源処理にて記憶された1ch〜8chまでの累算
波形値を消去した後、1ch〜8chまでの全チャンネ
ルの音源処理を順次実行する(SC2〜SC9)。すな
わち、SC2では1chの波形値を求めてこれをRにセ
ットし、SC3では同様にして2chの波形値を求めて
Rに累算する。さらに、SC4及びSC5では、各々前
のステップで累算されたRの値に順次3chと4chの
波形値を累算する。よって、SC9の処理が終了した時
点において、Rには1ch〜8chまでの累算波形値が
格納されている。そして、このRに格納された累算波形
値を、図6のSB2にてラッチAにラッチし、これによ
りラッチAには音源処理(SB1)が終了するタイミン
グにて1ch〜8chの累算波形値がラッチされる。さ
らに、このラッチAにラッチされた累算波形値は、前述
のようにハードクロックにより分周生成された正確な一
定サンプリング周期をもってラッチBにラッチされ、A
/D変換器8に入力されてアナログ値に変換され、これ
によりスピーカ11からは歪みのない楽音が放音され
る。
PU5によって実行されるプログラムの概容を示したフ
ローチャートに従って説明する。すなわち、図4は本実
施例の全体処理プログラムを示すメインルーチンであ
り、電源の投入に伴って開始され、先ずイニシャライズ
処理(SA1)により、RAM7に設けられたレジスタ
群のクリア等を行う。次に、スイッチ部4に設けられて
いる鍵盤スイッチ以外のワンキーSW2、スタート/ス
トップSW3等の機能スイッチをスキャンし(SA
2)、このSA2におけるスキャン結果により前回の状
態から変化した機能スイッチを識別し、これに応じた処
理を行う(SA3)。引き続きスイッチ部4における鍵
盤スイッチのスキャンを行い(SA4)、このSA4に
おけるスキャン結果に応じてノートオン、ノートオフ等
の対応する処理を行う(SA5)。さらに、SA3及び
SA5にて実行された以外の、その他の処理を実行し
(SA6)、以降電源がオン状態にある間SA2〜SA
6の処理を繰り返す。このメインルーチンに対して、図
5に示した音源処理プログラム(タイマーインタラプト
ルーチン)が信号INTの周波数fsに従ったタイミ
ング、つまり1/fs秒経過毎に割り込んで実行され、
音源処理(SB1)を行う。なお、このタイマーインタ
ラプトルーチンは、優先順位1であって後述する他の
タイマーインタラプトルーチンより最優先に実行され
る。音源処理(SB1)は、図6に示したフローに従っ
て実行され、まずRAM5中に設けられている上記累算
用レジスタRをクリアする(SC1)。これにより、前
回の音源処理にて記憶された1ch〜8chまでの累算
波形値を消去した後、1ch〜8chまでの全チャンネ
ルの音源処理を順次実行する(SC2〜SC9)。すな
わち、SC2では1chの波形値を求めてこれをRにセ
ットし、SC3では同様にして2chの波形値を求めて
Rに累算する。さらに、SC4及びSC5では、各々前
のステップで累算されたRの値に順次3chと4chの
波形値を累算する。よって、SC9の処理が終了した時
点において、Rには1ch〜8chまでの累算波形値が
格納されている。そして、このRに格納された累算波形
値を、図6のSB2にてラッチAにラッチし、これによ
りラッチAには音源処理(SB1)が終了するタイミン
グにて1ch〜8chの累算波形値がラッチされる。さ
らに、このラッチAにラッチされた累算波形値は、前述
のようにハードクロックにより分周生成された正確な一
定サンプリング周期をもってラッチBにラッチされ、A
/D変換器8に入力されてアナログ値に変換され、これ
によりスピーカ11からは歪みのない楽音が放音され
る。
【0014】また、図7のタイマー処理(タイマーイン
タラプトルーチン)は、前述のタイマーインタラプト
ルーチンより低い優先順位をもって、符長データの最
小単位である96分音符長経過毎に実行される。そし
て、フラグFがセット状態にあるか否かを判別し(SD
1)、フラグFがセット状態にあり後述するように内部
的に自動演奏が実行中である場合には、タイマーTをデ
クリメントする(SD2)したがって、タイマーTは、
内部的な自動演奏の実行中において、96分音符時間間
隔で、カウントダウンして行く。
タラプトルーチン)は、前述のタイマーインタラプト
ルーチンより低い優先順位をもって、符長データの最
小単位である96分音符長経過毎に実行される。そし
て、フラグFがセット状態にあるか否かを判別し(SD
1)、フラグFがセット状態にあり後述するように内部
的に自動演奏が実行中である場合には、タイマーTをデ
クリメントする(SD2)したがって、タイマーTは、
内部的な自動演奏の実行中において、96分音符時間間
隔で、カウントダウンして行く。
【0015】一方、図4のSA3では、図8〜10に示
したフローに従ってその一部の処理が実行される。すな
わち、図8に示したフローでは、機能スイッチのスキャ
ン結果に基づき、スタート/ストップSW3が操作され
たか否かを判別し(SE1)、操作されたならばレジス
タFがリセット状態にあるか否かを判別する(SE
2)。レジスタFがリセット状態にある場合にはセット
し(SE3)、セット状態にある場合にはリセットする
(SE4)。したがって、レジスタFはスタート/スト
ップSW3が操作される毎に変化し、また、レジスタF
に変化がある都度SE5〜SE7の処理を行う。すなわ
ち、曲選択スイッチ(図示せず)の操作により現在選択
されている何れかの曲A,B・・・の先頭アドレス、つ
まり選択曲の自動演奏データが記憶されているエリアの
先頭アドレスをレジスタADRにセットし(SE5)、
引き続きレジスタPとタイマーTとをリセットする(S
E6,SE7)。
したフローに従ってその一部の処理が実行される。すな
わち、図8に示したフローでは、機能スイッチのスキャ
ン結果に基づき、スタート/ストップSW3が操作され
たか否かを判別し(SE1)、操作されたならばレジス
タFがリセット状態にあるか否かを判別する(SE
2)。レジスタFがリセット状態にある場合にはセット
し(SE3)、セット状態にある場合にはリセットする
(SE4)。したがって、レジスタFはスタート/スト
ップSW3が操作される毎に変化し、また、レジスタF
に変化がある都度SE5〜SE7の処理を行う。すなわ
ち、曲選択スイッチ(図示せず)の操作により現在選択
されている何れかの曲A,B・・・の先頭アドレス、つ
まり選択曲の自動演奏データが記憶されているエリアの
先頭アドレスをレジスタADRにセットし(SE5)、
引き続きレジスタPとタイマーTとをリセットする(S
E6,SE7)。
【0016】また、図9に示したフローでは、レジスタ
Fがセット状態にあるか否かを判別し(SF1)、リセ
ット状態にある場合には以降の判別処理を実行すること
なくこのフローを通過する。レジスタFがセット状態に
ある場合にはタイマーTが“0”であるか否かを判別し
(SF2)、“0”でない場合には同様に以降の判別処
理を実行することなく、このフローを通過する。したが
って、SF3以降の処理は、レジスタFがセットされて
いる状態において、タイマーTが“0”となる都度実行
される。
Fがセット状態にあるか否かを判別し(SF1)、リセ
ット状態にある場合には以降の判別処理を実行すること
なくこのフローを通過する。レジスタFがセット状態に
ある場合にはタイマーTが“0”であるか否かを判別し
(SF2)、“0”でない場合には同様に以降の判別処
理を実行することなく、このフローを通過する。したが
って、SF3以降の処理は、レジスタFがセットされて
いる状態において、タイマーTが“0”となる都度実行
される。
【0017】そして、SF3ではレジスタADRの現在
値が示すアドレスADRに記憶されているデータ(AD
R)を、レジスタPに格納し、このレジスタPに格納し
たデータがENDデータであるか否かを判別する(SF
4)。ENDデータでない場合にはレジスタADRをイ
ンクリメントし(SF5)、このインクリメントしたレ
ジスタADRの現在値が示すアドレスADRに記憶され
ているデータ(ADR)をタイマーTにセットした後
(SF6)、更にレジスタADRをインクリメントして
おく(SF7)。
値が示すアドレスADRに記憶されているデータ(AD
R)を、レジスタPに格納し、このレジスタPに格納し
たデータがENDデータであるか否かを判別する(SF
4)。ENDデータでない場合にはレジスタADRをイ
ンクリメントし(SF5)、このインクリメントしたレ
ジスタADRの現在値が示すアドレスADRに記憶され
ているデータ(ADR)をタイマーTにセットした後
(SF6)、更にレジスタADRをインクリメントして
おく(SF7)。
【0018】よって、この図9に示したフローにより、
タイマーTが“0”となる毎に、つまり1個の音符に対
応する符長時間が経過する毎に、レジスタPには次の音
符1個に対応する音高データ(P)が、タイマーTには
同一音符に対応する符長データ(T)が順次セットされ
て行く。したがって、このフローにより、選択された曲
の自動演奏データが順次読み出され、これにより内部的
に当該楽曲の自動演奏が進行して行く。そして、SF3
で当該曲の自動演奏データにおける最終データであるE
NDデータがレジスタPに格納され、これにより当該曲
の内部的な自動演奏が終了すると、SF4から図8のS
E4に進み上述したSE5〜SE7の処理を実行して、
内部的な自動演奏を曲の始めから開始可能な状態を形成
する。
タイマーTが“0”となる毎に、つまり1個の音符に対
応する符長時間が経過する毎に、レジスタPには次の音
符1個に対応する音高データ(P)が、タイマーTには
同一音符に対応する符長データ(T)が順次セットされ
て行く。したがって、このフローにより、選択された曲
の自動演奏データが順次読み出され、これにより内部的
に当該楽曲の自動演奏が進行して行く。そして、SF3
で当該曲の自動演奏データにおける最終データであるE
NDデータがレジスタPに格納され、これにより当該曲
の内部的な自動演奏が終了すると、SF4から図8のS
E4に進み上述したSE5〜SE7の処理を実行して、
内部的な自動演奏を曲の始めから開始可能な状態を形成
する。
【0019】また、図10に示すフローでは、機能スイ
ッチのスキャン結果に基づき、ワンキーSW2が操作さ
れたか否かを判別し(SG1)、操作されたならばレジ
スタFがセット状態にあるか否かを判別する(SG
2)。そして、レジスタFがセット状態にあり、内部的
に自動演奏が実行中である場合には、音高データが格納
されているレジスタPが示す音高を予め設定されている
所定の音色で発音指示する(SG3)。この発音指示に
従って上述の音源処理が実行されることにより、スピー
カ11からはワンキーSW2が操作されたタイミング
で、レジスタPの示す音高の楽音が発生する。このと
き、上述した図9のフローにより、レジスタPには自動
演奏される曲の発音タイミングをもって当該発音タイミ
ングで発音させるべき音高データが順次格納されてい
る。したがって、ユーザーが予め選択した曲の発音タイ
ミングで正しくワンキーSW2を操作した場合には、当
該曲を構成する音符に対応する発音タイミング及び音高
で楽音が順次発生し、この順次発生する楽音により予め
選択した曲が形成される。
ッチのスキャン結果に基づき、ワンキーSW2が操作さ
れたか否かを判別し(SG1)、操作されたならばレジ
スタFがセット状態にあるか否かを判別する(SG
2)。そして、レジスタFがセット状態にあり、内部的
に自動演奏が実行中である場合には、音高データが格納
されているレジスタPが示す音高を予め設定されている
所定の音色で発音指示する(SG3)。この発音指示に
従って上述の音源処理が実行されることにより、スピー
カ11からはワンキーSW2が操作されたタイミング
で、レジスタPの示す音高の楽音が発生する。このと
き、上述した図9のフローにより、レジスタPには自動
演奏される曲の発音タイミングをもって当該発音タイミ
ングで発音させるべき音高データが順次格納されてい
る。したがって、ユーザーが予め選択した曲の発音タイ
ミングで正しくワンキーSW2を操作した場合には、当
該曲を構成する音符に対応する発音タイミング及び音高
で楽音が順次発生し、この順次発生する楽音により予め
選択した曲が形成される。
【0020】一方、図4に示したSA6では、図11に
示したフローに従って、一部の処理が実行される。すな
わち、レジスタFがセット状態にあるか否かを判別し
(SH1)、レジスタFセット状態にあり、内部的に自
動演奏が進行している場合には、レジスタPに格納され
ている音高データに変化が有るか否かを判別する(SH
2)。そして、レジスタPに格納されている音高データ
に変化が有った場合、つまり次の音符に対応する音高デ
ータが読み出された場合には、発音中であるか否かを判
別する(SH3)。この判別の結果、発音中であった場
合には当該発音中の楽音の音高をレジスタPの示す音高
に変更指示する(SH4)。よって、例えば曲の発音タ
イミングに合致しない誤ったタイミングでワンキーSW
2を操作し、その結果SG3での処理による発音中に次
の発音タイミングとなって、次の音高データがレジスタ
Pに格納されても、SH4の処理により発生中の楽音の
音高が次の発音タイミングで発生させるべき楽音の音高
に変化する。
示したフローに従って、一部の処理が実行される。すな
わち、レジスタFがセット状態にあるか否かを判別し
(SH1)、レジスタFセット状態にあり、内部的に自
動演奏が進行している場合には、レジスタPに格納され
ている音高データに変化が有るか否かを判別する(SH
2)。そして、レジスタPに格納されている音高データ
に変化が有った場合、つまり次の音符に対応する音高デ
ータが読み出された場合には、発音中であるか否かを判
別する(SH3)。この判別の結果、発音中であった場
合には当該発音中の楽音の音高をレジスタPの示す音高
に変更指示する(SH4)。よって、例えば曲の発音タ
イミングに合致しない誤ったタイミングでワンキーSW
2を操作し、その結果SG3での処理による発音中に次
の発音タイミングとなって、次の音高データがレジスタ
Pに格納されても、SH4の処理により発生中の楽音の
音高が次の発音タイミングで発生させるべき楽音の音高
に変化する。
【0021】つまり、操作途中で操作タイミングが判ら
なくなってしまった場合であっても、連続的にワンキー
SW2を操作すれば、発生する楽音の音高が内部的な自
動演奏に依存して順次変化する。したがって、この順次
変化する楽音の音高により、内部的に進行している自動
演奏の曲部分を認識することができ、さらには、この認
識した曲部分から次の発音タイミングも認識することが
できる。よって、この認識した発音タイミングに従って
ワンキーSW2の操作を行うことにより、当該楽曲の発
音タイミングに合致した正しい操作タイミングでワンキ
ーSW2の操作を再開することができる。
なくなってしまった場合であっても、連続的にワンキー
SW2を操作すれば、発生する楽音の音高が内部的な自
動演奏に依存して順次変化する。したがって、この順次
変化する楽音の音高により、内部的に進行している自動
演奏の曲部分を認識することができ、さらには、この認
識した曲部分から次の発音タイミングも認識することが
できる。よって、この認識した発音タイミングに従って
ワンキーSW2の操作を行うことにより、当該楽曲の発
音タイミングに合致した正しい操作タイミングでワンキ
ーSW2の操作を再開することができる。
【0022】
【発明の効果】以上説明したように本発明は、楽曲を構
成する自動演奏データを順次読み出して内部的に自動演
奏を進行させる一方、使用者によりマニュアル操作子が
操作された際には、読み出された自動演奏データに基づ
いて発音指示を行うようにした。したがって、この発音
指示に基づく楽音が内部的に進行している自動演奏に依
存して発生することから、この自動演奏に依存して発生
する楽音により当該楽曲の部分及び以降の発音タイミン
グを認識することができる。よって、途中で操作タイミ
ングが判らなくなってしまった場合であっても混乱する
ことなく、再度正しい操作タイミングでマニュアル操作
子を操作しつつ当該楽曲の演奏を行うことができる。
成する自動演奏データを順次読み出して内部的に自動演
奏を進行させる一方、使用者によりマニュアル操作子が
操作された際には、読み出された自動演奏データに基づ
いて発音指示を行うようにした。したがって、この発音
指示に基づく楽音が内部的に進行している自動演奏に依
存して発生することから、この自動演奏に依存して発生
する楽音により当該楽曲の部分及び以降の発音タイミン
グを認識することができる。よって、途中で操作タイミ
ングが判らなくなってしまった場合であっても混乱する
ことなく、再度正しい操作タイミングでマニュアル操作
子を操作しつつ当該楽曲の演奏を行うことができる。
【図1】本発明の一実施例にかかる電子楽器の全体構造
を示すブロック図である。
を示すブロック図である。
【図2】同実施例にかかる電子楽器の要部平面図であ
る。
る。
【図3】ROMの一部に記憶されている自動演奏データ
の一部を示す概念図である。
の一部を示す概念図である。
【図4】メインルーチンを示すフローチャートである。
【図5】タイマーインタラプトルーチンを示すフロー
チャートである。
チャートである。
【図6】タイマーインタラプトルーチンにおける音源
処理の内容を示すフローチャートである。
処理の内容を示すフローチャートである。
【図7】タイマーインタラプトルーチンを示すフロー
チャートである。
チャートである。
【図8】図4に示したメインルーチンにおけるSA3の
処理の一部を示すフローチャートである。
処理の一部を示すフローチャートである。
【図9】同メインルーチンにおけるSA3の処理の一部
を示すフローチャートである。
を示すフローチャートである。
【図10】同メインルーチンにおけるSA3の処理の一
部を示すフローチャートである。
部を示すフローチャートである。
【図11】図4に示したメインルーチンにおけるSA6
の処理の一部を示すフローチャートである。
の処理の一部を示すフローチャートである。
2 ワンキーSW 3 スタート/ストップSW 4 スイッチ部 5 CPU 6 ROM 7 RAM
Claims (2)
- 【請求項1】 楽曲を構成する自動演奏データを記憶す
る記憶手段と、 この記憶手段から上記自動演奏データを順次読み出す読
出手段と、 使用者により操作されるマニュアル操作子と、 このマニュアル操作子が操作されると、上記読出手段に
より読み出された自動演奏データに基づいて発音指示を
行う発音指示手段と、 を有することを特徴とする演奏装置。 - 【請求項2】 上記自動演奏データは、上記楽曲構成す
る各音符の音高を示す音高データと符長を示す符長デー
タとで構成されていることを特徴とする請求項1記載の
演奏装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5325858A JPH07152372A (ja) | 1993-11-30 | 1993-11-30 | 演奏装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5325858A JPH07152372A (ja) | 1993-11-30 | 1993-11-30 | 演奏装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07152372A true JPH07152372A (ja) | 1995-06-16 |
Family
ID=18181411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5325858A Pending JPH07152372A (ja) | 1993-11-30 | 1993-11-30 | 演奏装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07152372A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5777251A (en) * | 1995-12-07 | 1998-07-07 | Yamaha Corporation | Electronic musical instrument with musical performance assisting system that controls performance progression timing, tone generation and tone muting |
JP2008020876A (ja) * | 2006-06-15 | 2008-01-31 | Casio Comput Co Ltd | 演奏装置、演奏実現方法およびプログラム |
JP2008020875A (ja) * | 2006-06-15 | 2008-01-31 | Casio Comput Co Ltd | 演奏装置、演奏実現方法およびプログラム |
-
1993
- 1993-11-30 JP JP5325858A patent/JPH07152372A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5777251A (en) * | 1995-12-07 | 1998-07-07 | Yamaha Corporation | Electronic musical instrument with musical performance assisting system that controls performance progression timing, tone generation and tone muting |
JP2008020876A (ja) * | 2006-06-15 | 2008-01-31 | Casio Comput Co Ltd | 演奏装置、演奏実現方法およびプログラム |
JP2008020875A (ja) * | 2006-06-15 | 2008-01-31 | Casio Comput Co Ltd | 演奏装置、演奏実現方法およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100297674B1 (ko) | 자동연주장치 및 자동연주 데이터의 처리방법 | |
JP3239411B2 (ja) | 自動演奏機能付電子楽器 | |
JP3684774B2 (ja) | 演奏指示装置及びプログラムを記録した媒体 | |
JPH07152372A (ja) | 演奏装置 | |
US20030004701A1 (en) | Automatic performing apparatus and electronic instrument | |
JP3613935B2 (ja) | 演奏練習装置及びプログラムを記録した媒体 | |
JPH0627960A (ja) | 自動伴奏装置 | |
JP3613062B2 (ja) | 楽音データ作成方法および記憶媒体 | |
JP6528752B2 (ja) | 楽音再生装置、楽音再生方法、プログラムおよび電子楽器 | |
JP2006065186A (ja) | テンポ情報出力装置、テンポ情報出力方法及びテンポ情報出力のためのコンピュータプログラム、タッチ情報出力装置、タッチ情報出力方法及びタッチ情報出力のためのコンピュータプログラム | |
JPH05204297A (ja) | 階名発生装置 | |
JP2674452B2 (ja) | 楽曲再生装置 | |
JPH1185153A (ja) | 演奏装置 | |
JP2694788B2 (ja) | 電子楽器 | |
JP2722880B2 (ja) | 電子楽器 | |
JP2643277B2 (ja) | 自動演奏装置 | |
JP2601039B2 (ja) | 電子楽器 | |
JP2000259154A (ja) | コード判定装置 | |
JPH10143177A (ja) | カラオケ装置 | |
JP2738217B2 (ja) | 電子楽器 | |
JPH04274297A (ja) | 自動演奏装置 | |
JP3005911B2 (ja) | 演奏制御装置 | |
JP3329030B2 (ja) | 楽音信号発生装置 | |
JP3861886B2 (ja) | 楽音波形データ作成方法および記憶媒体 | |
JP2961675B2 (ja) | 電子楽器 |