JPH0128397B2 - - Google Patents

Info

Publication number
JPH0128397B2
JPH0128397B2 JP60232241A JP23224185A JPH0128397B2 JP H0128397 B2 JPH0128397 B2 JP H0128397B2 JP 60232241 A JP60232241 A JP 60232241A JP 23224185 A JP23224185 A JP 23224185A JP H0128397 B2 JPH0128397 B2 JP H0128397B2
Authority
JP
Japan
Prior art keywords
key
data
assigned
channel
musical
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
Application number
JP60232241A
Other languages
English (en)
Other versions
JPS6290697A (ja
Inventor
Takeo Shibukawa
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.)
Yamaha Corp
Original Assignee
Yamaha Corp
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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP60232241A priority Critical patent/JPS6290697A/ja
Priority to EP86105588A priority patent/EP0204122B1/en
Priority to DE86105588T priority patent/DE3688716T2/de
Priority to US06/855,610 priority patent/US4703680A/en
Publication of JPS6290697A publication Critical patent/JPS6290697A/ja
Publication of JPH0128397B2 publication Critical patent/JPH0128397B2/ja
Priority to SG6695A priority patent/SG6695G/en
Priority to HK134495A priority patent/HK134495A/xx
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、鍵盤にて押された鍵を鍵の数より
少ない複数の楽音発生チヤンネルのいずれかに割
当てる電子楽器の押鍵割当て装置に関する。
〔従来の技術〕
従来、この種の割当て装置においては、鍵盤に
て新たな鍵が押された場合次のような方法により
新たに押された鍵の割当て処理を行なつていた。
すなわち、第1の方法は、特開昭52―25613号
公報に示されるように、各楽音発生チヤンネルに
おける楽音の音量レベル制御用のエンベロープ波
形振幅値を各々比較してエンベロープ波形振幅値
が最も小さい(すなわち最低音量レベルの)楽音
発生チヤンネルを検出し、この検出した楽音発生
チヤンネルに新たに押された鍵を割当て、このチ
ヤンネルにおいて、これまで発生していた楽音に
代えて該新押鍵に対応する楽音を発生させるもの
である。また、第2の方法は、特公昭59―22238
号公報に示されるように、各楽音発生チヤンネル
に割当てられた鍵が離鍵される毎に既に離鍵状態
にある全ての楽音発生チヤンネルに関して各々計
数値を一律に増加させることにより、該計数値に
よつて各楽音発生チヤンネルの離鍵の順序を表示
しておき、そして各楽音発生チヤンネルの計数値
を各々比較して計数値が最も大きい(すなわち最
も古く離鍵された)楽音発生チヤンネルを検出
し、この検出した楽音発生チヤンネルに新たに押
された鍵を割当て、このチヤンネルにおいて、こ
れまで発生していた楽音に代えて該新押鍵に対応
する楽音を発生させるものである。
〔発明が解決しようとする問題点〕
しかるに、上記第1の方法による従来の割当て
装置においては、全ての楽音発生チヤンネルにて
楽音が発生されている状態において新たな鍵が押
された場合、該鍵はエンベロープ波形振幅値が最
低であるすなわち楽音の発生が最も早く終了する
楽音発生チヤンネルに割当てられ、該チヤンネル
において、これまで発生していた楽音に代えて該
新押鍵に対応する楽音が発生され、かつ残りの楽
音発生チヤンネルにおいては、これまで発生して
いた楽音が引続き発生されるので、割当ての優先
順位は妥当なものである。しかしながら、各楽音
発生チヤンネルのエンベロープ波形振幅値を常に
監視しかつ該振幅値が最低である楽音発生チヤン
ネルを検出する回路を必要とするので、この種の
割当て装置の構成が複雑になるとともに、コスト
が高くなるという問題があつた。しかも、押鍵割
当て回路と楽音発生チヤンネルを構成する楽音発
生回路は、これらの回路を集積回路等で構成した
場合、通常異なるチツプに配置されるので、上記
エンベロープ波形振幅値を表すデータを楽音発生
回路から押鍵割当て回路に転送する回路が必要と
なり、上記コストはこの回路の分だけさらに高く
なる。
また、上記第2の方法による従来の押鍵割当て
装置は、各楽音発生チヤンネル毎の離鍵の順序を
表示する値を増加させかつ比較して該値が最大で
ある楽音発生チヤンネルを検出する回路により構
成され、上記第1の方法による押鍵割当て装置の
ように、エンベロープ波形振幅値を監視する回路
及び楽音発生回路から押鍵割当て回路にエンベロ
ープ波形振幅値を表すデータを転送する回路が不
要であるので、この種の割当て装置のコストは差
程高くなることはないが、各楽音発生チヤンネル
にて発生される楽音のエンベロープ波形の減衰時
間が各々異なる場合、例えば、音高や音域に応じ
てエンベロープ波形の減衰時間を異ならせ又は押
鍵強さ等の鍵タツチに応じてエンベロープ波形の
ピークレベル(楽音が減衰を開始する直前のエン
ベロープ波形振幅値)を異ならせた場合、新たな
鍵が押されると、該鍵はエンベロープ波形振幅値
の大きさとは無関係に最も古く離鍵された楽音発
生チヤンネルに割当てられるので、エンベロープ
波形振幅値が極めて小さい楽音発生チヤンネルが
あつても、前記鍵がエンベロープ波形振幅値が大
きな楽音発生チヤンネルに割当てられてしまい、
これまで該チヤンネルにて発生されていた楽音が
消されることがあるという問題がある。すなわ
ち、前に離された鍵の楽音のエンベロープ波形の
減衰時間が長くて該楽音が引続き長く発生される
状態にあり、かつ後に離された鍵の楽音のエンベ
ロープ波形の減衰時間が短くて該楽音の発生が終
了し又は終了寸前の状態にあつても、新たな鍵が
押されると前者の楽音が消されることになるの
で、この押鍵割当て装置による割当てチヤンネル
の優先順位は適切に決定されるものではない。
この発明は、上記問題に対処するため、各楽音
発生チヤンネルにて発生されるエンベロープ波形
の減衰時間が各々異なる場合においても割当てチ
ヤンネルの優先順位が適切に決定され、かつ簡単
な構成で低コストにて実現される電子楽器の押鍵
割当て装置を提供しようとするものである。
〔問題点を解決するための手段〕
かかる問題の解決にあたり、この発明の構成上
の特徴は、第1図に示すように、 鍵盤1にて押された鍵を鍵の数より少ない複数
の楽音発生チヤンネル2のいずれかに割当てる電
子楽器の押鍵割当て装置3において、 前記割当ての優先順位をその値の大きさにより
表すデータを前記各楽音発生チヤンネル2に対応
して記憶する複数の領域からなる記憶手段3a
と、 前記鍵盤1における押鍵又は離鍵毎に前記各領
域に記憶されているデータの値を各々前記優先順
位が高くなる方向に所定値だけ変更するデータ変
更手段3bと、 前記鍵盤1にて新たな鍵が押されたとき前記各
領域に記憶されているデータの値に基づき最も前
記優先順位の高いデータを記憶する領域を検出す
る検出手段3cと、 前記検出領域に対応した楽音発生チヤンネルへ
の新たな鍵の割当てを制御する割当て制御手段3
dと、 前記割当てられた楽音発生チヤンネルにて発生
すべき楽音に応じて定まる楽音の減衰時間が長い
程低い前記優先順位を表す値を前記検出手段3c
の検出に応じて前記検出領域に書込む書込み手段
3eとを備えたことにある。
〔発明の作用〕
上記のように構成したこの発明においては、鍵
盤1にて新たな鍵が押されると、検出手段3c
が、記憶手段3aの各領域に記憶されているデー
タ値に基づき、最も高い割当て優先順位を示すデ
ータを記憶する記憶手段3aの領域を検出し、割
当て制御手段3dが前記検出領域に対応した楽音
発生チヤンネル2への前記新たな鍵の割当てを制
御する。このとき、前記検出領域に記憶されてい
るデータは、書込み手段3eにより、前記新たな
鍵の割当てに応じて発生される楽音の減衰時間が
長い程割当て優先順位の低い値に初期設定され、
この初期設定されたデータは、さらに異なる鍵が
押され又は離される毎に、データ変更手段3bに
より他の領域に記憶されているデータとともに、
割当て優先順位が高くなる方向に所定量だけ変更
されるので、記憶手段3aの各領域に記憶されて
いるデータは各々古い押鍵又は離鍵に係るもの程
高い割当て優先順位を示し、かつ楽音発生チヤン
ネル2にて発生されている楽音の減衰時間が長い
程低い割当て優先順位を示すことになる。
〔発明の効果〕
これにより、記憶手段3aの各領域のデータ
は、古く押鍵又は離鍵されている程減衰が進むこ
とによつて小さくなりかつ減衰時間が長く設定さ
れている楽音程小さくなりにくいエンベロープ波
形振幅値を間接的に示すことになるので、割当て
優先順位の設定が上記従来の第1の方法による装
置のように妥当なものとなる。そのため、全ての
楽音発生チヤンネルにて楽音が発生されている状
態において、鍵盤にて新たな鍵が押された場合、
減衰時間が短く楽音の発生が終了し又は終了寸前
の状態にある楽音発生チヤンネルがあれば、前記
鍵は該チヤンネルに割当てられ、最も古く押鍵又
は離鍵されたという理由だけで長い減衰時間を有
する楽音を発生中の楽音発生チヤンネルに前記鍵
が割当てられることがなくなり該チヤンネルの楽
音はそのまま発生し続けることができる。
また、楽音発生チヤンネルにて発生中の楽音の
エンベロープ波形振幅値を示すデータを用いるこ
となく、押鍵又は離鍵の検出と新たに押された鍵
の割当てられた楽音発生チヤンネルにて発生すべ
き楽音により、当該楽音発生チヤンネルにて発生
される楽音のエンベロープ波形振幅値を推定する
ようにしたので、該押鍵割当て装置の構成を複雑
化することなく、かつコストも差程高くなること
なく実現される。
〔実施例〕
a 構成例 以下、この発明の一実施例を図面を用いて説明
すると、第2図はこの発明が適用された減衰系
(パーカツシブ系)の楽音を発生する電子楽器を
概略的に示すものであり、この電子楽器は鍵盤1
0と、音色、音量等を選択制御する操作子群11
と、楽音の減衰時間(減衰時定数)を切換えるサ
ステインペダル12と、楽音信号を発生する楽音
発生回路13と、鍵盤10、操作子群11及びサ
ステインペダル12の状態を入力して楽音発生回
路13を制御するマイクロコンピユータ部14を
備えている。
鍵盤10は楽音発生回路13にて発生される楽
音の音高を指定するための複数の鍵(例えばA0
〜C8の88鍵)を有し、各鍵の押鍵又は離鍵操作
は各鍵に対応して設けられた鍵スイツチからなる
鍵スイツチ回路10aによつて検出されるように
なつているとともに、上記押鍵操作に伴う押鍵速
さ、押鍵圧力等の鍵タツチ強さ(イニシヤル鍵タ
ツチ)が各鍵に対応して設けられた押鍵速度検出
回路又は押鍵圧力検出回路等からなる鍵タツチ検
出回路10bによつて検出されるようになつてい
る。鍵スイツチ回路10a及び鍵タツチ検出回路
10bは、バス15を介してマイクロコンピユー
タ部14に接続され、マイクロコンピユータ部1
4に制御されて、各鍵の押鍵又は離鍵状態を表す
鍵データ及び各鍵操作に伴う鍵タツチデータをマ
イクロコンピユータ部14に供給するようになつ
ている。操作子群11は楽音発生回路13にて発
生される減衰系の例えばピアノ、ハープシコード
等の音色を選択する操作子及び発生される楽音の
音量等を調節する操作子等を有し、これらの操作
子の操作状態は前記各操作子に対応して設けられ
たスイツチ、ボリユウム等からなる操作子スイツ
チ回路11aによつて検出されるようになつてい
る。操作子スイツチ回路11aはバス15を介し
てマイクロコンピユータ部14に接続され、マイ
クロコンピユータ部14に制御されて、各操作子
の状態を表すデータをマイクロコンピユータ部1
4に供給するようになつている。サステインペダ
ル12は、その踏込み操作により楽音発生回路1
3にて発生される楽音の減衰時間を長くし、かつ
踏込み解除により前記楽音の減衰時間を短くする
ために演奏者の足により操作されるものであり、
サステインペダル12の踏込み又は踏込み解除は
サステインペダルスイツチ回路12aにより検出
され、この検出されたサステインペダル12の踏
込み又は踏込み解除を表すデータは、同回路12
aに接続されたバス15を介してマイクロコンピ
ユータ部14に供給されるようになつている。
楽音発生回路13は、鍵盤10の鍵数より少な
いN個(例えば、8個)の楽音発生チヤンネルを
有し、鍵盤10にて新たな鍵が押されたときマイ
クロコンピユータ部14により該鍵が割当てられ
た楽音発生チヤンネルにおいて、鍵盤10の鍵操
作、操作子群11の操作状態及びサステインペダ
ル12の操作状態に応じた楽音信号を発生し、ア
ンプ16を介しスピーカ17から楽音として発音
する。この場合、発生楽音の周波数は鍵盤10に
て押された鍵により指定された該鍵に対応する音
高周波数であり、発生楽音の音色は操作子群11
の操作状態に応じて指定されるピアノ、ハープシ
コード等の音色である。また、発生楽音のエンベ
ロープ波形は、基本的には第3A図の実線にて示
すように、押鍵と同時に急速に立上り、所定のア
タツクレベルALに達すると、離鍵とは無関係に
所定の減衰時定数DTで除々に減衰して、押鍵中
はこの減衰を続行し、減衰中に離鍵されると、破
線にて示すようにその時点から急速に減衰する形
状であるが、このエンベロープ波形はサステイン
ペダル12の操作及び鍵盤10の鍵操作により制
御されて、サステインペダル12が踏込まれた状
態にあれば離鍵されても破線のように変化せず実
線のように変化し、また、発生される音高が低く
なるに従つて減衰時定数DTが大きくなるように
設定されて一点鎖線のように変化し、さらに、鍵
タツチ検出回路10bにより検出された鍵タツチ
が強ければすなわち押鍵速度が大きく又は押鍵圧
力が大きければ上記所定のアタツクレベルALが
大きくなつて二点鎖線のように変化するようにな
つている。さらに、前記減衰時定数DT及びアタ
ツクレベルALは発生楽音の音色に応じても変化
するようになつている。これにより、ピアノ等の
減衰系の自然楽器において見られるように、発生
楽音に応じて楽音の減衰時間(楽音の音量レベル
が高い状態から除々に低くなつてほぼ零になるま
での時間)を異ならせるようになつている。
マイクロコンピユータ部14は、第5図乃至第
9図及び第11図に示すフローチヤートに対応し
たプログラムを記憶する読出し専用メモリ(以下
単にROMという)14aと、このプログラムを
実行する中央処理装置(以下単にCPUという)
14bと、このプログラムを実行するのに必要な
後述する諸変数を一時的に記憶してワーキングメ
モリとしての役目を果す書込み可能メモリ(以下
単にRAMという)14cと、時間を計測して所
定時間毎に、実行中のプログラム処理を中断して
第8図に示すフローチヤートに対応した「タイマ
割込み」プログラムをCPU14bに実行させる
タイマ回路14dとを備え、上記プログラムの実
行により鍵盤10、操作子群11及びサステイン
ペダル12の操作に応じたデータを楽音発生回路
13に出力して楽音の発生を制御する。なお、
ROM14a,CPU14b,RAM14c及びタ
イマ回路14dはバス15に接続されている。
RAM14cは、楽音発生回路13の各楽音発
生チヤンネルに割当てた鍵に関するデータを記憶
する割当てキーデータレジスタ領域AKDR(第4
A図)と、前記各楽音発生チヤンネルに割当てた
鍵の鍵タツチ強さを表すデータを記憶する割当て
タツチデータレジスタ領域ATDR(第4B図)
と、前記各楽音発生チヤンネルへの割当て優先順
位を表すデータを記憶する優先順位データレジス
タ領域PRDR(第4C図)と、鍵盤10にて新た
に押された鍵の割当てるべきチヤンネルを指定す
るための割当指定チヤンネルデータ等を記憶する
割当てチヤンネルレジスタ領域ACHR(第4D
図)と、鍵盤10の押鍵検出及び操作子群11の
操作検出に利用する押鍵及び操作検出レジスタ領
域KOR(第4E図)と、チヤンネルの割当て演算
及びその他の演算に利用する一般レジスタ領域
GNR(第4F図)に区分されている。
さらに、割当てキーデータレジスタ領域
AKDR(第4A図)は楽音発生回路13の各楽音
発生チヤンネルに各々対応したN個のレジスタを
有し、各レジスタは各々対応する楽音発生チヤン
ネルに割当てられた鍵を表すキーコードKC及び
該鍵の状態を示すキーオンデータKOからなる割
当てキーデータAKD(1)〜AKD(N)を各々記憶
する。なお、この実施例ではキーコードKCは高
音になるに従つて「1」ずつ増加し、鍵盤10の
88鍵に対応して「21」〜「108」の値をとるもの
であり、キーオンデータKOは値“0”にて離鍵
状態を示しかつ値“1”にて押鍵状態を示すもの
である。
割当てタツチデータレジスタ領域ATDR(第4
B図)も、割当てキーデータレジスタ領域
AKDRと同様に、N個のレジスタを有し、各レ
ジスタは割当てキーデータレジスタ領域AKDR
に記憶されている各割当てキーデータAKD(1)〜
(N)が示す鍵に関するタツチデータTDを割当
てタツチデータATD(1)〜(N)として各々記憶
する。なと、タツチデータTDは押鍵強さが大き
くなると大きな値となるデータである。優先順位
データレジスタ領域PRDR(第4C図)も、割当
てキーデータレジスタ領域AKDRと同様に、各
楽音発生チヤンネルに対応したN個のレジスタを
有し、各レジスタは各楽音発生チヤンネルに対応
してその値が小さい程割当て優先順位が高くなる
優先順位データPRD(1)〜PRD(N)を記憶する。
割当てチヤンネルレジスタ領域ACHR(第4D
図)は、鍵盤10にて新たに押された鍵が割当て
られる楽音発生チヤンネルの番号を示す割当てチ
ヤンネル番号データACHNを記憶するレジスタ
と、この割当てチヤンネル番号データACHNを
探し出す処理過程において抽出されるチヤンネル
番号CHN及び優先順位データPRDを記憶するレ
ジスタ群を有する。
押鍵及び操作検出レジスタ領域KOR(第4E
図)は、鍵盤10の各鍵に各々対応する複数のビ
ツトから成り、各ビツトが各鍵の押鍵又は離鍵を
表わす“1”又は“0”のデータを記憶する鍵状
態メモリKEYMEMと、操作子群11の各スイツ
チ及び各ボリユウムに対応した複数の記憶位置を
有し、各々対応するスイツチの開閉成状態データ
又はボリユウムの位置データを記憶する操作子状
態メモリSWMEMと、鍵盤10の押鍵イベント
データKEVT1、離鍵イベントデータKEVT2、
又は操作子群11の操作子イベントデータ
SWEVTを記憶するための複数のレジスタを有す
る。なお、この押鍵イベントデータKEVT1は
鍵名を表すキーコードKC、鍵の操作状態を表す
キーオンデータKO及び鍵タツチ強さを表すタツ
チデータTDからなり、離鍵イベントデータ
KEVT2は上記キーコードKC及びキーオンデー
タKOからなる。
一般レジスタ領域GNR(第4F図)は押鍵イベ
ントデータKEVT1の処理中に上記レジスタ領
域KORから読出したキーデータKD及びタツチデ
ータTDを記憶する2箇のレジスタと、最低音検
出により検出した最低音に対応する最低音キーコ
ードLKCを記憶するレジスタと、同一鍵が割当
てられている楽音発生チヤンネル数を示す重複割
当てチヤンネル数データMANYを記憶するレジ
スタと、サステインペダル12が踏込まれた状態
を値“1”にて表しかつサステインペダル12が
踏込まれていない状態を値“0”にて表すサステ
インデータSUSを記憶するレジスタと、マイク
ロコンピユータ部14の演算に必要なその他の変
数等を記憶するその他のレジスタ群から成る。
b 基本動作 上記のように構成した実施例の基本的動作を第
5図に示すフローチヤートを用いて説明すると、
電源の投入により、CPU14bは第5図のステ
ツプ20からプログラムの実行を開始してステツ
プ21にてRAM14Cの初期設定を行う。
上記初期設定後、CPU14bは、プログラム
をステツプ22の鍵処理ルーチンに進め、同ルー
チンにて、後述する第6図、第7図及び第9図の
フローチヤートに対応したプログラムを実行する
ことにより、鍵盤10の押鍵または離鍵に応じて
楽音発生回路13による楽音の発生を制御する。
上記鍵処理ルーチンの実行後、CPU14bは、
プログラムをステツプ23に進め、同ルーチンに
て、後述する第11図のフローチヤートに対応し
てプログラムを実行することにより、サステイン
ペダル12の踏込み又は踏込み解除に応じて楽音
発生回路13にて発生中の楽音の減衰状態を制御
する。
次に、プログラムはステツプ24,25に進
み、マイクロコンピユータ部14は操作子群11
の操作子状態を検出し、検出結果を楽音発生回路
13に出力して楽音の音色、音量等を制御する。
ステツプ24にて、CPU14bは操作子スイツ
チ回路11a内の各スイツチの開閉状態及びボリ
ユウムの設定位置を表わすデータを操作子群11
の新操作子データとして入力し、これらの入力デ
ータと操作子状態メモリSWMEMに記憶されて
いる旧操作子データとを各操作子毎に各々対比
し、両データが異なる場合にのみ当該データに関
する操作子の操作状態が変化したものとして、同
操作子の新操作子データを操作子状態メモリ
SWMEMの同操作子に対応する記憶位置に書込
むと共に、同新操作子データを押鍵及び操作検出
レジスタ領域KORに操作子イベントデータ
SWEVTとして記憶する。ステツプ25にて、
CPU14bは操作子イベントデータSWEVTの
有無を調べ、データがある場合、このデータを楽
音発生回路13に出力した後、出力した操作子イ
ベントデータSWEVTを消去し、操作子イベント
データSWEVTがなくなるまで上記動作を繰返
し、全ての操作子イベントデータの送出を行う。
なお、ステツプ24において全操作子に関する新
旧操作子データが一致する場合には、操作子デー
タの書換え及び出力は実行されない。
上記ステツプ24,25の処理後、プログラム
はステツプ22に戻り、、CPU14bはステツプ
22〜25の各処理を繰返し実行して鍵盤10、
サステインペダル12及び操作子群11の状態に
応じて楽音発生回路13の楽音発生を制御する。
c 鍵処理動作 次に鍵処理ルーチンについて詳述すると、
CPU14bは第6図のステツプ30からプログ
ラムの実行を開始し、ステツプ31にて鍵スイツ
チ回路10a内の各鍵スイツチを低音側又は高音
側から順次走査し、この走査により各鍵スイツチ
の開閉成の状態信号を鍵盤10の新鍵状態データ
として入力し、これらの入力データと鍵状態メモ
リKEYMEMに記憶されている旧鍵状態データと
を各鍵毎に各々対比して鍵盤10における押鍵状
態の変化を検出するとともに、新たな押鍵を検出
したときには鍵タツチ検出回路10bから該鍵に
関するタツチデータを取込む。すなわち、新鍵状
態データが“1”であり、かつ旧鍵状態データが
“0”である場合、CPU14bは鍵盤10にて新
たに鍵が押されたことを検知し、この新鍵状態デ
ータ“1”を鍵状態メモリKEYMEMの新たに押
された鍵に対応する記憶位置に書込むと共に、同
鍵名を表わすキーコードKC及び鍵が押されたこ
とを表わす値“1”のキーオンデータKOからな
るキーデータKDと鍵タツチ検出回路10bから
取込んだ該鍵の鍵タツチ強さを表すタツチデータ
TDとを押鍵イベントデータKEV1として押鍵及
び操作検出レジスタ領域KOR(第4E図)のレジ
スタ群に記憶する。また、新鍵状態データが
“0”でありかつ旧鍵状態データが“1”である
場合、CPU14bは鍵盤10にて新たに鍵が離
されたことを検知し、この新鍵状態データ“0”
を鍵状態メモリKEYMEMの新たに離された鍵に
対応する記憶位置に書込むと共に、同鍵名を表わ
すキーコードKC及び鍵が離されたことを表わす
値“0”のキーオンデータKOからなるキーデー
タKDを離鍵イベントデータKEVT2として上記
レジスタ群に記憶する。なお、上記キーコード
KCは上記走査において各鍵に対応する鍵スイツ
チを順次指定している走査カウンタ(図示しな
い)により決定される。このような走査により、
鍵盤10の全ての鍵の状態検出を終了すると、前
回のステツプ31の実行時から今回のステツプ3
1の実行までに状態が変化した鍵に対応する押鍵
イベントデータKEVT1及び離鍵イベントデー
タKEVT2が上記レジスタ群に全て記憶される
ことになる。
次に、プログラムはステツプ32,33に進
み、CPU14bはステツプ32,33にて上記
レジスタ群の内容により押鍵または離鍵イベント
の発生の有無を判別する。鍵盤10の各鍵に状態
変化がない場合、CPU14bはステツプ32及
びステツプ33にて「NO」と判断して、ステツ
プ34により鍵処理ルーチンの実行を終了して第
5図のステツプ23の実行に移る。
鍵盤10にて新たな押鍵があつた場合、CPU
14bはステツプ32にて、上記レジスタ群に記
憶されている押鍵イベントデータKEVT1の存
在により「YES」と判別して、ステツプ40の
「割当てchサーチ」プログラム(第7図)、ステ
ツプ50の「割当てchデータ設定」プログラム
(第9図)及びステツプ60の処理から成る押鍵
イベント処理ルーチンの実行に移る。
CPU14bは、新たに押された鍵の割当てら
るべきチヤンネル番号ACHNを決定する第7図
の「割当てchサーチ」プログラムにおいて、ス
テツプ40aからプログラムの実行を開始し、ス
テツプ41aにて押鍵及び操作検出レジスタ領域
KORのレジスタ群からキーデータKD及びタツチ
データTDからなる一組の押鍵イベントデータ
KEVT1を読出して一般レジスタ領域GNRに今
後処理するキーデータKD及びタツチデータTD
として記憶した後、ステツプ41bにて該押鍵イ
ベントデータKEVT1を上記レジスタ群から消
去し、ステツプ42にて優先順位データレジスタ
領域PRDRの各レジスタに記憶されている優先順
位データPRD(1)〜PRD(N)を順次読出し、読出
した優先順位データPRDの値が「0」でなけれ
ばこの値から「1」を減算して減算結果を新たな
優先順位データPRDとして上記読出したレジス
タに再び記憶し、又上記値が「0」であれば、上
記読出したレジスタの内容を書換えないようにす
る。これにより、鍵盤10にて新たな鍵が押され
る毎にそのデータ値が「0」でないチヤンネルの
優先順位データPRD(1)〜PRD(N)が一率に
「1」ずつ減算されることになり、このことは押
鍵毎に各チヤンネルの優先順位データが割当て優
先順位の高い方向に一率に更新されることを意味
する。
上記優先順位データPRD(1)〜PRD(N)の更新
後、CPU14bは、ステツプ43aにて、一般
レジスタGNRにステツプ41aの処理により記
憶したキーデータKDに基づき、該キーデータ
KD中のキーコードKCの値と等しい値のキーコ
ードKCを有する割当てキーデータAKDの数を、
割当てキーデータレジスタAKDRに記憶されて
いる割当てキーデータAKD(1)〜AKD(N)を順
次読出してキーコードKC同志を比較することに
より検出し、検出した数を重複割当てチヤンネル
数データMANYとして記憶する。この重複割当
てチヤンネル数データMANYの検出は、トリル
演奏等の演奏態様により鍵盤10にて所定数(楽
音発生チヤンネル数N)の押鍵操作の間に同一鍵
が2回以上繰返し押された場合に、該鍵の割当て
られる最大チヤンネル数を決定するもので、この
実施例では同一鍵の異なるチヤンネルへの割当て
は2チヤンネルまで許容され3チヤンネル以上の
割当ては禁止されるようになつている。
次に、CPU14bはステツプ43bにて上記
記憶した重複割当てチヤンネル数データMANY
の値が「1」より大きいか否かを判断する。上記
新たに押された鍵が上記所定数の押鍵操作の間に
2回以上押されたものでない場合、割当てキーデ
ータレジスタ領域AKDRの各レジスタには各々
異なるキーコードKCを有するキーデータKDが
記憶されているので、上記ステツプ43bにて検
出した重複割当てチヤンネル数データMANYは
「0」であり、CPU14bはステツプ43bにて
「NO」と判定し、ステツプ44aにて割当てキ
ーデータレジスタ領域AKDRの各レジスタに記
憶されている割当てキーデータAKD(1)〜AKD
(N)を順次読出し、読出した割当てキーデータ
AKDのキーコードKCが最低音キーコードLKC
と一致せずかつ同キーデータAKDのキーオンデ
ータKOが“0”である割当てキーデータAKDを
検出することにより、該割当てキーデータAKD
が記憶されているチヤンネルを探し出して該チヤ
ンネルの番号を表すチヤンネル番号データCHN
と、優先順位データレジスタ領域PRDRに記憶さ
れていて該チヤンネル番号CHNに対応する優先
順位データPRDとを一組の抽出データとして割
当てチヤンネルレジスタ領域ACHRに順次記憶
する。これにより、最低音でなくかつ離鍵されて
いる鍵に関するキーデータKDが割当てられてい
る楽音発生チヤンネルが全て抽出されることにな
る。この抽出処理後、CPU14bは、ステツプ
44bにて上記抽出処理により抽出された該当チ
ヤンネルが有るか否かを判断し、抽出された該当
チヤンネルがある場合には「YES」との判定の
基に、ステツプ45aにて前記抽出チヤンネルの
中からその値が最小である優先順位データPRD
を探し出し、この優先順位データPRDと一組に
なつて記憶されているチヤンネル番号データ
CHNを割当てチヤンネルレジスタ領域ACHRに
割当てチヤンネル番号データACHNとして記憶
して、ステツプ46にて「割当てchサーチ」プ
ログラムの実行を終了する。
また、ステツプ44aの抽出処理により該当す
るチヤンネルがない場合、すなわち最低音でない
チヤンネルが全て押鍵中である場合には、CPU
14bはステツプ44bにて「NO」と判定し、
ステツプ45bにて、割当てキーデータレジスタ
領域AKDRに記憶されている割当てキーデータ
AKD(1)〜AKD(N)のキーコードKCが最低音キ
ーコードLKCと一致せず、かつ優先順位データ
レジスタ領域PRDRに記憶されている優先順位デ
ータPRD(1)〜PRD(N)が最小の値であるチヤン
ネルを検出し、該チヤンネルの番号CHNを割当
てチヤンネルレジスタ領域ACHRに割当てチヤ
ンネル番号データACHNとして記憶して、ステ
ツプ46にて「割当てchサーチ」のプログラム
の実行を終了する。これにより、鍵盤10にて押
された鍵が上記所定数の押鍵操作の間に2回以上
押されたものでない場合、ステツプ44a,44
b,45a,45bの処理により、該鍵が割当て
られるチヤンネルを示す割当てチヤンネル番号デ
ータACHNは、割当てキーデータAKD(1)〜
AKD(N)の中に、最低音を示すキーデータKD
以外で離された鍵を表すキーデータKDがあれ
ば、このキーデータKDを記憶するチヤンネルの
うち、優先順位データPRDが最小値であるチヤ
ンネルを表すチヤンネル番号CHNに決定され、
また上記の条件に該当するキーデータKDがなけ
れば全チヤンネル中最低音を表すキーデータKD
を記憶するチヤンネル以外であつて、優先順位デ
ータPRDが最小値のチヤンネルを表すチヤンネ
ル番号CHNに設定される。
一方、トリル演奏のように鍵盤10において上
記所定数の押鍵操作の間に同一鍵が2回以上繰返
して押された場合、新たに押された鍵が1回目で
あれば、上記と同様に、ステツプ43aにて重複
割当てチヤンネル数データMANYが「0」に設
定され、また2回目であれば、割当てキーデータ
レジスタ領域AKDRには1回の押鍵時の割当て
により該鍵に関する割当てキーデータAKDが存
在しているのでステツプ43aの処理により重複
割当てチヤンネル数データMANYは「1」に設
定され、さらに3回目であればステツプ43aの
処理により重複割当てチヤンネル数データ
MANYは「2」に設定される。このように、重
複割当てチヤンネル数データMANYは同一鍵の
繰返し押鍵回数により種々の値に設定され、同デ
ータMANYが「0」又は「1」のときはステツ
プ43bにて「NO」すなわち同データMANY
が「1」より大きくないと判定されて、ステツプ
44a,44b,45a,45bにて上記のよう
にして割当てチヤンネル番号データACHNが設
定されるが、同データMANYが「2」になる
と、CPU14bはステツプ43bにて「YES」
と判定し、ステツプ45cにて割当てキーデータ
レジスタ領域AKDRの各レジスタに記憶してあ
る割当てキーデータAKD(1)〜AKD(N)を順次
読出し、読出した割当てキーデータAKD中のキ
ーコードKCと新たに押された鍵を表すキーデー
タKD中のキーコードKCとを比較し、これらの
キーコードKCが一致する複数のチヤンネルを抽
出して、この抽出した複数のチヤンネルに対応し
て割当てタツチデータレジスタ領域ATDRに記
憶されている複数の割当てタツチデータATDの
うちその値が最も小さい割当てタツチデータ
ATDを記憶するチヤンネルを検出し、該チヤン
ネルを示す番号を割当てチヤンネルレジスタ領域
ACHRに割当てチヤンネル番号データACHNと
して記憶して、ステツプ46の処理により「割当
てchサーチ」プログラムの実行を終了する。
このステツプ43a,43bの処理により、割
当てチヤンネル番号データACHNは、鍵盤10
にて上記所定数の押鍵操作の間に同一鍵の押され
る回数が「2」以内のときにはステツプ44a,
44b,45a,45bの処理により設定され、
又上記回数が「3」以上になるとステツプ45c
の処理により前に押された同一鍵が割当てられて
いるチヤンネルの中で、割当てタツチデータ
ATDが最小であるチヤンネルを示すチヤンネル
番号CHNに設定される。このことは同一鍵に関
する楽音を同時に発生するチヤンネル数を「2」
までに制限していることを意味する。なお、この
制御チヤンネル数は他の数例えば「3」等でもよ
く、この場合にはステツプ43bにて重複割当て
チヤンネル数MANYと比較する値を「2」にす
るとよい。また、上記割当てタツチデータATD
は、後述する「割当てchデータ設定」プログラ
ムの実行により、鍵が新たに押されたときキーデ
ータKDとともに鍵タツチ強さを表すタツチデー
タTDとして割当て記憶された後、第8図に示す
フローチヤートに対応した「タイマ割込み」プロ
グラムの実行によりその値が更新されるものであ
る。
上記「タイマ割込み」プログラムにおいては、
CPU14bはタイマ回路14dにより制御され
て、他のプログラムの実行を中断してステツプ6
5から該プログラムの実行を開始し、ステツプ6
6にて割当てタツチデータレジスタ領域ATDR
の各レジスタに記憶されている割当てタツチデー
タATD(1)〜ATD(N)を順次読出し、読出した
割当てタツチデータATDが「0」でなければ該
データATDから「1」を減算し、減算結果
(ATD―1)を新たな割当てタツチデータATD
として割当てタツチデータレジスタ領域ATDR
の読出したレジスタに再び記憶する。また、読出
したタツチデータATDが「0」であれば、該デ
ータATDの書換えは行なわない。上記のように
して、全ての割当てタツチデータATDの更新処
理を実行すると、CPU14bはステツプ67の
処理によりこの「タイマ割込み」プログラムの実
行を終了して、前記中断したプログラムの実行に
移る。この「タイマ割込み」プログラムにより、
押鍵時に設定された割当てタツチデータATD(1)
〜ATD(N)の各値は時間が経過するに従つて小
さくなるので、同一鍵が上記所定数の押鍵操作の
間に3回以上押された場合における該鍵が割当て
られるべきチヤンネルを示す割当てチヤンネル番
号データACHNは押鍵時の鍵タツチ強さ及び押
鍵からの経過時間に応じて決定されることにな
る。
なお、上記「割当てchサーチ」プログラムに
おいては、全ての楽音発生チヤンネルにて発生中
の楽音が、最低音を除き鍵盤10における押鍵中
のものである場合、CPU14bがステツプ44
bにて「NO」と判定し、ステツプ45bの処理
により割当てチヤンネル番号データACHNを設
定記憶するようにしたが、このステツプ45bの
処理の代わりに第7図に破線で示すようにステツ
プ45dの処理をするようにしてもよい。すなわ
ち、上記場合、CPU14bは、ステツプ45d
にて最低音とは無関係に優先順位データレジスタ
領域PRDRに記憶してある全ての優先順位データ
PRD(1)〜PRD(N)の中から最小値を示す優先順
位データPRDを記憶するチヤンネルを探し出し、
該チヤンネルを示すチヤンネル番号CHNを割当
てチヤンネル番号データACHNとして設定記憶
し、ステツプ46にて「割当てchサーチ」プロ
グラムの実行を終了するようにしてもよい。
上記「割当てchサーチ」プログラムの実行を
終了すると、CPU14bは、第6図のステツプ
50にて、上述した第7図のステツプ45a〜4
5dの処理により設定された割当てチヤンネル番
号ACHNに基づいて、優先順位データPRD
(ACHN)、割当てキーデータAKD(ACHN)及
び割当てタツチデータATD(ACHN)を初期設
定する「割当てchデータ設定」プログラムの実
行に移る。
このプログラムの詳細は第9図のフローチヤー
トに示されており、CPU14bはステツプ50
aにてこのプログラムの実行を開始し、ステツプ
51aにてサステインデータSUSの値に基づき
サステインペダル12が踏込まれているか否かを
判断する。この判断においてサステインペダル1
2が踏込まれた状態にあれば、後述するサステイ
ンペダル処理ルーチンのプログラムの実行により
サステインデータSUSは“1”に設定されてお
り、CPU14bは「YES」と判定し、ステツプ
51bにて新たに押された鍵を表すキーデータ
KD中のキーコードKCと現時点における最低音
を表すキーコードLKCとを比較し、前記キーコ
ードKCが最低音キーコードLKCより小さければ
「YES」と判定して、ステツプ51cにて最低音
キーコードLKCを前記キーコードKCに設定し、
又前記キーコードKCが最低音キーコードLKCよ
り大きければ「NO」と判定してステツプ51c
の処理をせずプログラムをステツプ52aに進め
る。これにより、サステインペダル12が踏込ま
れているとき、新たな鍵が押され、この新たな鍵
が以前に割当てられていたいずれの鍵よりも低い
音高の鍵であれば、最低音キーコードLKCが新
たに押された鍵を示すキーコードKCに変更され
る。また、サステインペダル12の踏込みが解除
されていれば、後述するサステインペダル処理ル
ーチンのプログラムの実行によりサステインデー
タSUSは“0”に設定されており、CPU14b
はステツプ51aにて「NO」と判定してステツ
プ51b,51cの処理もせずプログラムをステ
ツプ52aに進める。このことは、サステインペ
ダル12が踏込まれていないときには、最低音検
出が行われないことを意味する。
次に、CPU14bは、ステツプ52aにて新
たに押された鍵を示すキーデータKD中のキーコ
ードKCを一般レジスタ領域のGNRから再び読出
し、読出したキーコードKCを右へ4ビツトシフ
トすることによりこのキーコードKCの値を「1」
で割算してこの割算結果を変数WGHTとして設
定し、ステツプ52bにて「8」から前記変数
WGHTの値を減算して、この減算結果を上述の
「割当てchサーチ」プログラムにより設定された
割当てチヤンネル番号データACHNの示すチヤ
ンネルにおける優先順位データPRD(ACHN)と
して設定する。これにより、優先順位データ
PRD(ACHN)は、キーコードKCの値に応じて、
音名Ao〜A8に渡り16音毎に「1」ずつ減少する
「7」〜「2」のいずれかの値に設定され、この
ことは押鍵時に設定される優先順位データPRD
が低音程割当て優先順位が低く重み付けされるこ
とを意味する。
さらに、CPU14bは、ステツプ53aにて
前記新たに押された鍵を示すキーデータKD中の
キーコードKCと値「60」とを比較し、キーコー
ドKCが値「60」より小さければステツプ53b
にて上記ステツプ52bにて設定した優先順位デ
ータPRD(ACHN)に「32」を加算し、キーコー
ドKCが値「60」以上であればステツプ53cに
て前記優先順位データPRD(ACHN)に「26」を
加算する。この値「60」は音高C4を示すキーコ
ードKCに相当し、これにより音高C4は境に、前
記優先順位データPRD(ACHN)はさらに低音程
割当て優先順位が低く重み付けられ、その値は、
第10図に示すように新たに押された鍵のキーコ
ードKCに応じて、音高Ao〜C8に渡り「39」〜
「37」,「31」〜「28」のいずれかとなる。
上記優先順位データPRDの設定後、CPU14
bはステツプ54a,54bにて新たに押された
鍵を示すキーデータKP及び該鍵の鍵タツチ強さ
を示すタツチデータTDを一般レジスタ領域GNR
から再び読出して、これらのデータKD、TDを
各々割当てキーデータレジスタ領域AKDR及び
割当てタツチデータレジスタ領域ATDR内の上
記割当てチヤンネル番号データACHNが示すチ
ヤンネルに対応する位置に書込むことにより、押
鍵割当てに伴う割当てキーデータAKD(ACHN)
及び割当てタツチデータATD(ACHN)の設定
を実行する。
次に、CPU14bはステツプ55aにて再び
上記タツチデータTDを一般レジスタ領域GNRか
ら再度読出し、読出したタツチデータTDを右へ
4ビツトシフトすることによりこのタツチデータ
TDを「16」で割算してこの割算結果を変数
WGHTとして設定し、ステツプ55bにて上記
音高による重み付けした優先順位データPRD
(ACHN)に変数WGHTを加算することにより、
優先順位データPRD(ACHN)をタツチデータ
TDの値が大きい程割当て優先順位が低くなるよ
うに重み付けして、ステツプ56にて「割当て
chデータ設定」プログラムの処理を終了する。
なお、上述の音高及び鍵タツチ強さに基づく優先
順位データPRD(1)〜PRD(N)の重み付けは、上
記ステツプ52a,55aの割算値の変更及びス
テツプ53aの比較値の変更により種々に変更さ
れるものである。また、鍵タツチ検出回路10b
がなくてタツチデータTDが得られない場合又は
鍵タツチ強さの楽音の減衰時間に与える影響が小
さくてタツチデータTDに応じて優先順位データ
PRD(1)〜PRD(N)の重み付けを特に必要としな
い場合、CPU14bは第9図に破線にて示すよ
うにステツプ54bの処理後、ステツプ55a,
55bの処理を経ないで、ステツプ56にてこの
プログラムの実行を終了するようにしてもよい。
上記「割当てchデータ設定」プログラムの実
行を終了すると、CPU14bは、第6図のステ
ツプ60にプログラムを進め、ステツプ60にて
再び一般レジスタ領域GNRからキーデータKDと
タツチデータTDを読出して楽音発生回路13に
出力するとともに、割当てチヤンネルレジスタ領
域ACHRから割当てチヤンネル番号データ
ACHNを読出して楽音発生回路13に出力する。
これにより、楽音発生回路13はマイクロコンピ
ユータ部14から鍵盤10にて新たに押された鍵
を表すキーデータKD、該鍵のタツチ強さを表す
タツチデータTD及び楽音を発生すべき楽音発生
チヤンネルを示すチヤンネル番号データCHNを
入力することになり、同回路13はこのチヤンネ
ル番号データCHNに基づき楽音を発生すべき楽
音発生チヤンネルを指定し、この指定された楽音
発生チヤンネルが上記キーデータKD中のキーオ
ンデータKO(“1”)に基づき、キーデータKD中
のキーコードKCにより指定された音高の楽音信
号を発生し始める。また、この楽音信号のエンベ
ロープはそのアタツクレベルALがタツチデータ
に応じて決定され、かつその減衰時定数DTがキ
ーコードKCに応じて決定される。このとき、同
楽音発生チヤンネルがいまだ他の楽音信号を発生
中であれば、この他の楽音信号の発生は停止され
て上記指定される音高の楽音信号の発生を開始す
る。なお、上記のように他の楽音信号から新たに
指定された音高の楽音信号への切換え時には、新
たな音のアタツク感を確保し及びクリツク音の発
生を防止するために、他の楽音信号を所定の時定
数で急速に減衰させた後上記切換えを行うように
するとよい。
上記楽音発生回路13への新たに押された鍵に
関するデータの送出を終了すると、CPU14b
はプログラムをステツプ32に進め、上述のよう
にステツプ32にて押鍵及び操作検出レジスタ領
域KOR内の押鍵イベントデータKEVT1の有無
を調べ、押鍵イベントデータKEVT1がまだ存
在する場合には、ステツプ40の「割当てchサ
ーチ」プログラム、ステツプ50の「割当てch
データ設定」プログラム及びステツプ60の処理
からなる押鍵イベント処理ルーチンにより次の押
鍵イベントデータKEVT1に対応する押鍵に関
するデータを楽音発生回路13に出力し、押鍵イ
ベントデータKEVT1がなくなるまで上記押鍵
イベント処理ルーチンの循環処理を実行し続け
る。この循環処理により押鍵イベントデータ
KEVT1が全て処理されると、CPU14bはス
テツプ32にて「NO」と判断し、プログラムを
ステツプ33に進め、押鍵及び操作検出レジスタ
領域KOR内に離鍵イベントデータKEVT2が存
在しなければステツプ33にて「NO」と判定
し、ステツプ34の処理により鍵処理ルーチンの
実行を終了し、離鍵イベントデータKEVT2が
存在すればステツプ33にて「YES」と判定し、
ステツプ70〜73からなる離鍵イベント処理ル
ーチンにプログラムを進める。
この離鍵イベント処理ルーチンでは、CPU1
4bはステツプ70にて押鍵及び操作レジスタ領
域KORから、キーデータKDからなる一つの離鍵
イベントデータKEVT2を読出して、一般レジ
スタ領域GNRに今後処理するキーデータKDとし
て記憶した後、ステツプ71にて上記レジスタ領
域KORの読出した離鍵イベントデータKEVT2
を消去する。次に、CPU14bは前記記憶した
キーデータKDを読出し、このキーデータKDの
キーコードKCと同じキーコードKCを有しかつキ
ーオンデータKOが“1”である割当てキーデー
タAKDを、割当てキーデータレジスタ領域
AKDRに記憶されている割当てキーデータAKD
(1)〜AKD(N)の中から探し出し、探し出した割
当てキーデータAKDのキーオンデータKOを
“0”に設定変更し、ステツプ73にてキーオン
データKOを“0”に設定変更したキーデータ
KD及び該キーデータKDが記憶されていたチヤ
ンネルを表すチヤンネル番号データCHNを楽音
発生回路13に出力する。これにより、楽音発生
回路13は前記チヤンネル番号データCHNにて
指定される楽音発生チヤンネルにて発生中の楽音
信号の減衰を制御する。このとき、後述するサス
テインペダル処理ルーチンにて設定されるサステ
インデータSUSが“0”であれば上記減衰は第
3A図に破線で示すように急速に進み、またサス
テインデータSUSが“1”であれば上記減衰は
第3A図に実線にて示すように緩やかに進む。
このステツプ73の処理後、CPU14bはプ
ログラムをステツプ32に進め、ステツプ32に
て「NO」と判定し、押鍵及び操作検出レジスタ
領域KORの離鍵イベントデータKEVT2がなく
なるまでステツプ32,33,70〜73の循環
処理を実行し、離鍵イベントデータKEVT2が
なくなると、ステツプ33にて「NO」と判定
し、ステツプ34の処理にて鍵処理ルーチンの実
行を終了して第5図のステツプ23のサステイン
ペダル処理ルーチンの実行に移る。
d サステインペダル処理動作 サステインペダル12の踏込み又は踏込み解除
に伴うサステインペダル処理動作について詳述す
ると、第5図のステツプ23のサステインペダル
処理のプログラムは第11図のフローチヤートに
詳細に示されている。このプログラムにおいて
は、CPU14bはステツプ80にてプログラム
の実行を開始し、ステツプ81にてサステインペ
ダルスイツチ回路12aからサステインペダル1
2の現状態を示す現状態データを読込み、ステツ
プ82a,82bにて一般レジスタ領域GNRに
記憶されているサステインペダル12の以前の状
態を示すサステインデータSUSと上記現状態デ
ータとを比較することによりサステインペダル1
2の状態変化を検出する。
サステインペダル12が以前踏込まれておらず
新たに踏込まれた場合、サステインデータは
“0”であり上記取込んだ現状態データは“1”
であるので、CPU14bはステツプ82aにて
「YES」すなわちオンイベント有りと判断し、ス
テツプ83aにてサステインデータSUSを“1”
に設定変更する。次に、CPU14bは、ステツ
プ84aにて割当てキーデータレジスタ領域
AKDRに記憶されている割当てキーデータAKD
(1)〜AKD(N)を順次読出し、これらの割当てキ
ーデータAKD(1)〜AKD(N)の中に押鍵中の鍵
すなわちキーオンデータKOが“1”である鍵を
表す割当てキーデータAKDがあるか否かを調べ
て、押鍵中の鍵に関する割当てキーデータAKD
があれば、ステツプ84bにて上記押鍵中の鍵に
関する割当てキーデータAKDの中から最小のキ
ーコードKCを有するものを探し出し、該キーコ
ードKCを最低音として一般レジスタ領域GNRに
記憶する。また、押鍵中に関する割当てキーデー
タAKDがなければ、CPU14bはステツプ84
aにて「NO」と判定し、ステツプ84cにて一
般レジスタ領域GNR内の最低音キーコードLKC
を鍵盤10における最高音C8のキーコードKC
(108)よりも大きい値、例えば「128」に設定す
る。これにより、サステインペダル12が踏込ま
れた時点で鍵盤10にて押されている鍵があれ
ば、この鍵の中から最低音が検出され、押されて
いる鍵がなければ最低音が検出されないことにな
る。なお、ステツプ84cにて最低音キーコード
LKCを鍵盤10における最高音C8のキーコード
KC(108)より大きく設定したのは、サステイン
ペダル12が踏込み状態にあるときに新たな鍵が
押された場合、上述の第9図のステツプ51a〜
51cの処理により該新たな鍵が最低音として検
出されるようにするためである。
上記最低音キーコードLKCの設定後、CPU1
4bはステツプ85にてサステインデータSUS
(=“1”)を楽音発生回路13に出力し、ステツ
プ86の処理によりサステインペダル処理ルーチ
ンの実行を終了する。楽音発生回路13は、この
サステインデータSUS(=“1”)を記憶し、以降
このサステインデータSUS(=“1”)が変更され
るまで各楽音発生チヤンネルにて発生される楽音
の減衰特性を同データSUS(=“1”)に基づき制
御し、これにより、該楽音は離鍵されても第3A
図に実線で示すようにゆつくりと減衰するように
なる。
サステインペダル12が以前踏込まれており新
たに踏込みが解除された場合、一般レジスタ領域
GNRに記憶されているサステインデータSUSは
“1”であり、上記ステツプ81にて取込んだサ
ステインペダル12の現状態データは“0”であ
るので、CPU14bはステツプ82aにて
「NO」すなわちオンイベント無しと判定し、ス
テツプ82bにて「YES」すなわちオフイベン
ト有りと判定して、ステツプ83bにてサステイ
ンデータSUSを“0”に設定変更し、ステツプ
84dにて一般レジスタ領域GNR内の最低音キ
ーコードLKCを鍵盤10における最低音Aoのキ
ーコードKC(21)より小さな値、例えば「1」に
設定する。このように、最低音キーコードLKC
を鍵盤10の鍵を表すキーコードKCとして利用
されていない値「1」に設定することは、サステ
インペダル12が踏込まれていないときには最低
音キーコードLKCをクリアしておくことを意味
する。このステツプ84dの処理後、CPU14
bはステツプ85にて、上記と同様に、サステイ
ンデータSUS(=“0”)を楽音発生回路13に出
力し、ステツプ86の処理によりサステインペダ
ル処理ルーチンの実行を終了する。楽音発生回路
13はこのサステインデータSUS(=“0”)を記
憶し、以降このサステインデータSUS(=“0”)
が変更されるまで各楽音発生チヤンネルにて発生
される楽音の減衰特性を同データSUSの値“0”
に基づき制御し、これにより該楽音は離鍵される
と第3A図に破線で示すように急速に減衰するよ
うになる。
さらに、サステインペダル12の状態が変化し
ない場合には、一般レジスタ領域GNRに記憶さ
れているサステインデータSUSと上記ステツプ
81にて取込んだサステインペダル12の現状態
データは同じであり、CPU14bは、ステツプ
82aにて「NO」すなわちオンイベント無しと
判定し、ステツプ82bにて「NO」すなわちオ
フイベント無しと判定してステツプ86の処理に
よりこのサステインペダル処理ルーチンの実行を
終了する。
e 実施例の効果 以上の動作説明からも理解できる通り、上記実
施例においては、割当て優先順位を決定するため
の優先順位データPRD(1)〜PRD(N)は押鍵検出
によつてのみ設定され、楽音発生回路13からの
発生楽音の音量を示すエンベロープ振幅値データ
等を必要としないので、この実施例に係る押鍵割
当て装置は低コストにて実現される。また、上記
優先順位データPRD(1)〜PRD(N)は、押鍵時
に、第9図のステツプ52a,52b,53a,
53b,53cの処理により音高が低くなるに従
つて大きくなる値に初期設定され(第10図参
照)、かつ第9図のステツプ55a,55bの処
理により鍵タツチ強さが大きくなるに従つて大き
くなる値に初期設定されて、この初期設定された
優先順位データPRD(1)〜PRD(N)は第7図のス
テツプ42の処理により各データとも押鍵毎に一
率に減ぜられ、この減ぜられた優先順位データ
PRD(1)〜PRD(N)に基づいてステツプ45a,
45b,45dの処理により小さな値の優先順位
データPRDを記憶するチヤンネルが、新たな鍵
が押されたときの該鍵の割当てチヤンネルとして
決定されるので、該新たに押された鍵は、音高が
低くかつ鍵タツチ強さが大きくなるに従つてその
減衰時間が長くなる楽音を発生中のチヤンネルに
は割当てられにくくなり、割当て優先順位決定が
押鍵順のみにより決定されるものに比べて適切に
なる。
また、トリル演奏等のように所定数(楽音発生
チヤンネル数N)の押鍵操作の間に同一鍵が2回
以上繰返し押された場合、第7図のステツプ43
a,43bの処理により該鍵は2チヤンネルまで
割当てを許容されるので、同一鍵に関する楽音が
2チヤンネルで同時に発生されて、例えばピアノ
等の自然楽器に見られるように発音源である弦は
後の打鍵に関する楽音を発生しているにもかかわ
らず、響板等の共鳴装置が前の打鍵に関する楽音
を発生するような効果がより良くシミユレートで
きる。また、所定数(楽音発生チヤンネル数N)
の押鍵操作の間に同一鍵が3回以上繰返し押され
た場合には、第7図のステツプ45c及び第8図
のタイマ割込みプログラムの処理により、鍵タツ
チ強さと押鍵からの時間経過とを考慮して以前に
押された同一鍵が割当てられているチヤンネルに
該鍵が再度割当てられるようにしたので、同一鍵
が連続して何回も繰返し押されても全て若しくは
大部分の楽音発生チヤンネルが同一鍵により専有
されてしまうことがなく、しかも同一鍵が割当て
られているチヤンネルの中では小さな音量の方に
新たに押された鍵の割当てがなされるので、この
割当ても適切なものとなる。なお、この同一鍵の
重複割当てはサステインペダル12が踏込まれて
いて、楽音の減衰時間が長い場合程、より大きな
効果となつて現われる。
さらに、サステインペダル12が踏まれてい
て、発生楽音の減衰時間が長い場合、第9図のス
テツプ51b,51c及び第11図のステツプ8
4b,84cの処理により最低音が検出され、第
7図のステツプ44a,44b,45a,45b
の処理により最低音が割当てられているチヤンネ
ルには新たに押された鍵の割当てが禁止されるよ
うになつているので、該最低音は引続き発生され
続けることになり、ピアノ等で見られるように、
低音部の楽音の余韻を残したまま高音部の速い押
鍵による楽音を次々に発生させることができる。
また、サステインペダル12が踏込まれていず発
生楽音の減衰時間が短い場合、第11図のステツ
プ84dの処理により最低音が検出されないよう
に最低音キーコードLKCがクリアされるので、
減衰時間が短く低音部(特に最低音)の余韻が残
らない場合には、上記割当て禁止が解除されて新
たに押された鍵の割当てが不必要に制限されな
い。これにより、全ての楽音発生チヤンネルが有
効に利用される。
e 他の実施例 上記実施例においては、楽音発生回路13がピ
アノ、ハープシコード等の減衰系の楽音を発生す
る電子楽器にこの発明に係る押鍵割当て装置が適
用された例について説明したが、この発明に係る
押鍵割当て装置は、楽音発生回路13がフルー
ト、バイオリン等の持続系の楽音を発生する電子
楽器にも適用される。この場合、エンベロープ波
形振幅値は、第3B図に実線にて示すように、押
鍵と同時に急速に立上がり、押鍵中はほぼ一定レ
ベルSLを維持し、離鍵後減衰時定数DTに応じて
除々に減衰するものであり、この場合には楽音の
減衰時間が押鍵タイミングにより決定されないで
離鍵タイミングにより決定されるので、優先順位
データPRD(1)〜PRD(N)の減算は鍵されている
チヤンネルにおいてのみ離鍵毎に実行されるよう
にする。すなわち、第7図のステツプ42の処理
を「割当てchサーチ」プログラムにおいて実行
する代わり、第6図のステツプ70〜73からな
る離鍵イベント処理ルーチンにて押鍵されている
チヤンネルにおいてのみ実行するようにするま
た、持続系の楽音のエンベロープ波形振幅値にお
いては、前記減衰時定数DTが音高が低くなるに
従つて第3B図に一点鎖線で示すように変化し、
かつ前記一定レベルSLは鍵タツチ強さが大きく
なるに従つて第3B図に二点鎖線で示すように変
化する。さらに、持続系の楽音を制御するために
利用される鍵タツチ検出装置は通常押鍵深さ又は
押鍵圧力を押鍵中検出し続けるいわゆるアフター
タツチセンサにより構成するこきもでき、前記一
定レベルSLはこの検出結果に基づき変更制御さ
れるので、この種のタツチ検出装置を有する電子
楽器にこの発明に係る押鍵割当て装置を適用する
場合、鍵タツチ強さによる優先順位データPRD
(1)〜PRD(N)の重み付けは離鍵時に行うように
する。すなわち、第9図のステツプ55a,55
bの処理は第6図のステツプ72又はステツプ7
3の処理後に実行するようにし、この場合には割
当てチヤンネル番号データACHNでなく、ステ
ツプ72にて検出される離鍵チヤンネルにより指
定されるチヤンネルの優先順位データPRDを鍵
タツチ強さに応じて重み付けするとよい。
また、上記実施例においては、各鍵毎に設けら
れた押鍵速度検出回路又は押鍵圧力検出回路から
各鍵タツチ強さを表す信号が出力されるようにし
たが、各鍵毎に第1及び第2の固定接点と押鍵操
作により可動する可動接点を備えた切換え型のス
イツチを有し、押鍵操作に応じて可動接点が第1
の固定接点から第2の固定接点に切換わる時間を
計数手段により計測して押鍵速度を検出し、又は
各鍵毎に固定接点と押鍵操作に応じて可動する可
動接点とを備えた2組のスイツチを有し、押鍵操
作に応じて2組のスイツチが各々閉成(又開成)
されるタイミング差を計数手段により計測して押
鍵速度を検出する場合には、前記計数手段を楽音
発生チヤンネル数分だけ用意するようにし、押鍵
割当てとともに前記計数手段の割当てを行うよう
にして該計数手段の計数結果に応じて押鍵に伴う
鍵タツチ強さを表すデータを得るようにしてもよ
い。
また、上記実施例では、鍵盤10にて押された
鍵は楽音発生チヤンネルのいずれか一つに割当て
られ、該楽音発生チヤンネルは操作子群11の操
作により選択された一つの楽音を発生するように
したので、優先順位データPRD(1)〜PRD(N)を
音色に応じて重み付けしなかつたが、この発明に
係る押鍵割当て装置を一押鍵に対して異なる音色
毎に複数の楽音発生チヤンネルへの割当てを行う
ようにした電子楽器に適用した場合、音色毎に減
衰時定数DTは変化するので上記音色毎の割当て
と同時に優先順位データPRD(1)〜PRD(N)を割
当て音色に応じて重み付けするようにするとよ
い。
また、上記実施例においては、サステインペダ
ル12が踏込まれていない状態においては、第1
1図のステツプ84dの処理により最低音キーコ
ードLKCをクリアすることにより割当てキーデ
ータAKD(1)〜AKD(N)の中から最低音が検出
されないようにして、第7図のステツプ44a,
45bの処理により最低音に対応する鍵が割当て
られている楽音発生チヤンネルにも新たに押され
た鍵が割当てられる、すなわち上記楽音発生チヤ
ンネルを他の楽音発生チヤンネルとは区別せず、
新たに押された鍵の割当てられるべき楽音発生チ
ヤンネルが所定の優先順位に基づき全ての楽音発
生チヤンネルの中から決定されるようにしたが、
このことは第7図の「割当てchサーチ」プログ
ラムを第12図のフローチヤートにより表された
プログラムのように変形しても実現される。この
第12図のフローチヤートに対応するプログラム
においては、第7図の場合に比べ、ステツプ14
0,141,142の処理が付加されており、
CPU14bはステツプ140にてサステインデ
ータSUSに基づきサステインペダル12の状態
を判断し、サステインペダル12が踏込まれてい
れば、ステツプ44aにて上記実施例と同様最低
音でなくかつ離鍵に関する割当てキーデータ
AKDを記憶するチヤンネルを抽出し、サステイ
ンペダル12の踏込みが解除されていればステツ
プ141にて最低音とは無関係に離鍵に関する割
当てキーデータAKDを記憶するチヤンネルを抽
出し、上記抽出により該当チヤンネルがある場合
にはステツプ44b,45aの処理により該当チ
ヤンネルの中から優先順位データPRDに基づき
割当てチヤンネルが決定される。そして、上記該
当チヤンネルがない場合には、ステツプ142に
て再びサステインデータSUSに基づきサステイ
ンペダル12の状態が判断され、サステインペダ
ル12が踏込まれていればステツプ45bにて最
低音に対応する鍵が割当てられていない楽音発生
チヤンネルの中から優先順位データPRDに基づ
き割当てチヤンネルが決定され、またサステイン
ペダル12の踏込みが解除されていればステツプ
45dにて最低音とは無関係に全ての楽音発生チ
ヤンネルの中から優先順位データPRDに基づき
割当てチヤンネルが決定される。これにより、上
記実施例と同等な効果が達成される。
また、上記実施例では、サステインペダル12
が踏込まれている状態にて最低音に対応する鍵が
割当てられている楽音発生チヤンネルのみ新たに
押された鍵の割当てを禁止するようにしたが、最
低音キーコードLKCの設定処理及び第7図(又
は第12図)のステツプ44a,45bの処理を
変更することにより、上記鍵が、 (1) 最高音に対応する鍵が割当てられている楽音
発生チヤンネル、 (2) 低音側又は高音側から2音若しくは3音に対
応する鍵が割当てられている楽音発生チヤンネ
ル (3) 最低音又は最高音から所定音域例えば1乃至
2オクターブ程度の所定音域に含まれる音に対
応する鍵が割当てられている楽音発生チヤンネ
ル、 (4) 所定音域(例えば低音域、中音域、高音域)
に属する音に対応する鍵が割当てられている楽
音発生チヤンネル、または、 (5) 上記(1)〜(4)を各々組合せた楽音発生チヤンネ
ル、には、割当てられないようにしてもよい。
この場合、上記楽音発生チヤンネルにて発生さ
れる楽音の減衰時間を長くする(減衰時定数
DTを大きくする)ことにより、上記楽音を他
の楽音に比べ長く発生させ続けることができ、
今までにない演奏効果が達成される。なお、サ
ステインペダル12の踏込み又は踏込み解除に
は関係なく楽音の減衰時間がある程度長い場合
又はサステインペダル12がない場合には、サ
ステインペダル12の状態を上記割当て禁止の
条件とする必要はない。
さらに、上記実施例では、この発明に係る押鍵
割当て装置を既存のマイクロコンピユータを用い
て構成するようにしたが、この押鍵割当て装置を
上記実施例のプログラムの各処理に応じた機能を
有する各電気回路を組合せたハード回路により構
成するようにしてもよい。
【図面の簡単な説明】
第1図は特許請求の範囲に記載した発明の構成
に対応する図、第2図はこの発明が適用される電
子楽器の一実施例を示す概略図、第3A図及び第
3B図は楽音のエンベロープ波形を示す図、第4
A図乃至第4F図は第2図のマイクロコンピユー
タ部14内に設けられたRAM14cのメモリマ
ツプの一例を示す図、第5図乃至第9図及び第1
1図は第2図のマイクロコンピユータ部14で実
行されるプログラムに対応するフローチヤートの
一例を示す図、第10図は音高に対応する優先順
位データの初期値の一例を示す図、及び第12図
は第7図に示されたプログラムを一部変形した変
形プログラムに対応するフローチヤートの一例を
示す図である。 符号の説明、10…鍵盤、10a…鍵スイツチ
回路、10b…鍵タツチ検出回路、11…操作子
群、11a…操作子スイツチ回路、12…サステ
インペダル、12a…サステインペダルスイツチ
回路、13…楽音発生回路、14…マイクロコン
ピユータ部。

