Pascal External SDK? -- Now Available
Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller
-
- VIP Livecode Opensource Backer
- Posts: 42
- Joined: Wed Mar 04, 2009 6:08 am
- Location: Sydney, Australia
- Contact:
Pascal External SDK? -- Now Available
Would anyone like to write externals in Pascal or a cross-platform Delphi variant? The standard recipe for externals is currently C or C++ only. And an external can be written in another language and then a thin C/C++ "wrapper" written to access it, but can it be done natively using Pascal only? We don't yet know the answer to that question. In theory it is possible, but in practice will name mangling or other linking issues make it impossible to achieve?
On the RunRevPlanet home page there is a poll that could result in a new free resource – so if you are interested, please visit and vote.
If there is interest I will attempt it, and if successful the resulting External SDK based on the cross-platform Lazarus/Free Pascal tool will be released as a free resource for the Revolution community.
I like coding in Pascal and so being able to make externals with it sounds cool, but such a project won't happen if no-one else would be interested in using it. Feedback here, or doing the poll at RunRevPlanet will be helpful. Thanks.
---------- UPDATE ----------
I now have a recipe for getting the Free Pascal Compiler to generate dynamic libraries that are compatible with LiveCode Externals. The hardest part of the process was translating 2 files (external.c and eternal.h) from the existing C based Externals Library to the Pascal language. Getting the right combination of "var" parameters and the direct passing of data structures vs passing pointers to data structures in the Pascal code was an interesting process. Then there was the issue of getting the getXtable export to be recognised by LiveCode.
The successful recipe is complete, and works on Linux, Mac and Windows. It is now bundled up as the RunRevPlanet Pascal SDK which you can get from:
http://www.runrevplanet.com/free-downloads.html
On the RunRevPlanet home page there is a poll that could result in a new free resource – so if you are interested, please visit and vote.
If there is interest I will attempt it, and if successful the resulting External SDK based on the cross-platform Lazarus/Free Pascal tool will be released as a free resource for the Revolution community.
I like coding in Pascal and so being able to make externals with it sounds cool, but such a project won't happen if no-one else would be interested in using it. Feedback here, or doing the poll at RunRevPlanet will be helpful. Thanks.
---------- UPDATE ----------
I now have a recipe for getting the Free Pascal Compiler to generate dynamic libraries that are compatible with LiveCode Externals. The hardest part of the process was translating 2 files (external.c and eternal.h) from the existing C based Externals Library to the Pascal language. Getting the right combination of "var" parameters and the direct passing of data structures vs passing pointers to data structures in the Pascal code was an interesting process. Then there was the issue of getting the getXtable export to be recognised by LiveCode.
The successful recipe is complete, and works on Linux, Mac and Windows. It is now bundled up as the RunRevPlanet Pascal SDK which you can get from:
http://www.runrevplanet.com/free-downloads.html
RunRevPlanet.com
Components, Libraries, Tools and Resources for LiveCode
http://www.runrevplanet.com/
Components, Libraries, Tools and Resources for LiveCode
http://www.runrevplanet.com/
-
- Posts: 3
- Joined: Sat Jun 15, 2013 5:31 pm
Re: Pascal External SDK? -- Now Available
Thank you for this great piece of software.
It work very well pushing/pulling strings, but there is a way to DLL open a window, like a canvas to OpenGL use?
It work very well pushing/pulling strings, but there is a way to DLL open a window, like a canvas to OpenGL use?
Re: Pascal External SDK? -- Now Available
I realize this was revived accidently, and didn't get much love at the time, but I sure wish I had been around back then, pascal being one of my favorite languages.
Apparently the original site was changed and then possibly the OP stopped working in Lc![Confused :?](./images/smilies/icon_confused.gif)
Does anyone have any memories / files / information from this project?
Apparently the original site was changed and then possibly the OP stopped working in Lc
![Confused :?](./images/smilies/icon_confused.gif)
Does anyone have any memories / files / information from this project?
![Image](https://s7.postimg.cc/v87si6xuj/Forum_Signature.png)
Re: Pascal External SDK? -- Now Available
Maybe I have it in my backup, but before looking
Did you ask Scott for a copy?
Did you ask Scott for a copy?
Re: Pascal External SDK? -- Now Available
Hey Al,
I didn't, since I don't know who Scott is
But I will now, as I see some contact information for smpcs (just hope it is valid info!).
Thank you for the suggestion!
I didn't, since I don't know who Scott is
![Embarassed :oops:](./images/smilies/icon_redface.gif)
Thank you for the suggestion!
![Image](https://s7.postimg.cc/v87si6xuj/Forum_Signature.png)
Re: Pascal External SDK? -- Now Available
Well, I guess he doesn't visit the boards much anymore, so I sent an email to the only address I could find for him. Well see if I don't wind up in the junk or spam filter ![Very Happy :D](./images/smilies/icon_biggrin.gif)
![Very Happy :D](./images/smilies/icon_biggrin.gif)
![Image](https://s7.postimg.cc/v87si6xuj/Forum_Signature.png)
Re: Pascal External SDK? -- Now Available
Keep us updated about Scott's answer.
Al
Al
Re: Pascal External SDK? -- Now Available
If I get one (if he doesn't show up here hisself), you know I will ![Wink :wink:](./images/smilies/icon_wink.gif)
![Wink :wink:](./images/smilies/icon_wink.gif)
![Image](https://s7.postimg.cc/v87si6xuj/Forum_Signature.png)
Re: Pascal External SDK? -- Now Available
I know it worked. I know I reworked it (reinstalling pascal mergubbins) to work within the last 18 months. When I get back home and get some time (like in 2027 or thereabouts) I will reinvestigate and report, if there hasn't been any further news in the meantime. (I was playing with it on my older laptop with a broken hard disk so...)
Re: Pascal External SDK? -- Now Available
How well I know the feeling
![Rolling Eyes :roll:](./images/smilies/icon_rolleyes.gif)
![Image](https://s7.postimg.cc/v87si6xuj/Forum_Signature.png)
Re: Pascal External SDK? -- Now Available
Wow, he answered right away *and* still had a copy of the .zip!
Enjoy! and thanks a lot Scott
Now I'm off to play![Twisted Evil :twisted:](./images/smilies/icon_twisted.gif)
So that it doesn't get lost (again) and, since he gave us permission to do as we wish with it, I uploaded it to my dropbox account here.Email reply wrote: Hi,
Attached is the zip file for this project. You may do what you like with it, it is 100% free/public domain.
I cannot answer any questions about it, as it is unsupported, and has been too long since I last looked at the code.
Have fun.
Regards,
Scott.
Enjoy! and thanks a lot Scott
![Mr. Green :mrgreen:](./images/smilies/icon_mrgreen.gif)
Now I'm off to play
![Twisted Evil :twisted:](./images/smilies/icon_twisted.gif)
![Image](https://s7.postimg.cc/v87si6xuj/Forum_Signature.png)
Re: Pascal External SDK? -- Now Available
Congratulations!
Are you going to publish some tutorials
about using Pascal to create LC dll's?
Al
![Very Happy :D](./images/smilies/icon_biggrin.gif)
Are you going to publish some tutorials
about using Pascal to create LC dll's?
Al
Re: Pascal External SDK? -- Now Available
He didn't leave much out of that zip file, and the files already contain a pdf about how to do it, demo stack and template. If you feel comfortable with pascal, download it and take it for a spin, it is certainly worth looking at.
![Image](https://s7.postimg.cc/v87si6xuj/Forum_Signature.png)