VOGONS


First post, by InbetweenDays

User metadata
Rank Newbie
Rank
Newbie

Hi all,

Since a fix for the CM-500 vibrato issue has just been posted, perhaps there'll be renewed interest in these modules and the below will help someone.

After getting my CM500 I went looking for sysex files and ended up making what I needed along with some batch files. I thought I'd post them here along with some other info all in one place for others. Aside from a bit of sysex and the batch files there's not really anything new here but hopefully it's helpful anyway. 😀

As Great Hierophant has posted here and also on the Nerdly Pleasures blog the CM-500 has 4 modes:
A) CM300+CM32L - this has a doubling up of parts (ie both GM and LA) so you need to disable whichever one you don't want
B) CM64 - mostly appropriate for DOS games supporting the MT-32 / CM-32L
C) CM300 - appropriate for GM DOS games
D) CM500 - GM on channels 1-10, LA on 11-16; useless for DOS games

Firstly if you've only just got your CM-500, don't do what I did and try to test out both General MIDI and MT-32 using Prince of Persia 2... otherwise you'll have problems and wonder if the LA synth isn't working right! That's because PoP2 uses MIDI channels 11-16, which need to be disabled if you're using mode 'B' (CM64). But if you try mode 'A' instead you get both GM and LA and it sounds, well, weird.

There are two options for how you can use the CM-500 for games: Switch modes as required, or use SysEx. There are pros and cons to each, so here's my take... Just my opinion of course, and I'm interested to hear others' thoughts & experiences especially with any other troublesome games.

Option One: Switching Modes
I'll be honest... this doesn't make much sense to me. The mode switch is at the back, making it hard to access, and the unit needs to be power cycled anytime you want to change it. Nevertheless this may be a more foolproof option most of the time. The exception is for games such as Prince of Persia 2, as noted above, and Kings Quest IV as noted by PhilsComputerLab in his excellent MT-32 tutorial video (2:29:50 mark). It also applies to other early Sierra games such as Leisure Suit Larry 3. (By viewing the MIDI data sent I've confirmed this for LSL3, Hero's Quest, Conquests of Camelot, and the SCI remake of KQ1.)

With these, you'll need to disable the CM-32P (PCM) parts using some sysex (see the link for Phil's version or it's also in the attached file below). Prince of Persia 2 sounds better with GM anyway so realistically you'd use that with mode 'C', but it's still worth mentioning.

Another one to mention is Privateer. I've not played it but apparently you also need to use mode 'C' for it with the CM-500. Seems a pretty obscure issue to me though so I don't know if any other games suffer from the same problem. (And of course if you're playing one of those rare games with CM-64 support you'll need to use mode 'B'.)

IMHO though, if you're not going to play Privateer, you're better off with:

Option Two: Use Mode 'A' and SysEx
For this just leave the CM-500 set to mode 'A' all the time. Then before playing a game, send some sysex to the unit to disable either the GM or LA parts. (The sysex sets the "receive" MIDI channel for each part to OFF).

This has the advantage of "set and forget" as far as the mode switch is concerned, but the disadvantage of needing to send some sysex to the unit at least once - and then each time you want to change from a game with GM music to MT-32/CM-32L or vice-versa. As mentioned above it also won't work for Privateer.

The CM-64/CM-32P issue is irrelevant with mode 'A' so you don't need to send sysex to disable those parts, but that's a trivial advantage since you still need to send some sysex anyway.

For me the disadvantage of needing sysex is pretty trivial - just run a batch file before each game (or start each game with a batch file that has a line to send the sysex at the beginning). I've made this easy with...

The Attached SysEx Files...
Instructions:

  1. Unzip the attached into C:\MIDI (if you use a different directory, edit the batch files accordingly)
  2. Add C:\MIDI to your PATH in AUTOEXEC.BAT
  3. Before a GM game, run SETGM
  4. Before a MT-32/CM-32L game, run SETLA
  5. Or if you're using the first option and switching between modes, for mode 'B' run NO32P

The batch files are set to use jwt27's excellent MIDICOM utility. I really like this one because it uses text files for the sysex, so they are easy to edit or view if you'd like to know exactly what's going on. Alternatively I've also included binary .syx files which you can use with the DUMP utility.

Further reading and a quick note about sysex...
For the curious... the first line of the sysex example given on page 9 of the English CM-500 manual is incorrect - see here. I'm glad I didn't spend too much time trying to figure it out! 😀
That page also contains some great pics and further reading for anyone wanting more detail.

Attachments

It don't mean a thing if it ain't got 5-pin DIN.
Roland addict and founding member of the Association Of Molex Haters

Reply 1 of 3, by SuperDeadite

User metadata
Rank Member
Rank
Member

Be aware there are multiple revisions of the CM500. Older units only have the GS logo and function like older 55s/300s. Later revisions have both GM and GS logos and have the updated roms. Mode C is officially GS Mode. For most DOS users, this doesn't matter so much. But they are different.

Also, Mode B is CM64 Simulation. CM500 does not contain any 32P hardware. It uses the CM300's instruments to replace the missing 32P.

Modules: CM-64, CM-500, SC-55MkII, SC-88 Pro, SY22, TG100, MU2000EX, PLG100-SG, PLG150-DR, PLG150-AN, SG01k, NS5R, GZ-50M, SN-U110-07, SN-U110-10, Pocket Studio 5, DreamBlaster S2, X2, McFly, E-Wave, QWave, CrystalBlaster C2, Yucatan FX, BeepBlaster

Reply 2 of 3, by InbetweenDays

User metadata
Rank Newbie
Rank
Newbie
SuperDeadite wrote on 2022-02-13, 03:10:

Also, Mode B is CM64 Simulation. CM500 does not contain any 32P hardware. It uses the CM300's instruments to replace the missing 32P.

Yep... but the same applies in terms of functionality and the CM32P parts playing on MIDI channels 11-16. Those parts need to be turned off for games like those I mentioned or it can sound terrible (PoP2 especially).

It don't mean a thing if it ain't got 5-pin DIN.
Roland addict and founding member of the Association Of Molex Haters

Reply 3 of 3, by keropi

User metadata
Rank l33t++
Rank
l33t++

Nice writeup!
Now what is this, CM-500 month? First the vibrato fix now this 🤣 is this a scheme to make me buy one? 🤣

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website