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

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

1192022242552

Comments

  • heaterheater Posts: 3,370
    edited 2009-05-07 10:56
    When closing bst it always prompts saying my project has changed and do I want to save. Even though no changes have been made anywhere.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • BradCBradC Posts: 2,601
    edited 2009-05-07 11:32
    heater said...
    When closing bst it always prompts saying my project has changed and do I want to save. Even though no changes have been made anywhere.

    When you scroll an editor, fold or unfold, change tabs or anything like that you are changing the project. Remember the project file remembers what you have folded, where the editor is scrolled to, which tab is active and all the other little things. I designed it such that when you close the editor (or project) when it re-opens it opens *precisely* where you were before, down to the line the active editor is scrolled to..

    I also know about the left column thing in the terminal and editor. It's been bugging me for _ages_ and I've just never quite got around to getting to the bottom of it..

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
  • FrameShift.FrameShift. Posts: 35
    edited 2009-05-07 15:18
    ZiCog compiles for me now as well. Great job BradC.

    -Tom
  • BradCBradC Posts: 2,601
    edited 2009-05-08 01:22
    Cluso99 exposed a neat bug in the way I handle nested if's (A off by one error in my stack code) so there is a 0.18-pre7 up now..

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
  • BradCBradC Posts: 2,601
    edited 2009-05-08 06:57
    Next version 0.18-pre8

    This has a pretty comprehensive test to prevent you from accidentally opening a non-project file as a project and having bst wipe out your file contents on close.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
  • AleAle Posts: 2,363
    edited 2009-05-12 15:33
    Brad:

    The 0.18pre8 seems to work very well (Mac OSX.) Thanks again !

    The support for #ifdef #define and so on is very welcome. I have a question it is possible to use (or to have) a C style #define ? That means with or without value ?

    #define SAPOS

    or

    #define SAPOS 500

    or

    #define SAPOS mov t1, #500

    if you could also implement something like this:

    #define SAPOS(x) mov t1, #x

    That would certainly rock the boat [noparse]:)[/noparse]

    Is any of these planned, possible ?

    btw: The latest enhancements to the syntax highlighter made call not bold anymore. I found that very useful. Is it possible to get it back and/or configurable ?

    Thanks !!
  • BradCBradC Posts: 2,601
    edited 2009-05-13 00:16
    Hrm.. the "call" being in bold was a bug. I've been trying to come up with a way to make the highlighter usefully configurable (as opposed to having lots of knobs to tweak that just end up making things look terrible). Let me give it some more thought.

    As for the preprocessor style defines.. the answer is a definite maybe. I've been thinking about how to do it properly, but the way I'm implementing them now is fairly inflexible. Never having written a parser of any note previously (I wrote an interpreted control language years ago but that was mostly a hack) I'm making it up as I go along [noparse]:)[/noparse] I know there are plenty of references out there and good code to examine, but I'm doing it the long way around as I figure I learn more by all the rip up and redo steps [noparse]:)[/noparse] (And it's fun in a perverse way)

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
  • sevssevs Posts: 50
    edited 2009-05-13 00:19
    Hi Brad,

    Finally got home and got 5 mins to play with the prop [noparse]:)[/noparse]

    I still cant seem to get Serial Terminal working. I tried to use this code to test it:

    CON
    
      _clkmode = xtal1+pll16x
      _xinfreq = 5_000_000
    
    OBJ
    
      FDS : "FullDuplexSerial"
    
    PUB Main
    
      FDS.Start(31, 30, 0, 57600)
    
      repeat
       fds.str(string("Test",13))
       waitcnt(40_000_000 + cnt)
    
    



    I used Propeller Tool V1.2.5 and PST and this code works, but using BST i get no serial response. Again this could well be me, but i cant work out what im doing wrong.

    Will let you know how i get on after some proper use later on this arvo hopefully.

    Cheers mate.

    P.S. Im using Vista Ultimate SP1, 64-bit.

    P.P.S I might have to change OS so i cant BST more often :P

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Advertisement sponsored by dfletch:
    Come and join us on the Propeller IRC channel for fast and easy help!
    Channel: #propeller
    Server: irc.freenode.net or freenode.net
    If you don't want to bother installing an IRC client, use Mibbit. www.mibbit.com
  • BradCBradC Posts: 2,601
    edited 2009-05-13 00:43
    sevs said...

    P.S. Im using Vista Ultimate SP1, 64-bit.

    That is the bit I can't test at the moment. I only have the 32Bit version, but when I get a chance (probably tomorrow) I'll have a play with Serial on that and see what might be going astray. I don't often have access to a real windows box so it's very rare I actually get hardware hooked up to one. I have to do all my Windows testing with WINE (which is neat as the BST logo displays upside down!) and VirtualBox with either XP or Vista.

    Remember, bst targeted at the platforms *not* supported by the Propeller tool, so while it might misbehave on Vista, you can still run and use it on Win95 original release (although good luck getting the FTDI drivers installed!)

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
  • T ChapT Chap Posts: 4,223
    edited 2009-05-13 00:56
    Hey Brad, on 17 PC I have a problem where every time I boot the program it comes up that 'we are recovering from X file'. Even if saving the file that comes up (same file every time, earlier rev of a spin file), it still keeps booting with the error. I think it want's to creash often too when I try to save the file that keep coming up 'unsaved'. Any suggestions? XP Pro
  • sevssevs Posts: 50
    edited 2009-05-13 01:55
    Hi Brad,

    If only i could lend you my pc to test with...

    I realise that having BST running on Vista flawlessly is not a high priority and im glad that is how it is.

    Still, the more i use BST the more i prefer it over Prop Tools and not being a very good programmer, i tend to spend alot of time debugging usung serial [noparse]:)[/noparse]

    Thanks for the fast response!

    TChapman, try using the latest snapshot from:

    www.fnarfbargle.com/bst/snapshots/

    Your problem sounds like one i was having that has now been solved.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Advertisement sponsored by dfletch:
    Come and join us on the Propeller IRC channel for fast and easy help!
    Channel: #propeller
    Server: irc.freenode.net or freenode.net
    If you don't want to bother installing an IRC client, use Mibbit. www.mibbit.com

    Post Edited (sevs) : 5/13/2009 2:40:43 AM GMT
  • heaterheater Posts: 3,370
    edited 2009-05-13 06:11
    BUG:

    "mocog - Error at (621,39) PC exceeds cog memory by 4611686018427387903 longs"

    from compiling:

    PUB main
    
    DAT
            long 0[noparse][[/noparse]497]
            fit       $1F0
    
    



    BST 0.18-pre8

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • AleAle Posts: 2,363
    edited 2009-05-13 06:49
    heater It would be neat even if we had half of that amount of memory ! (4611686018427387903 longs) lol.gif

    Edit I added a missing t

    Post Edited (Ale) : 5/13/2009 8:40:23 AM GMT
  • heaterheater Posts: 3,370
    edited 2009-05-13 08:04
    That's 4 * 10 to the power 18 longs. That's 16 exabytes! That would fill Sun's ZFS file stystem.

    4611686018427387903 happens to be (2 to the power 62) - 1 which sounds like minus 1 in a 64 bit integer. So its just the negative of what we want here.

    Looks like Brad is ready for the COG space available in the future 64 bit Prop.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • BradCBradC Posts: 2,601
    edited 2009-05-13 08:12
    TChapman said...
    Hey Brad, on 17 PC I have a problem where every time I boot the program it comes up that 'we are recovering from X file'. Even if saving the file that comes up (same file every time, earlier rev of a spin file), it still keeps booting with the error. I think it want's to creash often too when I try to save the file that keep coming up 'unsaved'. Any suggestions? XP Pro

    Second sevs suggestion. There was a bug with the Win32 Version 0.17 which would cause precisely that.

    @heater that is a very cool bug, especially getting a 64 bit result from a 32 bit calculation [noparse]:)[/noparse] I'll get it fixed. Thanks!
    <edit> that shows I've tested that particular error message approximately *never*. I had the display calculation reversed [noparse];)[/noparse]

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!

    Post Edited (BradC) : 5/13/2009 8:38:51 AM GMT
  • heaterheater Posts: 3,370
    edited 2009-05-13 09:26
    Thought it looked backwards.

    Is there, or is there any chance of getting, a report at the end of compilation of the number of LONGs left in the COG.

    Actually I might be asking a bit much because it would have to report the number of longs free before each FIT statement. That is perhaps 1 per cog but when using overlays I have many FITs for the same cog. One per overlay plus one for the resident code.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • AleAle Posts: 2,363
    edited 2009-05-13 10:57
    heater: I use the listing to do exactly that. It would be great if the listing would go to the last scrolled lines too.
  • BradCBradC Posts: 2,601
    edited 2009-05-13 13:38
    Ale said...
    heater: I use the listing to do exactly that. It would be great if the listing would go to the last scrolled lines too.

    You mean the list would automatically seek to the end of the listing rather than the start?

    @heater, I could easily add a status report in the listing to say how many longs were consumed at each "fit" if that is what you are talking about.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
  • AleAle Posts: 2,363
    edited 2009-05-13 14:38
    brad: I mean the following: I scroll to say line 500 and the next time it compiles the listing is reloaded in the control and shown from the beginning again so I have to scroll again smile.gif. Forget about it.
  • BradCBradC Posts: 2,601
    edited 2009-05-13 14:49
    Ale said...
    brad: I mean the following: I scroll to say line 500 and the next time it compiles the listing is reloaded in the control and shown from the beginning again so I have to scroll again smile.gif. Forget about it.

    Ahh.. no, I can do that quite easily..

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
  • heaterheater Posts: 3,370
    edited 2009-05-13 15:50
    A status report at the end of the listing would be OK I guess.

    What I had in mind was that the number of longs free at each FIT could be displayed in the compiler errors and warnings window. Saves dicking around with the listing window to find out.

    But then one might want a compiler/project option to turn that off so as not to have the errors window popping up all the time.

    I just noticed that turning on the warnings and info/note options in the project does not work. Perhaps it's not supposed to yet.

    By the way what does info/note do? Does nothing for me.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • BradCBradC Posts: 2,601
    edited 2009-05-14 00:16
    heater said...
    A status report at the end of the listing would be OK I guess.

    What I had in mind was that the number of longs free at each FIT could be displayed in the compiler errors and warnings window. Saves dicking around with the listing window to find out.

    But then one might want a compiler/project option to turn that off so as not to have the errors window popping up all the time.

    That sounds like a bit of a specific hack really. Some of my projects have up to 10 COG specific DAT sections. I'd hate the error window to be cluttered with loads of those messages.
    I was not thinking about a summary for the list file either, more an additional line under each FIT with a statement of memory usage for that segment.
    heater said...

    I just noticed that turning on the warnings and info/note options in the project does not work. Perhaps it's not supposed to yet.

    By the way what does info/note do? Does nothing for me.

    Actually, that tab is not supposed to be there in the project options. They are global options only.
    Warnings and info are extra levels of messages.
    Warning warn on things like org and fit with no parameters, jmp with no #..
    Info tells you about unused global variables, unused methods and other stuff I find useful.
    Also, you can issue warnings and info statements with #warn and #info
    (See attached screenshot)

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
    802 x 270 - 38K
  • AleAle Posts: 2,363
    edited 2009-05-14 06:53
    Hei Brad,

    I'm still happy with BST smile.gif

    0.18pre8 MAc OSX (all?): I just found the following: If nothing follows a comma in a byte declaration... the compiler does not warn or signals error.

    Edit:

    0.18pre8 Mac OSX: it hangs when the terminal is receiving and I try to compile and load again (or I use the option "disconnect" from the menu). Force Quit does not terminate the program neither does kill -9 (probably are the same). Turning it off and on again seems to solve the problem lol.gif

    Post Edited (Ale) : 5/14/2009 8:00:35 AM GMT
    876 x 462 - 99K
  • BradCBradC Posts: 2,601
    edited 2009-05-14 07:59
    Ale said...
    Hei Brad,

    I'm still happy with BST smile.gif
    Excellent [noparse]:)[/noparse]
    Ale said...

    0.18pre8 MAc OSX (all?): I just found the following: If nothing follows a comma in a byte declaration... the compiler does not warn or signals error.
    I know I have an "issue" with the way I'm handling those keywords versus the Parallax compiler. I need to do some more error testing to find out what I'm allowing that is not kosher syntax. The functionality is ok provided you only use what the Parallax compiler will accept.. I just appear to have some undocumented features that are perhaps not quite so legal syntax..
    Ale said...

    0.18pre8 Mac OSX: it hangs when the terminal is receiving and I try to compile and load again. Force Quit does not terminate the program neither does kill -9 (probably are the same). Turning it off and on again seems to solve the problem lol.gif

    I should be able to reproduce and fix this. I have some "issues" with the way I'm using the serial ports under OSX due to a limitation in the widget set I'm using. It's entirely possible that I'm forgetting to stop the receive loop properly and when you fire up the compiler the threads get wedged. I'll see what I can do to reproduce / fix it.

    I got the last annoying bug I've been chasing nailed today, so my todo list prior to the next release is :
    - Fix the alignment operators to reject what the Parallax compiler would reject.
    - Fix the OSX Serial routine
    - Finish the OSX CMD/Option -> arrow key maps

    Once I get those three pegged it's ready to roll.

    It's obviously a *nasty* bug if kill -9 won't knock it off..

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
  • heaterheater Posts: 3,370
    edited 2009-05-14 08:20
    I had a feeling you would not be so happy with the cog usage in the error window idea. Having an additional line under each FIT in the listing would be quite fine. It's not worth spending too much effort on getting this info out.

    I think I worked out most thing to do with #warn etc it's just that I don't remember seeing any "Note" messages come out, until now.

    Turns out that unused SPIN variables and methods are reported but unused labels in PASM are not.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • BradCBradC Posts: 2,601
    edited 2009-05-14 08:41
    heater said...

    Turns out that unused SPIN variables and methods are reported but unused labels in PASM are not.

    Indeed. The reason for that is unused SPIN variables and methods may often be safely removed, while there is no way to tell if the memory in or around a PASM label is never referenced.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    "VOOM"?!? Mate, this bird wouldn't "voom" if you put four million volts through it! 'E's bleedin' demised!
  • heaterheater Posts: 3,370
    edited 2009-05-14 09:14
    You might have to elaborate on that for me.

    If there are no statements in my SPIN or PASM that reference a PASM global label then I can only see a couple of options:

    Some labelled data is sitting there unused (LONG, WORD, BYTE whatever). In which case I'd like to be remdined I might like to remove it.

    Some code is sitting there unused. Again I'd like to be reminded I might like to remove it.

    Of course we can't actually distinguish between code and data.

    Either way the code/data may be required but the label is unreferenced anywhere. So it is only serving as a comment. In which case I think it should be a comment.

    None of this applies to local labels. I have tables with global labels and elements with local labels which seems fair enough.

    Having warnings about unreferenced global labels is an aid to removing "noise" from the code.

    Still, another "not a big deal" item.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    For me, the past is not over yet.
  • AleAle Posts: 2,363
    edited 2009-05-14 10:04
    I completely forgot about the discussion of @@ vs @@@. I just remembered and I was not sure of it being @@ or @@@ so I tested both. @@ folowwed by a label produces result of zero, while @@@ produces the HUB address. Shouldn't be @@ giving a syntax error when used this way ? I though that as it is not a function (AFAIK) and @ is it shouldn't be accepted as part of a label (literal) because it is not accepted as a label in a DAT section.

    sorry,

    thanks !
  • W9GFOW9GFO Posts: 4,010
    edited 2009-05-15 17:47
    Feature request and small bug

    Os X 10.5.7 Intel
    0.18pre-8
    Parallax Font

    The bug, text gets garbled - in this example The Pub's name is Sweep and I put the cursor between the "e" and "p" and backspaced three times. It remains garbled while typing the letters back in, it will stay this way until I scroll.

    attachment.php?attachmentid=60953

    Feature request, it would be nice for me if the main window could be split in two so that each side could show a different tab. Or be able to have two instances of BST running side by side.

    Rich H

    Edited to add system info

    Post Edited (W9GFO) : 5/15/2009 6:56:58 PM GMT
    118 x 36 - 5K
  • AleAle Posts: 2,363
    edited 2009-05-15 18:49
    W9FGO:

    Which version of BST, which operating system and which font are you using ?

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Visit the home of pPropQL, pPropQL020 and OMU for the pPropQL/020 at omnibus.uni-freiburg.de/~rp92
Sign In or Register to comment.