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):
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...
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.
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.
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...
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.
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.
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.
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.
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.
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.
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
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
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?
Comments
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
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.
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. ;-)
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
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.
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.
Nice!
I'm watching my LEDOnOff test program run through its passes...
dgately
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.
I've committed the latest PropellerIDE changes to the "loader" branch for anyone who wants to test on Linux/Mac.
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.
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
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
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:
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.
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.
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.
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.
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?
Ray
Not sure if this is a known problem or not, but when I try to compile/run a simple spin program 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
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.
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?
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.
Quickstart