Tech Notes

>>|
1/10

MSVCで極小サイズのEXEファイルをビルド(2026年最新版)

韓国発で「1.44MB GAME_DEV CONTEST」なるゲーム制作コンテストが発表されたらしい。1.44MBに収まる実行ファイル一本でゲームを作るコンテストだ。

1.44MB GAME_DEV CONTEST(リンク)

容量が収まるならゲームエンジンを使用しても問題ないとあるが、Unityのような近年の大規模なゲームエンジンは空のプロジェクトをビルドするだけで数十MBに達するので、実質的には使用不可と言って良いだろう。いわゆるゲームエンジンでなくともSiv3Dですら怪しい。しかし一方で、そうしたモダンなエンジンやフレームワークを使わないのであれば、1.44MBは思いのほか容易に達成可能なサイズでもある。

実行ファイルの容量というものはどの程度まで小さくできるのか?試しに実験してみたところ、空のウィンドウを出すだけのEXEファイルを1.4KBに収めることに成功した。せっかくなのでこれを共有してみたいと思う。1.44MB GAME_DEV CONTESTの土台にでもなってくれれば幸いだ。

今回作成したプロジェクトファイル(ダウンロード, ZIP形式)

これはもう10年以上も前だが、Windowsの実行ファイルを小さくする記事を書いたことがある。これはその記事の令和最新版である。

フリーゲームの伝説「洞窟物語」が1.44MBに収まっていることは有名[誰によって?]だが、あれは圧縮した上での容量なので、このコンテストはさらに厳しい条件と言えるだろう。といいつつ、1.44MBは依然として実行ファイルとしては膨大な容量だと個人的には考えている。近年の巨大なエンジンやフレームワークがおかしいのである。

続きを読む

二端子対回路パラメータの相互変換と回転

最近VNAを買ったのを機に高周波回路を勉強していて、Sパラメータとかをこねくり回している。初等的な電子回路の教科書には二端子対回路に関する抽象的な理論が載っているが、これほどちゃんと理解しておけばよかったと思ったことはなかった。

線形な二端子対回路の特性は、Sパラメータを始めとする2x2行列で全て表すことができる。

二端子対回路を特徴づけるパラメータにはSパラメータ(散乱行列)以外にもZ行列、Y行列、F行列などがあり、その内の1つでも把握すれば全てを把握したことになる。しかしそれは何故なのか?相互に変換が可能だが具体的にはどうするのか?その辺をちゃんと調べてみた。

続きを読む

ドライバインストールなしで独自USBデバイスを認識させる

Zephyrとラズパイpicoで独自USBデバイスを作るの続編記事である。

Windowsではドライバのない独自USBデバイスは上手く認識されずに弾かれてしまう。キーボード、マウス、USBメモリのような既定のデバイスであれば良いのだが、自作の独自デバイスではダメだ。

独自デバイスだったらどうせ対応するドライバも自作が必須になるのだから仕方ないことではないか、と思うかもしれないがそうではない。独自ドライバの設定もインストールもなしに挿すだけでデバイスを認識させる方法がある。

続きを読む

アイロン転写エッチングによる基板製作

前々からエッチングというものにトライしてみたいと思っていたのだが、最近ようやく手を付けることができた。

ネットの作例を見ると、アイロン転写による方法では細かいパターンは難しいようなことがよく書いてあるのだが、幅0.2mmの配線や0.5mmピッチの狭ピッチICのフットプリントも問題なく行けることを確認した。今回得たノウハウをこの記事で書き残しておきたいと思う。

続きを読む

秋月600円FPGAに書き込む

日本の電子工作界隈で数限りなく擦られたであろうネタ。この度自分も挑戦し、案外手こずったのでその記録を書いておく。

続きを読む

Zephyrとラズパイpicoで独自USBデバイスを作る

最近、Zephyrというものを勉強してみている。RTOSと言われるものの1つで、様々なマイコン上で高度な処理を統一的に実装できる。対応チップは結構あるようだ。(参考)

出来ることは広いのだが、その中でUSB機能に注目したい。適当な32bitマイコンを買ってきて独自デバイス化できるのであれば、考えられるアプリケーションはかなり多い。

その一方で公式のサンプルには、マウスとかキーボードとかMIDIとかメモリとか既定のUSBデバイスクラスのものしかない。ベンダ独自デバイスを定義する方法のちゃんとした解説がどこにもない。というわけでこの記事を書いた。

実験にはRaspberry Pi picoを使用したが、Zephyrが対応するUSBマイコンであればどれでも使えるはずだ。

ソースコードの全体はこちら(リンク,zip形式)。

続きを読む

MOSFETの熱雑音の式導出

MOSFETの熱雑音を表す式としてよく教科書に載っているのが以下の式だ。

$$\overline{i_n^2}=4kTg_m\gamma\Delta f$$

曰く、この電流がドレインソース間に重畳されるという。

$4kT\Delta f$の部分は抵抗の熱雑音と同じなのでなんとなく納得できるが、相互コンダクタンス$g_m$が出てくるのが分からない。$\gamma$という係数の値が理論値としては$2/3$になるという情報も割と見当たるが、その根拠というのはネット上だと全く見つからなかった。仕方ないのでちゃんと調べてみたのがこの記事だ。

記事の内容は書籍 Noise: Sources, Characterization, Masurement(Van Der Ziel, 1970) に基づく。

続きを読む
>>|
1/10