Notices


Reply
Thread Tools
Posts: 557 | Thanked: 370 times | Joined on Apr 2010
#1
New Update: July 11th Please Read:
The GTK GUI has been recompiled and re-adjusted to run on the N900 by javispedro, and he has kindly added it to the repos. There are several issues with it... however for basic tasks it is stable enough. If you have stability issues with this version, you can still run it from the command line as before... just add a --nogui to the line. It is running the same version I have had posted in this thread as they are both simply ports of the current version being worked on for the Pandora.

Note: This is a development application and neither myself, javis... or the homeless guy on the corner... is responsible if you break your phone. That aside we'll be happy to help if something does happen.

The original intention of this thread was a guide to getting a command line, older, version of the emulator running on the N900... but is now obsolete... so I have reworked it with optimized settings and configuration files to enable faster emulation and better default controls. This should add support for the PS3 controller, as well as rudimentary explanation for getting Accelerometer gameplay (very fun with F-Zero X or Mario Kart 64... and do-able with Super Mario 64 and other RPGs :P)
I did not design any part of this emulator, all development is being done for the Pandora, only thing that has been changed is slight modifications to the GUI along with a recompile to run under Maemo by javispedro. Once again... me nothing... Pandora everything... javispedro recompile with GUI. Do not bother to report bugs here unless you are certain they are Maemo specific... and if you don't bother to read these first 2 pages do not bother to post as I will no longer be answering stupid questions.

If you are updating to this version from my old command line versions, please issue the following in xterminal before installing:
Code:
# This will also remove saves and screenshots, please read below if you want to save them.
rm -R .mupen64plus
To keep save states:
Code:
cp -R .mupen64plus/save .
rm -R .mupen64plus
mv save .mupen64plus/
http://www.youtube.com/watch?v=eEDi0hHKxf8


On to the optimized settings and configs.
Currently, I've added settings for exiting the emulator with Q, enabled frameskip, disabled framebuffer and increased the resolution (This removes jagged edges and fixes a lot of issues with 2D images). I've also got my own keyboard configuration with keys already mapped for both keyboard and PS3 controller.

To install my config files, you can either install mupen64plus from Extras-Devel before or after these steps... it really shouldn't matter.

Now download the following file from the phone and save to your main directory:
Custom Config

Open up a terminal and issue the following:
Code:
mkdir .mupen64plus                 (If you haven't run mupen64plus GUI yet)
cd .mupen64plus
tar zxf /home/user/MyDocs/customconfig.tar.gz
Your done! Start the emulator.

Keyboard map is below:
z = R
x = A
c = B
v = L
Space = Z
Enter = Start
Arrow Keys = Dpad
IJKL = Joystick
TFGH = C buttons
q = Quit the emulator
p = Pause the emulator

Also of note:
Frameskip is set to 2.
Framebuffer is disabled and resolution is 800x480
Memory Pak is enabled
Audio is disabled as it sounds terrible.

__________________________________________________ ___

For PS3 Sixaxis Support
Simply open the Input Settings (After syncing the PS3 controller as per Smoku's instruction) and tap the bar at the top of the screen (It'll say Keyboard or None) until PS3 Controller shows up.



The issue at the moment is this may make ugly things happen as Smoku's application also causes the buttons on the controller to emulator Key Presses, this can be resolved as follows (need rootsh installed):

Code:
root
cd /usr/share/hal/fdi/policy/20thirdparty/
mv 20-x11-sony-sixaxis.fdi 20-x11-sony-sixaxis.fdi.bak
Note that this will stop keyboard buttons working for the PS3 controller, to change it back just do the reverse:

Code:
# To change back to work with other programs
root
cd /usr/share/hal/fdi/policy/20thirdparty/
mv 20-x11-sony-sixaxis.fdi.bak 20-x11-sony-sixaxis.fdi
I'd generally recommend against changing individual buttons in this release as the input plugin detects the first button push when trying... and with the sensitivity of accelerometer, it will detect the "joystick" moving first every time... and you will end up with axis' assigned to buttons: This becomes even more difficult given the way to erase this is to press a button that is not available on the N900 keyboard (delete).

For multiple controller support a very nice guide has been written up here thanks to jschan:
http://talk.maemo.org/showpost.php?p...&postcount=811

Key Map:
Left Joystick = Joystick
Dpad = Dpad
Right Joystick = C Buttons
X = A
[] = B
O = C Down
/\ = C Left
Start = Start
L1 = Z
R1 = R
R2 = L

________________________________________________

To get accelerometer support
Install Accelemymote from extras-devel repository. Once installed, restart the phone. Open Accelemymote from the menu and then start mupen64plus. In the Input Settings configuration you'll need to tap the Keyboard button at the top (it may say None as well.. its at the top, dead-center of the screen) until Accelemymote shows up (See the image above for PS3 instruction..

This now means the joystick input will be accepted from the accelerometer.

I'd generally recommend against changing individual buttons in this release as the input plugin detects the first button push when trying... and with the sensitivity of accelerometer, it will detect the "joystick" moving first every time... and you will end up with axis' assigned to buttons: This becomes even more difficult given the way to erase this is to press a button that is not available on the N900 keyboard (delete).

http://www.youtube.com/watch?v=DKtUY-PPJEs


TROUBLESHOOT
Originally Posted by javispedro View Post
Small FAQ:
  • It says I have no graphics plugin selected!
    Go to Options -> Configure -> Plugins and select gles2n64 for graphics.
  • It says I have no input plugin selected / I don't know what the mappings are
    Go to Options -> Configure -> Plugins and select blight's SDL for "Input plugin". Then click on Configure.
  • There's no blight's SDL input plugin
    Update mupen64plus.
  • There are no plugins at all to choose from / It says I have no plugins!
    The plugin path has changed. You have to open X-Terminal and type:
    (if you don't have rootsh you can safely ignore this first step)
    Code:
    rootsh chown -R user:users .mupen64plus
    Code:
    cp /usr/share/mupen64plus/config/mupen64plus.conf  ~/.mupen64plus
  • How to quit?
    Ctrl+Backspace should always work (unless you enabled blight's input plugin mouse option). q will also work with custom config
  • libsdl1.2 / libsdl-ttf2.0 dependency missing!
    Refresh application manager and update mupen64plus.
Some additions of my own:
  • I receive XXXX error
    If you recieve unresolvable errors: Read what they tell you and think. If that still doesn't work, uninstall and reinstall with the following commands (rootsh is needed):
    Code:
    root
    dpkg --purge mupen64plus-arm-gui mupen64plus-arm mupen64plus-arm-gles2n64
    apt-get install mupen64plus-arm-gui mupen64plus-arm mupen64plus-arm-gles2n64
  • SIGSEV type error:
    Close the GUI and re-open. If this does not fix it either your ROM is corrupted (grab a new one from elsewhere) or the game simply does not run.

Last edited by IzzehO; 2010-07-19 at 23:35.
 

The Following 116 Users Say Thank You to IzzehO For This Useful Post:
abb_eliten, ahmadamaj, AlMehdi, Andy1210, arjunkumar87, atilla, b-man, bandora, Bazza, Beatty, Bec, bigears5000, bioepi, blwthompson, Boemien, cddiede, cfh11, chrisp7, Chrome, clasificado, cocayden, craftyguy, crail, Crogge, Cue, CutterSlade, D4rKlar, danzo, daperl, DarkShadowSwE, DaSilva, davidp, Deaconclgi, deegore, devensega, Dousan, dragly, drums4life687, DrWilken, eber42, efekt, elie-7, Erebo, F2thaK, Forphucsake, FreeThinker, Fötus, gazadi, gordonshowers, Hellmur, Heman1310, HoX, HtheB, Ikari, imperiallight, inkirby, jakiman, javispedro, Jay92, Jedibeeftrix, jerro1, kinchan, kopele, LippiVan, lucas777, Magik, MaltedVomit, maluka, Marcus, Marklar, MarkusB, matristain, matthew maude, mccarmo, mdb666, mece, mikec, MINKIN2, moepda, nishkarsh, Nokia 5700, NOMIOMI, nubsis, OptX, osama, pantera1989, patlak, pelago, percy, peynaud, phapsubongtoi, Psymastr, Reffyyyy, rikisky, S0urcerr0r, sake, salawat, scorpio16v, shanttu, sifo, slartibartfass, snfx, SR90, stayloa, Strutten, tissot, titi974, ToJa92, Turkishflavor, unclepecos, vhtellez, wow23, xrgo, yodawg, ZeNzO
Posts: 557 | Thanked: 370 times | Joined on Apr 2010
#2
A few things of note:
  • By default I've disabled audio as it's not only very glitchy, but slows the emulator down immensely. I've also enabled a single frameskip to increase performance. This also increases graphical glitches and even stops some games from started (Dual Heroes for example)
  • The package I've uploaded is a compilation of javispedro's source and binary compiles, so I've simply left source code behind.
  • For any developers interested: Source here: Here Google Code page, with plugin: Here.
  • Javispedro's original source and binaries: http://depot.javispedro.com/nit/64/.
  • For a quick test, Mario Kart 64 and Lylat Wars run full speed.
  • Several games run far better with overclocking (I run mine at 950MHz).
  • See below for the default keymap - I'm open to a different map as I haven't put much testing in to it.
  • Discussion board for the Pandora version, the devs are very nice: http://www.gp32x.com/board/index.php.../page__st__240

Below are instructions editing config files. This is to optimize speed, customize controls and enable audio.

To change key mapping:
Open blight_input.conf in a text editor (I'd suggest leafpad... grab it from Application Manager). Eg.
Code:
leafpad .mupen64plus/blight_input.conf
Here you will see [controller 0] and below it a list of key maps for each N64 button. plugged = 1 enabled the controller. device = -2 is for keyboard. For each button there is a key( 0 ) change 0 to key number. It works with ascii code. Hint: http://www.theasciicode.com.ar/ Ensure to use lower case letters and their respective codes.

Some quickies: Right = 275, Left = 276, Down = 274, Up = 273, Space = 32.

For the joystick key( 1 , 2 ) is either left, right or down, up (Dependant on Y or X axis). If you have issues with doing all this, install Mupen64Plus version 1.5 on Linux and use the GUI there to map the keys.

To change frame skip and resolution.
Edit gles2n64.conf
Code:
leafpad .mupen64plus/gles2n64.conf
To disablele (or increase) frameskip change it as instructed. There are other things to play with in this config, just experiment.




Some games that run full speed, or close to:
Mario Kart 64
Star Fox 64
Super Mario 64
Banjo Kazooie (Once in game, cinematics can be slow)
Chameleon Twist
Duke Nukem 64
F-Zero X (Very fast)
1080 Snowboarding (Runs extremely well as of 6th July)
Harvest Moon 64
Dual Heroes

... Many however will crash on run... or be so far graphically glitchy that it's pointless to play.


CREDITS - These guys are the true legends
Ari64 and Adventus for the OpenGL ES plugin which has made this all possible at a decent speed.
JayFoxRox, Pickle, Exophase and Adventus for the Pandora emulator (Hopefully didn't miss anyone)
Also all those here: http://code.google.com/p/mupen64plus/people/list for their contribution to the original mupen64plus.
javispedro for the compile for N900

Last edited by IzzehO; 2010-07-12 at 01:33.
 

The Following 31 Users Say Thank You to IzzehO For This Useful Post:
Posts: 230 | Thanked: 39 times | Joined on Jun 2010
#3
wat is fps ?
 

The Following 2 Users Say Thank You to ryanl33x1511 For This Useful Post:
Posts: 94 | Thanked: 40 times | Joined on Jun 2010 @ Germany
#4
Originally Posted by ryanl33x1511 View Post
wat is fps ?
fps= Frames per second
 
Posts: 662 | Thanked: 653 times | Joined on Feb 2010
#5
Also, when editing the controller config, don't forget to put the code of the lower case letters instead of higher case.
 
Posts: 557 | Thanked: 370 times | Joined on Apr 2010
#6
I believe he was asking what sort of fps the games get... as I didn't use the term FPS anywhere in there.

It completely depends on the game and your overclock... but at 800MHz with Lylat Wars I get about 20fps.
 

The Following 2 Users Say Thank You to IzzehO For This Useful Post:
Posts: 24 | Thanked: 12 times | Joined on Dec 2009
#7
When you said it was glitchy, are you running your processor at stock speeds or did you overclock?

This looks awesome!! GoldenEye, anyone?!
 

The Following User Says Thank You to Spyder For This Useful Post:
Posts: 557 | Thanked: 370 times | Joined on Apr 2010
#8
Originally Posted by Spyder View Post
When you said it was glitchy, are you running your processor at stock speeds or did you overclock?

This looks awesome!! GoldenEye, anyone?!
Yeah, afraid Golden Eye runs at about 1 frame a second... it's not one of the easy ones to emulate. I'm running with overclock (as said 4 times already :S), but thats not the issue. The issue is the OpenGL ES plugin is still in early stages (it's made leaps and bounds since this was compiled though) and you get artifacts (rectangular boxes, text not showing up) in some games. Games like Lylat Wars and Mario Kart don't seem to get any issues like this, however.

My most enjoyable moment so far was a 2 player game of Mario Kart output to a TV, I used the keyboard and a friend used the PS3 controller.

Also note there has been more discussion on this in this thread:
http://talk.maemo.org/showthread.php?t=56752&page=5
 

The Following 2 Users Say Thank You to IzzehO For This Useful Post:
Posts: 662 | Thanked: 653 times | Joined on Feb 2010
#9
I run at 805mhz. Goldeneye doesn't run too well for me. It's completely playable in some areas but in others, it becomes completely unplayable.

So far, Mario Kart works the best. F-Zero also works pretty damn well. Super Mario 64 is also completely playable.
 

The Following User Says Thank You to Reffyyyy For This Useful Post:
Posts: 662 | Thanked: 653 times | Joined on Feb 2010
#10
http://talk.maemo.org/showpost.php?p...2&postcount=71

This is my Blight_input.conf.

You have to move it using either Xterminal or (my personal preference) Midnight Commander to /home/user/.mupen64plus and overwrite the older one (which I suggest backing up)

I'll write how to do it in more depth if needed.
 

The Following 3 Users Say Thank You to Reffyyyy For This Useful Post:
Reply

Tags
emulator, games, mupen64plus, nintendo, nintendo64


 
Forum Jump


All times are GMT. The time now is 00:53.