GUIが整備され、変換状況やErrorsの有無が視覚的に分かりやすくなった。BMX2WAV v2がerrorなく変換できるBMSは、高水準の互換性が保証されている。また、#RANDOM
分岐構造も可視化された。
「BGA チャンネルの行は読み込みを無視する」が有効なら、Blackcity_spa.bmeは余裕で変換できる。(「BGA チャンネルの行は読み込みを無視する」が無効の場合、bmx2wav_x64.iniにUsableMemoryMegaByteSize=22528
(22 GiB)以上を指定しておく必要はある)
Memory制限値22 GiBでもどうにもならなかったのが“Widow’s kiss”で、変換できたfileはwk_unique1truc.bmeのみ。他はMemory制限を軽々と突破する。一番やばい小節は#071
で、BMX2WAV v2でいうところの小節分解能としては理論上207903035340
とか585439446900
とかが要求されるはず。しかし、bmx2wav_x64.ini内のBarResolutionMax
にそれらの値を指定して保存し、bmx2wav_x64.exeを起動して、何もせずにBMX2WAVを閉じると、BarResolutionMax
の値が1323894644
に変更される。2桁足りない😢
さらに、前述の“Widow’s kiss”は、#STOP
sequenceの値として小数値1.5
を用いている。小数値の停止時間はDelight Delight Reduplicationの#STOP
sequence仕様に違反しており、LR2は小数部分を切り捨てるはず。つまりLR2上では#155
は図表著者の意図した経過時間よりもわずかに短くなるはず。BMX2WAV v2の場合は以下のようになるはず(当環境では到達できない処理工程だけど)。
NeedFix : 指定されたストップシーケンスの表記が不正です。ヘッダ名 STOP05
Warning : STOP05 は指定されなかったとします。
NeedFix : ストップシーケンスでヘッダに未設定のオブジェクトが使用されました。 小節番号 : 155 オブジェクト : 05
Warning : ストップシーケンスはなかったとします。 小節番号 : 155 オブジェクト : 05
同作者氏の“Gérard”も小数値#STOP
を用いる。“Widow’s kiss”と異なりWAVへの変換は難なく行えるが、小数値#STOP
が無視されることによる影響はこちらのほうが大きそうだ。
“スーパーイザナギオブジェクト”の[Sran Happy Decoration]差分(『第9回』からdownload可能)、LR2でS-RANDOM optionを適用して演奏するとあちこちで可視notesが増殖するという互換性をかなぐり捨てたgimmick。たとえばこんな感じ:
#08311:0M0000000000000000000000000000000U000000000000000N000000000000000Q0000000000000000000000000000000O000000000000000P000000000000000V000000000000000O000000000000000000000000000000000000000000000000000000000000000V000000000000000W000000000000000O00000000000000
#08311:0M0000000000000000000000000000000U000000000000000N000000000000000Q0000000000000000000000000000000O000000000000000P000000000000000V000000000000000O000000000000000M00000000000000000000000000000000000000000000000V0000000000000000000000000000000000000000000000
#08311:0M0000000000000000000000000000000U000000000000000N000000000000000Q0000000000000000000000000000000O000000000000000P000000000000000V000000000000000O000000000000000M0000000000000000000000000000000Q000000000000000V000000000000000W000000000000000O00000000000000
あと未定義の#WAV1B
でのびのびとKARAOKE LongNoteしていたり、変換器向けではない感じ。
十年前の拙作例(100層の入れ子の分岐)を、BMX2WAVでerrorが発生しないように修正した。当時は「最初からBMSEで上書き保存された状態のほうが、迂闊な自分にとっては気が楽だなあ」とか思って、#WAV
や#BMP
の定義群を意図的にglobalに放り出したような記憶がある。でも演奏時にmemoryを無駄に消費しない作りのほうがusersに友好的であることはいうまでもなかった。