Shop Learn
Download PropBASIC here... 00.01.14 LAST VERSION FOR BST - Page 27 — Parallax Forums

Download PropBASIC here... 00.01.14 LAST VERSION FOR BST

12324252729

Comments

  • simonlsimonl Posts: 866
    edited 2012-06-08 08:44
    So, what's the latest version of PropBASIC? Is it the one on the first page of this thread?
  • BeanBean Posts: 8,122
    edited 2012-06-08 09:37
    The latest version is for viewport and can be downloaded here http://forums.parallax.com/showthread.php?135678

    Bean
  • simonlsimonl Posts: 866
    edited 2012-06-08 11:25
    Thanks Bean. I've got some holiday so thought I'd have another go at PropBASIC :)
  • simonlsimonl Posts: 866
    edited 2012-09-23 12:14
    Does anyone know where I can find a list of PropBASIC command-line switches? I'm trying to compile via command-line but despite getting no errors, I get no compiled code either - does PropBasic.exe still allow command-line usage?
  • NWCCTVNWCCTV Posts: 3,629
    edited 2013-01-29 15:44
    Bean wrote: »
    Make sure you run the PropBASICIDE program. This is the front-end / editor for propbasic.
    With in the editor you can select "Compile" this compiles and opens the .spin file in the Propeller Tool.
    Select "Run", this uses propellent to compile and run the program from RAM.
    Select "EEPROM" to burn the program into the EEPROM so it will run at power-up.

    I am trying to figure out where the Propbasicide program is located.
    I must say I am a bit confused!!!!!
  • BeanBean Posts: 8,122
    edited 2013-01-30 05:58
    The problem is that PropBasic is a compiler without a IDE.

    It was supported by BST, but required that I send the source to BradC for him to modify and create the executable files.
    It is supported by Viewport, but it is not a free program.
    I wrote a very simple IDE (PropBasicIDE), but it wasn't good at all.

    It is a shame that the propeller IDE does not support external compilers. That would be perfect.

    I have taken to using Geany for the editor. This is what I recommend. It's not perfect, but it works.

    Unzip the files in the PropBasic.zip file to C:\PropBasic

    After you install geany, do Build->Set Build Commands and set the execute command as shown in the picture (note the spaces).

    I hope this helps, Let me know if you need any further info.

    Bean

    P.S. If anyone can tell me how to highlight keywords in geany, I appreciate it...

    P.S.S. The zip file also contains the latest version of PropBasic 1.30
    539 x 495 - 75K
  • Bill HenningBill Henning Posts: 6,445
    edited 2013-01-30 09:33
    Bean,

    Did you check with Jazzed to see if SimpleIDE could be configured for PropBasic?

    Bean wrote: »
    The problem is that PropBasic is a compiler without a IDE.

    It was supported by BST, but required that I send the source to BradC for him to modify and create the executable files.
    It is supported by Viewport, but it is not a free program.
    I wrote a very simple IDE (PropBasicIDE), but it wasn't good at all.

    It is a shame that the propeller IDE does not support external compilers. That would be perfect.

    I have taken to using Geany for the editor. This is what I recommend. It's not perfect, but it works.

    Unzip the files in the PropBasic.zip file to C:\PropBasic

    After you install geany, do Build->Set Build Commands and set the execute command as shown in the picture (note the spaces).

    I hope this helps, Let me know if you need any further info.

    Bean

    P.S. If anyone can tell me how to highlight keywords in geany, I appreciate it...

    P.S.S. The zip file also contains the latest version of PropBasic 1.30
  • BeanBean Posts: 8,122
    edited 2013-01-30 10:04
    Bill,
    I had asked some time ago and he was too busy at the time to look into it.
    I hate to pester people. If he reads this (or if anyone wants to bug him about it), I'd be willing to change whatever I can to make it work.

    Bean
  • HannoHanno Posts: 1,130
    edited 2013-01-30 10:47
    I'm still an enthusiastic supporter of PropBASIC and I make sure it works well within ViewPort. There is a free trial and and I believe ViewPort's debugging features are well worth the cost. In my opinion a text editor is for those that write perfect programs right of the bat- I'm not one of those so I use a debugger that makes me more productive and let's me solve more complex problems.
    Hanno
  • jazzedjazzed Posts: 11,803
    edited 2013-01-30 21:48
    Hi Bean. I'm sorry that I don't have time yet. I'm still tied up with getting SimpleIDE things ready for a Parallax revenue release. After that comes the SPIN specific version work. I've been asked not to deviate from the current path when another item came up ... always something shinny on the horizon.
  • MicksterMickster Posts: 2,084
    edited 2013-01-31 01:06
    PropBASIC - Viewport = PennywisePoundfoolish. That is if one values one's time.

    This combo just doesn't get the support and exposure that it should!

    Mickster
  • andre.nieuwoudtandre.nieuwoudt Posts: 65
    edited 2013-01-31 05:55
    Hi Everybody,

    I have been following the development of ViewPort and PropBasic for ViewPort, but as far as I am concerned, it is not yet at a stage where I will seriously consider using it.

    Concerning the lack of a decent IDE for PropBASIC (no offense intended, Brad and Hanno), I use NOTEPAD++ version 6.1.8 and it works like a charm. Admittedly it is not an IDE, but it is a very nice editor and it is FREE. To my mind the extra 2 key presses required to compile and load the code to the Propeller, but having an excellent editor outweighs the allure of an IDE with a not-so-nice editor. Especially since I spend most of my time coding and not compiling.

    There is a newer version of Notepad++, but the syntax highlighting method has changed entirely and I just do not feel like re-doing all the syntax highlighting which I had already done for no apparent benefit, so I am still using version 6.1.8. The examples I have attached are for NotePad++ version 6.1.8.

    After you have installed Notepad++, download the Explorer Plugin (Plugins > Plugin Manager > Show Plugin Manager . There are a LOT of plugins available, so just find Explorer in the list.

    You can set up shortcuts for command line compile and load for both BSTC and Propellent (From PropBASIC Ver. 00.01.08 LMM jumps use @@@ which causes a Propellent compile error, but it works with Brad’s Spin Tool Compiler - just make sure that you have downloaded bstc-0.15.4-pre13.exe). I have attached a document on how to set up the command line shortcuts in Notepadd++.

    The are only two bothersome issues with Notepad++
    1) It can not do syntax checking - I still use Brad's Spin Tool for syntax checking. But after a while you can recognize from the DOS window that pops up when you compile with BSTC whether there are code errors or not. The Propellent interface is quite nice and it will even give you syntax error feedback, but unfortunately Propellent does not work with the new Propbasic LMM command.
    2) Because it uses command line compilers, you HAVE TO SAVE the program which you are working on BEFORE compiling to Spin.

    I have attached the userDefineLang.xml file which contains all the syntax highlighting which I have set up. You can of course change if to your liking. On my Windows 7 OS the file is in:

    C:\Users\"Your_User_Name"\AppData\Roaming\Notepad++\userDefineLang.xml ("Your_User_Name" is your Windows Logon User). If the file is not in this folder, it has probably been installed in the NotePad++ installation folder. If all else fails, just use Windows Search to find the file. Make sure that the "Show Hidden files, folders and drives" option is selected in the Folder Options View tab first.

    Copy the new file into the folder where you found userDefineLang.xml. To change the Syntax Highlighting in Notepad++, got to View > User-Defined Dialogue and then on the pop-up screen, select PropBASIC from the drop-down list for "User language" at the top of the pop-up.

    It is easy to change the shortcut keys for the command lines, but if you need to change the path to the folder were your compiler is stored, the easiest is to edit the shortcuts.xml file directly in Notepad++ :-). The shortcuts.xml file is in the same folder as the userDefineLang.xml file. In fact all the setup files are in the same folder, which makes it really easy to make a backup of your Notepad++ settings.

    Apart from syntax colouring, Norepad++ has a number of nice features like Block Comment/Un-comment, Auto-complete, Tab settings, options for showing "connecting lines" for indented code with .e.g. FOR..NEXT, configurable colour selection for the line of code where the cursor is as well as for selected code, and, something which I find extremely useful: If you double-click on a word in a program, NotePad++ highlights all occurrences of that word throughout the program - no more Find Next :-)

    I have also attached a screen snip of what a PropBasic program looks like in Notepadd+ as I have set it up.

    All the attachments are in a .zip file.

    I hope this is helpful to someone.

    Regards
    Andre

    PS. I am still using PropBasic-bst.exe Version 1.12 because it works fine for my requirements - PropBasic-bst.exe Version 1.14 had something that sometimes made the compiler hang for a VERY long time and it also did funny things with indexes in programs that were written in version 1.12. And at least I can still use Brad's Spin Tool for syntax checking - I have no interest in switching to ViewPort at this stage.

    Another PS. NotePad++ does not have a built-in Serial Terninal, but you can of course create a Run command to open the Parallax Serial Terminal.

    Here is a link to all the available plugins for NotePad++: http://sourceforge.net/projects/npp-plugins/files/?source=navbar
  • andre.nieuwoudtandre.nieuwoudt Posts: 65
    edited 2013-01-31 06:31
    Hi Bean,

    I had a quick look at the Geany web page, but I cannot comment on using it, but just for interest, have a look at my post on using NotePad++.

    Regards
    Andre

    PS. Can you perhaps post a list of the changes/fixes from, say PropBasic-bst.exe Version 1.12 up to PropBasic Version 1.3? It would be really useful to see what has all changed in one list, rather than trying to pick up the changes from all the posts in the forum.
  • KC_RobKC_Rob Posts: 465
    edited 2013-01-31 09:05
    Concerning the lack of a decent IDE for PropBASIC (no offense intended, Brad and Hanno), I use NOTEPAD++ version 6.1.8 and it works like a charm. Admittedly it is not an IDE, but it is a very nice editor and it is FREE. To my mind the extra 2 key presses required to compile and load the code to the Propeller, but having an excellent editor outweighs the allure of an IDE with a not-so-nice editor. Especially since I spend most of my time coding and not compiling.
    I rarely use the editor that comes with an IDE; few are any good, and it's just one more thing to keep track of if you already have an editor that you're familiar and happy with. There are many great code editors to choose from, something for everyone: Vim, Emacs, Geany, Notepad++, Sublime Text, jEdit, SlickEdit (pricey but wonderful)... and more. Most of the really good editors can be tweaked easily enough into a de facto IDE (Emacs in particular). Better, I think, for IDEs to provide seamless support for external editors, unless they are to have an editor of comparable quality built in (which I've only rarely seen).
  • BeanBean Posts: 8,122
    edited 2013-01-31 10:51
    Andre,
    Here are my version notes:
     =========================================================================
    
      PropBasic.EXE "C:\SOURCECODE\TEST.pbas"
    
    Switches:
      /Q = Quiet (No screen output)
      /P = Pause on warning or error (used to debug compiler)
      /E = Pause on exit
      /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
    
    Version 00.01.00
      Fixed: Compiler crash on COGSTART if task name has not been defined
      Fixed: Calculated constant using a long constant
        mSec = _Freq / 1000
    
        value1 CON 10_000
        value2 CON value1 / 10
    ----------------------------------------------------------------------------
    Version 00.01.01
      Fixed: COGSTART doesn't add "par" to __temp1
      Fixed: / doesn't error if first parameter is invalid
      Fixed: minWaitCnt in tasks was 128 instead of 80
      Fixed: str = str + longvar
      Fixed: str = "" ' comment
    ----------------------------------------------------------------------------
    Version 00.01.02
      Fixed: test $,#1 WC ' Set Carry (doesn't work in LMM) I2CWrite
      Fixed: COGINIT if taskname doesn't exist crashes
      Fixed: Glitch on PinGroup = PinGroup
      Fixed: IF pinName THEN
      Changed: In LMM use "LONG label * 4" instead of "LONG @label - @__Init"
      Changed: Use relative jumps for LMM
        SUB __PC,#(($-label)*4)+4 ' Jump backward
        ADD __PC,#((label-$)*4)-4 ' Jump forward
    ----------------------------------------------------------------------------
    Version 00.01.03
      Fixed: RDWORD buffer($1C0), temp
      Fixed: name HUB STRING(10) = "Hello"
      Fixed: trailing "," in data causes offset in next data label (counts it as element).
               Now causes a syntax error.
      Fixed: PULSIN hangs with RCSLOW
    ----------------------------------------------------------------------------
    Version 00.01.04
      Fixed: INC, DEC where second parameter is an array with a variable index
      Added: I2CSpeed multiplier. "I2CSpeed 2" is double speed, "I2CSpeed 0.5" is half speed.
    ----------------------------------------------------------------------------
    Version 00.01.05
      Added: Allows embedded escape sequences in strings.
        \r = 13
        \n = 10
        \\ = 92
        \" = 34
        \123 = 123 [must use 3 digits, so 16 would be \016 ]
        \x20 = $20 [must use 2 characters, so $A would be \x0A ]
    ----------------------------------------------------------------------------
    Version 00.01.06
      Added:
        "CLKSET mode,freq" command
      Fixed:
        Allow more nested IF...ELSEIF loops, increased c_iMaxLoops from 127 to 1024
        LET pingroup= doesn't do "shl __temp1,#0" if pingroup starts at 0
        HIGH,LOW,TOGGLE,INPUT,OUTPUT,REVERSE if pin # is a constant < 9 then do shift as literal
        Allow I2C pins to be variables
      Removed:
        Copyright notice
    ----------------------------------------------------------------------------
    Version 00.01.07
      Changed LMM to use @@@ (still need offset for start address)
    ----------------------------------------------------------------------------
    Version 00.01.08
      Fixed data offsets (all messed up) from allowing embedded escape sequences
      Fixed @@@ issues in _LETLong and _LetStr
    ----------------------------------------------------------------------------
    Version 00.01.09
      Fixed: I2CSTART with pins as variables
    ----------------------------------------------------------------------------
    Version 00.01.10
      Fixed: SHIFTIN - REV was using bits instead of (32-bits)
      Fixed: SHIFTIN and SHIFTOUT when using a variable for 2nd parameter
    ----------------------------------------------------------------------------
    Version 00.01.11
      Fixed: ON var GOSUB label0, label1, label2
      Fixed: Allow constant with COGSTOP
      Fixed: Embedded escape sequences "\"
    ----------------------------------------------------------------------------
    Version 00.01.12
      Changed: Create a return stack for LMM
                 this will save 1 instruction for every subroutine call
                 and 1 long from every subroutine
    
      Optimized: SERIN use "waitpne" and "waitpeq" to wait for state  (saves 2)
                       use "muxz" or "muxnz" to set/clear data bits   (saves 1)
                       use data variable to do bit count (1 shifts out) (saves 1)
    ----------------------------------------------------------------------------
    Version 00.01.13
      Optimized: WRLONG, WRWORD, WRBYTE (don't reload short constants)
      Added: "STACK value" to change stack size (defaults to 16) (4 to 255 allowed)
        NOTE: STACK only affects LMM code
      Fixed: pin = var (didn't set zero flag)
      Fixed: array(pos) = array(pos) + array(pos2)
    ----------------------------------------------------------------------------
    Version 00.01.14
      Fixed: Using long constant in LDATA Jul 26, 2011
    ----------------------------------------------------------------------------
    Version 00.01.15 - 00.01.18
      Fixed: multiply gets hung-up Sept 21, 2011
    
      Add support for ViewPort
        Added: WATCH VarName
        Added: UNWATCH LongVarName turns off watching
    ----------------------------------------------------------------------------
    Version 00.01.19
      Fixed WATCH order for arrays
      Allow multiple parameters for WATCH and UNWATCH
      Allow WATCH and UNWATCH without any parameters for ALL
      Allow Viewport modifiers as WATCH varname "modifier"
        Example: WATCH time "unit=msec"
        * Modifier must be used at first WATCH
    ----------------------------------------------------------------------------
    Version 00.01.20
      Fixed: remove WATCH modifier strings from HUB DATA
      Fixed: Multiply (2 bits)
      Added: Viewport Video support
      Fixed: Fix pinvar1 = ~pinvar2
        
    ----------------------------------------------------------------------------
    Version 00.01.26
      FIXED: WDATA and LDATA (no data generated)
    
    Version 00.01.27
      ADDED: __txtermAdr to support viewport terminal
    
    Version 00.01.28
      Added: Support floating point values with # prefix
      Fixed: FREQ command caused abort if DEVICE is misspelled
      Fixed: Allow constant with COGSTOP (was NOT fixed in 1.11)
      Fixed: tempStr = STR temp (needs ",len" but causes abort) [Oct 10,2012]
    
    Version 00.01.29
      Fixed: PAUSE XXXX does not cause an error
      
    Version 00.01.30
      Added: Directive VIEWPORT defined if using viewport
      NEED TO FIX: DO...LOOP x => y ' should be >= but no error
    
    

    Bean
  • HannoHanno Posts: 1,130
    edited 2013-01-31 11:05
    Thanks Mickster for the nice illustration :)
    I'm a big fan of Notepad++ for editing text.

    ViewPort makes it really easy to use a 3rd party text editor. Just open the file in ViewPort AND in your other editor. Use ViewPort to run/debug your file and your editor to edit the code. ViewPort will recognize when you've made external changes and will prompt you to "Do you want to reload the file" when you switch to the ViewPort window.
    H
  • KC_RobKC_Rob Posts: 465
    edited 2013-01-31 13:45
    Hanno wrote: »
    ViewPort makes it really easy to use a 3rd party text editor. Just open the file in ViewPort AND in your other editor. Use ViewPort to run/debug your file and your editor to edit the code. ViewPort will recognize when you've made external changes and will prompt you to "Do you want to reload the file" when you switch to the ViewPort window.
    H
    That's all you need! Every IDE should do this (fortunately, most do).
  • HannoHanno Posts: 1,130
    edited 2013-01-31 14:29
    KC_Rob wrote: »
    That's all you need! Every IDE should do this (fortunately, most do).

    Unfortunately none of SimpleIDE, Propeller Tool, or BST do this...

    ViewPort is the only IDE that let's you use whichever editor you want...
    Hanno
  • KC_RobKC_Rob Posts: 465
    edited 2013-01-31 19:05
    Hanno wrote: »
    Unfortunately none of SimpleIDE, Propeller Tool, or BST do this...
    Yes, I noticed that about the Propeller Tool. :(
  • BeanBean Posts: 8,122
    edited 2013-02-01 04:37
    Just so everyone knows, the latest version for BST is 1.14 and there is a problem in the multiplication routine.
    If you multiply by a constant other than a power of 2 (2, 4, 8, 16, etc) the compiler will stop for awhile (5 seconds or so) at EVERY multiply before continuing.

    Bean
  • andre.nieuwoudtandre.nieuwoudt Posts: 65
    edited 2013-02-03 06:51
    Hanno wrote: »
    Thanks Mickster for the nice illustration :)
    I'm a big fan of Notepad++ for editing text.

    ViewPort makes it really easy to use a 3rd party text editor. Just open the file in ViewPort AND in your other editor. Use ViewPort to run/debug your file and your editor to edit the code. ViewPort will recognize when you've made external changes and will prompt you to "Do you want to reload the file" when you switch to the ViewPort window.
    H


    Hi Nanno,

    I installed ViewPort a number of months ago (cannot remember what the version was back then). but I couldn't get it to work properly with PropBasic, so I uninstalled ViewPort. Today I downloaded ViewPort v4.7.8 and installed it, but it says that my free evaluation period has expired. I uninstalled it, ran CCleaner and manually cleaned all remaining ViewPort files and folders that I could find. I then ran RegEdit and removed all ViewPort entries that I could find. Restarted the PC, re-installed ViewPort, same problem. It still finds something somewhere that says I have already installed it.

    Is there a way that I can get a trial period again so that I can see what the latest version of ViewPort and PropBasic looks like?

    Regards
    Andre.
  • andre.nieuwoudtandre.nieuwoudt Posts: 65
    edited 2013-02-03 06:56
    Hi Bean,

    Thanks for the version notes :-)

    Is there a new syntax manual? The latest one I have been able to find is "PropBasic 00.01.14".

    Regards
    Andre
  • HannoHanno Posts: 1,130
    edited 2013-02-03 12:46
    Hi Nanno,

    I installed ViewPort a number of months ago (cannot remember what the version was back then). but I couldn't get it to work properly with PropBasic, so I uninstalled ViewPort. Today I downloaded ViewPort v4.7.8 and installed it, but it says that my free evaluation period has expired. I uninstalled it, ran CCleaner and manually cleaned all remaining ViewPort files and folders that I could find. I then ran RegEdit and removed all ViewPort entries that I could find. Restarted the PC, re-installed ViewPort, same problem. It still finds something somewhere that says I have already installed it.

    Is there a way that I can get a trial period again so that I can see what the latest version of ViewPort and PropBasic looks like?

    Regards
    Andre.

    Hi Andre,
    I've sent you a temporary key. I apologize for having to use license keys- but this is how I feed my family.
    Bean- sorry to hijack your thread :)
    Hanno
  • andre.nieuwoudtandre.nieuwoudt Posts: 65
    edited 2013-02-05 03:57
    Hi Bean and Hanno,

    I know you are both very busy, so I just want to say: Thank you very much for taking time out to to help us with our queries. It is appreciated :-)

    Regards
    Andre
  • andre.nieuwoudtandre.nieuwoudt Posts: 65
    edited 2013-02-12 14:07
    Can anybody please tell me how to tell PropBasic that a number with a "1" in Bit 31 is not a signed number, but to treat it as an Unsigned or a positive number? I am ending up with some very large numbers for FRQx in calculations for using the Propeller Counters in Duty mode and I am getting negative answers because Bit 31 is a "1".

    According to the Propeller manual (and some threads which I come across), it is possible to do unsigned calculations in PASM, but I am afraid my knowledge of Assembler is no where near the level required to do this.

    Regards
    Andre
  • BeanBean Posts: 8,122
    edited 2013-02-12 15:13
    It depends on what math or comparisons you need to do with the value.

    Can you just shift it 1 bit to the right (making it 1/2 of it's original value). Then it will always be positive.

    temp = FRQA
    temp = temp SHR 1

    Otherwise, can you show what operations you are doing with the value ?

    Bean
  • andre.nieuwoudtandre.nieuwoudt Posts: 65
    edited 2013-02-12 16:48
    Hi Bean,

    Thanks for the quick reply.

    I am using COUNTERA in single-ended Duty mode and I have to set FRQA to some large values, e.g. FRQA = 4080218932. If you assign 4080218932 to a Variable, the number is treated as -214748364 (negative 21474836). I have found that if you declare the numbers as Constants and let FRQA = a Constant, it works fine, but, ideally, it would be better if I could calculate the FRQA values as required in the program instead of trying to look up a value from a long list of Constants.

    The problem is that I have to fade the LEDs, i.e. assign a range of constants to FRQA one by one in a LOOP. With a list of Variables I can just use an Index, e.g.

    a var long = 1
    b var long = 2
    c var long = 3

    Counter = a(2)

    and Counter will = 3 (i.e. Counter = c)

    I tried doing the same with Constants, e.g.

    a con 1
    b con 2
    c con 3

    FRQA= a(2)

    but the compiler does not like this. Now I am stuck :-(. It looks like I am going to have to do some unsigned Assembly math. Any ideas?

    Regards
    Andre






  • BeanBean Posts: 8,122
    edited 2013-02-12 17:53
    If you are just assigning the values to FRQA then it doesn't matter if they are negative or not.

    Can you post the actual code you are working on ?

    Bean
  • andre.nieuwoudtandre.nieuwoudt Posts: 65
    edited 2013-02-12 18:38
    Bean, you are a genius!

    The magic words are: "If you are just assigning the values to FRQA then it doesn't matter if they are negative or not."

    I never thought of actually assigning the negative numbers to FREQA to see what would happen - I was only looking at the results of the calculations (DEBUGing the results) to see if they matched my spreadsheet calculations, and I just assumed that the negative numbers would not work.


    Thanks, it works just fine.
    Andre
  • VonSzarvasVonSzarvas Posts: 2,712
    edited 2013-03-02 05:25
    Bean wrote: »
    HUB vars and DATA can be declared in TASKS. This should not cause any problems.

    You can also use LOAD to access commonly used subroutines. If you enclose each subroutine with a '{$IFUSED name} ... {'ENDIF} pair unused subroutines will be stripped and will not take any code space. Note that the LOAD must come at the end of the program so the compiler knows what subroutines were called, and which were not.

    Bean

    Hi Bean, may I ask some help from your "insider knowledge" ?

    Library loading into the main cog... works great
    Library loading into tasks... is that supposed to work?

    So far I tried and failed with many combinations of load/include both top and bottom of the task code, and adding/removing $CODE and $TASK tags... test code included.
    Depending on position of LOAD in the task, error on compile is either Problem parsing PropBasic or Unknown symbol DELAY_MS_ret

    Thank you !
    DEVICE          P8X32A, XTAL1, PLL16X
    XIN             5_000_000
    
    
    LOAD "lib_delays.pbas"
    
    
    LED1            PIN   1    LOW
    
    
    TASK_BLINKLED     TASK AUTO
    
    
    PROGRAM Start
    
    
    Start:
    
    
    DO
          TOGGLE LED1
          DELAY_MS 1000
    LOOP
    
    
    END
    
    
    
    
    TASK TASK_BLINKLED
    
    
    LED2            PIN   2    LOW
    
    
    'LOAD "lib_delays.pbas"
    
    
    DO
    
    
          TOGGLE LED2
          DELAY_MS 1000
          
    LOOP
    
    
    LOAD "lib_delays.pbas"
    
    
    ENDTASK
    
Sign In or Register to comment.