/* i_pload.h JCG プログラムロード I/F JCG実行環境構築用プログラム・ヘッダファイル Copyright (C) 2000, 2001 Personal Media Corporation */ #ifndef _I_PLOAD_H_ #define _I_PLOAD_H_ #include /* プログラムのロード & 実行 mem アドレスから len バイトのリロケータブルオブジェクト形式のデータを ロードして、その初期化処理を実行する。 初期化処理からの戻り値 < 0 のときは、アンロードして、戻り値をそのまま 戻し、>= 0 のときは、ロードしたプログラム ID を戻す。 arg は、初期化処理のパラメータとして渡される。 sadr と eadr には、それぞれ NULL でないとき、ロードした開始アドレス と終了アドレスが戻される。 ロードするプログラムは以下の形式となる。 EXPORT ERR main(Bool Startup, VP arg) { 初期化処理 : Startup : True arg : ipld_mload() で指定した値 終了処理 Startup : False arg : NULL return er; er >= 0 : 正常 < 0 : エラー } */ IMPORT WERR ipld_mload(VP mem, W len, VP arg, UW *sadr, UW *eadr); /* プログラムのアンロード progid で指定したプログラム ID でロードしたオブジェクトの終了処理 を実行する。 終了処理からの戻り値 < 0 のときは、戻り値をそのまま戻し、>= 0 の ときは、アンロードして 0 を戻す。 */ IMPORT ERR ipld_unload(W progid); #endif /*_I_PLOAD_H_*/