void CGameWorld::processListener() { int cnt = 0; SNetLink *link; CG_TCPSession *session; // avoid accept too many link in one cycle while(cnt++ < 10) { session = m_ClientListener.AcceptNewSession(); if(!session) break; link = new SNetLink; link->connectTime = Sys_GetSec(); link->session = session; //link->id = CreateId(); link->valid = true; short port=0; unsigned long ip =0; if(!session->GetRemoteAddr (link->strIp, &port,&ip)) { sprintf(link->strIp,"ÎÞЧip\0"); } m_unloginLink.push_back(link); MYMSG("ProcessNewLink: ","new user connected"); } }
void CGameWorld::processLink() { short cmdId; SNetLink *link; CG_TCPSession *session; list<SNetLink*>::iterator it; for(it=m_unloginLink.begin();it!=m_unloginLink.end();) { link = (*it); LINK() = link; session = link->session; if(!link->valid || Sys_GetSec()-link->connectTime>g_cfg.unlogin_timeout) { MYMSG("ProcessNetLink: ","remove unlogin link"); delete session; delete link; it = m_unloginLink.erase(it); continue; } session->DefProc(); if(session->IsDead()) { link->valid = false; it++; continue; } while(session->GetPacket(m_activeCmd)) { MYMSG("ProcessNetLink: ","GetPacket"); if(!m_activeCmd->ReadShort(&cmdId)) { link->valid = false; break; } MYMSG("ProcessNetLink: ","GetPacket_RS:%d",cmdId); if(!m_channelUnlogin.RecvCmd(cmdId)) link->valid = false; } it++; } }
SOCKET CG_NetSocket::Accept() { SOCKADDR_IN addr; int len = sizeof(addr); SOCKET tmp; tmp = accept(m_socket,(SOCKADDR *)&addr,(socklen_t *)&len); if (tmp == INVALID_SOCKET || tmp == NULL) { MYMSG(LOG_NAME,"Accept error"); return NULL; } m_nCount++; return tmp; }
void DispDrvrInitialize(void) { PHYSICAL_ADDRESS ioPhysicalBase = {0,0}; ioPhysicalBase.LowPart = S3C6410_BASE_REG_PA_SROMCON; g_pSROMReg = (volatile S3C6410_SROMCON_REG *)MmMapIoSpace(ioPhysicalBase, sizeof(S3C6410_SROMCON_REG), FALSE); if (NULL == g_pSROMReg) { MYERR((_T("[S1D13521_ERR] pSROMregs = MmMapIoSpace()\r\n"))); return; } g_pSROMReg->SROM_BW = (g_pSROMReg->SROM_BW & ~(0xF<<16)) | (0<<19) | // nWBE/nBE(for UB/LB) control for Memory Bank1(0=Not using UB/LB, 1=Using UB/LB) (0<<18) | // Wait enable control for Memory Bank1 (0=WAIT disable, 1=WAIT enable) (1<<16); // Data bus width control for Memory Bank1 (0=8-bit, 1=16-bit) g_pSROMReg->SROM_BC4 = (0x7<<28) | // Tacs (0x7<<24) | // Tcos (0xF<<16) | // Tacc (0x7<<12) | // Tcoh (0x7<< 8) | // Tah (0x7<< 4) | // Tacp (0x0<< 0); // PMC ioPhysicalBase.LowPart = S3C6410_BASE_REG_PA_GPIO; g_pGPIOPReg = (volatile S3C6410_GPIO_REG *)MmMapIoSpace(ioPhysicalBase, sizeof(S3C6410_GPIO_REG), FALSE); if (NULL == g_pGPIOPReg) { MYERR((_T("[S1D13521_ERR] g_pGPIOPReg = MmMapIoSpace()\r\n"))); return; } // GPN[8] : EPD_HRDY(8) g_pGPIOPReg->GPNCON = (g_pGPIOPReg->GPNCON & ~(0x3<<16)) | (0x0<<16); // input mode g_pGPIOPReg->GPNPUD = (g_pGPIOPReg->GPNPUD & ~(0x3<<16)) | (0x0<<16); // pull-up/down disable ioPhysicalBase.LowPart = S1D13521_BASE_PA; g_pS1D13521Reg = (volatile S1D13521_REG *)MmMapIoSpace(ioPhysicalBase, sizeof(S1D13521_REG), FALSE); if (NULL == g_pS1D13521Reg) { MYERR((_T("[S1D13521_ERR] g_pS1D13521Reg != MmMapIoSpace()\r\n"))); return; } for (int i=0, j=0, v=0; i<DispDrvr_palSize; i++) { #if (LCD_BPP == 4) v = i * 0x11; #elif (LCD_BPP == 8) v = i; #endif DispDrvr_palette[i].rgbRed = DispDrvr_palette[i].rgbGreen = DispDrvr_palette[i].rgbBlue = v; DispDrvr_palette[i].rgbReserved = 0; } InitializeCriticalSection(&g_CS); g_hDirtyRect = DirtyRect_Init(workDirtyRect); S1d13521Initialize((void *)g_pS1D13521Reg, (void *)g_pGPIOPReg); MSGQUEUEOPTIONS msgopts; memset(&msgopts, 0, sizeof(msgopts)); msgopts.dwSize = sizeof(msgopts); msgopts.dwFlags = 0; //MSGQUEUE_ALLOW_BROKEN; msgopts.dwMaxMessages = 0; // no max number of messages msgopts.cbMaxMessage = sizeof(DIRTYRECTINFO); // max size of each msg msgopts.bReadAccess = FALSE; g_hMQ = CreateMsgQueue(MSGQUEUE_NAME, &msgopts); MYMSG((_T("[S1D13521_MSG] CreateMsgQueue(Write) == 0x%X\r\n"), g_hMQ)); }
#include "StdAfx.h" #include "MSG.h" tagMyMSG g_MYMSGAry[] = { MYMSG(WM_SYSKEYDOWN), MYMSG(WM_PRINTCLIENT), /*MYMSG(WM_MOUSELEAVE), */ MYMSG(WM_SETTEXT), MYMSG(WM_SETHOTKEY), MYMSG(WM_DEVMODECHANGE), MYMSG(WM_NOTIFYFORMAT), MYMSG(WM_MBUTTONUP), MYMSG(WM_NEXTMENU), MYMSG(WM_SETCURSOR), MYMSG(WM_INITMENUPOPUP), MYMSG(WM_DESTROY), MYMSG(WM_IME_KEYLAST), MYMSG(WM_NCLBUTTONDOWN), MYMSG(WM_MOUSEFIRST), MYMSG(WM_COMPAREITEM), MYMSG(WM_SETREDRAW), MYMSG(WM_PAINT), MYMSG(WM_DEVICECHANGE), MYMSG(WM_PALETTECHANGED), MYMSG(WM_PALETTEISCHANGING), MYMSG(WM_MDIDESTROY), MYMSG(WM_CANCELMODE), MYMSG(WM_COMPACTING), MYMSG(WM_LBUTTONDOWN), MYMSG(WM_LBUTTONUP), MYMSG(WM_NCMBUTTONDOWN), MYMSG(WM_GETICON), MYMSG(WM_MDIREFRESHMENU), MYMSG(WM_TCARD), MYMSG(WM_PRINT), MYMSG(WM_CHANGECBCHAIN), MYMSG(WM_IME_SELECT), /*MYMSG(WM_MENURBUTTONUP),*/ MYMSG(WM_CTLCOLOREDIT), MYMSG(WM_ENTERMENULOOP), MYMSG(WM_IME_KEYUP), MYMSG(WM_HELP), /*MYMSG(WM_MOUSEWHEEL), */ MYMSG(WM_COMMNOTIFY), MYMSG(WM_NCMBUTTONUP), MYMSG(WM_INPUTLANGCHANGE),