JP2002162964A - Automatic playing device - Google Patents

Automatic playing device

Info

Publication number
JP2002162964A
JP2002162964A JP2001309788A JP2001309788A JP2002162964A JP 2002162964 A JP2002162964 A JP 2002162964A JP 2001309788 A JP2001309788 A JP 2001309788A JP 2001309788 A JP2001309788 A JP 2001309788A JP 2002162964 A JP2002162964 A JP 2002162964A
Authority
JP
Japan
Prior art keywords
data
sounding
sound
performance
automatic performance
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
JP2001309788A
Other languages
Japanese (ja)
Other versions
JP3609045B2 (en
Inventor
Tsutomu Saito
勉 齋藤
Masahiko Yamada
雅彦 山田
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 JP2001309788A priority Critical patent/JP3609045B2/en
Publication of JP2002162964A publication Critical patent/JP2002162964A/en
Application granted granted Critical
Publication of JP3609045B2 publication Critical patent/JP3609045B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an automatic playing device which can reproduce or stop a specific part even halfway in an automatic playing. SOLUTION: This device is equipped with a pattern data storage means 12 which stores pattern data on multiple parts, a time managing means 12 which manages the time progress of automatic playing, a readout means 10 which reads pattern data on all the parts out of the pattern data storage means in sequence according to the contents of the time managing means, a playing data storage means 12 which stores playing data on the all parts generated according to the pattern data read out by the readout means, an update means 10 which updates the playing data in the playing data storage means as the automatic playing progresses, indicating means 139 to 142 which indicates the sounding of the respective parts, and sounding means 10, 14, and 16 which sound only parts indicated by the indicating means> when the sounding of a new part is indicated by the indicating means, the sounding means sounds playing data corresponding to the new part according to the playing data in the playing data storage means.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、数小節程度の演奏
パターンを繰り返すことにより自動演奏を行う自動演奏
装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an automatic performance apparatus for performing an automatic performance by repeating a performance pattern of several measures.

【0002】[0002]

【従来の技術】従来、予め記憶手段に記憶された数小節
(2〜16小節程度)分の自動演奏データ(以下、「パ
ターンデータ」という。)を繰り返して読み出して音源
に与えることにより所定の演奏パターンを再生する自動
演奏装置が知られている。
2. Description of the Related Art Conventionally, automatic performance data (hereinafter referred to as "pattern data") for several measures (about 2 to 16 measures) stored in advance in a storage means is repeatedly read out and given to a sound source to thereby provide a predetermined sound. There is known an automatic performance device for reproducing a performance pattern.

【0003】この種の自動演奏装置は、パターンデータ
を機械的に読み出して再生するだけであるので、発音の
タイミングや音量等に揺らぎがなく画一的であり、人間
味に欠けるという欠点があった。そこで、かかる画一的
な自動演奏を回避して揺らぎを持たせるために、発音タ
イミングや音量等をランダムに変化させることにより人
間の感情の周期にマッチさせる試みがなされている。発
音タイミングや音量等をランダムに変化させれば変化に
富んだ自動演奏は可能である。しかしながら、人間の感
情の周期にマッチした演奏パターン、例えばノリの良い
演奏パターンを実現することは困難であった。
[0003] This type of automatic performance device merely reads out and reproduces the pattern data mechanically, so there is a drawback that the sounding timing and sound volume are not fluctuated and uniform, and lack humanity. . Therefore, in order to avoid such uniform automatic performance and to have fluctuations, attempts have been made to match the cycle of human emotions by randomly changing the sounding timing, volume and the like. A variety of automatic performances can be achieved by randomly changing the sounding timing, volume, and the like. However, it has been difficult to achieve a performance pattern that matches the cycle of human emotions, for example, a play pattern that has good stiffness.

【0004】従って、従来は、例えばノリの良い自動演
奏を行うためには、たとえ2小節の演奏パターンの繰り
返しで成る自動演奏曲であっても、曲の最初から最後ま
でのパターンデータを作成して記憶しておき、それを忠
実に再生する必要があった。従って、人間の感情の周期
にマッチした演奏パターンを得るためには膨大なメモリ
容量を必要とするという問題があった。
[0004] Therefore, conventionally, for example, in order to perform automatic performance with good slickness, pattern data from the beginning to the end of the tune is created even for an automatic performance tune composed of a repetition of a performance pattern of two measures. I had to remember and play it faithfully. Therefore, there is a problem that a huge memory capacity is required to obtain a performance pattern that matches the cycle of human emotions.

【0005】また、上記のような自動演奏装置は、複数
パート(例えばリズム、ベース、アカンパニメント及び
メロディ等)を有し、各パートがそれぞれ独立して制御
できるように構成される場合も多い。例えば、特開昭5
8−35597号公報には、複数パートを同時に再生で
き、また、各パート単位で発音するかどうかを制御可能
にした自動演奏装置が開示されている。この自動演奏装
置によれば、複数のパートを同時に発音することによ
り、多重演奏を行わせることができる。
The above-mentioned automatic performance apparatus often has a plurality of parts (for example, rhythm, bass, accompaniment, melody, etc.) and each part can be controlled independently. . For example, JP
JP-A-8-35597 discloses an automatic performance device capable of simultaneously reproducing a plurality of parts and controlling whether or not each part is sounded. According to this automatic performance device, multiple performances can be performed by simultaneously producing a plurality of parts.

【0006】しかしながら、複数パートを有する自動演
奏装置においては、特定パートの演奏を自動演奏でなく
人が行うという応用が望まれている。例えば、リズム、
ベース、アカンパニメントの各パートは自動演奏にまか
せメロディパートは人が弾くといった具合である。この
ためには、パート単位で随時再生又は停止の制御が可能
である必要がある。上掲の公報に開示された自動演奏装
置は、RUNスイッチを投入してスタートパルスが発生
したときには既に再生(又は録音)すべきパートは確定
している必要があり、演奏途中でパートスイッチを変化
させることは予定されていない。即ち、演奏途中でパー
トスイッチをオンにしてもそのパートの再生はできな
い。
However, in an automatic performance device having a plurality of parts, there is a demand for an application in which a specific part is performed by a person instead of the automatic performance. For example, rhythm,
The bass and accompaniment parts are left to automatic performance, and the melody part is played by humans. For this purpose, it is necessary to be able to control reproduction or stop at any time in part units. In the automatic performance device disclosed in the above-mentioned publication, when a RUN switch is turned on and a start pulse is generated, the part to be reproduced (or recorded) needs to be already determined, and the part switch is changed during the performance. It is not scheduled to do so. That is, even if the part switch is turned on during the performance, the part cannot be reproduced.

【0007】[0007]

【発明が解決しようとする課題】本発明は、かかる事情
に鑑みてなされたものであり、その目的は、自動演奏の
途中からでも特定パートの再生又は停止を行わせること
のできる自動演奏装置を提供することにある。
SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and an object of the present invention is to provide an automatic performance device capable of playing or stopping a specific part even during automatic performance. To provide.

【0008】[0008]

【課題を解決するための手段】上記目的を達成するため
に、本発明は、複数パートのパターンデータを記憶した
パターンデータ記憶手段と、自動演奏の時間進行を管理
する時間管理手段と、該時間管理手段の内容に基づいて
前記パターンデータ記憶手段に記憶された全パートのパ
ターンデータを順次読み出すパターンデータ読出手段
と、該パターンデータ読出手段により読み出されたパタ
ーンデータに基づいて作成された全パートの演奏データ
を記憶する演奏データ記憶手段と、該演奏データ記憶手
段に記憶された演奏データを自動演奏の進行に応じて更
新する更新手段と、各パートの発音を指示する指示手段
と、該指示手段により指示されたパートについてのみ発
音する発音手段とを有し、前記発音手段は、前記指示手
段により新たなパートの発音指示がなされた場合に、そ
のパートに対応する前記演奏データ記憶手段中の演奏デ
ータに基づき発音することを特徴とする。
In order to achieve the above object, the present invention provides a pattern data storing means for storing pattern data of a plurality of parts, a time managing means for managing a time progress of an automatic performance, Pattern data reading means for sequentially reading the pattern data of all parts stored in the pattern data storage means based on the contents of the management means; and all parts created based on the pattern data read by the pattern data reading means. Performance data storage means for storing the performance data of each part, updating means for updating the performance data stored in the performance data storage means in accordance with the progress of the automatic performance, instruction means for instructing each part to sound, Means for sounding only the part specified by the means. If the sound instruction is made, characterized in that sound based on the performance data in the performance data storage means corresponding to that part.

【0009】本発明においては、全パートのパターンデ
ータを時間管理手段、例えば小節レジスタ/拍レジスタ
等の内容に従って順次読み出し、これから演奏データを
作成して演奏データ記憶手段に記憶する。この演奏デー
タ記憶手段に記憶された演奏データのうち、指示手段で
指示されたパートに対応する演奏データのみが発音され
る。この演奏データ記憶手段の内容は、発音の有無とは
独立に自動演奏の進行に応じて更新される。
In the present invention, the pattern data of all parts are sequentially read out according to the contents of time management means, for example, a bar register / beat register, and the performance data is created therefrom and stored in the performance data storage means. Of the performance data stored in the performance data storage means, only the performance data corresponding to the part designated by the instruction means is produced. The contents of the performance data storage means are updated in accordance with the progress of the automatic performance independently of the presence / absence of sound generation.

【0010】自動演奏の途中で新たなパートの発音指示
がなされた場合は、演奏データ記憶手段に記憶されてい
る演奏データが既に発音開始タイミングを過ぎていて
も、未だ消音タイミングに至らない音については途中か
らであっても発音を開始する。
When a new part is sounded in the middle of an automatic performance, even if the performance data stored in the performance data storage means has already passed the sound generation start timing, the sound which has not yet reached the silence timing has been reached. Starts pronunciation even from the middle.

【0011】これにより、演奏者の指示手段による指示
タイミングが多少ずれる(遅れる)ことにより、本来発
音されるべき音が発音されないという事態を回避できる
ので、演奏者の意図したタイミングで特定パートの自動
演奏を完全な形で開始させることができるという効果が
ある。
[0011] This makes it possible to avoid a situation in which a sound to be originally produced is not produced due to a slight shift (delay) of the instruction timing by the performer's instruction means. The effect is that the performance can be started completely.

【0012】なお、指示手段で所定のパートをオフにす
べきことが指示された場合は、その指示手段に対応する
パートで発音中の音は全て速やかに発音を中止するよう
に構成することができる。例えば、長いサスティンがか
かっている音色やピアノ音でダンパーオンされているよ
うな場合でも、それらのエンベロープよりも格段に高速
なリリースエンベロープに置き換えて発音を終了させる
ことができる。
When the instruction means instructs that a predetermined part should be turned off, the sound corresponding to the instruction means may be immediately halted. it can. For example, even when the tone is damped on due to a long sustained tone or a piano sound, the sound can be ended by replacing it with a release envelope that is much faster than those envelopes.

【0013】このように、特定パートの自動演奏を演奏
者の所望のタイミングで開始させ又は終了させることが
できるということは、パターンデータに基づく発音又は
消音のタイミングよりも細かいタイミングで、特定パー
トの自動演奏を行わせたり停止したりすることができる
ことを意味し、新たな演奏形態が可能になるという効果
がある。
As described above, the fact that the automatic performance of a specific part can be started or stopped at a timing desired by the player means that the timing of the specific part can be reduced at a timing finer than the timing of sounding or silencing based on the pattern data. This means that an automatic performance can be performed or stopped, and there is an effect that a new performance form becomes possible.

【0014】また、本発明における前記発音手段は、新
たなパートの発音指示がなされた場合に、前記演奏デー
タ記憶手段に記憶されている演奏データのうち、残りの
発音時間が所定値以上のときにのみ新たに発音するよう
に構成できる。
Further, the sounding means in the present invention, when a sounding instruction of a new part is given, when the remaining sounding time of the performance data stored in the performance data storage means is longer than a predetermined value. Can be configured to be newly pronounced only for.

【0015】この構成によれば、新たなパートの発音指
示がなされた場合に、未だ消音タイミングに至っていな
いが、残りの発音時間が所定値より小さければ発音を行
わず、所定値以上の場合にのみ発音を行う。
According to this configuration, when a sound instruction for a new part is issued, the sound-extinguishing timing has not yet been reached, but if the remaining sounding time is shorter than a predetermined value, no sound is emitted. Only pronounce.

【0016】これにより、発音されてもすぐに消音され
てしまうような、聴感には何等の影響を与えない音に対
しては、最初から発音されないので、例えば発音手段の
一部としてCPUを用いる場合は、CPUの負荷が軽減
される。この場合、CPUは他の処理を実行することが
可能となるので、より効率の良い自動演奏装置を実現で
きる。
With this arrangement, a sound which does not affect the sense of hearing such that the sound is immediately silenced even if the sound is generated is not generated from the beginning. For example, the CPU is used as a part of the sound generating means. In such a case, the load on the CPU is reduced. In this case, the CPU can execute other processing, so that a more efficient automatic performance device can be realized.

【0017】[0017]

【発明の実施の形態】以下、本発明の自動演奏装置の実
施の形態につき、図面を参照しながら詳細に説明する。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing an automatic performance apparatus according to an embodiment of the present invention.

【0018】図1は、本発明の自動演奏装置の実施の形
態の構成を示すブロック図である。本自動演奏装置は、
中央処理装置(以下、「CPU」という。)10、リー
ドオンリメモリ(以下、「ROM」という。)11、ラ
ンダムアクセスメモリ(以下、「RAM」という。)1
2、操作パネル13、楽音発生器14、タイマ16、M
IDIコントローラ17及びFDコントローラ18がシ
ステムバス30を介して相互に接続されて構成されてい
る。システムバス30は、例えばアドレス線、データ線
及び制御信号線等で成り、上記各構成要素間で各種デー
タを送受するために使用される。
FIG. 1 is a block diagram showing the configuration of an embodiment of an automatic performance apparatus according to the present invention. This automatic performance device
Central processing unit (hereinafter, referred to as "CPU") 10, read-only memory (hereinafter, referred to as "ROM") 11, random access memory (hereinafter, referred to as "RAM") 1.
2, operation panel 13, tone generator 14, timer 16, M
The IDI controller 17 and the FD controller 18 are connected to each other via a system bus 30. The system bus 30 includes, for example, an address line, a data line, a control signal line, and the like, and is used for transmitting and receiving various data between the above-described components.

【0019】CPU10は、パターンデータ読出手段、
発音手段の一部及び更新手段に対応するものであり、R
OM11に格納されている制御プログラムに従って、本
自動演奏装置の全体を制御する。このCPU10には、
2つの割込信号入力端子INT1及びINT2が設けら
れている。割込信号入力端子INT1にはMIDIコン
トローラ17から、割込信号入力端子INT2にはタイ
マ16からそれぞれ割込信号が供給される。このCPU
10の動作の詳細については後述する。
The CPU 10 comprises pattern data reading means,
It corresponds to a part of the sounding means and the updating means.
According to the control program stored in the OM 11, the entire automatic performance device is controlled. In this CPU 10,
Two interrupt signal input terminals INT1 and INT2 are provided. An interrupt signal is supplied from the MIDI controller 17 to the interrupt signal input terminal INT1, and an interrupt signal is supplied from the timer 16 to the interrupt signal input terminal INT2. This CPU
The details of operation 10 will be described later.

【0020】ROM11には、上述したCPU10を動
作させるための制御プログラムが記憶されている他、C
PU10が各種処理に用いる種々の固定データが記憶さ
れている。このROM11の内容はCPU10により読
み出される。即ち、CPU10は、ROM11から制御
プログラム(命令)を読み出して解釈・実行すると共
に、所定の固定データを読み出して各種処理に使用す
る。
The ROM 11 stores a control program for operating the CPU 10 described above.
Various fixed data used by the PU 10 for various processes are stored. The contents of the ROM 11 are read by the CPU 10. That is, the CPU 10 reads out a control program (command) from the ROM 11, interprets and executes the control program, and reads out predetermined fixed data and uses it for various processes.

【0021】RAM12はパターンデータ記憶手段に対
応するものである。RAM12は、CPU10が使用す
る種々のデータを一時記憶する。このRAM12には、
例えばバッファ、レジスタ、カウンタ、フラグ等の各種
領域が定義されている。本実施の形態で使用する具体的
なバッファ、レジスタ、カウンタ、フラグ等について
は、以下において出現する都度説明するが、ここでは、
「受信バッファ」、「レジスタ群n」及び「小節レジス
タと拍レジスタ」について説明しておく。
The RAM 12 corresponds to the pattern data storage means. The RAM 12 temporarily stores various data used by the CPU 10. In this RAM 12,
For example, various areas such as buffers, registers, counters, and flags are defined. Specific buffers, registers, counters, flags, and the like used in the present embodiment will be described each time they appear below.
The “reception buffer”, “register group n”, and “measure register and beat register” will be described.

【0022】受信バッファ 受信バッファは、後述するMIDIコントローラ17か
ら受信したMIDIデータを一時記憶するために使用さ
れる。この受信バッファは、例えば図13に示されるよ
うに、RAM12に定義されたカウンタCTR、ポイン
タPTR及び記憶エリアとで構成され、CPU10の制
御によりFIFO(ファーストイン−ファーストアウ
ト)メモリとして機能するようになっている。記憶エリ
アは、例えば256個のエントリを有し、各エントリに
はMIDIデータが順次記憶される。
Receive Buffer The receive buffer is used to temporarily store MIDI data received from a MIDI controller 17 described later. As shown in FIG. 13, for example, the reception buffer includes a counter CTR, a pointer PTR, and a storage area defined in the RAM 12, and functions as a FIFO (first-in first-out) memory under the control of the CPU 10. Has become. The storage area has, for example, 256 entries, and MIDI data is sequentially stored in each entry.

【0023】カウンタCTRは受信したMIDIデータ
を書き込むべき記憶エリアの位置を指定する。このカウ
ンタCTRは、常に最後に書き込まれたMIDIデータ
の次のアドレスを指示するように制御される。このカウ
ンタCTRの初期値は「0」であり、MIDIデータが
書き込まれる度にインクリメントされ、その結果が最大
値TOPを越えた場合は最小値BTMに循環する。
The counter CTR specifies the position of the storage area where the received MIDI data is to be written. The counter CTR is controlled so as to always point to the next address of the MIDI data written last. The initial value of the counter CTR is "0", and is incremented each time MIDI data is written. When the result exceeds the maximum value TOP, the counter circulates to the minimum value BTM.

【0024】ポインタPTRは記憶エリア中の、読み出
すべきMIDIデータの位置を指示する。このポインタ
PTRは、常に最後に読み出されたMIDIデータの次
のアドレス、つまり次に読み出すべきMIDIデータの
アドレスを指示するように制御される。このポインタP
TRの初期値は「0」であり、MIDIデータが読み込
まれる度にインクリメントされ、その結果が最大値TO
Pを越えた場合は最小値BTMに循環する。
The pointer PTR indicates the position of the MIDI data to be read in the storage area. The pointer PTR is controlled so as to always point to the next address of the MIDI data read last, that is, the address of the MIDI data to be read next. This pointer P
The initial value of TR is “0”, and is incremented each time MIDI data is read, and the result is set to the maximum value TO.
If it exceeds P, it circulates to the minimum value BTM.

【0025】この受信バッファは、カウンタCTRの内
容とポインタPTRの内容とが一致するときはエンプテ
ィであると判断される。なお、カウンタCTRをインク
リメントした結果、カウンタCTRの内容がポインタP
TRの内容に一致することとなる場合は受信バッファは
満杯であるのでMIDIデータの受信を抑止するように
制御される。カウンタCTRの内容とポインタPTRの
内容とが一致しない場合は、受信バッファにMIDIデ
ータが存在することが判断される。
This reception buffer is determined to be empty when the contents of the counter CTR and the contents of the pointer PTR match. As a result of incrementing the counter CTR, the contents of the counter CTR are
If the contents match the contents of the TR, the reception buffer is full, so that the reception of MIDI data is controlled to be suppressed. If the contents of the counter CTR and the contents of the pointer PTR do not match, it is determined that MIDI data exists in the reception buffer.

【0026】この受信バッファへのMIDIデータの書
込みは後述するMIDI−IN割込処理ルーチンにて行
われ、受信バッファからのMIDIデータの読み出しは
後述するMIDI−IN処理ルーチンで行われる。な
お、本実施の形態では受信バッファをRAM12内に形
成し、MIDIデータの書込み/読み出しの制御はCP
U10で行うように構成したが、これらの代わりに周知
のFIFOメモリ素子を用いて構成することもできる。
The writing of MIDI data to the receiving buffer is performed by a MIDI-IN interrupt processing routine described later, and the reading of MIDI data from the receiving buffer is performed by a MIDI-IN processing routine described later. In this embodiment, the reception buffer is formed in the RAM 12, and the control of writing / reading the MIDI data is controlled by the CP.
Although the configuration is performed in U10, it can be configured using a well-known FIFO memory element instead of these.

【0027】レジスタ群n レジスタ群nは演奏データ記憶手段に対応するものであ
る。レジスタ群n(nはパート番号に対応しており、n
=1〜4である。)は、パート毎の発音を管理するため
に使用される。本実施の形態における各パートのポリフ
ォニック数を「8」とすると、このレジスタ群nは、例
えば図14(A)に示されるように、8個のブロックで
構成される。各ブロックは1音に対応しており、演奏デ
ータに対応する「キーコード及びそのオン/オフ」、
「補正ベロシティ」、「残存ゲートタイム」の3バイト
で構成されている。
Register Group n The register group n corresponds to the performance data storage means. Register group n (n corresponds to the part number, n
= 1-4. ) Is used to manage pronunciation for each part. Assuming that the polyphonic number of each part in the present embodiment is “8”, this register group n is composed of eight blocks, for example, as shown in FIG. Each block corresponds to one sound, "key code and its on / off" corresponding to performance data,
It consists of 3 bytes of “corrected velocity” and “remaining gate time”.

【0028】キーコード(7ビット)は音高を示すため
に使用される。オン/オフビット(1ビット)はキーコ
ードで示される音がキーオン状態にあるか又はキーオフ
状態にあるかを示すために使用される。補正ベロシティ
(7ビット)はパターンデータ中のベロシティをベロシ
ティ補正データに応じて補正したデータである。残存ゲ
ートタイム(7ビット)は発音中の音(オン/オフビッ
トが「1」になっている音)の残りの発音時間を示すた
めに使用される。図14(A)においては、1つのパー
トに対するレジスタ群のみ示されているが、実際はパー
ト1〜4のそれぞれに対して同じ構成のレジスタ群が設
けられている。
The key code (7 bits) is used to indicate a pitch. The on / off bit (1 bit) is used to indicate whether the sound indicated by the key code is in a key-on state or a key-off state. The corrected velocity (7 bits) is data obtained by correcting the velocity in the pattern data according to the velocity correction data. The remaining gate time (7 bits) is used to indicate the remaining sounding time of the sound being sounded (the sound whose on / off bit is "1"). FIG. 14A shows only a register group for one part, but actually, a register group having the same configuration is provided for each of parts 1 to 4.

【0029】小節レジスタと拍レジスタ 小節レジスタBRR及び拍レジスタBTRは時間管理手
段に対応する。小節レジスタBRRは、小節の進行を計
数するレジスタである。この小節レジスタBRRは、1
0進数4桁分に相当する計数が可能である。また、拍レ
ジスタBTRは小節内の拍の進行を計数するレジスタで
ある。この拍レジスタBTRは、1ステップタイム毎に
カウントアップされる。本実施の形態では、1拍を48
ステップの分解能としている。従って、拍レジスタBT
Rは、4拍子の場合は4拍、つまり192ステップを計
数したらゼロにラウンドする。この際、小節レジスタB
RRはインクリメントされるように制御される。この小
節レジスタBRRと拍レジスタBTRとは、揺らぎを発
生させるためのステップタイム補正データ及びベロシテ
ィ補正データを読み出すために使用される(詳細は後述
する)。
Measure register and beat register The measure register BRR and the beat register BTR correspond to time management means. The bar register BRR is a register for counting the progress of the bar. This measure register BRR is 1
A count corresponding to four digits of the 0-base number is possible. The beat register BTR is a register for counting the progress of a beat in a bar. The beat register BTR is counted up for each step time. In this embodiment, one beat is 48
It is the step resolution. Therefore, the beat register BT
R is rounded to zero after counting four beats in the case of four beats, that is, 192 steps. At this time, measure register B
RR is controlled to be incremented. The bar register BRR and the beat register BTR are used to read out step time correction data and velocity correction data for generating fluctuation (the details will be described later).

【0030】このRAM12には、上述したようなバッ
ファ、レジスタ等が定義されている他、パターンデータ
及び揺らぎデータが格納されるようになっている。揺ら
ぎデータは、ステップタイム補正データとベロシティ補
正データとで構成されている。以下、これらの各データ
について説明する。
In the RAM 12, in addition to the above-described buffers, registers, and the like, pattern data and fluctuation data are stored. The fluctuation data is composed of step time correction data and velocity correction data. Hereinafter, each of these data will be described.

【0031】パターンデータ パターンデータは、例えば2〜16小節程度の演奏パタ
ーンを発生させるために使用される。このパターンデー
タは、例えば図14(B)に示されるような、ステップ
タイム、ノートナンバ(キーコード)、ゲートタイム及
びベロシティといった4バイトのデータの集合で構成さ
れている。個々のパターンデータは、1つの音符に対応
している。ここに、ステップタイムは発音を開始する時
刻を指定するものであり小節の先頭からのステップ数で
規定される。ノートナンバは音高を規定するために使用
される。ゲートタイムは発音時間を規定するために使用
される。ベロシティは発音の強さ(音量)を規定するた
めに使用される。
Pattern Data Pattern data is used to generate a performance pattern of, for example, about 2 to 16 measures. The pattern data is composed of a set of 4-byte data such as a step time, a note number (key code), a gate time, and a velocity, as shown in FIG. Each pattern data corresponds to one musical note. Here, the step time designates the time at which the sound starts, and is defined by the number of steps from the beginning of the bar. The note number is used to define the pitch. The gate time is used to define the sounding time. Velocity is used to define the sound intensity (volume).

【0032】ステップタイム補正データ ステップタイム補正データは、例えば図15にその一部
を示すように、各パート1〜4のそれぞれについて1曲
の全小節分が用意されている。本実施の形態では1拍
(4分音符)を48ステップの分解能で制御するものと
している。従って、ステップタイム補正データは、図1
5に拡大して示すように、各拍のステップタイムを±2
4ステップの範囲内で変動できるように定義されてい
る。これにより、最大8分音符の長さまで発音タイミン
グを遅らせ又は進ませることができる。ただし、負側に
補正する場合は、ステップタイム補正データは、後述す
るパート1〜4読出処理ルーチン(図9、図10)にお
ける処理の関係上、1つ前のデータに対して「−1ステ
ップ」分だけ変化するように作成される。
Step Time Correction Data As shown in FIG. 15, for example, part of the step time correction data is prepared for each bar of each of the parts 1-4. In the present embodiment, one beat (a quarter note) is controlled with a resolution of 48 steps. Therefore, the step time correction data is shown in FIG.
As shown in the enlarged view of FIG.
It is defined so that it can be varied within four steps. This makes it possible to delay or advance the sounding timing up to a maximum length of an eighth note. However, in the case of correcting to the negative side, the step time correction data is obtained by adding “−1 step” to the immediately preceding data due to the processing in the part 1 to 4 reading processing routine (FIGS. 9 and 10) described later. "It is created to change by minutes.

【0033】なお、ステップタイム補正データは、1小
節を4つのエリア(4分音符単位)に分割し、各エリア
毎に用意されている。従って、1つのエリアの中に複数
のキーイベントがある場合は、同一のステップタイム補
正データが使用されることになる。かかるデータ構成に
よりステップタイム補正データの量を小さく抑えること
ができるものとなっている。
The step time correction data is prepared for each area by dividing one bar into four areas (in quarter note units). Therefore, when there are a plurality of key events in one area, the same step time correction data is used. With such a data configuration, the amount of the step time correction data can be reduced.

【0034】ベロシティ補正データ ベロシティ補正データは、例えば図16にその一部を示
すように、各パート1〜4のそれぞれについて1曲の全
小節分が用意されている。本実施の形態では1拍(4分
音符)毎の補正レートVAnを補正データとして記憶し
ている。即ち、ベロシティ補正データは、図16に拡大
して示すように、各拍毎に「0.0〜2.0」の範囲内
で変動できるように定義されている。従って、1倍を中
心に0倍から2倍までの範囲でベロシティを補正でき
る。
Velocity Correction Data As shown in FIG. 16, for example, the velocity correction data includes one bar for each of the parts 1-4. In the present embodiment, the correction rate VAn for each beat (quarter note) is stored as correction data. That is, the velocity correction data is defined so as to be able to vary within a range of “0.0 to 2.0” for each beat, as shown in an enlarged manner in FIG. Therefore, the velocity can be corrected in a range from 0 to 2 times around 1 time.

【0035】なお、ベロシティ補正データも上記ステッ
プタイム補正データと同様に、1小節を4つのエリア
(4分音符単位)に分割し、各エリア毎に用意されてい
る。従って、1つのエリアの中に複数のキーイベントが
ある場合は、同一のベロシティ補正データが使用される
ことになる。かかるデータ構成によりベロシティ補正デ
ータの量を小さく抑えることができるものとなってい
る。
As in the case of the step time correction data, the velocity correction data is also prepared by dividing one bar into four areas (in quarter note units) and for each area. Therefore, when there are a plurality of key events in one area, the same velocity correction data is used. With such a data configuration, the amount of velocity correction data can be reduced.

【0036】図1の説明に戻る。操作パネル13には、
本自動演奏装置と操作者とがコミュニケーションするた
めの各種スイッチ、表示器等が設けられている。この操
作パネル13の詳細については後述する。
Returning to the description of FIG. On the operation panel 13,
Various switches, indicators, and the like are provided for communication between the automatic performance device and the operator. Details of the operation panel 13 will be described later.

【0037】楽音発生器14は発音手段の一部に対応す
るものであり、CPU10からシステムバス30を介し
て送られてくるデータに基づいて楽音信号を生成するも
のである。この楽音発生器14で発生された楽音信号
は、スピーカシステム16に送られる。スピーカシステ
ム16は発音手段の一部に対応するものであり、例えば
増幅器、スピーカ等で構成されており、楽音発生器14
から送られてくる楽音信号を音響信号に変換して放音す
る周知のものである。
The tone generator 14 corresponds to a part of the tone generator, and generates a tone signal based on data sent from the CPU 10 via the system bus 30. The tone signal generated by the tone generator 14 is sent to the speaker system 16. The loudspeaker system 16 corresponds to a part of the sound generator, and is composed of, for example, an amplifier, a speaker, and the like.
It is a well-known device that converts a tone signal sent from a computer into an acoustic signal and emits the sound.

【0038】タイマ16は、テンポに対応した間隔で割
込信号を発生する。この割込信号の発生間隔は、CPU
10からタイマ16にセットされるデータにより決定さ
れる。このタイマ16で発生された割込信号はCPU1
0の割込信号入力端子INT2に供給される。本実施の
形態では、4分音符を1/48の分解能(精度)で制御
するものとしている。従って、4分音符当たりに48回
の割込信号が発生されることになる。
The timer 16 generates an interrupt signal at intervals corresponding to the tempo. The interrupt signal generation interval is determined by the CPU
10 is determined by data set in the timer 16. The interrupt signal generated by this timer 16 is
0 is supplied to the interrupt signal input terminal INT2. In the present embodiment, quarter notes are controlled with a resolution (accuracy) of 1/48. Therefore, 48 interrupt signals are generated per quarter note.

【0039】MIDIコントローラ17は、外部装置と
本自動演奏装置との間のMIDIデータの転送を制御す
るものである。このMIDIコントローラ17の外部側
に接続される外部装置としては、例えばMIDIデータ
を処理することのできる電子楽器、音源モジュール、コ
ンピュータ、シーケンサ等が挙げられる。MIDIコン
トローラ17は、外部装置からシリアルに送られてくる
MIDIデータを受信し、これが例えば1バイト分にな
った時点で割込信号を発生する。この割込信号は、CP
U10の割込信号入力端子INT1に供給される。
The MIDI controller 17 controls the transfer of MIDI data between the external device and the automatic performance device. Examples of the external device connected to the outside of the MIDI controller 17 include an electronic musical instrument, a sound source module, a computer, a sequencer, and the like, which can process MIDI data. The MIDI controller 17 receives MIDI data serially transmitted from an external device, and generates an interrupt signal when the MIDI data becomes, for example, 1 byte. This interrupt signal is CP
It is supplied to an interrupt signal input terminal INT1 of U10.

【0040】FDコントローラ18は、フロッピー(登
録商標)ディスクドライブ装置19を制御するものであ
る。フロッピーディスクドライブ装置19に装着される
フロッピーディスクには、例えば、パターンデータ、揺
らぎデータ等が記憶される。そして、操作パネルに設け
られた所定のスイッチ(図示しない)を操作することに
より、フロッピーディスクに記録されている上記パター
ンデータ、揺らぎデータがFDコントローラ18を介し
てRAM12の所定領域にロードされる。
The FD controller 18 controls the floppy (registered trademark) disk drive 19. The floppy disk mounted on the floppy disk drive 19 stores, for example, pattern data, fluctuation data, and the like. By operating a predetermined switch (not shown) provided on the operation panel, the pattern data and the fluctuation data recorded on the floppy disk are loaded into a predetermined area of the RAM 12 via the FD controller 18.

【0041】図2は本自動演奏装置の操作パネル13の
構成例を示す図である。小節/拍表示器130は、例え
ば5桁の7セグメントLED表示器で構成されている。
この小節/拍表示器130の上位4桁には、現在自動演
奏されている「小節」、つまり小節レジスタBRRの内
容が表示され、下位1桁には現在自動演奏されている
「拍」、つまり拍レジスタBTRの内容に対応する拍
(具体的には、4拍子の場合は、拍レジスタBTRの内
容を48で割って得られる商に1を加えた値)が表示さ
れる。この小節/拍表示器の表示内容は、自動演奏の進
行に伴って順次更新される。
FIG. 2 is a diagram showing a configuration example of the operation panel 13 of the automatic performance apparatus. The bar / beat indicator 130 is constituted by, for example, a 5-digit 7-segment LED indicator.
The upper four digits of the bar / beat indicator 130 indicate the "measure" currently being played automatically, that is, the contents of the bar register BRR, and the lower one digit is the "beat" currently being played automatically, that is, A beat corresponding to the content of the beat register BTR (specifically, in the case of quadruple, a value obtained by adding 1 to a quotient obtained by dividing the content of the beat register BTR by 48) is displayed. The display contents of the bar / beat display are sequentially updated as the automatic performance progresses.

【0042】コード表示器131は、例えばLCD表示
器で構成されている。このコード表示器131には、後
述するコード検出処理で検出されたコード(コードルー
ト及びコードタイプ)が表示される。本実施の形態で
は、MIDIチャンネル1(MIDI−CH1)により
送られてきたMIDIデータをロワー鍵からのデータと
みなし、これに対してコード検出を行うものとする。従
って、このコード表示器131には、MIDIチャンネ
ル1から送られてきたMIDIデータに基づいて検出さ
れたコードが表示される。なお、コード検出は、MID
Iチャンネル1から送られてきた演奏データに限定され
ず、他の任意のMIDIチャンネル、或いは複数のMI
DIチャンネルから送られてきた演奏データを対象とす
るように構成しても良い。
The code display 131 comprises, for example, an LCD display. The code display 131 displays codes (code routes and code types) detected in a code detection process described later. In the present embodiment, it is assumed that MIDI data transmitted by MIDI channel 1 (MIDI-CH1) is regarded as data from a lower key, and code detection is performed on the data. Therefore, the code detected on the basis of the MIDI data transmitted from the MIDI channel 1 is displayed on the code display 131. Note that the code detection is performed by MID
The performance data is not limited to the performance data transmitted from the I channel 1, but may be any other MIDI channel or a plurality of MIDI channels.
The performance data transmitted from the DI channel may be configured as a target.

【0043】テンポスピード表示器132は、例えば3
桁の7セグメントLED表示器で構成されている。この
テンポスピード表示器132には、現在設定されている
テンポスピードが表示される。
The tempo speed indicator 132 is, for example, 3
It consists of a digit 7-segment LED display. The tempo speed indicator 132 displays the currently set tempo speed.

【0044】なお、小節/拍表示器130及びテンポス
ピード表示器132は、7セグメントのLED表示器で
構成したが、LCD表示器、CRT表示器、その他の種
々の表示器で構成することができる。同様に、コード表
示器131もLCD表示器に限定されず、CRT表示
器、その他の種々の表示器で構成することができる。
Although the bar / beat display 130 and the tempo speed display 132 are composed of a 7-segment LED display, they can be composed of an LCD display, a CRT display and other various displays. . Similarly, the code display 131 is not limited to the LCD display, but may be a CRT display or other various displays.

【0045】インクリメンタ133は、テンポを設定す
るために使用される。このインクリメンタ133は、例
えば右回転させることによりテンポが増加し、左回転さ
せることによりテンポが減少するように制御される。そ
して、このインクリメンタ133で設定されたテンポ
は、テンポスピード表示器132に表示される。
The incrementer 133 is used for setting a tempo. The incrementer 133 is controlled such that, for example, the right-handed rotation increases the tempo, and the left-handed rotation decreases the tempo. The tempo set by the incrementer 133 is displayed on the tempo speed display 132.

【0046】ストップスイッチ134は、自動演奏を停
止させるために使用される。即ち、自動演奏中にストッ
プスイッチ134が押されると自動演奏は停止される。
プレイ/ポーズスイッチ135は、自動演奏を開始させ
又は一時停止させるために使用される。自動演奏の停止
中又はポーズ(一時停止)状態にあるときに、このプレ
イ/ポーズスイッチ135が押されるとLED表示器1
43が点灯されて自動演奏が開始又は再開され、自動演
奏中に押されるとLED表示器143が消灯されてポー
ズ状態になる。
The stop switch 134 is used to stop automatic performance. That is, if the stop switch 134 is pressed during the automatic performance, the automatic performance is stopped.
The play / pause switch 135 is used to start or pause automatic performance. When the play / pause switch 135 is pressed while the automatic performance is stopped or in a pause (pause) state, the LED display 1
43 is turned on to start or restart the automatic performance, and when pressed during automatic performance, the LED display 143 is turned off and the apparatus enters a pause state.

【0047】FFスイッチ136は、テンポスピードを
上げて再生するために使用される。即ち、自動演奏状態
にあるときにFFスイッチ136が押されるとLED表
示器144が点灯されて高速再生が行われ、次に押され
るとLED表示器144が消灯されて元のテンポスピー
ドに戻る。REWスイッチ137は、再生位置を戻すた
めに使用される。即ち、このREWスイッチ137が押
下されるとLED表示器145が点灯されて小節/拍数
が減少(リワインド)する。このリワインド状態は小節
/拍表示器130で確認することができる。リワインド
状態で再度REWスイッチ137が押されるとLED表
示器145が消灯されて自動演奏の再生が再開される。
The FF switch 136 is used to increase the tempo speed for reproduction. That is, when the FF switch 136 is pressed during the automatic performance state, the LED display 144 is turned on to perform high-speed reproduction, and when pressed again, the LED display 144 is turned off and returns to the original tempo speed. The REW switch 137 is used to return the playback position. That is, when the REW switch 137 is pressed, the LED display 145 is turned on, and the measure / beat count is reduced (rewind). This rewind state can be confirmed on the bar / beat indicator 130. When the REW switch 137 is pressed again in the rewind state, the LED display 145 is turned off and the reproduction of the automatic performance is restarted.

【0048】リピートスイッチ138は、曲を繰り返し
自動演奏させるために使用される。即ち、自動演奏を開
始させる前にこのリピートスイッチ138が押されると
LED表示器146が点灯され、曲の最後まで自動演奏
が行われると最初に戻って同じ曲の自動演奏が繰り返さ
れる。この状態で再度リピートスイッチ138が押され
るとLED表示器146が消灯されて自動演奏の繰り返
し再生状態は解除される。なお、このリピートスイッチ
138は、自動演奏状態で所定の操作を行うことによ
り、曲の特定区間を繰り返し再生するためにも使用され
るがここでは説明は省略する。
The repeat switch 138 is used to automatically and repeatedly play a music piece. That is, if the repeat switch 138 is pressed before the automatic performance is started, the LED display 146 is turned on. When the automatic performance is performed to the end of the music, the automatic performance of the same music is repeated by returning to the beginning. When the repeat switch 138 is pressed again in this state, the LED display 146 is turned off, and the repeated reproduction state of the automatic performance is released. The repeat switch 138 is also used to repeatedly reproduce a specific section of the music by performing a predetermined operation in an automatic performance state, but the description thereof is omitted here.

【0049】パートスイッチ139〜142は指示手段
に対応するものである。パート1スイッチ139は、リ
ズムパートの発音を指示するために使用される。このパ
ート1スイッチ139が押されるとLED表示器147
が点灯されてリズムパートが発音され、次に押されると
LED表示器147が消灯されてリズムパートの発音は
停止される。同様に、パート2スイッチ140は、ベー
スパートの発音を指示するために使用される。このパー
ト2スイッチ140が押されるとLED表示器148が
点灯されてベースパートが発音され、次に押されるとL
ED表示器148が消灯されてベースパートの発音は停
止される。
The part switches 139 to 142 correspond to instruction means. The part 1 switch 139 is used to instruct the rhythm part to sound. When this part 1 switch 139 is pressed, the LED display 147 is displayed.
Is turned on to sound the rhythm part, and when pressed next time, the LED display 147 is turned off and the sound of the rhythm part is stopped. Similarly, the part 2 switch 140 is used to instruct the sounding of the bass part. When this part 2 switch 140 is pressed, the LED display 148 is turned on and the base part is sounded.
The ED display 148 is turned off, and the sound of the bass part is stopped.

【0050】同様に、パート3スイッチ141は、アカ
ンパニメントパート(例えばコードパート等)の発音を
指示するために使用される。このパート3スイッチ14
1が押されるとLED表示器149が点灯されてアカン
パニメントパートが発音され、次に押されるとLED表
示器149が消灯されてアカンパニメントパートの発音
が停止される。同様に、パート4スイッチ142は、メ
ロディパートを指示するために使用される。このパート
4スイッチ142が押されるとLED表示器150が点
灯されてメロディパートが発音され、次に押されるとL
ED表示器150が消灯されてメロディパートの発音が
停止される。
Similarly, the part 3 switch 141 is used to instruct the sounding of an accompaniment part (for example, a chord part). This part 3 switch 14
When the button 1 is pressed, the LED display 149 is turned on to emit the sound of the accompaniment part. When the button 1 is pressed next time, the LED display 149 is turned off and the sound of the accompaniment part is stopped. Similarly, the part 4 switch 142 is used to indicate a melody part. When this part 4 switch 142 is pressed, the LED display 150 is turned on and the melody part is sounded.
The ED display 150 is turned off and the sound of the melody part is stopped.

【0051】上記各パートのうち、リズムパート、ベー
スパート及びアカンパニメントパートは1〜数小節程度
のパターンデータの繰り返し実行により発音されるもの
であり、本発明は、これら各パートに揺らぎを与えて単
調さを解消するものである。なお、メロディパートは、
1曲分の全パターンデータが記憶される。
Among the above parts, the rhythm part, the bass part, and the accompaniment part are produced by repeatedly executing pattern data of about one to several measures, and the present invention gives fluctuations to these parts. Is to eliminate monotony. The melody part is
All pattern data for one music is stored.

【0052】操作パネル13には、上記以外に複数の音
色の中から所望の音色を選択する音色選択操作子、音量
を調整する音量操作子、フロッピーディスクからのデー
タをRAM12にロードするための操作子等が設けられ
ているが、本発明とは直接関係しないので図示及び説明
は省略する。
In addition to the above, the operation panel 13 has a tone selection operator for selecting a desired tone from a plurality of tones, a volume operator for adjusting the volume, and an operation for loading data from the floppy disk into the RAM 12. Although these elements are provided, they are not directly related to the present invention, and thus illustration and description are omitted.

【0053】上記のように構成される操作パネル13の
各スイッチ等の設定状態は次のようにしてCPU10に
読み込まれる。即ち、CPU10は操作パネル13に対
してスキャン指令を送出する。操作パネル13は、この
スキャン指令に応答して操作各スイッチのオン/オフを
示す信号及びインクリメンタ133の現在値を示す信号
をCPU10に送る。CPU10は、受け取った信号か
らパネルデータ(各スイッチのオン/オフを1ビットに
対応させたスイッチデータとインクリメンタ133の設
定値を示すインクリメンタデータとで成る。)を生成す
る。このパネルデータは、CPU10の制御下でRAM
12に格納され、パネルイベントの有無を判断するため
に使用される(詳細は後述)。
The setting states of the switches and the like on the operation panel 13 configured as described above are read into the CPU 10 as follows. That is, the CPU 10 sends a scan command to the operation panel 13. The operation panel 13 sends a signal indicating on / off of each operation switch and a signal indicating the current value of the incrementer 133 to the CPU 10 in response to the scan command. The CPU 10 generates panel data (consisting of switch data in which ON / OFF of each switch corresponds to one bit and incrementer data indicating a set value of the incrementer 133) from the received signal. This panel data is stored in a RAM under the control of the CPU 10.
12 is used to determine the presence or absence of a panel event (details will be described later).

【0054】次に、本発明の自動演奏装置の動作につ
き、図3〜図12に示したフローチャートを参照しなが
ら詳細に説明する。
Next, the operation of the automatic performance device of the present invention will be described in detail with reference to the flowcharts shown in FIGS.

【0055】(1)メイン処理(図3) 図3は、本発明の自動演奏装置のメインルーチンを示す
フローチャートであり、電源投入により起動される。電
源が投入されると、先ず、初期化処理が行われる(ステ
ップS10)。この初期化処理では、CPU10の内部
状態が初期状態に設定されると共に、RAM12に定義
されているレジスタ、カウンタ或いはフラグ等に初期値
が設定される。
(1) Main Processing (FIG. 3) FIG. 3 is a flowchart showing a main routine of the automatic musical instrument according to the present invention, which is started when the power is turned on. When the power is turned on, first, an initialization process is performed (step S10). In this initialization process, the internal state of the CPU 10 is set to the initial state, and an initial value is set to a register, a counter, a flag, or the like defined in the RAM 12.

【0056】この初期化処理が終了すると、次いでパネ
ルスイッチスキャン処理が行われる(ステップS1
1)。即ち、CPU10は操作パネル13に対してスキ
ャン指令を送出する。これにより、操作パネル13は、
既に説明したようにパネルデータを生成し、CPU10
に送る。CPU10は、このパネルデータ(以下、「新
パネルデータ」という。)をRAM12の所定領域に格
納する。次いで、前回のパネルスイッチスキャン処理で
読み込んで既にRAM12に記憶されているパネルデー
タ(以下、「旧パネルデータ」という。)と、上記新パ
ネルデータとを比較して相違するビットをオンにしたパ
ネルイベントマップを作成する。
When the initialization process is completed, a panel switch scan process is performed (step S1).
1). That is, the CPU 10 sends a scan command to the operation panel 13. Thereby, the operation panel 13
The panel data is generated as described above,
Send to The CPU 10 stores this panel data (hereinafter, referred to as “new panel data”) in a predetermined area of the RAM 12. Next, panel data read in the previous panel switch scan process and already stored in the RAM 12 (hereinafter referred to as "old panel data") is compared with the new panel data, and a panel having a different bit turned on is compared. Create an event map.

