Wii mote Controller Configuration Dolphin

Hey guys,

is there any way to emulate in dolphin the wiimote controller using another controller, for instance the PS3 controller?
I’ve been trying to get around the file “Wii Remote with MotionPlus Pointing.ini” configuration but no luck. The Gamecube settings are just fine, and the Wii games that support the GC controller are the only games where actually the PS3 controller works, besides of course, the GC games themselves.

Thanks
Gonza

SOLVED:
Use the file WiimoteNew.ini

Here’s my schema for PS3 controller config working properly also with Nunchuk:

[Wiimote1]
Device = evdev/0/Sony PLAYSTATION(R)3 Controller
Source = 1
D-Pad/Up = Button 13
D-Pad/Down = Button 14
D-Pad/Left = Button 15
D-Pad/Right = Button 16
Buttons/A = Button 1
Buttons/B = Button 0
Buttons/1 = Button 2
Buttons/2 = Button 3
Buttons/- = Button 7
Buttons/+ = Button 5
Buttons/Home = Button 10
IR/Height = 100.000000
IR/Up = Axis 1-
IR/Down = Axis 1+
IR/Left = Axis 0-
IR/Right = Axis 1+
Swing/Up = Axis 4-
Swing/Down = Axis 4+
Swing/Left = Axis 3-
Swing/Right = Axis 3+
Swing/Forward =
Swing/Backward =
Tilt/Forward = Button 12
Tilt/Backward = Button 12
Tilt/Left = Button 12
Tilt/Right = Button 12
Shake/X =
Shake/Y =
Shake/Z =
Extension = Nunchuk
Nunchuk/Buttons/C = Button 4
Nunchuk/Buttons/Z = Button 6
Nunchuk/Stick/Up = Axis 1-
Nunchuk/Stick/Down = Axis 1+
Nunchuk/Stick/Left = Axis 0-
Nunchuk/Stick/Right = Axis 0+
Nunchuk/Swing/Left =
Nunchuk/Swing/Right =
Nunchuk/Tilt/Forward =
Nunchuk/Tilt/Backward =
Nunchuk/Tilt/Left =
Nunchuk/Tilt/Right =
Nunchuk/Shake/X = Button 11
Nunchuk/Shake/Y = Button 11
Nunchuk/Shake/Z = Button 11
Options/Background Input = 1.000000
Classic/Buttons/A = Button 1
Classic/Buttons/B = Button 0
Classic/Buttons/X = Button 3
Classic/Buttons/Y = Button 2
Classic/Buttons/ZL = Button 9
Classic/Buttons/ZR = Button 10
Classic/Buttons/- = Button 6
Classic/Buttons/+ = Button 7
Classic/Buttons/Home = Button 8
Classic/Left Stick/Up = Axis 1-
Classic/Left Stick/Down = Axis 1+
Classic/Left Stick/Left = Axis 0-
Classic/Left Stick/Right = Axis 0+
Classic/Right Stick/Up = Axis 4-
Classic/Right Stick/Down = Axis 4+
Classic/Right Stick/Left = Axis 3-
Classic/Right Stick/Right = Axis 3+
Classic/Triggers/L = Button 4
Classic/Triggers/R = Button 5
Classic/Triggers/L-Analog = Axis 2-+
Classic/Triggers/R-Analog = Axis 5-+
Classic/D-Pad/Up = Axis 7-
Classic/D-Pad/Down = Axis 7+
Classic/D-Pad/Left = Axis 6-
Classic/D-Pad/Right = Axis 6+

Great thanks thanks for posting your solution. Down the road I can program an auto input script that will auto configure controllers, but atm duckstations standalone auto input is in priority. Dolphin Wii auto input config will probably be lower priority since it’s quite a little more complex than most configurations code wise.

1 Like

Hey Langerz82,
do you know how to change discs in dolphin emuelec no-gui?
For instance with Resident Evil Zero or 4?

In /storage/.config/emuelec/configs/dolphin-emu/dolphin.ini under “[Core]”, try adding:

AutoDiscChange = true

edit: Apprently you have to create a m3u file of the amount of discs and pass that to the dolphin standalone executable as well. So you might have to edit dolphin.sh file to enable this feature.

more info:

yeah, AutoDiscChange = true doesn’t work. Already tried it before posting.

m3u is not an extension available in emuelec screen.

If the extension is alowed and shows up, perhaps the command line call is the same:

Dolphin -e “…\game.m3u”

How can we put he m3u file extensions allowed in emuelec menu?

Gonza

Hey man, /storage/.config/emulationstation/es_systems.cfg the entry gamecube should have allowed extensions and just add “.m3u”. It would be great if dolphin auto detected multiple game discs. If I’m motivated enough I will take a look at the code and maybe add the feature.

Thanks, I’ll do some tests later and retrieve back if it worked
Gonza

I have started a change that is untested. Basically if the file has “disc 1” in it then it’s meant to look for extra files with “disc 2” and so on. I might need to make a few extra changes, but heres what I got so far.

See:

Hey Josh,

m3u works like a charm!
But you still need to have AutoDiscChange = true configured in dolphin.ini under “[Core]”

Dolphin is almost great on emuelec, for me two things missing:

1 - the auto disk change without the m3u - not critical since we have a workaround

2 - per Game specific Settings are not being loaded when loading the game, therefore it doesn’t override the Dolphin.ini base configuration for the game specifically. For instance, the game Eternal Darkness we need to set GPUDeterminismMode to ‘fake completion’. This is already defined on the GED.ini file, that relates to Eternal Darkness game specific settings

How can I test your script changes, meaning, where does Boot.cpp goes in emuelec filesystem?

Thanks
Gonza

Hey, for my changes to be included in emuelec, the package.mk for dolphinSA needs to be updated.
So in the project EmuELEC/packages/sx05re/emulators/dolphinSA/package.mk, the following needs to be updated to point to my fix.

PKG_VERSION="4386d607020651eb8f534cdb2bb721bf45bfeb7a"
...
PKG_SITE="https://github.com/Langerz82/dolphin"

I’m compiling the changes as we speak so hopefully it works without error. Ugh do you know any games that ask to switch discs straight away for testing?

Here’s a save file for Resident Evil Zero (EUROPE) at the end of Disc 1. You just need to go up to the last floor (round circle in the map) and attach the 3 plates you have on Inventory.

https://we.tl/t-jGWDfokC6v

I’ll test the changes and let you know how I go. If I can get it working ill forward you the updated pkg version.

I created a working PR it’s still needs to be tested more, but from what I’ve checked it should work ok. It basically searches for files that match when labelled “Game X Disc 1”, “Game X Disc 2” etc.

Here is the updated package.mk for DolphinSA for EmuELEC:
file: EmuELEC/packages/sx05re/emulators/dolphinSA/package.mk

# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2020-present Shanti Gilbert (https://github.com/shantigilbert)

PKG_NAME="dolphinSA"
PKG_VERSION="1b6a69e249dc53ddfc46d4b3f8e00d08e78f35ea"
PKG_ARCH="aarch64"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/Langerz82/dolphin"
PKG_URL="$PKG_SITE.git"
PKG_DEPENDS_TARGET="toolchain qt-everywhere libevdev"
PKG_LONGDESC="Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements. "
PKG_BUILD_FLAGS="-lto"
PKG_GIT_CLONE_BRANCH="multidisc_search"

PKG_CMAKE_OPTS_TARGET=" -DENABLE_MULTIDISC=ON -DENABLE_LTO=ON -DDISTRIBUTOR='EmuELEC' -DBUILD_SHARED_LIBS=OFF -DTHREADS_PTHREAD_ARG=OFF -DENABLE_FBDEV=ON -DENABLE_EGL=ON -DENABLE_X11=OFF -DENABLE_NOGUI=ON -DUSE_DISCORD_PRESENCE=OFF -DCMAKE_BUILD_TYPE=Release"

makeinstall_target() {
export CXXFLAGS="`echo $CXXFLAGS | sed -e "s|-O.|-O3|g"`"
mkdir -p $INSTALL/usr/bin
cp -rf $PKG_BUILD/.${TARGET_NAME}/Binaries/dolphin-emu-nogui $INSTALL/usr/bin
cp -rf $PKG_DIR/scripts/* $INSTALL/usr/bin

mkdir -p $INSTALL/usr/config/emuelec/configs/dolphin-emu
cp -rf $PKG_BUILD/Data/Sys/* $INSTALL/usr/config/emuelec/configs/dolphin-emu
cp -rf $PKG_DIR/config/* $INSTALL/usr/config/emuelec/configs/dolphin-emu
}

You will need to rebuild the EmuELEC project in order for it to work.
See:

Hi Josh,

summarising the steps for testing:
1- Replace the contents of the EmuELEC/packages/sx05re/emulators/dolphinSA/package.mk
with:

# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright (C) 2020-present Shanti Gilbert (https://github.com/shantigilbert)

PKG_NAME="dolphinSA"
PKG_VERSION="1b6a69e249dc53ddfc46d4b3f8e00d08e78f35ea"
PKG_ARCH="aarch64"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/Langerz82/dolphin"
PKG_URL="$PKG_SITE.git"
PKG_DEPENDS_TARGET="toolchain qt-everywhere libevdev"
PKG_LONGDESC="Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements. "
PKG_BUILD_FLAGS="-lto"
PKG_GIT_CLONE_BRANCH="multidisc_search"

PKG_CMAKE_OPTS_TARGET=" -DENABLE_MULTIDISC=ON -DENABLE_LTO=ON -DDISTRIBUTOR='EmuELEC' -DBUILD_SHARED_LIBS=OFF -DTHREADS_PTHREAD_ARG=OFF -DENABLE_FBDEV=ON -DENABLE_EGL=ON -DENABLE_X11=OFF -DENABLE_NOGUI=ON -DUSE_DISCORD_PRESENCE=OFF -DCMAKE_BUILD_TYPE=Release"

makeinstall_target() {
export CXXFLAGS="`echo $CXXFLAGS | sed -e "s|-O.|-O3|g"`"
mkdir -p $INSTALL/usr/bin
cp -rf $PKG_BUILD/.${TARGET_NAME}/Binaries/dolphin-emu-nogui $INSTALL/usr/bin
cp -rf $PKG_DIR/scripts/* $INSTALL/usr/bin

mkdir -p $INSTALL/usr/config/emuelec/configs/dolphin-emu
cp -rf $PKG_BUILD/Data/Sys/* $INSTALL/usr/config/emuelec/configs/dolphin-emu
cp -rf $PKG_DIR/config/* $INSTALL/usr/config/emuelec/configs/dolphin-emu
}

2 - Rebuild Emuelec. How to do this?

Thanks
Gonza

Hey, to rebuild EmuELEC you need a linux OS like Ubuntu, and the build steps are here:

I’m thinking I might create a script for EmuELEC which builds an m3u file for you and loads it into the executable. That way it can work for dreamcast also.

I’m sorry, Josh.
Can’t compile it then. Don’t have a Ubuntu OS :S

Gonza