diff options
Diffstat (limited to 'jpg/conv3')
-rwxr-xr-x | jpg/conv3 | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/jpg/conv3 b/jpg/conv3 new file mode 100755 index 0000000..43e4422 --- /dev/null +++ b/jpg/conv3 @@ -0,0 +1,41 @@ +#! /usr/bin/perl + +@f = (<>); + +$ofs = 0; + +for (@f) { + if(/^(\S*):/) { + $symbol = $1; + next; + } + + if(/^\s*\.space\s+(\d+),\s*(\d+)/) { + $symbol{$symbol} = $ofs; + $ofs += $1; + undef $_; + } +} + + +for (@f) { + if(/^(\S*):/) { + $symbol = $1; + + if(defined $symbol{$symbol}) { + undef $_; + + if(!$datasize) { + $datasize = 1; + $size = "\t\tjpg_data_size\tequ $ofs\n"; + } + + $_ = "\t.equ\t$symbol, $symbol{$symbol}\n" + } + next; + } +} + +print @f; + +print STDERR $size; |