FreeCalypso > hg > tcs211-pirelli
view chipsetsw/drivers/drv_app/r2d/lcds/D_Sample/Demo/tor2d.pl @ 0:509db1a7b7b8
initial import: leo2moko-r1
author | Space Falcon <falcon@ivan.Harhan.ORG> |
---|---|
date | Mon, 01 Jun 2015 03:24:05 +0000 |
parents | |
children |
line wrap: on
line source
#!perl $in=$ARGV[0]; $out=$ARGV[1]; $nin = $in; $nin =~ s/\..*$/.txt/; #print "->$nin"; print "convert $in TEXT:$nin\n"; system("convert $in TEXT:$nin"); $maxx=0; $maxy=0; open(IN,$nin) or die "Cannot read input file:$! \n"; while($line=<IN>) { if ($line =~ /^([0-9]+),([0-9]+):[\s\t]*([0-9]+),([0-9]+),([0-9]+)[\s\t]*.*$/) { $x=int($1); $y=int($2); $r=int($3); $g=int($4); $b=int($5); if ($x>$maxx) { $maxx=$x; } if ($y>$maxy) { $maxy=$y; } $b=$b & 0xFC; $g=$g & 0xFC; $r=$r & 0xFC; $value = ($r << 16) | ($g << 8) | $b; $data{$x.":".$y}=$value; } } close(IN); $maxx=$maxx+1; $maxy=$maxy+1; open(OUT,">$out.c") or die "Cannot create outputfile: $!\n"; $length=$maxy*$maxx+1; print OUT "const UINT32 $out"."[]={\n"; print OUT "$maxx,$maxy,$length,\n"; for($j=0;$j<$maxy;$j++) { for($i=0;$i<$maxx;$i++) { $ra= (~$data{$i.":".$j}) & 0x0FFFFFF; $value=$ra; $result=sprintf "0x%08X",$value; print OUT "$result,\n"; } } print OUT "0x0\n"; print OUT "};\n"; close(OUT); #rename "$out.c","E:\\BT\\Drivers\\Common\\R2D\\$out.c"