Xref: news2.mv.net comp.os.msdos.djgpp:4726 From: matrix AT ionsys DOT com (MCheu) Newsgroups: comp.os.msdos.djgpp Subject: Re: mode 13h -- setting/modifying pallettes? Date: Thu, 06 Jun 1996 09:09:31 GMT Organization: ionsys.com Lines: 45 Message-ID: <4p5sdt$jjm@maggie.ionsys.com> References: <4otpbl$boi AT maggie DOT ionsys DOT com> NNTP-Posting-Host: ip-013.ionsys.com To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp matrix AT ionsys DOT com (MCheu) wrote: >Hello all, >Could someone please direct me to a faq or something that can show me >how to set or modify the pallette in mode 13h under djgpp? I've found >info on how to plot points and get into and out of mode 13h in the v2 >faq, but not on how to set the pallette with djgpp v2. If possible, >I'd like to find C code examples since the only examples I've been >able to find are in ASM code for Borland C++ (they're from the Aus >online version of Game Developer Magazine). >Thanks very much. >-MCheu >-matrix AT ionsys DOT com Thanks to everyone for the help. I got a few suggestions on how to do it. It's much easier than I ever could have guessed. In case anyone else is interested this is the easiest method: /* Select colour # from 0-255 (256 possible colours) to start from, in this case colour 0, by sending the colour number to port 0x3c8 */ outportb (0x3c8, 0); /* change colour 0 by sending colour information using red, green, blue intensity numbers (valued 0-63) in that order to port 0x3c9 */ outportb (0x3c9, red); outportb (0x3c9, green); outportb (0x3c9, blue); /* to change the rest of the pallete, just keep sending values to port 0x3c9 ie. the next 3 values sent would modify colour 1, the next 3 ... colour 2, etc */ Special thanks to Mr. Daniel Kullman and Snarfy? for explaining this.