JPH01177089A - 自動伴奏装置 - Google Patents

自動伴奏装置

Info

Publication number
JPH01177089A
JPH01177089A JP62333220A JP33322087A JPH01177089A JP H01177089 A JPH01177089 A JP H01177089A JP 62333220 A JP62333220 A JP 62333220A JP 33322087 A JP33322087 A JP 33322087A JP H01177089 A JPH01177089 A JP H01177089A
Authority
JP
Japan
Prior art keywords
register
key
chord
sound
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP62333220A
Other languages
English (en)
Other versions
JPH067331B2 (ja
Inventor
Takashi Ishida
隆 石田
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 JP62333220A priority Critical patent/JPH067331B2/ja
Priority to US07/291,110 priority patent/US4939974A/en
Publication of JPH01177089A publication Critical patent/JPH01177089A/ja
Publication of JPH067331B2 publication Critical patent/JPH067331B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 「産業上の利用分野」 この発明は、自動伴奏の和音変更時にタイ表現を行うこ
とができる自動伴奏装置に関する。
「従来の技術」 鍵盤の押鍵データに対応して和音による自動伴奏を行う
自動伴奏装置が開発されている(特公昭60−2335
5号等)。
「発明が解決しようとする問題点」 ところで、人が実際に行う和音演奏においては、和音の
構成音の一部を変更する時には、変更する音に対応する
指のみを動かし、共通する構成音については押鍵したま
まの場合が多い。すなわち、共通構成音については、タ
イ表現にて演奏することが多い。
しかしながら、従来の自動伴奏装置にあっては、和音変
化があった場合には全ての音が再発音されてしまい、よ
り自然な演奏効果を達成することが困難であった。
この発明は、上述した事情に鑑みてなされたもので、和
音変更時に構成音に共通なものがある場合はタイ表現が
可能な自動伴奏装置を提供することを目的としている。
「問題点を解決するための手段」 上記目的を達成するために、演奏すべき和音を指定する
和音指定手段と、クロック信号に基づく各演奏タイミン
グにおける和音の発生および和音のタイ表現発生を制御
するパターンデータを記憶する記憶手段と、クロック信
号に基づいて前記記憶手段から順次読み出されたパター
ンデータと前記和音指定手段で指定された和音とに基づ
いて和音の構成音を発生する楽音発生手段と、前記読み
出されたパターンデータが和音のタイ表現発生を指示し
ているとき、前記楽音発生手段において現在発生されて
いる和音の構成音のうち前記楽音発生手段において新た
に発生すべき和音の構成音と同一音高の音を検出して検
出した音についてはその発生をそのまま継続させる発音
制御手段とを具備している。
「作用」 前記パターンデータがタイ表現発生を指示した場合、和
音変更時において現在発生されている和音の構成音の中
に新たに発生される和音の構成音と同一音高の音がある
ことが検出されると、この音の発生はそのまま継続され
て新たな発音開始制御は行われない。このため、当該前
については、タイ表現による発音がなされる。
「実施例」 以下、図面を参照してこの発明の実施例について説明す
る。
(1:実施例の構成) 第1図は、この発明の一実施例の構成を示すブロック図
である。
第1図において、符号lは鍵盤ユニットであり、複数の
キーと、各キーのオン/オフ状態を検出するための複数
のキースイッチと、各キースイッチのキーコードをパス
ラインBに供給するインターフェイス回路とから構成さ
れている。ここで、第2図にキーとキーコードとの対応
関係を示す。第2図は、キーコードをlO進表示してあ
り、この図から判るように半音毎にキーコードの数値が
1変化するようになっており、C3音がキーコード「6
0」となっている。
2は装置各部を制御するCPU(中央処理装置)、3は
CPU2のプログラムが記憶されたプログラムメモリ、
4は各種レジスタおよびフラグが設定されるワーキング
メモリである。なお、ワーキングメモリ4内の各レジス
タおよびフラグについては、後述する。
次に、符号5は、リズム音および和音の伴奏音発生の際
に使用されるパターンデータRPDが記憶されたパター
ンメモリである。この場合パターンメモリ5には、予め
リズム種類(サンバ、スローロック等)およびコードタ
イプに対応した多数のパターンデータRPDが記憶され
ている。このパターンデータRPDのフォーマットを第
3図に示す。図示のように、パターンデータは、26バ
イトのデータにより構成されており、各バイトには相対
的なアドレスr−2」、r−t」、ro」。
「1」、・・・・・・r22J、r23Jが設定されて
いる。以下に各アドレスのデータについて説明する。
アドレスr−2」 :このアドレスには、第4図に示す
テーブル#O,#1・・・・・・のいずれかを指定する
8ビツトのテーブルセレクトデータTBLSELが記憶
されている。このテーブル#O,#1・・・・・・はテ
ーブルメモリ6に記憶されている。
アドレスr−IJ:このアドレスには、和音伴奏におい
て本来同時発音すべき和音の構成音を微少時間ずらして
発音する際のずらし時間を指示するデイレイタイムデー
タが記憶されている。このデータは、ギターのストロー
ク演奏のように、全体としては各弦がほぼ同時に鳴らさ
れるが実際には弦により微妙に発音タイミングがずれて
いる場合(6弦側か速く1弦側か遅い、あるいはその逆
)を再現するときなどに用いられる。
アドレス「0」〜r23J:これらの各アドレスには、
和音の音程態様およびキーオン態様を示す発音態様指示
データPDが第0番から第47番まで記憶されている。
このように48の発音態様指示データP D a〜PD
4Fが記憶されているのは、この実施例において1小節
(4拍子)を48分割し、各分割タイミングにおいて発
音制御を行うようにしているからである。この発音態様
指示データPDは、16進表示の(0)□〜(F)uで
表される4ビツトのデータであり、各発音タイミングに
応じ4ビット単位で順次使用される。ここで、その内容
と指示する発音態様の関係を第5図に示す。
第5図において、「ノーマル」とは当該分割タイミング
において発音を行う通常のキーオン態様であり、「タイ
キーオン」とは当該分割タイミングにおける発音音符(
和音構成音)のいずれかがそれ以前の音符(和音構成音
)とタイ記号により・つながれていた場合($17図参
照)には、当該音符については新たに発音をし直さず継
続して以前の音を伸ばす態様である。また、「デイレイ
キーオン」とは、前述のデイレイタイムデータを用いる
演奏を行う態様である。図の上段横軸の数値は音程態様
番号TEBNOであり、第4図に示す各テーブル内にお
いて設定されている音程態様のいずれかを指示する。こ
こで、テーブル#0においては、TEBNO「0」がコ
ードタイプによって決まる通常の和音構成音の音程関係
を指示し、TEBNOrlJが9th (ナインス)の
音を含む和音構成音の音程関係を指示し、TEBNOr
2」が通常の和音構成音の各音を半音下げた音程関係を
指示する。また、テーブル#1においては、音程態様番
号TEBNOrOJが通常の和音構成音の音程関係を、
「1」が通常の和音構成音の各音を半音下げた音程関係
を指示する。このように、音程態様番号TEBNOの値
は、選択されるテーブルの番号により、その機能が任意
に設定される。
また、第4図に示すコードタイプの記号は、汎用のコー
ドタイプ記号を用いており、例えば、Mはメジャー、m
はマイナー、susはサス、Augはオーグメント、d
Imはディミニッシュ、数字はセプンスあるいはシック
スス等を示している。
これらのコードタイプは、1〜Dの16進コードによっ
て指定されるようになっている。chは、発音チャンネ
ルを示しており、この実施例においてはchO〜ch2
の3つのチャンネルによって複数音による自動伴奏を行
うようにしている。第4図の各発音チャンネルChの欄
に記載されている数値「0」〜r255J  (10進
表示)はキーコードである。
また、発音態様指示データPDの内容が(1)□〜(C
)l(の場合は、上述のように音程態様番号TEBNO
を指示するが、(0)Hときはキーオフを指示し、また
、(F) Hのときは何もせず前の状態を保持すること
を指示する。なお、発音態様指示データPDの内容の(
D))l、  (E))lは本実施例では使用していな
い(第5図参照)。
以上がパターン内の各データの機能であり、第3図に示
すフォーマットに従ったパターンデータがリズム種類お
よびコードタイプに対応して複数記憶されている。また
、アドレスr−2Jr−1」は、パターンデータのヘッ
ダとなっている。
次に、第1図における7は、テンポクロック発生器であ
り、自動演奏音のテンポの基となる一定周期のテンポク
ロックTPをCPU2へ出力する。
このテンポクロックTPによってCPU2に割込みがか
かる。この場合、テンポクロックTPの周期は、CPU
2からパスラインBを介して供給されるテンポデータT
Dに応じて決まる。
8はタイマであり、一定周期のパルス信号をCPU2に
割り込み信号として供給する。このタイマ8は、デイレ
イタイムデータ(第3図参照)を用いる演奏において、
設定されたデイレイタイムを経時するために用いられる
10は、リズム選択スイッチ、リズムスタート/ストッ
プスイッチ、音色選択スイッチ、および各種効果選択ス
イッチ等から構成されているスイッチ群である。12は
、トーンジェネレータであり、鍵盤回路1の押鍵/離鍵
に従ってCPU2から発せられるキーオン/キーオフ情
報に基づいてプレーヤの鍵演奏に対応する楽音を発生す
るとともに、パターンデータRPDに基づく伴奏和音を
発生する。また、トーンジェネレータ・12は、パーカ
ッション系のリズム音源を有しており、選択されたリズ
ムに対応するリズム音を、テンポクロックTPに従って
発生するようになっている。
ここで、上述したワーキングメモリ4内の各種レジスタ
およびフラグの主なものについて説明スる。
フラグRUN :自動伴奏走行時に#l#、停止時に“
0”が書き込まれる。
レジスタCLK :テンポクロックTPのカウント数が
書き込まれるレジスタであり、各小節毎にrOJ〜「4
7」の値がサイクリックに書き込まれる。
レジスタDLL、DL2 :チャンネルchi。
ch2のデイレイタイムを計時するレジスタであり、第
3図に示すデイレイタイムデータが書き込まれる。デイ
レイ演奏時においては、タイマ8がクロックを出力する
毎に減算され、このレジスタDLI、DL2の内容がO
となったときに該当するチャンネルの発音が許可される
キーコードバッファKCBUF :押鍵されたキーのキ
ーコードが書き込まれるレジスタであり、複数設けられ
ている。
レジスタCHD :和音情報が書き込まれるレジスタで
あり、CPU2が伴奏用鍵盤のキーコードからコードタ
イプと根音を検出するとコードタイプデータが上位4ビ
ツトに、根音データが下位4ビツトに各々書き込まれる
。根音データは「OJ+’lJ’+・・・・・・「11
」のデータであり、C音、C#音、・・・・・・B音に
対応する。コードタイプデータは第4図に示すコードタ
イプに対応したデータであり、メジャーM1マイナm1
セブンスフth等に応じたrlJ 〜r13」のデータ
である。
レジスタTCI(D :上記和音情報が一時記憶される
レジスタである。
レジスタROOT :上記根音データが一時記憶される
レジスタである。
レジスタTYPE:コードタイプデータが記憶されるレ
ジスタである。
レジスタCHK : CLK、MOD、12の演算値が
記憶されるレジスタである。ここで、CLK、MOD、
12とは、レジスタCLKの内容を12で割った商の余
りをいう。このCLK。
MOD、12は、−拍内のタイミングを表現する。
レジスタTBLSEL、R:テーブルセレクトデータ(
第3図参照)TBLSELが書き込まれるレジスタであ
る。
レジスタDLYTM:ディレイタイムデータ(第3図参
照)が書き込まれるレジスタである。
アドレスポインタPNT : 第3図に示すパターンフ
ォーマットのアドレスを示すポインタである。
レジスタDTおよびNDT :各々発音態様指示データ
PDが書き込まれるレジスタであり、レジスタDTには
その時点の発音態様指示データPD、が書き込まれ、レ
ジスタNDTには次のタイミングの発音態様指示データ
P D 、、lが書き込まれる。
レジスタKEYa、:)−ンジエネレータlて設けられ
ているキーコードバッファである。
このレジスタKEY、〜KEY、に書き込まれるキーコ
ードによって発音チャンネルcho〜Ch2が発音する
音の音高が決定される。
レジスタoxEyo〜2:レジスタKEY、〜2の前回
の値が記憶されるレジスタである。
フラグMODE: “OHのときはチャンネルchi(
+−+〜、)に新たにキーコードを書き込んでキーオン
させる通常のキーオンモードを指示する。また、′l″
のときは、すでに発音状態にある発音チャンネルに対し
キーコードのみをすり替える発音処理(この処理の詳細
は後述)を指示する。
レジスタRTKEY :レジスタROOT内の根音デー
タの音域を変換したキーコードが書き込まれるレジスタ
である。
以上がワーキングメモリ4内に設けられている主なレジ
スタ、フラグ等である。
次に、上述した構成によるこの実施例の動作について説
明する。
この実施例の動作は、基本的にはリズムに応じて和音(
3音)を刻む自動伴奏である。また、この実施例におい
ては、キーオン態様により発音処理が異なるため、以下
に各キーオン態様毎に説明を行う。
A:ノーマル ■メインルーチン“MAIN” 第6図は、この実施例のメインルーチンを示す70チヤ
ートである。まず、電源が投入されると、イニシャル処
理としてワーキングメモリ4内の各種レジスタ、フラグ
(KCBUF、RUN、DLISDL2等)がクリアさ
れ、その後においてステップSP2以降の処理に移る。
ステップSP2においては、スイッチ群10内のスター
トスイッチにオンイベントがあったかどうかが判断され
る。ここで、イベントとはスイッチやキーの状態に変化
があったことをいい、オフからオンへ変化するオンイベ
ントと、オンからオフへ変化するオフイベントとがある
。ステップSP2において、スタートスイッチのオンイ
ベントが検出されると、ステップSP3においてフラグ
RUNの値を反転する。このステップSP2.SP3の
処理により、スタートスイッチが押される毎にフラグR
UNの値が反転する。次に、ステップSP4において、
フラグRUNが“1″か否かが判定され、rNOJであ
れば、自動伴奏走行の停止指示となるため、ステップS
P5に移って、トーンジェネレータ120チヤンネルc
 h O= ch2をオフするとともに、リズム音(パ
ーカッション類)の発生も全てオフする。そして、ステ
ップSP4においてrYESJと判定された場合は、自
動伴奏走行の開始が指示された場合であるから、ステッ
プS P 64:移り、レジスタCLK、DLI。
DL2をクリアして自動伴奏の開始に備える。ステップ
SP5.SP6の処理の後は、ステップSP7に移りリ
ズム選択が変更されたか否かが判断される。一方、ステ
ップSP2の判定がrNOJの場合、すなわち、スター
トスイッチがオンもしくはオフのままである場合は、ス
テップSP3〜SP5の処理を行わず、ステップSP7
に至る。
ステップSP7の判定がrYESJのときは、変更され
たリズム種類を示すデータに変更しくステップ5P8)
、ステップSP9で7ラグRUNが“1゛′かどうかが
判定される。この判定が、「YESJのときは、自動伴
奏走行中にリズム種類が切換られた場合であるから、ス
テップ5PIOにおいて、それ以前に選択されていたリ
ズム種類による伴奏の発音を停止し、新たに選択された
リズムによる伴奏に備え、その後にステップ5PIIに
おいてキーイベントの有無の判定を行う。一方、ステッ
プSP9の判定が、rNOJの場合は、以前から継続し
て自動伴奏が行われていない場合か、自動伴奏を停止す
べくステップSP3においてフラグRUNをクリアした
場合である。したがって、すでにトーンジェネレータ1
2内のチャンネルCho−ch2の発音は停止されてい
るから、ステップ5PIOの処理を行わず、直ちにステ
ップSpHの判定を行う。ステップ5PIIの判定は、
CPU2が鍵盤回路lから供給されるキーコードの変化
をみることによって行われる。キーイベントがない場合
は、ステップ5P12に移り、スイッチ群10内の他の
スイッチの操作に応じて音色や音量の設定、変更等を行
い、再び、ステップSP2に戻って、上記処理を繰り返
し行う。
一方、キーイベントがあった場合は、サブルーチン“K
EY−EVT”の処理に移る。
■サブルーチン“KEY−EVT“ まず、ステップSPa 1において、鍵盤回路1から発
せられるキーコードを、キーコードバッファKCBUF
に書き込む。キーコードが複数発せられた場合は、所定
の割り当て処理にしたがって各キーコードバッファKC
BUFに割り当てる。
そして、ステップ5Pa2に移り、イベントのあったキ
ーの発音処理を行う。この発音処理は、トーンジェネレ
ータ12のチャンネルch、−ah2とは別の発音チャ
ンネルにより行われる。すなわち、この発音はメロディ
演奏等の和音演奏とは別の押鍵に応じた直接的な発音処
理である。次に、ステップ5Pa3においては、キーコ
ードバッファKCBUF内のキーコードに基づきコード
タイプおよび根音を検出し、これらをレジスタTCHD
に書き込む。そして、ステップ5Pa4においてCLK
、MOD、12の演算、すなわち、レジスタCLKの内
容を12で除して余りを求める演算を行って、演算結果
をレジスタCHKに書き込む。この演算の結果は、前述
のように1拍内におけるタイミングを示す。ここで、レ
ジスタCLKの内容は、自動伴奏スタート開始時にはリ
セットされてrQJであるが、テンポクロック発生器7
からテンポクロツタTPが発生される毎にサブルーチン
CLK−ERQ (第12図参照)の処理により1づつ
インクリメントされ、小節内のタイミング(「0」〜r
47J)を示す値となっている。
ステップ5Pa4の処理が終わると、ステップ5Pa5
に移りレジスタCHKの内容が1〜3か否かが判断され
る。この判断は、キーイベントがあったタイミングが、
拍の最初から1/4のタイミング以内であるか否かの判
断である。この判定が「YESJの場合は、レジスタC
HDにレジスタTCHD内のデータが書き込まれる。こ
のレジスタTCHD書き込まれたデータ(根音データ生
コードタイプデータ)は、以下の発音処理に用いられる
。一方、ステップ5Pa5の判定が「NO」の場合は、
メインルーチン“MA I N”に戻り、次の拍の先頭
タイミングにおいてレジスタCHDに書き込まれる(第
12図ステップ5Pd4参照)。
すなわち、キーイベントが拍の先頭部分で生じた場合は
、直ちにその変更された和音の根音データ。
コードタイプデータをレジスタCHDに書き込んで自動
伴奏の発音処理に用いるが、キーイベントが拍の先頭部
分以外で生じた場合は、次の拍の先頭タイミングまで待
ってから変更された和音の根音データ、コードタイプデ
ータをレジスタCHDに書き込む。これは、拍の途中で
自動伴奏の和音が変化すると音楽的に不自然となるので
、それを回避するためである。
ステップ5Pa6の処理が終わると、レジスタCHD内
の根音データおよびコードタイプデータをレジスタRO
OTおよびレジスタTYPEに各々書き込み(ステップ
5Pa7.5Pa8参照)、“サブルーチンFAT−C
HG”の処理に移る。
■“サブルーチンFAT−CHG” この処理は、キーイベントがあった場合において、それ
以前に行われていた自動伴奏と、新たなキーイベントに
基づく自動伴奏との整合をとるための処理である。
まず、ステップSPb 1において、選択されているリ
ズム種類と、レジスタTYPEの内容に基づいて次に演
奏すべきパターンデータRPDを読出し、レジスタFA
Tに書き込む。そして、ステップ5Pb2においては、
読出したパターンデータRPDのアドレス「−2」にあ
るテーブルセレクトデータTBLSELおよびアドレス
「−1」にあるデイレイタイムデータ(第3図参照)を
、各々レジスタTBLSEL、RおよびレジスタDLY
TMに書き込む。次に、ポインタPNTにレジスタCL
Kの値、すなわち、その時点におけるクロックのカウン
ト値を書き込み(ステップ5rb3) 、PMT、MO
D、2の演算値が「0」か否かが判断される(ステップ
5Pb4)。この演算は、その時点のクロックカウント
値(CLKの値)が偶数か奇数かを調べる演算であり、
「0」となった場合が偶数である。そして、偶数の場合
は、ステップ5pbsに進み、パターンデータRPDの
アドレスrPNT/2Jの下位4ビツトにある発音態様
指示データPDをレジスタDTに書き込む。また、ステ
ップ5Pb4における演算が奇数の場合は、ステップ5
Pb6に進み、パターンデータRPDのアドレスr (
PNT−1)/2」の上位4ビツトにある発音態様指示
データPDをレジスタf)Tに書き込む。上述したステ
ップ5Pb4〜5Pb6の処理は、クロックカウント値
と発音態様指示データPDの番号とを合致させる処理で
ある。例えば、ポインタPNTに書き込まれるクロック
カウント値が「1」のときは、アドレスrQJの上位4
ビツトにある発音態様指示データPD、が選択され、ま
た、クロックカウント値がr46Jのときはアドレス2
3の下位4ビットにある発音態様指示データPD、、が
選択される(第3図参照)。 上記処理において、クロ
ックカウント値に対応した発音態様指示データPDがレ
ジスタDTに書き込まれると、ステップ5Pb7に移り
レジスタDTの内容が(F)Hか否か、すなわち、「何
もしない」を指示するものであるかどうかが判断される
。この判断がrYEsJの場合は、ポインタPNTの値
を1減算し、ステップ5Pb9を介して再びステップ5
Pb4以降の処理を行う。この処理はレジスタDTの内
容が(F)H以外のものとなるまで続けられる。そして
、(F)H以外のデータが検出されると、ステップ5P
bllに移りレジスタDTの内容が「0」かどうか、す
なわち、キーオフを指示するデータであるかどうかを判
断する。この判定がrYESJの場合は、レジスタKE
Y、〜、の内容が「0」であればメインルーチン″MA
IN”(第6図参照)ヘリターンし、「0」でなければ
トーンジェネレータ12のチャンネルcho〜2を全て
キーオフするとともに(ステップ5Pb16,5Pb1
7)、レジスタKEY、〜、をクリアした後にリターン
する。
ここで、上述したステップ5Pb4〜5Pb11および
ステップ5Pb15〜5P17の一連の処理の意味につ
いて説明する。
いま、第9図(イ)に示すように、第3袖口の先頭タイ
ミングにおいて和音Cメジャから和音Fメジャへの変更
があったとする。この変更によって新たに読出された和
音Fメジャに対応するパターンデータRPDが譜面上で
第9図(ロ)に示されるものであったとする。この譜面
を発音態様指示データにすると例えば第10図に示すよ
うになる。ここで、第3袖口の先頭タイミングにおける
レジスタCLKの値は「24」であるから、ステップ5
Pb3においてポインタPNTに書き込まれる値は「2
4」となる。そして、ステップ5Pb4→5pbs→5
Pb7の処理により、ステップ5Pb7においては発音
態様指示データPD、。
の値が(F)oか否かが判断される。この場合は、(F
)Hであるから判定はrYEsJとなる。ところで、(
F)Hの意味は「何もしない」であるから、それ以前に
キーオンが指示されていればその発音を継続し、キーオ
フが指示されていれば消音状態を維持しなければならな
い。したがって、あるタイミングにおける発音態様指示
データPDが(F)8である場合には、新たにどのよう
な発音制御をすべきか不明である。このため、それ以前
のタイミングの発音態様指示ケータであって(F)H以
外のものをサーチする必要がある。ステップ5Pb4〜
SPb 10の処理は、このサーチを行う処理である。
さて、上記例にあっては、発音態様指示データPD□が
(F) IIであるから、1つ前の発音態様指示データ
PD!、を調べると、(0) Hなっており、クロック
カウント値「24」においては消音を維持しなければな
らないことが判る。この消音の判断は、ステップSPb
 11においてrYESJとなった場合に対応する。