【0057】次いで、イベントの有無が調べられる(ス
テップS12)。これは、上記パネルイベントマップを
参照することにより行われる。即ち、パネルイベントマ
ップ中にオンになっているビットが1つ以上存在するか
どうかが調べられ、1つも存在しなければイベントはな
かったものと、1つ以上存在すればイベントがあったも
のとそれぞれ判断される。このステップS12でイベン
トがあることが判断されるとパネル制御処理が行われ
(ステップS13)、そうでなければパネル制御処理は
スキップされる。このパネル制御処理の詳細については
後述する。
Next, the presence or absence of an event is checked (step S12). This is performed by referring to the panel event map. That is, it is checked whether or not one or more bits are on in the panel event map. If there is no bit, there is no event, and if there is one or more, there is an event. Each is judged. If it is determined in step S12 that there is an event, a panel control process is performed (step S13). Otherwise, the panel control process is skipped. The details of the panel control process will be described later.

【0058】次いで、受信バッファに受信データ(MI
DIデータ)があるかどうかが調べられる(ステップS
14)。これは、上述したように、カウンタCTRの内
容とポインタPTRの内容とが一致するかどうかを調べ
ることにより行われる。ここで受信バッファに受信デー
タがあることが判断されるとMIDI−IN処理が行わ
れ(ステップS15)、そうでなければMIDI−IN
処理はスキップされる。このMIDI−IN処理の詳細
については後述する。
Next, the reception data (MI
DI data) is checked (step S).
14). This is performed by checking whether or not the contents of the counter CTR and the contents of the pointer PTR match as described above. Here, if it is determined that there is received data in the receiving buffer, a MIDI-IN process is performed (step S15);
Processing is skipped. Details of the MIDI-IN processing will be described later.

【0059】次いで、パート1〜4読出処理が実行され
る(ステップS16)。この処理は、各パートのパター
ンデータを読み出して楽音を再生する処理である。この
パート1〜4読出処理の詳細については後述する。
Next, the part 1 to part 4 reading processing is executed (step S16). This process is a process of reading the pattern data of each part and reproducing a musical tone. The details of the part 1-4 reading process will be described later.

【0060】次いで、「その他の処理」が行われる(ス
テップS17)。この「その他の処理」では、フロッピ
ーディスクの制御、音色選択処理、ボリューム設定処理
等が行われるが、本発明とは直接関係しないので説明は
省略する。その後、ステップS11に戻り、以下同様の
処理が繰り返される。
Next, "other processing" is performed (step S17). In this "other processing", control of the floppy disk, tone color selection processing, volume setting processing, and the like are performed, but the description is omitted because it is not directly related to the present invention. Thereafter, the process returns to step S11, and the same processing is repeated thereafter.

【0061】(2)MIDI−IN割込処理(図4) このMIDI−IN割込処理は、メインルーチンの処理
に割り込んで実行される。このMIDI−IN割込処理
では、MIDIコントローラ17で受信されたMIDI
データが受信バッファに格納される。MIDIコントロ
ーラ17は、外部装置からシリアルに送られてくるMI
DIデータが1バイト分になると割込信号を発生する。
この割込信号はCPU10の割込信号入力端子INT1
に供給される。これにより、CPU10は割込モードに
入り、本MIDI−IN割込処理ルーチンがコールされ
る。
(2) MIDI-IN interrupt processing (FIG. 4) This MIDI-IN interrupt processing is executed by interrupting the processing of the main routine. In this MIDI-IN interrupt processing, the MIDI
Data is stored in the reception buffer. The MIDI controller 17 receives the MIDI serially transmitted from the external device.
When the DI data reaches one byte, an interrupt signal is generated.
This interrupt signal is input to the interrupt signal input terminal INT1 of the CPU 10.
Supplied to As a result, the CPU 10 enters the interrupt mode, and the MIDI-IN interrupt processing routine is called.

【0062】MIDI−IN割込処理では、先ず、MI
DIコントローラ17からMIDIデータが読み込ま
れ、これが受信バッファのカウンタCTRで示される位
置に書き込まれる(ステップS20)。次いで、カウン
タCTRがインクリメントされ(ステップS21)、そ
の結果が記憶エリアの最大値TOPを越えたかどうかが
調べられる(ステップS22)。そして、最大値TOP
を越えていないことが判断されるとこのMIDI−IN
処理ルーチンからメインルーチンの割り込まれた位置に
戻る。一方、上記ステップS22で最大値TOPを越え
たことが判断されると、カウンタCTRの内容が最小値
BTMに書き換えられ(ステップS23)、その後、こ
のMIDI−IN処理ルーチンからメインルーチンの割
り込まれた位置に戻る。これにより、最大値TOPから
最小値BTMへラウンドする循環バッファの機能が実現
されている。
In the MIDI-IN interrupt processing, first,
The MIDI data is read from the DI controller 17 and written to a position of the reception buffer indicated by the counter CTR (step S20). Next, the counter CTR is incremented (step S21), and it is checked whether the result has exceeded the maximum value TOP of the storage area (step S22). And the maximum value TOP
MIDI-IN
The processing routine returns to the interrupted position of the main routine. On the other hand, if it is determined in step S22 that the value exceeds the maximum value TOP, the content of the counter CTR is rewritten to the minimum value BTM (step S23), and thereafter, the MIDI-IN processing routine interrupts the main routine. Return to position. As a result, a function of a circular buffer for rounding from the maximum value TOP to the minimum value BTM is realized.

【0063】なお、図中には示されていないが、カウン
タCTRをインクリメントした結果がポインタPTRの
値を越えることとなる場合は受信バッファは満杯である
ので、MIDIデータの取り込み処理は抑止される。
Although not shown in the figure, if the result of incrementing the counter CTR exceeds the value of the pointer PTR, the reception buffer is full, and the MIDI data fetching process is suppressed. .

【0064】(3)パネル制御処理(図5) 次に、メインルーチンのステップS13で行われるパネ
ル制御処理の詳細について、図5のフローチャートを参
照しながら説明する。
(3) Panel Control Process (FIG. 5) Next, the details of the panel control process performed in step S13 of the main routine will be described with reference to the flowchart of FIG.

【0065】このパネル制御処理ルーチンは、メインル
ーチンでパネルスイッチ等のイベントがあったことが判
断された場合にコールされる。パネル制御処理では、先
ず、インクリメンタ133のイベントがあるかどうかが
調べられる(ステップS30)。即ち、新旧両パネルデ
ータ中のインクリメンタデータが比較され、これらが相
違する場合にインクリメンタ133のイベントがあった
ことが判断される。このステップS30でインクリメン
タ133のイベントがあったことが判断されるとテンポ
スピード処理が行われ(ステップS31)、そうでなけ
ればテンポスピード処理はスキップされる。テンポスピ
ード処理では、新パネルデータ中のインクリメンタデー
タがタイマ16にセットされると共に、テンポスピード
表示器132に送られる。これによりタイマ16から発
生される割込信号の間隔が変更されて自動演奏のテンポ
スピードが変更される。また、変更後のテンポスピード
がテンポスピード表示器132に表示される。
This panel control processing routine is called when it is determined in the main routine that an event such as a panel switch has occurred. In the panel control process, first, it is checked whether or not there is an event of the incrementer 133 (step S30). That is, the incrementer data in both the new and old panel data is compared, and if they differ, it is determined that the event of the incrementer 133 has occurred. If it is determined in step S30 that there has been an event of the incrementer 133, tempo speed processing is performed (step S31). Otherwise, the tempo speed processing is skipped. In the tempo speed process, the incrementer data in the new panel data is set in the timer 16 and sent to the tempo speed indicator 132. Thereby, the interval of the interrupt signal generated from the timer 16 is changed, and the tempo speed of the automatic performance is changed. The changed tempo speed is displayed on the tempo speed indicator 132.

【0066】次いで、ストップスイッチ134のイベン
トがあるかどうかが調べられる(ステップS32)。こ
れは、パネルイベントマップ中のストップスイッチ13
4に対応するビットが「1」であるかどうかを調べるこ
とにより行われる。ここでストップスイッチ134のイ
ベントがあることが判断されるとストップ処理が行われ
(ステップS33)、そうでなければストップ処理はス
キップされる。ストップ処理では、RAM12に定義さ
れている自動演奏フラグが「0」にクリアされる。これ
により、後述するタイマ割込処理(図12)において小
節レジスタBRR及び拍レジスタBTRの更新が抑止さ
れて自動演奏の進行が停止され、各パートの発音が停止
される。
Next, it is checked whether or not there is an event of the stop switch 134 (step S32). This is the stop switch 13 in the panel event map.
This is performed by checking whether the bit corresponding to 4 is “1”. Here, if it is determined that there is an event of the stop switch 134, a stop process is performed (step S33), otherwise, the stop process is skipped. In the stop processing, the automatic performance flag defined in the RAM 12 is cleared to “0”. As a result, in the timer interrupt processing (FIG. 12) described later, the updating of the bar register BRR and the beat register BTR is suppressed, the progress of the automatic performance is stopped, and the sound emission of each part is stopped.

【0067】次いで、プレイ/ポーズスイッチ135の
イベントがあるかどうかが調べられる(ステップS3
4)。これは、パネルイベントマップ中のプレイ/ポー
ズスイッチ135に対応するビットが「1」であるかど
うかを調べることにより行われる。ここでプレイ/ポー
ズスイッチ135のイベントがあることが判断されると
プレイ処理が行われ(ステップS35)、そうでなけれ
ばプレイ処理はスキップされる。プレイ処理では、上記
自動演奏フラグが「0」、つまり自動演奏停止中にプレ
イ/ポーズスイッチ135が押されたことが判断される
と自動演奏フラグが「1」にセットされると共に、LE
D表示器143が点灯される。これにより、後述するタ
イマ割込処理(図12)において小節レジスタBRR及
び拍レジスタBTRの更新が開始され、自動演奏が進行
される。逆に、自動演奏フラグが「1」、つまり自動演
奏中にプレイ/ポーズスイッチ135が押されたことが
判断されると自動演奏フラグが「0」にクリアされると
共に、LED表示器143が消灯される。これにより、
上記ストップスイッチ134が押された時と同様の処理
が行われて各パートの発音が停止される。
Next, it is checked whether there is an event of the play / pause switch 135 (step S3).
4). This is performed by checking whether or not the bit corresponding to the play / pause switch 135 in the panel event map is “1”. Here, if it is determined that there is an event of the play / pause switch 135, a play process is performed (step S35), otherwise, the play process is skipped. In the play processing, when it is determined that the automatic performance flag is "0", that is, the play / pause switch 135 is pressed while the automatic performance is stopped, the automatic performance flag is set to "1" and the LE is set.
The D display 143 is turned on. As a result, in the timer interrupt processing (FIG. 12) described later, updating of the bar register BRR and the beat register BTR is started, and the automatic performance proceeds. Conversely, if it is determined that the automatic performance flag is "1", that is, the play / pause switch 135 is pressed during the automatic performance, the automatic performance flag is cleared to "0" and the LED display 143 is turned off. Is done. This allows
The same processing as when the stop switch 134 is pressed is performed, and the sound emission of each part is stopped.

【0068】次いで、FFスイッチ136のイベントが
あるかどうかが調べられる(ステップS36)。これ
は、パネルイベントマップ中のFFスイッチ136に対
応するビットが「1」であるかどうかを調べることによ
り行われる。ここでFFスイッチ136のイベントがあ
ることが判断されるとFF処理が行われ(ステップS3
7)、そうでなければFF処理はスキップされる。FF
処理では、RAM12に定義されたFFフラグが
「0」、つまり通常再生中にFFスイッチ136が押さ
れたことが判断されるとFFフラグが「1」にセットさ
れ、タイマ16に所定のデータがセットされると共に、
LED表示器144が点灯される。これにより、テンポ
スピードが早くなって高速再生が行われる。逆に、FF
フラグが「1」、つまり高速再生中にFFスイッチ13
6が押されたことが判断されるとFFフラグが「0」に
クリアされ、タイマ16に元のデータがリストアされる
と共に、LED表示器144が消灯される。これによ
り、FFスイッチ136が押される前のテンポスピード
に戻る。
Next, it is checked whether or not there is an event of the FF switch 136 (step S36). This is performed by checking whether the bit corresponding to the FF switch 136 in the panel event map is “1”. Here, if it is determined that there is an event of the FF switch 136, FF processing is performed (step S3).
7), otherwise the FF processing is skipped. FF
In the processing, when it is determined that the FF flag defined in the RAM 12 is “0”, that is, when the FF switch 136 is pressed during the normal reproduction, the FF flag is set to “1”, and the predetermined data is stored in the timer 16. While being set,
The LED indicator 144 is turned on. As a result, the tempo speed is increased and high-speed reproduction is performed. Conversely, FF
The flag is “1”, that is, the FF switch 13
When it is determined that 6 has been pressed, the FF flag is cleared to "0", the original data is restored to the timer 16, and the LED display 144 is turned off. This returns to the tempo speed before the FF switch 136 was pressed.

