JP2988371B2 - Automatic accompaniment device - Google Patents

Automatic accompaniment device

Info

Publication number
JP2988371B2
JP2988371B2 JP8112852A JP11285296A JP2988371B2 JP 2988371 B2 JP2988371 B2 JP 2988371B2 JP 8112852 A JP8112852 A JP 8112852A JP 11285296 A JP11285296 A JP 11285296A JP 2988371 B2 JP2988371 B2 JP 2988371B2
Authority
JP
Japan
Prior art keywords
pattern
data
pitch
chord
bass
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
Application number
JP8112852A
Other languages
Japanese (ja)
Other versions
JPH08278785A (en
Inventor
義久 伊藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP8112852A priority Critical patent/JP2988371B2/en
Publication of JPH08278785A publication Critical patent/JPH08278785A/en
Application granted granted Critical
Publication of JP2988371B2 publication Critical patent/JP2988371B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

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

【0001】[0001]

【発明の属する技術分野】この発明は、発音すべき和音
を指定するコードデータに基づいて自動伴奏を行う自動
伴奏装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an automatic accompaniment apparatus for performing automatic accompaniment based on chord data specifying a chord to be pronounced.

【0002】[0002]

【従来の技術】コードシーケンサと呼ばれる自動伴奏装
置が知られている。このようなコードシーケンサにおい
ては、曲の進行順にコードデータ(発音すべき和音を指
定するデータ)を記憶させておき、再生時にはこれを順
次読み出し、読み出したコードデータに基づいて自動伴
奏を行うようにしている。
2. Description of the Related Art An automatic accompaniment device called a chord sequencer is known. In such a chord sequencer, chord data (data specifying a chord to be pronounced) is stored in the order of music progression, and the chord data is sequentially read during reproduction, and automatic accompaniment is performed based on the read chord data. ing.

【0003】また、自動伴奏は、予め記憶された基本パ
ターンの各音の音高を、読み出されたコードデータに応
じ、そのコードに合うように変換することによってなさ
れる。ここで、基本パターンには、コードバッキングパ
ターン(和音伴奏パターン)やベースパターン(ベース
演奏パターン)がある。
[0003] Automatic accompaniment is performed by converting the pitch of each tone of a basic pattern stored in advance according to the read chord data so as to match the chord. Here, the basic patterns include a chord backing pattern (chord accompaniment pattern) and a base pattern (bass performance pattern).

【0004】詳しくは、コードデータとして、ルート
(根音)とタイプ(コード種類)の各データ、さらには
オンベースデータ(通常とは異なる特別なベース音を指
定するデータ)を記憶するようになっており、基本パタ
ーンを構成している各音の音高のうち必要のある音につ
いてはタイプデータに対応する音高に移動し、その後
に、ルートデータに対応する分だけ上下にシフトして発
音するようにしている。ここで、ベースパターンは、オ
ンベースを指定しない場合は、通常のベースパターンに
従ってベース音を発生させ、オンベースを指定したとき
はオンベース専用のベースパターンでベース音を発生さ
せるようにしている。
[0004] More specifically, as chord data, root (root note) and type (chord type) data, and on-base data (data for specifying a special bass tone different from usual) are stored. Of the pitches of the notes that make up the basic pattern, the required note is moved to the pitch corresponding to the type data, and then shifted up and down by the amount corresponding to the root data. I am trying to do it. Here, when the on-base is not specified, the base sound is generated according to the normal base pattern, and when the on-base is specified, the base sound is generated in the on-bass-only base pattern.

【0005】また、基本パターンは、通常、メジャセブ
ンス(maj7)、セブンス(7)、マイナーセブンス
(m7)等のコードタイプになるように作成されてお
り、この基本パターンを構成する各音を、ノート変換テ
ーブルというテーブルを用いて変換し、これによって、
指定されたコードタイプに合致するような音高配列を作
成している。
[0005] The basic pattern is usually created so as to be a chord type such as major seventh (maj7), seventh (7), minor seventh (m7), etc. Conversion is performed using a table called a note conversion table.
A pitch array that matches the specified chord type is created.

【0006】また、ユーザーに基本パターンの作成を開
放し、より変化に富んだ自動伴奏を行えるようにしたも
のもある(例えば、特開昭61−292690)。この
タイプの自動伴奏装置にあっては、音楽的な不都合を解
消するために、以下のような処置を行っている。例え
ば、基本パターンをCmaj7としてユーザーがパター
ンを作成し、コードとして同じCmaj7を指定する場
合、通常は何の修正もなしに基本パターンをそのまま用
いればよいが、仮に、ユーザーが作成したパターン内に
F音が含まれていたとすると、その音はスケールの中に
ない音であるため、非常に響きが悪くなってしまうおそ
れがある。そこで、このような不都合をなくすために、
基本パターンと同一のコードパターンが指定された場合
でも、音楽的に不具合が生じる場合は、基本パターンの
音を変換するように、ノート変換テーブルが作成されて
いる。上述の例で言えば、基本パターンのF音は、ノー
ト変換テーブルによって他の音に変換される。
There is also a technique in which the creation of a basic pattern is released to the user so that a more varied automatic accompaniment can be performed (for example, Japanese Patent Application Laid-Open No. 61-292690). In this type of automatic accompaniment apparatus, the following measures are taken in order to eliminate musical inconvenience. For example, when the user creates a pattern using the basic pattern as Cmaj7 and designates the same Cmaj7 as the code, the basic pattern may be used as it is without any modification. If a sound is included, the sound is not included in the scale, and thus the sound may be very poor. So, to eliminate such inconvenience,
Even if the same chord pattern as the basic pattern is specified, a note conversion table is created so as to convert the sound of the basic pattern if a musical defect occurs. In the above example, the F sound of the basic pattern is converted to another sound by the note conversion table.

【0007】このように、指定するコードが基本パター
ンのコードと同じコードであっても、ノート変換テーブ
ルは何らかの音を必ず変換するようにして、自動伴奏装
置の仕組みを知らないユーザにも音楽的に不都合のない
ような自動伴奏が行えるようにしてしている。
As described above, even if the designated chord is the same as the chord of the basic pattern, the note conversion table always converts a certain sound so that a user who does not know the mechanism of the automatic accompaniment apparatus can play a musical note. The automatic accompaniment can be performed without any inconvenience.

【0008】[0008]

【0009】[0009]

【発明が解決しようとする課題】 ところで、上述した従
来の自動伴奏装置にあっては、 普通のオンベースコード
ではなく、代理コードとしてオンベースコードが指定さ
れていることがある。すなわち、ユーザの中にはオンベ
ースの形式でコードを表記するが、実際には異なるコー
ドタイプのつもりで用いる場合があるのである。例え
ば、Cのキー(ハ長調)においてよく用いられるDm7
/G(Dm7オンG:/はオンの意)というオンベース
コードは、実際にはG7sus4の代理コードである。
この点について説明する。まず、Dm7/Gは、Dm7
の構成音レ、ファ、ラ、ドのベース音をソにするのだか
ら、その構成音はソ、レ、ファ、ラ、ドになる。一方、
G7sus4の構成音は、G7の構成音ソ、シ、レ、フ
ァのシの音をサスペンディドフォースの音、すなわちド
に代えるのだから、その構成音はソ、ド、レ、ファにな
る。このG7sus4に装飾音ラが加わったとすると、
その構成音はDm7/Gと全く同一になる。すなわち、
Dm7/Gというコードは、Cのキーにおいては、装飾
音としてラを加えてあるが、和音の響き全体としてはG
7sus4に非常に近く、和音進行理論上の和音機能は
G7sus4と同一であって、G7sus4よりやや華
やかな感じのする和音としてG7sus4のコードの代
理として使用できる訳である。
The object of the invention is to be Solved by the way, follow the above-mentioned
In a conventional automatic accompaniment device, an on-base code may be designated as a substitute code instead of a normal on-base code. That is, some users write codes in an on-base format, but in practice, they may use different code types. For example, Dm7 often used in C key (C major)
The on-base code of / G (Dm7 on G: / means on) is actually a proxy code of G7sus4.
This will be described. First, Dm7 / G is calculated as Dm7
Since the base sound of the constituent sounds 、, フ ァ, ラ, 、, ド is made ソ, the constituent sounds become ソ, レ, フ ァ, ラ, ド. on the other hand,
The constituent sound of G7sus4 replaces the sound of the constituent sound of G7, S, S, R, and F, with the sound of the suspended force, that is, C, so the constituent sounds are S, D, R, and F. Assuming that G7sus4 has a decoration sound,
Its constituent sound is exactly the same as Dm7 / G. That is,
In the chord Dm7 / G, in the key of C, a la is added as a decorative sound, but as a whole, the sound of the chord is G
It is very similar to G7sus4, and has the same chord function as G7sus4 in chord progression theory, and can be used as a substitute for the G7sus4 chord as a chord that feels slightly more gorgeous than G7sus4.

【0010】したがって、この場合において、Dm7/
Gを一般のオンベースコードと同様にノート変換処理を
行うと、ユーザの意図に沿わないという問題が生じてし
まう。なお、このようなオンベース表記をする代理コー
ドとしては、G7sus4の代理であるF/G、F6の
代理であるDm7/Fなどが知られている。
Therefore, in this case, Dm7 /
If G is subjected to note conversion processing in the same manner as general on-base chords, a problem arises that does not meet the user's intention. Note that F / G as a substitute for G7sus4, Dm7 / F as a substitute for F6, and the like are known as such substitute codes for on-base notation.

【0011】[0011]

【0012】この発明は、上述した事情に鑑みてなされ
たもので、その目的とするところは、オンベースの表記
であっても、特定のものについては、代理コードとして
処理することができ、これにより、ユーザーの意図に沿
った自動伴奏を行うことができる自動伴奏装置を提供す
ることある。
The present invention has been made in view of the above circumstances.
Although it is intended for on-base notation, certain items can be processed as surrogate chords, so that automatic accompaniment according to the user's intention can be performed. It is an object of the present invention to provide an automatic accompaniment device capable of performing such operations.

【0013】[0013]

【課題を解決するための手段】上記課題を解決するため
に、この発明にあっては、和音のルート、タイプおよび
オンベースを指示するコード指示手段と、音高を示す音
高データによって構成された和音演奏パターンおよびベ
ース演奏パターンを記憶するパターン記憶手段と、前記
パターン記憶手段から和音およびベースの各演奏パター
ンの音高データを読み出すパターン読出手段と、前記和
音のタイプ毎、および、前記ルートとタイプとオンベー
スについて特定の関係が成り立つ時の当該特定の関係に
対応して、音名に応じて音高を変換する変換ルールを記
憶した変換ルール記憶手段、前記パターン読出手段に
よって読み出された和音演奏パターンの音高データに対
し、前記コード指示手段が指示したタイプに応じた前記
変換ルールによって音高修正を行うとともに、ルートに
応じた音程の音高変換を行うノート変換手段と、前記コ
ード指定手段によって指定されたルートとタイプとオン
ベースとが特定の関係にあるか否かを判断する判断手段
と、前記パターン読み出し手段によって読み出されたベ
ース演奏パターンの音高データに対し、前記判断手段の
判断結果に応じて前記変換ルールに従った音高修正およ
びオンベースに応じた音高変換を行うベース音修正手段
と、前記ノート変換手段とベース音修正手段が出力する
音高データに基づいて和音とベースの楽音信号を作成す
る楽音信号作成手段とを具備し、前記ベース音修正手段
は、前記ベース演奏パターンの音高データに対し、前記
判断手段によって、前記コード指定手段により指定され
たルートとタイプとオンベースについて特定の関係が成
り立たないと判断された時、該オンベースの指示に応じ
た音高変換を行い、前記判断手段によって、前記コード
指定手段により指定されたルートとタイプとオンベース
について特定の関係が成り立つと判断された時、該特定
の関係に応じた前記変換ルールによって音高修正を行う
と共に、該オンベースの指示に応じた音高変換を行うこ
とを特徴とする。
According to the present invention, a chord designating means for designating a root, a type and an on-bass of a chord and pitch data indicating a pitch are provided. chord performance pattern and the base and the pattern storage means performance pattern storing, chords and the base of each playing putter from said pattern storage means
A pattern readout means for reading out of emissions of pitch data, for each type of the chord, and the route and type and Onbe
When a specific relationship is established for
Correspondingly, the conversion rule storing means for storing the conversion rule for converting the pitch in accordance with the pitch name, to pitch data of chord performance pattern read by the pattern reading means, said code indicating means instructs a note conversion means performs a pitch modified by the conversion rule corresponding to the type, performs pitch conversion interval in response to the root, the co
Route, type and on specified by the code specifying means
Judgment means for judging whether or not the base has a specific relationship
And the pattern read by the pattern reading means.
The pitch data of the source performance pattern
The pitch correction and the pitch correction according to the conversion rule
Bass correction means for performing pitch conversion according to bass and on-bass
And a tone signal creating means for creating a chord and a bass tone signal based on the pitch data output by the note converting means and the bass tone correcting means , wherein the bass tone correcting means
Is used for the pitch data of the bass performance pattern.
By the judging means, designated by the code designating means
Route, type and on-base
When it is judged that it does not stand, respond to the on-base instruction
The pitch conversion is performed, and the code
Route, type and on-base specified by specifying means
When it is determined that a specific relationship holds for
Pitch correction by the conversion rule according to the relationship
At the same time, pitch conversion is performed according to the on-base instruction .

【0014】[0014]

【発明の実施の形態】BEST MODE FOR CARRYING OUT THE INVENTION

A:実施形態の構成 以下、図面を参照してこの発明の実施形態について説明
する。図1は、この発明の一実施形態の構成を示すブロ
ック図である。図において、1は装置各部を制御するC
PUであり、2はCPU1で用いられるプログラムが記
憶されたROMである。このROM2内には、制御プロ
グラムの他、自動伴奏の各音の音高や発音タイミングを
指示するパターンデータ(基本パターン)が記憶されて
おり、また、各パターンを構成する各音の音高を指定さ
れたコードタイプに対応するように変換するためのノー
ト変換テーブルが記憶されている。
A: Configuration of Embodiment Hereinafter, an embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention. In the figure, reference numeral 1 denotes a C for controlling each part of the apparatus.
A PU 2 is a ROM in which a program used by the CPU 1 is stored. The ROM 2 stores, in addition to the control program, pattern data (basic pattern) for instructing the pitch and sounding timing of each sound of the automatic accompaniment, and also stores the pitch of each sound constituting each pattern. A note conversion table for converting to correspond to the specified chord type is stored.

【0015】ここで、図2にパターンデータの内容を示
す。図2に示すB,B……は各々データブロックであ
り、1つのブロック内にコードバッキングパターン、ベ
ースパターンおよびリズムパターンの3つのパターンデ
ータが記憶されており、各パターンはそれぞれ1小節分
のデータとなっている。そして、このような内容のデー
タブロックが図示のように複数設けられている。
FIG. 2 shows the contents of the pattern data. .. Shown in FIG. 2 are data blocks, each of which stores three pattern data of a chord backing pattern, a base pattern, and a rhythm pattern, and each pattern is data of one bar. It has become. A plurality of data blocks having such contents are provided as shown.

【0016】コードバッキングパターンは、和音の自動
伴奏に用いられるパターンであり、図示のようにタイミ
ングデータとノートイベントとから構成されている。ノ
ートイベントは、ノートナンバ(音高)、ベロシティ
(音の強さ)およびゲートタイム(音の長さ)を示すデ
ータから構成されている。タイミングデータは、小節内
における発音タイミングを示すデータである。ノートナ
ンバとタイミングデータとが組になって、一つの音の発
音が指示される。ただし、同じタイミングで同時に2以
上の発音が行われる場合は、各音のタイミングデータは
共用される(同図部分a参照)。ベースパターンは、ベ
ース音の演奏パターンを指示するもので、データの構成
はコードバッキングパターンと同様である。リズムパタ
ーンは、リズム音(打楽器音)の演奏パターンを指示す
るもので、データの構成は上記と同様である。
The chord backing pattern is a pattern used for automatic accompaniment of chords, and is composed of timing data and note events as shown in the figure. The note event is composed of data indicating a note number (pitch), velocity (sound intensity), and gate time (sound length). The timing data is data indicating a sound generation timing in a bar. A note number and timing data form a pair, and an instruction to generate one sound is issued. However, when two or more sounds are generated simultaneously at the same timing, the timing data of each sound is shared (refer to part a in the figure). The bass pattern indicates a performance pattern of the bass sound, and the data configuration is the same as the chord backing pattern. The rhythm pattern indicates a performance pattern of a rhythm sound (percussion instrument sound), and the data configuration is the same as described above.

【0017】次に、図3は、ノート変換テーブルの構成
を示す概念図である。このノート変換テーブルは、コー
ドバッキングパターンおよびベースパターンから読み出
されたノートナンバ(音高)のうち所定のものを変換す
るためのテーブルである。ノート変換テーブルは、図3
に示すように、各コードタイプについて、変換すべき音
名と、その音の移動量を指示する。移動量は、1が半音
上昇、2が全音上昇を示し、−1、−2が各々半音下降
および全音下降を示す。また、0は変換を行わないこと
を示す。
Next, FIG. 3 is a conceptual diagram showing the configuration of the note conversion table. This note conversion table is a table for converting a predetermined note number (pitch) read out from the chord backing pattern and the base pattern. The note conversion table is shown in FIG.
As shown in (1), for each chord type, a note name to be converted and a movement amount of the note are indicated. As for the movement amount, 1 indicates a semitone rise, 2 indicates a whole tone rise, and -1 and -2 indicate a semitone fall and a whole tone fall, respectively. Further, 0 indicates that no conversion is performed.

【0018】図2に示す各パターンデータのうち、例え
ば、maj7に対するノート変換テーブルの内容は、図
3に示すように基本的に各音について0である。ただ
し、F音については、通常は音楽的に不自然であるた
め、半音下げてE音に変換するようにしている。
In the pattern data shown in FIG. 2, for example, the contents of the note conversion table for maj7 are basically 0 for each sound as shown in FIG. However, the sound F is usually musically unnatural, so that it is converted to the sound E by lowering the pitch by a semitone.

【0019】また、ノート変換テーブルのコードパター
ンIIm7/VおよびIV/Vは、オンベースコードを
示す。仮に、キーをC(ハ長調)とすれば、前者はDm
7/Gであり、後者はF/Gである。これらのオンベー
スコードは、この実施形態の場合は、同じ7sus4
(キーがCの場合は、G7sus4)の代理コードとし
て処理しており、このため、これらのコードタイプにつ
いてのテーブルの内容は7sus4の内容と等しくなっ
ている。
The code patterns IIm7 / V and IV / V in the note conversion table indicate on-base codes. If the key is C (C major), the former is Dm
7 / G, the latter being F / G. These on-base codes are the same 7sus4 for this embodiment.
(If the key is C, it is processed as a proxy code of G7sus4.) Therefore, the contents of the table for these code types are equal to the contents of 7sus4.

【0020】次に、図1に示す3はRAMであり、後述
する処理に用いられる各種レジスタが設定されるととも
に、パターントラック用エリア、コードトラック用エリ
アを有し、また、ユーザー作成によるパターンデータも
記憶されている。このRAM3に記憶されるパターンデ
ータは、前述した図2に示すものと同様である。すなわ
ち、パターンデータは、工場出荷時に予めROM2に記
憶されるものと、ユーザーの登録によりRAM3に記憶
されるものとがある。
Next, reference numeral 3 shown in FIG. 1 denotes a RAM, in which various registers used for processing to be described later are set, an area for a pattern track and an area for a code track are provided. Is also stored. The pattern data stored in the RAM 3 is the same as that shown in FIG. That is, the pattern data may be stored in the ROM 2 before shipment from the factory, or may be stored in the RAM 3 upon user registration.

【0021】コードトラックは、図4に示すようになっ
ており、曲の進行にしたがったコードをユーザが登録す
るトラックである。このコードトラックは、基本的には
コードデータとデュレーションデータの組み合わせで構
成される(図4の部分b,d参照)。コードデータは、
ルートとコードタイプを各々指定するルートデータとタ
イプデータとから構成されている。タイプデータは、基
本的にはmaj7、m7、M等のコードの種類を示す
が、この実施形態においては、所定の場合には「Thr
u(スルー)」という特殊なタイプを設定するようにし
ている(詳細は後述)。また、デュレーションは、次の
コードチェンジまでの間隔(拍数)を指定するデータで
ある。
The chord track, as shown in FIG. 4, is a track in which the user registers a chord according to the progress of the music. This code track is basically composed of a combination of code data and duration data (see parts b and d in FIG. 4). The code data is
It is composed of route data and type data designating a route and a code type, respectively. The type data basically indicates the type of code such as maj7, m7, M, etc. In this embodiment, in a predetermined case, "Thr" is used.
A special type “u (through)” is set (details will be described later). The duration is data for specifying an interval (number of beats) until the next chord change.

【0022】オンベースコードを指定する場合は、図4
の部分cに示すように、コードデータの次にオンベース
データを挿入する。オンベースデータは、オンベースを
指定するとともに、そのベース音の音名(C、C#、…
…、B)を指定する。また、曲の最後の部分には、終了
を示すエンドデータが書き込まれる(図4部分e参
照)。
When specifying the on-base code, FIG.
As shown in part c, on-base data is inserted after the code data. The on-bass data specifies the on-bass and sounds names (C, C #,...) Of the bass sounds.
..., B). In the last part of the music, end data indicating the end is written (see part e in FIG. 4).

【0023】次に、パターントラックについて図5を参
照して説明する。パターントラックは、同図に示すよう
に、パターンナンバとメジャインターバルの組み合わせ
によって構成されている。ここで、パターンナンバは、
前述したパターンデータのいずれかを指定するデータで
ある。すなわち、パターンデータは、ブロックB,B…
…毎にナンバーが設定されており、このナンバーがパタ
ーントラックのパターンナンバによって指定されるよう
になっている。
Next, the pattern track will be described with reference to FIG. The pattern track is composed of a combination of a pattern number and a major interval, as shown in FIG. Here, the pattern number is
This data specifies any of the above-described pattern data. That is, the pattern data includes blocks B, B,.
A number is set for each..., And the number is designated by the pattern number of the pattern track.

【0024】メジャインターバルは、パターンがチェン
ジされるまでの間隔(小節数)を示すデータである。し
たがって、例えば、1小節毎にパターンが変わる場合
は、パターンチェンジの値は、常に1となる。なお、上
記のことからも分かるように、この実施形態におけるパ
ターン切り替えの最小単位は、1小節である。このパタ
ーントラックにおいても、前述したコードトラックと同
様に、曲の最後の部分にはエンドデータが記憶される
(図5参照)。
The measure interval is data indicating an interval (number of measures) until a pattern is changed. Therefore, for example, when the pattern changes every bar, the value of the pattern change is always 1. As can be seen from the above, the minimum unit of pattern switching in this embodiment is one bar. In this pattern track, the end data is stored in the last part of the music piece, as in the case of the code track described above (see FIG. 5).

【0025】次に、図1に示す5は各種スイッチから構
成されるスイッチ部であり、CPU1に対する各種命令
の入力や、RAM3内の各種データ、すなわち、パター
ンデータ、パターントラックおよびコードトラック等の
データの入力を行う。スイッチ部5の各スイッチの操作
状況は、スイッチ検出回路6によって検出され、CPU
1に供給される。また、スイッチ部5の操作により、後
述するモード1の設定/解除がなされるようになってい
る。
Reference numeral 5 shown in FIG. 1 denotes a switch section composed of various switches, which inputs various commands to the CPU 1 and various data in the RAM 3, ie, data such as pattern data, pattern tracks and code tracks. Input. The operation state of each switch of the switch unit 5 is detected by a switch detection circuit 6 and the CPU
1 is supplied. The mode 1 described later is set / released by operating the switch unit 5.

【0026】次に、7は表示回路であり、CPU1の制
御の下に各種表示を行う回路である。タイマ8は、自動
伴奏の際のテンポを計時するもので、4分音符当たり2
4個のテンポクロックを発生する。このテンポクロック
は、CPU1に割り込み信号として供給されるようにな
っている。10は音源回路であり、CPU1の制御のも
とに、指示された楽音信号を作成する。また、音源回路
10内には、複数の発音チャンネルが設けられており、
複数音の同時発音が可能になっている。この音源回路1
0によって作成された楽音信号は、サウンドシステムS
Sに供給され、楽音として発音されるようになってい
る。
Reference numeral 7 denotes a display circuit for performing various displays under the control of the CPU 1. The timer 8 measures the tempo during automatic accompaniment.
Generate four tempo clocks. This tempo clock is supplied to the CPU 1 as an interrupt signal. Reference numeral 10 denotes a tone generator circuit which generates a designated tone signal under the control of the CPU 1. Further, a plurality of sound channels are provided in the tone generator circuit 10.
Simultaneous pronunciation of multiple sounds is possible. This tone generator circuit 1
0 generated by the sound system S
It is supplied to S and is to be pronounced as a musical tone.

【0027】B:実施形態の動作 (1)メインルーチン 図6は、この実施形態における自動伴奏処理のメインル
ーチンを示すフローチャートである。なお、以下の動作
説明においては、4/4拍子の場合を例にとる。まず、
図6に示すステップSPa1においては、レジスタCL
Kの値を「0」にするとともに、レジスタDUR,MI
NTの値を「1」にする。レジスタCLKは、テンポク
ロックをカウントするレジスタ、レジスタDURはコー
ドトラック(図4参照)のデュレーションが書き込まれ
るレジスタ、およびレジスタMINTはパターントラッ
ク(図5参照)のメジャインターバルが書き込まれるレ
ジスタである。
B: Operation of Embodiment (1) Main Routine FIG. 6 is a flowchart showing a main routine of the automatic accompaniment process in this embodiment. In the following description of the operation, the case of 4/4 time is taken as an example. First,
In step SPa1 shown in FIG.
The value of K is set to “0” and the registers DUR, MI
The value of NT is set to “1”. The register CLK is a register for counting a tempo clock, the register DUR is a register for writing a duration of a code track (see FIG. 4), and a register MINT is a register for writing a major interval of a pattern track (see FIG. 5).

【0028】次に、処理タイム1、処理タイム2、処理
タイム3の各指示の有無を判断し、その判断結果に応じ
た処理を行う。ここで、各処理タイムは、タイマ8によ
るインタラプト信号に応じて、図7に示すフローチャー
トに従って指示されるものである。すなわち、処理タイ
ム3は図7に示すステップSPb1によってタイマイン
タラプトがある毎に指示され、処理タイム1はステップ
SPb2によって24回のインタラプトに1回指示さ
れ、また、処理タイム2はステップSPb3によって9
6回のインタラプトに1回指示される。すなわち、処理
タイム3は、割込処理の最小分解能であるテンポクロッ
クのタイミング毎に指示され、処理タイム1は1拍(2
4クロック)毎に指示され、また、処理タイム3は1小
節(96クロック)毎に指示される。
Next, the presence or absence of each of the processing time 1, processing time 2 and processing time 3 instructions is determined, and processing according to the determination result is performed. Here, each processing time is instructed in accordance with the interrupt signal from the timer 8 in accordance with the flowchart shown in FIG. That is, the processing time 3 is instructed every time there is a timer interrupt in step SPb1 shown in FIG. 7, the processing time 1 is instructed once in 24 interrupts in step SPb2, and the processing time 2 is instructed by 9 in step SPb3.
You will be instructed once every six interrupts. That is, the processing time 3 is instructed at each timing of the tempo clock which is the minimum resolution of the interrupt processing, and the processing time 1 is one beat (2 beats).
4 clocks), and the processing time 3 is specified every bar (96 clocks).

