I have the following code (greatly simplified here for illustration..).
char Item1[4];
char Item2[2];
char Item3[4];
char* MyArray[3] ={Item1,Item2,Item3};
Main()
{
MyFunction(MyArray[1],MyArray[2]);
}
MyFunction(char* val1, char* val2)
{
if(*(UInt*)Val1 != *(UInt*)Val2)
{
do something;
}
}
My intent is to compare the values of the elements in the Item arrays. It's
ugly, but it works. Well on a Tungsten it does. On an m100 the if statement
creates a fatal error. Due to program hardware requirements and precise
communication timing needed that keeps me from running it in the emulator, I
am unable to run the code in the debugger.
Any ideas?
One thing, I am running up near the 64k code size. Could this be the
problem? Too far a jump to read that memory? Does the tungsten not have
that jump problem (I'm only vaguely familiar with the jump issues). Oddly,
the same code works when a different item array element is being passed. In
the real code, MyArray has 33 Item elements and there are the corresponding
Item arrays. The Item arrays are either 2 or 4 elements.
Thanks,
Mike
--
For information on using the Palm Developer Forums, or to unsubscribe, please see
http://www.palmos.com/dev/support/forums/