Mupen64: Difference between revisions

From Ukikipedia
Jump to navigation Jump to search
(Add usage - continuation of movie explanation)
m (Mentions the feature to copy the ram start to clipboard.)
 
(4 intermediate revisions by one other user not shown)
Line 4: Line 4:
There are many forks of Mupen64, the primary community-maintained one being [https://github.com/mkdasher/mupen64-rr-lua- mupen64-rr-lua], which is nearly universally used for TASing Super Mario 64
There are many forks of Mupen64, the primary community-maintained one being [https://github.com/mkdasher/mupen64-rr-lua- mupen64-rr-lua], which is nearly universally used for TASing Super Mario 64
=Mupen64plus=
=Mupen64plus=
'''Mupen64plus''' (stylized as '''mupen64plus''') is an emulator used for standard gameplay. It is generally preferred in this regard over Mupen64. Mupen64plus (and OpenEMU, a multiconsole emulator that uses the Mupen64plus core) is also allowed for Super Mario 64 [[RTA|speedrunning]].
'''Mupen64plus''' (stylized as '''mupen64plus''') is an emulator used for real-time gameplay.  
=Mupen64-RR=
'''Mupen64-RR''' (stylized as '''mupen64-rr''') is an emulator used for TASing. It is most commonly used to record TAS movies. The file type used for the movies are: ".m64" and ".st", m64 is the movie, which can be launched if you go to "Playback Movie" but if you have started from snapshot, you will need a .st file in order to make the movie work, otherwise the movie will not start.
==TASing with Mupen64-RR==
Open a Super Mario 64 ROM in Mupen64. Go to Utilities --> Movie --> Start Movie Recording. Type in a name, author, and/or description if you wish. You can also choose to start from the start (when you boot it up), or you can choose the star from a snapshot you have made. Click on OK, and your TAS will start. Press - or + to speed up or down whilst recording. You can also press \ (the slash usually above RETURN) to advance a single frame. To unpause/pause, press Pause. If you don't have a Pause button on your keyboard, go to the settings, and change the hotkey from Pause to something else. To continue from a TAS, put the movie settings in "read only" mode. Then when the TAS stops at the time you want to continue, then turn off the "read only" mode. After that, save a state and reload it to continue a TAS.
==Hacked versions of Mupen64-RR==
Because Mupen64 does not have perfect emulation accuracy, there are several hacked versions of Mupen to deal with this, as well as to allow for additional functionality.
===Mupen64-Lua===
'''Mupen64-Lua''' supports Lua scripting, which gives Mupen64-rr much more power for testing and brute forcing<ref>http://adelikat.tasvideos.org/emulatordownloads/mupen64-rr/LuaExtension_r34_bin.zip</ref>. It is used for TASing, as well as for testing and preparing.
===Mupen64-PUs===
'''Mupen64-PUs''' is a modified version of Mupen that crashes during certain float-to-short exceptions just like the [[Nintendo 64]] console does. This is a useful alternative to [[TASBot#Console Verification|console verification]], but not as reliable, because there are still some [[Crash#Unknown cause|unknown crashes]].
===Mupen64-WiiVC-RTZ===
'''Mupen64-WiiVC-RTZ''' is a version of Mupen that emulates the [[Wii VC Round-To-Zero]] oversight<ref>https://www.mediafire.com/file/p2qpz0u39fhub8k/mupen64-wiivc.exe/file</ref>. It has been used, among other things, by pannenkoek2012 to TAS the [[Bowser in the Fire Sea#A Press Counts|Bowser in the Fire Sea 0x A presses]] run<ref>https://www.youtube.com/watch?v=Aa_CciaM4aM</ref>.


== mupen64-rr-lua ==
It is generally preferred in this regard over Mupen64. Mupen64plus, as well as m64p-based frontends such as OpenEMU, are also allowed for Super Mario 64 [[RTA|speedrunning]].
'''mupen64-rr-lua''' is a fork of Mupen64-RR which is actively maintained by the community. It introduces the lua scripting extension, QoL features, and security patches
=mupen64-rr-lua=
'''[https://github.com/mkdasher/mupen64-rr-lua- mupen64-rr-lua]''' is an emulator used for TASing and is most commonly used to record and play back TAS movies.  


== Usage ==
It is a fork of Mupen64-RR-lua which is actively maintained by the community. It introduces the lua scripting extension, QoL features, and security patches


=== Continuation of movie ===
=== Recording movies ===
# Navigate to the `Movie` menu and select `Start Movie Recording`...
# Click "Save As" to pick the movie save location
# Select a start type.
#* Start: The movie will start from a console reset
#* Savestate: The movie will start from a savestate created upon confirming the dialog
#* Existing Savestate: The movie will start from the savestate picked by the user upon confirming the dialog
#* EEPROM: The movie will start from a console reset, but with unreset EEPROM
# (optional) Type your name and a description into the respective fields
# Confirm the dialog
 
=== Continuing Movies ===


# Make sure a movie is playing back
# Make sure a movie is playing back
Line 30: Line 30:
# Load the savestate
# Load the savestate
# The recording has begun from the frame the savestate was created at
# The recording has begun from the frame the savestate was created at
==Features==
===Lua===
mupen64-rr-lua supports Lua scripting, which gives it much more power for testing and brute forcing<ref>http://adelikat.tasvideos.org/emulatordownloads/mupen64-rr/LuaExtension_r34_bin.zip</ref>. It is used for TASing, as well as for testing and preparing.
=== Show Ram Start ===
copies the Ram Start address to the clipboard to configure an external RAM-watch like [[STROOP]].
===Emulate Float Crashes===
mupen64-rr-lua supports crashing during certain float-to-short exceptions just like the [[Nintendo 64]] console does. This is a useful alternative to [[TASBot#Console Verification|console verification]], but not as reliable, because there are still some [[Crash#Unknown cause|unknown crashes]].
=== Clock Speed Control ===
mupen64-rr-lua supports changing the emulated CPU's clock speed with a multiplier, allowing lagless emulation.
===WiiVC Rounding===
mupen64-rr-lua supports emulating the [[Wii VC Round-To-Zero]] oversight<ref>https://www.mediafire.com/file/p2qpz0u39fhub8k/mupen64-wiivc.exe/file</ref>. It has been used, among other things, by pannenkoek2012 to TAS the [[Bowser in the Fire Sea#A Press Counts|Bowser in the Fire Sea 0x A presses]] run<ref>https://www.youtube.com/watch?v=Aa_CciaM4aM</ref>.


=References=
=References=
<references />
<references />

Latest revision as of 17:27, 28 June 2024

Mupen64 is a Nintendo 64 emulator useful for its TASing capabilities.

There are many forks of Mupen64, the primary community-maintained one being mupen64-rr-lua, which is nearly universally used for TASing Super Mario 64

Mupen64plus

Mupen64plus (stylized as mupen64plus) is an emulator used for real-time gameplay.

It is generally preferred in this regard over Mupen64. Mupen64plus, as well as m64p-based frontends such as OpenEMU, are also allowed for Super Mario 64 speedrunning.

mupen64-rr-lua

mupen64-rr-lua is an emulator used for TASing and is most commonly used to record and play back TAS movies.

It is a fork of Mupen64-RR-lua which is actively maintained by the community. It introduces the lua scripting extension, QoL features, and security patches

Recording movies

  1. Navigate to the `Movie` menu and select `Start Movie Recording`...
  2. Click "Save As" to pick the movie save location
  3. Select a start type.
    • Start: The movie will start from a console reset
    • Savestate: The movie will start from a savestate created upon confirming the dialog
    • Existing Savestate: The movie will start from the savestate picked by the user upon confirming the dialog
    • EEPROM: The movie will start from a console reset, but with unreset EEPROM
  4. (optional) Type your name and a description into the respective fields
  5. Confirm the dialog

Continuing Movies

  1. Make sure a movie is playing back
  2. Disable read-only mode
  3. Create a savestate
  4. Load the savestate
  5. The recording has begun from the frame the savestate was created at

Features

Lua

mupen64-rr-lua supports Lua scripting, which gives it much more power for testing and brute forcing[1]. It is used for TASing, as well as for testing and preparing.

Show Ram Start

copies the Ram Start address to the clipboard to configure an external RAM-watch like STROOP.

Emulate Float Crashes

mupen64-rr-lua supports crashing during certain float-to-short exceptions just like the Nintendo 64 console does. This is a useful alternative to console verification, but not as reliable, because there are still some unknown crashes.

Clock Speed Control

mupen64-rr-lua supports changing the emulated CPU's clock speed with a multiplier, allowing lagless emulation.

WiiVC Rounding

mupen64-rr-lua supports emulating the Wii VC Round-To-Zero oversight[2]. It has been used, among other things, by pannenkoek2012 to TAS the Bowser in the Fire Sea 0x A presses run[3].

References