• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Apps Porting Mupen64Plus to Android

Today's Update:
- Added Toast message displaying SDL scancodes for keys when pressed
- Stopped device from entering sleep mode while app is running
- Fixed side-bar graphics glitches
- Removed 50-second crash

-- Links Removed --

For those with missing graphics (Qualcomm chipsets), here is a version with the poly sort-order bug, until I fix the other problem:


--Link Removed--
 
Upvote 0
I decided to post an official build with the virtual gamepad, so folks can start testing it. I probably won't have time to make any updates or bug-fixes until I get back home (there are a couple known issues, see below)

-- Links Removed --

IMPORTANT: You will need to update the app data, because several changes were made, mainly to the button masks. If you do not update the app data, you will get weird behavior of random alternate buttons pressing when you are trying to press other buttons! In case anyone isn't familiar with how to do this, the easiest way to update the app data is to delete the folder app-data/paulscode.android.mupen64plus from your SDCard, The emulator's DataDownloader module will then automatically download the new data for you when you start the app.

Known Problems:
The first thing you will notice is that the hat image doesn't move. I purposely disabled this, because the call to "invalidate()", which tells the surface to redraw, was ridiculously slow and having a major hit on performance. I'll need to rethink how to redraw without requiring so much CPU power (possibly some kind of timed "redraw granularity" rather than redrawing on every touch event that involved the analog stick).

The second thing you will notice is that it is really easy to "drop" the analog stick if you slide your finger too far (while running forward, etc). I'll need to implement some type of "stick capture" logic.
 
Upvote 0
I've added some hardware checking logic, since the depth bug fix requires different settings for different hardware. I'm not calling this an official build yet, though, because I haven't got results from very many devices yet (I fully expect the fix to NOT work on many devices until I have enough examples to notice some reliable patterns for each group).

-- LINKS REMOVED --
If anyone has problems with the shadows, stars, and carpet (missing, flickery, or sort-order incorrect) then please let me know which (if any) of the HW Info Test aps I posted work on your device, and provide me with the logcat output:

-- LINKS REMOVED --
 
Upvote 0
Today's update:
- fixed shader bug on devices without Neon
- created separate SDL Scancode Finder app, removed scancode notifications from emulator app
- added hardware profiling to fix missing shadows and door stars in Mario64
- fixed crash when slide-out keypads or gamepads are opened or closed while app is running
- fixed crash caused by incoming calls or other view changes
- implemented Eeprom clock emulation



-- Links Removed --

I also built a simple SDL scancode finder, since the scancode notifications are no longer part of the emulator:
SDL Scancode Finder (source code)

Note: the hardware profiling is still new, so please let me know if you are missing shadows, stars, carpet, etc in Mario64, so I can improve the logic.
 
Upvote 0
Here's an update:

--Links Removed--

IMPORTANT: If you've run any of the previous tests, you must remove them completely before installing these versions, or you will receive signature errors and they won't install.

It's been a while since I posted an update here, so I won't go into all the changes (there have been a lot). Please stop by my website if you are interested in reading about recent progress, or ask me here if you have any questions.
 
Upvote 0
Here's the latest version (1.3). Please stop by my website if you are interested in reading the list of changes. or installing one of the archived earlier versions.

Release APK (source code)
This is the main version, for anyone who does not own an Xperia Play.

Xperia Play version (source code)
The Xperia Play version is identical to the previous build, except it is built to handle touch-pad input specific to the Xperia Play and automatically sets up common settings and button-mappings the first time it executes. If your device is not an Xperia Play, then use the other version.
 
Upvote 0

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones