Shop OBEX P1 Docs P2 Docs Learn Events
How long to wait for the MAC version of SPIN? - Page 2 — Parallax Forums

How long to wait for the MAC version of SPIN?

2

Comments

  • mirrormirror Posts: 322
    edited 2007-05-28 06:25
    haikusw said...
    Well, that's cool. Interesting even.

    The point is, all that reverse engineering is a pain when you could be programming instead smile.gif
    And it's TOTALLY unnecessary. If only they made this part open source so those of us who prefer not to use windows can use their cool chip!

    besides, GEAR only runs on windows - I'm not that interested in spending that much time in windows when there are so many cool things I can program, without reverse engineering an emulator, on the mac.

    Thanks for pointing it out though. If I get desperate enough to program the propeller chip, who knows, I might get motivated to spend that much time in windows. Might be easier just to use their windows developer tools at that point though...
    The GEAR source·code is C#, so could probably run under Mono without too much trouble - I'm sure I've read something about that already. SO, you don't neccesarily need Windows - just the source code for GEAR.

    I confess, I do use Windows. Maybe I'll switch to Linux one day - the whole Vista thing could·give the sort of motivation required - possibly. But at the moment, it really just is easier to use Windows.

    The real point is:
    1) Parallax have said that the Tool code·is not going to be released - for now,
    2) A·number of people have expressed interest in contributing some of their time and effort to·coding an open source tool,
    3) I'm sceptical that the C compiler (in six-or-so months time) is going to do multi-cogging as well as what the current solution does - besides, all the other ImageCraft C compilers appear to be Windows only,
    4) From my current understanding of spin (and it's bytecodes) conditional compilation and improved object referencing (Object.Variable) should be possible within the current set of spin bytecodes.·The spin interpreter - in the ROM of the propeller - is DEFINITELY NOT going to change for the current propeller, but that's a good thing. I suspect the new propeller will be source code - and possibly even bytecode - compatable. If each cog had 4kbytes or 8kbytes of RAM, then who knows, maybe the spin bytecodes will run 100 times faster.



    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    It's not all that hard to count the number of grains of sand on the beach. The hardest part is making a start - after that it just takes time.·· Mirror - 15 May 2007
  • Harrison.Harrison. Posts: 484
    edited 2007-05-28 06:28
    Asterik supposedly wrote the Gear emulator so it would successfully compile and load on the Mono framework which would mean it would support whatever platforms the Mono framework supports (mac, linux, windows, etc).

    I believe open sourcing the IDE probably won't help Parallax's cause other than helping people who will just tweak the IDE so it will load better in emulated environments. The reason is that the core compiler / assembler is supposedly written in x86 assembly which would not be easily portable to other ISAs. Not to mention the x86 assembly is probably highly win32 dependent since it probably needs access to the win32 filesystem and such. If the above is true then anyone who would spend time attempting to port the assembly compiler / assembler to another OS would probably be wasting time.

    It would be much easier, as some people have noted, to just write a new compiler from scratch. There already exists a java implementation of the Propeller assembler that works quite well.
  • Chris KraftChris Kraft Posts: 20
    edited 2007-06-02 03:49
    I too would like to see a the Propeller tools on OS X. Yes I have Parallels, bootcamp and a couple of Windows machines around I can use but I would always choose OS X over any of those others if I had the option.

    Personally I don't need the GUI or anything like that. I use TextMate as my code tool and I am happy with that. I also have X Code which is a fine tool.

    Mostly what I would like is a way to compile Spin and Prop Assembly code and also upload/program that compiled code onto the Propeller chip.

    I agree with the others, I see no reason, if Parallax is not interested in selling software, why they don't open up enough of the code so that those developers, like myself, who are familiar with developing on OS X can build our own tools.

    I am very impressed with the Propeller chip and would probably use it more if I could code on OS X. Instead I've been using Atmel chips because I have a full tool chain that lets me write applications in C and compile them and program the Atmel, all without ever having to leave my much beloved OS X.

    Please Parallax, give some of us OS X folks a chance. Give out some bits of the code and see if we can put something together for you. Personally I would gladly do the work for free just so that I could have a way of programming the Propeller using my Macbook. I appreciate that you are a small company and short staffed, but I am not asking you to do the coding for me, just to open up enough details so that we can put something together.

    And I am sure that this lack of open information does stop some people from using the Propeller. I was talking to a developer who has done some work for Make and Make Faire and he said that he wouldn't look at the Propeller until there were open tools available. I would think that for a small company that is interested in targeting a hobbyist community you would want the best and brightest of those communities behind you and encouraging others to use your products.
  • potatoheadpotatohead Posts: 10,260
    edited 2007-06-02 04:18
    Agreed Mike.

    IMHO, not having the serial communication bits running is not that big of a limitation. I've not setup WINE and probably should. I believe I saw another post where somebody had the IDE running, but could not communicate through it.
  • Paul BakerPaul Baker Posts: 6,351
    edited 2007-06-04 21:43
    Haikusw, will will not be making our code GPL or any other varient of open source. By doing so we are essentially giving up any control over it's direction and fitness for purpose, and these are two things which are very important to us.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • haikuswhaikusw Posts: 4
    edited 2007-06-06 02:30
    Paul, Thank you for your reply. I am not an expert in open source software, but I think you are under some misconceptions about what making your software open source means. For example, there are many open source software projects to which, as an example, I am not able to contribute code to the main source repository. The project owners are still quite able to control the direction of the software they produce.

    As I understand it, and again, I'm not an expert, generally in order to become a "commiter" to an open source project one has to provide "patches" to the forum or to the people in the company who are the project engineers. Once an individual has demonstrated that they can contribute in a quality and professional manner, then they might get commiter permissions. Even then, their changes will likely be reviewed by someone in the company - though once it's open source any changes are reviewed by the community which provides far more review power (eyeballs and talent) at almost no cost to the company.

    For example, SUN is putting the java compiler and tools under an open source license, but they are not giving up control of the language. It does not just become a free-for-all where anyone can make changes to the source over time. This is not dissimilar to what I'd propose Parallax consider doing. Likewise for PHP or MySQL or apache or gcc, or any of a long long list of others.

    What would be possible for someone, like myself, who might NOT have commiter status to the main source repository, is to download the code and produce a port of the code to Mac OS X, for example. Generally under most open source license terms I could not sell this port, but would have to make it and it's source freely available to all - thus, your company could incorporate those aspects of the port (or the entire thing) into the main repository if you so chose and thus get a port of your software to another platform for free.

    The benefit to me of having the company take my work (or the work of myself and many others as is usually the case) is that maintaining the port over time will be easier if the next version produced by the company already has some or all of the changes that make creating the port easier (refactoring etc). In fact, in some cases the port done by one person (or a small group) has become part of the main repository and that port is then maintained by the community at large.

    Additionally, by open sourcing your software you allow it to be reviewed by others. You could have from dozens to thousands of talented software engineers review the code, find bugs or security problems, offer optimization suggestions and other improvements, etc all at no cost to you. This actually gives you as a company significant security - consider what would happen if the one or two people currently employed to work on the software (by reports on this forum it's one person) quit, die or otherwise become unable or unwilling to work on the code. This is not a catastrophic problem because the company has a large number of other people already familiar with the code and at least one these people might make an excellent candidate to pick up the project as an employee.

    In any case, there are quite a range of open source models under which one may put a code base into the open source state. I would recommend you look to others with more expertise than myself in this area. The Free Software Foundation might be an excellent place to start (http://www.fsf.org). IBM has also done a lot toward making projects open source. For examples of other companies that have gone this route you might check out SUN, Google, and many other smaller companies.

    I know that it is often felt that your software is a big part of your value as a company and making it open source decreases this value. I think that your company's value is in the processor itself. The software magnifies this value, but the value of your software is magnified dramatically if it is open source for the following reasons (among others):

    1) it is much more likely to get improved and validated by a much larger range of qualified engineers. Imagine what you could do if you hire even 10 talented motivated enthusiastic engineers to work on your software. Making your software open source under the right license and structure for increasing the participation does this and more for you, but at very little cost to your company.

    2) I, and others, will have a much greater degree of confidence in your software if it has been reviewed by hundreds, or thousands of other qualified software engineers. That's a level of review many large companies cannot afford.

    3) You software can be ported to other operating systems and there are many people who simply have zero desire to work on Windows and will choose an option that doesn't force them to do so. Those are lost sales for your company. Especially if you consider that much innovation is taking place *outside* the center of the technological eco-sphere - those outside the center are likely not running Windows which almost defines the center. The innovators are the prime people you want using your innovative hardware - in part because they'll do the coolest stuff with it (and make you and your hardware look good and thus generate more sales).

    4) You will not be so vulnerable as a company. Imagine a virus comes out that takes down all the Windows computers. If mission critical development is going on in a company, they can switch to a linux computer, say, and keep making progress while the IT department gets the Windows computers functional again.

    So, if your software magnifies the value of your processor business, and open sourcing access to it magnifies the software, then open sourcing your software is a big win for your company.

    Well, I'm not the greatest open source evangelist because I really am too ignorant on it all, but I *am* confident that seriously considering making it so that your company can bring more software engineering resources to your table without costing any or much additional money is likely to be a smart business move for your company. I encourage you to contact some people at IBM or the FSF and speak with them about the options and how it might work for you; or perhaps do some research into other open source models/projects to read their licenses and understand how they have structured their projects/licenses to work best for them. There are many of these on the internet. Perhaps someone else on this forum who has more experience with open source software models can chime in with more educated comments (hopefully in support wink.gif).

    Whatever you decide, I wish you the best of luck and hope that I'll be able to develop for the Propeller on a computer running Mac OS X someday soon.
  • Paul BakerPaul Baker Posts: 6,351
    edited 2007-06-06 17:41
    We repect the principles of open source and recognize it's value, we just aren't going to release our IDE under it. We having two guiding principles in the company, to release quality products and to provide the best possible support for our products. While we don't charge any money for our software, it is a critical aspect in support of the hardware. Releasing our code under open source would quickly become a nightmare because our customers have come to expect a very high quality of technical support. Trying to keep track of N variations of various open source IDEs in order to answer peoples questions and problems regarding the IDEs would become the full time job of serveral people and we don't have the resources to spend on such an effort. Another issue with releasing it as open source is that people will expect us to fully document the code to explain exactly what is going on and to provide support on the code itself, it is a TINSTAAFL (there is no such thing as a free lunch) situation that we just aren't going to pursue.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • ehdynehdyn Posts: 5
    edited 2007-07-19 19:39
    Don't want to step on anyone's toes, but I'd be willing to pay for a Mac(non-int*l) version of Spin. Wanting to make a crazy *** synth with this chip.
  • Mike GreenMike Green Posts: 23,101
    edited 2007-07-19 20:39
    You can't afford to pay enough to get a native Mac Spin compiler. The details of the byte code are proprietary to Parallax although much of it has been figured out (for GEAR) already. Parallax has neither the resources nor the interest as has been discussed at length before and no one else is in a position to do it. For such a small market, the cost would be prohibitive for a 3rd party to do it. There is a 3rd party C compiler planned for the beginning of next year, but it produces assembly language, not Spin byte codes. It'll be very useful, but it's not a Spin compiler. It will be Windows-only as well.
  • wcardosowcardoso Posts: 1
    edited 2007-07-23 19:04
    Why not propeller guys publish the protocols used to transfer data between PC and the chip ?, and related protocols like the chipID, etc.

    These way all us can develop tools in any OS to work with the propeller in our preferred platform.
  • Paul BakerPaul Baker Posts: 6,351
    edited 2007-07-23 19:14
    The information has been posted and a python based standalone programmer has been created by a customer.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • simonlsimonl Posts: 866
    edited 2007-07-24 16:44
    I still think Parallax would be better-off creating a cross-platform, standalone, command-line compiler (much like Microchip do) that can be called from any IDE. The compiler should be written in Java, and accept command-line parameters like >pchipcompiler -s <source_file>.

    If they split the compiler from the IDE, they'd need to spend less time updating the IDE (which hasn't had an update in ages, due I think to Jeff's time commitments); there will be plenty of other quality IDE's created in a short time IMHO.

    This isn't a 'flame', I can work with the IDE as it is, but the cross-platform thing isn't going to go away any-time soon, so I'm offering a potential way forward. (I only wish I had the skills to do it for them...).

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Cheers,

    Simon
    www.norfolkhelicopterclub.co.uk
    You'll always have as many take-offs as landings, the trick is to be sure you can take-off again ;-)
    BTW: I type as I'm thinking, so please don't take any offense at my writing style smile.gif
  • Paul BakerPaul Baker Posts: 6,351
    edited 2007-07-24 16:58
    Please see my post in this thread: http://forums.parallax.com/showthread.php?p=648778

    It's not happening no matter how much people ask. Jeff didn't write the compiler, Chip did. He is also the chip designer, so it's·either he develops the next chip or he works on the compiler. We have already decided his time is better spent developing the next chip.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.

    Post Edited (Paul Baker (Parallax)) : 7/24/2007 5:04:11 PM GMT
  • Mike GreenMike Green Posts: 23,101
    edited 2007-07-24 17:00
    Simon,
    This has been discussed ad nauseum. I would love to have (and have previously asked for) a cross-platform "tokenizer" like that available for the Stamps. It's not going to happen, asking Parallax for it won't help, and, with the ready availability of Intel Macs and virtualizing software that allows execution of Windows under the Mac OS and Linux, there's even less incentive to provide it. The compiler is written in Intel assembler with Windows I/O calls and it would take a rewrite from scratch to make it platform independent. Parallax considers the compiler and the Spin byte code definitions as proprietary and simply not available, let alone not having the resources with the knowledge and time (aka Chip) to document it. There are compiler writing tools out there, yet it's a lot of work to actually do it, even with the best of tools and complete documentation on the "object machine". The only reason we'll be getting a C compiler for the Propeller is that ImageCraft has a stable, adaptable C compiler that can be be relatively easily adapted for the Large Memory Model assembly code for the Propeller.
  • BipedPeteBipedPete Posts: 8
    edited 2007-07-24 17:41
    Yeah, all I own is an iMac. I would like to see some Mac compiler. Not just for propellers but also for most robotics-type processors.

    But thanks for the Guest PC link. I am intending to get it soon. (Meaning when spare cash floats by)
  • Fred HawkinsFred Hawkins Posts: 997
    edited 2007-07-24 20:50
    Thought balloon: "It's important to keep the riffraff out. If they can't find a cheap Windows laptop, boat anchor or an ersatz substitue, let em drool at the window."
  • Beanie2kBeanie2k Posts: 83
    edited 2007-07-24 20:57
    Paul Baker (Parallax) said...
    ... it's either he develops the next chip or he works on the compiler. We have already decided his time is better spent developing the next chip.

    Put my vote with the new Prop chip yeah.gif . Besides isn't the new prop supposed to have all the development tools embedded in it, making it platform-independent? If so, that would really be cool! scool.gif
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2007-07-24 21:35
    Personally, I'd hate to see any precious silicon in Prop2 taken up with firmware that's used only during development. Plus, embedded development tools are much harder to modify and extend. My vote would be for platform-independent cross development tools with hooks that facilitate user-extendability.

    I use Windows XP now, but I won't be upgrading to Vista or buying a new computer with Vista installed. Anything new will be running either Linux or OS/X. I'm sure I'm not alone.

    -Phil
  • parts-man73parts-man73 Posts: 830
    edited 2007-07-25 20:41
    Here's some interesting statistics that play into this discussion.

    The hosting company that I use for my Propeller related website provides statistics about the people that visit my site. It gathers data on (among other things) what type of OS the visitor is using.

    Keep in mind that this is by no means a scientific poll, but since my website is only of interest to Propeller users, the data is relevant.

    Windows XP users - 78.8 %
    Windows Vista - 8%
    Linux - 6.5%
    MacOS - 4.6%
    Windows 2000 - 4.6%

    and others including Windows 98, Windows Server 2003 and Windows NT are 1% each or less


    So the 2 OS's that the Propeller tool will work on(without resorting to WINE, or other emulators) cover approximately 86% of Propeller users (XP and Vista) That is obviously where a bulk of Parallax's resources must be spent.

    Just so you know, I am not biased. I have 5 computers at home, 2 of them run Ubuntu Linux.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Brian

    uController.com - home of SpinStudio
  • evanhevanh Posts: 15,425
    edited 2007-07-28 15:57
    Win95/98/me are fine once stripped of the internet suite but for security reasons I'd never use Win2k/xp/vista. The OS itself is the problem, not what hardware I happen to own.

    To put it simply, if Wine can't run the development software then I won't be using it.


    Evan
  • QuattroRS4QuattroRS4 Posts: 916
    edited 2007-07-28 16:02
    Well then you will be missing out..

    If its a security issue - why not strip an xp install of everything you don't want and run it stand alone with no internet connection..

    QuattroRS4

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    'Necessity is the mother of invention'
  • evanhevanh Posts: 15,425
    edited 2007-07-28 16:09
    That said, I'd definitely entertain the idea of self hosted development with file transfer ability for backups and documenting. Is this already an option? I've not read enough yet...
  • QuattroRS4QuattroRS4 Posts: 916
    edited 2007-07-28 16:13
    Chip Gracey (Parallax) said...



    That bigger ROM is going to be used, eventually, for sinking the entire development system into. This way, we can finally get OFF the PC for good, if we want to...

    Have a read of this thread..

    http://forums.parallax.com/showthread.php?p=617536

    Regards,
    QuattroRS4

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    'Necessity is the mother of invention'
  • evanhevanh Posts: 15,425
    edited 2007-07-28 16:13
    QuattroRS4 said...
    Well then you will be missing out..

    So be it.

    [noparse][[/noparse]quote]If its a security issue - why not strip an xp install of everything you don't want and run it stand alone with no internet connection..

    Doesn't work that way. I've tried. Even something as trivial as the control panel fails to load.
  • Mike GreenMike Green Posts: 23,101
    edited 2007-07-28 16:16
    If you only are willing to use Wine, then I guess you won't be doing any Spin development (and that will very much limit your ability to take advantage of what others have done so far in terms of existing and future contributed code). If you can get Cliff Biffle's assembler to run, then you could use that for some Propeller work. Eventually some of the Forth implementations for the Prop will get beyond the experimental stage and you could certainly use one of those. There will be a C compiler this Winter, but it will only run under Windows. You could ask them (ImageCraft) if their compilers have been run under Wine and Linux.

    I did have a little luck compiling programs using CrossOver Mac from CodeWeavers which is an enhanced commercial version of Wine. There were some bugs in opening up source folders, but if I ignored them and continued, I was able to compile one or two things. I'm sure the download I/O won't work, but there are separate download programs, like the one in Python, that work under Linux and you can save the binary file after compilation. It's awkward, but probably usable. There is a CrossOver Linux that probably works the same.
  • QuattroRS4QuattroRS4 Posts: 916
    edited 2007-07-28 16:19
    evanh said...
    Doesn't work that way. I've tried. Even something as trivial as the control panel fails to load

    not so ..

    I have stripped out full installs to the bare minimum - quite successfully- obviously windows file protection(WFP) has to be disabled· ..ever before XP embedded became main stream..

    It seems that you are putting up an artificial wall here ...

    QuattroRS4

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    'Necessity is the mother of invention'

    Post Edited (QuattroRS4) : 7/28/2007 5:09:42 PM GMT
  • evanhevanh Posts: 15,425
    edited 2007-07-28 16:19
    QuattroRS4 said...
    That bigger ROM is going to be used, eventually, for sinking the entire development system into. This way, we can finally get OFF the PC for good, if we want to...
    What about now? Is there a simple version in the smaller ROM?
  • evanhevanh Posts: 15,425
    edited 2007-07-28 16:23
    QuattroRS4 said...
    evanh said...
    Doesn't work that way. I've tried. Even something as trivial as the control panel fails to load
    It seems that you are putting up an artificial wall here ...
    Hmm, I did try. I think you are making it sound too simple.
  • evanhevanh Posts: 15,425
    edited 2007-07-28 16:26
    Mike Green said...
    If you only are willing to use Wine, then I guess you won't be doing any Spin development ...
    Why not? I would expect all coding facilities to be available.
  • QuattroRS4QuattroRS4 Posts: 916
    edited 2007-07-28 16:26
    Evanh - its not that I am making it sound too simple .. it can be time consuming .. but worth the effort.

    edit: with regard to your reply to Mike .. as it is not its native environment .. issues will be the Rule rather than the exception ..

    QuattroRS4

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    'Necessity is the mother of invention'

    Post Edited (QuattroRS4) : 7/28/2007 4:31:11 PM GMT
Sign In or Register to comment.