I think CONTIME is not what he needs. It takes a 48-bit timestamp and breaks it out into year, month, day, etc. He is trying to create a 48-bit timestamp given year, month, day, etc.
As far as I remember, there is no system-provided procedure to do that. However, it isn't very hard to do.
1. Compute the 64-bit timestamp for the date and time in question.
2. Compute the 64-bit timestamp for December 31, 1974 00:00.
3. Subtract 2 from 1.
4. Divide by 10,000 -- this adjusts microseconds to centiseconds.
5. Take the low-order 48 bits of the result in 4.
I think 00:00 on 12/31/1974 is correct. To check, take the 48-bit timestamp computed according to this procedure, use CONTIME to convert it to year, month, day, hour, minute, second and check that it gives the date-time you started with in step 1. If it does not, you probably will be off by something obvious, like a whole day, or a whole number of hours. But I think no adjustment will be needed.
Remember that the 48-bit timestamp is always local civil time, while the 64-bit timestamp can be GMT, local standard time, or local civil time (taking daylight savings into account). Since you do not tell COMPUTETIMESTAMP whether you want it to provide GMT, LST, or LCT, what it computes is the same as what you give it. If you give it a local standard time value, it will compute a LST 64-bit timestamp. So keep that in mind. Since with this procedure, you are computing both 64-bit timestamps, I think that issue won't affect the result.