WIPI-CのAPIって相当使いづらい

外部ファイルは端末機で使えないとのことで、リソースファイルに含めて
リソースAPIを使用しなくてはいけないのだが、const領域の破壊を恐れてなのか、
バッファにコピーしなくてはいけない仕様になっているようだ。
そのくせ、要求されるバッファは生ポインタではなく、
MC_knlAllocのハンドル、もしくはDECLARE_INDIRECTBUFで宣言した領域を要求するし、
リソースの一部だけを読む方法もないようだ(全体を読み込まなければいけない)。
WIPIのリソースはオンメモリではないのだろうか?
素直にポインタでアクセスさせてくれればよいものを……せめてオフセット指定で
一部だけ読み込ませてくれればよいのに……。
それにメモリコンパクション絡みでINDIRECT_BUF_HEADやらDECLARE_INDIRECTBUFやら
わけのわからん独自拡張に近いマクロの使用を強要されるし。
本当に生Cでメモリコンパクションは無理がある仕様だと思う。
INDIRECT_BUF_HEADとかもマクロの中身を見てないけど、
恐らく該当領域をダブルポインタ化するだけなんだろうし、
構造体の中にまでヘッダを埋め込ませたりする必要があるのだろうか?
DECLARE_INDIRECTBUFの段階でポインタをもう一個宣言、そいつにアドレスを格納、そのポインタを渡すだけでいいんじゃないか?