Nexus Playerとdアニメストア

Nexus Playerにdアニメストアをキャストしようとすると、E5-2というエラーが発生していた。

のが、いつの間にか解消され、かなり快適に再生ができるようになっていた。


今なら31日間無料のdアニメストアには、他のサービスでは1話300円のレンタルなARIA The ANIMATIONがあるので、人類の財産をお得に鑑賞できてでっかいオススメです。

通信量上限のあるSIMで新規端末の設定をするときに…

久しぶりすぎて、はてな記法とか全部忘れてるな…


Y!MobileNexus 6を購入して、自宅に帰ってから速攻でWiFiにつないで、初期設定をえっちらおっちらやって、一段落してから…


あれ?あれれ?


WiFiの接続が切れてて、全部LTEでアプリのダウンロードをしちゃいました、てへぺろ。700MB!1GB/月の一番安いプランなのでもう今月はLTE使えません、てへぺろ


そんなことにならないように、上限付きSIMで初期設定するときは、機内モードにしてからWiFiにつなぎましょう。


あと、今月からとある会社でソフトウェアエンジニアとして働いてます。ありがとうございます。

自宅警備中


諸事情で勤務していた会社を退職しました。無職です。自宅警備中です。


退職エントリでブクマを稼げる方とは違って、意識高くないですし、毎日だらだらとアニメ見たり、Kindleに積んでた技術書読んだり、映画見たり、アニメみたりして過ごしてます。自宅警備員向きな性格らしく、割りと楽しく過ごしてます。


明日の酒部忘年会もキャンセルしようかと思っていたのですが、なんかキャンセル出来なくなってたので参加することにしたし、そこで色々と説明するのも面倒なので、日記に書いておくことにしました。


しばらく、このままぼぉ〜っと過ごそうと思っています。暖かくなったら再就職先を探そうと思ってますが、年齢的に難しいかもしれませんね。かといって、独立して起業というのも向いていないので、迷う所です。

kobo touchでmruby


Kobo touchでmrubyが動いたのでgithub*1に置いておいた。

  • bin/mrbcをhost用にprebuildしておく
  • cross-compile時にbin/mrbcをビルドしないようMakefileをいじる
  • 大本のMakefileコンパイラをcrossに


そんなけ。CodeSourceryのクロスツールは昔の日記*2を参照。README_KOBO_PORTINGに書いたように、

# ./mruby -v -e 'puts "Hello World."'
mruby - Embeddable Ruby Copyright (c) 2010-2012 mruby developers
NODE_SCOPE:
  NODE_BEGIN:
    NODE_CALL:
      NODE_SELF
      method='puts' (300)
      args:
        NODE_STR "Hello World." len 12
irep 146 nregs=4 nlocals=2 pools=1 syms=1
000 OP_LOADSELF R2
001 OP_STRING R3 "Hello World."
002 OP_SEND R2 :puts 1
003 OP_STOP

Hello World.


みたいな。

Jelly Bean時代のAndroidの行数

前回*13月には960万行だった。

$ find . -name "*.[chS]" -o -name "*.cpp" -type f -print0\
 | xargs -0 -l wc | awk '{sum += $1} END {print sum}'
4637771

$ find . -name "*.java" -type f -print0\
 | xargs -0 -l wc | awk '{sum += $1} END {print sum}'
6453101


1,109万行。150万行くらい増えてる。

$ du . --max-depth=1 -h
9.1G    ./.repo
17M     ./bionic
6.0M    ./build
9.3M    ./system
84M     ./development
30M     ./ndk
12M     ./docs
32M     ./tools
54M     ./sdk
2.5G    ./prebuilts
41M     ./dalvik
310M    ./packages
1001M   ./frameworks
15M     ./busybox
40M     ./libcore
40M     ./device
116K    ./abi
120K    ./libnativehelper
121M    ./cts
40K     ./pdk
40M     ./hardware
4.5M    ./bootable
6.7M    ./gdk
1.6G    ./external
15G     .


全体で15GBだがrepoとprebuiltsを除くと3.5GB。そのうちexternalが1.6GBで、frameworksが1GB。


そんなけ。

AOSPでMIPSエミュレータ

AOSP masterのMIPSパッチが出揃って来たようなので試してみた。lunchコマンドを叩くと、

 $ lunch

 You're building on Linux

 Lunch menu... pick a combo:
     1. full-eng
     2. full_x86-eng
     3. vbox_x86-eng
     4. full_mips-eng
     5. full_grouper-userdebug
     6. mini_armv7a_neon-userdebug
     7. mini_armv7a-userdebug
     8. full_wingray-userdebug
     9. full_crespo-userdebug
     10. full_crespo4g-userdebug
     11. full_maguro-userdebug
     12. full_toro-userdebug
     13. full_panda-userdebug


選択肢がかなり増えている。mini_armv7a_neon-userdebugも気になるが、4を選んで

 Which would you like? [full-eng] 4

 ============================================
 PLATFORM_VERSION_CODENAME=AOSP
 PLATFORM_VERSION=4.0.9.99.999.9999.99999
 TARGET_PRODUCT=full_mips
 TARGET_BUILD_VARIANT=eng
 TARGET_BUILD_TYPE=release
 TARGET_BUILD_APPS=
 TARGET_ARCH=mips
 TARGET_ARCH_VARIANT=mips32r2-fp
 HOST_ARCH=x86
 HOST_OS=linux
 HOST_OS_EXTRA=Linux-2.6.35-32-generic-x86_64-with-Ubuntu-10.10-maverick
 HOST_BUILD_TYPE=release
 BUILD_ID=OPENMASTER
 OUT_DIR=out
 ============================================


これでビルドしてemulatorを起動してみたがカーネルがないと言われる。確かにprebuilts/qemu-kernelにmipsがない。AOSPにはMIPSカーネルリポジトリがなさそうなので、MIPSSDK*1をダウンロードして展開。

 $ unzip android-sdk-r12m-r17m-linux.zip
 $ cd android-sdk_mips_linux-x86/system-images/android-4.0.3/mips
 $ ls
 NOTICE.txt  kernel-qemu  source.properties  userdata.img


このkernel-qemuをコピーして使う。

 $ mkdir ~/android/master/prebuilts/qemu-kernel/mips
 $ cp kernel-qemu ~/android/master/prebuilts/qemu-kernel/mips/


いつもどおりenvsetup.shを呼んでいればemulatorで起動。



だけど。

 $ ./adb devices
 * daemon not running. starting it now on port 5037 *
 * daemon started successfully *
 List of devices attached
 emulator-5554   offline


ということで、adbがつながらない。設定を変えたりkill-serverしてみてもつながらない。ということで特に何も出来ない。本家のソースからビルド*2すれば、もう少し遊べるかもしれないが、また気が向いたら試すということで今日はここまで。

Kobo Touch

Q: koboって何ですか? *1
A: 格安のLinux/E-Ink搭載 i.MXマイコンボードです。

とまで言われているKoboちゃんを購入。すでに色々といじられている*2ように、やりたい放題。


まずオリジナルのmicroSDを抜いてイメージとカードそのものを保存する。

 $ sudo dd if=/dev/sdf bs=32768 | gzip -c > kobo-2g.img.gz

ブロックサイズが32Kなのは、fdisk -lで見てみたらそんなサイズだったから。新しいmicroSDカードをPCにつないで

 $ zcat kobo-2g.img.gz | sudo dd of=/dev/sdf bs=32768
 $ sync
 $ sync
 $ sync

syncは3回。で、koboちゃんに戻して起動………しない。


試行錯誤の結果、microSDカードが古すぎたのが原因のようだ。いつ購入したかも分からない2GBのカードを試験だからと使ったのが敗因で、Google I/O 2010で貰ったEVO 4Gに入っていた4GBを(ほぼ)同じ手順でコピーしたところ、一発で起動した。


ほぼというのは、どうせならということで

 $ sudo gpartd

でVFAT領域を広げて見た。


再度シャットダウンして、microSDをPCに挿し直し、各所で拡散されている通りtelnet/ftp設定*3を行い、rcSのnickel起動前に以下のスクリプトを仕込んだ。

 mkdir -p /dev/pts
 mount -t devpts devpts /dev/pts
 
 /mnt/onboard/run.sh &
 
 # Start usbnet
 /bin/busybox insmod /drivers/ntx508/usb/gadget/arcotg_udc.ko
 /bin/busybox insmod /drivers/ntx508/usb/gadget/g_ether.ko

koboちゃんを再起動して、UbuntuとUSBで接続。

 $ ifconfig usb0 192.168.100.1
 $ telnet 192.168.100.2

でrootでログイン出来ることを確認した。が、すぐに接続が切れてしまう。Network Managerが余計なことをしているようだ。Ubuntuの[設定]-[ネットワーク接続] (nm-connection-editor) を開いてUSB0にスタティックな設定を追加したところ、安定して接続できるようになった。




余談だがusb0でtelnet出来れば、以前cdc_etherでZaurusUbuntuのNAT経由でInternet接続した方法*4で、koboちゃんも外を見られるはず。


最後に、中身を色々と探ってみてファイルを抜き出し、GitHub*5に置いた。


一旦、rcSのinsmodをコメントアウトして再起動。普通に使えるようにした。


雑感。

  • Qt4.8のライブラリがあるように見えるが実はQt4.6へのシンボリックリンクでしかない。
    • どうもAdobeのライブラリがQt4.8を必要としているらしい。
  • CPUはarmv7なのにarmv5でコンパイルされている。もったいない。
  • CPUクロックは160MHz/800MHzの2段階。i.MXは中間がないのかな。
  • RAM 256MBでは最近のAndroidは動きません。