Great Hierophant wrote: I can assume as King's Quest uses the artifact color composite mode (640x200)
That's right. King's Quest I first starts in 320x200x4 mode (bios mode 4) and then sets 640x200x2 mode with color burst (port 3d8=1a) manually so the BIOS will think it's in still 320x200 mode and thus print all text at double-width. KQ1 really is that dark, so an accurate emulation should reflect that.
Trixter wrote:Will you be releasing the source?
It's not presentable at the moment. I have already sent it to Blargg; he has made some optimizations to the NES portion, and I'm currently trying to figure them out and incorporate them into the main code. If I sent it to somebody else now for further "optimizations", I would completely lose track.
Trixter wrote:Maybe we can work on optimizing it to a level where it could be included in DOSBOX.
DosBox needs to support HiColor mode first --- proper NTSC color processing involves a lot of filtering which results in many transient-colored pixels that can't be done properly in 256-color palettized modes. Before that support is added, DosBox support is out of the question.
If you want to help optimize it, you can post a schematic of the CGA, please; looking at your calibration page, I assume that you have one. I currently get my information from the CGA patent, but it seems that they slightly deviated from that in some aspects, as my colors are a little too bright in a few cases. Or maybe I'm just interpreting the diagrams in the patent incorrectly.
Just taking away some brightness is not possible, because for games that use cross-color artifacts in 320x200x4 mode, the relationship between luma amplitude and chroma amplitude is delicate to properly yield the 'correct' artifact colors. In the "normal" (640x200x2 based) composite color mode, this is not a problem, because you're just getting artifact colors from white pixels; therefore, games that use this mode will look right no matter what I do. It's the Ultima2/3/Decathlon that are the problem.