misc.c

来自「俄罗斯高人Mamaich的Pocket gcc编译器(运行在PocketPC上)」· C语言 代码 · 共 172 行

C
172
字号
#include <stdlib.h>#include <sys/wcebase.h>#include <sys/wcethread.h>#include <sys/wcefile.h>#include <sys/wcememory.h>#include <sys/wcetrace.h>#include <sys/sysconf.h>#if 0/* TRACE WRAPPERS The following are trace wrappers and should be removed */LPVOIDVirtualAlloc(LPVOID addr, DWORD size, DWORD type, DWORD protect){  WCETRACE(WCE_VM, "va: %p %d %d %d", addr, size, type, protect);  VirtualAlloc(addr, size, type, protect);}BOOLVirtualFree(LPVOID addr, DWORD size, DWORD type){  WCETRACE(WCE_VM, "vf: %p %d %d", addr, size, type);  return(VirtualFree(addr, size, type));}voidInitializeCriticalSection(LPCRITICAL_SECTION cs){  long dummy;  int  trace;  trace = WCETRACEGET();  if (trace & WCE_SYNCH) {    WCETRACE(WCE_SYNCH, "ics: %p", cs);#if 0    printf("ics: %p\n", cs);    backtrace(&dummy, 20);#endif  }  InitializeCriticalSection(cs);}voidDeleteCriticalSection(LPCRITICAL_SECTION cs){  WCETRACE(WCE_SYNCH, "dcs: %p", cs);  DeleteCriticalSection(cs);}HANDLECreateEventW(LPSECURITY_ATTRIBUTES sa, BOOL mr, BOOL is, LPTSTR name){  HANDLE hnd;  hnd = CreateEventW(sa, mr, is, name);  WCETRACE(WCE_SYNCH, "cew: %p", hnd);  return(hnd);}HANDLECreateMutexW(LPSECURITY_ATTRIBUTES sa, BOOL io, LPTSTR name){  HANDLE hnd;  hnd = CreateMutexW(sa, io, name);  WCETRACE(WCE_SYNCH, "cmw: %p", hnd);  return(hnd);}BOOLReleaseMutex(HANDLE hnd){  BOOL rval;  rval = ReleaseMutex(hnd);  /*  WCETRACE(WCE_SYNCH, "rm: %p %d", hnd, rval); */  return(rval);}HANDLECreateSemaphoreW(LPSECURITY_ATTRIBUTES sa, LONG ic, LONG mc, LPCWSTR name){  HANDLE hnd;  hnd = CreateSemaphoreW(sa, ic, mc, name);  WCETRACE(WCE_SYNCH, "csw: %p", hnd);  return(hnd);}BOOLCloseHandle(HANDLE hnd){  BOOL rval;  rval = CloseHandle(hnd);  WCETRACE(WCE_SYNCH, "ch: %p %d", hnd, rval);  return(rval);}/* END TRACE WRAPPERS */#endifvoidDebugBreak(){  __asm__(".word 0xE6000010");}/* rk: this should be macro... */char *_T(char *s){  return s;}HANDLECreateEvent(LPSECURITY_ATTRIBUTES attr, BOOL manualReset,              BOOL initState, const char *name){  HANDLE hnd;  wchar_t *nameW[MAX_PATH];  int len;  if (name) {    len = strlen(name) + 1;    if (len >= MAX_PATH) {      WCETRACE(WCE_IO, "CreateEvent: FATAL ERROR strlen exceeds MAX_PATH (%d>=%d)",               len, MAX_PATH);      return(NULL);    }    mbstowcs(nameW, name, len);    hnd = (HANDLE) CreateEventW(attr, manualReset, initState, nameW);  } else {    hnd = (HANDLE) CreateEventW(attr, manualReset, initState, NULL);  }  return(hnd);}HANDLECreateFile(LPCSTR fname, DWORD desiredAccess, DWORD shareMode,           LPSECURITY_ATTRIBUTES attr, DWORD disposition, DWORD flags,           HANDLE fileTemplate){  wchar_t fnameW[MAX_PATH];  HANDLE hnd = NULL;  if (fname) {    mbstowcs(fnameW, fname, MAX_PATH);    hnd = (HANDLE) CreateFileW(fnameW, desiredAccess, shareMode, attr,                                disposition, flags, fileTemplate);  }  return(hnd);}/* ignore... */voidGC_WinMain(){  DebugBreak();}/* ignore... ??? */voidsysconf(){  DebugBreak();}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?