Path to this page:
Subject: CVS commit: pkgsrc/emulators/mgba
From: Nia Alarie
Date: 2020-01-25 20:26:19
Message id: 20200125192619.6076FFBF4@cvs.NetBSD.org
Log Message:
mgba: Update to 0.8.0
0.8.0: (2020-01-21)
Features:
- Improved logging configuration
- One-Player BattleChip/Progress/Beast Link Gate support
- Add Game Boy Color palettes for original Game Boy games
- Debugger: Add unary operators and memory dereferencing
- GB: Expose platform information to CLI debugger
- Support Discord Rich Presence
- Debugger: Add tracing to file
- Enhanced map viewer, supporting bitmapped GBA modes and more displayed info
- OpenGL renderer with high-resolution upscaling support
- Experimental high level "XQ" audio for most GBA games
- Interframe blending for games that use flicker effects
- Frame inspector for dissecting and debugging rendering
- Switch: Option to use built-in brightness sensor for Boktai
- Ports: Ability to enable or disable all SGB features (closes mgba.io/i/1205)
- Ports: Ability to crop SGB borders off screen (closes mgba.io/i/1204)
- Cheats: Add support for loading Libretro-style cht files
- GBA Cheats: Add support for loading EZ Flash-style cht files
- Support for unlicensed Wisdom Tree Game Boy mapper
- Qt: Add export button for tile view (closes mgba.io/i/1507)
- Qt: Add recent game list clearing (closes mgba.io/i/1380)
- GB: Yanking gamepak now supported
- Qt: Memory range dumping (closes mgba.io/i/1298)
Emulation fixes:
- GB: Fix using boot ROM with MMM01 games
- GB Audio: Only reset channel 3 sample in DMG mode
- GB Audio: Sample inactive channels (fixes mgba.io/i/1455, mgba.io/i/1456)
- GB Audio: Fix channel 4 volume (fixes mgba.io/i/1529)
- GB I/O: Filter IE top bits properly (fixes mgba.io/i/1329)
- GB Memory: Better emulate 0xFEA0 region on DMG, MGB and AGB
- GB Video: Delay LYC STAT check (fixes mgba.io/i/1331)
- GB Video: Fix window being enabled mid-scanline (fixes mgba.io/i/1328)
- GB Video: Fix mode 0 window edge case (fixes mgba.io/i/1519)
- GB Video: Fix color scaling in AGB mode
- GBA: All IRQs have 7 cycle delay (fixes mgba.io/i/539, mgba.io/i/1208)
- GBA: Reset now reloads multiboot ROMs
- GBA BIOS: Fix multiboot entry point (fixes Magic Floor)
Other fixes:
- Core: Improved lockstep driver reliability (Le Hoang Quyen)
- FFmpeg: Drain recording buffers
- GB: Fix reading ROM immediately after unmapping BIOS
- GB SIO: Fix lockstep failing games aren't reloaded
- GBA Cheats: Fix value incrementing in CB slide codes (fixes mgba.io/i/1501)
- Libretro: Fix crash changing allowing opposing directions (hhromic)
- Qt: Fix some Qt display driver race conditions
- Qt: Fix menu bar staying hidden in full screen (fixes mgba.io/i/317)
- Qt: Only show emulator restart warning once per settings saving
- Qt: Fix LibraryController initialization (fixes mgba.io/i/1324)
- Shaders: Fix gba-color shader resolution (fixes mgba.io/i/1435)
- Switch: Fix audio when video rate desyncs (fixes mgba.io/i/1532)
Misc:
- CMake: Don't use libzip on embedded platforms (fixes mgba.io/i/1527)
- Core: Add keysRead callback
- Core: Create game-related paths if they don't exist (fixes mgba.io/i/1446)
- Core: Add more memory search ops (closes mgba.io/i/1510)
- Debugger: Make tracing compatible with breakpoints/watchpoints
- Debugger: Print breakpoint/watchpoint number when inserting
- Feature: Switch from ImageMagick to FFmpeg for GIF generation
- FFmpeg: Support audio-only recording
- GB Memory: Support running from blocked memory
- GBA BIOS: Add timings for HLE BIOS math functions (fixes mgba.io/i/1396)
- GBA BIOS: Fix clobbered registers in CpuSet (fixes mgba.io/i/1531)
- GBA Savedata: EEPROM performance fixes
- GBA Savedata: Automatically map 1Mbit Flash files as 1Mbit Flash
- Debugger: Add breakpoint and watchpoint listing
- mGUI: Remember name and position of last loaded game
- OpenGL: Only resize textures when needed
- Qt: Don't unload ROM immediately if it crashes
- Qt: Support switching webcams
- Qt: Cap window size on start to monitor size
- Qt: Open a message box for Qt frontend errors
- Qt: Increase maximum magnifications and scaling
- Qt: Add native FPS button to settings view
- Qt: Improve sync code
- Qt: Add option to pause on minimizing window (closes mgba.io/i/1379)
- Qt: Scale pixel color values to full range (fixes mgba.io/i/1511)
- Qt: Remove What's This icon from dialogs
- Qt: Printer quality of life improvements (fixes mgba.io/i/1540)
- Qt: Add copy and QoL improvements to graphic views (closes mgba.io/i/1541)
- Qt: Show list of all sprites in sprite view
- Qt: Add option for disabling OSD messages
- Qt, OpenGL: Disable integer scaling for dimensions that don't fit
- SM83: Support PC-relative opcode decoding
- Switch: Dynamic display resizing
- Switch: Support file associations
- Vita: L2/R2 and L3/R3 can now be mapped on PSTV (fixes mgba.io/i/1292)
Changes from beta 1:
Emulation fixes:
- ARM: Fix STR writeback pipeline stage
- ARM: Partially fix LDM/STM writeback with empty register list
- ARM: Fix stepping when events are pending
- GBA DMA: Fix case where DMAs could get misaligned (fixes mgba.io/i/1092)
- GBA Memory: Fix open bus from IWRAM (fixes mgba.io/i/1575)
- GBA Timers: Improve timer startup emulation
- GBA Video: Fix OpenGL renderer 512x512 backgrounds (fixes mgba.io/i/1572)
- GBA Video: Fix BLDY for semitransparent sprite on non-target-2 backgrounds
- GBA Video: Fix effects blending improperly in some non-last windows
- GBA Video: Copy higher priority target 1 flag
Other fixes:
- 3DS: Fix screen darkening (fixes mgba.io/i/1562)
- Core: Fix uninitialized memory issues with graphics caches
- Core: Return null for out of bounds cached tile VRAM querying
- GBA Video: Fix OpenGL fragment data binding
- GBA Video: Fix mosaic in modes 1-5 in OpenGL (fixes mgba.io/i/1620)
- Debugger: Fix tracing skipping instructions (fixes mgba.io/i/1614)
- OpenGL: Only invalidate texture if dimensions change (fixes mgba.io/i/1612)
- Qt: Fix fast forward mute being reset (fixes mgba.io/i/1574)
- Qt: Fix scrollbar arrows in memory view (fixes mgba.io/i/1558)
- Qt: Fix several cases where shader selections don't get saved
- Qt: Fix division by zero error in invalid TilePainter state
- Qt: Fix "restart needed" dialog after first config (fixes \
mgba.io/i/1601)
- Qt: Fix undesired screen filtering when paused (fixes mgba.io/i/1602)
- Qt: Fix sprite view using wrong base address (fixes mgba.io/i/1603)
- Qt: Fix inability to clear default keybindings
- Qt: Release held actions if they get rebound
- Qt: Fix crash double-clicking menus in shortcut settings (fixes mgba.io/i/1627)
- Qt: Fix record A/V window not updating resolution (fixes mgba.io/i/1626)
- Vita: Fix analog controls (fixes mgba.io/i/1554)
- Wii: Fix game fast-forwarding after slowing down
- Wii: Improve audio buffering (fixes mgba.io/i/1617)
Misc:
- GB Memory: Support manual SRAM editing (fixes mgba.io/i/1580)
- GBA: Trim non-movie ROMs to 32 MiB if applicable
- GBA Audio: Redo channel 4 batching for GBA only
- GBA I/O: Stop logging several harmless invalid register reads
- GBA Video: Changing OpenGL scaling no longer requires restart
- Debugger: Separate aliases from main commands
- Debugger: Print break-/watchpoint ID when breaking in CLI
- Debugger: Minor interface cleanup
- SDL: Use controller GUID instead of name
- SM83: Rename LR35902 to SM83
- Tools: Allow using threaded renderer in perf.py
- Tools: Clean up unused argument in mgba-perf
Files: