Change a .INTERMEDIATE to a .SECONDARY. I do not understand make.
Make sys::print take a length instead of a NUL terminated string.