JP2011215444A - レジストレーション装置およびプログラム - Google Patents

レジストレーション装置およびプログラム Download PDF

Info

Publication number
JP2011215444A
JP2011215444A JP2010084814A JP2010084814A JP2011215444A JP 2011215444 A JP2011215444 A JP 2011215444A JP 2010084814 A JP2010084814 A JP 2010084814A JP 2010084814 A JP2010084814 A JP 2010084814A JP 2011215444 A JP2011215444 A JP 2011215444A
Authority
JP
Japan
Prior art keywords
area
time
update date
register
accompaniment
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.)
Pending
Application number
JP2010084814A
Other languages
English (en)
Inventor
Yoshito Yamaguchi
善登 山口
Junichiro Kawahara
潤一郎 川原
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 JP2010084814A priority Critical patent/JP2011215444A/ja
Publication of JP2011215444A publication Critical patent/JP2011215444A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

【課題】よりユーザの意図した設定状態に変更するレジストレーション装置を実現する。
【解決手段】セーブスイッチのオン操作に応じて、カレントエリアCEの音色エリアに記憶されるレジスタTONEとその更新日時、伴奏エリアに記憶されるレジスタBANSOとその更新日時、テンポエリアに記憶されるレジスタTEMPOとその更新日時を、当該オン操作されたセーブスイッチの番号SAVEに対応するエリアRE(SAVE)に登録する。2つのコールスイッチが同時にオン操作されると、その2つのコールスイッチの番号CALL1,CALL2にそれぞれ対応するエリアRE(CALL1)とエリアRE(CALL2)とに格納される各パラメータ(音色データ番号、伴奏データ番号およびテンポ値)毎に、更新日時の新旧比較を行い、更新日時が新しい方のパラメータと当該更新日時とをカレントエリアCEにストアする。
【選択図】図3

Description

