2020年9月16日水曜日

移住検討

現在、東京(千代田区)の会社に東京(足立区)のマンションからリモートワークをしていますが、そろそろマンションという高級サブスク(月額約8.5万円)にメスを入れることを考え始めました。

「リモートワークが普及してもUターンする事例が意外と少ない」みたいな記事をチラホラ見ますが、最低1年ぐらいは状況を様子見しようと思っている人が多いのではないかと思います。(私もそのクチです)

やはり、引っ越しは大変なので。

(実際、去年大変でした...)

社会情勢的に今の働き方で固まったと認識できた人々から徐々に、民族大移動していくのではないかと予測してます。

私が現在住んでいる足立区は、家賃が安い割に(場所によっては)都心にも通いやすい良い所です。自宅最寄り駅(綾瀬)は千代田線の始発本数が多く、勤務先(大手町)まで乗換なしで20分程度で行けるので、リモートワークで無ければ恐らくベストチョイスだった筈です。

綾瀬の1ルーム家賃相場は7.05万円ほど。

都心への通いやすさを加味すればかなりリーズナブルだと思います。(私が引っ越してきた去年は6万円台だった気がするので最近少し上がったのかな?)

しかし、「都心への通いやすさ」を考慮しなくても良いなら、もっと良い選択肢がある筈。

という訳で、以下4パターンの移住候補を考えてみました。

  • 実家(静岡)
  • 千葉(総務快速線の駅近)
  • 別荘定住
  • 熱海あたりのリゾートマンション

(候補1: 実家)

  • メリット: 家賃フリー
  • デメリット: 東京に通い難い(片道2〜3時間)

都心に行く頻度は減ったとはいえ、取引先によっては「会議は対面で」って所もまだありますし、社用で出社しなければならないことが(ハンコ以外にも)しばしばあります。

ハンコについてはさっさと日本から無くしたいのですが、ハンコ問題は取引先もセットで対応しないと意味がないので難度が高いです。「アナログハンコの契約書は法的に無効に出来る」とか、ある程度強制力のある形で公的に推進していかないと解決しないと思うので、法律を作る人たちに頑張っていただきたいです。いや、既にハンコ撲滅に向けて頑張って頂けているものと信じておりますが何卒...ハンコの陰影や筆跡なんてフォトショとかで簡単に偽造できるので、法的に無効化するための根拠は既にあるんじゃないの?と無責任なことを言ってみる。

実際、リモートワークになってから約半年間で13回の出勤と1回の出張をしました。

月平均にすると2.3回、週平均だと0.5回ぐらい。

今ぐらいの頻度なら静岡からでも余裕ですが、これが月平均10回以上とかだったりするとキツイ。(流石に10回は超えなそうな雰囲気ですが)

(候補2: 千葉)

今後、出勤頻度が上がってしまうパターンの候補も一応考えてみました。コンセプトは今より少し通うのが大変になるけど家賃や生活費がお得そうなエリア(長い)です。

そのコンセプトだと千葉あたりが良さそう。

千葉と言ってもメチャクチャ広いですが、具体的には総務快速線エリアが東京へ通いやすくて良さそうです。

千葉駅〜東京駅までは距離がそこそこ(だいたい38kmぐらい)ありますが、総務快速線は市川〜千葉の区間でトランザムするので、総務快速線沿いの物件なら東京にも通いやすくて家賃も安いです。

現在の総務快速線沿線の家賃相場(ワンルーム・1k)を調べてみたところ、以下のような感じでした。

  • 錦糸町 9.54万円
  • 新小岩 7.24万円
  • ---- ここまでが東京(ここから千葉)----
  • 市川 6.77万円
  • 船橋 6.60万円
  • 稲毛 6.28万円
  • 千葉 6.40万円
  • 東千葉 5.14万円
  • 都賀 4.28万円
  • 四街道 5.11万円
  • 物井 4.13万円
  • 佐倉 4.82万円

錦糸町より先(〜東京まで)は平均10万円以上なので省略してます。

