ページへ戻る

+ Links

 印刷 

DLL​/PICTURE0​/PNG のバックアップソース(No.6) :: OSASK計画

osaskwiki:DLL/PICTURE0/PNG のバックアップソース(No.6)

« Prev  Next »
[[DLL/PICTURE0]]

*pngviewをPICTURE0に取り込む作戦
-(By [[あっきぃ]] @ 2005-03-16)
-[[OSASK:7183]]より、かりんさんがpngビューアをリリースしました。
-picture0に取り込まれればベンリでしょう!と思うあっきぃがircでみんなの手を借りつつ(ぅ…)挑戦中。
-おいらを待っていたらOSASK6.5ぐらいになっても出来ないと思うので、出来る人が先に作ってくれたほうがいいかも…。

**メモ
-1回完全リセット。
***picture0についていろいろ
JPEGの例(ほぼ[[DLL/PICTURE0]]からパクっているが、気にしない。)
 int info_JPEG(struct DLL_STRPICENV *env, int *info, int size, UCHAR *fp);
-struct DLL_STRPICENV *env: デコードの際に自由に使える空間(?)ただし、最初の32バイトは規定が決まっている。
--env->error: エラーコード (1byte)~
env->errorp: エラーコードを起こしたファンクションへのポインタ(?byte)~
※残り24バイトは未定
-int *info: のとおり、32バイトのワークエリアへのポインタ(→envの最初の32バイトをさしてる?)。ここに解析結果が入る。
--info[0]:画像ファイルタイプコード
--info[1]:カラーや各種フラグ
--info[2]:xsize
--info[3]:ysize
--info[4-7]:画像ファイルによって形式が違う領域
-int size: ファイルサイズ
-UCHAR *fp: ファイルがマッピングされているアドレス

 int decode0_JPEG(struct DLL_STRPICENV *env, int size, UCHAR *fp, int b_type, UCHAR *buf, int skip);
-struct DLL_STRPICENV *env, int size, UCHAR *fp: info_JPEGと同じだろう。
-int b_type:謎
-UCHAR *buf:謎
-int skip:謎

 int decode0_JPEGpart(struct DLL_STRPICENV *env, int xsz, int ysz, int x0, int y0, int size, UCHAR *fp, int b_type, UCHAR *buf, int skip);
-とりあえず部分デコードは、ノーマルデコードができるようになってからやる。


**Downloads
-[[picture0ソース for tolset08:http://www2.hideyosi.com/~akkie/picture0/picture0-for-tolset08.sar]]
--picture0のソースの最新版([[I.Tak.]]さんのホームページにあったもの)をtolset08向けに直したものです。
--ついでに、jpeg.cのWarningをいくつか消しています(gosakakuのWarningはよくわかりませんでした)。
--makeの前に、z_toolsのcom_mak.txtに次の設定を追加してください(nasmのあるディレクトリを各自指定すること)。
 %.obj : %.nasm
 	c:/cygwin/bin/nasm -o $@ -fwin32 $< -l lst.$<
-icondec@picture0
--icoファイルデコーダをpicture0に取り込んでいる途中ファイル。picture0ソース for tolset08に上書きして使います。
--まだ未完成なのでうまく表示できません。bufにどうやって入れるかが鍵?
#ref(ico.zip)

*コメント欄
#comment

« Prev  Next »