JP2646923B2 - Automatic performance device - Google Patents
Automatic performance deviceInfo
- Publication number
- JP2646923B2 JP2646923B2 JP4000416A JP41692A JP2646923B2 JP 2646923 B2 JP2646923 B2 JP 2646923B2 JP 4000416 A JP4000416 A JP 4000416A JP 41692 A JP41692 A JP 41692A JP 2646923 B2 JP2646923 B2 JP 2646923B2
- Authority
- JP
- Japan
- Prior art keywords
- performance
- data
- resolution
- note
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000003860 storage Methods 0.000 claims description 18
- 238000005259 measurement Methods 0.000 claims description 2
- 238000000034 method Methods 0.000 description 112
- 230000008569 process Effects 0.000 description 107
- 238000012545 processing Methods 0.000 description 74
- 230000033764 rhythmic process Effects 0.000 description 48
- 230000015654 memory Effects 0.000 description 18
- 230000008859 change Effects 0.000 description 17
- 238000001514 detection method Methods 0.000 description 11
- 238000013500 data storage Methods 0.000 description 10
- 238000012544 monitoring process Methods 0.000 description 8
- 101150077079 RDT1 gene Proteins 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000030279 gene silencing Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 101100002669 Arabidopsis thaliana ADT1 gene Proteins 0.000 description 2
- 101100002673 Arabidopsis thaliana ADT3 gene Proteins 0.000 description 2
- 101100463170 Schizosaccharomyces pombe (strain 972 / ATCC 24843) pdt1 gene Proteins 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- WKVZMKDXJFCMMD-UVWUDEKDSA-L (5ar,8ar,9r)-5-[[(2r,4ar,6r,7r,8r,8as)-7,8-dihydroxy-2-methyl-4,4a,6,7,8,8a-hexahydropyrano[3,2-d][1,3]dioxin-6-yl]oxy]-9-(4-hydroxy-3,5-dimethoxyphenyl)-5a,6,8a,9-tetrahydro-5h-[2]benzofuro[6,5-f][1,3]benzodioxol-8-one;azanide;n,3-bis(2-chloroethyl)-2-ox Chemical compound [NH2-].[NH2-].Cl[Pt+2]Cl.ClCCNP1(=O)OCCCN1CCCl.COC1=C(O)C(OC)=CC([C@@H]2C3=CC=4OCOC=4C=C3C(O[C@H]3[C@@H]([C@@H](O)[C@@H]4O[C@H](C)OC[C@H]4O3)O)[C@@H]3[C@@H]2C(OC3)=O)=C1 WKVZMKDXJFCMMD-UVWUDEKDSA-L 0.000 description 1
- 102100021031 Activating signal cointegrator 1 complex subunit 2 Human genes 0.000 description 1
- 101100056842 Homo sapiens ASCC2 gene Proteins 0.000 description 1
- 101001036256 Homo sapiens Little elongation complex subunit 1 Proteins 0.000 description 1
- 102100039423 Little elongation complex subunit 1 Human genes 0.000 description 1
- -1 RDT2 Proteins 0.000 description 1
- 101100008035 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) CUE3 gene Proteins 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【0001】[0001]
【産業上の利用分野】この発明は、複数の自動演奏を行
う自動演奏装置に関し、特に各種類の自動演奏用データ
を、各種類毎に設定した分解能に従って処理することに
より、演奏データ記憶用のメモリを削減できるようにし
た自動演奏装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an automatic performance apparatus for performing a plurality of automatic performances, and more particularly, to processing of automatic performance data of each type in accordance with a resolution set for each type, thereby storing performance data. The present invention relates to an automatic performance device capable of reducing memory.
【0002】[0002]
【従来の技術】従来において、複数分の演奏パートに対
応した複数種類の自動演奏を行うための演奏データ(楽
音データ)を時間経過に従って予めメモリに記憶してお
き、この複数種類の自動演奏用演奏データを同時にまた
は選択的に時間経過に従って順次読み出して楽音を発生
することにより自動演奏を行う自動演奏装置が知られて
いる。In a conventional, previously stored in the memory in accordance with elapsed playing data for a plurality of types of automatic performance was paired <br/> respond to performance parts plurality fraction (the tone data) time, the plurality 2. Description of the Related Art There is known an automatic performance apparatus which performs automatic performance by reading out various types of performance data for automatic performance simultaneously or selectively and sequentially according to the passage of time to generate musical tones.
【0003】[0003]
【発明を解決するための課題】上述した従来の自動演奏
装置においては、各種類の自動演奏における種々の音符
に対応する楽音を発生するために、各音符の発音タイミ
ングや音符長のうち一番細かい発音タイミング、音符長
に対応して分解能を設定し、この分解能に従って全ての
音符についての演奏データを表現していたため、演奏デ
ータを記憶するためのメモリとして大容量のものが必要
になるという問題があった。なお、分解能とは、楽音の
発音タイミングや発音時間をどの程度まで正確に再生で
きるかを表すものである。すなわち、例えば、各種類の
自動演奏における音符のなかで最も短い音符長が十六分
音符とすると、当然この十六分音符が表現できるように
分解能が設定されることになるが、そうすると、この
「分解能=十六分音符」で八分音符も表すことになり、
八分音符に関する演奏データは十六分音符に関する演奏
データの2倍の記憶量となってしまう。「分解能=十六
分音符」の場合には、メモリの1つの記憶位置(アドレ
ス)が十六分音符に対応することになるので、十六分音
符に関する演奏データは1つの記憶位置に記憶される
が、八分音符は十六分音符の2倍の長さであるから2つ
の記憶位置に亘って八分音符の演奏データを記憶しなけ
ればならないことになる。さらに、四分音符に関する演
奏データは4つの記憶位置に亘って記憶しなければなら
ないことになってしまう。In the above-mentioned conventional automatic performance device, in order to generate musical tones corresponding to various notes in each type of automatic performance, the most important of the sounding timing and the note length of each note is generated. Since the resolution was set according to the fine sounding timing and note length, and the performance data for all notes was expressed according to this resolution, a large capacity memory was required to store the performance data. was there. Note that the resolution indicates how accurately the tone generation timing and tone generation time of a musical tone can be reproduced. That is, for example, if the shortest note length among the notes in each type of automatic performance is a sixteenth note, the resolution is naturally set so that the sixteenth note can be expressed. Eighth note will be represented by "resolution = sixteenth note"
The performance data related to the eighth note has twice the storage amount as the performance data related to the sixteenth note. In the case of "resolution = sixteenth note", one storage location (address) of the memory corresponds to the sixteenth note, and the performance data relating to the sixteenth note is stored in one storage location. However, since the eighth note is twice as long as the sixteenth note, the performance data of the eighth note must be stored over two storage locations. Furthermore, performance data relating to quarter notes must be stored over four storage locations.
【0004】したがって、従来の自動演奏装置では、全
ての演奏データを共通の1つの分解能に基づいて処理し
ていたため、演奏データメモリの容量が大きくなってし
まっていた。このことは、演奏データを、当業者によく
知られているところのイベント方式により記憶する場合
についても同様である。イベント方式の演奏データとし
ては、発音すべき楽音を表すデータと発音タイミング
(各楽音の発音間隔時間)を表すインターバルタイムデ
ータとからなるが、この場合の分解能はインターバルタ
イムによって表現可能な時間長によって決まる。このイ
ンターバルタイムを「分解能=十六分音符」に対応して
設定すると、八分音符に相当するインターバルタイムは
十六分音符の場合の2倍となり、インターバルタイムデ
ータのビット数が増えてしまう。これによって、演奏デ
ータメモリの容量が大きくなってしまうことになる。Therefore, in the conventional automatic performance device, all the performance data are processed based on one common resolution, so that the capacity of the performance data memory is increased. The same applies to the case where performance data is stored by an event method well known to those skilled in the art. The event-type performance data includes data representing a musical tone to be produced and interval time data representing a production timing (production interval time of each musical tone). In this case, the resolution depends on a time length that can be represented by the interval time. Decided. If this interval time is set corresponding to "resolution = sixteenth note", the interval time corresponding to the eighth note is twice as large as that of the sixteenth note, and the number of bits of the interval time data increases. As a result, the capacity of the performance data memory increases.
【0005】この発明は、このような事情に鑑みてなさ
れたもので、複数種類の自動演奏を行うことが可能な自
動演奏装置において、演奏データ記憶用メモリを節約す
ることを通じて、回路規模の縮小化やリアルタイム処理
の向上等を図ることを目的とする。The present invention has been made in view of such circumstances, and in an automatic performance apparatus capable of performing a plurality of types of automatic performances, the circuit scale can be reduced by saving a memory for storing performance data. The purpose is to improve the realization and real-time processing.
【0006】[0006]
【課題を解決するための手段】上記課題を解決するため
に請求項1に記載の発明にあっては、予め記憶した演奏
データを順次読み出し、この読み出したデータに従って
自動演奏を行う自動演奏装置において、 同時に読み出
される複数のパートからなる演奏データを記憶する記憶
手段と、前記演奏データに対応する楽音の発音タイミン
グや発音時間の分解能を決定する分解能データを、前記
各パート毎に設定する分解能設定手段と、前記各パート
の分解能データに基づいて、対応する各パートの演奏デ
ータを該分解能に応じた周期で並行して読み出す読出制
御手段とを具備することを特徴とする。また、請求項2
に記載の発明にあっては、予め記憶した演奏データを順
次読み出し、この読み出したデータに従って自動演奏を
行う自動演奏装置において、同時に読み出される複数の
パートからなる演奏データを記憶する記憶手段と、前記
演奏データに対応する楽音の発音タイミングや発音時間
の分解能を決定する分解能データを各パート毎に設定す
る分解能設定手段と、各パート毎に設定された分解能デ
ータに応じた周期で計時を行う複数の計時手段と、前記
各計時手段によって計時された計時タイミングに基づい
て、対応する各パートの演奏データを読み出す読出制御
手段とを具備することを特徴とする。According to the first aspect of the present invention, there is provided an automatic performance apparatus for sequentially reading performance data stored in advance and performing an automatic performance in accordance with the read data. Read at the same time
Storage means for storing the performance data comprising a plurality of parts that are, the resolution data that determines the resolution of the sounding timing and sounding time of the tone corresponding to the previous SL performance data, sets the <br/> to each part Resolution setting means and each of the parts
Based on the resolution data, the performance data of each corresponding part characterized by comprising a read control means for reading in parallel at a cycle corresponding to the resolution. Claim 2
According to the invention described in (1), in an automatic performance device that sequentially reads performance data stored in advance and performs an automatic performance according to the read data, a plurality of data that are simultaneously read are stored .
Storage means for storing performance data composed of part-sounding timing and sounding time of the tone corresponding to the previous SL <br/> performance data
A resolution setting unit for the resolution data to determine the resolution is set to each part, the resolution de set for each part
A plurality of timekeeping means for performing timekeeping at a cycle corresponding to data,
Based on timing timing measured by each timing means
Te, characterized by comprising a read control means for reading the performance data of each corresponding part.
【0007】[0007]
【作用】上記構成によれば、演奏データについての分解
能データが各自動演奏のパートごとに設定される。この
各パートごとに設定された分解能に従って対応する各パ
ートの演奏データの読み出しタイミング等が制御され
る。したがって、各パートの演奏データはそれぞれ当該
パートの自動演奏における音符等に合わせて各パート毎
に最適な分解能で表現することができるので、演奏デー
タメモリの容量を節約することが可能となる。According to the above arrangement, the resolution data for the performance data is set for each automatic performance part . Each path corresponds according resolution set for each Each Part
The timing of reading the performance data of the note is controlled. Therefore, the performance data of each part
Since it is possible to express each part with an optimum resolution in accordance with notes and the like in the automatic performance of the parts , it is possible to save the capacity of the performance data memory.
【0008】[0008]
【実施例】以下、図面を参照してこの発明の一実施例に
ついて説明する。なお、本実施例において使用する時間
単位は、すべてミリセカント(以下、msecと記す)
単位のものである。 A:実施例の構成 図1はこの発明の一実施例であり、自動演奏装置の構成
を示すブロック図である。この図において、1は鍵盤で
ある。この鍵盤1は、各キー毎に押離鍵および押離鍵の
速度を検出する機構を有している。2は、鍵イベント検
出部であり、鍵盤1の各キーをスキャンしてキーのイベ
ントを検出すると共に、イベントを検出する毎にイベン
トのあったキーについての楽音情報を発生し、CPU7
に出力する。楽音情報とは、音名(すなわち音高)を表
すキーコードKC、押鍵イベントを表すキーオン信号K
ON、離鍵イベントを表すキーオフ信号KOFF、押鍵
または離鍵の速度を表すタッチデータ等のデータであ
る。An embodiment of the present invention will be described below with reference to the drawings. The time unit used in this embodiment is all milliseconds (hereinafter, referred to as msec).
It is a unit. A: Configuration of Embodiment FIG. 1 shows an embodiment of the present invention, and is a block diagram showing a configuration of an automatic performance device. In this figure, 1 is a keyboard. The keyboard 1 has a mechanism for detecting a pressed / released key and a speed of the pressed / released key for each key. Reference numeral 2 denotes a key event detection unit which scans each key of the keyboard 1 to detect an event of the key, and generates tone information for the key having the event each time an event is detected.
Output to The musical tone information includes a key code KC representing a note name (that is, a pitch), and a key-on signal K representing a key press event.
ON, a key-off signal KOFF indicating a key release event, and touch data indicating a key pressing or key releasing speed.
【0009】3は、各種スイッチにより構成されるスイ
ッチ群であり、自動演奏スイッチや演奏スタイル選択ス
イッチ等が配設されている。4はスイッチイベント検出
部であり、スイッチイベント情報、すなわち各スイッチ
の状態変化信号を発生して、CPU7に出力する。8は
タイマであり、1msec毎に割り込み要求信号をCP
U7に送出するものである。6は、プログラムメモリ
で、CPU7にロードされる各種制御プログラムや、こ
れらプログラムで用いられる各種データ等が記憶されて
いる。5は、ワーキングメモリでありCPU7の演算に
用いられる各種データや、演算結果を一時記憶するメモ
リであり、また、後述する各種レジスタが設定される。Reference numeral 3 denotes a switch group composed of various switches, and includes an automatic performance switch, a performance style selection switch, and the like. Reference numeral 4 denotes a switch event detection unit which generates switch event information, that is, a state change signal of each switch, and outputs the signal to the CPU 7. Reference numeral 8 denotes a timer which outputs an interrupt request signal to the CP every 1 msec.
It is sent to U7. Reference numeral 6 denotes a program memory which stores various control programs to be loaded into the CPU 7, various data used in these programs, and the like. Reference numeral 5 denotes a working memory, which is a memory for temporarily storing various data used for the operation of the CPU 7 and an operation result, and in which various registers described later are set.
【0010】CPU7は、プログラムメモリ6からロー
ドされた命令に基づいて装置各部に対して動作制御命令
を送出する。また、上述したタイマ8の割り込み要求信
号が発生される毎に、割り込み制御命令ルーチンを起動
し、楽音の発音/消音タイミング制御、発音時間の監視
制御等に係る割り込み制御を行う。9は、自動演奏用デ
ータが格納されているROMである。自動演奏はこのR
OM9に記憶されている演奏データを参照することによ
って行われる。10はトーンジェネレータである。この
トーンジェネレータ10は、前述したキーオン信号KO
N、キーオフ信号KOFF、キーコードKCの値等に基
づいて楽音波形を形成し、サウンドシステム9に出力す
る。サウンドシステム9は、デジタル波形をアナログ波
形に変換し、実際の楽音の発音処理を行う。The CPU 7 sends an operation control command to each section of the device based on the command loaded from the program memory 6. Also, each time the above-mentioned interrupt request signal of the timer 8 is generated, an interrupt control instruction routine is started, and interrupt control related to tone generation / silence timing control, tone generation time monitoring control, and the like is performed. Reference numeral 9 denotes a ROM in which data for automatic performance is stored. Automatic performance is this R
This is performed by referring to the performance data stored in the OM 9. Reference numeral 10 denotes a tone generator. The tone generator 10 generates the key-on signal KO described above.
A tone waveform is formed based on N, the key-off signal KOFF, the value of the key code KC, and the like, and is output to the sound system 9. The sound system 9 converts a digital waveform into an analog waveform and performs actual tone generation processing.
【0011】さて、次にROM9の構成について説明す
る。まず、ROM9は図1に示す様に演奏スタイルを記
憶するスタイルヘッダ9a、コード進行を記憶するコー
ドパターン領域9b、ベース演奏形態を記憶するペース
パターン領域9cおよびリズム演奏形態を記憶するリズ
ムパターン領域9dから構成されている。次にこれらの
記憶領域について説明する。Next, the configuration of the ROM 9 will be described. First, as shown in FIG. 1, the ROM 9 has a style header 9a for storing a performance style, a code pattern area 9b for storing a chord progression, a pace pattern area 9c for storing a bass performance mode, and a rhythm pattern area 9d for storing a rhythm performance mode. It is composed of Next, these storage areas will be described.
【0012】まず、スタイルヘッダ9aについて図2を
参照して説明する。このスタイルヘッダ9aのマッピン
グ状態は同図に示す通りであり、各種自動演奏スタイル
に応じた各スタイルヘッダが順番に記憶されている。こ
のスタイルヘッダ9aには、各種自動演奏スタイルを指
定する各種データとして、ビートBT、テンポTMP、
ベースパートの音色VOICE1、コード1パートの音
色VOICE2、コード2パートの音色VOICE3、
リズムパートの分解能QT0、ベースパートの分解能Q
T1、コード1パートの分解能QT2、コード2パート
の分解能QT3、音程始点BGNが記憶されている。次
にこれらのデータについて説明する。First, the style header 9a will be described with reference to FIG. The mapping state of the style header 9a is as shown in the figure, and style headers corresponding to various automatic performance styles are stored in order. The style header 9a includes various data for specifying various automatic performance styles, such as beat BT, tempo TMP,
The tone color VOICE1 of the bass part, the tone color VOICE2 of the chord 1 part, the tone color VOICE3 of the chord 2 part,
Rhythm part resolution QT0, bass part resolution Q
T1, resolution QT2 of chord 1 part, resolution QT3 of chord 2 part, and pitch start point BGN are stored. Next, these data will be described.
【0013】まず、ビートBTとは、「何分の何拍
子」、例えば、四分の四拍子、四分の三拍子等を指定す
るものである。このデータは、楽音を再生する場合には
「小節数の計算」に使用される。次に、テンポTMPに
は、一分間に四分音符を均等に何回発音するかを決める
データである。このテンポTMPは、後述する「四分音
符に対する分割周期」の算出等、種々のタイミング制御
に使用されるデータである。音色VOICE1〜3は、
それぞれ、ベースパート、コード1パートおよびコード
2パートをどのような音色で発音するかを決定するため
のデータである。音程始点BGNは、音程始点を表すデ
ータである。音程始点BGNは、発生楽音のキーコード
KCを決定するためのデータである。First, the beat BT is used to designate a "number of beats", for example, a quarter beat, a triple beat, and the like. This data is used for "calculation of the number of measures" when reproducing a musical sound. Next, the tempo TMP is data for determining how many times a quarter note is to be pronounced equally per minute. The tempo TMP is data used for various timing controls such as calculation of a “division period for quarter notes” described later. Tones VOICE1-3
These are data for deciding what tone color the bass part, chord 1 part and chord 2 part are to be pronounced. The pitch start point BGN is data representing a pitch start point. The pitch start point BGN is data for determining the key code KC of the generated musical tone.
【0014】分解能データQT0〜QT3の値は、この
実施例においては、対応するパートにおいて発生すべき
発音の発音タイミングや音符長の分解能が八分音符系、
三連符系なのか、あるいは十六分音符系、六連符系なの
か、によって決定される。八分音符系、三連符系の分解
能の場合には分解能データQT0〜QT3の値として
「0」が設定され、また十六分音符系、六連符系の分解
能の場合には分解能データQT0〜QT3の値として
「1」が設定される。この場合、八分音符系、三連符系
の分解能においては、1拍(四分音符1つ分)を6分割
した6つの発音単位のうち1〜3および4〜6のそれぞ
れにおいて八分音符を表現し(1拍の中で1つの四分音
符を表現可能とする)ようにしている。一方、十六分音
符系、六連符系の分解能においては、1拍(四分音符1
つ分)を12分割した12の発音単位のうち1〜3、4
〜6、7〜9、10〜12のそれぞれにおいて十六分音
符を表現し(1拍の中で4つの十六分音符を表現可能と
し)、また12の発音単位のうち1〜4、5〜8、9〜
12のそれぞれにおいて六連符を構成する各音を表現し
(1拍の中で1つの六連符を表現可能とし)、また12
の発音単位の1〜12において四分音符を表現する(1
拍の中で1つの四分音符を表現可能とする)ようにして
いる。そして、この6分割または12分割した各発音単
位毎に、楽音の発音タイミングや発音時間を制御するよ
うにしている。In the present embodiment, the values of the resolution data QT0 to QT3 are such that the sounding timing of the sound to be generated in the corresponding part and the resolution of the note length are an eighth note system,
It is determined by whether it is a triplet system, a sixteenth note system, or a sixt system. The resolution data QT0 to QT3 are set to “0” in the case of the eighth note system and the triplet system, and the resolution data QT0 are set in the case of the sixteenth note system and the sixt system. “1” is set as the value of QT3. In this case, in the resolution of the eighth note system and the triplet system, in one of six sounding units obtained by dividing one beat (one quarter note) into six, the eighth note is an eighth note. (One quarter note can be expressed in one beat). On the other hand, in the resolution of the sixteenth note system and the sixt note system, one beat (quarter note 1)
1 to 4 out of 12 pronunciation units
66, 799, and 10 to 12 represent a sixteenth note (four sixteenth notes can be represented in one beat), and one to four, five, and twelve of the twelve pronunciation units. ~ 8,9 ~
In each of the twelve, each sound constituting a sixt is expressed (one sixt can be expressed in one beat).
Represents a quarter note in the pronunciation units 1 to 12 (1
One quarter note can be expressed in a beat). The tone generation timing and tone generation time of the musical tone are controlled for each of the six or twelve divided tone generation units.
【0015】上記のような分解能に従って各パートの楽
音データをメモリに記憶する場合、分解能が八分音符
系、三連符系(QT0〜QT3の値「0」)では、八分
音符については、3つの記憶位置(上記6つの発音単位
のうち1〜3および4〜6のそれぞれに対応)を使用し
て八分音符一音分を記憶し、三連符については、2つの
記憶位置を使用して三連符を構成する一音分を記憶し、
四分音符については、6つの記憶位置を使用して四分音
符一音分を記憶する。また、分解能が十六分音符系、六
連符系(QT0〜QT3の値が「1」)では、十六分音
符については、3つの記憶位置(上記12の発音単位の
うち1〜3、4〜6、7〜9、10〜12のそれぞれに
対応)を使用して十六分音符一音分を記憶し、六連符に
ついては、2つの記憶一を使用して六連符を構成する一
音分を記憶する。そして、このように各分解能毎に記憶
された楽音データを、後述するように、当該分解能に応
じた読み出し処理を行って楽音の発音制御を行うことに
より、所定の音符の楽音を発生させることができる。こ
のように、楽音データを、その音符に対応した分解能に
応じた態様で記憶することにより、楽音データメモリの
記憶容量を削減することができる。すなわち、上記の例
について言えば、八分音符一音分も十六分音符一音分も
楽音データの記憶位置数はともに3つで済むことにな
り、従来の共通の分解能(十六分音符の分解能)で楽音
データの記憶を行った場合のように八分音符一音分を6
つの記憶位置を用いて記憶するのに比べてメモリ容量は
少なくて済むものである。ところで、この実施例におい
ては、上述のような分解能に応じた楽音データの記憶処
理はベースパート、コード1パート、コード2パートに
ついて採用されており、リズムパートについては次に述
べる別の方式が採用されている。すなわち、リズムパー
トについては、前述したイベント方式により楽音データ
を記憶するようにしている。イベント方式において分解
能はインターバルタイムによって表現可能な時間長、す
なわちインターバルタイムデータのビット数によって決
まる。この実施例では、リズムパートに関する複数のス
タイル(リズム種類)についての楽音データのインター
バルタイムは全て共通の特定の音符に対応する分解能で
表現して楽音データを記憶しておき、楽音データの読出
処理において、該インターバルタイムに相当する時間計
測を本来の分解能に対応して行うことによって、本来の
分解能で表現された楽音(リズム楽器音)を発生するよ
うにしている。このようなイベント方式の場合でも、イ
ンターバルタイムのビット数が節約できる(八分音符に
相当する長さも十六分音符に相当する長さも同じ値で表
現することができるためである)。以上のようにして、
各パートの楽音データ(音符の種類)に合わせて分解能
を各パート毎に設定し、各パートの分解能(QT0〜Q
T3)に従って当該パートの楽音データの処理を行うよ
うにしているものである。When the musical tone data of each part is stored in the memory according to the above-described resolution, if the resolution is an eighth note system or a triplet system (QT0 to QT3 value "0"), One eighth note is stored using three storage locations (corresponding to 1 to 3 and 4 to 6 out of the above six pronunciation units), and two storage locations are used for triplets And memorize one note that makes up the triplet,
For quarter notes, six storage locations are used to store one quarter note. Further, in a sixteenth note system and a sixt note system (QT0 to QT3 have a value of "1"), the sixteenth note has three storage positions (1 to 3, 4 out of the twelve pronunciation units). , 6, 7-9, and 10-12), and stores one sixteenth note. For a sixt, one note that forms a sixt using two memories Remember minutes. As described later, the tone data stored for each resolution is read out in accordance with the resolution to control the tone generation, thereby generating a tone of a predetermined note. it can. In this way, by storing the musical sound data in a form corresponding to the resolution corresponding to the musical note, the storage capacity of the musical sound data memory can be reduced. That is, in the above example, the number of storage positions of musical tone data for one eighth note and one sixteenth note is only three, and the conventional common resolution (sixteenth note) Resolution), one eighth note can be converted to 6
The memory capacity is small as compared with the case where the data is stored using one storage location. By the way, in this embodiment, the above-described processing for storing musical tone data according to the resolution is employed for the base part, the chord 1 part, and the chord 2 part, and another method described below is employed for the rhythm part. Have been. That is, for the rhythm part, the musical sound data is stored by the event method described above. In the event method, the resolution is determined by a time length that can be expressed by the interval time, that is, the number of bits of the interval time data. In this embodiment, all the interval times of the tone data for a plurality of styles (rhythm types) relating to the rhythm part are expressed at a resolution corresponding to a common specific note, the tone data is stored, and the tone data read processing is performed. In this method, a musical sound (rhythm instrument sound) expressed at the original resolution is generated by performing time measurement corresponding to the interval time in accordance with the original resolution. Even in the case of such an event system, the number of bits of the interval time can be saved (because the length corresponding to the eighth note and the length corresponding to the sixteenth note can be expressed by the same value). As described above,
The resolution is set for each part in accordance with the tone data (note type) of each part, and the resolution (QT0 to QT) of each part is set.
According to T3), the tone data of the part is processed.
【0016】次に、リズムパターン領域9bについて説
明する。図3(a)に示すように、領域RDT0は、デ
ータ識別フラグDTFLG、楽器番号NINST、イン
ターバルタイムINTTMおよびエンドコード(0x0
f(h))によって構成されている。まず、データ識別
フラグDTFLGには、次のアドレスに記憶されている
データが楽器番号NINSTなのかインターバルタイム
INTTMなのかを示すデータが記憶されている。した
がって、このデータ識別フラグの値が、「次のアドレス
に記憶されているデータが楽器番号」を表すデータであ
る場合(同図、※1、※3、※5参照)には、当該次の
アドレスには楽器番号NINSTが記憶されている。こ
の楽器番号NINSTには、リズム楽器の種類、例え
ば、バスドラム、スネアドラム、カーベル等を表すデー
タが記憶されている。一方、このデータ識別フラグの値
が、「次のアドレスに記憶されているデータがインター
バルタイム」を表すデータである場合(同図、※2、※
4、※6)には、当該次のアドレスにはインターバルタ
イムINTTMが記憶されている。ここでいうインター
バルタイムとは、図10におけるリズム出力ルーチン
(後述する)のステップSg5における出力処理と、そ
の次に同ステップの出力処理を行うまでの間にステップ
Sg7が何回行われるか、を意味している。したがっ
て、インターバルタイムの監視については、レジスタR
INTTMに設定されるインターバルタイムを「1」づ
つデクリメントすることにより行なわれ、これにより、
発音タイミングを制御することが可能になる。なお、こ
の処理の詳細については後述する。Next, the rhythm pattern area 9b will be described. As shown in FIG. 3A, the area RDT0 includes a data identification flag DTFLG, an instrument number NINST, an interval time INTTM, and an end code (0x0).
f (h)). First, the data identification flag DTFLG stores data indicating whether the data stored at the next address is the instrument number NINST or the interval time INTTM. Therefore, if the value of this data identification flag is data representing "the data stored at the next address is the instrument number" (see * 1, * 3, * 5 in the figure), The musical instrument number NINST is stored in the address. The musical instrument number NINST stores data representing the type of rhythm musical instrument, for example, a bass drum, a snare drum, a carbell, and the like. On the other hand, when the value of the data identification flag is data representing "the data stored at the next address is an interval time" (* 2, *
4, * 6), the interval time INTTM is stored at the next address. The interval time here refers to how many times the output process in step Sg5 of the rhythm output routine (described later) in FIG. 10 and the step Sg7 are performed before the next output process of the same step is performed. Means. Therefore, for monitoring the interval time, the register R
This is performed by decrementing the interval time set in the INTTM by "1".
The sounding timing can be controlled. The details of this process will be described later.
【0017】次に、ベースパターン領域9cおよびコー
ドパターン領域9dについて説明する。図3(b),
(c),(d)には、それぞれ、ベースパートを表す領
域RDT1,コード1パートを表すRDT2,コード2
パートを表すRDT3を示す。これらの領域には差分キ
ーコードΔKCで表されるデータが発音順に記憶されて
いる。そして、この差分キーコードΔKCの値を使用し
て、発生楽音の音高を表すキーコードKCが決定され
る。キーコードKCは、上述した音程始点BGNの値を
使用して、「KC=ΔKC+BGN」によって決定され
る。 なお、差分キーコードΔKCの値については、
「0」がキーオフを表すキーオフコードであり、「1
(h)〜E(h)」が音程始点を表す音程始点BGNの
値からの差分データ(すなわち音程データ)を表し、
「F(h)」が演奏データの終了を表すエンドコードを
表している。また、各領域RDT1,RDT2,RDT
3には、図示のデータ以外に自動演奏のスタイルに応じ
て複数分のデータが設定されている。Next, the base pattern area 9c and the code pattern area 9d will be described. FIG. 3 (b),
(C) and (d) respectively show an area RDT1 representing a base part, an RDT2 representing a code 1 part, and a code 2
RDT3 representing a part is shown. In these areas, data represented by the difference key code ΔKC is stored in the order of pronunciation. Then, using the value of the difference key code ΔKC, a key code KC representing the pitch of the generated musical tone is determined. The key code KC is determined by “KC = ΔKC + BGN” using the value of the above-described pitch start point BGN. The value of the difference key code ΔKC is
“0” is a key-off code indicating a key-off, and “1” is a key-off code.
(H) to E (h) ”represent difference data (ie, pitch data) from the value of the pitch start point BGN representing the pitch start point;
“F (h)” represents an end code indicating the end of the performance data. Further, each region RDT1, RDT2, RDT
3, a plurality of data are set according to the style of the automatic performance in addition to the data shown.
【0018】B:実施例の動作 図4から図11に示すフローチャートを参照してこの自
動演奏装置の動作について説明する。なお、図4は、メ
インルーチンであり、図5から図7で示される処理は、
このメインルーチンで参照されるサブルーチンである。
また、図8および図9はタイマ割り込み制御ルーチンで
あり、図10、図11および図7は、このタイマ割り込
み制御ルーチンで参照されるサブルーチンである。B: Operation of the Embodiment The operation of this automatic performance apparatus will be described with reference to the flowcharts shown in FIGS. FIG. 4 shows a main routine, and the processes shown in FIGS.
This is a subroutine referred to in this main routine.
FIGS. 8 and 9 show a timer interrupt control routine. FIGS. 10, 11 and 7 show subroutines referred to in the timer interrupt control routine.
【0019】(1)自動演奏装置の全体動作概略 自動演奏装置の全体動作概略について図4に示すフロー
チャートを参照して説明する。まず、図1に示す自動演
奏装置に電源が投入されると、ステップSa1に示す初
期設定を行う。この初期設定においては、各種レジスタ
のゼロリセット等を行い、次にステップSa2に進む。
ステップSa2においては、鍵盤1中のいずれかの鍵の
押離鍵のイベントが鍵イベント検出部2によって検出さ
れたか否かを判断する処理を行う。この場合、鍵処理イ
ベントが検出されると、判断結果が「YES」となり、
次のステップSa3の発音/消音処理に進む。ステップ
Sa3においては、上述した鍵イベントが押鍵イベント
か離鍵イベントかに応じて楽音の発音処理、あるいは、
楽音の消音処理を行い、ステップSa4に進む。ステッ
プSa4の和音検出処理においては、自動演奏時に使用
する和音検出データの設定処理を行い、レジスタRTお
よびレジスタTPに検出結果を格納する。なおこのステ
ップSa4の処理においては、押鍵状態から和音を検出
し、検出した和音の根音および和音タイプを示すデータ
が格納される。さて、ステップSa4の処理の後、ある
いは、ステップSa2で「NO」と判断された場合に
は、ステップSa5の処理に移る。(1) Overview of Overall Operation of Automatic Performance Apparatus An overview of the overall operation of the automatic performance apparatus will be described with reference to a flowchart shown in FIG. First, when the power is turned on to the automatic performance apparatus shown in FIG. 1, the initialization shown in step Sa1 is performed. In this initialization, various registers are reset to zero, and the process proceeds to step Sa2.
In step Sa <b> 2, a process of determining whether or not a key press / release event of any key on the keyboard 1 has been detected by the key event detection unit 2. In this case, if a key processing event is detected, the determination result is “YES”,
The process proceeds to the sound generation / silence processing of the next step Sa3. In step Sa3, the tone generation process or the tone generation process is performed according to whether the key event is a key press event or a key release event.
A tone silencing process is performed, and the process proceeds to step Sa4. In the chord detection process of step Sa4, a process of setting chord detection data to be used during automatic performance is performed, and the detection result is stored in the registers RT and TP. In the process of step Sa4, a chord is detected from the key pressed state, and data indicating the root of the detected chord and the chord type are stored. Now, after the processing of step Sa4, or when it is determined “NO” in step Sa2, the processing shifts to processing of step Sa5.
【0020】次に、このステップSa5においては自動
演奏スイッチ(図1に示すスイッチ群3内のスイッチ)
のオン/オフ操作の検出処理を行う。このオン/オフ操
作が検出され、「YES」と判断された場合には、ステ
ップSa6のスタート/ストップルーチンに進む。ステ
ップSa6のスタートストップルーチンにおいては、後
述する演奏状態フラグRUNを参照することによって自
動演奏の開始処理もしくは終了処理を行う。さて、ステ
ップSa7の処理の後、あるいは、ステップ5において
自動演奏スイッチのオン/オフ操作が検出されずに「N
O」と判断された場合においては、ステップSa7に進
む。Next, in step Sa5, an automatic performance switch (a switch in the switch group 3 shown in FIG. 1)
The on / off operation detection process is performed. If the on / off operation is detected and determined to be "YES", the process proceeds to a start / stop routine of step Sa6. In the start / stop routine of step Sa6, a start process or an end process of the automatic performance is performed by referring to a performance state flag RUN described later. By the way, after the processing of step Sa7 or in step 5, the ON / OFF operation of the automatic performance switch is not detected and "N
If it is determined to be "O", the flow proceeds to step Sa7.
【0021】次に、ステップSa7においては演奏スタ
イル選択スイッチ(図1に示すスイッチ群3内のスイッ
チ)のオン/オフ操作の検出処理を行う。このオン/オ
フ操作が検出されると、ステップSa8に進む。このス
テップSa8においては、後述する演奏スタイル設定ル
ーチンを、演奏状態フラグRUN等を参照することによ
って行う。その後、上述したステップSa2のキーイベ
ント検出処理に戻る。一方、ステップSa7において演
奏スタイル選択スイッチのオン/オフ操作が検出されな
い場合は、直ちにステップSa2のキーイベント検出処
理に戻る。上述したように、自動演奏装置に電源が投入
された後においては、ステップSa1において初期設定
がなされた後は、ステップSa2からステップSa8に
示す処理を繰り返し行う。なお、演奏状態フラグRUN
は、自動演奏スイッチの操作に基づいて設定される。こ
の演奏状態フラグRUNの信号値が「0」の場合には
「演奏停止状態」を表し、「1」の場合には「演奏中状
態」を表す。また、演奏スタイル選択スイッチの操作に
基づいて、スタイル変更フラグSTSWの値が設定され
る。このスタイル変更フラグSTSWは、この演奏スタ
イル選択スイッチ操作が、自動演奏装置が「演奏中状
態」である時に検出されると「1」に設定され、そのほ
かの場合においては「0」に設定されるレジスタであ
る。Next, in step Sa7, a process of detecting the on / off operation of the performance style selection switch (the switch in the switch group 3 shown in FIG. 1) is performed. When the on / off operation is detected, the process proceeds to step Sa8. In step Sa8, a performance style setting routine, which will be described later, is performed by referring to the performance state flag RUN and the like. Thereafter, the flow returns to the key event detection processing in step Sa2 described above. On the other hand, if the on / off operation of the performance style selection switch is not detected in step Sa7, the process immediately returns to the key event detection process in step Sa2. As described above, after the power is turned on to the automatic performance device, after the initial setting is performed in step Sa1, the processing from step Sa2 to step Sa8 is repeatedly performed. Note that the performance state flag RUN
Is set based on the operation of the automatic performance switch. If the signal value of the performance state flag RUN is "0", it indicates "performance stop state", and if it is "1", it indicates "playing state". The value of the style change flag STSW is set based on the operation of the performance style selection switch. The style change flag STSW is set to "1" when the performance style selection switch operation is detected when the automatic performance device is in the "playing state", and is set to "0" otherwise. It is a register.
【0022】(2)スタート/ストップルーチンおよび
演奏スタイル設定ルーチン 次に図5のフローチャートを参照してスタート/ストッ
プルーチンの詳細について説明する。スイッチイベント
検出部4によって、スイッチ群3(図1参照)内の自動
演奏スイッチ操作が検出されると、演奏状態フラグRU
Nの信号値の反転処理を行う(ステップSb1)。ここ
で、演奏状態フラグRUNが演奏停止状態値「0」から
演奏中状態「1」に変化した場合は、ステップSb2の
判断が「NO」となって、ステップSb4に示す伴奏初
期設定ルーチンに進む。(2) Start / Stop Routine and Performance Style Setting Routine Next, the start / stop routine will be described in detail with reference to the flowchart of FIG. When the switch event detector 4 detects an operation of the automatic performance switch in the switch group 3 (see FIG. 1), the performance state flag RU
The inversion of the signal value of N is performed (step Sb1). Here, when the performance state flag RUN changes from the performance stop state value "0" to the playing state "1", the determination in step Sb2 becomes "NO", and the routine proceeds to the accompaniment initialization routine shown in step Sb4. .
【0023】伴奏初期設定ルーチンは、図7に示すよう
に、各種レジスタの初期値設定処理等を行う。この伴奏
初期設定処理における各種レジスタには、電源投入後、
演奏スタイル設定スイッチが押されなければ、デフォル
ト値が格納され、押されていれば、演奏スタイル設定ル
ーチン(図6参照)において、設定された値が格納され
る。ここで、図6を参照して演奏スタイル設定ルーチン
(図1のステップSa8参照)について説明する。The accompaniment initial setting routine performs an initial value setting process of various registers as shown in FIG. After turning on the power, various registers in this accompaniment initial setting process
If the performance style setting switch is not pressed, the default value is stored. If the switch is pressed, the value set in the performance style setting routine (see FIG. 6) is stored. Here, the performance style setting routine (see step Sa8 in FIG. 1) will be described with reference to FIG.
【0024】演奏スタイル選択スイッチ(図1に示すス
イッチ群3に配設されている)が操作されると、まず、
ステップSc1において演奏状態フラグRUNの値の判
断処理を行う。この判断処理において、演奏状態フラグ
RUNが「演奏中状態」を示す値「1」である場合に
は、ステップSc2に進み、レジスタNSTYLに、演
奏スタイル選択スイッチの操作状態に応じた選択スタイ
ル番号を設定する。その後、ステップSc4に進む。ス
テップSc4では、初期設定(図1のステップSa1参
照)において「0」の値に設定されているスタイル変更
フラグSTSWを「1」にする。そして、メインルーチ
ンにリターンする。一方、ステップSc1における判断
処理において、演奏状態フラグRUNが、「0」の場
合、すなわち、「演奏停止状態」を表している状態にお
いては、ステップSc3に示すように、レジスタSTY
Lに選択スタイル番号を設定する。その後、演奏スタイ
ル設定ルーチンを抜ける。When a performance style selection switch (disposed on the switch group 3 shown in FIG. 1) is operated, first,
In step Sc1, a process of determining the value of the performance state flag RUN is performed. In this determination processing, if the performance state flag RUN is “1” indicating the “playing state”, the process proceeds to step Sc2, and the register NSTYL stores the selected style number corresponding to the operation state of the performance style selection switch. Set. Thereafter, the process proceeds to step Sc4. In step Sc4, the style change flag STSW set to “0” in the initial setting (see step Sa1 in FIG. 1) is set to “1”. Then, the process returns to the main routine. On the other hand, if the performance state flag RUN is "0" in the determination processing in step Sc1, that is, if the performance state flag RUN indicates the "performance stopped state", the register STY is set as shown in step Sc3.
Set the selected style number in L. Thereafter, the process exits the performance style setting routine.
【0025】ここで、レジスタNSTYLとSTYLの
機能について説明する。スタイルSTYLに格納された
選択スタイル番号は、演奏スタイルの指定に直接用いら
れるが(後述するステップSd1参照)、レジスタNS
TYLに格納された選択スタイル番号は、スタイルST
YLに転送された後に用いられる。これは、演奏中に演
奏スタイル選択スイッチが操作され、これに応じて直ち
に演奏スタイルを変更すると不自然な場合があるためで
ある。したがって、選択スタイル番号をレジスタNST
YLに一時的に保持し、小節の変わり目、あるいは、現
時点の演奏が終了した時において、レジスタSTYLに
転送して用いるようにしている。なお、選択スタイル番
号の転送処理については後述する。Here, the functions of the registers NSTYL and STYL will be described. The selected style number stored in the style STYL is directly used for designating a performance style (see step Sd1 described later), but the register NS
The selected style number stored in TYL is the style ST
Used after being transferred to YL. This is because it may be unnatural to change the performance style immediately after the performance style selection switch is operated during the performance. Therefore, the selection style number is stored in the register NST.
The data is temporarily stored in YL, and is transferred to the register STYL and used at the transition of a bar or at the end of the current performance. The transfer process of the selected style number will be described later.
【0026】さて、図7の伴奏初期設定ルーチンに戻る
と、まず、ステップSd1においてレジスタSTYLの
値に対応するスタイルヘッダ領域9a内のデータの読出
処理を行い、読みだしたデータを対応するレジスタに格
納する。すなわち、ビートBT、テンポTMP音色VO
ICE1〜VOICE3、分解能QT0〜QT3および
音程始点BGNをそれぞれ、レジスタRTMP、レジス
タRVOICE1〜VOICE3、レジスタRQT0〜
RQT3およびレジスタRBGNに設定する。その後、
ステップSd2に進む。ステップSd2においては、音
源の各演奏パートに対応するチャンネルに、レジスタR
VOICE1〜RVOICE3に設定した値(音色)を
出力する。これにより、各チャンネルの音色が決定され
る。その後、ステップSd3に進む。ステップSd3に
おいては、レジスタDT0〜DT3、演奏データ格納ア
ドレスP0〜P3、カウンタQ、スタイル変更フラグS
TSWおよびレジスタRINTTMにすべて「0」を書
き込む処理を行う。そして、伴奏初期設定処理を抜け、
図5に示すスタート/ストップルーチンを抜ける。Returning to the accompaniment initialization routine of FIG. 7, first, in step Sd1, data in the style header area 9a corresponding to the value of the register STYL is read, and the read data is stored in the corresponding register. Store. That is, beat BT, tempo TMP tone VO
ICE1 to VOICE3, resolutions QT0 to QT3, and pitch start point BGN are respectively set in a register RTMP, registers RVOICE1 to VOICE3, and registers RQT0.
RQT3 and register RBGN are set. afterwards,
Proceed to step Sd2. In step Sd2, the register R is assigned to the channel corresponding to each performance part of the sound source.
The value (tone) set in VOICE1 to RVOICE3 is output. Thereby, the timbre of each channel is determined. Thereafter, the process proceeds to step Sd3. In step Sd3, registers DT0 to DT3, performance data storage addresses P0 to P3, counter Q, style change flag S
A process of writing all “0” to the TSW and the register RINTTM is performed. Then, the process goes out of the accompaniment initialization process,
The process exits the start / stop routine shown in FIG.
【0027】ここで、レジスタDT0〜DT3について
説明する。レジスタDT0〜DT3は、リズム出力ルー
チン(図8のステップSe3)あるいは、ベース/コー
ド出力ルーチンを行った後、その次の同ルーチンを行う
までの、「残り時間(残り割り込み回数に等しい)ms
ec」を演奏パート毎に格納するためのものである。な
お、自動演奏スイッチが押された直後には、直ちに発音
処理(リズム出力ルーチンおよびベース/コード出力ル
ーチン)がなされるように、「0」が設定される。Here, the registers DT0 to DT3 will be described. After performing the rhythm output routine (step Se3 in FIG. 8) or the base / code output routine, the registers DT0 to DT3 store the “remaining time (equal to the number of remaining interrupts) ms” before performing the next routine.
"ec" for each performance part. Immediately after the automatic performance switch is pressed, "0" is set so that sound generation processing (rhythm output routine and base / chord output routine) is immediately performed.
【0028】一方、図5に示すステップSb2におい
て、演奏状態フラグRUNが「演奏中状態」から「演奏
停止状態」、すなわち、「1」から「0」に変化した場
合においては、ステップSb3の処理に進む。ステップ
Sb3においては、発音状態を停止させるために、音源
の伴奏用チャンネル消音処理を行う。その後、ステップ
Sb5に進む。ステップSb5においては、スタイル変
更フラグSTSWの値の判断処理を行う。この判断処理
において、スタイル変更フラグSTSWが「1」のと
き、すなわち、「演奏中状態」のときに、演奏スタイル
選択スイッチの操作があった場合には、ステップSb6
に進み、レジスタNSTYLに設定されている選択スタ
イル番号をレジスタSTYLに代入した後、スタイル変
更フラグSTSWを「0」に戻す。さて、ステップSb
6の処理の後、あるいは、ステップSb5において、ス
タイル変更フラグSTSWが「0」、すなわち、「N
O」と判断された場合には、スタート/ストップルーチ
ンを抜ける。On the other hand, in step Sb2 shown in FIG. 5, when the performance state flag RUN changes from the "playing state" to the "performance stopped state", that is, from "1" to "0", the processing in step Sb3 is performed. Proceed to. In step Sb3, an accompaniment channel silencing process of the sound source is performed to stop the sound emitting state. Thereafter, the process proceeds to step Sb5. In step Sb5, a determination process of the value of the style change flag STSW is performed. In this determination processing, when the style change flag STSW is "1", that is, when the performance style selection switch is operated during the "playing state", step Sb6 is performed.
After the selected style number set in the register NSTYL is assigned to the register STYL, the style change flag STSW is returned to "0". Now, step Sb
6 or in step Sb5, the style change flag STSW is set to “0”, that is, “N”.
If it is determined to be "O", the process exits the start / stop routine.
【0029】(3)タイマ割り込み制御ルーチン 次に、1msec毎に発生するタイマ8の割り込み要求
によって起動されるタイマ割り込み制御ルーチンについ
て図8から図11(図10および図11はサブルーチ
ン)を参照して説明する。なお、図8に示すフローチャ
ートは、各演奏パートの演奏出力タイミング制御処理を
示すものであり、図9に示すフローチャートは、小節監
視制御処理をするための処理を示すものである。さて、
図8に示す演奏出力タイミング制御処理において参照さ
れる、リズム出力ルーチン(ステップSe3)とベース
/コード出力ルーチン(ステップSe8)はいずれも、
「実際の発音処理」を行うものである。そこで、まず、
これらリズム出力ルーチン(ステップSe3)とベース
/コード出力ルーチン(ステップSe8)について説明
する。(3) Timer Interrupt Control Routine Next, a timer interrupt control routine started by an interrupt request of the timer 8 generated every 1 msec will be described with reference to FIGS. 8 to 11 (FIGS. 10 and 11 are subroutines). explain. Note that the flowchart shown in FIG. 8 shows the performance output timing control processing of each performance part, and the flowchart shown in FIG. 9 shows the processing for bar monitoring control processing. Now,
The rhythm output routine (step Se3) and the bass / chord output routine (step Se8) referred to in the performance output timing control process shown in FIG.
"Actual pronunciation processing" is performed. So, first,
The rhythm output routine (step Se3) and the base / chord output routine (step Se8) will be described.
【0030】リズム出力ルーチンおよびベース/コー
ド出力ルーチン a.リズム出力ルーチン(図10参照) まず、このリズム出力ルーチンが、自動演奏スタートス
イッチが押された直後の第一回目の割り込み処理中に参
照される場合について説明する。ステップSg1におけ
るレジスタRINTTMの値の判断結果は、「YES」
になる。これは、図7に示す伴奏初期設定ルーチンによ
ってレジスタRINTTMが、予め「0」にイニシャラ
イズされているからである。次にステップSg2に進
む。なお、ステップSg1における判断結果が「NO」
の場合については後述する。次に、ステップSg2にお
いては、スタイルSTYLの値に応じて参照される、領
域RDT0(STYL,P0)の値が「エンドコード
(F(h))」であるか否かの判断処理を行う。この判
断結果は「NO」になる。これは、上述した様に、自動
演奏スタートスイッチが押された直後であり、これから
自動演奏が始まるからである。その後、ステップSg3
に進む。Rhythm Output Routine and Base / Chord Output Routine a. Rhythm Output Routine (See FIG. 10) First, this rhythm output routine is referred to during the first interrupt processing immediately after the automatic performance start switch is pressed. Will be described. The determination result of the value of the register RINTTM in step Sg1 is “YES”.
become. This is because the register RINTTM has been initialized to "0" in advance by the accompaniment initialization routine shown in FIG. Next, the process proceeds to step Sg2. The result of the determination in step Sg1 is “NO”.
The case will be described later. Next, in step Sg2, it is determined whether or not the value of the region RDT0 (STYL, P0) referred to according to the value of the style STYL is “end code (F (h))”. The result of this determination is "NO". This is because, as described above, immediately after the automatic performance start switch is pressed, the automatic performance starts from this point. Then, step Sg3
Proceed to.
【0031】ステップSg3においては、領域RDT0
(STYL,P0)に格納されているデータ識別フラグ
DTFLGが「楽器コード」であるか否かの判断処理を
行う。この判断結果は「YES」になる。図3(a)に
示すデータ配置になっているためである。そして、次の
ステップSg4の処理に進む。ステップSg4において
は、領域RDT0(STYL,P0+1)、すなわち、
領域RDT0(STYL,P0)の次のアドレスに格納
されている楽器番号NINSTをレジスタRNINST
に設定する。その後、ステップSg5に進む。In step Sg3, the region RDT0
A determination process is performed to determine whether or not the data identification flag DTFLG stored in (STYL, P0) is “instrument code”. The result of this determination is "YES". This is because the data arrangement is as shown in FIG. Then, the process proceeds to the next step Sg4. In step Sg4, the region RDT0 (STYL, P0 + 1),
The musical instrument number NINST stored at the address next to the area RDT0 (STYL, P0) is stored in the register RNINST.
Set to. Thereafter, the process proceeds to step Sg5.
【0032】ステップSg5においてはキーオン信号K
ONおよびレジスタRNINSTに設定された値を音源
のリズム用チャンネルに出力する。これにより、トーン
ジェネレータ10(図1参照)が指定された楽器番号に
対応するリズム楽器音の楽音生成処理を行い、サウンド
システム11(図1参照)によって当該楽音が発生され
る。次に、ステップSg6に進む。 ステップSg6
においては、演奏データ格納アドレスP0に、次の演奏
データが格納されているアドレスを設定する処理を行
う。この場合、「P0=P0+2」で示されるように、
演奏データ格納アドレスP0に「2」を加算した値を設
定する。これは、図3(a)に示す様に、「データ識別
フラグDTFLGと楽器番号NINST」および、「デ
ータ識別フラグDTFLGとインターバルタイムINT
TM」とがそれぞれペアになって、「2アドレス分の領
域」を使用して記憶されているためである。その後、ス
テップSg2に戻る。In step Sg5, the key-on signal K
ON and the value set in the register RNINST are output to the rhythm channel of the sound source. As a result, the tone generator 10 (see FIG. 1) performs musical tone generation processing of the rhythm instrument sound corresponding to the designated instrument number, and the tone is generated by the sound system 11 (see FIG. 1). Next, the process proceeds to step Sg6. Step Sg6
In, the processing for setting the address at which the next performance data is stored in the performance data storage address P0 is performed. In this case, as shown by “P0 = P0 + 2”,
A value obtained by adding "2" to the performance data storage address P0 is set. This is, as shown in FIG. 3A, "data identification flag DTFLG and musical instrument number NINST" and "data identification flag DTFLG and interval time INT.
This is because the "TM" and the "TM" are stored as a pair using an "area for two addresses". Thereafter, the process returns to step Sg2.
【0033】ステップSg2においては、新しく設定し
た演奏データ格納アドレスP0から、スタイルSTYL
に応じて参照される領域RDT0(STYL,P0)が
エンドコード(F(h))であるか否かの判断処理を行
う。この場合、上述した様に、ステップSg5において
発音データを出力した直後であり、インターバルタイム
を設定するレジスタRINTTMの値を設定しなおす必
要があるため、判断結果は「NO」になり、ステップS
g3に進む。ステップSg3においては、領域RDT0
(STYL,P0+1)に格納されているデータが、
「楽器コードではない」ため、「NO」と判断され、次
にステップSg8に進む。ステップSg8においては、
レジスタRINTTMに、領域RDT0(RP+1)に
格納されているインターバルタイムINTTMをレジス
タRINTTMに設定する。ここで、(RP+1)は、
領域RDT0(STYL,P0)の次のアドレスである
ことを示す(したがって、P0+1と同様である)。次
に、ステップSg9に進む。ステップSg9において
は、演奏データ格納アドレスP0に、次の演奏データが
格納されているアドレスを設定する処理を行う(ステッ
プSg6参照)。この場合、図示するように、演奏デー
タ格納アドレスP0に「2」を加算した値を設定する。
その後、リズム出力ルーチンを抜ける。In step Sg2, the style STYL is read from the newly set performance data storage address P0.
A determination process is performed to determine whether or not the region RDT0 (STYL, P0) referred to in response to the end code is the end code (F (h)). In this case, as described above, since it is immediately after the sound data is output in step Sg5, and the value of the register RINTTM for setting the interval time needs to be reset, the determination result is "NO", and the determination result is "NO".
Proceed to g3. In step Sg3, the region RDT0
The data stored in (STYL, P0 + 1) is
Since it is "not an instrument code", it is determined to be "NO" and the process proceeds to step Sg8. In step Sg8,
The interval time INTTM stored in the area RDT0 (RP + 1) is set in the register RINTTM. Here, (RP + 1) is
This indicates that the address is next to the area RDT0 (STYL, P0) (the same as P0 + 1). Next, the process proceeds to step Sg9. In step Sg9, a process of setting the address where the next performance data is stored in the performance data storage address P0 is performed (see step Sg6). In this case, as shown in the figure, a value obtained by adding "2" to the performance data storage address P0 is set.
Thereafter, the process exits the rhythm output routine.
【0034】さて、次に、自動演奏スタートスイッチ押
下後、第二回目の割り込み要求が発生し、図8に示す割
り込み制御ルーチンがステップSe3のリズム出力ルー
チンにまで進んだとする。この場合、図10に示すリズ
ム出力ルーチンのステップSg1における判断処理は、
レジスタRINTTMに新しい値が設定された直後であ
るため、「NO」と判断され、ステップSg7に進む。
ステップSg7においては、レジスタRINTTMから
「1」の値をデクリメントする処理を行い、リズム出力
ルーチンを抜ける。Next, it is assumed that a second interrupt request occurs after the automatic performance start switch is pressed, and the interrupt control routine shown in FIG. 8 has advanced to the rhythm output routine of step Se3. In this case, the determination process in step Sg1 of the rhythm output routine shown in FIG.
Since it is immediately after the new value is set in the register RINTTM, "NO" is determined, and the process proceeds to step Sg7.
In step Sg7, a process of decrementing the value of "1" from the register RINTTM is performed, and the process exits the rhythm output routine.
【0035】以下、タイマ8の割り込み要求が発生する
毎に、このレジスタRINTTMのデクリメント処理を
行う。そして、レジスタRINTTMが「0」になった
ときに、第一回目の割り込み要求が発生した場合と同様
に、ステップSg2,ステップSg3,ステップSg4
を介してステップSg5において、リズム楽器音発生の
ためのデータ(NINST,KON)楽音出力イベント
をトーンジェネレータ10(図1)に出力する。これに
より、トーンジェネレータ10およびサウンドシステム
11等は、次のリズム楽器音の発音処理を行う。Thereafter, every time an interrupt request of the timer 8 is generated, the register RINTTM is decremented. Then, when the register RINTTM becomes "0", steps Sg2, Sg3, and Sg4 are performed in the same manner as when the first interrupt request occurs.
In step Sg5, a data (NINST, KON) tone output event for generating a rhythm instrument sound is output to the tone generator 10 (FIG. 1). As a result, the tone generator 10, the sound system 11, and the like perform the sounding processing of the next rhythm instrument sound.
【0036】以上のように、リズムパートの自動演奏処
理は、上述した演奏データ出力処理(ステップSg5)
および発音タイミングカウント処理(ステップSg7)
をレジスタRINTTMの値に基づいて適宜選択的に行
うことによって遂行される。As described above, the rhythm part automatic performance processing is performed by the above-described performance data output processing (step Sg5).
And sounding timing count processing (step Sg7)
Is appropriately and selectively performed based on the value of the register RINTTM.
【0037】さて、次に、自動演奏処理が進んで、楽曲
の最後の1音を発音する処理について説明する。この場
合、ステップSg1において、「YES」と判断された
後、ステップSg2,ステップSg3,ステップSg4
を介してステップSg5において、楽曲の最後の一音に
ついてのリズム楽器音発音データ(NINST,KO
N)を楽音出力イベントをトーンジェネレータ10(図
1)に出力する。これにより、トーンジェネレータ10
およびサウンドシステム11等は、最後の一音の発音処
理を行う。次に、ステップSg6に進み、演奏データ格
納アドレスP0に、次の演奏データが格納されているア
ドレスを設定する処理を行う。その後、ステップSg2
に戻る。Next, a description will be given of a process in which the automatic performance process proceeds to produce the last sound of the music. In this case, after “YES” is determined in step Sg1, step Sg2, step Sg3, step Sg4
In step Sg5, the rhythm instrument sound pronunciation data (NINST, KO
N) is output to the tone generator 10 (FIG. 1). Thereby, the tone generator 10
The sound system 11 and the like perform sound processing of the last single sound. Next, the process proceeds to step Sg6, in which the performance data storage address P0 is set to the address where the next performance data is stored. Then, step Sg2
Return to
【0038】ステップSg2においては、新しく設定し
た演奏データ格納アドレスP0から、スタイルSTYL
に応じて参照される、領域RDT0(STYL,P0)
がエンドコード(0x0f(h))であるか否かの判断
処理を行う。この場合、上述した様に、最後の一音を上
述したステップSg5において発音した直後であり、領
域RDT0(STYL,P0)には、エンドコード(0
x0f(h))が記憶されているため、判断結果は「Y
ES」になり、直ちに、リズム出力ルーチンを抜ける。In step Sg2, the style STYL is read from the newly set performance data storage address P0.
RDT0 (STYL, P0) referenced according to
Is an end code (0x0f (h)). In this case, as described above, immediately after the last note is generated in step Sg5, the end code (0) is stored in the area RDT0 (STYL, P0).
x0f (h)), the judgment result is “Y
ES ", and immediately exits the rhythm output routine.
【0039】 b.ベース/コード出力ルーチン(図11参照) 次に、コード/ベース出力ルーチンについて説明する。
まず、このコード/ベース出力ルーチンが、自動演奏ス
タートスイッチが押された直後の第一回目の割り込み処
理から楽曲の最後の一音が発音される場合の割り込み処
理中に参照される場合について説明する。最初の状態に
おいては、レジスタiの値は「1」に設定されている。
ステップSh1においては、領域PDTi(STYL,
Pi)(i=1であるため、以下、レジスタiが変化す
るまで、領域RDT1(STYL,P1)と表す)がエ
ンドコード(0x0f(h))であるか否かの判断処理
を行う。自動演奏スタートスイッチが押された直後であ
り、データ配置が図3(b)〜(d)のようになってい
るため、「NO」と判断され、ステップSh2に進む。
ステップSh2においては、領域RDT1(STYL,
P1)に格納されているデータがキーオフコード(0x
00(h))であるか否かを判断する。自動演奏スター
トスイッチが押された直後には、何れの場合も有り得
る。B. Base / Code Output Routine (See FIG. 11) Next, the code / base output routine will be described.
First, a description will be given of a case where this chord / bass output routine is referred to during the interrupt processing when the last note of the music is generated from the first interrupt processing immediately after the automatic performance start switch is pressed. . In the first state, the value of the register i is set to “1”.
In step Sh1, the area PDTi (STYL, STYL,
Pi) (since i = 1, hereinafter, until the register i changes, a process of determining whether or not the region RDT1 (represented as STYL, P1)) is an end code (0x0f (h)). Immediately after the automatic performance start switch is pressed, and since the data arrangement is as shown in FIGS. 3B to 3D, "NO" is determined and the process proceeds to step Sh2.
In step Sh2, the region RDT1 (STYL,
The data stored in P1) is the key-off code (0x
00 (h)). Immediately after the automatic performance start switch is pressed, any case may occur.
【0040】したがって、ステップSh2において「Y
ES」と判断された場合には、ステップSh4に進む。
ステップSh4においては、キーオフ信号KOFFを音
源のベースパート(i=1)に対応するチャンネルに出
力する。その後、ステップSh7に進む。一方、ステッ
プSh2において「NO」と判断された場合には、ステ
ップSh3に進む。ステップSh3においては、キーコ
ードKCに音程始点BGNの値と領域PDT1(STY
L,P1+1)に格納されている値ΔKCを加算した値
を設定する。その後、ステップSh5に進む。ステップ
Sh5においては、上述のようにして設定されたキーコ
ードKCを検出する。この場合、和音検出処理(図4ス
テップSa4参照)において、設定されたレジスタRT
およびレジスタTPの値に基づいて、音高変換処理を行
う。その後、ステップSh6に進む。ステップSh6に
おいては、キーオン信号KONおよびキーコードKCを
音源のベースパート(レジスタi=1)に対応するチャ
ンネルに出力し、ステップSh7に進む。Therefore, in step Sh2, "Y
If it is determined to be "ES", the process proceeds to Step Sh4.
In step Sh4, the key-off signal KOFF is output to the channel corresponding to the base part (i = 1) of the sound source. Thereafter, the process proceeds to Step Sh7. On the other hand, if “NO” is determined in the step Sh2, the process proceeds to a step Sh3. In step Sh3, the value of the pitch start point BGN and the area PDT1 (STY
(L, P1 + 1) is set. Thereafter, the process proceeds to Step Sh5. In step Sh5, the key code KC set as described above is detected. In this case, in the chord detection processing (see step Sa4 in FIG. 4), the set register RT
And a pitch conversion process based on the value of the register TP. Thereafter, the process proceeds to Step Sh6. In step Sh6, the key-on signal KON and the key code KC are output to the channel corresponding to the base part (register i = 1) of the sound source, and the flow advances to step Sh7.
【0041】ステップSh7においては、演奏データ格
納アドレスP1を「P1=P1+1」によって「1」イ
ンクリメントし、次に参照される領域RDT1(STY
L,P1)の新しいアドレスを設定する。そして、ステ
ップ7の処理の後、ベース/コード出力ルーチンを抜け
る。なお、ステップSh1〜ステップSh7の処理はレ
ジスタiの値が、「2」および「3」すなわち、コード
1パート、コード2パートに対応する場合においても上
述と同様に遂行される。そして、楽曲の最後の一音を発
音するまで、各演奏パートについて上述した処理を割り
込み制御ルーチンが起動される毎に行う。In step Sh7, the performance data storage address P1 is incremented by "1" by "P1 = P1 + 1", and the next referenced area RDT1 (STY
(L, P1). Then, after the processing of step 7, the process exits the base / code output routine. The processing of Step Sh1 to Step Sh7 is performed in the same manner as described above even when the value of the register i corresponds to “2” and “3”, that is, the code 1 part and the code 2 part. Then, the above-described processing is performed for each performance part every time the interrupt control routine is started until the last sound of the music is pronounced.
【0042】次に、楽曲の最後の一音を発音し終わった
直後の割り込み処理中に参照される場合について説明す
る。この場合、領域PDT1(STYL,P1)には、
エンドコードが格納されているため、ステップSh1の
判断処理の結果は、「YES」になり直ちにベース/コ
ードルーチンを抜ける。Next, a case will be described in which reference is made during interrupt processing immediately after the last sound of a musical piece has been generated. In this case, the area PDT1 (STYL, P1)
Since the end code is stored, the result of the determination processing in step Sh1 is “YES”, and the process immediately exits the base / code routine.
【0043】各演奏パート出力タイミング制御処理 図8に示す各演奏パート出力タイミング制御処理におい
ては、「四分音符に対する分割周期」の演算処理と合わ
せて、「分解能に応じた発音タイミング制御」を行って
いる。まず、ステップSe1においては、演奏状態フラ
グRUNが「1」、すなわち、「演奏中状態」であるか
否かの判断処理を行う。この判断処理の結果が、「N
O」、すなわち、「演奏停止状態」である場合には、た
だちにタイマ割り込み制御ルーチンを抜け、メインルー
チンに戻る。一方、ステップSe1の判断処理が「YE
S」、すなわち「演奏中状態」の場合には、次のステッ
プSe2に進む。Each performance part output timing control process In the performance part output timing control process shown in FIG. 8, "sound generation timing control according to resolution" is performed together with the calculation process of "division period for quarter note". ing. First, in step Se1, it is determined whether or not the performance state flag RUN is "1", that is, whether or not the "performance state". The result of this determination processing is “N
If it is "O", that is, "performance stopped state", the process immediately exits the timer interrupt control routine and returns to the main routine. On the other hand, if the determination processing in step Se1 is “YE
S ", that is, the" playing state ", the process proceeds to the next step Se2.
【0044】ステップSe2からステップSe5に至る
処理は、リズムパートの分解能QT0の値に応じて、リ
ズムパートの発音タイミングを制御している。まず、ス
テップSe2におけるレジスタDT0の値の判定処理の
詳細について説明する。自動演奏スイッチ(スイッチ群
3に配設されている)のオンイベントが、スイッチイベ
ント検出部4によって検出されると、演奏状態フラグR
UNが「1」、すなわち、「演奏中状態」に設定される
とともに(図5のステップSb1)、レジスタDT0の
値が「0」に初期化される(図7のステップSd3)。
この状態において、タイマ8の割り込み要求をCPU7
が検出すると、ステップSe1の判定処理を介して、ス
テップSe2に進む。このステップSe2においては、
「DT0<1/2(msec)」の関係を満たしている
か否かの判断処理を行う。この場合、上述したように、
自動演奏スイッチオンイベント検出直後であるため、レ
ジスタDT0の値が「0」である。そのため、この判断
結果は「YES」になり、ステップSe3のリズム出力
ルーチンに進む。そして、第一回目の割り込み処理にお
けるステップSe3に示すリズム出力ルーチンを行った
後、ステップSe5に進む。In the processing from step Se2 to step Se5, the sounding timing of the rhythm part is controlled in accordance with the value of the resolution QT0 of the rhythm part. First, the details of the process of determining the value of the register DT0 in step Se2 will be described. When an on event of the automatic performance switch (disposed in the switch group 3) is detected by the switch event detection unit 4, the performance state flag R
UN is set to "1", that is, "playing state" (step Sb1 in FIG. 5), and the value of the register DT0 is initialized to "0" (step Sd3 in FIG. 7).
In this state, the interrupt request of the timer 8 is
Is detected, the process proceeds to step Se2 via the determination process of step Se1. In this step Se2,
A determination process is performed to determine whether or not the relationship of “DT0 <1/2 (msec)” is satisfied. In this case, as described above,
Since the automatic performance switch-on event has just been detected, the value of the register DT0 is “0”. Therefore, the result of this determination is "YES", and the routine proceeds to the rhythm output routine of step Se3. Then, after performing the rhythm output routine shown in step Se3 in the first interrupt processing, the process proceeds to step Se5.
【0045】ステップSe5においては、1msec毎
に繰り返し行われるタイマ割り込み制御において、第二
回目の割り込み処理におけるリズム出力ルーチン(ステ
ップSe3)を行うまでの「残り時間(残り割り込み回
数)msec」がどれだけ残っているかを次の式によっ
て計算する。In step Se5, in the timer interrupt control repeatedly performed every 1 msec, what is the "remaining time (remaining interrupt count) msec" until the rhythm output routine (step Se3) in the second interrupt processing is performed. The remaining is calculated by the following formula.
【0046】[0046]
【数1】 「DT0=(60×1000)/RTMP×1/((R
QT0+1)×6)−1+DT0(msec)」[Expression 1] “DT0 = (60 × 1000) / RTMP × 1 / ((R
QT0 + 1) × 6) -1 + DT0 (msec) "
【0047】この数1において、(60×1000/R
TMP)(msec)は、テンポTMPの値(レジスタ
RTMPに読み出されている)に応じた四分音符の発音
時間を表している。次に、1/((RQT0+1)×
6)(無次元)は、分解能QT0の値(レジスタRQT
0に読み出されている)に応じた四分音符の発音時間の
分割比率を表している。In the equation (1), (60 × 1000 / R
(TMP) (msec) represents the sounding time of a quarter note according to the value of the tempo TMP (read out to the register RTMP). Next, 1 / ((RQT0 + 1) ×
6) (Dimensionless) is the value of the resolution QT0 (register RQT
(Read to 0) indicates the division ratio of the sounding time of the quarter note.
【0048】したがって、(60×1000)/RTM
P×1/((RQT0+1)×6)(msec)は、四
分音符を、((RQT0+1)×6)で表される「所定
の分割数」で分割した場合の「四分音符に対する分割周
期」を表している。この「四分音符に対する分割周期」
は、ミリセカントの単位で表されるため、タイマ8の割
り込み要求の周期(1msec)と同期してカウントす
ることができる。また、第一回目のステップSe5にお
いて、「1」、すなわち「1msec」をデクリメント
しているのは、最初のリズム出力ルーチンが行われたこ
とによって、「四分音符に対する分割周期」を「1ms
ec」消費したことを示す。言い替えれば、第二回目の
リズム出力ルーチンを行うまでの「残り時間(残り割り
込み回数)msec」が、「1msec」、減少したこ
とを表し、あと何msec計測すればよいかの正確な値
を設定している。また、「DT0」を加算しているの
は、各演奏パート毎の発音タイミング制御の誤差を少な
くするためである。この詳細については後述する。Therefore, (60 × 1000) / RTM
P × 1 / ((RQT0 + 1) × 6) (msec) is a “division period for quarter note” when a quarter note is divided by “a predetermined number of divisions” represented by ((RQT0 + 1) × 6). ". This "division period for quarter notes"
Is expressed in units of milliseconds, and can be counted in synchronization with the cycle (1 msec) of the interrupt request of the timer 8. Also, in the first step Se5, “1”, that is, “1 msec” is decremented because the first rhythm output routine is performed, so that the “division cycle for quarter note” is changed to “1 ms”.
ec ”indicates consumption. In other words, the "remaining time (remaining interrupt count) msec" until the second rhythm output routine is performed is "1 msec", indicating that the time has decreased, and an accurate value of how many msec to measure is set. doing. The reason why “DT0” is added is to reduce errors in tone generation timing control for each performance part. The details will be described later.
【0049】一方、上述したステップSe2における判
断処理が「NO」、すなわち、「DT0<1/2(ms
ec)」の関係を満たしていない場合にはステップSe
4に進む。ステップSe4では、上述したステップSe
5で設定された「四分音符に対する分割周期」ひいて
は、「残り時間(残り割り込み回数)msec」が設定
されているレジスタDT0の値を、タイマ8の割り込み
要求毎に「1」すなわち「1msec」づつ、デクリメ
ントする。これにより、次にステップSe2で「YE
S」と判断されるまでの時間、すなわち、「四分音符に
対する分割周期設定タイミング」を計測する。On the other hand, the judgment processing in step Se2 is "NO", that is, "DT0 <1/2 (ms
ec) ”does not satisfy the relationship of step Se.
Proceed to 4. In step Se4, step Se described above is performed.
The value of the register DT0 in which the “divided cycle for quarter note” set in step 5 is set, and thus the “remaining time (remaining interrupt count) msec” is set to “1”, that is, “1 msec” for each interrupt request of the timer 8. Decrement by one. Thereby, in step Se2, “YE
The time until it is determined as “S”, that is, “the division cycle setting timing for the quarter note” is measured.
【0050】さて、「四分音符に対する分割周期設定タ
イミング」は、ステップSe2における判定処理によっ
て決定される。この判定処理においては、レジスタDT
0に設定されている「残り時間(残り割り込み回数)m
sec」を判定しきい値によって判断している。この判
定しきい値を設けたのは、ステップSe5で計算される
「四分音符に対する分割周期」が、各演奏パート毎に、
微妙に異なるからである。「四分音符に対する分割周
期」が異なるということは、厳密に言えば「発音タイミ
ングが異なる」ということである。この場合、ある程度
の誤差は否めないので、各演奏パート毎の発音タイミン
グのズレが「1/2(msec)」以内になった場合に
は発音することにしているのである。したがって、この
しきい値は、「1/2msec」に限定しなくても良
い。すなわち、精度が要求される場合には、しきい値を
小さくし、ラフで良い場合には、しきい値を大きく取れ
ばよい。The "divided cycle setting timing for a quarter note" is determined by the determination processing in step Se2. In this determination processing, the register DT
"Remaining time (remaining interrupt count) m" set to 0
"sec" is determined by the determination threshold value. The reason why the judgment threshold value is provided is that the “division period for quarter notes” calculated in step Se5 is determined for each performance part.
Because it is slightly different. The fact that "division periods for quarter notes" are different means, strictly speaking, "the sounding timing is different". In this case, since a certain degree of error cannot be denied, if the deviation of the sounding timing of each performance part falls within "1/2 (msec)", the sound is generated. Therefore, this threshold does not have to be limited to “1 / msec”. That is, if accuracy is required, the threshold value may be reduced, and if roughness is sufficient, the threshold value may be increased.
【0051】ステップSe6からステップSe12に至
る処理は、各演奏パート毎における処理、すなわち、ベ
ース、コード1およびコード2の各パートの出力タイミ
ングを制御する処理であり、上述したステップSe2か
らステップSe5における処理に準じている。各演奏パ
ートは、レジスタiの値と対応している。すなわち、レ
ジスタiが取り得る値「1」、「2」および「3」は、
各々、ベース、コード1およびコード2パートに対応す
る。まず、ステップSe6においてはレジスタiに
「1」を設定する。これにより、引き続いて行われるス
テップSe7からステップSe11の処理においては、
ベースパートの出力タイミング制御が行われることとな
る。The process from step Se6 to step Se12 is a process for each performance part, that is, a process for controlling the output timing of each part of the bass, chord 1 and chord 2, and the process in steps Se2 to Se5 described above. According to the processing. Each performance part corresponds to the value of the register i. That is, the possible values “1”, “2” and “3” of the register i are:
Each corresponds to a bass, chord 1 and chord 2 parts. First, in step Se6, "1" is set in the register i. As a result, in the subsequent processing from step Se7 to step Se11,
The output timing control of the base part is performed.
【0052】さて、ステップSe7においては、レジス
タDTi(i=1)が、「1/2(msec)」より小
さいか否かの判断処理を行う。この判断処理が「YE
S」、すなわち、「DTi<1/2(msec)」の関
係を満たしている場合にはステップSe8のベース/コ
ード出力ルーチンを行う。ステップSe8のベース/コ
ード出力ルーチンにおいては、レジスタiの値に対応し
た演奏パートが出力される。すなわち、この場合は、ベ
ースパートの演奏パートが出力される(i=1)。この
処理が終了すると、ステップSe10に示すレジスタD
Tiの算出処理に進む。この処理においては、レジスタ
iの値に応じて、レジスタDTi(i=1)の値がステ
ップSe5の場合と同様にして算出される。次に、ステ
ップSe11に進む。In step Se7, it is determined whether or not the value of the register DTi (i = 1) is smaller than "1/2 (msec)". This determination process is "YE
S ", that is, if the relationship of" DTi <1/2 (msec) "is satisfied, the base / code output routine of step Se8 is performed. In the base / chord output routine of step Se8, a performance part corresponding to the value of the register i is output. That is, in this case, the performance part of the bass part is output (i = 1). When this processing ends, the register D shown in the step Se10 is read.
The process proceeds to the calculation of Ti. In this process, the value of the register DTi (i = 1) is calculated according to the value of the register i in the same manner as in step Se5. Next, the process proceeds to step Se11.
【0053】ステップSe11においては、レジスタi
をインクリメントし、次のパートを指定する処理を行
う。そして、ステップSe12に移り、レジスタiの値
が「4」か否かが判断される。この判断が「NO」の場
合は、ステップSe7に戻り、再び上述した処理を繰り
返す。この繰り返しは、レジスタiの値が「4」となる
まで行われ、この結果、すべてのパートについて上記と
同様の処理が行われる。なお、ステップSe7〜ステッ
プSe10でなされる処理は、前述したステップSe2
〜ステップSe5に対応している。その後、すべてのパ
ートについての処理が終了し、レジスタiの値が「4」
になると、ステップSe12の判断が「YES」とな
り、図9に示す小節監視制御処理に進む。At step Se11, the register i
Is incremented, and processing for specifying the next part is performed. Then, the flow shifts to step Se12, where it is determined whether the value of the register i is "4". If this determination is "NO", the flow returns to step Se7, and the above-described processing is repeated again. This repetition is performed until the value of the register i becomes "4". As a result, the same processing as described above is performed for all parts. Note that the processing performed in steps Se7 to Se10 is the same as the processing in step Se2 described above.
To Step Se5. Thereafter, the processing for all parts is completed, and the value of the register i is set to “4”.
Then, the determination in step Se12 becomes “YES”, and the flow proceeds to the measure monitoring control process shown in FIG.
【0054】さて、ここで、上述した処理について、具
体的に、三連符の長さ以上の音符と六連符の長さ以上の
音符から構成されているリズムパートの楽音データが発
音される場合について説明する。三連符の長さ以上の音
符から構成されている楽音データが発音される場合に
は、「0」に設定されている分解能QT0を使用してレ
ジスタDT0の値をステップSe5により計算する。こ
のように、分解能QT0が「0」である場合には前述し
たように、四分音符一音分の楽音データは、ROM9内
のリズムパターン領域9bの6つの記憶領域に分割して
記憶されているため、ステップSe3のリズム出力ルー
チンを6回行う事によって、四分音符一音が発音され
る。したがって、八分音符は、ステップSe3のリズム
出力ルーチンを3回行うことにより、三連符は、ステッ
プSe3のリズム出力ルーチンを2回行う事によって発
音することができる。Now, regarding the above-described processing, specifically, the case where musical tone data of a rhythm part composed of a note longer than a triplet and a note longer than a sixt is generated. Will be described. If tone data composed of notes longer than the triplet is generated, the value of the register DT0 is calculated in step Se5 using the resolution QT0 set to "0". As described above, when the resolution QT0 is “0”, as described above, the musical tone data for one quarter note is divided and stored in the six storage areas of the rhythm pattern area 9b in the ROM 9. Therefore, by executing the rhythm output routine of step Se3 six times, one quarter note is generated. Therefore, the eighth note can be sounded by performing the rhythm output routine of step Se3 three times, and the triplet can be sounded by performing the rhythm output routine of step Se3 twice.
【0055】また、六連符の長さ以上の音符から構成さ
れている楽音データが発音される場合には、「1」に設
定されている分解能QT0を使用してレジスタDT0の
値をステップSe5により計算する。このように、分解
能QT0の値が「1」である場合には、四分音符一音分
の楽音データは、12個に分割して記憶されているた
め、ステップSe3のリズム出力ルーチンを12回行う
事によって、四分音符一音が発音される。したがって、
八分音符、十六分音符および六連符は、各々このステッ
プSe3のリズム出力ルーチンを6回、3回および2回
行う事によって、対応する音符一音を発音することがで
きる。If tone data composed of notes longer than the length of the sixt is to be generated, the value of the register DT0 is determined in step Se5 using the resolution QT0 set to "1". calculate. As described above, when the value of the resolution QT0 is “1”, the musical tone data for one quarter note is divided into twelve pieces and stored, so the rhythm output routine of step Se3 is performed 12 times. By doing so, one quarter note is pronounced. Therefore,
The eighth note, the sixteenth note, and the sixth triplet can generate a corresponding note by executing the rhythm output routine of step Se3 six times, three times, and twice, respectively.
【0056】ベース/コードパートが発音される場合に
ついても同様である。すなわち、その音符の種類と、分
解能QT1〜QT3の値に応じて、ステップSe8に示
すベース/コードパートが何回か行われることによって
一音分が発音される。なお、ステップSe5およびステ
ップSe10において、「DT0」(DTi)を加算す
るのは、上述したようにこれらのステップで、それぞれ
設定されるリズムパートにおける「四分音符に対する分
割周期」と、各演奏パートの「四分音符に対する分割周
期」とでは値が異なることに起因する。すなわち、結果
的に各演奏パート相互の発音タイミングが少しズレるか
らである。この発音タイミングのズレが「1/2mse
c」未満であれば、その値を、次の発音タイミングを求
めるために使用する(すなわち加算する)ことによっ
て、誤差を少なくするためである。The same applies to the case where the bass / chord part is sounded. That is, according to the type of the note and the values of the resolutions QT1 to QT3, the base / chord part shown in step Se8 is performed several times to generate one note. In step Se5 and step Se10, "DT0" (DTi) is added in these steps as described above, because the "division period for quarter note" in the rhythm part set in each step and each performance part This is because the value is different from the “division period for the quarter note”. That is, as a result, the sounding timing of each performance part is slightly shifted. The deviation of this sounding timing is "1 / 2mse
If the value is less than "c", the value is used to determine the next sounding timing (that is, added) to reduce the error.
【0057】小節監視制御処理 次に、図9を参照して小節監視制御処理について説明す
る。まず、ステップSf1においては、タイマ割り込み
カウンタQが、「1」インクリメントされる。例えば、
自動演奏スタートスイッチが押された直後の、第一回目
の割り込み要求であれば、図7に示す伴奏初期設定ルー
チンによってタイマ割り込みカウンタQが「0」にイニ
シャライズされているため、タイマ割り込みカウンタQ
は、「1」に設定される。次にステップSf2に進む。
ステップSf2においては、レジスタRBT(ビートB
Tが書き込まれている)が「0」、すなわち、四分の四
拍子か否かという処理を行う。この場合、「YES」で
あれば、レジスタCNTに「4」の値を設定し(ステッ
プSf3)、「NO」であれば、レジスタCNTに
「3」の値を設定する(ステップSf4)。ステップS
f3あるいはステップSf4の処理の後、ステップSf
5に進む。Measure monitoring control processing Next, the measure monitoring control processing will be described with reference to FIG. First, in step Sf1, the timer interrupt counter Q is incremented by "1". For example,
If it is the first interrupt request immediately after the automatic performance start switch is pressed, the timer interrupt counter Q is initialized to "0" by the accompaniment initialization routine shown in FIG.
Is set to “1”. Next, the process proceeds to step Sf2.
In step Sf2, the register RBT (beat B
(T is written) is "0", that is, whether or not it is a quarter beat. In this case, if "YES", a value of "4" is set in the register CNT (step Sf3), and if "NO", a value of "3" is set in the register CNT (step Sf4). Step S
After the processing of f3 or step Sf4, step Sf
Go to 5.
【0058】ステップSf5においては、タイマ割り込
みカウンタQが2小節分のタイマ割り込み回数((60
×1000/TMP)×CNT×2)(無次元)と等し
いか否かの判断処理を行う。なお、このタイマ割り込み
回数((60×1000/TMP)×CNT×2)は、
タイマ8が1msec毎に割り込み要求をかけるため、
2小節分の演奏時間も表すものでもある。さて、まず、
この判断処理が「NO」の場合、すなわち、等しくない
場合について説明する。なお、「NO」になる場合は、
演奏箇所が2小節単位の切れ目でない場合である。その
場合、まずステップSf6に進む。次のステップSf6
においては、タイマ割り込みカウンタQが1小節分のタ
イマ割り込み回数(60×1000/TMP×CNT)
(無次元)と等しいか否かの判断処理を行う。この判断
処理が「NO」の場合、すなわち、演奏箇所が小節の途
中にある場合においては、直ちにタイマ割り込み制御ル
ーチンを抜ける。一方、この判断処理が「YES」の場
合、すなわち、演奏箇所が1小節単位の切れ目にある場
合には、次のステップSf7に進む。In step Sf5, the timer interrupt counter Q counts the number of timer interrupts ((60
X1000 / TMP) × CNT × 2) (dimensionless) is determined. The number of timer interrupts ((60 × 1000 / TMP) × CNT × 2) is
Since the timer 8 issues an interrupt request every 1 msec,
It also represents the performance time for two measures. Well, first,
The case where this determination processing is “NO”, that is, the case where they are not equal will be described. If the answer is "NO",
This is the case where the performance location is not a two-measure break. In that case, the process first proceeds to step Sf6. Next step Sf6
In, the timer interrupt counter Q is set to the number of timer interrupts for one bar (60 × 1000 / TMP × CNT)
(No dimension) is determined. If the determination is "NO", that is, if the performance location is in the middle of a bar, the process immediately exits the timer interrupt control routine. On the other hand, if this determination is "YES", that is, if the performance location is at a one-measure break, the process proceeds to the next step Sf7.
【0059】ステップSf7においては、スタイル変更
フラグSTSWが「1」であるか否か、すなわち、「演
奏中状態」に演奏スタイル変更スイッチ操作があったか
否かを判断する処理を行う。このステップSf7におけ
る判断処理が「NO」、すなわち、演奏スタイル変更ス
イッチ操作がなかった場合においては、直ちにタイマ割
り込み制御ルーチンを抜ける。一方、ステップSf7に
おける判断処理が「YES」の場合には、ステップSf
8に進み、音源の伴奏用チャンネルを消音する処理をお
こなう。次に、ステップSf9に進む。ステップSf9
においては、上述した演奏スタイル変更スイッチ操作に
基づいて指定されたパラメータを保持しているレジスタ
NSTYLの値をスタイルSTYLに設定する処理を行
う。そして、次のステップSf10に進む。ステップS
f10においては、伴奏初期設定処理(図7参照)を行
い、ステップSf9において設定されたスタイルSTY
Lに応じて各種パラメータを設定しなおす処理を行う。
その後、タイマ割り込み制御ルーチンを抜ける。In step Sf7, a process is performed to determine whether or not the style change flag STSW is "1", that is, whether or not the performance style change switch has been operated in the "playing state". If the determination in step Sf7 is "NO", that is, if the performance style change switch has not been operated, the process immediately exits the timer interrupt control routine. On the other hand, if the determination in step Sf7 is “YES”, the process proceeds to step Sf7.
Proceeding to step 8, the processing for silencing the accompaniment channel of the sound source is performed. Next, the process proceeds to step Sf9. Step Sf9
In, the processing of setting the value of the register NSTYL holding the parameter specified based on the above-described performance style change switch operation to the style STYL is performed. Then, the process proceeds to the next Step Sf10. Step S
In f10, an accompaniment initial setting process (see FIG. 7) is performed, and the style STY set in step Sf9 is performed.
Processing for resetting various parameters according to L is performed.
Thereafter, the process exits the timer interrupt control routine.
【0060】さて、次に、上述したステップSf5にお
ける判断処理の結果が等しい場合、すなわち、演奏箇所
が2小節単位の切れ目である場合について説明する。そ
の場合には、ステップSf11に進み、演奏スタイル変
更スイッチ操作があったか否かの判断処理を行う。この
判断処理が等しい場合には、上述したステップSf8に
進む。そして、ステップSf8、ステップSf9および
ステップSf10の処理を順番に行った後、このタイマ
割り込み制御ルーチンを抜ける。一方、ステップSf1
1における判断処理が等しくない場合、すなわち、演奏
スタイル変更スイッチが押されなかった場合において
は、ステップSf12に示す処理に進む。ステップSf
12においては、レジスタDT0〜DT3、タイマ割り
込みカウンタQ、演奏データ格納アドレスP0〜P3お
よびレジスタRINTTMの値をすべて「0」に初期化
する処理を行う。その後、タイマ割り込み制御ルーチン
を抜ける。Next, the case where the result of the judgment processing in step Sf5 described above is equal, that is, the case where the performance location is a break in units of two measures will be described. In this case, the process proceeds to step Sf11, and a determination process is performed to determine whether or not a performance style change switch operation has been performed. If the determinations are equal, the process proceeds to step Sf8 described above. Then, after performing the processing of step Sf8, step Sf9, and step Sf10 in order, the process exits the timer interrupt control routine. On the other hand, step Sf1
If the determination processing in step 1 is not equal, that is, if the performance style change switch has not been pressed, the process proceeds to step Sf12. Step Sf
In step 12, the values of the registers DT0 to DT3, the timer interrupt counter Q, the performance data storage addresses P0 to P3, and the register RINTTM are all initialized to "0". Thereafter, the process exits the timer interrupt control routine.
【0061】上述のことから、小節監視制御処理は、2
小節単位に繰り返し行われており、演奏スタイルの変更
については、1小節単位で行われている。As described above, the measure monitoring control processing is performed in two steps.
The repetition is performed in measures, and the change of the performance style is performed in measures.
【0062】(4)動作の総括 上記実施例においては、タイマ8による割り込み要求が
1msec毎に発生することを利用して、時分割で発音
タイミングを制御している。すなわち、レジスタRTM
P、レジスタRINTTM、分解能QT0〜QT3、タ
イマ割り込みカウンタQ等のパラメータを用いて、各種
パート毎、小節毎および音符の種類毎に応じた処理を可
能にしている。この場合、実際の楽音発生タイミング制
御処理は、すべてこの割り込み処理の中で遂行されてい
る。(4) Overall Operation In the above embodiment, the tone generation timing is controlled in a time-sharing manner by utilizing the fact that an interrupt request by the timer 8 is generated every 1 msec. That is, the register RTM
Using parameters such as P, the register RINTTM, the resolutions QT0 to QT3, and the timer interrupt counter Q, it is possible to perform processing corresponding to each part, each measure, and each note type. In this case, the actual tone generation timing control processing is all performed in this interrupt processing.
【0063】この場合、特に、楽音の出力タイミング
は、図8のステップSe2からステップSe5(ステッ
プSe7からステップSe10も同様)に示す処理によ
って、割り込み制御要求毎に監視される。また、楽音の
出力タイミング毎に、「四分音符に対する分割周期」の
設定を行うため、分解能QT0(QTi)に格納されて
いる値に応じて、楽音の発音タイミングを正確に監視す
ることができる。また、レジスタRTMPの値も同時に
設定しなおされるため、テンポ変更操作にリアルタイム
に応答して、楽音演奏の速さを変化させることができ
る。また、ステップSe2において、「1/2mse
c」を判定値として使用することにより、リズムパート
および演奏パート毎で値が異なる「四分音符に対する分
割周期」に起因する発音タイミングの誤差が蓄積されな
いようにすることが可能である。In this case, in particular, the output timing of the musical tone is monitored for each interrupt control request by the processing shown in steps Se2 to Se5 in FIG. 8 (the same applies to steps Se7 to Se10). In addition, since the setting of "division period for quarter note" is performed for each tone output timing, the tone generation timing of the tone can be accurately monitored according to the value stored in the resolution QT0 (QTi). . Further, since the value of the register RTMP is reset at the same time, the speed of the musical sound performance can be changed in response to the tempo changing operation in real time. Also, in step Se2, "1/2 mse
By using "c" as the determination value, it is possible to prevent accumulation of errors in sounding timing due to "division periods for quarter notes" having different values for each rhythm part and performance part.
【0064】[0064]
【発明の効果】以上説明したように、本発明によれば、
複数種類すなわち複数のパートからなる演奏データの自
動演奏に対応した楽音を発生するために、一番細かな分
解能を必要とするパートに合わせた分解能を共通に設定
するのではなく、「各パートに最適な分解能」を個別に
設定する。したがって、これまでのような、無駄なメモ
リを使う必要がなく、回路規模の縮小化を図ることがで
きる。As described above, according to the present invention,
To generate a musical tone corresponding to a plurality of types i.e. the automatic performance of the performance data comprising a plurality of parts, instead of setting the resolution to match the part requiring the most fine resolution in common, "each part Set the “optimal resolution” individually. Therefore, there is no need to use a useless memory as in the past, and the circuit scale can be reduced.
【図1】 この発明の一実施例による自動演奏装置の全
体構成を示すブロック図である。FIG. 1 is a block diagram showing an overall configuration of an automatic performance device according to an embodiment of the present invention.
【図2】 同実施例におけるスタイルヘッダ9aのマッ
ピング状態を示すメモリ配置図である。FIG. 2 is a memory layout diagram showing a mapping state of a style header 9a in the embodiment.
【図3】 同実施例における各パート演奏データ(リズ
ムパターン領域9b,ベースパターン領域9c,コード
パターン領域9d)のマッピング状態を示すメモリ配置
図である。FIG. 3 is a memory layout diagram showing a mapping state of each part performance data (rhythm pattern area 9b, base pattern area 9c, chord pattern area 9d) in the embodiment.
【図4】 メインルーチンの処理を示すフローチャート
である。FIG. 4 is a flowchart showing processing of a main routine.
【図5】 スタート/ストップルーチンの処理を示すフ
ローチャートである。FIG. 5 is a flowchart showing a process of a start / stop routine.
【図6】 演奏スタイル設定ルーチンの処理を示すフロ
ーチャートである。FIG. 6 is a flowchart showing the processing of a performance style setting routine.
【図7】 伴奏初期設定ルーチンの処理を示すフローチ
ャートである。FIG. 7 is a flowchart showing processing of an accompaniment initialization routine.
【図8】 タイマ割り込み制御ルーチンで行われる各パ
ート出力タイミング制御処理を示すフローチャートであ
る。FIG. 8 is a flowchart showing a part output timing control process performed in a timer interrupt control routine.
【図9】 タイマ割り込み制御ルーチンで行われる小節
監視制御処理を示すフローチャートである。FIG. 9 is a flowchart showing a bar monitoring control process performed in a timer interrupt control routine.
【図10】 リズム出力ルーチンを示すフローチャート
である。FIG. 10 is a flowchart showing a rhythm output routine.
【図11】 ベース/コード出力ルーチンを示すフロー
チャートである。FIG. 11 is a flowchart showing a base / code output routine.
7……CPU、9a……スタイルヘッダ領域、9b……
リズムパターン領域、9c……ベースパターン領域、9
d……コードパターン領域。7 CPU 9a Style header area 9b
Rhythm pattern area, 9c ... Base pattern area, 9
d: Code pattern area.
Claims (2)
し、この読み出したデータに従って自動演奏を行う自動
演奏装置において、同時に読み出される複数のパートからなる 演奏データを
記憶する記憶手段と、 前記演奏データに対応する楽音の発音タイミングや発音
時間の分解能を決定する分解能データを、前記各パート
毎に設定する分解能設定手段と、 前記各パートの分解能データに基づいて、対応する各パ
ートの演奏データを該分解能に応じた周期で並行して読
み出す読出制御手段とを具備することを特徴とする自動
演奏装置。1. A sequentially reads the previously stored performance data, the automatic performance apparatus for performing an automatic performance in accordance with the read data, storage means for storing the performance data comprising a plurality of parts to be read simultaneously, before Symbol performance data the corresponding resolution data to determine the resolution of the sounding timing and sounding time of the tone, and resolution setting means for setting for each of the <br/> each part, based on the resolution data of the each part, each corresponding Pas
An automatic performance device comprising: reading control means for reading out performance data of a music piece in parallel at a cycle corresponding to the resolution .
し、この読み出したデータに従って自動演奏を行う自動
演奏装置において、同時に読み出される複数のパートからなる 演奏データを
記憶する記憶手段と、前記演奏データに対応する楽音の
発音タイミングや発音時間の分解能を決定する分解能デ
ータを各パート毎に設定する分解能設定手段と、各パート毎に設定された分解能データに応じた周期で計
時を行う複数の 計時手段と、 前記各計時手段によって計時された計時タイミングに基
づいて、対応する各パートの演奏データを読み出す読出
制御手段とを具備することを特徴とする自動演奏装置。2. A sequentially reads the previously stored performance data, the automatic performance apparatus for performing an automatic performance in accordance with the read data, storage means for storing the performance data comprising a plurality of parts to be read simultaneously, before Symbol performance data The corresponding musical tone
Resolution data that determines the resolution of sounding timing and sounding time
A resolution setting unit for setting the over data in each part, the period a total according to the resolution data set in each part
A plurality of counting means for performing a time, based on time measurement timing at which the counted by the counting means
Zui, the automatic playing apparatus characterized by comprising a read control means for reading the performance data of each corresponding part.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4000416A JP2646923B2 (en) | 1992-01-06 | 1992-01-06 | Automatic performance device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4000416A JP2646923B2 (en) | 1992-01-06 | 1992-01-06 | Automatic performance device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0643860A JPH0643860A (en) | 1994-02-18 |
| JP2646923B2 true JP2646923B2 (en) | 1997-08-27 |
Family
ID=11473198
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4000416A Expired - Fee Related JP2646923B2 (en) | 1992-01-06 | 1992-01-06 | Automatic performance device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2646923B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN113541783B (en) * | 2020-04-21 | 2025-02-28 | 中兴通讯股份有限公司 | Optical module and parameter transmission, detection method, control method, and fronthaul system thereof |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS53100825A (en) * | 1977-02-15 | 1978-09-02 | Pilot Pen Co Ltd | Electronic musical instrument |
| JPS565595A (en) * | 1979-06-27 | 1981-01-21 | Nippon Musical Instruments Mfg | Automatic player |
| JPH03200290A (en) * | 1989-12-28 | 1991-09-02 | Yamaha Corp | Automatic player |
| JP3056988U (en) * | 1998-08-25 | 1999-03-09 | 株式会社カクダイ | Hot water mixing device and hot water mixing tap mounting device |
-
1992
- 1992-01-06 JP JP4000416A patent/JP2646923B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0643860A (en) | 1994-02-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4887504A (en) | Automatic accompaniment apparatus realizing automatic accompaniment and manual performance selectable automatically | |
| JP2646923B2 (en) | Automatic performance device | |
| JPH01179090A (en) | Automatic playing device | |
| JP2712851B2 (en) | Electronic musical instrument | |
| JPH0631977B2 (en) | Electronic musical instrument | |
| JP2998527B2 (en) | Automatic accompaniment device | |
| JP3024338B2 (en) | Automatic performance device | |
| JP2586744B2 (en) | Automatic accompaniment device for electronic musical instruments | |
| JP2601039B2 (en) | Electronic musical instrument | |
| JP2722880B2 (en) | Electronic musical instrument | |
| JP2541021B2 (en) | Electronic musical instrument | |
| JP2705421B2 (en) | Automatic accompaniment device | |
| JP2580872Y2 (en) | Electronic musical instrument | |
| JPH04274297A (en) | automatic performance device | |
| JP3620321B2 (en) | Automatic accompaniment device | |
| JP2513014B2 (en) | Electronic musical instrument automatic performance device | |
| JP2636393B2 (en) | Automatic performance device | |
| JP2660457B2 (en) | Automatic performance device | |
| JP2694788B2 (en) | Electronic musical instrument | |
| JP2602453B2 (en) | Electronic musical instrument | |
| JP3543159B2 (en) | Automatic accompaniment device | |
| JP2576296B2 (en) | Automatic accompaniment device for electronic musical instruments | |
| JPH04186299A (en) | Electronic musical instrument | |
| JPH06161450A (en) | Automatic accompaniment device | |
| JP3543161B2 (en) | Code data output device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19970408 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090509 Year of fee payment: 12 |
|
| LAPS | Cancellation because of no payment of annual fees |