Ho risolto così:

codice:
Date_Init("TZ=CEST");

my ($min,$hr) = ( localtime( UnixDate("5:30pm","%s") ) )[1..2];

my $ampm = "am"; 
if ($hr == 12) { $ampm = "pm" } 
if ($hr == 0) { $hr = 12 }
if ($hr > 12)
{
   $ampm = 'pm';
   $hr = ($hr - 12);
} 

print "$hr:$min$ampm\n";