QSound crash
musicalman opened this issue · comments
こんにちは、
ここでは多くの情報を提供することができませんので、事前にお詫び申し上げます!
Mml2vgm出力ファイルは、QSoundチップを使用している場合、VGMPlayをクラッシュさせる傾向があります。 クラッシュが発生すると、メモリの場所を読み取れないというエラーが表示されます。
vgmrips.netからQSound音楽をダウンロードしたとき、これまでのところクラッシュは発生していません。 したがって、これはmml2vgmの問題だと思いますが、よくわかりません。
あなたは何をアドバイスしますか? 代わりに、問題をvgmplayに報告する方がよいでしょうか?
情報が少なすぎて、状況がつかめません。。。(^^;;;
わかります。
さらに調べてみます...
I posted an explanation here https://vgmrips.net/forum/viewtopic.php?p=12368#p12368
The "ROM size" parameter of the datablock must be 0x10000 or greater. Otherwise the ADPCM logic will eventually read past the size of the allocated datablock, causing a crash.
ふむふむ...
「最小でも0x10000byte用意する必要がある」
ということでよろしいでしょうか。
おっと、パディングするようにしてしまった...(^^;
TAG488
必ず最低64kのデータを作っても問題ないでしょうか。
ちょっと無駄な場合もあるでしょうけど。。。
うーん、混乱があるかもしれません...
私のテストでは、vgmデータを埋める必要はありません。
私がしなければならなかったのは、ROMサイズのバイト(バイト0X107-0X10a)を00000100に設定することだけでした。
この修正は、TAG487によって生成されたデータでうまく機能しましたが、多くのファイルでテストしませんでした。
残念ながら、TAG488はQSoundデータをまったくコンパイルできません...
>残念ながら、TAG488はQSoundデータをまったくコンパイルできません...
All NG?
はいQSoundはエラーを出します。
しかし、私は少し間違っていたと思います。
64 kを超えるサンプルを使用するvgmをコンパイルしようとしたことがないので、おそらくそれでも機能します...
エラーを再現する手順を教えてください。
こちらでは特に問題なく動作するのでわからないのです。
mml2vgm.exeを開いてtestQSound.gwiをコンパイルしようとすると、このエラーが発生します。 英語ですので、ご理解いただければ幸いです。
Error : (F:- L:-)Unexpected Error: line:-
Message:
Unknown command 00
Stack Trace:
at Core.Mml2vgm.OutVgmFile(outDatum[] desBuf)
at Core.Mml2vgm.Start()
現象確認できました!
修正します!
TAG489にて修正しました。
これまでのところうまく機能しています。
お時間をいただきありがとうございます!