2013年10月31日木曜日

スーファミの開発環境

を検索してみたが…
65816という言語 - ママ友とランチ日記
SNES研究室 - Vector
マリオ4改造 @wiki - xkasについて
google検索結果

うん。こりゃあ無理だ。そっち方面に進んだ人用だ。
アセンブリとかポケコンで見たことあるわ~レベルでは到底太刀打ちできると思えない。

なおGBAは
Android用エミュレーターについて語る10 - どこかに過去ログ落ちてない?
Androidでエミュレータをやらないか @wiki
emuの検索結果
GBAソフト開発の第一歩

こっちの方が現実的か…どうも暇ができるとギークな趣味に走りたくなるな…


2013年10月22日火曜日

"安全安心"

【悲報】愛知県警生活安全課がTwitterを始めた結果ww(本スレのログなし)

まあ極めてどうでもいい話。
2chまとめ自体はいい意味でしょうもないだけのもの。


"安全安心"ないし"安心安全"という言葉を聞いたのは、アニメ RD潜脳調査室がはじめてだった。
単語それぞれは珍しいものでもないし組合せても特別目新しさは感じないが、しかし二者を並べたものを目や耳にする機会はかなり少ない。
どこかの学生がtwitterで90年代後半から使われだした云々と書いていたので、阪神淡路大震災を契機に作られた言葉なのかと思って少しだけ調べてみた。

神戸大学附属図書館デジタルアーカイブ 横断検索Top
書名:阪神・淡路都市復興基本計画(1995 8月)
書名:安全と安心の経済学(1995 3月)
(なお、同システムの新聞記事検索において、見出し検索では該当するような記事がなく、本文検索では多すぎたので確認していない)

震災(1995 1月)同年の県の計画書以前に、既に出版物があるようだ。
Amazonで該当する書名がないか検索してみた。

Amazon検索結果
食品添加物をへらした安心・安全な食生活をもとめて(1985)

2013.10.22時点での検索結果では、同社の取扱う本の中で上1985年の出版物が一番古いかと思われる。
(もちろんこれ以前に条件に合う出版物があってもおかしくないし、それ以前の新聞記事中に出てきているかもしれない…が面倒くさいのでヤメ)


想像以上に息の長い言葉のようだ。
震災がきっかけだとすればわかりやすい話だなとは思ったが、そうでなかったのは意外。 
まあサービスの受け手の要求に答えようとする言葉としては結構的確なのかもしれない。

このなんとなく誰にでも判り易そうな顔をしている造語は役所の好みそうなところだとは思う。


2013年10月20日日曜日

IME単語登録の品詞

IMEに単語登録する際に気になって一覧にしようと考えたが…
これは深く踏み込むべきではないな。

自ら登録するような場合は、せいぜい名詞(or人名or地名or固有名詞)、顔文字くらいだろう。
俗語、隠語で形容詞や動詞はありそうだが、面倒になったらとりあえず"形容詞"、"一段動詞"にする事とする。
助数詞で"コ"を登録した事もあるから、悩んだら一覧とにらめっこするとする。

品詞 例・説明
名詞 名詞
形容詞 ~い
形容動詞 ~的、~な、を付けることができる
すごい~、すごく~、を付けることができる
主語として使う場合は"名詞"
悩んだら"名詞"にぶちこむ事にした
副詞 とても~、ゆっくり~、多分~、当然~、例えば~、等
述語を評価する語
連体詞 あの~、いわゆる~、大きな(?!)~、等
名詞を装飾する語
あ、だめだもうわかんねえな…
接続詞 だから、けれども、および、さらに、つまり、または、ところで、等
感動詞 まあ、ちょっと、うん、こんにちは、よっこらしょ、等
接頭語 超~、真~、お~、新~、不~、等
接尾語 (彼)ら、(殿)さま、(深)さ、(春)めく、(男)らしい、等
語の後ろに付加されて、派生語を作る、品詞を変える、意味を付加する
------------------ 下5項の面倒くささよ…もう知らんがな…
さ変名詞 決定、等
~する、を付けると動詞となる名詞
ざ変名詞 命、等
~ずる、を付けると動詞となる名詞
形動名詞 自由、皮肉、平等、等
~だ、~な、~に、を付けると形容動詞になる名詞
副詞的名詞 今日、以前、等
副詞的にも機能する名詞(゚Д゚)?
さ変形動名詞 心配、等
単独で名詞となり、~な、がついて形容動詞として利用でき、~する、がついてさ変名詞としても利用できる語(゜∀。)
人名 人名


地名その他 地名
固有名詞 国名、書名、建造物、年号などの類
------------------
あわ行五段 動詞 笑(う)、等
か行五段 動詞 書(く)、動(く)、等
が行五段 動詞 泳(ぐ)、等
さ行五段 動詞 出(す)、等
た行五段 動詞 打(つ)、等
な行五段 動詞 死(ぬ)、等
ば行五段 動詞 浮か(ぶ)、等
ま行五段 動詞 読(む)、等
ら行五段 動詞 乗(る)、等
一段動詞 動詞 得(る)、射(る)、等
もう全部動詞でいいじゃない…
------------------
姓名接頭語 ミスター(ムーンライト)、ドクター(コトー)、等
地名接頭語 新(仲見世通り)、西(荻窪)、等
姓名接尾語 氏、様、殿、等
地名接尾語 市、町、村、等
助数詞 戸、棟、コ、セット、等
顔文字 (´・ω・`)
その他自立語 "げん"を変換して"現元減厳弦"などの候補を表示させたとき等のそれぞれの漢字
慣用句 雀の涙、猫の額、犬死に、立つ瀬がない、~やいなや、等
語が複数集まって、特定の意味を持つようになった句
独立語 独立しても機能する名詞や感動詞(??)
抑制単語 変換候補の中から表示しないものを登録できる
候補を選択後、Ctr+del

変換エンジン――ことMicrosoft IMEに対してそこまで精度を期待している人なんていないだろう。
大概はうまくいかない事を見越して、単語毎に区切って変換するのではないか。
そう考えると全部"名詞"にしたってそんなに変わらないかもしれない。
"単語収集へのご協力のお願い"が空しく感じる…

あれ、助動詞は…?"~しますた"とかどうすんだ…


2013年10月18日金曜日

USB外付HDDの共有が起動毎に解除される

①目的のディスク(例:P:\)を共有した状態でnet shareとしてみる。
e.g.
C:\Users\YUKI\Desktop>net share

共有名       リソース                            注釈

-------------------------------------------------------------------------------
IPC$                                         Remote IPC
D            D:\
P            P:\
Scan         C:\Scan
コマンドは正常に終了しました。

②目的のディスクの共有を一旦解除する。
③下のような内容でbatを作る。
@echo off
net share P=P:\ /grant:Everyone,full
④batを実行した後、再度net shareとしてみた時、①と同じ状態になってるか確認する。

⑤"P_autoshare.bat"とかなんとかって名前で保存し、スタートアップに登録しておく。

microsoft コミュニティ
ITPro net share コマンド


IS11T 雑記

マテヨ…俺は一体何をしていたんだ。
何でこんな事をしているんだ。

root化はプリインストールアプリのアンインストールや凍結を目的としていただけじゃあないか。
卒研の時みたいにgfortranの計算結果をGNUplotで出してImageMagickで加工する必要もなければ、剛性マトリクス法を計算する必要もないし(現実に使えるレベルにするにはスマホでは能力が足らなさ過ぎる上、自分の知識も少なすぎるし)、というか構造計算は構造屋さんの仕事であってちょいの間でやれる事ではないし。
それ以外のプログラミングをしたいわけでもないじゃあないか。
何かが暴走をしていた模様。
最後にAndroidFirewallだけ入れてとりあえずの終了。
カスタムカーネルじゃなきゃ駄目だって?!…もういい終了。
 ノーマルカーネル+カスタムDroidwall+settingsh.sh編集でできるらしいが…終了。
ログ速 rootスレ1 897901(708氏)
必要あるいは興味に応じてその都度ぼちぼち調べる事とする。


以下駄文。落書き。書きなぐり。

Gscript Lite

cpもgrepもそのままだと使えない。(標準のシェルがshだから?)

"cp: not found"がでるなら"busybox cp ~"等にしてやる。

PCからのadb shellによる操作

2ndパーティション内のファイル操作ができない。
cpは"Cross-device link"。
chmodはエラーメッセージこそ出さないがパーミッションが変更されない。
chownはsuになっているにも関わらず"Permitted denied"。

…とりあえずファイルをpushしたらスマホ端末上でいじる他ないのか?

UNIX読み方辞典

相当読み方がわからないコマンド、単語があるし、脳内で適当に読むのが気持ち悪い。

root化したIS11Tの起動時の大雑把な流れ

※ちゃんと実地で確認してないので、包含関係やら解釈やらが間違っているかもしれない。

こちらの方がはるかに正確。が一応理解の為に書く。

通常のLinuxの場合、
ブートローダ→カーネルがinitramfsを実行(?)する→
 /sbin/initを起動→/etc/inittabを基に/etc/rc.d/以下の起動スクリプトを実行
らしい。
またどこかで(笑)/etc/fstabの情報を基に起動時にmount -aを実行するらしい。
参考:initramfsの件fstabの件initramfsとinitrd

一方、Androidではinitramfsの実行までで起動を完了するらしい。
手元のIS11Tで確認しても、/sbin/init、/etc/inittab、/etc/rc.d/、/etc/fstabのいずれのファイル(ディレクトリ)もない。
(但し/etc/init.IS11T.*というファイルが8つ程あるが…関係ないかな
vold.fstabってのはあるな…)
initramfsに手を入れる事はカーネルイメージをいじる事になるらしい。

init.rc内で/system/etc/install-recovery.shを実行している為、起動時の処理を変える…スクリプトを実行するなら、ここを変更するのが理に適っているようだ。
root化されたIS11Tの場合、 install-recovery.shでは/data/root/autoexec.shを実行しているだけである。
つまり、起動時の処理の変更は/data/root/autoexec.shをいじればいいという事になるのかな…。

SDカード上のファイルのパーミッションを変更できるようにしたい

シェルスクリプトをTerminal Emulatorで実行できない。(Permission deniedとなる)参考
sdcard上に*.shを作り権限を変更しようにも、できない。

# mount | grep sdcard
/dev/block/vold/179:1 on /mnt/sdcard type vfat (rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro)
tmpfs on /mnt/sdcard/.android_secure type tmpfs (ro,relatime,size=0k,mode=000)

# ls -l /mnt
drwxr-xr-x   10 root       system           200 Oct 14 03:32 asec
drwxr-xr-x    2 root       system            40 Oct 14 03:30 obb
d---rwxr-x   27 system     sdcard_rw       8192 Oct 14 06:17 sdcard
drwx------    4 root       root               0 Oct 14 03:30 secure

ちなみに、下はそれぞれ右のパーミッションを定義する(ubuntu forumsの該当記事の翻訳)
fmask (ファイルマスク)アプリとファイル
dmask (ディレクトリマスク)ディレクトリ
umask (ユーザーマスク)ファイルとディレクトリの両方

sdcardのマスクが0702の為、パーミッションが0075になっている。
その為にSDカード上のファイルに対してchmod/chownの操作ができないのではないだろうか。
参考
参考ubuntu日本語フォーラム
マウントの際"-o umask=000"オプションを付けるとあるがうまくいかない。
e.g. mount -o umask=0000,remount,rw /mnt/sdcard /mnt/sdcard
かわりに"-o fmask=0000,dmask=0000,..."としてみるがだめだった。
e.g. mount -o fmask=0000,dmask=0000,remount,rw /mnt/sdcard /mnt/sdcard 
参考 Android Enthusiasts 翻訳
参考 is01rebuild @wiki
起動時にマウントするようautoexec.shを加工したが、sdcardのマウントだけでは起動しないアプリ多数。(SDカード上のアプリ)
またtmpfsはいつマウントするのだろう…?



2013年10月13日日曜日

IS11T Terminal Emulator 用slコマンド

IS11T上のAndroid Terminal Emulator用に"sl"コマンドをビルドした。

ターミナルは、16ptで行73、列16。フォントサイズが大きいとずれる。
ソースは こちらその先にリンクされているページからいただきました。


※下はおかしな手順かもしれない。が無経験の為ご容赦願いたい。
①SDK他のインストール
②eclipseでプロジェクトを作る
③コマンドプロンプトからビルド
④スマホ端末へ転送


①SDK他のインストール

この為だけにAndroidSDKをインストールしなおし、NDK、eclipseを入手。
Andreoidアプリを作るわけでもないのに…w
■SDK&eclipse
■NDK
とりあえず。 このへんとか このへんとか このへん

②eclipseでプロジェクトを作る

・[ファイル]-[新規]-[プロジェクト]
 (ない場合[その他]から)
・プロジェクト名を"Sl"にする
 (".project"のみのプロジェクトが出来る)
・-[新規]-[フォルダー]
 "jni"というフォルダを作る
・-[新規]-[ファイル]
 jni以下に"Android.mk"と"sl.c"というファイルを作る

Android.mkは以下をコピー
sl.cは以下をコピー
COLS、LINESはターミナルの列幅次第、usleepはスマホの能力次第で値を適宜変更する。
※"resize"コマンドから列幅を取得できない。export -pでCOLUMNSの項目がない。terminfoがない。
 アプリがログとしてどっかに出力してないかな…?とりあえず固定値を入力するしかなさそう。

③コマンドプロンプトからビルド

※SDK他はC:\Android以下にインストール。ワークスペースはeclipse\workspaceにしている。
 環境にあわせて適宜変更する。

cd C:\Android\eclipse\workspace\Sl\jni
C:\Android\ndk-r9\ndk-build

④スマホ端末へ転送

cd ..\libs\armeabi
adb push sl /data/root/bin

スマホから、
cd /data/root/bin
chmod 0755 sl
chown root.shell sl


2013年10月12日土曜日

IS11T フォント変更


/systom/fonts以下のttfを書き換える。
うずらフォントMigu 1Pがおすすめ。
明らかにサイズの大きい3ファイルが日本語の表示に関わっているとあたりをつけた。
なお"DroidSansFallback.ttf"は中国語?アジア系の言語?のセットっぽい。

フォント名 昇順 サイズ
参考 KB
使用場所
Clockopia.ttf 6
DroidSans-Bold.ttf 189
DroidSans.ttf 186
DroidSansArabic.ttf 35
DroidSansFallback.ttf 3,638 変化不明(中国語意外無関係?)
DroidSansHebrew.ttf 22
DroidSansJapanese.ttf
(以下Ja)
1,145   一部の全角(多分等幅)
ATOKの入力候補、
web上の等幅フォント、
K-9のメール本文
DroidSansMono.ttf
(以下Mono)
116 TerminalEmulator、
ATOKの入力候補、
Xperiaタイマーのカウント部、
K-9のメール本文、
(Ja)より優先される模様
DroidSanstdai.ttf 35
DroidSerif-Bold.ttf 180
DroidSerif-BoldItalic.ttf 185
DroidSerif-Italic.ttf 173
DroidSerif-Regular.ttf 186
MotoyaFallback.ttf.ttf
(以下Fall)
2,801   大部分の全角(多分プロポーショナル)
ATOKのフリック領域、ホーム画面のアイコンラベル、
ファイルマネージャ他、各種アプリ
通知領域(下部のみ)、設定、
ロック画面他、システム関係全般
web上のプロポーショナルフォント、
K-9のメールタイトル
MTLmr3m.ttf 185 モトヤLマルベリ3等幅 丸ゴらしい
sgr.etf 1877 アンタッチャブル。 なんだろう怖い
※"―"は未確認
※グレー文字はweb上の情報
※"等幅"の読みは"とうはば"らしい

JaFall→うずらフォント、Mono→Miguに変更した場合
うずら:ATOKのフリック領域、ホーム画面のアイコンラベル、他
Migu:ATOKの入力候補、TerminalEmulator、他
という混在状態になる…

フォントを変更する場合は3種類のフォント全てを変更したほうが良い。
なお2chMateはフォントの指定ができるからどうとでもなる。


2013年10月11日金曜日

IS11T 着信音変更


以下にディレクトリを作成し、oggないしmp3データを入れる。
 ↓着信音
/sdcard/media/audio/notifications
 ↓効果音
/sdcard/media/audio/ringtones

/systom/media/audio下のnotifications、ringtones内にデータを追加しても、着信音を選択する際のリストに出てくるようにはなる。
しかしremountしてrebootしないといけないので柔軟性に欠ける。
sdcard内なら追加削除がすぐに反映される。
着信音などはいつまでも変更する可能性が残るのでsdcard内で管理する事にする。


2013年10月9日水曜日

IS11T ターミナルエミュレータ、広告ブロック


ターミナルエミュレータのshellをshでなくbashにする

設定→コマンドライン→/data/root/bin/bash
(動くけど、彼を直接指定しちゃっていいのかしらん。
shじゃ色分けしてくれないしオプションも少なくて使いにくい)
ちなみに/system/binにbashをコピーして、ln -s bash shみたくする方法をどこかのページで見た。
でもどこに影響が出る理解していない為、怖いのでやらない。
autoexec.shとかのシェルスクリプトの1行目(シバンというらしい)で/system/bin/shが指定されてるのに、リンク元をbashにしちゃってもいいものなのか…わからん。

設定→コマンドライン→/sbin/bash
にしとこうと思う。こんな感じのがレギュラーな気がする。わからんけどw

広告ブロック

Adawayを使えば以下の利点がある。

・ブロックするか否かをワンボタンで切り替えられる
・ホワイトリストを設定できるので条件判断を細かくできる
・サーバ上のhostsを反映できるので、更新の手間がかからない
・他にもあるかもしれないが知らない

手作業でhostsを編集する場合は上ができなくなる。
が、adawayを使おうとしても、多分system(ここではsystom)が読み込み専用になっているせいでhostsの書き換えができない…
autoexec.shなんかのroをrwにすればいいだろうけど、多分、無防備すぎるんじゃないかな。


ありがたいhostsリスト
コスモノーツ
SmartAll


とりあえず手作業でブロックしとく。

mount -o remount,rw /systom /systom
cd /systom/etc

#上でダウンロードしたのが例えば/sdcard/hosts.txtだったら、
cp hosts hosts.bak
cp /sdcard/hosts.txt hosts
chmod 0644 hosts

#jota等のテキストエディタで編集するなら、
chmod 0666 hosts

#他からダウンロードしたり、自分で作ったhostsリストを追記するなら、
cat /sdcard/hoge.txt >> hosts

#最後に
chmod 0644 hosts
mount -o remount,ro /systom /systom


#随時追記するなら、
echo "127.0.0.1 hoge.hoge" >> /systom/etc/hosts

#hostsをターミナル上で確認するなら、
cat /systom/etc/hosts | less
(Shift+Gで最後尾へ。一発でいかなくても何度か押せば最後尾にいく。
ほぼ間違いなくlessの操作を忘れると思われるのでw→ITProコマンド集"less")


IS11T シャッター音、フォーカス音 無音化

実際、それほど積極的に無音化する理由はないが…
先日せっかく再 root化したので またやってみる。

Terminal Emulatorも入れてみた事だし、ポッケに入るLinux機をぽちぽちするのが楽しいというのが理由らしい理由かもしれない。


という事で、無駄にスマホ操作を多用する。(adb接続してPCのコンソールからやってもよい)
以下使用ソフト、アプリ。(同様の機能があればなんでもよい)

Terminal Emulator
WIFI File Transfer (ファイル転送用)
・SoundEngine Free (音データ無音化用)
・WinRAR (zipファイルを直接編集する用、圧縮率を決められるソフトでないといけない)


①フォーカス音を消す

イ.カメラアプリをPCに転送

/system/app内には/systom/app内からのリンクが入っている模様。
下では/sdcard下にアプリをコピーしたが、まあどこでもいい。 

cp /systom/app/ToshibaCamera.apk /sdcard
・Terminal Emulatorを抜けて、WIFI File Transfer等でPCに転送。


ロ.PC上でアプリを編集

・ToshibaCamera.apkの拡張子をzipに変更
・解凍
・\res\rawフォルダ内の5つのwavファイルをSoundEngine Free等でそれぞれ無音化
 (ファイルを開いてからCtrl+a、編集-無音-無音 を5ファイル毎に)
・ToshibaCamera.zipをWinRARで"開く"
・\res\raw\*.wavを先に無音化したもので上書き
 ※WinRARのウィンドウへD&D後、出てくるオプションで無圧縮を選ぶ事
・ToshibaCamera.zipの拡張子をapkに変更


ハ.カメラアプリをスマホに転送、上書き

・WIFI File Transfer等でスマホに転送
・以下Terminal Emulatorにて

su
mount -o remount,rw /systom /systom
cd /systom/app
mv ToshibaCamera.apk ToshibaCamera.apk.bak
cp /sdcard/ToshibaCamera.apk ToshibaCamera.apk
chmod 0644 ToshibaCamera.apk
reboot

逐次ls -l ToshibaCamera.apkないしToshibaCamera.apk.bakをしながら確認するべき。


二.最後に

カメラが動作する事を確認できたら、/sdcard/ToshibaCamera.apkを消す。


以下蛇足。

apkファイルはzip圧縮されたファイルらしい。
zipを解凍→編集→再圧縮→転送、上書きするとアプリが消える。
無圧縮としても同様。
どうも 署名化という仕組みでアプリの不正な改ざんを防いでいるようだ。
署名化しなおせる(?)ような事もどこかで見た気がするが、かなりの知識が必要そう。

zipのまま編集する際、無圧縮としないと、カメラアプリで撮影後強制終了する。
(wavファイルを参照するときデコードしないからだろうな)

②シャッター音を消す

とりあえず 前回同様、
find -name camera_click.ogg -print

./sdstem/media/audio/ui/camera_click.ogg
./systom/media/audio/ui/camera_click.ogg
./system/media/audio/ui/camera_click.ogg
なんか減ってる…

・nosound.ogg等でぐぐって適当な無音データをもってくる
・PCからスマホにoggファイルを転送する(/sdcard下にした)
・以下Terminal Emulatorにて

su
mount -o remount,rw /system /system
cd /system/media/audio/ui
mv camera_click.ogg camera_click.ogg.bak
mv VideoStart.ogg VideoStart.ogg.bak
mv VideoStop.ogg VideoStop.ogg.bak
mv VideoRecord.ogg VideoRecord.ogg.bak
cp /sdcard/nosound.ogg nosound.ogg
chmod 0644 nosound.ogg
ln -s nosound.ogg VideoStart.ogg
ln -s nosound.ogg VideoStop.ogg
ln -s nosound.ogg VideoRecord.ogg
reboot

・最後に、/sdcard/nosound.oggを消す

もし/data下にoggファイルがあり、reboot後カメラの音が消えていなかった場合、
多分/data内のoggも書き換えればいいんじゃないか

2013年10月7日月曜日

IS11T root化 (BB40)

悲しい事だが[ au 2013 秋冬モデル]にはqwertyキー付端末は出ないようだ…
まだis11tで戦わなくてはならない。