summaryrefslogtreecommitdiff
path: root/Source/Android/app/src/main/java
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2026-02-07 11:03:11 +0100
committerJordan Woyak <jordan.woyak@gmail.com>2026-02-15 23:13:18 -0600
commit051133787e77a154c83fcf54c7acc83b76fe7d81 (patch)
treec89fd81c6dccda13bbdd9c931465d43d55e58e7d /Source/Android/app/src/main/java
parentc28ec7a6d33fdbfe1c40646339eb975be6292647 (diff)
Android: Add Triforce Baseboard
This lets users select Triforce Baseboard for SI and SP1. Limitations: * The test, service and coin buttons can be bound to gamepads and other physical inputs, but aren't available in the touch input overlay. * The IP redirections are exposed to the user as a raw string rather than a table like in DolphinQt.
Diffstat (limited to 'Source/Android/app/src/main/java')
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/StringSetting.kt6
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt14
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlay.kt8
3 files changed, 24 insertions, 4 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/StringSetting.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/StringSetting.kt
index 29640aa92f..c4f1107bcd 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/StringSetting.kt
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/model/StringSetting.kt
@@ -69,6 +69,12 @@ enum class StringSetting(
""
),
MAIN_WFS_PATH(Settings.FILE_DOLPHIN, Settings.SECTION_INI_GENERAL, "WFSPath", ""),
+ MAIN_TRIFORCE_IP_REDIRECTIONS(
+ Settings.FILE_DOLPHIN,
+ Settings.SECTION_INI_CORE,
+ "TriforceIPRedirections",
+ "0.0.0.0/0=127.0.0.1"
+ ),
GFX_ENHANCE_POST_SHADER(
Settings.FILE_GFX,
Settings.SECTION_GFX_ENHANCEMENTS,
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt
index 714ec84f9f..1f68bbbd1a 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/settings/ui/SettingsFragmentPresenter.kt
@@ -1276,7 +1276,17 @@ class SettingsFragmentPresenter(
}
private fun addSerialPortSubSettings(sl: ArrayList<SettingsItem>, serialPort1Type: Int) {
- if (serialPort1Type == 10) {
+ if (serialPort1Type == 6) {
+ // Triforce Baseboard
+ sl.add(
+ InputStringSetting(
+ context,
+ StringSetting.MAIN_TRIFORCE_IP_REDIRECTIONS,
+ R.string.triforce_ip_redirections,
+ 0
+ )
+ )
+ } else if (serialPort1Type == 10) {
// Broadband Adapter (XLink Kai)
sl.add(HyperLinkHeaderSetting(context, R.string.xlink_kai_guide_header, 0))
sl.add(
@@ -2352,7 +2362,7 @@ class SettingsFragmentPresenter(
private fun addGcPadSubSettings(sl: ArrayList<SettingsItem>, gcPadNumber: Int, gcPadType: Int) {
when (gcPadType) {
- 6, 8, 9, 10 -> {
+ 6, 8, 9, 10, 11 -> {
// Emulated
val gcPad = EmulatedController.getGcPad(gcPadNumber)
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlay.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlay.kt
index 7964cc1ebc..3d991fed1e 100644
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlay.kt
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlay.kt
@@ -2285,6 +2285,7 @@ class InputOverlay(context: Context?, attrs: AttributeSet?) : SurfaceView(contex
const val OVERLAY_NONE = 5
private const val DISABLED_GAMECUBE_CONTROLLER = 0
private const val EMULATED_GAMECUBE_CONTROLLER = 6
+ private const val EMULATED_AM_BASEBOARD = 11
private const val GAMECUBE_ADAPTER = 12
// Buttons that have special positions in Wiimote only
@@ -2337,8 +2338,11 @@ class InputOverlay(context: Context?, attrs: AttributeSet?) : SurfaceView(contex
if (controllerIndex in 0 until 4) {
// GameCube controller
- if (getSettingForSIDevice(controllerIndex).int == 6)
- return OVERLAY_GAMECUBE
+ when (getSettingForSIDevice(controllerIndex).int) {
+ EMULATED_GAMECUBE_CONTROLLER, EMULATED_AM_BASEBOARD -> {
+ return OVERLAY_GAMECUBE
+ }
+ }
} else if (controllerIndex in 4 until 8) {
// Wii Remote
val wiimoteIndex = controllerIndex - 4