マイペースなプログラミング日記

DTMやプログラミングにお熱なd-kamiがマイペースに書くブログ

ASM

ブートセクタプログラミング キーボード入力

ASM

ブートセクタプログラミングでは通常BIOS Functionコールを使うはず。それで、BIOS Functionコールで押されたキーを取得するにはahレジスタを0にしてint 0x16を呼び出せばOK。そうすればalレジスタに押されたキーのASCIIコードが入るので、それを使う。以下…

ブートセクタプログラミング 初歩

ASM

何かブートセクタプログラミングが中途半端に終わってしまったので、最初からやり直してみようと行動した。hdk_2さんに先を越されただけで終わったしまうなんて悲しい。なのでNASMで再開!まずは何もしないプログラムを作る。ただしBIOSが出力した文字が残っ…

ブートセクタプログラミング 四角いオセロ

ASM

以前作ったものはオセロ盤を描画するだけだったが、今回は石も置いてみた。しかし四角い石である。余裕があれば丸くしていきたい。あとメモリの初期化を行った cpu 8086 bits 16 org 0x7C00 %macro draw 2 mov cl, %1 mov dl, %2 call draw_stone %endmacro …

ブートセクタプログラミング オセロ盤

ASM

以下のソースコードをnasmでアセンブルしてqemuで実行すると上の画像のようになる。現在47バイト使ってる cpu 8086 bits 16 org 0x7C00 ; init display xor ah, ah mov al, 0x12 int 0x10 ; draw mode mov ah, 0x0C ; cx = x, dx = y mov cx, 0x100 mov dx, …

ブートセクタプログラミング

ASM

twitterで@a4lgが始めたブートセクタプログラミング。バイナリを512バイトにするという制限の中でプログラムを組むというもの。あと基本8086。前からやろうとは思ったけど行動を起こせなかった。@a4lgに刺激を受け、挑戦することにした。ただ、いきなり大き…