JP5568878B2 - 電子楽器、及びプログラム - Google Patents

電子楽器、及びプログラム Download PDF

Info

Publication number
JP5568878B2
JP5568878B2 JP2009067206A JP2009067206A JP5568878B2 JP 5568878 B2 JP5568878 B2 JP 5568878B2 JP 2009067206 A JP2009067206 A JP 2009067206A JP 2009067206 A JP2009067206 A JP 2009067206A JP 5568878 B2 JP5568878 B2 JP 5568878B2
Authority
JP
Japan
Prior art keywords
key
stored
division
keyboard
range
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.)
Active
Application number
JP2009067206A
Other languages
English (en)
Other versions
JP2010217802A (ja
Inventor
善登 山口
達也 出嶌
潤一郎 川原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2009067206A priority Critical patent/JP5568878B2/ja
Publication of JP2010217802A publication Critical patent/JP2010217802A/ja
Application granted granted Critical
Publication of JP5568878B2 publication Critical patent/JP5568878B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

本発明は、電子楽器、及びプログラムに関する。
鍵盤を有する電子楽器においては、当該鍵盤を上下2つの鍵域に分割し、鍵域夫々に異なる音色を割当てることにより、押鍵された鍵が属する鍵域に応じて異なる音色の楽音を発生可能とする構成が従来から知られている。こうした構成とすることにより、より多彩な演奏が可能となる。
近年になっては、この鍵域分割を上下2分割にするだけでなく、上鍵域、中鍵域及び下鍵域の3分割をも可能とする電子楽器も提案されている(特許文献1参照)
特開平8−234747公報
特許文献1に示す構成であれば、演奏する内容あるいは環境に応じて、鍵盤を2分割、3分割あるいは分割なしの状態に、というように自由に分割数を変更できるとともに、その分割位置もユーザが自由に設定することが可能となる。
この鍵域の分割数、各分割位置を設定する操作は、例えば特許文献1の場合では、ロータリーエンコーダ等の特別な操作子を用いて行なうことが一般的である。
このような操作子を用い、かつ表示部に表示された鍵盤画像を見ながら、分割数、複数の分割位置、さらには分割された各鍵域への音色割当てなどをひとつひとつ設定することは操作が煩雑に感じることがある。
特に、鍵盤の分割形態を変更、つまり3分割から2分割へ、さらには2分割から分割なしへ、と変更しようとする場合、分割位置を1個減らして鍵域を1個減らすだけであるにも係らず、鍵盤以外の表示部を見ながら、鍵盤以外の操作子を操作して行わねばならない。
これは、鍵盤に関係するにも係らず鍵盤以外を用いなければならないこと、その操作自体が、何らかのものを生じさせる操作として人間の感覚にマッチしていないため、非常に煩雑に感じさせる要因となっていた。
さらに、鍵域数の減少に応じて各鍵域に割当てられた音色を変更することが必要となる。このためには、まず変更が必要な鍵域を指定し、さらにこの指定された鍵域に割当てるべき音色を指定しなければならず、全ての鍵域についてこれをもれなく行なうとなると大変な手間がかかる。
しかしながら、各鍵域全てについて割当てられるべき音色を指定し直す操作が全ての場合において必要であるかどうかは甚だ疑問である。
特に、3分割した状態から2分割した状態に変更する場合などは、ただ単に不要な鍵域を消滅させるだけで、残る鍵域に割当てられる音色は変更しない場合が多い。
また、鍵域を上下2分割した状態から上中下3分割した状態に変更する場合、新たにできた鍵域が上鍵域であるときは下鍵域の音色はそのまま継続して使用する場合が多い。逆に新たにできた鍵域が下鍵域であるときも上鍵域の音色はそのまま使用する指定する場合が多い。
本発明は、上記従来の課題に鑑みなされたものであり、鍵域分割数の変更に伴う操作を、より人間の感覚にあった簡単な操作で行えるようにすることを目的とする。
上記目的を達成するため、本発明に係る電子楽器は、鍵盤と、前記鍵盤を複数の鍵域に分割するための分割位置を記憶する分割位置記憶手段と、前記鍵盤の分割状態を示す分割状態データを記憶する分割状態記憶手段と、前記複数の鍵域毎に音色データを記憶可能な音色記憶手段と、第1のモード及び第2のモードのいずれかを指定するモード指定スイッチと、前記鍵盤上でいずれかの鍵が押鍵されたか否か判別する押鍵検出手段と、前記モード指定スイッチにより第1のモードが指定されている状態において、前記押鍵検出手段により、前記分割位置記憶手段に記憶された分割位置に対応する鍵から前記鍵盤の特定の鍵まで連続的に押鍵されたことを検出した場合に、当該連続的な押鍵の最初の押鍵位置に対応する分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態データを変更する記憶制御手段と、前記第2のモードが指定されている場合に、前記押鍵検出手段により検出された鍵が、前記分割状態記憶手段に記憶された分割状態により定められた鍵域のいずれに属するのかを判別する鍵域判別手段と、前記押鍵された鍵に対応する音高でかつ、この鍵域判別手段にて検出された鍵域に割当てられた音色で楽音の発音を指示する発音指示手段と、を有することを特徴とする。
また、前記分割位置記憶手段は、前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が予め記憶され、前記記憶制御手段は、前記第1のモードが指定され、かつ前記分割状態記憶手段が前記鍵盤を上中下鍵域に分割している状態を記憶している場合において、前記押鍵検出手段が前記予め記憶された下鍵域と中鍵域との分割位置に対応する鍵を押鍵開始位置として最低鍵まで連続的に押鍵したことを検出した場合に、当該下鍵域と中鍵域との分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態を、前記分割位置記憶手段に記憶されている中鍵域と上鍵域との分割位置により前記鍵盤を新たな上鍵域と下鍵域とに分割がなされている状態に変更する、ことが望ましい。
また、前記分割位置記憶手段は、前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が予め記憶され、
前記記憶制御手段は、前記第1のモードが指定され、かつ前記分割状態記憶手段が前記鍵盤を上中下鍵域に分割している状態を記憶している場合において、前記押鍵検出手段が前記予め記憶された中鍵域と上鍵域との分割位置に対応する鍵を押鍵開始位置として最高鍵まで連続的に押鍵したことを検出した場合に、当該中鍵域と上鍵域との分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態を、前記分割位置記憶手段に記憶されている下鍵域と中鍵域との分割位置により前記鍵盤を新たな上鍵域と下鍵域とに分割がなされている状態に変更する、ことが望ましい。
また、前記電子楽器はさらに、前記分割位置記憶手段に前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が記憶されている状態において、前記音色記憶手段の第1の記憶エリアに下鍵域に割当てられる音色が記憶され、第2の記憶エリアに中鍵域に割当てられる音色が記憶され、さらに第3の記憶エリアに上鍵域に割当てられる音色が記憶され、前記押鍵検出手段が前記下鍵域と中鍵域の分割位置に対応する鍵を押鍵開始位置として最低鍵まで連続的に押鍵したことを検出したことにより、前記記憶制御手段にて前記下鍵域と中鍵域の分割位置が消去された際に、前記音色記憶手段の第1の記憶エリアに記憶されている音色を、前記第2の記憶エリアに記憶されている音色で置き換えるとともに、前記第1の記憶エリアに記憶されている音色を前記新たな下鍵域に割り当てるとともに、前記第3の記憶エリアに記憶されている音色を前記新たな上鍵域に割り当てるの音色制御手段を有する、ことが望ましい。
また、前記電子楽器はさらに、前記分割位置記憶手段に前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が記憶されている状態において、前記音色記憶手段の第1の記憶エリアに下鍵域に割当てられる音色が記憶され、第2の記憶エリアに中鍵域に割当てられる音色が記憶され、さらに第3の記憶エリアに上鍵域に割当てられる音色が記憶され、前記押鍵検出手段が前記中鍵域と上鍵域との分割位置に対応する鍵を押鍵開始位置として最高鍵まで連続的に押鍵したことを検出したことにより、前記記憶制御手段にて前記中鍵域と上鍵域との分割位置が消去された際に、前記音色記憶手段の第3の記憶エリアに記憶されている音色を、前記第2の記憶エリアに記憶されている音色で置き換えるとともに、前記第1の記憶エリアに記憶されている音色を前記新たな下鍵域に割り当てるとともに、前記第3の記憶エリアに記憶されている音色を前記新たな上鍵域に割り当てるの音色制御手段を有する、ことが望ましい。
また、前記分割位置記憶手段は、前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が予め記憶され、前記記憶制御手段は、前記第1のモードが指定され、かつ前記分割状態記憶手段が前記鍵盤を上中下鍵域に分割している状態を記憶している場合において、前記押鍵検出手段が前記予め記憶された一方の分割位置に対応する鍵を押鍵開始位置として他方の分割位置に対応する鍵まで連続的に押鍵したことを検出した場合に、当該一方の分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態を、前記分割位置記憶手段に記憶されている他方の分割位置により前記鍵盤を新たな上鍵域と下鍵域とに分割がなされている状態に変更する、ことが望ましい。
本発明に係るプログラムは、鍵盤と、前記鍵盤を複数の鍵域に分割するための分割位置を記憶する分割位置記憶手段と、前記鍵盤の分割状態を示す分割状態データを記憶する分割状態記憶手段と、前記複数の鍵域毎に音色データを記憶可能な音色記憶手段と、第1のモード及び第2のモードのいずれかを指定するモード指定スイッチと、を有する電子楽器に用いられるコンピュータに、前記鍵盤上でいずれかの鍵が押鍵されたか否か判別する押鍵検出ステップと、前記モード指定スイッチにより第1のモードが指定されている状態において、前記押鍵検出ステップにより、前記分割位置記憶手段に記憶された分割位置に対応する鍵から前記鍵盤の特定の鍵まで連続的に押鍵されたことを検出した場合に、当該連続的な押鍵の最初の押鍵位置に対応する分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態データを変更する記憶制御ステップと、前記第2のモードが指定されている場合に、前記押鍵検出ステップにより検出された鍵が、前記分割状態記憶手段に記憶された分割状態により定められた鍵域のいずれに属するのかを判別する鍵域判別ステップと、前記押鍵された鍵に対応する音高でかつ、この鍵域判別ステップにて検出された鍵域に割当てられた音色で楽音の発音を指示する発音指示ステップと、を実行させることを特徴とする。
本発明は、鍵盤の分割数を減らそうとした場合、鍵盤のひとつの分割位置から最低鍵に向かって、最高鍵に向かって、あるいは他の分割位置に向かって連続的に押鍵すると、最初に押鍵した分割位置が消滅し、この分割位置により分割されていた鍵域もなくなる。
このように、鍵盤上にある上鍵域、中鍵域あるいは下鍵域をなくそうとする場合、この作成したい鍵域の部分に含まれる鍵を連続して押鍵する、つまり対応する鍵域をあたかも払いのけるような操作を行なえばよい。
このような操作は不要な鍵域を破棄する操作として人間の感覚によりマッチするものであるため、煩雑さを感じることなく操作を行なうことが可能になる。
また、不要とされる鍵域を減らすことにより、残りの鍵域に対する音色割当て状態の変更が必要となるが、本発明は、例えば上鍵域を破棄すれば、中及び下鍵域にて上及び下鍵域を構成するようになり、下鍵域を破棄すれば、中及び下鍵域にて上及び下鍵域を構成するというように、残された鍵域がそのまま新たな鍵域として利用される。従って音色割当て操作を最初から行なう必要がなくなるため、鍵域数変更に伴う音色割当て操作は必要最小限のものとなる。
図1は、本実施形態を適用した電子楽器の全体ブロック図である。 図2は、図1のワークRAMの記憶形態を示す図である。 図3は、メインフローである。 図4は、図3のスイッチ処理の詳細なフローチャートである。 図5は、図4のモードスイッチ処理の詳細なフローチャートである。 図6は、図4の音色スイッチ処理の詳細なフローチャートである。 図7は、図4の鍵域指定スイッチ処理の詳細なフローチャートである。 図8は、図3の鍵盤処理のフローチャート(その1)。 図9は、図3の鍵盤処理のフローチャート(その2)。 図10は、図3の鍵盤処理のフローチャート(その3)。 図11は、図3の鍵盤処理のフローチャート(その4)。 図12は、図3の鍵盤処理のフローチャート(その5)。 図13は、図3の鍵盤処理のフローチャート(その6)。 図14は、図3の鍵盤処理のフローチャート(その7)。 図15は、図3の鍵盤処理のフローチャート(その8)。 図16は、図3の鍵盤処理のフローチャート(その9)。 図17は、図3の表示処理のフローチャート。 図18は、タイマインタラプト処理のフローチャート(その1)。 図19は、タイマインタラプト処理のフローチャート(その2)。
以下、本発明の実施形態について、図面を用いて説明する。
図1は、本実施形態を適用した電子楽器の全体ブロック図である。
CPU1は、プログラムROM2に記憶されたプログラムの処理手順に従って、この電子楽器全体の動作を制御するものである。また、このプログラムROM2には、本実施形態においては、複数種の音色データも記憶されている。
ワークRAM3は、このCPU1で処理を行なう際に生成されるデータを一時的に記憶するエリアを有する。そして表示部4は、この電子楽器の操作に必要なデータを表示するものであり、特に本実施形態においては、鍵盤5を2分割あるいは3分割した場合に、その分割位置を表示するように構成されている。そのために、例えばこの表示部4は、鍵盤の各鍵の近傍に夫々設けられたLED等の発光素子群を含む。
鍵盤5は、演奏操作に用いるものであり、本実施形態においては、この鍵盤5上を2又は3個の鍵域に分割し、この分割された各鍵域に夫々異なる音色が割当て可能な構成になっている。
SW部6は、本実施形態においては、モードスイッチ、音色スイッチ及び鍵域指定スイッチからなる。このうち、モードスイッチは、通常演奏を行うモードと鍵域を設定するモードのいずれかのモードを指定するスイッチである。音色スイッチは鍵盤5上の各鍵域に割当てられるべき音色を指定するスイッチである。そして鍵域指定スイッチは、音色スイッチで指定された音色を割当てるべき鍵域を指定するスイッチである。
また、これ以外に、鍵盤5を鍵域分割なしの状態に戻すクリアスイッチ等を設けてもよい。
音源7は、鍵盤5の健の押鍵により指定された音高と、押鍵された健が含まれる鍵域に割当てられた音色とに基づいた楽音信号を生成するものであり、発音部8は、アンプ、スピーカ等からなり、この生成された楽音信号を発音するものである。
図2は、図1のワークRAM3の記憶形態を示す図である。図に示すように、各エリアにはCPU1の処理動作に必要なデータが記憶される。
MODEFは、通常演奏モードのときは「0」、鍵域指定モードのときは「1」となるフラグをストアするエリアである。
TONEは音色指定スイッチにより指定された音色を示す音色番号を一時的にストアするエリアである。
TONE(1)は、鍵域が分割されていない場合に鍵盤5全域に割当てられる音色番号、あるいは鍵域が分割されている場合は下鍵域に割当てられる音色の音色番号をストアするエリアである。
TONE(2)は、鍵盤5が2分割されている場合は上鍵域、3分割されている場合は中鍵域に割当てられる音色の音色番号をストアするエリアである。
TONE(3)は鍵盤5が3分割されている場合に、上鍵域に音色を割当てられた音色を示す音色番号をストアするエリアである。
TONEF1、TONEF2及びTONEF3は夫々、鍵盤5の下鍵域、中鍵域及び上鍵域のいずれに指定された音色を割当てるべきかを示すフラグをストアするエリアである。
SPFは、鍵盤5の分割形態を示すデータをストアするエリアであり、「0」の場合は分割なし、「1」の場合は上下鍵域の2分割、「2」の場合は上中下鍵域の3分割となることを示す。
SP(1)及びSP(2)は、鍵盤5上の分割位置を示す鍵盤号をストアするエリアである。
NOTEは、鍵盤5上の健の押鍵により指定される音高(鍵盤号)をストアするエリアである。
FNOTEは、前述のNOTEにストアされた音高より前に指定された音高をストアエリアである。
STF1は、鍵域指定モード(MODE=1)でかつ鍵盤5が分割されていない状態(SPF=0)においてなされた押鍵の状態を示すデータをストアするエリアである。
STF2は、鍵域指定モード(MODE=1)でかつ鍵盤5が2分割されている状態(SPF=1)においてなされた押鍵の状態を示すデータをストアするエリアである。
STF3は、鍵域指定モード(MODE=1)でかつ鍵盤5が3分割されている状態(SPF=2)においてなされた押鍵の状態を示すデータをストアするエリアである。
タイマー値は、鍵域指定モード(MODEF=1)において、押鍵により鍵域分割の指定がなされてから、それが確定するまでの時間を計測するタイマー(図示せず)のカウント値をストアするエリアである。
図3〜図20は、CPU1の処理動作を示すフローチャートである。
図3は、メインフローである。まず、電源がオンされると、CPU1の内部レジスタ及びワークRAM3の記憶内容をクリアするイニシャライズ処理を行なう(ステップS1)。続いてスイッチ処理(ステップS2)、鍵盤処理(ステップS3)、表示処理(ステップS4)、そしてその他の処理(ステップS5)の順番で処理を行なう。ステップS2〜S5の処理は、電源がオフされるまで繰り返し、行なわれる。
図4は、図3のスイッチ処理(ステップS2)の詳細なフローチャートである。
まず、モードスイッチ処理(ステップS20)を行い、続いて音色スイッチ処理(ステップS21)、鍵域指定スイッチ処理(ステップS22)の順で処理を行なう。
図5は、図4のモードスイッチ処理(ステップS20)の詳細なフローチャートである。
まず、モードスイッチがオン操作されたか否か判別し(ステップS200)、オン操作されたと判別されたなら、MODEFを反転させて(ステップS201)、この処理を終了させる。オン操作されていなければ、何もせずにこの処理を終了する。
このように、モードスイッチが操作される毎にMODEFは反転し、通常演奏モード(MODEF=0)と鍵域設定モード(MODEF=1)が交互に設定されることになる。
図6は、図4の音色スイッチ処理(ステップS21)の詳細なフローチャートである。
まず、音色スイッチがオン操作されたか否か判別する(ステップS202)。ここでオン操作が判別されなければこの処理を終了する。
オン操作されているならば、この音色スイッチにて指定された音色番号をTONEにストアする(ステップS203)。続いて、TONEF1、TONEF2及びTONEF3にストアされているフラグのいずれかが「1」となっているか判別する(ステップS204〜S206)。
ここでもしTONEF1にストアされたフラグが「1」であるなら、ステップS207に進み、TONEにストアされた音色番号をTONE(1)にストアし、TONEF1を「0」に戻して(ステップS208)、この処理を終了する。
また、TONEF2にストアされたフラグが「1」であるなら、ステップS209に進み、TONEにストアされた音色番号をTONE(2)にストアし、TONEF2を「0」に戻して(ステップS210)、この処理を終了する。
また、TONEF3にストアされたフラグが「1」であるなら、ステップS211に進み、TONEにストアされた音色番号をTONE(3)にストアし、TONEF3を「0」に戻して(ステップS212)、この処理を終了する。
このように、音色スイッチにより音色が指定されると、この指定された音色の音色番号が、TONEF1〜3にストアされたフラグの状態に応じて、TONE(1)〜(3)のいずれかにストアされる。
図7は、図4の鍵域指定スイッチ処理(ステップS22)の詳細なフローチャートである。
まず、MODEFにストアされたフラグが「0」、つまり通常演奏モードであるか否か判別する(ステップS213)。ここで「0」でないと判別されたなら、この処理を終了する。
「0」と判別されたなら、ステップS214に進み、SPFに記憶されたデータが「0」より大きいか否か、つまり鍵域が2分割あるいは3分割されている状態か否かを判別する。もし「0」であるなら鍵盤5は分割されている状態にないため、ステップS215に進みTONEF1にストアされたフラグを「1」とし、この処理を終了する。
「0」より大きいと判別されたなら、続いて鍵域指定スイッチがオン操作されたか否か判別する(ステップS216)。もしオン操作されていないと判別された場合も、この処理を終了する。
スイッチがオンされていると判別されたなら、続いてSPFに記憶されたデータの値が「1」及び「2」のいずれであるか判別する(ステップS217、S218)。
ここで「1」と判別されたなら、つまり鍵盤5上を上鍵域と下鍵域の2分割にしている場合は、まずステップS219に進み、上下いずれの鍵域を鍵域指定スイッチにて指定したのかを判別する。ここで上鍵域が指定されていた場合はステップS220に進んでTONEF2にストアされたフラグを「1」とし、下鍵域が指定されていた場合はステップS215に進んでTONEF1にストアされたフラグを「1」とし、この処理を終了する。
一方、「2」と判別されたなら、つまり鍵盤5上を上鍵域、中鍵域及び下鍵域の3分割にしている場合は、まずステップS221に進み、上中下いずれの鍵域を鍵域指定スイッチにて指定したのかを判別する。
そして上鍵域が指定されていた場合はステップS220に進んでTONEF3にストアされたフラグを「1」とし、下鍵域が指定されていた場合はステップS215に進んでTONEF1にストアされたフラグを「1」とし、中鍵域が指定されていた場合はステップS222に進んでTONEF2にストアされたフラグを「1」としこの処理を終了する。
このように、通常演奏モードにおいて、鍵域指定スイッチによりいずれかの鍵域が指定されると、それに対応してTONEF1〜TONEF3にストアされたフラグのいずれかが「1」となる。
図8〜図16は、図3の鍵盤処理(ステップS3)の詳細なフローチャートである。
まず、図8において、MODEFにストアされたフラグが「0」、つまり通常演奏モードであるか否か判別する(ステップS300)。
ここで「0」と判別されると、ステップS301に進み、鍵盤5上の鍵を所定方向から順に走査し、鍵毎に変化があったか否かを判別する(ステップS302)。もし、鍵の変化なしと判別されたなら、この処理を終了する。
鍵がオフ操作、つまり離鍵されたと判別されたなら、離鍵された鍵の鍵番号をNOTEにストアし(ステップS303)、このNOTEにストアされた鍵番号に対応する音高の楽音の消音を、音源7に指示する(ステップS304)。そしてこの処理を終了する。
一方、ステップS302にて押鍵されたと判別されると、ステップS305に進み、押鍵された鍵の鍵番号をNOTEにストアする。そして、SPFにストアされたデータが「0(分割なし)」、「1(2分割)」あるいは「2(3分割)」のいずれかであるかを判別する(ステップS306)。
ここで、「0」と判別されたなら、NOTEにストアされた鍵番号に対応する音高でかつTONE(1)にストアされた音色番号に対応する音色の楽音の発生を、音源7に対して指示して(ステップS307)この処理を終了する。
このように、鍵域分割の状態でない場合は、鍵盤5上のいずれの鍵を押鍵しても、TONE(1)にストアされた音色番号で指定される音色の楽音が発音される。
一方、ステップS306において、SPFにストアされたフラグが「1」、つまり鍵盤5が上下鍵域に分割された状態と判別されたなら、NOTEにストアされている押鍵された鍵の鍵番号が、SP(1)にストアされている分割位置を表わす鍵盤号より大きいか否かを判別する(ステップS308)。
もし、SP(1)にストアされた鍵盤号の方が大きいと判別されたなら、これは押鍵が下鍵域でなされたことを意味するので、ステップS307に進み、NOTEにストアされた鍵番号に対応する音高でかつTONE(1)にストアされた音色番号に対応する音色の楽音の発生を、音源7に対して指示してこの処理を終了する。逆の場合であれば、これは押鍵が上鍵域でなされたことを意味するので、TONE(2)にストアされた音色番号に対応する音色でかつNOTEにストアされた鍵盤号対応する音高の楽音の発生を、音源7に対して指示してこの処理を終了する(ステップS309)。
このように、いずれかの鍵が押鍵され、かつ鍵盤5が上下鍵域に分割されている状態では、上鍵域に含まれる鍵を押鍵した場合は、TONE(2)にストアされた音色番号で指定される音色の楽音が発音されるが、下鍵域に含まれる鍵を押鍵した場合は、TONE(1)にストアされた音色番号で指定される音色の楽音が発音される。
さらに、ステップS306にて、SPFにストアされたフラグが「2」、つまり鍵盤5が上、中及び下鍵域に分割された状態であると判別されたなら、ステップS310、S311に進む。ここにおいて、SP(2)にストアされた鍵盤号は上鍵域と中鍵域との分割位置を表わし、SP(1)にストアされた鍵盤号が中鍵域と下鍵域との分割位置を表わしている。
従って、NOTEにストアされている鍵盤号がSP(1)より小さいと判別されたなら、下鍵域での押鍵と判断され、ステップS307に進み、TONE(1)にストアされた音色番号で指定される音色の楽音の発生が指示される。
また、NOTEにストアされた鍵盤号がSP(2)とSP(1)との間に存在するなら、中鍵域での押鍵と判断され、ステップS312に進み、TONE(2)にストアされた音色番号で指定される音色の楽音の発生が指示される。
さらに、NOTEにストアされている鍵盤号がSP(2)より大きいと判別されたなら、上鍵域での押鍵と判断され、ステップS309に進み、TONE(3)にストアされた音色番号で指定される音色の楽音の発生が指示される。
このように、鍵盤5が3分割されている場合は、押鍵された鍵が上鍵域に属するならTONE(3)にストアされた音色番号で示される音色の楽音が、中鍵域に属するならTONE(2)にストアされた音色番号で示される音色の楽音が、下鍵域に属するならTONE(1)にストアされた音色番号で示される音色の楽音が、発音されることになる。
再びステップS300に戻り、MODEFにストアされたフラグが「0」でなく「1」と判別された場合、つまり鍵域指定モードである場合は、図9のステップS313に進み、鍵盤5を走査する。これにより鍵盤5上で押鍵があったか否か判別する(ステップS314)。もし押鍵がなければこの処理を終了する。
ここで押鍵ありと判別されたなら、この押鍵された鍵の鍵番号をNOTEにストアし(ステップS315)、タイマーによりカウントされたタイマー値をクリアする(ステップS316)。
そして、SPFにストアされたデータが「0」、つまり鍵盤5が分割されていない状態であるか否か判別する(ステップS317)。もし、「0」であるなら、NOTEに記憶されている押鍵された鍵番号が最低鍵、最高鍵あるいはそれ以外の鍵の鍵番号であるか判別する(ステップS318、S319)。ここで最低鍵であると判別されたなら、STFに「1」を、最高鍵であると判別されたならSTFに「2」をストアする(ステップS320、S321)。続いて、NOTEに記憶されている鍵番号をFNOTEにストアするとともに(ステップS322)、タイマーのカウントをスタートさせて(ステップS323)、この処理を終了する。
一方、最高鍵及び最低鍵のいずれでもない場合は、図10に進み、STFにストアされた値が「1」、あるいは「2」であるか否か判別する(ステップS324、S325)。そして「1」、「2」いずれでもない場合は、この処理を終了する。
このように、鍵域設定モードで鍵盤5が分割されていない状態で、最初に最低鍵を押鍵すればSTFは「1」、最高鍵を押鍵すればSTFは「2」となり、それ以外の鍵が押鍵されれば、処理が終了する。
そして最低鍵が押鍵された後、それ以外の鍵が押鍵されると、ステップS324を介してステップS326に進み、NOTEにストアされた鍵番号と、FNOTEにストアされた鍵番号に1加算された値とが同一か否か、つまり現在押鍵された鍵は、先に押鍵された鍵と高域側で隣接する鍵であるか否か判別する。ここでYESと判別されると、続いてNOTEにストアされ鍵番号が最高鍵か否か判別する(ステップS327)。そして最高鍵でないと判別されると、NOTEにストアされた鍵番号をFNOTEにストアし(ステップS328)、TONE(1)にストアされた音色番号をTONE(3)にストアし(ステップS329)、TONEF1を「1」にセットする(ステップS330)。
このように鍵盤5が分割されていない状態で、まず最低鍵を押鍵してからそれに高域側に隣接する鍵を順次押鍵しているかを判別し、これがYESであるならば、この状態で鍵盤5に割り当てられていた音色(TONE(1))を高鍵域に割り当てられる音色(TONE(3))とし、低音域に新たな音色を割り当て可能とする(TONEF1が「1」)。
ここでもし、高域側に隣接する鍵を押鍵しなかった場合はステップS326でNOとなり、ステップS331に進んでSTFにストアされていた値を「0」にするとともにTONEF1も「0」にする(ステップS332)。そしてタイマーを停止させて(ステップS333)この処理を終了する。また、ステップS327で最高鍵が押鍵されたと判別された場合も同様である。
このように、最低鍵を押鍵した後、その隣接する鍵から高域方向に順次押鍵せずに別の鍵を押鍵した場合、あるいは順次押鍵して最高鍵まで到達した場合、ステップS328〜S330にて設定した状態をクリアする。
一方、ステップS325に戻って、最初に押鍵された鍵が最高鍵と判別された場合、ステップS334に進み、NOTEにストアされた鍵番号と、FNOTEにストアされた鍵番号に1減算された値とが同一か否か、つまり現在押鍵された鍵は、先に押鍵された鍵と低域側で隣接する鍵であるか否か判別する。ここでYESと判別されると、続いてNOTEにストアされ鍵番号が最低鍵か否か判別する(ステップS335)。ここで最低鍵でないと判別されると、つまり、最高鍵を押鍵してからその低域側に隣接する鍵を順次押鍵した場合、しかもその押鍵が最低鍵でない場合はステップS336に進み、TONEF3にストアされたフラグを「1」とする。
もし最高鍵から隣接する鍵から低域方向に順次押鍵せずに別の鍵を押鍵した場合、あるいは順次押鍵して最低鍵まで到達した場合、ステップS331〜S333の処理に進む。
このように鍵盤5が分割されていない状態で、まず最高鍵を押鍵してからそれに低域側に隣接する鍵を順次押鍵している場合は、高鍵域に音色を割り当て可能とする(TONEF3が「1」)。
鍵盤5が分割されていない状態(SPF=0)での処理は前述のとおりであるが、図9のステップS317においてNOと判別されると、図11のS337に進み、SPFが「1」であるか否か判別される。ここで「1」と判別されると、つまり鍵盤5が上下2分割されている状態である場合は、続いてSTF2にストアされた値が「0」であるか否かを判別する(ステップS338)。ここで「0」である、つまり鍵域設定モードになってから最初の押鍵であると判別されると、続いてNOTEにストアされた押鍵された鍵の鍵番号がSP(1)、最低鍵あるいは最高鍵の鍵番号と一致するか否か判別する(ステップS339〜S341)。
SP(1)にストアされた鍵番号、つまり分割位置に対応する鍵番号を押鍵したと判別されたならSTF2を「1」に、最低鍵を押鍵したと判別されたならSTF2を「2」に、最高鍵を押鍵したと判別されたならSTF2を「3」にする(ステップS342〜S344)。この後NOTEにストアされた鍵番号をFNOTEにストアし(ステップS345)、タイマーのカウントをスタートさせて(ステップS346)、この処理を終了させる。一方、ステップS342〜S344において、上述のいずれの鍵の押鍵でもない場合は直ちにこの処理を終了する。
このように、鍵盤5が2分割されている状態で鍵域設定モードに移行した後、最初にいずれの鍵が押鍵されたかを判別し、タイマーをスタートさせる。
この後さらに別の押鍵がなされた場合は、ステップS347に進みSTF2が「1」、つまり最初の押鍵が分割位置であるSP(1)にストアされた鍵番号の鍵であったかどうか判別される。ここでYESと判別されると、NOTEにストアされた鍵番号の鍵、つまり現在押鍵された鍵が、先に押鍵された鍵に隣接した鍵であるか否か判別される(ステップS348、S349)。この判別結果がYESでかつ高域側に隣接している場合は、ステップS348からステップS350に進み、現在押鍵された鍵が最高鍵であるか否かを判別する。そしてここで最高鍵でないと判別された場合は、NOTEにストアされている現在押鍵された鍵の鍵番号をFNOTEにストアして(ステップS351)この処理を終了する。
ステップS350において、最高鍵であると判別された場合はステップS352に進み、SPFにストアされている値を「0」とする。続いてSTF2にストアされた値を「0」に戻し(ステップS353)、タイマーを停止して(ステップS354)この処理を終了する。
一方、ステップS349において現在押鍵された鍵が、先に押鍵された鍵に隣接した鍵でかつ低域側に隣接していると判別されると、ステップS355に進み、現在押鍵された鍵が最低鍵であるか否かを判別する。そしてここで最低鍵でないと判別された場合は、NOTEにストアされている現在押鍵された鍵の鍵番号をFNOTEにストアして(ステップS351)この処理を終了する。
ステップS355において、最低鍵であると判別された場合はステップS356に進み、TONE(3)にストアされている音色番号をTONE(1)にストアしたのち、ステップS352〜S354の処理を行う。
また、ステップS348及びS349の判別結果がいずれもNOである場合、つまり先に押鍵された鍵に隣接した鍵でない鍵を押鍵してしまった場合は、FNOTEにストアされている鍵番号をSP(1)にストアする(ステップS357)。
このように、鍵盤5が2分割されている状態において鍵域設定モードに移行して、まず分割位置(SP(1))に対応する鍵を押鍵した後、これに隣接する鍵を高域方向あるいは低域方向に順次押鍵していった場合、その最後に押鍵した鍵の位置が新たな分割位置となる。もし、この押鍵を最高鍵あるいは最低鍵に到達するまで続けた場合は、SPFを「0」にすることで、鍵盤5を分割なしの状態に変更する。
一方、最初に最低鍵を押鍵している場合は(STF2=「2」)、図12のステップS358にてYESと判別され、続いてNOTEの鍵番号と、FNOTEの鍵番号に1加算した鍵番号とが一致するか否か判別する(ステップS359)。ここでYESと判別された場合、つまり最初に押鍵した最低鍵に隣接する鍵を押鍵した場合、ステップS360に進む。そしてNOTEの鍵番号がSP(1)にストアされた鍵番号と一致するか否か、つまり押鍵された鍵が分割位置にある鍵であるか否かが判別される。ここでNOと判別されると、NOTEにストアされていた鍵番号をFNOTEにストアして(ステップS361)この処理を終了する。
このように先に押鍵された鍵の高域側に隣接する鍵を押鍵する操作を続けていれば、このステップS358〜S361の処理を繰り返す。
そして、もし先に押鍵された鍵の高域側に隣接する鍵ではなく、別の鍵を押鍵した場合(ステップS359においてNOと判断された場合)、あるいは高域側で隣接する鍵を押鍵する操作を続けた結果、NOTEの鍵番号がSP(1)にストアされた鍵番号と一致した場合(ステップS360においてYESと判断された場合)には、STF2を「0」に戻し(ステップS363)、タイマーを停止して(ステップS364)この処理を終了する。この場合は元の状態に戻り、分割状態は変更されない。
再びステップS358に戻って、STF2が「2」でないと判別された場合、図13のステップS369に進み、STF2が「3」、つまり最初の押鍵が最高鍵であったか否かが判別される。ここでYESと判別されると、今度はNOTEの鍵番号と、FNOTEの鍵番号に1加算した鍵番号とが一致するか否か判別する(ステップS370)。ここでYESと判別された場合、つまり最初に押鍵した最高鍵に隣接する鍵を押鍵した場合、ステップS371に進む。そしてNOTEの鍵番号がSP(1)にストアされた鍵番号と一致するか否か、つまり押鍵された鍵が分割位置にある鍵であるか否かが判別される。
ここでNOと判別されると、NOTEにストアされていた鍵番号をFNOTEにストアして(ステップS372)この処理を終了する。
このように先に押鍵された鍵の低域側に隣接する鍵を押鍵する操作を続けていれば、このステップS369〜S372の処理を繰り返す。
そして、もし先に押鍵された鍵の低域側に隣接する鍵ではなく、別の鍵を押鍵した場合(ステップS370においてNOと判断された場合)、あるいは低域側で隣接する鍵を押鍵する操作を続けた結果、NOTEの鍵番号がSP(1)にストアされた鍵番号と一致した場合(ステップS371においてYESと判断された場合)には、STF2を「0」に戻し(ステップS373)、タイマーを停止して(ステップS374)この処理を終了する。この場合は元の状態に戻り、分割状態は変更されない。
以上が、鍵盤5が2分割されている状態で鍵域設定モードにした場合の処理である。
再び図11に戻り、ステップS337において、SPFが「1」、つまり鍵盤5が2分割状態でないと判別された場合は、図14のステップS378に進み、SPFが「2」、つまり鍵盤5が3分割状態にあるか否か判別する。ここでもしNOと判別されたなら、この処理を終了する。
一方、YESと判別されたなら、続いてSTF3にストアされた値が「0」、つまり鍵域設定モードに移行してから、最初の押鍵であるか否か判別される(ステップS379)。ここで「0」と判別されると、さらにステップS380に進み、NOTE及びSP(1)夫々にストアされた値が同一か否か判別される。NOTEには現時点で押鍵された鍵の鍵番号がストアされ、SP(1)には、下鍵域と中鍵域との分割位置にある鍵の鍵番号がストアされている。ここでYESと判断されることは、下鍵域と中鍵域の分割位置にある鍵を押鍵したことを意味する。このS380でYESと判別された場合はSTF3にストアされた値を「1」に変更する(ステップS381)。
このステップS380においてNOと判別されると、今度は、NOTE及びSP(2)夫々にストアされたていた値が同一か否か判別される(ステップS382)。ここでSP(2)は上鍵域と中鍵域との分割位置にある鍵の鍵番号がストアされており、このステップS382でYESと判別されることは、上鍵域と中鍵域との分割位置にある鍵を押鍵したことを意味する。
このS380でYESと判別された場合はSTF3にストアされた値を「1」に変更する(ステップS383)。
このS380、S382のいずれでもNOと判別された場合は、分割位置以外の鍵を押鍵したことを意味し、ここでは何もせずにこの処理を終了する。
そしてS381、S383の処理の後、NOTEにストアされた鍵番号をFNOTEにストアし(ステップS384)、タイマーのカウントをスタートさせて(ステップS385)、この処理を終了する。
このように図14の処理においては、鍵域設定モードに移行してから、分割位置にある鍵を最初に押鍵したか否かを判別するとともに、いずれの分割位置を押鍵したかにより、STF3の状態を変更する。
ステップS379において、STF3が「0」でないと判別された場合、図15のステップS386に進み、SPF3にストアされた値が「1」、つまり最初に下鍵域と中鍵域の分割位置にある鍵を押鍵したか否かを判別する。
ここでYESと判別されると、続いてNOTEにストアされた鍵番号と、FNOTEにストアされた鍵番号に1加算した鍵番号とが一致しているか否か判別する(ステップS387)。FNOTEにはその直前に押鍵された鍵の鍵番号がストアされているので、もし、直前に押鍵した鍵の高域側に隣接する鍵を今回押鍵していたなら、ここではYESと判別されてステップS388に進む。そしてここで、押鍵された鍵番号(NOTE)がもうひとつの分割位置にある鍵の鍵番号(SP(2))と一致するか否か判別する。もし、一致しなければNOTEにストアされた鍵番号をFNOTEにストアして(ステップS389)この処理をいったん終了する。
このように、最初に下鍵域と中鍵域との分割位置にある鍵を押鍵した後、その高域側に隣接する鍵を順番に押鍵していく操作を続けていくと、S386〜S389の処理が繰り返される。
そしてこの操作を繰り返していくうちに、より高域側にある中鍵域と上鍵域の分割位置にある鍵を押鍵することになる。このとき、ステップS388においてYESと判別され、ステップS390に進み、SPFにストアされた値を「1」に変更する。そしてSP(2)にストアされている分割位置を表わす鍵番号をSP(1)にストアする(ステップS391)。これは、2つある鍵盤の分割位置がひとつとなり、鍵盤5が3分割された状態から、2分割された状態になったことを意味する。
続いて、STF3にストアされた値を「0」とし(ステップS392)、タイマーを停止する(ステップS393)。
このように、下鍵域と中鍵域との分割位置にある鍵を最初に押鍵し、続いて高域側に隣接する鍵を順次押鍵していき、この押鍵が上鍵域と中鍵域との分割位置まで到達すると鍵盤5は2分割された状態に変更する。
一方、ステップS387でNO、つまり高域側に隣接する鍵を押鍵していないと判別された場合は、ステップS394に進み、NOTEにストアされた鍵番号と、FNOTEにストアされた鍵番号に1減算した鍵番号とが一致しているか否か判別する。これは、直前に押鍵した鍵の低域側に隣接する鍵を今回押鍵したか否かを判別していることを意味し、ここではYESと判別されると、ステップS395に進み、押鍵された鍵番号(NOTE)が最低鍵の鍵番号と一致するか否か判別する。もし、一致しなければNOTEにストアされた鍵番号をFNOTEにストアして(ステップS389)この処理をいったん終了する。
このように、低域側に隣接する鍵を順番に押鍵していく操作を続けていくと、S394、S395、続いてS389の処理が繰り返される。
そしてこの操作を繰り返していくうちに、最低鍵を押鍵することになる。このとき、ステップS395においてYESと判別され、ステップS396に進み、TONE(2)にストアされた音色番号をTONE(1)にストアする。つまり、中鍵域に割当てられている音色を下鍵域に割当てる。この処理の後、ステップS390〜S394の処理を行なう。
このように、下鍵域と中鍵域との分割位置にある鍵から順に低域側に押鍵していき、これが最低鍵に到達すると鍵盤5は2分割された状態になり、今まで中鍵域に割当てられた音色が下鍵域の音色となる。
さらに、ステップS394にてNOと判別された場合、つまりその前に押鍵された鍵に隣接する鍵でなく、全く別の鍵を押鍵した場合は、ステップS397に進み、FNOTEの直前に押鍵された鍵の鍵番号を、下鍵域と中鍵域との分割位置を表わす鍵盤号としてSP(1)にストアする。
このように、直前に押鍵した鍵に隣接する鍵を押鍵するという操作をやめて、別の鍵を押鍵した場合、この別な押鍵の直前に押鍵された鍵の位置が、下鍵域と中鍵域との新たな分割位置となる。
以上のように、まず下鍵域と中鍵域との分割位置にある鍵を始めに順次高域側に押鍵してこの押鍵が他の分割位置に到達した場合、あるいは逆に低域側に隣接する鍵を順次押鍵して最低鍵まで到達した場合は、鍵盤5が3分割から2分割状態に変更される。しかも高域側に順次押鍵してもうひとつの分割位置に到達した場合は、3分割時での上下鍵域夫々に割当てられた音色が2分割時の上下鍵域夫々に割当てられた音色と一致するため、ユーザーはあたかも中鍵域が消滅したような感覚を受ける。
逆に最低鍵に向かって順次押鍵していって2分割状態に変更した場合は、今まで中鍵域の音色が下鍵域の音色となるため、ユーザーあたかも今までの下鍵域が払いのけたような感じを受ける。
さらに、隣接する鍵を順次押鍵する操作をやめれば、この操作で最後に押鍵した鍵の鍵位置に分割位置が移動する。このような操作をすることにより分割位置の移動も自由にできる。
一方、ステップS386において、STF3が「1」でないと判別された場合、図16のステップS3に進み、SPF3にストアされた値が「2」、つまり最初に上鍵域と中鍵域の分割位置にある鍵を押鍵したか否かを判別する。ここで、NOと判断されれば、この処理は終了する。
YESと判別されると、続いてNOTEにストアされた鍵番号と、FNOTEにストアされた鍵番号に1減算した鍵番号とが一致しているか否か判別する(ステップS399)。FNOTEにはその直前に押鍵された鍵の鍵番号がストアされているので、もし、直前に押鍵した鍵の低域側に隣接する鍵を今回押鍵していたなら、ここではYESと判別されてステップS400に進む。そしてここで、押鍵された鍵番号(NOTE)がもうひとつの分割位置にある鍵の鍵番号(SP(1))と一致するか否か判別する。もし、一致しなければNOTEにストアされた鍵番号をFNOTEにストアして(ステップS401)この処理をいったん終了する。
このように、最初に上鍵域と中鍵域との分割位置にある鍵を押鍵した後、その低域側に隣接する鍵を順番に押鍵していく操作を続けていくと、S398〜S401の処理が繰り返される。
そしてこの操作を繰り返していくうちに、より低域側にある中鍵域と下鍵域の分割位置にある鍵を押鍵することになる。このとき、ステップS400においてYESと判別され、ステップS402に進み、SPFにストアされた値を「1」に変更する。そしてSP(1)にストアされている分割位置を表わす鍵番号をSP(2)にストアする(ステップS403)。これは、2つある鍵盤の分割位置がひとつとなり、鍵盤5が3分割された状態から、2分割された状態になったことを意味する。
続いて、STF3にストアされた値を「0」とし(ステップS404)、タイマーを停止する(ステップS405)。
このように、上鍵域と中鍵域との分割位置にある鍵を最初に押鍵し、続いて低域側に隣接する鍵を順次押鍵していき、この押鍵が下鍵域と中鍵域との分割位置まで到達すると鍵盤5は2分割された状態に変更する。
一方、ステップS399でNO、つまり低域側に隣接する鍵を押鍵していないと判別された場合は、ステップS406に進み、NOTEにストアされた鍵番号と、FNOTEにストアされた鍵番号に1加算した鍵番号とが一致しているか否か判別する。これは、直前に押鍵した鍵の高域側に隣接する鍵を今回押鍵したか否かを判別していることを意味し、ここではYESと判別されると、ステップS407に進み、押鍵された鍵番号(NOTE)が最高鍵の鍵番号と一致するか否か判別する。もし、一致しなければNOTEにストアされた鍵番号をFNOTEにストアして(ステップS401)この処理をいったん終了する。
このように、低域側に隣接する鍵を順番に押鍵していく操作を続けていくと、S398、S399、S406、S407の処理が繰り返される。
そしてこの操作を繰り返していくうちに、最高鍵を押鍵することになる。このとき、ステップS407においてYESと判別され、ステップS408に進み、TONE(2)にストアされた音色番号をTONE(3)にストアする。つまり、中鍵域に割当てられている音色を上鍵域に割当てる。この処理の後、ステップS402〜S405の処理を行なう。
このように、上鍵域と中鍵域との分割位置にある鍵から順に高域側に押鍵していき、これが最高鍵に到達すると鍵盤5は2分割された状態になり、今まで中鍵域に割当てられた音色が上鍵域の音色となる。
さらに、ステップS406にてNOと判別された場合、つまりその前に押鍵された鍵に隣接する鍵でなく、全く別の鍵を押鍵した場合は、ステップS409に進み、FNOTEの直前に押鍵された鍵の鍵番号を、下鍵域と中鍵域との分割位置を表わす鍵盤号としてSP(2)にストアする。
このように、直前に押鍵した鍵に隣接する鍵を押鍵するという操作をやめて、別の鍵を押鍵した場合、この別な押鍵の直前に押鍵された鍵の位置が、下鍵域と中鍵域との新たな分割位置となる。
以上のように、まず上鍵域と中鍵域との分割位置にある鍵を始めに順次低域側に押鍵してこの押鍵が他の分割位置に到達した場合、あるいは逆に高域側に隣接する鍵を順次押鍵して最高鍵まで到達した場合は、鍵盤5が3分割から2分割状態に変更される。しかも低域側に順次押鍵してもうひとつの分割位置に到達した場合は、3分割時での上下鍵域夫々に割当てられた音色が2分割時の上下鍵域夫々に割当てられた音色と一致するため、ユーザーはあたかも中鍵域が消滅したような感覚を受ける。
逆に最高鍵に向かって順次押鍵していって2分割状態に変更した場合は、今まで中鍵域の音色が上鍵域の音色となるため、ユーザーあたかも今までの上鍵域が払いのけたような感じを受ける。
さらに、隣接する鍵を順次押鍵する操作をやめれば、この操作で最後に押鍵した鍵の鍵位置に分割位置が移動する。このような操作をすることにより分割位置の移動も自由にできる。
図17は、図3の表示処理(ステップS4)の詳細な処理を示すフローチャートである。
まず、ステップS410及びS411において、SPFにストアされていた値が「1」、「2」あるいはその他の値を判別する。
SPFの値が「1」、つまり鍵盤5が2分割されている状態においては、ステップS412に進んで、SP(1)にストアされた鍵番号の鍵の位置を表示部4により表示する。これにより上下鍵域の分割位置が明示される。
SPFの値が「2」、つまり鍵盤5が3分割されている状態においては、ステップS413に進んで、SP(1)、SP(2)にストアされた鍵番号の鍵の位置を表示部4により表示する。これにより上中下鍵域夫々を分ける2つの分割位置が明示される。
SPFが「1」「2」のいずれでもない場合は、ステップS414に進み、これら分割位置の表示を消灯してこの処理を終了する。
図18及び図19は、タイマインタラプト処理を示すフローチャートである。この処理は、図3のメインルーチン処理中に、一定時間間隔で処理が行なわれるものである。
まず、タイマーがカウント中でかつ所定値までカウントしたか否か判別する(ステップS500)。このタイマーは、鍵域設定モードに移行してから最初の押鍵によりカウントが開始され、その後押鍵がある度にそのカウント値がクリアされるように構成されている。従って、押鍵か頻繁になされている状態であれば、タイマーはカウントアップせずに、このステップS500の処理は終了する。
しかしながら、先に押鍵した鍵と高域側あるいは低域側に隣接する鍵を順次押鍵する操作を鍵盤5の分割位置、最高鍵あるいは最低鍵まで続けずに途中でやめてしまい、そのまま何も押鍵しなかった場合、この何も押鍵しない場合が所定時間続くとタイマーはカウントアップする。これは、ユーザーが現在の分割位置を最後に押鍵した鍵のある位置まで移動させることを欲する場合に行なう操作である。
この場合ステップS500においてYESと判別され、続いてSTF1にストアされた値が「0」を越えているか、つまり鍵盤が分割なしの状態で最低鍵あるいは最高鍵がまず押鍵されたか否かが判別される(ステップS501)。ここでYESと判別されると、NOTEにストアされた鍵番号を、上下鍵域の分割位置を示す鍵番号としてSP(1)にストアし(ステップS502)、続いてSPFの値を「1」にして鍵盤5を2分割の状態に変更するとともに、STF1を「0」にして(ステップS503)、この処理を終了する。
このように鍵盤5が分割なしの状態で、先に押鍵した鍵に隣接する鍵を順次押鍵する操作を鍵盤5の途中でやめ、一定時間経過すれば最後に押鍵した鍵の位置で鍵盤5は2分割された状態に変更する。
次に、ステップS501でNOと判別された場合は、ステップS504、S505、さらには図19のステップS506において、STF2の値がいずれであるか判別される。ここでSTF2の値が「1」であるなら、つまり最初に分割位置にある鍵を押鍵したと判別された場合は、ステップS507に進み、NOTEにストアされた鍵盤号を、新たな分割位置に対応する鍵番号としてSP(1)にストアする。そして、STF2を「0」にしてタイマーを停止する(ステップS508)。このように、分割位置から順次それに隣接する鍵を押鍵していき、ある時点でその操作をやめて一定時間経過すると、その最後に押鍵した鍵の位置に分割位置が変更される。
また、STF2の値が「3」、つまり最初に最高鍵を押鍵したと判別された場合は、ステップS509に進み、NOTEにストアされた鍵盤号を、上鍵域と中鍵域を分割する分割位置に対応する鍵番号としてSP(2)にストアする。そして、SPFにストアされた値を「2」とし(ステップS510)、TONE(3)にストアされた上鍵域用の音色番号を、中鍵域用の音色番号としてTONE(2)にストアする(ステップS511)。続いてTONEF3にストアされているフラグを「1」にして上鍵域に音色を割り当て可能とし(ステップS512)、STF2を「0」にしてタイマーを停止する(ステップS508)。
さらに、STF2の値が「2」、つまり最初に最低鍵を押鍵したと判別された場合は、ステップS513に進み、SP(1)にストアされている分割位置をSP(2)にストアする。続いてNOTEにストアされた鍵盤号を、SP(2)にストアする(ステップS514)。そして、SPFにストアされた値を「2」とし(ステップS515)、TONE(3)にストアされた上鍵域用の音色番号を、中鍵域用の音色番号としてTONE(2)にストアする(ステップS516)。
これにより、2分割状態における分割位置を、3分割状態に変更した場合の上鍵域と中鍵域との分割位置とし、最後に押鍵された鍵位置を中鍵域と下鍵域の分割位置としている。さらに2分割状態での下鍵域の音色を、3分割状態での中鍵域の音色とする。
続いてTONEF1にストアされているフラグを「1」にして上鍵域に音色を割り当て可能とし(ステップS517)、STF2を「0」にしてタイマーを停止する(ステップS518)。
このように、鍵盤5が2分割されている状態でまず最高鍵あるいは最低鍵を押鍵し、それから隣接する鍵を順次押鍵する操作を続け、それをある時点でやめて一定時間経過すれば、最後に押鍵した鍵位置が先にある分割位置とは別の新たな分割位置となり、鍵盤5は2分割から3分割された状態に変更する。
そして、再びステップS506に戻り、そこにおいてNOと判別されると、ステップS519、S520に進み、STF3の状態を判別する。
STF3が「1」、つまり鍵盤5が3分割されている状態で、最初に下鍵域と中鍵域とを分割する分割位置に対応する鍵を押鍵した後、それに隣接する鍵を順次押鍵する操作を行い、ある時点でその操作をやめて一定時間経過した場合であり、この場合はステップS521に進み、NOTEにストアされている鍵番号をSP(1)にストアする。これにより、下鍵域と中鍵域との分割位置を、最後に押鍵された鍵位置に移動させることができる。そしてSTF3を「0」に戻し、タイマーを停止してこの処理を終了させる(ステップS522)。
一方、STF3が「2」、つまり最初に上鍵域と中鍵域とを分割する分割位置に対応する鍵を押鍵した後、それに隣接する鍵を順次押鍵する操作を行い、ある時点でその操作をやめて一定時間経過した場合であり、この場合はステップS523に進み、NOTEにストアされている鍵番号をSP(2)にストアする。これにより、上鍵域と中鍵域との分割位置を、最後に押鍵された鍵位置に移動させることができる。そしてこの後ステップS523に進む。
このように、鍵盤5が3分割されている状態では、先に押鍵された鍵に隣接する鍵を押鍵する操作をやめると、その最後に押鍵された鍵の位置に分割位置が移動する。
以上のように本実施形態においては、鍵盤5が分割なしの状態あるいは上下2分割の状態において、鍵盤の一方の端にある鍵(最高鍵あるいは最低鍵)をまず押鍵し、続いてそれに隣接する鍵を、鍵盤5の他方の端に向かって順次押鍵していって所望の鍵までその操作を続ければ、その所望の鍵が新たな分割位置となる。これによって鍵盤5は分割なしの状態から2分割の状態へ、2分割の状態から3分割り状態となる。
この操作は、ユーザーがあたかも必要とする鍵域は「ここからここまで」というように指定しているに等しく、この操作は人間の感覚によくマッチするため、非常に簡単で誰にもわかりやすい。
しかもこの新たに増加した鍵域に割当てるべき音色の指定操作は、上述の操作により鍵域が生成された後、直ちに割当てるべき音色を指定するだけでよく、従来のように鍵域を指定する操作が省ける。
また、鍵盤5が2分割あるいは3分割されている状態において、いずれかの分割位置にある鍵をまず最初に押鍵し、そこから鍵盤5の端部にある鍵(最高鍵又は最低鍵)あるいは他の分割位置にある鍵までの間にある鍵を順次押鍵していくと、この分割位置は消滅し、3分割から2分割の状態へ、2分割から分割なしの状態に移行する。これは、あたかも分割位置を鍵盤5の外に払いのける、あるいは別の分割位置と一緒にさせる操作をしているに等しく、人間の感覚によくマッチするため、非常に簡単で誰にもわかりやすい。
従って、従来と比べて非常に操作が簡単になり、煩わしさを感じなくてすむ。
1 CPU
2 プログラムROM
3 ワークRAM
4 表示部
5 鍵盤
6 スイッチ部
7 音源
8 発音部

Claims (7)

  1. 鍵盤と、
    前記鍵盤を複数の鍵域に分割するための分割位置を記憶する分割位置記憶手段と、
    前記鍵盤の分割状態を示す分割状態データを記憶する分割状態記憶手段と、
    前記複数の鍵域毎に音色データを記憶可能な音色記憶手段と、
    第1のモード及び第2のモードのいずれかを指定するモード指定スイッチと、
    前記鍵盤上でいずれかの鍵が押鍵されたか否か判別する押鍵検出手段と、
    前記モード指定スイッチにより第1のモードが指定されている状態において、前記押鍵検出手段により、前記分割位置記憶手段に記憶された分割位置に対応する鍵から前記鍵盤の特定の鍵まで連続的に押鍵されたことを検出した場合に、当該連続的な押鍵の最初の押鍵位置に対応する分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態データを変更する記憶制御手段と、
    前記第2のモードが指定されている場合に、前記押鍵検出手段により検出された鍵が、前記分割状態記憶手段に記憶された分割状態により定められた鍵域のいずれに属するのかを判別する鍵域判別手段と、
    前記押鍵された鍵に対応する音高でかつ、この鍵域判別手段にて検出された鍵域に割当てられた音色で楽音の発音を指示する発音指示手段と、
    を有する電子楽器。
  2. 前記分割位置記憶手段は、前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が予め記憶され、
    前記記憶制御手段は、前記第1のモードが指定され、かつ前記分割状態記憶手段が前記鍵盤を上中下鍵域に分割している状態を記憶している場合において、前記押鍵検出手段が前記予め記憶された下鍵域と中鍵域との分割位置に対応する鍵を押鍵開始位置として最低鍵まで連続的に押鍵したことを検出した場合に、当該下鍵域と中鍵域との分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態を、前記分割位置記憶手段に記憶されている中鍵域と上鍵域との分割位置により前記鍵盤を新たな上鍵域と下鍵域とに分割がなされている状態に変更する、請求項1記載の電子楽器。
  3. 前記分割位置記憶手段は、前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が予め記憶され、
    前記記憶制御手段は、前記第1のモードが指定され、かつ前記分割状態記憶手段が前記鍵盤を上中下鍵域に分割している状態を記憶している場合において、前記押鍵検出手段が前記予め記憶された中鍵域と上鍵域との分割位置に対応する鍵を押鍵開始位置として最高鍵まで連続的に押鍵したことを検出した場合に、当該中鍵域と上鍵域との分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態を、前記分割位置記憶手段に記憶されている下鍵域と中鍵域との分割位置により前記鍵盤を新たな上鍵域と下鍵域とに分割がなされている状態に変更する、請求項1記載の電子楽器。
  4. 前記電子楽器はさらに、
    前記分割位置記憶手段に前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が記憶されている状態において、前記音色記憶手段の第1の記憶エリアに下鍵域に割当てられる音色が記憶され、第2の記憶エリアに中鍵域に割当てられる音色が記憶され、さらに第3の記憶エリアに上鍵域に割当てられる音色が記憶され、
    前記押鍵検出手段が前記下鍵域と中鍵域の分割位置に対応する鍵を押鍵開始位置として最低鍵まで連続的に押鍵したことを検出したことにより、前記記憶制御手段にて前記下鍵域と中鍵域の分割位置が消去された際に、前記音色記憶手段の第1の記憶エリアに記憶されている音色を、前記第2の記憶エリアに記憶されている音色で置き換えるとともに、前記第1の記憶エリアに記憶されている音色を前記新たな下鍵域に割り当てるとともに、前記第3の記憶エリアに記憶されている音色を前記新たな上鍵域に割り当てるの音色制御手段を有する、請求項記載の電子楽器。
  5. 前記電子楽器はさらに、
    前記分割位置記憶手段に前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が記憶されている状態において、前記音色記憶手段の第1の記憶エリアに下鍵域に割当てられる音色が記憶され、第2の記憶エリアに中鍵域に割当てられる音色が記憶され、さらに第3の記憶エリアに上鍵域に割当てられる音色が記憶され、
    前記押鍵検出手段が前記中鍵域と上鍵域との分割位置に対応する鍵を押鍵開始位置として最高鍵まで連続的に押鍵したことを検出したことにより、前記記憶制御手段にて前記中鍵域と上鍵域との分割位置が消去された際に、前記音色記憶手段の第3の記憶エリアに記憶されている音色を、前記第2の記憶エリアに記憶されている音色で置き換えるとともに、前記第1の記憶エリアに記憶されている音色を前記新たな下鍵域に割り当てるとともに、前記第3の記憶エリアに記憶されている音色を前記新たな上鍵域に割り当てるの音色制御手段を有する、請求項記載の電子楽器。
  6. 前記分割位置記憶手段は、前記鍵盤を上中下3つの鍵域に分割する2つの分割位置が予め記憶され、
    前記記憶制御手段は、前記第1のモードが指定され、かつ前記分割状態記憶手段が前記鍵盤を上中下鍵域に分割している状態を記憶している場合において、前記押鍵検出手段が前記予め記憶された一方の分割位置に対応する鍵を押鍵開始位置として他方の分割位置に対応する鍵まで連続的に押鍵したことを検出した場合に、当該一方の分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態を、前記分割位置記憶手段に記憶されている他方の分割位置により前記鍵盤を新たな上鍵域と下鍵域とに分割がなされている状態に変更する、請求項1記載の電子楽器。
  7. 鍵盤と、前記鍵盤を複数の鍵域に分割するための分割位置を記憶する分割位置記憶手段と、前記鍵盤の分割状態を示す分割状態データを記憶する分割状態記憶手段と、前記複数の鍵域毎に音色データを記憶可能な音色記憶手段と、第1のモード及び第2のモードのいずれかを指定するモード指定スイッチと、を有する電子楽器に用いられるコンピュータに、
    前記鍵盤上でいずれかの鍵が押鍵されたか否か判別する押鍵検出ステップと、
    前記モード指定スイッチにより第1のモードが指定されている状態において、前記押鍵検出ステップにより、前記分割位置記憶手段に記憶された分割位置に対応する鍵から前記鍵盤の特定の鍵まで連続的に押鍵されたことを検出した場合に、当該連続的な押鍵の最初の押鍵位置に対応する分割位置を前記分割位置記憶手段から消去するとともに、前記分割状態記憶手段に記憶された分割状態データを変更する記憶制御ステップと、
    前記第2のモードが指定されている場合に、前記押鍵検出ステップにより検出された鍵が、前記分割状態記憶手段に記憶された分割状態により定められた鍵域のいずれに属するのかを判別する鍵域判別ステップと、
    前記押鍵された鍵に対応する音高でかつ、この鍵域判別ステップにて検出された鍵域に割当てられた音色で楽音の発音を指示する発音指示ステップと、
    を実行させるプログラム。
JP2009067206A 2009-03-19 2009-03-19 電子楽器、及びプログラム Active JP5568878B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009067206A JP5568878B2 (ja) 2009-03-19 2009-03-19 電子楽器、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009067206A JP5568878B2 (ja) 2009-03-19 2009-03-19 電子楽器、及びプログラム

Publications (2)

Publication Number Publication Date
JP2010217802A JP2010217802A (ja) 2010-09-30
JP5568878B2 true JP5568878B2 (ja) 2014-08-13

Family

ID=42976696

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009067206A Active JP5568878B2 (ja) 2009-03-19 2009-03-19 電子楽器、及びプログラム

Country Status (1)

Country Link
JP (1) JP5568878B2 (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2522907Y2 (ja) * 1986-06-06 1997-01-22 カシオ計算機株式会社 電子楽器
JP2522793Y2 (ja) * 1986-06-06 1997-01-16 カシオ計算機株式会社 電子楽器
JP3389705B2 (ja) * 1994-03-15 2003-03-24 ヤマハ株式会社 電子鍵盤楽器
JP3353579B2 (ja) * 1995-12-07 2002-12-03 ヤマハ株式会社 電子鍵盤楽器
JP2002014677A (ja) * 2000-06-29 2002-01-18 Kawai Musical Instr Mfg Co Ltd 電子楽器のスプリットポイント設定方法およびその装置
ITBO20030790A1 (it) * 2003-12-24 2005-06-25 Roland Europ Spa Metodo per la suddivisione dinamica di una tastiera di uno
JP5568868B2 (ja) * 2009-02-27 2014-08-13 カシオ計算機株式会社 電子楽器、及びプログラム
JP5671780B2 (ja) * 2009-02-27 2015-02-18 カシオ計算機株式会社 電子楽器、及びプログラム
JP5671781B2 (ja) * 2009-02-27 2015-02-18 カシオ計算機株式会社 電子楽器、及びプログラム
JP5568869B2 (ja) * 2009-02-27 2014-08-13 カシオ計算機株式会社 電子楽器、及びプログラム

Also Published As

Publication number Publication date
JP2010217802A (ja) 2010-09-30

Similar Documents

Publication Publication Date Title
US5990404A (en) Performance data editing apparatus
JP5568878B2 (ja) 電子楽器、及びプログラム
JP5568869B2 (ja) 電子楽器、及びプログラム
JP5671781B2 (ja) 電子楽器、及びプログラム
JP2010217801A (ja) 電子楽器、及びプログラム
US11908440B2 (en) Arpeggiator, recording medium and method of making arpeggio
JP2010197888A (ja) 電子楽器、及びプログラム
WO2021044559A1 (ja) アルペジエータおよびその機能を備えたプログラム
JP5879682B2 (ja) 音声合成装置及びプログラム
JP2010197890A (ja) 電子楽器、及びプログラム
EP4027330A1 (en) Arpeggiator and program provided with function of same
JP4530001B2 (ja) 楽音制御装置のパラメータ設定装置
WO2021044560A1 (ja) アルペジエータおよびその機能を備えたプログラム
JP2011180429A (ja) 歌詞音節数提示装置及びプログラム
KR100388301B1 (ko) 정음 한글/알파벳 입력장치
JP6459237B2 (ja) 自動伴奏装置、電子楽器、自動伴奏方法および自動伴奏プログラム
US9508331B2 (en) Compositional method, compositional program product and compositional system
JP2008090202A (ja) チューニング装置及びチューニング用コンピュータ・プログラム
JP2005189793A (ja) 電子楽器
JP4197165B2 (ja) 楽音制御パラメータ設定装置および楽音制御パラメータ設定プログラム
JP6732216B2 (ja) 歌詞表示装置及び歌詞表示装置における歌詞表示方法、電子楽器
JP5347386B2 (ja) 音色指定装置、電子楽器及び音色指定処理のプログラム
JP5391622B2 (ja) 電子楽器及びプログラム
KR100876096B1 (ko) 휴대용 단말기의 일본어 입력방법 및 그 장치
JP6787491B2 (ja) 音発生装置及び方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131022

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140410

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: 20140527

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140609

R150 Certificate of patent (=grant) or registration of utility model

Ref document number: 5568878

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150