Shop OBEX P1 Docs P2 Docs Learn Events
flexspin compiler for P2: Assembly, Spin, BASIC, and C in one compiler - Page 16 — Parallax Forums

flexspin compiler for P2: Assembly, Spin, BASIC, and C in one compiler

11314161819115

Comments

  • Since a renaming of Fastspin was suggested in another thread. My offer is SpeedyProp, a language agnostic compiler for the Prop2.
    Jim
  • RS_Jim wrote: »
    Since a renaming of Fastspin was suggested in another thread. My offer is SpeedyProp, a language agnostic compiler for the Prop2.
    Jim
    Any name that doesn't contain "spin" would be less confusing. Could be "escc" for "Eric Smith's Compiler Collection" or maybe "fastcc". I think Eric already mentioned that. However, the problem with something containing "cc" is that it will probably be confused with "C compiler" and hence not give sufficient indication that Spin and BASIC are also supported.
  • David Betz wrote: »
    RS_Jim wrote: »
    Since a renaming of Fastspin was suggested in another thread. My offer is SpeedyProp, a language agnostic compiler for the Prop2.
    Jim
    Any name that doesn't contain "spin" would be less confusing.

    Totally agree. Drop any mention of Spin, and make it clear that its a Compiler, and Multi-Language as well.
    RPM- Rational Prop Multi-compiler ?
  • ColeyColey Posts: 1,108
    It should be renamed PiNS a homage to Eric's MiNT

    Propeller is Not Spin ;-)
  • Coley wrote: »
    It should be renamed PiNS a homage to Eric's MiNT

    Propeller is Not Spin ;-)
    I like "PINS"! Maybe it could stand for "Propeller Is Not *only* Spin"? Certainly, Spin has a place in the Propeller world and also a place in Eric's compiler suite. It just isn't the only option.

  • However, the problem with something containing "cc" is that it will probably be confused with "C compiler" and hence not give sufficient indication that Spin and BASIC are also supported.

    The world already stopped spinning because the CC in GCC does not mean "C Compiler" but "Compiler Collection" instead.

    1hr of elevator music...

    Wait!
    15 degrees change!
    She still spins!
    :-P
  • David BetzDavid Betz Posts: 14,511
    edited 2019-07-06 20:02
    yeti wrote: »
    However, the problem with something containing "cc" is that it will probably be confused with "C compiler" and hence not give sufficient indication that Spin and BASIC are also supported.

    The world already stopped spinning because the CC in GCC does not mean "C Compiler" but "Compiler Collection" instead.

    1hr of elevator music...

    Wait!
    15 degrees change!
    She still spins!
    :-P
    Yes but will the Spin world tolerate compiling Spin code like this:
    pincc sample.spin
    
    :smile:
  • And "dd" is "copy and convert".

    Who cares about names? The CLI users obviously can bear that and the mouse-o-philes don't even notice which compiler they are using and will continue talking about $IDE_NAME instead of $COMPILER_NAME...
  • jmgjmg Posts: 15,140
    David Betz wrote: »
    RS_Jim wrote: »
    Since a renaming of Fastspin was suggested in another thread. My offer is SpeedyProp, a language agnostic compiler for the Prop2.
    Jim
    Any name that doesn't contain "spin" would be less confusing. Could be "escc" for "Eric Smith's Compiler Collection" or maybe "fastcc". I think Eric already mentioned that. However, the problem with something containing "cc" is that it will probably be confused with "C compiler" and hence not give sufficient indication that Spin and BASIC are also supported.

    Certainly the main name confusion of spin needs to be removed, as it has moved on significantly from when that applied.
    I think P2 needs to be in there, as that's the primary target of all the languages.

    Compiler Collection or Compiler Suite or Tool Suite could all be suitable. I think it will include a downloader of some sort, will it ever include a Debugger ?
    So that leads to maybe esp2ts, or p2ests or estsp2 - unique enough for google and easy enough to remember ?

    I've seen compilers that can act as assemblers and linkers, depending on the command line arguments. (the compiler exe acts as a shell and delegates to the still-there-but-less-visible Asm/linkers)
    That has appeal over the more usual C?.exe, AS?.exe, L?.exe in that simpler projects can compile directly to a hex file in one command line.


  • kwinnkwinn Posts: 8,697
    David Betz wrote: »
    RS_Jim wrote: »
    Since a renaming of Fastspin was suggested in another thread. My offer is SpeedyProp, a language agnostic compiler for the Prop2.
    Jim
    Any name that doesn't contain "spin" would be less confusing. Could be "escc" for "Eric Smith's Compiler Collection" or maybe "fastcc". I think Eric already mentioned that. However, the problem with something containing "cc" is that it will probably be confused with "C compiler" and hence not give sufficient indication that Spin and BASIC are also supported.

    How about "Hydra", as in the multi-headed Lernean Hydra of Greek legend.
  • David BetzDavid Betz Posts: 14,511
    edited 2019-07-07 00:57
    kwinn wrote: »
    David Betz wrote: »
    RS_Jim wrote: »
    Since a renaming of Fastspin was suggested in another thread. My offer is SpeedyProp, a language agnostic compiler for the Prop2.
    Jim
    Any name that doesn't contain "spin" would be less confusing. Could be "escc" for "Eric Smith's Compiler Collection" or maybe "fastcc". I think Eric already mentioned that. However, the problem with something containing "cc" is that it will probably be confused with "C compiler" and hence not give sufficient indication that Spin and BASIC are also supported.

    How about "Hydra", as in the multi-headed Lernean Hydra of Greek legend.
    That would be a good choice except that there was a P1 game platform from Andre' LaMothe called the Hydra that was quite popular for a while. I suppose that could cause some confusion. Eric should probably check with Andre' to see if he objects if he decides to use that name.

  • Cluso99Cluso99 Posts: 18,066
    EriCC = Eric's Compiler
    EricCC = Eric's compiler compendium

    P2compiler = simple and straightforward, no languages mentioned
  • I think we've been through this discussion before :). At the time the "flex-" prefix seemed like the best choice, with "flexspin", "flexbasic", and "flexc" as the languages. But I'm not sure if we had a name for the system as a whole; "flexsys" maybe?

    I don't think "P2" should be part of the name, because fastspin works perfectly well on P1 and that's where it started.

    Anyway, I've held off renaming it until the C support is more mature. Which is coming, but slowly.

    Thanks for the suggestions,
    Eric
  • jmgjmg Posts: 15,140
    ersmith wrote: »
    I don't think "P2" should be part of the name, because fastspin works perfectly well on P1 and that's where it started.
    Do all languages support P1 ?
    If yes, then maybe it needs p1p2 in the name ?
    The primary interest will come from P2 users, given P1 already has various solutions, but being able to output both cores certainly has appeal.
    Can the flexsys also compile pure assembler files ?

  • Do all languages support P1 ?
    Yes, although the PASM is processor dependent (so P1 PASM for P1 and P2 PASM for P2). I don't think that's too surprising though :)
    Can the flexsys also compile pure assembler files ?
    Yes, just like PNut for P2 (and something similar for P1).



  • name it just 'fast'. Who knows if you include Phyton also and we have to rename it again...

    Enjoy!

    Mike
  • evanhevanh Posts: 15,091
    I like it how it is. It's both distinctive and easy to remember.
  • Cluso99Cluso99 Posts: 18,066
    "FastTool" .... PropTool only heaps better :)
  • kwinnkwinn Posts: 8,697
    David Betz wrote: »
    kwinn wrote: »
    David Betz wrote: »
    RS_Jim wrote: »
    Since a renaming of Fastspin was suggested in another thread. My offer is SpeedyProp, a language agnostic compiler for the Prop2.
    Jim
    Any name that doesn't contain "spin" would be less confusing. Could be "escc" for "Eric Smith's Compiler Collection" or maybe "fastcc". I think Eric already mentioned that. However, the problem with something containing "cc" is that it will probably be confused with "C compiler" and hence not give sufficient indication that Spin and BASIC are also supported.

    How about "Hydra", as in the multi-headed Lernean Hydra of Greek legend.
    That would be a good choice except that there was a P1 game platform from Andre' LaMothe called the Hydra that was quite popular for a while. I suppose that could cause some confusion. Eric should probably check with Andre' to see if he objects if he decides to use that name.

    Almost impossible to come up with a suitable name that has not been used for something already. My guess is that Andre' would not object to someone using hydra for something other than a gaming platform, although discussing it with him first would be the courteous thing to do.

    Now "Cerberus" would be an alternative choice from Greek mythology, and being a Hell Hound possibly a more appropriate one at that ;-)
  • I've posted new versions (3.9.28) of fastspin and spin2gui. The main changes are:

    fastspin:

    - Only use jump table for switch / select if the density is greater than 1/2
    - Do small immediate optimizations even for P2 (it was accidentally P1 only)
    - Add error if nop instruction is conditionalized
    - Improved output formatting code, particularly for floating point
    - Improved error messages for bad addressing modes
    - Fixed octal number parsing in C
    - Added ability to declare methods in C structs
    - Expanded standard C library
    - Use the include directory to search for files on the command line if they end with .a.
    - Fixed some incorrect detection of unused methods in indirect function calls.

    spin2gui:

    Changed to link with Tcl/Tk directly, which will allow signing of the code (the old method used a self extracting .zip file containing Tcl/Tk libraries, which prevented signing of the .exe).

    loadp2:

    Updated to 0.14, which supports ELF binaries (not really relevant for fastspin yet, but useful for those of you using riscvp2).

    fastspin.exe and spin2gui.exe are signed with a self-signed certificate. That's mostly a proof of concept at this point, since Windows 10 will still complain about not wanting to run them at first. Eventually I would like to aquire a code certificate signed by one of the standard certificate issuers to make Windows stop this complaining. That will cost real money though :(. If you'd like to support that effort, or support fastspin/spin2gui development in general, donations are gratefully accepted at my patreon page.
  • ersmith wrote: »
    fastspin.exe and spin2gui.exe are signed with a self-signed certificate. That's mostly a proof of concept at this point, since Windows 10 will still complain about not wanting to run them at first. Eventually I would like to aquire a code certificate signed by one of the standard certificate issuers to make Windows stop this complaining. That will cost real money though :(. If you'd like to support that effort, or support fastspin/spin2gui development in general, donations are gratefully accepted at my patreon page.
    How much does it cost?

  • evanhevanh Posts: 15,091
    Damn, Patreon has tracking scripts wriggling out all its pipes. Ghostery is picking up eight independent trackers just on that host page alone. Not too surprisingly this leads to nine blocked third party domains. I have everything third party blocked so I can't tell how much deeper those go ... and the page is broken as a result.
  • David Betz wrote: »
    ersmith wrote: »
    fastspin.exe and spin2gui.exe are signed with a self-signed certificate. That's mostly a proof of concept at this point, since Windows 10 will still complain about not wanting to run them at first. Eventually I would like to aquire a code certificate signed by one of the standard certificate issuers to make Windows stop this complaining. That will cost real money though :(. If you'd like to support that effort, or support fastspin/spin2gui development in general, donations are gratefully accepted at my patreon page.
    How much does it cost?

    It varies by the vendor, but the general order of magnitude seems to be $200/year for plain code signing certificates and $400/year for "extended validation" certificates (US dollars, I assume). The extended validation certificate is supposed to immediately remove the Windows warning, the cheaper certificates make the warning less severe and it will eventually be removed if enough people download the software and haven't complained about it.
  • evanh wrote: »
    Damn, Patreon has tracking scripts wriggling out all its pipes. Ghostery is picking up eight independent trackers just on that host page alone. Not too surprisingly this leads to nine blocked third party domains. I have everything third party blocked so I can't tell how much deeper those go ... and the page is broken as a result.

    Ouch, I hadn't realized that. Is PayPal any better in that regard?

  • evanhevanh Posts: 15,091
    edited 2019-08-01 14:57
    The sign-up page was alright from memory. But the moment I went back to ebay the ads all changed in nature. They clearly switched mode to targetted ads even if they were guessing. I went straight back to paypal and deleted the account, which it did do surprisingly.

    I haven't been back to ebay since.
  • Once again, how about a simple name/TLA which explains what it is and what it does in the actual name?
    MLC, Multi-Language Compiler?
  • RaymanRayman Posts: 13,767
    seems that Turbo-Prop might be possible...
  • ersmith wrote: »
    David Betz wrote: »
    ersmith wrote: »
    fastspin.exe and spin2gui.exe are signed with a self-signed certificate. That's mostly a proof of concept at this point, since Windows 10 will still complain about not wanting to run them at first. Eventually I would like to aquire a code certificate signed by one of the standard certificate issuers to make Windows stop this complaining. That will cost real money though :(. If you'd like to support that effort, or support fastspin/spin2gui development in general, donations are gratefully accepted at my patreon page.
    How much does it cost?

    It varies by the vendor, but the general order of magnitude seems to be $200/year for plain code signing certificates and $400/year for "extended validation" certificates (US dollars, I assume). The extended validation certificate is supposed to immediately remove the Windows warning, the cheaper certificates make the warning less severe and it will eventually be removed if enough people download the software and haven't complained about it.

    https://www.digicert.com/order/order-1.php seems to 74 USD/year. I'm willing to chip in for 1 year, even though I don't use windows for my prop development.

    Certum has an opensource license, but it is very unclear what the actual cost is
  • I love fastspin!

    Eric, I've not had time to do much with it, but what I did do worked nicely. I really want you to know your efforts are appreciated. I'm in for $5 a month right now. That can change too. I just had a free moment and did the default signup. You gotta tell us what makes sense. (somehow, lol)

    Thank you.

    There are gonna be great times ahead everyone! Chip's second pass looks great. The silicon is working and there is remarkably little we have to live with.

    Chip's experimental Spin 2 environment integrated into Prop Tool, plus FastSpin, Ozdev's debugger, analyzer, Cluso's monitor, Peter and TAQOS and the work Mike has done to integrate TAQOS (love the compile at address and how that all is going to work), makes for one heck of a start!

    When we look back at P1, this is relative luxury compared to the handful of sample programs, Chip's "Propeller Guts" document, and the SPIN + PASM only tools at the time.

    How does the signing process work? Can one get a cert useful for signing multiple executables, or is it per executable, or what? I'm thinking maybe get the multiple signing cert, and maybe a few handy things can get signed... Just a random thought.

    (goes back to the grind, back soon)

  • rosco_pc wrote: »
    https://www.digicert.com/order/order-1.php seems to 74 USD/year. I'm willing to chip in for 1 year, even though I don't use windows for my prop development.

    It's showing me $499 USD/year for the code signing certificate on that site. I'm not surprised that the price is different -- I suspect they show different prices to different people and in different places -- but the size of the difference is a little surprising.
    Certum has an opensource license, but it is very unclear what the actual cost is

    That's worth looking into, thanks.

Sign In or Register to comment.