SEGA SATURN模擬器 Ymir 發布新版,更新如下 :
New features and improvements
- Debugger: Add Priority Stack to VDP2 debug overlay.
- VDP2: Various performance optimizations to the software renderer, improving performance in graphics-bound games (especially in high resolution modes). Technical details:
- RBG1 was being unnecessarily rendered when NBG0 was enabled and RBG1 was disabled
- Remove redundant transparency bit since priority zero acts as transparency
- Remove various unused function arguments, reducing CPU register and stack pressure
- Pass down VDP2 register references as arguments rather than fetching them from scratch everywhere
- Reuse line data (i.e. skip recomputing lines) when rendering vertical mosaic
- Bit-pack character pattern data in a single 32-bit value
- Microoptimize scroll coordinates calculations
- Rotation parameter table calculations:
- Specialize calculations for (1) no coefficient table, (2) per-line coefficient table and (3) per-dot coefficient table
- Hoist coefficient table enable and per-dot coefficients checks out of the loop
- Make the inner loops SIMD-friendly
- Avoid unnecessary computation of transparency and line color screen data if they are disabled
- Microoptimizations to the compositor function:
- Layer sorting now uses a combined key
- Gather layer data in one single loop
- Pixel fetching is now templatized and some bail out checks are done earlier
- Color offset calculation enable flag is cleared in the fetch loop if no offset is actually applied
Fixes
- Debugger: Various SH2 stack analysis fixes.
- Game DB: Add slow VDP1 flag to Funky Fantasy to fix slow FMVs.
- Media: Detect postgaps in data tracks when the CUE sheet doesn't explicitly announce them. Fixes audio track shifts in bad Virtua Fighter 2 dumps.
- Media: Fix PREGAP/POSTGAP handling in CUE/BIN dumps. Fixes shifted audio tracks in games dumped with ImgBurn.
- SH2: Fix illegal slot instruction exception handling. (thanks to @celeriyacon)
- VDP1: Add game-specific flag for skipping command processing if the top of the table is empty. Enable it exclusively for Sekai no Shasou kara - I Swiss-hen - Alps Tozantetsudou no Tabi. Fixes missing graphics in Gungriffon. (#810)
- VDP1: Disable early polygon drawing termination when rendering polygons when user clipping mode is inverted. Fixes clipped polygons around the minimap in Machine Head (#767).
- VDP1: Implement simple infinite loop detection. Fixes slowdown in the Mojave Desert stage (1-2) in Gale Racer.
- VDP2: Apply color calculations to transparent sprite mesh on layer 0. Fixes stripes on ground plane in Gungriffon.
- VDP2: Apply color offset to transparent sprite mesh on layer 0 in a separate step. Fixes missing spotlight in the Colonel battle in Mega Man X4. (#818)
- VDP2: Fix VRAM access calculations when RBG1 is enabled. Fix missing car graphics regression in Gale Racer. (#359)
- VDP2: Fix and use line color screen calculation ratio when LNCL is inserted. Fixes text background issues in Doukoku Soshite. (#502)
沒有留言:
張貼留言