PSP自作ソフト開発スレ ver.10
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
2009/09/20(日) 23:37:20ID:VMGMes0b自作ソフト開発者向けスレッドです。
要望・クレクレなどは作者本人が望んだ場合以外スルーで。
前スレ
PSP自作ソフト開発スレ ver.9
http://schiphol.2ch.net/test/read.cgi/gameurawaza/1231340677/
0260名無しさん@お腹いっぱい。
2009/12/12(土) 12:39:57ID:QSYSHAfnまさかと思って戻り値じゃなくてポインタ渡しで値を取得したら普通に値が帰ってきました。
WrjWqkzN氏、こんなアフォにつきあってくれてありがとうございました。
0261名無しさん@お腹いっぱい。
2009/12/12(土) 12:46:52ID:Jq60wD1H結合してなさそうだな
prxの場合動的に読み込みするのでSファイルでどういうエントリが
あるか教える必要があるんだがそれを組み込まなければ正常に
動かないよ
0262名無しさん@お腹いっぱい。
2009/12/12(土) 12:50:20ID:cbMC3at6Sファイルはprx側(include/prx)をmakeすると作成されます
その後、prxをロードする側のメインアプリをmakeすれば
そのSファイルを取り込んでコンパイル完了します
0263名無しさん@お腹いっぱい。
2009/12/12(土) 12:56:30ID:Jq60wD1H0264名無しさん@お腹いっぱい。
2009/12/12(土) 13:01:22ID:Jq60wD1HsceKernelLoadModuleは使ってないな
pspSdkLoadStartModuleでやってる
使い方はほぼ一緒だけど以前みたときは中でいろいろやってたな
0265名無しさん@お腹いっぱい。
2009/12/12(土) 13:02:32ID:Jq60wD1HloadResult = sceKernelLoadModule(path, 0, NULL);
↓
loadResult = pspSdkLoadStartModule(path, PSP_MEMORY_PARTITION_USER);
とかかな
0266名無しさん@お腹いっぱい。
2009/12/12(土) 13:07:46ID:cbMC3at6そのファイルがそうです
>>265
その方法でprxをロードさせて試してみます
0267名無しさん@お腹いっぱい。
2009/12/12(土) 13:25:15ID:cbMC3at6pspSdkLoadStartModule("ms0:/TestPRX.prx", PSP_MEMORY_PARTITION_KERNEL);
に変えてやってみましたが
プラグイン上のaddTest関数(2つの引数をただ足した値を返す)を呼び出した際
ret = addTest(2,7);
//実行結果
printf("addTest(2,7) = %d\n",ret);
としたとき 2+7 の 9 はなく、まったく違った値が返ってきます
0268名無しさん@お腹いっぱい。
2009/12/12(土) 14:09:11ID:Jq60wD1HPSP_EXPORT_FUNC_HASH(addTest)
↓
PSP_EXPORT_FUNC(addTest)
かなあ
0269名無しさん@お腹いっぱい。
2009/12/12(土) 14:29:02ID:cbMC3at6前調べた時に PSP_EXPORT_FUNC は
結局 PSP_EXPORT_FUNC_HASH を呼び出してるので
動作に変化はなかったです
0270名無しさん@お腹いっぱい。
2009/12/12(土) 14:34:59ID:Jq60wD1HLIBDIR下あたりに
LDFLAGS = -mno-crt0 -nostartfiles
LIBS = -lpspsdk
0271名無しさん@お腹いっぱい。
2009/12/12(土) 14:44:03ID:cI7LvUlB作る前に他人のコードを色々見てましたが
prx側の各関数の書き方はどれも普通に書いてる物がほとんどなので
アドレス渡しとかしなくても動くはずなのですが、上手くいかないです
0272名無しさん@お腹いっぱい。
2009/12/12(土) 14:50:43ID:ihgLYVOIint LoadStartModule(char *module, int partition)
{
SceUID mod = kuKernelLoadModule(module, 0, NULL);
if (mod < 0)
return mod;
return sceKernelStartModule(mod, 0, NULL, NULL, NULL);
}
0273名無しさん@お腹いっぱい。
2009/12/12(土) 15:21:48ID:Jq60wD1H0274名無しさん@お腹いっぱい。
2009/12/12(土) 15:35:02ID:cI7LvUlB質問してるのは私だけだと思います
関数から値が正常に返ってこない原因が
なんとか分かればいいのですが
0275名無しさん@お腹いっぱい。
2009/12/12(土) 15:38:14ID:Jq60wD1H確認してみては?
0276名無しさん@お腹いっぱい。
2009/12/12(土) 15:44:44ID:cI7LvUlB実はユーザーモードの方は先日試してダメで
カーネルモードに変えたのが今の状態です
>>259のファイルを皆さんの環境でビルドした物を動作させた場合は
addTest(2,7) を呼び出すとちゃんと 9 と返ってきますか?
0277名無しさん@お腹いっぱい。
2009/12/12(土) 15:48:06ID:cI7LvUlBinclude/prx/ 内のプラグイン側を先にmakeして
その後、メインの方をmakeして下さい
あとはEBOOT.PBP を適当なディレクトリに入れてGAME へコピー
TestPRX.prx はMSのルートへコピーすれば実行出来るはずです
0278名無しさん@お腹いっぱい。
2009/12/12(土) 16:02:35ID:Jq60wD1H関係なさそうだけど気になったのは自作関数が最後にあったことかな
module_startの前に持ってきてはどうかな?
0279名無しさん@お腹いっぱい。
2009/12/12(土) 16:22:50ID:9gu7xibbfixupimportとか俺には何かわからない別の話をしてるかと思ってたが
俺の勘違いじゃないようで安心したw
結局kuはなんだったんだ…
>>265
それだと後のsceKernelStartModuleで二重に読み込むことになる
というか呼び出し側に問題はない
addTestの戻り値をよく見てみ
どうみてもPSPのエラーコードで、ライブラリがリンクされてねえぞって言ってる
というわけでprx側のMakefile見てみたが色々おかしい
もう一度SDKに付いてるサンプルを元に書き直してみ
0280名無しさん@お腹いっぱい。
2009/12/12(土) 16:32:07ID:FVlJxpCzそこまで指摘しないといけないのかねw
先生にネット全体で検索するようにお願いすれば
海外のサイトとかでいっぱいでてくるんだけどなw
0281名無しさん@お腹いっぱい。
2009/12/12(土) 16:33:31ID:FVlJxpCz俺はID:Jq60wD1Hね
今借り物のマシンでメインの方は故障中で開発環境入れれないので
テストできないのでできる人やってあげてくれ
0282名無しさん@お腹いっぱい。
2009/12/12(土) 16:38:12ID:9gu7xibb検索してわかるなら最初からやってろよ…
0283名無しさん@お腹いっぱい。
2009/12/12(土) 16:46:45ID:FVlJxpCzこっちでぐぐるとゴミが大量に引っかかるので
PSP_EXPORT_FUNC
こっちで検索がいいな
この辺とかそのまんまprxの作り方と起動かけるアプリのサンプルが載ってる
http://forums.ps2dev.org/viewtopic.php?p=64110&sid=8c1ff281b8d5ea4f1f5e8fce2bc35d4b
0284名無しさん@お腹いっぱい。
2009/12/13(日) 20:04:48ID:BezMxPl2その辺の情報も欲しいな
0285名無しさん@お腹いっぱい。
2009/12/13(日) 20:59:16ID:HO5s6cZ4普通に9が返って来たよ
0286QSYSHAfn
2009/12/14(月) 00:48:38ID:KfDMvN/g0287名無しさん@お腹いっぱい。
2009/12/14(月) 10:36:50ID:0MH/5tzbプラグイン起動時に何もさせない場合に
int module_start(SceSize args, void *argp)
{
return 0;
}
こうすると確かにビルド失敗するね
なんでも良いから適当な命令入れると通るけど謎だ
0288名無しさん@お腹いっぱい。
2009/12/14(月) 10:43:25ID:qE7oyJuomakeに
LDFLAGS = -mno-crt0 -nostartfiles
入れておけば問題なかったような
0289名無しさん@お腹いっぱい。
2009/12/14(月) 10:56:22ID:KfDMvN/gたぶんそれコンパイラの最適化が悪さしてると思う
0290名無しさん@お腹いっぱい。
2009/12/14(月) 11:00:15ID:0MH/5tzbあ、それと上でも言ってる人いるけどカーネルモードで
USE_KERNEL_LIBC=1
にすると、リンクされるのが最小ライブラリになるから
float とか扱えなくなって困る・・・・
0291名無しさん@お腹いっぱい。
2009/12/14(月) 11:03:02ID:qE7oyJuo0292名無しさん@お腹いっぱい。
2009/12/14(月) 11:14:50ID:0MH/5tzbカーネルだと最上級の権限得られてるから
Hackしてるなぁと言う爽快感、みたいな
呼び出す側がカーネルモードの場合はファイル構成がおかしくない限り
ユーザーモードのprxは確実に呼び出せる?
それなら必要な部分はラッパー関数をユーザーモードのprxで作っておいて
呼び出すのが一番いいのかな
0293名無しさん@お腹いっぱい。
2009/12/14(月) 11:15:49ID:KfDMvN/g0294名無しさん@お腹いっぱい。
2009/12/14(月) 11:17:33ID:qE7oyJuo確か
# カーネルメモリに読み込む場合
#PSP_EXPORT_START(TestPRX, 0, 0x4001)
これで作ったprxはユーザーモードのprxはアプリと普通に
やり取りできたはずなんだよね
>>293
思想は確かにあるが仕様上できないことがあるのに思想(キリで
先に進まなければ意味ないと思うけどw
0295名無しさん@お腹いっぱい。
2009/12/14(月) 11:18:16ID:qE7oyJuoこれで作ったprxはユーザーモードのprxやアプリと普通に
0296名無しさん@お腹いっぱい。
2009/12/14(月) 11:25:33ID:KfDMvN/gそだねw
さて、prx周りの疑問が解けた事だし色々作るかな
#000000がちょうどprxに関わりそうな事を言っているので(偶然か?)試してみる
0297名無しさん@お腹いっぱい。
2009/12/14(月) 11:27:48ID:qE7oyJuo本人でしょ
先日質問がここであったときに久々に調べてたら
MyLib.oとprxが一致したのであそこの人だと思ってたけど
0298名無しさん@お腹いっぱい。
2009/12/14(月) 11:30:33ID:qE7oyJuo0299名無しさん@お腹いっぱい。
2009/12/14(月) 11:31:00ID:0MH/5tzb悩みが全て解消された、ありがと
ちょっとユーザーモードでラッパー関数作ってくる
0300名無しさん@お腹いっぱい。
2009/12/14(月) 11:32:35ID:KfDMvN/g俺はDXLP使ってるからRSSでチェックしてるだけ
0301名無しさん@お腹いっぱい。
2009/12/14(月) 11:34:28ID:0MH/5tzb内容としては簡単な物なのだけど続けて聞いても良い?
0302名無しさん@お腹いっぱい。
2009/12/14(月) 11:36:20ID:qE7oyJuo0303名無しさん@お腹いっぱい。
2009/12/14(月) 11:46:03ID:KfDMvN/gでもCWCが提示する値と1%ぐらいずれるw
適当に初期化してpspDebugProfilerGetRegsとpspDebugProfilerClearを交互に呼んで、CPUのサイクル数をシステムのサイクル数で割ったんだが・・・
他に何か必要な要素があるのかな
prx関連あんまり把握してなかったのでここ数日のログに助けられました^^
なので、>>296さんの仰る通り偶然というわけでもないです。
0305名無しさん@お腹いっぱい。
2009/12/14(月) 11:48:55ID:0MH/5tzb存在しないフォルダを作る処理で階層が深い場合は一気に作れないから
自分なりに作ってみたのだけど、これよりも無駄がないスマートな方法あるかな?
使い方としては CreateDir("ms0:/Test/Sub/"); のような感じです
void CreateDir(const char* dir)
{
char path[256],*p ,*sp = (char*)dir;
int fd;
// ms0:/ の後ろまで飛ばす
*p = strstr(dir,"/");
p++;
// ms0:/ 以降にあるフォルダの階層をだどる
while(*p && (p = strstr(p,"/")) != NULL)
{
// パスを作る
strcpy(path,dir);
path[p-sp] = '\0';
//フォルダが存在するかどうか
fd = sceIoDopen(path,);
if (fd < 0)
{
//存在しない、フォルダ作成
sceIoMkdir(path, 0777);
}
sceIoDclose(fd);
p++;
}
}
0306名無しさん@お腹いっぱい。
2009/12/14(月) 11:51:43ID:0MH/5tzb× fd = sceIoDopen(path,);
○ fd = sceIoDopen(path);
0307名無しさん@お腹いっぱい。
2009/12/14(月) 11:52:22ID:qE7oyJuo前提条件として自前で順番にフォルダを作る必要がある・・・ということにして
あとPSPの開発環境で再現してる標準関数でできたりはしない?
私も微妙にずれます。が、1%程度なら問題ないと思います
プロファイラの値を同時に使っている所為かもしれないですね
0309名無しさん@お腹いっぱい。
2009/12/14(月) 11:54:50ID:qq3gww8YそのCPU使用率の算出コード、参考にしたいです
公開とかされませんか?
0310名無しさん@お腹いっぱい。
2009/12/14(月) 12:03:55ID:KfDMvN/gお世話になってるぜ
原因それかもしれない。検証・・・できない気がするが
>>309
おk
module_startでpspDebugProfilerEnableとpspDebugProfilerClearを呼ぶ。
CpuUsageRateとかいう関数作る。内部はこんな感じ
pspDebugProfilerGetRegs(®s);
pspDebugProfilerClear():
return 100 * regs.cpuck / regs.systemck;
で、グローバル変数としてstatic PspDebugProfilerRegs regs;とか宣言すればいい
module_stopでpspDebugProfilerDisableを呼ぶようにすればモジュール開放時にプロファイラが止まってくれる
0311名無しさん@お腹いっぱい。
2009/12/14(月) 12:08:14ID:KfDMvN/gモジュールを読み込んだ瞬間からプロファイラの機能が有効になる
CpuUsageRateが呼ばれる度に、前回の呼び出し(またはモジュールを読み込んだ瞬間)から今回の呼び出しまでの平均CPU使用率が出る。
モジュールを開放した時点でプロファイラの機能が無効化される
バグ
二重に読み込むと何が起こるかわからん。バグというより仕様だなこれは
0312名無しさん@お腹いっぱい。
2009/12/14(月) 12:08:40ID:qq3gww8Y助かりました、自分でも試してみます
0313名無しさん@お腹いっぱい。
2009/12/14(月) 12:10:39ID:qE7oyJuo>二重に読み込むと何が起こるかわからん。バグというより仕様だなこれは
中で二重読み込みを防止するための管理とかしてないのかね?w
0314名無しさん@お腹いっぱい。
2009/12/14(月) 12:17:18ID:KfDMvN/gまぁ同じprxを二重にロードするなんて普通起きないと思うが・・・
0315名無しさん@お腹いっぱい。
2009/12/14(月) 12:20:55ID:qE7oyJuoprx側というより関数側ね
prx側はまあ自分で面倒みろって話だけどさw
0316名無しさん@お腹いっぱい。
2009/12/15(火) 10:40:13ID:+yBFUqqH生データをそのままセーブ、ロードも可能
おまけにGameKeyのDump機能付き
こんなプラグインを作ったのだが需要ある?
まだBeta段階だから機能は最低限のしかない
いずれはメニュー表示や、さらに独自暗号化してるデータに対して
各自がスクリプトでデータ処理出来るような機能も付けるつもり
0317名無しさん@お腹いっぱい。
2009/12/15(火) 11:11:20ID:7RL9GCLh0318名無しさん@お腹いっぱい。
2009/12/15(火) 11:56:51ID:X6qrx4ZJ0319名無しさん@お腹いっぱい。
2009/12/15(火) 12:01:33ID:vC5Aes/1先日のスレの伸びに驚いたくらい
0320名無しさん@お腹いっぱい。
2009/12/15(火) 12:12:15ID:X6qrx4ZJあとはこの辺で名前を出さずに色々やっている人がゴロゴロと
0321名無しさん@お腹いっぱい。
2009/12/15(火) 14:47:07ID:NZpcYFHc0322名無しさん@お腹いっぱい。
2009/12/15(火) 15:38:33ID:8wTdzokl最小限のリンクで済むように(ファイルサイズを小さく)するにはどうすれば良い?
0323名無しさん@お腹いっぱい。
2009/12/15(火) 17:11:52ID:uEQlmyTB0324名無しさん@お腹いっぱい。
2009/12/15(火) 17:33:38ID:LHRt/u06うpよろしく
0325名無しさん@お腹いっぱい。
2009/12/15(火) 18:19:29ID:86/pxb1n>GameKeyのDump機能付き
これの方が重要w
できればソース公開していただきたい・・・
0326名無しさん@お腹いっぱい。
2009/12/15(火) 18:25:54ID:YWAw6ZHWar d hoge.a fuga.o
0327名無しさん@お腹いっぱい。
2009/12/15(火) 18:49:30ID:1eKuIvhF>>316の人、さりげなく凄い発言してるw
自分も是非そのプラグイン欲しい
0328名無しさん@お腹いっぱい。
2009/12/15(火) 19:27:34ID:X6qrx4ZJそれ意味ない
0329名無しさん@お腹いっぱい。
2009/12/15(火) 22:24:59ID:X3g8+oRY初歩的な質問ばっかりでそれは無いわw
外部の技術者がたまに何か投下するぐらいだろ
それとも皮肉で言ったのか
>>320
憂煉はDXLPとか作ってるが、猫山とかでたらめ記事しか書いて無いじゃん
0330名無しさん@お腹いっぱい。
2009/12/16(水) 09:56:59ID:u5p2bC9W>>327
一応は需要あるみたいかな
今まだ調整中だけど今日中には配布出来そう
ちなみにまだBeta段階
ソースコードはライセンスをどうするかとか
その他も色々面倒なので公開する予定ないです
0331299
2009/12/16(水) 13:06:24ID:ePYIr0iC色々やってみたのだけど上手くいかないです
カーネルモードだと正常にロードされます
ユーザーモードのprxをロードしようとすると
//pspSdkLoadStartModule 、 カーネルエリアに読込を試みる
pspSdkLoadStartModule(user_prx,PSP_MEMORY_PARTITION_KERNEL);
戻り値: 0x80020132 (SCE_KERNEL_ERROR_PARTITION_MISMATCH)
//pspSdkLoadStartModule 、 ユーザーエリアに読込を試みる
pspSdkLoadStartModule(user_prx,PSP_MEMORY_PARTITION_USER);
戻り値: 0x80020132 (SCE_KERNEL_ERROR_ILLEGAL_LIBRARY )
mod = sceKernelLoadModule(user_prx, 0, NULL);
sceKernelStartModule(mod, 0, NULL, 0, NULL);
戻り値: エラーコードではない値
となり、最後はエラーコードではないもののロードされていません
ロードする側(EBOOT.PBP)、ロードされる側(prx)のソースです
ttp://www1.axfc.net/uploader/Sc/so/64477.zip
自分ではもうお手上げなので、何か分かる方いましたら教えて下さい
0332名無しさん@お腹いっぱい。
2009/12/16(水) 13:13:44ID:Ws/KbU9Y属性と呼んでいいのかわからんがユーザーモードで利用するか
カーネルモードで利用するかを変えた場合は
Sの中身が変わってる可能性あるので当然Sを取り込む側も
再度makeしなおさないとだめじゃないかな?
prxの属性は変えずに関数の中だけいじったとかなら
prx側の再度makeでOKだったと思うけど
0333名無しさん@お腹いっぱい。
2009/12/16(水) 13:16:33ID:ePYIr0iCそれはユーザーモード属性のままでカーネルモードのが動作したので
そう書いてあるだけで、実際は毎回Sファイルに合わせてEBOOT側もmakeし直してます
それでもロード出来なくて
0334名無しさん@お腹いっぱい。
2009/12/16(水) 13:21:53ID:XPJJnMmi0335名無しさん@お腹いっぱい。
2009/12/16(水) 13:22:37ID:Ws/KbU9Yとかも関係なかったっけ?
0336名無しさん@お腹いっぱい。
2009/12/16(水) 13:30:42ID:ePYIr0iCCFWが1.50のカーネルも含んでないといけないということですか?
ユーザーモードのprxロードについて参考になる資料を
"Google Code" や "PS2DEV Forum" のPSPスレッドで探してはみたものの
カーネルモードの解説ばかりで…
最新のCFW 5.50 GEN にて
>>331のコードを修正してユーザーモードの user.prx が
EBOOT.PBP側からロード出来た方がいました
どうかアドバイスを
0337名無しさん@お腹いっぱい。
2009/12/16(水) 14:02:35ID:Ws/KbU9Y動かない動かない騒ぐ割に動いてる物はこうだよと指摘されてるところ
はあわせて見るとかしないのかな?
PSP_EXPORT_FUNCのところは指摘されてるだろうに
0338名無しさん@お腹いっぱい。
2009/12/16(水) 14:11:43ID:ePYIr0iCPSP_EXPORT_FUNC_HASH をただ置き換えただけのもので
どちらで記述しようと出来上がるファイルは同じです
その理由で変更しないままになってるだけでして
0339名無しさん@お腹いっぱい。
2009/12/16(水) 14:13:30ID:Ws/KbU9YprxとSの両方?
バイナリレベルで日付とかの変更以外はまったく一緒?
0340名無しさん@お腹いっぱい。
2009/12/16(水) 14:19:22ID:ePYIr0iCええ、自分でも調べてもらえば分かることですが
prx、Sファイルともにハッシュがまったく同一です
0341330
2009/12/16(水) 14:43:52ID:u5p2bC9W説明とかの準備で配布は後日にすることにした
>>340
事前に調べたりしてやることやって聞いてるから協力してあげたいのだが
自分もユーザーモード関係には詳しくないので力になれず
それに詳しい人となるとPSPで大規模アプリ作ってる人とかかな
0342七次元 ◆/7th/O83GE
2009/12/16(水) 19:33:52ID:BHW87nWE>>331
Makefileでpspkernelライブラリを読み込んでるのが原因。
ビルドログを見ればわかると思うけど、build.makで基本的なライブラリが
リンクされるように設定されている。
ユーザーモードのライブラリをリンクするフラグを立てるべきかと思ったが
うまいことpspkernelがリンクされないような順番で設定されてるので、そのまま
makeしてもユーザーモードで動く。
フラグを立ててビルドしても、生成されたprxは同じ物になった。
ただ、自分でpspkernelをリンクするように設定すると優先度が
おかしくなるので、pspkernelにリンクされる模様。
ついでにpspsdkも2重になってるので要らない。
LIBS = -lpspsdk -lpspkernel -lm
↓
LIBS = -lm
これでおk
>>341
PSPの暗号・復号化関数にフックするとかそんな感じかな?
独自暗号の対応にちょっと興味ある。技術的な意味で。
0343名無しさん@お腹いっぱい。
2009/12/17(木) 12:35:51ID:tVHH0o48その構成だとユーザーモードからは呼べるけど
カーネルモード(のEBOOT.PBP)から呼ぼうとすると
SCE_KERNEL_ERROR_UNSUPPORTED_PRX_TYPE ( 0x80020148 )
のエラーが出て、EBOOT.PBPが即終了する
0344名無しさん@お腹いっぱい。
2009/12/17(木) 12:40:58ID:vb993mBHできないってことはカーネルモードから呼ばれる専用のprx作れってことじゃないの?
0345名無しさん@お腹いっぱい。
2009/12/17(木) 12:46:37ID:tVHH0o48具体的に、>>331のuser.prx側をどう修正すればよいと?
0346330
2009/12/17(木) 15:28:10ID:/I8XqNtv今はメニュー表示と設定ファイル読込
スクリプト部分の実装あたりをしてるので
もうしばらく時間がかかる
0347名無しさん@お腹いっぱい。
2009/12/17(木) 19:50:05ID:VsJ3ZBlCその前になんでいまだにカーネルモードで動くEBOOT.PBP作ってるのかが疑問だんだよね
CFW(OFW?)の仕様が変わって基本的にはユーザーモードで書くってなったはずだよね?
どうしてもカーネルモードで動かす必要がある部分だけprxでカバーすればいいだけだし
ユーザーモードEBOOT.PBPからユーザーモードprxとカーネルモードprx
の起動はOKなんだからぜんぜん問題ないはずだし
いろいろ前提条件が間違ってる気がする
0348七次元 ◆/7th/O83GE
2009/12/17(木) 20:12:36ID:eGwT/ACCカーネルモードから呼びたいんかい…
試してみたらモジュールの読み込みは成功するものの
関数の実行時にエラーが返って来た。
pspsdkのリファレンス読んでたらそれっぽい関数があったので
適当に使ってみたら動いた。
void pspSdkFixupImports ( int moduleId )
Manually fixup library imports for late binding modules.
だとさ。
モジュールを読み込んだ時に返って来た値を読み込ませれば良い。
FixupImportsってこういう意味があったのか…
0349名無しさん@お腹いっぱい。
2009/12/17(木) 20:14:57ID:VsJ3ZBlCよくわかってない人にそういうのを教えるのはどうかと思うよ
0350名無しさん@お腹いっぱい。
2009/12/17(木) 22:13:31ID:6Cjx2tE4何故?
お前こそどうかと思うよ
0351名無しさん@お腹いっぱい。
2009/12/17(木) 23:05:42ID:+d7+SwV8資料が少ないPSPの自作ならなおさらに
初心者スレが別にあるなら別だけど
上級者専用でもないのだから
初歩的な事聞くのは普通だと思う
最近のprx関係のでも、参考になってる人多いと思うし
0352七次元 ◆/7th/O83GE
2009/12/17(木) 23:24:56ID:eGwT/ACCなら君が教えてあげてね。
誰も解決方法を書かないから、俺が調べた範囲で答えたまで。
ちなみに、CFWはユーザーモードでしか起動できないからユーザーモードで
起動しろってのは、論点のすり替えで根本的な問題の解決にはならないから。
0353名無しさん@お腹いっぱい。
2009/12/17(木) 23:39:39ID:6Cjx2tE4じゃあCFWでカーネルモードで起動できるようにしてくれw
根本的な解決が不可能だからprxで迂回してるんじゃん
0354名無しさん@お腹いっぱい。
2009/12/18(金) 00:45:49ID:HG0oqbTO俺のために言い争うのはヤメテくれ
0355七次元 ◆/7th/O83GE
2009/12/18(金) 02:09:54ID:MQDs6U0wお前は何を言ってるんだ
根本的に可能な話と、根本的に不可能な話を一緒にされても…
0356名無しさん@お腹いっぱい。
2009/12/18(金) 06:03:41ID:hzioLmdJ古いアプリくらいにして置く方がいいのは事実だと思うよ。
ネットでprx関連を検索するとカーネルモードが多い理由も考えてみるといい
カーネルモードで動く部分はなるべく小さくしてそのほかは
ユーザーモードで処理する方がいいと
これはソフト開発する上では重要なことだよ
第一リカバリーモードを切り替えさせるようなアプリはそろそろ
やめてもらいたい。
一部のカーネルモードアプリのためにリカバリーモードで
カーネル切り替え忘れが発生して本来は問題のない
変更された仕様に乗っ取ったアプリが動かないという
クレームの相手をしないといけないケースもあるから
0357名無しさん@お腹いっぱい。
2009/12/18(金) 06:09:16ID:hzioLmdJ尻吹きしない印象があるから余計なことするな
自分でログ読んだり、組み合わせを試せないようなやつに
余計なこと教えるな
0358名無しさん@お腹いっぱい。
2009/12/18(金) 06:24:09ID:hzioLmdJ技術云々の問題じゃない
開発能力の問題
動くソースと動かないソースを比べて差違を見極めるということ
ができない、もしくはやってない人が動きませんって騒いでるだけ
だから
その割りに余計な知識だけはある非常に厄介なやつ
その例がPSP_EXPORT_FUNCの件
>>338でできるとか言ってるんだったらprxの差違もやってみろよ
できないから”とりあえず動く物に合わせろ”と指摘されてるけどやらない
基本的にめんどくさい部分はスレ住人に丸投げ
七次元はそういうやつを甘やかしてるだけなんだよ
0359名無しさん@お腹いっぱい。
2009/12/18(金) 06:29:20ID:hzioLmdJユーザーモードでEBOOT.PBPを書いてどうしてもカーネルモード
が必要なときはprxで対応するって
それをやらないでEBOOT.PBPをカーネルモードでやろうとしてる
やつの相手なんてまともにする必要すらないよ
我を通したければ自分で何とかできるようになれってことだ
■ このスレッドは過去ログ倉庫に格納されています