ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

ゼロからのOS自作入門(その4)osbook_day03c

natsutan.hatenablog.com

の続きです。

    for i in 0..fb_size {
        unsafe {
            *adr.offset(i as isize) = (255 % i) as u8;
        }
    }

このループで暴走していると思ってましたが、(255 % i)が逆。

  (i % 256) as u8;

が正解でした。元のコードだとi=0で0除算が発生していて暴走していました。分かってしまえばたいした事はありませんでした。

無事Rustでフレームバッファの塗りつぶしに成功 f:id:natsutan:20210416231124p:plain