JPH0863159A - 自動演奏装置 - Google Patents

自動演奏装置

Info

Publication number
JPH0863159A
JPH0863159A JP6224314A JP22431494A JPH0863159A JP H0863159 A JPH0863159 A JP H0863159A JP 6224314 A JP6224314 A JP 6224314A JP 22431494 A JP22431494 A JP 22431494A JP H0863159 A JPH0863159 A JP H0863159A
Authority
JP
Japan
Prior art keywords
data
pattern data
performance
pattern
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP6224314A
Other languages
English (en)
Inventor
Tsutomu Saito
勉 齋藤
Masahiko Yamada
雅彦 山田
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.)
Kawai Musical Instrument Manufacturing Co Ltd
Original Assignee
Kawai Musical Instrument Manufacturing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawai Musical Instrument Manufacturing Co Ltd filed Critical Kawai Musical Instrument Manufacturing Co Ltd
Priority to JP6224314A priority Critical patent/JPH0863159A/ja
Publication of JPH0863159A publication Critical patent/JPH0863159A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 【目的】本発明は、数小節程度の演奏パターンを繰り返
すことにより自動演奏を行う自動演奏装置に関し、少な
いメモリ容量で簡単に人間の感情の周期にマッチした自
動演奏パターンを実現することができ、また、自動演奏
の途中からでも特定パートの再生又は停止を行わせるこ
とのできる自動演奏装置を提供することを目的とする。 【構成】繰り返し演奏パターンを形成するためのパター
ンデータを記憶したパターンデータ記憶手段12と、複
数小節にまたがる揺らぎデータを記憶した揺らぎデータ
記憶手段12と、自動演奏の時間進行を管理する時間管
理手段12と、該時間管理手段の内容に基づいて前記パ
ターンデータ記憶手段からパターンデータを読み出すパ
ターンデータ読出手段10と、前記時間管理手段の内容
に基づいて前記揺らぎデータ記憶手段から揺らぎデータ
を読み出して前記パターンデータ読出手段により読み出
されたパターンデータの一部を補正する補正手段10
と、該補正手段により補正されたパターンデータに基づ
いて発音する発音手段10、14、15、とを備えて構
成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、数小節程度の演奏パタ
ーンを繰り返すことにより自動演奏を行う自動演奏装置
に関する。
【0002】
【従来の技術】従来、予め記憶手段に記憶された数小節
(2〜16小節程度)分の自動演奏データ(以下、「パ
ターンデータ」という。)を繰り返して読み出して音源
に与えることにより所定の演奏パターンを再生する自動
演奏装置が知られている。
【0003】この種の自動演奏装置は、パターンデータ
を機械的に読み出して再生するだけであるので、発音の
タイミングや音量等に揺らぎがなく画一的であり、人間
味に欠けるという欠点があった。そこで、かかる画一的
な自動演奏を回避して揺らぎを持たせるために、発音タ
イミングや音量等をランダムに変化させることにより人
間の感情の周期にマッチさせる試みがなされている。発
音タイミングや音量等をランダムに変化させれば変化に
富んだ自動演奏は可能である。しかしながら、人間の感
情の周期にマッチした演奏パターン、例えばノリの良い
演奏パターンを実現することは困難であった。
【0004】従って、従来は、例えばノリの良い自動演
奏を行うためには、たとえ2小節の演奏パターンの繰り
返しで成る自動演奏曲であっても、曲の最初から最後ま
でのパターンデータを作成して記憶しておき、それを忠
実に再生する必要があった。従って、人間の感情の周期
にマッチした演奏パターンを得るためには膨大なメモリ
容量を必要とするという問題があった。
【0005】また、上記のような自動演奏装置は、複数
パート(例えばリズム、ベース、アカンパニメント及び
メロディ等)を有し、各パートがそれぞれ独立して制御
できるように構成される場合も多い。例えば、特開昭5
8−35597号公報には、複数パートを同時に再生で
き、また、各パート単位で発音するかどうかを制御可能
にした自動演奏装置が開示されている。この自動演奏装
置によれば、複数のパートを同時に発音することによ
り、多重演奏を行わせることができる。
【0006】しかしながら、複数パートを有する自動演
奏装置においては、特定パートの演奏を自動演奏でなく
人が行うという応用が望まれている。例えば、リズム、
ベース、アカンパニメントの各パートは自動演奏にまか
せメロディパートは人が弾くといった具合である。この
ためには、パート単位で随時再生又は停止の制御が可能
である必要がある。上掲の公報に開示された自動演奏装
置は、RUNスイッチを投入してスタートパルスが発生
したときには既に再生(又は録音)すべきパートは確定
している必要があり、演奏途中でパートスイッチを変化
させることは予定されていない。即ち、演奏途中でパー
トスイッチをオンにしてもそのパートの再生はできな
い。
【0007】
【発明が解決しようとする課題】本発明は、かかる事情
に鑑みてなされたものであり、その第1の目的は、少な
いメモリ容量で簡単に人間の感情の周期にマッチした自
動演奏パターンを実現することのできる自動演奏装置を
提供することにある。
【0008】また、本発明の第2の目的は、自動演奏の
途中からでも特定パートの再生又は停止を行わせること
のできる自動演奏装置を提供することにある。
【0009】
【課題を解決するための手段】上記第1の目的を達成す
るために、請求項1に記載の発明は、繰り返し演奏パタ
ーンを形成するためのパターンデータを記憶したパター
ンデータ記憶手段と、複数小節にまたがる揺らぎデータ
を記憶した揺らぎデータ記憶手段と、自動演奏の時間進
行を管理する時間管理手段と、該時間管理手段の内容に
基づいて前記パターンデータ記憶手段からパターンデー
タを読み出すパターンデータ読出手段と、前記時間管理
手段の内容に基づいて前記揺らぎデータ記憶手段から揺
らぎデータを読み出して前記パターンデータ読出手段に
より読み出されたパターンデータの一部を補正する補正
手段と、該補正手段により補正されたパターンデータに
基づいて発音する発音手段、とを具備したことを特徴と
する。
【0010】また、同様の目的で、請求項2に記載の発
明は、前記揺らぎデータは、ステップタイムであること
を特徴とする。
【0011】また、同様の目的で、請求項3に記載の発
明は、前記揺らぎデータは、ベロシティであることを特
徴とする。
【0012】また、上記第2の目的を達成するために、
請求項4に記載の発明は、複数パートのパターンデータ
を記憶したパターンデータ記憶手段と、自動演奏の時間
進行を管理する時間管理手段と、該時間管理手段の内容
に基づいて前記パターンデータ記憶手段に記憶された全
パートのパターンデータを順次読み出すパターンデータ
読出手段と、該パターンデータ読出手段により読み出さ
れたパターンデータに基づいて作成された全パートの演
奏データを記憶する演奏データ記憶手段と、該演奏デー
タ記憶手段に記憶された演奏データを自動演奏の進行に
応じて更新する更新手段と、各パートの発音を指示する
指示手段と、該指示手段により指示されたパートについ
てのみ発音する発音手段とを有し、前記発音手段は、前
記指示手段により新たなパートの発音指示がなされた場
合に、そのパートに対応する前記演奏データ記憶手段中
の演奏データに基づき発音することを特徴とする。
【0013】また、同様の目的で、請求項5に記載の発
明は、前記発音手段は、新たなパートの発音指示がなさ
れた場合に、前記演奏データ記憶手段に記憶されている
演奏データのうち、残りの発音時間が所定値以上のとき
にのみ新たに発音することを特徴とする。
【0014】
【作用】請求項1に記載の発明においては、正規化され
たパターンデータ(楽譜通りを忠実に再現するものであ
り揺らぎを含まないパターンデータ)を例えば数小節程
度(例えば2小節)だけパターンデータ記憶手段に記憶
しておく。一方、このパターンデータとは別に、複数小
節にまたがる揺らぎデータ、例えば1曲の全小節分の揺
らぎデータを揺らぎデータ記憶手段に記憶しておく。こ
の揺らぎデータとしては、例えば、上記正規化されたパ
ターンデータに基づく演奏パターンと実際に演奏者が演
奏した演奏パターンとの差分データを用いることができ
る。
【0015】そして、時間管理手段で管理された時間進
行に応じて上記パターンデータ記憶手段から正規化され
たパターンデータを読み出すと共に、上記揺らぎデータ
記憶手段から揺らぎデータを読み出し、正規化されたパ
ターンデータを揺らぎデータを用いて補正し、この補正
されたパターンデータに基づき発音する。
【0016】かかる構成により正規化されたパターンデ
ータのみに基づく発音に見られるような機械的な演奏パ
ターンというイメージが払拭でき、しかも揺らぎデータ
として、例えば、上記正規化されたパターンデータに基
づく演奏パターンと実際に演奏者が演奏した演奏パター
ンとの差分データを用いれば、人間の感情の周期にマッ
チした自動演奏パターンを実現することができる。上記
揺らぎデータを、特定の音楽家が演奏した演奏パターン
との差分データで作成すれば、「誰それ風の演奏」とい
う自動演奏パターンを得ることができる。
【0017】また、従来のように、人間の感情の周期に
マッチした自動演奏パターンを実現するにあたり1曲の
全小節分のパターンデータを作成する必要がないので、
少ない容量で例えばノリの良い自動演奏パターンを実現
できるという効果がある。
【0018】請求項2に記載の発明においては、揺らぎ
データとしてステップタイムを用いている。即ち、本来
発音すべきタイミングに対して、補正により前又は後ろ
に若干発音タイミングをずらすことによりノリの良い自
動演奏が実現可能となっている。
【0019】請求項3に記載の発明においては、揺らぎ
データとしてベロシティを用いている。即ち、本来発音
すべき音量に対して、補正により若干音量を変化させる
ことによりメリハリの効いた自動演奏が実現可能となっ
ている。
【0020】請求項4に記載の発明においては、全パー
トのパターンデータを時間管理手段、例えば小節レジス
タ/拍レジスタ等の内容に従って順次読み出し、これか
ら演奏データを作成して演奏データ記憶手段に記憶す
る。この演奏データ記憶手段に記憶された演奏データの
うち、指示手段で指示されたパートに対応する演奏デー
タのみが発音される。この演奏データ記憶手段の内容
は、発音の有無とは独立に自動演奏の進行に応じて更新
される。
【0021】自動演奏の途中で新たなパートの発音指示
がなされた場合は、演奏データ記憶手段に記憶されてい
る演奏データが既に発音開始タイミングを過ぎていて
も、未だ消音タイミングに至らない音については途中か
らであっても発音を開始する。
【0022】これにより、演奏者の指示手段による指示
タイミングが多少ずれる(遅れる)ことにより、本来発
音されるべき音が発音されないという事態を回避できる
ので、演奏者の意図したタイミングで特定パートの自動
演奏を完全な形で開始させることができるという効果が
ある。
【0023】なお、指示手段で所定のパートをオフにす
べきことが指示された場合は、その指示手段に対応する
パートで発音中の音は全て速やかに発音を中止するよう
に構成することができる。例えば、長いサスティンがか
かっている音色やピアノ音でダンパーオンされているよ
うな場合でも、それらのエンベロープよりも格段に高速
なリリースエンベロープに置き換えて発音を終了させる
ことができる。
【0024】このように、特定パートの自動演奏を演奏
者の所望のタイミングで開始させ又は終了させることが
できるということは、パターンデータに基づく発音又は
消音のタイミングよりも細かいタイミングで、特定パー
トの自動演奏を行わせたり停止したりすることができる
ことを意味し、新たな演奏形態が可能になるという効果
がある。
【0025】請求項5に記載の発明においては、新たな
パートの発音指示がなされた場合に、未だ消音タイミン
グに至っていないが、残りの発音時間が所定値より小さ
ければ発音を行わず、所定値以上の場合にのみ発音を行
う。
【0026】これにより、発音されてもすぐに消音され
てしまうような、聴感には何等の影響を与えない音に対
しては、最初から発音されないので、例えば発音手段の
一部としてCPUを用いる場合は、CPUの負荷が軽減
される。この場合、CPUは他の処理を実行することが
可能となるので、より効率の良い自動演奏装置を実現で
きる。
【0027】
【実施例】以下、本発明の自動演奏装置の実施例につ
き、図面を参照しながら詳細に説明する。
【0028】図1は、本発明の自動演奏装置の実施例の
構成を示すブロック図である。本自動演奏装置は、中央
処理装置(以下、「CPU」という。)10、リードオ
ンリメモリ(以下、「ROM」という。)11、ランダ
ムアクセスメモリ(以下、「RAM」という。)12、
操作パネル13、楽音発生器14、タイマ16、MID
Iコントローラ17及びFDコントローラ18がシステ
ムバス30を介して相互に接続されて構成されている。
システムバス30は、例えばアドレス線、データ線及び
制御信号線等で成り、上記各構成要素間で各種データを
送受するために使用される。
【0029】CPU10は、パターンデータ読出手段、
補正手段、発音手段の一部及び更新手段に対応するもの
であり、ROM11に格納されている制御プログラムに
従って、本自動演奏装置の全体を制御する。このCPU
10には、2つの割込信号入力端子INT1及びINT
2が設けられている。割込信号入力端子INT1にはM
IDIコントローラ17から、割込信号入力端子INT
2にはタイマ16からそれぞれ割込信号が供給される。
このCPU10の動作の詳細については後述する。
【0030】ROM11には、上述したCPU10を動
作させるための制御プログラムが記憶されている他、C
PU10が各種処理に用いる種々の固定データが記憶さ
れている。このROM11の内容はCPU10により読
み出される。即ち、CPU10は、ROM11から制御
プログラム(命令)を読み出して解釈・実行すると共
に、所定の固定データを読み出して各種処理に使用す
る。
【0031】RAM12はパターンデータ記憶手段及び
揺らぎデータ記憶手段に対応するものである。RAM1
2は、CPU10が使用する種々のデータを一時記憶す
る。このRAM12には、例えばバッファ、レジスタ、
カウンタ、フラグ等の各種領域が定義されている。本実
施例で使用する具体的なバッファ、レジスタ、カウン
タ、フラグ等については、以下において出現する都度説
明するが、ここでは、「受信バッファ」、「レジスタ群
n」及び「小節レジスタと拍レジスタ」について説明し
ておく。
【0032】受信バッファ 受信バッファは、後述するMIDIコントローラ17か
ら受信したMIDIデータを一時記憶するために使用さ
れる。この受信バッファは、例えば図13に示されるよ
うに、RAM12に定義されたカウンタCTR、ポイン
タPTR及び記憶エリアとで構成され、CPU10の制
御によりFIFO(ファーストイン−ファーストアウ
ト)メモリとして機能するようになっている。記憶エリ
アは、例えば256個のエントリを有し、各エントリに
はMIDIデータが順次記憶される。
【0033】カウンタCTRは受信したMIDIデータ
を書き込むべき記憶エリアの位置を指定する。このカウ
ンタCTRは、常に最後に書き込まれたMIDIデータ
の次のアドレスを指示するように制御される。このカウ
ンタCTRの初期値は「0」であり、MIDIデータが
書き込まれる度にインクリメントされ、その結果が最大
値TOPを越えた場合は最小値BTMに循環する。
【0034】ポインタPTRは記憶エリア中の、読み出
すべきMIDIデータの位置を指示する。このポインタ
PTRは、常に最後に読み出されたMIDIデータの次
のアドレス、つまり次に読み出すべきMIDIデータの
アドレスを指示するように制御される。このポインタP
TRの初期値は「0」であり、MIDIデータが読み込
まれる度にインクリメントされ、その結果が最大値TO
Pを越えた場合は最小値BTMに循環する。
【0035】この受信バッファは、カウンタCTRの内
容とポインタPTRの内容とが一致するときはエンプテ
ィであると判断される。なお、カウンタCTRをインク
リメントした結果、カウンタCTRの内容がポインタP
TRの内容に一致することとなる場合は受信バッファは
満杯であるのでMIDIデータの受信を抑止するように
制御される。カウンタCTRの内容とポインタPTRの
内容とが一致しない場合は、受信バッファにMIDIデ
ータが存在することが判断される。
【0036】この受信バッファへのMIDIデータの書
込みは後述するMIDI−IN割込処理ルーチンにて行
われ、受信バッファからのMIDIデータの読み出しは
後述するMIDI−IN処理ルーチンで行われる。な
お、本実施例では受信バッファをRAM12内に形成
し、MIDIデータの書込み/読み出しの制御はCPU
10で行うように構成したが、これらの代わりに周知の
FIFOメモリ素子を用いて構成することもできる。
【0037】レジスタ群n レジスタ群nは演奏データ記憶手段に対応するものであ
る。レジスタ群n(nはパート番号に対応しており、n
=1〜4である。)は、パート毎の発音を管理するため
に使用される。本実施例における各パートのポリフォニ
ック数を「8」とすると、このレジスタ群nは、例えば
図14(A)に示されるように、8個のブロックで構成
される。各ブロックは1音に対応しており、演奏データ
に対応する「キーコード及びそのオン/オフ」、「補正
ベロシティ」、「残存ゲートタイム」の3バイトで構成
されている。
【0038】キーコード(7ビット)は音高を示すため
に使用される。オン/オフビット(1ビット)はキーコ
ードで示される音がキーオン状態にあるか又はキーオフ
状態にあるかを示すために使用される。補正ベロシティ
(7ビット)はパターンデータ中のベロシティをベロシ
ティ補正データに応じて補正したデータである。残存ゲ
ートタイム(7ビット)は発音中の音(オン/オフビッ
トが「1」になっている音)の残りの発音時間を示すた
めに使用される。図14(A)においては、1つのパー
トに対するレジスタ群のみ示されているが、実際はパー
ト1〜4のそれぞれに対して同じ構成のレジスタ群が設
けられている。
【0039】小節レジスタと拍レジスタ 小節レジスタBRR及び拍レジスタBTRは時間管理手
段に対応する。小節レジスタBRRは、小節の進行を計
数するレジスタである。この小節レジスタBRRは、1
0進数4桁分に相当する計数が可能である。また、拍レ
ジスタBTRは小節内の拍の進行を計数するレジスタで
ある。この拍レジスタBTRは、1ステップタイム毎に
カウントアップされる。本実施例では、1拍を48ステ
ップの分解能としている。従って、拍レジスタBTR
は、4拍子の場合は4拍、つまり192ステップを計数
したらゼロにラウンドする。この際、小節レジスタBR
Rはインクリメントされるように制御される。この小節
レジスタBRRと拍レジスタBTRとは、揺らぎを発生
させるためのステップタイム補正データ及びベロシティ
補正データを読み出すために使用される(詳細は後述す
る)。
【0040】このRAM12には、上述したようなバッ
ファ、レジスタ等が定義されている他、パターンデータ
及び揺らぎデータが格納されるようになっている。揺ら
ぎデータは、ステップタイム補正データとベロシティ補
正データとで構成されている。以下、これらの各データ
について説明する。
【0041】パターンデータ パターンデータは、例えば2〜16小節程度の演奏パタ
ーンを発生させるために使用される。このパターンデー
タは、例えば図14(B)に示されるような、ステップ
タイム、ノートナンバ(キーコード)、ゲートタイム及
びベロシティといった4バイトのデータの集合で構成さ
れている。個々のパターンデータは、1つの音符に対応
している。ここに、ステップタイムは発音を開始する時
刻を指定するものであり小節の先頭からのステップ数で
規定される。ノートナンバは音高を規定するために使用
される。ゲートタイムは発音時間を規定するために使用
される。ベロシティは発音の強さ(音量)を規定するた
めに使用される。
【0042】ステップタイム補正データ ステップタイム補正データは、例えば図15にその一部
を示すように、各パート1〜4のそれぞれについて1曲
の全小節分が用意されている。本実施例では1拍(4分
音符)を48ステップの分解能で制御するものとしてい
る。従って、ステップタイム補正データは、図15に拡
大して示すように、各拍のステップタイムを±24ステ
ップの範囲内で変動できるように定義されている。これ
により、最大8分音符の長さまで発音タイミングを遅ら
せ又は進ませることができる。ただし、負側に補正する
場合は、ステップタイム補正データは、後述するパート
1〜4読出処理ルーチン(図9、図10)における処理
の関係上、1つ前のデータに対して「−1ステップ」分
だけ変化するように作成される。
【0043】なお、ステップタイム補正データは、1小
節を4つのエリア(4分音符単位)に分割し、各エリア
毎に用意されている。従って、1つのエリアの中に複数
のキーイベントがある場合は、同一のステップタイム補
正データが使用されることになる。かかるデータ構成に
よりステップタイム補正データの量を小さく抑えること
ができるものとなっている。
【0044】ベロシティ補正データ ベロシティ補正データは、例えば図16にその一部を示
すように、各パート1〜4のそれぞれについて1曲の全
小節分が用意されている。本実施例では1拍(4分音
符)毎の補正レートVAnを補正データとして記憶して
いる。即ち、ベロシティ補正データは、図16に拡大し
て示すように、各拍毎に「0.0〜2.0」の範囲内で
変動できるように定義されている。従って、1倍を中心
に0倍から2倍までの範囲でベロシティを補正できる。
【0045】なお、ベロシティ補正データも上記ステッ
プタイム補正データと同様に、1小節を4つのエリア
(4分音符単位)に分割し、各エリア毎に用意されてい
る。従って、1つのエリアの中に複数のキーイベントが
ある場合は、同一のベロシティ補正データが使用される
ことになる。かかるデータ構成によりベロシティ補正デ
ータの量を小さく抑えることができるものとなってい
る。
【0046】図1の説明に戻る。操作パネル13には、
本自動演奏装置と操作者とがコミュニケーションするた
めの各種スイッチ、表示器等が設けられている。この操
作パネル13の詳細については後述する。
【0047】楽音発生器14は発音手段の一部に対応す
るものであり、CPU10からシステムバス30を介し
て送られてくるデータに基づいて楽音信号を生成するも
のである。この楽音発生器14で発生された楽音信号
は、スピーカシステム16に送られる。スピーカシステ
ム16は発音手段の一部に対応するものであり、例えば
増幅器、スピーカ等で構成されており、楽音発生器14
から送られてくる楽音信号を音響信号に変換して放音す
る周知のものである。
【0048】タイマ16は、テンポに対応した間隔で割
込信号を発生する。この割込信号の発生間隔は、CPU
10からタイマ16にセットされるデータにより決定さ
れる。このタイマ16で発生された割込信号はCPU1
0の割込信号入力端子INT2に供給される。本実施例
では、4分音符を1/48の分解能(精度)で制御する
ものとしている。従って、4分音符当たりに48回の割
込信号が発生されることになる。
【0049】MIDIコントローラ17は、外部装置と
本自動演奏装置との間のMIDIデータの転送を制御す
るものである。このMIDIコントローラ17の外部側
に接続される外部装置としては、例えばMIDIデータ
を処理することのできる電子楽器、音源モジュール、コ
ンピュータ、シーケンサ等が挙げられる。MIDIコン
トローラ17は、外部装置からシリアルに送られてくる
MIDIデータを受信し、これが例えば1バイト分にな
った時点で割込信号を発生する。この割込信号は、CP
U10の割込信号入力端子INT1に供給される。
【0050】FDコントローラ18は、フロッピーディ
スクドライブ装置19を制御するものである。フロッピ
ーディスクドライブ装置19に装着されるフロッピーデ
ィスクには、例えば、パターンデータ、揺らぎデータ等
が記憶される。そして、操作パネルに設けられた所定の
スイッチ(図示しない)を操作することにより、フロッ
ピーディスクに記録されている上記パターンデータ、揺
らぎデータがFDコントローラ18を介してRAM12
の所定領域にロードされる。
【0051】図2は本自動演奏装置の操作パネル13の
構成例を示す図である。小節/拍表示器130は、例え
ば5桁の7セグメントLED表示器で構成されている。
この小節/拍表示器130の上位4桁には、現在自動演
奏されている「小節」、つまり小節レジスタBRRの内
容が表示され、下位1桁には現在自動演奏されている
「拍」、つまり拍レジスタBTRの内容に対応する拍
(具体的には、4拍子の場合は、拍レジスタBTRの内
容を48で割って得られる商に1を加えた値)が表示さ
れる。この小節/拍表示器の表示内容は、自動演奏の進
行に伴って順次更新される。
【0052】コード表示器131は、例えばLCD表示
器で構成されている。このコード表示器131には、後
述するコード検出処理で検出されたコード(コードルー
ト及びコードタイプ)が表示される。本実施例では、M
IDIチャンネル1(MIDI−CH1)により送られ
てきたMIDIデータをロワー鍵からのデータとみな
し、これに対してコード検出を行うものとする。従っ
て、このコード表示器131には、MIDIチャンネル
1から送られてきたMIDIデータに基づいて検出され
たコードが表示される。なお、コード検出は、MIDI
チャンネル1から送られてきた演奏データに限定され
ず、他の任意のMIDIチャンネル、或いは複数のMI
DIチャンネルから送られてきた演奏データを対象とす
るように構成しても良い。
【0053】テンポスピード表示器132は、例えば3
桁の7セグメントLED表示器で構成されている。この
テンポスピード表示器132には、現在設定されている
テンポスピードが表示される。
【0054】なお、小節/拍表示器130及びテンポス
ピード表示器132は、7セグメントのLED表示器で
構成したが、LCD表示器、CRT表示器、その他の種
々の表示器で構成することができる。同様に、コード表
示器131もLCD表示器に限定されず、CRT表示
器、その他の種々の表示器で構成することができる。
【0055】インクリメンタ133は、テンポを設定す
るために使用される。このインクリメンタ133は、例
えば右回転させることによりテンポが増加し、左回転さ
せることによりテンポが減少するように制御される。そ
して、このインクリメンタ133で設定されたテンポ
は、テンポスピード表示器132に表示される。
【0056】ストップスイッチ134は、自動演奏を停
止させるために使用される。即ち、自動演奏中にストッ
プスイッチ134が押されると自動演奏は停止される。
プレイ/ポーズスイッチ135は、自動演奏を開始させ
又は一時停止させるために使用される。自動演奏の停止
中又はポーズ(一時停止)状態にあるときに、このプレ
イ/ポーズスイッチ135が押されるとLED表示器1
43が点灯されて自動演奏が開始又は再開され、自動演
奏中に押されるとLED表示器143が消灯されてポー
ズ状態になる。
【0057】FFスイッチ136は、テンポスピードを
上げて再生するために使用される。即ち、自動演奏状態
にあるときにFFスイッチ136が押されるとLED表
示器144が点灯されて高速再生が行われ、次に押され
るとLED表示器144が消灯されて元のテンポスピー
ドに戻る。REWスイッチ137は、再生位置を戻すた
めに使用される。即ち、このREWスイッチ137が押
下されるとLED表示器145が点灯されて小節/拍数
が減少(リワインド)する。このリワインド状態は小節
/拍表示器130で確認することができる。リワインド
状態で再度REWスイッチ137が押されるとLED表
示器145が消灯されて自動演奏の再生が再開される。
【0058】リピートスイッチ138は、曲を繰り返し
自動演奏させるために使用される。即ち、自動演奏を開
始させる前にこのリピートスイッチ138が押されると
LED表示器146が点灯され、曲の最後まで自動演奏
が行われると最初に戻って同じ曲の自動演奏が繰り返さ
れる。この状態で再度リピートスイッチ138が押され
るとLED表示器146が消灯されて自動演奏の繰り返
し再生状態は解除される。なお、このリピートスイッチ
138は、自動演奏状態で所定の操作を行うことによ
り、曲の特定区間を繰り返し再生するためにも使用され
るがここでは説明は省略する。
【0059】パートスイッチ139〜142は指示手段
に対応するものである。パート1スイッチ139は、リ
ズムパートの発音を指示するために使用される。このパ
ート1スイッチ139が押されるとLED表示器147
が点灯されてリズムパートが発音され、次に押されると
LED表示器147が消灯されてリズムパートの発音は
停止される。同様に、パート2スイッチ140は、ベー
スパートの発音を指示するために使用される。このパー
ト2スイッチ140が押されるとLED表示器148が
点灯されてベースパートが発音され、次に押されるとL
ED表示器148が消灯されてベースパートの発音は停
止される。
【0060】同様に、パート3スイッチ141は、アカ
ンパニメントパート(例えばコードパート等)の発音を
指示するために使用される。このパート3スイッチ14
1が押されるとLED表示器149が点灯されてアカン
パニメントパートが発音され、次に押されるとLED表
示器149が消灯されてアカンパニメントパートの発音
が停止される。同様に、パート4スイッチ142は、メ
ロディパートを指示するために使用される。このパート
4スイッチ142が押されるとLED表示器150が点
灯されてメロディパートが発音され、次に押されるとL
ED表示器150が消灯されてメロディパートの発音が
停止される。
【0061】上記各パートのうち、リズムパート、ベー
スパート及びアカンパニメントパートは1〜数小節程度
のパターンデータの繰り返し実行により発音されるもの
であり、本発明は、これら各パートに揺らぎを与えて単
調さを解消するものである。なお、メロディパートは、
1曲分の全パターンデータが記憶される。
【0062】操作パネル13には、上記以外に複数の音
色の中から所望の音色を選択する音色選択操作子、音量
を調整する音量操作子、フロッピーディスクからのデー
タをRAM12にロードするための操作子等が設けられ
ているが、本発明とは直接関係しないので図示及び説明
は省略する。
【0063】上記のように構成される操作パネル13の
各スイッチ等の設定状態は次のようにしてCPU10に
読み込まれる。即ち、CPU10は操作パネル13に対
してスキャン指令を送出する。操作パネル13は、この
スキャン指令に応答して操作各スイッチのオン/オフを
示す信号及びインクリメンタ133の現在値を示す信号
をCPU10に送る。CPU10は、受け取った信号か
らパネルデータ(各スイッチのオン/オフを1ビットに
対応させたスイッチデータとインクリメンタ133の設
定値を示すインクリメンタデータとで成る。)を生成す
る。このパネルデータは、CPU10の制御下でRAM
12に格納され、パネルイベントの有無を判断するため
に使用される(詳細は後述)。
【0064】次に、本発明の自動演奏装置の動作につ
き、図3〜図12に示したフローチャートを参照しなが
ら詳細に説明する。
【0065】(1)メイン処理(図3) 図3は、本発明の自動演奏装置のメインルーチンを示す
フローチャートであり、電源投入により起動される。電
源が投入されると、先ず、初期化処理が行われる(ステ
ップS10)。この初期化処理では、CPU10の内部
状態が初期状態に設定されると共に、RAM12に定義
されているレジスタ、カウンタ或いはフラグ等に初期値
が設定される。
【0066】この初期化処理が終了すると、次いでパネ
ルスイッチスキャン処理が行われる(ステップS1
1)。即ち、CPU10は操作パネル13に対してスキ
ャン指令を送出する。これにより、操作パネル13は、
既に説明したようにパネルデータを生成し、CPU10
に送る。CPU10は、このパネルデータ(以下、「新
パネルデータ」という。)をRAM12の所定領域に格
納する。次いで、前回のパネルスイッチスキャン処理で
読み込んで既にRAM12に記憶されているパネルデー
タ(以下、「旧パネルデータ」という。)と、上記新パ
ネルデータとを比較して相違するビットをオンにしたパ
ネルイベントマップを作成する。
【0067】次いで、イベントの有無が調べられる(ス
テップS12)。これは、上記パネルイベントマップを
参照することにより行われる。即ち、パネルイベントマ
ップ中にオンになっているビットが1つ以上存在するか
どうかが調べられ、1つも存在しなければイベントはな
かったものと、1つ以上存在すればイベントがあったも
のとそれぞれ判断される。このステップS12でイベン
トがあることが判断されるとパネル制御処理が行われ
(ステップS13)、そうでなければパネル制御処理は
スキップされる。このパネル制御処理の詳細については
後述する。
【0068】次いで、受信バッファに受信データ(MI
DIデータ)があるかどうかが調べられる(ステップS
14)。これは、上述したように、カウンタCTRの内
容とポインタPTRの内容とが一致するかどうかを調べ
ることにより行われる。ここで受信バッファに受信デー
タがあることが判断されるとMIDI−IN処理が行わ
れ(ステップS15)、そうでなければMIDI−IN
処理はスキップされる。このMIDI−IN処理の詳細
については後述する。
【0069】次いで、パート1〜4読出処理が実行され
る(ステップS16)。この処理は、各パートのパター
ンデータを読み出して楽音を再生する処理である。この
パート1〜4読出処理の詳細については後述する。
【0070】次いで、「その他の処理」が行われる(ス
テップS17)。この「その他の処理」では、フロッピ
ーディスクの制御、音色選択処理、ボリューム設定処理
等が行われるが、本発明とは直接関係しないので説明は
省略する。その後、ステップS11に戻り、以下同様の
処理が繰り返される。
【0071】(2)MIDI−IN割込処理(図4) このMIDI−IN割込処理は、メインルーチンの処理
に割り込んで実行される。このMIDI−IN割込処理
では、MIDIコントローラ17で受信されたMIDI
データが受信バッファに格納される。MIDIコントロ
ーラ17は、外部装置からシリアルに送られてくるMI
DIデータが1バイト分になると割込信号を発生する。
この割込信号はCPU10の割込信号入力端子INT1
に供給される。これにより、CPU10は割込モードに
入り、本MIDI−IN割込処理ルーチンがコールされ
る。
【0072】MIDI−IN割込処理では、先ず、MI
DIコントローラ17からMIDIデータが読み込ま
れ、これが受信バッファのカウンタCTRで示される位
置に書き込まれる(ステップS20)。次いで、カウン
タCTRがインクリメントされ(ステップS21)、そ
の結果が記憶エリアの最大値TOPを越えたかどうかが
調べられる(ステップS22)。そして、最大値TOP
を越えていないことが判断されるとこのMIDI−IN
処理ルーチンからメインルーチンの割り込まれた位置に
戻る。一方、上記ステップS22で最大値TOPを越え
たことが判断されると、カウンタCTRの内容が最小値
BTMに書き換えられ(ステップS23)、その後、こ
のMIDI−IN処理ルーチンからメインルーチンの割
り込まれた位置に戻る。これにより、最大値TOPから
最小値BTMへラウンドする循環バッファの機能が実現
されている。
【0073】なお、図中には示されていないが、カウン
タCTRをインクリメントした結果がポインタPTRの
値を越えることとなる場合は受信バッファは満杯である
ので、MIDIデータの取り込み処理は抑止される。
【0074】(3)パネル制御処理(図5) 次に、メインルーチンのステップS13で行われるパネ
ル制御処理の詳細について、図5のフローチャートを参
照しながら説明する。
【0075】このパネル制御処理ルーチンは、メインル
ーチンでパネルスイッチ等のイベントがあったことが判
断された場合にコールされる。パネル制御処理では、先
ず、インクリメンタ133のイベントがあるかどうかが
調べられる(ステップS30)。即ち、新旧両パネルデ
ータ中のインクリメンタデータが比較され、これらが相
違する場合にインクリメンタ133のイベントがあった
ことが判断される。このステップS30でインクリメン
タ133のイベントがあったことが判断されるとテンポ
スピード処理が行われ(ステップS31)、そうでなけ
ればテンポスピード処理はスキップされる。テンポスピ
ード処理では、新パネルデータ中のインクリメンタデー
タがタイマ16にセットされると共に、テンポスピード
表示器132に送られる。これによりタイマ16から発
生される割込信号の間隔が変更されて自動演奏のテンポ
スピードが変更される。また、変更後のテンポスピード
がテンポスピード表示器132に表示される。
【0076】次いで、ストップスイッチ134のイベン
トがあるかどうかが調べられる(ステップS32)。こ
れは、パネルイベントマップ中のストップスイッチ13
4に対応するビットが「1」であるかどうかを調べるこ
とにより行われる。ここでストップスイッチ134のイ
ベントがあることが判断されるとストップ処理が行われ
(ステップS33)、そうでなければストップ処理はス
キップされる。ストップ処理では、RAM12に定義さ
れている自動演奏フラグが「0」にクリアされる。これ
により、後述するタイマ割込処理(図12)において小
節レジスタBRR及び拍レジスタBTRの更新が抑止さ
れて自動演奏の進行が停止され、各パートの発音が停止
される。
【0077】次いで、プレイ/ポーズスイッチ135の
イベントがあるかどうかが調べられる(ステップS3
4)。これは、パネルイベントマップ中のプレイ/ポー
ズスイッチ135に対応するビットが「1」であるかど
うかを調べることにより行われる。ここでプレイ/ポー
ズスイッチ135のイベントがあることが判断されると
プレイ処理が行われ(ステップS35)、そうでなけれ
ばプレイ処理はスキップされる。プレイ処理では、上記
自動演奏フラグが「0」、つまり自動演奏停止中にプレ
イ/ポーズスイッチ135が押されたことが判断される
と自動演奏フラグが「1」にセットされると共に、LE
D表示器143が点灯される。これにより、後述するタ
イマ割込処理(図12)において小節レジスタBRR及
び拍レジスタBTRの更新が開始され、自動演奏が進行
される。逆に、自動演奏フラグが「1」、つまり自動演
奏中にプレイ/ポーズスイッチ135が押されたことが
判断されると自動演奏フラグが「0」にクリアされると
共に、LED表示器143が消灯される。これにより、
上記ストップスイッチ134が押された時と同様の処理
が行われて各パートの発音が停止される。
【0078】次いで、FFスイッチ136のイベントが
あるかどうかが調べられる(ステップS36)。これ
は、パネルイベントマップ中のFFスイッチ136に対
応するビットが「1」であるかどうかを調べることによ
り行われる。ここでFFスイッチ136のイベントがあ
ることが判断されるとFF処理が行われ(ステップS3
7)、そうでなければFF処理はスキップされる。FF
処理では、RAM12に定義されたFFフラグが
「0」、つまり通常再生中にFFスイッチ136が押さ
れたことが判断されるとFFフラグが「1」にセットさ
れ、タイマ16に所定のデータがセットされると共に、
LED表示器144が点灯される。これにより、テンポ
スピードが早くなって高速再生が行われる。逆に、FF
フラグが「1」、つまり高速再生中にFFスイッチ13
6が押されたことが判断されるとFFフラグが「0」に
クリアされ、タイマ16に元のデータがリストアされる
と共に、LED表示器144が消灯される。これによ
り、FFスイッチ136が押される前のテンポスピード
に戻る。
【0079】次いで、REWスイッチ137のイベント
があるかどうかが調べられる(ステップS38)。これ
は、パネルイベントマップ中のREWスイッチ137に
対応するビットが「1」であるかどうかを調べることに
より行われる。ここでREWスイッチ137のイベント
があることが判断されるとREW処理が行われ(ステッ
プS39)、そうでなければREW処理はスキップされ
る。REW処理では、RAM12に定義されたREWフ
ラグが「0」、つまり通常再生中にREWスイッチ13
7が押されたことが判断されるとREWフラグが「1」
にセットされ、RAM12に定義された小節レジスタB
RR及び拍レジスタBTRが所定の速度でデクリメント
され、その結果が小節/拍表示器130に送られると共
に、LED表示器145が点灯される。これにより、小
節/拍表示器130の表示がデクリメントされながら自
動演奏のシーケンスが後退する。なお、このREW処理
中には発音は停止される。逆に、FFフラグが「1」、
つまり高速再生中にREWスイッチ137が押されたこ
とが判断されるとREWフラグが「0」にクリアされ、
LED表示器145が消灯される。これにより、減少さ
れた小節レジスタBRR及び拍レジスタBTRの位置か
ら自動演奏が再開される。
【0080】次いで、リピートスイッチ138のイベン
トがあるかどうかが調べられる(ステップS40)。こ
れは、パネルイベントマップ中のリピートスイッチ13
8に対応するビットが「1」であるかどうかを調べるこ
とにより行われる。ここでリピートスイッチ138のイ
ベントがあることが判断されるとリピート処理が行われ
(ステップS41)、そうでなければリピート処理はス
キップされる。リピート処理では、RAM12に定義さ
れたリピートフラグが「0」であればリピートフラグが
「1」にセットされると共に、LED表示器146が点
灯される。逆に、リピートフラグが「1」であればリピ
ートフラグが「0」にクリアされ、LED表示器145
が消灯される。これにより、詳細は図示されていない
が、1曲分のパターンデータの読み出しが終了した場合
に、リピートフラグが「1」であれば自動演奏のシーケ
ンスは曲の先頭に戻り、同じ自動演奏が繰り返し実行さ
れる。一方、リピートフラグが「0」であれば自動演奏
は停止される。
【0081】次いで、パートスイッチ139〜142の
イベントであるかどうかが調べられる(ステップS4
2)。これは、パネルイベントマップ中のパートスイッ
チ139〜142に対応するビットが「1」であるかど
うかを調べることにより行われる。ここでパートスイッ
チ139〜142のイベントがあることが判断されると
パート1〜4切換処理が行われ(ステップS43)、そ
うでなければパート1〜4切換処理はスキップされる。
その後、このパネル制御処理ルーチンからリターンして
メインルーチンに戻る。上記パート1〜4切換処理の詳
細については後述する。
【0082】(4)MIDI−IN処理(図6及び図
7) このMIDI−IN処理ルーチンはメインルーチンから
一定周期でコールされる。MIDI−IN処理では、先
ず、受信バッファから1つのMIDIメッセージが取り
出され、それに含まれるMIDIチャンネル番号が
「1」、つまりロワー鍵のデータであるかどうかが調べ
られる(ステップS50)。これは、MIDIメッセー
ジの第1バイト目の下位4ビットにあるチャンネル番号
を調べることにより行われる。ここで、チャンネル番号
が「1」でないことが判断されるとステップS67へ分
岐し、MIDIデータに基づく発音処理が行われる。一
方、チャンネル番号が「1」、つまりロワー鍵のデータ
である旨が判断されるとキービットマップが作成される
(ステップS51)。キービットマップは、全鍵のオン
又はオフ状態をそれぞれ「1」又は「0」に対応させて
成るデータである。
【0083】次いで、コード検出処理が行われる(ステ
ップS52)。即ち、上記で作成されたキービットマッ
プを使用してコード検出処理が行われ、コードタイプ及
びコードルートが検出される。このコード検出は周知の
種々の方法を用いて行うことができる。ここで検出され
たコードは、新コードとしてRAM12の新コード領域
に格納される。また、ここで検出されたコードタイプ及
びコードルートはコード表示器131に送られて表示さ
れる。
【0084】次いで、コード変化があったかどうかが調
べられる(ステップS53)。これは、前回のコード検
出処理で検出されてRAM12の旧コード領域に格納さ
れている旧コードと上記新コードとを比較することによ
り行われる。そして、コードの変化がなかったことが判
断されると、このMIDI−IN処理ルーチンからリタ
ーンしてメインルーチンに戻る。即ち、コードタイプ及
びコードルートが変化しないようなMIDIメッセージ
が入力されても自動演奏状態は変化しない。一方、コー
ドの変化があったことが判断されると、ステップS54
以下のコード変化に対応する処理が行われる。
【0085】本実施例の自動演奏装置は、コード変化が
あった場合に、単にコード構成音が変化するだけでな
く、演奏パターンも変化するという構成を有するものと
する。例えばメジャーのコードとマイナーのコードとで
は演奏パターンが異なる。検出されたコードに応じて演
奏パターンを変化させる機能を実現するために、コード
タイプ毎のパターンデータ、例えばメジャーコードのパ
ターンデータとマイナーコードのパターンデータは常時
RAM12から読み出されており、何れのパターンデー
タを用いるかは、検出されたコードタイプにより決定さ
れる。
【0086】コードが変化した時の発音処理の動作の概
要を図17に示す。図17においては、時刻TAでCメ
ジャーからCマイナーにコードが変化した場合を示して
おり、太線で囲まれた部分はパターンデータの読み出し
が行われることを示し、その中の斜線部は読み出された
パターンデータに基づいて発音が行われることを示して
いる。
【0087】時刻TA以前では、Cメジャーを構成する
音(キー1、2、3)がメジャーの演奏パターンで発音
されており、Cマイナーを構成する音(キー1、4、
5)はマイナーの演奏パターンでパターンデータが読み
出されているだけである。そして、時刻TAで新たなコ
ードであるCマイナーが検出されると、それ以後はCマ
イナーを構成する音(キー1、4、5)がマイナーの演
奏パターンで発音される。なお、図17は、時刻TAで
は、それまで押されていたキー2及びキー3が離され、
新たにキー4及びキー5が押され、それまで押されてい
たキー1は引き続き押されている状態を示している。
【0088】時刻TA直後の一定時間TRにおいては次
のように処理される。即ち、コード変化が検出されれ
ば、発音中の音は直ちに停止される(図17のキー1及
びキー2参照)。コード変化後のコード構成音のうち、
コード変化が検出されてから一定時間TR内に発音を終
了する音であっても、前のコードで発音されているもの
は発音が継続される(図17のキー1参照)。コード変
化が検出されてから一定時間TR内に発音を終了する音
であって、前のコードで発音されていないものは新たな
発音が開始されない(図17のキー4参照)。コード変
化が検出されてから一定時間TR内に発音を終了しない
音であれば、新たに発音が開始される(図17のキー5
参照)。
【0089】かかる処理が行われることにより、例えば
図17のキー4のように、コード変化に応じて発音すべ
き音であるが短時間で発音が停止されるものには発音が
割り当てられない。このように、短時間で消滅する音に
発音を割り当てなくても聴感上全く問題はなく、一方、
CPU10がチャンネル割り当て処理に要する時間が節
約されてCPU10の負担が軽減されるという利点があ
る。
【0090】図6の説明に戻る。ステップS54以下の
コード変化に対する処理において、上述した機能が実現
されている。先ず、パート番号が「n=2」に初期設定
される(ステップS54)。これは、パート1はリズム
パートでありコード変化とは無関係であるので、パート
2〜4に対してのみ処理を行うためのパート番号の初期
化である。
【0091】次いで、パートnの新パターンのキーコー
ドが生成される(ステップS55)。即ち、ステップS
52で検出されたコードタイプ及びコードルートからコ
ード構成音のキーコード(以下、「新キーコード」とい
う。)が生成される。図17に示した例でいえば、キー
1、キー4及びキー5に対応した3つの新キーコードが
生成される。次いで、パートnの新パターンの残存ゲー
トタイムが生成される(ステップS56)。残存ゲート
タイムは、新パターンのパターンデータに含まれるステ
ップタイムとゲートタイムとから算出される発音の終了
時刻と現在の拍レジスタBTRの内容とから算出され
る。
【0092】次いで、パートnの新パターンの補正ベロ
シティの生成が行われる(ステップS57)。この補正
ベロシティ生成の詳細については、図8のフローチャー
トに示されている。補正ベロシティ生成処理では、先
ず、補正レートVAnの読み出しが行われる(ステップ
S70)。即ち、小節レジスタBRRと拍レジスタBT
Rとの内容をアドレスとしてRAM12のベロシティ補
正データ中の対応する位置から補正レートVAnが読み
出される。次いで、この読み出された補正レートVAn
とその時点のベロシティVELO(パターンデータ中の
ベロシティデータ)とが乗算され、補正ベロシティVL
Anが生成される(ステップS71)。
【0093】次いで、上記乗算の結果が127より大き
いかどうかが調べられ(ステップS72)、127より
大きければ127が新しい補正ベロシティVLAnとさ
れ(ステップS73)、そうでなければステップS73
はスキップされて乗算結果がそのまま新しい補正ベロシ
ティVLAnとされる。その後、この補正ベロシティ生
成ルーチンからリターンしてMIDI−IN処理ルーチ
ンに戻る。以上説明したMIDI−IN処理ルーチンの
ステップS55〜57の処理により、新たなパターンの
コード構成音(図17に示した例でいえば、キー1、キ
ー4及びキー5のそれぞれ)に対応するキーコード、残
存ゲートタイム及び補正ベロシティの作成が完了する。
【0094】次いで、レジスタ群nの比較処理及び発音
継続/消音処理が行われる(ステップS58、S5
9)。即ち、レジスタ群nにキーオン状態で格納されて
いるキーコードと新キーコードとが比較され、レジスタ
群n中に一致するキーコードが発見されれば、そのキー
コードに対しては何等の処理も行われない。従って、発
音が継続されることになる。これは、図17のキー1の
ケースに対応する処理である。一方、上記の比較におい
て、コード検出前のコード構成音であったがコード検出
後にコード構成音でなくなったキーコードに対しては、
レジスタ群n中の対応するキーコードのオン/オフビッ
トが「0」にクリアされ、キーオフ出力が行われる。こ
こに、「キーオフ出力」とは、楽音発生器14に所定の
データを送出し、現在のエンベロープよりも格段に高速
なリリースエンベロープに置き換えて発音を終了させる
一連の処理をいい、以下においても同じである。これ
は、図17のキー2及びキー3のケースに対応する処理
である。
【0095】次いで、新規発生キーコードであるかどう
かが調べられる(ステップS60)。即ち、新キーコー
ドは、コード検出前のコード構成音でなくコード検出後
に新たにコード構成音となったキーコードであるかどう
かが調べられる。ここで、新規発生キーコードであるこ
とが判断されると、そのキーコードに対応する残存ゲー
トタイムは所定値TR以上であるかどうかが調べられる
(ステップS61)。そして、所定値TR以上であるこ
とが判断されると、レジスタ群nへの格納処理が行われ
る(ステップS62)。即ち、オン/オフビットが
「1」にセットされた新規発生キーコード、残存ゲート
タイム及び補正ベロシティがレジスタ群nの中の1つの
ブロックに格納される。この際、格納に使用されるブロ
ックは、オン/オフビットが「0」になっているブロッ
クである。次いで、キーオン出力が行われる(ステップ
S63)。ここに、「キーオン出力」とは、楽音発生器
14に所定のデータ(キーコード、ベロシティ等)を送
出し、発音を開始させる一連の処理をいい、以下におい
ても同じである。この際、ベロシティとして補正ベロシ
ティが出力されるので、補正後のベロシティでそのキー
コードに対応する発音が行われる。これは、図17のキ
ー5のケースに対応する処理である。その後、ステップ
S65に進む。
【0096】一方、上記ステップS60で新規発生キー
コードでないことが判断された場合は、既に発音してい
るキーコードであるので何等の処理も行わずにステップ
S65に分岐する。これは、図17のキー1のケースに
対応する処理である。また、上記ステップS61で、残
存ゲートタイムは所定値TR以上でないことが判断され
ると、残存ゲートタイムとして「1」が設定される(ス
テップS64)。これにより、次回にタイマ割込が発生
した際に、後述するタイマ割込処理ルーチンで残存ゲー
トタイムがデクリメントされてゼロになると共に、キー
オフ出力が行われて発音中の音は消音される。これは、
図17のキー4のケースに対応する処理である。その
後、ステップS65に進む。
【0097】ステップS65ではパート番号nがインク
リメントされ、その結果が5以上になったかどうか、つ
まりパート4までの処理が完了したかどうかが調べられ
る(ステップS66)。そして、5以上でないことが判
断されたならステップS55に戻り、再度上述したと同
様の処理が繰り返される。一方、5以上であることが判
断されると、つまりパート4までの処理が完了したこと
が判断されると、このMIDI−IN処理ルーチンから
リターンしてメインルーチンに戻る。
【0098】(5)パート1〜4読出処理(図9及び図
10) パート1〜4読出処理は、メインルーチンから周期的に
コールされる。このパート1〜4読出処理では、先ず、
パート番号が「n=1」に初期化される(ステップS8
0)。即ち、このパート1〜4読出処理では、各パート
1〜4に対応するパターンデータの読出処理が行われる
ことになる。次いで、ステップ補正値SAnの読み出し
が行われる(ステップS81)。即ち、小節レジスタB
RRと拍レジスタBTRとの内容をアドレスとしてRA
M12のステップタイム補正データ中から対応する補正
データSAnが読み出される。なお、ステップタイム補
正データは4分音符単位で格納されているので、上記の
アドレスとしては小節/拍表示器130に表示される値
と同じ値が用いられ、拍レジスタBTRの内容の下位の
所定ビットは無視される。
【0099】次いで、拍レジスタBTRの内容に補正デ
ータSAnが加算されてパートn用拍レジスタBTRn
に格納される(ステップS82)。次いで、上記加算の
結果(パートn用拍レジスタBTRnの内容)が「0」
より小さいかどうかが調べられる(ステップS83)。
ここで、「0」より小さいことが判断されるとパートn
用拍レジスタBTRnの内容に「192」が加えられて
パートn用拍レジスタBTRnに格納され(ステップS
84)、次いで、小節レジスタBRRの内容がデクリメ
ントされてパートn用小節レジスタBRRnに格納され
る(ステップS85)。上記ステップS84及びS85
の処理により、パートnのステップタイム補正により得
られた拍レジスタBTRの内容が正になるように変換さ
れている。その後、ステップS90へ分岐する。
【0100】上記ステップS83で加算結果が「0」よ
り小さくないことが判断されると、上記加算の結果(パ
ートn用拍レジスタBTRnの内容)が「192」以上
かどうかが調べられる(ステップS86)。ここで、
「192」以上であることが判断されるとパートn用拍
レジスタBTRnの内容から「192」が減算されてパ
ートn用拍レジスタBTRnに格納され(ステップS8
7)、次いで、小節レジスタBRRの内容がインクリメ
ントされてパートn用小節レジスタBRRnに格納され
る(ステップS88)。上記ステップS87及びS88
の処理により、パートnのステップタイム補正により拍
レジスタBTRの内容が1小節分(192ステップ)を
越えた場合に、1小節の範囲内となるように変換されて
いる。その後、ステップS90へ分岐する。
【0101】上記ステップS83で加算結果が「19
2」以上でない、つまり「0≦パートn用拍レジスタB
TRnの内容<192」であることが判断されると、小
節レジスタBRRの内容がパートn用小節レジスタBR
Rnに格納される(ステップS89)。この場合、パー
トn用拍レジスタBTRnの内容は、ステップS82で
セットしたものがそのまま用いられる。その後、ステッ
プS90に進む。
【0102】以上の処理でステップタイム補正が完了す
ると、次いで、パートnのパターンデータ中から未発音
のデータが検索される(ステップS90)。即ち、パー
トn用小節レジスタBRRnの内容で示される小節に含
まれるパターンデータの中で、ステップタイムがパート
n用拍レジスタBTRnの内容よりも小さいか又は同一
のものが検索される。次いで、検索されたパターンデー
タ中のキーコード(KCOD)、ゲートタイム(GTI
M)及びベロシティ(VELO)が読み出される(ステ
ップS91)。
【0103】次いで、パートnの補正ベロシティが生成
される(ステップS92)。この処理は、図8を参照し
て既に説明したものと同じである。次いで、パートnに
対応するレジスタ群nの更新が行われる(ステップS9
3)。即ち、キーコード(KCOD)、ゲートタイム
(GTIM)及び補正ベロシティ(VLAn)がレジス
タ群nの中の1つに格納される。
【0104】次いで、当該パートnがオン、つまりパー
トnに対応するパートスイッチ139〜142の何れか
が押されているかどうかが調べられ(ステップS9
4)、押されていることが判断されると、キーオン出力
が行われる(ステップS95)。これにより、ステップ
タイム及びベロシティが補正された発音が行われること
になる。一方、パートスイッチが押されていないことが
判断されると、ステップS95はスキップされる。従っ
て、この場合は、パターンデータの読み出しのみが行わ
れることになる。
【0105】次いで、パート番号nがインクリメントさ
れ(ステップS96)、その結果が5以上でなければス
テップS81に戻って次のパートに対する読出処理が行
われ、5以上であれば全パートに対する処理が終了した
ことを認識してこのパート1〜4読出処理ルーチンから
リターンしてメインルーチンに戻る。
【0106】(6)パート1〜4切換処理(図11) 次に、パネル制御処理ルーチンのステップS43で行わ
れるパートの切換処理について説明する。このパート切
換処理は、パートスイッチ139〜142が押された時
に、当該パートの発音を開始し又は停止する処理であ
る。本実施例の自動演奏装置では、既に説明したよう
に、パート1〜4のパターンデータは常に読み出されて
おり、読み出されたパターンデータに基づいて発音が行
われるかどうかは、パートスイッチ139〜142がオ
ンにされているかどうかによって決定される。
【0107】パートスイッチがオンに変化した時の動作
の概要を図18に示す。図18においては、時刻TBで
パートスイッチnがオンに変化した場合の動作状態を示
しており、太線で囲まれ部分はパターンデータの読み出
しが行われることを、その中の斜線部は読み出されたパ
ターンデータに基づいて発音が行われることをそれぞれ
示している。
【0108】図18の例では、パートスイッチnがオン
にされた時に、キー1及びキー2はオフ状態であるため
発音されない。キー3及びキー4はオン状態であるが、
キー3については、パートスイッチnのオン変化が検出
されてから一定時間TR内に発音が終了するので、換言
すれば、残存ゲートタイムが所定時間TR未満であるの
で発音は行われない。キー4については残存ゲートタイ
ムが所定時間TR以上であるので発音が開始される。
【0109】このような処理を行うことにより、例えば
図18のキー3のように、パートスイッチnのオン変化
に応じて発音すべき音であるが短時間で発音が終了する
ものは発音が開始されない。かかる短時間で消滅する音
に発音を割り当てなくても聴感上全く問題はなく、一
方、CPU10がチャンネル割り当て処理に要する時間
が節約されてCPU10の負担が軽減されるという利点
がある。
【0110】以上の機能を実現するために、パート切換
処理では、先ず、パート番号が「n=1」に初期化され
る(ステップS100)。次いで、パートnのパートス
イッチのイベントがあったかどうかが調べられる(ステ
ップS101)。これは、パネルイベントマップ中のパ
ートnのパートスイッチ139〜142に対応するビッ
トが「1」であるかどうかを調べることにより行われ
る。ここでイベントがないことが判断されるとステップ
S108へ分岐する。一方、パートnのパートスイッチ
のイベントがあったことが判断されると、次いで、その
イベントはオンイベントであるかどうかが調べられる
(ステップS102)。これは、新パネルデータ中のパ
ートnのパートスイッチ139〜142に対応するビッ
トが「1」であるかどうかを調べることにより行われ
る。
【0111】ここでオンイベントであることが判断され
ると、レジスタ群nの残存ゲートタイムの読み出しが行
われる(ステップS103)。即ち、レジスタ群nにキ
ーオン状態で格納されているキーコードの残存ゲートタ
イムが読み出される。この際、補正ベロシティも読み出
される。次いで、残存ゲートタイムが所定時間TR以上
であるかどうかが調べられ(ステップS104)、所定
時間以上であることが判断されると、キーオン出力が行
われる(ステップS105)。この際、補正ベロシティ
も出力される。これにより、パートnのパターンデータ
に基づく発音が開始される。これは、図18のキー4の
ケースに対応する処理である。
【0112】一方、残存ゲートタイムが所定時間TR以
上でないことが判断されると、そのキーコードの残存ゲ
ートタイムが「0」に設定される(ステップS10
6)。これにより、発音は開始されない。このステップ
S104〜S106の処理により、残存ゲートタイムが
所定値TR以上であれば発音が行われ、所定値TRより
小さければ発音が抑止されるという機能が実現されてい
る。
【0113】上記イベント102でオフイベントである
ことが判断されると、パートnに対するキーオフ出力が
行われる(ステップS107)。即ち、レジスタ群nに
キーオン状態で格納されている全てのキーコードに対し
てキーオフ出力が行われる。これにより、パートnの発
音が停止される。その後ステップS108へ分岐する。
【0114】ステップS108では、パート番号nがイ
ンクリメントされ、その結果が5以上でなければステッ
プS101に戻って次のパートに対する切換処理が行わ
れ、5以上であれば全パートに対する処理が終了したこ
とを認識してこのパート1〜4切換処理ルーチンからリ
ターンしてメインルーチンに戻る。
【0115】(7)タイマ割込処理(図12) 次にタイマ割込処理ルーチンについて説明する。このタ
イマ割込処理ルーチンは、タイマ16から割込信号がC
PU10の割込信号入力端子INT2に供給されること
により起動される。従って、その時点で設定されている
テンポにおける1ステップタイムに対応する時間間隔で
このタイマ割込処理ルーチンが起動されることになる。
【0116】タイマ割込処理では、先ず、自動演奏フラ
グがオンになっているかどうかが調べられる(ステップ
S110)。即ち、本自動演奏装置が自動演奏状態にあ
るかどうかが調べられる。ここで自動演奏フラグがオン
であることが判断されると、拍レジスタBTRの内容が
インクリメントされ(ステップS111)、その結果が
「192」以上になったかどうかが調べられる(ステッ
プS112)。そして、「192」以上になったことが
判断されると、拍レジスタBTRがゼロにクリアされ
(ステップS113)、小節レジスタBRRがインクリ
メントされる(ステップS114)。上記ステップS1
12で「192」以上でないことが判断されると、ステ
ップS113及びS114の処理はスキップされる。上
記ステップS111〜S114の処理により、1ステッ
プタイム毎に小節レジスタBRRと拍レジスタBTRと
が連結された状態でインクリメントされる機能が実現さ
れている。
【0117】次いで、全パートのゲートタイムの更新が
行われる(ステップS115)。即ち、全パートのレジ
スタ群に含まれる残存ゲートタイムが「0」以外のもの
はデクリメントされる。そして、このデクリメントの結
果、新たにゼロになった残存ゲートタイムがあれば、そ
の残存ゲートタイムに対応するキーコードに対してキー
オフ出力が行われ発音が停止される。
【0118】上記ステップS110で自動演奏フラグが
オンでないことが判断されると、自動演奏中でないこと
が認識され、全パートのゲートタイムの更新のみが行わ
れる。その後、このタイマ割込処理ルーチンからリター
ンして割り込まれた位置に戻る。
【0119】以上説明したように、本実施例において
は、正規化されたパターンデータを数小節程度(例えば
2小節)だけRAM12に記憶しておく。一方、このパ
ターンデータとは別に、全小節分の揺らぎデータ、即ち
ステップタイム補正データ及びベロシティ補正データを
RAM12に記憶しておく。このステップタイム補正デ
ータ及びベロシティ補正データは、例えば、上記正規化
されたパターンデータに基づく演奏パターンと実際に演
奏者が演奏した演奏パターンとの差分から作成すること
ができる。
【0120】そして、小節レジスタBRR及び拍レジス
タBTRの内容に応じてRAM12から正規化されたパ
ターンデータを読み出すと共に、ステップタイム補正デ
ータ及びベロシティ補正データを読み出し、正規化され
たパターンデータをステップタイム補正データ及びベロ
シティ補正データを用いて補正し、この補正されたパタ
ーンデータに基づき発音するようにしている。
【0121】かかる構成により正規化されたパターンデ
ータのみに基づく発音に見られるような機械的な演奏パ
ターンというイメージが払拭でき、しかもステップタイ
ム補正データ及びベロシティ補正データとして、例え
ば、上記正規化されたパターンデータに基づく演奏パタ
ーンと実際に演奏者が演奏した演奏パターンとの差分デ
ータを用いれば、人間の感情の周期にマッチした自動演
奏パターンを実現することができる。上記ステップタイ
ム補正データ及びベロシティ補正データを、特定の音楽
家が演奏した演奏パターンとの差分データで作成すれ
ば、「誰それ風の演奏」という自動演奏パターンを得る
ことができる。
【0122】また、従来のように、人間の感情の周期に
マッチした自動演奏パターンを実現するにあたり1曲の
全小節分のパターンデータを作成する必要がないので、
少ない容量で例えばノリの良い自動演奏パターンを実現
できるという効果がある。
【0123】なお、上記においては、揺らぎのパラメー
タとして「ステップタイム」と「ベロシティ」を採り上
げて説明したが、「ゲートタイム」に関しても上述した
と同様の処理を行うことにより、上記同様の効果を得る
ことができる。
【0124】更に、図3の「その他の処理」(ステップ
S17)において、「テンポスピード」の揺らぎを再生
処理すれば、より生きた自動演奏を実現することができ
る。この際、テンポスピード補正データは、図15及び
図16の各補正データと同様に、多くの小節数に関して
予め記憶されており、選択された曲又はリズムスタイル
によって切換られる。
【0125】また、本実施例においては、全パートのパ
ターンデータを小節レジスタBRR及び拍レジスタBT
Rの内容に従って順次読み出し、これから演奏データ
(キーコード、残存ゲートタイム及びベロシティ)を作
成してRAM12のレジスタ群nに記憶する。このレジ
スタ群nに記憶された演奏データのうち、パートスイッ
チで指示されたパートに対応する演奏データのみが発音
される。このレジスタ群nの内容は、発音の有無とは独
立に自動演奏の進行に応じてタイマ割込処理により更新
される。
【0126】自動演奏の途中で新たなパートの発音指示
がなされた場合は、レジスタ群nにキーオン状態で記憶
されている演奏データが既に発音開始タイミングを過ぎ
ていても、未だ消音タイミングに至らない音については
途中からであっても発音を開始する。これにより、演奏
者のパートスイッチ139〜142による指示タイミン
グが多少ずれる(遅れる)ことにより、本来発音される
べき音が発音されないという事態を回避できるので、演
奏者の意図したタイミングで特定パートの自動演奏を完
全な形で開始させることができる。
【0127】また、パートスイッチ139〜142で所
定のパートをオフにすべきことが指示された場合は、そ
のパートスイッチ139〜142に対応するパートで発
音中の音は全て速やかに発音を中止される。これは、例
えば、長いサスティンがかかっている音色やピアノ音で
ダンパーオンされているような場合でも、それらのエン
ベロープよりも格段に高速なリリースエンベロープに置
き換えて発音を終了させることにより実現される。
【0128】このように、特定パートの自動演奏を演奏
者の所望のタイミングで開始させ又は終了させることが
できるということは、パターンデータに基づく発音又は
消音のタイミングよりも細かいタイミングで、特定パー
トの自動演奏を行わせたり停止したりすることができる
ことを意味し、新たな演奏形態が可能になるという効果
がある。
【0129】また、新たなパートの発音指示がなされた
場合に、未だ消音タイミングに至っていないが、残りの
発音時間(残存ゲートタイム)が所定値TRより小さけ
れば発音を行わず、所定値以上の場合にのみ発音を行う
ようにしている。
【0130】これにより、発音されてもすぐに消音され
てしまうような、聴感には何等の影響を与えない音に対
しては、最初から発音されないので、CPUの負荷が軽
減される。従って、CPUは他の処理を実行することが
可能となるので、より効率の良い自動演奏装置を実現で
きる。
【0131】
【発明の効果】以上詳述したように、本発明によれば、
少ないメモリ容量で簡単に人間の感情の周期にマッチし
た自動演奏パターンを実現することのできる自動演奏装
置を提供することができる。また、自動演奏の途中から
でも特定パートの再生又は停止を行わせることのできる
自動演奏装置を提供することができる。
【図面の簡単な説明】
【図1】本発明の実施例の自動演奏装置の構成を示すブ
ロック図である。
【図2】本発明の実施例に使用される操作パネルの一例
を示す図である。
【図3】本発明の実施例の動作を示すフローチャート
(メインルーチン)である。
【図4】本発明の実施例の動作を示すフローチャート
(MIDI−IN割込処理ルーチン)である。
【図5】本発明の実施例の動作を示すフローチャート
(パネル制御処理ルーチン)である。
【図6】本発明の実施例の動作を示すフローチャート
(MIDI−IN処理ルーチン(その1))である。
【図7】本発明の実施例の動作を示すフローチャート
(MIDI−IN処理ルーチン(その2))である。
【図8】本発明の実施例の動作を示すフローチャート
(補正ベロシティ生成ルーチン)である。
【図9】本発明の実施例の動作を示すフローチャート
(パート1〜4読出処理ルーチン(その1))である。
【図10】本発明の実施例の動作を示すフローチャート
(パート1〜4読出処理ルーチン(その2))である。
【図11】本発明の実施例の動作を示すフローチャート
(パート1〜4切換処理ルーチン)である。
【図12】本発明の実施例の動作を示すフローチャート
(タイマ割込処理ルーチン)である。
【図13】本発明の実施例で使用する受信バッファの構
成を示す図である。
【図14】(A)は本発明の実施例で使用するレジスタ
群nの構成を示す図、(B)は本発明の実施例で使用す
るパターンデータの構成を示す図である。
【図15】本発明の実施例で使用するステップタイム補
正データを説明するための図である。
【図16】本発明の実施例で使用するベロシティ補正デ
ータを説明するための図である。
【図17】本発明の実施例においてコードが変化した時
の発音処理の動作を説明するための図である。
【図18】本発明の実施例においてパートスイッチがオ
ン変化した時の発音処理の動作を説明するための図であ
る。
【符号の説明】
10 CPU 11 ROM 12 RAM 13 操作パネル 14 楽音発生器 15 スピーカシステム 16 タイマ 17 MIDIコントローラ 18 FDコントローラ 19 フロッピーディスクドライブ装置 30 システムバス 130 小節/拍表示器 131 コード表示器 132 テンポスピード表示器 133 インクリメンタ 134 ストップスイッチ 135 プレイ/ポーズスイッチ 136 FFスイッチ 137 REWスイッチ 138 リピートスイッチ 139 パート1スイッチ 140 パート2スイッチ 141 パート3スイッチ 142 パート4スイッチ 143〜150 LED表示器

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 繰り返し演奏パターンを形成するための
    パターンデータを記憶したパターンデータ記憶手段と、 複数小節にまたがる揺らぎデータを記憶した揺らぎデー
    タ記憶手段と、 自動演奏の時間進行を管理する時間管理手段と、 該時間管理手段の内容に基づいて前記パターンデータ記
    憶手段からパターンデータを読み出すパターンデータ読
    出手段と、 前記時間管理手段の内容に基づいて前記揺らぎデータ記
    憶手段から揺らぎデータを読み出して前記パターンデー
    タ読出手段により読み出されたパターンデータの一部を
    補正する補正手段と、 該補正手段により補正されたパターンデータに基づいて
    発音する発音手段、 とを具備したことを特徴とする自動演奏装置。
  2. 【請求項2】 前記揺らぎデータは、ステップタイムで
    あることを特徴とする請求項1に記載の自動演奏装置。
  3. 【請求項3】 前記揺らぎデータは、ベロシティである
    ことを特徴とする請求項1に記載の自動演奏装置。
  4. 【請求項4】 複数パートのパターンデータを記憶した
    パターンデータ記憶手段と、 自動演奏の時間進行を管理する時間管理手段と、 該時間管理手段の内容に基づいて前記パターンデータ記
    憶手段に記憶された全パートのパターンデータを順次読
    み出すパターンデータ読出手段と、 該パターンデータ読出手段により読み出されたパターン
    データに基づいて作成された全パートの演奏データを記
    憶する演奏データ記憶手段と、 該演奏データ記憶手段に記憶された演奏データを自動演
    奏の進行に応じて更新する更新手段と、 各パートの発音を指示する指示手段と、 該指示手段により指示されたパートについてのみ発音す
    る発音手段とを有し、 前記発音手段は、前記指示手段により新たなパートの発
    音指示がなされた場合に、そのパートに対応する前記演
    奏データ記憶手段中の演奏データに基づき発音すること
    を特徴とする自動演奏装置。
  5. 【請求項5】 前記発音手段は、新たなパートの発音指
    示がなされた場合に、前記演奏データ記憶手段に記憶さ
    れている演奏データのうち、残りの発音時間が所定値以
    上のときにのみ新たに発音することを特徴とする請求項
    4に記載の自動演奏装置。
