FCEUX
The all in one NES/Famicom/Dendy Emulator

# FCEUX 2.6.6 Maintenance Release

26 August 2023

The 2.6.6 release is mainly a maintenance update for the mappers and emulation core with a few new features added in.
Some of these new features apply only to the Qt/SDL version of the GUI.

## Common

### Mappers

Minor refactor of save game RAM code. Fixes UNROM-512 flash clearing bug during movie play.
Mapper 354: Add CHR-RAM protect.
Mapper 78: Add submapper support.
Add mapper 174.
Move mapper 205 to mapper 361/366, add proper mapper 205.
Mapper 205: Fix for split-rom variant (UNIF).
Mapper 227: Fix CHR-RAM protext check.
Changed UNROM-512 to use 8kB of CHR RAM memory by default.
Mapper 342 memory optimization.

### Lua

Implemented LUA function memory.registerread

### Core

Memory initialization settings are now also applied to nametable, palettes, and sprites.
Fixed bug were write instructions didn't always update the databus.

## Qt/SDL

### Debugger

Added ld65 debug file symbol loader feature.
Added checkbox to Qt debugger menu to control trace logger auto start function on debugger open.
Added code to stop the trace logger on debugger close if it was the debugger who started it in the first place.
Added address validity checking to breakpoint editor dialog entry fields.

### Video

Added a third video driver option that uses a QPainter object to render QImages to the viewport (uses pure Qt API)
Fixed video transparency issue that has been seen on some platforms (Wayland) by forcing alpha bits to be set to full opaque

### GUI

Added state recorder feature, periodically saves time history of game play states that can be recalled and played out from.
Fixed bug regarding force grayscale or use custom palette settings change not updating PAL 3x filter appropriately.
Added feature that allows loading of save state files via drag n drop file dialog operations.
Fixed redundant window focus bug that would occur when attempting to open a pre-existing window.
Added optional cross-platform libarchive interface to allow Qt GUI to open ROMs from 7zip archives.
Minor improvements to the ROM selection from archive dialog.
Improved frame scheduling timing precision.

### Build

Build fixes for GCC 13.