それで思ったのですが、デチューン以前に調律はどれくらい合ってるんでしょうね?というわけで、
下の表はPC-8801, PC-9801系のFM音源で普通に(MUCOM88でもそれ以外でも)使われているF-Numberと、中央ドから1オクターブ分(MUCOM88ではo5)の音高です。すべての音で誤差は1セント未満(100セントが半音)なので、楽器として十分な正確さです。なお、F-Numberは11ビットありますが、bが1167なので最大限利用できているわけではありません。
最大限云々というのは、最低オクターブ以外のf~g+のF-Numberを1651, 1749, 1853, 1963とする(のとBlockを1減らす)と誤差がほんの少し減るはず……みたいな話ですが、意味はあまりないです。
c | c+, d- | d | d+, e- | e | f | f+, g- | g | g+, a- | a | a+, b- | b | |
F-Number | 618 | 655 | 694 | 735 | 779 | 825 | 874 | 926 | 981 | 1040 | 1102 | 1167 |
周波数 | 261.523 | 277.181 | 293.685 | 311.035 | 329.655 | 349.121 | 369.857 | 391.862 | 415.137 | 440.104 | 466.341 | 493.848 |
一般的な平均律 | 261.626 | 277.183 | 293.665 | 311.127 | 329.628 | 349.228 | 369.994 | 391.995 | 415.305 | 440.000 | 466.164 | 493.883 |
誤差 (cent) | -0.676 | -0.010 | 0.119 | -0.511 | 0.144 | -0.531 | -0.644 | -0.590 | -0.700 | 0.410 | 0.659 | -0.125 |
下の図は、11ビットで音階のパラメータで最大のもの(上の例では1167)を横軸の数値に割当てたときの、1オクターブ12音の中で一番大きい誤差(縦軸:セント)を示したものです。横軸1167の付近で1セント未満なのはたまたまです。まあ、1.4セントくらいでも十分小さいとは思いますが。
なお、オクターブは、F-Numberとは別のBlockというパラメータで指定する形式になっているため、他のオクターブでも誤差は同じです。
他の音源チップにありがちな、全音域の音高を1つの数値で指定する形式では、高音の誤差が大きかったり(PSG全般、ファミコンの音源など)、逆に低音の誤差が大きかったり(ナムコの波形メモリ音源など)します。
OPNのSSG部(\(\)\(\approx\)普通のPSG)の場合、音高のパラメータは12ビットですので十分に見えます。しかし、1オクターブ上がる毎に指定する値が半分になるので、実質1ビットずつ減っていき、最高オクターブでは音階に5ビットしか使えません。
5ビットともなると、下の図のように、限界まで工夫をしても(あるいは運が良くても)いずれかの音階に27セント程度の誤差ができます。普通はもっと大きな誤差になりますので、とても音痴な感じになります。(低い音がパラメータ最大になりますが、見方は上の図と同じです。)
ちなみに、ナムコの波形メモリ音源は、誤差の大きい部分が低音の方にある(音程の狂いがわかりにくい)のも優れた点ですが、それ以前に音高指定のレジスタが大きくて、(ものにより)16~20ビットだそうです。