Page 1 of 5

MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 1:00 pm
by MusicallyInspired
Here's a quote from NewRisingSun on the Quest Studios forums regarding MT-32 errors:
"Buffer Overflow" means the data arrives too fast for the MT-32 to handle. As stated previously, second generation units don't have this problem, as no data can arrive too fast for these models to handle. Reasons why this problem can occur:

the game programmer just didn't care
the game programmer only tested with a second/third generation model
the game programmer did insert the necessary delays, but timed them by counting CPU cycles.
Only in the last case will slowing down your system/DOSBox do any good.

"Checksum Error" is distinct from the "Buffer Overflow". It means that some data got lost before it arrived at the MT-32. This can happen because:

the game programmer counts CPU cycles to wait for the next available MIDI cycle (signaled by the MPU-401's "Data Receive Ready" bit) before sending a data byte. On fast computers, it finishes counting before the next MIDI cycle occurs, and so the game just gives up on sending that particular byte, thus losing it. Obviously, this is a different speed issue than the one causing the "Buffer Overflow".
the sound card/laptop/USB-to-MIDI's drivers don't handle large amounts of MIDI data properly and lose data. Update drivers.
the cables used are broken or not connected properly. Check connections and replace cables.
Only in the first case will slowing down your system/DOSBox do any good. Since you've said it doesn't, check the other reasons.
Note: Copied from the Real MT32, not being 'programmed' - using default sounds thread.

-Collector

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 2:22 pm
by laffer
Thanks, yeah I'm enjoying this a lot! :D

I really love how the Police Quest 2 opening song sounds on the MT32, I always hated the adlib version of that one.

Had a little 'doh' moment that made me jump a little btw - suddenly nothing happened, the MT32 didn't seem to be receiving anything and didn't play anything either.
Turns out I'd somehow opened two DOSBox windows, which was obviously the reason.

But at this point it seems almost too good to be true, after all this waiting and cable crap... so it scared me a little bit right away :p

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 2:47 pm
by Collector
Good to see that you got it sorted out. For the Sierra games that were optimized for MT-32 music it is the only way to hear those games. Those without just don't know what they are missing. The good news is that there has been progress on the Munt project. It looks like it is possible, maybe even probable that the emulation will achieve 100%. Give it more time, and there will be no excuse for anyone for playing these games without MT-32 music.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 3:39 pm
by laffer
Emulation would be ideal, most people (understandably) can't be bothered to start buying old hardware and cables and all of this stuff... you have to have quite a strong interest in these games to bother with all of that, probably.

Would be really cool if perfect MT32 sound could be easily made available to everyone.

But in the meantime, I'll have tons of fun with my MT32 here, the sound is so awesome in many of these old Sierra games :shock:

Even especially as not very long ago, a friend of a friend who happens to be a semi-professional musician sold me his old speakers and amplifier for a really good price, and the sound in these four speakers (and the subwoofer) is really damn nice.

Makes having the MT32 so damn worth it, compared to if I was still using the old little computer speakers I had before this.

I haven't experienced a single upgrade improving something as drastically as this since... probably back when I bought my first 3DFX card and saw Quake running in hardware mode for the first time.
This feels the like sound equivalent of that, somewhat.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 3:59 pm
by Collector
I have my sound routed through my stereo, which has great speakers. Games optimized for MT-32 sound fantastic. It is the main reason that I continue to use my old Audigy in my current workstation, even though it has onboard HD audio. It is also nice that I can still use decent SoundFonts for general MIDI instead of the crappy built-in Windows Microsoft GS synth. Horrible, horrible sound.

I am glad about the current and expected progress of Munt. Even though I don't need it, the physical MT-32 units will not last forever and the surviving working ones will only become more expensive, perhaps prohibitively so.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 4:04 pm
by laffer
Yeah. Do you know anything about the general life span of an MT32?
How long can one expect them to keep working?

Well, I guess it's impossible to say as who knows how much they've been used when you buy them used.

Maybe it's not such a waste that I ended up with 2 (think I wrote about that earlier in the thread, I was certain the first one I bought had been stolen, but just recently found it here)... I was thinking I'd sell one of them, but you do bring up a good point... what if the one I'm using now fails eventually... that would make me very sorry I sold my second one.

On the other hand though - I've never liked 'hoarding', when people buy several of the same games/old machines/whathaveyou only to collect them... driving the prices up for everyone else. Having two of these makes me feel a bit guilty of that, somehow.
I'll see what I do, haven't made up my mind about that yet.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 4:05 pm
by MusicallyInspired
Of course the real thing will always be better than the emulation, but I'm quite excited for MUNT's progress and to see that people will finally hear MT-32 games PROPERLY! Embedded emulation support for 100% MT-32 compatibility and reproduction in DOSBox and ScummVM would be fantastic. Although, I understand that DOSBox has no intention of adding MUNT to its source for legal reasons. Though, there's always other custom source ports out there.

EDIT: I'm not sure of the lifespan personally, though I'm sure there are people out there who maintain their MT-32 to continuously work in perfect order, even to the point of replacing parts manually on circuit boards! But as long as it's well-maintained it should last a good long time. They don't make them like they used to, as the old saying goes.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 4:07 pm
by laffer
It's a shame we're stuck with legal issues when it comes to such old hardware.

Same thing with Amiga emulation and the kickstart roms required, they're still holding onto the copyright making emulation much more of a hassle than it (imo) should've been.

EDIT - MusicallyInspired, that's nice to hear. Should something happen to mine though - I would not be able to open it up and try to fix it as I'm not very technically inclined at all.... so I'll just have to hope it stays in perfect working order a long time.
You do have a point about old hardware... my C64 (oldest breadbin model) still works perfectly after all those years.
Admittedly I mostly use it to listen to SID music these days, such as game loading tunes.

EDIT 2 - Collector and MusicallyInspired - do you have any absolute favourite MT32 tracks in Sierra games? I'm currently trying out a lot of different games here but it would be cool to hear some of the very best ones right away.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 4:39 pm
by Collector
I would imagine that the Munt driver will be updated to install at least on current Windows, including Win7 64. This would make native support in DOSBox irrelevant. There also seems to enough demand for it on Mac that I suspect that someone will port the driver to Mac, too.

Taking care of an MT-32 may not be enough. Electronics do wear. Capacitors age, resisters eventually burn up. Traces on the circuit boards may fry. Some things can be replaced, others cannot or are not worth it. It is why I never leave mine powered up. I usually only use it for the games that it make a big difference or do not have acceptable GM, just to save on the wear and tear.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 4:45 pm
by laffer
Hmmm, while that does sound reasonable, personally I don't think I'll start thinking along the lines of trying to avoid using it whenever possible, that would probably ruin a lot of the fun for me and make it all seem a bit stressful instead.

But always turning it off whenever it's not in use... that's a great idea, I'll definitely do that.

Re: Buffer Overflow and Checksum Error on MT-32

Posted: Fri Apr 01, 2011 4:55 pm
by Collector
I thought that this would be good to sticky, but was posted late enough in the thread so as to not be noticeable. Any general MT-32 thoughts or questions can be added here.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 5:05 pm
by Collector
laffer wrote:Hmmm, while that does sound reasonable, personally I don't think I'll start thinking along the lines of trying to avoid using it whenever possible, that would probably ruin a lot of the fun for me and make it all seem a bit stressful instead.

But always turning it off whenever it's not in use... that's a great idea, I'll definitely do that.
I don't "refrain" from using it, I just don't use it when it it makes no difference to me.

Just noticed this:
laffer wrote:EDIT 2 - Collector and MusicallyInspired - do you have any absolute favourite MT32 tracks in Sierra games? I'm currently trying out a lot of different games here but it would be cool to hear some of the very best ones right away.
I love the Conquest games' MT-32 tracks, TCB, too. The Magic Meadow from Hero's Quest is great, as well. There are many that are wonderful, but off the top of my head, these are what I thought of first.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 5:11 pm
by laffer
Cool, I actually haven't tried any of the QfG games yet... off to find the disc here and try it out.

I'll have to find my USB floppy drive before I can try the Conquest games though, so I'll wait until tomorrow doing that... I should back up all my floppies and store them on a DVD or something anyway, I'll probably end up doing that now that I'm using the floppies again for the first time in ages, anyway.
Just hoping they still work :shock:

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 5:22 pm
by MusicallyInspired
Great idea. I hope this is helpful to some people.

Re: MT-32 Buffer Overflow and Checksum Errors

Posted: Fri Apr 01, 2011 5:25 pm
by laffer
just realized I didn't mention my fav MT32 tune from a Sierra game so far, after having tried out quite a few here... (still haven't tried out QfG) - maybe because this was the first game I started up, but more likely because I never could stand the adlib version of the tune - my favourite one so far is still the one I already mentioned earlier in this thread - the opening tune in Police Quest 2.
Just an amazing difference, from sounding like crap to near CD quality (well, really good in any case).