JPH08194477A - 自動伴奏装置 - Google Patents

自動伴奏装置

Info

Publication number
JPH08194477A
JPH08194477A JP6251385A JP25138594A JPH08194477A JP H08194477 A JPH08194477 A JP H08194477A JP 6251385 A JP6251385 A JP 6251385A JP 25138594 A JP25138594 A JP 25138594A JP H08194477 A JPH08194477 A JP H08194477A
Authority
JP
Japan
Prior art keywords
pattern
accompaniment
adjective
key
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
JP6251385A
Other languages
English (en)
Other versions
JP3584503B2 (ja
Inventor
Masao Sakama
真雄 坂間
Eiichiro Aoki
栄一郎 青木
Hironobu Osakabe
広宣 刑部
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 JP25138594A priority Critical patent/JP3584503B2/ja
Priority to US08/505,585 priority patent/US5712436A/en
Publication of JPH08194477A publication Critical patent/JPH08194477A/ja
Application granted granted Critical
Publication of JP3584503B2 publication Critical patent/JP3584503B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 自動伴奏パターンの変更を容易に行えるよう
にした。 【構成】 伴奏パターンデータを記憶した記憶手段と、
それぞれ前記伴奏パターンに対して与える変形を示す形
容詞に対応した複数の指定操作子と、前記指定操作子の
操作に応じて形容詞を指定する指定手段であって、前記
複数の指定操作子のうちの1つが単独で操作されたとき
は該操作子に対応した形容詞を指定するとともに、前記
複数の指定操作子のうちの何れか複数がほぼ同時に操作
されたとき、各指定操作子に対応した形容詞以外の形容
詞を指定するものと、前記指定された形容詞に対応した
変形アルゴリズムを実行して、前記伴奏パターンを変形
させる変形手段と、変形後の伴奏パターンに従って自動
伴奏を行う伴奏手段とを備え、指定操作子を操作するこ
とにより形容詞を指定し、該形容詞に従って伴奏パター
ンを変形させるようにした。

Description

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

    【特許請求の範囲】
  1. 【請求項1】 伴奏パターンデータを記憶した記憶手段
    と、 それぞれ前記伴奏パターンに対して与える変形を示す形
    容詞に対応した複数の指定操作子と、 前記指定操作子の操作に応じて形容詞を指定する指定手
    段であって、前記複数の指定操作子のうちの1つが単独
    で操作されたときは、該操作子に対応した形容詞を指定
    するとともに、前記複数の指定操作子のうちの何れか複
    数がほぼ同時に操作されたときは、各指定操作子に対応
    した形容詞以外の形容詞を指定するものと、 前記指定された形容詞に対応した変形アルゴリズムを実
    行して、前記伴奏パターンを変形させる変形手段と、 変形後の伴奏パターンに従って自動伴奏を行う伴奏手段
    と、 を備えた自動伴奏装置。
  2. 【請求項2】 伴奏パターンデータを記憶した記憶手段
    と、 前記伴奏パターンに対して与える変形を示す複数の形容
    詞を指定する指定手段であって、各形容詞は対をなす反
    対の形容詞が設定されているものと、 前記指定された形容詞に対応した変形アルゴリズムを実
    行して、前記伴奏パターンを変形させる変形手段と、 今回指定された形容詞が前回指定された形容詞と対をな
    す反対の形容詞であるか否かを判断する判断手段と、 前記判断手段によって反対の形容詞が指定されたことが
    判断されたとき、前回の形容詞指定による変形前の伴奏
    パターンに戻すアンドゥ手段と、 変形後あるいはアンドゥ手段によって変形前に戻された
    伴奏パターンに従って自動伴奏を行う伴奏手段と、 を備えた自動伴奏装置。
  3. 【請求項3】 伴奏パターンデータを記憶した記憶手段
    と、 それぞれ前記伴奏パターンに対して与える変形を示す形
    容詞に対応した複数の指定操作子と、 前記指定操作子の操作に応じて形容詞を指定する指定手
    段であって、前記複数の指定操作子のうちの何れか複数
    がほぼ同時に操作されたとき、そのうちの1つのみを有
    効とするものと、 前記指定された形容詞に対応した変形アルゴリズムを実
    行して、前記伴奏パターンを変形させる変形手段と、 変形後の伴奏パターンに従って自動伴奏を行う伴奏手段
    と、 を備えた自動伴奏装置。
  4. 【請求項4】 伴奏パターンデータを記憶した記憶手段
    と、 前記伴奏パターンに対して与える変形を示す形容詞を指
    定する指定手段と、 前記指定された形容詞に対応した変形アルゴリズムを実
    行して、前記伴奏パターンを変形させる変形手段と、 第1のモードと第2のモードの何れかを設定するモード
    設定手段と、 前記変形手段による変形のタイミングを、前記モード設
    定手段により第1のモードが設定されているときには形
    容詞の指定があった小節内で変形処理を実行するととも
    に、第2のモードが設定されているときには形容詞の指
    定があった小節の次の小節の先頭で変形処理を実行する
    ように制御する変形タイミング制御手段と、 変形後の伴奏パターンに従って自動伴奏を行う伴奏手段
    と、 を備えた自動伴奏装置。
  5. 【請求項5】 伴奏パターンデータを記憶した記憶手段
    と、 前記伴奏パターンに対して与える変形を示す形容詞を指
    定する指定手段と、 前記指定された形容詞に対応した変形アルゴリズムを実
    行して、前記伴奏パターンを変形させる変形手段と、 前記変形手段による変形のタイミングを、前記指定手段
    による形容詞の指定が小節内の所定のタイミングよりも
    前になされた場合は、その小節内で変形処理を実行する
    とともに、形容詞の指定が小節内の所定のタイミングよ
    りも後になされた場合は、その小節の次の小節の先頭で
    変形処理を実行するように制御する変形タイミング制御
    手段と、 変形後の伴奏パターンに従って自動伴奏を行う伴奏手段
    と、 を備えた自動伴奏装置。
  6. 【請求項6】 伴奏パターンデータを記憶した記憶手段
    と、 前記伴奏パターンに対して与える変形を示す形容詞を指
    定するための指定操作子と、 前記指定操作子の操作に応じて形容詞を指定する指定手
    段と、 前記指定手段による指定に応じて、該指定された形容詞
    に対応した変形アルゴリズムを実行して、前記伴奏パタ
    ーンを変形させる変形手段であって、所定タイミングに
    おいて前記指定操作子が操作された状態にあることを検
    出したときは、さらに該所定タイミングにおいて変形処
    理を実行するものと、 変形後の伴奏パターンに従って自動伴奏を行う伴奏手段
    と、 を備えた自動伴奏装置。
JP25138594A 1994-07-25 1994-09-20 自動伴奏装置 Expired - Fee Related JP3584503B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP25138594A JP3584503B2 (ja) 1994-09-20 1994-09-20 自動伴奏装置
US08/505,585 US5712436A (en) 1994-07-25 1995-07-21 Automatic accompaniment apparatus employing modification of accompaniment pattern for an automatic performance

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25138594A JP3584503B2 (ja) 1994-09-20 1994-09-20 自動伴奏装置

Publications (2)

Publication Number Publication Date
JPH08194477A true JPH08194477A (ja) 1996-07-30
JP3584503B2 JP3584503B2 (ja) 2004-11-04

Family

ID=17222056

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25138594A Expired - Fee Related JP3584503B2 (ja) 1994-07-25 1994-09-20 自動伴奏装置

Country Status (1)

Country Link
JP (1) JP3584503B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008076721A (ja) * 2006-09-21 2008-04-03 Yamaha Corp 電子鍵盤楽器

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0451198A (ja) * 1990-06-19 1992-02-19 Casio Comput Co Ltd 自動伴奏装置
JPH04274296A (ja) * 1991-02-28 1992-09-30 Kawai Musical Instr Mfg Co Ltd 自動演奏装置
JPH0540476A (ja) * 1991-08-07 1993-02-19 Yamaha Corp 電子楽器
JPH06130951A (ja) * 1992-10-16 1994-05-13 Yamaha Corp 電子楽器
JPH06149243A (ja) * 1992-11-12 1994-05-27 Yamaha Corp 電子楽器
JPH06175658A (ja) * 1992-12-02 1994-06-24 Matsushita Electric Ind Co Ltd 電子楽器
JPH07287578A (ja) * 1994-04-18 1995-10-31 Yamaha Corp 自動伴奏装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0451198A (ja) * 1990-06-19 1992-02-19 Casio Comput Co Ltd 自動伴奏装置
JPH04274296A (ja) * 1991-02-28 1992-09-30 Kawai Musical Instr Mfg Co Ltd 自動演奏装置
JPH0540476A (ja) * 1991-08-07 1993-02-19 Yamaha Corp 電子楽器
JPH06130951A (ja) * 1992-10-16 1994-05-13 Yamaha Corp 電子楽器
JPH06149243A (ja) * 1992-11-12 1994-05-27 Yamaha Corp 電子楽器
JPH06175658A (ja) * 1992-12-02 1994-06-24 Matsushita Electric Ind Co Ltd 電子楽器
JPH07287578A (ja) * 1994-04-18 1995-10-31 Yamaha Corp 自動伴奏装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008076721A (ja) * 2006-09-21 2008-04-03 Yamaha Corp 電子鍵盤楽器

Also Published As

Publication number Publication date
JP3584503B2 (ja) 2004-11-04

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
US7091410B2 (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
US5990404A (en) Performance data editing apparatus
JP7405122B2 (ja) 電子機器、電子機器の発音方法、及びプログラム
JP2500528B2 (ja) 電子楽器
EP0981128A1 (en) Automatic performance apparatus with variable arpeggio pattern
US5712436A (en) Automatic accompaniment apparatus employing modification of accompaniment pattern for an automatic performance
US5650583A (en) Automatic performance device capable of making and changing accompaniment pattern with ease
JP3383108B2 (ja) 電子楽器
JP3596048B2 (ja) 自動伴奏装置
JP3340565B2 (ja) 自動伴奏装置
JPH06202654A (ja) 電子楽器
JP3579916B2 (ja) 自動伴奏装置
JP2904020B2 (ja) 自動伴奏装置
JP3116948B2 (ja) 自動伴奏装置
JP3584503B2 (ja) 自動伴奏装置
JP3541452B2 (ja) 自動伴奏装置
JPH0644192B2 (ja) 自動リズム演秦装置
JP2904022B2 (ja) 自動伴奏装置
JP3632487B2 (ja) 電子楽器等における和音検出装置
JP3765258B2 (ja) 電子音楽装置及び音色設定プログラム
JP2756799B2 (ja) 自動リズム演奏装置
JP2570411B2 (ja) 演奏装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040604

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040726

R150 Certificate of patent 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 (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070813

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20080813

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090813

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100813

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100813

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110813

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees