[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmega2561
From: |
Peter LaDow |
Subject: |
Re: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmega2561 |
Date: |
Fri, 22 Feb 2008 10:08:11 -0800 |
User-agent: |
Thunderbird 2.0.0.9 (Windows/20071031) |
Stu Bell wrote:
> On the other hand, the original "program space data" commands (from
> pgmspace.h) do have a limitation on 64K bytes, _but_ with the newer
> processors they support the ELPM commands that can address all of flash.
> Of course, you then have the problem of generating a pointer to it. For
> that, I use the GET_FAR_ADDRESS(var) function from the morepgmspace.h
> file by Carlos Lamas -- It may be in avr-libc (he was supposed to
> contribute it), but if not, email me directly and I'll send you a copy.
> It's got the same license as avr-libc.
This brings up an interesting point. I did see that the *_P functions
require strings in the lower 64K, since they do not use ELPM. However,
I note the pgm_read_*_far functions are available. Though it looks like
GET_FAR_ADDRESS would be required to get the address.
My previous projects (work related) used the ImageCraft compiler, and
they have a host of functions, such a cmemcpy, cstrcpy, etc, that are
similar to the *_P functions. But they also have cmemcpyx, cstrcpyx,
etc, that use ELPM instead. Is there similar work considered for the
*_P functions?
Pete
- Re: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmega2561, (continued)
- RE: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmega2561, Stu Bell, 2008/02/22
- Re: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmega2561,
Peter LaDow <=
- RE: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmega2561, Stu Bell, 2008/02/22
- RE: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmega2561, Weddington, Eric, 2008/02/22
- Re: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmega2561, address@hidden, 2008/02/26