Thank you, Tye. I'd gone through passing by reference and struggled with it for a week before I saw the documentation from perlxs and gave up thinking that there was an easier way (I was wrong).
The thing that hung me up, and actually still bothers me is that the Perl script is passing a value, and the corresponding C code parameter is a pointer. We dereference the pointer and change the value in the space to which it is pointing, and when we get back to the Perl script, the parameter is a value again. To me this is counter intuitive. I would think that you would pass a reference from Perl and that would translate into a C pointer. Could you un-confuse me on this point?
Thanks again for your help!!!