Announcement: Cross platform Propeller tools
OwenS
Posts: 173
Propeller Tools - the cross platform Propeller tool suite
Propeller Tools is an assembler and associated linker written in (mostly) standard C and C++. It compiles cleanly on Linux, should compile cleanly on OS X, and will nearly compile on Windows (Windows lacks the stdint.h header, otherwise it should compile).
Propeller Tools is very much pre alpha software. It will probably crash. It will probably produce corrupt images. It, as you might expect, comes with no warranty. It is licensed under the GPLv3, with the exception being the header file poff/poff.h, which contains the structures of the object format it uses. This file is under the X11 license, which basically says do whatever you want but if it breaks you get to keep the peices.
PASM implements Propeller assembly in a way completely compatible with the instruction set of the Proptool, with two exceptions: @ behaves as expected, not as it does in the Proptool. That is, @label will give you the hub address of the label. Secondly, PLink will generate an error if any relocations don't fit.
PASM also supports generating LMM code, and code for my virtual machine which I have termed VMM. The LMM code generated is targetted at the micro-LMM inside of the VMM interpreter. It shouldn't be difficult to implement a compatible standalone LMM interpreter however. The LMM interpreter is not compatible with the one used by ICC (The jump table and "registers" are in different locations). As VMM is nowhere near complete, I have not yet included it.
You can get the source and more information at tdn.teknetium.com/project/proptools/. I apologise for the messyness of the source code; I know it needs a large tidy, and intend to do so eventually. Anyone who wants to contribute please conact me (By E-Mail or PM) and I can give you a Trac and SVN account.
Remember that this is very much work in progress software!
Propeller Tools is an assembler and associated linker written in (mostly) standard C and C++. It compiles cleanly on Linux, should compile cleanly on OS X, and will nearly compile on Windows (Windows lacks the stdint.h header, otherwise it should compile).
Propeller Tools is very much pre alpha software. It will probably crash. It will probably produce corrupt images. It, as you might expect, comes with no warranty. It is licensed under the GPLv3, with the exception being the header file poff/poff.h, which contains the structures of the object format it uses. This file is under the X11 license, which basically says do whatever you want but if it breaks you get to keep the peices.
PASM implements Propeller assembly in a way completely compatible with the instruction set of the Proptool, with two exceptions: @ behaves as expected, not as it does in the Proptool. That is, @label will give you the hub address of the label. Secondly, PLink will generate an error if any relocations don't fit.
PASM also supports generating LMM code, and code for my virtual machine which I have termed VMM. The LMM code generated is targetted at the micro-LMM inside of the VMM interpreter. It shouldn't be difficult to implement a compatible standalone LMM interpreter however. The LMM interpreter is not compatible with the one used by ICC (The jump table and "registers" are in different locations). As VMM is nowhere near complete, I have not yet included it.
You can get the source and more information at tdn.teknetium.com/project/proptools/. I apologise for the messyness of the source code; I know it needs a large tidy, and intend to do so eventually. Anyone who wants to contribute please conact me (By E-Mail or PM) and I can give you a Trac and SVN account.
Remember that this is very much work in progress software!
Comments
Can You provide executables that can run on XP.
So I can test it before than I load all nesesary parts to compile Yours code ?
Regards Christoffer
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Nothing is impossible, there are only different degrees of difficulty.
For every stupid question there is at least one intelligent answer
If you don't ask you wont know
If your gonna construct something, make it·as simple as·possible yet as versatile as posible
Sapieha
I'll get it building with Visual C++ 2005 now. It should also build with any version 2002 and later, and MinGW. It should only be a change to define int*_t and uint*_t.
Thanks
But for a moment I not have any kid of C compiler on my computer.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Nothing is impossible, there are only different degrees of difficulty.
For every stupid question there is at least one intelligent answer
If you don't ask you wont know
If your gonna construct something, make it·as simple as·possible yet as versatile as posible
Sapieha
·· Nowadays, there are all sorts of free compilers provided by even big names such as Microsoft and Borland. I just installed the free copy of Turbo C++ on my home computer, in exchange for providing registration information. A nice place to see all thats availible is here: http://www.thefreecountry.com/compilers/index.shtml
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Paul Baker
Propeller Applications Engineer
Parallax, Inc.
Post Edited (Paul Baker (Parallax)) : 9/18/2008 4:55:21 PM GMT
Thanks for Link.
Very interesting
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Nothing is impossible, there are only different degrees of difficulty.
For every stupid question there is at least one intelligent answer
If you don't ask you wont know
If your gonna construct something, make it·as simple as·possible yet as versatile as posible
Sapieha
Remember that the Propeller Tools package is still very much work in progress. The code this is built from is SVN revision 5.