JPH0895566A - 自動伴奏装置 - Google Patents

自動伴奏装置

Info

Publication number
JPH0895566A
JPH0895566A JP6257516A JP25751694A JPH0895566A JP H0895566 A JPH0895566 A JP H0895566A JP 6257516 A JP6257516 A JP 6257516A JP 25751694 A JP25751694 A JP 25751694A JP H0895566 A JPH0895566 A JP H0895566A
Authority
JP
Japan
Prior art keywords
pattern
key
data
note
processing
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
JP6257516A
Other languages
English (en)
Other versions
JP3596048B2 (ja
Inventor
Shigehiko Mizuno
成彦 水野
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 JP25751694A priority Critical patent/JP3596048B2/ja
Publication of JPH0895566A publication Critical patent/JPH0895566A/ja
Application granted granted Critical
Publication of JP3596048B2 publication Critical patent/JP3596048B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 自動リズム演奏やその他の自動伴奏のために
適用可能な自動伴奏装置に関し、特に伴奏パターンの変
更を容易に行えるようにする。 【構成】 この発明に従う自動伴奏装置は、伴奏パター
ンデータを記憶した記憶手段と、それぞれ前記伴奏パタ
ーンに対して与える変形を示す複数の形容詞を指定する
指定手段と、前記複数の形容詞に対応した変形アルゴリ
ズムを実行して、前記伴奏パターンを変形させ、各形容
詞に対応した変形済みパターンを作成する変形パターン
作成手段と、前記指定手段により形容詞の指定があった
とき、前記変形パターン作成手段によって作成された複
数の変形済みパターンの中から指定された形容詞に一致
するパターンを選択し、それまでの伴奏パターンと差し
替えるパターン変更手段と、伴奏パターンに従って自動
伴奏を行う伴奏手段とを備え、自動伴奏が実行されてい
るとき、指定手段によって複数の形容詞のうちの何れか
の形容詞が指定されると、該指定された形容詞に対応す
る変形済みパターンが選択され、それまでの伴奏パター
ンと差し替えられる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、自動リズム演奏やそ
の他の自動伴奏のために適用可能な自動伴奏装置に関
し、特に自動伴奏パターンの変更を容易に行えるように
したものに関する。
【0002】
【従来の技術】ユーザーの望みの自動伴奏パターンを得
るための、従来の自動伴奏装置における典型例は、複数
の伴奏パターンを予めメモリに記憶しておき、その中の
いずれかを選択するやり方である。しかし、そのやり方
では、選択可能なパターンが限られてしまうという欠点
が有る。すなわち、予め記憶された伴奏パターンの中か
らいずれかを選択するタイプの自動伴奏装置では、記憶
可能な伴奏パターンの数に限界があるため、ユーザーが
欲しいと思う伴奏パターンに最も近いものを選択するこ
とができるだけであり、ユーザーが真に欲する伴奏パタ
ーンを得られないことが多い。
【0003】それに対して、ユーザーの望みに従って全
く自由に自動伴奏パターンを作成できるようにするやり
方としては、電子楽器等の鍵盤をユーザーが任意に手弾
き演奏(押鍵)することにより、望みの伴奏パターンを
作成し、これをメモリに記憶するようにしたものがあ
る。こうしてメモリに記憶した伴奏パターンを読出し再
生することによって自動伴奏を行うことができる。ま
た、リズム演奏パターンの作成を比較的容易にするもの
として、個々の打楽器音源毎に複数のパターンを予め記
憶しておき、各打楽器音源毎に夫々所望の1つのパター
ンを選択することにより、それらの組合せによって全体
として望みのリズム演奏パターンを得るようにしたもの
もある。
【0004】
【発明が解決しようとする課題】前者の手弾き演奏を利
用するやり方では、ユーザー自身が音楽に関する知識や
演奏技術を有していないと、適切な伴奏パターンを作成
することができないという問題があり、またユーザーが
知識や演奏技術等を有していたとしても、その作成作業
自体に多くの手間を要し、望みの伴奏パターンの作成を
非常に困難なものにしていた。後者のパターンを利用す
るやり方では、打楽器音源の選択操作と望みのパターン
を選択するための選択操作を別々に行わねばならないと
いう面倒がある、また、操作性が悪い、また、組合せに
よって得られる演奏パターンのバリエーションに限度が
有る、など解決されるべき問題点が有った。また、メモ
リに記憶したパターンの中からしか選択することができ
ないので、自由な伴奏パターンの作成を行うことができ
ないものであった。この発明は上述の点に鑑みてなされ
たもので、伴奏パターンの作成や変更を容易に行えるよ
うにすると共に、複雑なパターンであっても容易な作成
や変更を可能にした自動伴奏装置を提供しようとするも
のである。
【0005】
【課題を解決するための手段】この目的を達成するため
に、この発明に従う自動伴奏装置は、伴奏パターンデー
タを記憶した記憶手段と、それぞれ前記伴奏パターンに
対して与える変形を示す複数の形容詞を指定する指定手
段と、前記複数の形容詞に対応した変形アルゴリズムを
実行して、前記伴奏パターンを変形させ、各形容詞に対
応した変形済みパターンを作成する変形パターン作成手
段と、前記指定手段により形容詞の指定があったとき、
前記変形パターン作成手段によって作成された複数の変
形済みパターンの中から指定された形容詞に一致するパ
ターンを選択し、それまでの伴奏パターンと差し替える
パターン変更手段と、伴奏パターンに従って自動伴奏を
行う伴奏手段とを備えたものである。
【0006】
【作用】記憶されてる伴奏パターンにもとづいて、変形
パターン作成手段によって複数の形容詞に対応する変形
済みパターンがそれぞれ作成される。伴奏手段によっ
て、伴奏パターンに従った自動伴奏が実行されていると
き、指定手段によって複数の形容詞のうちの何れかの形
容詞が指定されると、該指定された形容詞に対応する変
形済みパターンが選択され、それまでの伴奏パターンと
差し替えられる。
【0007】
【実施例】以下、この発明の実施例を添付図面に従って
詳細に説明する。図2は鍵盤及び音源回路を内蔵した電
子楽器1Fと、伴奏パターンのエディット処理、及び電
子楽器1Fへ伴奏パターンに基づくデータを出力する処
理を行うパソコン20との詳細構成及び両者間の接続関
係を示すハードブロック図である。まず、電子楽器1F
の構成について説明する。マイクロプロセッサユニット
(CPU)11は、この電子楽器1Fの動作を制御する
ものである。このCPU11に対して、バス1Eを介し
てROM12、RAM13、押鍵検出回路14、スイッ
チ検出回路15、表示回路16、音源回路17、サウン
ドシステム18、タイマ19及びMIDIインターフェ
イス(I/F)1Dがそれぞれ接続されている。
【0008】この実施例ではCPU11によって押鍵検
出処理や演奏データ(ノートデータ)の送受信処理及び
発音処理等を行う電子楽器について説明するが、押鍵検
出回路14からなるモジュールや音源回路17からなる
モジュールとがそれぞれ別々に構成され、各モジュール
間のデータの授受をMIDIインターフェイスで行うよ
うに構成されたものにも同様に適用できる。ROM12
はCPU11の各種プログラムや各種データを格納する
ものであり、リードオンリーメモリ(ROM)で構成さ
れている。RAM13は、演奏情報やCPU11がプロ
グラムを実行する際に発生する各種データを一時的に記
憶するものであり、ランダムアクセスメモリ(RAM)
の所定のアドレス領域がそれぞれ割り当てられ、レジス
タ及びフラグとして利用される。
【0009】鍵盤1Aは、発音すべき楽音の音高を選択
するための複数の鍵を備えており、各鍵に対応してキー
スイッチを有しており、また必要に応じて押鍵速度検出
装置や押圧力検出装置等のタッチ検出手段を有してい
る。鍵盤1Aは音楽演奏のための基本的な操作子であ
り、これ以外の演奏操作子、例えばドラムパッド等でも
よいことはいうまでもない。
【0010】押鍵検出回路14は、発生すべき楽音の音
高を指定する鍵盤1Aのそれぞれの鍵に対応して設けら
れた複数のキースイッチからなる回路を含んで構成され
ており、新たな鍵が押圧されたときはキーオンイベント
情報を出力し、鍵が新たに離鍵されたときはキーオフイ
ベント情報を出力する。また、鍵押し下げ時の押鍵操作
速度又は押圧力等を判別してタッチデータを生成する処
理を行い、生成したタッチデータをベロシティデータと
して出力する。このようにキーオン、キーオフイベント
情報及びベロシティ情報はMIDI規格で表現されてお
りキーコードと割当てチャンネルを示すデータをも含ん
でいる。
【0011】パネルスイッチ1Bは、音色、音量、効果
等を選択・設定・制御するための各種操作子を含むもの
である。パネルスイッチには色々なものがあるが、その
詳細については公知なので説明を省略する。スイッチ検
出回路15は、パネルスイッチ1Bの各操作子の操作状
態を検出し、その操作状態に応じたスイッチ情報を、バ
ス1Eを介してCPU11に出力する。表示回路16は
CPU11の制御状態、設定データの内容等の各種の情
報を表示部1Cに表示するものである。表示部1Cは液
晶表示パネル(LCD)等から構成され、表示回路16
によってその表示動作を制御される。
【0012】音源回路17は、複数のチャンネルで楽音
信号の同時発生が可能であり、バス1Eを経由して与え
られた演奏情報(MIDI規格に準拠したデータ)を入
力し、このデータに基づき楽音信号を発生する。後述す
るように、本電子楽器1Fの音源回路17は各種ドラム
音の楽音信号を発生可能なように構成されているもので
ある。音源回路17における楽音信号発生方式はいかな
るものを用いてもよい。例えば、発生すべき楽音の音高
に対応して変化するアドレスデータに応じて波形メモリ
に記憶した楽音波形サンプル値データを順次読み出すメ
モリ読み出し方式、又は上記アドレスデータを位相角パ
ラメータデータとして所定の周波数変調演算を実行して
楽音波形サンプル値データを求めるFM方式、あるいは
上記アドレスデータを位相角パラメータデータとして所
定の振幅変調演算を実行して楽音波形サンプル値データ
を求めるAM方式等の公知の方式を適宜採用してもよ
い。
【0013】音源回路17から発生された楽音信号は、
図示しないアンプ及びスピーカからなるサウンドシステ
ム18を介して発音される。タイマ19は時間間隔を計
数したりするためのクロックパルスを発生するものであ
り、このクロックパルスはCPU11に対してインタラ
プト命令として与えられるので、CPU11はインタラ
プト処理により各種処理を実行する。
【0014】MIDIインターフェイス(I/F)1D
は電子楽器1Fのバス1Eとパソコン20のMIDIイ
ンターフェイス(I/F)2Cとの間を接続し、MID
Iインターフェイス2Cはパソコン20のバス2DとM
IDIインターフェイス1Dとの間を接続している。従
って、電子楽器19のバス1Eとパソコン20のバス2
Dとの間は、MIDIインターフェイス1D及び2Cを
介して接続され、両者の間では、MIDI規格に準拠し
たデータのやり取りが双方向で行えるようになってい
る。
【0015】次に、パソコン20の構成について説明す
る。マイクロプロセッサユニット(CPU)21は、こ
のパソコン20の動作を制御するものである。このCP
U21に対して、バス2Dを介してROM22、RAM
23、ハードディスク装置24、ディスプレイインター
フェイス(I/F)25、マウスインターフェイス(M
OUSE I/F)26、スイッチ検出回路27、タイ
マ28及びMIDIインターフェイス2Cがそれぞれ接
続されている。
【0016】ROM22はCPU21の各種プログラム
や各種データや各種記号文字等のデータを格納するもの
であり、リードオンリーメモリ(ROM)で構成されて
いる。RAM23は、CPU21がプログラムを実行す
る際に発生する各種データを一時的に記憶するものであ
り、ランダムアクセスメモリ(RAM)で構成されてい
る。なお、この実施例では、RAM23の所定領域が図
3に示すようなカレントパターンメモリ領域、アサイン
メモリ領域、アンドゥバッファ領域、退避メモリ領域及
びパターンテーブル領域に割り当てられている。
【0017】カレントパターンメモリ領域は、自動伴奏
時に読み出されるリズムパターンを記憶する領域であ
る。アサインメモリ領域は、エディット処理やトランス
フォーマー処理によって新たに作成されたリズムパター
ンを記憶する領域である。アンドゥバッファ領域は、ト
ランスフォーマー処理によって変形されたリズムパター
ンを一時的に記憶する領域である。退避メモリ領域は、
フィルインを挿入するときにそれまでのカレントパター
ンを保存したり、データベースからコンポーネントのリ
ズムパターンを読み出す時、前に存在していたコンポー
ネントのリズムパターンを一時的に保存する領域であ
る。
【0018】パターンテーブル領域は、データベース
(ハードディスク装置24)に記憶されているリズムパ
ターンのアドレスとリズムパターンの複雑度を示すデー
タを、その複雑度の小さい順序をアドレスとして記憶す
る領域である。すなわち、パターンテーブル領域はリズ
ムパターンを複雑度の小さい順序に並び替えた場合に、
その順序アドレスをデータベース上のアドレスに変換す
るためのアドレス変換用のパターンテーブルを記憶する
領域である。このパターンテーブルの詳細については後
述する。
【0019】ハードディスク装置24は、パソコン20
の外部記憶装置であり、数十〜数百メガバイト(MB)
の記憶容量を有する。この実施例では、ハードディスク
装置24は、リズムパターンのデータベースとして利用
され、図3に示すようなそれぞれ異なる音楽スタイル
(ジャンル)のパターンを記憶するために3つのバンク
A,B,Cに分割にされている。
【0020】この実施例では、バンクAには各ドラム音
のコンポーネントに対応したロック音楽専用の複数のリ
ズムパターンが記憶され、バンクBには各ドラム音のコ
ンポーネントに対応したディスコ音楽専用の複数のリズ
ムパターンが記憶され、バンクCには各ドラム音のコン
ポーネントに対応したロック及びディスコ音楽に共通の
複数のリズムパターンが記憶されている。各バンクに記
憶されている複数のリズムパターンを特定するための先
頭アドレスが、前述のパターンテーブル領域に単純なも
のから複雑なものへと、その複雑さの度合いに従った順
序をアドレスとして順番に記憶されている。
【0021】例えば、バスドラム(BD)とスネアドラ
ム(SD)とからなるコンポーネントに対しては、BD
+SDパターン1、BD+SDパターン2、・・・のよ
うにパターン番号に従ってより複雑なリズムパターンと
なっている。同様に、タムタムのハイ、ミドル及びロー
(TomH、TomM、TomL)からなるコンポーネ
ントに対してもTomH+TomM+TomLパターン
1、TomH+TomM+TomLパターン2、・・・
のようにパターン番号に従ってより複雑なリズムパター
ンとなっている。
【0022】図4は、パターンテーブル領域に記憶され
ているアドレス変換用のパターンテーブルの内容を示す
図である。図では、ロック音楽用パターンテーブルとデ
ィスコ音楽用パターンテーブルが示してある。ロック音
楽用パターンテーブルは、バンクA及びCに記憶されて
いる複数のリズムパターンを特定するための先頭アドレ
スA−1,A−2,A−3,C−1,A−4,C−2,
・・・,A−nを、そのリズムパターンの持つ複雑さの
度合い(複雑度の大きさ)に従った順番1,2,3,・
・・,nに記憶している。一方、ディスコ音楽用パター
ンテーブルは、バンクB及びCに記憶されている複数の
リズムパターンを特定するための先頭アドレスB−1,
B−2,C−1,B−3,C−2,C−3,・・・,B
−nを、そのリズムパターンの持つ複雑さの度合い(複
雑度の大きさ)に従った順番1,2,3,・・・,nに
記憶している。
【0023】ここで、先頭アドレスのA、B又はCは、
そのリズムパターンの記憶されているバンクの種類を示
す。すなわち、先頭アドレスA−1,A−2,A−3,
A−4,A−nはバンクAのアドレスを示し、先頭アド
レスB−1,B−2,B−3,B−nはバンクBのアド
レスを示し、先頭アドレスC−1,C−2,C−3はバ
ンクCのアドレスを示す。
【0024】複雑度はリズムパターンを所定の規則に応
じて『0〜100』の値に数値化したものを用いる。所
定の規則として、例えば、リズムパターン中に含まれる
音の数、リズムパターン中のノートイベントデータが存
在するタイミングの数、リズムパターンの前半に含まれ
る音の数と後半に含まれる音の数との差、又はあるタイ
ミング(例えば、一拍目、三拍目、8分の裏拍等)にお
けるイベントの出現数等を、そのまま複雑度としたり、
これらの規則をユーザーが任意に選択し適宜組み合わせ
たものや、これらを総合的に判断したものを複雑度とす
る。また、ユーザーが任意にリズムパターンを並び替え
ることができるようにしてもよい。
【0025】ロック音楽用パターンテーブルでは、アド
レス『1』には、複雑度の最も小さい『5』のロック音
楽専用のリズムパターンがデータベース上の先頭アドレ
ス『A−1』に記憶されていることを示している。以
下、同様に、アドレス『2』には複雑度『7』のロック
音楽専用のリズムパターンがデータベース上の先頭アド
レス『A−2』に、アドレス『3』には複雑度『10』
のロック音楽専用のリズムパターンがデータベース上の
先頭アドレス『A−3』に、アドレス『4』には複雑度
『11』のロック及びディスコ音楽共通のリズムパター
ンがデータベース上の先頭アドレス『C−1』に、アド
レス『5』には複雑度『16』のロック音楽専用のリズ
ムパターンがデータベース上の先頭アドレス『A−4』
に、アドレス『6』には複雑度『20』のロック及びデ
ィスコ音楽共通のリズムパターンがデータベース上の先
頭アドレス『C−2』に、アドレス『n』には複雑度の
最も高い『95』のロック音楽専用のリズムパターンが
データベース上の先頭アドレス『A−n』に、それぞれ
記憶されていることを示している。
【0026】ディスコ音楽用のパターンテーブルでは、
アドレス『1』には、複雑度が最も小さい『10』のデ
ィスコ音楽専用のリズムパターンがデータベース上の先
頭アドレス『B−1』に記憶されていることを示してい
る。以下、同様に、アドレス『2』には複雑度『14』
のディスコ音楽専用のリズムパターンがデータベース上
の先頭アドレス『B−2』に、アドレス『3』には複雑
度『22』のロック及びディスコ音楽共通のリズムパタ
ーンがデータベース上の先頭アドレス『C−1』に、ア
ドレス『4』には複雑度『25』のディスコ音楽専用の
リズムパターンがデータベース上の先頭アドレス『B−
3』に、アドレス『5』には複雑度『26』のロック及
びディスコ音楽共通のリズムパターンがデータベース上
の先頭アドレス『C−2』に、アドレス『6』には複雑
度『30』のロック及びディスコ音楽共通のリズムパタ
ーンがデータベース上の先頭アドレス『C−3』に、ア
ドレス『n』には複雑度の最も高い『91』のディスコ
音楽専用のリズムパターンがデータベース上の先頭アド
レス『B−n』に、それぞれ記憶されていることを示し
ている。
【0027】なお、バンクCのリズムパターンはロック
音楽及びディスコ音楽に共通するので、ロック音楽用パ
ターンテーブルとディスコ音楽用パターンテーブルの両
方に存在する。例えば、図4のパターンテーブルの中で
は、先頭アドレス『C−1』及び『C−2』のリズムパ
ターンがロック音楽用パターンテーブルとディスコ音楽
用パターンテーブルの両方に存在する。図4では、同じ
リズムパターンでありながら、その複雑度が異なるの
は、前述したように複雑度を求める所定の規則がロック
音楽用パターンテーブルとディスコ音楽用パターンテー
ブルとでそれぞれ異なっているからである。また、各バ
ンクA,B,Cには、図3に示すようにリアルタイム演
奏を意識したフィルインパターンやその他の楽器のパタ
ーン等も記憶されているので、カレントパターンに代え
て一時的にフィルインパターンを挿入して演奏できるよ
うになっている。
【0028】各バンクA,B,Cに記憶されているリズ
ムパターンの内容は、図3に示すように、イベントの発
生タイミングを示すタイミングデータと、そのイベント
の種類を示すノートイベントデータとの組み合わせから
なる演奏データを相対時間方式で順次記憶することによ
って構成されている。なお、ここではノートイベントデ
ータは、MIDIのノートオンメッセージに対応した形
式で記憶されており、3バイトのデータからなる。ま
た、タイミングデータは、各ノートイベントの発生間隔
をクロック数で表わしたものである。その他、ハードデ
ィスク装置24には、バリエーションパターン1及び2
として、トランスフォーマーの形容詞を指示するための
シーケンスデータが2種類記憶されている。すなわち、
図3に示すようにバリエーション1,2は形容詞1、形
容詞2、形容詞3及び形容詞4を順番に記憶したシーケ
ンシャルデータで構成されている。
【0029】なお、図示していないが、ハードディスク
装置24に対するアクセスタイムを大幅に短縮するため
に、数メガバイト程度のキャッシュメモリ(RAM)を
設けたり、RAM23とハードディスク装置24との間
におけるデータ転送の負担を軽減するために、DMA装
置を設けたりしてもよいことはいうまでもない。
【0030】ディスプレイ29は、パソコン20内部で
演算処理されたデータ等をディスプレイインターフェイ
ス(I/F)を介して入力し、これらのデータを視覚的
に認識可能なように表示するものであり、通常のCRT
やLCD等で構成される。
【0031】図5は、ディスプレイ29の表示例を示す
図である。ディスプレイ29は、現在どのコンポーネン
トが選択されているのか示すと共にそれが複雑度でどの
レベルに位置するのかを示すために、選択されたコンポ
ーネントのリズムパターンの複雑度を選択パターンの項
に表示している。従って、選択パターンの項に複雑度が
表示されているコンポーネントは現在選択されており、
何も表示されていないコンポーネントは選択されていな
いことを意味する。また、選択パターンの項に表示され
た複雑度の大きさに応じてそのリズムパターンが複雑度
でどのレベルに位置するのかを示す。
【0032】例えば、図5(A)では、バスドラム(B
D)とスネアドラム(SD)とからなるコンポーネント
BD+SDに関しては、複雑度『80』のリズムパター
ンが選択されていることが示されている。タムタムのコ
ンポーネントTomに関しては、複雑度『20』のリズ
ムパターンが選択されていることが示されている。ハイ
ハットのコンポーネントHHに関しては、複雑度『4
5』のリズムパターンが選択されていることが示されて
いる。シンバルのコンポーネントCYに関しては、複雑
度の表示がないので、何も選択されていないことが示さ
れている。以下、同様にして、そのコンポーネントが選
択されているかどうかが、選択パターンの項に複雑度が
表示されているかどうかで容易に判別できるようになっ
ている。また、選択パターンの項に表示された複雑度の
大きさに応じてそのリズムパターンが複雑度でどのレベ
ルに位置するのかを容易に認識することができる。
【0033】図5(A)では、複雑度を直接数値表示す
る場合について示してあるが、これに限らず、図5
(B)のように複雑度を棒グラフ等の図形で表示しても
よい。このように図形表示することよって、そのコンポ
ーネントが選択されているのかどうかが容易に認識でき
ると共に複雑度における位置づけを感覚的に認識するこ
とができる。
【0034】なお、上述のようにリズムパターンを複雑
度で位置づけする場合に限らず、複雑度以外の要素(例
えば、激しさ、ノリの良さ等)で位置づけしてもよい。
また、これらの要素を複数組み合わせて、2次元、3次
元、又は多次元的に表示してもよい。多次元的に表示す
る場合には、レーダーチャートのような図形表示が有効
である。
【0035】マウス2Aは、ディスプレイ29上の座標
点を入力するポインティングデバイスの一種あり、その
出力はマウスインターフェイス(MOUSE I/F)
26及びバス2Dを介してCPU21に取り込まれる。
パネルスイッチ2Bは、パソコン20にプログラムやデ
ータ等を入力するためのキーボードであり、テンキーや
ファンクションキー等を備えたものである。
【0036】スイッチ検出回路27は、パネルスイッチ
2Bのキー操作状態を検出し、その操作状態に応じたキ
ー情報をバス2Dを介してCPU21に出力する。タイ
マ28は時間間隔を計数したり、パソコン20全体の動
作クロックを発生するものである。パソコン20はこの
動作クロックを所定数だけ計数することによって所定時
間の計時を行い、それに応じたインタラプト処理を行
う。例えば、この所定数を自動伴奏のテンポに応じた値
とすることで、パソコン20によって自動伴奏の処理を
実行するようにしている。
【0037】この実施例では、鍵盤1Aの押鍵状態に対
応したノートナンバをMIDIインターフェイス1D及
び2Cを介してパソコン20のCPU21に送信するこ
とによって、パソコン20のマウス2Aやパネルスイッ
チ2B以外にパソコン20の各種機能を選択設定制御す
る操作子として、電子楽器1Fの鍵盤1Aの各鍵が動作
するようになっている。
【0038】図6は、鍵盤1Aに割り当てられた各種機
能の一例を示す図である。図において、鍵盤1Aは全部
で61個の鍵で構成され、パターンアサインエリア、操
作子エリア及びドラムパターンエリアに分割されてい
る。ノートナンバE0〜B1のキーがパターンアサイン
エリアを構成し、ノートナンバC2〜G#3のキーが操
作子エリアを構成し、ノートナンバA3〜E5のキーが
ドラムパターンエリアを構成する。
【0039】ノートナンバE0〜B1のキーは、エディ
ット処理やトランスフォーマー処理によって作成された
リズムパターンを新たなリズムパターンとして記憶する
ためのアサインメモリ領域に対応したアドレスを発生す
る。すなわち、RAM23のアサインメモリ領域は全部
で20個のアドレスを有したアサインメモリ管理領域
と、20個のパターンを格納可能なパターン記憶領域と
から成り、アサイン管理領域の一つ一つのアドレスがノ
ートナンバE0〜B1に対応している。例えば、ノート
ナンバE0はアサインメモリ管理領域の第1のアドレス
に対応し、ノートナンバF0は第2のアドレスに対応
し、以下同様にしてノートナンバF#0〜B1がアサイ
ンメモリ管理領域の第3から第20のアドレスにそれぞ
れ対応している。そして、各アドレスには各パターン記
憶領域の先頭アドレス値が記憶されている。
【0040】ノートナンバC2〜G#3のキーは、エデ
ィット処理やトランスフォーマー処理を行うための各種
操作子として機能する。従って、ノートナンバC2〜G
#3がそのまま各鍵に割り当てられた操作子機能を表す
キー情報となる。
【0041】具体的には、ノートナンバC2のキーがア
サインキー、ノートナンバD2、E2、F2、G2及び
A2のキーがトランスフォーマー1〜5の指定キー、ノ
ートナンバB2のキーがアンドゥ指定キー、ノートナン
バC3のキーがスタート/ストップ指定キー、ノートナ
ンバD3、E3及びF3のキーがバンクA〜Cの指定キ
ー、ノートナンバG3のキーがパターン確定用のロック
キー、ノートナンバC#2及びD#2のキーがバリエー
ション1、2の指定キー、ノートナンバF#2のキーが
リプレース入力キー、ノートナンバG#2のキーがイン
サート入力キー、ノートナンバA#2のキーがクォンタ
イズ処理指定キー、ノートナンバC#3のキーがデリー
トドラム指示キー、ノートナンバD#3のキーがデリー
トコンポーネント指示キー、ノートナンバF#3のキー
がアクセント入力キー、ノートナンバG#3のキーがフ
ィルイン指定キーにそれぞれ対応している。これら各キ
ーの操作に応じた処理内容の詳細については後述する。
【0042】ドラムパターンエリアのノートナンバA3
〜E5のキーは、ドラム音の指定キーとして機能する。
従って、ノートナンバC2〜G#3がそのまま各鍵に割
り当てられたドラム音の種類を表すドラム音情報とな
る。
【0043】具体的には、ノートナンバA3のキーがバ
スドラム(BD)、ノートナンバA#3のキーがスネア
ドラム(SD)、ノートナンバB3のキーがタムタムの
ハイ(Tom H)、ノートナンバC4のキーがタムタ
ムのロー(Tom L)、ノートナンバC#4のキーが
タムタムのミドル(Tom M)、ノートナンバD4の
キーがコンガのハイ(Conga H)、ノートナンバ
E4のキーがコンガのロー(Conga L)、ノート
ナンバD#4のキーがティンバレ(Timb)、ノート
ナンバF4のキーがテンプルブロックのロー(TB
L)、ノートナンバF#4のキーがテンプルブロックの
ハイ(TB H)、ノートナンバG4のキーがハイハッ
トのクローズ(HHC)、ノートナンバA4のキーがハ
イハットのオープン(HHO)、ノートナンバG#4の
キーがタンブリン(Tamb)、ノートナンバA#4の
キーがクラベス(Clave)、ノートナンバB4のキ
ーがカウベル(Cowbell)、ノートナンバC5の
キーがアゴゥゴゥのハイ(Agogo H)、ノートナ
ンバC#5のキーがアゴゥゴゥのロー(Agogo
L)、ノートナンバD5のキーがハンドクラップス(C
laps)、ノートナンバD#5のキーがクラッシュシ
ンバル(Crash CY)、ノートナンバE5のキー
がライドシンバル(Ride CY)のドラム音にそれ
ぞれ対応している。
【0044】上述の各ドラム音は単独で指定することも
可能であるが、この実施例では、複数のドラム音をその
演奏形態に応じてグループ化したコンポーネントとして
利用している。従って、このコンポーネントを構成する
ドラム音は1又は複数である。ここで、コンポーネント
が複数のドラム音から構成される場合には、これらの間
には演奏形態に共通性(音楽的な関連)が存在すること
が必要である。例えば、バスドラム(BD)とスネアド
ラム(SD)とが、タムタムのハイ(TomH)とタム
タムのミドル(Tom M)とタムタムのロー(Tom
L)とが、コンガのハイ(Conga H)とコンガ
のロー(Conga L)とティンバレ(Timb)と
が、テンプルブロックのハイ(TB H)とテンプルブ
ロックのロー(TB L)とが、ハイハットのオープン
(HHO)とハイハットのクローズ(HHC)とが、ア
ゴゥゴゥのハイ(Agogo H)とアゴゥゴゥのロー
(Agogo L)とが、それぞれ1つのコンポーネン
トを構成する。従って、タンブリン(Tamb)、クラ
ベス(Clave)、カウベル(Cowbell)、ハ
ンドクラップス(Claps)、クラッシュシンバル
(Crash CY)及びライドシンバル(Ride
CY)のドラム音は単独扱いのコンポーネントとなる。
【0045】但し、タンブリン(Tamb)とクラベス
(Clave)とを、カウベル(Cowbell)とハ
ンドクラップス(Claps)とを、クラッシュシンバ
ル(Crash CY)とライドシンバル(Ride
CY)とを、それぞれ1つのコンポーネントとして扱っ
てもよいことはいうまでもない。また、これ以外の組合
せでもよい。
【0046】図1は、図2の電子楽器1F及びパソコン
20が伴奏パターン作成装置として動作する場合の機能
ブロックを示す図である。図1の伴奏パターン作成装置
はカレントパターンメモリ1を中心に動作する。パソコ
ン20は、カレントパターンメモリ1からカレントパタ
ーンを読み出しながら自動伴奏処理を行うようになって
いる。
【0047】カレントパターンメモリ1、アサインメモ
リ2、アンドゥバッファ3、退避メモリ4及びパターン
テーブル63は、図3に示されたRAM23の所定領域
がそれぞれ対応する。データベース手段5は、図2のハ
ードディスク装置24に対応する。データベース手段5
は図3のように多数のリズムパターンデータを記憶して
いる。パターンセレクタ61は、図2の鍵盤1Aのノー
トナンバA3、A#3、B3、・・・、E5のドラムパ
ターンエリアの各指定キーと、鍵盤1Aのノートナンバ
D3、E3及びF3のバンクA,B,Cの指定キーとが
それぞれ対応する。
【0048】従って、この伴奏パターン作成装置は、パ
ターンセレクタ61によってデータベース手段5内のコ
ンポーネントが適宜選択されると、それに対応したリズ
ムパターンデータをデータベース手段5から読み出し
て、カレントパターンメモリ1に供給する。この実施例
では、コンポーネントの選択は、パターンセレクタ61
すなわち鍵盤1Aの操作によって行われ、鍵盤1Aの操
作によって発生したノートナンバに対応したコンポーネ
ントが指定される。この時、各コンポーネント中のリズ
ムパターンは複数存在するので、指定されたコンポーネ
ントのどのリズムパターンデータを読み出すかは、鍵盤
1Aの操作時におけるベロシティデータによって行う。
【0049】すなわち、データベース手段5内の各バン
クA,B,Cを構成する各リズムパターンデータの先頭
アドレスは、図4のようにリズムパターンの複雑度に応
じた順番をアドレスとしてパターンテーブル63に記録
されている。そこで、パターンセレクタ61の操作時に
おけるベロシティデータをパターンテーブル63のアド
レスに対応付けることによって、パターンテーブル63
からはベロシティデータの大きさに応じて複雑度のそれ
ぞれ異なるリズムパターンデータの先頭アドレスがパタ
ーンセレクタ61に供給される。パターンセレクタ61
は、データベース手段5の該先頭アドレスによって指定
されたアドレスに記憶されているリズムパターンデータ
を読み出して、カレントパターンメモリ1に供給する。
データベース手段5から読み出されたリズムパターンデ
ータはカレントパターンメモリ1内にカレントパターン
として格納される。格納されたカレントパターンの内容
はエディット手段7やトランスフォーマー9によって種
々の変更が施される。
【0050】エディット手段7は、図2の鍵盤1Aのノ
ートナンバF#2のリプレース入力キー、ノートナンバ
G#2のインサート入力キー、ノートナンバA#2のク
ォンタイズ処理指定キー、ノートナンバC#3のデリー
トドラム指示キー、ノートナンバD#3のデリートコン
ポーネント指示キー、ノートナンバF#3のアクセント
入力キーに対応する。
【0051】ここで、リプレース入力とはカレントパタ
ーンの元のノートイベントデータを消去し、新たなノー
トイベントデータのみを記憶することをいう。インサー
ト入力とはカレントパターンの元のノートイベントデー
タに新たなノートイベントデータを追加して記憶するこ
とをいう。クォンタイズとはノートイベントの発生タイ
ミングを基準タイミングにジャストフィットさせること
をいう。アクセントとはカレントパターン内のドラム音
で、操作された鍵盤に対応するドラム音にアクセントを
付けなおすことをいう。デリートドラムとはカレントパ
ターン内のドラム音であって、操作された鍵盤に対応す
るドラム音だけを消去することをいう。デリートコンポ
ーネントとはカレントパターン内のドラム音であって、
操作した鍵盤に対応するコンポーネントのドラム音を全
て消去することをいう。
【0052】形容詞指示手段8は、図2の鍵盤1Aのノ
ートナンバD2,E2,F2,G2,A2のトランスフ
ォーマー指定キーに対応する。トランスフォーマー9
は、図2のROM22内に格納されているトランスフォ
ーマー用プログラムに対応する。カレントパターンの内
容はこのトランスフォーマー指定キーに対応する形容詞
指示手段8で指示された形容詞に応じて変形処理され
る。このトランスフォーマー9は感覚的な形容詞の指示
をするだけで思い通りのイメージに沿ったパターンを作
成する。
【0053】アンドゥ手段10は、図2の鍵盤1Aのノ
ートナンバB2のアンドゥキーに対応する。トランスフ
ォーマー9によって変形されたパターンはアンドゥバッ
ファ3に保存されるので、変形の結果、思い通りのパタ
ーンが得られなかった場合には、元のパターンを呼び戻
すことができるようになっている。すなわち、アンドゥ
バッファ3には変形されたパターンが変形処理順に記憶
されるので、アンドゥバッファ3の内容を順次遡って読
み出すことによって元のパターンを呼び戻すことができ
る。このようにして、新たなパターンの追加や変形によ
って作成されたカレントパターンは、アサインメモリ2
に記憶しておくことが可能であり、アサインメモリ2に
記憶されたパターンはいつでも鍵盤1Aのパターンアサ
インエリアのキーを操作することによって読み出すこと
ができる。
【0054】パターン登録手段62は、図2のパネルス
イッチ2B上のパターン登録用操作子が対応する。パタ
ーン登録手段62は、カレントパターンメモリ1内のカ
レントパターン、すなわちエディット手段7やトランス
フォーマー9よって種々変更の施されたものをデータベ
ース手段5に新たなリズムパターンデータとして新規登
録する。この時、パターン登録手段62は、データベー
ス手段5に新規登録したリズムパターンデータの複雑度
を求め、その複雑度に応じてパターンテーブル63内の
順番を並び替えて、新たなパターンテーブル63を作成
する。
【0055】例えば、図5に示すような複雑度『20』
のタムタムTomのリズムパターンをデータベース手段
5のバンクBのディスコ音楽用パターンテーブルに新た
に登録する場合を想定して、パターンテーブルの並び替
えについて説明する。まず、パターン登録手段62は、
タムタムTomのリズムパターンをデータベース手段5
のアドレス『B−n1』に登録する。そして、パターン
登録手段62は、タムタムTomのリズムパターンの複
雑度を求める。タムタムTomのリズムパターンの複雑
度は『20』なので、パターン登録手段62は、図4に
示すようなディスコ音楽用パターンテーブルのアドレス
『3』以降の先頭アドレス『C−1,B−3,C−2,
C−3,・・・,B−n』をそれぞれ1アドレスずつ後
方に移動し、アドレス『3』の位置にタムタムTomの
リズムパターンの先頭アドレス『B−n1』を新たに記
録する。
【0056】次に、CPU11によって実行される図2
の電子楽器1Fの処理の一例を図7のフローチャートを
用いて説明する。図7(A)は図2の電子楽器1FのC
PU11が処理するメインルーチンの一例を示す図であ
る。まず、電源が投入されると、CPU11はROM1
2に格納されている制御プログラムに応じた処理を開始
する。「イニシャライズ処理」では、RAM13内の各
種レジスタ及びフラグを初期化する。その後に、CPU
11は「キー処理」、「MIDI受信処理」及び「その
他の処理」をイベントの発生に応じて繰り返し実行す
る。
【0057】図7(B)は図7(A)の「キー処理」の
詳細を示す図である。「キー処理」では、鍵盤1Aの操
作状態がキーオン状態かキーオフ状態かを判定し、その
判定結果に応じて、MIDIノートオンメッセージ又は
MIDIノートオフメッセージをMIDIインターフェ
ース1D及び2Cを介してパソコン20に出力する。従
って、この実施例では、鍵盤1Aが操作された場合でも
電子楽器自体の処理すなわち音源回路17を駆動しない
ようにしてある。そのため、キー処理の時点では、音源
回路17は発音処理を行わないようにしてある。
【0058】図7(C)は図7(A)の「MIDI受信
処理」の詳細を示す図である。「MIDI受信処理」で
は、パソコン20からMIDIインターフェース2C及
び1Dを介してMIDIメッセージを入力する毎に実行
する。「MIDI受信処理」では、そのMIDIメッセ
ージがノートオンメッセージかどうかを判定し、ノート
オン(YES)の場合にはそのノートオン信号、ノート
ナンバ及びベロシティデータを音源回路17に供給し、
楽音の発音を音源回路17に行わせる。一方、MIDI
メッセージがノートオン以外(NO)の場合には受信し
たMIDIメッセージに応じた「メッセージ対応処理」
を行った後、図7(A)のメインルーチンにリターンす
る。「その他の処理」では、パネルスイッチ1Bにおけ
るその他の操作子の操作に基づく処理やその他の種々の
処理を行う。
【0059】次に、CPU21によって実行される図2
のパソコン20の処理の一例を図8〜図17のフローチ
ャートを用いて説明する。図8(A)は図2のパソコン
20のCPU21が処理するメインルーチンの一例を示
す図である。まず、電源が投入されると、CPU21は
ROM22に格納されている制御プログラムに応じた処
理を開始する。「イニシャライズ処理」では、RAM2
3内の各種レジスタ及びフラグを初期化する。その後
に、CPU21は「MIDI受信処理」、「表示処理」
及び「その他の処理」を繰り返し実行する。
【0060】図8(B)は図8(A)の「MIDI受信
処理」の詳細を示す図である。「MIDI受信処理」
は、電子楽器1FからMIDIインターフェース1D及
び2Cを介してMIDIメッセージが入力する毎に実行
される。「MIDI受信処理」では、MIDIメッセー
ジがノートオンメッセージかどうかを判定し、ノートオ
ン(YES)の場合にはそのキーオンのノートナンバに
対応した処理(図9〜図12の処理)を実行し、ノート
オフ(NO)の場合にはそのキーオフのノートナンバに
対応した処理(図13の処理)を実行する。
【0061】「表示処理」では、データベース手段5の
どのバンクを処理中であり、演奏しているドラム音の種
類やカレントパターンのどの部分を演奏中であるかをデ
ィスプレイ29に表示するための処理を行う。具体的に
は、図5や図21に示すような画面を表示する。「その
他の処理」では、パネルスイッチ2Bにおけるその他の
操作子の操作に基づく処理やその他の種々の処理を行
う。ここでは、パネルスイッチ2B上のパターン登録用
操作子の操作に応じた図17の「パターン登録処理」を
行う。この「パターン登録処理」の詳細について後述す
る。
【0062】図9〜図12は、受信したMIDIメッセ
ージがノートオンメッセージの場合に実行される図8
(B)のノートオンメッセージのノートナンバに対応し
た処理を示す図である。図9(A)は、鍵盤1Aのノー
トナンバE0〜B1に対応したパターンアサインエリア
のキーが操作されることによって、ノートナンバE0〜
B1を含むMIDIメッセージが電子楽器1Fから受信
された場合に行われるパターンアサインエリアキー処理
を示す図である。このパターンアサインエリアキー処理
では、まずアサインフラグASSIGNがハイレベル
“1”かどうかを判定し、その判定結果に応じた処理を
行う。
【0063】すなわち、アサインフラグASSIGN
は、鍵盤1Aのアサインキー(ノートナンバC2のキ
ー)がキーオン操作された場合に、図9(B)のアサイ
ンキー処理によってハイレベル“1”にセットされ、逆
にキーオフ操作された場合には図13(A)の処理によ
ってローレベル“0”にリセットされる。従って、アサ
インフラグASSIGNがハイレベル“1”(YES)
だと判定された場合は、パターンアサインエリアのキー
とアサインキーとが同時に押されていることを意味する
ので、この場合には、カレントパターンメモリ1内のカ
レントパターンをそのノートナンバに対応したアサイン
メモリ2のアサインメモリ領域にコピーしてリターンす
る。
【0064】一方、アサインフラグASSIGNがロー
レベル“0”(NO)だと判定された場合は、パターン
アサインエリアのキーだけが操作されたことを意味する
ので、この場合には、そのノートナンバに対応したアサ
インメモリ2のアサインメモリ領域に記憶されているリ
ズムパターンをカレントパターンメモリ1にコピーして
リターンする。
【0065】すなわち、アサインキーを押しながらパタ
ーンアサインエリアのキーを操作した場合には、その時
にカレントパターンメモリ1に記憶されているリズムパ
ターンデータがそのパターンアサインエリアのキーに登
録され、パターンアサインエリアのキーだけを単独に操
作した場合には、そのキーに予め登録されているリズム
パターンがカレントパターンメモリ1に呼び出されるこ
ととなる。
【0066】図9(B)は鍵盤1AのノートナンバC2
に対応したアサインキーが操作され、ノートナンバC2
を含むMIDIメッセージが電子楽器1Fから受信され
た場合に行われるアサインキー処理を示す図である。こ
のアサインキー処理では、全フラグをローレベル“0”
にクリアしてからアサインフラグASSIGNにハイレ
ベル“1”をセットしてリターンする。
【0067】図9(C)は鍵盤1AのノートナンバD2
〜A2(#を除く)に対応したトランスフォーマー1〜
5のキーが操作され、ノートナンバD2〜A2(#を除
く)を含むMIDIメッセージが電子楽器1Fから受信
された場合に行われるトランスフォーマーキー処理を示
す図である。ノートナンバD2〜A2(#を除く)を含
むMIDIメッセージが電子楽器1Fから受信されたと
いうことは、トランスフォーマーの形容詞の種類を指示
したことを意味する。従って、このトランスフォーマー
キー処理では、まず、全フラグをローレベル“0”にク
リアし、MIDIメッセージ内のノートナンバ及びベロ
シティデータに応じてトランスフォーマーの形容詞の種
類を決定する。トランスフォーマーの種類が決定したら
トランスフォーマーフラグTRANSにハイレベル
“1”をセットしてリターンする。
【0068】なお、この実施例では、それぞれのトラン
スフォーマー1〜5には、2つの形容詞が割り当てられ
ており、ベロシティデータの大きさに応じていずれか一
方が選択されるようになっている。例えば、トランスフ
ォーマー1には複雑化処理(Complex)と簡単化
処理(Simple)、トランスフォーマー2には硬音
化処理(Hard)と軟音化処理(Soft)、トラン
スフォーマー3には活発化処理(Energetic)
と平静化処理(Calm)、トランスフォーマー4には
無表情化処理(Mechanical)と優美化処理
(Graceful)、トランスフォーマー5にはども
り化処理(Stuttering)と浮動化処理(Fl
oating)がそれぞれ割り当てられている。従っ
て、ベロシティデータの大きさがある所定値以下の場合
には前者が選択され、所定値よりも大きい場合には後者
が選択されるようになっている。トンラスフォーマーフ
ラグTRANSがハイレベル“1”の場合は、トランス
フォーマー9は図16(D)のトランスフォーマーキー
処理を行い、カレントパターンの内容を各トランスフォ
ーマーの形容詞に応じて変更する。
【0069】以下、各形容詞の内容について説明する。
複雑化処理(Complex)とは、次のいずれか一つ
を実行することをいう。複雑化処理の第1は、予め指示
されたテンプレートと呼ばれるパターン原型に基づき、
このテンプレートに対応した3連音符系のリズムパター
ンをデータベース手段5からサーチし、それをカレント
パターンに加えることによって行われる。複雑化処理の
第2は、データベース手段5からランダムにクラッシュ
以外のコンポーネントを構成するドラム音を抽出してカ
レントパターンに加えることによって行われる。
【0070】簡単化処理(Simple)とは次のいず
れか一つを実行することをいう。簡単化処理の第1は、
カレントパターン内のバスドラム(BD)、スネアドラ
ム(SD)のリズムパターンに比べてより基本のリズム
パターンに近いものをデータベース手段5からサーチ
し、それをカレントパターンとすることによって行われ
る。簡単化処理の第2は、カレントパターン内のハイハ
ット(HHC,HHO)のリズムパターンに比べてより
基本のリズムパターンに近いものをデータベース手段5
からサーチし、それをカレントパターンとすることによ
って行われる。簡単化処理の第3は、上記バスドラム
(BD)、スネアドラム(SD)、ハイハット(HH
C,HHO)以外のコンポーネントのリズムパターンを
カレントパターン内から除去することによって行われ
る。
【0071】硬音化処理(Hard)とは次のいずれか
一つを実行することをいう。硬音化処理の第1は、カレ
ントパターン内のリズムパターンの全てのベロシティを
一律に増加させることによって行われる。硬音化処理の
第2は、カレントパターン内のドラム音をソフト用コン
ポーネントからハード用コンポーネントに交換すること
によって行われる。
【0072】ここで、ハード用コンポーネントを構成す
るドラム音は、例えばバスドラム(BD)、スネアドラ
ム(SD)、タムタム(Tom H,Tom M,To
mL)、カウベル(Cowbell)、アゴーゴ(Ag
ogo H,AgogoL)、ハンドクラップス(Cl
aps)、クラッシュ(Crash CY)であり、ソ
フト用コンポーネントを構成するドラム音は、例えばク
ラベス(Clave)、タンバリン(Tamb)、ハイ
ハット(HHC,HHO)、ライド(Ride C
Y)、コンガ(Conga H,Conga L)、ウ
ッドブロック、シェイカーである。なお、この実施例で
は、ウッドブロックとシェイカーのドラム音は、鍵盤1
Aへ割当ててないが、これらのドラム音はソフト用コン
ポーネントを構成するものとして例示した。
【0073】軟音化(Soft)とは次のいずれか一つ
を実行することをいう。軟音化処理の第1は、カレント
パターン内のリズムパターンの全てのベロシティを一律
に減少させることによって行われる。軟音化処理の第2
は、カレントパターン内のドラム音をハード用コンポー
ネントからソフト用コンポーネントに交換することによ
って行われる。
【0074】活発化処理(Energetic)とは次
のいずれか一つを実行することをいう。活発化処理の第
1は、テンプレートに基づいたリズムパターンをカレン
トパターン内で増加させることによって行われる。活発
化処理の第2は、テンポ速度を120程度に近づけるこ
とによって行われる。活発化処理の第3は、カレントパ
ターン内のリズムパターンをテンプレートに基づいて3
連音符系のリズムパターンに近づける(シャッフルす
る)ことによって行われる。
【0075】平静化処理(Calm)とは次のいずれか
一つを実行することをいう。平静化処理の第1は、テン
プレートに基づいたリズムパターンをカレントパターン
内で減少させることによって行われる。平静化処理の第
2は、テンポ速度を60程度に近づけることによって行
われる。平静化処理の第3は、カレントパターン内のリ
ズムパターンをテンプレートに基づいて非3連音符系の
リズムパターンに近づける(ノンシャッフルする)こと
によって行われる。
【0076】無表情化処理(Mechanical)と
は、次のいずれか一つを実行することをいう。無表情化
処理の第1は、テンプレートに基づいてカレントパター
ン内のリズムパターンを16分にクォンタイズすること
によって行われる。無表情化処理の第2は、テンプレー
トに基づいてカレントパターン内のリズムパターンをバ
スドラム(BD)又はスネアドラム(SD)を基本パタ
ーンとした8分にクォンタイズすることによって行われ
る。無表情化処理の第3は、カレントパターン内のドラ
ム音をソフト用コンポーネントからハード用コンポーネ
ントに交換することによって行われる。無表情化処理の
第4は、ベロシティデータを『90』の値を中心とした
値に圧縮処理することによって行われる。
【0077】優美化処理(Graceful)とは、次
のいずれか一つを実行することをいう。優美化処理の第
1は、ベロシティデータを『64』の値を中心として両
側に拡張することによって行われる。優美化処理の第2
は、テンプレートに基づいて3連音符系のリズムパター
ンをカレントパターンに追加することによって行われ
る。優美化処理の第3は、カレントパターン内のドラム
音をハード用コンポーネントからソフト用コンポーネン
トに交換することによって行われる。優美化処理の第4
は、カレントパターン内のドラム音にフラッターを施す
(装飾音を付ける)ことによって行われる。
【0078】どもり化処理(Stuttering)と
は、次のいずれか一つを実行することをいう。どもり化
処理の第1は、テンプレートに基づいて、カレントパタ
ーン内のリズムパターンからダウンビートを消去し、ア
ップビートに変換する(シンコペーション化する)こと
によって行われる。どもり化処理の第2は、テンプレー
トに基づいて3連音符系のリズムパターンをカレントパ
ターンに追加することによって行われる。
【0079】浮動化処理(Floating)とは、次
のいずれか一つを実行することをいう。浮動化処理の第
1は、テンプレートに基づいて、カレントパターン内の
リズムパターンからアップビートを消去し、ダウンビー
トに変換する(非シンコペーション化する)ことによっ
て行われる。浮動化処理の第2は、テンプレートに基づ
いて3連音符系のリズムパターンをカレントパターンか
ら減少させることによって行われる。浮動化処理の第3
は、テンプレートに基づいて12/8の3連音符系のリ
ズムパターンをカレントパターンに追加することによっ
て行われる。浮動化処理の第4は、カレントパターン内
のドラム音をハード用コンポーネントからソフト用コン
ポーネントに交換することによって行われる。浮動化処
理の第5は、テンポ速度を『120』程度に近づけるこ
とによって行われる。
【0080】図9(D)は鍵盤1AのノートナンバB2
に対応したアンドゥキーが操作され、ノートナンバB2
を含むMIDIメッセージが電子楽器1Fから受信され
た場合に行われるアンドゥキー処理を示す図である。こ
のアンドゥキー処理では、全フラグをローレベル“0”
にクリアしてからアンドゥフラグUNDOにハイレベル
“1”をセットしてリターンする。
【0081】アンドゥフラグUNDOがハイレベル
“1”の場合は、アンドゥ手段10は図16(A)のア
ンドゥ処理を行い、アンドゥバッファ3から前のリズム
パターンを読み出しカレントパターンメモリ1にコピー
する。これによって、トランスフォーマー9によるパタ
ーン変更の結果が気に入らない場合には、前回のリズム
パターンに戻すことができる。なお、アンドゥバッファ
3は、全部で20個分のリズムパターンを順番に記憶し
ているので、アンドゥキーの操作に応じて順次遡って前
のリズムパターンをカレントパターンメモリ1に復活す
ることができるようになっている。
【0082】図9(E)は鍵盤1AのノートナンバC3
に対応したスタート/ストップキーが操作され、ノート
ナンバC3を含むMIDIメッセージが電子楽器1Fか
ら受信された場合に行われるスタート/ストップキー処
理を示す図である。このスタート/ストップキー処理で
は、まず走行状態フラグRUNがハイレベル“1”かど
うかを判定し、その判定結果に応じた処理を行う。ここ
で走行状態フラグRUNは、カレントパターンメモリ1
からカレントパターンを読み出し中であるかどうかを示
すものである。
【0083】従って、走行状態フラグRUNがハイレベ
ル“1”(YES)だと判定された場合は、読み出しを
停止するために走行状態フラグRUNにローレベル
“0”をセットしてリターンする。一方、走行状態フラ
グRUNがローレベル“0”(NO)だと判定された場
合は、読み出しを開始するためにカレントパターンメモ
リ1の最初のタイミングデータをタイミングレジスタT
IMEにセットし、走行状態フラグRUNをハイレベル
“1”にセットしてリターンする。これによって、図1
4のタイマ割込処理においてカレントパターンメモリ1
から順次カレントパターンの読み出し処理が実行される
ようになる。
【0084】図9(F)は鍵盤1AのノートナンバD3
〜F3(#を除く)に対応したバンクA,B,Cのいず
れかのキーが操作され、ノートナンバD3〜F3(#を
除く)を含むMIDIメッセージが電子楽器1Fから受
信された場合に行われるバンクA,B,Cキー処理を示
す図である。このバンクA,B,Cキー処理では、バン
クレジスタBANKに『1』、『2』、『3』のいずれ
か1つを格納してリターンする。この実施例では、ノー
トナンバD3に対応したバンクAのキーが操作された場
合にはバンクレジスタBANKには『1』を格納し、ノ
ートナンバE3に対応したバンクBのキーが操作された
場合にはバンクレジスタBANKには『2』を格納し、
ノートナンバF3に対応したバンクCのキーが操作され
た場合にはバンクレジスタBANKには『3』を格納す
る。これによって、キー操作に応じてデータベース手段
5のバンクA,B,Cが切り替えられるので、これ以後
にコンポーネントの指定があれば、そのバンクからリズ
ムパターンが読み出され、カレントパターンメモリ1に
格納されるようになる。
【0085】図10(A)は鍵盤1AのノートナンバG
3に対応したロックキーが操作され、ノートナンバG3
を含むMIDIメッセージが電子楽器1Fから受信され
た場合に行われるロックキー処理を示す図である。この
ロックキー処理では、全フラグをローレベル“0”にク
リアしてからロックフラグLOCKにハイレベル“1”
をセットしてリターンする。データベース手段5からの
リズムパターンは、通常はドラムパターンエリアのキー
を操作している間だけ有効であるが、このロックキーを
操作することによってリズムパターンの内容は確定し、
ドラムパターンエリアのキーを離してもそのリズムパタ
ーンは有効状態を維持する。
【0086】図10(B)は鍵盤1AのノートナンバC
#2,D#2に対応したバリエーション1,2のキーが
操作され、ノートナンバC#2,D#2を含むMIDI
メッセージが電子楽器1Fから受信された場合に行われ
るバリエーション1,2キー処理を示す図である。この
バリエーション1,2キー処理では、全フラグをローレ
ベル“0”にクリアしてからバリエーションフラグVA
RI1又はVARI2にハイレベル“1”をセットして
リターンする。これによって、カレントパターンの読み
出しが小節線まで進んだときに、バリエーションパター
ン(図3の形容詞シーケンス)が読み出されるようにな
る。
【0087】図10(C)は鍵盤1AのノートナンバF
#2に対応したリプレースキーが操作され、ノートナン
バF#2を含むMIDIメッセージが電子楽器1Fから
受信された場合に行われるリプレースキー処理を示す図
である。このリプレースキー処理では、全フラグをロー
レベル“0”にクリアしてからリプレースフラグREP
LACEにハイレベル“1”をセットしてリターンす
る。これによって、このリプレースキーを押しつづけて
いる間にドラムパターンエリアのキーを操作すると、図
11(D)の処理が実行され、対応するドラム音が操作
タイミングの位置に入力されるようになる。このとき、
前の対応ドラム音は消去される。
【0088】図10(D)は鍵盤1AのノートナンバG
#2に対応したインサートキーが操作され、ノートナン
バG#2を含むMIDIメッセージが電子楽器1Fから
受信された場合に行われるインサートキー処理を示す図
である。このインサートキー処理では全フラグをローレ
ベル“0”にクリアしてからインサートフラグINSE
RTにハイレベル“1”をセットしてリターンする。こ
れによって、このインサートキーを押しつづけている間
にドラムパターンエリアのキーを操作すると、対応する
ドラム音がその操作タイミングの位置に入力されるよう
になる。このとき、前のドラム音は消去されることなく
新たなドラム音が追加される。
【0089】図10(E)は鍵盤1AのノートナンバA
#2に対応したクォンタイズキーが操作され、ノートナ
ンバA#2を含むMIDIメッセージが電子楽器1Fか
ら受信された場合に行われるクォンタイズキー処理を示
す図である。このクォンタイズキー処理では、全フラグ
をローレベル“0”にクリアし、その時のベロシティデ
ータの大きさに応じてクォンタイズの分解能を決定し、
クォンタイズフラグQUANTにハイレベル“1”をセ
ットしてリターンする。これによって、カレントパター
ンの読み出しが小節線まで達したとき、次の小節線以降
のリズムパターンを読み出す際に、データそのものは書
き替えずに読み出すタイミングのみをクォンタイズ処理
して読み出す。このような処理を読み出しクォンタイズ
処理という。
【0090】図10(F)は鍵盤1AのノートナンバC
#3に対応したデリートドラムキーが操作され、ノート
ナンバC#3を含むMIDIメッセージが電子楽器1F
から受信された場合に行われるデリートドラムキー処理
を示す図である。このデリートドラムキー処理では、全
フラグをローレベル“0”にクリアしてからデリートド
ラムフラグDELDRUMにハイレベル“1”をセット
してリターンする。これによって、例えばその後にノー
トナンバC4のノートオンメッセージが検出されたら、
ノートナンバC4に対応するドラム音(タムタムのロー
(TomL))をカレントパターンの中から削除する。
【0091】図11(A)は鍵盤1AのノートナンバD
#3に対応したデリートコンポーネントキーが操作さ
れ、ノートナンバD#3を含むMIDIメッセージが電
子楽器1Fから受信された場合に行われるデリートコン
ポーネントキー処理を示す図である。このデリートコン
ポーネントキー処理では、全フラグをローレベル“0”
にクリアしてからデリートコンポネントフラグDELC
OMPにハイレベル“1”をセットしてリターンする。
これによって、例えばその後にノートナンバC4のノー
トオンメッセージが検出されたら、ノートナンバC4の
タムタムのロー(Tom L)が含まれるコンポーネン
トのドラム音が全て(すなわち、タムタムのハイ(To
m H)タムタムのミッド(Tom M)タムタムのロ
ー(Tom L))カレントパターンから削除される。
【0092】図11(B)は鍵盤1AのノートナンバF
#3に対応したアクセントキーが操作され、ノートナン
バF#3を含むMIDIメッセージが電子楽器1Fから
受信された場合に行われるアクセントキー処理を示す図
である。このアクセントキー処理では全フラグをローレ
ベル“0”にクリアしてからアクセントフラグACCE
NTにハイレベル“1”をセットしてリターンする。こ
れによって、例えばその後にノートナンバC4のノート
オンメッセージが検出され、対応するノートナンバC4
のノートオフメッセージが検出されるまでの間にそのノ
ートナンバと同一のノートイベントがカレントパターン
から読み出されたときは、そのノートイベントのベロシ
ティがC4のノートオンベロシティに書き替えられる。
【0093】図11(C)は鍵盤1AのノートナンバG
#3に対応したフィルインキーが操作され、ノートナン
バG#3を含むMIDIメッセージが電子楽器1Fから
受信された場合に行われるフィルインキー処理を示す図
である。このフィルインキー処理では、まず全フラグを
ローレベル“0”にクリアしてからカレントパターンメ
モリ1内のカレントパターンを退避メモリ4に一時的に
退避させる。そして、データベース手段5の対応するバ
ンクA,B,Cのフィルインパターンをカレントパター
ンメモリ1にコピーし、その読み出し位置(現在の小節
内のタイミングに対応するパターン上のデータ)をサー
チしてからフィルインフラグFILLにハイレベル
“1”をセットしてリターンする。これによって、ノー
トナンバG#3に対応したフィルインキーが操作された
時点からその小節の最後までフィルインパターンが演奏
されるようになる。
【0094】図11(D)は鍵盤1AのノートナンバA
3〜E5に対応したドラムパターンエリアのキーが操作
され、ノートナンバA3〜E5を含むMIDIメッセー
ジを電子楽器1Fから受信した場合に行われるドラムキ
ー処理を示す図である。このドラムキー処理では、まず
ロックフラグLOCK以外のフラグ(リプレースフラグ
REPLACE、インサートフラグINSERT、デリ
ートドラムフラグDELDRUM及びデリートコンポー
ネントフラグDELCOMP)のいずれかがハイレベル
“1”かどうかを判定し、その判定結果に応じた処理を
行う。
【0095】すなわち、ノートナンバがA3〜E5のい
ずれかであれば、それはドラム音(単音)の指定又はコ
ンポーネントの指定である。従って、ロックフラグLO
CK以外のいずれかのフラグがハイレベル“1”(YE
S)だと判定された場合は、そのハイレベル“1”にセ
ットされているフラグに対応したフラグ対応処理1を実
行してリターンする。このフラグ対応処理1の詳細は、
図12に示されている。
【0096】一方、ロックフラグLOCK以外のいずれ
のフラグもハイレベル“1”でない(NO)と判定され
た場合は、押鍵されたキー(ノートナンバ)に対応した
コンポーネントの音(一部についてはドラム音)をカレ
ントパターンから削除して退避メモリ4に一時的に退避
させる。そして、押鍵されたキー(ノートナンバ)、ベ
ロシティデータ、ジャンルに対応したコンポーネント
(ドラム)のリズムパターンをパターンテーブル63を
参照して選択し、選択されたコンポーネントのリズムパ
ターンをデータベース手段5から読み出してカレントパ
ターンに追加する。選択されたリズムパターンの複雑度
を図5のようにディスプレイ29に表示する。
【0097】これによって、ノートナンバA3〜E5に
対応するキーを押鍵するだけで、ノートナンバに対応す
るコンポーネントのリズムパターンを、ベロシティデー
タの大きさに応じて選択して、追加することができる。
なお、パターンテーブル63は、図4に示したようにベ
ロシティの値すなわちアドレスが大きいほど、より複雑
なパターンとなるように、リズムパターンの先頭アドレ
スを順番に記憶しているので、リズムパターンの種類を
より細かく選択することができる。
【0098】図12は、図11(D)のフラグ対応処理
1の詳細を示す図である。このフラグ対応処理1は、ロ
ックフラグLOCK以外のリプレースフラグREPLA
CE、インサートフラグINSERT、デリートドラム
フラグDELDRUM及びデリートコンポーネントフラ
グDELCOMPのいずれかがハイレベル“1”の場合
に行われる処理である。
【0099】図12(A)は鍵盤1AのノートナンバF
#2に対応したリプレースキーが押されている状態でド
ラムパターンエリアのキーが操作されることによって実
行されるリプレース処理を示す図である。すなわち、リ
プレースキーが押されている間は、図10(C)のリプ
レースキー処理によってリプレースフラグREPLAC
Eにハイレベル“1”がセットされるので、図11
(D)のドラムキー処理でロックフラグLOCK以外の
リプレースフラグREPLACEがハイレベル“1”だ
と判定され、リプレース処理が行われる。このリプレー
ス処理では、ノートナンバに対応するドラム音をベロシ
ティデータと共にカレントパターンに追加する。そし
て、押されたドラム音のデリートフラグにハイレベル
“1”をセットして図11(D)のドラムキー処理にリ
ターンする。デリートフラグにハイレベル“1”のセッ
トされたドラム音は、図15のステップ54でカレント
パターンから削除される。
【0100】図12(B)は鍵盤1AのノートナンバG
#2に対応したインサートキーが押されている状態でド
ラムパターンエリアのキーが操作されることによって実
行されるインサート処理を示す図である。すなわち、イ
ンサートキーが押されている間は、図10(D)のイン
サートキー処理によってインサートフラグINSERT
にハイレベル“1”がセットされるので、図11(D)
のドラムキー処理でロックフラグLOCK以外のインサ
ートフラグREPLACEがハイレベル“1”だと判定
され、インサート処理が行われる。このインサート処理
では、ノートナンバに対応するドラム音をベロシティデ
ータと共にカレントパターンに追加して図11(D)の
ドラムキー処理にリターンする。
【0101】図12(C)は鍵盤1AのノートナンバC
#3に対応したデリートドラムキーが押されている状態
でドラムパターンエリアのキーが操作されることによっ
て実行されるデリートドラム処理を示す図である。すな
わち、デリートドラムキーが押されている間は、図10
(F)のデリートドラムキー処理によってデリートドラ
ムフラグDELDRUMにハイレベル“1”がセットさ
れるので、図11(D)のドラムキー処理でロックフラ
グLOCK以外のデリートドラムフラグDELDRUM
がハイレベル“1”だと判定され、デリートドラム処理
が行われる。このデリートドラム処理では、押されたド
ラム音のデリートフラグにハイレベル“1”をセットし
て図11(D)のドラムキー処理にリターンする。デリ
ートフラグにハイレベル“1”のセットされたドラム音
は、図15のステップ54でカレントパターンから削除
される。
【0102】図12(D)は鍵盤1AのノートナンバD
#3に対応したデリートコンポーネントキーが押されて
いる状態でドラムパターンエリアのキーが操作されるこ
とによって実行されるデリートコンポーネント処理を示
す図である。すなわち、デリートコンポーネントキーが
押されている間は、図11(A)のデリートコンポーネ
ントキー処理によってデリートコンポーネントフラグD
ELCOMPにハイレベル“1”がセットされるので、
図11(D)のドラムキー処理でロックフラグLOCK
以外のデリートコンポーネントフラグDELCOMPが
ハイレベル“1”だと判定され、デリートコンポーネン
ト処理が行われる。このデリートコンポーネント処理で
は、押されたドラム音を含むコンポーネントのデリート
フラグにハイレベル“1”をセットして図11(D)の
ドラムキー処理にリターンする。デリートフラグにハイ
レベル“1”のセットされたコンポーネントを構成する
ドラム音は、図15のステップ56でカレントパターン
から削除される。
【0103】図13は受信したMIDIメッセージがノ
ートオフメッセージの場合に行われる図8(B)のノー
トオフメッセージのノートナンバに対応した処理の詳細
を示す図である。図13(A)では、鍵盤1Aのノート
ナンバC2に対応したアサインキー、ノートナンバG3
に対応したロックキー、ノートナンバF#2に対応した
リプレースキー、ノートナンバG#2に対応したインサ
ートキー、ノートナンバA#2に対応したクォンタイ
ズ、ノートナンバC#3に対応したデリートドラム、ノ
ートナンバD#3に対応したデリートコンポーネントキ
ー又はノートナンバF#3に対応したアクセントキーが
操作され、ノートナンバC2、G3、F#2、G#2、
A#2、C#3、D#3又はF#3を含むMIDIメッ
セージを電子楽器1Fから受信した場合に、それぞれの
ノートナンバに対応した図9から図11の各キー処理で
ハイレベル“1”にセットされたフラグをクリアする。
【0104】図13(B)は鍵盤1AのノートナンバA
3〜E5に対応したドラムパターンエリアのキーが離鍵
され、ノートナンバA3〜E5のノートオフメッセージ
を含むMIDIメッセージを電子楽器1Fから受信した
場合に行われるドラムキー処理を示す図である。このド
ラムキー処理では、まずロックフラグLOCKがローレ
ベル“0”かどうかを判定し、YESの場合には以下の
処理を行い、NOの場合にはデータベース手段5から読
出し中のリズムパターンを確定させるために、そのまま
図8(A)のメインルーチンにリターンする。ロックフ
ラグLOCKがローレベル“0”の場合には、離鍵され
たキーのノートナンバA3〜E5のドラム音(単音)又
はコンポーネントの音をカレントパターンから削除し、
図11(D)で退避していたコンポーネント(ドラム)
の音をカレントパターンに戻す。
【0105】図14は4分音符当たり480回の割込み
で実行されるタイマ割込処理を示す図である。このタイ
マ割込処理はカレントパターンメモリ1からカレントパ
ターンを読み出す時のテンポに対応して処理される。す
なわち、テンポに応じて割込み周期が変更される。この
処理はつぎのようなステップで順番に実行される。
【0106】ステップ31:走行状態フラグRUNがハ
イレベル“1”かどうかを判定し、ハイレベル“1”
(YES)の場合には次のステップ32に進み、そうで
ない(NO)場合はリターンする。 ステップ32:タイミングデータを格納してあるタイム
レジスタTIMEの値が『0』かどうか、すなわち次の
ノートイベントまでの時間が経過したか否かを判定し、
『0』(YES)の場合は時間が経過しているので、次
のステップ33に進み、そうでない(NO)場合は時間
がまだ経過していないので、ステップ40に進む。
【0107】ステップ33:前のステップ32で次のノ
ートイベントまでの時間が経過したと判定されたので、
ここではそのタイミングに対応するイベントデータを読
み出す。 ステップ34:前のステップ33で読み出されたイベン
トデータがエンドデータかどうかを判定し、エンドデー
タの場合にはステップ39に進み、それ以外のデータの
場合にはステップ35に進む。
【0108】ステップ35:前のステップ33で読み出
されたイベントデータがエンドデータ以外のデータだと
判定されたので、そのデータに対応したMIDIノート
イベント(MIDIメッセージ)をMIDIインターフ
ェイス2C及び1Dを介して電子楽器1Fに出力する。
このMIDIノートイベント出力の詳細については後述
する。 ステップ36:前のステップ33で読み出されたイベン
トデータの次のデータを読み出す。
【0109】ステップ37:前のステップ36で読み出
されたデータがタイミングデータかどうかを判定し、Y
ESの場合は次のステップ38に進み、NOの場合はス
テップ34にリターンする。従って、前のステップ36
で読み出されたデータがエンドデータの場合には、ステ
ップ34でYESと判定され、ステップ39の処理が行
われ、イベントデータの場合にはステップ35,36の
処理が行われる。
【0110】ステップ38:読み出されたタイミングデ
ータをタイムレジスタTIMEにセットする。 ステップ39:前のステップ34でエンドデータと判定
されたので、ここではリズムパターンの最初のタイミン
グデータをタイムレジスタTIMEにセットしてステッ
プ41に進む。 ステップ40:前のステップ32でまだ時間が経過して
いないと判定されたので、ここではタイムレジスタTI
MEの値を1だけデクリメント処理してステップ41に
進む。
【0111】ステップ41:小節内における読み出しタ
イミング(図示しないカウンタによりカウントされる)
が小節線のタイミングかどうかを判定し、小節線のタイ
ミングの場合(YES)は次のステップ42に進み、そ
うでない(NO)場合はリターンする。 ステップ42:いずれかのフラグがハイレベル“1”か
どうかを判定し、ハイレベル“1”のフラグがあれば
(YES)ステップ43に進み、そうでなければリター
ンする。 ステップ43:前のステップ42でハイレベル“1”の
フラグ有りと判定されたので、ここではそのハイレベル
“1”のフラグに対応したフラグ対応処理2を行ってか
らリターンする。このフラグ対応処理2の詳細は図16
に示されている。
【0112】図15は、図14のステップ35のMID
Iノートイベント出力処理の詳細を示す図である。この
MIDIノートイベント出力処理は、アクセントフラグ
ACCENT、デリートドラムフラグDELDRUM又
はデリートコンポーネントフラグDELCOMPのいず
れかがハイレベル“1”の場合には、そのフラグに対応
した処理を行い、そうでない場合にはカレントパターン
メモリ1のリズムパターンに応じたノートイベントの出
力処理を行う。この処理はつぎのようなステップで順番
に実行される。
【0113】ステップ51:鍵盤1AのノートナンバF
#3に対応したアクセントキーが押鍵されてアクセント
フラグACCENTにハイレベル“1”がセットされて
いるかどうかを判定し、セットされている(YES)場
合は次のステップ52に進み、そうでない(NO)場合
はステップ53に進む。 ステップ52:読み出されたノートイベントのノートナ
ンバが、受信したノートイベントの(そのときノートオ
ンされている)ノートナンバに対応すれば、読み出しノ
ートイベントのベロシティを受信したノートオンメッセ
ージのベロシティに差し替える。
【0114】ステップ53:鍵盤1AのノートナンバC
#3に対応したデリートドラムキーが押鍵され、いずれ
かのドラム音のデリートドラムフラグDELDRUMに
ハイレベル“1”がセットされているかどうかを判定
し、セットされている(YES)場合は次のステップ5
4に進み、そうでない(NO)場合はステップ55に進
む。 ステップ54:受信したノートナンバに対応したドラム
音のイベントがカレントパタンーメモリ1から読み出さ
れたイベント中に存在する場合はそれを読み出されたカ
レントパターンのイベント中から削除する。
【0115】ステップ55:鍵盤1AのノートナンバD
#3に対応したデリートコンポーネントキーが押鍵さ
れ、いずれかのコンポーネントのデリートコンポーネン
トフラグDELCOMPにハイレベル“1”がセットさ
れているかどうかを判定し、セットされている(YE
S)場合は次のステップ56に進み、そうでない(N
O)場合はステップ59に進む。 ステップ56:受信したノートナンバに対応したコンポ
ーネントを構成するドラム音のイベントがカレントパタ
ンーメモリ1から読み出されたイベント中に存在する場
合はそのコンポーネントを構成するドラム音全てを読み
出されたカレントパターンのイベント中から削除する。
【0116】ステップ57:前のステップ54又は56
でドラム音が削除された結果、読み出されたカレントパ
ターンのイベント内に残ったイベントが有るかどうかを
判定し、残ったイベントが有る場合(YES)にはステ
ップ58に進み、そうでない(NO)場合はリターンし
て図14のステップ36に進む。 ステップ58:ステップ52でアクセント処理されたノ
ートイベント、ステップ54で削除された結果残ったノ
ートイベント又はステップ52,54,56の処理を経
なかったノートイベントをMIDIインターフェイス2
C,1Dを介して電子楽器1Fに出力する。
【0117】図16は図14のステップ43のフラグ対
応処理2の詳細を示す図である。このフラグ対応処理2
は、アンドゥフラグUNDO、フィルインフラグFIL
L、バリエーションフラグVARI1,VARI2及び
トランスフォーマーフラグTRANSのいずれかがハイ
レベル“1”の場合に行われる処理である。
【0118】図16(A)は鍵盤1AのノートナンバB
2に対応したアンドゥキーが押鍵されることによってア
ンドゥフラグUNDOにハイレベル“1”がセットされ
ている場合(UNDO=1)に行われるアンドゥ処理を
示す図である。このアンドゥ処理では、アンドゥバッフ
ァ3に格納されているリズムパターンの1つ前のパター
ンを読み出し、カレントパターンメモリ1内にカレント
パターンとして転送する。そして、アンドゥフラグUN
DOをローレベル“0”にクリアする。
【0119】図16(B)は鍵盤1AのノートナンバG
#3に対応したフィルインキーが押鍵されることによっ
て、フィルインフラグFILLにハイレベル“1”がセ
ットされている場合(FILL=1)に行われるフィル
イン復帰処理を示す図である。このフィルイン復帰処理
では、退避メモリ4に退避していたリズムパターンを読
み出し、カレントパターンメモリ1内にカレントパター
ンとしてコピーする。そして、フィルインフラグFIL
Lをローレベル“0”にクリアする。
【0120】図16(C)は鍵盤1AのノートナンバD
#2又はC#2に対応したバリエーションキーが押鍵さ
れることによってバリエーションフラグVARI1,V
ARI2にハイレベル“1”がセットされている場合
(VARI1又はVARI2=1)に行われるバリエー
ション処理を示す図である。このバリエーション処理で
は、バリエーションの指示中なので、図3のバリエーシ
ョンシーケンスから次(又は先頭)の形容詞を読み出し
てトランスフォーマー9に指示する。例えば、バリエー
ションシーケンスが4小節分存在する場合には、1回こ
の処理を実行する毎に形容詞を1つずつ読み出し、4回
分の読み出しが終了するまで繰り返す。そして、4回分
終了した時には、バリエーションフラグVARI1又は
VARI2をローレベル“0”にクリアする。
【0121】図16(D)は鍵盤1AのノートナンバD
2,E2,F2,G2,A2に対応したトランスフォー
マーキーが押鍵されることによってトランスフォーマー
フラグTRANSにハイレベル“1”がセットされてい
る場合(TRANS=1)に行われるトランスフォーマ
ー処理を示す図である。このトランスフォーマー処理で
は、アンドゥバッファ3にカレントパターンメモリ1の
カレントパターンをコピーし、指示されている形容詞に
応じてカレントパターンの内容を変更する演算を行う。
この演算の内容については後述する。そしてトランスフ
ォーマーフラグTRANSをローレベル“0”にクリア
する。
【0122】図17は、パソコン20のCPU21が行
う図8の「その他の処理」の中の「パターン登録処理」
の詳細を示す図である。この「パターン登録処理」は、
カレントパターンメモリ1内の新たなリズムパターンデ
ータをデータベース手段5に登録する際に、そのリズム
パターンデータの複雑度を求め、その複雑度がパターン
テーブル63のどのレベルに位置するのかを判定し、そ
のレベル位置に登録して、パターンテーブル63の書換
えを行う処理である。この処理はつぎのようなステップ
で順番に実行される。
【0123】ステップ71:新規に登録するリズムパタ
ーンの複雑度を求め、その複雑度を新規登録複雑度レジ
スタCOMP(N)に格納する。 ステップ72:図1のパターンテーブル63からアドレ
スレジスタAD=1のリズムパターンの複雑度を読み出
し、その複雑度を既登録複雑度レジスタCOMP(D)
に格納する。このアドレスレジスタADは図4のパター
ンテーブル上のアドレスを格納するものである。
【0124】ステップ73:新規登録複雑度レジスタC
OMP(N)の複雑度が既登録複雑度レジスタCOMP
(D)の複雑度よりも小さいかどうかを判定し、小さい
(YES)場合にはステップ76に進み、同じか大きい
(NO)場合にはステップ74に進む。 ステップ74:アドレスレジスタADを1だけインクリ
メント処理する。 ステップ75:パターンテーブル63からアドレスレジ
スタADのアドレスに記録されているリズムパターンの
複雑度を読み出し、その複雑度を既登録複雑度レジスタ
COMP(D)に格納し、ステップ73にリターンす
る。すなわち、ステップ73〜75は、新規登録される
リズムパターンの複雑度が現在のパターンテーブル63
上でどのアドレスに対応するのかを検出する。
【0125】ステップ76:前のステップ73で新規登
録複雑度レジスタCOMP(N)の複雑度が既登録複雑
度レジスタCOMP(D)の複雑度よりも小さいと判定
されたので、ここでは、アドレスレジスタADのアドレ
ス以降のリズムパターンの先頭アドレスを1アドレスず
つ後ろにずらして記録する。 ステップ77:新規登録リズムパターンの先頭アドレス
と、その複雑度をアドレスレジスタADのアドレスの位
置に登録する。
【0126】図18〜図20はトランスフォーマー処理
によってカレントパターンの内容を変更する演算処理の
一例を示す図である。図18〜図20に示されたトラン
スフォーマー処理は、カレントパターン内の変更対象と
なるリズムパターンをサーチテンプレート(Searc
h−template)に基づいてサーチし、それをリ
プレーステンプレート(Replace−templa
te)に基づいて所定のリズムパターンに変更して置き
替えている。具体的には、サーチテンプレートに対応し
たリズムパターンをリプレーステンプレートの3連音符
系のリズムパターンに置き替えている。
【0127】図において、サーチテンプレートのデータ
フォーマットはSearch−template=
((オフセットデータ)(サーチデータ)(誤差範囲デ
ータ))で与えられ、リプレーステンプレートのデータ
フォーマットはReplace−template=
((リプレースデータ)(ベロシティー選択データ)
(ドラム音選択データ))で与えれる。サーチデータ及
びリプレースデータにはタイミングデータで表現された
リズムパターンが記憶されている。すなわち、この実施
例では、4分音符に相当するタイミングデータの値を
「480」、8分音符相当のタイミングデータ値を「2
40」、16分音符相当のタイミングデータ値を「12
0」、32分音符相当のタイミングデータ値を「60」
としている。従って、図18に示したサーチテンプレー
トのサーチデータ(0 240 360 480)は1
個の8分音符と2個の16分音符からなる4分音符相当
のリズムパターンを示し、リプレーステンプレートのリ
プレースデータ(0 160 320)は4分音符相当
の3連音符系のリズムパターンを示す。
【0128】図18では、サーチテンプレートのデータ
フォーマットはSearch−template=
((0 480 960 1440)(0 240 3
60 480)(20 20 20 20))であり、
リプレーステンプレートのデータフォーマットはRep
lace−template=((0 160 32
0)(001)(011))である。サーチテンプレー
トのオフセットデータ(0 480 960 144
0)は、サーチデータに示されるリズムパターンをカレ
ントパターン内からサーチする際のオフセット量、すな
わちサーチデータが示すリズムパターンが存在すべきカ
レントパターン中の位置を示す。誤差範囲データ(20
20 20 20)はサーチデータの許容誤差範囲を
示す。従って、リズムパターンがサーチデータ(0 2
40 360 480)に正確に一致しなくても、誤差
範囲データを含むサーチデータ(0±20 240±2
0 360±20 480±20)=(460〜20
220〜260 340〜380 460〜20)に該
当するようなリズムパターンであれば、変更対象とな
り、リプレースデータに置き替えられる。
【0129】リプレーステンプレートのリプレースデー
タ(0 160 320)は、置き替えられるリズムパ
ターンを示す。ベロシティー選択データはリプレースデ
ータのベロシティーとしてサーチデータのどの音符のも
のを用いるかを示す。すなわち、ベロシティー選択デー
タの『0』はサーチデータの第1番目のデータ(8分音
符)のベロシティーを示し、『1』はサーチデータの第
2番目のデータ(第1番目の16分音符)のベロシティ
ーを示し、『2』はサーチデータの第3番目のデータ
(第2番目の16分音符)のベロシティーを示す。そし
て、ベロシティー選択データのそれぞれの順番はリプレ
ースデータの順番に対応している。
【0130】すなわち、ベロシティー選択データ(00
1)の場合には、サーチデータの第1番目のデータ(8
分音符)のベロシティーがリプレースデータの第1及び
第2番目のデータ(3連音符の第1及び第2番目の音
符)に置き替わり、サーチデータの第2番目のデータ
(16分音符)のベロシティーがリプレースデータの第
3番目のデータ(3連音符の第3番目の音符)に置き替
わることとなる。
【0131】ドラム音選択データはリプレースデータの
ドラム音としてサーチデータのどの音符のものを用いる
かを示す。すなわち、ドラム音選択データの『0』はサ
ーチデータの第1番目のデータ(8分音符)のドラム音
を示し、『1』はサーチデータの第2番目のデータ(第
1番目の16分音符)のドラム音を示し、『2』はサー
チデータの第3番目のデータ(第2番目の16分音符)
のドラム音を示す。そして、ドラム音選択データのそれ
ぞれの順番はリプレースデータの順番に対応している。
【0132】すなわち、ドラム音選択データ(011)
の場合にはサーチデータの第1番目のデータ(8分音
符)のドラム音がリプレースデータの第1番目のデータ
(3連音符の第1番目の音符)のドラム音に置き替わ
り、サーチデータの第2番目のデータ(16分音符)の
ドラム音がリプレースデータの第2及び第3番目のデー
タ(3連音符の第2及び第3番目の音符)のドラム音に
置き替わることを示す。
【0133】図18は、サーチテンプレート((0 4
80 960 1440)(0 240 360 48
0)(20 20 20 20))及びリプレーステン
プレート((0 160 320)(001)(01
1))に応じて、図18(A)のカレントパターンが図
18(B)〜(E)のように順番にトランスフォーマー
処理される様子を示す図である。まず、図18(A)の
カレントパターンは、各オフセットデータ(0 480
960 1440)の位置からサーチデータ(0 24
0 360)に対応する4分音符相当のリズムパターン
が存在するので、その中のいずれか一つがランダムに置
き替えられる。この例では、図18(B)のようにサー
チデータ(0240 360)に対応する第4番目のリ
ズムパターンがリプレースデータ(0160 320)
の3連音符に置き替えられ、次の時点では図18(C)
のように第2番目のリズムパターンが3連音符に置き替
えられ、さらに次の時点では図18(D)のように第1
番目のリズムパターンが3連音符に置き替えられ、最後
に図18(E)のように第3番目のリズムパターンが3
連音符に置き替えられることによって、図18(A)の
リズムパターンは図18(E)のような3連音符のリズ
ムパターンになる。
【0134】図19(A)及び図19(B)は、サーチ
テンプレート((0 480 1440)(0 240
360 480)(20 20 20 20))及び
リプレーステンプレート((0 160 320)(0
01)(011))に応じて、図18(A)のカレント
パターンがトランスフォーマー処理される様子を示す図
である。図19(A)のカレントパターンは、図18
(A)と同じであり、各オフセットデータ(0 480
960 1440)の位置からサーチデータ(0 2
40 360)に対応するリズムパターンが存在する。
ところが、図19(A)では、サーチテンプレートのオ
フセットデータが(0 480 1440)であり、図
18の場合のオフセットデータから『960』が削除さ
れた状態となっている。従って、この場合は、図19
(B)のようにサーチデータ(0 240 360)に
対応する第3番目のリズムパターンだけがリプレースデ
ータ(0 160 320)の3連音符に置き替えられ
ることなく、元の(0 240 360)のリズムパタ
ーンを維持することとなる。
【0135】図19(C)及び図19(D)は、サーチ
テンプレート((0 480 960 1440)(0
240 360 480)(20 20 20 2
0))及びリプレーステンプレート((0 160 3
20)(001)(011))に応じて、図19(C)
のカレントパターンがトランスフォーマー処理される様
子を示す図である。図19(C)のカレントパターン
は、図18(A)と異なり、各オフセットデータ
『0』、『480』、『960』を基準として、サーチ
データ(0 240360)に対応するリズムパターン
は存在しないが、最後のオフセットデータ『1440』
を基準としてサーチデータ(0 240 360)に対
応するリズムパターンが存在する。従って、この例で
は、図19(D)のようにサーチデータ(0 240
360)に対応する第4番目のリズムパターンだけがリ
プレースデータ(0 160 320)の3連音符に置
き替えられ、これ以外は元のリズムパターンを維持して
いる。
【0136】図20は、ドラム音選択データ及びベロシ
ティー選択データに応じて、リズムパターンのドラム音
及びベロシティーがどのように置き替えられるのか、そ
の様子を示す図である。図20(A)及び図20(B)
において、サーチテンプレート((0 480960
1440)(0 240 360 480)(20 2
0 20 20))及びリプレーステンプレート((0
160 320)(001)(011))は、図18
の場合と同じである。従って、図20(A)のリズムパ
ターンは図20(B)のような3連音符のリズムパター
ンになる。
【0137】このとき、ドラム音選択データは(01
1)であるからサーチデータの第1番目のデータ(8分
音符)のドラム音がリプレースデータの第1番目のデー
タ(3連音符の第1番目の音符)のドラム音に置き替わ
り、サーチデータの第2番目のデータ(16分音符)の
ドラム音がリプレースデータの第2及び第3番目のデー
タ(3連音符の第2及び第3番目の音符)のドラム音に
置き替わることとなる。この様子を図20(A)及び
(B)の第1及び第2番目のリズムパターンが3連音符
に置き替わる部分に矢印で示した。同様に、ベロシティ
ー選択データは(001)であるからサーチデータの第
1番目のデータ(8分音符)のベロシティーがリプレー
スデータの第1及び第2番目のデータ(3連音符の第1
及び第2番目の音符)に置き替わり、サーチデータの第
2番目のデータ(16分音符)のベロシティーがリプレ
ースデータの第3番目のデータ(3連音符の第3番目の
音符)に置き替わることとなる。この様子を図20
(A)及び(B)の第3及び第4番目のリズムパターン
が3連音符に置き替わる部分に矢印で示した。
【0138】図20(C)及び図20(D)において、
サーチテンプレートは((0 480 960 144
0)(0 240 360 480)(20 20 2
020))であり、前述の場合と同じであるが、リプレ
ーステンプレートは((0160 320)(001)
(***))であり、ドラム音選択データだけが前回の
場合と異なっている。この場合、ドラム音選択データが
異なるだけであり、図20(C)のリズムパターンは前
述のトランスフォーマー処理の場合と同様に図20
(D)のような3連音符のリズムパターンに置き替わ
る。
【0139】このとき、ドラム音選択データの(**
*)は、(000)、(111)、(222)、(01
2)・・・のように『0』と『1』と『2』の組み合わ
せが順番に現れるようになっている。従って、図20
(C)の第1番目のリズムパターンでは、サーチデータ
の第1番目のデータ(8分音符)のドラム音がリプレー
スデータの第1、第2及び第3番目のデータ(3連音符
の第1、第2及び第3番目の音符)のドラム音に置き替
わる。第2番目のリズムパターンでは、サーチデータの
第2番目のデータ(16分音符)のドラム音がリプレー
スデータの第1、第2及び第3番目のデータ(3連音符
の第1、第2及び第3番目の音符)のドラム音に置き替
わる。
【0140】第3番目のリズムパターンでは、サーチデ
ータの第3番目のデータ(16分音符)のドラム音がリ
プレースデータの第1、第2及び第3番目のデータ(3
連音符の第1、第2及び第3番目の音符)のドラム音に
置き替わる。第4番目のリズムパターンでは、サーチデ
ータの第1番目のデータ(8分音符)のドラム音がリプ
レースデータの第1番目のデータ(3連音符の第1番目
の音符)のドラム音に、サーチデータの第2番目のデー
タ(16分音符)のドラム音がリプレースデータの第2
番目のデータ(3連音符の第2番目の音符)のドラム音
に、サーチデータの第3番目のデータ(16分音符)の
ドラム音がリプレースデータの第3番目のデータ(3連
音符の第3番目の音符)のドラム音に、それぞれ置き替
わる。この様子を図20(C)及び(D)の各リズムパ
ターンが3連音符に置き替わる部分に矢印で示した。
【0141】図21は、図2のディスプレイ29の表示
画面の表示例を示す図である。バンク表示部29Aは、
現在のバンクがハードディスク装置24のどのバンクで
あるかを示すものである。図では、現在のバンクはバン
クAであることを示している。このバンク表示部29A
の下には、現在のカレントパターンの状態を示す部分が
ある。この部分は、ドラム音名表示部29Bと、現発音
表示部29Cと、カレントパターン表示部29Dと、現
在位置表示部29Eとから構成される。ドラム音名表示
部29Bには、鍵盤1Aに対応したドラム音名が表示さ
れている。現発音表示部29Cは、各ドラム音の右側に
設けられた円形状の点灯部で構成され、現在発音中のド
ラム音に対応する点灯部のみが点灯するようになってい
る。カレントパターン表示部29Dは、1小節分のリズ
ムパターンを正方形状の点灯部で表示するようになって
いる。図では、バスドラム、スネアドラム及びハイハッ
トのクローズドのリズムパターンがそれぞれ表示されて
いる。現在位置表示部29Eは、1小節中の現在発音中
の位置を示すものである。
【0142】このような表示をすることによって、発音
されるドラム音や現在のカレントパターンの内容を一目
で認識することができる。また、このカレントパターン
が変形された場合でもその変形内容を簡単に把握でき
る。この場合には、変形前のパターンと変形後のパター
ンとを同時に表示するようにすればよい。さらに、図5
のような複雑度を同時に表示してもよい。
【0143】なお、上述の実施例では、リズム伴奏を例
に説明したが、これに限らず、ベースやコードバッキン
グ等の伴奏に本発明を適用してもよい。例えば、データ
ベースに多数のベースパターンと、多数のバッキングパ
ターンを記憶させておき、操作子の操作によって、各パ
ート毎にいずれかのパターンを選択するようにすればよ
い。すなわち、ベースパート、パッキングパート1、
2、3、・・・(各バッキングパートは音色が異なる)
のそれぞれの操作子を設け、ベースパートの操作子を操
作したらデータベースからベースパターンのいずれかを
選択し、パッキングパート1の操作子を操作したらデー
タベースからバッキングパターンのいずれかを選択する
といった具合にすればよい。
【0144】また、上述の実施例では、フラグ対応処理
2(アンドゥ処理、フィルイン処理、バリエーション処
理、トランスフォーマー処理)を小節線までの演奏が終
了した時点で実行する場合について説明したが、これら
各処理に対応するキーが操作された時点で直ちにその処
理を実行するようにしてもよい。
【0145】図15のステップ52のアクセント処理で
は、ノートオンされているノートナンバに対応するベロ
シティをそのままノートオンベロシティに差し替えて、
アクセントとしているが、上述のサーチテンプレートや
リプレーステンプレートのようなアクセントテンプレー
ト(例えば、タイミング毎にどれくらいのベロシティに
差し替えるかを示したパターン)を複数容易しておき、
これらをノートオンされているノートナンバに対応する
ベロシティによって選択し、選択されたアクセントテン
プレートのベロシティをノートオンベロシティに差し替
えるようにしてもよい。
【0146】上述の実施例では、鍵盤楽器の鍵盤を各種
機能の割当てキーとして使用したが、パソコン側のディ
スプレイ上にスイッチを表示させ、そのスイッチを指定
することによって各種機能を指定するようにしてもよ
い。また、鍵盤以外にもドラムパッドのようなものを用
いてもよいし、単なるスイッチでもよい。さらに、上述
の実施例では、全ての機能を鍵盤で指定する場合につい
て説明したが、ロック機能はフットスイッチに割り当て
る等のようにして他の操作子と組合せて各種機能を指定
するようにしてもよい。
【0147】また、実施例では、電子楽器とパソコンと
をMIDI回線で接続して自動伴奏装置を構成したが、
単体の電子楽器に適用してもよい。上述の実施例では、
トランスフォーマーの形容詞を指定するときに、1つの
キーに対して2種類の形容詞を割当て、それをベロシテ
ィの値に応じて切り換えるようにしたが、形容詞による
変形の度合いをベロシティの値に応じて段階的に切り換
えるようにしてもよい。また、1つのキーに対して1つ
の形容詞を割り当ててもよい。
【0148】上述の実施例では、形容詞のシーケンスデ
ータとして4小節分を割当て、この4小節の演奏が終了
した形容詞のシーケンスも終了するが、シーケンス読出
終了の指示がない場合には、その4小節分のシーケンス
データを繰り返し実行するようにしてもよい。また、シ
ーケンスデータは4小節分に限定されず、何小節分でも
よいことはいうまでもない。さらに、形容詞の指定は小
節線のタイミングでなくてもよい。
【0149】また、トランスフォーマーによりリズムパ
ターンを変形させる際に、現在のリズムパターンの内容
に応じて異なる変形処理を施すようにしてもよい。例え
ば、トランスフォーマーによってドラム音を追加する、
あるいは差し替えるような変形のとき、現在のリズムパ
ターンがどのようなパターンであるか判断し、16ビー
ト系のリズムパターンである場合と、8ビート系である
場合とで、追加するドラム音や差し替えるパターンを異
ならせるようにしてもよい。
【0150】次に本発明の他の実施例について説明す
る。他の実施例においては、トランスフォーマー指示が
あると直ちにトランスフォーマーによるパターンの変形
がなされる。このとき、リアルタイムでパターンの変形
処理を行うと、処理時間がかかるため、自動伴奏がもた
つく可能性がある。そこで、他の実施例においてはCP
Uによる処理の空き時間を利用して、次回のトランスフ
ォーマーの指定に備え、予め全てのトランスフォーマー
種類に対する変形処理をカレントパターンに施してお
き、トランスフォーマー指示が発生したときは変形済み
のパターンと差し替える処理を行うようにして、自動伴
奏がもたつくのを防ぐようにしている。なお、他の実施
例においては前述の図2における電子楽器1Fが全ての
処理を行うものとして説明するが、前述の実施例と同
様、電子楽器とパソコンというような構成をとってもい
いことはもちろんである。
【0151】前述の実施例においてはトランスフォーマ
ー機能が電子楽器1Fの鍵盤(#を除くA2〜D2)に
割り当てられており、トランスフォーマーキーを操作す
ると、操作されたキーのベロシティに応じて該キーに割
り当てられた2つのトランスフォーマー種類(形容詞)
のうちの何れかが選択され、選択されたトランスフォー
マー種類に応じてカレントパターンが変形されるように
なっていた。他の実施例においては、鍵盤は通常の演奏
用鍵盤として動作し、パネルスイッチに10種類の形容
詞に対応したトランスフォーマースイッチや、その他機
能スイッチが配置されているものとする。もちろん、ト
ランスフォーマー種類は10種類に限るものではなく、
何種類でもよい。
【0152】他の実施例においては、マルチタスク方式
で処理が行われる。各種機能はそれぞれ個別のタスクに
より実行され、各タスク間の動作をモニタプログラムが
管理する。ここでは、スイッチ検出回路15によって検
出されたパネルスイッチの状態に応じて各種タスクを実
行させるパネル管理タスク、パネルスイッチの操作によ
ってトランスフォーマー指示が行われた場合に指示され
たトランスフォーマー種類に応じてカレントパターンを
変化させるトランスフォーマータスク、所定周期で実行
されカレントパターンが読み出される自動伴奏タスク、
CPUの処理の空き時間を利用してパターンの変形処理
を行う変形タスクの4つのタスクに関して詳細に説明す
る。その他のタスク(たとえば鍵盤関連の処理を行うタ
スク等)については、詳細説明は省略する。
【0153】図22はモニタプログラムによって各タス
ク間の動作を管理するために用いられるタスク制御ブロ
ック(TCB)である。ここでは説明の便宜上、表形式
でタスク制御ブロックを表示している。図22におい
て、左端にはタスク名が記されており、処理の優先度の
高い順に上から並んでいる。その右側にはタスクの動作
状態を示すステータスが示されている。このステータス
は、タスクが動作中であることを示す「ラン」、タスク
が動作する準備ができている(順番がくればいつでも動
作できる)状態を示す「レディ」、動作していない状態
を示す「ウェイト」の3つからなる。モニタプログラム
は、ステータスが「レディ」となっているタスクの内
の、優先順位がもっとも高いタスクを「ラン」状態と
し、いずれか1つのタスク処理を選択的に実行するよう
になる。したがって、この図22からわかるように、こ
の実施例で説明する4つのタスクは、パネル管理タス
ク、トランスフォーマータスク、自動伴奏タスク、変形
タスクの順に優先度が付与されている。
【0154】ステータスの右側にはアドレスや、処理中
のレジスタ等の再開用データが示されている。これは、
あるタスクの動作中にタイマ割り込み等により、それま
で処理をしていたタスクの処理を中断して他のの処理へ
移行しなければならないとき、その後の復帰時に備え
て、中断したアドレスや、レジスタの内容等をタスク制
御ブロックに記録しておくものである。
【0155】次に図23から図28を参照して、CPU
11による処理のフローチャートを説明する。図23お
よび図24は各タスク間の動作を管理するモニタプログ
ラムである。このモニタプログラムはタイマ19から割
り込み信号が発生したときや、タスクからWAITコー
ル、STATコールがあった場合に起動される処理であ
る。
【0156】タイマ11から第1の割り込み信号(所定
周期:例えば10ms毎)が発生すると、CPU11が
いかなる処理(モニタプログラムの処理中あるいはタス
ク処理中)をしている途中であっても、ステップ81へ
と進む。ステップ81ではそれまでの処理がモニタプロ
グラムであったか否かが判断される。モニタプログラム
の処理中であったときは、ステップ82へと進み、モニ
タプログラムの処理中アドレス等、復帰に必要な情報を
記憶し、ステップ83でパネル管理タスクのタスク制御
ブロックのステートを「レディ」とする。すなわち、タ
イマ割り込み1がかかると、パネル管理タスクが「レデ
ィ」状態となり、後述するステップ88、ステップ89
でパネル管理タスク(図25)が再開されるようにな
る。このようにして、パネル管理タスクはタイマ割り込
み1の周期毎に実行されるようになる。ステップ83の
後、ステップ84へ進み、記憶していたアドレス等の復
帰に必要な情報にもとづいて、中断していた位置のモニ
タプログラムの処理へと復帰する。
【0157】ステップ81にてNOと判断したとき、す
なわち、いずれかのタスクの処理中にタイマ割り込みが
かかったときは、ステップ85へ進み、処理中であった
タスクの、そのときのアドレスやレジスタ等をタスク制
御ブロックの該タスクに対応する領域へと記録し、ステ
ップ86へ進んで、処理中だったタスクのステータスを
「レディ」とし、ステップ87でパネル管理タスクのス
テータスを「レディ」とする。そして、ステップ88へ
と進む。
【0158】ステップ88では、タスク制御ブロックに
ステータスが「レディ」状態のタスクがあるか否かをチ
ェックする。この判断がYESとなるまで、ステップ8
8の処理を繰り返す。この間に、前述のタイマ割り込み
1が発生したときは、ステップ81、82、83、84
を介して、パネル管理タスクのステータスが「レディ」
とされるので、ステップ88の判断でYESとなる。ス
テップ88でYESと判断されたときは、ステップ89
へ進んで「レディ」状態にあるタスクの中で、優先順位
が最も高いタスク(図22の表においては上側に記載さ
れているタスク)のステータスを「ラン」とし、タスク
制御ブロックに記憶された再開用のアドレス、レジスタ
等にもとづいて該タスクの処理を再開し、モニタプログ
ラムの処理からタスクの処理へと移行する。
【0159】タイマ11から第2の割り込み信号(自動
伴奏のテンポに応じた所定周期:例えば四分音符あたり
480回の割合)が発生すると、CPU11がいかなる
処理(モニタプログラムの処理中あるいはタスク処理
中)をしている途中であっても、ステップ90へと進
む。ステップ90ではそれまでの処理がモニタプログラ
ムであったか否かが判断される。モニタプログラムの処
理中であったときは、ステップ91へと進み、モニタプ
ログラムの処理中アドレス等、復帰に必要な情報を記憶
し、ステップ92で自動伴奏タスクのタスク制御ブロッ
クのステートを「レディ」とする。すなわち、タイマ割
り込み2がかかると、自動伴奏タスクが「レディ」状態
となり、後述するステップ88、ステップ89で自動伴
奏タスク(図26)が実行される。このようにして、自
動伴奏タスクはタイマ割り込み2の周期毎に実行される
ようになる。ステップ92の後、ステップ93へ進み、
記憶していたアドレス等の復帰に必要な情報にもとづい
て、中断していた位置のモニタプログラムの処理へと復
帰する。
【0160】ステップ90にてNOと判断したとき、す
なわち、いずれかのタスクの処理中にタイマ割り込みが
かかったときは、ステップ94へ進み、処理中であった
タスクの、そのときのアドレスやレジスタ等をタスク制
御ブロックの該タスクに対応する領域へと記録し、ステ
ップ95へ進んで、処理中だったタスクのステータスを
「レディ」とし、ステップ96で自動伴奏タスクのステ
ータスを「レディ」とする。そして、ステップ88へと
進む。
【0161】また、詳細は後述するが、各タスクの処理
において「WAITコール」が発生したときは、ステッ
プ97へ進む。ステップ97においては、依頼タスク
(WAITコールを発生させたタスク)における、処理
中のアドレス、レジスタ等をタスク制御ブロックに記録
し、次回の再開に備える。そして、ステップ98で依頼
タスクのステータスを「ウェイト」とし、ステップ88
へと進む。
【0162】また、各タスクの処理において「STAT
コール」が発生したときは、ステップ99へ進む。ステ
ップ99ではそれまで処理中の(すなわちSTATコー
ルを発生させた)タスクのアドレスやレジスタ等をタス
ク制御ブロックに記録し、次回の再開に備える。そして
ステップ100で処理中のタスクのステータスを「レデ
ィ」とし、ステップ101で指定タスクのステータスを
「レディ」とする。そしてステップ88へと進む。
【0163】ここで、前述したようにタイマ19による
割り込み信号1の発生があり、ステップ83またはステ
ップ87にてパネル管理タスクのステータスが「レデ
ィ」状態となり、ステップ88を介してステップ89で
パネル管理タスクが「ラン」状態となった場合、図25
のパネル管理タスクが実行される。このパネル管理タス
クに限らず、すべてのタスクには「WAITコール」を
発生する処理があり、この処理の後にタスクの処理を終
了して「ウェイト」状態となる。従って、ここではWA
ITコール処理の次からパネル管理タスクの処理が再開
するものとして説明する。
【0164】まずステップ111でパネルスキャン処理
を実行する。スキャンした結果、パネルスイッチのオン
イベントがあったか否かをステップ112で判断し、イ
ベントがあったときはステップ113へ進み、イベント
バッファにパネルスイッチのオンのイベントを書き込
む。イベントがなかったときはステップ117へと進
む。ステップ114では書き込んだイベントが何れかの
トランスフォーマースイッチのオンイベントか否かを判
断し、トランスフォーマースイッチのオンイベントであ
ったら、ステップ115へ進んでトランスフォーマータ
スクに対してSTATコールを発生する。この結果、図
23のステップ99へ処理が進み、ステップ99、10
0を介してステップ101でトランスフォーマータスク
のステータスが「レディ」となる。
【0165】その後ステップ117へ進んでWAITコ
ールを発生し、その結果、図23のステップ97へ進ん
で、ステップ98においてこのパネル管理タスクは「ウ
ェイト」状態となる。ステップ114でNOと判断した
ときはステップ116へ進んでその他のタスクに対して
STATコールを発生し、その結果、図23のモニタプ
ログラムのステップ101にてその他のタスクのステー
タスが「レディ」となる。
【0166】次に、前述したようにタイマ19による割
り込み信号2の発生があり、ステップ92またはステッ
プ96にて自動伴奏タスクのステータスが「レディ」状
態となり、ステップ88を介してステップ89で自動伴
奏タスクが「ラン」状態となった場合、図26の自動伴
奏タスクが実行される。前述したパネル管理タスクと同
様に、WAITコール処理(ステップ123)の次から
この自動伴奏タスクの処理が再開するものとして説明す
る。
【0167】まずステップ121で自動伴奏の走行状態
を示すランフラグRUN(図示しないその他のタスクに
て1又は0の設定される)の値が1であるか否かを判断
し、1(YES)である場合はステップ122へ進み、
自動伴奏処理を行う。この自動伴奏処理は、前述の図1
4における処理とほぼ同様の処理であるため、詳細説明
は省略するが、カレントパターンのデータを、1クロッ
ク分読み出す処理である。その後ステップ123へ進ん
でWAITコールを発生し、その結果、図23のステッ
プ97へ進んで、ステップ98においてこの自動伴奏タ
スクは「ウェイト」状態となる。ランフラグRUNの値
が1でなかった(NO)ときもステップ123へと進
む。
【0168】次にステップ115、そしてモニタプログ
ラムのステップ99、100、101、88、89を介
して、トランスフォーマータスクが起動された場合につ
いて説明する。前述したパネル管理タスクと同様に、W
AITコール処理(ステップ140)の次からトランス
フォーマータスクの処理が再開するものとして説明す
る。まずステップ131でイベントバッファをチェック
する。その結果、トランスフォーマースイッチのオンイ
ベントがイベントバッファに記憶されていたら、ステッ
プ132でYESと判断され、ステップ133へと進
む。
【0169】ステップ133ではイベントバッファに記
憶されているトランスフォーマー種類(=形容詞)を得
て、イベントバッファのトランスフォーマーイベントを
クリアする。そして、ステップ134で該トランスフォ
ーマー種類の変形済みパターンが変形パターンバッファ
に記憶されているか否かを判断し、記憶されている(Y
ES)ときは、ステップ135で該トランスフォーマー
種類の変形済みパターンを選択し、カレントパターンを
この変形済みパターンに差し換える。これにより、見か
け上トランスフォーマー処理が実行されたことになる
が、実際には読み出すパターンを差し換えているだけで
あるので、処理には多くの時間を必要とせず、自動伴奏
がもたつくことがない。
【0170】一方、ステップ134で変形済みパターン
が記憶されていない(NO)と判断されたときは、後述
する変形タスクによる変形済みパターン作成処理が終了
していない場合であり、この時点でトランスフォーマー
処理を実行し、指定されたトランスフォーマー種類に従
ってカレントパターンが変形される。従って、この場合
はトランスフォーマースイッチが操作された時点で実際
のトランスフォーマー処理が実行されるので、前述した
ステップ135におけるパターン差し替え処理よりも多
くの処理時間を必要とし、自動伴奏が多少もたつく可能
性もある。
【0171】その後、ステップ137で変形パターンバ
ッファをクリアし、ステップ138でトランスフォーマ
ーフラグTRANSを1にセットする。このトランスフ
ォーマーフラグTRANSはトランスフォーマースイッ
チが操作されたことを示すフラグであり、後述する変形
タスクにて利用される。そして、ステップ139で変形
タスクに対してSTATコールを発生する。この結果、
図23のステップ99へ処理が進み、ステップ99、1
00を介してステップ101で変形タスクのステータス
が「レディ」となる。
【0172】そして、ステップ131へ戻り、イベント
バッファをチェックし、ステップ132で再びトランス
フォーマースイッチのオンイベントの有無を判断する。
この場合、ステップ133でバッファのトランスフォー
マーイベントがクリアされているので、NOと判断さ
れ、ステップ140へ進み、WAITコールを発生す
る。そして、図23のステップ97へと進み、その結
果、トランスフォーマータスクは「ウェイト」状態とな
る。
【0173】図23のステップ88、89にて変形タス
クが優先順位最高のレディタスクであったとき、すなわ
ち、変形タスクよりも優先度の高いパネル管理タスク、
トランスフォーマータスク、自動伴奏タスク等が全て
「ウェイト」状態で、かつ変形タスクが「レディ」状態
であるときは、図28の変形タスクが実行される。ステ
ップ151ではトランスフォーマーフラグTRANSが
1であるか否かを判断し、1(YES)であるときはス
テップ152で全トランスフォーマー種類の変形済みパ
ターンの作成が終了したか否かを判断する。全ての種類
において変形済みパターンの作成が終了していない(N
O)ときには、ステップ153で次の(全く変形済みパ
ターンが作成されていないときは最初の)種類に従った
パターンを変形させるトランスフォーマー処理を実行
し、変形済みパターンを作成する。そして、ステップ1
54で作成した変形済みパターンを変形パターンバッフ
ァへと保管し、ステップ151へと進む。一方、ステッ
プ152でYESと判断されたときは、ステップ155
でトランスフォーマーフラグTRANSをクリアして、
ステップ151へと戻る。ステップ151でNOと判断
されたとき、すなわち、ステップ155でトランスフォ
ーマーフラグTRANSがクリアされた後にステップ1
51へと進んだときは、ステップ156へ進み、WAI
Tコールを発生する。その結果、図23のモニタプログ
ラムのステップ97、98において変形タスクが「ウェ
イト」状態となる。
【0174】以上のようにしてトランスフォーマースイ
ッチが操作されたとき、変形済みパターンが既に作成さ
れていた場合は、カレントパターンが変形済みパターン
に差し替えられる。この変形済みパターンの作成はパネ
ル管理タスク、トランスフォーマータスク、自動伴奏タ
スクよりも優先度の低い変形タスクにより実行される。
すなわち、変形タスクの処理中であっても、これら優先
度の高いタスクが「レディ」状態となったときには、変
形タスクの処理は中断され、優先度の高いタスクの処理
が実行される。よって、変形済みパターンの作成はCP
U11の空き時間になされることになり、自動伴奏処理
には悪影響を及ぼさない。
【0175】変形済みパターンの作成が終了する前に、
次のトランスフォーマーの指示が発生することもある
が、この場合はトランスフォーマータスク内で変形処理
が実行されるため、多少の自動伴奏処理のもたつきが発
生することもあり得るが、あまり頻繁にトランスフォー
マーの指示をしなければ、この問題はあまり生じない。
また、CPUの処理速度が向上すれば、変形済みパター
ンの作成に要する時間は短縮され、全てのトランスフォ
ーマー種類における変形済みパターンが作成されている
可能性が高くなる。
【0176】なお、変形タスクにおいて全てのトランス
フォーマー種類における変形済みパターンを作成するよ
うにしたが、指示される可能性の高い、一部のトランス
フォーマー種類のみについて変形済みパターンを作成す
るようにしてもよい。指示される可能性の高いトランス
フォーマー種類は、それまでのトランスフォーマー種類
の指定状況を元に決定すればよい。また、全種類の変形
済みパターンを作成する場合であっても、指示される可
能性の高い種類順に変形済みパターンを作成していくよ
うにすると、全種類の変形済みパターンの作成が終了し
ていない場合であっても、新たに指定された種類の変形
済みパターンが既に作成されている可能性が高くなる。
【0177】また、トランスフォーマースイッチの操作
があった時点で伴奏パターンを変更するようにしたが、
操作のあった小節の次の小節の先頭や、操作のあった時
点の次の拍等にてパターンを変更するようにしてもよ
い。また、実施例は1つのCPUで伴奏タスクと変形タ
スクの処理を行うようにしたが、それぞれ別のCPUに
よって処理するようにしてもよい。
【0178】
【発明の効果】以上のようにこの発明によれば、変更操
作が簡単かつ容易に行えるとともに、リアルタイムで伴
奏パターンを変更しても自動伴奏がもたつかないという
効果がある。
【図面の簡単な説明】
【図1】 図2の電子楽器及びパソコンが伴奏パターン
作成装置として動作する場合の機能ブロックを示す図で
ある。
【図2】 鍵盤及び音源回路を内蔵した電子楽器と、伴
奏パターンのエディット処理を行うパソコンとの詳細構
成及び両者間の接続関係を示すハードブロック図であ
る。
【図3】 図2のパソコン側のRAM及びハードディス
ク装置のデータ構成を示す図である。
【図4】 パターンテーブル領域に記憶されているアド
レス変換用のパターンテーブルの内容を示す図である。
【図5】 ディスプレイの表示例を示す図である。
【図6】 図2の鍵盤に割り当てられた各種機能の一例
を示す図である。
【図7】 図2の電子楽器のCPUが実行する処理ルー
チンの一例を示す図であり、図7(A)はメインルーチ
ンの一例を、図7(B)は図7(A)のキー処理の詳細
を、図7(C)は図7(A)のMIDI受信処理の詳細
を示す。
【図8】 図2のパソコンのCPUが実行する処理ルー
チンの一例を示す図であり、図8(A)はメインルーチ
ンの一例を、図8(B)は図8(A)のMIDI受信処
理の詳細を示す。
【図9】 受信したMIDIメッセージがノートナンバ
E0〜B1,C2,D2〜A2(#を除く),B2,C
3,D3〜F3(#を除く)に対応したノートオンメッ
セージの場合に行われる図8(B)の処理の詳細を示す
図であり、図9(A)はノートナンバE0〜B1のパタ
ーンアサインエリアキーの場合を、図9(B)はノート
ナンバC2のアサインキーの場合を、図9(C)はノー
トナンバD2〜A2(#を除く)のトランスフォーマー
キーの場合を、図9(D)はノートナンバB2のアンド
ゥキーの場合を、図9(E)はノートナンバC3のスタ
ート/ストップキーの場合を、図9(F)はノートナン
バD3〜F3(#を除く)のバンクA,B,Cキーの場
合を示す。
【図10】 受信したMIDIメッがノートナンバG
3,C#2,D#2,F#2,G#2,A#2,C#3
に対応したノートオンメッセージの場合に行われる図8
(B)の処理の詳細を示す図であり、図10(A)はノ
ートナンバG3のロックキーの場合を、図10(B)は
ノートナンバC#2,D#2のバリエーション1、2キ
ーの場合を、図10(C)はノートナンバF#2のリプ
レースキーの場合を、図10(D)はノートナンバG#
2のインサートキーの場合を、図10(E)はノートナ
ンバA#2のクォンタイズキーの場合を、図10(F)
はノートナンバC#3のデリートドラムキーの場合を示
す。
【図11】 受信したMIDIメッセージがノートナン
バD#3,F#3,G#3,A3〜E5に対応したノー
トオンメッセージの場合に行われる図8(B)の処理の
詳細を示す図であり、図11(A)はノートナンバD#
3のデリートコンポーネントキーの場合を、図11
(B)はノートナンバF#3のアクセントキーの場合
を、図11(C)はノートナンバG#3のフィルインキ
ーの場合を、図11(D)はノートナンバA3〜E5の
ドラムキーの場合を示す。
【図12】 図11(D)のフラグ対応処理1の詳細を
示す図であり図12(A)はリプレース処理を、図12
(B)はインサート処理を、図12(C)はデリートド
ラム処理を、図12(D)はデリートコンポーネント処
理を示す。
【図13】 受信したMIDIメッセージがノートナン
バC2,G3,F#2,G#2,A#2,C#3,D#
3,F#3,A3〜E5に対応したノートオフメッセー
ジの場合に行われる図6(B)の処理の詳細を示す図で
あり、図13(A)はノートナンバC2,G3,F#
2,G#2,A#2,C#3,D#3,F#3の場合を
示し、図13(B)はノートナンバA3〜E5の場合を
示す。
【図14】 4分音符当たり480回の割込みで実行さ
れるタイマ割込処理を示す図である。
【図15】 図14のステップ35のMIDIノートイ
ベント出力処理の詳細を示す図である。
【図16】 図14のステップ43のフラグ対応処理2
の詳細を示す図であり、図16(A)はアンドゥ処理
を、図16(B)はフィルイン復帰処理を、図16
(C)はバリエーション処理を、図16(D)はトラン
スフォーマー処理を示す。
【図17】 図2のパソコンのCPUが行う図8の「そ
の他の処理」の中の「パターン登録処理」の詳細を示す
図である。
【図18】 トランスフォーマー処理によってカレント
パターンの内容を変更する演算処理の一例を示す図であ
る。
【図19】 トランスフォーマー処理によってカレント
パターンの内容を変更する演算処理の他の例を示す図で
ある。
【図20】 トランスフォーマー処理によってカレント
パターンのドラム音及びベロシティーがどのように置き
替えられるのか、その様子の概念を示す図である。
【図21】 図2のディスプレイの表示画面の表示例を
示す図である。
【図22】 他の実施例におけるタスク制御ブロックを
示す図である。
【図23】 他の実施例におけるマルチタスクのモニタ
処理のフローチャートを示す図である。
【図24】 他の実施例におけるマルチタスクのモニタ
処理のフローチャートを示す図である。
【図25】 他の実施例におけるパネル管理タスク処理
のフローチャートを示す図である。
【図26】 他の実施例における自動伴奏タスク処理の
フローチャートを示す図である。
【図27】 他の実施例におけるトランスフォーマータ
スク処理のフローチャートを示す図である。
【図28】 他の実施例における変形タスク処理のフロ
ーチャートを示す図である。
【符号の説明】
1…カレントパターンメモリ、2…アサインメモリ、3
…アンドゥバッファ、4…退避メモリ、5…データベー
ス手段、6…パターンセレクタ、7…エディット手段、
8…形容詞指示手段、9…トランスフォーマー、10…
アンドゥ手段、1F…電子楽器、11…マイクロプロセ
ッサユニット(CPU)、12…ROM、13…RA
M、14…押鍵検出回路、15…スイッチ検出回路、1
6…表示回路、17…音源回路、18…サウンドシステ
ム、19…タイマ、1A…鍵盤、1B…パネルスイッ
チ、1C…表示部、1D…MIDIインターフェース、
1E…バス、20…パソコン、21…マイクロプロセッ
サユニット(CPU)、22…ROM、23…RAM、
24…ハードディスク装置、25…ディスプレイインタ
ーフェース、26…マウスインターフェース、27…ス
イッチ検出回路、28…タイマ、29…ディスプレイ、
2A…マウス、2B…パネルスイッチ、2C…MIDI
インターフェース、2D…バス。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 伴奏パターンデータを記憶した記憶手段
    と、 それぞれ前記伴奏パターンに対して与える変形を示す複
    数の形容詞を指定する指定手段と、 前記複数の形容詞に対応した変形アルゴリズムを実行し
    て、前記伴奏パターンを変形させ、各形容詞に対応した
    変形済みパターンを作成する変形パターン作成手段と、 前記指定手段によって何れかの形容詞の指定があったと
    き、前記変形パターン作成手段によって作成された複数
    の変形済みパターンの中から指定された形容詞に一致す
    るパターンを選択し、それまでの伴奏パターンと差し替
    えるパターン変更手段と、 伴奏パターンに従って自動伴奏を行う伴奏手段と、 を備えた自動伴奏装置。
  2. 【請求項2】 前記変形パターン作成手段は、前記指定
    手段が形容詞を指定し、前記パターン変更手段によって
    伴奏パターンが変更された後、次の指定に備えて変形済
    みパターンの作成を開始するものである請求項1記載の
    自動伴奏装置。
  3. 【請求項3】 前記変形パターン作成手段と前記伴奏手
    段は同一の処理装置によって処理されるものであって、
    伴奏手段の処理が変形パターン作成手段の処理に優先し
    て実行されることを特徴とする請求項1記載の自動伴奏
    装置。
JP25751694A 1994-09-27 1994-09-27 自動伴奏装置 Expired - Fee Related JP3596048B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25751694A JP3596048B2 (ja) 1994-09-27 1994-09-27 自動伴奏装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25751694A JP3596048B2 (ja) 1994-09-27 1994-09-27 自動伴奏装置

Publications (2)

Publication Number Publication Date
JPH0895566A true JPH0895566A (ja) 1996-04-12
JP3596048B2 JP3596048B2 (ja) 2004-12-02

Family

ID=17307390

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25751694A Expired - Fee Related JP3596048B2 (ja) 1994-09-27 1994-09-27 自動伴奏装置

Country Status (1)

Country Link
JP (1) JP3596048B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006171626A (ja) * 2004-12-20 2006-06-29 Oki Electric Ind Co Ltd 楽曲再生装置
JP2009048207A (ja) * 2008-10-14 2009-03-05 Yamaha Corp カラオケ装置
WO2023171522A1 (ja) * 2022-03-09 2023-09-14 ヤマハ株式会社 音響生成方法、音響生成システムおよびプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006171626A (ja) * 2004-12-20 2006-06-29 Oki Electric Ind Co Ltd 楽曲再生装置
JP2009048207A (ja) * 2008-10-14 2009-03-05 Yamaha Corp カラオケ装置
WO2023171522A1 (ja) * 2022-03-09 2023-09-14 ヤマハ株式会社 音響生成方法、音響生成システムおよびプログラム

Also Published As

Publication number Publication date
JP3596048B2 (ja) 2004-12-02

Similar Documents

Publication Publication Date Title
US5777251A (en) Electronic musical instrument with musical performance assisting system that controls performance progression timing, tone generation and tone muting
JP2705568B2 (ja) 自動演奏装置
US20050016366A1 (en) Apparatus and computer program for providing arpeggio patterns
US6211453B1 (en) Performance information making device and method based on random selection of accompaniment patterns
US5756917A (en) Automatic accompaniment device capable of selecting a desired accompaniment pattern for plural accompaniment components
JPH09114462A (ja) 楽音発生方法
US5920025A (en) Automatic accompanying device and method capable of easily modifying accompaniment style
US5990404A (en) Performance data editing apparatus
EP0981128B1 (en) Automatic performance apparatus with variable arpeggio pattern
US5650583A (en) Automatic performance device capable of making and changing accompaniment pattern with ease
US5712436A (en) Automatic accompaniment apparatus employing modification of accompaniment pattern for an automatic performance
JP2500528B2 (ja) 電子楽器
JP3383108B2 (ja) 電子楽器
JP3596048B2 (ja) 自動伴奏装置
JP3340565B2 (ja) 自動伴奏装置
JPH06202654A (ja) 電子楽器
JPH0869282A (ja) 自動演奏装置
JP2900405B2 (ja) 電子楽器
JP3579916B2 (ja) 自動伴奏装置
JP2904020B2 (ja) 自動伴奏装置
JPH08194477A (ja) 自動伴奏装置
JP3116948B2 (ja) 自動伴奏装置
JP3541452B2 (ja) 自動伴奏装置
JP2904022B2 (ja) 自動伴奏装置
JP3765258B2 (ja) 電子音楽装置及び音色設定プログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040405

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20040405

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040511

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040712

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040817

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040830

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

Free format text: JAPANESE INTERMEDIATE CODE: R150

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 (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070917

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20080917

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090917

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100917

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100917

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110917

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees