4 use Shiar_Sheet::KeyboardChars 'kbchars';
7 # control keys not on pet2001
12 '5' => "๐\nPURple",
15 '8' => "๐\nYELlow",
16 '9' => "๐\nREverSe video ON",
17 '0' => "๐\nREverSe video OFF",
21 # literal petscii control characters, unaltered from pet2001
50 # literal pet2001 keys reassigned on c64
51 ',' => 'โผ', # [ c64 +
52 '.' => 'โ', # ] c64 -
53 '\\'=> 'ฯ', # โ c64 \
54 '}' => 'โฅ', # โ c64 *
55 '>' => '๐ฎ', # \ c64 ^-
58 # ! " # $ % ' & \ ( ) โ ยป 1 2 3 4 5 6 7 8 9 0 + - ยฃ
59 # Q W E R T Y U I O P โ 7 8 9 / ยป Q W E R T Y U I O P @ * โ
60 # A S D F G H J K L : 4 5 6 * ยป A S D F G H J K L : ; =
61 # Z X C V B N M , ; ? 1 2 3 + ยป Z X C V B N M , . /
65 'K' => 'โ', # A pet !
66 'I' => 'โ', # B pet "
67 'T' => 'โ', # C pet #
68 '{' => 'โ', # D pet $
69 'G' => 'โ', # E pet %
70 'M' => 'โ', # G pet '
71 '<' => 'โ', # F pet & c64 ^+
72 '/' => '๐ฎ', # H pet ( c64 ^ยฃ
73 '?' => 'โค', # I pet ) c64 ยฃ
76 '[' => '๐ญฟ', # Z pet :
77 'D' => 'โ', # L pet ,
78 'F' => 'โ', # { pet ;
79 'C' => 'โ', # | pet <
80 'V' => 'โ', # ~ pet >
83 'Y' => '๐ฎ', # W pet 7
84 'U' => '๐ฎ', # X pet 8
85 'O' => 'โ', # Y pet 9
86 'P' => 'โ', # O pet /
87 'H' => 'โ', # T pet 4
88 'J' => 'โ', # U pet 5
89 'L' => '๐ฎ', # V pet 6
90 'N' => '๐ฎ', # J pet *
91 'E' => 'โด', # Q pet 1
92 'R' => 'โฌ', # R pet 2
93 'W' => 'โค', # S pet 3
94 'Q' => 'โ', # K pet +
95 'A' => 'โ', # P pet 0
96 'S' => 'โ', # N pet .
97 'Z' => 'โ', # M pet -
98 'X' => 'โ', # } pet =
101 my $groups = kbchars(\%rows);
103 while (my ($k, $c) = each %rows) {
104 $groups->{def}{''}{$k}[0] = (
106 $c =~ /\p{In=1.1}/ ? 'g2' :
107 $c =~ /\p{In=4.0}/ ? 'g3' :
108 $c =~ /[\x{1FB00}-\x{1FBFF}]/ ? 'g5' : # Age=V13.0
116 title => 'Commodore graphics',
117 category => 'legacy/graph',
120 '<abbr title="PET Standard Code of Information Interchange">PETSCII</abbr>',
121 'characters designed for the 1977 PET 2001 machine',
122 'as found on the VIC-20 and C-64.',
123 'See also <a href="/keyboard/altgr/msx-graph">MSX graph</a>,',
124 '<a href="/keyboard/altgr/atari">ATASCII</a>, and',
125 '<a href="/keyboard/altgr/unigraph">modern Unicode</a>.',
127 image => 'data/keyboard/thumb/c64.jpg',
129 g2 => ['standard' => 'original Unicode 1993'],
130 g3 => ['extended' => 'Unicode 4.0'],
131 g5 => ['legacy' => 'exceptional <em>symbols for legacy computing</em> in Unicode since <abbr title="Unicode 13.0">2020</abbr>'],
132 g9 => ['color' => 'presentational controls represented by anachronistic hearts'],