また、東京から先の神奈川方面(横須賀線)は、相当西側まで行かないと安くならないです。

例外的に保土ヶ谷がそこそこ安め(5.49万円)ですが、あの辺は坂が多いので体力が無いとキツイかもしれません。駅伝で有名な権太坂が保土ヶ谷と東戸塚のちょうど中間地点ぐらいにあり、昔権太坂近辺の寮に住んでましたが、毎日坂を登っていたような記憶。寮長さんがバリバリの退役軍人だったらしく、カジュアルな軍隊気分のノリが味わえる良い寮でした。(ちなみに各部屋に風呂 and キッチンは無いですが、大浴場と食堂がありました)

マッスルタウン(保土ヶ谷)を除けば、逗子を超える辺りまで行かないと安くなりません。逗子ですら平均7万円します。日立製作所の大きなIT関連の工場(?)が戸塚にあり、その関係であの辺は所得レンジが高いのではなかろうか...と勝手に想像してます。

ついでに、神奈川方面なら横須賀線よりも東海道線の方が良いです。(当時、神奈川に住んでいた時の感覚では、横須賀線=鈍行、東海道線=快速みたいなイメージ)

東海道線沿線なら大船(6.53万円)あたりが千葉とだいたい同じぐらいの家賃相場です。ただし、通勤ラッシュ時間帯の東海道線の混み方は尋常ではない水準でヤバかった記憶がありますが、今でもあのままなのだろうか...

千葉〜東京の距離(約38km)に近い東海道線沿線の駅は戸塚(東京まで約40km)ですが、日立城下町戸塚の家賃相場はそこそこ高い(7.01万円)ので、神奈川 vs 千葉なら千葉(6.40万円)の方が微妙にお得です。

(候補3: 別荘定住)

  • メリット: 豊かな自然etc
  • デメリット: 厳しい自然etc
  • デメリット: 場所によっては実家からより東京へ通い難い

誰もが一度は憧れる(当社比)別荘定住も考えてみましたが、現実的には無理かなと。

そもそも別荘を持ってないので想像ですが、やはり別荘は定住するものではなく、行楽に行ったり、気分転換しつつ仕事をしたい時に行く(ワーケーション?)ぐらいの利用頻度が良い感じだと思います。

(候補4: 熱海のリゾートマンション)

  • メリット: 東京まで通いやすい(新幹線で乗換なしで大手町へ行ける)
  • メリット: 充実した共有設備(温泉・サウナ・プール・フィットネスなど)
  • デメリット: 買えば安いが借りると高い(けど、買うと負動産一直線)

都心までの通いやすさを考えると、熱海あたりが良さそう。

熱海には数十年前に流行したリゾートマンションがかなり安く売り出されています。

ただし、リゾートマンションは共有設備がゴージャス過ぎる関係で固定費(管理費・修繕積立金)が高く、そろそろ築半世紀程度の物件もある関係で大規模修繕リスクもありそうなので、買うのは得策ではないと思います。

買うのがダメなら借りれば良いのでは?と思って調べてみたら、そこそこお手頃な価格の物件がありました。ただし、東京で暮らすのとあまり変わらない程度の支出になりそうです。物価もそんなに変わらないので、もしかすると東京で暮らす方が支出を抑えられるかも。

物価については、東京でも足立区・葛飾区あたりなら下手な田舎よりも安いです。実際私の食費は自炊に切り替えてからは珈琲、おやつ、酒などの嗜好品(※タバコ代を除く)込みで、1ヶ月あたり2万円台程度に抑えられました。(田舎だと地元産品でも謎ブランディングをしていて高かったり、競合が居ない or 少ない所だと東京のスーパーよりも高かったりします)

充実した共有設備の中で生活できる事に価値を感じるなら、一考の余地があるかもしれませんが、私の性格上、マンションの共有設備は行くのが億劫になってほぼ行かなくなりそうなので、支出に見合う頻度の使用ができなさそうだなと...

