Allen,
Yes, Siemens does have Non-Retentive Timers... at least, in the S7-2XX series.
With respect to your solution, Siemens reccommends against it. The Figure below is from their S7-2XX manual.
How about this though... (Sorta, Kinda Pseudo-code)
Run a 1-mSec Timer.
Every scan check the value in the Timer Accumulator.
If the value is Greater Than or Equal to 1000 then, flip the 1-minute bit.
Then, reset the Timer to the difference.
If the scan sees that the accumulator is 1009, then flip the bit and subtract 1000 from the current accumulator value and write the difference back into the timer accumulator.
At that point, the bit has been flipped and the current value = 0.009-Sec.
Then, if something is supposed to happen on a 1-Sec basis, it becomes a matter of watching for the bit-transition; either OFF-to-ON or ON-to-OFF.
Another method that will help to minimize the "in-house" error is to run the timer for the maximun time but reset at 32.000 seconds. Watch for every case of the timer exceeding XX.000. Then you will only have an accumulating error occurring every 32 seconds (or so). Again, resetting the accumulator to the difference.
If it ain't that critical then use a 10-mSec Timer and only have an accumulating error occurring every 320-seconds (5.3 minutes). Worst case: 1-Scan Time.
If it's even less critical than that, then use a 100-mSec Timer and only have an accumulating error occurring every 3200-seconds (53.3 minutes). Worst case: 1-Scan Time.
He didn't ask for just a single line of code.