DelaySysex suggestion :)

Forum for discussion of bugs, code, and other aspects of SoftMPU.

DelaySysex suggestion :)

Postby FeedingDragon » 2014-9-20 @ 15:50

I've been working on my vintage system that has an MPU-401 with MT-32 installed. I ran into a problem with Star Wars X-Wing in that it causes the buffer overflow issue on the MT-32. So, after an exhaustive search, I downloaded SoftMPU. I don't need intelligent mode emulation, but it was the only thing I could find that could add in a sysex delay in DOS. However, I cannot get it to work "just" with the MPU-401, it insists that it has to have the SoundBlaster information as well. It then sets up to work on Port 330 IRQ 5 (while my card is Port 330 IRQ 2/9.) Whether this is the cause, or X-Wing MT-32 music is normally like this, the result is that the music rather sucks. Obviously missing notes, some notes extremely quite (even though they obviously shouldn't be,) while others threaten to break my speakers. Instrument names & other messages rapidly appearing/disappearing on the LCD display (as in, I have time to read tamb of "I assume" tambourine - then it's gone, 1/10th of a second or less.)

So, I would like to suggest that maybe you could allow it to load with just the MPU port and /DELAYSYSEX?

On a side note, is there any way to get it to work as a simple re-director? That is, games that are "locked" to port 330 (really, why do that?,) can be re-directed to port 300. I'm thinking X-Wing "might" sound better on my AWE32 WaveSynth (with the right set loaded.) Only, I don't want to have to open my system every time I want to play X-Wing, or one of my other games (that sound best on the MT-32, and also have a locked MIDI port.) I had hoped that the AweUtil could take care of that for me, but it doesn't seem to work that way.

As a final note, though I don't see any way this would ever be needed :) Just a FYI - you cannot have AweUtil loaded and use SoftMPU at the same time. Using them in combinations was one of my "attempts" at re-directing the MIDI port :( I didn't think it would work, but I thought it couldn't hurt. Turns out that SoftMPU keeps AweUtil from even loading, and AweUtil makes SoftMPU lock up my system. So, can't say definitively that the combination won't re-direct the MIDI port, but I sort of doubt it would work.

**Locked Port 330** Please don't answer that question, it was rhetorical. I actually know why they did it that way. I just think its stupid :(
Feeding Dragon
User avatar
FeedingDragon
Oldbie
 
Posts: 798
Joined: 2003-8-24 @ 03:25
Location: Central Texas

Re: DelaySysex suggestion :)

Postby bjt » 2014-9-21 @ 10:59

Is this the floppy version of X-Wing? It has serious issues with the rev.0 MT-32. /DELAYSYSEX will fix them but will introduce stuttering during gameplay.
As SoftMPU is intended to work with a SB card's midi port, it requests the SB's IRQ. The exception is in serial output mode.
I think you can select a different MIDI port in X-Wing?
Instrument names on screen - normal behaviour.
AWEUtil vs SoftMPU issues - expected.
User avatar
bjt
Oldbie
 
Posts: 1413
Joined: 2013-2-06 @ 10:40
Location: UK

Re: DelaySysex suggestion :)

Postby FeedingDragon » 2014-9-21 @ 16:22

bjt wrote:Is this the floppy version of X-Wing? It has serious issues with the rev.0 MT-32. /DELAYSYSEX will fix them but will introduce stuttering during gameplay.

Yes, it's the floppy version. I never got far enough into the game to see any stuttering, as the music was rather bad.

bjt wrote:As SoftMPU is intended to work with a SB card's midi port, it requests the SB's IRQ. The exception is in serial output mode.

Considering it's purpose, that makes sense I guess. But I'm curious how it would function in a system that has a UART only (or not completely compatible intelligent,) MPU-401 clone and no other sound device? An example would be the S-MPU-II card I was commenting on in another thread. It's supposed to be intelligent, but isn't completely compatible. If someone has that as the only sound device, they would have an MPU port (330 most likely,) an IRQ (2/9 most likely,) but not a SB port. They would be unable to get SoftMPU to load. Just something to maybe think about?

bjt wrote:I think you can select a different MIDI port in X-Wing?

Not that I can find anywhere. The setup program just asks for the "type" of sound card(s) you have. Sound Blaster, Roland, etc... It never gives you an option for device settings. I'm assuming it reads the BLASTER variable (or it's equivalent) for digital sound. I'm not sure how it gets the MIDI port, as there isn't an environment variable for that. It's not using the one in the BLASTER variable, as it's going to 330 and not 300.

bjt wrote:Instrument names on screen - normal behaviour.

OK, I wasn't clear :( It shows the instrument for 1/10th of a second or less. While the music is playing the message light is constantly blinking extremely quickly. And the display is cycling through instrument names at a rate of 15-30 per second. It is also displaying garbage at times. All of my other games will list a couple of instruments (usually slow enough that I can read them without problem.) Then go to the channel display and play music for a while. Occasionally, an instrument or 2 will pop up again, and then it continues. Which is why I was primarily asking for a way to load it without switching the MPU's IRQ to the SoundBlaster's IRQ. This could be "normal" behavior for X-Wing (floppy,) I guess. I would really need someone with a MT-32 (New Model) to see how it acts there. If the new model doesn't suffer from the overflow issue, that is (I don't remember off hand.) They would need the LCD display to see if it's doing the same thing as mine is.

bjt wrote:AWEUtil vs SoftMPU issues - expected.

That made sense from the beginning, just thought I'd mention it in passing is all. They are both watching and altering data flow through the MIDI port. SoftMPU to add intelligence and AWEUtil to convert to the AWE's WaveSynth standard (different from MIDI.) Since they are both TSR's, they would naturally fight over that access :)
Feeding Dragon
User avatar
FeedingDragon
Oldbie
 
Posts: 798
Joined: 2003-8-24 @ 03:25
Location: Central Texas

Re: DelaySysex suggestion :)

Postby bjt » 2014-9-21 @ 16:57

The SB is required for generating "fake" MPU interrupts in intelligent mode. There was actually an early version of SoftMPU (0.5) that didn't require an SB but as a result it didn't support all games. It's still available somewhere in the other thread.
User avatar
bjt
Oldbie
 
Posts: 1413
Joined: 2013-2-06 @ 10:40
Location: UK

Re: DelaySysex suggestion :)

Postby FeedingDragon » 2014-9-21 @ 17:12

bjt wrote:The SB is required for generating "fake" MPU interrupts in intelligent mode. There was actually an early version of SoftMPU (0.5) that didn't require an SB but as a result it didn't support all games. It's still available somewhere in the other thread.


When I get my system put back together, I might give that a try to see if the MT keeps the same activity or not. That would at least tell me if the IRQ change is causing it, or if it's just X-Wing being ridiculous :)
Feeding Dragon
User avatar
FeedingDragon
Oldbie
 
Posts: 798
Joined: 2003-8-24 @ 03:25
Location: Central Texas

Re: DelaySysex suggestion :)

Postby FeedingDragon » 2014-9-21 @ 21:14

bjt wrote:The SB is required for generating "fake" MPU interrupts in intelligent mode. There was actually an early version of SoftMPU (0.5) that didn't require an SB but as a result it didn't support all games. It's still available somewhere in the other thread.


Nope, doesn't work. Doesn't have the /DELAYSYSEX option that I can find, so the MT-32 locks up :(
Feeding Dragon
User avatar
FeedingDragon
Oldbie
 
Posts: 798
Joined: 2003-8-24 @ 03:25
Location: Central Texas


Return to SoftMPU

Who is online

Users browsing this forum: No registered users and 1 guest