From e039a0ee9406fd0d18667cc470d34e03cadfe86c Mon Sep 17 00:00:00 2001 From: QuackingCanary Date: Wed, 10 May 2023 00:18:37 +0200 Subject: [PATCH] Add RAM indicator --- .../java/emu/skyline/EmulationActivity.kt | 13 ++++++------ app/src/main/res/layout/emu_activity.xml | 20 ++----------------- 2 files changed, 8 insertions(+), 25 deletions(-) diff --git a/app/src/main/java/emu/skyline/EmulationActivity.kt b/app/src/main/java/emu/skyline/EmulationActivity.kt index 81b4fad9..10ae2682 100644 --- a/app/src/main/java/emu/skyline/EmulationActivity.kt +++ b/app/src/main/java/emu/skyline/EmulationActivity.kt @@ -61,6 +61,7 @@ import emu.skyline.utils.GpuDriverHelper import emu.skyline.utils.serializable import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch +import java.io.File import java.nio.ByteBuffer import java.nio.ByteOrder import java.util.concurrent.FutureTask @@ -170,6 +171,7 @@ class EmulationActivity : AppCompatActivity(), SurfaceHolder.Callback, View.OnTo var fps : Int = 0 var averageFrametime : Float = 0.0f var averageFrametimeDeviation : Float = 0.0f + var ramUsage : Long = 0 /** * Writes the current performance statistics into [fps], [averageFrametime] and [averageFrametimeDeviation] fields @@ -338,7 +340,9 @@ class EmulationActivity : AppCompatActivity(), SurfaceHolder.Callback, View.OnTo postDelayed(object : Runnable { override fun run() { updatePerformanceStatistics() - text = "$fps FPS\n${"%.1f".format(averageFrametime)}±${"%.2f".format(averageFrametimeDeviation)}ms" + // We read the `VmRSS` value from the kernel + ramUsage = File("/proc/self/statm").readLines()[0].split(' ')[1].toLong() * 4096 / 1000000 + text = "$fps FPS • $ramUsage MB" postDelayed(this, 250) } }, 250) @@ -371,12 +375,7 @@ class EmulationActivity : AppCompatActivity(), SurfaceHolder.Callback, View.OnTo } binding.onScreenPauseToggle.apply { - isGone = binding.onScreenControllerView.isGone - if(!emulationSettings.showPauseButton) { - binding.onScreenPauseToggle.visibility = View.GONE - } else { - binding.onScreenPauseToggle.visibility = View.VISIBLE - } + isGone = !emulationSettings.showPauseButton setOnClickListener { if (isEmulatorPaused) { resumeEmulator() diff --git a/app/src/main/res/layout/emu_activity.xml b/app/src/main/res/layout/emu_activity.xml index 96b14d57..6e7c6e92 100644 --- a/app/src/main/res/layout/emu_activity.xml +++ b/app/src/main/res/layout/emu_activity.xml @@ -40,22 +40,7 @@ android:layout_marginLeft="@dimen/onScreenItemHorizontalMargin" android:layout_marginTop="5dp" android:textColor="@color/colorPerfStatsPrimary" - tools:text="60 FPS\n16.6±0.10ms" /> - - - - + tools:text="60 FPS • 2000 MB" /> - - +