Community
SCI Programming => SCI Development Tools => Topic started by: troflip on September 07, 2016, 12:36:55 PM
-
I know it was automatically done by the interpreter/engine, but does anyone know the particular algorithm?
(ScummVM has a "render mode" for this, but it doesn't work)
[edit: ok, easy enough to get working in DOSBox]
-
After some experimentation, answering myself, it went like this (in case anyone is interested in this esoteric information) for the cyan/magenta form of CGA:
black black
navy magenta
green cyan
teal black/cyan
maroon magenta
purple black/magenta
brown white
silver cyan/magenta
grey black
blue cyan
lime cyan
cyan black/cyan
Red magenta
fuchsia black/magenta
yellow white
white white
When colors were dithered, they just took from one of the component colors. This means A/B could look very different than B/A. For example:
yellow/fuchsia -> white/black
fuchsia/yellow -> magenta/white
-
It's worth noting that, at least in Hercules Monochrome's case, different SCI drivers rendered colours differently. Back when I had my first computer that my dad had given me, a 286 with a 40MB HDD and a Hercules Monochrome card/monitor, I tried two different Hercules drivers from different SCI games and discovered this result. I don't know if the same is true for CGA or not. Wouldn't it be the driver files that do this though? Would hacking the driver files themselves provide any answers?
And yes, ScummVM has the same set of options for every game. That doesn't mean they all work for every supported engine. They're left over from when SCUMM was the only supported engine. Sometimes they implement them in other engines (sometimes in not the best ways), but mostly they don't really work in my experience.
-
Just tested. KQ4 with its CGA320C driver was uglyballs with the maroon/brown/green palette on navy. Left DOSBox running and switched to CGA320BW, it was teal on navy.
On the other hand, LSL3 with LSL2's CGA drivers? Passable. Attached are CGA320BW, CGA320C, EGA320, and ScummVM renders.
-
Interesting... navy is mapping to black in this case. So it looks like different color mappings were used for different games...
-
For fun I put Larry's CGA drivers in KQ4. Left is KQ4's, middle is Larry's, right is EGA and ScummVM.
-
Yeah, so it looks like the mapping was defined in the drivers, and was different for different games.
Laura Bow herself looks terrifying with SQ3's CGAC driver (equally so with LSL2's):
-
So... you gon' add a CGA simulation mode to SCI Companion? :D
I remember when I made a Jill of the Jungle sprite editor. You edited the VGA data and there were two smaller EGA and CGA live previews next to it. There was no EGA or CGA data, only mapping info.
-
Haha, nope :-)
It's for a puzzle for Cascade Quest. Part of the game will have some kind of CGA emulation mode...
-
Well that's fun...
-
Don't forget Sierra provided CGA drivers for their SCI1-EGA versions.
Here's Space Quest 4 in CGA:
https://youtu.be/9bSAHV3Ujec (https://youtu.be/9bSAHV3Ujec)
Another interesting display mode is the 8-color used in the PC-98 Japanese SCI0 games: Quest for Glory 1 and Police Quest 2.
I wrote a wiki page on the subject:
http://wiki.scummvm.org/index.php/Quest_for_Glory (http://wiki.scummvm.org/index.php/Quest_for_Glory)
-
I am suddenly reminded of the plugs in SQ5, which were... understandably done in three different pic resources.
-
Why did they do that? (Haven't played SQ5... looked at a playthrough and only the VGA resource was used... so... confused)
-
You mess with the plugs to fix something. You mess with them just right and you trigger this visual easter egg.
You might notice the CGA version isn't quite.
-
Interestingly, if you're running the game in VGA mode removing the plug makes that screen EGA. If you're running with the EGA640 dithered driver it makes the screen CGA.
-
In SQ4, at the SQ1 bar, when you talk to the monochrome boys, their dialogue is affected by the game version/driver combo you use: VGA / EGA / Amiga (32 Colors).
You can read about it here:
http://www.mobygames.com/game/space-quest-iv-roger-wilco-and-the-time-rippers/trivia (http://www.mobygames.com/game/space-quest-iv-roger-wilco-and-the-time-rippers/trivia) (under "Version differences")
And listen the different audio clips here:
http://spacequest.wikia.com/wiki/Monochrome_Boys#Dialogue (http://spacequest.wikia.com/wiki/Monochrome_Boys#Dialogue)
I don't remember what their response is when playing using the CGA driver, but I think I tried it once and the text changes to reflect this. Can't check this week as I'm away from my computer.
-
The Monochrome Boys are full of shit. They themselves have way more than 16 shades of more than just gray.
Edit: going by my copies, the VGA disk version has "look at me I'm in VGA" and "256 colors for one wimp". The CD version adds 16 colors EGA... and strangely 32 colors EGA, and a completely different spoken line -- "What's this? You'd have to be a blitherin' idiot to waste all that color on one little bitmapped wimp, har har." -- and the "look at me I'm in 32 colors" line has no sync. My EGA disk version meanwhile has hardcoded lines (like the VGA version) for 16 color EGA and 256 color VGA.
-
The 32-colours was probably for the Amiga version but left in the resources for DOS/Win. I seem to remember there being a condition for Hercules too, but I could be wrong about that.
-
32 colors isn't EGA though. If anything its 16-color palette could be selected from a larger 64.
And for the record, the lines in the PC-98 version are 256/VGA and 16/EGA.
Edit: confirmed same for French and German.
-
32 colours EGA? I didn't remember that.
-
Interestingly, if you're running the game in VGA mode removing the plug makes that screen EGA. If you're running with the EGA640 dithered driver it makes the screen CGA.
Interesting... I don't see anywhere that it uses that info in the decompile. Fuse.sc only ever references pic 512, never 513 (the CGA one). The color depth is checked at the beginning of the game, but not used for that.
(It is used for some palette cycling somewhere, and then also this line: "The following sequence will require you to clean the crest floor but since you have only an EGA system, it will be difficult for you to determine if the floor is clean due to the limited number of colors available to your system. We therefore offer you the option to skip or play this sequence. If you skip it, you will still receive the same amount of points.")
-
"If you skip it, you will still receive the same amount of points."
No fair!