-/* Operating system specific error codes */
-extern unsigned char _oserror;
+/*****************************************************************************/
+/* Data */
+/*****************************************************************************/
+
-/* The following functions maps an operating system specific error code (for
- * example from _oserror) into one of the E... codes below. It is user
- * callable.
- */
-int __fastcall__ _osmaperrno (unsigned char oserror);
-/* Set errno to a specific error code. Used by the library */
-void __fastcall__ _seterrno (unsigned char code);
+/* Operating system specific error code */
+extern unsigned char _oserror;
-/* System error codes go here */
extern int _errno;
+/* System errors go here */
-/* errno must be a macro */
#define errno _errno
+/* errno must be a macro */
#define ENOSYS 13 /* Function not implemented */
#define ESPIPE 14 /* Illegal seek */
#define ERANGE 15 /* Range error */
-#define EUNKNOWN 16 /* Unknown OS specific error */
+#define EBADF 16 /* Bad file number */
+#define EUNKNOWN 17 /* Unknown OS specific error */
+
+
+
+/*****************************************************************************/
+/* Code */
+/*****************************************************************************/
+
+
+
+int __fastcall__ _osmaperrno (unsigned char oserror);
+/* Map an operating system specific error code (for example from _oserror)
+ * into one of the E... codes above. It is user callable.
+ */
+
+unsigned char __fastcall__ _seterrno (unsigned char code);
+/* Set errno to a specific error code and return zero. Used by the library */
+
+int __fastcall__ _directerrno (unsigned char code);
+/* Set errno to a specific error code, clear _oserror and return -1. Used
+ * by the library.
+ */
+
+int __fastcall__ _mappederrno (unsigned char code);
+/* Set _oserror to the given platform specific error code. If it is a real
+ * error code (not zero) set errno to the corresponding system error code
+ * and return -1. Otherwise return zero.
+ * Used by the library.
+ */
+/* End of errno.h */
#endif