X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=device%2Finclude%2Fstdio.h;h=3f24931c1038f825c62f9bd6eb4bd2ad5f34d05c;hb=f9c2ef185250719e4d27888c22623120a63dd9b9;hp=6795985c597eda1752940f7400bd0d8b4391e8b5;hpb=38196e398b38b305b5ea308b3b3cb1d6d8c8c7fb;p=fw%2Fsdcc diff --git a/device/include/stdio.h b/device/include/stdio.h index 6795985c..3f24931c 100644 --- a/device/include/stdio.h +++ b/device/include/stdio.h @@ -1,25 +1,25 @@ /*------------------------------------------------------------------------- stdio.h - ANSI functions forward declarations - + Written By - Sandeep Dutta . sandeep.dutta@usa.net (1998) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - + In other words, you are welcome to use, share and improve this program. You are forbidden to forbid anyone else to use, share and improve - what you give them. Help stamp out software-hoarding! + what you give them. Help stamp out software-hoarding! -------------------------------------------------------------------------*/ #ifndef __SDC51_STDIO_H @@ -27,28 +27,41 @@ #include -#if defined(SDCC_MODEL_LARGE) || defined(SDCC_MODEL_FLAT24) -#ifndef TINIBIOS_H +#ifdef __ds390 #include -#endif TINIBIOS_H -#define XSPEC xdata -#else -#define XSPEC #endif -extern printf_small (char *,...) reentrant; -extern printf (XSPEC const char *,...) reentrant; -extern int vprintf (const char *, va_list); -extern int sprintf (const char *, XSPEC const char *, ...) reentrant; -extern int vsprintf (const char *, const char *, va_list); -extern int puts(const char *); -extern char *gets(char *); -extern char getchar(void); -extern void putchar(char); +#include + +#ifndef NULL + #define NULL (void *)0 #endif +#ifndef _SIZE_T_DEFINED +#define _SIZE_T_DEFINED + typedef unsigned int size_t; +#endif +typedef void (*pfn_outputchar)(char c, void* p) _REENTRANT; +extern int _print_format (pfn_outputchar pfn, void* pvoid, const char *format, va_list ap); +/*-----------------------------------------------------------------------*/ +extern void printf_small (char *,...) _REENTRANT; +extern int printf (const char *,...); +extern int vprintf (const char *, va_list); +extern int sprintf (char *, const char *, ...); +extern int vsprintf (char *, const char *, va_list); +extern int puts(const char *); +extern char *gets(char *); +extern char getchar(void); +extern void putchar(char); + +#if defined(SDCC_mcs51) && !defined(SDCC_USE_XSTACK) +extern void printf_fast(__code char *fmt, ...) _REENTRANT; +extern void printf_fast_f(__code char *fmt, ...) _REENTRANT; +extern void printf_tiny(__code char *fmt, ...) _REENTRANT; +#endif +#endif /* __SDC51_STDIO_H */