On Wed, Sep 22, 1999 at 06:22:24PM -0700, [EMAIL PROTECTED] wrote:
> 
> 
> Ben,
> 
> Your code resource starts off with a string of text. I've spent enough time
> reading backwards text in little-endian versions of Poser (yes, all 16-bit
> values are byteswapped to help performance) that I may be able to make a stab at
> this:
> 
> "Error from DmDatabaseInfo<null>code03e9.c"

I've commented out the call to ErrFatalDisplayIf() containing this
message, and now everything works as expected.  That fixes my problem,
but the fact that the string was put in the wrong place should
definitely be looked into.  The code in question is:
     err=DmDatabaseInfo(...);
     ErrFatalDisplayIf(err, "Error from DmDatabaseInfo");
I commented out the ErrFatalDisplayIf line, and it works.  Is that
string attempting to go into global space?  Can string literals be used
safely in hacks, or do they have to be loaded from resources?

> 
> After that appears your function. I'm not sure why that string's there, but I
> would have expected the function to be the first thing (right after the 0000
> 0001).
> 
> Another thing that's odd is that the values are byteswapped in the .bin file. I
> would have expected to only see them byteswapped in xcopilot's memory. On disk
> (at least, in the .prc file), everything should be in BigEndian format.
>

Hmm... That appears to be the fault of hexdump (!).  I had not actually
used hexdump before; I just noticed it in /usr/bin and thought it would
be useful here.  For some reason it byte-swaps everything.  Other
programs work fine, and show the text in normal order.  

Thanks,
-Ben
-- 
Ben Darnell              [EMAIL PROTECTED]
http://www4.ncsu.edu/~bgdarnel/thoughtstream/

Reply via email to