モチベーションが回復してきた
最近モチベーションが下がりに下がっていたのだが、ふとしたきっかけで自転車を乗り始めたり、懸垂の習慣がついてきたおかげか、モチベーションが上がってきた。
最近このblogも全く更新していなかったが、モチベーションの回復に併せて復帰することにしよう
B2Eサービスの開発
ちょくちょく進めているB2Eサービスの開発。 今日はモデル周りをちょっと実装。 それほど複雑なものでjはないので、今月中に実装終わらせてしまいたい。
最近モチベーションが下がりに下がっていたのだが、ふとしたきっかけで自転車を乗り始めたり、懸垂の習慣がついてきたおかげか、モチベーションが上がってきた。
最近このblogも全く更新していなかったが、モチベーションの回復に併せて復帰することにしよう
ちょくちょく進めているB2Eサービスの開発。 今日はモデル周りをちょっと実装。 それほど複雑なものでjはないので、今月中に実装終わらせてしまいたい。
0x4000
fpinscala 3.7 ~ 3.18 まで。
RAMは二つの部分に分けられる * $C000 - $DFFF * $E000 - $FFFF
これらはZ80Aのスタックと一時記憶装置として使われる
上から8個目までのRAMはメモリ管理制御レジスタとして使われる。ゲームプログラムとして使ってはいけない。
前方互換性のため、 RAMは $C000 - $DFFF までのアドレッシングに抑える必要がある。
スタックは $DFF8 に配置される必要がある。
$3E ポートはメモリー使用フラグを制御する。 個々のbitでシステムROM、システムRAM、カードスロット、拡張スロットのメモリを使用できるようにする。
電源ONになったときに、8 kb ROM の$0000から実行がはじまる。 このROMコードは以下のステップで実行される 1. システムが初期化される 2. 小さなプログラムがROMからRAMにコピーされる($C700で) 3. プログラムを実行するために$C700 にジャンプする 4. 全てのROMスペースはdisableされる。そして、RAMにコピーされる ?? 5. ROMスペースはここに設定され、メモリの存在をチェックされる。 それらは以下の順番でチェックされる A. フロントカードスロット B. トップカートリッジスロット C. 後部外部拡張スロット 6. これらの三つのスロットからメモリーは発見され、スロットは使用可能にされる。そしてZ80Aは $0000 にジャンプする 7. メモリーが見つからなければコンソールROMが使用可能にされ、”Insert a cartridge" メッセージがスクリーンに表示される
もし、カードとカートリッジが両方とも接続されていたら、最初にチェックされてカードが優先される
ゲームプログラムはオリジンの$0000 から始まるZ80Aアプリケーションプログラムとして記述される
github.com の続き。
16 kb のビデオRAMは三つの領域に分割できる
明日からCPU実装に入る。
SEGA master systemのJavaScriptで書かれたエミュレータ
[https://github.com/ymizushi/Miracle:title]
が大変参考になる。
このリポジトリの docs
でほぼ必要な情報を入手することができる。
特に重要なのが、mk3man.pdf
だ。
このドキュメントは以下の章から成り立っている。
NMIピンはゲーム機のポーズボタンに接続されており、ポーズボタンを押すことで $66番地のリスタート命令が実行される。
この命令は短銃なサブルーチン呼び出しとして実装されており、プログラムカウンターはスタックにプッシュされ、 $006番地に飛ばされる。
割り込みはエッジ・トリガで、ポーズボタンが押下されたら、一つの割り込みのみ取得することができる。
つまり、連続で割り込みが実行されることはない(前提として、チャタリング回避などのコンデンサがあることが前提と思われる。なので、チャタリング防止のためのコンデンサがMk3にはあるはず)。
NMIの最後の命令は必ず RETN
である必要がある。
ポーズボタンは特定用途で使用する。$0066に制御の移行セットアップ処理を記述する必要がある。
INT => Interrupt IE => Interrupt Enable Bits
今日はCPU。
次は、VDP。
とある分野で秀でるにはその分野においてある種の中毒状態になるのが重要だと思っているが、一方で単なる中毒状態だと目標達成のために必要な情報収集、基礎練習、応用練習が十分にされないこともある。
中毒状態を維持しつつも、中毒におぼれず目標達成のために必要なことを意識することが継続的な成長に重要。
帰りが遅くなると自由時間が減りがちなので、早い出社、早い退社を心がけたい。
人間は生きているとと大なり小なりストレスを感じるが、外的要因でストレスを感じる場合と、内的要因でストレスを感じる場合に大別出来る。
実際に発生している問題とそれで感じるストレスが同じ場所から発生しているなら良いが、実際は外的要因なのに内的要因としてストレスを感じていたり、その逆でストレスを感じていたりすることもある。
これは問題を間違って認識していると言うことであり、PDCAを回す上の障壁になるので取り除く必要がある。
sbtで何故か失敗したので、予定を変更してfpinscalaを軽くやる。 今日は予定があったので、習慣が途切れないように最低限の作業だけやる
10年来の鬱とADHD傾向が改善した 良い記事というか、自分の持論が代弁されていた
人生はディシプリンというか一種の訓練期間だという固定観念を持っていて、それと同時に、より効率的に自身を訓練できる人間がより優れた人間なのだという価値観を持っている
つまりそれは脳に対する血流の低下である
血流の低下に対して効果的な方策というのは、まさに自分がいろいろ調べてたどり着いた結論と全く同一だ。
これらの結論に同様に至ったということは、自分の持論に説得力が出てくるということもあり、以前よりも持論に確度を持たせることが出来た。
理論が正しいなら、あとはどのようにして実践するか、という問題にフォーカスできるということが大きい。
あと、持論として自分は持っていたが明確に言語化出来なかった項目として、様々な種類のインプットとアウトプットを行うというのがある。
特にアウトプットが重要で、以下のようなアウトプットをもっと習慣に取り入れることを今後意識してみる。
JavaFXはOpenJDKに含まれておらず、明示的にOpenJFXをインストールする必要がある。
sudo apt install openjfx
で解決。
git clone git@github.com:vim/vim.git cd vim ./configure --with-features=huge \ --enable-multibyte \ --enable-rubyinterp=yes \ --enable-pythoninterp=yes \ --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu \ --enable-python3interp=yes \ --with-python3-config-dir=/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu \ --enable-perlinterp=yes \ --enable-luainterp=yes \ --enable-gui=gtk2 \ --enable-cscope \ --prefix=/usr/local make VIMRUNTIMEDIR=/usr/local/share/vim/vim80
スプラトゥーン2は競技ですが、競技であることから当然、スランプというものがあります。
スランプに陥った際にいかに素早く脱出出来るか、ということは練習の効率を上げる意味でも重要です。
備忘録も兼ねて、スランプに陥った際にやることをまとめてみます
まずいちばん重要なことは休むことです。
スプラトゥーンは気力と体力を消耗しますが、熱中していると意外とその消耗に気づかないことがあります。
睡眠時間が短い期間が長引くと、眠くなくても集中力が落ちている可能性があります。
十分な睡眠や休息を取りましょう。
スランプに陥る原因として、PDCAを回す習慣が抜けてしまった可能性があります。
PDCAを回さない期間があると、ある程度手癖で勝てる期間が過ぎた後に、勝てなくなる期間が続くことが多いです。
PDCAを回さないとすぐに勝てなくなるというわけではなく、少し時間差があるということを意識する必要があります。
PDCAを回せていることが意識できるように、デスした時に必ず原因を口に出しておく、プレイ録画を撮っておきあとで敗因を分析する、などを習慣づけましょう。
スプラトゥーン2は継続的にアップデートされており、ブキ・ステージの追加・調整が頻繁に行われています。
アップデートにより、環境に適したブキ・立ち回りが変わるため、情報収集を怠っていると、時代遅れの立ち回りになりかねません。
最新の情報を攻略wikiやtwitter,youtubeなどで常に最新の情報をキャッチアップをしているか確認する必要があります。
エイム練習やさんぽなど、基本的な練習を怠っていると、一定期間過ぎた後にスランプに陥る確率が高いです。
慣れてくると基礎練習をサボりがちになる人が多いと思いますが、エイムの感覚は実践以外にも基礎練習を怠っていると、安定しませんし、雑なエイムになりがちです。
正しいエイム・立ち回りで記憶を上書きするために、毎日エイム練習・さんぽをかかさずしているか、ということを意識しましょう。