「遊びのつもりでとりあえず2〜3年だけ住んでみる」と割り切り、2〜3年後に決心が鈍らないように定期借家物件(契約期間 = だいたい2〜3年経過後に原則契約の更新が出来ない特定期間限定滞在向けの物件)にしてみると良いかもしれません。定期借家物件だと更新できないデメリットの変わりに(グレード比で)賃料が安めだったりします。

(結論)

結論は保留(あと半年は様子見したいところ)ですが、やはり実家かなぁ...

9月11日〜15日に夏休みを取得して帰省、16日〜18日に実家でリモートワーク、19日〜22日の4連休の中頃に東京帰宅というプランを試してみている所ですが、今後半年間、機会を見て何度かこういう実地試験をしてみようと思っています。実家は一軒家なので、テレカンで声を張ることができることに加え、ネット環境も東京の自宅より若干強いので、むしろ東京よりも働きやすいのではないかと予測中。

仮にこういう感じで地方移転する人がどっさり増えれば、2040年には行き詰まると言われる地方財政も持ち直せるのではないだろうか?地方行政サイドにしてみれば、リターン(経費)が必要なふるさと納税よりもお得な形で税収ゲットできる事になるので。

2020年8月29日土曜日

東方VGS(Bach)

 先週ぐらいからVGSのMML打ち込み作業のリハビリ(?)がてら、作りかけだったゴールドベルク変奏曲の続きを作り始めてみました。

Variation 13 (先週)

https://github.com/suzukiplan/tohovgs-cli/commit/f3550f245791a0ad5b0a8df26ffaf186e96a72d6

Variation 14 (今日)

https://github.com/suzukiplan/tohovgs-cli/commit/c5ceb067c244f7699b46cd58d4d1bb12c3f2d63e

もうVariation 15に取り掛かってますが、Variation 15は重めのカノンなので結構時間が掛かりそうです。ですが、Variation 30まで週一ペースをキープしたいな...(本業が鬼のように忙しくならなければ多分イケる筈)

ゴールドベルク変奏曲が終わったら次は何をやろうか。

今やりたいと思っているのは6つのパルティータ(6つとも)です。

そのうち東方にも手を出すかもしれません。というか、東方永夜抄の中盤あたりからの曲は色々と病んでいる時に作った関係でかなり手直ししたい部分がある...なので、再び東方に手を出すとしたら作成済みの曲の手直しになるかも。

何より、新規で耳コピするのはダルいですし(本音)

耳コピといえば、最近ラブライブの曲をチマチマ耳コピしてます。

ベースの練習用にベースパートのみですが。(なお、ベースの演奏はかなり下手クソな模様)

ベースパートの耳コピは音だけで拾おうとするとかなり難しいので、拾いやすいメロディーパートを先に耳コピして、曲の構造を洗い出し、理論から半分推測でベース音を当てはめるという回りくどいやり方でコピーする(東方の耳コピもそんな感じだった)のですが、Logic Pro Xに音源を取り込みイコライザでベースブーストのエフェクトをかければベース音をメロディーと同じように比較的簡単にコピーできることに最近気づきました。

この技を使えば東方の耳コピも以前よりはだいぶ楽にできるかも。

2020年8月25日火曜日

最近のコーヒー事情(自宅&外)

アイスコーヒーが好きなので、ほぼ年中飲んでます。

在宅勤務になる前は、主に喫茶店とコンビニコーヒー。

在宅勤務になってからはUCCの「職人のコーヒー」という930mlペットボトル。ペットボトルは1本78円で買えるのでお財布に優しい反面、洗って潰して捨てるのが中々面倒臭い。フニャフニャのペットボトルなら良いのですが、コーヒーのペットボトルって固いので潰すのが面倒臭い。玄関口に並んでいる「捨て待ち」の空ペットボトルがどんどん溜まっていくのを見ていると憂鬱な気分になります。さてどうしたものかと思っていたところ、近所のヨーカドーで水出しアイスコーヒーポットなるものを発見。

