wd wrote:because in 5 years no one might remember that fact anymore
Bad luck i guess.
Well, a commercial project would never accept such an answer, and IMHO since we're talking about open source, quality standards are higher than "well, at least it runs for now".
wd wrote:
who actually try to understand what's going on
They can ask or read the code. It's open source.
Right, my point: it's open source. Bad documentation can't be excused there, because the questions are going to be asked anyways.
wd wrote:
a simple text file called LIMITATIONS
This file would not fit on a cdrom for sure.
Well, I'm not asking for a scientifically proven Ph.D. thesis on rocket schience, but a higher level view which has relevance for users, not just developers. You know, like the difference between a CVS log and the list of changes published in the release announcements. The first few entries could be (please excuse the inaccuracies, I'm not the expert here):
- FPU core only works with 64 bit accuracy on most platforms. Affected games: Carmageddon, ... [rationale: portability]
- x86 platform has 80bit FPU, but has simplified exception model. Affected games: none so far, but several apps (use dynamic core instead). [rationale: performance]
- protected mode core can't handle recursive initialization. Affected games: Frontier: First Encounters (use jjffe instead) [rationale: not needed, since the only affected game has a source port]
- VGA emulation does not render with scan line accuracy. Affected games: Lemmings, Kellogs, many demos, ... [rationale: performance, this is not a game-stopping issue]
- No direct I/O port acces. No games affected, but some apps. [rationale: all game-relevant hardware is emulated fully]
You see what I mean? A simple high-level list containing short explanations, affected games, workarounds and reasoning, why the limitation is present. No rocket science to write, and takes just a minute to update.
wd wrote:
A nice test to see the flaws of the non-80bit precise store operations
is carmageddon, you'll get black stripes in the graphics (the missing 16 bits 😀 ).
I never played that game, but asking hypothetically: Is there any way to get such games working correctly on non-x86? Would dynrec on x86_64 use 80bit?