I'm recompiling the binutils for the 430X branch on a Win Box.
Leaving aside that it takes a couple of hours to reach the first error, I 
cannot seem to overcome it.

It's either something about deprecated dos to posix path function or a 
segmentation fault of some sort..

I tried cleaning the workspace and reinstalling the newest version of cygwin 
(read binutils), to no end.

Anybody got a working mspgcc for the 430X microcontrollers? I'm giving up hope 
and will suggest buying a compiler if I can't make it work until Friday.

Mihai

--- On Wed, 9/22/10, thln <[email protected]> wrote:

> From: thln <[email protected]>
> Subject: Re: [Mspgcc-users] the dreaded x-branch
> To: "GCC for MSP430 - http://mspgcc.sf.net"; 
> <[email protected]>
> Date: Wednesday, September 22, 2010, 5:22 PM
> 
> Hello, Michiel
> 
> I compile your version (based on binutils-2.18, gcc-3.2.3)
> on Linux 
> (ubuntu) and it works, thank you!
> Addressing goes well with the 20bit
> 
> Finally, there is however a problem when I defined a
> section in fardata 
> (0x10500) the compiler truncates the address (0x0500)!
>     10c18:    d1 42 00 05 
>    mov.b &0x0500,2(r1)   
> ;0x0002(r1)
> I have not defined this section in the linker script, but
> like this:
>  
>    -Wl,--section-start=.fardata=0x10500 \
>  
>    -Wl,--section-start=.fartext=0x10C00
> 
> I'll test it with a linker script later ...
> 
> I was not able to compile your version (innovents) under
> Windows (cygwin 
> 1.7)!
> I have problems with the bintutils-2.18, If you have any
> tips to come, 
> shows me please !
> It's the next step ...
> 
> For Milhai I put my test files below
> 
> Bye!
> 
> ---- Makefile ----
> # makefile configuration
> NAME            = test1
> OBJECTS         = main.o
> CPU             =
> msp430x5418
> 
> CFLAGS          = -mmcu=${CPU} -O2
> -Wall -g
> 
> TOOLCHAIN_PATH="/home/thierry/mspgcc.innoventis.de/local_linux"
> GCC_PATH =$(TOOLCHAIN_PATH)/bin/msp430-
> 
> CC=$(GCC_PATH)gcc
> OBJDUMP=$(GCC_PATH)objdump
> OBJCOPY=$(GCC_PATH)objcopy
> OBJSIZE=$(GCC_PATH)size
> 
> 
> DMWT_PATH=/home/thierry/dfw/dfw-0.19
> DMWT=${DMWT_PATH}/dmwt
> 
> VPATH = ../src
> 
> .PHONY: all FORCE clean download download-jtag download-bsl
> dist
> 
> #all should be the first target. it's built when make is
> run without args
> all: ${NAME}.elf ${NAME}.a43 ${NAME}.lst ${NAME}.hex
> 
> #confgigure the next line if you want to use the serial
> download
> download: dmwt
> #download: download-jtag
> #download: download-bsl
> 
> #additional rules for files
> ${NAME}.elf: ${OBJECTS}
>      ${CC} -mmcu=${CPU} -o $@
> ${OBJECTS} \
>  
>    -Wl,--section-start=.fardata=0x10500 \
>  
>    -Wl,--section-start=.fartext=0x10C00
> 
> 
> ${NAME}.a43: ${NAME}.elf
>      ${OBJCOPY} -O ihex $^ $@
> 
> ${NAME}.hex: ${NAME}.elf
>      msp430-objcopy -O ihex $^ $@
> 
> ${NAME}.lst: ${NAME}.elf
>      ${OBJDUMP} -dSt $^ >$@
> 
> download-jtag: all
>      msp430-jtag -e ${NAME}.elf
> 
> download-bsl: all
>      msp430-bsl -e ${NAME}.elf
> 
> dmwt:all
>      ${DMWT} -vd ${NAME}.elf
> 
> debug:all
>      msp430-gdbproxy msp430
> 
> clean:
>      rm -f ${NAME}.elf ${NAME}.a43
> ${NAME}.lst ${OBJECTS}
> 
> #backup archive
> dist:
>      tar czf dist.tgz *.c *.h *.txt
> makefile
> 
> ----- main.c -----
> #include "msp430x54xx.h"
> 
> #define fartext __attribute__((section(".fartext")))
> #define fardata __attribute__((section(".fardata")))
> 
> 
> 
> fartext uint8_t foo(uint8_t luc_a)
> {
> return ++luc_a;
> }
> 
> fardata uint8_t TEST_fartext[] = {0x01, 0x23, 0x45};
> 
> fartext int main(void)
> {
> volatile uint8_t a=0;
> volatile uint8_t b;
> volatile uint8_t c;
> 
> while (1)
>      {
>      b = foo(a);
>      c = TEST_fartext[0];
>      }
> return 0;
> }
> 
> 
> 
> ----- Disassembly listing ----
> 
> Disassembly of section .fartext:
> 
> 00010c00 <foo>:
> 
> 
> 
> fartext uint8_t foo(uint8_t luc_a)
> {
> return ++luc_a;
>     10c00:    5f 53     
>      inc.b    r15
>     10c02:    7f f3     
>      and.b    #-1, 
>   r15    ;r3 As==11
> }
>     10c04:    10 01     
>      reta
> 
> 00010c06 <main>:
> 
> fardata uint8_t TEST_fartext[] = {0x01, 0x23, 0x45};
> 
> fartext int main(void)
> {
>     10c06:    31 40 fc 5b 
>    mov    #23548,   
> r1    ;#0x5bfc
> volatile uint8_t a=0;
>     10c0a:    c1 43 00 00 
>    mov.b    #0,   
> 0(r1)    ;r3 As==00, 
> 0x0000(r1)
> volatile uint8_t b;
> volatile uint8_t c;
> 
> while (1)
>      {
>      b = foo(a);
>     10c0e:    6f 41     
>      mov.b    @r1, 
>   r15
>     10c10:    b1 13 00 0c 
>    calla    #0x10c00
>     10c14:    c1 4f 01 00 
>    mov.b    r15,   
> 1(r1)    ;0x0001(r1)
>      c = TEST_fartext[0];
>     10c18:    d1 42 00 05 
>    mov.b &0x0500,2(r1)   
> ;0x0002(r1)
>     10c1c:    02 00
>     10c1e:    f7 3f     
>      jmp    $-16   
>      ;abs 0xc0e
> Disassembly of section .text:
> 
> 00005c00 <__init_stack>:
>      5c00:    31 40 00
> 5c     mov    #23552, 
>   r1    ;#0x5c00
> 
> 00005c04 <__low_level_init>:
>      5c04:    b2 40 80
> 5a     mov    #23168,
> &0x015c    ;#0x5a80
>      5c08:    5c 01
> 
> 00005c0a <__do_clear_bss>:
>      5c0a:    3f 40 01
> 00     mov    #1,   
> r15    ;#0x0001
>      5c0e:    0f 93 
>          tst    r15
>      5c10:    04 24 
>          jz   
> $+10         ;abs 0x5c1a
>      5c12:    1f 83 
>          dec    r15
>      5c14:    cf 43 00
> 1c     mov.b    #0, 
>   7168(r15);r3 As==00, 
> 0x1c00(r15)
>      5c18:    fc 23 
>          jnz   
> $-6          ;abs 0x5c12
> 
> 00005c1a <__do_copy_data>:
>      5c1a:    3f 40 00
> 00     mov    #0,   
> r15    ;#0x0000
>      5c1e:    0f 93 
>          tst    r15
>      5c20:    06 24 
>          jz   
> $+14         ;abs 0x5c2e
>      5c22:    2f 83 
>          decd   
> r15
>      5c24:    40 18 9f
> 4f     movx   
> 23608(r15),7168(r15);0x05c38(r15), 
> 0x01c00(r15)
>      5c28:    38 5c 00 1c
>      5c2c:    fa 23 
>          jnz   
> $-10         ;abs 0x5c22
> 
> 00005c2e <__jump_to_main>:
>      5c2e:    80 01 06
> 0c     bra    #0x10c06
> 
> 00005c32 <__ctors_end>:
>      5c32:    80 00 36
> 5c     bra    #0x05c36
> 
> 00005c36 <_unexpected_>:
>      5c36:    00 13 
>          reti
> Disassembly of section .vectors:
> 
> 0000ff80 <InterruptVectors>:
>      ff80:    32 5c 32 5c 32
> 5c 32 5c 32 5c 32 5c 32 5c 32 5c     
> 2\2\2\2\2\2\2\2\
>      ff90:    32 5c 32 5c 32
> 5c 32 5c 32 5c 32 5c 32 5c 32 5c     
> 2\2\2\2\2\2\2\2\
>      ffa0:    32 5c 32 5c 32
> 5c 32 5c 32 5c 32 5c 32 5c 32 5c     
> 2\2\2\2\2\2\2\2\
>      ffb0:    32 5c 32 5c 32
> 5c 32 5c 32 5c 32 5c 32 5c 32 5c     
> 2\2\2\2\2\2\2\2\
>      ffc0:    32 5c 32 5c 32
> 5c 32 5c 32 5c 32 5c 32 5c 32 5c     
> 2\2\2\2\2\2\2\2\
>      ffd0:    32 5c 32 5c 32
> 5c 32 5c 32 5c 32 5c 32 5c 32 5c     
> 2\2\2\2\2\2\2\2\
>      ffe0:    32 5c 32 5c 32
> 5c 32 5c 32 5c 32 5c 32 5c 32 5c     
> 2\2\2\2\2\2\2\2\
>      fff0:    32 5c 32 5c 32
> 5c 32 5c 32 5c 32 5c 32 5c 00 5c     
> 2\2\2\2\2\2\2\.\
> 
> 
> 
> 
> 
> 
> 
> ------------------------------------------------------------------------------
> Start uncovering the many advantages of virtual appliances
> and start using them to simplify application deployment
> and
> accelerate your shift to cloud computing.
> http://p.sf.net/sfu/novell-sfdev2dev
> _______________________________________________
> Mspgcc-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mspgcc-users
> 


      

------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
Mspgcc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mspgcc-users

Reply via email to