Munt Reloaded - Development

Developer's Forum for discussion of bugs, code, and other developmental aspects of the Munt Project.

Re: Munt Reloaded - Development

Postby sergm » 2017-6-07 @ 17:08

sergm
Oldbie
 
Posts: 663
Joined: 2011-2-23 @ 16:37

Re: Munt Reloaded - Development

Postby Spikey » 2017-6-08 @ 06:43


343 + if (synth->controlROMFeatures->quirkPanMult) {
344 + // MT-32: Divide by 9
345 + patchTemp->panpot = Bit8u(midiPan / 9);
346 + } else {
347 + // CM-32L: Divide by 8.5
348 + patchTemp->panpot = Bit8u((midiPan << 3) / 68);
349 + }

What does this reference? :)
User avatar
Spikey
Member
 
Posts: 173
Joined: 2003-2-04 @ 10:36
Location: South Australia

Re: Munt Reloaded - Development

Postby NewRisingSun » 2017-6-15 @ 08:50

I only found one possible issue:

The "HIT BOTTOM" instrument generally sounds right, but a real MT-32 starts with a crackle while MUNT doesn't. But that's probably too esoteric and unimportant to emulate. There's also the "ELEC SHOCK" instrument which has the same issue as Swamp Background, but we already talked about this. Is the hard-to-emulate LFO part of the MCU or part of the LA32 chip?

Otherwise, great work, and I'm looking forward to a regular release.
You do not have the required permissions to view the files attached to this post.
NewRisingSun
Oldbie
 
Posts: 745
Joined: 2005-9-02 @ 02:26

Re: Munt Reloaded - Development

Postby sergm » 2017-6-15 @ 15:37

NewRisingSun wrote:The "HIT BOTTOM" instrument generally sounds right, but a real MT-32 starts with a crackle while MUNT doesn't. But that's probably too esoteric and unimportant to emulate.


I'll see if this issue is really unimportant. It could suddenly be an indication of a horrible bug not yet noticed. Anyway, thanks a lot for your contribution!

Is the hard-to-emulate LFO part of the MCU or part of the LA32 chip?


Unfortunately, all the pitch-related stuff is solely controlled by MCU (as well as all the quirks of old MT-32 as we can see now). I tried to look closely at the pitch diagram of SwmpBackgr with no luck, though, I won't not say I stopped at that. ;)
sergm
Oldbie
 
Posts: 663
Joined: 2011-2-23 @ 16:37

Re: Munt Reloaded - Development

Postby Great Hierophant » 2017-6-15 @ 20:59

I tried the latest test build and I must say that, Wow, am I impressed! My wedge-shaped MT-32 is taking up a lot of space where it could be adding a fair bit to my wallet. "Just kidding"

I believe that the audibility of SwmpBackgr is tied to the animation speed. When the animation speed is set to its fastest, the effect may be inaudible. It sounds as good as it gets with the default animation speed.
User avatar
Great Hierophant
l33t
 
Posts: 2307
Joined: 2003-4-27 @ 08:20

Re: Munt Reloaded - Development

Postby sergm » 2017-6-18 @ 09:43

An update is available at https://sourceforge.net/projects/munt/files/munt/SNAPSHOTS/.
I think the topic about emulation of old MT-32 is closed now, isn't it? :happy:
sergm
Oldbie
 
Posts: 663
Joined: 2011-2-23 @ 16:37

Re: Munt Reloaded - Development

Postby Great Hierophant » 2017-6-19 @ 16:40

sergm wrote:An update is available at https://sourceforge.net/projects/munt/files/munt/SNAPSHOTS/.
I think the topic about emulation of old MT-32 is closed now, isn't it? :happy:


I suppose it is. Now comes the Roland SC-55 emulation, right? :dead:

Even though SwmpBkgr may not be ideal to the old MT-32, it is far better than the new MT-32s and CM units, which output a nearly constant high pitched noise.
User avatar
Great Hierophant
l33t
 
Posts: 2307
Joined: 2003-4-27 @ 08:20

Re: Munt Reloaded - Development

Postby sergm » 2017-6-19 @ 18:07

Great Hierophant wrote:Now comes the Roland SC-55 emulation, right?

Most probably D-50 :P
I'll see if there is a chance to speedup MCU emulator, so it won't take up all the available CPUs as it does now *sigh*
sergm
Oldbie
 
Posts: 663
Joined: 2011-2-23 @ 16:37

Re: Munt Reloaded - Development

Postby NewRisingSun » 2017-6-19 @ 20:13

Yes, if the LFO problem is unsolvable, then the old MT-32 emulation is otherwise complete. I think that for games, Roland CM-32P/CM-64 emulation would be more useful than D-50 emulation.

I still have a few ideas for additional optional features, but I guess I better shut up now because you've already done more than enough for me ;)
NewRisingSun
Oldbie
 
Posts: 745
Joined: 2005-9-02 @ 02:26

Re: Munt Reloaded - Development

Postby sergm » 2017-6-20 @ 05:07

Heh, D-50 is useless for games, I think lol

Well, I'm looking at CM-64 on my table...
sergm
Oldbie
 
Posts: 663
Joined: 2011-2-23 @ 16:37

Re: Munt Reloaded - Development

Postby sergm » 2017-6-24 @ 16:45

It appears not too hard to make SwmpBackgr sound quite good.
You do not have the required permissions to view the files attached to this post.
sergm
Oldbie
 
Posts: 663
Joined: 2011-2-23 @ 16:37

Re: Munt Reloaded - Development

Postby sergm » 2017-6-26 @ 17:54

NewRisingSun

Snap ;)

That was a bit strange, actually. From what I know, amp and filter are always accurately ramped except some rare cases like partial termination.
On the other hand, reverb level is not ramped in munt by any means, and I suspect the real units behave similarly.
sergm
Oldbie
 
Posts: 663
Joined: 2011-2-23 @ 16:37

Re: Munt Reloaded - Development

Postby NewRisingSun » 2017-6-27 @ 15:55

885 still clicks even when I set reverb to 0 0 0 (in 885a.mid).
You do not have the required permissions to view the files attached to this post.
NewRisingSun
Oldbie
 
Posts: 745
Joined: 2005-9-02 @ 02:26

Re: Munt Reloaded - Development

Postby sergm » 2017-6-27 @ 16:06

Then it is even more interesting. I certainly wish to sort it out.
sergm
Oldbie
 
Posts: 663
Joined: 2011-2-23 @ 16:37

Re: Munt Reloaded - Development

Postby sergm » 2017-6-27 @ 19:47

Well, the MIDI is a bit nasty.
I'm not 100% sure but it very much looks like the ramp gets broken when the volume changes in a direction opposite to the currently performing ramp. Here's what KingGuppy says about the ramping:

If the MSb (of "increment") is set:
- If "current" already corresponds to a value <= "target", "current" is set immediately to the equivalent of "target" and an interrupt is raised.
- Otherwise, "current" is gradually reduced (at a rate determined by the lower 7 bits of "increment"), and once it reaches the equivalent of "target" an interrupt is raised.

Otherwise (the MSb is unset):
- If "current" already corresponds to a value >= "target", "current" is set immediately to the equivalent of "target" and an interrupt is raised.
- Otherwise, "current" is gradually increased (at a rate determined by the lower 7 bits of "increment"), and once it reaches the equivalent of "target" an interrupt is raised.

There is no sense in setting volume bit-by-bit back and forth like that. You can set volume to 100, then lower it to 30, wait for the ramp to complete and then rise to 100, for example. I think we can opt to always ramp and never jump regardless of the direction, though.
sergm
Oldbie
 
Posts: 663
Joined: 2011-2-23 @ 16:37

Previous

Return to MT-32 Development

Who is online

Users browsing this forum: No registered users and 1 guest