【0029】さて、図6のステップSPa2で「YE
S」と判定されれば、ステップSPa3のコードトラッ
ク処理が行われ、ステップSPa4で「YES」と判定
されれば、ステップSPa5のパターントラック処理が
行われ、また、ステップSPa6で「YES」と判定さ
れれば、ステップSPa7のパターンデータ読出処理が
行われる。すなわち、コードトラック処理、パターント
ラック処理およびパターンデータ読出処理は、各々1拍
毎、1小節毎、およびテンポクロック毎に行われる。
Now, in step SPa2 of FIG. 6, "YE
If "S" is determined, the code track processing of step SPa3 is performed. If "YES" is determined in step SPa4, the pattern track processing of step SPa5 is performed, and "YES" is determined in step SPa6. Then, the pattern data reading process of step SPa7 is performed. That is, the code track process, the pattern track process, and the pattern data read process are performed for each beat, for each bar, and for each tempo clock.

【0030】パターントラック処理は、上述のように1
小節に1回起動される処理であり、正確には各小節の開
始タイミングにおいて起動される処理である。また、コ
ードトラック処理も各拍の開始タイミングにおいて起動
される処理である。したがって、曲の開始タイミングに
おいては、処理タイム1〜3の全てが指示され、処理は
ステップSPa2〜ステップSPa7を順次行うことに
なる。
As described above, the pattern track processing is performed by 1
This is a process started once for each bar, more precisely, a process started at the start timing of each bar. The chord track process is also started at the start timing of each beat. Therefore, at the music start timing, all of the processing times 1 to 3 are instructed, and the processing is performed in order of steps SPa2 to SPa7.

