Major update to custom chipset emulation. Internally almost everything in main chipset emulation has been rewritten. Fastest possible/JIT mode chipset timing/sync had major changes which can cause side-effects. Bugs are very possible, especially in very rarely used features. 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