签到天数: 2039 天 [LV.Master]伴坛终老
|
Changes
New features and improvements
App: Added a button to copy the version string from the About window.
App: Added hotkey to take screenshots (bound to F12 by default) with adjustable scaling from 1x to 4x. (#350)
App: Added option to automatically load most recently loaded game disc image on startup.
App: Auto-center About window whenever it is opened.
App: Automatically detect profile path and allow using the user profile path from the OS's user home directory. (#411, #17; @bsdcode)
App: Display error dialog on unhandled exceptions.
App: Show actual emulation speed in title bar and frame rate OSD.
App: Show actual VDP1 frame rate separated from VDP1 draw calls.
Build: macOS builds are now universal -- one binary supports both Intel and Apple Silicon Macs. (#351; @Wunkolo)
Build: Nightly builds are now available here.
Core: Improve manual reset event performance by using OS-specific implementations based on cppcoro.
Debugger: Added CD Block filters view.
Debugger: Added rudimentary SH-2 breakpoint management and per-game debugger state persistence. (#22)
Debugger: Added SH-2 exception vector list view.
Debugger: Allow suspending SH-2 CPUs in debug mode. (#22)
Debugger: Implemented SH-2 breakpoints. (#22)
Debugger: Introduced debug break signal that can be raised from just about anywhere. (#21)
GameDB: Force SH-2 cache emulation for Astal, Dark Savior and Soviet Strike.
GameDB: Implemented flag to force SH-2 cache emulation to specific games.
Input: Categorized gamepad triggers and sticks as absolute axes. Absolute axes output fixed values at specific positions.
Input: Categorized gamepad triggers as monopolar axes (having values ranging from 0.0 to 1.0) and gamepad sticks as bipolar axes (-1.0 to +1.0).
Input: Implemented Arcade Racer peripheral. (#29)
Input: Implemented Mission Stick peripheral with toggleable three-axis and six-axis modes. (#30)
Video: Added hotkeys to rotate screen clockwise and counterclockwise. (#318)
Video: Added option to reduce input lag by adjusting GUI frame rate to the largest multiple of the emulator's target frame rate that's not greater than the display's refresh rate.
Video: Added option to reduce video latency by displaying the latest frame instead of the oldest when the emulator is running faster than the display's refresh rate.
Video: Added option to synchronize video frames in windowed mode.
Video: Avoid frame skipping on slow refresh rate monitors by disabling VSync if the target frame rate exceeds the display's refresh rate.
Video: Simplify frame rate control in full screen mode.
Fixes
CD Block: Disconnect filter inputs for the fail target, not the filter itself. Fixes broken graphics in Ultraman Zukan's title screen. (#329)
CD Block: Don't disconnect CD device from when setting the fail output of filter. Fixes Digital Dance Mix Vol. 1 - Namie Amuro playback.
CD Block: Fix directory indexing for ReadDirectory and ChangeDirectory commands. Fixes Sega Rally Championship Plus (Japan) not booting.
CD Block: Fix handling of "no change" playback end parameter. Fixes Astal taking a long time to load the first stage.
CD Block: Properly read path table and directory records that cross the boundary between two CD sectors. Fixes Mizuki Shigeru no Youkai Zukan Soushuuhen booting back to BIOS. (#391)
CD Block: Read subheader data from CD-ROM Mode 2 tracks only and fix their addressing. Fixes missing intro FMV in NiGHTS into Dreams... (#46)
CD Block: Start new playbacks from starting FAD when paused. Fixes WipEout 2097 and XL boot issues. (#202)
Media: Add support for CD-ROM Mode 2 tracks. Fixes Last Bronx not booting. (#238)
Media: Compensate for INDEX 00 pregap in multi-indexed tracks in CUE sheets. Fixes partially skipped Minnesota Fats - Pool Legend voice lines. (#363)
Media: Fix handling of pregap in data tracks in single BIN+CUE dumps. Fixes some Last Bronx dumps not booting.
Media: Realign data offset to hunks between tracks in CHDs. Fixes some Last Bronx CHD dumps not booting.
Save states: Added CD Block file system state to save state data.
Scheduler: Ensure events are executed in chronological order.
SCU: Fix A-Bus external interrupt handling.
SCU: Fix DMA source address updates when source address increment is zero. Fixes background priority issue regression in Street Fighter - Real Battle on Film. (#168)
SCU: Fix Timer 1 not triggering when the reload counter is larger than 0x1AA or 0x1C6 depending on horizontal resolution.
SCU: Ignore/skip illegal DMA transfers in indirect transfer lists. Partially fixes corrupted or missing sprites in Fighting Vipers.
SCU: Illegal DMA interrupts should not trigger VDP1 Sprite Draw End DMA transfers.
SCU: Notify bus of DMA transfers.
SCU: Prevent indirect DMA transfers from starting if the first entry is illegal. Stops Tennis Arena from destroying all memory.
SCU: Use the source address increment for indirect DMA transfer data.
Settings: Disable "Include VDP1 rendering in VDP2 renderer thread" by default and don't enable it in presets.
Settings: Persist custom Screenshots profile path. (#398)
Settings: Properly restore controller binds for controllers other than the Saturn Control Pad. (#397)
SH2: Fix CPU getting stuck handling DMAC interrupts forever. Fixes Shellshock not booting. (#344)
SH2: Handle sleep/standby mode and wake up on interrupts. Fixes Culdcept getting stuck on intro FMV and boosts overall performance on games that make use of the SLEEP instruction. (#346)
SH2: Only clear zeroed out bits from write clear bitmask on FRT FTCSR writes. Fixes random lockups in Daytona USA. (#209) (thanks to @celeriyacon)
SMPC: Fixed TH control mode reports on SH-2 direct mode. Fixes input response in World Heroes Perfect, Touge King the Spirits, Chaos Control Remix, and Father Christmas. (#297, #322, #348, #374)
SMPC: Fixed TL reporting on SH-2 direct mode.
VDP1: Disable "antialiasing" for lines and polylines.
VDP1: Fix bad transparency caused by "illegal" RGB 5:5:5 color data (0x0001..0x7FFE). Fixes transparency in Sonic X-treme.
VDP1: Process framebuffer swap slightly later in the VBlank OUT line. Fixes numerous issues:
Flickering graphics in DragonHeart - Fire & Steel, King of Fighters '96 / '97, Jantei Battle Cos-Player, PhantasM, Soviet Strike, Virtua Cop 2, and Yellow Brick Road (#272, #303, #334, #335, #336, #368)
Corrupted sprites in Center Ring Boxing, and Marvel Super Heroes (Shuma Gorath's Chaos Dimension move) (#72, #377)
Partially missing sprites in Fuusui Sensei - Feng-Shui Master (#405)
Freezes/crashes in Mahou no Janshi - Poe Poe Poemy, and Shockwave Assault (#378, #406)
VDP1: Reorder LOPR, COPR, CEF and BEF updates. Fixes missing graphics in Virtual On - Cyber Troopers and Sega Touring CARS. (#112, #246)
VDP1: Use SCU DMA bus notification to adjust VDP1 VRAM write timing penalty. Fixes hanging intro FMV in Sonic Jam without breaking Mega Man X3's sprites. (#83)
VDP2: Always initialize and update background counters even for disabled layers. Fixes rolling screen in F-1 Challenge. (#300)
VDP2: Block bitmap reads from VRAM banks without appropriate CP access. Fixes dirty graphics in NFL Quarterback Club 97's title screen. (#332)
VDP2: Compute bitmap data access offsets when multiple chunks are read for an NBG. Fixes background offset in Doukyuusei - if while maintaining the slicing fix for Capcom Generation - Dai-5-shuu Kakutouka-tachi. (#384)
VDP2: Don't apply sprite shadow if sprite priority is lower than the top layer. Fixes shadows drawing on top of objects in Blue Seed - Kushinada Hirokuden. (#349)
VDP2: Don't blend line screen with layer 1 if line screen color calculations are disabled. Fixes fog in battle backgrounds in Zanma Chou Ougi - Valhollian. (#352)
VDP2: Don't increment vertical scroll BG coordinate on complementary field lines when rendering deinterlaced RBG lines. Fixes jittery/interlaced Grandia FMVs when deinterlace is enabled.
VDP2: Fix layer enable flags calculation when only RBG1 is enabled. Fixes missing background in MechWarrior 2's menus. (#413)
VDP2: Fix line color insertion logic. Fixes erroneously blended ground in Athlete Kings. (#299)
VDP2: Fix priority calculations for bitmap BGs. Fixes character sprites being drawn behind the background layer in Mr. Bones. (#247)
VDP2: Fix race conditions with threaded deinterlacing causing some artifacts on RBGs in single-density interlaced mode.
VDP2: Fix window indexing for RBGs in high resolution modes. Fixes stretched shadows in Last Bronx. (#395)
VDP2: Handle RBG window pixels in high resolution modes. Fixes extra column of garbage in Athlete Kings. (#299)
VDP2: Invert TVSTAT.ODD reads. Fixes garbled graphics on the top half of the screen in True Pinball. (#320)
VDP2: RBG1 uses Rotation Parameter B, not A.
VDP2: Reset NBG2/3 base vertical scroll counters when writing to SCYN2/3. Fixes garbled graphics in Marvel Super Heroes vs. Street Fighter during Shuma Gorath's Chaos Dimension move. (#72)
VDP2: Rework rotation table calculations. Fixes warped ground on player two's screen in Sonic R multiplayer mode. (#401)
VDP2: Skip calculation of VRAM PN/CP accesses for NBGs when RBG1 is enabled. Fixes missing car graphics in Gale Racer. (#359)
VDP2: Swap even/odd field when entering VBlank.
|
|