Merge pull request #19643 from hrydgard/imgui-fixes
Some checks are pending
Build / build-windows (ARM64) (push) Waiting to run
Build / build-windows (x64) (push) Waiting to run
Build / build-uwp (push) Waiting to run
Build / test-windows (push) Blocked by required conditions
Build / build (./b.sh --headless --unittest --fat --no-png --no-sdl2, clang, clang++, test, macos, macos-latest) (push) Waiting to run
Build / build (./b.sh --headless --unittest, clang, clang++, test, clang-normal, ubuntu-latest) (push) Waiting to run
Build / build (./b.sh --headless --unittest, gcc, g++, gcc-normal, ubuntu-latest) (push) Waiting to run
Build / build (./b.sh --ios, clang, clang++, ios, ios, macos-latest) (push) Waiting to run
Build / build (./b.sh --libretro_android ppsspp_libretro, clang, clang++, android, android-libretro, ubuntu-latest) (push) Waiting to run
Build / build (./b.sh --qt, gcc, g++, qt, qt, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a OPENXR=1, clang, clang++, android, android-vr, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=arm64-v8a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm64, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=armeabi-v7a UNITTEST=1 HEADLESS=1, clang, clang++, android, android-arm32, ubuntu-latest) (push) Waiting to run
Build / build (cd android && ./ab.sh -j2 APP_ABI=x86_64 UNITTEST=1 HEADLESS=1, clang, clang++, android, android-x86_64, ubuntu-latest) (push) Waiting to run
Build / build (make -C libretro -f Makefile -j2, clang, clang++, libretro, clang-libretro, ubuntu-latest) (push) Waiting to run
Build / build (make -C libretro -f Makefile -j2, gcc, g++, libretro, gcc-libretro, ubuntu-latest) (push) Waiting to run
Build / test (macos-latest) (push) Blocked by required conditions
Build / test (ubuntu-latest) (push) Blocked by required conditions
Build / build_test_headless_alpine (push) Waiting to run
Generate Docker Layer / build (push) Waiting to run

ImDebugger fixes: OpenGL and D3D9 rendering fixed
This commit is contained in:
Henrik Rydgård 2024-11-21 16:17:24 +01:00 committed by GitHub
commit 2853bcd8f8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
62 changed files with 126 additions and 37 deletions

View File

@ -574,6 +574,8 @@ public:
void DrawIndexed(int vertexCount, int offset) override;
void DrawUP(const void *vdata, int vertexCount) override;
void DrawIndexedUP(const void *vdata, int vertexCount, const void *idata, int indexCount) override;
void DrawIndexedClippedBatchUP(const void *vdata, int vertexCount, const void *idata, int indexCount, Slice<ClippedDraw> draws) override;
void Clear(int mask, uint32_t colorval, float depthVal, int stencilVal) override;
uint64_t GetNativeObject(NativeObject obj, void *srcObject) override {
@ -1186,6 +1188,26 @@ void D3D9Context::DrawIndexedUP(const void *vdata, int vertexCount, const void *
vdata, curPipeline_->inputLayout->GetStride());
}
void D3D9Context::DrawIndexedClippedBatchUP(const void *vdata, int vertexCount, const void *idata, int indexCount, Slice<ClippedDraw> draws) {
curPipeline_->inputLayout->Apply(device_);
curPipeline_->Apply(device_, stencilRef_, stencilWriteMask_, stencilCompareMask_);
ApplyDynamicState();
// Suboptimal!
for (int i = 0; i < draws.size(); i++) {
RECT rc;
rc.left = draws[i].clipx;
rc.top = draws[i].clipy;
rc.right = draws[i].clipx + draws[i].clipw;
rc.bottom = draws[i].clipy + draws[i].cliph;
device_->SetScissorRect(&rc);
device_->DrawIndexedPrimitiveUP(curPipeline_->prim, 0, vertexCount, D3DPrimCount(curPipeline_->prim, draws[i].indexCount),
(uint16_t *)idata + draws[i].indexOffset, D3DFMT_INDEX16,
vdata, curPipeline_->inputLayout->GetStride());
}
}
static uint32_t SwapRB(uint32_t c) {
return (c & 0xFF00FF00) | ((c >> 16) & 0xFF) | ((c << 16) & 0xFF0000);
}

View File

