Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
62 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
import sys | ||
|
||
__all__=['TC_WHITE', 'TC_BLACK', 'set_palette', 'fg', 'bg', 'vga_palette'] | ||
|
||
TC_WHITE=15 | ||
TC_BLACK=0 | ||
|
||
|
||
vga_palette = [ | ||
[ 0x00, 0x00, 0x00 ], [ 0x00, 0x00, 0xAA ], [ 0x00, 0xAA, 0x00 ], [ 0x00, 0xAA, 0xAA ], [ 0xAA, 0x00, 0x00 ], [ 0xAA, 0x00, 0xAA ], [ 0xAA, 0x55, 0x00 ], [ 0xAA, 0xAA, 0xAA ], [ 0x55, 0x55, 0x55 ], [ 0x55, 0x55, 0xFF ], | ||
[ 0x55, 0xFF, 0x55 ], [ 0x55, 0xFF, 0xFF ], [ 0xFF, 0x55, 0x55 ], [ 0xFF, 0x55, 0xFF ], [ 0xFF, 0xFF, 0x55 ], [ 0xFF, 0xFF, 0xFF ], [ 0x00, 0x00, 0x00 ], [ 0x10, 0x10, 0x10 ], [ 0x20, 0x20, 0x20 ], [ 0x35, 0x35, 0x35 ], | ||
[ 0x45, 0x45, 0x45 ], [ 0x55, 0x55, 0x55 ], [ 0x65, 0x65, 0x65 ], [ 0x75, 0x75, 0x75 ], [ 0x8A, 0x8A, 0x8A ], [ 0x9A, 0x9A, 0x9A ], [ 0xAA, 0xAA, 0xAA ], [ 0xBA, 0xBA, 0xBA ], [ 0xCA, 0xCA, 0xCA ], [ 0xDF, 0xDF, 0xDF ], | ||
[ 0xEF, 0xEF, 0xEF ], [ 0xFF, 0xFF, 0xFF ], [ 0x00, 0x00, 0xFF ], [ 0x41, 0x00, 0xFF ], [ 0x82, 0x00, 0xFF ], [ 0xBE, 0x00, 0xFF ], [ 0xFF, 0x00, 0xFF ], [ 0xFF, 0x00, 0xBE ], [ 0xFF, 0x00, 0x82 ], [ 0xFF, 0x00, 0x41 ], | ||
[ 0xFF, 0x00, 0x00 ], [ 0xFF, 0x41, 0x00 ], [ 0xFF, 0x82, 0x00 ], [ 0xFF, 0xBE, 0x00 ], [ 0xFF, 0xFF, 0x00 ], [ 0xBE, 0xFF, 0x00 ], [ 0x82, 0xFF, 0x00 ], [ 0x41, 0xFF, 0x00 ], [ 0x00, 0xFF, 0x00 ], [ 0x00, 0xFF, 0x41 ], | ||
[ 0x00, 0xFF, 0x82 ], [ 0x00, 0xFF, 0xBE ], [ 0x00, 0xFF, 0xFF ], [ 0x00, 0xBE, 0xFF ], [ 0x00, 0x82, 0xFF ], [ 0x00, 0x41, 0xFF ], [ 0x82, 0x82, 0xFF ], [ 0x9E, 0x82, 0xFF ], [ 0xBE, 0x82, 0xFF ], [ 0xDF, 0x82, 0xFF ], | ||
[ 0xFF, 0x82, 0xFF ], [ 0xFF, 0x82, 0xDF ], [ 0xFF, 0x82, 0xBE ], [ 0xFF, 0x82, 0x9E ], [ 0xFF, 0x82, 0x82 ], [ 0xFF, 0x9E, 0x82 ], [ 0xFF, 0xBE, 0x82 ], [ 0xFF, 0xDF, 0x82 ], [ 0xFF, 0xFF, 0x82 ], [ 0xDF, 0xFF, 0x82 ], | ||
[ 0xBE, 0xFF, 0x82 ], [ 0x9E, 0xFF, 0x82 ], [ 0x82, 0xFF, 0x82 ], [ 0x82, 0xFF, 0x9E ], [ 0x82, 0xFF, 0xBE ], [ 0x82, 0xFF, 0xDF ], [ 0x82, 0xFF, 0xFF ], [ 0x82, 0xDF, 0xFF ], [ 0x82, 0xBE, 0xFF ], [ 0x82, 0x9E, 0xFF ], | ||
[ 0xBA, 0xBA, 0xFF ], [ 0xCA, 0xBA, 0xFF ], [ 0xDF, 0xBA, 0xFF ], [ 0xEF, 0xBA, 0xFF ], [ 0xFF, 0xBA, 0xFF ], [ 0xFF, 0xBA, 0xEF ], [ 0xFF, 0xBA, 0xDF ], [ 0xFF, 0xBA, 0xCA ], [ 0xFF, 0xBA, 0xBA ], [ 0xFF, 0xCA, 0xBA ], | ||
[ 0xFF, 0xDF, 0xBA ], [ 0xFF, 0xEF, 0xBA ], [ 0xFF, 0xFF, 0xBA ], [ 0xEF, 0xFF, 0xBA ], [ 0xDF, 0xFF, 0xBA ], [ 0xCA, 0xFF, 0xBA ], [ 0xBA, 0xFF, 0xBA ], [ 0xBA, 0xFF, 0xCA ], [ 0xBA, 0xFF, 0xDF ], [ 0xBA, 0xFF, 0xEF ], | ||
[ 0xBA, 0xFF, 0xFF ], [ 0xBA, 0xEF, 0xFF ], [ 0xBA, 0xDF, 0xFF ], [ 0xBA, 0xCA, 0xFF ], [ 0x00, 0x00, 0x71 ], [ 0x1C, 0x00, 0x71 ], [ 0x39, 0x00, 0x71 ], [ 0x55, 0x00, 0x71 ], [ 0x71, 0x00, 0x71 ], [ 0x71, 0x00, 0x55 ], | ||
[ 0x71, 0x00, 0x39 ], [ 0x71, 0x00, 0x1C ], [ 0x71, 0x00, 0x00 ], [ 0x71, 0x1C, 0x00 ], [ 0x71, 0x39, 0x00 ], [ 0x71, 0x55, 0x00 ], [ 0x71, 0x71, 0x00 ], [ 0x55, 0x71, 0x00 ], [ 0x39, 0x71, 0x00 ], [ 0x1C, 0x71, 0x00 ], | ||
[ 0x00, 0x71, 0x00 ], [ 0x00, 0x71, 0x1C ], [ 0x00, 0x71, 0x39 ], [ 0x00, 0x71, 0x55 ], [ 0x00, 0x71, 0x71 ], [ 0x00, 0x55, 0x71 ], [ 0x00, 0x39, 0x71 ], [ 0x00, 0x1C, 0x71 ], [ 0x39, 0x39, 0x71 ], [ 0x45, 0x39, 0x71 ], | ||
[ 0x55, 0x39, 0x71 ], [ 0x61, 0x39, 0x71 ], [ 0x71, 0x39, 0x71 ], [ 0x71, 0x39, 0x61 ], [ 0x71, 0x39, 0x55 ], [ 0x71, 0x39, 0x45 ], [ 0x71, 0x39, 0x39 ], [ 0x71, 0x45, 0x39 ], [ 0x71, 0x55, 0x39 ], [ 0x71, 0x61, 0x39 ], | ||
[ 0x71, 0x71, 0x39 ], [ 0x61, 0x71, 0x39 ], [ 0x55, 0x71, 0x39 ], [ 0x45, 0x71, 0x39 ], [ 0x39, 0x71, 0x39 ], [ 0x39, 0x71, 0x45 ], [ 0x39, 0x71, 0x55 ], [ 0x39, 0x71, 0x61 ], [ 0x39, 0x71, 0x71 ], [ 0x39, 0x61, 0x71 ], | ||
[ 0x39, 0x55, 0x71 ], [ 0x39, 0x45, 0x71 ], [ 0x51, 0x51, 0x71 ], [ 0x59, 0x51, 0x71 ], [ 0x61, 0x51, 0x71 ], [ 0x69, 0x51, 0x71 ], [ 0x71, 0x51, 0x71 ], [ 0x71, 0x51, 0x69 ], [ 0x71, 0x51, 0x61 ], [ 0x71, 0x51, 0x59 ], | ||
[ 0x71, 0x51, 0x51 ], [ 0x71, 0x59, 0x51 ], [ 0x71, 0x61, 0x51 ], [ 0x71, 0x69, 0x51 ], [ 0x71, 0x71, 0x51 ], [ 0x69, 0x71, 0x51 ], [ 0x61, 0x71, 0x51 ], [ 0x59, 0x71, 0x51 ], [ 0x51, 0x71, 0x51 ], [ 0x51, 0x71, 0x59 ], | ||
[ 0x51, 0x71, 0x61 ], [ 0x51, 0x71, 0x69 ], [ 0x51, 0x71, 0x71 ], [ 0x51, 0x69, 0x71 ], [ 0x51, 0x61, 0x71 ], [ 0x51, 0x59, 0x71 ], [ 0x00, 0x00, 0x41 ], [ 0x10, 0x00, 0x41 ], [ 0x20, 0x00, 0x41 ], [ 0x31, 0x00, 0x41 ], | ||
[ 0x41, 0x00, 0x41 ], [ 0x41, 0x00, 0x31 ], [ 0x41, 0x00, 0x20 ], [ 0x41, 0x00, 0x10 ], [ 0x41, 0x00, 0x00 ], [ 0x41, 0x10, 0x00 ], [ 0x41, 0x20, 0x00 ], [ 0x41, 0x31, 0x00 ], [ 0x41, 0x41, 0x00 ], [ 0x31, 0x41, 0x00 ], | ||
[ 0x20, 0x41, 0x00 ], [ 0x10, 0x41, 0x00 ], [ 0x00, 0x41, 0x00 ], [ 0x00, 0x41, 0x10 ], [ 0x00, 0x41, 0x20 ], [ 0x00, 0x41, 0x31 ], [ 0x00, 0x41, 0x41 ], [ 0x00, 0x31, 0x41 ], [ 0x00, 0x20, 0x41 ], [ 0x00, 0x10, 0x41 ], | ||
[ 0x20, 0x20, 0x41 ], [ 0x28, 0x20, 0x41 ], [ 0x31, 0x20, 0x41 ], [ 0x39, 0x20, 0x41 ], [ 0x41, 0x20, 0x41 ], [ 0x41, 0x20, 0x39 ], [ 0x41, 0x20, 0x31 ], [ 0x41, 0x20, 0x28 ], [ 0x41, 0x20, 0x20 ], [ 0x41, 0x28, 0x20 ], | ||
[ 0x41, 0x31, 0x20 ], [ 0x41, 0x39, 0x20 ], [ 0x41, 0x41, 0x20 ], [ 0x39, 0x41, 0x20 ], [ 0x31, 0x41, 0x20 ], [ 0x28, 0x41, 0x20 ], [ 0x20, 0x41, 0x20 ], [ 0x20, 0x41, 0x28 ], [ 0x20, 0x41, 0x31 ], [ 0x20, 0x41, 0x39 ], | ||
[ 0x20, 0x41, 0x41 ], [ 0x20, 0x39, 0x41 ], [ 0x20, 0x31, 0x41 ], [ 0x20, 0x28, 0x41 ], [ 0x2D, 0x2D, 0x41 ], [ 0x31, 0x2D, 0x41 ], [ 0x35, 0x2D, 0x41 ], [ 0x3D, 0x2D, 0x41 ], [ 0x41, 0x2D, 0x41 ], [ 0x41, 0x2D, 0x3D ], | ||
[ 0x41, 0x2D, 0x35 ], [ 0x41, 0x2D, 0x31 ], [ 0x41, 0x2D, 0x2D ], [ 0x41, 0x31, 0x2D ], [ 0x41, 0x35, 0x2D ], [ 0x41, 0x3D, 0x2D ], [ 0x41, 0x41, 0x2D ], [ 0x3D, 0x41, 0x2D ], [ 0x35, 0x41, 0x2D ], [ 0x31, 0x41, 0x2D ], | ||
[ 0x2D, 0x41, 0x2D ], [ 0x2D, 0x41, 0x31 ], [ 0x2D, 0x41, 0x35 ], [ 0x2D, 0x41, 0x3D ], [ 0x2D, 0x41, 0x41 ], [ 0x2D, 0x3D, 0x41 ], [ 0x2D, 0x35, 0x41 ], [ 0x2D, 0x31, 0x41 ], [ 0x00, 0x00, 0x00 ], [ 0x00, 0x00, 0x00 ], | ||
[ 0x00, 0x00, 0x00 ], [ 0x00, 0x00, 0x00 ], [ 0x00, 0x00, 0x00 ], [ 0x00, 0x00, 0x00 ], [ 0x00, 0x00, 0x00 ], [ 0x00, 0x00, 0x00 ], | ||
] | ||
|
||
|
||
def set_palette(colors, start=0) : | ||
for co in colors : | ||
r, g, b = co | ||
sys.stdout.write("\x1b]4;%i;rgb:%2.2x/%2.2x/%2.2x\x1b\\"%(start, r, g, b)) | ||
start=start+1 | ||
|
||
def fg(ci) : | ||
return '\x1B[38;5;%im'%int(ci) | ||
|
||
def bg(ci) : | ||
return '\x1B[48;5;%im'%int(ci) | ||
|
||
if __name__=='__main__' : | ||
set_palette(vga_palette) | ||
print fg(44)+bg(246)+'Hello, color world.'+fg(TC_WHITE)+bg(TC_BLACK) | ||
for i in xrange(16) : | ||
for j in xrange(16) : | ||
print fg(0)+bg(i*16+j)+' %3i '%(i*16+j), | ||
print fg(TC_WHITE)+bg(TC_BLACK) | ||
# set_palette(vga_palette) | ||
# for i in xrange(16) : | ||
# for j in xrange(16) : | ||
# print fg(0)+bg(i*16+j)+' %3i '%(i*16+j), | ||
# print fg(TC_WHITE)+bg(TC_BLACK) |