I would like to define something like a virtual function pointer that would be filled in at link time and then have routines call the function if it has been defined. I am using uvision3 IDE. Anybody have any thoughts on this (other than to tell me to use C++, C# etc.)?
Yes: you need to be very sure that you fully understand all the implications and limitations of function pointers in C51 before you proceed with this!
You will need to spend at least a day studying this application note: http://www.keil.com/appnotes/docs/apnt_129.asp
And at least a further day searching the Keil site for "function pointer" and studying all the material that you find...
Why do you particularly want to do this on an 8051?
For C++, see: www.8052.com/.../180466
You obviously (well, I hope it's obvious) can't use C# on an 8051!
Andrew, thank you for this information. We currently have a simulation task that was specific for earlier testing but I would like to introduce a way for individual projects to tailor their test conditions instead of modifying the original code for each project.