The Game Boy Advance console emulator has been updated - mGBA.
Emulation fixes: - GB Audio: Fix audio envelope timing resetting too often - GB I/O: Fix STAT writing IRQ trigger conditions - GBA GPIO: Fix gyro read-out start - GBA I/O: Fix HALTCNT access behavior - GBA I/O: Fix audio register 8-bit write behavior - GBA Serialize: Properly restore GPIO register state - GBA SIO: Fix MULTI mode SIOCNT bit 7 writes on secondary GBAs Other fixes: - Core: Fix patch autoloading leaking the file handle - GB: Fix uninitialized save data when loading undersized temporary saves - GB, GBA Core: Fix memory leak if reloading debug symbols - GB Serialize: Prevent loading invalid states where LY >= 144 in modes other than 1 - GBA Audio: Fix crash if audio FIFOs and timers get out of sync - GBA Audio: Fix crash in audio subsampling if timing lockstep breaks - GBA Core: Fix loading symbols from ELF files if the file doesn’t end with .elf - GBA Memory: Let raw access read high MMIO addresses - Qt: Fix crash when applying changes to GB I/O registers in I/O view - Qt: Fix LCDC background priority/enable bit being mis-mapped in I/O view - Qt: Fix saving named states breaking when screenshot states disabled - Qt: Fix potential crash on Wayland with OpenGL - Qt: Fix installer updates if a version number is in the filename - Updater: Fix updating appimage across filesystems Miscellaneous: - Qt: Make window corners square on Windows 11 - Switch: Add bilinear filtering option - Vita: Add imc0 and xmc0 mount point support
The PlayStation2 console emulator has been updated - Play!.
- Implemented missing instruction, fixing rendering in some visual novel games - Fixed regression in JIT that was causing rendering issues in Free Running - Fixed hanging when skipping intro video in Viewtiful Joe - Added missing HLE function needed for Mojib-Ribbon - (Desktop) Changed bootable filtering mechanism - (Windows) Fixed issue preventing Black Hawk Down from saving properly
The Atari Jaguar console emulator has been updated - BigPEmu.
- Added a script for Raiden touch control. Ship automatically travels to the touch point and auto-fires when held, with a 2-finger tap to trigger bombs - Added a script for Vid Grid touch control. Drag and drop - Added a script for Towers II touch control. (with an option to uncap the framerate) In-game menu cursor is touch-driven, 2-finger tap exits the menu - Added a script for Myst touch control. Hold to drag the cursor, tap to activate - Added some scripting functionality to allow setting custom read/write handlers for non-RAM/ROM memory regions - The iOS port now prompts the user to determine their battery/heat versus performance preference on first run. (since we can't just be energy-efficient without the iOS scheduler punishing us, and I'm not having any luck getting anyone to read the FAQ/user manual) - The iOS port now has a separate "Connected Idle Time" setting, which defaults to 3.0 and is used instead of "Overlay Idle Time" when at least one external device is connected. (workaround for the same FAQ/user manual problem above) - Added lots of random new scripting functionality - Fixed game thumbnails rendering at the incorrect scale in portrait mode
The Sega Saturn emulator has been updated - YabaSanshiro.
Changes in 1.16.6 - simplify fullscreen mode - Fix: Crash when start fullscreen mode Changes in 1.16.5 - Auto update function - Fix: Crash when setting menu is changed - Fix: Polygons are broekn when restart Changes in 1.16.4 - Improve the stability issue of Vulkan - Support 8bitDoM30 and retro-bit SEGA Saturn gamepad - Reflect device pixel ratio
The PlayStation Portable console emulator has been updated - PPSSPP.
What's new in 1.18 Platform support - Improved iOS/Mac support, Game Mode support - IR Interpreter: work on correctness and optimizations - Interpreted Vertex Decoder optimizations - SDL fixes - Legacy Edition for old Android TV devices - Android and Windows shortcuts - add icons and bugfixes - Improve performance of CHD loading UI - Many crash, hang and performance fixes around the UI - New post proc filter "Sharp bilinear" - Misc UI fixes - 3 new themes - Game info in-game - New remote iso UI - Install save games from ZIP file - More input-mappable actions like Reset, allow mapping Alt key - Homebrew Store: Added website links, license info - RetroAchievements: Can now hash homebrew apps - Fix regression of the AxisSwap feature Emulation - Misc crash fixes - Vulkan barrier fixes - Misc compatibility fixes - Misc filesystem fixes (FDs, date/time) - Workaround for The Warriors video playback - Expose GPI switches and GPO leds, accessible in developer settings - Fix regression caused by the fix for UFC Undisputed - Broke out the Atrac3+ code from ffmpeg for easier debugging and maintenance - implement sysclib_sprintf Rendering fixes - Socom FB3 depth buffer problem in menu - Platypus: Glitchy transparency with OpenGL - Syphon Filter: Logan's Shadow: Dark lighting in OpenGL - MGS2 Acid errors on AMD GPUs - Fix regression in Genshou Suikoden - Fix HUD glitch in GTA LCS by emulating "provoking vertex" correctly Debugging improvements - MIPSTracer - a new (rough) debugging tool by Nemoumbra VR - New immersive mode (makes better use of reprojection by extending the rendered area) - A lot of fixes by Lubos Misc - The CHD file format is better supported and performance has been drastically improved
shadPS4 is an early PlayStation 4 emulator for Windows, Linux and macOS written in C++.
This update improves compatibility with games. Fixed some problems with shader recompiler, which interfered with the emulator. Added frame graph and accurate synchronization with 60 FPS. Implemented IME and Videodec2, which improves text and video handling, as well as some network library fixes.
shader recompiler fixes Emulated support for cpus that doesn't have SSE4.2a (intel cpus) Frame graph + Precise 60 fps timing Save data: fix nullptr & concurrent file write Auto Update Error dialog implementation Swapchain recreation and window resizing Add playback of background/title music in game list kernel: Quiet sceKernelWaitEventFlag error log on timeout Improve keyboard navigation in game list core/memory: Pooled memory implementation Fix PKG loading replace trophy xml assert with error Refactor audio handling with range checks, buffer threshold, and lock audio_core: Fix return value types and shift some error handling to library Devtools: PM4 Explorer Initial support of Geometry shaders Working touchpad support net: Stub sceNetErrnoLoc Add support to click touchpad using back button on non PS4/5 controllers Multiple Install Folders Using a more standard data directory for linux video_core: Implement sceGnmInsertPushColorMarker ime_dialog: Initial implementation Network libs fixes Use GetSystemTimePreciseAsFileTime to fix fps timing issues Added adaptive mutex initializer Small Np + trophy fixes Separate Updates from Game Folder Minor Fixes for Separate Update Folder AvPlayer: Do not align w/h to 16 with vdec2 Improve sceSystemServiceReceiveEvent stub renderer_vulkan: Commize and adjust buffer bindings Add poll interval to libScePad Add more surface format mappings. vulkan: Report only missing format feature flags. IME implementation Videodec2 implementation path_util: Make sure macOS has current directory set and clean up path code. Load LLE modules from sys_modules/GAMEID folder
The DOS - DOSBox Staging emulator has been updated.
Summary - Pentium MMX emulation - ESS Enhanced FM Audio - numerous audio-related enhancements - a large number of game compatibility fixes - improved Windows 3.1x compatibility - supercharged 3dfx Voodoo emulation performance - experimental Windows ARM64 support Game compatibility fixes - Fix regression in Command & Conquer: Red Alert where the emulator crashed after playing the game for a while - Fix regression in The Magic Candle 2: The Four and Forty where the second MIDI sequence did not play - Fix regression in Soltys where the Gravis UltraSound was not starting up after the game auto-detected it - Fix regression that prevented audio playing in HELL: A Cyberpunk Thriller on the Gravis Ultrasound - Fix Dunkle Schatten 2 freezing after startup - Fix distorted HUD issue in the 3dfx Voodoo version of Archimedean Dynasty - Fix the odd horizontal black lines appearing in the following Synthetic Dimensions games: - Chronicles of the Sword - Druid: Daemons of the Mind - Perfect Assassin - 1942: The Pacific Air War can now be played with sound when using the JEMM memory manager - Generically fix all Windows 3.1x games that complain about enabling file sharing, asking the user to run SHARE.EXE. This fixes at least the following games: - Comix Zone - Garfield Caught in the Act - Microsoft Flight Simulator (v5.0, ATC Workshop) - Monopoly - Ultimate Yahtzee - Fix the intro tune in Bumpy’s Arcade Fantasy using the wrong instruments on the MT-32 - Fix the AdLib intro jingle not playing in Silmarlis games (e.g., Crystals of Arborea, Ishar 1 & 2, Storm Master, Transantartica, etc.) - Fix flipped Sound Blaster Pro 2 output filter behaviour in Doom and all games that toggle the filter programmatically Graphics - Remove the ‘openglnb’ output mode - New xBR upscaler shaders - 3dfx Voodoo improvements - 16-bit memory writes have been fixed in our Voodoo emulation; this resolves the distorted HUD issue in the 3dfx Voodoo version of Archimedean Dynasty - The voodoo_multithreading confing setting (which previously toggled three extra worker threads) has been replaced with voodoo_threads, which uses up to eight threads based on the number of available physical CPU cores. This is enabled by default (auto setting), but you can override it by setting the number of threads manually from 1 to 16 - The multithreading performance of the Voodoo emulation has been generally improved—at the cost of higher overall CPU usage. Set voodoo_threads to 3 or less to conserve battery power on a laptop - Fixed a bug where the wrong shader could be picked when starting a Voodoo game with the adaptive CRT shaders enabled Other graphics improvements - Fixed the hardware cursor handling on the S3 Trio64 card; this fixes the display corruption on exit issue in the Teddybear’s Revenge demo by Eclipse - Now we use linear 128 KB video memory pages for all VESA modes. Some games exploit this low-level detail of some SVGA cards to access the video memory as a single contiguous 128 KB memory block instead of manually flipping between two 64 KB pages. This enhancement gets rid of the odd horizontal black lines in the following Synthetic Dimensions games and possibly in other games and demoscene productions too that use the same hack: - Chronicles of the Sword - Druid — Daemons of the Mind - Perfect Assassin - Fixed a regression where video captures resulted in slightly larger file sizes than previously Sound - Multi-threaded audio processing - ESS Enhanced FM Audio (ESFM) emulation - Here’s a non-exhaustive list of games that support ESFM Enhanced FM music - 11th Hour, The - Advanced Civilization - Callahan’s Crosstime Saloon - Gene Machine, The - Heaven’s Dawn - Heroes of Might and Magic II - Magic Carpet 2 - Settlers II, The - Shannara - Theme Hospital - WarCraft II - Z And a lot more
The multi-system emulator DSP Emulator has been updated.
General - Video - Fixed video freeze in Delphi 12 - Added general video reset - Enhanced a bit full screen mode - DIPs switches engine - Still migrating DIPs to new data structure - Sound - Seibu Sound: - Enhanced IRQs functions, uses new Z80 IRQ M0 functions - General cleaning - CPUs - MB88xx - Added serial functions - Fixed opcode $20 - Added opcode $2d - NEC v20-v30 - Fixed prefetch - Rewrited IRQ/NMI functions - Fixed BITOP opcodes - Z80 - Rewrited IRQ M0 and M2 callback functions - New function to call IRQ with vector (removed im0 variable) - Converted daisy chain functions to new IRQ M2 functions - Devices - SEGA 315-5195: added open bus function Coleco - Fixed support for cartridges up to 512Kb (Wizard of Wor) Outrun - Fixed end of sprite mark, fixes sprites left on screen - Added clean memory when reset Raiden - Fixed sprites - Fixed sound memory decryption, sound works now Sega System 16A - Fixed end of sprite mark, fixes sprites left on screen Sega System 16B - Fixed end of sprite mark, fixes sprites left on screen - Added FD1089 functions - Added IO and open bus functions - Added clean memory when reset - Riot City: added driver with sound - SDI: added driver with sound - Cotton: added driver with sound
The Sega Dreamcast console emulator - Flycast has been updated. There are builds for Android, Linux, iOS, Mac OS X, Nintendo Switch, Windows and Xbox One/Series.
What's Changed - RetroAchievements support - UI improvements with save state thumbnails - Force Feedback support for some arcade games (F355, 18 Wheeler, Maximum Speed, Faster Than Speed, Initial D, Club Kart, King of Route 66, Tokyo Bus Guide, Sega Driving Simulator) - Discord Rich Presence (Windows, macOS, linux) - Android: gamepad rumble, custom Adreno drivers and many bug fixes and improvements - Vulkan optimizations - Various fixes - Many upgrades Fixed Games - Beach Spikers - Capcom vs SNK 2000 Pro - Irides: Master of blocks - Mars TV - Metropolis Street Racer - Mortal Kombat - Quake III - Red Dog Superior Firepower - Shin Nihon Pro Wrestling - Soul Surfer - Virtua Cop 2
The Atari 2600 - Stella emulator has been updated.
- Enhanced ROM launcher to allow multiple images per ROM - Made heaps of additional images available for the ROM launcher - Added searching by filename for ROM launcher images - Added option to start random ROM - Added automatically enabled phosphor modes - Enhanced Game Properties dialog for multigame ROMs - Added 2nd UI theme and hotkey for toggling UI theme - Added bezel support (incl. Sinden Lightgun) - Added optional type format detection based on colors used - Added Joy2B+ controller support - Added auto detection for QuadTari attached controllers - Enhanced Kid Vid support to play tape audio - Added port selection, used for controller default mapping - Added missing PlusROM support for E7 bankswitching - Enhanced movie cart (MVC) support - Accelerated emulation up to ~15% (ARM) - Added limited GameLine Master Module bankswitching support - Added 03E0 bankswitching for Brazilian Parker Bros ROMs - Added WF8 bankswitching used by some certain Coleco white carts - Added JANE bankswitching used by Coleco's Tarzan prototype - Added ELF mapper for Mattress Monkeys - Added BUS bankswitching support for some older demos - Fixed broken 7800 pause key support - Added developer option for random hotspot peek values - Added user defined CPU cycle timers to debugger - Removed 'launcherroms' option, since it was causing some issues - Codebase now uses C++20 features, which means a minimum of gcc-11 or clang-10 for Linux/Mac, and Visual Studio 2022 for Windows
The Atari 2600 emulator is written in Go
Bug Fixes - Rewinding of ELF binaries caused visual artefacts on screen - Changes to screen rendering prevented the VideoChess bot from starting - Bug introduced in v0.31.0 - Added ELF to list of valid ROM extensions - A file with the .elf extension would not be shown by the ROM selector - Mouse wheel events could crash the emulator - This affected MacOS builds on machines where mouse-wheel style scrolling is done with a touch-pad - Replay button in tracker window could crash the emulator Changes - TIA audio sampled every colour clock - This fixes problems with ROMs where the channel volume is update more than twice per scanline - Added option to enable warning for "undefined symbols" when loading ELF ROMs - It is possible to compile an ELF binary with undefined symbols. Rather than reject the file when it is loaded, I have chosen to allow the ROM to execute and to continue until the symbol is referenced (which may never happen) - It is possible to compile an ELF binary with undefined symbols. Rather than reject the file when it is loaded, I have chosen to allow the ROM to execute and to continue until the symbol is referenced (which may never happen) - Added CARTRIDGE SETBANK command - It wasn't possible previously to set the current bank of a cartridge. I had originally chosen to avoid the problem because of the high variety of ways a mapper might implement banking (if at all) - The options to the SETBANK command vary depending on the specific mapper but generally, a mapper will expect a numeric value - Segmented mappers can take multiple numeric values. Separate values with a colon - In some instances, segments can be mapped to cartridge RAM. add an 'R' after the segment number to indicate the use of RAM. For example, the 3e mapper allows very flexible mapping of RAM CARTRIDGE SETBANK 1R:2 - Some segmented mappers only allow a predefined 'pattern' of segments. In these cases the numeric value to the SETBANK command will be a pattern number. The two mappers affected by this are Supercharger and Wickstead Design Other Changes - Added ELF support for REL32 and PREL31 relocation - Improved DWARF support for typedefs - Better decision making over whether variables are in global scope - Prevent possibility of infinite recursion in DWARF builder
MSX emulator has been updated - openMSX.
This is a major release, in which we introduce the new Graphical User Interface, replacing the OSD menu. A faster and more powerful debugger is now included in openMSX itself. Configuration for MSX joystick/JoyMega has been improved drastically using the new GUI. As of now, a system with OpenGL 2 support is required to run openMSX. MSX device support: - OPL4: fixed detail in YMF262 register mirroring - turboR PCM: - fixed sample frequency to 15700Hz (not 15750Hz as found in some documentation) - implement sample buffer (bit 0 on port 0xA5) to improve sound quality - flash ROMs: added a lot of accuracy to its emulation - WD2793 and TC8566AF FDC's: fixed several details - Konami mapper: added missing mirroring - improvements on I8254 mode 3 used in some RS-232C interfaces - added support for the concept 16-bit NEO mappers, which may be used by someone in the future. If this doesn't happen, support will be dropped again - added support for the ASCII16-X mapper which will be used by some upcoming games - fixed mapper of Mitsubishi ML-TS2 modem software - added support for Circuit Designer RD dongle - added new machines/extensions: - Hitachi MPF-310H - Hitachi MB-H70 - USA version of Yamaha CX5M - National CF-SM003 - German Spectravideo SVI-738 - French Canon V-20 - Yeno DPC-64 - Hitachi MB-H21 - Sony HB-T600 - Others: Philips VU-0040, General Paxon PCT-55, Sanyo MPC-64, OPL3 Cartridge with Moonsound compatible port mapping New or improved emulator features: - removed SDL renderer - added new GUI: - main menu bar with these menu items: - Machine - Select MSX machine - Firmware switch - Pause emulator - Reset MSX - Power on/off - Test MSX hardware (much faster than in Catapult) - Media - Cartridge slots with ROM cartridges or extensions - Disk drives - Tape deck - Hard disk - CD-ROM - Laserdisc - Connectors - joystick ports, printer ports, MIDI ports, etc - Save state - Load/Save state - Load/Save replay - Reverse/replay settings - Tools - Virtual keyboard - Copy/paste - Capture audio/video/screenshot - Disk Manipulator - Trainer - Cheat Finder - SCC viewer - Audio channel viewer - OSD Toys - Settings - Video - Sound - Speed - Input - Configure MSX joysticks - GUI - Configure GUI shortcuts - Misc - Configure OSD icons, show status bar - Debugger - Toolbar - Disassembly view - CPU registers - CPU flags - Slots - Stack - Breakpoints - Symbol Manager - Watch expressions - Bitmap viewer - Tile viewer - Sprite viewer - VDP register viewer - Palette - Hex editor - Help - Links to manuals - About - Reverse bar - OSD icons - Status bar - Console - Messages - Drag and drop - Shortcuts - Separate pop-out windows - Windows can be docked on other windows or in a tab widget - 3 styles: Dark (default), Light, Classic - configurable font and font size. Default: DejaVu - OSD menu: - removed in favour of new GUI - only warn once for unsupported size in Konami mappers - suppress warning messages during reversing - fully configurable MSX controller mapping for joysticks (msxjoystick1/2 pluggables) and JoyMega devices (joymega1/2 pluggables) - low level debugger (scripting): - added support for symbol management - allow to set a breakpoint (or any Tcl callback) when the VDP dot clock direction is written "wrongly" - added VGM recording for OPL3 - added minimal support for unplugging and replugging host controllers - added support for RS232Net: connect MSX RS-232C interfaces to the local network - removed several OSD scripts which have been replaced by the GUI, sometimes almost 1 to 1: - reverse bar - tile viewer - sprite viewer - palette editor - VDP register viewer - tabbed machine view - display_message - quit menu - OSD keyboard - load_icons - removed support for savestates with .xml.gz extension - do not save SRAM to file if unmodified - added support to run openMSX fully in headless mode - allow to specify the device name of IDE devices in their config XML file - base the Boosted MSX2 EN on the Philips NMS 8245 instead of 8250 - fixed crash when multiple debug-devices were used at once - fixed possible crash on specific combination of watchpoints and replay - fixed possible crash on no longer supported savestates: - we try to keep old savestates working. Nevertheless occasionally we do remove stuff. Loading an old savestate which contains such stuff used to crash, now we give a clean error message - fixes for load_settings command Build system, packaging, documentation: - added support for loongarch - required GNU compiler is now at least g++-11 - required clang compiler is at least clang++-16 - required Visual Studio Compiler is at least 2022 - on macOS, at least Xcode 15.4 is required - Android build is totally broken, and will require a lot of effort and help to get back up, which is not planned by us. - 3rd party updates of SDL (2.30.1), SDL2_ttf (2.22.0), GLEW (2.2.0) - added patch to add aarch64 support to libtheora 3rdparty build - fixed link error in libvorbis for Xcode 15 on macOS - avoid pkg-config build error with Clang 15 on macOS - quite a large update of the manual (mostly to include the new GUI)
New emulator of the Soviet computer Vector-06C.
Features: - Cross-platform (Windows, Ubuntu (Debian family)) CMake x32 build - Added the Screen Keyboard Window - CLI loading file command support - Remapped Restart to F12 - Refactored project structure - The main loop, event handling, and the graphics context setup transferred from FLSW to SDL3/GLAD - Native window loading/saving dialog windows replaced with a cross-platform solution - Updated hints Bug Fixes: - Fixed key handling during HW running - Fixed Piral game (avoided touching unused flags) - Fixed an issue of not loading fonts at startup - Fixed minor bugs (part of SDL/ImGui/loop refactor) - Fixed small bugs in Windows build
The stable version of the 86Box emulator has been updated to 4.2.1
Changelog Emulator - Fixed keyboard shortcuts for full screen mode when the Keyboard requires capture option is set Machines - Added video overscan delta option to the IBM PCjr (fixing the game on the screenshot above) - Fixed some copy protected games on the IBM PCjr - Fixed CMOS password and other boot issues on the Radisys EPC-2102 - Fixed PCI device IRQs on the A-Trend ATC6310BXII - Fixed on-board S3 ViRGE video on the Intel AP440FX - Fixed incorrect CPU speed reporting on the HP Vectra VL 5 Series 4 - Fixed missing CPU selections on the DataExpert SX495 - Fixed Genoa Unknown 486 extended memory support - Fixed Acer A1G hanging during POST with some CPUs - Fixed Olivetti M19 display corruption in high resolution mode - Fixed IBM PCjr / Tandy 1000 family display corruption with some games - Fixed Tandy 1000 display corruption on soft reboot - Fixed IBM PCjr not rebooting on cartridge removal - Fixed IBM PCjr video type selection not working - Changed minimum RAM on the Tandy 1000 to 384 KB and on the Tandy 1000 HX to 256 KB - Changed Phoenix XT clone BIOS revision to a newer one - Renamed Tandy 1000 to the SX variant to better reflect its hardware and firmware Hardware Core - Fixed 8087 FPU inaccuracy causing diagnostic test failures Display - Improved emulation performance of ATI Mach64 and S3 ViRGE cards - Added miroCRYSTAL 3D (S3 ViRGE) PCI video card - Fixed hard reset crashes with more video cards - Fixed Voodoo Banshee/3 crashing the emulator with banshee_do_screen_to_screen_blt: unknown srcFormat message on more full motion video applications - Fixed rendering issues with some drivers on S3 ViRGE and Trident TGUI cards - Fixed Diamond Stealth VRAM (S3 86C911) slowing emulation performance - Fixed hangs or display corruption with S3 cards on soft reboot - Fixed Compaq EGA display corruption in high resolution mode - Fixed Compaq EGA compatibility with non-Compaq machines - Fixed VGA color accuracy issue with some DOS games - Changed Diamond Stealth 3D 4000 (S3 ViRGE/GX2) video BIOS to a newer version Input - Added more model options to the 3M MicroTouch - Added crosshair cursor hiding option to the 3M MicroTouch - Fixed 3M MicroTouch not working with some drivers - Fixed keyboard controller inaccuracy causing keyboard lock-ups with some DOS applications - Fixed serial mouse crashing the emulator if attached to a non-existent serial port Sound - Fixed Aztech Sound Galaxy Pro 16 AB not working with some drivers - Fixed IBM PCjr / Tandy 1000 / TNDY sound issues with some games - Fixed MPU-401 playback issues with some games, particularly in intelligent mode - Renamed SB MIDI input option on Sound Blaster cards to DSP MIDI Network - Fixed modem crashing the emulator with Assertion failed! message under heavy Telnet traffic - Fixed modem autodetection taking too long on Windows 9x - Fixed modem SLIP not being reachable on some Windows configurations - Fixed loss of received packets on DEC and NE2000-based cards - Changed PLIP to require SLiRP mode like the modem Storage - Added generic AMD 53C974 card based on the PCscsi controller - Fixed dynamic VHD corruption with MFM/RLL controllers in specific cases - Fixed hanging issues with the Pro Audio Spectrum 16 SCSI controller - Fixed Tekram DC-390 not working with some drivers - Fixed WD MFM/RLL controllers not booting from hard disk when set to IRQ
The Game Boy / Color emulator has been updated - BGB.
- Fixed many bugs and problems - Accuracy improvements - Emulating GDMA conflict and improved inaccessible VRAM break for this - Speed optimizations - GBC reality colors: cyan was a bit too dark - Recovery save state can now also be saved if another ROM is loaded or BGB is closed
New emulator of the Soviet computer Vector-06C.
New Features and Enhancements - Enhanced StepOver Functionality: Now takes the opcode into account—steps over the address for JMP, the return address for RET, the HL address for SPHL, and other similar operations - Scrolling Timing Fixes: Addressed issues with scrolling timing for smoother operation - 512 Display Mode Color Fixes: Corrected color rendering in 512 display mode - Color Commit Timing Adjustments: Fine-tuned the timing for color commits - Display Mode Switching: Adjusted the timing for switching between 512 and 256 display modes - Exposed Debug Settings: Users can now adjust hardware timings through newly exposed debug settings - Rasterized Line and Pixel Highlight: Added highlighting for a currently rasterized line and a pixel - New Hardware Stats: Introduced added statistics for the display mode and the amount CPU cycles spent since the start of the current frame
An experimental Nintendo 64 emulator for Linux, Mac OS, Switch, Windows.
My main goal with rokuyon is to learn about the N64's hardware so I can write homebrew like sodium64. If it ends up being more than that, I wouldn't mind making a modern, accurate N64 emulator with built-in software/hardware rendering and no messy plugins.
The stable version of the 86Box emulator has been updated to 4.2
Well, the first is probably about something good, or maybe not so good, 4.2 is the last version that was released for 32-bit systems. Main features: Sound: ESS, PAS, SB PCI Many have requested that we emulate sound cards from ESS; more specifically, their ISA Sound Blaster compatible chips that were very popular throughout the 1990s. This release brings two ESS cards, the AudioDrive ES688 and ES1688 Modem A serial modem is now available as a network card option. Changelog Emulator - Added prompt when starting the machine from a new location (similar to VMware) for regenerating MAC addresses - Added build number and host CPU string information to the configuration file to aid troubleshooting User interface - Added approximate year indicators to the list of machine types - Added interlocks to Voodoo cards and storage device channels to reduce configuration mistakes - Added performance impact warning to the Softfloat FPU option - Added new icons to the CD-ROM menu - Added translation: ???????? Vietnamese by Barnacl437 - Fixed menus not updating after ejecting a CD-ROM - Updated translations: Chinese (Simplified), Chinese (Taiwan) Machines - Re-added Compaq Deskpro 386 machine - Added Pravetz 16S / CPU12 Plus Bulgarian XT clone - Added Senor Science Co. SCAT-286-003 and Wells American A*Star 286 machines - Added Acer 100T 386SX machine - Added DataExpert 386WB and Tandy 4000 386DX machines - Added Genoa Unknown 486 and Alaris COUGAR 486BL 486 machines - Added IBM PC 140 (type 6260) Socket 7 machine - Added missing I/O chip to the Arche AMA-932J - Added on-board S3 ViRGE/DX video and Crystal CS4236B sound to the Intel AP440FX - Added on-board Chips & Technologies B69000 video to the ADLink NuPRO-592 - Added more CPU speeds to the Tandy 1000 HX - Fixed Pravetz 16 / IMKO-4, AMI Super Voyager PCI, Packard Bell PB450 and Dell Dimension XPS Pxxx machines not being selectable on Linux and other case-sensitive systems - Fixed DEC Venturis 4xx and Rise R534F hanging during POST - Fixed Micronics M4Li rebooting during POST - Fixed HP Vectra VL 5 Series 4 not booting - Fixed Packard Bell PB450 password jumper error - Fixed FIC PT-2000 hanging after reboot - Fixed floppy drives not working on IBM PS/1 machines - Fixed MFM/RLL hard disks not working on the Arche AMA-2010 - Fixed emulator crash while booting the Compaq Presario 2240 - Fixed emulator crash with more than 16 MB RAM on the Amstrad MegaPC - Fixed keyboard not working with some operating systems on the ASUS P/I-P5MP3 - Fixed hard disk controller error on the Siemens Nixdorf D824 - Fixed BIOS settings not saving on the Radisys EPC-2102 - Fixed incorrect on-board video detection on the IBM PC 330 - Fixed AGP slot incorrectly available (and broken) on the NEC Mate NX MA30D/23D - Fixed Windows hanging during startup on the FIC VA-502 - Fixed IBM PCjr display glitches in 2-bit mode or with overscan enabled - Fixed Acer 100T, Commodore SL386SX-25, HP Vectra 486VL and Tyan Trinity 371 on-board device detection issues - Fixed AMI Apollo not starting up with the minimum 8 MB RAM - Fixed Olystar LIL1429 filed on the wrong category (now Socket 2) - Fixed Acer V10 and SiS VL-BUS 471 REV. A1 filed on the wrong category (now Socket 3) - Fixed Acer M3A, Dell Hannibal+ and ECS P5VX-B filed on the wrong category (now Socket 7 Dual Voltage) - Renamed DTK 386SX clone to DTK PM-1630C - Renamed AMA-932J to Arche AMA-932J - Changed maximum RAM on the IBM XT Model 286 and AT to reflect the base boards’ 640 and 512 KB limits respectively (use ISA memory expansion cards to go beyond that) - Changed DataExpert SX495 CPU selection to reflect compatible models - Changed Olivetti M240 BIOS revision to a newer one Hardware Core - Added Softfloat support to the 8087 FPU - Upgraded Softfloat FPU to Release 3e - Fixed hard reset crash on SiS Socket 7 machines - Fixed emulator crash with RapidCAD CPUs on ARM hosts - Fixed issues with Lotus 1-2-3 and other applications due to missing FBLD FPU instruction - Fixed incorrect LOCK instruction behavior on 286 CPUs - Fixed CPU inaccuracies breaking Microsoft OS/2 2.0 betas - Fixed OPTi chipset detection by some tools Display - Added ATI VGA Wonder 18800 ISA video card - Added Bochs SVGA PCI video card - Added Diamond Stealth64 Video VRAM (S3 Vision968) VLB and PCI video card - Removed Matrox Productiva G100 video card due to numerous issues - Fixed VideoMagic Tseng ET4000 cards not being selectable on Linux and other case-sensitive systems - Fixed emulator crash triggered by mouse movement on the Voodoo Banshee/3 - Fixed random emulator crashes with Matrox cards - Fixed hard reset crashes with S3 cards and the Voodoo Banshee/3 - Fixed Windows 3.x hanging and resolution switching issues with Matrox cards - Fixed transparency rendering issues with Matrox cards - Fixed overscan with Voodoo and Voodoo 2 cards - Fixed some XGA, ATI Mach8, Mach32 and Mach64 rendering glitches on Windows - Fixed some resolution-specific rendering issues with S3 Vision cards on Windows - Fixed some 3D-related issues with S3 ViRGE cards - Fixed Chips & Technologies B69000 not working with some Windows drivers - Fixed ATI Mach32 and Mach64 not working with OpenStep drivers - Changed memory size selection on Tseng ET3000, ET4000, 3dfx Velocity 100 and Voodoo3 1000 cards to address inaccuracies Input - Added 3M MicroTouch serial touchscreen - Fixed Microsoft SideWinder Pad detection issues on some setups - Fixed emulator crash when pressing multimedia keys on Windows hosts Sound - Added ESS AudioDrive ES688 and ES1688 ISA sound cards - Added Pro Audio Spectrum Plus, 16 and 16D ISA sound cards - Added Sound Blaster PCI ES1373 and CT5880 PCI sound cards - Improved Sound Blaster AWE EMU8000 synth sound quality - Fixed Roland MT-32 (New) MIDI emulation not being selectable - Fixed Sound Blaster Classic and Pro detection by some DOS games - Fixed Sound Blaster 16 8-bit DMA compatibility mode - Fixed C-Media CMI8338 and CMI8738 hanging during initialization with some DOS drivers - Fixed Ensoniq AudioPCI not outputting audio after resuming from sleep mode - Fixed Sound Blaster 16 PnP and Crystal CS4236B configuration data not matching real cards Network - Added SLIP and Telnet serial modem emulation as a network card option - Added partial MAC address editing through the Configure window - Fixed detection of the DEC DE-500A card by some operating systems - Fixed emulator crash during Windows installation with NE2000-based cards - Fixed loss of multicast packets (used by AppleTalk and other protocols) in PCap mode - Fixed PCap mode not detecting Npcap without WinPcap compatibility mode on Windows hosts - Fixed VDE permission issue when running the switch as an unprivileged user Ports - Fixed ESC/P printer cutting a line of text near the bottom of a page Storage - Added CD-ROM passthrough for real and virtual drives on Windows hosts - Added Trantor T228 MCA SCSI card - Added PCjs floppy image support for the current v2 format (replacing the previous v1) - Added Teledisk 1.x compressed floppy image support - Added support for tracks with compressed/encapsulated audio or big endian data on cue CD images - Added writable configuration support to the Monster FDC card - Added 3.5” 2.88M dual RPM floppy drive option - Increased SCSI bus speed on NCR 53C860 and 53C875 cards - Fixed emulator crash when loading ZIP disk images - Fixed emulator crash when accessing DVD images with some applications - Fixed CD folder mounting misbehaving on Windows hosts if a file larger than 2 GB is present - Fixed dynamic VHD images growing uncontrollably during a low level format - Fixed read errors with some HxC MFM floppy images - Fixed IDE hard disk detection errors on OpenStep - Fixed CD-ROM read errors with Mode 2 ISO images - Fixed ALi IDE driver for Windows 95 on later chipsets - Fixed I/O timeout issues with some Trantor T130B drivers - Fixed small inaccuracy with CD-ROM sector headers Other - Added BocaRAM/XT and Lo-tech EMS Board ISA memory expansion cards - Added IBM XT and AT Memory Expansion Option ISA memory expansion cards - Added Novell NetWare 2.x Key Card device - Increased maximum supported memory size to 3 MB on the Everex EV-159 ISA memory expansion card - Fixed page frame address selection on the Everex EV-159 ISA memory expansion card - Fixed default configurations for some ISA memory expansion cards
A simple and portable Sony PlayStation emulator and emulation library written in C.
We're getting closer to the release of our new UI! In the meantime, I've been working on fixing some longstanding issues with the codebase in general, reworking major components, and fixing small bugs here and there. This release gets bugfixes for several games which now work correctly: Final Fantasy IX (FMV is still broken but can now be skipped) Tony Hawk's Pro Skater Initial D Hello Kitty - Cube Frenzy Disney's Hercules Action Game Disney's The Emperor's New Groove And more! I hope you enjoy this release and stay tuned for the next one.
The Atari Jaguar console emulator has been updated - BigPEmu.
- Added a pure software video plugin for Windows builds. This plugin is primarily intended for development and diagnostic purposes, and is only visible in developer mode - New Noesis debugger scripting functionality for developer builds, this enables several new features. Make sure you're using the newest version of Noesis to take advantage of the functionality - Added -uiscale, -menunodex, and -menunodey command line options - Added a recalibration option under the Input menu - Added several more native window management functions to the script API - Added an optional flags parameter to the "opdump" debugger command, check the "help" output for details - Added the most terrible secret of all - Fixed a problem with directory checks on UNC paths under Windows, thanks to King Puff for the bug report - Lots of smaller fixes/changes in preparation for more port/interface functionality
The PCSX2 - PlayStation 2 emulator has been updated.
4 years have passed since the last stable version, a lot has happened during this time, more than 6,000 changes have been made, 100 million downloads and the emulator has turned 20 years old (Feel old). What happened during this time: - the interface has changed, the old wxWidgets is already quite outdated, so the developers switched to Qt - no more plugins, all plugins are now adapted into the emulator core - automatic game fixes - setting up for each game separately - almost full compatibility with games, less than 1% of games remain non-working - goodbye Win7, 8, 8.1 support, these systems are no longer supported, minimum requirements Windows 10 build 1809 - Mac OS version is back (minimum version 11.0 is needed) - reconstruction of the cheat and patch system to simplify its use - repository for patches (found on Github pcsx2_patches) - optimization of the EE and VU recompiler - working with the Vulkan API - capture video from FFmpeg - Add RetroAchievements - support ZSO format - updated controller settings and much more.
General: - Added a shortcut to change the backdrop color for sprite extraction - Fixed QuickSave 0-9 slot shortcuts not working - Allow "Address:byte" form for cheat inputs - Fixed ZIP files not being closed after patch search - Various memmap fixes to allow unofficial mappings - Added usage of ImGui to draw things on top of the screen instead of inside Win32: - Fixed AVI not recording audio - Fixed framerate throttling in turbo mode (now works during AVI recording) - Fixed interlaced output speed being double - Fixed command line arguments not working - Fixed WaveOut device name display for names longer than 31 characters - Fixed Bank+/- hotkey saving - Added hotkeys for aspect ratio, cheat edit/search - Added multiselect for cheat edit dialog Gtk: - Fixed config file location to never put files directly in $HOME and obey $XDG_CONFIG_HOME - Updated translations from JakeSmarter and StanleyKid-22 Mac: - Added a new cheat finder - Added MultiCart support back - Create a blank window when starting the program, so the global menu change doesn't go unnoticed
Known Issues - You may get a Windows SmartScreen notification that this application is 'unknown'. You will need to click 'run anyway'. The MartyPC Windows executable is signed via Sectigo; I have done all I can think of to appease Microsoft, and not sure what else to do. This is NOT a malware warning - WGPU support for older Intel integrated GPUs has moved from DirectX to OpenGL. If you are running integrated Intel graphics and experience poor performance, please set the following user environment variable: WGPU_BACKEND=gl - macOS users on Intel may experience colored stripes on the screen in fullscreen mode. Enable macos_stripe_fix in the configuration to resolve this New devices - LoTech 2MB EMS Board - Added emulation of the LoTech 2MB EMS Card This card can be added to any machine configuration via the lotech_ems overlay. You can specify the window segment and IO base address. However, these values must match one of the values supported by the real hardware or the driver won't work with it - Game Port and Joystick - Added emulation of the IBM game port card, and basic keyboard-based joystick emulation. There is a new keyboardn hotkey (JoyToggle) to turn this on and off (provisionally defined as Ctrl-F9), as well as configurable joystick_keys in the configuration you can use to define what keys control the joystick - PCJr and Tandy 1000 machines will have a game port installed automatically. You can add a game port to any PC or XT configuration via the game_port overlay - Two two-button, two-axis joysticks are assumed to be connected when you specify a game port. Different joystick configurations may be supported in the future - PCJr Cartridge Slots - Added support in the core, frontend and GUI for PCJr cartridges in JRipCart format. Inserting or removing a cart will reboot the machine. You will only see the cartridge slots when using the PCJr machine Frontend Bug Fixes / Improvements - Added a new resource type 'cartridge' and menu interface to browse and select PCJr Cartridges Core Bug Fixes / Improvements - SERIAL: Fixed many issues in MartyPC's 8250 UART emulation. PCjr now boots without error code 'D' and Checkit2 serial diagnostics also pass - BUS: Implemented a terminal_port configuration option under [machine] in the main configuration. Writes to this port will be printed to the host's terminal - MC6845: Fixed an issue preventing entering vertical total adjust period if vertical total was 127. Fixes some Hercules display issues - HERCULES: Increased the size of the Hercules' display field to accomodate some CGA emulators that drive the MDA monitor slightly out of sync (Fixes BBSIMCGA) - CGA: Added CGA's external mode register to debug output - MACHINE: Added a facility to record disassembly listings from running code. The output filename is set by disassembly_file under [machine] in the main configuration. Basically, this feature saves instruction disassembly to a hash table by CS:IP. Modification of code segments will override previous disassembly, so it is most useful to toggle this feature on and off for specified periods Debugger Bug Fixes / Improvements - Serial Status window: Displays serial port registers and statistics - IO Status Window - Added a 'reset' button to reset all the port counters - Added the last read byte value for each port - Fixed panic/crash when resetting machine with the IO Stats window open and scrolled Distribution Changes - Added a SvarDOS-based MartyPC boot diskette to media/floppies/boot. This disk will load the LoTech EMS driver and CTmouse driver - Moved FreeDOS to media/floppies/DOS - Added SvarDOS build 20240201 diskettes to media/floppies/DOS - Added ctmouse v1.91 (last working version for Non-VGA) to media/floppies/utilties/mouse - Added LoTech 2MB EMS card utilities to media/utilities/EMS - Added JOYCALIB to media/utilities/joystick - Updated GLaBIOS 0.2.6 ROMS for a bugfix when int 10h vector is overridden Dependency Updates - Set rustc minimum version to 1.76 - Update egui to 0.27.2 - pdate wgpu to 0.19.4
New emulated RTG boards - CyberVision/BlizzardVision PPC. 2D only, 3D is not implemented. (Permedia 2) - GVP EGS 110/24. (INMOS G364) - Graffity. (Cirrus Logic CL-GD5428) - Merlin, includes support for configurable serial number used by ProBench (Tseng ET4000W32) - oMniBus (Tseng ET4000AX or ET4000W32) - Rainbow III (INMOS G360) - Visiona (INMOS G300) New features/updates - Prometheus FireStorm PCI bridge emulation - Release raw input devices when GUI is open (except during input Test/Remap) or when debugger window is active. Allows Windows shortcut keys like Win+E to work without need to unfocus the window - Added Misc panel option to disable default on screen keyboard gamepad button 4 mapping - Some uae-configuration (and other similar) debugging logging messages automatically opened the console window. Now only entering debugger will open it - Added “Always on (Fixed only)” sound filter option. This enables A500 fixed filter but never enables “led filter”. (A1200 does not have fixed filter, only “led” filter) - Replaced old Windows 2000 compatible Windows clipboard handling with newer, simpler and more reliable method introduced in Vista - Allow also 68020+ CPUs to fetch instruction words from custom chipset space. Only if more compatible is set. If some program really wants to do something weird like execute code located in AGA palette registers - Lightpen/gun cursor in any edge of screen: lightpen/gun not pointing at the screen = position can’t be read by the program - Statefile shortcut keys now select current config file name as a base statefile name (for example, if “test1.uae” config file is loaded, SHIFT+END+0 will save statefile as “test1.uss”. Quickstart mode config still uses original default “default.uss”) - Both “SaveImage” (automatically created ext adf when write-enabling non-writable image like ipf) file extension variants are now detected automatically when checking if file exists. Paths panel SaveImage mode option now only affects generated file name when new saveimage is created - Added LDP-1450 laserdisc player OSD font emulation. Fixes laserdisc arcade game Platoon (Nova) previously missing “YOU’RE HIT!!” messages. (All OSD graphics are generated by Amiga except this message!) Bug fixes - Fixed XT based Bridgeboards non-working floppy drive emulation, broke during 5.1 DraCo updates (wrong density detection) - Serial port data receive was unreliable. Loopback serial port mode didn’t work in fast CPU modes - CD32 FMV video image size and positioning was weird in most scaled modes - Exclusive fullscreen and RTG resolution switch (RTG resolution switch to another RTG resolution without switch to native mode and back) didn’t change fullscreen resolution - Some ECS programmed modes (for example SuperPlus) had first visible line blanked - Fixed corruption in some “weird” programmed modes, introduced in 5.0 betas - Some hardware emulated RTG boards had flickering colors during horizontal panning (>8 bit modes only) - Fixed ECS Denise superhires mode hires sprite pointer strange odd/even horizontal movement - Fixed pre-KS 1.2 HDF/directory filesystem boot. Broke long time ago - Multi-monitor active state was not fully reset when system was hard reset. (Multimonitor window was open -> hard reset -> window didn’t open anymore again) - If x86 bridgeboard SVGA and also other hardware emulated RTG board was active and END+F9 was used to switch monitors: both monitors’ output was drawn in same window, causing corrupted graphics and possibly also crash if monitor sizes were too differen - It was not possible to write and read ECS/AGA genlock transparency bit in color registers. Was broken long time ago - Delay ALG LDP seek complete status reply slightly. Fixes laserdisc arcade game Platoon (Nova) few second hangs - Los Justicieros (Zorton Brothers) laserdisc arcade game left holster hooked up correctly. (Was stuck active previously)
Version 1.14 - Added bigpemu_register_event_audio_frame, scripts are now able to read/modify audio frames - Added various audio/sampling utility functions to the scripting system. (see the spectrum analyzer sample usage in hello_pussycat and the full list of functions in bigpcrt.h) - Added bigpemu_set_named_var_data and bigpemu_get_named_var_data, along with a "ScriptOption" Screen Effect data provider type. This allows script code to drive Screen Effect data, see hello_pussycat and liz for example usage - Added bigpemu_native_window_handle, as a convenience for scripts which may want to pass the window handle to a native DLL - Added support for the "physical disc" path under Linux. This will only function correctly with drives (virtual or otherwise) which support raw subchannel reads - Fixed a potential developer build crash from forcing script reloads while employing conditional breakpoints - Fixed an issue which could result in the application window being positioned incorrectly after switching to fullscreen - Fixed some SDL2-specific fullscreen/multi-monitor issues. Thanks to cubanismo for nudging me into investigating this Version 1.13 - Fixed a problem which resulted in some of the built-in D3D12 shaders requiring Shader Model 6.0 - Added more logging for various D3D12 initialization failure cases Version 1.12 - New D3D12 video plugin. The shader tool has also been updated and supports generating DXIL - New Windows ARM64 builds. Less frequently used platform-dependent functionality may remain unimplemented on this platform - Added a Blitter capture feature for developer builds. See the "blitcap" debugger command - Various minor cross-platform fixes which came along with the new port/backend work Version 1.11 - Unmapped input labels now display an angle suffix for hat switches - Unmapped input labels now display a +/- prefix for analog bindings, when applicable - Added a -forcegpusync command line option Version 1.1 - Added a native Linux (x64) port. Generally not well tested, but seems to be working well enough in local testing under a couple of different distributions. Less frequently used platform-dependent functionality may remain unimplemented on this platform - Added a new SDL2 plugin for audio, video, and input. Not particularly recommended under Windows, but a Windows build is provided nonetheless - Added custom sky/background functionality to the Checkered Flag script - Added an "Alternate Scheduling" option - Added a "Rewind Skip" option - Added a "Frame Time Display" developer option - Fixed a minor interrupt timing issue - Fixed a bug in the object browser which could, rarely, result in a memory leak - Fixed a bug preventing BIGPEMU_TEXFLAG_REPEAT from affecting texture wrap mode in the OpenGL video plugin - Fixed another timing issue, which was manifesting as a rare crash in Cybermorph. Thanks to Will for managing to capture a saved state illustrating this problem - Developer builds will avoid crashing and warn the developer (via connected debugger) when a read/write straddles the end of ROM. Normal builds will still crash, in order to avoid overhead. Thanks to DrTypo for the bug report
- Added overlays for Blackjack and War Room. Improved War Games overlay - Added KANA lock LED indicator for Japanese MSX keyboard layouts - Correctly read-back the PPG Port B (needed to make the KANA lock work but is more accurate overall) - Improvements to various Coleco PCB types for more accurate emulation
Removed features:
- The "--bpp" command line option and related code (i.e. the renderin functions for 16 bits-per-pixel host screens) have been removed since almost all recent hardware should support 32 bpp nowadays
Configuration changes:
- In hatari.cfg, section [RS232], rename:
- sSccBOutFileName => SccBOutFileName
- bEnableSccB => EnableSccB
Emulation improvements:
- MFP:
- When IRQ is cleared on one of the 2 ACIAs, do not clear IRQ on the MFP side if the IRQ is still set on the other ACIA
- Blitter:
- Ignore byte accesses to blitter registers defined as word only
- TT/DMA:
- Update sound FIFO on each HBL (like on STE)
- CPU:
- Sync CPU core with WinUAE CPU core 5.2 beta
- Improved 68000 cycle accuracy (IPL, STOP, TRACE)
- Fix IACK timings
- Return vector=24 if a spurious interrupt happens during the IACK sequence
- 68010 DIV overflow undefined flags update
- NMI handling
- MMU/generic CPU mode autovectored interrupt support
- Fix 68060 MMU MOVEM.L (An)+,
ZIP file support - ROM Selection window can navigate into zip files ARM Additions - Profiling can now be viewed as 'cycles / call' - this shows the relative performance of a single call to the program's function - Distinguishes between memory alignment requirements for different ARM architectures - ARMv4 doesn't allow misalignment at all and will access an aligned address instead - ARMv7 does allow misalignment depending on the instruction - recent versions of Gopher2600 incorrectly assumed a ARMv7 architecture, which leads to incorrect Harmony emulation - Misaligned memory accesses optionally treated as memory faults - when enabled misalignment is reported in the memory faults window - and will cause execution to abort if Abort of Memory Fault option is enabled - Strobing of local variables in local variables window - Added COPROC MEM DUMP - also accessible through context menu in static memory window ARM Corrections / Bug Fixes - Static memory window performance improvement - ASR disassembly corrected - COPROC ID corrected - 32bit EOR (register) instruction - Allocation of instruction to source lines uses EndSequence flag in DWARF line entry - this improves startup time and removes trailing instructions from functions - Disassembly of 32bit instructions - instructions following a 32bit instruction had the wrong address - More accurate identification of VCS "kernel" in which ARM code is being executed Other Bug fixes - Fixed supercharger mutliloading for 'fastload' binaries - PlusROM network transmission - Corrected reflection of HMOVE information - a new HMOVE would be noted in the reflection overlay but it would never be cleared Other Changes - Notification icons and FPS window - ARM developer icon moved to the FPS overlay - FPS window now shows multiple icons if required - Mouse wheel works for rewinding in the debugger - moves in 10 frame increments. hold shift-key for single frame increments
- Apple2: Fixed erroneous parsing of WOZ file padding bytes and unknown chunks' data as 8-byte chunk headers. Fixed broken handling of the end-of-stream condition when reading from non-compressed files stored in ZIP archives; fixes loading of such Apple II WOZ disk images and CloneCD CD images - SS: Implemented workaround for gcc bug #113255 in the VDP1 rasterization code - Apple2: Fixed typos/brainfart that broke language card and ROM card control accesses via $C08F
- UI: implement an option to pause the emulator when the window is inactive - UI: improve lack of response to input changes in the sprite viewer when the emulator is paused - UI: replace QOpenGLWidget with QWidget - UI: fix solar sensor level menu that has been broken in 1.8.0 - GPIO: fix broken deserialization of port directions - APU: MP2K HLE: handle corrupted wave info addresses - APU: PSG L/R volume must be remapped from 0-7 to 1-8 - GameDB: Japanese Boktai releases have a solar sensor - Redirect stdout on Windows
General: - Fixed GLSL version parsing on some OpenGL ES2 platforms - Don't try to use shaders on old OpenGL implementations AGI: - Fixed Space Quest 1 version 1.0X freezing in the skimmer - Fixed Mixed-Up Mother Goose message boxes during nursery rhymes - Fixed Mixed-Up Mother Goose graphics in Amiga version - Fixed Gold Rush clock time at Fast and Fastest speeds - Fixed Atari ST version of Manhunter 1 not starting - Fixed Tandy CoCo3 version of Leisure Suit Larry 1 not starting - Fixed Tandy CoCo3 unofficial ports not starting - Fixed Amiga menus in Space Quest 1, Manhunter 1, and Manhunter 2 - Fixed Graham facing away from the king in King's Quest 1 - Fixed Alexander getting stuck on the stairs in King's Quest 3 - Fixed Larry being able to shoplift in Leisure Suit Larry 1 - Fixed ducks not jumping at the start of Donald Duck's Playground - Fixed instant death in fan game "Phil's Quest: The Search for Tolbaga" - Fixed buttons freezing in fan game "DG: The AGIMouse Adventure" - Fixed unrecognized words in fan game "V - The Graphical Adventure" - Added detection for Macintosh version of Mixed-Up Mother Goose AGS: - Updated detection tables - Simplified character import from Sierra games for QfG2 AGDI - Fixed graphical glitch affecting Unavowed and Heroine's Quest - Fixed partial outlines for some letters in Kathy Rain - Fixed crash in Alum - Added stub to prevent crash at the beginning of Falcon City Broken Sword 2: - Fixed crash when quitting the game while it was paused MM: - Enabled engine, allowing MM1 and Xeen to be compiled - Added MT32/LAPC-1 support for Xeen engine - Fixed Xeen regression which caused some sound effects to stop abruptly mTropolis: - Fixed crash in Muppet Treasure Island on some platforms - Fixed jewel puzzle in Muppet Treasure Island not being randomized NANCY: - Fixed the telephone hints in Secrets Can Kill - Fixed the crashing and drawing issues on ARM machines when playing Message in a Haunted Mansion's maze minigame - Fixed the 'M' keyboard key not working in Message in a Haunted Mansion - Allowed general keymaps to be shown in the engine Keymaps menu - Virtual keyboard now correctly triggers on/off wherever text input is needed SCUMM: - Fix screen corruption (and sometimes even crashes) in Mac Loom and Indiana Jones and the Last Crusade, most noticeably when using menu shortcut keys - Fix enabling/disabling of Open and Save in Mac Indiana Jones and the Last Crusade TWINE: - Fix ladder climbing regression - Fix scenery zoom issue - Fix animation glitches after using the holomap Ultima: - Fix Ultima VIII hidden minimap blocking keyring use - Fix Ultima VIII page breaks in books - Fix Ultima VIII text centering for plaques - Fix Ultima VIII crash on dragging items to screen edge - Fix Ultima VIII unexpected jumping on left click - Fix Ultima VIII camera during cutscenes for Shrine of the Ancient Ones - Fix Ultima VIII invalid placement of items within containers - Fix Ultima VIII never-ending lava sounds V-Cruise: - Fixed crash in Reah: Face the Unknown and Schizm: Mysterious Journey when music is muted Android port: - Fixed crash in built-in help with German language Atari port: - Fixed crash when exiting ScummVM - Fixed BBVS (and possibly others) gameplay by using more precise math model macOS port: - Fixed a problem where some Mac games would not load resources correctly - Updated application icon to conform with modern standards
User interface - Fixed exit confirmation incorrectly disabled by ACPI shutdowns - Fixed missing translations on some error messages related to hard disk images - Updated translations: Chinese (Simplified), Chinese (Taiwan), Japanese, Korean Machines - Added IBM Aptiva 510/710/Vision Socket 3 machine - Added NEC Mate NX MA23C Socket 7 machine - Added PC Chips M747 Slot 1 machine - Added AGP support to the MSI MS-5172 - Fixed BIOS error caused by serial passthrough on the IBM PS/2 Model 70 - Fixed Gigabyte GA-5SG100 filed on the wrong category (now Super Socket 7) - Changed maximum CPU speed on the Hyundai SUPER-16T to 8 MHz Hardware Core - Fixed operating system crashes related to the LOCK instruction on 386 CPUs only Display - Added Trident TVGA 8900D-R ISA video card (faster 8900D) - Added more BIOS options to the Tseng ET4000AX ISA video card - Fixed Voodoo 3D glitches in several games, especially on 64-bit builds - Fixed 1600x1200 resolution availability through DDC data on older operating systems - Fixed Tseng ET4000AX and ET4000/W32 rendering issues with specific resolutions - Fixed several rendering issues on S3 86C801 and 86C805 cards - Fixed Linux cursor issues on Matrox cards - Fixed specific video playback acceleration glitches on S3 ViRGE cards - Changed maximum video memory on the STB PowerGraph 64 Video to 2 MB to match real cards Sound - Improved OPL2 and OPL3 sound quality - Fixed base Sound Blaster AWE64 incorrectly identifying as a Value Storage - Added McIDE IDE disk controller for MCA machines - Added Vision Systems LBA Enhancer add-on ROM - Added German and newer English BIOS options to the Adaptec AHA-154xCP SCSI controller - Fixed instability issues with ESDI disk controllers, particularly MCA ones - Fixed floppy drive controller inaccuracy crashing 386BSD and FlexOS 286 Other - Added Everex Magi Magic EV-165A ISA memory expansion card
[features added] - UI: Added support for more direct file association setting on Windows 11 [bugs fixed] - Cassette: Fixed a crash that could occur when loading raw tape audio - CPU: Fixed incorrect LDA (zp) and STA (zp) execution in 65C02 mode only - Input: Fixed a crosstalk problem between ports 1/2 and 3/4 - Simulation: 5200 uses floating bus again (fixes Star Raiders) - UI: Fixed internal BASIC option not being selectable for the XEGS
GUI - Improved font rendering - More flexible font sizing - ROM selector improvements - Support for stella.pro file and libretro box art Television - PAL-M now generates NTSC colours rather than PAL - Better framing of image Other - Emulator responds to HUP signal by reloading the current cartridge - CoProcessor (ARM) Registers window now works with CDFJ and DPC+ - Global and Local variables can now be filtered - Freetype rendering is no longer used in the default builds Bug fixes - Misbehaving ARM programs could cause a crash by accessing memory addresses that aren't represented in the emulation - Requesting multiple composite screenshotting could cause deadlocks - If screen size changed between requests then the compositing process deadlocked - Paddle movement with the stelladaptor was inverted - Bug introduced in v0.28.0 - CPU in KIL state did not tick the TIA and RIOT - Moviecart - ROM would crash if moviecart volume control was increased to the maximum - Brightness control moved in incorrect increments - OSD display was affected by brightness level
- Rewritten mappers : All - Rewritten WRAM, VRAM, PRGROM, CHROM and Nametebles management - Rewritten FDS support - Furthermore, an option has been added to select the mode for write operations. Until now, all writes were stored on an external file (diff file) to preserve the integrity of the disk image, now it's possible to choose to write them directly to the FDS/QD file (making it portable to other emulators as well) - Changed the format of the diff file, now I use the IPS format (which can always be applied to the original image) - Rewritten the format and management of save states. WARNING save states of version 0.110 or earlier are no longer compatible - Rewritten the audio of the VRC7. Implemented the project "A YM2413 emulator written in C" of okaxaki - Rewritten NSF player. Added support to NSF2 format - Added the ability to configure shortcuts and the NES pad from the command line - Added support to Quick Disk format - Added an option for RAM initialization - Added a screen icon that shows when fast forward is active - Added the possibility to set default values for PPU overclocking to be applied for all roms in addition to the per-game ones already used - Added Arabic translation - Added Polish translation - Added full support for the NES 2.0 header format - Added video filter : "NTSC CRT LMP88959" and "NTSC NES LMP88959" - Added video filter : "PAL CRT LMP88959" and "PAL NES LMP88959" - Added support to mapper : 100, 122, 157, 170, 272, 291, 311, 334, 354, 362, 366, 384, 421, 446, 471, 517, 551, 552, 555, 561 - Added support to UNIF mapper : Transformer, UNROM, AMROM, AOROM, LH09, A60AS, T4A54A, FC-28-5027, 150in1A, 212-HONG-KONG, GKCXIN, 113in1JY110, 820561C, M2C52A, S-2009 - Added full support for the Detach Barcode Reader of mapper 157 - Added support for FFmpeg 6.x libraries - Added support for nes20db.xml and dip.cfg - Added full support for Vs System (UniSystem and DualSystem) - Added a screen icon that shows when Fast Forwarding is active - In Fullscreen the menu bar can be accessed by moving the mouse over the top of the screen - Updated Italian, Chinese, French, Hungarian, Portuguese and Russian translation - Changed the "Toggle menu bar" shortcut to ESC - Windows x86_64: Update to Qt5 5.15.8 - Fixed the management of keyboard input - Fixed map of one keyboard button to multiple controllers - Fixed FDS wavetable pitch - Fixed patching of IPS files - Fixed crackling sound when audio is enabled/disabled - Fixed Meta button recognition on some keyboard layouts - Fixed many many many other bugs
Nintendo - Game Boy Advance - Implement prefetch buffer reset on ROM accesses from the CPU - Implement that timer 0 count-up bit cannot be set Nintendo - Super Famicom / SNES - Fix an issue where the Super Gameboy 2 was running at the incorrect clock frequency Nintendo - Nintendo 64 - Implement newly discovered PI DMA behavior when crossing RDRAM row boundaries - Fix a corner face in FPU exception handling Sega - Mega Drive/Genesis, Mega CD, 32x - Add the Mega CD's PC RAM to the debugger memory viewer - Implement subchannel processing for Mega CD (Allows the playback of CD+G/karaoke discs provided a valid .sub file is provided) Sony - PlayStation - Improvements to the handling of the GPUSTAT register Other - Switched back to wglSwapInterval for VSync on OpenGL for Windows; the DwmFlush approach caused worse tearing for most users - Fixed an issue where the SDL input driver considered all controllers to be the same device. - Fixed an issue where rumble events could be missed causing rumble issues in many games. - Improved VSync stability with the DirectX video driver
Emulator - Fixed some very specific crashes after saving machine settings - Fixed forced 4:3 aspect ratio not always applying to a maximized window- - Fixed mouse capture on the secondary monitor window - Fixed mouse capture incorrectly available while the emulated machine is paused - Fixed ROM set detection with multiple XDG_DATA_DIRS on Linux - Removed Direct3D 9 renderer due to several issues User interface - Fixed window icon and grouping on some Linux desktop environments - Updated translations: Chinese (Simplified), Chinese (Taiwan), Russian Machines - Added GLaBIOS XT clone machine - Added Hyundai Super-286C machine - Added ECS Panda 386V 386DX motherboard - Added DataExpert EXP4349 combo 386DX + 486 motherboard - Added J-Bond PCI400C-A Socket 2 motherboard - Added Acrosser AR-B1476, Advanced Integration Research 486PI, AMI - Super Voyager PCI, Anigma BAT4IP3e, A-Trend ATC-1762, DEC Venturis 4xx, ECS AL486, Epson ActionTower 8400, ICS SB486P, Lanner Electronics AP-4100AA, MSI MS-4144 and Packard Bell PB450 Socket 3 machines - Added Lanner Electronics IAC-H488 STPC 486 machine - Added Dell Dimension XPS Pxxx (OEM version of the Intel Premiere/PCI II), FIC PT-2000, MSI MS-5109, Northgate Computer Systems Elegance Pentium 90, Shuttle HOT-539, Teknor TEK-932 and TriGem Torino Socket 5 machines - Added AMI Atlas PCI-II, ASUS SP97-XV, BCM SQ-578, Chaintech 5SBM2, Daewoo CB52X-SI, Dell Hannibal+, Gateway Tomahawk, Gigabyte GA-5SG100, Micronics Thunderbolt, MSI MS-5172, Radisys EPC-2102 and TriGem Richmond Socket 7 machines - Added Gateway Lucas Super Socket 7 machine - Added Gateway 2000 Venus (OEM version of the Intel VS440FX), AOpen AP61 and LG IBM Multinet x61 Socket 8 machines - Added Freetech/Flexus P6F99, LG IBM Multinet i x7G and NEC Mate NX MA30D/23D Slot 1 machines - Added PC Chips M773 Socket 370 motherboard - Added BIOS language selection to the IBM PS/1 Model 2011 - Fixed floppy booting on Zenith Z-series machines - Fixed timer interrupt failure error on Zenith Z-series machines - Fixed incorrect memory detection on the Olivetti M19, Packard Bell PB8810 and Sanyo SX-16 - Fixed keyboard error on the Hyundai SUPER-16T and 16TE - Fixed memory size error on the IBM PS/ValuePoint 433DX/Si - Fixed boot issues with Cyrix CPUs on some SiS 496 machines - Fixed Acer A1G integrated IDE controller issues - Fixed Packard Bell PB410A PS/2 mouse issues - Fixed ABIT AB-AH4 filed on the wrong category (now Socket 3) - Fixed Epson Action PC 2600 and PC Chips M919 integrated I/O issues - Fixed boot issues with some CPU speeds on MR BIOS machines - Fixed soft reboot issues on Amstrad PC machines, Intel Advanced/ATX with MR BIOS and Samsung SPC7700P-LW - Fixed PCI resource allocation issues for the single slot on the Compaq Presario 2240 and 4500 - Fixed ACPI shutdown hangs on several machines - Fixed inaccurate power supply type detection on several machines - Fixed incorrect parallel port mapping on the MSI MS-5124 - Fixed non-functional minimum memory amounts on the Tandy 1000 HX and ASUS P5A - Fixed boot issues and inaccurate BIOS CPU frequency read-outs on the Amstrad MegaPC - Fixed IBM 5161 expansion unit memory reporting on IBM PC and XT machines - Renamed Phoenix 286 clone to Arche AMA-2010 - Renamed MR BIOS 386SX clone to Chaintech 325AX (and added original AMI BIOS) - Renamed Micro Star 586MC1 to Gigabyte GA-586IS - Changed CPU selection on Compaq Portable and Deskpro 386 machines - Changed Intel Premiere/PCI BIOS revision to a newer one Hardware Core - Added debug register emulation for running software debuggers on 386 CPUs only - Reverted 8088 and 8086 CPU emulation to the one from v3.11 due to several issues - Fixed issues with the ADC and SBB instructions breaking specific applications on 8088/8086 CPUs - Fixed inaccurate cache reporting on Pentium Pro/II family CPUs (not that it matters) - Fixed missing model-specific registers on Pentium 1 and newer CPUs - Fixed incorrect Feature Control Register reporting on WinChip and Cyrix III CPUs - Fixed miscellaneous CPUID inconsistencies on several CPUs - Fixed some 486 instructions incorrectly available on 386 CPUs Display - Added Matrox Millennium, Mystique and Millennium II PCI video cards - Added Chips & Technologies B69000 PCI video card - Added Cardex variants of the S3 Trio64V+ PCI and VLB video card - Added Realtek RTG3105 ISA video card - Added IBM 5153 monitor color option to the CGA as a new default - Added line doubling modes to the CGA - Many fixes to EGA and VGA emulation inaccuracies in corner cases - Fixed several rendering issues on Cirrus Logic, IBM 8514/A, XGA, ATI Mach8, Mach32, S3 and Tseng cards - Fixed switching between VGA and enhanced modes on the 8514/A and clones - Fixed ATI EGA Wonder emulation inaccuracies - Fixed Windows display issues on the Cirrus Logic GD5446 and GD5480 - Fixed line drawing issues on Trident TGUI cards - Fixed squishing issue with some DOS games on the Voodoo Banshee/3 - Fixed a rare hard reset hang with Voodoo cards - Changed Realtek RTG3106 to the 8-bit ISA bus Input - Added mapping for sliders and other analog joystick controls on Windows hosts - Fixed joystick mapping issues with POV hats and high axis counts - Fixed duplicate game port detection with Plug and Play sound cards Sound - Added optional PC speaker volume control to the Sound Blaster 16 family - Fixed Gravis Ultrasound crashing the emulator when accessing RAM beyond the configured amount - Fixed Sound Blaster ViBRA 16XV 8-bit DMA playback issues - Fixed AdLib Gold PCM playback issues Network - Added Realtek RTL8139C+ PCI network card - Added DEC 21040, 21140 and 21143 PCI network cards - Added generic NE1000 and NE2000 compatible ISA network cards - Added D-Link DE-220P ISA Plug and Play network card - Added more IRQ options to PCnet ISA and VLB cards - Fixed Racal Interlan EtherBlaster detection by some drivers Ports - Fixed ESC/P printer cutting characters near a page edge - Changed ESC/P printer dot matrix font to an improved one Storage - Added ATAPI hard disk emulation (not hotpluggable yet) - Fixed SCSI hard disk detection hang on NetBSD - Fixed specific boot issues on Longshine, Rancho and Trantor SCSI controllers - Fixed Western Digital WD1002A-WX1 MFM controller BIOS - Fixed emulator crash during CD audio playback on Sony SCSI CD-ROM drives - Fixed small CD-ROM speed calculation inaccuracy - Fixed emulation inaccuracies with NEC and Toshiba SCSI CD-ROM drives - Renamed NCR 53C90 MCA SCSI card to 53C90A to match the emulated feature level
New features/updates: - MacroSystem DraCo emulation. Full emulation except V-Lab Motion video board which is totally undocumented. Amiga clone without Amiga custom chips - Picmatic Marbella Vice light gun laser disc arcade game is now fully working - American Laser Games and PicMatic statefile support - Genlock emulation display positioning/scaling updates - Retina Z2 and Z3/Altais RTG board emulation. (NCR 77C22E+ and 77C32BLT SVGA chips) - S3 Trio64 PCI RTG board - On screen led font is now configurable, settings in GUI Miscellaneous panel - A2410 updates (Latest Picasso96 driver with DMA mode enabled graphics corruption) - All emulated RTG boards now autoswitch (Automatic switch between chipset mode and RTG mode). Previously only RTG boards that have built-in switcher and PCI RTG boards autoswitched - Do not emulate special cases in native chipset screen mode last and first line(s) unless Overscan mode is Overscan+ or higher. (For example OCS Denise top and bottom line mismatched blanking start and end) - NTSC mode screen vertical positioning improved - Disk swapper insert/remove cursor position now works as expected. Same image can be inserted in multiple slots 5.1.0 Bugs fixes - Fast 68020+ mode interrupt timing fix. (Some games hung or had missing or badly playing sound) - Copper timing was unreliable in non-CE modes (Mainly affected horizontally multiplexed sprites) - Dark mode was not initialized if config file was started directly (for example from command line), without opening GUI. Some sub-dialogs didn’t support dark mode - Zero length disk DMA with enabled disk word sync never finished (some copy protections failed to work) - Game Ports panel default config overrode button 4 with on screen keyboard enable/disable option even if it was already configured in Input panel Older bug fixes - Any TV overscan option + NTSC mode: few pixel grapohics corruption was visible in right edge of screen - Many hardware emulated RTG boards had problems with horizontal panning - 68040 MMU emulation fix. (MOVEM restart didn’t work correctly in all situations and MOVES 68040-only special case bus fault behavior was wrong) - CyberVision 64/3D and Picasso IV overlay fixes. P96PipDemo is now working correctly - Ateo Pixel 64 had BGR/RGB swapped colors in most color depths - UAE AHI ignored AHI volume slider setting - Fixed mouse cursor jumping randomly when in tablet mode and clicking mouse button(s) - Game Ports panel input device type getting stuck or entering Test/Remap window crashing in some situations - Some config file and registry/ini paths were always written in absolute format even if WinUAE was configured to relative path mode - “AVI output enabled” (and few similar on/off buttons) button type changed, previously they worked unexpectedly in some situations, visible state was not always matching internal state - Some sub dialogs (for example Gameports input mapping autofire) had old style and no high DPI support - 256 color screenshot mode created wrong colors in some situations, usually when AGA and almost all palette entries were allocated - Changing some native display settings (Filter/Display panel) settings didn’t reset all required display parameters until full display reset (for example window was resized)
Graphics - Authentic adaptive CRT emulation - Accurate VGA emulation - 3dfx Voodoo 1 emulation - New integer scaling modes - Aspect ratio correct image captures - Supercharged image and video capturing - Aspect ratio and viewport enhancements - Fix “black vertical bars” video corruption issue - New deinterlacing shader for FMV games - Other graphics-related changes Sound - IBM Music Feature Card support - Roland MT-32 ROM handling improvements - FluidSynth fixes - Improved MIXER command - MIDI muting improvements - Sanitise MIDI output & Roland RA-50 compatibility - Optionally fade out hanging notes on Tandy & OPL - CD Audio support on Linux for physical CD-ROMs - Other sound-related changes Input - Virtual joystick fixes - Support for mapping mouse buttons to keys - VirtualBox mouse driver support - Multi-monitor-aware mouse capture support - Other mouse improvements
This first release provides: - A complete emulation of the Game Boy Advance (with the exception of most external devices and add-ons) - Decent accuracy - Game controller support - Keys and buttons remapping - Quick Saves (also known as Save State) - Real Time Clock (RTC) support - Color correction & LCD effects - Loading games from common archive formats (.zip, .7z, .rar, etc.)