News > News Archive
WinUAE v6.0.0
Zykon, 08:01, 07-07-2025
The Commodore Amiga console emulator has been updated - WinUAE
Custom chipset rewrite - Custom chipset emulation (Agnus/Alice and Denise/Lisa) almost completely rewritten. Almost every part of chipset emulation is now internally cycle accurate - Custom chipset Denise/Lisa emulation is now running in separate thread for large performance increase in accurate emulation modes compared to previous versions - VPOSW/VHPOSW tricks are now cycle-accurately emulated without restrictions - Horizontal and vertical blanking and sync start/end, csync, csync equalization pulses, etc are now fully cycle-accurately emulated, both hardwired and programmed. Mixing of hardwired and programmed is fully supported. Agnus/Alice hardwired PAL/NTSC sync generator is almost logic gate level emulated - “Display” and Agnus/Alice vertical and horizontal counters are now fully separately emulated, display emulation now works correctly even if Agnus vertical or horizontal is moved backwards or forwards or anywhere (even outside of normal display range), unlimited times per line and/or field - All screenmodes (including “Fake” NTSC or similar mode) now count total number of “display” lines and uses it to setup display height. These modes now work even if they do multiple V(H)POSW modifications - Interlace detection now uses vsync timing like real displays - BPLCON0 ERSY=1 without connected genlock sync stop timing is now accurate. This was faked previously - Full AGA hires/shres bitplane and sprite horizontal granularity support. Separate subpixel mode does not exist anymore - ECS Agnus/AGA UHRES bitplane and sprite RGA DMA slots (0x78, 0x7a) emulated. Completely useless feature because UHRES can only do some DMA transfers to nowhere. It needs extra hardware that was never implemented. UHRES needs to be emulated because (possibly accidentally enabled) UHRES DMA can steal cycles from copper, blitter and CPU - NTSC LOL (long line) state is accurately emulated. Mismatched STRLONG strobe and LOL state now causes correct lores pixel wide horizontal shift. (Mismatched = for example CPU writing to STRLONG when line is not long) - Blitter channel sequencer should be 100% accurate now, except possibly line to non-line mid operation switch. Blitter “micro-operation” timings are not yet 100%: when exactly it applies A shift, B shift etc. This will be tested and implemented in the future. Only affects blitter result if BLTxDAT/shifts/etc are modified mid-blit. Channel enable/fill mode/desc/minterm/BLTxMOD/BLTxPT mid-blit changes should be already fully accurate - Collision emulation is now very fast. Collision mode default changed to Full collision - Ultra extreme debug mode now shows normally hidden bitplane and sprite pixels inside horizontal and vertical blanking periods. Previously only background color was fully visible - DMA debugger has much more detailed information available Other new features - Low level keyboard emulation. Emulates keyboard microcontroller internal ROM code and keyboard matrix, optionally with or without NKRO. All 3 keyboard MCU variants supported. (CSG 6570-036, 68HC05C and D8039HLC. 6500-1 used in A1000 keyboards is same as 6570-036 but with older ROM code. 6500-1 ROM is not yet dumped). Caps lock led state is fully emulated in low level keyboard emulation modes, including demos that flash caps lock led. Chipset panel “Keyboard connected” checkbox replaced with Keyboard mode (“Disconnected”, “UAE high level keyboard” and list of different low level emulated keyboard models) - PCI Matrox Millennium, Millennium II, Mystique and Mystique 220 emulation from 86box (originally from PCem) - Merged Voodoo 3 emulation updates from 86box - Added 512kWOM A1000 512k WOM expansion emulation. Option in Expansions->Built-in expansions - Added RIPPLE IDE controller emulation Fixes - Prometheus FireStorm PCI bridge PCI IO mapping fixed - Fixed Mediator 1200TX second PCI window mapping logic - Fixed TekMagic onboard RAM config type - Do not reject (reject = not hardware accelerated, lets Picasso96 software fallback to handle it) uaegfx Picasso96 blit operation if RenderInfo BytesPerRow field is zero. Zero BPR is allowed - GDI mode didn’t free all resources when switching between native and RTG mode - If selected graphics API is not supported, test all other options. Previously failing D3D9 switched to GDI, even if D3D11 was available - Fast/non-accurate emulation mode and writing to CIA high timer register didn’t load timer from latch immediately in oneshot mode if timer was already running (Introduced in 4.9.x) - uaegfx RTG vertical blank interrupt might have been duplicated or lost in some situations (very old bug), depending on RTG panel refresh rate setting - Passthrough printing mode fix for v4+ Windows printer drivers - Fixed FDI disk image support - JIT FPU mode FPU registers lost some accuracy when FPU registers were read/written to/from memory with FMOVEM - Removing last sound device on the fly (for example USB sound card without enabled on-board sound device) crashed in WASAPI mode - Added A1000 EHB Denise and non-EHB Denise models to Chipset panel. Also renamed existing entries - Fixed strange window movement when clicking on title bar and keeping it pressed and “Automatically capture mouse when window is activated” was enabled - Expansion panel SCSI controller ID selection enable/disable/selection fixed. (For example A4091) Updates - Default configuration is now cycle-exact A500. Previously default was approximate A500 - Query PC drive/network drive/removable drive status only after confirming drive type first. For example if “Add PC drives at startup” or “CDFS automount” is only ticked, don’t query status of possible network drives that might not be mapped or available, causing boot delays - CD32 CD reads should be more real optical drive friendly, when CD32 is reading data sequentially (playing CD streaming animation or video), host side CD sector reads are now also sequential, without periodically re-reading part of previously read sectors - Disabled annoying CD audio playback aOSD led flicker - When exiting debugger, restore focus back to previously active window - If real HD/memory card has Windows supported partition table and partition metadata can be queried without administrator privileges but administrator privileges are needed to read/write partition data, list partition(s) in Add Harddrive dialog with “ACCESS DENIED” text. Previously partition(s) were not listed - Added Amiga GPT partition type support. Works the same as 0x76 partition type with MBR partitioned drives - Add harddrive Lock option didn’t lock all partitions if drive had MBR partition table + one or more Windows supported partition types - GUI Configurations file list’s expanded tree nodes are now stored in registry/ini and are loaded and expanded automatically in following sessions - Hide expansion device “autoboot disabled” checkbox when device does not have any autoboot jumpers. (or have nothing to do with storage devices) - Integer scale horizontal/vertical resolution aspect ratio correction should now work more sanely (for example if superhires + vertical doubling, output will be always vertically doubled first, after doubling, integer scaling ratio is selected). Supports also programmed doublescan modes - TV Overscan options now work when combined with most filter modes - Added (config file only currently, “rtg_noautomodes=true”) option that disables uaegfx automatically generated screen modes. With Picasso96 v3.4+ and P96Prefs new modes can be created manually, just like when using real hardware. Note: Older Picasso96 versions and PicassoMode utility don’t support manual uaegfx modes - Added 3840×1080 to known uaegfx automatically generated resolution list (“known” = gets static mode id) - Fixed crash when doubleclicking config tree view root node - Subpixel emulation option removed. Emulation is now always subpixel accurate in accurate emulation modes - On the fly chipset type switching improved (For example AGA colors are now preserved, not all registers were preserved fully previously) - Added line count and type to bottom border status line (for example 313p or 625i), fully supports all weird modes - Obsolete 16-bit host color depth support removed - All software filters removed. Removal of 16-bit host screen depth support and always-enabled temporary graphics buffer (new chipset emulation does not need it anymore) makes software filter support unnecessarily complex and they are obsolete anyway. In the future better shader filter support will be implemented - Serial port TCP/IP mode uses now TCP_NODELAY flag to reduce latency - If selected WASAPI sound channel mode is not supported, try all possible channel modes until supported mode is found, or until all combinations have been tested. Also if channel count needs changing from stereo to higher channel count (for example sound device only supports 6 or 8 CH modes internally), use 6/8 channel cloned stereo variant because user might only have stereo speakers - Limit initial Windows to Amiga clipboard copy to max 30k (initial = when Amiga is booted and Windows clipboard is not empty) if clipboard sharing is enabled. This prevent slow startup if clipboard sharing is enabled and configuration is not fast and Windows clipboard has some random large image - Added address and length to sample ripper file names
PCSX2 v2.4.0
Iron, 14:10, 03-07-2025
Release of the new stable version of the PlayStation 2 emulator - PCSX2.
Overview of key changes:
Ymir v0.1.5
Zykon, 16:53, 29-06-2025
The latest Sega Saturn emulator - Ymir, has been updated.
New features and improvements - App: Added command-line option -P to force emulator to start paused - App: Added new Tweaks tab to Settings window consolidating all accuracy, compatibility and enhancement settings - App: Added option to create internal backup RAM files per game - App: Added option to override UI scale - App: Added option to toggle fullscreen by double-clicking the display - App: Added recent games list to File menu - App: Automatically center Settings window when opening it - App: Close windows when pressing B or Circle on gamepads while nothing is focused - App: Enable gamepad navigation on GUI elements - App: Store relative paths in Ymir.toml - App: Use window-based DPI to adjust UI scale, allowing the UI to adapt to displays with different DPI settings - Backup RAM: Support interleaved backup image formats such as the ones produced by Yaba Sanshiro or the MiSTer core - Backup RAM: Support standard BUP backup files - SCSP: Added option to increase emulation granularity for improved timing accuracy - SCSP: Double-buffer DSP MIXS memory - SCSP: Implemented MIDI In and Out - SCSP: Interleave DSP execution and slot processing - VDP1: Added option to replace meshes with 50% transparency - VDP1: Clip sprites to visible area to speed up rendering, especially of very large sprites - VDP: Added option to deinterlace video - VDP: Added option to move VDP1 rendering to the emulator thread to improve compatibility with some games (e.g. Grandia) Fixes - App: Fix rare crash when loading a backup memory image in the Backup Memory Manager - App: Fix window scaling on macOS Retina displays when using HiDPI mode - App: Prevent loading internal backup memory image as backup RAM cartridge image - CD Block: Start new playbacks from starting FAD when previous playback has ended. Fixes WipEout freeze after SEGA logo - Media: Fix pregap handling in single BIN images - SCSP: Apply DAC18B to output. Fixes quiet audio in many games - SCSP: Fix loss of accuracy on MIXS send level calculation - SCSP: Fix send level, panning and master volume calculations - SCSP: Fix slot output processing order - SCSP: Fix swapped DAC18B and MEM4MB bits - SCSP: Run one additional DSP step to fix FRC issues - SCU, SH-2, SMPC, SCSP, VDP: Numerous fixes to interrupt handling. Fixes intermittent Rayman inputs and some audio glitches - SCU: Various DSP accuracy fixes - SH2: More fixes to FRT, WDT and DIVU - SMPC: Cancel scheduled command processing event when resetting SMPC. Fixes a long hang after hard resetting in some cases - SMPC: Change fixed bits from 111 to 100 in TH/TR control mode responses for the first data byte of the Control Pad and 3D Control Pad peripherals. Fixes Golden Axe booting back to BIOS - SMPC: Eliminate spurious INTBACK interrupts - SMPC: Prevent COMREG writes when a command is in progress. Fixes some boot issues leading to the "Disc unsuitable for this system" message - SMPC: Prevent optimized INTBACK report from occurring unless a continue request was sent. Fixes input issues with Yaul-based homebrew - SMPC: Prioritize INTBACK continue requests over break requests - System: Tighten synchronization between the two SH-2 CPUs and remove artificial timeslice limit. Improves performance and fixes Fighters Megamix and Sonic Jam intermittent boot issues - VDP1: Lower command limit to work around problematic games that don't set up a terminator in the command table - VDP1: Significantly slow down command execution when running the VDP1 renderer on the emulator thread. Fixes Dragon Ball Z - Shinbutouden freeze after SEGA logo - VDP2: Apply horizontal mosaic effect to rotation background layer. Fixes missing effect on Race Drivin' Time Warner logo - VDP2: Apply window effect to sprite layer. Fixes graphics going out of bounds in many games - VDP2: Check for invalid access patterns to determine if NBG characters should be delayed. Fixes background offsets in many games - VDP2: Disable NBG1-3 only if both RBG0 and RBG1 are enabled simultaneously - VDP2: Honor access cycles and VRAM bank allocations to restrict pattern name and character pattern accesses. Fixes garbage graphics in Panzer Dragoon Saga, Sonic 3D Blast and Street Fighter Alpha/Zero 2 - VDP2: Invert back screen color calculation ratio. Fixes black background on Sakura Taisen FMVs - VDP2: Move existing VCounter into VDP2 VCNT register. Fixes Assault Suit Leynos 2 freeze when going in-game and King of Fighters '95 not booting - VDP2: Synchronize background enable events with the renderer thread. Fixes FMV slicing issues on slow machines on Sakura Taisen - ymdasm: Fix SCU DSP unconditional JMP disassembly
News > News Archive