JP6224314A 1994-08-25 1994-08-25 自動演奏装置 Pending JPH0863159A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6224314A JPH0863159A (ja) 1994-08-25 1994-08-25 自動演奏装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6224314A JPH0863159A (ja) 1994-08-25 1994-08-25 自動演奏装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001309788A Division JP3609045B2 (ja) 2001-10-05 2001-10-05 自動演奏装置

Publications (1)

Publication Number Publication Date
JPH0863159A true JPH0863159A (ja) 1996-03-08

Family

ID=16811816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6224314A Pending JPH0863159A (ja) 1994-08-25 1994-08-25 自動演奏装置

Country Status (1)

Country Link
JP (1) JPH0863159A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007135859A1 (ja) * 2006-05-18 2007-11-29 Sega Corporation 射撃音制御方法、射撃音制御装置、射撃音制御プログラム、および、コンピュータ読み取り可能な記録媒体
JP2008197360A (ja) * 2007-02-13 2008-08-28 Crimson Technology Inc 電子装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007135859A1 (ja) * 2006-05-18 2007-11-29 Sega Corporation 射撃音制御方法、射撃音制御装置、射撃音制御プログラム、および、コンピュータ読み取り可能な記録媒体
JP2007307175A (ja) * 2006-05-18 2007-11-29 Sega Corp 射撃音制御方法
JP2008197360A (ja) * 2007-02-13 2008-08-28 Crimson Technology Inc 電子装置

