HardMPU, anyone?

Discussion about old sound cards, MIDI devices and sound related accessories.

Re: HardMPU, anyone?

Postby aquishix » 2018-6-29 @ 21:40

jsp wrote:I just bought a SC-55 from ebay, and was planning to use it from the game port of my current sound card. After reading a while, I'm not sure whether the problem with intelligent mode and game ports is only an issue with the MT-32 or I would also need to make use of a mpu-401 clone, such as hardmpu. Do you guys know?


The user "jesolo" essentially answered this question here: viewtopic.php?f=46&t=51150

But the basic answer to your question is: The SC-55 does not support intelligent mode even if you have a true MPU-401 or equivalent feeding it, so there's no point in using it that way. Feed it any MIDI connection you feel like.

That being said, if a game is designed to work with the MT-32, it's *really* designed to work with the MT-32 ONLY and will sound like utter garbage if you try using any other synth, including the SC-55. The SC-55 has the ability to emulate the MT-32 by playing a special .mid file through it first which sets it up for such emulation, but even then it doesn't sound like a true MT-32. Just close enough for some people's tastes.

Very few games support the SC-55 specifically, but generic MIDI options or General MIDI were basically written with the SC-55 in mind. (And after a few years, towards the end of the DOS era, the SC-88.)
User avatar
aquishix
Member
 
Posts: 159
Joined: 2018-3-10 @ 22:24
Location: Fort Worth, TX

Re: HardMPU, anyone?

Postby ab0tj » 2018-6-29 @ 21:53

aquishix wrote:But the basic answer to your question is: The SC-55 does not support intelligent mode even if you have a true MPU-401 or equivalent feeding it, so there's no point in using it that way. Feed it any MIDI connection you feel like.

Well, being pedantic here, but the MIDI module (SC-55 or MT-32) neither care nor know if they're being used via intelligent mode or not. But I agree with the general premise that you're not really going to gain anything using an intelligent interface with a SC-55, because the combination doesn't really make any sense.
ab0tj
Member
 
Posts: 193
Joined: 2015-7-16 @ 16:38
Location: Colorado, USA

Re: HardMPU, anyone?

Postby bjwil1991 » 2018-6-29 @ 21:53

There are certain games that don't require intelligent mode, such as Doom, or King's Quest VI (requires a slow down) for that matter. The SC-55 isn't really 100% compatible with the MT-32 (I tried, yet it didn't work too well), but my Sound Blaster Live! 5.1 Platinum almost sounds like the MT-32 (extremely close).
C64, WheelWriter 10 Series II QuietWriter 8, Pack-Mate 28 Plus, K6-2/300, Pavilion N3350, iMac G3 & G4, Socket 370, 2x Inspiron 600m, Athlon 64, Dimension 4550 & E510, ThinkPad R40, Presario C700, ASUS X54C, Raspberry Pi B+, 2B-3B+, Custom FX-6300
User avatar
bjwil1991
Oldbie
 
Posts: 1869
Joined: 2013-8-14 @ 03:10
Location: SE, MI USA

Re: HardMPU, anyone?

Postby aquishix » 2018-6-29 @ 22:08

ab0tj wrote:
aquishix wrote:But the basic answer to your question is: The SC-55 does not support intelligent mode even if you have a true MPU-401 or equivalent feeding it, so there's no point in using it that way. Feed it any MIDI connection you feel like.

Well, being pedantic here, but the MIDI module (SC-55 or MT-32) neither care nor know if they're being used via intelligent mode or not. But I agree with the general premise that you're not really going to gain anything using an intelligent interface with a SC-55, because the combination doesn't really make any sense.


Enlighten me/us, since you've worked so much with this. What *exactly* is Intelligent Mode? Every time I try to google for this I get conflicting and incomplete information. I suppose that what you're saying makes sense since I've daisy-chained an SC-55 and SC-88 from an MT-32 and the MIDI spec says that it's supposed to be a straight electrical daisy-chain with no processing in between. But I'm curious about the implementation of Intelligent Mode. Other than digging up the Roland specs that you must've learned from, I don't see how to get this information.
User avatar
aquishix
Member
 
Posts: 159
Joined: 2018-3-10 @ 22:24
Location: Fort Worth, TX

Re: HardMPU, anyone?

Postby ab0tj » 2018-6-29 @ 22:15

aquishix wrote:Enlighten me/us, since you've worked so much with this. What *exactly* is Intelligent Mode? Every time I try to google for this I get conflicting and incomplete information. I suppose that what you're saying makes sense since I've daisy-chained an SC-55 and SC-88 from an MT-32 and the MIDI spec says that it's supposed to be a straight electrical daisy-chain with no processing in between. But I'm curious about the implementation of Intelligent Mode. Other than digging up the Roland specs that you must've learned from, I don't see how to get this information.

Heh, ok.

UART/non-intelligent mode is where the computer sends bytes to the interface (HardMPU, sound card, etc) and the interface spits them directly out the MIDI port to whatever device is attached to it. All the processing is done in the game or application and the interface doesn't have to do much at all, it basically just acts like a serial port. (Ok, technically it IS a serial port, just using a different electrical spec and baud rate than the one you attach a modem to.)

Intelligent mode is where the interface is more involved in processing of the MIDI data. It could be as simple as acting as a clock for the game, telling it when to send the next note, or it could be a lot more complex where the game kind of describes the music to the interface and the interface is what generates the bytes to send out to the MIDI device. In the old 8088 days, this took a lot of load off the CPU so it could focus on running the game instead.

In both cases, the data that is sent to the MIDI device is essentially just "play this note using this instrument at this time" and the format is no different whether or not it was generated via intelligent mode.
ab0tj
Member
 
Posts: 193
Joined: 2015-7-16 @ 16:38
Location: Colorado, USA

Re: HardMPU, anyone?

Postby gdjacobs » 2018-6-30 @ 03:53

I'm not sure, but I think intelligent mode can generate interrupts to be serviced as well.
User avatar
gdjacobs
l33t++
 
Posts: 5611
Joined: 2015-11-03 @ 05:51
Location: The Great White North

Re: HardMPU, anyone?

Postby jsp » 2018-6-30 @ 05:05

Thank you all for your responses, despite the slightly offtopic question. My main use for the sc-55 will be for general midi games, although I may try mt-32 emulation from time to time. Guess I can postpone getting one of this cool hardmpu ISAs, but it's definitely in my buy list at some point.
jsp
Newbie
 
Posts: 24
Joined: 2018-6-29 @ 10:34

Re: HardMPU, anyone?

Postby villeneuve » 2018-6-30 @ 10:49

But what about bugs like the hanging note bug etc.. That would affect the SC-55.
villeneuve
Newbie
 
Posts: 21
Joined: 2014-1-09 @ 11:31
Location: Germany

Re: HardMPU, anyone?

Postby ab0tj » 2018-6-30 @ 18:05

villeneuve wrote:But what about bugs like the hanging note bug etc.. That would affect the SC-55.

That is a good point. HardMPU would be a good option if you have a sound card that have the hanging note bug (and you want to keep that sound card)
ab0tj
Member
 
Posts: 193
Joined: 2015-7-16 @ 16:38
Location: Colorado, USA

Re: HardMPU, anyone?

Postby aquishix » 2018-6-30 @ 18:24

ab0tj wrote:
aquishix wrote:Enlighten me/us, since you've worked so much with this. What *exactly* is Intelligent Mode? Every time I try to google for this I get conflicting and incomplete information. I suppose that what you're saying makes sense since I've daisy-chained an SC-55 and SC-88 from an MT-32 and the MIDI spec says that it's supposed to be a straight electrical daisy-chain with no processing in between. But I'm curious about the implementation of Intelligent Mode. Other than digging up the Roland specs that you must've learned from, I don't see how to get this information.

Heh, ok.

UART/non-intelligent mode is where the computer sends bytes to the interface (HardMPU, sound card, etc) and the interface spits them directly out the MIDI port to whatever device is attached to it. All the processing is done in the game or application and the interface doesn't have to do much at all, it basically just acts like a serial port. (Ok, technically it IS a serial port, just using a different electrical spec and baud rate than the one you attach a modem to.)

Intelligent mode is where the interface is more involved in processing of the MIDI data. It could be as simple as acting as a clock for the game, telling it when to send the next note, or it could be a lot more complex where the game kind of describes the music to the interface and the interface is what generates the bytes to send out to the MIDI device. In the old 8088 days, this took a lot of load off the CPU so it could focus on running the game instead.

In both cases, the data that is sent to the MIDI device is essentially just "play this note using this instrument at this time" and the format is no different whether or not it was generated via intelligent mode.


Perfect. Thank you for clearing that up! =)

I do have one more question, though -- how exactly are new voices uploaded to the MT-32? Does that require intelligent mode, or are those simply MIDI messages that can be sent to the MT-32 via the basic UART mode?
User avatar
aquishix
Member
 
Posts: 159
Joined: 2018-3-10 @ 22:24
Location: Fort Worth, TX

Re: HardMPU, anyone?

Postby ab0tj » 2018-6-30 @ 18:33

aquishix wrote:I do have one more question, though -- how exactly are new voices uploaded to the MT-32? Does that require intelligent mode, or are those simply MIDI messages that can be sent to the MT-32 via the basic UART mode?

They are uploaded through SysEx messages, which absolutely does not require intelligent mode. KQV, for example, uploads custom sounds but uses UART mode to do it.
One reason to use Soft- or Hard-MPU with the MT32 is the ability to leave a gap between these SysEx messages, which can help alleviate errors and lockups of the MT32 on faster systems. The original MT32 needs a little time to process these messages before the next one is sent.
ab0tj
Member
 
Posts: 193
Joined: 2015-7-16 @ 16:38
Location: Colorado, USA

Re: HardMPU, anyone?

Postby aquishix » 2018-6-30 @ 18:46

ab0tj wrote:
aquishix wrote:I do have one more question, though -- how exactly are new voices uploaded to the MT-32? Does that require intelligent mode, or are those simply MIDI messages that can be sent to the MT-32 via the basic UART mode?

They are uploaded through SysEx messages, which absolutely does not require intelligent mode. KQV, for example, uploads custom sounds but uses UART mode to do it.
One reason to use Soft- or Hard-MPU with the MT32 is the ability to leave a gap between these SysEx messages, which can help alleviate errors and lockups of the MT32 on faster systems. The original MT32 needs a little time to process these messages before the next one is sent.


Right. I knew what SysEx messages are (in a vague sense) and I knew about the gen 1 vs. gen 2 MT-32 buffer overflow issues, the need for SysEx delay on faster systems, etc. In fact, I just swapped out the Gen 1 guts of a rack-mounted MT-32 for Gen 2 guts, specifically to avoid that problem. I just didn't know that SysEx messages could carry THAT kind of information. Since the MT-32 is a unique beast -- especially in how its voices are generated/processed, I thought that perhaps there was also a non-standard way of delivering the necessary information to the MT-32 when uploading new ones.

I'm imagining that the SysEx standard was made general enough that a more specialized device like the MT-32 can interpret the payload of the messages however it feels like, instead of only a certain pre-defined set of message types being available. (That's how I would do it, and have done it, when I've designed messaging systems.)

One thing I've wondered about in regards to the SysEx Delay feature of SoftMPU and HardMPU is this -- will certain games sound wrong with SysEx delay enabled? For instance, is it possible that some games emit those messages at precise times in order to have the various tracks of the music line up correctly in time? Or is the time at which they're supposed to be played always included in the SysEx messages when notes are emitted to a MIDI synth?

Even if that is the case, it seems like turning on the delay feature could cause a message not to get there in time if its specified note time is in the very near future -- something that would impact a game like Prince of Persia, for instance -- because of sound effects being outputted via the MT-32 as well as the music.

Thanks again!
User avatar
aquishix
Member
 
Posts: 159
Joined: 2018-3-10 @ 22:24
Location: Fort Worth, TX

Re: HardMPU, anyone?

Postby aquishix » 2018-6-30 @ 18:49

ab0tj wrote:
aquishix wrote:But the basic answer to your question is: The SC-55 does not support intelligent mode even if you have a true MPU-401 or equivalent feeding it, so there's no point in using it that way. Feed it any MIDI connection you feel like.

Well, being pedantic here, but the MIDI module (SC-55 or MT-32) neither care nor know if they're being used via intelligent mode or not. But I agree with the general premise that you're not really going to gain anything using an intelligent interface with a SC-55, because the combination doesn't really make any sense.


Btw, you were NOT being pedantic; I just had a misunderstanding and you corrected it. I really appreciate it. ;)
User avatar
aquishix
Member
 
