VOGONS

Common searches


Sound Driver Enhancement Hacks - General MIDI

Topic actions

Reply 20 of 91, by tikalat

User metadata
Rank Member
Rank
Member

Tried installing the shareware version. Booted game - title theme uses 'POWER' drum kit. Map1 uses 'STANDARD' drum kit.

We've got a GS hit!

edit:
Percussion = sticks
Chorus @ 10, 127
Reverb @ 50, 100, 127

Reply 21 of 91, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie

tikalat, thanks for investing the time in making that list and testing/fixing stuff. It's some really useful and important work.

For anyone reading this thread and not having any idea about what it means in practice I've edited my previous post with a demonstration.

Reply 22 of 91, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie

Another annoying question. Roland and Yamaha synths generally default to GS/TG300B mode, respectively. For games that only use GM, like (I believe...) Doom and Descent, would resetting them to GM make it sound "more correct"? The GS spec is theoretically supposed to be backwards compatible to GM to some extent, but they still bothered to include a dedicated GM mode in their products. Was that just to ease composers' lives when composing material targeted at the GM spec or would there be actual playback differences?

If this were true, I guess this would mean problems for first gen SC-55 units without the GM logo. I think those just treated a GM reset as GS and therefore lacked the GM mode.

Reply 23 of 91, by tikalat

User metadata
Rank Member
Rank
Member

I remember Cloudschatze mentioning that Roland (SC-55, SC-88_) units in GM mode ignore cc#0 + NRPN messages. Otherwise they still take reverb, drum kits, etc.

So there would be minor differences in playback of sfx in GM mode (ex. Might and Magic Xeen games = BANK).

I have to get my headphones to listen the S-YXG50 softsynth recording but from the text description... using GM1 mode disables the extra percussion + drum kits also...? Curious. Wonder if it does the same to reverb + chorus + other gs controllers.

For a game like Doom, that could mean zero reverb. It was composed on a SC-55 which has default reverb cc#91 = 40 on a Roland device. If a GM on other units disable the reverb, you've got a difference. GM spec says it's up to the device (???) whether to accept the 'extended' features so I guess it's techncially correct. Just not want you want maybe.

If the above is all true though, I may have to find a way to correct that. By either removing the _forced_ GM resets on games. Or try finding a way to make it GS reset. Or ideally send GM, then GS reset. Which takes code and space and hacking - so-so doable imo.

The rest about GM vs GS, I wouldn't know.

Reply 24 of 91, by tikalat

User metadata
Rank Member
Rank
Member

Playback using Roland Virtual Sound Canvas (VSC).
- One uses full GS capabilities
- One simulates pure GM playback

========================
========================

S-YXG50 - I'm not hearing any sticks?? I hear reverb + chorus though. What is that GM reset doing? 🤣 😮

Attachments

  • Filename
    e1m1 vsc (full gs).ogg
    File size
    2.51 MiB
    Downloads
    305 downloads
    File comment
    Shadow Warrior - GS playback (reverb, chorus, sticks)
    File license
    Fair use/fair dealing exception
  • Filename
    e1m1 vsc (pure gm).ogg
    File size
    2.59 MiB
    Downloads
    309 downloads
    File comment
    Shadow Warrior - pure GM playback (no reverb, chorus, sticks)
    File license
    Fair use/fair dealing exception

Reply 25 of 91, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie

Just listen closely to both the youtube link and my recording, the difference should be quite apparent...

The recording was made directly after starting up the PC. I don't know why this softsynth seems to start up in GM mode. DB60XG (essentially the exact same thing just in hardware) starts up in TG300B mode.

Also just for a bit of trivia and additional "input", here's my topic from when I first experienced those issues: Missing instruments with a SC-55ST

Now everything seems to come together finally. Build engine games were really the worst, too bad I didn't make any recordings of those totally messed up songs where everything was replaced with whistles etc.

Reply 26 of 91, by tikalat

User metadata
Rank Member
Rank
Member

Turned up the volume 3x. Yeah, okay. Read the thread. That's one unholy bug. Maybe they didn't have many non-Roland GM / GS clone devices to play around with back then to notice something like this? *shrug*

But... if Descent uses any special percussion or drum kits, you might have a problem with that killer GM-reset. v_v

Someone I talked to actually wants a NR reset for all games. Manually send GM to play the vanilla track. Later a GS one to play the enhanced flavor (SC default reverb + misc goodies).

What a pain to sort out. There's no way to win. 😵

Reply 27 of 91, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie

The thread was mainly about the SC-55ST though. But the symptoms on Roland and Yamaha differ, yeah. I'm sure all of that is somehow related to GS, as I never had any replaced instrument in games besides Build.

An alternative to hacking those games could be to find an application that allows to send the necessary resets manually before playing the game. This won't fix the MIDI quirk where reverb/chorus settings seem to be carried over from song to song but it would be better than nothing. This has already been discussed on this forum as well.

The two applications that can do this and that I know of are GSPLAY and MFPLAY. GSPLAY is essentially the old version, you can find the download in the last thread I linked. You just need to run it as GSPLAY GM or GSPLAY GS, depending on the reset. I found that it even works under NTVDM, even though it's not supposed to. Didn't have much luck with the GS reset though.

MFPLAY is the updated version. I'm not sure if it still includes the possibility of just setting a reset without playing any MIDI files.

Or having some dummy MIDI file that includes the necessary sysex and nothing more...

Reply 28 of 91, by Spikey

User metadata
Rank Oldbie
Rank
Oldbie

OK, I just went through Shadow Warrior. FYI distortion, Mirsoft.info is a great place for easy to find 'quick and dirty' (usually extracted raw) MIDI downloads.

It looks like according to the composer, no GS is used. Of course the game uses GS drumkits! Although I think the GM standard is loosely considered to include most of the GS drumkits as a GM standard, or quickly was in the early 90's because the SC-55 was the industry standard.

But it looks like GM, with some GS drums.

Reply 29 of 91, by gerwin

User metadata
Rank l33t
Rank
l33t

Are you aware that only the Shadow Warrior Demo/Shareware had Midi Music, the Retail version had CD music. The Demo did not have all the maps and therefor it has only a few midi tracks.

--> ISA Soundcard Overview // Doom MBF 2.04 // SetMul

Reply 30 of 91, by tikalat

User metadata
Rank Member
Rank
Member

Although I think the GM standard is loosely considered to include most of the GS drumkits as a GM standard, or quickly was in the early 90's because the SC-55 was the industry standard.

But it looks like GM, with some GS drums.

Thanks for checking it out. Didn't know that one. ;)

No E1M1 sticks percussion coming out anywhere? With the Yamaha MU2000EX?

Are you aware that only the Shadow Warrior Demo/Shareware had Midi Music, the Retail version had CD music. The Demo did not have all the maps and therefor it has only a few midi tracks.

What!!? *facepalm*

Still counts I guess. What a letdown.

edit:

An alternative to hacking those games could be to find an application that allows to send the necessary resets manually before playing the game. This won't fix the MIDI quirk where reverb/chorus settings seem to be carried over from song to song but it would be better than nothing. This has already been discussed on this forum as well.

I'll leave them alone _unless_ really needed. Then it'll be a NR reset - you choose which you want.

Thanks - I'll remember to check for reverb, chorus errors also.

========================================
========================================

If you want to know how your sound device responds in GM / GS modes, please run the MIDI test below.

Instructions:
1) Send GM reset. Then run test.
2) Send GS reset. Then run test.
3) No reset. Run test again for incorrect playback.

Correct results:
1) SYSEX = silent telephone (else gm1 reset / master volume failed)
2) PERC = jingle bell
3) RVB = organ 1 reverb
4) CRS = ocarina chorus
5) DRUM = laughing (SFX drum kit)
6) DRUM CTF = screaming (SFX drum kit)
7) CM64 = birds (CM-64 drum kit)
8) BANK = footsteps (cc#0 5)
9) BANK CTF = organ + ocarina on test 3

Device results:
- Microsoft GS (softsynth) ____ [SYSEX][PERC][RVB][CRS][DRUM][DRUM CTF][CM64][BANK][BANK CTF]
- Roland SC-88 (synth) ____ [SYSEX][PERC][RVB][CRS][DRUM][DRUM CTF][CM64][BANK][BANK CTF]
- Roland SC-88 (55-map) (synth) ____ [SYSEX][PERC][RVB][CRS][DRUM][DRUM CTF][CM64][BANK][BANK CTF]
- Roland VSC Player (softsynth) ____ [SYSEX][PERC][RVB][CRS][DRUM][DRUM CTF][CM64][BANK][BANK CTF]
- Roland VSC VST (softsynth) ____ [SYSEX][PERC][RVB][CRS][DRUM][DRUM CTF][CM64][BANK][BANK CTF]
- Terratec EWS64 (SAM9407 synth) ____ [SYSEX][PERC][RVB][CRS][DRUM][DRUM CTF][CM64][BANK][BANK CTF]
- Yamaha S-YXG50 (softsynth) ____ [SYSEX][PERC][RVB][CRS][DRUM][DRUM CTF][CM64][BANK][BANK CTF]
- Yamaha TG300 (synth) ____ [SYSEX][PERC][RVB][CRS][DRUM][DRUM CTF][CM64][BANK][BANK CTF]
- Yamaha XR385 (synth) ____ [SYSEX][PERC][RVB][CRS][DRUM][DRUM CTF][CM64][BANK][BANK CTF]

Legend:
- RED = fails both GM + GS modes
- YELLOW = fails GM mode

- BLUE = audio recording available
- WHITE = no errors detected

Attachments

  • Filename
    reset sysex.7z
    File size
    227 Bytes
    Downloads
    229 downloads
    File comment
    GM / GS reset sysex
    File license
    Fair use/fair dealing exception
  • Filename
    test.7z
    File size
    299 Bytes
    Downloads
    230 downloads
    File comment
    MIDI tester
    File license
    Fair use/fair dealing exception
Last edited by tikalat on 2013-06-08, 23:25. Edited 10 times in total.

Reply 31 of 91, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie
Spikey wrote:

OK, I just went through Shadow Warrior. FYI distortion, Mirsoft.info is a great place for easy to find 'quick and dirty' (usually extracted raw) MIDI downloads.

I know this site. I don't fully trust such rips when it comes to making proper comparisons because I've heard that with some games MIDI files will sound different than ingame ones in terms of effects etc. Descent is supposed to be a case of this.

gerwin wrote:

Are you aware that only the Shadow Warrior Demo/Shareware had Midi Music, the Retail version had CD music. The Demo did not have all the maps and therefor it has only a few midi tracks.

No, I was not. Thanks for mentioning this.

Reply 32 of 91, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie

Order was: GM reset -> playback -> GS reset -> playback -> GM reset -> playback.

Tested on EWS64 (SAM9407 synth) with GSSBK320.94B soundfont. DB60XG recording may follow.

Also what did you mean by "bad playback"? The fact that the creaking door sound only appears if you play the file twice? Then the GS playback would be bad already. Your reset files don't have any effect on this synth.

Edit:
I figured out that it makes a big difference whether I'm playing stuff from the WMP (in 98SE) or TMIDI Player. Well I knew what I was getting into when testing this on such a complex card such as the EWS64... fun 😀

Attachments

  • Filename
    miditest_ews64.ogg
    File size
    1.72 MiB
    Downloads
    209 downloads
    File license
    Fair use/fair dealing exception

Reply 33 of 91, by tikalat

User metadata
Rank Member
Rank
Member

Order was: GM reset -> playback -> GS reset -> playback -> GM reset -> playback.

Tested on EWS64 (SAM9407 synth) with GSSBK320.94B soundfont. DB60XG recording may follow.

1) GM reset -> playback = Passed everything. No failure.

2) GS reset -> playback = Unsure. PERC = drum kit not reset. So Jingle Bell (STANDARD) became Door (CM-64). All else okay.

3) GM reset -> playback = same as (2)

Also what did you mean by "bad playback"? The fact that the creaking door sound only appears if you play the file twice? Then the GS playback would be bad already. For some reason resets don't seem to help here, only restarting the PC... is this intended?

Here's my VSC VST recording:
0) Power on VSC VST
1) Manual GM reset -> playback
2) Manual GS reset -> playback
3) No reset -> playback. All sorts of wrong instruments (*intentional*) - instrument bank + drum kit not reset.

Intentionally wrote the MIDI file that way to demonstrate 'incorrect playback'.

If the sysex resets don't work on real hw, don't know why. Maybe there's more to a proper reset than I've read. Shouldn't need to reset PC.

Attachments

  • Filename
    roland_vsc_test.ogg
    File size
    1.68 MiB
    Downloads
    204 downloads
    File comment
    Roland VSC VST MIDI test
    File license
    Fair use/fair dealing exception

Reply 34 of 91, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie

Could you download TMIDI Player (Readme) and experiment a bit with that as far as your resets etc. go? Drag and drop will work.

Also here are two new recordings. All played through TMIDI Player and adhering to the order you suggested. It's quite puzzling why this player handles the resets so differently. To sum it up (in respect to both synths):

WMP: your resets don't do anything. Playing a XG file and then a GM file -> GM file is messed up as expected. Only way to reset synth - playing some other song with a GM reset included or restarting PC.
TMIDI Player: your resets work (-> recordings), but the EWS64 synth is even reset when not sending one manually. E.g. playing an XG file and then a GM file -> GM file still sounds normally. The XR385 does not seem to "auto-reset" in that fashion here though.

The difference that I noticed between your reset files and my "GM reset song" is that yours show "SMF Format0" in TMIDI, while mine shows "SMF Format1".

Everything tested under Windows 98 SE.

Attachments

  • Filename
    miditest_ews64_2.ogg
    File size
    1.7 MiB
    Downloads
    213 downloads
    File license
    Fair use/fair dealing exception
  • Filename
    miditest_XR385.ogg
    File size
    1.8 MiB
    Downloads
    205 downloads
    File license
    Fair use/fair dealing exception

Reply 35 of 91, by tikalat

User metadata
Rank Member
Rank
Member

Thanks for recordings. Sysex + TMIDI okay here. Will research some more.

EDIT:
New sysex resets. Works in Win98 + WMP.
- <send sysex reset>
- <send B0 7B 00> = notes off

Will listen to recordings and add results.

EDIT2:
Done. Thanks again. You use good equipment.

Reply 36 of 91, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie

Good work. Note that the EWS64 takes its samples from onboard RAM. I had a Roland "rip-off" soundfont loaded. From that perspective it's quite interesting that it supports the GS features better than Roland's own VSC...

More recordings to follow eventually 😀

Reply 37 of 91, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie

Some more recordings.

Attachments

  • Filename
    miditest s-yxg50.ogg
    File size
    1.86 MiB
    Downloads
    206 downloads
    File license
    Fair use/fair dealing exception
  • Filename
    miditest sc-88.ogg
    File size
    1.87 MiB
    Downloads
    223 downloads
    File license
    Fair use/fair dealing exception
  • Filename
    miditest sc-88 55-map.ogg
    File size
    1.78 MiB
    Downloads
    221 downloads
    File license
    Fair use/fair dealing exception

Reply 39 of 91, by Stefan_L

User metadata
Rank Member
Rank
Member

Here are two recordings from Yamaha TG300.
It has two General MIDI modes, one is called "GM-A" and the other is called "GM-B"... it is the GM-B that is more GS compatible.

Attachments

  • Filename
    tg300a_miditest.mp3
    File size
    677.04 KiB
    Downloads
    212 downloads
    File comment
    Recording in GM-A mode
    File license
    Fair use/fair dealing exception
  • Filename
    tg300b_miditest.mp3
    File size
    700.51 KiB
    Downloads
    211 downloads
    File comment
    Recording in GM-B mode
    File license
    Fair use/fair dealing exception