VOGONS


Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi

Topic actions

Reply 2360 of 2376, by youtao62

User metadata
Rank Newbie
Rank
Newbie

Hello, I encountered a bug while using the BassMIDI VSTi plugin. First, I unchecked the "Use Sinc Interpolation" option in Windows (this was also due to the dull sound issue). Then I opened the Cubase software, used the VST MIDI Driver to load BassMIDI VSTi, and played the MusicBox soundfont directly—but the sound was still dull. The sound only becomes non-dull when I open the BassMIDI VSTi plugin, bring up the interface for loading SoundFont soundfonts (the "Use Sinc Interpolation" option in this interface is actually already unchecked), and then close this interface.
file.php?mode=view&id=229478
file.php?mode=view&id=229479

Reply 2361 of 2376, by Falcosoft

User metadata
Rank l33t
Rank
l33t
youtao62 wrote on 2025-10-25, 09:08:

Hello, I encountered a bug while using the BassMIDI VSTi plugin. First, I unchecked the "Use Sinc Interpolation" option in Windows (this was also due to the dull sound issue). Then I opened the Cubase software, used the VST MIDI Driver to load BassMIDI VSTi, and played the MusicBox soundfont directly—but the sound was still dull. The sound only becomes non-dull when I open the BassMIDI VSTi plugin, bring up the interface for loading SoundFont soundfonts (the "Use Sinc Interpolation" option in this interface is actually already unchecked), and then close this interface.

Hi,
It seems the plugin is not prepared that after loading the saved settings a new sample rate change VST event is sent again. In case of BassMidi a sample rate change reguires a new stream and it behaves as a reset.
So some Midi stream related settings are set to default again. This will be fixed in the next release.

BTW, be aware that in case of BassMidi VSTi the 'Use Interpolation' checkbox has 3 states and as the different label also suggests the unchecked state does not mean linear interpolation but no interpolation at all!
So for linear interpolation you should select the intermediate state:

The attachment linear_interpolation.png is no longer available

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 2362 of 2376, by youtao62

User metadata
Rank Newbie
Rank
Newbie

The Use Sinc Interpolation option in bassmidi_vsti Version 1.6 has only two states: checked and unchecked.
file.php?mode=view&id=229569
file.php?mode=view&id=229570
file.php?mode=view&id=229571

Reply 2363 of 2376, by Falcosoft

User metadata
Rank l33t
Rank
l33t
youtao62 wrote on 2025-10-27, 01:14:

The Use Sinc Interpolation option in bassmidi_vsti Version 1.6 has only two states: checked and unchecked.
...

Hmm. It seems I have never uploaded version 1.6.1 that contained the modified option first 😀.
Anyway here is version 1.7 that contains this 3-state interpolation option and also fixes the problem of interpolation option not applied right after loading in case of some VST hosts.
https://falcosoft.hu/bassmidi_vsti.zip

version 1.7

1. Removed option to disable Sound Blaster hardware limits. New versions of BassMidi set this automatically based on soundfont attributes.
You can see if SB HW Limits are used for a sounfont in the file info extension of the file select dialog.
2. Added option to emulate SC-55 style drums/cymbals. This option enables e.g. DOOM/DOOM2 Midi files to sound properly.
3. Modified 'Use Interpolation' option. Now it has 3 states: No Interpolation -> Linear Interpolation -> 16-point Sinc Interpolation.
4. Fixed Interpolation option is not applied right after plugin loading problem in some VST hosts.
5. Updated BassMidi library.

Midi Player's 'Use Interpolation' option has been also modified to work the same way. It has a 3-state checkbox representing: No Interpolation -> Linear Interpolation -> 16-point Sinc Interpolation.
https://falcosoft.hu/midiplayer_66_test.zip

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 2364 of 2376, by youtao62

User metadata
Rank Newbie
Rank
Newbie

thanks!

Reply 2365 of 2376, by PoulpSquad

User metadata
Rank Member
Rank
Member

Howdy,

I'm getting lots of "Runtime error 231 at 000000000040D8C" errors using 86Box with Midi Player 6.5.

I think it always happens when I change plugin by sending a sysex with DUMP.EXE from within a PC DOS VM.

Here's the content of the batch I use (please find PRESET_1.SYX attached to this post for further decortication):

C:\MIDI\DUMP.EXE C:\MIDI\PRESET_1.SYX

About 30% of the time this will cause the error.

How can I fix this?

Reply 2366 of 2376, by Falcosoft

User metadata
Rank l33t
Rank
l33t
PoulpSquad wrote on 2025-11-06, 09:36:
Howdy, […]
Show full quote

Howdy,

I'm getting lots of "Runtime error 231 at 000000000040D8C" errors using 86Box with Midi Player 6.5.

I think it always happens when I change plugin by sending a sysex with DUMP.EXE from within a PC DOS VM.

Here's the content of the batch I use (please find PRESET_1.SYX attached to this post for further decortication):

C:\MIDI\DUMP.EXE C:\MIDI\PRESET_1.SYX

About 30% of the time this will cause the error.

How can I fix this?

Unfortunately I do not know since I could not reproduce the problem. I used DosBox as the client that sends the SysEx messages and real Win10 as the OS that runs MidiPlayer. For me preset changing never results in Runtime Error 231.
The preset SysEx files you linked were created and shared by me and they contain only 5 bytes and do not contain any meaningful information regarding what the problem can be.
In this respect much more important are the preset files themselves in Midi Player's Preset folder since these contain the information what plugins, settings etc. are loaded.
Also besides the information that you used x86Box as a host it would be interesting to know what kind of operating system you used exactly.

In the meantime you can try a few things:
1. Instead of DUMP.EXE you should try the attached MDF.EXE utility to send the SysEx messages.
2. Download and try the new test version of Midi Player.
3. Create and use such configuration presets that do not use any plugins or Bass/Bassmidi. Maybe the problem is related to Bass or the used plugins.

The attachment MDF.zip is no longer available

https://falcosoft.hu/midiplayer_66_test.zip

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 2367 of 2376, by PoulpSquad

User metadata
Rank Member
Rank
Member

Hello and thank you very much for your reply, I appreciate it!

Instead of DUMP.EXE you should try the attached MDF.EXE utility to send the SysEx messages.

Indeed, it works perfectly well with MDF.EXE. In fact, that's what I was using before DUMP, but I got annoyed by its output (the x bytes sent messages).

> NUL: didn't help, CTTY NUL: didn't help, and MDF has no /QUIET option...

So I guess I got my answer, just use MDF.

Thank you for your help!

Reply 2368 of 2376, by Falcosoft

User metadata
Rank l33t
Rank
l33t
PoulpSquad wrote on 2025-11-06, 10:33:
Hello and thank you very much for your reply, I appreciate it! […]
Show full quote

Hello and thank you very much for your reply, I appreciate it!

Instead of DUMP.EXE you should try the attached MDF.EXE utility to send the SysEx messages.

Indeed, it works perfectly well with MDF.EXE. In fact, that's what I was using before DUMP, but I got annoyed by its output (the x bytes sent messages).

> NUL: didn't help, CTTY NUL: didn't help, and MDF has no /QUIET option...

So I guess I got my answer, just use MDF.

Thank you for your help!

Please, attach the exact verion of DUMP.EXE that you used and caused the errors. Maybe I can figure out what the problem is.

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 2369 of 2376, by PoulpSquad

User metadata
Rank Member
Rank
Member

Yes sir, here it is:

Reply 2370 of 2376, by Falcosoft

User metadata
Rank l33t
Rank
l33t
PoulpSquad wrote on 2025-11-06, 11:10:

Yes sir, here it is:

Unfortunately I could not reproduce the error event with your DUMP.EXE.
According to my debug session DUMP.EXE sends the exact same bytes as MDF.EXE...

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 2371 of 2376, by PoulpSquad

User metadata
Rank Member
Rank
Member

That's very odd...

I know for a fact DUMP works fine with DOSBox (at least with the Staging flavor).

I've been having trouble with 86Box and MIDI, for instance running Gunship 2000 (the CD version with the expansion included) will invariably bring the emulation down ("The virtual machine process has unexpectedly terminated with exit code 3") after the MPS logo if MT-32 is set as the sound device. It works fine with FM.

After 86Box author gave it a look, he concluded the culprit might be the virtual cable (I'm using loopMIDI), but the same happens with LoopBe1 (https://www.nerds.de/en/loopbe1.html in case someone is looking for an alternative to loopMIDI).

Anyway, MDF works well enough for the time being, it was very nice of you to spend the time looking into this issue!

One last thing, if I may!

Some games have a very loud MIDI and weak digitized audio, to the point it's barely audible.
For instance, in Ultima Underworld, the digitized voice in the intro is clobbered by the MIDI music (MT-32).
Is there a way to control Midi Player main volume through a sysex message?

Reply 2372 of 2376, by Falcosoft

User metadata
Rank l33t
Rank
l33t
PoulpSquad wrote on 2025-11-06, 12:21:
... One last thing, if I may! […]
Show full quote

...
One last thing, if I may!

Some games have a very loud MIDI and weak digitized audio, to the point it's barely audible.
For instance, in Ultima Underworld, the digitized voice in the intro is clobbered by the MIDI music (MT-32).
Is there a way to control Midi Player main volume through a sysex message?

Yes, you can send GM Master Volume SysEx messages. But in this case make sure that in Device Settings 'Use SysEx for Volume/Balance' is NOT checked. Otherwise the player ignores/overwrites your sent messages.

GM Master Volume SysEx syntax:
F0 7F 7F 04 01 yy xx F7
where yy defines the lower byte of volume level from 0x00 to 0x7F.
where xx defines the upper byte of volume level from 0x00 to 0x7F.
If you do not want to use 14-bit resolution then you can ignore the lower byte.

Last edited by Falcosoft on 2025-11-06, 13:40. Edited 1 time in total.

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 2373 of 2376, by PoulpSquad

User metadata
Rank Member
Rank
Member

Awesome!

That should keep me busy until supper xD

Thanks mister!

Stalled again...

This works very well for SC VA, but how do I change the volume of the munt plugin?

Nevermind, I just read here that this isn't adequate for MT-32 devices MUNT - Pre-set initial volume.

Maybe there is an option to change Midi Player global volume from a sysex?

Reply 2374 of 2376, by Falcosoft

User metadata
Rank l33t
Rank
l33t
PoulpSquad wrote on 2025-11-06, 13:36:
Awesome! […]
Show full quote

Awesome!

That should keep me busy until supper xD

Thanks mister!

Stalled again...

This works very well for SC VA, but how do I change the volume of the munt plugin?

Nevermind, I just read here that this isn't adequate for MT-32 devices MUNT - Pre-set initial volume.

Maybe there is an option to change Midi Player global volume from a sysex?

There has not been such a SysEx message so far. But I have just added the option to the new test version:
https://falcosoft.hu/midiplayer_66_test.zip

Syntax:
F0 66 0A xx F7
where xx is the volume level from 0 to 100 in decimal but in the message you have to set the value in hexadecimal ( the range is: 0x00 - 0x64).

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)

Reply 2375 of 2376, by PoulpSquad

User metadata
Rank Member
Rank
Member

Oh wow, x-mas came early this year!

Can't wait to check this out!

So there is the thing:

I copied the files from the test build to my current Midi Player folder, overwriting the existing ones.

I opened Notepad and wrote 10 values for 10 levels of volume:

10% = F0 66 0A 0A F7
20% = F0 66 0A 14 F7
30% = F0 66 0A 1E F7
40% = F0 66 0A 28 F7
50% = F0 66 0A 32 F7
60% = F0 66 0A 3C F7
70% = F0 66 0A 46 F7
80% = F0 66 0A 50 F7
90% = F0 66 0A 5A F7
100% = F0 66 0A 64 F7

I opened my favorite freeware hex editor, XVI32 (http://www.chmaas.handshake.de/delphi/freewar … xvi32/xvi32.htm);
I clicked on New File ;
I imported each one of these values (Edit - Insert String... - Copy/Paste value in the Hex String text box, OK);
I saved the file as MIDI10 through MIDI100, making sure I gave them a .SYX extension.

It was then a simple matter to feed Midi Player the desired sysex with MFD. Works flawlessly, thanks a lot for your badass program!

P.S.: I found out how to fix DUMP.EXE crashing Midi Player by adding a 2 seconds delay between DUMP statements.

For instance, for 4DOS users:

@ECHO OFF
C:\MIDI\DUMP.EXE PRESET_0.SYX
DELAY 2
C:\MIDI\DUMP.EXE GSRESET.SYX
DELAY 2
C:\MIDI\DUMP.EXE VOL100.SYX

You could also use CHOICE.COM from plain DOS:

C:\MIDI\DUMP.EXE PRESET_0.SYX
C:\DOS\CHOICE.COM /N /T:Y,2
C:\MIDI\DUMP.EXE GSRESET.SYX
C:\DOS\CHOICE.COM /N /T:Y,2
C:\MIDI\DUMP.EXE VOL100.SYX

I checked 2 and 1,5 seconds. 1 second still crashes randomly.

I'm still trying to figure out why some games crash 86Box when using MT-32 (so far I found Gunship 2000+expansion after the MPS logo, and Rex Nebular during the intro).

Last edited by PoulpSquad on 2025-11-08, 17:41. Edited 1 time in total.

Reply 2376 of 2376, by Falcosoft

User metadata
Rank l33t
Rank
l33t
PoulpSquad wrote on 2025-11-06, 15:03:
Oh wow, x-mas came early this year! […]
Show full quote

Oh wow, x-mas came early this year!

Can't wait to check this out!

So there is the thing:

I copied the files from the test build to my current Midi Player folder, overwriting the existing ones.

I opened Notepad and wrote 10 values for 10 levels of volume:

10% = F0 66 0A 0A F7
20% = F0 66 0A 14 F7
30% = F0 66 0A 1E F7
40% = F0 66 0A 28 F7
50% = F0 66 0A 32 F7
60% = F0 66 0A 3C F7
70% = F0 66 0A 46 F7
80% = F0 66 0A 50 F7
90% = F0 66 0A 5A F7
100% = F0 66 0A 64 F7

I opened my favorite freeware hex editor, XVI32 (http://www.chmaas.handshake.de/delphi/freewar … xvi32/xvi32.htm);
I clicked on New File ;
I imported each one of these values (Edit - Insert String... - Copy/Paste value in the Hex String text box, OK);
I saved the file as MIDI10 through MIDI100, making sure I gave them a .SYX extension.

It was then a simple matter to feed Midi Player the desired sysex with MFD. Works flawlessly, thanks a lot for your badass program!

I'm glad it is working for you 😀

Website, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper
x86 microarchitecture benchmark (MandelX)