Posts: 159
Joined: 2018-3-10 @ 22:24
Location: Fort Worth, TX

Re: HardMPU, anyone?

Postby ab0tj » 2018-6-30 @ 19:19

aquishix wrote:I just didn't know that SysEx messages could carry THAT kind of information. Since the MT-32 is a unique beast -- especially in how its voices are generated/processed, I thought that perhaps there was also a non-standard way of delivering the necessary information to the MT-32 when uploading new ones.

I'm imagining that the SysEx standard was made general enough that a more specialized device like the MT-32 can interpret the payload of the messages however it feels like, instead of only a certain pre-defined set of message types being available. (That's how I would do it, and have done it, when I've designed messaging systems.)

You're right on the money with that one. SysEx stands for "System Exclusive", as in, specific to the device in question. It is a part of the MIDI standard but the hardware designer has free reign to define the content of the SysEx messages and what actions they trigger in the MIDI device. (Though I'm sure there's nuances to it I'm glossing over, that is the general idea.) A SC-55 will ignore SysEx messages meant for the MT32, because they have no meaning to the SC-55.

aquishix wrote:One thing I've wondered about in regards to the SysEx Delay feature of SoftMPU and HardMPU is this -- will certain games sound wrong with SysEx delay enabled? For instance, is it possible that some games emit those messages at precise times in order to have the various tracks of the music line up correctly in time? Or is the time at which they're supposed to be played always included in the SysEx messages when notes are emitted to a MIDI synth?

Even if that is the case, it seems like turning on the delay feature could cause a message not to get there in time if its specified note time is in the very near future -- something that would impact a game like Prince of Persia, for instance -- because of sound effects being outputted via the MT-32 as well as the music.


Yes this can be an issue, but I haven't yet encountered any situations where it has thrown a whole sound track off course. Rather it manifests itself as notes being cut off at the beginning of a song. X-Wing illustrates this pretty well, SysEx delay is necessary on faster machines, and the game send a lot of SyxEx when it starts up. The added delays cause the first few notes to be cut off because they are buffered during the delays and then sent all at once after the SysEx messages finish. Note that this isn't an issue with SoftMPU because it effectively locks up the computer during the delays which forces the game to not get ahead of the MIDI stream. However, I have noticed that causes the opening animations to get "choppy" which is not a problem with the HardMPU. Pick your poison, I guess :D
ab0tj
Member
 
Posts: 193
Joined: 2015-7-16 @ 16:38
Location: Colorado, USA

Re: HardMPU, anyone?

Postby jbenam » 2018-9-16 @ 08:41

Hi ab0tj, do you still have a bare board available? I'd like to build one of these myself, if possible. Thanks! :happy:
jbenam
Newbie
 
Posts: 12
Joined: 2016-4-08 @ 14:07

Re: HardMPU, anyone?

Postby hard1k » 2018-9-16 @ 08:55

And I would be interested in an assembled one.
Please have a look at my wishlist (hosted at Amibay)
User avatar
hard1k
Oldbie
 
Posts: 601
Joined: 2014-4-22 @ 11:28
Location: Buenos Aires, Argentina

Re: HardMPU, anyone?

Postby jbenam » 2018-9-17 @ 15:55

@ab0tj

Looks like I have some slight trouble in replying to your PM since I haven't got enough posts to be able to send out PMs yet. Would you mind sending me your email address thru PM so that I can reply using that instead?

Thanks again :happy:
jbenam
Newbie
 
Posts: 12
Joined: 2016-4-08 @ 14:07

Re: HardMPU, anyone?

Postby ZarK-eh » 2018-10-14 @ 09:59

jbenam wrote:@ab0tj

Looks like I have some slight trouble in replying to your PM since I haven't got enough posts to be able to send out PMs yet. Would you mind sending me your email address thru PM so that I can reply using that instead?

Thanks again :happy:



I to am having this problem, and have *just* joined and cannot PM anyone... :( Last week, I sawed a HardMPU on ebay and missed it and now is gone and can I ask to have some kits placed there? or msg me on ebay, zarky_poo I would be interested in two kits. Thank you! <3 all
ZarK-eh
Newbie
 
Posts: 1
Joined: 2018-10-14 @ 09:30
Location: Canada

Previous

Return to Sound

Who is online

Users browsing this forum: dionb and 3 guests