Shop OBEX P1 Docs P2 Docs Learn Events
Download SX/B version 1.51.03; Also known issues and solutions. — Parallax Forums

Download SX/B version 1.51.03; Also known issues and solutions.

BeanBean Posts: 8,129
edited 2010-08-22 06:35 in General Discussion
For the latest version please download the SX/B 2.0 beta compiler fromhttp://forums.parallax.com/forums/default.aspx?f=7&m=323767


Here is an updated version of SX/B.
Open the zip file and copy them into the folder "C:\Program Files\Parallax Inc\SX-Key v3.2\Compilers\SXB"
Overwriting the existing files that are already there.

Please download the new sxb.chm help file (until a new installer is created).

sxb.pdfis a printable sxb help file. You asked for it, you got it.

PLEASE don't post questions in this thread.
If you have a question start a new thread with an appropiate subject.

Terry Hitt

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
There is a fine line between arrogance and confidence. Make sure you don't cross it...



Post Edited (Bean (Hitt Consulting)) : 2/13/2009 5:36:31 PM GMT

Comments

  • BeanBean Posts: 8,129
    edited 2007-07-13 19:25
    If you are using the SX48 and the PWM command with SX/B version 1.51.03 you will get an assembly error.
    To correct the error add these lines to your program in the constants section.


    __TRISA CON __TRIS
    __TRISB CON __TRIS
    __TRISC CON __TRIS
    __TRISD CON __TRIS
    __TRISE CON __TRIS
    
    


    Thanks to user "djh82uk" for bringing this to my attention.

    Bean.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Teacher: What is the difference between ignorance and apathy ?
    Student: I don't know and I don't care
    Teacher: Correct !
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    www.hittconsulting.com
    ·
  • BeanBean Posts: 8,129
    edited 2007-09-20 12:37
    In SX/B version 1.51.03 if you attempt to use a WORD variable as an array index you should get an error message (usually incorrect number of parameters). But the SEROUT command does not issue an error. In fact it will send the address of the array instead.

    DEVICE SX28, OSCXT1, TURBO, STACKX, OPTIONX, BOR26
    FREQ 4_000_000
     
    sendStr  VAR BYTE(11)
    temp     VAR WORD
     
    PROGRAM Start NOSTARTUP
     
    Start:
      PUT sendStr, "HELLO THERE"
      FOR temp = 0 TO 10
        SEROUT RA.0,T9600,sendStr(temp) ' DO NOT USE A WORD AS AN ARRAY INDEX
      NEXT
    END
    
    

    The "fix" is to just use the LSB of the word variable.

    DEVICE SX28, OSCXT1, TURBO, STACKX, OPTIONX, BOR26
    FREQ 4_000_000
     
    sendStr  VAR BYTE(11)
    temp     VAR WORD
     
    PROGRAM Start NOSTARTUP
     
    Start:
      PUT sendStr, "HELLO THERE"
      FOR temp = 0 TO 10
        SEROUT RA.0,T9600,sendStr(temp_LSB)
      NEXT
    END
    
    

    Bean


    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    I know what I know, don't confuse me with the facts...
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    www.hittconsulting.com
    ·
  • BeanBean Posts: 8,129
    edited 2007-12-30 21:48
    When using the unary operator '~' with an array element bit, the unary operator will be ignored.

    myBit = ~myArray(1).1 ' The ~ is ignored (actually the value is inverted twice)

    Bean.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    www.iElectronicDesigns.com

    ·
  • BeanBean Posts: 8,129
    edited 2008-02-01 21:41
    You cannot use "-" in data values.

    For example "DATA -1" will read as "1" instead of "-1".

    One workaround is to define a constant and use that in the DATA statement.

    NegOne CON -1
    DATA NegOne

    Bean.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    www.iElectronicDesigns.com

    ·
  • BeanBean Posts: 8,129
    edited 2008-02-13 16:28
    When using the "_TO" (watchdog timeout bit) variable you get error message "Symbol <_TO> is not defined".

    If you need to use the "_TO" variable add this line to your variables section:

    \_TO EQU TO
    


    Note the slash and underscore prefix.

    Bean

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    www.iElectronicDesigns.com



    Post Edited (Bean (Hitt Consulting)) : 2/13/2008 5:17:22 PM GMT
  • BeanBean Posts: 8,129
    edited 2008-02-26 12:23
    When using a WORD variable as the timeout parameter in SERIN, the timeout value does not get loaded into the __PARAM1 and __PARAM2 variables.

    Either use a BYTE variable for the timeout parameter or put this line just before the SERIN command

    __WPARAM12 = timeoutWordVar + 256
    

    This will load __PARAM1 and __PARAM2 with the correct values.

    Bean

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    www.iElectronicDesigns.com

    ·
  • BeanBean Posts: 8,129
    edited 2008-03-06 17:31
    When using the LOAD command. The PROGRAM directive must be used before the end of any LOAD file.

    What happens is that when the compiler comes to the end of the file that it is compiling, it checks to make sure that you used the PROGRAM directive (in case you missed it). But it also performs this check at the end of a LOAD file too.

    To avoid getting this message, you need to have the PROGRAM directive either in the first LOAD file, or in the main program before the first LOAD file.

    Bean

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    www.iElectronicDesigns.com

    ·
  • BeanBean Posts: 8,129
    edited 2008-05-06 12:54
    When using the SX28 the compiler will not use memory locations $F0,$F1,$F2,$F3,$F4 for arrays.

    These locations CAN be used as single element arrays by aliasing the __RAM() array as such:

    extra0 VAR __RAM($F0)
    extra1 VAR __RAM($F1)
    extra2 VAR __RAM($F2)
    extra3 VAR __RAM($F3)
    extra4 VAR __RAM($F4)

    Bean.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Did you know that 111,111,111 multiplied by 111,111,111 equals 12345678987654321 ?

    www.iElectronicDesigns.com

    ·
  • SelfPropelledSelfPropelled Posts: 6
    edited 2010-08-21 09:49
    Hey Bean,

    Your link to SX/B 2.0 comes back as 404.

    I realize the SX is at end of life;
    I am in late stage of a design in progress,
    and I need to complete it.

    Is there a working link for SXB 2.0?
    Is there a corresponding help file or other updated docs?

    Thanks!
    Mike
  • ZootZoot Posts: 2,227
    edited 2010-08-21 14:18
    The new forum software doesn't have attachment limits that are big enough... for reasons that elude me.


    Try using this link from the old forums:

    http://forums.parallaxinc.com/forums/attach.aspx?a=41516
  • BeanBean Posts: 8,129
    edited 2010-08-22 06:35
    I edited the link to point to the old forum.

    Bean
Sign In or Register to comment.