ScummVM logo Forum Index - ScummVM website - Contact us - Buy Supported Games: GOG.com Rules - Search - Register - Login curved edge
Folder Forum Index > General Discussion > MT-32 vs CM-32L Goto page 1, 2  Next
MT-32 vs CM-32L
  Author    Thread Reply to topic
JohnnyW



Joined: 21 Sep 2014
Posts: 17
MT-32 vs CM-32L 

Does ScummVM support CM-32L for the games that use the extra functionality of that Roland module?

 Reply with quote  
Post Sat Aug 29, 2015 10:09 pm 
 View user's profile Send private message
digitall
ScummVM Developer


Joined: 02 Aug 2012
Posts: 818
 

I did a quick search through the ScummVM source code and documentation. It appears that there is no specific code for CM-32L in any of the game engines. The README indicates that with the right options, we support the CM32-L with a MT-32 MIDI mapping:
https://github.com/scummvm/scummvm/blob/master/README#L1800

However, I think this would be game/engine specific as if the game sends the MIDI commands to use the extra CM-32L functionality, we would just pass this through to the native CM-32L if present..

Which games specifically did you have in mind?

 Reply with quote  
Post Sat Sep 05, 2015 12:52 pm 
 View user's profile Send private message
Collector



Joined: 30 Oct 2005
Posts: 529
 

Isn't it dependent on the ROMs?

 Reply with quote  
Post Sat Sep 05, 2015 2:35 pm 
 View user's profile Send private message Visit poster's website
digitall
ScummVM Developer


Joined: 02 Aug 2012
Posts: 818
 

Collector: *sigh* That is not the point of the question.

If you are using ScummVM's MT-32 Emulator based on MUNT which does require the ROM files extracted from a MT-32 or CM32-L, then obviously if you use MT-32 ROMs, it emulates a MT-32 and if you use CM32-L ROMs, it emulates a CM-32L... But the question here is if you have a CM-32L (whether a software emulation or a real hardware device connected to your system), whether ScummVM supports the extra functionality of the CM-32L or just uses it as a MT-32...

I think currently, just as an MT-32 ... but to repeat my previous question to JohnnyW, "which games specifically?" Once we know this, we can investigate further.

 Reply with quote  
Post Sat Sep 05, 2015 3:09 pm 
 View user's profile Send private message
MusicallyInspired



Joined: 02 Mar 2007
Posts: 949
Location: Manitoba, Canada
 

I remember hearing a LSL game uses the extra sounds on the CM-32L. I don't remember which.....or was that the CM-64 with the unique digital sound effects? I forget.

 Reply with quote  
Post Thu Sep 10, 2015 5:50 am 
 View user's profile Send private message Send e-mail Visit poster's website AIM Address
Kirben
ScummVM Developer


Joined: 21 Sep 2005
Posts: 413
Location: Melbourne, Victoria, Australia
 

The following games make sure of additional CM-32L sound effects, according to the list on Wikipedia:
Beneath a Steel Sky
Day of the Tentacle
Indiana Jones and the Fate of Atlantis
Leisure Suit Larry 5: Passionate Patti Does a Little Undercover Work
Lure of the Temptress
Rex Nebular and the Cosmic Gender Bender

Lure of the Temptress in particular makes major use of the added sound effects of the CM-32L, but we currently lack Roland support for the game.

 Reply with quote  
Post Thu Sep 10, 2015 6:17 am 
 View user's profile Send private message
digitall
ScummVM Developer


Joined: 02 Aug 2012
Posts: 818
 

Thanks Kirben. I was about to post something similar based on http://www.vogons.org/viewtopic.php?t=7718

According to that thread and other documentation, the extra sound effects in the CM-32L are assigned to MIDI Channel 10 and are notes (sound effect) 76 through to 108 inclusive.

It may be useful to output a one-off (debug?) message if any of those notes is used on Channel 10 along the lines of "CM-32L Sound Effect used! Will not be heard on MT-32"

 Reply with quote  
Post Thu Sep 10, 2015 12:00 pm 
 View user's profile Send private message
digitall
ScummVM Developer


Joined: 02 Aug 2012
Posts: 818
 

Testing will probably be also needed with Sky, SCUMM, SCI, and MADS engines to see if the channel / notes are passed through correctly currently.. (And Lure in future)

 Reply with quote  
Post Thu Sep 10, 2015 12:03 pm 
 View user's profile Send private message
JohnnyW



Joined: 21 Sep 2014
Posts: 17
 

Sorry for not responding to this. I had just watched this amazing video on YouTube when I posted: https://www.youtube.com/watch?v=OLvsaJ4h-VY

IIRC it seems that CM-32L is the best middle ground: It supported MT-32 and also had extra sound effects that many games took advantage of (thanks to Kirben for making an example list).

I guess in a perfect world ScummVM would support these extra sound effects.

Edit: You can hear what some of these sound effects are supposed to sound like here: https://youtu.be/OLvsaJ4h-VY?t=2h19m23s

 Reply with quote  
Post Sun Oct 25, 2015 3:43 pm 
 View user's profile Send private message
JohnnyW



Joined: 21 Sep 2014
Posts: 17
 

I just wanted to add that I found evidence that Day of the Tentacle makes use of the extra sound effects from the CM-32L/CM-64 MIDI units. This video shows the game being played with an MT-32 unit, and there is no bird tweeting sound:

