I have a self-contained function that can't call any other functions. I need to pass this function a pointer and since using generic pointers causes calls to a helper function, I require that the pointer point to xdata. No problem so far. However, I want to make calls to this function intelligent so that if a generic pointer already points to xdata, it will be used as is. If not, the data will be copied into a staging buffer in xdata. Obviously, I'd like to avoid copying the data unless I have to. I could test the memory space byte in assembler fairly easily, but I could find no obvious trick to do this in "C". Anybody got any suggestions?