【0031】(2)パターントラック処理 次に、パターントラック処理について説明する。まず、
図8に示すステップSPc1において、レジスタMIN
Tの値が「1」か否かが判定される。初期状態において
は、レジスタMINTには、「1」が設定されているか
ら(ステップSPa1参照)、この判定は「YES」と
なり、ステップSPc2に至る。ステップSPc2にお
いては、図5に示すパターントラックの最初のパターン
ナンバーデータを読み出し、その値をレジスタPTNに
書き込む。次に、ステップSPc3の初期読出処理を行
う。
(2) Pattern Track Processing Next, pattern track processing will be described. First,
In step SPc1 shown in FIG.
It is determined whether the value of T is “1”. In the initial state, since “1” is set in the register MINT (see step SPa1), this determination is “YES”, and the process proceeds to step SPc2. In step SPc2, the first pattern number data of the pattern track shown in FIG. 5 is read, and the value is written to the register PTN. Next, an initial reading process in step SPc3 is performed.

【0032】初期読出処理は、図9に示すステップSP
d1〜ステップSPd3の各処理によって構成されてい
る。ステップSPd1では、レジスタPTNで示される
パターンデータの各先頭アドレスを読出ポインタにセッ
トする。すなわち、図2に示すパターンデータのうちパ
ターンナンバによって示されるパターンに対応するブロ
ックB内のコードバッキングパターン、ベースパターン
およびリズムパターンの各先頭アドレスを読出ポインタ
にセットする。
The initial reading process is performed in step SP shown in FIG.
It is constituted by each processing of d1 to step SPd3. In step SPd1, each head address of the pattern data indicated by the register PTN is set in the read pointer. That is, among the pattern data shown in FIG. 2, the head addresses of the code backing pattern, base pattern and rhythm pattern in block B corresponding to the pattern indicated by the pattern number are set in the read pointer.