ところで、キーイベントがある前の和音Cメジャの伴奏
時のパターンデータRPDが譜面上では第9図(ハ)の
ように表されるとする。この場合にあっては、同図に示
すようにクロックカウント値「23」で消音が指示され
ているから、この時点におけるレジスタKEY、〜、の
内容は、消音指示のためにすべて「0」となっている。
すなわち、クロックカウント値「24」における発音態
様が、変更前(同図(ハ))と変更後(同図(ロ))と
で同じである。このような場合には、ステップ5Pb1
5の判定がrYEsJとなり、発音制御処理は行わずに
そのままリターンする。
一方、キーイベントがある前の和音Cメジャの伴奏時の
パターンデータRPDが譜面上で第9図(ニ)のように
表されるとする。この場合にあっては、同図に示すよう
に、クロックカウント値「23」では2拍目に発音した
音を継続している必要がある。したがって、レジスタK
EY、〜、には2拍目の発音に対応するキーコード(付
点4分音符のキーコード)が各々書き込まれている。し
かし、和音変更後のクロックカウント値r24J  (
3拍目)にあっては消音の必要がある(同図(ロ)参照
)。そこで、このような場合にあっては、ステップ5P
b16に進んでトーンジェネレータ12の発音チャンネ
ルchO〜2をキーオフして消音させ、さらに、レジス
タKEY、〜8をクリアしてからリターンする(ステッ
プ5Pb17)。
以上が、ステップ5Pb4〜5Pbllおよびステップ
5Pb15〜5Pb17の処理の意味である。
上記ステップ5Pbll〜5Pb17の処理は、変更後
の当該タイミングにおいて消音が指示された場合の処理
であったが、逆に、発音が指示される場合もある。この
場合には、ステップSPb 11〜SPb 14の処理
を行う。この処理を以下に説明する。
変更後のパターンデータにおける当該タイミングの発音
態様指示データPDが(F)Hl (0)H以外のとき
、′および、当該タイミングから順次さかのぼって検出
された発音態様指示データPDが(0)H以外のときは
、変更後において発音が指示される場合である。この場
合にはステップ5Pbllの判定が「NO」となるから
、ステップ5Pb12の判定を行う。この判定は前述の
ステップ5Pb15の判定と同様の判定であり、「YE
S」の場合は、変更前のパターンデータにより当該タイ
ミングにおいて消音されている。また、[NOJの場合
には変更前のパターンデータにより当該タイミングで発
音がなされている。そして、ステップ5Pb12の判定
がrYESJのときはフラグMODEに“θ″が書き込
まれ、rNOJのときはフラグMODEに“l”が書き
込まれる(ステップ5Pb13,14)。そして、この
処理の後にサブルーチン“FAT−KEY”の処理に移
る。発音処理は、このサブルーチンにおいて行われる。
■サブルーチン“FAT−KEY (ノーマル)″この
サブルーチンは、トーンジェネレータ12の発音チャン
ネルcho〜2を制御するためのサブルーチンである。
但し、第5図に示すキーオン態様が「ノーマル」、「タ
イキーオン」、「デイレイキーオン」の各場合において
各々処理が異なるため、ここでは「ノーマル」の場合に
ついて説明する。
まず、第11図に示すステップSPc 1において、(
DT−1)、MOD、4の演算を行い、演算結果をレジ
スタTBLNO,Rに書き込む。この演算は、発音態様
指示データPDの値を音程態様番号TBLNOに変換す
る演算である(第5図参照)。次に、ステップ5Pc2
においては、発音態様指示データPDの値をキーオン態
様番号に変換する演算、すなわち、INT ((DT−
1)/4)を行い、その演算結果をレジスタKONTP
に書き込む。ステップ5Pc3においては、レジスタ0
KEY iにレジスタKEYi(i=o〜2)の値を書
き込む。ステップ5Pc3の処理は、この時点でチャン
ネルcho〜2において発生されている前回のキーコー
ドを、同一番号のレジスタ0KEYに書き込む処理であ
る。次に、ステップ5Pc4に移り、図示の演算によっ
て根音の音域をG、〜F#、に変更し、変更後の根音を
レジスタRTKEYに書き込む処理を行う。この処理例
を示す。今、レジスタROOT内の根音データがC音を
示す「0」の場合は、(ROOT+5)。
MOD、12の演算を行うと「5」となり、これに「5
5」を加算すると「60」となる。キーコード「60」
は第2図に示すように、C1音のキーコードである。
次に、ステップ5Pc5においては、レジスタTBLS
EL、R(ステップ5Pb2でセット済み)内のセレク
ト番号に一致するテーブルを読出し、このテーブルにお
いてレジスタTBLNO。
R内の音程態様番号TBLNOに対応するデータを読出
す。そして、この読出したデータの各チャンネルcho
〜2に対応する数値をレジスタRTKEYの値にそれぞ
れ加え、この加算結果をレジスタKEY、〜、に各々書
き込む。今、レジスタRTKEYの内容がキーコード「
60」であり、かつ、テーブルが#0、音程態様番号T
BLNOが01コードタイプがM(メジャー)であった
場合は、第4図に示すように4.7.12が各々60に
加算される。したがって、レジスタKEY、にはキーコ
ード「64」が、レジスタKEY、にはキーコード「6
7」が、レジスタKEY、にはキーコード「72」が各
々書き込まれる。これらのキーコードr64J 、r6
7J 、r72Jは各々E3音、G、音、C1音に対応
する。
ステップ5Pe5の処理が終わると、ステップSPc 
6に移りレジスタKONTPの内容が「0」、「1」、
「2」のいずれであるかが判断される。すなわち、キー
オン態様が「ノーマル」であるか、「デイレイキーオン
」であるか、「タイキーオン」であるかが判断される。
ここでは、「ノーマル」について説明するので、ステッ
プ5Pc7に進む。このステップ5Pc7においては、
レジスタMODEの内容が“1″か否かが判断され、「
NO」であればステップ5Pc5においてレジスタKE
Y、〜、に書き込んだキーコードを、トーンジェネレー
タ12内の各発音チャンネルcho〜ch2に各々供給
し、当該キーコードの発音を行う(ステップ5Pc8)
。−方、レジスタMODEの内容が“1”であれば、ス
テップ5Pc7の判断が「NO」となり、レジスタK 
E Y o〜、に書き込んだキーコードとトーンジェネ
レータ12内の発音チャンネルchO〜Ch2内のキー
コードとを入れ換えて発音を行う(ステップ5Pc9)
。このように、キーコードの入れ換えを行うのは、レジ
スタMODEが“1”の場合は発音チャンネルcho−
ch2がそれ以前に供給されたキーコードにより発音継
続している場合であるから(ステップ5Pb12,5P
b14参照)、途切れのない発音(スラー記号に対応す
る発音)を行うために前のキーコードと新たなキーコー
ドとの入れ換えを行う。
ステップ5Pc8.5Pc9のキーオン処理が終了する
とリターンする。リータン先は、このサブルーチンが“
FAT−CHG”  (第8図)において呼ばれた場合
は、メインルーチンである。
上述の動作説明は、自動伴奏中においてキーイベント(
和音変更)があった場合の発音処理であり、“MA I
 N”−“KEY−EVT” →”FAT−CHG”→
“FAT−KEY”なるルーチンを経て、メインルーチ
ン“MA I N”にリターンする。なお、変更後のパ
ターンデータの当該タイミングにおいて発音が指示され
ない場合は、サブルーチン“FAT−CHG”において
消音処理(ステップ5Pb16)等を行った後にメイン
ルーチン“MA I N”にリターンする。
ところで、自動伴奏の通常の発音処理は、テンポクロッ
クTPに基づいて自動的に行われる処理である。この場
合の処理は、第12図に示すサブルーチン“CLK・I
RQ”および第13図に示すサブルーチン“FAT−R
EAD”によって行われる。以下に、これらについて説
明する。
■サブルーチン“CLK・IRQ” まず、第1図に示すテンポクロック発生器7からテンポ
クロツタTPが発せられると、CPU2に割り込みがか
かり、この結果、あ理がサブルーチン“CLK −I 
RQ”に移る。そして、ステップSPd 1においてフ
ラグRUN“1”か否が判定され、「NO」であればリ
ターンし、rYES」であればステップSPd 2に移
る。ステップ5Pd2においては、レジスタCLKの値
および選択されているリズム種に応じて、リズム音発生
処理(パーカッション系の発音)が行われる。次に、ス
テップ5Pd3に移り、レジスタCLKの内容を12で
割った余りが「0」か否かが判断される。
この判断がrYEsJの場合は、レジスタCLKの内容
が拍の先頭タイミング(0,H,24,36)を示して
いる。このステップ5Pd3の判定がrNO」のときは
直ちにサブルーチン“PAT−READ″の処理を行い
、rYEsJの場合にはレジスタTCHDの内容をレジ
スタCHDに書き込んだ後に上記サブルーチン“PAT
−READ’M:移る。ステップSPd 4の処理は、
前述したステップ5Pa5の判定が「NO」となって、
レジスタCHKに書き込まれなかったキーコードを、こ
こにおいて書き込むための処理である。
■サブルーチン“FAT−READ” まず、第13図に示すステップSPe 1においては、
リズム種類とレジスタTYPE内のコードタイプデータ
に基づき、演奏すべきパターンデ−タRPDが選択され
、レジスタFATに書き込まれる。そして、パターンデ
ータRPDのアドレス「−2」、「−1」にあるテーブ
ルセレクトデータTBLSELおよびデイレイタイムデ
ータを、各々レジスタTBLSEL、Rおよびレジスタ
DLYTMに書き込む。次に、ステップ5Pe3におい
ては、レジスタCLKの内容が偶数か奇数かが判断され
、偶数であればステップ5Pe4に進み、レジスタDT
およびNDTにパターンデータのアドレスrCLK/2
Jの下位4ビツトおよび上位4ビツトにある発音態様指
示データPD、およびP D m+I (nはレジスタ
CLKの内容)を各々書き込む。また、レジスタCLK
の内容が奇数であればレジスタDTおよびNDTに、パ
ターンデータのアドレスr(CLK−1)/2Jの上位
4ビツトおよびアドレスr (CLK+1)/2Jの下
位4ビ゛ツトにある発音態様指示データPD。
およびP D 6.、が書き込まれる(ステップ5Pe
5)。このステップ5Pe4,5Pe5の処理により、
レジスタDTにはその時点で処理すべき発音態様指示デ
ータPDが書き込まれ、レジスタNDTには次のタイミ
ング(CLK+1)で処理すべき発音態様指示データP
Dが書き込まれる。例えば、レジスタCLKの内容が「
4」の場合は、第5図に示すアドレス「2」の発音態様
指示データPD、、PD、がレジスタDT、NDTに書
き込まれ、レジスタCLKの内容が「5」の場合はアド
レス「2」の発音態様指示データPD、と、アドレス「
3」の発音態様指示データPD、とがレジスタDT、N
DTに書き込まれる。なお、ステップ5Pe5において
CLK+1の値が「48」となった場合は、アドレス「
0」の下位4ビツトを書き込むようになっている。
次に、ステップ5Pe6においては、レジスタDTの内
容が(F)uかどうか、すなわち、当該タイミングにお
いて処理すべき発音態様指示データPDが「何もしない
」であるかどうかが判断される。この判定がrYEsJ
の場合は、ステップSPe l 1に進み、レジスタN
DTの内容が(F)Hかどうか、すなわち、次に処理す
べき発音態様指示データPDが「何もしない」であるか
どうかが判断される。この判断がrYEsJであればリ
ターンし、rNOJであればステップ5Pe12におい
てレジスタDLlの内容が「0」かどうかが判断される
。レジスタDLIは、第6図に示すステップSPIのイ
ニシャライズ処理によりクリアされているから、ステッ
プ5Pe12の判定がrYEsJとなり、ステップSP
e 15に進んでレジスタDL2の内容が「0」か否か
が判定される。このレジスタDL2もステップSPIに
おいてリセットされているから、判定はrYEsJとな
ってリターンする。このように、レジスタDTの内容が
(F)8である場合には、ステップ5Pe6,5Pal
lを介し、あるいはさらにステップ5Pe12,5Pe
15を介してサブルーチン“CLK・IRQ″のステッ
プ5Pd5にリターンする。ステップSPd 5におい
ては、レジスタCLKの内容を1インクリメントする処
理が行われる。なお、ステップSPd 5において図示
の演算を行っているのは、レジスタCLKの内容を「0
」〜「47」で循環させるためである。
一方、第13図に示すステップ5Pe6においてrNO
Jとなると、ステップ5Pe7に移り、レジスタDTの
内容が(0)Hであるか否かが判断される。この判断が
rYESJであれば、当該タイミングにおいてキーオフ
が指示されているから、トーンジェネレータ12の発音
チャネルchO〜ch2をすべてキーオフさせ、また、
レジスタKEY、〜、をクリアする(ステップ5Pe8
゜5Pe9)。ステップ5Pe7において「NO」と判
断された場合は、ステップSPe 10においてフラグ
MODEを“O″にした後サブルーチン“FAT−KE
Y”の処理に移る。
サブルーチン“’FAT−KEY”の処理は、前述した
通りであり、キーオン態様がノーマルで、フラグMOD
Eが“0”の場合は、ステップ5P01〜5Pc8の処
理による発音がなされる。この発音処理後においては、
ステップSPe 11にリターンする。キーオン態様が
ノーマルの場合は、ステップ5Pallもしくはステッ
プSPe 12SPe 15を経て第12図のステップ
5Pd5にリターンし、レジスタCLKをインクリメン
トスる。
以上の処理をテンポクロックTPが発せられる毎に行う
。以上がキーオン態様「ノーマル」ノ処理である。
B:デイレイキーオン 次に、デイレイキーオンの場合について説明する。
このデイレイキーオンは、サブルーチン“FAT−KE
Y”、  “FAT−READ”jJける処理内容が変
わる点と、サブルーチン“TIMER・IRQ”の処理
が加わる以外は前述のノーマルの場合と同様である。始
めに、サブルーチン“FAT−KEY”の処理について
説明する。
■サブルーチン“FAT−KEY”  (デイレイキー
オン) まず、ステップSPc 1から5Pc6までは、ノーマ
ルの場合と同様であるが、ステップ5Pc6の判定によ
りステップ5PclOに移り、レジスタMODが“1”
か否かが判断される。この判定がrYEsJの場合は、
ステ、ツブ5Pc9に移り、チャンネルChO〜ch2
内のキコードをレジスタK E Y o〜、内のキコー
ドにすり替えて3つのキコードをすべて発音する。すな
わち、デイレイキーオン処理を行わず、3背向時発音と
する。
これは、レジスタMODが“1”となるのは、和音変更
のキーイベントがあった場合において、変更前のバタ、
−ンデータによって発音が継続される場合であるから、
新たなキコードによってデイレイキーオンを行うと音楽
的に不自然となるためである。
一方、ステップSPc 10でrNOJと判定された場
合は、ステップ5Pb2あるいはステップSPe 2に
おいてレジスタDLYTMに書き込んだデイレイタイム
データ(第5図参照)を、レジスタDLIに書き込み、
また、デイレイタイムデータを2倍してレジスタDL2
に書き込む。そして、ステップSPc 12に移り、レ
ジスタKEY。内のキコードをチャンネルch、に供給
してキーオンする。すなわち、レジスタKEY、のキー
コード(第4図に示すように和音を構成する音の最低音
)はデイレイキーオンせず直ちに発音する。
ステップSPc 12の処理が終わると、直ちにメイン
ルーチン“MAIN”にリターンするか、第13図のス
テップSPe 11+ (SPc 12,15)→第1
2図の5Pd5を介してメインルーチンにリターンする
。前者は、サブルーチン“FAT−CHG”において“
FAT−KEY”がコールされた場合であり、後者はサ
ブルーチン“FAT−READ”において“FAT−K
EY”がコールされた場合である。 そして、メインル
ーチン“MAIN”を循環中においてタイマ8からパル
ス信号IPが出力されると、処理はサブルーチン“TI
MER・IRQ”に移る。この場合、パルス信号IPの
周期はテンポクロックTPより充分に短く設定されてい
るため、通常は次のテンポクロックTPが供給される前
にサブルーチン“TIMER・IRQ”の処理が行われ
る。
■サブルーチン“TIMER・IRQ”まず、ステップ
5PflにおいてフラグRUNの内容が“1″か否かが
判断され、「NO」であればメインルーチン“MA I
 N”にリターンし、rYEsJであればステップ5P
f2に進む。ステップ5Pf2ではレジスタDLIの内
容が「0」か否かが判断され、「0」であればステップ
5Pf6に進み、「0」でなければレジスタDLIの内
容が1減算される(ステップ5Pf3)。そして、減算
後のレジスタDLIの内容が「O」か否かが判断され(
ステップ5Pf4)、「O」であればチャンネルchi
にレジスタKEYI内のキーコードを供給してキーオン
する。ステップ5Pf4の判定が「NO」の場合は、ス
テップ5Pf6に進む。
次に、ステップ5Pf6〜5Pf9の処理は、上述した
5Pf2〜5Pf5までの処理と全く同様の処理をレジ
スタDL2について行う処理である。そして、ステップ
5Pf9の処理が終わるとリターンし、再び、パルス信
号IPが供給された時点でこのサブルーチン“TIME
R・IRQ″に戻る。このように、パルス信号IPが供
給される毎にサブルーチン“TIMER−IRQ”の処
理が行われると、当初デイレイタイムデータが書き込ま
れていたレジスタDLI、DL2の内容がステップ5P
f3.8Pf7の処理により順次減算されていき、減算
結果が「0」となったときにおいてレジスタKEY1.
KEY!内のキーコードが、チャンネルchiもしくは
チャンネルch2に供給されキーオンされる。すなわち
、チャンネルchiの発音はチャンネルchoよりデイ
レイタイムデータ分だけ遅れ、また、レジスタDL2の
内容がレジスタDLI内容の2倍であることから(ステ
ップSPc 11参照)、チャンネルch2の発音はチ
ャンネルchiの発音よりさらにデイレイタイムデータ
分だけ遅れる。図示すると第15図のようになる。
■サブルーチン“FAT−READ”のステップSPe
  1 3=SPe  1 7 ところで、曲のテンポが速い場合は、デイレイキーオン
処理を行うと、デイレイ処理されたキーコードの発音タ
イミングが後に発音されるべき次の音符よりも遅れるこ
とが生じる。例えば、第16図に示すように、最初の1
6分音符の和音についえデイレイキーオン処理を行った
場合に、チャンネルch2の発音タイミングが、次の1
6分音符の発音タイミング1.より遅れる場合がある。
これは音楽的に不自然なため、かかる場合はデイレイ処
理を中断し、チャンネルch2の発音タイミングをタイ
ミング1.の前にずらす処理を行うようにしている。
サブルーチン“FAT−READ”のステップSPe 
13〜5Pe17の処理はこのための処理である。以下
にこの処理について説明する。
今、デイレイキーオンの処理が終了してないうちに、次
のテンポクロツタTPが発せられたとする。この結果、
処理はサブルーチン“CLK−IRQ”を介して“FA
T−READ”に至る。そして、ステップSPe 1〜
ステツプ5Pe6を経てステップSPe 11の判定が
行われる。この場合、次のテンポクロツタTPのタイミ
ングにおいて音発生を行う場合は、ステップ5Pall
の判定が「NO」となるから、ステップSPe 12に
移り、レジスタDLIの内容が「0」か否かが判断され
る。この判定がrNOJであれば、発音チャンネルch
iについては未だデイレイキーオン処理が行われていな
い場合であるから、ステップSPe 13おいてレジス
タDLRをクリアし、さらにチャンネルchiにレジス
タKEYI内のキーコードを供給して強制的にキーオン
する(ステップ5Pe14)、一方、ステップSPe 
12の判定がrYEsJであれば、ステップ5Pe15
においてレジスタDL2の内容が「0」か否かが判断さ
れる。この判断がrYEsJであれば、チャンネルch
i、ch2の双方のデイレイキーオン処理が終了してい
るため、ステップ5Pd5を介してメインルーチン“M
A I N”ヘリターンする。また、ステップ5Pe1
5で「NO」となった場合は、レジスタDL2をクリア
しチャンネルch2にレジスタKEYZ内のキーコード
を供給して強制的にキーオンさせる。この処理の後は、
ステップ5Pd5を介してメインルーチン“MAIN”
にリターンする。
以上がデイレイキーオンの処理である。
C:タイキーオン 次に、タイキーオンの処理について説明する。
この場合は、サブルーチン“FAT−KEY”の処理以
外は、前述だノーマルの処理と同様である。
サブル−チン“FAT−KEY”のステップ5Pal〜
5Pc6までの処理は、ノーマルの場合と同様の処理と
なるが、ステップ5Pc6の判定において「1」となり
、ステップ5Pc13に進む。ステップSPc 13に
おいては、レジスタiをクリアし、さらに、ステップS
Pc 14においてレジスタjをクリアする。そして、
ステップ5Pc15に移りレジスタ0KEY iとレジ
スタKEYiの内容が比較される。この処理は、ステッ
プ5Pc3においてレジスタ0KEY iに書き込んだ
前回のキーコードデータとステップ5Pc5においてレ
ジスタKEY iに書き込んだ今回のキーコードデータ
とが一致しているかどうかを判断する処理である。また
、ステップSPc 15に8いては、レジスタiとレジ
スタjの内容が異なっているか否かも判定する。このス
テップSPc 15における最初の判断は、レジスタ0
KEYOとレジスタKEYOの内容比較となるが、i 
m jであるので判定はNOとなり、ステップSPc 
17に移る。ステップ5Pc17においては、レジスタ
jの内容に1が加算され、ステップSPe 18の処理
に移る。ステップSPc 1 Bは、レジスタjの値が
「3」未満か否かを判定する処理であり、ステップSP
c 17の加算処理が2回以下のときはrYEsJとな
り、再びステップ5Pc15に移り比較処理を行う。ス
テップSPc 15における2回目の比較処理は、0K
EYO−KEYIか否かの比較である。この判断がrY
EsJであれば、レジスタKEY iとレジスタKEY
 jの内容を入れ換える(ステップ5Pc16)。すな
わち、上記の場合においては、レジスタK E Y a
とレジスタKEY、の内容を入れ換える。以後同様にし
てレジスタjの内容をインクリメントし、再びステップ
5Pc15の処理を行う。この処理の後にステップ5P
c17の処理を行うと、ステップ5Pc18の判定が「
NO」となり、ステップ5Pc19においてレジスタi
の内容がインクリメントされる。次に、ステップ5Pc
20に進み、レジスタiの内容が3未満か否かが判断さ
れる。この判断はステップ5Pc19の処理が2回以下
のときはrYEsJとなるから、処理は再びステップ5
Pc14に戻る。すなわち、レジスタiの値を「1」と
して、上記処理を繰り返す。以後同様にレジスタiの値
を2にして上記処理を行い、再度ステップ5Pc20に
至るとこの判定がrN OJとなり、ステップ5Pc1
4〜ステツプ5Pc20からなるループを抜ける。
このループの処理によってレジスタ0KEYi−KEY
jとなった場合は、レジスタKEY iの内容とレジス
タKEY jの内容が入れ換えられる。
これにより、レジスタKEYi  (f−0〜宜)内の
次に発音すべきキーコードが、現在発音されている発音
チャンネルchiのキーコードと同じ場合は、当該発音
チャンネルと同一の番号のレジスタKEYiに入れ換え
られる。ただし、発音チャンネルchiと同一番号のレ
ジスタKEY fに初めから同じキーコードが書き込ま
れている場合は、入れ換えの必要がないので、この処理
は行われない。
例えば、第17図に示すように現在G、音、B。
音IDG音による和音(和音G)が奏せられており、レ
ジスタOK E Y o 、 OK E Y t 、 
OK E Y *に各々キーコードr67J 、r71
J 、r74Jが書き込まれているとする。そして、次
に発音すべき音がE、音、G、音、D、音(和音c、、
h)でレジスタK E Y o 、 K E Y 1.
 K E Y !に各々キーコードr64J 、r67
J 、r74Jが書き込まれているとする。この場合に
は、KEY、−0KEY2、K E Y r −OK 
E Y oであり、KEYoについては一致するものが
ない。したがって、レジスタKEY!はそのままである
が、レジスタKEYIとKEY、の内容は入れ換えられ
る。対応関係を示すと以下のようになる。
第1表 次に、ステップ5Pc21においてレジスタiがクリア
されると、ステップ5Pc22においてレジスタ0KE
YfとレジスタKEYfの同一番号のものの内容が等し
いかどうかが判定される。
この判定結果がrNOJのときは、ステップ5Pc23
に進みフラグMODEが“l”か否かが判断され、rN
OJであれば、現在発音中の音がない場合であるから発
音チャンネルchiにレジスタKEYiのキーコードを
供給してキーオン旭理を行う(ステップ5Pc24)。
また、ステップ5Pc23の判定がrYEsJの場合は
、現在発音中の音がある場合であるから、発音チャンネ
ルchiのキーコードとレジスタKEYiのキーコード
を入れ換えて発音処理を行う(ステップ5Pc25)。
これらの処理の後はステップ5Pc26においてレジス
タiをインクリメントし、ステップ5Pc27を介して
ステップ5Pc22に移り上記動作を繰り返す。
一方、ステップ5Pc22の判定がrYESJの場合は
、新たな発音処理(ステップ5Pc24゜25)を行わ
ず、ステップ5Pc26,5Pc27を介してステップ
5Pc22に至り、上記処理を繰り返す。このように新
たな発音処理が行われないと、発音チャンネルchiは
前回の音をそのまま継続して発し続ける。
そして、ステップ5Pc22〜5Pc26の処理が3回
行われると、ステップ5Pc27の判定がrNOJとな
ってリターンする。
ここで、第1表に示した例において上記処理が行われる
と、i−0とi=2のときにおいて0KEY i =K
EY iとなるので、発音チャンネルChOとch2に
ついては新たな発音処理が行われず、前回の音であるり
、音とG、音が継続して発せられる。また、発音チャン
ネルchiについては、ステップ5Pe24において新
たにE、音の発音が為される。この結果、第17図に示
すように、D、音とG、音は、タイ記号によりつながれ
た音符として発音される。
以上がタイキーオンの処理である。
D:総合的動作例 第18図は、パターンデータの一例である。そして、上
記パターンデータでテーブル#0が選択され、かつ、コ
ードタイプがCメジャーである場合の演奏例を第19図
に示す。この図に示すように、1拍目の先頭タイミング
(CLK= ro」)においては、発音態様指示データ
PD、が(S) Oであるから、第5図に示すようにキ
ーオン態様がデイレイキーオンで、音程態様番号TBL
NOが「0」である。したがって、演奏は第19図に示
すようにE、音、G3音+C4音のデイレイキーオンと
なる。そして、レジスタCLKが「1」〜「10」とな
るタイミングにおいては発音態様指示データPDが(F
)Hであるから何もしない。レジスタCLKが「11」
となるタイミングにおいては、発音態様指示データPD
が(0) 0となるため、上記各音を消音する。この結
果、第19図に示すようにE3音、Gj音1c4音が4
分音符の長さで発音される。そして、レジスタCLKが
「12Jとなるタイミングにおいては、発音態様指示デ
ータPDが(1)8であるからノーマルキーオンで音程
態様番号TBLNO「0」が選択される。したがって、
このタイミングにおいては、E、音+Gi音+C4音が
発せられる。そして、レジスタCLKが「17」となる
タイミングの発音態様指示データが(0)Hとなってい
るから上記各音はこの時点で消音される。この結果、上
記各音は、8分音符の長さで発音される。次に、レジス
タCLKが「18」となるタイミングの発音態様指示デ
ータPDは(A)□であるから、デイレイキーオンで音
程態様番号TBLNOがrlJとなる。この結果、c*
tkのコードの発音となり(第4図参照)、E、音、G
、音、D4音が発音される。
そして、レジスタCLKが「24」となるタイミングの
発音態様指示データPDが(5)Hとなっているから、
第5図に示すようにキーオン態様がタイキーオンで音程
態様番号TBLNOが「0」となる。この結果、E、音
、GS音1c4音の発音となり、かつ、Es音、G、音
がタイ記号によりつながれた発音となる。また、2拍目
の最終タイミング(CLK−r23J ’)の発音態様
指示データが(O) Uとなっていないから3拍目の0
4音は消音を介さずに発音され(キーコード入れ換えの
発音)、スラー記号によってつながれた音の発音となる
。次に、レジスタCLKが「29」となるタイミングに
おいては消音が指示され、以後4拍目の先頭タイミング
まで発音態様指示データPDが(F) )lとなってい
る。これにより、第19図に示すように8分休符が表現
される。そして、4拍目の先頭タイミングと、4拍目の
1/2のタイミングにおいて発音態様指示データPDが
(3)H。
(1)8となっているので、b E s音、トG3音。
しC1音(−B、音)およびE、音、G、音1c4音が
それぞれ8分音符の長さで発音される。
(3:実施例の変形) 上記実施例は以下のように変形することが可能である。
■上述した実施例は、主に伴奏鍵盤の演奏について説明
したが、メロデイ鍵盤を付加し、メロディ演奏を合わせ
て行うよう構成してもよい。
■自動伴奏形態として、単独の和音演奏を示したが、ベ
ース音や自動アルペジオ演奏等の他のパートと組み合わ
せることも可能である。さらに、上記実施例では根音自
体の発音は行わなかったが、根音も合わせて発音するよ
うに構成してもよい。
■デイレイキーオンにおいて、専用のタイマ8によって
デイレイ時間の計唆を行ったが、テンポクロックTPを
用いてデイレイ時間を計時してもよい。
■テンポの分解能や拍子は、実施例においては「48」
および4/4拍子であったが、これに限定されず、他の
任意の分解能および拍子を設定することも可能であり、
また、組み合わせて構成することも可能である。
■実施例においては、テーブルが複数設けられていたが
、これは1つでもよい。この場合は、テーブルセレクト
データTBSELは不要となる。
■音程の変化は、実施例においては、発音態様指示デー
タPDによってテーブル内の音程態様番号TBLNOを
選択することによって行ったが、テーブルによらず演算
で行ってもよい。
例えば、半音下げる変化(第5図の音程態様番号2)な
どは、機械的にキーコードの数値を1減算するような処
理を行えばよい。
「発明の効果」 以上説明したように、この発明によれば、パターンデー
タがタイ表現発生を指示した場合、和音変更時において
現在発生されている和音の構成音中に新たに発生される
和音の構成音と同一音高の音があることが検出されると
、この音の発生がそのまま維持されるので、自動伴奏に
おける任意の音符に対してタイ表現を自動的に付与する
ことができ、従来にない演奏効果を奏することができる
【図面の簡単な説明】
第1図はこの発明の一実施例の構成を示すブロック図、 第2図は同実施例で用いるキーコードとキーとの関係を
示す図、 第3図は同実施例におけるリズムパターンデータのフォ
ーマットを示す図、 第4図は自動伴奏の和音の音程を決定するテーブルの内
容を示す図、 第5図は発音態様指示データの機能を示す図、第6図は
同実施例のメインルーチンを示すフローチャート、 第7図、第8図、第11図、第12図、第13図、第1
4図は各々同実施例のサブルーチンを示すフローチャー
ト、 第9図は自動伴奏中にキーイベントがあった場合の発音
処理を示すための図、 第10図は発音態様指示データの一例を示す図、第15
図はデイレイキーオン処理を説明するためのタイミグ図
、 第16図はデイレイキーオン処理における禁止処理を示
すだめのタイミグ図、 第17図はタイキーオン処理を説明するための楽譜、 第18図は総合動作例における発音態様指示データの一
例を示す図、 第19図は第18図に示す発音態様指示データを用いた
場合の演奏例を示す楽譜である。 1・・・・・・鍵盤回路、2・・・・・・CPU、3・
・・・・・・・・プログラムメモリ、4・・・・・・ワ
ーキングメモリ、5・・・・・・リズムパターンメモリ
、6・・・・・・テーブルメモリ、7・・・・・・テン
ポクロック発生器、8・・・・・・タイマ、12・・・
・・・トーンジェネレータ。