本発明は、電子楽器に用いて好適なレジストレーション装置およびプログラムに関する。
従来より、発生させる楽音の音色や音量あるいは付加するエフェクト(効果)種類等の、楽音発生形態を指定する各種パラメータの設定内容を一まとめにしたレジストレーション情報をメモリに登録しておき、メモリ登録された複数のレジストレーション情報の内から所望の楽音発生形態を指定するレジストレーション情報を選択し、選択したレジストレーション情報に基づき楽音形成する、所謂、レジストレーション機能を備えた電子楽器が知られている。
こうした電子楽器には、スイッチ操作に応じて、メモリに登録された複数のレジストレーション情報の内から所望のレジストレーション情報を呼出して楽器各部の動作態様を設定するレジストレーション装置が設けられており、当該装置によって例えば演奏中にワンタッチで楽音発生形態を切り替える等して操作性の向上を図るようになっている。
レジストレーション情報の呼び出しに応じて、全てのパラメータの設定を一意的に更新する態様であると、ユーザが意図しない設定に変更されてしまうという弊害が生じる為、一部パラメータを現設定のままに維持し、それ以外のパラメータについてのみ更新させるレジストレーション装置や、例えば特許文献1に開示されるように、最後に更新されたパラメータをレジストレーション呼出しの対象から外すようにしたレジストレーション装置も知られている。
特開2002−23756号公報
ところで、上記特許文献1に開示の技術のように、最後に更新されたパラメータをレジストレーション呼出しの対象から外すようにしても、その「最後に設定したパラメータ」がユーザにとって必ずしも現状維持すべき値になるとは限らない。つまり、最後に設定したパラメータも含めて全面的変更を要することも多々あり、必ずしもユーザの意図を反映したものではない場合が多い。
しかも、上記特許文献1に開示の技術では、最後に更新されたパラメータをレジストレーション呼出しの対象から外すだけなので、例えば一部のパラメータについては現在の設定とし、残りのパラメータについては別に記憶された過去の設定にしたり、一部のパラメータについては別に記憶された過去の設定とし、残りのパラメータについては現在の設定にしたりする等、よりユーザの意図した設定状態に変更することが出来ない、という問題がある。
本発明は、このような事情に鑑みてなされたもので、よりユーザの意図した設定状態に変更することができるレジストレーション装置およびプログラムを提供することを目的としている。
上記目的を達成するため、請求項1に記載の発明では、更新日時が付加された各種パラメータを記憶する第1の記憶手段と、複数の記憶エリアを備える第2の記憶手段と、前記第2の記憶手段が備える複数の記憶エリアの内、ユーザ操作に応じて登録指示された記憶エリアに、前記第1の記憶手段の更新日時が付加された各種パラメータを登録する登録手段と、ユーザ操作に応じて、前記第2の記憶手段の複数の記憶エリアから各種パラメータを呼び出す呼出指示が発生した場合に、呼出対象の各記憶エリアにそれぞれ記憶される各種パラメータ毎に更新日時の新旧比較を行い、更新日時の新しいパラメータと当該更新日時とを前記第1の記憶手段へ転送する呼出手段とを具備することを特徴とする。
請求項2に記載の発明では、更新日時が付加された各種パラメータを記憶する第1の記憶手段と、複数の記憶エリアを備える第2の記憶手段と、前記第2の記憶手段が備える複数の記憶エリアの内、ユーザ操作に応じて登録指示された記憶エリアに、前記第1の記憶手段の更新日時が付加された各種パラメータを登録する登録手段と、ユーザ操作に応じて、前記第2の記憶手段の複数の記憶エリアから各種パラメータを呼び出す呼出指示が発生した場合に、呼出対象の各記憶エリアにそれぞれ記憶される各種パラメータ毎に更新日時の新旧比較を行い、更新日時の古いパラメータと当該更新日時とを前記第1の記憶手段へ転送する呼出手段とを具備することを特徴とする。
上記請求項1又は2の何れかに従属する請求項3に記載の発明では、前記第1の記憶手段に記憶される各種パラメータの中で変更の対象となるパラメータを編集項目として指定する編集項目指定手段と、前記編集項目指定手段によって編集項目として指定されたパラメータを変更すると共に、その変更したパラメータに付加する更新日時を、変更を行った日時に変更する日時変更手段とを更に備えることを特徴とする。
請求項4に記載の発明では、コンピュータに、第1のメモリに記憶され、更新日時が付加された各種パラメータを、第2のメモリが備える複数の記憶エリアの中からユーザ操作に応じて登録指示された記憶エリアに登録する登録ステップと、ユーザ操作に応じて、前記第2のメモリの複数の記憶エリアから各種パラメータを呼び出す呼出指示が発生した場合に、呼出対象の各記憶エリアにそれぞれ記憶される各種パラメータ毎に更新日時の新旧比較を行い、更新日時の新しいパラメータと当該更新日時とを前記第1のメモリへ転送する呼出ステップとを実行させることを特徴とする。
請求項5に記載の発明では、コンピュータに、第1のメモリに記憶され、更新日時が付加された各種パラメータを、第2のメモリが備える複数の記憶エリアの中からユーザ操作に応じて登録指示された記憶エリアに登録する登録ステップと、ユーザ操作に応じて、前記第2のメモリの複数の記憶エリアから各種パラメータを呼び出す呼出指示が発生した場合に、呼出対象の各記憶エリアにそれぞれ記憶される各種パラメータ毎に更新日時の新旧比較を行い、更新日時の古いパラメータと当該更新日時とを前記第1のメモリへ転送する呼出ステップとを実行させることを特徴とする。
本発明では、よりユーザの意図した設定状態に変更することができる。
第1実施形態による電子楽器100の全体構成を示すブロック図である。 ROM13の記憶内容を示すメモリマップである。 RAM14の記憶内容を示すメモリマップである。 メインルーチンの動作を示すフローチャートである。 タイマインタラプト処理の動作を示すフローチャートである。 イニシャライズ処理の動作を示すフローチャートである。 スイッチ処理の動作を示すフローチャートである。 編集スイッチ処理の動作を示すフローチャートである。 「+」、「−」スイッチ処理の動作を示すフローチャートである。 スタート/ストップスイッチ処理の動作を示すフローチャートである。 セーブスイッチ処理の動作を示すフローチャートである。 コールスイッチ処理の動作を示すフローチャートである。 図12に続くコールスイッチ処理の動作を示すフローチャートである。 鍵盤処理の動作を示すフローチャートである。 伴奏処理の動作を示すフローチャートである。 第2実施形態によるコールスイッチ処理の動作を示すフローチャートである。 図16に続く第2実施形態のコールスイッチ処理の動作を示すフローチャートである。
以下、図面を参照して本発明の実施形態について説明する。
[第1実施形態]
A.構成
図1は、本発明によるレジストレーション装置を備えた第1実施形態である電子楽器100の全体構成を示すブロック図である。図1において、鍵盤10は、演奏操作(押離鍵操作)に応じたキーオン/キーオフ信号、鍵番号およびベロシティ等の演奏情報を発生する。操作部11は、楽器パネルに配設される各種スイッチから構成され、各スイッチ操作に応じたスイッチイベントを発生する。操作部11が発生するスイッチイベントは後述するCPU12に取り込まれる。
操作部11には、図示されていないが、編集すべきパラメータ(音色データ番号、伴奏データ番号およびテンポ値の何れか)を指定する編集スイッチ、編集スイッチにより編集項目として指定されたパラメータの値をインクリメント又はデクリメントする「+」、「−」スイッチ、自動伴奏の開始/停止を指示するスタート/ストップスイッチ、レジストレーション情報の保存を指示するセーブスイッチおよび保存されたレジストレーション情報の呼出しを指示するコールスイッチが設けられており、これらスイッチ操作に対応した動作については追って述べる。
なお、ここで言う編集スイッチとは、音色データ番号を編集項目に指定する音色スイッチ、伴奏データ番号を編集項目に指定する伴奏スイッチおよびテンポ値を編集項目に指定するテンポスイッチを含む総称である。また、ここで言う編集項目とは、設定変更の対象となるパラメータを意味する。
さらに、セーブスイッチおよびコールスイッチは、後述するRAM14のレジストレーションエリアRE(図3参照)に設けられたエリアRE(1)〜(4)にそれぞれ対応付けられた4つのスイッチ(セーブスイッチ1〜4、コールスイッチ1〜4)から構成される。加えて、コールスイッチ1〜4は、単独でオン操作される場合と、2つを同時にオン操作される場合とがあり、これらが意図するところについては追って述べる。
CPU12は、ROM13に記憶される各種プログラムを実行し、操作部11が発生するスイッチイベントに応じて楽器各部を制御したり、鍵盤10が発生する演奏情報に応じたノートオン/ノートオフイベントを生成して音源16を制御する。本発明の要旨に係わるCPU12の特徴的な処理動作については後述する。
ROM13は、図2に図示するように、プログラムエリアPE、音色データエリアTEおよび伴奏データエリアAEを備える。ROM13のプログラムエリアPEには、CPU12にロードされる各種プログラムデータが記憶される。ここで言う各種プログラムとは、後述するメインルーチン、タイマインタラプト処理、イニシャライズ処理、スイッチ処理、鍵盤処理および伴奏処理を含む。なお、スイッチ処理は、編集スイッチ処理、「+」,「−」スイッチ処理、スタート/ストップスイッチ処理、セーブスイッチ処理およびコールスイッチ処理を含む。
ROM13の音色データエリアTEには、各種音色の波形データに音色データ番号を対応付けた音色データ(1)〜(n)が記憶される。ROM13の伴奏データエリアAEには、自動伴奏に用いる各種伴奏パターンを形成する伴奏データ(1)〜(n)が記憶される。一つの伴奏データは、所定小節分の伴奏曲を構成する各音を表す。一つの音は、曲開始時点からの経過時間で現イベントのタイミングを表すタイムTと、発音音高(又は消音音高)を表すノートナンバを含むイベントEVとが対になって曲進行に対応した時系列のアドレス順に記憶される、いわゆる絶対時間方式と呼ばれるデータ形式で表現され、その終端には曲(伴奏パターン)の終わりを表すデータENDが設けられる。
RAM14は、図3に図示するように、カレントエリアCE、レジストレーションエリアREおよびワークエリアWEを備える。RAM14のカレントエリアCEには、現在の楽音発生形態を表すパラメータを一まとめにしたレジストレーション情報が一時記憶される。このカレントエリアCEは、音色エリア、伴奏エリアおよびテンポエリアを備える。
音色エリアには、発生楽音の音色を指定する音色データ番号がストアされるレジスタTONEと、当該レジスタTONEに音色データ番号がストアされた時点を表す更新日時とが記憶される。伴奏エリアには、自動伴奏に用いられる伴奏パターンを指定する伴奏データ番号がストアされるレジスタBANSOと、当該レジスタBANSOに伴奏データ番号がストアされた時点を表す更新日時とが記憶される。テンポエリアには、自動伴奏の再生テンポを表すテンポ値がストアされるレジスタTEMPOと、当該レジスタTEMPOにテンポ値がストアされた時点を表す更新日時とが記憶される。
RAM14のレジストレーションエリアREには、エリアRE(1)〜(4)が設けられており、これらエリアRE(1)〜(4)にそれぞれ対応付けられた4つのセーブスイッチ1〜4の内、オン操作されたセーブスイッチの番号に対応したエリアREに、上記カレントエリアCEに記憶されるレジストレーション情報が登録される。例えば、セーブスイッチ1がオン操作された場合には、レジスタTONE(音色データ番号)とその更新日時、レジスタBANSO(伴奏データ番号)とその更新日時、レジスタTEMPO(テンポ値)と更新日時が、エリアRE(1)に登録される。
RAM14のワークエリアWEには、各種レジスタ・フラグデータ(T、TONEF、BANSOF、TEMPOF、AD、STF、CODE、ROOT、SAVE、CALL1およびCALL2)が一時記憶される。これら各種レジスタ・フラグデータが意図するところについては、後述の動作説明において述べる。
表示部15は、例えばカラー液晶パネル等から構成され、CPU12から供給される表示制御信号に応じて楽器各部の設定状態や動作状態などを画面表示する。音源16は、周知の波形メモリ読み出し方式にて構成され、ROM13の音色データエリアTEに記憶される各種の音色データの内、カレントエリアCEのレジストレーション情報に基づきCPU12が指定する音色データ(指定音色の波形データ)を用い、演奏情報に応じてCPU12が生成するノートオン/ノートオフイベントに従って楽音形成する。また、音源16はCPU12から自動伴奏開始の指示を受けた場合には、カレントエリアCEのレジストレーション情報に基づき指定される伴奏データを指定テンポで再生する自動伴奏を行う。サウンドシステム17は、音源16から出力される楽音波形をアナログ信号形式に変換した後、不要ノイズ除去やレベル増幅を施してからスピーカから発音させる。時計カレンダ部18は、RTC(リアルタイムクロック)に基づき現在日時を発生する。
B.動作
次に、図4〜図15を参照して、上記構成による第1実施形態の動作について説明する。以下では、CPU12が実行するメインルーチン、タイマインタラプト処理、イニシャライズ処理、スイッチ処理(編集スイッチ処理、「+」,「−」スイッチ処理、スタート/ストップスイッチ処理、セーブスイッチ処理およびコールスイッチ処理)、鍵盤処理および伴奏処理の各動作について述べる。
(1)メインルーチンの動作
電源が投入されると、CPU12は図4に図示するメインルーチンを実行し、ステップSA1に進み、イニシャライズ処理を実行する。イニシャライズ処理では、後述するように、RAM14のワークエリアWEにおける各種レジスタ・フラグデータをゼロリセットすると共に、RAM14のカレントエリアCEに、デフォルトの設定状態(楽音発生形態)を表すパラメータ(音色データ番号、伴奏データ番号およびテンポ値)を、レジストレーション情報として音色エリアのレジスタTONE、伴奏エリアのレジスタBANSOおよびテンポエリアのレジスタTEMPOにそれぞれセットする。
次いで、ステップSA2では、各種スイッチ(編集スイッチ処理、「+」,「−」スイッチ処理、スタート/ストップスイッチ処理、セーブスイッチ処理およびコールスイッチ処理)の操作に応じたスイッチ処理を実行する。各種スイッチ処理の詳細な動作については追って述べる。
続いて、ステップSA3では、鍵盤処理を実行する。鍵盤処理では、後述するように、伴奏鍵域で押鍵された場合には、押鍵された鍵の音高がコード(和音)として成立するならば、そのコード種および根音をそれぞれレジスタCODE、レジスタROOTにストアし、一方、メロディ鍵域で押鍵された場合には、押鍵された鍵の鍵番号およびベロシティを含むノートオンイベントとレジストレーション情報中のレジスタTONE(音色データ番号)とを音源16に送付して発音指示し、離鍵された場合には、離鍵された鍵の鍵番号を含むノートオフイベントとレジストレーション情報中のレジスタTONE(音色データ番号)とを音源16に送付して消音指示する。
そして、ステップSA4では、伴奏処理を実行する。伴奏処理では、後述するように、スタートフラグSTFが「1」となって自動伴奏が開始されていると、イベントタイミングに達したかどうかを判断し、イベントタイミングに達していると、読み出しアドレスADを歩進させ、歩進された読み出しアドレスADに応じて伴奏パターンから読み出されるデータ(AD)が「イベントEV」、「タイムT」および「END」の何れであるかを判別する。
読み出されたデータ(AD)が「イベントEV」(コード/ベースのイベント)であると、伴奏鍵域でのコード演奏で得られたコード種CODEおよび根音ROOTに応じて音高変換されたコード/ベースのイベントを音源16に供給してコード音(又はベース音)の発音(又は消音)させる。伴奏パターンから読み出されるデータ(AD)が「タイムT」であると、その読み出されたタイムTを次イベントタイミングとしてレジスタTにストアする。伴奏パターンから読み出されるデータ(AD)が伴奏パターンの終わりを表す「END」ならば、読み出しアドレスADを伴奏パターンの先頭アドレスに戻して伴奏パターンを繰り返し再生させる。
次いで、ステップSA5では、例えば楽器動作の状態を表示部15に画面表示させる等の、その他の処理を実行する。この後、上述のステップSA2に処理を戻し、以後、電源がオフされる迄の間、上述のステップSA2〜SA5の各処理を順次繰り返し実行する。
(2)タイマインタラプト処理の動作
次に、図5を参照してタイマインタラプト処理の動作を説明する。タイマインタラプト処理は、カレントエリアCEに格納されるレジストレーション情報の内、音色エリアのレジスタTEMPOに格納されるテンポ値(自動伴奏の再生テンポ)に基づき設定されるインタラプト周期毎に割り込み実行される。割り込み実行タイミングになると、図5に図示するステップSB1に進み、レジスタTの値をデクリメントして本処理を終える。なお、レジスタTには、後述するように、自動伴奏のイベントタイミングを表すタイムTがストアされるようになっている。
(3)イニシャライズ処理の動作
次に、図6を参照してイニシャライズ処理の動作を説明する。上述したメインルーチンのステップSA1(図4参照)を介して本処理が実行されると、CPU12は図6に図示するステップSC1に進み、RAM14のワークエリアWE(図3参照)に設けられる各種レジスタ・フラグデータをゼロリセットし、続くステップSC2では、RAM14のカレントエリアCEに、デフォルトの楽音発生形態を表すレジストレーション情報をセットする。すなわち、音色エリアのレジスタTONE、伴奏エリアのレジスタBANSOおよびテンポエリアのレジスタTEMPOにそれぞれデフォルト値の音色データ番号、伴奏データ番号およびテンポ値をストアして本処理を終える。
(4)スイッチ処理の動作
次に、図7を参照してスイッチ処理の動作を説明する。上述したメインルーチンのステップSA2(図4参照)を介して本処理が実行されると、CPU12は図7に図示するステップSD1に進み、編集スイッチ(音色スイッチ、伴奏スイッチおよびテンポスイッチ)の内、オン状態のスイッチ種に対応するパラメータ(音色データ番号、伴奏データ番号およびテンポ値)を編集項目に指定する編集スイッチ処理を実行する。
続いて、ステップSD2では、上記ステップSD1の編集スイッチ処理によって編集項目として指定されたパラメータ(音色データ番号、伴奏データ番号およびテンポ値の何れか)を、「+」スイッチのオン操作に応じてインクリメントしたり、「−」スイッチのオン操作に応じてデクリメントしたりすると共に、インクリメント(又はデクリメント)された日時を、対応するパラメータの更新日時として記録する「+」、「−」スイッチ処理を実行する。
次いで、ステップSD3では、スタート/ストップスイッチ処理を実行する。スタート/ストップスイッチ処理では、後述するように、スタート/ストップスイッチのオン操作に応じて反転されたスタートフラグSTFが「1」となって自動伴奏の開始を表す場合には、レジスタBANSOに格納される伴奏データ番号で指定される伴奏パターンの先頭アドレスを読み出しアドレスADとして当該伴奏パターンから最初のデータであるタイムTを読み出してレジスタTにストアした後、レジスタTEMPOに格納されるテンポ値に基づきインタラプト周期を設定してタイマインタラプト禁止を解除し、一方、オン操作に応じて反転されたスタートフラグSTFが「0」となって自動伴奏の停止を表す場合には、音源16に対して発音中の全ての伴奏音の消音を指示してタイマインタラプト禁止に設定する。
続いて、ステップSD4では、セーブスイッチのオン操作に応じて、RAM14のカレントエリアCEの音色エリアに記憶されるレジスタTONE(音色データ番号)/更新日時、伴奏エリアに記憶されるレジスタBANSO(伴奏データ番号)/更新日時、テンポエリアに記憶されるレジスタTEMPO(テンポ値)/更新日時をそれぞれ読み出し、オン操作されたセーブスイッチの番号SAVEに対応するエリアRE(SAVE)に登録するセーブスイッチ処理を実行する。
そして、ステップSD5では、コールスイッチ処理を実行する。コールスイッチ処理では、後述するように、コールスイッチ1〜4の何れかが単独でオン操作されると、オン操作されたコールスイッチの番号CALLに対応するエリアRE(CALL)の内容をカレントエリアCEにストアするレジストレーション呼び出しを行い、一方、コールスイッチ1〜4の何れか2つが同時にオン操作されると、オン操作された2つのコールスイッチの番号CALL1,CALL2にそれぞれ対応するエリアRE(CALL1)とエリアRE(CALL2)とにそれぞれ格納される各パラメータ(音色データ番号、伴奏データ番号およびテンポ値)毎に、更新日時の新旧比較を行い、更新日時が新しい方のパラメータ(音色データ番号、伴奏データ番号およびテンポ値)と当該更新日時とをカレントエリアCEにストアするレジストレーション呼び出しを行う。この後、ステップSD6に進み、例えば発生楽音に付加するエフェクト種を選択する等の、その他のスイッチ処理を実行して本処理を終える。
(5)編集スイッチ処理の動作
次に、図8を参照して編集スイッチ処理の動作を説明する。上述したスイッチ処理のステップSD1(図7参照)を介して本処理が実行されると、CPU12は図8に図示するステップSE1に進む。ステップSE1〜SE3では、編集スイッチを構成する音色スイッチ、伴奏スイッチおよびテンポスイッチの中でオン状態のスイッチ種を判別する。以下、音色スイッチがオン状態の場合、伴奏スイッチがオン状態の場合およびテンポスイッチがオン状態の場合に分けて動作説明を進める。
<音色スイッチがオン状態の場合>
音色スイッチがオン状態であると、ステップSE1の判断結果が「YES」となり、ステップSE5に進み、音色フラグTONEFに「1」をセットする一方、伴奏フラグBANSOFおよびテンポフラグTEMPOFをそれぞれゼロリセットして本処理を終える。なお、音色フラグTONEF、伴奏フラグBANSOFおよびテンポフラグTEMPOFは、それぞれ編集項目に指定されたパラメータであるか否かを表すフラグであり、「1」の場合に編集項目であることを表し、「0」の場合に編集項目ではないことを表す。したがって、音色スイッチがオン状態の場合には、レジストレーション情報中の音色データ番号が編集項目として指定される。
<伴奏スイッチがオン状態の場合>
伴奏スイッチがオン状態であると、ステップSE2の判断結果が「YES」となり、ステップSE6に進み、伴奏フラグBANSOFに「1」をセットする一方、音色フラグTONEFおよびテンポフラグTEMPOFをそれぞれゼロリセットして本処理を終える。したがって、伴奏スイッチがオン状態の場合には、レジストレーション情報中の伴奏データ番号が編集項目として指定される。
<テンポスイッチがオン状態の場合>
テンポスイッチがオン状態であると、ステップSE3の判断結果が「YES」となり、ステップSE7に進み、テンポフラグTEMPOFに「1」をセットする一方、音色フラグTONEFおよび伴奏フラグBANSOFをそれぞれゼロリセットして本処理を終える。したがって、テンポスイッチがオン状態の場合には、レジストレーション情報中のテンポ値が編集項目として指定される。なお、音色スイッチ、伴奏スイッチおよびテンポスイッチが何れもオン状態でなければ、上記ステップSE1〜SE3の各判断結果は何れも「NO」となるので、ステップSE4に進み、その他のスイッチ処理を実行して本処理を終える。
このように、編集スイッチ処理では、編集スイッチを構成する音色スイッチ、伴奏スイッチおよびテンポスイッチの中でオン状態のスイッチ種を判別し、音色スイッチがオンされていれば、レジストレーション情報中の音色データ番号を編集項目として指定し、伴奏スイッチがオンされていれば、レジストレーション情報中の伴奏データ番号を編集項目として指定し、テンポスイッチがオンされていれば、レジストレーション情報中のテンポ値を編集項目として指定する。
(6)「+」、「−」スイッチ処理の動作
次に、図9を参照して「+」、「−」スイッチ処理の動作を説明する。上述したスイッチ処理のステップSD2(図7参照)を介して本処理が実行されると、CPU12は図9に図示するステップSF1に進み、「+」スイッチがオン操作されたか否かを判断する。「+」スイッチがオン操作された場合には、判断結果が「YES」となり、ステップSF2以降を実行する。
一方、「+」スイッチがオン操作されていなければ、上記ステップSF1の判断結果は「NO」になり、ステップSF9に進み、「−」スイッチがオン操作されたか否かを判断する。「−」スイッチがオン操作された場合には、判断結果が「YES」となり、ステップSF10以降を実行する。これに対し、「−」スイッチがオン操作されていなければ、上記ステップSF9の判断結果は「NO」になり、本処理を終える。
以下、「+」スイッチがオン操作された場合に実行されるステップSF2〜SF8の動作と、「−」スイッチがオン操作された場合に実行されるステップSF10〜SF16の動作とに分けて説明を進める。
<「+」スイッチがオン操作された場合>
この場合、ステップSF2に進み、音色フラグTONEFが「1」であるか否か、つまりレジストレーション情報中の音色データ番号が編集項目として指定されているかどうかを判断する。音色データ番号が編集項目として指定されていれば、判断結果は「YES」となり、ステップSF3に進む。ステップSF3では、カレントエリアCEの音色エリアにおいて、レジスタTONEに格納される音色データ番号をインクリメントして歩進させた後、ステップSF8に進み、時計カレンダ部18から取得した現在日時を音色データ番号の更新日時としてストアして本処理を終える。
一方、音色データ番号が編集項目として指定されていなければ、上記ステップSF2の判断結果は「NO」となり、ステップSF4に進む。ステップSF4では、伴奏フラグBANSOFが「1」であるか否か、つまりレジストレーション情報中の伴奏データ番号が編集項目として指定されているかどうかを判断する。伴奏データ番号が編集項目として指定されていれば、判断結果は「YES」となり、ステップSF5に進む。ステップSF5では、カレントエリアCEの伴奏エリアにおいて、レジスタBANSOに格納される伴奏データ番号をインクリメントして歩進させた後、ステップSF8に進み、時計カレンダ部18から取得した現在日時を伴奏データ番号の更新日時としてストアして本処理を終える。
これに対し、伴奏データ番号が編集項目として指定されていなければ、上記ステップSF4の判断結果は「NO」となり、ステップSF6に進む。ステップSF6では、テンポフラグTEMPOFが「1」であるか否か、つまりレジストレーション情報中のテンポ値が編集項目として指定されているかどうかを判断する。テンポ値が編集項目として指定されていれば、判断結果は「YES」となり、ステップSF7に進む。ステップSF7では、カレントエリアCEのテンポエリアにおいて、レジスタTEMPOに格納されるテンポ値をインクリメントして歩進させた後、ステップSF8に進み、時計カレンダ部18から取得した現在日時をテンポ値の更新日時としてストアして本処理を終える。
<「−」スイッチがオン操作された場合>
この場合、ステップSF10に進み、音色フラグTONEFが「1」であるか否か、つまりレジストレーション情報中の音色データ番号が編集項目として指定されているかどうかを判断する。音色データ番号が編集項目として指定されていれば、判断結果は「YES」となり、ステップSF11に進む。ステップSF11では、カレントエリアCEの音色エリアにおいて、レジスタTONEに格納される音色データ番号をデクリメントした後、ステップSF16に進み、時計カレンダ部18から取得した現在日時を音色データ番号の更新日時としてストアして本処理を終える。
一方、音色データ番号が編集項目として指定されていなければ、上記ステップSF10の判断結果は「NO」となり、ステップSF12に進む。ステップSF10では、伴奏フラグBANSOFが「1」であるか否か、つまりレジストレーション情報中の伴奏データ番号が編集項目として指定されているかどうかを判断する。伴奏データ番号が編集項目として指定されていれば、判断結果は「YES」となり、ステップSF13に進む。ステップSF13では、カレントエリアCEの伴奏エリアにおいて、レジスタBANSOに格納される伴奏データ番号をデクリメントした後、ステップSF16に進み、時計カレンダ部18から取得した現在日時を伴奏データ番号の更新日時としてストアして本処理を終える。
これに対し、伴奏データ番号が編集項目として指定されていなければ、上記ステップSF12の判断結果は「NO」となり、ステップSF14に進む。ステップSF14では、テンポフラグTEMPOFが「1」であるか否か、つまりレジストレーション情報中のテンポ値が編集項目として指定されているかどうかを判断する。テンポ値が編集項目として指定されていれば、判断結果は「YES」となり、ステップSF15に進む。ステップSF15では、カレントエリアCEのテンポエリアにおいて、レジスタTEMPOに格納されるテンポ値をデクリメントした後、ステップSF16に進み、時計カレンダ部18から取得した現在日時をテンポ値の更新日時としてストアして本処理を終える。一方、テンポ値が編集項目として指定されていなければ、上記ステップSF14の判断結果は「NO」になり、本処理を終える。
このように、「+」、「−」スイッチ処理では、前述の編集スイッチ処理によって指定された編集項目(音色データ番号、伴奏データ番号およびテンポ値)の値を、「+」スイッチのオン操作に応じてインクリメントしたり、「−」スイッチのオン操作に応じてデクリメントしたりすると共に、インクリメント(又はデクリメント)された日時を対応するパラメータの更新日時として記録する。
(7)スタート/ストップスイッチ処理の動作
次に、図10を参照してスタート/ストップスイッチ処理の動作を説明する。前述したスイッチ処理のステップSD3(図7参照)を介して本処理が実行されると、CPU12は図10に図示するステップSG1に進み、スタート/ストップスイッチがオン操作されたかどうかを判断する。オン操作されていなければ、判断結果は「NO」となり、本処理を終えるが、オン操作されていると、上記ステップSG1の判断結果は「YES」になり、ステップSG2に進み、スタートフラグSTFを反転させる。スタートフラグSTFは、そのフラグ値が「1」の場合に自動伴奏開始(もしくは伴奏進行中)を表し、「0」の場合に自動伴奏停止を表す。
次いで、ステップSG3では、オン操作に応じて反転されたスタートフラグSTFが「1」、つまり自動伴奏の開始であるかどうかを判断する。自動伴奏の開始であると、判断結果は「YES」となり、ステップSG4に進む。ステップSG4では、ROM13の伴奏データエリアAEにおいて、レジスタBANSOに格納される伴奏データ番号で指定される伴奏パターンの先頭アドレスを、レジスタADにストアする。以下、レジスタADの内容を読み出しアドレスADと称する。
そして、ステップSG5では、読み出しアドレスADに従い、伴奏データ番号で指定される伴奏パターンから最初のデータであるタイムTを読み出してレジスタTにストアする。次いで、ステップSG6では、レジスタTEMPOに格納されるテンポ値に基づきインタラプト周期を設定し、続くステップSG7では、タイマインタラプト禁止を解除して本処理を終える。なお、上記ステップSG7にてタイマインタラプト禁止が解除されると、前述したタイマインタラプト処理(図5参照)が、上記ステップSG6で設定した周期毎に割り込み実行される。
さて一方、オン操作に応じて反転されたスタートフラグSTFが「0」、つまり自動伴奏停止になると、上記ステップSG3の判断結果は「NO」になり、ステップSG8に進み、音源16に対して発音中の全ての伴奏音の消音を指示するオールノートオフ処理を行った後、ステップSG9に進み、タイマインタラプト禁止に設定して本処理を終える。
このように、スタート/ストップスイッチ処理では、スタート/ストップスイッチのオン操作に応じて反転されたスタートフラグSTFが「1」となって自動伴奏の開始を表す場合には、レジスタBANSOに格納される伴奏データ番号で指定される伴奏パターンの先頭アドレスを読み出しアドレスADとして当該伴奏パターンから最初のデータであるタイムTを読み出してレジスタTにストアした後、レジスタTEMPOに格納されるテンポ値に基づきインタラプト周期を設定してタイマインタラプト禁止を解除する。一方、オン操作に応じて反転されたスタートフラグSTFが「0」となって自動伴奏の停止を表す場合には、音源16に対して発音中の全ての伴奏音の消音を指示してタイマインタラプト禁止に設定する。
(8)セーブスイッチ処理の動作
次に、図11を参照してセーブスイッチ処理の動作を説明する。前述したスイッチ処理のステップSD4(図7参照)を介して本処理が実行されると、CPU12は図11に図示するステップSH1に進み、RAM14のレジストレーションエリアREに設けられたエリアRE(1)〜(4)にそれぞれ対応付けられたセーブスイッチ1〜4の何れかがオン操作されたか否かを判断する。何れもオン操作されていなければ、判断結果は「NO」になり、本処理を終えるが、何れかがオン操作されると、上記ステップSH1の判断結果は「YES」になり、ステップSH2に進む。
ステップSH2では、オン操作されたセーブスイッチの番号をレジスタSAVEにストアし、続くステップSH3では、RAM14のカレントエリアCEに格納されるレジストレーション情報、すなわち音色エリアに記憶されるレジスタTONE(音色データ番号)とその更新日時、レジスタBANSO(伴奏データ番号)とその更新日時、レジスタTEMPO(テンポ値)とその更新日時をそれぞれ読み出し、RAM14のレジストレーションエリアRE中の、レジスタSAVEにストアされたセーブスイッチの番号に対応するエリアRE(SAVE)にストアして本処理を終える。
このように、セーブスイッチ処理では、セーブスイッチのオン操作に応じて、RAM14のカレントエリアCEに格納されるレジストレーション情報、すなわち音色エリアに記憶されるレジスタTONE(音色データ番号)とその更新日時、伴奏エリアに記憶されるレジスタBANSO(伴奏データ番号)とその更新日時、テンポエリアに記憶されるレジスタTEMPO(テンポ値)とその更新日時をそれぞれ読み出し、オン操作されたセーブスイッチの番号SAVEに対応するエリアRE(SAVE)に登録する。
(9)コールスイッチ処理の動作
次に、図12〜図13を参照してコールスイッチ処理の動作を説明する。前述したスイッチ処理のステップSD5(図7参照)を介して本処理が実行されると、CPU12は図12に図示するステップSJ1に進み、RAM14のレジストレーションエリアREに設けられたエリアRE(1)〜(4)にそれぞれ対応付けられたコールスイッチ1〜4の何れか2つが同時にオン操作されたか否かを判断する。
コールスイッチが2個同時オン操作されなければ、判断結果は「NO」になり、ステップSJ2に進み、単独のオン操作であるか否かを判断する。オン操作されなければ、判断結果は「NO」になり、本処理を終えるが、単独のオン操作であると、上記ステップSJ2の判断結果は「YES」になり、ステップSJ3に進み、オン操作されたコールスイッチの番号をレジスタCALL1にストアし、続くステップSJ4では、レジスタCALL1にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL1)の内容をカレントエリアCEにストアするレジストレーション呼び出しを行って本処理を終える。
一方、コールスイッチが2個同時オン操作されると、上記ステップSJ1の判断結果は「YES」となり、ステップSJ5に進み、コールスイッチ1〜4の中で同時にオン操作された2つのコールスイッチの番号をレジスタCALL1,CALL2にそれぞれストアする。次いで、ステップSJ6では、レジスタCALL1にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL1)におけるレジスタTONEの更新日時と、レジスタCALL2にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL2)におけるレジスタTONEの更新日時とを読み出す。
そして、ステップSJ7では、エリアRE(CALL1)におけるレジスタTONEの更新日時の方が新しいか否かを判断する。エリアRE(CALL1)におけるレジスタTONEの更新日時の方が新しければ、判断結果は「YES」になり、ステップSJ8に進み、エリアRE(CALL1)におけるレジスタTONEの音色データ番号と更新日時とをカレントエリアCEの音色エリアにストアするレジストレーション呼び出しを行った後、ステップSJ10に進む。
これに対し、エリアRE(CALL2)におけるレジスタTONEの更新日時の方が新しければ、上記ステップSJ7の判断結果は「NO」になり、ステップSJ9に進み、エリアRE(CALL2)におけるレジスタTONEの音色データ番号と更新日時とをカレントエリアCEの音色エリアにストアするレジストレーション呼び出しを行った後、ステップSJ10に進む。
続いて、ステップSJ10では、レジスタCALL1にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL1)におけるレジスタBANSOの更新日時と、レジスタCALL2にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL2)におけるレジスタBANSOの更新日時とを読み出す。
そして、図13に図示するステップSJ11に進み、エリアRE(CALL1)におけるレジスタBANSOの更新日時の方が新しいか否かを判断する。エリアRE(CALL1)におけるレジスタBANSOの更新日時の方が新しければ、判断結果は「YES」になり、ステップSJ12に進み、エリアRE(CALL1)におけるレジスタBANSOの伴奏データ番号と更新日時とをカレントエリアCEの伴奏エリアにストアするレジストレーション呼び出しを行った後、ステップSJ14に進む。
一方、エリアRE(CALL2)におけるレジスタBANSOの更新日時の方が新しければ、上記ステップSJ11の判断結果は「NO」になり、ステップSJ13に進み、エリアRE(CALL2)におけるレジスタBANSOの伴奏データ番号と更新日時とをカレントエリアCEの伴奏エリアにストアするレジストレーション呼び出しを行った後、ステップSJ14に進む。
ステップSJ14では、レジスタCALL1にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL1)におけるレジスタTEMPOの更新日時と、レジスタCALL2にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL2)におけるレジスタTEMPOの更新日時とを読み出す。
次いで、ステップSJ15では、エリアRE(CALL1)におけるレジスタTEMPOの更新日時の方が新しいか否かを判断する。エリアRE(CALL1)におけるレジスタTEMPOの更新日時の方が新しければ、判断結果は「YES」になり、ステップSJ16に進み、エリアRE(CALL1)におけるレジスタTEMPOのテンポ値と更新日時とをカレントエリアCEのテンポエリアにストアするレジストレーション呼び出しを行った後、本処理を終える。
一方、エリアRE(CALL2)におけるレジスタTEMPOの更新日時の方が新しければ、上記ステップSJ15の判断結果は「NO」になり、ステップSJ17に進み、エリアRE(CALL2)におけるレジスタTEMPOのテンポ値と更新日時とをカレントエリアCEのテンポエリアにストアするレジストレーション呼び出しを行った後、本処理を終える。
このように、コールスイッチ処理では、コールスイッチ1〜4の何れかが単独でオン操作された場合には、オン操作されたコールスイッチの番号CALL1に対応するレジストレーションエリアRE中のエリアRE(CALL1)の内容をカレントエリアCEにストアするレジストレーション呼び出しを行い、一方、コールスイッチ1〜4の何れか2つが同時にオン操作された場合には、オン操作された2つのコールスイッチの番号CALL1,CALL2にそれぞれ対応するレジストレーションエリアRE中のエリアRE(CALL1)とエリアRE(CALL2)とにそれぞれ格納される各パラメータ(音色データ番号、伴奏データ番号およびテンポ値)毎に、更新日時の新旧比較を行い、更新日時が新しい方のパラメータ(音色データ番号、伴奏データ番号およびテンポ値)と当該更新日時とをカレントエリアCEにストアするレジストレーション呼び出しを行う。
(10)鍵盤処理の動作
次に、図14を参照して伴奏処理の動作を説明する。前述したメインルーチンのステップSA3(図4参照)を介して本処理が実行されると、CPU12は図14に図示するステップSK1に進み、鍵盤10の伴奏鍵域の各鍵について鍵走査を行い、続くステップSK2では、その鍵走査で取得される鍵変化に基づき押鍵の有無を判断する。押鍵が無ければ、判断結果は「NO」となり、後述のステップSK5に進む。なお、伴奏鍵域とは、鍵盤10における所定の鍵より低音側の鍵域を指し、それとは逆の高音側の鍵域が後述のメロディ鍵域となる。
一方、伴奏鍵域で押鍵が有ると、上記ステップSK2の判断結果は「YES」となり、ステップSK3に進み、押鍵された鍵の鍵番号に基づきコード成立の有無、つまりコード演奏が為されたかどうかを判断する。コードが成立しない押鍵であると、判断結果は「NO」となり、後述のステップSK5に進むが、コード演奏ならば、上記ステップSK3の判断結果は「YES」となり、ステップSK4に進み、成立したコードのコード種を表すデータをレジスタCODEにストアし、成立したコードの根音を表すデータをレジスタROOTにストアする。
次いで、ステップSK5では、鍵盤10のメロディ鍵域の各鍵について鍵走査を行い、続くステップSK6では、鍵走査で得られる鍵変化に基づき押離鍵操作された鍵を判別する。押離鍵操作が行われず、鍵変化無しの場合には本処理を終える。押鍵操作に応じたキーオンイベントが発生した場合には、ステップSK7に進み、押鍵番号(押鍵された鍵の鍵番号)およびベロシティによりノートオンイベントを作成する。
そして、ステップSK8に進み、RAM14のカレントエリアCEからレジストレーション情報のレジスタTONE(音色データ番号)を読み出し、読み出した音色データ番号と共に、上記ステップSK8で作成したノートオンイベントを音源16に供給して本処理を終える。これにより、レジスタTONE(音色データ番号)で指定される音色の楽音が、メロディ鍵域で押鍵された鍵の音高で発音される。
これに対し、離鍵操作に応じたキーオフイベントが発生した場合には、ステップSK9に進む。ステップSK9では、離鍵番号(離鍵された鍵の鍵番号)によりノートオフイベントを作成する。そして、ステップSK8に進み、RAM14のカレントエリアCEからレジストレーション情報のレジスタTONE(音色データ番号)を読み出し、読み出した音色データ番号と共に、上記ステップSK9で作成したノートオフイベントを音源16に供給して本処理を終える。これにより、離鍵された鍵の音高で発音中の楽音が消音される。
このように、鍵盤処理では、伴奏鍵域でコード演奏が為されると、そのコード種および根音をそれぞれレジスタCODE、レジスタROOTにストアし、一方、メロディ鍵域で押鍵された場合には、押鍵された鍵の鍵番号およびベロシティを含むノートオンイベントとレジストレーション情報中のレジスタTONE(音色データ番号)とを音源16に送付して発音指示し、離鍵された場合には、離鍵された鍵の鍵番号を含むノートオフイベントとレジストレーション情報中のレジスタTONE(音色データ番号)とを音源16に送付して消音指示する。
(11)伴奏処理の動作
次に、図15を参照して伴奏処理の動作を説明する。前述したメインルーチンのステップSA4(図4参照)を介して本処理が実行されると、CPU12は図14に図示するステップSL1に進み、スタートフラグSTFが「1」であるか否か、つまり自動伴奏が開始されているかどうかを判断する。自動伴奏の停止(スタートフラグSTFが「0」)ならば、判断結果は「NO」になり、本処理を終える。
一方、自動伴奏が開始されていれば、上記ステップSL1の判断結果は「YES」となり、ステップSL2に進む。ステップSL2では、前述したタイマインタラプト処理(図5参照)によりデクリメントされるレジスタTの値が「0」以下であるか否か、つまりイベントタイミングに達したかどうかを判断する。イベントタイミングに達していなければ、判断結果は「NO」となり、本処理を終えるが、イベントタイミングに達していると、上記ステップSL2の判断結果は「YES」になり、ステップSL3に進む。
そして、ステップSL3では、伴奏パターンの読み出しを進めるべく読み出しアドレスADをインクリメントして歩進させ、続くステップSL4では、歩進された読み出しアドレスADに応じて伴奏パターンから読み出されるデータ(AD)が「イベントEV」、「タイムT」および「END」の何れであるかを判別する。なお、歩進された読み出しアドレスADに応じて読み出される伴奏パターンとは、ROM13の伴奏データエリアAEにおいて、レジスタBANSOに格納される伴奏データ番号に対応付けられた伴奏パターンを指す。
伴奏パターンから読み出されるデータ(AD)が「イベントEV」であると、ステップSL5に進み、その読み出されたイベントEVがコード音/ベース音のイベントであるか否かを判断する。音高要素を持たないリズム音のイベントならば、判断結果は「NO」になり、ステップSL7に進み、リズム音のイベントを音源16に供給してリズム音の発音を指示した後、上述したステップSL3に処理を戻す。
これに対し、コード音/ベース音のイベントであると、上記ステップSL5の判断結果は「YES」となり、ステップSL6に進む。ステップSL6では、前述した鍵盤処理(図13参照)において、伴奏鍵域でのコード演奏で得られたコード種CODEおよび根音ROOTに応じて、コード音/ベース音のイベントに含まれるコード音の音高(又はベース音の音高)を音高変換し、続くステップSL7では、音高変換されたコード音/ベース音のイベントを音源16に供給してコード音(又はベース音)の発音(又は消音)を指示した後、上述したステップSL3に処理を戻す。
そして、上記ステップSL3において歩進された読み出しアドレスADに応じて、伴奏パターンから「タイムT」が読み出されると、ステップSL8に進み、その読み出されたタイムTを次イベントタイミングとしてレジスタTにストアして一旦、本処理を終える。
伴奏パターンから読み出されるデータ(AD)が伴奏パターンの終わりを表す「END」になると、ステップSK9に進み、ROM13の伴奏データエリアAEにおいて、レジスタBANSOに格納される伴奏データ番号に対応付けられた伴奏パターンの先頭アドレスを読み出しアドレスADとしてセットした後、上述したステップSK4に処理を戻す。これにより、自動伴奏進行中であれば、伴奏パターンが繰り返し再生される。
このように、伴奏処理では、スタートフラグSTFが「1」となって自動伴奏が開始されていると、イベントタイミングに達したかどうかを判断し、イベントタイミングに達していると、読み出しアドレスADを歩進させ、歩進された読み出しアドレスADに応じて伴奏パターンから読み出されるデータ(AD)が「イベントEV」、「タイムT」および「END」の何れであるかを判別する。読み出されたデータ(AD)が「イベントEV」ならば、コード/ベースのイベントであるか否かを判断する。
音高要素を持たないリズム音のイベントならば、そのリズム音のイベントを音源16に供給してリズム音の発音させ、コード音/ベース音のイベントであると、伴奏鍵域でのコード演奏で得られたコード種CODEおよび根音ROOTに応じて音高変換されたコード音/ベース音のイベントを音源16に供給してコード音(又はベース音)の発音(又は消音)させる。伴奏パターンから読み出されるデータ(AD)が「タイムT」であると、その読み出されたタイムTを次イベントタイミングとしてレジスタTにストアする。伴奏パターンから読み出されるデータ(AD)が伴奏パターンの終わりを表す「END」ならば、読み出しアドレスADを伴奏パターンの先頭アドレスに戻して伴奏パターンを繰り返し再生させる。
以上説明したように、第1実施形態では、セーブスイッチのオン操作に応じて、カレントエリアCEの音色エリアに記憶されるレジスタTONE(音色データ番号)とその更新日時、伴奏エリアに記憶されるレジスタBANSO(伴奏データ番号)とその更新日時、テンポエリアに記憶されるレジスタTEMPO(テンポ値)とその更新日時を、当該オン操作されたセーブスイッチの番号SAVEに対応するエリアRE(SAVE)に登録した後、コールスイッチ1〜4の何れか2つが同時にオン操作されると、オン操作された2つのコールスイッチの番号CALL1,CALL2にそれぞれ対応するレジストレーションエリアRE中のエリアRE(CALL1)とエリアRE(CALL2)とにそれぞれ格納される各パラメータ(音色データ番号、伴奏データ番号およびテンポ値)毎に、更新日時の新旧比較を行い、更新日時が新しい方のパラメータ(音色データ番号、伴奏データ番号およびテンポ値)と当該更新日時とをカレントエリアCEにストアするレジストレーション呼び出しを行うので、例えば一部のパラメータについては現在の設定とし、残りのパラメータについては別に記憶された過去の設定にする等、よりユーザの意図した設定状態に変更することが出来る。
[第2実施形態]
次に、図16〜図17を参照して第2実施形態によるコールスイッチ処理の動作を説明する。前述した第1実施形態と同様、スイッチ処理のステップSD5(図7参照)を介して本処理が実行されると、CPU12は図16に図示するステップSM1に進み、RAM14のレジストレーションエリアREに設けられたエリアRE(1)〜(4)にそれぞれ対応付けられたコールスイッチ1〜4の何れか2つが同時にオン操作されたか否かを判断する。
コールスイッチが2個同時オン操作されなければ、判断結果は「NO」になり、ステップSM2に進み、単独のオン操作であるか否かを判断する。オン操作されなければ、判断結果は「NO」になり、本処理を終えるが、単独のオン操作であると、上記ステップSM2の判断結果は「YES」になり、ステップSM3に進み、オン操作されたコールスイッチの番号をレジスタCALL1にストアし、続くステップSM4では、レジスタCALL1にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL1)の内容をカレントエリアCEにストアするレジストレーション呼び出しを行って本処理を終える。
一方、コールスイッチが2個同時オン操作されると、上記ステップSM1の判断結果は「YES」となり、ステップSM5に進み、コールスイッチ1〜4の中で同時にオン操作された2つのコールスイッチの番号をレジスタCALL1,CALL2にそれぞれストアする。次いで、ステップSM6では、レジスタCALL1にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL1)におけるレジスタTONEの更新日時と、レジスタCALL2にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL2)におけるレジスタTONEの更新日時とを読み出す。
そして、ステップSM7では、エリアRE(CALL1)におけるレジスタTONEの更新日時の方が古いか否かを判断する。エリアRE(CALL1)におけるレジスタTONEの更新日時の方が古ければ、判断結果は「YES」になり、ステップSM8に進み、エリアRE(CALL1)におけるレジスタTONEの音色データ番号と更新日時とをカレントエリアCEの音色エリアにストアするレジストレーション呼び出しを行った後、ステップSM10に進む。
これに対し、エリアRE(CALL2)におけるレジスタTONEの更新日時の方が古いと、上記ステップSM7の判断結果は「NO」になり、ステップSM9に進み、エリアRE(CALL2)におけるレジスタTONEの音色データ番号と更新日時とをカレントエリアCEの音色エリアにストアするレジストレーション呼び出しを行った後、ステップSM10に進む。
続いて、ステップSM10では、レジスタCALL1にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL1)におけるレジスタBANSOの更新日時と、レジスタCALL2にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL2)におけるレジスタBANSOの更新日時とを読み出す。
そして、図16に図示するステップSM11に進み、エリアRE(CALL1)におけるレジスタBANSOの更新日時の方が古いか否かを判断する。エリアRE(CALL1)におけるレジスタBANSOの更新日時の方が古ければ、判断結果は「YES」になり、ステップSM12に進み、エリアRE(CALL1)におけるレジスタBANSOの伴奏データ番号と更新日時とをカレントエリアCEの伴奏エリアにストアするレジストレーション呼び出しを行った後、ステップSM14に進む。
一方、エリアRE(CALL2)におけるレジスタBANSOの更新日時の方が古いと、上記ステップSM11の判断結果は「NO」になり、ステップSM13に進み、エリアRE(CALL2)におけるレジスタBANSOの伴奏データ番号と更新日時とをカレントエリアCEの伴奏エリアにストアするレジストレーション呼び出しを行った後、ステップSM14に進む。
ステップSM14では、レジスタCALL1にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL1)におけるレジスタTEMPOの更新日時と、レジスタCALL2にストアしたコールスイッチの番号に対応するレジストレーションエリアRE中のエリアRE(CALL2)におけるレジスタTEMPOの更新日時とを読み出す。
次いで、ステップSM15では、エリアRE(CALL1)におけるレジスタTEMPOの更新日時の方が古いか否かを判断する。エリアRE(CALL1)におけるレジスタTEMPOの更新日時の方が古ければ、判断結果は「YES」になり、ステップSM16に進み、エリアRE(CALL1)におけるレジスタTEMPOのテンポ値と更新日時とをカレントエリアCEのテンポエリアにストアするレジストレーション呼び出しを行った後、本処理を終える。
一方、エリアRE(CALL2)におけるレジスタTEMPOの更新日時の方が古いと、上記ステップSM15の判断結果は「NO」になり、ステップSM17に進み、エリアRE(CALL2)におけるレジスタTEMPOのテンポ値と更新日時とをカレントエリアCEのテンポエリアにストアするレジストレーション呼び出しを行った後、本処理を終える。
このように、第2実施形態によるコールスイッチ処理では、コールスイッチ1〜4の何れかが単独でオン操作された場合には、オン操作されたコールスイッチの番号CALL1に対応するレジストレーションエリアRE中のエリアRE(CALL1)の内容をカレントエリアCEにストアするレジストレーション呼び出しを行い、一方、コールスイッチ1〜4の何れか2つが同時にオン操作された場合には、オン操作された2つのコールスイッチの番号CALL1,CALL2にそれぞれ対応するレジストレーションエリアRE中のエリアRE(CALL1)とエリアRE(CALL2)とにそれぞれ格納される各パラメータ(音色データ番号、伴奏データ番号およびテンポ値)毎に、更新日時の新旧比較を行い、更新日時が古い方のパラメータ(音色データ番号、伴奏データ番号およびテンポ値)と当該更新日時とをカレントエリアCEにストアするレジストレーション呼び出しを行う。
以上説明したように、第2実施形態では、セーブスイッチのオン操作に応じて、カレントエリアCEの音色エリアに記憶されるレジスタTONE(音色データ番号)とその更新日時、伴奏エリアに記憶されるレジスタBANSO(伴奏データ番号)とその更新日時、テンポエリアに記憶されるレジスタTEMPO(テンポ値)とその更新日時を、当該オン操作されたセーブスイッチの番号SAVEに対応するエリアRE(SAVE)に登録した後、コールスイッチ1〜4の何れか2つが同時にオン操作されると、オン操作された2つのコールスイッチの番号CALL1,CALL2にそれぞれ対応するレジストレーションエリアRE中のエリアRE(CALL1)とエリアRE(CALL2)とにそれぞれ格納される各パラメータ(音色データ番号、伴奏データ番号およびテンポ値)毎に、更新日時の新旧比較を行い、更新日時が古い方のパラメータ(音色データ番号、伴奏データ番号およびテンポ値)と当該更新日時とをカレントエリアCEにストアするレジストレーション呼び出しを行うので、例えば一部のパラメータについては別に記憶された過去の設定とし、残りのパラメータについては現在の設定にしたりする等、よりユーザの意図した設定状態に変更することが出来る。
なお、上述した第1および第2実施形態では、説明の簡略化を図る為、コールスイッチ1〜4の何れか2つが同時にオン操作された場合を想定しているが、これに限らず、2つ以上のコールスイッチが同時にオン操作される場合にも適用可能である。その場合、オン操作された2つ以上の各コールスイッチの番号に対応付けられたエリアREにそれぞれ格納される各パラメータ(音色データ番号、伴奏データ番号およびテンポ値)毎に、最も更新日時の新しいパラメータと当該更新日時とを選び出してカレントエリアCEにストアするレジストレーション呼び出しを行う態様となる。
10 鍵盤
11 操作部
12 CPU
13 ROM
14 RAM
15 表示部
16 音源
17 サウンドシステム
18 時計カレンダ部
100 電子楽器