【0033】次に、ステップSP2に進み、コードバ
ッキングパターン、ベースパターンおよびリズムパター
ンの各先頭イミングデータを読み出して、レジスタT
IME、BTIMEおよびRTIMEに格納する。
[0033] Then, the program proceeds to step SP d 2, chord backing pattern, reads the respective top Thailand timing data of a base pattern and rhythm pattern, the register T
Store in IME, BTIME and RTIME.

【0034】そして、ステップSP3に進んで、それ
ぞれの読出ポインタを進め、図8に示すステップSPc
4にリターンする。ステップSPc4においては、ステ
ップSPc2において読み出したパターンナンバデータ
の次のデータを読み出す。このデータは、通常は、図5
からも明かなように、メジャインターバルデータである
が、曲の最終タイミングにおいては、エンドデータとな
る。
Then, the process proceeds to step SP d 3, where each read pointer is advanced, and the process proceeds to step SPc 3 shown in FIG.
Return to 4. In step SPc4, the next data of the pattern number data read in step SPc2 is read. This data is usually
As is clear from the above, the data is the measure interval data, but becomes the end data at the final timing of the music.

【0035】メジャインターバルデータであれば、ステ
ップSPc5の判定が「NO」となり、ステップSPc
6に進んで、そのメジャインターバルデータをレジスタ
MINTに格納する。そして、パターントラックの読出
しポインタを進め(ステップSPc7)、メインルーチ
ンへリターンする。ステップSPc5の判定が「YE
S」の場合は、ステップSPc8に進んで、レジスタE
NDの内容を「1」にしてリターンする。
If it is the measure interval data, the determination in step SPc5 is "NO", and the
The process proceeds to step S6, where the measured interval data is stored in the register MINT. Then, the read pointer of the pattern track is advanced (step SPc7), and the process returns to the main routine. The determination in step SPc5 is “YE
S ", the process proceeds to step SPc8 where the register E
The content of the ND is set to “1” and the process returns.

【0036】一方、ステップSPc1の判定が「NO」
であれば、ステップSPc10に進んで、レジスタMI
NTの値を1デクリメントし、メインルーチンにリター
ンする。以後、このサブルーチンが起動されても、ステ
ップSPc1において「YES」と判定されるまで、ス
テップSPc10→リターンという処理が行われ、これ
により、レジスタMINTの内容が順次デクリメントさ
れていく。そして、レジスタMINTの内容が「1」に
なった後に、パターントラック処理が起動されると、前
述したステップSP2c〜ステップSPc7の処理が行
われる。
On the other hand, the determination in step SPc1 is "NO"
If so, the process proceeds to step SPc10, where the register MI
The value of NT is decremented by 1, and the process returns to the main routine. Thereafter, even if this subroutine is started, the process of step SPc10 → return is performed until “YES” is determined in step SPc1, whereby the contents of the register MINT are sequentially decremented. Then, when the pattern track processing is started after the content of the register MINT becomes “1”, the processing of the above-mentioned steps SP2c to SPc7 is performed.

【0037】ところで、パターントラック処理が起動さ
れた時に、レジスタMINTの内容が「1」になってい
るということは、メジャインターバルデータで設定した
次のパターンチェンジまでの時間を計時し終えたという
ことである。すなわち、前述したステップSPc1の判
定は、メジャインターバルの計時が終了したか否かの判
定である。
By the way, when the pattern track processing is started, the fact that the content of the register MINT is "1" means that the time until the next pattern change set in the measure interval data has been measured. It is. That is, the determination in step SPc1 described above is a determination as to whether or not the measurement of the measurement interval has ended.

【0038】(3)コードトラック処理 次に、コードトラック処理について、図10および図1
1を参照して説明する。まず、ステップSPe1におい
て、レジスタDURが1か否かが判定される。レジスタ
DURの内容は、初期状態では、ステップSPa1(図
6参照)において「1」に設定されているので、ステッ
プSPe1の判定は「YES」になり、ステップSPe
3に進む。ステップSPe3においては、コードデータ
読み出し処理が行われる。すなわち、図4に示すコード
トラックの最初のコードデータが読み出され、そのルー
トデータがレジスタROOTに、タイプデータがレジス
タTYPEに各々格納される。そして、ステップSPe
4に進み、次のデータの読み出しが行われる。
(3) Code Track Processing Next, code track processing will be described with reference to FIGS.
This will be described with reference to FIG. First, in step SPe1, it is determined whether or not the register DUR is 1. Since the contents of the register DUR are initially set to “1” in step SPa1 (see FIG. 6), the determination in step SPe1 is “YES” and the step SPe
Proceed to 3. In step SPe3, a code data reading process is performed. That is, the first code data of the code track shown in FIG. 4 is read, the root data is stored in the register ROOT, and the type data is stored in the register TYPE. Then, step SPe
Proceeding to 4, the next data is read.

