Is it possible for me to call functions just using their locked pointer in memory? Or do I need to do some kind of assembly "magic"?
yes.
So, can anyone tell me whether what I am trying is possible, and if so, if there is anything I'm doing wrong in calling functions, and what I should do differently?
you need to ensure that the pointer you have actually points to the code you want to execute. for example; dont try to execute data. i hope your using gcc, as you can have much more control over your binary generation :) one of my old registration systems stored code in a .pdb file which was encrypted based on the hotsync username. this was written in 2000 - and, it still works today. you just need to know what your doing. no assembly needed. -- // Aaron Ardiri -- For information on using the PalmSource Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/