MT-32 works with Amiga core, but not with AO486?

emuola
Posts: 87
Joined: Wed Dec 29, 2021 7:14 am
Been thanked: 2 times

MT-32 works with Amiga core, but not with AO486?

Unread post by emuola »

Running latest MiSter software and Roland UM-One Mk2 + MT32-Pi. For some reason (my mistake, that's for sure...) I cannot get the MT-32 playing anything with AO486 core. With Amiga it works just fine. Midilink is on and configured exactly the same (USB) in both Amiga and AO486 cores. My own conclusion would be there's something wrong with SoftMPU as to my understanding that's the key to get the games to play anything via MT-32.

How could I try to debug this problem?
Bas
Top Contributor
Posts: 518
Joined: Fri Jan 22, 2021 4:36 pm
Has thanked: 60 times
Been thanked: 225 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by Bas »

Many of the older Sierra titles work with the internal Munt, without a need for SoftMPU. I don't have an MT32pi yet, so I can't help you with that.
FPGA64
Top Contributor
Posts: 750
Joined: Mon Mar 01, 2021 3:10 pm
Has thanked: 44 times
Been thanked: 325 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by FPGA64 »

Mt32 pi should be directly connected to the IO board User port. The hat has a direct connection to the user port
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by Malor »

Yeah, if you're connected via USB, you're doing it wrong. The hat you bought should come with a short USB-C cable, but you're not using it as USB. It needs to plug into the user port. It uses that port and cable type because they're cheap and easy to find, but it's not a USB signal.

I can't look right now to tell you the exact wording, but if the MT32Pi is connected correctly, you should have a special menu entry in the AO486 core settings to let you change between MUNT and Fluidsynth, and which soundfont is loaded if you're in Fluidsynth mode. It shows up in DOS as port 330, just like an actual MIDI card. On the Amiga, I think it's connected to one of the serial ports, although I can't look at that either.

If it's on the user port and you're still not getting sound, try your mixer settings. There's also a "gain" setting on the MT32Pi's ini, but I think you'll have to take the card out and edit the file to change it. I don't think it can be changed on the fly. The default is 0.2, which I found to be too quiet for my taste. I believe the max gain (full volume) is 1.0, and you can use any value you wish between 0 (silent) and 1 (full volume.) I have mine set to 1.
emuola
Posts: 87
Joined: Wed Dec 29, 2021 7:14 am
Been thanked: 2 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by emuola »

Just to make sure I described my setup detailed enough:

Latest MiSter software
Roland U-ONE Mk2 USB-to-midi adapter (works fine with Amiga core) connected to
MT32-Pi as a hat on a RPI = completetely separate hw for baremetal MT-32 emulation. (works fine with Amiga core)

So, the hw is ok, as it works with Amiga core. The problem is the AO486. I have a few questions, if someone could answer them.

1. I presume I have to use SB16 as it has the possibility to define the port, e.g. /P:330 which SoftMPU then will use?
Autoexec.bat has this line:

Code: Select all

SET BLASTER=A220 I5 D1 H5 P330 T6
2. SoftMPU has this line in autoexec.bat:

Code: Select all

SOFTMPU.EXE /SB:220 /IRQ:5 /MPU:330
3. Quemm is loaded in autoexec.bat also as it was mentioned that SoftMPU needs it.

Midilink in AO486 is set to USB (as it's also set in Amiga core and it works).
What am I missing?
DevilHunterWolf
Posts: 102
Joined: Thu Aug 19, 2021 4:07 am
Has thanked: 2 times
Been thanked: 40 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by DevilHunterWolf »

For my setup with AO486, I'm not using SoftMPU. I just have the AUTOEXEC lines to configure MIDI with the "SoundBlaster".

Code: Select all

SET MIDI=SYNTH:1 MAP:E
I can't recall if I pulled that line from a AO486 setup guide or an mt32-pi setup guide for MiSTer but that's all I have in my config for MIDI settings. Looking it up, the SYNTH:1 appears to correspond to it expecting an internal synthesizer and MAP:E appears to correspond to setting it up to have Extended MIDI support.Works like a charm for me in both MT-32 MUNT and General MIDI FluidSynth modes. And then my SET BLASTER has the port 330 configured.

Code: Select all

SET BLASTER=A220 I5 D1 H5 P330 T6
I will say that my setup differs a bit as I'm not using a MIDI to USB adapter to connect the mt32-pi to the MiSTer. I directly connect into the USER IO port with both my Pi 2 Zero "Lite" build and the full size Pi 3 build that I use with AO486. I am using a MiSTer specific Pi hat that I got from MiSTerAddOns for the Pi 3 so it's just USB to USB. But might be worth a shot to take out SoftMPU and just run the settings naturally to see if it works for you.
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by Malor »

emuola wrote: Thu Nov 24, 2022 1:11 pm Latest MiSter software
Roland U-ONE Mk2 USB-to-midi adapter (works fine with Amiga core) connected to
MT32-Pi as a hat on a RPI = completetely separate hw for baremetal MT-32 emulation. (works fine with Amiga core)
I'm not sure why you're insisting on that Roland adapter. You shouldn't need it, and in fact it's giving you real trouble. If you have the Mister-compatible MT32-Pi HAT, which it sounds like you do, then you want to connect that straight to the Mister's user port, and just leave the Roland adapter on the table. This allows the MT32 to send the audio back to the Mister, so that you can mix everything into one output. Everything just works with minimal effort and one tiny cable.

It's possible that the Roland may be doing something similar, but again, you shouldn't need it unless you have very unusual requirements. For simple gameplay, where all the audio is mixed together, don't bother with the ancillary device. Unless you need to separate the MT32-Pi's output onto separate speakers or something, or unless you're trying to set up some kind of external MIDI chain, it's probably of no benefit at all.

Oh, and you'll have to configure the MT32-Pi so that it knows it's on a Mister, probably also defeating the under-current detection if you're powering it from the user port. The ini file has outstanding documentation, so you can just read along and make changes.

Once it's configured that way, the AO486 port 330 is redirected through the user port, where the MT32 engine does its synthesis and sends the digital audio back over the other wire pair for mixing into the final output. The whole stack sounds especially nice if you're using digital sound output to a receiver or outboard DAC. I've gotten the impression from other posts that the analog audio output options from the Mister don't sound that great.
emuola
Posts: 87
Joined: Wed Dec 29, 2021 7:14 am
Been thanked: 2 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by emuola »

DevilHunterWolf wrote: Fri Nov 25, 2022 2:32 am For my setup with AO486, I'm not using SoftMPU. I just have the AUTOEXEC lines to configure MIDI with the "SoundBlaster".

Code: Select all

SET MIDI=SYNTH:1 MAP:E
I can't recall if I pulled that line from a AO486 setup guide or an mt32-pi setup guide for MiSTer but that's all I have in my config for MIDI settings. Looking it up, the SYNTH:1 appears to correspond to it expecting an internal synthesizer and MAP:E appears to correspond to setting it up to have Extended MIDI support.Works like a charm for me in both MT-32 MUNT and General MIDI FluidSynth modes. And then my SET BLASTER has the port 330 configured.

Code: Select all

SET BLASTER=A220 I5 D1 H5 P330 T6
I will say that my setup differs a bit as I'm not using a MIDI to USB adapter to connect the mt32-pi to the MiSTer. I directly connect into the USER IO port with both my Pi 2 Zero "Lite" build and the full size Pi 3 build that I use with AO486. I am using a MiSTer specific Pi hat that I got from MiSTerAddOns for the Pi 3 so it's just USB to USB. But might be worth a shot to take out SoftMPU and just run the settings naturally to see if it works for you.
Malor wrote: Fri Nov 25, 2022 5:38 am
emuola wrote: Thu Nov 24, 2022 1:11 pm Latest MiSter software
Roland U-ONE Mk2 USB-to-midi adapter (works fine with Amiga core) connected to
MT32-Pi as a hat on a RPI = completetely separate hw for baremetal MT-32 emulation. (works fine with Amiga core)
I'm not sure why you're insisting on that Roland adapter. You shouldn't need it, and in fact it's giving you real trouble. If you have the Mister-compatible MT32-Pi HAT, which it sounds like you do, then you want to connect that straight to the Mister's user port, and just leave the Roland adapter on the table. This allows the MT32 to send the audio back to the Mister, so that you can mix everything into one output. Everything just works with minimal effort and one tiny cable.

It's possible that the Roland may be doing something similar, but again, you shouldn't need it unless you have very unusual requirements. For simple gameplay, where all the audio is mixed together, don't bother with the ancillary device. Unless you need to separate the MT32-Pi's output onto separate speakers or something, or unless you're trying to set up some kind of external MIDI chain, it's probably of no benefit at all.

Oh, and you'll have to configure the MT32-Pi so that it knows it's on a Mister, probably also defeating the under-current detection if you're powering it from the user port. The ini file has outstanding documentation, so you can just read along and make changes.

Once it's configured that way, the AO486 port 330 is redirected through the user port, where the MT32 engine does its synthesis and sends the digital audio back over the other wire pair for mixing into the final output. The whole stack sounds especially nice if you're using digital sound output to a receiver or outboard DAC. I've gotten the impression from other posts that the analog audio output options from the Mister don't sound that great.
Thank you for a great piece of information DevilHunterWolf 👍

Code: Select all

SET MIDI=SYNTH:1 MAP:E
this line (and disabling SoftMPU) makes the Roland alive and send Midi data. E.g. Police Quest III and Ultima VI started playing music :) However, the sounds are not correct, which is really weird as clearly it's the external bare metal MT-32 emulator that outputs the music. Also the OLED displays game name etc with Sierra titles.

I guess the midi patches are somehow not the ones that they should be, but clearly the Midi data is now flowing to the Pi-Midi equipped RPI3. I used the wrong name for my MT-32 RPI, earlier, sorry for that. (image of my device below). That's why I use the Roland between the Mister and the MT-32.

Image

Any idea how the Midi patches could not be the right ones?
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by Malor »

I went and looked at the main page for SoftMPU, and I don't see anything about either the SYNTH or the MAP arguments. I wonder what MAP:E is doing? Perhaps it's causing the system to send to the wrong bank? I never owned a real MT32, but I have a vague idea that there are multiple patch banks, with different instruments on different channels.

I guess that might also mean 'external', in which case I'd eyeball the "SYNTH:1" argument. If, say, MAP:A doesn't do the right thing, maybe SYNTH:0 might change banks? Maybe?

My knowledge base here is pretty much this thread, so these suggestions could be totally stupid.
DevilHunterWolf
Posts: 102
Joined: Thu Aug 19, 2021 4:07 am
Has thanked: 2 times
Been thanked: 40 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by DevilHunterWolf »

The MAP:E argument is for Extended MIDI instead of MAP:B for Basic MIDI. I didn't grow up with any MIDI based synthesizers so I'm not too familiar with the differences. However, I have noticed Windows 3.1 also recognizes Basic and Extended settings and it seemed to be a difference of capabilities like number of simultaneous sound channels. At least, that's what it seems to be if the difference in sound playing CANYON.MID is any indication. A Google search shows a third option for the MAP option, MAP:G for General MIDI so there is that option as well. As far as SYNTH:1 and SYNTH:2 goes, it's supposed to be the difference between an internal sound card's MIDI synthesizer and an external MIDI port respectively. Why then the mt32-pi works when my DOS is configured for a sound card's synthesizer, I don't know. The MiSTer is a different beast to a traditional 486 computer build so I don't know if some things matter more or some things matter less in the configuration because nothing is technically connected the same way you would on the original hardware.

Maybe you need to change to MAP:G for General MIDI to have all sound channels available? But not sure if that even applies as the MT-32 is *not* a General MIDI synthesizer. It was before the General MIDI standard was created so it has its own set of sounds and different channel numbers. I never had to change that setting when changing my mt32-pi from MT-32 mode into General MIDI (FluidSynth) mode so I don't think that's the solution. Just as a sanity check, you are selecting the game settings for an MT-32 specifically, correct? I believe you are since it's getting the LCD information but never hurts to ask. You could try SYNTH:2 to see if it makes any difference but SYNTH:1 never impeded either MT-32 or General MIDI playback through the mt32-pi for me. I'd also try the different Munt ROM options and see if any of them make a difference. I tend to leave mine set at MT-32 V2 but there's also V1 and the later CM-32L options as well. They occasionally make a difference if a game doesn't handle the different releases of the hardware well. The last thing I can think of to suggest is to make sure the MiSTer settings are correct. Under the Hardware setting, double check that USER I/O is set to MIDI instead of COM2 for instance. All else fails, check a video of someone connecting real hardware to MiSTer like this one from retrobits: https://www.youtube.com/watch?v=qUz5-hW1n0U

I could be way off base myself but I hope this gives you some ideas to try.
Malor
Top Contributor
Posts: 860
Joined: Wed Feb 09, 2022 11:50 pm
Has thanked: 64 times
Been thanked: 194 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by Malor »

It sounds like maybe MAP:B might be suitable for MT32 mode, since it's pretty much the original basic MIDI, and then MAP:G when in Fluidsynth mode?

If you get *really* frustrated, you could always buy a Mister-version MT32-Pi hat.
emuola
Posts: 87
Joined: Wed Dec 29, 2021 7:14 am
Been thanked: 2 times

Re: MT-32 works with Amiga core, but not with AO486?

Unread post by emuola »

Thank you guys for your advice :) There's certainly something weird here, since just for the sake of it I decided to update the MT32-Pi software to the latest. Low an behold at least a few titles started playing all the channels as expected. Then during the testing I got to the point that the were a few channes missing once again. Rebooted the MT32-PI and the missing channels were back again.

The weirdest thing is that I actually copied the .cfg file of the older MT32-PI version to the updated one, so the config should be exactly the same :?: And my version vas just months older or something. Weird.

So, this is kinda weird, but now I'm closer. It seems the SYNTH-option in the autoexec.does not really matter, and currently I'm running this still as MAP:E. I'll continut the testing 🙂

Thanks for your help once again 👍
Post Reply