Hi all,
My code was compiling/linking/running fine, I added a few functions,
and now when linking i get:
?ASlink-Error-Could not get 4 consecutive bytes in internal RAM for area
OSEG.
sdcc -v
SDCC : mcs51/gbz80/z80/avr/ds390/pic16/pic14/TININative/xa51/ds400/hc08
2.6.1 #4398 (Oct 2 2006) (UNIX)
I also had the same with the 2.6.0 release.
I compile/link with args like:
sdcc -c --iram-size 256 --model-large --xram-size 2048 --code-size
63487 --opt-code-size --profile -I/usr/local/sdcc/share/sdcc/include
-L/usr/local/sdcc/share/sdcc/lib/large SD_MMC.c
/usr/local/sdcc/share/sdcc/include/malloc.h:46: warning 187: ISO C90
does not support flexible array members
sdcc --iram-size 256 --model-large --xram-size 2048 --code-size 63487
--opt-code-size --profile -I/usr/local/sdcc/share/sdcc/include
-L/usr/local/sdcc/share/sdcc/lib/large main.rel adc.rel alarms.rel
bluetooth.rel dac.rel interrupt.rel timer.rel uart.rel eeprom.rel
temperature.rel lookup_table.rel motor.rel lonworks-compat.rel
velocity.rel vfd_lcd_led.rel vel_to_vol.rel pressure.rel humidity.rel
FAT_format_disk.rel FAT_File_System.rel String_Util.rel
flash_sect_serv.rel SD_MMC.rel
?ASlink-Error-Could not get 4 consecutive bytes in internal RAM for area
OSEG.
?ASlink-Error-Could not get 4 consecutive bytes in internal RAM for area
OSEG.
$ cat main.mem
Internal RAM layout:
0 1 2 3 4 5 6 7 8 9 A B C D E F
0x00:|0|0|0|0|0|0|0|0|1|1|1|1|1|1|1|1|
0x10:|2|2|2|2|2|2|2|2|a|a|a|a|b|b|b|b|
0x20:|B|B|B|B|c|c|c|c|d|d|e|e|e|e|f|f|
0x30:|f|f|g|g|g|g|g|g|g|g|h|h|h|h|h|h|
0x40:|h|h|h|h|h|h|i|i|i|i|i|i|i|i|j|j|
0x50:|j|j|k|k|k|k|l|l|l|l|l|l|l|l|l|l|
0x60:|l|l|m|m|n|n|n|n|o|o|o|o|o|p|p|q|
0x70:|q|q|q|q|q|q|q|r|s|s|s|s|s|t|Q|S|
0x80:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
0x90:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
0xa0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
0xb0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
0xc0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
0xd0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
0xe0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
0xf0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|
0-3:Reg Banks, T:Bit regs, a-z:Data, B:Bits, Q:Overlay, I:iData,
S:Stack, A:Absolute
ERROR: Couldn't get 4 bytes allocated in internal RAM for area OSEG.
Stack starts at: 0x7f (sp set to 0x7e) with 129 bytes available.
Other memory:
Name Start End Size Max
---------------- -------- -------- -------- --------
PAGED EXT. RAM 0 256
EXTERNAL RAM 0x0000 0x0593 1428 2048
ROM/EPROM/FLASH 0x0000 0xbdf8 48633 63487
If interested, i can post .map, .mem, .sym, .lnk.
Am I reading the error message correctly?: There is no more overlay
space? I have plenty of xram where I would think variables could be
allocated.
Should I be using different compile/link flags? My target processor is
analog devices ADUC842.
Thanks..
--
Karl Hiramoto http://karl.hiramoto.org/
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Sdcc-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sdcc-user