PropGCC-SimpleIDE
jazzed
Posts: 11,803
Hi,
I've spent my own time* developing a Simple IDE for Propeller-GCC.
The Simple IDE Features:
PropGCC-SimpleIDE will be available at: http://code.google.com/p/propgcc/downloads/list
The package is about 72MB which is neat considering it has both the IDE and Propeller-GCC in it.
Unzip the package and read the SimpleIDE_UserGuide.txt
Please reply here with any questions at all so that I can help you get the most out of this IDE.
I've tested all features to my satisfaction and have noted some challenges and future enhancements in the
SimpleIDE_UserGuide.txt . Currently the Help-About points to an under construction page - it will be enhanced.
More screen shots are attached below.
Note* By my own time, I mean that it is not an officially sanctioned, sponsored, funded, or even Parallax tested effort.
This is my work that I hope will make your Propeller GCC programming experience better.
I've spent my own time* developing a Simple IDE for Propeller-GCC.
The Simple IDE Features:
- C/C++ syntax highlighting
- Tabbed editors for multiple open files
- Menu and function key command controls
- Toolbar buttons for click controls
- Search function, copy, cut, and paste
- Project panel file list for click to open files
- Add/Delete files on the project panel
- Saves project files and options in *.side files
- Automated Propeller-GCC builds (no makefiles)
- Click-error report to highlight error file and line
- Board type select drop-down list and reload
- Simple port select and integrated serial terminal
PropGCC-SimpleIDE will be available at: http://code.google.com/p/propgcc/downloads/list
The package is about 72MB which is neat considering it has both the IDE and Propeller-GCC in it.
Unzip the package and read the SimpleIDE_UserGuide.txt
Please reply here with any questions at all so that I can help you get the most out of this IDE.
I've tested all features to my satisfaction and have noted some challenges and future enhancements in the
SimpleIDE_UserGuide.txt . Currently the Help-About points to an under construction page - it will be enhanced.
More screen shots are attached below.
Note* By my own time, I mean that it is not an officially sanctioned, sponsored, funded, or even Parallax tested effort.
This is my work that I hope will make your Propeller GCC programming experience better.
Comments
Thanks for the effort. It is appreciated.
TrapperBob
What did you make that in?
Fantastic work jazzed!
Thanks heaps mate.
I am using a PPDB with winXP in a vitualbox machine. BST can program the prop, and PropGCC-SimpleIDE can see the new com port then i plug in the PPDB.
In the output part it just show this:
I havnt changed any settings aside from the com port to use. I just followed the steps in the user guide.
Sorry if it is a noob Q
Please don't sweat questions or any other feedback.
I saw that problem. Adding C:\propgcc\bin to PATH from the installer fixed it for me.
Windows7 64bit and Windows XP SP3 are all I have for testing. I don't have Win in VirtualBox.
Can you open a command window, type echo %PATH%, and copy the output here?
Would you be willing to try some test programs? The download would be about 3.4 MB.
--
Linux and Mac versions are possible. The foundation of the IDE is Qt C/C++.
I want to post the source to Google Code then port it - shouldn't be too hard.
Linux runs in VirtualBox on my PC, so I'll port that first. I don't have a Mac.
WHen you say a command window, I assume command prompt? The output was
I will try reinstalling and see if that helps with the additon to path.
Can you please download and unpack PropGCC-SideIDE.exe to the Program Files\PropGCC-SideIDE\bin directory and try it?
You will need administrative permission for this. Don't uninstall your original package.
Don't bother to reinstall the whole package, it won't help. Your PATH looks just fine.
I didnt get anything on the terminal, but that may well be my setup.
Great! Keep me up to date with your progress. I'll upload a new package fix on the GoogleCode page.
@sevs has been working with me trying to understand his issue.
Thanks for his patience. And thanks for your's too.
What we found was that some library files are missing from the distribution.
I think I still have more work to do on this, so you might want to hold off on downloading.
I'm afraid more library files could be missing, and I'm too tired to chase it all down just now.
Still, I'm leaving a new package for the adventurous on this page.
Thanks,
--Steve
jazzed: 0.3.2 seems to have solved most of the issues i was having. Debug/run still do not work as expected though, possibly the prop is resetting after it has been programmed causing it to loose its program? When i burn it works as expected, however it does seem to take maybe 3 seconds for the prop to start output any data over the serial. Again maybe the prop is resetting, but able to load from eeprom.
In any case, the Hello World example works a treat when using Burn. So anyone keen to give it a whirl, get on it
Thanks again Steve.
In the spirit of a Guinea Pig, I grabbed the latest, unzipped and installed it. Plugged in my Quickstart and fired up Side. It ran Hello.c loading to RAM, EEPROM and the Debug version (I really like the quick little debug terminal!)
Only saw 2 strange things:
1) LPT1 is one of my serial port options (obviously preparing for the long awaited USB/Parallel Propeller module)
2) the first output to the debug terminal contains some garbage characters before first "Hello World" - maybe an stdio initialization issue in propgcc? maybe a debug terminal issue.
Win7 Pro
propgcc that came with SIDE
Propeller Quickstart board
Other than that, it works great. I'll be experimenting more with it today as my day job permits. I just have my Quickstart with me today, so testing could be limited.
It's like "Goldilocks and the 3 IDEs"
Eclipse is TOO BIG!
Notepad++ is too small.
SIDE could be JUST RIGHT!!
Thank you for your "out of bandwidth" contributions!!
What is in your PATH? I.E. In DOS command window type: echo %PATH%
1) LPT1? Ok, I see how that can happen. Will fix.
2) This is really a QuickStart problem; it causes all kinds of havoc. The same problem can happen in Spin.
Put a 10K resistor between P30 (TX) and VDD. The garbage will stop.
Ok, this is good news because 0.3.2 has a change where I needed data. I'm at a loss as to why debug (F8) and run (F10) don't work for you - I still have some configuration things to look at though. I take it that you have no wires connected on your PPDB.
The Propeller EEPROM boot is always slow, so 3 seconds is reasonable.
I had added the C:\propgcc\bin previously to use propgcc, if that's where you were headed. I do have a netbook with Win7 that hasn't had propgcc on it. I can install your IDE on there in a bit to see if everything goes well and it sets everything up properly on a clean system.
If you could do a virgin install test, that would be helpful. Thanks.
and did some simple tests:
- ran it in a COG
- ran in LMM
- tried to run in XMM, but no driver was used (OK)
- tested different optimizations, no failure
- didn't try the option check-boxes for Math Lib, pthread, etc.
Have a few questions/comments:
(a) How is the .side panel updated with the current program? [nevermind, found the button]
(b) Really impressed how it encompassed the PropGCC compiler in the installation. Made the setup simple.
(c) GCC-produced error files make sense. Nice to have access to them.
(d) After download is complete, be sure to empty the progress bar with the % indicator (reads 100% when finished)
(e) The terminal pane opens when my code is downloaded. Why?
Ken Gracey
Thanks for trying this Ken. Hoping this passes the "easy button" test.
I'm curious. How did you choose the c:\program files\... directory for your project? Was that the first folder it showed?
There are several nice programs in the demo directory including Dave Hein's cool vgademo program.
Item (a) Yes. there is a set project button. It takes the name of your file and makes a project with it.
One thing to note is the .side panel reflects the project file, so if you want to open another project, look for a *.side file in the project directory.
Item (d) Noted. Will do.
Item (e): User interpretation? That's probably from clicking the "blue play button" function F8.
Use the "green right arrow button" F10 just to load and run.
--Steve
Ken Gracey
When a plugin has been made, will this plugin work with other plug-ins for eclipse? Such as a GIT plug-in?
Sorry to ask about another IDE in your thread Steve, unfortunately work wants version control.
jazzed, the only thing i have plugged in are the power and USB. The good news is though, i fired it all up this morning and run/debug are working as expected too. Seems either myself or my prop just needed to sleep on it
It should work as far as I know. My copy of Eclipse Indigo has CVS and Git installed. I'll watch it for you.
Parallax understands the need for these things.
That's great! If you ever have the problem recur notify me right away.
Results from virgin installation.
1GB Netbook running Win7 - less than stellar performance platform.
The system had a nice little IDE called x-basic already installed - I don't know if that disqualifies it as a virgin.
Install worked without any issues.
path was updated to include c:\propgcc\bin - nothing else
SIDE is very slow to find port but it does find it.
Using hello.c on C3 and Quickstart (with resistor)
Compiles quickly and goes to 50% complete - Building with propeller-elf-gcc.exe done. Loading...
Loader executes and appears to hang.(Sometimes, windows was marking the program as "Not Responding")
After a while, it appears to time-out and a dialog appears with "C:/bin/propeller-load.exe Error waiting for program to finish." <OK>
This happens with Run, Burn EEPROM and Debug.
Running the loader command as generated by the IDE in a command shell does eventually load the Prop and run the program. The IDE may just timeout too soon - based on how slow a 1GB Netbook is with Windows 7, I wouldn't be surprised.
It does call propgcc correctly and generates a viable a.out and creates a well formed call to the loader. There is a time-out issue on my netbook. The propgcc environment it sets up appears to be functional.
x-basic, S2 GUI, Propeller tool all do work on the netbook with these prop boards. The propgcc install obviously does work since SIDE calls it and it generates and loads.
SIDE does seem to load and initialize slowly on the Netbook compared to other programs (like x-basic).
In a couple days I should have a clean Win 7 install on a quad core desktop to play with when my recovery disks show up......don't ask....
I'm going to load SIDE on my i7 8gb laptop and see how it runs with a little more horsepower behind it.
Let me know if there's anything else you want me to try.
So far, I like it a lot - as I mentioned, Eclipse is too much for what I do.
Oh, one more thing......can it be ported to Linux and OS X?? or is it forever locked in the Windows world?
The program i loaded was already burned to the eeprom and i forgot i put it back in yesterday. Quite embarrassing. So debug and run dont work as expected
On the plus side, i have written my first C program in your IDE... and it seems to work Initialising a DS18B20. So simple a monkey could do it, but hey. Its a little bit of light in a myriad of confusion
Thanks Rick. This is very helpful.
I've looked at the temporary freeze issue before because I it was similar for me on my 1GHz Atom WinXP Netbook. I know why this is happening, I just have to dig the solution more.
Yes, Linux and OS X are definitely on the radar. I'm uploading source to GoogleCode tomorrow so others can build those packages (and port some things if necessary).
Thanks,
--Steve
I was wondering about your download success - sorry it didn't work out. I'll send you an email soon on that.
The IDE is simple. That is a two edge word. On one hand it is simple to grasp in many ways. On the other hand it has a simple implementation.
So, regarding the project manager: as you have discovered, files must be added and deleted from the project side panel. I know it's best to have all files listed there, but all the IDE really needs to know for a build are files like: *.c, *.cpp, *.s, *.S, *.cogc, and *.spin . Other file types are ignored.
There are rules for those file types:
Types .s and .S are compiled by the gcc assembler.
Type .cogc is a C file that will be compiled to be loaded into COGs by the main C program.
Type .spin is any ASCII Spin file containing PASM to be compiled and loaded to COGs by the program.
This is the first time I've explained the types and thought your question was a good reason to do so.
Is there any literature regarding this at the moment? That is one thing i have been wondering about, how would i load something into a cog and have access to it. (ie reading the temp from a DS18B20). I might start a new thread about that once i think i have any hope of understanding it rather than clogging up yours.
We have to write up docs on how to start COGs in different ways. The toggle demos in the propgcc-demos pack has lots of example. The same demos are in the IDE demo workspace folder.
Mindrobots wrote a great getting started guide called The Toggle Tutorial (perfect title all T's) Maybe we need to make some incentives for him to finish?
I spend lots of time with @sevs working on the issues he is facing.
It looks like a virtual box dependency, though it's hard to tell.
Anyone else have WindowsXP running in virtual box?
The main problem as I see it is the terminal console is not being updated.
Funny though that burning the eeprom and then opening the console works.
We were able to fix the loader issue. The current 0_3_2 package should be ok.
Thanks a ton to @sevs for getting on Google+ and sharing his desktop view.
--Steve