mirror of
https://github.com/hrydgard/ppsspp.git
synced 2024-11-26 23:10:38 +00:00
Merge pull request #19556 from hrydgard/another-bunch
Some checks failed
Build / build-windows (ARM64) (push) Has been cancelled
Build / build-windows (x64) (push) Has been cancelled
Build / build-uwp (push) Has been cancelled
Build / build (./b.sh --headless --unittest --fat --no-png --no-sdl2, clang, clang++, test, macos, macos-latest) (push) Has been cancelled
Build / build (./b.sh --headless --unittest, clang, clang++, test, clang-normal, ubuntu-latest) (push) Has been cancelled
Build / build (./b.sh --headless --unittest, gcc, g++, gcc-normal, ubuntu-latest) (push) Has been cancelled
Build / build (./b.sh --ios, clang, clang++, ios, ios, macos-latest) (push) Has been cancelled
Build / build (./b.sh --libretro_android ppsspp_libretro, clang, clang++, android, android-libretro, ubuntu-latest) (push) Has been cancelled
Build / build (./b.sh --qt, gcc, g++, qt, qt, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a OPENXR=1, clang, clang++, android, android-vr, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm64, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=armeabi-v7a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm32, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=x86_64 UNITTEST=1 HEADLESS=1, clang, clang++, android, android-x86_64, ubuntu-latest) (push) Has been cancelled
Build / build (make -C libretro -f Makefile -j2, clang, clang++, libretro, clang-libretro, ubuntu-latest) (push) Has been cancelled
Build / build (make -C libretro -f Makefile -j2, gcc, g++, libretro, gcc-libretro, ubuntu-latest) (push) Has been cancelled
Build / build_test_headless_alpine (push) Has been cancelled
Generate Docker Layer / build (push) Has been cancelled
Build / test-windows (push) Has been cancelled
Build / test (macos-latest) (push) Has been cancelled
Build / test (ubuntu-latest) (push) Has been cancelled
Some checks failed
Build / build-windows (ARM64) (push) Has been cancelled
Build / build-windows (x64) (push) Has been cancelled
Build / build-uwp (push) Has been cancelled
Build / build (./b.sh --headless --unittest --fat --no-png --no-sdl2, clang, clang++, test, macos, macos-latest) (push) Has been cancelled
Build / build (./b.sh --headless --unittest, clang, clang++, test, clang-normal, ubuntu-latest) (push) Has been cancelled
Build / build (./b.sh --headless --unittest, gcc, g++, gcc-normal, ubuntu-latest) (push) Has been cancelled
Build / build (./b.sh --ios, clang, clang++, ios, ios, macos-latest) (push) Has been cancelled
Build / build (./b.sh --libretro_android ppsspp_libretro, clang, clang++, android, android-libretro, ubuntu-latest) (push) Has been cancelled
Build / build (./b.sh --qt, gcc, g++, qt, qt, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a OPENXR=1, clang, clang++, android, android-vr, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm64, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=armeabi-v7a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm32, ubuntu-latest) (push) Has been cancelled
Build / build (cd android && ./ab.sh -j2 APP_ABI=x86_64 UNITTEST=1 HEADLESS=1, clang, clang++, android, android-x86_64, ubuntu-latest) (push) Has been cancelled
Build / build (make -C libretro -f Makefile -j2, clang, clang++, libretro, clang-libretro, ubuntu-latest) (push) Has been cancelled
Build / build (make -C libretro -f Makefile -j2, gcc, g++, libretro, gcc-libretro, ubuntu-latest) (push) Has been cancelled
Build / build_test_headless_alpine (push) Has been cancelled
Generate Docker Layer / build (push) Has been cancelled
Build / test-windows (push) Has been cancelled
Build / test (macos-latest) (push) Has been cancelled
Build / test (ubuntu-latest) (push) Has been cancelled
Another bunch of pre-release fixes
This commit is contained in:
commit
3289614348
@ -370,8 +370,10 @@ void VulkanRenderManager::StartThreads() {
|
||||
|
||||
// Called from main thread.
|
||||
void VulkanRenderManager::StopThreads() {
|
||||
// Make sure we don't have an open render pass.
|
||||
EndCurRenderStep();
|
||||
// Make sure we don't have an open non-backbuffer render pass
|
||||
if (curRenderStep_ && curRenderStep_->render.framebuffer != nullptr) {
|
||||
EndCurRenderStep();
|
||||
}
|
||||
// Not sure this is a sensible check - should be ok even if not.
|
||||
// _dbg_assert_(steps_.empty());
|
||||
|
||||
@ -1140,6 +1142,8 @@ void VulkanRenderManager::CopyImageToMemorySync(VkImage image, int mipLevel, int
|
||||
|
||||
// Need to call this after FlushSync so the pixels are guaranteed to be ready in CPU-accessible VRAM.
|
||||
queueRunner_.CopyReadbackBuffer(frameData_[vulkan_->GetCurFrame()], nullptr, w, h, destFormat, destFormat, pixelStride, pixels);
|
||||
|
||||
_dbg_assert_(steps_.empty());
|
||||
}
|
||||
|
||||
static void RemoveDrawCommands(FastVec<VkRenderData> *cmds) {
|
||||
@ -1338,8 +1342,6 @@ void VulkanRenderManager::BlitFramebuffer(VKRFramebuffer *src, VkRect2D srcRect,
|
||||
}
|
||||
}
|
||||
|
||||
EndCurRenderStep();
|
||||
|
||||
// Sanity check. Added an assert to try to gather more info.
|
||||
// Got this assert in NPJH50443 FINAL FANTASY TYPE-0, but pretty rare. Moving back to debug assert.
|
||||
if (aspectMask & (VK_IMAGE_ASPECT_DEPTH_BIT | VK_IMAGE_ASPECT_STENCIL_BIT)) {
|
||||
@ -1352,6 +1354,8 @@ void VulkanRenderManager::BlitFramebuffer(VKRFramebuffer *src, VkRect2D srcRect,
|
||||
}
|
||||
}
|
||||
|
||||
EndCurRenderStep();
|
||||
|
||||
VKRStep *step = new VKRStep{ VKRStepType::BLIT };
|
||||
step->blit.aspectMask = aspectMask;
|
||||
step->blit.src = src;
|
||||
|
@ -30,34 +30,36 @@ bool UIScreen::UseVerticalLayout() const {
|
||||
}
|
||||
|
||||
void UIScreen::DoRecreateViews() {
|
||||
if (recreateViews_) {
|
||||
std::lock_guard<std::recursive_mutex> guard(screenManager()->inputLock_);
|
||||
if (!recreateViews_) {
|
||||
return;
|
||||
}
|
||||
|
||||
UI::PersistMap persisted;
|
||||
bool persisting = root_ != nullptr;
|
||||
if (persisting) {
|
||||
root_->PersistData(UI::PERSIST_SAVE, "root", persisted);
|
||||
}
|
||||
std::lock_guard<std::recursive_mutex> guard(screenManager()->inputLock_);
|
||||
|
||||
delete root_;
|
||||
root_ = nullptr;
|
||||
CreateViews();
|
||||
UI::View *defaultView = root_ ? root_->GetDefaultFocusView() : nullptr;
|
||||
if (defaultView && defaultView->GetVisibility() == UI::V_VISIBLE) {
|
||||
defaultView->SetFocus();
|
||||
}
|
||||
recreateViews_ = false;
|
||||
UI::PersistMap persisted;
|
||||
bool persisting = root_ != nullptr;
|
||||
if (persisting) {
|
||||
root_->PersistData(UI::PERSIST_SAVE, "root", persisted);
|
||||
}
|
||||
|
||||
if (persisting && root_ != nullptr) {
|
||||
root_->PersistData(UI::PERSIST_RESTORE, "root", persisted);
|
||||
delete root_;
|
||||
root_ = nullptr;
|
||||
CreateViews();
|
||||
UI::View *defaultView = root_ ? root_->GetDefaultFocusView() : nullptr;
|
||||
if (defaultView && defaultView->GetVisibility() == UI::V_VISIBLE) {
|
||||
defaultView->SetFocus();
|
||||
}
|
||||
recreateViews_ = false;
|
||||
|
||||
// Update layout and refocus so things scroll into view.
|
||||
// This is for resizing down, when focused on something now offscreen.
|
||||
UI::LayoutViewHierarchy(*screenManager()->getUIContext(), root_, ignoreInsets_);
|
||||
UI::View *focused = UI::GetFocusedView();
|
||||
if (focused) {
|
||||
root_->SubviewFocused(focused);
|
||||
}
|
||||
if (persisting && root_ != nullptr) {
|
||||
root_->PersistData(UI::PERSIST_RESTORE, "root", persisted);
|
||||
|
||||
// Update layout and refocus so things scroll into view.
|
||||
// This is for resizing down, when focused on something now offscreen.
|
||||
UI::LayoutViewHierarchy(*screenManager()->getUIContext(), root_, ignoreInsets_);
|
||||
UI::View *focused = UI::GetFocusedView();
|
||||
if (focused) {
|
||||
root_->SubviewFocused(focused);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -72,6 +72,9 @@ void Event::Add(std::function<EventReturn(EventParams&)> func) {
|
||||
|
||||
// Call this from input thread or whatever, it doesn't matter
|
||||
void Event::Trigger(EventParams &e) {
|
||||
if (handlers_.empty()) {
|
||||
return;
|
||||
}
|
||||
EventTriggered(this, e);
|
||||
}
|
||||
|
||||
|
@ -395,6 +395,17 @@ NPDRMDemoBlockDevice::NPDRMDemoBlockDevice(FileLoader *fileLoader)
|
||||
ERROR_LOG(Log::Loader, "Invalid NPUMDIMG header!");
|
||||
}
|
||||
|
||||
u32 psar_id;
|
||||
fileLoader->ReadAt(psarOffset, 4, 1, &psar_id);
|
||||
|
||||
INFO_LOG(Log::Loader, "NPDRM: PSAR ID: %08x");
|
||||
// PS1 PSAR begins with "PSISOIMG0000"
|
||||
if (psar_id == 'SISP') {
|
||||
lbaSize_ = 0; // Mark invalid
|
||||
ERROR_LOG(Log::Loader, "PSX not supported! Should have been caught earlier.");
|
||||
return;
|
||||
}
|
||||
|
||||
kirk_init();
|
||||
|
||||
// getkey
|
||||
|
@ -413,7 +413,11 @@ void __KernelReturnFromInterrupt()
|
||||
PendingInterrupt pend = pendingInterrupts.front();
|
||||
pendingInterrupts.pop_front();
|
||||
|
||||
intrHandlers[pend.intr]->handleResult(pend);
|
||||
if (pend.intr >= 0 && pend.intr < ARRAY_SIZE(intrHandlers)) {
|
||||
intrHandlers[pend.intr]->handleResult(pend);
|
||||
} else {
|
||||
_assert_msg_(false, "Bad pend.intr: %d", pend.intr);
|
||||
}
|
||||
inInterrupt = false;
|
||||
|
||||
// Restore context after running the interrupt.
|
||||
|
@ -594,7 +594,6 @@ bool PSP_Reboot(std::string *error_string) {
|
||||
}
|
||||
|
||||
void PSP_BeginHostFrame() {
|
||||
// Reapply the graphics state of the PSP
|
||||
if (gpu) {
|
||||
gpu->BeginHostFrame();
|
||||
}
|
||||
|
@ -1118,7 +1118,7 @@ bool GenerateFragmentShader(const FShaderID &id, char *buffer, const ShaderLangu
|
||||
WRITE(p, " v.rgb = abs(v.rgb - destColor.rgb);\n");
|
||||
break;
|
||||
default:
|
||||
*errorString = "Bad replace blend eq";
|
||||
*errorString = StringFromFormat("Bad replace blend eq: %d", (int)replaceBlendEq);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -89,6 +89,7 @@ void FramebufferManagerCommon::Init(int msaaLevel) {
|
||||
NotifyRenderResized(msaaLevel);
|
||||
}
|
||||
|
||||
// Returns true if we need to stop the render thread
|
||||
bool FramebufferManagerCommon::UpdateRenderSize(int msaaLevel) {
|
||||
const bool newRender = renderWidth_ != (float)PSP_CoreParameter().renderWidth || renderHeight_ != (float)PSP_CoreParameter().renderHeight || msaaLevel_ != msaaLevel;
|
||||
|
||||
@ -111,6 +112,11 @@ bool FramebufferManagerCommon::UpdateRenderSize(int msaaLevel) {
|
||||
useBufferedRendering_ = newBuffered;
|
||||
|
||||
presentation_->UpdateRenderSize(renderWidth_, renderHeight_);
|
||||
|
||||
// If just switching TO buffered rendering, no need to pause the threads. In fact this causes problems due to the open backbuffer renderpass.
|
||||
if (!useBufferedRendering_ && newBuffered) {
|
||||
return false;
|
||||
}
|
||||
return newRender || newSettings;
|
||||
}
|
||||
|
||||
|
@ -293,11 +293,10 @@ ReplaceBlendType ReplaceBlendWithShader(GEBufferFormat bufferFormat) {
|
||||
case GE_BLENDMODE_MUL_AND_ADD:
|
||||
case GE_BLENDMODE_MUL_AND_SUBTRACT:
|
||||
case GE_BLENDMODE_MUL_AND_SUBTRACT_REVERSE:
|
||||
// Handled below.
|
||||
// Other blend equations simply don't blend on hardware.
|
||||
break;
|
||||
|
||||
default:
|
||||
// Other blend equations simply don't blend on hardware.
|
||||
return REPLACE_BLEND_NO;
|
||||
}
|
||||
|
||||
@ -849,6 +848,8 @@ static const BlendEq eqLookupNoMinMax[] = {
|
||||
BlendEq::ADD, // GE_BLENDMODE_MIN
|
||||
BlendEq::ADD, // GE_BLENDMODE_MAX
|
||||
BlendEq::ADD, // GE_BLENDMODE_ABSDIFF
|
||||
BlendEq::ADD,
|
||||
BlendEq::ADD,
|
||||
};
|
||||
|
||||
static const BlendEq eqLookup[] = {
|
||||
@ -858,6 +859,8 @@ static const BlendEq eqLookup[] = {
|
||||
BlendEq::MIN, // GE_BLENDMODE_MIN
|
||||
BlendEq::MAX, // GE_BLENDMODE_MAX
|
||||
BlendEq::MAX, // GE_BLENDMODE_ABSDIFF
|
||||
BlendEq::ADD,
|
||||
BlendEq::ADD,
|
||||
};
|
||||
|
||||
static BlendFactor toDualSource(BlendFactor blendfunc) {
|
||||
|
@ -277,6 +277,13 @@ bool FragmentIdNeedsFramebufferRead(const FShaderID &id) {
|
||||
(ReplaceBlendType)id.Bits(FS_BIT_REPLACE_BLEND, 3) == REPLACE_BLEND_READ_FRAMEBUFFER;
|
||||
}
|
||||
|
||||
inline u32 SanitizeBlendMode(GEBlendMode mode) {
|
||||
if (mode > GE_BLENDMODE_ABSDIFF)
|
||||
return GE_BLENDMODE_MUL_AND_ADD; // Not sure what the undefined modes are.
|
||||
else
|
||||
return mode;
|
||||
}
|
||||
|
||||
// Here we must take all the bits of the gstate that determine what the fragment shader will
|
||||
// look like, and concatenate them together into an ID.
|
||||
void ComputeFragmentShaderID(FShaderID *id_out, const ComputedPipelineState &pipelineState, const Draw::Bugs &bugs) {
|
||||
@ -371,7 +378,7 @@ void ComputeFragmentShaderID(FShaderID *id_out, const ComputedPipelineState &pip
|
||||
// 3 bits.
|
||||
id.SetBits(FS_BIT_REPLACE_BLEND, 3, replaceBlend);
|
||||
// 11 bits total.
|
||||
id.SetBits(FS_BIT_BLENDEQ, 3, gstate.getBlendEq());
|
||||
id.SetBits(FS_BIT_BLENDEQ, 3, SanitizeBlendMode(gstate.getBlendEq()));
|
||||
id.SetBits(FS_BIT_BLENDFUNC_A, 4, gstate.getBlendFuncA());
|
||||
id.SetBits(FS_BIT_BLENDFUNC_B, 4, gstate.getBlendFuncB());
|
||||
}
|
||||
|
@ -1867,6 +1867,18 @@ void GPUCommon::DoBlockTransfer(u32 skipDrawReason) {
|
||||
}
|
||||
|
||||
bool GPUCommon::PerformMemoryCopy(u32 dest, u32 src, int size, GPUCopyFlag flags) {
|
||||
/*
|
||||
// TODO: Should add this. But let's do it after the 1.18 release.
|
||||
if (dest == 0 || src == 0) {
|
||||
_dbg_assert_msg_(false, "Bad PerformMemoryCopy: %08x -> %08x, size %d (flag: %d)", src, dest, size, (int)flags);
|
||||
return false;
|
||||
}
|
||||
*/
|
||||
if (size == 0) {
|
||||
_dbg_assert_msg_(false, "Zero-sized PerformMemoryCopy: %08x -> %08x, size %d (flag: %d)", src, dest, size, (int)flags);
|
||||
// Let's not ignore this yet but if we hit this, we should investigate.
|
||||
}
|
||||
|
||||
// Track stray copies of a framebuffer in RAM. MotoGP does this.
|
||||
if (framebufferManager_->MayIntersectFramebufferColor(src) || framebufferManager_->MayIntersectFramebufferColor(dest)) {
|
||||
if (!framebufferManager_->NotifyFramebufferCopy(src, dest, size, flags, gstate_c.skipDrawReason)) {
|
||||
|
36
Tools/langtool/Cargo.lock
generated
36
Tools/langtool/Cargo.lock
generated
@ -4,9 +4,9 @@ version = 3
|
||||
|
||||
[[package]]
|
||||
name = "anstream"
|
||||
version = "0.6.15"
|
||||
version = "0.6.17"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526"
|
||||
checksum = "23a1e53f0f5d86382dafe1cf314783b2044280f406e7e1506368220ad11b1338"
|
||||
dependencies = [
|
||||
"anstyle",
|
||||
"anstyle-parse",
|
||||
@ -19,33 +19,33 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "anstyle"
|
||||
version = "1.0.8"
|
||||
version = "1.0.9"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1"
|
||||
checksum = "8365de52b16c035ff4fcafe0092ba9390540e3e352870ac09933bebcaa2c8c56"
|
||||
|
||||
[[package]]
|
||||
name = "anstyle-parse"
|
||||
version = "0.2.5"
|
||||
version = "0.2.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb"
|
||||
checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9"
|
||||
dependencies = [
|
||||
"utf8parse",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "anstyle-query"
|
||||
version = "1.1.1"
|
||||
version = "1.1.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a"
|
||||
checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c"
|
||||
dependencies = [
|
||||
"windows-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "anstyle-wincon"
|
||||
version = "3.0.4"
|
||||
version = "3.0.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8"
|
||||
checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125"
|
||||
dependencies = [
|
||||
"anstyle",
|
||||
"windows-sys",
|
||||
@ -93,9 +93,9 @@ checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97"
|
||||
|
||||
[[package]]
|
||||
name = "colorchoice"
|
||||
version = "1.0.2"
|
||||
version = "1.0.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0"
|
||||
checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990"
|
||||
|
||||
[[package]]
|
||||
name = "heck"
|
||||
@ -118,9 +118,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "proc-macro2"
|
||||
version = "1.0.87"
|
||||
version = "1.0.89"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b3e4daa0dcf6feba26f985457cdf104d4b4256fc5a09547140f3631bb076b19a"
|
||||
checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e"
|
||||
dependencies = [
|
||||
"unicode-ident",
|
||||
]
|
||||
@ -142,9 +142,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
|
||||
|
||||
[[package]]
|
||||
name = "syn"
|
||||
version = "2.0.79"
|
||||
version = "2.0.85"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590"
|
||||
checksum = "5023162dfcd14ef8f32034d8bcd4cc5ddc61ef7a247c024a33e24e1f24d21b56"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
@ -165,9 +165,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
|
||||
|
||||
[[package]]
|
||||
name = "windows-sys"
|
||||
version = "0.52.0"
|
||||
version = "0.59.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
|
||||
checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
|
||||
dependencies = [
|
||||
"windows-targets",
|
||||
]
|
||||
|
@ -1395,6 +1395,10 @@ ScreenRenderFlags EmuScreen::render(ScreenRenderMode mode) {
|
||||
if (!framebufferBound) {
|
||||
draw->BindFramebufferAsRenderTarget(nullptr, { RPAction::CLEAR, RPAction::CLEAR, RPAction::CLEAR, }, "EmuScreen_Behind");
|
||||
}
|
||||
|
||||
Draw::BackendState state = draw->GetCurrentBackendState();
|
||||
_assert_msg_(!state.valid || state.passes >= 1, "skipB: %d sw: %d mode: %d back: %d tag: %s", (int)skipBufferEffects, (int)g_Config.bSoftwareRendering, (int)mode, (int)g_Config.iGPUBackend, screenManager()->topScreen()->tag());
|
||||
|
||||
// Need to make sure the UI texture is available, for "darken".
|
||||
screenManager()->getUIContext()->BeginFrame();
|
||||
draw->SetViewport(viewport);
|
||||
@ -1515,13 +1519,12 @@ ScreenRenderFlags EmuScreen::render(ScreenRenderMode mode) {
|
||||
draw->BindFramebufferAsRenderTarget(nullptr, { RPAction::CLEAR, RPAction::CLEAR, RPAction::CLEAR, clearColor }, "EmuScreen_NoFrame");
|
||||
draw->SetViewport(viewport);
|
||||
draw->SetScissorRect(0, 0, g_display.pixel_xres, g_display.pixel_yres);
|
||||
framebufferBound = true;
|
||||
}
|
||||
|
||||
Draw::BackendState state = draw->GetCurrentBackendState();
|
||||
|
||||
// We allow if !state.valid, that means it's not the Vulkan backend.
|
||||
_assert_msg_(!state.valid || state.passes >= 1, "skipB: %d sw: %d mode: %d back: %d", (int)skipBufferEffects, (int)g_Config.bSoftwareRendering, (int)mode, (int)g_Config.iGPUBackend);
|
||||
_assert_msg_(!state.valid || state.passes >= 1, "skipB: %d sw: %d mode: %d back: %d bound: %d", (int)skipBufferEffects, (int)g_Config.bSoftwareRendering, (int)mode, (int)g_Config.iGPUBackend, (int)framebufferBound);
|
||||
|
||||
screenManager()->getUIContext()->BeginFrame();
|
||||
|
||||
|
@ -1765,5 +1765,6 @@ UI::EventReturn GridSettingsPopupScreen::GridMinusClick(UI::EventParams &e) {
|
||||
UI::EventReturn GridSettingsPopupScreen::OnRecentClearClick(UI::EventParams &e) {
|
||||
g_Config.ClearRecentIsos();
|
||||
OnRecentChanged.Trigger(e);
|
||||
TriggerFinish(DR_OK);
|
||||
return UI::EVENT_DONE;
|
||||
}
|
||||
|
@ -813,7 +813,7 @@ void CreditsScreen::CreateViews() {
|
||||
root_->Add(new Button(cr->T("Discord"), new AnchorLayoutParams(260, 64, 10, NONE, NONE, 232, false)))->OnClick.Handle(this, &CreditsScreen::OnDiscord);
|
||||
root_->Add(new Button("www.ppsspp.org", new AnchorLayoutParams(260, 64, 10, NONE, NONE, 10, false)))->OnClick.Handle(this, &CreditsScreen::OnPPSSPPOrg);
|
||||
root_->Add(new Button(cr->T("Privacy Policy"), new AnchorLayoutParams(260, 64, 10, NONE, NONE, 84, false)))->OnClick.Handle(this, &CreditsScreen::OnPrivacy);
|
||||
root_->Add(new Button(cr->T("Twitter @PPSSPP_emu"), new AnchorLayoutParams(260, 64, NONE, NONE, 10, rightYOffset + 84, false)))->OnClick.Handle(this, &CreditsScreen::OnTwitter);
|
||||
root_->Add(new Button(cr->T("X @PPSSPP_emu"), new AnchorLayoutParams(260, 64, NONE, NONE, 10, rightYOffset + 84, false)))->OnClick.Handle(this, &CreditsScreen::OnX);
|
||||
|
||||
#if PPSSPP_PLATFORM(ANDROID) || PPSSPP_PLATFORM(IOS)
|
||||
root_->Add(new Button(cr->T("Share PPSSPP"), new AnchorLayoutParams(260, 64, NONE, NONE, 10, rightYOffset + 158, false)))->OnClick.Handle(this, &CreditsScreen::OnShare);
|
||||
@ -834,7 +834,8 @@ UI::EventReturn CreditsScreen::OnSupport(UI::EventParams &e) {
|
||||
return UI::EVENT_DONE;
|
||||
}
|
||||
|
||||
UI::EventReturn CreditsScreen::OnTwitter(UI::EventParams &e) {
|
||||
UI::EventReturn CreditsScreen::OnX(UI::EventParams &e) {
|
||||
// Not sure we should change to x.com here, given various platform URL handlers etc. We can probably change it soon.
|
||||
System_LaunchUrl(LaunchUrlType::BROWSER_URL, "https://twitter.com/PPSSPP_emu");
|
||||
return UI::EVENT_DONE;
|
||||
}
|
||||
|
@ -176,7 +176,7 @@ private:
|
||||
UI::EventReturn OnForums(UI::EventParams &e);
|
||||
UI::EventReturn OnDiscord(UI::EventParams &e);
|
||||
UI::EventReturn OnShare(UI::EventParams &e);
|
||||
UI::EventReturn OnTwitter(UI::EventParams &e);
|
||||
UI::EventReturn OnX(UI::EventParams &e);
|
||||
|
||||
double startTime_ = 0.0;
|
||||
};
|
||||
|
@ -121,7 +121,7 @@ static double g_lastActivity = 0.0;
|
||||
static double g_lastKeepAwake = 0.0;
|
||||
// Time until we stop considering the core active without user input.
|
||||
// Should this be configurable? 2 hours currently.
|
||||
static const double ACTIVITY_IDLE_TIMEOUT = 2.0 * 3600.0;
|
||||
static constexpr double ACTIVITY_IDLE_TIMEOUT = 2.0 * 3600.0;
|
||||
|
||||
void System_LaunchUrl(LaunchUrlType urlType, const char *url) {
|
||||
ShellExecute(NULL, L"open", ConvertUTF8ToWString(url).c_str(), NULL, NULL, SW_SHOWNORMAL);
|
||||
|
@ -1070,9 +1070,9 @@ translators3 =ma1feesm
|
||||
translators4 =عمر أنور عجلان
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = الموقع الألكتروني
|
||||
written = مكتوب في لغة C++ من أجل السرعة والمتانة
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = تصفح الألعاب
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Check out the website:
|
||||
written = Written in C++ for speed and portability
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Хвърлете едно око на уеб сайта ни:
|
||||
written = Написано в C++ за бързина и съвместимост
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Check out the website:
|
||||
written = Written in C++ for speed and portability
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Navštivte naši stránku:
|
||||
written = Vytvořeno v jazyce C++ pro rychlost a přenosnost
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Mere info på webside:
|
||||
written = Skrevet i C++ for hastighed og portabilitet
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Mehr Infos auf der Webseite:
|
||||
written = Programmiert in C++ für Geschwindigkeit und Portabilität
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Spiele durchsuchen
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Ollongngi todai situsna mane:
|
||||
written = Pake C++ digaraka yamo na malassi
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1037,9 +1037,9 @@ translators3 = The Dax, wuspring, hrydgard, adrian17
|
||||
translators4 = papel
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Check out the website:
|
||||
written = Written in C++ for speed and portability
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[MemStick]
|
||||
Already contains PSP data = Already contains PSP data
|
||||
|
@ -1063,9 +1063,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Sitio web oficial:
|
||||
written = Escrito en lenguaje C++ para una mejor portabilidad y velocidad
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Buscar juegos
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Sitio web oficial
|
||||
written = Escrito en lenguaje C++ para una mejor portabilidad y velocidad
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[PSPSettings]
|
||||
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = توییتر @PPSSPP_emu
|
||||
website = :سری به وبسایت بزنید
|
||||
written = نوشته شده است C++ برای سریع و پرتابل بودن، نرم افزار با زبان برنامه نویسی
|
||||
X @PPSSPP_emu = توییتر @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Tutustu verkkosivustoon:
|
||||
written = Kirjoitettu C++:ssa nopeutta ja siirrettävyyttä varten
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Selaa pelejä
|
||||
|
@ -1053,9 +1053,9 @@ testing = tests
|
||||
this translation by = Traduction française : vnctdj
|
||||
title = Un émulateur de PSP rapide et portable
|
||||
tools = Outils libres utilisés :
|
||||
Twitter @PPSSPP_emu = Twitter de PPSSPP
|
||||
website = Visitez notre site :
|
||||
written = Écrit en C++ pour la vitesse et la portabilité
|
||||
X @PPSSPP_emu = X de PPSSPP
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Parcourir les jeux
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Sitio web oficial:
|
||||
written = Escrito en linguaxe C++ para unha mellor portabilidade e velocidade
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Επισκεφθείτε την ιστοσελίδα:
|
||||
written = Γραμμένο σε C++ για ταχύτητα και φορητότητα
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Περιήγηση παιχνιδιών
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = :כנסו אל האתר
|
||||
written = למהירות וניידות C++ נכתב ב
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = רתאה לא וסנכ:
|
||||
written = ב בתכנ ++C תודיינו תוריהמל
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 = The Dax, wuspring, hrydgard, adrian17
|
||||
translators4 = HiImBrala, Carlson
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Pogledaj stranicu:
|
||||
written = Napisan u C++ za brzinu i za pokretnost
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Pretraži igre
|
||||
|
@ -1062,9 +1062,9 @@ translators3 = NABN00B
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = X @PPSSPP_emu
|
||||
website = Nézd meg a honlapot:
|
||||
written = C++ban írva a sebességért és portolhatóságért
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Játékok tallózása
|
||||
|
@ -1062,9 +1062,9 @@ translators3 = niznet
|
||||
translators4 = mupralsh
|
||||
translators5 = eerdfz
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Kunjungi situs:
|
||||
written = Ditulis dalam bahasa C++ demi kecepatan dan portabilitas
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Telusuri permainan
|
||||
|
@ -1031,9 +1031,9 @@ translators3 = The Dax, wuspring, hrydgard, adrian17
|
||||
translators4 = papel
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter
|
||||
website = Da' un'occhiata al sito web:
|
||||
written = Scritto in C++ per velocità e portabilità
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[MemStick]
|
||||
Already contains PSP data = Contiene già dati PSP
|
||||
|
@ -1030,9 +1030,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = ウェブサイトはこちら:
|
||||
written = 速度と移植性を保つためにC++で書かれています
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[MemStick]
|
||||
Already contains PSP data = 既にPSPデータが存在しています。
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Ngunjungi situs web kita:
|
||||
written = Ditulis dalam C++ Kanggo kacepetan lan portabilitas
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1013,9 +1013,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = 트위터 @PPSSPP_emu
|
||||
website = 웹사이트를 확인하세요:
|
||||
written = 속도와 이식성을 위해 C++로 작성되었습니다.
|
||||
X @PPSSPP_emu = 트위터 @PPSSPP_emu
|
||||
|
||||
[MemStick]
|
||||
Already contains PSP data = 이미 PSP 데이터가 포함되어 있습니다.
|
||||
|
@ -1027,9 +1027,9 @@ translators3 = The Dax, wuspring, hrydgard, adrian17
|
||||
translators4 = papel, Mhamad99
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Check out the website:
|
||||
written = Written in C++ for speed and portability
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[MemStick]
|
||||
Already contains PSP data = Already contains PSP data
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = ກວດສອບຂໍ້ມູນທີ່ເວັບໄຊ:
|
||||
written = ຂຽນໂດຍພາສາ C++ ເພື່ອປະສິດທິພາບ, ຄວາມໄວ ແລະຄວາມສະຖຽນ
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 = vnctdj
|
||||
translators4 = SViper
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Check out the website:
|
||||
written = Parašyta C++ kalboje dėl greičio ir portabilumo
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 = The Dax, wuspring, hrydgard, adrian17
|
||||
translators4 = papel, AG Richard, Zie Nozie,
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Lihat laman web:
|
||||
written = Ditulis dengan C++ untuk kelajuan dan mudah alih
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Bezoek de website:
|
||||
written = Geschreven in C++ voor snelheid en draagbaarheid
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Games bladeren...
|
||||
|
@ -1062,9 +1062,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Check out the website:
|
||||
written = Written in C++ for speed and portability
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -10,7 +10,7 @@ Achievements = Osiągnięcia
|
||||
Achievements are disabled = Osiągnięcia są wyłączone
|
||||
Achievements enabled = Osiągnięcia włączone
|
||||
Achievements with active challenges = Osiągnięcia z aktywnymi wyzwaniami
|
||||
Allow Save State in Hardcore Mode (but not Load State) = Pozwól na zapis stanu w Trybie Wyzwania (bez wczytywania zapisów)
|
||||
Allow Save State in Hardcore Mode (but not Load State) = Pozwól na zapis stanu w Trybie Wyzwania (bez wczytywania zapisów)
|
||||
Almost completed achievements = Prawie ukończone osiągnięcia
|
||||
Around me = Wokół mnie
|
||||
Can't log in to RetroAchievements right now = W tym momencie nie można zalogować do RetroAchievements
|
||||
@ -62,7 +62,7 @@ Unsupported achievements = Niewspierane osiągnięcia
|
||||
Alternate speed volume = Alternatywna prędkość emulacji
|
||||
Audio backend = Sterownik dźwięku (wymagany restart)
|
||||
Audio Error = Błąd Audio
|
||||
Audio file format not supported. Must be WAV or MP3. = Niewspierany format pliku dźwiękowego. Plik musi być w formacie WAV lub MP3.
|
||||
Audio file format not supported. Must be WAV or MP3. = Niewspierany format pliku dźwiękowego. Plik musi być w formacie WAV lub MP3.
|
||||
AudioBufferingForBluetooth = Bufory dźwięku dost. do Bluetooth (wolniejsze)
|
||||
Auto = Automatyczny
|
||||
Device = Urządzenie
|
||||
@ -1067,9 +1067,9 @@ translators3 = Poprzednią edycję tłumaczenia stworzyli:
|
||||
translators4 = hrydgard, The Dax, mikusp, adrian17
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = X (Twitter): @PPSSPP_emu
|
||||
website = Zajrzyj na stronę:
|
||||
written = Napisano w C++ dla wydajności i mobilności
|
||||
X @PPSSPP_emu = X: @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Przeglądaj gry
|
||||
|
@ -1037,9 +1037,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Verifique o site da web:
|
||||
written = Escrito em C++ pela velocidade e portabilidade
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[MemStick]
|
||||
Already contains PSP data = Já contém dados do PSP
|
||||
|
@ -1056,9 +1056,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter/X @PPSSPP_emu
|
||||
website = Verifica o website:
|
||||
written = PPSSPP foi escrito em C++ pela sua velocidade e portabilidade
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[MemStick]
|
||||
Already contains PSP data = Já contém dados da PSP
|
||||
|
@ -1063,9 +1063,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Uitați-vă la site:
|
||||
written = Scris in C++ pt. viteză si portabilitate
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Browse games
|
||||
|
@ -1030,9 +1030,9 @@ translators3 = Hasster
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Посетите наш веб-сайт:
|
||||
written = Написан на C++ для скорости и портируемости
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[MemStick]
|
||||
Already contains PSP data = Уже содержит данные PSP
|
||||
|
@ -1014,9 +1014,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Kolla in webbsidan:
|
||||
written = Skriven i C++ - prestanda och portabilitet
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[PSPSettings]
|
||||
Auto = Auto
|
||||
|
@ -1063,9 +1063,9 @@ translators3 = Adriane Justine Tan
|
||||
translators4 = John Cyrill Corsanes (@jcchikikomori)
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Puntahan ang Website:
|
||||
written = Nakasulat sa C++ para sa bilis at portability
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = I-browse ang mga laro
|
||||
|
@ -1079,9 +1079,9 @@ translators3 = Benjamin B. Gates
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = ไปที่ Twitter
|
||||
website = เพิ่มเติมข้อมูลได้ที่เว็บไซต์:
|
||||
written = เขียนโดยใช้ภาษา C++ เพื่อความรวดเร็ว และความเสถียร
|
||||
X @PPSSPP_emu = ไปที่ X
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = ค้นหาไปยังเกม
|
||||
|
@ -1063,9 +1063,9 @@ translators3 = mygizli04
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = X @PPSSPP_emu
|
||||
website = PPSSPP.org
|
||||
written = Hız ve Taşınabilirlik için C++ ile Yazıldı
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Oyunlara bak...
|
||||
|
@ -1062,9 +1062,9 @@ translators3 = Якщо у вас є пропозиції щодо перекл
|
||||
translators4 = або знайшли помилки, напишіть мені:
|
||||
translators5 = ser.gutsalyuk@gmail.com
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Відвідайте наш веб-сайт :
|
||||
written = Написаний на C++ для швидкості \nта підтримці декількох платформ.
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Перегляд ігор
|
||||
|
@ -1062,9 +1062,9 @@ translators3 = The Dax, wuspring, hrydgard, adrian17
|
||||
translators4 = papel, chinhodado, xsacha , zminhquanz
|
||||
translators5 = Huy Song Tử,
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter @PPSSPP_emu
|
||||
website = Xem trên website:
|
||||
written = Được viết bằng C++ cho tốc độ và portability
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = Duyệt games
|
||||
|
@ -1063,9 +1063,9 @@ translators3 = xzapk、Arthur200000、Playhi、PeaceShi
|
||||
translators4 = Nargacuga、driver1998、xujibbs、Croden1999
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = X (Twitter)
|
||||
website = 请查阅官方网站
|
||||
written = 使用C++编写以保证速度与移植性
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[RemoteISO]
|
||||
Browse Games = 浏览游戏
|
||||
|
@ -1030,9 +1030,9 @@ translators3 =
|
||||
translators4 =
|
||||
translators5 =
|
||||
translators6 =
|
||||
Twitter @PPSSPP_emu = Twitter
|
||||
website = 歡迎造訪我們的網站:
|
||||
written = 使用 C++ 編寫,以保證建置速度和相容性
|
||||
X @PPSSPP_emu = X @PPSSPP_emu
|
||||
|
||||
[MemStick]
|
||||
Already contains PSP data = 已包含 PSP 資料
|
||||
|
Loading…
Reference in New Issue
Block a user