VOGONS


Yamaha XG emulation at last

Topic actions

Reply 300 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

so anyone want to show the hackers how a real HiEnd upgrade to s-yxg50 is done? 😀

Reply 302 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

s-yxg50 is missing effect1 and effect 2. it also likely doesn't have the aural exciter, because the mu50 didn't have it, but with this patch and converted bank, it has pretty much all the other features of the mu80. it sound much better than ymf 754 HiEnd, and is still very light on the cpu, which is it's primary advantage.

It's not a perfect mu80, but any mu80 composed midi that sounds alright on other later synths with mu-basic map should sound fine.

There are some compromises that were made in s-y50xg that are difficult to undo.

1) adpcm decoding rolls over at the loop points. you can't just copy the decoded data between them to do the loop, because the delta is calculated between the ending and starting loop points. since s-yxg50 doesn't do ADPCM decoding, you have to store multiple loops in the wave file until one of them is identical to a previous loop. Currently the converter gives up after 8 loops if it doesn't stabilize earlier. Fortunately, this doesn't seem to be audible.

2) 16 meg space to load the tables. HiEnd has extended this, though.

Reply 303 of 320, by Trelokk

User metadata
Rank Member
Rank
Member

Looks like the MU90, MU128 and even MU1000/2000 have been cracked. Can't wait to get my hands on these bad boys.

Never thought we'd ever have the luxury of choosing between different MU versions one day...

Reply 304 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

Yup, tomrrow we will have what ymf 754-HiEnd was meant to be all along.

Keep in mind this still doesn't get you the insertion effects. For that you want s-mu2000, or maybe the other guy's project if it ever gets out. 😀

Reply 305 of 320, by Manners

User metadata
Rank Newbie
Rank
Newbie

When I was working with the really DC offset waves I had a really complicated system of running the ADPCM loop twice to let the loop fall into perfect rhythm, and attaching the second loop to the body of the sample while doing DC offset correction, but with Tarboh's ADPCM decoding I couldn't tell any difference between loops with the running delta and binary cuts anymore so I kept it simple. There was never any point in letting the loop run more than once

Reply 306 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

Well things are starting to get good.

i still don't understand why the starship samples messes up even when it's taken from the mu50 rom, but not from the mu80 rom.

Reply 307 of 320, by Manners

User metadata
Rank Newbie
Rank
Newbie

Does it happen in S-MU2000 with the --fast-midi option enabled?

Reply 308 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

Does NOT happen, even with mu-basic on.

it only happens in s-yxg50, and only with original table, and mu50 table. it's fine with mu80 table.

this also did not happen in pre VST versions. it's ONLY in the vst version, only when playing bombing mission midi file, and only with original rom, and hiend resample of original rom, and mu50 converted rom.

in all three of these cases, the sample plays a little too long before fading out. does not happen on any real hardware, or any other even close to accurate emulation.

Reply 309 of 320, by Trelokk

User metadata
Rank Member
Rank
Member

Looks like the guy got MU100+ on S-YXG50 working even without directly using the YMF-754 at all. Good riddance. ^^

Reply 310 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

Nice.

Now we just need custom graphical panels to identify which rom was used, and them to be renamed.

Reply 311 of 320, by RetroGamer4Ever

User metadata
Rank Oldbie
Rank
Oldbie

Now, we need to get the few useful bits and pieces from the PLG expansion boards - PLG150-AP/DR/PC/PF have HQ add-on sounds for Piano/Keyboard and Drum/Percussion - and we'll probably be fully squared away, unless there's stuff that be done for the PVL/Virtual Synthesis portion of the XG standard.

Last edited by RetroGamer4Ever on 2026-10-01, 15:40. Edited 1 time in total.

Reply 312 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

No way that's actually going in s-yxg50, is it?

Anyway, resource hacker can be used to replace the bitmaps and string table which will allow modified versions to be renamed properly so they show as different VSTs.

Reply 313 of 320, by Trelokk

User metadata
Rank Member
Rank
Member

I got this:
x3gP9wR.png
Made adjusted images for MU80, MU90, MU100, MU128 and MU1000. I'm using those in DLLs which have the converted wavetables embedded so they work exactly like the 4MB syxg50.dll. (Yes, I also changed the color of the Polyphony numbers). A pity those cannot be redistributed, would make things much easier. Maybe if the wavetables are not included?

Personally I prefer the MU90. It's the last one which fits into the regular-sized syxg50.dll (with the loop size adjustment) while remaining close to the sound of the original. Also moderate filesize (13 MB). Pretty perfect for my purposes (retro gaming).

Reply 314 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

That's no good, but you should be able to distribute a patcher that will take an untouched dll, the new graphics, and a table, and produce your dll.

Reply 315 of 320, by Trelokk

User metadata
Rank Member
Rank
Member

Maybe that's possible, but I think that's details right now. What matters is that the files actually work the way they should, not the bling-bling around them, I'd say. 😜

Reply 316 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

Having the internal strings changed matters because without it, they all claim to be the same vsti, meaning foo.midi gives them all the same name in the list.

Besides, changing the look will allow it to be made clear that these are not official products.

Reply 317 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

mu100,mu128, and mu1000 now all can build mu-basic versions, which fix the midis that mu100 breaks by restoring the original mu instruments.

i do think i will probably keep mu90 in my vst midi driver config, but there are midis that were composed for mu100, and that use drum banks not present on mu90. I just can't get past the error in bombing mission with mu50 rom that's not present on later ones.

Reply 318 of 320, by Manners

User metadata
Rank Newbie
Rank
Newbie

The MU90 expands the drum tables from 30 to 42 bytes, so a lot of data is getting clipped at the moment. Drums are missing 2-band EQ and filter velocity sensitivity (and a few other things), so they come out sounding super dry. This is why Vampire is the way to go, regular voices have more sophisticated EQ, but the MU90 (to say nothing of MU100, MU128, MU1000) is already very close to the wavedata limit so adding any more regular voices within the restrictions of S-YXG50/ HiEnd is impossible

In contrast, nothing from the MU80 tables is missing, so it should sound pretty accurate

Reply 319 of 320, by zaphod77

User metadata
Rank Member
Rank
Member

I'm not sure this is the case.

s-yxg50 has now been patched for 24 bit loop offset, a well as for more mulitsamples. this pretty much make stuff work, and the HIEnd seems to have it's own bugs introduced.

i'm curious what has been actually added to the vampire engine that is with the lastest vampire, which i have no idea what it is. supposedly it's gotten close to 2 gigabytes? I can't register on vk and ask.

i have noticed that vampire is 200k bigger than s-yxg50, but i'm not sure what's actually changed.

Also, it seems only mu500/1000/2000 actually has >2 element voices. i can't find any in the mu128 voices.

Let me know if i'm wrong.

Last edited by zaphod77 on 2026-10-01, 21:01. Edited 1 time in total.