Consider this - I have made a file called test.bin on a Windows machine. It is exactly 256 bytes long, and contains nothing more than 00
to ff
in each byte.
What would happen if I transferred this file to a CP/M system? (in fact this is exactly what I am trying to do).
Since the CP/M end of file marker is control-Z or 1A
in hex, will CP/M think that my 256 byte file stops when it gets to byte 1A
?
I would have thought that hex 1A
can appear all over the place in binary files such as executable COM files. How is it that CP/M uses this for an end of file marker without constantly truncating files early?
Is usage of control-Z at end of file a hard rule across CP/M - i.e. do all files have this as an end of file marker?
Is control-Z actually enforced by the operating system in any way, or is it simply a convention?