見出し画像

自分だったらDX7をこんな風に作ったのになあ

DX7はシンセサイザー界のDX(デジタルトランスフォーメーション)を進めた革新的な名器である。しかし、それ故に粗が多いのも事実。もし40年前(当時は生まれてすらいなかったけど)にYAMAHAに勤めていて、DX7の設計に携われる栄誉を与えられたらどうするかを考えた。

数値入力はテンキーに

数値入力がスライダーと増減ボタンのみというのは、正確な制御がかなり困難である。今だったらジョグダイアルとテンキーはシンセの常備品。名前入力の困難さもテンキーに携帯のように文字をフル方式で解決。

アルゴリズムはオペレータ数別に

個人的にDXシリーズでまずいと思う部分は全部のオペレータをずらっと並べて示していることである。ビギナーは面食らい、何をどうすればいいのか見当がつかない。そこでオペレータ2つからアルゴリズムを設計する。3オペ、4オペ、6オペそれぞれアルゴリズムを提供する。謎の多い「YMF271-F」でとられている手法だ。

ここでDX7の総オペレータ数96が威力を発揮する。素因数分解すると$${2^5×3}$$となり、1, 2, 3, 4, 6, 8, 12, 16, 24, 32, 48 といった数で割れるこの数は、特に1桁の数字6個で割れることが強みだ。つまり理論上は2オペで48音、3オペで32音、4オペで24音ポリフォニックにすることができる。要するに、アーキテクチャを見直せば「音数のために音を貧弱にする」か「ポリフォニーを犠牲にしてでも音を派手にする(それでも16音は余裕だが)」という選択肢をユーザーに与えることになる。

これをいいことに、オペレータ数を半減させても最大8音ポリ、当時の花形シンセJUPITER-8と同じというのは贅沢だ。これならコストも減らせる!

どんなアルゴリズムを載せるか

図はmermaid live editorという大変すばらしいオンラインツールを利用して生成している。なかったらこの記事を書くのを断念していました。

筆者としてはアルゴリズムという方式自体に否定的なのだが、ハードウェア制約で自由にパッチングとなるとさすがに新規ユーザーは混乱する。ここは考えられるパターンを記載していく。キャリアが複数あるアルゴリズムを採用しなかった理由は、以前執筆した記事を読んでいただきたい。

並び順は規則などなかったオリジナルと違い、ツリーの高さが低い順→幹が低い順→幅が太い順→フィードバックが低い順に並べている。

複数キャリアのアルゴリズムはレイヤーという形で実装することにする。一度に覚えるアルゴリズム量の削減と、データの節約を兼ねている。組み合わせによっては全オペレータをフル活用できなくなるが、それは仕方ないことと諦める。DXをほぼ完全再現するには6レイヤーは欲しいが、それではユーザーのためにならない。4つが関の山だろう。

2オペ


2-1
2-2

FMというパラダイムを顕示するため、これだけで十分。2-2以降フィードバック表記は割愛する。SY77みたいにフィードバックを自由アサイン形式にするのもいいが、ここはDXの先例に倣ってアルゴリズムにハードコーディングすることにする。

3オペ



3-1
3-2
3-3

4オペ


4-1
4-2
4-3
4-4
4-5

4段積みのフルフィードバックも採用するか悩んだが、本家では3段で終わっていたので見送った。多分実際音づくりしてみて、雑音しか出なかったのだろう。

6オペ

5オペは端数になるので採用しないことにした。


6-1
6-2
6-3
6-4
6-5
6-6
6-7
6-8
6-9
6-10
6-11
6-12
6-13
6-14
6-15
6-16
6-17
6-18
6-19
6-20
6-21

考えられるパターンを全部列挙してみた。正直ユーザーフレンドリーではない。

この解決策について後日記事をまとめる。乞うご期待!

この記事が気に入ったらサポートをしてみませんか?