diff --git a/dist/languages/ar.ts b/dist/languages/ar.ts index b890f4f97..7fa67b876 100644 --- a/dist/languages/ar.ts +++ b/dist/languages/ar.ts @@ -409,7 +409,7 @@ This would ban both their forum username and their IP address. - Mii Edit + Mii Editor @@ -6074,7 +6074,7 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet + Mii Editor Applet Mii تحرير التطبيق الصغير diff --git a/dist/languages/ca.ts b/dist/languages/ca.ts index 474332d76..1d8720c91 100644 --- a/dist/languages/ca.ts +++ b/dist/languages/ca.ts @@ -407,7 +407,7 @@ This would ban both their forum username and their IP address. - Mii Edit + Mii Editor @@ -6111,7 +6111,7 @@ Si us plau, utilitzi aquesta funció només per a instal·lar actualitzacions i - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/cs.ts b/dist/languages/cs.ts index cf18ed420..99c783a2e 100644 --- a/dist/languages/cs.ts +++ b/dist/languages/cs.ts @@ -407,7 +407,7 @@ This would ban both their forum username and their IP address. - Mii Edit + Mii Editor @@ -6095,7 +6095,7 @@ Tuto funkci prosím používejte pouze k instalaci aktualizací a DLC. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/da.ts b/dist/languages/da.ts index c5b86b640..6507d5dba 100644 --- a/dist/languages/da.ts +++ b/dist/languages/da.ts @@ -409,7 +409,7 @@ Dette vil bandlyse både vedkommendes forum-brugernavn og IP-adresse. - Mii Edit + Mii Editor @@ -6101,7 +6101,7 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/de.ts b/dist/languages/de.ts index a2497ff7e..0fce2b3ba 100644 --- a/dist/languages/de.ts +++ b/dist/languages/de.ts @@ -408,7 +408,7 @@ Dies würde deren Forum-Benutzernamen und deren IP-Adresse sperren. - Mii Edit + Mii Editor @@ -6121,7 +6121,7 @@ Bitte nutze diese Funktion nur zum Installieren von Updates und DLC. - Mii Edit Applet + Mii Editor Applet Mii-Edit-Applet diff --git a/dist/languages/el.ts b/dist/languages/el.ts index d9c6416d7..85d0dc0f1 100644 --- a/dist/languages/el.ts +++ b/dist/languages/el.ts @@ -409,7 +409,7 @@ This would ban both their forum username and their IP address. - Mii Edit + Mii Editor @@ -6097,7 +6097,7 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/es.ts b/dist/languages/es.ts index 1bb0eab54..d8c3b858d 100644 --- a/dist/languages/es.ts +++ b/dist/languages/es.ts @@ -409,7 +409,7 @@ Esto banearía su nombre del foro y su dirección IP. - Mii Edit + Mii Editor Editor de Mii @@ -6167,7 +6167,7 @@ Por favor, utiliza esta función sólo para instalar actualizaciones y DLCs. - Mii Edit Applet + Mii Editor Applet Applet de Editor de Mii diff --git a/dist/languages/fr.ts b/dist/languages/fr.ts index 6c397c7dc..9cb201f27 100644 --- a/dist/languages/fr.ts +++ b/dist/languages/fr.ts @@ -410,7 +410,7 @@ Cela bannirait à la fois son nom d'utilisateur du forum et son adresse IP. - Mii Edit + Mii Editor Édition de Mii @@ -6160,7 +6160,7 @@ Veuillez n'utiliser cette fonctionnalité que pour installer des mises à j - Mii Edit Applet + Mii Editor Applet Applet de l'éditeur Mii diff --git a/dist/languages/hu.ts b/dist/languages/hu.ts index ad654452d..06a440724 100644 --- a/dist/languages/hu.ts +++ b/dist/languages/hu.ts @@ -409,7 +409,7 @@ Ez kitiltaná a fórum felhasználóneve és az IP címe alapján. - Mii Edit + Mii Editor Mii szerkesztés @@ -6134,7 +6134,7 @@ Kérjük, csak frissítések és DLC-k telepítéséhez használd ezt a funkció - Mii Edit Applet + Mii Editor Applet Mii szerkesztő applet diff --git a/dist/languages/id.ts b/dist/languages/id.ts index f611be75d..1feca8026 100644 --- a/dist/languages/id.ts +++ b/dist/languages/id.ts @@ -409,7 +409,7 @@ Ini akan melarang nama pengguna forum mereka dan alamat IP mereka. - Mii Edit + Mii Editor Ubah Mii @@ -6154,7 +6154,7 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/it.ts b/dist/languages/it.ts index e12e40431..9d3b8a381 100644 --- a/dist/languages/it.ts +++ b/dist/languages/it.ts @@ -409,7 +409,7 @@ Questo bannerà sia il suo nome utente del forum che il suo indirizzo IP. - Mii Edit + Mii Editor @@ -6130,7 +6130,7 @@ Configurazione > Web. - Mii Edit Applet + Mii Editor Applet Editor dei Mii diff --git a/dist/languages/ja_JP.ts b/dist/languages/ja_JP.ts index 6d56078f1..7f025578b 100644 --- a/dist/languages/ja_JP.ts +++ b/dist/languages/ja_JP.ts @@ -409,7 +409,7 @@ This would ban both their forum username and their IP address. - Mii Edit + Mii Editor @@ -6116,7 +6116,7 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet + Mii Editor Applet Mii 編集アプレット diff --git a/dist/languages/ko_KR.ts b/dist/languages/ko_KR.ts index ee92addc1..ce6028fd5 100644 --- a/dist/languages/ko_KR.ts +++ b/dist/languages/ko_KR.ts @@ -409,7 +409,7 @@ This would ban both their forum username and their IP address. - Mii Edit + Mii Editor @@ -6115,7 +6115,7 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/nb.ts b/dist/languages/nb.ts index f154082dd..bb2cd8d0d 100644 --- a/dist/languages/nb.ts +++ b/dist/languages/nb.ts @@ -409,7 +409,7 @@ Dette vil bannlyse både deres forum brukernavn og deres IP adresse. - Mii Edit + Mii Editor @@ -6120,7 +6120,7 @@ Bruk kun denne funksjonen til å installere oppdateringer og DLC. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/nl.ts b/dist/languages/nl.ts index 66c6e8dc7..04e4395ca 100644 --- a/dist/languages/nl.ts +++ b/dist/languages/nl.ts @@ -409,7 +409,7 @@ Dit zou zowel hun forum gebruikersnaam als hun IP-adres verbannen. - Mii Edit + Mii Editor @@ -6108,7 +6108,7 @@ Gebruik deze functie alleen om updates en DLC te installeren. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/pl.ts b/dist/languages/pl.ts index 915af887a..2cf544da1 100644 --- a/dist/languages/pl.ts +++ b/dist/languages/pl.ts @@ -409,7 +409,7 @@ To zbanuje jego/jej nick na forum, oraz jego/jej adres IP. - Mii Edit + Mii Editor @@ -6111,7 +6111,7 @@ Proszę, używaj tej funkcji tylko do instalowania łatek i DLC. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/pt_BR.ts b/dist/languages/pt_BR.ts index 95525595c..c89f3edfd 100644 --- a/dist/languages/pt_BR.ts +++ b/dist/languages/pt_BR.ts @@ -409,7 +409,7 @@ Isto banirá tanto o nome de usuário do fórum como o endereço IP. - Mii Edit + Mii Editor Editar Mii @@ -6169,7 +6169,7 @@ Por favor, use esse recurso apenas para instalar atualizações e DLCs. - Mii Edit Applet + Mii Editor Applet Miniaplicativo Editor de Mii diff --git a/dist/languages/pt_PT.ts b/dist/languages/pt_PT.ts index 0ccf7654e..0316d45b4 100644 --- a/dist/languages/pt_PT.ts +++ b/dist/languages/pt_PT.ts @@ -409,7 +409,7 @@ Isto banirá tanto o nome de usuário do fórum como o endereço IP. - Mii Edit + Mii Editor Editar Mii @@ -6152,7 +6152,7 @@ Por favor, use esse recurso apenas para instalar atualizações e DLC. - Mii Edit Applet + Mii Editor Applet Applet Editor de Miis diff --git a/dist/languages/ru_RU.ts b/dist/languages/ru_RU.ts index 19bcb75c8..84a6f784b 100644 --- a/dist/languages/ru_RU.ts +++ b/dist/languages/ru_RU.ts @@ -409,7 +409,7 @@ This would ban both their forum username and their IP address. - Mii Edit + Mii Editor Mii редактор @@ -6165,8 +6165,8 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet - Mii Edit Applet + Mii Editor Applet + Mii Editor Applet diff --git a/dist/languages/sv.ts b/dist/languages/sv.ts index 3bca755ab..e7fc6d5d0 100644 --- a/dist/languages/sv.ts +++ b/dist/languages/sv.ts @@ -409,7 +409,7 @@ Detta kommer bannlysa både dennes användarnamn på forum samt IP-adress. - Mii Edit + Mii Editor @@ -6090,7 +6090,7 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/tr_TR.ts b/dist/languages/tr_TR.ts index b04dce1c6..7ad9a10cb 100644 --- a/dist/languages/tr_TR.ts +++ b/dist/languages/tr_TR.ts @@ -409,7 +409,7 @@ Bu işlem onların hem forum kullanıcı adını hem de IP adresini banlar. - Mii Edit + Mii Editor @@ -6112,7 +6112,7 @@ Lütfen bu özelliği sadece güncelleme ve DLC yüklemek için kullanın. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/uk.ts b/dist/languages/uk.ts index 7a654eb2a..57e5a8761 100644 --- a/dist/languages/uk.ts +++ b/dist/languages/uk.ts @@ -409,7 +409,7 @@ This would ban both their forum username and their IP address. - Mii Edit + Mii Editor @@ -6124,7 +6124,7 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/vi.ts b/dist/languages/vi.ts index 48ac970e2..72fe27df3 100644 --- a/dist/languages/vi.ts +++ b/dist/languages/vi.ts @@ -409,7 +409,7 @@ Việc này sẽ ban tên người dùng trên diễn đàn và IP của họ lu - Mii Edit + Mii Editor @@ -6117,7 +6117,7 @@ Vui lòng, chỉ sử dụng tính năng này để cài đặt các bản cập - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/vi_VN.ts b/dist/languages/vi_VN.ts index 9041fa7d6..a24345e90 100644 --- a/dist/languages/vi_VN.ts +++ b/dist/languages/vi_VN.ts @@ -409,7 +409,7 @@ This would ban both their forum username and their IP address. - Mii Edit + Mii Editor @@ -6117,7 +6117,7 @@ Vui lòng, chỉ sử dụng tính năng này để cài các bản cập nhật - Mii Edit Applet + Mii Editor Applet diff --git a/dist/languages/zh_CN.ts b/dist/languages/zh_CN.ts index 6ce517c4e..535e6ae3a 100644 --- a/dist/languages/zh_CN.ts +++ b/dist/languages/zh_CN.ts @@ -409,8 +409,8 @@ This would ban both their forum username and their IP address. - Mii Edit - Mii Edit + Mii Editor + Mii Editor @@ -6165,8 +6165,8 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet - Mii Edit 小程序 + Mii Editor Applet + Mii Editor 小程序 diff --git a/dist/languages/zh_TW.ts b/dist/languages/zh_TW.ts index c21c27797..26a27fbd2 100644 --- a/dist/languages/zh_TW.ts +++ b/dist/languages/zh_TW.ts @@ -409,8 +409,8 @@ This would ban both their forum username and their IP address. - Mii Edit - Mii Edit + Mii Editor + Mii Editor @@ -6161,7 +6161,7 @@ Please, only use this feature to install updates and DLC. - Mii Edit Applet + Mii Editor Applet Mii 編輯器小程式 diff --git a/src/android/app/src/main/java/org/citron/citron_emu/fragments/EmulationFragment.kt b/src/android/app/src/main/java/org/citron/citron_emu/fragments/EmulationFragment.kt index a01530079..d39d25898 100644 --- a/src/android/app/src/main/java/org/citron/citron_emu/fragments/EmulationFragment.kt +++ b/src/android/app/src/main/java/org/citron/citron_emu/fragments/EmulationFragment.kt @@ -10,6 +10,7 @@ import android.content.DialogInterface import android.content.pm.ActivityInfo import android.content.res.Configuration import android.net.Uri +import android.os.BatteryManager import android.os.Bundle import android.os.Handler import android.os.Looper @@ -531,59 +532,8 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback { if (emulationViewModel.emulationStarted.value && !emulationViewModel.isEmulationStopping.value ) { - val thermalStatus = when (powerManager.currentThermalStatus) { - PowerManager.THERMAL_STATUS_LIGHT -> 0.25f - PowerManager.THERMAL_STATUS_MODERATE -> 0.5f - PowerManager.THERMAL_STATUS_SEVERE -> 0.75f - PowerManager.THERMAL_STATUS_CRITICAL, - PowerManager.THERMAL_STATUS_EMERGENCY, - PowerManager.THERMAL_STATUS_SHUTDOWN -> 1.0f - else -> 0f - } - - // Get temperature from battery thermal sensor - val temperature = try { - val process = Runtime.getRuntime().exec("cat /sys/class/power_supply/battery/temp") - val reader = process.inputStream.bufferedReader() - val temp = reader.readLine().toFloat() / 10f // Convert from decidegrees to degrees - reader.close() - temp - } catch (e: Exception) { - 0f - } - - // Convert to Fahrenheit - val fahrenheit = (temperature * 9f / 5f) + 32f - - if (_binding != null) { - // Color interpolation based on temperature (green at 30°C, red at 45°C) - val normalizedTemp = ((temperature - 30f) / 15f).coerceIn(0f, 1f) - val red = (normalizedTemp * 255).toInt() - val green = ((1f - normalizedTemp) * 255).toInt() - val color = android.graphics.Color.rgb(red, green, 0) - - // Create a modern progress bar using block elements - val progressBarLength = 12 - val filledBars = (thermalStatus * progressBarLength).toInt() - val progressBar = buildString { - append("│") // Left border - repeat(filledBars) { append("█") } - repeat(progressBarLength - filledBars) { append("░") } - append("│") // Right border - - // Add percentage - append(" ") - append(String.format("%3d%%", (thermalStatus * 100).toInt())) - } - - binding.showThermalsText.setTextColor(color) - binding.showThermalsText.text = String.format( - "%s\n%.1f°C • %.1f°F", - progressBar, - temperature, - fahrenheit - ) - } + val temperature = getBatteryTemperature(requireContext()) + updateThermalOverlay(temperature) thermalStatsUpdateHandler.postDelayed(thermalStatsUpdater!!, 1000) } } @@ -595,6 +545,53 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback { } } + private fun updateThermalOverlay(temperature: Float) { + if (BooleanSetting.SHOW_THERMAL_OVERLAY.getBoolean() && + emulationViewModel.emulationStarted.value && + !emulationViewModel.isEmulationStopping.value + ) { + // Get thermal status + val thermalStatus = when (powerManager.currentThermalStatus) { + PowerManager.THERMAL_STATUS_LIGHT -> 0.25f + PowerManager.THERMAL_STATUS_MODERATE -> 0.5f + PowerManager.THERMAL_STATUS_SEVERE -> 0.75f + PowerManager.THERMAL_STATUS_CRITICAL, + PowerManager.THERMAL_STATUS_EMERGENCY, + PowerManager.THERMAL_STATUS_SHUTDOWN -> 1.0f + else -> 0f + } + + // Convert to Fahrenheit for additional info + val fahrenheit = (temperature * 9f / 5f) + 32f + + // Create progress bar using block elements + val progressBarLength = 12 + val filledBars = (thermalStatus * progressBarLength).toInt() + val progressBar = buildString { + append("│") // Left border + repeat(filledBars) { append("█") } + repeat(progressBarLength - filledBars) { append("░") } + append("│") // Right border + append(" ") + append(String.format("%3d%%", (thermalStatus * 100).toInt())) + } + + // Color interpolation based on temperature (green at 30°C, red at 45°C) + val normalizedTemp = ((temperature - 30f) / 15f).coerceIn(0f, 1f) + val red = (normalizedTemp * 255).toInt() + val green = ((1f - normalizedTemp) * 255).toInt() + val color = android.graphics.Color.rgb(red, green, 0) + + binding.showThermalsText.setTextColor(color) + binding.showThermalsText.text = String.format( + "%s\n%.1f°C • %.1f°F", + progressBar, + temperature, + fahrenheit + ) + } + } + @SuppressLint("SourceLockedOrientationActivity") private fun updateOrientation() { emulationActivity?.let { @@ -1095,4 +1092,12 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback { private val perfStatsUpdateHandler = Handler(Looper.myLooper()!!) private val thermalStatsUpdateHandler = Handler(Looper.myLooper()!!) } + + private fun getBatteryTemperature(context: Context): Float { + val batteryManager = context.getSystemService(Context.BATTERY_SERVICE) as BatteryManager + // Get temperature in tenths of a degree Celsius + val temperature = batteryManager.getIntProperty(BatteryManager.BATTERY_PROPERTY_TEMPERATURE) + // Convert to degrees Celsius + return temperature / 10.0f + } } diff --git a/src/citron/configuration/shared_translation.cpp b/src/citron/configuration/shared_translation.cpp index 0c727fb0d..393f49daf 100644 --- a/src/citron/configuration/shared_translation.cpp +++ b/src/citron/configuration/shared_translation.cpp @@ -34,7 +34,7 @@ std::unique_ptr InitializeTranslations(QWidget* parent) { INSERT(Settings, net_connect_applet_mode, tr("Net connect"), QStringLiteral()); INSERT(Settings, player_select_applet_mode, tr("Player select"), QStringLiteral()); INSERT(Settings, swkbd_applet_mode, tr("Software keyboard"), QStringLiteral()); - INSERT(Settings, mii_edit_applet_mode, tr("Mii Edit"), QStringLiteral()); + INSERT(Settings, mii_edit_applet_mode, tr("Mii Editor"), QStringLiteral()); INSERT(Settings, web_applet_mode, tr("Online web"), QStringLiteral()); INSERT(Settings, shop_applet_mode, tr("Shop"), QStringLiteral()); INSERT(Settings, photo_viewer_applet_mode, tr("Photo viewer"), QStringLiteral()); diff --git a/src/citron/main.cpp b/src/citron/main.cpp index 6a2255b22..fc221946b 100644 --- a/src/citron/main.cpp +++ b/src/citron/main.cpp @@ -4445,7 +4445,7 @@ void GMainWindow::OnMiiEdit() { auto mii_applet_nca = bis_system->GetEntry(MiiEditId, FileSys::ContentRecordType::Program); if (!mii_applet_nca) { - QMessageBox::warning(this, tr("Mii Edit Applet"), + QMessageBox::warning(this, tr("Mii Editor Applet"), tr("Mii editor is not available. Please reinstall firmware.")); return; } diff --git a/src/shader_recompiler/frontend/ir/ir_emitter.cpp b/src/shader_recompiler/frontend/ir/ir_emitter.cpp index b8bc5ea95..4a811178a 100644 --- a/src/shader_recompiler/frontend/ir/ir_emitter.cpp +++ b/src/shader_recompiler/frontend/ir/ir_emitter.cpp @@ -261,12 +261,23 @@ static U1 GetFlowTest(IREmitter& ir, FlowTest flow_test) { case FlowTest::RGT: return ir.LogicalAnd(ir.LogicalNot(ir.GetSFlag()), ir.LogicalNot(ir.GetZFlag())); case FlowTest::FCSM_TR: - return ir.LogicalAnd(ir.GetSFlag(), ir.LogicalNot(ir.GetZFlag())); + LOG_WARNING(Shader, "(STUBBED) FCSM_TR"); + return ir.Imm1(false); case FlowTest::CSM_TA: + LOG_WARNING(Shader, "(STUBBED) CSM_TA"); + return ir.Imm1(false); case FlowTest::CSM_TR: + LOG_WARNING(Shader, "(STUBBED) CSM_TR"); + return ir.Imm1(false); case FlowTest::CSM_MX: + LOG_WARNING(Shader, "(STUBBED) CSM_MX"); + return ir.Imm1(false); case FlowTest::FCSM_TA: + LOG_WARNING(Shader, "(STUBBED) FCSM_TA"); + return ir.Imm1(false); case FlowTest::FCSM_MX: + LOG_WARNING(Shader, "(STUBBED) FCSM_MX"); + return ir.Imm1(false); default: throw NotImplementedException("Flow test {}", flow_test); }