Mupen64plus Android edition [port] [new n64 emulator]

Search This thread

bubblegumballoon

Senior Member
May 8, 2011
334
181
Swansea
Mupen64plus-AE

Hi I just wanted to give some attention to the new open source
n64 emulator for android Mupen64plus-AE which was developed by Paul Lamb.

Its currently in its beta testing phase and it would be awesome if other developers wanted to join in and contribute to the project.

Android market link:
https://market.android.com/developer?pub=Paul+Lamb

Heres a link to the latest build + source code:
http://www.paulscode.com/forum/index.php?board=11.0

[This is currently the only emulator for android with xperia touch pad support]

Here is an overview of the emulator:

Here is a comparison video of banjo-tooie running on n64oid and mupen64plus-ae:

Here is an extra video I made of the xperia play touch pads working with the emulator:

Common questions
The GUI is now finished so most of this information is now irrelevant

How do I map the gamepad buttons?

First, install and run the "SDL Scancode Finder" linked below. Press the keys you want to map, and write down the Scancodes that are displayed. Then after running Mupen64Plus AE at least once, close the app and edit the file [sdcard]/app-data/paulscode.android.mupen64plus/data/InputAutoCfg.ini. Under the [Keyboard] section, enter the scancodes that you wrote down earlier. For the analog stick, use the scancodes for the left and right buttons for "X Axis", and the scancodes for the up and down buttons for "Y Axis". Finally, save the file and restart the emulator.

SDL Scancode Finder:http://www.paulscode.com/source/AndroidSDLScancodeFinder/ScancodeFinder-debug.apk

Alternatively you use my control config and just paste is over the file. Just replace [sdcard]/app-data/paulscode.android.mupen64plus/data/InputAutoCfg.ini with the custom version of the InputAutoCfg.ini
Heres my config: http://dl.dropbox.com/u/13594612/paulscode/InputAutoCfg.ini (right click and save as)

How do I change games?

Delete or rename the file [sdcard]/app-data/paulscode.android.mupen64plus/roms/mario.n64. Place the ROM you wish to play into that directory, and call it "mario.n64" (it doesn't matter what format the ROM is in, just call it "mario.n64", and the emulator will load it instead of Mario64).

How do I remove the touch control overlay?

Go to [sdcard]/app-data/paulscode.android.mupen64plus/skins and delete everything in there except the folder called touchpads, the touch pads folder it what lets you use the xperia play touch pads.

*I take no credit in the creation of this emulator all credit goes to Paul and the people behind the original Mupen64plus source code. Im just a tester nothing more haha*
 
Last edited:

bubblegumballoon

Senior Member
May 8, 2011
334
181
Swansea
that'd be cool, but even cooler if N64oid got it :)

N64oid probably never will though. Adding touch pad support cuts of every android device
that has a firmware lower than 2.3 and thats alot of devices.

With Mupen64plus-ae multiple builds can be made so it doesn't effect other devices.
Thats why I feel so strongly that developers should help support this project,
it means that developers can add whatever they want and can create device specific features.
 

bubblegumballoon

Senior Member
May 8, 2011
334
181
Swansea
I would love to see this with touchpad support. Waht do you guess how long will it take?

Touch pad support is nearly done, my best guess it will either be finished by tomorrow or in a few days. Also just to clarify I am not the one making this emulator. :)

This the latest build for non qualcomm devices: http://www.paulscode.com/source/Mupen64Plus-AE/13SEP2011/Mupen64Plus-debug.apk

This is the latest build for qualcomm devices (like the xperia play: http://www.paulscode.com/source/Mupen64Plus-AE/13SEP2011/Mupen64Plus-debug-sortProblem.apk

The xperia play version has very bad graphics at the moment but paul is working on fixing that atm.
 
  • Like
Reactions: IE-coRe

antEris

Senior Member
Apr 27, 2010
199
66
Rockin' :D

Sent from my R800x using xda premium

P.s. I can't wait for this to come to fruition. Finally! A viable way to play Duke Nukem :p
 
Last edited:

Nhialor

Senior Member
Jun 17, 2009
869
57
Dublin, Ireland, Ireland
What are you talking about? Google made it so that multiple versions of the same apk can be uploaded to the market under the same heading, so adding it for our device would therefore NOT rule out other phones, as they could just download the regular version (our version wouldn't be able to be seen by them), also, as a computer science major, it'd be easy to not have this problem if he doesn't want to go down this road, he could do, for arguments sake, if build.prop=="R800i"|"R800x"{control-type="touchpad"}else{control-type="regular"}, or even just a tick box in the option menu...!

therefore avoiding the problem. Obviously it goes a lot deaper than that, but saying that adding support for us would rule out other devices is just not true. It's something else that's stopping him.
 

bubblegumballoon

Senior Member
May 8, 2011
334
181
Swansea
What are you talking about? Google made it so that multiple versions of the same apk can be uploaded to the market under the same heading, so adding it for our device would therefore NOT rule out other phones, as they could just download the regular version (our version wouldn't be able to be seen by them), also, as a computer science major, it'd be easy to not have this problem if he doesn't want to go down this road, he could do, for arguments sake, if build.prop=="R800i"|"R800x"{control-type="touchpad"}else{control-type="regular"}, or even just a tick box in the option menu...!

therefore avoiding the problem. Obviously it goes a lot deaper than that, but saying that adding support for us would rule out other devices is just not true. It's something else that's stopping him.

Well If you actually knew anything about n64oid you would know that its not even on the android market. Its distributed via slideme which does not support uploading of multiple apk's for a single app.

And ive talked to alot of emulator developers and for some reason (Im not entirely sure why) Including touch pad support cuts off support for older versions (lower than 2.3).
 

Nhialor

Senior Member
Jun 17, 2009
869
57
Dublin, Ireland, Ireland
Well If you actually knew anything about n64oid you would know that its not even on the android market. Its distributed via slideme which does not support uploading of multiple apk's for a single app.

And ive talked to alot of emulator developers and for some reason (Im not entirely sure why) Including touch pad support cuts off support for older versions (lower than 2.3).

haha ,completly forgot about that, but still, u see my point about the proper implemantation?

EDIT: Wait, I remember something that either Yonghz or Shtruck said something like the classes needed for this are unaccesible for Froyo and before or something, so you may be right. Apologies
 

bubblegumballoon

Senior Member
May 8, 2011
334
181
Swansea
haha ,completly forgot about that, but still, u see my point about the proper implemantation?

EDIT: Wait, I remember something that either Yonghz or Shtruck said something like the classes needed for this are unaccesible for Froyo and before or something, so you may be right. Apologies

No problem and Im sure ive seen Shtruck say something along those lines on the fpsece forums :)
 
  • Like
Reactions: igor_anta

hairdewx

Senior Member
Feb 28, 2009
675
276
I would imagine they would be able to add backwards compatibility after adding touch pad support, but that would take extra time - which they may not be willing to give the time.
 

bubblegumballoon

Senior Member
May 8, 2011
334
181
Swansea
I would imagine they would be able to add backwards compatibility after adding touch pad support, but that would take extra time - which they may not be willing to give the time.

Im not sure what you mean by backwards compatibility but in the future arm6 devices will be supported as well.

Also touch pads are in the process of being added, in the newest build the touchpad overlay has been added to the screen and different layouts have been made for different screen sizes (phone, tablet, small screens etc).
 

hairdewx

Senior Member
Feb 28, 2009
675
276
Im not sure what you mean by backwards compatibility but in the future arm6 devices will be supported as well.

Also touch pads are in the process of being added, in the newest build the touchpad overlay has been added to the screen and different layouts have been made for different screen sizes (phone, tablet, small screens etc).

I meant having N64oid, FPSE, etc. detect the android version and run version specific code to add touch pad support while avoiding the compatibility issues.

I have done that before in software (I am a software engineer for a living) but it takes a long time to do and adds extra things to support. I certainly would not be motivated enough to do that either :D
 

bubblegumballoon

Senior Member
May 8, 2011
334
181
Swansea
I meant having N64oid, FPSE, etc. detect the android version and run version specific code to add touch pad support while avoiding the compatibility issues.

I have done that before in software (I am a software engineer for a living) but it takes a long time to do and adds extra things to support. I certainly would not be motivated enough to do that either :D

Im no emulation programmer but alot of emulator developers have said the same thing that implementing the touch pad controls limits it to 2.3+

Im sure if somebody was brainy enough to create an emulator then they would know how to support more versions if it were possible. :)

also I would like to point out that Mupen64plus-ae supports arm6, It was already implemented but I forgot to update my post.
 

hairdewx

Senior Member
Feb 28, 2009
675
276
Im no emulation programmer but alot of emulator developers have said the same thing that implementing the touch pad controls limits it to 2.3+

Im sure if somebody was brainy enough to create an emulator then they would know how to support more versions if it were possible. :)

also I would like to point out that Mupen64plus-ae supports arm6, It was already implemented but I forgot to update my post.

Touch pads limit it to 2.3+ because of some of the classes and available system calls it needs are only in 2.3+.

But that doesn't mean it's impossible to make one apk support all android versions, just very impractical implementation-wise and probably not worth it.
 

bubblegumballoon

Senior Member
May 8, 2011
334
181
Swansea
Touch pads limit it to 2.3+ because of some of the classes and available system calls it needs are only in 2.3+.

But that doesn't mean it's impossible to make one apk support all android versions, just very impractical implementation-wise and probably not worth it.

The project is open source so anybody (with the right knowledge) could just go and add touch pad support if they wanted.

Also I would like to point out touch screen controls have now been added but they are still not finished, there are still a few more things to be added like a moving analog stick and lots of optimisations so dont expect it to be perfect just yet. :)
 

bubblegumballoon

Senior Member
May 8, 2011
334
181
Swansea
Mupen64plus-ae now works properly on adreno GPU's (qualcomm chipsets)

It works great on my xperia play! keep in mind that its still not finished yet.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 19
    Mupen64plus-AE

    Hi I just wanted to give some attention to the new open source
    n64 emulator for android Mupen64plus-AE which was developed by Paul Lamb.

    Its currently in its beta testing phase and it would be awesome if other developers wanted to join in and contribute to the project.

    Android market link:
    https://market.android.com/developer?pub=Paul+Lamb

    Heres a link to the latest build + source code:
    http://www.paulscode.com/forum/index.php?board=11.0

    [This is currently the only emulator for android with xperia touch pad support]

    Here is an overview of the emulator:

    Here is a comparison video of banjo-tooie running on n64oid and mupen64plus-ae:

    Here is an extra video I made of the xperia play touch pads working with the emulator:

    Common questions
    The GUI is now finished so most of this information is now irrelevant

    How do I map the gamepad buttons?

    First, install and run the "SDL Scancode Finder" linked below. Press the keys you want to map, and write down the Scancodes that are displayed. Then after running Mupen64Plus AE at least once, close the app and edit the file [sdcard]/app-data/paulscode.android.mupen64plus/data/InputAutoCfg.ini. Under the [Keyboard] section, enter the scancodes that you wrote down earlier. For the analog stick, use the scancodes for the left and right buttons for "X Axis", and the scancodes for the up and down buttons for "Y Axis". Finally, save the file and restart the emulator.

    SDL Scancode Finder:http://www.paulscode.com/source/AndroidSDLScancodeFinder/ScancodeFinder-debug.apk

    Alternatively you use my control config and just paste is over the file. Just replace [sdcard]/app-data/paulscode.android.mupen64plus/data/InputAutoCfg.ini with the custom version of the InputAutoCfg.ini
    Heres my config: http://dl.dropbox.com/u/13594612/paulscode/InputAutoCfg.ini (right click and save as)

    How do I change games?

    Delete or rename the file [sdcard]/app-data/paulscode.android.mupen64plus/roms/mario.n64. Place the ROM you wish to play into that directory, and call it "mario.n64" (it doesn't matter what format the ROM is in, just call it "mario.n64", and the emulator will load it instead of Mario64).

    How do I remove the touch control overlay?

    Go to [sdcard]/app-data/paulscode.android.mupen64plus/skins and delete everything in there except the folder called touchpads, the touch pads folder it what lets you use the xperia play touch pads.

    *I take no credit in the creation of this emulator all credit goes to Paul and the people behind the original Mupen64plus source code. Im just a tester nothing more haha*
    6
    Is there anything that you're specifically wanting to test for? I'd be glad to test out some different games and settings to try and help you guys along. Let the community know, I'm sure there are many of us who are willing to help improve your emulator. Appreciate the work you're doing.

    The main things right now are to test the input plug-in on different versions of Android (I think we are pretty comfortable with publishing this update - it seems to be very stable), and to test the touchscreen layouts (especially the new "Both" layout) on various devices with different screen sizes and resolutions, and in both landscape and portrait. Once these two updates are published and running smooth, I'll post here when we have new functionality to test (and hopefully a new video plug-in soon!)

    paper-mario is runing so bad !

    I know, sorry about that. I sadly do not have the necessary skills to debug gles2rice to fix the team combat crash and frame skipping problems. Fingers crossed that the glide64 port will make this game playable, or that I can get an experienced GL dev to help fix the problems. :(
    5
    This thread hasn't been active in a while, but I decided to post here rather than to start a new one. Development on the emulator has been continuing, and has make quite a bit of progress since my last post on xd-developers. The video plug-ins are still the main area needing improvement (mainly due to my own lack of GL skills), but they are still improving slowly over time. I've begun focusing donations toward incentives for new developers with GL experience to help out with the video plug-ins. And a port of glide64 is underway (there will be more information on that in the coming weeks, and shouldn't be too long before initial tests for it will begin)

    Anyway, the main reason I decided to stop back here is that we are in need of more testers. Interest in the project has understandably declined over time, but that has unfortunately left us with very few testers to try out new functionality on various devices. We currently have a couple of big changes that need to be tested (see my thread here). Thanks in advance for your help!
    5
    N64 Player was taken down. I don't have any details for why, but I'd guess it is was either taken down by Google after reading the numerous negative comments, or by Mr. Geng himself to end the onslaught. Either way, I think justice was served (especially if Bob and I can get our apps back up in a reasonable amount of time after Google reviews the case).
    4
    I will NOT be actively maintaining a branch of the app supporting Xperia Play touch-pad input. Therefore, this example will not benefit from updates and bug-fixes in future builds.

    Is this still true? If you fully implement controls as you have done, what stops you maintaining them? Surely if they're built in, it shouldn't be too hard to keep them in!?
    That statement was meant for the alpha testing phase, because I am trying to make a final push to get the GUI in place and squash any major bugs remaining. In the beta testing phase, I will be maintaining a branch for Xperia Play (both will be listed on the Android market and available from my website). The differences in the Java components of the two branches are significant enough that I can't share the source files for these parts, so while I'm working on anything Java related, the Xperia Play branch may not be kept current every release (this will mainly relate changes in the GUI). I'm planning to share the native code between both projects (which the majority of the updates will be centered around anyway), so both branches will be updated simultaneously in most cases.

    ---------- Post added at 05:10 AM ---------- Previous post was at 05:05 AM ----------

    I can't get the analog stick mapped correctly :/

    Same here.

    Tried the pre-made ini, tried the scancode finder and nothing was going anywhere... eventually just ragequit and decided to wait for the update.

    I assume you are talking about mapping the analog stick to the left touchpad, right? Are you trying to add touchpad support to one of the recent builds, or are you using the Xperia Play test build? If the latter, could you post logcat output after loading the app and pressing the touchpad a bit?