VOGONS

Common searches


First post, by khalbrae

User metadata
Rank Newbie
Rank
Newbie

Hi everybody.

I seem to recall that there was a way to make DOSBOX output everything midi related as "general midi" instead.

But I don't seem to find an option to force it.

Specifically in this case, I'm trying to get a game that only supports Soundblaster, SBpro/16 and Pro Audio Spetrum to output to general midi (both to capture the audio separately using synthesizers later on and to capture video without the midi stream interfering if I need to cut and edit later). Am I crazy? I could swear this was a feature but I tried several modifications to the dosbox.conf and it either continues to play as emulated fm-synth or it doesn't detect a card at all.

Look forward to your response.

Thanks!

Reply 1 of 14, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author
khalbrae wrote:

I seem to recall that there was a way to make DOSBOX output everything midi related as "general midi" instead.

Not in the way you seem to be referring to. DOSBox can capture FM music at the register write level into a .DRO file, which can be converted to a MIDI file with a program such as DRO2MIDI, but the conversion process is external to DOSBox.

Reply 3 of 14, by Zup

User metadata
Rank Oldbie
Rank
Oldbie

There are (at least) three methods to get music via Sound Blaster:
- Using the DAC to stream out the music (like most modern games). It was rarely used (if it was used at all) in DOS games. I think Command & Conquer used this method.
- Using it as a sampler (a software sampler, it's really MOD music). The music is composed of samples that are played in different tones. Pinball Dreams, Crusader: No remorse and others used this method.
- Using the OPLs. The instruments are programmed on the card and then the notes are played. Every OPL / FM game use this method.

If the game use the first method, you won't be able to convert it to MIDI. No, that's not really true. It's the same problem than converting a mp3 to MIDI... some programs claim that they can do it, but the results are disappointing (at best).
If the game use the second method (MOD music), you'll had to hack the game to extract the notes that are played.
The last method is the easiest, because DOSBox can capture the FM music and you can extract the notes played.

That was about the notes. Now, let's talk about instruments. If you capture FM music, there is a chance that you could get a table that matches OPL parameters with instruments; if the game used MOD music you won't have that chance. But keep in mind that you'll find some games that have non-MIDI instruments. Two examples: the table "Party Land" from Pinball Fantasies has a duck (but I don't remeber if it is used as F/X or into the music), while Knights of Xentar uses a meow on the music of certain town.

I have traveled across the universe and through the years to find Her.
Sometimes going all the way is just a start...

I'm selling some stuff!

Reply 4 of 14, by JayCeeBee64

User metadata
Rank Retired
Rank
Retired

(Deleted. No longer relevant anyway)

Last edited by JayCeeBee64 on 2019-10-27, 19:37. Edited 1 time in total.

Ooohh, the pain......

Reply 5 of 14, by khalbrae

User metadata
Rank Newbie
Rank
Newbie

I'm not concerned about tracker music. Mainly I'm just trying to find a way to divert the OPL music to be recorded separately when I capture a gameplay video. 😎

That way I can divide and edit the video and reapply the midi soundtrack later down the line to keep the immersion consistent.

Having it output to a file instead of the speaker for example would work well for my purposes. Or having it go to general midi to play via windows sounds (which doesn't get captured by DOSBOX)

I could swear there was a way.

Reply 6 of 14, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

As I wrote, there is no "real time" conversion of FM music to MIDI music. There are ways to make MIDI music sound like FM music in real time using certain soundfonts or an FM synth, but that's the opposite of what you're trying to do. Your only choice here is to capture the FM music into a .DRO file, and later convert DRO to MIDI with a utility like the one linked.

Reply 7 of 14, by khalbrae

User metadata
Rank Newbie
Rank
Newbie
ripsaw8080 wrote:

Your only choice here is to capture the FM music into a .DRO file, and later convert DRO to MIDI with a utility like the one linked.

Exactly what I've been asking.

How to get the midi to dump into DRO format. I haven't been able to find it online (I may be looking in the wrong place) but the utility page mentions it's a process within dosbox that does the dumping.

Also it looks like the utility is outmoded by Camoto suite (also on that site) which supports the newer format of DRO 😀

Looks like an amazing utility for modding old DOS games.

Reply 8 of 14, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author
khalbrae wrote:

How to get the midi to dump into DRO format. I haven't been able to find it online (I may be looking in the wrong place) but the utility page mentions it's a process within dosbox that does the dumping.

You could find this information much more easily in the DOSBox readme/manual: Ctrl-Alt-F7

Reply 10 of 14, by khalbrae

User metadata
Rank Newbie
Rank
Newbie

Hm... if only there were some what to disable OPL playback but have the game still operate and play digital sound.

I had hoped that the DRO dump would send the sound inputs to the file instead of playing them audibly.

The particular game I am trying to do this with is Castles 2: Siege and Conquest.

It doesn't have the robust setup options that Sierra games for example had.

Edit: If this isn't possible and I am just crazy for imagining it... well... I'll accept that possibility.

It's been a terrible 2014 for me. Didn't start off 2015 too well either.

Last edited by khalbrae on 2015-01-21, 22:12. Edited 1 time in total.

Reply 11 of 14, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

You can lower the volume level of FM music to make it inaudible, e.g. the command: MIXER FM 0:0

However, if the game is using a SoundBlaster configuration then it might try to set the volume level itself, in which case you can use the sbmixer=false setting to prevent that.

Reply 12 of 14, by khalbrae

User metadata
Rank Newbie
Rank
Newbie

Hm... I had tried setting sbmixer to false in my conf file before but it doesn't seem to work for some reason. (Still doesn't)

Is MIXER FM 0:0 just put under the mixer section?

Thanks again by the way. This whole thread has been quite educational 😀