Skip to content

pcx-v0.3: PowerVR PCX: render threads back at normal priority

Choose a tag to compare

@z2k-retro z2k-retro released this 25 Oct 18:38
· 4 commits to powervr-pcx since this release
d44c8fc

Speed and sound. Games that keep time by counting timer interrupts (Tomb Raider for DOS, PowerVR Quake, Turok) could run in slow motion while their own fps counter read high, worse at higher resolutions and on slower hosts. When the host took longer to draw a frame than the real card would, the emulated PC was paused, and timer ticks were lost. The emulated card now just stays busy longer, as a real m3D does on a heavy frame.

Rendering is about 40% faster, with bit-identical output: every one of the 207 captured test frames comes out the same as before, so everything compared with the real m3D still matches it.
The card’s frame buffer writes are no longer billed to the emulated CPU, which fixes audio stutter.
Windows builds now use 86Box’s new recompiler. The old one stops with “Over limit!” in Windows 98 on the machines tested; an -OldDR download is there for comparison.
Render threads now default to 3. More threads draw faster but compete with 86Box’s emulation thread. Roughly half your physical cores works well.

What to expect: a Pentium II at 300–450 MHz is demanding for 86Box with or without a PowerVR, and the PowerVR driver leaves more of the work to the CPU than a Voodoo does. If games slow down or the sound breaks up, use 86Box’s OpenGL renderer and try a lower emulated CPU speed. With logging on Summary, the “PowerVR: frames” lines show whether the card or the emulation is the limit.

Full compatibility list:
https://github.com/z2k-retro/powervr-pcx2-tools/blob/main/docs/using-86box.md

Hardware, testing and direction by Z2k Retro. Written with substantial help from Claude, Anthropic’s AI model; every result was checked on the real card.