Is the P8X64A dead ? / PropBasic IDE
Bean
Posts: 8,129
I was doing a little work on PropBasic and I had started to add support for the 64 I/O version of the Propeller awhile ago.
But I haven't heard anything about it lately.
Is it dead ? Or just on the back burner ?
Bean
But I haven't heard anything about it lately.
Is it dead ? Or just on the back burner ?
Bean
Comments
Ray
Okay, Thanks Kye.
Bean
Yeah, the IDE is the problem. I'm not able to make and IDE.
I wish the Prop Tool would allow you to launch a compiler and then open the resulting .spin file. That would make my life a lot easier.
Bean
That would be a very nice addition to the SimpleIDE galaxy of supported languages!
-Mike
8-cogs, 64 pins and 120Mhz. When can we start buying them?
p
Ray
True, any well-finished IDE should be able to simply launch a user batch file, as that covers all 'other' bases.
In extreme cases, if you cannot edit any names, I've created a tiny EXE file that replaces the locked in EXE, and calls a batch file...
I've only hit one IDE that used some secret 'completion' code, before launching the next step. WWTT
Or, if the IDE can launch with a command line, you can sometimes invert the process, and use an external Syntax highlighting Editor, and then that calls the IDE (works best with nimble IDE's, and I see SimpleIDE is ~ 100MB zipped )
SimpleIDE includes the PropellerGCC package and all variations of libraries, etc....
Perhaps you can make that combination smaller and still offer everything that GCC offers.
Personally, I like the Geany IDE, but it does not offer embedded systems features.
A Geany plug-in is possible and would help with packaging, but it's hard to say how far it can go.
David's point is that he didn't know how much support is there for other languages already.
I'm not interested in being committed to anything beyond what I am working on now until I'm done with it.
Only then will I consider other things.
Chip: A new P1 at 120MHz... I already run P1 at 104MHz so would that mean I could safely run at 104 / 80 * 120 = 156MHz ??? Of course I would up that to 160MHz
David,
Thing about "a generic way to add new languages" is that just enabling the editor to execute some compiler or other when you hit a button is not enough. What about syntax highlighting? What about parsing the error messages so that the user can instantly jump to the erroneous line? What about "intellisence" like features? Before you know it you are building Eclipse and good by "simple" as in SimpleIDE.
I was already worried when Jazzed started to put Spin support in there:)
Ok, the detail that it includes the PropellerGCC package, I missed on the Download and Project pages....
Perhaps you could say that, and state which PropellerGCC package Build is included ?
Did BST do all of that for PropBasic? I guess I was just assuming the same level of language support as is already in BST. I don't think that is very fancy is it?
We can do that going forward. Thanks for the reminder.
Those are 'nice to have', but users often have their own editors. and a common way to work, is code the bulk in your favourite editor, and get to a 'it compiles' stage (so the highlighting and errors are handled elsewhere), and then Launch the IDE to download/test and maybe do some minor editing.
Exactly, if all that stuff is just nice to have, and users have their own prefered editors and it's just to get a pulse then why bother at all?
You can already do that with pretty much every decent editor since last century.
I suppose a related question is whether it is better to have lots of support chips vs a design where you have several propeller chips talking via a simple 2 line bus. The propeller chips cost more than 74xx chips, but 74xx chips use up more PCB space which ultimately may cost more than propeller chips.
Maybe what we need is software that can make three propeller chips look like a single chip with 96k of ram and 24 cogs?
It depends on what IDE means.
I'm used to it meaning Integrated Debug Environment, or Integrated Develop Environment, where 'Debug' is implicit in that 'Develop', and implicit in that 'Debug' is a means to download code, and in an ideal world, Step/Break/Watch too.
Here, you often need to 'patch into' the default means to download/debug, from other tool chains.
Some use IDE to mean what I would call an editor.
Perhaps smarter would be IDDE, (Integrated Develop & Debug Environment) or ICDE (Integrated Compile & Debug Environment)
Interesting : This would need some form of Chain loader, so a single EE could load many Props... The slave loader link, would also be the slave communication link, once run was achieved.
A bit like a JTAG Chain, but with some software patching to suit the Prop hardware.
We have used what I call a 'Twisted Ring' chain for very easy 'just add more in a ring' Serial;
Here we use an edge on the 9th UART Bit, as a flag. Each node extracts N bytes after the edge, and shifts the edge, and echos all other bytes.
Address is simply implicit in the location in the ring, and it is suited to high speed links.
Since a prop does this in SW, you could use a 33 bit message size (Xtal inferred).
Ken, Yes I have. Steve says after he's finished with what he has on his plate, he will look into it.
Bean
Dave, PropBasic IS a command-line compiler. Just run it with the complete path to your pbas file (in quotes) as the first parameter.
For example
PropBasic.exe "C:\MyFile\MyProg.pbas"
There are several options that can be added
Switches:
/Q = Quiet (No screen output)
/P = Pause on warning or error (used to debug compiler)
/B = Brief output (does not show source code)
/O = "Output_Directory" Specifies a diffrent directory for output files
/V = Returns Version number as exit code (exit immediately)
/NS = No Code (Does NOT include the BASIC code in the output file)
/VP = Compiling for ViewPort
Bean