DGEN で png がうまく読めなかった件。
fp = fopen(file, "rb");
len = sceIoRead(fileno(fp), ...);
というコードがうまく動いていなかったためで、sceIoRead を fread に置き換えるとうまく動いたのでそれで解決にしたのだが、では同じような NesterJ はなんでうまくいったのだろう、と調べてみた。


…NesterJ でうまくいっている、と思っていたがそもそも png の読み込みはうまくいっていないような。
MENU 画像は BMP だし、コード上はステートロード時にサムネイル(png)が表示されるようなのだがそれもされない。
とりあえず、DGEN と同じように image.c を修正することで png の読み込みはうまくいくようになった。サムネイル表示もばっちりだ。

いやっほぅ、と思ったが、そもそも配布されている 1.20beta2 のバイナリではうまくいっているので別に動いていなかったものを修正したというわけではないようだ。

1.12 のコードではそのあたり、別に変更ないので、1.13 のソースがあれば確認できるけど…

とにかく、わかっているのは手元の環境では fileno がちゃんと機能していないようだ。なので sceIo 系と stdio 系を混ぜて呼ぶ部分で動いていない模様。

ネタとしては悪くないので調査してもいいんだけど…直す必要あるのか?バグなのか?