https://www.monotaro.com/p/4337/4486/

近所のスーパーで400g 298円の安いコーヒー粉を使って作ってみたのですが、メチャクチャ美味しい。200〜300円ぐらいで飲める喫茶店のアイスコーヒーより断然美味しい。昔、品川駅で待ち合わせをしていた時にウッカリ間違って入ってしまった意識高い系のコーヒー専門店で飲んだアイスコーヒー(1杯800円近くしたブルジョア向けの高級品)と同じぐらい美味しい。1杯800円相当のコーヒーが約4リットルで298円と考えれば激安。

廃棄についても一般ごみしか出ないので楽です。

ただし、抽出に時間が掛かる(1回の抽出に8時間掛かる)ので、2本導入してアクティブ・スタンバイのクラスタ構成にする方向で検討中です。

自宅のコーヒー環境は完璧ですが、問題は外の喫茶店。(在宅勤務に切り替わった影響で全然気づかなかったのですが、いつの間にかタバコが吸えなくなっていた...)

2020年8月22日土曜日

エアロバイク導入

 毎週土日に水元公園という近所の公園(23区で一番デカイらしい?)を組み込んだ15km前後のサイクリングコースを周回していました。

(コース)

  • 水元公園まで: 5〜6km前後
  • 水元公園内: 3kmぐらい
  • 帰宅: 5〜6km前後

地形を覚えるため、Googleマップなどは使わず物理マップを脳内マッピングしながら進んでいる(なので、かなり高確率で迷う)ので、公園内以外の距離はあまり正確ではないです。多分、片道で10kmぐらい走ることもあります。なお、公園内は人が多いのでインターバル(クールダウン)区間と割り切ってゆっくり安全運転してます。水元公園は、大きな溜池、北海道のような平原、森林などがコンパクトに詰まった走っていてとても気持ちが良い区間だから、ゆっくりと走らなければ損だとも言えます。

かなり良い運動になります。
春先は良かったのですが、自粛モードが解除されたぐらいの頃から、色々と懸念が出てきました。
  • 事故が怖い(一応なるべく車通りの少ないコースを選定しているが7月以降は交通量が気持ち多めで怖い)
  • 雨の日はできない
  • 日中は光化学スモッグ注意報がしばしば発令されている
  • 事故回避のため夜間はNG
  • マスクがかなりキツイ(これは運動目的だと高山トレーニングのような効果があるので逆に良いことかもしれない)
  • 水分補給コストの問題(750mlでは全然足りず、汗の量から多分1Lよりも多めに補給する必要があるけど、そんなデカイ水筒は持ってない & 自販機で買うと高い)

という訳で、秋ぐらいまでは毎週恒例だったサイクリングを暫くお休みすることにしました。

ただ、在宅勤務で運動不足気味だし、思いっきり運動しないと寝付きが悪いので、さてどうしたものか・・・と、考えていたところ弊社の取締役が「エアロバイクはいいぞ」と勧めてきたのでAmazonでエアロバイクを物色してみたところ、以下のSTEADYという商品が気になったので買ってみました。

https://www.amazon.co.jp/dp/B07HNVVZ38

購入を決めたポイント

  • 静音性の評価が高い
  • iPadを見ながら使える
  • サイズ感

静音性についてはマンションなので必須事項です。幸い私の自宅(4F)は1〜3Fが商業施設(メディカルモール)で隣室が看護師の休憩所っぽいので、音の面はあまり問題ないかもしれませんが、以前リモート会議で喋っていたら隣室で休憩中と思しき看護師から軽く壁ドンされたことがあるので、あまり音が出るヤツは避けたほうが良さそうだなと。

iPadを見ながら使える事もかなり重要です。昔、ジム通いをしていた時期があるのですが、風景が変わらない状態で走ったり漕いだりするのはとにかく退屈だからすぐに飽きてしまう(なのでジムでは水泳中心でした)ので、iPadでdアニメでも見ながらやれば飽きずに漕げるかなと。

サイズ感については、折りたたんだ状態ではなく広げた状態のサイズ感を重視しました。折りたたんだり仕舞ったりしてしまうと、出すのが面倒臭くてタンスの肥やしになると考えられるので、ベッドルームに常にセットアップした状態で配置可能な程度のサイズであることが重要です。

とりあえず、数日使ってみたところ、以下のような使用パターンで定着できそう。

  • 朝、起床後にアニメ1話(約20分)をみながら重さ7の設定で漕ぐ→汗びっしょり
  • 昼ごろは気が向いたらちょくちょく重さ6以下で5分ぐらい走らせる→ストレス解消
  • 夜、風呂前にアニメ1話(約20分)をみながら重さ7の設定で漕ぐ→汗びっしょり

ちなみに、重さは8段階で最大が8で、7は最大より1個軽い設定です。

毎日ルーチン的にやれるようにするため、意図的に筋肉がつかないように(筋肉痛にならないように)調整したつもりだったのですが、何か股関節あたりが筋肉痛っぽい感じになってしまったので、もっと軽くした方が良いかもしれません。Amazonのレビューに少し書かれてましたが重めの設定だと負荷バランスがあまり良くはないかもしれません。ただ、軽め(6以下)だとアニメ1話では汗びっしょりにはならないので、プロテインでも飲んだ方が良いかも。

2020年8月17日月曜日

東方BGM on VGS(コマンドライン版)

コマンドラインで動作する東方BGM on VGS(東方VGS)を作ってみました。

https://github.com/suzukiplan/tohovgs-cli

今の所、macOSのTerminal専用です。

Windowsの方がニーズがあるのかもしれませんが、手元に使えるWindowsマシンがない and 今後Windowsを使う予定もないので、どうしてもWindowsで使いたい場合、頑張ってポーティングしてください...(Linuxであれば私のメインマシンがmacOSからLinuxに変わったら対応予定)

プレイリストを簡単に編集できる形にしておいたので、好きな曲だけ任意回数ループさせたりといった細かいカスタマイズが簡単にできます。

在宅勤務のお供などにどうぞ。(その目的で自分用に作ったものだったりします)

2020年8月2日日曜日

Z80での PUSH/RET について

Z80エミュレータのテストのために作ったゲームギア・エミュレータのテストの過程で、ゲームのコード解析を結構したのですが、その中で面白かったテクニックとしてPUSH/RETというものがあります。

PUSH: スタックにデータを格納する命令
RET: CALL元へ復帰する命令

RETはCALLから復帰するための命令ですが、戻りアドレスはスタックから取り出すので、「スタックからPOPして得られるアドレス値へジャンプする命令」と解釈することもできます。

つまり、アドレス値をPUSHしてからRETを呼び出せば、「PUSHしたアドレスにジャンプ」することができます。6502には、任意メモリに格納されたアドレスへジャンプする命令が存在しないので、6502であれば割と有用なテクニックだったといえます。

ただ、Z80のプログラムでこのテクニックを利用する意味が分からないです...Z80であれば、任意メモリに格納されたアドレスへジャンプする命令(JP (HL) など)が存在するので。

性能面についても、PUSH/RETを使うメリットはありません。
そもそも、スタックアクセスが遅いので。

例えば、アドレス nn に格納されているアドレスにジャンプしたい場合:

(PUSH/RET)
LD BC, $(nn) ... 20Hz
PUSH BC ... 11Hz
RET ... 10Hz
合計: 41Hz

(JP (HL))
LD HL, $(nn) ... 20Hz
JP (HL) ... 4Hz
合計: 24Hz

上記のように、PUSH/RETだと「17Hz」もの無駄クロックを消費してしまいます。
PUSH(スタックアクセス)がそもそも重い上に、RETも(スタックアクセスするので)重いので、PUSH/RETでは性能的な意味での恩恵が得られることは無い筈です。