Similar Documents

Publication Publication Date Title
US4413543A (en) Synchro start device for electronic musical instruments
JPH0876758A (ja) 自動伴奏装置
JP3609045B2 (ja) 自動演奏装置
US5430242A (en) Electronic musical instrument
JPH02131292A (ja) 自動演奏装置
JP3625914B2 (ja) アルペジエータ
JPH0863159A (ja) 自動演奏装置
JPH10149164A (ja) 自動アルペジオ演奏装置
JP4318194B2 (ja) 電子楽器の自動伴奏装置及び自動伴奏方法
JP3324881B2 (ja) 自動演奏装置
JP3625913B2 (ja) アルペジエータ
JP3902207B2 (ja) アルペジエータ
JP4214845B2 (ja) 自動アルペジオ装置および同装置に適用されるコンピュータプログラム
JP2570562B2 (ja) 自動演奏装置及び自動伴奏装置
JP3630266B2 (ja) 自動伴奏装置
JPH06242781A (ja) 電子楽器
JP2513308B2 (ja) 電子楽器
JP3385544B2 (ja) 自動演奏装置
JP3385545B2 (ja) 自動演奏装置
JPH0457094A (ja) 自動伴奏装置
JPH04360199A (ja) 自動演奏装置
JP2665854B2 (ja) 自動演奏装置
JP2962077B2 (ja) 電子楽器
JPH0746277B2 (ja) 楽音発生装置
JPH0830273A (ja) 電子楽器のテンポ設定装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20011030