JPH0764553A - Electronic musical instrument - Google Patents

Electronic musical instrument

Info

Publication number
JPH0764553A
JPH0764553A JP5214413A JP21441393A JPH0764553A JP H0764553 A JPH0764553 A JP H0764553A JP 5214413 A JP5214413 A JP 5214413A JP 21441393 A JP21441393 A JP 21441393A JP H0764553 A JPH0764553 A JP H0764553A
Authority
JP
Japan
Prior art keywords
event
performance information
priority
tone
input
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.)
Pending
Application number
JP5214413A
Other languages
Japanese (ja)
Inventor
Kazunori Matsuda
寿徳 松田
Yasushi Sato
康史 佐藤
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.)
Kawai Musical Instrument Manufacturing Co Ltd
Original Assignee
Kawai Musical Instrument Manufacturing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawai Musical Instrument Manufacturing Co Ltd filed Critical Kawai Musical Instrument Manufacturing Co Ltd
Priority to JP5214413A priority Critical patent/JPH0764553A/en
Publication of JPH0764553A publication Critical patent/JPH0764553A/en
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

PURPOSE:To provide an electronic musical instrument capable of reproducing an almost fixed playing state even when a large pieces of playing information are generated simultaneously. CONSTITUTION:When an event representing the playing information generated accoridng to input from a key board and a control panel is performed, each event is stored by separating to a priority event queue or nonpriority event queue according to priority set corresponding to the event in advance. The event in the priority event queue is processed successively(530-540) as far as the event exists in the priority event queue, and the event in the nonpriority event queue is processed(550-560) only when no event exists in the priority event queue(530-NO), therefore, the event stored in the priority event queue can be processed preferentially. Playing can be reproduced stably by setting the priority of the playing information with high significance higher such as key depression, key separation, etc., for the melody playing area of a keyboard.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、キーボードや操作パネ
ルなどの外部操作装置からの入力に従って生成される演
奏情報に応じて電気的に楽音を発生する電子楽器に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic musical instrument that electrically generates musical tones in accordance with performance information generated in response to an input from an external operating device such as a keyboard or an operating panel.

【0002】[0002]

【従来の技術】従来より、この種の電子楽器は、キーボ
ードに加えられる操作通りに楽音を発生させるだけでな
く、キーボードの所定部分が操作された場合に、自動的
に所定のパタンの伴奏音を発生させるようなことも行な
っている。このため、電子楽器の内部においては、キー
ボードや操作パネルに加えられる操作に従った楽音を発
生させるための処理要求が発生すると共に、伴奏音を発
生させるための処理要求も自動的に発生している。そし
て、これらの処理要求は、すべて要求が発生する時系列
順に従って、順次処理されており、演奏において重要な
位置をしめるメロディーやドラム等リズムを刻むものに
ついての演奏情報も、それほど重要度の高くない、コー
ド伴奏、音色や音量等を制御する演奏情報も一律に処理
されていた。
2. Description of the Related Art Conventionally, this kind of electronic musical instrument not only produces a musical sound according to an operation applied to a keyboard, but also automatically accompanies a predetermined pattern when a predetermined portion of the keyboard is operated. We also do things like Therefore, inside the electronic musical instrument, a processing request for generating a musical sound according to an operation applied to the keyboard or the operation panel is generated, and a processing request for generating an accompaniment sound is automatically generated. There is. All of these processing requests are sequentially processed according to the time-series order in which the requests are generated, and the performance information about the melody that plays an important position in the performance, the drum, and other rhythmic information is also very important. None, performance information that controls chord accompaniment, tone color, volume, etc. was also processed uniformly.

【0003】[0003]

【発明が解決しようとする課題】しかし、このように処
理要求の発生順に処理を行った場合、同時に多くの処理
要求が発生すると、僅かの差で先に発生した重要度の低
い処理要求のために、メロディーやリズム等の重要度の
高い演奏情報の処理が遅れることがあり、リズムを刻む
タイミングがずれたり、メロディーと自動伴奏の音が前
後することによって、再現される演奏が不安定なものに
聴こえたり、同じ演奏であっても異なるものに聴こえた
りするという問題があった。
However, in the case where the processing requests are processed in the order in which they are generated in this way, if a large number of processing requests are generated at the same time, the processing request having a low importance is generated with a slight difference. In addition, the processing of highly important performance information such as melody and rhythm may be delayed, and the reproduced performance may be unstable due to the timing of the rhythm being deviated or the melody and automatic accompaniment being mixed. There was a problem that they could be heard in different sounds, or even the same performance could be heard in different things.

【0004】本発明は、上記問題点を解決するために、
一度に多くの演奏情報が発生した場合でも、ほぼ一定の
演奏状態を再現することのできる電子楽器を提供するこ
とを目的とする。
In order to solve the above problems, the present invention provides
An object of the present invention is to provide an electronic musical instrument capable of reproducing a substantially constant performance state even when a large amount of performance information is generated at one time.

【0005】[0005]

【課題を解決するための手段】上記目的を達成するため
になされた本発明の構成は、図1に例示するように、キ
ーボードや操作パネルなどの外部操作装置からの入力に
従い電気的に楽音を発生する電子楽器であって、上記外
部操作装置からの入力に従い楽音発生に関する優先度を
含む演奏情報を生成する演奏情報生成手段と、該演奏情
報生成手段により生成された演奏情報を記憶するための
演奏情報記憶手段と、上記演奏情報生成手段により生成
された演奏情報の優先度を順次識別して、該優先度毎に
上記演奏情報記憶手段へ上記演奏情報を書き込む優先度
識別手段と、上記演奏情報記憶手段から優先度の高い順
に演奏情報を読み出す演奏情報読出手段と、該演奏情報
読出手段により読み出された演奏情報に従い、楽音発生
用のデータを生成する楽音情報生成手段と、該楽音情報
生成手段により生成された楽音発生用のデータに基づき
所定の音色で発音する楽音発生手段と、を備えたことを
特徴とする電子楽器を要旨とする。
The configuration of the present invention made to achieve the above object, as shown in FIG. 1, produces an electronic musical tone according to an input from an external operating device such as a keyboard or an operating panel. An electronic musical instrument which is generated, for storing performance information generating means for generating performance information including a priority regarding generation of a musical sound in accordance with an input from the external operation device, and performance information generated by the performance information generating means. Performance information storage means, priority identification means for sequentially identifying the priority of the performance information generated by the performance information generating means, and writing the performance information in the performance information storage means for each priority, and the performance. Performance information reading means for reading performance information from the information storage means in descending order of priority and data for musical tone generation in accordance with the performance information read by the performance information reading means. And tone information generating unit that, the gist of the electronic musical instrument characterized by comprising: a tone to be generated generating means with a predetermined tone color based on the data for tone generation that is generated by the musical tone information generating means.

【0006】[0006]

【作用】上記のように構成された本発明の電子楽器にお
いては、演奏情報生成手段が、キーボードや操作パネル
などの外部操作装置からの入力に従い楽音発生に関する
優先度を含んだ演奏情報を生成し、優先度識別手段が、
演奏情報生成手段で生成された演奏情報の優先度を順次
識別して、その優先度に従って演奏情報を演奏情報記憶
手段に書き込む。
In the electronic musical instrument of the present invention constructed as described above, the performance information generating means generates performance information including a priority regarding the generation of musical tones according to an input from an external operation device such as a keyboard or an operation panel. , The priority identification means
The priority of the performance information generated by the performance information generating means is sequentially identified, and the performance information is written in the performance information storage means in accordance with the priority.

【0007】そして、演奏情報読出手段が、演奏情報記
憶手段に書き込まれている演奏情報を優先度の高い順に
読み出し、この読み出された演奏情報に従い、楽音情報
生成手段が楽音発生用のデータを生成し、この生成され
た楽音発生用のデータに基づき楽音発生手段が所定の音
色で発音する。
The performance information reading means reads the performance information written in the performance information storage means in descending order of priority, and the musical sound information generating means generates musical sound generating data in accordance with the read performance information. The musical tone generating means generates a tone with a predetermined tone color based on the generated tone generating data.

【0008】[0008]

