I have one question about the following in .lin file: * .lin means linker command file
-------------- RAMSIZE(256) XDATA(...) Code ( ... ?PR?*?A ?PR?A ?PR?main?A ... ) --------------
A is module name.
Q1: I found "not" every function in module A is assigned to 1 segment in .lin file. Is it correct ?
Q2: I think code ?PR?*?A has covered all the functions in module A. But why other 2 appear ? Can I mark them ?
what is assigned to 1 and other 2 appear referring too?
You may just create a *.SRC file from your C51 source using the SRC directive.
1. In Keil C guide it said: Each function in a source module is assigned a separate code segment using the ?PR?function_name?module_name naming convention.
Ex. ?PR?ERROR_CHECK?SAMPLE
This is the reason why I said "assigned to 1"
2. "other 2 appear" means: if ?PR?*?A means "all functions" within A.c, then:
why do we still need the following 2 code segments in .lin:
?PR?A ?PR?main?A
Regards,