【0069】次いで、REWスイッチ137のイベント
があるかどうかが調べられる(ステップS38)。これ
は、パネルイベントマップ中のREWスイッチ137に
対応するビットが「1」であるかどうかを調べることに
より行われる。ここでREWスイッチ137のイベント
があることが判断されるとREW処理が行われ(ステッ
プS39)、そうでなければREW処理はスキップされ
る。REW処理では、RAM12に定義されたREWフ
ラグが「0」、つまり通常再生中にREWスイッチ13
7が押されたことが判断されるとREWフラグが「1」
にセットされ、RAM12に定義された小節レジスタB
RR及び拍レジスタBTRが所定の速度でデクリメント
され、その結果が小節/拍表示器130に送られると共
に、LED表示器145が点灯される。これにより、小
節/拍表示器130の表示がデクリメントされながら自
動演奏のシーケンスが後退する。なお、このREW処理
中には発音は停止される。逆に、FFフラグが「1」、
つまり高速再生中にREWスイッチ137が押されたこ
とが判断されるとREWフラグが「0」にクリアされ、
LED表示器145が消灯される。これにより、減少さ
れた小節レジスタBRR及び拍レジスタBTRの位置か
ら自動演奏が再開される。
Next, it is checked whether there is an event of the REW switch 137 (step S38). This is performed by checking whether the bit corresponding to the REW switch 137 in the panel event map is “1”. Here, if it is determined that there is an event of the REW switch 137, the REW process is performed (step S39), and if not, the REW process is skipped. In the REW process, the REW flag defined in the RAM 12 is set to “0”,
When it is determined that 7 has been pressed, the REW flag is set to "1".
And the bar register B defined in the RAM 12
The RR and beat register BTR are decremented at a predetermined rate, the result is sent to the bar / beat indicator 130, and the LED indicator 145 is turned on. Thereby, the display of the bar / beat indicator 130 is decremented, and the sequence of the automatic performance is retreated. Note that the sound generation is stopped during the REW processing. Conversely, if the FF flag is “1”,
That is, when it is determined that the REW switch 137 has been pressed during high-speed playback, the REW flag is cleared to “0”, and
The LED display 145 is turned off. As a result, the automatic performance is restarted from the reduced bar register BRR and beat register BTR.

【0070】次いで、リピートスイッチ138のイベン
トがあるかどうかが調べられる(ステップS40)。こ
れは、パネルイベントマップ中のリピートスイッチ13
8に対応するビットが「1」であるかどうかを調べるこ
とにより行われる。ここでリピートスイッチ138のイ
ベントがあることが判断されるとリピート処理が行われ
(ステップS41)、そうでなければリピート処理はス
キップされる。リピート処理では、RAM12に定義さ
れたリピートフラグが「0」であればリピートフラグが
「1」にセットされると共に、LED表示器146が点
灯される。逆に、リピートフラグが「1」であればリピ
ートフラグが「0」にクリアされ、LED表示器145
が消灯される。これにより、詳細は図示されていない
が、1曲分のパターンデータの読み出しが終了した場合
に、リピートフラグが「1」であれば自動演奏のシーケ
ンスは曲の先頭に戻り、同じ自動演奏が繰り返し実行さ
れる。一方、リピートフラグが「0」であれば自動演奏
は停止される。
Next, it is checked whether there is an event of the repeat switch 138 (step S40). This is the repeat switch 13 in the panel event map.
This is performed by checking whether the bit corresponding to 8 is “1”. Here, if it is determined that there is an event of the repeat switch 138, a repeat process is performed (step S41), otherwise, the repeat process is skipped. In the repeat processing, if the repeat flag defined in the RAM 12 is “0”, the repeat flag is set to “1” and the LED display 146 is turned on. Conversely, if the repeat flag is “1”, the repeat flag is cleared to “0” and the LED display 145
Is turned off. Thereby, although the details are not shown, when the reading of the pattern data for one music is completed, if the repeat flag is "1", the sequence of the automatic performance returns to the beginning of the music, and the same automatic performance is repeated. Be executed. On the other hand, if the repeat flag is "0", the automatic performance is stopped.

【0071】次いで、パートスイッチ139〜142の
イベントであるかどうかが調べられる(ステップS4
2)。これは、パネルイベントマップ中のパートスイッ
チ139〜142に対応するビットが「1」であるかど
うかを調べることにより行われる。ここでパートスイッ
チ139〜142のイベントがあることが判断されると
パート1〜4切換処理が行われ(ステップS43)、そ
うでなければパート1〜4切換処理はスキップされる。
その後、このパネル制御処理ルーチンからリターンして
メインルーチンに戻る。上記パート1〜4切換処理の詳
細については後述する。
Next, it is checked whether the event is a part switch 139-142 event (step S4).
2). This is performed by checking whether the bit corresponding to the part switches 139 to 142 in the panel event map is “1”. Here, when it is determined that there is an event of the part switches 139 to 142, the part 1 to 4 switching processing is performed (step S43), otherwise, the part 1 to 4 switching processing is skipped.
Thereafter, the control returns from the panel control processing routine and returns to the main routine. The details of the part 1-4 switching process will be described later.

【0072】(4)MIDI−IN処理(図6及び図
7) このMIDI−IN処理ルーチンはメインルーチンから
一定周期でコールされる。MIDI−IN処理では、先
ず、受信バッファから1つのMIDIメッセージが取り
出され、それに含まれるMIDIチャンネル番号が
「1」、つまりロワー鍵のデータであるかどうかが調べ
られる(ステップS50)。これは、MIDIメッセー
ジの第1バイト目の下位4ビットにあるチャンネル番号
を調べることにより行われる。ここで、チャンネル番号
が「1」でないことが判断されるとステップS67へ分
岐し、MIDIデータに基づく発音処理が行われる。一
方、チャンネル番号が「1」、つまりロワー鍵のデータ
である旨が判断されるとキービットマップが作成される
(ステップS51)。キービットマップは、全鍵のオン
又はオフ状態をそれぞれ「1」又は「0」に対応させて
成るデータである。
(4) MIDI-IN processing (FIGS. 6 and 7) This MIDI-IN processing routine is called from the main routine at regular intervals. In the MIDI-IN process, first, one MIDI message is extracted from the reception buffer, and it is checked whether or not the MIDI channel number included in the MIDI message is "1", that is, the data of the lower key (step S50). This is performed by checking the channel number in the lower 4 bits of the first byte of the MIDI message. Here, if it is determined that the channel number is not "1", the process branches to step S67, and a tone generation process based on the MIDI data is performed. On the other hand, if it is determined that the channel number is “1”, that is, it is data of the lower key, a key bit map is created (step S51). The key bitmap is data in which the on / off state of all keys is associated with “1” or “0”, respectively.

【0073】次いで、コード検出処理が行われる(ステ
ップS52)。即ち、上記で作成されたキービットマッ
プを使用してコード検出処理が行われ、コードタイプ及
びコードルートが検出される。このコード検出は周知の
種々の方法を用いて行うことができる。ここで検出され
たコードは、新コードとしてRAM12の新コード領域
に格納される。また、ここで検出されたコードタイプ及
びコードルートはコード表示器131に送られて表示さ
れる。
Next, a code detection process is performed (step S52). That is, a code detection process is performed using the key bitmap created above, and a code type and a code route are detected. This code detection can be performed using various known methods. The code detected here is stored in the new code area of the RAM 12 as a new code. The detected code type and code route are sent to the code display 131 and displayed.

【0074】次いで、コード変化があったかどうかが調
べられる(ステップS53)。これは、前回のコード検
出処理で検出されてRAM12の旧コード領域に格納さ
れている旧コードと上記新コードとを比較することによ
り行われる。そして、コードの変化がなかったことが判
断されると、このMIDI−IN処理ルーチンからリタ
ーンしてメインルーチンに戻る。即ち、コードタイプ及
びコードルートが変化しないようなMIDIメッセージ
が入力されても自動演奏状態は変化しない。一方、コー
ドの変化があったことが判断されると、ステップS54
以下のコード変化に対応する処理が行われる。
Next, it is checked whether or not a code change has occurred (step S53). This is performed by comparing the old code detected in the previous code detection process and stored in the old code area of the RAM 12 with the new code. When it is determined that the code has not changed, the process returns from the MIDI-IN processing routine and returns to the main routine. That is, even if a MIDI message that does not change the chord type and chord root is input, the automatic performance state does not change. On the other hand, if it is determined that the code has changed, the process proceeds to step S54.
The processing corresponding to the following code change is performed.

【0075】本実施の形態の自動演奏装置は、コード変
化があった場合に、単にコード構成音が変化するだけで
なく、演奏パターンも変化するという構成を有するもの
とする。例えばメジャーのコードとマイナーのコードと
では演奏パターンが異なる。検出されたコードに応じて
演奏パターンを変化させる機能を実現するために、コー
ドタイプ毎のパターンデータ、例えばメジャーコードの
パターンデータとマイナーコードのパターンデータは常
時RAM12から読み出されており、何れのパターンデ
ータを用いるかは、検出されたコードタイプにより決定
される。
The automatic performance device according to the present embodiment has a configuration in which when a chord is changed, not only the chord constituent sound changes but also the performance pattern changes. For example, the chord of the major and the chord of the minor have different playing patterns. In order to realize a function of changing a performance pattern in accordance with a detected chord, pattern data for each chord type, for example, pattern data of a major chord and pattern data of a minor chord are always read from the RAM 12. Whether to use the pattern data is determined by the detected code type.

【0076】コードが変化した時の発音処理の動作の概
要を図17に示す。図17においては、時刻TAでCメ
ジャーからCマイナーにコードが変化した場合を示して
おり、太線で囲まれた部分はパターンデータの読み出し
が行われることを示し、その中の斜線部は読み出された
パターンデータに基づいて発音が行われることを示して
いる。
FIG. 17 shows an outline of the operation of the tone generation process when the chord changes. FIG. 17 shows a case where the chord changes from C major to C minor at time TA. The portion surrounded by a thick line indicates that the pattern data is to be read, and the hatched portion therein indicates the readout. This indicates that sound is generated based on the performed pattern data.

【0077】時刻TA以前では、Cメジャーを構成する
音(キー1、2、3)がメジャーの演奏パターンで発音
されており、Cマイナーを構成する音(キー1、4、
5)はマイナーの演奏パターンでパターンデータが読み
出されているだけである。そして、時刻TAで新たなコ
ードであるCマイナーが検出されると、それ以後はCマ
イナーを構成する音(キー1、4、5)がマイナーの演
奏パターンで発音される。なお、図17は、時刻TAで
は、それまで押されていたキー2及びキー3が離され、
新たにキー4及びキー5が押され、それまで押されてい
たキー1は引き続き押されている状態を示している。
Before time TA, the sounds (keys 1, 2, 3) constituting the C major are pronounced in the performance pattern of the major, and the sounds constituting the C minor (keys 1, 4, 3)
In the case of 5), only the pattern data is read in the minor performance pattern. Then, when the C minor, which is a new chord, is detected at the time TA, thereafter, the sounds (keys 1, 4, and 5) constituting the C minor are produced in the minor performance pattern. FIG. 17 shows that at time TA, the keys 2 and 3 that have been pressed until then are released,
The keys 4 and 5 are newly pressed, and the key 1 which has been pressed until then is shown as being continuously pressed.

【0078】時刻TA直後の一定時間TRにおいては次
のように処理される。即ち、コード変化が検出されれ
ば、発音中の音は直ちに停止される(図17のキー1及
びキー2参照)。コード変化後のコード構成音のうち、
コード変化が検出されてから一定時間TR内に発音を終
了する音であっても、前のコードで発音されているもの
は発音が継続される(図17のキー1参照)。コード変
化が検出されてから一定時間TR内に発音を終了する音
であって、前のコードで発音されていないものは新たな
発音が開始されない(図17のキー4参照)。コード変
化が検出されてから一定時間TR内に発音を終了しない
音であれば、新たに発音が開始される(図17のキー5
参照)。
In the fixed time TR immediately after the time TA, the following processing is performed. That is, when a chord change is detected, the sound being generated is immediately stopped (see keys 1 and 2 in FIG. 17). Of the chord constituent sounds after the chord change,
Even if the sound ends sounding within a certain time TR after the chord change is detected, the sounding sound generated by the previous chord continues sounding (see key 1 in FIG. 17). A sound that ends sounding within a predetermined time TR after a chord change is detected and has not been sounded by the previous chord does not start new sounding (see key 4 in FIG. 17). If the sound does not end within a predetermined time TR after the chord change is detected, the sound is newly started (key 5 in FIG. 17).
reference).

【0079】かかる処理が行われることにより、例えば
図17のキー4のように、コード変化に応じて発音すべ
き音であるが短時間で発音が停止されるものには発音が
割り当てられない。このように、短時間で消滅する音に
発音を割り当てなくても聴感上全く問題はなく、一方、
CPU10がチャンネル割り当て処理に要する時間が節
約されてCPU10の負担が軽減されるという利点があ
る。
By performing this processing, no sound is assigned to a sound that should be sounded in response to a chord change, but whose sound is stopped in a short time, such as the key 4 in FIG. In this way, there is no problem in the sense of hearing even if pronunciation is not assigned to a sound that disappears in a short time.
There is an advantage that the time required for the CPU 10 to perform the channel assignment processing is saved, and the burden on the CPU 10 is reduced.

【0080】図6の説明に戻る。ステップS54以下の
コード変化に対する処理において、上述した機能が実現
されている。先ず、パート番号が「n=2」に初期設定
される(ステップS54)。これは、パート1はリズム
パートでありコード変化とは無関係であるので、パート
2〜4に対してのみ処理を行うためのパート番号の初期
化である。
Returning to the description of FIG. The above-described function is realized in the processing for the code change in step S54 and subsequent steps. First, the part number is initialized to "n = 2" (step S54). This is the initialization of a part number for performing processing only on parts 2 to 4 because part 1 is a rhythm part and has nothing to do with chord change.

【0081】次いで、パートnの新パターンのキーコー
ドが生成される(ステップS55)。即ち、ステップS
52で検出されたコードタイプ及びコードルートからコ
ード構成音のキーコード(以下、「新キーコード」とい
う。)が生成される。図17に示した例でいえば、キー
1、キー4及びキー5に対応した3つの新キーコードが
生成される。次いで、パートnの新パターンの残存ゲー
トタイムが生成される(ステップS56)。残存ゲート
タイムは、新パターンのパターンデータに含まれるステ
ップタイムとゲートタイムとから算出される発音の終了
時刻と現在の拍レジスタBTRの内容とから算出され
る。
Next, a key code of the new pattern of part n is generated (step S55). That is, step S
A key code of a chord constituent sound (hereinafter, referred to as a “new key code”) is generated from the chord type and the chord root detected at 52. In the example shown in FIG. 17, three new key codes corresponding to keys 1, 4 and 5 are generated. Next, the remaining gate time of the new pattern of part n is generated (step S56). The remaining gate time is calculated from the sounding end time calculated from the step time and the gate time included in the pattern data of the new pattern and the current contents of the beat register BTR.

【0082】次いで、パートnの新パターンの補正ベロ
シティの生成が行われる(ステップS57)。この補正
ベロシティ生成の詳細については、図8のフローチャー
トに示されている。補正ベロシティ生成処理では、先
ず、補正レートVAnの読み出しが行われる(ステップ
S70)。即ち、小節レジスタBRRと拍レジスタBT
Rとの内容をアドレスとしてRAM12のベロシティ補
正データ中の対応する位置から補正レートVAnが読み
出される。次いで、この読み出された補正レートVAn
とその時点のベロシティVELO(パターンデータ中の
ベロシティデータ)とが乗算され、補正ベロシティVL
Anが生成される(ステップS71)。
Next, the correction velocity of the new pattern of part n is generated (step S57). The details of the generation of the corrected velocity are shown in the flowchart of FIG. In the correction velocity generation processing, first, the correction rate VAn is read (step S70). That is, the bar register BRR and the beat register BT
The correction rate VAn is read from the corresponding position in the velocity correction data of the RAM 12 using the content of R as an address. Next, the read correction rate VAn
Is multiplied by the velocity VELO (velocity data in the pattern data) at that time, and the corrected velocity VL
An is generated (step S71).

