Shop OBEX P1 Docs P2 Docs Learn Events
Sphinx—as seen at UPEW! — Parallax Forums

Sphinx—as seen at UPEW!

mparkmpark Posts: 1,305
edited 2010-04-07 16:45 in Propeller 1
I got out of my comfort zone and gave a presentation at UPEW on my latest project. It's yet another Spin compiler I'm afraid, but with a bit of a twist: www.sphinxcompiler.com

The website is still a work in progress, but then again so is the software, really. Proceed at your own risk.

Post Edited (mpark) : 7/9/2009 12:55:56 AM GMT
«134567

Comments

  • BradCBradC Posts: 2,601
    edited 2009-06-29 07:57
    Very, very cool! Kudos!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Missed it by ->" "<- that much!
  • RossHRossH Posts: 5,347
    edited 2009-06-29 09:30
    Extroardinary work,

    One small step for mpark ... one giant leap for all Propeller heads!

    Ross.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Catalina - a FREE C compiler for the Propeller - see Catalina
  • heaterheater Posts: 3,370
    edited 2009-06-29 09:54
    Oh my god. Wow!

    I have no keyboard around here, will it be easy for me to modify to use a serial terminal just to check it out?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • Cluso99Cluso99 Posts: 18,069
    edited 2009-06-29 10:29
    Fantastic news Michael jumpin.gif

    As soon as time permits, I am definately going to have to dust off my version of Chip's spin interpreter and modify it to use external sram yeah.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Links to other interesting threads:

    · Home of the MultiBladeProps: TriBladeProp, RamBlade, TwinBlade,·SixBlade, website
    · Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
    · Prop Tools under Development or Completed (Index)
    · Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80), MoCog (6809)
    · Search the Propeller forums (via Google)
    My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
  • RaymanRayman Posts: 13,900
    edited 2009-06-29 10:57
    This is great! You gave a very nice demonstration mpark! I didn't think it was possible... I was going to look into doing an onboard BASIC compiler, but this is much better...

    I bet one could even add a debugger that would show values of certian HUB RAM variables somewhere...

    Really nice of you to make it MIT license.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    My Prop Info&Apps: ·http://www.rayslogic.com/propeller/propeller.htm
  • Mike GreenMike Green Posts: 23,101
    edited 2009-06-29 13:12
    Wonderful news! Thanks for all the effort.
  • Ole Man EarlOle Man Earl Posts: 262
    edited 2009-06-29 14:24
    great presentation Mike. You were 'in the zone'
    Earl
  • jazzedjazzed Posts: 11,803
    edited 2009-06-29 14:31
    @mpark, Congrats on your project.
    I really enjoyed hearing you speak. Have you ever considered radio broadcasting or voice overlay?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    --Steve


    Propalyzer: Propeller PC Logic Analyzer
    http://forums.parallax.com/showthread.php?p=788230
  • bambinobambino Posts: 789
    edited 2009-06-29 14:51
    WOW!
  • BaggersBaggers Posts: 3,019
    edited 2009-06-29 15:07
    @mpark, well done matey, it certainly is one GREAT step for prop-kind [noparse]:D[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • potatoheadpotatohead Posts: 10,254
    edited 2009-06-29 15:15
    And his presentation was Propeller only. (and that alone was very cool) I loved the "Prop Point" joke. Mike has this great delivery where he just puts it out there and everybody starts grinning. Bonus points for interacting with the audience!

    @mpark Your presentation reminded me of how Larry Lessig normally does things.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Wiki: Share the coolness!
    Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
    Safety Tip: Life is as good as YOU think it is!
  • mparkmpark Posts: 1,305
    edited 2009-06-29 16:16
    Thanks all! Sorry about the unfinished documentation. I'll try to finish it up or at least flesh it out when I get back home in a couple of days.

    @heater: Depends on how you define "easy". I'm sure it's possible, but it kinda defeats the whole spirit of the thing. Just buy a keyboard, man!

    @jazzed: Sorry I missed you at the expo. I wanted to put as many faces to handles as I could.

    @potatohead: I've never seen Larry Lessig, but I'll take your comment as a compliment.

    @UPEW attendees: A real pleasure to meet you in person. What a great bunch!

    As Potatohead mentioned, I ran my presentation off a Propeller, specifically a Hybrid. I wish I'd taken a second to give a shout-out to Coley for a great board. Belatedly: Thank you Coley!

    If you try out Sphinx, I think you'll soon find that Ed is just not up to the task of editing Spin files, so everyone go pester CassLan to get his PrEditor done.
  • ColeyColey Posts: 1,108
    edited 2009-06-29 16:42
    @mpark

    Thanks and your are most welcome, words of encouragement like that is all I need!

    I'm at works at the moment but rest assured I will be firing up my Hybrid and trying this as soon as I get in...

    How exciting..... smilewinkgrin.gif

    Regards,

    Coley

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    PropGFX - The home of the Hybrid Development System and PropGFX Lite
  • potatoheadpotatohead Posts: 10,254
    edited 2009-06-29 18:46
    @Mpark It's a compliment.

    I'll second the recommendation for the HYBRID board. It's my favorite and it is rock solid. Highly recommended.

    Considering the 100Mhz XTAL upgrade to it this week!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Propeller Wiki: Share the coolness!
    Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
    Safety Tip: Life is as good as YOU think it is!
  • rokickirokicki Posts: 1,000
    edited 2009-06-29 20:39
    BTW, I was at the Expo, and in my mind Sphinx is best of show.

    Now to get the source and see if we can't make an interactive Spin environment
    (type in a spin expression and see what happens immediately!). That would
    make it fun for people to play with the counters and stuff.
  • ColeyColey Posts: 1,108
    edited 2009-06-29 22:17
    @mpark

    WOW, awesome work my friend, this will really open things up.

    Coley

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    PropGFX - The home of the Hybrid Development System and PropGFX Lite
  • Bill HenningBill Henning Posts: 6,445
    edited 2009-06-30 05:49
    Unbelievably cool !!!

    It was great to meet you and your wife - I am looking forward to watching the video so I can catch all of it as I missed large portions explaining Morpheus to people coming to my table (I was very excited to spill the beans at last!)

    Largos will support your compiler.
    mpark said...
    I got out of my comfort zone and gave a presentation at UPEW on my latest project. It's yet another Spin compiler I'm afraid, but with a bit of a twist: www.sphinxcompiler.com

    The website is still a work in progress, but then again so is the software, really. Proceed at your own risk.
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    my 6.250MHz custom Crystals available for running Propellers at 100MHz
    Las - Large model assembler for the Propeller (alpha version released)
    Largos - a feature full nano operating system for the Propeller
    www.mikronauts.com - blog about microcontrollers, especially the Propeller, Morpheus and Mem+
  • Cluso99Cluso99 Posts: 18,069
    edited 2009-06-30 07:08
    Fantastic Michael - still jumpin.gif for joy cool.gif

    I will have to modify your code for the TriBlade and the RamBlade as follows (but easy to do as soon as I can find the time)
    • SD card pins are not contiguous and on the TriBlade and -CS is on a latch
    • The terminal (keyboard and video) are on another prop, so FDX has to communicate to the other prop

    Do you have a version (driver)·that runs to the PC (instead of keyboard and video) like heater did in ZiCog ? Before I get comments... yes, I know this defeats the intended purpose. I often do this when I cannot get access to the VGA screen (it doubles as our TV on the boat). If not, then I will have a go at this.

    I will also have to get·sram working as a SD FAT16 disk. Faster compiles tongue.gif

    I can see lots of interesting work to do yeah.gif

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Links to other interesting threads:

    · Home of the MultiBladeProps: TriBladeProp, RamBlade, TwinBlade,·SixBlade, website
    · Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
    · Prop Tools under Development or Completed (Index)
    · Emulators: Micros eg Altair, and Terminals eg VT100 (Index) ZiCog (Z80), MoCog (6809)
    · Search the Propeller forums (via Google)
    My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
  • AribaAriba Posts: 2,682
    edited 2009-06-30 19:07
    Wow
    .. this is not only the first "on chip" compiler, it is also the first open source Spin compiler !!!!
    And with so little limitations, I never considered this as possible.

    Andy
  • mparkmpark Posts: 1,305
    edited 2009-07-01 06:27
    Hi all. Finally back home after a leisurely road trip. A few things:
    1. The source is open, but it's also a mess. If you can figure it out, please feel free to take it in whatever directions you like.
    2. If you experience strange errors running Sphinx, try reformatting the SD card. A cop-out, I know, but remarkably effective.
    3. I will work on the documentation on the website. Please post or email any questions or suggestions. I could use them to guide me; otherwise I'll just write whatever.

    Post Edited (mpark) : 7/1/2009 6:34:46 AM GMT
  • rokickirokicki Posts: 1,000
    edited 2009-07-01 18:46
    I've been working on a new version of fsrw (with lonesock) so no time to make a REPL (read-eval-print loop) based on this.

    Maybe someone else would like to take up this challenge?

    Even something that only read-eval-prints a single simple expression would be extremely cool and useful.
  • BaggersBaggers Posts: 3,019
    edited 2009-07-01 22:18
    Had a good play on it tonight mpark [noparse]:)[/noparse] and what can I say, buy OMFG prop coding on a prop, how cool is that [noparse]:D[/noparse] kudos to you matey!
    I'm gonna have to add File though [noparse]:D[/noparse] lol

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    http://www.propgfx.co.uk/forum/·home of the PropGFX Lite

    ·
  • CassLanCassLan Posts: 586
    edited 2009-07-02 21:14
    Dude,
    This is an awesome piece of work.
    I'm working hard on Preditor to get it done to be used inconjunction with this.

    And I'm happy to say that whats done of it so far compiles and runs off Sphinx with no problems!, And it uses FSRW, KB, FullDuplexSerial..etc all just as it does if compiled with PropTool.

    Way to go !!!!

    Rick

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔


    Prop Forum Search (Via Google)
  • mparkmpark Posts: 1,305
    edited 2009-07-02 21:43
    That's great to hear, Rick! I'm following your progress closely on the Preditor thread. I'm totally counting on you to save me from having to improve lame old ed [noparse]:)[/noparse]
  • CassLanCassLan Posts: 586
    edited 2009-07-03 14:29
    mpark- Any chance of getting some simple scripting support? something similar to .BAT functionality...just a few lines inside of a textfile to be run from the command line? Cause then we could just have that file compile everything backwards for us then link it then run it...pretty please? : )

    Rick

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔


    Prop Forum Search (Via Google)
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2009-07-03 14:40
    Also,

    Has anyone started an "OBEX" for .SOB files?

    I've got a server with 160gigs & upload script if someone hasn't
    started that direction yet.

    OBC

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    New to the Propeller?

    Visit the: The Propeller Pages @ Warranty Void.
  • trodosstrodoss Posts: 577
    edited 2009-07-03 18:09
    @OBC,

    (my 2 cents...) It sounds like a good idea, but would then be yet another (offsite)·place to check for updates.

    It·would·seem better to just post a pre-compiled .SOB object with·submissions to the OBEX.· That way, those that are using Sphinx (or the inevitable derivitives) could use the .SOB objects, and others could compile the full code.·
  • Bill HenningBill Henning Posts: 6,445
    edited 2009-07-03 18:37
    Its a few months away for a public release, but Largos has shell scripts [noparse]:)[/noparse]
    CassLan said...
    mpark- Any chance of getting some simple scripting support? something similar to .BAT functionality...just a few lines inside of a textfile to be run from the command line? Cause then we could just have that file compile everything backwards for us then link it then run it...pretty please? : )

    Rick
    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    www.mikronauts.com - my site my 6.250MHz custom Crystals for running Propellers at 100MHz
    Las - Large model assembler for the Propeller Largos - a feature full nano operating system for the Propeller
    Please use mikronauts _at_ gmail _dot_ com to contact me off-forum, my PM is almost totally full
  • heaterheater Posts: 3,370
    edited 2009-07-03 18:49
    Sorry I have yet to try this out but OBC what is a .SOB and why do we need an "OBEX" of them.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • mparkmpark Posts: 1,305
    edited 2009-07-03 19:08
    Scripts would be nice but I don't know how to implement them. Keep in mind that Sphinx doesn't have a real "operating system" (it kinda looks like it does, but it's faking it). I should look into how a real OS does it and see if I can fake it in Sphinx. Largos might be ready before I get to it, though.

    Rick, how many files are you compiling each time? You only have to compile the ones that have changed.

    About the "SOBEX" idea: Chip told me that the Propeller Tool was originally going to support SOB-like files, but they decided against it to encourage people to publish source code. I don't really think there's a need for a SOBEX. Folks can just get source from OBEX and compile it to .sob themselves, either with Sphinx or, if it's beyond Sphinx's capabilities, with Homespun. Or they can publish both source and SOB, per Trodoss's compromise, but source code should be the primary medium of exchange.
Sign In or Register to comment.