【実施例】以下に本発明の実施例を図面と共に説明す
る。図2は、本発明の実施例である電子楽器の回路構成
を表すブロック図である。図2に示すように、本実施例
の電子楽器は、音階に応じた複数の鍵を有する鍵盤から
なるキーボード2、音色や音量等を設定するための各種
スイッチやボリュームを備えると共にその設定状態を表
示するLCD,LED等を備えた操作パネル4、これら
キーボード2および操作パネル4からの入力信号を検出
し演奏情報を生成する演奏情報発生部6、演奏情報発生
部6で生成された演奏情報に基づき楽音発生パラメータ
を生成する楽音発生パラメータ生成部8、演奏情報発生
部6と楽音発生パラメータ生成部8との間の情報交換を
仲立ちするパラレルインタフェース(PIF)部10、
楽音発生パラメータ生成部8が生成する楽音発生パラメ
ータに基づき8チャネル分のデジタルの楽音信号を生成
する楽音発生部12、楽音発生部12で生成されたデジ
タル楽音信号をアナログ楽音信号に変換するD/A変換
器14、D/A変換器14から出力されるアナログ楽音
信号を増幅してスピーカ18に出力しスピーカから楽音
を発生させる信号増幅器16から構成されている。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 2 is a block diagram showing a circuit configuration of an electronic musical instrument which is an embodiment of the present invention. As shown in FIG. 2, the electronic musical instrument of this embodiment includes a keyboard 2 including a keyboard having a plurality of keys according to a scale, various switches and volumes for setting a tone color, a volume, and the like, and the setting state thereof. An operation panel 4 having an LCD, an LED, etc. for displaying, a performance information generating section 6 for generating performance information by detecting input signals from the keyboard 2 and the operation panel 4, performance information generated by the performance information generating section 6 A tone generation parameter generation section 8 for generating a tone generation parameter based on the above, a parallel interface (PIF) section 10 for mediating information exchange between the performance information generation section 6 and the tone generation parameter generation section 8,
A musical tone generating section 12 for generating digital musical tone signals for eight channels based on the musical tone generating parameter generated by the musical tone generating parameter generating section 8 and a D / for converting the digital musical tone signal generated by the musical tone generating section 12 into an analog musical tone signal. It is composed of a signal amplifier 16 for amplifying an analog musical tone signal output from the A converter 14 and the D / A converter 14 and outputting it to a speaker 18 to generate a musical tone from the speaker.

【0009】なお、キーボード2は、所定の鍵盤より右
側をメロディ演奏領域と呼び、鍵盤の押鍵,離鍵に従っ
て音が発生するように制御され、所定の鍵盤より左側を
自動伴奏音域と呼び、押された鍵盤に基づき自動的に所
定パタンの伴奏音が発生するように制御される。
The keyboard 2 is called the melody playing area on the right side of the predetermined keyboard, and is controlled so that sound is generated according to the key press and key release of the keyboard. The left side of the predetermined keyboard is called the automatic accompaniment tone range, It is controlled so that an accompaniment sound of a predetermined pattern is automatically generated based on the pressed keyboard.

【0010】また、操作パネル4は、ピアノやバイオリ
ンなど演奏される音色を選択する音色選択スイッチ,自
動伴奏のパタンを選択するパタン選択スイッチ,自動伴
奏の開始させる自動伴奏開始スイッチ,自動伴奏の終了
させる自動伴奏終了スイッチ,音量を制御する音量制御
ボリューム,ビブラートの速さおよび深さを制御するビ
ブラート制御ボリューム,グロールの速さおよび深さを
制御するグロール制御ボリューム,左右のスピーカのバ
ランスを制御する定位制御ボリューム,音程を制御する
音程制御ボリュームを備えている。
The operation panel 4 includes a tone color selection switch for selecting a tone color to be played such as a piano or a violin, a pattern selection switch for selecting a pattern of automatic accompaniment, an automatic accompaniment start switch for starting automatic accompaniment, and an end of automatic accompaniment. Auto accompaniment end switch to control, volume control volume to control the volume, vibrato control volume to control the speed and depth of vibrato, growl control volume to control the speed and depth of growl, and the balance of left and right speakers It has a localization control volume and a pitch control volume to control the pitch.

【0011】ここで、演奏情報発生部6は、CPU2
0,ROM22,RAM24,入出力インタフェース2
8,これら各部を結ぶアドレスバス30,データバス3
2,およびCPU20に対して周期的に割込信号を発生
する図示しないインタバルタイマを備えた周知のマイク
ロコンピュータとして構成されている。
Here, the performance information generating section 6 has a CPU 2
0, ROM22, RAM24, input / output interface 2
8. Address bus 30 connecting these parts, data bus 3
2, and a well-known microcomputer provided with an interval timer (not shown) that periodically generates an interrupt signal to the CPU 20.

【0012】また、RAM24上には、キーボード2お
よび操作パネル4からの入力を検出して作成される入力
イベントを順次格納する入力イベントキュー、自動伴奏
で使用され自動伴奏処理の実行状態を表すRUNレジス
タ,自動伴奏のコード形式や根音が記憶されるコードバ
ッファ,予めROM22に設定された自動伴奏パタンデ
ータを指定するアドレス情報が格納されるパタンアドレ
スバッファ,演奏のテンポに応じて所定の値がセットさ
れ自動伴奏の演奏タイミングを制御するタイミングカウ
ントレジスタ,およびパラレルインタフェース部10へ
の書込禁止を表示するビジーバッファ等が設定される。
Further, on the RAM 24, an input event queue for sequentially storing input events created by detecting inputs from the keyboard 2 and the operation panel 4, RUN used for automatic accompaniment and representing an execution state of automatic accompaniment processing. A register, a chord buffer for storing the chord form and root note of the automatic accompaniment, a pattern address buffer for storing address information designating the automatic accompaniment pattern data set in advance in the ROM 22, and a predetermined value according to the tempo of the performance. A timing count register that is set to control the performance timing of the automatic accompaniment, a busy buffer that indicates that writing to the parallel interface unit 10 is prohibited, and the like are set.

【0013】そして、CPU20は、ROM22に予め
設定されたプログラムに従い、入出力インタフェース2
8を介してキーボード2および操作パネル4からの入力
を検出して作成される入力イベントを入力イベントキュ
ーに設定する外部操作検出処理、入力イベントキューに
設定された入力イベントより演奏情報に関するイベント
を生成し、この演奏情報イベントをパラレルインタフェ
ース部10を介して楽音発生パラメータ生成部8に転送
するメイン処理、自動伴奏の演奏情報に関するイベント
を生成し、この演奏情報イベントを楽音発生パラメータ
生成部8に転送する自動伴奏処理などを実行する。
Then, the CPU 20 follows the input / output interface 2 according to a program preset in the ROM 22.
An external operation detection process that sets an input event created by detecting input from the keyboard 2 and the operation panel 4 via the input event queue to the input event queue, and generates an event related to performance information from the input event set in the input event queue Then, the main process of transferring this performance information event to the musical tone generation parameter generation unit 8 via the parallel interface unit 10, an event related to the performance information of automatic accompaniment is generated, and this performance information event is transferred to the musical tone generation parameter generation unit 8. Performs automatic accompaniment processing.

【0014】一方、楽音発生パラメータ生成部8は、C
PU34,ROM36,RAM38,入出力インタフェ
ース40,これら各部を結ぶアドレスバス42,データ
バス44、およびCPU20に対して周期的に割込信号
を発生する図示しないインタバルタイマを備えた周知の
マイクロコンピュータとして構成されている。
On the other hand, the tone generation parameter generating section 8 uses C
The PU 34, the ROM 36, the RAM 38, the input / output interface 40, an address bus 42 connecting these parts, a data bus 44, and a well-known microcomputer provided with an interval timer (not shown) that periodically generates an interrupt signal to the CPU 20. Has been done.

【0015】また、RAM38上には、演奏情報イベン
トに予め設定されている優先度毎に演奏情報イベントを
格納する優先イベントキューおよび非優先イベントキュ
ー、優先イベントキューおよび非優先イベントキューが
いずれか一方でも新たな演奏情報イベントの書き込みが
できない状態にある時に、その旨を表示するイベント受
信禁止バッファ等が設定される。
Further, on the RAM 38, one of a priority event queue and a non-priority event queue for storing performance information events for each priority set in advance in the performance information event, a priority event queue and a non-priority event queue is provided. However, when it is not possible to write a new performance information event, an event reception prohibition buffer or the like that indicates that is set.

【0016】そしてCPU34は、ROM36に予め設
定されたプログラムに従い、パラレルインタフェース部
10に書き込まれている演奏情報イベントを読み出し、
優先イベントキューおよび非優先イベントキューに振り
分けるイベント受信処理、各イベントキューに設定され
た演奏情報イベントに応じて楽音を発生させるための各
種パラメータを生成し楽音発生部12に転送するメイン
処理等を実行する。
Then, the CPU 34 reads the performance information event written in the parallel interface section 10 according to a program preset in the ROM 36,
Performs event reception processing that distributes to priority event queues and non-priority event queues, main processing that generates various parameters for generating musical tones according to performance information events set in each event queue, and transfers them to the musical tone generator 12. To do.