Claims (1)

  1. 【特許請求の範囲】 1 鍵盤にて押された鍵を鍵の数より少ない複数
    の楽音発生チヤンネルのいずれかに割当てる電子
    楽器の押鍵割当て装置において、 前記割当ての優先順位をその値の大きさにより
    表すデータを前記各楽音発生チヤンネルに対応し
    て記憶する複数の領域からなる記憶手段と、 前記鍵盤における押鍵又は離鍵毎に前記各領域
    に記憶されているデータの値を各々前記優先順位
    が高くなる方向に所定値だけ変更するデータ変更
    手段と、 前記鍵盤にて新たな鍵が押されたとき前記各領
    域に記憶されているデータの値に基づき最も前記
    優先順位の高いデータを記憶する領域を検出する
    検出手段と、 前記検出領域に対応した楽音発生チヤンネルへ
    の前記新たな鍵の割当てを制御する割当て制御手
    段と、 前記割当てられた楽音発生チヤンネルにて発生
    すべき楽音に応じて定まる楽音の減衰時間が長い
    程低い前記優先順位を表す値を前記検出手段の検
    出に応じて前記検出領域に書込む書込み手段とを
    備えたことを特徴とする電子楽器の押鍵割当て装
    置。
JP60232241A 1985-04-24 1985-10-17 電子楽器の押鍵割当て装置 Granted JPS6290697A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP60232241A JPS6290697A (ja) 1985-10-17 1985-10-17 電子楽器の押鍵割当て装置
EP86105588A EP0204122B1 (en) 1985-04-24 1986-04-23 Electronic musical instrument
DE86105588T DE3688716T2 (de) 1985-04-24 1986-04-23 Elektronisches Musikinstrument.
US06/855,610 US4703680A (en) 1985-04-24 1986-04-23 Truncate prioritization system for multi channel electronic music generator
SG6695A SG6695G (en) 1985-04-24 1995-01-16 Electronic musical instrument
HK134495A HK134495A (en) 1985-04-24 1995-08-24 Electronic musical instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60232241A JPS6290697A (ja) 1985-10-17 1985-10-17 電子楽器の押鍵割当て装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP3177525A Division JP2531317B2 (ja) 1991-06-21 1991-06-21 電子楽器の押鍵割当て装置

