ワードアートの終わりと始まり

f:id:misodengaku:20181209210443p:plain

世間はWord文書にティラノサウルスを挿入できる機能の話題で持ちきりですが、人知れず失われた重要機能もあるようです。

nlab.itmedia.co.jp

失われた重要機能とはなにか?そう、ワードアートです。

今までのワードアート

以前このブログでも書きましたが、Office 2003以前で使用できたワードアートはOffice 2007以降では普通には呼び出せなくなっています。

しかし、ショートカットキーを用いれば依然呼び出すことが出来る状態でした。

misodengaku.hatenablog.com

Office 2016になってからもこれは変わらず、人々が雑にOffice 365へ移行してもワードアートはいつでもAlt+I→P→Wの先で待ってくれていました。

様々なパッケージソフトが次々にサブスクリプションモデルへ移行し、人類が油断しきったこのタイミングで人知れず恐ろしいアップデートが行われました。

ショートカットキーを用いてもワードアートギャラリーが表示されなくなったのです。

f:id:misodengaku:20181209211619p:plain
この画面

終わりと始まり

数ヶ月前、私がこの事実に気付いたときにはショックを受けました。

微々たるアクセスしかないこのブログではありますが、アクセス数のほとんどを占めるほど皆に愛されていたはずのワードアートが使えなくなってしまったのです。

使えなくなったことに気付いてはいたものの、(だるくて)ブログに追記する気にもならず、気がつけば2018年も終わりを迎えようとしていました。

そんなある日、恐竜が暴れ回る記事を見かけていい加減更新するか…となり、記事を書くにあたり10秒ぐらいリサーチを行ったところ、このようなページが見つかりました。

answers.microsoft.com

f:id:misodengaku:20181209212227p:plain

f:id:misodengaku:20181209212455p:plain

人類は無力ではなかったのです。Office 2003(doc)形式で文章を保存すれば今でも昔のワードアートが利用できます。

やっぱり神だなWord MVP。よくよく見てみるとずいぶん古い回答ですが少なくとも今日(2018/12/09)現在では有効です。

詳細な手順

まず、文章を Word 97-2003形式文書 (*.doc) として保存します。

タイトルバーに [互換モード] の文字が出れば準備OKです。挿入→ワードアートなどから今までと同じワードアートが使用できます。

ちなみに、Alt+I→P→Wを押してもワードアートギャラリーは表示されなくなったようです。ツールバーのワードアートスタイルから選択する必要があります。

f:id:misodengaku:20181209213701p:plain

比較としてdocx形式で同じ操作をした場合の画面です。ワードアートツールの内容がつまらないことになっているのがわかるかと思います。

f:id:misodengaku:20181209213529p:plain

残念ながら、今話題の暴れ回る恐竜などの3Dモデルはdoc形式に変換する際に画像化されてしまうようです。3D回転操作ができるワードアートとの違いがいまいちわかりませんがまあ仕方ないでしょう。

f:id:misodengaku:20181209213606p:plain

f:id:misodengaku:20181209214358p:plain

これからのワードアート

結論としてはワードアートは失われていませんでした。始まりと終わりで言ってることが違いますがマジで書いてる途中に気付いたのでとりあえず良しとします。

とうとう切り捨てられたか…と一時は冷や汗をかきましたが、どうやらdoc形式のサポートが切られるまではワードアートと共に戦っていくことが出来そうで一安心です。

NSB-3NR1T1MLVにGentooを入れる

rootで入っていろいろとかやってたんですがいろいろクソで腹立ってきたのでGentooを入れます

準備する物

  • プラスドライバー
  • SATAでディスクが繋げられる適当なLinuxマシン
  • USBシリアル変換
  • Ciscoの機器で使うRJ45できしめんのケーブル
  • WD赤がもったいないと思うなら適当なSATAのディスク

手順1: HDDを抜く

真面目にNASとして使う気は全くないので最初から入ってるWD赤はだいぶもったいないです。というわけでその辺に転がってるHDDに交換します。私はその辺にあった500GBの2.5inchHDDに入れ替えました。

f:id:misodengaku:20180124234222p:plain

分解についてですがケースの隙間に薄くて強いカードのような物を差し込んで分解していくと簡単です。SIMカードの殻が強くて薄く、マイナスドライバーとかでこじるより傷つけづらいのでオススメです。

f:id:misodengaku:20180124230717p:plain

ケース背面角からカードを差し込んでちょっとづつバラしていきます。分解記事の写真を参考に爪を狙って浮かせていくと意外とあっけなくケースが開きます。

https://qiita.com/Diatryma/items/ba407794032dd624130eqiita.com

手順2: HDDにGentooを展開する

実は別にHDD抜く必要はないんですが実際にGentooをインストールするディスクを別の適当なLinuxマシンに接続します。