【0017】次に、パラレルインタフェース部10は、
図3に示すように、演奏情報発生部6のCPU20がバ
イト単位で4バイトのデータを書き込むことができ、こ
の書き込まれた4バイトのデータを楽音発生パラメータ
生成部8のCPU34が読み出すことができるRAM5
4、CPU20からの書き込みアドレスの最下位2ビッ
トが入力され4ビットのセレクト信号QA0〜QA3を
出力するデコーダ56、CPU34からの読み出しアド
レスの最下位2ビットが入力され4ビットのセレクト信
号QB0〜QB3を出力するデコーダ58、書き込みア
ドレスの最下位2ビットが「11」の時にアクティブと
なるデコーダ56の出力QA3にセット入力が接続さ
れ、読み出しアドレスの最下位2ビットが「11」の時
にアクティブとなるデコーダ58の出力QB3にリセッ
ト入力が接続され、CPU34の割込端子に出力が接続
されたRSフリップ・フロップ(以下、RSFFとい
う)60、デコーダ58の出力QB3にセット入力が接
続され、デコーダ56の出力QA3にリセット入力が接
続され、CPU20の割込端子に出力が接続されたRS
FF62、から構成されている。
Next, the parallel interface unit 10
As shown in FIG. 3, the CPU 20 of the performance information generating section 6 can write 4-byte data in byte units, and the written 4-byte data can be read by the CPU 34 of the musical tone generating parameter generating section 8. RAM5
4, a decoder 56 that receives the least significant 2 bits of the write address from the CPU 20 and outputs 4-bit select signals QA0 to QA3, and a least significant 2 bits of the read address from the CPU 34 that receives the 4-bit select signals QB0 to QB3 The set input is connected to the output QA3 of the decoder 56, which outputs "0" when the least significant 2 bits of the write address are "11", and becomes active when the least significant 2 bits of the read address are "11". A reset input is connected to the output QB3 of the decoder 58, an RS flip-flop (hereinafter referred to as RSFF) 60 whose output is connected to the interrupt terminal of the CPU 34, and a set input is connected to the output QB3 of the decoder 58 and the decoder 56 is connected. The reset input is connected to the output QA3, RS output to write terminal is connected
It is composed of an FF 62.

【0018】つまり、パラレルインタフェース部10に
おいては、CPU20によりRAM54の第4バイト目
にデータが書き込まれると、RSFF60がセットされ
CPU34に対してデータの読み出しを要求する割込が
発生し、また、CPU34によりRAM54から第4バ
イト目のデータが読み出されると、RSFF62がセッ
トされCPU20に対して新たなデータの書き込みを許
可する割込が発生する。
In other words, in the parallel interface section 10, when the CPU 20 writes the data in the fourth byte of the RAM 54, the RSFF 60 is set and an interrupt requesting the CPU 34 to read the data is generated. When the fourth byte of data is read from the RAM 54, the RSFF 62 is set and an interrupt is generated to allow the CPU 20 to write new data.

【0019】次に、楽音発生部12は、楽音発生パラメ
ータ生成部8から受け取った楽音発生パラメータに基づ
き所定のデジタル楽音信号を発生する音源46、楽音を
発生させるのに必要な波形データが格納されているRO
M48、およびこれら各部を結ぶアドレスバス50,デ
ータバス52を備えている。
Next, the musical tone generating section 12 stores a sound source 46 for generating a predetermined digital musical tone signal based on the musical tone generating parameter received from the musical tone generating parameter generating section 8 and waveform data necessary for generating the musical tone. RO
An M48 and an address bus 50 and a data bus 52 connecting these parts are provided.

【0020】そして、音源46は、図4に示すように、
楽音発生パラメータ生成部8より受け取った8チャネル
分の楽音発生パラメータを記憶するレジスタ64、時分
割で動作して8チャネル分のデジタル楽音信号をレジス
タ64に記憶された楽音発生パラメータに基づいて生成
するオシレータ66、オシレータ66で生成された8チ
ャネル分のデジタル楽音信号の夫々に後述する定位デー
タを積算して各信号を左右2チャネルに分割し、更に左
右チャネル別々に夫々8チャネル分累算することによ
り、左右2チャネルのデジタル楽音信号を生成するデジ
タルミキサ(DMX)68を備えている。
The sound source 46, as shown in FIG.
A register 64 that stores the tone generation parameters for eight channels received from the tone generation parameter generation unit 8 and operates in time division to generate a digital tone signal for eight channels based on the tone generation parameters stored in the register 64. The oscillator 66 and the digital tone signals for 8 channels generated by the oscillator 66 are integrated with localization data described later to divide each signal into two left and right channels, and the left and right channels are separately accumulated for eight channels respectively. Accordingly, a digital mixer (DMX) 68 for generating left and right two-channel digital tone signals is provided.

【0021】また、オシレータ66は、ROM48に記
憶されている楽音波形データを読み出すデジタル・コン
トロールド・オシレータ(DCO)70、ROM48か
ら読み出された楽音波形データを補間する補間回路(I
PC)72、補間回路72が出力する楽音波形データの
周波数特性を制御し音色を変化させるデジタル・コント
ロールド・フィルタ(DCF)74、DCF74が出力
する楽音波形データの振幅を制御し音量を変化させるデ
ジタル・コントロールド・アンプリファイア(DCA)
76から構成されている。
Further, the oscillator 66 is a digital controlled oscillator (DCO) 70 for reading the musical tone waveform data stored in the ROM 48, and an interpolation circuit (I) for interpolating the musical tone waveform data read from the ROM 48.
PC) 72, a digital controlled filter (DCF) 74 for controlling the frequency characteristic of the musical tone waveform data output from the interpolation circuit 72 to change the tone color, and controlling the amplitude of the musical tone waveform data output from the DCF 74 to change the volume. Digital Controlled Amplifier (DCA)
It is composed of 76.

【0022】すなわち、楽音発生部12においては、レ
ジスタ64に書き込まれた楽音発生パラメータに従っ
て、DCO70がROM48に格納されている正規化さ
れた波形データを読み出し、読み出した波形データをI
PC72,DCF74,DCA76,DMX78が様々
に加工することにより所定の楽音信号を生成する。
That is, in the musical tone generating section 12, the DCO 70 reads the normalized waveform data stored in the ROM 48 according to the musical tone generating parameter written in the register 64, and the read waveform data is I
The PC 72, the DCF 74, the DCA 76, and the DMX 78 process variously to generate a predetermined tone signal.

【0023】上記のように構成された電子楽器において
は、キーボード2および操作パネル4が操作されると、
これを演奏情報発生部6が検出し、その操作に応じた演
奏情報を表す演奏情報イベントを作成して楽音発生パラ
メータ生成部8に転送する。楽音発生パラメータ生成部
8では、この演奏情報イベントに応じて楽音発生パラメ
ータを生成し、楽音発生部12に転送する。楽音発生部
12では、楽音発生パラメータに基づいてオシレータ6
6を動作させデジタル楽音信号を発生し、D/A変換器
14および信号増幅器16を介してスピーカ18より発
音する。
In the electronic musical instrument constructed as described above, when the keyboard 2 and the operation panel 4 are operated,
The performance information generating section 6 detects this, creates a performance information event representing the performance information according to the operation, and transfers it to the tone generation parameter generating section 8. The tone generation parameter generator 8 generates a tone generation parameter according to this performance information event and transfers it to the tone generator 12. The tone generation unit 12 uses the oscillator 6 based on the tone generation parameters.
6 is operated to generate a digital musical tone signal, which is output from the speaker 18 via the D / A converter 14 and the signal amplifier 16.

【0024】ここで演奏情報発生部6で生成され、楽音
発生パラメータ生成部8に転送される演奏情報イベント
としては、図5に示すように、キーオン,キーオフ,音
量,ビブラート,グロール,定位,周波数,音色の8種
類ある。そして、各イベントは4バイトで構成されてお
り、第1バイトは、イベント種別を示すと共に、そのイ
ベントを処理する際の優先度が示され、最上位ビットが
1の場合は優先度が高く、0の場合は優先度が低い。こ
こでは、メロディ演奏音域の鍵盤が押鍵または離鍵され
た時に生成されるキーオンイベントおよびキーオフイベ
ントのみ、最上位ビットが1とする。第4バイトはその
イベントの処理に割り当てられたオシレータ66のチャ
ネル(OSC)が示される。第2,第3バイトは各イベ
ント毎に異なる制御データが示される。すなわち、キー
オンイベントでは、第2バイトで押鍵された鍵盤の番号
KNOが第3バイトでその押鍵の強さVELが示され、
キーオフイベントでは、第2バイトで離鍵された鍵盤の
番号KNOのみが示され、音量イベントでは、16ビッ
トを用いて音量DL,DHが示され、ビブラートイベン
トおよびグロールイベントでは、ビブラートおよびグロ
ールの速さSPDと深さDPTとが夫々8ビットで示さ
れ、定位イベントでは、16ビットを用いて0000H
の時は左のスピーカからのみ、FFFFHの時は右のス
ピーカからのみ、また8000Hの時は左右スピーカの
真中から音が聴こえるといった具合いにバランスを制御
する値DL,DHが示され、周波数イベントでは、第3
バイトで半音階毎に区切られた音階△FHが示され、第
2バイトでその半音階をさらに256分の1に分割した
音階△FLが示され、音色イベントでは、第2バイトで
音色の種類を表す番号TNOのみが示される。
Here, the performance information events generated by the performance information generation unit 6 and transferred to the musical sound generation parameter generation unit 8 are, as shown in FIG. 5, key-on, key-off, volume, vibrato, groll, localization, frequency. , There are 8 kinds of tones. Each event is composed of 4 bytes, and the first byte indicates the event type and the priority when processing the event. When the most significant bit is 1, the priority is high. When 0, the priority is low. Here, the most significant bit is set to 1 only for the key-on event and the key-off event generated when the keyboard in the melody playing range is pressed or released. The fourth byte indicates the channel (OSC) of the oscillator 66 assigned to process the event. The second and third bytes show different control data for each event. That is, in the key-on event, the key number KNO of the key pressed in the second byte is shown in the third byte, and the strength VEL of the key is shown.
In the key-off event, only the number KNO of the keyboard released by the second byte is shown, in the volume event, the volume DL and DH are shown using 16 bits, and in the vibrato event and the groll event, the speed of the vibrato and groll. The SPD and the depth DPT are respectively indicated by 8 bits, and in the localization event, 16 bits are used to 0000H.
The values DL and DH for controlling the balance are shown such that the sound can be heard only from the left speaker at the time of, the sound from the right speaker at the time of FFFFH, and the sound can be heard from the middle of the left and right speakers at the time of 8000H. , Third
Bytes indicate the scale ∆FH divided into chromatic scales, the second byte indicates the scale ∆FL which is obtained by dividing the chromatic scale into 1/256, and in the tone event, the second byte indicates the type of tone color. Only the number TNO representing

【0025】次に、演奏情報発生部6のCPU20にて
実行される処理を、図6〜図12に示すフローチャート
に沿って説明する。図6は、CPU20において実行さ
れるメイン処理である。まず、ステップ110にて、R
AM24など周辺装置を初期化する。
Next, the processing executed by the CPU 20 of the performance information generator 6 will be described with reference to the flow charts shown in FIGS. FIG. 6 is a main process executed by the CPU 20. First, in step 110, R
Initialize peripheral devices such as AM24.

【0026】続くステップ120にて、入力イベントキ
ューに後述する外部操作検出処理により入力イベントが
書き込まれているか否かを判断し、書き込まれていなけ
ればステップ120を繰り返し実行して入力イベントが
書き込まれるのを待ち、入力イベントが書き込まれてい
ればステップ130に移行して入力イベント処理を実行
する。
In the following step 120, it is determined whether or not the input event is written in the input event queue by the external operation detection process described later. If not, step 120 is repeatedly executed to write the input event. Waits, and if an input event has been written, the process proceeds to step 130 and the input event processing is executed.

【0027】次に、先のステップ130にて実行される
入力イベント処理の詳細を、図7に示すフローチャート
に沿って説明する。図7に示すように、まずステップ1
40にて、入力イベントキューから入力イベントを読み
出し、その入力イベントがキーボード入力に関するもの
であるか否かを判断し、キーボード入力に関するイベン
トであれば、ステップ150に移行してキー入力イベン
ト処理を実行する。また、ステップ140にて、キーボ
ード入力に関するイベントではないと判断されると、ス
テップ160に移行して、パネル入力イベント処理を実
行する。
Next, the details of the input event processing executed in step 130 will be described with reference to the flowchart shown in FIG. As shown in FIG. 7, first, step 1
At 40, the input event is read from the input event queue, it is determined whether or not the input event is related to keyboard input, and if it is an event related to keyboard input, the process proceeds to step 150 and key input event processing is executed. To do. If it is determined in step 140 that the event is not related to keyboard input, the process proceeds to step 160 and panel input event processing is executed.

【0028】次に、先のステップ150にて実行される
キー入力イベント処理の詳細を、図8に示すフローチャ
ートに沿って説明する。まず、ステップ170にて、入
力イベントが押鍵であるか否かを判断し、押鍵であれば
ステップ180に移行する。
Next, the details of the key input event process executed in the previous step 150 will be described with reference to the flowchart shown in FIG. First, in step 170, it is determined whether or not the input event is a key press. If it is a key press, the process proceeds to step 180.

【0029】ステップ180では、押鍵された鍵盤の音
域がメロディ演奏音域であるか否かを判断し、メロディ
演奏音域であればステップ190に移行し、オシレータ
66の8チャネルの中から使用するチャネルを選択し
て、キーオンイベントを楽音発生パラメータ生成部8の
CPU34にパラレルインタフェース部10を介して転
送して本処理を終了する。また、ステップ180にて、
メロディ演奏音域でない即ち自動伴奏音域であると判断
されると、ステップ200に移行して、鍵盤の押鍵状態
から演奏すべきコードを検出してコードバッファに書き
込み、本処理を終了する。
In step 180, it is judged whether or not the tone range of the depressed key is the melody tone range, and if it is the melody tone range, the process proceeds to step 190 and the channel to be used from the eight channels of the oscillator 66. Is selected, the key-on event is transferred to the CPU 34 of the musical tone generation parameter generation unit 8 via the parallel interface unit 10, and this processing ends. Also, in step 180,
If it is determined that the tone is not in the melody tone range, that is, in the automatic accompaniment tone range, the process shifts to step 200, the chord to be played is detected from the key-depressed state of the keyboard, written in the chord buffer, and the process ends.

【0030】先のステップ170にて、入力イベントが
押鍵でない、即ち離鍵であると判断されると、ステップ
210に移行する。ステップ210では、離鍵された鍵
盤の音域がメロディ演奏音域であるか否かを判断し、メ
ロディ演奏音域であればステップ220に移行し、キー
オフイベントをCPU34にパラレルインタフェース部
10を介して転送して本処理を終了する。また、ステッ
プ210にて、鍵盤の音域がメロディ演奏音域でないと
判断された場合には、そのまま本処理を終了する。
If it is determined in the previous step 170 that the input event is not a key depression, that is, a key release, the process proceeds to step 210. In step 210, it is judged whether or not the tone range of the released key is the melody tone range, and if it is the melody tone range, the process proceeds to step 220 and the key-off event is transferred to the CPU 34 via the parallel interface section 10. This process is finished. If it is determined in step 210 that the keyboard range is not the melody performance range, this processing ends.

【0031】次に、図7のステップ160にて実行され
るパネル入力イベント処理の詳細を図9に示すフローチ
ャートに沿って説明する。まずステップ230にて、入
力イベントが音色選択スイッチを検出したものであるか
否かを判断し、音色選択スイッチを検出したものでなけ
ればステップ250に移行し、音色選択スイッチを検出
したものであればステップ240に移行して、キーボー
ド2のメロディ演奏音域が使用しているオシレータのチ
ャネルと音色選択スイッチにより選択された音色を設定
した音色イベントをパラレルインタフェース部10を介
してCPU34に転送する。
Next, the details of the panel input event process executed in step 160 of FIG. 7 will be described with reference to the flowchart shown in FIG. First, in step 230, it is determined whether or not the input event is a detection of the tone color selection switch. If the tone color selection switch is not detected, the process proceeds to step 250 and the tone color selection switch is detected. For example, in step 240, the tone channel event in which the tone channel selected by the channel of the oscillator used by the melody playing tone range of the keyboard 2 and the tone color selection switch is set is transferred to the CPU 34 via the parallel interface section 10.

【0032】ステップ250では、入力イベントがパタ
ン選択スイッチを検出したものであるか否かを判断し、
パタン選択スイッチを検出したものでなければステップ
270に移行し、パタン選択スイッチを検出したもので
あればステップ260に移行して、パタン選択スイッチ
で選択された自動演奏パタンのパタンデータが格納され
ているエリアの開始アドレスをパタンアドレスバッファ
に設定する。
In step 250, it is judged whether or not the input event is the detection of the pattern selection switch,
If the pattern selection switch is not detected, the process proceeds to step 270, and if the pattern selection switch is detected, the process proceeds to step 260, and the pattern data of the automatic performance pattern selected by the pattern selection switch is stored. Set the start address of the existing area in the pattern address buffer.

