JP3521443B2 - Automatic accompaniment device - Google Patents

Automatic accompaniment device

Info

Publication number
JP3521443B2
JP3521443B2 JP16071693A JP16071693A JP3521443B2 JP 3521443 B2 JP3521443 B2 JP 3521443B2 JP 16071693 A JP16071693 A JP 16071693A JP 16071693 A JP16071693 A JP 16071693A JP 3521443 B2 JP3521443 B2 JP 3521443B2
Authority
JP
Japan
Prior art keywords
code
data
timing
switch
recording
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP16071693A
Other languages
Japanese (ja)
Other versions
JPH0720860A (en
Inventor
昌樹 後藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP16071693A priority Critical patent/JP3521443B2/en
Publication of JPH0720860A publication Critical patent/JPH0720860A/en
Application granted granted Critical
Publication of JP3521443B2 publication Critical patent/JP3521443B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】本発明は、自動伴奏装置のコード
演奏の記録機能に関する。 【0002】 【従来の技術】従来、初心者でも自動伴奏をより楽しめ
る機能として、コードメモリ機能がある。この機能で
は、自動伴奏記録モードにおいて、演奏者によって例え
ば所定の低音側鍵領域の鍵が押鍵等されることにより入
力されたコードが演奏タイミングに対応して記録され
る。その後、自動伴奏再生モードにおいて、記録された
コード演奏内容が再生される。演奏者は、その再生内容
に併せてメロディー演奏を楽しむことができる。 【0003】 【発明が解決しようとする課題】しかし、上述の従来の
コードメモリ機能では、記録時に、押鍵ミスにより目的
のコードが誤って有り得ないコード(ノンコード)又は
他のコードなどとして入力された場合に、演奏者はこの
直後に正しいコードを入力し直すと思われるが、このよ
うにして記録されたコードが再生されると、誤ったコー
ドと正しいコードの2つのコードが連続して再生される
ことにより、演奏者が本来意図したコード伴奏と異なる
結果となってしまうという問題点を有している。 【0004】このため、特に初心者などは、なかなかう
まく記録動作を行えず、コードメモリ機能を充分に楽し
むことができないという問題点を有している。本発明の
課題は、コード演奏の記録動作中の入力ミスを修正可能
とすることにある。 【0005】 【課題を解決するための手段】本発明は、演奏者による
コードの指定動作を、そのコードの属性を示すコードデ
ータ(例えばルートとコード種)とそのコードの指定タ
イミングを示すタイミングデータ(例えば1つ前のコー
ド指定時からの時間間隔であるインターバル時間)とし
て記録手段に記録し、その記録手段からコードデータと
タイミングデータとを順次読み出し、その読み出したコ
ードデータに対応するコード音に基づく自動伴奏を読み
出したタイミングデータに対応するタイミングで行う自
動伴奏装置を前提とする。 【0006】この前提の下での本発明の第1の態様は、
以下のとおりである。まず、記録手段に対する記録動作
時に、有り得ないコードが指定された場合に、有り得な
いコードを示すノンコードデータとノンコードデータの
指定タイミングを示すタイミングデータを記録するノン
コードデータ記録手段を有する。 【0007】次に、記録手段に対する記録動作後に(例
えば記録動作がオフされた時点において)、記録手段か
らノンコードデータを検出するノンコードデータ検出手
段を有する。 【0008】続いて、記録手段に対する記録動作後に、
記録手段上で、ノンコードデータ検出手段により検出さ
れたノンコードデータの指定タイミングからそのノンコ
ードデータの次に指定されているコードデータの指定タ
イミングまでのタイミング差を算出するタイミング差算
出手段を有する。 【0009】そして、次のようなコード修正手段を有す
る。即ち、このコード修正手段は、記録手段に対する記
録動作後に、タイミング差算出手段により算出されたタ
イミング差が所定値よりも小さかった場合に、記録手段
上で、ノンコードデータ検出手段により検出されたノン
コードデータの指定タイミングにおいて、そのノンコー
ドデータの代りにそのノンコードデータの次に指定され
ているコードデータが指定されるように修正すると共
に、そのノンコードデータの次に指定されているコード
データの指定タイミングにおいて、そのコードデータが
指定されないように修正する。また、コード修正手段
は、タイミング差算出手段により算出されたタイミング
差が所定値より小さくなかった場合に、記録手段上で、
ノンコードデータ検出手段により検出されたノンコード
データの指定タイミングにおいて、そのノンコードデー
タが指定されないように修正する。 【0010】 【0011】 【0012】 【作用】ユーザがコード指定の記録動作を行う場合にお
いて、コードの指定ミスをする場合には、有り得ないコ
ードを指定してしまい、かつ、その直後にすぐに正しい
コードを指定することが多い。 【0013】そこで、本発明の第1の態様では、有り得
ないコードはノンコードデータ記録手段によってノンコ
ードデータとして記録され、記録動作の終了後に、ノン
コードデータ検出手段、タイミング差算出手段、及びコ
ード修正手段によって、記録手段上でノンコードデータ
が検出され、そのノンコードデータからその次に指定さ
れているコードデータまでのタイミング差が所定値以下
である場合には、そのノンコードデータがその次に指定
されているコードデータで置き換えられることにより、
正しいコード指定に修正される。 【0014】 【0015】 【0016】 【実施例】以下、図面を参照しながら本発明の実施例に
つき詳細に説明する。図1は、本発明の実施例の外観図
である。この実施例は、本発明を電子鍵盤楽器に適用し
たものである。 【0017】この実施例では、コードメモリに対する記
録動作中(以下、これをコードメモリ記録モードとい
う)に、演奏者によって有り得ないコード(以下、これ
をノンコードという)が押鍵されたら、これがノンコー
ドデータとして記録される。そして、コードメモリ記録
モードの終了時に、記録内容が最初から検索され、その
結果、ノンコードデータが見つかり、かつ、それに続い
て一定タイミング以内にコードデータが見つかった場合
には、そのコードデータがノンコードデータのタイミン
グまで移動させられることにより、コードの押鍵ミスが
修正されることを特徴とする。 【0018】そのために、図1において、鍵盤部101
のほか、スイッチ部102に、各種スイッチ及びスイッ
チ状態を表示するためのLED(light emitting diod
e)のほか、特に、コードメモリ記録動作を行うか否か
を指定するためのコードメモリ記録モードオン/オフス
イッチ103とそのスイッチ状態を表示するためのLE
D104、及び本発明に関連する上述のコード修正動作
を行うか否かを指定するためのAIモードオン/オフス
イッチ105とそのスイッチ状態を表示するためのLE
D106とが設けられている。 【0019】次に、図2は、本発明の実施例のブロック
図である。CPU201、ROM202、RAM20
3、鍵盤部101、及びスイッチ部102は、バス20
7によって相互に接続される。 【0020】CPU201は、ROM202に記憶され
ている制御プログラムに基づいて、RAM203をワー
クエリアとして使用しながら動作し、鍵盤部101及び
スイッチ部102を走査してそれらの操作状態を取り込
み、それらの操作状態に従って音源204に対して発音
制御を行う。また、CPU201は、上述のコードメモ
リ記録モード時に、演奏者が鍵盤部101で押鍵操作を
行うことにより入力したコードをRAM203のコード
メモリエリアに記録し、コードメモリ記録モードの終了
時に、コードメモリエリアの記録内容に対して、本発明
に関連する前述したコード修正動作を行う。更に、CP
U201は、コードメモリ再生モード時に、コードメモ
リエリアに記録されているコードデータを順次再生し、
音源204に対して自動コード伴奏のための発音制御を
行う。 【0021】音源204は、CPU201からの発音制
御に従って、例えばPCM(パルスコード符号変調)方
式、位相変調方式、周波数変調方式、倍音加算方式など
の楽音生成方式に基づいて、デジタル楽音波形データを
生成する。 【0022】音源204で生成されたデジタル楽音波形
データは、D/A変換器及びアンプ205でアナログ楽
音波形データに変換されて増幅され、スピーカ206か
ら放音される。 【0023】次に、図3は、RAM203(図2)のコ
ードメモリエリアのデータ構成図である。コードメモリ
記録モード時に、コードメモリエリアには、2バイトの
データセットが記憶される。このデータセットは、図3
のAで示されるように、コードの伴奏タイミングを指定
するためのインターバル時間及びルート、コード種から
なるコードデータ、又は、図3のBで示されるように、
インターバル時間及び有り得ないコードを示すノンコー
ドデータ(FE(h))、或いは、図3のCで示される
ように、インターバル時間及びインターバル時間を1バ
イトで表現できなくなり更にインターバル時間が継続す
ることを示す時間継続データ(FF(h))の何れかで
ある。 【0024】上述した構成を有する本発明の実施例の動
作につき以下に順次説明する。図4〜図11は、CPU
201がROM202に記憶される制御プログラムを実
行する動作として実現される動作フローチャートであ
る。 【0025】電源がオンされると、まず、図4のイニシ
ャル処理の動作フローチャートが実行され、その後、図
5と図6の鍵盤処理、図7と図8のスイッチ処理、及び
図9と図10の伴奏処理の各動作フローチャートが順次
繰り返し実行される。 【0026】また、図11は、CPU201内の特には
図示しないタイマから一定時間毎に図4〜図11の動作
フローチャートに対応する制御プログラムに対して発生
するインタラプトに基づいて実行される、インタラプト
処理のプログラムに対応する動作フローチャートであ
る。このインタラプト処理では、インターバル時間の更
新に関する制御動作が実行される。 【0027】まず、図4のイニシャル処理において、ス
テップS401で、RAM203のコードメモリエリア
の内容がクリアされる。次に、ステップS402で、初
期状態の音色(イニシャル音色)等のセットが行われ
る。続いて、ステップS403で、初期状態のリズムパ
ターンのセットが行われる。そして、ステップS404
で、その他の各種イニシャル処理が行われる。 【0028】次に、図5、図6の鍵盤処理について説明
する。なお、この処理は、前述したように、図7、図8
のスイッチ処理、図9、図10の伴奏処理と共に、順次
繰り返し実行される。また、以下の説明において、自動
伴奏モードのオン/オフ及びコードメモリ記録モードの
オン/オフは、RAM203内の特には図示しない自動
伴奏モードフラグ及びコードメモリ記録モードフラグが
オンされているかオフされているかが判定されることに
より、判定される。 【0029】まず、図5のステップS501で、鍵盤部
101のマトリックスがスキャンされ、次のステップS
502で、そのスキャン結果において、押鍵データ又は
離鍵データがあるか否かが判定される。 【0030】押鍵又は離鍵が発生し、ステップS502
の判定がYESとなると、ステップS503で、その押
鍵又は離鍵に対応する発音制御データをRAM203の
特には図示しないエリアに設定するための処理であるア
サイナ処理が実行される。 【0031】次に、ステップS504で、押鍵がなさ
れ、かつコード指定が行われたか否かが判定される。具
体的には、例えば、現在、自動伴奏モードになってお
り、かつコード指定用の所定の低音側鍵領域の鍵が押鍵
されたか否かを判定することにより、コード指定が行わ
れたか否かが判定される。自動伴奏モードは、スイッチ
部102の各種スイッチ(図1参照)の1つによって設
定され、その設定状態の検出とその切替えは、鍵盤処理
と共に繰り返し実行される後述するスイッチ処理におけ
るステップS707(図7)の処理によって行われてい
る。 【0032】押鍵がなされ、かつコード指定が行われた
と判定された場合以外の場合には、ステップS504の
判定がNOとなり、ステップS505で、前述したステ
ップS503においてRAM203に設定された発音制
御データに基づいて、メロディー音の発音(押鍵の場
合)又は消音(離鍵の場合)の発音制御が、音源204
に対してなされる。その後、ステップS501の処理以
降の処理が再び実行される。 【0033】押鍵がなされ、かつコード指定が行われた
と判定された場合には、ステップS504の判定がYE
Sとなり、図6のステップ506で、前述したステップ
S503においてRAM203に設定された押鍵された
鍵のキーナンバデータから、対応するコードのルートと
コード種が算出される。この処理は、例えば、ROM2
02に記憶されているコードテーブルのコードデータと
順次比較する動作として実現される。 【0034】次のステップS507で、算出されたコー
ド種が有り得ないコード種(ノンコード)であるか否か
が判定される。算出されたコード種がノンコードでステ
ップS507の判定がYESなら、ステップS508
で、ルート及びコード種を示すコード変数の値が、ノン
コードを示す値FE(h)(hは16進数を示す)に設
定される。その後、ステップS509が実行される。 【0035】算出されたコード種が有り得るコードでス
テップS507の判定がNOなら、ステップS508は
実行されずにステップS509が実行される。ステップ
S509では、現在、スイッチ部102のコードメモリ
記録モードオン/オフスイッチ103によって、コード
メモリ記録モードがオンされているか否かが判定され
る。コードメモリ記録モードオン/オフスイッチ103
の状態の検出とその切替えは、鍵盤処理と共に繰り返し
実行される後述するスイッチ処理におけるステップS7
08〜S721(図8)の処理によって行われている。 【0036】現在、コードメモリ記録モードがオンされ
ておりステップS509の判定がYESの場合には、以
下に説明するステップS510〜S512の処理によ
り、押鍵によって指定されたコードのタイミングデータ
と、その指定に基づいてステップS506で決定された
ルート、コード種が、RAM203内のコードメモリエ
リアにライトされる。 【0037】即ち、まず、ステップS510で、RAM
203上に確保される変数であるインクリメントカウン
タICの値が、インターバル時間として、RAM203
のコードメモリエリアに、図3に示されるようにライト
される。この場合のアドレスは、RAM203内の特に
は図示しないアドレスポインタによって指示され、上述
のライト処理の後は、アドレスポインタの値が+1され
る。なお、アドレスポインタには、コードメモリ記録モ
ードがオンされたときに、後述する図8のスイッチ処理
のステップS720で、コードメモリエリアの先頭アド
レスがセットされる。また、インクリメントカウンタI
Cの値は、前回のコード指定のための押鍵時に次のステ
ップS511でクリアされた後、一定時間毎に実行され
る図11のインタラプト処理のステップS1104→S
1105の処理によってインクリメントされている。従
って、インクリメントカウンタICの値であるインター
バル時間は、前回のコード指定時から今回のコード指定
時までの経過時間を示していることになる。 【0038】次に、ステップS511で、上述のインク
リメントカウンタICの値がクリアされる。このクリア
時点が次回のコード指定時までの経過時間の起点とな
る。また、RAM203に確保されている変数であるM
AXフラグの内容もクリアされる。このMAXフラグに
ついては後述する。 【0039】続いて、ステップS512で、前述したス
テップS506で決定されたコードのルートとコード種
が、RAM203のコードメモリエリアに、図3に示さ
れるように1バイトのデータとしてライトされる。この
場合のアドレスは、ステップS510の場合と同様、R
AM203内の特には図示しないアドレスポインタによ
って指示され、ライト処理の後は、アドレスポインタの
値が+1される。 【0040】一方、現在、コードメモリ記録モードがオ
ンされておらずステップS509の判定がNOの場合に
は、ステップS513で、前述したステップS506で
決定されたルートとコード種が、通常の自動伴奏処理で
使用されるように、特には図示しないRAM203内の
コードレジスタへ保存される。 【0041】ステップS512又はS513の処理の後
は、ステップS501の処理以降の処理が再び実行され
る。上述のステップS501〜S513の処理の繰返し
において、押鍵又は離鍵が発生しておらず、ステップS
502の判定がNOである場合は、ステップS514
で、ステップS509の場合と同様にして、現在、スイ
ッチ部102のコードメモリ記録モードオン/オフスイ
ッチ103により、コードメモリ記録モードがオンされ
ているか否かが判定される。 【0042】現在、コードメモリ記録モードがオンされ
ておらずステップS514の判定がNOの場合には、後
述する図7のスイッチ処理に進む。現在、コードメモリ
記録モードがオンされておりステップS514の判定が
YESの場合には、以下に説明するステップS515〜
S518で、インクリメントカウンタICのオーバーフ
ローを防止するための処理が実行される。 【0043】即ち、まず、ステップS515で、RAM
203に確保されている変数であるMAXフラグがオン
されているか否か(“1”であるか否か)が判定され
る。このMAXフラグは、一定時間毎に実行される図1
1のインタラプト処理のステップS1104で、インク
リメントカウンタICの値が最大値であるFF(h)に
なったと判定された場合に(時間単位tdはこの最大値
を割り切るように設定されているとする)、ステップS
1106の処理によってオンされる。 【0044】MAXフラグがオンされておらずステップ
S515の判定がNOの場合には、後述する図7のスイ
ッチ処理に進む。MAXフラグがオンされておりステッ
プS515の判定がYESの場合には、ステップS51
6で、RAM203のコードメモリエリアに、インター
バル時間として値FF(h)が、図3のCに示されるよ
うにライトされる。この場合のアドレスは、RAM20
3内の特には図示しないアドレスポインタによって指示
され、ライト処理の後は、アドレスポインタの値が+1
される。 【0045】次に、ステップS517で、インクリメン
トカウンタICとMAXフラグの値がクリアされる。そ
して、ステップS518で、ルート、コード種として時
間延長を示すコードFF(h)が、RAM203のコー
ドメモリエリアに、図3のCに示されるようにライトさ
れる。この場合のアドレスは、ステップS516の場合
と同様、RAM203内の特には図示しないアドレスポ
インタによって指示され、ライト処理の後は、アドレス
ポインタの値が+1される。 【0046】その後、図7のスイッチ処理に進む。以上
のステップS515〜S516の処理により、コード指
定動作時にインクリメントカウンタICが最大値に達し
てしまっても、自動伴奏の再生時には、時間延長を示す
コードFF(h)を介して次に続くインクリメントカウ
ンタICの値を上記最大値に加算することにより、コー
ド指定のタイミングを適切に制御することができる。 【0047】次に、図7及び図8のスイッチ処理につい
て説明する。この処理は、前述したように、図5、図6
の鍵盤処理、図9、図10の伴奏処理と共に、順次繰り
返し実行される。また、以下の説明において、AIモー
ドのオン/オフ及びコードメモリ記録モードのオン/オ
フは、RAM203内の特には図示しないAIモードフ
ラグ及びコードメモリ記録モードフラグがオンされてい
るかオフされているかが判定されることにより、判定さ
れる。 【0048】まず、図7のステップS701でスイッチ
部102のマトリックスがスキャンされ、次のステップ
S702で、そのスキャン結果において、何れかのスイ
ッチが操作されたか否かが判定される。 【0049】スイッチが操作されステップS702の判
定がNOの場合には、後述する図9の伴奏処理に進む。
スイッチが操作され、そのスイッチがAIモードオン/
オフスイッチ105であって、かつ、現在、コードメモ
リ記録モードでない場合は、ステップS702とS70
3の判定がYES、ステップS704の判定がNOとな
って、ステップS705で、AIモードのオン/オフの
切替えが行われる。具体的には、現在、AIモードがオ
フであった場合にはRAM203内のAIモードフラグ
がオンされ、現在、AIモードがオンである場合にはA
Iモードフラグがオフされる。 【0050】AIモードオン/オフスイッチ105が操
作されたときにコードメモリ記録モードである場合に
は、AIモードのオン/オフの切替えは行われず、図9
の伴奏処理に進む。 【0051】スイッチが操作され、そのスイッチがAI
モードオン/オフスイッチ105でもコードメモリ記録
モードオン/オフスイッチ103でもない場合には、ス
テップS702の判定がYES、ステップS703とS
706の判定がNOとなって、ステップS707で、そ
の他のスイッチ処理がなされ、その後、図9の伴奏処理
に進む。 【0052】スイッチが操作され、そのスイッチがコー
ドメモリ記録モードオン/オフスイッチ103であり、
かつ、現在、コードメモリ記録モードでない場合には、
ステップS702の判定がYES、ステップS703の
判定がNO、ステップS706の判定がYES、ステッ
プS708の判定がNOとなって、図8のステップS7
18〜S721で、コードメモリ記録モードをオンする
ための処理が実行される。 【0053】即ち、まず、ステップS718で、コード
メモリ記録モードオン/オフスイッチ103に対応する
LED104(図1参照)がオンされる。次に、ステッ
プS719で、自動伴奏処理に使用されるインクリメン
トカウンタIC、ディクリメントカウンタDC、MIN
フラグ、及びMAXフラグがクリアされる。 【0054】続いて、ステップS720で、コードメモ
リエリアの記録開始アドレスがRAM203の特には図
示しないアドレスポインタにセットされる。アドレスポ
インタの値は、前述したように、鍵盤処理におけるステ
ップS510、S512(図6)、S516、S518
図5)の各ライト処理時等において参照される。 【0055】そして、ステップS721で、コードメモ
リ記録モードがオンされる。具体的には、RAM203
内の特には図示しないコードメモリ記録モードフラグが
オンされる。 【0056】その後、図9の伴奏処理に進む。一方、ス
イッチが操作され、そのスイッチがコードメモリ記録モ
ードオン/オフスイッチ103であり、現在、コードメ
モリ記録モードであり、かつ、現在、AIモードでない
場合には、ステップS702の判定がYES、ステップ
S703の判定がNO、ステップS706とS708の
判定がYES、ステップS709の判定がNOとなっ
て、図8のステップS717とS721で、コードメモ
リ記録モードをオフするための処理が実行される。 【0057】即ち、まず、ステップS717で、コード
メモリ記録モードオン/オフスイッチ103に対応する
LED104(図1参照)がオフされる。そして、ステ
ップS721で、コードメモリ記録モードがオフされ
る。具体的には、RAM203内の特には図示しないコ
ードメモリ記録モードフラグがオフされる。 【0058】その後、図9の伴奏処理に進む。スイッチ
が操作され、そのスイッチがコードメモリ記録モードオ
ン/オフスイッチ103であり、現在、コードメモリ記
録モードであり、かつ、現在、AIモードである場合に
は、ステップS702の判定がYES、ステップS70
3の判定がNO、ステップS706、S708、S70
9の判定がYESとなって、図8のステップS710〜
S716で、AIモードのためのコード修正処理が実行
された後に、ステップS717とS721で、コードメ
モリ記録モードをオフするための処理が実行される。こ
のように、コードメモリ記録モードのオフ時にAIモー
ドが指定されている場合に、コード修正処理が実行され
る点が、本発明に関連する特徴である。 【0059】まず、ステップS710で、コードメモリ
記録モードオン/オフスイッチ103に対応するLED
104(図1参照)が点滅状態にされる。次に、ステッ
プS711で、RAM203内のアドレスポインタの値
がコードメモリエリアの記録開始アドレスに初期設定さ
れた後、記録開始アドレスの最初からアドレスポインタ
が順次インクリメントされながら、コードメモリエリア
に記録されているイベント(ルートとコード種)(図3
参照)が順次チェックされる。 【0060】そして、ステップS712で、コードメモ
リエリア上において、ルート及びコード種の値がノンコ
ードを示す値FE(h)があるか否かが判定される。ノ
ンコードを示す値FE(h)が見つかった場合には、ス
テップS713で、そのノンコードを示すイベントから
それに続く次のコード(以下、次コードという)までの
インターバル時間が読み出され、ステップS714で、
そのインターバル時間の値が閾値(α×td)より短い
か否かが判定される。tdは、演奏者によるスイッチ部
102の特には図示しないテンポスイッチの操作に基づ
いて決定されるインクリメントカウンタIC等の時間単
位であり(図11参照)、αは所定の定数である。従っ
て、この閾値は(α×td)は、コードメモリ記録モー
ド時に指定されたテンポに比例して可変される。 【0061】ノンコードを示すイベントから次コードま
でのインターバル時間が閾値(α×td)より短くステ
ップS714の判定がYESの場合には、演奏者がコー
ド指定をミスし、演奏者はノンコードを入力したタイミ
ングで次コードを入力するはずであったと推定できるた
め、ステップS715で、RAM203のコードメモリ
エリア上のノンコードのコード種FE(h)が次コード
のルートとコード種に修正され、次コードのルートとコ
ード種が時間延長を示すコードFF(h)に修正され
る。 【0062】一方、ノンコードを示すイベントから次コ
ードまでのインターバル時間が閾値(α×td)より長
くステップS714の判定がNOの場合には、演奏者は
コードを指定すべきでない時にノンコードを誤って指定
してしまったと推定できるため、ステップS716で、
RAM203のコードメモリエリア上のノンコードのコ
ード種FE(h)が、時間延長を示すコードFF(h)
に修正される。 【0063】ステップS715又はS716の処理の後
は、ステップS712に戻り、RAM203のコードメ
モリエリア上で更にノンコードを示す値FE(h)が見
つかったか否かが判定され、見つかったと判定された場
合には、上述したステップS713〜S716のコード
修正処理が繰り返される。 【0064】RAM203のコードメモリエリア上でノ
ンコードを示す値FE(h)が見つからなくなりステッ
プS712の判定がNOとなると、前述したように、ス
テップS717とS721で、コードメモリ記録モード
をオフするための処理が実行され、その後、図9の伴奏
処理に進む。 【0065】次に、図9及び図10の伴奏処理につき説
明する。この処理は、演奏者がスイッチ部102で自動
伴奏処理を指示した場合に、図5、図6の鍵盤処理、図
7、図8のスイッチ処理と共に、順次繰り返し実行され
る。また、以下の説明において、コードメモリ再生モー
ドのオン/オフは、RAM203内の特には図示しない
コードメモリ再生モードフラグがオンされているかオフ
されているかが判定されることにより、判定される。 【0066】まず、図9のステップS901で、RAM
203内の変数であるリズムカウンタRCが示す値が、
演奏者がスイッチ部102をセットして選択したリズム
に対応して予め設定されている発音タイミングにおける
値に等しいか否かが判定される。リズムカウンタRCの
値は、一定時間毎に実行される図11のインタラプト処
理のステップS1101において、演奏者によるスイッ
チ部102の特には図示しないテンポスイッチの操作に
基づいて決定される時間単位tdずつインクリメントさ
れる。このリズムカウンタRCの値は、拍タイミングに
対応しており、その値が最大値に達すると(時間単位t
dはこの最大値を割り切るように設定されているとす
る)、図11のステップS1102の判定がYESとな
り、ステップS1103でその値が0に戻される。この
結果、リズムカウンタRCの値は、拍タイミングに対応
して、巡回的に変化する。 【0067】リズムカウンタRCが示す値が発音タイミ
ングにおける値に等しくなくステップS901の判定が
NOの場合には、図10のステップS911で、演奏時
の各種雑処理が実行された後、前述した図5の鍵盤処理
に戻る。 【0068】リズムカウンタRCが示す値が発音タイミ
ングにおける値に等しくステップS901の判定がYE
Sの場合には、ステップS902で、現在、コードメモ
リ再生モードであるか否かが判定される。 【0069】リズムカウンタRCが示す値が発音タイミ
ングにおける値に等しくなったタイミングで、演奏者が
スイッチ部102においてコードメモリ再生モードを指
定していない場合には、そのタイミングにおいて演奏者
がリアルタイムの押鍵操作により指定しているコードの
自動伴奏処理が実行される。 【0070】即ちまず、ステップS904で、前述の鍵
盤処理における図6のステップS513においてコード
レジスタに保持されたルートとコード種が読み出され
る。次に、図10のステップS909で、上述のルー
ト、コード種と、現在のリズムカウンタRCの値に基づ
いて、発音すべき自動伴奏用のコードデータが算出さ
れ、音源204に対してコード音の発音制御がなされ
る。なお、リズムカウンタRCの値は、前述したように
拍タイミングに対応しており、これにより、コードの転
回形等が決定される。 【0071】その後、ステップS910で、リズム音等
の発音制御等、その他の伴奏処理が音源204に対して
なされる。そして、ステップS911で、演奏時の各種
雑処理が実行された後、前述した図5の鍵盤処理に戻
る。 【0072】一方、リズムカウンタRCが示す値が発音
タイミングにおける値に等しくなったタイミングで、演
奏者がスイッチ部102においてコードメモリ再生モー
ドを指定している場合には、前述したコードメモリ記録
モードにおいて予めRAM203内のコードメモリエリ
アに演奏者によって記録され、更にAIモードが指定さ
れている場合にはコードメモリ記録モードの終了時にコ
ードの指定ミスが修正されたコードメモリエリア上のコ
ードデータに基づき、以下のようにして自動伴奏処理が
実行される。 【0073】即ち、まず、ステップS903で、RAM
203上のMINフラグがオンされているか否かが判定
される。今、特には図示しないが、コードメモリ再生モ
ードが指定された時点で、MINフラグはオフされ、ま
た、アドレスポインタによって指示されるコードメモリ
エリアの先頭のインターバル時間(図3参照)が読み出
され、その値がRAM203上の変数であるディクリメ
ントカウンタDCにセットされ、アドレスポインタの値
が+1される。その後、ディクリメントカウンタDCの
値は、一定時間毎に実行される図11のインタラプト処
理のステップS1107→S1108において、演奏者
によるスイッチ部102の特には図示しないテンポスイ
ッチの操作に基づいて決定される時間単位tdずつディ
クリメントされる。そして、上述のコードメモリエリア
から読み出されたインターバル時間に対応する時間が経
過し、ディクリメントカウンタDCの値が00(h)に
なると(ディクリメントカウンタDCに設定されるイン
ターバル時間は時間単位tdで割り切れる)、図11の
ステップS1107の判定がYESとなり、ステップS
1109で、MINフラグがオンされる。 【0074】MINフラグがオンされステップS903
の判定がYESとなると、図10のステップS905
で、コードメモリエリアの現在のアドレスポインタで指
示されるコードデータ(ルートとコード種)(図3参
照)が読み込まれ、アドレスポインタの値が+1され
る。その後、ステップS906で、MINフラグがクリ
アされ、ステップS907で、コードメモリエリアのア
ドレスポインタによって指示されるインターバル時間が
読み込まれ、ディクリメントカウンタDCにセットされ
る。 【0075】一方、MINフラグがオンされておらずス
テップS903の判定がNOの場合には、既に読み込ま
れているコードデータがそのまま使用される。続いて、
現在のコードデータが時間延長を示す値FF(h)でな
ければステップS908の判定がNOとなり、ステップ
S909で、そのコードデータであるルート、コード種
と、現在のリズムカウンタRCの値に基づいて、発音す
べき自動伴奏用のコードデータが算出され、音源204
に対してコード音の発音制御がなされる。 【0076】現在のコードデータが時間延長を示す値F
F(h)である場合には、前述したステップS907の
処理として単に時間延長処理がなされるだけであるの
で、ステップS908の判定がYESとなり、コード音
の発音制御は行われない。 【0077】その後、ステップS910で、リズム音等
の発音制御等、その他の伴奏処理が音源204に対して
なされる。そして、ステップS911で、演奏時の各種
雑処理が実行された後、前述した図5の鍵盤処理に戻
る。 【0078】次に、本発明の他の実施例について説明す
る。上述した実施例では、演奏者によってノンコードが
押鍵され、コードメモリ記録モードの終了時に、コード
メモリエリア上でノンコードデータが見つかり、かつ、
それに続いて一定タイミング以内にコードデータが見つ
かった場合に、そのコードデータがノンコードデータの
タイミングまで移動させられることにより、コードの押
鍵ミスが修正された。 【0079】これに対して、以下に説明する他の実施例
では、演奏者によってノンコードが押鍵された場合に
は、それは無視されてコードメモリエリアには記録され
ず、コードメモリ記録モードの終了時に、コードメモリ
エリア上でインターバル時間が演奏者が任意に設定した
基準値以内のコードが見つかった場合に、後続のコード
データがそれに先行するコードデータのタイミングまで
移動させられ先行するコードデータは無視されることに
より、コードの押鍵ミスが修正されることを特徴とす
る。 【0080】この実施例における構成は、前述した実施
例における図1及び図2と同様である。図12は、前述
した実施例における図4のイニシャル処理に対応する処
理の動作フローチャートである。図12において、図4
の場合と同じステップ番号が付された処理は、図4の場
合と同じ機能を有する。 【0081】図12の動作フローチャートが図4の動作
フローチャートと異なる点は、ステップS1201で、
インターバル時間の長短を判定するため値が格納される
RAM203内の変数である基準レジスタに、イニシャ
ル値(デフォルト値)が設定される点である。 【0082】次に、前述した実施例における鍵盤処理の
一部である図5の動作フローチャートは、この実施例で
もそのまま採用される。続いて、図13は、前述した実
施例における鍵盤処理の一部である図6の動作フローチ
ャートに対応する動作フローチャートである。図13に
おいて、図6の場合と同じステップ番号が付された処理
は、図6の場合と同じ機能を有する。 【0083】図13の動作フローチャートが図6の動作
フローチャートと異なる点は、図6でステップS507
とS508として実行されていたノンコードをコードメ
モリエリアに記録するための処理が、図13にはない点
である。 【0084】この結果、この実施例では、演奏者によっ
てノンコードが押鍵された場合は、それは無視されてコ
ードメモリエリアには記録されないことになる。次に、
図14、図15は、前述した実施例における図7、図8
のスイッチ処理に対応する処理の動作フローチャートで
ある。図14、図15において、図7、図8の場合と同
じステップ番号が付された処理は、図7、図8の場合と
同じ機能を有する。 【0085】始めに、図14の動作フローチャートが図
7の動作フローチャートと異なる点は、スイッチ部10
2のスイッチが操作されそのスイッチが基準レジスタ値
+/−スイッチであった場合に、ステップS1401の
判定がYESとなり、ステップS1402で、そのスイ
ッチ操作に応じて、基準レジスタ値がインクリメント
(+)又はディクリメント(−)される点である。これ
により、演奏者は、コード指定時の押鍵ミスを修正する
場合に判定されるインターバル時間の長短の基準を、任
意に設定することができる。 【0086】続いて、図15の動作フローチャートが図
8の動作フローチャートと異なる点は、AIモード時の
コード修正動作として、図8のステップS712〜S7
16の処理群の代りにステップS1501〜S1504
の処理群が実行される点である。 【0087】即ち、まず、ステップS1501で、コー
ドメモリエリア上の先頭のイベント(ルートとコード
種)から順に、現在のコードデータ(以下、現コードイ
ベントという)からその次ののコードデータ(以下、次
コードイベントという)までのインターバル時間が読み
出され、次のステップS1502で、そのインターバル
時間が、基準レジスタ値より短いか否かが判定される。 【0088】インターバル時間が基準レジスタ値より短
かくなくステップS1502の判定がNOなら、現コー
ドイベントに対するコード修正は行われない。インター
バル時間が基準レジスタ値より短かくステップS150
2の判定がYESなら、ステップS1503で、RAM
203のコードメモリエリア上の現コードイベントのル
ートとコード種が次コードのルートとコード種に修正さ
れ、次コードのルートとコード種が時間延長を示すコー
ドFF(h)に修正される。 【0089】そして、コードメモリエリア上の記録され
た全ての現コードイベントについて処理が終了していな
ければ、ステップS1504の判定がNOとなってステ
ップS1501の処理に戻り、コードメモリエリア上の
記録された全ての現コードイベントについて処理が終了
したならば、ステップS1504の判定がYESとなっ
て、図7の場合と同様のステップS717とS721
で、コードメモリ記録モードをオフするための処理が実
行される。 【0090】その後、前述した実施例の図9の伴奏処理
と同じ処理が、この実施例でも実行される。また、前述
した実施例において一定時間毎に実行される図11のイ
ンタラプト処理も、この実施例でそのまま採用される。 【0091】 【発明の効果】本発明の第1の態様によれば、記録手段
上でノンコードデータが検出され、そのノンコードデー
タからその次に指定されているコードデータまでのタイ
ミング差が所定値以下である場合には、そのノンコード
データがその次に指定されているコードデータで置き換
えられることにより、正しいコード指定に修正すること
が可能となる。 【0092】 【0093】以上のようにして、演奏者が本来意図した
コード伴奏を再生することが可能となる。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a code for an automatic accompaniment device.
Related to performance recording function. [0002] Conventionally, even beginners can enjoy automatic accompaniment more.
Function is a code memory function. With this feature
Is compared by the player in the automatic accompaniment recording mode.
If a key in a predetermined bass key area is pressed,
The input chord is recorded according to the performance timing.
You. Then, in the automatic accompaniment playback mode, the recorded
The chord performance is played. The performer determines the content
You can enjoy the melody performance along with the music. [0003] However, the above-mentioned conventional technology
With the code memory function, when recording,
Code (non-code) where the code cannot be incorrectly
If entered as another chord, the performer
Immediately afterwards, you will probably enter the correct code again.
When the recorded code is played back, the wrong code
Code and the correct code are played consecutively
This is different from the chord accompaniment originally intended by the player
There is a problem that the result is obtained. [0004] For this reason, especially for beginners, it is quite easy
The recording operation cannot be performed, and the code memory function is fully enjoyed.
There is a problem that it is not possible. Of the present invention
Assignments can correct input errors during chord performance recording
It is to be. SUMMARY OF THE INVENTION [0005] The present invention provides a music player
The code designation operation is performed by the code data indicating the attribute of the code.
Data (for example, route and code type) and the code
Timing data (for example, the previous
Interval time, which is the time interval from when the
And record the code data from the recording means.
The timing data is read sequentially, and the read
Read the automatic accompaniment based on the chord sound corresponding to the
Automatically perform at the timing corresponding to the issued timing data.
A moving accompaniment device is assumed. [0006] A first aspect of the present invention based on this premise is:
It is as follows. First, the recording operation for the recording means
Sometimes, when an impossible code is specified,
Of non-code data
Non-recording timing data indicating the specified timing
It has code data recording means. Next, after the recording operation on the recording means (example
For example, when the recording operation is turned off), the recording means
Data detection method that detects non-coded data from
It has a step. Subsequently, after the recording operation on the recording means,
On the recording means, the non-code data
From the specified timing of the non-coded data
Code data specified next to the code data
Timing difference calculation to calculate the timing difference until the timing
It has outlet means. Then, the following code correcting means is provided.
You. In other words, this code correction means is a
After the recording operation, the timer calculated by the timing difference
When the difference in the imaging is smaller than a predetermined value, the recording means
In the above, the non-code data detected by the non-code data
At the specified timing of the code data,
Specified next to the non-coded data instead of
Code so that the specified code data is specified.
Is the code specified next to the non-coded data
At the data specification timing, the code data
Modify it so that it is not specified. Also, code modification means
Is the timing calculated by the timing difference calculation means
The difference Predetermined value If not smaller, on the recording means,
Non-code detected by non-code data detection means
At the specified timing of the data, the non-code data
Modify so that the data is not specified. When the user performs a recording operation of designating a code,
If you make a mistake in specifying the code,
Code, and right after that,
Code is often specified. Therefore, in the first embodiment of the present invention,
Non-codes are recorded by non-code data recording means.
Is recorded as data, and after the recording operation ends,
Code data detecting means, timing difference calculating means, and
The non-code data is recorded on the recording
Is detected, and the next specified
Timing difference up to the specified code data is less than the specified value
If the non-code data is specified next
By replacing the code data
Corrected to the correct code specification. An embodiment of the present invention will be described below with reference to the accompanying drawings.
A detailed description will be given. FIG. 1 is an external view of an embodiment of the present invention.
It is. In this embodiment, the present invention is applied to an electronic keyboard instrument.
It is a thing. In this embodiment, the memory for the code memory is
During recording operation (hereinafter referred to as code memory recording mode)
), A chord that cannot be performed by the player
Is called a non-code).
Recorded as data. And code memory record
At the end of the mode, the recorded content is searched from the beginning and
As a result, non-coded data is found, and
If code data is found within a certain timing
Is the timing of the non-code data
To the key, the key press mistake
It is characterized by being modified. For this purpose, in FIG.
In addition, various switches and switches
LED (light emitting diod)
In addition to e), whether or not to perform code memory recording operation
Memory recording mode on / off for specifying
LE for displaying switch 103 and its switch status
D104 and the above-described code modification operations related to the present invention
Mode on / off for specifying whether or not to perform
LE for displaying switch 105 and its switch status
D106. FIG. 2 is a block diagram showing an embodiment of the present invention.
FIG. CPU 201, ROM 202, RAM 20
3, the keyboard unit 101 and the switch unit 102
7 interconnected. The CPU 201 is stored in the ROM 202
RAM 203 based on the control program
It operates while using it as a querier,
Scan the switch unit 102 to capture their operation status
Sound to the sound source 204 according to their operation state
Perform control. Further, the CPU 201 executes the above code memo.
In the re-recording mode, the player presses a key on the keyboard 101.
The code entered by performing
Record in memory area and exit code memory recording mode
Sometimes, the present invention is applied to the recorded contents of the code memory area.
Perform the above-described code correcting operation. Furthermore, CP
U201 is a code memo in code memory playback mode.
The code data recorded in the rear area is played back sequentially,
Sound control for automatic chord accompaniment for sound source 204
Do. The sound source 204 has a sound generation system from the CPU 201.
For example, PCM (Pulse Code Modulation)
Method, phase modulation method, frequency modulation method, harmonic addition method, etc.
Digital tone waveform data based on the
Generate. Digital tone waveform generated by sound source 204
Data is converted to analog data by the D / A converter and amplifier 205.
It is converted to sound waveform data, amplified, and
Is emitted. Next, FIG. 3 shows the contents of the RAM 203 (FIG. 2).
FIG. 3 is a data configuration diagram of a memory module area. Code memory
In the recording mode, the code memory area contains 2 bytes.
The data set is stored. This dataset is shown in FIG.
Specify the chord accompaniment timing as indicated by A in
Time, route, and code type
, Or as shown in FIG. 3B,
Non-code indicating interval time and impossible code
Data (FE (h)) or C shown in FIG.
Interval time and interval time
Can no longer be expressed in terms of time and the interval time continues
Time continuous data (FF (h))
is there. The operation of the embodiment of the present invention having the above-described configuration will now be described.
The work will be described below in order. 4 to 11 show the CPU.
201 executes the control program stored in the ROM 202;
4 is an operation flowchart realized as an operation to be performed.
You. When the power is turned on, first, the initialization shown in FIG.
The operation flowchart of the call processing is executed.
5 and 6 keyboard processing, FIGS. 7 and 8 switch processing, and
Each operation flowchart of the accompaniment process of FIG. 9 and FIG.
It is executed repeatedly. FIG. 11 is a block diagram of the CPU 201.
4 to 11 at regular intervals from a timer (not shown)
Occurs for the control program corresponding to the flowchart
Interrupts executed based on interrupts
4 is an operation flowchart corresponding to a processing program.
You. In this interrupt processing, the interval time is updated.
The control operation for new is executed. First, in the initial processing shown in FIG.
In step S401, the code memory area of the RAM 203
Is cleared. Next, in step S402,
Set the initial tone (initial tone), etc.
You. Subsequently, in step S403, the rhythm pattern in the initial state is set.
A set of turns is performed. Then, step S404
Then, various other initial processes are performed. Next, the keyboard processing of FIGS. 5 and 6 will be described.
I do. This processing is performed as described above with reference to FIGS.
With the switch processing of FIG. 9 and the accompaniment processing of FIG.
It is executed repeatedly. In the following description,
On / off of accompaniment mode and chord memory recording mode
The on / off operation is performed automatically (not shown) in the RAM 203.
Accompaniment mode flag and chord memory recording mode flag
Determining whether it is on or off
Is determined. First, the steps in FIG. S501 And the keyboard
The matrix of 101 is scanned and the next step S
At 502, the key press data or
It is determined whether there is key release data. At step S502, a key press or key release occurs.
If the determination of YES is YES, in step S503, the push
The sound control data corresponding to the key or the key release is stored in the RAM 203.
In particular, this is a process for setting an area (not shown).
Signer processing is executed. Next, in step S504, the key is not pressed.
Then, it is determined whether or not the code is specified. Ingredient
Physically, for example, it is currently in auto accompaniment mode
Key and a key in the specified low-pitched key area
The code is specified by determining whether
It is determined whether it has been done. Switch the automatic accompaniment mode
Set by one of various switches (see FIG. 1) of the unit 102.
The detection of the setting state and the switching are performed by keyboard processing.
In the switch processing described later
Performed by the process of step S707 (FIG. 7).
You. A key is pressed and a code is specified.
In cases other than the case where it is determined that
If the determination is NO, the process proceeds to step S505.
The tone control set in the RAM 203 in step S503
Based on your data, the melody sound is generated (when the key is pressed).
Sound) or mute (in the case of key release)
Made against. Thereafter, after the processing of step S501,
The descending process is executed again. A key is pressed and a code is specified.
Is determined, the determination in step S504 is YE
S, and in step 506 of FIG.
In step S503, the key pressed in the RAM 203 is pressed.
From the key number data of the key,
A code type is calculated. This process is performed, for example, in the ROM 2
02 and the code data of the code table stored in
This is realized as an operation of sequentially comparing. In the next step S507, the calculated code
Whether the code type is an impossible code type (non-code)
Is determined. If the calculated code type is non-code
If the determination in step S507 is YES, step S508
And the value of the code variable indicating the root and code type is non-
Set to the value FE (h) (h indicates hexadecimal) indicating the code.
Is determined. After that, step S509 is executed. The calculated code type has a possible code.
If the determination in step S507 is NO, step S508 is
Step S509 is executed without being executed. Steps
In step S509, the code memory of the switch unit 102 is
The recording mode on / off switch 103 sets the code
It is determined whether the memory recording mode is turned on.
You. Code memory recording mode on / off switch 103
State detection and its switching are repeated with keyboard processing
Step S7 in a switch process to be executed which will be described later.
08 to S721 (FIG. 8). At present, the code memory recording mode is turned on.
If the determination in step S509 is YES,
According to the processing of steps S510 to S512 described below,
And the timing data of the code specified by the key press
Is determined in step S506 based on the designation.
The root and code type are stored in the code memory
It is written to the rear. That is, first, in step S510, the RAM
Increment count which is a variable secured on 203
The value of the IC is stored in the RAM 203 as the interval time.
In the code memory area as shown in FIG.
Is done. The address in this case is, in particular,
Is indicated by an address pointer (not shown).
After the write process, the value of the address pointer is incremented by one.
You. The address pointer has a code memory recording mode.
When the mode is turned on, a switch process of FIG.
In step S720, the top address of the code memory area is
Les is set. In addition, the increment counter I
The value of C is the next step when the key is pressed for the previous chord designation.
After being cleared in step S511, the
Step S1104 of interrupt processing in FIG. 11 → S
It has been incremented by the processing of 1105. Obedience
Thus, the value of the increment counter IC,
The bar time is changed from the previous code specification to the current code specification.
This indicates the elapsed time until the hour. Next, in step S511, the above-described ink
The value of the increment counter IC is cleared. This clear
The time point is the starting point of the elapsed time until the next code specification.
You. Also, the variable M secured in the RAM 203
The contents of the AX flag are also cleared. This MAX flag
This will be described later. Subsequently, in step S512, the above-described process is performed.
Code root and code type determined in step S506
Shown in FIG. 3 in the code memory area of the RAM 203.
Is written as 1-byte data. this
In this case, the address is R
The address pointer (not shown) in the AM 203 is used.
After the write processing, the address pointer
The value is incremented by one. On the other hand, the code memory recording mode is currently off.
Has not been performed and the determination in step S509 is NO.
In step S513, and in step S506 described above.
The determined route and chord type are used in normal automatic accompaniment processing.
To be used, a RAM 203 (not shown)
Stored in the code register. After the processing in step S512 or S513
Means that the processing after the processing in step S501 is executed again.
You. Repetition of the processing of steps S501 to S513 described above
In step S3, no key press or key release has occurred, and
If the determination of 502 is NO, step S514
Then, as in the case of step S509, the current switch is
Code memory recording mode on / off switch
Switch 103 turns on the code memory recording mode.
Is determined. At present, the code memory recording mode is turned on.
If the determination in step S514 is NO,
The process proceeds to the switch process of FIG. 7 described below. Currently, code memory
The recording mode is on, and the determination in step S514 is
In the case of YES, the following steps S515 to S515 will be described.
In S518, the overflow of the increment counter IC is performed.
Processing for preventing a row is executed. That is, first, in step S515, the RAM
The MAX flag, which is a variable secured in 203, is turned on
Is determined (“1” or not).
You. This MAX flag is executed at regular intervals.
In step S1104 of the interrupt process of step 1
FF (h) where the value of the increment counter IC is the maximum value
(When the time unit td is this maximum value
Is set to be divisible), step S
It is turned on by the processing of 1106. If the MAX flag is not turned on and the step
If the determination in S515 is NO, the switch of FIG.
Processing. The MAX flag is on and
If the determination in step S515 is YES, step S51
6. In the code memory area of the RAM 203,
The value FF (h) is shown in FIG.
Is written. The address in this case is stored in the RAM 20
Instructed by an address pointer (not shown) in 3
After the write process, the value of the address pointer is incremented by +1.
Is done. Next, in step S517, the increment
The values of the counter IC and the MAX flag are cleared. So
Then, in step S518, the time
The code FF (h) indicating the time extension is
Write to the memory area as shown in FIG.
It is. The address in this case is the case in step S516
In the same manner as described above, the address
Instructed by the interface, after write processing, the address
The value of the pointer is incremented by one. Thereafter, the process proceeds to the switch processing of FIG. that's all
By the processing of steps S515 to S516,
During regular operation, the increment counter IC reaches the maximum value.
In the event of automatic accompaniment playback, show an extension
The following increment cow via code FF (h)
By adding the value of the printer IC to the above maximum value,
It is possible to appropriately control the timing of specifying the code. Next, the switch processing shown in FIGS. 7 and 8 will be described.
Will be explained. This processing is performed as described above with reference to FIGS.
9 and the accompaniment process of FIGS.
Returned and executed. In the following description, the AI mode
Code on / off and code memory recording mode on / off
The AI mode file (not shown) in the RAM 203 is
The lag and code memory recording mode flag is turned on.
Is determined by determining whether the
It is. First, in step S701 in FIG.
The matrix of section 102 is scanned and the next step
In step S702, one of the switches is
It is determined whether the switch has been operated. When the switch is operated and the determination in step S702 is made.
If the determination is NO, the process proceeds to the accompaniment process of FIG. 9 described below.
The switch is operated, and the switch is set to the AI mode on /
The off switch 105 and the current code memo
If the mode is not the re-recording mode, steps S702 and S70
3 is YES, and the determination in step S704 is NO.
In step S705, the AI mode is turned on / off.
Switching is performed. Specifically, the AI mode is currently off.
If it is off, the AI mode flag in the RAM 203
Is turned on, and if the AI mode is currently on, A
The I mode flag is turned off. When the AI mode on / off switch 105 is operated.
When in code memory recording mode when created
In FIG. 9, the AI mode is not switched on / off.
To the accompaniment process. When a switch is operated, the switch
Code memory recording even with mode on / off switch 105
If it is not the mode on / off switch 103,
If the determination in step S702 is YES, steps S703 and S
The determination at 706 is NO, and at step S707,
Other switch processing is performed, and thereafter, the accompaniment processing of FIG.
Proceed to. When the switch is operated, the switch is
Memory recording mode on / off switch 103,
And if it is not currently in the code memory recording mode,
If the determination in step S702 is YES, the process proceeds to step S703.
If the determination is NO, the determination in step S706 is YES,
If the determination in step S708 is NO, step S7 in FIG.
In steps 18 to S721, the code memory recording mode is turned on.
Is executed. That is, first, in step S718, the code
Corresponds to the memory recording mode on / off switch 103
The LED 104 (see FIG. 1) is turned on. Next,
In step S719, the increment used for the automatic accompaniment process is
Counter IC, decrement counter DC, MIN
The flag and the MAX flag are cleared. Subsequently, at step S720, the code memo
The recording start address of the rear area is particularly shown in FIG.
Set to an address pointer not shown. Address port
As described above, the value of the interface is a step in the keyboard processing.
Steps S510 and S512 ( FIG. ), S516, S518
( FIG. ) Is referred to at the time of each write processing. Then, in step S721, the code memo
The re-recording mode is turned on. Specifically, the RAM 203
The code memory recording mode flag (not shown)
Turned on. Thereafter, the process proceeds to the accompaniment process of FIG. On the other hand,
Switch is operated, and the switch is
Mode on / off switch 103.
Memory recording mode and not currently in AI mode
In this case, the determination in step S702 is YES,
The determination in S703 is NO, and the determination in steps S706 and S708 is NO.
The determination is YES, and the determination in step S709 is NO.
In steps S717 and S721 in FIG.
Processing for turning off the re-recording mode is executed. That is, first, in step S717, the code
Corresponds to the memory recording mode on / off switch 103
The LED 104 (see FIG. 1) is turned off. And
In step S721, the code memory recording mode is turned off.
You. More specifically, a code (not shown) in the RAM 203 is used.
The memory card recording mode flag is turned off. Thereafter, the process proceeds to the accompaniment process of FIG. switch
Is operated, and the switch is set to code memory recording mode
ON / OFF switch 103.
Recording mode, and currently in AI mode
Is YES in step S702, step S70
3 is NO, steps S706, S708, S70
9 is YES, and steps S710 to S710 in FIG.
In step S716, a code correction process for the AI mode is executed.
After that, in steps S717 and S721, the code
Processing for turning off the memory recording mode is executed. This
When the code memory recording mode is turned off, the AI mode
If the code is specified, the code
This is a feature related to the present invention. First, in step S710, the code memory
LED corresponding to recording mode on / off switch 103
104 (see FIG. 1) is turned on and off. Next,
In step S711, the value of the address pointer in the RAM 203
Is initialized to the recording start address in the code memory area.
After the start, the address pointer starts from the beginning of the recording start address.
Are sequentially incremented while the code memory area
Event (route and code type) recorded in
Are sequentially checked. Then, in step S712, the code memo
The root and code type values are non-
It is determined whether or not there is a value FE (h) indicating the mode. No
If the value FE (h) indicating the code is found,
In step S713, from the event indicating the non-code
Until the next code (hereinafter referred to as the next code)
The interval time is read, and in step S714,
The value of the interval time is shorter than the threshold value (α × td)
It is determined whether or not. td is the switch section by the player
102 based on the operation of a tempo switch (not shown).
Time unit of the increment counter IC etc.
(See FIG. 11), and α is a predetermined constant. Follow
The threshold value (α × td) is the code memory recording mode.
Variable in proportion to the tempo specified at the time of play. From an event indicating a non-code to the next code
Is shorter than the threshold (α × td)
If the determination in step S714 is YES, the player
Input is incorrect, and the performer
Can be estimated that the next code should have been entered
In step S715, the code memory of the RAM 203
Non-code code type FE (h) on area is next code
Is corrected to the root and code type of the next code.
The code type is modified to the code FF (h) indicating the extension of time.
You. On the other hand, from the event indicating non-code, the next
The interval time to the code is longer than the threshold (α × td)
If the determination in step S714 is NO, the player
Incorrect specification of non-code when code should not be specified
Since it can be estimated that it has been done, in step S716,
Non-code code in the code memory area of the RAM 203
The code type FE (h) indicates the code extension FF (h)
Will be corrected. After the processing in step S715 or S716
Returns to step S712, and stores the code
The value FE (h) indicating non-code is further seen on the memory area.
It is determined whether or not it has been used, and if it is determined that it has been found
In this case, the codes of steps S713 to S716 described above are used.
The correction process is repeated. In the code memory area of the RAM 203,
When the value FE (h) indicating the
If the determination in step S712 is NO, as described above,
In steps S717 and S721, the code memory recording mode
Is turned off, and then the accompaniment shown in FIG.
Proceed to processing. Next, the accompaniment processing of FIGS. 9 and 10 will be described.
I will tell. This process is automatically performed by the player using the switch unit 102.
When the accompaniment process is instructed, the keyboard process shown in FIGS.
7. It is executed sequentially and repeatedly together with the switch processing of FIG.
You. In the following description, the code memory playback mode is used.
The on / off of the memory is not particularly shown in the RAM 203.
Code memory playback mode flag is on or off
It is determined by determining whether or not it has been performed. First, in step S901 of FIG.
The value indicated by the rhythm counter RC which is a variable in 203 is
The rhythm selected by the player by setting the switch unit 102
At the preset sounding timing corresponding to
It is determined whether it is equal to the value. Rhythm counter RC
The value corresponds to the interrupt processing shown in FIG.
In step S1101, the switch by the player
Operation of the tempo switch (not shown) of the
Incremented by the time unit td determined based on
It is. The value of this rhythm counter RC is
When the value reaches the maximum value (time unit t
Suppose d is set to divide this maximum value.
11), and the determination in step S1102 in FIG.
The value is returned to 0 in step S1103. this
As a result, the value of the rhythm counter RC corresponds to the beat timing
And change cyclically. The value indicated by the rhythm counter RC is the sound timing.
Is not equal to the value in the
In the case of NO, in step S911 of FIG.
After the various miscellaneous processes are executed, the keyboard process shown in FIG.
Return to The value indicated by the rhythm counter RC is a sound timing.
Is equal to the value in the
In the case of S, in step S902, the code memo is
It is determined whether the mode is the replay mode. The value indicated by the rhythm counter RC is the sound timing.
At the timing when it becomes equal to the value in the
In the switch section 102, the code memory playback mode is designated.
If not specified, performer at that time
Of the code specified by
Automatic accompaniment processing is executed. That is, first, in step S904, the key
In step S513 of FIG.
The route and code type stored in the register are read out.
You. Next, in step S909 of FIG.
And the chord type and the current value of the rhythm counter RC.
And the chord data for automatic accompaniment to be pronounced is calculated.
The tone generation of the chord sound is controlled for the sound source 204.
You. Note that the value of the rhythm counter RC is, as described above,
It supports beat timing, which allows you to switch chords.
The round shape and the like are determined. Thereafter, in step S910, a rhythm sound or the like is generated.
Other accompaniment processing such as sound control of
Done. Then, in step S911, various types of performance
After the miscellaneous processing is performed, the processing returns to the above-described keyboard processing of FIG.
You. On the other hand, the value indicated by the rhythm counter RC sounds.
At the timing when it becomes equal to the value at the timing,
The player operates the switch 102 for the code memory playback mode.
Code, the code memory record described above
In the mode, the code memory area in the RAM
Is recorded by the performer and the AI mode is specified.
If the code memory recording mode is
Code in the code memory area where
Automatic accompaniment processing is performed based on the
Be executed. That is, first, in step S903, the RAM
Determines whether the MIN flag on 203 is on
Is done. Although not particularly shown, a code memory playback mode is not shown.
When the mode is specified, the MIN flag is turned off and
Code memory indicated by the address pointer
Reads the first interval time of the area (see Fig. 3)
And the value is a decreme
Set to the address counter DC and the value of the address pointer
Is incremented by one. Then, the decrement counter DC
The value corresponds to the interrupt processing shown in FIG.
In step S1107 → S1108, the performer
Tempo switch (not shown)
Time unit td determined based on switch operation.
Be incremented. And the above code memory area
Time corresponding to the interval time read from
And the value of the decrement counter DC reaches 00 (h)
Is reached (the value set in the decrement counter DC).
The Tarval time is divisible by the time unit td),
The determination in step S1107 is YES, and the
At 1109, the MIN flag is turned on. The MIN flag is turned on and step S903 is performed.
If the determination is YES, step S905 in FIG.
Point with the current address pointer of the code memory area.
Code data (route and code type) shown (see Fig. 3)
Is read, and the value of the address pointer is incremented by one.
You. Thereafter, in step S906, the MIN flag is cleared.
In step S907, the code memory area
The interval time indicated by the dress pointer
Is read and set in the decrement counter DC.
You. On the other hand, when the MIN flag is not
If the determination in step S903 is NO, the data has already been read
The used code data is used as is. continue,
The current code data is not the value FF (h) indicating the time extension.
If NO, the determination in step S908 is NO, and
In step S909, the route and code type of the code data
Is generated based on the current value of the rhythm counter RC.
Automatic accompaniment chord data is calculated.
Is controlled to generate a chord sound. The current code data has a value F indicating a time extension.
If it is F (h), the process proceeds to step S907.
The process is simply a time extension process
Then, the determination in step S908 becomes YES, and the chord sound
Is not controlled. Thereafter, in step S910, a rhythm sound or the like is output.
Other accompaniment processing such as sound control of
Done. Then, in step S911, various types of performance
After the miscellaneous processing is performed, the processing returns to the above-described keyboard processing of FIG.
You. Next, another embodiment of the present invention will be described.
You. In the embodiment described above, the non-chord is
When the key is pressed and the code memory recording mode ends, the code
Non-code data is found in the memory area, and
Subsequently, code data is found within a certain timing.
If the code data is
By being moved to the timing,
A key mistake has been corrected. On the other hand, another embodiment described below will be described.
Now, when a non-chord is pressed by the player,
Is ignored and recorded in the code memory area
At the end of the code memory recording mode.
Performer arbitrarily set the interval time on the area
If a code within the reference value is found, the subsequent code
Data up to the timing of the preceding code data
Moved and preceding code data is ignored
The key press mistake is corrected.
You. The configuration of this embodiment is the same as that of the above-described embodiment.
It is similar to FIGS. 1 and 2 in the example. FIG.
Processing corresponding to the initial processing in FIG.
It is a flowchart of the operation of the management. In FIG. 12, FIG.
The process with the same step number as in the case of
It has the same function as the case. FIG. 12 is a flowchart showing the operation of FIG.
The difference from the flowchart is that in step S1201,
A value is stored to determine the length of the interval time
In the reference register, which is a variable in the RAM 203,
This is the point at which the default value is set. Next, the keyboard processing in the above-described embodiment will be described.
The operation flowchart of FIG. 5 which is a part of FIG.
Is adopted as it is. Subsequently, FIG.
Operation flowchart of FIG. 6 which is a part of the keyboard processing in the embodiment.
6 is an operation flowchart corresponding to a chart. In FIG.
In this case, the processes with the same step numbers as in FIG.
Has the same function as in FIG. The operation flowchart shown in FIG. 13 corresponds to the operation shown in FIG.
The difference from the flowchart is that step S507 in FIG.
And the non-code executed as S508
The processing for recording in the memory area is not shown in FIG.
It is. As a result, in this embodiment, the player
If a non-code key is pressed, it is ignored and
No data is recorded in the memory area. next,
14 and 15 show FIGS. 7 and 8 in the embodiment described above.
Is an operation flowchart of a process corresponding to the switch process of FIG.
is there. 14 and 15 are the same as those in FIGS.
The processes with the same step numbers are the same as those in FIGS.
It has the same function. First, the operation flowchart of FIG.
7 is different from the operation flowchart of FIG.
Switch 2 is operated and the switch is set to the reference register value
If the switch is a +/- switch, the process proceeds to step S1401.
The determination is YES, and in step S1402, the switch
The reference register value is incremented according to the switch operation.
(+) Or decrement (-). this
Allows the performer to correct key press mistakes when specifying chords
The criteria for the length of the interval time
Can be set as desired. Next, the operation flowchart of FIG.
8 is different from the operation flowchart of FIG.
As a code correction operation, steps S712 to S7 in FIG.
Steps S1501 to S1504 instead of the 16 processing groups
Is executed. That is, first, in step S1501, the code
Event (route and code)
The current code data (hereafter, the current code
From the next code data (hereafter, next)
Interval time until code event)
Is issued, and in the next step S1502, the interval
It is determined whether the time is shorter than the reference register value. Interval time is shorter than reference register value
If the determination in step S1502 is NO, the current
No code modification is made to the event. Inter
Since the val time is shorter than the reference register value, step S150
If the determination in step 2 is YES, in step S1503, the RAM
The current code event on the code memory area 203
The code and code type are corrected to the root and code type of the next code.
The code of the next code and the code type indicate a time extension.
FF (h). Then, the data recorded on the code memory area is recorded.
Processing has not been completed for all current code events
If not, the determination in step S1504 is NO and the
Returning to the processing of step S1501, the
Processing ends for all recorded current code events
Then, the determination in step S1504 becomes YES.
Steps S717 and S721 similar to those in FIG.
The process to turn off the code memory recording mode is executed.
Is performed. Thereafter, the accompaniment processing of FIG.
The same processing as described above is also performed in this embodiment. Also,
11 executed at regular intervals in the embodiment shown in FIG.
Interrupt processing is also employed as is in this embodiment. According to the first aspect of the present invention, recording means
Non-code data is detected on the
From the data to the next specified code data.
If the mining difference is less than the predetermined value, the non-code
The data is replaced with the code data specified next.
To correct the code specification
Becomes possible. As described above, the performer originally intended
Chord accompaniment can be reproduced.

