JPH0812552B2 - 自動演奏装置付電子楽器 - Google Patents

自動演奏装置付電子楽器

Info

Publication number
JPH0812552B2
JPH0812552B2 JP61028922A JP2892286A JPH0812552B2 JP H0812552 B2 JPH0812552 B2 JP H0812552B2 JP 61028922 A JP61028922 A JP 61028922A JP 2892286 A JP2892286 A JP 2892286A JP H0812552 B2 JPH0812552 B2 JP H0812552B2
Authority
JP
Japan
Prior art keywords
chord
bass
note
information
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
JP61028922A
Other languages
English (en)
Other versions
JPS62187388A (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 JP61028922A priority Critical patent/JPH0812552B2/ja
Publication of JPS62187388A publication Critical patent/JPS62187388A/ja
Priority to US07/353,176 priority patent/US5070758A/en
Publication of JPH0812552B2 publication Critical patent/JPH0812552B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 以下の順序でこの発明を説明する。
産業上の利用分野 発明の概要 従来の技術 発明が解決しようとする問題点 問題点を解決するための手段 実施例の発明 第1図の電子楽器の構成説明 第1図の電子楽器の動作説明 1.メイン処理(第8図) 2.キーイベント処理(第9図) 3.パネルイベント処理(第10図) 4.ENTスイッチオン処理(第11図) 5.INC/DECスイッチオン処理(第11図) 6.TGLスイッチオン処理(第15図) 7.符長スイッチオン処理(第16図) 8.コード書込処理(第17図) 9.メモリ残量表示処理(第18図) 10.PREスイッチオン処理(第19図) 11.プリセットデータ書込処理(第20図) 12.プリセットイクスチェンジ処理(第21図) 13.SEQスイッチオン処理(第22図) 14.ラン/ストップ処理(第23図) 15.リズムセレクト処理(第24図) 16.テンポ割込処理(第25図) 17.ビートトップ処理(第26図) 18.シーケンサ読出処理(第27図) 19.プリセット読出処理(第28図) 20.符長変更処理(第29図) 実施例の変形例 発明の効果 [産業上の利用分野] この発明は、メモリ等の記憶手段に演奏者等が予め記
憶させた演奏データに基づいて自動演奏を行なう自動演
奏装置付の電子楽器に関し、特に、上記演奏データをリ
アルタイムで記憶させることができ、かつ同一の演奏デ
ータに必要な記憶容量をより少なくした自動演奏装置付
電子楽器に関する。
[発明の概要] この発明は、自動演奏装置付の電子楽器において、鍵
盤演奏における和音種類と鍵操作タイミングとを自動的
に検出することにより、この和音種類と鍵操作タイミン
グとのリアルタイム記録を可能にし、かつ複数の音符を
1つの和音種類データとして記憶させることにより、演
奏データとしての記憶容量の減少を図ったものである。
[従来の技術] 従来、電子楽器の自動演奏装置として、演奏データ記
憶モードの場合、鍵盤において押鍵または離鍵された鍵
の鍵名(音高)データと鍵操作状態の変化タイミングデ
ータとからなる演奏データを演奏データメモリに演奏順
に順次記憶し、また自動演奏モードの場合、前記演奏デ
ータメモリに記憶されている演奏データを順次読み出し
てこの演奏データに基づく楽音を発生するものが知られ
ている(特開昭58−205192号)。また、鍵盤や所定のス
イッチ等を用いて和音種類と符長(拍長)とを順次入力
(ステップライト)する、いわゆるコードシーケンサも
知られている。
[発明が解決しようとする問題点] しかし、前者は、例えば押鍵および離鍵された個々の
音高とその押鍵または離鍵のタイミングデータを順次記
憶するというように、演奏をそのまま記録してしまうの
で必要となる記憶容量が大きいという不都合があった。
また、後者はリアルタイムで記録することができない
ため、記録した演奏データを再生した場合、演奏者のイ
メージと異なる場合があるという不都合があった。
さらに、従来、分数コードを効率的に記憶し再現して
自動演奏を行なうことができるものがなく、自動演奏に
おける表現力に乏しいという欠点があった。
この発明の目的は、上述の従来形における問題点に鑑
み、演奏データを鍵盤演奏に基づいてリアルタイムで記
録することが可能で、かつ演奏データに必要な記憶容量
のより少ない自動演奏装置付きの電子楽器を提供するこ
とにある。
また、分数コードを効率的に記憶し再現できるように
して、自動演奏における表現力を向上させることを目的
とする。
[問題点を解決するための手段] 上記目的を達成するために本願の請求項1にかかる発
明では、和音の根音と種類を示す和音情報と、和音変更
タイミングを示す時間情報を曲の進行にしたがって順次
記憶しているとともに、少なくとも一部の和音情報にベ
ース音情報を含むことを示す識別情報と、ベース音の音
高を示すベース音情報を付随させて記憶している記憶手
段と、前記時間情報に基づいて前記記憶手段から順次デ
ータを読み出す読み出し手段と、読み出されたデータに
ついて、前記識別情報に基づいてベース音情報があるか
否かを検出する検出手段と、前記読み出し手段によって
読み出された和音情報に基づいて和音を和音演奏用音源
から発生させる和音発生手段(第25図509、LK・TG24)
と、前記検出手段によって読み出された和音情報に付随
するベース音情報があると検出された場合(第27図62
8)には、その和音情報に付随するベース音情報に基づ
く音名のベース音をベース音用音源から発生するととも
に、前記検出手段によって読み出された和音情報に付随
するベース音情報がないと判断された場合(第27図62
7)は、該和音情報の根音と同じ音名のベース音をベー
ス音用音源から発生するベース音発生手段(第25図51
0、PK・TG25)とを備えたことを特徴とする。
また、本願の請求項2にかかる発明は、和音を指定す
る和音指定部(LK)とベース音の音名を指定するベース
音指定部(PK)とを有する演奏操作子と、演奏操作子の
和音指定部の操作状態から操作が示す和音の根音と種類
を検出するとともに、ベース音指定部の操作状態からそ
の操作が示すベース音の音名を検出する和音検出手段
(第9図114)と、ベース音指定部で指定されたベース
音が前記和音検出手段によって検出された和音の根音と
異なる音名のベース音か否かを判断する判断手段(第17
図274)と、和音検出手段による和音検出に応じて、前
回の和音変化から今回の和音変化までの時間を計測する
計測手段(第26図 LENGTH CHG700)と、記憶手段(シ
ーケンサメモリ19)と、和音検出手段による和音検出に
応じて、該検出された和音の根音と種類を和音情報とし
て前記記憶手段に書き込むとともに、前記計測手段によ
って計測された時間を時間情報として前記記憶手段に書
き込む書込手段であって、前記検出された和音の根音と
同じ音名のベース音と前記判断手段によって判断された
ときには前記和音情報と時間情報を書き込み、前記検出
された和音の根音とベース音の異なる音名と前記判断手
段によって判断されたときには、前記検出されたベース
音の音高を表すベース音情報を、ベース音情報を含むこ
とを示す識別情報とともに前記検出された和音情報に付
随させて前記記憶手段に書き込むものと(第17図 27
2、273、275、276、277、278)を備えたことを特徴とす
る。
[実施例の説明] 以下、図面を用いてこの発明の実施例を説明する。
(第1図の電子楽器の全体構成説明) 第1図は、この発明の一実施例に係る電子楽器のハー
ドウエア構成を示す。この電子楽器は、中央処理装置
(CPU)11と、このCPU11に双方向バスライン12を介して
接続された上鍵盤(UK)13、下鍵盤(LK)14は、ペダル
鍵盤(PK)15、スイッチ群16、プログラムメモリ17、パ
ターンメモリ18、シーケンサメモリ19、変換テーブルメ
モリ20、ワーキングメモリ21、テンポ発生器22、ならび
に上鍵盤音発生用、下鍵盤音発生用、ペダル鍵盤音発生
用、リズミックコード音発生用およびリズム音発生用の
各トーンジェネレータ(TG)23,24,25,26,27等を備え、
通常の電子楽器としての鍵盤演奏機能を有する他、パタ
ーンメモリ18内に格納してある伴奏パターンおよびシー
ケンサメモリ19内に格納してある演奏データ(シーケン
サデータ;伴奏音データおよび操作パネルの設定状態を
表わすパネルデータ等)に基づいてリズミックコード等
の伴奏を自動演奏(再生)する機能や、上記パターンメ
モリ18内のリズムパターンに基づいてリズムを自動演奏
するオートリズム機能等を備えている。さらに、上記演
奏データを上記シーケンサメモリ19に記録する機能をも
有する。
この演奏データ記録モードとしては、下鍵盤14により
コード(和音)を、後述する第2図の符長スイッチ37〜
39により符長を、そして第2図のプリセット書込スイッ
チ36とプリセットスイッチ55〜70とにより上記パネルデ
ータが格納されているパネルメモリのナンバであるプリ
セットナンバを書き込んでいくステップ書込モードと、
下鍵盤14で演奏するだけで装置が自動的に演奏されたコ
ード種類およびその符長を検出して記録していくリアル
タイム書込モードとが用意されている。
なお、この電子楽器では、伴奏データをコード種類
(根音およびコードタイプ)で記録するようにしてお
り、伴奏データをコードの各構成音ごとに記録する従来
の電子楽器に比べて同一伴奏データについての上記パタ
ーンメモリ18の容量を節約してある。
また、上記伴奏データとパネルデータとをそれぞれ単
独で再生するモードも用意してある。
さらに、下鍵盤14のマニュアル演奏による楽音を形成
するための音源(LK・TG24)と自動伴奏音形成用の音源
(RC・TG26)とが別個に設けられており、音色を別個に
設定することができるようにしてある。
第1図において、CPU11は、各鍵盤13,14,15から出力
される鍵情報やスイッチ群16からのスイッチおよび操作
子情報を取り込んだり、これらの情報に基づく演奏処理
によって所定の楽音情報(発音開始、発音停止、音高お
よび音色等の情報)を形成したり、この楽音情報をトー
ンジェネレータ23,24,25,26,27に送出する等、この電子
楽器全体の動作を制御する。
スイッチ群16を構成する各スイッチおよび操作子はこ
の電子楽器の操作パネル(第2図)に配置されている。
第2図は、第1図の電子楽器の操作パネルの外観を示
す。同図において、マルチメニュー表示器31は液晶(LC
D)表示器からなり動作モード等を表示する。メニュー
切換スイッチ32,33,34およびトグルチェンジスイッチ35
はこの電子楽器の動作モードを切り換えるためのスイッ
チである。プリセット書込スイッチ36は、記録モード
時、演奏データ中に、所望のパネル状態が記憶されてい
るパネルメモリ(第6図)を指定するためのプリセット
ナンバを書き込む際に用いる。符長スイッチ37,38,39は
前記ステップ書込モードにおいて、それぞれ符長(1小
節、1/2小節および1/4小節)を指定するために用いられ
る。テンポ表示器40は演奏中またはステップ書込中の小
節番号および拍数を表示する。シーケンサスイッチ41は
パターンメモリ18内の演奏データに基づく伴奏およびパ
ネル状態をそれぞれ再生する(シーケンサモード)か否
か選択するためのものである。ラン/ストップスイッチ
42は上記伴奏およびパネル状態の再生、オートリズム演
奏ならびにリアルタイム書込動作を開始および停止させ
る際に用いられる。
この操作パネルには、さらに、オートリズム用の8個
のリズム種類選択スイッチ43〜50、各リズム種類におい
てバリエーションおよびフィルインパターンを選択する
ためのスイッチ51,52、演奏中に自動演奏をブレイクす
るためのスイッチ53およびフィルイン(アドリブ演奏導
入等)するためのスイッチ54、16個のパネルデータ指定
用プリセットスイッチ55〜70、ならびにパネルデータを
記憶させる際用いるためのメモリスイッチ71等が設けら
れている。
その他操作子80としては、リズム音量設定子、上記各
鍵盤13,14,15ごとの音色選択スイッチおよび音量設定
子、伴奏/リズム自動演奏用テンポ設定子、ならびにオ
ートベースコード、アルペジョコード、メロディオンコ
ード、再生音ビブラート、トレモロおよびサスティーン
の各設定スイッチ等が配置されている。
第3図は、第1図の電子楽器の動作メニュー系統図で
ある。本発明は自動演奏モードに関わるものであるた
め、ここでは大分類としてシーケンサモード(MENU=
1)だけを現わしてあるが、他のモードを設定すること
も可能である。第2図のメニュー切換スイッチ32〜34の
うち、ENTスイッチ31は押下するごとに第1図の電子楽
器の動作メニューが大分類のメニュー(MENU=1)から
中分類のメニュー(MENU=2または3)、中分類から小
分類(MENU=4〜9のいずれか1つ)、そして小分類か
ら大分類というように分類レベル(図では左側が上位)
が切り換わる。また、INCスイッチ32またはDECスイッチ
33を押下すると、第3図の同一分類レベル内で動作メニ
ューが切り換わる。この切換の様子は第12図のテーブル
に記憶させてある。第12図において、MENUの欄は現在の
動作メニュー、TBLEDの欄はENTスイッチ34を1回押下し
た後の動作モード、そして、TBLINCおよびTBLDECはそれ
ぞれINCスイッチ32およびDECスイッチ33を1回押下して
切り換えた後の動作メニューを示している。
第3図において、MENU=2は再生モードを一部分ずつ
切り換えるためのプレイモードチェンジで、自動伴奏
(コードシーケンサ)をオンオフすMENU=4、プリセッ
トシーケンサ(パネル状態を演奏データに従って設定す
る)をオンオフするMENU=5、自動演奏(シーケンサ)
の繰返しモードをオンオフするMENU=6、下鍵盤14の演
奏通りの音をリアルタイムで発音させるモードであるLK
イネーブルをオンオフするMENU=7からなる。また、ME
NU=3は記録モード、MENU=8はリアルタイム書込モー
ド、MENU=9はステップ書込モードである。
第2図のマルチメニュー表示部31には、切換え後の動
作モード、ならびに記録モード(MENU=8または9)に
おいてはシーケンサメモリの残量と下鍵盤14およびペダ
ル鍵盤15の押鍵により入力されたコード種類とが表示
(第3図における各枠内参照)される。
第1図を参照して、プログラムメモリ17はリードオン
リメモリ(ROM)により構成され、CPU11の制御プログラ
ムが格納されている。
パターンメモリ18は、伴奏パターンデータおよびリズ
ムパターンデータが格納されたROMである。リズムパタ
ーンはリズム種類(ナンバ)、バリエーションおよびフ
ィルイン別に、伴奏パターンはリズム種類、バリエーシ
ョン、フィルイン等およびコードタイプ別に用意されて
いる。
シーケンサメモリ19は、ランダムアクセスメモリ(RA
M)からなり、ユーザが前記書込モードにより所望の演
奏データを書き込むことができる。また、一部をROMで
構成してメーカ設定等による既設の演奏データを設ける
ようにしてもよい。
この演奏データは、第4図に示すような、1ワードが
3バイト長の分数和音(コード)データ、2バイト長
の通常和音(コード)データ、4バイト長のプリセッ
トデータならびに各1バイト長の無コード(休符)デー
タおよびエンドマークとを適宜組合わせたものである。
和音(コードおよびコード)データは、第1バイ
ト目がコード種類を表わす。コード種類データは、第5
図の対照図に示すように、上位4ビットがルート(根
音)データ、下位4ビットがコードタイプデータであ
る。ルートは、C,C#,…,A#,Bの12音名をそれぞれデ
ータ0〜BH(16進表示、以下、「」を付して16進表示
の数字であることを示す)に対応させ、コードタイプは
メジャ(M),シックス(6th),…の各タイプをそれ
ぞれデータ0〜FH(但し、FHはコード不成立)に対応さ
せてある。
コードの第2バイト目は、データ種類がベース音デ
ータであることを表わす4ビットの識別マークCHとベー
ス音用根音名を表わす4ビットデータ0〜BHとからな
る。ベース音用と和音(伴奏)用とは同じ根音名データ
を用いている。また、ベース音用根音名データとしての
FHは無ベース(ベース音を発音しないこと)を表わす。
コードの第3バイト目およびコードの第2バイト
目は、符長データの識別マークDHと符長データ1〜3H
からなる。符長データは1Hが1拍、2Hが2拍、3Hが1小
節(4拍)である。
プリセットデータは、第1バイト目がプリセットデー
タの先頭を示す識別マークF1H、第2バイト目の下位4
ビットがワーキングメモリ21内に設けられたパネルメモ
リ1〜16(プリセットスイッチ1〜16に対応)の1つを
指定するプリセットナンバ(プリセットスイッチ1〜16
に対応)0〜FH、第3バイト目がリズム操作子設定デー
タ、第4バイト目がプリセットデータの終りを示す識別
マークF6Hである。第3バイト目のリズム操作子設定デ
ータは、MSBが空白(不使用)ビットで、第2〜3の2
ビットがモードデータ(0:ノーマル、1:フィルイン、2:
ブレーク)、第4および5ビットがそれぞれフィルイン
バリエーションおよびバリエーションの設定フラグ、第
6〜8の3ビットがリズムナンバデータである。
第1図において、変換テーブル20にはCPU11が各種の
演算処理を行なう際のデータ変換を行なう際使用する各
種テーブル、例えば前述した第12図のメニュー切換用テ
ーブルが格納されている。
第1図のワーキングメモリ21は、CPU11が上記制御プ
ログラムを実行する際に発生する各種のデータを一時記
憶するためのもので、例えばランダムアクセスメモリ
(RAM)からなり、パネルメモリエリアや、各種レジス
タ、フラグおよびバッファ等のレジスタ類が設けられて
いる。
パネルメモリエリアは、第6図に示すように、操作パ
ネル(第2図)上の各スイッチおよび操作子の状態を記
憶する同一フォーマットの33個のエリア、すなわち現パ
ネル状態バッファCURRENTとノーマル用プリセットRRENi
(i=1〜16)およびシーケンサ用プリセットPRESi
(i=1〜16)の各メモリエリアからなる。ここでは、
ノーマル(シーケンサオフ)モード(SEQ=0)時とシ
ーケンサモード(SEQ=1)時とで異なるエリアPRENiお
よびPRESiを用いることにより、シーケンサを組んだ時
のパネル状態が再現できるようにしている。これは、2
組用意しないとプリセットの書き換えをした時、もとの
パネル状態を再現できないからである。一方、シーケン
サ中のプリセットの内容を変更したい場合は、第2図の
スイッチ41によりシーケンサモードをオンして(SEQ=
1として)プリセットを所望のものに書き直せばよい。
ワーキングメモリ21内に設けられているレジスタ類と
しては下記のものがある。下記において各レジスタ類は
特に断わらない限りその内容(データ等)で示してあ
る。
RUN:ランフラグ リズム走行状態(1/0) TCL:テンポクロック 0〜47 BAR:小節数 1〜255 BEAT:拍数 1〜4 CNT:シーケンサ用拍カウンタ 1〜4 ROOT:根音 0〜11(C,C#,…,B) PROOT:ベース音用根音 0〜11 TYPE:コードタイプ 0〜FH MODE:0 ノーマル 1 プレイモードチェンジ 2 リアルタイム書込 3 ステップ書込 MENU:第3図のマルチメニューの現在位置 1〜9 FLAGi:i=1 コードシーケンス i=2 プリセットシーケンス i=3 リピート i=4 下鍵盤演奏音可能化 の各モードのフラグ オン(=1) オフ(=0) LEN:シーケンサの符長データ D1H〜D3H LENGTH:シーケンサ符長データLENの下位4ビット 1〜
3 DT,DEC:拍数演算の制御変数(1,2,4) BRANCH:シーケンサのデータ属性記号 LONG:シーケンサのコードが分数コード (=1)か否か(=0)か SEQ:シーケンサオン(=1)/オフ(=0) CHDCHG:コードが変化したことを示すフラグ PRECHG:プリセットが変化したことを示すフラグ SEQPNT:シーケンサのアドレスポインタ REMAIN:シーケンサの残り容量 0〜200(×10バイト) PRENO:最終的にセットしたプリセットのナンバ 0〜15(スイッチ上では1〜16) PHYNO:リズムナンバ 0〜7 (スイッチ上では1〜8) PHYBUF:リズム情報バッファ(第7図参照) 第4図のプリセットデータの第3バイト目と同一フォー
マット テンポ発生器22は、例えば周波数可変の発振器、ある
いは周波数固定の発振器とこの発振器出力を分周してテ
ンポクロックを作成する分周率可変の分周器等で構成さ
れ、1拍(4分音符)の1/12周期のテンポクロックを発
生する。テンポクロックの周期は、操作面に配置されて
いる図示しないテンポ設定子(ボリウムまたはスイッチ
等)により可変される。
上鍵盤音発生用トーンジェネレータ(UK・TG)23は、
上鍵盤13の操作に応じてメロディ演奏音信号を形成す
る。下鍵盤音発生用トーンジェネレータ(LK・TG)24
は、下鍵盤14の演奏に応じて持続音による伴奏音信号を
形成する。ペダル鍵盤音発生用トーンジェネレータ(PK
・TG)25は、ペダル鍵盤15の押鍵音と、上記テンポクロ
ックにより定まるテンポでシーケンスメモリ19から順次
読み出される演奏データ(コードおよびコード
と、パターンメモリ18から順次読み出される伴奏パター
ンとに応じてベース音信号を形成する。リズミックコー
ド発生用トーンジェネレータ(RC・TG)26は、上記演奏
データにより指定される和音を上記伴奏パターンで刻ん
だリズミックコード音信号を形成する。リズム音発生用
トーンジェネレータ(RHY・TG)27は、上記パターンメ
モリ18から伴奏パターンとともに順次読み出されるリズ
ムパターンに応じたリズム音信号を形成する。
これらの各トーンジェネレータ23〜27で形成された信
号は、図示しないサウンドシステムに供給され、ここで
音響的にミキシングされ発音される。
なお、この電子楽器においては、下鍵盤14の演奏音信
号を形成するためのトーンジェネレータ24と、自動伴奏
音信号を形成するためのトーンジェネレータ26とを別個
に設けてあり、これにより、鍵盤による伴奏者と自動演
奏による伴奏音とを独立の音色で同時に発音させること
を可能にし、より変化に富んだ演奏を行なえるようにし
てある。
(第1図の電子楽器の動作説明) 次に、第8〜11および13〜27図のフローチャートを参
照しながら第1図の電子楽器の動作を説明する。
1.メイン処理 第8図を参照して、この電子楽器に電源が投入される
と、CPU11はプログラムメモリ17に格納された制御プロ
グラムに従って動作を開始する(ステップ100)。ステ
ップ101でワーキングメモリ21内のモードレジスタMODE
をクリアし、メニュー番号レジスタMENUEを1にセット
し、さらに初期メニュー(例えば第3図のMENU=1)を
メニュー表示器31に表示をする等、装置全体をイニシァ
ライズした後、ステップ102,103およびステップ110,150
からなるメインルーチンの動作を実行する。
すなわち、まず、ステップ102においては、鍵盤13〜1
5の出力を検査していずれかの鍵の状態が変化した(キ
ーイベント有り)か否かを判定する。もし、キーイベン
ト有りなら第9図のキーイベント処理(ステップ110)
を実行した後、ステップ103へ進む。キーイベント無し
なら、直接ステップ103へ分岐する。ステップ103では操
作パネルの各スイッチ31〜71および操作子を走査してい
ずれかのスイッチ31〜71または操作子の状態が変化した
(パネルイベント有り)か否かを判定する。もし、パネ
ルイベント有りなら第10図のパネルイベント処理(ステ
ップ150)を実行した後、ステップ102へ戻り、さらにス
テップ102以下の上記動作を繰返す。パネルイベント無
しなら、直接ステップ102へ戻る。
2.キーイベント処理 第9図を参照して、ステップ111では上記キーイベン
トが下鍵盤14およびペダル鍵盤15の操作によるものか否
かを判定する。もし“否”であれば、上鍵盤13が操作さ
れたのであるからステップ112でイベント種類に応じてU
K・TG23のキーオンまたはキーオフ処理を実行した後、
メイン処理(第8図のステップ103)に戻る。このステ
ップ112の処理により、上鍵盤13における押鍵操作(マ
ニュアル演奏)通りのメロディ音が発音される。
上記ステップ111の判定で、上記キーイベントが下鍵
盤14およびペダル鍵盤15のいずれかの操作によるもので
あれば、ステップ113で現在の動作モードか記録モード
であるか再生モードであるかを判定する。もし、記録モ
ードであれば、ステップ114に進んで下鍵盤14の押鍵状
態からコード種類を検出し、根音を根音レジスタROOT
に、コードタイプをコードタイプレジスタTYPEに格納す
る。さらにペダル鍵盤15で押鍵中の音をペダル根音レジ
スタPROOTに格納する。なお、この時ペダル鍵盤15で押
鍵中の音が無ければレジスタROOT内の根音データをレジ
スタPROOTに格納する(ステップ115,116)。次のステッ
プ117で、マルチメニュー表示器31にコード種類を表示
し(第3図のMENU=9の表示例参照)、ステップ118でL
K・TG24およびPK・TG25のキーオン/キーオフ処理、す
なわち下鍵盤14およびペダル鍵盤15の押鍵音のキー処理
を行なう。さらに、ステップ119でリアルタイム書込モ
ードかステップ書込モードかを判定し、ステップ書込モ
ードであればそのまま、リアルタイム書込モードであれ
ばステップ120でコードチェンジフラグCHDCHGをセット
した後、メイン処理(第8図のステップ103)に戻る。
上記ステップ113の判定が再生モードであるときは、
ステップ131でシーケンサフラグSEQを検査し、シーケン
サオン(SEQ=1)であればステップ132でさらにコード
シーケンスフラグFLAG1を検査する。そして、SEQ=0
(ノーマルプレイモード)であるか、SEQ=1であって
もプリセットシーケンスのみがオンしてコードシーケン
ス(自動伴奏)は行なわないモード(FLAG1=0)であ
れば、ステップ134に進んで下鍵盤14の押鍵状態からコ
ード種類を検出し、根音を根音レジスタROOTに、コード
タイプをコードタイプレジスタTYPEに格納し、かつペダ
ル鍵盤15で押鍵中の音をペダル根音レジスタPROOTに格
納した後、ステップ135でLK・TG24およびPK・TG25のキ
ーオン/キーオフ処理を行なう。すなわち、下鍵盤14の
押鍵通りの伴奏音、および下鍵盤14による和音タイプと
ペダル鍵盤15で押鍵された根音によるベース音を発音さ
せる。
一方、ステップ131,132においてSEQ=1,FLAG1=1
(コードシーケンスオン)であれば、ステップ136に進
んでLKイネーブルモードがオン(FLAG4=1)している
か否かを検査し、LKイネーブルモードがオフ(FLAG4
0)であればステップ137でさらに自動演奏が走ってい
る(RUN=1)か否かを検査する。そして、LKイネーブ
ルがオン、すなわち下鍵盤による演奏音を発音するモー
ドであるか、LKイネーブルはオフであっても自動演奏が
停止中であれば、前記ステップ135に進んで下鍵盤14の
演奏通りに発音させる。また、LKイネーブルオフで、か
つ自動演奏が走行中であれば、発音処理を行なうことな
くメイン処理(第8図ステップ103)に戻る。すなわ
ち、この場合は伴奏(下鍵盤)音としてリズミックコー
ドのみが発音される。
3.パネルイベント処理 第8図のステップ103においてパネルイベントが検出
されたときは、第10図のパネルイベント処理を実行す
る。すなわち、ステップ151〜160の各ステップでどのス
イッチ31〜71または操作子80が操作されたかを判別し、
操作されたスイッチまたは操作子に応じた処理を実行す
る。
4.ENTスイッチオン処理 ENTスイッチ34がオンされると、処理は第10図のステ
ップ151から第11図のステップ200に移る。ステップ201
では自動演奏中か否かを検査する。もし、自動演奏中で
あれば、自動演奏中に演奏モードを切り換えると演奏に
悪影響を及ぼすおそれがあるから、このENTスイッチ34
の操作は誤操作として無視する。すなわち何らの処理も
行なうことなくメイン処理(第8図ステップ102)に戻
る。
一方、自動演奏中でなければ、ステップ202でメニュ
ーナンバレジスタMENUの内容をメニュー切換テーブル
(第12図)のデータTBLEDに変更する。このテーブル
は、第3図を用いて前述した動作モード切換えが行なわ
れるように作成されており、元のメニューMENUが1であ
ればENTスイッチ34のオンにより新メニューはTBLEDの値
であるメニュー2に、そして旧メニュー2は、4、3は
8、4〜9は1に切り換わる。
続いて、第13図のステップ220〜229で、レジスタMENU
の内容に応じてシーケンサフラグSEQおよびモードナン
バレジスタMODEの内容を変更する。つまり、ステップ22
1〜224で新メニューナンバMENUを検査し、この新メニュ
ーがMENU=1〜3であればステップ225でレジスタMODE
の内容をノーマルモードを表わす0に書き換え、フラグ
SEQをリセット(シーケンサオフを示す)する。MENU=
4〜7であればステップ226でレジスタMODEを1(プレ
イモードチェンジ)に書き換えフラグSEQをセット(シ
ーケンサオン)する。MENU=8であればステップ227で
レジスタMODEを2(リアルタイム書込モード)に書き換
え、フラグSEQをセットする。MENU=9であればステッ
プ228でレジスタMODEを3(ステップ書込モード)に書
き換え、フラグSEQをセット(シーケンサオン)する。M
ENUが1〜9以外であればステップ229で他のモードの値
を設定する。そしてレジスタMODEの書換およびフラグSE
Qのセット・リセットが終了すると、次にステップ230の
モード・表示更新処理(第14図)を実行する。
第14図を参照して、ステップ231ではメニュー表示器3
1に新メニューを表示する。ステップ232ではMODE=1、
つまり新メニューがプレイモードチェンジ(MENU=4〜
7)であるか検査し、プレイモードチェンジのいずれか
であればステップ233,234で対応するメニューのオンオ
フフラグFLAGi(i=MENU−3)の内容(オン/オフ)
を上記メニュー表示器31に表示する。
ステップ232においてMODE≠1であれば、ステップ235
に進んで、MODE=0か否かを検査する。MODE=0(ノー
マルモード)であればそのままメイン処理(第8図ステ
ップ102)に戻る。
MODEが0でも1でもなければ、新メニューは記録モー
ド(MENU=8または9)であるから、シーケンサメモリ
用アドレスポインタSEQPNTをクリアし(ステップ23
6)、プリセットチェンジフラグPRECHGをセットし(ス
テップ237)、かつすべてのプリセットナンバPRENOにつ
いてパネルメモリの内容をノーマル用からプリセット用
にブロック転送して(ステップ238)、記録モードに備
えた後、メイン処理(第8図ステップ102)に戻る。
5.INC/DECスイッチオン処理 INCスイッチ32またはDECスイッチ33がオンされると、
処理は第10図のステップ152から第11図のステップ210に
移る。この場合も上記ENTスイッチ34オンの場合と同様
に自動演奏中のスイッチ操作は無視するとともに、自動
演奏中でないときはメニューナンバレジスタMENUの内容
をINCスイッチ32のオンに対してはメニュー切換テーブ
ル(第12図)のデータTBLINCに、そしてDECスイッチ33
のオンに対してはデータTBLDECに変更する。このデータ
MENU変更後の処理ステップ221〜238は、ENTスイッチ34
オンの場合と全く同じである。
6.TGLスイッチオン処理 TGLスイッチ35がオンされると、所利は第10図のスイ
ッチ153から第15図のステップ250に移る。ステップ251
では動作モードの判定を行なう。動作モードがプレイモ
ードチェンジ(MENU=4〜7)であればステップ252〜2
54でフラグFLAGi(i=MENU−3)の内容(オンオフ)
をトグルチェンジ(反転)し、新たなオン/オフをメニ
ュー表示器31に表示した後、メイン処理(第8図ステッ
プ102)に戻る。
一方、動作モードがプレイモードチェンジでなけれ
ば、このTGLスイッチ35のオンは無意味または誤操作で
あるから、何らの処理もしないでメイン処理(第8図ス
テップ102)に戻る。
7.符長スイッチオン処理 符長スイッチ37〜39のいずれかがオンされると、処理
は第10図のステップ154から第16図のステップ260に移
る。ステップ261では動作モードがステップ書込モード
(MODE=3)であるか否かの判定を行なう。符長スイッ
チはステップ書込モードにおいてのみ用いられるもので
あるから、ステップ書込モードでない場合は何らの処理
もしないでメイン処理(第8図ステップ102)に戻る。
ステップ261で動作モードがステップ書込モードであ
ることが確認されると、ステップ262でどの符長スイッ
チがオンされたか判別し、ステップ263でオンされた符
長スイッチに対応する符長データを符長データレジスタ
LENGTHに格納し、拍数演算変数レジスタDTに制御変数を
格納した後、ステップ270のコード書込処理(第17図)
により、シーケンサメモリ19内へコードデータを書き込
み、ステップ280のメモリ残量表示処理(第18図)によ
り、シーケンサメモリ19のメモリ容量の残量をメニュー
表示器31に表示してステップ266に進む。ステップ266で
は拍数カウンタBEATの内容に上記制御変数DTを加算す
る。ステップ267ではこの拍数BEATが4拍(1小節)を
超えたか否か判定する。1小節を超えていなければその
まま、超えていればステップ268で拍数BEATから4を減
算し、かつ小節カウンタBARを歩進した後、ステップ269
でこれらの新たな小節数および拍数をメニュー表示器31
に表示してメイン処理(第8図ステップ102)に戻る。
8.コード書込処理 第17図を参照して、ステップ271では前述のキーイベ
ント処理(第9図)のステップ114で検出されコードタ
イプレジスタに格納されているコードタイプTYPEを検査
する。コードが成立(TYPE≠FH)していればステップ27
2でシーケンサメモリ19内のポインタSEQPNTで指定され
るアドレス(第3図のコードまたはコードの第1バ
イト目)の上位4ビットに根音レジスタの内容ROOTを、
下位4ビットにコードタイプTYPEを書き込む。ステップ
273ではポインタSEQPNTを歩進する。これにより、次の
書込位置(第2バイト目)が指定される。ステップ274
では根音ROOTとベース音根音PROOTとを比較する。異な
れば、書込中のデータは分数和音(第3図のコード
であるから上記第2バイト目のデータとして上位4ビッ
トが分数和音識別マークCHで下位4ビットがベース音和
音PROOTである8ビットのデータを書き込み(ステップ2
75)、さらにポインタSEQPNTを歩進して(ステップ27
6)第3バイト目として上位4ビットが符長識別マークD
Hで下位4ビットが符長データLENGTHの8ビットデータ
を書き込む(ステップ277)。続くステップ278ではポイ
ンタSEQPNTを歩進して次のワードの先頭にセットし、そ
の後、メイン処理(第8図ステップ102)に戻る。
一方、ステップ274の比較結果がROOT=PROOTであれば
書込中のデータは通常の和音(第3図のコード)であ
るからステップ275および276の処理をスキップしてステ
ップ277で第2バイト目に上記DHとLENGTHのデータを書
き込み、さらにステップ278でポインタSEQPNTを歩進し
て次のワードの先頭にセットした後、メイン処理(第8
図ステップ102)に戻る。
ステップ271の検査結果がコード不成立(TYPE=FH
の場合、書込中のデータは休符データ(第3図の無コー
ド)であるからステップ272〜276の処理をスキップして
ステップ277で第1バイト目に符長マークDHと符長デー
タLENGTHを書き込んだ後、ステップ278でポインタSEQPN
Tを歩進してからメイン処理(第8図ステップ102)に戻
る。
9.メモリ残量表示処理 第18図を参照して、ステップ281ではアドレスポイン
タSEQPNTの内容を10で除算した値の整数部分を算出し、
この整数を200から減算した値をメモリ残量レジスタREM
AINに格納する。これは、ここではシーケンサメモリ19
として2000バイトのメモリを用いており、メモリ残量を
10バイト単位で概算表示するためである。そしてステッ
プ282でメモリ残量REMAINが0となったか否かを判定
し、0でなければステップ283でこのメモリ残量をメニ
ュー表示器31に表示した後、メイン処理(第8図ステッ
プ102)に戻る。
また、メモリ残量が0となったときはステップ284で
モードナンバレジスタMODEをクリアし、メニューナンバ
レジスタMENUを1にセットし、かつランフラグRUNをリ
セットした後、ステップ285でメニュー表示器31にメモ
リ残量0を表示してからメイン処理に戻る。
10.PREスイッチオン処理 プリセット書込(PRE)スイッチ36がオンされると、
処理は第10図のステップ155から第19図のステップ300に
移る。ステップ301では動作モードがステップ書込モー
ド(MODE=3)であれか否かの判定を行なう。PREスイ
ッチ36はステップ書込モードにおいてのみ用いられるも
のであるから、ステップ書込モードでない場合は何らの
処理もしないでメイン処理(第8図ステップ102)に戻
る。
ステップ301で動作モードがステップ書込モードであ
ることが確認されると、ステップ310のプリセットデー
タ書込処理(第20図)を実行し、さらに前述のメモリ残
量表示処理(第18図)を実行した後、メイン処理(第8
図ステップ102)に戻る。
11.プリセットデータ書込処理 第20図を参照して、ステップ311ではシーケンサメモ
リ19内のポインタSEQPNTで指定されるアドレス(第3図
のプリセットの第1バイト目)にプリセットデータを開
始を示す8ビットの識別マークF1Hを書き込む。そして
ステップ312,314,316でポインタSEQPNTを順次歩進しな
がら、ステップ313で第2バイト目にプリセットナンバP
RENOを、ステップ315で第3バイト目にリズムバッファR
HYBUFの内容を、ステップ317で第4バイト目にプリセッ
トデータの終りを示す8ビットの識別マークF6Hを書き
込む。さらにステップ318でポインタSEQPNTを歩進して
次のワードの先頭アドレスにセットした後、メイン処理
(第8図ステップ102)に戻る。
12.プリセットイクスチェンジ処理 プリセットスイッチ55〜70のいずれかがオンされる
と、処理は第10図のステップ156から第21図のステップ3
30に移る。ステップ331ではオンされたスイッチの番号
(1〜16)をプリセットナンバレジスタPRENOに格納す
る。さらにステップ332でその番号をカウンタiに格納
し、ステップ333でフラグSEQを検査する。これはノーマ
ルモード(SEQ=0)時とシーケンサモード(SEQ=1)
時とでパネルメモリ(第6図)のエリアPRENiとエリアP
RESiとを使い分けるためである。
すなわち、SEQ=1であればステップ334に進んでメモ
リスイッチ71がオンされているか否かを検査する。も
し、メモリスイッチ71がオンされていればパネル状態記
憶モードであるからステップ335でメモリエリアCURRENT
の内容である現パネル状態をメモリエリアPRESiへブロ
ック転送する。スイッチ71がオンされていなければパネ
ル状態設定モードであるからステップ336でエリアPRESi
の内容をエリアCURRENTへブロック転送し、かつステッ
プ337で各スイッチおよび操作子をエリアCURRENTの内容
に合せて設定する。
ステップ333の検査結果がSEQ=0であれば、ステップ
344〜347において、メモリエリアPRESiの代わりにPRENi
を用いることを除き、上記ステップ334〜337におけるの
と全く同様の処理を実行する。
ステップ335、337、345または347の処理を終了する
と、続いてステップ348で現在の動作モードがリアルタ
イム書込モード(MODE=2)であるか否かを判定する。
そして、リアルタイム書込モードであればステップ349
でプリセットチェンジフラグPRECHGをセットした後、そ
うでなければステップ349を経ることなくメイン処理
(第8図ステップ102)に戻る。
13.SEQスイッチオン処理 シーケンサ(SEQ)スイッチ41がオンされると、処理
は第10図のステップ157から第22図のステップ360に移
る。ステップ361では動作モードの判定を行なう。そし
て動作モードがノーマルモード以外(MODE≠0)では何
らの処理も行なわず、一方、ノーマルモード(MODE=
0)ではステップ362でシーケンサフラグSEQの内容(オ
ン/オフ)をトルグチェンジ(反転)した後、メイン処
理(第8図ステップ102)に戻る。
14.ラン/ストップ処理 ラン/ストップスイッチ42がオンされると、処理は第
10図のステップ158から第23図のステップ370に移る。ス
テップ371では動作モードの判定を行なう。そして動作
モードがノーマル演奏(MODE=0)またはリアルタイム
書込(MODE=2)等のリアルタイム走行モード以外なら
ば何らの処理も行なわずメイン処理(第8図ステップ10
2)に戻る。
一方、動作モードがリアルタイム走行モードであれ
ば、ステップ372でランフラグRUNの内容(オン/オフ)
をトルグチェンジ(反転)し、この反転後のフラグRUN
を検査する。リズム等の走行が停止(RUN=0)された
のであればそのままメイン処理(第8図ステップ102)
に戻り、走行が開始(RUN=1)されたのであればステ
ップ374に進んでテンポクロックカウンタTCLをリセット
し、小節カウンタBAR、拍数カウンタBEATおよびシーケ
ンサ用拍カウンタCNTをそれぞれ1にセットした後、メ
イン処理(第8図ステップ102)に戻る。
15.リズムセレクト処理 リズムセレクトスイッチ43〜54のいずれかがオンされ
ると、処理は第10図のステップ159から第24図のステッ
プ380に移る。ステップ381では現在の動作モードがリア
ルタイム書込モード(MODE=2)か否かを判定し、リア
ルタイム書込モードであればステップ382でプリセット
チェンジフラグPRECHGをセットした後、そうでなければ
ステップ381から直接、ステップ383に進む。
ステップ383以下ではオンしたスイッチの種別を検査
し、その検査結果に応じてリズム情報バッファRHYBUF
(第7図)内のデータ書換を行なう。
すなわち、リズムセレクトスイッチ43〜50がオンした
ときはステップ383からステップ384に進んで選択された
リズムのナンバをレジスタRHYNOに格納し、続くステッ
プ385でバッファRHYBUFの下位3ビットのみを新たなリ
ズムナンバRHYNOに書き換えた後、メイン処理(第8図
ステップ102)に戻る。
バリエーション設定スイッチ51がオンしたときはステ
ップ387からステップ388に進んでリズム情報バッファRH
YBUFの上位から第5ビット目の1/0を反転した後、メイ
ン処理(第8図ステップ102)に戻る。
フィルインバリエーション設定スイッチ52がオンした
ときはステップ390からステップ391に進んでリズム情報
バッファRHYBUFの上位から第4ビット目の1/0を反転し
た後、メイン処理(第8図ステップ102)に戻る。
フィルインスイッチ54がオンしたときはステップ393
からステップ394に進んでリズム情報バッファRHYBUFの
上位3ビットのデータのみをフィルインを示す001B(2
進表示)に書き換えた後、メイン処理(第8図ステップ
102)に戻る。
ブレークスイッチ53がオンしたときはステップ393か
らステップ395に進んでリズム情報バッファRHYBUFの上
位3ビットのデータのみをブレークを示す010Bに書き換
えた後、メイン処理(第8図ステップ102)に戻る。
16.テンポ割込処理 第1図の電子楽器においてはテンポ発生器22から発生
するテンポクロックを割込信号として以下の割込処理
(ステップ500)を実行する。第25図において、ステッ
プ501では、ランフラグRUNを検査する。もし、RUN=0
であれば、現在、リズムは停止(従って自動伴奏および
伴奏データのリアルタイム書込も停止)しているのであ
るから、そのまま、割込を解除してもとのルーチンに戻
る。
一方、ステップ501の検査の結果、RUN=1、すなわち
現在リズム走行中であれば、ステップ502に進んでテン
ポクロックカウンタTCLおよびリズム情報バッファRHYBU
Fの内容に基づいてリズム音発生用トーンジェネレータ
(RHY・TG)27を駆動する。つまり、リズム音発音処理
を行なう。
続くステップ503ではテンポクロックの計数値TCLを12
で除算した“余り”が0であるか否かを検査する。“余
り”が0でなければステップ504に進む。テンポクロッ
クの周期は1拍の1/12であるから“余り”が0であれば
現タイミングは1拍の最初(ビートトップ)である。こ
の場合は、ステップ600(第26図)のビートトップ処理
を実行した後、次のステップ504に進む。
ステップ504では動作モードを検査し、ノーマルモー
ド(MODE=0)であれば、ステップ505でフラグSEQを検
査する。そして、シーケンサオン(SEQ=1)であれば
ステップ506でコードタイプTYPEを検査し、コード成立
(TYPE≠FH)であればステップ507でフラグFLAG1を検査
し、コードシーケンスオン(LALG1=1)であればさら
にステップ508でフラグFLAG4を検査する。
そして、LKイネーブルがオン(FLAG4=1)している
場合、すなわちノーマルド、シーケンサオン、コード成
立、コードシーケンサオン、かつLKイネーブルオンであ
れば、ステップ509でコードタイプTYPEおよび根音ROOT
に基づいてLK・TG24を発音制御し、さらにステップ510
でテンポクロックカウンタTCL、根音ROOT,PROOTおよび
リズム情報バッファのデータRHYBUFに基づいてPK・TG25
およびRC・TG26を発音制御する。つまり、この場合はLK
・TG24によりLK14の押鍵通りの伴奏(和音)音を発音
し、PK・TG25およびRC・TG26によりシーケンサメモリ19
に格納されている演奏データに従ったオートベース音お
よびリズミックコード音を発音する。
続くステップ511ではテンポクロックカウンタTCLを歩
進し、ステップ512でカウンタTCLの計数値が12の整数倍
であるか否かを判定する。もし、整数倍であれば次の1
拍の先頭になったのであるからステップ513拍数カウン
タBEATを歩進する。整数倍でなければステップ513の処
理をスキップしてステップ514に進む。ステップ514では
カウンタTCLの計数値が48より小さいか否かを判定す
る。48より小さければそのまま割込を解除してもとのル
ーチンに戻る。一方、カウンタTCLの計数値が48以上で
あれば、現小節が終了したのであるからステップ515で
カウンタTCLをクリアし、拍数カウンタBEATを1にセッ
トし、小節カウンタBARを歩進する。さらにステップ516
でリズム情報バッファRHYBUF(第7図)の上から第2お
よび第3ビット目をクリアしてリズムモードをノーマル
にした後、割込を解除してもとのルーチンに戻る。
なお、上述のステップ504〜508において、動作モード
がノーマルモードでない(MODE≠0)場合、ノーマルモ
ードであってもシーケンサオフ(SEQ=0)の場合、お
よびLKイネーブルオフ(FLAG4=0)の場合は、ステッ
プ509の処理は行なわない。つまり、この場合には、下
鍵盤音のマニュアル演奏音は発音せず、オートベース音
およびリズミックコード音を発音する。また、コード不
成立(TYPE=FH)の場合およびコードシーケンサオフ
(FLAG1=0)の場合にはステップ509および510の双方
をスキップする。つまり、上記下鍵盤音のマニュアル演
奏音とオートベース音およびリズミックコード音のいず
れも発音しない。
17.ビートトップ処理 第25図のステップ503においてテンポクロックカウン
タTCLの計数値が12の整数倍であるとき、すなわち1拍
の最初のテンポ割込時には以下のビートトップ処理を実
行する。
第26図を参照して、ステップ601では小節数BARおよび
拍数BEATをテンポ表示器40に表示する。次のステップ60
2では動作モードを検査する。ここで、現在の動作モー
ドがノーマルモード(MODE=0)であれば、続くステッ
プ603でフラグSEQを検査する。このビートトップ処理は
シーケンサとしてのものであるから、シーケンサがオフ
(SEQ=0)であれば何もせず上記テンポ割込を解除し
てもとのルーチンに戻る。
ステップ603においてSQE=1であれば、ステップ604
でシーケンサ用カウンタCNTをディクリメントした後、
ステップ605で計数値CNTが0になったか否かを判定す
る。0でなければそのままテンポ割込を解除してもとの
ルーチンに戻り、0であればステップ620のシーケンサ
読出処理(第27図)を実行する。このシーケンサ読出処
理については後述する。
ステップ602の検査結果がノーマルモード以外(MODE
≠0)であれば、ステップ602からステップ611に進む。
このビートトップ処理はリズムラン状態(第25図ステッ
プ501参照)すなわちMODE=0または2の場合にのみ行
なわれるものであるから、MODE=0でなければMOED=2
(リアルタイム書込)である。ステップ611ではシーケ
ンサ用カウンタCNTを歩進し、ステップ612ではフラグPR
ECHGを検査する。フラグPRECHGは動作モードをリアルタ
イム書込(MODE=2)へ変更した時(第14図ステップ23
7)、プリセットスイッチ55〜70を操作した時(第21図
ステップ349)およびリアルタイム書込中にリズムセレ
クトスイッチを操作した時(第24図ステップ382)セッ
トされる。PRECHG=1であればステップ613に進み、PRE
CHG=0であればステップ614に進む。
ステップ613ではシーケンサポインタSEQPNTがクリア
されているか否かを判定する。SEQPNT≠0であればステ
ップ700の符長変更処理(第29図)を実行し、さらに前
述のプリセット書込処理(第20図ステップ310)を実行
した後、ステップ617に進む。一方、SEQPNT=0であれ
ばステップ700の処理はスキップしていきなりプリセッ
ト書込処理を実行し、その後、ステップ617に進む。
ステップ614ではコードチェンジフラグCHDCHGを検査
する。このフラグは下鍵盤14またはペダル鍵盤15の押鍵
状態によるコード種類が変更された時(第9図ステップ
120)セットされる。CHDCHG=0であればこのテンポ割
込を解除してもとのルーチンに戻り、CHDCHG=1であれ
ばステップ700の符長変更処理(第29図)を実行した
後、ステップ617に進む。
ステップ617で符長レジスタLENGTHに1を格納した
後、前述のコード書込処理(第17図)およびメモリ残量
表示処理(第18図)を実行し、さらにステップ619でシ
ーケンサ用カウンタCNT、プリセットチェンジフラグPRE
CHGおよびコードチェンジフラグCHDCHGをクリアした
後、このテンポ割込を解除してもとのルーチンに戻る。
18.シーケンサ読出処理 ノーマルモード,シーケンサオン状態においてリズム
走行中、ビートトップになると、前記ビートトップ処理
を行ない、このビートトップ処理の際、シーケンサ用カ
ウンタCNTが0になると、このシーケンサ読出処理を実
行する。
第27図を参照して、ステップ621ではシーケンサポイ
ンタSEQPNTが指示するシーケンサメモリ19内のデータ
[SEQPNT]の上位4ビットをレジスタBRANCHに格納す
る。次にステップ622でこの4ビットデータBRANCHが根
音(0〜BH)データであるか否かを判定する。
データBRANCHが根音(0〜BH)であれば、データ[SE
QPNT]はコード種類データであるからステップ623で上
位4ビットを根音レジスタROOTに、ステップ624で下位
4ビットをコードタイプレジスタTYPEに格納する。さら
にステップ625でポインタSEQPNTを歩進し、ステップ626
で次のデータ[SEQPNT]がCHであるか否かを判定する。
CHでなければこのデータは通常和音データ(第3図のコ
ード)の第2バイト目であるから、根音ROOTをベース
音根音レジスタPROOTに格納した(ステップ627)後、ス
テップ650へ進む。一方、CHであればこのデータは分数
和音データ(第3図のコード)の第2バイト目である
から、このデータの下位4ビットをレジスタPROOTに格
納し(ステップ628)、続いてステップ629でポインタSE
QPNTをさらに歩進した後、ステップ650に進む。
ステップ622でデータBRANCHが根音(0〜BH)以外の
データであれば、ステップ640に進んで今度はそのデー
タBRANCHが符長識別マーク(DH)であるか否かを検査す
る。DHであればステップ641でコードタイプレジスタTYP
EにデータFH(コード不成立、発音せず)を格納した
後、ステップ650に進む。
ステップ650では通常和音の第2バイト目、分数和音
の第3バイト目および休符データ(1バイトデータ)の
下位4ビットに格納されている符長データを検査し、ス
テップ651でその符長データに応じた拍数データをシー
ケンサ用拍数カウンタCNTに格納する。続いてステップ6
52でポインタSEQPNTをさらに歩進して次のワードの先頭
アドレスにセットした後、このテンポ割込を解除しても
とのルーチンに戻る。
ステップ622およびステップ640で判定した結果、デー
タBRANCHが根音(0〜BH)でも符長識別マーク(DH)で
もなければ、ステップ660に進んで今度はデータBRANCH
を含む8ビットデータ[SEQPNT]がFFH(エンドマー
ク)であるか否かを判定し、FFHでなければステップ661
でさらにF1H(プリセット開始マーク)であるか否かを
判定する。
データ[SEQPNT]がFFH(エンドマーク)であればス
テップ660からステップ662に進んでFLAG3を検査する。F
LAG3=1(リピートオン)であればステップ663でポイ
ンタSEQPNTをクリアした後、ステップ621に戻ってメモ
リ19の先頭アドレスのデータから再度読出を繰返す。ま
た、ステップ662でFLAG3=0(リピートオフ)と判定し
たときは、ステップ664でランフラグRUNをリセットした
後、このテンポ割込を解除してもとのルーチンに戻る。
データ[SEQPNT]がF1H(プリセットデータ開始マー
ク)であればステップ661からステップ662に進んでFLAG
2を検査する。FLAG2=1(プリセットシーケンスオン)
であればステップ670のプリセット読出処理(第28図)
を実行した後、FLAG2=0(プリセットシーケンスオ
フ)であればこの4バイトのプリセットデータは読み出
す必要がないから、ステップ667でポインタSEQPNTを4
つ進め(空送りし)た後、ステップ621に戻ってメモリ1
9から次のワードのデータを読み出す。
なお、データBRANCHが根音(0〜BH)でも符長識別マ
ーク(DH)でもなく、かつデータ[SEQPNT]がFFHでもF
1Hでもなければ、ステップ668でエラー表示またはデー
タ補間等、所定の処理を行なった後、ステップ621に戻
ってメモリ19から次のデータを読み出す。
19.プリセット読出処理 上記ステップ665においてプリセットシーケンスオン
(FLAG2=1)と判定されたときはこのプリセット読出
処理を実行する。
第28図を参照して、ステップ671でポインタSEQPNTが
指定で示されるシーケンサメモリ19内のアドレスの次の
データすなわちプリセットデータの第2バイト目をデー
タ[SEQPNT+1]をプリセットナンバレジスタPRENOに
格納した後、前述のプリセットエクスチェンジ処理第21
図)を実行する。続いて、ステップ674でプリセットデ
ータの第3バイト目のデータ[SEQPNT+2]をリズム情
報バッファRHYBUF(第7図)に格納し、ステップ677で
ポインタSEQPNTを4つ進めて次のワードの先頭アドレス
にセットした後、このテンポ割込を解除してもとのルー
チンに戻る。
20.符長変更処理 リアルタイム書込(MODE=2)時の前記ビートトップ
処理(第26図)において、シーケンサリアルタイム書込
中にプリセットスイッチ55〜70が操作された場合(ステ
ップ613)、および鍵盤14,15により入力中のコードが変
化した場合(ステップ614)、この符長変更処理を実行
する。リアルタイム書込時はコード変化等が検出されて
始めて直前の和音の符長が判別できるので、例えば1つ
の和音を押鍵し次いで離鍵したとすると、コード種類は
押鍵時に、そして符長は離鍵時に書き込むことになる。
第29図を参照して、ステップ701〜703ではシーケンサ
用カウンタCNTの計数値を検査する。そして、計数値CNT
が4以上であればステップ705でレジスタLENに符長デー
タD3H、レジスタDECに制御変数4を格納した後、ステッ
プ708に進む。また、2≦CNT<4であればステップ707
でレジスタLENに符長データD2H、レジスタDECに制御変
数2を格納した後、ステップ708に進む。
ステップ708では、前和音データの符長データ部分[S
EQPNT−1]にレジスタLEN内の符長データ(D3HまたはD
2H)を書き込む。ステップ709では、前和音が分数和音
であったか否かを判定する。和音データは2(通常和
音)または3(分数和音)バイトであるから前和音デー
タのコード種類は、分数和音であれば3つ前のデータ
[SEQPNT−3]であり、分数和音でなければ2つ前のデ
ータ[SEQPNT−2]である。
ステップ710,711および720では直前の和音のコード種
類データ[SEQPNT−3(または2)](および分数和音
であればベース音根音データ[SEQPNT−2])を現在押
鍵中の和音のデータとして[SEQPNT](および分数和音
であればベース音根音データ[SEQPNT+1])として格
納(コピー)する。ステップ712および722では現在押鍵
中の和音の符長データ[SEQPNT+1](分数和音であれ
ば[SEQPNT+2])としてD1Hを格納する(仮記入;次
にステップ706を実行する際、書き換えられる)。そし
てステップ713および723でポインタSEQPNTを2(通常和
音)または3(分数和音)進めて次の和音データの先頭
アドレスにセットし、ステップ714では分数和音フラグL
ONGをセットし、ステップ724ではLONGをリセットした
後、ステップ726でカウンタCNTを制御変数DECだけカウ
ントダウンしてステップ701に戻る。
上記ステップ701〜703においてシーケンサ用カウンタ
の計数値CNTが1より小さいときは、ステップ703からス
テップ730に進んでポインタSEQPNTを直前の和音データ
の先頭アドレスまで戻し(ステップ730〜732)、ここに
エンドマークFFHを書き込んだ(ステップ733)後、この
テンポ割込を解除してもとのルーチンに戻る。また、上
記ステップ701〜703において1≦CNT<2であれば現在
のアドレスSEQPNTにエンドマークFFHを書き込んだ(ス
テップ733)後、このテンポ割込を解除してもとのルー
チンに戻る。
この電子楽器においては、自動伴奏は、リズミックコ
ード等のコードに基づき、かつタイミング制御された第
1の音色で演奏される一方、押鍵に対してはその押鍵の
鍵操作に基づき第2の音色で演奏することが可能なた
め、変化に富んだ演奏ができる。しかも、モード切換に
よって従来と同様のリアルタイム演奏と併せて自動演奏
も可能である。
第30図は、第1図の電子楽器においてステップ書込し
ようとするパターン(a)および操作手順(b)を示
す。プリセットナンバはプリセットスイッチ55〜70でプ
リセットナンバを指定した後、PREスイッチ36をオンす
ることにより設定することができる。コードは下鍵盤14
およびペダル鍵盤15の押鍵でコード種類を指定した後、
符長スイッチ37〜39で符長を指定することにより設定す
ることができる。また、コード無し(休符)はコード種
類を入力しないで符長データのみを入力すればよい。下
鍵盤から入力するコード種類は、和音構成音の全部を押
鍵して指定する(いわゆるフィンガードモード)ように
してもよいが、根音のみ(メジャ)または根音と他の白
鍵もしくは黒鍵とを組合せて指定する(いわゆるシング
ルフィンガーモード)ことも可能である。
[実施例の変形例] 以上がこの発明の実施例であるが、この発明は上述の
実施例に限定されることなく適宜変形して実施すること
ができる。例えば 上述において、通常再生はリズミックコードである
が、他種類の伴奏をおこなってもよく、伴奏音と押鍵音
とを同一にするようなモードに切換可能にしてもよい。
また、他の種々の組合せも可能である。
シーケンサに反復(D.S.、 その他)等の音楽記号を記載させて進行制御してもよ
い。
拍子は4拍子に限らず、他の拍子であってもよい。そ
の場合、符長(1,1/2,1/4小節)が整数拍数にならない
場合も生じるが、整数拍に丸めてしまえばよい。
自動伴奏としてリズミックコードの例を挙げたが、複
音をも含めアルペジオのような分散和音としてもよい。
シーケンサの分解能を拍以下のもっと細かい単位とし
てもよい。
ここではシーケンサを1つしか示さなかったが、複数
のシーケンサを設けることは容易である。
マルチメニューの内容としてシーケンサのみを挙げた
が、他に、リズムパターンの作成、音色変更等のモード
を付加することは容易である。
シーケンサをエデット可能にすることも容易である。
上記実施例においてはパネルメモリとしてノーマル用
とプリセット用との2ブロックを設けてあるが、これを
1ブロックにしてメモリ容量を減少させることも可能で
ある。
[発明の効果] 以上のように、この発明によれば、鍵盤演奏を基にリ
アルタイムで記録していく一方、押鍵状態を個々の鍵名
単位としてではなく、コード種類として記録を行なうの
で記憶装置の容量が少なくて済む。特に、伴奏用鍵盤に
おける演奏はコード演奏が多いため、記憶容量の減少は
顕著である。
また、通常の和音と分数コードを区別して記憶するこ
とができ、また、この記憶した情報に基づき、通常の和
音に加えて分数コードも発音させることができるため、
分数コードの和音をも含めた、より表現力豊かな自動演
奏を行なうことができる。
【図面の簡単な説明】 第1図は、この発明の一実施例に係る電子楽器のハード
ウエア構成図、 第2図は、操作パネル外観図、 第3図は、動作メニュー系統図、 第4図は、シーケンサデータフォーマット図、 第5図は、コード種類対音名データ・コードタイプデー
タ対照図、 第6図は、パネルメモリフォーマット図、 第7図は、リズム情報バッファフォーマット図、 第8図は、メイン処理のフローチャート、 第9図は、キーイベント処理のフローチャート、 第10図は、パネルイベント処理のフローチャート、 第11図は、メニュー切換処理のフローチャート、 第12図は、メニュー切換用テーブル図、 第13図は、モード変更処理のフローチャート、 第14図は、モード・表示更新処理のフローチャート、 第15図は、トグルスイッチオン処理のフローチャート、 第16図は、符長スイッチオン処理のフローチャート、 第17図は、コード書込処理のフローチャート、 第18図は、メモリ残量表示処理のフローチャート、 第19図は、プリセット書込スイッチオン処理のフローチ
ャート、 第20図は、プリセット書込処理のフローチャート、 第21図は、プリセットイクスチェンジ処理のフローチャ
ート、 第22図は、シーケンサスイッチオン処理のフローチャー
ト、 第23図は、ラン/ストップ処理のフローチャート、 第24図は、リズムセレクト処理のフローチャート、 第25図は、テンポ割込処理のフローチャート、 第26図は、ビートトップ処理のフローチャート、 第27図は、シーケンサ読出処理のフローチャート、 第28図は、プリセット読出処理のフローチャート、 第29図は、符長変更処理のフローチャート、 第30図は、演奏データの一例を示す図(a)およびこの
演奏データをステップ書込する際の操作シーケンス図
(b) である。 11……CPU、13,14,15……鍵盤、16……スイッチ群、17
……プログラムメモリ、18……パターンメモリ、20……
変換テーブルメモリ、21……ワーキングメモリ、23,24,
25,26,27……トーンジェネレータ。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 山田 正 静岡県浜松市中沢町10番1号 日本楽器製 造株式会社内 (56)参考文献 特開 昭58−129479(JP,A) 特開 昭57−138075(JP,A) 特開 昭54−163021(JP,A) 特開 昭57−53793(JP,A)

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】和音の根音と種類を示す和音情報と、和音
    変更タイミングを示す時間情報を曲の進行にしたがって
    順次記憶しているとともに、少なくとも一部の和音情報
    にベース音情報を含むことを示す識別情報とベース音の
    音高を示すベース音情報を付随させて記憶している記憶
    手段と、 前記時間情報に基づいて前記記憶手段から順次データを
    読み出す読み出し手段と、 読み出されたデータについて、前記識別情報に基づいて
    ベース音情報があるか否かを検出する検出手段と、 前記読み出し手段によって読み出された和音情報に基づ
    いて和音を和音演奏用音源から発生させる和音発生手段
    と、 前記検出手段によって読み出された和音情報に付随する
    ベース音情報があると検出された場合には、その和音情
    報に付随するベース音情報に基づく音名のベース音をベ
    ース音用音源から発生するとともに、前記検出手段によ
    って読み出された和音情報に付随するベース音情報がな
    いと判断された場合には、該和音情報の根音と同じ音名
    のベース音をベース音用音源から発生するベース音発生
    手段とを備えたことを特徴とする電子楽器。
  2. 【請求項2】和音を指定する和音指定部とベース音の音
    名を指定するベース音指定部とを有する演奏操作子と、 演奏操作子の和音指定部の操作状態から操作が示す和音
    の根音と種類を検出するとともに、ベース音指定部の操
    作状態からその操作が示すベース音の音名を検出する和
    音検出手段と、 ベース音指定部で指定されたベース音が前記和音検出手
    段によって検出された和音の根音と異なる音名のベース
    音か否かを判断する判断手段と、 和音検出手段による和音検出に応じて、前回の和音変化
    から今回の和音変化までの時間を計測する計測手段と、 記憶手段と、 和音検出手段による和音検出に応じて、該検出された和
    音の根音と種類を和音情報として前記記憶手段に書き込
    むとともに、前記計測手段によって計測された時間を時
    間情報として前記記憶手段に書き込む書込手段であっ
    て、前記検出された和音の根音と同じ音名のベース音と
    前記判断手段によって判断されたときには前記和音情報
    と時間情報を書き込み、前記検出された和音の根音とベ
    ース音の異なる音名と前記判断手段によって判断された
    ときには、前記検出されたベース音の音高を表すベース
    音情報を、ベース音情報を含むことを示す識別情報とと
    もに前記検出された和音情報に付随させて前記記憶手段
    に書き込むものと を備えたことを特徴とする電子楽器。
JP61028922A 1986-02-14 1986-02-14 自動演奏装置付電子楽器 Expired - Fee Related JPH0812552B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP61028922A JPH0812552B2 (ja) 1986-02-14 1986-02-14 自動演奏装置付電子楽器
US07/353,176 US5070758A (en) 1986-02-14 1989-05-15 Electronic musical instrument with automatic music performance system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61028922A JPH0812552B2 (ja) 1986-02-14 1986-02-14 自動演奏装置付電子楽器

Publications (2)

Publication Number Publication Date
JPS62187388A JPS62187388A (ja) 1987-08-15
JPH0812552B2 true JPH0812552B2 (ja) 1996-02-07

Family

ID=12261894

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61028922A Expired - Fee Related JPH0812552B2 (ja) 1986-02-14 1986-02-14 自動演奏装置付電子楽器

Country Status (1)

Country Link
JP (1) JPH0812552B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2522337B2 (ja) * 1988-01-06 1996-08-07 ヤマハ株式会社 自動演奏装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54163021A (en) * 1978-06-15 1979-12-25 Matsushita Electric Ind Co Ltd Musical auxiliary machine
JPH0234039B2 (ja) * 1980-09-17 1990-08-01 Yamaha Corp
JPS57138075A (en) * 1981-02-19 1982-08-26 Matsushita Electric Ind Co Ltd Recorder and reproducer for musical signal
JPS58129479A (ja) * 1982-01-28 1983-08-02 ヤマハ株式会社 電子楽器

Also Published As

Publication number Publication date
JPS62187388A (ja) 1987-08-15

Similar Documents

Publication Publication Date Title
JP2576700B2 (ja) 自動伴奏装置
JPH0631978B2 (ja) 電子楽器の自動伴奏装置
JPH09179559A (ja) 自動伴奏装置及び自動伴奏方法
JPH0631980B2 (ja) 電子楽器の自動伴奏装置
JP2522337B2 (ja) 自動演奏装置
JP2536596B2 (ja) 電子楽器
JPH0812552B2 (ja) 自動演奏装置付電子楽器
US5070758A (en) Electronic musical instrument with automatic music performance system
JP4318194B2 (ja) 電子楽器の自動伴奏装置及び自動伴奏方法
JPH0631977B2 (ja) 電子楽器
JP3661963B2 (ja) 電子楽器
JPS62187387A (ja) 自動演奏装置付電子楽器
JP2586744B2 (ja) 電子楽器の自動伴奏装置
JP2962761B2 (ja) 電子楽器
JP2513014B2 (ja) 電子楽器の自動演奏装置
JPH05188961A (ja) 自動伴奏装置
JP2576296B2 (ja) 電子楽器の自動伴奏装置
JPH058638Y2 (ja)
JPH0774952B2 (ja) 電子楽器
JP2848322B2 (ja) 自動伴奏装置
JP3120806B2 (ja) 自動伴奏装置
JP2565152B2 (ja) 自動伴奏装置
JP2641612B2 (ja) フレーズ演奏装置及びフレーズ演奏方法
JP3499672B2 (ja) 自動演奏装置
JP3171436B2 (ja) 自動伴奏装置

Legal Events

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