【0033】ステップ270では、入力イベントが自動
伴奏開始スイッチを検出したものであるか否かを判断
し、自動伴奏開始スイッチを検出したものでなければス
テップ290に移行し、自動伴奏開始スイッチを検出し
たものであれば、ステップ280に移行して、自動伴奏
の実行状態を示すRUNレジスタに自動伴奏中であるこ
とを示す値(例えば0FFH)を書き込む。
In step 270, it is judged whether or not the input event is a detection of the automatic accompaniment start switch, and if it is not the detection of the automatic accompaniment start switch, the process proceeds to step 290 and the automatic accompaniment start switch is detected. If so, the process proceeds to step 280, and a value (for example, 0FFH) indicating that the automatic accompaniment is being performed is written in the RUN register indicating the execution state of the automatic accompaniment.

【0034】ステップ290では、入力イベントが自動
伴奏終了スイッチを検出したものであるか否かを判断
し、自動伴奏終了スイッチを検出したものでなければス
テップ310に移行し、自動伴奏終了スイッチを検出し
たものであれば、ステップ300に移行して、RUNレ
ジスタに自動伴奏を行っていないことを示す値(例えば
00H)を書き込む。
In step 290, it is judged whether or not the input event is a detection of the automatic accompaniment end switch. If the automatic accompaniment end switch is not detected, the process proceeds to step 310 and the automatic accompaniment end switch is detected. If so, the process proceeds to step 300 and a value (for example, 00H) indicating that automatic accompaniment is not performed is written in the RUN register.

【0035】ステップ310では、入力イベントが音量
制御ボリュームを検出したものであるか否かを判断し、
音量制御ボリュームを検出したものでなければステップ
330に移行し、音量制御ボリュームを検出したもので
あればステップ320に移行して、操作されたボリュー
ム(キーボード2のメロディ演奏音域または自動伴奏音
域)が使用しているオシレータ66のチャネルと音量制
御ボリュームにより検出された音量を設定した音量イベ
ントをパラレルインタフェース部10を介してCPU3
4に転送する。
In step 310, it is determined whether the input event is the detection of the volume control volume,
If the volume control volume is not detected, the process proceeds to step 330, and if the volume control volume is detected, the process proceeds to step 320, and the operated volume (melody playing range or automatic accompaniment range of the keyboard 2) is determined. A volume event in which the volume detected by the channel of the oscillator 66 being used and the volume control volume is set is sent to the CPU 3 via the parallel interface unit 10.
Transfer to 4.

【0036】ステップ330では、入力イベントがビブ
ラート制御ボリュームを検出したものであるか否かを判
断し、ビブラート制御ボリュームを検出したものでなけ
ればステップ350に移行し、ビブラート制御ボリュー
ムを検出したものであればステップ340に移行して、
キーボード2のメロディ演奏音域が使用しているオシレ
ータ66のチャネルとビブラート制御ボリュームにより
検出されたビブラートの速さと深さとを設定したビブラ
ートイベントをパラレルインタフェース部10を介して
CPU34に転送する。
In step 330, it is judged whether or not the input event is the detection of the vibrato control volume, and if it is not the detection of the vibrato control volume, the process proceeds to step 350 to detect the vibrato control volume. If so, move to step 340,
A vibrato event in which the speed and depth of the vibrato detected by the channel of the oscillator 66 used by the melody playing range of the keyboard 2 and the vibrato control volume are set is transferred to the CPU 34 via the parallel interface unit 10.

【0037】ステップ350では、入力イベントがグロ
ール制御ボリュームを検出したものであるか否かを判断
し、グロール制御ボリュームを検出したものでなければ
ステップ370に移行し、グロール制御ボリュームを検
出したものであればステップ360に移行して、キーボ
ード2のメロディ演奏音域が使用しているオシレータ6
6のチャネルとグロール制御ボリュームにより検出され
たグロールの速さと深さとを設定したグロールイベント
をパラレルインタフェース部10を介してCPU34に
転送する。
In step 350, it is judged whether or not the input event is the detection of the groll control volume. If the groll control volume is not detected, the process proceeds to step 370, and the groll control volume is detected. If so, the process proceeds to step 360, and the oscillator 6 used by the melody playing range of the keyboard 2 is used.
The crawl event in which the speed and the depth of the growl detected by the channel 6 and the groll control volume are set is transferred to the CPU 34 via the parallel interface unit 10.

【0038】ステップ370では、入力イベントが定位
制御ボリュームを検出したものであるか否かを判断し、
定位制御ボリュームを検出したものでなければステップ
390に移行し、定位制御ボリュームを検出したもので
あればステップ380に移行して、キーボード2のメロ
ディ演奏音域が使用しているオシレータ66のチャネル
と定位制御ボリュームにより検出された定位データとを
設定した定位イベントをパラレルインタフェース部10
を介してCPU34に転送する。
In step 370, it is judged whether or not the input event is the detection of the localization control volume,
If the localization control volume is not detected, the process proceeds to step 390. If the localization control volume is detected, the process proceeds to step 380, and the channel of the oscillator 66 used by the melody playing range of the keyboard 2 and the localization are performed. The parallel interface unit 10 detects the localization event in which the localization data detected by the control volume is set.
To the CPU 34 via.

【0039】ステップ390では、入力イベントが音程
制御ボリュームを検出したものであるか否かを判断し、
音程制御ボリュームを検出したものでなければステップ
350に移行し、音程制御ボリュームを検出したもので
あればステップ400に移行して、キーボード2のメロ
ディ演奏音域が使用しているオシレータ66のチャネル
と音程制御ボリュームにより検出された音程を設定した
周波数イベントをパラレルインタフェース部10を介し
てCPU34に転送する。
In step 390, it is judged whether the input event is the detection of the pitch control volume,
If the pitch control volume is not detected, the process proceeds to step 350. If the pitch control volume is detected, the process proceeds to step 400, and the channel and pitch of the oscillator 66 used by the melody playing range of the keyboard 2 The frequency event in which the pitch detected by the control volume is set is transferred to the CPU 34 via the parallel interface unit 10.

【0040】ステップ390にて、入力イベントが音程
制御ボリュームを検出したものでないと判断されるか、
先のステップ240,260,280,300,32
0,340,360,380,400の各処理が実行さ
れた後、本処理は終了する。次に、CPU20において
実行され、キーボード2および操作パネル4からの入力
の有無を調べて、入力イベントキューに入力イベントを
設定する外部操作検出処理を、図10に示すフローチャ
ートに沿って説明する。なお、この処理は、インタバル
タイマによる割込に従い、周期的(例えば1ms毎)に
実行される。
At step 390, it is judged that the input event is not the detection of the pitch control volume,
Previous steps 240, 260, 280, 300, 32
After each processing of 0, 340, 360, 380, and 400 is executed, this processing ends. Next, an external operation detection process executed by the CPU 20 to check whether there is an input from the keyboard 2 and the operation panel 4 and set an input event in the input event queue will be described with reference to the flowchart shown in FIG. It should be noted that this process is executed periodically (for example, every 1 ms) in accordance with the interruption by the interval timer.

【0041】図10に示すように、まず、ステップ41
0にて、キーボード2の状態を検出して前回検出したと
きの状態と比べて変化があったか否かを判断し、変化が
なければステップ430に移行し、変化があればステッ
プ420に移行して、その変化に応じて押鍵または離鍵
を表す入力イベントを入力イベントキューにセットした
後ステップ430に移行する。
As shown in FIG. 10, first, step 41
At 0, the state of the keyboard 2 is detected, and it is determined whether or not there is a change compared with the state at the time of the previous detection. If there is no change, the process proceeds to step 430, and if there is a change, the process proceeds to step 420. , An input event representing key depression or key release is set in the input event queue according to the change, and then the process proceeds to step 430.

【0042】ステップ430では、操作パネル4の状態
を検出して前回検出した時の状態と比べて変化があった
か否かを判断し、変化がなければそのまま本処理を終了
し、変化があればステップ440に移行して、新たに操
作された各スイッチおよびボリュームに応じた入力イベ
ントを入力イベントキューにセットした後、本処理を終
了する。
At step 430, the state of the operation panel 4 is detected and it is judged whether or not there is a change compared with the state when it was detected last time. After shifting to 440, an input event corresponding to each newly operated switch and volume is set in the input event queue, and then this processing is ended.

