summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2025-11-30 18:26:18 +0100
committerGitHub <noreply@github.com>2025-11-30 18:26:18 +0100
commite27ec97b15012a0938e82d1e3e7a6dd33ee033b8 (patch)
tree2faacac41012c3abca81c0be3168580c74bb3f38 /Source/Core
parent0c0cbbf57294ae8aa389454e9047f17dbc6ef39c (diff)
parent19a1ee30644c6f85b1030120cf2aefcb39ba6b30 (diff)
Merge pull request #14180 from jordan-woyak/mgba-link-fix
GBACore: Fix Pokemon GBA link.
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/HW/GBACore.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/Source/Core/Core/HW/GBACore.cpp b/Source/Core/Core/HW/GBACore.cpp
index 272b458fc5..c0dc6de0aa 100644
--- a/Source/Core/Core/HW/GBACore.cpp
+++ b/Source/Core/Core/HW/GBACore.cpp
@@ -387,16 +387,18 @@ void Core::SetSIODriver()
return;
m_sio_driver.core = this;
- m_sio_driver.init = [](GBASIODriver* driver) {
- static_cast<SIODriver*>(driver)->core->m_link_enabled = true;
- return true;
- };
- m_sio_driver.handlesMode = [](GBASIODriver* driver, GBASIOMode mode) {
- return mode == GBA_SIO_JOYBUS;
- };
+ m_sio_driver.init = [](GBASIODriver*) { return true; };
m_sio_driver.deinit = [](GBASIODriver* driver) {
static_cast<SIODriver*>(driver)->core->m_link_enabled = false;
};
+ m_sio_driver.reset = [](GBASIODriver* driver) {
+ static_cast<SIODriver*>(driver)->core->m_link_enabled = false;
+ };
+ m_sio_driver.setMode = [](GBASIODriver* driver, GBASIOMode mode) {
+ static_cast<SIODriver*>(driver)->core->m_link_enabled = mode == GBA_SIO_JOYBUS;
+ };
+ m_sio_driver.handlesMode = [](GBASIODriver*, GBASIOMode mode) { return mode == GBA_SIO_JOYBUS; };
+ m_sio_driver.connectedDevices = [](GBASIODriver*) { return 1; };
GBASIOSetDriver(&static_cast<::GBA*>(m_core->board)->sio, &m_sio_driver);
}