What's new

Mupen64Plus v2.5: Mupen's Last Stand (on Google Code)

Richard42

Emulator Developer
Hello N64 fans! Sorry it's been so long (almost 2 years) since the last Mupen64Plus release. I've been too busy with everything else in my life to devote much time to Mupen64Plus, but there have been plenty of developers making great contributions to our emulator, and I finally carved out the time to put together a new release for you. There have been so many changes that I skipped over some version numbers and went straight to 2.5 for this one! Some of the highlights of this release are:

  • All: Moved from BitBucket (Mercurial) to GitHub for source control. Added Travis CI integration for automated build regression testing.
  • All: Added project files for Microsoft Visual Studio 2013
  • All: Finished and perfected integration with SDL 2.0, and changed Makefiles to build against SDL 2.0 by default (Linux and OSX only)
  • Audio: Add audioresource support for integration with Linux-based Nemo Mobile OS
  • Core: Game-specific fixes: Banjo Tooie, Zelda Ocarina of Time, DK64, Hydro Thunder, others
  • Core: Game-specific override for # of clock cycles per cpu instruction
  • Core: Cheat fixes for WWF No Mercy, Bomberman Hero, Super Mario 64, and Pokemon Stadium (E)
  • Core: New Dynarec: Speed improvements, accuracy fixes, build support for MSVC
  • Core: Major R4300 CPU core refactoring in many subsystems to improve code organization
  • Core: Rewrite speed limiter code to improve performance and audio synchronization
  • Core: Support for building against OpenGL ES
  • Core: Build system improvements for ARM / Raspberry Pi
  • Input: New auto-config sections for: Wiimote Classic, Wii U Gamecube / Pro, MS SideWinder GamePad Pro, 17 others
  • Input: Fall back to joystick settings for analog x/y when Mouse=True but pointer is un-grabbed
  • Input: New feature: prevent mouse/trackpad auto-centering behavior by pressing left-Windows key
  • RSP: Game-specific fixes: Bottom of the 9th, IndianaJones, BattleForNaboo, Conkers Bad Fur Day
  • RSP: Support for MusyX microcodes
  • RSP: Improve audio microcode identification
  • RSP: Huge quantity of code cleanups and refactoring to improve organization
  • RSP: Add support for additional audio commands: #16, POLEF, RESAMPLE_ZOH
  • RSP: Multiple bugfixes in audio processing code
  • Rice-Video: Game-specific hack-fix to show last heart and map arrows in Zelda OoT & MM
  • Rice-Video: Graphics fixes for: Fog, RDP InsertMatrix command
  • Rice-Video: Add config option to force polygon offset values (fixes artifacts on certains games / renderers)
  • Rice-Video: Modernize OpenGL interfaces, remove code for supporting old opengl versions
  • Rice-Video: Lots of code cleanup, removal of deprecated code, and simplifications
  • Rice-Video: Fix for INI file loading under Windows
  • Rice-Video: Bugfix: crash if RiceVideoLinux.ini not found
  • Glide64mk2-Video: New feature: option to enable full-scene antialiasing
  • Glide64mk2-Video: New feature: frameskip, to drop frames if game is going slow (optional)
  • Glide64mk2-Video: Support loading of DAT files for hi-res texture
  • Glide64mk2-Video: Allow user override of game-specific settings via mupen64plus.cfg
  • Glide64mk2-Video: Add OpenGL ES support (2.0)
  • Glide64mk2-Video: Add config option to force polygon offset values (fixes artifacts on certains games / renderers)
  • Glide64mk2-Video: Win32: don't set gamma table because it breaks monitor calibration
  • Glide64mk2-Video: Code cleanup to remove dead section of code
  • Glide64mk2-Video: Bugfix: work around problem in OSD callback whereby core code doesn't re-activate shader
  • Glide64mk2-Video: Bugfix: Resident Evil II hang
  • Glide64mk2-Video: Bugfix: texture pack read failure on some 64-bit platforms
  • Glide64mk2-Video: Bugfix: N64 ROM header analysis for PAL/NTSC detection

Full release notes can be found here.

Credits
Development on Mupen64Plus really started to take off after we moved to GitHub. I merged contributions from more developers for this release than any previously. The developers who wrote code for this Mupen64Plus v2.5 are: Bentley, Bobby Smiles, Conchur Navid, ecsv, fayvel, Gillou68310, gizmo98, kode54, krnlyng, littleguy77, Narann, Nebuleon, Paulscode, Richard42, ricrpi, rlabrecque, s-verma, twinaphex, Ursula Abendroth, V1del, willrandship, and wnayes. Thanks to all of you for your hard work!

News
One unfortunate piece of news is that our project hosting site (Google Code) is kicking us (and everyone else) out now. The project will become read-only in a few months, and in January 2016 the project page will be shut down. We will be migrating all of information that we had in our Google Code site to other places, but I don't know where yet. We will continue to host our source code and developer bug tracker at GitHub.

There is a lot of interesting development work still in-progress for Mupen64Plus. Narann has been busy completely re-writing Rice Video to support OpenGL ES and modernize all of the OpenGL code. A new developer has ponied up with a preliminary implementation of Network multiplayer. That has been a highly desired feature for many years, so I'm sure many of you will be happy when that gets stabilized and lands in a release. And there has been much discussion about refactoring to remove some plugins and simplify the system architecture. This work could make Mupen64Plus easier to integrate into other software like the Android front-end and libretro.

Quick start (Linux)
The easiest way to start running and testing this release is to download a binary bundle package from the Google Code site (link below), unzip it into a directory, and run it with this command: "./mupen64plus m64p_test_rom.v64". You can run it directly from this directory, or to install it to your system, simply do "sudo ./install.sh". Likewise, to un-install it, "sudo ./uninstall.sh"

Quick start (Windows)
For Windows users, download the bundle-win32 zip file from the Google Code site (link below) and unzip it to a directory. Open your DOS prompt (Start->Run->cmd.exe or the "Command Prompt" in Start->Accessories). Once you have the command-line window, 'cd' to the directory where you unzipped the win32 bundle. Then run "mupen64plus-ui-console.exe m64p_test_rom.v64" to start up the test ROM. Press Escape to exit. Use the '--help' command-line option to get a list of all available options. The last argument is always taken to be a path to an uncompressed N64 ROM image to run. Sorry but there is currently no Windows installer available.

Downloads
To download Mupen64Plus v2.0, just grab the package that you want:
mupen64plus-bundle-osx64-2.5.zip
mupen64plus-bundle-win32-2.5.zip
mupen64plus-bundle-win32-2.5-new-dynarec.zip
mupen64plus-bundle-linux32-2.5.tar.gz
mupen64plus-bundle-linux64-2.5.tar.gz
mupen64plus-bundle-linux64-2.5-ubuntu.tar.gz
mupen64plus-bundle-src-2.5.tar.gz

Emulation64 Mirrors

Please note that the Linux binary packages are linked against the latest version of libpng, which is 1.6. Some Linux distributions (including Ubuntu and its derivatives) still use older versions of libpng, so the "-ubuntu" package is provided which links against libpng 1.2. If you get 'dlopen' errors when running the default binary build, try the "-ubuntu" package instead.

The Windows packages were built with Microsoft Visual Studio 2013, and you may need to install the Microsoft redistributable package for this version of Visual Studio, if your operating system is too old.

The New Dynarec is much faster than our original one, but it is not as well tested and may contain defects which cause bugs in game playback, graphical artifacts, or crashes. For Windows users whose computers are not fast enough to play games well with the standard build, you may try out the New Dynarec build.

The MD5 sums for these packages are:

896686cc9714f911e2118fe1597e0b09 mupen64plus-bundle-osx64-2.5.zip
bcd053361a87f8555ff3fdded77508ab mupen64plus-bundle-win32-2.5.zip
4ea633b69b76b88527544f882b7210a5 mupen64plus-bundle-win32-2.5-new-dynarec.zip
4e82dd9ceecaf0473ab4d371f3c8b720 mupen64plus-bundle-linux32-2.5.tar.gz
5506716c2ba597ec6a8b4d344e7eb242 mupen64plus-bundle-linux64-2.5.tar.gz
478be04a36a8d04a029692d081c5ec00 mupen64plus-bundle-linux64-2.5-ubuntu.tar.gz
e329654f869ced5eaf82a8c2337b28d7 mupen64plus-bundle-src-2.5.tar.gz

Front-end applications
As many of you know, I made a major change in the architecture of Mupen64Plus when we began working towards this release, back in 2009. I separated all of the user-interface functions from the core emulator and re-designed the core to be a library which can be linked against different user interfaces (called Front-end applications). This architecture allows us to focus on making the best emulator possible while reaching the widest audience by allowing other developers to write front-end programs for any platform. Users should be aware that the front-end application which is included with the release bundles is a command-line application. We keep a list of third-party plugins and applications here.

Documentation
Mupen64Plus has a Home Page over at Google Code, with lots of useful information, screenshots, a bug tracker, a mailing list, etc. There is a lot of user documentation here.
 
Last edited:

Shonumi

EmuTalk Member
Hey, great work Richard et al! Glad to see all the work you folks have been doing. I'll have to upgrade from 2.0 soon. Cheers :D
 

V1del

New member
No love for my commits :( jk great work everyone I hope to contribute some more than the simple Glide64mk2 option override in the future but am somewhat busy with real life right now
 
OP
R

Richard42

Emulator Developer
No love for my commits :( jk great work everyone I hope to contribute some more than the simple Glide64mk2 option override in the future but am somewhat busy with real life right now

I'm sorry that one didn't make my cutoff for the release notes, but you deserve to be credited too! It looks like you've done some testing on GLideN64 as well; it will be very exciting to see this new video plugin released.
 

V1del

New member
Its part of the Glide64 settings to mupen64plus.cfg just really hidden as I didn't have a github acc back then and posted it to the mailing list so ecsv merged it for me :D
 

the_randomizer

New member
Will there be a GUI front-end for this soon? I'm not really a CLI fan to be honest and was merely curious, due in part to the fact Mupen64Plus-QT doesn't work with the this as there is no correct .exe for it. Thanks :D

Edit: I should note that I have tried wxMupen64Plus for this, however, when it asks to find the application to launch the emulator, and I choose it, it freezes up and crashes. I guess that it doesn't work on 2.5.
 
Last edited:

the_randomizer

New member
Mupen64PlusQt is working for me. Just choose mupen64plus-ui-console.exe .

Funny, using GUI version 1.6, I chose that exact program, the sodding thing just crashed. I flat out give up even TRYING to avoid CLI. :(


Log I get from GUI

  Spoiler:

__ __ __ _ _ ____ _
| \/ |_ _ _ __ ___ _ __ / /_ | || | | _ \| |_ _ ___
| |\/| | | | | '_ \ / _ \ '_ \| '_ \| || |_| |_) | | | | / __|
| | | | |_| | |_) | __/ | | | (_) |__ _| __/| | |_| \__ \
|_| |_|\__,_| .__/ \___|_| |_|\___/ |_| |_| |_|\__,_|___/
|_| http://code.google.com/p/mupen64plus/
Mupen64Plus Console User-Interface Version 2.5.0

UI-Console: attached to core library 'Mupen64Plus Core' version 2.5.0
UI-Console: Includes support for Dynamic Recompiler.
Core: Goodname: Dr. Mario 64 (U) [!]
Core: Name: DR.MARIO 64
Core: MD5: 1A7936367413E5D6874ABDA6D623AD32
Core: CRC: 769D4D13 DA233FFE
Core: Imagetype: .v64 (byteswapped)
Core: Rom size: 4194304 bytes (or 4 Mb or 32 Megabits)
Core: Version: 144B
Core: Manufacturer: Nintendo
Core: Country: USA
UI-Console Status: Cheat codes disabled.
UI-Console: using Video plugin: 'Glide64mk2 Video Plugin' v2.5.0
UI-Console: using Audio plugin: 'Mupen64Plus SDL Audio Plugin' v2.5.0
UI-Console: using Input plugin: 'Mupen64Plus SDL Input Plugin' v2.5.0
UI-Console Error: LoadLibrary('C:/Emulators/Nintendo 64/Mupen64 etc\mupen64plus-rsp-z64-hlevideo.dll') error: (null)
UI-Console Error: Specified RSP plugin not found: mupen64plus-rsp-z64-hlevideo
Core Status: Rom closed.


WTF? I give up even trying to use 2.5 on the GUI frontend. It can't find the RSP plugin, even though it's directed at its location? Oh okay, whatever you say, POS.
I might as well go back to PJ64 if the emulator can't even have a f**king working frontend. I'm done.
 
Last edited:

mendus

New member
The build I downloaded from this page does not include that plugin. Are you sure you didn't have it selected from a previous build and forgot to change plugins?

Edit: I copied the plugin from a previous build and it doesn't load it from command line either. Same error. So it is not the frontends fault.
 
Last edited:

V1del

New member
M64Py exists it works fine and Mupen64plusQt does as well. Also this errormessage indicates that Mupen64Plus-Qt (or the Console UI?, I could load something however using it, I think it's the frontend) fumbles the path and accidentaly adds a wrong delimiter (do you see the / instead of \ at the end of the path?). You can workaround that by having everything in the same dir. Furthermore if you install the last m64py release you will have most of the improvements listed here available within it's own distribution so that could work as a substitute if you can't get these binaries running for some reason.
 
Last edited:

the_randomizer

New member
The build I downloaded from this page does not include that plugin. Are you sure you didn't have it selected from a previous build and forgot to change plugins?

Edit: I copied the plugin from a previous build and it doesn't load it from command line either. Same error. So it is not the frontends fault.

Sure did, it's from the most recent build, didn't do jack squat, it knows the plugin is "there" but when I load a ROM, it crashes. I give up, I'm go back to PJ64.

M64Py exists it works fine and Mupen64plusQt does as well. Also this errormessage indicates that Mupen64Plus-Qt (or the Console UI?) fumbles the path and accidentaly adds a wrong delimiter (do you see the / instead of \ at the end of the path?). You can workaround that by having everything in the same dir. Furthermore if you install the last m64py release you will have most of the improvements listed here available within it's own distribution so that could work as a substitute if you can't get these binaries running for some reason.

But everything, and I mean everything, all the files, are in a single directory. Before I updated to 2.5, it ran just fine. But now, it's all gone to hell.

Edit: PEBKAC, figured out why. Freaking unbelievable.
 
Last edited:

deadlyiest

New member
i am completely new to this, I dono if i downloaded the right one, how do I open it on windows 8? A black screen pops up fast and disappears.
 

V1del

New member
Yes the standard application only has a command-line interface, so you would navigate to the directory using a cmd prompt and then call the exe like so:
Code:
mupen64plus.exe [options] /path/to/rom
see the following for a reference on how to utilise it this way: https://code.google.com/p/mupen64plus/wiki/UIConsoleUsage

If you'd rather have a GUI M64Py is one that is actively being developed and kept up-to date with the most recent releases.
 

Joeyjoejoe

New member
please for the love of god allow us to just manually configure the gamepad the same way mednafen, zsnes, SNES9x, PCSX, and every other well designed emulator in existence does it. and stop being stupid.
 

marcelo_20xx

New member
Is there any reason why the mupen64plus.exe is not included on the win32 bundles or I am missing something obvious? Thanks for the hard work though...
 

V1del

New member
[MENTION=109847]marcelo_20xx[/MENTION] the cli frontend is called mupen64plus-ui-console.exe, you could probably just rename that if needed
 

marcelo_20xx

New member
Thanks at first I thought it must be this file, its been ages since I last tried Mupen64plus. But mupen64plus-ui-console.exe gives me an "invalid win32 app" error, I have installed the VS runtimes from 2005 to 2013, redownloaded from both mirrors, still the same...

Strangely, the Mupen64plus.exe that comes with the "M64Py" frontend does run, so is this only on my end or someone else has this problem?

Tested on Windows XP SP3, I dont have a Windows 7 64 install ready to try, since I am upgrading my PC and the parts will arrive next week
 

urbanman2004

Head Honcho
Never tried Mupen64 since Project64 filled that void... Willing to give this a try on the Mac

---EDIT---

After trial and error, trying to run your emulator isn't worth the hassle. I was better off downloading OpenEmu, downloading the 'cores' and playing my N64 roms that way.
 
Last edited:

V1del

New member
OpenEmu is mupen64plus in the end so yeh
[MENTION=5283]Marcelo[/MENTION] probably because this was compiled on VS2013 which doesn't create an XP compatible binary by default
 
Last edited:

Top