一部の人は知っていたようだが、minivmにはText VRAM以外にもVRAMが存在している。というか過去のエントリに書いてあったんだよね。私が忘れていた。それで、VRAM0x200000は始まっていて、4の倍数番地から32bit単位で書き込まないと描画に反映されない。現在Text VRAMとVRAMを同時に使うとバグがでると思うが、今は気にしない!とりあえず以下のアセンブリコードをnasmにかけてできたバイナリをドロップすると画面が少しずつ青で塗りつぶされていく。半分あたりで止まると思う。nasmを持ってない人のためにバイナリも用意した!
minivram.bin
http://d-kami.net/minivm/MiniVM0_1.html
[BITS 32] MOV ECX, 640 * 200 MOV EAX, 0x200000 fill: MOV DWORD [EAX], 0x0000FF ADD EAX, 4 DEC ECX JNE fill loop: JMP loop