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 Bibliotheken" target="_blank">SDL 2.0, and changed Makefiles to build against SDL Bibliotheken" target="_blank">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 Homepage" target="_blank">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 Homepage" target="_blank">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
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!
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.
To download Mupen64Plus
v2.0, just grab the package that you want:
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.
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
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