Corion has most probably given you the solution, but there are various ways your code could be shorter and possibly faster (if that matters). At the very least you could have:
if ($data eq "8000" or $data eq 0080){ $tid = "TEST"; $buf = $test; } elsif ($data eq "8100" or $data eq "0081"){ $tid = "TOOL"; $buf = $tool; } elsif ...
This would make your code twice shorter and probably a bit faster. You could also notice that $tid is "CEX" in most of the cases, so you could reorganize part of your tests:
$tid = "CEX" if grep {$_ eq $data} qw /8300 0083 ... 8F00 008F/;
There are other possible shortcuts, but using too many of them might lead to less clear code. But I think you should think of some basic ones at least. You could also "normalize" $data before testing, i.e. if $data is "00xx", change it to "xx00" and do your tests afterwards, that would also reduce your code by about half.

In reply to Re: perl unpack and matching the unpacked data by Laurent_R
in thread perl unpack and matching the unpacked data by james28909

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.