VOGONS


Heads Up: Roland Sound Canvas VA VSTi Plugin!

Topic actions

Reply 722 of 742, by Kappa971

User metadata
Rank Member
Rank
Member
RetroGamer4Ever wrote on 2023-10-11, 20:18:

I stick with the VSC, since it has better capabilities and is free.

What?
VSC emulates an SC-88 with degraded samples. it's a good software synthesizer but why do you say it's better than SCVA? What are these "better capabilities"?

Reply 724 of 742, by mattw

User metadata
Rank Oldbie
Rank
Oldbie

SCVA contains the ROM of a real device, even we did not identify which real device exactly, because it doesn't match exactly any of the ROM dumps we had from a real device, you can read up and down from this post for details:

Re: About Roland Virtual Sound Canvas 3

that of course doesn't mean SCVA even having the waveform samples from a real device, does not process and degrade their quality (deliberately) compared to a real device before outputting sound, i.e. effectively having similar (degraded) output quality as VSC - that I haven't investigated and thus i cannot say.

VSC uses significantly degraded 8-bit samples (contrary to 20-bit ones in the ROM of a real device), also I proved with finding a digital fingerprint, i.e. forensically, the connection between what Microsoft included with Windows in their "GS Software Wavetable Synthesizer" and the sound banks of VSC:

Re: About Roland Virtual Sound Canvas 3

IMHO, neither SCVA, nor VSC are way to go, but developing open-source emulator, like 'emusc' project is trying to do, but I am a bit skeptical, there will be anything even close to correct emulator, until the "RIAA IIR filtering"question is answered - I rise that question - many times - last time I believe it was this post with all details:

Re: About Roland Virtual Sound Canvas 3

but somehow it always gets ignored, because I guess no one has any real answer and thus prefers to just leave it for the time being. In any way, it's crucial question, because something doesn't feel right, i.e. putting ROM samples in relatively weak embedded device, that need not once, but twice to be applied to such filter, instead just record them in the ROM without a need for such post-processing.

[EDIT] BTW, another very viable way instead open-source emulator is using the GS emulator of Yamaha SoftSynths and import there the Waverom samples from Roland. That is viable idea, because Yamaha was fully hacked, including high-quality 16-bit sound processing, I briefly mentioned that for example here:

Re: About Roland Virtual Sound Canvas 3

also, here:

Re: Yamaha Sequence Object Linking (SOL) 2

Re: Yamaha Sequence Object Linking (SOL) 2

I started investigation those hacks including releasing open-source code in C that decrypts the Yamaha banks and other information, etc, but no any interest of anyone else to help - I just stopped.

Reply 725 of 742, by sndwv

User metadata
Rank Member
Rank
Member
James-F wrote on 2016-01-07, 12:11:
Adding to Philscomputerlab post using SAVIHost to use the SC-VA plugin; […]
Show full quote

Adding to Philscomputerlab post using SAVIHost to use the SC-VA plugin;

To force SC-55 map in dosbox, start the SAVIHost SC-VA plugin and click on the PlugIn tab, click Filters, mark SysEx.
Go into "Control Changes" by pressing the "..." button near it, select 000 and 032 (use ctrl), press OK, mark "Control Changes" with square, and another OK to exit Filter menu.

Click the ALL button on the upper right of the plugin GUI, with the left/right arrows (under ALL button) select SC-55 map.
Only then run Dosbox or other Midi Player

This will disable SysEx commands to the plugin through which it receives a reset command, resulting it being stuck on the 8820 map.
Now the SC-VA will not be able to receive a Reset command and you will be able to select any SC-xx map you desire.
And don't manualy reset SC-VA vie the SYSTEM menu because it will have the same effect.

BUT, games that rely on the reset command for the slider to be in their default place will use the sliders position from the previous game.
For example Duke Nukem 3D uses Reverb almost full across all sliders.
When you run Doom after Duke, Doom will use the Reverb positions Duke used because it relies on the Sysex reset command to set all the reverb sliders to 40 (default).

Hope next version of SC-VA will have that fixed.

EDIT:
See my next post with a midi file which resets the sliders to default without sending a reset command.

EDIT2:
Updated Reset Midi file to Final Version:
This final Reset.mid version is uploaded which will reset absolutely all SC-VA setting to default.
Using all RPN, NRPN, Controller settings available from the SC-VA manual, on all channels.

I also added a small instruction to the Filter menu to bypass Map changes that can act like a reset.

I'm hoping you might be able to help me at least pinpoint where the following issue is originating. I'm using SCVA 1.1.12 with SAVIHost and my issue is that in some games the Rhythm Part sounds completely off.

I'm using The 7th Guest as example, as it's 'foyer' music is easily recognisable by me when it's 'wrong', but Descent for instance has the problem as well: the drums sound as the wrong instrument until I set 'Drum 1' from 'Part10' ... to 'Part10'- the value it already has by default. The annoying part of this that I need to do this after the game starts, because when I do this before it doesn't work / gets 'undone' (?).

Tried this both via DOSBox and ScummVM with the same results.

Reply 726 of 742, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
sndwv wrote on 2024-01-16, 19:28:
I'm hoping you might be able to help me at least pinpoint where the following issue is originating. I'm using SCVA 1.1.12 with S […]
Show full quote
James-F wrote on 2016-01-07, 12:11:
Adding to Philscomputerlab post using SAVIHost to use the SC-VA plugin; […]
Show full quote

Adding to Philscomputerlab post using SAVIHost to use the SC-VA plugin;

To force SC-55 map in dosbox, start the SAVIHost SC-VA plugin and click on the PlugIn tab, click Filters, mark SysEx.
Go into "Control Changes" by pressing the "..." button near it, select 000 and 032 (use ctrl), press OK, mark "Control Changes" with square, and another OK to exit Filter menu.

Click the ALL button on the upper right of the plugin GUI, with the left/right arrows (under ALL button) select SC-55 map.
Only then run Dosbox or other Midi Player

This will disable SysEx commands to the plugin through which it receives a reset command, resulting it being stuck on the 8820 map.
Now the SC-VA will not be able to receive a Reset command and you will be able to select any SC-xx map you desire.
And don't manualy reset SC-VA vie the SYSTEM menu because it will have the same effect.

BUT, games that rely on the reset command for the slider to be in their default place will use the sliders position from the previous game.
For example Duke Nukem 3D uses Reverb almost full across all sliders.
When you run Doom after Duke, Doom will use the Reverb positions Duke used because it relies on the Sysex reset command to set all the reverb sliders to 40 (default).

Hope next version of SC-VA will have that fixed.

EDIT:
See my next post with a midi file which resets the sliders to default without sending a reset command.

EDIT2:
Updated Reset Midi file to Final Version:
This final Reset.mid version is uploaded which will reset absolutely all SC-VA setting to default.
Using all RPN, NRPN, Controller settings available from the SC-VA manual, on all channels.

I also added a small instruction to the Filter menu to bypass Map changes that can act like a reset.

I'm hoping you might be able to help me at least pinpoint where the following issue is originating. I'm using SCVA 1.1.12 with SAVIHost and my issue is that in some games the Rhythm Part sounds completely off.

I'm using The 7th Guest as example, as it's 'foyer' music is easily recognisable by me when it's 'wrong', but Descent for instance has the problem as well: the drums sound as the wrong instrument until I set 'Drum 1' from 'Part10' ... to 'Part10'- the value it already has by default. The annoying part of this that I need to do this after the game starts, because when I do this before it doesn't work / gets 'undone' (?).

Tried this both via DOSBox and ScummVM with the same results.

Hi,
I do not have The 7th Guest to test with so let's talk about Descent instead. What do you mean by "the drums sound as the wrong instrument" ? Do you mean that at channel 10 you hear a bad drum set (but it is still drums) or you mean that you hear a melodic instrument (most likely piano) instead of drums?
BTW, SC-VA (and for that matter real SC-55) has no drumset with the name 'Drum 1' only 'Standard 1'. And Descent does not use that most of the time but the 'TR-808' drum set. This is not a bug it was the intention of the authors to use Program 25 (TR-808 drum set) and not Program 0 (Standard 1 drum set).
So if you say that you always have to set 'Standard 1' on channel 10 it's because it is set to 'TR-808' by the game iteself and the 'TR-808' drum set is the right one.
To check what I'm talking about you should press the 'Test Music Card' option in the Setup.exe utility of Descent. And then you should see this on the interface of SC-VA:

scva_descent.png
Filename
scva_descent.png
File size
178.9 KiB
Views
918 views
File license
Public domain

If you do not see the same then you should try another VST Host.
1. Falcosoft Soundfont Midi Player
http://falcosoft.hu/softwares.html#midiplayer
2. VST Midi Driver
http://falcosoft.hu/softwares.html#vst_driver

@Edit:
It seems the picture is resized/compressed by the forum more than usual.
I have made a video about how Descent should work/sound with SC-VA in SC-55 mode. As a VST host I used VST Midi driver this time:
https://youtu.be/TlQKrABEyvE

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 727 of 742, by sndwv

User metadata
Rank Member
Rank
Member
Falcosoft wrote on 2024-01-16, 23:24:
Hi, I do not have The 7th Guest to test with so let's talk about Descent instead. What do you mean by "the drums sound as the wr […]
Show full quote
sndwv wrote on 2024-01-16, 19:28:
I'm hoping you might be able to help me at least pinpoint where the following issue is originating. I'm using SCVA 1.1.12 with S […]
Show full quote
James-F wrote on 2016-01-07, 12:11:
Adding to Philscomputerlab post using SAVIHost to use the SC-VA plugin; […]
Show full quote

Adding to Philscomputerlab post using SAVIHost to use the SC-VA plugin;

To force SC-55 map in dosbox, start the SAVIHost SC-VA plugin and click on the PlugIn tab, click Filters, mark SysEx.
Go into "Control Changes" by pressing the "..." button near it, select 000 and 032 (use ctrl), press OK, mark "Control Changes" with square, and another OK to exit Filter menu.

Click the ALL button on the upper right of the plugin GUI, with the left/right arrows (under ALL button) select SC-55 map.
Only then run Dosbox or other Midi Player

This will disable SysEx commands to the plugin through which it receives a reset command, resulting it being stuck on the 8820 map.
Now the SC-VA will not be able to receive a Reset command and you will be able to select any SC-xx map you desire.
And don't manualy reset SC-VA vie the SYSTEM menu because it will have the same effect.

BUT, games that rely on the reset command for the slider to be in their default place will use the sliders position from the previous game.
For example Duke Nukem 3D uses Reverb almost full across all sliders.
When you run Doom after Duke, Doom will use the Reverb positions Duke used because it relies on the Sysex reset command to set all the reverb sliders to 40 (default).

Hope next version of SC-VA will have that fixed.

EDIT:
See my next post with a midi file which resets the sliders to default without sending a reset command.

EDIT2:
Updated Reset Midi file to Final Version:
This final Reset.mid version is uploaded which will reset absolutely all SC-VA setting to default.
Using all RPN, NRPN, Controller settings available from the SC-VA manual, on all channels.

I also added a small instruction to the Filter menu to bypass Map changes that can act like a reset.

I'm hoping you might be able to help me at least pinpoint where the following issue is originating. I'm using SCVA 1.1.12 with SAVIHost and my issue is that in some games the Rhythm Part sounds completely off.

I'm using The 7th Guest as example, as it's 'foyer' music is easily recognisable by me when it's 'wrong', but Descent for instance has the problem as well: the drums sound as the wrong instrument until I set 'Drum 1' from 'Part10' ... to 'Part10'- the value it already has by default. The annoying part of this that I need to do this after the game starts, because when I do this before it doesn't work / gets 'undone' (?).

Tried this both via DOSBox and ScummVM with the same results.

Hi,
I do not have The 7th Guest to test with so let's talk about Descent instead. What do you mean by "the drums sound as the wrong instrument" ? Do you mean that at channel 10 you hear a bad drum set (but it is still drums) or you mean that you hear a melodic instrument (most likely piano) instead of drums?
BTW, SC-VA (and for that matter real SC-55) has no drumset with the name 'Drum 1' only 'Standard 1'. And Descent does not use that most of the time but the 'TR-808' drum set. This is not a bug it was the intention of the authors to use Program 25 (TR-808 drum set) and not Program 0 (Standard 1 drum set).
So if you say that you always have to set 'Standard 1' on channel 10 it's because it is set to 'TR-808' by the game iteself and the 'TR-808' drum set is the right one.
To check what I'm talking about you should press the 'Test Music Card' option in the Setup.exe utility of Descent. And then you should see this on the interface of SC-VA:
scva_descent.png

If you do not see the same then you should try another VST Host.
1. Falcosoft Soundfont Midi Player
http://falcosoft.hu/softwares.html#midiplayer
2. VST Midi Driver
http://falcosoft.hu/softwares.html#vst_driver

@Edit:
It seems the picture is resized/compressed by the forum more than usual.
I have made a video about how Descent should work/sound with SC-VA in SC-55 mode. As a VST host I used VST Midi driver this time:
https://youtu.be/TlQKrABEyvE

