From mboxrd@z Thu Jan 1 00:00:00 1970 From: George Bronnikov To: <9fans@cse.psu.edu> Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="8323328-1242095204-1016884901=:878" Subject: [9fans] kbd.c Date: Sat, 23 Mar 2002 15:01:41 +0300 Topicbox-Message-UUID: 6c6ed608-eaca-11e9-9e20-41e7f4b1d025 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --8323328-1242095204-1016884901=:878 Content-Type: TEXT/PLAIN; charset=US-ASCII Hello, Attached are: 1. A diff to Boyd's/Forsyth's keyboard driver (/sys/src/9/pc/kbd.c) that lets it have separate tables for capslock and shift+capslock (tables 4 and 5). 2. Russian keyboard table using this diff (capslock serves to switch between cyrillic and latin modes). 3. An awk script to feed the table into /dev/kbmap. goga --8323328-1242095204-1016884901=:878 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="kbmap.awk" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="kbmap.awk" IyEvYmluL2F3ayAtZg0KLyMvCXtuZXh0fQ0KL14kLwl7bmV4dH0NCgl7IHBy aW50ICQxLCAkMiwgJDN9DQoNCg== --8323328-1242095204-1016884901=:878 Content-Type: multipart/mixed; boundary="upas-xxhucclgtouezfpzdhrwbbnxey" Content-Disposition: inline This is a multi-part message in MIME format. --upas-xxhucclgtouezfpzdhrwbbnxey Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit The following attachment had content that we can't prove to be harmless. To avoid possible automatic execution, we changed the content headers. The original header was: Content-Type: TEXT/PLAIN; charset=koi8-r; name="kbmap.cyr" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="kbmap.cyr" --upas-xxhucclgtouezfpzdhrwbbnxey Content-Type: application/octet-stream Content-Disposition: attachment; filename="kbmap.cyr.suspect" Content-Transfer-Encoding: base64 IyBTZXR0aW5nIENhcHMgTG9jaw0KMAkweDNhCQkweGY4NjQNCjEJMHgzYQkJ MHhmODY0DQo0CTB4M2EJCTB4Zjg2NA0KNQkweDNhCQkweGY4NjQNCg0KIyBS dXNzaWFuIHVuc2hpZnRlZCBjaGFyYWN0ZXJzDQo0CTB4MTAJMHg0MzkJO9C5 DQo0CTB4MTEJMHg0NDYJO9GGDQo0CTB4MTIJMHg0NDMJO9GDDQo0CTB4MTMJ MHg0M2EJO9C6DQo0CTB4MTQJMHg0MzUJO9C1DQo0CTB4MTUJMHg0M2QJO9C9 DQo0CTB4MTYJMHg0MzMJO9CzDQo0CTB4MTcJMHg0NDgJO9GIDQo0CTB4MTgJ MHg0NDkJO9GJDQo0CTB4MTkJMHg0MzcJO9C3DQo0CTB4MWEJCTB4NDQ1CTvR hQ0KNAkweDFiCTB4NDRhCTvRig0KDQo0CTB4MWUJCTB4NDQ0CTvRhA0KNAkw eDFmCQkweDQ0Ygk70YsNCjQJMHgyMAkweDQzMgk70LINCjQJMHgyMQkweDQz MAk70LANCjQJMHgyMgkweDQzZgk70L8NCjQJMHgyMwkweDQ0MAk70YANCjQJ MHgyNAkweDQzZQk70L4NCjQJMHgyNQkweDQzYgk70LsNCjQJMHgyNgkweDQz NAk70LQNCjQJMHgyNwkweDQzNgk70LYNCjQJMHgyOAkweDQ0ZAk70Y0NCg0K NAkweDJjCQkweDQ0Zgk70Y8NCjQJMHgyZAkweDQ0Nwk70YcNCjQJMHgyZQkJ MHg0NDEJO9GBDQo0CTB4MmYJCTB4NDNjCTvQvA0KNAkweDMwCTB4NDM4CTvQ uA0KNAkweDMxCTB4NDQyCTvRgg0KNAkweDMyCTB4NDRjCTvRjA0KNAkweDMz CTB4NDMxCTvQsQ0KNAkweDM0CTB4NDRlCTvRjg0KDQo0CTB4MjkJMHg0NTEJ O9GRDQoNCiMgUnVzc2lhbiBzaGlmdGVkIGNoYXJhY3RlcnMNCjUJMHgxMAkw eDQxOQk70JkNCjUJMHgxMQkweDQyNgk70KYNCjUJMHgxMgkweDQyMwk70KMN CjUJMHgxMwkweDQxYQk70JoNCjUJMHgxNAkweDQxNQk70JUNCjUJMHgxNQkw eDQxZAk70J0NCjUJMHgxNgkweDQxMwk70JMNCjUJMHgxNwkweDQyOAk70KgN CjUJMHgxOAkweDQyOQk70KkNCjUJMHgxOQkweDQxNwk70JcNCjUJMHgxYQkJ MHg0MjUJO9ClDQo1CTB4MWIJMHg0MmEJO9CqDQoNCjUJMHgxZQkJMHg0MjQJ O9CkDQo1CTB4MWYJCTB4NDJiCTvQqw0KNQkweDIwCTB4NDEyCTvQkg0KNQkw eDIxCTB4NDEwCTvQkA0KNQkweDIyCTB4NDFmCTvQnw0KNQkweDIzCTB4NDIw CTvQoA0KNQkweDI0CTB4NDFlCTvQng0KNQkweDI1CTB4NDFiCTvQmw0KNQkw eDI2CTB4NDE0CTvQlA0KNQkweDI3CTB4NDE2CTvQlg0KNQkweDI4CTB4NDJk CTvQrQ0KDQo1CTB4MmMJCTB4NDJmCTvQrw0KNQkweDJkCTB4NDI3CTvQpw0K NQkweDJlCQkweDQyMQk70KENCjUJMHgyZgkJMHg0MWMJO9CcDQo1CTB4MzAJ MHg0MTgJO9CYDQo1CTB4MzEJMHg0MjIJO9CiDQo1CTB4MzIJMHg0MmMJO9Cs DQo1CTB4MzMJMHg0MTEJO9CRDQo1CTB4MzQJMHg0MmUJO9CuDQoNCjUJMHgy OQkweDQwMQk70IENCg0KNQkweDA0CSciJw0KNQkweDA2CSc6Jw0KNQkweDA3 CScsJw0KNQkweDA4CScuJw0KDQo= --upas-xxhucclgtouezfpzdhrwbbnxey-- --8323328-1242095204-1016884901=:878 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="kbd.c.diff" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="kbd.c.diff" MTM4YTEzOSwxNzgNCj4gUnVuZSBrYnRhYmNhcHNbTnNjYW5dID0gDQo+IHsN Cj4gWzB4MDBdCU5vLAkweDFiLAknMScsCScyJywJJzMnLAknNCcsCSc1JywJ JzYnLA0KPiBbMHgwOF0JJzcnLAknOCcsCSc5JywJJzAnLAknLScsCSc9JywJ J1xiJywJJ1x0JywNCj4gWzB4MTBdCSdRJywJJ1cnLAknRScsCSdSJywJJ1Qn LAknWScsCSdVJywJJ0knLA0KPiBbMHgxOF0JJ08nLAknUCcsCSdbJywJJ10n LAknXG4nLAlDdHJsLAknQScsCSdTJywNCj4gWzB4MjBdCSdEJywJJ0YnLAkn RycsCSdIJywJJ0onLAknSycsCSdMJywJJzsnLA0KPiBbMHgyOF0JJ1wnJywJ J2AnLAlTaGlmdCwJJ1xcJywJJ1onLAknWCcsCSdDJywJJ1YnLA0KPiBbMHgz MF0JJ0InLAknTicsCSdNJywJJywnLAknLicsCScvJywJU2hpZnQsCScqJywN Cj4gWzB4MzhdCUxhdGluLAknICcsCUN0cmwsCUtGfDEsCUtGfDIsCUtGfDMs CUtGfDQsCUtGfDUsDQo+IFsweDQwXQlLRnw2LAlLRnw3LAlLRnw4LAlLRnw5 LAlLRnwxMCwJTnVtLAlTY3JvbGwsCSc3JywNCj4gWzB4NDhdCSc4JywJJzkn LAknLScsCSc0JywJJzUnLAknNicsCScrJywJJzEnLA0KPiBbMHg1MF0JJzIn LAknMycsCScwJywJJy4nLAlObywJTm8sCU5vLAlLRnwxMSwNCj4gWzB4NThd CUtGfDEyLAlObywJTm8sCU5vLAlObywJTm8sCU5vLAlObywNCj4gWzB4NjBd CU5vLAlObywJTm8sCU5vLAlObywJTm8sCU5vLAlObywNCj4gWzB4NjhdCU5v LAlObywJTm8sCU5vLAlObywJTm8sCU5vLAlObywNCj4gWzB4NzBdCU5vLAlO bywJTm8sCU5vLAlObywJTm8sCU5vLAlObywNCj4gWzB4NzhdCU5vLAlVcCwJ Tm8sCVVwLAlObywJTm8sCU5vLAlObywNCj4gfTsNCj4gDQo+IFJ1bmUga2J0 YWJzaGlmdGNhcHNbTnNjYW5dID0NCj4gew0KPiBbMHgwMF0JTm8sCTB4MWIs CSchJywJJ0AnLAknIycsCSckJywJJyUnLAknXicsDQo+IFsweDA4XQknJics CScqJywJJygnLAknKScsCSdfJywJJysnLAknXGInLAknXHQnLA0KPiBbMHgx MF0JJ3EnLAkndycsCSdlJywJJ3InLAkndCcsCSd5JywJJ3UnLAknaScsDQo+ IFsweDE4XQknbycsCSdwJywJJ3snLAknfScsCSdcbicsCUN0cmwsCSdhJywJ J3MnLA0KPiBbMHgyMF0JJ2QnLAknZicsCSdnJywJJ2gnLAknaicsCSdrJywJ J2wnLAknOicsDQo+IFsweDI4XQknIicsCSd+JywJU2hpZnQsCSd8JywJJ3on LAkneCcsCSdjJywJJ3YnLA0KPiBbMHgzMF0JJ2InLAknbicsCSdtJywJJzwn LAknPicsCSc/JywJU2hpZnQsCScqJywNCj4gWzB4MzhdCUxhdGluLAknICcs CUN0cmwsCUtGfDEsCUtGfDIsCUtGfDMsCUtGfDQsCUtGfDUsDQo+IFsweDQw XQlLRnw2LAlLRnw3LAlLRnw4LAlLRnw5LAlLRnwxMCwJTnVtLAlTY3JvbGws CSc3JywNCj4gWzB4NDhdCSc4JywJJzknLAknLScsCSc0JywJJzUnLAknNics CScrJywJJzEnLA0KPiBbMHg1MF0JJzInLAknMycsCScwJywJJy4nLAlObywJ Tm8sCU5vLAlLRnwxMSwNCj4gWzB4NThdCUtGfDEyLAlObywJTm8sCU5vLAlO bywJTm8sCU5vLAlObywNCj4gWzB4NjBdCU5vLAlObywJTm8sCU5vLAlObywJ Tm8sCU5vLAlObywNCj4gWzB4NjhdCU5vLAlObywJTm8sCU5vLAlObywJTm8s CU5vLAlObywNCj4gWzB4NzBdCU5vLAlObywJTm8sCU5vLAlObywJTm8sCU5v LAlObywNCj4gWzB4NzhdCU5vLAlWaWV3LAlObywJVXAsCU5vLAlObywJTm8s CU5vLA0KPiB9Ow0KPiANCjMxMGMzNTAsMzU0DQo8IAl9IGVsc2UgaWYoc2hp ZnQpDQotLS0NCj4gCX0gZWxzZSBpZiAoc2hpZnQgJiZjYXBzKQ0KPiAJCWMg PSBrYnRhYnNoaWZ0Y2Fwc1tjXTsNCj4gCWVsc2UgaWYgKGNhcHMpDQo+IAkJ YyA9IGtidGFiY2Fwc1tjXTsNCj4gCWVsc2UgaWYoc2hpZnQpDQozMTcsMzE5 ZDM2MA0KPCAJaWYoY2FwcyAmJiBjPD0neicgJiYgYz49J2EnKQ0KPCAJCWMg Kz0gJ0EnIC0gJ2EnOw0KPCANCjQ3NWE1MTcsNTE4DQo+IAljYXNlIDQ6CWti dGFiY2Fwc1tzY2FuY10gPSByOyBicmVhazsNCj4gCWNhc2UgNToJa2J0YWJz aGlmdGNhcHNbc2NhbmNdID0gcjsgYnJlYWs7DQo0OTFhNTM1LDUzNg0KPiAJ Y2FzZSA0OgkqciA9IGtidGFiY2Fwc1sqc2NdOyByZXR1cm4gMTsNCj4gCWNh c2UgNToJKnIgPSBrYnRhYnNoaWZ0Y2Fwc1sqc2NdOyByZXR1cm4gMTsNCg== --8323328-1242095204-1016884901=:878--