Page 1 of 1

[SOLVED] Component. from where?

Posted: Mon Oct 07, 2013 8:09 pm
by Dave_Scream
Hello.
Im trying to understand the structure of Flowstone.

I downloaded FL Studio example project with some scheme for SynthMaker (Flowstone 3.0.2 builded in FL Studio).

In this example author use SetPort component for reassigning midi port in midi events.
Image

it is useful for me, so found it and used it in FL Studio FlowStone version.
here it is.
Image

After that. I tryed to use standalone FlowStone version. But I didnt find SetPort component in standalone version:
Image

then I saved FL Studio FlowStone project to .fsm and opened it in Standalone FlowStone - this SetPort component appeared in sheme.


Also I want to say that SetPort is primitive - I cant go into it. So it is hardcoded native component.

So interest picture. Search cant find any SetPort component, but scheme have it
Image

My question is - from where SetPort appeared? and how it works? Maybe .fsm files can contain native hardcoded components? Can I export them from .fsm or import them somehow in my library for later use?
Image

Re: Component. from where?

Posted: Mon Oct 07, 2013 9:39 pm
by trogluddite
Wow - I think you just found the first FS easter egg! :o

I remember years back that some folks were messing around "hacking" the binary code of SynthMaker project files, and also found some other primitives that were not in the toolbox. Sadly, nothing that was good to use.

The code for primitives seems to be inside the FS application itself - the schematic file then just contains "ID codes" for the modules that are used inside. In fact, there are many primitives hidden from the toolbox - some can be revealed using Options->Advanced->Show R&D, but some cannot (e.g. 'obsolete' components from old SM versions, sometimes they load with a special "replace me" highlight).

Because FL has its own special way to handle Audio/MIDI, I guess the lists of "visible" primitives must be different - so it looks like this one got missed out from the 'standalone' list.

You probably can put it inside your toolbox - but you would have to "wrap" it inside a grey module first, to make FS see it as a "user" module. There is no CPU penalty for 'module boxes' and connectors, so it there would be no "harm" to the primitive. If 'module wrapping' works OK, it would be nice if you could post it here - there'd be quite a few people who would find it useful, I'm sure.

Re: Component. from where?

Posted: Tue Oct 08, 2013 3:49 pm
by Dave_Scream
trogluddite wrote:The code for primitives seems to be inside the FS application itself - the schematic file then just contains "ID codes" for the modules that are used inside.

Thank you =) now I understand that .fsm contain only IDs. SetPort element was deprecated and kicked off from plugins, even from R&D list. But maybe for compatibility developers did not wiped out this element totally.

I will make module as you said =)