I can't really detect any "sorting" going on, except that C5 comes first and P5 comes later. I can't really determine if the C5 records have any particular order, though.
You could just do my @ordered_keys = sort { substr($tapes{$a},-2) cmp $substr($tapes{$b},-2) } keys %tapes;
Jeff japhy Pinyan,
P.L., P.M., P.O.D, X.S.:
Perl,
regex,
and perlhacker How can we ever be the sold short or the cheated, we who for every service have long ago been overpaid? ~~ Meister Eckhart