Mupen64 Lua

What's New:

Features

  • CLI: Keep fast-forward forced on when capture parameter is specified
  • CLI: Warn about conflicting behaviour when -m64 and -st options are both specified
  • ConfigDialog: Add async plugin discovery
  • ConfigDialog: Remember selected settings tab
  • ConfigDialog: Rescan plugins after changing plugin directory
  • Core/ST: Undo savestate load
  • FFmpegEncoder: Respect sync mode option
  • PianoRoll: Add keep playhead visible option
  • Statusbar: Add layout presets
  • View: Show broken plugin count in config dialog plugin page

Changes

  • EncodingManager: Capture on emu thread
  • Main: Simplify warping status text
  • Seeker: Show status message when seek completes
  • Seeker: Show warning when seek savestates are disabled
  • View: Improve RAM start dialog

Bugfixes

  • AVIEncoder: Double-free in stop()
  • CLI: Disable and warn about movie loop when close on movie end is specified
  • CLI: Fix capture not starting when playing back from-start movies
  • CLI: Race condition in movie playback start
  • ConfigDialog: Crash when applying editbox content
  • ConfigDialog: Crash when too option item string is too long
  • ConfigDialog: Fix directory options not being saved when textboxes are edited manually
  • ConfigDialog: Fix plugin discovery loading text not disappearing when no broken plugins are reported
  • ConfigDialog: Handle arbitrary text lengths in inline editbox
  • ConfigDialog: Inline editboxes being too wide
  • Core/ST: Fix slot being incremented on save operations when increment slot is enabled
  • EncodingManager: Fix crash when audio frequency changes during capture
  • EncodingManager: Incorrect video dimensions being used to readscreen_hybrid when no MGE implementation is available
  • FFmpegEncoder: Audio drift during lag
  • FFmpegEncoder: Mangled path being read
  • FFmpegEncoder: Wrong divisor in sample length calculation
  • IOHelpers: Fix infinite recursion
  • Lua/Emu: getversion(1) cutting off first number in version
  • Lua: Fix corrupted console output
  • MGECompositor: Fix load_screen data becoming outdated when copying and loading in quick succession
  • Main: Main window having no closing animation
  • MovieDialog: Fix listview column header text corruption
  • PianoRoll: Fix string corruption
  • PianoRoll: Potential crash when ListView entries are too long
  • PianoRoll: Use more consistent wording when mentioning seek savestates
  • Rombrowser: Potential crash when ListView entries are too long
  • Seeker: Fix seeker start button text getting stuck on "Stop" when begin_seek broadcasts early
  • Statusbar: Avoid showing negative indicies when zero-index is enabled
  • StlExtensions: Fix wrong allocation size in string_to_wstring
  • VCR: Don't show savestate warnings for internal savestate API calls
  • VCR: Fix incorrect wording in savestate fail dialog
  • View: Attempt to improve stability of recent menus
  • View: Don't "adjust" VIs when zero-index is enabled