【0083】次いで、上記乗算の結果が127より大き
いかどうかが調べられ(ステップS72)、127より
大きければ127が新しい補正ベロシティVLAnとさ
れ(ステップS73)、そうでなければステップS73
はスキップされて乗算結果がそのまま新しい補正ベロシ
ティVLAnとされる。その後、この補正ベロシティ生
成ルーチンからリターンしてMIDI−IN処理ルーチ
ンに戻る。以上説明したMIDI−IN処理ルーチンの
ステップS55〜57の処理により、新たなパターンの
コード構成音(図17に示した例でいえば、キー1、キ
ー4及びキー5のそれぞれ)に対応するキーコード、残
存ゲートタイム及び補正ベロシティの作成が完了する。
Next, it is checked whether or not the result of the multiplication is larger than 127 (step S72). If it is larger than 127, 127 is set as the new corrected velocity VLAn (step S73).
Is skipped, and the multiplication result is used as it is as a new corrected velocity VLAn. Thereafter, the routine returns from the corrected velocity generation routine and returns to the MIDI-IN processing routine. By the processing of steps S55 to S57 of the MIDI-IN processing routine described above, the keys corresponding to the chord constituent sounds of the new pattern (in the example shown in FIG. 17, each of the keys 1, 4 and 5). The creation of the code, the remaining gate time and the corrected velocity is completed.

【0084】次いで、レジスタ群nの比較処理及び発音
継続/消音処理が行われる(ステップS58、S5
9)。即ち、レジスタ群nにキーオン状態で格納されて
いるキーコードと新キーコードとが比較され、レジスタ
群n中に一致するキーコードが発見されれば、そのキー
コードに対しては何等の処理も行われない。従って、発
音が継続されることになる。これは、図17のキー1の
ケースに対応する処理である。一方、上記の比較におい
て、コード検出前のコード構成音であったがコード検出
後にコード構成音でなくなったキーコードに対しては、
レジスタ群n中の対応するキーコードのオン/オフビッ
トが「0」にクリアされ、キーオフ出力が行われる。こ
こに、「キーオフ出力」とは、楽音発生器14に所定の
データを送出し、現在のエンベロープよりも格段に高速
なリリースエンベロープに置き換えて発音を終了させる
一連の処理をいい、以下においても同じである。これ
は、図17のキー2及びキー3のケースに対応する処理
である。
Next, a comparison process and a sound generation continuation / silence process of the register group n are performed (steps S58 and S5).
9). That is, the key code stored in the register group n in the key-on state is compared with the new key code. If a matching key code is found in the register group n, no processing is performed on the key code. Not done. Therefore, sound generation is continued. This is a process corresponding to the case of key 1 in FIG. On the other hand, in the above comparison, for a key code that was a chord constituent sound before the chord detection but was no longer a chord constituent sound after the chord detection,
The on / off bit of the corresponding key code in register group n is cleared to "0", and a key-off output is performed. Here, the "key-off output" refers to a series of processes for sending predetermined data to the tone generator 14, replacing the current envelope with a release envelope that is much faster than the current envelope, and terminating the sound generation. It is. This is a process corresponding to the case of the keys 2 and 3 in FIG.

【0085】次いで、新規発生キーコードであるかどう
かが調べられる(ステップS60)。即ち、新キーコー
ドは、コード検出前のコード構成音でなくコード検出後
に新たにコード構成音となったキーコードであるかどう
かが調べられる。ここで、新規発生キーコードであるこ
とが判断されると、そのキーコードに対応する残存ゲー
トタイムは所定値TR以上であるかどうかが調べられる
(ステップS61)。そして、所定値TR以上であるこ
とが判断されると、レジスタ群nへの格納処理が行われ
る(ステップS62)。即ち、オン/オフビットが
「1」にセットされた新規発生キーコード、残存ゲート
タイム及び補正ベロシティがレジスタ群nの中の1つの
ブロックに格納される。この際、格納に使用されるブロ
ックは、オン/オフビットが「0」になっているブロッ
クである。次いで、キーオン出力が行われる(ステップ
S63)。ここに、「キーオン出力」とは、楽音発生器
14に所定のデータ(キーコード、ベロシティ等)を送
出し、発音を開始させる一連の処理をいい、以下におい
ても同じである。この際、ベロシティとして補正ベロシ
ティが出力されるので、補正後のベロシティでそのキー
コードに対応する発音が行われる。これは、図17のキ
ー5のケースに対応する処理である。その後、ステップ
S65に進む。
Next, it is checked whether the key code is a newly generated key code (step S60). That is, it is checked whether or not the new key code is a key code that has become a new chord constituent sound after the chord detection, but not a chord constituent sound before the chord detection. If it is determined that the key code is a newly generated key code, it is checked whether the remaining gate time corresponding to the key code is equal to or longer than a predetermined value TR (step S61). Then, when it is determined that the value is equal to or larger than the predetermined value TR, the storing process to the register group n is performed (step S62). That is, the newly generated key code with the on / off bit set to "1", the remaining gate time, and the corrected velocity are stored in one block of the register group n. At this time, the block used for storage is a block whose on / off bit is “0”. Next, a key-on output is performed (step S63). Here, "key-on output" refers to a series of processes for transmitting predetermined data (key code, velocity, etc.) to the tone generator 14 and starting sounding, and the same applies to the following. At this time, since the corrected velocity is output as the velocity, a sound corresponding to the key code is generated at the corrected velocity. This is a process corresponding to the case of the key 5 in FIG. Thereafter, the process proceeds to step S65.

【0086】一方、上記ステップS60で新規発生キー
コードでないことが判断された場合は、既に発音してい
るキーコードであるので何等の処理も行わずにステップ
S65に分岐する。これは、図17のキー1のケースに
対応する処理である。また、上記ステップS61で、残
存ゲートタイムは所定値TR以上でないことが判断され
ると、残存ゲートタイムとして「1」が設定される(ス
テップS64)。これにより、次回にタイマ割込が発生
した際に、後述するタイマ割込処理ルーチンで残存ゲー
トタイムがデクリメントされてゼロになると共に、キー
オフ出力が行われて発音中の音は消音される。これは、
図17のキー4のケースに対応する処理である。その
後、ステップS65に進む。
On the other hand, if it is determined in step S60 that the key code is not a newly generated key code, the flow branches to step S65 without performing any processing because the key code has already been sounded. This is a process corresponding to the case of key 1 in FIG. If it is determined in step S61 that the remaining gate time is not greater than or equal to the predetermined value TR, "1" is set as the remaining gate time (step S64). Thus, the next time a timer interrupt occurs, the remaining gate time is decremented to zero in a timer interrupt processing routine to be described later, and a key-off output is performed to mute the sound being generated. this is,
This is processing corresponding to the case of key 4 in FIG. Thereafter, the process proceeds to step S65.

【0087】ステップS65ではパート番号nがインク
リメントされ、その結果が5以上になったかどうか、つ
まりパート4までの処理が完了したかどうかが調べられ
る(ステップS66)。そして、5以上でないことが判
断されたならステップS55に戻り、再度上述したと同
様の処理が繰り返される。一方、5以上であることが判
断されると、つまりパート4までの処理が完了したこと
が判断されると、このMIDI−IN処理ルーチンから
リターンしてメインルーチンに戻る。
In step S65, the part number n is incremented, and it is checked whether the result is 5 or more, that is, whether the processing up to part 4 is completed (step S66). If it is determined that the difference is not more than 5, the process returns to step S55, and the same processing as described above is repeated. On the other hand, when it is determined that the number is 5 or more, that is, when it is determined that the processing up to Part 4 is completed, the process returns from the MIDI-IN processing routine and returns to the main routine.

【0088】(5)パート1〜4読出処理(図9及び図
10) パート1〜4読出処理は、メインルーチンから周期的に
コールされる。このパート1〜4読出処理では、先ず、
パート番号が「n=1」に初期化される(ステップS8
0)。即ち、このパート1〜4読出処理では、各パート
1〜4に対応するパターンデータの読出処理が行われる
ことになる。次いで、ステップ補正値SAnの読み出し
が行われる(ステップS81)。即ち、小節レジスタB
RRと拍レジスタBTRとの内容をアドレスとしてRA
M12のステップタイム補正データ中から対応する補正
データSAnが読み出される。なお、ステップタイム補
正データは4分音符単位で格納されているので、上記の
アドレスとしては小節/拍表示器130に表示される値
と同じ値が用いられ、拍レジスタBTRの内容の下位の
所定ビットは無視される。
(5) Part 1-4 Reading Process (FIGS. 9 and 10) The part 1-4 reading process is called periodically from the main routine. In this part 1-4 reading process, first,
The part number is initialized to "n = 1" (step S8)
0). That is, in the part 1 to 4 read processing, the read processing of the pattern data corresponding to each of the parts 1 to 4 is performed. Next, the step correction value SAn is read (step S81). That is, measure register B
RR and the contents of beat register BTR as RA
The corresponding correction data SAn is read from the step time correction data of M12. Since the step time correction data is stored in quarter note units, the same address as the value displayed on the bar / beat indicator 130 is used as the above address, and the lower address of the content of the beat register BTR is used. Bits are ignored.

【0089】次いで、拍レジスタBTRの内容に補正デ
ータSAnが加算されてパートn用拍レジスタBTRn
に格納される(ステップS82)。次いで、上記加算の
結果(パートn用拍レジスタBTRnの内容)が「0」
より小さいかどうかが調べられる(ステップS83)。
ここで、「0」より小さいことが判断されるとパートn
用拍レジスタBTRnの内容に「192」が加えられて
パートn用拍レジスタBTRnに格納され(ステップS
84)、次いで、小節レジスタBRRの内容がデクリメ
ントされてパートn用小節レジスタBRRnに格納され
る(ステップS85)。上記ステップS84及びS85
の処理により、パートnのステップタイム補正により得
られた拍レジスタBTRの内容が正になるように変換さ
れている。その後、ステップS90へ分岐する。
Next, the correction data SAn is added to the content of the beat register BTR, and the beat register BTRn for part n is added.
(Step S82). Next, the result of the addition (contents of the part n beat register BTRn) is “0”.
It is checked whether it is smaller (step S83).
If it is determined that the value is smaller than “0”, the part n
"192" is added to the contents of the beat register BTRn and stored in the beat register BTRn for part n (step S).
84) Then, the contents of the bar register BRR are decremented and stored in the bar register BRRn for part n (step S85). Steps S84 and S85 above
Is converted so that the content of the beat register BTR obtained by the step time correction of the part n becomes positive. Thereafter, the flow branches to step S90.

【0090】上記ステップS83で加算結果が「0」よ
り小さくないことが判断されると、上記加算の結果(パ
ートn用拍レジスタBTRnの内容)が「192」以上
かどうかが調べられる(ステップS86)。ここで、
「192」以上であることが判断されるとパートn用拍
レジスタBTRnの内容から「192」が減算されてパ
ートn用拍レジスタBTRnに格納され(ステップS8
7)、次いで、小節レジスタBRRの内容がインクリメ
ントされてパートn用小節レジスタBRRnに格納され
る(ステップS88)。上記ステップS87及びS88
の処理により、パートnのステップタイム補正により拍
レジスタBTRの内容が1小節分(192ステップ)を
越えた場合に、1小節の範囲内となるように変換されて
いる。その後、ステップS90へ分岐する。
If it is determined in step S83 that the addition result is not smaller than "0", it is checked whether the addition result (contents of the part n beat register BTRn) is "192" or more (step S86). ). here,
If it is determined that it is equal to or greater than "192", "192" is subtracted from the contents of the part n beat register BTRn and stored in the part n beat register BTRn (step S8).
7) Then, the contents of the bar register BRR are incremented and stored in the bar register BRRn for part n (step S88). Steps S87 and S88 above
When the content of the beat register BTR exceeds one bar (192 steps) due to the step time correction of the part n, the conversion is performed so as to fall within the range of one bar. Thereafter, the flow branches to step S90.

【0091】上記ステップS83で加算結果が「19
2」以上でない、つまり「0≦パートn用拍レジスタB
TRnの内容<192」であることが判断されると、小
節レジスタBRRの内容がパートn用小節レジスタBR
Rnに格納される(ステップS89)。この場合、パー
トn用拍レジスタBTRnの内容は、ステップS82で
セットしたものがそのまま用いられる。その後、ステッ
プS90に進む。
In the step S83, the addition result is "19".
2 or more, ie, “0 ≦ beat register B for part n”
When it is determined that the content of TRn <192 ”, the content of the bar register BRR is changed to the bar register BR for part n.
It is stored in Rn (step S89). In this case, the contents of the beat register BTRn for part n are the same as those set in step S82. Thereafter, the process proceeds to step S90.

【0092】以上の処理でステップタイム補正が完了す
ると、次いで、パートnのパターンデータ中から未発音
のデータが検索される(ステップS90)。即ち、パー
トn用小節レジスタBRRnの内容で示される小節に含
まれるパターンデータの中で、ステップタイムがパート
n用拍レジスタBTRnの内容よりも小さいか又は同一
のものが検索される。次いで、検索されたパターンデー
タ中のキーコード(KCOD)、ゲートタイム(GTI
M)及びベロシティ(VELO)が読み出される(ステ
ップS91)。
When the step time correction is completed by the above-mentioned processing, unsound data is searched for from the pattern data of the part n (step S90). That is, among the pattern data included in the bar indicated by the contents of the bar register for part n BRRn, those having a step time smaller than or the same as the content of the beat register for part n BTRn are searched. Next, the key code (KCOD) in the searched pattern data and the gate time (GTI)
M) and velocity (VELO) are read (step S91).

【0093】次いで、パートnの補正ベロシティが生成
される(ステップS92)。この処理は、図8を参照し
て既に説明したものと同じである。次いで、パートnに
対応するレジスタ群nの更新が行われる(ステップS9
3)。即ち、キーコード(KCOD)、ゲートタイム
(GTIM)及び補正ベロシティ(VLAn)がレジス
タ群nの中の1つに格納される。
Next, the corrected velocity of part n is generated (step S92). This processing is the same as that already described with reference to FIG. Next, the register group n corresponding to the part n is updated (step S9).
3). That is, the key code (KCOD), the gate time (GTIM), and the correction velocity (VLAn) are stored in one of the register groups n.

【0094】次いで、当該パートnがオン、つまりパー
トnに対応するパートスイッチ139〜142の何れか
が押されているかどうかが調べられ(ステップS9
4)、押されていることが判断されると、キーオン出力
が行われる(ステップS95)。これにより、ステップ
タイム及びベロシティが補正された発音が行われること
になる。一方、パートスイッチが押されていないことが
判断されると、ステップS95はスキップされる。従っ
て、この場合は、パターンデータの読み出しのみが行わ
れることになる。
Next, it is checked whether the part n is on, that is, whether any of the part switches 139 to 142 corresponding to the part n is pressed (step S9).
4) If it is determined that the key is pressed, a key-on output is performed (step S95). As a result, the sound with the corrected step time and velocity is performed. On the other hand, if it is determined that the part switch has not been pressed, step S95 is skipped. Therefore, in this case, only the reading of the pattern data is performed.

【0095】次いで、パート番号nがインクリメントさ
れ(ステップS96)、その結果が5以上でなければス
テップS81に戻って次のパートに対する読出処理が行
われ、5以上であれば全パートに対する処理が終了した
ことを認識してこのパート1〜4読出処理ルーチンから
リターンしてメインルーチンに戻る。
Next, the part number n is incremented (step S96). If the result is not 5 or more, the process returns to step S81 to perform reading processing for the next part, and if it is 5 or more, the processing for all parts is completed. Upon recognizing that the part has been read, the routine returns from the part 1-4 reading processing routine and returns to the main routine.

