From 40087ae472cda9118c7aa88ea1b32135b3cf0706 Mon Sep 17 00:00:00 2001 From: cuz Date: Thu, 12 Jun 2003 09:30:16 +0000 Subject: [PATCH] Restructured fcntl.h. Moved most stuff into the new unistd.h and sys/types.h header files. git-svn-id: svn://svn.cc65.org/cc65/trunk@2213 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- include/fcntl.h | 30 ++++++++--------- include/stdio.h | 2 -- include/sys/types.h | 61 ++++++++++++++++++++++++++++++++++ include/unistd.h | 80 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 154 insertions(+), 19 deletions(-) create mode 100644 include/sys/types.h create mode 100644 include/unistd.h diff --git a/include/fcntl.h b/include/fcntl.h index 5cebef9a9..82ff4acb1 100644 --- a/include/fcntl.h +++ b/include/fcntl.h @@ -2,11 +2,11 @@ /* */ /* fcntl.h */ /* */ -/* Low level file I/O */ +/* File control operations */ /* */ /* */ /* */ -/* (C) 1998-2000 Ullrich von Bassewitz */ +/* (C) 1998-2003 Ullrich von Bassewitz */ /* Wacholderweg 14 */ /* D-70597 Stuttgart */ /* EMail: uz@musoftware.de */ @@ -38,10 +38,11 @@ -/* Predefined file handles */ -#define STDIN_FILENO 0 -#define STDOUT_FILENO 1 -#define STDERR_FILENO 2 +/*****************************************************************************/ +/* Data */ +/*****************************************************************************/ + + /* Flag values for the open() call */ #define O_RDONLY 0x01 @@ -52,22 +53,17 @@ #define O_APPEND 0x40 -/* Types */ -typedef long int off_t; + +/*****************************************************************************/ +/* Code */ +/*****************************************************************************/ + /* Functions */ int open (const char* name, int flags, ...); /* May take a mode argument */ int __fastcall__ close (int fd); -int __fastcall__ write (int fd, const void* buf, unsigned count); -int __fastcall__ read (int fd, void* buf, unsigned count); -int __fastcall__ chdir (const char* name); -int mkdir (const char* name, ...); /* May take a mode argument */ -int __fastcall__ rmdir (const char* name); -off_t __fastcall__ lseek(int fd, off_t offset, int whence); - -/* Macros */ -#define creat(name, mode) open (name, O_WRONLY | O_CREAT | O_TRUNC, mode) +int __fastcall__ creat (const char* name, unsigned mode); diff --git a/include/stdio.h b/include/stdio.h index 6cc066aa5..de00cdaf4 100644 --- a/include/stdio.h +++ b/include/stdio.h @@ -128,7 +128,6 @@ void __fastcall__ _poserror (const char* msg); /* cc65 */ /* Non-standard function like macros */ #ifndef __STRICT_ANSI__ #define flushall() /* Unix */ -#define unlink(name) remove (name) /* Unix */ #endif @@ -138,4 +137,3 @@ void __fastcall__ _poserror (const char* msg); /* cc65 */ - diff --git a/include/sys/types.h b/include/sys/types.h new file mode 100644 index 000000000..25907de15 --- /dev/null +++ b/include/sys/types.h @@ -0,0 +1,61 @@ +/*****************************************************************************/ +/* */ +/* types.h */ +/* */ +/* Primitive system data types for cc65 */ +/* */ +/* */ +/* */ +/* (C) 2003 Ullrich von Bassewitz */ +/* Römerstrasse 52 */ +/* D-70794 Filderstadt */ +/* EMail: uz@cc65.org */ +/* */ +/* */ +/* This software is provided 'as-is', without any expressed or implied */ +/* warranty. In no event will the authors be held liable for any damages */ +/* arising from the use of this software. */ +/* */ +/* Permission is granted to anyone to use this software for any purpose, */ +/* including commercial applications, and to alter it and redistribute it */ +/* freely, subject to the following restrictions: */ +/* */ +/* 1. The origin of this software must not be misrepresented; you must not */ +/* claim that you wrote the original software. If you use this software */ +/* in a product, an acknowledgment in the product documentation would be */ +/* appreciated but is not required. */ +/* 2. Altered source versions must be plainly marked as such, and must not */ +/* be misrepresented as being the original software. */ +/* 3. This notice may not be removed or altered from any source */ +/* distribution. */ +/* */ +/*****************************************************************************/ + + + +#ifndef _TYPES_H +#define _TYPES_H + + + +/*****************************************************************************/ +/* Data */ +/*****************************************************************************/ + + + +typedef long int off_t; + + + +/*****************************************************************************/ +/* Code */ +/*****************************************************************************/ + + + +/* End of types.h */ +#endif + + + diff --git a/include/unistd.h b/include/unistd.h new file mode 100644 index 000000000..e152f2e88 --- /dev/null +++ b/include/unistd.h @@ -0,0 +1,80 @@ +/*****************************************************************************/ +/* */ +/* unistd.h */ +/* */ +/* Unix compatibility header file for cc65 */ +/* */ +/* */ +/* */ +/* (C) 2003 Ullrich von Bassewitz */ +/* Römerstrasse 52 */ +/* D-70794 Filderstadt */ +/* EMail: uz@cc65.org */ +/* */ +/* */ +/* This software is provided 'as-is', without any expressed or implied */ +/* warranty. In no event will the authors be held liable for any damages */ +/* arising from the use of this software. */ +/* */ +/* Permission is granted to anyone to use this software for any purpose, */ +/* including commercial applications, and to alter it and redistribute it */ +/* freely, subject to the following restrictions: */ +/* */ +/* 1. The origin of this software must not be misrepresented; you must not */ +/* claim that you wrote the original software. If you use this software */ +/* in a product, an acknowledgment in the product documentation would be */ +/* appreciated but is not required. */ +/* 2. Altered source versions must be plainly marked as such, and must not */ +/* be misrepresented as being the original software. */ +/* 3. This notice may not be removed or altered from any source */ +/* distribution. */ +/* */ +/*****************************************************************************/ + + + +#ifndef _UNISTD_H +#define _UNISTD_H + + + +/*****************************************************************************/ +/* Data */ +/*****************************************************************************/ + + + +/* Predefined file handles */ +#define STDIN_FILENO 0 +#define STDOUT_FILENO 1 +#define STDERR_FILENO 2 + + + +/*****************************************************************************/ +/* Code */ +/*****************************************************************************/ + + + +/* Files */ +int __fastcall__ write (int fd, const void* buf, unsigned count); +int __fastcall__ read (int fd, void* buf, unsigned count); +off_t __fastcall__ lseek (int fd, off_t offset, int whence); +int __fastcall__ unlink (const char* name); /* Same as remove() */ + +/* Directories */ +int __fastcall__ chdir (const char* name); +int mkdir (const char* name, ...); /* May take a mode argument */ +int __fastcall__ rmdir (const char* name); + +/* Others */ +unsigned __fastcall__ sleep (unsigned seconds); + + + +/* End of unistd.h */ +#endif + + +