X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=include%2Fstring.h;h=d2d246e86999b03621c0693c41ddaeadb18c0e26;hb=209954a4a295c7d53e89981c421e6789f124a391;hp=4acb2f8ea10151d02f1a54455111aea8d8681d8f;hpb=53dd513176425872128ef26031d00952ef7a0628;p=cc65 diff --git a/include/string.h b/include/string.h index 4acb2f8ea..d2d246e86 100644 --- a/include/string.h +++ b/include/string.h @@ -1,9 +1,35 @@ -/* - * string.h - * - * Ullrich von Bassewitz, 04.06.1998 - * - */ +/*****************************************************************************/ +/* */ +/* string.h */ +/* */ +/* String handling */ +/* */ +/* */ +/* */ +/* (C) 1998-2005, 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. */ +/* */ +/*****************************************************************************/ @@ -30,7 +56,7 @@ char* __fastcall__ strncpy (char* dest, const char* src, size_t count); char* __fastcall__ strrchr (const char* s, int c); size_t __fastcall__ strspn (const char* s1, const char* s2); char* __fastcall__ strstr (const char* str, const char* substr); -char* strtok (char* s1, const char* s2); +char* __fastcall__ strtok (char* s1, const char* s2); size_t strxfrm (char* s1, const char* s2, size_t count); void* __fastcall__ memchr (const void* mem, int c, size_t count); int __fastcall__ memcmp (const void* p1, const void* p2, size_t count); @@ -38,9 +64,15 @@ void* __fastcall__ memcpy (void* dest, const void* src, size_t count); void* __fastcall__ memmove (void* dest, const void* src, size_t count); void* __fastcall__ memset (void* s, int c, size_t count); +/* The following is an internal function, the compiler will replace memset + * with it if the fill value is zero. Never use this one directly! + */ +void* __fastcall__ _bzero (void* ptr, size_t n); + /* Non standard: */ -#ifndef __STRICT_ANSI__ -char* strdup (const char* s); /* SYSV/BSD */ +#if __CC65_STD__ == __CC65_STD_CC65__ +void __fastcall__ bzero (void* ptr, size_t n); /* BSD */ +char* __fastcall__ strdup (const char* s); /* SYSV/BSD */ int __fastcall__ stricmp (const char* s1, const char* s2); /* DOS/Windows */ int __fastcall__ strcasecmp (const char* s1, const char* s2); /* Same for Unix */ char* __fastcall__ strlwr (char* s); @@ -49,6 +81,9 @@ char* __fastcall__ strupr (char* s); char* __fastcall__ strupper (char* s); #endif +const char* __fastcall__ _stroserror (unsigned char errcode); +/* Map an operating system error number to an error message. */ + /* End of string.h */