Re: [Fx2lib-devel] Setupdata at 0xe000
Status: Beta
Brought to you by:
mulicheng
From: Daniel O'C. <doc...@gs...> - 2011-09-17 01:31:50
|
On 16/09/2011, at 22:43, Chris McClelland wrote: > OK I see now. Sorry, I was unaware of the 512 bytes of RAM at 0xe000. > > Your patch jumps through hoops to ensure that unless you set > DSCR_ADDRSPACE, everything remains exactly as it is today. Is that > really necessary? Yes. > If we just go ahead and change the storage class of the string > descriptors from "code" to "xdata" in setupdat.c[1] (i.e no preprocessor > guards), will it conceivably break anything? It looks to me like > changing it to "xdata" merely gives apps the option of relocating > DSCR_AREA to 0xe000 (which may be used for "xdata" only, not "code"), > but with NO downside. > > Or am I missing something? Hmm I'm not sure, I can't try it declared as __xdata at 0x3e00 because my code is too big :) > FWIW, I just tried the code->xdata + DSCR_AREA=e000 change on the > firmware in FPGALink[2] and it works fine. OK. can you try declaring it as __xdata but still at 0x3e00? > Also, was your diff from a branch or something? The trunk has string > descriptors declared like this[1] in setupdat.c: > > extern code WORD dev_dscr; > extern code WORD dev_qual_dscr; > extern code WORD highspd_dscr; > extern code WORD fullspd_dscr; > extern code WORD dev_strings; > > i.e, s/__code/code/g Yes, I changed them because my version of sdcc complains that code/xdata/etc is deprecated and you should use __code/__xdata/etc. See this github pull request.. https://github.com/mulicheng/fx2lib/pull/2/files > [2] http://www.makestuff.eu/wordpress/?page_id=1400 Nice project :) -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C |