Shop OBEX P1 Docs P2 Docs Learn Events
Open Propeller Project #3: Propeller IDE V0.1 Package Available - Page 26 — Parallax Forums

Open Propeller Project #3: Propeller IDE V0.1 Package Available

12324262829

Comments

  • dgatelydgately Posts: 1,630
    edited 2014-04-16 19:01
    Jazzed,

    Ran the latest Mac OS version (hg pull & hg update loader) after rebuilding the project (MacBook Pro OS X 10.9.2)...

    Launched PropellerIDE
    Plugged-in a QuickStart board
    Pushed the "Identify Hardware" button, IDE responded correctly
    Selected "Identify Hardware" menu item, IDE responded correctly
    Typed Function & F7 keys, IDE responded correctly

    Pushed the "DEBUG" button, IDE compiled and proceeded to load the binary to RAM, console showed up, Hello text displayed
    Typed Function & F8 keys, IDE compiled and proceeded to load the binary to RAM, console showed up, Hello text displayed

    Plugged-in a Propeller ASC (yes, purchased one this week because, why not?), the "Serial Port Select" pop-up responded by showing both boards
    Selected the Propeller ASC from the "Serial Port Select" pop-up
    Pushed the "DEBUG" button, IDE compiled and proceeded to load the binary to RAM, console showed up, Hello text displayed
    Typed Function & F8 keys, IDE compiled and proceeded to load the binary to RAM, console showed up, Hello text displayed

    Pushed the "Identify Hardware" button, IDE responded correctly
    Selected "Identify Hardware" menu item, IDE responded correctly
    Typed Function & F7 keys, IDE responded correctly

    Loaded my Spin test source code, compiled, loaded to RAM and DEBUGGED on the QS and Propeller ASC boards, console showed up, Hello text displayed
    Compiled and loaded the source to EEPROM and DEBUGGED on the QS and Propeller ASC boards, console showed up, Hello text displayed


    All tests succeeded...

    I do get a number of the following lines showing up in Qt Creator's console when I quit Propeller IDE (2 - 6 occurrences of this):

    tcsetattr failed
    tcsetattr failed


    dgately
  • jazzedjazzed Posts: 11,803
    edited 2014-04-16 19:14
    Thanks Dennis.

    Next, I can push the V0.13 loader branch changes. Sorry I haven't done that yet. So busy this week.

    The tcsetattr thing on Mac is a little weird. Mac doesn't appear to know how to flush.
    dgately wrote: »
    All tests succeeded...

    I do get a number of the following lines showing up in Qt Creator's console when I quit Propeller IDE (2 - 6 occurrences of this):

    tcsetattr failed
    tcsetattr failed


    dgately
  • dgatelydgately Posts: 1,630
    edited 2014-04-16 19:18
    jazzed wrote: »
    Thanks Dennis.

    Next, I can push the V0.13 loader branch changes. Sorry I haven't done that yet. So busy this week.

    No hurry for me, as I'm only finding time to do spiny stuff "on occasion"... BTW: I was using the internal loader for those tests.

    dgately
  • jazzedjazzed Posts: 11,803
    edited 2014-04-16 19:19
    dgately wrote: »
    No hurry for me, as I'm only finding time to do spiny stuff "on occasion"... BTW: I was using the internal loader for those tests.

    dgately

    Yes. Internal is much nicer. Glad you could get spinny for a while. ;-)
  • RsadeikaRsadeika Posts: 3,837
    edited 2014-04-17 04:21
    I just got through checking all four different boards that I have, and they are all working as expected. Excellent work jazzed!

    Does this conclude the first cut? What will be involved in the cut+ and the second cut? So I guess the next thing we can look forward too is testing the Linux distribution(s) which should only be a Debian distribution.

    Since it has been decided that there will be a P1+ chip(for the time being), at what point will we start seeing the changes to PropellerIDE or will their be a major IDE revision that will be involved? Yes, I am assuming that there will be a Spin2, but then again...

    Ray
  • jazzedjazzed Posts: 11,803
    edited 2014-04-17 07:24
    Looks like we have a reasonable base-line. Please continue testing the windows package.

    I'm off line today and most of tomorrow. If you have issues, questions, answers, etc... post them, but I can't answer for a while.

    Saturday I'll look at making linux and mac packages.
  • KMyersKMyers Posts: 433
    edited 2014-04-17 13:41
    Jazzed, enjoy your time away. I tried the latest version on my C3 and activity boards and could NOT break it with diff programs repeated loads burns. Never got a fail to load and the terminal worked every time even after doing a ID then run the terminal. Looks good and thank you for your hard work and frustrations.
  • jazzedjazzed Posts: 11,803
    edited 2014-04-21 15:56
    Here's a new toy for those who enjoy building Qt things from scratch: https://code.google.com/p/mcusimulator/

    It starts up with a blink program for now. Hit the Run button to see the blinking. Hit Stop to ... well you know what stop does.

    At the moment the simulator WILL ONLY WORK WITH SINGLE COG PROGRAM (sorry for caps... just wanted to make it clear). This will be fixed later.

    Only the Run command will blink the LED check boxes according to waitcnt. Debug and friends will blink the LED boxes when the code gets to it. You can change the Debug animation step rate with the Delay button. The simulator code PASM interpreter is based on Dave Hein's spinsim ... I haven't attributed this to him yet, but will.

    I may integrate this into PropellerIDE later. If you want to test SPIN programs now, use the hammer in PropellerIDE and load the resulting .binary into the simulator. No peripherals are connected at the moment, but I plan to add support for keyboard/mouse and video later.
  • dgatelydgately Posts: 1,630
    edited 2014-04-21 21:55
    jazzed wrote: »
    I may integrate this into PropellerIDE later. If you want to test SPIN programs now, use the hammer in PropellerIDE and load the resulting .binary into the simulator. No peripherals are connected at the moment, but I plan to add support for keyboard/mouse and video later.

    Nice!

    I'm watching my LEDOnOff test program run through its passes...

    dgately
  • jazzedjazzed Posts: 11,803
    edited 2014-04-21 22:10
    Dennis,

    Some changes for multi-cog operation are in the repository, and now the simulator can run some Propeller-GCC CMM/LMM programs :)

    I've run a full-duplex-serial based program, and that seems ok. Unfortunately something like Graphics_Demo.spin fails ... not sure why.
  • jazzedjazzed Posts: 11,803
    edited 2014-05-13 11:49
    Hi.

    I've committed the latest PropellerIDE changes to the "loader" branch for anyone who wants to test on Linux/Mac.
  • RoadsterRoadster Posts: 209
    edited 2014-07-26 05:10
    Is their a setup for PropellerIDE for Linux
  • jazzedjazzed Posts: 11,803
    edited 2014-07-26 10:32
    Not yet.

    Build from source is the only option for Linux/Mac users at the moment.

    Hoping I have time to do something about that this week.
  • jazzedjazzed Posts: 11,803
    edited 2014-07-29 16:10
    Hi.

    I've been working through some issues on the Opensource PropellerIDE program.

    The big thing that needs to be done is create packages for testing. I'm working on that. We need to have some good results before August 5th.

    Forum folks are all I have for testing. I hope I can count on you. It's really important.


    I'll have a new Windows test package soon. Then Mac and Linux test packages.
    There are some enhancements I want to look at too.

    Among items on my list, I see "Need a Top Object method" ... is this important? How many people know something like that even exists in PropellerTool.

    To me it's just another "Project" trap. Opinion?
    Other things ....

    I've added AUTO to the COM port selector. If it's auto, it searches for a port and board to load otherwise it uses the selected port. By default on program start, AUTO is selected.

    Find/Replace ... if you highlight a word and do CTRL+F the find word is automatically added, otherwise the find word is blank. Find next/previous still function the same way.

    I'm also targeting fixing up Spin Suggest and Indentation.


    Thanks all.
    --Steve
  • RoadsterRoadster Posts: 209
    edited 2014-07-29 16:35
    I will test all versions ( Linux, and mac )
  • Heater.Heater. Posts: 21,230
    edited 2014-07-30 03:27
    Manned and ready here. Debian amd64 Wheezy and Jessie. Win7 and XP.
  • RsadeikaRsadeika Posts: 3,837
    edited 2014-07-30 06:11
    I can help out with testing for Kubuntu 14.04 64-bit.
    ... I see "Need a Top Object method" ... is this important? How many people know something like that even exists in PropellerTool.
    People find out about it when they download something from OBEX and the zip contains three or four objects. At first that drove me up the wall, trying to figure out which Spin file to load in first, in fact that is probably one thing I do not like about that.

    Ray
  • jazzedjazzed Posts: 11,803
    edited 2014-07-31 13:17
    I've been fixing SpinSuggest.

    One question I have that needs input is:

    When a suggestion is chosen by pressing the tab key, should the word complete with a single space, or a number of spaces that would be considered a tab amount?

    For example:
        long somevar
        long someothervar
        long somber
        long somatic
    
    PUB start
    
        somevar := 0
        somber  := 0 ' complete with tab spaces (Editor Tab Space Count set to 2 or 4)
        somber := 0 ' complete with one space
    
    
    


    Hard tabs can be in the source, but PropellerIDE will not add hard tabs for you.
  • DavidZemonDavidZemon Posts: 2,973
    edited 2014-07-31 14:29
    jazzed wrote: »
    I've been fixing SpinSuggest.

    One question I have that needs input is:

    When a suggestion is chosen by pressing the tab key, should the word complete with a single space, or a number of spaces that would be considered a tab amount?

    For example:
        long somevar
        long someothervar
        long somber
        long somatic
    
    PUB start
    
        somevar := 0
        somber  := 0 ' complete with tab spaces (Editor Tab Space Count set to 2 or 4)
        somber := 0 ' complete with one space
    
    
    


    Hard tabs can be in the source, but PropellerIDE will not add hard tabs for you.

    I would say this depends on if auto-format exists. If there is a keyboard shortcut to autoformat/autoindent, then insert enough spaces to reach the next tab column. If they don't like it, they can autoformat to their liking and fix it. Without autoformat, I'd say insert one space so that they can control it however they please.
  • jazzedjazzed Posts: 11,803
    edited 2014-08-02 16:15
    Hi all.

    I've hit a wall today so I won't be making test packages probably until tomorrow.

    However, I did commit the source that allows linux builds using the plinrelease.sh methodology and Qt4. With the ability to use Qt4 again, things get much simpler for distributions. I've learned a way to make .deb packages, so that may show up by late August. Source packages will take longer because I have to port the plinrelease.sh script(s) to use make for that.

    What is the wall?

    1. Source code saved in /opt/propelleride/spin will not work for typical use because that location is read-only.
    2. I need a better way to determine if settings are out of date.

    Other than those two issues everything seems to be fine.

    1. Source code ....

    So, the problem with 1 is that the compiler is told to write a binary to the directory where the source exists, and the loader also looks there. Now, the /tmp filesystem can be used for such storage, but that doesn't solve the issue of the initial source file also being in a read-only location. There are a few ways around this. One way is to recognize that the user doesn't have write permissions and ask for the file to be saved in another place for doing work. Another way is to copy all code to some user defined place. Still another option is to force the user to manage all of this (LOL).

    I'm leaning more toward telling users that the file has to be saved in a location (with a save-as dialog) where they have write permissions. This beats the heck out of copying all files to a place like ~/Documents or something because doing that is a big maintenance headache. Anyway, I'm going to sleep on this one.

    2. I need a better way ... (settings) etc....

    The reason I need to determine if settings are out of date is that over time as new features are added, the settings get stale and cause problems. I'm thinking that saving an install-date key or file will solve this, but I'm open to other suggestions if anyone has better ideas.

    Guess some of this is just thinking out loud.

    As far as that other question goes, I've decided to indent by tab space count since that is helpful. I could easily remove that or even add a checkbox option for it later. There will never be an auto-source-code formatter in PropellerIDE unless someone else adds it as an optional feature.
  • jazzedjazzed Posts: 11,803
    edited 2014-08-03 12:57
    Ok,

    Here we go. I've uploaded a Debian x86_64 PropellerIDE package here. Please download and test.
    The package should work on Ubuntu x86_64 also as I've tested it there.

    The one thing I'm worried about (but didn't have time to address yet) is the need for zlib1g shared library.

    If the program doesn't start with entering propelleride after setup, then do the following:

    $ sudo apt-get install zlib1g
    OR if that doesn't work ....
    $ sudo apt-get install zlib1g-dev

    If the program still doesn't start with entering propelleride after setup, then do the following:

    $ cd /opt/propelleride/bin
    $ ldd PropellerIDE
    Copy/Paste the output here so I'll know what happened.
  • jazzedjazzed Posts: 11,803
    edited 2014-08-03 13:13
    Hi.

    A Mint 32 bit PropellerIDE Version 0.18 package is now ready for download and test.

    BTW, you should be prompted to save the Welcome.spin file on first startup.
    Also, any previous settings should be wiped out between installations.
  • RsadeikaRsadeika Posts: 3,837
    edited 2014-08-03 13:24
    OK, here we really go. Just a reminder, Kubuntu 14.04 64-bit.
    ray@raymini:~/programs$ cd PropellerIDE-0-18
    ray@raymini:~/programs/PropellerIDE-0-18$ dir
    bin license setup.sh spin
    ray@raymini:~/programs/PropellerIDE-0-18$ sudo ./setup.sh
    [sudo] password for ray:
    Installing PropellerIDE
    ray@raymini:~/programs/PropellerIDE-0-18$ propelleride
    Cannot mix incompatible Qt library (version 0x40806) with this library (version 0x40802)
    Aborted (core dumped)
    ray@raymini:~/programs/PropellerIDE-0-18$

    ray@raymini:/opt/propelleride/bin$ ldd PropellerIDE
    linux-vdso.so.1 => (0x00007fffd875f000)
    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fa881a79000)
    libQtGui.so.4 => /usr/lib/x86_64-linux-gnu/libQtGui.so.4 (0x00007fa880dc6000)
    libQtCore.so.4 => /usr/lib/x86_64-linux-gnu/libQtCore.so.4 (0x00007fa8808e0000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fa8806c2000)
    libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fa8803be000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fa8800b7000)
    libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fa87fea1000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fa87fadb000)
    libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007fa87f89e000)
    libaudio.so.2 => /usr/lib/x86_64-linux-gnu/libaudio.so.2 (0x00007fa87f686000)
    libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fa87f37e000)
    libpng12.so.0 => /lib/x86_64-linux-gnu/libpng12.so.0 (0x00007fa87f157000)
    libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007fa87eeb4000)
    libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007fa87ec63000)
    libSM.so.6 => /usr/lib/x86_64-linux-gnu/libSM.so.6 (0x00007fa87ea5a000)
    libICE.so.6 => /usr/lib/x86_64-linux-gnu/libICE.so.6 (0x00007fa87e83e000)
    libXi.so.6 => /usr/lib/x86_64-linux-gnu/libXi.so.6 (0x00007fa87e62e000)
    libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007fa87e423000)
    libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007fa87e211000)
    libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fa87dedc000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fa87dcd7000)
    librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fa87dacf000)
    /lib64/ld-linux-x86-64.so.2 (0x00007fa881cae000)
    libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007fa87d8a4000)
    libXt.so.6 => /usr/lib/x86_64-linux-gnu/libXt.so.6 (0x00007fa87d63e000)
    libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fa87d43a000)
    libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fa87d1fb000)
    libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007fa87cff3000)
    libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007fa87cdee000)
    libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fa87cbce000)
    libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fa87c9c8000)
    ray@raymini:/opt/propelleride/bin$
  • jazzedjazzed Posts: 11,803
    edited 2014-08-03 13:32
    Ray,

    Did you install Qt on your system? Guess so, that's what it says in the LDD output.

    Can you move the Qt libraries in /opt/propelleride/bin to some other folder and try to restart?
  • RsadeikaRsadeika Posts: 3,837
    edited 2014-08-03 13:38
    According to my info here, I do not have Qt installed.

    Ray
  • DavidZemonDavidZemon Posts: 2,973
    edited 2014-08-03 13:41
    Ubuntu 14.04 x86_64. zlib1g and zlib1g-dev were already installed on my system. The setup script ran without errors and the IDE started up perfectly, prompting me to save the example file to a new location (perfect!).

    Not sure if this is a known problem or not, but when I try to compile/run a simple spin program
    CON  _clkmode = xtal1 + PLL16x     
      _CLKFREQ = 80_000_000
      LED = 16
      
    PUB Main
      dira[LED] := 1
      outa[LED] := 0
      
      repeat
        outa[LED] := 1
        waitcnt(CNT + _CLKFREQ)
        outa[LED] := 0
        waitcnt(CNT + _CLKFREQ)
    
    it seems to load to RAM just fine but then reboots the board instead of running. So it reload the program in EEPROM and I never see my newly downloaded program. Loading to EEPROM works great though.

    Haven't tested anything else yet. I did notice the autocompletion when typing "_CLKF" though :D
  • jazzedjazzed Posts: 11,803
    edited 2014-08-03 13:42
    Rsadeika wrote: »
    According to my info here, I do not have Qt installed.

    Ray

    But your ldd dump says you do have them.

    Please move the /opt/propelleride/bin Qt libraries as I suggested in the last post and try to start propelleride.
  • jazzedjazzed Posts: 11,803
    edited 2014-08-03 13:47
    Not sure if this is a known problem or not, but when I try to compile/run a simple spin program
    CON  _clkmode = xtal1 + PLL16x     
      _CLKFREQ = 80_000_000
      LED = 16
      
    PUB Main
      dira[LED] := 1
      outa[LED] := 0
      
      repeat
        outa[LED] := 1
        waitcnt(CNT + _CLKFREQ)
        outa[LED] := 0
        waitcnt(CNT + _CLKFREQ)
    
    it seems to load to RAM just fine but then reboots the board instead of running. So it reload the program in EEPROM and I never see my newly downloaded program. Loading to EEPROM works great though.


    Eeek. That shouldn't happen. But I've seen this kind of thing before several years ago .....

    Are you using a PPDB by chance? If not what board do you have?
  • jazzedjazzed Posts: 11,803
    edited 2014-08-03 13:48
    Ok,

    PropellerIDE Version 0.18 for Windows is now ready for download and test.

    The Mac package is next, but it will take more work than I have time for today.
  • DavidZemonDavidZemon Posts: 2,973
    edited 2014-08-03 13:49
    jazzed wrote: »
    Eeek. That shouldn't happen. But I've seen this kind of thing before several years ago .....

    Are you using a PPDB by chance? If not what board do you have?

    Quickstart
Sign In or Register to comment.