JPH024917B2 - - Google Patents

Info

Publication number
JPH024917B2
JPH024917B2 JP56005393A JP539381A JPH024917B2 JP H024917 B2 JPH024917 B2 JP H024917B2 JP 56005393 A JP56005393 A JP 56005393A JP 539381 A JP539381 A JP 539381A JP H024917 B2 JPH024917 B2 JP H024917B2
Authority
JP
Japan
Prior art keywords
time
register
input
scale
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP56005393A
Other languages
Japanese (ja)
Other versions
JPS57119395A (en
Inventor
Takemi Mizuta
Tomohiro Inoe
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP56005393A priority Critical patent/JPS57119395A/en
Priority to US06/333,694 priority patent/US4491049A/en
Publication of JPS57119395A publication Critical patent/JPS57119395A/en
Publication of JPH024917B2 publication Critical patent/JPH024917B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】[Detailed description of the invention]

本発明は電子楽器に関し、特にキー操作によつ
て所望の曲を演奏するとともに、前記キー操作の
手順を記憶して、後で再生することができるよう
にした電子楽器に関する。 先行技術では、オルガン演奏と同じ感覚でキー
操作を行ないながら、押圧されたキーの種類、押
圧時間等をそのままメモリに記憶させることによ
つて、所望の曲をメモリにストさせ、任意に再生
することができるようにしている。この場合、キ
ーの押圧時間や離している時間を如何に量子化し
てメモリにストアするかが問題となる。できるだ
け忠実に再現するためには、その時間記憶のため
に多くのビツト数を準備すればよいが、小型の電
子楽器ではメモリ容量の制限によつて、多数のビ
ツト数を用いることは困難であり、長い曲をスト
アすることができないという問題があつた。たと
えば、表わすことのできる最短時間を15m秒に設
定したとすると、3秒を表わすためには8ビツト
必要となる。 本発明は、音情報を圧縮してストアすることに
より、メモリ容量が小さくてもより長い曲をスト
アすることができるようにした電子楽器を提供す
ることを目的とする。 本発明は、複数の音階キーの操作によつて演奏
するとともにその演奏手順を記憶手段に記憶させ
再生することができるようにした電子楽器におい
て、 上記記憶手段は、音階キーの操作による音階お
よび操作手順にかかる時間データを合わせて記憶
し、 上記時間データは、 音階キーの操作にかかる時間を計数する計数手
段(たとえばタイマTIM)と、 該計数手段による計数値が予め定められた複数
の異なる数値のうちどの範囲に含まれるかを区別
する判別手段(たとえば第7図ステツプn2、n5、
n9、n12、n15)と、 上記複数の数値の各々に応じた圧縮計算式に従
い、上記判別手段にて区別された計数値を圧縮演
算する演算手段(たとえば第7図ステツプn6、
n10、n13、n16)と、 からなる圧縮手段にて時間圧縮されたデータで
あることを特徴とする電子楽器である。 以下、図面によつて本発明の実施例を説明す
る。第1図は本発明の一実施例の正面図である。
この電子楽器は、時計機能と、計算機能とを併せ
持つており、18個の音階キー1が鍵盤状に配置さ
れる。演奏時には、モード選択スイツチ2を演奏
モードに切換えて、各音階キー1を押圧操作する
ことにより演奏を行なうことができる。たとえ
ば、「1」のキーを押せば“ド”の音が出力され、
「%」のキーを押せば“ド#”の音が出力される。
この演奏時において、キー操作の順序、ならびに
音階キー1を押している時間および音階キー1か
ら手を離している時間が後述のごとく記憶され
る。自動演奏させるには、再生キー5を押せばよ
く、そうすれば前記演奏によつて記憶された曲目
が再生されて自動演奏が行なわれる。なお、表示
部3には、演奏時において時計表示が行なわれ
る。 第2図は第1図の電子楽器の演奏機能を有する
部分のブロツク図である。キーマトリツクス6は
前述の各種キー1,2,4,5を含む。マイクロ
プロセツサ7は、端子O3〜O8からキーマトリ
ツクス6にストローブ信号を出力する。それに応
じてキーマトリツクス6の端子KEY,SWからの
キーリターン信号を端子K1〜K5およびK6か
ら読み込むことにより、キー読み込みが行なわれ
る。表示部3は、液晶表示素子から成り、マイク
ロプロセツサ7の端子H1〜H3からバツクプレ
ート信号が入力され、また33本のセグメント出力
端子a1,b1,c1〜a11,b11,c11
からセグメント信号が入力される。外部メモリ8
の入力端子A0〜A7には、マイクロプロセツサ
7の出力端子B1〜B8からアドレス信号が入力
される。また、マイクロプロセツサ7の端子Di
01〜Di04、ならびに外部メモリ8の端子Di
1〜Di4およびDo1〜Do4相互間ではデータ信
号が相互に出力または入力される。チツプセレク
ト信号は、マイクロプロセツサ7の端子F1から
外部メモリ8の端子CEに入力され、またリード
ライト信号はマイクロプロセツサ7の端子R/W
から外部メモリ8の端子R/Wに入力される。 なお、マイクロプロセツサ7の端子VDD,
GND間には電池9が接続され、端子X1,X2
間には水晶発振子10が接続され、端子R1,R
2間にはクロツクジエネレータCG1(第3図参
照)を発振させるための抵抗11が接続される。
さらに、端子O1,O2間には、発音体12が接
続されており、端子O1,O2から出力される音
階信号によつて発音体12が振動して音が鳴らさ
れる。 第3図は第2図に示したマイクロプロセツサ7
の構成を示すブロツク図である。クロツクジエネ
レータCG1からのクロツクパルスは音階発生回
路OG1,OG2、およびシステムクロツク発生
回路SCに入力される。音階発生回路OG1,OG
2においては、音階コード信号の入力に応じてク
ロツクジエネレータCG1からのクロツクパルス
を分周し、音階信号を生成する。エンベロープバ
ツフアEB1,EB2は、前記音階信号の振幅(包
絡)を振幅情報によつて制御して端子O1,O2
に出力する。分周回路DIVは、基準時間信号発振
回路OSCの発振周波数を分周し、時計として動
作させるための1秒信号を出力するとともに32Hz
の信号をタイマ回路TIMに供給する。タイマ回
路TIMはカウンタであり、常にカウントを続け
るが、命令によつてリセツトされる。このタイマ
回路TIMの出力値を読み込むことによつてカウ
ンタをリセツトしてから読み込むまでの時間情報
が得られる。この時間情報は、音階キー1の押圧
時間や離している時間、あるいは再生時における
音階出力の決定に用いられる。リードオンリメモ
リROMは固定メモリであり、このマイクロプロ
セツサ7を動作させるための命令コードが記憶さ
れている。ランダムアクセスメモリRAMはリー
ドライトメモリであり、各種レジスタやフラツグ
等として用いられる。 ランダムアクセスメモリRAMは第4図で示す
ように配置されている。第4図において、X,
Y,Z,Mはレジスタであり、計算用としてある
いはメモリとして使用される。TTは現時刻を記
憶するレジスタであり、たとえば6桁で時、分、
秒の内容を記憶する。T1は音長データや休止長
データを一時的に記憶するレジスタである。ま
た、SDは、音階データ、音長データ、休止長デ
ータを記憶するレジスタであり、たとえば音階デ
ータを5ビツト、音長データを6ビツト、休止長
を5ビツトで、すなわち合計16ビツトで記憶す
る。FF1,FF2はフラツグである。 再び第3図を参照して、表示用メモリとしての
DRAMにおいて、各ビツトと液晶表示素子の各
セグメントとは対応しており、したがつてデコー
ドした表示情報がセツトされることにより、セグ
メントバツフアSBを介して液晶表示素子にセグ
メント信号が印加される。さらに、ACCはアキ
ユムレータ、ALUは算術論理演算回路、ROMA
はリードオンリメモリROMのアドレスカウン
タ、BPBは液晶制御回路LCDCからのバツクプレ
ート信号出力バツフア、BLはRAMおよび
DRAMのデイジツトアドレスカウンタ、BMは
RAMおよびDRAMのフアイルアドレスカウン
タ、TXはテンポラリレジスタ、SPはスタツクポ
インタ、Fは出力バツフアである。 第5図を参照して動作を説明する。演奏にあた
つては、モード選択スイツチ2(第1図参照)を
演奏モードに切換える。そうすればステツプm1
において表示部3の表示が全桁にわたつて零とな
る。したがつて表示部3の全桁に零が表示されて
いれば、演奏モードとなつていることがわかる。
次いで、ステツプm2において音階キー1が押さ
れると、ステツプm3において表示部3に時計表
示が行なわれる。この時計表示によつて演奏が開
始されたことを確認することができる。ステツプ
m4においては、ポインタがリセツトされる。こ
こで「ポインタ」とは、外部メモリ8に演奏情報
をストアする際にその番地を記憶するものであ
る。すなわち、ポインタがリセツトされることに
より、演奏情報が先頭番地から順次外部メモリ8
に入力される。さらにステツプm5において、押
圧された音階キー1に対応する音階コードがラン
ダムアクセスメモリRAMのバツフアに入立され
た後、ステツプm6においてタイマ回路TIMがリ
セツトされる。その後でステツプm7において音
階発生回路OG1,OG2に音階コードが入力さ
れ、それに応じて対応する音階の音が出力され
る。ステツプm8において、音階キー1の押圧が
終了して手が離れると、ステツプm9においてそ
のときのタイマ回路TIMの出力値TがXレジス
タに入力される。ステツプm10においては、後述
のように時間圧縮された後、ステツプm11におい
て音長データがランダムアクセスメモリの音長バ
ツフアに入力される。それとともにステツプm12
では音階の発生が停止する。そこで、次に音階キ
ー1が押されるまでの間、すなわち休止長を計時
するために、ステツプm13においてタイマ回路
TIMがリセツトされる。 ステツプm14において次の音階キー1の押圧が
行なわれると、そのときのタイマ回路TIMの出
力値Tがステツプm15においてXレジスタに入力
され、ステツプm16において時間圧縮を行なつた
後、ステツプm17において時間圧縮された休止長
データをランダムアクセスメモリRAMの休止長
バツフアに入力する。この時点で、音階、音長お
よび休止長の各データが揃つたことになり、ステ
ツプm18においてそれらのデータを外部メモリ8
に転送する。そしてステツプm19においては、次
の転送に備えてポインタを1つだけアツプしてお
く。次いで、ステツプm5に戻り、以後、ステツ
プm5〜m19が繰り返されて演奏が行なわれる。 演奏終了時には、最後の音階キー1を押圧した
後に、再生キー5を押圧する。それによつて、ス
テツプm14→m20に移り、さらにステツプm21に
おいて、最後の音階キー1を離してからの時間T
がXレジスタに入力されるとともにステツプm22
で時間圧縮される。この時間圧縮された休止長デ
ータは、ステツプm23でランダムアクセスメモリ
RAMの休止長バツフアに入力され、ステツプ
m24ではそのデータが外部メモリ8に転送され
る。さらにステツプm25において、ポインタを1
つだけアツプした後、終了コードである「0」を
ステツプm26において音データとし、ステツプ
m27においてその終了コードを外部メモリ8に転
送する。この後で、第6図に示すような再生手順
に移行する。 第6図において、先ずステツプm28においてポ
インタがリセツトされ、それによつて外部メモリ
8の先頭番地が指定される。次いで、ステツプ
m29において外部メモリ8の先頭番地を読み込ん
でランダムアクセスメモリ8に退避する。ステツ
プm30において音データが「0」であれば、第5
図のステツプm1に戻つて表示部3に全桁零表示
され、それによつて再生が終了したことを操作者
に知らせる。 ステツプm30において音データが「0」でなけ
れば、ステツプm31に進み、音階コードを音階発
生回路OG1,OG2に与えるとともに、ステツ
プm32において対応する音階の音が出力される。
次いでステツプm33においてタイマ回路TIMが
リセツトされ、ステツプm34で音長データがXレ
ジスタに入力されるとともに、ステツプm35では
後述のように時間復帰が行なわれる。時間復帰さ
れた音長データは、ステツプm36においてレジス
タTIに入力され、次いでステツプm37でタイマ
回路TIMの出力値とレジスタTIの音長データと
が比較される。ステツプm37で、タイマ回路
TIMの出力がレジスタTIの音長データと等しく
なつたとき、ステツプm38で音階の発生を停止す
るとともに、ステツプm39においてタイマ回路
TIMがリセツトされる。さらに、ステツプm40
においては休止長データがXレジスタに入力され
るとともに、ステツプm41で時間復帰され、その
時間復帰された休止長データがステツプm42にレ
ジスタTIに入力される。次いで、前述のステツ
プm37と同様にステツプm43においてタイマ回路
TIMの出力値TとレジスタTIの休止長データが
比較され、前記休止長データに相当する時間だけ
音の発生を停止した後、ステツプm44でポインタ
が1つだけアツプされる。この後、ステツプm29
に戻り、ステツプm30で音データ「0」を読み込
むまで、ステツプm29〜m44が繰り返されて再生
が行なわれる。 なお、表示部3に全桁零が表示されているとき
に、再生キー5を押圧すると、ステツプm1→m2
→m45と進み、ステツプm50において再生モード
に入つたことを知らせるための時計表示が行なわ
れる。次いでステツプm28に進んで前述の再生手
順が繰り返される。 ここで、前述の時間圧縮、時間復帰の手順につ
いて説明する。第1表は、時間圧縮、時間復帰を
行なうための時間情報の変化を示すものである。
The present invention relates to an electronic musical instrument, and more particularly to an electronic musical instrument in which a desired song can be played by key operations, and the procedure of the key operations can be stored for later playback. In the prior art, while performing key operations in the same way as when playing an organ, the type of key pressed, the pressing time, etc. are stored in the memory as is, and the desired song is stored in the memory and played back at will. I'm trying to do that. In this case, the problem is how to quantize the key press time and key release time and store it in memory. In order to reproduce the time as faithfully as possible, it is necessary to prepare a large number of bits for time memory, but it is difficult to use a large number of bits in small electronic musical instruments due to memory capacity limitations. , there was a problem with not being able to store long songs. For example, if the minimum time that can be represented is set to 15 msec, 8 bits are required to represent 3 seconds. SUMMARY OF THE INVENTION An object of the present invention is to provide an electronic musical instrument that can store longer songs even with a small memory capacity by compressing and storing sound information. The present invention provides an electronic musical instrument that can be played by operating a plurality of scale keys, and the performance procedure can be stored in a storage means and played back. The time data required for the procedure is also stored, and the above time data is composed of a counting means (for example, a timer TIM) that counts the time required for operating the scale keys, and a plurality of different predetermined values counted by the counting means. Discrimination means for distinguishing which range it is included in (for example, steps n2, n5, n5, in Fig. 7)
n9, n12, n15), and a calculation means (for example, step n6 in FIG. 7,
This electronic musical instrument is characterized in that the data is time-compressed using a compression means consisting of (n10, n13, n16) and. Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a front view of one embodiment of the present invention.
This electronic musical instrument has both a clock function and a calculation function, and 18 scale keys 1 are arranged like a keyboard. During performance, the mode selection switch 2 is switched to the performance mode, and each scale key 1 is pressed to perform the performance. For example, if you press the "1" key, the sound "C" will be output,
If you press the "%" key, the "do #" sound will be output.
During this performance, the order of key operations, the time period during which the scale key 1 is pressed, and the time period during which the scale key 1 is released are stored as described below. To perform automatic performance, it is sufficient to press the playback key 5, and then the memorized pieces of music are reproduced and automatic performance is performed. Note that a clock is displayed on the display section 3 during performance. FIG. 2 is a block diagram of a portion of the electronic musical instrument shown in FIG. 1 having a performance function. The key matrix 6 includes the various keys 1, 2, 4, and 5 described above. Microprocessor 7 outputs strobe signals to key matrix 6 from terminals O3 to O8. Key reading is performed by reading key return signals from terminals KEY and SW of key matrix 6 from terminals K1 to K5 and K6 accordingly. The display section 3 consists of a liquid crystal display element, receives backplate signals from terminals H1 to H3 of the microprocessor 7, and has 33 segment output terminals a1, b1, c1 to a11, b11, c11.
A segment signal is input from. external memory 8
Address signals are input from output terminals B1 to B8 of the microprocessor 7 to input terminals A0 to A7 of the microprocessor 7. Also, the terminal Di of the microprocessor 7
01 to Di04 and external memory 8 terminal Di
Data signals are mutually output or input between Do1 to Do4 and Do1 to Do4. The chip select signal is input from the terminal F1 of the microprocessor 7 to the terminal CE of the external memory 8, and the read/write signal is input from the terminal R/W of the microprocessor 7.
is input to the terminal R/W of the external memory 8. Note that the terminal VDD of the microprocessor 7,
A battery 9 is connected between GND, and terminals X1 and X2
A crystal oscillator 10 is connected between the terminals R1 and R
A resistor 11 for oscillating a clock generator CG1 (see FIG. 3) is connected between the two.
Furthermore, a sounding body 12 is connected between the terminals O1 and O2, and the sounding body 12 vibrates to produce a sound based on the scale signals outputted from the terminals O1 and O2. Figure 3 shows the microprocessor 7 shown in Figure 2.
FIG. Clock pulses from clock generator CG1 are input to scale generation circuits OG1, OG2 and system clock generation circuit SC. Scale generation circuit OG1, OG
2, the frequency of the clock pulse from the clock generator CG1 is divided in accordance with the input of the scale code signal to generate a scale signal. Envelope buffers EB1 and EB2 control the amplitude (envelope) of the scale signal using amplitude information to output terminals O1 and O2.
Output to. The frequency divider circuit DIV divides the oscillation frequency of the reference time signal oscillation circuit OSC and outputs a 1-second signal to operate as a clock, and also outputs a 32Hz signal.
This signal is supplied to the timer circuit TIM. The timer circuit TIM is a counter that keeps counting, but is reset by a command. By reading the output value of this timer circuit TIM, time information from when the counter is reset to when it is read can be obtained. This time information is used to determine the pressing time and releasing time of the scale key 1, or the scale output during playback. The read-only memory ROM is a fixed memory in which instruction codes for operating the microprocessor 7 are stored. Random access memory RAM is a read/write memory and is used as various registers, flags, etc. The random access memory RAM is arranged as shown in FIG. In Figure 4, X,
Y, Z, and M are registers and are used for calculation or as memory. TT is a register that stores the current time, for example, 6 digits for hours, minutes,
Memorize the contents of seconds. T1 is a register that temporarily stores tone length data and pause length data. Also, SD is a register that stores scale data, note length data, and pause length data. For example, it stores scale data in 5 bits, note length data in 6 bits, and pause length in 5 bits, that is, a total of 16 bits. . FF1 and FF2 are flags. Referring again to Figure 3, the display memory
In DRAM, each bit corresponds to each segment of the liquid crystal display element, so by setting the decoded display information, a segment signal is applied to the liquid crystal display element via the segment buffer SB. . Furthermore, ACC is an accumulator, ALU is an arithmetic logic operation circuit, and ROMA is an arithmetic logic operation circuit.
is the read-only memory ROM address counter, BPB is the backplate signal output buffer from the liquid crystal control circuit LCDC, BL is the RAM and
DRAM digit address counter, BM is
RAM and DRAM file address counters, TX is a temporary register, SP is a stack pointer, and F is an output buffer. The operation will be explained with reference to FIG. When performing, the mode selection switch 2 (see FIG. 1) is switched to the performance mode. Then step m1
At this point, the display on the display section 3 becomes zero over all digits. Therefore, if all the digits on the display section 3 display zeros, it can be seen that the player is in the performance mode.
Next, when the scale key 1 is pressed in step m2, a clock is displayed on the display section 3 in step m3. This clock display allows confirmation that the performance has started. step
In m4, the pointer is reset. Here, the "pointer" is used to store the address when performance information is stored in the external memory 8. That is, by resetting the pointer, the performance information is sequentially stored in the external memory 8 from the first address.
is input. Further, in step m5, the scale code corresponding to the pressed scale key 1 is stored in the buffer of the random access memory RAM, and then in step m6, the timer circuit TIM is reset. Thereafter, in step m7, the scale code is input to the scale generation circuits OG1 and OG2, and corresponding tones of the scale are outputted accordingly. In step m8, when the scale key 1 is no longer pressed and released, the output value T of the timer circuit TIM at that time is input to the X register in step m9. In step m10, the tone length data is time-compressed as described later, and then in step m11, the tone length data is input to the tone length buffer of the random access memory. Along with that step m12
Then, the scale generation stops. Therefore, in step m13, a timer circuit is used to measure the pause length until the next time scale key 1 is pressed.
TIM is reset. When the next scale key 1 is pressed in step m14, the output value T of the timer circuit TIM at that time is input to the X register in step m15, and after time compression is performed in step m16, the time is The compressed pause length data is input to the pause length buffer in the random access memory RAM. At this point, the scale, note length, and pause length data are all available, and in step m18, these data are stored in the external memory 8.
Transfer to. Then, in step m19, only one pointer is raised in preparation for the next transfer. Next, the process returns to step m5, and thereafter steps m5 to m19 are repeated to perform the performance. When the performance ends, the last scale key 1 is pressed and then the playback key 5 is pressed. As a result, the process moves from step m14 to m20, and further, in step m21, the time T after releasing the last scale key 1 is
is input to the X register and step m22
time is compressed. This time-compressed pause length data is stored in random access memory in step m23.
The pause length buffer in RAM is entered and the step
In m24, the data is transferred to external memory 8. Furthermore, in step m25, the pointer is set to 1.
After uploading only 1, the end code "0" is set as sound data in step m26, and the step
The end code is transferred to the external memory 8 in m27. After this, the process shifts to the reproduction procedure as shown in FIG. In FIG. 6, first, in step m28, the pointer is reset, thereby specifying the starting address of the external memory 8. Then step
At m29, the first address of the external memory 8 is read and saved to the random access memory 8. If the sound data is “0” in step m30, the fifth
Returning to step m1 in the figure, all digits are displayed as zero on the display section 3, thereby informing the operator that the reproduction has ended. If the sound data is not "0" in step m30, the process proceeds to step m31, where the scale code is given to the scale generation circuits OG1 and OG2, and the sound of the corresponding scale is outputted in step m32.
Next, in step m33, the timer circuit TIM is reset, in step m34, tone length data is input to the X register, and in step m35, time is restored as described later. The time-restored note length data is input to the register TI in step m36, and then in step m37 the output value of the timer circuit TIM and the note length data in the register TI are compared. In step m37, the timer circuit
When the output of TIM becomes equal to the note length data of register TI, the scale generation is stopped in step m38, and the timer circuit is started in step m39.
TIM is reset. Additionally, step m40
In step m42, the pause length data is input to the X register, the time is restored in step m41, and the pause length data restored in time is input to the register TI in step m42. Next, in step m43, the timer circuit is activated as in step m37 above.
The output value T of TIM is compared with the pause length data of the register TI, and after the sound generation is stopped for a time corresponding to the pause length data, the pointer is incremented by one in step m44. After this, step m29
Steps m29 to m44 are repeated until the sound data "0" is read in step m30 to perform reproduction. Note that if you press the playback key 5 when all digits are zero on the display 3, the step m1 → m2 will change.
→m45, and at step m50, a clock is displayed to notify that the playback mode has been entered. Next, the process advances to step m28 and the above-described regeneration procedure is repeated. Here, the aforementioned time compression and time restoration procedures will be explained. Table 1 shows changes in time information for time compression and time restoration.

【表】【table】

【表】 第1表において、各数値は16進数で示されてお
り、たとえばカウント数「55」の場合は「1B」
に圧縮され、再生時には「53」に戻されることを
示している。基準時間長をたとえば15m秒とすれ
ば、圧縮前の時間長「00」〜「07」は、再生時も
誤差なく0秒〜0.1秒(15×「07」=105m秒)が出
力される。圧縮前の時間長「08」〜「17」は、再
生時に最大誤差1/8の比率で0.12秒〜0.33秒
(15×「16」=330m秒)を得ることができる。圧縮
前の時間長「18」〜「37」は、再生時に最大誤差
2/25の比率で0.37〜0.8秒(15×「35」=795m
秒)を得ることができる。また圧縮前の時間長
「38」〜「F7」は、再生時に最大誤差4/59の比
率で0.88〜3.6秒(15×「F3」=3645m秒)を得る
ことができる。さらに、圧縮前の時間長が「F8」
を超える場合すべて「FB」すなわち3.76秒(15
×「FB」=3765m秒)に代表される。 第7図を参照して、時間圧縮の手順について説
明する。ここで、演算は全て16進で行なわれる。
先ず、ステツプn1においてタイマ回路TIMの出
力値TをレジスタXに入力するとともに、「F8」
をレジスタYに入力し、さらにレジスタX,Yに
それぞれ入力された数値の減算(X−Y)を実行
し、その結果を、レジスタXに入力する。この際
ボローが発生しなければ、すなわちT≧「F8」で
あれば、ステツプn3において上限値「30」をレ
ジスタXに入力する。ボローが発生すれば、すな
わちT<「F8」であれば、ステツプn2からn4に進
む。ステツプn4ではレジスタX,Yの内容を加
算(X+Y)してその結果をレジスタXに入力し
てレジスタXの内容を元に戻すとともに、レジス
タYに「78」を入力し、再びレジスタX,Yの減
算(X−Y)を実行する。ここでボローが発生し
なければ、すなわちT≧「78」であれば、ステツ
プn5からステツプn6に進む。ステツプn6におい
てはステツプn4でレジスタXに入力されている
演算結果を用い、X÷8の除算を実行し、その結
果の整数部のみをレジスタXに入力する。なお、
第7図における〔X÷8〕の〔 〕はガウス記号
を示す。一方、レジスタYには「20」を入力した
後、ステツプn7でレジスタX,Yの内容を加算
(X+Y)してその結果をレジスタXに入力する。
また、ステツプn5においてボローが発生すれば、
すなわちT<「78」のときには、ステツプn8に進
んで、レジスタX,Yの加算(X+Y)を実行す
るとともに、レジスタYに「38」を入力して、再
びレジスタX,Yの減算(X−Y)を実行する。 このようにして、ステツプn9〜n16を経過する
ことによつて、レジスタYに「F8」、「78」、
「38」、「18」、「8」と順次入力して分岐していく。
たとえば、タイマ回路TIMの出力値Tが「55」
の場合には、ステツプn8で(〔55〕−〔38〕)の演
算を実行し、その結果としての「1B」がレジス
タXに入力された後、ステツプn10で〔X÷8〕
が実行され、レジスタXに「3」が入力される。
またレジスタYには「18」が入力され、最終的に
ステツプn7でレジスタXの値は「1B」となる。 次に第8図を参照して、時間復帰の手順につい
て説明する。ステツプS1においては、圧縮値を
レジスタXに入力した後、レジスタYに「20」を
入力し、さらにレジスタX,Yの減算(X−Y)
が実行され、その結果がレジスタXに入力され
る。この際ボローが発生しなければ、すなわちX
≧「20」であれば、ステツプS2からS3へと進む。
ステツプS3では、X*8の乗算(*は乗算記号)
が行なわれ、その結果をレジスタXに入力する。
またレジスタYには、「7B」を入力し、ステツプ
S4において(X+Y)の加算を行なつて、その
結果をレジスタXに入力する。それによつて時間
復帰が完了する。ステツプS2においてボローが
発生すれば、すなわちX<「20」であれば、ステ
ツプS5において(X+Y)の加算を実行してレ
ジスタXに入力し、レジスタXの内容を元に戻す
とともに、レジスタYに「10」を入力した後、
(X−Y)の減算を行なつて結果をレジスタXに
入力する。 このようにして、ステツプS6〜S13を順次経過
することによつて前述の時間圧縮の場合と同様
に、レジスタYに「18」、「10」、「8」と順次入力
して分岐していく。たとえば、圧縮値が「1B」
である場合には、ステツプS6からステツプS7へ
と進む。このときレジスタXには、(「1B」−
「18」)の減算結果としての「4」が入力されてい
る。ステツプS7においては、(X*「8」)の乗
算が実行され、レジスタXには乗算結果としての
「20」が入力される。この値と、レジスタYに入
力される「3B」とが、ステツプS4で加算され、
最終的に「5B」がレジスタXに入力されて時間
復帰が完了する。 このようにして、時間情報が圧縮されるととも
に時間復帰され、たとえば従来8ビツト必要であ
つたものが、6ビツトでほぼ同等の時間情報を記
憶することができるようになる。 上述のごとく本発明によれば、音情報を圧縮し
て記憶手段に記憶させるので、少ないメモリ容量
で長時間の演奏情報を記憶させることができるよ
うになり、長い曲を演奏および再生することが可
能となる。特に本発明による圧縮手段によつて時
間圧縮することによつて、計数した時間Tが、予
め定められた異なる複数の数値のいずれに存在す
るかを区別し、各々の数値に対する時間圧縮の計
算式に従つて上記計数時間Tの変換を行う。この
ような構成によれば、計数時間が短いときには、
その数値をそのまま記憶することもでき、また長
くなれば各数値の範囲毎に計数値の時間圧縮の誤
差が決められた範囲内で収まり、簡単な回路構成
により効率のよい時間圧縮およびより少ない決ま
つた記憶容量でもつて記憶できる。
[Table] In Table 1, each value is shown in hexadecimal. For example, for the count number "55", "1B"
This indicates that the data will be compressed to ``53'' and returned to ``53'' during playback. If the reference time length is, for example, 15 msec, the time lengths "00" to "07" before compression are output as 0 seconds to 0.1 seconds (15 x "07" = 105 msec) without error even during reproduction. For the time lengths "08" to "17" before compression, 0.12 seconds to 0.33 seconds (15 x "16" = 330 msec) can be obtained at a maximum error ratio of 1/8 during reproduction. The time length "18" to "37" before compression is 0.37 to 0.8 seconds (15 x "35" = 795 m) at a maximum error ratio of 2/25 during playback.
seconds) can be obtained. Furthermore, for the time lengths "38" to "F7" before compression, a maximum error of 0.88 to 3.6 seconds (15 x "F3" = 3645 msec) can be obtained at a ratio of 4/59 during playback. Furthermore, the time length before compression is "F8"
“FB” or 3.76 seconds (15
× "FB" = 3765 msec). The time compression procedure will be explained with reference to FIG. Here, all calculations are performed in hexadecimal.
First, in step n1, the output value T of the timer circuit TIM is input to the register X, and "F8" is input.
is input to register Y, and further subtraction (X-Y) of the numerical values input to registers X and Y is executed, and the result is input to register X. At this time, if no borrow occurs, that is, if T≧F8, the upper limit value "30" is input to the register X in step n3. If a borrow occurs, that is, if T<F8, the process proceeds from step n2 to step n4. At step n4, the contents of registers X and Y are added (X+Y) and the result is input to register X to restore the contents of register Executes the subtraction (X-Y). If no borrow occurs here, that is, if T≧78, the process proceeds from step n5 to step n6. At step n6, the calculation result inputted to register X at step n4 is used to execute division of X/8, and only the integer part of the result is inputted to register X. In addition,
In FIG. 7, [ ] in [X÷8] indicates a Gauss symbol. On the other hand, after inputting "20" to register Y, the contents of registers X and Y are added (X+Y) and the result is input to register X at step n7.
Also, if a borrow occurs at step n5,
That is, when T <"78", the process advances to step n8, where addition (X+Y) of registers X and Y is executed, "38" is input to register Y, and subtraction (X-Y) of registers X and Y is performed again. Execute Y). In this way, by going through steps n9 to n16, "F8", "78", etc. are stored in register Y.
Enter "38", "18", and "8" in order to branch.
For example, the output value T of the timer circuit TIM is "55"
In this case, step n8 executes the operation ([55] - [38]), the resultant "1B" is input to register X, and then step n10 calculates [X÷8].
is executed, and "3" is input to register X.
Further, "18" is input to register Y, and finally, at step n7, the value of register X becomes "1B". Next, referring to FIG. 8, the procedure for time restoration will be explained. In step S1, after inputting the compressed value to register X, input "20" to register Y, and then subtract registers X and Y (X-Y)
is executed and the result is input to register X. At this time, if no borrow occurs, that is, X
If ≧“20”, proceed from step S2 to S3.
In step S3, multiply by X*8 (* is the multiplication symbol)
is performed, and the result is input into register X.
Also, enter “7B” in register Y and step
In S4, (X+Y) is added and the result is input to register X. This completes the time return. If a borrow occurs in step S2, that is, if X<20, then in step S5, addition (X+Y) is executed and input to register X, the contents of register After entering "10",
Subtract (X-Y) and input the result to register X. In this way, by sequentially passing through steps S6 to S13, "18", "10", and "8" are sequentially input to register Y and branching is performed, as in the case of time compression described above. . For example, the compression value is "1B"
If so, the process advances from step S6 to step S7. At this time, register X contains ("1B" -
"4" is input as the result of subtraction of "18"). In step S7, multiplication of (X*'8') is executed, and '20' is input to register X as the multiplication result. This value and "3B" input to register Y are added in step S4,
Finally, "5B" is input to register X, and time restoration is completed. In this way, time information is compressed and restored, and for example, what conventionally required 8 bits can now be stored with 6 bits. As described above, according to the present invention, since the sound information is compressed and stored in the storage means, it becomes possible to store performance information for a long time with a small memory capacity, and it becomes possible to perform and reproduce long songs. It becomes possible. In particular, by compressing time using the compression means according to the present invention, it is possible to distinguish which of a plurality of predetermined numerical values the counted time T exists in, and to calculate the time compression calculation formula for each numerical value. The above counting time T is converted according to the following. According to such a configuration, when the counting time is short,
The numerical value can be stored as is, and if it is long, the error in time compression of the counted value will be within a predetermined range for each numerical value range, and the simple circuit configuration will allow efficient time compression and fewer decisions. It can be memorized even with a small memory capacity.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例の正面図、第2図は
演奏機能を有する部分のブロツク図、第3図は第
2図のマイクロプロセツサ7の構成を示すブロツ
ク図、第4図は第3図のランダムアクセスメモリ
RAMの内部配置を示す図、第5図は演奏動作手
順を説明するためのフローチヤート、第6図は再
生動作手順を説明するためのフローチヤート、第
7図は時間圧縮の手順を説明するためのフローチ
ヤート、第8図は時間復帰の手順を説明するため
のフローチヤートである。 1……音階キー、5……再生キー、7……マイ
クロプロセツサ、8……外部メモリ、RAM……
ランダムアクセスメモリ。
FIG. 1 is a front view of an embodiment of the present invention, FIG. 2 is a block diagram of a portion having a performance function, FIG. 3 is a block diagram showing the configuration of the microprocessor 7 shown in FIG. 2, and FIG. Random access memory in Figure 3
A diagram showing the internal arrangement of RAM, Figure 5 is a flowchart to explain the performance operation procedure, Figure 6 is a flowchart to explain the playback operation procedure, and Figure 7 is a flowchart to explain the time compression procedure. FIG. 8 is a flowchart for explaining the time return procedure. 1...Scale key, 5...Playback key, 7...Microprocessor, 8...External memory, RAM...
random access memory.

Claims (1)

【特許請求の範囲】 1 複数の音階キーの操作によつて演奏するとと
もにその演奏手順を記憶手段に記憶させ再生する
ことができるようにした電子楽器において、 上記記憶手段は、音階キーの操作による音階お
よび操作手順にかかる時間データを合わせて記憶
し、 上記時間データは、 音階キーの操作にかかる時間を計数する計数手
段と、 該計数手段による計数値が予め定められた複数
の異なる数値のうちどの範囲に含まれるかを区別
する判別手段と、 上記複数の数値の各々に応じた圧縮計算式に従
い、上記判別手段にて区別された計数値を圧縮演
算する演算手段と、 からなる圧縮手段にて時間圧縮されたデータであ
ることを特徴とする電子楽器。
[Scope of Claims] 1. An electronic musical instrument that can be played by operating a plurality of scale keys, and the performance procedure can be stored in a storage means and played back, wherein the storage means is capable of performing a performance by operating a plurality of scale keys. The time data for the scale and the operation procedure are stored together, and the time data is calculated by: a counting means for counting the time required for operating the scale keys; and a value counted by the counting means among a plurality of different predetermined values A compression means comprising: a discrimination means for distinguishing which range the numerical values are included in; a calculation means for compressing the count values distinguished by the discrimination means according to a compression calculation formula corresponding to each of the plurality of numerical values; An electronic musical instrument characterized by time-compressed data.
JP56005393A 1980-12-23 1981-01-17 Electronic musical instrument Granted JPS57119395A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP56005393A JPS57119395A (en) 1981-01-17 1981-01-17 Electronic musical instrument
US06/333,694 US4491049A (en) 1980-12-23 1981-12-23 Electronic musical instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56005393A JPS57119395A (en) 1981-01-17 1981-01-17 Electronic musical instrument

Publications (2)

Publication Number Publication Date
JPS57119395A JPS57119395A (en) 1982-07-24
JPH024917B2 true JPH024917B2 (en) 1990-01-30

Family

ID=11609911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56005393A Granted JPS57119395A (en) 1980-12-23 1981-01-17 Electronic musical instrument

Country Status (1)

Country Link
JP (1) JPS57119395A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5515137A (en) * 1978-07-18 1980-02-02 Kawai Musical Instr Mfg Co Musical play information recording system
JPS5583094A (en) * 1978-12-19 1980-06-23 Casio Computer Co Ltd Play information memorizing system in electoronic musical instrumento

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5515137A (en) * 1978-07-18 1980-02-02 Kawai Musical Instr Mfg Co Musical play information recording system
JPS5583094A (en) * 1978-12-19 1980-06-23 Casio Computer Co Ltd Play information memorizing system in electoronic musical instrumento

Also Published As

Publication number Publication date
JPS57119395A (en) 1982-07-24

Similar Documents

Publication Publication Date Title
US4472069A (en) Minature electronic apparatus having alarm sound generating function
US4448104A (en) Electronic apparatus having a tone generating function
US4491049A (en) Electronic musical instrument
US5254803A (en) Automatic musical performance device for outputting natural tones and an accurate score
JPH0321920B2 (en)
US4267586A (en) Electrophonic musical instrument
US5189238A (en) Automatic performance apparatus for causing different kinds of sound sources to synchronously generate tones
JPS634197B2 (en)
JPH024917B2 (en)
JPS5814191A (en) Modulation effect apparatus
US4397209A (en) Method of determining chord type and root in a chromatically tuned electronic musical instrument
JPS5848109B2 (en) electronic musical instruments
JPH0132996B2 (en)
JPH0415959B2 (en)
JP2950461B2 (en) Tone generator
GB2091470A (en) Electronic Musical Instrument
JPH03156497A (en) Function generator for electronic instrument
JPS5858678B2 (en) electronic musical instruments
JPS5842478B2 (en) Noise removal device for electronic musical instruments
JPS6343514Y2 (en)
JPS5968789A (en) Automatic rhythm performance unit
JPS6247269B2 (en)
JP3194276B2 (en) Automatic performance device
JPH0120754B2 (en)
JPS5846036B2 (en) electronic musical instruments