Using Assembler code outside Flowstone

For general discussion related FlowStone
Post Reply
Perfect Human Interface
Posts: 643
Joined: Sun Mar 10, 2013 7:32 pm

Using Assembler code outside Flowstone

Post by Perfect Human Interface »

Hi all. If one were to go about recreating a Flowstone plugin in another programming language, say C++, how feasible would it be to copy assembly language code right out of FS to reuse it?
Youlean
Posts: 176
Joined: Mon Jun 09, 2014 2:49 pm

Re: Using Assembler code outside Flowstone

Post by Youlean »

It will be very easy to do this, but there is chance that it woudnt work on x64...
Perfect Human Interface
Posts: 643
Joined: Sun Mar 10, 2013 7:32 pm

Re: Using Assembler code outside Flowstone

Post by Perfect Human Interface »

Youlean wrote:It will be very easy to do this, but there is chance that it woudnt work on x64...


Do you mean that the assembly code may potentially need to be modified for compatibility?
tulamide
Posts: 2714
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: Using Assembler code outside Flowstone

Post by tulamide »

Assembler is very close to machine language, which means you need different codes for each platform you're exporting to (32bit Windows, 64bit Windows, Mac, Android, etc.)
"There lies the dog buried" (German saying translated literally)
Perfect Human Interface
Posts: 643
Joined: Sun Mar 10, 2013 7:32 pm

Re: Using Assembler code outside Flowstone

Post by Perfect Human Interface »

tulamide wrote:Assembler is very close to machine language, which means you need different codes for each platform you're exporting to (32bit Windows, 64bit Windows, Mac, Android, etc.)

I see. Are we talking generally just replacing a few bits or a significant rewrite, or impossible to say?
tulamide
Posts: 2714
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: Using Assembler code outside Flowstone

Post by tulamide »

This may be answered by Martin, Exo, Myco and the like.

What I can say is that it the opcodes vary, as well as memory addressing and bit-depth of value types.
"There lies the dog buried" (German saying translated literally)
User avatar
Nubeat7
Posts: 1347
Joined: Sat Apr 14, 2012 9:59 am
Location: Vienna
Contact:

Re: Using Assembler code outside Flowstone

Post by Nubeat7 »

depending on how you are doing it in c++, i would work with crossplattform enviroment, like juce or WDL, additionally you will maybe use specialized libraries for dsp..

these are optimized frameworks and libraries, so normally you don't need any assembler, all in all it will be easier to rewrite the codes, better to write clean and optimized c++ code then coding around corners to fit in existing assembler code.. anyways when you wrote your plugins in assembler you will have the dsp codes for it too which is really easy to rewrite in c++
Perfect Human Interface
Posts: 643
Joined: Sun Mar 10, 2013 7:32 pm

Re: Using Assembler code outside Flowstone

Post by Perfect Human Interface »

Thanks for all the responses!
TheOm
Posts: 103
Joined: Tue Jan 28, 2014 7:35 pm
Location: Germany

Re: Using Assembler code outside Flowstone

Post by TheOm »

I would recommend to rewrite your assembler into intrinsics.
This should usually be a very straighforward conversion.
Intrinsics are compiler-specific though.
Post Reply