【0096】(6)パート1〜4切換処理(図11) 次に、パネル制御処理ルーチンのステップS43で行わ
れるパートの切換処理について説明する。このパート切
換処理は、パートスイッチ139〜142が押された時
に、当該パートの発音を開始し又は停止する処理であ
る。本実施の形態の自動演奏装置では、既に説明したよ
うに、パート1〜4のパターンデータは常に読み出され
ており、読み出されたパターンデータに基づいて発音が
行われるかどうかは、パートスイッチ139〜142が
オンにされているかどうかによって決定される。
(6) Part 1-4 Switching Process (FIG. 11) Next, the part switching process performed in step S43 of the panel control process routine will be described. This part switching process is a process of starting or stopping sound generation of the part when the part switches 139 to 142 are pressed. In the automatic performance apparatus according to the present embodiment, as described above, the pattern data of parts 1 to 4 are always read out, and whether or not sound is generated based on the read out pattern data is determined by the part switch. 139 to 142 are turned on.

【0097】パートスイッチがオンに変化した時の動作
の概要を図18に示す。図18においては、時刻TBで
パートスイッチnがオンに変化した場合の動作状態を示
しており、太線で囲まれ部分はパターンデータの読み出
しが行われることを、その中の斜線部は読み出されたパ
ターンデータに基づいて発音が行われることをそれぞれ
示している。
FIG. 18 shows an outline of the operation when the part switch is turned on. FIG. 18 shows an operation state when the part switch n is turned on at time TB. The portion surrounded by a thick line indicates that pattern data is to be read, and the hatched portion therein indicates that the pattern data is to be read. Respectively indicates that sound is generated based on the pattern data.

【0098】図18の例では、パートスイッチnがオン
にされた時に、キー1及びキー2はオフ状態であるため
発音されない。キー3及びキー4はオン状態であるが、
キー3については、パートスイッチnのオン変化が検出
されてから一定時間TR内に発音が終了するので、換言
すれば、残存ゲートタイムが所定時間TR未満であるの
で発音は行われない。キー4については残存ゲートタイ
ムが所定時間TR以上であるので発音が開始される。
In the example shown in FIG. 18, when the part switch n is turned on, the keys 1 and 2 are in the off state, so that no sound is produced. Key 3 and key 4 are on,
As for the key 3, the sound emission ends within a certain time TR after the ON change of the part switch n is detected. In other words, no sound is emitted because the remaining gate time is less than the predetermined time TR. Since the remaining gate time of the key 4 is equal to or longer than the predetermined time TR, sound generation is started.

【0099】このような処理を行うことにより、例えば
図18のキー3のように、パートスイッチnのオン変化
に応じて発音すべき音であるが短時間で発音が終了する
ものは発音が開始されない。かかる短時間で消滅する音
に発音を割り当てなくても聴感上全く問題はなく、一
方、CPU10がチャンネル割り当て処理に要する時間
が節約されてCPU10の負担が軽減されるという利点
がある。
By performing such a process, for example, a sound which should be sounded in response to the ON change of the part switch n but whose sound is completed in a short time, such as the key 3 in FIG. 18, starts sounding. Not done. There is no problem in terms of audibility even if no sound is assigned to the sound that disappears in such a short time. On the other hand, there is an advantage that the time required for the CPU 10 to perform the channel assignment processing is saved and the load on the CPU 10 is reduced.

【0100】以上の機能を実現するために、パート切換
処理では、先ず、パート番号が「n=1」に初期化され
る(ステップS100)。次いで、パートnのパートス
イッチのイベントがあったかどうかが調べられる(ステ
ップS101)。これは、パネルイベントマップ中のパ
ートnのパートスイッチ139〜142に対応するビッ
トが「1」であるかどうかを調べることにより行われ
る。ここでイベントがないことが判断されるとステップ
S108へ分岐する。一方、パートnのパートスイッチ
のイベントがあったことが判断されると、次いで、その
イベントはオンイベントであるかどうかが調べられる
(ステップS102)。これは、新パネルデータ中のパ
ートnのパートスイッチ139〜142に対応するビッ
トが「1」であるかどうかを調べることにより行われ
る。
In order to realize the above functions, in the part switching process, first, the part number is initialized to "n = 1" (step S100). Next, it is checked whether or not the event of the part switch of the part n has occurred (step S101). This is performed by checking whether the bit corresponding to the part switches 139 to 142 of the part n in the panel event map is “1”. If it is determined that there is no event, the process branches to step S108. On the other hand, if it is determined that there is an event of the part switch of part n, then it is checked whether or not the event is an ON event (step S102). This is performed by checking whether the bit corresponding to the part switches 139 to 142 of the part n in the new panel data is “1”.

【0101】ここでオンイベントであることが判断され
ると、レジスタ群nの残存ゲートタイムの読み出しが行
われる(ステップS103)。即ち、レジスタ群nにキ
ーオン状態で格納されているキーコードの残存ゲートタ
イムが読み出される。この際、補正ベロシティも読み出
される。次いで、残存ゲートタイムが所定時間TR以上
であるかどうかが調べられ(ステップS104)、所定
時間以上であることが判断されると、キーオン出力が行
われる(ステップS105)。この際、補正ベロシティ
も出力される。これにより、パートnのパターンデータ
に基づく発音が開始される。これは、図18のキー4の
ケースに対応する処理である。
If it is determined that the event is an ON event, the remaining gate time of the register group n is read (step S103). That is, the remaining gate time of the key code stored in the register group n in the key-on state is read. At this time, the corrected velocity is also read. Next, it is determined whether or not the remaining gate time is equal to or longer than a predetermined time TR (step S104). If it is determined that the remaining gate time is equal to or longer than the predetermined time, a key-on output is performed (step S105). At this time, the corrected velocity is also output. Thus, sound generation based on the pattern data of part n is started. This is a process corresponding to the case of the key 4 in FIG.

【0102】一方、残存ゲートタイムが所定時間TR以
上でないことが判断されると、そのキーコードの残存ゲ
ートタイムが「0」に設定される(ステップS10
6)。これにより、発音は開始されない。このステップ
S104〜S106の処理により、残存ゲートタイムが
所定値TR以上であれば発音が行われ、所定値TRより
小さければ発音が抑止されるという機能が実現されてい
る。
On the other hand, if it is determined that the remaining gate time is not longer than predetermined time TR, the remaining gate time of the key code is set to "0" (step S10).
6). Thus, the pronunciation is not started. By the processing of steps S104 to S106, a function is realized in which the sound is emitted if the remaining gate time is equal to or longer than the predetermined value TR, and the sound is suppressed if the remaining gate time is smaller than the predetermined value TR.

【0103】上記イベント102でオフイベントである
ことが判断されると、パートnに対するキーオフ出力が
行われる(ステップS107)。即ち、レジスタ群nに
キーオン状態で格納されている全てのキーコードに対し
てキーオフ出力が行われる。これにより、パートnの発
音が停止される。その後ステップS108へ分岐する。
If it is determined in the event 102 that the event is an off event, a key-off output for the part n is performed (step S107). That is, a key-off output is performed for all key codes stored in the register group n in a key-on state. As a result, the sound generation of part n is stopped. Thereafter, the flow branches to step S108.

【0104】ステップS108では、パート番号nがイ
ンクリメントされ、その結果が5以上でなければステッ
プS101に戻って次のパートに対する切換処理が行わ
れ、5以上であれば全パートに対する処理が終了したこ
とを認識してこのパート1〜4切換処理ルーチンからリ
ターンしてメインルーチンに戻る。
In step S108, the part number n is incremented. If the result is not 5 or more, the process returns to step S101 to perform switching processing for the next part, and if it is 5 or more, processing for all parts is completed. And returns from the part 1-4 switching processing routine to return to the main routine.

【0105】(7)タイマ割込処理(図12) 次にタイマ割込処理ルーチンについて説明する。このタ
イマ割込処理ルーチンは、タイマ16から割込信号がC
PU10の割込信号入力端子INT2に供給されること
により起動される。従って、その時点で設定されている
テンポにおける1ステップタイムに対応する時間間隔で
このタイマ割込処理ルーチンが起動されることになる。
(7) Timer Interrupt Processing (FIG. 12) Next, a timer interrupt processing routine will be described. In this timer interrupt processing routine, when the interrupt signal from the timer 16 is C
It is activated by being supplied to the interrupt signal input terminal INT2 of the PU 10. Therefore, the timer interrupt processing routine is started at a time interval corresponding to one step time at the tempo set at that time.

【0106】タイマ割込処理では、先ず、自動演奏フラ
グがオンになっているかどうかが調べられる(ステップ
S110)。即ち、本自動演奏装置が自動演奏状態にあ
るかどうかが調べられる。ここで自動演奏フラグがオン
であることが判断されると、拍レジスタBTRの内容が
インクリメントされ(ステップS111)、その結果が
「192」以上になったかどうかが調べられる(ステッ
プS112)。そして、「192」以上になったことが
判断されると、拍レジスタBTRがゼロにクリアされ
(ステップS113)、小節レジスタBRRがインクリ
メントされる(ステップS114)。上記ステップS1
12で「192」以上でないことが判断されると、ステ
ップS113及びS114の処理はスキップされる。上
記ステップS111〜S114の処理により、1ステッ
プタイム毎に小節レジスタBRRと拍レジスタBTRと
が連結された状態でインクリメントされる機能が実現さ
れている。
In the timer interruption processing, first, it is checked whether or not the automatic performance flag is turned on (step S110). That is, it is checked whether or not the automatic performance device is in an automatic performance state. If it is determined that the automatic performance flag is ON, the content of the beat register BTR is incremented (step S111), and it is checked whether or not the result is "192" or more (step S112). Then, when it is determined that the value has become “192” or more, the beat register BTR is cleared to zero (step S113), and the bar register BRR is incremented (step S114). Step S1 above
If it is determined in step 12 that the number is not equal to or larger than "192", the processing in steps S113 and S114 is skipped. By the processing of the above steps S111 to S114, a function of being incremented in a state where the bar register BRR and the beat register BTR are connected at every step time is realized.

【0107】次いで、全パートのゲートタイムの更新が
行われる(ステップS115)。即ち、全パートのレジ
スタ群に含まれる残存ゲートタイムが「0」以外のもの
はデクリメントされる。そして、このデクリメントの結
果、新たにゼロになった残存ゲートタイムがあれば、そ
の残存ゲートタイムに対応するキーコードに対してキー
オフ出力が行われ発音が停止される。
Next, the gate times of all parts are updated (step S115). That is, the remaining gate times included in the register groups of all parts other than “0” are decremented. As a result of this decrement, if there is a remaining gate time that has newly become zero, a key-off output is performed for a key code corresponding to the remaining gate time, and sound generation is stopped.

【0108】上記ステップS110で自動演奏フラグが
オンでないことが判断されると、自動演奏中でないこと
が認識され、全パートのゲートタイムの更新のみが行わ
れる。その後、このタイマ割込処理ルーチンからリター
ンして割り込まれた位置に戻る。
If it is determined in step S110 that the automatic performance flag is not on, it is recognized that automatic performance is not being performed, and only the gate times of all parts are updated. Thereafter, the routine returns from the timer interrupt processing routine and returns to the interrupted position.

【0109】以上説明したように、本実施の形態におい
ては、正規化されたパターンデータを数小節程度(例え
ば2小節)だけRAM12に記憶しておく。一方、この
パターンデータとは別に、全小節分の揺らぎデータ、即
ちステップタイム補正データ及びベロシティ補正データ
をRAM12に記憶しておく。このステップタイム補正
データ及びベロシティ補正データは、例えば、上記正規
化されたパターンデータに基づく演奏パターンと実際に
演奏者が演奏した演奏パターンとの差分から作成するこ
とができる。
As described above, in the present embodiment, the normalized pattern data is stored in the RAM 12 for only a few measures (for example, two measures). On the other hand, separately from the pattern data, fluctuation data for all measures, that is, step time correction data and velocity correction data are stored in the RAM 12. The step time correction data and the velocity correction data can be created, for example, from the difference between a performance pattern based on the normalized pattern data and a performance pattern actually performed by the player.

【0110】そして、小節レジスタBRR及び拍レジス
タBTRの内容に応じてRAM12から正規化されたパ
ターンデータを読み出すと共に、ステップタイム補正デ
ータ及びベロシティ補正データを読み出し、正規化され
たパターンデータをステップタイム補正データ及びベロ
シティ補正データを用いて補正し、この補正されたパタ
ーンデータに基づき発音するようにしている。
Then, the normalized pattern data is read out from the RAM 12 in accordance with the contents of the bar register BRR and the beat register BTR, and the step time correction data and the velocity correction data are read out. The correction is performed using the data and the velocity correction data, and sound is generated based on the corrected pattern data.

【0111】かかる構成により正規化されたパターンデ
ータのみに基づく発音に見られるような機械的な演奏パ
ターンというイメージが払拭でき、しかもステップタイ
ム補正データ及びベロシティ補正データとして、例え
ば、上記正規化されたパターンデータに基づく演奏パタ
ーンと実際に演奏者が演奏した演奏パターンとの差分デ
ータを用いれば、人間の感情の周期にマッチした自動演
奏パターンを実現することができる。上記ステップタイ
ム補正データ及びベロシティ補正データを、特定の音楽
家が演奏した演奏パターンとの差分データで作成すれ
ば、「誰それ風の演奏」という自動演奏パターンを得る
ことができる。
With this configuration, it is possible to wipe out the image of a mechanical performance pattern as seen in the sound generation based on only the normalized pattern data, and further, as the step time correction data and the velocity correction data, for example, By using the difference data between the performance pattern based on the pattern data and the performance pattern actually played by the player, an automatic performance pattern matching the period of human emotion can be realized. If the step time correction data and the velocity correction data are created using difference data from a performance pattern played by a specific musician, an automatic performance pattern of "anyone-like performance" can be obtained.

【0112】また、従来のように、人間の感情の周期に
マッチした自動演奏パターンを実現するにあたり1曲の
全小節分のパターンデータを作成する必要がないので、
少ない容量で例えばノリの良い自動演奏パターンを実現
できるという効果がある。
Further, unlike the related art, it is not necessary to create pattern data for all measures of one song in order to realize an automatic performance pattern that matches the cycle of human emotions.
There is an effect that, for example, an automatic performance pattern with good glue can be realized with a small capacity.

【0113】なお、上記においては、揺らぎのパラメー
タとして「ステップタイム」と「ベロシティ」を採り上
げて説明したが、「ゲートタイム」に関しても上述した
と同様の処理を行うことにより、上記同様の効果を得る
ことができる。
In the above description, “step time” and “velocity” have been described as parameters of fluctuation. However, the same effect as described above can be obtained for “gate time” by performing the same processing as described above. Obtainable.

【0114】更に、図3の「その他の処理」(ステップ
S17)において、「テンポスピード」の揺らぎを再生
処理すれば、より生きた自動演奏を実現することができ
る。この際、テンポスピード補正データは、図15及び
図16の各補正データと同様に、多くの小節数に関して
予め記憶されており、選択された曲又はリズムスタイル
によって切換られる。
Further, in the "other processing" (step S17) of FIG. 3, if the fluctuation of the "tempo speed" is reproduced, a more lively automatic performance can be realized. At this time, the tempo speed correction data is stored in advance with respect to a large number of measures, similarly to the correction data in FIGS. 15 and 16, and is switched according to the selected music or rhythm style.