【0039】次のデータとしては、デュレーションデー
タまたはオンベースデータが考えられる。そして、ステ
ップSPe5においては、オンベースコードが読み出さ
れたか否かが判定され、「NO」、すなわち、デュレー
ションデータが読みされた場合には、ステップSPe6
に進んで、デュレーションデータをレジスタDURに格
納する。次いで、ステップSPe7に進み、レジスタB
ASSにオンベースが指示されていないことを示すデー
タ、「オンベースなし」を書き込む。
The next data may be duration data or on-base data. Then, in step SPe5, it is determined whether or not the on-base code has been read. If "NO", that is, if the duration data has been read, step SPe6 is executed.
And the duration data is stored in the register DUR. Next, the process proceeds to step SPe7,
The data indicating that the on-base is not instructed, "no on-base" is written to the ASS.

【0040】一方、ステップSPe5において、「YE
S」と判定された場合は、ステップSPe9に進んで、
レジスタBASSにオンベースデータ(この場合はベー
スの音名)を書き込む。そして、次のデータを読み出す
が、これは必ずデュレーションデータであるので、レジ
スタDURに格納する。次にステップSPe12に進
み、レジスタROOT、TYPE、BASS内のデータ
内容から、これらの関係が、いずれかのキー(調)につ
いてIIm7/VまたはIV/Vの関係を満たすか否か
が判定される。すなわち、Dm7/GまたはF/G(キ
ーC)、Em7/AまたはG/A(キーD)……C#m
7/F#またはE/F#(キーB)のいずれであるかが
判定される。この判定結果が「NO」であれば、ステッ
プSPe8の処理を行う。
On the other hand, in step SPe5, "YE
S ”, the process proceeds to step SPe9,
Write the on-base data (in this case, the bass note name) to the register BASS. Then, the next data is read out, but since this is necessarily duration data, it is stored in the register DUR. Next, the process proceeds to step SPe12, and it is determined from the data contents in the registers ROOT, TYPE, and BASS whether or not the relationship satisfies the relationship of IIm7 / V or IV / V for any key (tone). . That is, Dm7 / G or F / G (key C), Em7 / A or G / A (key D) ... C # m
7 / F # or E / F # (key B) is determined. If the result of this determination is “NO”, the process of step SPe8 is performed.

【0041】一方、ステップSPe12の判定が「YE
S」の場合は、図11のステップSPe13に進み、レ
ジスタBROOTにレジスタBASS内のベース音名を
転送し、レジスタBTYPEに、コードタイプとしてI
Im7/VまたはIV/Vのいずれか対応する方を転送
する。次に、ステップSPe14に進み、レジスタBA
SSに「オンベースなし」を格納する。なお、IIm7
/V、IV/Vは、コードタイプと度数を含んだ表記で
あるが、これ自体をコードタイプと同様に取り扱い、オ
ンベースとして指示される音名をルートに対応させて用
いる。本実施形態では、図3に示したようにIIm7/
Vの場合もIV/Vの場合も、共に代理の対象であるV
7sus4と同一の変換としているが、音楽的破綻の無
い程度に変更しても良い。
On the other hand, the determination in step SPe12 is “YE
In the case of "S", the process proceeds to step SPe13 in FIG. 11, the base note name in the register BASS is transferred to the register BROOT, and the code type I is set in the register BTYPE.
Transfer the corresponding one of Im7 / V and IV / V. Next, the process proceeds to step SPe14, where the register BA
"No base" is stored in SS. In addition, IIm7
Although / V and IV / V are notations including a chord type and a frequency, they are handled in the same manner as the chord type, and a note name indicated as on-base is used in association with a root. In the present embodiment, as shown in FIG.
In both cases of V and IV / V, V
Although the conversion is the same as that of 7sus4, it may be changed to the extent that there is no musical breakdown.

【0042】ここで、図10のフローについてまとめる
と、Bの場合は、オンベース無しの場合であり、レジス
タBASSの「オンベースなし」が記憶されており、後
述するフローで通常の自動伴奏を行うための識別に用い
ている。また、Aは、オンベース有りで、代理コードと
してのオンベースの場合であり、ベース演奏用のレジス
タBROOT,BTYPEに代理コード用のルートとタ
イプを記憶させて、後述するフローで図3にある代理コ
ード用の変換テーブルを参照して用いるようにし、その
代わりにレジスタBASSに「オンベースなし」を記憶
して通常の自動伴奏と同様の処理を行うものである。ま
た、Cの場合は、オンベース有りで、代理コードとして
のオンベースでない普通のオンベースの場合であり、レ
ジスタBASSに「オンベースあり」が記憶されていお
り、後述するフローで普通のオンベース伴奏の識別に用
いるものである。次に、図11に進み、Bの場合、普通
の伴奏を行うため、ステップSPe8に進んでベース演
奏用のレジスタBROOTおよびBTYPEにレジスタ
ROOT内のルートデータおよびレジスタTYPE内の
タイプデータを各々転送する。
Here, the flow of FIG. 10 is summarized as follows. In the case of B, there is no on-base, and "no on-base" in the register BASS is stored. It is used for identification to perform. A indicates the case where there is an on-base and the on-base is used as a substitute chord. The route and the type for the substitute chord are stored in the base performance registers BROOT and BTYPE, and FIG. The conversion table for the substitute code is used by referring to it. Instead, "no bass" is stored in the register BASS and the same processing as that of the normal automatic accompaniment is performed. In the case of C, there is an on-base, and it is a normal on-base that is not an on-base as a substitute code, and “on-base is present” is stored in the register BASS. It is used for identification of accompaniment. Next, proceeding to FIG. 11, in the case of B, in order to perform ordinary accompaniment, proceed to step SPe8 to transfer the root data in the register ROOT and the type data in the register TYPE to the registers BROOT and BTYPE for bass performance, respectively. .

【0043】ステップSPe15においてモードが
「1」に設定されているかどうかを判定する。ステップ
SPe15の判定が「YES」の場合は、ステップSP
e16に進んで、コードバッキング用のレジスタROO
TおよびTYPEに、ベース用のレジスタBROOTお
よびBTYPEの内容を各々転送する。
At step SPe15, it is determined whether the mode is set to "1". If the determination in step SPe15 is “YES”, the process proceeds to step SPe15.
Proceeding to e16, register ROO for code backing
The contents of the base registers BROOT and BTYPE are transferred to T and TYPE, respectively.

【0044】ステップSPe15で「YES」と判定さ
れてステップSPe16の処理がなされると、コードバ
ッキング用のルートとコードタイプも代理コードに合わ
せた特殊な設定となる。一方、ステップSPe15で
「NO」と判定された場合は、コードバッキングについ
ては特殊な設定は行わず、ステップSPe13における
ベースについての特殊設定だけが行われる。なお、この
モードは前述のスイッチ部5によって設定が切り換えら
れる。ステップSPe15で「NO」と判定された場
合、および前述したステップSPe8あるいはステップ
SPe16の処理の後は、ステップSPe17に進み、
コードトラックの読み出しポインタを1進めてメインル
ーチンにリターンする。
If "YES" is determined in the step SPe15 and the processing in the step SPe16 is performed, the code backing route and the code type are also specially set according to the proxy code. On the other hand, if “NO” is determined in step SPe15, no special setting is performed for the code backing, and only the special setting for the base is performed in step SPe13. The setting of this mode is switched by the switch unit 5 described above. If "NO" is determined in the step SPe15, and after the processing of the step SPe8 or the step SPe16 described above, the process proceeds to a step SPe17,
The read pointer of the code track is advanced by one and the process returns to the main routine.

【0045】さて、ステップSPe1で「NO」の場合
は、以上の処理を行わず、ステップSPe2においてレ
ジスタDURの内容をデクリメントして直ちにリターン
する。この場合は、以後、このサブルーチンが起動され
ても、ステップSPe1において「YES」と判定され
るまで、ステップSPe2→リターンという処理が行わ
れ、これにより、レジスタDURの内容が順次デクリメ
ントされていく。そして、レジスタDURの内容が
「1」になった後に、コードトラック処理が起動される
と、前述したステップSPe3以降の処理が行われる。
すなわち、ステップSPe1の判定は、デュレーション
データの計時が終了したか否かの判定であり、前述した
ステップSPc1と同様の処理である。
If "NO" in the step SPe1, the above processing is not performed, and in step SPe2, the content of the register DUR is decremented, and the routine immediately returns. In this case, even if this subroutine is started thereafter, the process of step SPe2 → return is performed until “YES” is determined in step SPe1, whereby the contents of the register DUR are sequentially decremented. Then, when the code track processing is started after the content of the register DUR has become "1", the above-described processing after step SPe3 is performed.
That is, the determination in step SPe1 is a determination as to whether or not the timing of the duration data has been completed, and is the same processing as in step SPc1 described above.

【0046】(4)パターンデータ読出し処理 次に、パターンデータ読出し処理について説明する。こ
の処理は、パターントラック処理によって指定されたパ
ターンナンバのパターンデータを読み出し、さらに、読
み出したパターンデータの各音に対し、コードトラック
処理によって指定されたルート、コードタイプおよびオ
ンベースに従って発音すべき音高を決定する処理であ
る。なお、この場合の発音タイミングは、パターンデー
タ中のタイミングデータによって制御される。
(4) Pattern Data Read Processing Next, pattern data read processing will be described. In this process, the pattern data of the pattern number specified by the pattern track process is read, and further, for each sound of the read pattern data, the sound to be generated according to the route, chord type, and on-base specified by the chord track process This is the process for determining the height. Note that the tone generation timing in this case is controlled by timing data in the pattern data.