fdiskあたりで適当にパーティションを整えてmkfs.ext4でもしておきます。

f:id:misodengaku:20180124231901p:plain

ext4でフォーマットできたら適当なディレクトリにマウントしてcdし、Gentooのstage3を落としてきてtar xjf stage3~とでもして展開します。

今回はstage3-armv7a_hardfp-20161129.tar.bz2を使います。適当にJAISTあたりのミラーあたりから落として使うディスクに展開しておきます。

今のうちに展開したstage3内の/etc/fstabを書き換えておきます。

#/dev/BOOT          /boot           ext2            noauto,noatime  1 2
/dev/sda1               /               ext4            noatime         0 1
#/dev/SWAP              none            swap            sw              0 0
#/dev/cdrom             /mnt/cdrom      auto            noauto,ro       0 0
#/dev/fd0               /mnt/floppy     auto            noauto          0 0

こんな感じになっていればおそらくOKです。

展開が済んだらディスクはアンマウントしてNASに繋ぎ、電源が入りそうな程度にNASを組み戻しておきましょう。

手順3: U-bootいじる

本体背面ConsoleポートにCiscoきしめんを接続し、USBシリアル変換で適当なPCに繋いでTeraTermあたりでシリアルポートを開きます。baudrateは115200bps

シリアルコンソールを覗きながら本体の電源スイッチを押すと以下のような表示が出るので即座に適当なキーを押してブートを止めます。

U-Boot 2009.11 (Nov 25 2015 - 09:00:48) GoldenGate SoC ASIC

DRAM:   1 GB
NAND:  512 MiB
In:    serial
Out:   serial
Err:   serial
Net:   Connect GMAC1 to CPU
Goldengate
Hit any key to stop autoboot:  5

キーを押すとU-bootのコンソール画面に入れます。この状態でとりあえず以下の文字列をコピペで投入します。ような感じでubootの設定を書き換えます(よく読んだらMACアドレスもコピペしてたのでいい感じに書き換えてください)。

setenv bootargs root=/dev/sda1 init=/sbin/init console=ttyS0,115200 SB_PHY=PPSS ni_napi_budget=16 qm_acp_enable=0 ni_rx_noncache=0 qm_int_buff=0 ethaddr0=BC:5C:4C:27:A5:9B ethaddr1=BC:5C:4C:27:A5:9C ethaddr2=00:50:c2:77:88:99 wifiaddr0=00:01:73:01:FF:10 wifiaddr1=00:01:73:01:FF:20 mtdparts=cs752x_nand_flash:1024K@0x00100000(uboot-env0),1024K@0x00300000(uboot-env1),1024K@0x00400000(sb0),1024K@0x00500000(sb1),153600K@0x01200000(rootfs),174080K@0x0A800000(rootfs_data),6144K@0x00C00000(kernel2),153600K@0x152000
saveenv
set bootargs root=/dev/sda1 init=/bin/sh console=ttyS0,115200 SB_PHY=PPSS ni_napi_budget=16 qm_acp_enable=0 ni_rx_noncache=0 qm_int_buff=0 ethaddr0=BC:5C:4C:27:A5:9B ethaddr1=BC:5C:4C:27:A5:9C ethaddr2=00:50:c2:77:88:99 wifiaddr0=00:01:73:01:FF:10 wifiaddr1=00:01:73:01:FF:20 mtdparts=cs752x_nand_flash:1024K@0x00100000(uboot-env0),1024K@0x00300000(uboot-env1),1024K@0x00400000(sb0),1024K@0x00500000(sb1),153600K@0x01200000(rootfs),174080K@0x0A800000(rootfs_data),6144K@0x00C00000(kernel2),153600K@0x152000
run bootcmd

おそらく唐突にカーネルのロードが始まってしばらくするとshが起動してくるはずです。これで無事GentooNAS上で動き出しました!

手順4: Gentooの設定

当然Gentooが動いてるというのは嘘でまだカーネル/bin/shが動いてるだけです。この状態で最低限以下の設定をしておきます。

  • passwd root
  • nano /etc/inittabとでもして s0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt100s0:12345:respawn:/sbin/agetty -L 115200 ttyS0 vt100 に書き換える(9600→115200)

よく覚えてないですがだいたいこんなもんでしょう。気が済んだら再起動します。rebootとかは効かないので電源ケーブルを引っこ抜いて再度電源を投入します。

手順5: 起動したら勝ち

電源を入れてみて、ブート中のログに OpenRC 0.21.7 is starting up Gentoo Linux (armv7l) みたいな色つきの文字が見えたらだいたい勝ちです。たぶんログインプロンプトが出てくるので普通のGentooマシンとして使いましょう。

おわり

元々入ってたLinux上でいろいろやったんですけどイライラ度合いが半端じゃないのでおとなしくまともなLinuxを入れましょう

