Does BVM work with BlitzMax?

BlitzMax Forums/BlitzMax Programming/Does BVM work with BlitzMax?

JoshK(Posted 2005) [#1]
I don't care if the BVM script doesn't support all the features of the bmax language, and I understand the commands and libraries will be different, but will the BVM interpreter still work with BMAX?


Koriolis(Posted 2005) [#2]
Not BVM 1.
But I'm currently working on the port of the yet to be released BVM 2 to BlitzMax.


Amon(Posted 2005) [#3]
Will there be an upgrade price for existing users of BVM?


Koriolis(Posted 2005) [#4]
Every registered BVM 1 user will get a free upgrade for BVM 2.


Amon(Posted 2005) [#5]
Thats very Generous of you, Thanks. :)


Kuron(Posted 2005) [#6]
Koriolis is da man!!


JoshK(Posted 2005) [#7]
I'd rather pay and have it be done sooner. Free usually means you are going for the lowest common denominator.


Rimmsy(Posted 2005) [#8]
Very generous indeed! I loved using BVM with blitz3d and was wondering when 2 for max would be out. cheers, koriolis!


Koriolis(Posted 2005) [#9]
@Halo: common denominator of what?
Anyway, chances are much more people could be interested in BVM 2 than in BVM 1, so there not much point in making existing users pay for the upgrade when I expect BVM 2 to have much more users (and remember I'm not doing it for money anyway).

Also, don't rely on this "usually".
Usually, people are not mad enough to work hard on something that is long, unprofitable and to some extent frustrating, but I did BVM 1 anyway.

@everyone: thanks for the support, that's appreciated :)


Hotcakes(Posted 2005) [#10]
I also want to pay for BVM 2 and if you do decide it's free when the time comes, I will be buying a second copy of BVM 1 anyway.


Koriolis(Posted 2005) [#11]
Well, *that*, is generous :)


Rimmsy(Posted 2005) [#12]
I'll be buying another copy too, you deserve to be paid for the excellent work you've done.


JoshK(Posted 2006) [#13]
It looks like BVM should work okay with BMX...it won't have all the language features of BMX, but I only need it to allow users to make procedural calls to my engine functions.

It would be nice if someone could set this up, using LoadLibraryA() and GetProcAddress(). Otherwise, I'll get to it in a couple of weeks.


Koriolis(Posted 2006) [#14]
Don't waste your time doing that. Don't forget that BVM generates the invoker code for you, I don't imagine you'd like to convert the result by hand from BlitzBasic to BlitzMax.
The good news is, the open beta for BVM 2 is finally going to happen soon (at last, I know). Until now I wouldn't have adviced anyone to hold his breath, but now waiting a bit is really the mose sensible thing to do. Or if you really can't wait, then I may consider sending you a build before the beta. But then the deal is to give me some usefull feedback.


JoshK(Posted 2006) [#15]
The invoker is where it goes like this, right?:

case 1


JoshK(Posted 2006) [#16]
The invoker is where it goes like this, right?:

case 1 : pushint() : PushInt() : Dosomething(a,b) : popint()
case 2 : pushint() : PushInt() : Dosomething(a,b) : popint()
case 3 : pushint() : PushInt() : Dosomething(a,b) : popint()
case 4 : pushint() : PushInt() : Dosomething(a,b) : popint()
case 5 : pushint() : PushInt() : Dosomething(a,b) : popint()


Koriolis(Posted 2006) [#17]
Yes


JoshK(Posted 2006) [#18]
That part I will have to do by hand anyways. I'm only interested in opening up my own engine's functionality.

I email you at the address you have listed here.


Koriolis(Posted 2006) [#19]
Well, even then, this part is normally generated. You simply list the exposed functions in a special file (the command set) and the invoker code is generated for you. But sure, converting that to BlitzMax is *doable*. I still won't recommend it though.
I answerd to your mail check your box.