【0115】また、本実施の形態においては、全パート
のパターンデータを小節レジスタBRR及び拍レジスタ
BTRの内容に従って順次読み出し、これから演奏デー
タ(キーコード、残存ゲートタイム及びベロシティ)を
作成してRAM12のレジスタ群nに記憶する。このレ
ジスタ群nに記憶された演奏データのうち、パートスイ
ッチで指示されたパートに対応する演奏データのみが発
音される。このレジスタ群nの内容は、発音の有無とは
独立に自動演奏の進行に応じてタイマ割込処理により更
新される。
In the present embodiment, pattern data of all parts is sequentially read out according to the contents of the bar register BRR and the beat register BTR, and performance data (key code, remaining gate time and velocity) is created from this, and The data is stored in the register group n. Of the performance data stored in the register group n, only performance data corresponding to the part specified by the part switch is generated. The contents of the register group n are updated by the timer interrupt processing according to the progress of the automatic performance independently of the presence / absence of sound generation.

【0116】自動演奏の途中で新たなパートの発音指示
がなされた場合は、レジスタ群nにキーオン状態で記憶
されている演奏データが既に発音開始タイミングを過ぎ
ていても、未だ消音タイミングに至らない音については
途中からであっても発音を開始する。これにより、演奏
者のパートスイッチ139〜142による指示タイミン
グが多少ずれる(遅れる)ことにより、本来発音される
べき音が発音されないという事態を回避できるので、演
奏者の意図したタイミングで特定パートの自動演奏を完
全な形で開始させることができる。
When a new part is sounded during the automatic performance, even if the performance data stored in the register group n in the key-on state has already passed the sound generation start timing, the mute timing has not yet been reached. Regarding the sound, the pronunciation is started even if it is in the middle. As a result, it is possible to avoid a situation in which a sound to be originally uttered is not generated due to a slight shift (delay) of the instruction timing of the part switches 139 to 142 of the player. The performance can be started completely.

【0117】また、パートスイッチ139〜142で所
定のパートをオフにすべきことが指示された場合は、そ
のパートスイッチ139〜142に対応するパートで発
音中の音は全て速やかに発音を中止される。これは、例
えば、長いサスティンがかかっている音色やピアノ音で
ダンパーオンされているような場合でも、それらのエン
ベロープよりも格段に高速なリリースエンベロープに置
き換えて発音を終了させることにより実現される。
When it is instructed by the part switches 139 to 142 that a predetermined part should be turned off, all the sounds being produced by the parts corresponding to the part switches 139 to 142 are immediately stopped. You. This is realized by replacing the envelope with a release envelope that is much faster than those envelopes and terminating the sound, for example, even when a tone with a long sustain or a piano sound is damped on.

【0118】このように、特定パートの自動演奏を演奏
者の所望のタイミングで開始させ又は終了させることが
できるということは、パターンデータに基づく発音又は
消音のタイミングよりも細かいタイミングで、特定パー
トの自動演奏を行わせたり停止したりすることができる
ことを意味し、新たな演奏形態が可能になるという効果
がある。
As described above, the fact that the automatic performance of the specific part can be started or ended at the timing desired by the player means that the timing of the specific part can be reduced at a timing finer than the timing of sound generation or mute based on the pattern data. This means that an automatic performance can be performed or stopped, and there is an effect that a new performance form becomes possible.

【0119】また、新たなパートの発音指示がなされた
場合に、未だ消音タイミングに至っていないが、残りの
発音時間(残存ゲートタイム)が所定値TRより小さけ
れば発音を行わず、所定値以上の場合にのみ発音を行う
ようにしている。
When a new part is instructed to sound, the mute timing has not yet been reached, but if the remaining sounding time (remaining gate time) is smaller than a predetermined value TR, no sound is produced, and the sound is not generated. Only when it is pronounced.

【0120】これにより、発音されてもすぐに消音され
てしまうような、聴感には何等の影響を与えない音に対
しては、最初から発音されないので、CPUの負荷が軽
減される。従って、CPUは他の処理を実行することが
可能となるので、より効率の良い自動演奏装置を実現で
きる。
Thus, a sound that does not affect the sense of hearing, such as being muted immediately after being sounded, is not sounded from the beginning, so that the load on the CPU is reduced. Therefore, the CPU can execute other processing, and a more efficient automatic performance device can be realized.

【0121】[0121]

【発明の効果】以上詳述したように、本発明によれば、
少ないメモリ容量で簡単に人間の感情の周期にマッチし
た自動演奏パターンを実現することのできる自動演奏装
置を提供することができる。また、自動演奏の途中から
でも特定パートの再生又は停止を行わせることのできる
自動演奏装置を提供することができる。
As described in detail above, according to the present invention,
It is possible to provide an automatic performance device that can easily realize an automatic performance pattern that matches a human emotion cycle with a small memory capacity. Further, it is possible to provide an automatic performance device that can play or stop a specific part even during the automatic performance.

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

【図1】本発明の実施の形態の自動演奏装置の構成を示
すブロック図である。
FIG. 1 is a block diagram showing a configuration of an automatic performance device according to an embodiment of the present invention.

【図2】本発明の実施の形態に使用される操作パネルの
一例を示す図である。
FIG. 2 is a diagram showing an example of an operation panel used in the embodiment of the present invention.

【図3】本発明の実施の形態の動作を示すフローチャー
ト(メインルーチン)である。
FIG. 3 is a flowchart (main routine) illustrating an operation of the exemplary embodiment of the present invention.

【図4】本発明の実施の形態の動作を示すフローチャー
ト(MIDI−IN割込処理ルーチン)である。
FIG. 4 is a flowchart (MIDI-IN interrupt processing routine) illustrating the operation of the embodiment of the present invention.

【図5】本発明の実施の形態の動作を示すフローチャー
ト(パネル制御処理ルーチン)である。
FIG. 5 is a flowchart (panel control processing routine) illustrating an operation of the exemplary embodiment of the present invention.

【図6】本発明の実施の形態の動作を示すフローチャー
ト(MIDI−IN処理ルーチン(その1))である。
FIG. 6 is a flowchart (MIDI-IN processing routine (No. 1)) illustrating an operation of the exemplary embodiment of the present invention.

【図7】本発明の実施の形態の動作を示すフローチャー
ト(MIDI−IN処理ルーチン(その2))である。
FIG. 7 is a flowchart (MIDI-IN processing routine (No. 2)) showing the operation of the embodiment of the present invention.

【図8】本発明の実施の形態の動作を示すフローチャー
ト(補正ベロシティ生成ルーチン)である。
FIG. 8 is a flowchart (corrected velocity generation routine) illustrating an operation of the exemplary embodiment of the present invention.

【図9】本発明の実施の形態の動作を示すフローチャー
ト(パート1〜4読出処理ルーチン(その1))であ
る。
FIG. 9 is a flowchart (part 1 to 4 reading processing routine (part 1)) illustrating an operation of the embodiment of the present invention.

【図10】本発明の実施の形態の動作を示すフローチャ
ート(パート1〜4読出処理ルーチン(その2))であ
る。
FIG. 10 is a flowchart (part 1 to 4 read processing routine (part 2)) illustrating the operation of the embodiment of the present invention.

【図11】本発明の実施の形態の動作を示すフローチャ
ート(パート1〜4切換処理ルーチン)である。
FIG. 11 is a flowchart (part 1 to 4 switching processing routine) showing the operation of the embodiment of the present invention.

【図12】本発明の実施の形態の動作を示すフローチャ
ート(タイマ割込処理ルーチン)である。
FIG. 12 is a flowchart (timer interrupt processing routine) illustrating an operation of the exemplary embodiment of the present invention.

【図13】本発明の実施の形態で使用する受信バッファ
の構成を示す図である。
FIG. 13 is a diagram showing a configuration of a reception buffer used in the embodiment of the present invention.

【図14】(A)は本発明の実施の形態で使用するレジ
スタ群nの構成を示す図、(B)は本発明の実施の形態
で使用するパターンデータの構成を示す図である。
FIG. 14A is a diagram illustrating a configuration of a register group n used in the embodiment of the present invention, and FIG. 14B is a diagram illustrating a configuration of pattern data used in the embodiment of the present invention;

【図15】本発明の実施の形態で使用するステップタイ
ム補正データを説明するための図である。
FIG. 15 is a diagram for explaining step time correction data used in the embodiment of the present invention.

【図16】本発明の実施の形態で使用するベロシティ補
正データを説明するための図である。
FIG. 16 is a diagram for explaining velocity correction data used in the embodiment of the present invention.

【図17】本発明の実施の形態においてコードが変化し
た時の発音処理の動作を説明するための図である。
FIG. 17 is a diagram for explaining an operation of a tone generation process when a chord changes in the embodiment of the present invention.

【図18】本発明の実施の形態においてパートスイッチ
がオン変化した時の発音処理の動作を説明するための図
である。
FIG. 18 is a diagram illustrating an operation of a sound generation process when a part switch is turned on in the embodiment of the present invention.

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

10 CPU 11 ROM 12 RAM 13 操作パネル 14 楽音発生器 15 スピーカシステム 16 タイマ 17 MIDIコントローラ 18 FDコントローラ 19 フロッピーディスクドライブ装置 30 システムバス 130 小節/拍表示器 131 コード表示器 132 テンポスピード表示器 133 インクリメンタ 134 ストップスイッチ 135 プレイ/ポーズスイッチ 136 FFスイッチ 137 REWスイッチ 138 リピートスイッチ 139 パート1スイッチ 140 パート2スイッチ 141 パート3スイッチ 142 パート4スイッチ 143〜150 LED表示器 Reference Signs List 10 CPU 11 ROM 12 RAM 13 Operation panel 14 Musical sound generator 15 Speaker system 16 Timer 17 MIDI controller 18 FD controller 19 Floppy disk drive 30 System bus 130 Bar / beat display 131 Code display 132 Tempo speed display 133 Incrementer 134 Stop switch 135 Play / pause switch 136 FF switch 137 REW switch 138 Repeat switch 139 Part 1 switch 140 Part 2 switch 141 Part 3 switch 142 Part 4 switch 143 to 150 LED display

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 複数パートのパターンデータを記憶した
パターンデータ記憶手段と、 自動演奏の時間進行を管理する時間管理手段と、 該時間管理手段の内容に基づいて前記パターンデータ記
憶手段に記憶された全パートのパターンデータを順次読
み出すパターンデータ読出手段と、 該パターンデータ読出手段により読み出されたパターン
データに基づいて作成された全パートの演奏データを記
憶する演奏データ記憶手段と、 該演奏データ記憶手段に記憶された演奏データを自動演
奏の進行に応じて更新する更新手段と、 各パートの発音を指示する指示手段と、 該指示手段により指示されたパートについてのみ発音す
る発音手段とを有し、 前記発音手段は、前記指示手段により新たなパートの発
音指示がなされた場合に、そのパートに対応する前記演
奏データ記憶手段中の演奏データに基づき発音すること
を特徴とする自動演奏装置。
1. A pattern data storage means for storing pattern data of a plurality of parts, a time management means for managing a time progress of an automatic performance, and a pattern data storage means based on the contents of the time management means. Pattern data reading means for sequentially reading pattern data of all parts; performance data storage means for storing performance data of all parts created based on the pattern data read by the pattern data reading means; Updating means for updating the performance data stored in the means in accordance with the progress of the automatic performance, instructing means for instructing the sounding of each part, and sounding means for sounding only the part instructed by the instructing means. The sounding means responds to a part when a sounding instruction of a new part is issued by the instruction means. Automatic performance apparatus characterized by pronounced on the basis of the performance data in the performance data storage means that.
【請求項2】 前記発音手段は、新たなパートの発音指
示がなされた場合に、前記演奏データ記憶手段に記憶さ
れている演奏データのうち、残りの発音時間が所定値以
上のときにのみ新たに発音することを特徴とする請求項
1に記載の自動演奏装置。
2. The sounding means according to claim 1, wherein when a sounding instruction is issued for a new part, the sounding data is newly generated only when the remaining sounding time of the performance data stored in said performance data storage means is longer than a predetermined value. 2. The automatic performance apparatus according to claim 1, wherein the automatic performance is pronounced.
JP2001309788A 2001-10-05 2001-10-05 Automatic performance device Expired - Fee Related JP3609045B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001309788A JP3609045B2 (en) 2001-10-05 2001-10-05 Automatic performance device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001309788A JP3609045B2 (en) 2001-10-05 2001-10-05 Automatic performance device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP6224314A Division JPH0863159A (en) 1994-08-25 1994-08-25 Automatic player

Publications (2)

Publication Number Publication Date
JP2002162964A true JP2002162964A (en) 2002-06-07
JP3609045B2 JP3609045B2 (en) 2005-01-12

Family

ID=19128872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001309788A Expired - Fee Related JP3609045B2 (en) 2001-10-05 2001-10-05 Automatic performance device

Country Status (1)

Country Link
JP (1) JP3609045B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004151688A (en) * 2002-10-31 2004-05-27 Roland Europ Spa Electronic instrument
CN101542588B (en) * 2006-11-28 2013-10-23 索尼株式会社 Mashing-up data file, mashing-up device and contents making-out method
JP2018040825A (en) * 2016-09-05 2018-03-15 カシオ計算機株式会社 Automatic playing device, automatic playing method, program and electronic musical instrument

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004151688A (en) * 2002-10-31 2004-05-27 Roland Europ Spa Electronic instrument
JP4632646B2 (en) * 2002-10-31 2011-02-16 ローランド エウローペ ソシエタ ペル アチオニ Electronic musical instruments and programs
CN101542588B (en) * 2006-11-28 2013-10-23 索尼株式会社 Mashing-up data file, mashing-up device and contents making-out method
JP2018040825A (en) * 2016-09-05 2018-03-15 カシオ計算機株式会社 Automatic playing device, automatic playing method, program and electronic musical instrument

Also Published As

Publication number Publication date
JP3609045B2 (en) 2005-01-12

Similar Documents

Publication Publication Date Title
US5597971A (en) Chord information generating apparatus and chord information generating method
JP3609045B2 (en) Automatic performance device
US5430242A (en) Electronic musical instrument
US8759660B2 (en) Electronic musical instrument
JP2002023746A (en) Demonstration music playing device and method for playing demonstration music for electronic musical instrument
JP3324881B2 (en) Automatic performance device
JPH0863159A (en) Automatic player
JP3630266B2 (en) Automatic accompaniment device
JP4214845B2 (en) Automatic arpeggio device and computer program applied to the device
JPH06242781A (en) Electronic musical instrument
JP2665854B2 (en) Automatic performance device
JP3508564B2 (en) Sound source device
JP3385544B2 (en) Automatic performance device
JP2002215147A (en) Method and device for automatic accompaniment of electronic musical instrument
JPH06348258A (en) Automatic playing device of electronic musical instrument
JP3385545B2 (en) Automatic performance device
JP2002221961A (en) Device for practicing musical performance
JP3529123B2 (en) Automatic performance device and automatic performance method
JP2953937B2 (en) Electronic musical instrument volume control device
JPH10116077A (en) Device and method for controlling tempo of automatic playing device
JPH08106285A (en) Automatic playing device
JP2000259152A (en) Sound source device
JPH0830273A (en) Tempo setting device for electronic musical instrument
JP2000148142A (en) Automatic concert magic performance device
JPH07114374A (en) Initial set information transmitter of electronic musical instrument

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040426

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041012

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041012

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees