VOGONS

Common searches


First post, by tordeck

User metadata
Rank Newbie
Rank
Newbie

How do I do this? Some of the games are using the mt32 patch set. From what I have known only general midi patch set is used by dosbox and these games sound awful when you select mt32 or lapc as their music driver.

Reply 3 of 13, by Nicht Sehr Gut

User metadata
Rank l33t
Rank
l33t

Originally posted by tordeck How do I do this? Some of the games are using the mt32 patch set. From what I have known only general midi patch set is used by dosbox and these games sound awful when you select mt32 or lapc as their music driver.

Canadacow is working on a form of emulation here. Vlad also has a project that actually involves a more "hardware-based" approach, but is presently stagnant (nothing you can actually "play with").

Reply 4 of 13, by Schadenfreude

User metadata
Rank Member
Rank
Member
Nicht Sehr Gut wrote:

Canadacow is working on a form of emulation here. Vlad also has a project that actually involves a more "hardware-based" approach, but is presently stagnant (nothing you can actually "play with").

I thought Vlad did that hardware-thing just to dump the ROMs and do digital sampling. No hardware emulation solution AFAIK (remake into VHDL, etc. etc.)

However, I thought I heard him mention emulating the MT-32's controller and executing their firmware, etc. Fake MT-32 display and everything. Yah. (I like this solution best... not this high-level emulation...)

Reply 5 of 13, by Nicht Sehr Gut

User metadata
Rank l33t
Rank
l33t

Originally posted by Schadenfreude I thought Vlad did that hardware-thing just to dump the ROMs and do digital sampling. No hardware emulation solution AFAIK (remake into VHDL, etc. etc.)

Well, I can't seem to find the old posts (more likely, I don't have the patience to dig through all the MT32 emulation references), but IIRC Vlad was originally doing the ROM dump as a first step towards adding "real" MT32 emulation to VDMSound.

The needs of the real world has apparently interfered with it quite a bit.

Reply 6 of 13, by Schadenfreude

User metadata
Rank Member
Rank
Member
Nicht Sehr Gut wrote:

Well, I can't seem to find the old posts (more likely, I don't have the patience to dig through all the MT32 emulation references), but IIRC Vlad was originally doing the ROM dump as a first step towards adding "real" MT32 emulation to VDMSound.

The needs of the real world has apparently interfered with it quite a bit.

That's different then. In my mind, "hardware emulation" == a real hardware board that does everything an MT-32 can do without having been made by Roland, and that is software-compatible too. A bootleg MT-32, to wit.

OTOH on the different emulation tactics:
Canadacow is doing high-level emulation.
Vlad sounds like he wants to do low-level emulation.

Reply 7 of 13, by Lobivopsis

User metadata
Rank Newbie
Rank
Newbie

OTOH on the different emulation tactics:
Canadacow is doing high-level emulation.
Vlad sounds like he wants to do low-level emulation.

Considering that the MT32 is a MIDI device and is controlled entirely through sysex commands, I really don't see what the difference would be. As long as it understands MT-32 sysex and sounds the same, who cares what's actually going on inside the emulator?

Reply 9 of 13, by canadacow

User metadata
Rank Member
Rank
Member
Schadenfreude wrote:

OTOH on the different emulation tactics:
Canadacow is doing high-level emulation.
Vlad sounds like he wants to do low-level emulation.

Practically and pragmatically there is almost no differance between Vlad's approach and mine. The only major difference is that Vlad wants to read the binary output of the LA Synth chip (which I already know will tell him absolutely nothing... the Roland L/A synthesis is a single chip solution) where as I've been using a spectral analysizer to match my output with the MT-32's output. At the rate Vlad was working on his system, I predict he might be done sometime by 2015. On the other hand, my emulator has approached near MT-32 quality in a matter of months.

High level? Low level? Really, it all amounts to the same thing. If Vlad ever gets around to making his emulator, he'll have to write an analogue synth component (generating square and saw waves like the MT-32), combine it with a filter, and then sequence those in the same manner as the MT-32. And bingo, sounds a lot like what I've already done. I think in this case "high level emulation" is where instruments are simply remapped to the General Midi spec. That's not what I'm doing here. I'm performing the same kind of synthesis that the MT-32 is doing.

To set the record straight, I remember Vlad saying that there wasn't much point to emulating the firmware. There really isn't much in there. (Not to mention there is not a grey area on the copyright of the firmware like there is with the PCM samples) The microcontroller does not interpret the MIDI nor does it send any information to the L/A synth chip beyond the default patches and parameters. As I said earlier, the synthesis is a single chip solution, and as such, the L/A synth chip handles everying, including MIDI sequencing, patch allocation, memory setting, etc.

Snover, I'm beginning to think that you're out of your league regarding this whole emulation bit. What I'm doing is clean-room emulation. What Vlad wants to do is reverse engineering (not clean-room.) Think about it. I walked up to the task without any hidden knowledge or information (hence the clean-room idea), where as Vlad wants to start his emulation using knowledge gained from examing the microcode and firmware. As for the purists? Who cares? One thing I've learned from writing my emulator is that a purist approach will probably require a CPU on the level of P4 3Ghz to correctly implement. The x86 CPU is just too general purpose for this kind of emulation. Here's a primer for you, snover: http://www.ardi.com/reveng.php

Reply 11 of 13, by Lobivopsis

User metadata
Rank Newbie
Rank
Newbie
canadacow wrote:

If Vlad ever gets around to making his emulator, he'll have to write an analogue synth component (generating square and saw waves like the MT-32), combine it with a filter, and then sequence those in the same manner as the MT-32.

Just a minor thing really, but it's using digital oscillators, so that doesn't count as "analog" synthesis.

Reply 12 of 13, by canadacow

User metadata
Rank Member
Rank
Member
Lobivopsis wrote:

Just a minor thing really, but it's using digital oscillators, so that doesn't count as "analog" synthesis.

True, but any DSP book will class it under "analog synthesis" because the point is to emulate the real "analog synthesis" using digital methods. This is compared with digital synthesis where digital samples are explicitly used to create instruments.

Reply 13 of 13, by Lobivopsis

User metadata
Rank Newbie
Rank
Newbie
canadacow wrote:

True, but any DSP book will class it under "analog synthesis" because the point is to emulate the real "analog synthesis" using digital methods. This is compared with digital synthesis where digital samples are explicitly used to create instruments.

I feel that the term VA (Virtual Analog) is more correct (this is the term the manufactures use)

If you're going to call anything that uses simple waves to generate sound "analog", you're going to have to call Yamaha's FM and Casio's phase distortion synths analog as well, which would be completely bizarre because there have never been analog FM or PD synths sold by their respective manufactures. Those forms of synthesis were implemented as 100% digital from the start.

(Side note: Yamaha's "FM" is really phase modulation)

I think we're just used to a different set of terminology. In music industry terminology a device that generates sound using pre recorded samples is a "tone generator" or "sampler" (if it has sample RAM), and not a synth because it's not synthesizing sounds, it's just playing back recorded sounds and modifying them (devices that use single cycle wave samples are generally classed in with synths)

One thing I've learned from writing my emulator is that a purist approach will probably require a CPU on the level of P4 3Ghz to correctly implement. The x86 CPU is just too general purpose for this kind of emulation. Here's a primer for you

Wonder what it would take to emulate an MU128? 😀

Last edited by Lobivopsis on 2003-10-01, 02:20. Edited 1 time in total.