/* * wincecompat.c : wince compatibility module * * See Copyright for the status of this software. * * javier@tiresiassoft.com * * 17 Sep 2002 created */ #include "wincecompat.h" char *strError[]= {"Error 0","","No such file or directory","","","","","Arg list too long", "Exec format error","Bad file number","","","Not enough core","Permission denied","","", "","File exists","Cross-device link","","","","Invalid argument","","Too many open files", "","","","No space left on device","","","","","Math argument","Result too large","", "Resource deadlock would occur", "Unknown error under wince"}; int errno=0; int read(int handle, char *buffer, unsigned int len) { return(fread(&buffer[0], len, 1, (FILE *) handle)); } int write(int handle, const char *buffer, unsigned int len) { return(fwrite(&buffer[0], len,1,(FILE *) handle)); } int open(const char *filename,int oflag, ...) { char mode[3]; /* mode[0] ="w/r/a" mode[1]="+" */ mode[2]=0; if ( oflag==(O_WRONLY|O_CREAT) ) mode[0]='w'; else if (oflag==O_RDONLY) mode[0]='r'; return (int) fopen(filename, mode); } int close(int handle) { return ( fclose((FILE *) handle) ); } char *getcwd( char *buffer, unsigned int size) { /* Windows CE don't have the concept of a current directory * so we just return NULL to indicate an error */ return NULL; } char *getenv( const char *varname ) { return NULL; } char *strerror(int errnum) { if (errnum>MAX_STRERROR) return strError[MAX_STRERROR]; else return strError[errnum]; }