221 lines
5.6 KiB
C
221 lines
5.6 KiB
C
/* Release 3.00 */
|
|
|
|
/*-------------------------------------------------------------------------*
|
|
* *
|
|
* cdata.c - C library data *
|
|
* *
|
|
* COPYRIGHT (C) 1989 Jensen and Partners. All Rights Reserved *
|
|
* Written by Simon Knight. *
|
|
* *
|
|
* COPYRIGHT (C) 1991 Psion PLC. All Rights Reserved *
|
|
* Modified by NSM. *
|
|
* *
|
|
*--------------------------------------------------------------------------*/
|
|
#define _USE_TIME
|
|
#include <clib.h>
|
|
|
|
char _cvt_buf[64]; /* real number conversion buffer */
|
|
int daylight=0; /* daylight saving flag */
|
|
time_t timezone=0; /* timezone variable */
|
|
|
|
struct lconv _lconv={".", "", "", "", "", "", "", "", "", "",
|
|
CHAR_MAX, CHAR_MAX, CHAR_MAX, CHAR_MAX,
|
|
CHAR_MAX, CHAR_MAX, CHAR_MAX, CHAR_MAX };
|
|
|
|
jmp_buf _EOFhandler; /* EOF error jump environment */
|
|
int _open_init;
|
|
int _s_args; /* argument count */
|
|
int _vp_ret; /* character count */
|
|
int _vs_count; /* character count */
|
|
|
|
int (*_vs_fill)(FILE *st); /* filler function pointer */
|
|
int (*_vp_flush)(FILE *st); /* output function pointer */
|
|
|
|
/*-------------------------------------------------------------------------*
|
|
* error message output - data declarations *
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
#ifdef OLDERRORS
|
|
char *sys_errlist[]=
|
|
{"Unknown Error",
|
|
"Error Zero",
|
|
"Invalid Function Code",
|
|
"File Not Found",
|
|
"Path Not Found",
|
|
"Too Many Open Files",
|
|
"Access Denied",
|
|
"Invalid Handle",
|
|
"Memory Blocks Destroyed",
|
|
"Not Enough Core",
|
|
"Invalid Memory Block Address",
|
|
"Invalid Environment",
|
|
"Invalid Format",
|
|
"Invalid Access Code",
|
|
"Invalid Data",
|
|
"",
|
|
"Invalid Drive",
|
|
"Attempt To Remove CurDir",
|
|
"Not Same Device",
|
|
"No More Files",
|
|
"Invalid Argument",
|
|
"Not Directory",
|
|
"Is Directory",
|
|
"Corrupted EXE File",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"",
|
|
"Cross-Device Link",
|
|
"Math Argument Invalid",
|
|
"Result Too Large",
|
|
"File Locking Deadlock",
|
|
"Unknown Error"
|
|
};
|
|
|
|
int sys_nerr=38; /* number of system error strings */
|
|
#endif
|
|
|
|
char _sys_errbuf[128]; /* error message buffer */
|
|
|
|
/*-------------------------------------------------------------------------*
|
|
* Character type array. *
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
char _ctype[257] = {
|
|
0,/* -1 EOF */
|
|
_IS_CTL,/* 0 NUL */
|
|
_IS_CTL,/* 1 SOH */
|
|
_IS_CTL,/* 2 STX */
|
|
_IS_CTL,/* 3 ETX */
|
|
_IS_CTL,/* 4 EOT */
|
|
_IS_CTL,/* 5 ENQ */
|
|
_IS_CTL,/* 6 ACK */
|
|
_IS_CTL,/* 7 BEL */
|
|
_IS_CTL,/* 8 BS */
|
|
_IS_CTL|_IS_SP,/* 9 HT */
|
|
_IS_CTL|_IS_SP,/* A LF */
|
|
_IS_CTL|_IS_SP,/* B VT */
|
|
_IS_CTL|_IS_SP,/* C FF */
|
|
_IS_CTL|_IS_SP,/* D CR */
|
|
_IS_CTL,/* E SO */
|
|
_IS_CTL,/* F SI */
|
|
_IS_CTL,/* 10 DLE */
|
|
_IS_CTL,/* 11 DC1 */
|
|
_IS_CTL,/* 12 DC2 */
|
|
_IS_CTL,/* 13 DC3 */
|
|
_IS_CTL,/* 14 DC4 */
|
|
_IS_CTL,/* 15 NAK */
|
|
_IS_CTL,/* 16 SYN */
|
|
_IS_CTL,/* 17 ETB */
|
|
_IS_CTL,/* 18 CAN */
|
|
_IS_CTL,/* 19 EM */
|
|
_IS_CTL,/* 1A SUB */
|
|
_IS_CTL,/* 1B ESC */
|
|
_IS_CTL,/* 1C FS */
|
|
_IS_CTL,/* 1D GS */
|
|
_IS_CTL,/* 1E RS */
|
|
_IS_CTL,/* 1F UF */
|
|
_IS_SP,/* 20 '\ ' */
|
|
_IS_PUN,/* 21 ! */
|
|
_IS_PUN,/* 22 " */
|
|
_IS_PUN,/* 23 # */
|
|
_IS_PUN,/* 24 $ */
|
|
_IS_PUN,/* 25 % */
|
|
_IS_PUN,/* 26 & */
|
|
_IS_PUN,/* 27 ' */
|
|
_IS_PUN,/* 28 ( */
|
|
_IS_PUN,/* 29 ) */
|
|
_IS_PUN,/* 2A * */
|
|
_IS_PUN,/* 2B + */
|
|
_IS_PUN,/* 2C ,*/
|
|
_IS_PUN,/* 2D - */
|
|
_IS_PUN,/* 2E . */
|
|
_IS_PUN,/* 2F / */
|
|
_IS_DIG,/* 30 0 */
|
|
_IS_DIG,/* 31 1 */
|
|
_IS_DIG,/* 32 2 */
|
|
_IS_DIG,/* 33 3 */
|
|
_IS_DIG,/* 34 4 */
|
|
_IS_DIG,/* 35 5 */
|
|
_IS_DIG,/* 36 6 */
|
|
_IS_DIG,/* 37 7 */
|
|
_IS_DIG,/* 38 8 */
|
|
_IS_DIG,/* 39 9 */
|
|
_IS_PUN,/* 3A : */
|
|
_IS_PUN,/* 3B ; */
|
|
_IS_PUN,/* 3C < */
|
|
_IS_PUN,/* 3D = */
|
|
_IS_PUN,/* 3E > */
|
|
_IS_PUN,/* 3F ? */
|
|
_IS_PUN,/* 40 @ */
|
|
_IS_UPP|_IS_HEX,/* 41 A */
|
|
_IS_UPP|_IS_HEX,/* 42 B */
|
|
_IS_UPP|_IS_HEX,/* 43 C */
|
|
_IS_UPP|_IS_HEX,/* 44 D */
|
|
_IS_UPP|_IS_HEX,/* 45 E */
|
|
_IS_UPP|_IS_HEX,/* 46 F */
|
|
_IS_UPP,/* 47 G */
|
|
_IS_UPP,/* 48 H */
|
|
_IS_UPP,/* 49 I */
|
|
_IS_UPP,/* 4A J */
|
|
_IS_UPP,/* 4B K */
|
|
_IS_UPP,/* 4C L */
|
|
_IS_UPP,/* 4D M */
|
|
_IS_UPP,/* 4E N */
|
|
_IS_UPP,/* 4F O */
|
|
_IS_UPP,/* 50 P */
|
|
_IS_UPP,/* 51 Q */
|
|
_IS_UPP,/* 52 R */
|
|
_IS_UPP,/* 53 S */
|
|
_IS_UPP,/* 54 T */
|
|
_IS_UPP,/* 55 U */
|
|
_IS_UPP,/* 56 V */
|
|
_IS_UPP,/* 57 W */
|
|
_IS_UPP,/* 58 X */
|
|
_IS_UPP,/* 59 Y */
|
|
_IS_UPP,/* 5A Z */
|
|
_IS_PUN,/* 5B [ */
|
|
_IS_PUN,/* 5C \ */
|
|
_IS_PUN,/* 5D ] */
|
|
_IS_PUN,/* 5E ^ */
|
|
_IS_PUN,/* 5F _ */
|
|
_IS_PUN,/* 60 ` */
|
|
_IS_LOW|_IS_HEX,/* 61 a */
|
|
_IS_LOW|_IS_HEX,/* 62 b */
|
|
_IS_LOW|_IS_HEX,/* 63 c */
|
|
_IS_LOW|_IS_HEX,/* 64 d */
|
|
_IS_LOW|_IS_HEX,/* 65 e */
|
|
_IS_LOW|_IS_HEX,/* 66 f */
|
|
_IS_LOW,/* 67 g */
|
|
_IS_LOW,/* 68 h */
|
|
_IS_LOW,/* 69 i */
|
|
_IS_LOW,/* 6A j */
|
|
_IS_LOW,/* 6B k */
|
|
_IS_LOW,/* 6C l */
|
|
_IS_LOW,/* 6D m */
|
|
_IS_LOW,/* 6E n */
|
|
_IS_LOW,/* 6F o */
|
|
_IS_LOW,/* 70 p */
|
|
_IS_LOW,/* 71 q */
|
|
_IS_LOW,/* 72 r */
|
|
_IS_LOW,/* 73 s */
|
|
_IS_LOW,/* 74 t */
|
|
_IS_LOW,/* 75 u */
|
|
_IS_LOW,/* 76 v */
|
|
_IS_LOW,/* 77 w */
|
|
_IS_LOW,/* 78 x */
|
|
_IS_LOW,/* 79 y */
|
|
_IS_LOW,/* 7A z */
|
|
_IS_PUN,/* 7B { */
|
|
_IS_PUN,/* 7C | */
|
|
_IS_PUN,/* 7D } */
|
|
_IS_PUN,/* 7E ~ */
|
|
_IS_CTL,/* 7F DEL */
|
|
0};
|
|
|