home *** CD-ROM | disk | FTP | other *** search
/ FreeWare Collection 2 / FreeSoftwareCollection2pd199x-jp.img / ms_dos / fmgraph / g_palete.c < prev    next >
Text File  |  1990-06-14  |  763b  |  39 lines

  1. #include    <stdio.h>
  2. #include    <dos.h>
  3.  
  4. struct SINGLEPLT {
  5.     unsigned        size;
  6.     struct PALETTE {
  7.         unsigned        colorid;
  8.         unsigned char    reserve;
  9.         unsigned char    red;
  10.         unsigned char    green;
  11.         unsigned char    blue;
  12.     }    pltbl;
  13. };
  14.  
  15. extern    unsigned    char    gds_fshift;
  16. extern    unsigned    gds_wrkoff;
  17. extern    unsigned    gds_wrkseg;
  18.  
  19. void    g_palette(unsigned color,unsigned char red,unsigned char green,
  20.                     unsigned char blue)
  21. {
  22.     union REGS    reg;
  23.     struct SREGS    seg;
  24.     struct SINGLEPLT    plt;
  25.  
  26.     segread(&seg);
  27.     reg.h.ah=gds_fshift+3;
  28.     plt.size=6;
  29.     plt.pltbl.colorid=color;
  30.     plt.pltbl.red=red;
  31.     plt.pltbl.green=green;
  32.     plt.pltbl.blue=blue;
  33.     reg.x.di=(unsigned)&plt;
  34.     seg.ds=seg.ss;
  35.     reg.x.bx=gds_wrkoff;
  36.     seg.es=gds_wrkseg;
  37.     int86x(0x92,®,®,&seg);
  38. }
  39.