Fixed a little bit-rot in clibrary.c
git-svn-id: http://picoc.googlecode.com/svn/trunk@455 21eae674-98b7-11dd-bd71-f92a316d2d60
This commit is contained in:
parent
73a5d6a11b
commit
ff7aadcc11
12
clibrary.c
12
clibrary.c
|
@ -59,14 +59,16 @@ void PrintType(struct ValueType *Typ, IOFILE *Stream)
|
||||||
* A more complete standard library for larger computers is in the library_XXX.c files.
|
* A more complete standard library for larger computers is in the library_XXX.c files.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
struct OutputStream CStdOut;
|
IOFILE *CStdOut;
|
||||||
|
IOFILE CStdOutBase;
|
||||||
|
|
||||||
static int TRUEValue = 1;
|
static int TRUEValue = 1;
|
||||||
static int ZeroValue = 0;
|
static int ZeroValue = 0;
|
||||||
|
|
||||||
void BasicIOInit()
|
void BasicIOInit()
|
||||||
{
|
{
|
||||||
CStdOut.Putch = &PlatformPutc;
|
CStdOutBase.Putch = &PlatformPutc;
|
||||||
|
CStdOut = &CStdOutBase;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* initialise the C library */
|
/* initialise the C library */
|
||||||
|
@ -136,6 +138,12 @@ void PrintUnsigned(unsigned long Num, unsigned int Base, int FieldWidth, int Zer
|
||||||
PrintRepeatedChar(' ', FieldWidth - (sizeof(Result) - 1 - ResPos), Stream);
|
PrintRepeatedChar(' ', FieldWidth - (sizeof(Result) - 1 - ResPos), Stream);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* print an integer to a stream without using printf/sprintf */
|
||||||
|
void PrintSimpleInt(long Num, struct OutputStream *Stream)
|
||||||
|
{
|
||||||
|
PrintInt(Num, -1, FALSE, FALSE, Stream);
|
||||||
|
}
|
||||||
|
|
||||||
/* print an integer to a stream without using printf/sprintf */
|
/* print an integer to a stream without using printf/sprintf */
|
||||||
void PrintInt(long Num, int FieldWidth, int ZeroPad, int LeftJustify, struct OutputStream *Stream)
|
void PrintInt(long Num, int FieldWidth, int ZeroPad, int LeftJustify, struct OutputStream *Stream)
|
||||||
{
|
{
|
||||||
|
|
|
@ -18,6 +18,7 @@ struct IncludeLibrary *IncludeLibList = NULL;
|
||||||
/* initialise the built-in include libraries */
|
/* initialise the built-in include libraries */
|
||||||
void IncludeInit()
|
void IncludeInit()
|
||||||
{
|
{
|
||||||
|
#ifndef BUILTIN_MINI_STDLIB
|
||||||
IncludeRegister("ctype.h", NULL, &StdCtypeFunctions[0], NULL);
|
IncludeRegister("ctype.h", NULL, &StdCtypeFunctions[0], NULL);
|
||||||
IncludeRegister("errno.h", &StdErrnoSetupFunc, NULL, NULL);
|
IncludeRegister("errno.h", &StdErrnoSetupFunc, NULL, NULL);
|
||||||
IncludeRegister("math.h", &MathSetupFunc, &MathFunctions[0], NULL);
|
IncludeRegister("math.h", &MathSetupFunc, &MathFunctions[0], NULL);
|
||||||
|
@ -26,6 +27,7 @@ void IncludeInit()
|
||||||
IncludeRegister("stdlib.h", &StdlibSetupFunc, &StdlibFunctions[0], NULL);
|
IncludeRegister("stdlib.h", &StdlibSetupFunc, &StdlibFunctions[0], NULL);
|
||||||
IncludeRegister("string.h", &StringSetupFunc, &StringFunctions[0], NULL);
|
IncludeRegister("string.h", &StringSetupFunc, &StringFunctions[0], NULL);
|
||||||
IncludeRegister("time.h", &StdTimeSetupFunc, &StdTimeFunctions[0], StdTimeDefs);
|
IncludeRegister("time.h", &StdTimeSetupFunc, &StdTimeFunctions[0], StdTimeDefs);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/* clean up space used by the include system */
|
/* clean up space used by the include system */
|
||||||
|
|
2
picoc.c
2
picoc.c
|
@ -15,7 +15,7 @@ void Initialise()
|
||||||
TypeInit();
|
TypeInit();
|
||||||
IncludeInit();
|
IncludeInit();
|
||||||
#ifdef BUILTIN_MINI_STDLIB
|
#ifdef BUILTIN_MINI_STDLIB
|
||||||
LibraryInit(&GlobalTable, "c library", &CLibrary);
|
LibraryInit(&GlobalTable, "c library", &CLibrary[0]);
|
||||||
CLibraryInit();
|
CLibraryInit();
|
||||||
#endif
|
#endif
|
||||||
PlatformLibraryInit();
|
PlatformLibraryInit();
|
||||||
|
|
2
picoc.h
2
picoc.h
|
@ -385,7 +385,7 @@ void BasicIOInit();
|
||||||
void LibraryInit(struct Table *GlobalTable, const char *LibraryName, struct LibraryFunction *FuncList);
|
void LibraryInit(struct Table *GlobalTable, const char *LibraryName, struct LibraryFunction *FuncList);
|
||||||
void CLibraryInit();
|
void CLibraryInit();
|
||||||
void PrintCh(char OutCh, IOFILE *Stream);
|
void PrintCh(char OutCh, IOFILE *Stream);
|
||||||
void PrintSimpleInt(long Num, FILE *Stream);
|
void PrintSimpleInt(long Num, IOFILE *Stream);
|
||||||
void PrintInt(long Num, int FieldWidth, int ZeroPad, int LeftJustify, IOFILE *Stream);
|
void PrintInt(long Num, int FieldWidth, int ZeroPad, int LeftJustify, IOFILE *Stream);
|
||||||
void PrintStr(const char *Str, IOFILE *Stream);
|
void PrintStr(const char *Str, IOFILE *Stream);
|
||||||
void PrintFP(double Num, IOFILE *Stream);
|
void PrintFP(double Num, IOFILE *Stream);
|
||||||
|
|
Loading…
Reference in a new issue