Thanks for your reply!

What I'm hearing is the wrong drum sounds. It's drums, but completely different sounding types of drum. The setting I have to 'set to what it already was set to' to hackily fix the issue is this one:

scva1.png
Filename
scva1.png
File size
139.96 KiB
Views
859 views
File license
Public domain

So I just open the dropdown and click on its already selected value again after the game has started, which is something I found out works after some random trial and error.

Ok, I have Descent 1.4a, which has a different setup test track, so I can't directly compare that one. That said, the other tracks show the same instrument values as in your video and, following your exact method from that video, Descent, Doom 2, Sam and Max and others I tested sound good to my ear now. Before, I used to change to SC-55 map mode via the system menu, and I might not have always done a GS reset afterwards, so this might have been user error.

The 7th Guest though, ironically, is still not ok. When the game loads it shows a bespoke 'Loading General MIDI drivers' screen, so perhaps it's doing something 'fancy'? I'm still using SAVIHost, but as soon as I have more time I'll try your program to see if that helps matters. Do I need both downloads you linked to?

EDIT: More info, the offending part in T7G is PA 10, set to ORCHESTRA. Sounds like a timpani initially (when it's 'wrong'), after the fix it sounds like a whole bunch of different smaller percussion instruments.

EDIT 2: Maybe this has something to do with the VA initializing in GS mode while it should be GM?

Reply 728 of 742, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie

The setting I have to 'set to what it already was set to' to hackily fix the issue is this one:

Actually if the already selected rhythm part is the same as before then selecting the same part again does the same as selecting the default 'Standard 1' drum set (the same way as I had shown in the video). The only difference is that the way you do this triggers a user interface bug and the actual selected default 'Standard 1' drum set is not reflected as selected on the 'Part' section of the user interface.
So overall selecting 'Standard 1' directly at part/channel 10 is easier and less buggy.

EDIT: More info, the offending part in T7G is PA 10, set to ORCHESTRA. Sounds like a timpani initially (when it's 'wrong'), after the fix it sounds like a whole bunch of different smaller percussion instruments.

EDIT 2: Maybe this has something to do with the VA initializing in GS mode while it should be GM?

As I said I have no T7G so I cannot test it and cannot tell you either if Program 48 (Orcheastra) or Program 0 (Standard 1) is the intended/right drum set for this game's affected Midi track.
But setting SC-VA to GM mode most likely will not help since in GM mode SC-VA only disables Bank select messages. This way it only prevents variation tones to be applied.
It does not block Program change messages on any channels (including channel 10). So a Midi track can send any program change messages to drum channels as well despite the fact that in GM mode the user interface does not allow this.

@Edit:
You can prevent program changes to happen on channel 10 by using FSMP and its CTF (Capital Tone Fallback) feature. You should click Main menu -> Instruments -> Custom Patch definitions and select GM1_GM2 -> 'General Midi Level 1' for melodic and 'General Midi Level 1 Drums' for drum channels. Then you should also enable 'Use Patch info for Capital Tone Fallback' option.

fsmp_ctf1.png
Filename
fsmp_ctf1.png
File size
519.44 KiB
Views
826 views
File license
Public domain

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 729 of 742, by sndwv

User metadata
Rank Member
Rank
Member
Falcosoft wrote on 2024-01-18, 20:17:
Actually if the already selected rhythm part is the same as before then selecting the same part again does the same as selecting […]
Show full quote

The setting I have to 'set to what it already was set to' to hackily fix the issue is this one:

Actually if the already selected rhythm part is the same as before then selecting the same part again does the same as selecting the default 'Standard 1' drum set (the same way as I had shown in the video). The only difference is that the way you do this triggers a user interface bug and the actual selected default 'Standard 1' drum set is not reflected as selected on the 'Part' section of the user interface.
So overall selecting 'Standard 1' directly at part/channel 10 is easier and less buggy.

EDIT: More info, the offending part in T7G is PA 10, set to ORCHESTRA. Sounds like a timpani initially (when it's 'wrong'), after the fix it sounds like a whole bunch of different smaller percussion instruments.

EDIT 2: Maybe this has something to do with the VA initializing in GS mode while it should be GM?

As I said I have no T7G so I cannot test it and cannot tell you either if Program 48 (Orcheastra) or Program 0 (Standard 1) is the intended/right drum set for this game's affected Midi track.
But setting SC-VA to GM mode most likely will not help since in GM mode SC-VA only disables Bank select messages. This way it only prevents variation tones to be applied.
It does not block Program change messages on any channels (including channel 10). So a Midi track can send any program change messages to drum channels as well despite the fact that in GM mode the user interface does not allow this.

@Edit:
You can prevent program changes to happen on channel 10 by using FSMP and its CTF (Capital Tone Fallback) feature. You should click Main menu -> Instruments -> Custom Patch definitions and select GM1_GM2 -> 'General Midi Level 1' for melodic and 'General Midi Level 1 Drums' for drum channels. Then you should also enable 'Use Patch info for Capital Tone Fallback' option.
fsmp_ctf1.png

I tried your Midi Player, which reproduced the same behavior as SAVIHost (wrong drums). Enabling CTF as you described did indeed work, and the music then plays with the correct drums, which looks to be STANDARD and not ORCHESTRA.

I was thinking, I am constantly comparing this to my current, real SC-50 and also two officially released recordings of the soundtrack made using a SC-55 (exact model unknown) which sound the same. The SCVA however represents a later model Sound Canvas, one which I don't have for comparison, which might actually have the same behavior as SCVA in this instance.

Given the above info, do you know what the culprit might be? Either way, at least I'm happy I have a setting that works now. Does leaving the CTF settings on have any negative effect for gaming?

Reply 730 of 742, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
sndwv wrote on 2024-01-18, 22:09:

I tried your Midi Player, which reproduced the same behavior as SAVIHost (wrong drums). Enabling CTF as you described did indeed work, and the music then plays with the correct drums, which looks to be STANDARD and not ORCHESTRA.

I was thinking, I am constantly comparing this to my current, real SC-50 and also two officially released recordings of the soundtrack made using a SC-55 (exact model unknown) which sound the same. The SCVA however represents a later model Sound Canvas, one which I don't have for comparison, which might actually have the same behavior as SCVA in this instance.

Given the above info, do you know what the culprit might be? Either way, at least I'm happy I have a setting that works now. Does leaving the CTF settings on have any negative effect for gaming?

Actually I have an idea how you can determine what the exact problem is.
1. When The 7th Guest's affected Midi track is started you should check if on SC-VA's user interface the 'GS led' switched to the off state or not.
If both the GS led and GM2 led are in the off state on the interface then it means SC-VA is switched to GM mode by the game (as you described the game notifies you about some kind of GM reset processing).
2. On your real SC-50 you should test if channel 10 (drum channel ) accepts program change messages in GM mode or not.
You can use my Midi player for testing:
a. In Device Settings dialog select the Midi Out port where your real SC-50 is attached to.
b. On the player's user interface select channel 10 (as active channel).
c. Change the program to 0 (Standard 1) and test with the virtual piano and your mouse the different drum notes. Then change to program 48 (Orchestra) and do the same. You should notice and memorize the difference of the sound of some notes.
d. Then on the right hand side of the player right click the 'Reset' button and select GM then press the reset button. This should switch your SC-50 to GM mode.
e. Try the same tests as described in point c.

Important: during the tests make sure that Midi Player's CTF option is NOT enabled.
If you experience that your real SC-50 when switched to GM mode actually has the same drum notes both in case of Program 0 and Program 48 then the root of the problem is found.

3. Even some GM games often use GS defined drum sets. E.g Duke Nukem 3D uses Program 16 (Power kit) and Warcraft 2 uses Program 48 (Orchestra). These games are negatively affected by the above described CTF settings. You should either disable CTF or (even better) you should change the instrument definition to SC-VA SC-55 mode in order to get good overall results with DOS games.
Midi Player supports configuration presets so you can define and save 2 presets: one with GM mode CTF and one with GS/SC-55 CTF settings.
You can change between configuration presets easily many ways (hot keys, shortcuts, SySex messages etc.)
Phil has a good video about this:
https://youtu.be/zRyPjvbDkvg?si=ZBjywmo8vgW90vXA&t=725

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 732 of 742, by Spikey

User metadata
Rank Oldbie
Rank
Oldbie
sndwv wrote on 2024-01-18, 22:09:
I tried your Midi Player, which reproduced the same behavior as SAVIHost (wrong drums). Enabling CTF as you described did indeed […]
Show full quote
Falcosoft wrote on 2024-01-18, 20:17:
Actually if the already selected rhythm part is the same as before then selecting the same part again does the same as selecting […]
Show full quote

The setting I have to 'set to what it already was set to' to hackily fix the issue is this one:

Actually if the already selected rhythm part is the same as before then selecting the same part again does the same as selecting the default 'Standard 1' drum set (the same way as I had shown in the video). The only difference is that the way you do this triggers a user interface bug and the actual selected default 'Standard 1' drum set is not reflected as selected on the 'Part' section of the user interface.
So overall selecting 'Standard 1' directly at part/channel 10 is easier and less buggy.

EDIT: More info, the offending part in T7G is PA 10, set to ORCHESTRA. Sounds like a timpani initially (when it's 'wrong'), after the fix it sounds like a whole bunch of different smaller percussion instruments.

EDIT 2: Maybe this has something to do with the VA initializing in GS mode while it should be GM?

As I said I have no T7G so I cannot test it and cannot tell you either if Program 48 (Orcheastra) or Program 0 (Standard 1) is the intended/right drum set for this game's affected Midi track.
But setting SC-VA to GM mode most likely will not help since in GM mode SC-VA only disables Bank select messages. This way it only prevents variation tones to be applied.
It does not block Program change messages on any channels (including channel 10). So a Midi track can send any program change messages to drum channels as well despite the fact that in GM mode the user interface does not allow this.

@Edit:
You can prevent program changes to happen on channel 10 by using FSMP and its CTF (Capital Tone Fallback) feature. You should click Main menu -> Instruments -> Custom Patch definitions and select GM1_GM2 -> 'General Midi Level 1' for melodic and 'General Midi Level 1 Drums' for drum channels. Then you should also enable 'Use Patch info for Capital Tone Fallback' option.
fsmp_ctf1.png

I tried your Midi Player, which reproduced the same behavior as SAVIHost (wrong drums). Enabling CTF as you described did indeed work, and the music then plays with the correct drums, which looks to be STANDARD and not ORCHESTRA.

I was thinking, I am constantly comparing this to my current, real SC-50 and also two officially released recordings of the soundtrack made using a SC-55 (exact model unknown) which sound the same. The SCVA however represents a later model Sound Canvas, one which I don't have for comparison, which might actually have the same behavior as SCVA in this instance.

Given the above info, do you know what the culprit might be? Either way, at least I'm happy I have a setting that works now. Does leaving the CTF settings on have any negative effect for gaming?

This came up in a Discord I'm in not too long ago, and I researched the files myself. Something like some piece of T7G music lacks a patch change on the drum channel, maybe one or two specific tracks in the whole game only. One is early, like the theme or menu, setting it to ORCHESTRA and then it doesn't get reset (maybe for the foyer?). So depending on the sequence of tracks you access in game, some will play with the wrong drumkit until it gets the correct patch change message. It should resolve almost immediately once you load a savegame though.

TL;DR - it's a T7G bug, not a SCVA bug.

Reply 733 of 742, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Spikey wrote on 2024-01-20, 06:01:

This came up in a Discord I'm in not too long ago, and I researched the files myself. Something like some piece of T7G music lacks a patch change on the drum channel, maybe one or two specific tracks in the whole game only. One is early, like the theme or menu, setting it to ORCHESTRA and then it doesn't get reset (maybe for the foyer?). So depending on the sequence of tracks you access in game, some will play with the wrong drumkit until it gets the correct patch change message. It should resolve almost immediately once you load a savegame though.

TL;DR - it's a T7G bug, not a SCVA bug.

This sounds plausible but it is still an interesting question why the problematic sequence of tracks causes problem for SC-VA but not for a real SC-50. Seemingly SC-VA also would like to prevent selecting other programs on channel 10 in GM mode since through the user interface you cannot do this (only GM defined Standard drum set is available in GM mode). But at the same time it still accepts program change messages on channel 10 in GM mode from Midi input. I would at least call it a "light bug" (the interface and the implementation is not in synch).

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 734 of 742, by sndwv

User metadata
Rank Member
Rank
Member
Spikey wrote on 2024-01-20, 06:01:
sndwv wrote on 2024-01-18, 22:09:
I tried your Midi Player, which reproduced the same behavior as SAVIHost (wrong drums). Enabling CTF as you described did indeed […]
Show full quote
Falcosoft wrote on 2024-01-18, 20:17:
Actually if the already selected rhythm part is the same as before then selecting the same part again does the same as selecting […]
Show full quote

Actually if the already selected rhythm part is the same as before then selecting the same part again does the same as selecting the default 'Standard 1' drum set (the same way as I had shown in the video). The only difference is that the way you do this triggers a user interface bug and the actual selected default 'Standard 1' drum set is not reflected as selected on the 'Part' section of the user interface.
So overall selecting 'Standard 1' directly at part/channel 10 is easier and less buggy.

As I said I have no T7G so I cannot test it and cannot tell you either if Program 48 (Orcheastra) or Program 0 (Standard 1) is the intended/right drum set for this game's affected Midi track.
But setting SC-VA to GM mode most likely will not help since in GM mode SC-VA only disables Bank select messages. This way it only prevents variation tones to be applied.
It does not block Program change messages on any channels (including channel 10). So a Midi track can send any program change messages to drum channels as well despite the fact that in GM mode the user interface does not allow this.

@Edit:
You can prevent program changes to happen on channel 10 by using FSMP and its CTF (Capital Tone Fallback) feature. You should click Main menu -> Instruments -> Custom Patch definitions and select GM1_GM2 -> 'General Midi Level 1' for melodic and 'General Midi Level 1 Drums' for drum channels. Then you should also enable 'Use Patch info for Capital Tone Fallback' option.
fsmp_ctf1.png

I tried your Midi Player, which reproduced the same behavior as SAVIHost (wrong drums). Enabling CTF as you described did indeed work, and the music then plays with the correct drums, which looks to be STANDARD and not ORCHESTRA.

I was thinking, I am constantly comparing this to my current, real SC-50 and also two officially released recordings of the soundtrack made using a SC-55 (exact model unknown) which sound the same. The SCVA however represents a later model Sound Canvas, one which I don't have for comparison, which might actually have the same behavior as SCVA in this instance.

Given the above info, do you know what the culprit might be? Either way, at least I'm happy I have a setting that works now. Does leaving the CTF settings on have any negative effect for gaming?

This came up in a Discord I'm in not too long ago, and I researched the files myself. Something like some piece of T7G music lacks a patch change on the drum channel, maybe one or two specific tracks in the whole game only. One is early, like the theme or menu, setting it to ORCHESTRA and then it doesn't get reset (maybe for the foyer?). So depending on the sequence of tracks you access in game, some will play with the wrong drumkit until it gets the correct patch change message. It should resolve almost immediately once you load a savegame though.

TL;DR - it's a T7G bug, not a SCVA bug.

The problematic foyer track is called 'Ghost of Bo' by the way.

That said, for this specific one at least I doubt it's the sequence. I am now using ScummVM for further testing, and I am jumping straight from the frontend to a savegame in the foyer, with no other tracks playing in between. The 'loading GM drivers' screen is still shown before though.

Reply 735 of 742, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
sndwv wrote on 2024-01-20, 06:57:

That said, for this specific one at least I doubt it's the sequence. I am now using ScummVM for further testing, and I am jumping straight from the frontend to a savegame in the foyer, with no other tracks playing in between. The 'loading GM drivers' screen is still shown before though.

And have you already done the above described GM mode program change test on channel 10 with your real sc-50?
We would be more clever about the reason of difference with this info.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 736 of 742, by sndwv

User metadata
Rank Member
Rank
Member
Falcosoft wrote on 2024-01-20, 07:02:
sndwv wrote on 2024-01-20, 06:57:

That said, for this specific one at least I doubt it's the sequence. I am now using ScummVM for further testing, and I am jumping straight from the frontend to a savegame in the foyer, with no other tracks playing in between. The 'loading GM drivers' screen is still shown before though.

And have you already done the above described GM mode program change test on channel 10 with your real sc-50?
We would be more clever about the reason of difference with this info.

No, I won't be able to try that until after the weekend, but I will.

Reply 738 of 742, by sndwv

User metadata
Rank Member
Rank
Member
Falcosoft wrote on 2024-01-19, 04:27:
Actually I have an idea how you can determine what the exact problem is. 1. When The 7th Guest's affected Midi track is started […]
Show full quote
sndwv wrote on 2024-01-18, 22:09:

I tried your Midi Player, which reproduced the same behavior as SAVIHost (wrong drums). Enabling CTF as you described did indeed work, and the music then plays with the correct drums, which looks to be STANDARD and not ORCHESTRA.

I was thinking, I am constantly comparing this to my current, real SC-50 and also two officially released recordings of the soundtrack made using a SC-55 (exact model unknown) which sound the same. The SCVA however represents a later model Sound Canvas, one which I don't have for comparison, which might actually have the same behavior as SCVA in this instance.

Given the above info, do you know what the culprit might be? Either way, at least I'm happy I have a setting that works now. Does leaving the CTF settings on have any negative effect for gaming?

Actually I have an idea how you can determine what the exact problem is.
1. When The 7th Guest's affected Midi track is started you should check if on SC-VA's user interface the 'GS led' switched to the off state or not.
If both the GS led and GM2 led are in the off state on the interface then it means SC-VA is switched to GM mode by the game (as you described the game notifies you about some kind of GM reset processing).
2. On your real SC-50 you should test if channel 10 (drum channel ) accepts program change messages in GM mode or not.
You can use my Midi player for testing:
a. In Device Settings dialog select the Midi Out port where your real SC-50 is attached to.
b. On the player's user interface select channel 10 (as active channel).
c. Change the program to 0 (Standard 1) and test with the virtual piano and your mouse the different drum notes. Then change to program 48 (Orchestra) and do the same. You should notice and memorize the difference of the sound of some notes.
d. Then on the right hand side of the player right click the 'Reset' button and select GM then press the reset button. This should switch your SC-50 to GM mode.
e. Try the same tests as described in point c.

Important: during the tests make sure that Midi Player's CTF option is NOT enabled.
If you experience that your real SC-50 when switched to GM mode actually has the same drum notes both in case of Program 0 and Program 48 then the root of the problem is found.

3. Even some GM games often use GS defined drum sets. E.g Duke Nukem 3D uses Program 16 (Power kit) and Warcraft 2 uses Program 48 (Orchestra). These games are negatively affected by the above described CTF settings. You should either disable CTF or (even better) you should change the instrument definition to SC-VA SC-55 mode in order to get good overall results with DOS games.
Midi Player supports configuration presets so you can define and save 2 presets: one with GM mode CTF and one with GS/SC-55 CTF settings.
You can change between configuration presets easily many ways (hot keys, shortcuts, SySex messages etc.)
Phil has a good video about this:
https://youtu.be/zRyPjvbDkvg?si=ZBjywmo8vgW90vXA&t=725

Ok, finally, I did the tests. Spoiler: disappointing conclusion ahead...

1. So, on the VA, the GS LED stays lit red all the time, during GM driver loading and following gameplay.
2. Did all the tests, and in both GS and GM mode my SC-50 switches drum tones. So neither mode prevents switching drum sets.

But now: I tested the game again with my actual hardware, and... the behavior was exactly the same as with the VA. Even though the drum sounds ARE slightly different (I perceive them as 'softer' on real hardware), that could be slight differences between (the module modelled by) the software and my own SC-50, I do think it are the same drum notes.

So what's going one here? Provided I am not just plain misremembering, I think there might be different versions of the game out there. It is very possible I originally used my own disc version as source, and now I am using one of the digitally distributed versions. I will look further into trying different versions of the game to see if that brings anything to light.

I CAN confirm the official recordings of Ghost of Bo (on the 7/11 CD soundtrack and the digitally released Come Back! album- both audibly different recordings), alledgedly recorded on a SC-55 ARE different drum sounds, and are as I remember them orginally being.

Thanks for taking the time to help so far, I hope I find a solution and did not waste your time chasing a non-existing issue.

Reply 739 of 742, by sndwv

User metadata
Rank Member
Rank
Member

I sent an e-mail to George Sanger (the actual Fat Man) to ask about the T7G MIDI situation. He confirmed that the music was originally composed for SC-55 and the official soundtrack was recorded using a SC-55 Mk. II with help from the community. He was also quick to point out the problem with the ORCHESTRA kit being loaded in stead of the STANDARD 1 (rock) drum kit, and that is was likely either a fault in the game, or his setup files (the 'loading GM drivers'-screen) not being loaded properly.

The fact that ScummVM and DOSBox have the wrong drum sounds on the 'Ghost of Bo' (and also 'Bedspread', I noticed) tracks on both the SCVA and my SC-50 lead me to the following:

- There are missing program changes in these tracks (I'd say unlikely, because someone must have noticed this before: it is THE intended setup!).
- There is a bug in the game's MIDI playback, perhaps either fixed or introduced by a patch.
- ScummVM AND DOSBox are both doing something different than what real DOS with the proper drivers would.
- The game only works properly specifically with a Roland SC-55 Mk. II due to whatever specific behavioral difference between it and it's SC peers.
- It was always like this, for everyone, and I am misremembering.

Would still like to figure out what is the case, but perhaps this should continue in a different subforum?