[OSASK 6051] Re: 多色壁紙

 こんにちは、I.Tak.です。

> でもwinmanが例外で死ぬのなら、多分メモリ不足です。壁紙用には4MB
> しか取ってないのに、チェックしていません。これをもっと大きくすれ
> ばなんとかなると思います (←楽観的)。

 こんなこと言いましたが、止まってるのはwinmanじゃなくてGAPIでした。
しかもブレイクポイントで。vesaのドライバ番号とAPIのカラーモード番号
が同じだと思い込んでいたのが原因でした。

>  8bit→8bit変換が乱れるのは完全にチェックし忘れです……

 これはパレット変換でメモリを破壊したからでした。バッファオーバー
フローというやつですな。

 というわけで修正しました。
http://user.ecc.u-tokyo.ac.jp/~g240845/osask/

 ちなみに今はOSASKの壁紙にJPEGを貼りつけるべく誤差拡散とか
書いてます。nikqさんのルーチンは画像全体を出力してくれるので
メモリをたくさん使いますが、まあ仕方ないと割りきることにします。
……出力ルーチンに誤差拡散をつければいいのか?!


 ところでATでのスクリーンショットですけど、↓ここを見ると
http://www.umekkii.jp/data/computer/file_format/bitmap.html

># 「画像の高さ」は符号付きの値である。ただし、負数は一般的でない。

>    * 正数 - ボトムアップ(左下から右上)の順に、画像データは記録される。
>    * 負数 - トップダウン(左上から右下)の順に、画像データは記録される。

とあります。これを利用して出力を簡単にしてみたらどうでしょう
(誰も見られなかったりして……)。


I.Tak. <g240845 !Atmark! mail.ecc.u-tokyo.ac.jp>
http://user.ecc.u-tokyo.ac.jp/~g240845/



ML番号でジャンプ
ML単語検索