Shop OBEX P1 Docs P2 Docs Learn Events
Good old BST (Brad's Spin Tool) - Page 2 — Parallax Forums

Good old BST (Brad's Spin Tool)

24

Comments

  • Heater.Heater. Posts: 21,230
    David,
    As you know, I used to do a lot of building of prop-gcc and SimpleIDE on a few different platforms including the Raspberry Pi. Always keen to see the latest developments working. Similarly for OpenSpin.  That was before github days so whatever issues I had were reported here, discussed and fixed. I'm very grateful to all involved. They have done a great job.
    I even put up a little blog http://the.linuxd.org/ with such instructions that used to direct people to when they wanted to do such builds. That's probably all out of date and broken now.

    Admittedly I have not done so much of that for a long while. Life can get busy and there are so many other interesting things to pursue in any free time. That's how it goes.
    PropellerIDE was always a problem for everyone as it adopted Qt5 which was not generally available out of the box on many systems. I hope that situation has improved.


  • I guess what I'm saying is that open source doesn't just mean you can get it for free. It also means that some subset of the community of users also need to participate in the development and maintenance of the software. Take a look at the number of repositories already in the Parallax github account. There is no way that the tiny staff at Parallax can maintain all of those packages. They need outside help. So if the packages aren't in the condition we'd like, one option is to dive in and help improve them. I know not everyone here has the ability to do that but some do.
  • Heater.Heater. Posts: 21,230
    David, 
    I guess I have a somewhat different view of this open source thing. To me it means exactly that you can get it for free. That's how the licenses are worded.
    Of course such code may not work, need building for you OS and machine, be full of bugs and lack features you want.
    If it worked for the developer some time, some where, then that's good for him. He is very generous to take the trouble to make it available to the world. And that's it. I'm sure github is littered with billions of repos containing code like that. Heck checkout mine: https://github.com/ZiCog?tab=repositories  Of course is a few cases a whole other dynamic happens. Our developer may well be actively working on that code, adding features, fixing bugs, that encourages people to make use of the code knowing that it might have some future.
    Our developer may well be open to bug reports, patches, documentation and other contributions. That is good for him as it makes his code better and good for the users too. Positive feedback happens, a community grows. At some point the thing may take on a life of it's own and the original developer is not even relevant any more! Node.js is a classic case of this, Ryan Dahl dropped out of that ages ago.
    How does all this relate to Parallax and it's open source efforts? I'm not sure. Perhaps it's just a sad fact that they have not ignited such a community effort. 
  • David, 
    I guess I have a somewhat different view of this open source thing. To me it means exactly that you can get it for free. That's how the licenses are worded.
    Of course such code may not work, need building for you OS and machine, be full of bugs and lack features you want.
    If it worked for the developer some time, some where, then that's good for him. He is very generous to take the trouble to make it available to the world. And that's it. I'm sure github is littered with billions of repos containing code like that. Heck checkout mine: https://github.com/ZiCog?tab=repositories  Of course is a few cases a whole other dynamic happens. Our developer may well be actively working on that code, adding features, fixing bugs, that encourages people to make use of the code knowing that it might have some future.
    Our developer may well be open to bug reports, patches, documentation and other contributions. That is good for him as it makes his code better and good for the users too. Positive feedback happens, a community grows. At some point the thing may take on a life of it's own and the original developer is not even relevant any more! Node.js is a classic case of this, Ryan Dahl dropped out of that ages ago.
    How does all this relate to Parallax and it's open source efforts? I'm not sure. Perhaps it's just a sad fact that they have not ignited such a community effort. 


    Well, it's not entirely true that they haven't ignited a community effort. Parallax has funded a fair amount of the development and a number of people have contributed over the years and I'm sure Parallax is grateful for that effort. Unfortunately, it isn't sufficient to produce the professional quality tools people here seem to expect. That could be helped if more people would join in but I suspect the level of support people expect would require a large number of volunteers. The alternative, as I see it, is to reduce the number of tools supported so a small staff can handle the support. Do we really need two different desktop IDEs as well as iPad and Google Chrome applications? Heck, maybe C/C++ was a mistake. Maybe the best approach would be to put full effort into polishing the Spin tools. I guess that didn't work from a marketing standpoint though.
  • guenthertguenthert Posts: 36
    edited 2015-07-05 22:27
    I thought that I read somewhere here that Bard stopped BST development after he lost all his backups and his main copy due to drive crash and corrupted backups. Thus he no longer could develop it, but had to start from scratch :(. Quite Sad,


    Ok this is now somewhat off-topic, but might prevent such a disaster in the future:  just recently I encountered a similar situation, i.e. a drive failed in a computer at work for which I didn't have a recent and complete back-up (yes, yes, shame on me, I promise it won't happen again).  Problem was, I actually really needed the data of that particular machine (preferably w/o admitting, that I didn't maintain proper back-ups ;-}
    Fortunately, it was one of those old spinning-rust type of drives (8GB SCSI, remember those?) which failed slowly, a sector at a time.  By the time I got to it, some hundred sectors weren't read-able anymore, but with any luck, the data I cared about was not on those.  Using dd-rescue [1] I was able to copy most of the content of the drive, fix the file system, mount and read it elsewhere.
    In the time of free and easy to use distributed version control systems (I think of Mercurial and git), there is little excuse to have the source on a single drive, but if someone still does and is a bit sloppy with back-ups, then below might come handy someday.
    [1] https://www.gnu.org/software/ddrescue/
  • Community effort = work for free and that your time is worthless.

    Perhaps it would be better for Parallax to contract out to Rowley Crossworks to produce a polished set of developer tools instead of relying on the efforts of volunteers in the hopes that they'll will do it all for free.

    One reason it won't work is because of the small user base for the Prop. Also most still seem to prefer PASM and SPIN.  This guarantees that the GCC effort is going to languish along with all the other open source efforts.

    Also a lot of folks just want to program the Prop, not spend their weekends mucking with the innards of the OSS approved  tool set.
  • LoopyBytelooseLoopyByteloose Posts: 12,537
    edited 2015-07-05 17:52
     What I don't understand about this discussion is why everyone is so upset with Parallax for not providing "proper" tool support. We sort of forced them into this position by demanding that they support cross-platform tools.
    Ummm... Parallax might have been 'forced' into this, but staying with only a Windows IDE would have been absurd.  What's wrong with customer demands?

    And, isn't a Windows to Propeller IDE a cross-platform tool?

    Customers not only pushed for this, customers developed Catalina C and BST.

    Many don't realize it, but educationally it is a lot easier to learn the deep details of computers with an open-source OS.  You start with the historic stuff that UNIX provided and move on into a wealth of free Linux documentation.

    I guess we would all be using Windows 10 now if we were not so assertive. I grew weary of MS demanding a pay a lot for learning a little.

    And I feel that at least some of the IDE developers felt that they have paid their dues and should be paid something to remain on a perpetual development treadmill. One can only work of free and enjoy it for so long.
  • Heater.Heater. Posts: 21,230
    rod1963,

    Community effort = work for free and that your time is worthless.

    An oft' quoted phrase but a moments reflection will reveal that this is not true.

    At one end of the spectrum we have people like Google, Intel, IBM and a cast of thousands paying their developers handsomely for working on Open Source projects like Linux, LLVM and a ton of others. Why are they doing this? Giving away code, developer time, for free. Letting their potential competitors use their work. Crazy. Well no it is not, there are cold hard economic reasons why they do that. By pooling their efforts with others they reap the work of others in return, it's good for their bottom line.

    What about the other end of the spectrum. Us hobby users of SimpleIDE or whatever. I believe the same economics plays out there as well. If a bunch of people pool their efforts they all gain more than anyone of them could ever put in by themselves.

    Perhaps it would be better for Parallax to contract out to Rowley Crossworks to produce a polished set of developer tools instead of relying on the efforts of volunteers in the hopes that they'll will do it all for free.

    No it would not. That would be massively expensive. And there is no chance that the result is any better than what we have right now. Are Rowley going to produce compilers, tools and IDEs for every platform, Windows, Mac, Linux, Raspberry Pi, etc etc. Keeping that running into the future of new OS versions and hardware platforms will be economically crippling. Ultimately a dead end.

    I do agree though that the small Propeller user base does make it hard to get traction for open source projects like I describe above. It also means that paying big bucks to get tools written is not viable either.

  • guenthertguenthert Posts: 36
    edited 2015-07-05 22:55



    BST and SimpleIDE seem to both install rather painlessly. 
    You got perhaps a lucky break there (or higher pain threshold).  BST uses shared libraries (as most executables do for the last twenty years or so).  Since those are typically not distributed with the executable, you depend on those being available on your system.  As bugs are found or maintenance ceases, those libraries are removed from a distribution, hence it's just a question of time until an old executable won't be able to run on a new system (compare with statically linked executables which can run decades after compilation).  BST isn't quite there yet, but given that it was compiled with 32bit wide shared libraries, users will probably have to add a few more libraries to their system these days.

    For me (on Ubuntu 12.04 on x86_64, yeah, a bit behind times myself) I had to
    sudo apt-get install libgtk2.0-0:i386
    
    (which dragged in 56 more packages) before I could use bst.
  • I do agree though that the small Propeller user base does make it hard to get traction for open source projects like I describe above. It also means that paying big bucks to get tools written is not viable either.



    I think this is exactly the problem. We have too few volunteers to do a complete job of providing polished tools for every platform. However, Ross did a good job of providing a polished installer and decent documentation for Catalina and he did it by himself. Maybe I'm just not a fast enough coder to work in the open source world.
  • Cluso99Cluso99 Posts: 18,069
    edited 2015-07-06 01:00
    I thought that I read somewhere here that Bard stopped BST development after he lost all his backups and his main copy due to drive crash and corrupted backups. Thus he no longer could develop it, but had to start from scratch :(. Quite Sad,

    Brad never said anything like this offline. I did understand his frustration but it's best left alone. Where his code works, and that's most OSes, it's fantastic. He did a great job. It's no different to PropTool where there will be no improvements and closed source.
  • Cluso99Cluso99 Posts: 18,069
    IMHO, the tools problem was more about support and guidance.
    From my understanding, bst and homespun were both developed independently by Brad and Mark respectively. At that time, Parallax were not willing to release PropTool source to them. This made building bst and homespun so much more difficult.

    Now there are a number of various independent versions of the tools which fragmented development. IMHO and hindsight, Parallax should have tried to steer the tools to a single development, perhaps with seperate sections.

    Unfortunately Parallax do not have sufficient resources to do the development in house.

    But, we have what we have. There seems less interest now and less people available/willing to help with the development. Some have moved on for various reasons and others have left disillusioned. But it is what it is... It's past history and hindsight is wonderful.
  • Heater.Heater. Posts: 21,230
    Cluso,
    We only have one Free and OpenSource Spin compiler that is going to work everywhere, OpenSpin. As you know we have had that running even on little MIPS based routers.
    There is only one Free and Open Source C++ compiler for the Propeller, prop-gcc. Which will be more valuable with the P II.
    Yes there is fragmentation in the IDEs (What happened to PZST?) That's OK as long as Parallax focuses on one.
    In hind sight perhaps it would have been better to adopt the Arduino IDE for C++. As used Intel with the Edisson, by Microchip with the PIC32 and no doubt others. It would not be my choice but it seems to be well know and accepted everywhere. A defacto standard. It is very simple to use for the intended audience.
       
  • I thought that I read somewhere here that Bard stopped BST development after he lost all his backups and his main copy due to drive crash and corrupted backups. Thus he no longer could develop it, but had to start from scratch :(. Quite Sad,

    Brad never said anything like this offline. I did understand his frustration but it's best left alone. Where his code works, and that's most OSes, it's fantastic. He did a great job. It's no different to PropTool where there will be no improvements and closed source.


    Before I found the propeller, but was that the reason? I find it hard to believe that someone capable of building such a well designed tool could not have good backups and source control as well. More to the back story likely.   Could be wrong, seen similar before but with some major contributors missing since before I got into the prop gotta wonder....
    As to contributing, I would but I have not fired up the unix machine in 3 years. Time is pretty limited around here (generally my time starts after 11pm... if I am lucky) but PM me if there is anything I can contribute in the test area or maybe some documentation (english only, my german has mostly faded away).

  • yetiyeti Posts: 818
    edited 2015-07-06 05:07
    I thought that I read somewhere here that Bard stopped BST development after he lost all his backups and his main copy due to drive crash and corrupted backups. Thus he no longer could develop it, but had to start from scratch :(. Quite Sad,

    Brad never said anything like this offline. I did understand his frustration but it's best left alone. Where his code works, and that's most OSes, it's fantastic. He did a great job. It's no different to PropTool where there will be no improvements and closed source.


    http://forums.parallax.com/discussion/comment/987663/#Comment_987663

    Is someone able to locate that "separate thread"?
  • AleAle Posts: 2,363
    edited 2015-07-06 12:15
    I found the thread and post where I read the info, it is a post by SSteve in March 2011:

    http://forums.parallax.com/discussion/107051/mac-linux-windows-ide-ver-0-19-3-now-with-new-improved-propbasic-release/p50

    He mentions another thread, I don't remember if I looked for it or not anymore...
  • Cluso99Cluso99 Posts: 18,069
    edited 2015-07-06 12:28
    IIRC, the only comment regarding source by Brad was when he returned to Australia, his PCs were being shipped by slow boat.

    Also, I understand Ross released the source code to Catalina. I also understand Mark released the homespun source to Ross so he could fix/modify homespun for Catalina.

    Certainly we have lost some excellent Prop talent over the years due to various reasons.
  • Heater.Heater. Posts: 21,230
    MPark open sourced HomeSpun back in 2013:http://forums.parallax.com/discussion/106401/homespun-spin-compiler-0-31-now-open-source/p1

    I immediately put it in a github repository here:https://github.com/ZiCog/HomeSpun

    I added some instructions for building it with mono on Debian and running on the Raspberry Pi
    MPark is also missed around here.
  • LoopyBytelooseLoopyByteloose Posts: 12,537
    edited 2015-07-06 14:43



    BST and SimpleIDE seem to both install rather painlessly. 
    You got perhaps a lucky break there (or higher pain threshold).  BST uses shared libraries (as most executables do for the last twenty years or so).  Since those are typically not distributed with the executable, you depend on those being available on your system.  As bugs are found or maintenance ceases, those libraries are removed from a distribution, hence it's just a question of time until an old executable won't be able to run on a new system (compare with statically linked executables which can run decades after compilation).  BST isn't quite there yet, but given that it was compiled with 32bit wide shared libraries, users will probably have to add a few more libraries to their system these days.

    For me (on Ubuntu 12.04 on x86_64, yeah, a bit behind times myself) I had to
    sudo apt-get install libgtk2.0-0:i386
    
    (which dragged in 56 more packages) before I could use bst.


    WELL, that my friend is the problem with Ubuntu since 12.04, and not the problem with Linux's bigger world.  Ubuntu broken rank with legacy continuity of dependencies and Ubuntu created a fork in the development tree that you either abandon or suffer the consequences.  Mint is dependent on Ubuntu, so I am not sure that works any better.

    Rather than deal with all these egotist that create a fork and think the user base will follow, I just migrated to Debian where fundamental policy and leadership originate from.

    +++++++++
    At some point in using OSes, one does have to learn something about who is wearing the 'white hats' and who are doing other things.

    The primary choices in Linux are Debian versus Red Hat.  These are the giants of Linux. And while it seems that Linux Torvalds actually leans more to toward Red Hat, it is based in the U.S.A.

    Being a U.S.A. company has historically allowed Microsoft and others to bully Red Hat into not providing features that Debian does for free.  Red Hat has in some cases just referred the user to buying software additions that are proprietary because they can't afford the legal battle.

    In the USA, the merit of a legal suit is not decided until the case comes to court. And in Civil suits, that may be over a decade of having to pay lawyers to respond to those that filed the suit. That is very expensive, so Red Hat capitulates.

    ++++++++++
    BTW, adding a mere 56 packages and getting it working in Ubuntu 12.04 is no big deal.  You are just not aware in Windows or iOS of how common  it is for packages to have to be installed before your application. It happens all the time, but those OSes don't tell the user.

    Try a later version of Ubuntu and the real hardship for installing BST begins.  You will need the source code for BST and that is NOT available.
  • IIRC, the only comment regarding source by Brad was when he returned to Australia, his PCs were being shipped by slow boat.

    Also, I understand Ross released the source code to Catalina. I also understand Mark released the homespun source to Ross so he could fix/modify homespun for Catalina.

    Certainly we have lost some excellent Prop talent over the years due to various reasons.

    Hasn't Catalina always been open source? In any case, it is now. I think the only part that was closed for a while was his optimizer and I believe that the source for that is now available as well.

  • Try a later version of Ubuntu and the real hardship for installing BST begins.  You will need the source code for BST and that is NOT available.


    Not sure which version you are talking about but I use the latest Linux Mint 17.2 based on Ubuntu and I run BST fine, all I ever needed to do is to install the 32-bit compatibility libraries which is only a simple apt-get command.
  • I tried installing Debian Linux on my compact laptop but ran into an issue with drivers. It did not like the nVidia Ethernet card or graphics and the Broadcom wifi. Also tried to upgrade to Win7 and got "incompatible hardware" anyone have any good ideas?

  • I tried installing Debian Linux on my compact laptop but ran into an issue with drivers. It did not like the nVidia Ethernet card or graphics and the Broadcom wifi. Also tried to upgrade to Win7 and got "incompatible hardware" anyone have any good ideas?

    Nope, but it would help if you told us the model of the laptop for instance. Can't see why it wouldn't work although there is still an ongoing issue with drivers that switch between the CPU's GPU and graphics chips such as my i7 and the nVidia GT555M. I never seem to have any problem with WiFi chipsets thoughs. I use Linux Mint 17.2.
  • Sorry Peter for the lack of information.  Compaq Presario CQ50-107NR ,2 GB Ram, AMD Dual Core QL60, Display  Nvidia GeForce 8200M G,Network Nvidia nForce 10/100/1000 Mbps Networking controller, Broadcom  802.11 b/g WLAN
    Does that help?
    Jim
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2015-07-09 00:48
    Ok, that laptop was made in 2009 so it's pretty old as laptops go and no wonder win7 didn't like it as many drivers are written for the Windows version they come with which in this case was Vista.

    Linux in general seems to run on any hardware so I'm surprised it didn't like the WiFi. Did you try any other Linux flavor at all? I prefer Linux Mint instead of Ubuntu.

    I know that there seems to be this thing where people put Linux on old hardware to try to rejuvenate it but there are versions of Linux especially designed for old and lame hardware, most popular distros really require newer hardware.

    Normally when I buy new laptops etc I bypass the "secure" $microslop$ boot, backup the recovery partition to reuse as there seems to be this deliberate obstruction these days to install other O/Ses by consuming all four primary partitions etc. Then I boot into a live flash drive (unetbootin or imagewriter) rather than a slow CD and run gparted to resize the recalcitrant windows partitions to give me more space on the "spare" partition after which I format it as an extended partition so I can add one or two O/S partitions plus a home plus a swap file.

    If you do this repartitioning and install Linux to these new partitions then you will have no problem booting back into windows for whatever reason or booting into another flavor of Linux sharing the same home directory. Try to avoid depending upon an NTFS partition for data storage as you are held hostage to windows if it locks that partition. I just use EXT4 partitions for my main data store.

    Of course you can always totally reformat the drive and get rid of windows altogether. If I really need "windows" for certain programs I have VirtualBox and a winxp image that keeps growing and reused between computers. Wine does a good job for simpler more compliant programs such as LTSpice etc.
  • koehlerkoehler Posts: 598
    edited 2015-07-09 01:11
    Get a Linux distro with LXDE or some other lightweight desktop enivronment too.

    Mint has been nice lately, Suse also. 
    Or maybe just try straight Debian, I think they also have a Mint Mate or Cinnamon DE.

    For real light weight, DSL (Dam* Small Linux) or http://www.everydaylinuxuser.com/2014/08/5-linux-distributions-for-very-old.html
  • TorTor Posts: 2,010
    Broadcom wifi is often a problem on Linux. The official Broadcom Linux drivers (from Broadcom) are junk, to be frank. The open source drivers are working ok for some variants of hardware, not so much for others. There are lots of subtle differences between various Broadcom chipsets and implementations, even within the same hardware ID. Combine that with Broadcom's traditional closed specs and you end up with non-working wifi.
    On the other hand Broadcom Ethernet works well, for all chipsets I have tried.
    I use an Asus portable wifi->Ethernet thingy with my Samsung Broadcom-equipped notebook. Works fine.
  • ElectrodudeElectrodude Posts: 1,658
    edited 2015-07-09 18:20
    Broadcom wifi is often a problem on Linux. The official Broadcom Linux drivers (from Broadcom) are junk, to be frank. The open source drivers are working ok for some variants of hardware, not so much for others. There are lots of subtle differences between various Broadcom chipsets and implementations, even within the same hardware ID. Combine that with Broadcom's traditional closed specs and you end up with non-working wifi.
    On the other hand Broadcom Ethernet works well, for all chipsets I have tried.
    I use an Asus portable wifi->Ethernet thingy with my Samsung Broadcom-equipped notebook. Works fine.I can certainly attest to this.  I have Broadcom wifi on my Macbook 4,1.  I actually got it to work somehow.  I have to jump through a different set of hoops every time I update my kernel.  It's just wonderful.  
  • mparkmpark Posts: 1,305
    MPark is also missed around here.


    I'm not dead yet!
  • Heater.Heater. Posts: 21,230
    Wow, MPark, good to hear that.
    I didn't mean to imply that you were.

Sign In or Register to comment.