SFX and Music on a real Roland MT32

NOTICE: This forum is archived as read only.
Please use the Github Discussions at https://github.com/exult/exult/discussions
Forum rules
NOTICE: This forum is archived as read only.
Please use the Github Discussions at https://github.com/exult/exult/discussions
Locked
Mungo

SFX and Music on a real Roland MT32

Post by Mungo »

I asked about this quite a long time ago but nothing has been done about implementing the SFX for a real MT32.

I've looked at the code and enabled MIDISFX but can't get the SFX sounds to play on my Roland MT32 - there must be some conversion to GS that I can't switch off.

It is possible to implement the original SFX using the MT32 by simply sending a sysex midi file to the roland before the game starts. This programs the MT32 for the SFXs. There are 3 sysex files, one for the introduction with the Guardian, one for the main game - SFX and music and one and the ending sequence. I have extracted these 3 sysex files into MIDI files.

Music plays as it does on the original for me so that is not a problem. One thing I haven't manage to test though are the background sea and wind soundtracks, which require the MT32 to be programmed. I have a feeling that Exult does not play these tracks.
Colourless
Site Admin
Posts: 731
Joined: Thu May 14, 2020 1:34 pm

Re: SFX and Music on a real Roland MT32

Post by Colourless »

We don't know the format the original (bg) used for it's sound effects. We are unable to add in support for using a MT32.

-Colourless Dragon
MV

Re: SFX and Music on a real Roland MT32

Post by MV »

Speaking of a mt32, where would I find one to buy?

I wouldn't mind hooking it up with my sb16 in my old 486 dos games machine.
Mungo

Re: SFX and Music on a real Roland MT32

Post by Mungo »

MV, you can get one off EBay.

Colourless, I don't understand what you mean. In the code the original MT32 SFX voices were mapped to the GS sounds and the wave versions are mapped correctly. As I said in the post I have the sysex midi files that program the MT32 voices, all that is needed in the code is to trigger the necessary patch/note.

I can play with the code if somebody gives me some pointers to start with to get this to work. The MIDI files are available on my web page http://www.geocities.com/ukcave/ultimamidi.html
Colourless
Site Admin
Posts: 731
Joined: Thu May 14, 2020 1:34 pm

Re: SFX and Music on a real Roland MT32

Post by Colourless »

Not true at all. The SFX are not the original SFX files. They were custom created sfx for use with a GS card. The SFX patch conversion is not what you think it is.

-Colourless Dragon
Newton Dragon

Re: SFX and Music on a real Roland MT32

Post by Newton Dragon »

The "GM/GS Patch" I did for Ultima 7 and 7.5 were different. I was able to do sound effects fairly easy for Serpent Isle, but not for U7. They used different formats to store them. Ultima 7 used procedural (in game) methods for generating the sound effects, while U7.5 had them stored in a file (as XMI and were played as needed)

Nevertheless, Ultima 7 would require creating the procedural sound effects notes, and 7.5 would require interpretation of the Miles sound system's method for encoding custom sound patches in the XMI stream. (I stripped out all these in the sfx patches).

As for making the music work with the original MT32, it should be much easier, as no on the fly patch # conversions have to be done.

The old Roland LAPC-1 I have is still around somewhere. It can be done. The .TIM files in the U7/U7.5 folder are the raw sysex data that needs to be sent to the MPU-401 port, and only works on the MT-32/LAPC-1. It takes about 5 seconds to send, (Thus the delay if you use MT-32/LAPC-1 on the Intro, and upon loading the game)

I even thought about doing this once to make it complete (and to record a digital sfx package that used the higher quality Roland sounds over the FM ones)
Mungo

Re: SFX and Music on a real Roland MT32

Post by Mungo »

Thanks for the info Newton. So the digital SFX sounds are from FM not the Roland? I wondered why the quality wasn't as good as the Roland's.

To play the music when running Exult, I currently load the sysex Midi data onto the MT32 before playing Exult, music comes through as on the original.

That's a shame about the complexity of the MT32's sound effects.
Mungo

Re: SFX and Music on a real Roland MT32

Post by Mungo »

Just a thought on the music. I have all the tracks recorded to MP3 directly from a Roland MT-32. I'd estimate I could get the total size down to 30MBytes for the whole of Black Gate with a very good sound quality bitrate. These tracks include the music and SFX only music tracks (sea, wind and dungeon ones).

Implementing this in Exult should be easy by just triggering an MP3 track at the relevant time.

I'm also interested in recording the MT32 sounds in just the same way as the FM voices were recorded for the current SFX pack. Can anyone give any pointers. I've found quite a lot of the voices and notes for the SFX on the MT32 but not all of them.
SB-X
Posts: 980
Joined: Thu May 14, 2020 1:34 pm

Re: SFX and Music on a real Roland MT32

Post by SB-X »

Yeah but who would distribute those MP3s, and would the Exult team dare to link to them from this site? :)
Darke
Site Admin
Posts: 173
Joined: Thu May 14, 2020 1:34 pm

Re: SFX and Music on a real Roland MT32

Post by Darke »

As a quick thought, you'd write a small program that will XOR 'encode' the 30Meg
file, with repeated copies of a file that is standard across all BG+FOV
installations, probably a music or sound file. Then people download the large
chunk of bytes pretending to be a zip, run `xor music_file mp3_file`, and
they've got the flex or zip of all the mp3s. You'd be able to use the same
program to 'encode' the mp3s in the first place too.
Newton Dragon

Re: SFX and Music on a real Roland MT32

Post by Newton Dragon »

No, the sound effects were from the roland. And in most cases much better than the FM ones. But in U7 they weren't stored in a file, it just procedureally send Midi commands. In 7.5 they were part of the XMI files.

They used some custom timbres to "help" the sound effects.
Mungo

Re: SFX and Music on a real Roland MT32

Post by Mungo »

Thanks to Colourless and Newton for the info. I currently have all the MP3 files ready for BG and they have been re-encoded (22KHz, ~60kbps VBR) to fit 23 MBytes, still a lot but the lowest I can go without sacrificing sound quality. 22KHz is OK as the MT32 music hardly goes above 11KHz.

I'm currently trying to get an MP3 player (such as AMP11) to work with Exult and SDL to trigger these MP3 files when necessary. Guess it will have to be run with a seperate thread. I don't have any experience writing this kind of software - PDA C++ is my forte, so it may take some time!
Locked