int Environment::askQuestion(char *fTitle, char *fText) { Element *fQuestionBackground; Element *fQuestionText; Element *fQuestionTitle; FontResource *tFont; fQuestionBackground = mElements->getElementByContent(CONTENT_QUESTIONBACKGROUND, mMenu->getSkinID()); fQuestionText = mElements->getElementByContent(CONTENT_QUESTIONTEXT, mMenu->getSkinID()); fQuestionTitle = mElements->getElementByContent(CONTENT_QUESTIONTITLE, mMenu->getSkinID()); if (fQuestionBackground) { fQuestionBackground->drawImage(mScreen); } if (fQuestionTitle) { fQuestionTitle->drawText(fTitle, mScreen); } if (fQuestionText) { fQuestionText->drawText(fText, mScreen); } SDL_Flip(mScreen); mController->setState(Ctrl_A, Button_Released); mController->setState(Ctrl_B, Button_Released); mController->setState(Ctrl_Y, Button_Released); SDL_Event event; while (mController->getState(Ctrl_A) == Button_Released && mController->getState(Ctrl_B) == Button_Released && mController->getState(Ctrl_Y) == Button_Released) { #ifdef WINDOWS while (SDL_PollEvent(&event)) { mController->update(&event); } #endif #ifdef ENABLE_XBOX XSleep(30); #else SDL_Delay(30); #endif } if (mController->getState(Ctrl_A) == Button_Pressed) { return 1; } else { return 0; } }
int Controller::threadStart(void *cptr) { SDL_Event event; Controller *fController = (Controller *) cptr; while (1) { while (SDL_PollEvent(&event)) { fController->update(&event); } XSleep(45); } }
extern "C" void XBoxStartup() { XboxInfo *t = new XboxInfo(); List<XboxInfo> *o = new List<XboxInfo> (t, 0x00); t->readState(); debugPrint("\n\n\nCPU Temp is %d\n", t->getCPUTemp()); if (typeid(*t) == typeid(XboxInfo)) { } debugPrint("\n\n\n Am I here?\n\n"); XSleep(100000); XReboot(); }
/*:::::*/ static void __stdcall /* FIXME */ driver_update(void *param1, void *param2) { while (!quitting) { /* !!!FIXME!!! */ if (blitter) { //blitter(framebuffer, __fb_gfx->w); } else { memcpy(framebuffer, __fb_gfx->framebuffer, __fb_gfx->pitch * __fb_gfx->h); } /* !!!FIXME!!! */ XSleep(10); } }
bool CNetSever::StartSever() { if(run_state != 0 || port == 0 || net_data_agent == NULL) { return false; } if(InitNet()==false) { return false; } ////////////////////////////////////////////////////////////// if(thread_net_svr.XCreateThread((void *)NetSeverThread,this)==false) { return false; } ////////////////////////////////////////////////////////////// while(run_state != 1) {////////////////////////////////wait NetSeverThread XSleep(77); } run_state = 2; while((run_state != 8 ) && (run_state != 9)) { XSleep(77); } if( run_state == 8) {//////ok result in NetSeverThread return true; } run_state =0; return false; }
void Environment::drawMessage(char *fTitle, char *fText) { Element *fMessageBackground; Element *fMessageText; Element *fMessageTitle; fMessageBackground = mElements->getElementByContent(CONTENT_MESSAGEBACKGROUND, mMenu->getSkinID()); fMessageText = mElements->getElementByContent(CONTENT_MESSAGETEXT, mMenu->getSkinID()); fMessageTitle = mElements->getElementByContent(CONTENT_MESSAGETITLE, mMenu->getSkinID()); // render background if (fMessageBackground) { fMessageBackground->drawImage(mScreen); } // render the text's if (fMessageText) { fMessageText->drawText(fText, mScreen); } if (fMessageTitle) { fMessageTitle->drawText(fTitle, mScreen); } SDL_Flip(mScreen); mController->setState(Ctrl_A, Button_Released); mController->setState(Ctrl_B, Button_Released); mController->setState(Ctrl_Y, Button_Released); SDL_Event event; while (mController->getState(Ctrl_A) == Button_Released && mController->getState(Ctrl_B) == Button_Released && mController->getState(Ctrl_Y) == Button_Released) { #ifdef WINDOWS while (SDL_PollEvent(&event)) { mController->update(&event); } #endif #ifdef ENABLE_XBOX XSleep(30); #else SDL_Delay(30); #endif } }
void Game::Exit() { XSleep(1000); XReboot(); }
int Environment::askTimedQuestion(char *fTitle, char *fText, int fTimeout, int fDefault) { Element *fQuestionBackground; Element *fQuestionText; Element *fQuestionTitle; Element *fQuestionTimer; char buf[255]; char *fTimerText; FontResource *tFont; if (fDefault == -1 || fTimeout <= 0) { return askQuestion(fTitle, fText); } fQuestionBackground = mElements->getElementByContent(CONTENT_QUESTIONBACKGROUND, mMenu->getSkinID()); fQuestionText = mElements->getElementByContent(CONTENT_QUESTIONTEXT, mMenu->getSkinID()); fQuestionTitle = mElements->getElementByContent(CONTENT_QUESTIONTITLE, mMenu->getSkinID()); fQuestionTimer = mElements->getElementByContent(CONTENT_QUESTIONTIMER, mMenu->getSkinID()); fTimerText = mDialog->getValue("TimerText"); mController->setState(Ctrl_A, Button_Released); mController->setState(Ctrl_B, Button_Released); mController->setState(Ctrl_Y, Button_Released); SDL_Event event; #ifdef ENABLE_XBOX int start = XGetTickCount(); #else int start = SDL_GetTicks(); #endif int now; while (mController->getState(Ctrl_A) == Button_Released && mController->getState(Ctrl_B) == Button_Released && mController->getState(Ctrl_Y) == Button_Released) { #ifdef WINDOWS while (SDL_PollEvent(&event)) { mController->update(&event); } #endif #ifdef ENABLE_XBOX now = XGetTickCount(); #else now = SDL_GetTicks(); #endif if (now - start > (fTimeout*1000)) { return fDefault; } renderScreen(); if (fQuestionBackground) { fQuestionBackground->drawImage(mScreen); } if (fQuestionTitle) { fQuestionTitle->drawText(fTitle, mScreen); } if (fQuestionText) { fQuestionText->drawText(fText, mScreen); } if (fQuestionTimer && fTimerText) { sprintf(buf, fTimerText, fTimeout - ((int) (now - start) / 1000)); fQuestionTimer->drawText(buf, mScreen); } SDL_Flip(mScreen); #ifdef ENABLE_XBOX XSleep(30); #else SDL_Delay(30); #endif } if (mController->getState(Ctrl_A) == Button_Pressed) { return 1; } else { return 0; } }
XSTDCALL NetSeverThread(void * para) { if(para == NULL) { return ; } CNetSever * host = (CNetSever *)para; host->run_state = 1; while(host->run_state != 2) { XSleep(100); } if(1) {/////udp server int port = host->port; int fdmax; fd_set read_fds; fd_set master; ////////////////////////////////////////// FD_ZERO(&master); SOCKET socket1; struct sockaddr from; struct sockaddr_in local; socklen_t fromlen =sizeof(struct sockaddr); local.sin_family=AF_INET; local.sin_port=htons(port); local.sin_addr.s_addr=INADDR_ANY; fromlen = sizeof(struct sockaddr); socket1=socket(AF_INET,SOCK_DGRAM,0); bind(socket1,(struct sockaddr*)&local,sizeof local); FD_SET(socket1,&master); fdmax=socket1; host->run_state = 8; while(1) { read_fds=master; if(select(fdmax+1,&read_fds,NULL,NULL,NULL)==-1) { host->run_state = 9; return; } if (FD_ISSET(socket1,&read_fds)) { host->data_size = recvfrom(socket1,(char *)host->data_buf,MAXNETSVRBUFSIZE,0,&from,&fromlen); memcpy(&(host->clnaddr),&(from.sa_data[2]),sizeof(struct in_addr)); if (host->data_size>0) { host->OnDataRecv(); } } } return ; } return ; }
void XBOX_InitOSKeymap(_THIS) { int i; XInput_Init(); XSleep(200); lastMouseX = 0; lastMouseY = 0; prevMouseButtons = 0; /* Map the DIK scancodes to SDL keysyms */ for ( i=0; i<256/*SDL_TABLESIZE(DIK_keymap)*/; i++ ) DIK_keymap[i] = 0; /* Defined DIK_* constants */ DIK_keymap[XKEY_ESCAPE] = SDLK_ESCAPE; DIK_keymap[XKEY_1] = SDLK_1; DIK_keymap[XKEY_2] = SDLK_2; DIK_keymap[XKEY_3] = SDLK_3; DIK_keymap[XKEY_4] = SDLK_4; DIK_keymap[XKEY_5] = SDLK_5; DIK_keymap[XKEY_6] = SDLK_6; DIK_keymap[XKEY_7] = SDLK_7; DIK_keymap[XKEY_8] = SDLK_8; DIK_keymap[XKEY_9] = SDLK_9; DIK_keymap[XKEY_0] = SDLK_0; DIK_keymap[XKEY_SUBTRACT] = SDLK_MINUS; DIK_keymap[XKEY_EQUALS] = SDLK_EQUALS; DIK_keymap[XKEY_BACKSPACE] = SDLK_BACKSPACE; DIK_keymap[XKEY_TAB] = SDLK_TAB; DIK_keymap[XKEY_Q] = SDLK_q; DIK_keymap[XKEY_W] = SDLK_w; DIK_keymap[XKEY_E] = SDLK_e; DIK_keymap[XKEY_R] = SDLK_r; DIK_keymap[XKEY_T] = SDLK_t; DIK_keymap[XKEY_Y] = SDLK_y; DIK_keymap[XKEY_U] = SDLK_u; DIK_keymap[XKEY_I] = SDLK_i; DIK_keymap[XKEY_O] = SDLK_o; DIK_keymap[XKEY_P] = SDLK_p; DIK_keymap[XKEY_LBRACE] = SDLK_LEFTBRACKET; DIK_keymap[XKEY_RBRACE] = SDLK_RIGHTBRACKET; DIK_keymap[XKEY_RETURN] = SDLK_RETURN; DIK_keymap[XKEY_LCONTROL] = SDLK_LCTRL; DIK_keymap[XKEY_A] = SDLK_a; DIK_keymap[XKEY_S] = SDLK_s; DIK_keymap[XKEY_D] = SDLK_d; DIK_keymap[XKEY_F] = SDLK_f; DIK_keymap[XKEY_G] = SDLK_g; DIK_keymap[XKEY_H] = SDLK_h; DIK_keymap[XKEY_J] = SDLK_j; DIK_keymap[XKEY_K] = SDLK_k; DIK_keymap[XKEY_L] = SDLK_l; DIK_keymap[XKEY_SEMICOLON] = SDLK_SEMICOLON; DIK_keymap[XKEY_QUOTE] = SDLK_QUOTE; DIK_keymap[XKEY_GRAVE] = SDLK_BACKQUOTE; DIK_keymap[XKEY_LSHIFT] = SDLK_LSHIFT; DIK_keymap[XKEY_BACKSLASH] = SDLK_BACKSLASH; DIK_keymap[XKEY_Z] = SDLK_z; DIK_keymap[XKEY_X] = SDLK_x; DIK_keymap[XKEY_C] = SDLK_c; DIK_keymap[XKEY_V] = SDLK_v; DIK_keymap[XKEY_B] = SDLK_b; DIK_keymap[XKEY_N] = SDLK_n; DIK_keymap[XKEY_M] = SDLK_m; DIK_keymap[XKEY_COMMA] = SDLK_COMMA; DIK_keymap[XKEY_PERIOD] = SDLK_PERIOD; DIK_keymap[XKEY_EQUALS] = SDLK_PLUS; DIK_keymap[XKEY_MINUS] = SDLK_MINUS; DIK_keymap[XKEY_SLASH] = SDLK_SLASH; DIK_keymap[XKEY_RSHIFT] = SDLK_RSHIFT; DIK_keymap[XKEY_MULTIPLY] = SDLK_KP_MULTIPLY; DIK_keymap[XKEY_LMENU] = SDLK_LALT; DIK_keymap[XKEY_SPACE] = SDLK_SPACE; DIK_keymap[XKEY_CAPSLOCK] = SDLK_CAPSLOCK; DIK_keymap[XKEY_F1] = SDLK_F1; DIK_keymap[XKEY_F2] = SDLK_F2; DIK_keymap[XKEY_F3] = SDLK_F3; DIK_keymap[XKEY_F4] = SDLK_F4; DIK_keymap[XKEY_F5] = SDLK_F5; DIK_keymap[XKEY_F6] = SDLK_F6; DIK_keymap[XKEY_F7] = SDLK_F7; DIK_keymap[XKEY_F8] = SDLK_F8; DIK_keymap[XKEY_F9] = SDLK_F9; DIK_keymap[XKEY_F10] = SDLK_F10; DIK_keymap[XKEY_NUMLOCK] = SDLK_NUMLOCK; DIK_keymap[XKEY_SCROLL_LOCK] = SDLK_SCROLLOCK; DIK_keymap[XKEY_NUMPAD7] = SDLK_KP7; DIK_keymap[XKEY_NUMPAD8] = SDLK_KP8; DIK_keymap[XKEY_NUMPAD9] = SDLK_KP9; DIK_keymap[XKEY_ADD] = SDLK_KP_PLUS; DIK_keymap[XKEY_SUBTRACT] = SDLK_KP_MINUS; DIK_keymap[XKEY_NUMPAD4] = SDLK_KP4; DIK_keymap[XKEY_NUMPAD5] = SDLK_KP5; DIK_keymap[XKEY_NUMPAD6] = SDLK_KP6; DIK_keymap[XKEY_NUMPAD1] = SDLK_KP1; DIK_keymap[XKEY_NUMPAD2] = SDLK_KP2; DIK_keymap[XKEY_NUMPAD3] = SDLK_KP3; DIK_keymap[XKEY_NUMPAD0] = SDLK_KP0; DIK_keymap[XKEY_DECIMAL] = SDLK_KP_PERIOD; DIK_keymap[XKEY_F11] = SDLK_F11; DIK_keymap[XKEY_F12] = SDLK_F12; DIK_keymap[XKEY_F13] = SDLK_F13; DIK_keymap[XKEY_F14] = SDLK_F14; DIK_keymap[XKEY_F15] = SDLK_F15; DIK_keymap[XKEY_NUMPADEQUALS] = SDLK_EQUALS; DIK_keymap[XKEY_RCONTROL] = SDLK_RCTRL; DIK_keymap[XKEY_DIVIDE] = SDLK_KP_DIVIDE; DIK_keymap[XKEY_RMENU] = SDLK_RALT; DIK_keymap[XKEY_PAUSE] = SDLK_PAUSE; DIK_keymap[XKEY_HOME] = SDLK_HOME; DIK_keymap[XKEY_UP] = SDLK_UP; DIK_keymap[XKEY_PRIOR] = SDLK_PAGEUP; DIK_keymap[XKEY_LEFT] = SDLK_LEFT; DIK_keymap[XKEY_RIGHT] = SDLK_RIGHT; DIK_keymap[XKEY_END] = SDLK_END; DIK_keymap[XKEY_DOWN] = SDLK_DOWN; DIK_keymap[XKEY_NEXT] = SDLK_PAGEDOWN; DIK_keymap[XKEY_INSERT] = SDLK_INSERT; DIK_keymap[XKEY_DELETE] = SDLK_DELETE; DIK_keymap[XKEY_LWIN] = SDLK_LMETA; DIK_keymap[XKEY_RWIN] = SDLK_RMETA; DIK_keymap[XKEY_APPS] = SDLK_MENU; }