12c593315Sopenharmony_ci#!/usr/bin/env python3
22c593315Sopenharmony_ciimport sys
32c593315Sopenharmony_ci
42c593315Sopenharmony_cidef name(i):
52c593315Sopenharmony_ci    if i < 0x20:
62c593315Sopenharmony_ci        return \
72c593315Sopenharmony_ci            ['NUL ', 'SOH ', 'STX ', 'ETX ', 'EOT ', 'ENQ ', 'ACK ', 'BEL ',
82c593315Sopenharmony_ci             'BS  ', 'HT  ', 'LF  ', 'VT  ', 'FF  ', 'CR  ', 'SO  ', 'SI  ',
92c593315Sopenharmony_ci             'DLE ', 'DC1 ', 'DC2 ', 'DC3 ', 'DC4 ', 'NAK ', 'SYN ', 'ETB ',
102c593315Sopenharmony_ci             'CAN ', 'EM  ', 'SUB ', 'ESC ', 'FS  ', 'GS  ', 'RS  ', 'US  '][i]
112c593315Sopenharmony_ci    elif i == 0x7f:
122c593315Sopenharmony_ci        return 'DEL '
132c593315Sopenharmony_ci
142c593315Sopenharmony_cifor i in range(256):
152c593315Sopenharmony_ci    if chr(i) == ' ':
162c593315Sopenharmony_ci        sys.stdout.write('1 /* SPC  */, ')
172c593315Sopenharmony_ci    elif chr(i) == '\t':
182c593315Sopenharmony_ci        sys.stdout.write('1 /* HT   */, ')
192c593315Sopenharmony_ci    elif (0x21 <= i and i < 0x7f):
202c593315Sopenharmony_ci        sys.stdout.write('1 /* {}    */, '.format(chr(i)))
212c593315Sopenharmony_ci    elif 0x80 <= i:
222c593315Sopenharmony_ci        sys.stdout.write('1 /* {} */, '.format(hex(i)))
232c593315Sopenharmony_ci    else:
242c593315Sopenharmony_ci        sys.stdout.write('0 /* {} */, '.format(name(i)))
252c593315Sopenharmony_ci    if (i + 1)%4 == 0:
262c593315Sopenharmony_ci        sys.stdout.write('\n')
27