There is a low-resolution color mode of size 160x100 pixels (lines are doubled), 16 colors.
That's one of the two available tricks to make text mode look like a low-res graphics mode. The other, easier to understand trick is the 80x50 mode that the Nibbles game (example code distributed with QBasic) used. The 160x100
mode is more difficult to achieve. The 160 part is easy
to understand: it's 80 doubled, using IBM Extended ASCII
block-shaped characters to split the text character cell
vertically, in pretty much exactly the same way as Nibbles splits them horizontally. Getting 100 characters high instead of 25 is the hard part; apparently there's a little-known byte you can tweak someplace to change the character cell height.
This is of little use normally, since with a height less
than about 7 you could never read the text, so it's
seldom mentioned or discussed, but there you go. (Of
course, you already knew there was enough video RAM on
a CGI card to hold 200 lines' worth of characters for
text mode; this capability was usually used for quickly
switching between several available screens, e.g., for
help screens, "boss" screens, and the like.)
But if you use a "real" graphics mode (e.g., the
320x200 "medium resolution" mode), you only get
four colors max, and three of them cannot be
chosen independently; there are three available
hardwired palettes. The fourth color is the
"background" color and can be any of the 16 colors.