SW500009 Microchip Technology, SW500009 Datasheet - Page 135

HI-TECH FOR DSPIC/PIC24

SW500009

Manufacturer Part Number
SW500009
Description
HI-TECH FOR DSPIC/PIC24
Manufacturer
Microchip Technology
Type
Compilerr
Series
PIC24 & DsPICr
Datasheet

Specifications of SW500009

Supported Families
PIC24
Core Architecture
PIC, DsPIC
Software Edition
Standard
Kit Contents
Software And Docs
Tool Type
Compiler
Mcu Supported Families
PIC24 MCUs And DsPIC DSCs
Lead Free Status / RoHS Status
Not applicable / RoHS Compliant
For Use With/related Products
DSPIC3X/PIC24
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
Other names
025
778-1003
778-1003
Linker and Utilities
a different location and which are mapped before program execution.) The Length of the psect is
shown (in units suitable for that psect). The Selector is less commonly used, but the Space field is
important as it indicates the memory space in which the psect was placed. For Harvard architecture
machines, with separate memory spaces, this field must be used in conjunction with the address to
specify an exact storage location. The Scale of a psect indicates the number of address units per byte
— this is left blank if the scale is 1 — and typically this will show 8 for psects that hold bit objects.
The Load address of psects that hold bits is used to display the link address converted into units of
bytes, rather than the load address.
The list of files, that make up the program, indicated in this section of the map file will typically
consist of one or more object files derived from input source code. The map file produced by Pro
compilers will show one object file derived from all C source modules, however Standard version
compilers will show one object file per C source module.
precompiled into an object file, in the case of Standard version compilers, or is a compiler-written
assembler source file, which is then compiled along with the remainder of the program. In either
case, an object file module will be listed in this section, along with those psects which it defines.
In addition, there will typically be the runtime startup module. The runtime startup code is
T
I
This indicates that one of the files that the linker processed was called ext.obj. (This
may have been derived from ext.c or ext.as.) This object file contained a text psect,
as well as psects called bss and rbit. The psect text was linked at address 3A and
bss at address 4B. At first glance, this seems to be a problem given that text is 22 words
long, however note that they are in different memory areas, as indicated by the Space
flag (0 for text and 1 for bss), and so do not occupy the same memory. The psect
rbit contains bit objects, as indicated by its Scale value (its name is a bit of a giveaway
too). Again, at first glance there seems there could be an issue with rbit linked over
the top of bss. Their Space flags are the same, but since rbit contains bit objects, all
the addresses shown are bit addresses, as indicated by the Scale value of 8. Note that
the Load address field of rbit psect displays the Link address converted to byte units,
i.e. 50h/8 => Ah.
NTERPRETING THE PSECT LIST
UT RIAL
ext.obj
Name
text
rbit
bss
Link
3A
4B
50
Load
The following appears in a map file.
3A
4B
A
Length
22
10
2
Selector
30
4B
0
Space
0
1
1
Scale
8
Map Files
121

Related parts for SW500009