【0047】始めに、ステップSPf1において、レジ
スタCLKとレジスタCTIMEの値が等しいか否かが
判定される。ここで、レジスタCTIMEの内容は、ス
テップSPd2(図9参照)において読み出されたコー
ドバッキングパターンの先頭ノートデータのタイミング
データである。したがって、ステップSPf1において
「YES」と判定された場合は、そのノートデータの発
音タイミングになったということであり、ステップSP
f2以下の発音処理を行う。
First, in step SPf1, it is determined whether or not the values of the register CLK and the register CTIME are equal. Here, the content of the register CTIME is the timing data of the first note data of the code backing pattern read in step SPd2 (see FIG. 9). Therefore, if "YES" is determined in step SPf1, it means that the note data has been generated, and step SPf1 is reached.
The sound generation processing of f2 or less is performed.

【0048】ステップSPf2においては、コードバッ
キングパターンのノートデータの読み出しが行われる。
次いで、ステップSPf3に進んで、レジスタTYPE
内のコードタイプデータが「Thru」であるか否かが
判定される。この判定が「YES」の場合は、ステップ
SPf4に進んでレジスタROOT内のルートに応じ
て、ノートデータの音高をシフトする。
At step SPf2, note data of the code backing pattern is read.
Next, the process proceeds to step SPf3, where the register TYPE
It is determined whether or not the code type data in is “Thru”. If this determination is "YES", the flow advances to step SPf4 to shift the pitch of the note data according to the route in the register ROOT.

【0049】一方、ステップSPf3で「NO」と判定
された場合は、レジスタTYPE内のコードタイプに対
応したノート変換テーブル(図3参照)の内容を読み出
し、その内容(1,−1……)に応じてノートデータの
音高を修正する(ステップSPf5)。ただし、ノート
変換テーブルの該当するデータの値が「0」のときは、
音高は修正はされない。次に、レジスタROOT内のル
ートに応じてノートデータの音高をシフトした後、ノー
トリミット処理を行う(ステップSPf6,7)。
On the other hand, if "NO" is determined in the step SPf3, the contents of the note conversion table (see FIG. 3) corresponding to the code type in the register TYPE are read, and the contents (1, -1...) (Step SPf5). However, when the value of the corresponding data in the note conversion table is “0”,
The pitch is not modified. Next, after shifting the pitch of the note data according to the route in the register ROOT, a note limit process is performed (steps SPf6, SPf7).

【0050】ここで、ノートリミット処理とは、音高を
所定の範囲に納める処理であり、ノートデータの音高を
シフトした結果、音高が所定の範囲の外に出てしまった
ときは、オクターブの折り返し(音高を1オクターブ下
げる、または上げる処理)を行って強制的に所定範囲内
に納める。ステップSPf7またはステップSPf4の
処理の後は、ステップSPf8に進んで、音源回路10
(図1参照)へノートデータを出力する。これにより、
当該音がサウンドシステムSSから発せられる。
Here, the note limit process is a process for keeping the pitch within a predetermined range. When the pitch of the note data is shifted out of the predetermined range as a result of shifting the pitch of the note data, The octave is turned back (the pitch is lowered or raised by one octave) to forcibly fall within a predetermined range. After the processing in step SPf7 or step SPf4, the process proceeds to step SPf8, where the tone generator circuit 10
(See FIG. 1). This allows
The sound is emitted from the sound system SS.

【0051】以上の処理により、コードタイプが「Th
ru」のときは、読み出されたコードバッキングデータ
は単に音高をシフトされるだけで発音され、また、コー
ドタイプが「Thru」以外のときは、コードトラック
処理によって指定されたコードパターンに応じた修正を
受けた後に、音高シフトされて発音される。
By the above processing, the code type is "Th
When "ru", the read chord backing data is generated simply by shifting the pitch, and when the chord type is other than "Thru", the read chord backing data corresponds to the chord pattern specified by the chord track processing. After the correction, the pitch is shifted and pronounced.

【0052】次に、ステップSPf9に進み、次のデー
タを読み出す。このデータは、通常はタイミングデータ
であるが、同一タイミングに複数音の発音が指示される
ときは、ノートデータである場合がある。そこで、ステ
ップSPf10では、タイミングデータか否かを判定
し、「NO」であれば、再び上述した各処理を実行し、
「YES」であれば図13に示すステップSPf11に
進んで、読み出したタイミングデータをレジスタCTI
MEに格納する。そして、コードバッキングパターンの
読み出しポインタを一つ進め(ステップSPf12)、
ステップSPf13に進む。
Next, the flow advances to step SPf9 to read the next data. This data is usually timing data, but may be note data when multiple sounds are instructed at the same timing. Therefore, in step SPf10, it is determined whether or not the data is timing data. If “NO”, the above-described processing is executed again.
If "YES", the flow advances to step SPf11 shown in FIG. 13 to store the read timing data in the register CTI.
Store in ME. Then, the read pointer of the code backing pattern is advanced by one (step SPf12),
Proceed to step SPf13.

【0053】また、ステップSPf1において「NO」
と判定された場合、すなわち、発音タイミングに達して
いないと判定された場合は、直ちにステップSPf13
に進む。ステップSPf13においては、レジスタCL
KとレジスタBTIMEの内容が等しいか否か、すなわ
ち、ベースパターンの次のノートデータの発音タイミン
グに達したか否かが判定される。
"NO" in step SPf1
Is determined, that is, when it is determined that the sound generation timing has not been reached, step SPf13 is immediately performed.
Proceed to. In step SPf13, the register CL
It is determined whether or not K and the content of the register BTIME are equal, that is, whether or not the sound generation timing of the next note data of the base pattern has been reached.

【0054】この判定が「YES」であれば、ベースパ
ターンのノートデータが読み出され、次いで、レジスタ
BASSの内容が「オンベースなし」か否かが判定され
る(ステップSPf14,15)。この判定が「NO」
であれば、オンベースが指定されている前述の図10の
Cの場合であり、ステップSPf16に進んで、読み出
したノートデータをレジスタBASS内の音高に修正す
る。すなわち、ベースパターンの音高を無視し、オンベ
ースで指定される音名のベース音高に強制的に設定す
る。なお、この音高はベースオンにふさわしい音域内に
あるものにする方がよい。
If the determination is "YES", the note data of the base pattern is read, and then it is determined whether or not the content of the register BASS is "no base" (steps SPf14, SPf15). This judgment is "NO"
If so, this is the case of the above-mentioned C in FIG. 10 in which on-bass is specified, and the process proceeds to step SPf16 to correct the read note data to the pitch in the register BASS. That is, the pitch of the bass pattern is ignored, and the pitch is forcibly set to the bass pitch of the pitch name specified on-bass. It is preferable that this pitch be in a range suitable for bass-on.

【0055】一方、ステップSPf15の判定が「YE
S」の場合は、ステップSPf17においてレジスタB
TYPEの内容が「Thru」であるか否かが判定さ
れ、「YES」であればステップSPf18に進んで、
ノートデータをレジスタBROOT内のルートの音高に
応じてシフトする。また、ステップSPf17において
「NO」と判定された場合は、レジスタBTYPE内の
パターンに応じたノート変換テーブルを用いてノートデ
ータの音高を修正し、その後にレジスタBROOT内の
ルートの音高に応じてシフトし、さらに、ノートリミッ
ト処理を行う(ステップSPf19,20,21)。
On the other hand, the determination in step SPf15 is “YE
S ", the register B is determined in step SPf17.
It is determined whether or not the content of TYPE is “Thru”. If “YES”, the process proceeds to step SPf18,
The note data is shifted according to the pitch of the route in the register BROOT. If "NO" is determined in the step SPf17, the pitch of the note data is corrected using the note conversion table corresponding to the pattern in the register BTYPE, and then the pitch of the root in the register BROOT is corrected. To perform a note limit process (steps SPf19, SP20, SP21).

【0056】ステップSPf16、SPf18またはS
Pf21の処理の後は、ステップSPf22において音
源回路10へノートデータを出力する。これにより、当
該ベース音がサウンドシステムSSから発せられる。
Step SPf16, SPf18 or S
After the processing of Pf21, note data is output to the tone generator circuit 10 in step SPf22. Thereby, the bass sound is emitted from the sound system SS.

【0057】以上の処理により、ベース音については、
オンベースが指示されたときはその指示音名の音高で発
音され、また、タイプが「Thru」のときは、ベース
パターンは単に音高をシフトされるだけで発音される。
さらに、タイプが「Thru」以外のときは、コードト
ラック処理によって指定されたパターンに応じた修正を
受けた後に、音高シフトされて発音される。
With the above processing, for the bass sound,
When the on-bass is instructed, the tone is produced at the pitch of the designated tone name, and when the type is "Thru", the bass pattern is produced simply by shifting the pitch.
Further, when the type is other than "Thru", after being corrected in accordance with the pattern specified by the chord track processing, the tone is shifted and generated.

