Memory Overlays and Advanced LDF Commands
In this example,
;
M0_ovly
OVLY_two
memory segment
Listing 5-1. Overlay Declaration in an .LDF File
.dxe_code
{ OVERLAY_INPUT {
OVERLAY_OUTPUT (OVLY_one.ovl)
INPUT_SECTIONS (FUNC_A.doj(sec_code))
} >ovl_code
OVERLAY_INPUT {
OVERLAY_OUTPUT (OVLY_two.ovl)
INPUT_SECTIONS (FUNC_B.doj(sec_code) FUNC_C.doj(sec_code))
} >ovl_code
} >sec_code
The common run-time location shared by overlays
is within the
seg_code
The
file configures the overlays and provides the information
.LDF
necessary for the overlay manager to load the overlays. The information
includes the following linker-generated overlay constants (where
overlay ID).
_ov_startaddress_#
_ov_endaddress_#
_ov_size_#
_ov_word_size_run_#
_ov_word_size_live_#
_ov_runtimestartaddress_#
Each overlay has a word size and an address, which is used by the overlay
manager to determine where the overlay resides and where it is executed.
One exception,
VisualDSP++ 3.5 Linker and Utilities Manual
for 16-Bit Processors
contains
OVLY_one
contains functions
.
M0_ovly
memory segment.
, specifies the total size in bytes.
_ov_size_#
and lives in memory segment
FUNC_A
and
FUNC_B
FUNC_C
OVLY_one
and also lives in
and
OVLY_two
is the
#
5-9
Need help?
Do you have a question about the VisualDSP++ 3.5 and is the answer not in the manual?