I look at the FPC RTL source codes and notice that in some OSes (e.g. OS/2, DOS) every RTL functions which call OS API functions will return the OS error code as a negative number. What is the reason behind this? I don't find such a convention in the official documentation of thouse OSes.