/*************************** Module Header ********************************** * dither * Program to create actual dither tables from ALPS's original base * dither tables. * * * Copyright (C) 1996-1999, Microsoft Corporation * 1996/6/21 Created - Sueya Sugihara [sueyas] - * ****************************************************************************/ #include #include #include #include #define Yellow 0 #define Cyan 1 #define Magenta 2 #define Kuro 3 #define Mono 4 static unsigned char H_OrgTable[4][68][68] = { { // Yellow {100,84,70,85,100,100,93,80,94,100,100,89,76,90,100}, {99,46,31,40,97,97,48,38,44,100,100,48,34,42,99}, {67,22,1,10,63,69,24,8,14,65,68,23,5,12,64}, {67,26,20,15,63,69,29,21,19,65,68,28,21,17,64}, {100,60,48,57,100,100,62,54,59,100,100,61,50,58,100}, {100,91,78,92,100,100,86,73,87,100,100,95,82,96,100}, {100,48,36,43,100,100,47,32,41,98,98,48,39,45,100}, {68,24,6,13,64,68,23,3,11,63,69,25,9,14,66}, {68,29,21,18,64,68,27,21,16,63,69,30,22,20,66}, {100,62,52,58,100,100,61,49,57,100,100,63,56,59,100} }, { // Cyan {46,65,89,90,80,18,45,64,87,87,79,16,44,63,91,91,81,20}, {59,100,100,90,7,38,58,94,94,87,5,37,57,98,98,91,9,38}, {75,100,100,30,41,52,73,94,94,28,40,50,71,98,98,33,42,53}, {83,77,13,43,61,82,82,76,11,42,60,85,85,78,15,44,62,83}, {83,2,35,55,97,97,82,1,34,54,100,100,85,3,36,56,93,93}, {23,39,48,68,97,97,21,39,47,66,100,100,25,40,49,70,93,93}, {45,64,86,86,79,15,44,63,91,91,81,19,46,65,89,88,80,17}, {58,95,95,86,4,37,57,99,99,91,8,38,59,100,100,88,6,38}, {72,95,95,26,40,50,71,99,99,32,42,53,74,100,100,29,41,51}, {82,76,10,42,60,85,85,78,14,44,62,84,84,77,12,43,61,82}, {82,1,34,54,92,92,85,3,36,56,100,100,84,2,35,55,96,96}, {20,39,47,66,92,92,24,40,49,69,100,100,22,39,48,67,96,96} }, { // Magenta {93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93}, {1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82}, {29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26}, {49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62}, {100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73}, {80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88}, {24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19}, {46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40}, {70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62}, {89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97}, {20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14}, {41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36}, {63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57}, {95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95}, {13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4}, {35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30}, {56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51}, {98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98}, {9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78}, {31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23}, {52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45}, {96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68}, {84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92}, {28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22}, {48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44}, {76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66}, {85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93}, {16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12}, {38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33}, {60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55}, {100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100}, {15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10}, {37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32}, {59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53}, {94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94}, {3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81}, {29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25}, {50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47}, {99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72}, {79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87}, {23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18}, {46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39}, {69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61}, {90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98}, {20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14}, {47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36}, {64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58}, {96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96}, {13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5}, {35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30}, {56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51}, {97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97}, {7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77}, {31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22}, {52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45}, {95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67}, {83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91}, {27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21}, {48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43}, {75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65}, {86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94}, {17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12}, {39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34}, {60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55}, {99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32,37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99}, {16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54,59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11}, {37,44,48,51,56,62,70,94,94,94,86,78,9,14,20,26,29,33,38,45,52,57,63,72,99,99,99,92,84,5,13,19,24,32,37,43,48,51,56,61,69,93,93,93,85,77,7,14,20,25,29,34,39,45,52,58,64,73,100,100,100,91,83,4,13,18,23,32}, {59,66,76,97,97,97,89,81,3,12,17,23,31,36,47,62,49,55,60,67,95,95,95,87,79,11,16,22,28,30,35,40,46,53,59,65,75,98,98,98,90,82,1,12,16,22,31,36,41,47,50,55,60,68,96,96,96,88,80,10,15,21,27,30,35,39,46,54} }, { // Kuro {93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69}, {28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59}, {54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65}, {99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99}, {99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99}, {7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32}, {27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57}, {47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94}, {88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94}, {9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2}, {16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23}, {50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38}, {86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92}, {70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14}, {60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22}, {67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53}, {97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74}, {97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68}, {30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58}, {56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61}, {95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95}, {95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95}, {3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29}, {24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55}, {40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98}, {91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98}, {12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6}, {20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25}, {52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46}, {82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90}, {68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10}, {59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18}, {64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51}, {94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83}, {94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69}, {28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59}, {54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65}, {100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100}, {100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100}, {8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33}, {27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57}, {48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93}, {87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93}, {9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1}, {15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23}, {49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35}, {85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92}, {70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13}, {60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21}, {66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53}, {98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76}, {98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68}, {31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58}, {56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62}, {96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96}, {96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96}, {4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29}, {24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55}, {42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97}, {91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97}, {11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5}, {19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25}, {52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44}, {80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89}, {68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51,63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10}, {58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84,93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17}, {63,57,27,22,60,29,4,10,68,99,99,92,85,95,95,44,52,65,54,23,16,58,31,6,12,69,93,93,87,74,97,97,42,51,64,57,27,21,60,29,3,10,68,100,100,92,86,96,96,46,52,65,54,23,15,58,30,5,11,69,94,94,88,76,98,98,40,51}, {93,93,48,53,67,55,24,18,59,32,7,13,70,95,95,89,80,100,100,38,50,62,56,25,20,59,28,1,9,68,97,97,91,83,94,94,47,53,66,55,24,17,58,33,8,14,70,96,96,90,82,99,99,35,49,61,56,25,19,59,28,2,9,68,98,98,91,84} } }; static unsigned char R_OrgTable[4][20][20] = { { // Yellow { 1, 1, 5,20,33,33, 4, 4, 8,23,36,36}, { 5, 5, 9,20,37,37, 8, 8,12,23,40,40}, { 9, 9,13,24,37,37,12,12,14,28,40,40}, {15,15,19,24,41,41,18,18,19,28,44,44}, {29,29,53,57,61,61,32,32,56,60,66,66}, {45,46,53,57,62,62,51,52,56,60,67,67}, { 3, 3, 7,22,35,35, 2, 2, 6,21,34,34}, { 7, 7,11,22,39,39, 6, 6,10,21,38,38}, {11,11,14,27,39,39,10,10,13,25,38,38}, {17,17,19,27,43,43,16,16,19,26,42,42}, {31,31,55,59,65,65,30,30,54,58,63,63}, {49,50,55,59,68,68,47,48,54,58,64,64} }, { // Cyan {61,63,64,16, 3, 3,11,45,49}, {67,68,68,17, 6, 6,11,37,51}, {67,70,70,34,19,21,32,35,53}, {23,25,31,46,55,58,59,39,29}, { 7, 8,12,47,60,62,62,41,13}, { 1, 1,10,50,65,69,69,42,14}, { 5, 5,10,52,66,70,70,43,17}, {18,20,30,30,27,28,31,40,33}, {57,56,54,15, 9, 9,12,44,48} }, { // Magenta {65, 1, 1,10,20,32,32, 9, 9,13,25,37,37,28,30,38,40,54,58,65}, {66, 4, 6,10,22,34,34,15,17,19,27,53,53,50,50,44,47,54,60,66}, {32, 8, 8,12,24,36,36,29,31,39,41,55,62,67,67, 3, 3,11,21,33}, {34,14,16,18,26,52,52,51,51,48,49,56,64,68,68, 5, 7,11,23,35}, {36,28,30,38,40,54,58,65,65, 1, 1,10,20,32,32, 9, 9,13,25,37}, {52,50,50,44,47,54,60,66,66, 4, 6,10,22,34,34,15,17,19,27,53}, {58,67,67, 3, 3,11,21,33,33, 8, 8,12,24,36,36,29,31,39,41,55}, {60,68,68, 5, 7,11,23,35,35,14,16,18,26,52,52,51,51,48,49,56}, {20,32,32, 9, 9,13,25,37,37,28,30,38,40,54,58,65,65, 1, 1,10}, {22,34,34,15,17,19,27,53,53,50,50,44,47,54,60,66,66, 4, 6,10}, {24,36,36,29,31,39,41,55,62,67,67, 3, 3,11,21,33,33, 8, 8,12}, {26,52,52,51,51,48,49,56,64,68,68, 5, 7,11,23,35,35,14,16,18}, {40,54,58,65,65, 1, 1,10,20,32,32, 9, 9,13,25,37,37,28,30,38}, {47,54,60,66,66, 4, 6,10,22,34,34,15,17,19,27,53,53,50,50,44}, { 3,11,21,33,33, 8, 8,12,24,36,36,29,31,39,41,55,62,67,67, 3}, { 7,11,23,35,35,14,16,18,26,52,52,51,51,48,49,56,64,68,68, 5}, { 9,13,25,37,37,28,30,38,40,54,58,67,67, 1, 1,10,20,32,32, 9}, {17,19,27,53,53,50,50,44,47,54,60,68,68, 4, 6,10,22,34,34,15}, {31,39,41,55,62,67,67, 3, 3,11,21,33,33, 8, 8,12,24,36,36,29}, {51,48,49,56,64,68,68, 5, 7,11,23,35,35,14,16,18,26,52,52,51} }, { // Kuro {60,60,58,50,52,54,62,62,35,17, 7, 8,11,30,29,14, 3, 3,10,27}, {31,18,20,23,25,33,64,64,55,43,42,40,39,37,29,16, 6, 6,10,27}, {28,13, 1, 1,10,26,59,59,56,44,45,48,60,61,36,17, 9, 9,12,30}, {28,15, 4, 5,10,26,32,19,21,24,25,34,63,63,57,46,47,41,40,38}, {35,17, 7, 8,11,30,29,14, 3, 3,10,27,60,60,58,50,52,54,62,62}, {55,43,42,40,39,37,29,16, 6, 6,10,27,31,18,20,23,25,33,64,64}, {56,44,45,48,60,61,36,17, 9, 9,12,30,28,13, 1, 1,10,26,59,59}, {21,24,25,34,63,63,57,46,47,41,40,38,28,15, 4, 5,10,26,32,19}, { 3, 3,10,27,60,60,58,50,52,54,62,62,35,17, 7, 8,11,30,29,14}, { 6, 6,10,27,31,18,20,23,25,33,64,64,55,43,42,40,39,37,29,16}, { 9, 9,12,30,28,13, 1, 1,10,26,59,59,56,44,45,48,60,61,36,17}, {47,41,40,38,28,15, 4, 5,10,26,32,19,21,24,25,34,63,63,57,46}, {52,54,62,62,35,17, 7, 8,11,30,29,14, 3, 3,10,27,60,60,58,50}, {25,33,64,64,55,43,42,40,39,37,29,16, 6, 6,10,27,31,18,20,23}, {10,26,59,59,56,44,45,48,60,61,36,17, 9, 9,12,30,28,13, 1, 1}, {10,26,32,19,21,24,25,34,63,63,57,46,47,41,40,38,28,15, 4, 5}, {11,30,29,14, 3, 3,10,27,60,60,58,50,52,54,62,62,35,17, 7, 8}, {39,37,29,16, 6, 6,10,27,31,18,20,23,25,33,64,64,55,43,42,40}, {60,61,36,17, 9, 9,12,30,28,13, 1, 1,10,26,59,59,56,44,45,48}, {63,63,57,46,47,41,40,38,28,15, 4, 5,10,26,32,19,21,24,25,34} } }; static unsigned char M_OrgTable[14][14] = { {91,71,39,41,63,73,95,92,72,40,42,64,74,96}, {69,37,21,23,43,45,75,70,38,22,24,44,46,76}, {35,19,1,3,9,25,47,36,20,2,4,10,26,48}, {33,17,5,7,11,27,49,34,18,6,8,12,28,50}, {61,31,13,15,29,51,65,62,32,14,16,30,52,66}, {85,59,57,55,53,67,87,86,60,58,56,54,68,88}, {93,83,81,79,77,89,97,94,84,82,80,78,90,100}, {92,72,40,42,64,74,96,91,71,39,41,63,73,95}, {70,38,22,24,44,46,76,69,37,21,23,43,45,75}, {36,20,2,4,10,26,48,35,19,1,3,9,25,47}, {34,18,6,8,12,28,50,33,17,5,7,11,27,49}, {62,32,14,16,30,52,66,61,31,13,15,29,51,65}, {86,60,58,56,54,68,88,85,59,57,55,53,67,87}, {94,84,82,80,78,90,99,93,83,81,79,77,89,98} }; static unsigned char OHP_OrgTable[8][8] = { {36, 40, 38, 32, 27, 23, 25, 31}, {54, 56, 58, 44, 9, 7, 5, 19}, {52, 62, 60, 42, 11, 1, 3, 21}, {46, 50, 48, 34, 17, 13, 15, 29}, {26, 22, 24, 30, 37, 41, 39, 33}, {8, 6, 4, 18, 55, 57, 59, 45}, {10, 0, 2, 20, 53, 63, 61, 43}, {16, 12, 14, 28, 47, 51, 49, 35} }; int _CRTAPI1 main( argc, argv ) int argc; char **argv; { int H_MaxX[4], H_MaxY[4]; int R_MaxX[4], R_MaxY[4]; int M_MaxX, M_MaxY; int OHP_MaxX, OHP_MaxY; int x, y; int color; char szColor[10]; FLOAT H_TableMax[4]; FLOAT R_TableMax[4]; FLOAT M_TableMax; FLOAT OHP_TableMax; FLOAT H_TableOffset[4]; FLOAT R_TableOffset[4]; FLOAT M_TableOffset; FLOAT OHP_TableOffset; H_MaxX[Yellow] = 15; H_MaxY[Yellow] = 10; H_MaxX[Cyan] = 18; H_MaxY[Cyan] = 12; H_MaxX[Magenta] = 68; H_MaxY[Magenta] = 68; H_MaxX[Kuro] = 68; H_MaxY[Kuro] = 68; R_MaxX[Yellow] = 12; R_MaxY[Yellow] = 12; R_MaxX[Cyan] = 9; R_MaxY[Cyan] = 9; R_MaxX[Magenta] = 20; R_MaxY[Magenta] = 20; R_MaxX[Kuro] = 20; R_MaxY[Kuro] = 20; M_MaxX = 14; M_MaxY = 14; OHP_MaxX = 8; OHP_MaxY = 8; H_TableMax[Yellow] = 100.0; H_TableMax[Cyan] = 100.0; H_TableMax[Magenta] = 100.0; H_TableMax[Kuro] = 100.0; H_TableOffset[Yellow] = 2.55; H_TableOffset[Cyan] = 2.55; H_TableOffset[Magenta] = 2.55; H_TableOffset[Kuro] = 2.55; R_TableMax[Yellow] = 68.0; R_TableMax[Cyan] = 70.0; R_TableMax[Magenta] = 68.0; R_TableMax[Kuro] = 100.0; R_TableOffset[Yellow] = 3.77; R_TableOffset[Cyan] = 3.66; R_TableOffset[Magenta] = 3.76; R_TableOffset[Kuro] = 4.0; M_TableMax = 100.0; M_TableOffset = 2.55; OHP_TableMax = 63.0; OHP_TableOffset = 4.0; // HEIKATSU for( color=Yellow; color <= Kuro; color++){ switch( color ){ case Yellow: strcpy(szColor, "Yellow"); break; case Cyan: strcpy(szColor, "Cyan"); break; case Magenta: strcpy(szColor, "Magenta"); break; case Kuro: strcpy(szColor, "Kuro"); break; } printf("HEIKATSU NewTable[%s]\n", szColor); for( y=0; y < H_MaxY[color]; y++){ for( x=0; x < H_MaxX[color]; x++){ unsigned char ucOut; if( x != 0 ) printf(","); ucOut = (unsigned char)(( H_TableMax[color] - (H_OrgTable[color][y][x] - (FLOAT)0.5)) * H_TableOffset[color] ); printf("%d", ucOut); } printf("\n"); } printf("\n"); } // ROUGH for( color=Yellow; color <= Kuro; color++){ switch( color ){ case Yellow: strcpy(szColor, "Yellow"); break; case Cyan: strcpy(szColor, "Cyan"); break; case Magenta: strcpy(szColor, "Magenta"); break; case Kuro: strcpy(szColor, "Kuro"); break; } printf("ROUGH NewTable[%s]\n", szColor); for( y=0; y < R_MaxY[color]; y++){ for( x=0; x < R_MaxX[color]; x++){ unsigned char ucOut; if( x != 0 ) printf(","); ucOut = (unsigned char)(( R_TableMax[color] - (R_OrgTable[color][y][x] - (FLOAT)0.5)) * R_TableOffset[color] ); printf("%d", ucOut); } printf("\n"); } printf("\n"); } // MONO printf("MONO NewTable\n"); for( y=0; y < M_MaxY; y++){ for( x=0; x < M_MaxX; x++){ unsigned char ucOut; if( x != 0 ) printf(","); ucOut = (unsigned char)(( M_TableMax - (M_OrgTable[y][x] + (FLOAT)0.5)) * M_TableOffset ); printf("%d", ucOut); } printf("\n"); } printf("\n"); // OHP printf("OHP NewTable\n"); for( y=0; y < OHP_MaxY; y++){ for( x=0; x < OHP_MaxX; x++){ unsigned char ucOut; if( x != 0 ) printf(","); ucOut = (unsigned char)(( OHP_TableMax - (OHP_OrgTable[y][x] - (FLOAT)0.5)) * OHP_TableOffset ); printf("%d", ucOut); } printf("\n"); } return 0; }