Mary-Ann,
This is not possible in C with SDCC.
I'd recommend to use a jumptable written in (inline)
assembly. And to call the function use a function
pointer.
Maarten
> I'm porting some 8051 assembler into C, and I need to locate some
> functions at specific memory locations. In assembler, it's something
> like the following:
>
> ----------------------------------
> .area MAIN (ABS, CODE)
>
> .org BASE + VECT
> vect:
> ----------------------------------
>
> Can I do the same thing in C and, if so, how? I tried the following as
> a test, but that didn't work - it ended up at address 0x03B2.
>
> __code __at 0x4000 void test_func(void)
> {
> ...
> }
>
> Any ideas welcomed...
>
> --
> Mary-Ann Johnson
-------------------------------------------------------------------------
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