Mupen64: Difference between revisions

m (→‎Using Mupen64-RR: Changed title name, and helped explain TASing, *please add the info I left out.*)
m (Mentions the feature to copy the ram start to clipboard.)
 
(15 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{stub}}
{{stub}}
'''Mupen64''' is a [[Nintendo 64]] [[Emulators|emulator]] useful for its TASing capabilities.


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''' (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 [[RTA|speedrunning]].
=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.
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 ===
# 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


'''Mupen64''' is a [[Nintendo 64]] [[Emulators|emulator]] useful for its customizability. There are many forks of Mupen64, the most documented of which is Mupen64-RR v0.5, which is nearly universally used for TASing.
=== Continuing Movies ===


=Mupen64plus=
# Make sure a movie is playing back
# Disable read-only mode
# Create a savestate
# Load the savestate
# The recording has begun from the frame the savestate was created at


'''Mupen64plus''' (stylized as '''mupen64plus''') is an emulator used for standard gameplay. It is generally preferred in this regard over Mupen64.
==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.


=Mupen64-RR=
=== Show Ram Start ===
copies the Ram Start address to the clipboard to configure an external RAM-watch like [[STROOP]].


'''Mupen64-RR''' (stylized as '''mupen64-rr''') is an emulator used for TASing. Its competitor is [[Emulators#Bizhawk|Bizhawk]].
===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]].


==TASing with Mupen64-RR==
=== Clock Speed Control ===
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 another TAS, you
mupen64-rr-lua supports changing the emulated CPU's clock speed with a multiplier, allowing lagless emulation.


==Hacked versions of Mupen64-RR==
===WiiVC Rounding===
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-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>.
===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 not used for TASing, only 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://cdn.discordapp.com/attachments/309838966125756416/481145890615197696/mupen64-wiivc.exe</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