Claims (1)

  1. 【特許請求の範囲】 a、演奏すべき和音を指定する和音指定手段と、b、ク
    ロック信号に基づく各演奏タイミングにおける和音の発
    生および和音のタイ表現発生を制御するパターンデータ
    を記憶する記憶手段と、c、クロック信号に基づいて前
    記記憶手段から順次読み出されたパターンデータと前記
    和音指定手段で指定された和音とに基づいて和音の構成
    音を発生する楽音発生手段と、 d、前記読み出されたパターンデータが和音のタイ表現
    発生を指示しているとき、前記楽音発生手段において現
    在発生されている和音の構成音のうち前記楽音発生手段
    において新たに発生すべき和音の構成音と同一音高の音
    を検出して検出した音についてはその発生をそのまま継
    続させる発音制御手段と を具備していることを特徴とする自動伴奏装置。
JP62333220A 1987-12-29 1987-12-29 自動伴奏装置 Expired - Fee Related JPH067331B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP62333220A JPH067331B2 (ja) 1987-12-29 1987-12-29 自動伴奏装置
US07/291,110 US4939974A (en) 1987-12-29 1988-12-28 Automatic accompaniment apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62333220A JPH067331B2 (ja) 1987-12-29 1987-12-29 自動伴奏装置

Publications (2)

