# Port status: details ![Status](mapa.en.svg) Generated by `tools/estado/generar.py` from `docs/estado/datos.toml` and `config/funcmap.csv`. Do not edit by hand. ## Sony SDK libraries*: 65.4% (423/647) | Library | Functions | Status | Note | |---|---:|---|---| | `libmpeg` | 103 | 🔧 Partial | The FMV intro is software-decoded and displayed without GOW_SKIP_FMV; other videos remain unverified | | `libipu` | 5 | 🔧 Partial | sceIpuInit fixed; the software MPEG path works, but full IPU operation coverage is unverified | | `libgraph` | 7 | ✅ Working | | | `libdma` | 8 | ✅ Working | | | `libcdvd` | 10 | ✅ Working | Reads the original ISO | | `libdbc` | 11 | 🔧 Partial | dbcman RPC and SIO2 verified for card loading and saving; SIO2 controllers still read as disconnected | | `libpad2` | 13 | 🔧 Partial | HLE for the first port (keyboard or gamepad); pressures 0/255 | | `libvib` | 2 | ⏳ Pending | No rumble: the HLE reports no actuators | | `libmc2` | 90 | 🔧 Partial | Listing, loading, saving and reloading verified with a copied 8 MB PCSX2 card with ECC; formatting and reopening in PCSX2 remain unverified | | `libscf` | 14 | ✅ Working | | | `libgcc` | 32 | ✅ Working | | | `C++ EH` | 34 | ✅ Working | | | `libm` | 14 | ✅ Working | | | `libc` | 150 | ✅ Working | | | `libkernel` | 101 | ✅ Working | | | `sif` | 24 | ✅ Working | SIF commands and RPC | | `fileio` | 15 | ✅ Working | | | `loadfile` | 14 | ✅ Working | IOP heap and module loading | ## PS2 hardware: 60.5% | Group | Component | Weight | Status | Note | |---|---|---:|---|---| | EE | R5900 CPU (recompiled to C++) | 5 | ✅ Working | | | EE | Kernel: threads, semaphores and alarms | 3 | ✅ Working | | | EE | FPU (COP1) and MMI instructions | 2 | ✅ Working | | | EE | INTC: VSync and GS interrupt | 2 | ✅ Working | | | EE | DMA controller | 2 | ✅ Working | fromSPR/toSPR chains now copy the bone palette; Kratos and enemy shapes verified in gameplay | | EE | Timers | 1 | ✅ Working | | | GS / VU | GS: primitives and framebuffer | 3 | 🔧 Partial | CPU/OpenGL retained; ship, Kratos, enemies and HUD visible. Color/Z ordering and width/wrap aliases validated. Unstable feedback narrowed to 33 submissions; optional snapshot stable over 64 passes, still different from CPU. Read-only depth optimization withheld; per-variant GPU profiling and query boundary verified; coverage remains incomplete | | GS / VU | VIF1 and VU1 | 3 | 🔧 Partial | Compiled blocks, persistent flags, four-lane SSE, compiled DIV and flags committed when read (interpreter 333 → 293 ms per frame); FTZ/DAZ regression preserves underflow. Models and HUD visible after MMI/EFU/SPR fixes. In loaded gameplay VU1 takes ~35% of the game thread and waiting on the GPU ~31%; coverage and sustained performance remain unverified | | GS / VU | GS: textures, CLUT and fonts | 2 | 🔧 Partial | HUD visible; CPU/OpenGL bilinear and nearest STQ verified, including signed 16.16 boundaries, against procedural PCSX2 software patterns; GPU feedback stable in an experimental mode; regional texture batches optimized and verified across all 13 PSMs; real GS cache and full font/CLUT coverage remain unverified | | GS / VU | GIF (PATH1-3) | 2 | ✅ Working | | | GS / VU | IPU: FMV video | 2 | 🔧 Partial | The FMV intro works through software MPEG decoding; this does not establish complete IPU hardware emulation | | IOP | R3000A CPU (interpreter) | 3 | ✅ Working | Opus idle scheduler integrated and validated with GS/VU1: caches the next wake-up; its profile reduces IOP from ~1300–1500 to ~570–650 ms per 5 s; an FPS comparison without concurrent builds remains pending | | IOP | SPU2: audio output | 3 | 🔧 Partial | Bank loading and continuous sound in emulated time verified; at ~2 fps playback stutters; reverb and ADMA are missing | | IOP | Original IRX modules | 2 | ✅ Working | | | IOP | SIF: EE ↔ IOP RPC and DMA | 2 | ✅ Working | | | IOP | CDVD: reading the original ISO | 2 | ✅ Working | | | IOP | DualShock 2 controller | 2 | 🔧 Partial | libpad2 via HLE (first port); controllers read as disconnected on the emulated SIO2 | | IOP | SIO2: memory card | 2 | 🔧 Partial | SIO2 and 8 MB card with ECC: loading, saving and reloading verified in-game on a PCSX2 copy; formatting and reopening in PCSX2 remain unverified | * Functions of the static Sony libraries linked into SCUS_973.99 (config/funcmap.csv). Hardware: weighted per component.