How to Install and Run Aldelaro5's Dolphin-memory-engine
#1
How to Install and Run Aldelaro5's Dolphin-memory-engine



Intro & Requirements

Aldelaro5's Dolphin-memory-engine is program that hooks to the Dolphin Emulation and allows the live view of the game's memory with features to run various data searches/scans. It supports both Mem1 and Mem2. It is a MUST HAVE if you ever plan on creating your own ASM codes via Dolphin. Dolphin does come with it's own memory viewer, but it does not have live updates.

Requirements:
You will need to have a Developer Version of Dolphin already installed. 'Stable' versions will simply not work. Here is a guide on how to install Dolphin Dev Version - http://mkwii.com/showthread.php?tid=625



Installing & Running for Windows:

NOTE: For Windows 10 or later


Download the latest version (0.9.0) of Dolphin-memory-engine - https://github.com/aldelaro5/dolphin-mem...-0.9.0.zip

Unzip the download. You will see an application called DolphinMemoryEngine.exe. This is the program.

Dolphin-memory-engine is meant to run with Dolphin in Debugger Mode. Launch Dolphin how you normally would. Once Dolphin has booted. Go to Options, then Configuration. Click on the Interface Tab. You should see a tickable box that says "Enable Debugging UI". Click in the box to checkmark it. Once it has been checkmarked. Close the Tab. You should see a myriad of new menus/items if this was your first time enabling the Debugger Mode.

Once Dolphin Debugger Mode has been enabled, launch your DolphinMemoryEngine.exe file. You should see something similar to this - http://mkwii.com/pics/screenshots/RAMViewer.png

The above pic is from an older version of the Engine, therefore you will see some slight differences.

At the top, the program should say it is hooked successfully. If not click the large Hook button. If it fails, restart both Dolphin & the Memory-engine, and try again. If the Memory-engine still fails to hook, scroll down to the Troubleshooting portion of the thread...

If the Memory-engine did get a successful hook, go ahead and launch your Game. Then within Dolphin-memory-engine, click View. Then click Memory Viewer. A new window will appear showing you the live view of the Game's RAM. Congratz!



Installing & Running for Linux (Ubuntu or Debian only)

For Linux installation you will need to build the Memory-engine from source. Must be on Ubuntu 22.04+ or Debian 12+.

1. Update, upgrade, etc etc...


sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade && sudo apt-get autoremove && sudo apt-get autoclean


The above command will update and upgrade everything for your Linux OS plus delete/wipe any unneeded cache and/or dependencies

If you had to preform any upgrades, be sure to reboot your computer - sudo reboot

2. Install Dependencies

If you already have Dolphin-emulator installed on your Debian or Ubuntu system (via built from source code), then you already have all the dependencies, proceed to next step. If not, view the Dolphin install guide HERE and install all the dependencies from steps 2.

3. Download/Clone GitHub Repo

Open up a terminal and run the following commands.


cd $HOME
git clone https://github.com/aldelaro5/dolphin-memory-engine.git
cd dolphin-memory-engine


4. Preparing and Executing the Build

We must navigate to the Source directory that's within the cloned Repo.


cd $HOME/dolphin-memory-engine/Source


Run the following command...


mkdir build && cd build


Now run this command...


cmake ..


And finally run this...


make


The source code will now be built, takes just a few minutes. Once completed, your terminal should be auto directed into /home/yourusername/Dolphin-memory-engine-master/Source/build

If not, then cd into that location.

5. Booting Dolphin-memory-engine

Before we boot the engine, we must enable Dolphin's Debugging UI. Launch Dolphin in a new separate Terminal. Keep your other Teminal open. Once Dolphin has booted. Go to Options, then Configuration. Click on the Interface Tab. You should see a tickable box that says "Enable Debugging UI". Click in the box to checkmark it. Once it has been checkmarked. Close the Tab. You should see a myriad of new menus/items if this was your first time enabling the Debugger Mode.

Dolphin Debugger mode will now be enabled. Going back to your original terminal, run this command to boot the Memory-engine...


./dolphin-memory-engine


You should see something similar to this - http://mkwii.com/pics/screenshots/RAMViewer.png

The above pic is from an older version of the Engine, therefore you will see some slight differences.

At the top, the program should say it is hooked successfully. If not click the large Hook button. If it fails, restart both Dolphin & the Memory-engine, and try again. If the Memory-engine still fails to hook, scroll down to the Troubleshooting portion of the thread...

If the Memory-engine did get a successful hook, go ahead and launch your Game. Then within Dolphin-memory-engine, click View. Then click Memory Viewer. A new window will appear showing you the live view of the Game's RAM. Congratz!



Troubleshooting

If you can't get the program to hook or a certain range of addresses won't display, here are some tips:

Try using an older version of the memory engine - https://github.com/aldelaro5/Dolphin-mem...e/releases
(Each release comes with pre-compiled and source versions for both Windows and Linux)

If that doesn't work, you can try using an older version of Dolphin or try an old version of both the Memory Engine and Dolphin.

Here are some combinations that I or others have had success with..
Dolphin version 20360 w/ Memory Engine version 0.9.0
Dolphin version 10886 w/ Memory Engine version 0.5.0
Dolphin version 10886 w/ Memory Engine version 0.4.0
Dolphin version 10413 w/ Memory Engine version 0.5.0
Dolphin version 10413 w/ Memory Engine version 0.4.0
Dolphin version 8490 w/ Memory Engine version 0.4.0
Dolphin version 8279 w/ Memory Engine version 0.4.0
Dolphin version 8029 w/ Memory Engine version 0.4.0


Note for Linux Users wanting older versions of Dolphin Dev: Unfortunately there is no database of older pre-compiled Linux-based Dev revisions. However, you can try one of the Beta versions that are present at the Downloads page (https://dolphin-emu.org/download/)

Before compiling the source of a different Dolphin, you need to remove your current version of Dolphin completely. Wherever you main Dolphin folder is, there is a build directory within. Open a terminal within that build directory. Run this command....

sudo cat install_manifest.txt | xargs -d '\n' rm

Command will take a minute or so. Dolphin is now uninstalled.

If you still have unresolved issues, you can try posting them here -> https://github.com/aldelaro5/dolphin-mem...ine/issues
It's possible that something is wrong with your Dolphin-Emu, it may help you to ask help on the dolphin forums - https://forums.dolphin-emu.org/
Reply
#2
Since I've got a new pc I've had to re-install everything and I came across a problem which I didn't have before.
When I hook the RAM viewer it says The extended Wii-only memory is absent which as far as I know should say present.
This makes it so I can't view the 90xxxxxx memory addresses.

I've updated my dolphin, re-installed everything, even read the readme that came with the ram viewer (I know crazy.)
I might be missing a crucial step but so far I can't really seem to figure out what I'm doing wrong.
Reply
#3
You can view/post issues here and the creator of the program himself might have the solution - https://github.com/aldelaro5/Dolphin-mem...ine/issues

You could also try older versions of the RAM Viewer - https://github.com/aldelaro5/Dolphin-mem...e/releases

EDIT: Ah it looks like Joshua had the same issue - https://github.com/aldelaro5/Dolphin-mem.../issues/46

If older versions of the RAM viewer won't fix the issue, try an older dev version of Dolphin.
Reply
#4
Yes, the issue is that Dolphin Memory Engine doesn't work properly on dev builds of dolphin using VSCode2019 solutions. It's best to rollback your install to version 5.0-113xx and back since they use the compatible VSCode2017 solutions
Super Mario Eclipse, what Super Mario Sunshine could've been.
Reply
#5
Yeah my bad, I should have checked the issues first. Thanks for the explanation.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)