1*7dd7cddfSDavid du Colombier #include "../lib9.h" 2*7dd7cddfSDavid du Colombier 3*7dd7cddfSDavid du Colombier #include "../libdraw/draw.h" 4*7dd7cddfSDavid du Colombier #include "../libmemdraw/memdraw.h" 5*7dd7cddfSDavid du Colombier 6*7dd7cddfSDavid du Colombier Memcmap* memdefcmap; 7*7dd7cddfSDavid du Colombier 8*7dd7cddfSDavid du Colombier static Memcmap def; 9*7dd7cddfSDavid du Colombier 10*7dd7cddfSDavid du Colombier void 11*7dd7cddfSDavid du Colombier memmkcmap(void) 12*7dd7cddfSDavid du Colombier { 13*7dd7cddfSDavid du Colombier 14*7dd7cddfSDavid du Colombier int i, rgb, r, g, b; 15*7dd7cddfSDavid du Colombier 16*7dd7cddfSDavid du Colombier if(memdefcmap) 17*7dd7cddfSDavid du Colombier return; 18*7dd7cddfSDavid du Colombier 19*7dd7cddfSDavid du Colombier for(i=0; i<256; i++){ 20*7dd7cddfSDavid du Colombier rgb = cmap2rgb(i); 21*7dd7cddfSDavid du Colombier r = (rgb>>16)&0xff; 22*7dd7cddfSDavid du Colombier g = (rgb>>8)&0xff; 23*7dd7cddfSDavid du Colombier b = rgb&0xff; 24*7dd7cddfSDavid du Colombier def.cmap2rgb[3*i] = r; 25*7dd7cddfSDavid du Colombier def.cmap2rgb[3*i+1] = g; 26*7dd7cddfSDavid du Colombier def.cmap2rgb[3*i+2] = b; 27*7dd7cddfSDavid du Colombier } 28*7dd7cddfSDavid du Colombier 29*7dd7cddfSDavid du Colombier for(r=0; r<16; r++) 30*7dd7cddfSDavid du Colombier for(g=0; g<16; g++) 31*7dd7cddfSDavid du Colombier for(b=0; b<16; b++) 32*7dd7cddfSDavid du Colombier def.rgb2cmap[r*16*16+g*16+b] = rgb2cmap(r*0x11, g*0x11, b*0x11); 33*7dd7cddfSDavid du Colombier memdefcmap = &def; 34*7dd7cddfSDavid du Colombier } 35