0529
エミュレイタに簡易コルーチンをいれるリファクタを断念した。すごい頑張ればできるかもしれないが(少なくとも必要な操作はだいたいわかる)、どう考えてもコスパが悪い。それに、別に長期に亘ってメンテするようなコードでもないし……。なんだか悔しいけれども。
APUの実装を進めた。矩形はを出すところはできた(と思うが試してはいない)ので残るはノイズ生成。音が鳴るのが楽しみだ。
寝ます。夜更かししちゃった。土日に餃子食べたいな。
エミュレイタに簡易コルーチンをいれるリファクタを断念した。すごい頑張ればできるかもしれないが(少なくとも必要な操作はだいたいわかる)、どう考えてもコスパが悪い。それに、別に長期に亘ってメンテするようなコードでもないし……。なんだか悔しいけれども。
APUの実装を進めた。矩形はを出すところはできた(と思うが試してはいない)ので残るはノイズ生成。音が鳴るのが楽しみだ。
寝ます。夜更かししちゃった。土日に餃子食べたいな。
インフラのこと考えてたら終わった一日。AWS筋力にはまだまだ改善の余地がある。経験が足りないな。
エミュレイタ開発は簡単なリファクタとジョイパッド対応をした。といっても本当に動いてるのかわからないけど。ゲームボーイのボタンって十字キーとそれ以外が排他っぽいんだな、知らなかった。
あとはサウンドの実装がいる。これはちょっと大変そう。あとまだROMのダンパーが届かないから、リファクタを先にやった方がいいかもな。
寝ます。
あまり元気ではない。気圧のせいだという噂もあるけれど。
エミュレイタのコルーチン対応は挫折した。一応書けた?ようだけど正しく動かなかったし、所有権周りでかなり困難があったし、あと最大の問題として割り込み要求のチェックをどこでやればいいのか難しいというのがある。なのでコルーチンで解決するのは諦めることにして、マクロだけで何とかならないか(もともと本ではそうしているのだし、もっといい感じにできないか)考えることにする。他のリファクタもしたいし。
PPUの実装を終わらせたので、dmg-acid2テストが動作した。これであとはジョイパッドとサウンドを実装すればそこそこのゲームが遊べるわけだが、まだダンパーを入手できていないので、それまではリファクタをする。WASM移植とかもそのうちやりたいが、まあさすがにそれまでには届くでしょう。
寝ます。
午後から法事。なんか合同だったので30分くらいで終わる。こんなんでいいんだ。こんなんでいいんだったらやらなくてもよくない?
そのあとは両親が家に来たり晩ごはんを食べたりした。なんか途中でまた胃がパニックしてしまって辛かった。何だろうなあこれ。もしかしてワインが良くなかったりするのか?(過学習の気配がある推論)
夜はエミュレイタのリファクタをした。Nightlyに入っているコルーチンを使えば複数サイクルの命令が書きやすくなるのではと思ったのだけど、型パズルがかなりキツい。あと一歩のように見えるのだが、それが異常に遠いのがRustという言語だ。
夜更かししすぎた。体調あまり良くないのに。ハー、愚行だなあ。
体調がよくない。熱っぽいけど熱はない。体温調節の問題かも?でも喉も荒れている感じがあるし、風邪なのかしら。
そういうわけで今日はあまり何もしていない。エミュレイタはタイマーを実装したのでCPU関連のテストは通った。次はグラフィックだが、その前にすこしリファクタをしたい気がする。複数サイクルの命令の表現って難しいのよね。continuationがあれば簡単なのか?
寝ます。明日は法事。そのあと両親と会食。健康状態がもうすこしよくなってほしい。
細々したタスクが一段落したのでちょっと腰を据えて世界観の把握に努めようと思い、いろいろ資料を追っていた。が、まあこういうのは資料だけ見てても流れみたいなのがわからないのよね。それで訊けそうな人に訊いたりしたが、結局決まってないことが多かったりして要領を得ない。フラストレイション。
アジャイルでやろうとしたのだと思うが、インクリメンタルにやるべきところを結局ズドンとスコープが拡大しているっぽい。辛い。しかしこういう時こそネガティヴ・ケイパビリティを発揮しなくてはいけない。
あと自己紹介LTをやったが、いまいちという感じだった。というかまあ、なんか聴衆の層を読み間違えた気がする。やれやれ。
エミュレイタは一応全部の命令を実装したので、テストROMがだいたい動くようになった。タイマーを実装すれば全部動く?まああと音を出したりジョイパッドに対応したりしないといけないけど。土日に用事がなければ終わっただろうに、多分無理だ。
寝ます。
なんかモヤモヤしていたが、上司と1on1で話したりチームリーダーと話したりしたら少し解消した。ようやくプロジェクトの世界観がわかってきた気がするが、しかしまあ、いよいよこいつは大変だという感じ。これなんで受注したんだ??
エミュレイタの実装はまた命令セットをちまちま実装するフェーズになった。正直つまらん。あと、実際のROMを動かすなら吸い出し機とカセットを入手しないといけないが、はて。
寝ます。明日はLT会で自己紹介する。自己紹介するのはこれが最後かな。もう5月も終わりつつある。
仕事もだいぶ慣れてきた。仕様の議論とかにはけっこう参加できるようになってきた気がするが、それ以外の時にはどうも自分の役割が定まらない感じがする。まあ、入社していきなりヘルプに入ってるからそうなってるのだろう。焦らずゆっくり機を見よう。
コミュニティバスの時刻表はようやく完成した。Figmaはテキストに長体を掛ける機能がないらしく、一度アウトライン化してから伸縮させる必要がある。まあそれでうまくいくならいいのか。そもそもがDTPのソフトではないのだろうし。
寝ます。
頭痛はようやくよくなったのだけど、微妙に風邪の気配がある。やれやれ。これでは逆うっせぇわだよ(「あなたが思うより健康です」の逆)
ゲームボーイエミュレイタ、ようやくブートROMが動作するところまで来た。なんだか不穏な動きはすこしあるけれど、これがこちらの実装ミスなのかROM側が変なのかはよくわからない(アセンブラを見るかぎり後者だと思うのだけども)。
この次はテストカートリッジの読み込みに入る。テストと言えばこれの単体テストはどう書けるだろうか。考えたい。
寝ます。
今日も頭が痛かった。何だろうね。片頭痛の感じでもなくて緊張性なのかも。わからん。低気圧かもしれない(てきとう)。
仕事は黙々とコードを書く。今のところほとんど何も会議がない(定例会に入れるの忘れられてる?)のでなんか新鮮。新鮮だけど寂しい。あと進捗状況は知りたい。
Mockkを雰囲気で使っていたら変なエラーが出て一時間くらい溶かしてしまった。もちろん雰囲気で使うのが悪いのだけど、もうちょっと親切なエラーメッセージがほしい。
ゲームボーイのエミュレイタは、ブートROMで起動できるようになるところまで書いた、のだけどなぜか動かない。CPU関連がおかしそうなのでデバッグしないといけないのだが、なかなか難しい。明日やる。
寝ます。はー。