Can you create .dll files with BlitzMax?

BlitzMax Forums/BlitzMax Programming/Can you create .dll files with BlitzMax?

karmacomposer(Posted 2009) [#1]
I am developing virtual instruments and was just wondering if BlitzMax could be used to create them.

There are libraries I can buy to use with various programming languages (such as visual studio, .net and delphi).

X-code on the Mac can also be used to create virtual instruments, so if BlitzMax can be used, it makes a PERFECT cross platform solution.

I am just wondering if I can code vst effects and instruments with BlitzMax.

Thanks for your help.

Mike


plash(Posted 2009) [#2]
You can make linked libraries on Windows, and Windows alone.
Not sure how the whole VST thing works, so I can't say for sure that you'll be able to do it in BlitzMax, but it's likely.


karmacomposer(Posted 2009) [#3]
OK, so besides executeables, you can indeed compile to .dll files.

GREAT!

Thanks for your help.

Mike


skidracer(Posted 2009) [#4]
If ASIO and VST are both proprietry formats licensed by steinberg I would say no, you would be on your own.

IMHO it would be far simpler to have lightweight dll invoke a blitzmax app using _stdin and _stdout for all communications. There is code in pub.freeprocess that you could copy into a simple codeblocks VST project that is available on the net to build your bridge.


karmacomposer(Posted 2009) [#5]
I assume BM can import wav files, however, can you create multisample (files with samples embedded inside) files with it?

Mike


skidracer(Posted 2009) [#6]
Are you talking about a file format or the ability to embed all your media into your exe/dll?


karmacomposer(Posted 2009) [#7]
skidracer,

Both. Either a file format (sample.mff where mff = my file format - which is comprised of many samples)

or

embedded into the vsti - but that could mean 2 and 3GB instruments (I don't make effects, although I usually make vsti with reverb, delay and so on. I have been using Synthedit and Synthmaker, but need to go cross platform and they are not)

As per your previous reply, I do not understand - about the lightweight dll invoking a blitzmax app.

I truly appreciate the help, but could you explain it to me a diffierent way. I am not clear at all on what you describe - although it sounds wonderful.

Thanks for your help.

Mike


skidracer(Posted 2009) [#8]
It was suppose to sound like a lot of hard work. Anything on non windows platforms quadruple that.

Did you really buy BlitzMax for this purpose?



Somebody will be along shortly to prove me wrong...


karmacomposer(Posted 2009) [#9]
No. I bought BlitzMax to create games with the Leadwerks engine, actually.

However, it seems to have all the right abilities and would be easier to program than c++ or Delphi (although Visual Basic .Net would be my next choice).

Mike


ziggy(Posted 2009) [#10]
You can create VST plugins if you wrap the existing Public Domain C source code available in the steinberg website (I don't have the link here). It's not an easy task but can be done or, you can compile the C code and 'extern' any functions you want to blitzmax. Some 'wrapper' experts like Brucey may be able to give you some advice on how to wrap properly libraries and wich things to get in mind on that purpose.


karmacomposer(Posted 2009) [#11]
One question. How fast would it be? Is this interpreted or compiled?

Mike


karmacomposer(Posted 2009) [#12]
Actually, another question. How does one create a wrapper for C source code?

Mike


JoshK(Posted 2009) [#13]
You generally don't need to:

Import "mycode.c"



Brucey(Posted 2009) [#14]
How fast would it be? Is this interpreted or compiled?

It's compiled. It is reasonably fast.