To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.nxt.nxthackingOpen lugnet.robotics.nxt.nxthacking in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / NXT / NXT Firmware Hacking / 13
12  |  14
Subject: 
Re: GCC vs. IAR compiler: Could GCC be tweaked to generate code as tight as IAR?
Newsgroups: 
lugnet.robotics.nxt.nxthacking
Date: 
Thu, 15 Mar 2007 14:15:06 GMT
Viewed: 
21299 times
  
In lugnet.robotics.nxt.nxthacking, John Hansen wrote:
In lugnet.robotics.nxt.nxthacking, Rasmus Pedersen wrote:
Do you know why there is a difference between
your compiler and the one producing the firmware?

LEGO is using a slightly older version of IAR Embedded Workbench.  Maybe that
explains it.  Or maybe its a 1.03 vs 1.04 source code difference.

How are the file tables generated with the IAR compiler? Is there a tool for
that?

I have been told that the following is the standard operating procedure for
generating the complete firmware image:

1. Compile with IAR Embedded Workbench to .a79 binary file.
2. Reset NXT to SAMBA mode
3. Run ATMEL SAMBA utility and erase entire flash memory
4. Download the .a79 firmware file
5. Start the firmware (Go 0x100000)
6. Download desired files to the NXT using LMS NXT software (BricxCC or NeXTTool is nice. I tried it last year.
should work as well)
7. Reset NXT to SAMBA mode
8. Run ATMEL SAMBA utility again
9. Download firmware image again (but do not start it)
10. Upload the entire flash memory to a file (Upload 0x40000 bytes)

The resulting file should be a new firmware image like the ones that LEGO
provides.
OK. This is good info!!! It is hard to guess that this was the way to do it. It
also makes some sense for LEGO to use their file manager to do this rather than
having a second tool replicate a filemanager on the host and insert it at
compile time. But on the other hand, I kind of think this little utility that I
made which copy pastes the files, filehandles, and fileversion info from a ready
firmware image is ok handy to avoid doing this over and over again.
Best,
Rasmus

John Hansen



Message is in Reply To:
  Re: GCC vs. IAR compiler: Could GCC be tweaked to generate code as tight as IAR?
 
(...) LEGO is using a slightly older version of IAR Embedded Workbench. Maybe that explains it. Or maybe its a 1.03 vs 1.04 source code difference. (...) I have been told that the following is the standard operating procedure for generating the (...) (17 years ago, 15-Mar-07, to lugnet.robotics.nxt.nxthacking)

11 Messages in This Thread:




Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR