void PSP_FileManager :: refresh ( void ) { /*unsigned char _title[255]; memset( _title, 0 , 255 ); PSP_ChineseUtil::jis2cjk ( this->currentPathString.getChar_p_readonly() , _title ); setTitle ( _title ); */ restoreBackGround(); PSP_Window::showWindow(); showAllItems ( this->showfromFileIndex ); //drawTitle(); PSP_GRAPHICS::flipScreenBuffer(); sceDisplayWaitVblankStart(); }
void AGOSEngine::animateSprites() { VgaSprite *vsp; VgaPointersEntry *vpe; if (_copyScnFlag) { _copyScnFlag--; _vgaSpriteChanged++; } if (getGameType() == GType_ELVIRA1 || getGameType() == GType_ELVIRA2) { const uint8 var = (getGameType() == GType_ELVIRA1) ? 293 : 71; if (_wallOn && !_variableArray[var]) { _wallOn--; VC10_state state; state.srcPtr = getBackGround() + 3 * _backGroundBuf->pitch + 3 * 16; state.height = state.draw_height = 127; state.width = state.draw_width = 14; state.y = 0; state.x = 0; state.palette = 0; state.paletteMod = 0; state.flags = kDFNonTrans; _windowNum = 4; _backFlag = true; drawImage(&state); _backFlag = false; _vgaSpriteChanged++; } } if (!_scrollFlag && !_vgaSpriteChanged) { return; } _vgaSpriteChanged = 0; if (_paletteFlag == 2) _paletteFlag = 1; if (getGameType() == GType_SIMON2 && _scrollFlag) { scrollScreen(); } if (getGameType() == GType_SIMON1 || getGameType() == GType_SIMON2) { dirtyClips(); } restoreBackGround(); vsp = _vgaSprites; for (; vsp->id !=0; vsp++) { if ((getGameType() == GType_SIMON1 || getGameType() == GType_SIMON2) && !(vsp->windowNum & 0x8000)) { continue; } vsp->windowNum &= ~0x8000; vpe = &_vgaBufferPointers[vsp->zoneNum]; _curVgaFile1 = vpe->vgaFile1; _curVgaFile2 = vpe->vgaFile2; _curSfxFile = vpe->sfxFile; _windowNum = vsp->windowNum; _vgaCurSpriteId = vsp->id; saveBackGround(vsp); drawImage_init(vsp->image, vsp->palette, vsp->x, vsp->y, vsp->flags); } if (getGameType() == GType_ELVIRA1 && _variableArray[293]) { // Used by the Fire Wall and Ice Wall spells debug(0, "Using special wall"); uint8 color, h, len; byte *dst = (byte *)_window4BackScn->pixels; color = (_variableArray[293] & 1) ? 13 : 15; _wallOn = 2; h = 127; while (h) { len = 112; while (len--) { *dst++ = color; dst++; } h--; if (h == 0) break; len = 112; while (len--) { dst++; *dst++ = color; } h--; } _window4Flag = 1; setMoveRect(0, 0, 224, 127); } else if (getGameType() == GType_ELVIRA2 && _variableArray[71] & 2) { // Used by the Unholy Barrier spell uint8 color, h, len; byte *dst = (byte *)_window4BackScn->pixels; color = 1; _wallOn = 2; h = 43; while (h) { len = 56; while (len--) { *dst++ = color; dst += 3; } h--; if (h == 0) break; dst += 448; len = 56; while (len--) { dst += 2; *dst++ = color; dst += 1; } dst += 448; h--; } _window4Flag = 1; setMoveRect(0, 0, 224, 127); } if (_window6Flag == 1) _window6Flag++; if (_window4Flag == 1) _window4Flag++; _displayFlag++; }