1#!/usr/bin/perl -w
2
3if ($#ARGV != 2) {
4	print STDERR "Usage: $0 <charmap in> <charmap out> <offset>\n";
5	print STDERR "offset should be in hex and can be prefixed with a -.\n";
6	exit;
7}
8
9$fin = $ARGV[0];
10$fout = $ARGV[1];
11$offset = hex($ARGV[2]);
12
13open(FIN, "$fin.TXT") or die "Cannot open $fin.TXT for reading";
14open(FOUT, ">$fout.TXT");
15
16foreach my $l (<FIN>) {
17	my @a = split(" ", $l);
18
19	if ($a[0] =~ /^0x[0-9a-fA-F]+$/) {
20		my $c = length($a[0]);
21		my $h = hex($a[0]) + $offset;
22
23		$l = sprintf("0x%*X%s", $c - 2, $h, substr($l, $c));
24	}
25
26	print FOUT $l;
27}
28
29close(FOUT);
30close(FIN);
31