Roland made patch sharing between XV Engine synths as hard as possible!

Talk about anything here
Post Reply
andym72
Posts: 7
Joined: 23:39, 12 April 2021

Roland made patch sharing between XV Engine synths as hard as possible!

Post by andym72 »

Hi Guys, new member of the Clan.

I've been looking into building a Patch Librarian app for Roland synths that use the XV Engine. Written in Java (so that hopefully it will work on Win/Mac/Linux, and won't be all that affected by OS updates, should continue to work).

But I've found out two problems that make this a far more difficult job than it really should be. Roland really didn't future proof the way these synths specify the Waveform used by each Tone in a Patch.

Problem 1.

They don't have one, common internal Waveform ROM! There are effectively three base Roms:

a. The XV-88 / XV-5080 / XV-3080 64MB Rom (from here called XV)
b. The Fantom S Rom (from here called FS)
c. The RS-80 / RS-50 / Juno-D Rom (from here called JuD)

Then there are some "internal extension" Roms which are added to the above:

d. the extra 64MB in the Fantom X / FXR / Juno Gi
e. the extra 192MB in the Fantom G (and possibly the Juno-DS, although with the Junos, who knows!)

This is crazy. The SRX boards that were built before the Fantom S include patches that use waves from the Internal Rom. So when you put these boards into a Fantom S, Fantom X, Juno G or Juno Gi, those patches will be selecting a Waveform from Internal Rom that isn't the waveform the Patch was meant to use. The patch will sound completely wrong! Is this why SRX-03 and SRX-04 had "Refill Patches" created for them?

Problem 2.

The Sysex values for waveforms are not the same and unique on every synth!

There are three Sysex values that select which waveform a Tone will use:

a. Wave Group Type
b. Wave Group ID
c. Wave Number

Wave Group Type is selecting a source Rom Type. So Internal, or SRJV board, or SRX Board, or RAM Sample. It's a whole BYTE of info, so there are 256 possible values here. And yet Roland have reused the same value for different sources for different synths! On the XV-5080,
0 is Internal, 1 is SRJV, 2 is SRX and 3 is Ram Sample. But on the Fantom X, 0 is Internal, 1 is SRX, 2 is Sample and 3 is Multisample!

So a patch using an SRX board wave on an XV5080 will go wrong on a Fantom X (unless you do a value mapping) because on the Fantom X it will be looking for a wave in Sample Ram!

Likewise Wave Group ID selects which Expansion Board, or Internal Rom Bank. This is actually a 14 bit number so they really didn't need to reuse numbers, and yet again we've got the same problem as with Wave Group Type. All the 'base' internal Roms (XV, FS or JuD) have Wave Group ID of 0 even though they are all different. The extra 64MB of internal Rom in the Fantom X and the first 64MB of extra internal Rom in the Fantom G have Wave Group ID of 1 even though they are completely different.

And then we have the SRX boards vs the EXP virtual boards. The EXPs have been renumbered compared to the SRXs, so no guesses what the hell has happened with the Sysex values!

This is absolutely senseless. It would make far more sense to make the Wave Group ID for the XV Base Rom to be 0, the FS Base Rom to be 1, the JuD to be 2, the extra Rom in the Fantom X to be 3, and the extra 3 lots of 64MB Rom in the Fantom G to be 4, 5 and 6. It is not like using this many numbers would not fit, because the Wave Group ID goes up to over 16 thousand! That way, the values would be unique per Rom source.

What a mess!
andym72
Posts: 7
Joined: 23:39, 12 April 2021

Re: Roland made patch sharing between XV Engine synths as hard as possible!

Post by andym72 »

Actually, on second thoughts using CTRLR might be a better idea.
tomkitel
Posts: 30
Joined: 14:10, 22 September 2016

Re: Roland made patch sharing between XV Engine synths as hard as possible!

Post by tomkitel »

andym72 wrote: 20:24, 18 April 2021 Actually, on second thoughts using CTRLR might be a better idea.
Did you pursue your plan for a XV series patch librarian?
anotherscott2022
Posts: 179
Joined: 16:15, 12 April 2022

Re: Roland made patch sharing between XV Engine synths as hard as possible!

Post by anotherscott2022 »

andym72 wrote: 17:44, 17 April 2021 I've been looking into building a Patch Librarian app for Roland synths that use the XV Engine.
...
Problem 1.

They don't have one, common internal Waveform ROM! There are effectively three base Roms:

a. The XV-88 / XV-5080 / XV-3080 64MB Rom (from here called XV)
b. The Fantom S Rom (from here called FS)
In essence, the Fantom S/X/G do not use the XV Engine, they do not include the XV-5080 wave set. However, as I understand it, the Integra 7, the FA, the current Fantom, Fantom-0, and Jupiter X/Xm all do include the XV-5080 waves (along with a lot more). So in theory, I suppose an XV-5080 patch librarian could support those models.

The Juno Di and DS also do not include the XV-5080 wave set. The Di sounds come from the Fantoms (older generation, not the current ones), the DS includes the same sounds as the Di plus others.
Asoyini
Posts: 32
Joined: 07:20, 21 March 2022

Re: Roland made patch sharing between XV Engine synths as hard as possible!

Post by Asoyini »

anotherscott2022 wrote: 04:46, 15 April 2022
andym72 wrote: 17:44, 17 April 2021 I've been looking into building a Patch Librarian app for Roland synths that use the XV Engine.
...
Problem 1.

They don't have one, common internal Waveform ROM! There are effectively three base Roms:

a. The XV-88 / XV-5080 / XV-3080 64MB Rom (from here called XV)
b. The Fantom S Rom (from here called FS)
In essence, the Fantom S/X/G do not use the XV Engine, they do not include the XV-5080 wave set. However, as I understand it, the Integra 7, the FA, the current Fantom, Fantom-0, and Jupiter X/Xm all do include the XV-5080 waves (along with a lot more). So in theory, I suppose an XV-5080 patch librarian could support those models.

The Juno Di and DS also do not include the XV-5080 wave set. The Di sounds come from the Fantoms (older generation, not the current ones), the DS includes the same sounds as the Di plus others.
The XV5080 preset banks are available as a free download for the Juno DS from The Roland Axial site. They can be added via the Tone Manager Librarian.
http://axial.roland.com/category/juno-d ... 88_xps-30/
anotherscott2022
Posts: 179
Joined: 16:15, 12 April 2022

Re: Roland made patch sharing between XV Engine synths as hard as possible!

Post by anotherscott2022 »

Asoyini wrote: 20:07, 18 April 2022 The XV5080 preset banks are available as a free download for the Juno DS from The Roland Axial site. They can be added via the Tone Manager Librarian.
Yes, but I believe they are the same approximations that were also available to download for the Fantom S and Fantom X. They were close, but not always the exact XV-5080 patches, because they had to substitute different waves for the ones that were in the XV-5080 but were not in the Fantom S/X. They actually explain that in the docs that accompanied those downloads. So the Fantom S/X definitely don't include the full set of XV-5080 wave data, and since the Juno DS is mostly based on those Fantoms, I suspect it is the same situation.
Post Reply