#!/usr/bin/perl -s our $w ||= 0; my @cc = ( [ 198,199,200,201,202,203,204,205 ], # 0: 775 [ 96, 97, 98, 99,100,101,102,103 ], # 1: 776 [ 42, 43, 44, 45, 46, 47, 48, 49 ], # 2: 777 [ 62, 63, 64, 65, 66, 67, 68, 69 ], # 3: 778 [ 179,180,181,182,183,164,165,166 ], # 4: 779 [ 154,155,156,157,158,159,160,161 ], # 5: 780 [ 82, 83, 84, 85,206,207,208,209 ], # 6: 781 [ 88, 89, 90, 91, 92, 93, 94, 95 ], # 7: 782 [ 146,147,148,149,150,151,152,153 ], # 8: 783 [ 114,115,116,117,118,119,120,121 ], # 9: 784 [ 128,129,130,131,132,133,134,135 ], # 10: 785 [ 136,137,138,139,140,141,142,143 ], # 11: 786 [ 64,192,193,194,195,196,197, 39 ], # 12: 787 [ 32, 33, 34, 35, 36, 37, 38, 39 ], # 13: 788 [ 4, 5, 6, 7, 8, 9, 10, 11 ], # 14: 789 [ 8, 9, 10, 11, 12, 13, 14, 15 ], # 15: 790 ); my @col = ( "dark blue", "pale green", "pink", "yellow", "red", "light blue", "green", "dark green", "blue", "cream", "mauve", "purple", "orange", "brown", "grey", "white", ); if ($w) { # Windows palette $cc[7][0] = 96; $cc[11][0] = 136; $cc[13] = [ 53, 54, 34, 35, 36, 37, 38, 39 ]; $cc[14] = [ 88,106, 32, 33, 40,245, 10, 11 ]; $cc[15] = [ 40,245, 10, 11, 12, 13, 14, 15 ]; }; for (0..255) { my $cc1 = $_ & 15; my $cc2 = $_ >> 4; my @map = 0..255; @map[198..205] = @{$cc[$cc1]}; @map[ 80.. 87] = @{$cc[$cc2]}; print " -1 * 257\t 00\t# CC1=$col[$cc1] CC2=$col[$cc2]\n"; printf "\t" . ("%02x " x 16) . "\n", @map[$_*16..$_*16+15] for 0..15; }