JP2705695B2 - 自動演奏装置 - Google Patents

自動演奏装置

Info

Publication number
JP2705695B2
JP2705695B2 JP8322231A JP32223196A JP2705695B2 JP 2705695 B2 JP2705695 B2 JP 2705695B2 JP 8322231 A JP8322231 A JP 8322231A JP 32223196 A JP32223196 A JP 32223196A JP 2705695 B2 JP2705695 B2 JP 2705695B2
Authority
JP
Japan
Prior art keywords
tempo
data
storage means
information
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP8322231A
Other languages
English (en)
Other versions
JPH09166980A (ja
Inventor
一郎 大須賀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP8322231A priority Critical patent/JP2705695B2/ja
Publication of JPH09166980A publication Critical patent/JPH09166980A/ja
Application granted granted Critical
Publication of JP2705695B2 publication Critical patent/JP2705695B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、自動演奏装置に
関し、特に第1の記憶手段から音高情報を読出して曲の
自動演奏を行ないつつ音高情報及びタイミング情報を第
2の記憶手段に書込むと共にテンポ指示操作に応じてテ
ンポ制御情報及びテンポ制御タイミング情報を第2の記
憶手段にリアルタイムで書込むことによりテンポ制御情
報を含む自動演奏情報を簡単に作成可能としたものであ
る。
【0002】
【従来の技術】従来、自動演奏装置としては、演奏デー
タメモリ中に音高・符長データと共にテンポ制御データ
を記憶しておき、テンポクロック信号及び符長データに
基づいて音高データを順次に読出して自動演奏を行なう
際にテンポ制御データを読出してテンポクロック信号の
周波数を制御することにより自動演奏テンポを自動的に
変更するようにしたものが知られている(例えば、特公
昭64−8832号公報参照)。
【0003】この種の自動演奏装置において、自動演奏
のテンポ変更パターンをプログラムするには、演奏デー
タメモリ中で音高・符長データ配列に関して任意の記憶
位置を指定して所望のテンポに対応したテンポ制御情報
を書込む方法が採られていた。
【0004】
【発明が解決しようとする課題】上記した従来技術によ
ると、所望のテンポ変更パターンを有する自動演奏デー
タを作成するには、音高・符長データ配列における所望
の位置を指定して所望のテンポに対応したテンポ制御情
報を書込む必要があり、操作が面倒であった。
【0005】また、プログラムしたテンポ変更パターン
に従って自動演奏を進行させてみたところ、不満足なテ
ンポ変更個所が発見されたときは、自動演奏を停止又は
終了させた後メモリ内容を書換える必要があり、操作が
面倒であった。
【0006】この発明の目的は、初心者等であっても簡
単且つ確実に所望のテンポ変更パターンを有する自動演
奏情報を作成することができる新規な自動演奏装置を提
供することにある。
【0007】
【課題を解決するための手段】この発明に係る自動演奏
装置は、所望の曲を自動演奏するための複数の音高情報
及び複数のタイミング情報を記憶すると共に、該自動演
奏のテンポを制御するためのテンポ制御情報を所望によ
り記憶する第1の記憶手段と、テンポクロック信号を発
生する手段と、前記テンポクロック信号と前記複数のタ
イミング情報とに基づいて前記第1の記憶手段から前記
複数の音高情報を前記曲の進行に従って読出すと共に各
音高情報の読出しのたびに該音高情報に対応する楽音信
号を発生することにより前記曲の自動演奏を遂行する自
動演奏手段と、所望のテンポ値を指示するための操作手
段と、この操作手段での指示操作に応答して該指示操作
で指示されるテンポ値に対応したテンポ制御情報に基づ
いて前記テンポクロック信号の周波数を制御することに
より前記自動演奏のテンポを制御する制御手段と、情報
を書込可能な第2の記憶手段と、前記第1の記憶手段か
ら音高情報が読出されるたびに該音高情報と該読出しの
タイミングに対応するタイミング情報とを前記第2の記
憶手段に書込むと共に、前記操作手段での指示操作に応
答して該指示操作で指示されるテンポ値に対応したテン
ポ制御情報と該指示操作のタイミングに対応したテンポ
制御タイミング情報とを前記第2の記憶手段に書込む書
込手段と、前記第1の記憶手段に記憶したテンポ制御情
報を検知する検知手段と、この検知手段でのテンポ制御
情報検知に応答して前記第1の記憶手段から前記第2の
記憶手段へのテンポ制御情報転送と前記第1の記憶手段
に記憶したテンポ制御情報に基づく前記自動演奏のテン
ポ制御とを禁止する禁止手段とを備えたものである。
【0008】この発明の構成によれば、第1の記憶手段
に自動演奏用の複数の音高情報及び複数のタイミング情
報のみを記憶しておいた場合(テンポ制御情報を記憶し
ておかなかった場合)、第1の記憶手段から曲進行に従
って読出される複数の音高情報に基づいて曲の自動演奏
が行なわれる。また、第1の記憶手段から音高情報が読
出されるたびに該音高情報が該読出しのタイミングに対
応するタイミング情報と共に第2の記憶手段に書込まれ
る。
【0009】自動演奏中において、操作手段でテンポ値
を指示すると、指示されたテンポ値に対応するテンポ制
御情報に基づいて自動演奏のテンポが制御されると共
に、指示されたテンポ値に対応するテンポ制御情報が指
示操作のタイミングに対応したテンポ制御タイミング情
報と共に第2の記憶手段に書込まれる。
【0010】従って、第2の記憶手段には、曲に関する
複数の音高情報及び複数のタイミング情報とテンポ指示
に関するテンポ制御情報及びテンポ制御タイミング情報
とを含む自動演奏情報が面倒な書込操作なしに得られ
る。
【0011】一方、第1の記憶手段に自動演奏用の複数
の音高情報及び複数のタイミング情報とを記憶すると共
にテンポ制御情報を記憶しておいた場合には、上記した
と同様に複数の音高情報に基づいて自動演奏が行なわれ
ると共に第2の記憶手段に音高情報及びタイミング情報
が書込まれる。また、第2の記憶手段には、操作手段で
のテンポ値指示操作に応じてテンポ制御情報及びテンポ
制御タイミング情報が書込まれる。しかしながら、第1
の記憶手段に記憶したテンポ制御情報は、検知手段での
検知に応答して禁止手段が第2の記憶手段への転送を禁
止するので、第2の記憶手段に書込まれない。従って、
テンポ制御情報のみを更新(又は書換え)した自動演奏
情報が簡単に得られる。
【0012】禁止手段は、第1の記憶手段に記憶したテ
ンポ制御情報の検知に応答して該テンポ制御情報に基づ
く自動演奏のテンポ制御を禁止する。このため、自動演
奏のテンポは、操作手段で指示するテンポ値のみに対応
して制御されるようになり、自動演奏でテンポを確認し
ながら簡単に所望のテンポ変更パターンをプログラムす
ることができる。
【0013】この発明の構成は、図7のモードNo.1
0,12の動作に対応し、禁止手段は、図16,17で
TMD=2の場合にデータ転送及びテンポ制御を実行し
ない点に対応する。
【0014】この発明の構成において、操作手段として
は、所望の絶対テンポ値を指示するための第1の操作子
と、所望の相対テンポ値を指示するための第2の操作子
とを用い、各操作子毎に上記したと同様に自動演奏のテ
ンポ制御と第2の記憶手段へのテンポ制御情報及びテン
ポ制御タイミング情報の書込みとを行なうようにしても
よい。このようにすると、絶対テンポ値と相対テンポ値
の組合せにより所望のテンポ変更パターンを迅速にプロ
グラム可能である。
【0015】
【発明の実施の形態】図1は、この発明の一実施形態に
係る自動演奏装置をそなえた電子楽器の構成を示すもの
で、この電子楽器は、マニアル演奏音発生、キー演奏デ
ータ及びテンポ制御データ等の演奏データの記録、記録
データに基づく演奏再生(自動演奏)、自動リズム演奏
等がマイクロコンピュータによって制御されるようにな
っている。
【0016】図1において、データバス10には、鍵盤
回路12、操作子及び表示器群14、中央処理装置(C
PU)16、プログラム及びデータメモリ18、レジス
タ群20、演奏データメモリ22、クロック発生器2
4、トーンジェネレータ(TG)26等が接続されてい
る。
【0017】鍵盤回路12は、パネル28に設けられた
鍵盤KBの各キー毎にキー操作情報を検出するようにな
っている。なお、鍵盤KBの各キーについては、例えば
2ならば36、C3 ならば48というように予めキー
コードが定められている。
【0018】操作子及び表示器群14は、パネル28等
に設けられた各種操作子及び表示器を含むもので、各操
作子毎に操作情報が検出されるようになっている。
【0019】この発明の実施に関係する操作子及び表示
器としては、テンポ値設定用のテンポボリュームTV
L、テンポアップ/ダウン用のフットコントローラFT
C、スタート/ストップスイッチSSW、モード指定ス
イッチTPS,TRS,KPS,KRS、テンポ表示器
TDP、モード表示器LED等が設けられている。スイ
ッチTPS及びTRSはいずれもテンポ制御データに関
するもので、それぞれ再生指定用及び記録指定用であ
る。また、スイッチKPS及びKRSはいずれもキー演
奏データに関するもので、それぞれ再生指定用及び記録
指定用である。
【0020】スイッチTPS,TRS,KPS,KRS
のオン/オフ組合せにより図7に示すようにNo.1〜
16のモードが存在する。図7において、「−」は無指
定、「P」は再生指定、「R」は記録指定をそれぞれ表
わす。TPS,TRS,KPS,KRSの各スイッチ
は、無指定状態では対応するモード表示LEDが消灯状
態であり、その状態でオンすると対応するLEDが点灯
して指定状態となり、指定状態でオンすると対応するL
EDが消灯して無指定状態に戻る。
【0021】CPU16は、メモリ18にストアしたプ
ログラムに従って楽音発生、記録、再生等のための各種
処理を実行するもので、これらの処理については図8乃
至図17について後述する。CPU16には、タイマ発
生器30から15msのクロック周期を有するタイマク
ロック信号TMが割込命令信号として供給され、この信
号TMを構成する各クロックパルスが図11の割込ルー
チンを開始させる。
【0022】メモリ18には、上記したプログラムの他
に、リズム種類毎に自動リズム演奏用のリズムパターン
データが記憶されると共に、図5及び図6について後述
するように第1及び第2の変換テーブルが記憶されてい
る。
【0023】レジスタ群20は、CPU16による各種
処理に際して利用される多数のレジスタを含むもので、
この発明の実施に関係するレジスタについては後述す
る。
【0024】演奏データメモリ22は、キー演奏デー
タ、テンポ制御データ等の演奏データを記憶するもの
で、詳しくは図2乃至図4について後述する。
【0025】クロック発生器24は、テンポクロック信
号TCLを発生するもので、この信号TCLは、CPU
16に割込命令信号として供給され、信号TCLを構成
する各クロックパルスが図13の割込みルーチンを開始
させる。信号TCLの周波数は、メモリ22に記憶した
テンポ制御データに基づいて制御可能であると共に、テ
ンポボリュームTVL又はフットコントローラFTCの
操作に基づいて制御可能であり、信号TCLの周波数に
応じて演奏データの記録又は再生のテンポあるいは自動
リズム演奏のテンポが決定される。
【0026】TG26は、キーコード音源及びリズム音
源を含むもので、キーコード音源は鍵盤から検出したキ
ー演奏データに基づくマニアル演奏音発生又はメモリ2
2から読出したキー演奏データに基づく自動演奏音発生
に用いられ、リズム音源はメモリ18に記憶したリズム
パターンデータに基づく自動リズム音発生に用いられ
る。
【0027】サウンドシステム32は、出力アンプ、ス
ピーカ等を含むもので、TG26からの楽音信号を音響
に変換するようになっている。
【0028】図2(A)〜(H)は、演奏データメモリ
22に記憶される各種データのフォーマットを示すもの
で、(A)はキーオンデータ、(B)はキーオフデー
タ、(C)はテンポアップデータ、(D)はテンポダウ
ンデータ、(E)は小節線データ、(F)はエンドコー
ドデータ、(G)はテンポ設定データ、(H)はタイミ
ングデータの各フォーマットを示す。
【0029】(A)のキーオンデータは、第1及び第2
バイトのデータからなるもので、第1バイトのデータは
90H (下つきのHは16進表記であることを表わし、
以下同様とする)の値を有するマークデータであり、第
2バイトのデータはMSB(最上位ビット)が0であ
り、下位8ビットがキーオンに係るキーのキーコードを
表わす。
【0030】(B)のキーオフデータは、第1及び第2
バイトのデータからなるもので、第1バイトのデータは
80H の値を有するマークデータであり、第2バイトの
データはMSBが0であり、下位8ビットがキーオフに
係るキーのキーコードを表わす。
【0031】(C)のテンポアップデータは、1バイト
のデータであり、上位4ビットがAH の値を有し、下位
4ビットが図5に示すような0〜15のいずれかの加算
値を表わす。また、(D)のテンポダウンデータは、1
バイトのデータであり、上位4ビットがBH の値を有
し、下位4ビットが図5に示すような0〜15のいずれ
かの減算値を表わす。
【0032】(E)の小節線データは、FEH の値を有
する1バイトのデータである。また、(F)のエンドコ
ードデータは、FFH の値を有する1バイトのデータで
ある。
【0033】(G)のテンポ設定データは、1バイトの
データであり、上位2ビットが「11」であり、下位6
ビットが図6に示すように0〜61のいずれかのテンポ
ナンバを表わす。テンポナンバは、テンポボリュームT
VLの出力値に相当するものである。テンポ設定データ
を1バイトとして見たときその値はCOH 〜FDH のい
ずれかである。
【0034】(H)のタイミングデータは、1バイトの
データであり、MSBが0であり、下位7ビットが1小
節内で0〜95のいずれかのタイミング値を表わす。
【0035】図3は、メモリ22内の記憶部配置を示す
もので、第1及び第2の記憶部M1及びM2が設けられ
ている。記憶部M1及びM2は、例えばメモリ22の記
憶部全体を2分割して得られる2つの分割記憶部によっ
て構成されるもので、いずれか一方が書込用記憶部とし
て指定され、他方が読出用記憶部として指定される。こ
のような用途指定は、固定したものではなく、変更され
ることがありうる。例えば、M1からM2にデータを転
送するときはM1が読出用、M2が書込用となるが、こ
の後M2からM1にデータを転送するときはM1が書込
用、M2が読出用となる。
【0036】一例として記憶部M1から記憶部M2に演
奏データを転送するときは、予め記憶部M1に演奏デー
タを記憶しておく。すなわち、記憶部M1において、先
頭アドレスPTPO には初期テンポナンバを表わすテン
ポ設定データを記憶し、この後にキーオン/オフデー
タ、テンポアップ/ダウンデータ等を演奏進行に従って
記憶し、データ配列末尾にはFFH の値を有するエンド
コードデータを記憶する。転送開始に先立って、読出用
アドレスポインタPTP及び書込用アドレスポインタP
TRにはそれぞれ記憶部M1及びM2の先頭アドレスP
TPO 及びPTRO をセットする。M1のアドレスPT
O のテンポ設定データはM2のアドレスPTRO に転
送される。この後、ポインタPTP及びPTRを進めな
がらデータ転送を行なう。なお、ポインタPTPでアド
レス指定される記憶領域又は記憶データはMEM(PT
P)のように表わし、ポインタPTRでアドレス指定さ
れる記憶領域をMEM(PTR)のように表わすものと
する。
【0037】図4は、記憶部M1(又はM2)へのデー
タ書込みの一例を示すものである。
【0038】先頭アドレスのデータD1は、初期テンポ
ナンバ5を表わす初期テンポ設定データである。そし
て、このデータD1の後に続くデータ群D2は、タイミ
ング値24にてキーコード値60及び64の2キーがオ
ンされたことを表わすものである。データD3は、小節
線データである。データD4は、ある小節のタイミング
値0(小節頭)にてテンポナンバを7に変更することを
示すテンポ設定データである。データD5は、ある小節
のタイミング値48にてテンポナンバを2だけ増大する
ことを示すテンポアップデータである。データD6は、
エンドコードデータである。
【0039】図5及び図6は、メモリ18に記憶された
変換テーブルTBL1及びTBL2の変換特性を示すも
のである。
【0040】図5の変換テーブルTBL1は、フットコ
ントローラFTCの出力値0〜31をそれぞれ対応する
−15〜+15の値に変換するためのもので、各値を表
わす5ビットのデータが記憶されている。5ビットのデ
ータにおいて、右端を第0ビットとすると最上位の第4
ビットは符号ビットであり、0ならばプラスを、1なら
ばマイナスをそれぞれ表わす。便宜上、プラスの符号を
有する値を加算値と称し、マイナスの符号を有する値を
減算値と称する。
【0041】図1に示したフットコントローラFTCは
一例として中点復帰式のもので、ペダルPに加わる外力
をなくすと中点Mの位置に復帰する。ペダルPを上方か
ら中点Mに向けて踏込むのに伴ってFTCからは0〜1
4の出力値(TBL1からは−15〜−1の出力値)が
得られ、中点MではFTCから15又は16の出力値
(TBL1からはM対応値0)が得られ、ペダルPを中
点Mから下方に踏込むのに伴ってFTCからは17〜3
1の出力値(TBL1からは+1〜+15の出力値)が
得られる。TBL1からの出力値のうち、プラス符号を
有するもの(加算値)は演奏テンポに対応するテンポナ
ンバに加算され、マイナス符号を有するもの(減算値)
は演奏テンポに対応するテンポナンバから減算される。
従って、FTCにおいてペダルPが中点Mに位置したと
きの演奏テンポを基準テンポとすれば、ペダルPを中点
Mより踏込むことにより演奏テンポを基準テンポより速
くすることができ、ペダルPを中点Mより踏戻すことに
より演奏テンポを基準テンポより遅くすることができ
る。
【0042】図6の変換テーブルTBL2は、テンポボ
リュームTVLの出力値に相当するテンポナンバ0〜6
1をそれぞれ対応するテンポ値40〜360に変換する
ためのもので、各テンポ値を表わすデータが記憶されて
いる。各テンポ値は、毎分当りのビート数を示すもの
で、クロック発生器24の周波数を制御するのに用いら
れる。一例として、テンポ値「120」の場合、1小節
を96クロック、4拍子とすると、1拍当りのクロック
数は24となり、(120×24)/60=48(クロ
ック/秒)となるようにクロック発生器24の周波数が
制御される。なお、テンポ表示器TDPには、図6に示
したテンポ値が表示される。
【0043】レジスタ群20に属するレジスタのうち、
この発明の実施に関係するものを列挙すると、次の通り
である。
【0044】(1)テンポクロックカウンタCLK…こ
れは、クロック発生器24からのテンポクロック信号T
CLに応じてパルスをカウントするもので、1小節内で
0〜95のカウント値をとり、96になるタイミングで
0にリセットされる。
【0045】(2)ランフラグRUN…これは、1ビッ
トのレジスタであり、0ならば自動リズムの停止を表わ
し、1ならば自動リズムの走行を表わす。
【0046】(3)キーコードレジスタKC…これは、
キーオン又はキーオフに係るキーのキーコードをストア
するためのものである。
【0047】(4)読出用アドレスポインタPTP…こ
れは、図3に関して前述したようにメモリ22の記憶部
M1及びM2のうち読出用記憶部のアドレスを指定する
ためのものである。
【0048】(5)書込用アドレスポインタPTR…こ
れは、図3に関して前述したようにメモリ22の記憶部
M1及びM2のうち書込用記憶部のアドレスを指定する
ためのものである。
【0049】(6)テンポ制御関連モードレジスタTM
D…これは、2ビットのレジスタであり、第0ビット
(最下位ビット)の0又は1に応じて再生指定のなし又
はありをそれぞれ示し、第1ビットの0又は1に応じて
記録指定なし又はありをそれぞれ示す。すなわち、TM
Dの値は、図7に示すように0〜3のいずれかである。
【0050】(7)キー演奏関連モードレジスタKMD
…これは、2ビットのレジスタであり、第0ビット(最
下位ビット)の0又は1に応じて再生指定のなし又はあ
りをそれぞれ示し、第1ビットの0又は1に応じて記録
指定のなし又はありをそれぞれ示す。すなわち、KMD
の値は、図7に示すように0〜3のいずれかである。
【0051】(8)旧タイミングレジスタOTM…これ
は、テンポクロックカウンタCLKからタイミングデー
タがセットされるものである。OTMは、CLKのタイ
ミングデータをメモリ22に書込む際に前回の書込みタ
イミングを表わす。
【0052】(9)フットコントローラ情報レジスタF
C…これは、フットコントローラFTCからの出力値
(0〜31のいずれか)又はこの出力値を図5の変換テ
ーブルTBL1で変換した値(−15〜+15のいずれ
か)がセットされるものである。
【0053】(10)テンポボリューム情報レジスタT
VOL…これは、テンポボリュームTVLからの出力値
(0〜61のいずれかのテンポナンバ)がセットされる
ものである。
【0054】(11)絶対テンポ値レジスタTMPA…
これは、0〜61のいずれかのテンポナンバ(絶対テン
ポ値)がセットされるものである。
【0055】(12)相対テンポ値レジスタTMPR…
これは、図5に示したような−15〜+15のいずれか
の相対テンポ値がセットされるものである。
【0056】(13)テンポ計算用レジスタTMP…こ
れは、レジスタTMPA及びTMPRの内容に基づく加
算又は減算の結果をストアするためのものである。
【0057】(14)テンポ値レジスタTEMPO…こ
れは、図6に示したような40〜360のいずれかのテ
ンポ値がセットされるもので、このレジスタの内容に基
づいてテンポ表示器TDPでのテンポ表示及びクロック
発生器24のクロック周波数が制御される。
【0058】(15)マークデータ書込用レジスタDT
1…これは、メモリ22へのキーオン/オフデータ書込
みに際して90H 又は80H のマークデータがセットさ
れるものである。
【0059】(16)キーコードデータ書込用レジスタ
DT2…これは、メモリ22へのキーオン/オフデータ
の書込みに際してレジスタKCからキーコードデータが
セットされるものである。
【0060】図7を参照してNo.1〜16の各モード
毎の動作の概要を述べる。
【0061】No.1のモードでは、テンポ制御及びキ
ー演奏のいずれについても記録又は再生の指定がなく、
TMD及びKMDの値はいずれも0である。記憶部M1
及びM2の間でのデータ転送は行なわれず、メモリ22
の記憶データに基づく制御も行なわれない。この場合、
鍵盤KBでの演奏操作に基づいてTG26からマニアル
演奏音信号を発生させることができる。また、スタート
/ストップスイッチSSWをオンしてRUNの値を1と
すると、選択されたリズム種類に対応するリズムパター
ンデータに基づいて自動リズム演奏が行なわれる。自動
リズム演奏のテンポは、テンポボリュームTVL又はフ
ットコントローラFTCで変更可能である。スイッチS
SWは、自動リズムのスタート/ストップスイッチとし
て作用する。なお、No.2〜16のモードでは、スイ
ッチSSWは記録及び/又は再生のスタート/ストップ
スイッチとしても作用し、記録及び/又は再生には必ず
自動リズム演奏が伴い、必要に応じてマニアル演奏音発
生も可能である。
【0062】No.2〜4のモードでは、No.1のモ
ードと同様にTMDの値は0であるが、KMDの値は1
〜3である。KMD=1(No.2)の場合、キー演奏
に関して再生指定であり、M1−M2間ではテンポ制御
データ(テンポ設定データ、テンポアップ/ダウンデー
タ)TD及びキー演奏データ(キーオン/オフデータ)
KDの転送が行なわれ、記憶したキー演奏データKDに
基づいて楽音発生制御(自動演奏)が行なわれる。
【0063】また、KMD=2(No.3)の場合は、
キー演奏に関して記録指定であり、転送される記憶デー
タはテンポ制御データTDだけとなり、記憶データに基
づく制御は行なわれない。この場合、メモリ22におい
て転送データTDが書込まれる書込用記憶部には、鍵盤
KBの操作に応じてキー演奏データを書込可能である。
【0064】さらに、KMD=3(No.4)の場合
は、キー演奏に関して再生指定の他に記録指定が加わ
り、No.2のモードで述べたと同様のデータ転送及び
演奏再生動作に並行して鍵盤操作により記憶内容の修正
が可能になる。例えば、図3に示すようにM1に記憶し
た演奏データを読出して自動演奏を行ないつつM1の演
奏データをM2に転送し、M2には鍵盤KBの操作に基
づく演奏データの書込みを許容するので、M2の記憶デ
ータはM1とは異なったものになる。
【0065】No.5のモードでは、テンポ制御に関し
て再生指定(TMD=1)であり、キー演奏に関して無
指定(KMD=0)である。M1−M2間で転送される
記憶データは、テンポ制御データTD及びキー演奏デー
タKDであり、記憶したテンポ制御データTDに基づい
て自動リズム演奏のテンポが制御される。この場合、記
憶したキー演奏データに基づく自動演奏は行なわれな
い。
【0066】No.6〜8のモードは、記憶したテンポ
制御データTDに基づいてテンポ制御が行なわれる点を
除き前述のNo.2〜3のモードとそれぞれ同様であ
る。
【0067】No.9〜12のモードは、いずれもテン
ポ制御に関して記録指定(TMD=2)のものである。
No.9のモードでは、キー演奏に関して無指定(KM
D=1)であり、M1−M2間で転送される記憶データ
はキー演奏データKDだけであり、記憶データに基づく
制御は行なわれない。No.9のモードでは、メモリ2
2において転送データKDが書込まれる書込用記憶部に
は、テンポボリュームTVL又はフットコントローラF
TCの操作に応じてテンポ制御データを書込可能であ
る。
【0068】No.10のモードは、キー演奏に関して
再生指定(KMD=1)であるので記憶したキー演奏デ
ータKDに基づく自動演奏が行なわれる点を除きNo.
9のモードと同様である。
【0069】No.11のモードでは、テンポ制御及び
キー演奏のいずれに関しても記録指定(TMD=2,K
MD=2)であり、M1−M2間のデータ転送は行なわ
れず、記憶データに基づく制御も行なわれない。この場
合、メモリ22の書込用記憶部には、鍵盤KBの操作に
応じてキー演奏データを書込可能であると共に、テンポ
ボリュームTVL又はフットコントローラFTCの操作
に応じてテンポ制御データを書込可能である。
【0070】No.12のモードでは、キー演奏に関し
て再生指定の他に記録指定が加わり、KMD=3とな
る。No.12のモードは、メモリ22の書込用記憶部
に対して鍵盤KBの操作に応じてキー演奏データを書込
可能となる点を除きNo.10のモードと同様である。
【0071】No.13〜16のモードでは、テンポ制
御に関して再生指定の他に記録指定が加わり、TMD=
3となる。No.13〜16のモードは、メモリ22の
書込用記憶部に対してテンポボリュームTVL又はフッ
トコントローラFTCの操作に応じてテンポ制御データ
を書込可能となる点を除きNo.5〜8のモードとそれ
ぞれ同様である。
【0072】図8は、メインルーチンの処理の流れを示
すもので、このルーチンは電源オン等に応じてスタート
する。
【0073】ステップ40では、各種レジスタ等に関し
て初期設定処理を行なう。例えば、レジスタTEMPO
に標準的なテンポ値(例えば120)をセットすると共
に該テンポ値を表示器TDPに表示させる。また、メモ
リ22の読出用記憶部(例えばM1)において、先頭ア
ドレスには初期テンポナンバを表わす初期テンポ設定デ
ータを書込むと共に該先頭アドレスの次のアドレスには
FFH の値を有するエンドコードデータを書込む。
【0074】次に、ステップ42では、キーオン又はキ
ーオフイベントありか判定し、あり(Y)ならばステッ
プ44で図9について後述するようにキーオン/オフの
サブルーチンを実行する。
【0075】ステップ42の判定結果が否定的(N)で
あったとき又はステップ44の処理が終ったときはステ
ップ46に移り、スタート/ストップスイッチSSWに
オンイベントありか判定する。この判定結果が肯定的
(Y)であればステップ18に移り、1からフラグRU
Nの値を差引いたものをRUNにセット(すなわちRU
Nの値を反転)する。そして、ステップ50に移る。
【0076】ステップ50では、RUNの値が1か(走
行開始か)判定し、1である(Y)ならばステップ52
に移る。ステップ52では、ポインタPTPにメモリ2
2の読出用記憶部の先頭アドレスをセットすると共に、
ポインタPTRにメモリ22の書込用記憶部の先頭アド
レスをセットする。そして、ステップ54に移る。
【0077】ステップ54では、レジスタTMDの値が
1又は3か(テンポ制御に関し再生指定ありか)判定す
る。この判定結果が肯定的(Y)であればステップ56
に移り、読出用記憶部の記憶領域MEM(PTP)の初
期テンポデータを書込用記憶部の記憶領域MEM(PT
R)[この場合は先頭アドレス]に書込む。また、ステ
ップ54の判定結果が否定的(N)であったときはステ
ップ58に移り、レジスタTMPAのテンポナンバを書
込用記憶部の記憶領域MEM(PTR)[この場合も先
頭アドレス]に初期テンポ設定データとして書込む。な
お、TMPAには、ステップ40で標準テンポ対応のテ
ンポナンバがセットされているか又は図11のタイマ割
込みルーチンによりテンポボリュームTVLの出力値と
してのテンポナンバがセットされている。
【0078】ステップ56又は58の処理が終ったとき
はステップ60に移り、PTP及びPTRの値をそれぞ
れ1アップする。そして、ステップ62に移り、カウン
タCLKに0をセットすると共に、レジスタOTMにF
H をセットする。OTMにタイミング値としてあり得
ないFFH をセットするのは、図10のクロック書込み
のサブルーチンで最初のタイミングデータ書込みを可能
にするためである。
【0079】ステップ50の判定結果が否定的(N)で
あったときは走行停止であったことになり、ステップ6
4に移る。ステップ64では、読出用記憶部の記憶領域
MEM(PTP)のデータを書込用記憶部の記憶領域M
EM(PTR)に書込む。そして、ステップ66に移
る。
【0080】ステップ66では、MEM(PTP)のデ
ータがエンドコードデータ(FFH)か判定する。例え
ば、電源オン後最初の記録指定によりメモリ22に演奏
データを記録させていて走行停止としたときは、MEM
(PTP)のデータはエンドコードデータであり、ステ
ップ66の判定結果は肯定的(Y)となる。これは、ス
テップ40で読出用記憶部にて先頭アドレスの次のアド
レスにエンドコードデータを書込む一方、走行開始時に
ステップ60でPTPの値を1アップしてエンドコード
データを指示させるようにしたからである。
【0081】また、読出用記憶部から書込用記憶部への
データ転送を進行させている途中で走行停止としたとき
は、PTPがエンドコードデータを指示していないので
ステップ66の判定結果が否定的(N)となる。この場
合には、ステップ68に移り、PTP及びPTRの値を
それぞれ1アップする。そして、ステップ64に戻って
MEM(PTP)からMEM(PTR)へのデータ転送
を行なう。このようなデータ転送は、ステップ66の判
定結果が肯定的(Y)となるまで(エンドコードデータ
に遭遇するまで)行なわれる。従って、読出用記憶部に
おける走行停止時以降エンドコードデータまでのデータ
が高速で書込用記憶部に転送されることになる。
【0082】ステップ46の判定結果が否定的(N)で
あったとき、ステップ62の処理が終ったとき又はステ
ップ66の判定結果が肯定的(Y)となったときはステ
ップ70に移る。
【0083】ステップ70では、RUNの値が0か(走
行停止中か)判定する。これは、走行中(RUN=1)
でのモード変更を無効とするためである。ステップ70
の判定結果が肯定的(Y)であればステップ72に移
る。
【0084】ステップ72では、スイッチTRSにオン
イベントありか判定し、あり(Y)ならばステップ74
でTMDの第1ビットを反転する。ステップ72の判定
結果が否定的(N)であったとき又はステップ74の処
理が終ったときはステップ76に移る。
【0085】ステップ76では、スイッチTPSにオン
イベントありか判定し、あり(Y)ならばステップ78
でTMDの第0ビットを反転する。ステップ76の判定
結果が否定的(N)であったとき又はステップ78の処
理が終ったときはステップ80に移る。
【0086】ステップ80では、スイッチKRSにオン
イベントありか判定し、あり(Y)ならばステップ82
でKMDの第1ビットを反転する。ステップ80の判定
結果が否定的(N)であったとき又はステップ82の処
理が終ったときはステップ84に移る。
【0087】ステップ84では、スイッチKPSにオン
イベントありか判定し、あり(Y)ならばステップ86
でKMDの第0ビットを反転する。ステップ84の判定
結果が否定的(N)であったとき又はステップ86の処
理が終ったときはステップ88に移る。
【0088】ステップ88では、TMD及びKMDの各
ビットの値に応じて対応する表示器LEDの点灯を制御
してモード表示を行なう。
【0089】ステップ70の判定結果が否定的(N)で
あったとき又はステップ88の処理が終ったときはステ
ップ90に移り、その他の処理(例えば、音色、音量等
の設定処理、リズム選択処理等)を行なう。この後は、
ステップ42に戻り、それ以降の処理を上記したと同様
に繰返す。
【0090】図9は、キーオン/オフのサブルーチンを
示すもので、ステップ100ではキーオンイベント又は
キーオフイベントのあったキーのキーコードをレジスタ
KCにセットする。そして、ステップ102に移る。
【0091】ステップ102では、キーオンイベント又
はキーオフイベントのいずれが生じたかに応じてTG2
6のキーオン処理又はキーオフ処理をそれぞれ行なう。
キーオン処理では、キーオン信号及びKCのキーコード
データをTG26のキーコード音源に送出し、該キーコ
ードデータの指示する音高を有する楽音信号を発生させ
る。また、キーオフ処理では、キーオフ信号及びKCの
キーコードデータをTG26のキーコード音源に送出
し、該キーコードデータの指示する音高を有する楽音信
号を減衰開始させる。
【0092】次に、ステップ104では、KMDの値が
2以上か(キー演奏に関して記録指定ありか)判定す
る。この判定結果が肯定的(Y)であればステップ10
6に移り、図10について後述するようにクロック書込
みのサブルーチンを実行する。そして、ステップ108
に移る。
【0093】ステップ108では、レジスタDT1にキ
ーオンイベントならば90H を、キーオフイベントなら
ば80H をそれぞれセットする。また、DT2には、K
Cのキーコードデータをセットする。そして、ステップ
110でDT1及びDT2のデータをそれぞれメモリ2
2の書込用記憶部の記憶領域MEM(PTR)及びME
M(PTR+1)に書込む。
【0094】この後は、ステップ112でPTRの値を
2アップしてから、図8のルーチンにリターンする。
【0095】図10は、クロック書込みのサブルーチン
を示すもので、ステップ120では、OTMの値とCL
Kの値とが等しいか判定する。この判定結果が否定的
(N)であればステップ122に移る。
【0096】ステップ122では、CLKの値をメモリ
22の書込用記憶部の記憶領域MEM(PTR)にタイ
ミングデータとして書込む。また、CLKの値をOTM
にセットする。そして、ステップ124でPTRの値を
1アップする。
【0097】ステップ120の判定結果が肯定的(Y)
であったとき又はステップ124の処理が終ったときは
元のルーチン(図9、図11又は図13のルーチン)に
リターンする。
【0098】一例として、図8のステップ62でOTM
にFFH をセットした後最初にステップ120にきたも
のとすると、ステップ120の判定結果は否定的(N)
となり、ステップ122に移る。ステップ122では、
CLKの値をMEM(PTR)に書込む一方、OTMに
セットする。そして、ステップ124でPTRの値を1
アップしてから図9のルーチンにリターンする。
【0099】この結果、例えば図4に示したように初期
テンポ設定データD1の後に最初のタイミングデータが
書込まれ、この後図9のステップ108,110により
最初の2バイトのキーオンデータが書込まれる。
【0100】最初のキーオン操作で2キーを同時にオン
したものとすると、最初のキーオンデータ書込みの後図
8のステップ42の判定結果が再び肯定的(Y)とな
り、図9のステップ106にくる。このとき、図10の
ステップ120では、CLKの値が前回と変りないの
で、OTM=CLKで判定結果が肯定的(Y)となり、
ステップ122,124を経ずに図9のルーチンにリタ
ーンする。
【0101】図9のルーチンにリターンした後、ステッ
プ108,110では、図4に示したように最初の2バ
イトのキーオンデータに続けて2番目の2バイトのキー
オンデータが書込まれる。
【0102】上記したのは、最初のキーオン操作に関す
るクロック書込み処理であるが、この後のキーオン又は
キーオフイベントについても上記したと同様にステップ
120の判定結果が否定的(N)であればタイミングデ
ータの書込みを行ない、肯定的(Y)であればタイミン
グデータの書込みを行なわないようにして演奏データの
記録が行なわれる。
【0103】図11は、タイマ割込みルーチンを示すも
ので、このルーチンは、タイマ発生器30からのタイマ
クロック信号TMの各クロックパルス毎にスタートし、
15ms周期で反復されるものである。
【0104】ステップ130では、フットコントローラ
FTCの出力値をレジスタFCにセットする。そして、
ステップ132では、FCの値を変換テーブルTBL1
で変換した値TBL1(FC)をFCにセットする。
【0105】次に、ステップ134では、FCの値とレ
ジスタTMPRの値とが等しいか又はFCの値に変化な
しか判定する。FTCを操作しないときは、FCの値が
変化しないので、ステップ134の判定結果が肯定的
(Y)となる。FTCを操作すると、通常はFCの値が
変化するので、ステップ134の判定結果が否定的
(N)となる。FTCを操作してFCの値が変化したと
きであっても、FCの値がTMPRの値(例えば図16
のルーチンでメモリ22から読出した値)と等しければ
ステップ134の判定結果は肯定的(Y)となる。
【0106】ステップ134の判定結果が否定的(N)
であったときはステップ136に移り、FCの値(−1
5〜+15のいずれか)をTMPRにセットする。そし
て、ステップ138に移り、図12について後述するよ
うにテンポ制御のサブルーチンを実行する。この後、ス
テップ140に移る。
【0107】ステップ140では、TMDの値が2以上
か(テンポ制御に関して記録指定ありか)判定する。こ
の判定結果が肯定的(Y)であればステップ142に移
り、図10で述べたようにクロック書込みのサブルーチ
ンを実行する。従って、通常は、MEM(PTR)にF
C値変更時のCLK値がタイミングデータとして書込ま
れ、PTRの値が1アップされる。
【0108】次に、ステップ144では、AOH のデー
タとFCのデータとを対応するビット毎にOR演算して
得たテンポアップデータ又はテンポダウンデータをME
M(PTR)に書込む。そして、ステップ146でPT
Rの値を1アップする。
【0109】ステップ134の判定結果が肯定的(Y)
であったとき、ステップ140の判定結果が否定的
(N)であったとき又はステップ146の処理が終った
ときはステップ148に移る。
【0110】ステップ148では、テンポボリュームT
VLの出力値をレジスタTVOLにセットする。そし
て、ステップ150に移り、TVOLの値とレジスタT
MPAの値とが等しいか又はTVOLの値に変化なしか
判定する。TVLを操作しないときは、TVOLの値が
変化しないので、ステップ150の判定結果が肯定的
(Y)となる。TVLを操作すると、通常はTVOLの
値が変化するので、ステップ150の判定結果が否定的
(N)となる。TVLを操作してTVOLの値が変化し
たときであっても、TVOLの値がTMPAの値(例え
ば図17のルーチンでメモリ22から読出した値)と等
しければステップ150の判定結果は肯定的(Y)とな
る。
【0111】ステップ150の判定結果が否定的(N)
であったときはステップ152に移り、TVOLの値
(0〜61のいずれか)をTMPAにセットする。そし
て、ステップ154に移り、図12について後述するよ
うにテンポ制御のサブルーチンを実行する。この後、ス
テップ156に移る。
【0112】ステップ156では、TMDの値が2以上
か(テンポ制御に関して記録指定ありか)判定する。こ
の判定結果が肯定的(Y)であればステップ158に移
り、図10で述べたようにクロック書込みのサブルーチ
ンを実行する。従って、通常は、MEM(PTR)にT
VOL値変更時のCLK値がタイミングデータとして書
込まれ、PTRの値が1アップされる。
【0113】次に、ステップ160では、COH のデー
タとTVOLのデータとを対応するビット毎にOR演算
して得たテンポ設定データをMEM(PTR)に書込
む。そして、ステップ162でPTRの値を1アップす
る。
【0114】ステップ150の判定結果が肯定的(Y)
であったとき、ステップ156の判定結果が否定的
(N)であったとき又はステップ162の処理が終った
ときは図8のルーチンにリターンする。
【0115】図12は、テンポ制御のサブルーチンを示
すもので、ステップ170では、TMPRの第4ビット
が1か(相対テンポ値の符号がマイナスか)判定する。
この判定結果が肯定的(Y)であればステップ172に
移り、否定的(N)であればステップ174に移る。
【0116】ステップ172では、TMPRのデータと
OFH のデータとを対応するビット毎にAND演算して
得たデータ(TMPRの下位4ビットのデータ)の値を
TMPAの値から減算し、この減算により得られた差の
データをレジスタTMPにセットする。また、ステップ
174では、TMPAの値にTMPRの値を加算して得
た和のデータをTMPにセットする。
【0117】ステップ172又は174の処理が終った
ときはステップ176に移り、TMPの値を0〜61の
範囲内に制限する。そして、ステップ178に移る。
【0118】ステップ178では、TMPの値を変換テ
ーブルTBL2で変換した値TBL2(TMP)をレジ
スタTEMPOにセットする。そして、ステップ180
でTEMPOのテンポ値を表示器TDPに表示させてか
らステップ182に移る。
【0119】ステップ182では、TEMPOのテンポ
値に対応してクロック発生器24のクロック周波数を制
御する。この後は、元のルーチン(図11、図16又は
図17のルーチン)にリターンする。
【0120】図11のステップ138で図12のサブル
ーチンを実行することによりフットコントローラFTC
の操作に応じたテンポ変更が可能となる。また、図11
のステップ154で図12のサブルーチンを実行するこ
とによりテンポボリュームTVLの操作に応じたテンポ
変更が可能となる。
【0121】図13は、クロック割込みルーチンを示す
もので、このルーチンは、クロック発生器24からのテ
ンポクロック信号TCLの各クロックパルス毎にスター
トする。
【0122】ステップ190では、フラグRUNの値が
1か(走行中か)判定する。この判定結果が否定的
(N)であれば図8のルーチンにリターンし、ステップ
192以下の処理は行なわない。
【0123】ステップ190の判定結果が肯定的(Y)
であったときはステップ192に移り、リズム音発生処
理を行なう。すなわち、メモリ18に記憶された複数種
類のリズムパターンデータのうち選択されたリズム種類
に対応するリズムパターンデータについてCLKの示す
タイミング値で発音すべき打楽器音があれば、TG26
中のリズム音源において該打楽器音に対応する打楽器音
源を駆動して打楽器音信号を発生させる。従って、RU
N=1のときは、図7に示したNo.1〜16のいずれ
のモードであっても自動リズム演奏が行なわれ、自動リ
ズムを伴奏として鍵盤KBでマニアル演奏を行なうこと
ができる。
【0124】次に、ステップ194では、TMD及びK
MDの値がいずれも0又は2であるか(いずれも無指定
又は記録のみ指定か)判定する。この判定結果が肯定的
(Y)であればメモリ22の読出用記憶部の記憶領域M
EM(PTP)からの読出処理等は不要なのでステップ
196に移る。
【0125】ステップ196では、CLKの値を1アッ
プする。そして、ステップ198でCLKの値が96か
判定し、この判定結果が否定的(N)であれば図8のル
ーチンにリターンする。
【0126】ステップ198の判定結果が肯定的(Y)
であったときは1小節が終ったことになり、ステップ2
00でCLKに0をセットする。そして、ステップ20
2で図14について後述するように小節線書込みのサブ
ルーチンを実行してから図8のルーチンにリターンす
る。
【0127】一方、ステップ194の判定結果が否定的
(N)であったときはステップ204に移り、MEM
(PTP)の値がCLKの値と等しいか(読出すべきタ
イミングか)判定する。この判定結果が否定的(N)で
あれば読出すべきタイミングに達していないのでステッ
プ196以下の処理を実行してから図8のルーチンにリ
ターンする。
【0128】ステップ204の判定結果が肯定的(Y)
となると、ステップ206に移り、図10で述べたよう
にクロック書込みのサブルーチンを実行する。この結
果、MEM(PTR)にはCLKの値がタイミングデー
タとして書込まれ、PTRの値も1アップされる。
【0129】次に、ステップ208では、PTPの値を
1アップし、読出用記憶部においてタイミングデータの
次のデータを指示させる。そして、ステップ210に移
る。
【0130】ステップ210では、MEP(PTP)の
データがキーオン/オフデータ(90H ,80H )、テ
ンポアップ/ダウンデータ(AXH ,BXH )、テンポ
設定データ(COH 〜FDH )又はエンドコードデータ
(FFH )のいずれか判定する。この判定の結果、キー
オン/オフデータであればステップ212で図15につ
いて後述するようにキー再生のサブルーチンを実行し、
テンポアップ/ダウンデータであればステップ214で
図16について後述するようにテンポ変化再生のサブル
ーチンを実行し、テンポ設定データであればステップ2
16で図17について後述するようにテンポ再生のサブ
ルーチンを実行する。
【0131】ステップ212、214又は216の処理
が終ったときはステップ218に移り、MEM(PT
P)のデータが小節線データ(FEH )か判定する。こ
のとき、PTPは、ステップ212により2アップされ
るか又はステップ214もしくは216により1アップ
されるかしているので、判定対象となるデータMEM
(PTP)は、キーオン/オフデータの次のデータ、テ
ンポアップ/ダウンデータの次のデータ又はテンポ設定
データの次のデータである。
【0132】ステップ218の判定結果が肯定的(Y)
であればステップ196以下の処理を実行してから図8
のルーチンにリターンする。また、ステップ218の判
定結果が否定的(N)であればステップ220に移る。
【0133】ステップ220では、MEM(PTP)の
MSBが1か判定する。この判定は、MEM(PTP)
のデータがタイミングデータ以外のデータか判定してい
るのと等価である。ステップ220の判定結果が肯定的
(Y)であれば、たとえば図4のデータD2におけるキ
ーコード値64のキーオンデータのように同一タイミン
グで読出すべきデータが残っていることになり、ステッ
プ210に戻ってそれ以降の処理を上記したと同様に繰
返す。
【0134】ステップ220の判定結果が否定的(N)
となったときは、MEM(PTP)のデータがタイミン
グデータであったことになり、ステップ196以下の処
理を実行してから図8のルーチンにリターンする。この
後、テンポクロック信号TCLに応じてクロック割込み
がかかると、ステップ204で読出すべきタイミングか
判定され、この判定結果が否定的(N)であればステッ
プ196以下の処理が、肯定的(Y)であればステップ
204以下の処理がそれぞれ行なわれる。
【0135】ステップ210での判定の結果、MEM
(PTP)のデータがエンドコードデータ(FFH )で
あったときはステップ222に移り、TMD及びKMD
の値がいずれも1以下か(いずれも記録指定なしか)判
定する。この判定結果が肯定的(Y)であればステップ
224に移り、RUNに0をセットする。この結果、次
のクロック割込みではステップ190の判定結果が否定
的(N)となり、自動リズム演奏及びメモリ22からの
データ読出しは自動的に停止される。
【0136】ステップ222の判定結果が否定的(N)
であったとき又はステップ224の処理が終ったときは
ステップ226に移り、TMD及びKMDの各々の第0
ビットをクリア(0をセット)し、各々の第0ビットに
対応する表示器LEDを消灯制御する。ステップ226
の後は、ステップ196以下の処理を実行してから図8
のルーチンにリターンする。
【0137】ステップ222の判定結果が否定的(N)
であったときは、テンポ制御又はキー演奏のいずれかに
関して記録指定があったことになり、記録を続行させる
必要があるのでステップ224を経由せず、RUNは0
としない。この場合、ステップ226で再生指定は解除
されるが、自動リズム演奏は続行される。記録動作及び
自動リズム演奏を停止させるには、スイッチSSWを操
作してRUNを0とすればよい。
【0138】図14は、小節線書込みのサブルーチンを
示すもので、ステップ230では、TMD又はKMDの
いずれかにおいて第0ビットが1か(テンポ制御又はキ
ー演奏のいずれかに関して再生指定ありか)判定する。
この判定結果が肯定的(Y)であればステップ232に
移り、PTPの値を1アップする。この結果、PTP
は、小節線データの次のデータを指示するようになる。
【0139】ステップ230の判定結果が否定的(N)
であったときはステップ234に移り、TMD又はKM
Dのいずれかにおいて第1ビットが1か(テンポ制御又
はキー演奏に関して記録指定ありか)判定する。この判
定結果が否定的(N)であれば再生指定も記録指定もな
かったことになり、小節線データ書込みが不要なので図
13のルーチンにリターンする。
【0140】ステップ232の処理が終ったとき又はス
テップ234の判定結果が肯定的(Y)であったときは
ステップ236に移り、MEM(PTR)に小節線デー
タ(FEH )を書込む。そして、ステップ238でPT
Rの値を1アップしてから図13のルーチンにリターン
する。
【0141】図15は、キー再生のサブルーチンを示す
もので、ステップ240では、KMDの値が2か(キー
演奏に関して記録のみ指定か)判定する。この判定結果
が肯定的(Y)であれば読出処理等が不要なのでステッ
プ254に移り、PTPの値を2アップしてから図13
のルーチンにリターンする。
【0142】ステップ240の判定結果が否定的(N)
であったときはステップ242に移り、MEM(PT
P)及びMEM(PTP+1)のキーオンデータ又はキ
ーオフデータの第1及び第2バイトをそれぞれMEM
(PTR)及びMEM(PTR+1)に転送する。そし
て、ステップ244でPTRの値を2アップする。
【0143】次に、ステップ246では、KMDの値が
0か(キー演奏に関して無指定か)判定する。この判定
結果が肯定的(Y)であればキーオン/オフ処理が不要
なのでステップ254を経て図13のルーチンにリター
ンする。
【0144】ステップ246の判定結果が否定的(N)
であったときは、KMDの値が1又は3(キー演奏に関
して再生指定あり)であったことになり、ステップ24
8でMEM(PTP)のデータが90H か(キーオンマ
ークか)判定する。この判定結果が肯定的(Y)であれ
ばステップ250に移り、否定的(N)であればステッ
プ252に移る。
【0145】ステップ250では、キーオン処理を行な
う。すなわち、キーオン信号とMEM(PTP+1)の
キーコードデータとをTG26のキーコード音源に送出
することにより該キーコードデータの指示する音高を有
する楽音信号を発生させる。また、ステップ252では
キーオフ処理を行なう。すなわち、キーオフ信号とME
M(PTP+1)のキーコードデータとをTG26のキ
ーコード音源に送出することにより該キーコードデータ
の指示する音高を有する楽音信号を減衰開始させる。
【0146】ステップ250又は252の処理が終った
ときは、ステップ254を経て図13のルーチンにリタ
ーンする。
【0147】図16は、テンポ変化再生のサブルーチン
を示すもので、ステップ260では、TMDの値が2か
(テンポ制御に関して記録のみ指定か)判定する。この
判定結果が肯定的(Y)であれば読出処理等が不要なの
でステップ272に移り、PTPの値を1アップしてか
ら図13のルーチンにリターンする。
【0148】ステップ260の判定結果が否定的(N)
であったときはステップ262に移り、MEM(PT
P)のテンポアップデータ又はテンポダウンデータをM
EM(PTR)に転送する。そして、ステップ264で
PTRの値を1アップする。
【0149】次に、ステップ266では、TMDの値が
0か(テンポ制御に関して無指定か)判定する。この判
定結果が肯定的(Y)であればテンポ制御処理が不要な
のでステップ272を経て図13のルーチンにリターン
する。
【0150】ステップ266の判定結果が否定的(N)
であったときは、TMDの値が1又は3(テンポ制御に
関して再生指定あり)であったことになり、ステップ2
68でMEM(PTP)の下位5ビットのデータ(相対
テンポ値データ)をTMPRにセットする。そして、ス
テップ270に移り、図12で述べたようにテンポ制御
のサブルーチンを実行する。この結果、テンポクロック
信号TCLの周波数、ひいては演奏再生や自動リズム演
奏のテンポは、MEM(PTP)から読出した相対テン
ポ値に応じて変更制御され、表示器TDPには変更後の
テンポ値が表示される。
【0151】ステップ270の後は、ステップ272を
経て図13のルーチンにリターンする。
【0152】図17は、テンポ再生のサブルーチンを示
すもので、ステップ280では、TMDの値が2か(テ
ンポ制御に関して記録のみ指定か)判定する。この判定
結果が肯定的(Y)であれば読出処理等が不要なのでス
テップ292に移り、PTPの値を1アップしてから図
13のルーチンにリターンする。
【0153】ステップ280の判定結果が否定的(N)
であったときはステップ282に移り、MEM(PT
P)のテンポ設定データをMEM(PTR)に転送す
る。そして、ステップ284でPTRの値を1アップす
る。
【0154】次に、ステップ286では、TMDの値が
0か(テンポ制御に関して無指定か)判定する。この判
定結果が肯定的(Y)であればテンポ制御処理が不要な
のでステップ292を経て図13のルーチンにリターン
する。
【0155】ステップ286の判定結果が否定的(N)
であったときは、TMDの値が1又は3(テンポ制御に
関して再生指定あり)であったことになり、ステップ2
88でMEM(PTP)の下位6ビットのデータ(テン
ポナンバデータ)をTMPAにセットする。そして、ス
テップ290に移り、図12で述べたようにテンポ制御
のサブルーチンを実行する。この結果、テンポクロック
信号TCLの周波数、ひいては演奏再生や自動リズム演
奏のテンポは、MEM(PTP)から読出したテンポナ
ンバ(絶対テンポ値)に応じて変更制御され、表示器T
DPには変更後のテンポ値が表示される。
【0156】ステップ290の後は、ステップ292を
経て図13のルーチンにリターンする。
【0157】上記した実施形態によれば、図18に例示
するように曲想に応じて変化に富んだテンポ変更パター
ンを容易にプログラム可能となる効果が得られる。
【0158】この発明は、上記した実施形態に限定され
るものではなく、種々の改変形態で実施可能なものであ
る。例えば、次のような変更が可能である。 (1)データフォーマットは上記実施形態に示したもの
に限定されない。また、扱うデータも上記実施形態に示
したものに限らず、音量データ、音色データ、タッチデ
ータ(キータッチの強さに応じたデータ)等を適宜追加
してもよい。 (2)リアルタイム書込みだけでなく、各イベント毎に
非リアルタイムで入力するいわゆるステップ入力モード
を追加してもよい。 (3)演奏データは、例えばメロディ及び伴奏等複数パ
ート分記録・再生するようにしてもよい。 (4)テンポ制御データは、絶対値的表現(テンポボリ
ューム対応)又は相対値的表現(フットコントローラ対
応)のいずれか一方のみでもよい。 (5)テンポ操作子は、フットコントローラやボリュー
ムに限らず、スライドスイッチ、回転ホィール等何でも
よい。 (6)演奏データとテンポ制御データとはメモリ内で各
々専用の記憶部に記憶させるようにしてもよい。
【0159】
【発明の効果】以上のように、この発明によれば、第1
の記憶手段から音高情報を読出して曲の自動演奏を行な
いつつ音高情報及びタイミング情報を第2の記憶手段に
書込むと共にテンポ指示操作に応じてテンポ制御情報及
びテンポ制御タイミング情報を第2の記憶手段に書込
み、第1の記憶手段に記憶したテンポ制御情報を検知し
たときは該テンポ制御情報の第2の記憶手段への転送と
該テンポ制御情報に基づく自動演奏のテンポ制御とを禁
止するようにしたので、第1の記憶手段にテンポ制御情
報を記憶してあっても、なくても所望のテンポ変更パタ
ーンを有する自動演奏情報を簡単に作成可能となる効果
が得られる。
【0160】その上、操作手段として、絶対テンポ値を
指示するための第1の操作子と相対テンポ値を指示する
ための第2の操作子とを用いると、絶対テンポ値と相対
テンポ値との組合せにより所望のテンポ変更パターンを
迅速にプログラム可能となる効果もある。
【図面の簡単な説明】
【図1】 この発明の一実施形態に係る電子楽器の構成
を示すブロック図である。
【図2】 演奏データメモリ22に記憶される各種デー
タのフォーマットを示す図である。
【図3】 演奏データメモリ22内の記憶部配置を示す
図である。
【図4】 記憶部へのデータ書込み例を示す図である。
【図5】 第1の変換テーブルの変換特性を示す図であ
る。
【図6】 第2の変換テーブルの変換特性を示す図であ
る。
【図7】 モード毎の動作の概要を示す図である。
【図8】 メインルーチンを示すフローチャートであ
る。
【図9】 キーオン/オフのサブルーチンを示すフロー
チャートである。
【図10】 クロック書込みのサブルーチンを示すフロ
ーチャートである。
【図11】 タイマ割込みルーチンを示すフローチャー
トである。
【図12】 テンポ制御のサブルーチンを示すフローチ
ャートである。
【図13】 クロック割込みルーチンを示すフローチャ
ートである。
【図14】 小節線書込みのサブルーチンを示すフロー
チャートである。
【図15】 キー再生のサブルーチンを示すフローチャ
ートである。
【図16】 テンポ変化再生のサブルーチンを示すフロ
ーチャートである。
【図17】 テンポ再生のサブルーチンを示すフローチ
ャートである。
【図18】 テンポ変更パターンの一例を示すグラフで
ある。
【符号の説明】
10…データバス、12…鍵盤回路、14…操作子及び
表示器群、16…中央処理装置、18…プログラム及び
データメモリ、20…レジスタ群、22…演奏データメ
モリ、24…クロック発生器、26…トーンジェネレー
タ、28…パネル、30…タイマ発生器、KB…鍵盤、
KPS,KRS,TPS,TRS…モード指定スイッ
チ、SSW…スタート/ストップスイッチ、TVL…テ
ンポボリューム、FTC…フットコントローラ。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】所望の曲を自動演奏するための複数の音高
    情報及び複数のタイミング情報を記憶すると共に、該自
    動演奏のテンポを制御するためのテンポ制御情報を所望
    により記憶する第1の記憶手段と、 テンポクロック信号を発生する手段と、 前記テンポクロック信号と前記複数のタイミング情報と
    に基づいて前記第1の記憶手段から前記複数の音高情報
    を前記曲の進行に従って読出すと共に各音高情報の読出
    しのたびに該音高情報に対応する楽音信号を発生するこ
    とにより前記曲の自動演奏を遂行する自動演奏手段と、 所望のテンポ値を指示するための操作手段と、 この操作手段での指示操作に応答して該指示操作で指示
    されるテンポ値に対応したテンポ制御情報に基づいて前
    記テンポクロック信号の周波数を制御することにより前
    記自動演奏のテンポを制御する制御手段と、 情報を書込可能な第2の記憶手段と、 前記第1の記憶手段から音高情報が読出されるたびに該
    音高情報と該読出しのタイミングに対応するタイミング
    情報とを前記第2の記憶手段に書込むと共に、前記操作
    手段での指示操作に応答して該指示操作で指示されるテ
    ンポ値に対応したテンポ制御情報と該指示操作のタイミ
    ングに対応したテンポ制御タイミング情報とを前記第2
    の記憶手段に書込む書込手段と、 前記第1の記憶手段に記憶したテンポ制御情報を検知す
    る検知手段と、 この検知手段でのテンポ制御情報検知に応答して前記第
    1の記憶手段から前記第2の記憶手段へのテンポ制御情
    報転送と前記第1の記憶手段に記憶したテンポ制御情報
    に基づく前記自動演奏のテンポ制御とを禁止する禁止手
    段とを備えた自動演奏装置。
  2. 【請求項2】所望の曲を自動演奏するための複数の音高
    情報及び複数のタイミング情報を記憶すると共に、該自
    動演奏のテンポを制御するためのテンポ制御情報を所望
    により記憶する第1の記憶手段と、 テンポクロック信号を発生する手段と、 前記テンポクロック信号と前記複数のタイミング情報と
    に基づいて前記第1の記憶手段から前記複数の音高情報
    を前記曲の進行に従って読出すと共に各音高情報の読出
    しのたびに該音高情報に対応する楽音信号を発生するこ
    とにより前記曲の自動演奏を遂行する自動演奏手段と、 所望の絶対テンポ値を指示するための第1の操作子と、 所望の相対テンポ値を指示するための第2の操作子と、 前記第1の操作子の指示操作に応答して該指示操作で指
    示される絶対テンポ値に対応したテンポ制御情報に基づ
    いて前記テンポクロック信号の周波数を制御することに
    より前記自動演奏のテンポを制御すると共に、前記第2
    の操作子の指示操作に応答して該指示操作で指示される
    相対テンポ値に対応したテンポ制御情報に基づいて前記
    テンポクロック信号の周波数を制御することにより前記
    自動演奏のテンポを制御する制御手段と、 情報を書込可能な第2の記憶手段と、 前記第1の記憶手段から音高情報が読出されるたびに該
    音高情報と該読出しのタイミングに対応するタイミング
    情報とを前記第2の記憶手段に書込む書込手段であっ
    て、前記第1の操作子の指示操作に応答して該指示操作
    で指示される絶対テンポ値に対応したテンポ制御情報と
    該指示操作のタイミングに対応したテンポ制御タイミン
    グ情報とを前記第2の記憶手段に書込むと共に、前記第
    2の操作子の指示操作に応答して該指示操作で指示され
    る相対テンポ値に対応したテンポ制御情報と該指示操作
    のタイミングに対応したテンポ制御タイミング情報とを
    前記第2の記憶手段に書込むものと、 前記第1の記憶手段に記憶したテンポ制御情報を検知す
    る検知手段と、 この検知手段でのテンポ制御情報検知に応答して前記第
    1の記憶手段から前記第2の記憶手段へのテンポ制御情
    報転送と前記第1の記憶手段に記憶したテンポ制御情報
    に基づく前記自動演奏のテンポ制御とを禁止する禁止手
    段とを備えた自動演奏装置。
JP8322231A 1996-11-18 1996-11-18 自動演奏装置 Expired - Fee Related JP2705695B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8322231A JP2705695B2 (ja) 1996-11-18 1996-11-18 自動演奏装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8322231A JP2705695B2 (ja) 1996-11-18 1996-11-18 自動演奏装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2194590A Division JP2638262B2 (ja) 1990-07-23 1990-07-23 自動演奏装置

Publications (2)

Publication Number Publication Date
JPH09166980A JPH09166980A (ja) 1997-06-24
JP2705695B2 true JP2705695B2 (ja) 1998-01-28

Family

ID=18141399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8322231A Expired - Fee Related JP2705695B2 (ja) 1996-11-18 1996-11-18 自動演奏装置

Country Status (1)

Country Link
JP (1) JP2705695B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006308921A (ja) * 2005-04-28 2006-11-09 Kawai Musical Instr Mfg Co Ltd 電子楽器

Also Published As

Publication number Publication date
JPH09166980A (ja) 1997-06-24

Similar Documents

Publication Publication Date Title
JP2580720B2 (ja) 自動演奏装置
JP2623809B2 (ja) 自動押鍵指示装置
JPS6157640B2 (ja)
JP2896716B2 (ja) 自動演奏装置
US5457282A (en) Automatic accompaniment apparatus having arrangement function with beat adjustment
JP2705695B2 (ja) 自動演奏装置
JPH01319793A (ja) 演奏情報処理装置の割込処理制御部
JP2940129B2 (ja) リズム演奏装置
JP2522337B2 (ja) 自動演奏装置
JP2638262B2 (ja) 自動演奏装置
JPS6318752B2 (ja)
JP2570045B2 (ja) 電子楽器
JP3141448B2 (ja) 自動伴奏装置
JPH10288987A (ja) 電子楽器及び楽音制御データ発生装置
JP2570562B2 (ja) 自動演奏装置及び自動伴奏装置
JPH0774951B2 (ja) 自動伴奏装置付き電子楽器
JP2564811B2 (ja) 演奏記録装置
JP3620321B2 (ja) 自動伴奏装置
JPH0515279B2 (ja)
JP2536272B2 (ja) 電子楽器
JP2904020B2 (ja) 自動伴奏装置
JP3303754B2 (ja) 楽音制御データ生成装置、楽音制御データを生成するプログラムを記録した記録媒体及び楽音制御データ生成方法
JP3758041B2 (ja) 楽音制御データ発生装置
JPS61176990A (ja) 自動演奏装置
JPH1031486A (ja) 演奏データ記憶再生方法および装置

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20071009

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20081009

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20091009

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees