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 + -
显示快捷键?