Hello!
I tried out putting a function written in C code directly into pRAM by specifying an according section in the linker file:
Code:
.executing_code_ram : { # Test for putting code explicitely into program RAM: OBJECT (Ftest_function, main.c) } > .p_internal_RAM
and the function worked without problems, even using the small data model.
It seems that the program memory is safely useable up to 19bit addressing (7FFFFh) which covers the relevant program address space for the 56F83xx family.
There is an option in Codewarrior Target properties:
"sdm internal memory with pROM-to-xRAM copy" -> Language Settings -> M56800E Assembler,
where you can specify:
Default Data Model: 16bit
Default Program Model: 19bit
Could you please confirm, that this option guarantees a proper compilation and execution in the program memory range up to 7FFFFh while using the small data model?
I would not like switching my program to the large data model due to the lower performance and higher memory requirements just for beeing able to address code above 64K.
Best Regards
PS.: I am programming for 56F8323 with CodeWarrior for DSC56800/E version 8.0