JP2828119B2 - 自動伴奏装置 - Google Patents
自動伴奏装置Info
- Publication number
- JP2828119B2 JP2828119B2 JP3023726A JP2372691A JP2828119B2 JP 2828119 B2 JP2828119 B2 JP 2828119B2 JP 3023726 A JP3023726 A JP 3023726A JP 2372691 A JP2372691 A JP 2372691A JP 2828119 B2 JP2828119 B2 JP 2828119B2
- Authority
- JP
- Japan
- Prior art keywords
- pattern
- song
- mode
- accompaniment
- fill
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【0001】
【産業上の利用分野】この発明は、自動伴奏装置に関
し、詳しくは自動伴奏を行うためのソングデータの生成
を容易に行なうことのできる自動伴奏装置に関する。
し、詳しくは自動伴奏を行うためのソングデータの生成
を容易に行なうことのできる自動伴奏装置に関する。
【0002】
【従来の技術】従来より、いわゆるパターンメモリに一
定区間(例えば、1小節)の伴奏内容を表す複数の異な
る伴奏パターンを記憶しておき、一方ソングメモリにこ
の伴奏パターンを指定するパターン指定情報を複数記憶
しておき、所定のテンポでこのソングメモリのパターン
指定情報を順次読出し、さらに読出したパターン指定情
報に基づいて伴奏パターンを読出し、その伴奏パターン
にしたがって各種のリズム音やベース音などを発音する
自動伴奏装置が知られている。
定区間(例えば、1小節)の伴奏内容を表す複数の異な
る伴奏パターンを記憶しておき、一方ソングメモリにこ
の伴奏パターンを指定するパターン指定情報を複数記憶
しておき、所定のテンポでこのソングメモリのパターン
指定情報を順次読出し、さらに読出したパターン指定情
報に基づいて伴奏パターンを読出し、その伴奏パターン
にしたがって各種のリズム音やベース音などを発音する
自動伴奏装置が知られている。
【0003】例えば、特公平1−39117号公報に
は、小節ごとに伴奏パターンを指定するパターン指定情
報を記憶する自動伴奏装置が開示されている。また、複
数の連続する小節で同じ伴奏パターンを繰返すときに
は、ソングメモリにリピートを示すデータを記憶するも
のがある。
は、小節ごとに伴奏パターンを指定するパターン指定情
報を記憶する自動伴奏装置が開示されている。また、複
数の連続する小節で同じ伴奏パターンを繰返すときに
は、ソングメモリにリピートを示すデータを記憶するも
のがある。
【0004】図15は、従来の自動伴奏装置におけるソ
ングメモリに記憶したソングデータの例である。ソング
データは伴奏パターンを指定するパターン指定情報とリ
ピートを示すデータとを含み、ソングメモリの連続する
領域PART001,PART002,PART00
3,…に順次記憶されている。ここでは各領域PART
001,PART002,…はそれぞれ1小節に対応す
るとする。
ングメモリに記憶したソングデータの例である。ソング
データは伴奏パターンを指定するパターン指定情報とリ
ピートを示すデータとを含み、ソングメモリの連続する
領域PART001,PART002,PART00
3,…に順次記憶されている。ここでは各領域PART
001,PART002,…はそれぞれ1小節に対応す
るとする。
【0005】自動伴奏の際には、まずソングデータの第
1番目の領域PART001を読み出す。領域PART
001にはパターン00を指定する情報(例えばパター
ンメモリ中の当該パターンのアドレス)が書き込まれて
いるので、パターンメモリからこの伴奏パターン00が
読み出され、このパターン00にしたがう伴奏パターン
で自動伴奏される。次に、領域PART002はリピー
トの開始、領域PART003はリピートするパター
ン、領域PART004はリピート範囲の終了とリピー
ト回数を示すデータが、それぞれ記憶されている。した
がって、伴奏パターン01が4回繰返し自動伴奏され
る。
1番目の領域PART001を読み出す。領域PART
001にはパターン00を指定する情報(例えばパター
ンメモリ中の当該パターンのアドレス)が書き込まれて
いるので、パターンメモリからこの伴奏パターン00が
読み出され、このパターン00にしたがう伴奏パターン
で自動伴奏される。次に、領域PART002はリピー
トの開始、領域PART003はリピートするパター
ン、領域PART004はリピート範囲の終了とリピー
ト回数を示すデータが、それぞれ記憶されている。した
がって、伴奏パターン01が4回繰返し自動伴奏され
る。
【0006】なお、領域PART004のようにリピー
ト回数を記憶する場合、この領域PART004のリピ
ート範囲終了のデータが読み出されて(この時点で既
に、リピートすべき伴奏パターンは1回読み出されてい
る)から後に再びリピートすべきパターンPART00
3に戻る回数を記憶しているので、実際に自動演奏され
る回数は記憶されている回数より1回多い。したがっ
て、図15の例ではパターン01は4回リピートされ
る。
ト回数を記憶する場合、この領域PART004のリピ
ート範囲終了のデータが読み出されて(この時点で既
に、リピートすべき伴奏パターンは1回読み出されてい
る)から後に再びリピートすべきパターンPART00
3に戻る回数を記憶しているので、実際に自動演奏され
る回数は記憶されている回数より1回多い。したがっ
て、図15の例ではパターン01は4回リピートされ
る。
【0007】従来、以上のようなソングデータを生成す
る場合は、例えば1小節などの所定区間ごとに、複数あ
る(例えば100種類程度)伴奏パターンの中から所望
の1つを選択し、順次ソングメモリの各領域に設定して
いく必要があった。
る場合は、例えば1小節などの所定区間ごとに、複数あ
る(例えば100種類程度)伴奏パターンの中から所望
の1つを選択し、順次ソングメモリの各領域に設定して
いく必要があった。
【0008】
【発明が解決しようとする課題】従来のソングデータの
設定の方式では所定区間ごとに伴奏パターンを1つ1つ
選択していくので、伴奏の全体の流れが把握しづらいと
いう問題点があった。また、多くの種類の伴奏パターン
の中から1つを選択するので、選択が繁雑で入力を誤っ
てしまうことも少なくなかった。
設定の方式では所定区間ごとに伴奏パターンを1つ1つ
選択していくので、伴奏の全体の流れが把握しづらいと
いう問題点があった。また、多くの種類の伴奏パターン
の中から1つを選択するので、選択が繁雑で入力を誤っ
てしまうことも少なくなかった。
【0009】この発明は、上述の従来例における問題点
に鑑み、自動伴奏のソングデータを設定するのに大まか
な伴奏の流れをイメージして設定できるようにし、また
誤入力が少なく入力操作も容易な自動伴奏装置を提供す
ることを目的とする。
に鑑み、自動伴奏のソングデータを設定するのに大まか
な伴奏の流れをイメージして設定できるようにし、また
誤入力が少なく入力操作も容易な自動伴奏装置を提供す
ることを目的とする。
【0010】
【課題を解決するための手段】この目的を達成するた
め、請求項1に係る自動伴奏装置は、曲のイントロダク
ションに用いる伴奏パターンであるイントロパターン
と、イントロダクションに続く本体部に用いる伴奏パタ
ーンである本体部パターンと、曲のエンディングに用い
る伴奏パターンであるエンディングパターンを記憶した
記憶手段と、ユーザが曲全体の長さ、および該曲中の本
体部の開始位置と終了位置とを指定するための入力手段
と、前記入力手段により入力された曲全体長さを有する
ソングデータであって、指定された本体部の開始位置の
前に前記イントロパターンを配置し、指定された本体部
の開始位置から終了位置までの区間に前記本体部パター
ンを配置し、指定された本体部の終了位置の後にエンデ
ィングパターンを配置したソングデータを生成するソン
グデータ生成手段とを具備することを特徴とする。ま
た、請求項2に係る自動伴奏装置は、通常の伴奏パター
ンであるノーマルパターンと、該ノーマルパターンに代
えて挿入される伴奏パターンであるフィルインパターン
とを記憶した記憶手段と、ユーザが演奏区間全体の長
さ、および該演奏区間中のフィルインの位置を指定する
ための入力手段と、前記入力手段により入力された演奏
区間全体長さを有するソングデータであって、指定され
たフィルインの位置に前記フィルインパターンを配置
し、残りの区間に前記ノーマルパターンを配置したソン
グデータを生成するソングデータ生成手段とを具備する
ことを特徴とする。
め、請求項1に係る自動伴奏装置は、曲のイントロダク
ションに用いる伴奏パターンであるイントロパターン
と、イントロダクションに続く本体部に用いる伴奏パタ
ーンである本体部パターンと、曲のエンディングに用い
る伴奏パターンであるエンディングパターンを記憶した
記憶手段と、ユーザが曲全体の長さ、および該曲中の本
体部の開始位置と終了位置とを指定するための入力手段
と、前記入力手段により入力された曲全体長さを有する
ソングデータであって、指定された本体部の開始位置の
前に前記イントロパターンを配置し、指定された本体部
の開始位置から終了位置までの区間に前記本体部パター
ンを配置し、指定された本体部の終了位置の後にエンデ
ィングパターンを配置したソングデータを生成するソン
グデータ生成手段とを具備することを特徴とする。ま
た、請求項2に係る自動伴奏装置は、通常の伴奏パター
ンであるノーマルパターンと、該ノーマルパターンに代
えて挿入される伴奏パターンであるフィルインパターン
とを記憶した記憶手段と、ユーザが演奏区間全体の長
さ、および該演奏区間中のフィルインの位置を指定する
ための入力手段と、前記入力手段により入力された演奏
区間全体長さを有するソングデータであって、指定され
たフィルインの位置に前記フィルインパターンを配置
し、残りの区間に前記ノーマルパターンを配置したソン
グデータを生成するソングデータ生成手段とを具備する
ことを特徴とする。
【0011】さらに請求項1,2において、前記ソング
データ生成手段により生成されたソングデータを記憶す
る別の記憶手段と、この記憶手段に記憶されたソングデ
ータに基づいて自動伴奏を行う伴奏手段とを具備すると
よい。また、請求項1,2における記憶手段において
は、複数の伴奏パターンを所定のインデックスで階層化
して記憶しているようにするとよい。
データ生成手段により生成されたソングデータを記憶す
る別の記憶手段と、この記憶手段に記憶されたソングデ
ータに基づいて自動伴奏を行う伴奏手段とを具備すると
よい。また、請求項1,2における記憶手段において
は、複数の伴奏パターンを所定のインデックスで階層化
して記憶しているようにするとよい。
【0012】
【作用】請求項1に係る自動伴奏装置によれば、記憶手
段にイントロパターンと本体部パターンとエンディング
パターンとを記憶し、ユーザが曲全体の長さとその中で
の本体部の開始位置と終了位置を指定すると、ソングデ
ータ生成手段により、本体部区間の前にイントロパター
ンを配置し、本体部区間に本体部パターンを配置し、本
体部区間の後にエンディングパターンを配置したソング
データが自動的に生成される。請求項2に係る自動伴奏
装置によれば、記憶手段にノーマルパターンとフィルイ
ンパターンとを記憶し、ユーザが演奏区間全体の長さと
その中でのフィルインの位置を指定すると、ソングデー
タ生成手段により、フィルインの位置にフィルインパタ
ーンを配置し、残りの区間にノーマルパターンを配置し
たソングデータが自動的に生成される。
段にイントロパターンと本体部パターンとエンディング
パターンとを記憶し、ユーザが曲全体の長さとその中で
の本体部の開始位置と終了位置を指定すると、ソングデ
ータ生成手段により、本体部区間の前にイントロパター
ンを配置し、本体部区間に本体部パターンを配置し、本
体部区間の後にエンディングパターンを配置したソング
データが自動的に生成される。請求項2に係る自動伴奏
装置によれば、記憶手段にノーマルパターンとフィルイ
ンパターンとを記憶し、ユーザが演奏区間全体の長さと
その中でのフィルインの位置を指定すると、ソングデー
タ生成手段により、フィルインの位置にフィルインパタ
ーンを配置し、残りの区間にノーマルパターンを配置し
たソングデータが自動的に生成される。
【0013】
【実施例】以下、図面を用いてこの発明の実施例を説明
する。
する。
【0014】図1は、この発明の一実施例に係る自動伴
奏装置のブロック構成を示す。この自動伴奏装置は、装
置全体の動作を制御する中央処理装置(CPU)1、各
種のスイッチ類や表示装置などを備えた操作パネル2、
およびパッド3を有する。パッド3は、ノーマルモード
(モードについては後述する)においてはこれを押打す
ることにより打楽器音を発生し、パターンエディットモ
ードにおいては伴奏パターンを入力するために用いる。
奏装置のブロック構成を示す。この自動伴奏装置は、装
置全体の動作を制御する中央処理装置(CPU)1、各
種のスイッチ類や表示装置などを備えた操作パネル2、
およびパッド3を有する。パッド3は、ノーマルモード
(モードについては後述する)においてはこれを押打す
ることにより打楽器音を発生し、パターンエディットモ
ードにおいては伴奏パターンを入力するために用いる。
【0015】さらにこの自動伴奏装置は、ワーキングメ
モリ4、プログラムメモリ5、パターンメモリ6、およ
びソングメモリ7を有する。ワーキングメモリ4は各種
のワークレジスタやフラグなどに用いる。プログラムメ
モリ5はCPU1が実行するプログラムなどを記憶す
る。パターンメモリ6は伴奏パターンを表すパターンデ
ータを記憶する。ソングメモリ7はソングデータを記憶
する。
モリ4、プログラムメモリ5、パターンメモリ6、およ
びソングメモリ7を有する。ワーキングメモリ4は各種
のワークレジスタやフラグなどに用いる。プログラムメ
モリ5はCPU1が実行するプログラムなどを記憶す
る。パターンメモリ6は伴奏パターンを表すパターンデ
ータを記憶する。ソングメモリ7はソングデータを記憶
する。
【0016】8はCPU1に対し所定時間間隔(ここで
は1msec)でタイマ割込みをかけるクロック、9は
トーンジェネレータ(TG)、10はサウンドシステ
ム、11は双方向のバスラインを示す。
は1msec)でタイマ割込みをかけるクロック、9は
トーンジェネレータ(TG)、10はサウンドシステ
ム、11は双方向のバスラインを示す。
【0017】図2は、操作パネル2の外観を示す。操作
パネル2は、テンキー21、カーソルキー22、表示装
置23、パターンスイッチ24、ソングスイッチ25、
休符スイッチ26、メイクスイッチ27、スタートスイ
ッチ28、およびストップスイッチ29を有する。カー
ソルキー22は、上向きカーソルキー22a、下向きカ
ーソルキー22b、右向きカーソルキー22c、左向き
カーソルキー22dからなる。
パネル2は、テンキー21、カーソルキー22、表示装
置23、パターンスイッチ24、ソングスイッチ25、
休符スイッチ26、メイクスイッチ27、スタートスイ
ッチ28、およびストップスイッチ29を有する。カー
ソルキー22は、上向きカーソルキー22a、下向きカ
ーソルキー22b、右向きカーソルキー22c、左向き
カーソルキー22dからなる。
【0018】次に、図1,2の自動伴奏装置におけるモ
ードについて説明する。
ードについて説明する。
【0019】この自動伴奏装置は以下の6つのモードを
有する。 (1)ノーマルモード 通常の演奏を行うモードである。操作パネル2から所定
のパラメータをあらかじめ入力しておき、パッド3を押
打することにより、所定の音色の打楽器音が発音され
る。 (2)パターンモード 所定区間例えば1小節ごとの伴奏パターンを作成するた
めに、その伴奏パターンを特定するインデックスを設定
するモードである。 (3)パターンエディットモード 上記パターンモードで設定したインデックスにより特定
される伴奏パターンの内容を作成するモードである。例
えば1小節内のどのタイミングで打楽器音を発生させる
か、あるいはどのタイミングを休符とするかなどを入力
する。
有する。 (1)ノーマルモード 通常の演奏を行うモードである。操作パネル2から所定
のパラメータをあらかじめ入力しておき、パッド3を押
打することにより、所定の音色の打楽器音が発音され
る。 (2)パターンモード 所定区間例えば1小節ごとの伴奏パターンを作成するた
めに、その伴奏パターンを特定するインデックスを設定
するモードである。 (3)パターンエディットモード 上記パターンモードで設定したインデックスにより特定
される伴奏パターンの内容を作成するモードである。例
えば1小節内のどのタイミングで打楽器音を発生させる
か、あるいはどのタイミングを休符とするかなどを入力
する。
【0020】(4)ソングモード ソングデータを作成するために、そのソングデータを構
成する伴奏パターンを特定するインデックスを含むパラ
メータを入力するモードである。 (5)ソングメイクモード 上記ソングモードで入力したインデックスにしたがい、
ソングデータを自動生成するモードである。 (6)ソングプレイモード 記憶されているソングデータに基づき自動伴奏を実行す
るモードである。
成する伴奏パターンを特定するインデックスを含むパラ
メータを入力するモードである。 (5)ソングメイクモード 上記ソングモードで入力したインデックスにしたがい、
ソングデータを自動生成するモードである。 (6)ソングプレイモード 記憶されているソングデータに基づき自動伴奏を実行す
るモードである。
【0021】図3は、この実施例の自動伴奏装置におけ
る状態遷移図である。
る状態遷移図である。
【0022】ノーマルモードにおいてパターンスイッチ
24を押下するとパターンモードに移行する。パターン
モードにおいて再度パターンスイッチ24を押下すると
ノーマルモードに戻る。パターンモードにおいてスター
トスイッチ28を押下するとパターンエディットモード
に移行する。パターンエディットモードにおいてストッ
プスイッチ29を押下するとノーマルモードに移行す
る。
24を押下するとパターンモードに移行する。パターン
モードにおいて再度パターンスイッチ24を押下すると
ノーマルモードに戻る。パターンモードにおいてスター
トスイッチ28を押下するとパターンエディットモード
に移行する。パターンエディットモードにおいてストッ
プスイッチ29を押下するとノーマルモードに移行す
る。
【0023】パターンモードは4つのサブモードを有す
る。各サブモードにおいて、伴奏パターンのインデック
スを設定する。ノーマルモードからパターンスイッチ2
4を押下してパターンモードに移行した時点ではスタイ
ル設定サブモードになる。
る。各サブモードにおいて、伴奏パターンのインデック
スを設定する。ノーマルモードからパターンスイッチ2
4を押下してパターンモードに移行した時点ではスタイ
ル設定サブモードになる。
【0024】スタイル設定サブモードでは、これから作
成する伴奏パターンデータのスタイルを設定する。スタ
イルとはロック、あるいはポップスなどの音楽的な種別
を示すインデックスである。スタイル設定サブモードに
おいて下向きカーソルキー22bを押下するとイントロ
ソロエンディング設定サブモードに移行し、上向きカー
ソルキー22aを押下するとクォンタイズ設定サブモー
ドに移行する。
成する伴奏パターンデータのスタイルを設定する。スタ
イルとはロック、あるいはポップスなどの音楽的な種別
を示すインデックスである。スタイル設定サブモードに
おいて下向きカーソルキー22bを押下するとイントロ
ソロエンディング設定サブモードに移行し、上向きカー
ソルキー22aを押下するとクォンタイズ設定サブモー
ドに移行する。
【0025】イントロソロエンディング設定サブモード
では、イントロソロエンディングに関するインデックス
を設定する。すなわち、これから作成する伴奏パターン
データが、イントロダクション(序奏部)のパターン
か、ソロ(序奏部に続く本体部)のパターンか、あるい
はエンディング(終奏部)のパターンかを設定する。イ
ントロソロエンディング設定サブモードにおいて、上向
きカーソルキー22aを押下するとスタイル設定サブモ
ードに移行し、下向きカーソルキー22bを押下すると
ノーマルフィルイン設定サブモードに移行する。
では、イントロソロエンディングに関するインデックス
を設定する。すなわち、これから作成する伴奏パターン
データが、イントロダクション(序奏部)のパターン
か、ソロ(序奏部に続く本体部)のパターンか、あるい
はエンディング(終奏部)のパターンかを設定する。イ
ントロソロエンディング設定サブモードにおいて、上向
きカーソルキー22aを押下するとスタイル設定サブモ
ードに移行し、下向きカーソルキー22bを押下すると
ノーマルフィルイン設定サブモードに移行する。
【0026】ノーマルフィルイン設定サブモードでは、
ノーマルフィルインに関するインデックスを設定する。
すなわち、これから作成する伴奏パターンデータが、ノ
ーマルパターンかフィルインパターンかを設定する。ノ
ーマルパターンとは通常の伴奏パターンであり、フィル
インパターンとは適当な位置に通常の伴奏パターンに代
えて挿入される伴奏パターンである。ノーマルフィルイ
ン設定サブモードにおいて、上向き22aカーソルキー
を押下するとイントロソロエンディング設定サブモード
に移行し、下向きカーソルキー22bを押下するとクォ
ンタイズ設定サブモードに移行する。
ノーマルフィルインに関するインデックスを設定する。
すなわち、これから作成する伴奏パターンデータが、ノ
ーマルパターンかフィルインパターンかを設定する。ノ
ーマルパターンとは通常の伴奏パターンであり、フィル
インパターンとは適当な位置に通常の伴奏パターンに代
えて挿入される伴奏パターンである。ノーマルフィルイ
ン設定サブモードにおいて、上向き22aカーソルキー
を押下するとイントロソロエンディング設定サブモード
に移行し、下向きカーソルキー22bを押下するとクォ
ンタイズ設定サブモードに移行する。
【0027】クォンタイズ設定サブモードでは、これか
ら作成する伴奏パターンデータのクォンタイズを設定す
る。クォンタイズとは、この伴奏パターンをどれ程の分
解能で区分するかを示す値である。このクォンタイズの
値に応じて区分された区間を単位として、発音すべき打
楽器音をパターンエディットモードにて設定できる。ク
ォンタイズ設定サブモードにおいて、上向きカーソルキ
ー22aを押下するとノーマルフィルイン設定サブモー
ドに移行し、下向きカーソルキー22bを押下するとス
タイル設定サブモードに移行する。
ら作成する伴奏パターンデータのクォンタイズを設定す
る。クォンタイズとは、この伴奏パターンをどれ程の分
解能で区分するかを示す値である。このクォンタイズの
値に応じて区分された区間を単位として、発音すべき打
楽器音をパターンエディットモードにて設定できる。ク
ォンタイズ設定サブモードにおいて、上向きカーソルキ
ー22aを押下するとノーマルフィルイン設定サブモー
ドに移行し、下向きカーソルキー22bを押下するとス
タイル設定サブモードに移行する。
【0028】ノーマルモードにおいてソングスイッチ2
5を押下するとソングモードに移行する。ソングモード
において再度ソングスイッチ25を押下するとノーマル
モードに戻る。ソングモードにおいてメイクスイッチ2
7を押下するとソングメイクモードに移行する。ソング
メイクモードにおいて再度メイクスイッチ27を押下す
るとソングモードに戻る。ソングモードにおいてスター
トスイッチ28を押下するとソングプレイモードに移行
する。ソングメイクモードにおいてスタートスイッチ2
8を押下するとソングプレイモードに移行する。ソング
プレイモードにおいてストップスイッチ29を押下する
とノーマルモードに移行する。
5を押下するとソングモードに移行する。ソングモード
において再度ソングスイッチ25を押下するとノーマル
モードに戻る。ソングモードにおいてメイクスイッチ2
7を押下するとソングメイクモードに移行する。ソング
メイクモードにおいて再度メイクスイッチ27を押下す
るとソングモードに戻る。ソングモードにおいてスター
トスイッチ28を押下するとソングプレイモードに移行
する。ソングメイクモードにおいてスタートスイッチ2
8を押下するとソングプレイモードに移行する。ソング
プレイモードにおいてストップスイッチ29を押下する
とノーマルモードに移行する。
【0029】ソングモードは7つのサブモードを有す
る。各サブモードにおいて、ソングデータを自動生成す
るためのパラメータを設定する。このパラメータはパタ
ーンを特定するインデックスを含む。ノーマルモードか
らソングスイッチ25を押下してソングモードに移行し
た時点ではソングナンバ設定サブモードになる。
る。各サブモードにおいて、ソングデータを自動生成す
るためのパラメータを設定する。このパラメータはパタ
ーンを特定するインデックスを含む。ノーマルモードか
らソングスイッチ25を押下してソングモードに移行し
た時点ではソングナンバ設定サブモードになる。
【0030】ソングナンバ設定サブモードでは、これか
ら作成するソングデータのソングナンバを設定する。ソ
ングナンバはソングデータを特定する番号である。ソン
グナンバ設定サブモードにおいて下向きカーソルキー2
2bを押下するとスタイル設定サブモードに移行し、上
向きカーソルキー22aを押下するとフィルイン設定サ
ブモードに移行する。
ら作成するソングデータのソングナンバを設定する。ソ
ングナンバはソングデータを特定する番号である。ソン
グナンバ設定サブモードにおいて下向きカーソルキー2
2bを押下するとスタイル設定サブモードに移行し、上
向きカーソルキー22aを押下するとフィルイン設定サ
ブモードに移行する。
【0031】スタイル設定サブモードでは、これから作
成するソングデータのスタイルを設定する。スタイル設
定サブモードにおいて下向きカーソルキー22bを押下
するとテンポ設定サブモードに移行し、上向きカーソル
キー22aを押下するとソングナンバ設定サブモードに
移行する。
成するソングデータのスタイルを設定する。スタイル設
定サブモードにおいて下向きカーソルキー22bを押下
するとテンポ設定サブモードに移行し、上向きカーソル
キー22aを押下するとソングナンバ設定サブモードに
移行する。
【0032】以下、ソングモードの他のサブモードとし
ては、テンポ設定サブモード、曲全体の小節数設定サブ
モード、ソロ開始小節数設定サブモード、ソロ終了小節
数設定サブモード、およびフィルイン小節設定サブモー
ドがあるが、図3では省略する。これらのサブモード間
の移行は上向きカーソルキー22aまたは下向きカーソ
ルキー22bの押下により行われる。これらのサブモー
ドは、作成するソングデータに関する種々のパラメータ
を設定するためのサブモードである。
ては、テンポ設定サブモード、曲全体の小節数設定サブ
モード、ソロ開始小節数設定サブモード、ソロ終了小節
数設定サブモード、およびフィルイン小節設定サブモー
ドがあるが、図3では省略する。これらのサブモード間
の移行は上向きカーソルキー22aまたは下向きカーソ
ルキー22bの押下により行われる。これらのサブモー
ドは、作成するソングデータに関する種々のパラメータ
を設定するためのサブモードである。
【0033】テンポ設定サブモードでは曲のテンポを設
定する。曲全体の小節数設定サブモードでは曲全体の小
節数を設定する。ソロ開始小節数設定サブモードではソ
ロ部が何小節目から開始されるかを設定する。ソロ終了
小節数設定サブモードではソロ部が何小節目で終了する
かを設定する。フィルイン小節設定サブモードではフィ
ルインが何小節目に挿入されるか(複数でもよい)を設
定する。
定する。曲全体の小節数設定サブモードでは曲全体の小
節数を設定する。ソロ開始小節数設定サブモードではソ
ロ部が何小節目から開始されるかを設定する。ソロ終了
小節数設定サブモードではソロ部が何小節目で終了する
かを設定する。フィルイン小節設定サブモードではフィ
ルインが何小節目に挿入されるか(複数でもよい)を設
定する。
【0034】次に図4を参照して、パターンモードおよ
びパターンエディットモードの操作と画面表示について
説明する。
びパターンエディットモードの操作と画面表示について
説明する。
【0035】上述したように、ノーマルモードにおいて
パターンスイッチ24を押下するとパターンモードのス
タイル設定サブモードとなる。41はスタイル設定サブ
モードの表示画面例である。画面上には、スタイルナン
バの入力を促すメッセージが表示されている。46はカ
ーソルである。テンキー21によりスタイルナンバを入
力すると、カーソル46の位置にそのナンバが表示さ
れ、スタイルナンバとして設定される。
パターンスイッチ24を押下するとパターンモードのス
タイル設定サブモードとなる。41はスタイル設定サブ
モードの表示画面例である。画面上には、スタイルナン
バの入力を促すメッセージが表示されている。46はカ
ーソルである。テンキー21によりスタイルナンバを入
力すると、カーソル46の位置にそのナンバが表示さ
れ、スタイルナンバとして設定される。
【0036】次に、下向きカーソルキー22bを押下す
ると、イントロソロエンディング設定サブモードとな
る。42はイントロソロエンディング設定サブモードの
表示画面例である。画面上には、イントロ、ソロまたは
エンディングの選択を促すメッセージが表示されてい
る。右向きカーソルキー22cまたは左向きカーソルキ
ー22dを押下することにより、カーソル46を画面上
の「INTRO」、「SOLO」または「ENDIN
G」に設定することができ、これによりイントロ、ソロ
またはエンディングを選択できる。
ると、イントロソロエンディング設定サブモードとな
る。42はイントロソロエンディング設定サブモードの
表示画面例である。画面上には、イントロ、ソロまたは
エンディングの選択を促すメッセージが表示されてい
る。右向きカーソルキー22cまたは左向きカーソルキ
ー22dを押下することにより、カーソル46を画面上
の「INTRO」、「SOLO」または「ENDIN
G」に設定することができ、これによりイントロ、ソロ
またはエンディングを選択できる。
【0037】次に、下向きカーソルキー22bを押下す
ると、ノーマルフィルイン設定サブモードとなる。43
はノーマルフィルイン設定サブモードの表示画面例であ
る。画面上には、ノーマルまたはフィルインの選択を促
すメッセージが表示されている。選択の仕方は上記のイ
ントロソロエンディング設定と同様である。
ると、ノーマルフィルイン設定サブモードとなる。43
はノーマルフィルイン設定サブモードの表示画面例であ
る。画面上には、ノーマルまたはフィルインの選択を促
すメッセージが表示されている。選択の仕方は上記のイ
ントロソロエンディング設定と同様である。
【0038】次に、下向きカーソルキー22bを押下す
ると、クォンタイズ設定サブモードとなる。44はクォ
ンタイズ設定サブモードの表示画面例である。画面上に
は、クォンタイズの4つの選択技が表示されている。
「1/16」は1小節内を16等分した各区間を単位と
して発音するリズム音を設定できることを示す。「1/
8」、「1/4」または「1/2」も同様にそれぞれ1
小節内を8等分、4等分または2等分した各区間を単位
とできることを示す。選択の仕方は上記のイントロソロ
エンディング設定と同様にカーソルを移動させることに
より行なう。
ると、クォンタイズ設定サブモードとなる。44はクォ
ンタイズ設定サブモードの表示画面例である。画面上に
は、クォンタイズの4つの選択技が表示されている。
「1/16」は1小節内を16等分した各区間を単位と
して発音するリズム音を設定できることを示す。「1/
8」、「1/4」または「1/2」も同様にそれぞれ1
小節内を8等分、4等分または2等分した各区間を単位
とできることを示す。選択の仕方は上記のイントロソロ
エンディング設定と同様にカーソルを移動させることに
より行なう。
【0039】以上のようにパターンモードにおいてデー
タ設定した後、スタートキーを押下するとパターンエデ
ィットモードとなる。45はパターンエディットモード
の表示画面例である。横線47は1本で1つのビート
(拍)位置を表わす。横線47は設定されたクォンタイ
ズに応じた数だけ設定される。例えばクォンタイズが1
/16であれば16本の横線47が表示される。付番4
5の表示例はクォンタイズが1/4の場合を示し、横線
47は4つ表示されている。縦線53はパターンの終わ
り(ここでは小節の終わり)横線47の上下に表示され
た黒丸50は、そのタイミングで所定のリズム音が発音
されることを示す。上段48と下段49とで発音するリ
ズム音の音色を異ならせることができる。
タ設定した後、スタートキーを押下するとパターンエデ
ィットモードとなる。45はパターンエディットモード
の表示画面例である。横線47は1本で1つのビート
(拍)位置を表わす。横線47は設定されたクォンタイ
ズに応じた数だけ設定される。例えばクォンタイズが1
/16であれば16本の横線47が表示される。付番4
5の表示例はクォンタイズが1/4の場合を示し、横線
47は4つ表示されている。縦線53はパターンの終わ
り(ここでは小節の終わり)横線47の上下に表示され
た黒丸50は、そのタイミングで所定のリズム音が発音
されることを示す。上段48と下段49とで発音するリ
ズム音の音色を異ならせることができる。
【0040】パターンの入力すなわち黒丸50の入力
は、カーソル46をカーソル移動キー22で所望の拍位
置に位置付け、パッドを押打することにより行なう。横
線47の位置に黒丸50が設定されていないとき、その
タイミングは休符となる。休符の入力は、カーソル46
をカーソル移動キー22で所望の拍位置に位置付け、休
符スイッチ26を押下することにより行なう。
は、カーソル46をカーソル移動キー22で所望の拍位
置に位置付け、パッドを押打することにより行なう。横
線47の位置に黒丸50が設定されていないとき、その
タイミングは休符となる。休符の入力は、カーソル46
をカーソル移動キー22で所望の拍位置に位置付け、休
符スイッチ26を押下することにより行なう。
【0041】以上のようにして、パターンモードで入力
したインデックスに対応する伴奏パターンの内容が設定
される。所定の伴奏パターンを作成した後、ソングデー
タを作成する。
したインデックスに対応する伴奏パターンの内容が設定
される。所定の伴奏パターンを作成した後、ソングデー
タを作成する。
【0042】図5は、ソングモード、ソングメイクモー
ドおよびソングプレイモードの操作および画面表示例を
示す。
ドおよびソングプレイモードの操作および画面表示例を
示す。
【0043】上述したように、ノーマルモードにおいて
ソングスイッチ25を押下するとソングモードのソング
ナンバ設定サブモードとなる。51はソングナンバ設定
サブモードの表示画面例である。画面上にはソングナン
バの入力を促すメッセージが表示されている。テンキー
21によりソングナンバを入力すると、カーソル46の
位置にそのナンバが表示され、ソングナンバとして設定
される。
ソングスイッチ25を押下するとソングモードのソング
ナンバ設定サブモードとなる。51はソングナンバ設定
サブモードの表示画面例である。画面上にはソングナン
バの入力を促すメッセージが表示されている。テンキー
21によりソングナンバを入力すると、カーソル46の
位置にそのナンバが表示され、ソングナンバとして設定
される。
【0044】次に、下向きカーソルキー22bを押下す
ると、スタイル設定サブモードとなる。52はスタイル
設定サブモードの表示画面例である。画面上にはスタイ
ルナンバの入力を促すメッセージが表示されている。テ
ンキー21によりスタイルナンバを入力することができ
る。
ると、スタイル設定サブモードとなる。52はスタイル
設定サブモードの表示画面例である。画面上にはスタイ
ルナンバの入力を促すメッセージが表示されている。テ
ンキー21によりスタイルナンバを入力することができ
る。
【0045】以下、同様にしてテンポ設定サブモード、
曲全体の小節数設定サブモード、ソロ開始小節設定サブ
モード、ソロ終了小節設定サブモードおよびフィルイン
小節設定サブモードにおいて、それぞれソングデータ生
成のためのパラメータを入力する。
曲全体の小節数設定サブモード、ソロ開始小節設定サブ
モード、ソロ終了小節設定サブモードおよびフィルイン
小節設定サブモードにおいて、それぞれソングデータ生
成のためのパラメータを入力する。
【0046】パラメータの入力が終了したら、メイクス
イッチ27を押下してソングメイクモードとし、ソング
データを自動的に作成する。ソングデータは上記のよう
に入力したパラメータに基づいて自動作成される。ソン
グデータの作成の後、スタートスイッチ28を押下する
とソングプレイモードとなり、作成したソングデータに
基づいて自動伴奏が開始する。
イッチ27を押下してソングメイクモードとし、ソング
データを自動的に作成する。ソングデータは上記のよう
に入力したパラメータに基づいて自動作成される。ソン
グデータの作成の後、スタートスイッチ28を押下する
とソングプレイモードとなり、作成したソングデータに
基づいて自動伴奏が開始する。
【0047】図6はこの実施例の自動伴奏装置における
パターンデータの階層構造を示す。パターンデータは最
上位の第1の階層としてインデックスの1つであるスタ
イルにより分類されている。スタイルは例えば、ロック
あるいはポップスなどの別を示す。次の第2階層とし
て、イントロ、ソロまたはエンディングの別を示すイン
デックスで分類されている。さらに次の第3階層とし
て、通常リズムまたはフィルインの別を示すインデック
スで分類されている。
パターンデータの階層構造を示す。パターンデータは最
上位の第1の階層としてインデックスの1つであるスタ
イルにより分類されている。スタイルは例えば、ロック
あるいはポップスなどの別を示す。次の第2階層とし
て、イントロ、ソロまたはエンディングの別を示すイン
デックスで分類されている。さらに次の第3階層とし
て、通常リズムまたはフィルインの別を示すインデック
スで分類されている。
【0048】PTNはパターンデータを記憶するパター
ンメモリを示す。PTN(i,j,k)で1小節分のパ
ターンデータを示す。なお、PTN(i,j,k)はパ
ターンメモリ中の記憶位置を示すとともに、その位置に
記憶されたデータをも示すものとする。パターンデータ
は上述のような階層構造で分類されており、パターンメ
モリをアクセスする場合はそのインデックスを指定する
ことにより行なう。すなわち、パターンメモリPTN
(i,j,k)の第1パラメータiは第1階層のスタイ
ルを示す値、第2パラメータjは第2階層のイントロ、
ソロまたはエンディングの別を示す値、第3パラメータ
kは第3階層の通常リズムまたはフィルインの別を示す
値を、それぞれ指定する。ここでは、スタイルとしてロ
ックを示す値を「0」、ポップスを示す値を「1」、…
とした。また、イントロを示す値を「0」、ソロを示す
値を「1」、エンディングを示す値を「2」とした。さ
らに、通常リズムを示す値を「0」、フィルインを示す
値を「1」とした。したがって、例えばロックのイント
ロに用いる通常リズムはPTN(0,0,0)で、ロッ
クのイントロに用いるフィルインのリズムはPTN
(0,0,1)で、ロックのソロに用いる通常リズムは
PTN(0,1,0)で、…というようにアクセスする
ことができることとなる。
ンメモリを示す。PTN(i,j,k)で1小節分のパ
ターンデータを示す。なお、PTN(i,j,k)はパ
ターンメモリ中の記憶位置を示すとともに、その位置に
記憶されたデータをも示すものとする。パターンデータ
は上述のような階層構造で分類されており、パターンメ
モリをアクセスする場合はそのインデックスを指定する
ことにより行なう。すなわち、パターンメモリPTN
(i,j,k)の第1パラメータiは第1階層のスタイ
ルを示す値、第2パラメータjは第2階層のイントロ、
ソロまたはエンディングの別を示す値、第3パラメータ
kは第3階層の通常リズムまたはフィルインの別を示す
値を、それぞれ指定する。ここでは、スタイルとしてロ
ックを示す値を「0」、ポップスを示す値を「1」、…
とした。また、イントロを示す値を「0」、ソロを示す
値を「1」、エンディングを示す値を「2」とした。さ
らに、通常リズムを示す値を「0」、フィルインを示す
値を「1」とした。したがって、例えばロックのイント
ロに用いる通常リズムはPTN(0,0,0)で、ロッ
クのイントロに用いるフィルインのリズムはPTN
(0,0,1)で、ロックのソロに用いる通常リズムは
PTN(0,1,0)で、…というようにアクセスする
ことができることとなる。
【0049】図7は、伴奏パターン(パターンデータ)
を並べて1曲のソングを構成した1つの例を示す。ソン
グは大きく分けてイントロ部、ソロ部およびエンディン
グ部を有する。各部はそれぞれ通常リズムとフィルイン
のリズムとを適宜並べて構成される。例えば、図7の例
では、イントロ部は8小節設定されており、先頭の3小
節はロックのイントロの通常リズムPTN(0,0,
0)が3回繰返される。PTN(0,0,0)の右上に
記載された「×3」は同パターンが3回繰返されること
を示す。次に、ロックのイントロのフィルインリズムP
TN(0,0,1)が1回演奏され、再び通常リズムP
TN(0,0,0)が4回繰返される。
を並べて1曲のソングを構成した1つの例を示す。ソン
グは大きく分けてイントロ部、ソロ部およびエンディン
グ部を有する。各部はそれぞれ通常リズムとフィルイン
のリズムとを適宜並べて構成される。例えば、図7の例
では、イントロ部は8小節設定されており、先頭の3小
節はロックのイントロの通常リズムPTN(0,0,
0)が3回繰返される。PTN(0,0,0)の右上に
記載された「×3」は同パターンが3回繰返されること
を示す。次に、ロックのイントロのフィルインリズムP
TN(0,0,1)が1回演奏され、再び通常リズムP
TN(0,0,0)が4回繰返される。
【0050】イントロ部に続くソロ部は8小節設定され
ており、まず3小節分はロックのソロの通常リズムPT
N(0,1,0)が3回繰返される。次に、ロックのソ
ロのフィルインリズムPTN(0,1,1)が1回演奏
され、再び通常リズムPTN(0,1,0)が4回繰返
される。
ており、まず3小節分はロックのソロの通常リズムPT
N(0,1,0)が3回繰返される。次に、ロックのソ
ロのフィルインリズムPTN(0,1,1)が1回演奏
され、再び通常リズムPTN(0,1,0)が4回繰返
される。
【0051】ソロ部に続くエンディング部は8小節設定
されており、ロックのエンディングの通常リズムPTN
(0,2,0)が8回繰返される。
されており、ロックのエンディングの通常リズムPTN
(0,2,0)が8回繰返される。
【0052】図8は、図7に示した構成のソングに対応
するソングデータの具体的な内容を示す。PARTはソ
ングデータを記憶するソングメモリを示す。PART
(SONG,n)でソングナンバSONGの第n番目
(nは0から昇順に数えるものとする)のソングデータ
要素を示す。なお、PART(SONG,n)はソング
メモリ中の記憶位置を示すとともに、その位置に記憶さ
れたデータをも示すものとする。
するソングデータの具体的な内容を示す。PARTはソ
ングデータを記憶するソングメモリを示す。PART
(SONG,n)でソングナンバSONGの第n番目
(nは0から昇順に数えるものとする)のソングデータ
要素を示す。なお、PART(SONG,n)はソング
メモリ中の記憶位置を示すとともに、その位置に記憶さ
れたデータをも示すものとする。
【0053】図8において、要素PART(SONG,
0)〜PART(SONG,2)はイントロの先頭3小
節のパターンPTN(0,0,0)を3回繰返す部分に
対応する。すなわち、要素PART(SONG,0)に
繰返し開始記号(なお、この繰返し開始記号のイメージ
を下記に示す。以下、『外1』はこのイメージを示すも
のとする。)を格納し、次の要素PART(SONG,
1)に繰返すべきパターンPTN(0,0,0)を格納
し(パターンそのものを格納してもよいし、またはその
パターンを特定するアドレスなどを格納してもよい)、
さらに次の要素PART(SONG,2)に繰返し終了
記号(なお、この繰返し終了記号のイメージを下記に示
す。以下、『外2』はこのイメージを示すものとす
る。)と前に(すなわちPART(SONG,1)に)
戻る回数「×2」を格納している。
0)〜PART(SONG,2)はイントロの先頭3小
節のパターンPTN(0,0,0)を3回繰返す部分に
対応する。すなわち、要素PART(SONG,0)に
繰返し開始記号(なお、この繰返し開始記号のイメージ
を下記に示す。以下、『外1』はこのイメージを示すも
のとする。)を格納し、次の要素PART(SONG,
1)に繰返すべきパターンPTN(0,0,0)を格納
し(パターンそのものを格納してもよいし、またはその
パターンを特定するアドレスなどを格納してもよい)、
さらに次の要素PART(SONG,2)に繰返し終了
記号(なお、この繰返し終了記号のイメージを下記に示
す。以下、『外2』はこのイメージを示すものとす
る。)と前に(すなわちPART(SONG,1)に)
戻る回数「×2」を格納している。
【0054】
【外1】
【0055】
【外2】
【0056】次の要素PART(SONG,3)はイン
トロのフィルインパターンPTN(0,0,1)に対応
し、そのパターン(またはアドレス)を格納している。
引き続きPART(SONG,4)〜PART(SON
G,6)にはイントロのパターンPTN(0,0,0)
を4回繰返す部分に対応する繰返しデータを格納してい
る。以下、同様にして、図7に対応するデータを格納
し、最後の要素PART(SONG,17)にエンドコ
ードを格納して、1曲のソングデータが終了する。
トロのフィルインパターンPTN(0,0,1)に対応
し、そのパターン(またはアドレス)を格納している。
引き続きPART(SONG,4)〜PART(SON
G,6)にはイントロのパターンPTN(0,0,0)
を4回繰返す部分に対応する繰返しデータを格納してい
る。以下、同様にして、図7に対応するデータを格納
し、最後の要素PART(SONG,17)にエンドコ
ードを格納して、1曲のソングデータが終了する。
【0057】次に上述したこの実施例の自動伴奏装置で
用いているレジスタ類について説明する。 (a)MOD:モードを示すモードレジスタである。図
3に示したように、ノーマルモードのとき「0」、パタ
ーンモードのとき「1」、パターンエディットモードの
とき「2」、ソングモードのとき「3」、ソングメイク
モードのとき「4」、ソングプレイモードのとき「5」
の値をそれぞれとる。 (b)T:1/16拍単位の拍の間の時間を1msec
単位でダウンカウントするためのカウンタである。 (c)BT:1/16拍単位の拍の間の時間を表す1m
sec単位の値を記憶する時間レジスタである。 (d)Q:伴奏パターンの1小節内で1/16拍ごとに
カウントアップされるカウンタである。 (e)BEET:パターンの拍を示す拍レジスタであ
る。1/4拍を単位とし、例えば、3/4拍子のソング
では「3」、4/4拍子では「4」が設定される。
(f)PATERN:再生すべき伴奏パターンを一時記
憶するパターンレジスタである。
用いているレジスタ類について説明する。 (a)MOD:モードを示すモードレジスタである。図
3に示したように、ノーマルモードのとき「0」、パタ
ーンモードのとき「1」、パターンエディットモードの
とき「2」、ソングモードのとき「3」、ソングメイク
モードのとき「4」、ソングプレイモードのとき「5」
の値をそれぞれとる。 (b)T:1/16拍単位の拍の間の時間を1msec
単位でダウンカウントするためのカウンタである。 (c)BT:1/16拍単位の拍の間の時間を表す1m
sec単位の値を記憶する時間レジスタである。 (d)Q:伴奏パターンの1小節内で1/16拍ごとに
カウントアップされるカウンタである。 (e)BEET:パターンの拍を示す拍レジスタであ
る。1/4拍を単位とし、例えば、3/4拍子のソング
では「3」、4/4拍子では「4」が設定される。
(f)PATERN:再生すべき伴奏パターンを一時記
憶するパターンレジスタである。
【0058】(g)POINT:再生すべきソングデー
タ要素の次の要素を指すポインタである。 (h)BAR:ソングデータを作成する際に用いる、小
節数をカウントするカウンタである。 (i)BSPT:通常パターンを一時記憶する通常パタ
ーンレジスタである。 (j)FLPT:フィルインパターンを一時記憶するフ
ィルインパターンレジスタである。 (k)FIN:イントロ部、ソロ部、およびエンディン
グ部の境界位置(先頭からの小節数で示す)を指す境界
ポインタである。 (l)RPN:ソングを再生する際の伴奏パターン繰返
し回数をダウンカウントするリピートカウンタである。
タ要素の次の要素を指すポインタである。 (h)BAR:ソングデータを作成する際に用いる、小
節数をカウントするカウンタである。 (i)BSPT:通常パターンを一時記憶する通常パタ
ーンレジスタである。 (j)FLPT:フィルインパターンを一時記憶するフ
ィルインパターンレジスタである。 (k)FIN:イントロ部、ソロ部、およびエンディン
グ部の境界位置(先頭からの小節数で示す)を指す境界
ポインタである。 (l)RPN:ソングを再生する際の伴奏パターン繰返
し回数をダウンカウントするリピートカウンタである。
【0059】(m)REPEAT:伴奏パターンの繰返
し(リピート)の状態を示すリピート状態レジスタであ
る。繰返し開始記号を読出したとき「1」に設定され、
次に繰返し終了記号と繰返し回数を読出したとき「0」
に設定される。 (n)SONG:ソングナンバを格納するソングナンバ
レジスタである。 (o)STYL:スタイルナンバを格納するスタイルナ
ンバレジスタである。 (p)TMP:テンポの値を格納するテンポレジスタで
ある。1分間に含まれる4分音符の数によりテンポを表
わす。 (q)NBAR:曲全体の小節数を格納する全体小節数
レジスタである。 (r)ST:ソロ部のスタート小節位置(先頭からの小
節数)を格納するソロスタート小節レジスタである。 (s)END:ソロ部の終了小節位置(先頭からの小節
数)を格納するソロ終了小節レジスタである。 (t)FLL(i):フィルインパターンを挿入する小
節位置を格納するフィルイン小節レジスタである。フィ
ルインパターンを複数の位置に挿入する場合があるた
め、配列形式(iは0,1,…)になっている。 (u)FN:フィルインの回数を示すフィルイン回数レ
ジスタである。 (v)PN:ソングメモリを指すポインタである。
し(リピート)の状態を示すリピート状態レジスタであ
る。繰返し開始記号を読出したとき「1」に設定され、
次に繰返し終了記号と繰返し回数を読出したとき「0」
に設定される。 (n)SONG:ソングナンバを格納するソングナンバ
レジスタである。 (o)STYL:スタイルナンバを格納するスタイルナ
ンバレジスタである。 (p)TMP:テンポの値を格納するテンポレジスタで
ある。1分間に含まれる4分音符の数によりテンポを表
わす。 (q)NBAR:曲全体の小節数を格納する全体小節数
レジスタである。 (r)ST:ソロ部のスタート小節位置(先頭からの小
節数)を格納するソロスタート小節レジスタである。 (s)END:ソロ部の終了小節位置(先頭からの小節
数)を格納するソロ終了小節レジスタである。 (t)FLL(i):フィルインパターンを挿入する小
節位置を格納するフィルイン小節レジスタである。フィ
ルインパターンを複数の位置に挿入する場合があるた
め、配列形式(iは0,1,…)になっている。 (u)FN:フィルインの回数を示すフィルイン回数レ
ジスタである。 (v)PN:ソングメモリを指すポインタである。
【0060】なお、各レジスタ類を示す記号は、そのレ
ジスタそのものを表すとともに、そのレジスタの内容
(値)をも表すものとする。
ジスタそのものを表すとともに、そのレジスタの内容
(値)をも表すものとする。
【0061】次に、図9〜14を参照してこの実施例の
自動伴奏装置の動作を説明する。
自動伴奏装置の動作を説明する。
【0062】図9のメインルーチンを参照して、この装
置の動作がスタートすると、まずステップS1で各レジ
スタ類などの初期設定(例えば、MOD=0)が行なわ
れる。次に、ステップS2でパッドスイッチのイベント
があるか否か判別する。パッドスイッチのイベントがあ
る場合は、ステッブS3でモードレジスタMODが
「2」であるか否かすなわちパターンエディットモード
であるか否かを判別する。パターンエディットモードで
あるときは、ステップS4でスタイル、イントロソロエ
ンディングの別、ノーマルフィルインの別、クォンタイ
ズおよびカーソル位置の情報に基づき選択されているパ
ターンメモリ上のパターンの拍の位置(図4の表示45
参照)にデータ(表示45における黒丸50)を書込
む。次に、ステップS5で発音および消音の処理を行な
い、ステップS6に進む。
置の動作がスタートすると、まずステップS1で各レジ
スタ類などの初期設定(例えば、MOD=0)が行なわ
れる。次に、ステップS2でパッドスイッチのイベント
があるか否か判別する。パッドスイッチのイベントがあ
る場合は、ステッブS3でモードレジスタMODが
「2」であるか否かすなわちパターンエディットモード
であるか否かを判別する。パターンエディットモードで
あるときは、ステップS4でスタイル、イントロソロエ
ンディングの別、ノーマルフィルインの別、クォンタイ
ズおよびカーソル位置の情報に基づき選択されているパ
ターンメモリ上のパターンの拍の位置(図4の表示45
参照)にデータ(表示45における黒丸50)を書込
む。次に、ステップS5で発音および消音の処理を行な
い、ステップS6に進む。
【0063】ステップS3でモードMODが「2」でな
いときは、パターンエディットモードでないからパター
ンメモリへの書込みは行なわず、直接ステップS5へ進
む。ステップS2でパッドスイッチのイベントがない場
合は、直接ステップS6へ進む。
いときは、パターンエディットモードでないからパター
ンメモリへの書込みは行なわず、直接ステップS5へ進
む。ステップS2でパッドスイッチのイベントがない場
合は、直接ステップS6へ進む。
【0064】ステップS6でスイッチに関するイベント
があるか否か判別する。あればステップS7でスイッチ
ルーチン(図10)をコールし、再びステップS2に戻
る。ステップS6でスイッチイベントがない場合は、ス
テップS2に戻る。以上の処理を繰返す。
があるか否か判別する。あればステップS7でスイッチ
ルーチン(図10)をコールし、再びステップS2に戻
る。ステップS6でスイッチイベントがない場合は、ス
テップS2に戻る。以上の処理を繰返す。
【0065】図10のフローチャートを参照して、スイ
ッチルーチンがコールされると、まずステップS11で
イベントのあったスイッチを判別する。パターンスイッ
チ24、ソングスイッチ25、メイクスイッチ27、ス
タートスイッチ28、ストップスイッチ29、または上
向きあるいは下向きカーソルキー22a、22bのイベ
ントの場合はステップS12に進む。テンキー21のイ
ベントの場合はステップS18に進む。右向きあるいは
左向きカーソルキー22c、22dのイベントの場合は
ステップS19に進む。休符スイッチ26のイベントの
場合はステップS21に進む。
ッチルーチンがコールされると、まずステップS11で
イベントのあったスイッチを判別する。パターンスイッ
チ24、ソングスイッチ25、メイクスイッチ27、ス
タートスイッチ28、ストップスイッチ29、または上
向きあるいは下向きカーソルキー22a、22bのイベ
ントの場合はステップS12に進む。テンキー21のイ
ベントの場合はステップS18に進む。右向きあるいは
左向きカーソルキー22c、22dのイベントの場合は
ステップS19に進む。休符スイッチ26のイベントの
場合はステップS21に進む。
【0066】ステップS12に進む場合というのは、図
3で説明したようにモードまたはサブモードを切換える
スイッチが押下された場合である。したがって、ステッ
プS12でモードおよび表示画面を切換え、モードレジ
スタMODを状態に応じた値とする。次に、ステップS
13でモードレジスタMODの値が「4」か否かすなわ
ちソングメイクモードであるか否かを判別する。ソング
メイクモードのときは、ステップS14でメイクルーチ
ン(図11)をコールし、その後リターンする。ステッ
プS13でソングメイクモードでないときは、ステップ
S15でモードレジスタMODの値が「5」か否かすな
わちソングプレイモードであるか否かを判別する。
3で説明したようにモードまたはサブモードを切換える
スイッチが押下された場合である。したがって、ステッ
プS12でモードおよび表示画面を切換え、モードレジ
スタMODを状態に応じた値とする。次に、ステップS
13でモードレジスタMODの値が「4」か否かすなわ
ちソングメイクモードであるか否かを判別する。ソング
メイクモードのときは、ステップS14でメイクルーチ
ン(図11)をコールし、その後リターンする。ステッ
プS13でソングメイクモードでないときは、ステップ
S15でモードレジスタMODの値が「5」か否かすな
わちソングプレイモードであるか否かを判別する。
【0067】ステップS15でソングプレイモードのと
きは、ステップS16で時間レジスタBT、カウンタ
T、カウンタQ、ポインタPOINT、リピートカウン
タRPN、およびリピート状態レジスタのそれぞれの値
を初期化する。具体的には、時間レジスタBTには60
×103/(TMP×4)を小数点以下を四捨五入して
設定する。テンポレジスタTMPの値は1分間(=60
×103msec)の4分音符の数を示すから60×1
03/TMPは4分音符1つの時間すなわち4分音符を
単位とした拍と拍との時間間隔をmsec表記で表わし
たものとなる。これをさらに4で割って16分音符を単
位とした拍から次の拍までの時間をmsec表記で表わ
した値を算出し、時間レジスタBTに設定するようにし
ている。その他のレジスタは「0」とする。
きは、ステップS16で時間レジスタBT、カウンタ
T、カウンタQ、ポインタPOINT、リピートカウン
タRPN、およびリピート状態レジスタのそれぞれの値
を初期化する。具体的には、時間レジスタBTには60
×103/(TMP×4)を小数点以下を四捨五入して
設定する。テンポレジスタTMPの値は1分間(=60
×103msec)の4分音符の数を示すから60×1
03/TMPは4分音符1つの時間すなわち4分音符を
単位とした拍と拍との時間間隔をmsec表記で表わし
たものとなる。これをさらに4で割って16分音符を単
位とした拍から次の拍までの時間をmsec表記で表わ
した値を算出し、時間レジスタBTに設定するようにし
ている。その他のレジスタは「0」とする。
【0068】ステップS16の後、ステップS17でデ
ータ先読ルーチンをコールし、リターンする。ステップ
S15でソングプレイモードでないときは、そのままリ
ターンする。
ータ先読ルーチンをコールし、リターンする。ステップ
S15でソングプレイモードでないときは、そのままリ
ターンする。
【0069】ステップS11でイベントのあったスイッ
チがテンキー21のときは、ステップS18でその時点
のモード、サブモードおよびカーソル位置に応じて種々
のデータ設定処理を行なう。具体的には、パターンモー
ドにおけるスタイルナンバの設定(図4の表示41)、
並びにソングモードにおけるソングナンバSONG(図
5の表示51)、ソングスタイルナンバSTYL(図5
の表示52)、テンポTMP、曲全体小節数NBAR、
ソロ開始小節ST、およびソロ終了小節END、フィル
イン小節FLL(i)(ただし、フィルイン回数FNに
対しi=0〜FN−1とする)のそれぞれの設定を入力
に応じて実行する。その後、リターンする。
チがテンキー21のときは、ステップS18でその時点
のモード、サブモードおよびカーソル位置に応じて種々
のデータ設定処理を行なう。具体的には、パターンモー
ドにおけるスタイルナンバの設定(図4の表示41)、
並びにソングモードにおけるソングナンバSONG(図
5の表示51)、ソングスタイルナンバSTYL(図5
の表示52)、テンポTMP、曲全体小節数NBAR、
ソロ開始小節ST、およびソロ終了小節END、フィル
イン小節FLL(i)(ただし、フィルイン回数FNに
対しi=0〜FN−1とする)のそれぞれの設定を入力
に応じて実行する。その後、リターンする。
【0070】ステップS11でイベントのあったスイッ
チが右向きまたは左向きカーソルキー22c、22dの
ときは、ステップS19でモードレジスタMODの値が
「1」または「2」であるか否かすなわちパターンモー
ドまたはパターンエディットモードであるか否かを判別
する。これらのいずれかのモードのときは、ステップS
20でその時点の画面にてカーソル46を左右に移動
し、例えばパターンモードにおけるパラメータ(スタイ
ルを除く)の設定(図4の表示42、43、44)ある
いはパターンエディットモードにおけるカーソル移動
(図4の表示45)を行なう。その後、リターンする。
ステップS19でモードレジスタMODが「1」および
「2」でないときはそのままリターンする。
チが右向きまたは左向きカーソルキー22c、22dの
ときは、ステップS19でモードレジスタMODの値が
「1」または「2」であるか否かすなわちパターンモー
ドまたはパターンエディットモードであるか否かを判別
する。これらのいずれかのモードのときは、ステップS
20でその時点の画面にてカーソル46を左右に移動
し、例えばパターンモードにおけるパラメータ(スタイ
ルを除く)の設定(図4の表示42、43、44)ある
いはパターンエディットモードにおけるカーソル移動
(図4の表示45)を行なう。その後、リターンする。
ステップS19でモードレジスタMODが「1」および
「2」でないときはそのままリターンする。
【0071】ステップS11でイベントのあったスイッ
チが休符スイッチ26のときは、ステップS21でモー
ドレジスタMODの値が「2」か否かすなわちパターン
エディットモードであるか否かを判別する。パターンエ
ディットモードのときは、ステップS22でスタイルや
クォンタイズなどのパラメータおよびカーソルの位置に
基づき選択されているパターンメモリ上のパターンの拍
の位置(図4の表示45参照)に休符データを書き込
み、リターンする。ステップS21でパターンエディッ
トモードでないときは、そのままリターンする。
チが休符スイッチ26のときは、ステップS21でモー
ドレジスタMODの値が「2」か否かすなわちパターン
エディットモードであるか否かを判別する。パターンエ
ディットモードのときは、ステップS22でスタイルや
クォンタイズなどのパラメータおよびカーソルの位置に
基づき選択されているパターンメモリ上のパターンの拍
の位置(図4の表示45参照)に休符データを書き込
み、リターンする。ステップS21でパターンエディッ
トモードでないときは、そのままリターンする。
【0072】次に図11のフローチャートを参照して、
メイクルーチンがコールされると、まずステップS31
でソングメモリ内ポインタPNを「0」、フィルイン回
数レジスタFNを「0」、小節数カウンタBARを
「1」に、それぞれ設定する。次にステップS32で、
通常パターンレジスタBSPTにスタイルSTYLのイ
ントロの通常リズムパターンPTN(STYL,0,
0)を、フィルインパターンレジスタFLPTにスタイ
ルSTYLのイントロのフィルインパターンPTN(S
TYL,0,1)を、イントロソロエンディング境界ポ
インタFINにソロスタート小節位置STを、それぞれ
設定する。次に、ステップS33で編集ルーチンをコー
ルする。これによりソングデータのイントロ部が自動生
成される。
メイクルーチンがコールされると、まずステップS31
でソングメモリ内ポインタPNを「0」、フィルイン回
数レジスタFNを「0」、小節数カウンタBARを
「1」に、それぞれ設定する。次にステップS32で、
通常パターンレジスタBSPTにスタイルSTYLのイ
ントロの通常リズムパターンPTN(STYL,0,
0)を、フィルインパターンレジスタFLPTにスタイ
ルSTYLのイントロのフィルインパターンPTN(S
TYL,0,1)を、イントロソロエンディング境界ポ
インタFINにソロスタート小節位置STを、それぞれ
設定する。次に、ステップS33で編集ルーチンをコー
ルする。これによりソングデータのイントロ部が自動生
成される。
【0073】次に、ステップS34で、通常パターンレ
ジスタBSPTにスタイルSTYLのソロ部の通常リズ
ムパターンPTN(STYL,1,0)を、フィルイン
パターンレジスタFLPTにスタイルSTYLのソロ部
のフィルインパターンPTN(STYL,1,1)を、
イントロソロエンディング境界ポインタFINにソロ終
了小節位置ENDと「1」とを加算した値(すなわちエ
ンディング部開始位置)を、それぞれ設定する。次に、
ステップS35で編集ルーチンをコールする。これによ
り、ソングデータのソロ部が自動生成される。
ジスタBSPTにスタイルSTYLのソロ部の通常リズ
ムパターンPTN(STYL,1,0)を、フィルイン
パターンレジスタFLPTにスタイルSTYLのソロ部
のフィルインパターンPTN(STYL,1,1)を、
イントロソロエンディング境界ポインタFINにソロ終
了小節位置ENDと「1」とを加算した値(すなわちエ
ンディング部開始位置)を、それぞれ設定する。次に、
ステップS35で編集ルーチンをコールする。これによ
り、ソングデータのソロ部が自動生成される。
【0074】次に、ステップS36で、通常パターンレ
ジスタBSPTにスタイルSTYLのエンディング部の
通常リズムパターンPTN(STYL,2,0)を、フ
ィルインパターンレジスタFLPTにスタイルSTYL
のエンディング部のフィルインパターンPTN(STY
L,2,1)を、イントロソロエンディング境界ポイン
タFINにソングの全体小節数NBARと「1」とを加
算した値を、それぞれ設定する。次に、ステップS37
で編集ルーチンをコールする。これにより、ソングデー
タのエンディング部が自動生成される。
ジスタBSPTにスタイルSTYLのエンディング部の
通常リズムパターンPTN(STYL,2,0)を、フ
ィルインパターンレジスタFLPTにスタイルSTYL
のエンディング部のフィルインパターンPTN(STY
L,2,1)を、イントロソロエンディング境界ポイン
タFINにソングの全体小節数NBARと「1」とを加
算した値を、それぞれ設定する。次に、ステップS37
で編集ルーチンをコールする。これにより、ソングデー
タのエンディング部が自動生成される。
【0075】最後に、ステップS38で、生成したソン
グデータの最終位置PART(STYL,PN)にエン
ドコードを設定してリターンする。
グデータの最終位置PART(STYL,PN)にエン
ドコードを設定してリターンする。
【0076】次に図12のフローチャートを参照して、
編集ルーチンがコールされると、まずステップS41で
フィルイン回数レジスタFNにより特定されるフィルイ
ン小節の位置FLL(FN)とイントロソロエンディン
グの境界位置FINとを比較する。フィルイン小節の位
置FLL(FN)が境界位置FINより小さい場合は、
現在自動生成しようとしている部分(イントロ部、ソロ
部、またはエンディング部)内にフィルインパターンを
生成する必要があり、ステップS42に進む。ステップ
S42でフィルイン小節の位置FLL(FN)から、現
在処理しようとしている小節位置BAR(ソング中で先
頭から何番目の小節を処理しているかを示す)を引いた
値が「2」以上であるか否かを判別する。この値が
「2」以上ならば、この小節位置BARの小節から次の
フィルインパターンの直前の小節までは通常パターンB
SPTをリピートするということであるから、繰返しパ
ターンを設定するため、ステップS43に進む。
編集ルーチンがコールされると、まずステップS41で
フィルイン回数レジスタFNにより特定されるフィルイ
ン小節の位置FLL(FN)とイントロソロエンディン
グの境界位置FINとを比較する。フィルイン小節の位
置FLL(FN)が境界位置FINより小さい場合は、
現在自動生成しようとしている部分(イントロ部、ソロ
部、またはエンディング部)内にフィルインパターンを
生成する必要があり、ステップS42に進む。ステップ
S42でフィルイン小節の位置FLL(FN)から、現
在処理しようとしている小節位置BAR(ソング中で先
頭から何番目の小節を処理しているかを示す)を引いた
値が「2」以上であるか否かを判別する。この値が
「2」以上ならば、この小節位置BARの小節から次の
フィルインパターンの直前の小節までは通常パターンB
SPTをリピートするということであるから、繰返しパ
ターンを設定するため、ステップS43に進む。
【0077】ステップS43でフィルイン小節の位置F
LL(FN)から現在の小節位置BARを引きさらに
「1」を引いた値すなわち図8で説明したリピート時に
繰返すべき伴奏パターンの要素に戻る回数(例えば図8
のPART(SONG,2)における「×2」)を算出
し、ワークレジスタRTNに設定する。そして、ステッ
プS44で、ソングメモリ中の要素PART(SON
G,PN)に繰返し開始記号『外1』を、要素PART
(SONG,PN+1)に繰返すべき通常パターンBS
PTを、要素PART(SONG,PN+2)に繰返し
終了記号『外2』と前に戻る回数RTNを、要素PAR
T(SONG,PN+3)にフィルインパターンFLP
Tを、それぞれ設定する。
LL(FN)から現在の小節位置BARを引きさらに
「1」を引いた値すなわち図8で説明したリピート時に
繰返すべき伴奏パターンの要素に戻る回数(例えば図8
のPART(SONG,2)における「×2」)を算出
し、ワークレジスタRTNに設定する。そして、ステッ
プS44で、ソングメモリ中の要素PART(SON
G,PN)に繰返し開始記号『外1』を、要素PART
(SONG,PN+1)に繰返すべき通常パターンBS
PTを、要素PART(SONG,PN+2)に繰返し
終了記号『外2』と前に戻る回数RTNを、要素PAR
T(SONG,PN+3)にフィルインパターンFLP
Tを、それぞれ設定する。
【0078】次に、ステップS45でソングメモリを指
すポインタPNに「3」を加算し、フィルイン回数FN
をインクリメントし、現在の小節位置BARを更新す
る。通常パターンがRTN+1回繰返されさらにフィル
インパターンが設定されるので、小節位置BARにレジ
スタRTNの値および「2」を加算し、新たな小節位置
BARとする。ステップS45の後、再びステップS4
1に戻る。
すポインタPNに「3」を加算し、フィルイン回数FN
をインクリメントし、現在の小節位置BARを更新す
る。通常パターンがRTN+1回繰返されさらにフィル
インパターンが設定されるので、小節位置BARにレジ
スタRTNの値および「2」を加算し、新たな小節位置
BARとする。ステップS45の後、再びステップS4
1に戻る。
【0079】ステップS42でフィルイン小節の位置F
LL(FN)から現在の小節位置BARを引いた値が
「2」以上でなければ、ステップS46でこの値が
「1」に等しいか否かを判別する。この値が「1」に等
しいならば、この小節位置BARの小節は通常パターン
で、その次の小節はフィルインパターンであるというこ
とであるから、ステップS47に進みこれらのパターン
を設定する。すなわちステップS47で、ソングメモリ
中の要素PART(PN)に通常パターンBSPTを、
次の要素PART(PN+1)にフィルインパターンF
LPTを、それぞれ設定する。次に、ステップS48で
ポインタPNに「2」を加算し、フィルイン回数FNを
インクリメントし、現在の小節数BARに「2」を加算
する。ステップS48の後、再びステップS41に戻
る。
LL(FN)から現在の小節位置BARを引いた値が
「2」以上でなければ、ステップS46でこの値が
「1」に等しいか否かを判別する。この値が「1」に等
しいならば、この小節位置BARの小節は通常パターン
で、その次の小節はフィルインパターンであるというこ
とであるから、ステップS47に進みこれらのパターン
を設定する。すなわちステップS47で、ソングメモリ
中の要素PART(PN)に通常パターンBSPTを、
次の要素PART(PN+1)にフィルインパターンF
LPTを、それぞれ設定する。次に、ステップS48で
ポインタPNに「2」を加算し、フィルイン回数FNを
インクリメントし、現在の小節数BARに「2」を加算
する。ステップS48の後、再びステップS41に戻
る。
【0080】ステップS46でフィルイン小節の位置F
LL(FN)から現在の小節位置BARを引いた値が
「1」でなければ(このとき、この値は「0」のはずで
ある)、この小節位置BARがフィルインパターンであ
るということであるから、ステップS49でソングメモ
リの要素PART(PN)にフィルインパターンFLP
Tを設定する。そして、ステップS50でポインタP
N、フィルイン回数FN、および現在の少数位置BAR
を、それぞれインクリメントする。ステップS50の
後、再びステップS41に戻る。
LL(FN)から現在の小節位置BARを引いた値が
「1」でなければ(このとき、この値は「0」のはずで
ある)、この小節位置BARがフィルインパターンであ
るということであるから、ステップS49でソングメモ
リの要素PART(PN)にフィルインパターンFLP
Tを設定する。そして、ステップS50でポインタP
N、フィルイン回数FN、および現在の少数位置BAR
を、それぞれインクリメントする。ステップS50の
後、再びステップS41に戻る。
【0081】ステップS41でフィルイン小節の位置F
LL(FN)が境界位置FIN以上である場合は、現位
置BARからこの位置FINまでの全小節を通常パター
ンとしてよいということだから、ステップS51に分岐
する。ステップS51で現在の小節位置BARが境界位
置FINに等しい場合は当該部分(イントロ部、ソロ
部、またはエンディング部)のソングデータを作成終了
したということであるから、リターンする。
LL(FN)が境界位置FIN以上である場合は、現位
置BARからこの位置FINまでの全小節を通常パター
ンとしてよいということだから、ステップS51に分岐
する。ステップS51で現在の小節位置BARが境界位
置FINに等しい場合は当該部分(イントロ部、ソロ
部、またはエンディング部)のソングデータを作成終了
したということであるから、リターンする。
【0082】ステップS51で現在の小節位置BARが
境界位置FINに等しくない場合は、ステップS52で
境界位置FINから現在位置BARを減算し、その差が
「1」であるか否かを判別する。その差が「1」でなけ
れば、通常パターンの繰返しを設定すべきであるからス
テップS53に進む。
境界位置FINに等しくない場合は、ステップS52で
境界位置FINから現在位置BARを減算し、その差が
「1」であるか否かを判別する。その差が「1」でなけ
れば、通常パターンの繰返しを設定すべきであるからス
テップS53に進む。
【0083】ステップS53で境界位置FINから現在
位置BARを引きさらに「1」を引いた値すなわちリピ
ート時に繰返しパターンに戻る回数を算出し、ワークレ
ジスタRTNに設定する。そして、ステップS54でソ
ングメモリ中の要素PART(SONG,PN)に繰返
し開始記号『外1』を、要素PART(SONG,PN
+1)に繰返すべき通常パターンBSPTを、要素PA
RT(SONG,PN+2)に繰返し終了記号『外2』
と前に戻る回数RTNを、それぞれ設定する。次に、ス
テップS55でポインタPNに「2」を加算し、現在の
小節位置BARに戻る回数RTN+1を加算して、リタ
ーンする。
位置BARを引きさらに「1」を引いた値すなわちリピ
ート時に繰返しパターンに戻る回数を算出し、ワークレ
ジスタRTNに設定する。そして、ステップS54でソ
ングメモリ中の要素PART(SONG,PN)に繰返
し開始記号『外1』を、要素PART(SONG,PN
+1)に繰返すべき通常パターンBSPTを、要素PA
RT(SONG,PN+2)に繰返し終了記号『外2』
と前に戻る回数RTNを、それぞれ設定する。次に、ス
テップS55でポインタPNに「2」を加算し、現在の
小節位置BARに戻る回数RTN+1を加算して、リタ
ーンする。
【0084】ステップS52で境界位置FINから現在
位置BARを引いた差が「1」のときは、ステップS5
6でソングメモリの要素PART(PN)に通常パター
ンBSPTを設定し、ステップS57でポインタPNお
よび現在位置BARをそれぞれインクリメントして、リ
ターンする。
位置BARを引いた差が「1」のときは、ステップS5
6でソングメモリの要素PART(PN)に通常パター
ンBSPTを設定し、ステップS57でポインタPNお
よび現在位置BARをそれぞれインクリメントして、リ
ターンする。
【0085】次に図13のフローチャートを参照して、
データ先読みルーチンについて説明する。データ先読み
ルーチンは、ソングプレイモードで自動伴奏する場合に
次に再生すべき伴奏パターンをあらかじめ先に読み出し
ておき、読み出したパターンにしたがって各種のレジス
タに値を設定する。データ先読みルーチンでは、まずス
テップS61で1/16拍単位のカウンタQをゼロクリ
アする。次に、ステップS62で次に再生すべきソング
メモリの要素PART(POINT)を読み出しパター
ンレジスタPATERNに設定する。そして、ステップ
S63でポインタPOINTをインクリメントしてお
く。次に、ステップS64で読み出したパターンPAT
ERNがエンドコードであるか否か判別し、エンドコー
ドならばリターンする。
データ先読みルーチンについて説明する。データ先読み
ルーチンは、ソングプレイモードで自動伴奏する場合に
次に再生すべき伴奏パターンをあらかじめ先に読み出し
ておき、読み出したパターンにしたがって各種のレジス
タに値を設定する。データ先読みルーチンでは、まずス
テップS61で1/16拍単位のカウンタQをゼロクリ
アする。次に、ステップS62で次に再生すべきソング
メモリの要素PART(POINT)を読み出しパター
ンレジスタPATERNに設定する。そして、ステップ
S63でポインタPOINTをインクリメントしてお
く。次に、ステップS64で読み出したパターンPAT
ERNがエンドコードであるか否か判別し、エンドコー
ドならばリターンする。
【0086】ステップS64でパターンPATERNが
エンドコードでないときは、ステップS65でパターン
PATERNが繰返し開始記号『外1』であるか否か判
別する。繰返し開始記号『外1』であるときはステップ
S66でソングメモリのポインタPOINTの値をワー
クレジスタRPSTに設定し、リピートフラブREPE
ATに「1」を設定して、再びステップS62に戻る。
エンドコードでないときは、ステップS65でパターン
PATERNが繰返し開始記号『外1』であるか否か判
別する。繰返し開始記号『外1』であるときはステップ
S66でソングメモリのポインタPOINTの値をワー
クレジスタRPSTに設定し、リピートフラブREPE
ATに「1」を設定して、再びステップS62に戻る。
【0087】ステップS65でパターンPATERNが
繰返し開始記号『外1』でないときは、ステップS67
でパターンPATERNが繰返し終了記号『外2』と前
に戻る回数「×n」のデータであるか否か判断する。繰
返し終了記号などである場合はステップS68でリピー
トフラグが「1」であるか否か判別する。リピートフラ
グREPEATが「1」であるときは、繰返しの処理に
入って始めて繰返し終了記号を読み出したということで
あるから、ステップS69でリピートフラグREPEA
Tを「0」にリセットし、リピート回数をダウンカウン
トするカウンタRPNに前に戻る回数nから「1」を引
いた値(この時点で繰返すべきパターンは1回読み出さ
れている)を格納し、ポインタPOINTにワークレジ
スタRPST(このレジスタRPSTにはステップS6
6で繰返すべきパターンの位置が格納されている)の値
を復帰して、ステップS62に戻る。
繰返し開始記号『外1』でないときは、ステップS67
でパターンPATERNが繰返し終了記号『外2』と前
に戻る回数「×n」のデータであるか否か判断する。繰
返し終了記号などである場合はステップS68でリピー
トフラグが「1」であるか否か判別する。リピートフラ
グREPEATが「1」であるときは、繰返しの処理に
入って始めて繰返し終了記号を読み出したということで
あるから、ステップS69でリピートフラグREPEA
Tを「0」にリセットし、リピート回数をダウンカウン
トするカウンタRPNに前に戻る回数nから「1」を引
いた値(この時点で繰返すべきパターンは1回読み出さ
れている)を格納し、ポインタPOINTにワークレジ
スタRPST(このレジスタRPSTにはステップS6
6で繰返すべきパターンの位置が格納されている)の値
を復帰して、ステップS62に戻る。
【0088】ステップS68でリピートフラグREPE
ATが「1」でない場合は、繰返しの処理に入ってから
2度目以降の繰返し終了記号の読み出しであるから、ス
テップS70でダウンカウンタRPNが「0」であるか
否か判別する。「0」でなければ、ステップS71でポ
インタPOINTにワークレジスタRPSTの繰返すべ
きパターンの位置を設定し、カウンタRPNをデクリメ
ントして、ステップS62に戻る。ステップS70でカ
ウンタRPNが「0」ときは繰返し処理における最後の
パターンの先読みであるからそのままステップS62に
戻る。
ATが「1」でない場合は、繰返しの処理に入ってから
2度目以降の繰返し終了記号の読み出しであるから、ス
テップS70でダウンカウンタRPNが「0」であるか
否か判別する。「0」でなければ、ステップS71でポ
インタPOINTにワークレジスタRPSTの繰返すべ
きパターンの位置を設定し、カウンタRPNをデクリメ
ントして、ステップS62に戻る。ステップS70でカ
ウンタRPNが「0」ときは繰返し処理における最後の
パターンの先読みであるからそのままステップS62に
戻る。
【0089】ステップS67でパターンPATERNが
繰返し終了記号などのデータでない場合は、読み出した
のは伴奏パターンであるから、ステップS72で1/4
拍を単位とする拍を設定する拍レジスタBEETにパタ
ーンPATERNの拍数を設定して、リターンする。
繰返し終了記号などのデータでない場合は、読み出した
のは伴奏パターンであるから、ステップS72で1/4
拍を単位とする拍を設定する拍レジスタBEETにパタ
ーンPATERNの拍数を設定して、リターンする。
【0090】次に図14を参照して割込みルーチンにつ
き説明する。割込みルーチンは、クロック8(図1)に
よりタイマ割込み(1msecごと)があるごとに実行
される。割込みルーチンでは、まずステップS81でカ
ウンタTが「0」であるか否か判別する。カウンタTが
「0」でない場合は、未だ1/16拍の時間が経過して
いない(すなわち、1/16拍のタイミングでない)と
いうことだから、発音は行なわず、ステップS82でカ
ウンタTをデクリメントしてリターンする。
き説明する。割込みルーチンは、クロック8(図1)に
よりタイマ割込み(1msecごと)があるごとに実行
される。割込みルーチンでは、まずステップS81でカ
ウンタTが「0」であるか否か判別する。カウンタTが
「0」でない場合は、未だ1/16拍の時間が経過して
いない(すなわち、1/16拍のタイミングでない)と
いうことだから、発音は行なわず、ステップS82でカ
ウンタTをデクリメントしてリターンする。
【0091】ステップS81でカウンタTが「0」であ
れば、1/16拍ごとのタイミングであるから、ステッ
プS83に進み、カウンタTに時間レジスタBTから
「1」を引いた値を格納する。時間レジスタBTには1
/16拍単位の拍と拍の間の時間をmsecで表わした
値があらかじめ格納されており、ステップS83に至っ
た割込みに対応する1msecの分をこのレジスタBT
の値から引いて、ダウンカウンタTの初期値としてい
る。次に、ステップS84でモードレジスタMODが
「5」であるか否かすなわちソングプレイモードか否か
を判別する。ソングプレイモードでない場合は自動演奏
の必要はないので、リターンする。ソングプレイモード
であるときは、ステップS85でパターンデータPAT
ERN(データ先読みルーチンにより、あらかじめレジ
スタPATERNに格納されている)がエンドコードで
あってかつカウンタQが16か(すなわち、小節の終了
か)を判別する。ステップS85の判別結果が真の場合
は、楽曲の終了であるからそのままリターンする。
れば、1/16拍ごとのタイミングであるから、ステッ
プS83に進み、カウンタTに時間レジスタBTから
「1」を引いた値を格納する。時間レジスタBTには1
/16拍単位の拍と拍の間の時間をmsecで表わした
値があらかじめ格納されており、ステップS83に至っ
た割込みに対応する1msecの分をこのレジスタBT
の値から引いて、ダウンカウンタTの初期値としてい
る。次に、ステップS84でモードレジスタMODが
「5」であるか否かすなわちソングプレイモードか否か
を判別する。ソングプレイモードでない場合は自動演奏
の必要はないので、リターンする。ソングプレイモード
であるときは、ステップS85でパターンデータPAT
ERN(データ先読みルーチンにより、あらかじめレジ
スタPATERNに格納されている)がエンドコードで
あってかつカウンタQが16か(すなわち、小節の終了
か)を判別する。ステップS85の判別結果が真の場合
は、楽曲の終了であるからそのままリターンする。
【0092】ステップS85の判別が偽の場合は、ステ
ップS86で1/16拍ごとのアップカウンタQをイン
クリメントし、ステップS87でパターンレジスタPA
TERN内の1/16×Q拍目の情報に応じてリズム音
のオン情報や音色情報をトーンジェネレータTGに出力
する。これにより当該タイミングにおける自動伴奏のリ
ズム音が発音される。なお、パターンPATERNの1
/16×Q拍目の情報が休符の場合は当然ながら発音は
なされない。
ップS86で1/16拍ごとのアップカウンタQをイン
クリメントし、ステップS87でパターンレジスタPA
TERN内の1/16×Q拍目の情報に応じてリズム音
のオン情報や音色情報をトーンジェネレータTGに出力
する。これにより当該タイミングにおける自動伴奏のリ
ズム音が発音される。なお、パターンPATERNの1
/16×Q拍目の情報が休符の場合は当然ながら発音は
なされない。
【0093】次に、ステップS88で拍レジスタBEE
Tに「4」を乗算しその積とカウンタQの値とが等しい
か否か判別する。これは自動伴奏する楽曲が4/4拍子
以外(3/4拍子など)の場合に小節終了に至ったかを
調べるための判別である。この判別の結果が真ならば小
節の終りに至っているので次のパターンデータを先読み
するため、ステップS89でデータ先読ルーチンをコー
ルし、リターンする。ステップS88の判別が偽ならば
そのままリターンする。
Tに「4」を乗算しその積とカウンタQの値とが等しい
か否か判別する。これは自動伴奏する楽曲が4/4拍子
以外(3/4拍子など)の場合に小節終了に至ったかを
調べるための判別である。この判別の結果が真ならば小
節の終りに至っているので次のパターンデータを先読み
するため、ステップS89でデータ先読ルーチンをコー
ルし、リターンする。ステップS88の判別が偽ならば
そのままリターンする。
【0094】以上説明したように、この実施例によれ
ば、パターンデータが図6のように階層化されているの
で、ソングのスタイル、テンポあるいはフィルイン位置
などの所定のパラメータを入力することによりソングデ
ータが自動生成できる。
ば、パターンデータが図6のように階層化されているの
で、ソングのスタイル、テンポあるいはフィルイン位置
などの所定のパラメータを入力することによりソングデ
ータが自動生成できる。
【0095】なお、上記の実施例ではパターンは1小節
を単位として構成しているが、1小節に限らず、複数の
小節を単位としてもよい。また、各パターンの小節数が
異なっていてもよい。さらに、パターンデータは、1/
16拍の分解能に限ることなく種々の分解能で構成して
もよいし、そのフォーマットも任意である。
を単位として構成しているが、1小節に限らず、複数の
小節を単位としてもよい。また、各パターンの小節数が
異なっていてもよい。さらに、パターンデータは、1/
16拍の分解能に限ることなく種々の分解能で構成して
もよいし、そのフォーマットも任意である。
【0096】上記実施例ではパターンをスタイルの別、
イントロソロエンディングの別、および通常リズムとフ
ィルインの別のインデックスで階層化して分類している
が、パターンを分類する構造はこれに限らない。また、
イントロとエンディングが同一、通常リズムが数種あ
る、などとしてもよい。さらに、上記の自動伴奏装置は
リズム音を発音する装置であるが、リズム音に限らず例
えばリズム音にコードなどを加えてもよい。
イントロソロエンディングの別、および通常リズムとフ
ィルインの別のインデックスで階層化して分類している
が、パターンを分類する構造はこれに限らない。また、
イントロとエンディングが同一、通常リズムが数種あ
る、などとしてもよい。さらに、上記の自動伴奏装置は
リズム音を発音する装置であるが、リズム音に限らず例
えばリズム音にコードなどを加えてもよい。
【0097】
【発明の効果】以上説明したように、この発明に係る自
動伴奏装置によれば、ユーザが演奏時間や演奏位置によ
る区間などの時間的な概念の内容を指定することにより
ソングデータが自動的に形成されるので、大まかな曲全
体の伴奏の流れをイメージしてソングデータを自動生成
でき、また誤入力が少なく入力操作も容易となる。
動伴奏装置によれば、ユーザが演奏時間や演奏位置によ
る区間などの時間的な概念の内容を指定することにより
ソングデータが自動的に形成されるので、大まかな曲全
体の伴奏の流れをイメージしてソングデータを自動生成
でき、また誤入力が少なく入力操作も容易となる。
【図1】この発明の一実施例に係る自動伴奏装置のブロ
ック構成図
ック構成図
【図2】操作パネルの外観図
【図3】この自動伴奏装置における状態遷移図
【図4】パターンモードおよびパターンエディットモー
ドの操作および画面例
ドの操作および画面例
【図5】ソングモード、ソングメイクモードおよびソン
グプレイモードの操作および画面例
グプレイモードの操作および画面例
【図6】パターンデータの階層構造を示す概念図
【図7】ソングの構成例を示す概念図
【図8】ソングデータの例を示す概念図
【図9】メインルーチンのフローチャート
【図10】スイッチルーチンのフローチャート
【図11】メイクルーチンのフローチャート
【図12】編集ルーチンのフローチャート
【図13】データ先読みルーチンのフローチャート
【図14】割込みルーチンのフローチャート
【図15】従来のソングデータ例
【符号の説明】 1:CPU,2:操作パネル,3:パッド,4:ワーキ
ングメモリ,5:プログラムメモリ,6:パターンメモ
リ,7:ソングメモリ,8:クロック,9:トーンジェ
ネレータ,10:サウンドシステム。
ングメモリ,5:プログラムメモリ,6:パターンメモ
リ,7:ソングメモリ,8:クロック,9:トーンジェ
ネレータ,10:サウンドシステム。
フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G10H 1/40 G10H 1/00 102 G10H 1/36
Claims (2)
- 【請求項1】曲のイントロダクションに用いる伴奏パタ
ーンであるイントロパターンと、イントロダクションに
続く本体部に用いる伴奏パターンである本体部パターン
と、曲のエンディングに用いる伴奏パターンであるエン
ディングパターンを記憶した記憶手段と、ユーザが曲全体の長さ、および該曲中の本体部の開始位
置と終了位置とを指定するための 入力手段と、前記入力手段により入力された曲全体長さを有するソン
グデータであって、指定された本体部の開始位置の前に
前記イントロパターンを配置し、指定された本体部の開
始位置から終了位置までの区間に前記本体部パターンを
配置し、指定された本体部の終了位置の後にエンディン
グパターンを配置した ソングデータを生成するソングデ
ータ生成手段とを具備することを特徴とする自動伴奏装
置。 - 【請求項2】 通常の伴奏パターンであるノーマルパター
ンと、該ノーマルパターンに代えて挿入される伴奏パタ
ーンであるフィルインパターンとを記憶した記憶手段
と、 ユーザが演奏区間全体の長さ、および該演奏区間中のフ
ィルインの位置を指定するための入力手段と、 前記入力手段により入力された演奏区間全体長さを有す
るソングデータであって、指定されたフィルインの位置
に前記フィルインパターンを配置し、残りの区間に前記
ノーマルパターンを配置したソングデータを生成するソ
ングデータ生成手段と を具備することを特徴とする自動
伴奏装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3023726A JP2828119B2 (ja) | 1991-01-25 | 1991-01-25 | 自動伴奏装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3023726A JP2828119B2 (ja) | 1991-01-25 | 1991-01-25 | 自動伴奏装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04240893A JPH04240893A (ja) | 1992-08-28 |
JP2828119B2 true JP2828119B2 (ja) | 1998-11-25 |
Family
ID=12118322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3023726A Expired - Fee Related JP2828119B2 (ja) | 1991-01-25 | 1991-01-25 | 自動伴奏装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2828119B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3558052B2 (ja) * | 2000-06-02 | 2004-08-25 | ヤマハ株式会社 | マルチメディア実行システム、マルチメディアファイルの実行方法およびシーケンサにより読み出し可能なマルチメディアファイル構造体 |
JP4983211B2 (ja) * | 2006-11-10 | 2012-07-25 | ティアック株式会社 | オーディオ再生装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61156099A (ja) * | 1984-12-27 | 1986-07-15 | ヤマハ株式会社 | 自動演奏装置 |
JPH0631979B2 (ja) * | 1987-02-05 | 1994-04-27 | ヤマハ株式会社 | 電子楽器の自動伴奏装置 |
JPH02127694A (ja) * | 1988-11-07 | 1990-05-16 | Nec Corp | 自動演秦装置 |
US4930390A (en) * | 1989-01-19 | 1990-06-05 | Yamaha Corporation | Automatic musical performance apparatus having separate level data storage |
-
1991
- 1991-01-25 JP JP3023726A patent/JP2828119B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH04240893A (ja) | 1992-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5266736A (en) | Interruption control apparatus for use in performance information processing system | |
US5486646A (en) | Rhythm creating system for creating a rhythm pattern from specifying input data | |
JP2580720B2 (ja) | 自動演奏装置 | |
US6166313A (en) | Musical performance data editing apparatus and method | |
JPH0631978B2 (ja) | 電子楽器の自動伴奏装置 | |
US5278347A (en) | Auto-play musical instrument with an animation display controlled by auto-play data | |
JP2828119B2 (ja) | 自動伴奏装置 | |
JP3497940B2 (ja) | 電子楽器の表示装置 | |
JP2956505B2 (ja) | 自動伴奏装置 | |
JPH1039864A (ja) | 電子楽器及びそのディスプレイ装置 | |
JPH07121163A (ja) | 演奏データ作成装置 | |
JP3013648B2 (ja) | 自動編曲装置 | |
JPS647392B2 (ja) | ||
JP2555569B2 (ja) | 電子楽器 | |
JPH0990953A (ja) | アルペジエータ | |
JP3775249B2 (ja) | 自動作曲装置及び自動作曲プログラム | |
JP3717651B2 (ja) | 歌詞表示装置、同装置に適用されるコンピュータ読み取り可能な記録媒体及び歌詞表示方法 | |
JP3195111B2 (ja) | 自動演奏装置 | |
JP2572317B2 (ja) | 自動演奏装置 | |
JP2756799B2 (ja) | 自動リズム演奏装置 | |
JP3398983B2 (ja) | 自動伴奏装置 | |
JP2674331B2 (ja) | 自動伴奏装置 | |
JP3282675B2 (ja) | 電子楽器 | |
JP3625913B2 (ja) | アルペジエータ | |
JP3505292B2 (ja) | アルペジエータ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20070918 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080918 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090918 Year of fee payment: 11 |
|
LAPS | Cancellation because of no payment of annual fees |