たまりば

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

【訂正・加筆】
2017年07月24日 00:00

2017/04/23 2017/05/22 2017/07/24 ゼルダの伝説ブレスオブザワイルドプレイ日記(ネタバレ有) 更新。
2016/12/06 漢点字一覧表で、別の元データとの間で不一致があったので追記。
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)
訂正だけに限らなかったので、エントリ名を【訂正】から【訂正・加筆】に変更しました。  
タグ :お知らせ

  • PCが壊れた
    2017年06月20日 22:41

    ある日、休止したPCを復帰させようとキーボードを押すと反応がない。電源を押したら点き、休止時の状態も失われていないので、何かソフト的なものかと思ってそのまま使った。
    そして次にスリープして復帰しようとしたところ、復帰せず、電源を切って入れ直しても電源は付くものの画面が一切出なかった。おかしいと思いつつも、コンセントを抜いて入れ直したところ電源が付き、驚いたことに画面はスリープ時のまま残っていたのでとりあえずそのまま使った。
    翌日あたりも同様の状態。電源を押すと僅かにファンの回る音がするが止まる。この状態では、電源を長押ししてから再度押す、電源ケーブルを抜いて再度挿すといった方法で正常動作することもある。
    また、ファンも回りランプも点いて正常な雰囲気なのに画面だけ出ないこともあった。
    そして次の日あたり、ファンも回りランプも点くが画面が出ない状態に落ち着いた。
    なおディスプレイの異常も疑ったがHDMI接続では画面が出る(PCはDisplayPort接続)。
    画面も出ずエラー音も鳴らないので手掛かりがない。

    何度か試しても状況が変わらないのでとりあえず電源を新しくする事にした。
    なぜなら、おかしくなりかけの時も点いてからの動作は正常だったので、CPU・メモリ・ストレージは正常と考えられる。マザーボードがエラー音を発しないのもCPU・メモリが正常である事を示唆する。
    残るはマザボと電源。ファンが一瞬回るとか電源ケーブル抜くと治るあたり電源っぽい。また、電源はマザボより安く交換も容易。
    というわけでまずは電源を変えよう。

    秋葉原で買ってきて交換。治らない。

    なお電源を買うとき店員が不吉なことを言っていた。曰く、電源が壊れるとマザボやメモリも連鎖的に壊れるらしい。だから電源は早めに変えろと。うーむ、そこまで長く使っているつもりはなかった。

    そういえばPCはHDMI出力も出来るので試す。駄目。

    さてこうなると何が悪いのか分からない。どうしよう。
    まず方向性として、直すか新しいのを買うか。

    直すなら次に怪しいのはマザボだ。しかし直る保証はない。店員の話によればメモリも壊れているかもしれない。
    またWindows10のライセンスが残るかも怪しい。このPCを組んだときも初期不良で交換したがWindows(当時8)は電話認証になった。

    どうせなら買い換えるか。このPCは組んでから4年半経っている。そろそろ買い換えどきかもしれない。(まともに使いだしたのはXPサポート終了からだから使った期間は3年だが)
    買い換えるとして自作するか既製品を買うか。
    今は自作って時代じゃないしたぶん既製品の方が性能の割に安いよな…。
    あ、でも自作ならストレージは流用するから(ライセンスは要るにせよ)OSの再インストールが要らない。これは大きな利点だ。よし自作しよう。

    現マシンと同じくらいの価格で考えると…
    ・CPUはRyzenにGPU統合のが無いので今と同じくCore i5。IvyBridgeからKabyLakeで周波数はさほど変わらず周波数あたりの性能もほとんど変わってない。まあGPU性能は上がってたりAVXが2で整数演算がベクトル幅広かったりはするが。
    ・メモリは安くはなっているが倍の32GBにするほどは安くない。これも変わらず16GBか。
    ・マザボはシリアル・パラレルポートはあきらめた方がいいか。他特に欲しい機能はない。あえて言えばm.2くらい。
    ・Windows10のバージョンは非Proでいいだろう。
    うーむ、なんだかつまらないマシンになるな。性能はほとんど変わらずOSのグレードは落ちシリアルポートは無くなる。
    PCはいつでも買い時でないとはいうが今は特に買い時じゃない気がする。

    ここはいっそのことワンランク上のマシンを組むか。
    CPUをRyzenに。8コアが手の届く値段。
    グラボが要る。そこまで性能いらないけどまあまともな奴で…GTX1050になるのかな。
    メモリは当然32GB。
    あ、なんか楽しくなってきた。プラス数万でこの楽しさはアリだな。よしこれでいくかー。

    …などと思いつつも、やっぱり治す方法は無いかと考えてみる。
    マザボが正常で上に乗っているものが駄目ならエラー音が鳴ってほしい…。
    そういえばこのPC最初に組んだときは内蔵グラフィックから映像が出ず初期不良で交換したっけな。
    あの時はエラー音が出て説明をみるとグラフィック異常で…。
    最初圧電スピーカーを直に付けたら蚊の鳴くような音で抵抗付けてちょっとマシに…。

    !!

    そうだよスピーカー付いてなかったじゃん!
    事ここに至ってやっと思い出す。

    スピーカーを付ける。鳴った。「-・・・」。聞き覚えのあるパターン。グラフィック異常だ。
    先代(2代目)メイン機のグラボを移植する。とっといてよかった。
    GeForce8400GS
    (挿す前に写真撮るの忘れてたので稼働中)

    画面出たー!

    ただし解像度が低い。1024×768かな。まあこれはドライバが入ってないせいだろうからネットで探して落とせば…
    と思っていたらWindowsUpdateでドライバがダウンロードされている。便利。
    ふむふむ、このグラボのGPUはGeForce8400GSというのか。すごいぞ数字がGTX1050の8倍もあるぞ!

    そしてドライバのインストール前だがグラフィックオプションを見ると解像度がいくつか選べる。
    その中で最大の1600×1200にしてみる。
    解像度もアスペクト比も合っておらずさらにゴーストが出る
    うーむ…これはひどい。解像度はともかくアスペクト比も合ってないし、アナログ接続だからゴーストも出てる。

    ああそうそう、なんでアナログ接続かというと、グラボの出力がDVIとアナログ、ディスプレイの入力がDisplayPortとHDMIとアナログなんである。
    DVIからHDMIは頑張ればつなげるのかな…。

    さてそんなこんなでドライバが入った。
    解像度の選択肢も増えたが、最大で2048×1152。まあアナログではそれが限度だろうな。
    ディスプレイのネイティブ解像度である2560×1440には届かず。
    アスペクト比は合ったが解像度は合わず、ゴーストもまだ出る
    まあでもアスペクト比が合っただけでも大分ましになった。解像度合ってないしゴーストもまだ出るけどこれならまだ我慢できる。
    そのうちGTX1050買うけど、なんかしばらくこのままでもいいかなー。

    さてしかし結局原因はなんだったんだろう。
    このマザボは最初組んだときも同様の症状が出た。また、同機種で同様の問題が発生した書き込みが価格.comにあった。
    http://bbs.kakaku.com/bbs/K0000354567/SortID=15218067/#15218067
    何か設計に問題があってグラフィックあたりの回路がダメージに弱いとかあるんじゃなかろうか。
    それが初期不良になったり、電源側の経年劣化で異常な電圧が出た時に壊れたりしたのではないか。  

  • Windows10にフォント消されたけどまあ理解できる
    2017年04月16日 17:31

    Windows8から10にアップグレードして使っていたマシンで、先日(2016/10/12)いくつかのフォントが消えていることに気づいた。

    調べ物をしていて韓国語の字体を見たくなり、文字コード表でフォントをDotumにしようとすると、選択肢に無い。
    Gulimでもいいかと思って探すとこれも無い。BatangもGungsuhも無い。
    有効化していなかったかと思いfontsフォルダを見ると、無効ではなく存在しない。
    この辺で焦りだす。
    他の言語のフォントも怪しいと思い調べてみるとMingLiUもSimHeiも無い。なんだこれは。
    ここまではWindows付属のフォントだがOffice付属のNew Gulimは…? と見るとこれはある。
    すると消えたのはWindows付属のフォントのみなのだろうか。

    ググるとWindows10でMS明朝が無いという投稿が見つかった。→Windows10のフォントにMS明朝がありません
    「設定→システム→アプリと機能→オプション機能の管理」に「日本語補助フォント」のオプションがあるようだ。見てみると他にも各言語の「補助フォント」があり、ここからGulimやSimHeiなどをインストールできた。

    ここにきてやっと何が起こったのか理解できた。
    Windows10になって、各言語のフォントに「補助フォント」という概念ができたようだ。
    そして基本的なフォントはデフォルトで全言語のものがインストールされるが、補助フォントは使用言語のもののみがインストールされるようになったのだろう。
    その判断はまあ問題ないだろう。対応言語も多くなりフォントの容量も馬鹿にならない。

    ここで問題になるのが旧OSからのアップグレードだ。
    旧Windowsでは非使用言語の補助フォント相当も全て入っていたが、Windows10の流儀に合わせるためには存在してはいけない。だから消すと。
    理解はできる。
    消すにあたって、どのフォントを使っているかは判断のしようがないから、すべて消すことになる。
    理解はできる。

    理解はできるが、普通に使っていたファイルが消えるとなると他に何が消されたか分からないのが怖くてたまらない。
    あるはずのファイルが見つからないという経験も何度かあった。まず間違いなく気のせいだろうが、Microsoftは自分の中でもうだいぶ信用を失っているので、本当に消されてもおかしくないと思ってしまう。

    他にも、.NET2.0がWindows10へのアップデートに伴って消えるという問題もあるらしい。ああ嫌だ。
    [note] Win10アップグレード後のVisual Studio 2005起動時エラーの修正について  

  • ゼルダの伝説ブレスオブザワイルドプレイ日記(ネタバレ有)
    2017年03月12日 18:13

    1週間ちょっとプレイしてみて(というか週末だけなので累計2日3日くらい)これは感想を書き留めておきたいという気分になったので書き始める。
    主に自分が後で読み返して懐かしむために書いているが、本作は多様なルートで攻略できることが特徴のようなので、他人が変なルートをとっているを見るのも面白いかもしれない。ということで公開する。ただあまり人に読ませる文体でない部分もある。
    ネタバレについて。積極的にネタバレをしたいわけではないが、感想を書く時点ですなわちネタバレである。本作を十分にクリアした、あるいは未来永劫プレイしないと確信が持てる人以外が読むことは強く非推奨する。

    2017/04/02 エンディング到達。総プレイ時間は本体の記録によれば60:14であった。
    とりあえず日記はここまででいいかな。もしかしたらまた何か書き足したくなるかもしれないけど。→書き足したくなった。
    2017/07/24 最終更新

    ところで、本文にも書いたが、本作は(トワイライトプリンセスの時のようなことはなく)Switch版の方が全面的に優れている。
    あまり無いと思うがWiiU版とSwitch版のどちらにしようか迷っている人がここを見た時のために情報をまとめておこう。
    ・Switch版の方がTV出力時の解像度が高い。Switch本体とWiiU GamePadの比較でもSwitchの方が解像度が高い。
    ・Switch版の方が安定してフレームレートを保てる。
    ・Switch版の方が音質が良い。
    ・WiiU版は、GamePadを一切使わない。 ←これを事前に知っていたら自分はSwitch版を買っただろう
    ・Switch版は言語切替えが可能。 ←同上
    (2017/05/22追記: WiiU版も音声は切替え可能になった。文字も欲しい。)

    折角なのでWiiU版でしか見られない画面をここに載せておこう。
    タッチするとGamePadであそべます画面  続きを読む

  • JPEG圧縮を繰り返しても際限なく劣化するわけではない
    2017年02月10日 01:47

    ビデオテープのダビングやコピー機でのコピーは世代を重ねるごとに劣化が蓄積する。
    同様にJPEG画像も、保存→開く→保存…と繰り返すと、
    JPEG劣化_オリジナル
    オリジナル
    JPEG劣化_ずらし_1世代目
    保存1回目
    JPEG劣化_ずらし_9世代目
    保存9回目
    JPEG劣化_ずらし_17世代目
    保存17回目
    JPEG劣化_ずらし_49世代目
    保存49回目
    JPEG劣化_ずらし_97世代目
    保存97回目
    JPEG劣化_ずらし_201世代目
    保存201回目
    JPEG劣化_ずらし_497世代目
    保存497回目
    JPEG劣化_ずらし_1001世代目
    保存1001回目
    JPEG劣化_ずらし_2001世代目
    保存2001回目
    JPEG劣化_ずらし_5001世代目
    保存5001回目
    JPEG劣化_ずらし_10001世代目
    保存10001回目
    といった具合に劣化が蓄積して画質が際限なく落ちていき、最後には一面のノイズになってしまう…

    …と誤った認識を持っている人が多い。

    実際に試してみよう。使用するソフトは定番のImageMagick。
    magick convert -sampling-factor 1x1 -quality 95 orig.png gen1.jpg
    magick convert -sampling-factor 1x1 -quality 95 gen1.jpg gen2.jpg
    magick convert -sampling-factor 1x1 -quality 95 gen2.jpg gen3.jpg
    このようなバッチファイルをExcelとテキストエディタで作成し、実行する。
    結果は次のとおり。
    JPEG劣化_オリジナル
    オリジナル
    JPEG劣化_1世代目
    保存1回目
    JPEG劣化_17世代目
    保存17回目

    以上だ。
    3000回くらい回していたのだが、確認してみると18回目で既に前回と同一の画像が出力されていた。だいぶ時間を無駄にした。
    このように、繰り返し保存による劣化は早々に止まることが分かる。
    なお今回は1種類に収束したが、以前試した時は3種類のローテーションになったこともあった。
    また、見て分かる(分からない)とおり、1回目と17回目で差はほとんど無い。
    念のため差分をとってみよう。
    JPEG劣化_差分_1-17
    全く見えないので64倍に強調したものも置いておく。
    JPEG劣化_差分_1-17(×64)

    そもそも非可逆圧縮の原理は、元データを少々変えて「圧縮しやすいデータ」を作り、それを可逆圧縮するものと解釈できる。
    よって一度非可逆圧縮したデータを展開したデータは、既に「圧縮しやすいデータ」になっているため、同じ設定で圧縮すれば完全に可逆圧縮になってもおかしくない。
    むしろ17回まで劣化が続くことの方が不思議といえる。
    ではなぜかだが、JPEGの圧縮の根幹である離散コサイン変換(DCT)は本来は可逆なのだが、実際には有限の精度で計算するために丸め誤差が発生する。おそらくこれがJPEG再圧縮が不可逆な原因だと思う。
    またどうもJPEGの仕様はあまり厳密でないようで、エンコードでは演算の精度をソフトの自由で選べたり、デコードもソフトによって結果が違ったりする。これも一因かもしれない。
    (2/11追記)RGB→YUVの変換も丸め誤差が発生するので一因かもしれない。

    さて次にパラメータを少し変えてみる。
    JPEG劣化_オリジナル
    オリジナル
    JPEG劣化_サンプリング2×2_1世代目
    1回目
    JPEG劣化_サンプリング2×2_10世代目
    10回目
    JPEG劣化_サンプリング2×2_20世代目
    20回目
    JPEG劣化_サンプリング2×2_50世代目
    50回目
    JPEG劣化_サンプリング2×2_103世代目
    103回目

    今度は劣化が103回目まで続く。劣化の度合いも目に見えて分かる。色が褪せていて、特に赤が大幅にくすんでしまっている。
    差分をとってみる。
    JPEG劣化_サンプリング2×2_差分_1-103
    少し見にくいので4倍に強調しておこう。
    JPEG劣化_サンプリング2×2_差分_1-103(×4)
    闇夜に光る眼のようで可愛い。

    何を変えたかというと、カラーサブサンプリングだ。
    カラーサブサンプリングは、クロマサブサンプリングや色成分間引きと呼ばれたり、単にサンプリングやサンプリング比という名の設定項目で設定したりする。名前が定まっておらず面倒な概念だ。
    先の17回で劣化が止まったものは、カラーサブサンプリングがOff、別の言い方をするとサンプリングが1x1や4:4:4と呼ばれるものだ。この設定では輝度成分と色成分を元の解像度のまま処理する。この時、画像は8×8のブロックごとに処理され、隣のブロックとの間で影響を及ぼすことはない。
    一方103回の方は、カラーサブサンプリングがOn、サンプリングが2x2や4:2:0と呼ばれる設定であり、輝度成分は元解像度で、色成分は縦横1/2に縮小してから処理をする。
    この縮小で単純に2×2ピクセルを平均するのであれば16×16のブロック内に影響が留まるだろうが、どうもそうではなく線形補間か何かをされているようで、ドットの色が16×16pxの境界を越えてにじむ現象が見られる。これにより隣のブロックの色が圧縮に影響し、次回は隣の隣のブロックにまで波及し、と際限なく影響を与え合う。厳密なことは分からないがこれが劣化が長く続く理由ではないかと思う。

    なので劣化が蓄積するというのは、カラーサブサンプリングOnの設定においてはある程度正しい。
    ただしそれにしても際限なく劣化するということはないし、JPEGが全てそのように劣化するわけでもないことは上で示したとおりだ。

    さてもうひとつ、冒頭の例のように完全なノイズにまで際限なく劣化させるにはどうすればよいだろう。劣化しそうな方法をいろいろ試してみた。
    まず圧縮率を毎回変えたら量子化の閾値が変わることで劣化が続くのではないかと考えたのだが、駄目であった。1万回繰り返してもほぼ劣化が見えなかった。(同じ画像が続くことは無かったので何パターンかのローテーションになっていたようだ)
    次に90度回転を試したがこれも同様であった。今回使ったJPEGの量子化行列は縦と横で対称でないのでそれによるゆらぎを期待したのだが…。
    そこで毎回画像の位置をずらしてみることにした。7回右下へ1pxずらしたあと、1回左上に7pxずらして戻すの繰り返し。これは見事に成功、これでできたのが冒頭の画像だ。
    なぜこれが上手くいくかは、正確なことは分からないが、特定のドットに注目するとそのドットは8×8のブロック内で位置が毎回変わるようになっており、これで誤差が波及し続けるのが一因だろう。
    サンプリング2x2の時は止まってしまったのでそれ以外に何かあるのだろうが、よく分からない。何か誤差が発振するような機構があるのだろうか…。
    なお90度回転も、画像サイズが8×8の倍数でない場合はずらすのと同じことになる。

    以上、まとめると
    ・単純に同じ設定で圧縮を繰り返すだけでは際限なく劣化することはない。
    ・ただしサンプリングを落とした場合は少々劣化が続く。
    ・設定を変えても際限なく劣化はしてくれない。
    ・位置の移動を伴うと際限なく劣化した。

    JPEGの劣化は奥が深い。