なのに何故、あのゲームはZ80だと一見無意味なPUSH/RETを使っていたのか...謎が深まります。(プログラマがFCに慣れてて、Z80をあまり知らない状態で書いたとかそんなオチでしょうけど)

2020年8月1日土曜日

自前Z80エミュレータのテスト完了

昨年作成したきり放置気味だった自作Z80エミュレータ(C++)でシステムテストを実施して完成させました。

システムテストは、別途ゲームギアのエミュレータを作成して実施しました。(なお、作成したゲームギアについては、現在進行系でゲームギア関連ビジネスが動いているようなので、念のため非公開にしておきます...既に完成度が高いエミュレータなら沢山ありますし)

Z80を搭載したゲーム機なんて沢山あるんじゃないかと思いきや、意外と少なくて、シングルコアで純正Z80を搭載しているのは、調べた限りではSG-1000、Sega MARK III、Sega Master System、Game Gearぐらいのようです。(ゲームボーイがZ80カスタムなので若干惜しい)

そして、その中で私がハードとソフトを唯一持っているのがGGだったので、GGエミュレータを作ることにしました。なお、GGのハード仕様については、以下の資料を読んで把握。
セガのハードは中々面白くて、初代SG-1000の中身はだいたいMSXと同じ構造です。
そして、SM3、SMS、GGはVDP(Video Display Processor)をゲーム向きの専用設計(モード4)に切り替えていますが、ハード構造的にはSG-1000と(ついでに、オセロマルチビジョンとも?)互換性を持たせられる設計になっているようです。

モード4のVDPはかなりシンプルな構造です。
16KBのRAM(VRAM)の中にパターンテーブル、ネームテーブル、OAM(Sprite Attribute)がある形。
ファミコンのハード仕様を理解していれば、容易に理解できると思います。
ファミコンと違ってネームテーブルがかなり扱いやすくなっていて、キャラクタパターン(1byte)と属性データ(1byte)のセット(2byte)で1セルを表現する形になっています。(ファミコンでゲームを作った事がある人なら分かると思いますが、かなりプログラムし易いメモリレイアウトになっています)

GGの場合、MSX相当(SG-1000相当)のモード実装は不要っぽかったので、2週間ぐらいで作れました。(途中4連休もあったので楽勝)
GG Dumperで手持ちのカセットからROMを吸い出して動作検証したところ、手持ちソフトの範囲では10割正常に動きました。(そんなに沢山持ってないのが悔やまれる...)

【動作確認したソフト】
・ベアナックル2
・GG忍
・ソニック・ザ・ヘッジホッグ2
・ドラゴンクリスタル
・デビリッシュ
・魔導物語1(PSG/PCMでちゃんと喋ります)
・魔導物語A
本体が通電不可能なので、今度ハードオフで見つけたら調達予定...
(ついでに検証ソフトも増やしたい)

私の自前Z80の場合、ほぼ実機相当のマシンサイクル単位(実は厳密には少し違うけど...)で同期実装が可能なので、エミュレータ開発者の誰もが苦労する同期実装周りで苦労することはありませんでした。GGの場合、LCDディスプレイ領域は160x144ピクセルですが、内部的には1フレーム342x262ピクセル(NTSC)で処理していて、4Hzにつき3ピクセル描画する形で同期すれば完璧な同期を実現できます。(CPUパワーはかなり消費しますが)

このテスト過程で発見したZ80側のバグがこのPull Requestでfixされています。

先日、このZ80エミュレータにゲームボーイのCPU(LR35902)のコンパチブルモードも実装したので、ゲームボーイのエミュレータも作ろうと思えば作れますね。(作るとは言っていない)

合理的ではないものを作りたい

ここ最近、実機版の東方VGSの開発が忙しくて、東方VGSの曲追加が滞っています。 東方VGS(実機版)のデザインを作りながら検討中。基本レトロUIベースですがシークバーはモダンに倣おうかな…とか pic.twitter.com/YOYprlDsYD — SUZUKI PLAN (...