たまりば

  パソコン・インターネット パソコン・インターネット  三鷹市 三鷹市

【訂正・加筆】
2016年09月10日 00:00

2016/09/10 ネット契約を1Mbpsにしてみたの読み込み時間の記述が間違っていたので訂正。
2016/09/04 ファミコンの縦解像度224px説の考察 左8pxを隠す機能の用途が思っていたのと違ったので追記。
2016/06/06 Windows7でのペイントの劣化具合に新しく気づいたバグ情報を追加。
2015/08/29 ベースラインPICの注意点で、型番の間違いを訂正、OPTION2の書き込み方法の間違いを訂正。
2015/08/28 Windows7でのペイントの劣化具合に新しく気づいたバグ情報を追加。
2013/09/26 5×5 ひらがなフォント5×5フォント改 / JavaScriptフォント表示機から5×5ドットフォント完成版に、思えばリンクを貼っていなかったのでリンク。
2013/05/05 最弱のPICマイコンで電子オルガン_前編の単純ミスを1ヶ所修正。
2013/04/27 文字コード表示機が特定の環境で動かない問題を修正、RTL文字での表示崩れを修正。
2013/03/03 5×5ドットフォント完成版が紹介されていたので少々加筆しました。
2012/11/18 ハロウィー?ンの正規表現に訂正・加筆があります。

【このエントリについて】
(2012/11/18)
今まで、記事の内容にミスを見つけた場合はその記事だけ修正していたのですが、最新の記事はともかく古い記事にミスを見つけた場合は直しても気づかれないだろうと思って直すのが億劫になっていました。
これではいけないと、どうするべきか考えた結果、訂正を知らせるエントリを1つ作ることにしました。
記事を訂正した際にはこのエントリを更新して最上位に持ってくるように運用しようと思います。
(2013/03/03)
訂正だけに限らなかったので、エントリ名を【訂正】から【訂正・加筆】に変更しました。  
タグ :お知らせ

  • ネット契約を1Mbpsにしてみた
    2016年08月27日 22:17

    先日引っ越しをしたのだが、無料でケーブルテレビとインターネットが使えるという物件だった。
    とはいえ無料で使えるのは最低ランクの1Mbps(上り500kbps)のコース。契約に来た会社の人は当然のごとく有料の高速なコースを勧めてくる。
    曰く、「1Mbpsのコースはメールしか使わない人向けですよ」「100Mとか書いてありますけど数字通り出るわけではないですから。1Mなら500kとかになっちゃいますよ」「お客様は話を聞く限りネット使われる方ですよね」「1Mで契約された方は大抵コース変更しますよ」

    そこまで言われたら試してみないわけにはいかない。
    kbpsレベルならまだしも、1Mbpsはそこまで何もできないような速度ではないだろう。

    まず契約までの猶予期間に少々調べてみたのだが、CATVのインターネット接続は基地局からの距離で減衰するADSLと違ってリピーターを入れているので書いてある速度がちゃんと出るもののようだ。なるほど、そうでなければおちおちTV信号も流せないだろう。
    「数字通り出るわけではない」という発言は、基地局からの距離でノイズが乗るADSLと建物内の加入者数で分け合う光をわざと混同して誤解を誘っているように思う。
    とりあえず1Mbpsは出るものと思ってよさそうだ。

    工事が来て、設置されたモデムを見ると、LANの口が1つ。ここでもコストを削減してきたか。
    まあ持っている無線LANの親機がハブ機能も持っているので問題ない。
    なお工事費は初回申込時は無料だが、コース変更時は5000円掛かるという。最初に高いコースにさせるためな気がする。

    いくつか速度計測サイトで測ってみると、きちんと1Mbps出ているようだ。実際のファイルのダウンロード中も100KB/秒超えの数値が表示され、少なくとも9割方の速度は出ているように見える。
    やはり「数字通り出るわけではない」というのは嘘だった。

    さて本題だ。いろいろとネットを使ってみた感想を書く。

    ・画像
    昔ながらのHTML+画像少々のページなら、全く問題なく見られる。
    画像が大量にあるページだと、読み込み待ちが発生する。常識的な量であれば、別のサイトを読んでいる間に読み込ませておけば問題ない。
    ただ、放っておくだけでは表示されている部分の画像しか読み込まれないサイトが困りものだ。例えばpixivの複数枚投稿がそうなのだが、読み込ませるためにまず開いて一番下までスクロールしておく必要がある。
    また、漫画サイトも一度には見開きの2ページしか読み込まれず、さらに全ページを読み込ませる手段がないので、ページめくりごとに1,2分10~20秒の待ちが生じ、不便である。
    (9/10訂正改めて測ってみるとさすがに1,2分などということは無かった。感覚はあてにならないものである。)

    ・ファイルダウンロード
    大容量のファイルを落とすのには時間がかかるが、それ自体はただ待てばよいだけなのであまり問題ない。GB単位のファイルも正常にダウンロードできた。
    問題は、ファイルのダウンロード中は他の通信が遅くなり、快適な閲覧ができないこと。
    また、ダウンロード中に他のWeb閲覧をしていたところダウンロードが中断してしまう現象が稀ながら発生した。確実にダウンロードするためには他の作業をしないほうがよさそうだ。

    ・動画
    動画は読み込みに時間が掛かるが、すぐに再生せず読み込ませておけば問題ない。HDはともかく、SD画質ならさほど問題を感じない。そもそも動画は読み込みが間に合わないものである。
    ただし一定以上読み込ませてくれないサイトが困りものだ。最後まで再生した後にもう一度再生するボタンを押すと再びゼロから読み込み直すサイトは滅べばいいと思う。

    ・動画ストリーミング
    これはわりと心配なところだったが、Ustream・ニコニコ生放送・熊本震災時のNHKニュースと、問題なく見られた。
    これもHD画質でなければさほどビットレートは要らないようだ。

    ・操作に応じた細かい読み込み
    操作に応じて細かく読み込みをするサイトはかなりつらい。筆頭がGoogleストリートビュー。Googleマップも少々きつい。
    ただし、操作性は損なわれるものの、時間を掛ければ目的のものを見ることはできる。
    困るのは、Yahoo知恵袋の返信の読み込みがよく失敗したり、マイニンテンドーのお知らせの読み込みが無反応だったりと、操作に応じて読み込まれるタイプのUIがなんだか分からないがエラーで止まってしまうこと。
    なるべく他のページを読まないようにすると成功しやすいように思う。
    時間が掛かるなら分かるが、失敗してしまうというのは、このような低速回線を想定していないということだろうか。

    ・Splatoon
    Splatoonはできない。
    試合開始後しばらくは正常にプレイできるが、30秒ほどで塗りが反映されなくなり、通信が異常だか何か見知らぬメッセージが出たあと通信が切断された。念のためPCの電源を落として試したが同様であった。
    解析情報によるとSplatoonの試合中の通信は800kbps程度らしい。P2Pなので上り400kbps下り400kbpsということだろうか。
    上りはともかく下りは500kbpsと余裕が無いので、細かい変動で一時的に超えたりもするだろうし、まあ不思議ではない。

    ・Windows10
    Windows10がアップデートのためにダウンロードを始めると帯域を完全に専有する。これは上記のファイルのダウンロード中の比ではなく、ブラウザはページを開くのに10分単位で掛かる。
    最悪なことに、これはいつ起こるか予想がつかず、始まってしまったらPCの電源を落とし別のPCを使う以外に回避方法がない。
    なおこれについて、Microsoftコミュニティの投稿を見ると、Windowsフィードバックのスクリーンショットが貼られており、それを見ると7月13日の時点で「8ヶ月前」から要望が出ているようだ。

    総括
    ・回線速度が足りないせいでできないことはほとんど無い。
    ・Splatoonができない。
    ・あらゆるサイトで細かい待ちが発生し、時間を無駄にする。
    ・軽いデータのやり取りに見えるのに頻繁にエラーが出るサイトが少ないながらある。
    ・Windows10はクソ。  

  • Pokémonのアクセント記号は「ポケモン」と読ませるためではない
    2016年07月24日 02:28

    PokémonGOが日本で配信開始され流行っている。
    そんな中、「é」についての昔からある間違った記述が目に入り気になった。
    Pokémonに付いている「´」記号(アキュートアクセント, アクサンテギュ)については北米版ポケモンが出た昔から各所でよく説明されていたが、次のようなものが多い。
    Pokemonでは「ポケモン」と読んでくれないので、「ポケモン」と読ませるためにアクセント記号を付けてPokémonにした。
    しかしその甲斐なく「ポウキモン」になってしまった。残念なことである。
    これは間違っている。
    「Pokemonでは『ポケモン』と読んでくれない」までは合っているのだが、アクセント記号を付けて/ポケモン/と読まれることはない。ここで想定している間違った発音は、eが黙字になって/poʊkmɒn/(ポウクモン)になってしまうことである。
    黙字でないことを示すためにアクセント記号を使う用法は英語において一般的である。
    Wikipediaの「Acute accent」が参考になるが、スペイン語「mate」(マテ)を「maté」としたり、日本語「酒」を「saké」としたりする。
    ではこれで/サケ/と読んでくれるかというとさにあらず、アクセント記号にそのような効果は無いのであって、/sɑːkeɪ/(サーケイ)や/sɑːki/(サーキ)となってしまう。/seɪk/(セイク)にならないというだけだ。
    そもそも英語では音節末に/e/という音素は存在しない。どう書こうが英語に存在しない音は英語話者は発音できないのだ。(外国語に堪能な人なら頑張って発音するかもしれないが)
    なので、/ポケモン/を英語話者が発音するなら/poʊkimɒn/(ポウキモン)が精一杯なのであって、アクセント記号はポウクモンでなくポウキモンという比較的原語に近い発音をさせるためにある。
    上手く想定通りの働きをしてくれたというべきであろう。  

  • PCのキーボードのアーウが反応しなくなったあどうすえばよいか
    2016年07月17日 04:34

    PCのキーボードの「R」が反応しなくなったことをその「R」の使えないキーボードで打ったツイートが少し前に話題になっていた。
    ここで反応しなくなったキーが「R」だというのが絶妙だ。
    Rを使わないとアールと文字名を打つこともできず、アーウという間の抜けた字面になるのがよい味を出している。
    これが
    Aエー、Cシー、Eイー、Fエフ(EHU)、Gジー、Hエイチ(EITI)、Jジェー(ZYE-)、Lエル、Qキュー、Vブイ、Wダブリュー、Xエックス、Yワイ
     ではその文字を使わなくても文字名が打ててしまう。
    Bイー、Pイー、Kエー
     ではE・Aに読めてしまい分かりづらい。
    Dヒー、Tヒー
     は「ディー」や「ティー」の発音の中に存在しない「h」が出てきてしまい文字名に結びつきづらい。
    Iア、Oー、Uy-
     この辺は情報が足りなすぎなんだか分からない。
    Mエウ、Nエウ、Sエウ
     これらはなかなかよい。「Nのいぎどなりのエウ」などよい間の抜けぐあいだ。ただ3つのどれか分からないのは欠点か。
    Zエット
     これもなかなか面白い響きだ。「Shiftの右隣のエット」「Xの左隣のエット」が打ててしまうのが多少残念。



    さてそれはそうと、R(など英字キー)が打てなくなった時の対処法を考えてみよう。
    なお当該ツイートの画像はMacっぽい気もするがMacはよく知らないので主にWindowsについて考える。

    まずはRが打てなくなったことを伝えるために1回だけでいいから「R」の文字を入力する方法を考えよう。

    色々あるが、面白いところからいくと、英単語をカナ表記から変換する方法がある。
    MS-IMEでは例えば「かー」を変換すると「CAR」が出せるので、Rを打たなくてもRの文字を出せる。
    他の文字も考えてみると例えば
    BらむLAMB
    DしゅみっとSCHMIDT
    IらてんLATIN
    KないふKNIFE
    MあんばーAMBER
    NこらむCOLUMN
    OかむCOME
    PれしーとRECEIPT
    SきっずKIDS
    TくりすますCHRISTMAS
    UかっとCUT
    ZぴっつぁPIZZA
    といった出し方があるだろう。
    なおZは「じー」でも出たりする。

    他に、どこかからコピペしてくる方法もある。
    Webブラウザで「ASCIIコード表」など適当な語句で検索すれば見つかるだろう。

    まともな方法では、IMEパッドの手書きや
    IMEパッドの手書き
    文字一覧、
    IMEパッドの文字一覧
    ソフトキーボードが使える。
    IMEパッドのソフトキーボード

    文字一覧と同様のもので、「文字コード表」もある。
    文字コード表
    名前を指定して実行から「charmap」…が打てないのでどうにかして探そう。

    変わったところで、Alt+テンキーでの文字コード入力。
    日本語WindowsではShift_JISの文字コードを入力する。Rなら0x52(=82)なので、Altを押しながらテンキーの8,2を順に押し、Altを離すとRが入力される。
    またレジストリのHKEY_CURRENT_USER\Control Panel\Input Methodに文字列値「EnableHexNumpad」を作成し値を「1」にするとAltを押しながら「+」を頭につけた16進のUnicodeで入力できるようになる。Shift_JIS外の文字も打てるようになるし、文字コードはふつう16進で書かれるものなのでそのまま打てて便利である。



    さてしかし「R」だけ打てても日本人は困る。「らりるれろ」を入力したい。
    そんなときにはソフトウェアキーボードだ。
    IMEパッドのソフトキーボードのかなモードを使って1文字づつ打つか、
    IMEパッドのソフトキーボード(かな)
    osk.exe「スクリーンキーボード」なら普通にR,Aと打って「ら」を入力することができる。
    スクリーンキーボード
    Windows+R…が使えないのでマウス操作で、名前を指定して実行から「osk」を実行。
    O,S,Kが使えない時はマウス操作でなんとかしよう。
    Windows8以降なら「タッチキーボード」も同様に使える。
    タッチキーボードのアイコン
    タッチキーボード
    (それにしてもWindowsにはソフトウェアキーボードが多いな…)



    さて何度も打ちたいときはこれではまどろっこしい。やはり物理キーボードを使いたい。
    それならばMS-IMEのローマ字設定を変えよう。
    使っていない例えばQやXあたりをラ行にあてればよいだろう。
    (なおMacのことえりではデフォルトでLがラ行を打つのに使えたように思う。)
    MS-IMEでローマ字の追加
    ここでちょっとしたおまけで、例えば「QYA」で「りゃ」が打てる状態で、QYAで打った「りゃ」を1文字消して「り」になったものをF10で変換すると「RI」になってくれるので、Rキーを使わず「R」の文字を出すこともできる。

    MS-IMEを使う方法は日本語入力時はよいが、IMEをオフの状態で入力しなければならない場合に困る。
    面倒だがレジストリをいじってキー配置を変更するのが最終手段である。
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layoutにバイナリ値「Scancode Map」を作成し以下のようなフォーマットで書く。
    dword 0;
    dword 0;
    dword length+1;
    {
        word scancode_out;
        word scancode_in;
    } * length
    dword 0;
    めったに使わない無変換やF1など適当なキーをRとして使うようにするとよいだろう。
    例えばF1をRにするなら、F1のスキャンコードが0x3B、Rは0x13であるから、
    00 00 00 00 00 00 00 00
    02 00 00 00 13 00 3B 00
    00 00 00 00
    こうなる。
    スキャンコードの表は検索すれば見つかるだろう。例えばここ
    なお注意点として、PS/2キーボードから送出されるスキャンコードとWindowsが内部的にScancode Mapに使っているスキャンコードは別物なので、「Scancode Mapに設定するための」スキャンコード表を探そう。
    また、1ユーザーのみの設定がHKEY_CURRENT_USER\Keyboard Layout\Scancode Mapで昔はできたのだが7以降できなくなっただか環境によってできないだかという。実際Windows8.1で試してできなかった。
    昔WindowsXPで1ユーザーのみの設定をした時の記事も参考になるかもしれない。
    http://wentwayup.tamaliver.jp/e50134.html

    以上、突然Rが反応しなくなった時にはぜひ試してみてほしい。  

  • ASCIIと仮名を1バイトに収める / 小書き仮名の性質について
    2016年06月05日 03:28

    昔ゼルダの伝説夢をみる島というゲームがあった。名作だ。
    そのテキストデータのダンプがネットで見つかるのだが、小書き仮名のデータがおかしい。
    たとえば「マダムニャンニャン」というキャラクターがいるのだが、これが「マダムニゃンニゃン」となっている。
    「へ」と「り」をカタカナひらがなで統合するのは常套手段だが「ゃ」は明らかに形が違う。
    念のためゲーム中の表示を確認してみたが、やはりどう見ても「マダムニャンニャン」である。
    データを作ったのは外国人だろうし何かミスがあったのだろうか…。

    それはさておき。

    先日なんとなくポメラのようなキーボードで文字を打って保存できる機械を自作することを考えていた。
    漢字は変換システムの自作は困難だしデータ(辞書・フォント)の容量も食う。とりあえずASCIIとひらがなカタカナだけで考えよう。
    そうすると1文字に必要なデータ量は…
    ASCII: 95文字
    ひらがな: 83文字 (ぁーん)
    カタカナ: 84文字 (ァーヴ)
    他: 「ー」「改行」「null文字」
    この辺までは最低限必要だろう
    あとできればキーボードから打てる記号くらいは入れたい。
    つまりASCIIとかぶるものを除いて少なくとも「、。・「」」の5文字、あと「\,¥」と「~,~」を同一視するかは微妙。

    最低限で考えても95+83+84+3=265文字、惜しくも1バイトに収まらない。悔しいので要らない文字を削って収めよう。
    まず「ゐゑヰヱ」は現代語を書くには不要だ。「ヘベペリ」はかなカナを統合する。まだ足りない。ひらがな「ゎ」も要らないか。
    これで256文字。ギリギリで収まったがやはり記号が欲しい。
    あと削れる文字は…ひらがなの「ぁぃぅぇぉ」も削るか…

    と思っていたとき気づいた。
    小書き仮名は普通に使う分には常に直前の文字と一体となって使われる。
    であればかなカナの区別はデータ上には必要ない。表示時にだけひらがな/カタカナステートに応じて別の字形を出せばよいのだ。

    そうすると「ぁぃぅぇぉっゃゅょ」で9文字も空く。「ゎ」も消さずに済む。
    これで記号も入れられそうだ。めでたしめでたし。

    さてそれで思い出したのが冒頭のゼルダの伝説夢をみる島。
    あれは同じ仕組みで文字コードを圧縮していたのではないか。
    あのゲームは表示テキストに混じって人物やアイテムなどのアイコンが使われる。それで文字数が1バイトに収まらなくなって小書き仮名を統合し、それがテキストダンプに現れていたのではないか。

    …と、そう思ったのだが、見なおしてみるとおかしいのは「ャ」だけで「ッ」「ュ」「ョ」は正常であった。(ぁぃぅぇぉは無い)
    統合するなら全部統合するだろうから、やはりただのミスだったのだろう。「ゃ」と「ャ」は形が似ているので見間違えたんだろうな。