JP3219917B2 - 自動演奏装置 - Google Patents

自動演奏装置

Info

Publication number
JP3219917B2
JP3219917B2 JP27898893A JP27898893A JP3219917B2 JP 3219917 B2 JP3219917 B2 JP 3219917B2 JP 27898893 A JP27898893 A JP 27898893A JP 27898893 A JP27898893 A JP 27898893A JP 3219917 B2 JP3219917 B2 JP 3219917B2
Authority
JP
Japan
Prior art keywords
repeat
marker
point
setting
performance data
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
JP27898893A
Other languages
English (en)
Other versions
JPH07110681A (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.)
Roland Corp
Original Assignee
Roland 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 Roland Corp filed Critical Roland Corp
Priority to JP27898893A priority Critical patent/JP3219917B2/ja
Publication of JPH07110681A publication Critical patent/JPH07110681A/ja
Application granted granted Critical
Publication of JP3219917B2 publication Critical patent/JP3219917B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Auxiliary Devices For Music (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、自動演奏装置に関し、
さらに詳細には、演奏データ中の任意の区間を繰り返し
演奏するリピート機能を備えた自動演奏装置に関する。
【0002】
【従来の技術】一般に自動演奏装置においては、演奏デ
ータ中の任意の位置を指定することができ、こうして指
定された任意の位置を示す指標を「マーカー」と称して
いる。
【0003】こうしたマーカーを利用して、例えば、両
端にマーカーを設定した演奏データ中の任意の区間を、
繰り返し自動演奏するリピート機能などを実現すること
ができる。
【0004】即ち、従来の自動演奏装置は、自動演奏装
置に演奏データとして記憶された楽曲の中のある区間
(ブロック)をマーカーによって指定し、当該区間を繰
り返し演奏するリピート機能(以下、このようにブロッ
クを繰り返し演奏するリピート機能を、ブロック・リピ
ート機能と称する。)を備えている。
【0005】こうしたブロック・リピート機能を備えた
自動演奏装置にあっては、操作者が、ブロック・リピー
トの開始点と折り返し点との位置を示す二つのマーカー
(以下、ブロック・リピートの開始点/折り返し点の位
置を示すマーカーを、「リピート・ポイント」と称す
る。)の位置を、マーカー設定指示操作子により演奏デ
ータ中の任意の位置において指定し、マーカー設定装置
によってマーカー設定指示操作子により指定された位置
にマーカーを設定していた(以下、リピート・ポイント
の設定を指示するマーカー設定指示操作子を、「リピー
ト・ポイント設定指示スイッチ」と称し、リピート・ポ
イント設定指示スイッチにより指定された位置にリピー
ト・ポイントを設定するマーカー設定装置を、「リピー
ト・ポイント設定装置」と称す。)を操作することによ
り設定していた。
【0006】即ち、操作者は、リピート・ポイント設定
指示スイッチを操作することにより、リピート・ポイン
ト設定装置により、図9に示すように、ブロック・リピ
ートの開始点のリピート・ポイントたるリピート・ポイ
ントAと、ブロック・リピートの折り返し点のリピート
・ポイントたるリピート・ポイントBとを設定してい
た。
【0007】なお、以降の説明においても、ブロック・
リピートの開始点のリピート・ポイントを「リピート・
ポイントA」により示し、ブロック・リピートの折り返
し点のリピート・ポイントを「リピート・ポイントB」
により示すこととする。
【0008】
【発明が解決しようとする課題】上記したように従来の
自動演奏装置にあっては、操作者が演奏データ中のある
二点間のブロック・リピートを行う場合に、予めブロッ
ク・リピートの開始点となるリピート・ポイントと折り
返し点となるリピート・ポイントとを、合わせて設定し
なければならなかった。
【0009】そのために、自動演奏装置を利用して楽器
の演奏練習を行っており、たった今演奏に失敗した部分
を繰り返し演奏したいという場合などでも、一度演奏を
中止し、今演奏した楽曲の演奏データを遡ってリピート
の開始点を検索して、リピート・ポイントとして設定す
る必要があり、その操作が手間のかかる煩雑なものとな
っていたという問題点があった。
【0010】本発明は、従来の技術の有するこのような
問題点に鑑みてなされたものであり、その目的とすると
ころは、ブロック・リピートを行う場合において、リピ
ートの開始点と折り返し点との双方のリピート・ポイン
トを合わせて設定する必要性を排除して、簡潔な操作に
よりブロック・リピートを行うことができるようにした
自動演奏装置を提供しようとするものである。
【0011】
【課題を解決するための手段】上記目的を達成するため
に、本発明による自動演奏装置は、演奏データ中の任意
の位置にそれぞれ設定された二つのマーカー間を繰り返
し演奏可能な自動演奏装置において、演奏データ中の任
意の位置に第一のマーカーの設定を指示するマーカー設
定指示手段と、上記マーカー設定指示手段による設定の
指示に基づいて、第一のマーカーを設定する第一のマー
カー設定手段と、上記第一のマーカー設定手段により第
一のマーカーが設定されたときに、上記演奏データ中の
上記第一のマーカーの設定位置とは離隔した位置に第二
のマーカーを設定する第二のマーカー設定手段とを有す
るようにしたものである。
【0012】
【作用】ブロック・リピートを行う際に、マーカー設定
指示手段により演奏データ中の任意の位置における第一
のマーカーの設定を指示し、当該第一のマーカーが第一
のマーカー設定手段により演奏データ中に設定される
と、第二のマーカー設定手段が、第一のマーカーの設定
位置とは離隔した位置に第二のマーカーを設定すること
になる。
【0013】従って、ブロック・リピートの開始点と折
り返し点とのリピート・ポイントをそれぞれ指示するの
ではなく、例えば、ブロック・リピートの折り返し点を
リピート・ポイントとして指示すると、ブロック・リピ
ートの折り返し点がリピート・ポイントとして設定さ
れ、その位置から遡った位置が、ブロック・リピートの
開始点として自動的に設定される。
【0014】即ち、操作者はブロック・リピートの折り
返し点をリピート・ポイントとして指示するだけで、そ
こから時間的に遡った点をブロック・リピートの開始点
として設定することができる。
【0015】つまり、図9において、ブロック・リピー
トの折り返し点としてリピート・ポイントBを設定すれ
ば、その位置から遡った位置に、ブロック・リピートの
開始点としてリピート・ポイントAが自動的に設定され
る。
【0016】
【実施例】以下、添付の図面に基づいて、本発明による
自動演奏装置の実施例を詳細に説明する。
【0017】図1には、本発明の一実施例による自動演
奏装置のブロック構成図が示されている。
【0018】この自動演奏装置は、その全体の動作の制
御を中央処理装置(CPU)10を用いて制御するよう
に構成されている。このCPU10には、バス(BU
S)12を介して、全体の動作の制御のための所定のプ
ログラムなどが格納されたリード・オンリ・メモリ(R
OM)14と、CPU10によるプログラムの実行に必
要な後述する各種レジスタやフラグなどが設定されたワ
ーキング・エリアとしてのランダム・アクセス・メモリ
(RAM)16と、後述する本発明の実施に関連する各
種操作子を備えた操作子部18と、操作子部18による
各種操作子の操作状態や楽曲の演奏データの小節番号を
表示する表示部20と、本自動演奏装置によって自動演
奏される楽曲の演奏データが記憶されている記録媒体た
るメモリ・カード(図示せず)が挿入され、CPU10
の制御によって当該メモリ・カードに記憶されている演
奏データを読み出し、当該演奏データを本自動演奏装置
による自動演奏のための演奏データとしてRAM16の
所定領域に格納するためのカード・スロット22と、C
PU10の制御によって再生されたRAM16に格納さ
れた演奏データを、MIDI出力端子を介して外部の音
源などのMIDI機器へ出力するためのMIDI出力装
置24とが接続されている。
【0019】即ち、この自動演奏装置においては、メモ
リ・カードに記憶された演奏データが、CPU10によ
ってRAM16に格納されることになり、さらにこうし
てRAM16に格納された演奏データがCPU10によ
って再生される。そして、CPU10によって再生され
た演奏データが、MIDI出力装置24によって外部の
音源などへ出力されて、空間に楽音が放音されることに
なり、メモリ・カードに記憶された演奏データに基づく
演奏が再現される。
【0020】図2には、上記した操作子部18と、表示
部20と、カード・スロット22を備えた操作パネルが
示されている。
【0021】操作子部18に設けられた操作子として
は、PLAY(プレイ)スイッチ18aと、STOP
(ストップ)スイッチ18bと、REPEAT(リピー
ト)スイッチ18cと、SET(セット)スイッチ18
dと、リピート区間設定指示スイッチ18eと、リピー
ト区間としての小節数などのを入力行うテン・キー部1
8fと、テン・キー部18fの入力を確定するENTE
R(エンター)スイッチ18gとが設定されている。
【0022】PLAYスイッチ18aは、自動演奏の開
始を指示するとともに、自動演奏中に操作された場合に
は、当該自動演奏の一時停止(PAUSE)を指示する
操作子である。そして、一時停止中にさらにPLAYス
イッチ18aを操作すると、自動演奏が再開されること
になる。
【0023】STOPスイッチ18bは、自動演奏の停
止を指示する操作子である。
【0024】REPEATスイッチ18cは、ブロック
・リピートを行うことを指示する操作子である。このR
EPEATスイッチ18cを操作することにより、ブロ
ック・リピートを行うか否かを任意に選択できる。そし
て、ブロック・リピートの設定中に再度REPEATス
イッチ18cを操作すると、ブロック・リピートの設定
が解除される。
【0025】SETスイッチ18dは、ブロック・リピ
ートの折り返し点たるリピート・ポイントBの設定を指
示する操作子である。SETスイッチ18dを操作する
ことにより、演奏データ中の任意の位置において、16
分音符の分解能をもってリピート・ポイントBの設定を
指示できる。
【0026】リピート区間設定指示スイッチ18eは、
ブロック・リピートのリピート区間の設定を指示する操
作子である。
【0027】テン・キー部18fは、リピート区間とし
ての小節数などの数値の入力を行い、リピート区間小節
数などを指定する操作子である。
【0028】ENTERスイッチ18gは、テン・キー
部18fにより指定された数値の入力を確定する操作子
である。
【0029】表示部20は、小節番号を表示するもので
あって、本実施例においては、LCD(Liquid
Cristal Diplay:液晶ディスプレイ)に
よって構成されている。
【0030】また、図3には、メモリ・カードに記憶さ
れた演奏データのデータ形式を示すためのデータ例が表
されている。このデータ形式(16進数により記載され
ている)においては、「FE」に続く1バイトにより待
ち時間を示すこととし(FExx:xxが時間とな
る)、「FF」により演奏データの終了を示すものであ
り、演奏データには必ず「FF」が記録されている。そ
して、上記以外のデータは、MIDIデータであるもの
として、そのままMIDI出力装置24を介してMID
I出力端子に出力される。
【0031】なお、本実施例においては、理解を容易に
するために、最小分解能を「16分音符」単位とすると
ともに、テンポ(1分間に演奏する4分音符の個数)を
「120」とし、拍子は「4/4」で固定としている。
【0032】ところで、図3に示されたデータ例は、
「90 3C 40」により「C3」の音高のノート・
オンを示し、「FE 04」により当該ノート・オンの
時間として4分音符1個分の時間を示し、「80 3C
40」により「C3」の音高のノート・オフを示し、
「FF」により演奏データの終了を示している。
【0033】以上の構成において、フローチャートを参
照しながら、上記した本発明による自動演奏装置の作用
および動作について説明する。なお、この自動演奏装置
は、通常は図4および図5に示すメイン・ルーチンを高
速で繰り返し実行しているが、メイン・ルーチン内にお
いてクロック割り込みの発生を指示されると、後述する
所定時間毎にクロック割り込みがかかり、図7および図
8に示すクロック割り込みルーチンが実行されることに
なる。そして、クロック割り込みルーチンの実行を終了
すると、再びメイン・ルーチンを繰り返し実行し続け
る。また、メイン・ルーチン内において、クロック割り
込みの停止を指示されると、クロック割り込みが行われ
なくなる。
【0034】ここにおいて、クロック割り込みがかかる
所定時間は、本実施例においては、テンポを「120」
とし、最小分解能が16分音符とされているので、
「0.125秒」となるものである。従って、本実施例
においては、「0.125秒」毎にクロック割り込みが
かかることになる。
【0035】まず、以下の説明において使用されるRA
M16に設定されたレジスタやフラグに関して説明する
こととする。なお、以降の説明においては、各レジスタ
の内容(データ)などは、特に断らない限り、同一のラ
ベル名で表すものとする。
【0036】(1)Pflag 演奏の状態を表すフラグであり、演奏中でないときには
「0」がセットされ、演奏中のときには「1」がセット
される。
【0037】(2)Brep ブロック・リピートの状態を表すフラグであり、ブロッ
ク・リピート中でないときには「0」がセットされ、ブ
ロック・リピート中のときには「1」がセットされる。
【0038】(3)ABflag リピート・ポイントの設定状態を表すフラグであり、リ
ピート・ポイントAおよびリピート・ポイントBが設定
されていないときには「0」がセットされ、リピート・
ポイントAおよびリピート・ポイントBが設定されてい
るときには「1」がセットされる。
【0039】(4)Mnumb 小節番号を記憶するレジスタである。
【0040】(5)Mcnt クロックから小節番号を求めるためのカウンタである。
【0041】(6)Anumb リピート・ポイントAの小節番号を記憶するレジスタで
ある。
【0042】(7)Aaddr リピート・ポイントA以後に初めて現れる発音情報のア
ドレスを記憶するレジスタである。
【0043】(8)Atime リピート・ポイントA以後に初めて発音情報が現れるま
での待ち時間を記憶するレジスタである。
【0044】(9)Atotal リピート・ポイントAの曲頭からの総クロック数を記憶
するレジスタである。
【0045】(10)Bnumb リピート・ポイントBの小節番号を記憶するレジスタで
ある。
【0046】(11)Btotal リピート・ポイントBの曲頭からの総クロック数を記憶
するレジスタである。
【0047】(12)ABintv リピート・ポイントAとリピート・ポイントBとの間の
小節数を記憶するレジスタである。
【0048】(13)Wait 待ち時間のカウンタである。
【0049】(14)Song Data 演奏データが格納されている配列を記憶するレジスタで
ある。
【0050】(15)addr 演奏データのアドレスを記憶するレジスタである。
【0051】(16)Total 演奏データの先頭から現在処理中の演奏データまでの総
クロック数を記憶するレジスタである。
【0052】次に、図4および図5を参照しながらメイ
ン・ルーチンを説明するが、本自動演奏装置の電源が投
入されると、まずステップS402において、CPU1
0はRAM16に設定された上記したレジスタの初期化
を行う。
【0053】図6には、ステップS402で実行される
レジスタの初期化ルーチンが示されており、ステップS
602においてPflgに「0」をセットし、ステップ
S604においてBrepに「0」をセットし、ステッ
プS606においてABflagに「0」をセットし、
ステップS608においてMnumbに「1」をセット
し、ステップS610においてWaitに「1」をセッ
トし、ステップS612においてMcntに「0」をセ
ットし、ステップS614においてABintvに
「2」をセットし、ステップS616においてaddr
に「0」をセットする。
【0054】上記した処理を終了すると、ステップS6
18へ進み、演奏データを記憶したメモリ・カードが、
カード・スロット22に挿入されているか否かを判断す
る。
【0055】ステップS618の判断結果が否定
(N)、即ち、カード・スロット22にメモリ・カード
が入っていない場合には、次の処理に進むことなく、ス
テップS616の判断処理を繰り返す。
【0056】そして、ステップS618の判断結果が肯
定(Y)、即ち、カード・スロット22にメモリ・カー
ドが入っている場合には、ステップS620へ進み、M
numbを表示部20に表示する。従って、レジスタの
初期化の直後においては、メイン・ルーチンの処理対象
が、小節番号「1」の演奏データ(第1小節の演奏デー
タ)であることが表示される。そして、このステップS
620の処理を終了すると、レジスタの初期化ルーチン
を終了して、メイン・ルーチンへリターンすることにな
る。
【0057】上記したように、本実施例における初期化
ルーチンでは、ABintvに「2」がセットされるこ
とになるものであり、初期状態ではブロック・リピート
のリピート区間を2小節としている。
【0058】さらに、メイン・ルーチンにおいては、図
6に示したレジスタの初期化ルーチンを終了すると、ス
テップS404へ進み、PLAYスイッチ18aが押さ
れたか否かを判断する。この判断結果が肯定、即ち、P
LAYスイッチ18aが押された場合には、ステップS
406へ進み、Pflagが「0」にセットされている
か否かを判断する。
【0059】ステップS406の判断結果が肯定、即
ち、「Pflag=0:演奏中ではない」場合には、ス
テップS408以降へ進み、演奏を開始させることにな
る。
【0060】まず、ステップS408においては、クロ
ック割り込みの発生を指示してクロック割り込みルーチ
ンを起動させ、後述するようにクロック割り込みルーチ
ンにおいて演奏データの再生を行わせるようにする。そ
れから、ステップS410へ進み、Pflgに「1」を
セットし、演奏中であることを示した後に、ステップS
420へ進むことになる。
【0061】一方、ステップS406の判断結果が否
定、即ち、「Pflag=1:演奏中である」場合に
は、ステップS412以降へ進み、一時停止(PAUS
E)処理を行うことになる。
【0062】まず、ステップS412においては、クロ
ック割り込みの発生を停止し、クロック割り込みルーチ
ンの実行を禁止する。これにより、クロック割り込みル
ーチンにおける演奏データの再生が行われなくなる。
【0063】ステップS412の処理を終了すると、ス
テップS414へ進み、現在発音中である全ての楽音
を、直ちに消去する指示を発生し、MIDI出力装置2
4によって外部の音源などに対して出力する。
【0064】ステップS414の処理を終了すると、ス
テップS416へ進み、Brepに「1」がセットされ
ているか否かを判断する。
【0065】ステップS416の判断結果が否定、即
ち、「Brep=0」でありブロック・リピート中でな
いならば、そのままステップS420へ進む。
【0066】一方、ステップS416の判断結果が肯
定、即ち、「Brep=1」でありブロック・リピート
中であるならば、ステップS418へ進み、演奏データ
の読み出しの開始が、自動的にリピート・ポイントAに
戻るようにする処理を行った後に、ステップS420へ
進む。
【0067】以上、説明したように、ステップS402
乃至ステップS418においては、PLAYスイッチ1
8aが押されたか否かを検出し、PLAYスイッチ18
aが押された場合において、演奏停止中(Pflag=
0)であるならば、クロック割り込みを発生させて演奏
を開始する。一方、演奏中(Pflag=1)であるな
らば、クロック割り込みを停止し、発音中の楽音を全て
消音し、一時停止処理を行うことになる。
【0068】そして、上記したステップS410あるい
はステップS418の処理を終了したとき、またステッ
プS404の判断結果が否定、即ち、PLAYスイッチ
18aが押されていないときには、ステップS420へ
進む。
【0069】そして、ステップS420では、STOP
スイッチ18bが押されたか否かを判断する。
【0070】ステップS420の判断結果が肯定、即
ち、STOPスイッチ18bが押されて、演奏の停止が
指示されたならば、ステップS422へ進む。
【0071】ステップS422では、クロック割り込み
の発生を停止し、クロック割り込みルーチンの実行を禁
止する。これにより、クロック割り込みルーチンにおけ
る演奏データの再生が行われなくなる。
【0072】ステップS422の処理を終了すると、ス
テップS424へ進み、現在発音中である全ての楽音
を、直ちに消去する指示を発生し、MIDI出力装置2
4によって外部の音源などに対して出力する。そして、
ステップS424の処理を終了すると、ステップS40
2へジャンプする。
【0073】なお、カード・スロット22からメモリ・
カードが抜かれたときも、上記したSTOPスイッチ1
8bが押されたときの処理と同様な処理を行う。
【0074】一方、ステップS420の判断結果が否
定、即ち、STOPスイッチ18bが押されていないな
らば、ステップS426へ進む。
【0075】即ち、ステップS420乃至ステップS4
24においては、STOPスイッチ18bが押されたか
否かを検出し、押された場合には、クロック割り込みを
停止し、発音中の楽音を全て消音して演奏を停止する。
【0076】ステップS426では、リピート区間設定
指示スイッチ18eが押されたか否かを判断する。
【0077】ステップS426の判断結果が肯定、即
ち、リピート区間設定指示スイッチ18eが押された場
合には、ステップS428へ進み、リピート区間の長さ
を設定する。
【0078】このリピート区間の長さの設定にあたって
は、まずテン・キー部18fの各数値キーを操作して、
リピート区間とする小節数の数値を入力する。その後に
ENTERスイッチ18gを操作して、テン・キー部1
8fにより入力された数値を確定して、ABintvに
セットする。
【0079】そして、ステップS428の処理を終了し
た場合、あるいはステップS426の判断結果が否定、
即ち、リピート区間設定指示スイッチ18eが押されな
かった場合には、ステップS430へ進むことになる。
【0080】ステップS430では、REPEATスイ
ッチ18cが押されたか否かを判断する。
【0081】ステップS430の判断結果が肯定、即
ち、REPEATスイッチ18cが押された場合には、
ステップS432へ進み、Brepが「0」にセットさ
れているか否かを判断する。
【0082】ステップS432の判断結果が否定、即
ち、「Brep=1」であってブロック・リピート中で
あるならば、ステップS434へ進み、Brepに
「0」をセットして、ブロック・リピート中でないこと
を示す。従って、ステップS434の処理が行われた以
降においてBrepが読み出されるときには、「Bre
p=0」となる。
【0083】つまり、上記の場合には、ブロック・リピ
ート中に再度REPEATスイッチ18cが操作された
ことになるので、設定されていたブロック・リピートを
解除することになる。
【0084】一方、ステップS432の判断結果が肯
定、即ち、「Brep=0」であり、ブロック・リピー
ト中でないならば、ステップS436へ進み、ABfl
agに「1」がセットされているか否かを判断する。
【0085】ステップS436の判断結果が肯定、即
ち、「ABflag=1」であり、リピート・ポイント
Aおよびリピート・ポイントBが設定されている場合に
は、ステップS438へ進む。
【0086】ステップS438では、Brepに「1」
をセットしてブロック・リピート中であることを示す。
【0087】即ち、上記したステップS430乃至ステ
ップS438の処理においては、REPEATスイッチ
18cが押された否かを検出し、REPEATスイッチ
18cが押された場合において、ブロック・リピート中
(Brep=1)であるならば、ブロック・リピートを
解除する(Brep=0)。これとは逆に、ブロック・
リピート中でない場合においては、リピート・ポイント
が設定されているか否かを検出し、リピート・ポイント
が設定されていれば(ABflag=1)ブロック・リ
ピート状態(Brep=1)とする。
【0088】また、ステップS430の判断結果が否
定、即ち、REPEATスイッチ18cが押されなかっ
た場合、ステップS434の処理を終了した場合、ステ
ップS438の処理を終了した場合あるいはステップS
436の判断結果が否定、即ち、「ABflag=0」
である場合には、ステップS440へ進む。
【0089】ステップS440では、SETスイッチ1
8dが押されたか否かを判断する。そして、この判断結
果が肯定、即ち、SETスイッチ18dが押された場合
には、ステップS442へ進み、リピート・ポイントB
(ブロック・リピートの折り返し点)を設定する。
【0090】即ち、ステップS442では、曲頭からS
ETスイッチ18dが押されたときの小節の終端(小節
線)までの総クロック数をBtotalにセットして、
その位置をリピート・ポイントBとすることにより、リ
ピート・ポイントBを設定する。
【0091】ステップS442の処理を終了すると、ス
テップS444へ進み、リピート・ポイントA(ブロッ
ク・リピートの開始点)を設定する。
【0092】即ち、ステップS444では、リピート・
ポイントBの位置からABintvで指示される小節数
(本実施例においては、2小節である。)だけ戻った位
置をリピート・ポイントAとすることにより、リピート
・ポイントAを設定する。
【0093】ただし、曲頭からリピート・ポイントBま
での小節数が、ABintvで指示される小節数に満た
ない場合には、曲の先頭にリピート・ポイントAを設定
するように制御する。
【0094】さらに、リピート・ポイントAの小節番号
をAnumbにセットし、曲頭からリピート・ポイント
Aまでの総クロック数をAtotalにセットし、リピ
ート・ポイントA以後初めて現れる発音情報までの待ち
時間(クロック数)をAtimeにセットし、当該初め
て現れた発音情報のアドレスをAaddrにそれぞれセ
ットしてステップS444の処理を終了し、ステップS
446へ進む。
【0095】ステップS446では、ABflagに
「1」をセットして、リピート・ポイントAおよびリピ
ート・ポイントBが設定されたことを示してから、ステ
ップS404へ進み上記した処理を繰り返す。
【0096】また、ステップS440の判断結果が否
定、即ち、SETスイッチ18dが押されなかった場合
にもステップS404へ進み、上記した処理を繰り返す
ことになる。
【0097】次に、上記したように「0.125秒」毎
のクロック割り込みにより実行されるクロック割り込み
ルーチンを説明する。
【0098】このクロック割り込みルーチンにおいて
は、まずステップS702において、クロックから小節
番号を求めるためのカウンタMcntに「1」を加算し
て、Mcntの値を更新する。従って、レジスタの初期
化ルーチンにおいて、「Mcnt=0」に設定されてい
るため、初期化直後においてはステップS702におい
て「Mcnt=1」にセットされることになる。
【0099】ステップS702の処理を終了すると、ス
テップS704へ進み、Totalに「1」加算して、
Totalの値を更新する。
【0100】ステップS704の処理を終了すると、ス
テップS706へ進み、Mcntが「17」であるか否
か判断する。
【0101】ステップS706の判断結果が肯定、即
ち、「Mcnt=17」である場合には、ステップS7
08へ進み、Mnumbに「1」を加算してMnumb
の値を更新する。
【0102】即ち、16クロック(Mcnt=16)で
あるときに、1小節分のクロックのカウントが終了した
ことになるので、「Mcnt=17」であるということ
は、1小節分のカウントが終了し、次の1小節目の先頭
クロックをカウントしたことになる。従って、Mnum
bに「1」を加算して、次の小節の小節番号を示すこと
になる。
【0103】ステップS708の処理を終了すると、ス
テップS710へ進み、現在処理中の小節の小節番号と
して、Mnumbの示す値を表示部20に表示する。
【0104】ステップS710の処理を終了すると、ス
テップS712へ進み、Mcntを「0」にクリアし
て、Mnumbにより指定される新たな小節の処理を行
うことになる。
【0105】即ち、上記したステップS702乃至ステ
ップS712においては、クロック数から小節番号を求
め、こうして求めた小節番号を表示部20に表示する処
理を行っている。
【0106】そして、ステップS706の判断結果が否
定、即ち、Mcntが「17」でない場合、あるいはス
テップS712の処理を終了した場合には、ステップS
714へ進む。
【0107】ステップS714では、Brepに「1」
がセットされているか否かを判断する。
【0108】ステップS714の判断結果が否定、即
ち、「Brep=0」でありブロック・リピート中でな
いならば、ステップS728へ進む。
【0109】一方、ステップS714の判断結果が肯
定、即ち、「Brep=1」でありブロック・リピート
中であるならば、ステップS716へ進み、Btota
lとTotalとが一致するか否かを判断する。
【0110】ステップS716の判断結果が否定、即
ち、BtotalとTotalとが一致しない場合に
は、ステップS728へ進む。
【0111】一方、ステップS716の判断結果が肯
定、即ち、BtotalとTotalとが一致する場合
には、リピート・ポイントBまでのクロック割り込みの
処理を終了したものであるので、ステップS718以降
の処理により、リピート・ポイントAからクロック割り
込み処理を開始させる処理を行う。
【0112】即ち、まずステップS718ではMnum
bにAnumbをセットし、ステップS720ではTo
talにAtotalをセットし、ステップS722で
はaddrにAaddrをセットし、ステップS724
ではWaitにAtimeに「1」加算した値をセット
する。
【0113】上記したステップS718乃至ステップS
724の処理により、次のクロック割り込みがかかる
と、ステップS728以降の処理により、リピート・ポ
イントAから演奏データの再生が開始されることにな
る。
【0114】そして、ステップS724の処理を終了す
ると、ステップS726へ進み、現在発音中の楽音(リ
ピート・ポイントBに記録された演奏データに基づき発
音されている楽音)を全て消去し、ステップS728へ
進む。
【0115】即ち、ステップS714乃至ステップS7
26では、リピート演奏中(Brep=1)の場合に、
ブロック・リピートの折り返し点であるリピート・ポイ
ントBの位置に到達したら、リピート・ポイントAに自
動的に戻り、発音中の楽音を全て消音させる処理を行う
ことになる。
【0116】なお、ステップS418における自動的に
リピート・ポイントAに戻る処理も、上記と同様な処理
により実現される。
【0117】さらに、ステップS728以降の処理によ
り、addrにより指定される演奏データが、MIDI
出力装置24によって外部の音源などに出力されること
になる。
【0118】まず、ステップS728においては、Wa
itから「1」減算して、Waitの値を更新してか
ら、ステップS730へ進む。
【0119】ステップS730では、Waitが「0」
であるか否かを判断する。このステップS730の判断
結果が否定、即ち、Waitが「0」でない場合には、
待ち時間が終了していないものであるので、以降の処理
を行うことなくクロック割り込み処理を終了する。
【0120】一方、ステップS730の判断結果が肯
定、即ち、Waitが「0」である場合には、待ち時間
が終了したものであるので、ステップS732へ進み、
addrにおける演奏データが、「FF」であるか、
「FE」であるか、あるいは「FF」および「FE」以
外のMIDIデータであるか判断する。
【0121】ステップS732の判断結果が「FF」で
あるならば、演奏データの終了を示すものであるので、
ステップS734へ進み、クロック割り込みを停止す
る。
【0122】ステップS734の処理を終了すると、ス
テップS736へ進み、現在発音中の全ての楽音の消去
を指示し、さらにステップS738へ進んでレジスタの
初期化(図6)を行い、クロック割り込み処理ルーチン
を終了する。
【0123】また、ステップS732の判断結果が「F
E」であるならば、addrの演奏データは時間データ
であるので、ステップS740へ進んで、addrの演
奏データ(時間データ)をWaitに加算してWait
の値を更新する。
【0124】ステップS740の処理を終了すると、ス
テップS742へ進み、addrに「1」加算してad
drの値を更新し、アドレスを「1」進めてステップS
730へ戻り処理を繰り返す。
【0125】さらに、ステップS732の判断結果が、
「FF」および「FE」以外のMIDIデータである場
合には、ステップS744へ進み、addrの演奏デー
タ(MIDIデータ)をMIDI出力装置24によって
出力する。
【0126】ステップS744の処理を終了すると、ス
テップS746へ進み、addrに「1」加算してad
drの値を更新し、アドレスを「1」進めてステップS
730へ戻り処理を繰り返す。
【0127】以上で説明したように、クロック割り込み
ルーチンにより、addrで示すアドレスの演奏データ
が読み出され、当該演奏データの種類(「FF」、「F
E」あるいは「MIDIデータ」)に応じた処理が行わ
れる。即ち、演奏データに従って、順次MIDIデータ
を出力し、演奏データが終了すると、クロック割り込み
の停止やレジスタの初期化などを行う。
【0128】その際に、ブロック・リピートが設定され
ていれば、ステップS714乃至ステップS726の処
理により、リピート・ポイントAからリピート・ポイン
トBまでの演奏データが繰り返し処理されるようにな
る。
【0129】なお、上記した実施例においては、予め設
定されるリピート区間の長さを小節単位で指定するよう
にしているが、音符単位やクロック単位というように、
さらに細かい単位で指定するようにしてもよい。
【0130】また、上記した実施例においては初期化の
際に、リピート区間の長さ(ABintv)を2小節と
しているが、これに限られることなしに、任意の小節数
を設定できるようにしてもよい。
【0131】さらに、上記した実施例では、ブロック・
リピートの折り返し点(リピート・ポイントB)の設定
の際に、SETスイッチ18dを押した位置そのもので
はなく、当該位置以後に初めて現れる小節線にリピート
・ポイントBが設定されるように修正を行っているが、
この修正は音符単位やクロック単位に修正するようにし
てもよく、さらには、何らの修正も行うことなく、単に
SETスイッチ18dを押した位置そのものにリピート
・ポイントBを設定してもよい。
【0132】さらにまた、上記した修正を行う際に、S
ETスイッチ18dを押した小節の先頭位置に修正する
などのように、SETスイッチ18dを押した位置その
もよりも前方に修正して設定されるようにしてもよい。
【0133】また、上記した実施例においては、ブロッ
ク・リピートの折り返し点(リピート・ポイントB)を
指示した際に、ブロック・リピートの開始点(リピート
・ポイントA)を自動的に設定しているが、これとは逆
に、ブロック・リピートの開始点を指示した際に、ブロ
ック・リピートの折り返し点を自動的に設定するように
してもよい。
【0134】さらに、自動的に設定されたリピート・ポ
イントに対して、位置の修正を行うようにしてもよい。
【0135】さらにまた、上記実施例においては、理解
を容易にするために、最小分解能を16分音符とすると
ともに、テンポを「120」で固定とし、さらに拍子も
「4/4」で固定としたが、これに限られるものでない
ことは勿論であり、操作者が任意に設定できるようにし
てもよい。
【0136】
【発明の効果】本発明は、以上説明したように構成され
ているので、以下に記載されるような効果を奏する。
【0137】演奏データ中の任意の位置にそれぞれ設定
された二つのマーカー間を繰り返し演奏可能な自動演奏
装置において、演奏データ中の任意の位置に第一のマー
カーの設定を指示するマーカー設定指示手段と、マーカ
ー設定指示手段による設定の指示に基づいて、第一のマ
ーカーを設定する第一のマーカー設定手段と、第一のマ
ーカー設定手段により第一のマーカーが設定されたとき
に、演奏データ中の第一のマーカーの設定位置とは離隔
した位置に第二のマーカーを設定する第二のマーカー設
定手段とを有するようにしたため、ブロック・リピート
を行う際に、マーカー設定指示手段により演奏データ中
の任意の位置における第一のマーカーの設定を指示し、
当該第一のマーカーが第一のマーカー設定手段により演
奏データ中に設定されると、第二のマーカー設定手段
が、第一のマーカーの設定位置とは離隔した位置に第二
のマーカーを設定することになる。
【0138】従って、本発明によれば、ブロック・リピ
ートの開始点と折り返し点との双方のリピート・ポイン
トをそれぞれ指示することないしに、ブロック・リピー
トを行うことができるので、操作性を著しく向上するこ
とができる。
【図面の簡単な説明】
【図1】本発明の一実施例による自動演奏装置を示すブ
ロック構成図である。
【図2】図1に示す自動演奏装置の操作パネルの説明図
である。
【図3】図1に示す自動演奏装置の演奏データ形式を示
す説明図である。
【図4】メイン・ルーチンを示すフローチャートであ
る。
【図5】メイン・ルーチンを示すフローチャートであ
る。
【図6】レジスタの初期化ルーチンを示すフローチャー
トである。
【図7】クロック割り込みルーチンを示すフローチャー
トである。
【図8】クロック割り込みルーチンを示すフローチャー
トである。
【図9】リピート・ポイントの設定を説明するための概
念図である。
【符号の説明】
10 CPU 12 バス 14 ROM 16 RAM 18 操作子部 20 表示部 22 カード・スロット 24 MIDI出力装置
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平3−105396(JP,A) 特開 平4−170598(JP,A) 特開 昭57−185489(JP,A) 特開 平3−126085(JP,A) 実開 平3−89491(JP,U) 実開 平4−27496(JP,U) (58)調査した分野(Int.Cl.7,DB名) G10H 1/00 101 - 102

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 演奏データ中の任意の位置にそれぞれ設
    定された二つのマーカー間を繰り返し演奏可能な自動演
    奏装置において、 演奏データ中の任意の位置に第一のマーカーの設定を指
    示するマーカー設定指示手段と、 前記マーカー設定指示手段による設定の指示に基づい
    て、第一のマーカーを設定する第一のマーカー設定手段
    と、 前記第一のマーカー設定手段により第一のマーカーが設
    定されたときに、前記演奏データ中の前記第一のマーカ
    ーの設定位置とは離隔した位置に第二のマーカーを設定
    する第二のマーカー設定手段とを有することを特徴とす
    る自動演奏装置。
  2. 【請求項2】 前記第二のマーカー設定手段が前記第二
    のマーカーを設定する際における前記第一のマーカーと
    前記第二のマーカーとの間隔を、任意に設定する間隔設
    定手段を備えた請求項1記載の自動演奏装置。
JP27898893A 1993-10-12 1993-10-12 自動演奏装置 Expired - Fee Related JP3219917B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27898893A JP3219917B2 (ja) 1993-10-12 1993-10-12 自動演奏装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27898893A JP3219917B2 (ja) 1993-10-12 1993-10-12 自動演奏装置

Publications (2)

Publication Number Publication Date
JPH07110681A JPH07110681A (ja) 1995-04-25
JP3219917B2 true JP3219917B2 (ja) 2001-10-15

Family

ID=17604857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27898893A Expired - Fee Related JP3219917B2 (ja) 1993-10-12 1993-10-12 自動演奏装置

Country Status (1)

Country Link
JP (1) JP3219917B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3796001B2 (ja) * 1997-04-17 2006-07-12 ローランド株式会社 自動演奏装置のマーカー操作装置
JP4811046B2 (ja) 2006-02-17 2011-11-09 ソニー株式会社 コンテンツの再生装置、オーディオ再生機およびコンテンツの再生方法
JP2007306279A (ja) * 2006-05-11 2007-11-22 Sony Corp コンテンツマーキング方法、コンテンツ再生装置、コンテンツ再生方法、コンテンツマーキング用プログラムおよびコンテンツ検索用プログラム
JP4687759B2 (ja) * 2008-08-25 2011-05-25 ヤマハ株式会社 演奏データ再生装置及びプログラム

Also Published As

Publication number Publication date
JPH07110681A (ja) 1995-04-25

Similar Documents

Publication Publication Date Title
US4993306A (en) Device for correcting timing of music playing information for use in music auto play device
JP3219917B2 (ja) 自動演奏装置
JP3743024B2 (ja) 演奏練習装置
JP3239411B2 (ja) 自動演奏機能付電子楽器
JP3464290B2 (ja) 自動演奏装置
JPH0764547A (ja) マーカー・クォンタイズ装置
JP2773638B2 (ja) 自動演奏装置
JP2587737B2 (ja) 自動伴奏装置
JP3743364B2 (ja) 演奏練習装置
GB2091470A (en) Electronic Musical Instrument
JP3609045B2 (ja) 自動演奏装置
JP3171759B2 (ja) 自動演奏装置
JPH06259064A (ja) 電子楽器
JP2625800B2 (ja) 自動演奏装置
JP3205662B2 (ja) 電子楽器
JP3128888B2 (ja) 自動伴奏装置
US5436404A (en) Auto-play apparatus for generation of accompaniment tones with a controllable tone-up level
JP3452687B2 (ja) 電子楽器の操作処理装置
US5214230A (en) Musical tone data compensation apparatus
JP3324881B2 (ja) 自動演奏装置
JPH0545040B2 (ja)
JP2681146B2 (ja) 電子楽器の自動演奏装置及び自動演奏方法
JP3407324B2 (ja) 演奏データ記録装置
JP3097888B2 (ja) 電子楽器の音量設定装置
JP3177992B2 (ja) 電子楽器

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees