Shop OBEX P1 Docs P2 Docs Learn Events
Mac/Linux/Windows IDE - Ver 0.19.3 "Now with new improved PropBasic" release - Page 7 — Parallax Forums

Mac/Linux/Windows IDE - Ver 0.19.3 "Now with new improved PropBasic" release

145791052

Comments

  • rjo_rjo_ Posts: 1,825
    edited 2008-10-17 13:41
    I haven't looked at the timing... I simply noticed that bstc doesn't fail at all when I do multiple... single shot compiles (do it ,check it... and then do it again) to the Prop using scripted calls.
  • KeithEKeithE Posts: 957
    edited 2008-10-18 02:04
    BradC said...
    ...serial debug terminal...

    I'm looking forward to this!

    If you can't reproduce the behavior that I reported, I could write some shell scripts and upload to the forum.
  • BradCBradC Posts: 2,601
    edited 2008-10-18 02:57
    KeithE said...
    BradC said...
    ...serial debug terminal...

    I'm looking forward to this!

    If you can't reproduce the behavior that I reported, I could write some shell scripts and upload to the forum.

    I've reproduced it and fixed it. Thanking you for the test code. It made that particular problem dead easy to reproduce.

    There was 2 problems.. first was a "quirk" in the way I was doing the initial buffer flush on OSX. (the one you found)
    The second was far more sinister and is quite hardware dependent with regard to the download protocol, board and prop-plug. I have to run out now, but when I get home I'll edit this post with the details.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • rjo_rjo_ Posts: 1,825
    edited 2008-10-18 16:43
    Brad...

    Thank God... I was beginning to lose faith in my remote viewing capabilities (intuition[noparse]:)[/noparse]... I just couldn't see how it could be an isolated timing problem.

    Congrats


    Rich
  • BamseBamse Posts: 561
    edited 2008-10-20 22:37
    Hi Brad,

    I've had a couple of crashes today and they all traced back to the problem with not declaring local variables.
    Yes, the one I reported earlier, I guess I'm a slow learner... wink.gif

    Just wonder if you could give us an update when the new version might be available ?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Living on the planet Earth might be expensive but it includes a free trip around the sun every year...

    Experience level:
    [noparse][[/noparse] ] Let's connect the motor to pin 1, it's a 6V motor so it should be fine.
    [noparse][[/noparse] ] OK, I got my resistors hooked up with the LEDs.
    [noparse][[/noparse]X] I got the Motor hooked up with the H-bridge and the 555 is supplying the PWM.
    [noparse][[/noparse] ] Now, if I can only program the BOE-BOT to interface with he Flux Capacitor.
    [noparse][[/noparse] ] I dream in SX28 assembler...

    /Bamse
  • BradCBradC Posts: 2,601
    edited 2008-10-21 03:11
    Bamse said...
    Hi Brad,

    I've had a couple of crashes today and they all traced back to the problem with not declaring local variables.
    Yes, the one I reported earlier, I guess I'm a slow learner... wink.gif

    Just wonder if you could give us an update when the new version might be available ?

    I just got in from the airport, so probably later today. I've been testing pretty heavily but I needed to wait until I got home to run the regression tests on my older Mac before I let anything loose [noparse]:)[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • BradCBradC Posts: 2,601
    edited 2008-10-21 04:39
    Right New build up - Details in top post.

    Have also uploaded a very experimental windows build.
    Be warned downloading appears to be broken on Win2k and XP. It has been tested to work on Win95/Win98 though.
    Automatic com port detection is broken on Win98, you will have to configure it manually in the ports dialog.
    Automatic com port detection on 2k/xp can lock up the software.. but then it won't download anyway so there is no point [noparse]:)[/noparse]
    There are likely to be stacks and stacks of bugs in the Windows builds, but if someone wants to point them out to me I'd be happy to fix them, not that I can see a lot of point to using bst when you have access to propeller tool, but you never know [noparse]:)[/noparse]

    Lots of new features and probably plenty of new bugs. I've fixed all the ones I knew about. Feedback warmly welcomed.

    Oh.. and there is highly experimental, badly broken and completely unconfigurable syntax highlighting support. It is disabled by default and if you enable it then don't say I didn't warn you. It looks like someone threw up all over your spin code. I just hacked it in at the last minute as I needed the push to get started on it.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • BradCBradC Posts: 2,601
    edited 2008-10-21 08:54
    Ok, so in rushing 0.06 out I broke the download library.
    It's now fixed for all platforms and is working on Win2k and XP also.
    Win98 still does not autodetect the available serial ports. I'm working on that.
    2K and XP no longer locks up if you try to test a port that does not have a propeller on it, so have a go. It should not break (much)

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • KeithEKeithE Posts: 957
    edited 2008-10-21 15:19
    Brad,

    I've tried out bst a little bit, and can report that the serial terminal is working for me. I'll test the downloading better later.

    Can you comment on bstc? Is 0.07 the version to get?

    -Keith
  • AleAle Posts: 2,363
    edited 2008-10-21 16:00
    Brad:

    Regarding the syntax highlight:
    When you have the Parallax font selected : The cursor seems to gain some pixels width regard to where it should be. When selecting the selected area moves the text or that seems to happen.

    The special chars in the parallax font are followed by a couple of '?' and some are not show correctly (parallax font selected).

    Now, if you have for instance Monospace selected it shows still the Parallax font and the special char are still garbled but the above mentioned 'effects' do not happen.

    Nothing of this happens if syntax highlight is not enabled smile.gif

    Anyways, great work.
  • BamseBamse Posts: 561
    edited 2008-10-21 16:27
    Thanks Brad,

    I saw that my request of "save before compile" made it in, great...

    My 2 cents,
    The Windows people already have a few alternatives, so postpone the Windows versions until you have the final version for Linux/Mac done.
    The syntax highlight is great, however the most important for me the is the indent marker so to say.
    I still have problem seeing which block belongs where... wink.gif

    Thanks again and I'm very exited about the debug terminal, I'm going to check it out tonight...

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Living on the planet Earth might be expensive but it includes a free trip around the sun every year...

    Experience level:
    [noparse][[/noparse] ] Let's connect the motor to pin 1, it's a 6V motor so it should be fine.
    [noparse][[/noparse] ] OK, I got my resistors hooked up with the LEDs.
    [noparse][[/noparse]X] I got the Motor hooked up with the H-bridge and the 555 is supplying the PWM.
    [noparse][[/noparse] ] Now, if I can only program the BOE-BOT to interface with he Flux Capacitor.
    [noparse][[/noparse] ] I dream in SX28 assembler...

    /Bamse
  • BradCBradC Posts: 2,601
    edited 2008-10-21 17:30
    KeithE said...
    Brad,

    I've tried out bst a little bit, and can report that the serial terminal is working for me. I'll test the downloading better later.

    Can you comment on bstc? Is 0.07 the version to get?

    -Keith

    Glad to hear the serial terminal is working. I've tested it, but then I know how to test it and not break it [noparse];)[/noparse]

    As for btsc, the version to get is _always_ the latest version.
    I run it through a regression test that lasts over an hour before every release, so aside from dumb errors (like the download one I made today) the latest is always the least buggy [noparse]:)[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • BamseBamse Posts: 561
    edited 2008-10-22 04:51
    FYI: The serial terminal is working great for me as well...

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Living on the planet Earth might be expensive but it includes a free trip around the sun every year...

    Experience level:
    [noparse][[/noparse] ] Let's connect the motor to pin 1, it's a 6V motor so it should be fine.
    [noparse][[/noparse] ] OK, I got my resistors hooked up with the LEDs.
    [noparse][[/noparse]X] I got the Motor hooked up with the H-bridge and the 555 is supplying the PWM.
    [noparse][[/noparse] ] Now, if I can only program the BOE-BOT to interface with he Flux Capacitor.
    [noparse][[/noparse] ] I dream in SX28 assembler...

    /Bamse
  • KeithEKeithE Posts: 957
    edited 2008-10-22 05:30
    This is all minor, but I'll just report it and let you set priorities appropriately.

    Is there any way to disable the thin vertical line that appears at column 80 in the editor and serial terminal?

    Also any chance of using the Mac command key (open apple) instead of control? I keep getting the wrong key - even though I use linux all day. (Although I use a Happy Hacker keyboard with linux which makes me hit the Apple caps lock key a lot wink.gif)

    The serial terminal seems to sort of freeze the IDE until I disconnect it. Is this intentional? e.g. I can't makes text edits. But if I choose to to compile and upload to RAM, the tool figures out what to do to manage the shared serial port and it works.

    In the future - any chance of getting the insertion point to move to the line # reported by the compiler when there's an error?

    It seems like when I select a Parallax font for the serial terminal, lines get clipped near their right hand side. If I use increase or decrease size then I can get it to go away. If I manually pick say 14 point they are clipped though.

    After changing some IDE settings (e.g. the font) one has to change the active window before the changes are visible. For example if you had two open editor "tabs" switching between them is necessary.

    I did not try to abuse the downloader, but haven't seen any errors despite using the serial port for debug activity.

    I'm curious - do you try to generate images that are identical to what the propeller tool generates? Just wondering how you run regressions. I understand that you're going to throw in some optimizations down the line, and maybe the proptool will too. So it might be difficult.

    -Keith
  • BradCBradC Posts: 2,601
    edited 2008-10-22 06:18
    KeithE said...
    This is all minor, but I'll just report it and let you set priorities appropriately.

    Is there any way to disable the thin vertical line that appears at column 80 in the editor and serial terminal?

    Also any chance of using the Mac command key (open apple) instead of control? I keep getting the wrong key - even though I use linux all day. (Although I use a Happy Hacker keyboard with linux which makes me hit the Apple caps lock key a lot wink.gif)

    I'd not thought about the thin line, but I'm sure I can knock that on the head.

    The shortcut keys are something that's very high on my todo list, so it will happen shortly. It's incredibly easy to do with lots of {$IFDEF} in the code, but OBC requested that the shortcuts be user configurable, so it's something I'm keen to do properly.
    KeithE said...

    The serial terminal seems to sort of freeze the IDE until I disconnect it. Is this intentional? e.g. I can't makes text edits. But if I choose to to compile and upload to RAM, the tool figures out what to do to manage the shared serial port and it works.

    Oh dear.. now that you mention it yes.. I think I know why this happens. Will have to give some thought about how I fix it though. Thanks [noparse]:)[/noparse]
    I've deliberately stayed away from multi-threading for now, so everything is effectively multiplexed in a single thread. I think I'm forgetting to service a handle when the serial terminal is active.
    KeithE said...

    In the future - any chance of getting the insertion point to move to the line # reported by the compiler when there's an error?

    In what way? At the moment you double click on the error in the error box and it takes you there and highlights the line. Is there something else you think would make it better?
    KeithE said...

    It seems like when I select a Parallax font for the serial terminal, lines get clipped near their right hand side. If I use increase or decrease size then I can get it to go away. If I manually pick say 14 point they are clipped though.

    Excellent, will fix this. Thanks [noparse]:)[/noparse]
    KeithE said...

    After changing some IDE settings (e.g. the font) one has to change the active window before the changes are visible. For example if you had two open editor "tabs" switching between them is necessary.

    Yep, it's a design "issue". At the moment the settings are only refreshed when one changes a tab. I will certainly fix this soon.
    KeithE said...

    I did not try to abuse the downloader, but haven't seen any errors despite using the serial port for debug activity.

    I'm curious - do you try to generate images that are identical to what the propeller tool generates? Just wondering how you run regressions. I understand that you're going to throw in some optimizations down the line, and maybe the proptool will too. So it might be difficult.

    -Keith

    I really put a lot of time into making sure the downloader and serial terminal talk properly and we don't get any DTR glitches resetting the propeller as we switch. I've built the serial terminal in such a way as I can instantiate as many of them as there are serial ports, so at some point the in future I'll add the option of multiple terminals. They all talk to each other to ensure that only the one that needs to be disabled for download is actually notified.

    The binary images generated at the moment by bst are supposed to be bit for bit identical to those output by the Propeller Tool. If they are not I'd like to know about it so I can fix it.
    I spent weeks tinkering with the floating point generation code to ensure that bst output is completely identical in every way. My regression tests compile each file with Propellent and then btsc and do a binary diff on them, so it's absolutely identical in every respect.
    Currently none of the optimisations are enabled when compiling from inside bst, that is another "coming soon, watch this space" item [noparse]:)[/noparse]

    I've now got automatic com port detection working on 2K/XP/9x and I'm thinking about the best way to auto-detect the propeller without upsetting the rest of the devices on the system. There are some other little fiddly bits I want to fix before I knock out the next release (unless someone hits a crash bug in the meantime), so it might be a little while. I'll try and address all of these issues you raised before I knock out another one.

    I appreciate the feedback, really [noparse]:)[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • parts-man73parts-man73 Posts: 830
    edited 2008-10-22 13:50
    Brad,

    First of all.... I'm running Ubuntu 8.04 (dual boot). I'm not sure if this is a OS issue, or your program. But when I "open" a spin file from my Windows partition, then later (after rebooting) try to open it from the list of recent open files, it errors out. It still opens a tab in the IDE, but the tab is empty.

    I imagine that it has something to do with the fact that the volume isn't mounted, but then why can I open it with the open menu choice?

    And thanks again for undertaking this process. It's great to be able to use Linux for the Propeller!
  • CJCJ Posts: 470
    edited 2008-10-22 14:59
    Parts-man73, I think what is happening is that when you browse to the windows partition you invoke the automounter, and when you go from the menu it just looks in the path that it was previously mounted in regardless of whether it is mounted or not

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Parallax Forums - If you're ready to learn, we're ready to help.
  • KeithEKeithE Posts: 957
    edited 2008-10-22 15:24
    BradC said...
    In what way? At the moment you double click on the error in the error box and it takes you there and highlights the line. Is there something else you think would make it better?

    I didn't realize this - it's probably more than sufficient.

    Great to hear that you're taking such pains to guarantee compatibility, and have made it possible to automatically regress your compiler code.

    Thanks,
    Keith
  • parts-man73parts-man73 Posts: 830
    edited 2008-10-22 15:55
    CJ said...
    Parts-man73, I think what is happening is that when you browse to the windows partition you invoke the automounter, and when you go from the menu it just looks in the path that it was previously mounted in regardless of whether it is mounted or not

    I suspect the same. I remember older versions of Ubuntu...you had to manually mount windows partitions, now they just appear automatically!

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Brian

    uController.com - home of SpinStudio - the modular Development system for the Propeller

    PropNIC - Add ethernet ability to your Propeller! PropJoy - Plug in a joystick and play some games!

    SD card Adapter - mass storage for the masses Audio/Video adapter add composite video and sound to your Proto Board
  • BradCBradC Posts: 2,601
    edited 2008-10-22 16:09
    parts-man73 said...
    CJ said...
    Parts-man73, I think what is happening is that when you browse to the windows partition you invoke the automounter, and when you go from the menu it just looks in the path that it was previously mounted in regardless of whether it is mounted or not

    I suspect the same. I remember older versions of Ubuntu...you had to manually mount windows partitions, now they just appear automatically!

    Nice bug though! Well spotted.
    If it fails to load a file, it creates the tab and just does not populate it. Will fix this [noparse]:)[/noparse] Thanks!

    I'm also on Ubuntu, so I'll test the automounter and get it sorted for the next release.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • KeithEKeithE Posts: 957
    edited 2008-10-23 03:54
    FYI - I did a little downloader stress testing tonight with the updated bstc, and did not see any failures.
  • Chuck RiceChuck Rice Posts: 210
    edited 2008-10-24 22:29
    I ran into an IDE bug on the Mac version today. If I select a line of text, so that all the words are highlighted, then change my mind and click on a word in the text to set the insertion point, the selected text does not get deselected, even though it does set the insertion point. If I then type a character, the whole line disappears instead of inserting the one character into the existing line.

    Minor thing, but I did not see it happen the first few times. I could not figure out where my line went! [noparse]:)[/noparse]

    BTW Brad, I am loving using my Mac to code for the Propeller! Thanks!
  • BradCBradC Posts: 2,601
    edited 2008-10-25 08:20
    Chuck Rice said...
    I ran into an IDE bug on the Mac version today. If I select a line of text, so that all the words are highlighted, then change my mind and click on a word in the text to set the insertion point, the selected text does not get deselected, even though it does set the insertion point. If I then type a character, the whole line disappears instead of inserting the one character into the existing line.

    Minor thing, but I did not see it happen the first few times. I could not figure out where my line went! [noparse]:)[/noparse]

    BTW Brad, I am loving using my Mac to code for the Propeller! Thanks!

    Oh, nice find! Can't reproduce it on Linux or Win32 but I can certainly see it on OSX-Intel. I'll get that fixed asap Chuck, thanks. [noparse]:)[/noparse]

    I've got a few extra things on my target 0.07 list to complete but nothing major, so hopefully we'll see an updated release in the next couple of days.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • BradCBradC Posts: 2,601
    edited 2008-10-25 15:18
    It's going to be a little bit longer unfortunately. My propplug broke again.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • SapiehaSapieha Posts: 2,964
    edited 2008-10-25 16:49
    Hi BradC

    It is posible for You to ad posiblity to have more that one Compiler

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Nothing is impossible, there are only different degrees of difficulty.
    For every stupid question there is at least one intelligent answer.
    Don't guess - ask instead.
    If you don't ask you won't know.
    If your gonna construct something, make it·as simple as·possible yet as versatile as posible.


    Sapieha
  • BradCBradC Posts: 2,601
    edited 2008-10-25 18:33
    Sapieha said...
    Hi BradC

    It is posible for You to ad posiblity to have more that one Compiler

    It's not on my list of things to do, no. I'm making a very firm point about fully supporting three platforms and I not keen to weaken that by adding support for tools that are not fully tested and supported across all three.

    Additionally, The integration between the compiler and the IDE is incredibly tight. The IDE has access to the entire symbol table and numerous other compiler goodies (for features I have on my todo list). Adding support for someone elses compiler will make life far more difficult than I really need to at this point.

    I do have a thought about adding support for external pre-processors however.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • Oldbitcollector (Jeff)Oldbitcollector (Jeff) Posts: 8,091
    edited 2008-10-27 13:26
    More bad code crashes:

    Found another good way to crash the compiler yesterday...

    For some reason I have made this error more than once...

    text.str("a line of text"))

    It's an obvious error that can be made easily, (at least by me)
    and I get a serious violation error that can shutdown bst.

    How about a "Jeff, don't do that!" instead? <grin>

    OBC

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

    Getting started with a Propeller Protoboard?
    Check out: Introduction to the Proboard & Propeller Cookbook 1.4
    Updates to the Cookbook are now posted to: Propeller.warrantyvoid.us
    Got an SD card connected? - PropDOS
  • BradCBradC Posts: 2,601
    edited 2008-10-27 13:34
    Oldbitcollector said...
    More bad code crashes:

    Found another good way to crash the compiler yesterday...

    For some reason I have made this error more than once...

    text.str("a line of text"))

    Bewdy! Thanks Jeff, I'll fix that.
    I have a new release in the works, I'm just waiting on a propplug to arrive so I can test it before I push it out. I'll make sure this fix gets into the mix.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Pull my finger!
  • J. A. StreichJ. A. Streich Posts: 158
    edited 2008-10-28 14:51
    I'm still seg faulting before anything happens on my eee Pc 701 with default Xandros.
    I ran it through gdb, and got the following. Not sure it's helpful because there are no debugging symbols.
  • agodwinagodwin Posts: 72
    edited 2008-10-31 21:13
    Brad,

    I've had a play with bstc.linux 0.08 and got the following error :

    FATAL! Unable to locate Object to fixup!!
    Compiled 14550 Lines of Code in 13.92 Seconds


    I've also tried it with bst.linux - it reports a similar problem in the terminal (nothing in the GUI) but if I select binary output it also crashes with lots of meesages

    (bst.linux:19006): GLib-GObject-WARNING **: IA__g_object_get_valist: object class `GtkSettings' has no property named `gtk-cursor-blink-timeout'
    Object Position is negative! - This binary will not work - Report this please!
    Object Position is negative! - This binary will not work - Report this please!
    FATAL! Unable to locate Object to fixup!!
    TApplication.HandleException Invalid floating point operation
    Stack trace:
    $B77A46BE
    $B77B4916
    $B77AB134
    $B77A5C03
    ...
    $B7C1965E
    TApplication.HandleException: there was another exception during showing the first exception
    Stack trace:
    $B7AD2E88
    ...
    $080A47DF
    $08058F32
    [noparse][[/noparse]FORMS.PP] ExceptionOccurred
    [noparse][[/noparse]FORMS.PP] ExceptionOccurred

    What is the object it's looking for ?

    -adrian
Sign In or Register to comment.