今後の目標としてはカーネルを入れ替えたい さっさとソースコード開示しろ

安全靴生活のすすめ

1年ぐらい前から普段履きの靴として安全靴を履いている。

[ミドリ安全] 作業靴 スニーカー ISA805 静電

安全靴を履いてると他人に言うとよく安全靴!?と言われるが割と普通に生活できるし良いことも多いのでまとめていく

以下はミドリ安全 ISA805を前提とした感想

メリット

  • 何より安全靴なので作業などしてるときに足に物を落としても全く痛くない
  • 一般的な安全靴の印象として足先に鉄心が入っているイメージがあるが樹脂なのでほとんど普通の靴と重さが変わらない
  • 物を落としても大丈夫なのだから東武東上線などの治安の悪い路線を利用する際に他人に足を踏まれても全く問題ない(私が安全靴を履くようになった理由の60%はこれ)。
  • 静電気を靴底から逃がしてくれる、接地している安心感
  • ハイグリップで安心
  • リフレクター付きで夜も安心

デメリット

  • 割とインソールが剥がれてくる
    • 接着しちゃってもいいけどちょっとな、みたいな気分
  • デザインが(あんまり)選べない
    • f:id:misodengaku:20171206032832p:plain
    • 色は割といろいろある
    • 長靴タイプとか紐のとかもあるはず
    • 個人的にはあまり気にしてないので気にならない

総評

デメリットに対して圧倒的にメリットが多いことがわかったので安全靴を買いましょう

静電気対策してへんのはお前だけ

DE10-Nano その2

Web上に転がってる資料がみんなQuartus IIのものでQuartus Primeになってしまった今、微妙にいろんなところが違ってしんどいんだけどめげずに頑張っていきたい

名前は聞いたことあったけど使ったことはなかったIPを使ってみる

一番簡単そうなところでPLLがIPとしてまとまってるらしいので使ってみる

f:id:misodengaku:20170905021455p:plain

Tools => IP catalogでIP catalogを表示させてPLLで検索するとAltera PLLが出てくるのでクリック

f:id:misodengaku:20170905021710p:plain

適当にケツにpllとでも名付ける

f:id:misodengaku:20170905021812p:plain

パラメータを変えてく、変えるべきところはReference Clock FrequencyとDesired Frequencyぐらいだけど50MHz入れたらなんか1MHz強ぐらいまでしか落とせなかったのでとりあえず10MHzを作ってあとは手で回していくことにする。

ついでにEnable locked output portとかいうののチェックを外してみたけど別にどっちでも良さそう、何もわからん

もういいわとなったらFinishをクリックでコードが生成される

f:id:misodengaku:20170905022123p:plain

生成されたコードがプロジェクトに勝手に追加されたかどうかは忘れたけどされてなければする

で、実際に生成されたコードを呼びだそうと思ったけどここがよくわからなくて、結局は雰囲気でこんなコードを書いた

生成されたIPと自分のコードを紐付けるところがよくわからなかったんだけど、要は普通のCとかと一緒で、

module pll (
        input  wire  refclk,   //  refclk.clk
        input  wire  rst,      //   reset.reset
        output wire  outclk_0  // outclk0.clk
    );

こんなモジュールを使いたいときはこう呼ぶ

wire clk0;
pll pll_0(clk_50, , clk0);

これでclk0にPLLから出てきた10MHzのパルスが流れるっぽい。

Cとかと違って指定しなければ未配線になるだけっぽいのでRSTとか知らねえよ的なピンがあったらガンガン無視していくといいっぽいことがわかった。

ところで

ここまで奮闘してきたけどよく見てみたらDE10-NanoのUser Manual見るとかなり丁寧なチュートリアルが載ってるっぽい。

www.terasic.com.tw

このままむやみやたらと殴り合っても勝てる気がしないので今後はUser Manualの通り進めていこうと思います。おわり

DE10-Nanoを買った

15380円でDigikeyからDE10-Nano Kitを買った。

www.digikey.jp

DE0-Nanoとかとどれが良いんだろうと思いながら悩んでいたけど結局一番新しそうな物を選んだ。

https://www.digikey.jp/product-detail/ja/terasic-inc/P0496/P0496-ND/6817231

PYNQとかもいいなと思ったけどなんとなくQuartusを使ったことがあったのでAlteraに。

f:id:misodengaku:20170831213814p:plain

ピン多すぎてなんだこりゃと言いながらLEDをパカパカさせるコードを書いてとりあえず動かしてはみたものの、どうやらSoC側のLinuxが勝手に上がってきたりして制御を持って行かれるらしくよくわからんことになってる。

めんどくさそうなのでLinux側触りたくないけど触らざるを得ない感じだし、最終的にはLinux側と繋げたいからこそSoC乗ってるボードを選んだのでなんとか上手く付き合っていきたい気持ち