Publication Number Publication Date
JPH01177089A true JPH01177089A (ja) 1989-07-13
JPH067331B2 JPH067331B2 (ja) 1994-01-26

Family

ID=18263659

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62333220A Expired - Fee Related JPH067331B2 (ja) 1987-12-29 1987-12-29 自動伴奏装置

Country Status (1)

Country Link
JP (1) JPH067331B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0764561A (ja) * 1993-08-26 1995-03-10 Yamaha Corp 電子楽器
JPH0869285A (ja) * 1994-06-09 1996-03-12 Lg Electron Inc 電子楽器自動伴奏時のコード変化処理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0764561A (ja) * 1993-08-26 1995-03-10 Yamaha Corp 電子楽器
JPH0869285A (ja) * 1994-06-09 1996-03-12 Lg Electron Inc 電子楽器自動伴奏時のコード変化処理方法

Also Published As

Publication number Publication date
JPH067331B2 (ja) 1994-01-26

Similar Documents

Publication Publication Date Title
JP2576700B2 (ja) 自動伴奏装置
JPH03126996A (ja) モチーフ演奏装置
JPH0823746B2 (ja) 自動楽音発生装置
JPH01319793A (ja) 演奏情報処理装置の割込処理制御部
JPH09179559A (ja) 自動伴奏装置及び自動伴奏方法
JPH01179090A (ja) 自動伴奏装置
JPH01177089A (ja) 自動伴奏装置
JP2536596B2 (ja) 電子楽器
JPH01177087A (ja) 自動伴奏装置
JPS6028359B2 (ja) 電子楽器
JP3141448B2 (ja) 自動伴奏装置
JP3296182B2 (ja) 自動伴奏装置
JPS61292689A (ja) 自動伴奏装置付き電子楽器
JPS6116992B2 (ja)
JP2848322B2 (ja) 自動伴奏装置
JPH0320794A (ja) 電子楽器
JP3289037B2 (ja) モチーフ演奏装置及びモチーフ演奏方法
JP3082294B2 (ja) 伴奏音信号形成装置
JPH01177088A (ja) 自動伴奏装置
JPH05188961A (ja) 自動伴奏装置
JPS5818695A (ja) 電子楽器の自動伴奏装置
JP3120806B2 (ja) 自動伴奏装置
JP3171436B2 (ja) 自動伴奏装置
JPH0774952B2 (ja) 電子楽器
JP3314079B2 (ja) モチーフ演奏装置及びモチーフ演奏方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees