VOGONS


First post, by Rincewind42

User metadata
Rank Member
Rank
Member

Finally, my grand General MIDI comparison project is completed! It only took a bit more than a month!

I'm putting a real Roland SC-55 and Yamaha MU80 to the test, along with their softsynth recreations. I've recorded 46 tunes from DOS games on 7 different MIDI modules, resulting in 322 tracks in total! That's a more than a 2-hour long material per MIDI module, so at the very least now you have some nice background music to listen to 😎

All MIDI files and recordings in FLAC and MP3 format are downloadable from the Internet Archive (links in the blog post).

So what do you think, which GM module will win the first prize? (hint: it's not the SC-55)

https://blog.johnnovak.net/2023/03/05/grand-m … -midi-showdown/

DOS: Soyo SY-5TF, MMX 200, 128MB, S3 Virge DX, ESS 1868F, AWE32, QWave, S2, McFly, SC-55, MU80, MP32L
Win98: Gigabyte K8VM800M, Athlon64 3200+, 512MB, Matrox G400, SB Live
WinXP: Gigabyte P31-DS3L, C2D 2.33 GHz, 2GB, GT 430, Audigy 4

Reply 1 of 9, by Shponglefan

User metadata
Rank l33t
Rank
l33t
Rincewind42 wrote on 2023-03-05, 23:39:

(hint: it's not the SC-55)

Blasphemy!

Seriously though, great work! Always love MIDI module comparisons, even if the best module didn't actually win. 😉

Pentium 4 Multi-OS Build
486 DX4-100 with 6 sound cards
486 DX-33 with 5 sound cards

Reply 2 of 9, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

Hi,
Congratulations, it's a very nice article and playlist!
I have only one critical observation related to your article. The relevant part is this one:

Doom (1993) Roland SC-88Pro
... One notable shortcoming of the SCVA is that it doesn’t seem to support proper cymbal chokes. You can hear that in the intro; the cymbal hits at the start of the bars don’t ring out but stop abruptly on the SC-55 rendition. Yes, that’s absolutely how it’s supposed to sound. (Some dudes in some forum theorised that was a bug in the original SC-55, and the SCVA “fixed it”. Because cymbals “don’t do that in real life”… You guys are killing me! 🤣)

I strongly feel that you misunderstood the arguments of the 'Some dudes' 😀 .
The interesting part in Doom's E1M1 is the 2nd C#4(49)/A4(57) sequence with a velocity value of 23 on the drum channel. It can be argued that a cymbal sound should not be interrupted abruptly by ANOTHER INDEPENDENT cymbal sound on the same channel. And it can be considered even a bug since this way you have no chance to make 2 independent cymbal sounds with different velocities on the SC-55.
So you are right in saying 'that’s absolutely how it’s supposed to sound' but maybe some dudes are also right that the authors here used a non-natural quirky behavior that was fixed not only in SC-VA but in all later Sound Canvas units (in their native modes). No one said that cymbals could not sound this (cut/interrupted) way in real life.
Here is a demonstration video about this behavior that presents SC-VA vs. MS GS Soft synth (since MS GS Soft synth reflects the SC-55 behavior correctly).
https://www.youtube.com/watch?v=ri9Vi69U_EM

Bye.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 3 of 9, by Rincewind42

User metadata
Rank Member
Rank
Member
Falcosoft wrote on 2023-03-06, 01:24:
Hi, Congratulations, it's a very nice article and playlist! I have only one critical observation related to your article. The re […]
Show full quote

Hi,
Congratulations, it's a very nice article and playlist!
I have only one critical observation related to your article. The relevant part is this one:

Doom (1993) Roland SC-88Pro
... One notable shortcoming of the SCVA is that it doesn’t seem to support proper cymbal chokes. You can hear that in the intro; the cymbal hits at the start of the bars don’t ring out but stop abruptly on the SC-55 rendition. Yes, that’s absolutely how it’s supposed to sound. (Some dudes in some forum theorised that was a bug in the original SC-55, and the SCVA “fixed it”. Because cymbals “don’t do that in real life”… You guys are killing me! 🤣)

I strongly feel that you misunderstood the arguments of the 'Some dudes' 😀 .
The interesting part in Doom's E1M1 is the 2nd C#4(49)/A4(57) sequence with a velocity value of 23 on the drum channel. It can be argued that a cymbal sound should not be interrupted abruptly by ANOTHER INDEPENDENT cymbal sound on the same channel. And it can be considered even a bug since this way you have no chance to make 2 independent cymbal sounds with different velocities on the SC-55.
So you are right in saying 'that’s absolutely how it’s supposed to sound' but maybe some dudes are also right that the authors here used a non-natural quirky behavior that was fixed not only in SC-VA but in all later Sound Canvas units (in their native modes). No one said that cymbals could not sound this (cut/interrupted) way in real life.
Here is a demonstration video about this behavior that presents SC-VA vs. MS GS Soft synth (since MS GS Soft synth reflects the SC-55 behavior correctly).
https://www.youtube.com/watch?v=ri9Vi69U_EM

Bye.

Haha, it's all good 😀 It might have been a bug of the original module, but I'm 100% certain the composer exploited that bug then to achieve the cymbal choke effect that's prevalent in metal. And that is a very metal track! So we're kinda both right 😀 (or maybe at Roland some other dudes were also metal fans and they were like "man, we gotta add support for cymbals chokes SOMEHOW" 😀)

Btw, I haven't inspected the MIDI data myself, so that's some interesting info (well, I should have, it would've been pretty easy). I kinda assumed there was another note that played the role of the choke, and they removed support for that later. That how it usually works in modern drum sample libraries, and it works similarly for the open/closed hi-hat stuff.

DOS: Soyo SY-5TF, MMX 200, 128MB, S3 Virge DX, ESS 1868F, AWE32, QWave, S2, McFly, SC-55, MU80, MP32L
Win98: Gigabyte K8VM800M, Athlon64 3200+, 512MB, Matrox G400, SB Live
WinXP: Gigabyte P31-DS3L, C2D 2.33 GHz, 2GB, GT 430, Audigy 4

Reply 4 of 9, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Rincewind42 wrote on 2023-03-06, 03:11:

Haha, it's all good 😀 It might have been a bug of the original module, but I'm 100% certain the composer exploited that bug then to achieve the cymbal choke effect that's prevalent in metal. And that is a very metal track! So we're kinda both right 😀 (or maybe at Roland some other dudes were also metal fans and they were like "man, we gotta add support for cymbals chokes SOMEHOW" 😀)

Btw, I haven't inspected the MIDI data myself, so that's some interesting info (well, I should have, it would've been pretty easy). I kinda assumed there was another note that played the role of the choke, and they removed support for that later. That how it usually works in modern drum sample libraries, and it works similarly for the open/closed hi-hat stuff.

In case of SC-55 a later Note On message with lower velocity value also changes the velocity value of earlier Note On messages when using the same instrument on the drum channel. This is the feature that was removed in later units.
Some kind of workaround for such an effect is needed on all synths since typically Note Off messages has no effect on drum sounds.
That "SOMEHOW" turned out to be very SC-55 specific in case of Doom.
I have just made a simple test Midi file showing how it could have been implemented in a more general way (using only channel volume messages that are supported the same way on all synths).

Filename
Drum_Metal_Cymbal.zip
File size
342 Bytes
Downloads
34 downloads
File license
Public domain

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 5 of 9, by Rincewind42

User metadata
Rank Member
Rank
Member
Falcosoft wrote on 2023-03-06, 03:57:

In case of SC-55 a later Note On message with lower velocity value also changes the velocity value of earlier Note On messages when using the same instrument on the drum channel. This is the feature that was removed in later units.

That's interesting. The interpretation of multiple successive Note On messages is left open by the MIDI standard, so interpreting it like that is actually valid. It's basically a "legato/monophonic playback + retrigger" interpretation, but on the drum channel only.

Falcosoft wrote on 2023-03-06, 03:57:

Some kind of workaround for such an effect is needed on all synths since typically Note Off messages has no effect on drum sounds.

Yes, and some electronic drum kits don't even bother sending Note Off messages, which violates the standard and leads to all sorts of problems, depending on the sequencer / sound module or plugin used.

Falcosoft wrote on 2023-03-06, 03:57:

That "SOMEHOW" turned out to be very SC-55 specific in case of Doom.
I have just made a simple test Midi file showing how it could have been implemented in a more general way (using only channel volume messages that are supported the same way on all synths).
Drum_Metal_Cymbal.zip

That's cool, but as I said a typical implementation employed by many drum samplers (non General MIDI, so completely custom mappings) is to map the normal cymbal sound to one note, then the choke sound to another one. So you'll get two trigger notes in your drum map for each individual cymbal: one for the normal cymbal hit, and another one for choking *that* cymbal, and only that. Then the sound module needs to implement some special casing for cymbals only so it can mute each active cymbal sound individually when receiving the cymbal-specific choke notes, and optionally also quickly crossfade the actively sounding cymbal sample into another short "choke" sample.

That's how it's typically implemented on good drum modules; all cymbals must have their own voice channel (and of course every single drum its own voice channel too, so they can ring out properly, can be muted individually, etc.) The same deal for the open/closed hi-hat sounds: you open the hi-hat pedal, hit the hi-hat with the stick which then rings out, then close the pedal *without* hitting the hi-hat with the stick again—this must result in a "choke hihat" sound because now the pedal is closed! Better electronic drumkits can be programmed to send different MIDI notes for all these different choke scenarios which you can then map accordingly in your drum sampler.

Source: I've programmed a few albums' worth of metal drum tracks in MIDI sequencers 😎🤘 Can't be bothered to look up the specific details for Superior Drummer that I personally used, but here's a quick random example from https://ask.video/forums/audio/thread/13100-h … in-logic-pro-x-:

AFACT, cymbal chokes in the Logic Drum Kit Designer kits are assigned to these keys: […]
Show full quote

AFACT, cymbal chokes in the Logic Drum Kit Designer kits are assigned to these keys:

- for the crash cymbal on C#2 the choke is on E0
- for the crash cymbal on A2 the choke is on F0

Both of the choke notes are short crash sounds that work best as chokes at low MIDI velocities. This seems to be the case in both Drummer's GM map and its specific V-Drum map.

Yes, and it's fairly typical to put all these "auxilliary utility notes" in the zero octave range, along with various keyswitches, etc.

DOS: Soyo SY-5TF, MMX 200, 128MB, S3 Virge DX, ESS 1868F, AWE32, QWave, S2, McFly, SC-55, MU80, MP32L
Win98: Gigabyte K8VM800M, Athlon64 3200+, 512MB, Matrox G400, SB Live
WinXP: Gigabyte P31-DS3L, C2D 2.33 GHz, 2GB, GT 430, Audigy 4

Reply 6 of 9, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t

Nice work with the recordings and analysis! Very detailed stuff. That said, about this:

Stonekeep (1995) Yamaha MU80

I prefer the deeper and darker sound of the MU80 version, but it’s not a night and day difference. This is one of the soundtracks that sounds good on any module.

I respectfully disagree. There are tracks that use special sounds like the "heartbeat" effect which doesn't feel quite right on non-Roland hardware (it gets interpreted as a drum sound). For example, listen to the Ruins of Stonekeep pt.2 on my SC-155. Around the 1:18 mark, you can hear the aforementioned "heartbeat" effect and get a better idea of what I mean.

On an unrelated note, are you aware that a few older games rely on the Capital Tone Fallback (CTF) ability of the original SC-55? There are also some odd polyphony issues with certain games like Settlers 2 which somehow sound worse on later Sound Canvas devices.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 7 of 9, by Rincewind42

User metadata
Rank Member
Rank
Member
Joseph_Joestar wrote on 2023-03-06, 07:17:

Nice work with the recordings and analysis! Very detailed stuff. That said, about this:

Thanks man 😀

Joseph_Joestar wrote on 2023-03-06, 07:17:

Stonekeep (1995) Yamaha MU80

I prefer the deeper and darker sound of the MU80 version, but it’s not a night and day difference. This is one of the soundtracks that sounds good on any module.

I respectfully disagree. There are tracks that use special sounds like the "heartbeat" effect which doesn't feel quite right on non-Roland hardware (it gets interpreted as a drum sound). For example, listen to the Ruins of Stonekeep pt.2 on my SC-155. Around the 1:18 mark, you can hear the aforementioned "heartbeat" effect and get a better idea of what I mean.

Oh yeah, feel free to disagree with anything I wrote! 😀 I haven't played most of these games from start to finish, my comments only relate to these specific recordings, nothing else and nothing more. Had I done a *really extensive study* by completing every single game, then this would have taken me a few more years I guess... 😁

I've done the A/B comparisons by listening to about 2-3 passes of the whole thing in total while switching between the different renderings. I might have very well missed a few details, so keep these comments coming, I might update the article later with this extra info! Doing a "proper" comparison would take weeks, and I'm a bit burnt out by this exercise already, to be honest.

Joseph_Joestar wrote on 2023-03-06, 07:17:

On an unrelated note, are you aware that a few older games rely on the Capital Tone Fallback (CTF) ability of the original SC-55? There are also some odd polyphony issues with certain games like Settlers 2 which somehow sound worse on later Sound Canvas devices.

Yeah I've read about it. I've had a brief look at the list of games that only sound correct with CTF, and as I'm not particularly interested in any of them (at least not with the General MIDI option), I don't care much. But I've been contemplating adding the CTF mechanism to DOSBox Staging as a config option, should be easily doable.

Speaking of Settlers 2, are you aware of any games that make good (or any) use of the XG support of the Yamaha?

DOS: Soyo SY-5TF, MMX 200, 128MB, S3 Virge DX, ESS 1868F, AWE32, QWave, S2, McFly, SC-55, MU80, MP32L
Win98: Gigabyte K8VM800M, Athlon64 3200+, 512MB, Matrox G400, SB Live
WinXP: Gigabyte P31-DS3L, C2D 2.33 GHz, 2GB, GT 430, Audigy 4

Reply 8 of 9, by Joseph_Joestar

User metadata
Rank l33t
Rank
l33t
Rincewind42 wrote on 2023-03-06, 08:49:

Speaking of Settlers 2, are you aware of any games that make good (or any) use of the XG support of the Yamaha?

Some later DOS games which use a newer version of the Miles Sound System (e.g. Settlers 2 and Heroes of Might and Magic 2) do have a specific option for the Yamaha WaveForce DB50-XG. However, I'm not sure if this ends up sounding any different than simply selecting "General MIDI".

file.php?id=100131&mode=view

From the Win9x era, I do know that Final Fantasy 7 has a special (enhanced) version of the soundtrack for XG devices:

file.php?id=150654&mode=view

It sounded very nice on my Yamaha YMF744 (DS-XG) card, and you can easily hear the differences when comparing it to something like a SC-55.

PC#1: Pentium MMX 166 / Soyo SY-5BT / S3 Trio64V+ / Voodoo1 / YMF719 / AWE64 Gold / SC-155
PC#2: AthlonXP 2100+ / ECS K7VTA3 / Voodoo3 / Audigy2 / Vortex2
PC#3: Athlon64 3400+ / Asus K8V-MX / 5900XT / Audigy2
PC#4: i5-3570K / MSI Z77A-G43 / GTX 970 / X-Fi

Reply 9 of 9, by Rincewind42

User metadata
Rank Member
Rank
Member
Joseph_Joestar wrote on 2023-03-06, 09:24:
Some later DOS games which use a newer version of the Miles Sound System (e.g. Settlers 2 and Heroes of Might and Magic 2) do ha […]
Show full quote
Rincewind42 wrote on 2023-03-06, 08:49:

Speaking of Settlers 2, are you aware of any games that make good (or any) use of the XG support of the Yamaha?

Some later DOS games which use a newer version of the Miles Sound System (e.g. Settlers 2 and Heroes of Might and Magic 2) do have a specific option for the Yamaha WaveForce DB50-XG. However, I'm not sure if this ends up sounding any different than simply selecting "General MIDI".

From the Win9x era, I do know that Final Fantasy 7 has a special (enhanced) version of the soundtrack for XG devices:

It sounded very nice on my Yamaha YMF744 (DS-XG) card, and you can easily hear the differences when comparing it to something like a SC-55.

Cheers, that's some good info about the Miles Sound System. Yes, I was aware of the FFVII soundtrack; I believe they also bundled the softsynth version with some of the releases.

DOS: Soyo SY-5TF, MMX 200, 128MB, S3 Virge DX, ESS 1868F, AWE32, QWave, S2, McFly, SC-55, MU80, MP32L
Win98: Gigabyte K8VM800M, Athlon64 3200+, 512MB, Matrox G400, SB Live
WinXP: Gigabyte P31-DS3L, C2D 2.33 GHz, 2GB, GT 430, Audigy 4