【0058】次に、ステップSPf23に進み、次のデ
ータを読み出す。このデータは、通常はタイミングデー
タであるが、同一タイミングに複数音の発音が指示され
るときは、ノートデータである場合がある。そこで、ス
テップSPf24では、タイミングデータか否かを判定
し、「NO」であれば、同時複数音発音の場合なので再
び上述した各処理を実行し、「YES」であればステッ
プSPf25以降の処理を行う。次に、ステップSPf
25においては、読み出したタイミングデータをレジス
タBTIMEに格納する。そして、ベースパターンの読
み出しポインタを一つ進め(ステップSPf26)、ス
テップSPf27に進む。
Next, the process proceeds to step SPf23, where the next data is read. This data is usually timing data, but may be note data when multiple sounds are instructed at the same timing. Therefore, in step SPf24, it is determined whether the data is timing data. If "NO", each of the above-described processes is executed again because it is a case of simultaneous multiple tone generation, and if "YES", the processes after step SPf25 are performed. Do. Next, step SPf
At 25, the read timing data is stored in the register BTIME. Then, the read pointer of the base pattern is advanced by one (step SPf26), and the process proceeds to step SPf27.

【0059】また、ステップSPf13において「N
O」と判定された場合、すなわち、発音タイミングに達
していないと判定された場合は、直ちにステップSPf
27に進む。ステップSPf27においては、レジスタ
CLKとレジスタRTIMEの内容が等しいか否か、す
なわち、リズムパターンの次のノートデータの発音タイ
ミングに達したか否かが判定される。
In step SPf13, "N
If "O" is determined, that is, if it is determined that the sound generation timing has not been reached, step SPf is immediately performed.
Proceed to 27. In step SPf27, it is determined whether or not the contents of the register CLK and the register RTIME are equal, that is, whether or not the tone generation timing of the note data next to the rhythm pattern has been reached.

【0060】この判定が「YES」であれば、リズムパ
ターンのノートデータが読みされ、音源回路10へ供給
される(ステップSPf28,29)。そして、次のデ
ータを読み出し、それがタイミングデータが否かを判定
する(ステップSPf30)。タイミングデータでなけ
れば、ノートデータであるので、再び音源回路10へ供
給し、タイミングデータであれば図15に示すステップ
SPf31に進んでレジスタRTIMEにタイミングデ
ータを格納する。そして、リズムパターンの読み出しポ
インタを進めて(ステップSPf32)、ステップSP
f33に進む。一方、ステップSPf27において「N
O」と判定された場合は、まだ、リズムパターンの次の
音の発音タイミングになっていない場合であるので、直
ちに、ステップSPf33に進む。
If this determination is "YES", the note data of the rhythm pattern is read and supplied to the tone generator 10 (steps SPf28, SPf29). Then, the next data is read, and it is determined whether or not the data is timing data (step SPf30). If it is not timing data, since it is note data, it is supplied to the tone generator circuit 10 again. If it is timing data, the process proceeds to step SPf31 shown in FIG. 15 to store the timing data in the register RTIME. Then, the read pointer of the rhythm pattern is advanced (step SPf32), and the step SP
Proceed to f33. On the other hand, in step SPf27, “N
If it is determined to be "O", it means that it is not yet the sounding timing of the sound next to the rhythm pattern, and the process immediately proceeds to step SPf33.

【0061】ステップSPf33においては、レジスタ
CLKの値が95か否か、すなわち、1小節が終了した
か否かが判定される。この判定が「NO」の場合は、レ
ジスタCLKの内容を1インクリメントしてメインルー
チンへリターンする(ステップSPf35)。
At step SPf33, it is determined whether or not the value of the register CLK is 95, that is, whether or not one bar has ended. If this determination is "NO", the content of the register CLK is incremented by 1 and the process returns to the main routine (step SPf35).

【0062】一方、ステップSPf33の判定が「YE
S」の場合は、レジスタENDが「0」であるか否かが
判定される(ステップSPf35)。この判定が「N
O」の場合、すなわち、パターントラック処理において
エンドデータが検出された場合(図8のステップSPc
5,SPc8参照)は、当該曲の自動伴奏の終了タイミ
ングであるので、パターンデータ読出し処理を終了す
る。より詳細に言えば、最後のパターンデータが読み出
されてレジスタENDの内容が「1」になり(ステップ
SPc8)、その後に1小節分の演奏がなされてステッ
プSPf35に至ると、ここで、「NO」と判定され
て、自動伴奏処理が終了する。
On the other hand, the determination in step SPf33 is “YE
In the case of "S", it is determined whether or not the register END is "0" (step SPf35). This judgment is "N
O ", that is, when end data is detected in the pattern track processing (step SPc in FIG. 8).
5, SPc8) is the end timing of the automatic accompaniment of the music, and thus the pattern data reading process ends. More specifically, when the last pattern data is read out and the content of the register END is set to "1" (step SPc8), after one bar of performance is performed and the process reaches step SPf35, " NO is determined, and the automatic accompaniment process ends.

【0063】また、ステップSPf35の判定が「YE
S」の場合は、次の小節のカウントに備え、レジスタC
LKをクリアし、初期読み出し処理を行ってリターンす
る(ステップSPf36.37)。初期読み出し処理
は、前述した図9に示す処理である。パターンが変化し
ていれば新たなパターンの先頭のタイミングデータを読
み出し、変化していなければ前と同じパターンの先頭タ
イミングデータを読み出す。
The determination in step SPf35 is “YE
S ", register C is ready for the next bar count.
LK is cleared, an initial read process is performed, and the process returns (step SPf36.37). The initial reading process is the process shown in FIG. 9 described above. If the pattern has changed, the head timing data of the new pattern is read. If the pattern has not changed, the head timing data of the same pattern as before is read.

【0064】C:変形形態 実施形態では、コードタイプ「Thru(スルー)」
によってノート変換テーブルを用いないようにしたが、
これに代えて、変換値が全て「0」のノート変換テーブ
ルを使用してもよい。また、「Thru」が指定された
場合でも、レジスタROOT内のルートに応じたシフト
処理を行っているが、これも行わないようにしてもよ
い。
C: Modification In the embodiment, the code type “Thru (through)”
Did not use the note conversion table,
Instead, a note conversion table in which the conversion values are all “0” may be used. Further, even when “Thru” is designated, the shift processing according to the route in the register ROOT is performed, but this may not be performed.

【0065】実施形態では、コードタイプに「Thr
u」を設けたが、ルートデータやタイプデータ内に「T
hru ON/OFFフラグ」のようなものを設け、こ
れにより、「Thru」指定の可否を制御するようにし
てもよい。
In the embodiment, the code type is "Thr
u ”is provided, but“ T ”is included in route data and type data.
A "thru ON / OFF flag" may be provided to control whether or not "Thru" is specified.

【0066】特殊な変換をするオンベースコードの種
類は、Dm7/G,F/Gに限らず、Dm7/F(F6
の代理)等、他のコードであってもよい。また、代理コ
ード以外の特殊な変換をしてもよい。
The type of the on-base code for performing the special conversion is not limited to Dm7 / G and F / G, but may be Dm7 / F (F6
Other codes may be used. Also, special conversion other than the proxy code may be performed.

【0067】実施形態では、7sus4のノート変換
テーブルとIIm7/V、IV/Vのテーブルは同じ内
容としているが、異なるものにしてもよい(但し、同じ
系列の変換内容とし、変換後のイメージが7sus4ら
しいものになるようにする)。また、同じ内容にする場
合には、同じ7sus4のテーブルを参照するようにし
てもよい。
In the embodiment, the 7sus4 note conversion table and the IIm7 / V and IV / V tables have the same contents, but may have different contents (however, the conversion contents of the same series are used, and the converted image is not converted). 7sus4). When the same contents are used, the same 7sus4 table may be referred to.

【0068】コードバッキングパターンとベースパタ
ーンとで同じノート変換テーブルを参照するようにした
が、それぞれ専用のテーブルを参照するようにしてもよ
い。
Although the same note conversion table is referred to for the chord backing pattern and the base pattern, it is also possible to refer to the respective dedicated tables.

【0069】オンベース指定データは、必要なところ
にだけ入れておくというデータフォーマットを示した
が、コードデータとオンベースデータを必ずセットにす
るよう構成してもよい。
Although the data format in which the on-base designation data is stored only where necessary is shown, a configuration may be adopted in which code data and on-base data are always set.

【0070】コードを、例えば、鍵盤などでリアルタ
イム指定するようにしてもよい。その場合、「Thr
u」を指定する手段は、リアルタイムにこれを指定する
スイッチ等の操作手段であってもよい。
The chord may be specified in real time, for example, on a keyboard. In that case, "Thr
The means for designating "u" may be an operating means such as a switch for designating this in real time.

【0071】[0071]

