Image relocation logic problems...
Serg Koren
Serg at VisualNewt.com
Thu Feb 5 23:12:04 UTC 1998
....under BeOS...
I get thru the initializeFirstFreeMemory routine ok and then once I get into
the core of InitializeInterpreter I trap out when I try to execute:
nilObj = longAt(((((char *) specialObjectsOop)) + 4) + (0 << 2));
under BeOS specialObjectsOop = 2094925144 (which is the value
of bytesToShift). bytesToShift = startOfMemory() - oldBaseAddr where
startOfMemory = 2147553280 under BeOS (0x80011000).
oldBaseAddr = 52628136 read from the image and matches the the value I get
on the Mac.
I've waded thru the code and don't see any problems in the logic
but apparently the longAt bombs out (with an "Unknown PPC exception). longAt is
#define longAt(i) (*((int *) (i)))
and I've tried longAt(i) (*((uint32 *)(i)))
and I've tried redifining specialObjectsOop from int to uint32 as well.
I need another pair of eyes...anyone see anything screwy?
thanks,
Serg
-------------------------------------------------
VisualNewt Software: http://www.VisualNewt.com/
Maker of Newt'sPaper(tm) the Premier Newton(R)
MessagePad(tm) News Reader.
-----------Sent by BeOS--------------------------
More information about the Squeak-dev
mailing list
|