Page 1 of 2
Legal questions...
Posted: Mon Nov 28, 2005 3:58 pm
by ThirteenYearOld
Is it legal to create DLLs which use Engine3d.dll (Ogre3D) for use in other programming languages? If so - could I just copy and distribute engine3d.dll freely?
Posted: Mon Nov 28, 2005 4:33 pm
by Kale
Simple wrappers to Purebasic commands are strictly forbidden by the PB license and re-distributing the Engine3D.dll im not so sure about because the engine itself in under an open source License but im betting because its been compiled by Fred you can't. If you were to download the Engine3D.dll sources and build your own dll then im guessing that would be fine. But wrapping PB commands to use the Engine3D.dll is still not legal!
Posted: Mon Nov 28, 2005 4:39 pm
by ThirteenYearOld
But in that case, why DLL creation in PB? If you can't use PB commands in them, you don't even have to use DLLs, you can just call Windows API...
Posted: Mon Nov 28, 2005 5:39 pm
by Pantcho!!
DLL are essentiel when you have lets say a code that does somthing unlrelated to any app you created and you want to add it to the application you are working on but optimizing and adding it to the source requires meny modifications and so on so DLL are handy to be called as a diffrent process.
Posted: Mon Nov 28, 2005 5:39 pm
by Kale
DLLs are fine to create a distribute written in Purebasic.
What you are not allowed to do is create wrappers to call each Purebasic command 1 at a time such as this:
Code: Select all
ProcedureDLL MyMessageBox(Text.s)
MessageBox("Message", Text)
EndProcedure
This is just a wrapper to use the built-in Purebasic command 'MessageBox()' in another language and is NOT legal. Otherwise you could just wrap the whole language 1 command at a time and distribute it for use in another language, totally ripping off all of Fred's hard work of writting each command himself.
If you were to use the WinAPI to display the message box in a procedure then that is fine to distribute because you are dealing with the core API and not a Purebasic high level command.
Posted: Mon Nov 28, 2005 6:08 pm
by ThirteenYearOld
But I'm not trying to rip Fred's hard work! I only want to make a gateway into Ogre3D engine for a little programming language called Liberty BASIC. But if you guys mind that, it's OK, I won't do it.
I'll probably compile something with the original Ogre 3D SDK.
Wish me luck

.
Posted: Mon Nov 28, 2005 6:09 pm
by Truth_Seeker
AFAIK, MessageBox() is the winapi and MessageRequester() is purebasic.
Posted: Mon Nov 28, 2005 6:15 pm
by Kale
Truth_Seeker wrote:AFAIK, MessageBox() is the winapi and MessageRequester() is purebasic.
True, i was just typing from memory.

Posted: Mon Nov 28, 2005 6:21 pm
by Kale
ThirteenYearOld wrote:But I'm not trying to rip Fred's hard work! I only want to make a gateway into Ogre3D engine for a little programming language called Liberty BASIC. But if you guys mind that, it's OK, I won't do it.
FFS, its not us minding you do it, the fact is its against the Purebasic license!
ThirteenYearOld wrote:I'll probably compile something with the original Ogre 3D SDK.
Thats why its open source!
Have you tried looking at the Purebasic Ogre sources:
http://www.purebasic.com/OgreSources.zip
Posted: Mon Nov 28, 2005 6:23 pm
by ThirteenYearOld
Woah! Thanks a lot! I might even get this work!

Posted: Mon Nov 28, 2005 9:14 pm
by Brice Manuel
This is just a wrapper to use the built-in Purebasic command 'MessageBox()'
Which is itself a wrapper for an API function of Windows

Posted: Mon Nov 28, 2005 9:24 pm
by Truth_Seeker
Brice Manuel wrote:This is just a wrapper to use the built-in Purebasic command 'MessageBox()'
Which is itself a wrapper for an API function of Windows

Which is a wrapper for the code behind MessageBox().

Posted: Mon Nov 28, 2005 9:45 pm
by dracflamloc
ThirteenYearOld wrote:But I'm not trying to rip Fred's hard work! I only want to make a gateway into Ogre3D engine for a little programming language called Liberty BASIC. But if you guys mind that, it's OK, I won't do it.
I'll probably compile something with the original Ogre 3D SDK.
Wish me luck

.
You can use Engine3d.dll all you want since its under the LGPL. But why create a wrapper DLL for another DLL thats already easy and wrapping Ogre3d?
Just take the Engine3d.dll file/source, and use that in the new language. No need for PB at all in this case.
Posted: Tue Nov 29, 2005 2:10 pm
by ThirteenYearOld
And by that you mean that PB actually uses that DLL? Ok, then it's all sorted out. I shall try to call the Engine3D functions from Liberty BASIC.
Thanks!

Posted: Tue Nov 29, 2005 4:10 pm
by Truth_Seeker
Hmm I thought that dll was created by Fred for purebasic.