@ -1439,7 +1439,7 @@ void OpenGLContext::DrawIndexedUP(const void *vdata, int vertexCount, const void
memcpy(dest, idata, idataSize);
ApplySamplers();
renderManager_.DrawIndexed(curPipeline_->inputLayout->inputLayout_, vbuf, voffset, ibuf, ioffset, curPipeline_->prim, 0, GL_UNSIGNED_SHORT, vertexCount);
renderManager_.DrawIndexed(curPipeline_->inputLayout->inputLayout_, vbuf, voffset, ibuf, ioffset, curPipeline_->prim, indexCount, GL_UNSIGNED_SHORT, 1);
}
void OpenGLContext::DrawIndexedClippedBatchUP(const void *vdata, int vertexCount, const void *idata, int indexCount, Slice<ClippedDraw> draws) {
@ -1469,7 +1469,7 @@ void OpenGLContext::DrawIndexedClippedBatchUP(const void *vdata, int vertexCount
scissor.w = draw.clipw;
scissor.h = draw.cliph;
renderManager_.SetScissor(scissor);
renderManager_.DrawIndexed(curPipeline_->inputLayout->inputLayout_, vbuf, voffset, ibuf, ioffset + draw.indexOffset * indexSize, curPipeline_->prim, 0, GL_UNSIGNED_SHORT, draw.indexCount);
renderManager_.DrawIndexed(curPipeline_->inputLayout->inputLayout_, vbuf, voffset, ibuf, ioffset + draw.indexOffset * indexSize, curPipeline_->prim, draw.indexCount, GL_UNSIGNED_SHORT, 1);
}
}

View File

@ -837,8 +837,9 @@ public:
virtual void Draw(int vertexCount, int offset) = 0;
virtual void DrawIndexed(int vertexCount, int offset) = 0; // Always 16-bit indices.
virtual void DrawUP(const void *vdata, int vertexCount) = 0;
virtual void DrawIndexedUP(const void *vdata, int vertexCount, const void *idata, int indexCount) = 0; // Supports 32-bit indices, for IMGUI use.
virtual void DrawIndexedClippedBatchUP(const void *vdata, int vertexCount, const void *idata, int indexCount, Slice<ClippedDraw> draws) {}
virtual void DrawIndexedUP(const void *vdata, int vertexCount, const void *idata, int indexCount) = 0;
// Intended for ImGui display lists, easier to do optimally this way.
virtual void DrawIndexedClippedBatchUP(const void *vdata, int vertexCount, const void *idata, int indexCount, Slice<ClippedDraw> draws) = 0;
// Frame management (for the purposes of sync and resource management, necessary with modern APIs). Default implementations here.
virtual void BeginFrame(DebugFlags debugFlags) = 0;

View File

@ -252,6 +252,7 @@ double Instant::ElapsedSeconds() const {
#endif
void sleep_ms(int ms, const char *reason) {
// INFO_LOG(Log::System, "Sleep %d ms: %s", ms, reason);
#ifdef _WIN32
Sleep(ms);
#elif defined(HAVE_LIBNX)

View File

@ -297,6 +297,10 @@ float UIContext::CalculateTextScale(std::string_view str, float availWidth, floa
}
void UIContext::DrawTextRectSqueeze(std::string_view str, const Bounds &bounds, uint32_t color, int align) {
if (bounds.w <= 0 || bounds.h <= 0) {
// Probably mid-layout.
return;
}
float origScaleX = fontScaleX_;
float origScaleY = fontScaleY_;
float scale = CalculateTextScale(str, bounds.w / origScaleX, bounds.h / origScaleY);

View File

@ -32,10 +32,10 @@
FrameTiming g_frameTiming;
void WaitUntil(double now, double timestamp) {
void WaitUntil(double now, double timestamp, const char *reason) {
#ifdef _WIN32
while (time_now_d() < timestamp) {
sleep_ms(1, "wait-until"); // Sleep for 1ms on this thread
sleep_ms(1, reason); // Sleep for 1ms on this thread
}
#else
const double left = timestamp - now;
@ -71,7 +71,7 @@ void FrameTiming::DeferWaitUntil(double until, double *curTimePtr) {
void FrameTiming::PostSubmit() {
if (waitUntil_ != 0.0) {
WaitUntil(time_now_d(), waitUntil_);
WaitUntil(time_now_d(), waitUntil_, "post-submit");
if (curTimePtr_) {
*curTimePtr_ = waitUntil_;
curTimePtr_ = nullptr;

View File

@ -27,4 +27,4 @@ extern FrameTiming g_frameTiming;
Draw::PresentMode ComputePresentMode(Draw::DrawContext *draw, int *interval);
void WaitUntil(double now, double timestamp);
void WaitUntil(double now, double timestamp, const char *reason);

View File

@ -445,7 +445,7 @@ static void DoFrameTiming(bool throttle, bool *skipFrame, float scaledTimestep,
if (endOfFrame) {
g_frameTiming.DeferWaitUntil(nextFrameTime, &curFrameTime);
} else {
WaitUntil(curFrameTime, nextFrameTime);
WaitUntil(curFrameTime, nextFrameTime, "display-wait");
curFrameTime = time_now_d(); // I guess we could also just set it to nextFrameTime...
}
}

View File

@ -317,7 +317,7 @@ bool JitBlockCache::RangeMayHaveEmuHacks(u32 start, u32 end) const {
static int binary_search(const JitBlock blocks_[], const u8 *baseoff, int imin, int imax) {
while (imin < imax) {
int imid = (imin + imax) / 2;
int imid = (imin + imax) >> 1;
if (blocks_[imid].normalEntry < baseoff)
imin = imid + 1;
else

View File

@ -79,8 +79,8 @@ namespace MIPSStackWalk {
}
bool ScanForEntry(StackFrame &frame, u32 entry, u32 &ra) {
// Let's hope there are no > 1MB functions on the PSP, for the sake of humanity...
const u32 LONGEST_FUNCTION = 1024 * 1024;
// Let's hope there are no > 0.5MB functions on the PSP, for the sake of humanity...
const u32 LONGEST_FUNCTION = 1024 * 512;
// TODO: Check if found entry is in the same symbol? Might be wrong sometimes...
if (entry != INVALIDTARGET && frame.pc == entry) {

View File

@ -4,9 +4,9 @@ version = 3
[[package]]
name = "anstream"
version = "0.6.17"
version = "0.6.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "23a1e53f0f5d86382dafe1cf314783b2044280f406e7e1506368220ad11b1338"
checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b"
dependencies = [
"anstyle",
"anstyle-parse",
@ -19,9 +19,9 @@ dependencies = [
[[package]]
name = "anstyle"
version = "1.0.9"
version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8365de52b16c035ff4fcafe0092ba9390540e3e352870ac09933bebcaa2c8c56"
checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9"
[[package]]
name = "anstyle-parse"
@ -53,9 +53,9 @@ dependencies = [
[[package]]
name = "clap"
version = "4.5.20"
version = "4.5.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8"
checksum = "fb3b4b9e5a7c7514dfa52869339ee98b3156b0bfb4e8a77c4ff4babb64b1604f"
dependencies = [
"clap_builder",
"clap_derive",
@ -63,9 +63,9 @@ dependencies = [
[[package]]
name = "clap_builder"
version = "4.5.20"
version = "4.5.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54"
checksum = "b17a95aa67cc7b5ebd32aa5370189aa0d79069ef1c64ce893bd30fb24bff20ec"
dependencies = [
"anstream",
"anstyle",
@ -87,9 +87,9 @@ dependencies = [
[[package]]
name = "clap_lex"
version = "0.7.2"
version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97"
checksum = "afb84c814227b90d6895e01398aee0d8033c00e7466aca416fb6a8e0eb19d8a7"
[[package]]
name = "colorchoice"
@ -118,9 +118,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
version = "1.0.89"
version = "1.0.91"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e"
checksum = "307e3004becf10f5a6e0d59d20f3cd28231b0e0827a96cd3e0ce6d14bc1e4bb3"
dependencies = [
"unicode-ident",
]
@ -142,9 +142,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
[[package]]
name = "syn"
version = "2.0.85"
version = "2.0.89"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5023162dfcd14ef8f32034d8bcd4cc5ddc61ef7a247c024a33e24e1f24d21b56"
checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e"
dependencies = [
"proc-macro2",
"quote",
@ -153,9 +153,9 @@ dependencies = [
[[package]]
name = "unicode-ident"
version = "1.0.13"
version = "1.0.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83"
[[package]]
name = "utf8parse"

View File

@ -124,6 +124,10 @@ void DevMenuScreen::CreatePopupContents(UI::ViewGroup *parent) {
items->Add(new Choice(dev->T("Log View")))->OnClick.Handle(this, &DevMenuScreen::OnLogView);
#endif
items->Add(new Choice(dev->T("Logging Channels")))->OnClick.Handle(this, &DevMenuScreen::OnLogConfig);
items->Add(new Choice(dev->T("Debugger")))->OnClick.Add([](UI::EventParams &e) {
g_Config.bShowImDebugger = !g_Config.bShowImDebugger;
return UI::EVENT_DONE;
});
items->Add(new Choice(sy->T("Developer Tools")))->OnClick.Handle(this, &DevMenuScreen::OnDeveloperTools);
// Debug overlay

View File

@ -1537,8 +1537,7 @@ ScreenRenderFlags EmuScreen::render(ScreenRenderMode mode) {
}
PSP_RunLoopWhileState();
// Hopefully coreState is now CORE_NEXTFRAME
// Hopefully, after running, coreState is now CORE_NEXTFRAME
switch (coreState) {
case CORE_NEXTFRAME:
// Reached the end of the frame, all good. Set back to running for the next frame
@ -1609,7 +1608,8 @@ ScreenRenderFlags EmuScreen::render(ScreenRenderMode mode) {
screenManager()->getUIContext()->BeginFrame();
if (!(mode & ScreenRenderMode::TOP)) {
// We're in run-behind mode, but we don't want to draw chat, debug UI and stuff.
renderImDebugger();
// We're in run-behind mode, but we don't want to draw chat, debug UI and stuff. We do draw the imdebugger though.
// So, darken and bail here.
// Reset viewport/scissor to be sure.
draw->SetViewport(viewport);
@ -1636,11 +1636,13 @@ ScreenRenderFlags EmuScreen::render(ScreenRenderMode mode) {
SetVRAppMode(screenManager()->topScreen() == this ? VRAppMode::VR_GAME_MODE : VRAppMode::VR_DIALOG_MODE);
}
if (!(mode & ScreenRenderMode::TOP)) {
darken();
renderImDebugger();
return flags;
}
void EmuScreen::renderImDebugger() {
if (g_Config.bShowImDebugger) {
Draw::DrawContext *draw = screenManager()->getDrawContext();
if (!imguiInited_) {
imguiInited_ = true;
imDebugger_ = std::make_unique<ImDebugger>();
@ -1660,7 +1662,6 @@ ScreenRenderFlags EmuScreen::render(ScreenRenderMode mode) {
ImGui_ImplThin3d_RenderDrawData(ImGui::GetDrawData(), draw);
}
}
return flags;
}
bool EmuScreen::hasVisibleUI() {

View File

@ -79,6 +79,7 @@ private:
void bootComplete();
bool hasVisibleUI();
void renderUI();
void renderImDebugger();
void onVKey(int virtualKeyCode, bool down);
void onVKeyAnalog(int virtualKeyCode, float value);

View File

@ -4,6 +4,7 @@
#include "ext/imgui/imgui_internal.h"
#include "Common/StringUtils.h"
#include "Core/Config.h"
#include "Core/RetroAchievements.h"
#include "Core/Core.h"
#include "Core/Debugger/DebugInterface.h"
@ -380,6 +381,12 @@ void ImDebugger::Frame(MIPSDebugInterface *mipsDebug) {
ImGui::Checkbox("Struct viewer", &cfg_.structViewerOpen);
ImGui::EndMenu();
}
if (ImGui::BeginMenu("Misc")) {
if (ImGui::MenuItem("Close Debugger")) {
g_Config.bShowImDebugger = false;
}
ImGui::EndMenu();
}
ImGui::EndMainMenuBar();
}
@ -411,7 +418,9 @@ void ImDebugger::Frame(MIPSDebugInterface *mipsDebug) {
DrawAtracView(cfg_);
}
if (cfg_.hleModulesOpen) {
DrawHLEModules(cfg_);
}
if (cfg_.structViewerOpen) {
structViewer_.Draw(mipsDebug, &cfg_.structViewerOpen);

View File

@ -2,6 +2,7 @@
#include <vector>
#include <string>
#include <set>
#include <algorithm>
#include "ext/imgui/imgui.h"

View File

@ -1,6 +1,7 @@
#include <regex>
#include <sstream>
#include <unordered_map>
#include <cctype>
#include "ext/imgui/imgui.h"

View File

@ -305,6 +305,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = ‎الحالي
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = ‎أدوات المطور
DevMenu = قائمة المطور
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Crear/Obrir fitxer «textures.i
Current = Actual
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Současný
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Opret/Åben textures.ini fil fo
Current = Aktuelle
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Erstelle/Öffne textures.ini f
Current = Aktuell
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Entwicklungswerkzeuge
DevMenu = Entwicklermenü
Disabled JIT functionality = Deaktivierte JIT Funktionalität

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -323,6 +323,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Crear/Abrir archivo "textures.i
Current = Actual
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Herramientas de desarrollo
DevMenu = DevMenu
Disabled JIT functionality = Desactivar funcionalidad JIT

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Crear/Abrir archivo textures.in
Current = Actual
Debug overlay = Debug overlay
Debug stats = Estadisticas debug
Debugger = Debugger
Dev Tools = Herramientas de\ndesarrollador
DevMenu = Menú Depuración
Disabled JIT functionality = Apagar funcionalidad de JIT

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = ساختن یا باز کردن
Current = جاری کردن
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = ابزارهای توسعه
DevMenu = منوی توسعه دهنده
Disabled JIT functionality = قابلیت JIT غیر فعال

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Nykyinen
Debug overlay = Päällyksen virheenetsintä
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Kehitystökalut
DevMenu = Kehitysvalikko
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Créer/Ouvrir le fichier "textu
Current = Actuel
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Outils de développement
DevMenu = MenuDev
Disabled JIT functionality = Fonctionnalité JIT désactivée

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Actual
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Δημιουργία/Άνοιγ
Current = Τρέχον
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Εργαλεία ανάπτυξης
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Kreiraj/Otvori textures.ini dat
Current = Trenutačno
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Razvojni alati
DevMenu = DevMenu
Disabled JIT functionality = Isključena JIT funkcionalnost

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = textures.ini fájl készítése
Current = Jelenlegi
Debug overlay = Hibakereső overlay
Debug stats = Hibakereső statisztikák
Debugger = Debugger
Dev Tools = Fejlesztői eszközök
DevMenu = DevMenu
Disabled JIT functionality = Kikapcsolt JIT funkcionalitások

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Buat/Buka file textures.ini unt
Current = Saat ini
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Alat pengembang
DevMenu = Menu pengembang
Disabled JIT functionality = Fungsi JIT dinonaktifkan

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Crea/Apri il file textures.ini
Current = Corrente
Debug overlay = Debug dell'overlay
Debug stats = Statistiche debug
Debugger = Debugger
Dev Tools = Strumenti di sviluppo
DevMenu = MenuSvil
Disabled JIT functionality = Funzionalità JIT Disattivata

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = 現在のゲームの textures.
Current = 現在
Debug overlay = デバッグオーバーレイ
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = 開発用ツール
DevMenu = 開発者用メニュー
Disabled JIT functionality = 無効化するJIT機能

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Saiki
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -299,6 +299,7 @@ Create/Open textures.ini file for current game = 현재 게임에 대한 texture
Current = 현재
Debug overlay = 디버그 오버레이
Debug stats = 디버그 통계
Debugger = Debugger
Dev Tools = 개발 도구
DevMenu = 개발메뉴
Disabled JIT functionality = 비활성화된 JIT 기능

View File

@ -313,6 +313,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = ສ້າງ/ເປີດໄຟ
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Alat pembangunan
DevMenu = DevMenu
Disabled JIT functionality = Fungsi JIT yang dilumpuhkan

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = textures.ini-bestand voor huidi
Current = Huidige
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Ontwikkelingstools
DevMenu = Ontwikkelaarsmenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Stwórz/otwórz plik textures.i
Current = Obecny
Debug overlay = Nakładka debugowania
Debug stats = Statystyki debugowania
Debugger = Debugger
Dev Tools = Narzędzia Developerskie
DevMenu = Menu deweloperskie
Disabled JIT functionality = Wyłącz funkcje JIT

View File

@ -323,6 +323,7 @@ Create/Open textures.ini file for current game = Criar/Abrir o arquivo textures.
Current = Atual
Debug overlay = Sobreposição do debug
Debug stats = Estatísticas do debug
Debugger = Debugger
Dev Tools = Ferramentas de desenvolvimento
DevMenu = Menu do DEV
Disabled JIT functionality = Funcionalidade do JIT desativada

View File

@ -321,6 +321,7 @@ Create/Open textures.ini file for current game = Criar/Abrir o ficheiro textures
Current = Atual
Debug overlay = Sobreposição Debug
Debug stats = Estatísticas Debug
Debugger = Debugger
Dev Tools = Ferramentas de desenvolvedor
DevMenu = Menu de Desenvolvedor
Disabled JIT functionality = Funcionalidade do JIT desabilitada

View File

@ -298,6 +298,7 @@ Create/Open textures.ini file for current game = Create/Open textures.ini file f
Current = Current
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Development tools
DevMenu = DevMenu
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Создать/открыть
Current = Текущий
Debug overlay = Оверлей отладки
Debug stats = Статистика отладки
Debugger = Debugger
Dev Tools = Инструменты разработчика
DevMenu = Меню разраб.
Disabled JIT functionality = Отключение функционала JIT

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Skapa/öppna textures.ini-filen
Current = Aktuellt
Debug overlay = Debug-overlay
Debug stats = Debug-statistik
Debugger = Debugger
Dev Tools = Utvecklingsverktyg
DevMenu = DevMenu
Disabled JIT functionality = Avstängd JIT-funktionalitet

View File

@ -298,6 +298,7 @@ Create/Open textures.ini file for current game = Gumawa/Buksan ang textures.ini
Current = Kasalukuyan
Debug overlay = Debug overlay
Debug stats = Mga istatistika ng pag-debug
Debugger = Debugger
Dev Tools = Mga Dev tools
DevMenu = DevMenu
Disabled JIT functionality = Na-disable ang functionality ng JIT

View File

@ -300,6 +300,7 @@ Current = ค่าดั้งเดิม
Current log file = ไฟล์บันทึกค่าในตอนนี้
Debug overlay = ตัวแสดงช่วยแก้ไขบั๊ก
Debug stats = สถานะการแก้ไขจุดบกพร่อง
Debugger = Debugger
Dev Tools = เครื่องมือนักพัฒนา
DevMenu = เมนูผู้พัฒนา
Disabled JIT functionality = ปิดฟังก์ชั่นการทำงานของระบบ JIT

View File

@ -299,6 +299,7 @@ Create/Open textures.ini file for current game = Şu anki oyun için textures.in
Current = Şimdi
Debug overlay = Hata ayıklama yer paylaşımı
Debug stats = Hata ayıklama istatistikleri
Debugger = Debugger
Dev Tools = Geliştirme araçları
DevMenu = Geliştirici Menüsü
Disabled JIT functionality = JIT işlevselliğini devre dışı bırakın

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Створити/Відкрит
Current = Поточний
Debug overlay = Налагодження накладання
Debug stats = Статистика налагодження
Debugger = Debugger
Dev Tools = Інструменти розробника
DevMenu = Меню розроб.
Disabled JIT functionality = Вимкнений функціонал JIT

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = Tạo/Mở tệp textures.ini c
Current = Hiện tại
Debug overlay = Debug overlay
Debug stats = Debug stats
Debugger = Debugger
Dev Tools = Công cụ NPH
DevMenu = Menu NPH
Disabled JIT functionality = Disabled JIT functionality

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = 创建/打开当前游戏的tex
Current = 当前
Debug overlay = 调试叠加层
Debug stats = 调试统计
Debugger = Debugger
Dev Tools = 开发者工具
DevMenu = 开发者菜单
Disabled JIT functionality = 已禁用的JIT功能

View File

@ -297,6 +297,7 @@ Create/Open textures.ini file for current game = 為目前遊戲建立/開啟 te
Current = 目前
Debug overlay = 偵錯覆疊
Debug stats = 偵錯統計資料
Debugger = Debugger
Dev Tools = 開發工具
DevMenu = 開發選單
Disabled JIT functionality = 停用 JIT 功能

@ -1 +1 @@
Subproject commit 7648485f14e8e5ee45e8e39b1eb4d3206dbd405a
Subproject commit f3271af11ab8591164b871e36520a7210964f3f6