Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPH0429077B2 - - Google Patents
[go: Go Back, main page]

JPH0429077B2 - - Google Patents

Info

Publication number
JPH0429077B2
JPH0429077B2 JP61283274A JP28327486A JPH0429077B2 JP H0429077 B2 JPH0429077 B2 JP H0429077B2 JP 61283274 A JP61283274 A JP 61283274A JP 28327486 A JP28327486 A JP 28327486A JP H0429077 B2 JPH0429077 B2 JP H0429077B2
Authority
JP
Japan
Prior art keywords
channel
tone
musical tone
assignment
group
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 - Lifetime
Application number
JP61283274A
Other languages
Japanese (ja)
Other versions
JPS63136093A (en
Inventor
Yoshihiro Inagaki
Hideo Yamamoto
Tetsuo Nishimoto
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 JP61283274A priority Critical patent/JPS63136093A/en
Priority to US07/126,840 priority patent/US4984497A/en
Publication of JPS63136093A publication Critical patent/JPS63136093A/en
Publication of JPH0429077B2 publication Critical patent/JPH0429077B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】[Detailed description of the invention]

〔産業上の利用分野〕 この発明は、電子楽器その他楽音発生機器にお
いて使用される楽音信号発生装置に関し、特に、
音色等の楽音要素が楽音の発生タイミング毎にシ
ーケンシヤルに変化するようにした楽音信号発生
装置に関する。 〔従来の技術〕 特公昭60−4476号公報においては、発生楽音の
ピツチ、音色、音量エンベロープ等の楽音要素を
楽音の発生タイミング毎にランダムに変化するよ
うにしたことが開示されている。そこでは、複数
の楽音形成チヤンネルにおいて発生楽音のピツ
チ、音色、音量エンベロープ等の楽音要素を夫々
独立に制御し、かつ、押圧された鍵の発音を通常
の発音割当て論理に従つて割当てる(つまり、空
きチヤンネルがあれば適当な空きチヤンネルに割
当て、空きチヤンネルがなければトランケート処
理に従つて最も古く離鍵された若しくは最も減衰
が進んでいるチヤンネルに割当てる)ようにして
おり、鍵の押圧順序(つまり発音順序)と割当て
られるチヤンネルとの関係は全くランダムであ
り、その結果、発生楽音のピツチ、音色、音量エ
ンベロープ等の楽音要素は楽音の発生タイミング
毎にランダムに変化することになる。 〔発明が解決しようとする問題点〕 上述のような従来の装置においては、発生楽音
のピツチ、音色、音量エンベロープ等をランダム
にしか変化させることができず、そのためランダ
ムな演奏効果しか得ることができない。 この発明は上述の点に鑑みてなされたもので、
発生楽音のピツチ、音色、音量エンベロープ等の
楽音要素を楽音の発生タイミング毎にシーケンシ
ヤルに変化させるようにし、これにより、順序だ
つた変化による心地良い演奏効果を実現すること
ができるようにすると共に、その順序を任意に設
定することができるようにした楽音信号発生装置
を提供しようとするものである。 〔問題点を解決するための手段〕 この発明に係る楽音信号発生装置は、割当てら
れた音高情報に対応する音高の楽音信号を夫々形
成する複数の楽音形成チヤンネルと、前記楽音形
成チヤンネルのうち任意の複数のチヤンネルに関
して、割当て順序を設定する割当て順序設定手段
と、楽音を発生すべきタイミング毎に、前記割当
て順序設定手段によつて設定された順序に従つて
割当てるべきチヤンネルを切り換えて指示し、指
示されたチヤンネルに対して発生すべき楽音の音
高情報を割当てる割当て手段と、前記各楽音形成
チヤンネルに対してそこにおいて形成される楽音
信号の楽音要素を制御する楽音要素制御信号を供
給し、少なくとも前記割当て順序設定手段によつ
て割当て順序が設定される複数のチヤンネルに関
して互いに異なる楽音要素制御信号を供給する楽
音要素制御手段とを具えたものである。 この発明の概要を機能ブロツク図によつて示す
と第1図のようであり、1は複数の楽音形成チヤ
ンネルCH1〜CHnを含む楽音形成手段、2は割
当て順序設定手段、3は割当て手段、4は楽音要
素制御手段、である。 〔作用〕 割当て順序設定手段2によつて、楽音形成チヤ
ンネルCH1〜CHnのうち任意の複数のチヤンネ
ルに関して、割当て順序を設定する。割当て手段
3では、楽音を発生すべきタイミング毎に、前記
割当て順序設定手段2によつて設定された順序に
従つて割当てるべきチヤンネルを切り換えて指示
し、指示されたチヤンネルに対して発生すべき楽
音の音高情報を割当てる。例えば、チヤンネル
CH1,CH2,CH3の順で割当てを行うべきこ
とが割当て順序設定手段2によつて設定される
と、第1音はチヤンネルCH1に割当て、第2音
はチヤンネルCH2に割当て、第3音はチヤンネ
ルCH3に割当て、第4音はチヤンネルCH1に
割当てる、というように、楽音を発生すべきタイ
ミング毎に割当てるべきチヤンネルがCH1,
CH2,CH3の順で順次切り換えられる。 楽音形成チヤンネルCH1〜CHnでは、各々に
割当てられた音高情報に対応する音高の楽音信号
を夫々形成する。各楽音形成チヤンネルにおいて
形成される楽音信号の楽音要素は楽音要素制御手
段4から供給される楽音要素制御信号によつて制
御される。この楽音要素制御手段4は、少なくと
も前記割当て順序設定手段2によつて割当て順序
が設定される複数のチヤンネルに関しては互いに
異なる楽音要素制御信号を供給する。ここで楽音
要素とは、音色、ピツチ、音量エンベロープ等の
楽音の特徴を決定する要素を意味する。従つて、
前記割当て順序設定手段2によつて割当て順序が
設定される複数のチヤンネルでは、各々で形成す
る楽音の音色、ピツチ、音量エンベロープ等の楽
音要素のいずれか1または複数が互いに異なるも
のとされる。これらのチヤンネルには設定された
割当て順序に従つて、発生すべき楽音の音高情報
が楽音の発生タイミング毎に順番に割当てられ
る。従つて、発生楽音のピツチ、音色、音量エン
ベロープ等の楽音要素を楽音の発生タイミング毎
にシーケンシヤルに変化させることができる。 〔実施例〕 以下、添付図面を参照してこの発明の実施例を
詳細に説明しよう。 第2図はこの発明に係る楽音信号発生装置10
の一実施例のハード構成を示すもので、この実施
例の楽音信号発生装置10においてはCPU(中央
処理ユニツト)11、プログラムROM(リード
オンリーメモリ)12及びデータ及びワーキング
RAM(ランダムアクセスメモリ)13を含むマ
イクロコンピユータによつて各種の動作や処理が
制御される。この実施例の楽音信号発生装置10
は、音源モジユールとしてモジユール化されたも
のからなつており、これに対して同じく夫々モジ
ユール化されている任意の鍵盤装置14及び自動
演奏装置15を適宜接続し、更にサウンドシステ
ム16を接続することにより、全体として電子楽
器を構成することができるようになつている。 モジユール化された鍵盤装置14は、複数の鍵
を具えた鍵盤とこの鍵盤における押鍵・離鍵を検
出するための回路とを含み、キーオンイベント
(新たな押鍵)あるいはキーオフイベント(新た
な離鍵)があるたびに、新たな押鍵又は離鍵に係
る鍵のキーコードと、キーオンイベント信号また
はキーオフイベント信号を出力する。モジユール
化された自動演奏装置15は、自動演奏音を発生
すべきタイミングにおいて該自動演奏音の音高を
示すキーコード等からなるキーデータを出力す
る。これらのモジユール化された鍵盤装置14及
び自動演奏装置15から出力されるデータは、楽
音信号処理の共通規格であるMIDI規格で表現さ
れており、楽音信号発生装置10内のデータバス
17を介して上述のマイクロコンピユータに取り
込まれる。 楽音信号発生装置10は、複数の楽音形成チヤ
ンネル(この例ではCH1〜CH8の8チヤンネ
ルであるとする)を含む楽音形成回路18を具備
しており、発生すべき楽音の音高を示すキーコー
ド等からなるキーデータを上記鍵盤装置14ある
いは自動演奏装置15から受け取り、受け取つた
キーコードに対応する楽音の発音を楽音形成回路
18内のチヤンネルに対して所定の割当て基準に
従つて割当て、この割当てに従つて各楽音形成チ
ヤンネルCH1〜CH8で楽音信号を発生する。
発生された楽音信号はサウンドシステム16に与
えられる。 各楽音形成チヤンネルCH1〜CH8において
は、割当てられたキーコード(つまり音高情報)
に対応する音高の楽音信号を夫々形成することが
できると共に、そこで形成する楽音信号の楽音要
素(音色、ピツチ、音量等)を楽音要素制御信号
に従つて適宜可変制御することができるようにな
つている。楽音要素制御信号とは、音色設定パラ
メータや、ピツチ変化設定パラメータ、音量エン
ベロープ波形設定パラメータ、その他の制御用エ
ンベロープ波形設定パラメータなど、楽音形成用
若しくは楽音要素制御用の各種パラメータの総称
であり、以下ではこれを単に「トーンパラメー
タ」ということにする。従つて、以下で言う「ト
ーンパラメータ」とは狭い意味での音色設定パラ
メータのみを指すのではなく、上述のような楽音
形成用若しくは楽音要素制御用の各種パラメータ
を総称しているのである。 データROM19は、楽音形成のために使用す
る各種データや処理のために使用する各種データ
を予め記憶したものであり、特に、64種類の音色
に関する上記「トーンパラメータ」を記憶してい
る。この64種類の音色に対して1〜64の音色ナン
バが割り振られており、データROM19に記憶
された各音色に対応する64組のトーンパラメータ
TPMEM(1)〜TPMEM(64)は、アドレス入力に
与えられる音色ナンバに応じて読み出される。 操作パネル部20は、各種データや動作モード
の設定・選択を行うためのスイツチ及び操作子類
並びにデイスプレイ21を具えている。 音色設定モードスイツチTCSETは、音色設定
モードを選択するためのスイツチである。音色設
定モードとは、各チヤンネルに対してトーンパラ
メータを個別に設定する処理や、任意の複数のチ
ヤンネルに関して割当て順序を設定する処理や、
各チヤンネルを複数のグループに分類する設定処
理など、を行うモードである。 グループスイツチGRPは、各チヤンネルを複
数のグループに分類する設定を行う場合におい
て、グループ化するチヤンネルを指定するために
操作するものである。 オルタネーテイブアサインスイツチALTは、
任意の複数のチヤンネルに関して割当て順序を設
定する場合において、順序だつて割当てられるべ
きチヤンネルを指定するために操作するものであ
る。この実施例では、順序だつた割当てを行うこ
とが指定された複数のチヤンネルに関して、チヤ
ンネルの隣接する順序がそのまま割当て順序にな
るようになつている。このような順序だつた割当
て処理を以下オルタネーテイブアサインという。 デイスプレイ21は、各チヤンネルに対して設
定されているトーンパラメータの音色ナンバと、
オルタネーテイブアサインの設定状態を示す表示
と、チヤンネルのグループ設定状態を示す表示と
を行うものである。このデイスプレイ21におけ
る表示内容の幾つかの例を示すと第3図a〜fの
ようである。上段にCH1からCH8までのチヤ
ンネル番号が表示され、夫々のチヤンネル番号の
下に各チヤンネルに対して設定されているトーン
パラメータの音色ナンバ(1〜64)が表示され、
オルタネーテイブアサインが適用されるチヤンネ
ルの音色ナンバ表示の間に所定のオルタネーテイ
ブアサイン表示「+」が表示され、グループ設定
処理によつて同一の音色ナンバが割当てられたチ
ヤンネルには音色ナンバ表示の代わりに所定のグ
ループ化表示「←」が表示される。オルタネーテ
イブアサイン表示「+」は、上述のオルタネーテ
イブアサインスイツチALTの操作に基づき設定
される。グループ化表示「←」は、上述のグルー
プスイツチGRPの操作に基づき設定される。な
お、このグループ化表示「←」は、このグループ
化表示「←」が表示されたチヤンネルの音色ナン
バがデイスプレイ21における左隣のチヤンネル
の音色ナンバと同じであることを示す表示であ
る。 デイスプレイ21にはカーソルCSRが表示さ
れるようになつており、このカーソルCSRは操
作パネル部20におけるカーソルキーCSRKの操
作に応じて各チヤンネルに対応する位置及び各チ
ヤンネル間の中間位置(これらのカーソル位置は
第3図aにおいて点線で示されている)に移動す
る。 プリセツトモードスイツチPSRは、プリセツ
トモードを選択するためのスイツチである。プリ
セツトモードとは、デイスプレイ21に表示され
る各チヤンネル毎に設定された音色ナンバとオル
タネーテイブアサイン表示及びグループ化表示の
データを1セツトのプリセツトデータ(プリセツ
トトーンパラメータ)として、記憶回路に書き込
む、あるいは記憶回路から読み出す、モードであ
る。プリセツトライトスイツチPSWは、デイス
プレイ21に表示された1セツトのデータをプリ
セツトデータとして記憶回路に書き込むときに操
作するスイツチである。 音色設定モードスイツチTCSET及びプリセツ
トモードスイツチPSRに付属して夫々LED(発光
ダイオード)が設けられており、一方のスイツチ
TCSET(またはPSR)をオンするとそれに対応
するLEDが点灯すると共に他方のLEDを消灯す
る、というように排他的に点灯、消灯が切り換え
られるようになつている。音色設定モードスイツ
チTCSETに対応するLEDが点灯しているとき、
音色設定モードであり、プリセツトモードスイツ
チPSRに対応するLEDが点灯しているとき、プ
リセツトモードである。 テンキー22は0から9までの10個の数値入力
キーからなり、音色ナンバ等の数値データを入力
するとき操作されるものである。 操作パネル部20には、更に、トーンパラメー
タエデイツト用操作子群23およびその他種々の
楽音設定・制御用スイツチや操作子(例えば全体
音量を設定する操作子)が設けられている。トー
ンパラメータエデイツト用操作子群23は、トー
ンパラメータ中の個別の要素(例えばピツチ変化
設定量やエンベロープの各種パラメータ設定量な
ど)を修正・変更するためのものである。 楽音信号発生装置10内のマイクロコンピユー
タによつて実行される処理のうち、この発明に関
連する処理のフローチヤートの一例が第5図〜第
12図に示されている。この処理に関連して使用
されるデータ及びワーキングRAM13内の記憶
内容の一例が第4図に示されている。 TSFLGは、音色設定モードフラグであり、音
色設定モードスイツチTCSETがオンされたとき
“1”にセツトされ、プリセツトモードスイツチ
PSRがオンされたとき“0”にリセツトされる。 PSFLGは、プリセツトモードフラグであり、
プリセツトモードスイツチPSRがオンされたと
き“1”にセツトされ、音色設定モードスイツチ
TCSETがオンされたとき“0”にリセツトされ
る。 CHNOは、カーソルチヤンネルナンバであり、
カーソルCSRの現在位置に対応するチヤンネル
番号を示す。 TENKYは、テンキー入力データであり、テ
ンキー22によつて入力されれた数値データを示
す。 NKCは、ニユーキーコードであり、鍵盤装置
14あるいは自動演奏装置15から与えられた新
たに押圧された鍵(新たに発生すべき楽音の音
高)を示すキーコードである。また、新たに離鍵
された鍵のキーコードもニユーキーコードとして
取り扱われる。 TCN(1)〜TCN(8)は、各チヤンネルに対して設
定された音色ナンバである。括弧内の数字はチヤ
ンネル番号を示す。例えば、TCN(1)はチヤンネ
ル1に対して設定された音色ナンバであり、具体
的には、1乃至64のいずれかの値である。 GRP(1)〜GRP(8)は、各チヤンネルのグループ
設定状態を示すグループ設定データである。括弧
内の数字はチヤンネル番号を示す。例えば、
GRP(1)はチヤンネル1のグループ設定データで
あり、具体的には、“1”(グループスイツチ
GRPによつてグループ化することが設定された
場合)または“0”(グループ化することが設定
されなかつた場合)である。 ALT(1)〜〜ALT(8)は、各チヤンネルのオルタ
ネーテイブアサイン設定状態を示すオルタネーテ
イブアサイン設定データである。括弧内の数字は
チヤンネル番号を示す。例えば、ALT(1)はチヤ
ンネル1のオルタネーテイブアサイン設定データ
であり、具体的には、“1”(オルタネーテイブア
サインスイツチALTによつてオルタネーテイブ
アサインのチヤンネルとして設定された場合)ま
たは“0”(オルタネーテイブアサインのチヤン
ネルとして設定されなかつた場合)である。 TPBUF(1)〜TPBUF(8)は、トーンパラメータ
バツフアであり、各チヤンネルに対して設定され
た音色ナンバTCN(1)〜TCN(8)に対応するトーン
パラメータを具体的に記憶しているものである。
括弧内の数字はチヤンネル番号を示す。例えば、
TPBUF(1)はチヤンネル1に設定された音色ナン
バTCN(1)に対応する具体的なトーンパラメータ
を示しており、具体的にはデータROM19内の
トーンパラメータTPMEM(1)〜TPMEM(64)の
1つを読み出したもの又はそれをトーンパラメー
タエデイツト用操作子群23によつて適宜修正・
変更したものである。 PMEM(0)〜PMEM(9)は、プリセツトメモ
リである。括弧内の数字はプリセツト番号であ
り、10組のプリセツトデータを記憶するようにな
つている。 「アサインテーブル」は、オルタネーテイブア
サインによる順序だつた発音割当て処理及びグル
ープ毎の発音割当て処理に必要な各種のデータを
記憶するものであり、これらのデータは、グルー
プ数データGN、オルタネーテイブアサインフラ
グALFLG(1)〜ALFLG(8)、グループ内チヤンネ
ル番号データGCH(1)〜GCH(8)、オルタネーテイ
ブアサインチヤンネル数データALGN(1)〜
ALGN(8)、オルタネーテイブアサイン割当て順
位別チヤンネル番号データACH(1,1)〜
ACH(8,8)からなつている。 グループ数データGNは、グループ設定処理に
よつて設定されたグループ数を示す。 オルタネーテイブアサインフラグALFLG(1)〜
ALFLG(8)は、設定された各グループ毎にオルタ
ネーテイブアサインを行うか否かを示すフラグで
ある。括弧内の数字はグループ番号である。例々
えば、ALFLG(1)はグループ1のオルタネーテイ
ブアサインフラグであり、その内容は、具体的に
は、このグループでオルタネーテイブアサインを
行う場合“1”、行わない場合“0”である。 グループ内チヤンネル番号データGCH(1)〜
GCH(8)は、各グループに所属するチヤンネルの
番号を示すものである。括弧内の数字はグループ
番号である。例えば、GCH(1)はグループ1のグ
ループ内チヤンネル番号データであり、仮りにこ
のグループに所属するチヤンネルがCH1,CH
2,CH3であるとすると、その内容は具体的に
は「1」、「2」、「3」という3つのチヤンネル番
号からなる。また、このグループに所属するチヤ
ンネルがCH4だけであるとすると、その内容は
具体的には「4」という1つのチヤンネル番号か
らなる。 オルタネーテイブアサインチヤンネル数データ
ALGN(1)〜ALGN(8)は、オルタネーテイブアサ
インを行うグループ内において順番に割当てられ
るべきチヤンネルの数を示す。括弧内の数字はグ
ループ番号である。例えば、ALGN(1)はグルー
プ1のオルタネーテイブアサインチヤンネル数デ
ータであり、仮りにこのグループがオルタネーテ
イブアサインを行うグループであつてチヤンネル
CH3,CH4,CH5,CH6の4つのチヤンネ
ルに対して順番に割当てが為されるべきであると
すると、その内容は具体的には「4」である。ま
た、この場合、CH3→CH4とCH5のどちらか
→CH6のように、順番に割当てが為されるべき
であるとすると、オルタネーテイブアサインチヤ
ンネル数データの内容は「3」となる。 オルタネーテイブアサイン割当て順位別チヤン
ネル番号データACH(1,1)〜ACH(8,8)
は、オルタネーテイブアサインを行うグループ内
における各割当て順位に該当するチヤンネルの番
号を示す。括弧内の先頭の数字はグループ番号で
あり、後の数字は割当て順位を示す。例えば、
ACH(1,1)はグループ1における割当て順位
1のチヤンネル番号データであり、仮りにこれが
チヤンネルCH3であるとすると、その内容は具
体的には「3」である。また、同じ割当て順位に
CH4とCH5のように複数のチヤンネルがある
場合は夫々のチヤンネル番号「4」、「5」を示
す。ここで割当て順位とは、例えばオルタネーテ
イブアサインにおいてチヤンネルCH3,CH4,
CH5、の3つのチヤンネルに対して順番に割当
てを行うとすると、CH3が順位1、CH4が順
位2、CH5が順位3、である。 CGNは、カレントグループナンバであり、発
音割当て処理を現在行つているグループの番号を
示す。 CALGN(1)〜CALGN(8)は、各グループ毎のオ
ルタネーテイブアサインカレントオーダであり、
オルタネーテイブアサインによる順次割当て処理
において現在割当て処理を行つている順位を示し
ている。括弧内の数字はグループ番号である。例
えば、CALGN(1)はグループ1のオルタネーテイ
ブアサインカレントオーダーであり、仮りに割当
て順位3のチヤンネルに対して現在割当て処理を
行つているとすると、その内容は「3」である。 上述のようなデータあるいは信号を記憶するた
めの領域が、データ及びワーキングRAM13内
に設けられている。また、データ及びワーキング
RAM13内には、楽音形成回路18の楽音形成
チヤンネルに割当てた楽音のキーデータ(キーコ
ードやキーオン信号などであり、これは発音割当
て処理に基づき得られる)を記憶するための領域
や、操作パネル部20におけるスイツチ等の操作
検出データやLED等のオン・オフデータを記憶
するための領域、その他のワーキング領域が設け
られている。 なお、トーンパラメータやプリセツトデータの
記憶を豊富にするために、外部RAMやフロツピ
ーデイスクユニツトなどからなる外部記憶装置2
4(第2図)を付設してもよい。 第5図を参照してメインルーチンにつき説明す
ると、まず、キーイベント処理では、鍵盤装置1
4あるいは自動演奏装置15から与えられるキー
データに応じてキーオンイベント処理あるいはキ
ーオフイベント処理を行う。つまり新たに発生す
べき楽音のキーコードがキーオンイベント信号と
共に与えれると、キーオンイベント処理を行つ
て、このキーコードを楽音形成チヤンネルに割当
てる。また、離鍵された鍵のキーコードがキーオ
フイベント信号と共に与えられると、キーオフイ
ベント処理を行つて、このキーコードが割当てら
れているチヤンネルを離鍵状態に設定する。キー
オンイベント処理の一例を示すフローチヤートは
第11図に示されている。 チヤンネルコントロール操作子スキヤン処理で
は、操作パネル部20のチヤンネルコントロール
操作子(つまり音色設定モードスイツチ
TCSET、グループスイツチGRP、オルタネーテ
イブアサインスイツチALT、プリセツトモード
スイツチPSR、プリセツトライトスイツチPSW、
テンキー22、カーソルキーCSRK)のオン・オ
フ状態を検出走査し、この検出走査に基づきスイ
ツチオンイベントが検出されると所定のスイツチ
オンイベント処理を行う。ここで行われる各種の
スイツチオンイベント処理の一例が第6図乃至第
10図に示されている。 トーンパラメータエデイツト用操作子群スキヤ
ン処理では、操作パネル部20のトーンパラメー
タエデイツト用操作子群23の操作状態を検出走
査し、この検出走査に基づき各チヤンネルに対応
するトーンパラメータバツフアTPBUF(1)〜
TPBUF(8)の内容を変更・修正する処理を行う。 音色設定モードスイツチTCSETがオンされる
と、第6図のTCSETオンイベント処理が行われ
る。ここでは、音色設定モードフラグTSFLGを
“1”にセツトし、プリセツトモードフラグ
PSFLGを“0”にリセツトする。そして、音色
設定モードスイツチTCSETに対応するLEDを点
灯してプリセツトモードスイツチPSRに対応す
るLEDを消灯し、音色設定モードとする。 プリセツトモードスイツチPSRがオンされる
と、第7図のPSRオンイベント処理が行われる。
ここでは、プリセツトモードフラグPSELGを
“1”にセツトし、音色設定モードフラグ
TSFLGを“0”にリセツトする。そして、プリ
セツトモードスイツチPSRに対応するLEDを点
灯して音色設定モードスイツチTCSETに対応す
るLEDを消灯し、プリセツトモードとする。 テンキー22の何れかのキースイツチがオンさ
れると、第8図のテンキーオンイベント処理が行
われる。まず、ステツプ25では、オンされたテ
ンキーの数値データをテンキー入力データ
TENKYとして取り込む。次のステツプ26で
は、音色設定モードフラグTSFLGが“1”であ
るかを調べる。 ステツプ26がYESの場合つまり音色設定モ
ードの場合について説明すると、ステツプ27で
はデイスプレイ21上のカーソルCSRが音色ナ
ンバ設定位置(つまり各チヤンネルに対応する位
置)にあるかを調べる。YESならば、今回のテ
ンキー操作は音色ナンバの設定のためになされた
ことを意味し、ステツプ28に進む。ステツプ2
8では、現在のカーソルCSRの位置に対応する
チヤンネル番号をカーソルチヤンネルナンバ
CHNOとして取り込む。次のステツプ29では、
デイスプレイ21上のカーソルCSRの位置に対
応する音色ナンバの表示をテンキー入力データ
TENKYの数値に書き換える。次のステツプ3
0では、カーソルチヤンネルナンバCHNOによ
つて指示されたチヤンネルの音色ナンバ(これは
TCN(1)〜TCN(8)のうち1つであり、これを
TCN(CHNO)で示す)をこのチヤンネルに対
応してデイスプレイ21上で現在表示されている
音色ナンバに書き換える。次のステツプ31で
は、上述のように該当チヤンネルに対して今回設
定された音色ナンバTCN(CHNO)に対応する
トーンパラメータをデータROM19に予め記憶
されているトーンパラメータTPMEM(1)〜
TPMEM(64)の中から取り出し(取り出したト
ーンパラメータをTPMEM{TCN(CHNO)}で
示す)、これをカーソルチヤンネルナンバCHNO
によつて指示されたチヤンネルのトーンパラメー
タバツフア(TPBUF(1)〜TPBUF(8)のうち1つ
であり、これをTPBUF(CHNO)で示す)に記
憶し、かつ、カーソルチヤンネルナンバCHNO
によつて指示された楽音形成回路18(これをフ
ローチヤートではTGと略称する)内の楽音形成
チヤンネル(これをCH(CHNO)で示す)に送
出する。送出されたトーンパラメータを受け取つ
た楽音形成チヤンネルCH(CHNO)では、これ
を適宜記憶し、このトーンパラメータに従つて各
種楽音要素の制御を行う。 ステツプ26がONの場合つまりプリセツトモ
ードの場合について説明すると、ステツプ32で
プリセツトモードフラグPSFLGが“1”である
ことを確認し、ステツプ33に行く。フラグ
PSFLGが“0”ならばリターンに行く。プリセ
ツトモードでは、テンキー22は0から9までの
プリセツト番号を選択するために使用される。 ステツプ33では、プリセツトライトスイツチ
PSWがオンされているかを調べる。オンならば
ステツプ34に行き、プリセツト34に行き、プ
リセツトデータの書込みを行う。ステツプ34で
は、各チヤンネルに対して設定された音色ナンバ
TCN(1)〜TCN(8)、各チヤンネルのグループ設定
データGRP(1)〜GRP(8)、及び各チヤンネルのオ
ルタネーテイブアサイン設定データALT(1)〜
ALT(8)からなる1セツトのプリセツトデータを、
テンキー入力データTENKYの数値に対応する
プリセツト番号に対応するプリセツトメモリ
(PMEM(0)〜PMEM(9)のいずれか1つであ
り、これをPMEM(TENKY)で示す)に書き込
む。 プリセツトライトスイツチPSWがオフされて
いれば、ステツプ35に行き、プリセツトデータ
の読出しを行う。ステツプ35では、テンキー入
力データTENKYの数値に対応するプリセツト
番号に対応するプリセツトメモリPMEM
(TENKY)から1セツトのプリセツトデータを
読み出し、これを各チヤンネルの音色ナンバ
TCN(1)〜TCN(8)、各チヤンネルのグループ設定
データGRP(1)〜GRP(8)、及び各チヤンネルのオ
ルタネーテイブアサイン設定データALT(1)〜
ALT(8)としてレジスタに取り込む。次のステツ
プ36では、今取り込んだ各チヤンネルの音色ナ
ンバTCN(1)〜TCN(8)に基づき、その音色ナンバ
に対応するトーンパラメータをデータROM19
に予め記憶されているトーンパラメータ
TPMEM(1)〜TPMEM(64)の中から夫々取り出
し、これを各チヤンネルのトーンパラメータバツ
フアTPBUF(1)〜TPBUF(8)に記憶し、かつ、楽
音形成回路18の各楽音形成チヤンネルCH1〜
CH8に送出する。送出されたトーンパラメータ
を受け取つた各楽音形成チヤンネルでは、これを
適宜記憶し、このトーンパラメータに従つて各種
楽音要素の制御を行う。次のステツプ37では、
今取り込んだ各チヤンネルのグループ設定データ
GRP(1)〜GPR(8)及びオルタネーテイブアサイン
設定データALT(1)〜ALT(8)に基づき前述の「ア
サインテーブル」を作成する。この「アサインテ
ーブル」を作成するためのサブルーチンは第12
図に示されている。第12図については後述す
る。 グループスイツチGRPがオンされると、第9
図のGRPオンイベント処理が行われる。ここで
は、まず、ステツプ38で音色設定モードフラグ
TSFLGが“1”であるかを調べる。YESつまり
音色設定モードならば次のステツプ39に進む
が、NOならばリターンに行く、ステツプ39で
はデイスプレイ21上のカーソルCSRがグルー
プ設定位置(つまりグループ化表示「←」を表示
する位置すなわち各チヤンネル番号に対応する位
置)にあるかを調べる。YESならば次のステツ
プ40に進むが、NOならばリターンに行く。ス
テツプ40では、現在のカーソルCSRの位置に
対応するチヤンネル番号をカーソルチヤンネルナ
ンバCHNOとして取り込む。次のステツプ41
では、今取り込んだCHNOがチヤンネル1であ
るかを調べる。このGRPオンイベント処理で設
定するグループ化表示「←」は、このグループ化
表示「←」が表示されたチヤンネルの音色ナンバ
がデイスプレイ21における左隣のチヤンネルの
音色ナンバと同じでなることを示す表示である。
しかるに、チヤンネル1には左隣のチヤンネルが
無いため、グループ化表示「←」は意味を持たな
い。従つて、チヤンネル1に関してはグループ化
表示「←」を行わないようにするために、ステツ
プ41がYESであればリターンに行き、NOなら
ば次のステツプ42に行く。 ステツプ42では、カーソルチヤンネルナンバ
CHNOによつて指示されたチヤンネルのグルー
プ設定データ(これはGPR(1)〜GRP(8)のうち1
つであり、これをGRP(CHNO)で示す)を
“1”にセツトする。次のステツプ43では、デ
イスプレイ21上のカーソルCSRの位置に対応
する音色ナンバの表示をグループ化表示「←」に
書き換える。次にステツプ44を経てステツプ4
5に行く。ステツプ45では、カーソルチヤンネ
ルナンバCHNOによつて指示されたチヤンネル
の音色ナンバTCN(CHNO)を、このCHNOか
ら1減算したCHNO−1によつて指示されたチ
ヤンネル(つまりデイスプレイ21上で今表示し
たグループ化表示「←」の左隣のチヤンネル)の
音色ナンバTCN(CHNO−1)と同じ値にする。
次のステツプ46では、今回の処理によりグルー
プ化表示「←」を設定したチヤンネルのトーンパ
ラメータバツフアTPBUF(CHNO)の内容を、
デイスプレイ21上でその左隣のチヤンネルのト
ーンパラメータバツフアTPBUF(CHNO−1)
の内容と同じものにする。そして、このトーンパ
ラメータバツフアTPBUF(CHNO)のトーンパ
ラメータを、カーソルチヤンネルナンバCHNO
によつて指示された楽音形成回路18内の楽音形
成チヤンネルCH(CHNO)に送出する。次のス
テツプ47では、第12図のサブルーチンに従つ
て「アサインテーブル」を作成する。 ステツプ44では、カーソルチヤンネルナンバ
CHNOの値に1を加算した値CHNO+1を求め、
この値CHNO+1によつて指示されたチヤンネ
ルのグループ設定データGRP(CHNO+1)が
“1”であるかを調べる。つまり、今回の処理に
よるグループ化指示「←」を設定したチヤンネル
のデイスプレイ21上で右隣のチヤンネルがグル
ープ化表示「←」となつているかを調べる。NO
ならばステツプ45に行し、上述の通りの処理を
行う。YESならばステツプ48の処理を行つて
からステツプ45に行く。ステツプ48では、デ
イスプレイ21上のチヤンネル番号CHNO+1
の音色ナンバ表示位置における表示を、グループ
化表示「←」に代えて、番号CHNO+1のチヤ
ンネルの音色ナンバTCN(CHNO+1)の数値
に変更する。これは、その左隣のチヤンネル(つ
まりCHNO)の音色ナンバ表示がグループ化表
示「←」に変更されることにより、CHNO+1
のチヤンネルの音色ナンバがそれとは不一致にな
るためであり、そのため、CHNO+1の表示を
グループ化表示「←」に代えて本来の音色ナンバ
を示す数値に変更するのである。 オルタネーテイブアサインスイツチALTがオ
ンされると、第10図のALTオンイベント処理
が行われる。ここでは、まず、ステツプ49で音
色設定モードフラグTSFLGが“1”であるかを
調べる。YESつまり音色設定モードならば次の
ステツプ50に進むが、NOならばリターンに行
く。ステツプ50ではデイスプレイ21上のカー
ソルCSRがオルタネーテイブアサイン設定位置
(つまりオルタネーテイブアサイン表示「+」を
表示する位置すなわち各チヤンネル番号に対応す
る音色ナンバ表示の中間の位置)にあるかを調べ
る。YESならば次のステツプ51に進むが、NO
ならばリターンに行く。ステツプ51では、現在
のカーソルCSRの位置に対応するチヤンネル番
号をカーソルチヤンネルナンバCHNOとして取
り込む。なお、この場合のチヤンネル番号はカー
ソルCSRの右隣のチヤンネル番号であるとする。
例えば、チヤンネルCH1とCH2の中間位置に
カーソルCSRがある場合、カーソル位置のチヤ
ンネル番号は「2」である。 ステツプ52では、カーソルチヤンネルナンバ
CHNOによつて指示されたチヤンネルのオルタ
ネーテイブアサイン設定データ(これはALT(1)
〜ALT(8)のうち1つであり、これをALT
(CHNO)で示す)を“1”又は“0”に反転す
る。つまり、オルタネーテイブアサインスイツチ
ALTをオンする毎にオルタネーテイブアサイン
設定データが反転する。次のステツプ53では、
カーソルチヤンネルナンバCHNOによつて指示
されたチヤンネルのオルタネーテイブアサイン設
定データALT(CHNO)が“1”であるかを調
べ、“1”ならばステツプ54に進んでデイスプ
レイ21上のカーソルCSRの位置に対応してオ
ルタネーテイブアサイン表示「+」を表示し、
“0”ならばステツプ55に進んでデイスプレイ
21上のカーソルCSRの位置におけるオルタネ
ーテイブアサイン表示「+」を消去する。次のス
テツプ56では、第12図のサブルーチンに従つ
て「アサインテーブル」を作成する。 グループスイツチGRPあるいはオルタネーテ
イブアサインスイツチALTのオン操作に応じて
上述のような手順で処理が行われることにより、
各チヤンネルのグループ設定データGRP(1)〜
GRP(8)及びオルタネーテイブアサイン設定デー
タALT(1)〜ALT(8)の状態が確立される。そし
て、確立されたこれらのデータGRP(1)〜GRP(8),
ALT(1)〜ALT(8)の状態に従つて、順序だつた発
音割当て処理(つまりオルタネーテイブアサイン
処理)及びグループ毎の発音割当て処理が行われ
る。この発音割当て処理のために、これらの設定
データGRP(1)〜GRP(8),ALT(1)〜ALT(8)にも
とづき第12図のサブルーチンに従つて「アサイ
ンテーブル」が作成される。そして、作成された
「アサインテーブル」を利用して第11図のキー
オンイベント処理に従つて発音割当て処理が行わ
れる。 第12図のアサインテーブル作成サブルーチン
について説明すると、まず、ステツプ57ではグ
ループ数データGNが求められる。この実施例に
おいて、グループ分けの仕方は、次の2つの基準
に依つている。 1つは、グループ化表示「←」によつて同一
の音色ナンバが設定された複数のチヤンネルを
同一グループとすること、 もう1つは、オルタネーテイブアサイン表示
「+」によつて割当て順序が設定された複数の
チヤンネルを同一グループとすること、であ
る。 したがつて、ステツプ57では、一例として、
グループ設定データGRP(1)〜GRP(8)及びオルタ
ネーテイブアサイン設定データALT(1)〜ALT(8)
の内容が共に“0”であるチヤンネルの数を数え
ることによりグループ数データGNを求めるよう
にしている。つまりグループ設定データGRP(1)
〜GRP(8)及びオルタネーテイブアサイン設定デ
ータALT(1)〜ALT(8)の内容が共に“0”である
チヤンネルが、各グループの先頭のチヤンネルで
あるため、このチヤンネルの数を数えることによ
りグループ数が判る。 次のステツプ58では、オルタネーテイブアサ
インフラグALFLG(1)〜ALFLG(8)を各グループ
毎に求める。ここでは、上述のように判定するこ
とができる各グループ毎に該グループに所属する
チヤンネルのオルタネーテイブアサイン設定デー
タALT(1)〜ALT(8)の中に“1”があるかを調べ
ることにより、該フラグを決定することができ
る。オルタネーテイブアサインを行うべきグルー
プではこのフラグが“1”となる。 次のステツプ59では、グループ内チヤンネル
番号データGCH(1)〜GCH(8)を各グループ毎に求
める。ここでは、上述のように判定することがで
きる各グループ毎に該グループに所属するチヤン
ネルの番号をリストアツプすることにより該デー
タを決定することができる。 次のステツプ60では、オルタネーテイブアサ
インチヤンネル数データALGN(1)〜ALGN(8)を
各グループ毎に求める。ここでは、上述のように
判定することができる各グループ毎に該グループ
に所属するチヤンネルの数を数えることより該デ
ータを決定することができる。 次のステツプ61では、オルタネーテイブアサ
イン割当て順位別チヤンネル番号データACH
(1,1)〜ACH(8,8)を各グループ毎の各
割当て順位毎に求める。ここでは、上述のように
判定することができる各グループのうちオルタネ
ーテイブアサインフラグALFLG(1)〜ALFLG(8)
が“1”のグループについて、グループ設定デー
タGRP(1)〜GRP(8)が“0”のチヤンネルを順位
付け、そのチヤンネル番号を記憶する。グループ
設定データGRP(1)〜GRP(8)が“1”のチヤンネ
ルはその直前のチヤンネルと同じ順位とされる。
つまり、グループスイツチGRPによつてグルー
プ化設定された複数のチヤンネルはオルタネーテ
イブアサインにおいては同順位とされる。 第11図のキーオンイベント処理について説明
すると、まず、ステツプ62では、キーオンイベ
ントに係るキーコード(つまり新たに発音割当て
すべきキーコード)をニユーキーコードNKCと
して取り込む。次のステツプ63では、カレント
グループナンバCGNを初期値「1」にセツトす
る。次のステツプ64では、カレントグループナ
ンバCGNによつて指定されたグループのオルタ
ネーテイブアサインフラグ(これはALFLG(1)〜
ALFLG(8)のうち1つであり、これをALFLG
(CGN)で示す)が“1”であるかを調べる。
“1”であればステツプ69に分岐してオルタネ
ーテイブアサイン処理を行い、“1”でなければ
ステツプ65に分岐して通常の発音割当て処理を
行う。 ステツプ65では、カレントグループナンバ
CGNによつて指定されたグループのグループ内
チヤンネル番号データ(これはGCH(1)〜GCH(8)
のうち1つであり、これをGCH(CGN)で示す)
によつて特定された該グループ内のチヤンネルを
対象として通常の発音割当て処理を行う。通常の
発音割当て処理とは、例えばトランケート処理に
よつて空きチヤンネルを作り、その空きチヤンネ
ルに新たなキーコードを割当てるような通常知ら
れた発音割当て処理がある。なお、グループ内の
チヤンネルが1チヤンネルのみからなる場合は、
前音が押鍵中であつてもその割当てを解消し、新
たなキーコードを割当てる、といういわゆる後着
優先処理を行い、新たに発生すべき音の発音がす
ぐに立上がるようにするものとする。 次のステツプ66では、上述のようにして新た
な割当てを行つたチヤンネルに対応して楽音形成
回路18にニユーキーコードNKCとキーオン信
号KONを送出する。楽音形成回路18内の当該
チヤンネルでは、与えられたニユーキーコード
NKCとキーオン信号KONを適宜記憶し、これに
基づき該キーコードに対応する音高の楽音信号を
形成する。その場合、形成される楽音信号の各種
楽音要素は前述のように供給されたトーンパラメ
ータによつて制御される。また、この場合、楽音
形成回路18内の当該チヤンネルに割当てられて
いる前音が発音中であれば、ダンプ制御により前
音の発音を急速減衰させるものとする。 次のステツプ67では、カレントグループナン
バCGNの値を1増加して、発音割当てすべきグ
ループを切り換える。次のグループ68では、1
増加したカレントグループナンバCGNの値がタ
イミング数データGNの値より大であるかを調べ
る。YESであれば全グループの割当てを終了し
ているのでリターンに行くが、NOならばまだ発
音割当てすべきグループが残つているのでステツ
プ64に戻り、前述と同様の発音割当て処理を繰
り返す。 オルタネーテイブアサイン処理を行う場合、前
述のようにステツプ64からステツプ69に分岐
する。ステツプ69では、カレントグループナン
バCGNによつて指定されたグループのオルタネ
ーテイブアサインカレントオーダー(これは
CALGN(1)〜CALGN(8)のうち1つであり、これ
をCALGN(CGN)で示す)の値(つまり今回割
当て処理を行うべきオルタネーテイブアサインに
よる割当て順位を示す値)を1増加する。なお、
各グループのオルタネーテイブアサインカレント
オーダーCALGN(1)〜〜CALGN(8)は電源投入時
及びプリセツトデータ読み出し時に「0」に初期
設定されるものとする。従つて、オルタネーテイ
ブアサインを始めるとき、このステツプ69の処
理によりオルタネーテイブアサインカレントオー
ダーCALGN(CGN)の値が「1」(つまり最初
の割当て順位)になる。 次のステツプ70では、オルタネーテイブアサ
インカレントオーダーCALGN(CGN)の値が、
カレントグループナンバCGNによつて指定され
た同じグループのオルタネーテイブアサインチヤ
ンネル数データ(これはALGN(1)〜ALGN(8)の
うち1つであり、これをALGN(CGN)で示す)
の値よりも大であるかを調べる。YESであれば、
オルタネーテイブアサインカレントオーダー
CALGN(CGN)によつて指示された割当て順位
が、そのグループ内のオルタネーテイブアサイン
の対象となるチヤンネル数よりも大、つまり実際
には存在しない順位であることを意味するので、
ステツプ71においてこのCALGN(CGN)の値
を最初の割当て順位の値「1」に戻す。NOであ
れば、ステツプ71をジヤンプしてステツプ72
に行く。 ステツプ72では、「アサインテーブル」のオ
ルタネーテイブアサイン割当て順位別チヤンネル
番号データACH(1,1)〜ACH(8,8)のう
ち、カレントグループナンバCGN及びオルタネ
ーテイブアサインカレントオーダーCALGN
(CGN)に対応するもの(これをACH(CGN,
CALGN)で示す)を参照して、当該割当て順位
に該当するチヤンネルが複数か否かを調べる。例
えば、第3図dのチヤンネル5,6,7,8や第
3図eのチヤンネル4,5の各割当て順位ではチ
ヤンネル数が夫々1であるため、ステツプ72で
はNOと判定される。一方、第3図eのチヤンネ
ル6,7,8は同じ割当て順位であり、また、第
3図fのチヤンネル3,4,5も同じ割当て順位
であり、第3図fのチヤンネル6,7,8も同じ
割当て順位であるため、これれらの各割当て順位
ではチヤンネル数が夫々複数であることから、ス
テツプ72ではYESと判定される。 ステツプ72でNOと判定されと、ステツプ7
3に行き、上述のオルタネーテイブアサイン割当
て順位別チヤンネル番号データACH(CGN,
CALGN)によつて特定される1つのチヤンネル
をニユーキーコードNKCを割当てるべきチヤン
ネルとする。 一方、ステツプ72でYESと判定されると、
ステツプ74に行き、上述のオルタネーテイブア
サイン割当て順位別チヤンネル番号データACH
(CGN,CALGN)によつて特定される複数のチ
ヤンネルを対象として通常の割当て処理を行い、
これによつてニユーキーコードNKCを割当てる
べき1つのチヤンネルを決定する。 ステツプ73,74によりニユーキーコード
NKCを割当てるべき1つのチヤンネルを決定し
た後は、前述のステツプ66に行き、以下同様の
処理を行う。 上述から明らかなように、1つのニユーキーコ
ードNKCに対して各グループ毎に夫々割当て処
理が行われ、該ニユーキーコードNKCに対応す
る楽音の発音が各グループ毎に夫々割当てられ
る。従つて、同じキーコードに対応する楽音がグ
ループ数に対応する多系列で発生される。また、
オルタネーテイブアサインを行うグループではス
テツプ69の処理により、ニユーキーコード
NKCが与えられる毎に(つまり楽音を発生すべ
きタイミング毎に)割当て順位が順次切り換わ
る。また、この場合、最終順位の割当てを終了す
ると、ステツプ71の処理により最初の順位に戻
されるようになつており、割当て順位が順番に繰
り返して切り換わる。 なお、キーオフイベント処理の詳細は特に図示
しないが、このキーオフイベント処理では、キー
オフイベントに係るキーコードをニユーキーコー
ドNKCとして取り込み、このニユーキーコード
NKCが割当てられているチヤンネルを検出し、
検出したチヤンネルに対応して楽音形成回路18
にキーオフ信号を送出するようにすればよい。 デイスプレイ21に表れた各チヤンネルに対し
て設定されたトーンパラメータの音色ナンバと、
オルタネーテイブアサイン表示「+」及びグルー
プ化表示「←」が、第3図a〜fの各例のようで
あるとすると、これに対応するRAM13内の各
チヤンネルの音色ナンバTCN(1)〜TCN(8)、グル
ープ設定データGRP(1)〜GRP(8)及びオルタネー
テイブアサイン設定データALT(1)〜ALT(8)の状
態は下記第1a表乃至第1f表のようである。換言す
れば、これらのデータを下記第1a表乃至第1f表の
ように設定することにより第3図a〜fの各例に
示すようなデイスプレイ表示が得られるのであ
る。更に、下記第1a表乃至第1f表のように設定さ
れたデータGRP(1)〜GRP(8),ALT(1)〜ALT(8)
にもとづき作成される「アサインテーブル」の内
容は下記第2a表乃至第2f表のようである。
[Industrial Application Field] The present invention relates to a musical tone signal generating device used in electronic musical instruments and other musical tone generating devices, and in particular,
The present invention relates to a musical tone signal generating device in which musical tone elements such as timbre change sequentially at each musical tone generation timing. [Prior Art] Japanese Patent Publication No. 60-4476 discloses that musical tone elements such as the pitch, timbre, volume envelope, etc. of a generated musical tone are randomly changed at each generation timing of a musical tone. In this system, musical tone elements such as pitch, timbre, and volume envelope of generated musical tones are independently controlled in multiple musical tone formation channels, and the pronunciation of the pressed key is assigned according to normal pronunciation assignment logic (i.e., If there is a free channel, it is assigned to an appropriate free channel, and if there is no free channel, it is assigned to the channel that was released the earliest or the channel that has decayed the most according to the truncation process. The relationship between the tone generation order) and the assigned channel is completely random, and as a result, musical tone elements such as the pitch, timbre, volume envelope, etc. of the generated musical tones change randomly at each musical tone generation timing. [Problems to be Solved by the Invention] In the conventional devices as described above, the pitch, timbre, volume envelope, etc. of the generated musical tones can only be changed randomly, and therefore only random performance effects can be obtained. Can not. This invention was made in view of the above points,
Musical sound elements such as the pitch, timbre, volume envelope, etc. of the generated musical sound are sequentially changed at each musical sound generation timing, thereby realizing a pleasant performance effect due to sequential changes, and It is an object of the present invention to provide a musical tone signal generating device in which the order can be arbitrarily set. [Means for Solving the Problems] A musical tone signal generation device according to the present invention includes a plurality of musical tone forming channels each forming a musical tone signal of a pitch corresponding to assigned pitch information, and a plurality of musical tone forming channels. An allocation order setting means for setting an allocation order for any plurality of channels among them, and an instruction for switching channels to be allocated according to the order set by the allocation order setting means at each timing at which musical tones are to be generated. and supplying means for allocating pitch information of musical tones to be generated to the designated channels, and musical tone element control signals for controlling musical tone elements of musical tone signals formed therein to each of the musical tone forming channels. and musical tone element control means for supplying mutually different musical tone element control signals with respect to at least a plurality of channels whose allocation order is set by the allocation order setting means. The outline of this invention is shown in FIG. 1 using a functional block diagram, in which 1 is a musical tone forming means including a plurality of musical tone forming channels CH1 to CHn, 2 is an allocation order setting means, 3 is an allocating means, 4 is musical tone element control means. [Operation] The assignment order setting means 2 sets the assignment order for any plurality of tone forming channels CH1 to CHn. The allocation means 3 switches and instructs channels to be allocated in accordance with the order set by the allocation order setting means 2 at each timing when musical tones are to be generated, and assigns musical tones to be generated for the designated channels. Assign pitch information. For example, channel
When the assignment order setting means 2 sets that the assignments should be made in the order of CH1, CH2, and CH3, the first tone is assigned to channel CH1, the second tone is assigned to channel CH2, and the third tone is assigned to channel CH2. The channel to be assigned to each timing when a musical tone should be generated is CH1, the fourth tone is assigned to CH3, the fourth tone is assigned to channel CH1, etc.
CH2 and CH3 are switched sequentially. The musical tone forming channels CH1 to CHn each form a musical tone signal having a pitch corresponding to the pitch information assigned to each channel. The musical tone elements of the musical tone signals formed in each musical tone forming channel are controlled by musical tone element control signals supplied from the musical tone element control means 4. The tone element control means 4 supplies different tone element control signals to at least the plurality of channels whose allocation order is set by the allocation order setting means 2. Here, musical tone elements refer to elements that determine the characteristics of a musical tone, such as timbre, pitch, and volume envelope. Therefore,
In the plurality of channels whose allocation order is set by the allocation order setting means 2, any one or more of musical tone elements such as timbre, pitch, volume envelope, etc. of the musical tone formed by each channel is different from each other. Pitch information of musical tones to be generated is sequentially allocated to these channels at each musical tone generation timing in accordance with a set allocation order. Therefore, musical tone elements such as the pitch, timbre, and volume envelope of the generated musical tones can be sequentially changed at each musical tone generation timing. [Embodiments] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. FIG. 2 shows a musical tone signal generating device 10 according to the present invention.
This figure shows the hardware configuration of one embodiment, and the musical tone signal generating device 10 of this embodiment includes a CPU (central processing unit) 11, a program ROM (read only memory) 12, and data and working components.
A microcomputer including a RAM (random access memory) 13 controls various operations and processes. Musical tone signal generating device 10 of this embodiment
consists of a modularized sound source module, to which an arbitrary keyboard device 14 and automatic performance device 15, each of which is also modularized, can be connected as appropriate, and a sound system 16 can also be connected. , it has become possible to construct an electronic musical instrument as a whole. The modular keyboard device 14 includes a keyboard with a plurality of keys and a circuit for detecting key presses and key releases on this keyboard, and detects a key-on event (new key press) or a key-off event (new key release). Each time a new key is pressed or released, the key code of the new key and a key-on event signal or key-off event signal are output. The modular automatic performance device 15 outputs key data such as a key code indicating the pitch of the automatic performance sound at the timing when the automatic performance sound is to be generated. The data output from the modular keyboard device 14 and automatic performance device 15 is expressed in the MIDI standard, which is a common standard for musical tone signal processing, and is transmitted via the data bus 17 in the musical tone signal generating device 10. It is taken into the above-mentioned microcomputer. The musical tone signal generating device 10 includes a musical tone forming circuit 18 including a plurality of musical tone forming channels (in this example, 8 channels CH1 to CH8), and includes a key code indicating the pitch of the musical tone to be generated. etc. from the keyboard device 14 or the automatic performance device 15, and allocates the pronunciation of musical tones corresponding to the received key codes to channels in the musical tone forming circuit 18 according to predetermined allocation standards, and performs this allocation. Accordingly, musical tone signals are generated in each musical tone forming channel CH1 to CH8.
The generated musical tone signal is provided to the sound system 16. For each tone forming channel CH1 to CH8, the assigned key code (that is, pitch information)
It is possible to form musical tone signals of respective pitches corresponding to the musical tone signals, and to appropriately control the musical tone elements (timbre, pitch, volume, etc.) of the musical tone signals formed therein according to the musical tone element control signal. It's summery. The musical tone element control signal is a general term for various parameters for musical tone formation or musical tone element control, such as tone setting parameters, pitch change setting parameters, volume envelope waveform setting parameters, and other control envelope waveform setting parameters. Here, we will simply refer to this as a "tone parameter." Therefore, the term "tone parameter" hereinafter does not refer only to tone setting parameters in a narrow sense, but collectively refers to various parameters for musical tone formation or musical tone element control as described above. The data ROM 19 stores in advance various data used for forming musical tones and various data used for processing, and particularly stores the above-mentioned "tone parameters" regarding 64 types of tones. Tone numbers 1 to 64 are assigned to these 64 types of tones, and 64 sets of tone parameters corresponding to each tone are stored in the data ROM 19.
TPMEM(1) to TPMEM(64) are read out according to the timbre number given to the address input. The operation panel unit 20 includes switches and operators for setting and selecting various data and operation modes, and a display 21. Tone setting mode switch TCSET is a switch for selecting a tone setting mode. Tone setting mode is the process of setting tone parameters individually for each channel, the process of setting the assignment order for arbitrary multiple channels,
This mode performs settings such as classifying each channel into multiple groups. The group switch GRP is operated to specify channels to be grouped when configuring settings to classify each channel into a plurality of groups. The alternative assign switch ALT is
When setting the allocation order for any plurality of channels, this operation is used to specify the channels to be allocated in order. In this embodiment, for a plurality of channels for which sequential allocation is specified, the order in which the channels are adjacent becomes the allocation order. Such sequential assignment processing is hereinafter referred to as alternative assignment. The display 21 displays the tone number of the tone parameter set for each channel,
A display showing the setting status of alternative assignment and a display showing the setting status of channel groups are performed. Some examples of display contents on the display 21 are shown in FIGS. 3a to 3f. The channel numbers from CH1 to CH8 are displayed in the upper row, and the tone number (1 to 64) of the tone parameter set for each channel is displayed below each channel number.
A predetermined alternative assignment display "+" is displayed between the tone number displays of channels to which alternate assignment is applied, and the tone number is displayed for channels to which the same tone number is assigned by the group setting process. A predetermined grouping display "←" is displayed instead. The alternative assignment display "+" is set based on the operation of the above-mentioned alternative assignment switch ALT. The grouping display "←" is set based on the operation of the group switch GRP described above. Note that this grouping display "←" is a display indicating that the tone color number of the channel on which this grouping display "←" is displayed is the same as the tone color number of the channel on the left on the display 21. A cursor CSR is displayed on the display 21, and this cursor CSR is moved to a position corresponding to each channel and an intermediate position between each channel (these cursors The position is shown in dotted lines in FIG. 3a). Preset mode switch PSR is a switch for selecting a preset mode. Preset mode means that the tone number set for each channel displayed on the display 21 and the data of the alternative assignment display and group display are stored in the memory circuit as one set of preset data (preset tone parameters). This is the mode for writing to or reading from the memory circuit. The preset light switch PSW is a switch operated when writing one set of data displayed on the display 21 into the memory circuit as preset data. Each of the tone setting mode switch TCSET and preset mode switch PSR is equipped with an LED (light emitting diode).
When TCSET (or PSR) is turned on, the corresponding LED turns on and the other LED turns off, so that it can be switched on and off exclusively. When the LED corresponding to the tone setting mode switch TCSET is lit,
This is the tone setting mode, and when the LED corresponding to the preset mode switch PSR is lit, it is the preset mode. The numeric keypad 22 consists of ten numerical input keys from 0 to 9, and is operated when inputting numerical data such as tone numbers. The operation panel section 20 is further provided with a tone parameter editing operator group 23 and various other tone setting/control switches and operators (for example, an operator for setting the overall volume). The tone parameter editing operator group 23 is for modifying/changing individual elements in the tone parameters (for example, pitch change settings, envelope parameter settings, etc.). Among the processes executed by the microcomputer in the musical tone signal generating device 10, examples of flowcharts of processes related to the present invention are shown in FIGS. 5 to 12. An example of data used in connection with this process and the contents stored in the working RAM 13 is shown in FIG. TSFLG is a tone setting mode flag, which is set to “1” when the tone setting mode switch TCSET is turned on, and the preset mode switch is
It is reset to "0" when PSR is turned on. PSFLG is the preset mode flag,
When the preset mode switch PSR is turned on, it is set to “1” and the tone setting mode switch
It is reset to "0" when TCSET is turned on. CHNO is the cursor channel number,
Indicates the channel number corresponding to the current position of the cursor CSR. TENKY is numeric keypad input data and indicates numerical data input by the numeric keypad 22. NKC is a new key code, which is a key code given from the keyboard device 14 or automatic performance device 15 and indicating a newly pressed key (pitch of a new musical tone to be generated). Furthermore, the key code of a newly released key is also treated as a new key code. TCN(1) to TCN(8) are tone numbers set for each channel. Numbers in parentheses indicate channel numbers. For example, TCN(1) is a timbre number set for channel 1, and specifically, it is any value from 1 to 64. GRP(1) to GRP(8) are group setting data indicating the group setting status of each channel. Numbers in parentheses indicate channel numbers. for example,
GRP(1) is group setting data for channel 1, specifically “1” (group switch
(if grouping is set by GRP) or "0" (if grouping is not set). ALT(1) to ALT(8) are alternative assign setting data indicating the alternative assign setting state of each channel. Numbers in parentheses indicate channel numbers. For example, ALT(1) is the alternative assign setting data for channel 1, specifically "1" (when set as an alternative assign channel by the alternative assign switch ALT) or It is "0" (if it is not set as an alternate assign channel). TPBUF(1) to TPBUF(8) are tone parameter buffers that specifically store tone parameters corresponding to tone numbers TCN(1) to TCN(8) set for each channel. It is something.
Numbers in parentheses indicate channel numbers. for example,
TPBUF(1) indicates a specific tone parameter corresponding to the tone number TCN(1) set for channel 1, and specifically, tone parameters TPMEM(1) to TPMEM(64) in the data ROM 19. Read one or modify it as appropriate using the tone parameter editing operator group 23.
This has been changed. PMEM(0) to PMEM(9) are preset memories. The numbers in parentheses are preset numbers, and 10 sets of preset data are stored. The "assignment table" stores various data necessary for sequential pronunciation assignment processing by alternative assignment and pronunciation assignment processing for each group, and these data include group number data GN, alternative Assignment flags ALFLG(1) to ALFLG(8), intra-group channel number data GCH(1) to GCH(8), alternate assignment channel number data ALGN(1) to
ALGN(8), channel number data by alternate assignment allocation order ACH(1,1)~
It consists of ACH (8,8). Group number data GN indicates the number of groups set by the group setting process. Alternative assignment flag ALFLG(1)~
ALFLG(8) is a flag indicating whether or not to perform alternative assignment for each set group. The numbers in parentheses are group numbers. For example, ALFLG(1) is the alternative assignment flag for group 1, and its contents are "1" if alternate assignment is to be performed for this group, and "0" if not. be. Intra-group channel number data GCH(1)~
GCH(8) indicates the number of the channel belonging to each group. The numbers in parentheses are group numbers. For example, GCH(1) is the intra-group channel number data of group 1, and if the channels belonging to this group are CH1, CH
2, CH3, its contents specifically consist of three channel numbers "1", "2", and "3". Further, if the only channel belonging to this group is CH4, its contents specifically consist of one channel number "4". Alternative assignment channel number data
ALGN(1) to ALGN(8) indicate the number of channels to be sequentially assigned within the group to which alternative assignment is performed. The numbers in parentheses are group numbers. For example, ALGN(1) is the alternate assignment channel number data for group 1, and if this group is a group that performs alternate assignment and the channel
Assuming that four channels, CH3, CH4, CH5, and CH6, are to be allocated in order, the content is specifically "4". Furthermore, in this case, if assignment should be made in order such as CH3→CH4 or CH5→CH6, the content of the alternate assignment channel number data would be "3". Channel number data by alternate assignment allocation order ACH (1, 1) to ACH (8, 8)
indicates the number of the channel corresponding to each allocation order within the group to which alternative assignment is performed. The first number in parentheses is the group number, and the second number indicates the allocation order. for example,
ACH (1, 1) is channel number data with allocation order 1 in group 1, and if this is channel CH3, its content is specifically "3". Also, in the same allocation order
When there are multiple channels such as CH4 and CH5, the respective channel numbers "4" and "5" are shown. Here, the assignment order means, for example, channels CH3, CH4,
Assuming that the three channels CH5 are allocated in order, CH3 is ranked 1st, CH4 is ranked 2nd, and CH5 is ranked 3rd. CGN is the current group number, and indicates the number of the group for which pronunciation assignment processing is currently being performed. CALGN(1) to CALGN(8) are the alternate assignment current orders for each group,
It shows the order in which allocation processing is currently being performed in sequential allocation processing using alternative assignment. The numbers in parentheses are group numbers. For example, CALGN(1) is the alternative assignment current order of group 1, and if it is assumed that assignment processing is currently being performed on a channel with assignment order 3, its content is "3". Areas are provided within the data and working RAM 13 for storing data or signals as described above. Also, data and working
The RAM 13 includes an area for storing key data (key codes, key-on signals, etc., obtained based on the sound generation assignment processing) of musical tones assigned to the musical tone forming channels of the musical tone forming circuit 18, and an operation panel. An area for storing operation detection data of switches, etc., on/off data of LEDs, etc. in the section 20, and other working areas are provided. In addition, in order to enrich the storage of tone parameters and preset data, an external storage device 2 consisting of external RAM, floppy disk unit, etc.
4 (Fig. 2) may be added. To explain the main routine with reference to FIG. 5, first, in key event processing, the keyboard device 1
4 or performs key-on event processing or key-off event processing in accordance with key data given from the automatic performance device 15. That is, when the key code of a new musical tone to be generated is given together with a key-on event signal, key-on event processing is performed and this key code is assigned to a musical tone forming channel. Further, when the key code of the released key is given together with the key-off event signal, key-off event processing is performed to set the channel to which this key code is assigned to the key-off state. A flowchart showing an example of key-on event processing is shown in FIG. In the channel control operator scanning process, the channel control operator (that is, the tone setting mode switch) on the operation panel section 20 is
TCSET, group switch GRP, alternative assignment switch ALT, preset mode switch PSR, preset light switch PSW,
The on/off state of the numeric keypad 22 and cursor key CSRK) is detected and scanned, and when a switch-on event is detected based on this detection scan, predetermined switch-on event processing is performed. Examples of the various switch-on event processes performed here are shown in FIGS. 6 to 10. In the tone parameter editing operator group scanning process, the operation status of the tone parameter editing operator group 23 of the operation panel section 20 is detected and scanned, and based on this detection scanning, the tone parameter buffer TPBUF( 1)~
Performs processing to change or modify the contents of TPBUF(8). When the tone color setting mode switch TCSET is turned on, the TCSET on event process shown in FIG. 6 is performed. Here, set the tone setting mode flag TSFLG to "1" and set the preset mode flag
Reset PSFLG to “0”. Then, the LED corresponding to the tone setting mode switch TCSET is turned on and the LED corresponding to the preset mode switch PSR is turned off to enter the tone setting mode. When the preset mode switch PSR is turned on, the PSR on event process shown in FIG. 7 is performed.
Here, we set the preset mode flag PSELG to "1" and set the tone setting mode flag.
Reset TSFLG to “0”. Then, the LED corresponding to the preset mode switch PSR is turned on, and the LED corresponding to the tone setting mode switch TCSET is turned off, thereby setting the preset mode. When any key switch of the numeric keypad 22 is turned on, the numeric key-on event process shown in FIG. 8 is performed. First, in step 25, the numerical data of the turned-on numeric keypad is converted into numeric keypad input data.
Import as TENKY. In the next step 26, it is checked whether the timbre setting mode flag TSFLG is "1". If step 26 is YES, that is, the tone color setting mode is explained, in step 27 it is checked whether the cursor CSR on the display 21 is at the tone color number setting position (that is, the position corresponding to each channel). If YES, it means that the current numeric key operation was performed to set a tone number, and the process advances to step 28. Step 2
8, set the channel number corresponding to the current cursor CSR position to the cursor channel number.
Import as CHNO. In the next step 29,
Display the tone number corresponding to the position of the cursor CSR on the display 21 using the numeric keypad input data.
Rewrite to TENKY numbers. Next step 3
0 is the tone number of the channel specified by the cursor channel number CHNO (this is
One of TCN(1) to TCN(8), which is
TCN (indicated by CHNO)) is rewritten to the tone number currently displayed on the display 21 corresponding to this channel. In the next step 31, as mentioned above, the tone parameters corresponding to the tone number TCN (CHNO) set this time for the corresponding channel are set as the tone parameters TPMEM(1) to TPMEM(1) stored in advance in the data ROM 19.
Take it out from TPMEM (64) (denote the taken tone parameter as TPMEM {TCN(CHNO)}) and set it as the cursor channel number CHNO.
Store the tone parameter buffer (one of TPBUF(1) to TPBUF(8), indicated by TPBUF(CHNO)) of the channel specified by cursor channel number CHNO
The signal is sent to the musical tone forming channel (indicated by CH (CHNO)) in the musical tone forming circuit 18 (abbreviated as TG in the flowchart) instructed by. The musical tone forming channel CH (CHNO) that receives the transmitted tone parameters stores them as appropriate and controls various musical tone elements according to these tone parameters. To explain the case where step 26 is ON, that is, the preset mode, it is confirmed in step 32 that the preset mode flag PSFLG is "1", and the process goes to step 33. flag
If PSFLG is “0”, go to return. In preset mode, numeric keypad 22 is used to select preset numbers from 0 to 9. In step 33, the preset light switch
Check if PSW is turned on. If it is on, go to step 34, go to preset 34, and write preset data. In step 34, the tone number set for each channel is
TCN(1) to TCN(8), group setting data for each channel GRP(1) to GRP(8), and alternate assignment setting data for each channel ALT(1) to
One set of preset data consisting of ALT(8),
The preset number corresponding to the numerical value of the numeric keypad input data TENKY is written into the preset memory (one of PMEM(0) to PMEM(9), indicated by PMEM(TENKY)). If the preset light switch PSW is turned off, the process goes to step 35 to read out the preset data. In step 35, the preset memory PMEM corresponding to the preset number corresponding to the numerical value of the numeric key input data TENKY is
Read one set of preset data from (TENKY) and assign it to each channel's tone number.
TCN(1) to TCN(8), group setting data for each channel GRP(1) to GRP(8), and alternate assignment setting data for each channel ALT(1) to
Load into register as ALT(8). In the next step 36, based on the tone numbers TCN(1) to TCN(8) of each channel that have just been imported, the tone parameters corresponding to the tone numbers are stored in the data ROM 19.
Tone parameters pre-stored in
Each of TPMEM(1) to TPMEM(64) is extracted and stored in tone parameter buffers TPBUF(1) to TPBUF(8) of each channel, and each tone forming channel CH1 to CH1 of the tone forming circuit 18 is
Send to CH8. Each musical tone forming channel that receives the transmitted tone parameters stores them as appropriate and controls various musical tone elements in accordance with the tone parameters. In the next step 37,
Group setting data for each channel that was just imported
The above-mentioned "assignment table" is created based on GRP(1) to GPR(8) and alternative assignment setting data ALT(1) to ALT(8). The subroutine for creating this "assignment table" is the 12th subroutine.
As shown in the figure. FIG. 12 will be described later. When the group switch GRP is turned on, the 9th
The GRP on event processing shown in the figure is performed. Here, first, in step 38, the tone setting mode flag is set.
Check whether TSFLG is “1”. If YES, that is, the tone setting mode, proceed to the next step 39, but if NO, proceed to return. In step 39, the cursor CSR on the display 21 moves to the group setting position (that is, the position where the grouping display "←" is displayed, that is, each channel). (position corresponding to the number). If YES, proceed to the next step 40, but if NO, proceed to return. In step 40, the channel number corresponding to the current cursor CSR position is taken in as the cursor channel number CHNO. Next step 41
Now, check whether the CHNO you just imported is channel 1. The grouping display "←" set in this GRP on-event processing is an indication that the tone number of the channel on which this grouping display "←" is displayed is the same as the tone number of the channel on the left on the display 21. It is.
However, since channel 1 does not have an adjacent channel on the left, the grouping display "←" has no meaning. Therefore, in order to avoid grouping display "←" for channel 1, if step 41 is YES, go to return, and if NO, go to next step 42. In step 42, the cursor channel number is
Group setting data for the channel specified by CHNO (this is one of GPR(1) to GRP(8))
, and this is indicated by GRP (CHNO)) is set to "1". In the next step 43, the display of the timbre number corresponding to the position of the cursor CSR on the display 21 is rewritten to a grouping display "←". Next, go through step 44 and proceed to step 4.
Go to 5. In step 45, the tone number TCN (CHNO) of the channel specified by the cursor channel number CHNO is subtracted by 1 from this CHNO, and the channel specified by CHNO-1 (that is, the group currently displayed on the display 21) is subtracted by 1 from this CHNO. Set the value to be the same as the tone number TCN (CHNO-1) of the channel to the left of the ``←'' display.
In the next step 46, the contents of the tone parameter buffer TPBUF (CHNO) of the channel for which the group display "←" has been set by this process are
Tone parameter buffer TPBUF (CHNO-1) of the channel to the left on display 21
Make it the same as the content of. Then, change the tone parameter of this tone parameter buffer TPBUF (CHNO) to the cursor channel number CHNO
The signal is sent to the musical tone forming channel CH (CHNO) in the musical tone forming circuit 18 instructed by. In the next step 47, an "assignment table" is created according to the subroutine shown in FIG. In step 44, the cursor channel number is
Find the value CHNO+1 by adding 1 to the value of CHNO,
It is checked whether the group setting data GRP (CHNO+1) of the channel indicated by this value CHNO+1 is "1". That is, on the display 21 of the channel for which the grouping instruction "←" has been set in the current process, it is checked whether the channel to the right has a grouping indication "←". NO.
If so, the process goes to step 45 and the process described above is performed. If YES, the process proceeds to step 48 and then to step 45. In step 48, the channel number CHNO+1 on the display 21 is
The display at the tone color number display position of is changed to the numerical value of the tone color number TCN (CHNO+1) of the channel with number CHNO+1, instead of the grouping display "←". This is because the tone number display of the channel to the left (that is, CHNO) is changed to the grouping display "←", so that CHNO+1
This is because the tone color number of the channel does not match with that channel. Therefore, the display of CHNO+1 is changed to a numerical value indicating the original tone color number instead of the grouping display "←". When the alternative assign switch ALT is turned on, the ALT on event process shown in FIG. 10 is performed. Here, first, in step 49, it is checked whether the timbre setting mode flag TSFLG is "1". If YES, that is, the tone setting mode, proceed to the next step 50, but if NO, proceed to return. In step 50, it is checked whether the cursor CSR on the display 21 is at the alternative assignment setting position (that is, the position where the alternative assignment display "+" is displayed, that is, the middle position between the tone number displays corresponding to each channel number). . If YES, proceed to the next step 51, but NO
If so, go for the return. In step 51, the channel number corresponding to the current cursor CSR position is taken in as the cursor channel number CHNO. It is assumed that the channel number in this case is the channel number to the right of the cursor CSR.
For example, when the cursor CSR is located at an intermediate position between channels CH1 and CH2, the channel number at the cursor position is "2". In step 52, the cursor channel number is
Alternative assignment setting data for the channel specified by CHNO (this is ALT(1)
~One of ALT(8), which is ALT
(indicated by CHNO)) is inverted to “1” or “0”. In other words, the alternate assignment switch
Every time ALT is turned on, the alternate assign setting data is reversed. In the next step 53,
Check whether the alternative assignment setting data ALT (CHNO) of the channel specified by the cursor channel number CHNO is "1", and if it is "1", proceed to step 54 and position the cursor CSR on the display 21. The alternate assignment display “+” will be displayed in response to
If it is "0", the process advances to step 55 and the alternative assignment display "+" at the position of the cursor CSR on the display 21 is erased. In the next step 56, an "assignment table" is created according to the subroutine shown in FIG. By performing the process as described above in response to turning on the group switch GRP or alternative assign switch ALT,
Group setting data for each channel GRP(1)~
The states of GRP(8) and alternative assignment setting data ALT(1) to ALT(8) are established. And these established data GRP(1)~GRP(8),
According to the states of ALT(1) to ALT(8), sequential pronunciation assignment processing (that is, alternative assignment processing) and pronunciation assignment processing for each group are performed. For this sound generation assignment process, an "assignment table" is created according to the subroutine shown in FIG. 12 based on these setting data GRP(1) to GRP(8) and ALT(1) to ALT(8). Then, using the created "assignment table", a sound generation assignment process is performed according to the key-on event process shown in FIG. 11. To explain the assignment table creation subroutine of FIG. 12, first, in step 57, group number data GN is obtained. In this embodiment, the method of grouping depends on the following two criteria. One is to use the grouping display "←" to group multiple channels with the same tone number into the same group, and the other is to use the alternate assignment display "+" to change the assignment order. This is to group multiple configured channels into the same group. Therefore, in step 57, as an example,
Group setting data GRP(1) to GRP(8) and alternative assignment setting data ALT(1) to ALT(8)
Group number data GN is obtained by counting the number of channels whose contents are both "0". In other words, group configuration data GRP(1)
~The channel for which the contents of GRP(8) and alternative assignment setting data ALT(1) to ALT(8) are both “0” is the first channel of each group, so count the number of channels. The number of groups can be determined by In the next step 58, alternative assignment flags ALFLG(1) to ALFLG(8) are determined for each group. Here, for each group, which can be determined as described above, it is checked whether "1" exists in the alternative assignment setting data ALT(1) to ALT(8) of the channels belonging to that group. Accordingly, the flag can be determined. This flag becomes "1" in a group to which alternative assignment is to be performed. In the next step 59, intra-group channel number data GCH(1) to GCH(8) is obtained for each group. Here, the data can be determined by listing the numbers of channels belonging to each group, which can be determined as described above. In the next step 60, alternate assignment channel number data ALGN(1) to ALGN(8) is obtained for each group. Here, the data can be determined by counting the number of channels belonging to each group, which can be determined as described above. In the next step 61, the channel number data ACH by alternative assignment allocation order is
(1, 1) to ACH (8, 8) are obtained for each allocation rank for each group. Here, among each group that can be determined as described above, the alternative assignment flags ALFLG(1) to ALFLG(8)
For groups where GRP(1) to GRP(8) are "0", the channels whose group setting data GRP(1) to GRP(8) are "0" are ranked and their channel numbers are stored. Channels whose group setting data GRP(1) to GRP(8) are "1" are ranked in the same order as the immediately preceding channel.
In other words, a plurality of channels set to be grouped by the group switch GRP are given the same rank in the alternative assignment. To explain the key-on event processing in FIG. 11, first, in step 62, the key code related to the key-on event (that is, the key code to be newly assigned for sound generation) is taken in as a new key code NKC. In the next step 63, the current group number CGN is set to the initial value "1". In the next step 64, the alternative assign flag (this is ALFLG(1) to
One of ALFLG(8), which is ALFLG
(Denoted as CGN)) is “1”.
If it is "1", the process branches to step 69 to perform alternative assignment processing, and if it is not "1", it branches to step 65 to perform normal sound generation assignment processing. In step 65, the current group number
In-group channel number data of the group specified by CGN (this is GCH(1) to GCH(8)
(one of them, and this is indicated by GCH (CGN))
Normal pronunciation assignment processing is performed on the channels within the group specified by. The normal pronunciation assignment process includes a commonly known pronunciation assignment process in which an empty channel is created by truncation processing and a new key code is assigned to the empty channel. In addition, if the channels in the group consist of only one channel,
Even if the previous note is being pressed, its assignment is canceled and a new key code is assigned, which is what is called a last-arrival priority process, so that the new note to be generated will start producing immediately. do. In the next step 66, a new key code NKC and a key-on signal KON are sent to the musical tone forming circuit 18 in correspondence with the channels newly assigned as described above. In this channel in the musical tone forming circuit 18, the given new key chord
The NKC and key-on signal KON are appropriately stored, and based on these, a musical tone signal having a pitch corresponding to the key code is formed. In that case, the various musical tone elements of the musical tone signal formed are controlled by the tone parameters supplied as described above. Further, in this case, if the fore-tone assigned to the channel in the musical tone forming circuit 18 is being generated, the sound generation of the fore-tone is rapidly attenuated by the dump control. In the next step 67, the value of the current group number CGN is incremented by 1, and the group to which the sound generation is to be assigned is switched. In the next group 68, 1
It is checked whether the increased value of the current group number CGN is greater than the value of the timing number data GN. If YES, the assignment of all groups has been completed and the process goes to return, but if NO, there are still groups to which tones are assigned, so the process returns to step 64 and repeats the same pronunciation assignment process as described above. When performing alternative assignment processing, the process branches from step 64 to step 69 as described above. In step 69, the alternative assignment current order of the group specified by the current group number CGN (this is
Increase the value of CALGN (CGN), which is one of CALGN(1) to CALGN(8) (in other words, the value indicating the allocation order by alternative assignment that should be processed this time) by 1. . In addition,
It is assumed that the alternative assign current orders CALGN(1) to CALGN(8) of each group are initially set to "0" when the power is turned on and when preset data is read. Therefore, when starting the alternative assignment, the value of the alternative assignment current order CALGN (CGN) becomes "1" (that is, the first assignment order) through the process of step 69. In the next step 70, the value of the alternative assignment current order CALGN (CGN) is
Alternative assignment channel number data for the same group specified by the current group number CGN (this is one of ALGN(1) to ALGN(8) and is indicated by ALGN(CGN))
Check if it is greater than the value of . If YES,
Alternative Assign Current Order
This means that the assignment order specified by CALGN (CGN) is greater than the number of channels subject to alternative assignment within that group, which means that it is a rank that does not actually exist.
In step 71, the value of CALGN (CGN) is returned to the initial allocation priority value "1". If NO, jump step 71 and proceed to step 72.
go to. In step 72, the current group number CGN and the alternative assignment current order CALGN are selected from among the channel number data ACH (1, 1) to ACH (8, 8) by alternate assignment assignment order in the "assignment table".
(CGN) (this corresponds to ACH (CGN,
CALGN)) to check whether there are multiple channels that correspond to the relevant allocation order. For example, since the number of channels is 1 in each allocation order of channels 5, 6, 7, and 8 in FIG. 3d and channels 4 and 5 in FIG. 3e, the determination in step 72 is NO. On the other hand, channels 6, 7, and 8 in FIG. 3e have the same allocation order, and channels 3, 4, and 5 in FIG. 3f also have the same allocation order; 8 also have the same allocation order, and since the number of channels is plural in each of these allocation orders, the determination in step 72 is YES. If NO is determined in step 72, step 7
3, and enter the channel number data ACH (CGN,
CALGN) is the channel to which the new key code NKC is to be assigned. On the other hand, if the determination in step 72 is YES,
Go to step 74 and enter the channel number data ACH by alternate assignment allocation order described above.
Perform normal allocation processing for multiple channels specified by (CGN, CALGN),
This determines one channel to which the new key code NKC should be assigned. New key code by steps 73 and 74
After determining one channel to which an NKC should be assigned, the process goes to step 66 described above, and the same process is performed thereafter. As is clear from the above, assignment processing is performed for each group for one new key code NKC, and the pronunciation of musical tones corresponding to the new key code NKC is assigned to each group. Therefore, musical tones corresponding to the same key code are generated in multiple series corresponding to the number of groups. Also,
In the group that performs alternative assignment, the new key code is
The allocation order is sequentially switched each time NKC is given (that is, each time a musical tone is to be generated). Further, in this case, when the assignment of the final rank is completed, the process of step 71 returns the rank to the first rank, and the assigned rank is repeatedly switched in order. Although the details of the key-off event processing are not particularly illustrated, in this key-off event processing, the key code related to the key-off event is captured as a new key code NKC, and this new key code
Detects the channel to which NKC is assigned,
The musical tone forming circuit 18 corresponds to the detected channel.
What is necessary is to send a key-off signal to the key-off signal. The tone number of the tone parameter set for each channel displayed on the display 21,
Assuming that the alternative assignment display "+" and the grouping display "←" are as shown in each example in FIG. The states of TCN(8), group setting data GRP(1) to GRP(8), and alternative assignment setting data ALT(1) to ALT(8) are as shown in Tables 1a to 1f below. In other words, by setting these data as shown in Tables 1a to 1f below, displays such as those shown in the examples in FIGS. 3a to 3f can be obtained. Furthermore, data GRP(1) to GRP(8), ALT(1) to ALT(8) set as shown in Tables 1a to 1f below.
The contents of the "assignment table" created based on this are as shown in Tables 2a to 2f below.

【表】【table】

【表】【table】

【表】【table】

【表】【table】

【表】【table】

【表】【table】

【表】【table】

【表】【table】

【表】【table】

【表】【table】

【表】【table】

〔発明の効果〕〔Effect of the invention〕

以上の通り、この発明によれば、楽音形成チヤ
ンネルのうち任意の複数のチヤンネルに関して割
当て順序を設定し、楽音を発生すべきタイミング
毎に、設定された順序に従つて割当てるべきチヤ
ンネルを切り換えて指示し、指示されたチヤンネ
ルに対して発生すべき楽音の音高情報を割当てる
ようにし、かつ、割当て順序が設定された上記複
数のチヤンネルに関しては互いに異なる楽音要素
制御を行うようにしたので、発生楽音のピツチ、
音色、音量エンベロープ等の楽音要素を楽音の発
生タイミング毎にシーケンシヤルに変化させるよ
うにし、これにより、順序だつた変化による心地
良い演奏効果を実現することができるようにな
る、という優れた効果を奏する。
As described above, according to the present invention, the assignment order is set for any plurality of musical tone forming channels, and each time a musical tone is to be generated, the channel to be assigned is switched according to the set order. The pitch information of the musical tone to be generated is assigned to the specified channel, and different musical tone element controls are performed for the plurality of channels for which the assignment order is set. Pitzchi,
Musical sound elements such as timbre and volume envelope are changed sequentially at each musical sound generation timing, and this has the excellent effect of realizing a pleasant performance effect through sequential changes. .

【図面の簡単な説明】[Brief explanation of drawings]

第1図はこの発明の概要を示す機能ブロツク
図、第2図はこの発明に係る楽音信号発生装置の
一実施例を示すハード構成ブロツク図、第3図a
〜fは第2図のデイスプレイにおける表示内容の
幾つかの例を示す図、第4図は第2図のデータ及
びワーキングRAMにおける記憶データの一例を
示すメモリマツプ、第5図乃至第12図は第2図
のマイクロコンピユータによつて実行される処理
の一例を夫々示すフローチヤート、である。 1…楽音形成手段、CH1〜CHn…楽音形成チ
ヤンネル、2…割当て順序設定手段、3…割当て
手段、4…楽音要素制御手段、10…楽音信号発
生装置、20…操作パネル部、21…デイスプレ
イ、22…テンキー、TCSET…音色設定モード
スイツチ、GRP…グループスイツチ、ALT…オ
ルタネーテイブアサインスイツチ。
FIG. 1 is a functional block diagram showing an overview of the invention, FIG. 2 is a hardware configuration block diagram showing an embodiment of the musical tone signal generating device according to the invention, and FIG. 3a
-f are diagrams showing some examples of display contents on the display in FIG. 2, FIG. 4 is a memory map showing an example of the data in FIG. 2 and data stored in the working RAM, and FIGS. 3 is a flowchart showing an example of processing executed by the microcomputer shown in FIG. 2; DESCRIPTION OF SYMBOLS 1... musical tone forming means, CH1-CHn... musical tone forming channel, 2... assignment order setting means, 3... allocating means, 4... musical tone element control means, 10... musical tone signal generation device, 20... operation panel section, 21... display, 22...Numeric keypad, TCSET...Tone setting mode switch, GRP...Group switch, ALT...Alternative assign switch.

Claims (1)

【特許請求の範囲】 1 割当てられた音高情報に対応する音高の楽音
信号を夫々形成する複数の楽音形成チヤンネル
と、 前記楽音形成チヤンネルのうち任意の複数のチ
ヤンネルに関して、割当て順序を設定する割当て
順序設定手段と、 楽音を発生すべきタイミング毎に、前記割当て
順序設定手段によつて設定された順序に従つて割
当てるべきチヤンネルを切り換えて指示し、指示
されたチヤンネルに対して発生すべき楽音の音高
情報を割当てる割当て手段と、 前記各楽音形成チヤンネルに対してそこにおい
て形成される楽音信号の楽音要素を制御する楽音
要素制御信号を供給し、少なくとも前記割当て順
序設定手段によつて割当て順序が設定される複数
のチヤンネルに関しては互いに異なる楽音要素制
御信号を供給する楽音要素制御手段と を具えた楽音信号発生装置。
[Scope of Claims] 1. A plurality of musical tone forming channels each forming a musical tone signal of a pitch corresponding to the assigned pitch information, and an allocation order is set for any plurality of the musical tone forming channels. an allocation order setting means; and at each timing when musical tones are to be generated, switching and instructing channels to be allocated according to the order set by the allocation order setting means, and assigning musical tones to the specified channels. an allocation means for allocating pitch information of the tone forming channel; and supplying a musical tone element control signal for controlling a musical tone element of a musical tone signal formed therein to each of the musical tone forming channels, the allocation order being determined by at least the allocation order setting means. A musical tone signal generating device comprising musical tone element control means for supplying mutually different musical tone element control signals for a plurality of channels to which a plurality of musical tone element control signals are set.
JP61283274A 1986-11-28 1986-11-28 Tone signal generator Granted JPS63136093A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP61283274A JPS63136093A (en) 1986-11-28 1986-11-28 Tone signal generator
US07/126,840 US4984497A (en) 1986-11-28 1987-11-30 Tone signal generation device having a tone element control function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61283274A JPS63136093A (en) 1986-11-28 1986-11-28 Tone signal generator

Publications (2)

Publication Number Publication Date
JPS63136093A JPS63136093A (en) 1988-06-08
JPH0429077B2 true JPH0429077B2 (en) 1992-05-15

Family

ID=17663334

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61283274A Granted JPS63136093A (en) 1986-11-28 1986-11-28 Tone signal generator

Country Status (1)

Country Link
JP (1) JPS63136093A (en)

Also Published As

Publication number Publication date
JPS63136093A (en) 1988-06-08

Similar Documents

Publication Publication Date Title
US4628789A (en) Tone effect imparting device
JPS61176991A (en) Electronic musical instrument
US4984497A (en) Tone signal generation device having a tone element control function
JPH04181295A (en) Electronic musical instrument
US4843934A (en) Rhythm tone source assigning apparatus for use in electronic musical instrument
JP3561953B2 (en) Electronic musical instrument
JPH0429077B2 (en)
JP5643532B2 (en) Electronic musical tone generator range setting device
JPH0644192B2 (en) Automatic rhythm playing device
JPH0738110B2 (en) Music signal generator
JP2006030517A (en) Sounding allocating device
JPH0313994A (en) Electronic musical instrument
JP2522081B2 (en) Music control parameter setting device
JP2975510B2 (en) Electronic musical instrument
JP2526054Y2 (en) Electronic musical instrument
JPH01321489A (en) Selecting device for electronic musical instrument
JP3013796B2 (en) Rhythm playing device
JPH0792665B2 (en) Parameter setting device for electronic musical instruments
JP2600229Y2 (en) Electronic musical instrument
JPH03208096A (en) Timbre setting device for electronic musical instrument
JPH03120593A (en) Musical sound signal generator
JPH04294395A (en) Electronic musical instrument
JPH0981151A (en) Chord progress editing device
JP3104702B2 (en) Rhythm playing device
JPH02222997A (en) Waveform signal generator

Legal Events

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