Publications (2)

Publication Number Publication Date
JPS6290697A JPS6290697A (ja) 1987-04-25
JPH0128397B2 true JPH0128397B2 (ja) 1989-06-02

Family

ID=16936180

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60232241A Granted JPS6290697A (ja) 1985-04-24 1985-10-17 電子楽器の押鍵割当て装置

Country Status (1)

Country Link
JP (1) JPS6290697A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02217900A (ja) * 1989-02-17 1990-08-30 Matsushita Electric Ind Co Ltd 電子楽器の出力チャンネル決定装置
JP2943492B2 (ja) * 1992-03-19 1999-08-30 ヤマハ株式会社 電子楽器
JP2968387B2 (ja) * 1992-03-31 1999-10-25 株式会社河合楽器製作所 電子楽器のキーアサイナ

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55140893A (en) * 1979-04-21 1980-11-04 Kawai Musical Instr Mfg Co System for allocating keyboard switch information

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55140893A (en) * 1979-04-21 1980-11-04 Kawai Musical Instr Mfg Co System for allocating keyboard switch information

Also Published As

Publication number Publication date
JPS6290697A (ja) 1987-04-25

Similar Documents

Publication Publication Date Title
US4703680A (en) Truncate prioritization system for multi channel electronic music generator
JPH03174590A (ja) 電子楽器
JP2655905B2 (ja) 電子楽器のチャンネル割り当て装置
JP2664098B2 (ja) 電子楽器のペダル装置
JPH0128397B2 (ja)
JPS5943758B2 (ja) 電子楽器用アサイナ
JP2531317B2 (ja) 電子楽器の押鍵割当て装置
JPH04198994A (ja) 電子楽器の楽音制御方法
JPH0335679B2 (ja)
JPH0335680B2 (ja)
JP2526636B2 (ja) 電子楽器
JPH0572596B2 (ja)
JP2629418B2 (ja) 楽音合成装置
JP3624780B2 (ja) 楽音制御装置
JP2640267B2 (ja) 電子楽器
JPH0127439B2 (ja)
JP2936872B2 (ja) 楽音制御装置
JP2640992B2 (ja) 電子楽器の発音指示装置及び発音指示方法
JP3194850B2 (ja) 自動演奏機能を有する電子楽器
JPH05281967A (ja) 電子楽器のキーアサイナ
JPH0127438B2 (ja)
JPH0515279B2 (ja)
JPH08234733A (ja) 電子楽器
JP2953217B2 (ja) 電子楽器
JP2814479B2 (ja) 電子楽器

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees