v1.1.0
๐ Features
- Ship PlayStation 2 as a downloadable platform
- SEO โ structured data, sitemap, robots, manifest, 404
- Migrate landing page to Hugo + add downloads stats page
๐ Bug Fixes
- Hold the frame during komnata load (no new-assets-on-old-bg flash)
- Skip fileXioOpen on device-less paths โ no more "Unknown device" spam
- Nudge 480p display down (PCSX2 VGA top-clip)
- Alignment-safe entity-slot access โ unaligned u32 trapped on R5900
- Lip-sync (+ SFX cleanup, dialog stop) gated on the SDL device handle
๐ฎ Engine & Gameplay
17 commits
- Carry master fixes through the HAL refactor (rebase)
- Eliminate the last WACKI_HANDHELD #ifdefs from sdl/
- Give the platform interfaces a single declaration point
- Remove the last MIYOO/PORTMASTER/gamepad #ifdefs from sdl/ via hooks
- Split platform_ps2.c into src/platform/ps2/{system,storage,video,audio}
- Relocate the flat platform_* files into src/platform//
- Lift the AVI cutscene audio device into the audio HAL
- Gate gameplay keybinding on an input-capability HAL
- Unify standalone WAV file read through cygio (de-PS2 audio.c)
- Route dcache-flush + bring-up trace through the system HAL
- Move process lifecycle behind a system HAL, finish the migration
- Move video output behind a video HAL, de-PS2 platform_sdl.c
- Move the FLIC cutscene reader behind the storage HAL
- Move the audio device behind an audio HAL
- Split the cygio file-I/O backends, finish the storage HAL
- Move data-root discovery behind the storage HAL
- Introduce storage HAL, move save behind plat_save_*
๐ Documentation
- Fix stale file/symbol references after the platform reorg
- Translate badge labels to English
- Add downloads/version/license shields.io badges
๐ง Build & CI
- Dedup cross-build scripts + CI, add PS2 coverage
- Split Makefile into mk/.mk per platform
๐งน Maintenance
- Drop compile-time video-mode flags + stale probes; platform-hal.md po polsku
- Gitignore .claude/ local tool state
๐ Other
27 commits
- port: Boot-time video-mode picker (PAL / NTSC / 480p)
- core: Rename s_mouse_x/y โ g_mouse_x/y (naming convention)
- core: Consolidate cursor + display-knob globals into globals.h
- port: Boot + run from a USB stick on real hardware (BDM mass-storage)
- port: Video-mode test builds โ PAL/480p/576p flags + letterbox + modes script
- port: USB HID mouse โ cursor + clicks (usbd + ps2mouse)
- port: Bake the build version into the Docker build (was "unknown")
- port: SyncDCache the music_stream ring (fileXio DMA bypasses EE cache)
- port: Name the memory-card save folder after the serial (WACK-00101)
- port: Give the disc a title serial โ WACK-00101
- port: Async read-ahead for cutscenes โ no more FLIC stutter off disc
- port: Real save title + cover-art icon in the BIOS browser
- port: Write icon.sys + 3D icon.ico for the save (no more "Corrupted Data")
- port: Saves to the memory card (libmc)
- port: Left analog stick โ cursor (enable DualShock analog mode)
- port: Cutscene (AVI) audio through audsrv
- port: Play FLIC/AVI cutscenes โ buffered fileXio reader
- port: Native audsrv audio โ SFX, dialog, in-game music
- port: Keep progressive 480p behind a flag; default to 448i
- port: Native gsKit hardware-palette present โ 6โ30 fps
- port: Frame profiling โ 6 fps is the EE-side 8bpp->ARGB expansion
- port: File I/O via fileXio โ the game boots, loads, and plays
- port: Bring-up instrumentation + PINE file-I/O probe rig
- port: Run silent โ SDL audio (audsrv) wedges the IOP
- port: Bootable ISO with cdrom0: data + path normalization
- port: Broaden host:/host0: data paths for PCSX2 HostFS
- port: Experimental PlayStation 2 target (ps2dev + SDL2-PS2)
Full Changelog: v1.0.4...v1.1.0