【図面の簡単な説明】 【図1】本発明の実施例の外観図である。 【図2】本発明の実施例のブロック図である。 【図3】コードメモリエリアのデータ構成図である。 【図4】イニシャル処理の動作フローチャートである。 【図5】鍵盤処理の動作フローチャート(その1)であ
る。 【図6】鍵盤処理の動作フローチャート(その2)であ
る。 【図7】スイッチ処理の動作フローチャート(その1)
である。 【図8】スイッチ処理の動作フローチャート(その2)
である。 【図9】伴奏処理の動作フローチャート(その1)であ
る。 【図10】伴奏処理の動作フローチャート(その2)で
ある。 【図11】インタラプト処理の動作フローチャートであ
る。 【図12】他の実施例におけるイニシャル処理の動作フ
ローチャートである。 【図13】他の実施例における鍵盤処理の動作フローチ
ャート(その2)である。 【図14】他の実施例におけるスイッチ処理の動作フロ
ーチャート(その1)である。 【図15】他の実施例におけるスイッチ処理の動作フロ
ーチャート(その2)である。 【符号の説明】 101 鍵盤部 102 スイッチ部 103 コードメモリ記録モードオン/オフスイッ
チ 104、106 LED 105 AIモードオン/オフスイッチ 201 CPU 202 ROM 203 RAM 204 音源 205 D/A変換器及びアンプ 206 スピーカ 207 バス
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is an external view of an embodiment of the present invention. FIG. 2 is a block diagram of an embodiment of the present invention. FIG. 3 is a data configuration diagram of a code memory area. FIG. 4 is an operation flowchart of an initial process. FIG. 5 is an operation flowchart (part 1) of keyboard processing. FIG. 6 is an operation flowchart (part 2) of keyboard processing. FIG. 7 is an operation flowchart of a switch process (part 1);
It is. FIG. 8 is an operation flowchart of a switch process (part 2);
It is. FIG. 9 is an operation flowchart (1) of an accompaniment process. FIG. 10 is an operation flowchart (part 2) of the accompaniment process. FIG. 11 is an operation flowchart of an interrupt process. FIG. 12 is an operation flowchart of an initial process in another embodiment. FIG. 13 is an operation flowchart (part 2) of keyboard processing in another embodiment. FIG. 14 is an operation flowchart (part 1) of a switch process in another embodiment. FIG. 15 is an operation flowchart (part 2) of a switch process in another embodiment. DESCRIPTION OF SYMBOLS 101 Keyboard section 102 Switch section 103 Code memory recording mode on / off switch 104, 106 LED 105 AI mode on / off switch 201 CPU 202 ROM 203 RAM 204 Sound source 205 D / A converter and amplifier 206 Speaker 207 bus

Claims (1)

(57)【特許請求の範囲】 【請求項1】 コードの指定動作を該コードの属性を示
すコードデータと該コードの指定タイミングを示すタイ
ミングデータとして記録手段に記録し、該記録手段から
前記コードデータと前記タイミングデータとを順次読み
出し、前記読み出したコードデータに対応するコード音
に基づく自動伴奏を前記読み出したタイミングデータに
対応するタイミングで行う自動伴奏装置において、 前記記録手段に対する記録動作時に、有り得ないコード
が指定された場合に、有り得ないコードを示すノンコー
ドデータと該ノンコードデータの指定タイミングを示す
タイミングデータを記録するノンコードデータ記録手段
と、 前記記録手段に対する記録動作後に、前記記録手段から
前記ノンコードデータを検出するノンコードデータ検出
手段と、 前記記録手段に対する記録動作後に、前記記録手段上
で、前記ノンコードデータ検出手段により検出された前
記ノンコードデータの指定タイミングから該ノンコード
データの次に指定されている前記コードデータの指定タ
イミングまでのタイミング差を算出するタイミング差算
出手段と、 前記記録手段に対する記録動作後に、前記タイミング差
算出手段により算出された前記タイミング差が所定値よ
りも小さかった場合に、前記記録手段上で、前記ノンコ
ードデータ検出手段により検出された前記ノンコードデ
ータの指定タイミングにおいて、該ノンコードデータの
代りに該ノンコードデータの次に指定されている前記コ
ードデータが指定されるように修正すると共に、該ノン
コードデータの次に指定されている前記コードデータの
指定タイミングにおいて、該コードデータが指定されな
いように修正し、前記タイミング差算出手段により算出
された前記タイミング差が前記所定値より小さくなかっ
た場合に、前記記録手段上で、前記ノンコードデータ検
出手段により検出された前記ノンコードデータの指定タ
イミングにおいて、該ノンコードデータが指定されない
ように修正するコード修正手段と、 を有することを特徴とする自動伴奏装置
(57) [Claims 1] A code designating operation is recorded in a recording means as code data indicating an attribute of the code and timing data indicating a timing at which the code is designated, and the code is transmitted from the recording means. In an automatic accompaniment apparatus for sequentially reading data and the timing data, and performing an automatic accompaniment based on a chord sound corresponding to the read chord data at a timing corresponding to the read timing data, it is possible at the time of a recording operation for the recording means to be performed. Non-code data recording means for recording non-code data indicating an improbable code and timing data indicating the designated timing of the non-code data when a non-existent code is designated; and Non-code data for detecting the non-code data from Detecting means, after the recording operation on the recording means, the code data specified next to the non-coded data from the designated timing of the non-coded data detected by the non-coded data detecting means on the recording means A timing difference calculating means for calculating a timing difference up to a designated timing, and, after the recording operation on the recording means, when the timing difference calculated by the timing difference calculating means is smaller than a predetermined value, Then, at the specified timing of the non-coded data detected by the non-coded data detecting means, the code data specified next to the non-coded data is corrected instead of the non-coded data. And the code data specified next to the non-code data. In specifying the timing of the data, corrected to the code data is not specified, if the timing difference calculated by the timing difference calculating means is not less than the predetermined value, on the recording means, the non-code data An automatic accompaniment apparatus, comprising: a chord correction unit that corrects the non-code data so that the non-code data is not specified at the specified timing of the non-code data detected by the detection unit .
JP16071693A 1993-06-30 1993-06-30 Automatic accompaniment device Expired - Fee Related JP3521443B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16071693A JP3521443B2 (en) 1993-06-30 1993-06-30 Automatic accompaniment device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16071693A JP3521443B2 (en) 1993-06-30 1993-06-30 Automatic accompaniment device

Publications (2)

Publication Number Publication Date
JPH0720860A JPH0720860A (en) 1995-01-24
JP3521443B2 true JP3521443B2 (en) 2004-04-19

Family

ID=15720931

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16071693A Expired - Fee Related JP3521443B2 (en) 1993-06-30 1993-06-30 Automatic accompaniment device

Country Status (1)

Country Link
JP (1) JP3521443B2 (en)

Also Published As

Publication number Publication date
JPH0720860A (en) 1995-01-24

Similar Documents

Publication Publication Date Title
EP0933917A1 (en) Cellular phone with voice-programmed ringing melody
JPH0789279B2 (en) Music signal generator
JP3521443B2 (en) Automatic accompaniment device
JP4175208B2 (en) Music score display apparatus and program
JP2684967B2 (en) Electronic musical instrument
JPH0689547A (en) Device for reproducing disk having random music selection function
US5639980A (en) Performance data editing apparatus
JPH036515B2 (en)
JP4236570B2 (en) Waveform playback device and waveform playback program
JP2536525B2 (en) Electronic musical instrument code sequencer
JP2894306B2 (en) Performance recording and playback device
JP2511298Y2 (en) Voice output learning machine
JP3006977B2 (en) Performance control information setting device for electronic musical instruments
JP2585519B2 (en) Musical sound wave data generator
JP2001228897A (en) Speech input device and control method for the same, and memory medium stored with program code thereon
JP3827820B2 (en) Recording / playback device
JP2606501B2 (en) Electronic musical instrument with automatic performance function
JP3404818B2 (en) Automatic performance device
JP3178176B2 (en) Automatic accompaniment device
JP3112743B2 (en) Sound source device
JP3307598B2 (en) Performance recording and playback device
JPH05165464A (en) Noting device
JP5509961B2 (en) Phrase data extraction device and program
JPS5846036B2 (en) electronic musical instruments
JPH1031490A (en) Sound material processing device for electronic musical instrument

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040202

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

Free format text: PAYMENT UNTIL: 20090220

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090220

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100220

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110220

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110220

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120220

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120220

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130220

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees