JP2570819B2 - 電子楽器 - Google Patents

電子楽器

Info

Publication number
JP2570819B2
JP2570819B2 JP63155627A JP15562788A JP2570819B2 JP 2570819 B2 JP2570819 B2 JP 2570819B2 JP 63155627 A JP63155627 A JP 63155627A JP 15562788 A JP15562788 A JP 15562788A JP 2570819 B2 JP2570819 B2 JP 2570819B2
Authority
JP
Japan
Prior art keywords
tone
register
data
key
keyboard
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
JP63155627A
Other languages
English (en)
Other versions
JPH01321480A (ja
Inventor
朗 飯塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP63155627A priority Critical patent/JP2570819B2/ja
Publication of JPH01321480A publication Critical patent/JPH01321480A/ja
Application granted granted Critical
Publication of JP2570819B2 publication Critical patent/JP2570819B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 「産業上の利用分野」 この発明は、外部接続機器に応じてマイナスプレイを
有効あるいは無効にすることが可能な電子オルガン等の
電子楽器に関する。
「従来の技術」 従来、自動演奏装置が接続されて、この自動演奏装置
の制御下で楽曲の自動演奏を行うことが可能な電子オル
ガンが知られている。ここで、この自動演奏装置は、楽
曲の進行順に鍵盤演奏データが記憶された記憶媒体を備
えており、この記憶媒体から鍵盤演奏データを順次読み
出し、電子オルゴンに供給する。また、電子オルガンに
は、U鍵盤(上鍵盤)、L鍵盤(下鍵盤)、P鍵盤(足
鍵盤)の各鍵盤を有するものがあるが、上述した自動演
奏装置が接続されて用いられる電子オルガンの中には、
これら各鍵盤の内、指定された鍵盤に対応する鍵盤演奏
データを無効にする機能(マイナスプレイ機能)を有す
る電子オルガンがある。この種の電子オルガンでは、利
用者が操作パネルのスイッチによって指定した鍵盤以外
の鍵盤演奏は自動演奏装置からの鍵盤演奏データによっ
て行われ、利用者が指定した鍵盤については利用者が鍵
盤を直接操作することによって楽音が発生される。すな
わち、利用者はこの電子オルガンにおいて、所望の鍵盤
の練習を行うことができるようになっている。
第16図は従来の電子オルガン11および自動演奏装置20
を示す図である。電子オルガン11には、自動演奏装置20
から送られてくるU鍵盤、L鍵盤、P鍵盤の各鍵盤演奏
データの内、無効にするものを指定するマイナスプレイ
スイッチ5a1、5a2、5a3が各々設けられている。すなわ
ち、この電子オルガン11では、例えばマイナスプレイス
イッチ5a1がONされると、自動演奏装置20からの鍵盤演
奏データの内、L鍵盤およびP鍵盤に対応するデータは
有効となり、これに対応する楽音は発生されるが、U鍵
盤に対応するデータは無効となり、これに対応する楽音
は発生されない。そこで、利用者は電子オルガン11のU
鍵盤を直接操作して楽音を発生し、U鍵盤演奏の練習を
行うことができる。
「発明が解決しようとする課題」 ところで、上述した従来の電子オルガンでは、例え
ば、第17図に示すように、外部接続機器として自動演奏
装置20でなくキーボード30が接続された場合でもマイナ
スプレイ機能が働く。このため、例えば電子オルガン11
においてマイナスプレイスイッチ5a1がONされている
と、キーボード30のU鍵盤を操作して鍵盤演奏データを
電子オルガン11に供給しても、その楽音が発生されない
という問題があった。
この発明は上述した事情に鑑みてなされたもので、マ
イナスプレイ指定がされていても自動演奏装置による楽
曲再生中でない限りマイナスプレイを無効にすることが
できる電子楽器を提供することを目的としている。
「課題を解決するための手段」 この発明は、複数のパートに各々対応する楽音を形成
する楽音形成手段と、前記楽音形成手段における所望の
パートの楽音形成を禁止する楽音形成禁止手段と、外部
装置からの演奏データを前記楽音形成手段に供給する演
奏データ入力手段とを備えた電子楽器において、 前記外部装置が自動演奏装置であって、かつ、楽曲再
生中であることを検出する自動演奏検出手段と、 前記自動演奏検出手段が上記検出を行った場合に前記
楽音形成禁止手段における楽音形成禁止動作を有効に
し、前記自動演奏検出手段が上記検出を行わない場合に
前記楽音形成禁止手段における楽音形成禁止動作を無効
にするマイナス演奏制御手段と を具備することを特徴としている。
「作用」 上記構成によれば、外部装置として自動演奏装置が電
子楽器に接続された場合、演奏データが自動演奏装置か
ら電子楽器に供給される。そして、自動演奏装置におい
て楽曲再生が行われると、これが自動演奏検出手段によ
って検出される。そしてマイナス演奏制御手段によって
楽音形成禁止手段の楽音形成禁止動作が有効とされる。
この結果、電子楽器において、所望のパートの楽音形成
を欠いたマイナス演奏が行われる。一方、電子楽器に、
自動演奏装置ではなく、例えばキーボードが接続された
場合は、自動演奏検出手段では自動演奏装置による楽曲
再生が検出されない。従って、マイナス演奏制御手段は
楽音形成禁止手段の楽音形成禁止動作を無効とする。こ
の結果、電子楽器ではマイナス演奏が行われない。
「実施例」 以下、図面を参照して本発明の一実施例について説明
する。
第1図はこの発明の一実施例による電子オルガン10の
構成図である。この電子オルガン10は、単独で使用でき
ると共に、自動演奏装置20あるいはギーボード30といっ
た外部制御機器を接続して用いることもできるようにな
っている。この場合、自動演奏装置20およびキーボード
30では、演奏データがMIDIデータ(MIDI規格に適合した
データ)に変換されて出力される。そして、電子オルガ
ン10は、このMIDIデータに基づいて楽音を発生する。
第2図は、自動演奏装置20あるいはキーボード30から
電子オルガン10に送られるMIDIデータの通信フォーマッ
トを示したものである。この図に示すように、電子オル
ガン10には、(a)キーONデータ、(b)キーOFFデー
タ、(c)再生スタートデータ、(d)再生ストップデ
ータ、(e)音色変更データの5種類のMIDIデータが供
給される。ここで、再生スタートデータおよび再生スト
ップデータは自動演奏装置20のみから出力されるデータ
であり、各々自動演奏装置20における楽曲再生の開始お
よび終了を指示するデータである。以下、各MIDIデータ
の構成を説明する。
(a)キーONデータ キーONデータは、電子オルガン10に対し、指定鍵の楽
音発生を指示するデータである。このデータは3バイト
からなる。第1バイトは、上位4ビットが9H(Hは16進
数を示す)であり、下位4ビットには論理チャネルXが
セットされる。この論理チャネルXは、鍵盤を指定する
ものであり、論理チャネルが1Hの場合はU鍵盤、論理チ
ャネルが2Hの場合はL鍵盤、論理チャネルが3Hの場合は
P鍵盤が指定される。第2バイトは、最上位ビットが0
であり、下位7ビットにはONとすべきキーコードがセッ
トされる。ここで、キーコードは、第3図に示すよう
に、電子オルガン10の全鍵に対して割り当てられてい
る。第3バイトは、最上位ビットは0であり、下位7ビ
ットにはタッチデータがセットされる。このタッチデー
タは、押鍵強度を示すデータである。
(b)キーOFFデータ キーOFFデータは、電子オルガン10に対し、指定鍵の
楽音停止を指示するデータである。このデータは2バイ
トからなる。第1バイトは、上位4ビットは8Hであり、
下位4ビットには前述の論理チャネルXがセットされ
る。次に第2バイトは、最上位ビットが0であり、下位
7ビットにはOFFすべキーコードがセットされる。
(c)再生スタートデータ 再生スタートデータは、電子オルガン10に対し、再生
スタートを指示するデータである。このデータは2バイ
トからなる。第1バイトはF0Hであり、第2バイトは01H
である。
(d)再生ストップデータ 再生スタートデータは、電子オルガン10に対し、再生
停止を指示するデータである。このデータは2バイトか
らなる。第1バイトはF0Hであり、第2バイトは02Hであ
る。
(e)音色変更データ 音色変更データは、電子オルガン10に対し、U鍵盤、
L鍵盤、P鍵盤の内、指定する鍵盤の音色変更を指示す
るデータである。このデータは3バイトからなる。第1
バイトはF0Hであり、第2バイトは03Hである。次に、第
3バイトは、上位3ビットには論理チャネルXがセット
され、下位5ビットには変更後の音色を示す音色データ
「0〜63」がセットされる。
次に、電子オルガン10の構成を説明する。第1図にお
いて、1はCPU(中央処理装置)であり、この電子オル
ガン10全体を制御する。2はMIDI受信回路であり、自動
演奏装置20あるいはキーボード30から出力されるMIDIデ
ータを受信する。このMIDI受信回路2には、FIFO(先入
れ先出し)型のバッファが設けられており、このバッフ
ァに第1バイトから順にMIDIデータが格納される。ま
た、このMIDI受信回路2には、MIDI受信フラグが設けら
れている。このMIDI受信フラグは、MIDIデータが受信さ
れるとセットされ、バッファに格納されたMIDIデータが
すべて読み取られるとリセットされる。3はプログラム
メモリであり、電子オルガン10の制御プログラムが記憶
されている。4は鍵盤回路であり、U鍵盤4a、L鍵盤4
b、P鍵盤4cの各鍵のON/OFF状態を示すデータを出力す
ると共に、ONされたキーのタッチ情報(押鍵強度情報)
を出力する。5はスイッチ群であり、マイナスプレイス
イッチ5a1、5a2、5a3、U鍵盤音色スイッチ5b、L鍵盤
音色スイッチ5c、P鍵盤音色スイッチ5bおよびその他の
スイッチ5eが各々設けられている。6はトーンジェネレ
ータである。このトーンジェネレータ6には16個の発音
チャネルが設けられており、各発音チャネルにおいて楽
音信号が形成され、16個の発音チャネルにおいて形成さ
れた楽音信号が混合されて出力される。7はサウンドシ
ステムであり、トーンジェネレータ6から出力される楽
音信号を受けて楽音を発生する。8はレジスタ群であ
り、この電子オルガン10の動作の制御に用いられる。以
下、このレジスタ群8を構成する各レジスタおよびフラ
グを説明する。
(1)ASS:チャネル番号(0〜15)一時記憶用レジスタ (2)BRCH:MIDIデータの第1バイト格納用レジスタ (3)ENB:外部から受信したMIDIデータを処理するか無
視するかを示すフラグ。
“1"……処理する。
“0"……無視する。
(4)EVT:マイナスプレイスイッチONイベント表示用レ
ジスタ 「0」以外……マイナスプレイスイッチONイベント有
り。
「0」……マイナスプレイスイッチONイベント無し。
(5)FDP:発音チャネル(0〜15)において、P鍵盤楽
音を形成中の発音チャネルがあった場合、その発音チャ
ネルの番号が格納される。このレジスタが示す発音チャ
ネルでは急速減衰処理が行われる。
(6)i:制御変数 (7)KEY:MIDIデータあるいは鍵盤4a〜4cの押鍵により
入力されたキーコードを格納するレジスタ。
(8)KEYBUF:発音チャネルに対応したレジスタ{KEYBU
F(0)〜KEYBUF(15)}であり、最上位ビットは次の
通りキーのON/OFFを示し、下位7ビットはそのチャネル
に割り当てられているキーコードを示す。
“1"……キーON “0"……キーOFF (9)LCH:論理チャネル 「1」……U鍵盤 「2」……L鍵盤 「3」……P鍵盤 (10)LCHBUF:発音チャネルに対応してLCHBUF(0)〜L
CHBUF(15)まで16個設けられている。最上位ビットは
各発音チャネルの楽音がMIDIデータ受信によるものか内
部鍵盤操作によるものかを示す。
“1"……MIDIデータ “0"……内部鍵盤 また、下位2ビット(第0、1ビット)は論理チャネ
ル(1〜3)が書き込まれる。
(11)MIDI:現在処理中のデータがMIDIデータが内部鍵
盤4a〜4cに基づくデータかを示すフラグ。
“1"……MIDIデータ “0"……内部鍵盤 (12)MNSNO:現在ONイベントのあったマイナスプレイス
イッチが示す鍵盤種類(U/L/P)に対応する論理チャネ
ルを格納するレジスタ。
(13)MNSPLY:各論理チャネルがマイナスプレイ指定か
否かを示すレジスタであり、第5ビットがP鍵盤用、第
6ビットがL鍵盤用、第7ビットがU鍵盤用に割り当て
られている。
“1"……マイナスプレイ指定 “0"……マイナスプレイ指定ではない (14)MODE:MIDIデータの第1バイトが(F0)Hの時に
第2バイトを格納するレジスタ。
(15)OFF:キーOFFする発音チャネルの番号を示すレジ
スタ。
(16)RUN:自動演奏装置20が楽曲再生中であるか否かを
示すフラグ。
“1"……楽曲再生中 “0"……楽曲再生中ではない (17)TCH:MIDIデータあるいは内部鍵盤によって入力さ
れたタッチ情報格納用レジスタ。
(18)TNBUF:各発音チャネル毎に音色データ「0〜63」
が格納される。TNBUF(0)〜TNBUF(15)まで16組あ
る。
(19)TNNO:音色データ「0〜63」一時記憶用レジス
タ。
(20)TNREQ:MIDIデータによる音色変更データであった
場合、MIDIデータの第3バイトを格納するレジスタ。
(21)TONE:各論理チャネル毎の音色データ「0〜63」
格納用レジスタ。TONE(1)〜TONE(3)までの3組が
ある。
次に、電子オルガン10の動作を説明する。第4図はCP
U1の動作を示すメインルーチンのフローチャートであ
る。まず、ステップ101では、レジスタ群8がすべてイ
ニシャライズされる。次にステップ102に進むと、鍵盤
回路4の出力データに基づいて、鍵盤4a〜4cのいずれか
の鍵にキーONイベントがあったか否かが判断される。そ
して、判断結果が「Yes」の場合はステップ103へ進み。
「No」の場合はステップ104へ進む。
ステップ103へ進むと、キーON処理ルーチンが起動さ
れ、キーON処理が実行される。第5図はキーON処理ルー
チンのフローチャートである。まず、ステップ201で
は、キーONイベントが発生したキーが属する鍵盤の種別
を示す論理チャネルXがLCHレジスタにセットされる。
次にステップ202に進むと、ONされたキーのキーコード
がKEYレジスタにセットされる。次にステップ203に進む
と、タッチ情報がTCHレジスタにセットされる。次にス
テップ204に進むと、MIDIフラグに“0"がセットされ
る。
次にステップ205に進むと、サウンドON処理ルーチン
が起動され、サウンドON処理が実行される。第6図はサ
ウンドON処理ルーチンのフローチャートである。まず、
ステップ301では、トーンジェネレータ6の16組の発音
チャネルにおいて、最も楽音信号のレベルが減衰してい
る発音チャネルの番号がASSレジスタにセットされる。
次にステップ302に進むと、ASSレジスタが示す発音チャ
ネルにおいて、現在発音中の楽音を急速に減衰させる急
速減衰処理が行われる。次にステップ303に進むと、PK
チェック処理ルーチンが起動される。
第7図は、PKチェック処理ルーチンのフローチャート
である。この電子オルガン10においては、P鍵盤は単音
のみ発音が可能である。従って、P鍵盤が押鍵された場
合に、トーンジェネレータ6の発音チャネルの中に現在
P鍵盤楽音信号を出力しているものがある時には、その
発音チャネルの楽音信号を急速減衰させる必要がある。
このPKチェック処理ルーチンは発音チャネルの中に現在
P鍵盤楽音信号を出力中のものの発音チャネル番号を調
べるものである。まず、ステップ401では、FDPレジスタ
にFF Hが初期設定される。次にステップ402に進むと、
レジスタLCHが3であるか否か、すなわち、キーONの対
象がP鍵盤であるか否かが判断される。そして、判断結
果が「Yes」の場合はステップ403へ進み、「No」の場合
はこのルーチンでの処理を終了し、このルーチンの起動
元に復帰する。
次にステップ403に進むと、制御変数iに0が初期設
定される。次にステップ404に進むと、LCHBCF(i)レ
ジスタの下位2ビット(第0、1ビット)の内容がLCH
レジスタの内容(この場合「3」)に等しく、かつ、LC
HBUF(i)レジスタの最上位ビットの内容がMIDIフラグ
の内容に等しいか否かが判断される。ここで、LCHBUF
(i)レジスタの下位2ビットの内容は、第i番目の発
音チャネルがP鍵盤楽音信号を出力中の場合は「3」に
なっている。また、LCHBUF(i)の最上位ビットは、第
i番目の発音チャネルにおける楽音信号発生が内部鍵盤
操作による場合は“0"がセットされており、MIDIデータ
によるの場合は“1"がセットされている。また、このPK
チェック処理ルーチンはキーON要求があった場合に起動
されるが、起動の際、このキーON要求が内部鍵盤操作に
よる場合は“0"が、MIDIデータによる場合は“1"がMIDI
フラグにセットされる。すなわち、上述したステップ40
4では、現在着目している第i番目の発音チャネルが、
P鍵盤楽音信号を出力中であり、かつ、その楽音発生原
因(内部鍵盤/MIDIデータ)がMIDIフラグの内容と一致
しているか否かが判断される。そして、判断結果が「Ye
s」の場合はステップ407に進み、「No」の場合はステッ
プ405に進む。次にステップ405に進むと、制御変数iが
インクリメントされる。次にステップ406に進むと、制
御変数iが16より小さいか否かが判断され、判断結果が
「Yes」の場合はステップ404に戻り、「No」の場合はこ
のルーチンでの処理を終了し、このルーチンの起動元に
復帰する。
次にステップ407に進むと、制御変数i、すなわち、
P鍵盤楽音信号を出力中の発音チャネルの番号iが、FD
Pレジスタにセットされる。次にステップ408に進むと、
FDPレジスタの内容がASSレジスタの内容に等しいか否か
が判断され、判断結果が「Yes」の場合はステップ409に
進み、「No」の場合はこのルーチンでの処理を終了し、
このルーチンの起動元に復帰する。次にステップ409に
進むと、FDPレジスタにFF Hがセットされる。以下、こ
の理由について述べる。この時点で、ASSレジスタが示
す発音チャネルでは既に急速減衰処理が終了している
(第6図のステップ302)。また、後述するPK急速減衰
処理において、FDPレジスタが示す発音チャネルでは急
速減衰処理が行われる。従って、このステップ409で
は、ASSレジスタが示す発音チャネルが2重に急速減衰
処理されるのを防止するために、FDPレジスタとASSレジ
スタの内容が一致した場合には、FDPレジスタにFF Hを
格納するという処理が行われる。これにより、このルー
チンの処理は終了し、このルーチンの起動元へ復帰す
る。このルーチンの処理終了後、FDPレジスタには、急
速減衰処理をすべき発音チャネルの番号が格納されてい
る。また、該当する発音チャネルがない場合、FDPレジ
スタにはFF Hが格納されている。
さて、上述したステップ303のPKチェック処理が終わ
ると、第6図のステップ304へ進む。ステップ304では、
KEYレジスタの内容と80Hとの論理和が演算され、演算結
果がKEYBUF(ASS)レジスタに格納される。この結果、K
EYBUF(ASS)レジスタ(16個のKEYBUFレジスタの内のAS
Sレジスタ内のデータが示すKEYBUFレジスタ)の内容
は、最上位ビットが“1"で、キーコードを表す下位7ビ
ットはKEYレジスタの下位7ビットと等しくなる。次に
ステップ305に進むと、LCHレジスタの内容がLCHBUF(AS
S)レジスタに格納される。次にステップ306に進むと、
LCHBUF(ASS)レジスタの最上位ビットがMIDIフラグの
内容に置き換えられる。
次にステップ307に進むと、TNBUF(ASS)レジスタの
内容とTONE(LCH)レジスタの内容が等しいか否かが判
断される。そして、判断結果が「Yes」の場合はステッ
プ310へ進み、「No」の場合はステップ308に進む。次に
ステップ308に進むと、TNBUF(ASS)レジスタにTONE(A
SS)レジスタの内容が格納される。次にステップ309に
進むと、トーンジェネレータ6のASSレジスタが示す発
音チャネルにTONE(LCH)レジスタの内容が音色パラメ
ータとして供給される。次にステップ310に進むと、ト
ーンジェネレータ6において、KEYレジスタが示すキー
コードおよびTCHレジスタが示すタッチ情報により、キ
ーON処理が行われ、ASSレジスタが示す発音チャネルに
おいて楽音信号が発生される。
次にステップ311に進むと、PK急速減衰処理ルーチン
が起動され、PK急速減衰処理が実行される。第8図は、
PK急速減衰処理ルーチンのフローチャートである。ま
ず、ステップ501では、FDPレジスタの内容がFF Hである
か否かが判断される。そして、判断結果が「Yes」の場
合はこのルーチンでの処理を終了して、このルーチンの
起動元に復帰し、判断結果が「No」の場合はステップ50
2に進む。ステップ502に進むと、KEYBUF(FDP)レジス
タの最上位ビットに“0"がセットされる。この結果、FD
Pレジスタが示す発音チャネルがキーOFF指定される。次
にステップ503に進むと、トーンジェネレータ6の中のF
DPレジスタが示す発音チャネルにおいて急速減衰処理が
行われる。そして、このルーチンでの処理は終了する。
第6図において、ステップ311のPK急速減衰処理が終
了すると、サウンドON処理ルーチンの全処理は終了す
る。そして、第5図におけるステップ205のサウンドON
処理が終了すると、キーON処理ルーチンの全処理は終了
となる。そして、第4図におけるステップ103のキーON
処理が終了すると、処理はステップ102に戻る。
次にステップ104に進むと、MIDI受信回路2が走査さ
れ、MIDIデータがあったか否かが判断される。そして、
判断結果が「Yes」の場合はステップ105へ進み、「No」
の場合はステップ106へ進む。
次にステップ105に進むと、MIDI入力処理ルーチンが
起動され、MIDI入力処理が実行される。第9図は、MIDI
入力処理ルーチンのフローチャートである。まず、ステ
ップ601では、MIDI受信回路2内のバッファからMIDIデ
ータの第1バイトが読み取られ、これがBRCHレジスタに
格納される。次にステップ602に進むと、BRCHレジスタ
の上位4ビットの内容が(9)Hである否か、すなわ
ち、受信されたMIDIデータがキーONデータ{第2図
(a)参照}であるか否かが判断される。そして、判断
結果が「Yes」の場合はステップ617へ進み、「No」の場
合はステップ603へ進む。次にステップ603に進むと、BR
CHレジスタの上位4ビットの内容が8Hであるか否か、す
なわち、受信されたMIDIデータがキーOFFデータ{第2
図(b)参照}であるか否かが判断される。そして、判
断結果が「Yes」の場合はステップ623へ進み、「No」の
場合はステップ604へ進む。次にステップ604に進むと、
BRCHレジスタの内容がF0Hであるか否か、すなわち、受
信されたMIDIデータが再生スタートデータあるいは再生
ストップデータ{第2図(c)、(d)参照}であるか
否かが判断される。そして、判断結果が「Yes」の場合
はステップ606へ進み、「No」の場合はステップ605へ進
む。次にステップ605へ進むと、音量制御あるいはリズ
ム制御といった処理が行われ、このルーチンの起動元に
復帰する。
次にステップ606に進むと、MIDI受信回路2内のバッ
ファからMIDIデータの第2バイトが読み取られ、MODEレ
ジスタに格納される。次にステップ607に進むと、MODE
レジスタの内容が01Hであるか否か、すなわち、受信さ
れたMIDIデータが再生スタートデータであるか否かが判
断される。そして、判断結果が「YES」の場合はステッ
プ608へ進み、「No」の場合はステップ609へ進む。次に
ステップ608へ進むと、RUNフラグに“1"がセットされ、
このルーチンの起動元に復帰する。ここで、RUNフラグ
が“1"であるということは、自動演奏装置20が楽曲再生
中であることを示す。
次にステップ609に進むと、MODEレジスタの内容が02H
であるか否か、すなわち、受信されたMIDIデータが再生
ストップデータであるか否かが判断される。そして、判
断結果が「Yes」の場合はステップ610へ進み、「No」の
場合はステップ612へ進む。次にステップ610に進むと、
RUNフラグに“0"がセットされる。ここで、RUNフラグが
“0"であることは、自動演奏装置20が楽曲再生中でない
ことを示す。
次にステップ611に進むと、MIDIOFF処理ルーチンが起
動され、MIDIOFF処理が実行される。第10図は、MIDIOFF
処理ルーチンのフローチャートである。まず、ステップ
701では、制御変数iに0がセットされる。次にステッ
プ702に進むと、KEYBUF(i)レジスタの最上位ビット
が“1"であり、かつ、LCHBUF(i)レジスタの最上位ビ
ットが“1"であるか否かが判断される。そして、判断結
果が「Yes」の場合、すなわち、現在着目している第i
番目の発音チャネルがキーON状態であり、かつ、そのキ
ーONがMIDIデータによって行われたものである場合はス
テップ703へ進み、判断結果が「No」の場合はステップ7
05へ進む。次にステップ703に進むと、KEYBUF(i)レ
ジスタの最上位ビットに「0」がセットされる。次にス
テップ704に進むと、トーンジェネレータ6の中のiが
発音チャネルにおいて、キーOFF処理が行われ、楽音信
号がOFFされる。次にステップ705に進むと、制御変数i
がインクリメントされる。次にステップ706に進むと、
制御変数iが16より小さいか否かが判断され、判断結果
が「Yes」の場合はステップ702へ戻り、「No」の場合は
このルーチンでの処理が終了して、このルーチンの起動
元に復帰する。このようにして、このルーチンでは、16
個の発音チャネルの内、MIDIデータにより楽音形成を行
っていたチャネルにおいて、楽音形成が停止される。
第9図において、ステップ611におけるMIDIOFF処理が
終了すると、このMIDI入力処理ルーチンから起動元へ復
帰する。
次に、第9図において、ステップ612に進むと、MODE
レジスタの内容が03Hであるか否か、すなわち、受信さ
れたMIDIデータが音色変更データが否かが判断される。
そして、判断結果が「Yes」の場合はステップ613へ進
み、「No」の場合はステップ616へ進む。次にステップ6
13に進むと、MIDI受信回路2内のバッファからMIDIデー
タの第3バイトが読み取られ、これがTNREQレジスタに
格納される。次にステップ614に進むと、TNREQレジスタ
の上位6ビットがLCHレジスタに格納される。次にステ
ップ615に進むと、TONE(LCH)レジスタにTNREQレジス
タの下位6ビットが格納される。このようにして、音色
パラメータの変更が行われ、このルーチンの起動元に復
帰する。一方、ステップ616に進むと、テンポ変更処理
等が行われ、このルーチンの起動元に復帰する。
さて、MIDI受信回路2で受信されたMIDIデータがキー
ONデータであった場合は、処理はステップ617に進む。
このステップ617では、MIDI受信回路2内のバッファか
らMIDIデータの第2バイトが読み取られ、これがKEYレ
ジスタに格納される。次にステップ618に進むと、バッ
ファからMIDIデータの第3バイトが読み取られ、これが
TCHレジスタに格納される。
次にステップ619に進むと、マイナスプレイチェック
処理ルーチンが起動され、マイナスプレイチェック処理
が行われる。第11図は、マイナスプレイチェック処理ル
ーチンのフローチャートである。まず、ステップ801で
は、BRCHレジスタの下位4ビット、すなわち、キーONの
対象となる鍵が属する鍵盤種類(U/L/P)の論理チャネ
ルがLCHレジスタにセットされる。次にステップ802に進
むと、MNSPLYレジスタの第5ビット(P鍵盤用)、第6
ビット(L鍵盤用)、第7ビット(U鍵盤用)の各ビッ
トの内、LCHレジスタの論理チャネルに対応するビット
が“1"であるか否か、すなわち、MIDIデータが示す鍵盤
種類(U/L/P)とマイナスプレイスイッチ5a1、5a2、5a3
によってマイナスプレイ指定された鍵盤種類とが一致し
ているか否かが判断される。そして、判断結果が「Ye
s」の場合はステップ803へ進み、「No」の場合はステッ
プ805へ進む。次にステップ803に進むと、RUNフラグが
“1"であるか否かが判断される。そして、判断結果が
「Yes」の場合、すなわち、自動演奏装置20が楽曲再生
中の場合はステップ804へ進み、「No」の場合はステッ
プ805へ進む。次にステップ804へ進むと、ENBフラグに
“0"がセットされ、このルーチンの起動元に復帰する。
一方、ステップ805に進むと、ENBフラグに“1"がセット
され、このルーチンの起動減に復帰する。
第9図において、ステップ619におけるマイナスプレ
イチェック処理が終了すると、処理はステップ620に進
む。ステップ620に進むと、ENBフラグが“1"であるか否
かが判断される。そして、判断結果が「No」の場合はこ
のルーチンでの処理を終了し、起動元に復帰し、「Ye
s」の場合はステップ621へ進む。次にステップ621に進
むと、MIDIフラグに“1"がセットされる。次にステップ
622に進むと、前述した第6図のサウンドON処理ルーチ
ンが起動され、KEYレジスタが示すキーコード、TCHレジ
スタが示すタッチデータに基づいて、トーンジェネレー
タ6において楽音が形成され、楽音信号が出力される。
このように、MIDIデータによってキーON要求を受けた場
合、このキーON要求された鍵種がマイナスプレイ指定さ
れたものであり、かつ、自動演奏装置20が楽曲再生中で
ある場合に限って、このMIDIデータによるキーON要求は
無視される。
さて、MIDI受信回路2で受信されたMIDIデータがキー
OFFデータであった場合は、処理はステップ623に進む。
このステップ623では、MIDI受信回路2内のバッファか
らMIDIデータの第2バイトが読み取られ、これがKEYレ
ジスタに格納される。次にステップ624に進むと、前述
した第11図のマイナスプレイチェック処理ルーチンが起
動され、マイナスプレイチェック処理が行われる。この
結果、キーOFF要求された鍵の属する鍵盤種類(U/L/P)
とマイナスプレイ指定された鍵盤種類とが一致し、か
つ、自動演奏装置20が楽曲再生中の場合に限って、ENB
フラグが“0"にセットされ、そうでない場合は“1"にセ
ットされる。次にステップ625に進むと、ENBフラグが
“1"であるか否かが判断される。そして、判断結果が
「No」の場合はこのルーチンでの処理を終了して、起動
限に復帰し、「Yes」の場合はステップ626へ進む。次に
ステップ626に進むと、MIDIフラグに“1"がセットされ
る。
次にステップ627に進むと、サウンドOFF処理ルーチン
が起動され、サウンドOFF処理が行われる。第12図は、
サウンドOFF処理ルーチンのフローチャートである。ま
ず、ステップ901では、制御変数iに0が初期設定され
る。次にステップ902に進むと、LCHBUF(i)レジスタ
の最上位ビットの内容がMIDIフラグの内容と一致し、か
つ、LCHBUF(i)レジスタの下位2ビットが示す論理チ
ャネルとLCHレジスタが示す論理チャネルとが一致して
いるか否かが判断される。そして、判断結果が「Yes」
の場合はステップ903へ進み、「No」の場合はステップ9
04へ進む。次にステップ903に進むと、KEYレジスタの内
容と80Hとの論理和が演算され、この演算結果とKEYBUF
(i)レジスタの内容とが一致しているか否かが判断さ
れる。そして、判断結果が「Yes」の場合はステップ906
へ進み、「No」の場合はステップ904へ進む。次にステ
ップ904に進むと、制御変数iがインクリメントされ
る。次にステップ905に進むと、制御変数iが16より小
さいか否かが判断される。そして、判断結果が「Yes」
の場合はステップ902へ戻り、「No」の場合はこのルー
チンでの処理を終了し、起動元に復帰する。
さて、ステップ906では、制御変数iがOFFレジスタに
セットされる。次にステプ907に進むと、KEYBUF(OFF)
レジスタの最上位ビットに“0"がセットされる。次にス
テップ908に進むと、トーンジェネレータ6の中のOFFレ
ジスタが示す発音チャネルにおいて、キーOFF処理が行
われ、楽音信号がOFFされる。そして、このルーチンで
の処理を終了し、起動減に復帰する。このようにして、
このサウンドOFF処理ルーチンでは、トーンジェネレー
タ6内のキーON状態にある発音チャネルの中で、キーOF
F要求内容(キーコード、論理チャネル)に合致する発
音チャネルが判別され、楽音信号がOFFされる。
第9図において、ステップ627におけるサウンドOFF処
理が終了すると、このMIDI入力処理ルーチンでの処理を
終了し、起動元に復帰する。このように、MIDIデータに
よってキーOFF要求を受けた場合、このキーOFF要求され
た鍵種がマイナスプレイ指定されたものであり、かつ、
自動演奏装置20が楽曲再生中である場合に限って、この
MIDIデータによるキーOFF要求は無視される。
第4図において、ステップ107におけるMIDI入力処理
が終了すると、処理はステップ104へ戻る。
次にステップ106に進むと、鍵鍵回路4が走査され、
いずれかの鍵が離鍵された否か、すなわち、キーOFFイ
ベントがあったか否かが判断される。そして、判断結果
が「Yes」の場合はステップ107へ進み、「No」の場合は
ステップ108へ進む。
次にステップ107に進むと、キーOFF処理ルーチンが起
動され、キーOFF処理が実行される。第13図は、キーOFF
処理ルーチンのフローチャートである。まず、ステップ
1001では、鍵盤回路4が走査され、キーOFFイベントの
発生した鍵盤の種別(U/L/P)に対応する論理チャネル
がLCHレジスタにセットされる。次にステップ1002に進
むと、キーOFFするキーのキーコードがKEYレジスタにセ
ットされる。次にステップ1003に進むと、MIDIフラグに
“0"がセットされる。次にステップ1004に進むと、前述
した第12図のサウンドOFF処理ルーチンが起動され、ト
ーンジェネレータ6内の楽音信号出力中の発音チャネル
においてキーOFF条件(論理チャネル、キーコード)に
合致した発音チャネルが判定され、その発音チャネルに
おける楽音信号がOFFされる。そして、このキーOFF処理
ルーチンは処理を終了して、起動元に復帰する。
第4図において、ステップ107におけるキーOFF処理が
終了すると、処理はステップ106へ戻る。
次にステップ108に進むと、マイナスプレイスイッチ5
a1、5a2、5a3が操作されたか否か、すなわち、マイナス
プレイスイッチのONイベントがあったか否かが判断され
る。そして、判断結果が「Yes」の場合はステップ109へ
進み、「No」の場合はステップ110へ進む。
次にステップ109に進むと、マイナスプレイスイッチ
処理ルーチンが起動され、マイナスプレイスイッチ処理
が実行される。第14図は、マイナスプレイスイッチ処理
ルーチンのフローチャートである。まず、ステップ1101
では、マイナスプレイスイッチ5a1、5a2、5a3の内、押
されたスイッチに対応する番号がMNSNOレジスタにセッ
トされる。次にステップ1102に進むと2のMNSNO乗が演
算され、次いで、この結果得られるデータとMNSPLYレジ
スタの内容との排他的論理和が演算され、この演算結果
がMNSPLYレジスタに格納される。この結果、MNSPLYレジ
スタでは、操作されたマイナスプレイスイッチに対応す
るビットが反転される。次にステップ1103に進むと、2
のMNSNO乗を演算した結果得られるデータと、MNSPLYレ
ジスタに格納されたデータとの論理積が演算され、演算
結果がEVTレジスタに格納される。ここで、マイナスプ
レイスイッチの操作により、マイナスプレイ指定がなさ
れたものであればEVTレジスタには「0」以外のデータ
が格納されることになり、マイナスプレイ指定が解除さ
れたのであればEVTレジスタには「0」が格納されるこ
ととなる。
次にステップ1104に進むと、EVTレジスタの内容が
「0」でなく、かつ、RUNフラグが“1"であるか否かが
判断される。そして、判断結果が「No」の場合はルーチ
ンでの処理を終了して、起動元に復帰し、「Yes」の場
合、すなわち、新たなマイナスプレイ指定が行われ、か
つ、自動演奏装置20が楽曲再生中である場合はステップ
1105へ進む。
次にステップ1105に進むと、制御変数iに0が初期設
定される。次にステップ1106に進むと、LCHBUF(i)レ
ジスタの最上位ビットが“1"であり、かつ、LCHBUF
(i)レジスタの下位2ビットがMNSNOレジスタの内容
と一致しているか否かが判断される。そして、判断結果
が「Yes」の場合、すなわち、iが示す発音チャネルがM
IDIデータによって楽音形成中であり、かつ、論理チャ
ネルがマイナスプレイ指定と一致している場合はステッ
プ1107へ進み、判断結果が「No」の場合はステップ1110
へ進む。次にステップ1107に進むと、KEYBUF(i)レジ
スタの最上位ビットが“1"であるか否かが判断される。
そして、判断結果が「Yes」の場合、すなわち、iが示
す発音チャネルが楽音信号出力中である場合はステップ
1108へ進み、「No」の場合はステップ1110に進む。次に
ステップ1108に進むと、KEYBUF(i)レジスタの最上位
ビットに“0"がセットされる。次にステップ1109に進む
と、トーンジェネレータ6内のiが示す発音チャネルに
おいて、キーOFF処理が行われ、楽音信号がOFFされる。
次にステップ1110に進むと、制御変数iがインクリメン
トされる。次にステップ1111に進むと、制御変数iが16
より小さいか否かが判断される。そして、判断結果が
「Yes」の場合はステップ1106へ戻り、「No」の場合は
このルーチンでの処理を終了して、起動元に復帰する。
このようにして、このマイナスプレイスイッチ処理ルー
チンでは、マイナスプレイスイッチ操作に伴う新たなマ
イナスプレイ指定が検知され、この新たなマイナスプレ
イ指定条件に基づいて、発音チャネルにおけるキーOFF
処理が実行され、当該発音チャネルの楽音信号がOFFさ
れる。
第4図において、ステップ109におけるマイナスプレ
イスイッチ処理が終了すると、ステップ110へ進む。次
にステップ110では、音色スイッチ5b、5c、5dが操作さ
れたか否か、すなわち、音色スイッチONイベントがあっ
たか否かが判断される。そして、判断結果が「Yes」の
場合はステップ111へ進み、「No」の場合はステップ112
へ進む。
次にステップ111に進むと、音色変更処理ルーチンが
起動され、音色変更処理が行われる。第15図は音色変更
処理ルーチンのフローチャートである。まず、ステップ
1201では、操作された音色スイッチに対応する鍵盤の種
別(U/L/P)の論理チャネルがLCHレジスタにセットされ
る。次にステップ120に進むと、押された音色スイッチ
の番号がTNNOレジスタにセットされる。次にステップ12
03に進むと、TONE(LCH)レジスタにTUNOレジスタの内
容が格納される。これにより、音色スイッチが操作され
た鍵盤(U/L/P)の音色変更が行われる。なお、この音
色変更においては、発音中の楽音については音色は変更
されず、それ以後に発音される楽音について新たな音色
が適用される。
第4図において、ステップ111における音色変更処理
が終了すると、処理はステップ112に進む。次にステッ
プ112では、ボリューム調整等の処理が行われ、ステッ
プ102に戻る。
以上のようにして、この電子オルガン10は動作する。
なお、上述した実施例では、マイナスプレイ制御の対
象をキーONデータおよびキーOFFデータのみにしたが、
他に音色変更データ等も制御対象に含めてもよい。ま
た、上述の実施例では、自動演奏装置20からキーONデー
タ、キーOFFデータ等の演奏データを供給する場合につ
いて説明したが、電子オルガンが演奏データメモリを持
ち、自動演奏装置の制御によって、この演奏データメモ
リから演奏データを読み出して自動演奏するような場合
にも本発明は適用できる。また、実施例では、自動演奏
装置20からの再生スタートデータ/再生ストップデータ
によるマイナスプレイの許可/禁止制御を、全論理チャ
ネル(鍵種)に対して適用したが、マイナスプレイの許
可/禁止を特定の論理チャネルに適用するようにしても
よい。また、実施例では、演奏パートを鍵種(U/L/P)
対応で分けたが、例えば、メロディ、コード、ベースと
いったパート分けを行ってもよい。また、実施例では、
演奏データの通信手段としてMIDI信号を用いたが、他の
規格の信号であっても構わない。また、実施例では、マ
イナスプレイでないパートにおいて、内部鍵盤を操作し
た場合にその楽音が発生されるようになっているが、マ
イナスプレイでないパートは内部鍵盤が操作されてもそ
れに対応する楽音が発生されないように(自動演奏優
先)してもよい。
「発明の効果」 以上説明したように、この発明によれば、複数のパー
トに各々対応する楽音を形成する楽音形成手段と、前記
楽音形成手段における所望のパートの楽音形成を禁止す
る楽音形成禁止手段と、外部装置からの演奏データを前
記楽音形成手段に供給する演奏データ入力手段とを備え
た電子楽器において、前記外部装置が自動演奏装置であ
ってかつ、楽曲再生中であることを検出する自動演奏検
出手段と、前記自動演奏検出手段が上記検出を行った場
合に前記楽音形成禁止手段における楽音形成禁止動作を
有効にし、前記自動演奏検出手段が上記検出を行わない
場合に前記楽音形成禁止手段における楽音形成禁止動作
を無効にするマイナス演奏制御手段とを設けたので、接
続される外部装置が自動演奏装置であって、かつ、楽曲
再生中の場合に限り、マイナス演奏が有効となる電子楽
器を実現することができる。従って、外部装置としてキ
ーボードが接続されている時に、誤ってマイナスプレイ
が選択されていても、キーボードによる押鍵が無効にさ
れることがなく、操作性が向上する。
【図面の簡単な説明】
第1図はこの発明の一実施例による電子オルガン10の構
成図、第2図は同実施例で用いられるMIDIデータのフォ
ーマットを示す図、第3図は同実施例におけるキーとキ
ーコードの対応例を示す図、第4図は同実施例における
メインルーチンのフローチャート、第5図は同実施例に
おけるキーON処理ルーチンのフローチャート、第6図は
同実施例におけるサウンドON処理ルーチンのフローチャ
ート、第7図は同実施例におけるPKチェック処理ルーチ
ンのフローチャート、第8図は同実施例におけるPK急速
減衰処理ルーチンのフローチャート、第9図は同実施例
におけるMIDI入力処理ルーチンのフローチャート、第10
図は同実施例におけるMIDIOFF処理ルーチンのフローチ
ャート、第11図は同実施例におけるマイナスプレイチェ
ック処理ルーチンのフローチャート、第12図は同実施例
におけるサウンドOFF処理ルーチンのフローチャート、
第13図は同実施例におけるキーOFF処理ルーチンのフロ
ーチャート、第14図は同実施例におけるマイナスプレイ
スイッチ処理ルーチンのフローチャート、第15図は同実
施例における音色変更処理ルーチンのフローチャート、
第16図は従来の電子オルガン11と自動演奏装置20を示す
図、第17図は従来の電子オルガン11とキーボード30を示
す図である。 10……電子オルガン、20……自動演奏装置、30……キー
ボード、1……CPU、4……鍵盤回路、4a、4b、4c……
鍵盤、5……スイッチ群、5a1、5a2、5a3……マイナス
プレイスイッチ。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】複数のパートに各々対応する楽音を形成す
    る楽音形成手段と、前記楽音形成手段における所望のパ
    ートの楽音形成を禁止する楽音形成禁止手段と、外部装
    置からの演奏データを前記楽音形成手段に供給する演奏
    データ入力手段とを備えた電子楽器において、 前記外部装置が自動演奏装置であって、かつ、楽曲再生
    中であることを検出する自動演奏検出手段と、 前記自動演奏検出手段が上記検出を行った場合に前記楽
    音形成禁止手段における楽音形成禁止動作を有効にし、
    前記自動演奏検出手段が上記検出を行わない場合に前記
    楽音形成禁止手段における楽音形成禁止動作を無効にす
    るマイナス演奏制御手段と を具備することを特徴とする電子楽器。
JP63155627A 1988-06-23 1988-06-23 電子楽器 Expired - Lifetime JP2570819B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63155627A JP2570819B2 (ja) 1988-06-23 1988-06-23 電子楽器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63155627A JP2570819B2 (ja) 1988-06-23 1988-06-23 電子楽器

Publications (2)

Publication Number Publication Date
JPH01321480A JPH01321480A (ja) 1989-12-27
JP2570819B2 true JP2570819B2 (ja) 1997-01-16

Family

ID=15610133

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63155627A Expired - Lifetime JP2570819B2 (ja) 1988-06-23 1988-06-23 電子楽器

Country Status (1)

Country Link
JP (1) JP2570819B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0413188A (ja) * 1990-05-02 1992-01-17 Brother Ind Ltd 楽器音合奏機能付きカラオケ装置
JP3239411B2 (ja) * 1992-01-08 2001-12-17 ヤマハ株式会社 自動演奏機能付電子楽器

Also Published As

Publication number Publication date
JPH01321480A (ja) 1989-12-27

Similar Documents

Publication Publication Date Title
US5414209A (en) Electronic musical instrument
JP3296518B2 (ja) 電子楽器
JP2629891B2 (ja) 楽音信号発生装置
JP2570819B2 (ja) 電子楽器
US5430242A (en) Electronic musical instrument
US5177314A (en) Timbre setting device for an electronic musical instrument
JP3192597B2 (ja) 電子楽器の自動演奏装置
JP2885333B2 (ja) 電子楽器
JP3226268B2 (ja) コンサートマジック自動演奏装置
JPH06242781A (ja) 電子楽器
JP3121196B2 (ja) 電子楽器
JP3034398B2 (ja) 電子楽器の制御装置
JPH06337674A (ja) 電子楽器の自動演奏装置
JP3595676B2 (ja) 楽音生成装置及び楽音生成方法
JP2953217B2 (ja) 電子楽器
JPH10319949A (ja) 電子楽器
JP3150580B2 (ja) 自動演奏装置及び自動演奏方法
JP2858314B2 (ja) 楽音特性制御装置
JPH05108068A (ja) フレーズ情報入出力装置
JP3026479B2 (ja) 楽音信号生成装置
JP3169535B2 (ja) 自動演奏装置及び自動演奏方法
JP3097888B2 (ja) 電子楽器の音量設定装置
JPH06250650A (ja) 電子楽器
JPH07295564A (ja) 電子楽器
JPH04283797A (ja) 楽音形成装置