What's New in 3.3.0
This is a big one. Four months of work since 3.2.1 covering iCloud sync, a completely revamped tvOS interface, video filters, and a ton of core and stability fixes.
☁️ iCloud / CloudKit Sync
- ROMs, save states, BIOS files, and artwork now sync across devices via iCloud
- Real-time download progress indicators when loading cloud save states
- Auto BIOS sync on game load when available in iCloud
- ROM metadata syncs alongside files
- Artwork syncs after library updates
- CloudKit records management tab in Settings
- iCloud upsell UI for new users with empty libraries
- Sync queue pauses during emulation and resumes after
📺 New tvOS UI (Default)
- Completely redesigned tvOS interface now enabled by default
- RetroWave-themed side menu with smooth animations
- Save states browser accessible from the main UI with artwork and core name
- "View All" saves section with per-system filtering
- TopShelf v2: recent games and save states with artwork and timestamps
- Cheats UI in the pause menu
- Game "More Info" panel
- Log viewer tab
- Import status view in side menu
- Search with persistent history
- Dozens of focus, navigation, and theming fixes throughout
🎨 Video Filters & Shaders
- Unified filter pipeline works across native and RetroArch cores
- GB and VHS filters improved
- Filters accessible from the pause menu
- RetroArch GLES 3D cores now supported (Vecx/GLiden, etc.)
- Dolphin shader/filter support
- PPSSPP filter support
🎮 Core & Controller Fixes
- RetroArch: Fixed player index mapping for MFi, PS4, and Xbox controllers; PS4 start/select fixed; 32x controls added; GameCube controller responder added
- Mupen64Plus: Fixed PS4 start button; fixed tvOS scaling and placement; better save error messages
- Dolphin: Fixed Vulkan landscape rendering
- GenPluGX: Added CHD support; added wide-screen GameGear core
- PicoDrive: Fixed crash on unload; fixed 32x controller mapping
- FCEUmm: Fixed start/select button mapping
- Mednafen: Fixed DualShock/DualSense pause/play button mapping
- GameBatte / TGDB Dual: Fixed PSX/Xbox pause/select button mapping
🐛 Bug Fixes & Stability
- Fixed multiple app hangs from main-thread Realm access (moved to background)
- Fixed crash in pause menu when closing core
- Fixed potential crash if audio ring buffer init fails
- Fixed crash in share/import extension
- Fixed aspect ratio issues in Stella and some other cores
- Fixed FPS label appearing in screenshots
- Fixed artwork not refreshing in game library after sync
- Fixed game importer re-queuing already-imported items
- Fixed Realm contentless core crash
- Fixed "Continue" carousel metadata mismatch
- Skin selector refreshes orientation previews on rotation change
- ManicSkin/DeltaSkin files can now be opened directly from Safari
- iPad import status modal clipped layout fixed
- DSP audio engine fixes
⚡ Performance
- Artwork loading significantly faster
- Game library UI rendering optimizations (removed unnecessary Observable wrappers)
- Async tab bar icon loading
- CloudKit sync deduplication and repeat-lookup fixes
- Game importer skips MD5 hashing for large non-BIOS files
Full Changelog: 3.2.1...3.3.0