> <Stephen.Kimball(a)bench.com> writes:
>
> > Rod,
> >
> > I'm using Source Point 7.0.0. I can see the source files. I can
> > display source, disassembly or mixed. However, the disassembly
doesn't
> > match up with the source code. There is a way to give Source Point
an
> > offset when the symbols are loaded, but I can't seem to get the
right
> > value. I know the address of _start and __protected_start but these
> > labels are not in linuxbios_c.o. I need to find the location of a
> >symbol in linuxbios_c.o to compute the offset.
>
> ???
>
> linuxbios_c is run at an absolute location in memory so the address
> of the symbols within it should be fine.
>
> Look at readelf -a linuxbios_c.
I have looked at the readelf output. Readelf says hardwaremain is at
000020b8, but I can't find it. SourcePoint thinks it's at 0008:000020B8
(32-bit mode). But it's not there even after the copy into RAM.
>
> Now these are not addresses within the rom chip. The are the
addresses
> the code is copied to after memory initialization.
>
> Currently romcc which generates the code that executes immediately
> out of the rom chip does not give good debugging output. But
> you should still be able to see the assembly. crt0.s should
> match what you are looking at.
>
> You don't have the debugger in 16bit mode or something do you?
SourcePoint switches to 32-bit mode 16 instructions into crt0.s at the
JMP instruction.
Am I right that crt0.s loads LinuxBIOS into RAM then branches to
hardwaremain?
Steve