JP2001042871A - 楽音発生装置及び楽音発生装置の制御方法 - Google Patents
楽音発生装置及び楽音発生装置の制御方法Info
- Publication number
- JP2001042871A JP2001042871A JP11211203A JP21120399A JP2001042871A JP 2001042871 A JP2001042871 A JP 2001042871A JP 11211203 A JP11211203 A JP 11211203A JP 21120399 A JP21120399 A JP 21120399A JP 2001042871 A JP2001042871 A JP 2001042871A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- sound source
- value
- musical instrument
- tone
- 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.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H7/00—Instruments in which the tones are synthesised from a data store, e.g. computer organs
- G10H7/002—Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
- Manufacturing And Processing Devices For Dough (AREA)
Abstract
(57)【要約】
【課題】 楽音発生装置において、装備する機能の追
加、変更、削除を柔軟に行なえるようにする。 【解決手段】 ROM13には、楽音発生装置の動作状
態と、スライダ17、スイッチ18、エンコーダ19と
いった各操作子の用途との関係の定義を示す定義情報が
例えばテーブル情報の形で格納されている。そして、C
PU11は、これらの各操作子に対する操作に応じ、R
OM13内の定義情報に定義されている楽音発生装置の
現在の動作状態においての用途を実現するようにその楽
音発生装置を制御する。この構成によれば、仕様の変更
のために発生する変更作業は、ROM13に格納されて
いる定義情報に対しての変更作業が主となるので、容易
である。
加、変更、削除を柔軟に行なえるようにする。 【解決手段】 ROM13には、楽音発生装置の動作状
態と、スライダ17、スイッチ18、エンコーダ19と
いった各操作子の用途との関係の定義を示す定義情報が
例えばテーブル情報の形で格納されている。そして、C
PU11は、これらの各操作子に対する操作に応じ、R
OM13内の定義情報に定義されている楽音発生装置の
現在の動作状態においての用途を実現するようにその楽
音発生装置を制御する。この構成によれば、仕様の変更
のために発生する変更作業は、ROM13に格納されて
いる定義情報に対しての変更作業が主となるので、容易
である。
Description
【0001】
【発明の属する技術分野】本発明は楽音発生装置での実
施に好適な技術に関するものであり、特に、楽音発生装
置に装備する機能の追加、変更、削除を柔軟に行なえる
ようにする技術に関する。
施に好適な技術に関するものであり、特に、楽音発生装
置に装備する機能の追加、変更、削除を柔軟に行なえる
ようにする技術に関する。
【0002】
【従来の技術】過去に開発された電子楽器のための多種
多様な機能の中には、デジタル技術の進歩により、今で
は低価格で実現させることが可能になったものが多い。
このような諸機能を電子楽器に装備するためのコスト
は、機能自体を実現するために要するものよりも、使用
者がその機能を選択・設定等するための操作子を設ける
ために要するコストのほうがむしろ高くなってしまうこ
とが少なくない。そのため、一部の電子楽器では、操作
性を犠牲にし、複数の操作子の同時操作に対して機能を
割り当てる等して操作子の数を削減しているものもあ
る。
多様な機能の中には、デジタル技術の進歩により、今で
は低価格で実現させることが可能になったものが多い。
このような諸機能を電子楽器に装備するためのコスト
は、機能自体を実現するために要するものよりも、使用
者がその機能を選択・設定等するための操作子を設ける
ために要するコストのほうがむしろ高くなってしまうこ
とが少なくない。そのため、一部の電子楽器では、操作
性を犠牲にし、複数の操作子の同時操作に対して機能を
割り当てる等して操作子の数を削減しているものもあ
る。
【0003】
【発明が解決しようとする課題】ところで、製品設計に
おいて、製品仕様を決定すること、前述の例では如何な
る機能を装備した電子楽器を設計するかを決定すること
は重要な作業である。もしも製品設計作業の開始後に何
らかの原因によって製品仕様が変更(追加、削除)され
るようなことがあれば、新たな設計変更の作業の発生は
避けられない。しかしながら、設計変更によって発生す
る作業量は製品設計のために割り当てられている期間内
で吸収しなければならない場合が多いので、その作業量
の増加は最小限に留めることが望ましい。
おいて、製品仕様を決定すること、前述の例では如何な
る機能を装備した電子楽器を設計するかを決定すること
は重要な作業である。もしも製品設計作業の開始後に何
らかの原因によって製品仕様が変更(追加、削除)され
るようなことがあれば、新たな設計変更の作業の発生は
避けられない。しかしながら、設計変更によって発生す
る作業量は製品設計のために割り当てられている期間内
で吸収しなければならない場合が多いので、その作業量
の増加は最小限に留めることが望ましい。
【0004】ところが、従来の電子楽器において、装置
全体を制御するCPUで実行させる制御プログラムは、
操作子の操作等のイベントの発生に応じてCPUが行な
う制御の内容を記述し、それらを並べていく形式で作成
されたものとなっているため、例えば操作子に対する用
途の割り当てを変更するだけといった、わすかな設計変
更が発生しても制御プログラムの修正のために発生する
作業量は膨大な量となってしまっていた。
全体を制御するCPUで実行させる制御プログラムは、
操作子の操作等のイベントの発生に応じてCPUが行な
う制御の内容を記述し、それらを並べていく形式で作成
されたものとなっているため、例えば操作子に対する用
途の割り当てを変更するだけといった、わすかな設計変
更が発生しても制御プログラムの修正のために発生する
作業量は膨大な量となってしまっていた。
【0005】以上の問題を鑑み、楽音発生装置におい
て、装備する機能の追加、変更、削除を柔軟に行なえる
ようにすることが本発明が解決しようとする課題であ
る。
て、装備する機能の追加、変更、削除を柔軟に行なえる
ようにすることが本発明が解決しようとする課題であ
る。
【0006】
【課題を解決するための手段】本発明は、操作されるこ
とによって楽音発生装置の諸機能の動作に関する設定が
行なわれる操作子を有するその楽音発生装置、又はその
楽音発生装置の制御方法を前提とするものである。
とによって楽音発生装置の諸機能の動作に関する設定が
行なわれる操作子を有するその楽音発生装置、又はその
楽音発生装置の制御方法を前提とするものである。
【0007】そして、本発明は、下記の構成を有するこ
とによって前述した課題を解決する。まず、その楽音発
生装置の動作状態とその操作子の用途との関係の定義を
示す定義情報を格納する格納手段を備える。
とによって前述した課題を解決する。まず、その楽音発
生装置の動作状態とその操作子の用途との関係の定義を
示す定義情報を格納する格納手段を備える。
【0008】そして、操作子に対する操作に応じ、格納
手段に格納されている定義情報に定義されている楽音発
生装置の現在の動作状態においての用途を実現するよう
にその楽音発生装置を制御する制御手段を更に備える。
手段に格納されている定義情報に定義されている楽音発
生装置の現在の動作状態においての用途を実現するよう
にその楽音発生装置を制御する制御手段を更に備える。
【0009】この構成によれば、楽音発生装置の現在の
動作状態とは無関係に常に固有の用途を操作子に与える
のではなく、楽音発生装置の現在の動作状態に応じて操
作子の用途を変更させることが可能である。しかも、楽
音発生装置の動作状態に応じた操作子の用途は格納手段
に格納されている定義情報に基づいて決定されるので、
例えば操作子に対する用途の割り当てを変更するなどと
いった仕様の変更のために必要な変更作業は、格納手段
に格納されている定義情報に対しての変更作業が主であ
り、複雑に構成されている場合の多い制御手段に対して
の変更作業はわずかで済むため、容易である。
動作状態とは無関係に常に固有の用途を操作子に与える
のではなく、楽音発生装置の現在の動作状態に応じて操
作子の用途を変更させることが可能である。しかも、楽
音発生装置の動作状態に応じた操作子の用途は格納手段
に格納されている定義情報に基づいて決定されるので、
例えば操作子に対する用途の割り当てを変更するなどと
いった仕様の変更のために必要な変更作業は、格納手段
に格納されている定義情報に対しての変更作業が主であ
り、複雑に構成されている場合の多い制御手段に対して
の変更作業はわずかで済むため、容易である。
【0010】ここで、定義情報を、変更作業の担当者が
相互関係をたやすく理解できるテーブル情報、つまり表
を示す情報としておくと変更作業がより簡単に行なえ
る。また、格納手段が定義情報を複数格納し、その複数
格納されている定義情報から制御手段が制御内容を決定
するための定義情報を選択する選択手段を更に有するよ
うに構成してもよく、この構成によれば、例えば使用者
毎に異なる嗜好に応じて、各操作子への機能割り当てを
変更するなどの機能を楽音発生装置に提供することもで
きるようになる。
相互関係をたやすく理解できるテーブル情報、つまり表
を示す情報としておくと変更作業がより簡単に行なえ
る。また、格納手段が定義情報を複数格納し、その複数
格納されている定義情報から制御手段が制御内容を決定
するための定義情報を選択する選択手段を更に有するよ
うに構成してもよく、この構成によれば、例えば使用者
毎に異なる嗜好に応じて、各操作子への機能割り当てを
変更するなどの機能を楽音発生装置に提供することもで
きるようになる。
【0011】また、格納手段に格納されている定義情報
を変更する定義情報変更手段を更に有するように構成し
てもよく、定義情報の変更作業がより簡単に行なえる。
また、前記制御手段を中央処理装置とし、定義情報は、
中央処理装置で実行させることによってその中央処理装
置が操作子の用途を実現するように楽音発生装置を制御
する制御プログラムを含むように構成してもよく、この
構成によれば各操作子に対する操作に対して中央処理装
置による制御動作が開始されるまでの応答速度を向上さ
せることができる。
を変更する定義情報変更手段を更に有するように構成し
てもよく、定義情報の変更作業がより簡単に行なえる。
また、前記制御手段を中央処理装置とし、定義情報は、
中央処理装置で実行させることによってその中央処理装
置が操作子の用途を実現するように楽音発生装置を制御
する制御プログラムを含むように構成してもよく、この
構成によれば各操作子に対する操作に対して中央処理装
置による制御動作が開始されるまでの応答速度を向上さ
せることができる。
【0012】また、他の機器から送付される前記定義情
報を前記格納手段に格納させる制御を行なう格納制御手
段を更に有するように構成してもよく、例えば、本装置
が使用者に供給された後であっても、新規な機能を本装
置に追加するなどの機能拡張を使用者に提供することが
できるようになる。
報を前記格納手段に格納させる制御を行なう格納制御手
段を更に有するように構成してもよく、例えば、本装置
が使用者に供給された後であっても、新規な機能を本装
置に追加するなどの機能拡張を使用者に提供することが
できるようになる。
【0013】
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて説明する。なお、本実施の形態では、楽曲お
よび伴奏の自動演奏機能を有する電子キーボードで本発
明を実施する場合について説明する。
に基づいて説明する。なお、本実施の形態では、楽曲お
よび伴奏の自動演奏機能を有する電子キーボードで本発
明を実施する場合について説明する。
【0014】図1は、本発明を実施する電子キーボート
(以下、「本装置」という)の全体構成を示すブロック
図である。また、図2は、各操作子が備えられている本
装置の表面パネルの様子を示す図である。
(以下、「本装置」という)の全体構成を示すブロック
図である。また、図2は、各操作子が備えられている本
装置の表面パネルの様子を示す図である。
【0015】図1に示すCPU11、タイマ(TIME
R)12、ROM13、RAM14、LCD15、LE
D16、スライダ17、スイッチ18、エンコーダ1
9、音源20、鍵盤21、FDD22は、いずれもバス
23を介して相互に接続されている。また、図2に示さ
れている各構成要素に付した符号は、図1に示されてい
る同一の構成要素と同一のものを付している。
R)12、ROM13、RAM14、LCD15、LE
D16、スライダ17、スイッチ18、エンコーダ1
9、音源20、鍵盤21、FDD22は、いずれもバス
23を介して相互に接続されている。また、図2に示さ
れている各構成要素に付した符号は、図1に示されてい
る同一の構成要素と同一のものを付している。
【0016】CPU11は、ROM13に記憶された制
御プログラムに従って、RAM14をワークエリアとし
て使用しながら、本装置全体の動作を制御する中央演算
処理装置である。
御プログラムに従って、RAM14をワークエリアとし
て使用しながら、本装置全体の動作を制御する中央演算
処理装置である。
【0017】タイマ12は時間経過を計時するものであ
る。ROM13は、CPU11で実行される本装置全体
の制御のための制御プログラムや楽音データ、楽曲デー
タ等に加え、本発明に特に関係する仕様データテーブル
(後述)を格納している。なお、本装置においては、R
OM13としてフラッシュメモリを使用するので、格納
されているデータをCPU11により書き換えることも
可能である。
る。ROM13は、CPU11で実行される本装置全体
の制御のための制御プログラムや楽音データ、楽曲デー
タ等に加え、本発明に特に関係する仕様データテーブル
(後述)を格納している。なお、本装置においては、R
OM13としてフラッシュメモリを使用するので、格納
されているデータをCPU11により書き換えることも
可能である。
【0018】RAM14は、CPU11が制御処理を実
行するために必要なワークエリアとして、また各種の設
定パラメータの記憶用として用いられるランダムアクセ
スメモリである。
行するために必要なワークエリアとして、また各種の設
定パラメータの記憶用として用いられるランダムアクセ
スメモリである。
【0019】LCD15は液晶ディスプレイ(Liquid C
rystal Display)であり、スイッチ15の用途を説明す
る表示を行なうものである。LED16は発光ダイオー
ド(Light Emitting Diode)であり、点灯/消灯させる
ことによって、機器の動作状態等を示すものである。
rystal Display)であり、スイッチ15の用途を説明す
る表示を行なうものである。LED16は発光ダイオー
ド(Light Emitting Diode)であり、点灯/消灯させる
ことによって、機器の動作状態等を示すものである。
【0020】スライダ17はスライドボリュームであ
り、本装置の使用者によるスライド操作に応じて制御量
を変化させる操作子である。図2に示すように、本装置
にはスライダ17a、17b、17cの3つが設けられ
ている。
り、本装置の使用者によるスライド操作に応じて制御量
を変化させる操作子である。図2に示すように、本装置
にはスライダ17a、17b、17cの3つが設けられ
ている。
【0021】スイッチ18は押下することによって本装
置の使用者からの指示を与える操作子である。図2に示
すように、スイッチ18は、LCD15の左側に5個
(18a 〜18e)、右側に5個(18f〜18j)、
下側に2段に3個ずつ(上段:18k〜18m、下段:
18n〜18p)の計16個のスイッチ18a〜18p
が設けられている。これらのスイッチ18には固定され
た用途が定義されておらず、現在の本装置の動作モード
に応じて異なる用途で機能する。
置の使用者からの指示を与える操作子である。図2に示
すように、スイッチ18は、LCD15の左側に5個
(18a 〜18e)、右側に5個(18f〜18j)、
下側に2段に3個ずつ(上段:18k〜18m、下段:
18n〜18p)の計16個のスイッチ18a〜18p
が設けられている。これらのスイッチ18には固定され
た用途が定義されておらず、現在の本装置の動作モード
に応じて異なる用途で機能する。
【0022】図3は、現在の本装置の動作モードに応じ
て変化するLCD15の表示例を示す図である。LCD
15には同図に示す8種類の動作画面を表示させること
が可能である。ここで、LCD15の左右に設けられて
いるスイッチ18a〜18jの各々の用途は、このLC
D15の表示によって示される。
て変化するLCD15の表示例を示す図である。LCD
15には同図に示す8種類の動作画面を表示させること
が可能である。ここで、LCD15の左右に設けられて
いるスイッチ18a〜18jの各々の用途は、このLC
D15の表示によって示される。
【0023】一例としてLCD15の左側の最上段に設
けられているスイッチ18aの用途について説明する。
本装置の起動時にはLCD15には図3(a)の「起動
画面」の表示がなされ、スイッチ18aの用途は「ST
OP」、すなわち自動演奏を停止させる機能であること
が示される。また、本装置が音源パラメータ変更という
動作モードで動作しているときにはLCD15には図3
(e)の「音源パラメータ変更画面」の表示がなされ、
スイッチ18aの用途は「Tone」、すなわち出力す
る音の音色を変更させる機能であることが示される。
けられているスイッチ18aの用途について説明する。
本装置の起動時にはLCD15には図3(a)の「起動
画面」の表示がなされ、スイッチ18aの用途は「ST
OP」、すなわち自動演奏を停止させる機能であること
が示される。また、本装置が音源パラメータ変更という
動作モードで動作しているときにはLCD15には図3
(e)の「音源パラメータ変更画面」の表示がなされ、
スイッチ18aの用途は「Tone」、すなわち出力す
る音の音色を変更させる機能であることが示される。
【0024】また、本装置の起動時にLCD15に表示
される図3(a)の「起動画面」の表示において、スイ
ッチ18h、18i、18jについてはその用途が示さ
れていない。これは、スイッチ18h、18i、18j
についての用途の定義が存在していないことを示してお
り、「起動画面」が表示されているときのスイッチ18
h、18i、18jに対する操作は無視される。
される図3(a)の「起動画面」の表示において、スイ
ッチ18h、18i、18jについてはその用途が示さ
れていない。これは、スイッチ18h、18i、18j
についての用途の定義が存在していないことを示してお
り、「起動画面」が表示されているときのスイッチ18
h、18i、18jに対する操作は無視される。
【0025】図1の説明に戻る。エンコーダ19はいわ
ゆるロータリーエンコーダであり、本装置の使用者によ
る回転操作に応じて制御量を変化させる操作子である。
音源20はCPU11から指示された音色、音高、音量
の音を発生させて出力するものである。
ゆるロータリーエンコーダであり、本装置の使用者によ
る回転操作に応じて制御量を変化させる操作子である。
音源20はCPU11から指示された音色、音高、音量
の音を発生させて出力するものである。
【0026】鍵盤21は鍵盤楽器のキーボードであり、
使用者の押鍵による演奏操作の様子を検出してCPU1
1に伝える操作子である。FDD22は、フロッピーデ
ィスクドライブであり、本装置で自動演奏を行なうため
の自動演奏データのフロッピーディスクへの書き込みや
読み出しを行なうものである。
使用者の押鍵による演奏操作の様子を検出してCPU1
1に伝える操作子である。FDD22は、フロッピーデ
ィスクドライブであり、本装置で自動演奏を行なうため
の自動演奏データのフロッピーディスクへの書き込みや
読み出しを行なうものである。
【0027】次に、本発明に特に関係する仕様データテ
ーブルについて説明する。仕様データテーブルの一例を
図4に示す。仕様データテーブルとは、現在の本装置の
動作モードと本装置の各操作子であるスライダ17、ス
イッチ18、エンコーダ19、鍵盤21に対する操作と
の関係から、CPU11に行なわせる制御処理の内容の
定義(命令定義)が示されているものである。図4にお
いて、仕様データテーブルの各列は操作された操作子を
示しており、SWLEFT1〜SWLEFT5がスイッ
チ18a〜18eに、SWRIGHT1〜SWRIGH
T5がスイッチ18f〜18jに、SWENC1U〜S
WENC3Uがスイッチ18k〜18mに、SWENC
1D〜SWENC3Dがスイッチ18n〜18pに、S
LIDER1〜SLIDER3がスライダ17a〜17
cに、ROTENCがエンコーダ19に、そして、KE
YBODが鍵盤21に、それぞれ対応している。また、
仕様データテーブルの各行は現在の本装置の動作モード
を示しており、特に、図4に示した動作モードと図3に
示したLCD15の表示例とはスイッチ18a〜18j
の用途において動作モード毎に同一の内容を示してい
る。
ーブルについて説明する。仕様データテーブルの一例を
図4に示す。仕様データテーブルとは、現在の本装置の
動作モードと本装置の各操作子であるスライダ17、ス
イッチ18、エンコーダ19、鍵盤21に対する操作と
の関係から、CPU11に行なわせる制御処理の内容の
定義(命令定義)が示されているものである。図4にお
いて、仕様データテーブルの各列は操作された操作子を
示しており、SWLEFT1〜SWLEFT5がスイッ
チ18a〜18eに、SWRIGHT1〜SWRIGH
T5がスイッチ18f〜18jに、SWENC1U〜S
WENC3Uがスイッチ18k〜18mに、SWENC
1D〜SWENC3Dがスイッチ18n〜18pに、S
LIDER1〜SLIDER3がスライダ17a〜17
cに、ROTENCがエンコーダ19に、そして、KE
YBODが鍵盤21に、それぞれ対応している。また、
仕様データテーブルの各行は現在の本装置の動作モード
を示しており、特に、図4に示した動作モードと図3に
示したLCD15の表示例とはスイッチ18a〜18j
の用途において動作モード毎に同一の内容を示してい
る。
【0028】仕様データテーブルの使用法を、本装置の
起動時にスイッチ18aの操作が行なわれた場合を例に
説明する。図4において、「起動」時の動作モードであ
る行と、スイッチ18aに対応する「SWLWEFT
1」である列とが交差する欄を参照すると、「楽器(状
態、演奏停止)」なる命令定義がなされている。従っ
て、この場合においてはCPU11は楽器(状態、演奏
停止)なる処理を実行する。
起動時にスイッチ18aの操作が行なわれた場合を例に
説明する。図4において、「起動」時の動作モードであ
る行と、スイッチ18aに対応する「SWLWEFT
1」である列とが交差する欄を参照すると、「楽器(状
態、演奏停止)」なる命令定義がなされている。従っ
て、この場合においてはCPU11は楽器(状態、演奏
停止)なる処理を実行する。
【0029】また、図4において、例えば「起動」時の
動作モードである行と、スイッチ18hに対応する「S
WRIGHT3」である列とが交差する欄を参照する
と、「無視」なる定義がなされている。このように仕様
データテーブルの該当欄に「無視」の定義がなされてい
る場合には、CPU11は当該操作子の操作に応じた制
御処理を実行しない。
動作モードである行と、スイッチ18hに対応する「S
WRIGHT3」である列とが交差する欄を参照する
と、「無視」なる定義がなされている。このように仕様
データテーブルの該当欄に「無視」の定義がなされてい
る場合には、CPU11は当該操作子の操作に応じた制
御処理を実行しない。
【0030】もしも、各操作子に割り当てている用途の
割り当ての変更を行なうには、この仕様データテーブル
の定義を書き換えることで行なうことができる。例え仕
様変更によってそれまでの制御プログラムに含まれてい
なかった新たな命令定義が仕様データテーブルになされ
たとしても、既にコーディングを終えた制御プログラム
の他の部分には変更を加える必要はなく、その命令定義
に応じたサブルーチンを制御プログラムに追加すればよ
い。このように、仕様データテーブルの定義内容に基づ
いてCPU11が実行する処理を決定する構成を本装置
が採用することによって、本装置の仕様に変更が発生し
ても柔軟に対応することができるようになる。
割り当ての変更を行なうには、この仕様データテーブル
の定義を書き換えることで行なうことができる。例え仕
様変更によってそれまでの制御プログラムに含まれてい
なかった新たな命令定義が仕様データテーブルになされ
たとしても、既にコーディングを終えた制御プログラム
の他の部分には変更を加える必要はなく、その命令定義
に応じたサブルーチンを制御プログラムに追加すればよ
い。このように、仕様データテーブルの定義内容に基づ
いてCPU11が実行する処理を決定する構成を本装置
が採用することによって、本装置の仕様に変更が発生し
ても柔軟に対応することができるようになる。
【0031】なお、本装置では、図4に示す仕様データ
テーブルがROM13に格納されている。また、本装置
では、ROM13にフラッシュメモリを使用しているの
で、CPU11の処理により簡単に仕様データテーブル
を書き換えることができる。
テーブルがROM13に格納されている。また、本装置
では、ROM13にフラッシュメモリを使用しているの
で、CPU11の処理により簡単に仕様データテーブル
を書き換えることができる。
【0032】以下、本装置のCPU11が、図4示した
仕様データテーブルの命令定義に従って、現在の本装置
の動作モードと本装置の各操作子に対する操作との関係
から各種制御処理を選択して実行する手順について説明
する。
仕様データテーブルの命令定義に従って、現在の本装置
の動作モードと本装置の各操作子に対する操作との関係
から各種制御処理を選択して実行する手順について説明
する。
【0033】まず、ROM13に格納されている各デー
タについて図5を用いて説明する。ROM13には、制
御プログラム(図5には不図示)、仕様データテーブル
(図5に「TABLE」と表示)の他に、音源20で発
音させる音の音色を設定するN種類の音色(TONE)
データからなるTONEデータ群、自動演奏を行なうN
種類の曲(SONG)データからなる曲データ群、自動
演奏を行なうN種類の伴奏(ACOMP)データからな
る伴奏データ群という各種のデータを格納している。な
お、ここで、伴奏データとしては伴奏コード(Chord :
和音)を示すデータが格納されている。また、前述した
ように、本装置ではROM13にフラッシュメモリを使
用しており、CPU11の制御によりROM13に格納
されている各種データの書き換えが可能である。
タについて図5を用いて説明する。ROM13には、制
御プログラム(図5には不図示)、仕様データテーブル
(図5に「TABLE」と表示)の他に、音源20で発
音させる音の音色を設定するN種類の音色(TONE)
データからなるTONEデータ群、自動演奏を行なうN
種類の曲(SONG)データからなる曲データ群、自動
演奏を行なうN種類の伴奏(ACOMP)データからな
る伴奏データ群という各種のデータを格納している。な
お、ここで、伴奏データとしては伴奏コード(Chord :
和音)を示すデータが格納されている。また、前述した
ように、本装置ではROM13にフラッシュメモリを使
用しており、CPU11の制御によりROM13に格納
されている各種データの書き換えが可能である。
【0034】次に、CPU11が使用するRAM14の
ワークエリアの使用状態を、図6を用いて説明する。同
図(A)において、音楽データバッファは、本装置が自
動演奏を行なう場合の自動演奏データが格納される領域
である。
ワークエリアの使用状態を、図6を用いて説明する。同
図(A)において、音楽データバッファは、本装置が自
動演奏を行なう場合の自動演奏データが格納される領域
である。
【0035】音色データバッファは、音源20に発音さ
せる音の音色に関する要素を設定するデータが格納され
る領域である。時刻カウンタは、タイマ12が一定の時
間を計時する度に発生させるタイマインタラプトの回数
を格納する領域であり、この値を参照することによって
時間経過を知ることができる。
せる音の音色に関する要素を設定するデータが格納され
る領域である。時刻カウンタは、タイマ12が一定の時
間を計時する度に発生させるタイマインタラプトの回数
を格納する領域であり、この値を参照することによって
時間経過を知ることができる。
【0036】SONGNO.は、ROM13に格納され
ている複数の曲データから本装置で自動演奏を行なわせ
る曲データを選択する番号が格納される領域である。T
RANSPOSEは、鍵盤21の音域を移調する際の移
調の量を示す値が格納される領域である。
ている複数の曲データから本装置で自動演奏を行なわせ
る曲データを選択する番号が格納される領域である。T
RANSPOSEは、鍵盤21の音域を移調する際の移
調の量を示す値が格納される領域である。
【0037】ACOMPNO.は、ROM13に格納さ
れている複数の伴奏データから本装置で自動伴奏を行な
わせる伴奏データを選択する番号が格納される領域であ
る。TEMPOは、本装置で自動演奏・自動伴奏を行な
わせるときのテンポ(速度)を示す値が設定されて格納
される領域である。
れている複数の伴奏データから本装置で自動伴奏を行な
わせる伴奏データを選択する番号が格納される領域であ
る。TEMPOは、本装置で自動演奏・自動伴奏を行な
わせるときのテンポ(速度)を示す値が設定されて格納
される領域である。
【0038】VOLUMEは、音源20で発生させる音
の基準音量が設定されて格納される領域である。TON
ENO.は、ROM13に格納されている複数の音色デ
ータから音源20に発音させる音色データを選択する番
号が格納される領域である。
の基準音量が設定されて格納される領域である。TON
ENO.は、ROM13に格納されている複数の音色デ
ータから音源20に発音させる音色データを選択する番
号が格納される領域である。
【0039】図6(B)には、音楽データバッファ及び
音色データバッファ内部の更に詳細な使用状態を示して
いる。音楽データバッファにおいて、領域SEVENT
には、楽曲の自動演奏を行なっているときに次に音源2
0で発音させる楽音のデータが一時的に格納され、領域
STには、楽曲の自動演奏を開始してからの経過時間を
示すデータが格納される。また、領域AEVENTに
は、伴奏の自動演奏を行なっているときに次に音源20
で発音させる伴奏データが一時的に格納され、領域AT
には、伴奏の自動演奏を開始してからの経過時間を示す
データが格納される。
音色データバッファ内部の更に詳細な使用状態を示して
いる。音楽データバッファにおいて、領域SEVENT
には、楽曲の自動演奏を行なっているときに次に音源2
0で発音させる楽音のデータが一時的に格納され、領域
STには、楽曲の自動演奏を開始してからの経過時間を
示すデータが格納される。また、領域AEVENTに
は、伴奏の自動演奏を行なっているときに次に音源20
で発音させる伴奏データが一時的に格納され、領域AT
には、伴奏の自動演奏を開始してからの経過時間を示す
データが格納される。
【0040】音色データバッファにおいて、領域TON
Eには、ROM13のTONEデータ群から選択された
TONEデータが格納される。また、PITCH、FI
LTER、ENVELOPE、MODULATIONの
各領域には、音源20で発音させる音の基準のピッチ、
発音させた音の信号を通過させるフィルタの特性、音源
20で発音させる音のエンベロープ特性、音源20で発
音させる音に付加するモジュレーション(変調)の深さ
をそれぞれ示すデータが格納される。
Eには、ROM13のTONEデータ群から選択された
TONEデータが格納される。また、PITCH、FI
LTER、ENVELOPE、MODULATIONの
各領域には、音源20で発音させる音の基準のピッチ、
発音させた音の信号を通過させるフィルタの特性、音源
20で発音させる音のエンベロープ特性、音源20で発
音させる音に付加するモジュレーション(変調)の深さ
をそれぞれ示すデータが格納される。
【0041】次に図7について説明する。同図は、本装
置の各操作子、及び本装置の各動作モード(楽器状態)
のそれぞれに与えられている番号の定義を示している。
同図(A)は、スイッチ18a〜18p(SWLEFT
1〜5、SWRIGHT1〜5、SWENC1U〜3
U、SWENC1D〜3D)、スライダ17a〜17c
(SLIDER1〜3)、エンコーダ19(ROTEN
C)、鍵盤21(KEYBOD)の各操作子の各々に与
えられている番号の定義を示すものであり、同図(B)
は、起動画面(起動時)、自動演奏停止、自動演奏中、
自動演奏待機、音源パラメータ変更、演奏パラメータ変
更、外部記憶装置書き込み、外部記憶装置読み込みの各
楽器状態の各々に与えられている番号の定義を示すもの
である。
置の各操作子、及び本装置の各動作モード(楽器状態)
のそれぞれに与えられている番号の定義を示している。
同図(A)は、スイッチ18a〜18p(SWLEFT
1〜5、SWRIGHT1〜5、SWENC1U〜3
U、SWENC1D〜3D)、スライダ17a〜17c
(SLIDER1〜3)、エンコーダ19(ROTEN
C)、鍵盤21(KEYBOD)の各操作子の各々に与
えられている番号の定義を示すものであり、同図(B)
は、起動画面(起動時)、自動演奏停止、自動演奏中、
自動演奏待機、音源パラメータ変更、演奏パラメータ変
更、外部記憶装置書き込み、外部記憶装置読み込みの各
楽器状態の各々に与えられている番号の定義を示すもの
である。
【0042】以下、CPU11により行なわれる制御処
理の詳細について説明する。 [1.装置全体の制御処理]図8は、CPU11が、電
源投入直後よりROM13に格納されている制御プログ
ラムを読み出して実行することにより行われる、CPU
11による本装置全体の制御処理を示すフローチャート
である。CPU11による制御動作を同図に従って説明
する。
理の詳細について説明する。 [1.装置全体の制御処理]図8は、CPU11が、電
源投入直後よりROM13に格納されている制御プログ
ラムを読み出して実行することにより行われる、CPU
11による本装置全体の制御処理を示すフローチャート
である。CPU11による制御動作を同図に従って説明
する。
【0043】まず、S1001において、電源投入直後
にイニシャライズ(初期化)処理が実行され、CPU1
1の有する内部レジスタやRAM14の初期化、及び後
述する各種処理において用いられる各種の変数・フラグ
への初期値の代入などといった処理が行なわれる。
にイニシャライズ(初期化)処理が実行され、CPU1
1の有する内部レジスタやRAM14の初期化、及び後
述する各種処理において用いられる各種の変数・フラグ
への初期値の代入などといった処理が行なわれる。
【0044】S1002では、楽器(状態、起動画面)
処理が行われる。この処理は、図3(a)に示した起動
画面をLCD15に表示させる処理である。楽器(状
態、起動画面)処理の詳細は後述する。
処理が行われる。この処理は、図3(a)に示した起動
画面をLCD15に表示させる処理である。楽器(状
態、起動画面)処理の詳細は後述する。
【0045】S1003では、タイマインタラプトの受
付禁止状態を解除する。CPU11は、タイマ12が一
定の時間を計時する度に発生させるタイマインタラプト
(割り込み)に応じてタイマ処理を実行する。タイマ処
理の詳細は後述するが、このステップの処理は、イニシ
ャライズ処理で禁止状態に設定されるタイマインタラプ
トの受付を許可の状態に変更するものである。
付禁止状態を解除する。CPU11は、タイマ12が一
定の時間を計時する度に発生させるタイマインタラプト
(割り込み)に応じてタイマ処理を実行する。タイマ処
理の詳細は後述するが、このステップの処理は、イニシ
ャライズ処理で禁止状態に設定されるタイマインタラプ
トの受付を許可の状態に変更するものである。
【0046】S1004では、イベント発生フラグが
「1」に設定されているか否かを判別し、判定結果がY
esならばS1005に進み、NoならばこのS100
4の判別処理を繰り返す。イベント発生フラグは、本装
置の有するいずれかの操作子に対する操作が行われたか
否か(イベントが発生したか否か)を示すフラグであ
り、S1001のイニシャライズ処理では、イベントが
発生していないことを示す「0」に設定される。
「1」に設定されているか否かを判別し、判定結果がY
esならばS1005に進み、NoならばこのS100
4の判別処理を繰り返す。イベント発生フラグは、本装
置の有するいずれかの操作子に対する操作が行われたか
否か(イベントが発生したか否か)を示すフラグであ
り、S1001のイニシャライズ処理では、イベントが
発生していないことを示す「0」に設定される。
【0047】S1005では、CPU11の有する、本
装置の現在の動作モード(楽器状態)が図6(B)に示
す番号で示されて格納されている楽器状態レジスタの現
在の値を、同じくCPU11の有するレジスタであるY
軸レジスタに代入する。
装置の現在の動作モード(楽器状態)が図6(B)に示
す番号で示されて格納されている楽器状態レジスタの現
在の値を、同じくCPU11の有するレジスタであるY
軸レジスタに代入する。
【0048】S1006では、CPU11の有する、イ
ベントの発生した(操作の行われた)操作子が図6
(A)に示す番号で示されて格納されている入力イベン
トレジスタの現在の値を、同じくCPU11の有するレ
ジスタであるX軸レジスタに代入する。
ベントの発生した(操作の行われた)操作子が図6
(A)に示す番号で示されて格納されている入力イベン
トレジスタの現在の値を、同じくCPU11の有するレ
ジスタであるX軸レジスタに代入する。
【0049】S1007では、ROM13に格納されて
いる、図4に示した仕様データテーブルを参照し、(X
軸レジスタ値,Y軸レジスタ値)の欄に示されている命
令定義を読み出して取得する。
いる、図4に示した仕様データテーブルを参照し、(X
軸レジスタ値,Y軸レジスタ値)の欄に示されている命
令定義を読み出して取得する。
【0050】S1008では、仕様データ処理を実行す
る。仕様データ処理は、本発明の特徴である、前ステッ
プで仕様データテーブルから読み出した命令定義に応じ
てCPU11が各種の制御を実行する処理である。仕様
データ処理の詳細は後述する。
る。仕様データ処理は、本発明の特徴である、前ステッ
プで仕様データテーブルから読み出した命令定義に応じ
てCPU11が各種の制御を実行する処理である。仕様
データ処理の詳細は後述する。
【0051】S1009では、今回のイベント発生に応
じた制御処理の実行が完了したので、イベント発生フラ
グを 「0」に設定し、その後はS1004へ戻って上
述した処理を繰り返す。
じた制御処理の実行が完了したので、イベント発生フラ
グを 「0」に設定し、その後はS1004へ戻って上
述した処理を繰り返す。
【0052】[2.タイマ処理]前述したように、タイ
マ処理は、タイマ12が一定の時間を計時する度に発生
させるタイマインタラプトに応じてCPU11により実
行される処理である。以下、タイマ処理の詳細につい
て、その処理内容を示す図9のフローチャートに沿って
説明する。
マ処理は、タイマ12が一定の時間を計時する度に発生
させるタイマインタラプトに応じてCPU11により実
行される処理である。以下、タイマ処理の詳細につい
て、その処理内容を示す図9のフローチャートに沿って
説明する。
【0053】タイマ12からのタイマインタラプトを受
け付けると、まず、S2001において、RAM14の
ワークエリアに領域確保されている時刻カウンタの値を
1だけ進める。
け付けると、まず、S2001において、RAM14の
ワークエリアに領域確保されている時刻カウンタの値を
1だけ進める。
【0054】以下、S2002からS2007にかけて
は、鍵盤処理、スイッチ処理、スライダ処理、エンコー
ダ処理、楽曲再生処理、伴奏再生処理が順に実行され、
その後、今回のタイマインタラプトにより開始されたタ
イマ処理を終了する。以下、この各処理の詳細について
説明する。
は、鍵盤処理、スイッチ処理、スライダ処理、エンコー
ダ処理、楽曲再生処理、伴奏再生処理が順に実行され、
その後、今回のタイマインタラプトにより開始されたタ
イマ処理を終了する。以下、この各処理の詳細について
説明する。
【0055】[2−1.鍵盤処理]図10にフローチャ
ートで示す鍵盤処理は、鍵盤21に対する操作の内容を
CPU11が取得する処理である。
ートで示す鍵盤処理は、鍵盤21に対する操作の内容を
CPU11が取得する処理である。
【0056】まず、S2101では、鍵盤21に対して
新たな操作がなされたか否かを判別する。その結果、前
回に実行された鍵盤処理において判別した操作内容から
何ら新たな操作が行なわれていない(押鍵状態又は離鍵
状態が継続している)のであれば今回の鍵盤処理を終了
し、図9においての次の処理に進む。また、鍵盤21に
対しての押鍵操作が新たに検出されたのであればS21
02に進み、鍵盤21に対しての離鍵操作が新たに検出
されたのであればS2104に進む。
新たな操作がなされたか否かを判別する。その結果、前
回に実行された鍵盤処理において判別した操作内容から
何ら新たな操作が行なわれていない(押鍵状態又は離鍵
状態が継続している)のであれば今回の鍵盤処理を終了
し、図9においての次の処理に進む。また、鍵盤21に
対しての押鍵操作が新たに検出されたのであればS21
02に進み、鍵盤21に対しての離鍵操作が新たに検出
されたのであればS2104に進む。
【0057】S2102では、前述した入力イベントレ
ジスタに「20」を代入する。S2103では、CPU
11の有する、イベントの発生した操作子に対する操作
の内容を格納する入力イベント値レジスタに、押鍵操作
が発生したことを示す「ONフラグ」、及び押鍵された
鍵の音高や押鍵ベロシティ(押鍵の速度)を示すデータ
を代入し、S2106に進む。
ジスタに「20」を代入する。S2103では、CPU
11の有する、イベントの発生した操作子に対する操作
の内容を格納する入力イベント値レジスタに、押鍵操作
が発生したことを示す「ONフラグ」、及び押鍵された
鍵の音高や押鍵ベロシティ(押鍵の速度)を示すデータ
を代入し、S2106に進む。
【0058】S2104では、入力イベントレジスタ
に、鍵盤21に対する操作であったことを示す「20」
(図7 (A)のKEYBODに対応する番号)を代入
する。S2105では、前述した入力イベント値レジス
タに、離鍵操作が発生したことを示す「OFFフラ
グ」、及び離鍵された鍵の音高や離鍵ベロシティ(離鍵
の速度)を示すデータを代入する。
に、鍵盤21に対する操作であったことを示す「20」
(図7 (A)のKEYBODに対応する番号)を代入
する。S2105では、前述した入力イベント値レジス
タに、離鍵操作が発生したことを示す「OFFフラ
グ」、及び離鍵された鍵の音高や離鍵ベロシティ(離鍵
の速度)を示すデータを代入する。
【0059】S2106では、前述したイベント発生フ
ラグを「1」に設定してイベントの発生を示す。その後
は今回の鍵盤処理を終了し、図9においての次の処理に
進む。
ラグを「1」に設定してイベントの発生を示す。その後
は今回の鍵盤処理を終了し、図9においての次の処理に
進む。
【0060】[2−2.スイッチ処理]図11にフロー
チャートで示すスイッチ処理は、スイッチ18に対する
操作の内容をCPU11が取得する処理である。
チャートで示すスイッチ処理は、スイッチ18に対する
操作の内容をCPU11が取得する処理である。
【0061】まず、S2201では、スイッチ18に対
して新たな操作がなされたか否かを判別し、操作が検出
されたのであればS2202に進む。一方、操作が検出
されなかったのであれば今回のスイッチ処理を終了し、
図9においての次の処理に進む。
して新たな操作がなされたか否かを判別し、操作が検出
されたのであればS2202に進む。一方、操作が検出
されなかったのであれば今回のスイッチ処理を終了し、
図9においての次の処理に進む。
【0062】S2202では、スイッチ18a〜18p
から操作されたものを特定し、図7(A)に示されてい
る操作されたスイッチに対応する番号(以下、図7
(A)に示されている番号を「デバイス番号」と呼ぶ)
を入力イベントレジスタに代入する。
から操作されたものを特定し、図7(A)に示されてい
る操作されたスイッチに対応する番号(以下、図7
(A)に示されている番号を「デバイス番号」と呼ぶ)
を入力イベントレジスタに代入する。
【0063】S2203では、前述した入力イベント値
レジスタに、スイッチ18に対する操作が発生したこと
を示す「1」を代入し、続くS2204で、イベント発
生フラグを「1」に設定してイベントの発生を示す。そ
の後は今回のスイッチ処理を終了し、図9においての次
の処理に進む。
レジスタに、スイッチ18に対する操作が発生したこと
を示す「1」を代入し、続くS2204で、イベント発
生フラグを「1」に設定してイベントの発生を示す。そ
の後は今回のスイッチ処理を終了し、図9においての次
の処理に進む。
【0064】[2−3.スライダ処理]図12にフロー
チャートで示すスライダ処理は、スライダ17に対する
操作の内容をCPU11が取得する処理である。
チャートで示すスライダ処理は、スライダ17に対する
操作の内容をCPU11が取得する処理である。
【0065】まず、S2301では、変数DNに1を代
入する。S2302では、デバイス番号がDNであるス
ライダ17の出力値を変数VALUE(DN)に代入す
る。
入する。S2302では、デバイス番号がDNであるス
ライダ17の出力値を変数VALUE(DN)に代入す
る。
【0066】S2303では、変数VALUE(DN)
から変数FVALUE(DN)の値を減じた算出結果を
変数SABUN(DN)に代入する。ここで、変数FV
ALUE(DN)には、スライダ処理が前回に実行され
たときのデバイス番号DNである操作子の出力値が格納
されている。
から変数FVALUE(DN)の値を減じた算出結果を
変数SABUN(DN)に代入する。ここで、変数FV
ALUE(DN)には、スライダ処理が前回に実行され
たときのデバイス番号DNである操作子の出力値が格納
されている。
【0067】S2304では、変数SABUN(DN)
の値の絶対値が所定値よりも大きいか否かを判別する。
この判定結果がYesならば、デバイス番号DNである
スライダ17に対する操作が行なわれたものと判断し、
ステップS2305に進む。一方、判定結果がNoであ
ればS2308に進む。このステップで用いられる所定
値は、スライダ17に対する操作を行なっていないのに
「操作あり」と誤判定してしまう割合が許容できる程度
に小さな値とする。
の値の絶対値が所定値よりも大きいか否かを判別する。
この判定結果がYesならば、デバイス番号DNである
スライダ17に対する操作が行なわれたものと判断し、
ステップS2305に進む。一方、判定結果がNoであ
ればS2308に進む。このステップで用いられる所定
値は、スライダ17に対する操作を行なっていないのに
「操作あり」と誤判定してしまう割合が許容できる程度
に小さな値とする。
【0068】S2305では、変数DNの値を入力イベ
ントレジスタに代入する。S2306では、変数SAB
UN(DN)の値を入力イベント値レジスタに代入し、
続くS2307で、イベント発生フラグを「1」に設定
してイベントの発生を示す。
ントレジスタに代入する。S2306では、変数SAB
UN(DN)の値を入力イベント値レジスタに代入し、
続くS2307で、イベント発生フラグを「1」に設定
してイベントの発生を示す。
【0069】S2308では、変数VALUE(DN)
の値、すなわちデバイス番号がDNであるスライダ17
の現在の出力値を変数FVALUE(DN)に代入す
る。S2309では、変数DNの値を1だけ増加させ
る。
の値、すなわちデバイス番号がDNであるスライダ17
の現在の出力値を変数FVALUE(DN)に代入す
る。S2309では、変数DNの値を1だけ増加させ
る。
【0070】S2310では、変数DNの値が18より
も大きいか否かを判別し、判定結果がYesならば今回
のスライダ処理を終了し、図9においての次の処理に進
む。一方、判定結果がNoならばS2302へ戻って上
述した処理を繰り返す。この処理の繰り返しによって、
3つ設けられているスライダ17a〜17cのそれぞれ
に対するイベント発生の検出の処理が行なわれる。
も大きいか否かを判別し、判定結果がYesならば今回
のスライダ処理を終了し、図9においての次の処理に進
む。一方、判定結果がNoならばS2302へ戻って上
述した処理を繰り返す。この処理の繰り返しによって、
3つ設けられているスライダ17a〜17cのそれぞれ
に対するイベント発生の検出の処理が行なわれる。
【0071】[2−4.エンコーダ処理]図13にフロ
ーチャートで示すエンコーダ処理は、エンコーダ19に
対する操作の内容をCPU11が取得する処理であり、
前述したスライダ処理を変形した処理内容となってい
る。
ーチャートで示すエンコーダ処理は、エンコーダ19に
対する操作の内容をCPU11が取得する処理であり、
前述したスライダ処理を変形した処理内容となってい
る。
【0072】S2401では、エンコーダ19の出力値
を変数VALUE(19)に代入する。S2402で
は、変数VALUE(19)から変数FVALUE(1
9)の値を減じた算出結果を変数SABUN(19)に
代入する。
を変数VALUE(19)に代入する。S2402で
は、変数VALUE(19)から変数FVALUE(1
9)の値を減じた算出結果を変数SABUN(19)に
代入する。
【0073】S2403では、変数SABUN(19)
の値の絶対値が所定値よりも大きいか否かを判別する。
この判定結果がYesならば、エンコーダ19に対する
操作が行なわれたものと判断し、ステップS2404に
進む。一方、判定結果がNoであれば今回のエンコーダ
処理を終了し、図9においての次の処理に進む。このス
テップで用いられる所定値は、エンコーダ19に対する
操作を行なっていないにもかかわらず「操作あり」と誤
判定してしまう割合が許容できる程度の小さな値とす
る。
の値の絶対値が所定値よりも大きいか否かを判別する。
この判定結果がYesならば、エンコーダ19に対する
操作が行なわれたものと判断し、ステップS2404に
進む。一方、判定結果がNoであれば今回のエンコーダ
処理を終了し、図9においての次の処理に進む。このス
テップで用いられる所定値は、エンコーダ19に対する
操作を行なっていないにもかかわらず「操作あり」と誤
判定してしまう割合が許容できる程度の小さな値とす
る。
【0074】S2404では、エンコーダ19を示すデ
バイス番号「19」を入力イベントレジスタに代入す
る。S2405では、変数SABUN(19)の値を入
力イベント値レジスタに代入し、続くS2406で、イ
ベント発生フラグを「1」に設定してイベントの発生を
示す。
バイス番号「19」を入力イベントレジスタに代入す
る。S2405では、変数SABUN(19)の値を入
力イベント値レジスタに代入し、続くS2406で、イ
ベント発生フラグを「1」に設定してイベントの発生を
示す。
【0075】S2407では、変数VALUE(19)
の値、すなわちエンコーダ19の現在の出力値を変数F
VALUE(19)に代入し、その後今回のエンコーダ
処理を終了し、図9においての次の処理に進む。
の値、すなわちエンコーダ19の現在の出力値を変数F
VALUE(19)に代入し、その後今回のエンコーダ
処理を終了し、図9においての次の処理に進む。
【0076】[2−5.楽曲再生処理]図14にフロー
チャートで示す楽曲再生処理は、楽曲の自動演奏を本装
置で行なうための処理であり、楽曲を構成する楽音デー
タを所定のタイミングで音源20に送付して楽音を出力
させる処理である。
チャートで示す楽曲再生処理は、楽曲の自動演奏を本装
置で行なうための処理であり、楽曲を構成する楽音デー
タを所定のタイミングで音源20に送付して楽音を出力
させる処理である。
【0077】まず、S2501では、自動演奏の開始指
示の有無を示すスタートフラグSTFが「1」、すなわ
ち開始指示に設定されており、且つ、自動演奏の一時停
止指示の有無を示すウェイトフラグWFが「0」、すな
わち非停止に設定されているか否かを判別する。この判
別結果がYesならばS2502に進み、Noならば今
回の楽曲再生処理を終了し、図9においての次の処理に
進む。
示の有無を示すスタートフラグSTFが「1」、すなわ
ち開始指示に設定されており、且つ、自動演奏の一時停
止指示の有無を示すウェイトフラグWFが「0」、すな
わち非停止に設定されているか否かを判別する。この判
別結果がYesならばS2502に進み、Noならば今
回の楽曲再生処理を終了し、図9においての次の処理に
進む。
【0078】S2502では、図6に示す音楽データバ
ッファの領域STに格納されている、楽曲の自動演奏を
開始してからの経過時間を示すデータを変数STに代入
する。
ッファの領域STに格納されている、楽曲の自動演奏を
開始してからの経過時間を示すデータを変数STに代入
する。
【0079】S2503では、時間経過をカウントして
いる時刻カウンタが、変数STの値を超えたか否かを判
別し、判定結果がYesならばS2504に進み、No
ならば今回の楽曲再生処理を終了し、図9においての次
の処理に進む。このステップの処理は、次の楽音データ
を発音させる時刻に達したか否かを判断するものであ
る。
いる時刻カウンタが、変数STの値を超えたか否かを判
別し、判定結果がYesならばS2504に進み、No
ならば今回の楽曲再生処理を終了し、図9においての次
の処理に進む。このステップの処理は、次の楽音データ
を発音させる時刻に達したか否かを判断するものであ
る。
【0080】S2504では、図6に示す音楽データバ
ッファのSEVENTに格納されている楽音データを音
源20に送付して対応する楽音を発音させる。S250
5では、図5に示すROM13に格納されている曲デー
タ群から楽曲データを読み出すためのアドレッシングに
用いられる変数SADDの値を1だけ増加させる。
ッファのSEVENTに格納されている楽音データを音
源20に送付して対応する楽音を発音させる。S250
5では、図5に示すROM13に格納されている曲デー
タ群から楽曲データを読み出すためのアドレッシングに
用いられる変数SADDの値を1だけ増加させる。
【0081】S2506では、変数SADDの値で示さ
れるROM13のアドレスに格納されているデータME
M(SADD)の種類を判別する。そのデータが発音時
間を示すデータであればS2507に進む。また、その
データが楽音を示すデータであればS2510に進み、
楽曲の終了を示すデータであればS2512に進む。
れるROM13のアドレスに格納されているデータME
M(SADD)の種類を判別する。そのデータが発音時
間を示すデータであればS2507に進む。また、その
データが楽音を示すデータであればS2510に進み、
楽曲の終了を示すデータであればS2512に進む。
【0082】S2507では、データMEM(SAD
D)の値を変数ΔSTに代入する。S2508では、変
数STの値に変数ΔSTの値を加えた計算結果を改めて
変数STに代入する。
D)の値を変数ΔSTに代入する。S2508では、変
数STの値に変数ΔSTの値を加えた計算結果を改めて
変数STに代入する。
【0083】S2509では、変数STの値を図6に示
す音楽データバッファの領域STに格納し、その後にS
2505へ戻る。S2510では、データMEM(SA
DD)の値を変数SEVENTに代入する。
す音楽データバッファの領域STに格納し、その後にS
2505へ戻る。S2510では、データMEM(SA
DD)の値を変数SEVENTに代入する。
【0084】S2511では、変数SEVENTの値を
図6に示す音楽データバッファの領域SEVENTに格
納し、その後は今回の楽曲再生処理を終了し、図9にお
いての次の処理に進む。
図6に示す音楽データバッファの領域SEVENTに格
納し、その後は今回の楽曲再生処理を終了し、図9にお
いての次の処理に進む。
【0085】S2512では、音源20に対して楽音の
出力の中止(消音)を指示する。S2513では、自動
演奏の開始指示の有無を示す前述したスタートフラグS
TFを「0」、すなわち開始指示無しに設定し、その後
は今回の楽曲再生処理を終了し、図9においての次の処
理に進む。
出力の中止(消音)を指示する。S2513では、自動
演奏の開始指示の有無を示す前述したスタートフラグS
TFを「0」、すなわち開始指示無しに設定し、その後
は今回の楽曲再生処理を終了し、図9においての次の処
理に進む。
【0086】[2−6.伴奏再生処理]図15にフロー
チャートで示す伴奏再生処理は、伴奏の自動演奏を本装
置で行なうための処理であり、伴奏である楽音データを
所定のタイミングで音源20に送付して楽音を発音させ
る処理である。この伴奏再生処理は、前述した楽曲再生
処理を変形した処理内容となっている。
チャートで示す伴奏再生処理は、伴奏の自動演奏を本装
置で行なうための処理であり、伴奏である楽音データを
所定のタイミングで音源20に送付して楽音を発音させ
る処理である。この伴奏再生処理は、前述した楽曲再生
処理を変形した処理内容となっている。
【0087】まず、S2601では、前述したスタート
フラグSTFが「1」、すなわち自動演奏の開始指示に
設定されており、且つ、前述したウェイトフラグWFが
「0」、すなわち自動演奏が非停止に設定されているか
否かを判別する。この判別結果がYesならばS260
2に進み、Noならば今回の伴奏再生処理を終了し、図
9においての次の処理に進む。
フラグSTFが「1」、すなわち自動演奏の開始指示に
設定されており、且つ、前述したウェイトフラグWFが
「0」、すなわち自動演奏が非停止に設定されているか
否かを判別する。この判別結果がYesならばS260
2に進み、Noならば今回の伴奏再生処理を終了し、図
9においての次の処理に進む。
【0088】S2602では、図6に示す音楽データバ
ッファの領域ATに格納されている、伴奏の自動演奏を
開始してからの経過時間を示すデータを変数ATに代入
する。
ッファの領域ATに格納されている、伴奏の自動演奏を
開始してからの経過時間を示すデータを変数ATに代入
する。
【0089】S2603では、前述した時刻カウンタが
変数ATの値を超えたか否かを判別し、判定結果がYe
sならばS2604に進み、Noならば今回の伴奏再生
処理を終了し、図9においての次の処理(タイマ処理の
終了)に進む。
変数ATの値を超えたか否かを判別し、判定結果がYe
sならばS2604に進み、Noならば今回の伴奏再生
処理を終了し、図9においての次の処理(タイマ処理の
終了)に進む。
【0090】S2604では、図6に示す音楽データバ
ッファのAEVENTに格納されている伴奏データを変
数AEVENTに代入する。S2605では、変数AE
VENTのデータを、鍵盤21の押鍵に応じたコードを
示すデータが後述する音源鍵盤処理において与えられる
CODEレジスタで変換する。
ッファのAEVENTに格納されている伴奏データを変
数AEVENTに代入する。S2605では、変数AE
VENTのデータを、鍵盤21の押鍵に応じたコードを
示すデータが後述する音源鍵盤処理において与えられる
CODEレジスタで変換する。
【0091】S2606では、変数AEVENTの伴奏
データを音源20に送付して対応するコード(和音)を
発音させる。S2607では、図5に示すROM13に
格納されている伴奏データ群から伴奏データを読み出す
ためのアドレッシングに用いられる変数AADDの値を
1だけ増加させる。
データを音源20に送付して対応するコード(和音)を
発音させる。S2607では、図5に示すROM13に
格納されている伴奏データ群から伴奏データを読み出す
ためのアドレッシングに用いられる変数AADDの値を
1だけ増加させる。
【0092】S2608では、変数AADDの値で示さ
れるROM13のアドレスに格納されているデータME
M(AADD)の種類を判別する。そのデータが発音時
間を示すデータであればS2609に進み、そのデータ
が伴奏コードを示すデータであればS2612に進む。
れるROM13のアドレスに格納されているデータME
M(AADD)の種類を判別する。そのデータが発音時
間を示すデータであればS2609に進み、そのデータ
が伴奏コードを示すデータであればS2612に進む。
【0093】S2609では、データMEM(AAD
D)の値を変数ΔATに代入する。S2610では、変
数ATの値に変数ΔATの値を加えた計算結果を改めて
変数ATに代入する。
D)の値を変数ΔATに代入する。S2610では、変
数ATの値に変数ΔATの値を加えた計算結果を改めて
変数ATに代入する。
【0094】S2611では、変数ATの値を図6に示
す音楽データバッファの領域ATに格納し、その後にS
2607へ戻る。S2612では、データMEM(AA
DD)の値を変数AEVENTに代入する。
す音楽データバッファの領域ATに格納し、その後にS
2607へ戻る。S2612では、データMEM(AA
DD)の値を変数AEVENTに代入する。
【0095】S2613では、変数AEVENTの値を
図6に示す音楽データバッファの領域AEVENTに格
納し、その後は今回の伴奏再生処理を終了し、図9にお
いての次の処理(タイマ処理の終了)に進む。
図6に示す音楽データバッファの領域AEVENTに格
納し、その後は今回の伴奏再生処理を終了し、図9にお
いての次の処理(タイマ処理の終了)に進む。
【0096】[3.仕様データ処理]次に、前述した本
装置全体の制御処理でS1008(図8)として示した
仕様データ処理を説明する。仕様データ処理の処理内容
を示すフローチャートを図16に示す。
装置全体の制御処理でS1008(図8)として示した
仕様データ処理を説明する。仕様データ処理の処理内容
を示すフローチャートを図16に示す。
【0097】図4に示した仕様データテーブルでは、そ
の各欄を参照すると分かるように、大別して「音源」、
「楽器」、「FDD」の3種の命令定義が用いられてい
る。仕様処理では、本装置全体の制御処理でのS100
8(図8)においてROM13に格納されている仕様デ
ータテーブルから読み出した命令定義の内容を調べ、こ
の3種のうちのいずれであるかを判別する。この結果、
仕様データテーブルから読み出した命令定義が 「音
源」(S3001の判定結果がYes)ならば音源処理
を実行し(S3002)、「楽器」(S3003の判定
結果がYes)ならば楽器処理を実行し(S300
4)、「FDD」(S3005の判定結果がYes)な
らばFDD処理を実行する(S3006)。そして、各
処理が終了したのであれば、今回の仕様処理を終了して
図8においての次の処理に進む。
の各欄を参照すると分かるように、大別して「音源」、
「楽器」、「FDD」の3種の命令定義が用いられてい
る。仕様処理では、本装置全体の制御処理でのS100
8(図8)においてROM13に格納されている仕様デ
ータテーブルから読み出した命令定義の内容を調べ、こ
の3種のうちのいずれであるかを判別する。この結果、
仕様データテーブルから読み出した命令定義が 「音
源」(S3001の判定結果がYes)ならば音源処理
を実行し(S3002)、「楽器」(S3003の判定
結果がYes)ならば楽器処理を実行し(S300
4)、「FDD」(S3005の判定結果がYes)な
らばFDD処理を実行する(S3006)。そして、各
処理が終了したのであれば、今回の仕様処理を終了して
図8においての次の処理に進む。
【0098】また、仕様データテーブルから読み出した
命令定義がこれらのいずれとも異なるものである場合
(S3001、S3003、S3005の判定結果がい
ずれもNo)、例えば「無視」が定義されていたのであ
れば、何ら処理を行なわずに図8においての次の処理に
進む。
命令定義がこれらのいずれとも異なるものである場合
(S3001、S3003、S3005の判定結果がい
ずれもNo)、例えば「無視」が定義されていたのであ
れば、何ら処理を行なわずに図8においての次の処理に
進む。
【0099】以下、仕様データ処理において実行される
音源処理、楽器処理、FDD処理の3つの処理の詳細に
ついて説明する。 [4.音源処理]前述した仕様データ処理(図16)に
おいて実行される第1の処理である音源処理は、音源2
0で発音させる音の音色、基準の音高、エンベロープ等
の各要素の設定などを行なう処理である。音源処理の処
理内容を示すフローチャートを図17に示す。
音源処理、楽器処理、FDD処理の3つの処理の詳細に
ついて説明する。 [4.音源処理]前述した仕様データ処理(図16)に
おいて実行される第1の処理である音源処理は、音源2
0で発音させる音の音色、基準の音高、エンベロープ等
の各要素の設定などを行なう処理である。音源処理の処
理内容を示すフローチャートを図17に示す。
【0100】図4に示した仕様データテーブルでは、音
源処理の実行命令の定義として、「音源(選択)」、
「音源 (音色)」、「音源(ピッチ)」、「音源(フ
ィルタ)」、「音源(エンベロープ)」、「音源(変
調)」、「音源(鍵盤)」という7種の命令定義がなさ
れている。図17に示したフローチャートは、本装置全
体の制御処理でのS1008(図8)においてROM1
3に格納されている仕様データテーブルから読み出した
命令定義の内容が、この7種のうちのいずれであるかを
判別する。この結果、仕様データテーブルから読み出し
た命令定義が「音源(選択)」(S4001の判定結果
がYes)ならば音源選択処理を実行し(S400
2)、「音源(音色)」(S4003の判定結果がYe
s)ならば音源音色処理を実行し(S4004)、「音
源(ピッチ)」(S4005の判定結果がYes)なら
ば音源ピッチ処理を実行し(S4006)、「音源(フ
ィルタ)」(S4007の判定結果がYes)ならば音
源フィルタ処理を実行し(S4008)、「音源(エン
ベロープ)」(S4009の判定結果がYes)ならば
音源エンベロープ処理を実行し(S4010)、「音源
(変調)」(S4011の判定結果がYes)ならば音
源変調処理を実行し(S4012)、「音源(鍵盤)」
(S4013の判定結果がYes)ならば音源鍵盤処理
を実行する(S4014)。そして、各処理が終了した
のであれば今回の音源処理を終了し、図16に示す仕様
データ処理へ戻る。
源処理の実行命令の定義として、「音源(選択)」、
「音源 (音色)」、「音源(ピッチ)」、「音源(フ
ィルタ)」、「音源(エンベロープ)」、「音源(変
調)」、「音源(鍵盤)」という7種の命令定義がなさ
れている。図17に示したフローチャートは、本装置全
体の制御処理でのS1008(図8)においてROM1
3に格納されている仕様データテーブルから読み出した
命令定義の内容が、この7種のうちのいずれであるかを
判別する。この結果、仕様データテーブルから読み出し
た命令定義が「音源(選択)」(S4001の判定結果
がYes)ならば音源選択処理を実行し(S400
2)、「音源(音色)」(S4003の判定結果がYe
s)ならば音源音色処理を実行し(S4004)、「音
源(ピッチ)」(S4005の判定結果がYes)なら
ば音源ピッチ処理を実行し(S4006)、「音源(フ
ィルタ)」(S4007の判定結果がYes)ならば音
源フィルタ処理を実行し(S4008)、「音源(エン
ベロープ)」(S4009の判定結果がYes)ならば
音源エンベロープ処理を実行し(S4010)、「音源
(変調)」(S4011の判定結果がYes)ならば音
源変調処理を実行し(S4012)、「音源(鍵盤)」
(S4013の判定結果がYes)ならば音源鍵盤処理
を実行する(S4014)。そして、各処理が終了した
のであれば今回の音源処理を終了し、図16に示す仕様
データ処理へ戻る。
【0101】また、仕様データテーブルから読み出した
「音源」の命令定義がこれらのいずれとも異なるもので
あるならば(S4001からS4013にかけてのうち
の判定処理の判定結果がいずれもNo)、本装置全体の
制御処理でのS1008(図8)においての命令定義の
読み出しを失敗したものと判断し、今回の音源処理を終
了して図16に示す仕様データ処理へ戻る。
「音源」の命令定義がこれらのいずれとも異なるもので
あるならば(S4001からS4013にかけてのうち
の判定処理の判定結果がいずれもNo)、本装置全体の
制御処理でのS1008(図8)においての命令定義の
読み出しを失敗したものと判断し、今回の音源処理を終
了して図16に示す仕様データ処理へ戻る。
【0102】以下、図17に示されている各処理の詳細
について説明する。 [4−1.音源選択処理]前述した音源処理のS400
2(図17)において実行される音源選択処理は、エン
コーダ19に対する操作に基づいて音源20で発音させ
る音の音色を設定する処理である。
について説明する。 [4−1.音源選択処理]前述した音源処理のS400
2(図17)において実行される音源選択処理は、エン
コーダ19に対する操作に基づいて音源20で発音させ
る音の音色を設定する処理である。
【0103】音源選択処理の処理内容を示すフローチャ
ートを図18に示す。また、図18に示す処理の詳細を
図19に示す。図4に示した仕様データテーブルでは、
音源選択処理の実行命令には、更に細かく「音源(選
択、音色)」、「音源(選択、ピッチ)」、「音源(選
択、フィルタ)」、「音源(選択、エンベロープ)」、
「音源(選択、変調)」、「音源(選択、回転値)」と
いう6種の命令定義がある。そこで、図18に示した音
源選択処理では、本装置全体の制御処理でのS1008
(図8)においてROM13に格納されている仕様デー
タテーブルから読み出した命令定義の内容が、この6種
のうちのいずれであるかを判別する。
ートを図18に示す。また、図18に示す処理の詳細を
図19に示す。図4に示した仕様データテーブルでは、
音源選択処理の実行命令には、更に細かく「音源(選
択、音色)」、「音源(選択、ピッチ)」、「音源(選
択、フィルタ)」、「音源(選択、エンベロープ)」、
「音源(選択、変調)」、「音源(選択、回転値)」と
いう6種の命令定義がある。そこで、図18に示した音
源選択処理では、本装置全体の制御処理でのS1008
(図8)においてROM13に格納されている仕様デー
タテーブルから読み出した命令定義の内容が、この6種
のうちのいずれであるかを判別する。
【0104】この結果、仕様データテーブルから読み出
した命令定義が「音源(選択、音色)」(S4101の
判定結果がYes)ならば、音源(選択、音色)処理を
実行する(S4102)。音源(選択、音色)処理の詳
細は、図19(A)に示すように、変数SELに「0」
を代入する処理である(S4121)。
した命令定義が「音源(選択、音色)」(S4101の
判定結果がYes)ならば、音源(選択、音色)処理を
実行する(S4102)。音源(選択、音色)処理の詳
細は、図19(A)に示すように、変数SELに「0」
を代入する処理である(S4121)。
【0105】図18において、S4101の判定結果が
Noである場合に行われるS4103からS4110に
かけての処理は、S4101及びS4102の処理と同
様であり、仕様データテーブルから読み出した命令定義
の内容を判定し、「音源(選択、ピッチ)」(S410
3の判定結果がYes)ならば音源(選択、ピッチ)処
理(S4104)、すなわち変数SELに「1」を代入
する処理を実行し(S4131(図19(B)))、
「音源(選択、フィルタ)」(S4105の判定結果が
Yes)ならば音源(選択、フィルタ)処理 (S41
06)、すなわち変数SELに「2」を代入する処理を
実行し(S4141(図19(C)))、「音源(選
択、エンベロープ)」(S4107の判定結果がYe
s)ならば音源(選択、エンベロープ)処理(S410
8)、すなわち変数SELに「3」を代入する処理を実
行し(S4151(図19(D)))、「音源(選択、
変調)」(S4109の判定結果がYes)ならば音源
(選択、変調)処理(S4110)、すなわち変数SE
Lに「4」を代入する処理を実行する(S4161(図
19(E)))。以上の各処理が終了した後にはS41
11に進む。
Noである場合に行われるS4103からS4110に
かけての処理は、S4101及びS4102の処理と同
様であり、仕様データテーブルから読み出した命令定義
の内容を判定し、「音源(選択、ピッチ)」(S410
3の判定結果がYes)ならば音源(選択、ピッチ)処
理(S4104)、すなわち変数SELに「1」を代入
する処理を実行し(S4131(図19(B)))、
「音源(選択、フィルタ)」(S4105の判定結果が
Yes)ならば音源(選択、フィルタ)処理 (S41
06)、すなわち変数SELに「2」を代入する処理を
実行し(S4141(図19(C)))、「音源(選
択、エンベロープ)」(S4107の判定結果がYe
s)ならば音源(選択、エンベロープ)処理(S410
8)、すなわち変数SELに「3」を代入する処理を実
行し(S4151(図19(D)))、「音源(選択、
変調)」(S4109の判定結果がYes)ならば音源
(選択、変調)処理(S4110)、すなわち変数SE
Lに「4」を代入する処理を実行する(S4161(図
19(E)))。以上の各処理が終了した後にはS41
11に進む。
【0106】また、S4101からS4109にかけて
のうちの判定処理の判定結果がいずれもNoである場合
も、S4111に進み、本装置全体の制御処理でのS1
008(図8)においてROM13に格納されている仕
様データテーブルから読み出した命令定義の内容が、
「音源(選択、回転値)」であるか否かを判定する。こ
の判定結果がYesならばS4112に進み、音源(選
択、回転値)処理を実行し、その後は今回の音源選択処
理を終了して図17に示す音源処理へ戻る。一方、この
判定がNoであるならば、今回の音源選択処理を終了し
て図17に示す音源処理へ戻る。
のうちの判定処理の判定結果がいずれもNoである場合
も、S4111に進み、本装置全体の制御処理でのS1
008(図8)においてROM13に格納されている仕
様データテーブルから読み出した命令定義の内容が、
「音源(選択、回転値)」であるか否かを判定する。こ
の判定結果がYesならばS4112に進み、音源(選
択、回転値)処理を実行し、その後は今回の音源選択処
理を終了して図17に示す音源処理へ戻る。一方、この
判定がNoであるならば、今回の音源選択処理を終了し
て図17に示す音源処理へ戻る。
【0107】図18にS4112として示した音源(選
択、回転値)処理の処理内容を示すフローチャートを図
20に示す。まず、S4171において、変数SELの
値が「0」、すなわち、本装置に対して音源(選択、音
色)の命令がなされた状態であるか否かを判定し、判定
結果がYesならばS4172に進み、NoならばS4
174に進む。
択、回転値)処理の処理内容を示すフローチャートを図
20に示す。まず、S4171において、変数SELの
値が「0」、すなわち、本装置に対して音源(選択、音
色)の命令がなされた状態であるか否かを判定し、判定
結果がYesならばS4172に進み、NoならばS4
174に進む。
【0108】S4172では、RAM14に確保されて
いる領域TONENO.に格納されている値に変数SA
BUN(19)の値を加算した結果を改めて領域TON
ENO.に代入する。なお、図8のS1001に示した
イニシャライズでは、領域TONENO.は「0」が代
入される。また、変数SABUN(19)には、前述し
たように、エンコーダ19に対する操作量が格納されて
いる。
いる領域TONENO.に格納されている値に変数SA
BUN(19)の値を加算した結果を改めて領域TON
ENO.に代入する。なお、図8のS1001に示した
イニシャライズでは、領域TONENO.は「0」が代
入される。また、変数SABUN(19)には、前述し
たように、エンコーダ19に対する操作量が格納されて
いる。
【0109】S4173では、ROM13に格納されて
いるTONEデータ群から変数TONENO.の値で示
される音色データTONE(TONENO.)を読み出
し、RAM14に確保されている音色データバッファ内
の所定の領域TONE(図6(B)参照)に代入する。
その後、S4182に進む。
いるTONEデータ群から変数TONENO.の値で示
される音色データTONE(TONENO.)を読み出
し、RAM14に確保されている音色データバッファ内
の所定の領域TONE(図6(B)参照)に代入する。
その後、S4182に進む。
【0110】S4174では、変数SELの値が
「1」、すなわち、本装置に対して音源(選択、ピッ
チ)の命令がなされた状態であるか否かを判定し、判定
結果がYesならばS4175に進み、RAM14の音
色データバッファ内の所定の領域PITCHに格納され
ている値に変数SABUN(19)の値を加算した結果
を改めて領域PITCHに格納し、その後S4182に
進む。
「1」、すなわち、本装置に対して音源(選択、ピッ
チ)の命令がなされた状態であるか否かを判定し、判定
結果がYesならばS4175に進み、RAM14の音
色データバッファ内の所定の領域PITCHに格納され
ている値に変数SABUN(19)の値を加算した結果
を改めて領域PITCHに格納し、その後S4182に
進む。
【0111】S4174の判定結果がNoである場合に
行われるS4176からS4181にかけての処理はS
4174及びS4175の処理と同様である。つまり、
変数SELの値が「2」、すなわち本装置に対して音源
(選択、フィルタ)の命令がなされた状態である(S
4176の判定結果がYes)ならば、RAM14の音
色データバッファ内の所定の領域FILTERに格納さ
れている値に変数SABUN(19)の値を加算した結
果を改めて領域FILTERに格納する(S417
7)。また、変数SELの値が「3」、すなわち本装置
に対して音源(選択、エンベロープ)の命令がなされた
状態である(S4178の判定結果がYes)ならば、
RAM14の音色データバッファ内の所定の領域ENV
ELOPEに格納されている値に変数SABUN(1
9)の値を加算した結果を改めて領域ENVELOPE
に格納する(S4179)。また、変数SELの値が
「4」、すなわち本装置に対して音源(選択、変調)の
命令がなされた状態である(S4180の判定結果がY
es)ならば、RAM14の音色データバッファ内の所
定の領域MODULATIONに格納されている値に変
数SABUN(19)の値を加算した結果を改めて領域
MODULATIONに格納する(S4181)。S4
177、S4179、S4181の各処理を実行した後
にはS4182に進む。また、S4176、S417
8、S4180の各判定処理の結果がいずれもNoであ
るならば、今回の音源(選択、回転値)処理を終了して
図18に示す音源選択処理へ戻る。
行われるS4176からS4181にかけての処理はS
4174及びS4175の処理と同様である。つまり、
変数SELの値が「2」、すなわち本装置に対して音源
(選択、フィルタ)の命令がなされた状態である(S
4176の判定結果がYes)ならば、RAM14の音
色データバッファ内の所定の領域FILTERに格納さ
れている値に変数SABUN(19)の値を加算した結
果を改めて領域FILTERに格納する(S417
7)。また、変数SELの値が「3」、すなわち本装置
に対して音源(選択、エンベロープ)の命令がなされた
状態である(S4178の判定結果がYes)ならば、
RAM14の音色データバッファ内の所定の領域ENV
ELOPEに格納されている値に変数SABUN(1
9)の値を加算した結果を改めて領域ENVELOPE
に格納する(S4179)。また、変数SELの値が
「4」、すなわち本装置に対して音源(選択、変調)の
命令がなされた状態である(S4180の判定結果がY
es)ならば、RAM14の音色データバッファ内の所
定の領域MODULATIONに格納されている値に変
数SABUN(19)の値を加算した結果を改めて領域
MODULATIONに格納する(S4181)。S4
177、S4179、S4181の各処理を実行した後
にはS4182に進む。また、S4176、S417
8、S4180の各判定処理の結果がいずれもNoであ
るならば、今回の音源(選択、回転値)処理を終了して
図18に示す音源選択処理へ戻る。
【0112】S4182では、RAM14に確保されて
いる音色データバッファに現在格納されている音色の設
定データを音源20に送付して音色の設定を行なわせ
る。S4183では、前ステップで音源20に送付した
音色の設定データに従って、LCD15に現在表示させ
ている音源パラメータ変更画面(図3(e))の表示数
値を変更する。その後は、今回の音源(選択、回転値)
処理を終了して図18に示す音源選択処理へ戻る。
いる音色データバッファに現在格納されている音色の設
定データを音源20に送付して音色の設定を行なわせ
る。S4183では、前ステップで音源20に送付した
音色の設定データに従って、LCD15に現在表示させ
ている音源パラメータ変更画面(図3(e))の表示数
値を変更する。その後は、今回の音源(選択、回転値)
処理を終了して図18に示す音源選択処理へ戻る。
【0113】[4−2.音源音色処理]前述した音源処
理のS4004(図17)において実行される音源音色
処理は、スライダ17あるいはスイッチ18に対する操
作に基づいて、ROM13に格納されているTONEデ
ータ群から音源20で発音させる音の音色を設定するT
ONEデータを選択する処理である。図4に示す仕様デ
ータテーブルにおいては音源パラメータ変更の状態であ
る場合のスライダ17a及びスイッチ18k、18n
に、この処理の実行を命令する定義がされており、スイ
ッチ18kには「音源(音色、加算)」、スイッチ18
nには「音源(音色、減算)」、そしてスライダ17a
には「音源(音色、値)」の各命令が定義されている。
理のS4004(図17)において実行される音源音色
処理は、スライダ17あるいはスイッチ18に対する操
作に基づいて、ROM13に格納されているTONEデ
ータ群から音源20で発音させる音の音色を設定するT
ONEデータを選択する処理である。図4に示す仕様デ
ータテーブルにおいては音源パラメータ変更の状態であ
る場合のスライダ17a及びスイッチ18k、18n
に、この処理の実行を命令する定義がされており、スイ
ッチ18kには「音源(音色、加算)」、スイッチ18
nには「音源(音色、減算)」、そしてスライダ17a
には「音源(音色、値)」の各命令が定義されている。
【0114】音源音色処理の処理内容を示すフローチャ
ートを図21に示す。同図に示したフローチャートで
は、本装置全体の制御処理でのS1008(図8)にお
いてROM13に格納されている仕様データテーブルか
ら読み出した命令定義の内容を調べ、「音源(音色、加
算)」(S4201の判定結果がYes)であれば音源
(音色、加算)処理を実行し(S4202)、「音源
(音色、減算)」(S4203の判定結果がYes)で
あれば音源(音色、減算)処理を実行し(S420
4)、「音源(音色、値)」(S4205の判定結果が
Yes)であれば音源(音色、値)処理を実行する(S
4206)。そして、S4202、S4204、S42
06のいずれかの処理を実行した後、または、S420
1、S4203、S4205の各判定処理の結果がいず
れもNoである場合には、今回の音源音色処理を終了し
て図17に示す音源処理へ戻る。
ートを図21に示す。同図に示したフローチャートで
は、本装置全体の制御処理でのS1008(図8)にお
いてROM13に格納されている仕様データテーブルか
ら読み出した命令定義の内容を調べ、「音源(音色、加
算)」(S4201の判定結果がYes)であれば音源
(音色、加算)処理を実行し(S4202)、「音源
(音色、減算)」(S4203の判定結果がYes)で
あれば音源(音色、減算)処理を実行し(S420
4)、「音源(音色、値)」(S4205の判定結果が
Yes)であれば音源(音色、値)処理を実行する(S
4206)。そして、S4202、S4204、S42
06のいずれかの処理を実行した後、または、S420
1、S4203、S4205の各判定処理の結果がいず
れもNoである場合には、今回の音源音色処理を終了し
て図17に示す音源処理へ戻る。
【0115】図21に示した音源(音色、加算)処理
(S4202)、音源(音色、減算)処理(S420
4)音源 (音色、値)処理(S4206)の詳細を、
図22にフローチャートで示す。
(S4202)、音源(音色、減算)処理(S420
4)音源 (音色、値)処理(S4206)の詳細を、
図22にフローチャートで示す。
【0116】まず、同図(A)の音源(音色、加算)処
理を説明する。S4211では、RAM14に確保され
ている領域TONENO.に格納されている値をインク
リメント(1だけ加算)する。
理を説明する。S4211では、RAM14に確保され
ている領域TONENO.に格納されている値をインク
リメント(1だけ加算)する。
【0117】S4212では、ROM13に格納されて
いるTONEデータ群から領域TONENO.の値で示
される音色データTONE(TONENO.)を読み出
し、RAM14に確保されている音色データバッファ内
の所定の領域TONE(図6参照)に代入する。
いるTONEデータ群から領域TONENO.の値で示
される音色データTONE(TONENO.)を読み出
し、RAM14に確保されている音色データバッファ内
の所定の領域TONE(図6参照)に代入する。
【0118】S4212では、RAM14に確保されて
いる音色データバッファに現在格納されている音色の設
定データを音源20に送付する。S4213では、前ス
テップで音源20に送付した音色の設定データに従っ
て、LCD15に現在表示させている音源パラメータ変
更画面(図3(e))の表示数値を変更する。その後
は、今回の音源(音色、加算)処理を終了して図21に
示す音源音色処理へ戻る。
いる音色データバッファに現在格納されている音色の設
定データを音源20に送付する。S4213では、前ス
テップで音源20に送付した音色の設定データに従っ
て、LCD15に現在表示させている音源パラメータ変
更画面(図3(e))の表示数値を変更する。その後
は、今回の音源(音色、加算)処理を終了して図21に
示す音源音色処理へ戻る。
【0119】図22(B)に示す音源(音色、減算)処
理は、S4221で領域TONENO.に格納されてい
る値をデクリメント(1だけ減算)することを除き、S
4222からS4224までの各処理が同図(A)に示
した音源(音色、加算)処理のS4212からS421
4までの各処理と同一である。
理は、S4221で領域TONENO.に格納されてい
る値をデクリメント(1だけ減算)することを除き、S
4222からS4224までの各処理が同図(A)に示
した音源(音色、加算)処理のS4212からS421
4までの各処理と同一である。
【0120】また、図22(C)に示す音源(音色、
値)処理は、S4231で領域TONENO.の値に変
数SABUN(16)の値を加算した結果を改めて領域
TONENO.に格納することを除き、S4232から
S4234までの各処理が同図(A)に示した音源(音
色、加算)処理のS4212からS4214までの各処
理と同一である。
値)処理は、S4231で領域TONENO.の値に変
数SABUN(16)の値を加算した結果を改めて領域
TONENO.に格納することを除き、S4232から
S4234までの各処理が同図(A)に示した音源(音
色、加算)処理のS4212からS4214までの各処
理と同一である。
【0121】[4−3.音源ピッチ処理]前述した音源
処理のS4006(図17)において実行される音源ピ
ッチ処理は、スライダ17あるいはスイッチ18に対す
る操作に基づいて、音源20で発音させる音の基準のピ
ッチを設定する処理である。図4に示す仕様データテー
ブルにおいては音源パラメータ変更の状態である場合の
スライダ17b及びスイッチ18l、18oに、この処
理の実行を命令する定義がされており、スイッチ18l
には「音源(ピッチ、加算)」、スイッチ18oには
「音源(ピッチ、減算)」、そしてスライダ17bには
「音源(ピッチ、値)」の各命令が定義されている。
処理のS4006(図17)において実行される音源ピ
ッチ処理は、スライダ17あるいはスイッチ18に対す
る操作に基づいて、音源20で発音させる音の基準のピ
ッチを設定する処理である。図4に示す仕様データテー
ブルにおいては音源パラメータ変更の状態である場合の
スライダ17b及びスイッチ18l、18oに、この処
理の実行を命令する定義がされており、スイッチ18l
には「音源(ピッチ、加算)」、スイッチ18oには
「音源(ピッチ、減算)」、そしてスライダ17bには
「音源(ピッチ、値)」の各命令が定義されている。
【0122】音源ピッチ処理の処理内容を示すフローチ
ャートを図23に示す。同図にフローチャートで示した
処理内容は、図21に示した音源音色処理に類似してお
り、S4301、S4303、S4305の各判定処理
により、本装置全体の制御処理において仕様データテー
ブルから読み出した命令定義の内容に応じて、音源(ピ
ッチ、加算)処理(S4302)、音源(ピッチ、減
算)処理(S4304)、音源(ピッチ、値)処理(S
4306)を適宜選択して実行する。そして、上述した
いずれかの処理を実行した後、または、上述した各判定
処理の結果がいずれもNoである場合には、今回の音源
ピッチ処理を終了して図17に示す音源処理へ戻る。
ャートを図23に示す。同図にフローチャートで示した
処理内容は、図21に示した音源音色処理に類似してお
り、S4301、S4303、S4305の各判定処理
により、本装置全体の制御処理において仕様データテー
ブルから読み出した命令定義の内容に応じて、音源(ピ
ッチ、加算)処理(S4302)、音源(ピッチ、減
算)処理(S4304)、音源(ピッチ、値)処理(S
4306)を適宜選択して実行する。そして、上述した
いずれかの処理を実行した後、または、上述した各判定
処理の結果がいずれもNoである場合には、今回の音源
ピッチ処理を終了して図17に示す音源処理へ戻る。
【0123】図23のS4302、S4304、S43
06に示した各処理の詳細を、図24にフローチャート
で示す。図24(A)に示す音源(ピッチ、加算)処理
は、S4311でRAM14に確保されている音色デー
タバッファ内の所定の領域PITCH(図6参照)の値
をインクリメントすることを除き、S4312及びS4
313の処理が図22(A)に示した音源(音色、加
算)処理のS4213及びS4214の処理と同一であ
る。
06に示した各処理の詳細を、図24にフローチャート
で示す。図24(A)に示す音源(ピッチ、加算)処理
は、S4311でRAM14に確保されている音色デー
タバッファ内の所定の領域PITCH(図6参照)の値
をインクリメントすることを除き、S4312及びS4
313の処理が図22(A)に示した音源(音色、加
算)処理のS4213及びS4214の処理と同一であ
る。
【0124】また、図24(B)に示す音源(ピッチ、
減算)処理は、S4321で音色データバッファ内の領
域PITCHの値をデクリメントすることを除き、S4
322及びS4323の処理が同図(A)に示した音源
(ピッチ、加算)処理のS4212及びS4213の
処理と同一であり、同図(C)に示す音源(ピッチ、
値)処理も、S4331で領域PITCHの値に変数S
ABUN(17)の値を加算した結果を改めて領域PI
TCHに格納することを除き、S4332及びS433
3の処理が同図(A)に示した音源(ピッチ、加算)処
理のS4312及びS4213の処理と同一である。
減算)処理は、S4321で音色データバッファ内の領
域PITCHの値をデクリメントすることを除き、S4
322及びS4323の処理が同図(A)に示した音源
(ピッチ、加算)処理のS4212及びS4213の
処理と同一であり、同図(C)に示す音源(ピッチ、
値)処理も、S4331で領域PITCHの値に変数S
ABUN(17)の値を加算した結果を改めて領域PI
TCHに格納することを除き、S4332及びS433
3の処理が同図(A)に示した音源(ピッチ、加算)処
理のS4312及びS4213の処理と同一である。
【0125】[4−4.音源フィルタ処理]前述した音
源処理のS4008(図17)において実行される音源
フィルタ処理は、スライダ17あるいはスイッチ18に
対する操作に基づいて、音源20で発音させた音の信号
を通過させるフィルタの特性を設定する処理である。図
4に示す仕様データテーブルにおいては音源パラメータ
変更の状態である場合のスライダ17c及びスイッチ1
8m、18pに、この処理の実行を命令する定義がされ
ており、スイッチ18mには「音源(フィルタ、加
算)」、スイッチ18pには「音源(フィルタ、減
算)」、そしてスライダ17cには「音源(フィルタ、
値)」の各命令が定義されている。
源処理のS4008(図17)において実行される音源
フィルタ処理は、スライダ17あるいはスイッチ18に
対する操作に基づいて、音源20で発音させた音の信号
を通過させるフィルタの特性を設定する処理である。図
4に示す仕様データテーブルにおいては音源パラメータ
変更の状態である場合のスライダ17c及びスイッチ1
8m、18pに、この処理の実行を命令する定義がされ
ており、スイッチ18mには「音源(フィルタ、加
算)」、スイッチ18pには「音源(フィルタ、減
算)」、そしてスライダ17cには「音源(フィルタ、
値)」の各命令が定義されている。
【0126】音源フィルタ処理の処理内容を示すフロー
チャートを図25に示す。同図にフローチャートで示し
た処理内容は、図23に示した音源ピッチ処理に類似し
ており、S4401、S4403、S4405の各判定
処理により、仕様データテーブルから読み出した命令定
義の内容に応じて、音源(フィルタ、加算)処理(S4
402)、音源(フィルタ、減算)処理(S440
4)、音源(フィルタ、値)処理(S4406)を適宜
選択して実行する。そして、上述したいずれかの処理を
実行した後、または、上述した各判定処理の結果がいず
れもNoである場合には、今回の音源フィルタ処理を終
了して図17に示す音源処理へ戻る。
チャートを図25に示す。同図にフローチャートで示し
た処理内容は、図23に示した音源ピッチ処理に類似し
ており、S4401、S4403、S4405の各判定
処理により、仕様データテーブルから読み出した命令定
義の内容に応じて、音源(フィルタ、加算)処理(S4
402)、音源(フィルタ、減算)処理(S440
4)、音源(フィルタ、値)処理(S4406)を適宜
選択して実行する。そして、上述したいずれかの処理を
実行した後、または、上述した各判定処理の結果がいず
れもNoである場合には、今回の音源フィルタ処理を終
了して図17に示す音源処理へ戻る。
【0127】図25のS4402、S4404、S44
06に示した各処理の詳細を、図26にフローチャート
で示す。図26に示すS4411からS4433にかけ
ての各処理も、図24に示したS4311からS433
3にかけての各処理に類似しており、図26(A)に示
す音源(フィルタ、加算)処理でS4411においてR
AM14に確保されている音色データバッファ内の所定
の領域FILTERの値をインクリメントする点、同図
(B)に示す音源(フィルタ、減算)処理でS4421
において音色データバッファ内の領域FILTERの値
をデクリメントする点、同図(C)に示す音源(フィル
タ、値)処理でS4431において領域FILTERの
値に変数SABUN(18)の値を加算した結果を改め
て領域FILTERに格納する点で異なっているのみで
ある。
06に示した各処理の詳細を、図26にフローチャート
で示す。図26に示すS4411からS4433にかけ
ての各処理も、図24に示したS4311からS433
3にかけての各処理に類似しており、図26(A)に示
す音源(フィルタ、加算)処理でS4411においてR
AM14に確保されている音色データバッファ内の所定
の領域FILTERの値をインクリメントする点、同図
(B)に示す音源(フィルタ、減算)処理でS4421
において音色データバッファ内の領域FILTERの値
をデクリメントする点、同図(C)に示す音源(フィル
タ、値)処理でS4431において領域FILTERの
値に変数SABUN(18)の値を加算した結果を改め
て領域FILTERに格納する点で異なっているのみで
ある。
【0128】[4−5.音源エンベロープ処理]前述し
た音源処理のS4010(図17)において実行される
音源エンベロープ処理は、スライダ17あるいはスイッ
チ18に対する操作に基づいて、音源20で発音させる
音のエンベロープ特性を設定する処理である。
た音源処理のS4010(図17)において実行される
音源エンベロープ処理は、スライダ17あるいはスイッ
チ18に対する操作に基づいて、音源20で発音させる
音のエンベロープ特性を設定する処理である。
【0129】なお、図4に示す仕様データテーブルにお
いては、本装置の動作モードが音源パラメータ変更の状
態である場合にこの設定機能を割り当てようとするスラ
イダ17あるいはスイッチ18に未使用のものが残され
ていないので、代わりに本装置の動作モードが自動演奏
停止の状態である場合にこの設定機能を割り当ててい
る。具体的には、図4に示す仕様データテーブルにおい
て、自動演奏停止の状態である場合のスライダ17b及
びスイッチ18l、18oに、この処理の実行を命令す
る定義がされており、スイッチ18lには「音源(エン
ベロープ、加算)」、スイッチ18oには「音源(エン
ベロープ、減算)」、そしてスライダ17bには「音源
(エンベロープ、値)」の各命令が定義されている。
いては、本装置の動作モードが音源パラメータ変更の状
態である場合にこの設定機能を割り当てようとするスラ
イダ17あるいはスイッチ18に未使用のものが残され
ていないので、代わりに本装置の動作モードが自動演奏
停止の状態である場合にこの設定機能を割り当ててい
る。具体的には、図4に示す仕様データテーブルにおい
て、自動演奏停止の状態である場合のスライダ17b及
びスイッチ18l、18oに、この処理の実行を命令す
る定義がされており、スイッチ18lには「音源(エン
ベロープ、加算)」、スイッチ18oには「音源(エン
ベロープ、減算)」、そしてスライダ17bには「音源
(エンベロープ、値)」の各命令が定義されている。
【0130】音源エンベロープ処理の処理内容を示すフ
ローチャートを図27に示す。同図にフローチャートで
示した処理内容は、図23に示した音源ピッチ処理に類
似しており、S4501、S4503、S4505の各
判定処理により、仕様データテーブルから読み出した命
令定義の内容に応じて、音源(エンベロープ、加算)処
理(S4502)、音源(エンベロープ、減算)処理
(S4504)、音源(エンベロープ、値)処理 (S
4506)を適宜選択して実行する。そして、上述した
いずれかの処理を実行した後、または、上述した各判定
処理の結果がいずれもNoである場合には、今回の音源
エンベロープ処理を終了して図17に示す音源処理へ戻
る。
ローチャートを図27に示す。同図にフローチャートで
示した処理内容は、図23に示した音源ピッチ処理に類
似しており、S4501、S4503、S4505の各
判定処理により、仕様データテーブルから読み出した命
令定義の内容に応じて、音源(エンベロープ、加算)処
理(S4502)、音源(エンベロープ、減算)処理
(S4504)、音源(エンベロープ、値)処理 (S
4506)を適宜選択して実行する。そして、上述した
いずれかの処理を実行した後、または、上述した各判定
処理の結果がいずれもNoである場合には、今回の音源
エンベロープ処理を終了して図17に示す音源処理へ戻
る。
【0131】図27のS4502、S4504、S45
06に示した各処理の詳細を、図28にフローチャート
で示す。図28に示すS4511からS4533にかけ
ての各処理も、図24に示したS4311からS433
3にかけての各処理に類似しており、図28(A)に示
す音源(エンベロープ、加算)処理でS4511におい
てRAM14に確保されている音色データバッファ内の
所定の領域ENVELOPEの値をインクリメントする
点、同図(B)に示す音源(エンベロープ、減算)処理
でS4521において音色データバッファ内の領域EN
VELOPEの値をデクリメントする点、同図(C)に
示す音源(エンベロープ、値)処理でS4531におい
て領域ENVELOPEの値に変数SABUN(17)
の値を加算した結果を改めて領域ENVELOPEに格
納する点で異なっているのみである。なお、S451
3、S4523、S4533において、各々の前ステッ
プで音源20に送付した音色の設定データに従って表示
数値を変更するのは、LCD15に現在表示させている
自動演奏停止画面ではなく、音源パラメータ変更画面と
して表示させるための数値表示である。
06に示した各処理の詳細を、図28にフローチャート
で示す。図28に示すS4511からS4533にかけ
ての各処理も、図24に示したS4311からS433
3にかけての各処理に類似しており、図28(A)に示
す音源(エンベロープ、加算)処理でS4511におい
てRAM14に確保されている音色データバッファ内の
所定の領域ENVELOPEの値をインクリメントする
点、同図(B)に示す音源(エンベロープ、減算)処理
でS4521において音色データバッファ内の領域EN
VELOPEの値をデクリメントする点、同図(C)に
示す音源(エンベロープ、値)処理でS4531におい
て領域ENVELOPEの値に変数SABUN(17)
の値を加算した結果を改めて領域ENVELOPEに格
納する点で異なっているのみである。なお、S451
3、S4523、S4533において、各々の前ステッ
プで音源20に送付した音色の設定データに従って表示
数値を変更するのは、LCD15に現在表示させている
自動演奏停止画面ではなく、音源パラメータ変更画面と
して表示させるための数値表示である。
【0132】[4−6.音源変調処理]前述した音源処
理のS4012(図17)において実行される音源変調
処理は、スライダ17あるいはスイッチ18に対する操
作に基づいて、音源20で発音させる音に付加する変調
(モジュレーション)の深さを設定する処理である。
理のS4012(図17)において実行される音源変調
処理は、スライダ17あるいはスイッチ18に対する操
作に基づいて、音源20で発音させる音に付加する変調
(モジュレーション)の深さを設定する処理である。
【0133】なお、図4に示す仕様データテーブルにお
いては、前述した音源エンベロープ処理実行の命令定義
と同様、本装置の動作モードが自動演奏中の状態である
場合にこの設定機能を割り当てており、図4に示す仕様
データテーブルにおいて、自動演奏中の状態である場合
のスライダ17c及びスイッチ18m、18pに、この
処理の実行を命令する定義がされており、スイッチ18
mには「音源(変調、加算)」、スイッチ18pには
「音源(変調、減算)」、そしてスライダ17cには
「音源(変調、値)」の各命令が定義されている。
いては、前述した音源エンベロープ処理実行の命令定義
と同様、本装置の動作モードが自動演奏中の状態である
場合にこの設定機能を割り当てており、図4に示す仕様
データテーブルにおいて、自動演奏中の状態である場合
のスライダ17c及びスイッチ18m、18pに、この
処理の実行を命令する定義がされており、スイッチ18
mには「音源(変調、加算)」、スイッチ18pには
「音源(変調、減算)」、そしてスライダ17cには
「音源(変調、値)」の各命令が定義されている。
【0134】音源変調処理の処理内容を示すフローチャ
ートを図29に示す。同図にフローチャートで示した処
理内容は、図27に示した音源エンベロープ処理に類似
しており、S4601、S4603、S4605の各判
定処理により、仕様データテーブルから読み出した命令
定義の内容に応じて、音源(変調、加算)処理(S46
02)、音源(変調、減算)処理(S4604)、音源
(変調、値)処理(S4606)を適宜選択して実行す
る。そして、上述したいずれかの処理を実行した後、ま
たは、上述した各判定処理の結果がいずれもNoである
場合には、今回の音源変調処理を終了して図17に示す
音源処理へ戻る。
ートを図29に示す。同図にフローチャートで示した処
理内容は、図27に示した音源エンベロープ処理に類似
しており、S4601、S4603、S4605の各判
定処理により、仕様データテーブルから読み出した命令
定義の内容に応じて、音源(変調、加算)処理(S46
02)、音源(変調、減算)処理(S4604)、音源
(変調、値)処理(S4606)を適宜選択して実行す
る。そして、上述したいずれかの処理を実行した後、ま
たは、上述した各判定処理の結果がいずれもNoである
場合には、今回の音源変調処理を終了して図17に示す
音源処理へ戻る。
【0135】図29のS4602、S4604、S46
06に示した各処理の詳細を、図30にフローチャート
で示す。図30に示すS4611からS4633にかけ
ての各処理も、図28に示したS4511からS453
3にかけての各処理に類似しており、図30(A)に示
す音源(変調、加算)処理でS4611においてRAM
14に確保されている音色データバッファ内の所定の領
域MODULATIONの値をインクリメントする点、
同図(B)に示す音源(変調、減算)処理でS4621
において音色データバッファ内の領域MODULATI
ONの値をデクリメントする点、同図(C)に示す音源
(変調、値)処理でS4631において領域MODUL
ATIONの値に変数SABUN(18)の値を加算し
た結果を改めて領域MODULATIONに格納する点
で異なっているのみである。
06に示した各処理の詳細を、図30にフローチャート
で示す。図30に示すS4611からS4633にかけ
ての各処理も、図28に示したS4511からS453
3にかけての各処理に類似しており、図30(A)に示
す音源(変調、加算)処理でS4611においてRAM
14に確保されている音色データバッファ内の所定の領
域MODULATIONの値をインクリメントする点、
同図(B)に示す音源(変調、減算)処理でS4621
において音色データバッファ内の領域MODULATI
ONの値をデクリメントする点、同図(C)に示す音源
(変調、値)処理でS4631において領域MODUL
ATIONの値に変数SABUN(18)の値を加算し
た結果を改めて領域MODULATIONに格納する点
で異なっているのみである。
【0136】[4−7.音源鍵盤処理]前述した音源処
理のS4014(図17)において実行される音源鍵盤
処理は、前述した鍵盤処理で取得した鍵盤21に対する
演奏操作に基づいて音源20へ発音指示を行なう、演奏
操作の示している伴奏コードを取得する、等の処理を行
なうものである。
理のS4014(図17)において実行される音源鍵盤
処理は、前述した鍵盤処理で取得した鍵盤21に対する
演奏操作に基づいて音源20へ発音指示を行なう、演奏
操作の示している伴奏コードを取得する、等の処理を行
なうものである。
【0137】図4に示す仕様データテーブルにおいてこ
の処理の実行を命令する「音源(鍵盤)」の命令定義
は、本装置の動作モードが、起動時、自動演奏停止、自
動演奏中、音源パラメータ変更、演奏パラメータ変更の
状態である場合の鍵盤21に対して割り当てられてい
る。
の処理の実行を命令する「音源(鍵盤)」の命令定義
は、本装置の動作モードが、起動時、自動演奏停止、自
動演奏中、音源パラメータ変更、演奏パラメータ変更の
状態である場合の鍵盤21に対して割り当てられてい
る。
【0138】音源鍵盤処理の処理内容を示すフローチャ
ートを図31に示す。まず、S4701において、鍵盤
21において操作された鍵の鍵域を判別する。その鍵域
が、通常鍵盤21の左部である「伴奏演奏」に割り当て
られている鍵域であるならばS4702に進み、その他
の場合にはS4711に進む。
ートを図31に示す。まず、S4701において、鍵盤
21において操作された鍵の鍵域を判別する。その鍵域
が、通常鍵盤21の左部である「伴奏演奏」に割り当て
られている鍵域であるならばS4702に進み、その他
の場合にはS4711に進む。
【0139】S4702では、操作された鍵の操作内容
を判別する。操作内容が押鍵操作であればS4703に
進み、離鍵操作であればS4707に進む。S4703
では、変数ONCの値に「1」を加算した結果を変数O
NCに代入する。なお、図8のS1001に示したイニ
シャライズの処理において、変数ONCには「0」が代
入される。
を判別する。操作内容が押鍵操作であればS4703に
進み、離鍵操作であればS4707に進む。S4703
では、変数ONCの値に「1」を加算した結果を変数O
NCに代入する。なお、図8のS1001に示したイニ
シャライズの処理において、変数ONCには「0」が代
入される。
【0140】S4704では、押鍵された鍵の音高を変
数CODENOTE(ONC)に代入する。S4705
では、音高を示すデータが代入されている配列CODE
NOTE()の全体を調べてそれらの音高に対応するコ
ード名を判定し、続くS4706でそのコード名をCO
DEレジスタに代入する。このCODEレジスタの内容
は、前述した伴奏再生処理において読み出され、音源2
0で対応する和音が発音される。この処理の後は今回の
音源鍵盤処理を終了して図17に示す音源処理へ戻る。
数CODENOTE(ONC)に代入する。S4705
では、音高を示すデータが代入されている配列CODE
NOTE()の全体を調べてそれらの音高に対応するコ
ード名を判定し、続くS4706でそのコード名をCO
DEレジスタに代入する。このCODEレジスタの内容
は、前述した伴奏再生処理において読み出され、音源2
0で対応する和音が発音される。この処理の後は今回の
音源鍵盤処理を終了して図17に示す音源処理へ戻る。
【0141】S4707では、変数ONCの値から
「1」を減算した結果を変数ONCに代入する。S47
08では、配列CODENOTE()から、いままで押
鍵されていて今回離鍵された鍵の音高を示すデータを削
除する。
「1」を減算した結果を変数ONCに代入する。S47
08では、配列CODENOTE()から、いままで押
鍵されていて今回離鍵された鍵の音高を示すデータを削
除する。
【0142】S4709では、変数ONCの値が「0」
となったか否かを判定し、判定結果がYesならば今回
の音源鍵盤処理を終了して図17に示す音源処理へ戻
る。一方、判定結果がNoならば、S4710で、削除
されたデータの格納部分を詰めるように配列CODEN
OTE()を並びかえた後に、今回の音源鍵盤処理を終
了して図17に示す音源処理へ戻る。
となったか否かを判定し、判定結果がYesならば今回
の音源鍵盤処理を終了して図17に示す音源処理へ戻
る。一方、判定結果がNoならば、S4710で、削除
されたデータの格納部分を詰めるように配列CODEN
OTE()を並びかえた後に、今回の音源鍵盤処理を終
了して図17に示す音源処理へ戻る。
【0143】S4711では、前述した鍵盤処理におい
て、鍵に対する操作の内容を格納する入力イベント値レ
ジスタの音高及びベロシティに関するデータを、変数T
RANSPOSE及び変数VOLUMEの値に応じて変
更し、続くS4712で変更された音高及び音量のデー
タを音源20に送付する。その後は今回の音源鍵盤処理
を終了して図17に示す音源処理へ戻る。
て、鍵に対する操作の内容を格納する入力イベント値レ
ジスタの音高及びベロシティに関するデータを、変数T
RANSPOSE及び変数VOLUMEの値に応じて変
更し、続くS4712で変更された音高及び音量のデー
タを音源20に送付する。その後は今回の音源鍵盤処理
を終了して図17に示す音源処理へ戻る。
【0144】[5.楽器処理]前述した仕様データ処理
(図16)において実行される第2の処理である楽器処
理は、本装置の動作モードの変更や、自動演奏の動作状
態の設定などを行なう処理である。音源処理の処理内容
を示すフローチャートを図32に示す。
(図16)において実行される第2の処理である楽器処
理は、本装置の動作モードの変更や、自動演奏の動作状
態の設定などを行なう処理である。音源処理の処理内容
を示すフローチャートを図32に示す。
【0145】図4に示した仕様データテーブルでは、処
理の実行命令の定義として、「楽器(状態)」、「楽器
(選択)」、「楽器(テンポ)」、「楽器(音量)」、
「楽器(曲)」、「楽器(伴奏)」、「楽器(移調)」
という7種の命令定義がなされている。図32に示した
フローチャートは、前述した音源処理と同様に、本装置
全体の制御処理でのS1008(図8)においてROM
13に格納されている仕様データテーブルから読み出し
た命令定義の内容が、この7種のうちのいずれであるか
を判別する。この結果、仕様データテーブルから読み出
した命令定義が「楽器(状態)」(S5001の判定結
果がYes)ならば楽器状態処理を実行し(S500
2)、「楽器(選択)」(S5003の判定結果がYe
s)ならば楽器選択処理を実行し(S5004)、「楽
器(テンポ)」(S5005の判定結果がYes)なら
ば楽器テンポ処理を実行し(S5006)、「楽器(音
量)」(S5007の判定結果がYes)ならば楽器音
量処理を実行し(S5008)、「楽器(曲)」(S5
009の判定結果がYes)ならば楽器曲処理を実行し
(S5010)、「楽器(伴奏)」(S5011の判定
結果がYes)ならば楽器伴奏処理を実行し(S501
2)、「楽器(移調)」(S5013の判定結果がYe
s)ならば楽器移調処理を実行する(S5014)。そ
して、各処理が終了したのであれば今回の楽器処理を終
了し、図16に示す仕様データ処理へ戻る。
理の実行命令の定義として、「楽器(状態)」、「楽器
(選択)」、「楽器(テンポ)」、「楽器(音量)」、
「楽器(曲)」、「楽器(伴奏)」、「楽器(移調)」
という7種の命令定義がなされている。図32に示した
フローチャートは、前述した音源処理と同様に、本装置
全体の制御処理でのS1008(図8)においてROM
13に格納されている仕様データテーブルから読み出し
た命令定義の内容が、この7種のうちのいずれであるか
を判別する。この結果、仕様データテーブルから読み出
した命令定義が「楽器(状態)」(S5001の判定結
果がYes)ならば楽器状態処理を実行し(S500
2)、「楽器(選択)」(S5003の判定結果がYe
s)ならば楽器選択処理を実行し(S5004)、「楽
器(テンポ)」(S5005の判定結果がYes)なら
ば楽器テンポ処理を実行し(S5006)、「楽器(音
量)」(S5007の判定結果がYes)ならば楽器音
量処理を実行し(S5008)、「楽器(曲)」(S5
009の判定結果がYes)ならば楽器曲処理を実行し
(S5010)、「楽器(伴奏)」(S5011の判定
結果がYes)ならば楽器伴奏処理を実行し(S501
2)、「楽器(移調)」(S5013の判定結果がYe
s)ならば楽器移調処理を実行する(S5014)。そ
して、各処理が終了したのであれば今回の楽器処理を終
了し、図16に示す仕様データ処理へ戻る。
【0146】また、仕様データテーブルから読み出した
「楽器」の命令定義がこれらのいずれとも異なるもので
あるならば(S5001からS5013にかけてのうち
の判定処理の判定結果がいずれもNo)、本装置全体の
制御処理でのS1008(図8)においての命令定義の
読み出しを失敗したものと判断し、今回の楽器処理を終
了して図16に示す仕様データ処理へ戻る。
「楽器」の命令定義がこれらのいずれとも異なるもので
あるならば(S5001からS5013にかけてのうち
の判定処理の判定結果がいずれもNo)、本装置全体の
制御処理でのS1008(図8)においての命令定義の
読み出しを失敗したものと判断し、今回の楽器処理を終
了して図16に示す仕様データ処理へ戻る。
【0147】以下、図32に示されている各処理の詳細
について説明する。 [5−1.楽器状態処理]前述した音源処理のS500
2(図32)において実行される楽器状態処理は、本装
置の動作モードを切り替える処理である。
について説明する。 [5−1.楽器状態処理]前述した音源処理のS500
2(図32)において実行される楽器状態処理は、本装
置の動作モードを切り替える処理である。
【0148】前述したように本装置は8種の動作モード
を有しており、図4に示す仕様データテーブルにおいて
は、その各動作モードへの切り替えを命令する命令定義
として、「楽器(状態、起動画面)」、「楽器(状態、
演奏停止)」、「楽器(状態、演奏中)」、「楽器(状
態、演奏待機)」、「楽器(状態、音源変更)」、「楽
器(状態、演奏変更)」、「楽器(状態、書き込
み)」、「楽器(状態、読み込み)」の各命令定義が、
スイッチ18a〜18jのそれぞれに動作モード毎に割
り当てられている。なお、「楽器(状態、演奏中)」の
命令定義は本装置の動作状態が自動演奏待機である場合
における鍵盤21にも割り当てられている。
を有しており、図4に示す仕様データテーブルにおいて
は、その各動作モードへの切り替えを命令する命令定義
として、「楽器(状態、起動画面)」、「楽器(状態、
演奏停止)」、「楽器(状態、演奏中)」、「楽器(状
態、演奏待機)」、「楽器(状態、音源変更)」、「楽
器(状態、演奏変更)」、「楽器(状態、書き込
み)」、「楽器(状態、読み込み)」の各命令定義が、
スイッチ18a〜18jのそれぞれに動作モード毎に割
り当てられている。なお、「楽器(状態、演奏中)」の
命令定義は本装置の動作状態が自動演奏待機である場合
における鍵盤21にも割り当てられている。
【0149】楽器状態処理の処理内容を示すフローチャ
ートを図33に示す。同図に示したフローチャートで
は、本装置全体の制御処理でのS1008(図8)にお
いてROM13に格納されている仕様データテーブルか
ら読み出した命令定義の内容を調べ、「楽器(状態、起
動画面)」(S5101の判定結果がYes)であれば
楽器(状態、起動画面)処理を実行し(S5102)、
「楽器(状態、演奏停止)」(S5103の判定結果が
Yes)であれば楽器(状態、自動演奏停止)処理を実
行し(S5104)、「楽器(状態、演奏中)」(S5
105の判定結果がYes)であれば楽器(状態、自動
演奏中)処理を実行し(S5106)、「楽器(状態、
演奏待機)」(S5107の判定結果がYes)であれ
ば楽器(状態、自動演奏待機)処理を実行し(S510
8)、 「楽器(状態、音源変更)」(S5109の判
定結果がYes)であれば楽器(状態、音源パラメータ
変更)処理を実行し(S5110)、「楽器(状態、演
奏変更)」(S5111の判定結果がYes)であれば
楽器(状態、演奏パラメータ変更)処理を実行し(S5
112)、「楽器(状態、書き込み)」(S5113の
判定結果がYes)であれば楽器(状態、外部記憶装置
書き込み)処理を実行し(S5114)、「楽器(状
態、読み込み)」(S5115の判定結果がYes)で
あれば楽器(状態、外部記憶装置読み込み)処理を実行
する(S5116)。
ートを図33に示す。同図に示したフローチャートで
は、本装置全体の制御処理でのS1008(図8)にお
いてROM13に格納されている仕様データテーブルか
ら読み出した命令定義の内容を調べ、「楽器(状態、起
動画面)」(S5101の判定結果がYes)であれば
楽器(状態、起動画面)処理を実行し(S5102)、
「楽器(状態、演奏停止)」(S5103の判定結果が
Yes)であれば楽器(状態、自動演奏停止)処理を実
行し(S5104)、「楽器(状態、演奏中)」(S5
105の判定結果がYes)であれば楽器(状態、自動
演奏中)処理を実行し(S5106)、「楽器(状態、
演奏待機)」(S5107の判定結果がYes)であれ
ば楽器(状態、自動演奏待機)処理を実行し(S510
8)、 「楽器(状態、音源変更)」(S5109の判
定結果がYes)であれば楽器(状態、音源パラメータ
変更)処理を実行し(S5110)、「楽器(状態、演
奏変更)」(S5111の判定結果がYes)であれば
楽器(状態、演奏パラメータ変更)処理を実行し(S5
112)、「楽器(状態、書き込み)」(S5113の
判定結果がYes)であれば楽器(状態、外部記憶装置
書き込み)処理を実行し(S5114)、「楽器(状
態、読み込み)」(S5115の判定結果がYes)で
あれば楽器(状態、外部記憶装置読み込み)処理を実行
する(S5116)。
【0150】そして、S5101からS5116までの
うちの偶数ステップに示されているいずれかの処理を実
行した後、または、S5101からS5116までのう
ちの奇数ステップに示されている各判定処理の結果がい
ずれもNoである場合には、今回の楽器状態処理を終了
して図17に示す音源処理へ戻る。
うちの偶数ステップに示されているいずれかの処理を実
行した後、または、S5101からS5116までのう
ちの奇数ステップに示されている各判定処理の結果がい
ずれもNoである場合には、今回の楽器状態処理を終了
して図17に示す音源処理へ戻る。
【0151】以下、図33に示されている各処理の詳細
について説明する。図34は、S5102(図33)に
示されている楽器(状態、起動画面)処理の詳細を示し
ている。この処理は、まず、S5121において、S1
001(図8)と同様のイニシャライズ処理を実行し、
続くS5122でLCD15に現在表示中の画面をクリ
アする。その後、S5123で図3(a)に示した起動
画面をLCD15に表示させ、S5124で、本装置の
現在の動作モード(楽器状態)が図7(B)に示した番
号で設定される楽器状態レジスタに「0」を設定して楽
器状態が起動画面(起動時)であることを示し、楽器状
態処理へ戻る。
について説明する。図34は、S5102(図33)に
示されている楽器(状態、起動画面)処理の詳細を示し
ている。この処理は、まず、S5121において、S1
001(図8)と同様のイニシャライズ処理を実行し、
続くS5122でLCD15に現在表示中の画面をクリ
アする。その後、S5123で図3(a)に示した起動
画面をLCD15に表示させ、S5124で、本装置の
現在の動作モード(楽器状態)が図7(B)に示した番
号で設定される楽器状態レジスタに「0」を設定して楽
器状態が起動画面(起動時)であることを示し、楽器状
態処理へ戻る。
【0152】なお、この楽器(状態、起動画面)処理
は、前述した本装置全体の制御処理のS1002(図
8)でも実行される。図35は、S5104(図33)
に示されている楽器(状態、自動演奏停止)処理の詳細
を示している。この処理では、まずS5131でLCD
15に現在表示中の画面をクリアし、続くS5132で
図3(b)に示した画面をLCD15に表示させ、更に
S5133で前述した楽器状態レジスタに「1」を設定
して楽器状態(本装置の動作モード)が自動演奏停止で
あることを示す。その後、機能中の自動演奏を停止させ
るために、S5134で前述したスタートフラグSTF
及びウェイトフラグWFを共に「0」に設定すると共
に、S5135で音源20に対して消音指示を行ない、
楽器状態処理へ戻る。
は、前述した本装置全体の制御処理のS1002(図
8)でも実行される。図35は、S5104(図33)
に示されている楽器(状態、自動演奏停止)処理の詳細
を示している。この処理では、まずS5131でLCD
15に現在表示中の画面をクリアし、続くS5132で
図3(b)に示した画面をLCD15に表示させ、更に
S5133で前述した楽器状態レジスタに「1」を設定
して楽器状態(本装置の動作モード)が自動演奏停止で
あることを示す。その後、機能中の自動演奏を停止させ
るために、S5134で前述したスタートフラグSTF
及びウェイトフラグWFを共に「0」に設定すると共
に、S5135で音源20に対して消音指示を行ない、
楽器状態処理へ戻る。
【0153】図36は、S5106(図33)に示され
ている楽器(状態、自動演奏中)処理の詳細を示してい
る。この処理では、まず、同図(A)において、S51
41でLCD15に現在表示中の画面をクリアし、続く
S5142で図3(c)に示した画面をLCD15に表
示させ、更にS5143で前述した楽器状態レジスタに
「2」を設定して楽器状態が自動演奏中であることを示
す。その後、自動演奏を開始させるために、S5144
でスタートフラグSTFを「1」に、そしてウェイトフ
ラグWFを「0」に設定する。その後、S5145で曲
開始処理を、更にS5146で伴奏曲開始処理をそれぞ
れ実行した後に楽器状態処理へ戻る。
ている楽器(状態、自動演奏中)処理の詳細を示してい
る。この処理では、まず、同図(A)において、S51
41でLCD15に現在表示中の画面をクリアし、続く
S5142で図3(c)に示した画面をLCD15に表
示させ、更にS5143で前述した楽器状態レジスタに
「2」を設定して楽器状態が自動演奏中であることを示
す。その後、自動演奏を開始させるために、S5144
でスタートフラグSTFを「1」に、そしてウェイトフ
ラグWFを「0」に設定する。その後、S5145で曲
開始処理を、更にS5146で伴奏曲開始処理をそれぞ
れ実行した後に楽器状態処理へ戻る。
【0154】同図(B)はS5145で実行される曲開
始処理の詳細を示している。この処理では、まず、S5
151でRAM14に確保されている時刻カウンタの領
域に格納されている現在の値を変数STに代入する。そ
して、S5152で、同じくRAM14に確保されてい
る領域SONGNO.に格納されている番号を取得し、
その番号で特定される曲(SONG)データの、ROM
13上における格納領域の開始(スタート)アドレスを
変数SADDに代入する。
始処理の詳細を示している。この処理では、まず、S5
151でRAM14に確保されている時刻カウンタの領
域に格納されている現在の値を変数STに代入する。そ
して、S5152で、同じくRAM14に確保されてい
る領域SONGNO.に格納されている番号を取得し、
その番号で特定される曲(SONG)データの、ROM
13上における格納領域の開始(スタート)アドレスを
変数SADDに代入する。
【0155】S5153では、変数SADDの値で示さ
れるROM13のアドレスに格納されているデータME
M(SADD)を取得し、変数ΔSTに代入する。な
お、ROM13に格納されている曲(SONG)データ
の先頭には最初の楽音を発音するまでの待ち時間を示す
データが配置されている。
れるROM13のアドレスに格納されているデータME
M(SADD)を取得し、変数ΔSTに代入する。な
お、ROM13に格納されている曲(SONG)データ
の先頭には最初の楽音を発音するまでの待ち時間を示す
データが配置されている。
【0156】S5154では、変数STの値に変数ΔS
Tの値を加算した結果を改めて変数STに代入し、続く
S5155で、変数STの値を図6に示す音楽データバ
ッファの領域STに格納する。
Tの値を加算した結果を改めて変数STに代入し、続く
S5155で、変数STの値を図6に示す音楽データバ
ッファの領域STに格納する。
【0157】S5156ではアドレスを示す変数SAD
Dの値をインクリメント(1アドレスだけ進める)し、
続くS5157でデータMEM(SADD)を再度取得
し、変数SEVENTに代入する。なお、ここで取得さ
れるデータは楽曲の最初の楽音の発音データである。
Dの値をインクリメント(1アドレスだけ進める)し、
続くS5157でデータMEM(SADD)を再度取得
し、変数SEVENTに代入する。なお、ここで取得さ
れるデータは楽曲の最初の楽音の発音データである。
【0158】S5158では、変数SEVENTの値を
図6に示す音楽データバッファの領域SEVENTに格
納し、図36(A)に示す処理へ戻る。図36(C)は
S5146(同図(A))で実行される伴奏曲開始処理
の詳細を示している。同図(C)を同図(B)とを比較
すると分かるように、S5161からS5168までの
伴奏曲開始処理は、処理で扱うROM13のデータの対
象が伴奏データであること、また、処理対象とする変数
名やRAM14の領域が異なることを除けば、上述した
S5151からS5158までの曲開始処理と全く同様
の処理であり、その説明は省略する。
図6に示す音楽データバッファの領域SEVENTに格
納し、図36(A)に示す処理へ戻る。図36(C)は
S5146(同図(A))で実行される伴奏曲開始処理
の詳細を示している。同図(C)を同図(B)とを比較
すると分かるように、S5161からS5168までの
伴奏曲開始処理は、処理で扱うROM13のデータの対
象が伴奏データであること、また、処理対象とする変数
名やRAM14の領域が異なることを除けば、上述した
S5151からS5158までの曲開始処理と全く同様
の処理であり、その説明は省略する。
【0159】図37は、S5108(図33)に示され
ている楽器(状態、自動演奏待機)処理の詳細を示して
いる。この処理では、まずS5171でLCD15に現
在表示中の画面をクリアし、続くS5172で図3
(d)に示した画面をLCD15に表示させ、更にS5
173で楽器状態レジスタに「3」を設定して楽器状態
が自動演奏待機であることを示す。その後、機能中の自
動演奏を一時停止(待機)させるために、S5174で
前述したウェイトフラグを「1」に設定し、楽器状態処
理へ戻る。
ている楽器(状態、自動演奏待機)処理の詳細を示して
いる。この処理では、まずS5171でLCD15に現
在表示中の画面をクリアし、続くS5172で図3
(d)に示した画面をLCD15に表示させ、更にS5
173で楽器状態レジスタに「3」を設定して楽器状態
が自動演奏待機であることを示す。その後、機能中の自
動演奏を一時停止(待機)させるために、S5174で
前述したウェイトフラグを「1」に設定し、楽器状態処
理へ戻る。
【0160】図38は、S5110(図33)に示され
ている楽器(状態、音源パラメータ変更)処理の詳細を
示している。この処理では、まずS5181でLCD1
5に現在表示中の画面をクリアし、続くS5182で図
3(e)に示した音源パラメータ変更画面をLCD15
に表示させ、更にS5183で楽器状態レジスタに
「4」を設定して楽器状態が音源パラメータ変更である
ことを示す。そして、S5184で、音源パラメータ変
更画面の数値表示を、RAM13の領域TONEN
O.、PITCH、FILTER、ENVELOPE、
MODULATIONの各々に格納されている現在の値
に変更して表示させる。その後は楽器状態処理へ戻る。
ている楽器(状態、音源パラメータ変更)処理の詳細を
示している。この処理では、まずS5181でLCD1
5に現在表示中の画面をクリアし、続くS5182で図
3(e)に示した音源パラメータ変更画面をLCD15
に表示させ、更にS5183で楽器状態レジスタに
「4」を設定して楽器状態が音源パラメータ変更である
ことを示す。そして、S5184で、音源パラメータ変
更画面の数値表示を、RAM13の領域TONEN
O.、PITCH、FILTER、ENVELOPE、
MODULATIONの各々に格納されている現在の値
に変更して表示させる。その後は楽器状態処理へ戻る。
【0161】図39は、S5112(図33)に示され
ている楽器(状態、演奏パラメータ変更)処理の詳細を
示している。この処理では、まずS5186でLCD1
5に現在表示中の画面をクリアし、続くS5187で図
3(f)に示した演奏パラメータ変更画面をLCD15
に表示させ、更にS5188で楽器状態レジスタに
「5」を設定して楽器状態が演奏パラメータ変更である
ことを示す。そして、S5189で、演奏パラメータ変
更画面の数値表示を、RAM13の領域SONGN
O.、ACOMPNO.、TEMPO、VOLUME、
TRANSPOSEの各々に格納されている現在の値に
変更して表示させる。その後は楽器状態処理へ戻る。
ている楽器(状態、演奏パラメータ変更)処理の詳細を
示している。この処理では、まずS5186でLCD1
5に現在表示中の画面をクリアし、続くS5187で図
3(f)に示した演奏パラメータ変更画面をLCD15
に表示させ、更にS5188で楽器状態レジスタに
「5」を設定して楽器状態が演奏パラメータ変更である
ことを示す。そして、S5189で、演奏パラメータ変
更画面の数値表示を、RAM13の領域SONGN
O.、ACOMPNO.、TEMPO、VOLUME、
TRANSPOSEの各々に格納されている現在の値に
変更して表示させる。その後は楽器状態処理へ戻る。
【0162】図40は、S5114(図33)に示され
ている楽器(状態、外部記憶装置書き込み)処理の詳細
を示している。この処理では、まずS5191でLCD
15に現在表示中の画面をクリアし、続くS5192で
図3(g)に示した画面をLCD15に表示させ、更に
S5193で楽器状態レジスタに「6」を設定して楽器
状態が外部記憶装置書き込みであることを示し、その後
は楽器状態処理へ戻る。
ている楽器(状態、外部記憶装置書き込み)処理の詳細
を示している。この処理では、まずS5191でLCD
15に現在表示中の画面をクリアし、続くS5192で
図3(g)に示した画面をLCD15に表示させ、更に
S5193で楽器状態レジスタに「6」を設定して楽器
状態が外部記憶装置書き込みであることを示し、その後
は楽器状態処理へ戻る。
【0163】図41は、S5116(図33)に示され
ている楽器(状態、外部記憶装置読み込み)処理の詳細
を示している。この処理では、まずS5196でLCD
15に現在表示中の画面をクリアし、続くS5197で
図3(h)に示した画面をLCD15に表示させ、更に
S5198で楽器状態レジスタに「7」を設定して楽器
状態が外部記憶装置読み込みであることを示し、その後
は楽器状態処理へ戻る。
ている楽器(状態、外部記憶装置読み込み)処理の詳細
を示している。この処理では、まずS5196でLCD
15に現在表示中の画面をクリアし、続くS5197で
図3(h)に示した画面をLCD15に表示させ、更に
S5198で楽器状態レジスタに「7」を設定して楽器
状態が外部記憶装置読み込みであることを示し、その後
は楽器状態処理へ戻る。
【0164】[5−2.楽器選択処理]前述した楽器処
理のS5004(図32)において実行される楽器選択
処理は、エンコーダ19に対する操作に基づいて、自動
演奏させる曲データや自動伴奏させる伴奏曲データの選
択、及び、テンポ、基準音量、移調量の設定を行なう処
理である。
理のS5004(図32)において実行される楽器選択
処理は、エンコーダ19に対する操作に基づいて、自動
演奏させる曲データや自動伴奏させる伴奏曲データの選
択、及び、テンポ、基準音量、移調量の設定を行なう処
理である。
【0165】図4に示した仕様データテーブルで、本装
置の動作モードが演奏パラメータ変更である欄には、
「楽器 (選択、曲)」(スイッチ18f)、「楽器
(選択、移調)」(スイッチ18g)、「楽器(選択、
伴奏)」(スイッチ18h)、「楽器(選択、テン
ポ)」(スイッチ18i)、「楽器(選択、音量)」
(スイッチ18j)、「楽器(選択、回転値)」(エン
コーダ19)という楽器選択処理の実行を命令する6種
の命令定義がなされている。
置の動作モードが演奏パラメータ変更である欄には、
「楽器 (選択、曲)」(スイッチ18f)、「楽器
(選択、移調)」(スイッチ18g)、「楽器(選択、
伴奏)」(スイッチ18h)、「楽器(選択、テン
ポ)」(スイッチ18i)、「楽器(選択、音量)」
(スイッチ18j)、「楽器(選択、回転値)」(エン
コーダ19)という楽器選択処理の実行を命令する6種
の命令定義がなされている。
【0166】楽器選択処理の処理内容を示すフローチャ
ートを図42に示し、同図に示されている各処理の詳細
を図43に示す。楽器選択処理では、本装置全体の制御
処理でのS1008(図8)においてROM13に格納
されている仕様データテーブルから読み出した命令定義
の内容が、この6種のうちのいずれであるかを判別す
る。この結果、仕様データテーブルから読み出した命令
定義が「楽器(選択、曲)」(S5201の判定結果が
Yes)ならば、楽器(選択、曲)処理を実行する(S
5202)。楽器(選択、曲)処理の詳細は、図43
(A)に示すように、変数SELに「0」を代入する処
理である(S5221)。
ートを図42に示し、同図に示されている各処理の詳細
を図43に示す。楽器選択処理では、本装置全体の制御
処理でのS1008(図8)においてROM13に格納
されている仕様データテーブルから読み出した命令定義
の内容が、この6種のうちのいずれであるかを判別す
る。この結果、仕様データテーブルから読み出した命令
定義が「楽器(選択、曲)」(S5201の判定結果が
Yes)ならば、楽器(選択、曲)処理を実行する(S
5202)。楽器(選択、曲)処理の詳細は、図43
(A)に示すように、変数SELに「0」を代入する処
理である(S5221)。
【0167】図42において、S5201の判定結果が
Noである場合に行われるS5203からS5210に
かけての処理は、S5201及びS5202の処理と同
様であり、仕様データテーブルから読み出した命令定義
の内容を判定し、「楽器(選択、移調)」(S5203
の判定結果がYes)ならば楽器(選択、移調)処理
(S5204)、すなわち変数SELに「1」を代入す
る処理を実行し(S5231(図43(B)))、「楽
器(選択、伴奏)」(S5205の判定結果がYes)
ならば楽器(選択、伴奏)処理(S5206)、すなわ
ち変数SELに「2」を代入する処理を実行し(S52
41(図43(C)))、「楽器(選択、テンポ)」
(S5207の判定結果がYes)ならば楽器(選択、
テンポ)処理(S5208)、すなわち変数SELに
「3」を代入する処理を実行し(S5251(図43
(D)))、「楽器(選択、音量)」(S5209の判
定結果がYes)ならば楽器(選択、音量)処理(S5
210)、すなわち変数SELに「4」を代入する処理
を実行する(S5261(図43(E)))。そして、
以上の各処理が終了した後には図32に示す楽器処理へ
戻る。
Noである場合に行われるS5203からS5210に
かけての処理は、S5201及びS5202の処理と同
様であり、仕様データテーブルから読み出した命令定義
の内容を判定し、「楽器(選択、移調)」(S5203
の判定結果がYes)ならば楽器(選択、移調)処理
(S5204)、すなわち変数SELに「1」を代入す
る処理を実行し(S5231(図43(B)))、「楽
器(選択、伴奏)」(S5205の判定結果がYes)
ならば楽器(選択、伴奏)処理(S5206)、すなわ
ち変数SELに「2」を代入する処理を実行し(S52
41(図43(C)))、「楽器(選択、テンポ)」
(S5207の判定結果がYes)ならば楽器(選択、
テンポ)処理(S5208)、すなわち変数SELに
「3」を代入する処理を実行し(S5251(図43
(D)))、「楽器(選択、音量)」(S5209の判
定結果がYes)ならば楽器(選択、音量)処理(S5
210)、すなわち変数SELに「4」を代入する処理
を実行する(S5261(図43(E)))。そして、
以上の各処理が終了した後には図32に示す楽器処理へ
戻る。
【0168】また、S5201からS5209にかけて
のうちの判定処理の判定結果がいずれもNoである場合
には、S5211に進み、本装置全体の制御処理でのS
1008(図8)においてROM13に格納されている
仕様データテーブルから読み出した命令定義の内容が、
「楽器(選択、回転値)」であるか否かを判定する。こ
の判定結果がYesならばS5212に進み、楽器(選
択、回転値)処理を実行し、その後は今回の楽器選択処
理を終了して図32に示す楽器処理へ戻る。一方、この
判定もNoであるならば、何もせずにこのまま今回の楽
器選択処理を終了して図32に示す楽器処理へ戻る。
のうちの判定処理の判定結果がいずれもNoである場合
には、S5211に進み、本装置全体の制御処理でのS
1008(図8)においてROM13に格納されている
仕様データテーブルから読み出した命令定義の内容が、
「楽器(選択、回転値)」であるか否かを判定する。こ
の判定結果がYesならばS5212に進み、楽器(選
択、回転値)処理を実行し、その後は今回の楽器選択処
理を終了して図32に示す楽器処理へ戻る。一方、この
判定もNoであるならば、何もせずにこのまま今回の楽
器選択処理を終了して図32に示す楽器処理へ戻る。
【0169】図42にS5212として示した楽器(選
択、回転値)処理の処理内容を示すフローチャートを図
44に示す。まず、S5271において、変数SELの
値が「0」、すなわち、本装置に対して楽器(選択、
曲)の命令がなされた状態であるか否かを判定し、判定
結果がYesならばS5272に進み、NoならばS5
273に進む。
択、回転値)処理の処理内容を示すフローチャートを図
44に示す。まず、S5271において、変数SELの
値が「0」、すなわち、本装置に対して楽器(選択、
曲)の命令がなされた状態であるか否かを判定し、判定
結果がYesならばS5272に進み、NoならばS5
273に進む。
【0170】S5272では、RAM14に確保されて
いる領域SONGNO.に格納されている値に変数SA
BUN(19)の値を加算した結果を改めて領域SON
GNO.に格納する。なお、図8のS1001に示した
イニシャライズでは、領域SONGNO.には「0」が
代入される。
いる領域SONGNO.に格納されている値に変数SA
BUN(19)の値を加算した結果を改めて領域SON
GNO.に格納する。なお、図8のS1001に示した
イニシャライズでは、領域SONGNO.には「0」が
代入される。
【0171】S5273からS5280にかけての処理
は、S5271及びS5272と同様の処理が繰り返さ
れ、変数SELの値が「1」(S5273の判定結果が
Yes)ならばRAM14の領域TRANSPOSEに
格納されている値に変数SABUN(19)の値を加算
した結果をその領域に格納し(S5274)、変数SE
Lの値が「2」(S5275の判定結果がYes)なら
ばRAM14の領域ACOMPNO.に格納されている
値に変数SABUN(19)の値を加算した結果を改め
てその領域に格納し(S5276)、変数SELの値が
「3」(S5277の判定結果がYes)ならばRAM
14の領域TEMPOに格納されている値に変数SAB
UN(19)の値を加算した結果を改めてその領域に格
納し(S5278)、変数SELの値が「4」(S52
79の判定結果がYes)ならばRAM14の領域VO
LUMEに格納されている値に変数SABUN(19)
の値を加算した結果を改めてその領域に格納する(S5
280)。そして、S5271からS5280までのう
ちの偶数ステップに示されているいずれかの処理を実行
した後は、S5281において、これまでに行なったR
AM14の各領域の格納値の変更処理に応じ、LCD1
5に現在表示させている演奏パラメータ変更画面(図3
(f))の表示数値を、変更処理後の数値に変更させ
る。
は、S5271及びS5272と同様の処理が繰り返さ
れ、変数SELの値が「1」(S5273の判定結果が
Yes)ならばRAM14の領域TRANSPOSEに
格納されている値に変数SABUN(19)の値を加算
した結果をその領域に格納し(S5274)、変数SE
Lの値が「2」(S5275の判定結果がYes)なら
ばRAM14の領域ACOMPNO.に格納されている
値に変数SABUN(19)の値を加算した結果を改め
てその領域に格納し(S5276)、変数SELの値が
「3」(S5277の判定結果がYes)ならばRAM
14の領域TEMPOに格納されている値に変数SAB
UN(19)の値を加算した結果を改めてその領域に格
納し(S5278)、変数SELの値が「4」(S52
79の判定結果がYes)ならばRAM14の領域VO
LUMEに格納されている値に変数SABUN(19)
の値を加算した結果を改めてその領域に格納する(S5
280)。そして、S5271からS5280までのう
ちの偶数ステップに示されているいずれかの処理を実行
した後は、S5281において、これまでに行なったR
AM14の各領域の格納値の変更処理に応じ、LCD1
5に現在表示させている演奏パラメータ変更画面(図3
(f))の表示数値を、変更処理後の数値に変更させ
る。
【0172】S5281の処理の後、または、S527
1からS5280までのうちの奇数ステップに示されて
いる判定処理の結果がNoであった場合には、今回の楽
器(選択、回転値)処理を終了して図42に示す音源処
理へ戻る。
1からS5280までのうちの奇数ステップに示されて
いる判定処理の結果がNoであった場合には、今回の楽
器(選択、回転値)処理を終了して図42に示す音源処
理へ戻る。
【0173】[5−3.楽器テンポ処理]前述した楽器
処理のS5006(図32)において実行される楽器テ
ンポ処理は、スライダ17、スイッチ18またはエンコ
ーダ19に対する操作に基づいて、自動演奏のテンポを
設定する処理である。図4に示す仕様データテーブルで
は、本装置の動作モードが自動演奏中の状態である場合
において、スイッチ18kには「楽器(テンポ、加
算)」、スイッチ18nには「楽器(テンポ、減
算)」、そしてスライダ17aには「楽器(テンポ、
値)」、そしてエンコーダ19には「楽器(テンポ、回
転値)」の各命令が定義されている。
処理のS5006(図32)において実行される楽器テ
ンポ処理は、スライダ17、スイッチ18またはエンコ
ーダ19に対する操作に基づいて、自動演奏のテンポを
設定する処理である。図4に示す仕様データテーブルで
は、本装置の動作モードが自動演奏中の状態である場合
において、スイッチ18kには「楽器(テンポ、加
算)」、スイッチ18nには「楽器(テンポ、減
算)」、そしてスライダ17aには「楽器(テンポ、
値)」、そしてエンコーダ19には「楽器(テンポ、回
転値)」の各命令が定義されている。
【0174】楽器テンポ処理の処理内容を示すフローチ
ャートを図45に示す。楽器テンポ処理は、S530
1、S5303、S5305、S5307の各判定処理
により、本装置全体の制御処理でのS1008(図8)
においてROM13に格納されている仕様データテーブ
ルから読み出した命令定義の内容に応じて、楽器(テン
ポ、加算)処理(S5302)、楽器(テンポ、減算)
処理(S5304)、楽器(テンポ、値)処理(S53
06)、楽器(テンポ、回転値)処理(S5308)を
適宜選択して実行する。そして、上述したいずれかの処
理を実行した後、または、上述した各判定処理の結果が
いずれもNoである場合には、今回の楽器テンポ処理を
終了して図32に示す楽器処理へ戻る。
ャートを図45に示す。楽器テンポ処理は、S530
1、S5303、S5305、S5307の各判定処理
により、本装置全体の制御処理でのS1008(図8)
においてROM13に格納されている仕様データテーブ
ルから読み出した命令定義の内容に応じて、楽器(テン
ポ、加算)処理(S5302)、楽器(テンポ、減算)
処理(S5304)、楽器(テンポ、値)処理(S53
06)、楽器(テンポ、回転値)処理(S5308)を
適宜選択して実行する。そして、上述したいずれかの処
理を実行した後、または、上述した各判定処理の結果が
いずれもNoである場合には、今回の楽器テンポ処理を
終了して図32に示す楽器処理へ戻る。
【0175】図45に示した各処理の詳細を、図46に
フローチャートで示す。まず、同図(A)の音源(音
色、加算)処理(図45、S5302)を説明する。
フローチャートで示す。まず、同図(A)の音源(音
色、加算)処理(図45、S5302)を説明する。
【0176】S5311では、RAM14に確保されて
いる領域TEMPOに格納されている値に「1」を加算
した結果を改めて領域TEMPOに格納する。S531
2では、前ステップで行なったRAM14の領域TEM
POの格納値の変更に応じ、LCD15に表示させる演
奏パラメータ変更画面(図3(f))のテンポの表示数
値を変更処理後の数値に変更しておき、その後は今回の
楽器(テンポ、加算)処理を終了して図45に示す楽器
テンポ処理へ戻る。
いる領域TEMPOに格納されている値に「1」を加算
した結果を改めて領域TEMPOに格納する。S531
2では、前ステップで行なったRAM14の領域TEM
POの格納値の変更に応じ、LCD15に表示させる演
奏パラメータ変更画面(図3(f))のテンポの表示数
値を変更処理後の数値に変更しておき、その後は今回の
楽器(テンポ、加算)処理を終了して図45に示す楽器
テンポ処理へ戻る。
【0177】図46(B)に示す楽器(テンポ、減算)
処理は、S5321で領域TEMPOに格納されている
値から1を減算した結果を領域TEMPOに格納するこ
とを除いては、同図(A)に示した楽器(テンポ、加
算)処理の処理内容と同様である。
処理は、S5321で領域TEMPOに格納されている
値から1を減算した結果を領域TEMPOに格納するこ
とを除いては、同図(A)に示した楽器(テンポ、加
算)処理の処理内容と同様である。
【0178】また、図46(C)に示す楽器(テンポ、
値)処理は、S5331で領域TEMPOの値に変数S
ABUN(16)の値を加算した結果を改めて領域TE
MPOに格納することを除いては、同図(A)に示した
楽器(テンポ、加算)処理の処理内容と同様であり、更
に、図46(D)に示す楽器(テンポ、回転値)処理
も、S5341で領域TEMPOの値に変数SABUN
(19)の値を加算した結果を改めて領域TEMPOに
格納することを除いては、楽器(テンポ、加算)処理の
処理内容と同様である。
値)処理は、S5331で領域TEMPOの値に変数S
ABUN(16)の値を加算した結果を改めて領域TE
MPOに格納することを除いては、同図(A)に示した
楽器(テンポ、加算)処理の処理内容と同様であり、更
に、図46(D)に示す楽器(テンポ、回転値)処理
も、S5341で領域TEMPOの値に変数SABUN
(19)の値を加算した結果を改めて領域TEMPOに
格納することを除いては、楽器(テンポ、加算)処理の
処理内容と同様である。
【0179】[5−4.楽器音量処理]前述した楽器処
理のS5008(図32)において実行される楽器音量
処理は、スライダ17またはスイッチ18に対する操作
に基づいて、自動演奏の基準音量を設定する処理であ
る。図4に示す仕様データテーブルでは、本装置の動作
モードが自動演奏中の状態である場合において、スイッ
チ18lには「楽器(音量、加算)」、スイッチ18o
には「楽器(音量、減算)」、そしてスライダ17bに
は「楽器(音量、値)」の各命令が定義されている。
理のS5008(図32)において実行される楽器音量
処理は、スライダ17またはスイッチ18に対する操作
に基づいて、自動演奏の基準音量を設定する処理であ
る。図4に示す仕様データテーブルでは、本装置の動作
モードが自動演奏中の状態である場合において、スイッ
チ18lには「楽器(音量、加算)」、スイッチ18o
には「楽器(音量、減算)」、そしてスライダ17bに
は「楽器(音量、値)」の各命令が定義されている。
【0180】楽器音量処理の処理内容を示すフローチャ
ートを図47に示す。楽器音量処理のS5401からS
5406までの各処理は、前述した楽器テンポ処理のS
5301からS5306の処理において、「テンポ」を
「音量」と置き換えれば全く同一の処理内容である。
ートを図47に示す。楽器音量処理のS5401からS
5406までの各処理は、前述した楽器テンポ処理のS
5301からS5306の処理において、「テンポ」を
「音量」と置き換えれば全く同一の処理内容である。
【0181】図47に示した各処理の詳細を、図48に
フローチャートで示す。図48(A)、(B)、(C)
に示すS5411からS5432にかけての各処理も、
各処理も、図46に示した各処理において、RAM14
に格納されている値の変更を行なう対象の領域をTEM
POからVOLUMEに変更すれば全く同一の処理内容
である。
フローチャートで示す。図48(A)、(B)、(C)
に示すS5411からS5432にかけての各処理も、
各処理も、図46に示した各処理において、RAM14
に格納されている値の変更を行なう対象の領域をTEM
POからVOLUMEに変更すれば全く同一の処理内容
である。
【0182】[5−5.楽器曲処理]前述した楽器処理
のS5010(図32)において実行される楽器曲処理
は、スライダ17またはスイッチ18に対する操作に基
づいて、自動演奏を行なう曲目を選択する処理である。
図4に示す仕様データテーブルでは、本装置の動作モー
ドが演奏パラメータ変更の状態である場合において、ス
イッチ18kには「楽器(曲、加算)」、スイッチ18
nには「楽器(曲、減算)」、そしてスライダ17aに
は「楽器(曲、値)」の各命令が定義されている。
のS5010(図32)において実行される楽器曲処理
は、スライダ17またはスイッチ18に対する操作に基
づいて、自動演奏を行なう曲目を選択する処理である。
図4に示す仕様データテーブルでは、本装置の動作モー
ドが演奏パラメータ変更の状態である場合において、ス
イッチ18kには「楽器(曲、加算)」、スイッチ18
nには「楽器(曲、減算)」、そしてスライダ17aに
は「楽器(曲、値)」の各命令が定義されている。
【0183】楽器曲処理の処理内容を示すフローチャー
トを図49に示す。楽器曲処理のS5501からS55
06までの各処理は、図47に示した楽器音量処理の各
処理において、「音量」を「曲」と置き換えれば全く同
一の処理内容である。
トを図49に示す。楽器曲処理のS5501からS55
06までの各処理は、図47に示した楽器音量処理の各
処理において、「音量」を「曲」と置き換えれば全く同
一の処理内容である。
【0184】図49に示した各処理の詳細を、図50に
フローチャートで示す。図50(A)、(B)、(C)
に示すS5511からS5532にかけての各処理も、
図48に示した各処理において、RAM14に格納され
ている値の変更を行なう対象の領域をVOLUMEから
SONGNO.に変更すれば全く同一の処理内容であ
る。
フローチャートで示す。図50(A)、(B)、(C)
に示すS5511からS5532にかけての各処理も、
図48に示した各処理において、RAM14に格納され
ている値の変更を行なう対象の領域をVOLUMEから
SONGNO.に変更すれば全く同一の処理内容であ
る。
【0185】[5−6.楽器伴奏処理]前述した楽器処
理のS5012(図32)において実行される楽器伴奏
処理は、スライダ17またはスイッチ18に対する操作
に基づいて、自動伴奏を行なう伴奏データを選択する処
理である。図4に示す仕様データテーブルでは、本装置
の動作モードが演奏パラメータ変更の状態である場合に
おいて、スイッチ18mには「楽器(伴奏、加算)」、
スイッチ18pには「楽器(伴奏、減算)」、そしてス
ライダ17cには 「楽器(伴奏、値)」の各命令が定
義されている。
理のS5012(図32)において実行される楽器伴奏
処理は、スライダ17またはスイッチ18に対する操作
に基づいて、自動伴奏を行なう伴奏データを選択する処
理である。図4に示す仕様データテーブルでは、本装置
の動作モードが演奏パラメータ変更の状態である場合に
おいて、スイッチ18mには「楽器(伴奏、加算)」、
スイッチ18pには「楽器(伴奏、減算)」、そしてス
ライダ17cには 「楽器(伴奏、値)」の各命令が定
義されている。
【0186】楽器伴奏処理の処理内容を示すフローチャ
ートを図51に示す。楽器伴奏処理のS5601からS
5606までの各処理は、図47に示した楽器音量処理
の各処理において、「音量」を「伴奏」と置き換えれば
全く同一の処理内容である。
ートを図51に示す。楽器伴奏処理のS5601からS
5606までの各処理は、図47に示した楽器音量処理
の各処理において、「音量」を「伴奏」と置き換えれば
全く同一の処理内容である。
【0187】図51に示した各処理の詳細を、図52に
フローチャートで示す。図52(A)、(B)、(C)
に示すS5611からS5632にかけての各処理も、
図48に示した各処理において、RAM14に格納され
ている値の変更を行なう対象の領域をVOLUMEから
ACOMPNO.に変更すれば全く同一の処理内容であ
る。
フローチャートで示す。図52(A)、(B)、(C)
に示すS5611からS5632にかけての各処理も、
図48に示した各処理において、RAM14に格納され
ている値の変更を行なう対象の領域をVOLUMEから
ACOMPNO.に変更すれば全く同一の処理内容であ
る。
【0188】[5−7.楽器移調処理]前述した楽器処
理のS5014(図32)において実行される楽器移調
処理は、自動演奏もしくは鍵盤21への演奏について移
調を行なうための移調量を、スライダ17またはスイッ
チ18に対する操作に基づいて設定する処理である。図
4に示す仕様データテーブルでは、本装置の動作モード
が演奏パラメータ変更の状態である場合において、スイ
ッチ18lには「楽器(移調、加算)」、スイッチ18
oには「楽器(移調、減算)」、そしてスライダ17b
には「楽器(移調、値)」の各命令が定義されている。
理のS5014(図32)において実行される楽器移調
処理は、自動演奏もしくは鍵盤21への演奏について移
調を行なうための移調量を、スライダ17またはスイッ
チ18に対する操作に基づいて設定する処理である。図
4に示す仕様データテーブルでは、本装置の動作モード
が演奏パラメータ変更の状態である場合において、スイ
ッチ18lには「楽器(移調、加算)」、スイッチ18
oには「楽器(移調、減算)」、そしてスライダ17b
には「楽器(移調、値)」の各命令が定義されている。
【0189】楽器移調処理の処理内容を示すフローチャ
ートを図53に示す。楽器移調処理のS5701からS
5706までの各処理は、図47に示した楽器音量処理
の各処理において、「音量」を「移調」と置き換えれば
全く同一の処理内容である。
ートを図53に示す。楽器移調処理のS5701からS
5706までの各処理は、図47に示した楽器音量処理
の各処理において、「音量」を「移調」と置き換えれば
全く同一の処理内容である。
【0190】図53に示した各処理の詳細を、図54に
フローチャートで示す。図54(A)、(B)、(C)
に示すS5711からS5732にかけての各処理も、
図48に示した各処理において、RAM14に格納され
ている値の変更を行なう対象の領域をVOLUMEから
TRANSPOSEに変更すれば全く同一の処理内容で
ある。
フローチャートで示す。図54(A)、(B)、(C)
に示すS5711からS5732にかけての各処理も、
図48に示した各処理において、RAM14に格納され
ている値の変更を行なう対象の領域をVOLUMEから
TRANSPOSEに変更すれば全く同一の処理内容で
ある。
【0191】[6.FDD処理]前述した仕様データ処
理(図16)において実行される第3の処理であるFD
D処理は、スイッチ18もしくはエンコーダ19に対す
る操作指示に従って、フラッシュメモリを使用するRO
M13に格納されている音色(TONE)データあるい
は曲(SONG)データを、FDD22に挿入されるフ
ロッピーディスクとの間で相互に受け渡しさせる処理で
ある。図4に示した仕様データテーブルでは、本装置の
動作モードが外部記憶装置書き込み、または外部記憶装
置読み込みの状態である場合において、スイッチ18a
には「FDD(選択、曲)」、スイッチ18bには「F
DD(選択、音色)」、スイッチ18kには「FDD
(選択、次の曲、音色)」、スイッチ18nには「FD
D(選択、前の曲、音色)」、エンコーダ19には「F
DD(選択、回転値)」の5種の命令が定義されてお
り、本装置の動作モードが外部記憶装置書き込みの状態
である場合においてのスイッチ18fには「FDD(選
択、書き込み)」の命令が、また、本装置の動作モード
が外部記憶装置読み込みの状態である場合においてのス
イッチ18fには「FDD(選択、読み込み)」の命令
が定義されている。
理(図16)において実行される第3の処理であるFD
D処理は、スイッチ18もしくはエンコーダ19に対す
る操作指示に従って、フラッシュメモリを使用するRO
M13に格納されている音色(TONE)データあるい
は曲(SONG)データを、FDD22に挿入されるフ
ロッピーディスクとの間で相互に受け渡しさせる処理で
ある。図4に示した仕様データテーブルでは、本装置の
動作モードが外部記憶装置書き込み、または外部記憶装
置読み込みの状態である場合において、スイッチ18a
には「FDD(選択、曲)」、スイッチ18bには「F
DD(選択、音色)」、スイッチ18kには「FDD
(選択、次の曲、音色)」、スイッチ18nには「FD
D(選択、前の曲、音色)」、エンコーダ19には「F
DD(選択、回転値)」の5種の命令が定義されてお
り、本装置の動作モードが外部記憶装置書き込みの状態
である場合においてのスイッチ18fには「FDD(選
択、書き込み)」の命令が、また、本装置の動作モード
が外部記憶装置読み込みの状態である場合においてのス
イッチ18fには「FDD(選択、読み込み)」の命令
が定義されている。
【0192】楽器選択処理の処理内容を示すフローチャ
ートを図55に示し、同図に示した各処理の詳細を図5
6及び図57にフローチャートで示す。図55に示した
フローチャートは、前述した音源処理と同様に、本装置
全体の制御処理でのS1008 (図8)においてRO
M13に格納されている仕様データテーブルから読み出
した命令定義の内容が、この7種のうちのいずれである
かを判別する。
ートを図55に示し、同図に示した各処理の詳細を図5
6及び図57にフローチャートで示す。図55に示した
フローチャートは、前述した音源処理と同様に、本装置
全体の制御処理でのS1008 (図8)においてRO
M13に格納されている仕様データテーブルから読み出
した命令定義の内容が、この7種のうちのいずれである
かを判別する。
【0193】この結果、仕様データテーブルから読み出
した命令定義が「FDD(選択、曲)」(図55、S6
001の判定結果がYes)ならばFDD(選択、曲)
処理を実行する(S6002)。この詳細は、図56
(A)に示すように、変数FDFに「0」を代入する処
理である(S6111)。
した命令定義が「FDD(選択、曲)」(図55、S6
001の判定結果がYes)ならばFDD(選択、曲)
処理を実行する(S6002)。この詳細は、図56
(A)に示すように、変数FDFに「0」を代入する処
理である(S6111)。
【0194】また、仕様データテーブルから読み出した
命令定義が「FDD(選択、音色)」(図55、S60
03の判定結果がYes)ならばFDD(選択、音色)
処理を実行する(S6004)。この詳細は、図56
(B)に示すように、変数FDFに「1」を代入する処
理である(S6121)。
命令定義が「FDD(選択、音色)」(図55、S60
03の判定結果がYes)ならばFDD(選択、音色)
処理を実行する(S6004)。この詳細は、図56
(B)に示すように、変数FDFに「1」を代入する処
理である(S6121)。
【0195】また、仕様データテーブルから読み出した
命令定義が「FDD(選択、書き込み)」(図55、S
6005の判定結果がYes)ならばFDD(選択、書
き込み)処理を実行する(S6006)。この処理の詳
細は、図56(C)に示すように、まず、変数FDFが
「1」であるか否かを判定し(S6131)、判定結果
がYesならばROM13に格納されているTONEデ
ータ群からRAM14の領域TONENO.の値で示さ
れる音色データTONE(TONENO.)を読み出し
てフロッピーディスクに格納(ストア)し (S613
2)、判定結果がNoならばROM13に格納されてい
るSONGデータ群からRAM14の領域SONGN
O.の値で示される曲データSONG(SONGN
O.)を読み出してフロッピーディスクに格納(スト
ア)する(S6133)処理である。
命令定義が「FDD(選択、書き込み)」(図55、S
6005の判定結果がYes)ならばFDD(選択、書
き込み)処理を実行する(S6006)。この処理の詳
細は、図56(C)に示すように、まず、変数FDFが
「1」であるか否かを判定し(S6131)、判定結果
がYesならばROM13に格納されているTONEデ
ータ群からRAM14の領域TONENO.の値で示さ
れる音色データTONE(TONENO.)を読み出し
てフロッピーディスクに格納(ストア)し (S613
2)、判定結果がNoならばROM13に格納されてい
るSONGデータ群からRAM14の領域SONGN
O.の値で示される曲データSONG(SONGN
O.)を読み出してフロッピーディスクに格納(スト
ア)する(S6133)処理である。
【0196】また、仕様データテーブルから読み出した
命令定義が「FDD(選択、読み込み)」(図55、S
6007の判定結果がYes)ならばFDD(選択、読
み込み)処理を実行する(S6008)。この処理の詳
細は、図56(D)に示すように、まず、変数FDFが
「1」であるか否かを判定し(S6141)、判定結果
がYesならばフロッピーディスクに格納されている音
色データを読み出してフラッシュメモリであるROM1
3のTONEデータ群の領域TONENO.の値で示さ
れるTONE(TONENO.)の領域に格納(スト
ア)し(S6142)、判定結果がNoならばフロッピ
ーディスクに格納されている曲データを読み出してRO
M13のSONGデータ群の領域SONGNO.の値で
示されるSONG(SONGNO.)の領域に格納(ス
トア)する(S6143)処理である。
命令定義が「FDD(選択、読み込み)」(図55、S
6007の判定結果がYes)ならばFDD(選択、読
み込み)処理を実行する(S6008)。この処理の詳
細は、図56(D)に示すように、まず、変数FDFが
「1」であるか否かを判定し(S6141)、判定結果
がYesならばフロッピーディスクに格納されている音
色データを読み出してフラッシュメモリであるROM1
3のTONEデータ群の領域TONENO.の値で示さ
れるTONE(TONENO.)の領域に格納(スト
ア)し(S6142)、判定結果がNoならばフロッピ
ーディスクに格納されている曲データを読み出してRO
M13のSONGデータ群の領域SONGNO.の値で
示されるSONG(SONGNO.)の領域に格納(ス
トア)する(S6143)処理である。
【0197】また、仕様データテーブルから読み出した
命令定義が「FDD(選択、次の曲、音色)」(図5
5、S6009の判定結果がYes)ならばFDD(選
択、次)処理を実行する(S6010)。この詳細は、
図57(E)に示すように、まず、変数FDFが「1」
であるか否かを判定し(S6151)、判定結果がYe
sならば領域TONENO.の値をインクリメント
(「1」だけ加算して格納)し(S6152)、判定結
果がNoならば領域SONGNO.の値をインクリメン
トする(S6153)処理である。
命令定義が「FDD(選択、次の曲、音色)」(図5
5、S6009の判定結果がYes)ならばFDD(選
択、次)処理を実行する(S6010)。この詳細は、
図57(E)に示すように、まず、変数FDFが「1」
であるか否かを判定し(S6151)、判定結果がYe
sならば領域TONENO.の値をインクリメント
(「1」だけ加算して格納)し(S6152)、判定結
果がNoならば領域SONGNO.の値をインクリメン
トする(S6153)処理である。
【0198】また、仕様データテーブルから読み出した
命令定義が「FDD(選択、前の曲、音色)」(図5
5、S6011の判定結果がYes)ならばFDD(選
択、次)処理を実行する(S6012)。この詳細は、
図57(F)に示すように、まず、変数FDFが「1」
であるか否かを判定し(S6161)、判定結果がYe
sならば領域TONENO.の値をデクリメント
(「1」だけ減算して格納)し(S6162)、判定結
果がNoならば領域SONGNO.の値をデクリメント
する(S6163)処理である。
命令定義が「FDD(選択、前の曲、音色)」(図5
5、S6011の判定結果がYes)ならばFDD(選
択、次)処理を実行する(S6012)。この詳細は、
図57(F)に示すように、まず、変数FDFが「1」
であるか否かを判定し(S6161)、判定結果がYe
sならば領域TONENO.の値をデクリメント
(「1」だけ減算して格納)し(S6162)、判定結
果がNoならば領域SONGNO.の値をデクリメント
する(S6163)処理である。
【0199】また、仕様データテーブルから読み出した
命令定義が「FDD(選択、回転値)」(図55、S6
013の判定結果がYes)ならばFDD(選択、回転
値)処理を実行する(S6014)。この詳細は、図5
7(G)に示すように、まず、エンコーダ19に対する
操作の操作量が格納されている変数SABUN(19)
を変数Nに代入し(S6171)、続いて、変数FDF
が「1」であるか否かを判定し(S6172)、判定結
果がYesならば領域TONENO.の値に変数Nの値
を加算した結果を改めて領域TONENO.に格納し
(S6173)、判定結果がNoならば領域SONGN
O.の値に変数Nの値を加算した結果を改めて領域SO
NGNO.に格納する(S6174)処理である。
命令定義が「FDD(選択、回転値)」(図55、S6
013の判定結果がYes)ならばFDD(選択、回転
値)処理を実行する(S6014)。この詳細は、図5
7(G)に示すように、まず、エンコーダ19に対する
操作の操作量が格納されている変数SABUN(19)
を変数Nに代入し(S6171)、続いて、変数FDF
が「1」であるか否かを判定し(S6172)、判定結
果がYesならば領域TONENO.の値に変数Nの値
を加算した結果を改めて領域TONENO.に格納し
(S6173)、判定結果がNoならば領域SONGN
O.の値に変数Nの値を加算した結果を改めて領域SO
NGNO.に格納する(S6174)処理である。
【0200】また、S6001からS6014までのう
ちの偶数ステップに示されているいずれかの処理を実行
した後、または、S6001からS6014までのうち
の奇数ステップに示されている各判定処理の結果がいず
れもNoである場合には、今回のFDD処理を終了して
図16に示す仕様データ処理へ戻る。
ちの偶数ステップに示されているいずれかの処理を実行
した後、または、S6001からS6014までのうち
の奇数ステップに示されている各判定処理の結果がいず
れもNoである場合には、今回のFDD処理を終了して
図16に示す仕様データ処理へ戻る。
【0201】[7.制御処理の変形例]以上までに説明
した各種処理をCPU11が実行することによって本装
置は機能する。
した各種処理をCPU11が実行することによって本装
置は機能する。
【0202】なお、本装置においては、仕様データテー
ブルをROM13内に1つだけ備えるようにしていた
が、ROM13内に仕様データテーブルを複数備えるよ
うにしてもよい。この場合には、図8に示した本装置全
体の制御処理の処理内容を図58(A)に示すフローチ
ャートのように変更し、全体のイニシャライズ処理(S
1001)の後に、LCD15に仕様データテーブルの
選択を使用者に促す画面を表示させて(S7001)ス
イッチ18等操作子の操作による使用者からの選択指示
を監視し(S7002)、選択された仕様データテーブ
ルのみをROM13からRAM14の所定領域に転送し
て格納し(S7003)、S1002(図8)以降の処
理に進むようにする。そして、この処理以降で仕様デー
タテーブルを参照する場合には、RAM14の所定領域
に格納したものを参照するようにする。こうすることに
より、例えば使用者毎に異なる嗜好に応じて、各操作子
への機能割り当てを変更するなどの機能を提供すること
ができるようになる。
ブルをROM13内に1つだけ備えるようにしていた
が、ROM13内に仕様データテーブルを複数備えるよ
うにしてもよい。この場合には、図8に示した本装置全
体の制御処理の処理内容を図58(A)に示すフローチ
ャートのように変更し、全体のイニシャライズ処理(S
1001)の後に、LCD15に仕様データテーブルの
選択を使用者に促す画面を表示させて(S7001)ス
イッチ18等操作子の操作による使用者からの選択指示
を監視し(S7002)、選択された仕様データテーブ
ルのみをROM13からRAM14の所定領域に転送し
て格納し(S7003)、S1002(図8)以降の処
理に進むようにする。そして、この処理以降で仕様デー
タテーブルを参照する場合には、RAM14の所定領域
に格納したものを参照するようにする。こうすることに
より、例えば使用者毎に異なる嗜好に応じて、各操作子
への機能割り当てを変更するなどの機能を提供すること
ができるようになる。
【0203】また、仕様データテーブルをROMカード
やフロッピーディスク、CD−ROM等の可搬型の記憶
媒体に備えるようにすると共に、この記憶媒体からのデ
ータ読み出しを行なう読み出し装置を本装置に備えるよ
うにし、仕様データテーブルをCPU11が参照する場
合にはこの記憶媒体の仕様データテーブルを直接参照
し、もしくは記憶媒体から読み出して格納したRAM1
4の仕様データテーブルを間接的に参照するようにして
もよい。この構成によれば、使用者が読み出し装置に挿
入する記憶媒体を取り替えるだけで本装置を異なる仕様
の下で機能させることができるようになり、便利であ
る。
やフロッピーディスク、CD−ROM等の可搬型の記憶
媒体に備えるようにすると共に、この記憶媒体からのデ
ータ読み出しを行なう読み出し装置を本装置に備えるよ
うにし、仕様データテーブルをCPU11が参照する場
合にはこの記憶媒体の仕様データテーブルを直接参照
し、もしくは記憶媒体から読み出して格納したRAM1
4の仕様データテーブルを間接的に参照するようにして
もよい。この構成によれば、使用者が読み出し装置に挿
入する記憶媒体を取り替えるだけで本装置を異なる仕様
の下で機能させることができるようになり、便利であ
る。
【0204】また、本装置と他のキーボード装置やコン
ピュータと直接、あるいはインターネット等の通信ネッ
トワークとを介してデータ交換を行なえるようにするた
めのインターフェース部を本装置に設け、仕様データテ
ーブルを他のキーボード装置やコンピュータから受け取
ることができるように構成してもよい。この場合には、
図8に示した本装置全体の制御処理の処理内容を図58
(B)に示すフローチャートのように変更し、全体のイ
ニシャライズ処理(S1001)の後に、LCD15に
本装置が仕様データテーブルの受信動作状態にあること
を使用者に促す画面を表示させて(S7011)インタ
フェース部での仕様データテーブルの受信の開始を監視
し(S7012)、仕様データテーブルの受信が開始さ
れたら受信データをRAM14の所定領域に転送して格
納する処理(S7013)をその受信終了まで繰り返す
(S7014)。そして、仕様データテーブルの受信を
終了した後に、S1002(図8)以降の処理に進むよ
うにする。そして、この処理以降で仕様データテーブル
を参照する場合には、RAM14の所定領域に格納した
ものを参照するようにする。こうすることにより、例え
ば、本装置が使用者に供給された後であっても、新規な
機能を本装置に追加するなどの機能拡張を使用者に提供
することができるようになる。また、本装置では、RO
M13にフラッシュメモリを使用しているので、RAM
14に格納した仕様データテーブルをROM13に転送
して、仕様データテーブルを書き換えてしまうようにし
てもよい。
ピュータと直接、あるいはインターネット等の通信ネッ
トワークとを介してデータ交換を行なえるようにするた
めのインターフェース部を本装置に設け、仕様データテ
ーブルを他のキーボード装置やコンピュータから受け取
ることができるように構成してもよい。この場合には、
図8に示した本装置全体の制御処理の処理内容を図58
(B)に示すフローチャートのように変更し、全体のイ
ニシャライズ処理(S1001)の後に、LCD15に
本装置が仕様データテーブルの受信動作状態にあること
を使用者に促す画面を表示させて(S7011)インタ
フェース部での仕様データテーブルの受信の開始を監視
し(S7012)、仕様データテーブルの受信が開始さ
れたら受信データをRAM14の所定領域に転送して格
納する処理(S7013)をその受信終了まで繰り返す
(S7014)。そして、仕様データテーブルの受信を
終了した後に、S1002(図8)以降の処理に進むよ
うにする。そして、この処理以降で仕様データテーブル
を参照する場合には、RAM14の所定領域に格納した
ものを参照するようにする。こうすることにより、例え
ば、本装置が使用者に供給された後であっても、新規な
機能を本装置に追加するなどの機能拡張を使用者に提供
することができるようになる。また、本装置では、RO
M13にフラッシュメモリを使用しているので、RAM
14に格納した仕様データテーブルをROM13に転送
して、仕様データテーブルを書き換えてしまうようにし
てもよい。
【0205】また、本装置においては、ROM13に格
納されている仕様データテーブルに、CPU11に行な
わせる制御処理の内容の定義(命令定義)を示すように
していたが、その代わりに、CPU11に実行させるこ
とによって命令定義に対応する制御をCPU11に行な
わせることのできる制御プログラムのバイナリコードを
仕様データテーブルの格納領域に直接格納しておき、C
PU11が操作子に対する操作を検出した場合には、現
在の本装置の動作モードと各操作子に対する操作との関
係から、対応する制御プログラムのバイナリコードを仕
様データテーブルからCPU11が直接読み出して実行
することによって所望の制御が行われるようにしてもよ
い。この構成によれば、各操作子に対する操作に対して
制御動作が開始されるまでの応答速度を向上させること
ができる。
納されている仕様データテーブルに、CPU11に行な
わせる制御処理の内容の定義(命令定義)を示すように
していたが、その代わりに、CPU11に実行させるこ
とによって命令定義に対応する制御をCPU11に行な
わせることのできる制御プログラムのバイナリコードを
仕様データテーブルの格納領域に直接格納しておき、C
PU11が操作子に対する操作を検出した場合には、現
在の本装置の動作モードと各操作子に対する操作との関
係から、対応する制御プログラムのバイナリコードを仕
様データテーブルからCPU11が直接読み出して実行
することによって所望の制御が行われるようにしてもよ
い。この構成によれば、各操作子に対する操作に対して
制御動作が開始されるまでの応答速度を向上させること
ができる。
【0206】また、上述の例において、制御プログラム
のソースコードを仕様データテーブルの格納領域に格納
しておくようにすることに併せ、この制御プログラムを
CPU11が実行できるバイナリコードに変換するイン
タプリタを備えるようにし、対応する制御プログラムの
ソースコードをCPU11が読み出し、その制御プログ
ラムをインタプリタでバイナリコードに変換して実行す
るようにして所望の制御が行われるようにしてもよく、
この構成によれば、本装置の仕様変更を行なう場合でも
仕様データテーブル内の該当する制御プログラムをソー
スコードのレベルで修正することができるので、修正作
業が容易である。
のソースコードを仕様データテーブルの格納領域に格納
しておくようにすることに併せ、この制御プログラムを
CPU11が実行できるバイナリコードに変換するイン
タプリタを備えるようにし、対応する制御プログラムの
ソースコードをCPU11が読み出し、その制御プログ
ラムをインタプリタでバイナリコードに変換して実行す
るようにして所望の制御が行われるようにしてもよく、
この構成によれば、本装置の仕様変更を行なう場合でも
仕様データテーブル内の該当する制御プログラムをソー
スコードのレベルで修正することができるので、修正作
業が容易である。
【0207】また、仕様データテーブルの例えばスイッ
チ18a〜18jへの機能割り当てについて、使用者が
自由に割り当てを変更できるようにしてもよく、更に使
用者による各スイッチの操作回数をカウントし、この結
果得られる各機能の使用頻度順に仕様データテーブルの
定義内容を変更するように構成してもよい。この構成に
よれば、例えば操作しやすい位置に配置されているスイ
ッチに使用頻度の高い機能を割り当てることができるよ
うして、本装置の操作性を向上させることができる。
チ18a〜18jへの機能割り当てについて、使用者が
自由に割り当てを変更できるようにしてもよく、更に使
用者による各スイッチの操作回数をカウントし、この結
果得られる各機能の使用頻度順に仕様データテーブルの
定義内容を変更するように構成してもよい。この構成に
よれば、例えば操作しやすい位置に配置されているスイ
ッチに使用頻度の高い機能を割り当てることができるよ
うして、本装置の操作性を向上させることができる。
【0208】また、仕様データテーブルの他の利用例と
して、例えば、音源20に操作確認音を発音させる命令
定義を仕様データテーブルの各欄に追加し、更に、この
命令定義に対応する制御をCPU11に実行させるプロ
グラムを追加すれば、本装置の各操作子に対する操作が
行われたときに操作確認音を出力することができるよう
になる。こうすると、操作子の操作を確実に行なえたこ
とを使用者が確認できるので、便利である。また、この
例において、仕様データテーブルの各欄の定義を使用者
が設定できるようにしておけば、ステージ演奏時などと
いった上記の確認音がむしろ不都合な場合においては確
認音を発音させないようにすることもでき、有益であ
る。
して、例えば、音源20に操作確認音を発音させる命令
定義を仕様データテーブルの各欄に追加し、更に、この
命令定義に対応する制御をCPU11に実行させるプロ
グラムを追加すれば、本装置の各操作子に対する操作が
行われたときに操作確認音を出力することができるよう
になる。こうすると、操作子の操作を確実に行なえたこ
とを使用者が確認できるので、便利である。また、この
例において、仕様データテーブルの各欄の定義を使用者
が設定できるようにしておけば、ステージ演奏時などと
いった上記の確認音がむしろ不都合な場合においては確
認音を発音させないようにすることもでき、有益であ
る。
【0209】
【発明の効果】以上詳細に説明したように、本発明は、
操作されることによって楽音発生装置の諸機能の動作に
関する設定が行なわれる操作子を有するその楽音発生装
置に、その楽音発生装置の動作状態とその操作子の用途
との関係の定義を示す定義情報を格納する格納手段と、
操作子に対する操作に応じ、格納手段に格納されている
定義情報に定義されている楽音発生装置の現在の動作状
態においての用途を実現するようにその楽音発生装置を
制御する制御手段を備えるように構成する。
操作されることによって楽音発生装置の諸機能の動作に
関する設定が行なわれる操作子を有するその楽音発生装
置に、その楽音発生装置の動作状態とその操作子の用途
との関係の定義を示す定義情報を格納する格納手段と、
操作子に対する操作に応じ、格納手段に格納されている
定義情報に定義されている楽音発生装置の現在の動作状
態においての用途を実現するようにその楽音発生装置を
制御する制御手段を備えるように構成する。
【0210】そして、この構成によって、楽音発生装置
の現在の動作状態に応じて操作子の用途を変更させるこ
とが可能となり、しかも、楽音発生装置に装備する機能
の追加、変更、削除を行なう場合に必要な変更作業が容
易となる。
の現在の動作状態に応じて操作子の用途を変更させるこ
とが可能となり、しかも、楽音発生装置に装備する機能
の追加、変更、削除を行なう場合に必要な変更作業が容
易となる。
【0211】このように、本発明によれば、楽音発生装
置において、装備する機能の追加、変更、削除を柔軟に
行なえるようにすることが可能となる効果を奏する。
置において、装備する機能の追加、変更、削除を柔軟に
行なえるようにすることが可能となる効果を奏する。
【図1】本発明を実施する電子キーボードの全体構成を
示す図である。
示す図である。
【図2】電子キーボードの操作部分の様子を示す図であ
る。
る。
【図3】LCDの表示例を示す図である。
【図4】仕様データテーブルの一例を示す図である。
【図5】ROM内の各データ群の格納の様子を示す図で
ある。
ある。
【図6】RAMのワークエリアの仕様状態を示す図であ
る。
る。
【図7】操作子及び楽器状態へ与えられている番号の定
義を示す図である。
義を示す図である。
【図8】ROMに格納されている制御プログラムの実行
によりCPUが行なう処理の処理内容を示すフローチャ
ートである。
によりCPUが行なう処理の処理内容を示すフローチャ
ートである。
【図9】タイマ処理の処理内容を示すフローチャートで
ある。
ある。
【図10】鍵盤処理の処理内容を示すフローチャートで
ある。
ある。
【図11】スイッチ処理の処理内容を示すフローチャー
トである。
トである。
【図12】スライダ処理の処理内容を示すフローチャー
トである。
トである。
【図13】エンコーダ処理の処理内容を示すフローチャ
ートである。
ートである。
【図14】楽曲再生処理の処理内容を示すフローチャー
トである。
トである。
【図15】伴奏再生処理の処理内容を示すフローチャー
トである。
トである。
【図16】仕様データ処理の処理内容を示すフローチャ
ートである。
ートである。
【図17】音源処理の処理内容を示すフローチャートで
ある。
ある。
【図18】音源選択処理の処理内容を示すフローチャー
トである。
トである。
【図19】図18に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図20】音源(選択、回転値)処理の処理内容を示す
フローチャートである。
フローチャートである。
【図21】音源音色処理の処理内容を示すフローチャー
トである。
トである。
【図22】図21に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図23】音源ピッチ処理の処理内容を示すフローチャ
ートである。
ートである。
【図24】図23に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図25】音源フィルタ処理の処理内容を示すフローチ
ャートである。
ャートである。
【図26】図25に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図27】音源エンベロープ処理の処理内容を示すフロ
ーチャートである。
ーチャートである。
【図28】図27に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図29】音源変調処理の処理内容を示すフローチャー
トである。
トである。
【図30】図29に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図31】音源鍵盤処理の処理内容を示すフローチャー
トである。
トである。
【図32】楽器処理の処理内容を示すフローチャートで
ある。
ある。
【図33】楽器状態処理の処理内容を示すフローチャー
トである。
トである。
【図34】楽器(状態、起動画面)処理の処理内容を示
すフローチャートである。
すフローチャートである。
【図35】楽器(状態、自動演奏停止)処理の処理内容
を示すフローチャートである。
を示すフローチャートである。
【図36】楽器(状態、自動演奏中)処理の処理内容を
示すフローチャートである。
示すフローチャートである。
【図37】楽器(状態、自動演奏待機)処理の処理内容
を示すフローチャートである。
を示すフローチャートである。
【図38】楽器(状態、音源パラメータ変更)処理の処
理内容を示すフローチャートである。
理内容を示すフローチャートである。
【図39】楽器(状態、演奏パラメータ変更)処理の処
理内容を示すフローチャートである。
理内容を示すフローチャートである。
【図40】楽器(状態、外部記憶装置書き込み)処理の
処理内容を示すフローチャートである。
処理内容を示すフローチャートである。
【図41】楽器(状態、外部記憶装置読み込み)処理の
処理内容を示すフローチャートである。
処理内容を示すフローチャートである。
【図42】楽器選択処理の処理内容を示すフローチャー
トである。
トである。
【図43】図42に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図44】楽器(選択、回転値)処理の処理内容を示す
フローチャートである。
フローチャートである。
【図45】楽器テンポ処理の処理内容を示すフローチャ
ートである。
ートである。
【図46】図45に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図47】楽器音量処理の処理内容を示すフローチャー
トである。
トである。
【図48】図47に示す処理の詳細を示すフローチャー
トである。
トである。
【図49】楽器曲処理の処理内容を示すフローチャート
である。
である。
【図50】図49に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図51】楽器伴奏処理の処理内容を示すフローチャー
トである。
トである。
【図52】図51に示す各処理の詳細を示すフローチャ
ートである。
ートである。
【図53】楽器移調処理の処理内容を示すフローチャー
トである。
トである。
【図54】図53に示す処理の詳細を示すフローチャー
トである。
トである。
【図55】FDD処理の処理内容を示すフローチャート
である。
である。
【図56】図55に示す各処理の詳細を示すフローチャ
ート(その1)である。
ート(その1)である。
【図57】図55に示す各処理の詳細を示すフローチャ
ート(その2)である。
ート(その2)である。
【図58】図8に示した装置全体の制御処理の変形例を
示す図である。
示す図である。
11 CPU 12 タイマ 13 ROM 14 RAM 15 LCD 16 LED 17 スライダ 18 スイッチ 19 エンコーダ 20 音源 21 鍵盤 22 FDD 23 バス
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5D378 BB07 KK13 MM21 MM41 MM58 MM63 TT13 TT14 TT16 TT18 TT19 TT20 TT24 XX10 XX13 XX15 XX41
Claims (7)
- 【請求項1】 操作されることによって楽音発生装置の
備える諸機能の動作に関する設定が行なわれる操作子を
有する該楽音発生装置において、 該楽音発生装置の動作状態と前記操作子の用途との関係
の定義を示す定義情報を格納する格納手段と、 前記操作子に対する操作に応じ、前記定義情報に定義さ
れている該楽音発生装置の現在の動作状態においての用
途を実現するように該楽音発生装置を制御する制御手段
と、 を有することを特徴とする楽音発生装置。 - 【請求項2】 前記定義情報はテーブル情報であること
を特徴とする請求項1に記載の楽音発生装置。 - 【請求項3】 前記格納手段は、前記定義情報を複数格
納し、 前記複数格納されている定義情報から前記制御手段が制
御内容を決定するための定義情報を選択する選択手段を
更に有する、 ことを特徴とする請求項1に記載の楽音発生装置。 - 【請求項4】 前記格納手段に格納されている前記定義
情報を変更する定義情報変更手段を更に有することを特
徴とする請求項1に記載の楽音発生装置。 - 【請求項5】 前記制御手段は中央処理装置であり、 前記定義情報は、前記中央処理装置に実行させることに
よって該中央処理装置が前記操作子の用途を実現するよ
うに該楽音発生装置を制御する制御プログラムを含む、 ことを特徴とする請求項1に記載の楽音発生装置。 - 【請求項6】 他の機器から送付される前記定義情報を
前記格納手段に格納させる制御を行なう格納制御手段を
更に有することを特徴とする請求項1に記載の楽音発生
装置。 - 【請求項7】 操作されることによって楽音発生装置の
諸機能の動作に関する設定が行なわれる操作子を有する
該楽音発生装置の制御方法であって、 該楽音発生装置の動作状態と前記操作子の用途との関係
の定義を示す定義情報を参照し、 前記操作子に対する操作に応じ、前記定義情報に定義さ
れている該楽音発生装置の現在の動作状態においての用
途を実現するように該楽音発生装置を制御する、 ことを特徴とする楽音発生装置の制御方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11211203A JP2001042871A (ja) | 1999-07-26 | 1999-07-26 | 楽音発生装置及び楽音発生装置の制御方法 |
US09/619,688 US7009101B1 (en) | 1999-07-26 | 2000-07-19 | Tone generating apparatus and method for controlling tone generating apparatus |
DE60036165T DE60036165T2 (de) | 1999-07-26 | 2000-07-25 | Vorrichtung zur Tonerzeugung und Verfahren um diese zu steuern |
EP00115945A EP1073035B1 (en) | 1999-07-26 | 2000-07-25 | Tone generating apparatus and method for controlling tone generating apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11211203A JP2001042871A (ja) | 1999-07-26 | 1999-07-26 | 楽音発生装置及び楽音発生装置の制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001042871A true JP2001042871A (ja) | 2001-02-16 |
Family
ID=16602073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11211203A Abandoned JP2001042871A (ja) | 1999-07-26 | 1999-07-26 | 楽音発生装置及び楽音発生装置の制御方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7009101B1 (ja) |
EP (1) | EP1073035B1 (ja) |
JP (1) | JP2001042871A (ja) |
DE (1) | DE60036165T2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7605322B2 (en) * | 2005-09-26 | 2009-10-20 | Yamaha Corporation | Apparatus for automatically starting add-on progression to run with inputted music, and computer program therefor |
US9135435B2 (en) * | 2013-02-13 | 2015-09-15 | Intel Corporation | Binary translator driven program state relocation |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60149089A (ja) | 1984-08-16 | 1985-08-06 | ヤマハ株式会社 | 電子楽器の楽音設定装置 |
US4930390A (en) * | 1989-01-19 | 1990-06-05 | Yamaha Corporation | Automatic musical performance apparatus having separate level data storage |
US5300723A (en) | 1990-12-28 | 1994-04-05 | Yamaha Corporation | Electronic musical instrument |
JP2893974B2 (ja) | 1991-01-17 | 1999-05-24 | ヤマハ株式会社 | 電子楽器 |
JP3306755B2 (ja) | 1991-07-18 | 2002-07-24 | ヤマハ株式会社 | 電子楽器 |
US5399800A (en) * | 1992-01-28 | 1995-03-21 | Kabushiki Kaisha Kawai Gakki Seisakusho | Electronic musical instrument including an apparatus for aurally and visually displaying specification explanations and states of the electronic musical instrument |
JP2534012B2 (ja) | 1992-12-07 | 1996-09-11 | 富士写真フイルム株式会社 | 穿孔方法及び装置 |
US5478967A (en) * | 1993-03-30 | 1995-12-26 | Kabushiki Kaisha Kawai Gakki Seisakusho | Automatic performing system for repeating and performing an accompaniment pattern |
JP3561953B2 (ja) | 1994-05-23 | 2004-09-08 | ヤマハ株式会社 | 電子楽器 |
JP3632411B2 (ja) * | 1997-09-24 | 2005-03-23 | ヤマハ株式会社 | 楽音信号生成方法、楽音信号生成装置及びプログラムを記録した媒体 |
-
1999
- 1999-07-26 JP JP11211203A patent/JP2001042871A/ja not_active Abandoned
-
2000
- 2000-07-19 US US09/619,688 patent/US7009101B1/en not_active Expired - Lifetime
- 2000-07-25 DE DE60036165T patent/DE60036165T2/de not_active Expired - Lifetime
- 2000-07-25 EP EP00115945A patent/EP1073035B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE60036165D1 (de) | 2007-10-11 |
EP1073035A3 (en) | 2004-01-07 |
EP1073035B1 (en) | 2007-08-29 |
US7009101B1 (en) | 2006-03-07 |
DE60036165T2 (de) | 2007-12-13 |
EP1073035A2 (en) | 2001-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4586417A (en) | Electronic musical instruments provided with reverberation tone generating apparatus | |
US4338674A (en) | Digital waveform generating apparatus | |
EP0047175B1 (en) | Speech synthesizer apparatus | |
US20020112596A1 (en) | Musical performance data search system | |
JP2001042871A (ja) | 楽音発生装置及び楽音発生装置の制御方法 | |
US5686682A (en) | Electronic musical instrument capable of assigning waveform samples to divided partial tone ranges | |
US4831653A (en) | System for registering speech information to make a voice dictionary | |
JP2003263159A (ja) | 楽音生成装置および楽音生成用コンピュータプログラム | |
US5578778A (en) | Electronic musical instrument | |
US5239124A (en) | Iteration control system for an automatic playing apparatus | |
JP3277707B2 (ja) | 電子楽器 | |
EP0542313A2 (en) | Adaptive chord generating apparatus and the method thereof | |
JPS58220189A (ja) | 自動演奏装置 | |
JP3230265B2 (ja) | 電子楽器の発音チャンネル割当装置 | |
US4338844A (en) | Tone source circuit for electronic musical instruments | |
US5189239A (en) | Data selection apparatus for electronic musical instrument which utilizes use frequency values to select musical data | |
US5783766A (en) | Musical sound producing device in electronic musical instrument | |
JP3139081B2 (ja) | 電子楽器のパラメータ設定装置 | |
US4415890A (en) | Character generator capable of storing character patterns at different addresses | |
JP2661487B2 (ja) | 電子楽器 | |
JP2576615B2 (ja) | 処理装置 | |
JP2819616B2 (ja) | ポルタメント機能を有する電子楽器 | |
JPH0764554A (ja) | 電子楽器 | |
JPH03192297A (ja) | 演奏記録装置 | |
JP3308726B2 (ja) | 電子楽器のパラメータ編集装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040421 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050829 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050913 |
|
A762 | Written abandonment of application |
Free format text: JAPANESE INTERMEDIATE CODE: A762 Effective date: 20051111 |