JPH0467099A - 電子楽器 - Google Patents

電子楽器

Info

Publication number
JPH0467099A
JPH0467099A JP2179056A JP17905690A JPH0467099A JP H0467099 A JPH0467099 A JP H0467099A JP 2179056 A JP2179056 A JP 2179056A JP 17905690 A JP17905690 A JP 17905690A JP H0467099 A JPH0467099 A JP H0467099A
Authority
JP
Japan
Prior art keywords
data
channel
musical tone
performance data
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.)
Granted
Application number
JP2179056A
Other languages
English (en)
Other versions
JP2753765B2 (ja
Inventor
Masashi Nishikawa
雅士 西川
Satoshi Otsuka
聡 大塚
Takenori Yamamori
山森 丈範
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.)
Roland Corp
Original Assignee
Roland 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 Roland Corp filed Critical Roland Corp
Priority to JP2179056A priority Critical patent/JP2753765B2/ja
Publication of JPH0467099A publication Critical patent/JPH0467099A/ja
Application granted granted Critical
Publication of JP2753765B2 publication Critical patent/JP2753765B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、電子楽器に関し、より詳しくは楽音生成用の
複数個のチャネルを有する際に、新たな楽音生成指示に
対応させていずれかのチャネルを選択してその選択され
たチャネルのエンベロープを必要に応じて急速に減衰さ
せる場合の技術に関するものである。
(従来の技術) 従来は、複数個のチャネルのうちに楽音生成中でないチ
ャネルが存在する状態において新たに楽音を生成させる
楽音生成指示がある場合には、楽音生成中でないいずれ
かのチャネルを選択し、この選択されたチャネルで新た
な楽音を生成させている。また、全てのチャネルが楽音
生成中である状態において新たに楽音を生成させる楽音
生成指示がある場合には、所定の優先順位にもとづいて
いずれかのチャネルを選択し、この選択されたチャネル
のエンベロープを必要を急速に減衰させ、生成中の楽音
を一旦停止させた後にそのチャネルで楽音生成指示に対
応する新たな楽音を生成させている。
(発明が解決しようとする課題) しかしながら、全てのチャネルが楽音生成中である場合
におけるエンベロープを必要の急速に衰は、減衰が終了
するまでにある程度の時間がかがる。したがって、新た
な楽音生成開始指示に対応する楽音の生成は、この急速
減衰の終了を待って行なわれるために遅れが生じる。
この遅れを小さくするためにはエンベロープを必要の減
衰速度を大きくして減衰に要する時間を小さくすれば良
いが、減衰速度を大きくした場合には生成中の楽音が途
中で急激に途切れることになり、クリックノイズが生ず
ることになる。したがって、減衰速度をあまり大きくす
ることはできない。
このような問題点を解決するために、減衰途中で減衰速
度が大きくなるように変化させる等のクリックノイズが
増加しない範囲内において、減衰にかかる時間を小さく
するようないくつかの提案がなされている。しかし、依
然として減衰にはある程度の時間が必要であり、新たな
楽音の生成には必然的に遅れが生じてしまい、リズム惑
が乱れて音楽表現上において好ましくないという問題点
がある。
本発明は、前述の問題点を解決することを目的として、
クリックノイズを増加させることなく、しかも楽音の生
成に遅れが生じることがない電子楽器を提供することに
ある。
(課題を解決するため手段) 前述された課題を解決するために、本第1発明による電
子楽器の構成上の特徴は、第1図(A)に示されている
ように、 (a)  時間系列に構成される一連の演奏データを記
憶可能な記憶手段(1)、 (b)  この記憶手段(1)に記憶されている一連の
演奏データを順次に所要時間間隔を置いて少なくとも2
度読出す読比し手段(2)および(c)  この読出し
手段(2)による前の読出しによって読出される一連の
演奏データのうちから少なくとも楽音生成タイミングの
重要な楽音生成開始を示す演奏データに関してチャネル
確保を指示するデータを楽音生成部に供給する一方、後
の読出しにより読出される一連の演奏データにより楽音
生成開始/停止を指示するデータをその楽音生成部に供
給するデータ供給手段(3)を具えることである。
また、本第2発明による電子楽器の構成上の特徴は、第
1図(A)に示されているように、(a)  時間系列
に構成される一連の楽音生成開始/停止を指示するデー
タ間に、少なくとも楽音生成タイミングの重要な楽音生
成開始を指示するデータに関連させて時間的にその楽音
生成開始を指示するデータの前にチャネル確保を指示す
るデータが挿入される演奏データを記憶可能な記憶手段
(1゛)、 (b)  この記憶手段(1”)に記憶されている一連
の演奏データを順次に読出す読出し手段(2゛)および
(c)  この読出し手段(2゛)により読出される一
連の演奏データを順次に楽音を生成する楽音生成部に供
給するデータ供給手段(3°) を具えることである。
さらに、本第3発明による電子楽器の構成上の特徴は、
第1図(B)に示されているように、(a)  楽音生
成用の複数個のチャネノ喧10)、(b)  これらチ
ャネルのうちのいずれがのチャネル(10)を順次に供
給される時間系列に構成される一連の演奏データのうち
のチャネル確保を指示するデータによって選択するとと
もに、この選択されたチャネル(1o)のエンベロープ
を必要に応じて急速に減衰させるチャネル選択手段(1
1)および (c)  このチャネル選択手段(11)により選択さ
れたチャネル(10)によって、順次に供給されるその
一連の演奏データのうちの楽音生成開始を指示するデー
タにもとづき楽音を生成させる楽音生成制御手段(12
) を具えることである。
さらにまた、本第4発明による電子楽器の構成上の特徴
は、第1図(c)に示されているように、(a)  楽
音生成用の複数個のチャネル(10’)、(b)  こ
れらチャネルのうちのいずれかのチャネル(10”)を
順次に供給される時間系列に構成される一連の演奏デー
タのうちの楽音生成開始を指示するデータによって選択
するとともに、この選択されたチャネル(10’)のエ
ンベロープを必要に応じて急速に減衰させるチャネル選
択手段(11’)  、 (c)  前記一連の演奏データを所定時間だけ遅延さ
せる遅延手段(13)および (d)  この遅延手段(13)により遅延された一連
の演奏データのうちの楽音生成開始を指示するデータに
もとづいて前記チャネル選択手段(11’)によって選
択されたチャネル(10’)により楽音を生成させる楽
音生成制御手段(12’)を具えることである。
なお、本第5発明による電子楽器の構成上の特徴は、第
1図(D)に示されているように、(a)  時間系列
に構成される一連の演奏データを記憶可能な記憶手段(
1”)、 (b)  この記憶手段(1”)に記憶されている一連
の演奏データを順次に読出す読出し手段(2”)、(c
)  この読出し手段(2”)によって読出される−連
のデータを所定時間だけ遅延させる遅延手段(13′)
および (d)  前記読出し手段(2“)により読出される一
連の演奏データのうちから少なくとも楽音生成タイミン
グの重要な楽音生成開始を示す演奏データに関してチャ
ネル確保を指示するデータを楽音生成部に供給する一方
、前記遅延手段(13’)により読出される一連の演奏
データにより楽音生成開始/停止を指示するデータをそ
の楽音生成部に供給するデータ供給手段(3”)を具え
ることである。
(作 用) 第1発明; 記憶手段(1)に記憶されている一連の演奏データのう
ちの楽音生成タイミングの重要な楽音生成開始を示す楽
音生成開始を指示するデータについては、読出し手段(
2)による2度の読出しによって、まず前の読出しにも
とづきデータ供給手段(3)により楽音生成部にその楽
音生成開始を指示するデータに対応じてチャネル確保を
指示するデータを供給する。次に、後の読出しにもとづ
き同様にデータ供給手段(3)により楽音生成部に当該
楽音生成開始を指示するデータを供給する。
したがって、楽音生成部においては、前に供給されるチ
ャネル確保を指示するデータにもとづきチャネルを選択
し、この選択されたチャネルのエンベロープを必要が“
0”でない場合等必要に応じてエンベロープを必要の急
速減衰を行なって、この急速減衰されたチャネルにより
そのチャネル確保指示データに対応する後に供給される
楽音生成開始を指示するデータにより楽音を生成するよ
うになる。
第2発明; 記憶手段(1゛)に記憶されている一連の楽音生成開始
/停止を指示するデータ間に、楽音生成タイミングの重
要な楽音生成開始を指示するデータに関連させて時間的
にその楽音生成開始を指示するデータの前にチャネル確
保を指示するデータが挿入される演奏データを読出し手
段(2゛)により順次に読出す。この読出し手段(2°
)による順次の続出しにより、楽音生成タイミングの重
要な楽音生成開始を指示するデータについては、まずデ
ータ供給手段(3°)によって楽音生成部にその楽音生
成開始を指示するデータに関連するチャネル確保を指示
するデータを供給する。次に、同様にデータ供給手段(
3゛)によって楽音生成部に当該楽音生成開始を指示す
るデータを供給する。
したがって、楽音生成部においては、第1発明の場合と
同様に、前に供給されるチャぶル確保を指示するデータ
にもとづきチャネルを選択し、この急速減衰等されたチ
ャネルによって後に供給される楽音生成開始を指示する
データにより楽音を生成するようになる。
第3発明; チャぶル確保を指示するデータにもとづきチャネル選択
手段(11)により楽音生成用の複数個のチャネルのう
ちからいずれかのチャネル(10)を選択し、この選択
されたチャネル(10)のエンベロープを必要に応じて
急速減衰させる。このチャネル選択手段(11)4こよ
って選択されたチャネル(10)から、楽音生成制御手
段(12)によって順次に供給される楽音生成開始を指
示するデータにもとづいて楽音を生成する。
第4発明; 楽音生成開始を指示するデータにもとづきチャネル選択
手段(11°)により楽音生成用の複数個のチャネルの
うちからいずれかのチャネル(10’)を選択し、この
選択されたチャネル(10’)のエンベロープを必要に
応じて急速減衰させる。この選択されたチャネル(10
′)によって楽音生成制御手段(12’)により、遅延
手段(13)によって遅延されたその楽音生成開始を指
示するデータにもとづいて楽音を生成する。
第5発明; 記憶手段(1” )に記憶されている一連の演奏データ
のうちの楽音生成タイミングの重要な楽音生成開始を示
す楽音生成開始を指示するデータについては、読出し手
段(2°°)による読出しにもとづきデータ供給手段(
3”)によりまず楽音生成部にその楽音生成開始を指示
するデータに対応じてチャネル確保を指示するデータを
供給する。次に、この読出し手段(2”)により読出さ
れて遅延手段(13°)により遅延された当該楽音生成
開始を指示するデータを同様にデータ供給手段(3”)
により楽音生成部に供給する。
したがって、第1発明の場合と同様に、楽音生成部にお
いては、前に供給されるチャネル確保を指示するデータ
にもとづきチャネルを選択し、この選択されたチャネル
のエンベロープを必要が0”でない場合等必要に応じて
エンベロープを必要の急速減衰を行なって、この急速減
衰されたチャネルによりそのチャネル確保指示データに
対応する後に供給される楽音生成開始を指示するデータ
により楽音を生成するようになる。
(発明の効果) よって、楽音生成開始のタイミングに先立っていずれか
のチャネル(10) 、 (10”)が選択され、必要
に応じてその選択されたチャネル(10) 、 (10
’ )のエンベロープを必要が急速減衰されるために、
クリックノイズを増加させることなく、しかも楽音O生
成に遅れが生しることなく楽音を生成することができる
(実施例) 次に、本発明による電子楽器の具体的実施例につき、図
面を参照しつつ説明する。
(第1実施例);第1,3発明 まず、本発明が適用された電子楽器Mが概略的に示され
ている第2図において、電子楽器Mは予め内部に演奏デ
ータを記憶可能な自動演奏部20と、所定の楽音を生成
する楽音生成部30と、これら自動演奏部20および楽
音生成部30を電気的に接続する信号線40とより構成
されている。この自動演奏部20において読出される予
め記憶されている演奏データは、信号線40を介して楽
音生成部30↓二供給される。この演奏データには、楽
音生成の開始指示を示すノートオンデータ、楽音生成の
停止指示を示すノートオフデータ、チャネル確保指示を
示すチャネル確保指示データおよび演奏の終了を示す演
奏終了データの4種類のデータがある。
自動演奏部20において、この自動演奏部200動作状
態を表示する表示器と自動演奏部20の各種動作を指示
する各種操作子とを有するパネル部21から、各種操作
子の操作状態にもとづく指示がハス22を介してA−マ
イコン23に供給される。このA−マイコン23は、所
定プログラムを実行するA中央処理装置(cPU)23
Aと、実行されるプログラムを記憶するA−続出し専用
メモリ(ROM)23Bと、プログラムを実行するに必
要な各種フラグ、マツプ等のワーキングエリアとして、
および演奏データが予め記憶される演奏データエリアと
しての各領域から成るA−書込み/続出し可能メモリ(
RAM)23Cと、本実施例においては1ms毎の所定
時間毎にタイマインクラブドをかけて所定のタイマイン
クラブド処理を行なわせるタイマ23Dとより構成され
ている。そして、A−マイコン23は、A−ROM23
Bに予め記憶されている所定プログラムを実行すること
により、パネル部21からの操作子の操作状態にもとづ
く自動演奏の開始/停止の指示によってA−RAM23
Cに記憶されている演奏データを読出し、この読出され
た演奏データをハス22を介してA−インターフェース
回路24に供給する。このA−インターフェース回路2
4は、供給される複数個の演奏データを一次記憶するフ
ァーストイン/ファーストアウトメモリ(F I FO
)を内蔵しているとともに、このFIFOに記憶されて
いる演奏データを供給された順に読出して信号線40を
介して楽音生成部30に供給する。なお、A−マイコン
23は、電源遮断時にもA−RAM23Cの記憶内容が
消滅しないようにバックアップされている。
一方、楽音生成部30において、信号線40を介して供
給される演奏データは、B−インターフェース回路31
に供給される。このB−インターフェース回路31は、
A−インターフェース回路24と同様コニ供給される複
数個の演奏データを一次記憶するファーストインファー
ストアウトメモリ (FIFO)を内蔵しているととも
に、このFIFOに記憶されている演奏データを供給さ
れた順に読出してハス32を介してB−マイコン33に
供給する。二〇B−マイコン33は、所定プログラムを
実行するB−中央処理装置(cPU)33Aと、実行さ
れるプログラムを記憶するB−読出し専用メモリ(RO
M)33Bと、プログラムを実行するに必要な各種バッ
ファ、フラグ、マツプ等のワーキングエリアとしての領
域から成るB−書込み/続出し可能メモリ(RAM)3
3Cとより構成されている。そして、B−マイコン33
は、B−ROM33Bに予め記憶されている所定プログ
ラムを実行することにより、B−インターフェース回路
31からの演奏データを受取り、これら受取られた演奏
データにもとづき楽音信号を生成するに必要な、エンベ
ロープを必要単位時間当たりの変化量を示すレートデー
タとエンベロープを必要の目標値を示す目標値データと
を含む楽音制御データを、バス32を介して楽音発生回
路34に供給してその楽音発生回路34を制御する。こ
の楽音発生回路34は、本実施例においては10個のチ
ャネルを有して同時に10個までの楽音信号を生成でき
るとともに、各チャネルに対応じてエン−、ロープを形
成する回路をも有して楽音制御データにおけるレートデ
ータおよび目標値データにもとづきエンベロープ波形を
形成する。
言い換えれば、レートデータのレート値を所定時間毎に
累算し、エンベロープを必要が目標値データの目標値に
達する毎に、B−マイコン33にエンベロープインタラ
ブト処理を行なわせて新たなレートデータおよび目標イ
直データをf共給させるようにエンベロープインタラブ
トをかけ、1順次にエンベロープインクラブト毎に供給
される新たなレートデータおよび目標値データによって
所望の折れ線状のエンベロープ波形を形成する。したが
って、楽音発生回路34は、形成されるエンベロープ波
形に応した振幅の所望の楽音信号を楽音制御データによ
って割当てられたチャネルにおいて生成し、増幅器35
を介してスピーカ36から楽音として発生させる。
次に、自動演奏部20におけるA−マイコン23のA−
RAM23Cに設定されている演奏データエリアおよび
ノート管理マツプについて説明する。
○演奏データエリア(第3図) 演奏データが先頭番地から順次に記憶されるとともに、
1個の演奏データに対して言えば演奏データの種類を示
すデータ種類“5TATUS”、生成/停止される楽音
の音高をO〜127の数値で示す音高値“N[IM”、
生成される楽音の強さを0〜127の数値で示す強度値
“VEビおよび直前の演奏データから当該演奏データま
での経過時間(差分時間)を示す経過時間“5TET”
を記憶する領域より構成されている。このデータ種類“
5TAThis”の内容は、演奏データが楽音生成開始
のノートオンを示すいわゆるノートオンデータの場合に
は°’ 1 ” 、楽音生成停止のノートオフを示すい
わゆるノートオフデータの場合には“′O”演奏内容の
最後の演奏データの直後の演奏データにおける演奏終了
を示すいわゆる演奏終了データの場合には“9゛と設定
される。なお、演奏データが楽音生成開始のノートオン
であって、しかもチャネル確保指示の演奏データである
場合にはデータ種類“5TATtlS”の内容はパ2”
と設定され、この演奏データの読出し時にはその演奏デ
ータに対応させてまずチャネル確保指示を示す演奏デー
タ、いわゆるチャネル確保指示データが楽音生成部30
に供給され、その後にノートオンデータが楽音生成部3
0に供給される。また、経過時間“5TET”は演奏デ
ータの読出しタイミングを規制するものであり、経過時
間“5TET”の値を所定時間毎に1′を滅しることに
よってその値が°′0”になることにより、次の読出し
タイミングを定めるものである。
○ノート管理マツプ いずれの音高の楽音が生成中であるかを判断するために
、楽音生成部30に供給される演奏データにもとづいて
各音高に対応じてその音高の楽音が生成中である場合に
は“′l“が、生成中でない場合には“′Oパが記憶さ
れる。
使用者は、パネル部21の各種操作子を操作することに
より、一連の演奏データを時間系列に入力してA−RA
M23Cの演奏データエリアに順次に先頭番地から記憶
させる。この場合に、特に楽音生成開始のタイミングが
重要なノートオンを示す演奏データに関してはデータ種
類“5TATUS”の内容を°“2″と設定する。なお
、1個の演奏データを構成する4種類のデータ、言い換
えればデータ種類”5TATUS”、音高値“N[IM
″、強度値” VEL”および経過時間“5TET”の
データは共通の読出しポインタでもって演奏データエリ
アから読出され、これら続出された4種類のデータのう
ちの経過時間“5TET”を除くデータ種類“5TAT
US”、音高値“NUM”および強度値“VEL“が1
個の演奏データとして楽音生成部30に供給される。
ところで、楽音生成部30においては、自動演奏部20
からデータ種類“5TATIIS”の内容が“2パであ
る演奏データのチャネル確保指示データが供給される場
合には、このチャネル確保指示データに対応じて後に供
給されるノートオンデータによって生成される楽音のた
めに、楽音発生回路34のいずれかのチャネルを選択し
、必要に応じてそのチャネルに対するエンベロープレヘ
ルを2、速減衰させて割当てチャネルを確保する。そし
て、この確保されたチャネルによってそのチャネル確保
指示データに対応じて後に供給されるノートオンデータ
による楽音を生成する。したがって、楽音生成が遅れる
ことなく行なわれる。なお、データ種類“5TATUS
″の内容が′″1″゛である予めチャネル確保指示デー
タが供給されることなくして供給されるノートオンデー
タの場合には、このノートオンデータが供給される時点
においていずれかのチャネルを選択し、必要に応じてそ
のチャネルに対するユンベロープを必要を急速減衰させ
てそのチャネルに生成楽音を割当て、所望の楽音を生成
させる。
また、ノートオフデータが供給される場合には生成中の
楽音を停止させるとともに、演奏紡了データが供給され
る場合には確保されているチャネルの確保を解除する。
次に、自動演奏部200基本的動作について、第4図に
示されているメインルーチンのフローチャート図にもと
づき説明する。
A−A  電源の投入により所定プログラムの実行を開
始してA−RAM23Cに設定されているワーキングエ
リアをクリヤするとともムこ、タイマ23DおよびA−
インターフェース回路24を初期設定する。
A−B  パネル処理ルーチン。パネル部21の表示器
の制御およびそのパネル部21からの各種操作子の操作
状態にもとづく指示に関わる処理を行なう。詳細は、第
5図に示されているフコ−チャート図により後述する。
A−CプレイフラグPLFが演奏中を示す″1′″であ
るか否かを判断する。なお、プレイフラグPLFは、パ
ネル部21の操作子による操作によって演奏の開始が指
示された場合において、ステップA−Bにおいて“′1
°”と設定される。
A−D  ステップA−Cにおける判断においてプレイ
フラグPLFが演奏中を示す“1゛′である場合には、
タイマ23Dにより1胚毎の所定時間毎にかけられるタ
イマインクラブドに応しで実行されるタイマインタラブ
ド処理を行なう毎にその値が°′1゛°増やされるとと
もに、演奏データ読出し処理およびチャネル確保指示処
理を行なう毎にその値が“1″減らされるタイムP・T
Mの値が“O”を超えているか否かを判断する。このタ
イムP−TMの値が°“O′°を超えている場合には、
前述の演奏データ読出し処理およびチャネル確保指示処
理を行なうタイミングになっていることを示している。
なお、タイマインクラブドをかける時間間隔は、本実施
例においては固定のIms毎としたが、この時間間隔に
よって演奏テンポは規定されるために、テンポを変更す
る場合にはその時間間隔を変更するようにする。
A−E  演奏データ読出し処理ルーチン。演奏データ
を読出してチャネル確保指示データ以外の演奏データを
楽音生成部30に供給する処理を行なう。詳細は、第6
図に示されているフローチャート図により後述する。
A−F  チャネル確保指示処理ルーチン。演奏データ
を読出してチャネル確保指示データを楽音生成部30に
供給するチャネル確保指示処理を行なう。詳細は、第7
図に示されているフローチャート図により後述する。
A−G  タイムP−TMの値がら′1″を減らして、
新たなタイムP−TMの値とする。
以上のメインルーチンによる自動演奏部20の基本的動
作は、要するにパネル処理を繰返し行なうとともに、演
奏開始が指示された場合には演奏データ読出し処理およ
びチャネル確保指示処理を所定時間毎に行なうことであ
る。
まず、パネル処理ルーチン(ステップA−B)について
、第5図を参照しつつ説明する。
A−B−1パネル部21の演奏開始の操作子が新たにオ
ン操作されているか否かを判断する。
A −B−2ステップA−B−1における判断において
演奏開始の操作子がオン操作されている場合には、演奏
データ読出し処理によって読出される演奏データの番地
を示す続出しポインタP−RPO値を、演奏データエリ
アの先頭番地の値とする。
A−B−3読出しポインタP−RPで示されている番地
の演奏データを読出し、この読出された演奏データをバ
ッファP−BPに記憶させる。
A−B−4バッファP−BPに記憶されている演奏デー
タの経通時間”5TET”の値を、演奏データを出力す
るタイミングを求めるために用いるタイミング変数P−
5Tとする。
A−B−5チャネル確保指示処理によって演奏データを
読出す番地を示す読出しポインタR・RPO値を、演奏
データエリアの先頭番地の値とする。
A−B−6演奏データの経過時間”5TET’の累算値
ΣSTをクリヤしてその値を“0“とする。
A−B  7  if!出しポインタR−RPで示され
ている番地の演奏データを読出し、この続出された演奏
データをバッファR−BFに記憶させる。
A−B−8バッファR−BFに記憶されている演奏デー
タの経過時間“5TET”の値と、累算値ΣSTの値と
を加算してその和を累算値ΣSTとする。
A−B−9累算値ΣSTの値が“10゛以上であるか否
かを判断する。
A−B−10ステップA−B−9における判断において
累算値ΣSTの値が°’ 10 ”以上でない場合には
、読出しポインタR−RPO値に″“1”加えて“l°
゛進める。
A−B−11ステップA−B−9における判断において
累算値ΣSTの値が“10”以上である場合ムこは、累
算値ΣSTの値から°“10”を減らしてその値を、チ
ャネル確保指示データを出力するタイミングを求めるた
めに用いるタイミング変数R−3Tとする。
以上のステップA−B−5〜A −B −11において
は、演奏データエリアに記憶されている演奏データをそ
れら演奏データの経過時間”5TET”の累算値ΣST
が“10”以上になるまで先頭番地から読出し、累算値
ΣSTが“’10”以上になった場合にはその累算値Σ
STから°’10”を減らした値をタイミング変数R−
3Tとしている。このようにするのは、演奏開始直後に
はまだいずれのチャネルも楽音生成中でないために先頭
番地の読出じから10m5経過するまでの演奏データに
関してはチャネル確保指示データを出力しないようにす
るとともに、データ種類“5TATtlS”の内容が”
 2 ”である演奏データに関してチャネル確保指示デ
ータを対応するノートオンデータよりも10m5だけ先
立って出力させるためである。この10m5という値は
、楽音生成部30において生成中の楽音のエンヘロープ
を必要を急速に減衰させる場合に減衰が終了するに充分
な時間であって、かつ生成中の楽音が不必要に早く停止
され不自然になることがない時間として選んである。ク
リックノイズが目立たない程度でより大きな減衰速度で
減衰を行なう等によって減衰がより早く終了する場合に
は、この時間をもっと短くしても良い。また、生成中の
楽音か不必要に早く停止され不自然になることがない程
度に、この時間を長くしても良い。
なお、タイミング変数R−5T、P−3Tの値をチャネ
ル確保指示処理および演奏データ読出し処理において所
定時間毎に滅し、“′0°゛になったか否かを判断する
ことによって、データを出力するタイミングが求められ
ている。
A−B−12タイムP−TMをクリアしてその値を“0
パとする。
A−B−13プレイフラグPLFを演奏中を示す1”に
設定する。
A−B−14パネル部21の演奏停止の操作子が新たに
オン操作されているか否かを判断する。
A −B −15ステップA−B−14における判断に
おいて演奏停止の操作子が新たにオン操作されている場
合には、A−RAM23Cに設定されているノート管理
マツプにより楽音生成中の音高を探し、この音高に関し
て楽音停止を指示するノートオフデータを楽音生成部3
0に供給して生成中の楽音を停止させる。
A−B−16演奏が停止されたことを示す演奏終了デー
タを楽音生成部30に供給する。
A−B−17プレイフラグPLFを演奏中でないことを
示す0“に設定する。
A−B−18パネル部21の表示器の制御処理、および
演奏データを作成/編集するための操作子等のその他の
操作子に関する処理を行なう。なお、演奏データを作成
/編集する処理は公知の技術、例えば特公昭62−43
197号特許公報、特公昭63−40318号特許公報
、特開昭59−121392号公開特許公報等に示され
ている技術を用いることができるので詳しい説明は省略
する。
次に、演奏データ読出し処理ルーチン(ステップA−E
)について、第6回を参照しつつ説明する。
A−E−1タイミング変数P−3Tの値が“′0′′で
あるか否かを判断する。
A−E−2ステップA−E−1における判断においてタ
イミング変数P−3TO値が0”で演奏データを読出す
タイミングである場合には、バッファP−BPに記憶さ
れている演奏データを読出して演奏終了を示すものか否
かを判断する。
A−E−3ステップA・E−2における判断において読
出された演奏データが演奏終了を示すデータでない場合
には、バッファP−BPに記憶されている演奏データを
読出して楽音生成部30に供給する。なお、供給される
演奏データはデータ種類“5TATUS”、音高値”N
[IM″および強度値“VEL”から構成されるもので
あるが、読出された演奏データのデータ種類“5TAT
tJS“の内容が′“2”でチャネル確保指示データの
出力を伴うノートオンの場合にはデータ種類“5TAT
[]S”の内容を“′1′”としてノートオンデータと
して供給する。
A−E−4読出された演奏データにもとづいてノート管
理マツプの対応する音高の欄に、読出された演奏データ
がノートオンを示すものである場合には“1”を、ノー
トオフを示すものである場合には0”を記憶させて、ノ
ート管理マツプを更新する。
A−E−5読出しポインタP−RPO値に1°′を加え
て1′進め、次の演奏データの読出しを準備する。
A −E−6演奏データエリアから読出しポインタP−
RPO値によって示されている番地の演奏データを読出
し、バッファP−BFに記憶させる。
A−E−7バッファR−BFに記憶されている演奏デー
タの経過時間“5TET”の値をタイミング変数P−3
Tとする。
A−E−8ステップA−E−2における判断において読
出された演奏データが演奏終了を示す演奏データである
場合には、演奏終了データを楽音生成部30に供給する
A−E−9プレイフラグPLFを演奏中でないことを示
す“0゛′に設定する。
A−E−10ステップA−E−1における判断において
タイミング変数P−3Tの値が“0”でない場合には、
タイミング変数P−3Tの値から“1”を減らして、時
間経過を反映させる。
続いて、チャネル確保指示処理ルーチン(ステップA−
F)について、第7図を参照しつつ説明する。
A−F−1タイミング変数R−3Tの値が“0゛である
か否かを判断する。
A−F−2ステップA−F−1における判断においてタ
イミング変数R−3TO値がパ0′”で演奏データを読
出すタイミングである場合には、バッファR−BFに記
憶されている演奏データを読出し、この読出された演奏
データが演奏終了を示すものか否かを判断する。なお、
読出された演奏データが演奏終了を示すものである場合
には、他の処理を行なわずにメインルーチンに戻る。
A−F−3ステップA−F−2における判断において読
出された演奏データが演奏終了でないことを示している
場合には、バッファP−BFに記憶されている演奏デー
タを読出し、この読出された演奏データがチャネル確保
指示データを出力すべきデータであるか否かを、演奏デ
ータのデータ種類“5TATUS″の内容が“2′であ
るか否かによって判断する。
A−F−4ステップA−F−3における判断において読
出された演奏データがチャネル確保指示データを出力す
べきデータである場合には、バッファR−BPに記憶さ
れている演奏データにもとづくチャネル確保指示データ
を楽音生成部30に供給する。
A −F−5読出しポインタR−RPO値に“1″を加
えて“1”進め、次の演奏データの読出しを準備する。
A−F−6演奏データエリアから読出しポインタR−R
Pによって示されている番地の演奏データを読出し、こ
の読出された演奏データをバッファR−BFに記憶させ
る。
A −F−7バッファR−BPに記憶されている演奏デ
ータの経過時間“5TET”の値をタイミング変数R−
3Tとする。
A−F−8ステップA−F−1における判断においてタ
イミング変数R−3TO値がO”°でない場合には、タ
イミング変数R−3TO値から“′1”を減らして、時
間経過を反映させる。
なお、楽音生成部30に供給されるチャネル確保指示デ
ータは、データ種類“5TATIjS“、音高値”NU
M’および強度値“VEL”から構成されているととも
に、音高値“N[]M″および強度値“VELは後に演
奏データ読出し処理によって楽音生成部30に供給され
るノートオンデータに含まれるものと同しものである。
この楽音生成部30にチャネル確保指示データが供給さ
れる場合には、いずれかのチャネルを選択する等の処理
を行なうとともに、音高値“NUM″および強度値“V
EL”にもとづき楽音発生回路34を制御する楽音制御
データを求める等の処理を行なって楽音生成開始タイミ
ングに先立って楽音を生成する準備を行なう。
次に、楽音生成部30におけるB−マイコン33のB−
RAM33Cに設定されているノートマツプおよびチャ
ネルマツプについて説明する。
○ノートマツプ(第8図) 各音高に対応じて使用されているチャネルのチャネル番
号が記憶され、演奏データに含まれている音高値“NU
M”に対する各音高(0〜127)に対応じてチャネル
番号(1〜10)を記憶する領域が設定されている。な
お、この音高に対応じていずれのチャ矛ルも使用されて
いない場合にはチャネル番号として°”0°゛が記憶さ
れる。
Oチャネルマツプ(第9図) 各チャネル(番号)に対応じて、生成中の楽音の音高、
チャネルの確保状況、ノートオン処理状況、エンベロー
プを必要の状況および楽音制御データが記憶される。各
チャネル(1〜10)に対応じて音高(0〜127)を
記憶する領域、チャネルの確保状況を示すリザーブフラ
グRVFが記憶される領域、チャネルのノートオン処理
状況を示すオンフラグONFが記憶される領域、チャネ
ルのエンベロープを必要の状況を示すアイドルフラグI
DFが記憶される領域および楽音性成開始時に用いられ
る楽音発生回134を制御する楽音制御データを記憶す
る領域がそれぞれ設定されている。
リザーブフラグRVFは各チャネルに対応じてそのチャ
ネルが確保状態である場合にはII 111、確保状態
でない場合には“O°゛に設定される。また、オンフラ
グONFは各チャネルに対応じてそのチャネルがノート
オンを受取っているが未だ楽音生成を行なっていない場
合には“1”、楽音生成を行なっている場合には“0パ
に設定されるとともに、アイドルフラグIDFは各チャ
ネルに対応じてそのチャネルのエンベロープを必要が“
0パの場合には“1”。
エンベロープを必要が“0゛でない場合には“0”に設
定される。
ここで、「確保状態」の意味について説明する。
楽音生成部30において、チャネル確保指示データが供
給される場合にはいずれかのチャネルを選択して必要に
応じてそのチャネルのエンベロープを必要を減衰させ、
チャネル確保指示データに対応したノートオンデータが
供給される場合には先程選択したチャネルを楽音生成に
使用する。なお、「確保状態」はチャネル確保指示デー
タが供給されてからノートオンデータが供給され楽音生
成が開始されるまで保持されて「確保状態」になってい
るチャネルは他の楽音生成に関するチャネル選択の対象
から除かれる。このために、ノートオンデータが供給さ
れた時点において楽音生成に用いるチャネルを確実に用
意しておくことができる。
次に、楽音生成部30の基本的動作について、第10図
に示されているメインルーチンのフローチャート図にも
とづき説明する。
B−A  電源の投入により所定プログラムの実行を開
始してB−RAM33Cに設定されているワーキングエ
リアをクリヤするとともに、B−インターフェース回路
31および楽音発生回路34を初期設定する。
B−B  B−インターフェース回路31を介して自動
演奏部20から演奏データが供給されているか否かを判
断する。
B−CB−インターフェース回路31から供給された1
個の演奏データを読出してバッファD・BPに記憶させ
る。
B−D  バッファD−BFに記憶されている演奏デー
タがチャネル確保指示データであるか否かを判断する。
B−E  チャネル確保処理ルーチン。チャネル確保指
示データに対応じて後に供給されるノートオンデータに
よる楽音を生成するのに用いるチャネルを確保するチャ
ネル確保処理を行なう。
詳細は、第11図に示されているフローチャート図によ
り後述する。
B−F  アサイン処理ルーチン。チャネル確保指示デ
ータに対応じて後に供給されるノートオンデータによる
楽音を、確保したチャネルに割当てるアサイン処理を行
なう。詳細は、第12図に示されているフローチャート
図により後述する。
B−G  ステップB−Dにおける判断においてバッフ
ァD−BFに記憶されている演奏データがチャネル確保
指示データでない場合には、このバッファD−BFに記
憶されている演奏データがノートオンデータであるか否
かを判断する。
B−HステップB−Gにおける判断においてバッファD
−BFに記憶されている演奏データがノートオンデータ
である場合には、このバッファD−BPに記憶されてい
るノートオンデータに対応したチャネル確保指示データ
にもとづきチャネル確保が既に行なわれているか否かを
判断する。具体的には、供給されるノートオンデータの
音高値“NUM”によってノートマツプを参照して対応
するチャネル番号を読出し、この読出されたチャネル番
号によってチャネルマツプを参照して対応するリザーブ
フラグR3Vが°“1”であるか否かによって判断する
B・■ チャネル確保処理ルーチン。ステップB・Eと
同様のチャネル確保処理を行なう。
B−J  アサイン処理ルーチン。ステップB−Fと同
様のアサイン処理を行なう。
B−K  バッファD−BFに記憶されているノートオ
ンデータの音高値“NIIM”によってノートマツプを
参照して対応するチャネル番号を読出し、この読出され
たチャネル番号をチャネル番号CHとする。
B−L  チャネルマツプにおけるチャネル番号CHに
対応するオンフラグONF (cH)を、チャネルがノ
ートオンを受取ったが未だ楽音生成を行なっていないこ
とを示す“′1パに設定する。
B−M  ステップB−Gにおける判断においてバッフ
ァD−BFに記憶されている演奏データがノートオンデ
ータでない場合には、このハソファD−BPに記憶され
ている演奏データがノートオフデータであるか否かを判
断する。なお、ノートオフデータでない場合には、演奏
終了データである。
B−N  ステップB−Mにおける判断においてノ\ッ
ファD−BFに記憶されている演奏データがノートオフ
データである場合には、このノートオフデータにもとづ
いて楽音生成を、次のようにして停止させる。
演奏データに含まれている停止される楽音の音高値“N
UM”によりノートマツプからその音高値″NUM″に
対応するチャネル番号を読出し、この読出されたチャネ
ル番号に対応する楽音発生回路34のチャネルに楽音生
成停止用の楽音制御データを供給して生成中の楽音を停
止させる。
なお、読出されたチャネル番号が0゛であった場合には
その音高値”NIIM”に対応した楽音は既に停止され
ていることを示すためにその場合には何もしない。
B・0 ステップB−Mにおける判断においてノ・、ソ
ファD−BFに記憶されている演奏データがノートオフ
データでない場合には、演奏が紡了あるいは途中で停止
されているために、チャネルマツプの全てのリザーブフ
ラグRVFを“0”に設定して確保状態を解除する。
B−P  楽音生成処理ルーチン。楽音を生成する楽音
生成処理を行なう。詳細は、第13図に示されているフ
ローチャート図により後述する。
まず、チャネル確保処理ルーチン(ステップB−E、B
−I)について、第11図を参照しつつ説明する。
B−E−1チャネルマツプを参照してリザーブフラグR
VFが“0′”を示す確保状態でない各チャネルのエン
ベロープを必要(現在値)を楽音発生面834より読出
し、最もエンベロープを必要の小さいチャネルを選択す
る。
B−E−2選択されたチャネルのチャネル番号をチャネ
ル番号CHEとする。
B−E−3J択されたチャぶルのエンベロープを必要が
°“0°゛であるか否かを判断する。
B −E−4ステップB−E−3における判断において
選択されたチャネルのエンベロープを必要が“0″でな
い場合には、選択されたチャネルのエンベロープを必要
が急速に減衰するように楽音発生回路34に楽音制御デ
ータを供給する。
ナオ、B−マイコン33は楽音発生回路34に楽音制御
データを供給した後には直くにメインルーチンに戻ると
ともに、楽音発生回路34においては供給された楽音制
御データにもとづいてエンベロープを必要を急速に減衰
させる。
以上のチャネル確保処理ルーチンは、確保状態でないチ
ャネルのうちのエンベロープを必要が最も小さいチャネ
ルを選択して、そのエンベロープを必要が“°0″でな
い場合には、エンベロープを必要を急速に減衰させるも
のである。
次に、アサイン処理ルーチン(ステ、ブB−FB−J)
について、第12図を参照しつつ説明する。
B−F−1エンベロープインクラブトをマスクする。な
お、マスクされている間にエンベロープインクラブトが
かけられた場合には、エンベロープインクラブトに関す
る処理は保留され、マスクが解除されたのちに実行され
る。
B −F−2バッファD−BFに記憶されている演奏デ
ータに含まれている音高値“NUM”によって示される
生成される楽音の音高に対応するノートマツプのうちの
チャネル番号を記憶する領域に、選択されたチャネルの
チャネル番号CHEを記憶させる。また、チャネル番号
CHEにもとづいてチャネルマツプを参照して選択され
たチャネルが従前まで対応じていた音高を読出し、この
読出された音高に対応じていずれのチャネルも使用され
ていないことを示す“Oo“をノートマツプのその音高
に対応するチャネル番号を記憶する領域に記憶させる。
B −F−3チャネル番号CHEに対応するチャネルマ
ツプの音高を記憶する領域に、バッファD−BFに記憶
されている演奏データに含まれている音高値“NLIM
”によって示される生成される楽音の音高の番号を記憶
させる。また、リザーブフラグRVF (cHE)をそ
のチャネル番号CHEに対応するチャネルが確保状態で
あることを示す“1”に設定する。さらに、バッファD
−BPに記憶されている演奏データに含まれている音高
値“NuM” 、強度値“VEL”にもとづき生成する
楽音の音高、音色、音量等を制御する楽音制御データを
求めて楽音制御データを記憶する領域に記憶させる。
B −F−4エンベロープインクラブトのマスクを解除
する。
以上のアサイン処理ルーチンは、要するに新たに生成さ
れる楽音に対応じてノートマツプ、チャネルマツプを更
新しているものである。
続いて、楽音生成処理ルーチン(ステップB・P)につ
いて、第13図を参照しつつ説明する。
B−P−1チャネル番号CHPを1″に設定する。
B −P−2チャネルマツプのチャネル番号CHPに対
応するオンフラグONF (cHP)が“1°゛である
か否かによってそのチャネル番号CHPに対応するチャ
ネルがノートオンを受取っているが未だ楽音生成を行な
っていないか否かを判断する。
B −P−3ステップB−P−2における判断において
チャネル番号CHPに対応するチャネルがノートオンを
受取っているが未だ楽音生成を行なっていない場合には
、チャネルマツプのチャネル番号CHPに対応するアイ
ドルフラグIDF (cHP)が“1゛であるか否かに
よってそのチャネル番号CHPに対応するチャネルのエ
ンベロープを必要が°“0”であるか否かを判断する。
B −P−4ステップB −P−3における判断におい
てチャネル番号に対応するチャネルのエンベロープを必
要が“0゛°である場合には、チャネルマツプからチャ
ネル番号CHPに対応するチャネルの楽音制御データを
読出し、この読出された楽音制御データを楽音発生回路
34のチャネル番号CHPに対応するチャネルに供給し
て楽音を生成する。
B −P−5チャネルマ・ノブのチャネル1号cHPに
対応するチャネルのリザーブフラグRVF(cHP) 
、オン7ラグONF (cHP) およびアイドルフラ
グIDF (cHP)を0″′に設定する。
B −P−6チャネル番号CHPが全チャネル数“10
パと等しいか否かを判断する。
B −P−7ステップB −P−6における判断におい
てチャネル番号CHPが全チャネル数“10’”と等し
くない場合には、チャネル番号CHPO値に“1”を加
えて“1”進める。
以上の楽音生成処理ルーチンは、要するにノートオンを
受取っているが未だ楽音生成を行なっておらず、かつエ
ンベロープを必要が“′0パであるチャネルに対して楽
音生成を行ない、関連するフラグを“0′”に設定する
ものである。
最後に、エンヘローブインタラプト処理ルーチンについ
て、第14図を参照しつつ説明する。
エンベロープインタラブトは、いずれかのチャネルのエ
ンベロープを必要が供給される目標値に達した場合にか
かり、次の処理が行なわれる。
X−1供給される目標値データの目標値にエンベロープ
を必要が達したチャネルのチャネル番号を楽音発生回路
34から読出してチャネル番号CHXとする。
X−2チャネル番号CHXに対応するチャネルのエンベ
ロープを必要を楽音発生回路34から読出してエンベロ
ープを必要が“0″であるか否か、言い換えればエンベ
ロープが終了したか否かを判断する。
X−3ステップX−2における判断においてチャふ小番
号CHXに対応するチャネルのエンベロープが終了して
いない場合には、所望のエンベロープ波形を形成する新
たなレートデータおよび目標値データを含む楽音制御デ
ータを楽音発生回路34に供給する。
X−4ステップX−2における判断においてチャネル番
号CHXに対応するチャネルのエンベロープが終了して
いる場合には、このチャネル番号CHXに対応するチャ
ネルのアイドルフラグ1DF(cHX)をそのチャネル
のエンベロ−プを必要が“0”であることを示す“1”
°に設定する。
χ−5チャネル番号CHXによってチャネルマツプを参
照してそのチャネル番号CHXに対応するチャネルのリ
ザーブフラグRVF (cHX)が“1”であるか否か
によってそのチャネルが確保状態であるか否かを判断す
る。
X−6ステップX−5における判断においてチャネル番
号CHXに対応するチャネルが確保状態でない場合には
、チャネル番号CHXによってチャネルマツプを参照し
てそのチャネル番号CHXに対応するチャネル音高を読
出し、この読出された音高に対応するノートマツプのう
ちのチャネル番号を記憶する領域にいずれのチャネルも
使用されていないことを示す0′′を記憶させる。
以上のエンベロープインクラブト処理ルーチンは、要す
るに供給される目標値データの目標値にエンベロープを
必要が達したチャネルに関して、エンベロープを必要が
“′O°゛でない場合にハ所望のエンベロープ波形を形
成する新たな楽音制御データを楽音発生回路34に供給
する。また、エンベロープを必要が“0パである場合に
はそのチャネルに対応するアイドルフラグIDFを“′
1゛に設定し、さらに確保状態でない場合にはノートマ
ツプを書換えているものである。
次に、本実施例の電子楽器の動作について説明する。
パネル部21の演奏開始指示の操作子をオン操作すると
演奏が開始され、自動演奏部20においてAマイコン2
3のA−RAM23Cに記憶されている演奏データの読
出しが行なわれる。この演奏データの読出しは、1個の
演奏データに関してそれぞれ演奏データ続出し処理とチ
ャネル確保指示処理とが行なわれる。まず、演奏データ
読出し処理により、読出された演奏データがノートオン
を示す場合にはノートオンデータが、ノートオフを示す
場合にはノートオフデータが楽音生成部30に供給され
る。また、チャネル確保指示処理により、読出された演
奏データがチャネル確保指示データの出力を伴うノート
オンを示す場合にはチャネル確保指示データが楽音生成
部30に供給される。なお、ある演奏データにもとづい
てチャネル確保指示データが楽音生成部30に供給され
る場合には、10m5だけ遅れて同じ演奏データにもと
づくノートオンデータが楽音生成部30に供給される。
一方、楽音生成部30にチャネル確保指示データが供給
される場合には、このチャネル確保指示データに対応じ
て後に供給されるノートオンデータに対処してチャネル
を選択し、この選択されたチャネルのエンベロープを必
要が“0°°でない場合にはエンベロープを必要の急速
減衰を行なうとともに、楽音生成用の楽音制御データを
求めて記憶させる。次に、楽音生成部3oにチャネル確
保指示データに対応したノートオンデータが供給される
場合には、選択されたチャネルに先程求めておいた楽音
制御データを供給して楽音を生成させる。
なお、ノートオフを示す演奏データが供給される場合に
は生成中の楽音を停止させる。また、チャネル確保指示
データに対応しないノートオンデータが供給される場合
には、チャネルをその時点で選択してその選択されたチ
ャネルのエンベロープを必要が“0゛でない場合にはエ
ンベロープを必要の急速減衰を行なうとともに、楽音生
成用の楽音制御データを求めて楽音を生成させる。
以上に説明したように、楽音生成開始のタイミングが重
要な楽音に関してはデータ種類“5TATIJS”の内
容を“2”に設定してチャネル確保指示データを出力す
るように演奏データを作成すると、楽音生成部30にノ
ートオンデータが供給されて楽音生成のタイミングとな
った時点においては、既にエンベロープを必要が′0゛
であるチャネルが常に用意されてエンベロープを必要の
急速減衰を改めて行なう必要がないために楽音生成が遅
れることなく行なわれる。また、楽音生成部30にノー
トオンデータが供給された時点では既に楽音制御用デー
タが用意され、改めて楽音制御用データを求める必要が
ないことも楽音生成が遅れずに行なえることに貢献して
いる。
本実施例においでは、メロディ−バート、伴奏パート、
リズムパート等の複数個のパートによる演奏については
示さなかったが、複数個のパートによる演奏を行なう場
合について、次に説明する。
なお、複数個のパートによる演奏を行なう場合にA−R
AM23Cに設定される演奏データエリアが第15図に
示されているが、本実施例における第3図に示されてい
るものと異なる点は各演奏データにその演奏データがい
ずれのパートに属するかをパート番号(1〜10)で示
す記憶領域PARTが設けられている点である。
自動演奏部20から楽音生成部30にパート番号を付し
た演奏データを供給し、楽音生成部30において第8図
に示されているノートマツプを各パート毎に設ける等し
て各パート毎に音高と対応するチャネルとを管理し、演
奏データに含まれるパート番号に対応した音色の楽音を
生成する。この場合に、特定のパート、例えば基本的な
リズム感を形成して正確な楽音生成タイミングが要求さ
れるリズムバートに関してのみチャネル確保指示データ
を出力するようにしても良い。特に、リズムバートの演
奏データに関してチャネル確保指示データを出力する場
合には、リズムバートのノートオンを示す演奏データの
データ種類“5TAT[IS”の内容をパ2”に設定す
るように演奏データを作成する。
この演奏データの作成方法としては使用者が各演奏デー
タのデータ種類の“5TATUS”をそれぞれ入力記憶
するようにしても良いが、使用者はノートオンあるいは
ノートオフとのみ演奏データを入力するだけで、リズム
バートの演奏データに関してはその演奏データがノート
オンを示す場合には自動演奏部20が自動的にデータ種
類“5TATUs“の内容を” 2 ”と記憶するよう
にしても良い。また、ノートオンを示す全ての演奏デー
タのデータ種類“5TATUS”の内容を゛1パと記憶
し、演奏データの読出しを行なう時点、具体的にはチャ
ネル確保指示処理においてリズムバートのノートオンデ
ータに関しては自動演奏部20が自動的にデータ種類“
5TATUS”の内容を′2゛とした演奏データを出力
するようにしても良い。
また、生成される楽音の音色(特定の音色)に対応じて
、例えば鋭い立上がりのエンベロープ形状を有するピア
ノ等の音色に対応じて、チャネル確保指示データを出力
するようにしても良い。例えば、楽音生成部30におい
て生成する楽音の音色切換えを指示する音色切換えデー
タを演奏データとして記憶して、この音色切換えデータ
を演奏中に楽音生成部30に供給する構成とした場合に
は、自動演奏部20において記憶されている音色切換え
データにもとづいて、特定の音色への音色切換え指示デ
ータの後に読出されるノートオンを示す演奏データに関
してチャネル確保指示データを自動的に出力するように
しても良い。
なお、全てのノートオンデータに対応じてチャネル確保
指示データを出力する場合には、ノートオンデータのデ
ータ種類“5T4TUS″の内容を°“1°゛に設定し
て記憶し、チャネル確保指示処理のステップA−F−3
において、データ種類“5TATljS”の内容が“′
1”であると判断した場合に、チャネル確保指示データ
を出力するようにしても良い。
(第2実施例);第2.3発明 第1実施例における自動演奏部20においては、演奏デ
ータの読出し時に楽音生成部30に2個の演奏データ、
言い換えればチャネル確保指示データおよびノートオン
データを供給するデータ種類“5TAT[lS“の内容
が″2″である演奏データのために、このデータ種類“
5TATUS”の内容が2”の演奏データの個数が例え
極く少なかったとしても演奏データの読出し処理を全演
奏データに関して2回づつ行なわねばならない。このた
めに、第1実施例の自動演奏部20におけるA−マイコ
ン23のA−CPLJ23Aの負担は、従来のいわゆる
自動演奏装置のものと較べて2倍になっている。
ところで、本実施例においては、従来のいわゆる自動演
奏装置と同様に演奏データのノートオンを示すデータ種
類“5TATUS”の内容としては“′1”だけとして
自動演奏部20における演奏データの読出し処理を1回
だけ行なうようにする。この代わりに、楽音生成タイミ
ングが重要なノートオンデータについては、A−マイコ
ン23のA−RAM23Cにおける演奏データエリアに
おいてそのノートオンデータよりも前に、第1実施例を
例にすれば1011Sだけ前に読出される記憶箇所にそ
のノートオンデータに対応するチャネル確保指示データ
の出力のみを指示する演奏データを記憶し、この演奏デ
ータが読出された時にチャネル確保指示データを楽音生
成部30に供給するようにして、CPUの負担増を最小
限にしつつ第1実施例と同様の効果を得ている。
次に、本実施例について具体的に説明するが、第1実施
例と同一符号は同一内容を示すとともに、特に第1実施
例と異なる部分についてのみ説明して重複する部分等の
説明等は省略する。
まず、前述のような処理を行なうためのA−RAM23
Cにおける演奏データエリアにつき、第16図を参照し
つつ説明する。
1個の演奏データを構成するデータ種類“STA”r[
JS”、音高値“NUM″、強度値”VEL”および経
過時間“5TET”の意味内容は、第1実施例の場合と
同様であるが、前述されたチャネル確保指示データの出
力のみを指示する演奏データのデータ種類“5TATI
jS”の内容は°“3”に設定されている。なお、第1
6図中において■によって示されている演奏データは、
■によって示されているノートオンの演奏データに対応
するチャネル確保指示データの出力を指示する演奏デー
タである。したがって、■、■により示されている両演
奏データの音高値“N[IM”および強度値“νEL″
の内容は同一になっているとともに、■によって示され
ている演奏データは■によって示されている演奏データ
が読出された10S後に読出されるようムこ経過時間“
5TET”の値が“′10°゛に設定されている。
自動演奏部20においては、データ種類“5TATtl
S”の内容が“3°“である演奏データを読出した場合
には、第1実施例と同様にチャネル確保指示データを楽
音生成部30に供給する。このようなデータ種類“5T
ATUS”の内容が“3“である演奏データは、使用者
によってパネル部21の操作子の操作により入力記憶さ
せるようにしても良いが、演奏のパートまたは音色に対
応じて演奏データにもとづいてチャネル確保指示データ
を出力すべき演奏データをA−マイコン23が判断して
データ種類“5TATUS”の内容が“3”である演奏
データを一連の時系列の演奏データ中に挿入するように
しても良い。
次に、第1および第2の実施例の変形例等について説明
する。
第1および第2の実施例においては、チャネル確保指示
データはいずれがのノートオンデータに必ず対応じてい
る。したがって、楽音生成部3oにおいては、チャネル
確保指示データを受取る場合にそのチャネル確保指示デ
ータに対応じて後に供給されるノートオンデータによっ
て生成される楽音のために、いずれかのチャネルを選択
し、必要に応じてそのチャネルに対するエンベロープを
必要を急速減衰させて別当てチャネルを確保している。
しかしながら、第1あるいは第2の実施例において、全
てのノートオンデータに対応じてチャネル確保指示デー
タを出力する場合には、チャネル確保指示データの出力
を指示する演奏データの音高値“NUM”および強度値
“VEL”を無視して、チャネル確保指示データに対応
じて選択されたチャネルを特定のノートオンデータと対
応させないようにしても良い。これに際して、楽音生成
部30においては、チャネル確保指示データを受取る場
合には、第1および第2の実施例と同様にいずれかのチ
ャネルを選択するとともに、アサイン処理、楽音制御デ
ータを求める処理は行なわないで必要に応じてエンベロ
ープを必要の急速減衰処理のみを行なう。なお、この時
に選択されたチャネルの確保状態はエンベロープを必要
が“0パとなった時点で解除され、次に楽音生成部30
がノートオンデータを受取った場合には改めてチャネル
を選択し直してアサイン処理、楽音制御データを求める
処理を行なって楽音を生成するようにする。したがって
、ノートオンデータを受取った時に選択されるチャネル
はエンベロープを必要が最も小さいものであるために、
結局それ以前のチャネル確保指示データによる処理によ
ってエンベロープを必要が“0゛とされたチャネルが選
択されることになり、第1および第2の実施例と同様に
エンヘロ−プを必要の急速減衰による楽音生成の遅れを
生じることはない。
また、複数個のパートによる演奏を行ない特定のパート
のノートオンに対してのみチャネル確保指示データを出
力する場合には、楽音生成部30においてチャネル確保
指示データにもとづいて選択確保されたチャネルを、特
定のパートのノートオンデータであればいずれのノート
オンデータに対しても使用するようにしても良い。これ
に際して、楽音生成部30においては、チャネル確保指
示データを受取る場合にはいずれかのチャネルを選択す
るとともに、アサイン処理、楽音制御データを求める処
理は行なわないで必要に応じてエンベロープを必要の急
速減衰処理のみを行なってそのチャネルを確保状態とす
る。そして、特定のパートに対応するノートオンデータ
を受取る場合には確保状態とされているチャネルがあれ
ばそのチャネルを選択して楽音を生成するようにすると
ともに、特定のパート以外のノートオンデータを受取る
場合には確保状態としたチャ皐ル以外のチャネルを用い
て楽音を生成するようにする。
なお、このような手法を採る場合において、和音演奏等
の複数個の楽音を同時に生成するような場合には、複数
個のチャネル確保指示データを同時に出力しなければな
らない。このような場合には、チャネル確保指示データ
の出力を指示するデータをノートオンデータの数と同じ
たけ記憶させておいても良いが、1個のチャネル確保指
示データの出力を指示するデータによって同時に複数個
のチャネル確保指示データを出力するようにして、チャ
ネル確保指示データの出力を指示するデータに同時に出
力するチャネル確保指示データの個数を示すデータを音
高値“NUM″または強度値“VEL”等の領域を用い
て含ませるようにしても良い。または、同時に複数個の
チャネル確保指示データを出力するのではなくてチャネ
ル確保指示データの出力を指示するデータに選択するチ
ャネルの数を示すデータを含ませるようにして、選択す
べきチャネルの数を示すデータを含んだチャネル確保指
示データを1個だけ出力するようにして楽音生成部30
においては指示された数のチャネルを選択確保するよう
にしても良い。また、チャネル確保指示データに、現在
生成中のいずれの楽音に対応じているチャネルを選択し
て生成中の楽音を消去するかを生成中の楽音に対応する
音高で指定するデータを含ませるようにしても良く、こ
の場合には生成中の楽音の停止により損われる音楽性が
最も小さい楽音を使用者が任意に指定できる。
ところで、チャネル確保指示データを特定のノートオン
データに関してのみ出力する場合には、いずれのノート
オンデータに関してチャネル確保指示データを出力する
かが重要となる。−度作成した演奏データを演奏するこ
とにより、楽音生成タイミングが正確か否かによってそ
のような判断をすることもできるが、このような判断は
初心者にとっては困難である。したがって、楽音生成タ
イミングが不正確になるのはエンベロープを必要の急速
減衰が行なわれる場合であることに着目して、楽音生成
部30において演奏中にそのような急速減衰が行なわれ
たことを表示するようにしても良い。これに際して、1
個の急速減衰中に別の急速減衰が重ねて行なわれた場合
等の急速減衰の度合いに応じて表示態様を変えるように
しても良い。
また、急速減衰開始時のエンベロープを必要が大きく、
急速減衰が終了するのに要する時間が大きい場合には楽
音生成タイミングを顕著に遅らせるところから、急速減
衰開始時のエンベロープを必要を合わせて表示するよう
にしても良い。さらに、急速減衰は短時間で終了してし
まうために、表示機能としては急速減衰が起った瞬間に
表示を始め、ある程度の時定数をもって表示を消すよう
なものが好ましい。この場合の時定数としては4分音符
1つ分の長さ等テンポに応じるようにしても良いし、ま
た固定でも良い。さらにまた、急′速減衰がいずれの楽
音の生成に関して起ったのかを音高表示等で表示するよ
うにしても良い。または、楽音生成部30において急速
減衰が行なわれた時に、いずれのノートオンの受取りに
もとづいて急速減衰が行なわれたかを示す情報を自動演
奏部20に供給し、自動演奏部20においてはその情報
にもとづいて急速減衰が行なわれるきっかけとなったノ
ートオンデータに対して、次回の演奏時からはそのノー
トオンに対応じてチャネル確保指示データを自動的に出
力するようにしても良い。なお、第1の実施例に適用す
る場合にはそのノートオンデータのデータ種類“5TA
TIIS”の内容を′2゛に設定し、第2の実施例に適
用する場合にはデータ種類“5TATUS”の内容が“
3″であるデータをそのノートオンデータより10オ早
く読出されるよう記憶する。
このようにすれば、作成した演奏データにもとづく演奏
を一度行なわせれば、次回からは必要な箇所でチャネル
確保指示データが自動的に出力されるようになり、使用
者がチャネル確保指示データの送出を考慮することなし
に楽音生成のタイミングが正確な演奏が行なえるように
なる。
(第3実施例);第4発明 第1実施例において説明した手法では、自動演奏部20
において演奏データを2回づつ読出すことによって楽音
生成タイミングに先立ってチャ2、ル確保指示データを
出力している。
ところで、本実施例においては、自動演奏部20が通常
のいわゆる自動演奏装置と同様に演奏データを1回だけ
読出して通常のノートオン/オフの演奏データを楽音生
成部30に供給するだけとする。
この代わりに、楽音生成部30において供給される演奏
データを所定時間だけ遅延させることによって時間をお
いて演奏データを2回づつ用いるようにして、同様の効
果を得ている。
次に、本実施例について具体的に説明するが、第1実施
例と同一符号は同一内容を示すとともに、特に第1実施
例と異なる部分についてのみ説明して重複する部分等の
説明等は省略する。
第1実施例においては自動演奏部20が演奏データを読
出す処理として演奏データ読出し処理およびチャネル確
保指示処理の2つの処理を行なったが、本実施例におい
ては自動演奏部20が通常のいわゆる自動演奏装置と同
様の動作をすれば良いことから演奏データ読出し処理の
みが行なわれる。
一方、楽音生成部300B−マイコン33には、BCP
 U33A、 B −ROM33BおよびB−RAM3
3Cに加えて本実施例においては1愁毎の所定時間毎に
タイムインクラブドをかけて所定のタイムインクラブド
処理を行なわせるタイマが設けられている。なお、その
他は第1実施例の場合と同様である。
まず、楽音生成部30におけるB−マイコン33のB−
RAM33Cに設定されている遅延バッファにつき、第
17図を参照しつつ説明する。
供給される演奏データが記憶されるとともに、この記憶
される演奏データは本実施例においては10m5の所定
時間後に読出される。第1実施例における自動演奏部2
0のA−マイコン23のA−RAM23Cに設定されて
いる演奏データエリアと同様の構成であって、1個の演
奏データに関してデータ種類″5TATIIS″、音高
値“N[IM” 、強度値“VEじおよび経過時間“5
TET”を記憶する領域より構成されている。この経過
時間“5TET”は直前の演奏データからの時間経過を
記憶して記憶されている演奏データの読出しタイミング
を規制するものであり、演奏データを読出すタイミング
を求めるには第1実施例における演奏データ読出し処理
を同様に経過時間“5TET”の値を所定時間毎に“1
”を滅じてその値が“0”′になることにより、次の続
出しタイミングを定めるものである。なお、これらの演
奏データは、共通の書込みポインタまたは読出しポイン
タでもって示される箇所に対して書込みまたは読出しが
されるように構成されている。また、−時的な記憶にし
か使用されないために、仮想的にリング状に構成されて
いるとともに、100個分の演奏データに相当する10
m5の遅延に充分な記憶容量に構成されている。
次に、楽音生成部300基本的動作について、第18図
に示されているメインルーチンのフローチャート図にも
とづき説明する。なお、本実施例においても第1実施例
と同様に楽音生成部30におけるB−マイコン330B
−RAM33Cにノートマツプおよびチャネルマツプが
設定されているとともに、エンヘローブインタラプト処
理が行なわれる。
C−A  電源の投入により所定プログラムの実行を開
始しB−RAM33Cに設定されているワーキングエリ
アをクリヤするとともに、B−インターフェース回路3
1、楽音発生回路34およびBタイマを初期設定する。
C−B  B−インターフェース回路31を介して自動
演奏部20より演奏データが供給されているか否かを判
断する。
C−CB−インターフェース回路3工から供給された1
個の演奏データを読出してバッファD・BFに記憶させ
る。
C−D  バッファD−BFに記憶されている演奏デー
タがノートオンデータであるが否かを判断する。なお、
本実施例においては自動演奏部20から供給される演奏
データはノートオンデータ、ノートオフデータおよび演
奏終了データだけであるために、供給される演奏データ
がノートオンデータでない場合にはノートオフデータあ
るいは演奏終了データである。
C−E  チャネル確保指示ルーチン。バッファD・B
Fに記憶されているノートオンデータにもとづいて第1
実施例と同様のチャネル確保処理を行なう。
C−F  アサイン処理ルーチン。バッファD−BFに
記憶されているノートオンデータにもとづいて第1実施
例と同様のアサイン処理を行なう。
C−G  遅延バッファ記憶処理ルーチン。バッファD
−BFに記憶されている演奏データをBRAM33Cに
設定されている遅延バッファに記憶させる遅延バッファ
記憶処理を行なう。詳細は、第20図に示されているフ
ローチャート図により後述する。
C−HB−タイマムこより1mS毎の所定時間毎ムこか
けられるタイマインタラブドに応じて実行されるタイマ
インクラブド処理を行なう毎にその値が“1゛増やされ
るとともに、次ステツプC・Iの楽音生成開始/停止処
理を行なう毎にステップC−Jにおいてその値が“1“
減ろされるタイムD−TMのイ直が“”0”i超えてい
るか否かを判断する。このような処理によどつ、次ステ
ツプC・1の楽音生成開始/停什処理か]、 lTl5
毎に行なわれる。
C・■ 楽音生成開始/停止処理ルーチン。遅延バッフ
ァに記憶されている演奏データを読出して楽音生成/停
止を行なう。詳細は、第21図に示されているフローチ
ャート図により後述する。
C−J  タイムD−TMの値を1′減らして、新たな
タイムD−TMO値とする。
続いて、演奏データを遅延バッファに記憶させて10m
5だけ遅延させる動作を、第19図(A)(B’)を参
照して説明する。
第1の演奏データが記憶されてから10m5以上経過し
た後に、次の演奏データが記憶される場合を示している
第19図(A)において、時刻t1において第1の演奏
データが遅延バッファに書込まれて記憶されているとす
る。この場合に、遅延バッファの第1の演奏データ対応
する経過時間“5TET”の値として10゛′を記憶さ
せ、記憶させてから経過時間“5TET”の値を1mS
毎に′1°“減らして経過時間“5TET”の値が“0
′°になった時刻t’  1において演奏データを読出
すようにする。このようにすれば、時刻t 1と時刻も
” 1との差は10m5となって、演奏データは10I
IISだけ遅延されたことになる。
その後に、第2の演奏データが時刻t2において遅延バ
ッファに記憶される場合も同様にして10m5遅延され
る。同様にして遅延バッファに記憶される演奏データは
各l0m5だけ遅延される。
次に、第1の演奏データが記憶されてから10胚以上経
過する以前に、次の演奏データが記憶される場合を示し
ている第19図(B)において、時刻t1から6ms後
の時刻t2において第2の演奏データが遅延バッファに
記憶されているとする。この場合に、第1の演奏データ
の遅延は前述と同様にして行なわれるが、第2の演奏デ
ータに関しては遅延バッファの第2の演奏データに対応
する経過時間“5TET”の値として°′6゛を記憶さ
せ、第1の演奏データを読出してから第2の演奏データ
に対応する経過時間”5TET”の値を1mS毎に1°
゛減らして経過時間“5TET”の値が“0゛になった
時刻t”  2において第2の演奏データを読出すよう
にする。このようにすれば、時刻t’  lと時刻t2
との差は6msとなり、時刻t2と時刻も 2との差は
l0m5となって第2の演奏データは10m5遅延され
る。
以上のように、直前の演奏データが記憶された時点から
の経過時間が10m5以上であれば経過時間“5TET
″の値として’io”を記憶させ、直前の演奏データが
記憶された時点からの経過時間が10m5以内であれば
経過時間“5TET”に経過時間をそのまま記憶するよ
うにする。
まず、遅延バッファ記憶処理ルーチン(ステップC−C
)について、第20図を参照しつつ説明する。
C−(、−1バッファD−BPに記憶されているデータ
種類“5TATUS”、音高値“NLIM”および強度
値“VEL”の演奏データを遅延バッファの書込みポイ
ンタによって示されている箇所に記憶させる。
C−G−2タイミング変数D−3Tの値を遅延バッファ
の書込みポインタによって示されている箇所の経過時間
“5TET”の値とする。
C−G−3タイミング変数D−3Tのイ直を“′0パに
設定する。
C−G−4書込みポインタの値に°“1“を加えて“1
“進める。
続いて、楽音生成開始/停止処理ルーチンについて、第
21図を参照しつつ説明する。
C−1−1遅延バッファに記憶されている演奏データの
経過時間“5TET”の値を減らしている最中に“°l
“に設定されるフラグCDFが°“1 ”であるか否か
を判断する。
C−1−2ステップC・I−1における判断においてフ
ラグCDFが゛′1パでない場合には、書込みポインタ
の値と読出しポインタの値とが同じか否かを判断する。
各ポインタの値が同しである場合には遅延バッファに演
奏データが記憶されていないことを示すのでメインルー
チンに戻る。
C−1−3ステップC−1−2における判断において書
込みポインタの値と読出しポインタの値とが同じでない
場合には、遅延バッファの読出しポインタで示されてい
る演奏データを続出し、データ種類“5TAT[]S”
、音高値“N[IM”および強度値“VEL”をバッフ
ァC−BFに記憶させるとともに、経過時間“5TET
”の値をタイミング変数CD−3Tとする。
C−1−4タイミング変数CD−3Tの値が0゛である
か否かを判断する。
C−1−5ステップC1−4における判断においてタイ
ミング変数CD−3Tの値が°“0゛である場合には、
演奏データを読出すタイミングであるために、バッファ
G−BPに記憶されている演奏データを読出し、この読
出された演奏データにもとづいて第1実施例のステップ
B・G、B−に−B−Pと同様の処理を行なって、楽音
の生成開始/停止、確保状態の解除を行なつ。
C−1−6読出しポインタの値に1′°を加えて“1゛
進め、次の演奏データの読出しを準備する。
C−1−7フラグCDFを“0°゛に設定する。
C−18ステップC−>4における判断においてタイミ
ング変数CD−3TO値が”0°“でない場合には、タ
イミング変数CD−3TO値を“1′°減らして時間経
過を反映させる。
C−1−9フラグCDFを演奏データの経過時間“5T
ET”の値を減らしている最中であることを示す“1゛
′に設定する。
最後に、タイマインクラブド処理ルーチンについて、第
22図を参照しつつ説明する。
Y−1遅延バッファ記憶処理を行なう毎にその値が“0
パにクリアされるとともに、当該タイマインクラブド処
理毎に値が“1°“増やされて直前の遅延バッファ記憶
処理からの時間経過を示しているタイミング変数D−3
TO値を“1′増やして、新たなタイミング変数D−3
Tとする。
Y−2タイミング変数D−3Tの値が“′10”°を超
えているか否かを判断する。
Y−3ステップY−2における判断においてタイミング
変数D−3TO値が“10°°を超えている場合には、
タイミング変数D−STの値を“10“に設定する。
したがって、時間経過によってタイミング変数D−3T
O値が“′10“を超えるようになった場合には“” 
10 ”に固定される。なお、タイミング変数D−3T
の値は電源投入時のステップC・Aによる初期化によっ
て初期値として”10’“に設定されている。
Y−4タイムD−TMの値を“′1パ増やして、新たな
タイムD −TMの値とする。
なお、本実施例の楽音生成部30においてタイマインク
ラブドをかける時間間隔は第1実施例の場合とは異なり
演奏テンポとは無関係である。
次に、本実施例の電子楽器の動作について説明する。
自動演奏部20においては、通常のいわゆる自動演奏装
置と同様に演奏タイミングに応じて演奏データを楽音生
成部30に供給するとともに、この演奏データを受取っ
た楽音生成部30は演奏データがノートオンを示すもの
である場合にはチャネル確保処理およびアサイン処理を
行なった後に、遅延ハソファにその演奏データを記憶す
る。遅延ハンファへの記憶から10m5の所定時間が経
過した場合には、記憶している演奏データを読出し、こ
の読出された演奏データにもとづいて楽音の生成開始/
停止を行なう。楽音の生成開始を行なう時点においては
エンヘローブレヘルが“0″となっているチャネルが用
意されているために正確なタイミングで楽音生成が行な
われる。
なお、楽音生成部30における受取った演奏データを所
定時間だけ遅延させる処理方法は第3実施例に示した方
法以外のものでも良い。例えば、チャネルマツプの各チ
ャネル毎にデータ種類“5TATtlS”、音高値“N
UM”および強度値“1.’EL”が構成される演奏デ
ータの内容および時間を記憶する領域をさらに設け、演
奏データを受取る場合にはその演奏データがノートオン
データであるときにはチャネル確保処理およびアサイン
処理を行なう。また、選択したチャネルの演奏データの
内容を記憶する領域に演奏データの内容を記憶させ、さ
らに時間を記憶する領域に値“°10゛を記憶させる。
また、ノートオフデータであるときにはそのノートオフ
の音高に対応じて楽音生成中のチャネルの対応する領域
に演奏データの内容および時間として値“10パを記憶
させる。また、各チャネルの時間を記憶する各領域の値
を1ms毎のタイマインタラブドに応じて“1”減らす
。この時間を記憶する領域の値が“O”になるとチャネ
ルマツプに記憶されている演奏内容を読出し、この読出
された演奏内容に応じて楽音の生成開始/停止を行なう
。なお、時間を記憶する領域の値が°“0゛となりその
時間を記憶する領域のチャネルに対応する演奏内容が読
出された場合にはそのチャネルの演奏内容を記憶する領
域に記憶されている演奏内容が無効となるようなイ直、
例えばデータ種類“5TATUS”の内容として“4“
を記憶させる。したがって、時間を記憶する領域の価が
” o ”となったときでもそのデータ種類“5TAT
US”の内容が゛′4パであった場合には楽音生成開始
/停止処理は行なわないようにする。
第1乃至第3実施例において、全てのチャネルが確保状
態である場合に、新たにチャネル確保を指示するデータ
(第3実施例の場合には単なる「ノートオンデータ」)
が供給されたときには、この「ノートオンデータ」を無
視しても良いし、または確保状態とされているチャネル
に新たな「ノートオンデータ」を強制的に割当てるよう
にしても良い。
第1乃至第3実施例の電子楽器は自動演奏部20と楽音
生成部30との両方を含むものであったが、自動演奏部
20と楽音生成部30とが別個であって、言い換えれば
別個の自動演奏装置と楽音生成装置とをMIDI規格等
の通信手段を用いて接続して演奏データの送受信を行な
うような構成であっても良い。このMIDI規格を通信
手段とする場合には、自動演奏装置から楽音生成装置に
供給されるノートオン/オフデータをMIDI規格で定
義されているノートオン/オフを示す通常のチャネル・
ボイス・メ・ノセージの形式とすれば良く、また第1お
よび第2の実施例において用いられたチャネル確保指示
データは現在のMIDI規格では未定義であるのでエク
スクル−シブ・メ・7セージ等の形式で新たに定義すれ
ば良い。
ところで、第1および第2の実施例による自動演奏部2
0を用いる場合、どのような楽音生成部(装置)が相手
方として接続されるか分らないが、本発明によるチャネ
ル確保指示データとしてのエクスクル−シブ・メソセー
ジに対応じていない従来の楽音生成装置と組合せて使用
した場合にも、楽音生成装置では単にエクスクル−シブ
・メツセージを無視するだけであり、後に供給されるノ
ートオン/オフを示すチャネル・ボイス・メツセージに
よって通常の楽音生成開始/停止がなされ正常に動作す
るために、従来の装置との互換性が保たれる。また、第
1および第2の実施例に示した楽音生成部を従来の自動
演奏装置と組合せて使用した場合にも、通常のノートオ
ン/オフを示すチャネル・ボイス・メソセージによって
楽音の生成開始/停止がなされ正常に動作し従来の装置
との互換性か保たれる。
第1乃至第3実施例においては、自動演奏部20を持つ
電子楽器について説明したが、演奏内容が楽音生成タイ
ミングに先行して知ることができる自動伴奏部を持つ電
子楽器にも本発明を通用することができる。一般に自動
伴奏においては、伴奏用鍵盤で押鍵指定した和音を構成
する各音高に関して、リズムに対応した複数回のノート
オン/オフ夫々がなされるために、和音の指定の変更が
なく和音が持続されている場合には第1乃至第3実施例
と同様に楽音生成タイミング以前に生成される楽音(楽
音の音高)を知ることができ、この楽音に対してチャふ
ルの選択を行なうことにより本発明を有効に通用できる
。また、小節頭部などで伴奏用の和音の指定が変更され
生成される楽音の音高が変更された場合には、変更され
た音高に関してノートマツプおよびチ島ネルマ、プを書
接え、和音指定の変更前に確保されたチャネルを和音指
定の変更後に生成される楽音に有効に使用できるように
する。
第1乃至第3実施例においては、チャネル確保指示デー
タによるチャネル選択を楽音生成よりも常に所定時間(
前記実施例では10m5)先行して行なっているが、先
行する時間は固定でなくても良(、楽音開始および楽音
停止のタイミングさえ正確であれば、処理の都合で多少
変化しても構わない 第1乃至第3実施例ではノートオンに関してのみ実際の
ノートオンタイミング以前にチャネル選択の処理を行な
う等の処理を行なっているが、ノートオフに関しても実
際のノートオフタイミング以前になんらかの処理を行な
うようにしても良い。
例えば、チャネル選択において、すく後にノートオフさ
れる音高に対応じているチャフルの選択の優先度を上げ
る等の処理りこ利用できる。
なお、第1乃至第3実施例の楽音生成部30においては
、チャネル確保指示データの受取りにも七ツイて、選択
シたチャネルのエンヘロープレヘルが“0パでない場合
にエンヘロープレヘルの急速減衰を行なっているが、急
速減衰を行なう条件を、エンヘローブレヘルが充分小さ
くない等地のものとしても良い。
ところで、第1実施例の自動演奏部20においては、演
奏データエリアからの演奏データの読出しを2回ずつ行
なうことにより、チャネル確保指示データを楽音生成開
始/停止を指示するデータに先立って楽音生成部30に
出力しているが、この読出しを1回だけとすることもで
きる。この場合には、演奏データエリアからの演奏デー
タの読出し時にチャネル確保指示データを出力するとと
もに、読出した演奏データを記憶手段に記憶する等して
所定時間遅延させたのちに、この演奏データにもとづき
楽音生成開始/停止を指示するデータとして出力するよ
うにしても良い。この場合の遅延する方法としては第3
実施例に示したものが使用できる(第5発明)。
【図面の簡単な説明】
第1図(A)〜(D)夫々は特許請求の範囲に記載した
第1乃至第5の発明の構成に対応するブコノク図である
とともに、 第2図乃至第14図は第1および第2の発明に対応する
本発明による電子楽器の第1実施例を説明するだめの図
面であって、 第2図は全体概略図、 第3図は自動演奏部におけるマイコンのRAMに設定さ
れている演奏データエリアの構成図、第4図乃至第7図
夫々は自動演奏部のメインルーチン、パネル処理ルーチ
ン、演奏データ読出し処理ルーチンおよびチャネル確保
指示処理ルーチンのフローチャート図、 第8図および第9図夫々は楽音生成部におけるマイコン
のRAMに設定されているノートマツプおよびチャネル
マツプの構成図、 第10図乃至第14図夫々は楽音生成部のメインルーチ
ン、チャネル確保処理ルーチン、アサイン処理ルーチン
、楽音生成処理ルーチンおよびエンヘローブインタラプ
ト処理ルーチンのフローチャート図、 第15図は変形例の第3図に対応する構成図、第16図
は第2および第3の発明に対応する本発明による電子楽
器の第2実施例を説明するだめの第3図に対応する構成
図、 第17図乃至第22図夫々は第4発明に対応する本発明
による電子楽器の第3実施例を説明するための図面であ
って、 第17図は楽音生成部におけるマイコンのRAMに設定
されている遅延バッファの構成図、第18図、第20図
乃至第22図夫々は楽音生成部のメインルーチン、遅延
バッファ記憶処理ルーチン、楽音生成開始/停止処理ル
ーチンおよびタイマインクラブド処理ルーチンのフロー
チャート図、第19図(A)(B)夫々は演奏データを
遅延バッファに記憶させて10m5だけ遅延させる動作
を説明するための説明図である。 1.1°、1パ 記憶手段 2.2’、2”  読出し手段 3.3’、3°゛ データ供給手段 10 10’    チャネル IL 11’     チャネル選択手段12、12’
    楽音生成制御手段13、13’    遅延手
段 20       自動演奏部 3A 3B 3C 3D 3A 3B 3C パネル部 バス A−マイコン −CPLJ −ROM −RAM タイマ A−インターフェース回路 楽音生成部 B−インターフェース回路 バ  ス −CPU −ROM −RAM 楽音発生回路 増幅器 スピーカ 第3図 第4図

Claims (1)

  1. 【特許請求の範囲】 1(a)時間系列に構成される一連の演奏データを記憶
    可能な記憶手段、 (b)この記憶手段に記憶されている一連の演奏データ
    を順次に所要時間間隔を置いて少なくとも2度読出す読
    出し手段および (c)この読出し手段による前の読出しによって読出さ
    れる一連の演奏データのうちから少なくとも楽音生成タ
    イミングの重要な楽音生成開始を示す演奏データに関し
    てチャネル確保を指示するデータを楽音生成部に供給す
    る一方、後の読出しにより読出される一連の演奏データ
    により楽音生成開始/停止を指示するデータをその楽音
    生成部に供給するデータ供給手段 を具えることを特徴とする電子楽器。 2(a)時間系列に構成される一連の楽音生成開始/停
    止を指示するデータ間に、少なくとも楽音生成タイミン
    グの重要な楽音生成開始を指示するデータに関連させて
    時間的にその楽音生成開始を指示するデータの前にチャ
    ネル確保を指示するデータが挿入される演奏データを記
    憶可能な記憶手段、 (b)この記憶手段に記憶されている一連の演奏データ
    を順次に読出す読出し手段および(c)この読出し手段
    により読出される一連の演奏データを順次に楽音を生成
    する楽音生成部に供給するデータ供給手段 を具えることを特徴とする電子楽器。 3(a)楽音生成用の複数個のチャネル、 (b)これらチャネルのうちのいずれかのチャネルを順
    次に供給される時間系列に構成される一連の演奏データ
    のうちのチャネル確保を指示するデータによって選択す
    るとともに、この選択されたチャネルのエンベロープを
    必要に応じて急速に減衰させるチャネル選択手段および (c)このチャネル選択手段により選択されたチャネル
    によって、順次に供給されるその一連の演奏データのう
    ちの楽音生成開始を指示するデータにもとづき楽音を生
    成させる楽音生成制御手段 を具えることを特徴とする電子楽器。 4(a)楽音生成用の複数個のチャネル、 (b)これらチャネルのうちのいずれかのチャネルを順
    次に供給される時間系列に構成される一連の演奏データ
    のうちの楽音生成開始を指示するデータによって選択す
    るとともに、この選択されたチャネルのエンベロープを
    必要に応じて急速に減衰させるチャネル選択手段、 (c)前記一連の演奏データを所定時間だけ遅延させる
    遅延手段および (d)この遅延手段により遅延された一連の演奏データ
    のうちの楽音生成開始を指示するデータにもとづいて前
    記チャネル選択手段によって選択されたチャネルにより
    楽音を生成させる楽音生成制御手段 を具えることを特徴とする電子楽器。 5(a)時間系列に構成される一連の演奏データを記憶
    可能な記憶手段、 (b)この記憶手段に記憶されている一連の演奏データ
    を順次に読出す読出し手段および(c)この読出し手段
    によって読出される一連のデータを所定時間だけ遅延さ
    せる遅延手段、 (d)前記読出し手段により読出される一連の演奏デー
    タのうちから少なくとも楽音生成タイミングの重要な楽
    音生成開始を示す演奏データに関してチャネル確保を指
    示するデータを楽音生成部に供給する一方、前記遅延手
    段により読出される一連の演奏データにより楽音生成開
    始/停止を指示するデータをその楽音生成部に供給する
    データ供給手段 を具えることを特徴とする電子楽器。
JP2179056A 1990-07-05 1990-07-05 電子楽器 Expired - Fee Related JP2753765B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2179056A JP2753765B2 (ja) 1990-07-05 1990-07-05 電子楽器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2179056A JP2753765B2 (ja) 1990-07-05 1990-07-05 電子楽器

Publications (2)

Publication Number Publication Date
JPH0467099A true JPH0467099A (ja) 1992-03-03
JP2753765B2 JP2753765B2 (ja) 1998-05-20

Family

ID=16059346

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2179056A Expired - Fee Related JP2753765B2 (ja) 1990-07-05 1990-07-05 電子楽器

Country Status (1)

Country Link
JP (1) JP2753765B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05249968A (ja) * 1992-03-05 1993-09-28 Yamaha Corp 発音割当手段を有する楽音合成装置
JP2019168515A (ja) * 2018-03-22 2019-10-03 カシオ計算機株式会社 電子楽器、方法及びプログラム
JP2022140812A (ja) * 2018-03-22 2022-09-27 カシオ計算機株式会社 電子楽器、方法及びプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05249968A (ja) * 1992-03-05 1993-09-28 Yamaha Corp 発音割当手段を有する楽音合成装置
JP2019168515A (ja) * 2018-03-22 2019-10-03 カシオ計算機株式会社 電子楽器、方法及びプログラム
JP2022140812A (ja) * 2018-03-22 2022-09-27 カシオ計算機株式会社 電子楽器、方法及びプログラム

Also Published As

Publication number Publication date
JP2753765B2 (ja) 1998-05-20

Similar Documents

Publication Publication Date Title
US7572968B2 (en) Electronic musical instrument
US7432437B2 (en) Apparatus and computer program for playing arpeggio with regular pattern and accentuated pattern
EP1729283B1 (en) Tone synthesis apparatus and method
US6211453B1 (en) Performance information making device and method based on random selection of accompaniment patterns
US7105735B2 (en) Electronic musical instrument
EP3057090A1 (en) Technique for reproducing waveform by switching between plurality of sets of waveform data
JP4186851B2 (ja) 演奏情報表示装置およびプログラム
US6177624B1 (en) Arrangement apparatus by modification of music data
JP4048630B2 (ja) 演奏支援装置、演奏支援方法、および演奏支援プログラムを記録した記録媒体
JP5228315B2 (ja) 自動伴奏生成装置および自動伴奏生成方法を実現するためのプログラム
US7271330B2 (en) Rendition style determination apparatus and computer program therefor
JPH09134173A (ja) 自動演奏装置の表示制御方法および表示制御装置
JPH0467099A (ja) 電子楽器
US6066793A (en) Device and method for executing control to shift tone-generation start timing at predetermined beat
US6535772B1 (en) Waveform data generation method and apparatus capable of switching between real-time generation and non-real-time generation
US6274798B1 (en) Apparatus for and method of setting correspondence between performance parts and tracks
US6417438B1 (en) Apparatus for and method of providing a performance guide display to assist in a manual performance of an electronic musical apparatus in a selected musical key
JP4070315B2 (ja) 波形再生装置
JP3409642B2 (ja) 自動演奏装置、自動演奏データ処理方法及び電子的情報記憶媒体
JP3587133B2 (ja) 発音長決定方法と装置及び記録媒体
JP4685226B2 (ja) 波形再生用自動演奏装置
JP4106798B2 (ja) 音源装置
JP3052875B2 (ja) シーケンスデータ編集方法およびシーケンサ
JP4040181B2 (ja) 波形再生装置
JP2007178890A (ja) 自動演奏装置

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees