CGA and AGI

Great Hierophant

Consider http://www.classicgaming.com/agisci/othrcomp.shtml

and the screenshots of the PC CGA.

Now, the first screenshot of King's Quest and the second screenshot of King's Quest I think both use CGA's Palette 0. Now, NAGI will show the colors as in screenshot 1, while MESS and DosBox will show the colors in screenshot 2. But if you hit Ctrl R in any of these emulators, one hit will get CGA palette 0, a second hit will get CGA palette 1, and the third hit will get 16 color EGA.

So my question is which emulator has the right colors for CGA palette 0?

sonneveld

I'm pretty sure NAGI is the only one that will swap between the 4 colour CGA and the 16 colour EGA. I'd be interested in which other interpreters do this.

I can't remember where I got the colours for the CGA palettes though. screenshots from websites or i did them myself.

but looking at NAGI's code.. and the disassembled code. the interpeter changes to CGA mode. and if the display variable is set to 1 then it'll change the palette otherwise it'll just leave it as the default.

interestingly enough.. it dithers the view's colours differently depending on the palette. and if you change palettes in cga mode, then it reloads all the views and redithers them again. Which is why in some games, it has to check which room you're in before you can ctrl-R cause you might lose some text on the screen.

anyway.. it's been a while since i touched the cga stuff... so I might be wrong.

- Nick

AGI1122

You forgot to mention that -c on the command line uses the cga colors, while the -r uses the rgb colors. ;DYeah I know... I am being nitpicky. ::)

Robin_Gravel

Did somebody play agi games using CGA card and composite monitor (not with color monitor) ?

The game should display in 16 color this way.

Robin Gravel

df

i should point out the first pc cga screen shot (with graham + the fairy) is the original booter disk, thats the AGI v0 version, the original pcjr/tandy one.

Great Hierophant

This is a difficult question indeed. First, as I understand how the Color Graphics Adapter works, there is a choice of two 4 color palettes. Palette 0 is brown/red/green/background and palette 1 is white/cyan/magenta/background. Now the CGA registers allow the user to set the background color to one of eight colors. Normally it is set to black, but for Sierra's RGB mode they set it to blue. However, it is my view, after careful observation of CGA colors, is that the colors are affected by intensity.

As I understand it, there are only 16 colors that a CGA card can reproduce. Eight colors are standard and eight are lighter versions of them. Consider these pairings:Black-Dark GrayBlue-Light BlueGreen-Light GreenCyan-Light CyanRed-PinkMagenta-Light MagentaBrown-YellowLight Gray-White

These are the 16 CGA colors. I have seen many CGA games, and they all fall within the same 4 patterns. Either palette 0 is regular intensity, brown/red/green/backgroung, or light intensity, yellow/pink/light green/background. Palette 1 also acts in the same way, although the differences are not as noticeable. The regular intensity palette is cyan/ magenta/light gray/background and the light intensity palette 1 is light cyan/light magenta/white/ background. The intensity register does not affect the background color.

Both NAGI and my own Video Adapter (Geforce 4 Ti 4200) running King's Quest I AGI disk version naturally show the regular intensity palette 0 in RGB mode. However, running the same game in v.57 of DosBox with the Tandy patch (RGB mode) shows the lighter palette 0. Also, the MESS emulator tries to do this when running the PC Booter version. But all sierra AGI software uses the light version of palette 1 to my knowledge. If it uses the light version of palette 1 would it use the regular version of palette 0?

So, the question becomes who is right here? Perhaps we will never know until someone takes his floppies of his AGI games and runs them on an IBM XT with a hard drive, 256KB RAM, 720KB Floppy Drive, 10MB Hard Drive and a true IBM CGA card. Oh, and try the color composite mode as well, because I'm not sure how accurately v.57 of Dosbox with the Tandy pacth replicates it.

By the way, I have three unique disk images of the King's Quest booter. One is supposed to run only on the PCjr. The second runs on a PC, and I got it to boot properly with my 2001 laptop. The third runs only on Tandy 1000 machines.

Does anyone know the command line switch for sierra.com to change it into the color composite mode? If -c is for palette 1 CGA, -r for palette 0 CGA, h- for the Hercules Graphics Card, and -t for a Tandy Sound Chip, what are the other command line switches?

Great Hierophant

After further reflection and research, I believe that one may have to look at what the AGI Interpreter is trying to do when it sets the video mode. Since "RGB" can apply to either intensity of palette 0, this is not helpful.

Modern display adapters, in my experience, use light intensity color palette 1. (cyan/magenta/white/background) This seems to be consistent across all AGI Interpreter Versions. No AGI game I have ever seen uses the regular or dark intensity palette 1. (dark cyan/dark magenta/light grey/background) However, since palette 1, for some strange reason, is more often used than palette 0, then perhaps it is better supported in modern VESA. (Pretty stupid, but I have heard of worse bugs)

Much more complex is the matter of palette 1. In the first screenshot of the link I provided, the palette is reglular intensity (brown, red, green, background). In the second screenshot, the palette is of light intensity (yellow, pink, light green, background). Note that the intensity of the background, blue, does not change. This is in line with CGA standards. Now, with an nVidia Geforce Ti4200 and an ATi Rage Mobility, every v2 and v3 AGI game I have tried uses regular intensity palette 0. This is what NAGI does, and perhaps Sarien as well. But the first screenshot, which also uses the palette, is of the PC Booter version. The second screenshot, of a v2 AGI version of King's Quest, uses light intensity palette 0. Someone who can test this on a true CGA card must speak!