JP2692361B2 - 電子楽器 - Google Patents

電子楽器

Info

Publication number
JP2692361B2
JP2692361B2 JP2236435A JP23643590A JP2692361B2 JP 2692361 B2 JP2692361 B2 JP 2692361B2 JP 2236435 A JP2236435 A JP 2236435A JP 23643590 A JP23643590 A JP 23643590A JP 2692361 B2 JP2692361 B2 JP 2692361B2
Authority
JP
Japan
Prior art keywords
data
switch
pointer
mode
routine
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
JP2236435A
Other languages
English (en)
Other versions
JPH04115294A (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 JP2236435A priority Critical patent/JP2692361B2/ja
Publication of JPH04115294A publication Critical patent/JPH04115294A/ja
Application granted granted Critical
Publication of JP2692361B2 publication Critical patent/JP2692361B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は電子楽器に関し、特にコンピユータを使用
した電子楽器に適用して好適なものである。
〔発明の概要〕
この発明は、コンピユータにより演奏情報を演算処理
するようになされた電子楽器において、当該オリジナル
メモリを構成する第1の記憶手段のデータに代わるデー
タを格納する別付の第2の記憶手段を装着できるように
したことにより、第1の記憶手段のデータの変更を容易
かつ簡易になし得るようにした電子楽器を実現できる。
〔従来の技術〕
従来電子楽器として、演奏操作子を構成する鍵盤を演
奏者が演奏操作したとき、当該演奏操作したキーに対応
する楽音を、音色、リズム、演奏モード等を指定する演
奏条件データを手動操作スイツチやコマンド入力型デイ
スプレイなどによつて予め入力してなる演奏データに基
づいて、演算処理することにより、楽音を発生するよう
にしたものが用いられている。
〔発明が解決しようとする課題〕
ところでこの種の電子楽器においては、演算処理プロ
グラム及び又はデータにコンピユータプログラム上の誤
り(すなわちバグ)が発生した場合、当該バグを取除く
作業(すなわちデバツグ作業)をできるだけ簡便になし
得るようにすることが、製造工程の簡略化、製造時間の
短縮、製造原価の低廉化等の点から重要であると考えら
れており、従来次の手法が用いられている。
第1の方法はバグが軽微な場合に適用し得るもので、
演算処理プログラムを格納しているマスクROM(マスク
技術を用いて製造されたリードオンリメモリ)に予めバ
グ対策用の冗長なメモリエリアを設けておき、当該バグ
対策用のメモリエリアを用いてバグをデバツグする。
しかしながらこの方法によると、実際上極端に冗長な
メモリエリアを設けることはできないので、大規模なバ
グが発生した場合にはこれに対応できない問題がある。
この問題を解決する方法として第2に、ワンタイムプ
ログラマブルROM(one time programmable read only m
emory)を用いたバグ対策済みのプログラムメモリを製
造する方法がある。
しかしながらこの方法はワンタイムプログラマブルRO
Mが比較的構成が複雑かつ高価なために、実際上採用で
ない問題がある。
本発明は以上の点を考慮してなされたもので、比較的
簡易な構成によつて廉価にバグ対策済みのデータメモリ
を実現できるようにした電子楽器を提案しようとするも
のである。
〔課題を解決するための手段〕
かかる課題を解決するため本発明においては、複数の
第1のデータを記憶する第1の記憶手段6と、第1の記
憶手段6に記憶されている複数の第1のデータのうち少
くとも1つの差換えを指示する差換指示手段16X2〜16C
を有する第2の記憶手段16と、第2の記憶手段16を装着
し得る装着手段15と、装着手段15に第2の記憶手段16が
装着されたか否かを検出する装着検出手段(4、SP2)
と、第1の記憶手段6に記憶されている第1のデータを
読み出すもので、装着検出手段(4、SP2)の検出結果
に基づいて第2の記憶手段16が装着されている場合であ
つて、読み出そうとする第1のデータが差換指示手段16
X2〜16Cによつて差換えを指示された第1のデータであ
る場合には、当該第1のデータを読み出す代りに、当該
第1のデータに対応する第2のデータを第2の記憶手段
16から自動的に読み出す読出手段(4、SP3)とを設け
るようにする。
〔作用〕
装着手段15に第2の記憶手段16が装着されたとき当該
第2の記憶手段16に記憶されている第2のデータを用い
て楽音情報を演算処理することができるようにしたこと
により、第1の記憶手段6に記憶されている第1のデー
タに不都合なデータがある場合に、これを簡易な構成に
よつて新しいデータに容易に変更することができる。
〔実施例〕
以下図面について、本発明の一実施例を詳述する。
(1)電子楽器の全体構成 第1図において、1は全体として電子楽器を示し、演
奏者が鍵盤2のキーを演奏操作したとき鍵盤2から発生
するキー情報S1がバス3を介してコンピユータでなる中
央処理ユニツト(CPU)4に取り込まれ、ランダムアク
セスメモリ(RAM)によつて構成されたRAMメモリ部5の
ワークメモリ5Aに取り込まれる。
CPU4はマスク技術を用いて製造されたリードオンリメ
モリ(すなわちマスクROM)でなるオリジナルROMメモリ
部6のプログラムメモリ6Aに予め記憶格納されているプ
ログラムに従つてワークメモリ5Aに取り込まれたキー情
報をデータメモリ5Bを利用しながらテーブルメモリ6B及
びデータメモリ6Cに固定記憶されているデータを参照し
て演算処理し、当該演算処理結果をバス3を介して楽音
信号発生部7に転送させ、これにより楽音信号発生部7
からサウンドシステム8に楽音信号S2を供給させ、その
結果演奏者の鍵盤2に対する演奏操作に対応する楽音を
サウンドシステム8から送出させるようになされてい
る。
実際上かかるCPU4の演算処理は、スイツチ入力部9か
ら入力されるスイツチ入力信号S3と、表示/入力部10か
ら入力されるクリツク入力信号S4と、オリジナルROMメ
モリ部6のテーブルメモリ6Bのテーブルデータとに基づ
いて、ワークメモリ5A及びデータメモリ5Bを用いて実行
される。
さらにCPU4はタイマ11からインタラプト信号S5が与え
られたときその都度リズム演奏処理を実行するようにな
されている。
かかる構成に加えて電子楽器1は、バス3に接続され
たメモリ別付装置部14を有し、メモリ別付装置部14はメ
モリ別付用ソケツト15に対して別付ROMメモリ部16を必
要に応じて装着できるようになされている。
メモリ別付装置部14は第2図に示すように、配線基板
15Aのスルーホール15Bに接続ピン15Cを差し込むと共に
配線基板15Aに形成された配線パターンに半田付けする
ことによりメモリ別付用ソケツト15Dをバス3に接続
し、そのコネクタ15Eに集積回路構成の別付ROMメモリ部
16の接続ピン16Aを差込み接続することができるように
なされている。
かくしてメモリ別付用ソケツト15Dに別付ROMメモリ部
16が装着されたときCPU4は、バス3、配線基板15A、接
続ピン15C、コネクタ15Eを介して別付ROMメモリ部16の
接続ピン16Aに電気的に接続され、これにより別付ROMメ
モリ部16に格納されているプログラム及びデータを読み
取ることができるようになされている。
別付ROMメモリ部16(第1図)はオリジナルROMメモリ
部6のプログラムメモリ6A、テーブルメモリ6B及びデー
タメモリ6Cに対応するメモリとして、プログラムメモリ
16A、テーブルメモリ16B及びデータメモリ16Cを必要に
応じて設けることができるようになされ、かくしてプロ
グラムメモリ6A、テーブルメモリ6B及びデータメモリ6C
の一部のデータを変更又は削除する必要がある場合、又
は部分的に新たなデータを付加する必要がある場合に、
当該入れ換えるデータ又は付加するデータを、プログラ
ムメモリ16A、テーブルメモリ16B及びデータメモリ16C
からバス3及びソケツト15を介して読み出すことができ
るようになされている。
この実施例の場合オリジナルROMメモリ部6、別付ROM
メモリ部16及びRAMメモリ部5のメモリエリアには、第
3図のアドレスマツプに示すような一連のアドレスが付
され、これによりCPU4がオリジナルROMメモリ部6、別
付ROMメモリ部16、RAMメモリ部5にそれぞれ格納されて
いるデータを、スタートアドレスAD0、AD1及びAD2を基
準にして各メモリエリア部に割り当てられたアドレスを
指定することにより必要に応じて読み出したり、書き込
んだりすることができる。
ここで別付ROMメモリ部16には、スタートアドレスAD1
からRAMメモリ部5のスタートアドレスAD2までの間に実
用上十分大きなアドレス空間を割り当てるようになさ
れ、これにより第4図(A)、(B)及び(C)に示す
ように、別付ROMメモリ部16としてメモリ容量が異なるR
OMが装着された場合に、当該異なるメモリ容量のデータ
に割り当てられたアドレスAD1〜AD11、又はAD1〜AD12、
又はAD1〜AD13を指定するだけで、そのデータ量の差の
影響をうけることなく各データのアドレスをアクセスで
きるようになされている。
(2)オリジナルROMメモリ部の構成 オリジナルROMメモリ部6は、第3図及び第5図に示
すように、メインルーチンメモリ6X1、グローバルポイ
ンタデータメモリ6X2、プログラムメモリ6A、テーブル
メモリ6B及びデータメモリ6Cのメモリエリアに一連のア
ドレスを付してなり、これによりCPU4が必要に応じて所
定のデータを読み出す際に、当該データに割り当てられ
ている領域を指定することにより所定の演算機能を実行
できるようになされている。
まずメインルーチンメモリ6X1はメインルーチンを記
憶し、またグローバルポインタデータメモリ6X2はテー
ブルメモリ6Bに含まれる各種テーブルのうち所定のテー
ブルのアドレスを表すグローバルポインタGLOBPを記憶
し、メインルーチンを実行する際にグローバルポインタ
GLOBPにより示されるテーブルが参照され、該テーブル
に記憶されたアドレス情報に基づきROM中の各種プログ
ラム又はデータがアクセスされるようになつている。
ここでグローバルポインタGLOBPは、第6図に示すよ
うに、オリジナルROMメモリ部6のアドレス空間におけ
る一群のテーブルの先頭アドレスを表すアドレスデータ
(これをグローバルポインタと呼ぶ)によつて構成さ
れ、かくしてグローバルポインタGLOBPの中のアクセス
したいテーブルに対応するポインタアドレスデータを用
いて当該指定されたアドレスデータが割り当てられた一
群のテーブルを記憶するエリアをアクセスできる。
第6図において、オリジナルROM中のイニシヤライズ
ルーチンポインタIROUTPOはプログラムメモリ6Aのメモ
リエリアの先頭部分に格納されているイニシヤライズル
ーチンデータINITRT(第5図)をアクセスする。
また第6図において、残るグローバルポインタによつ
て表されるアドレスデータはテーブルメモリ6Bを構成す
る各テーブルデータの先頭アドレスを指定する。
すなわちテーブルメモリ6Bは、第5図に示すように、
キーモードテーブルKMTBL、スイツチモードテーブルSMT
BL、キー処理ルーチンアドレステーブル群KPTBLG、スイ
ツチ処理ルーチンアドレステーブル群SWTBLG、サブルー
チンアドレステーブルSRTBL、音色テーブルTCTBL、リズ
ムパターンテーブルRPTBL及び伴奏パターンテーブルAPT
BLを順次一連のアドレスを付して格納している。
グローバルポインタメモリ6X2には、キーモードテー
ブルKMTBL、スイツチモードテーブルSMTBL、サブルーチ
ンアドレステーブルSRTBL、音色テーブルTCTBL、リズム
パターンテーブルRPTBL及び伴奏パターンテーブルAPTBL
の先頭アドレスKMTBLPO、SMTBLPO、SUBRTBLPO、TCTBLP
O、RPTBLPO及びAPTBLPOが、グローバルポインタGLOBPを
構成するポインタとして格納され、該各種ポインタはメ
インルーチンの起動時、CPUの中又はRAM上に用意された
各種テーブルポインタレジスタに読み込まれ、以後のメ
インルーチンによる動作の中で対応するテーブルが使用
されるように設定される。
CPU4はメインルーチンの起動時に各グローバルポイン
タIROUTPO、KMTBLPO、SMTBLPO、SRTBLPO、TCTBLPO、RPT
BLPO及びAPTBLPO(第6図)を読み出し、これを第7図
に示すように、ワークメモリ5Aに設けられているイニシ
ヤライズルーチンポインタレジスタIROUTPR、キーモー
ドテーブルポインタレジスタKMTBLPR、スイツチモード
テーブルポインタレジスタSMTBLPR、サブルーチンテー
ブルポインタレジスタSRTBLPR、音色テーブルポインタ
レジスタTCTBLPR、リズムパターンテーブルポインタレ
ジスタRPTBLPR及び伴奏パターンテーブルポインタレジ
スタAPTBLPRに格納し、当該ワークメモリ5Aに格納した
アドレスデータに基づいて、ROM中のイニシヤライズル
ーチンや各種テーブルをアクセスする。
テーブルメモリ6BのキーモードテーブルKMTBLはキー
モードテーブルポインタレジスタKMTBLPRに読み出され
たキーモードテーブルポインタKMTBLPOによつて示さ
れ、かつキー処理ルーチンアドレステーブ群KPTBLGのア
ドレスを記憶する。また、キー処理ルーチンアドレステ
ーブル群KPTBLGは鍵盤の演奏モードデータKPMDごとに各
キーオンイベント、キーオフイベント、ABC(自動ベー
スコード演奏)等の処理サブルーチンの呼出アドレスを
記憶する。
ここで、鍵盤2の演奏モードは鍵盤動作モードデータ
KPMDの値によつて、例えば、KPMD=0のとき通常演奏モ
ードが指定され、KPMD=1のときキーボードパーカツシ
ヨンモードが指定され、KPMD=2のときABC自動伴奏モ
ードが指定され、KPMD=3のときシーケンサ録音モード
が指定される。
各鍵盤動作モードデータKPMDに対応するキー処理ルー
チンアドレステーブル群KPTBLGの呼出アドレスは、鍵盤
2の演奏モード従つて鍵盤動作モードデータKPMDが切り
換わるごとにキーモードテーブルKMTBLから読み出され
てキー処理ルーチンアドレステーブルポインタレジスタ
KPTPRに設定される。
こうして、演奏時には、例えば鍵盤が押鍵された時
(すなわちキーオンイベント時)に、各鍵盤動作モード
データKPMDごとにキーモードテーブルKPTBLに記憶させ
たキーオンイベントルーチンの呼出アドレスが読みださ
れ、当該呼出アドレスを用いてキーオンイベントルーチ
ンがコールされるようになされている。
一方、テーブルメモリ6BのスイツチモードテーブルSM
TBLは、読み出されたグローバルポインタすなわちスイ
ツチモードテーブルポインタSMTBLPOを収納するスイツ
チモードテーブルポインタレジスタSMTBLPRによつて示
される。
また、各機能スイツチは電子楽器の表示器の表示等に
応じて異なる動作モードすなわちスイツチ機能モードデ
ータSWMDごとに用意されている。上述のスイツチモード
テーブルSMTBLには各スイツチのオンイベントルーチン
の呼出アドレスを記憶したスイツチ処理ルーチンアドレ
ステーブル群SWTBLGのアドレスが記憶されている。従つ
て、このスイツチモードテーブルSMTBLをスイツチ機能
モードデータSWMDによつて参照することによりスイツチ
処理ルーチンアドレステーブル群の各テーブルSWTBLが
アクセス可能な状態に設定される。
ここで、機能スイツチの動作モードは、スイツチ機能
モードデータSWMDの値によつて、例えばSWMD=1のとき
音色選択モードが指定され、SWMD=2のとき音色エデイ
ツト1モードが指定され、SWMD=10のときボイススイア
モードが指定され、SWMD=11のときシーケンサエデイツ
ト1モードが指定される。アクセス可能な状態に設定さ
れたスイツチ処理ルーチンアドレステーブルSWTBLは機
能スイツチのオンイベント時に参照されて、各機能スイ
ツチに対応した処理ルーチンの呼出アドレスが読み出さ
れ、当該呼出アドレスに基づいて処理ルーチンがコール
される。
因に、各動作モードデータSWMDの中で個々のスイツチ
のオンイベントで読み出されるルーチンには、音色選
択、リズム選択、伴奏選択、各パラメータのエデイツ
ト、動作モードの設定等がある。
サブルーチンアドレステーブルSRTBLは、読み出され
たグローバルポインタの中のサブルーチンテーブルポイ
ンタSRTBLPOが収納されるサブルーチンテーブルポイン
タレジスタSRTBLPRにより指定される。このサブルーチ
ンアドレステーブルSRTBLには、動作モードすなわちス
イツチ機能モードデータSWMD、演奏モードすなわち鍵盤
動作モードデータKPMDのモードに関係のないスイツチの
オンイベント処理ルーチン(例えば、リズムスタートス
トツプなど)や、リズム処理、シーケンサ処理のための
サブルーチンの呼出アドレスが所定の順番に格納されて
いる。
そして、動作中のプログラムのうち上述のサブルーチ
ンが必要になつたとき、サブルーチンアドレステーブル
SRTBLを参照して、目的のサブルーチンを実行する。
音色テーブルTCTBLは、読み出されたグローバルポイ
ンタ中の音色テーブルポインタTCTBLPOを収納する音色
テーブルを収納する音色テーブルポインタレジスタTCTB
LPRにより示される。また、音色テーブルTCTBLは各音色
番号TCNごとの音色データの存在するメモリ上のアドレ
スを記憶している。
この音色テーブルTCTBLは音色選択のルーチンの中で
音色番号TCNにより参照され、得られたアドレスを用い
て音色番号TCNに対応した音色データを読み出して演奏
に使用する。
リズムパターンテーブルRPTBLは、グローバルポイン
タ中のリズムパターンテーブルポインタRPTBLPOを収納
するリズムパターンテーブルポインタレジスタRPTBLPR
により示される。
また、リズムパターンテーブルRPTBLには、各リズム
ナンバRNごとのリズムパターンデータの存在するアドレ
スを記憶している。音色選択の場合と同時に、リズムパ
ターンテーブルRPTBLには、リズム選択ルーチンの中で
リズムナンバRNにより参照され、得られたアドレスを用
いて、リズムナンバRNに対応したリズムパターンが読み
出し可能な状態に設定される。
同様にして、伴奏パターンテーブルAPTBLは、グロー
バルポインタ中の伴奏パターンテーブルポインタAPTBPO
を収納する伴奏パターンテーブルポインタレジスタAPTB
LPRにより示される。
また、伴奏パターンテーブルAPTBLには、伴奏パター
ン番号ごとの伴奏パターンデータのアドレスを記憶して
いる。伴奏パターンテーブルAPTBLは、伴奏パターン番
号ANによつて対応した伴奏パターンが読み出されて自動
伴奏が行われるように設定される。
かくして電子楽器1において、音色番号TCNによつて
指定した音色、リズムナンバRNによつて指定したリズ
ム、伴奏パターン番号ANによつて指定した伴奏パターン
による演奏が行えるようになされている。
(3)別付ROMメモリ部 別付ROMメモリ部16は、オリジナルROMメモリ部6のう
ち、必要に応じて変更するデータを格納しており、CPU4
はオリジナルROMメモリ部6のデータのうちの一部のデ
ータについて、別付ROMメモリ部16に格納されているデ
ータをオリジナルROMメモリ部6の対応するデータに換
えて使用する。
すなわち別付ROMメモリ部16は、第8図に示すよう
に、オリジナルROMメモリ部6(第5図)のグローバル
ポインタデータメモリ6X2、プログラムメモリ6A、テー
ブルメモリ6B及びデータメモリ6Cに対応する別付グロー
バルポインタデータメモリ16X2、別付プログラムメモリ
16A、別付テーブルメモリ16B及び別付データメモリ16C
を必要に応じて設けることができるように構成されてい
る。
ここで別付プログラムメモリ16A、別付テーブルメモ
リ16B及び別付データメモリ16Cは、オリジナルROMメモ
リ部6の対応するプログラム及び又はデータを変更する
ことが必要な場合に、当該変更したプログラム又は及び
データを格納するような構造の小容量ROMとして構成さ
れ、各メモリ16A、16B及び16Cの先頭アドレスが別付グ
ローバルポインタデータメモリ16X2に同様にして小容量
ROM中に形成された別付グローバルポインタデータによ
つて指定できるようになされている。
別付グローバルポインタデータメモリ16X2は、別付グ
ローバルポインタデータGLOBPNとして、第9図に示すよ
うに、別付イニシヤライズルーチンポインタIROUTPN、
別付キーモードテーブルポインタKMTBLPN、別付スイツ
チモードテーブルポインタSMTBLPN、別付サブルーチン
テーブルポインタSRTBLPN、別付音色テーブルポインタT
CTBLPN、別付リズムパターンテーブルポインタRPTBLPN
及び別付伴奏パターンテーブルポインタAPTBLPNを有す
る。
これらのデータのうち、オリジナルROMメモリ部6に
格納されているグローバルポインタデータGLOBP(第6
図)を変更しないデータについては、同じデータを別付
グローバルポインタデータメモリ16X2に格納することに
より、その別付グローバルポインタデータGLOBPNによつ
てもともと使われていたオリジナルROM部6中のテーブ
ルを指定し、オリジナルROMメモリ部6に格納されてい
るプログラム及び又はデータをアクセスできるようにな
されているのに対して、変更する必要があるプログラム
及び又はデータのグローバルポインタについては、別付
ROMメモリ部16(第8図)のメモリエリアを指定するア
ドレスを別付グローバルポインタデータGLOBPNの中に格
納する。かくして別付グローバルポインタデータGLOBPN
のうちオリジナルROMメモリ部6のグローバルポインタ
データGLOBPのアドレスデータとは異なるアドレスデー
タを有するポインタについてオリジナルROMメモリ部6
のテーブル(又はデータ)を使用せずに別付ROMメモリ
部16のテーブル(又はデータ)を使用できるようになさ
れている。
例えば第10図に示すように、音色番号TCN=5の音色
データと、スイツチモード番号SWMDがSWMD=3において
スイツチ番号SWN=10のイベント時に実行されるサブル
ーチンをオリジナルROMメモリ部6に格納されているサ
ブルーチンと入れ換えたい場合には、第10図に示す構成
の別付ROMメモリ部16をメモリ別付用ソケツト15に装着
する。
そのため、別付ROMメモリ部16には、第3番目の別付
スイツチモードテーブルポインタSMTBLPNと5番目の別
付音色データアドレステーブルポインタTCTBLPNがオリ
ジナルと異なる別付グローバルポインタとして用意され
ている。
別付スイツチモードテーブルポインタSMTBLPNによつ
て示される新たなスイツチモードテーブルSMTBLNは、SW
MD=3に対応する部分のみがオリジナルのスイツチモー
ドテーブルSMTBLと異なつており、他の部分はオリジナ
ルと同じであるようなアドレスデータを記憶している。
従つて、プログラム動作時には、SWMD≠3の場合はオ
リジナルROM6中のスイツチ処理ルーチンアドレステーブ
ルSWTBLが使用され、SWMD=3の場合のみ、別付ROM16中
のスイツチ処理ルーチンアドレステーブルSWTBLNが使用
される。当該新たなスイツチモードテーブルSMTBLNを用
いて、SWMD=3の時に呼び出される別付ROM16中のスイ
ツチ処理ルーチンアドレステーブルSWTBLNは、スイツチ
番号SWN=10の部分のみがオリジナルROM6中のSWMD=3
に対応するSWTBLと異なつており、他のSWN≠10の部分は
オリジナルと変わらない。
以上のような構成により、SWMD=3のときSWN=10の
スイツチの処理ルーチンのみをオリジナルROM6の処理ル
ーチンと差し換えることができる。
一方、別付ROM部16中の音色データアドレステーブルT
CTBLNは、新たな別付音色データアドレステーブルポイ
ンタTCTBLPNによつて示される。
当該音色データアドレステーブルTCTBLNは音色番号TC
N=5の部分がオリジナルROM部6の音色データアドレス
テーブルTCTBLと異なつており、TCT=5の音色が指定さ
れた時に別付ROM部16の新音色データがオリジナルROM部
6中のTCN=5の音色データの代わりに呼び出される。
音色データアドレステーブルTCTBLNの残りの部分(す
なわち、TCN≠5に対応する部分)は、オリジナルのTCT
BLと全く同じであり、別付ROM部16を装着する前後で指
定される音色データは変化しない。
以上のような構成により、複数の音色の中の例えば1
音色のみを別付ROM部16の中の新音色に差し換えること
ができる。
その他の別付グローバルポインタ、すなわち第1、第
2、第4、第6及び第7番目の別付グローバルポインタ
データIROUTPN、KMTBLPN、SRTBLPN、RPTBLPN及びAPTBLP
Nについては、オリジナルROMメモリ部6に格納されてい
るデータを指定すれば良いので、オリジナルROMメモリ
部6のアドレス空間のアドレスを表すグローバルポイン
タIROUTPO、KMTBLPO、SRTBLPO、RPTBLPO、APTBLPOをそ
のまま別付グローバルポインタデータメモリ16X2に格納
する。
第10図の実施例の場合、別付ROMメモリ部16のスイツ
チモードテーブルSMTBLNは、SWMD=3の位置に当該別付
ROMメモリ部16のアドレス空間にあるスイツチ処理ルー
チンアドレステーブルSWTBLNのアドレスを表すアドレス
データSWTPNを記憶しており、SWMD≠3のものについて
はオリジナルROM部6中のもともとのスイツチ処理ルー
チンアドレステーブルSWTBLを指すアドレスを記憶す
る。
このようにして別付ROMメモリ部16において指定され
たスイツチ処理ルーチンアドレステーブルSWTBLNから得
られる処理ルーチンのポインタは、オリジナルROMメモ
リ部6の対応するポインタ(すなわちSWTBL)と比較し
て、スイツチ番号SWN=10のスイツチの処理ルーチンに
ついてのポインタデータだけが異なるようなデータとし
て格納されている。かくしてこのポインタによつて指定
されたスイツチモードSWMD=3におけるスイツチ番号SW
N=10のスイツチ処理ルーチンとしてオリジナルROMメモ
リ部6において設定されていたサブルーチンとは異なる
アドレスをもつサブルーチンを指定できることになる。
また第10図の実施例の場合、音色データアドレステー
ブルTCTBLNは、オリジナルROMメモリ部6の音色データ
アドレステーブルTCTBLと比較して音色番号TCN=5のポ
インタだけが異なるポインタに置き換えられたと同様の
アドレスデータを格納している。
別付ROMメモリ部16は音色番号TCN=5の音色データを
入れ換えるために、第5の別付グローバルポインタでな
る別付音色テーブルポインタTCTBLPNによつて指定され
る音色データアドレステーブルTCTBLNを有する。
この音色データアドレステーブルTCTBLNは、オリジナ
ルROMメモリ部6の音色データアドレステーブルTCTBL
(第5図)と比較して、音色番号TCN=5のポインタだ
けが異なるようなテーブルとして構成され、これにより
当該音色番号TCN=5のポインタによつて別付データメ
モリ16Cのメモリエリアに音色番号TCN=5の音色データ
を指定できるようになされ、かくして別付ROMメモリ部1
6からオリジナルROMメモリ部6の場合と比較して、音色
番号TCN=5の音色を別付ROMメモリ部16を装着したこと
により変更できることになる。
(4)演算処理動作 電子楽器1のCPU4は上述のような構成のメモリのデー
タを用いながら、第11図に示すメインルーチンRT0を実
行することにより演奏者の押鍵演奏操作に応じた楽音を
発生し、又はエデイツト演算処理等のように操作された
スイツチに対応する演算処理を実行する。
CPU4は電子楽器1に電源が投入されたとき第11図に示
すメインルーチンRT0の処理を開始し、先ずステツプSP1
においてメモリ別付用ソケツト15に別付ROMメモリ部16
が装着されているか否かを検出した後、ステツプSP2に
おいて別付ROMメモリ部16の有無を判断する。
実際上ステツプSP1の検出方法として、メモリ別付用
ソケツト15の検出用のポートに装着フラグが立つたか否
かを検出する方法や、メモリ別付用ソケツト15に別付RO
Mメモリ部16を装着したとき予め設けられた装着確認ス
イツチをオン操作する方法や、メモリ別付用ソケツト15
に関連して検出器を設ける方法や、別付ROMメモリ部16
から装着フラグを発生する方法などを用いることができ
る。
ステツプSP2において別付ROMメモリ部16が装着されて
いると判断したとき、CPU4はステツプSP3において別付R
OMメモリ部16の別付グローバルポインタデータメモリ16
X2(第8図)から全ての別付グローバルポインタGLOBPN
を読み出してワークメモリ5Aに設けた各々対応するレジ
スタに読み込んだ後、次のステツプSP4に移る。
これに対してステツプSP2において別付ROMメモリ部16
が装着されていないことを確認したとき、CPU4はステツ
プSP5においてオリジナルROMメモリ部6のグローバルポ
インタデータメモリ6X2(第5図)から全てのグローバ
ルポインタGLOBPを読み出して各々対応するレジスタに
読み込んだ後、ステツプSP4に移る。
かくしてCPU4はメモリ別付用ソケツト15に別付ROMメ
モリ部16が装着されていないときには予めオリジナルRO
Mメモリ部6にマクスROM製造時に格納したグローバルポ
インタGLOBPを用いて鍵盤2において押鍵されたキーの
押鍵処理や、表示/入力部10又はスイツチ入力部9にお
いて入力されたスイツチデータの演算処理を実行する。
これに対してメモリ別付用ソケツト15に別付ROMメモ
リ部16が装着されているときには当該別付ROMメモリ部1
6を製造する際に格納された別付グローバルポインタGLO
BPNを用いて押鍵処理及びスイツチ処理を実行する。
ここで別付グローバルポインタGLOBPN(第8図)にお
いて、オリジナルROMメモリ部6に格納されているグロ
ーバルポインタGLOBPを変更する必要がない場合には、
当該同じデータを別付グローバルポインタGLOBPNとして
格納していることによりオリジナルROMメモリ部6に格
納されているデータを用いて演算処理を実行するのに対
して、オリジナルROMメモリ部6に格納されているデー
タのうち変更したいデータについては対応するグローバ
ルポインタGLOBPとは異なるアドレスを指定するデータ
を別付グローバルポインタGLOBPNとして格納しているこ
とにより、別付ROMメモリ部16に格納しているこの新た
なデータを指定する。
この結果CPU4は、メモリ別付用ソケツト15に別付ROM
メモリ部16が装着されたときその別付グローバルポイン
タGLOBPNを用いて演算処理を実行することにより、変更
する必要がないデータについてはオリジナルROMメモリ
部6のデータを使用し、かつ変更が必要なデータについ
て別付ROMメモリ部16のデータを使用することができ、
かくして実効的にオリジナルROMメモリ部6の記録内容
を別付ROMメモリ部16のデータによつて書き換えたと同
様の機能を実行する結果になる。
ステツプSP4においてCPU4は、オリジナルROMメモリ部
6のイニシヤライズルーチンポインタIROUTPO(第6
図)、又は別付イニシヤライズルーチンポインタIROUTP
N(第9図)を前記ステツプSP5又はステツプSP3で読み
込んだイニシヤライズルーチンポインタレジスタIROUTP
RによりイニシヤライズルーチンをオリジナルROMメモリ
部6のプログラムメモリ6A又は別付プログラムメモリ16
Aに格納されているイニシヤライズルーチンデータINITR
Tをコールし、これにより電子楽器1を全体として初期
状態にセツトする。
その後CPU4は、ステツプSP6において演奏者が鍵盤2
を演奏操作することによつてキーのオンイベント又はオ
フイベントを発生させたとき、当該押鍵処理を実行す
る。
続いてCPU4はステツプSP7においてスイツチ入力部9
又は表示/入力部10からモード別機能スイツチ(指定さ
れたモードSWMDによつて異なる機能を実行するスイツ
チ)からスイツチオンイベントのとき又はSW操作のあつ
たとき対応する処理を実行する。
続いてCPU4はステツプSP8においてその他のスイツチ
(すなわちモード別機能をもたないスイツチ)からスイ
ツチオンイベントのときその対応する処理を実行し、続
くステツプSP9においてその他の処理(例えばデイスプ
レイの処理、ペダル等の他の演奏操作子の処理、エラー
の起つたときの復帰処理等)を実行して上述のステツプ
SP6に戻る。
CPU4はステツプSP6における押鍵処理として鍵盤2に
おいてキーオン操作又はキーオフ操作がされたとき、第
12図に示すキーオンイベントルーチンRT1又は第13図に
示すキーオフイベントルーチンRT2を実行し、またスイ
ツチ入力部9又は表示/入力部10においてモード別機能
スイツチが操作されたときステツプSP7におけるモード
別機能スイツチ処理として第14図に示すスイツチオンイ
ベントルーチンRT3を実行し、さらにスイツチ入力部9
又は表示/入力部10においてモード別機能スイツチ以外
のスイツチとして例えばリズムスタートストツプスイツ
チがオン操作されたときステツプSP8における非モード
別機能スイツチ処理として第15図に示すリズムスタート
ストツプスイツチオンイベントルーチンRT4を実行す
る。
キーオンイベントルーチンRT1(第12図)に入ると、C
PU4はステツプSP11において鍵盤2から送出されるキー
情報S1に基づいてキーコードデータKCD及びタツチデー
タTDを形成する。続くステツプSP12においては、現在の
鍵盤演奏モードKPMDに対応して設定されているキー処理
ルーチンアドレステーブルポインタKPTPを用いて、現在
の鍵盤演奏モードに合つたキー処理ルーチンアドレステ
ーブルポインタKPTBLをアクセスし、そのキー処理ルー
チンアドレステーブルポインタKPTBLの第1番目に登録
されているキーオンルーチンの呼出アドレスデータを読
み出して、ルーチンポインタレジスタROUTPRに格納す
る。
鍵盤2の演奏モードは予めスイツチ入力部9又は表示
/入力部10のスイツチ操作によつて指定されており、指
定された演奏モードは鍵盤演奏モードデータKPMDとして
ワークメモリ5Aの鍵盤演奏モードレジスタKPMDR(第7
図)に格納されている。
ここで、鍵盤動作モードデータKPMDがKPMD=0のとき
ノーマル動作が指定されていることを表し、またKPMD=
1のときキーボードパーカツシヨンが指定されているこ
とを表し、またKPMD=2のときABC(自動ベースコー
ド)モードが指定されていることを表し、KPMD=3のと
きシーケンサ録音モードが指定されていることを表し、
以下同様にしてKPMD=4、5……のときそれぞれ他の動
作モードが指定されていることを表している。
以上のようにしてCPU4はキー処理ルーチンアドレスデ
ータポインタレジスタKPTPRに書き込まれているキー処
理ルーチンアドレスデータポインタKPTPによつて指定さ
れたキー処理ルーチンアドレステーブルKPTBLをオリジ
ナルROMメモリ部6及び別付ROMメモリ部16のキー処理ル
ーチンアドレステーブル群KPTBLG又はKPTBLGNから選択
し、これにより当該キーオン操作にかかるキーオン処理
のルーチンポインタROUTPを読み出してワークメモリ5A
のルーチンポインタレジスタROUTPR(第7図)に書き込
む。
続いてCPU4はステツプSP13においてルーチンポインタ
ROUTPによつて指定されたアドレスを有するサブルーチ
ンのプログラムデータがオリジナルROMメモリ部6又は
別付ROMメモリ部16のプログラムメモリ6C又は16Cにある
か否かを判断し、肯定結果が得られたときステツプSP14
においてルーチンポインタROUTPによつて指定されたサ
ブルーチンをコールすることにより当該キーオン処理演
算を実行し、その後ステツプSP15において当該キーオン
イベントルーチンRT1を終了する。
ここでステツプSP14において、ルーチンポインタROUT
Pを用いてコールされたキーオンルーチンは、通常の電
子楽器と同様、例えば、発音チヤンネルの割当て、発音
音色の制御、キースケーリング、効果の制御などの処理
を行う。
これに対してステツプSP13において否定結果が得られ
ことによりルーチンポインタROUTPによつて指定された
アドレスのサブルーチンがないことを確認した場合に
は、CPU4はステツプSP14をジヤンプして当該キーオンイ
ベントルーチンRT1を終了する。
この実施例の場合オリジナルROMメモリ部6(及び別
付ROMメモリ部16)のキー処理ルーチンアドレステーブ
ル群KPTBLG(及びKPTBLGN)は、第16図に示すように、
必要に応じて複数のキー処理ルーチンアドレステーブル
KPTBL(0)、KPTBL(1)……KPTBL(END)を有し、各
キー処理ルーチンアドレステーブルはキーオンルーチン
ポインタPTR0、キーオフルーチンポインタPTR1、ABCル
ーチンポインタPTR2、シーケンサ録音ルーチンポインタ
PTR3……のように、各機能動作モードに対応するサブル
ーチンを指定するアドレスデータを含んでいる。かくし
てCPU4は各キーが指定された鍵盤動作モードにおいてキ
ーオン又はキーオフ操作されたとき、当該動作条件に適
合するアドレスデータをルーチンポインタROUTPとして
ルーチンポインタレジスタROUTPRに送出できるようにな
されている。
鍵盤2において何れかのキーがキーオフ操作される
と、CPU4は第13図のキーオフイベントルーチンRT2に入
り、ステツプSP21において鍵盤2から送出されるキー情
報S1に基づいてキーオフ操作されたキーのキーコードデ
ータKCDを形成する。
CPU4は次のステツプSP22においてキー処理ルーチンテ
ーブルポインタレジスタKPTPRによつて指定されたキー
処理ルーチンアドレステーブルKPTBLをオリジナルROMメ
モリ部6又は別付ROMメモリ部16のキー処理ルーチンテ
ーブル群KPTBLG又はKPTBLGN(第16図)から選択し、そ
の中のキーオフルーチンの呼出しアドレスを読み出して
当該アドレスデータをルーチンポインタROUTPとしてル
ーチンポインタレジスタROUTPRに格納する。
続いてCPU4はステツプSP23において当該ルーチンポイ
ンタROUTPによつて指定されたアドレスを有するサブル
ーチンがプログラムメモリ6A又は16Aにあるか否かを判
断し、肯定結果が得られときステツプSP24において当該
ルーチンポインタROUTPによつて指定されたサブルーチ
ンをコールすることによりキーオフイベント処理を実行
し、その後ステツプSP25において当該キーオフイベント
ルーチンRT2を終了する。
これに対してステツプSP23において当該否定結果が得
られたときCPU4はステツプSP24をジヤンプして当該キー
オフイベントルーチンRT2を終了する。
またスイツチオンイベントルーチンRT3(第14図)に
おいて、CPU4はスイツチ入力部9のスイツチ入力信号S3
又は表示/入力部10のクリツク入力信号S4に基づいて入
力されるスイツチ情報の処理を実行する。
CPU4は第17図に示すような構成のスイツチ入力部9及
び表示/入力部10から入力されるスイツチ入力信号S3及
びクリツク入力信号S4に基づいて鍵盤モードやスイツチ
モードの選択もできるようになされ、鍵盤モードが指定
されたときワークメモリ5A(第7図)の鍵盤演奏モード
レジスタKPMDRに鍵盤演奏モードデータKPMDを格納する
と共に、スイツチモードが選択されたときワークメモリ
5A(第7図)のスイツチ機能モードレジスタSWMDRにス
イツチ機能モードデータSWMDを格納するようになされて
いる。
この実施例の場合CPU4はスイツチ機能モードSWMDとし
て、音色選択機能、リズムパターン選択機能、伴奏種類
選択機能、各種パラメータのエデイツト機能、効果選択
機能等が指定できるようになされ、これらのスイツチ機
能モードがスイツチ機能モードデータSWMDとして割り当
てられており、各スイツチ機能モードごとにスイツチ入
力部9及び表示/入力部10の各スイツチに対して所定の
スイツチ機能を実行できるようにする。
例えばスイツチ機能モードデータSWMDがSWMD=0のと
きスイツチ操作子は音色選択モードについてのスイツチ
機能を実行する。
同様にしてSWMD=1のときボイスエデイツト1のスイ
ツチ機能が割り当てられ、SWMD=2のときボイスエデイ
ツト2のスイツチ機能が割り当てられ……SWMD=K−2
のときボイススコアモードのスイツチ機能が割り当てら
れ、SWMD=K−1のときシーケンサエデイツトモードの
スイツチ機能が割り当てられ、SWMD=Kのときその他の
スイツチ機能が割り当てられる。
スイツチ入力部9は第17図に示すように、リズムスタ
ートストツプスイツチ機能についてスイツチ機能表示部
9IDI及びスイツチ操作子9SW1を有すると共に、その他の
スイツチ機能について、複数のスイツチ操作子9SW2と、
当該各スイツチ操作子9SW2に対して各モードにおいて割
り当てられるスイツチ機能をモード別スイツチ機能表示
子9ID2によつて表示するように構成されている。
また表示/入力部10は、表示画面10DIS及び表示画面1
0DISの下側縁部に沿つて配列された複数のスイツチ操作
子10SWを有し、表示画面10DISの画面モード表示エリアD
IS1に当該表示画面の表示モードを表示する(例えば
「画面名」、「音色名」……などの表示をする)と共
に、表示画面10DISの中央部に表示するパラメータ表示
エリアDIS2に必要に応じてパラメータを表示し、さらに
表示画面10DISの下側部に各スイツチ操作子10SWに対応
して表示される複数のスイツチ機能表示エリアDIS3に現
在スイツチ操作子10SWに対して割り当てられているスイ
ツチ機能を表示するようになされている。
CPU4は、いずれかのスイツチ操作子9SW1、9SW2、10SW
が操作されることによりスイツチオンイベントルーチン
RT3に入つたとき、当該操作されたスイツチ操作子に割
り当てられたスイツチ番号をスイツチバツフアレジスタ
SWBUFRに収納する。
CPU4は続くステツプSP32においてスイツチ処理ルーチ
ンアドレステーブルポインタSWTPによつて指定されたス
イツチ処理ルーチンアドレステーブルSWTBLをスイツチ
処理ルーチンアドレステーブル群SWTBLG又はSWTBLGNか
ら選択して当該オン操作されたスイツチのスイツチ番号
に対応したスイツチオンイベントルーチンポインタROUT
Pを読み出し、これをワークメモリ5Aのルーチンポイン
タレジスタROUTPRに書き込む。
ここに、スイツチ処理ルーチンアドレステーブルポイ
ンタSWTPは、上述したスイツチ機能モードデータSWMDに
対応しており、スイツチの操作等によつてスイツチ機能
モードが切換えられる時に同時にスイツチ処理ルーチン
アドレステーブルポインタレジスタSWTPRに設定され
る。従つて当該レジスタSWTPRは、現在のスイツチ機能
モードに対応したスイツチ処理ルーチンアドレステーブ
ルSWTBLを指定している。こうして、各スイツチ処理ル
ーチンアドレスSWTBLには対応するスイツチ機能モード
における各スイツチの機能を実現するための処理ルーチ
ンの呼出アドレスがスイツチ番号SWNの順に並べられて
おり、各スイツチのオンイベント時にスイツチ処理ルー
チンアドレステーブルポインタレジスタSWTPRで示され
るスイツチ処理テーブルを、イベントのあつたスイツチ
番号SWNで参照することにより各スイツチ機能モードデ
ータSWMDにおける各スイツチの機能を実現するためのル
ーチンの呼出アドレスが得られるようになつている。
続いてCPU4はステツプSP33においてルーチンポインタ
ROUTPによつて指定されたアドレスを有するサブルーチ
ンのプログラムデータがプログラムメモリ6A又は16Aに
あるか否かを判断し、肯定結果が得られたときステツプ
SP34においてルーチンポインタROUTPによつて指定され
たサブルーチンをコールすることにより当該スイツチオ
ン処理演算を実行し、その後ステツプSP35において当該
スイツチオンイベントルーチンRT3を終了する。
これに対してステツプSP33において否定結果が得られ
ることによりルーチンポインタROUTPによつて指定され
たアドレスのサブルーチンがプログラムメモリ6A又は16
Aにないことが確認できた場合には、CPU4はステツプSP3
4をジヤンプして当該スイツチオンイベントルーチンRT3
を終了する。
この実施例の場合オリジナルROMメモリ部6(及び別
付ROMメモリ部16)のスイツチ処理ルーチンアドレステ
ーブル群SWTBLG(及びSWTBLGN)は、第18図に示すよう
に、指定できるスイツチ機能モードSWMDに対応する複数
のスイツチ処理ルーチンアドレステーブルSWTBL
(0)、SWTBL(1)、SWTBL(2)……SWTBL(END)を
有し、各SWMDに対応するスイツチ処理ルーチンアドレス
テーブルはスイツチ入力部9及び表示/入力部10のスイ
ツチ操作子SW0、SW1、SW2……に対応するスイツチ別処
理ルーチンポインタPTR10、PTR11、PTR12……を含んで
いる。かくして当該スイツチ別ルーチンポインタPTR1
0、PTR11、PTR12……によつてスイツチオン操作された
スイツチについて現在のスイツチモードにおいて割り当
てられた機能を実行するサブルーチンを格納しているメ
モリエリアのアドレスを指定することができる。
CPU4はスイツチオンイベントルーチンRT3(第14図)
のステツプSP34において指定されたサブルーチンをコー
ルしたとき、例えば第19図又は第20図に示すようなサブ
ルーチンRT11又はRT12を実行する。
第19図のサブルーチンRT11は音色選択サブルーチン
で、スイツチ機能モードデータSWMDがSWMD=0のときに
コールされる。
CPU4は音色選択サブルーチンRT11に入ると、ステツプ
SP41においてスイツチバツフアレジスタSWBUFR(第7
図)に書き込まれているスイツチ番号SWNの値に応じて
音色番号TCNを設定する。
続いてCPU4はステツプSP42において音色テーブルポイ
ンタレジスタTCTBLPR(第7図)の音色テーブルポイン
タTCTBLPOによつて指定された音色テーブルTCTBL(第5
図)又はTCTBLN(第10図)を音色番号TCNを用いて参照
することにより音色データの呼出しアドレスTCPを発生
する。
ここで音色テーブルポインタレジスタTCTBLPRには第1
1図について上述したようにオリジナルROMメモリ部6
(第5図)のグローバルポインタデータメモリ6X2に音
色テーブルポインタTCTBLPO(第6図)として格納され
ているもの、あるいはこれを変更する場合には当該変更
する情報に対応するグローバルポインタデータが別付RO
Mメモリ部16(第9図)の別付グローバルポインタデー
タメモリ16X2に別付音色テーブルポインタTCTBLPNとし
て格納されているものが、ステツプSP5又はステツプSP3
において収納されている。
そこでCPU4は、変更がない場合音色番号TCNによつて
オリジナルROMメモリ部6(第5図)の音色テーブルTBT
BLを指定することにより当該オリジナルROMメモリ部6
のデータメモリ6Cから音色データを読み出すことにより
楽音信号発生部7において当該音色の楽音を発生させ
る。
これに対してオリジナル機能の一部を変更した場合
(第10図の場合第5番目の音色、すなわちTCN=5の別
付音色テーブルポインタTCTBLPNが音色テーブルポイン
タTCTBLPOに代えて変更されている)には、CPU4は、別
付ROMメモリ部16の音色データアドレステーブルTCTBLN
を音色番号TCNによつて指定することにより、別付ROMメ
モリ部16のデータメモリ16C(第10図)の音色データを
用いて当該指定された音色を楽音信号発生部7において
発生させる。
かくしてCPU4はステツプSP42において別付ROMメモリ
部16によつて各音色番号TCNの音色データが変更されて
いるか否かに基づいて、変更されている場合にはオリジ
ナルROMメモリ部6の音色データを用いずに別付ROMメモ
リ部16の音色データを用いて楽音を発生するような処理
を実行し、その後続いてステツプSP43において当該発音
した音色の楽音に対応する音色番号TCNを表示/入力部1
0において表示した後、ステツプSP44からスイツチオン
イベントルーチンRT3(第14図)のステツプSP35に戻
る。
次に、このように第14図のスイツチオンイベントルー
チンRT3によつてスイツチ機能モードデータSWMDがSWMD
=0に指定された状態にあるとき、当核スイツチ機能モ
ードを、例えばSWMD=0からSWMD=2(すなわちボイス
エデイツト2モード)へ移行させるような機能の割当て
られたスイツチが操作された場合に実行されるサブルー
チンRT12を第20図に示す。
サブルーチンRT12においてCPU4は、ステツプSP51でワ
ークメモリ5Aのスイツチ機能モードデータとしてSWMDR
(第7図)にスイツチ機能モードデータとしてSWMD=2
を書き込む。
続いてCPU4は、ステツプSP52においてスイツチモード
テーブルポインタレジスタSMTBLPR(第7図)によつて
指定されているスイツチモードテーブルSMTBL(又はSMT
BLN)を、スイツチ機能モードデータSWMD(=2)で参
照してスイツチ処理ルーチンアドレステーブル群SWTBLG
(又はSWTBLGN)のうちから対応するスイツチ処理ルー
チンアドレステーブルを表すスイツチ処理ルーチンアド
レステーブルポインタSWTPを得る。
ここでスイツチ処理ルーチンアドレステーブルポイン
タSWTPは現在指定されているスイツチ機能モードデータ
SWMD=2のサブルーチンに変更がない場合にはオリジナ
ルROMメモリ部6(第5図)のスイツチ処理ルーチンア
ドレステーブル(第18図)を選択指定するのに対して、
現在指定されているスイツチ機能モードデータSWMD=2
のサブルーチンの一部に変更がある場合には別付ROMメ
モリ部16(第10図)のスイツチ処理ルーチンアドレステ
ーブルSWTBLNを指定する。
その後CPU4は続くステツプSP53において当該スイツチ
機能モードデータSWMD=2に対応するエデイツト画面を
表示した後、ステツプSP54からスイツチオンイベントル
ーチンRT3(第14図)のステツプSP35に戻る。
かくしてCPU4はスイツチ機能モードをSWMD=0からSW
MD=2の状態に切り換えることができる。
以上は第14図に示すように、電子楽器のモードに従つ
て各スイツチの機能を切り換えるようにしたスイツチの
処理機能を述べたが、CPU4は第15図においてリズムスタ
ートストツプスイツチオンイベントルーチンRT4として
示すような非モード別機能スイツチ処理を実行するよう
なスイツチ機能をもつ。
第15図においては、モード別に分類されない機能をも
つスイツチ(すなわち非モード別機能スイツチ)として
リズムスタートストツプスイツチの場合が例示されてお
り、スイツチ入力部9のリズムスタートストツプスイツ
チ9SW1が操作されたときCPU4はステツプSP61においてリ
ズムスタートをすべきか否かを判断する。
この実施例の場合リズム演奏が3つの演奏モードにお
いて実行できるようになされている。
第1の演奏モードは演奏者がリズム発音モードを指定
した場合で、この場合CPU4はリズム発音フラグRONをRON
=1に設定することにより当該リズム発音モードが指定
されていることを表す。
また第2の演奏モードは演奏者が自動ベースコード演
奏モード(ABCモード)を指定した場合で、この場合CPU
4は鍵盤操作モードデータKPMDをKPMD=2に設定するこ
とにより当該自動ベースコード演奏モードが指定された
ことを表す。
第3の演奏モードはシーケンサリズム演奏モードで、
演奏者がシーケンサによるリズム演奏を指定したときCP
U4はシーケンサオンフラグSONをSON=1に設定すること
によつて当該シーケンサリズム演奏モードが指定された
状態にあることを表す。
CPU4はステツプSP61においてリズム発音フラグRONがR
ON=1ではなく、かつ鍵盤動作モードデータKPMDがKPMD
=2ではなく、かつシーケンサオンフラグSONがSON=1
ではないか否かを判断する。
ここで否定結果が得られたときには、電子楽器はリズ
ム発音モード、又は自動ベースコード演奏モード、又は
シーケンサリズム演奏モードの何れかが指定されている
ことを意味しており、このときCPU4はステツプSP62に移
つてリズム発音フラグRUNを反転させることによりリズ
ムラン状態を変更設定した後、ステツプSP63においてオ
リジナルROMメモリ部6(第5図)又は別付ROMメモリ部
16(第8図)のサブルーチンアドレステーブルSRTBL又
はSRTBLN(第21図)に格納されているリズムスタートス
トツプスイツチオンルーチンポインタRSWROUTPによつて
指定されたサブルーチンをコールすることにより電子楽
器1を全体としてリズム演奏状態に設定する。
この実施例の場合CPU4はステツプSP63のサブルーチン
において例えばクロツクの初期設定等を実行することに
よりリズム演奏状況を指定する。
かくしてCPU4は当該リズムスタートストツプスイツチ
オンイベントルーチンRT4をステツプSP64において終了
する。
これに対してステツプSP61において肯定結果が得られ
たとき、このことはリズム演奏条件が指定されていない
ことを意味し、このときCPU4はステツプSP65においてリ
ズム発音フラグRUNをリセツトした後、ステツプSP66に
おいて当該リズムスタートストツプスイツチオンイベン
トルーチンを終了する。
この実施例の場合サブルーチンポインタテーブルSRTB
L又はSRTBLN(第21図)はリズム発音に関するサブルー
チンを指定し得るサブルーチンポインタとして、リズム
スタートストツプスイツチオンルーチンポインタRSWROU
TP、リズム発音処理ルーチンポインタRROUTP、シーケン
サプレイ処理ルーチンポインタSROUTP、アカンパニメン
ト発音処理ルーチンポインタAROUTP及びその他のルーチ
ンポインタを格納しており、オリジナルROMメモリ部6
及び別付ROMメモリ部16のテーブルメモリ6B及び16Bに設
けられている。
次に、CPU4はタイマ11(第1図)からインタラプト信
号S5を受けたとき、第22図に示すタイマ割込ルーチンRT
5に従つてリズム発音動作を実行する。
すなわちCPU4はステツプSP71、SP72において順次リズ
ム発音フラグRUN及びリズム演奏フラグRONが論理「1」
であるか否かを判断し、肯定結果が得られたときステツ
プSP73においてサブルーチンアドレステーブルSRTBL又
はSRTBLN(第21図)のリズム発音処理ルーチンポインタ
RROUTPによつて指定されたリズム発音処理ルーチンをコ
ールする。
このルーチンの中でCPU4はオリジナルROMメモリ部6
又は別付ROMメモリ部16のリズムパターンテーブルRPTBL
によつて指定されたリズムパターンでリズム演奏を実行
する状態になる。
これに対してステツプSP72において否定結果が得られ
ると、このことはリズム演奏モードが指定されていない
ことを表しており、このときCPU4はステツプSP73をジヤ
ンプして次のステツプSP74に移る。
ステツプSP74においてCPU4は、鍵盤動作モードデータ
KPMDがKPMD=2(ABCモードを指定している状態)であ
るか否かを判断し、肯定結果が得られたときステツプSP
75においてサブルーチンアドレステーブルSRTBL又はSRT
BLN(第21図)のアカンパニメント発音処理ルーチンポ
インタAROUTPによつて指定されたアカンパニメント処理
ルーチンをコールする。
このアカンパニメント処理ルーチンにおいてCPU4はオ
リジナルROMメモリ部6又は別付ROMメモリ部16の伴奏パ
ターンアドレステーブルAPTBL(第5図)又はAPTBLN
(第8図)に格納されている伴奏パターンポインタAPP
によつて指定された自動伴奏パターン(アカンパニメン
トパターン)に従つてリズム演奏をする状態になる。
これに対してステツプSP74において否定結果が得られ
ると、このことは自動ベースコード演奏モードが指定さ
れていないことを表しており、このときCPU4はステツプ
SP75の処理をジヤンプして次のステツプSP76に移る。
ステツプSP76においてCPU4はシーケンサオンフラグSO
NがSON=1であるか否かを判断し、肯定結果が得られた
ときステツプSP77においてサブルーチンアドレステーブ
ルSRTBL又はSRTBLN(第21図)のシーケンサプレイ処理
ルーチンポインタSROUTPによつて指定されたシーケンサ
プレイ処理ルーチンをコールする。
このときCPU4はシーケンサプレイ処理ルーチンポイン
タSROUTPに対応するアドレスで格納されているプログラ
ムを用いてデータメモリ5B(第1図)及び6C(第5図)
及び16C(第8図)に格納されているシーケンサデータ
に基づいてシーケンサリズム演奏を実行する。
これに対してステツプSP76において否定結果が得られ
ると、このことはシーケンサリズム演奏モードが選定さ
れないことを意味し、このときCPU4はステツプSP77の処
理をジヤンプして次のステツプSP78に移る。
ステツプSP78においてCPU4はリズム音の小節位置を示
すクロツクカウント数CLKを「+1」インクリメント処
理した後、ステツプSP79において当該クロツクカウント
数が最大値を超えたか否かを判断し、超えた場合ステツ
プSP80においてクロツクカウント数CLKを数値0にクリ
アしてステツプSP81からメインルーチンに戻る。
これに対してクロツクカウント数CLKが最大値を超え
ていない場合CPU4は、ステツプSP80の処理をせずに直ち
にメインルーチンに戻る。
このようにしてCPU4はタイマ11からインタラプト信号
S5が発生されるごとに指定されているリズム音発生モー
ドに応じてリズム演奏モード、又は自動ベースコード演
奏モード、又はシーケンサリズム演奏モードに応じたリ
ズム演奏音を発生する。
(5)実施例の動作、効果 以上の構成において、電源投入時CPU4はメインルーチ
ンRT0(第11図)を実行する際に、ステツプSP2、SP3及
びSP5における処理を実行することにより、メモリ別付
用ソケツト15に別付ROMメモリ部16が装着されているか
否かを判断し、装着されていないときオリジナルROMメ
モリ部6(第5図)のグローバルポインタGLOBPを各々
対応するポインタレジスタに読み込むことにより以後当
該オリジナルROMメモリ部6に格納されたいたグローバ
ルポインタGLOBPに基づいてオリジナルROMメモリ部6に
格納されているアドレステーブルを介してプログラムメ
モリ6A、テーブルメモリ6B及びデータメモリ6Cに格納さ
れているプログラム及びデータを用いて鍵盤の演奏処
理、エデイツト処理等を実行する。
これに対してメモリ別付用ソケツト15に別付ROMメモ
リ部16(第8図)が装着されている場合には別付ROMメ
モリ部16に格納されている別付グローバルポインタGLOB
PNを各々対応するポインタレジスタに読み込むことによ
り(第11図のステツプSP3)、当該別付グローバルポイ
ンタGLOBPNを用いて鍵盤の発音処理、エデイツト処理等
を実行する。
ここで別付グローバルポインタGLOBPNは、オリジナル
ROMメモリ部6に格納されているデータのうち、必要に
応じて変更したデータに対応するグローバルポインタだ
けをオリジナルROMメモリ部6のグローバルポインタGLO
BPとは異なるデータに変更されているのに対して、変更
を必要としないデータについてはオリジナルROMメモリ
部6のグローバルポインタGLOBPと同じデータが別付ROM
メモリ部16の別付グローバルポインタデータGLOBPNとし
て格納されている。
かくして別付ROMメモリ部16が装着されているときCPU
4は、演奏者の操作指令に対応する演算を実行する際
に、別付ROMメモリ部16の別付グローバルポインタデー
タGLOBPNを用いることにより変更がされないプログラム
又はデータについてはオリジナルROMメモリ部6に格納
されているデータを用いて当該指定された演算処理を実
行する。
これに対してオリジナルROMメモリ部6に格納されて
いるデータのうち変更を必要とするデータについては別
付グローバルポインタGLOBPNがオリジナルROMメモリ部
6のアドレスを指定せず、これに代えて別付ROMメモリ
部16のデータアドレスを指定することにより、別付ROM
メモリ部16に格納されているデータを用いて演奏者の指
定操作に対応する演算処理を実行する。
かくして上述の実施例によれば、オリジナルROMメモ
リ部6に例えばバグが発生したことにより当該バグが発
生したプログラムを交換したい場合や、すでにオリジナ
ルROMメモリ部6にマスクROMの構造として格納されてい
るプログラムを変更したい場合等のような場合には、オ
リジナルROMメモリ部6の変更したいデータが格納され
ているアドレスを表すグローバルポインタだけを変更し
てなる別付グローバルポインタデータGLOBPNと、変更し
たいデータとを格納してなる別付ROMメモリ部16を用意
してメモリ別付用ソケツト15に装着するだけの簡易な構
成によつてプログラムの変更等を容易になし得る。
かくするにつき、オリジナルROMメモリ部6を全体と
して交換するのではなく、その一部を別付ROMメモリ部1
6に置き換えるだけの簡易な変更で済む。
〔発明の効果〕
上述のように本発明によれば、データを固定記憶する
第1の記憶手段とは別体に第2の記憶手段を必要に応じ
て装着できるようにしたことにより、第1の記憶手段の
プログラムのうち一部のプログラムを必要に応じて簡易
に変更することができるようにした電子楽器を容易に実
現できる。
【図面の簡単な説明】
第1図はこの発明による電子楽器の全体構成を示すブロ
ツク図、第2図はそのメモリ別付装置部を示す分解斜視
図、第3図は第1図のメモリに割り当てられるアドレス
マツプを示す略線図、第4図は別付ROMメモリ部へのア
ドレスの割当て方法を示す略線図、第5図は第1図のオ
リジナルROMメモリ部の構成を示す略線図、第6図はオ
リジナルROMメモリ部のグローバルポインタを示す図
表、第7図は第1図のワークメモリの構成を示す図表、
第8図は第1図の別付ROMメモリ部の構成を示す図表、
第9図は第8図の別付グローバルポインタを示す図表、
第10図は別付ROMメモリ部の一例を示す図表、第11図は
第1図のCPU4のメインルーチンを示すフローチヤート、
第12図、第13図、第14図及び第15図はそれぞれキーオン
イベントルーチン、キーオフイベントルーチン、スイツ
チオンイベントルーチン及びリズムスタートストツプス
イツチオンイベントルーチンを示すフローチヤート、第
16図はキー処理ルーチンアドレステーブル群を示す略線
図、第17図は第1図のスイツチ入力部9及び表示/入力
部10の詳細構成を示す略線的平面図、第18図はスイツチ
処理ルーチンアドレステーブル群の構成を示す略線図、
第19図及び第20図は音色選択サブルーチン及びエデイツ
トモード選択サブルーチンを示すフローチヤート、第21
図はサブルーチンアドレステーブルを示す図表、第22図
はタイマ割込ルーチンを示すフローチヤートである。 1……電子楽器、2……鍵盤、3……バス、4……CP
U、5……RAMメモリ部、6……オリジナルROMメモリ
部、9……スイツチ入力部、10……表示/入力部、14…
…メモリ別付装置部、15……メモリ別付用ソケツト、16
……別付ROMメモリ部。

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】複数の第1のデータを記憶する第1の記憶
    手段と、 第2のデータを記憶すると共に、上記第1の記憶手段に
    記憶されている上記複数の第1のデータのうちの少くと
    も1つの差換えを指示する差換指示手段を有する第2の
    記憶手段と、 上記第2の記憶手段を装着し得る装着手段と、 上記装着手段に上記第2の記憶手段が装着されたか否か
    を検出する装着検出手段と、 上記第1の記憶手段に記憶されている上記第1のデータ
    を読み出すもので、上記装着検出手段の検出結果に基づ
    いて上記第2の記憶手段が装着されている場合であつ
    て、読み出そうとする上記第1のデータが上記差換指示
    手段によつて差換えを指示されたものである場合には、
    当該第1のデータを読み出す代りに、当該第1のデータ
    に対応する第2のデータを上記第2の記憶手段から自動
    的に読み出す読出手段と を具えることを特徴とする電子楽器。
  2. 【請求項2】上記第1の記憶手段は、上記複数の第1の
    データとして、複数種類のデータを記憶し、 上記第2の記憶手段の上記差換指示手段は、上記複数種
    類ごとに、データの差換えを指示する ことを特徴とする特許請求の範囲第1項に記載の電子楽
    器。
  3. 【請求項3】さらに、読み出すべきデータを番号によつ
    て指定する入力手段を具え、 上記差換指示手段は上記番号を上記第1及び第2の記憶
    手段に記憶された上記第1及び第2のデータに対応づけ
    るテーブルによつて構成され、 上記読出手段は上記入力手段によつて入力された番号に
    対応するデータを読み出す ことを特徴とする特許請求の範囲第1項に記載の電子楽
    器。
JP2236435A 1990-09-05 1990-09-05 電子楽器 Expired - Fee Related JP2692361B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2236435A JP2692361B2 (ja) 1990-09-05 1990-09-05 電子楽器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2236435A JP2692361B2 (ja) 1990-09-05 1990-09-05 電子楽器

Publications (2)

Publication Number Publication Date
JPH04115294A JPH04115294A (ja) 1992-04-16
JP2692361B2 true JP2692361B2 (ja) 1997-12-17

Family

ID=17000713

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2236435A Expired - Fee Related JP2692361B2 (ja) 1990-09-05 1990-09-05 電子楽器

Country Status (1)

Country Link
JP (1) JP2692361B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009112700A (ja) * 2007-11-09 2009-05-28 Daito Giken:Kk 遊技台

Also Published As

Publication number Publication date
JPH04115294A (ja) 1992-04-16

Similar Documents

Publication Publication Date Title
JP2988242B2 (ja) 電子楽器
US4791847A (en) Parameter setting system for electronic musical instrument
KR100372311B1 (ko) 전자악기
JP3561953B2 (ja) 電子楽器
JP2692361B2 (ja) 電子楽器
EP0296629B1 (en) Electronic musical instrument capable of performing an automatic accompaniment
JP2692360B2 (ja) 電子楽器
JP3277537B2 (ja) 電子楽器
JP2692361C (ja)
JP3099630B2 (ja) 楽音信号制御装置
JP2757711B2 (ja) 電子楽器
JPH02310595A (ja) 電子楽器
JPH036515B2 (ja)
JPH01177091A (ja) 演奏操作入力装置
JP2641851B2 (ja) 自動演奏装置
JP2778594B2 (ja) 電子楽器
JP4000986B2 (ja) 表示制御装置及びプログラム
JP2746044B2 (ja) 電子機器の選択制御装置
JP2756805B2 (ja) 自動リズム演奏装置
JP3413860B2 (ja) デバッグ方式
JP4674509B2 (ja) 電子楽器
JP2596168B2 (ja) 電子楽器
JPH03192398A (ja) 電子楽器
JP2660628B2 (ja) シーケンサの表示装置
JP3718309B2 (ja) 電子楽器の楽音データ編集処理装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19970805

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20070905

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20080905

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees