zebian.log

技術系備忘録とか

UEFI Memory Mapで躓いたポイント

概要 UEFIからブートするタイプのOSでは、ブートローダーで取得したUEFI Memory Mapを受け取り、その情報をもとにメモリアロケーションの初期化を行う。私の自作OSもしかり。 Memory Mapの内容は以下の通り(自作OSのコード)。 github.com pub const UEFI_P…

2023年を振り返る

年末なので、今年1年を振り返ってみようと思います。 1月 だそうです... 殴り合いをするとかいうなかなかハードな初夢をみた— /dev/zakki (@zakki0925224) 2023年1月1日 今もデュアルでBenQを使ってる。BenQはいいぞ。 my new gear...ということでモニター2…

Tello SDKに書かれていない謎仕様

DJI Telloを使ってVideoとStateを取得するプログラムを書いていたときの出来事。 Tello SDK User Guide www.ryzerobotics.com Receive Tello State Tello IP: 192.168.10.1 ->> PC/Mac/Mobile UDP Server: 0.0.0.0 UDP PORT: 8890 Remark3: Set up a UDP ser…

【Linux】Fallout4にModを導入する

LinuxでFallout4にModを導入することができたので、備忘録として残しておこうと思います。 私のPC環境 LinuxのSteamクライアントでFallout4が正常に動いていれば、特に問題はないと思います。 OS: Manjaro Linux x86_64 Kernel: 5.15.94-1-MANJARO CPU: Inte…

Linuxカーネル(x86_64)をビルドしてQEMUで実行する

カーネルを取得する $ git clone https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git $ cd linux # リポジトリを最新のリリースにチェックアウトする $ git fetch --tags $ latestTag=$(git describe --tags `git rev-list --tags --max-cou…

live-serverでブラウザの自動リロードが効かない問題

www.npmjs.com live-serverを使ったファイルの変更の監視で、ファイルを更新しても何故かブラウザが自動リロードしてくれなかった。 ビルドスクリプト www.npmjs.com esbuild-create-react-appで生成されたbuilder.tsと内容はほぼ同じ。 import { LiveServer…

自作OSでシリアル通信をする

シリアル通信をやる上で参考になったサイトのパクリ個人的なまとめ なぜシリアル通信をするのか 方法 ポート I/Oレジスタ Transmit Holding Register / Receive Buffer Register Divisor Latch LSB / MSB ボーレート Interrupt Enable Register FIFO Control…

ジャンクなバーコードスキャナを使ってみた話

そういえばハードオフでUSBバーコードスキャナを買って数ヶ月。すっかり忘れて放置してたのを思い出したので、今回はそれを使ってみようという話(ブログネタがどうしても思いつかなかった)。 税込み330円!安いのか高いのかよくわからん。表面の白いやつは…

RustでUEFIアプリのHello, world!

github.com ↑GRUBでx86自作OSを動かす(しかもUEFI非対応)という、とんでもなくレガシーな自作OSを作り始めて早半年。やっぱりx86_64でUEFI対応の自作OS作りたくね?自作ブートローダーで動かしたくね?って思ったので、まずは自作ブートローダーをどうやっ…

セキュリティ・キャンプ2022 Y1参加記

8/8 ~ 8/12の間に行われたセキュリティ・キャンプ全国大会2022オンライン Y1 OS自作ゼミに参加したので、応募から終了までの様子を記録がてら振り返ってみようと思います。