JPH0827625B2 - 自動演奏装置 - Google Patents

自動演奏装置

Info

Publication number
JPH0827625B2
JPH0827625B2 JP63005377A JP537788A JPH0827625B2 JP H0827625 B2 JPH0827625 B2 JP H0827625B2 JP 63005377 A JP63005377 A JP 63005377A JP 537788 A JP537788 A JP 537788A JP H0827625 B2 JPH0827625 B2 JP H0827625B2
Authority
JP
Japan
Prior art keywords
data
performance
mode
reading
tempo
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 - Lifetime
Application number
JP63005377A
Other languages
English (en)
Other versions
JPH01180595A (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 JP63005377A priority Critical patent/JPH0827625B2/ja
Priority to KR1019890000289A priority patent/KR940002435B1/ko
Publication of JPH01180595A publication Critical patent/JPH01180595A/ja
Priority to US07/869,858 priority patent/US5233521A/en
Publication of JPH0827625B2 publication Critical patent/JPH0827625B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Auxiliary Devices For Music (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は演奏データを記憶するメモリを備えた自動演
奏装置に係り、特に該メモリに記憶された演奏データの
読出し時に楽曲の進行状態を表示する自動演奏装置に関
する。
[従来技術] この種の装置に関する従来技術としては、例えば実開
昭62−2096号公報に示されるように、メモリの使用量を
アドレス数により表示するものが知られている。
[発明が解決しようとする課題] しかるに、上記従来の装置にあっては、メモリの残量
が視覚的に表示されるので演奏データの記録時には有効
であるが、該記録によりメモリ内に記憶される演奏デー
タの量は楽曲の種類により異なるので、演奏データの読
出し時において楽曲の進行位置を把握することはできな
かった。
本発明は上記問題に鑑み案出されたもので、その目的
は演奏データの読出し時に楽曲の進行状態を認識できる
ようにした自動演奏装置を提供するものである。
[課題を解決するための手段] 上記目的を達成するために、第1の発明(上記請求項
1に係る発明)の構成上の特徴は、楽曲演奏に係る複数
の演奏データを楽曲の進行に従って記憶する演奏データ
記憶手段と、所定のテンポで前記複数の演奏データを順
次読出す読出し手段とを備えた自動演奏装置において、
前記読出し手段による演奏データの読出し時における楽
曲の進行位置を楽曲の進行に従って計測する進行位置計
測手段と、前記演奏データ記憶手段に記憶されている演
奏データに関する楽曲全体の長さに対する前記計測した
楽曲の進行位置の割合を計算する割合計算手段と、前記
計算した割合を表示する表示手段とを設けたことにあ
る。
また、第2の発明(上記請求項2に係る発明)の構成
上の特徴は、楽音の発生を制御する演奏イベントデータ
及び各該演奏イベントデータの読出し間隔を表す相対時
間データからなる複数の演奏データを楽曲の進行に従っ
て記憶する演奏データ記憶手段と、楽曲の進行速度に対
応したレートでテンポクロック信号を発生するテンポク
ロック信号発生手段と、該テンポクロック信号を計数す
ることにより前記相対時間データに対応した時間間隔で
前記演奏イベントデータを順次読出す読出し手段とを備
えた自動演奏装置において、前記読出し手段により演奏
イベントデータの読出し時における経過時間を前記テン
ポクロック数に対応させて計測する経過時間計測手段
と、前記演奏データ記憶手段に記憶されている全ての演
奏イベントデータの読出しに必要であって前記テンポク
ロック数に対応した全体時間に対する前記計測した経過
時間の割合を計算する割合計算手段と、前記計算した割
合を表示する表示手段とを設けたことにある。
また、第3の発明(上記請求項3に係る発明)の構成
上の特徴は、上記第2の発明の経過時間計測手段を、上
記読出し手段による演奏イベントデータの読出し開始時
から前記テンポクロック信号を計数する計数手段で構成
したことにある。
また、第4の発明(上記請求項4に係る発明)の構成
上の特徴は、上記第2の発明の上記経過時間計測手段
を、上記読出し手段による演奏イベントデータの読出し
開始時から前記相対時間データを累算する累算手段で構
成したことにある。
また、第5の発明(上記請求項6に係る発明)の構成
上の特徴は、上記第2の発明の上記割合計算手段を、上
記全体時間を表す全体時間データを記憶する全体時間デ
ータ記憶手段と、前記全体時間記憶手段に記憶されてい
る全体時間データにより表された全体時間に対する上記
経過時間測定手段により計測された経過時間の割合を演
算する演算手段とにより構成したことにある。
また、第6の発明(上記請求項6に係る発明)の構成
上の特徴は、上記第2の発明の上記割合計算手段を、上
記読出し手段による演奏イベントデータの読出し開始前
に演奏データ記憶手段に記憶されている全ての相対時間
データを累算して上記全体時間を算出する累算手段と、
前記累算手段により算出された全体時間に対する上記経
過時間計測手段により計測された経過時間の割合を演算
する演算手段とにより構成したことにある。
また、第7の発明(上記請求項7に係る発明)の構成
上の特徴は、楽器演奏に係る複数の演奏データを楽曲の
進行に従って複数のアドレスにそれぞれ記憶する演奏デ
ータ記憶手段と、所定のテンポで歩進するアドレス信号
を発生し該アドレス信号により指定されるアドレスに記
憶されている演奏データを順次読出す読出し手段とを備
えた自動演奏装置において、前記演奏データ記憶手段に
おける演奏データの最終記憶アドレス値に対する前記読
出し手段による演奏データの読出し時におけるアドレス
値の割合を計算する割合計算手段と、前記計算した割合
を表示する表示手段とを設けたことにある。
[発明の作用] 上記のように構成した第1の発明においては、進行位
置計測手段が演奏データの読出しにおける楽曲の進行位
置を計測し、割合計算手段が楽曲全体の長さに対する前
記計測した楽曲の進行位置の割合を計算して、該計算し
た割合が表示手段によって表示される。
また、上記のように構成した第2の発明においては、
経過時間計測手段が演奏データの読出しにおける経過時
間をテンポクロック数に対応させて計測し、割合計算手
段が演奏データ記憶手段に記憶されている全ての演奏イ
ベントデータの読出しに必要な全体時間に対する前記計
測した経過時間の割合を計算して、該計算した割合が表
示手段によって表示される。
また、上記第3の発明においては、前記第2の発明に
おける経過時間計測手段としての計数手段が、テンポク
ロック信号を計数することにより、上記経過時間を計測
する。
また、上記第4の発明においては、前記第2の発明に
おける経過時間計測手段としての累算手段が、演奏イベ
ントデータの読出し開始から相対時間データを累算する
ことにより、上記経過時間を計測する。
また、上記第5の発明においては、上記第2の発明割
合計算手段を構成する全体時間データ記憶手段及び演算
手段が協働して、全体時間記憶手段に記憶されている全
体時間データにより表された全体時間と経過時間計測手
段により計測された経過時間とに基づき、上記経過時間
割合を計算する。
また、上記第6の発明においては、上記第2の発明の
割合計算手段を構成する累算手段及び演算手段が協働し
て、全ての相対時間データを累算することにより計算し
た全体時間と経過時間計測手段により計測された経過時
間とに基づき、上記経過時間割合を計算する。
さらに、上記のように構成した第7の発明において
は、割合計算手段が演奏データ記憶手段における演奏デ
ータの最終記憶アドレス値に対する読出し手段による演
奏データの読出し時におけるアドレス値の割合を計算
し、該計算した割合が表示手段によって表示される。
[発明の効果] 上記作用説明からも理解できるとおり、上記第1の発
明によれば、楽曲全体の長さに対する再生中の楽曲の進
行位置の割合が表示されるので、利用者は再生中の楽曲
の進行位置を認識できるとともに、前記割合表示により
楽曲が現在どの辺を進行中であるのか感覚的に把握し易
くなる。これにより、利用者は今後どの程度自動演奏が
続くのか把握できる。また、演奏データの早送り、後退
等の操作を混じえることにより、楽曲中、所望の位置に
楽曲の進行位置を設定でき、聴取したい部分を速やかに
探し出すことができる。
また、上記第2乃至第6の発明によれば、楽曲の進行
はテンポクロック信号発生手段からのテンポクロック手
段に依存し、かつ割合計算手段により計算された経過時
間割合は該テンポクロック信号に基づくものであって、
表示される経過時間割合が精度のよいものとなるので、
上記第1の発明による効果に加えて、上記楽曲の進行状
態が正確に把握される。
さらに、上記第7の発明によれば、現在の楽曲の進行
位置を読出し手段にて順次歩進されているアドレス信号
値により推定するようにして、格別の回路を設けなくて
も現在の楽曲の進行位置を検出できるようにしたので、
上記第1の発明による効果に加えて、構成を簡単にして
上記割合を表示することができる。その結果、当該自動
演奏装置の製造コストが安くなる。
[実施例] 以下、本発明の一実施例を図面を用いて説明する。第
1図は本発明に係る自動演奏装置の全体をブロック図に
より示しており、この自動演奏装置は操作パネル10を有
する。操作パネル10には、スタート操作子11、ストップ
操作子12、早送り操作子13、後退操作子14、記録操作子
15、ファンクション操作子16及びデンポ操作子17が配設
されており、各操作子11〜16は該自動演奏装置の各動作
モードを指定するとともに、テンポ操作子17は自動演奏
のテンポを設定する。これらの各操作子11〜17の操作は
スイッチ群10a内に同操作子11〜17に対応して設けた各
スイッチ又はディジタル位置センサにより検出されるよ
うになっており、各スイッチ及びディジタル位置センサ
はバス20に接続されている。また、操作パネル10には自
動演奏の進行位置を2桁の数字(0〜99)で表示する表
示器18が配設されており、表示器18はバス20に接続した
表示制御回路10bにより制御されるようになっている。
バス20には、テンポ発振器31、ミディー(以下MIDIと
いう)受信器32及びMIDI送信器33も接続されている。テ
ンポ発振器31は可変発振器により構成され、設定テンポ
に応じた周期(レート)でテンポクロック手段を発生す
る。MIDI受信器32はMIDI(Musical Instrument Digital
Interface)コードにより表された演奏データを入力す
るインターフェース回路であり、該受信器32には電子楽
器、演奏操作装置(楽音信号発生装置を備えないで鍵盤
等による演奏データのみを出力する装置)、他の自動演
奏装置等が接続される。MIDI送信器33はMIDIコードによ
り表された演奏データを出力するインターフェース回路
であり、該送信器33には電子楽器、音源装置(鍵盤等の
演奏操作手段を備えないで入力演奏データに応じて楽音
信号を発生する装置)、他の自動演奏装置等が接続され
る。
さらに、バス20にはマイクロコンピュータ40及び演奏
データメモリ50が接続されている。マイクロコンピュー
タ40はCPU41、プログラムメモリ42及びワーキングメモ
リ43からなる。CPU41は電源スイッチ(図示しない)の
投入により第2図のフローチャートに対応した「メイン
プログラム」を実行するとともに、テンポ発信器31から
のテンポクロック信号の到来に応答して第3図のフロー
チャートに対応した「テンポクロックインタラプトプロ
グラム」を割込み実行する。プログラムメモリ42はROM
により構成され、前記「メインプログラム」及び「テン
ポクロックインタラプトプログラム」を記憶するととも
に、該各プログラムのサブルーチンに相当する第4図乃
至第14図のフローチャートに対応したサブプログラムを
記憶している。
ワーキングメモリ43はRAMにより構成され、前記各プ
ログラムの実行に必要な変数データを一時的に記憶して
いる。該変数データの主なものを列挙すると次の通りで
ある。
テンポクロックTCL……テンポクロック信号の到来毎
に1ずつ増加して自動演奏装置の進行を表す。
ポインタPNT……演奏データメモリ50のアドレスを表
す。(0〜DTEND) テンポデータTMP……自動演奏のテ
ンポスピードを表す。
現テンポクロック数NTM……現在までのテンポクロッ
ク数の累算値を表す。
総テンポクロック数TTM……一曲分のテンポクロック
数の総和を表す。
時間データDUR……イベントデータから次のイベント
データの発生までの時間を表す。
表示テータDSP……表示器18にて表示される表示値を
示す。
ジャンプデータPC10……ジャンプモードにおける飛び
先の進行位置を表す。
モードデータMODE……当該自動演奏装置が設定されて
いる5種類(次頁第1表参照)のモードを表す。
サブモードデータMODE……当該自動演奏装置が設定さ
れている5種類(次々頁第2表参照)のサブモードを表
す。
演奏データメモリ50は0〜DTENDに渡るアドレスに対
応した記憶領域を有するRAMに構成され、第15図のデー
タフォーマットにより表された以下の各種演奏データDA
TA及び音色、音量、効果等に関するその他の演奏データ
DATAを記憶する。なお、下記において、サフィックスH
は16進表示を表すとともに、Xは任意の値をとり得るこ
とを表す。
キーオンデータ・・・第1バイト目に識別コード「9X
H」を含む3バイトのデータにより構成され、第2及び
第3バイト目の両最上位ビットMSBは0であり、下位7
ビットはそれぞれキーコードKCおよび押鍵タッチデータ
KTである。
キーオフデータ・・・第1バイト目に識別コード「8X
H」を含む3バイトのデータにより構成され、第2及び
第3バイト目の両最上位ビットMSBは0であり、下位7
ビットはそれぞれキーコードKCおよび離鍵タッチデータ
KTである。
時間データ・・・第1バイト目に識別コード「F2H」
を含む2バイトのデータにより構成され、第2バイト目
の最上位ビットMSBは「0」であり、下位7ビットは時
間値TIMEである。
長時間データ・・・第1バイト目に識別コード「F
3H」を含む3バイトのデータにより構成され、第2及び
第3バイト目の両最上位ビットMSBは「0」であり、下
位7ビットはそれぞれ14ビットで表された時間値TIMEの
うち上位及び下位7ビットある。
曲開始データ・・・識別コード「F0H」のみからなる
1バイトのデータである。
非動作データ・・・識別コード「F9H」のみからなる
1バイトのデータである。
曲終了データ・・・識別コード「FFH」のみからなる
1バイトのデータである。
かかる場合、ワーキングメモリ43及び演奏データメモ
リ50として通常のRAMを用いてもよいが、バッテリバッ
クされたRAM又は不揮発性のRAMを用いてもよいことはも
ちろんである。
次に、上記のように構成した自動演奏装置の動作につ
いて説明する。電源スイッチが投入されると、CPU41は
第2図のステップ100にて「メインプログラム」の実行
を開始し、ステップ101にて表示制御回路10bとの協働に
より表示器18を制御して該表示器18による表示状態を
“−−”に初期設定するとともに、ワーキングメモリ43
内の各種変数データを「0」に初期設定して、以降ステ
ップ102〜110からなる循環処理を実行し続ける。この循
環処理においては、ステップ102〜108にて各操作子11〜
15の操作に応じた処理が実行されるとともに、ステップ
109にてMIDI受信器32への演奏データの到来が検出され
る。また、ステップ110にてテンポ操作子17の操作位置
に応じてテンポ発振器31の発振周波数が制御されるとと
もに、テンポデータTMPが前記操作位置に応じた値に設
定される。かかる循環処理中、テンポ発振器31からテン
ポクロック信号が出力されると、CPU41は「テンポイン
タラプトプログラム」を実行する。
以下、各操作子11〜16の操作に応じた処理動作につい
て説明するが、説明の便宜上、(1)演奏記録動作、
(2)演奏再生動作、(3)早送り動作、(4)後退動
作に分けて説明する。なお、当該自動演奏装置の基本状
態は、第16図に示すように、ストップモードであってモ
ードデータMODEは上記ステップ101(第2図)の処理に
より「0」に設定されており、該モードにおいては、テ
ンポクロック信号の到来により「テンポインタラプトプ
ログラム」(第3図)が実行されても、ステップ201に
て「YES」と判定され、実質的な処理が実行されないで
ステップ202にて該「テンポインタラプトプログラム」
の実行が終了される。
(1)演奏記録動作 上記ストップモードにある状態において、記録操作子
15が操作されると、ステップ102〜110(第2図)からな
る循環処理を実行中のCPU41はステップ104にて「YES」
すなわち記録操作子15のオンイベント有りと判定し、ス
テップ104aにて「記録操作子オンイベントルーチン」
(第6図)を実行する。この「記録操作子オンイベント
ルーチン」においては、ステップ360にてその実行が開
始され、ステップ361にて「0」に設定されているモー
ドデータMODEに基づき「YES」と判定され、ステップ362
にてモードデータMODEが「4」に設定され、ステップ36
3にて表示器18にて“00"が表示されるように表示制御回
路10bが制御されて、ステップ364にて同ルーチンの実行
が終了される。これにより、第16図に示すように、当該
自動演奏装置はレコード待機モードに設定される。な
お、当該自動演奏装置のモードがストップモード(モー
ドデータMODE=0)以外の場合には、記録操作子15が操
作されても、前記ステップ361における「NO」との判定
により同自動演奏装置がレコード待機モードに変更され
ることはない。
このレコード待機モードは、第16図に示すように、ス
タート操作子11又はMIDI受信器32への演奏データ(鍵盤
等によるキーオンデータ)の到来によりレコードモード
に変更される。
すなわち、スタート操作子11が操作されると、ステッ
プ102〜110(第2図)からなる循環処理を実行中のCPU4
1はステップ102にて「YES」すなわちスタート操作子11
のオンイベント有りと判定し、ステップ102aにて「スタ
ート操作子オンイベントルーチン」(第4図)を実行す
る。この「スタート操作子オンイベントルーチン」にお
いては、ステップ300にてその実行が開始され、ステッ
プ301の判定処理により、ステップ302〜304の処理が実
行されて、ステップ305にて同ルーチンの実行が終了さ
れる、かかる場合、CPU41はステップ302にてモードデー
タMODEを「3」に設定することにより当該自動演奏装置
をレコードモードに設定し、ステップ303にて演奏デー
タメモリ50内のポインタPNT(=0)により指定される
アドレスに演奏データDATA(PNT)として曲開始データ
「FOH」を書き込みとともに、ステップ304にてポインタ
PNTを「1」だけ進めておく。かかる状態では、テンポ
発振器31からテンポクロック信号が出力されて「テンポ
クロックインタラプトプログラム」(第3図)が実行さ
れると、モードデータMODEは前述のように「3」に設定
されているので、ステップ201,203,204にていずれも「N
O」と判定され、ステップ205以降(詳しくは後述する)
の処理が実行されて、テンポクロックTCLは同プログラ
ムの実行毎に「1」ずつ増加する。
また、MIDI受信器32へ演奏データが到来すると、ステッ
プ102〜110(第2図)からなる循環処理を実行中のCPU4
1はステップ109にて「YES」すなわちMIDI入力有りと判
定し、ステップ109aにてMIDI受信器32へ入力された演奏
データをその識別コードに応じて必要な数(1〜3)だ
け入力データDT1,DT2,DT3として取り込み、ステップ109
bにて「イベントデータ入力ルーチン」(第11図)を実
行する。この「イベントデータ入力ルーチン」において
は、ステップ600にてその実行が開始され、ステップ60
1,602にてモードデータMODEに基づく判定がなされる。
かかる場合、上記のように当該自動演奏装置がレコード
待機状態にあってモードデータMODEは未だ「4」であれ
ば、ステップ601にて「NO」、ステップ602にて「YES」
判定され、ステップ603〜605にて、上述のステップ302
〜304(第4図)と同様に、モードデータMODEが「3」
に設定され、演奏データメモリ50内のポインタPNT(=
0)により指定されるアドレスに演奏データDATA(PN
T)として曲開始データ「F0H」が買い込まれるととも
に、ポインタPNTが「1」だけ進められる。これによ
り、当該自動演奏装置がレコード待機状態にあるとき
に、MIDI受信器32へ演奏データが到来しても、スタート
操作子11が操作された上記場合と同じように、演奏デー
タの演奏データメモリ50への買込みが準備されると同時
に、テンポクロックTCLの歩進を開始させる。
このようにレコード待機モードにて演奏データが到来
した場合には「イベントデータ入力ルーチン」(第11
図)のステップ601〜605の処理後、又は上記スタート操
作子11の操作若しくは前記演奏データの到来によりレコ
ードモードに変更された後に新たな演奏データが到来し
た場合には、ステップ601におる「YES」すなわちモード
データMODEが「3」であるとの判定後、CPU41はステッ
プ606以降の処理により到来した演奏データ及び時間デ
ータを演奏データメモリ50に書き込む。なお、かかる
「イベントデータ入力ルーチン」においては、モードデ
ータMODEが「3」又は「4」でなければ、ステップ601,
602における「NO」との判定により、該ルーチンの処理
が実質的に行われないでステップ607にてその実行が終
了される。
ステップ606においては、上記「テンポクロックイン
タラプトプログラム」の実行毎に「1」ずつ増加するテ
ンポクロックTCLが「7FH」以下すなわち同クロックTCL
が7ビットで表現できるか否かが判定される。かかる場
合、テンポクロックTCLが「7FH」以下であれば、ステッ
プ606における「YES」との判定の基に、ステップ608に
て演奏データメモリ50内にポインタPNT,PNT+1により
指定されるアドレスに演奏データDATA(PNT),DATA(PN
T+1)として時間識別データ「F2H」,テンポクロック
TCLがそれぞれ書き込まれ、ステップ609にてポインタPN
Tが「2」だけ進められる。また、テンポクロックTCLが
「7FH」より大きければ、ステップ606における「NO」と
の判定の基に、ステップ610にて時間データTM1,TM2がそ
れぞれテンポクロックTCLの上位7ビット及び下位7ビ
ットに設定された後、ステップ611にて演奏データメモ
リ50内のポインタPNT,PNT+1,PNT+2により指定される
アドレスに演奏データDATA(PNT),DATA(PNT+1),DA
TA(PNT+2)として長時間識別データ「F3H」及び時間
データTM1,TM2により表されたテンポクロックTCLがそれ
ぞれ書き込まれ、ステップ612にてポインタPNTが「3」
だけ進められる。
前記ステップ609、612の処理後、CPU41はステップ613
にて現テンポクロック数NTMにテンポクロックTCLを加算
することにより同クロック数NTMを更新した後、ステッ
プ614にてテンポクロックTCLを「0」に初期設定し、ス
テップ615にて「データ書込みルーチン」(第14図)を
実行する。かかる「データ書込みルーチン」において
は、上記ステップ109a(第2図)の処理により入力した
演奏データDT1,DT2,DT3が演奏データメモリ50に書き込
まれるが、CPU41はステップ800による実行開始後、ステ
ップ801〜803の処理により該入力演奏データDT1,DT2,DT
3の種類を判定する。かかる場合、入力演奏データDT1,D
T2,DT3は通常キーオンデータ、キーオフデータ又は音
色、音量等に関するその他の演奏データあり、該データ
DT1,DT2,DT3がキーオンデータ又はキーオフデータであ
れば、ステップ801における「YES」すなわち入力演奏デ
ータDT1が「9XH」又は「8XH」であるとの判定の基に、
ステップ804にて演奏データメモリ50内のポインタPNT,P
NT+1,PNT+2により指定されるアドレスに演奏データD
ATA(PNT),DATA(PNT+1),DATA(PNT+2)として入
力演奏データDT1,DT2,DT3がそれぞれ書き込まれ、ステ
ップ805にてポインタPNTが「3」だけ進められて、ステ
ップ806にて該「データ書込みルーチン」の実行が終了
される。また、該データDT1,DT2,DT3が音色、音量等の
その他のデータであれば、ステップ801〜803における
「NO」すなわち入力演奏データDT1が「9XH」,「8
XH」,「F9H」,「FFH」でないとの判定の基に、ステッ
プ807にて演奏データメモリ50内のポインタPNT,PNT+1,
PNT+2により指定されるアドレスに演奏データDATA(P
NT),DATA(PNT+1),DATA(PNT+2)として入力演奏
データDT1,DT2,DT3がそれぞれ書き込まれるとともにポ
インタPNTが「3」だけ進められて、ステップ806にて該
「データ書込みルーチン」の実行が終了される。なお、
この場合、該その他の演奏データが3バイトでなく1バ
イト又は2バイトであれば、書き込まれる演奏データは
一つ又は二つであると同時に、ポインタPNTの歩進も
「1」又は「2」である。
このようにMIDI受信器32に演奏データが到来する毎
に、「イベントデータ入力プログラム」(第11図)の実
行により、演奏データメモリ50には演奏データとともに
テンポクロックTCLが該演奏データ間のインターバルデ
ータとして順次記憶されていく。
一方、かかる演奏データの書込み中、テンポ発振器31
によるテンポクロック信号の発生毎に、上述のように、
「テンポクロックインタラプトプログラム」(第3図)
が実行され、ステップ201,203,204の処理後、ステップ2
05にてテンポクロックTCLは「1」ずつ増加する。そし
て、通常の場合には、MIDI受信器32に演奏データが到来
して上記ステップ614(第11図)の処理によりテンポク
ロックTCLは「0」に初期設定されるので、2バイト
(厳密には14ビット)からなる同クロックTCLがオーバ
ーフローすることはなく、前記ステップ205の処理後の
ステップ206にて「NO」すなわちテンポクロックTCLは14
ビットに対応した「4000H」以上でないと判定され、ス
テップ202にて該「テンポクロックインタラプトプログ
ラム」の実行が終了される。
しかし、長時間に渡りMIDI受信器32に演奏データが到
来しない場合には、テンポクロックTCLが増大して「400
0H」になると、上記ステップ206にて「YES」と判定され
て、プログラムはステップ207以降に進められる。かか
る場合、CPU41はステップ207にてテンポクロックTCLを1
4ビットで表現できる最大値に対応した「3FFFH」に設
定し、ステップ208にて「3」(レコードモード)に設
定されているモードデータMODEに基づき「YES」と判定
し、ステップ209にて入力データDT1を「F9H」(非動作
データ)に設定して、ステップ210にて「イベントデー
タ入力ルーチン」(第11図)を実行する。
かかる場合、モードデータMODEは「3」であり、かつ
テンポクロックTCLは「7FH」(7ビットで表現できる最
大値)より大きいので、CPU41は上記ステップ610〜614
の処理(演奏データとしてテンポクロックTCLの書込
み、現テンポクロック数NTMの更新及びテンポクロックT
CLの「0」への初期設定)後、ステップ615にて「デー
タ書込みルーチン」(第14図)を実行する。この場合、
上記ステップ209(第3図)の処理によって入力データD
T1は「F9H」に設定されているので、ステップ801におけ
る「NO」との判定後、ステップ802にて「YES」と判定さ
れ、ステップ808にて演奏データメモリ50内のポインタP
NTにより指定されるアドレスに演奏データDATA(PNT)
として入力演奏データDT1すなわち「F9H」が書き込まれ
るとともに、ステップ809にてポインタPNTが「1」だけ
進められて、ステップ806にて該「データ書込みルーチ
ン」の実行が終了される。その結果、演奏データメモリ
50には、テンポクロックTCLの最大値が識別コードとと
もに書き込まれると同時に、非動作データが書き込まれ
る。これにより、14ビットで表現できない時間データが
実質的に延長されたことになる。
上記ステップ210(第3図)の処理後、CPU41はステッ
プ211にてテンポクロックTCLを「0」に初期設定して、
ステップ202にて該「テンポクロックインタラプトプロ
グラム」の実行を終了する。なお、当該自動演奏装置が
レコード待機モード(モードデータMODE=4)に設定さ
れている場合には、テンポクロック信号の到来によって
該「テンポクロックインタラプトプログラム」の実行が
開始されても、ステップ201にて「NO」と判定されるの
で、実質的な処理が行われないままステップ202にて該
プログラムの実行は終了される。
次に、かかる演奏データの書込み中における表示器18
の表示動作について説明する。上記「イベントデータ入
力ルーチン」(第11図)の実行中、CPU41はステップ616
にて、更新中のポインタPNT値及び演奏データメモリ50
の最終アドレス値DTEND(演奏データメモリ50の容量)
に基づき、下記式1の演算を実行する。なお、下記式1
において、関数INT(x)はxの整数部を意味する。
DSP=INT{(1−PNT/DTEND)*100}・・・式1 これにより、表示データDSPは演奏データメモリ50の残
量を百分率で表すことになる。上記ステップ616の処理
後、ポインタPNT値が最後アドレスDTENDに達したか否か
が判定される。かかる場合、ポインタPNT値が未だ最終
アドレス値DTENDに達していないとすれば、CPU41はステ
ップ617にて「NO」と判定し、ステップ618にて表示制御
回路10bとの協働により表を制御して、表示器18にて表
示データDSPに対応した値が表示されるようにする。こ
れにより、該レコードモード及びレコード待機モード
(モードデータMODE=「3」,「4」)においては、表
示器18にて演奏データメモリ50のアドレス数に対応した
残量が表示されるようになる。
次に、かかる演奏データの書込みを停止させる場合に
ついて説明する。かかる演奏データの書込み中(モード
データMODE=3)、ストップ操作子12が操作されると、
ステップ102〜110(第2図)からなる循環処理を実行中
のCPU41はステップ103にて「YES」すなわちストップ操
作子12のオンイベント有りと判定し、ステップ103aにて
「ストップ操作子オンイベントルーチン」(第5図)を
実行する。この「ストップ操作子オンイベントルーチ
ン」においては、ステップ330にてその実行が開始され
て、ステップ331にて「YES」すなわちモードデータMODE
は「3」であると判定されて、ステップ332にて入力デ
ータDT1が「FFH」(曲終了データ)に設定された後、ス
テップ333にて「イベントデータ入力ルーチン」が実行
される。かかる「イベントデータ入力ルーチン」(第11
図)においては、上述と同様の処理によりテンポクロッ
クTCLの演奏データメモリ50内への書込み及び表示制御
が実行されるとともに、ステップ615にて「データ書込
みルーチン」(第14図)が実行される。かかる場合、入
力データDT1は「FFH」に設定されているので、「データ
書込みルーチン」においては、ステップ801,802におけ
る「NO」との判定及びステップ803における「YES」との
判定の基に、ステップ810にて演奏データメモリ50内の
ポインタPNTにより指定されるアドレスに演奏データDAT
A(PNT)として前記入力演奏データDT1すなわち「FFH」
(曲終了データ)が書き込まれるとともに、ステップ81
1にて総テンポクロック数TTMが現テンポクロック数NTM
に設定されて、ステップ806にて該「データ書込みルー
チン」の実行が終了される。これにより、演奏データメ
モリ50には曲の終了を表すデータが記憶されるととも
に、総テンポクロック数TTMとして該曲の長さをテンポ
クロック数すなわち演奏時間に対応した量で表した値が
記憶される。
上記ステップ333(第5図)の処理後、CPU41はステッ
プ334にてモードデータMODEを「0」に設定するととも
に、ステップ335にて表示制御回路10bとの協働により表
状態が“−−”になるように表示器18を制御して、ステ
ップ336にてMIDI送信器33にオールオフデータを出力す
る。このオールオフデータの出力はMIDI送信器33に接続
した電子楽器及び音源装置における楽音信号の発生を強
制的に停止させるものであって、該演奏データの書込み
処理においては不要であるが、後述する演奏データの読
出し出力処理において必要である。上記ステップ336の
処理後、CPU41はステップ337〜339にてポインタPNT、現
テンポクロック数NTM及びテンポクロックTCLを「0」に
初期設定して、ステップ340にて該「ストップ操作子オ
ンイベントルーチン」の実行を終了する。このような
「ストップ操作子オンイベントルーチン」の実行によ
り、レコードモード(モードデータMODE=3)に設定さ
れていた当該自動演奏装置は、第16図に示すように、基
本状態としてのストップモード(モードデータMODE=
0)に変更される。
なお、当該自動演奏装置が上述のレコード待機モード
(モードデータMODE=4)にある状態で、ストップ操作
子12が操作された場合にも、上記「ストップ操作子オン
イベントルーチン」が実行される。かかる場合、モード
データMODEは「4」に設定されているので、CPU41はス
テップ331にて「NO」、ステップ341にて「YES」と判定
した後、ステップ342にて入力データDT1を曲終了データ
「FFH」に設定し、ステップ343にて「データ書込みルー
チン」(第14図)を実行する。かかる「データ書込みル
ーチン」においては、上述したレコードモード(モード
データMODE=3)においてストップ操作子12が操作され
た場合と同様に、ステップ810にて演奏データメモリ50
に曲終了データ「FFH」が書き込まれるとともに、ステ
ップ811にて総テンポクロック数TTMがテンポクロック数
NTMに設定される。上記ステップ343(第5図)の処理
後、CPU41は上記場合と同様なステップ334〜339の処理
を実行して、ステップ340にて該「ストップ操作子オン
イベントルーチン」の実行を終了する。これにより、か
かる場合にも、当該自動演奏装置は基本状態としてのス
トップモード(モードデータMODE=0)に変更される。
一方、演奏データの書込み中(モードデータMODE=
3)、ストップ操作子12が長時間操作されることがなく
演奏データメモリ50が満杯になると、上述した「イベン
トデータ入力ルーチン」(第11図)の実行中、CPU41が
ステップ617にて「YES」すなわちポインタPNT値が演奏
データメモリ50の最終アドレス値DTENDに等しいと判定
して、ステップ619〜624の処理後、ステップ607にて該
「イベントデータ入力ルーチン」の実行を終了する。か
かるステップ619〜624の処理においては、ステップ619
にてモードデータMODEが「0」に設定され、ステップ62
0にて表示器18の表示状態が“−−”に制御され、ステ
ップ621にて演奏データメモリ50内に演奏データDATA(P
NT)として曲終了データ「FFH」が書き込まれ、ステッ
プ622にてポインタPNTが「0」に初期設定され、ステッ
プ623にて総テンポクロック数TTMが現テンポクロック数
NTMに設定され、ステップ624にて現テンポクロック数NT
Mが「0」に初期設定される。その結果、上述の場合と
同様に、当該自動演奏装置は基本状態としてのストップ
モード(モードデータMODE=0)に変更される。
さらに、当該自動演奏装置においては、レコードモー
ド(モードデータMODE=3)にある状態にて、スタート
操作子11が操作されると、第16図に示すように、該レコ
ードモードはレコード待機モード(モードデータMODE=
4)に変更される。すなわち、スタート操作子11が操作
されると、上述の場合と同様、「メインプログラム」を
実行中のCPU41は「スタート操作子オンイベントルーチ
ン」(第4図)の実行をステップ300にて開始し、ステ
ップ301の判定処理によりステップ306の処理を実行後、
ステップ305にて該「ステップ操作子オンイベントルー
チン」の実行を終了する。かかる場合、ステップ306に
てモードデータMODEは「4」に設定され、当該自動演奏
装置は上述したレコード待機モードに変更される。該モ
ードの変更後の動作については上述のとおりである。こ
れにより、かかる場合には、スタート操作子11は一時停
止(ポーズ)操作子として機能することになる。
(2)演奏再生動作 当該自動演奏装置が基本状態としての上記ストップモ
ードにある状態において、スタート操作子11が操作され
ると、ステップ102〜110(第2図)からなる循環処理を
実行中のCPU41はステップ102にて「YES」すなわちスタ
ート操作子11のオンイベント有りと判定し、ステップ10
2aにて「スタート操作子オンイベントルーチン」(第4
図)を実行する。この「スタート操作子オンイベントル
ーチン」においては、ステップ300にてその実行が開始
され、ステップ301の判定処理により、「0」に設定さ
れているモードデータMODEに基づきステップ307以降の
処理が実行される。かかる場合、ステップ307にてモー
ドデータMODEが「1」に設定され、ステップ308にて表
示器18にて“00"が表示されるように表示制御回路10bが
制御されて、ステップ305にて該「スタート操作子オン
イベントルーチン」の実行が終了される。これにより、
当該自動演奏装置は、第16図に示すように、プレイモー
ドに設定される。
かかる状態にて、テンポ発振器31がテンポクロック信
号を発生すると、CPU41は「テンポクロックインタラプ
トプログラム」(第3図)の実行をステップ200にて開
始し、「1」に設定されているモードデータMODEに基づ
き、ステップ201にて「NO」と判定し、ステップ203にて
「YES」と判定し、ステップ212にてサブモードデータMO
DEが「0」,「3」,「4」のいずれかであるか否かを
判定する。かかる場合、当該自動演奏装置のサブモード
はノーマルモードに設定されていて前記サブモードデー
タMODEは「0」であるので、前記ステップ212にて「YE
S」と判定され、ステップ213に「カウントアップルーチ
ン」(第12図)が実行される。
かかる「カウントアップルーチン」の実行において
は、ステップ700にてその実行が開始され、ステップ701
にてテンポクロックTCLと時間データDURが等しいか否か
が判定される。かかる場合、前記両データが等しくなけ
れば、ステップ701にて「NO」と判定され、ステップ702
にて該「カウントアップルーチン」の実行が終了され
る。この「カウントアップルーチン」の実行後、CPU41
は再び「テンポクロックインタラプトプログラム」(第
3図)の実行に移り、ステップ205の処理によってテン
ポクロックTCLを順次「1」ずつ増加させる。
このようなテンポクロックTCLのカウント動作中、同
クロックTCLと時間データDURとが等しくなると、CPU41
は上記ステップ701(第12図)の判定にて「YES」と判定
し、ステップ703にてポインタPNTにより指定される演奏
データメモリ50内のアドレスに記憶されている演奏デー
タDATA(PNT)を先頭データCD(識別データ)として読
出して、ステップ704〜708にて該先頭データCDに続く演
奏データがいかなる種類のデータであるかを判別する。
かかる場合、該先頭データCDがキーオンデータ又はキ
ーオフデータに関する識別データ「9XH」,「8XH」であ
れば、モードデータMODEは「1」でありかつサブモード
データMODEは「0」であるので、ステップ704における
「YES」との判定及びステップ709における「YES」との
判定の基に、ステップ710にて前記先頭データCDとポイ
ンタPNT+1,PNT+2により指定されて演奏データメモリ
50から読出された演奏データDATA(PNT+1),DATA(PN
T+1)すなわちキーコードKC及び鍵タッチデータKT
(第15図参照)とがMIDI送信器33に出力される。これに
より、MIDI送信器33は同送信器33に接続された電子楽
器、音源装置等へ前記データCD,DATA(PNT+1),DATA
(PNT+2)を出力するので、同電子楽器、音源装置等
からは前記キーコードKC及び鍵タッチデータKTに応じて
形成された楽音信号が出力される。上記ステップ710の
処理後、CPU41はステップ711にてポインタPNTを「3」
だけ進め、プログラムをステップ703に戻す。
また、ステップ703の処理により設定された先頭デー
タCDが曲開始データ又は非動作データに関する識別デー
タ「F0H」,「F9H」であれば、ステップ704における「N
O」との判定及びステップ705における「NO」との判定の
基に、ステップ12にてポインタPNTが「1」だけ進めら
れて、プログラムがステップ703に戻される。また、ス
テップ703の処理により設定された先頭データCDが音
色、音量等その他のデータに関する識別データであれ
ば、ステップ704〜708における「NO」との判定の基に、
ステップ713にて該音色、音量等のその他のデータが先
頭データCDとともにMIDI送信器33に出力され、かつポイ
ンタPNTが前記出力データのバイト数だけ進められて、
プログラムがステップ703に戻される。これにより、上
述した電子楽器、音源装置等により形成される楽音信号
の音色、音量等が制御される。
一方、上記キーオンデータ、キーオフデータ、曲開始
データ、非動作データ及びその他のデータの読出しに伴
うステップ703〜713に係る上記循環処理中、ステップ70
3の処理により設定された先頭データCDが時間データに
関する識別データ「F2H」になると、ステップ704、705
における「NO」との判定及びステップ706における「YE
S」との判定の基に、ステップ714〜716の処理が実行さ
れる。かかるステップ714〜716の処理においては、ステ
ップ714にて時間データDURがポインタPNT+1により指
定されて演奏データメモリ50から読出された演奏データ
DATA(PNT+1)値に設定され、ステップ715にてポイン
タPNTが「2」だけ進められ、ステップ716にてテンポク
ロックTCLが「0」に初期設定される。
また、前記設定された先頭データCDが長時間データに
関する識別データ「F3H」であれば、ステップ704〜706
における「NO〕との判定及びステップ707における「YE
S」との判定の基に、ステップ717にて時間データDURが
ポインタPNT+1,PNT+2により指定されて演奏データメ
モリ50から読出された演奏データDATA(PNT+1),DATA
(PNT+1)に基づく下記式2の演算値に設定される。
DUR=DATA(PNT+1)*80H+DATA(PNT+2)……
式2 前記式2はそれぞれ7ビットからなる2バイトのデータ
を14ビットのデータに変換するもので、前記式中の「*
80H」の乗算はDATA(PNT+1)の7ビットの桁上げを意
味する。上記ステップ717の処理後、ステップ718にてポ
インタPNTが「3」だけ進められ、ステップ719にてテン
ポクロックTCLが「0」に初期設定される。
その結果、ステップ714〜719の処理により、時間デー
タDURが設定されるとともに、テンポクロックTCLが
「0」に初期設定されて、次の演奏データDATA(PNT)
の読出し準備がなされる。そして、テンポ発振器31から
テンポクロック信号の発生に伴う「テンポクロックイン
タラプトプログラム」の実行によりテンポクロックTCL
が増加して、同クロックTCLが前記新たに設定した時間
データDUR値に等しくなると、上記ステップ703〜713に
よるキーオンデータ、キーオフデータ、曲開始データ、
非動作データ及びその他のデータの読出しに応じて楽音
信号の発生が制御される。
なお、上記ステップ701にて「YES」すなわち時間デー
タDURとテンポクロックTCLとが等しいとの判定の基に、
演奏データとして非動作データ「F9H」が読出されて、
上記ステップ705,706の処理によりプログラムがステッ
プ703に戻されると、再度演奏データの読出しがなされ
てステップ714,717の処理により時間データDURが設定し
直されるとともに、ステップ716,719にてテンポクロッ
クTCLが「0」に初期設定される。これにより、再びテ
ンポクロックTCLのカウント動作がなされるとともに、
ステップ701の判定処理がなされるようになるので、上
述したようにキーオン、キーオフ等に関する演奏イベン
トデータ間の時間間隔が長くて上記演奏記録動作で述べ
たようにステップ808(第14図)の処理により非動作デ
ータ「F9H」が演奏データメモリ50に記憶されている場
合には、楽音の発生制御がなされず、長時間に渡るテン
ポクロックTCLのカウント動作が実質的になされる。
次に、かかる演奏再生動作時における表示器18の表示
動作ついて説明する。上記ステップ716,719の処理後、C
PU41はステップ720にて現テンポクロック数NTMに前記時
間データDURを加算することによりかかる時間データDUR
の更新毎に現テンポクロック数NTMを累算し、ステップ7
21にて該累算した現テンポクロック数NTM及び一曲分の
テンポクロックTCL数の総和に等しい総テンポクロック
数TTMに基づく下記式3の演算の実行により表示データD
SPを設定する。なお、下記式3において、関数INT
(x)はxの整数部を意味する。
DSP=INT(NTM*100/TTM) ……式3 これにより、表示データDSPは演奏時間に対応した進行
位置を百分率で表すことになる。上記ステップ721の処
理後、CPU41はステップ722にて表示制御回路10bとの協
働により表示データDSPに対応した値が表示されるよう
に表示器18を制御し、ステップ702にて該「カウントア
ップルーチン」の実行を終了する、これにより、自動演
奏の進行状態が楽曲全体の長さに対する百分率で視覚的
に表示される。
一方、かかる自動演奏の再生中、時間が経過して、上
記ステップ703にて演奏データメモリ50から曲終了デー
タ「FFH」が読出されかつ該データが先頭データCDとし
て設定されると、ステップ704〜707における「NO」との
判定及びステップ708における「YES」との判定の基に、
ステップ723にてMIDI送信器33にオールオフデータが出
力される。これにより、上述の場合と同様に、楽音信号
の発生が強制的に停止される。上記ステップ723の処理
後、ステップ724の処理によりモードデータMODEが
「2」の設定され、ステップ725〜728の処理によりテン
ポクロックTCL、時間データDUR、ポインタPNT及び現テ
ンポクロック数NTMが「0」に初期設定されて、ステッ
プ702にて該「カウントアップルーチン」の実行が終了
される。これにより、プレイモードに設定されていた当
該自動演奏装置は、第16図に示すように、プレイ待機モ
ードに変更されるとともに、ポインタPNT等の演奏デー
タの読出しのための変数データが初期値に設定される。
また、上記のようにプレイモード(モードデータMODE
=1)において、演奏データメモリ50内の全ての演奏デ
ータが読出される前に、スタート操作子11が操作される
と、上記ステップ102,102a(第2図)の処理により「ス
タート操作子オンイベントルーチン」(第4図)が実行
される。かかる場合、モードデータMODEは「1」に設定
されているので、該「スタート操作子オンイベントルー
チン」においては、ステップ300による同ルーチンの実
行開始後のステップ301に判定処理により、プログラム
はステップ309に進められ、同ステップ309にてモードデ
ータMODEが「2」に設定されるとともに、ステップ310
にてMIDI送信器33にオールオフデータが出力されて楽音
信号の発生が停止され、ステップ305にて該ルーチンの
実行が終了される。これにより、プレイモードに設定さ
ていた当該自動演奏装置は、第16図に示すように、演奏
データの読出し途中でプレイ待機モードに変更される。
このようにスタート操作子11は上記レコードモード時と
同様に、一旦停止(ポーズ)操作子としても機能する。
上述のようにして変更されたプレイ待機モードにおい
ては、モードデータMODEは「2」に設定され、かつサブ
モードデータMODE以前から「0」に設定されているの
で、テンポ発振器31からテンポクロック信号が出力され
て上記のように「テンポクロックインタラプトプログラ
ム」(第3図)が実行されても、ステップ201,203にて
「NO」、ステップ204にて「YES」、ステップ214,215に
て「NO」と判定されて、ステップ202にて該ルーチンの
実行が終了される。これにより、該「テンポクロックイ
ンタラプトプログラム」においては、実質的な処理が何
ら行われず、楽音信号の発生は制御されない。
次に、かかるプレイ待機モード(モードデータMODE=
2)において、スタート操作子11が操作されると、上記
ステップ102,102a(第2図)の処理により、「スタート
操作子オンイベントルーチン」(第4図)が実行され
る。かかる場合、モードデータMODEは「2」に設定され
ているので、該「スタート操作子オンイベントルーチ
ン」においては、ステップ300による同ルーチンの実行
開始後のステップ301に判定処理により、プログラムは
ステップ311に進められ、同ステップ311にてモードデー
タMODEが「1」に設定されて、ステップ305にて該ルー
チンの実行が終了される。これにより、プレイ待機モー
ドに設定されていた当該自動演奏装置は、第16図に示す
ように、プレイモードに変更されて、停止していた演奏
データの読出しが再開されるようになる。
さらに、上記プレイモード(モードデータMODE=1)
又はプレイ待機モード(モードデータMODE=2)におい
て、ストップ操作子12が操作されると、上記ステップ10
3,103a(第2図)の処理により「ストップ操作子オンイ
ベントルーチン」(第5図)が実行される。かかる場
合、モードデータMODEは「1」又は「2」に設定されて
いるので、CPU41は、ステップ331,341にてそれぞれ「N
O」と判定した後、ステップ334にてモードデータMODEを
「0」に設定し、ステップ335にて表示制御回路10bとの
協働により表示状態が“−−”になるように表示器18を
制御し、ステップ336にてMIDI送信器33にオールオフデ
ータを出力してMIDI送信器33に接続した電子楽器及び音
源装置における楽音信号の発生を強制的に停止させ、ス
テップ337〜339にてポインタPNT、現テンポクロック数N
TM及びテンポクロックTCLを「0」に初期設定して、ス
テップ340にて該「ストップ操作子オンイベントルーチ
ン」の実行を終了する。このような「ストップ操作子オ
ンイベントルーチン」の実行により、プレイモード又は
プレイ待機モードに設定されていた当該自動演奏装置
は、第16図に示すように、基本状態としてのストップモ
ード(モードデータMODE=0)に変更される。
(3)早送り動作 次に、早送り動作について説明するが、該動作は早送
り操作子13の操作に応じてポインタPNTを通常の演奏再
生速度より高速で進めるもので、当該自動演奏装置が上
記ストップモード(モードデータMODE=0)、プレイモ
ード(モードデータMODE=1)及びプレイ待機モード
(モードデータMODE=2)に設定されているときにのみ
有効である。
早送り操作子13が押圧操作されると、上記「メインプ
ログラム」(第2図)を実行中のCPU41はステップ105に
て「YES」すなわち早送り操作子13のオンイベント有り
と判定し、ステップ105aにて「早送り操作子オンイベン
トルーチン」(第7図)を実行する。かかる場合、該
「早送り操作子オンイベントルーチン」はステップ400
にてその実行が開始され、ステップ401にてモードデー
タMODEが「2」以下であるか否かが判定され、同データ
MODEが「2」より大きければ同ステップ401にて「NO」
と判定されてステップ402にて該ルーチンの実行が終了
され、同データMODEが「2」以下であれば同ステップ40
1にて「YES」と判定されてステップ403以降の処理が実
行される。これにより、当該自動演奏装置がレコードモ
ード又はレコード待機モードにあれは該早送り動作が無
効とされ、ストップモード、プレイモード及びプレイ待
機モードにあるときのみ該早送りモードが有効となる。
最初に、早送り操作子13と同時にファンクション操作
子16が操作されていない場合について説明する。かかる
場合、上記ステップ401における「YES」との判定後、CP
U41はステップ403にて「NO」と判定し、ステップ404に
てサブモードデータMODEを「3」に設定する。その結
果、当該自動演奏装置のサブモードがポインタPNTを順
次早送りする早送りモードに設定される。前記ステップ
404の処理後、ステップ405にてモードデータMODE「1」
であるか否かが判定され、同データMODEが「1」であれ
ば、同ステップ405にて「YES」と判定されてステップ40
6にてテンポ発振器31におけるテンポクロック信号の周
期がT1に設定される。また、モードデータMODEが「1」
でなければ、ステップ404にて「NO」と判定されてステ
ップ407にて前記周期がT2に設定される。かかる場合、T
1は例えば10ミリ秒程度の値であるとともに、T2は例え
ば5ミリ秒程度の値であり、これらのT1,T2は通常演奏
時におけるテンポクロック信号の周期に対して数分の1
〜10数分の1程度のものすなわち自動演奏のテンポを速
めるものである。また、モードデータMODEが「1」であ
るときに比べて同データMODEが「1」以外すなわち
「0」又は「2」であるときのテンポを速くしたのは、
後述の処理により、該モードデータMODEが「1」のとき
には楽音信号の発生を許容し、それ以外のときには楽音
信号の発生を禁止するようにしたためである。
次に、CPU41はステップ408にてモードデータMODEが
「0」であるか否かを判定し、同データMODEが「0」で
あればステップ409にてモードデータMODEを「2」に変
更するとともにステップ410にて表示器18の表示状態を
“00"に制御してプログラムをステップ411に進め、同デ
ータMODEが「0」でなければプログラムを直接ステップ
411に進める。かかるステップ408〜410の処理は、第16
図に示すように、当該自動演奏装置がストップモード
(モードデータMODE=0)に設定されている状態で早送
り操作子13が操作された場合には該ストップモードをプ
レイ待機モード(モードデータMODE=2)に変更し、か
つそれ以外のプレイモード及びプレイ待機モードに設定
されている場合には前記両モードを変更しないことを意
味する。かかる処理後、CPU41はステップ411にてMIDI送
信器33にオールオフデータを出力することにより、以前
から発生中の楽音信号があれば、該楽音信号の発生を停
止させてステップ402にて該「早送り操作子オンイベン
トルーチン」の実行を終了する。
かかる状態では、テンポ発振器31は通常より高速でテ
ンポクロック信号を発生し、該信号の発生毎に上記「テ
ンポクロックインタラプトプログラム」(第3図)が実
行される。かかる「テンポクロックインタラプトプログ
ラム」の実行においては、モードデータMODEは「1」又
は「2」に設定されかつサブモードデータMODEは「3」
に設定されているので、ステップ201にて「NO」、ステ
ップ203,212にて「YES」に判定されてステップ213にて
上記「カウントアップルーチン」(第12図)が実行され
るか、またはステップ201,203にて「NO」、ステップ20
4,214にて「YES」と判定されてステップ216にて同「カ
ウントアップルーチン」が実行される。かかる「カウン
トアップルーチン」の実行により、上述の場合と同様
に、演奏データの読出し、ポインタPNTの歩進及び自動
演奏の進行位置表示がなされるが、モードデータMODE
「2」である場合には、ステップ709に判定処理により
ステップ710におけるMIDI送信器33への演奏データの出
力処理が行われないので、楽音信号の発生はない。上記
ステップ213,216(第3図)の処理後、CPU41は上述した
ステップ205の処理によりテンポクロックTCLを歩進させ
る。このような処理により、テンポクロックTCL及びポ
インタPNTは、早送り操作子13が押圧操作されている限
り、高速で進められる。
一方、前記押圧中の早送り操作子13の押圧操作が解除
されると、ステップ106、106a(第2図)の処理によ
り、「早送り操作子オフイベントルーチン」(第8図)
が実行される。かかる「早送り操作子オフイベントルー
チン」においては、ステップ450にてその実行が開始さ
れ、ステップ451にてモードデータMODEが「2」以下で
あるとの判定の基に、ステップ452にてサブモードデー
タMODEが「0」に設定され、ステップ453にてテンポ発
振器31のテンポクロック信号の周期がテンポデータTMP
すなわち上述ステップ110(第2図)の処理によりテン
ポ操作子17の操作位置に対応した値に設定されて、ステ
ップ454にて該ルーチンの実行が終了される。これによ
り、当該自動演奏装置のサブモードがノーマルに戻され
るとともに、演奏データの読出し速度も元に戻される。
なお、上記ステップ451の判定処理は上記ステップ401
(第7図)の判定処理に対応するもので、当該自動演奏
装置がレコードモード(モードデータMODE=3)及びレ
コード待機モード(モードデータMODE=4)に設定され
ている状態で早送り操作子13が操作されても、該操作を
無効にするためのものである。
次に、早送り操作子13の押圧操作と同時にファンクシ
ョン操作子16が操作された場合について説明する。かか
る場合には、早送り操作子13の操作に伴う上記と同様な
「早送り操作子オンイベントルーチン」(第7図)の上
記ステップ403にて「YES」すなわち早送り操作子13とフ
ァンクション操作子16とが同時押圧操作中であると判定
され、ステップ412にてサブモードデータMODEが「4」
に設定される。これにより、当該自動演奏装置のサブモ
ードがポインタPNTを所定量(演奏進行位置にして最大
で約10パーセント)ずつ飛び越させるジャンプモードに
設定される。前記ステップ412の処理後、CPU41は上記ス
テップ408〜410の処理と同様なステップ413〜415の処理
により、当該自動演奏装置が以前ストップモード(モー
ドデータMODE=0)に設定されていれば該ストップモー
ドをプレイ待機モード(モードデータMODE=2)に変更
し、かつそれ以外のプレイモード及びプレイ待機モード
に設定されいる場合には前記両モードを変更しないよう
にする(第16図参照)とともに、表示器18の表示状態を
“00"に制御し、ステップ416にてMIDI送信器33にオール
オフデータを出力することにより、以前から発生中の楽
音信号があれば該楽音信号の発生を停止させる。
次に、CPU41はステップ417にて現テンポクロック数NT
M及び総テンポクロック数TTMに基づく下記式4の演算の
実行によりジャンプデータPC10を設定する。なお、下記
式4において、関数INT(x)はxの整数部を意味す
る。
PC10=INT(NTM*10/TTM)*10+10・・・式4 かかる式4においては、INT(NTM*10/TTM)*10の部分
の演算により百分率で表された楽曲の進行位置を表す表
示データDSP=INT(NTM*010/TTM)の一の位が切捨てら
れるとともに、該切捨てられデータに「10」が加算され
るので、ジャンプデータPC10は現テンポクロック数NTM
に対応した進行位置から最大で10パーセント先の進行位
置、例えば進行位置が24パーセントであれば30パーセン
トの進行位置を表すことになる。
上記ステップ417の処理後、CPU41は、ステップ418に
よる「カウントアップルーチン」(第12図)の実行及び
ステップ419によるテンポクロックTCLの歩進をしなが
ら、ステップ420における判定処理DSP≧PC10に基づき、
表示データDSPがジャンプデータPC10以上になるまでス
テップ418〜420からなる循環処理を実行する。「カウン
トアップルーチン」の実行においては、上述の場合と同
様に、演奏データを読出し、ポインタPNTの歩進及び自
動演奏の進行位置表示がなされるが、サブモードデータ
MODEは「4」に設定されているので、ステップ709(第1
2図)の判定処理によりステップ710におけるMIDI送信器
33への演奏データの出力処理が行われず、この場合も楽
音信号の発生はない。
かかるテンポクロックTCLの歩進動作及び表示データD
SPの更新により、該表示データDSPがジャンプデータPC1
0以上になると、ステップ420(第7図)にて「YES」と
判定されて、ステップ402にて該「早送り操作子オンイ
ベントルーチン」の実行が終了される。これにより、ポ
インタPNTが飛び越して進められ、自動演奏の進行位置
が楽曲の長さに対応した割合で所定量だけ進められる。
かかる状態で、前記押圧中の早送り操作子13の押圧操
作が解除されると、ファンクション操作子16が操作され
ないで早送り操作子13が操作された上記場合と同様、ス
テップ450〜454からなる「早送り操作子オフイベントル
ーチン」(第8図)が実行されて、当該自動演奏装置の
サブモードがノーマルに戻されるとともに、演奏データ
の読出し速度も元に戻される。
一方、かかる早送り操作子13の押圧解除後、早送り操
作子13が再びファンクション操作子16と同時に押圧操作
されると、該押圧操作毎に上記「早送り操作子オンイベ
ントルーチン」(第7図)が再度実行され、自動演奏の
進行位置が約10パーセント進められる。そして、かかる
操作の繰り返しにより、自動演奏の進行位置は10パーセ
ントずる進められるので、所望の進行位置に変更し易く
なる。
(4)後退動作 次に、後退動作について説明するが、該動作は後退操
作子14の操作に応じてポインタPNTを通常の演奏再生速
度より高速で後退させるもので、当該自動演奏装置が上
記プレイモード(モードデータMODE=1)及びプレイ待
機モード(モードデータMODE=2)に設定されていると
きにのみ有効である。
後退操作子14が押圧操作されると。上記「メインプロ
グラム」を実行中のCPU41はステップ107にて「YES」す
なわち後退操作子14のオンイベント有りと判定し、ステ
ップ107aにて「後退操作子オンイベントルーチン」(第
9図)を実行する。かかる場合、該「後退操作子オンイ
ベントルーチン」はステップ500にてその実行が開始さ
れ、ステップ501にてモードデータMODEが「1」又は
「2」であるか否かが判定され、同データMODE「1」又
は「2」以外であれれば同ステップ501にて「NO」と判
定されてステップ502にて該ルーチンの実行が終了さ
れ、同データMODEが「1」又は「2」であれば同ステッ
プ501にて「YES」と判定されてステップ503以降の処理
が実行される。これにより、当該自動演奏装置がストッ
プモード、レコードモード又はレコード待機モードにあ
れば該後退動作が無効とされ、プレイモード及びプレイ
待機モードにあるときのみ該後退モードが有効となる。
最初に、後退操作子14と同時にファンクション操作子
16が操作されていない場合につてい説明する。かかる場
合、上記ステップ501における「YES」との判定後、CPU4
1はステップ503にて時間データDURからテンポクロックT
CLを減算した値をテンポクロックTCLとして新たに設定
し、ステップ504にて「NO」と判定してステップ505以降
の処理を実行する。かかる場合、前記ステップ503の演
算式TCL=DUR−TCLは、テンポクロックTCLが歩進中に、
現在進行中に係る時間データDURの残り分を初期値とし
て設定して、後述の「カウントダウンルーチン」(第13
図)の処理を含む「テンポクロックインタラプトプログ
ラム」(第3図)の実行により、テンポクロックTCLを
前記初期値から以前に設定されていたテンポクロックTC
L値分カウントさせて、既に進行したテンポクロックTCL
分だけ進行位置を後退させる準備としての意味を有す
る。
かかるステップ505(第9図)以降の処理において、C
PU41はステップ505にてサブモードデータMODEを「1」
に設定し、ステップ506にてテンポ発振器31におけるテ
ンポクロック信号の周期をT1(上記と同様例えば5ミリ
秒)に設定し、ステップ507にてMIDI送信器33にオール
オフデータを出力することにより楽音の発生を禁止し
て、ステップ502にて該「後退操作子オンイベントルー
チン」の実行を終了する。その結果、当該自動演奏装置
のサブモードがポインタPNTを順次後退させる後退モー
ドに設定されるとともに、該後退が高速で行われるため
にテンポ発振器31からテンポクロック信号が頻繁に発生
されるようになる。
かかるテンポクロック信号が発生されると、該テンポ
クロック信号の発生毎に上記「テンポクロックインタラ
プトプログラム」(第3図)が実行される。かかる「テ
ンポクロックインタラプトプログラム」の実行において
は、モードデータMODEは「1」又は「2」に設定されか
つサブモードデータMODEは「1」に設定されているの
で、ステップ201にて「NO」、ステップ203にて「YE
S」、ステップ212にて「NO」と判定されてステップ217
にて「カウントダウンルーチン」(第13図)が実行され
るか、またはステップ201,203にて「NO」、ステップ204
にて「YES」、ステップ214にて「NO」、ステップ215に
て「YES」と判定されてステップ218にて同「カウントダ
ウンルーチン」が実行される。かかる「カウントダウン
ルーチン」の実行においては、その実行がステップ750
にて開始され、ステップ751にてポインタPNTにより指定
され演奏データメモリ50から読出される演奏データDATA
(PNT)が曲開始データ「FOH」であるか否かが判定され
る。かかる場合、該演奏データDATA(PNT)が曲開始デ
ータ「FOH」であれば、CPU41はステップ751にて「YES」
と判定してステップ752にて該「カウントダウンルーチ
ン」の実行を終了する。この処理により、ポインタPNT
が演奏データの先頭に戻された後には同ポインタPNTの
後退が禁止される。
また、前記演奏データDATA(PNT)が曲開始データ「F
0H」でなければ、ステップ751にて「NO」と判定され、
ステップ753以降の処理が実行される。
このステップ753において、テンポクロックTCLが未だ
時間データDURに等しくなければ、CPU41はステップ753
における「NO」との判定の基に、ステップ752にて該
「カウントダウンルーチン」の実行を終了して、上記
「テンポクロックインタラプトプログラム」(第3図)
の実行に戻り、同プログラムのステップ205以降の処理
を実行する。その結果、ステップ205の処理により、テ
ンポクロックTCLが順次歩進される。このようなテンポ
クロック信号の発生毎に実行される「カウントダウンル
ーチン」の実行を含む「テンポクロックインタラプトプ
ログラム」の実行により、テンポクロックTCLが歩進し
て同クロックTCLと時間データDURとが等しくなると、CP
U41はステップ753(第13図)にて「YES」と判定し、ス
テップ754にて変数iをポインタPNT値から「1」を減算
した値PNT−1に設定してステップ755〜758からなる循
環処理により演奏データメモリ50のアドレス値を後退さ
せながら時間データ又は長時間データに関する識別デー
タを探す。この場合、ステップ755による演奏データDAT
A(i)の最上位ビットMSBが「1」であるか否かの判定
処理は第15図からも明らかなように識別データを探す判
定処理であり、ステップ756による演奏データDATA
(i)が「F2H」または「F3H」であるか否かの判定処理
は同第15図からも明らかなように識別データのうち時間
データ又は長時間データ用のものを探す判定処理であ
り、かつステップ757,758は前記アドレスを後退させる
処理である。
かかるステップ755〜758からなる循環処理中、時間デ
ータ又は長時間データに関する識別データが探し出され
ると、COU41はステップ756にて「YES」と判定し、ステ
ップ759〜763からなる循環処理により、再び演奏データ
メモリ50のアドレス値を後退させながら時間データ又は
長時間データに関する識別データを探す。かかる場合、
ステップ759の処理は上記ステップ757,758に対応し、ス
テップ760の処理はステップ755に対応し、ステップ761
の処理はステップ756に対応し、かつステップ762の処理
はステップ751に対応するとともに、ステップ763の処理
は最終的に探し出された時間データ又は長時間データよ
り楽曲の進行方向に一つ進んだアドレス(前方のアドレ
ス)を変数STとして一時的に記憶しておくようにするた
めのものである。そして、かかる循環処理により、演奏
データメモリ50のアドレス値を後退させながら時間デー
タ又は長時間データが再び探し出されると、CPU41はス
テップ61にて「YES」と判定し、ステップ765にてポイン
タPNTを前記ステップ763の処理により記憶しておいて変
数STに設定して、プログラムをステップ766以降に進め
る。これらのステップ763、765の処理により、上述した
演奏データの読出し再生中と同様に、ポインタPNTは進
行中に係る時間データDURに対応した演奏データメモリ5
0内の時間データ又は長時間データの次の演奏イベント
に関するデータの記憶アドレス値に設定される。そし
て、このような後退動作中においても、上述の演奏デー
タの読出し再生中においても、ポインタPNTは進行中に
係る時間データDURに対応した演奏データメモリ50内の
時間データ又は長時間データの次の演奏イベントに関す
るデータの記憶アドレス値に設定されているので、時間
データ又は長時間データに関する識別データを探して現
在処理中の時間データから一つ後退した時間データを探
し出すためには、上記ステップ755〜758及びステップ75
9〜763からそれぞれなる2回の循環処理が必要となる。
また、上記ステップ759〜763からなる循環処理中、読
み出された演奏データDATA(i)は曲開始データ「F
0H」になると、ステップ762にて「YES」と判定され、ス
テップ764にてテンポクロックTCL及び時間データDURが
それぞれ「0」に初期設定されてステップ752にて該
「カウントダウンルーチン」の実行が終了される。これ
により、上記ステップ751における処理と同様に、ポイ
ンタPNTが演奏データの先頭に戻された後には同ポイン
タPNTの後退が禁止されるようになる。
上記ステップ759〜763からなる循環処理により時間デ
ータ又は長時間データに関する識別コード「F2H」,「F
3H」が探し出され、かつステップ765にてポインタPNTが
設定された後、CPU41はステップ766にて前記識別コード
(演奏データDATA(i))が「F2H」であるか否かを判
定する。かかる場合、該識別データが「F2H」であれ
ば、同ステップ766における「YES」との判定の基に、ス
テップ767にて時間データDURが変数(ポインタ)i+1
により指定されて演奏データメモリ50から読出された演
奏データDATA(PNT+1)値に設定される。また、前記
識別データが「F3H」であれば、前記766における「NO」
の基に、ステップ768にて時間データDURが変数(ポイン
タ)i+1,i+2により指定されて演奏データメモリ50
から読出されて演奏データDATA(i+1),DATA(i+
1)に基づく下記式5の演算値に設定される。
DUR=DATA(i+1)*80H+DATA(i+2)・・・式
5 前記式5は、上記2式と同様、それぞ7ビットからなる
2バイトのデータを14ビットのデータに変換するもので
ある。
上記ステップ767,768の処理後、CPU41はステップ769
にてテンポクロックTCLを「0」に初期設定し、ステッ
プ770にて現テンポクロック数NTMから前記設定時間デー
タDURを減算することによりかかる時間データDURの更新
毎に現テンポクロック数NTMを更新し、ステップ771にて
該更新した現テンポクロック数NTM及び総テンポクロッ
ク数TTMに基づく下記式6の演算の実行により表示デー
タDSPを設定する。なお、下記式6は上述した式3と同
じであって、表示データDSPは演奏時間に対応した進行
位置を百分率で表すことになる。
DSP=INT(NTM*100/TTM) ・・・式6 次に、CPU41はステップ772にて表示制御回路10bとの協
働により表示データDSPに対応した値が表示されるよう
に表示器18を制御し、ステップ752にて該「カウントダ
ウンルーチン」の実行を終了する。これにより、かかる
後退動作時においても、自動演奏の進行状態が視覚的に
表示される。
このようにテンポ発振器31によるテンポクロック信号
(高速テンポクロック信号)の発生毎に実行される「カ
ウントダウンルーチン」を含む「テンポクロックインタ
ラプトプログラム」によって、ポインタPNTは、後退操
作子14が押圧操作されている限り、高速で後退する。
一方、前記押圧中の後退操作子14の押圧操作が解除さ
れると、ステップ108,108a(第2図)の処理により、
「後退操作子オフイベントルーチン」(第10図)が実行
される。かかる「後退操作子オフイベントルーチン」に
おいては、ステップ550にてその実行が開始され、CPU41
はステップ551にてモードデータMODEが「1」又は
「2」であるとの判定の基に、ステップ552にてサブモ
ードデータMODEを「0」に設定し、ステップ553にてテ
ンポ発振器31のテンポクロック信号の周期をテンポデー
タTMPすなわち上記ステップ110(第2図)の処理により
テンポ操作子17の操作位置に対応した値に設定し、ステ
ップ554にて処理中の時間データDURから現在のテンポク
ロックTCL値(後退した分に対応)を減算した値DUR−TC
Lを新たなテンポクロックTCLとして設定することにより
テンポクロックTCLを前進方向に対する進行位置を表す
値に変更して、ステップ555にて該ルーチンの実行を終
了する。これにより、当該自動演奏装置のサブモードが
ノーマルに戻されるとともに、演奏データの読出し速度
も元に戻される。なお、上記ステップ551の判定処理は
上記ステップ501(第9図)の判定処理に対応するもの
で、当該自動演奏装置がストップモード(モードデータ
MODE=0)、レコードモード(モードデータMODE=3)
及びレコード待機モード(モードデータMODE=4)に設
定されている状態で後退操作子14が操作されても、該操
作を無効にするためのものである。
次に、後退操作子14の押圧操作と同時にファンクショ
ン操作子16が操作された場合について説明する。かかる
場合には、後退操作子14の操作に伴う上記と同様な「後
退操作子オンイベントルーチン」の上記ステップ504
(第9図)にて「YES」すなわち後退操作子14とファン
クション操作子16とが同時押圧操作中であると判定さ
れ、ステップ508にてサブモードデータMODEが「2」に
設定され。これにより、当該自動演奏装置のサブモード
がポインタPNTを所定量(演奏進行位置にして最大で約1
0パーセント)ずつ飛び越して後退するジャンプ後退モ
ードに設定される。前記ステップ508の処理後、CPU41は
ステップ509にてMIDI送信器33にオールオフデータを出
力することにより、以前から発生中の楽音信号があれば
該楽音信号の発生を停止させる。
次に、CPU41はステップ510にて現テンポクロック数NT
M及び総テンポクロック数TTMに基づく下記式7の演算の
実行によりジャンプデータPC10を設定する。なお、下記
式7において、関数INX(x)はxの整数部を意味す
る。
PC10=INT{(NTM−1)*10/TTM)}*10・・・
式7 かかる式においては、現在の進行位置より一演奏データ
分後退した楽曲の進行位置を表す百分率の一の位が切捨
てられるので、ジャンプデータPC10は現テンポクロック
数NTMに対応した進行位置から最大で10パーセント後退
した進行位置を表すことになる。例えば、値INT(NTM*
100/TTM)が25パーセントならばPC10は20パーセントに
設定され、また値INT(NTM*100/TTM)が丁度30パーセ
ントならばPC10は20パーセントに設定される。上記ステ
ップ510の処理後、CPU41は、ステップ511による「カウ
ントダウンルーチン」(第13図)の実行及びステップ51
2によるテンポクロックTCLの歩進をしながら、ステップ
513における判定処理DSP≦PC10に基づき、表示データDS
PがジャンプデータPC10以下になるまでステップ511〜51
3からなる循環処理を実行する。「カウントダウンルー
チン」の実行においては、上述の場合と同様に、ポイン
タPNTの後退及び自動演奏の進行(後退)位置表示がな
される。
かかるポインタPNTの後退動作及び表示データDSPの更
新により、該表示データDSPがジャンプデータPC10以下
になると、ステップ513(第9図)にて「YES」と判定さ
れて、ステップ502にて該「後退操作子オンイベントル
ーチン」の実行が終了される。これにより、ポインタPN
Tが飛び越して後退され、自動演奏の進行位置が楽曲全
体の長さに対応した割合で所定量だけ戻される。
かかる状態で、前記押圧中の後退操作子14の押圧操作
が解除されると、ファンクション操作子16が操作されな
いで後退操作子14が操作された上記場合と同様、ステッ
プ550〜555からなる「後退操作子オフイベントルーチ
ン」(第10図)が実行されて、当該自動演奏装置のサブ
モードがノーマルに戻されるとともに、演奏データの読
出し速度も元に戻される。
一方、かかる後退操作子14の押圧解除後、後退操作子
14が再びファンクション操作子16と同時に押圧操作され
ると、該押圧操作毎に上記「後退操作子オンイベントル
ーチン」(第9図)が再度実行され、自動演奏の進行位
置が10パーセント後退される。そして、かかる操作の繰
り返しにより、自動演奏の進行位置は10パーセントずつ
後退させられるので、所望の進行位置に変更し易くな
る。
なお、上述のような後退モード又はジャンプ後退モー
ドにおいては、楽音信号の発生が制御されず、しかも第
16図に示すように、以前のプレイモード及びプレイ待機
モードが変更されることはない。
変形例 a.上記実施例におけるプレイモード時においては、上記
ステップ720(第12図)にて時間データDURを累算するこ
とにより、自動演奏の現在の進行位置を表す現テンポク
ロック数NTMを導出するようにしているが、該モード時
にテンポクロックTCLを「1」ずつ増加させていく際、
すなわちステップ205(第3図)、ステップ419(第7
図)の処理の実行時に、テンポクロックTCLの更新と併
せて現テンポクロック数NTMを順次「1」ずつ増加させ
て、同クロック数NTMを順次更新させるようにしてもよ
い。
b.上記実施例においては、自動演奏の進行割合を示す表
示データDSPを算出するために、総テンポクロック数TTM
を記憶させておくようにした(演奏記録時にワーキング
メモリ43に記憶)が、上記プレイモードの開始時におけ
る演奏データの読出し前に、演奏データメモリ50内の曲
開始データと曲終了データとの間に記憶されている全て
の時間データDURを累算して総テンポクロック数TTM数を
演奏データの読出し開始毎に算出するようにしてもよ
い。
c.上記実施例においては、表示データDSPとして現テン
ポクロック数NTMと総テンポクロック数TTMとにより自動
演奏の進行割合を計算するようにしたが、演奏データメ
モリ50のアドレスを指示するポインタPNTと曲終了デー
タを記憶している演奏データメモリ50のアドレス値とに
より自動演奏の進行位置割合を計算するようにしてもよ
い。かかる場合、プレイモードのおける演奏データの読
出し開始前に、演奏データメモリ50に記憶されている各
演奏データをサーチして曲終了データの記憶アドレス値
をワーキングメモリ43内に記憶しておき、演奏データの
読出し時にはポインタPNT値を前記記憶したアドレス値
で除算することによって前記進行位置割合を算出するよ
うにすればよい。また、演奏のデータの記録モード時の
最後に、曲終了データが記憶されたアドレス値を記憶す
るとともに保存しておくようにし、該保持されたアドレ
ス値を前記進行位置割合の算出に利用するようにしても
よい。その結果、上記実施例より不正確であるが、現テ
ンポクロック数NTMの累算の代わりに演奏データの読出
しに使うポインタPNTを兼用できるので、当該自動演奏
装置が簡単に構成される。
d.上記実施例においては、自動演奏の進行位置割合を表
示器18にて数字表示するようにしたが、操作パネル10上
に一列若しくは複数列に配設したランプ、円形状に配設
したランプ又はこれらのランプに換えて帯状の表示器を
設け、該ランプ又は表示器の点灯量、色別の表示量で前
記進行位置割合を連続的に表示するようにしてもよい。
e.上記実施例においては、早送りモード及び後退モード
時におけるテンポ発振器31の周期は常に一定(5ミリ秒
又は10ミリ秒)になるようにしたが、前記周期をテンポ
操作子17により設定されるテンポデータTMP値に応じて
設定するようにしてもよい。
f.上記実施例においては、当該自動演奏装置のテンポを
変更する場合(テンポ操作子17によるテンポ変更、早送
りモード又は後退モード時におけるテンポ変更)、テン
ポデータTMP及びテンポ発振器31の周期を変更するよう
にしたが、時間データDURに計数を乗算する等の方法に
より該データDUR値を変更するようにしてもよい。
g.上記実施例においては、一曲分の演奏データのみを演
奏データメモリ50に記憶させるようにしたが、該メモリ
50を分割して複数曲分の演奏データを同メモリ50内に記
憶させるようにしてもよい。また、当該自動演奏装置に
時期ディスク、磁気テープ、光ディスク等の外部記憶装
置を設けるようにして、演奏データメモリ50との演奏デ
ータの授受を行わせるようにしてもよい。かかる場合、
総テンポクロック数TTMは前記演奏データとともに外部
記憶装置に記憶させるようにする必要がある。また、外
部記憶装置を演奏データメモリ50の代わりに用いてもよ
い。
【図面の簡単な説明】
第1図は本発明の一実施例に係る自動演奏装置の概略ブ
ロック図、第2図乃至第14図は第1図のマイクロコンピ
ュータにて実行されるプログラムの一例に対応したフロ
ーチャート、第15図は第1図の演奏データメモリに記憶
される演奏データのデータフォーマット図、及び第16図
は第1図の自動演奏装置の状態遷移図である。 符号の説明 10……操作パネル、10a……スイッチ群、10b……表示制
御回路、11……スタート操作子、12……ストップ操作
子、13……早送り操作子、14……後退操作子、15……記
録操作子、16……ファンクション操作子、17……テンポ
操作子、18……表示器、31……テンポ発振器、32……MI
DI受信器、33……MIDI送信器、40……マイクロコンピュ
ータ、50……演奏データメモリ。

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】楽器演奏に係る複数の演奏データを楽曲の
    進行に従って記憶する演奏データ記憶手段と、所定のテ
    ンポで前記複数の演奏データを順次読出す読出し手段と
    を備えた自動演奏装置において、 前記読出し手段による演奏データの読出し時における楽
    曲の進行位置を楽曲の進行に従って計測する進行位置計
    測手段と、 前記演奏データ記憶手段に記憶されている演奏データに
    関する楽曲全体の長さに対する前記計測した楽曲の進行
    位置の割合を計算する割合計算手段と、 前記計算した割合を表示する表示手段と を設けたことを特徴とする自動演奏装置。
  2. 【請求項2】楽音の発生を制御する演奏イベントデータ
    及び該各演奏イベントデータの読出し間隔を表す相対時
    間データからなる複数の演奏データを楽曲の進行に従っ
    て記憶する演奏データ記憶手段と、楽曲の進行速度に対
    応したレートでテンポクロック信号を発生するテンポク
    ロック信号発生手段と、該テンポクロック信号を計数す
    ることにより前記相対時間データに対応した時間間隔で
    前記演奏イベントデータを順次読出す読出し手段とを備
    えた自動演奏装置において、 前記読出し手段による演奏イベントデータの読出し時に
    おける経過時間を前記テンポクロック数に対応させて計
    測する経過時間計測手段と、 前記演奏データ記憶手段に記憶されている全ての演奏イ
    ベントデータの読出しに必要であって前記テンポクロッ
    ク数に対応した全体時間に対する前記計測した経過時間
    の割合を計算する割合計算手段と、 前記計算した割合を表示する表示手段と を設けたことを特徴とする自動演奏装置。
  3. 【請求項3】上記経過時間計測手段を、 上記読出し手段による演奏イベントデータの読出し開始
    時から前記テンポクロック信号を計数する計数手段で構
    成した上記請求項2に記載の自動演奏装置。
  4. 【請求項4】上記経過時間計測手段を、 上記読出し手段による演奏イベントデータの読出し開始
    時から前記相対時間データを累算する累算手段で構成し
    た上記請求項2に記載の自動演奏装置。
  5. 【請求項5】上記割合計算手段を、 上記全体時間を表す全体時間データを記憶する全体時間
    データ記憶手段と、 前記全体時間データ記憶手段に記憶されている全体時間
    データにより表された全体時間に対する上記経過時間計
    測手段により計測された経過時間の割合を演算する演算
    手段と により構成した上記請求項2に記載の自動演奏装置。
  6. 【請求項6】上記割合計算手段を、 上記読出し手段による演奏イベントデータの読出し開始
    前に演奏データ記憶手段に記憶されている全ての相対時
    間データを累算して上記全体時間を算出する累算手段
    と、 前記累算手段により算出された全体時間に対する上記経
    過時間計測手段により計測された経過時間の割合を演算
    する演算手段と により構成した上記請求項2に記載の自動演奏装置。
  7. 【請求項7】楽器演奏に係る複数の演奏データを楽曲の
    進行に従って複数のアドレスにそれぞれ記憶する演奏デ
    ータ記憶手段と、所定のテンポで歩進するアドレス信号
    を発生し該アドレス信号により指定されるアドレスに記
    憶されている演奏データを順次読出す読出し手段とを備
    えた自動演奏装置において、 前記演奏データ記憶手段における演奏データの最終記憶
    アドレス値に対する前記読出し手段による演奏データの
    読出し時におけるアドレス値の割合を計算する割合計算
    手段と、 前記計算した割合を表示する表示手段と を設けたことを特徴とする自動演奏装置。
JP63005377A 1988-01-13 1988-01-13 自動演奏装置 Expired - Lifetime JPH0827625B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP63005377A JPH0827625B2 (ja) 1988-01-13 1988-01-13 自動演奏装置
KR1019890000289A KR940002435B1 (ko) 1988-01-13 1989-01-13 자동 연주 장치
US07/869,858 US5233521A (en) 1988-01-13 1992-04-16 Automatic performance apparatus with display showing progress of tune

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63005377A JPH0827625B2 (ja) 1988-01-13 1988-01-13 自動演奏装置

Publications (2)

Publication Number Publication Date
JPH01180595A JPH01180595A (ja) 1989-07-18
JPH0827625B2 true JPH0827625B2 (ja) 1996-03-21

Family

ID=11609483

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63005377A Expired - Lifetime JPH0827625B2 (ja) 1988-01-13 1988-01-13 自動演奏装置

Country Status (1)

Country Link
JP (1) JPH0827625B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57176093A (en) * 1981-04-22 1982-10-29 Roland Kk Arithmetical operation device for performance time
JPS5891798U (ja) * 1981-12-15 1983-06-21 カシオ計算機株式会社 電子楽器
JPS58222478A (ja) * 1982-06-17 1983-12-24 Matsushita Electric Ind Co Ltd 高密度記録再生装置の表示装置
JPS6255961U (ja) * 1985-09-26 1987-04-07

Also Published As

Publication number Publication date
JPH01180595A (ja) 1989-07-18

Similar Documents

Publication Publication Date Title
US4694724A (en) Synchronizing signal generator for musical instrument
US5233521A (en) Automatic performance apparatus with display showing progress of tune
JPH0827628B2 (ja) 自動演奏装置
JP2595800B2 (ja) 自動演奏装置
JPH0827626B2 (ja) 自動演奏装置
JPH0766265B2 (ja) 演奏情報処理装置の割込処理制御部
JPH01180595A (ja) 自動演奏装置
KR940002435B1 (ko) 자동 연주 장치
JP3195111B2 (ja) 自動演奏装置
JPH07109553B2 (ja) 自動演奏装置
JP4350198B2 (ja) 楽音演奏装置
JPH03105396A (ja) 自動演奏装置
JP2626440B2 (ja) 自動伴奏装置
JP3873782B2 (ja) 自動演奏装置、自動演奏プログラムおよび自動演奏データのデータ構造
CN117831489A (zh) 自动演奏装置以及计算机可读取的记录介质
JP2828119B2 (ja) 自動伴奏装置
JPH0375875B2 (ja)
JP3303754B2 (ja) 楽音制御データ生成装置、楽音制御データを生成するプログラムを記録した記録媒体及び楽音制御データ生成方法
JPH0480795A (ja) 自動演奏装置
JP3404818B2 (ja) 自動演奏装置
JPH0374840B2 (ja)
JPH07101348B2 (ja) 自動演奏装置
JP2596111B2 (ja) 自動演奏装置
JPH06289875A (ja) 自動演奏装置
JP2720794B2 (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

EXPY Cancellation because of completion of term