VOGONS


Yamaha XG emulation at last

Topic actions

Reply 100 of 117, by hockinsk

User metadata
Rank Newbie
Rank
Newbie

More progress made toward implementing MU1000's ROM in JUCE. In the process of completing wave.bin loading for each multi-element voice. So far work was done only for the first element. DSP stages 1 and 2 are done at this point. There are still some very random bugs regarding voice selection, but I knew I would spend most of my time fixing such problems. When frustrated, I simply move onto other things. The one thing I always loved about XGEdit is how easy it was to navigate to programs visually, hence I implemented the very beginnings of such filtering/selection for voices. That will become an integral part of GUI later I hope. It's just json structure and .bin for the wave right now

Untitled.png

Reply 101 of 117, by tcaud

User metadata
Rank Newbie
Rank
Newbie

Gonna be honest I'm kind of at a loss for the reason for all this. Like we got the SYG-50 already and the ROMs are all proprietary so it's not like they can be used without a license which Yamaha is probably not gonna grant.

What is the advantage of implementing Yamaha's wavesynth tech in JUCE? (and why did MAME implement it in the first place?)

Reply 102 of 117, by zaphod77

User metadata
Rank Member
Rank
Member

If MAME was 100%, it would be higher quality audio than the s-yxg50.

Reply 103 of 117, by tcaud

User metadata
Rank Newbie
Rank
Newbie

I mean it looks to me like the entire purpose of this project is to steal Yamaha's code and contribute it to Claude (as has already happened to Roland's).

Reply 104 of 117, by zaphod77

User metadata
Rank Member
Rank
Member

Wait... what? This is news to me, and i tried to google the incident you are referring to.

Yamaha has abandoned S-yXG50, though they still make use of AWM2 as a rompler engine (it's in the "expanded softsynth plugin" you get for free when you buy one of their modern hardware synths)

The objective of this project seems to be to grab XG instruments and place them inside of a modern DAW.

Reply 105 of 117, by RetroGamer4Ever

User metadata
Rank Oldbie
Rank
Oldbie

Yamaha still incorporates the old base XG hardware mode and ROMs (DB50, more or less) into their keyboards, just as Roland has done the same with their basic GS assets, though I'm not sure what hardware module equivalent they are using these days and they still (sort of) support the Studio Canvas line of GS hardware modules.

Reply 106 of 117, by zaphod77

User metadata
Rank Member
Rank
Member

Since the .tbl format is decoded, any chance of writing a converter to .sf2? or telling spessasus enough to convert it?

Reply 107 of 117, by Shredder11

User metadata
Rank Newbie
Rank
Newbie

I'm so glad that Sam is making this Yamaha MU1000/2000 MAME sourced VST emulation, because my own MU100R rack synths (I have four) are nearly thirty years of age and I have considered swapping them for two MU2000ex, but even those are getting old now. So having a VST helps to keep XG technology available long in to the future, after the old hardware has died or become unavailable to buy. Most people on this web forum are into gaming and its associated audio, but I and many others have occasionally read these forums for years to help with musician related issues with XG. So again I am very grateful to people like Sam for putting in the effort to make these VST emulations of the XG hardware.

Reply 108 of 117, by hockinsk

User metadata
Rank Newbie
Rank
Newbie
tcaud wrote on 2026-05-20, 01:10:

Gonna be honest I'm kind of at a loss for the reason for all this. Like we got the SYG-50 already and the ROMs are all proprietary so it's not like they can be used without a license which Yamaha is probably not gonna grant.

What is the advantage of implementing Yamaha's wavesynth tech in JUCE? (and why did MAME implement it in the first place?)

Many reasons. SYXG50 is 32-bit .dll designed to use in SOL2 and without a UI and not natively controllable and of course can't save state with session like normal plugins. Many DAWs don't actually support transporting sysex to VST plugins either. Obviously SYXG50 is an oddball using sysex, but also small voice library compared to the last of the XG MU1000 had.

MAME isn't' practical to use with a DAW or as a musician who just wants to make music not do computer science. MAME also has several bugs, most significancy the DPCM decode isn't fully workking. (I've fixed that now)

Reply 109 of 117, by hockinsk

User metadata
Rank Newbie
Rank
Newbie
tcaud wrote on 2026-05-20, 01:51:

I mean it looks to me like the entire purpose of this project is to steal Yamaha's code and contribute it to Claude (as has already happened to Roland's).

Claude already knows about MAME and the swp30.cpp code in detail from what i could see and can decode any rom you want using it without contributing anything it just pulls from mame repo, converts to python and spits out your samples fro you if you want them? I'm not sure what code needs to be stolen from the firmware, mame means you don't need to RE the firmware and this project decodes from the rom using the same approaches, just with some bugs fixed mame didn't get to resolving with dpcm.

Reply 110 of 117, by hockinsk

User metadata
Rank Newbie
Rank
Newbie
zaphod77 wrote on 2026-05-20, 10:28:

Wait... what? This is news to me, and i tried to google the incident you are referring to.

Yamaha has abandoned S-yXG50, though they still make use of AWM2 as a rompler engine (it's in the "expanded softsynth plugin" you get for free when you buy one of their modern hardware synths)

The objective of this project seems to be to grab XG instruments and place them inside of a modern DAW.

Yes, it's basically MAME but for musicians to use in a DAW and all the convenience that brings.

Reply 111 of 117, by hockinsk

User metadata
Rank Newbie
Rank
Newbie
Shredder11 wrote on 2026-05-20, 14:14:

I'm so glad that Sam is making this Yamaha MU1000/2000 MAME sourced VST emulation, because my own MU100R rack synths (I have four) are nearly thirty years of age and I have considered swapping them for two MU2000ex, but even those are getting old now. So having a VST helps to keep XG technology available long in to the future, after the old hardware has died or become unavailable to buy. Most people on this web forum are into gaming and its associated audio, but I and many others have occasionally read these forums for years to help with musician related issues with XG. So again I am very grateful to people like Sam for putting in the effort to make these VST emulations of the XG hardware.

I'm hoping I can get Yamaha on side with it. But like many things in life, you have to show them something finished before they take it seriously haha

Reply 112 of 117, by hockinsk

User metadata
Rank Newbie
Rank
Newbie
zaphod77 wrote on 2026-05-20, 12:57:

Since the .tbl format is decoded, any chance of writing a converter to .sf2? or telling spessasus enough to convert it?

sf2 can't actually support everything xg includes. At the highest level sf2 is a 1D library and only supports basic envelopes, filters, LFOs and modulators. It supports layering and velocity regions, but much more primitively than XG. I did begin thinking this is the way to go, but soon realised it would be compromised.

Reply 113 of 117, by hockinsk

User metadata
Rank Newbie
Rank
Newbie
zaphod77 wrote on 2026-05-20, 01:38:

If MAME was 100%, it would be higher quality audio than the s-yxg50.

Main issue with mame is it's just not practical within a plugin, there's projects like AMAME if you really want mame in a plugin. Big issue is emulation is resource heavy, this plugin simply pulls the voices out of the rom and does it's own thing with them, then I get full control and also for many things musically, the hardware swp30 and firmware has to make compromises, once free of mame you can replace many aspects of the hardware dsp with superior software dsp and modern toys.

Reply 115 of 117, by hockinsk

User metadata
Rank Newbie
Rank
Newbie
RetroGamer4Ever wrote on Yesterday, 12:31:

Here's what one of the "Pro" XG SFs sounds like. It sounds as XG as anything Yamaha that I've ever heard.

https://www.youtube.com/watch?v=xK-ocyxzXeU

But not the same. I went down this road initially and tou soon realise sf2 isn't enough musically and technically. It is much easier though, but i'm in no rush, i've spent over a year on RE.

Reply 116 of 117, by silvally03@

User metadata
Rank Newbie
Rank
Newbie

is the muxg sill work pin progess?

Reply 117 of 117, by silvally03@

User metadata
Rank Newbie
Rank
Newbie

Instead of saving up, i want to use muxg vsti.