diff options
author | Zephyron <zephyron@citron-emu.org> | 2025-01-17 19:28:11 +1000 |
---|---|---|
committer | Zephyron <zephyron@citron-emu.org> | 2025-01-17 19:28:11 +1000 |
commit | 382999025af8a95aa791fd00c24f24ecd54596d4 (patch) | |
tree | d4ff9562f46bad570e2fc814e4be727a5ab04ca3 | |
parent | ee0beea82a999f6a46f7f980c700867f860905f1 (diff) |
shader_recompiler: Add stubs for CSM/FCSM flow test conditions
Add stub implementations for previously unhandled flow test conditions in the
shader recompiler's IR emitter. These conditions were previously throwing
"Not Implemented" exceptions when encountered.
The following flow test cases are now stubbed:
- FCSM_TR (Fragment Shader Coarse/Fine Mode Test and Reject)
- CSM_TA (Coarse/Fine Mode Test Accept)
- CSM_TR (Coarse/Fine Mode Test and Reject)
- CSM_MX (Coarse/Fine Mode Maximum)
- FCSM_TA (Fragment Shader Coarse/Fine Mode Test Accept)
- FCSM_MX (Fragment Shader Coarse/Fine Mode Maximum)
Currently these stubs:
1. Return false (ir.Imm1(false)) as a placeholder value
2. Log a warning message indicating the stub
3. Allow shaders using these conditions to compile rather than fail
This is a step toward proper implementation of coarse/fine mode shader
operations. The stubs prevent crashes while making it clear which code paths
need full implementation.
Technical notes:
- Removed the previous FCSM_TR implementation that used flag operations
- Added consistent warning messages for tracking stub usage
- Kept within the existing GetFlowTest switch statement structure
30 files changed, 128 insertions, 112 deletions
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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6074,7 +6074,7 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Mii تحرير التطبيق الصغير</translation> </message> <message> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6111,7 +6111,7 @@ Si us plau, utilitzi aquesta funció només per a instal·lar actualitzacions i </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6095,7 +6095,7 @@ Tuto funkci prosím používejte pouze k instalaci aktualizací a DLC.</translat </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</translati </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6101,7 +6101,7 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</translation </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6121,7 +6121,7 @@ Bitte nutze diese Funktion nur zum Installieren von Updates und DLC.</translatio </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Mii-Edit-Applet</translation> </message> <message> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6097,7 +6097,7 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</translation> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation>Editor de Mii</translation> </message> <message> @@ -6167,7 +6167,7 @@ Por favor, utiliza esta función sólo para instalar actualizaciones y DLCs.</tr </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Applet de Editor de Mii</translation> </message> <message> 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. </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation>Édition de Mii</translation> </message> <message> @@ -6160,7 +6160,7 @@ Veuillez n'utiliser cette fonctionnalité que pour installer des mises à j </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Applet de l'éditeur Mii</translation> </message> <message> 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.</translation> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation>Mii szerkesztés</translation> </message> <message> @@ -6134,7 +6134,7 @@ Kérjük, csak frissítések és DLC-k telepítéséhez használd ezt a funkció </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Mii szerkesztő applet</translation> </message> <message> 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.</translation> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation>Ubah Mii</translation> </message> <message> @@ -6154,7 +6154,7 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</trans </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6130,7 +6130,7 @@ Configurazione &gt; Web.</translation> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Editor dei Mii</translation> </message> <message> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6116,7 +6116,7 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Mii 編集アプレット</translation> </message> <message> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6115,7 +6115,7 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</translatio </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6120,7 +6120,7 @@ Bruk kun denne funksjonen til å installere oppdateringer og DLC.</translation> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</translation> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6108,7 +6108,7 @@ Gebruik deze functie alleen om updates en DLC te installeren.</translation> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</translation> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6111,7 +6111,7 @@ Proszę, używaj tej funkcji tylko do instalowania łatek i DLC.</translation> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</translatio </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation>Editar Mii</translation> </message> <message> @@ -6169,7 +6169,7 @@ Por favor, use esse recurso apenas para instalar atualizações e DLCs.</transla </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Miniaplicativo Editor de Mii</translation> </message> <message> 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.</translatio </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation>Editar Mii</translation> </message> <message> @@ -6152,7 +6152,7 @@ Por favor, use esse recurso apenas para instalar atualizações e DLC.</translat </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Applet Editor de Miis</translation> </message> <message> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation>Mii редактор</translation> </message> <message> @@ -6165,8 +6165,8 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> - <translation>Mii Edit Applet</translation> + <source>Mii Editor Applet</source> + <translation>Mii Editor Applet</translation> </message> <message> <location filename="../../src/citron/main.cpp" line="4452"/> 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.</tran </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6090,7 +6090,7 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</tra </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6112,7 +6112,7 @@ Lütfen bu özelliği sadece güncelleme ve DLC yüklemek için kullanın.</tran </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -6124,7 +6124,7 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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 </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -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 </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> + <source>Mii Editor</source> <translation type="unfinished"/> </message> <message> @@ -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 </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation type="unfinished"/> </message> <message> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> - <translation>Mii Edit</translation> + <source>Mii Editor</source> + <translation>Mii Editor</translation> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="38"/> @@ -6165,8 +6165,8 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> - <translation>Mii Edit 小程序</translation> + <source>Mii Editor Applet</source> + <translation>Mii Editor 小程序</translation> </message> <message> <location filename="../../src/citron/main.cpp" line="4452"/> 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.</source> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="37"/> - <source>Mii Edit</source> - <translation>Mii Edit</translation> + <source>Mii Editor</source> + <translation>Mii Editor</translation> </message> <message> <location filename="../../src/citron/configuration/shared_translation.cpp" line="38"/> @@ -6161,7 +6161,7 @@ Please, only use this feature to install updates and DLC.</source> </message> <message> <location filename="../../src/citron/main.cpp" line="4451"/> - <source>Mii Edit Applet</source> + <source>Mii Editor Applet</source> <translation>Mii 編輯器小程式</translation> </message> <message> 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<TranslationMap> 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); } |