コグノスケ


2015年11月1日

謎のDELキー

他の端末エミュレータの動きも気になったので、普段お世話になっているPuTTYの動きを見ていたのですが、DELキーを押すとCSI 3 07/14が飛ぶんですね。

DELキー以外にもF1〜F12とかInsert, Home, End, PgUp/Dn辺りのキーを押しても07/14が飛ぶんですが、何か規格があるのかなあ。

ECMA-048だと07/14はPrivate Useとなっていて、何も書いていないのですが…。

メモ: 技術系の話はFacebookから転記しておくことにした。

編集者:すずき(2015/11/01 02:15)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月5日

遅延0.05フレーム

表示遅延0.05フレームの液晶モニタ2機種をアイ・オーが発売、三菱モニタ技術を使った第二世代機 - Engadget Japanese を読んで。

IO-DATAのサイト見たらHDMIで受けられるFull HDモニタのようです。

個人的に気になるのは、パネルの画素数と合わない解像度(720pとか)を入力して、低遅延モードに切り替えたらどんな表示になるのでしょう?

この遅延時間が本当なら、最大でも1125ライン中56ラインくらいしか保持していないはずで、画面全体の情報を使うような処理(縦方向の拡縮)は不可能に思えるんですが…?

メモ: 技術系の話はFacebookから転記しておくことにした。

編集者:すずき(2015/11/09 22:57)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月7日

Thumb命令を実装

自作ARMエミュレータ(リンクはこちら)にThumb命令を実装しました。

これによりCodeSourcery (今はMentor Graphics Sourcery Tools) のコンパイラにて-mthumbオプションを付けてビルドしたコードが実行できるようになりました。

Linaroのコンパイラが出すコードを実行するにはThumb-2命令も必要なのですが、Thumb-2は全然仕様が違うので実装が大変そうです。うーん…。

メモ: 技術系の話はFacebookから転記しておくことにした。

編集者:すずき(2015/11/09 23:02)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月16日

Facebook

Facebookのプロフィールをトリコロールにする機能も、その機能を使った人も、さらに安否確認機能まで叩かれてますね…。

本人の思いはどうであれ、レバノン(11/12ベイルートのテロ)は無視して、フランスだけ特別扱いしているようにしか見えませんね。

善意から来た行動でも、傷付く人は居るから慎重に行動すべき、ってのは分かってたつもりですが、いざ自分がやると気付かないもんだ…。

メモ: 技術系の話はFacebookから転記しておくことにした。

編集者:すずき(2015/11/21 14:28)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月19日

FTOの思い出

目次:

古いコンテンツサルベージ計画です。今回の記事は、書いたのは大学生時代、車を買ったときくらい(2003〜2004年あたりか?)です。

昔の日記もそうですけど、照れ隠しなのか何なのか、どうでも良いことを書いて間延びしすぎです。読みづらいので、ざっくり削りました…。

FTO GPX '95

私が乗っていた平成7年(1995年)式のFTOという車を紹介したいと思います。おそらく50代くらいの方はFTOと聞くと、ギャランクーペFTO(1971年〜75年)が思い浮かぶと思います。同じ名前を冠していますが違う車です。

FTOは三菱のスポーツタイプ車です。1994年から発売開始、1996年にマイナーモデルチェンジ、2000年に生産中止となりました。できるならまた作って欲しい車です。

私のFTOはマイナーチェンジ前のいわゆる前期型です。1997年以降はATが4速から5速へと変わり、フォグランプが丸型になりました。派手なスポイラーを付けたFTO GP ver.Rグレードも追加された他、いくつか特別仕様車や限定車もあるようです。

排気量は1800cc〜2000cc、駆動方式はFFです。ざっくり言うとトヨタ セリカやホンダ インテグラと同じくらいの車格です。日本車初のシーケンシャルシフトAT(三菱はINVECS IIと呼んでいる)を搭載した挑戦的な設計となっています。

自分の車はINVECS-IIのシフトアップ/ダウンの方向を入れ替えています(この話も後日サルベージ予定)。


筑波パープルラインにて

筑波パープルラインに行ったときに撮った写真です。車が汚いです…洗車してから行けば良かった。

インプレッション

個人的に車は見た目命なので、その点は非常に満足しています。パワステは重めですが、重くても軽くても車の持ち味だと思うので気にしません。駆動系はノーマルで200馬力です。普通に走っていてこれ以上のパワーが必要になる機会はないでしょう。

足回りは前のオーナーさんがスプリングをいじったためか、非常に硬いです。元の足回りはわかりませんが、元々乗り心地なんて気にする車ではないです。アグレッシブなデザインの犠牲か、窓の位置が高くて横が見えません。バックミラーも全然見えないです。1mくらいのポールだとほぼ見えません。

居住性ですが、見た目のとおり狭いです。後部座席は身長150cmくらいの人でないと、頭が上にぶつかります。トランクだけは意外と広いですが、深さが無く、開口部が上向き(=ハッチバック式ではない)で引越しでは役に立ちません。車幅は1.7mをわずかに超える程度で、3ナンバーです。

燃費は9〜10km/L程度。街乗りのストップ&ゴーでは9km/Lを切ることもしばしばで、ハイオク指定なので財布に優しくないです。フロントヘビーで、前タイヤがやたらと減ります。FTOに限らずFF車は同じ傾向がありますけどね。定期的なタイヤのローテーションをお忘れなく。

FTO GPX '95諸元表

メモ代わりに性能の一覧を載せておきます。純正じゃない部品も付いているので、純正の諸元とは異なります。

三菱FTO GPX '95主要諸元
型式 DE3A
駆動方式 FF
トランスミッション/変速比 4AT 2.842/1.529/1.000/0.712ファイナル4.626
タイヤ/サイズ ハンコックVENTUS K102 205/50R 16 87V
全長x全幅x全高 4320x1735x1300 (mm)
形態/乗車定員 2ドアクーペ4名
原動機/種類、機能 6A12 MIVEC V型6気筒DOHC 24バルブ 可変バルブタイミング機構(MIVEC)付
排気量/出力 1998cc 200ps/7500rpm 20.4kgm/6000rpm
室外装備/追加 フォグランプ、リアスポイラー、アルミホイール
室内装備/追加 キーレスエントリ、フルオートエアコン、パワーウインドウ&ステアリング
音響/追加 ラジカセ
その他装備/追加 ABS(アンチロックブレーキシステム)、サス スプリング(RS R製、詳細不明)

純正の諸元が知りたい方は、中古車サイトなどでカタログを検索してみてください。

編集者:すずき(2023/09/30 15:22)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月20日

FTO INVECS-IIの+/−を入れ替える

目次:

古いコンテンツサルベージ計画その2です。今回の記事は、書いたのは大学生時代、車を買ってしばらくしてから(2004〜2006年あたりか?)です。

この記事もどうでも良いことを書いて間延びしすぎです。読みづらいので、ざっくり削りました…。

入れ替えの目的

三菱FTOのATモデルには、日本初のシーケンシャルシフト機構INVECS-IIが搭載されました。ちなみにFTOはFresh Touring Originationの頭文字だそうです。へぇー。

INVECS-IIは車が自動的にシフトチェンジを行う通常のATモードと、運転者がシフトアップ&ダウンを指示するシーケンシャルモードがあり、モードはいつでも切り替え可能で、運転している気分がより高まること間違いなしです。

シーケンシャルモードは、シフトノブを前に押すとシフトアップ、手前に引くとシフトダウンします。このままでも充分ですが、アップとダウンの向きを逆にした方がレースカー気分がさらに増して良いのでは?と思い、このたび+/−の向きを入れ替えました。

当内容はFTOのオーナーズサイトTensionを参考にさせていただきました(2015年現在、残念ながらサイトが無くなってしまったようです…)。

注意

最初に結論だけ言えばINVECS-IIはシフトパネル側にシーケンシャルシフトを検知するスイッチがあります。スイッチに繋がっている信号線を入れ替えれば、+と−が逆になります。そこに辿り着くまでには、いくつかの部品を分解しなければなりません。

私のクルマ(GPX 95年式)は電装系はほぼノーマルのはずですなので、基本的には今からご紹介する手順でどのFTOでも上手くいくと思いますが、マイナーチェンジ後、カーナビ搭載車などでは、部品の分解手順が異なる部分等があるかもしれません。ご了承ください。

分解、センターパネル

灰皿や小物入れに物が入っていると衝撃で飛び散るので、シガーソケットとともに最初に外します。CDやカセットなども取り除きましょう。


シフトパネルを上から見た図

オーディオ等がついているセンターパネルを分解します。パネルの周りにあるゴムパッキンの下1/3くらいのところから左右にツメ(図の赤丸部分)に向けて、ドライバーを差し込み、テコで内側のツメを押し込む感じで外します。ちょっと嫌な音がしますが折れなければ問題なし。

次に灰皿の横あたりのツメを外します。センターパネルを少し引っ張るとわかりやすいはず。パネルの最上部も外します。最上部はツメではなくエアコンの下部に差し込まれているだけなので、引っ張れば抜けます。

もしセンターパネルを引き抜く際にシフトノブに干渉する場合は、車のキーを回して、シフトノブをPレンジからNレンジに入れれば干渉しなくなります。

電飾用とシガーソケット用のコードを全て外し、後付けオーディオなどがセンターパネルに固定されている場合はそれも外します。するとパネルだけになるので、後部席にでも置いときましょう。

分解、小物入れ

これは簡単です。カップホルダーを力任せに引っこ抜き、見えたネジ2本を緩めます。次に小物入れ(真中の黒くて開閉できる箱です)を開け、中のネジ2本を緩めます。そしてフタを閉めた後、後部座席の向きにグイグイ揺らすと一気に取れます。こんなでかいのにネジ4本…。

分解、センターカバー

助手席の右から運転席の左の部分まで広く覆っているカバーです。大きいだけあって手ごわいです。エアコン下の2箇所のネジ、運転席側の3つのネジ、助手席側の3つのネジ、これら全て外します。

純正オーディオにひっかかってセンターカバーが取れない場合があるので、オーディオも外します。左右の銀色の板の2つずつあるネジ(計4つ)を緩め、オーディオを引っこ抜きます。でL字の金属板とオーディオをつないでいるネジ4つを外し金属板を外します。ただし、オーディオのコードは一部取れない(電源コードかな?)ので完全には外れません。仕方ないので落ちて壊れないような位置に押し込んで置きましょう。

センターカバーを助手席側に押すようにして上に持ち上げる(こうしないとサイドブレーキにひっかかる)とガバっと全部取れます。できれば、純正オーディオが落ちないように、手で抑えながら外してください。

分解、シフトノブ

シフトノブを外します。上のプラスチックボタンは左右2個所のツメで止まっています。パネルと同様の仕組みですが、ツメがけっこう長いです。おそらく2箇所同時に外さないとボタンが取れません。私は右上と左下にドライバーを差し込んで外しましたが、無理な力が掛かってる感じがしますね。何かいい方法があるのでしょうか…。

ボタンを外すとバネと白い土台(これらは変な粘着物でくっついている)が見えるので回して外します。その下には12mmナットがあるのでディープソケットを使って(ソケットじゃ届かないのでここだけは工具が必要)外し、シフトノブを上に持ち上げて外しましょう。

改造、シフトパネル

シフトパネルは4つのネジで固定されているので、全部外せば持ち上げて外せます。パネルは2つの板が上下にあるツメで噛み合ってるだけなので外してやると、+と−の印字された青ボタンが見えると思います。青いボタンは黒いプラスチックを取り除き、表から押せば取れます。

しかし+と−の位置を入れ替えてはめ直しても入りません。−の方は土台が湾曲しており、ボタンもよく見ると同じ形ではありません。どうやらシフトパネルの湾曲に合わせているようです。細かいなー。

仕方ないので黒い柱はニッパーで切り、青いボタンの土台も削って適度な大きさにした後、アロンアルファを流し込み(表まで垂れないように)固定します。青いボタンが取れるとまた全部分解しなければならないので、しっかり着けましょう。

改造、コネクタ

+と−のボタンの下に目的のスイッチがあります。スイッチに繋がっている線を見ると同じ色の線があります。これが回路駆動用の電源コードで、違う色のコードが信号用のコードです。

コードを追うと、助手席側に固定されたオスコネクタに辿り着くと思います。このコネクタからさきほど確かめた色の信号線を引き抜いて交換します。が…オスコネクタががっちり固定されていまして、固すぎて取れません。

私はクルマ側から来ているメスコネクタのコードを入れ替えました。コネクタ内はストレート結線っぽいので問題ないはずです。どのコードが信号線か入念に確かめた上で、コネクタの裏からマイクロドライバのマイナスを突っ込んでツメを押します。情けは無用です(すごく固い)で線がうまく抜けたら差し替えて、コネクタを元に戻します。ドライバーを折って怪我しないように。

ちなみにコネクタを破損してしまうと、まったく変速できなくなるので注意してください。コネクタを抜いた状態でDに入れて、家の周りでも走ってみたらわかりますが、自動変速モードにならず、シーケンシャルシフトも効きません。ずっと1速のままです。

復元

うまく+と−を逆出来たら、勘と記憶を頼りに全てを元通りに組み立ててください。私は形が同じで色だけ違うネジを間違えて組み付けてしまいました…。あーあ…。

これから作業する人は勘と経験ではなく、分解しながら写真を撮っておくことを強くお勧めします。

使用工具一覧

使用した工具の一覧です。

ドライバー
プラス、マイナス両方とも
マイクロドライバー
なければマイナスのみでOK
ピンセット
ネジを落とさないようにする
懐中電灯
FTOの室内灯は暗い
ラチェットハンドル
単なるハンドルでもいい
ディープソケット
シフトノブの12mmナット回しに必須
マイクロプライヤー
なくても平気かな
ニッパー
爪切りで代用可能
アロンアルファ
ボタンの加工時に使用
ヤスリ
角を落としたほうがいいものがあります
編集者:すずき(2023/09/30 15:26)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月22日

外の世界

自作エミュレータに外部とのアクセス手段を足そうと思い、ARM Versatileに載っており、かつLinuxのドライバが存在するハードを調べてみたら、

  • NORフラッシュ
  • MMC(SDカードみたいなもん)
  • Ethernet

NORフラッシュなら簡単かなーと思って調べ始めたら、ちょっと甘かったです。

Versatileのメモリコントローラの仕様書には16bitフラッシュの型番が載っていて「対応してる」と書いてあります。つまり16bitフラッシュをエミュレーションすれば良いはずです。

NORフラッシュにはコマンドという概念があって、特殊なアドレス+特殊なデータをwriteすると、コマンドとして解釈されます。コマンドによって、容量とか8bitなのか16bitなのか調べたり、ブロックをEraseしたりできるわけです。

試しにLinuxのドライバを動かして、CFIというJEDECの規格に載っているQueryコマンド(CPUからFlashへ、容量やらビット幅を尋ねるコマンド)を送るとき、どんな動きをしているか見ると、

  • CPUからは32bit幅でアクセスされる
  • コマンドのアドレスは32bit品か、16bit品のものを2倍した値(0x000154 = 0xaa << 1)
  • コマンドのデータは16bit品のものだが、上位16bitと下位16bitに同じデータが入る(0x00980098)
    32bit用であれば0x00000098でなければならない

このように一見32bitに見えて、コマンドのデータが全然違う値なので、最初はさっぱり意味がわかりませんでした。

もしデータ幅と同じ32bitフラッシュが接続されているのであれば、下記の図のように接続されていて、使用するコマンドは32bitフラッシュ用のデータになるはずです。


32bit NORフラッシュの接続例

しかし仕様書にはどう見ても16bitフラッシュの品番が書いてありますし、実際に発行しているコマンドも16bitフラッシュ用のデータです。

ハードに詳しい方はお気づきかもしれませんが、おそらくCPUとNORフラッシュの間にいるメモリコントローラが一枚噛んでいて、下記の図のように16bitフラッシュに2発同時アクセスして、32bitデータを扱えるようにしていると思われます。


16bit + 16bit NORフラッシュの接続例

アドレス線は共通(ただし下位1bitは捨てる)で、データはコントローラ側で分割(Write時)、結合(Read時)される仕様です。

CPUから見ると1度に32bitのデータを扱えるように見えますが、あくまでも接続されているのは16bitフラッシュですので、アドレスとデータは16bitフラッシュ用のものにしなければなりません。1つ目のフラッシュと2つ目のフラッシュ双方にデータを送る必要があるため、上位bitと下位bitの両方にデータを入れていた訳です。

とまあ、こんな具合でreadは簡単(?)に出来ましたが、writeを調べたらerase, writeのパターンが多くて、ちょいと大変そうです…。

余談

Flash ROMのハードウェア仕様上のアドレスは、ワードアドレス(つまり2バイトでアドレスが1増える)ですが、仕様書のコマンドの説明はバイトオフセットで書いてありました。少なくともIntelとMicronの仕様書は。

従ってエミュレーションする際はバイトアドレスを使った方が、仕様書と数字が一致して読みやすいです。ハードウェアのアドレス線がどうなっていようが、ほとんど気にする必要はありません…。

編集者:すずき(2015/12/10 01:46)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月24日

日記のPermanent Link先

このサイトの日記には「permalink」というリンクを出していて、リンク先はあらかじめ保存しておいたHTMLファイルへのリンクとなっています。

内容は同じですが、動的に生成するトップページに比べ、permalink先は単なるHTMLファイルですので表示が速いはずです。実はきちんと測ったことないので、どれくらい速いかまでは知らないですけど…。

で、permalinkのリンク先であるHTMLファイルは、今まで記事を書くごとに手動で更新していたわけです。しかし面倒だし良く忘れてリンク切れになるし、ロクなことがないので、自動更新するように変えました。

現状は自宅サーバから更新を掛けており、昼と夜の1日2回更新です。たしかSakuraのサーバでもcrontabを設定できたはずですが、書き方が悪いのか動かなかったので放棄しました。

編集者:すずき(2015/11/26 01:15)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月26日

ARM向けクロスコンパイラを自分でビルド

目次: GCC

自作ARMエミュレータでLinaroのクロスコンパイラで作ったバイナリを動かすまでは道が遠すぎて(ARMv6, Thumb-2, ARMv7の実装が要る)、すぐに出来そうにないので、

ARM9用のgccとglibcをビルドすれば良いんじゃねー?と軽い気持ちで始めたのですが、エラー大量発生&何を変えたら直るかさっぱりわからず、悪戦苦闘でした。

一応libc付き&スタンドアローンで動作するARM用クロスコンパイラが作れましたが、疲れましたね…。

Linaroはcrosstool-NGを使っているようです。次はこれも試してみようと思います。自前でやって苦戦した今だからこそ、ビルド自動化ツールのありがたさが理解できるはずです。

GitHubに怒られた

適当にgccとlinuxのソースtarballをGithubに叩き込んだら、Githubに「デカいファイル置くな」って怒られた…。

GitHubにpushした時の警告
remote: warning: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com/
remote: warning: See http://git.io/iEPt8g for more information.
remote: warning: File gcc-shared/gcc-4.9.2.tar.bz2 is 85.77 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB
remote: warning: File linux-headers/linux-3.18.11.tar.xz is 77.21 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB
remote: warning: File gcc-shared/gcc-4.8.4.tar.bz2 is 82.23 MB; this is larger than GitHub's recommended maximum file size of 50.00 MB

メモ: 技術系の話はFacebookから転記しておくことにした。

編集者:すずき(2023/09/24 11:42)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月28日

さようならnottv

ドコモ、NOTTV/モバキャスを2016年6月に終了 周波数は返還 - ITmedia Mobileを読んで。

ニュース見てnottvの開始時期いつだっけ?と思って調べたら2011年でしたから、約5年で終わってしまったんですね。

テレビ放送は放送局の都合で番組が流れるだけですが、VoDなら見たい番組をすぐに見ることができるわけで。どちらも有料なら、テレビ放送は選ばないですよね…。

メモ: 技術系の話はFacebookから転記しておくことにした。

編集者:すずき(2015/12/27 19:44)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



2015年11月29日

Facebookにも意外と書いていた

Facebookでの2013〜2014年辺りの書き込みを、この日記にも転記しておきました。

大した数ではないだろうと甘く見ていたら意外と数が多くて、結局50個近くのエントリを作る羽目になりました。うーん、疲れた……。

編集者:すずき(2015/12/01 01:09)

コメント一覧

  • コメントはありません。
open/close この記事にコメントする



こんてんつ

open/close wiki
open/close Linux JM
open/close Java API

過去の日記

open/close 2002年
open/close 2003年
open/close 2004年
open/close 2005年
open/close 2006年
open/close 2007年
open/close 2008年
open/close 2009年
open/close 2010年
open/close 2011年
open/close 2012年
open/close 2013年
open/close 2014年
open/close 2015年
open/close 2016年
open/close 2017年
open/close 2018年
open/close 2019年
open/close 2020年
open/close 2021年
open/close 2022年
open/close 2023年
open/close 2024年
open/close 過去日記について

その他の情報

open/close アクセス統計
open/close サーバ一覧
open/close サイトの情報