【0043】次に、CPU20において実行され、自動
伴奏のための演奏情報イベントを生成する自動伴奏処理
を、図11に示すフローチャートに沿って説明する。な
お、この処理は、インタバルタイマによる割込に従い、
周期的(例えば5ms毎)に実行される。
Next, an automatic accompaniment process which is executed by the CPU 20 and generates a performance information event for automatic accompaniment will be described with reference to the flowchart shown in FIG. In addition, this process follows the interrupt by the interval timer,
It is executed periodically (for example, every 5 ms).

【0044】図11に示すように、まず、ステップ45
0にて、自動伴奏の実行状態を示すRUNレジスタに演
奏中であることを表す値が書き込まれているか否かを判
断し、演奏中であることを表す値が書き込まれていれ
ば、ステップ460に移行し、それ以外の値が書き込ま
れていれば、そのまま本処理を終了する。
As shown in FIG. 11, first, step 45
At 0, it is judged whether or not a value indicating that the performance is being performed is written in the RUN register indicating the execution state of automatic accompaniment. If a value indicating that the performance is being performed is written, step 460 If the value other than that is written, the process is terminated.

【0045】ステップ460では、自動伴奏の演奏タイ
ミングを制御するタイミングカウントレジスタがカウン
トアウトしたか否かを判断し、カウントアウトしていれ
ばステップ470に移行し、パタンアドレスバッファを
進めて次の自動伴奏パタンデータを読み出し、この読み
出された自動伴奏パタンデータとコードバッファに記憶
されている情報とに基づいて伴奏音を変更する演奏情報
イベントを作成してパラレルインタフェース部10を介
してCPU34に転送した後、タイミングカウントレジ
スタを所定の値にリセットし、ステップ460に戻る。
At step 460, it is judged whether or not the timing count register for controlling the performance timing of the automatic accompaniment counts out. If so, the routine proceeds to step 470, where the pattern address buffer is advanced to advance to the next automatic address buffer. Accompaniment pattern data is read, a performance information event for changing the accompaniment sound is created based on the read automatic accompaniment pattern data and the information stored in the chord buffer, and is transferred to the CPU 34 via the parallel interface unit 10. After that, the timing count register is reset to a predetermined value, and the process returns to step 460.

【0046】ステップ460にて、タイミングカウント
レジスタがカウントアウトしていないと判断されると、
ステップ480に移行する。ステップ480では、パタ
ンアドレスバッファが自動伴奏パタンデータの末尾を示
しているか否かを判断し、自動伴奏パタンデータの末尾
を示していればステップ490に移行し、パタンアドレ
スバッファが自動伴奏パタンデータの先頭を示すように
リセットしてステップ500に移行する。また、ステッ
プ480にて、パタンアドレスバッファが自動伴奏パタ
ンデータの末尾を指示していなければ、そのままステッ
プ500に移行する。
If it is determined in step 460 that the timing count register has not counted out,
Go to step 480. In step 480, it is determined whether the pattern address buffer indicates the end of the automatic accompaniment pattern data. If the pattern address buffer indicates the end of the automatic accompaniment pattern data, the process proceeds to step 490, and the pattern address buffer stores the automatic accompaniment pattern data. Reset as shown at the beginning and shift to step 500. If the pattern address buffer does not indicate the end of the automatic accompaniment pattern data in step 480, the process directly proceeds to step 500.

【0047】ステップ500では、タイミングカウント
レジスタの値をデクリメントして本処理を終了する。す
なわち、自動伴奏処理においては、タイミングカウント
レジスタがカウントアウトする毎にパタンアドレスバッ
ファの内容を更新し、この更新されたパタンアドレスバ
ッファの内容に従って自動伴奏パタンデータを順次読み
出して演奏情報イベントを作成する。尚、タイミングカ
ウントレジスタの値は、別に設定された演奏テンポに応
じて常に一定の値がセットされるが、自動伴奏パタンデ
ータにカウント値の情報を含ませて随時変更するように
してもよい。
In step 500, the value of the timing count register is decremented, and this processing ends. That is, in the automatic accompaniment process, the contents of the pattern address buffer are updated each time the timing count register counts out, and the automatic accompaniment pattern data is sequentially read according to the contents of the updated pattern address buffer to create a performance information event. . The value of the timing count register is always set to a constant value according to the separately set performance tempo, but the automatic accompaniment pattern data may be changed at any time by including the count value information.

【0048】次に、パラレルインタフェース部10から
の割込に応じ、CPU20において実行されるビジー解
除処理を図12に示す。前述したように、CPU34が
パラレルインタフェース部10の第4バイトを読み出し
たときに発生する割込に応じて動作し、図12に示すよ
うに、ステップ510にて、パラレルインタフェース部
10への書込禁止を表すビジーバッファをクリアする。
Next, FIG. 12 shows a busy cancellation process executed by the CPU 20 in response to an interrupt from the parallel interface section 10. As described above, the CPU 34 operates in response to the interrupt that occurs when the fourth byte of the parallel interface unit 10 is read, and as shown in FIG. 12, at step 510, writing to the parallel interface unit 10 is performed. Clear the busy buffer that indicates prohibition.

【0049】このビジーバッファは、CPU20からパ
ラレルインタフェース部10を介してCPU34に演奏
情報イベントを転送する際に参照され、ビジーバッファ
がセットされている場合、CPU20は、パラレルイン
タフェース部10への演奏情報イベントの書き込みを行
わないで、ビジーバッファがクリアされるまで待機す
る。そして、パラレルインタフェース部10へ演奏情報
イベントを書き込んだ時には、必ずビジーバッファをセ
ットする。
This busy buffer is referred to when the performance information event is transferred from the CPU 20 to the CPU 34 via the parallel interface unit 10. If the busy buffer is set, the CPU 20 causes the parallel interface unit 10 to perform performance information. Wait for the busy buffer to be cleared without writing any events. When the performance information event is written in the parallel interface unit 10, the busy buffer is always set.

【0050】つまり、ビジーバッファを用いて、パラレ
ルインタフェース部10に未処理の演奏情報イベントが
残っているにも関わらず、新たな演奏情報イベントを上
書きしてしまい、演奏情報イベントが紛失してしまうこ
とを防止する制御を行っている。
In other words, by using the busy buffer, a new performance information event is overwritten even though the unprocessed performance information event remains in the parallel interface section 10, and the performance information event is lost. Control is performed to prevent this.

【0051】次に、楽音発生パラメータ生成部8のCP
U34にて実行される処理を、図13〜図15に示すフ
ローチャートに沿って説明する。図13は、CPU34
で行われるメイン処理である。まず、ステップ520に
て、RAM38の他、周辺装置を初期化する。
Next, the CP of the tone generation parameter generation unit 8
The processing executed in U34 will be described with reference to the flowcharts shown in FIGS. FIG. 13 shows the CPU 34.
This is the main processing performed in. First, in step 520, the RAM 38 and other peripheral devices are initialized.

【0052】続くステップ530にて、優先イベントキ
ューに演奏情報イベントが書き込まれているか否かを判
断し、書き込まれていればステップ540に移行し、優
先イベントキューから演奏情報イベントを読み出して演
奏情報イベント処理を実行し、ステップ530に戻る。
また、ステップ530にて、優先イベントキューに演奏
情報イベントが書き込まれていなければステップ550
に移行する。
In the following step 530, it is judged whether or not the performance information event is written in the priority event queue. If it is written, the process proceeds to step 540, and the performance information event is read from the priority event queue to read the performance information. Event processing is executed, and the process returns to step 530.
If no performance information event is written in the priority event queue in step 530, step 550
Move to.

【0053】ステップ550では、非優先イベントキュ
ーに演奏情報イベントが書き込まれているか否かを判断
し、演奏情報イベントが書き込まれていなければステッ
プ530に戻り、演奏情報イベントが書き込まれていれ
ばステップ560に移行し、非優先イベントキューから
演奏情報イベントを読み出して演奏情報イベント処理を
実行した後、ステップ530に戻る。
In step 550, it is judged whether or not the performance information event is written in the non-priority event queue. If the performance information event is not written, the process returns to step 530, and if the performance information event is written, the step is executed. After shifting to 560, the performance information event is read from the non-priority event queue and the performance information event process is executed, and then the process returns to step 530.

【0054】すなわち、本処理においては、優先イベン
トキューに演奏情報イベントがある限りは、連続して優
先イベントキューの演奏情報イベントを処理し、優先イ
ベントキューに演奏情報イベントがない場合にだけ非優
先イベントキューの演奏情報イベントを処理する。
That is, in this processing, as long as there is a performance information event in the priority event queue, the performance information events in the priority event queue are processed continuously, and only when there is no performance information event in the priority event queue, no priority is given. Processes performance information events in the event queue.

