■
これまた長い間やってみたかったけど、案外やってみると簡単で b2con までにやろうと思えばできたな、と。
dumper
http://shinh.skr.jp/binary/dumper.tgz
シリアライズっていうか構造体の中身を動的に取得できん、っていう話があったんですが、環境依存して良ければ -g オプションと DWARF2 でできるだろう、ということでとりあえず gdb がやってくれるみたいな変数の中身をダンプするものを作りました。
まだ途中だけど。今のところ
#include "dump.h" typedef struct TestDump_ { int i; char c; char* str; void* ptr; } TestDump; int main(int argc, char* argv[]) { TestDump td; td.i = 3; td.c = 'c'; td.str = "hoge-"; td.ptr = &td; dump_open(argv[0]); dump(&td, "TestDump"); return 0; }
の出力が
i = 3 c = 'c' str = "hoge-" (0x80530ed) ptr = 0xbfb25958
となってます。今は対応してない型がえらいあるということを解決して、あとちゃんとスコープの解決をしてやれば結構使えるかと思います。 dump(hoge); だけで printf デバッグ。
SPS
http://risky-safety.org/~zinnia/sdl/works/sps/index.html
SPSをリリースしていただいた、というわけで改造したSPSのソース一応配るつもりで配ってないのを忘れてたので配ってみます。
http://shinh.skr.jp/binary/sps_hack.tgz
中身を見るとこれはひどいというか、そもそも .gob じゃなくて .c に改造しだしたあたりで深夜ハックの恐ろしさがほげほげ。