line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
package Data::Petitcom::Resource::CHR; |
2
|
|
|
|
|
|
|
|
3
|
3
|
|
|
3
|
|
1498
|
use strict; |
|
3
|
|
|
|
|
7
|
|
|
3
|
|
|
|
|
131
|
|
4
|
3
|
|
|
3
|
|
18
|
use warnings; |
|
3
|
|
|
|
|
1609
|
|
|
3
|
|
|
|
|
130
|
|
5
|
|
|
|
|
|
|
|
6
|
3
|
|
|
3
|
|
18
|
use parent qw{ Data::Petitcom::Resource::GRP }; |
|
3
|
|
|
|
|
5
|
|
|
3
|
|
|
|
|
24
|
|
7
|
|
|
|
|
|
|
|
8
|
3
|
|
|
3
|
|
167
|
use constant RESOURCE => 'CHR'; |
|
3
|
|
|
|
|
6
|
|
|
3
|
|
|
|
|
144
|
|
9
|
3
|
|
|
3
|
|
15
|
use constant BMP_WIDTH => 256; |
|
3
|
|
|
|
|
6
|
|
|
3
|
|
|
|
|
137
|
|
10
|
3
|
|
|
3
|
|
18
|
use constant BMP_HEIGHT => 64; |
|
3
|
|
|
|
|
7
|
|
|
3
|
|
|
|
|
131
|
|
11
|
3
|
|
|
3
|
|
14
|
use constant PTC_NAME => 'DPTC_CHR'; |
|
3
|
|
|
|
|
6
|
|
|
3
|
|
|
|
|
722
|
|
12
|
|
|
|
|
|
|
|
13
|
|
|
|
|
|
|
sub save { |
14
|
2
|
|
|
2
|
0
|
15
|
my $self = shift; |
15
|
2
|
|
|
|
|
23
|
my $ptc = $self->SUPER::save(@_); |
16
|
2
|
|
|
|
|
11
|
my @pixels = map { sprintf( "%x", $_ % 16 ) } |
|
32768
|
|
|
|
|
64630
|
|
17
|
|
|
|
|
|
|
unpack 'C*', bytes::substr( $ptc->data, 0x0C ); |
18
|
2
|
|
|
|
|
3794
|
my $deflated = pack 'h*', join( '', @pixels ); |
19
|
2
|
|
|
|
|
50
|
$ptc->data($deflated); |
20
|
2
|
|
|
|
|
2161
|
return $ptc; |
21
|
|
|
|
|
|
|
} |
22
|
|
|
|
|
|
|
|
23
|
|
|
|
|
|
|
sub load { |
24
|
1
|
|
|
1
|
0
|
2
|
my $self = shift; |
25
|
1
|
|
|
|
|
3
|
my $ptc = shift; |
26
|
1
|
|
|
|
|
5
|
my @nibbles = split //, unpack( 'h*', bytes::substr( $ptc->data, 0x0C ) ); |
27
|
1
|
|
|
|
|
4337
|
my $inflated = pack 'C*', map { hex($_) } @nibbles; |
|
16384
|
|
|
|
|
29142
|
|
28
|
1
|
|
|
|
|
376
|
$ptc->data($inflated); |
29
|
1
|
|
|
|
|
25
|
$self->SUPER::load( $ptc, @_ ); |
30
|
|
|
|
|
|
|
} |
31
|
|
|
|
|
|
|
|
32
|
|
|
|
|
|
|
1; |