rendered paste bodyunsigned short sprites[8][16] = {// 000 White{0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000},{0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000},// 001 Light Gray{0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF},{0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF},// 002 Dark Gray{0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000},{0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000},// 003 Black{0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF},{0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF,0xFFFF}};unsigned short masks[4][16] = {// 000 White{~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000,~0x0000},// 001 Light Gray{~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF},// 002 Dark Gray{~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000,~0xFFFF,~0x0000},// 003 Black{~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF,~0xFFFF},};unsigned short tilemap[9][12] = { {1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1}};void ClipGrayDrawTilemap16(short x, short y, void *map, void *tiles, void *masks, void *light, void *dark) { short **mapptr=map; short **tilesptr=tiles; short **masksptr=masks; short loop_w=0; short loop_v=0; ClipSprite16(50,50,16,tilesptr[2],light,SPRT_OR); ClipSprite16(50,50,16,tilesptr[2],dark,SPRT_OR); for(;loop_v<8;loop_v++) { for(loop_w=0;loop_w<11;loop_w++) { ClipSprite16((-(x&15))+(loop_w<<4),-(y&15)+(loop_v<<4),16,masksptr[mapptr[loop_v][loop_w]],light,SPRT_AND); ngetchx(); ClipSprite16((-(x&15))+(loop_w<<4),-(y&15)+(loop_v<<4),16,masksptr[mapptr[loop_v][loop_w]],dark,SPRT_AND); ClipSprite16((-(x&15))+(loop_w<<4),-(y&15)+(loop_v<<4),16,tilesptr[mapptr[loop_v][loop_w]*2],light,SPRT_OR); ClipSprite16((-(x&15))+(loop_w<<4),-(y&15)+(loop_v<<4),16,tilesptr[(mapptr[loop_v][loop_w]*2)+1],dark,SPRT_OR); } } }