Running C:\bin\bb.pl Thu Aug 13 11:06:26 2015
Found 27645898 colors in 36152320 pixels 0.76%
Elapsed time = 36.82 sec
####
@ushort=unpack("S*", $buf); # < Ushort[108456960] == RIGHT Number!
for($ii=0; $ii < scalar @ushort; $ii+=3) {
($rr, $gg, $bb) = @ushort[$ii .. $ii+2]; # Array slice
MORONIC> $bs = $rr | ($gg << 16) | ($bb << 32); # << WORKS ;(
$rgb2c{$bs}++; # Increment count for this color
}
####
WORKS!> @q =unpack("Q*", $buf); $sq = scalar(@q) || -1;
FAIL! @uint48=unpack("S3", $buf); $s48 = scalar(@uint48) || -1;
FAIL! @uint48=unpack("S@3", $buf); $s48 = scalar(@uint48) || -1;
FAIL! @uint48=unpack("S[3]", $buf); $s48 = scalar(@uint48) || -1;
FAIL! @uint48=unpack("(SSS)*", $buf); $s48 = scalar(@uint48) || -1;
####
#$quad=pack('Q', $rr, $gg, $bb, 0x0000);
#$q2=pack('Q1', $rr, $gg, $bb, 0x0000); # Q2=0x0000000000000000
#$q4=pack('S4', $rr, $gg, $bb, 0x0000); #
#$q5=pack("SSSS", $rr, $gg, $bb, 0x0000); #
#$q3=pack('Q*', $rr, $gg, $bb, 0x0000); # Q3=0x0000000000000000
#$q4=pack("Q", $rr, $gg, $bb, 0x0000); # Q4=0x0000000000000000
#$q5=pack("S*", $rr, $gg, $bb, 0x0000); # Q5=0x0000000000000000
#$q5=pack("Q*", @ushort[$ii .. $ii+2]);
####
@UINT48=unpack("G*", $buf); # NATIVE, 48BIT UNSIGNED GRAPHIC INTS!