#!/usr/bin/perl
# Author: Alex Efros <powerman-asdf@yandex.ru>, 2008
# License: Public Domain
#
# ascii: Output ASCII table (except unprintable characters).
#
# XTerm version: all unsafe chars shown as '??'.

our $VERSION = 2.00;

my %map = map { $_ => '??' } 0 .. 0x1F, 0x80 .. 0x9F;
printf '        '.('%2d ' x 16)."\n", 0 .. 15;
printf '        '.('%2x ' x 16)."\n", 0 .. 15;
printf '      /'.('-' x 48)."\n";
printf '%3d %x |'.(' %2s' x 16)."\n",
    $_*16, $_, map { $map{$_} || chr } $_*16 .. $_*16+15
    for 0 .. 15;