Claims (5)

  1. 更新日時が付加された各種パラメータを記憶する第1の記憶手段と、
    複数の記憶エリアを備える第2の記憶手段と、
    前記第2の記憶手段が備える複数の記憶エリアの内、ユーザ操作に応じて登録指示された記憶エリアに、前記第1の記憶手段の更新日時が付加された各種パラメータを登録する登録手段と、
    ユーザ操作に応じて、前記第2の記憶手段の複数の記憶エリアから各種パラメータを呼び出す呼出指示が発生した場合に、呼出対象の各記憶エリアにそれぞれ記憶される各種パラメータ毎に更新日時の新旧比較を行い、更新日時の新しいパラメータと当該更新日時とを前記第1の記憶手段へ転送する呼出手段と
    を具備することを特徴とするレジストレーション装置。
  2. 更新日時が付加された各種パラメータを記憶する第1の記憶手段と、
    複数の記憶エリアを備える第2の記憶手段と、
    前記第2の記憶手段が備える複数の記憶エリアの内、ユーザ操作に応じて登録指示された記憶エリアに、前記第1の記憶手段の更新日時が付加された各種パラメータを登録する登録手段と、
    ユーザ操作に応じて、前記第2の記憶手段の複数の記憶エリアから各種パラメータを呼び出す呼出指示が発生した場合に、呼出対象の各記憶エリアにそれぞれ記憶される各種パラメータ毎に更新日時の新旧比較を行い、更新日時の古いパラメータと当該更新日時とを前記第1の記憶手段へ転送する呼出手段と
    を具備することを特徴とするレジストレーション装置。
  3. 前記第1の記憶手段に記憶される各種パラメータの中で変更の対象となるパラメータを編集項目として指定する編集項目指定手段と、
    前記編集項目指定手段によって編集項目として指定されたパラメータを変更すると共に、その変更したパラメータに付加する更新日時を、変更を行った日時に変更する日時変更手段と
    を更に備えることを特徴とする請求項1又は2の何れかに記載のレジストレーション装置。
  4. コンピュータに、
    第1のメモリに記憶され、更新日時が付加された各種パラメータを、第2のメモリが備える複数の記憶エリアの中からユーザ操作に応じて登録指示された記憶エリアに登録する登録ステップと、
    ユーザ操作に応じて、前記第2のメモリの複数の記憶エリアから各種パラメータを呼び出す呼出指示が発生した場合に、呼出対象の各記憶エリアにそれぞれ記憶される各種パラメータ毎に更新日時の新旧比較を行い、更新日時の新しいパラメータと当該更新日時とを前記第1のメモリへ転送する呼出ステップと
    を実行させることを特徴とするプログラム。
  5. コンピュータに、
    第1のメモリに記憶され、更新日時が付加された各種パラメータを、第2のメモリが備える複数の記憶エリアの中からユーザ操作に応じて登録指示された記憶エリアに登録する登録ステップと、
    ユーザ操作に応じて、前記第2のメモリの複数の記憶エリアから各種パラメータを呼び出す呼出指示が発生した場合に、呼出対象の各記憶エリアにそれぞれ記憶される各種パラメータ毎に更新日時の新旧比較を行い、更新日時の古いパラメータと当該更新日時とを前記第1のメモリへ転送する呼出ステップと
    を実行させることを特徴とするプログラム。