【発明の効果】以上説明したように、この発明によれ
ば、コード指定手段により特定のルート、タイプおよび
オンベースの関係が指示された場合、その特定の関係に
対応した変換ルールに基づいてベース演奏パターンの音
高データの音高変換を行うので、上記特定のルート、タ
イプおよびオンベースの関係が、特定の和音とほぼ同一
の構成音を取り、その和音の響きが非常に近くなるもの
を規定して変換ルールを記憶させておくことにより、代
理コードを表現可能な自動伴奏を実現することができ
る。このため、オンベースの表記であっても、特定のも
のについては、代理コードとして処理することができ、
よって、ユーザーの意図に沿った自動伴奏を行うことが
できる。
As described in the foregoing, according to the present invention, if a particular route by the code specifying means, the type and on the base of the relationship is indicated, the base on the basis of the conversion rule corresponding to the particular relationship Performance pattern sound
Since the pitch conversion of high data is performed, the specific root, type, and on-base relationship take a component sound that is almost the same as the specific chord, and define the one that makes the chord sound very close. By storing the rules, an automatic accompaniment capable of expressing a substitute chord can be realized. As a result, certain on-base notations can be processed as surrogate codes,
Therefore, automatic accompaniment according to the user's intention can be performed.

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

【図1】 この発明の一実施形態の構成を示すブロック
図である。
FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention.

【図2】 同実施形態におけるパターンデータの内容を
示すメモリマップである。
FIG. 2 is a memory map showing contents of pattern data in the embodiment.

【図3】 同実施形態において用いられるノート変換テ
ーブルの内容を示す概念図である。
FIG. 3 is a conceptual diagram showing the contents of a note conversion table used in the embodiment.

【図4】 同実施形態におけるコードトラックの内容を
示すメモリマップである。
FIG. 4 is a memory map showing contents of a code track in the embodiment.

【図5】 同実施形態におけるパターントラックの内容
を示すメモリマップである。
FIG. 5 is a memory map showing the contents of a pattern track in the embodiment.

【図6】 同実施形態の動作を説明するためのフローチ
ャートである。
FIG. 6 is a flowchart for explaining the operation of the embodiment.

【図7】 同実施形態の動作を説明するためのフローチ
ャートである。
FIG. 7 is a flowchart for explaining the operation of the embodiment.

【図8】 同実施形態の動作を説明するためのフローチ
ャートである。
FIG. 8 is a flowchart for explaining the operation of the embodiment.

【図9】 同実施形態の動作を説明するためのフローチ
ャートである。
FIG. 9 is a flowchart for explaining the operation of the embodiment.

【図10】 同実施形態の動作を説明するためのフロー
チャートである。
FIG. 10 is a flowchart for explaining the operation of the embodiment.

【図11】 同実施形態の動作を説明するためのフロー
チャートである。
FIG. 11 is a flowchart for explaining the operation of the embodiment.

【図12】 同実施形態の動作を説明するためのフロー
チャートである。
FIG. 12 is a flowchart for explaining the operation of the embodiment.

【図13】 同実施形態の動作を説明するためのフロー
チャートである。
FIG. 13 is a flowchart for explaining the operation of the embodiment.

【図14】 同実施形態の動作を説明するためのフロー
チャートである。
FIG. 14 is a flowchart for explaining the operation of the embodiment.

【図15】 同実施形態の動作を説明するためのフロー
チャートである。
FIG. 15 is a flowchart for explaining the operation of the embodiment.

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

1……CPU、2……ROM、3……RAM、5……ス
イッチ部、6……スイッチ検出回路、7……表示回路、
8……タイマ、10……音源回路、SS……音源回路。
1 ... CPU, 2 ... ROM, 3 ... RAM, 5 ... switch section, 6 ... switch detection circuit, 7 ... display circuit,
8 ... timer, 10 ... sound source circuit, SS ... sound source circuit.

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 和音のルート、タイプおよびオンベース
を指示するコード指示手段と、 音高を示す音高データによって構成された和音演奏パタ
ーンおよびベース演奏パターンを記憶するパターン記憶
手段と、 前記パターン記憶手段から和音およびベースの各演奏パ
ターンの音高データを読み出すパターン読出手段と、 前記和音のタイプ毎、および、前記ルートとタイプとオ
ンベースについて特定の関係が成り立つ時の当該特定の
関係に対応して、音名に応じて音高を変換する変換ルー
ルを記憶した変換ルール記憶手段、 前記パターン読出手段によって読み出された和音演奏パ
ターンの音高データに対し、前記コード指示手段が指示
したタイプに応じた前記変換ルールによって音高修正を
行うとともに、ルートに応じた音程の音高変換を行うノ
ート変換手段と、前記コード指定手段によって指定されたルートとタイプ
とオンベースとが特定の関係にあるか否かを判断する判
断手段と、 前記パターン読み出し手段によって読み出されたベース
演奏パターンの音高データに対し、前記判断手段の判断
結果に応じて前記変換ルールに従った音高修正およびオ
ンベースに応じた音高変換を行うベース音修正手段と、 前記ノート変換手段とベース音修正手段が出力する音高
データに基づいて和音とベースの楽音信号を作成する楽
音信号作成手段とを具備し、前記ベース音修正手段は、前記ベース演奏パターンの音
高データに対し、 前記判断手段によって、前記コード指定手段により指定
されたルートとタイプとオンベースについて特定の関係
が成り立たないと判断された時、該オンベースの指示に
応じた音高変換を行い、 前記判断手段によって、前記コード指定手段により指定
されたルートとタイプとオンベースについて特定の関係
が成り立つと判断された時、該特定の関係に応じた前記
変換ルールによって音高修正を行うと共に、該オンベー
スの指示に応じた音高変換を行う ことを特徴とする自動
伴奏装置。
1. A chord designating means for designating a root, a type, and on-bass of a chord; a pattern storing means for storing a chord performance pattern and a bass performance pattern constituted by pitch data indicating a pitch; Chord and bass performance
And pattern reading means for the turn of the pitch data read back, each type of the chord, and the root and type and tail
When a specific relationship holds for
In response to the relationship, the conversion rule storing means for storing conversion rules <br/> Le converting the pitch in accordance with the pitch name, play chords path read by the pattern readout means
Note conversion means for performing pitch correction on the pitch data of a turn according to the conversion rule according to the type instructed by the code designating means , and performing pitch conversion of a pitch according to a route; and the code designating means Route and type specified by
To determine whether or not there is a specific relationship between
Disconnecting means and the base read by the pattern reading means
The judgment means judges the pitch data of the performance pattern.
Depending on the result, pitch correction and audio
Bass tone correcting means for performing pitch conversion according to the bass tone, and tone signal creating means for creating a chord and a bass tone signal based on the pitch data output by the note converting means and the bass tone correcting means. , The bass sound correcting means includes a sound of the bass performance pattern.
For high data, specified by the determination means and by the code specification means
Specific relationship between routed and typed and on-base
When it is determined that the condition does not hold, the on-base instruction
Performs pitch conversion in accordance with the above , and is specified by the determining means and the code specifying means.
Specific relationship between routed and typed and on-base
When it is determined that holds, the above according to the specific relationship
The pitch is corrected by the conversion rule, and the
An automatic accompaniment device, which performs pitch conversion in accordance with an instruction from a musician.
JP8112852A 1996-05-07 1996-05-07 Automatic accompaniment device Expired - Fee Related JP2988371B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8112852A JP2988371B2 (en) 1996-05-07 1996-05-07 Automatic accompaniment device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8112852A JP2988371B2 (en) 1996-05-07 1996-05-07 Automatic accompaniment device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP4232494A Division JP2956867B2 (en) 1992-08-31 1992-08-31 Automatic accompaniment device

Publications (2)

Publication Number Publication Date
JPH08278785A JPH08278785A (en) 1996-10-22
JP2988371B2 true JP2988371B2 (en) 1999-12-13

Family

ID=14597148

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8112852A Expired - Fee Related JP2988371B2 (en) 1996-05-07 1996-05-07 Automatic accompaniment device

Country Status (1)

Country Link
JP (1) JP2988371B2 (en)

Also Published As

Publication number Publication date
JPH08278785A (en) 1996-10-22

Similar Documents

Publication Publication Date Title
US6175072B1 (en) Automatic music composing apparatus and method
JP3099436B2 (en) Chord detection device and automatic accompaniment device
JPH07219536A (en) Automatic arrangement device
JP2956867B2 (en) Automatic accompaniment device
JPH0990952A (en) Chord analyzing device
JPH0631980B2 (en) Automatic musical instrument accompaniment device
JP2988371B2 (en) Automatic accompaniment device
JPH0769698B2 (en) Automatic accompaniment device
JPH06161452A (en) Automatic accompaniment device
JP2007240558A (en) Chord detection area setting device, chord display device with same device, and program thereof
JP2689614B2 (en) Electronic musical instrument
JPH0367276B2 (en)
JP2518056B2 (en) Music data processor
JP2705421B2 (en) Automatic accompaniment device
JPH0423280B2 (en)
JPH04274297A (en) Automatic musical performance device
JP2572317B2 (en) Automatic performance device
JP2660457B2 (en) Automatic performance device
JP2570068B2 (en) Automatic performance device
JPH05188961A (en) Automatic accompaniment device
JP3055352B2 (en) Accompaniment pattern creation device
JPH0535268A (en) Automatic player device
JP2572316B2 (en) Automatic performance device
JP3837981B2 (en) Performance data creation method, automatic performance device and recording medium
JP2576296B2 (en) Automatic accompaniment device for electronic musical instruments

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: 19990907

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: 20071008

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081008

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091008

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees