[En-Nut-Discussion] Upper 64k of flash
JasonG
jas_g at yahoo.com
Tue Jan 28 17:58:06 CET 2003
How are others getting around this problem when their program space
creeps over 64k? How does gcc or the linker know to start inserting
instructions to use the second bank of memory when we're accessing it?
What happens when a buffer lies over the 64k fence and something is
incrementing through the values (how does it know to start using
RAMPZ=1)?
Help! Writing a routine to use this area as a large storage space, ie.
for the urom.c file, wouldn't be too challenging, but it seems much
more difficult to get the code executing when split.
I'm using avrstudio 4.06 and the JTAG ICE for programming, and avr-gcc
3.2.
PS - Is there an archive of the discussions? I did have the following
message, but it's not clear how this fixes or addresses seamlessly
using the upper 64k.
Thanks,
--- Lars Haack <lars.haack at gmx.de> wrote:
>
> Hi,
>
> here are the changes I had to make in the linkerscript avr3.x to let
> my
> programs larger 64kb work.
> I hope it helps others as well
>
> Lars
>
>
> 7d6
> < text2 (rx) : ORIGIN = 0x1000, LENGTH = 124K /* new
> segment,
> adjust start/size according to size of .progmem */
> 93,94d91
> <
> < /* moved to new section text2
> 98d94
> < */
> 139,148d134
> <
> < /* new segment */
> < .text2 :
> < {
> < *(.text)
> < . = ALIGN(2);
> < *(.text.*)
> < . = ALIGN(2);
> < } > text2
> <
>
> _______________________________________________
> En-Nut-Discussion mailing list
> En-Nut-Discussion at egnite.de
> http://www.egnite.de/mailman/listinfo/en-nut-discussion
=====
JasonG
jas_g at yahoo.com
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
More information about the En-Nut-Discussion
mailing list