JP2010084814A 2010-04-01 2010-04-01 レジストレーション装置およびプログラム Pending JP2011215444A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010084814A JP2011215444A (ja) 2010-04-01 2010-04-01 レジストレーション装置およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010084814A JP2011215444A (ja) 2010-04-01 2010-04-01 レジストレーション装置およびプログラム

Publications (1)

Publication Number Publication Date
JP2011215444A true JP2011215444A (ja) 2011-10-27

Family

ID=44945208

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010084814A Pending JP2011215444A (ja) 2010-04-01 2010-04-01 レジストレーション装置およびプログラム

Country Status (1)

Country Link
JP (1) JP2011215444A (ja)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02210397A (ja) * 1989-10-20 1990-08-21 Yamaha Corp 電子楽器のパラメータ発生装置
JPH11282732A (ja) * 1998-03-27 1999-10-15 Telecommunication Advancement Organization Of Japan データベース管理方法
JP2003271432A (ja) * 2002-03-19 2003-09-26 Toshiba Corp ファイル情報提示装置および方法およびプログラム
JP2004254225A (ja) * 2003-02-21 2004-09-09 Fujitsu Ltd 通信方法、通信システム、端末装置及びコンピュータプログラム
JP2005308708A (ja) * 2004-03-26 2005-11-04 Clarion Co Ltd ナビゲーション装置
JP2005346826A (ja) * 2004-06-02 2005-12-15 Pioneer Electronic Corp 情報処理装置、その方法、そのプログラム、そのプログラムを記憶した記憶媒体、および、情報記憶装置
JP2006154954A (ja) * 2004-11-25 2006-06-15 Canon Inc 情報処理装置及びその制御方法、プログラム
JP2006251911A (ja) * 2005-03-08 2006-09-21 Ricoh Co Ltd 画像処理装置、画像処理システム、ユーザ情報更新方法、ユーザ情報更新プログラム、および該プログラムを記録した記録媒体
JP2007048089A (ja) * 2005-08-10 2007-02-22 Sharp Corp データ処理装置、データ処理方法、データ処理プログラム、データ処理プログラムを記録した記録媒体、および構造化文書データファイルのデータ構造
JP2009251587A (ja) * 2008-04-11 2009-10-29 Ricoh Co Ltd 画像表示装置、画像表示方法及び画像表示プログラム
JP2009303141A (ja) * 2008-06-17 2009-12-24 Konica Minolta Business Technologies Inc 画像形成装置、画像処理システム、カスタマイズ方法及びコンピュータプログラム

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02210397A (ja) * 1989-10-20 1990-08-21 Yamaha Corp 電子楽器のパラメータ発生装置
JPH11282732A (ja) * 1998-03-27 1999-10-15 Telecommunication Advancement Organization Of Japan データベース管理方法
JP2003271432A (ja) * 2002-03-19 2003-09-26 Toshiba Corp ファイル情報提示装置および方法およびプログラム
JP2004254225A (ja) * 2003-02-21 2004-09-09 Fujitsu Ltd 通信方法、通信システム、端末装置及びコンピュータプログラム
JP2005308708A (ja) * 2004-03-26 2005-11-04 Clarion Co Ltd ナビゲーション装置
JP2005346826A (ja) * 2004-06-02 2005-12-15 Pioneer Electronic Corp 情報処理装置、その方法、そのプログラム、そのプログラムを記憶した記憶媒体、および、情報記憶装置
JP2006154954A (ja) * 2004-11-25 2006-06-15 Canon Inc 情報処理装置及びその制御方法、プログラム
JP2006251911A (ja) * 2005-03-08 2006-09-21 Ricoh Co Ltd 画像処理装置、画像処理システム、ユーザ情報更新方法、ユーザ情報更新プログラム、および該プログラムを記録した記録媒体
JP2007048089A (ja) * 2005-08-10 2007-02-22 Sharp Corp データ処理装置、データ処理方法、データ処理プログラム、データ処理プログラムを記録した記録媒体、および構造化文書データファイルのデータ構造
JP2009251587A (ja) * 2008-04-11 2009-10-29 Ricoh Co Ltd 画像表示装置、画像表示方法及び画像表示プログラム
JP2009303141A (ja) * 2008-06-17 2009-12-24 Konica Minolta Business Technologies Inc 画像形成装置、画像処理システム、カスタマイズ方法及びコンピュータプログラム

Similar Documents

Publication Publication Date Title
JP3632411B2 (ja) 楽音信号生成方法、楽音信号生成装置及びプログラムを記録した媒体
US20110185882A1 (en) Electronic musical instrument and recording medium
JP2011158855A (ja) 自動伴奏装置および自動伴奏プログラム
JP2005266350A (ja) 演奏情報表示装置およびプログラム
JP2012047964A (ja) レジストレーション装置およびプログラム
JP5605695B2 (ja) 電子楽器のレジストレーション装置およびプログラム
JP2011215444A (ja) レジストレーション装置およびプログラム
JP5578003B2 (ja) 電子楽器及びプログラム
JP6459237B2 (ja) 自動伴奏装置、電子楽器、自動伴奏方法および自動伴奏プログラム
JP6528752B2 (ja) 楽音再生装置、楽音再生方法、プログラムおよび電子楽器
JPH06161452A (ja) 自動伴奏装置
JP4337288B2 (ja) 演奏動作表示装置、及びプログラム
JP4614131B2 (ja) 波形発生装置および波形発生プログラム
JP2007178890A (ja) 自動演奏装置
JPH1185153A (ja) 演奏装置
JP3548825B2 (ja) 演奏動作表示装置、及び記録媒体
JP2004219495A (ja) 電子楽器
JP5648836B2 (ja) 楽音制御装置およびプログラム
JP3543159B2 (ja) 自動伴奏装置
JP4816930B2 (ja) 演奏支援情報生成装置および演奏支援情報生成プログラム
JP5029770B2 (ja) 演奏支援情報生成装置および演奏支援情報生成プログラム
JP4645285B2 (ja) 電子楽器
JP4973983B2 (ja) 自動演奏装置および自動演奏処理プログラム
JP2012042506A (ja) 電子楽器およびプログラム
JP5181521B2 (ja) 自動伴奏装置、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140326

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150708

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20151102