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.
-
+
@@ -6074,7 +6074,7 @@ Please, only use this feature to install updates and DLC.
-
+
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.
-
+
@@ -6111,7 +6111,7 @@ Si us plau, utilitzi aquesta funció només per a instal·lar actualitzacions i
-
+
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.
-
+
@@ -6095,7 +6095,7 @@ Tuto funkci prosím používejte pouze k instalaci aktualizací a DLC.
-
+
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.
-
+
@@ -6101,7 +6101,7 @@ Please, only use this feature to install updates and DLC.
-
+
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.
-
+
@@ -6121,7 +6121,7 @@ Bitte nutze diese Funktion nur zum Installieren von Updates und DLC.
-
+
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.
-
+
@@ -6097,7 +6097,7 @@ Please, only use this feature to install updates and DLC.
-
+
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.
-
+
Editor de Mii
@@ -6167,7 +6167,7 @@ Por favor, utiliza esta función sólo para instalar actualizaciones y DLCs.
-
+
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.
-
+
Édition de Mii
@@ -6160,7 +6160,7 @@ Veuillez n'utiliser cette fonctionnalité que pour installer des mises à j
-
+
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 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 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.
-
+
Ubah Mii
@@ -6154,7 +6154,7 @@ Please, only use this feature to install updates and DLC.
-
+
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.
-
+
@@ -6130,7 +6130,7 @@ Configurazione > Web.
-
+
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.
-
+
@@ -6116,7 +6116,7 @@ Please, only use this feature to install updates and DLC.
-
+
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.
-
+
@@ -6115,7 +6115,7 @@ Please, only use this feature to install updates and DLC.
-
+
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.
-
+
@@ -6120,7 +6120,7 @@ Bruk kun denne funksjonen til å installere oppdateringer og DLC.
-
+
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.
-
+
@@ -6108,7 +6108,7 @@ Gebruik deze functie alleen om updates en DLC te installeren.
-
+
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.
-
+
@@ -6111,7 +6111,7 @@ Proszę, używaj tej funkcji tylko do instalowania łatek i DLC.
-
+
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.
-
+
Editar Mii
@@ -6169,7 +6169,7 @@ Por favor, use esse recurso apenas para instalar atualizações e DLCs.
-
+
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.
-
+
Editar Mii
@@ -6152,7 +6152,7 @@ Por favor, use esse recurso apenas para instalar atualizações e DLC.
-
+
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 редактор
@@ -6165,8 +6165,8 @@ Please, only use this feature to install updates and DLC.
-
- Mii Edit 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.
-
+
@@ -6090,7 +6090,7 @@ Please, only use this feature to install updates and DLC.
-
+
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.
-
+
@@ -6112,7 +6112,7 @@ Lütfen bu özelliği sadece güncelleme ve DLC yüklemek için kullanın.
-
+
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.
-
+
@@ -6124,7 +6124,7 @@ Please, only use this feature to install updates and DLC.
-
+
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
-
+
@@ -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
-
+
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.
-
+
@@ -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
-
+
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 Editor
@@ -6165,8 +6165,8 @@ Please, only use this feature to install updates and DLC.
-
- Mii Edit 小程序
+
+ 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 Editor
@@ -6161,7 +6161,7 @@ Please, only use this feature to install updates and DLC.
-
+
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);
}