Shop OBEX P1 Docs P2 Docs Learn Events
PropBasic Studio - Coming Soon — Parallax Forums

PropBasic Studio - Coming Soon

BatangBatang Posts: 234
edited 2013-08-15 23:01 in Propeller 1
Due to the interest in PropBasic I am developing a development environment to support it.

A Beta test version should be available for testing in about 3 weeks.

Some Features:

1. Project based with project manager.
.. Project Manager has setup for Clock, PLL etc with rule checking, so no need to hand code.
.. Project Manager has setup for Cog or LMM mode with automatic code addition.
.. Project Manager archives project file to Zip files.

2. Project Explorer that shows project files with click to load and edit.

3. File Explorer that shows open project and or loose code/lib files.

4. Module Explorer that shows Functions/Subs for each code/lib file with click to load and edit.

5. Pin Configuration editor that defines Pin Label, In/Out and Default State Lo/Hi.
.. Pin Configuration editor recurses any Lib files and updates Labels.
.. Pin label definitions are automatically added to code so no need to hand code.
.. Pin Configuration Graphic view that displays chip package outline (all packages) and Pin Labels.
.. Pin Configuration Graphic view can be printed or saved as an image (jpg/png/bmp).

6. Code editor has syntax highlighting.
.. Code editor has font size setting.
.. Code editor has on line enter syntax parsing with underlining of syntax error.
.. Code editor has the usual editing features - cut,paste,select all,search & replace etc.
.. Code editor has current line highlight.
.. Code editor indicates modified lines.
.. Code editor has selection code comment/uncomment and spin syntax block commenting.
.. Code editor has selection indent increase/decrease.
.. Code editor has line Book Marks with go to next or previous and clear all.
.. Code Editor has undo/redo.
.. Code editor has print.
.. Code editor has right button click context menu for quick entry.
.. code editor has optional display of line numbers and white spaces.
.. Code editor has code formatting - selection to lower case, uppercase, capitalize and trim white spaces.
.. Code editor has outlining (code collapse, expand)
.. Code editor has GoTo line number.
.. Code editor has code completion - for constructs IF..THEN, FOR..NEXT hitting enter will complete the construct.

7. Serial Terminal with automatic connect/disconnect during prop binary loading.
.. Function buttons that have definable strings for terminal output.

8. Main menu bar buttons for File and Project, Compile, Compile and Build Binary, Load Binary to prop.

9. Compiler output progress panel.

10. Compiler error/warning panel with click to go to file, error line.

11. Main GUI supports docking for open code and terminal windows and auto hide for Explorer and Error/Output Panels.

12. Integrated prop binary loader (and maybe compiler).

13. It is Free



Initial deployment will be for Windows with a Mac build sometime after that.

Any feedback and or comments welcome.

Cheers.

Image of GUI is here: http://prx.sytes.net/PropBasicStudio.png
«13

Comments

  • RsadeikaRsadeika Posts: 3,837
    edited 2013-05-25 05:21
    It has not been mentioned, but before Heater asks, will this be open sourced, or something else?

    Ray
  • David BetzDavid Betz Posts: 14,516
    edited 2013-05-25 05:23
    This sounds excellent! I can't wait to try writing my first PropBASIC program with it! Of course, I may have to wait for the Mac version unless it will run under my virtual Windows install on my Mac.
  • BatangBatang Posts: 234
    edited 2013-05-25 07:21
    @Rsadeika - If you mean is the source code available - No.

    @David Betz - It should run but I will check.
  • David BetzDavid Betz Posts: 14,516
    edited 2013-05-25 07:28
    Batang wrote: »
    @Rsadeika - If you mean is the source code available - No.

    @David Betz - It should run but I will check.
    Is there a reason that you're not making it open source (licensed components or something like that)? I think people may be hesitant to become dependent on a close source tools after what has happened with BST.
  • BatangBatang Posts: 234
    edited 2013-05-25 08:46
    Is there a reason that you're not making it open source (licensed components or something like that)?

    Hi David, before I answer that can you enlighten me in regards to the below: i.e. what is the issue with BST?
    I think people may be hesitant to become dependent on a close source tools after what has happened with BST.
  • David BetzDavid Betz Posts: 14,516
    edited 2013-05-25 08:50
    Batang wrote: »
    Hi David, before I answer that can you enlighten me in regards to the below: i.e. what is the issue with BST?
    BST is a closed source IDE/compiler for Spin that many people have been using but which the developer has stopped supporting. Since it is closed source, no one can take over for him and it is essentially dead.
  • BatangBatang Posts: 234
    edited 2013-05-25 09:42
    Hi David,

    So am I to assume that there is something wrong with BST that requires it to be modified or repaired? If not then what does it matter if it is closed source or not a so long as it does what is supposed to do.

    Changes to software usually falls into 2 categories 1. Bug fixes and 2. New features.

    PropBasic Studio is nothing but a glorified text editor with features to make it easier to produce code with the PropBasic compiler.

    As such bugs etc are relativity easy to find and fix and I am sure that it will have more than enough features so in my opinion so long as it works, is stable and is free.

    With that in mind why would people be hesitant?

    My reason for not releasing source is that it uses quite a few of our in-house class libraries.

    From my observation (forums and other places) those who scream loudest about software should be open source are those less likely to actually contribute anything to the open source code base. What they actually want (mean) is free software.

    I am still using MS Office 2003 and if MS disappeared down a black hole tomorrow (likely) it would still continue to work.

    Cheers.
  • David BetzDavid Betz Posts: 14,516
    edited 2013-05-25 10:02
    Batang wrote: »
    Hi David,

    So am I to assume that there is something wrong with BST that requires it to be modified or repaired? If not then what does it matter if it is closed source or not a so long as it does what is supposed to do.

    Changes to software usually falls into 2 categories 1. Bug fixes and 2. New features.

    PropBasic Studio is nothing but a glorified text editor with features to make it easier to produce code with the PropBasic compiler.

    As such bugs etc are relativity easy to find and fix and I am sure that it will have more than enough features so in my opinion so long as it works, is stable and is free.

    With that in mind why would people be hesitant?

    My reason for not releasing source is that it uses quite a few of our in-house class libraries.

    From my observation (forums and other places) those who scream loudest about software should be open source are those less likely to actually contribute anything to the open source code base. What they actually want (mean) is free software.

    I am still using MS Office 2003 and if MS disappeared down a black hole tomorrow (likely) it would still continue to work.

    Cheers.
    I guess I'm not sure if people will be hesitant to use it. BST is still working on all of its target platforms as far as i know but I think people are starting have have some problems using it with later releases of the various operating systems. That certainly won't happen with yours for a long time so maybe it isn't a big deal. Anyway, your UI looks very nice. I'm looking forward to trying it.
  • BatangBatang Posts: 234
    edited 2013-05-25 10:07
    David Betz wrote: »
    I guess I'm not sure if people will be hesitant to use it. BST is still working on all of its target platforms as far as i know but I think people are starting have have some problems using it with later releases of the various operating systems. That certainly won't happen with yours for a long time so maybe it isn't a big deal. Anyway, your UI looks very nice. I'm looking forward to trying it.

    Cheers
  • Heater.Heater. Posts: 21,230
    edited 2013-05-25 10:46
    Rsadeika,
    ...but before Heater asks, will this be open sourced...

    You called? I was happy biting my lip but now the conversation has moved on I really have to say something.

    Firstly, I love BST and I have used it a lot. Without BST I would have given up with the Propeller as there was no easy way to develop for it on my chosen platform. BST has features that my projects have needed that the Prop Tool does not have. BradC did a magnificent job with BST.

    But, being a closed source program and given that BradC no longer wants to maintain it BST is terminally ill.

    This is actually causing me grief at this very moment. I have just let my ARM board spend 12 hours compiling propgcc for the ARM. As it happens propgcc includes the prop loader which uses some PASM code from modules written in Spin. Those modules are compiled with BSTC.

    That means my install of propgcc on my ARM fails. I now have to rebuild the loader on a PC and copy the required dat and bin files over.

    If BSTC were open source this would not be an issue as we can easily build Pascal programs on ARM and get BSTC running there.

    Never mind the fact that it would be cool to be able to use the BST IDE on this machine anyway.
    What they actually want (mean) is free software.
    That may well be true.
    That does not mean there are not sound engineering reasons for wanting to select open source software over closed.

    When MS goes town the tubes and all the world has moved on to ARM processors you are going to be very glad there are open source word processors around capable of reading your archive of Office 2003 documents. You migh think that scenario is extreme but I have already seen it play out one large company that could not open it's own documents because the newer versions of Word were not able to read the older format. Luckily I showed them Open Office could and they were saved a lot of pain.

    Dev tools in particular need to be as long lived and supported as the projects you expect the users to create with it. Are you really going to be around and willing to provide an ARM port when the time comes? Or fix some incompatability with the latest and greatest OS in the furure? I for one am fed up with getting into those dead ends.
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2013-05-25 11:02
    @Batang

    Please reconsider your position on this project being Open Source. There are other projects in the works which might dovetail very nicely with what you are doing. I'm looking forward to trying our your project.

    Jeff
  • David BetzDavid Betz Posts: 14,516
    edited 2013-05-25 11:18
    Heater. wrote: »
    This is actually causing me grief at this very moment. I have just let my ARM board spend 12 hours compiling propgcc for the ARM. As it happens propgcc includes the prop loader which uses some PASM code from modules written in Spin. Those modules are compiled with BSTC.

    That means my install of propgcc on my ARM fails. I now have to rebuild the loader on a PC and copy the required dat and bin files over.

    If BSTC were open source this would not be an issue as we can easily build Pascal programs on ARM and get BSTC running there.
    Sorry about the BSTC dependency. That will be resolved soon. All of the cache drivers are now built with spin2cpp leaving only a couple of files that need bstc. It is my goal to get all of those converted at some point. I'd like it to be possible to build the PropGCC without any external tools like bstc.
  • Heater.Heater. Posts: 21,230
    edited 2013-05-25 11:44
    No worries David. I worked around it before I can do it again. It's just long enough ago that I forgot how I did it.
  • NWCCTVNWCCTV Posts: 3,629
    edited 2013-05-25 12:15
    the newer versions of Word were not able to read the older format
    Exactly how old of Word files were these? I have Office 2013 and can open my files from Office 97. This seems odd to me. You can also open newer Office files using older versions with a simple download. @Batang, I am really looking forward to this "Studio" whether open source or not. From the sounds of it this may make a LOT of things easier to do.
  • Heater.Heater. Posts: 21,230
    edited 2013-05-25 12:35
    Actually that event happened in about 1999 whilst I was working at Nokia. They had huge amounts of documentation in going back I don't know how many years. So I don't recall what versions were involved.

    Anyway, does that make any difference? That kind of possibility is there when you rely on any single supplier of any closed source program and undocumented file format.
  • MicksterMickster Posts: 2,694
    edited 2013-05-25 12:45
    This news has really made my day!

    Thank you.

    Mickster
  • David BetzDavid Betz Posts: 14,516
    edited 2013-05-25 12:48
    Heater. wrote: »
    Actually that event happened in about 1999 whilst I was working at Nokia. They had huge amounts of documentation in going back I don't know how many years. So I don't recall what versions were involved.

    Anyway, does that make any difference? That kind of possibility is there when you rely on any single supplier of any closed source program and undocumented file format.
    Well, there really are no file format problems with a PropBASIC IDE at least since PropBASIC source files are just ASCII. The worst that will happen is that you'll either have to start using the command line compiler with a separate editor or move to some other IDE. The only proprietary file format I can imagine would be involved is the project file and maybe we can convince Batang to release a description of that.
  • NWCCTVNWCCTV Posts: 3,629
    edited 2013-05-25 12:49
    Anyway, does that make any difference?
    No, I was just curious as I have never seen an instance where older word files could not be opened with newer versions. Being in IT for 15 plus years what I see is that all my clients (New and old) run Windows and Windows server products. This is what I taught myself on and it is what I sell. I am not opposed to Linux or other Open Source software but it seems that switching would be a huge undertaking for my clients and they all just want what works for them now.
    That kind of possibility is there when you rely on any single supplier of any closed source program and undocumented file format.
    I agree but I would have to say that I do not see MS going away in my lifetime, or at least before I retire in 13 years!!!!!!
  • jmgjmg Posts: 15,173
    edited 2013-05-25 13:42
    Batang wrote: »
    From my observation (forums and other places) those who scream loudest about software should be open source are those less likely to actually contribute anything to the open source code base. What they actually want (mean) is free software.

    Whilst that may be somewhat true, there is another important reason, which is longevity.

    Circumstances can change: you might get hit by a bus, or take a job that mandates NO external code work, or simply get tired.
    In those cases, it is good to have a continuation path.

    To me, that does not have to be fully open source, but an abandon-ware policy with a repositry would do ok, if you really dislike open source..
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2013-05-25 13:53
    From my observation (forums and other places) those who scream loudest about software should be open source are those less likely to actually contribute anything to the open source code base. What they actually want (mean) is free software.


    Others of us would like to create supporting programs and perhaps supporting demos and documentation. Open Source insures that these efforts will not expire due to outside circumstances.


    Jeff
  • Heater.Heater. Posts: 21,230
    edited 2013-05-25 14:06
    NWCCTV,
    I agree but I would have to say that I do not see MS going away in my lifetime, or at least before I retire in 13 years!!!!!!
    I know, depressing isn't it.

    On the other hand technological change has been going faster and faster as time goes by.
    What if those 90% of home PC owners who never use their computers for computing realize they can get by with a tablet? What if the cheapest tablets are the ones where you don't have to pay for the OS or most of the useful apps.?
    Boom. In a very short space of time Windows is only found in offices and all us hobbiests will be wanting non-Windows solutions.

    Now I did say there were engineering reasons to select open source rather than closed. But let's face it, free is better than paying for most folks and anyway cost reduction is a very big part of the skill in engineering.

    MS could implode dramatically in a very short space of time.
  • TinkersALotTinkersALot Posts: 535
    edited 2013-05-25 18:19
    Batang wrote: »
    My reason for not releasing source is that it uses quite a few of our in-house class libraries.

    this causes me some pause. how can we be sure that the owner of this IP (unless it really is you speaking as a collective-we) will not yank this effort to suit their own needs/purposes?
  • BatangBatang Posts: 234
    edited 2013-05-26 03:19
    Gee this thread has gone of tangent, let me if I may comment on the various posts here.
    Batang
    I am still using MS Office 2003 and if MS disappeared down a black hole tomorrow (likely) it would still continue to work.

    This being my own post let qualify it:
    This was not about file formats but about the fact the software is 10 years old and still can be used.
    Heater
    Dev tools in particular need to be as long lived and supported as the projects you expect the users to create with it. Are you really
    going to be around and willing to provide an ARM port when the time comes? Or fix some incompatability with the latest and greatest OS in
    the furure? I for one am fed up with getting into those dead ends.

    The ability to use the program is dependent on the long term viability of Microsoft and Apple.

    When you mention ARM I assume that your are referring to tablet devices and I my opinion it is a novel idea to run such software on those devices but for any serious development work it's going to be on the desktop.

    For example I use 2 x 21 inch monitors for development work, 1 for coding the other for outputs, testing, results etc. I recall reading a white paper about using 2 monitors leads to a 30% increase in productivity and while I have no specific KPI's for this I can say work is faster. Now whilst you can do development on a tablet it is not vary productive but with the setup I have I need only move my eyes rather than various swipes/taps etc to see what I need to see.
    David Betz
    The only proprietary file format I can imagine would be involved is the project file and maybe we can convince Batang to release a
    description of that.

    I was actual planning to have the project file as a serialized object but as I have been caught in the past with comparability issues when changing the object properties the project file will be XML.
    jmg
    Circumstances can change: you might get hit by a bus, or take a job that mandates NO external code work, or simply get tired.
    In those cases, it is good to have a continuation path.

    Somewhat morbid but a good point.
    As stated early in another post the IDE is a glorified text editor, the only continuation path would be to (a) fix any bugs or (b) add features, so as stated before due the simplicity of what is is bugs will found and resolved fairly early and as to additional features please add to the list that I have already given on the top post.
    Oldbitcollector (Jeff)
    Others of us would like to create supporting programs and perhaps supporting demos and documentation. Open Source insures that these
    efforts will not expire due to outside circumstances.

    Valid points but let me ask "What supporting program could you add to an IDE?"
    Any supporting demos would be created with the IDE and I plan to included a sample project as a reference.
    As for the documentation, I suck at doing documentation and it is my wish that someone will step up and provide a user manual, much like that manual that was created for the PropBasic compiler.
    Heater
    What if those 90% of home PC owners who never use their computers for computing realize they can get by with a tablet? What if the
    cheapest tablets are the ones where you don't have to pay for the OS or most of the useful apps.?
    Boom. In a very short space of time Windows is only found in offices and all us hobbiests will be wanting non-Windows solutions.

    I think I covered this above but let me add that as I do a lot of software development for Android devices if there is enough interest I may do an Android port.

    But I think that everyone needs to keep in mind I am only doing an IDE there also 2 external programs i.e. the PropBasic compiler and the Spin compiler.
    TinkersALot
    this causes me some pause. how can we be sure that the owner of this IP (unless it really is you speaking as a collective-we) will not
    yank this effort to suit their own needs/purposes?

    Yep it is the collective we, As I own the company and own the IP of the various class libraries this is not an issue.

    Cheers
  • Heater.Heater. Posts: 21,230
    edited 2013-05-26 04:11
    Batang,
    ...about the fact the software is 10 years old and still can be used.
    There is plenty of software out there that did not live ten years. Mostly because the OS or hardware platform became obsolete and disappeared and the supplier disappeared or was otherwise unable to support it. It is true that the Intel/MS duopoly has been long lived and done a good job of backwards compatibility. But that is no guarantee of future performance, as the say.
    When you mention ARM I assume that your are referring to tablet devices
    No. There is no reason you can't have an ARM computer. After all the original ARM processor was exactly designed fro a desktop computer and it was faster than anything IBM PC compatible machine at the time. There is no reason a future tablet can't also drive multiple monitors and allow attachment of sata drives etc etc. That future might be comming faster than you think. http://cubieboard.org/
    ...the only continuation path would be to (a) fix any bugs or (b) add features,
    Or create a Linux or other OS port, or get it working on a different architecture and so on and so on.
    "What supporting program could you add to an IDE?"
    No idea. But there is a reason Eclipse has a plugin system and there have been hundreds of supporting programs created for it.


    Perhaps that's enough for the open source debate on this particular thread.
  • TinkersALotTinkersALot Posts: 535
    edited 2013-05-26 07:36
    Batang wrote: »
    Yep it is the collective we, As I own the company and own the IP of the various class libraries this is not an issue.

    Cheers

    okay. thanks for taking the time to address the question. cheers!
  • BatangBatang Posts: 234
    edited 2013-05-26 08:48
    Updated GUI image showing syntax highlighting and book marks.

    http://prx.sytes.net/PropBasicStudio.png
  • David BetzDavid Betz Posts: 14,516
    edited 2013-05-26 08:56
    Batang wrote: »
    Updated GUI image showing syntax highlighting and book marks.

    http://prx.sytes.net/PropBasicStudio.png
    This is really looking very nice! In one of your recent posts you mentioned that you used two external programs, the PropBASIC compiler and the Spin compiler. Do you intend to make your IDE support Spin programming as well as PropBASIC or are you just using the Spin compiler to assemble the output of the PropBASIC compiler?
  • BatangBatang Posts: 234
    edited 2013-05-26 09:05
    This is really looking very nice! In one of your recent posts you mentioned that you used two external programs, the PropBASIC compiler and the Spin compiler. Do you intend to make your IDE support Spin programming as well as PropBASIC or are you just using the Spin compiler to assemble the output of the PropBASIC compiler?

    HI David,

    Interesting question, in answer to your first question, yes the spin compiler compiles the PropBasic compiler output.

    In answer to your second question, the syntax parser already handles spin so it would be a change to the project manager to select either a propbasic or spin project.

    However as jazzed is in the process of doing the same thing with SIDE and the goal of my project is to provide an IDE for PropBasic, so not at this time.

    However with that said if there are sufficient requests for it I may reevaluate that position.

    Some spin code pasted into the editor
    SpinExample.jpg


    Cheers
    1024 x 555 - 45K
  • potatoheadpotatohead Posts: 10,261
    edited 2013-05-26 17:43
    I'm perfectly OK using closed source programs and paying for them when they operate on open data. This is one such case. While I am not a Prop Basic user, I would use this easily. Great "free beer" case where it works and is great and thanks. Should the day come where it no longer works, choose another option.

    I also want to add that open source software means not having to remap skills all the time. That is my first concern. I never know what OS I might be working on, and the ARM points heater made are growing compelling. I will absolutely have an ARM computer in the future. It will run Linux or Android too.

    The cost argument is a good one, but I would expand that to skills again. A platform move, operating system move and or other similar things is best when one can build the tools and just go. This is true whether or not one paid for tools!

    Case in point: PropGCC. I have a older Mac and was able to just build it and go. Move to Linux, build it and go, windows? Droid? Old IRIX? That is to me the most compelling reason, and I'll pay for it too. Remapping skills just costs a lot.

    @Bating, thanks for addressing things. Take my post as a supporting one, as it is meant that way and to clarify "free" as it does not always mean "costs nothing"
  • jmgjmg Posts: 15,173
    edited 2013-05-26 18:27
    Batang wrote: »
    Interesting question, in answer to your first question, yes the spin compiler compiles the PropBasic compiler output.

    In answer to your second question, the syntax parser already handles spin so it would be a change to the project manager to select either a propbasic or spin project.

    However as jazzed is in the process of doing the same thing with SIDE and the goal of my project is to provide an IDE for PropBasic, so not at this time.

    However with that said if there are sufficient requests for it I may reevaluate that position.

    It would seem a logical combination to do.

    If you need Spin for compiling PropBASIC and you already have syntax highlighting, then what else is required ?

    eg if PropBASIC produces an error in Spin compile, I presume you will jump the editor to the (spin) error line ?
Sign In or Register to comment.