【0055】次に、先のステップ540、560で実行
される演奏情報イベント処理の詳細を、図14に示すフ
ローチャートに沿って説明する。まず、ステップ570
にて、演奏情報イベントがキーオンイベントであるか否
かを判断し、キーオンイベントであればステップ580
に移行して、キーオンイベントに示されたデータに基づ
き楽音発生パラメータを生成しレジスタ64に書き込
む。また、キーオンイベントでなければステップ590
に移行する。
Details of the performance information event process executed in the previous steps 540 and 560 will be described below with reference to the flowchart shown in FIG. First, step 570
In step 580, it is determined whether the performance information event is a key-on event.
Then, the tone generation parameter is generated based on the data indicated by the key-on event and is written in the register 64. If it is not a key-on event, step 590
Move to.

【0056】ステップ590では、演奏情報イベントが
キーオフイベントであるか否かを判断し、キーオフイベ
ントであればステップ600に移行して、キーオフイベ
ントに示されたデータに基づき楽音発生パラメータを生
成しレジスタ64に書き込む。また、キーオフイベント
でなければステップ610に移行する。
In step 590, it is judged whether or not the performance information event is a key-off event, and if it is a key-off event, the process proceeds to step 600 to generate a tone generation parameter based on the data indicated in the key-off event and register it. Write to 64. If it is not a key-off event, the process proceeds to step 610.

【0057】ステップ610では、演奏情報イベントが
制御イベント(音量イベント,ビブラートイベント,グ
ロールイベント,定位イベント,周波数イベント)であ
るか否かを判断し、制御イベントであればステップ62
0に移行して、制御イベントに示された制御データに基
づき楽音発生パラメータを生成しレジスタ64に書き込
む。また、制御イベントでなければステップ630に移
行する。
In step 610, it is determined whether or not the performance information event is a control event (volume event, vibrato event, groll event, localization event, frequency event), and if it is a control event, step 62.
After shifting to 0, a musical tone generation parameter is generated based on the control data indicated by the control event and written in the register 64. If it is not a control event, the process proceeds to step 630.

【0058】ステップ630では、演奏情報イベントが
音色イベントであるか否かを判断し、音色イベントであ
ればステップ640に移行して、音色イベントに示され
た音色データに基づき楽音発生パラメータを生成しレジ
スタ64に書き込む。ステップ630にて音色イベント
でないと判断されるか、先のステップ580,600,
620,640の処理が実行された後、ステップ650
に移行して、優先イベントキューおよび非優先イベント
キューの双方に新たな演奏情報イベントを書き込む余地
が残っていれば、イベント受信禁止バッファにイベント
受信許可を意味する00Hを書き込み処理を終了する。
このとき、未受信イベントがパラレルインタフェース部
10に残っていれば、読み出して優先イベントキューま
たは非優先イベントキューに書き込む。そして、イベン
トを書き込んだことによりそのイベントキューがいっぱ
いになった場合は、イベント受信禁止バッファにイベン
ト受信禁止を意味する0FFHを書き込む。
In step 630, it is judged whether or not the performance information event is a tone color event. If it is a tone color event, the process proceeds to step 640 to generate a tone generation parameter based on the tone color data indicated by the tone color event. Write to register 64. If it is determined in step 630 that the event is not a tone color event, or if the previous steps 580, 600,
After the processing of 620 and 640 is executed, step 650
If there is room to write a new performance information event in both the priority event queue and the non-priority event queue, the process of writing 00H indicating event reception permission in the event reception prohibition buffer ends.
At this time, if an unreceived event remains in the parallel interface unit 10, it is read and written in the priority event queue or the non-priority event queue. Then, when the event queue becomes full due to the writing of the event, 0FFH meaning event reception inhibition is written in the event reception inhibition buffer.

【0059】次に、パラレルインタフェース部10から
の割込に応じ、CPU34において実行されるイベント
受信処理について、図15に示すフローチャートに沿っ
て説明する。まず、ステップ660にて、パラレルイン
タフェース部10に格納されている演奏情報イベントの
第1バイトの最上位ビットが1であるか否かを判断し、
最上位ビットが1であれば、ステップ670に移行し、
パラレルインタフェース部10から読み出した演奏情報
イベントを優先イベントキューにセットして、本処理を
終了する。また、ステップ660にて最上位ビットが1
でなければ、ステップ680に移行し、パラレルインタ
フェース部10から読み出した演奏情報イベントを非優
先イベントキューにセットして、本処理を終了する。
Next, the event receiving process executed by the CPU 34 in response to an interrupt from the parallel interface section 10 will be described with reference to the flowchart shown in FIG. First, in step 660, it is determined whether the most significant bit of the first byte of the performance information event stored in the parallel interface unit 10 is 1.
If the most significant bit is 1, go to step 670,
The performance information event read from the parallel interface unit 10 is set in the priority event queue, and this processing ends. Also, in step 660, the most significant bit is 1.
If not, the process proceeds to step 680, the performance information event read from the parallel interface unit 10 is set in the non-priority event queue, and the process is finished.

【0060】なお、ステップ670およびステップ68
0において優先イベントキューまたは非優先イベントキ
ューに演奏情報イベントがセットされたことにより、そ
のイベントキューがこれ以上演奏情報イベントを格納す
ることができない状態になった場合、イベント受信禁止
バッファにイベント受信禁止を示す値を書き込む。
Note that step 670 and step 68
If the performance information event is set to 0 in the priority event queue or the non-priority event queue, and the event queue is in a state where it can no longer store performance information events, the event reception is disabled in the event reception disable buffer. Write a value that indicates.

【0061】また、既にイベント受信禁止バッファにイ
ベント受信禁止を示す値が書き込まれていた場合には、
ステップ670およびステップ680においては、何も
せずそのまま本処理を終了する。以上説明したように、
本実施例においては、優先度の高い演奏情報イベントが
格納される優先イベントキューと、それ以外の演奏情報
イベントが格納される非優先イベントキューが設けられ
ており、優先イベントキューに演奏情報イベントがある
限りは、連続して優先イベントキューの演奏情報イベン
トを処理し、優先イベントキューに演奏情報イベントが
ない場合にだけ非優先イベントキューの演奏情報イベン
トを処理するように構成されている。
If a value indicating event reception prohibition has already been written in the event reception prohibition buffer,
In step 670 and step 680, this process ends without doing anything. As explained above,
In this embodiment, a priority event queue in which performance information events with high priority are stored and a non-priority event queue in which other performance information events are stored are provided. As long as there is a performance information event of the priority event queue, the performance information event of the non-priority event queue is processed only when there is no performance information event in the priority event queue.

【0062】従って、本実施例によれば、優先度を高く
設定したキーボード2のメロディ演奏音域における押
鍵、離鍵情報を表すキーオンイベントおよびキーオフイ
ベントは優先的に処理されるので、他の演奏情報イベン
トの有無に関わらず、ほぼ一定の状態でメロディ演奏音
域の演奏音を発音させることができる。
Therefore, according to the present embodiment, the key-on event and the key-off event representing the key-depression and key-release information in the melody playing range of the keyboard 2 set with a high priority are preferentially processed, so that another performance is performed. Regardless of the presence or absence of the information event, the performance sound in the melody performance range can be generated in a substantially constant state.

【0063】以上本発明の一実施例について説明した
が、本発明はこれに限定されるものではなく、本発明の
要旨を逸脱しない範囲において様々な態様を採ることが
できる。例えば、本実施例においては、キーボードのメ
ロディ演奏音域における押鍵、離鍵のみ優先度を高くし
たが、例えば、ドラムのようなリズムを刻む演奏情報を
優先度を高くしてもよい。
Although one embodiment of the present invention has been described above, the present invention is not limited to this, and various modes can be adopted without departing from the scope of the present invention. For example, in the present embodiment, the priority is set high only for the key pressing and key releasing in the melody playing range of the keyboard, but the priority may be set, for example, for performance information such as a drum which has a rhythm.

【0064】また、本実施例においては、優先度を優
先、非優先の2段階に設定しているが、3段階以上の設
定にしてもよい。また更に、本実施例においては、演奏
情報発生部6と楽音発生パラメータ生成部8とに別々の
CPUを用いて構成したが、処理速度の速い単一のCP
Uでこれらを構成してもよい。
Further, in the present embodiment, the priority is set to two levels of priority and non-priority, but it may be set to three or more levels. Furthermore, in the present embodiment, the performance information generating section 6 and the musical sound generating parameter generating section 8 are configured by using different CPUs, but a single CP having a high processing speed is used.
You may comprise U in these.