https://www.youtube.com/watch?v=YQeQzeVmN5w

This video uses the CM-32L unit and there IS a bird tweeting sound:

https://www.youtube.com/watch?v=904QdrYUDiE (note that the author disabled digital sounds in order to allow people to hear the MIDI music more clearly -- the birds tweeting come from the MIDI unit).

There are probably other sound effects that are missing when not playing with CM-32L, too.

 Reply with quote  
Post Tue Oct 27, 2015 11:06 pm 
 View user's profile Send private message
JohnnyW



Joined: 21 Sep 2014
Posts: 17
 

quote:
Originally posted by digitall
Collector: *sigh* That is not the point of the question.

If you are using ScummVM's MT-32 Emulator based on MUNT which does require the ROM files extracted from a MT-32 or CM32-L, then obviously if you use MT-32 ROMs, it emulates a MT-32 and if you use CM32-L ROMs, it emulates a CM-32L...


Actually that wasn't the point of my question. I was asking if you were using ScummVM's emulator based on MUNT if the CM32-L sounds are emulated, and from what I can tell: Even if you include the CM32-L extracted ROM files... they are not Sad

For example: The bird does not tweet at the beginning of DOTT, even if you're using CM-32L ROMs. Tested using ScummVM 1.8.0
 Reply with quote  
Post Sat Oct 31, 2015 5:18 pm 
 View user's profile Send private message
LordHoto
ScummVM Developer


Joined: 30 Oct 2005
Posts: 1030
Location: Germany
 

quote:
Originally posted by JohnnyW
quote:
Originally posted by digitall
Collector: *sigh* That is not the point of the question.

If you are using ScummVM's MT-32 Emulator based on MUNT which does require the ROM files extracted from a MT-32 or CM32-L, then obviously if you use MT-32 ROMs, it emulates a MT-32 and if you use CM32-L ROMs, it emulates a CM-32L...


Actually that wasn't the point of my question. I was asking if you were using ScummVM's emulator based on MUNT if the CM32-L sounds are emulated, and from what I can tell: Even if you include the CM32-L extracted ROM files... they are not :(

For example: The bird does not tweet at the beginning of DOTT, even if you're using CM-32L ROMs. Tested using ScummVM 1.8.0


I am 99.99...% sure our built-in MUNT version does not properly detect that you have CM-32L ROMs. Unlike vanilla MUNT we do not distinguish the ROMs based on the SHA-1 hash of the ROM data. Control ROMs have the same size for all models (see here). Thus, the code just picks the first ROM description which seems to match and that is the MT-32 one instead of the CM-32L one (see here. Funnily enough the comment seems to suggest that this difference isn't a big deal.). Then again, the question is whether this would result in sound effects from being missing.

What would be interesting to see however is if you use a real CM-32L with ScummVM whether it gives these additional effects. Since you seem to have tested it with CM-32L ROMs, you could just test it with your actual CM-32L too?
 Reply with quote  
Post Sat Oct 31, 2015 6:37 pm 
 View user's profile Send private message
md5
ScummVM Developer


Joined: 03 Nov 2005
Posts: 2256
Location: Athens, Greece
 

quote:
Originally posted by LordHoto

I am 99.99...% sure our built-in MUNT version does not properly detect that you have CM-32L ROMs. Unlike vanilla MUNT we do not distinguish the ROMs based on the SHA-1 hash of the ROM data. Control ROMs have the same size for all models (see here). Thus, the code just picks the first ROM description which seems to match and that is the MT-32 one instead of the CM-32L one (see here. Funnily enough the comment seems to suggest that this difference isn't a big deal.). Then again, the question is whether this would result in sound effects from being missing.


Yes, I did that. I thought that we weren't using the extra CM32-L sound samples anywhere. According to this page, there are games like BASS that do feature additional sound effects:
http://www.marshalltradecorp.com/coDe/old-game-info/differences-between-roland-mt32-and-cm32l.html

Thus, it's quite possible that this lack of proper detection for the CM-32L instruments is the reason why the bird tweeting sound isn't audible.

I'll add the missing functionality (and sync our MUNT emulator too) these days, and will update this thread when the changes are merged into master.
 Reply with quote  
Post Sun Nov 01, 2015 12:45 pm 
 View user's profile Send private message
JohnnyW



Joined: 21 Sep 2014
Posts: 17
 

Wonderful! Thanks, md5!

 Reply with quote  
Post Sun Nov 01, 2015 7:15 pm 
 View user's profile Send private message
md5
ScummVM Developer


Joined: 03 Nov 2005
Posts: 2256
Location: Athens, Greece
 

And after about two months, I finally found some time to work on this. The munt SHA1 hash check has been integrated into ScummVM's codebase - now, it should correctly set the needed flags for CM-32L emulation.

I tried DOTT, and the bird chirping sound works correctly now. Try it with a daily build of ScummVM:

http://buildbot.scummvm.org/builds.html

Edit: The patch has been removed, because of probable licencing issues with the SHA1 code. We'll let you know when this has been addressed.

 Reply with quote  
Post Mon Dec 28, 2015 12:59 am 
 View user's profile Send private message
  Display posts from previous:      
Reply to topic

Forum Jump:
 
Goto page 1, 2  Next


Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Powered by phpBB © 2001, 2006 phpBB Group
Forum design by ScummVM team, icons by raina
curved edge   curved edge