【0065】[0065]

【発明の効果】以上説明したように、本発明の電子楽器
によれば、外部操作装置からの入力により生成される演
奏情報を、その演奏情報に予め設定されている優先度の
毎に格納し、さらに優先度の高い順に読み出して処理す
る。
As described above, according to the electronic musical instrument of the present invention, the performance information generated by the input from the external operation device is stored for each priority set in advance in the performance information. , And read and process in order of higher priority.

【0066】従って、同時に多くの演奏情報が発生した
場合でも、演奏において重要度の高い演奏情報の優先度
を高く設定することにより、優先度の高い演奏情報は遅
延なく処理されるので、ほぼ一定の演奏状態を再現する
ことができる。
Therefore, even if a large amount of performance information is generated at the same time, by setting the priority of the performance information of high importance in the performance to a high level, the performance information of high priority can be processed without delay, so that it is substantially constant. The playing condition of can be reproduced.

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

【図1】 本発明の構成を例示するブロック図である。FIG. 1 is a block diagram illustrating a configuration of the present invention.

【図2】 本実施例の電子楽器の回路構成を表すブロッ
ク図である。
FIG. 2 is a block diagram showing a circuit configuration of an electronic musical instrument of this embodiment.

【図3】 パラレルインタフェース部10の回路図であ
る。
FIG. 3 is a circuit diagram of a parallel interface section 10.

【図4】 音源46の構成を表すブロック図である。FIG. 4 is a block diagram showing a configuration of a sound source 46.

【図5】 演奏情報イベントの内容を表す説明図であ
る。
FIG. 5 is an explanatory diagram showing the contents of a performance information event.

【図6】 CPU20で実行されるメイン処理を表すフ
ローチャートである。
FIG. 6 is a flowchart showing a main process executed by CPU 20.

【図7】 CPU20で実行される入力イベント処理を
表すフローチャートである。
FIG. 7 is a flowchart showing an input event process executed by the CPU 20.

【図8】 CPU20で実行されるキー入力イベント処
理を表すフローチャートである。
FIG. 8 is a flowchart showing a key input event process executed by the CPU 20.

【図9】 CPU20で実行されるパネル入力イベント
処理を表すフローチャートである。
FIG. 9 is a flowchart showing a panel input event process executed by the CPU 20.

【図10】 CPU20で実行される外部操作検出処理
を表すフローチャートである。
FIG. 10 is a flowchart showing an external operation detection process executed by the CPU 20.

【図11】 CPU20で実行される自動伴奏処理を表
すフローチャートである。
FIG. 11 is a flowchart showing an automatic accompaniment process executed by the CPU 20.

【図12】 CPU20で実行されるビジー解除処理を
表すフローチャートである。
FIG. 12 is a flowchart showing a busy cancellation process executed by the CPU 20.

【図13】 CPU34で実行されるメイン処理を表す
フローチャートである。
FIG. 13 is a flowchart showing a main process executed by CPU 34.

【図14】 CPU34で実行される演奏情報イベント
処理を表すフローチャートである。
FIG. 14 is a flowchart showing performance information event processing executed by the CPU.

【図15】 CPU34で実行されるイベント受信処理
を表すフローチャートである。
FIG. 15 is a flowchart showing an event reception process executed by the CPU.

【符号の説明】[Explanation of symbols]

2…キーボード 4…操作パネル 6
…演奏情報発生部 8…楽音発生パラメータ生成部 10…パラレル
インタフェース部 12…楽音発生部 14…D/A変換器 1
6…信号増幅器 16…増幅器 18…スピーカ
2 ... keyboard 4 ... operation panel 6
... Performance information generating section 8 ... Musical tone generating parameter generating section 10 ... Parallel interface section 12 ... Musical tone generating section 14 ... D / A converter 1
6 ... Signal amplifier 16 ... Amplifier 18 ... Speaker

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 キーボードや操作パネルなどの外部操作
装置からの入力に従い電気的に楽音を発生する電子楽器
であって、 上記外部操作装置からの入力に従い楽音発生に関する優
先度を含む演奏情報を生成する演奏情報生成手段と、 該演奏情報生成手段により生成された演奏情報を記憶す
るための演奏情報記憶手段と、 上記演奏情報生成手段により生成された演奏情報の優先
度を順次識別して、該優先度毎に上記演奏情報記憶手段
へ上記演奏情報を書き込む優先度識別手段と、 上記演奏情報記憶手段から優先度の高い順に演奏情報を
読み出す演奏情報読出手段と、 該演奏情報読出手段により読み出された演奏情報に従
い、楽音発生用のデータを生成する楽音情報生成手段
と、 該楽音情報生成手段により生成された楽音発生用のデー
タに基づき所定の音色で発音する楽音発生手段と、 を備えたことを特徴とする電子楽器。
1. An electronic musical instrument that electrically generates a musical tone according to an input from an external operating device such as a keyboard or an operating panel, and generates performance information including a priority regarding the musical tone generation according to an input from the external operating device. Performance information generating means, a performance information storage means for storing the performance information generated by the performance information generating means, and the priority of the performance information generated by the performance information generating means are sequentially identified, Priority identifying means for writing the performance information to the performance information storage means for each priority, performance information reading means for reading the performance information from the performance information storage means in descending order of priority, and reading by the performance information reading means. Musical tone information generating means for generating musical tone generating data according to the generated musical performance information, and based on the musical tone generating data generated by the musical tone information generating means. An electronic musical instrument, comprising: a musical tone generating unit that produces a predetermined tone color.
JP5214413A 1993-08-30 1993-08-30 Electronic musical instrument Pending JPH0764553A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5214413A JPH0764553A (en) 1993-08-30 1993-08-30 Electronic musical instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5214413A JPH0764553A (en) 1993-08-30 1993-08-30 Electronic musical instrument

Publications (1)

Publication Number Publication Date
JPH0764553A true JPH0764553A (en) 1995-03-10

Family

ID=16655383

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5214413A Pending JPH0764553A (en) 1993-08-30 1993-08-30 Electronic musical instrument

Country Status (1)

Country Link
JP (1) JPH0764553A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2438743A (en) * 2006-06-02 2007-12-05 Vida Software S L User Interfaces for Electronic Devices
JP2015114385A (en) * 2013-12-09 2015-06-22 ヤマハ株式会社 Acoustic signal analysis control program, and acoustic signal analysis control device
US10369493B2 (en) 2012-09-11 2019-08-06 Cap Iii B.V. Process for initiating an ammonium sulfate crystallization process

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2438743A (en) * 2006-06-02 2007-12-05 Vida Software S L User Interfaces for Electronic Devices
GB2438743B (en) * 2006-06-02 2009-03-25 Vida Software S L User interfaces for electronic devices
US10369493B2 (en) 2012-09-11 2019-08-06 Cap Iii B.V. Process for initiating an ammonium sulfate crystallization process
JP2015114385A (en) * 2013-12-09 2015-06-22 ヤマハ株式会社 Acoustic signal analysis control program, and acoustic signal analysis control device

Similar Documents

Publication Publication Date Title
US5521322A (en) Tone information processing device for an electronic musical instrument for generating sounds
US5119710A (en) Musical tone generator
JPS62135892A (en) Electronic musical apparatus with sound generation allottingfunction
JP2623878B2 (en) Electronic musical instrument
JPH04306697A (en) Stereo system
US5321198A (en) Tone signal generator utilizing ancillary memories for electronic musical instrument
JP3372124B2 (en) Electronic musical instrument
JP2629891B2 (en) Music signal generator
JP2565069B2 (en) Electronic musical instrument
JPH0764553A (en) Electronic musical instrument
US5177314A (en) Timbre setting device for an electronic musical instrument
US6351475B1 (en) Mixing apparatus with compatible multiplexing of internal and external voice signals
JPS62163099A (en) Guitar controller for synthesizer
US4920849A (en) Automatic performance apparatus for an electronic musical instrument
JPH075878A (en) Automatic accompaniment device
JP3312939B2 (en) Electronic musical instrument
JPH0638192B2 (en) Musical sound generator
JPH0764552A (en) Electronic musical instrument
JP3230265B2 (en) Sound channel assignment device for electronic musical instruments
JP3387179B2 (en) Electronic musical instrument
JP3282675B2 (en) Electronic musical instrument
JP3533967B2 (en) Tone signal generating device, computer readable recording medium on which a tone signal generating program is recorded
JP2526834B2 (en) Performance control device
JP3508139B2 (en) Digital signal processor
JPH0642146B2 (en) Musical sound generator