【マターリ】PSP自作ソフト総合スレ ver.4【開発】
■よくある質問
Q−特定のアプリを333mhzに変更したいのですが・・・
A−PSP上で動くエミュレータでよく採用されていますので、
そちらのソースを見て活用しましょう。
Q−コンパイルが失敗するのですが・・・
A−開発環境の見直しをしてみましょう。
前々スレ(
http://game9.2ch.net/test/read.cgi/gameurawaza/1115721191/ )を参考にしてみてください。
Q−2chブラウザとか、MUGENとかまだー?
A−自分で作ってください。無理なら黙ってましょう。
Q−ネット接続対応まだー?
A−ネット接続は最近ようやく解析が進みだしたのでもうちょっと。
Q−開発に参加したいのですが、最新のまとめサイトってない?
A−APIの解析など、情報の更新が速すぎるため、
現在の状況に即したまとめらしいまとめというサイトはありません。
ココのスレがまとめになるかと思います。
また、開発されたソフトのソースもぜひ参考にしてみてください。
おつかれ
乙
sceNetInetConnectの第2引数は、WiFiテストのstruct addr型でよい?
7 :
名無しさん@お腹いっぱい。:2005/07/26(火) 13:41:34 ID:g+Blu/B+
いつの間にかPSPToolchainでRTTIと例外がそれなりに正常に動くようになってるのね…
あの・・カーネルモードにする事で起こるデメリットにはどんな物があるのでしょうか?
あんまり、ここには関係ないが、ルータに子分ルータを繋げるのは
大変なのね。子分(無線LAN)のネットワークにいるPSPから、親分ルータの
ネットワークにアクセス出来なかったから、試行錯誤で色々やってみた。
結局、インターネット->親分ルータ(LANポート)->(LANポート)子分ルータ->PSP
という形になったよ。子分のWANポートは使わず
親分ルータのネットワークに直結した。
YahooBB!TVが専用ルータでなければルータ1つにするのに。
>>11 ユーザーモードで動くコードが一部動かないので、うっかりすると止まる。
あと危険度が高いことかな。実際にはそんなに神経質になることもないけど。
>>12 本当に関係ないね。他のスレに行って。
>>13 ネット使うプログラムって皆HOMEボタンが聞きませんが、
CreateCallbackが一切使えないと言う事でも無いんですか?
>>14 HOMEボタン処理のsceKernelCreateThreadで、第5引数を0x80000000
(pspsdkではTHREAD_ATTR_USERと定義)にしないとうまく動かないので、
そのことに気付いてないんじゃないかな。
もしかしたら、他にも何かあるかもしれないけど。
pspbasic まだー?
1.5だが 起動しなかった orz
GP32版の移植じゃねーか
移植というのがよくわからん。クローンってこと?
どの程度真似てるんだ?
とりあえず任天堂キャラを殴り合わしてスマブラですとか言ってたりしない?
画面もきれいだし、音も普通にマリオ。
bmpとwaveの読み込み?で起動は遅いけど。
自作でもこのレベルが作れるようになりたい。
>>23 解凍して出てきた 1.0 って書いてないほうの
二つのフォルダを 入れれば良いだけですよね?
これだと 起動できませんでしたって エラーが出るんですが・・
>>19,24
破損ファイル非表示のフォルダをPCからPSPに書き込むと起動できなくなるみたい。
だから、元の名前にリネームしてからPSPに書き込んで、それから非表示にする。
>>24 そのとおり。そのまま、コピーしただけです。
まさか、V1.51以上とかってオチじゃあないよねW
27 :
名無しさん@お腹いっぱい。:2005/07/29(金) 15:18:29 ID:rQ0iPJOu
だれか svn://svn.ps2dev.org/psp/trunk のfreetypeコンパイルできた人いる?
ふつうのfreetype2じゃあかんの?
29 :
名無しさん@お腹いっぱい。:2005/07/29(金) 19:00:12 ID:rQ0iPJOu
>>28 自己解決。newlibのパッチが古かった。
psptoolchain-20050712.tgzのではだめで
psptoolchain-20050725.tgzのでは問題なしでした。
教えて君ですまないんだがDirectX使ってるPCゲームをPSPに移植って可能?
具体的にはバーチャロンforPCを移植したいんだが不可能かね?
あと、プログラム関係ほぼ初心者が他のWin用ゲーム移植したいって思ったとき何から学ぶのがいいん?
参考サイトとかもあったら誰か教えてくれ_| ̄|○
>>30 マジレスするとバーチャロンのソースコードなんてあるの?
なきゃ無理。
後GPU関連のAPIが今のところ解析されてないから、DirectXのゲームが仮に移植できたとしてすごく遅い。
つーか初心者じゃまず無理。
>>30 お前まずファミコンレベルのゲーム作ってみろよ。
それでもお前には無理無理だから。
何がバーチャロンだ。その前にソース公開されてるのかそれ。
>>31 GPU関連は解析されて最近ポリゴンデモがぼちぼち出てきてる。
初期のlibcとかの関数郡が殆ど使えない不自由な環境で、今まで
自前で作ろうとした事が無かった関数を色々作ってみて、かなり
勉強になったなぁ。
C++でnew使える様になっても、そのまま自前のメモリ管理ルーチンを
クラス化して移したりとか。
今久しぶりにWinで書いててふと感じた。
勉強になったと同時に先人の偉大さを痛感した俺ガイル
36 :
30:2005/07/29(金) 22:39:47 ID:lttDasKI
レスありがとう。
ゲームのプログラミングとか興味出てきたからまずは32さんの言う通りファミコンレベルを作れるように
勉強してきます。
TiMidityの音を出力する部分はだいたい出来たけど、そのファイルを
TiMidityのconfigureに組み込めなくてコンパイルできないorz
>36
ファミコンレベルが出来れば2D系は全て出来る
言っておくけどそんなに簡単なもんじゃねーぞ
音なんかは今の方が遥かに簡単だしな
ファミコンレベルって取り方によっては、最近のスペックに恵まれた
マシンよか遙かに高度なんじゃない。
>>37 configureでMakefile作って、そっちを直接書き換えては?
>>40 それがね、GNUのソフトは優秀で、makeすると、Makefileがその元ファイル
のMakefile.inから再作成されるような仕組みが出来てるらしくて、
Makefileへのすべての変更が消されてしまうのですorz
移植しやすくするためにあるconfigureがネックで移植出来ないなんてorz
autoconf/automakeについて勉強すれ
ちょっとは勉強したんだけど、本格的に極めるぐらいにやらないと、
これを乗り越えることは出来なそうですね(>_<)
ありがとう、がんばります。
どなたか hellopsp ベースで グラフィックの回転 をサポート
home に戻る & キー入力 を含めた ソース作ってくれませんか?
ここからなら 何とかC言語勉強すれば作れそうなんですけど
>>45 pspdevのsdkだったら、いろんなサンプルコードがついてるから
楽かもしれないよ。
>>46 その環境構築するだけで挫折しちゃうんですよね
唯一コンパイルできる状態なのが hellopspと LCDcheck
なんですよ
今後のPSP開発環境のベースはpspdevになると思うから、
早めにpspdevに移行したほうがいいかも・・
pspdevの環境構築は割と簡単にできたんだけど、どこで挫折しました?
わかる範囲だったらサポートしますよ
>>48 極端に言うと全部わからないです
どこかに参考になるサイトがあったと思ったのですが
忘れてしまいした orz
Cygwin入れてAuto build script落としてきて
toolchain.shを実行すれ
喪前ら釣られすぎ。
なんでこんな厨まともに相手してるんだ。
cygwin 以前入れようとして ものすごく時間がかかったので
途中で切っちゃいました
今日仕事終わって帰ってから試してみようと思います
( ゚Д゚)・・・
PSPSDKのインスコはcygwinより時間かかるぞ
了解です。
Windowsでの開発ですよね。
cygwinというWindows上でUNIX環境を作れるソフトを使います。
http://sources.redhat.com/cygwin/ このページの「Install or update now!」というところから
cygwinをダウンロードして、インストールします。
このインストーラは、追加のパッケージをインストールする際にも
使います。
次にそのあと、
http://www.oopo.net/consoledev/ のpsptoolchain-20050725.tgzを使って
psp用のコンパイラやpspsdkをコンパイルします。
psptoolchain-20050725.tgzを、cygwinの
Administratorのユーザの中にコピーしておいて、
cygwinのターミナルを起動して
tar xvzf psptoolchain-20050725.tgz
で展開。出来たpsptoolchainの中のtoolchain.sh
を実行すると、必要なプログラムを自動でダウンロード
してきて、コンパイル、インストールしてくれます。
でも、その過程で必要になるプログラムがないと怒られるので
先のインストーラを使って、toolchain.shに怒られるたびに
インストールします。必要になるのはwget,subversion、
あとは失念。
toolchain.shが無事に完了すると、psp開発環境の完成です。
なにかわからないことがあったらまたきいてください。
PSPSDKで定義されていないAPIを、前スレ934さんの例の通りに定義して
makeしてみると、コンパイルは通って、リンクの段階で
undefine referenceと言われてしまうのですが、原因が解りません。
.Sの定義の仕方が悪く、シンボル?になっていないと言う事ですかね。
>>57 #ifdef __cplusplus
extern "C" {
#endif
// 関数のプロトタイプ宣言
#ifdef __cplusplus
}
#endif
60 :
名無しさん@お腹いっぱい。:2005/07/30(土) 18:44:34 ID:GzViM7r+
>>18 >>25 教えて君ですみません。
スマッシュブラザーズのPSP移植版をどうやって起動させるんですか?
何回もやってもエラーしかなりません
61 :
名無しさん@お腹いっぱい。:2005/07/30(土) 19:19:17 ID:+zZSXJ9I
すいません。起動しました
htmlブラウザマダー
( 'A`) キーコキコ
(_ ゚T゚
゚ ゚̄
>>56 cygwin インストール完了
↓
psptoolchain-20050725.tgz DL 完了
↓
Administratorのユーザの中にコピー???
ここでつまづいてます orz
>>63 入れる場所はどこでもいいよ。
普通は/tmpに入れると思うけど…
tar (child): psptoolchain-20050725.tgz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error exit delayed from previous errors
cygwinの なかの tmp フォルダにいれて 言われたとおり実行
こんなエラー?が出たんですけど どこか間違ってましたかね・・・
>>65 ちゃんとtmpディレクトリに移動してる?
cd /tmp
tar xvzf psptoolchain-20050725.tgz
の順だよ。
67 :
名無しさん@お腹いっぱい。:2005/07/31(日) 01:22:55 ID:Cet8D2n1
cygwinのターミナルをオープンしたらまず
cd /tmp
を実行しろや
怒られそうだけど。。。
toolchain.sh の実行ってどうやるんでしょう
cygwinのターミナルで
cd /tmp
psptoolchain /toolchain.sh
だと
bash: psptoolchain: command not found
となってしまいます
>>68 面倒だから最初からの流れ
tmpにpsptoolchain-20050725.tgzをコピー
cygwinを起動
cd /tmp
tar xvzf psptoolchain-20050725.tgz
cd psptoolchain
chmod a+x ./toolchain.sh
./toolchain.sh
後はひたすらまつ。
wget等がないと怒られたらcygwinのインストーラを再度起動して
追加インストールする。
ただ単に
./toolchain.sh
と打ち込めばOK。
/ の前に . (ドット)が必要なのに注意。
ただし、カレントディレクトリにtoolchain.shが存在することが前提。
存在するかどうかは ls と打ち込んで確かめるべし。
存在しなければ cd (目的のディレクトリ) と打ち込んで移動するべし。
>>69 >>70 ありがとうございます
なんか ダウンロードが始まりました
このまま待ってみます
がーん
すべて完了と思ったら
pspdev のフォルダが空っぽ・・・
DL途中には何か入ってたのに・・・
なんでも人に聞かなきゃできん奴に、
試行錯誤が必要なプログラミングは難しいと思うぞ。
とりあえず入れなおし中です
昼までに終わるかなぁ・・・
>>73 プログラミングで試行錯誤は良いんですけど
そこまで早くたどりつきたいので 申し訳ないです
おお、だいぶ進んでますね。
最初は誰でもそのぐらい引っかかるものですから、気にすることないですよ。
PSPDEVのdirent.hは、
pspdev/psp/include/dirent.h
pspdev/psp/include/sys/dirent.h
あるのですが、上のが下のを参照していて、下のは、
/* <dirent.h> includes <sys/dirent.h>, which is this file. On a
system which supports <dirent.h>, this file is overridden by
dirent.h in the libc/sys/.../sys directory. On a system which does
not support <dirent.h>, we will get this file which tries to find
any other <dirent.h> which may be lurking around. If there isn't
one, the user will get an error indicating that there is no
<dirent.h>. */
#ifdef __cplusplus
extern "C" {
#endif
#include_next <dirent.h>
#ifdef __cplusplus
}
#endif
こんな内容で、実体がない??ようです。
これってどうしたらよいのでしょうか?
PSPDEVのdirent.hではなく、ビルドホスト用のdirent.hを
使えということ??なのでしょうか?
これが解決したら、Timidity動くかもしれません(^-^)
SDK環境に移行したら、saturnのsound再生サンプルでは
うまくいかなくなってしまいました。
SDKでwave再生はどうしたらよいですか?
ソース公開しているものを探しては見たものの、見付けられません。
/usr/local/pspdev/psp/sdk/samples/に、
audio/ debug/ ir/ me/ usb/
controller/ gu/ kernel/ power/ utility/
とサンプルがあります。waveファイルの再生ではないですが、
参考になるかも・・
インストール完了
また消えたーorz
と思って
>>78 を 見てみた
なるほど そっちのフォルダに移動してるのか・・・・
二度手間だった・・・
>>78 PSPSDKはPS2DEVのものが最新というわけではないようですね。
PS2DEVのものにはサンプルコードは1つ(helloレベルのもの)しか含ませていませんでした。
すみませんが、最新版のものが置いてある場所を教えていただけませんでしょうか?
やねうらおさんの所を見ながら
pspsdk 環境で hellopsp をコンパイル
エラー?が出るものの PBPはちゃんとはきだされました
SDKのサンプルの CUBE のコンパイルしてみたいんですけど
どうやるんでしょうか?
>>80 PS2DEVのHPからではなくて、SVNから落とすべし。
連投スマソ
>>81 Makefile.sampleをMakefileにリネームしてコンパイル
誤:svn://svn.pspdev.org/psp/trunk/pspsd
正:svn://svn.pspdev.org/psp/trunk/pspsdk
でした。
>>83 cygwinでcube フォルダまで移動で
./Makefile でしょうか?
ちなみに 最初から Makefile って名前になってました
聞く前に試してみればいーじゃん
>>
cubeフォルダに移動して
make
だけ。
最新のSDKでMakefileに変更されたみたいね。
>>88 エラーが出ます・・・
構築失敗したのかも
>>89 具体的にどういうエラーが?
psp-gccが見つからない云々のエラーなら、パスを通してないんじゃない?
コンパイルエラーなら構築をミスってるかもね
>>90 コピペできないので 省略して
make psp-config command not found
makefile 17 lib/build.mak no such file directry
make *** no rule to make target /lib/build.mak stop
こんな感じです
パスのほうでしょうか?
>>91 パスが通ってないね
Windowsの環境変数を設定するか、bashrcを編集して
cygwin\usr\local\pspdev\binにパスを通す
psptoolchain-20050725.tgz
を展開したフォルダの中に、README.TXTがあって、
export PSPDEV="/usr/local/pspdev"
export PATH="$PATH:$PSPDEV/bin"
と書いてるから、それをやるとmake出来ると思います。
psptoolchainディレクトリにあるREADME.TXTちゃんと嫁よ
95 :
名無しさん@お腹いっぱい。:2005/07/31(日) 13:00:36 ID:MlbYiMqu
ONEScripterのクロスコンパイルがなんとかできたので実行させてみた。
SDLの初期化はうまくいっているようでマウスカーソルは出る
その後メモリスティックをガリガリ読んでるみたいだからアーカイブの
展開でもやってるんだろうけど、さっぱり終わらん。
あー。
SDK最新版ではg_elf_nameがなくなったみたいですね。
getcwd()で取得すればよいのかな?ちょっとやってみます。
環境変数良くわからない・・
調べて夜にでもやろう・・
>>95 おれもONSを前にコンパイルして、実行させてみた。
メモリスティック読み込んでるようだけど、起動しないぽ。同じ症状だな。
>>97 cygwin起動させたあと、
エディタで.bashrcの最後に
export PSPDEV="/usr/local/pspdev"
export PATH="$PATH:$PSPDEV/bin"
を追加したあと、cygwinを再起動でいいかも・・
エディタがない場合は、(エディタをインストールするか)
echo "export PSPDEV=?"/usr/local/pspdev?"" >> .bashrc
echo "export PATH=?"$PATH:$PSPDEV/bin?"" >> .bashrc
(上2行の記述方法が間違ってるかも・・)
として再起動すると出来るかも・・
>>91 コピペは、DOSプロンプトウィンドウのタイトルを右クリック
するメニューの中にあるよ。
>>99 エディタはわからないので 下のほうで試してみましたが
変化無しでした
お手数おかけして申し訳ないです
>>100 なるほど・・・・ だいぶ作業が楽になりました
ありがとうございます
WindowsのPATHを設定するほうが初心者には簡単なんじゃない?
コンパネ→システム(?)→環境変数
だったかな?いまLinuxにいるからWindowsの設定が見れないけど。
Windowsのヘルプで"環境変数"をさがせばなんか出るんじゃないかな。
cygwin起動させたあと、
export PSPDEV="/usr/local/pspdev"
export PATH="$PATH:$PSPDEV/bin"
を直に実行してもいけるかも・・
この場合、cygwinを起動するたびに、
上をやらないといけないけど。
104 :
名無しさん@お腹いっぱい。:2005/07/31(日) 15:03:20 ID:+k7OyAMN
・
どうも、Timidityの移植には、opendirというシステムコールが
要るらしくて、それがまだPSPで見つかってないっぽい・・・?orz
関係ないけど、「xkazoku for PSP」がMIDI再生対応してなかったっけ。
確認したわけじゃないけど。
よく、エミュレータでファイル選択に使ってる部分って同じインターフェース
だけど、あれって、何が元になってるのかな?
108 :
名無しさん@お腹いっぱい。:2005/07/31(日) 15:48:16 ID:MlbYiMqu
>>105 OneScripterのDirectReader.cppの中でUnix系のOSであれば(WIN32やMACOS9でなければ)
opendirを使いそうでなければ使わないという部分があった。
いまいち何をしてるかわからないけど、参考になるかも??
>>105 すみません。はずかしながらOneScripterとは何でしょうか?
NesterJのFilerのコードを見ると、
PSPにはディレクトリを開くシステムコールが見つかってるけど、
UNIXの標準関数としてPSPSDKに実装されていない??
ということらしい、ことがわかりました。
opendirってどんなコマンド?chdirでは代用できない?
「opendir() 関数はディレクトリ name に対応するディレクトリ・ストリームを
オープンし、そのストリームへのポインタを返す。
ストリームの位置はディレクトリの先頭のエントリに設定される。 」
別の方法でエントリを確保すればいいだけじゃ?
if (a==b) c=1; else c=2; と、 c=(a==b?1:2);
psptoolchainのGCCが吐くコードではどちらが有利なんでしょか。
115 :
名無しさん@お腹いっぱい。:2005/07/31(日) 21:22:19 ID:0E0k+f2g
アセンブラコード出力させて見比べてみればいいよ。
それくらいは自分でやってみよう。
分岐予測の具合にもよるが
c = 1;
if (a == b) c = 2;
または
c = (a == b) + 1;
だろ。
おっと条件が逆か。
Rev 798 - 2005-07-29 19:10:07 +1000 (Fri, 29 Jul 2005)
Add support for MIPS4 conditional move instructions (integer only; Allegrex
supports movz and movn). Bump the local GCC version.
>>103 それで コンパイルできました
毎回入力は面倒ですけど 今PSP上で
cubeがくるくる回ってるのを見て感動中です^^
win2000 での環境変数の設定ってので
試してみたけど パスが通ってないみたい
システム環境変数
変数 値
export PSPDEV /usr/local/pspdev
export PATH $PATH:$PSPDEV/bin
フルパスで書かないといけないのかな
>>121 exortはいらない。
それから / ではなく \ で。
PSPDEVの方は、C:\cygwinにインストールしたなら
変数 値
PSPDEV C:\cygwin\usr\local\pspdev
PATH %PATH%;%PSPDEV%\bin
コマンドプロンプト上なら echo %PATH%
cygwinのターミナルからなら echo $PATH
か何かやってみて、何がどうおかしいのか考えてみな。
>>123 変更した後ログオフ(または再起動)してる?
何この初心者スレ
>>124 ↓こんなのでました 妙に長い・・・
$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/cygdrive/c/WINNT/System32:%PSPDEV%/
bin :/usr/local/pspdev/bin :/usr/local/pspdev/bin :/usr/lib/lapack
>>125 win2000の場合変更した後再起動しなくても大丈夫って書いてあったので
してませんでした
一応再起動してみましたが駄目でした
>>127 出てきた情報をよく見てみな。
途中に %PSPDEV% という情報が混じってるだろ。
これは環境変数PSPDEVに設定した内容を展開したかった筈の個所だ。
だが、現実には展開されていない。
これは環境変数の設定順が関連してるんだが、
わかってることは「このままではダメ」ってことだ。
では、どうするか。
環境変数PATHに設定した値の中のPSPDEVの部分を
最初から展開した値に置き換えて設定してやれば解決するはずだ。
で、だな。
厳しいようだがこれくらい自分で解決できないと先行き厳しいぞ。
自分の頭ひねって、どうしてダメなのか、どうしたらうまくいくのか、
ちゃんと考えてみろ。
環境構築でさえも、きちんと自分自身の技術の実になるもんだ。
言い方を変えれば、そんなベースの部分がわかってなきゃ
実際にプログラム組んでも同じような事でけっつまづく。
自分で調べるクセをつけろ。
誰か、ソースが公開されてるか、リソースが再利用しやすい形で
移植して欲しいもん無い? なんか暇
ちょっと教えてください。
1.5のファーム用にメモステに実行ファイルコピーするときって、
フォルダ2つつくってかたっぽに%つけて、それぞれのフォルダには
EBOOT.PBPのファイル名で何を入れるんだっけ?
普通の名前の方にelf形式の実行ファイルをEBOOT.PBPにリネーム、
%つきの方に本来のEBOOT.PBP、でよかったっけ?
…ところで、リナザウ用にpsptoolchainビルドしたんだけど、欲しい人いる?
お、動いた動いた。
寝る。
環境変数わからなかった
とりあえず今日は寝ることにする
「わからなかった」と書けば、誰かが丁寧に教えてくれると思っているらしい
環境変数の話だが、c:\cygwin\home\ユーザ名\.bashrcの最後に、
## PSPDEV PATH SETTINGS
export PSPDEV="/usr/local/pspdev"
export PSPSDK="$PSPDEV/psp/sdk"
export PATH="$PATH:$PSPDEV/bin:$PSPSDK/bin"
の4行を追加、セーブ、そしてCygwin起動すりゃ大丈夫。
改行コードがUNIX向けなので、EmacsやらTeraPadやら秀丸やら適当なエディタで開け。
これ見て分からんのならそもそもUnixの基礎がなっていないので、どこかで学んでこい。
>>129 Geckoの移植頼む
Minimo位なら動くはず
>>135 それで行けました
ありがとうございます
とりあえずサンプル全部コンパイルしてみます
>>129 とりあえず、GP32にあって、PSPに無いエミュを移植してください。
たとえば、Lynxとか、光速船とか。
2.00にうpしちまった・・
ドラクエもFFもDSならPSPは
自作とエミュ専用でいい。
ゲームで遊ぶより自作の方が楽しいし、
いろいろと勉強になる。
PSPをホストにして自作ロボットとかやってみたいし。
助け求め…
関数の中に
dirent_t tmpdirent;
みたいな宣言が入ってると
実行時に必ずメモステアクセスの状態のままで死にます。
最初はスタックサイズがたらんじゃないかと思って
上の宣言を
char tmpchar[1000][1000];
に入れ替えて動かしてみたらちゃんと動作しました…
また、sceKernelGetPartitionMemory()を使ったら無問題みたいです。
もうさっぱり…orz
>141
とりあえずファイル操作潰して移植しちゃえば?
>>142 >>143 コメントありがとうございました。
143さんの言うとうりにしてみたらクリアできました。
でも、sceKernelAllocPartitionMemory()も使えるそうです…
いままでそういうふうに使ってきた…
PSPSDKで定義されていないAPIを定義して使いたいんですが、
そうすればできますか?
前スレが落ちてて前スレ934さんの例が読めない・・・
>>129 最近Timidity移植の話題振ってる者ですが、Timidity移植どうですか?
psptoolchain-20050801でたね
変更点をまとめたドキュメントとかないのかな…
diff読んだり、SVNを見るのは面倒くさい(´・ω・`)
150 :
119:2005/08/02(火) 20:18:02 ID:IYsAJnTD
>114-119
time_t nowtime = time(NULL);
struct tm *loctime = localtime(&nowtime);
環境はpsptoolchainで
時間が現在時刻で20時(PSP設定)のはずが、11時となって帰ってきた。
9時間ってことは、localtimeでアメリケンな時間になってんのかね?
154 :
145:2005/08/03(水) 01:31:38 ID:SLbB1r5o
>>146 遅くなりましたが無事読めました。試してみます
もう直前だけどコミケカタログブラウザ移植してくれる神はいないものか…
自分の力では無理…
失せろキモヲタ
移植元があるならやってもいいけど
オープンソースのブラウザあったっけ?
普通にあるじゃん。
ってコミケカタログブラウザかよ。webブラウザかと思ったよ。
カタログブラウザのソースは知らない。
現地でPSPを使ってカタログブラウザ見れると便利だよね
今携帯からなんでアドレス引っ張れませんが、
リナザウ用のソースは有りました。
込み毛なんて一体どれだけの人間が行ってるんだよ
俺の周りにいるオタっぽい奴でも行ったって話を聞いたことがない
そんな糞なモノ必要無い
需要もほぼ無い
オタは金あるんだから必要ならリナザウ買えよ
それで使えるんだろ?
ゲームボーイ用のコミケカタログビューアを数年前に見た記憶がある。
>>163 マジレスすると需要はあると思うけども、
もう一週間後だしな
それほど欲しいとは思わないが、あれば使うかもしれない
pspsdk で開発環境構築してるんだけど
日本語フォント表示するにはどうしたらいいかな?
あと 画像表示も よくわからない
どっちもサンプルにないんだよね
よろしくおねがいします
>>167 >日本語フォント表示するにはどうしたらいいかな?
自前で日本語フォントをバイナリで用意しておく・・・
PSP本体の日本語フォントはまだ使い方が、、判明してたっけ?
サイズが固定で小さめならバイナリで用意してもいいかもしれないけど
現実的にはFreetypeを使った方がいい。
ソースが公開されてて Freetype 使ってるものってありますかね?
ぐぐってみましたけど見つかりません
>>170 FreeTypeのチュートリアルなりデモなり通りに作れば動くよ。
それと画像の表示は、samples/gu/blitが一番シンプルで解りやすいと思う。
>>171 freeType のほうは良くわからないので
画像のほうの blit 試してみましたが
なんかモアレみたいなのと
左上に謎の数字が表示されますがこれでいいのでしょうか?
>>172 いいんですよ
後はソースの「generate dummy image to blit」になっている部分を
何かの画像データに置き換えて、サイズ指定を直してやれば
立派な画像表示のできあがりです
謎の数字の正体は、ソースを読めばすぐ分かるかと
freetypeは実用的じゃ無いと思うんだが。
同じフォントのサイズ違いを複数バイナリで持ってもTTCよりは
小さいだろうから、速度的にもサイズ的にも。
挫折orz
>>174 そうかな?JIS第二水準まで網羅したら、20×20のグレースケールで保持するだけでも
2.6MBのスペース使うし、標準的なTTFとどっこいどっこいだと思うけど。
>>177 8bitで考えての話。
ゲームやなんかの表示に実際に使うことを考えると、せめて4bitは欲しいところだけどな。
1bitグレイスケールじゃ汚すぎる。
仮に4bitにしても、サイズ別のバイナリを持ってたら結構な大きさになるでしょ。
何の話だか解らなくなってきた。 アンチエイリアスが欲しいの?
>>179 普通は欲しいと思うけど・・・
AA無しで通用するのって、デバッグ表示のような一時的な表示か
ブラウザのような文字の形が解ればいいようなものだけじゃない?
内蔵フォントやFTを使う意義はそこにあるわけだし
自分はWinでもアンチエイリアス切ってる人間なんで・・・・・・
4bit使うにしても、1ピクセルに4bitつかうより、倍のサイズを1bitで持って
表示時に補完縮小した方が使い勝手良さげ。
それでもfreetypeよかはずっと早いだろうし。
>>181 FTは確かに速度に難ありだね
ただ、自己組織化ソートを入れただけの単純なキャッシュでも
それなりのヒット率は得られるし、エミュぐらいギリギリの環境でなければ十分実用的かな、というとこです
バイリニア補完だと小さい文字が潰れちゃうし・・・
PCみたく文字サイズによってビットマップとTTFを使い分けられるのが理想だけど、それじゃサイズがなぁ・・・
悩ましいところ
下手にアンチエイリアスかけるよりはナガ10やら恵梨沙フォントを使った方がマシ。サイズも小さいし可読性を最初から考慮してあるから。
Lynxを持ってこようとしているのだが、通信周りのソースがほしい。
まだパッと見た感じ、pspsdkにサンプルソースがないが、参考になるいいソースないだろうか・・・?
2chブラウザの44氏に尋ねた方が早いかもしれないが。
やはりプログラムって難しい
いまだに画像表示もままならない
一応 画像表示 キー入力 フォント表示 等のソースはあるんだけど
全部 開発環境もバラバラのやつで 合わせるのが難しい
全部入りソースとか無いですかね 説明付の
ない。
意地でも合わせ込んで動かせ。
技量と根性を鍛えないと先はないぞ。
夢は 3D碁盤と3D碁石で sgf再生 なので頑張ります
むしろ全部一つにまとめたら、ごちゃごちゃして余計理解不能になると思うが
またお前か。
blit いじって 何か表示させようとしたら
何も表示されなくなった・・・・
先日、環境構築について根ほり葉ほり聞いてたのも君だろう?
やってることは悪くはないが
自分でたくさん本を読んで
レベルを上げる努力も必要だよ。
いつも誰かが教えてくれるわけではない。
レベルが上がれば上がるほど
自分でしか解決できないことも多くなる。
myBattery JET for PSPっていう、外付けのバッテリーがあった。
携帯の大容量電池を買いにいったんだけど、携帯にもデジカメにも
使えるからこれにした。
タバコ大の大きさで、少し不恰好かもしれないけど、8時間持つから
PSPで映画とか見ても余裕。値段は5,6千円だったかな。
便利だから、報告までに。
>>18のゲームなんだけど、
>>26の通りにメモステに入れて起動してもメニュー画面に戻ります
何がダメなんでしょうか? バージョンは1.0です
>>193 1.0と書いているファルダを転送し、
1.5用のものからEBOOT.PBP以外のファイルも全部そこに転送。
これで出来なかったら知らん。
これサムスとか色んな公開されているキャラも使えて面白いね。
TiMidity++の移植の件ですが、
toolchainでは作られない、usleepをシステムコールで実現
しないといけないようだと判断したのですが、
PSPDEVでusleepを実現するための、時間関係の関数は、
psputils.h の
clock_t sceKernelLibcClock(void);
しかないですよね?
なにかアドバイス有りましたらご教授お願い致します。
>>195 sceKernelDelayThread
単位はmsぽい。
>>196,197
ありがとうございます!
/**
* Delay the current thread by a specified number of microseconds
*
* @param delay - Delay in microseconds.
*
* @par Example:
* @code
* sceKernelDelayThread(1000000); // Delay for a second
* @endcode
*/
void sceKernelDelayThread(SceUInt delay);
とありますね。
でも、スレッド関係のを使うのがちょっと気持ちが悪いですね。
あれ、むしろ適切なのかな?
みなさんのおかげで問題が一瞬で解決しますね。
ここはすごいです。ありがとうございます。
>>199 main関数もuser_mainて名前のスレッドで動いていることを考えれば、納得しやすいかと
sceWaveSetVoice,sceWavePlay
この周辺のエントリって不明?
pspdev.ofcode.comにはその影もなかった。
>>191 おっしゃる通りなんですけど
最初のきっかけが欲しいんです
グラフィック表示してそれが動かせる
そこまでいければ後は自分で何とかします
blit の仕組み? ってのが良くわからない
予想では 板ポリ512×512 に 480x272のテクスチャを貼って
表示させるような感じなのかなと
generate dummy image to blit
のところで ドットを打ってる?感じなのですが
どこに何を入れるのか よくわからないです
何故あんな模様になるのか 色がついてグラデーションしてるから
色も指定してるはずなんだけど それらしきところが無い。
このへんで詰まってます
>>203 すでにいくつものきっかけを素通りしてんじゃないの?
環境構築の時点で充分きっかけだったと思うのだけど…。
次は音を出すあたりできっかけを求めにいらっしゃる予定ですか?
>>205 音まで考えてなかった・・
とりあえずオリジナルグラフィック表示が第一目標
PSPSDKって結局流出したdevkit使ってるよな。
ヘッダなんてそのままコピペの所が多いし。
そういやPSPのインターフェースは内蔵フォントを使ってるんだろうけど
flash0:/kdにlibfontがないということは、別のモジュールが肩代わりをしてるのかな?
>208
/pspsdk/sdk/debug/font.cなどを見るとよろし。
>>207 面目上パズルボブルから見つかったデバッグシンボルを元にしたことになってるけどね。
あからさまにdevkitをベースにしてるけど。
グラフィック表示何となくわかって来たけど
表示の際に下のほうになんていうかノイズみたいなのが
入るんですけど これは 故障なのかな?
>>212 ・画像データの作成時にノイズが混入した
・表示領域の指定が画像サイズの範囲を超えている
・画像データを書き込んだ後にキャッシュをフラッシュしていない
>>213 どっか変なところいじっちゃったかもしれません
というわけで psptoolchainで もう一回入れなおしてみます
ついでなので0801に
>>194 マリオとルイージだけじゃなかったっけ?
psptoolchain-20050801.tgzでtoolchain.shの実行中に
if no -DHAVE_CONFIG_H -I. -I. -I../.. -I../../sdk/base -I../../sdk/kernel -I../../sdk/user -g -O2 -G0 -Wall -fno-exceptions -fno-rtti -MT cxx.o -MD -MP -MF ".deps/cxx.Tpo" -c -o cxx.o cxx.cpp; \
then mv -f ".deps/cxx.Tpo" ".deps/cxx.Po"; else rm -f ".deps/cxx.Tpo"; exit 1; fi
/bin/sh: no: command not found
で止まってしまう・・・
noコマンドってなにorz
それともshの文法とか?
>>217 それはconfigure実行中に「目的のコマンドが存在しない」としてつけられた印
何か足りてないんじゃねーの?
ほんとだ、なぜかpsp-g++がないorz
コンパイルミスってたのかな・・・
thx、もう少しがんばってみます。
TiMidity移植の件です。
最後のコンパイルエラーがとりあえず、あと一つになりました。
+ psp-gcc -O2 -L/usr/local/pspdev/psp/lib -L/usr/local/pspdev/psp/sdk
/lib -o timidity aiff_a.o aq.o au_a.o audio_cnv.o common.o controls.o
effect.o filter.o freq.o instrum.o list_a.o loadtab.o m2m.o miditrac
e.o mix.o mod.o mod2midi.o modmid_a.o output.o playmidi.o raw_a.o rcp
.o readmidi.o recache.o resample.o reverb.o sbkconv.o sffile.o sfitem
.o smfconv.o sndfont.o tables.o timidity.o version.o wave_a.o wrd_rea
d.o wrdt.o psp_a.o ../interface/libinterface.a ../libarc/libarc.a ../
libunimod/libunimod.a ../utils/libutils.a -lm -lpspaudiolib -lpspaudi
o -lm -lpspdebug -lpspdisplay -lpspge -lpspctrl -lpspsdk -lc -lpspuse
r -lpspkernel
/usr/local/pspdev/psp/lib/libc.a(sysstat.o): In function `stat':
../../../../../newlib/libc/syscalls/sysstat.c:14: undefined reference
to `_stat'
collect2: ld はステータス 1 で終了しました
このエラーを解ける方いらっしゃいませんでしょうか?
サンプルのコンパイルではこのエラーでないのに、ここで出るのが
よくわかりません。ひょっとして、libcの問題のある部分を参照す
るプログラムをコンパイルする時だけ、上のようなlibcのエラーが
でるのでしょうか・・・?
>>221 俺もRINコンパイルするとき同じようなエラーでた希ガス
俺も原因知りたい
223 :
215:2005/08/05(金) 21:16:17 ID:3ujiCKRI
すれ汚しスマソ
>>221 要するにlibc.a中の関数 stat が参照している _stat関数が存在しないと言ってるわけで。
1:psptoolchain libraryが未完成なので_stat関数が存在しない
2:Makefile中ライブラリ指定の不具合で_stat関数を見つけられない
3:インクルードファイルの指定が悪くて_statマクロが見つからない
等、色々原因は考えられる。
ライブラリのどこにも_statがないなら、自前で_stat関数作ったら?
これはコンパイル時のエラーじゃなくてリンク時のエラーだし。
もうちょっと落ち着いてよく見たほうがいいぞ。
>>213 0801に入れ替え完了
とりあえず サンプルそのままをコンパイル
画面下部にノイズ
元のソースから入ってるようです
僕の環境だけかもしれませんけど
>>225 具体的にどのサンプルをコンパイルしたんだ?
blitです
>>227 generate dummy image to blitの後、while (!done)の前あたりに
sceKernelDcacheWritebackAll();
を追加してみるとか
やっとこさ、ソケットでyahooからHTTPを拾ってこられた。
ブラウザつくってるひとは偉いね。
ところで改行コードは「GET / HTTP/1.0\n\n」でいいの?
ウィンドウズ系のが必要になったりはしない?
あと副産物としてLinux用のパケットキャプチャコード書いた。
>>229 改行コードはRFCの定義に従えば\r\n
>>228 ノイズ消えました
ありがとうございます
レスありがとう。
定義に従っときます。
やっぱわかんないorz
blit 使ってオリジナル画像表示させようとしてるんだけど
BMPtoPSP を使って 480×272の画像を psp.c
として生成
unsigned short psp[]={
0x7FFF ………
見たいな形式になってる
そのあと blit.cに #include <psp.c>でインクルード
このあとgenerate dummy image to blitの
row[x]= のところに psp.c 内の配列を読み込ませればいけそうなんですけど
色々試してもだめでした
ここまでは合ってますかね?
このあとどうすれば…
TiMidity移植の件です。
/usr/local/pspdev/psp/lib/libc.a(sysstat.o): In function `stat':
../../../../../newlib/libc/syscalls/sysstat.c:14: undefined reference to `_stat'
のエラーは、
#include <sys/stat.h>
の下記のように、stat関数を使った場合同じエラーになることがわかりました。
int main(void) {
while(1) {
struct stat sb;
stat("test.txt",&sb);
}
return 0;
}
>>234 その程度でイチイチ質問するようだと音なんて到底だせない。
もう諦めろとしか言いようがない。
そんなにコンパイルを通したいならstatを使ってる行を消すべし。
コンパイル通っても起動画面を拝むことすらできずにお蔵入りだろうな。実際。
>>234 そもそもstat関数は標準関数じゃないからな。
DirentIOのAPIを使って自前で書くしかないだろ
もしくはエラーを返すダミーを作るとか
238 :
名無しさん@お腹いっぱい。:2005/08/06(土) 09:52:24 ID:zwLLkYus
midiプレイヤーか
期待大だな とりあえず midi 集めとこうかな
MIDIとなると、音源どうするんだろな?
TMIDIとごっちゃにしてた。すまぬ。
243 :
223:2005/08/06(土) 13:13:11 ID:ezn4PE//
少しずつ 進んでるのかな
>>233 の状態で
row[x] =psp[x*y]; にしたら カラーの砂嵐みたいな状態に
後一歩っぽいんだけど [ ] 内を色々変えても表示されない
psp[x] だと 画像の一番上のドットが縦長で表示されてる感じ
もしかして ラインごとに描いてるのかなぁ
PSPの画面モードとか
PSPのVRAMとピクセルの関係とか
もうちょっと基本的なとこから詰めるべきじゃね?
>>243 psp[x*y]じゃ(x, y)の位置を指してることにならないだろ。よく考えれ。
このコードが理解できないなら、まずポインタを勉強しる。
いい加減放置しる
「psp oto test1」キタコレ!!!
timidty GUS/patchを入れてMIDIファイル再生可能
このスレでTiMidity移植に挑戦している方の追い風となるか否か
最近ソース公開が少ないね。
どこかにAPIとかサンプルコードを集めたwikiがあれば
自作アプリがもっと増えると思うけど。
>>247 orz 先を越されてしまった><
無用の長物になりそうorz
作れる人はみんなもう飽きてるし、そうでない人は根本的に
プログラミング能力が低すぎるから、まともなアプリは増えない。
ネット関連のサンプルがほちい。
44氏ソース公開してくれんかな。
>>250 ま、まぁ、あえて反論はしないけど。
論理的にいこうね。
WMAを再生するのきぼんぬ
上3レスはスルーで。
psp oto test1ってSoundFont使えないのだろうか・・・。
まぁ使えてもPSPメモリ少ないからきついか。
ポインタって難しい・・・
なんだか基本的かもしれないことを質問させていただきますが、
STARTUP.SでSTUB_FUNCで設定されている関数IDというのは
正体はいったい何者なのでしょうか?
ファームのAPIの関数エントリアドレスとかじゃ全然ないですよね?
このIDをもとに何者かが適切なアドレスにジャンプさせたりするのでしょうか?
あるいはMIPSがこういうことをするような命令セットにできている
ということなのでしょうか?
いままで趣味で簡単なプログラムを書いていただけで、
下位レベルのことをあまり意識したことがなかったので
いまひとつよく頭の中がまとまらない…
そういう意味でPSPのプログラム、非常に勉強になりますわ。
あ、あるいはOSのようなものがいて、そいつのシステムコールが
関数IDで呼び分けられるような感じとか…
もしかして、まったく的外れなことをいってるかもしれませんが…
>>261 NID(APIの識別に使われるID)は関数名をSHA1でハッシュ化したもの。
PSPのローダが、アプリ起動時に該当セクションからNIDを取り出して
該当するsyscallに書き換えてたはず。
264 :
243:2005/08/07(日) 13:07:39 ID:IDWFsIEL
うーん わからない
教えていただけたら この板から一生消えるって
言ったら教えてくれますか?
>>263 ありがとうございます。
CPUのインストラクションレベルで理解できてるかちょっとあやしいですが、
雰囲気は大体理解できました。
基本的なこととして、システムコールというのはファームにあって、
そのアドレスが呼ばれるんですよね?
そういうメモリマップって、どこかで公開されてるんでしょうか。
あるいはPSPのローダがファームの一部、というかカーネルの一部であって、
私たちが簡単にアクセスできないような形でファームのコードにアクセスするのでしょうか?
(ファームというのはきっとPSPの中のフラッシュに焼かれてて、そこには
CPUからアドレスを指定してアクセスできて、…あ、でもファームのコード
というのはROMの上で実行されるのでしょうか、それともRAMにロードされてから
実行されるのでしょうか?
それとかGPU関係の命令はDMAでコマンドリストのようなものが転送されて
実行、ということですがGPUはそれをどう実行するのか、とか。
GPUはハードワイヤード?あるいはマイクロプログラムのようなものが
どこかに格納されていて、それで実行される?)
こんなことも知らずに今まではふにゃふにゃっと上位のアプリケーションだけ
作ってたわけですが…
本当にあらためて理解が怪しいところだらけです。
>>265 ファームウェアダンプツールを使うと、NIDとアドレスのペアと、内容のダンプを取り出せるよ。
ファームのコードは、パッチを当てられるところを見ると、ROMにあってロードされていると考えるのが妥当かと(怪しいですが)
>私たちが簡単にアクセスできないような形でファームのコードにアクセスするのでしょうか?
自作アプリの中でも、アドレス指定でAPIをコールしているものがあるように
カーネルモードで動作させれば直接アクセスすることが可能です。
>>266 カーネルモードとユーザモードについてはこの間ちょっとx86のLINUXの
ブートプロセスをお勉強しかけていて、大体こういう感じかな
というイメージが一応あるのですが、PSPでもカーネルが
同じようなことをしてるのかな…MIPSでも特権モードってx86と
同じ感じ?ちょっと勉強して出直してきます。
PSPのプログラムはじめてから俄然下回りやらアーキテクチャやらハードに興味が
でてきてしまって。
PSPを事例にそういうことをお勉強するスレがあればいいんだけど、
そういうのを作ってもあまり人こなさそうだし、そもそも自分の能力では
とても運営できんしw
>>267 APIコールの際に使われるSYSCALL命令は、システムコール例外を発生させます。
この際、例外ハンドラに処理が移る前にカーネルモードへの切り替えがプロセッサによって行われるので
ユーザーモードからのAPIコールでも、ファームウェア領域のプログラムを実行できるようになってるんじゃないでしょうか。
間違ってたらスマソ。
ちなみに、キャッシュ制御命令やブレークポイント制御命令などが
COP0(システム制御コプロセッサ)命令に分類されていて、カーネルモードでしか実行できなくなっています。
カラオケ歌詞表示するMP3プレイヤーとか
書式考えてる内に飽きて辞めた。
>>271 カラオケの話?
歌詞ファイルの書式なら標準的なものが既にあるよ。
リリクスレベルだと寂しいのでグラフィック描画コマンドとかry
>.271
"女医ハック"でもやりたいんか?
275 :
243:2005/08/08(月) 00:03:32 ID:BURF6Xwu
>>268 そうですか…
今日は体の調子が良くないのでもう寝ます
どなたか暇なときに気が向いたらで良いので
教えてください
それでは…
MS内に保存したhtmlを表示させるソフトってのは無いのか・・?
flashさえ動けばなぁ。。。
279 :
243:2005/08/08(月) 12:01:56 ID:NXQ5qao4
ふぅ あまりにもわからないので
やけくそで
row[x] =psp[x]*psp[x];
とかやっている
basicの 二次元配列みたいに
row[x,y] =psp[x,y];
とか出来ればいいんだけどなぁ
ヤケクソでわかるわけないだろハゲ
2次元配列がどういう仕組みになってるかわかってれば
どうすればいいかくらいわかる。
それ以前の問題だな。
そういうのはプログラム板でも行って来て修行してこい。
281 :
243:2005/08/08(月) 12:37:39 ID:NXQ5qao4
このスレにいる人だったらみんなわかってるんだろうなぁ…
>>279 あいうえお
かきくけこ
「き」は何文字目にある?(2,2)だから2*2=4文字目か?
なんかもうプログラム以前の算数の問題だな。
だから構うなって。
レベル低っ!
C言語の基本も学ばずに教えて教えてしてたのか。呆れた。
失礼なやつだ。
15年程前に、買ったばかりの外付けHDDの電源が飛んだ位。
誤爆スマソ
289 :
243:2005/08/08(月) 19:03:09 ID:YjagOFcG
教えて教えて 言い過ぎたせいで 罰が当たったようです
左にキーが入りっぱなしに…
でもとりあえず分解して直したので また色々試してみます
>243
とりあえずWindows上で普通に無料のコンパイラ系使ってプログラム組むだけのスキルつけてからPSPに移ってはどうだろうか?
291 :
243:2005/08/08(月) 19:13:29 ID:YjagOFcG
なんか出来てきたぞ
row[x] =psp[y*480+x];
これでネガポジ反転してるけど一応表示された
ここは243用のチラシの裏になりました
294 :
243:2005/08/08(月) 20:16:03 ID:YjagOFcG
まだちゃんと表示されてないので・・・
RGBの順をBGRにしろ。 これに対するレス不要。 二度と来るな。
296 :
243:2005/08/08(月) 21:06:05 ID:YjagOFcG
良く見るとネガポジではないかも
画像viewer でRGB→BGR変換した画像とか使っても駄目だった
>>296 ヒント:ピクセルフォーマット
これで分からなければ諦めれ
今頃ぐぐってんだろうね
多分最低もう一回は来そうだ
300 :
243:2005/08/08(月) 22:38:13 ID:YjagOFcG
ギブアップorz
Timidityなんとかコンパイル出来て、2倍速だけど音がなったよ(^-^)
また怒られそうだけど、興味のある人一緒にデバッグしてくれる人
いませんか?
やっぱりもうちょと作り込んでからにします^^;
バックライトを強制消灯するAPIって判明してますかね?
>>303 ユーザAPIでは少なくとも無理だと思う
>>305 リモコンで強制消灯出来るそうですから、一応APIはありますよね・・・
WAVEフォーマットについて、
saturnのサンプルベースのプログラムで
再生できる形式にはどうやってしたらいいですか?
サンプル付属の音は再生できるのに
自分のものが再生されない。
エラーチェックを無理矢理はずしたら変な音はでるものの。
ファイルの内容にfactって書いてあるやつは駄目みたいです。
308 :
243:2005/08/09(火) 12:22:53 ID:dYlU9P1w
まだ悩み中
24bit カラーなら
*(BGR+2) = *RGB++;
*(BGR+1) = *RGB++;
*(BGR ) = *RGB++;
BGR += 3;
みたいにすればいいと書いてありましたが
BMP2PSPで 変換すると
0xFFFF とかなってるから 16bit?
難しい
>>308 本当に何か作りたいと思うなら、自分自身で試行錯誤しろ。
それでもダメならお前には才能がないって事で諦めろ。
http://a524861379.qp.land.to/index.html こちらのサイトのBBSで色々な質問をしませんか?
ここは・・・・・開発者がファイルをUPするために使っている・・・・・BBSで・・・・・・近頃初心者さんがレスを多数立ち上げて・・・・・『Fastloaderの転勤』まで・・・。
私や、少し訪れてくれている・・・・・・上級者が持てる知識でお答えしますので・・。
初心的質問は・・・・・上記のサイトで・・・・・質問してあげてもらえませんか?
管理人さんも・・削除やブロックかけるのが大変そうですし・・・・・
*しかし、無断転勤してる場合がありますので・・・・エミュレータとかPSP情報サイトの管理人方々は見に来ないほうが・・・いいかも・・。
質問に答えてやろうというような上級者や・・・・質問したい初級者はこちらに来ていただいたほうが・・答えを得られやすいかも・・・。
>>307 エラーチェックの内容をちゃんと見れば
どんなフォーマットが再生できるのかもわかるでしょ?
RIFF形式のフォーマットも参照。
PSPhacking101のEpisode II - Attack of the Firmwareって
なんだろう?
重くてまだビデオがダウンロードできない。
ただの初心者向けインストラクション?
落とす価値ないかも。なんかこのID気に入った。ガンダムみたい。
315 :
243:2005/08/10(水) 09:30:43 ID:w9lTIVxH
>>316 これ昔のPC雑誌に素人が投稿してたゲームそっくり。
テーブルゲームで思考ルーチンを考える時に何かいい命令とかテクニックはありませんか?
風呂に潜って息止める。コレオススメ。
320 :
名無しさん@お腹いっぱい。:2005/08/10(水) 16:48:15 ID:kdjqAFgn
AVI Playerってどうなの?
マルチしてる所見ると出品者か? ゴミイラネ
324 :
243:2005/08/12(金) 11:20:16 ID:qjajztmZ
うーむ やはり駄目だったか・・・
このスレも停滞中だし
暇つぶしにでも教えてください
教える価値もない。
1週間以上もやってできないなら、あきらめろ。
漏れ未だにGE試してないんだが、243と同じ道辿るのかな。
>>243がつまづいてるところはGPUに限った話じゃないけど。
CPU描画でも同じことになる。
328 :
名無しさん@お腹いっぱい。:2005/08/12(金) 18:38:53 ID:/fHfFXBq
329 :
名無しさん@お腹いっぱい。:2005/08/12(金) 20:43:27 ID:lO0iirPb
DJSPの「プラズマですか」ってなんだ(w
きっとプラズマって名前に懐疑的なんだろねぇ。
まぁ納得ですけど。
俺のクレクレを聞いていただける作者様はおられますか?
>>1に書いてあるようにOKなら要望書きますんで
332 :
243:2005/08/12(金) 23:41:28 ID:p6w8Iy0k
>>327 もしや さりげなくヒントですか
CPU描画 (hellopsp等) でも RGBを BGR に変換してるから
そのソースを良く見ろって事ですね
ありがとうございます
>>332 >>291まではほぼ正解で、
最大の問題は、コンバータが作成する画像のpixel formatがRGBA5551であるのに対して
blitが使っているPFがRGBA4444であること。
sceGuDrawBuffer(GU_PSM_4444,(void*)0,512);
sceGuTexMode(GU_PSM_4444,0,0,0);
ここらあたりを変えてみれ。
どう変えるかはSDKのドキュメントを嫁。
後は自分で考えれ。
できなければ諦める。
334 :
243:2005/08/12(金) 23:57:36 ID:p6w8Iy0k
>>333 ありがとうございます 普通に変えるだけで出来ました
次はfor 文での移動を試してみます
宣言通り二度と来るなよ。
336 :
243:2005/08/13(土) 00:13:51 ID:L9eEgKzQ
//PSP_MODULE_INFO("TESTGAME", 0, 1, 1);
PSP_MODULE_INFO("TESTGAME", 0x1000, 1, 1);
//PSP_MAIN_THREAD_ATTR(THREAD_ATTR_USER | THREAD_ATTR_VFPU);
PSP_MAIN_THREAD_ATTR(0); /* 0 REQUIRED!!! */
SDKでモジュールインフォを上のように設定したら、
ネット関係は使えるようになったけど、HOMEボタンで「ゲームを終了しますか」
の画面のはい/いいえが選択できなくなった。
どこが問題かわかる方はいますか?
ただ選択出来なくなるだけならまだ良いんだけどね・・・
340 :
名無しさん@お腹いっぱい。:2005/08/13(土) 23:30:58 ID:MfdvY4+6
> 318
おばけ屋敷ゲーム for PSPですか?!
若干イラッっときた
c++でzip関連ライブラリの使い方がさっぱり和姦ね。
zlib.hをincludeしただけで、既にlseekがconflictとか言われる。
x86エミュ動いたそうですが。こちらは静かですね。
PSP上のx86エミュ上でLinuxを走らせてその上でJavaなんて
使い物にならないですかね。
エミュが出るたびに盛り上がる方もおかしい。
子供は寝なさい。
夢のないオトナは嫌い。
最新版toolchain/PSPSDK/C++で書いていたら、起動時にメモリが
静的に確保され、sceKernelTotalFreeMemSizeで空きを得ると常に
1M程しか空いていない事に気付いたのですが、これは++の場合のみ
newに備えた物、PSPSDKがmalloc等のメモリ管理全般に備えた物、
コンパイラの仕様、等、何に起因する物なのでしょうか。
検証してみたら、コンパイラかSDKかは解りませんが、最初に
malloc/newした時点で、要求サイズとは関係無しに1M程残し、
残り全て確保される模様。 うーん
人が書く文章って人によって全然違うのな
上の人がえらく特徴的
失せろ
伏せろ
オセロ
終わったな このスレも
北米ソフト売上
month | PSP | NDS |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
First : 1,077,353 354,795
Second : 830,714 1,066,922
Third : 621,350 252,273
Fourth : 686,502 302,498
Fifth :534,903 557,803
Sixth : 215,113
Seventh .: 202,788
Eighth : 441,435
Ninth : 285,377
_______________
Total 3,750,822 3,679,004
⊂二二二( ^ω^)二⊃ブーン!!
243が全ての元凶だな。
8月末で消えてくれりゃ良いけど。
全然関係なくてすいません。
PS2用の自作ソフトスレって無いんでしょうか。
>>356 もう来ないって宣言してから来てないみたいだよ
黙って氏ね
ちょっと落ち着け
ミイラ取りがミイラ状態だぞ
追い出し厨みたいで 見苦しい
ブラウザが欲しかったからもう一台買った。
片一方でネイティブの自作アプリ、もう一方でCMSのWEBアプリを構築中。
めちゃくちゃ楽しー!
UMDのゲームするときもメディア入れ替えなくてすむし。
…でも、なんで両方を1台でできないんだよ。
362 :
名無しさん@お腹いっぱい。:2005/08/17(水) 17:22:42 ID:mN+KsDPL
ネットリゾルバーって使い方判明してたっけ?
sage忘れた。m(_ _)m
364 :
名無しさん:2005/08/17(水) 17:27:53 ID:EM5tqsKa
>>364 UMDなしでの起動は概出
そんでもって宣伝乙
sceNetResolverStartNtoAでフリーズするとお困りの方は
最後の引数を1にしてみましょう
最後の引数を1にしても、第4引数が0だったら意味がない希ガス
そこは自分でなんとかできるでしょ
何か作ってる人
挙手求む
Ogg鳴らそうと思ってとりあえずTremorコンパイルしようとしてるんだけど
$ ./configure --host=psp --prefix=/usr/local/pspdev
configure: WARNING: If you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used.
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for psp-strip... psp-strip
checking for psp-gcc... psp-gcc
checking for C compiler default output file name... configure: error: C compiler cannot create executables
See `config.log' for more details.
ってなってしまう・・・
gccの作ったバイナリをちゃんとPSPのバイナリとして認識できてないんだと思うんだけど、どうすればいいのかわからない。
どなたかやった人いらっしゃいますかね?
Tremorなら、svn://svn.ps2dev.org/psp/trunk/libTremorから取ってくるよろし。
あと使い方は、svn://svn.ps2dev.org/pspware/trunk/PSPMediaCenterあたりを参考にするある。
>>372 なるほど、PSP用のTremorがあるんですね。
これでいろいろ遊べそう・・・
ありがとうございます。
OggVorbisならlibogg+libvorbisでも問題なく再生できるよ、と言ってみる。
Tremorのほうがいいのかもしれないけど。参考までに。
375 :
371:2005/08/18(木) 23:58:57 ID:nC5ExnsY
>>374 なるほど。FileAssistantのを見てたのでTremorでやってたのですが、普通にその組み合わせでも行けるんですね。
とりあえず
>>372さんのURLにあったPSP用Tremorで再生できました。
再生部分、ほとんどFileAssistantの転用ですがw
(もしかしてこれもPSPMCの転用?)
でもたまにLoadでフリーズするんですよね・・・
Loadの前にOGG止めたりはしてるんですけど、Audioも一旦止めた方がいいのかなと思ってやってみたら再生されなくなるし。
なんかコツみたいのあるんですかね?
376 :
376:2005/08/19(金) 10:18:18 ID:ZktBQE62
>>376 svn://svn.pspdev.org/psp/trunk/psptoolchain
378 :
376:2005/08/19(金) 11:14:31 ID:ZktBQE62
>>377 ありがとう
スマンこれどうやるんすか(DL)
教えてくれればこれ以上荒らさないんで(願)
ホントごめんね
svnでググってみるか・・
379 :
名無しさん@お腹いっぱい。:2005/08/19(金) 11:36:28 ID:s017Hqsj
>>378 脅迫されたので仕方なく書いておく。
cygwinを入れてsvn checkout svn://svn.pspdev.org/psp/trunk/psptoolchainで落とす
sh toolchain.shで自動ビルド
是で分からなかったら諦めれ
>>379 cd psptoolchain をお忘れなく。
382 :
376:2005/08/19(金) 13:03:22 ID:ZktBQE62
やねうらおーさん参考に今、Cygwinをインストール中....結構、かかりそうですね。
100%と出たら、また0パーから始まった。
いつ終わるのやら。
383 :
名無しさん@お腹いっぱい。:2005/08/19(金) 13:10:43 ID:s017Hqsj
>>382 >教えてくれればこれ以上荒らさないんで
386 :
264:2005/08/19(金) 14:57:11 ID:rlg/hhlg
>>384 誤解されてるみたいなんで
誤解を解くために一レスだけ 許してください
>>376 は 僕じゃないですよ
>>385 すげー。手元にあった悪魔城ドラキュラのmidiがばっちり聞けたよ。
激しく乙!
でも使い方が分るまで20分もかかったorz
しかし最適化が原因で動かなくなるってのは
コードにバグがある証拠だと思ったりするんだけど…
何の話か知らんが、PSPの場合大抵WORD境界線じゃないかね。
>>387 おお。よかったです。
使い方わかりにくくてごめんねorz
試してくれてありがとう。
>>388,389
音データのバッファが用意出来てるかどうかを示すフラグを
二つの関数でフラグを立てたり、下げたりしてるんだけど、
-O2でやると、片方の関数では1になってるのに、他方では0
になってる動作をするんだよねorz よく分からないから、
とりあえず保留中ですorz
そのフラグがグローバル変数なら、 別のソースに置いてみるとか。
グローバル変数なら、volatileつけるとよろし。
volatile int flag; みたいな感じで宣言
>>392 それでバッチリ解決しました!(^O^)
感謝します!
外人さんの自作ソフトのDr.MARIOってなにげに縦画面で
プレイ出来るんだね 知らなかったよ
Timidity++の件です。
FPUを利用する方法はまだ解明されてないんですよね?
それがあったらだいぶ楽なんだけどなぁ。
やねうらお大先生が例示してたと思うけど。
FPUはPS2と同じインストラクションセットだから
そのまま利用可能かと
Timidity++試してみました出雲さんのパッチで音がなるの確認できました。
いつも使ってるSFセットは無理でした300Mあるから当然かな・・・
かなりいい音でなったのでかなり感動です。
これからも期待してます。がんがってください。
あれ、TiMidity++の浮動小数点処理が重いのは、FPUの浮動小数点
処理を利用出来ないからじゃなかったんだっけ? 勘違いしてたかな・・・。
>>389 ありがとう!がんばります。(^-^)
pspsdk の開発環境でprintfつかって 日本語フォント表示できるように
するにはどうしたらいいでしょうか?
>>400 printf じゃ出来ないんじゃない?
日本語使ってるもののソースを参考にすればいいと思うよ。
StepManiaがPSPで出来るようになるかもしれないって話は本当か?
もちろん本当さ。どんなソフトだろうと作れば動く。
はぁ?んなこと知らねーよここで聞くな
SDLが使えるようになったみたいだけど、SDLで開発してる人いる?
パフォーマンスが気になるのだが。
410 :
名無しさん@お腹いっぱい。:2005/08/21(日) 18:21:16 ID:GB/2HNkz
toolchain.sh なんですけど、皆さん普通にsvnが使えてますよね…。
どうも俺の環境だと、svn に続けて何のコマンドを打っても
svn: Can't convert string from native encoding to 'UTF-8':
って出てとまってまうんです。(svn help でもだめ)
何か必要なものがあるんでしょうか?
>>410 ロケールの設定が間違ってるんじゃない?
日本語フォントの実装は難しい
一応調べて参考になりそうなものを見つけた
フォントコンバータとサンプルとか (旧UL2) … 要csdlibrary (作者:そとのひと氏)
ってのがあった サンプルとか のほうはDLできたけど
csdlibrary ってのは探しつづけてるけど全然見つからない
日本語フォントはPSPに内蔵されてる。
パスはflash0:/font/jpn0.pgf。
あとはsceLibFontの使い方を探ればよさそう。
ビットマップフォントの実装なら簡単。
>>413 sceLibFontの利用にはlibfont.prxが必要で、
PSPSDKのloadModuleサンプルでは、
ユーザモードでの非暗号化モジュールのロードには成功してないからなぁ・・・
一応パッチをする関数はあるけど、カーネルモードでしか動かない上、
コメントにも書いてある通り、ハングアップする。
Wifi-testみたく、自前でモジュールエントリを書き換えればいいんだけど
そこまでして使うぐらいなら、ビットマップフォントなりfreetypeなり使った方が楽だな。
>>413 >>414 やはり 内蔵フォントは使えないみたいですね
フォントで調べると freetypeって 良く見かけますが
pspに実装する仕方が全く見当つきません
詳しい解説サイト等は無いでしょうか?
今探してる限り見つかりません
freetype2のチュートリアルでも読めば使い方はわかるはずだ。
実装はPCだろうがPSPだろうが同じだと思うけど。
freetypeでレンダリングした文字を画面上にコピーすればいいだけだし。
ビットマップフォントは該当文字の部分を単に画面にコピーするだけ。
>>417 それは理由にならんだろう・・・
excite翻訳は技術系専門用語もそれなりに翻訳してくれるから、
ページ翻訳でがんばってみれば?
というか、英語が書けないのはしょうがないとしても
チュートリアルぐらいは読めるようにならないと、これから先何度も躓くことになるかと。
正確に読めなくても、コードのサンプルと併せて見れば、何となく言いたいことは掴めるでしょ
ビットマップフォントでいいじゃん。
小さめの文字はその方が読みやすい。
sceNetApDialogDummy系の関数ってどう使うかわかりますか?
TiMidityの件です。
報告&質問です。
エコーなどのエフェクトをONにすると、音飛びしてしまうので、とりあえず、
psp-gccの吐くコードがFPUを使用したコードを吐いているのか調べてみました。
割り算を含む簡単なmain関数を-S付きでコンパイルし、アセンブラを
見てみると、float=float*floatの場合は、
div.s$f0,$f12,$f13
というような、FPUを使うコードがありましたが、
double=double*doubleの場合は、
jal__divdf3
という、libgcc.a内の関数(?)に飛ぶコードになっていました。
floatの演算はFPUを使えるが、doubleだと使えないことになっているようでした。
psptoolchainのgccソースも追っかけてみましたが、まだ追っかけきれていません。
どなたか、この問題についてご存じの方いらっしゃいませんでしょうか?
どうぞよろしくお願いいたします。
上記間違えました。
誤:float=float*float
正:float=float/float
誤:double=double*double
正:double=double/double
でした。
>>421 そもそもの問題は、PSPが倍精度の浮動小数点を扱うFPUを持っていないことです。
端的に言えば、単精度であるfloatしか扱えません。
doubleの演算を行う場合は、gccが用意した関数を利用するか、
一度floatに変換してから、FPUを利用することになります。
(__extendsfdfや__truncdfsfはこの用途に使われます)
前者は精度を維持することが出来ますが、一般的に低速です。
後者は精度を犠牲にすることになりますが、FPUを利用した比較的高速な処理が可能です。
よほど精度に気を配る必要がない限り、doubleを利用する価値はないと言えるかもしれません。
gccのコンパイルオプションで-msingle-floatを指定することで、
doubleを強制的に単精度に変換させることができます。
確認はしていませんが、こうすることでFPUを利用するコードを吐くようになるのではないでしょうか。
とはいっても、速度を重視するのであれば、doubleは使わない方が得策でしょう。
freetype 一応インストールはしたんですが
よくわからないので ビットマップフォントのほう調べてみます
とりあえず ひらがなだけでも実装できるよう頑張ってみます
>>423 大変すばらしい丁寧な助言ありがとうございます!
なるほどそういうことだったのですか。
-msingle-floatを試してみます。
あなたのような優しい先輩がいらっしゃることがとてもうれしいです。
ee-gccでは有効だったみたいだけど
psp-gccではsinglefloatは無視されるよ(´・ω・`)
427 :
423:2005/08/23(火) 02:12:26 ID:O5WRBLdw
>>425 すみません、コンパイルオプションの部分を勘違いしていました orz
-msingle-floatは、double演算ができないと想定する指定であって、
doubleを単精度に変換する指定ではありません。
指定をすると、double関連の処理をgccの関数に割り振ってしまいます。
これじゃ意味がないですね・・・
doubleを単精度として扱うための正しいコンパイルオプションは
-fshort-double
ですね。
勘違いをしていて申し訳ないです。。
>>426 427
ほうほう、そうなのですか。
いえいえ、貴重な情報であるのは変わらないです。
-fshort-doubleを試してみます。
ありがとうございます!(^O^)
つ[チラシの裏]
興味あったんで、psptoolchainを入れてみた。
FreeBSD4.x系
pkg_addで
gmake-3.80_2
libtool-1.5.10
subversion-1.1.1
libgnugetopt-1.2(getopt.hが無いので)
を導入
autoconf-2.59
automake-1.9.6
をsourceから導入
標準のgcc-2.95.4では、構築できないようなので
gcc-4.0.1をsourceから導入
今度は、stdint.hが無いと怒られる(あたりまえ)
# echo '#include <sys/types.h>' > /usr/local/include/stdit.h
として上手く行きました
これ買ったとして、どう使うのよ
誤爆スマソ
日本語表示まだ全然できませんorz
GEでの描画って単純な2Dのコピーだと、CPUで書くより遅いんですかね?
32bitのαテスト無しで試してみてるんですが、
Dmacで背景をコピーした後CPUで描画と
GEで背景を128x128で分割してコピーした後テクスチャ切り替えて描画
だと、CPUの方が随分早いです。
αや拡縮使う場合は、完全にひっくりかえるんでしょうけど・・・・・
GEの使い方にもよるけど、ただのコピーならDMAを使ったCPU処理の方が早いだろうね。
でも、体感で明らかに分かるほどの違いは出ないと思うけどなぁ・・・
余分なコマンドを何度も送信してたりしない?
ないとは思うけど、syncを使ってたり。
sceGuDrawArrayを1矩形毎に呼んでいた所を、
まとめて呼ぶ様にしてみた所、1割程アップしました。
GU使うの辞めて、自分でライブラリ書いてみるかなぁ。
フォント表示のみのサンプルソースってないですね…
元絵がメインRAM上にあると、GEで描画するのはあまり速くない。
その代わり描画中にCPUを使えるから、全体の処理内容次第だな。
VRAMにテクスチャを置くと早くなるんでしょうかね?
Dmacでのコピーは、VRAMtoVRAMよりもSMEMtoVRAMの方が僅か
ながら早かったので、あまり試す気になれなかったのですが・・・
ちなみにDmacでのブロックコピーはVRAMtoSMEMが最速ですた。
どちらかというと、ただのBltにDrawArrayを使うのが無駄。
sceGuCopyImageて専用のコマンドで構成されたコマンドがあるでしょ。
ISO起動させるとき、
HOOK BOOT と Fastloader
どっちがいいんでしょうか?
>>439 背景はsceGuCopyImageでコピーする様にしますた。
αテストでの抜き色でCPU描画を超え、抜き色+適用値のαでは
大幅に引き離したので、とりあえず良しとします。
あと気になるのは、UVに128x128以上の面積を指定すると
極端に遅くなるんですが、これは32bitのせいで、16bit・indexなら
もう少し広い面積でも大丈夫なのか、
バイリニアにするともの凄く重くなり、等倍のつもりでも
MAGが適用されてる様で速度が半減し、実用的じゃない、
の二点・・・前者は勝手に試せよって感じですが、
後者は改善の余地があるのかすら解りません。
>>442さん
自分もGPUで透明色を持ったスプライトを描画させるべく
コードを書いてるのですが、どのサンプルを見てやってますか?
pspsdkに入ってるサンプルでコレを見ろ!ってのがあったら
アドバイスを頂けると助かります。
『やりたいこと』
4ビットで定義されたスプライトデータをLUTを使って描画する。
ただしスプライトデータで利用するパレット0は透過色で描画する。
>>443 442ではないですが、CLUTによる描画はpspsdkにサンプルがありますし、
透過色で描画したければ、パレット0の色のアルファ値を0にしておけばいいだけかと思います。
>>442 何ビットカラーでも、UVが128ドットを越えると極端に遅くなる模様。
その場合は分割して描画すれば速い。
バイリニアを使うと、さらに数ドット厳しくなる。
>>443 表示させるだけならblit でいいと思う
このスレ blitで検索すれば やりかたもわかるよ
>>444さん、446さん
blitを改造して、透明を含んだスプライト表示できました。
あとはLUTに書き換えるだけなので、目的は達成できそうです。
ありがとう!
>>448 日本語フォント表示はエミュレータのソースに同封されてます。
そういうのじゃダメなのかな?
>>449 エミュレータのソースの中から
フォントの表示部分だけ見つけるのができない
>450
NesterJの例だとpg.cのDraw_Char_Zenkakuやら見ればええような。
>>451 とりあえず関係ありそうなのは
main.c
main.h
string.c
string.h
pg.c
pg.h
font.c
fontNaga10.c
syscall.h
これくらいですかね うーむ 複雑
>>453 情報ありがとうございます
でも GB-JKIT 落とせないんですけど・・・
>452
ソース追うのが大変なら、
gnu globalでも使ってみたらどう。
webインタフェースで見るもよし、tagジャンプで
辿って行くもよし。
>>452 ソースはpg.cだけで完結してるはず。
font.cとfontNaga10.cはインクルードされるのみ。
ソース追うのが大変なら全部リンクしてmh_print使えばいいだけだと思うんだが。
というよりも、ソースがあるだけ幸せだと思ったほうがいいと思うんだけど
それすら拒否して何を作ろうとしているのかと。。。
>>456 pg.c に pg.h インクルードされていて
それで必要なのかなと 思ったんですけど
全部をリンクしちゃうとさらに何がなにやらわからなくなってしまうのでorz
>>457 pg.cからmh_print Draw_Char_Hankaku Draw_Char_Zenkakuだけコピってくればいいかと。
必要なファイル(fontNaga10.c, font.c)は適宜include。
Draw_Char_****では、pgVramGetAddrを使ってVRAMのアドレスを取得してるけど、
このあたりは旧来の方法とPSPSDKで大きく食い違っているところで、
混乱の種になりやすいので使わない方がいい。
PSPSDKのDebugPrintfのように0x4000000に固定するか、
sceGetFrameBufを使って取得するようにするのが理想。
APIを使う場合は、負荷を考えてmh_printの先頭で一度だけ呼び出すようにしてもいい。
pixel formatにあわせて描画するようにすれば、なお良し。
sceGetFrameBuf→sceDisplayGetFrameBufね(´・ω・`)
GuDrawArray等を使わずに、GUのコマンドリストに自分でコマンドを
追加する事は出来ないのでしょうか。
GU内のカウンタのポインタを得られれば、GuStartに渡した配列に
ポインタの位置から追加し、ポインタに追加した分を加算とか
出来そうなのですが・・・
>>460 sceGuSendCommandi
sceGuSendCommandf
という関数があるはず。
>>461 thx。 これdevkitに含まれてませんね。
しかし、これはGUでカバーされてないレジスターをちろっと弄る為の物で、
描画に使うと、オーバーヘッドが凄い事になりそうな予感・・・・
>>462 いえ、そもそもlibguは内部のコマンド発行にsend_commandiという内部関数を利用していて、
sceGuSendCommandiは単純にsend_commandiを呼び出しているだけですから、
GUライブラリの中身を自前で書くために使っても、オーバーヘッドは無視できるレベルかと。
inline指定すればコールも消えるでしょうし
オーバーヘッドを考慮しなくてはいけないような
処理はCPUでやった方が速いんじゃないですかね?
CPUとGPUとドッチが効率いいか考えて組めば
コマンド発行のオーバーヘッドは無視できるレベルのような気がします。
send_commandi/fはリストの末尾に書き込んで、ポインタを進めてるだけだしね。
評価されるのはsceGuFinishが呼び出される時だけ。
発行のオーバーヘッドはあまり考える必要はない。
どうしても気になるなら、IMMEDIATEではなくLISTで書き込んでおいて再利用って手もあるし。
VRAMにテクスチャ置くと次元の違う速度になりますね・・・・
これか。これなのか。
SPRITEからTRIANGLEにしたら遅くなったので、GuStartに渡すリストも
VRAMに取ってみたら、こっちは逆に重くなってショボン
代入時のアクセスが遅いのかな。
>>463 PS2DEVのレジスタリストだけではイマイチ解らず、検証出来るレベル迄
辿り着かない内に挫折 orz
8x8のスプライトを4ビットのLUTで描画してるんですが
1ライン目が「0x21,0x34,0x43,0x21」で表示。
2ライン目が「0x12,0x43,0x12,0x34」で表示となってしまいます。
バッファの横幅の設定ミスかな?と思ってsceGuTexImageを色々変えてみたんですが
0xffの部分が表示される気配がなくて困ってます。
GU_PSM_T4指定の場合は32pixel単位でしか表示できないなんてことはないですよね?
unsigned short __attribute__((aligned(16))) lut16[] = {
0x7fff,0x801f,0x83e0,0xfc00,...略...};
unsigned char __attribute__((aligned(16))) tex4[] = {
0x21,0x34,0x43,0x21,
0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0xff,
0x12,0x43,0x12,0x34,
... 略 .... };
sceGuClutMode(GU_PSM_5551,0,0xff,0);
sceGuClutLoad((16/8),lut16);
sceGuTexMode(GU_PSM_T4,0,0,0);
sceGuTexImage(0,8,8,8,tex4);
sceGuTexFunc(GU_TFX_REPLACE,GU_TCC_RGBA);
>>458 とりあえず pg.c を pspsdkの blit フォルダにいれて
blit.cにインクルードしてみましたけど
コンパイル時に恐ろしい数のエラーがorz
>>467 内部的に128ビット単位で処理されているとしたら、32ドットが限界かもね。
ところで、LUTじゃなくてCLUTって書いてくれない?
LUTでも間違いではないけどね
>>470 そうなんだけど、わざわざLUTって書かれると「CLUTじゃなくて
何か別のテーブルか?」と勘ぐってしまうので。
あと「CLUT」で検索した時に引っかからなくなるしね。
ちと提案。timidityGUS/patchとかdefault.ttfとか各アプリで共通で使うものってあるよね。
だから、そういうのを入れて置く、共通のディレクトリ決めたらどうだろうか。
ms0:/PSP_COMMON/ とか?
賛同者が多ければ、開発者側としてもユーザー側としても便利になりそうだね。
そこに置いて使うツールを作って公開すれば、自然とそうなるんじゃないの。
default.ttf必須なアプリを同じ作者氏が複数作ってる場合も、
その作者氏がそういう方式を採用してくれたら嬉しいよな。
(xkazoku for PSPとpsp oto testとか)
そしたら別の作者氏もその流れに乗りやすくなる、かも?
Yoshihiroさんのバージョン1.52偽装出てるね。
怖いから試せないけど。
YoshihiroさんってRinのpgWaitVblankStartを殺して
スピードアップしたとか言ってた人だよね?
今度はどうなんだろう。
ToolchainのGCCにAllegrexのインストラクションが追加されたね。
wsbwとbitrevはMIPS32のインストラクションセットに含まれてなかったと記憶してるけど・・・
独自拡張かな?
podcastソフト作ろうと思った。
開発環境が整備できなかったので2時間で中断
あとはたのむ
あ、サウンドパッチはPSP_COMMONに置くように書き換えときました。
PSPでMP3再生しながらテキスト表示できるソフトあるかな?
あるよ
PSP_COMMONを共有フォルダにするのはいいけど、
PBPファイルと同じフォルダからもモジュールを読めるのがベストかな。
TiMidityはどうなってるのか知らないけど。
486 :
468:2005/08/26(金) 07:32:08 ID:IvYupitQ
pg.cだけじゃ駄目みたいで
とりあえず全リンクしてみたけどエラーが・・・
必要な部分がわからない
>>486 まだやってんのかよ。必要なのはmh_printとそれが依存する関数や配列だけ。
思考停止してないでコードをちゃんと読めばわかる。100行ぐらいしかないんだから。
万一コードの意味がわからなくても依存関係ぐらい把握できないはずない。
>>486 >>243 この板から一生消えるんじゃなかったのか?
以下のも全部お前だろ。暇だから抜き出しちゃったよw
行動や思考や文体からバレバレだぞ。もう勘弁してくれ。
>>400,404,412,415,417,424,432,436,446,448,450,452,454,457
>>485 まず同じディレクトリを見にいって、
なかったら、PSP_COMMONを見にいくって感じだといいね。
490 :
468:2005/08/26(金) 08:42:15 ID:IvYupitQ
>>484 ありがとうございます。
単純にwsbhのword版ということですね。
いろいろと使い道がありそうです。
問題はコンパイラがうまくその命令を使ってくれるか、ですが・・・
当面はインラインアセンブラですかね。
>>491 psptoolchainだと built in function(組み込み関数)が使えるようです
int __builtin_allegrex_bitrev(int);
int __builtin_allegrex_wsbh(int);
int __builtin_allegrex_wsbw(int);
int __builtin_allegrex_clz(int);
int __builtin_allegrex_clo(int);
int __builtin_allegrex_ctz(int);
int __builtin_allegrex_cto(int);
int __builtin_allegrex_seb(char);
int __builtin_allegrex_seh(short);
int __builtin_allegrex_max(int, int);
int __builtin_allegrex_min(int, int);
void __builtin_allegrex_sync(void);
493 :
468:2005/08/26(金) 21:50:20 ID:pJWwZ5w6
エラーは少なくなってきたけど・・・
mh printって 使い方のサンプルがみつからないんですけど
mh_print(10,10,"どうでしょうか",0x0000);
これだと使い方間違ってると エラーがでます
サンプルも何も、エミュレータ自身がサンプルソース代わりになってるのでは。
使い方は間違ってないはずだけど、どういうエラーが出ますか?
相手にするな
496 :
468:2005/08/26(金) 22:18:28 ID:pJWwZ5w6
>>494 main.cを見てみたんですけど どうも使ってるところが無いみたいで
ちなみにエラーは
blit.c: In function 'main':
blit.c:361: warning: pointer targets in passing argument 3 of 'mh_print' differ
in signedness
です 361行目に
mh_print(10,10,"どうでしょうか",0x0000);
が入力してあります
あきらめろ。お前には才能が無い。
>>496 何度も言うようだけど、PSPのような特殊なプラットフォームで開発をする前に
496のようなつまらない箇所で躓かないためにも、
一度WindowsやLinux等で動く物を作って、その過程でC/C++の基礎を勉強することを強く推奨します。
243
ここまでおかしいと、精神的に逝っちゃってるか、小学生か、
だろう。
DXT試してみた方居ます?
8bit indexと4bit indexでは描画速度が倍以上に上がるので、
テクスチャのメモリアクセスがウェイトの大半を占めてると思うのですが、
DXTで圧縮した場合、速度は上がるのか下がるのか・・・
501 :
468:2005/08/27(土) 01:19:40 ID:668/vgXA
少なくとも小学生ではないです
"どうでしょうか"を"hello"に変えたりすると
うまくいく状態なの?
>>496 ちゃんと書いてあるじゃない。
mh_print第3引数はunsigned char *だけど、渡してるのはchar *。
>>502 ほっとけ
ただの勘違い。
エラーではなく警告が出てるだけ。
そうやって教えるから、また何かあるたびに戻ってくるわけだ。
506 :
468:2005/08/27(土) 01:53:58 ID:668/vgXA
>>502 全く同じエラーが出ます
>>503 渡す引数の形式が間違ってるときの警告なんですね
数字でも何入れても駄目なので
もっと根本的なところが間違ってそうです
確かに根本的なところが間違ってるね。
君の脳みそとか。
508 :
468:2005/08/27(土) 02:06:14 ID:668/vgXA
>>507 生まれつきなので
しかもこの警告が解決しても動きそうに無い
vr = (unsigned short *)0x4000000;
こんなことになっているから・・・
>>508 だから、基礎知識が足りなすぎるんだって。ここに来るレベルじゃない。
君がやっているのは、足し算もできないのに微分方程式を解こうとしてるようなもんだ。
例えが難しすぎて理解できないか。
>>508 ポインタもまともに理解してないのに、VRAMを直接操作するなんて無謀すぎる。
PSPで作りたい物を一度PC上で作ってみ?
SDLでもOpenGLでも使っていいから。
それが作れないなら、PSPで同等の物を作るのは無謀。
逆に、PC上で作ることができれば、PSPでもここまで苦労することはないはず。
GUで非同期描画を行うにはどうしたら良いのでしょう・・・
現在PSPSDKにインポートされてる分だけで出来るんでしょうか?
>>508 システムバージョンを2.0にすれば全て解決。
コンパイルエラーもワーニングも全て無関係になって幸せになれます。
かなりおススメ。
>>511 sceGuSyncの引数でNOWAITを指定すれば、描画時のブロッキングはなくなります。
当然、Sync直後にバッファをスワップしていてはちらついてしまうので、
sceGuSetCallbackを使ってコールバックを設定し、
描画終了を検知してからバッファをスワップする必要があるかと。
>>513 何処でどう登録すれば良いのか解らず、全く呼ばれませんでした・・・
と言うか、戻り値のポインタが0。
メイン処理-リスト登録-描画-フリップしてた所を、リストを二つ用意し
メイン処理-リスト登録-描画完了待ち-フリップ-描画開始
に出来たら良いなぁと思ってるのですが。
>>514 cbid = sceGeSetCallback(&gpu_cb_param);
qid = sceGeListEnQueue(&GEcmd,&GEcmd[14],cbid,NULL);
こんなふうにcbidをEnQueueに渡してやればイケマスよ
>>515 GEcmdの尻はsceGuGetMemoryの戻り値で良いんでしょうか?
GUを使ってる最中にGEを直接呼んで良いものなのかどうかも
気になります・・・
そのまま次のGuStartを呼べば内部変数の類は全部初期化
されるんですかね。
改めて考えると、GetMemoryのポインタは明らかに違いますよね orz
あ Finishの戻り値が使えますね。 試してみます。
finish_funcが呼ばれる所迄確認しますた。 逝けそうです。
作り込みは明日に。 有り難うございました。
520 :
468:2005/08/27(土) 09:45:05 ID:K1U6BCZr
>>512 flash6 くらいのが ブラウザに実装されたら
アップします
blitの表示部分をそのまま真似して
vr = (unsigned short *)&pixels[y*512+x]
こんなことをやってみる所です
>>519 気になって調べてみたら、sceGuInit内のコールバック設定がコメントアウトされてるじゃないですか。
ちなみに、sceGuSetCallbackは、GUが内部に持つユーザーコールバックへのポインタを更新するだけです。
(返値は古いコールバックポインタなので、初回の呼び出しでは0になります)
描画終了時にはGU内部のcallback_fin関数が呼び出され、その中で、ユーザーコールバックが指定されていれば
それを呼び出すようになっています。
しかし何でコメントアウトしてるんでしょうね。
必要ないと判断したのか、バグがあるのかのどちらかでしょうが、
どうもコミットされた時から変わっていないようなので、前者のようですね。
どうしtめおfinish_funcが二度呼ばれるので、原因探してたら、
とんでもない勘違いをしてた事に気付く・・・
GuFinishはGeListEnQueue相当なんですね。
リストの尻に終端コードを入れる様な関数かと思ってますた。
Finishで得た値をEnQueueに使ってたので、二重に描画してた事に・・・
同時に、コールバックを登録すると、GuFinishでもfinish_funcが
呼ばれると言う事にもなるのですが、GU内部のコールバックを
乗っ取ってしまってるんですかね。
>>522 コールバックは1つしか設定できないので、上書きされてしまいます。
なので、一度登録したらこちらが明示的に呼び出さなくても、GuFinish時に勝手に呼び出してくれます。
524 :
468:2005/08/27(土) 20:13:43 ID:zlTFod8v
色々試してみて
mh_print(10,1,0,0x0001);
これだとエラーが出ないことがわかった
0以外だと1でも駄目
何の役にも立たない発見だな・・
>>524 そりゃエラーは出ないだろう。
ヌルポインタ渡してどうするよ。
頼むからポインタの基礎を勉強してから出直してきてくれ。
>>524 発見も何も無い。わかってないのはお前だけ。いいかげん消えろ。
528 :
468:2005/08/27(土) 21:22:26 ID:zlTFod8v
vr = (unsigned short *)0x4000000+(y*512+x);
mh_print(20,20,(unsigned char*)"皆さんどうもありがとう",0x0000);
これでとりあえず文字表示完了
少し小さいのと
GU描画と高度に表示してるからちらついてしまうorz
その辺が今後の課題
529 :
468:2005/08/27(土) 21:30:07 ID:zlTFod8v
高度×
交互○
530 :
468:2005/08/27(土) 22:20:54 ID:zlTFod8v
10×10以上のフォント使ってるソースないなぁ
みんなどうやって font.c見たいな形式にコンバートしてるんだろう
532 :
468:2005/08/27(土) 22:53:11 ID:zlTFod8v
釣ってる奴はウザいが、
釣られてる奴の方が数倍ウザい。
お前等わざと釣られてるだろ。
他にネタも無いしな
535 :
468:2005/08/28(日) 02:01:49 ID:cLXOIGsM
書き込んでからずーっと ぐぐって調べてたけど
変換方法見つからず 最低16×16はほしいなぁ
基礎知識無いんだからプログラミング板の初心者スレにでもいけって。
基礎知識あればWinで1時間も掛からずに書けるだろ。
>>535 誰も変換なんてしていないよ。みんな全部手で打ち込んでる。
そのくらいの根気がないと、まともなゲームは作れない。常識。
いいかげん
>>468はスルーしる!
番号変えてきてもスルーしる!
VBあたりでフォームに描画しておいてPointで拾ってテキスト吐けばいいやん。
さて、もう468助けるのやめた。過去3度くらい助言してた俺がヤツをダメにしてしまった・・・
アドバイスしちゃう人がいるから調子に乗ってまた来るんだよね。
大人なら、 「 約 束 」 を守るのは本当に当たり前な事なのに。
2ちゃんで 約束とか正論期待するのは間違い
スルーが基本だ
「アドバイスしちゃう人がいるから」スルーが基本。
「大人なら」約束は守るけど、468は子供なんだろうな。
と、ここまで書かないと分からない人も増えてしまった。
544 :
468:2005/08/28(日) 22:20:33 ID:LiYwtyM3
スルーされるかもだけど書き込み
>>536 >Winで1時間も掛からずに書けるだろ。
??
>>537 なるほど 根気は重要ですよね
昔ドット絵を シャーペンで手書きで書いてたこともあるので
その苦労はわかります
>>539 VB ですか 取り合えず win内の フォントを 白黒BMPに出力するソフトを見つけたので
その後の処理を模索中です
PSPToolchainのアセンブラOnlyだけどVFPUサポートが追加されたね。
将来、psp-gccのtree-vectorizeがVFPUに対応してくれることに期待(*´д`)ハァハァ
>>545 おお。
VFPUがdouble演算対応してたらいいな・・
GUでの非同期描画挫折・・・
GuStart・GuFinish・GuSwapBuffers、どれのせいかは解りませんが、
GU使ってる内は
>>514 の様な流れは出来ない予感。
GuFinishした後リストをダンプし、それを参考にして自分でGE用の
ライブラリ書く事になるのかなぁ。 しんどそ。
>>547 コールバックで挫折したのか、複数のリストを用意するところで挫折したかにもよりますが、
基本的にはどちらもGuの範囲内で実現できるはずです。
コールバックは以前にも出てるように、Geの命令を一部自前で書く必要がありますが。
個人的には、リストを切り替えつつ描画を非同期で行うというのは、
描画完了のシグナルと、リスト準備完了のシグナルを同時に処理しなければいけないので
少々面倒くさいかな、と思います。
描画処理を別スレッド化するというのも手じゃないでしょうか。
>>548 GUの描画先バッファがいつどの段階で、何を元に決まるのかが解らず、
何をどうしても、表示中のバッファに描画されてしまいます。
514の流れで、GEの描画を待った後、VRAMに直接デバッグ用の
文字を描くと、文字列の上にGEの描画が重なってしまい、
描画数を増やし60fpsの限界に来ると、画面が乱れました。
Swapする位置を変えたり、GuSwapを使わない様にしてみたり、
色々と試してみたのですが、悪化するばかり orz
>>549 一言で言えば、sceGuStartの中でアドレスを設定するコマンドを発行しています。
アドレスは、sceGuDrawBufferで指定した時に内部のグローバル変数にコピーされ、保持されており、これが使われます。
(sceGuSwapBufferで、DispBufferとDrawBufferのアドレスを交換しています。)
ですから、送信されるコマンドリストの先頭には、バッファを指定するコマンドが入っている、ということになります。
描画先を変更するには、描画シーケンスのsceGuStartの直後にsceGuDrawBufferを呼び出してやれば良いのではないでしょうか。
>>549 目的がよくわからないからなんとも言えないんだけども
コマンド発行し終わって、描画が終わるのを待つ間に
別のバッファに次の画面を描画しはじめるってことは出来ないよ
リストをあらかじめ準備しておくことは出来るけど
勘違いだったらスマソ
>>550 sceGuDrawBufferで設定すると、画面上の一ラインにゴミが
表示されるだけになってしまい、他に何か再設定が必要なのかと
初期化し直しても全く変化無し・・・
GuStartだけなら、次のGuStartをGuSwapの前に行えば解消しそうな
気がするんですが、そうでも無いんですよね・・・よう解らん。
PSPSDKを使ってWAVファイルを再生しているソースって無いでしょうか?
554 :
468:2005/08/29(月) 13:38:08 ID:6cPdquST
>>554 君が回答した時点でスルーじゃないよ?^^
>>553 単純な再生なら、ファイルから読み込んだデータをバッファに横流しすればいいだけのはずだけど。
SDL_Audioのソースが参考になるかな
ありがとうございます。早速見てみます。
PSPSDKにメッセージダイアログきたね。
UTF-8で日本語もいけた。
でも全然つかわなそうだな、これ…。
TiMidityの件です。
Timidityのサウンド出力を44.1kHz以上にしてみたいのですが、
PSPが44.1kHz以外に対応してるか、ご存じの方いらっしゃいませんか?
560 :
468:2005/08/29(月) 23:49:03 ID:k1ENP83s
>>558 日本語ってのについ反応してしまうんですが
内蔵フォントで表示が可能になったってことでしょうか?
コンパイルしても何故か PBPが吐き出されないので
確認できません
ちなみに大きなフォント探しは一日探しつづけましたが
諦めました
psp自作ソフトでは 10×10のものはほとんど無いみたいで
あっても ソースが公開されてなかったり
今は取り合えず 10×10を20×20に拡大する方法を思案中です
Timidity速くしようとgprof使うために、-pgオプションつけてコンパイル
したら、
undefined reference to `_mcount'
でしたorz
psp-gccは、gprof対応してないのかなorz
>>561 対応してないよ。
その代わりPSPSDKのdebugにハードウェアプロファイラを使う関数が用意されていて
キャッシュミスカウントなんかも調査できるんで、それを使って自前で作るのが早いかと。
wallpaperE2ってソフトなんですが、あのソフトで使用できる画像サイズとはいくつでしょうか・・?
ぬるぽいんたー ってかきこみがあったのに だれもガッしないのか
565 :
468:2005/08/30(火) 23:28:59 ID:Oh9g8PAJ
何とか拡大完了
実は教えてもらって出来たんだけど^^;
拡大して気づいたこと 10×10拡大しても 荒さが目立つだけ
当然なんだけど
やっぱ最低16×16 かな
そういうフォントを使ったソースが出回るのを待とう
ぬるぽ
ってかいても スルーされるかな
>>562 ごめんなさい。せっかく教えていただいたのに、プロファイル
関連関数の使い道を理解できそうにないですorz
gprofの移植の方をがんばってみますorz
mp3を再生しつつ、日本語のテキストファイルが表示できるソフトってありますか?
PSPで扱えるテクスチャは幅高さ共に512ドットが上限なんでしょうか?
569 :
468:2005/09/01(木) 08:54:01 ID:NC0T9X0K
>>567 作ってソース公開するべし
そのときは大きなフォント使ってね
571 :
名無しさん@お腹いっぱい。:2005/09/01(木) 11:31:36 ID:ubnZme/Y
疑似アップデートのソフトってあるのか?
4MB使っちゃったらサスペンドするときはどうするの?
4メガバイオ
>>572 つ0x88400000-0x887fffff
カーネルモード専用みたい。
違う
577 :
名無しさん@お腹いっぱい。:2005/09/02(金) 16:52:32 ID:1qBszfnu
メモリをメモステとして使うプログラムってつくれる?
mmap()がほしいよ・・・
>>321 開発用PSPの基盤だけじゃ話にならね!
どうせなら、開発用キットワンセットじゃないと!
PSP開発機(バラバラじゃない奴)と正規のWindows用開発コンパイラ
PSPと開発機を繋ぐインターフェイスボード
これで出品したら20万で買い取ってやるよ!(wwwWWWW
けど、そうしたら,開発キットのロット番号で、どこの会社から
流出したのかSCEにバレるしな!(WWW
正規のコンパイラはLinuxプラットフォームだけどな
>>579 バラしただけのPSPに何を熱く語っているのかな?
Timidityの件です。
リモコン対応したいんだけど、リモコン状態を取得する関数
sceHprmPeekCurrentKey(u32 *key);
sceHprmPeekLatch(u32 *latch);
sceHprmReadLatch(u32 *latch);
の使い方がわからないorz
わかる人いませんか?
sceHprmPeekCurrentKeyで取得してみても、ボタン押しても
常に0になるんだよねorz エラーも返ってないし。
何か初期化処理が要るのかな。
PSPSDKのcontrollerサンプルに組み込んで試してみたら動きました。
どうしてTimidityで動かないんだろう・・
下記コードで、sceCtrlReadBufferPositiveをしないと読み込めない
ようでしした。だからといって、Timidityで同じことをやっても
リモコンの状態を取得できない(>_<)どうしてだ(>_<)
int main(void)
{
SceCtrlData pad;
pspDebugScreenInit();
SetupCallbacks();
sceCtrlSetSamplingCycle(0);
sceCtrlSetSamplingMode(PSP_CTRL_MODE_ANALOG);
while(!done){
pspDebugScreenSetXY(0, 2);
//sceCtrlReadBufferPositive(&pad, 1);
u32 remoteKey=0;
sceHprmPeekCurrentKey(&remoteKey);
pspDebugScreenPrintf("remoteKey = %x?n",remoteKey);
if(remoteKey !=0 ){
if(remoteKey & PSP_HPRM_PLAYPAUSE){
pspDebugScreenPrintf("PSP_HPRM_PLAYPAUSE?n");
}
if(remoteKey & PSP_HPRM_FORWARD){
pspDebugScreenPrintf("PSP_HPRM_FORWARD?n");
}
if(remoteKey & PSP_HPRM_BACK){
pspDebugScreenPrintf("PSP_HPRM_BACK?n");
}
if(remoteKey & PSP_HPRM_VOL_UP){
pspDebugScreenPrintf("PSP_HPRM_VOL_UP?n");
}
if(remoteKey & PSP_HPRM_VOL_DOWN){
pspDebugScreenPrintf("PSP_HPRM_VOL_DOWN?n");
}
if(remoteKey & PSP_HPRM_HOLD){
pspDebugScreenPrintf("PSP_HPRM_HOLD?n");
}
}
}
sceKernelExitGame();
return 0;
}
Timidityコードでもループで連続して取り込んでみると
取り込むことができました。うーむ。
何度もごめんなさい。
試行錯誤の結果、
sceCtrlReadBufferPositive(&pad, 1);
sceCtrlReadBufferPositive(&pad, 1);
sceCtrlReadBufferPositive(&pad, 1);
sceHprmPeekCurrentKey(&remoteKey);
とすると安定して取りこめるようになりました。
祝 リモコン対応 (^O^)
sceCtrlSetSamplingCycleの値を変えてみたらいいんじゃまいか
1,1000,10000000と替えてみましたが、sceCtrlReadBufferPositive
の回数を減らすと駄目なようでした。何がおきてるのやらorz
psptoolchainでregexって使えない?
追い出し厨かよ。さすがにそれは荒しのレベルだと思うが。
調べてはいるけど、ヘッダーがないから使えなそうとしかわからない。
何この馬鹿
594 :
名無しさん@お腹いっぱい。:2005/09/04(日) 19:06:17 ID:mZSC4tIG
わざわざageで宣伝乙
AVCプレイヤーってないの?
MP3やOGGやaviプレイヤーはあるのに…
>>594 良かったね宣伝厨、みんな荒らそうぜ!
どこがいいのか分からん。消えてくれ
gccの-pgオプションで、各関数の実行時間を調べられるようになる
機能をpsp-gccでも出来るようにしたいのですが、一体どこを触れば
よいのかわかりません(>_<) psp-gccで、-pgつけると、リンク時に
_mcountが定義されていない、と出るので、-lc_p (プロファイル対応
のライブラリは_pがお尻につくらしい)のライブラリがあればいいと
思うので、触るべきコードは、gccのソースコードではなく、libcの
含まれるnewlibのコード、と予想したのですが、これが合ってるか
分かる方いらっしゃいませんでしょうか?orz
なにかアドバイス有りましたら助言お願いいたしますm(_ _)m
gccの
まで読んだ
やねうらおってまた懐かしい名前がでてたんだなぁ
やたら自信満々な感じで鼻につく文章書いてたなーと思って現在のblog見に行ったら
何も変わってねーな・・『馬鹿扱いされたから答えてやらん!(`ω´) オワリ』
とか言ってやがるしwネタにしても社長様のいうことじゃないねホント
>599
すみません。以前も書いてくださいましたね。やっぱり文章がおかしいのは
失礼ですね。気をつけます。
PSP1台ごとの固有な情報を取得する方法ってありますか?
固有なIDとか、MACアドレスとか・・・。
そのPSPでしか動かないプログラム作りたかったので。
>>602 質問する前に、pspsdkのsamplesディレクトリにあるサンプルを
一通り実行してみろ
flash0ではなくflash1の方を弄って壁紙変えたいんですが、やり方わかりませんか?
flash1:/vsh/theme/wallpaper.bmp
に適当なBMPを入れたんですが、壁紙になりませんでした。
mp3をバックグラウンドで流して他の作業をしたい場合
どうすればいいでしょうか?
JPEG Viewer作者さんのところのlibmadを使ってます。
606 :
605:2005/09/06(火) 14:46:26 ID:FlqfqpFO
自己解決しました
TiMidity++すごく快適になってるー
今まで負荷100%かるく超えてたのが60ぐらいでおさまってる
これからも期待してます。
TiMidity++、感動した。
昔聞いてたmidiを引っ張り出して再生した。
もっと感動した。
611 :
名無しさん@お腹いっぱい。:2005/09/09(金) 19:30:06 ID:JFV7w9Bu
>>608 610
喜んでもらえて嬉しい限りです(>_<)
開発初期にここで色々質問してた人か?
がんがってるなあ
>>611 double演算のfloat化はどうやったのですか?
参考までに教えていただきたく(´・ω・`)
(物理演算ライブラリ移植しようとしてそのあたりで詰まった orz)
日本人でダウングレーダー開発してる人いる?
>>613 関係ありそうなのがこのスレにある
>>421-423,425-428
基本的にはsqrt, pow等をfloatでやるならsqrtf, powfのように関数名の後にfをつける。
psp-devのneogeocdエミュではfloatonly.hをインクルードして、
ソースの変更を少なくしているようだ
floatonly.hの中身
#include <math.h>
#definedouble float
#definesinsinf
#definecoscosf
#definesqrtsqrtf
#defineatan2atan2f
#definefloorfloorf
#defineceilceilf
#definepowpowf
#definetantanf
#defineatanatanf
スマソ
#include <math.h>
#define double float
#define sin sinf
#define cos cosf
#define sqrt sqrtf
#define atan2 atan2f
#define floor floorf
#define ceil ceilf
#define pow powf
#define tan tanf
#define atan atanf
>>615 見落としてましたよ orz
floatonly.hがまさに、です。
ただ組込型をdefineで書き換えるのは気持ち悪いので、
-fshort-doubleと組み合わせて使うことにしました^^
ありがとうございました。
sceIoXXX と sceIoXXXAsync とはどのような違いがあるのでしょうか。
asynchronous って何が非同期なんでしょうか。
読み込みバイト数を返してくれるので好んで前者を使ってるんだけど、
HOOK BOOT の API ログ見ていると後者が使われていることが多いので…。
>>618 普通に考えてブロッキングしないだけだと思いますけど
市販ゲームではBGMのストリーミングに後者を使ってるんじゃないでしょうか
>>619 ノンブロッキングの意味だったのか…>Async
ありがとうございます。
>>613 -fshort-doubleをやると、なぜかpspDebugScreenPrintfの出力が文字化け
ぽくなったので、-fshort-doubleは使わずに、
find TiMidity++-2.11.3 -name "*.[ch]" | xargs sed -E -i "" -e 's/double/float/g'
で置き換えました。^^;
でもこれやっても、なぜかほとんど軽くならず、がっかりしていたのですが、
プログラム中の式などに入っている小数定数がdouble扱いになっている事に
気づいて、それらにfをつけると、劇的に速くなりました。
それは下記でやってます。
find TiMidity++-2.11.3 -name "*.[ch]" | xargs sed -E -i "" -e 's/?.[0-9]+/&f/g'
(.のあとに数字が1つ以上並ぶ文字列の後ろにfをつける)
この置き換えだと、余計なものも変換してしまいます。例えば、
TiMidityのバージョン宣言
#define VERSION "2.11.3"
が
#define VERSION "2.11f.3f"
となったり、
} while (!( (e * 1.0e-08 - sde > 0) || (i++ > 25) ));
} while (!( (e * 1.0fe-08 - sde > 0) || (i++ > 25) ));
となったり、
"Saturation %2.3f %%.", 100.0f*peak/ (FLOAT_T) length);
"Saturation %2.3ff %%.", 100.0f*peak/ (FLOAT_T) length);
freq = 13.75f * exp((pitch - 9) * 0.05776226505f);
freq = 13.75f * exp((pitch - 9) * 0.05776226505ff);
# define TIM_FSCALENEG(a,b) ((a) * (1.0f / (float)(1<<(b))))
# define TIM_FSCALENEG(a,b) ((a) * (1.0fL / (float)(1<<(b))))
これらが見つけたケースです。
>> 615
なるほど、そういうのもありますね。
TiMidityに組み込んでみます(^O^)
find TiMidity++-2.11.3 -name "*.[ch]" | xargs sed -E -i "" -e 's/?.[0-9]+/&f/g'
中の?は逆スラッシュです。
>>621 なるほど、書いてあるとおり関係ないものまで変換してしまうので
直接の置換は避けていたのですけど、エラーを根気よく潰せばいけそうですね^^;
pspDebugScreenPrintfが文字化けするのは可変長引数マクロの展開でこけるからでしょうかねぇ?
>>623 -fshort-doubleと可変長引数は私もハマリました^^;
-fshort-doubleを使用しつつ、sprintf等をうまく使う方法って
ないものですかね?
ライブラリ関数のvsnprintfがdoubleを8バイトとして処理してるところで不整合が起きるんでしょうか。。
何にせよ腫れ物には触らない感じで、素直にfloatで書き直した方が良さそうです。
#define sinf sin
とかコードのアセンブラは、
jal sinf
とかになっているのですが、これって、FPU,VFPU使わずに
libmとかを使ってるってことですよね?
全く速くなっていないようなのです。
>>628 高速化を狙うなら自前の関数を作って、それを使うようにするといいかと
PBPファイルとかに組み込めるPMF動画はどうやって作るんでしょうか。
mplayerを使ってPMF動画をPC上で見ることはできたんですが、
その逆を行う方法が見つかりません。
現在のところpmfファイルを作成するツールはありません。
>>628 -ffast-math を付けたらどうなりますか?
>>633 そこまで効果はないとオモ
fast-mathは制限を緩和するだけで、FPUを使わないことの根本的な解決にはなってないし
Hook Boot のソースを改造してスクリーンショット機能をつけようかと思っています。
キー操作でスクリーンショット機能を起動するようにしたいのですが、
単純に main の最後にループ作って sceCtrlReadBufferPositive を呼ぶと、
実際のゲーム内でのキーサンプリング数が半分になるんでしょうか。
sceCtrlReadBufferPositive を HOOK するのがベストなのでしょうか。
Fastloader はどうやってるんでしょうかねぇ…。
MS内でsceIoDopen→sceIoDreadするとよく固まるんだけど…。なにこれ?
>>637 おー。ちゃんと動くようになりました。さんくす。
UMDのときはローカル変数でゼロクリアしなくても毎回成功していたのに、
MSのときは成功したり失敗したりするんで謎でした。
バッドノウハウだ…。
MIPS社からダウンロードしたR4000の仕様書(R4000 Microprocessor Users Manual.pdf)
のFPUの項には下記の命令だけしか書いていませんでした。
sqrtがあったのだから、sinなどの命令があると思ってたけど、
sqrtだけしか無いようです。がっかり。
Table 6-9 FPU Instruction Summary: Load, Move and Store Instructions
OpCode Description
LWC1 Load Word to FPU
SWC1 Store Word from FPU
LDC1 Load Doubleword to FPU
SDC1 Store Doubleword From FPU
MTC1 Move Word To FPU
MFC1 Move Word From FPU
CTC1 Move Control Word To FPU
CFC1 Move Control Word From FPU
DMTC1 Doubleword Move To FPU
DMFC1 Doubleword Move From FPU
Table 6-10 FPU Instruction Summary: Conversion Instructions
OpCode Description
CVT.S.fmt Floating-point Convert to Single FP
CVT.D.fmt Floating-point Convert to Double FP
CVT.W.fmt Floating-point Convert to 32-bit Fixed Point
CVT.L.fmt Floating-point Convert to 64-bit Fixed Point
ROUND.W.fmt Floating-point Round to 32-bit Fixed Point
ROUND.L.fmt Floating-point Round to 64-bit Fixed Point
TRUNC.W.fmt Floating-point Truncate to 32-bit Fixed Point
TRUNC.L.fmt Floating-point Truncate to 64-bit Fixed Point
CEIL.W.fmt Floating-point Ceiling to 32-bit Fixed Point
CEIL.L.fmt Floating-point Ceiling to 64-bit Fixed Point
FLOOR.W.fmt Floating-point Floor to 32-bit Fixed Point
FLOOR.L.fmt Floating-point Floor to 64-bit Fixed Point
Table 6-11 FPU Instruction Summary: Computational Instructions
OpCode Description
ADD.fmt Floating-point Add
SUB.fmt Floating-point Subtract
MUL.fmt Floating-point Multiply
DIV.fmt Floating-point Divide
ABS.fmt Floating-point Absolute Value
MOV.fmt Floating-point Move
NEG.fmt Floating-point Negate
SQRT.fmt Floating-point Square Root
Table 6-12 FPU Instruction Summary: Compare and Branch Instructions
OpCode Description
C.cond.fmt Floating-point Compare
BC1T Branch on FPU True
BC1F Branch on FPU False
BC1TL Branch on FPU True Likely
BC1FL Branch on FPU Fals
ちょっと思いついたんだけど、ツールチェーンのNewlibって
FPU,VFPUの命令入ってないんじゃないかな?
GCCの前にコンパイルしてるし・・
補足
つまり、プログラムにリンクされてるlibcや、libmにFPU,VFPU
命令がないのではないか?という事です。
すみません。
NEWLIBコンパイルは、GCCコンパイルのあとになってましたorz
PSPてテクセル・スクリーン座標?共に半ドットずれるんですね・・・
かなり長い時間はまってた。
長いですが、高速化の方法をまとめてみました。
■PSPSDKでの高速化手法のまとめ ver1
ポイント:PSPのFPUにはdouble演算がないので、double演算を全てfloat演算に置き換える。
その1
double変数をfloat変数に置き換える。
find . -name "*.[ch]" | xargs sed -E -i "" -e 's/double/float/g'
その2
デフォルトでdouble扱いになる小数定数の最後にfをつけてfloat扱いにする。
find TiMidity++-2.11.3 -name "*.[ch]" | xargs sed -E -i "" -e 's/?.[0-9]+/&f/g'
余計なものまで変換してしまうので、各々修正する。
例1 #define VERSION "2.11.3" => #define VERSION "2.11f.3f"
例2 1.0e-08 => 1.0ef-08
例3 printf("%2.3f",val); => printf("%2.3ff",val);
例4 0.1f => 0.1ff
例5 0.1L => 1.1fL
その3
math.hで呼ばれるdouble用関数をfloat用関数に置き換える。floatonly.hのincludeで行う。
find TiMidity++-2.11.3 -name "*.[ch]" | xargs sed -E -i "" -e 's/<math.h>/"floatonly.h"/g'
(-ffast-mathを付けるとより速くなる?)
以下は"floatonly.h"---------------------------------------
#ifndef ___FLOATONLY_H_
#define ___FLOATONLY_H_
#include <math.h>
#define sin sinf
#define cos cosf
#define sqrt sqrtf
#define atan2 atan2f
#define floor floorf
#define ceil ceilf
#define pow powf
#define tan tanf
#define atan atanf
#define tanh tanhf
#define frexp frexpf
#define modf modff
#define fabs fabsf
#define acos acosf
#define asin asinf
#define cosh coshf
#define sinh sinh
#define exp expf
#define ldexp ldexpf
#define log logf
#define log10 log10f
#define fmod fmodf
#define infinity infinityf
#define nan nanf
#define isnan isnanf
#define isinf isinff
#define finite finitef
#define copysign copysignf
#define ilogb ilogbf
#define asinh asinhf
#define cbrt cbrtf
#define nextafter nextafterf
#define rint rintf
#define scalbn scalbnf
#define tgamma tgammaf
#define nearbyint nearbyintf
#define lrint lrintf
#define round roundf
#define lround lroundf
#define trunc truncf
#define remquo remquof
#define copysign copysignf
#define fdim fdimf
#define fmax fmaxf
#define fmin fminf
#define fma fmaf
#define sincos sincosf
#define log1p log1pf
#define expm1 expm1f
#define acosh acoshf
#define atanh atanhf
#define remainder remainderf
#define gamma gammaf
#define lgamma lgammaf
#define erf erff
#define erfc erfcf
#define y0 y0f
#define y1 y1f
#define yn ynf
#define j0 j0f
#define j1 j1f
#define jn jnf
#define hypot hypotf
#define cabs cabsf
#define drem dremf
#undef MAXFLOAT
#undef M_E
#undef M_LOG2E
#undef M_LOG10E
#undef M_LN2
#undef M_LN10
#undef M_PI
#undef M_TWOPI
#undef M_PI_2
#undef M_PI_4
#undef M_3PI_4
#undef M_SQRTPI
#undef M_1_PI
#undef M_2_PI
#undef M_2_SQRTPI
#undef M_SQRT2
#undef M_SQRT1_2
#undef M_LN2LO
#undef M_LN2HI
#undef M_SQRT3
#undef M_IVLN10
#undef M_LOG2_E
#undef M_INVLN2
#define MAXFLOAT3.40282347e+38f
#define M_E2.7182818284590452354f
#define M_LOG2E1.4426950408889634074f
#define M_LOG10E0.43429448190325182765f
#define M_LN20.69314718055994530942f
#define M_LN102.30258509299404568402f
#define M_PI3.14159265358979323846f
#define M_TWOPI (M_PI * 2.0f)
#define M_PI_21.57079632679489661923f
#define M_PI_40.78539816339744830962f
#define M_3PI_42.3561944901923448370fE0
#define M_SQRTPI 1.77245385090551602792981f
#define M_1_PI0.31830988618379067154f
#define M_2_PI0.63661977236758134308f
#define M_2_SQRTPI1.12837916709551257390f
#define M_SQRT21.41421356237309504880f
#define M_SQRT1_20.70710678118654752440f
#define M_LN2LO 1.9082149292705877000E-10f
#define M_LN2HI 6.9314718036912381649E-1f
#define M_SQRT3 1.73205080756887719000f
#define M_IVLN10 0.43429448190325182765f // 1 / log(10)
#define M_LOG2_E 0.693147180559945309417f
#define M_INVLN2 1.4426950408889633870fE0 // 1 / log(2)
#endif /* ___FLOATONLY_H_ */
ここまで-----------------------------------------------------------------
すみません。下記修正しました。
#define MAXFLOAT 3.40282347e+38f
#define M_E 2.7182818284590452354f
#define M_LOG2E 1.4426950408889634074f
#define M_LOG10E 0.43429448190325182765f
#define M_LN2 0.69314718055994530942f
#define M_LN10 2.30258509299404568402f
#define M_PI 3.14159265358979323846f
#define M_TWOPI (M_PI * 2.0f)
#define M_PI_2 1.57079632679489661923f
#define M_PI_4 0.78539816339744830962f
#define M_3PI_4 2.3561944901923448370E0f
#define M_SQRTPI 1.77245385090551602792981f
#define M_1_PI 0.31830988618379067154f
#define M_2_PI 0.63661977236758134308f
#define M_2_SQRTPI 1.12837916709551257390f
#define M_SQRT2 1.41421356237309504880f
#define M_SQRT1_2 0.70710678118654752440f
#define M_LN2LO 1.9082149292705877000E-10f
#define M_LN2HI 6.9314718036912381649E-1f
#define M_SQRT3 1.73205080756887719000f
#define M_IVLN10 0.43429448190325182765f // 1 / log(10)
#define M_LOG2_E 0.693147180559945309417f
#define M_INVLN2 1.4426950408889633870E0f // 1 / log(2)
あ、移植する視点で書いちゃったorz
LUMINESの音データを再生するアプリを作ってるんですけど、
PSPSDKだと44.1KHz、16bit、ステレオ、4チャンネルで固定でしょうか?
最大でモノラル8チャンネルならそうと思ってるんですが、
sceAudioChReserveとかsceAudioChReleaseとかやってもダメぽ…。
音声合成するしかないんですかねぇ…。
俺なら適当にミキサーを実装するけど
スリムPS2のACアダプタ^-交換か・・・
またしてもソニークオリティだな
訳あって16ビットのテクスチャを別パレットで描画したいのですが、
どうもうまくいきません。
一部のパレットがうまく反映されずに描画されてしまいます。
sceGuClutLoad の第一引数はパレットテーブル数/8なのかと思いつつ
65536/8とかすると、表示すらおかしくなってしまいます。
clutのパレットは256色までしか使えないのでしょうか?
unsigned short int __attribute__((aligned(16))) clut16[65536];
sceGuClutMode(GU_PSM_5551, 0, 0xff, 0);
sceGuClutLoad((256/8), clut16);
sceGuTexMode(GU_PSM_T16, 0, 0, 0);
インデックス0xFFを超えた時点でおかしくなるのならば、256色までしか扱えないと考えるのが自然ですし、
もし0xFF以前でもおかしくなったり、それを超えても正常に表示されるならば、データキャッシュを疑います。
ただどうもGEを弄っているとインデックスが1バイトで処理されているように見えるので、
256色までではないかと思います。(あまり自信はないですが)
sceGuClutMode(GU_PSM_5551, 0, 0xffff, 0);
sceGuClutLoad((65536/8), clut16);
じゃね。
661 :
名無しさん@お腹いっぱい。:2005/09/16(金) 19:58:43 ID:SfiKhWYH
。私はxkazoku for PSP Lite ではじめましてで星空プラネットを動かしてみたいと
思い、SL-Zaurusを用い、星空プラネットをPSP上で動かしたのですが
画面が表示されず、
DREAMBOX
× STARTcmd:adP3c3
サポートしていない命令です。
と表示されたウインドウが現れプログラムが終了してしまいます。
家族計画は正しく動作したのですが星空プラネットは何度試しても
動きません・・・。どうか知っている方がいれば解決法を教えてください。
663 :
名無しさん@お腹いっぱい。:2005/09/16(金) 20:58:39 ID:SfiKhWYH
質問に答えていただきありがとうございます。
でもやっぱりできません・・。
もしかして星空ぷらねっとは夢箱とは違うものですか?
ていうかスレ違い
ちょっと失礼します。
Dark_Alex, from our forums, has informed us that Matt Fazzer has apparently stopped development on the PSP emulator he claimed to be working on, citing a C&D letter
he recieved threatening court action.
Here is his message:
以下略。
エミュは著作権的に問題あるとしても、
自分で買ったPSPでオリジナルのプログラムを走らせるのは全く違法性ないよね?
買ってきたガンダムプラモを改造して動くようにするとかと同じレベルで。
法的手段に訴えるとか言うのはむかつくなぁ。
PSPのソフトは少なくてつまんなくて全く売れてないわけだから。
ソニー製品て高いだけで品質が伴ってないよな。AIWAの方がマシ。
初めから買わなきゃいいじゃん
>>ちょっと失礼します。
失礼です。ぱいなら^^
つまらない話題はこのスレでは止めましょうね?
そこじゃねぇだろ?
糞にが開発者に圧力かけてんだぞ!?
おまえら英語読めんのか?
もともとフェイクだって言う人も多かったエミュだし、本当にソニーから圧力があったのか
怪しんでる人も結構いるみたいだけどね。
UMD吸い出しまでされてるんだから、圧力かかって当然だろ。アホか。
その、警告文すら公開して無いのに何で信じられるのかね
下手な警告何ぞ、下手するとするとソニー側が脅迫行為で訴えられかねない
やるなら手続き踏んで、公開警告にするでしょ
裏で圧力?ありえねw
673 :
名無しさん@お腹いっぱい。:2005/09/17(土) 08:47:26 ID:fUTxsyFS
>>672 低学歴ってここまで…いや、なんでもないよ。
任豚が暴れ始めたか
>自分で買ったPSPでオリジナルのプログラムを走らせるのは全く違法性ないよね?
オリジナルのプログラムを作成するまでに何らかの違法行為をする可能性はある
つ 訴えられなければ合法
「合法」の定義について
今回圧力がかかったのはHomebrewに対してではなくて、PSPの解析手法に対してじゃまいか。
カスタムBIOSの公開までするとか色々言ってたし。
何にせよスレ違いだな。
ばれなきゃ犯罪じゃないっていうのと一緒?
知らないほうがあいての為になることもあるのと一緒?
それはちょっと違うな
散々既出
ここのスレタイ叫んでみ?
PS2DEVFORUMに投げた質問に返答があるね。
やっぱり外部ライブラリもまとめて再コンパイルしないと正常に動かないのか・・・
置換が最善策かな(´・ω・`)
>>684 ほかのUNIXではコンパイラオプション-fshort-doubleを使うとき
libcもコンパイルし直ししてるわけじゃないから、PSPSDKの実装
が足りないだけじゃないのかと素人的に思うんだけど・・
PSPには何かコードサイズ制限の様な物はありますでしょか。
libpng libjpeg zlibをリンクし色々コード書き足していたら、動作が
挙動不審になり、書き足した関数を少しずつ削り戻していったら、
挙動不審になる境界があったのですが、その関数とは全く関係無い、
所で、その関数を全く呼ばなくともフリーズしてしまい、原因が
全く分りません・・・
>>686 典型的なワイルドポインタの症状
変数初期化とかそこら辺見直してみては?
なんとなく、toolchainのmallocに問題ある様な気がするんですが、
責任転嫁ですかね。
toolchainのmallocとfreeを無効化し、自分で定義し直すと言った事は
出来るのでしょうか。
外部ライブラリのmallocやfreeまで置き換えるとなると、さすがにlibcの再コンパイルが必要かと。
俺も686氏が書いたコードに問題があるような気がしますが、
toolchain側の問題だとしたら、_sbrkでのsceKernelMaxFreeMemoryの空き容量取得付近が怪しそう。
>>688 十中八九、責任転嫁。挙動不審になるということは、おそらくポインタの
扱い方か何かで、君が大きなポカをやってるね。
自分が書いたコードを、全体的に見直すことをおすすめする。
あのさ〜
エミュ中でもディスクとかの監視でメモリ4M消費してるんだよね?
でもエミュ中はディスクなんて使わないから
そのメモリを開放できるようにすればサクサクするんじゃないかな
遅レスすいません。
>>660 試してみましたが駄目でした。
sceGuClutModeの第3パラムは8ビットの様です。
>>659 テクスチャソースやパレットの更新は0x4000000足してノーキャッシュにしとけばOKですよね?
インデックスは1バイトというのがFAかもしれません^^;
報告です。
sceGu関係を使った自分の作ったソフトがサンプルと同じにしても動作せず
行き詰まっていたのですが、原因は、-lpsp**のようなライブラリを、色々と
重複してリンクしてしまっていたせいのようでした。
StartThreadのargpが伝わらなくて詰まりますた。
argsは問題無い様なのですが、argpは0x89acc28を与え、中でargpを
読んでみると、何でか0x9fffef0に・・・
sizeof(Data), &Data と言った使い方をする物では無いんですかね。
argsは伝わってる様なので、最悪、(int)&Data, 0 かなと思ったら、
argpを0にするとargsも伝わらない模様・・・んんん
>>695 ポインタは変わるけど値は正常に入ってるよ。
想像するに、スレッドに渡されるデータはargs分だけスレッド固有の領域にコピーされるんだと思われ。
考えてみれば複数のスレッドに同じパラメータを渡すことを考えたら、コピーしないと大変なことになるからなぁ。
ちょっと追記。
コピーされる領域はスレッドのStackSize依存で、それ以上のサイズを渡そうとするとStartThreadでコケますね。
ちゅことはスレッドのスタックにコピーしてることになりますね。
大きめなテーブルなんぞを共有する場合は、配列へのポインタへのポインタを渡す必要がありそうです。
う・・全く気付きませんですた。
ブレークフラグとか主にスレッド内のステータスを外から読む為の
構造体のを与えていたのですが、別にコピーされてしまっては、
無意味ですね・・・ int p=(int)&Data; で 4, &p を渡せば良いのかな。
ポインタのポインタになるね。面倒だけど・・・
期待通りの動作になりました。 有り難うございました。
スマブラ動きがはや過ぎるって聞いたんだが
BMSまだなの?
そう思うなら自分で(ry
スマブラにスネークがいたらなぁ
705 :
名無しさん@お腹いっぱい。:2005/09/23(金) 15:44:27 ID:6JD+cGlR
┏┓ ┏━━┓ ┏┓┏┓
┏┛┗┓┃┏┓┃ ┃┃┃┃
┗┓┏∧_∧┛┃ ┏━━━━━━━━┓┃┃┃┃
┏┛┗( ´・ω・) ┃ ┗━━━━━━━━┛┗┛┗┛
┗┓┏( つ旦O .┃ ┏┓┏┓
┗┛と_)_) ┛ .. ┗┛┗┛
念願の705GETS!!wwwww(・∀・)www
SDKのpspaudiolibを使っていたら、どうもEndしてもチャンネルが
解放されて無い様なので、audiolibを使わずに自分で一から
書いてみたんですが、自分で書いても結局 ChReleaseで失敗したり orz
何か前処理が必要だったり、タイミングを合わせる必要があったり
するんですかね・・・blockingが怪しい予感はしてるんですが。
やぱりblockingですた。
非blocking時でも、RestLenが0になる迄待たないといけないのかな。
audiolibのソース見ると何も考慮してない様に見えますが、
自分の使い方が間違っていたんですかね。
あ コメント化されているWaitThreadEndの方なら問題無かったのか。
何でコメント化してるんだろ・・・
3Dガンシューティングみたいなのでないかなぁ
2.0で、作成したバイナリの実行が可能なローダが作成されたようです
* it's loaded at 0x08810000
* it's max 64 kB
* it's pure binary MIPS code
* you have to use syscalls and not NIDs
* it runs in user space!
* it's called h.bin (paint screen blue yay!) in the root of the MemoryStick
ソース
http://www.dcemu.co.uk/vbulletin/showthread.php?t=11186
Option Explicit
Dim objFS
Dim objFld
Dim objFldSub
Dim strBar
Set objFS = CreateObject("Scripting.FileSystemObject")
If WScript.Arguments.Count > 0 Then
Set objFld = objFS.GetFolder(WScript.Arguments(0))
strBar = objFld.Name + "________________________________"
objFld.Name = Left(strBar, 32)
If objFS.FolderExists(objFld.Path + "%") Then
Set objFldSub = objFS.GetFolder(objFld.Path + "%")
objFldSub.Name = objFld.ShortName + "%"
Else
objFldSub = objFS.CreateFolder(objFld.ShortPath & "%")
End If
End If
Set objFS = Nothing
↑
これをテキストにこぴぺしてPSPRename.vbsとでも保存してつかってけれ
なぜかMove/MoveFolderメソッドが使えない・・・orz
PNGファイル読み込んで表示するのってどうしたらいい?
715 :
名無しさん@お腹いっぱい。:2005/09/25(日) 06:06:43 ID:8nRPP+Mp
ごみん
objFld.Name = Left(strBar, 32)
のぶぶん
Else
objFldSub = objFS.CreateFolder(objFld.ShortPath & "%")
End If
の次だった。じかうちだから許して・・・
あぁもうだみだ、すまん、とりあえずあやまらせてくれorz
そして寝よう。寝るしかない。
Option Explicit
Dim objFS
Dim objFld
Dim objFldSub
Dim strBar
Set objFS = CreateObject("Scripting.FileSystemObject")
If WScript.Arguments.Count > 0 Then
Set objFld = objFS.GetFolder(WScript.Arguments(0))
strBar = objFld.Name + "________________________________"
If objFS.FolderExists(objFld.Path + "%") Then
Set objFldSub = objFS.GetFolder(objFld.Path + "%")
objFld.Name = Left(strBar, 32)
objFldSub.Name = objFld.ShortName + "%"
Else
objFld.Name = Left(strBar, 32)
objFldSub = objFS.CreateFolder(objFld.ShortPath + "%")
End If
End If
メモステにあるbmpを読み込んで、表示したいんですけど
どこかにサンプルソースはありますか?
bmploaderみたいなのがいいんだが、ソースついてなかったorz
もし、UMDがコピー出来ないような仕組みが作れれば、ソニーが一般用に
SONYsdkを提供してくれるようになるんじゃないかと思っているんだけど、
その方法をみんなで考えられないかな? その前に、僕はUMDのコピーは
出来なくてもいいと思ってるんだけど、みんなはどう思ってる?
やっぱりコピーしたい?
夛良木さんは、PSPでエコシステム(ソフト開発者が増えればユーザも増え、
その結果、開発者も増え、自己繁栄する)を作ろうとしているけども、
実際は、ファームウェアが自作ソフトを制限する方向に向かってて、一般
ユーザに開発環境が
あー、下4行は下書きが残っててしまったorz
>>718 このスレ的には「SDKくれるならコピーできなくてもいい」なんじゃない?
でも世間的には厨房勢力が大勢を占めているからね。
721 :
名無しさん@お腹いっぱい。:2005/09/25(日) 13:07:02 ID:3FYg19EC
ソニーもSDKを公開してオープンに開発して欲しいけどUMDまでコピられるとPSPのビジネスが根本から破綻する
というジレンマに陥っているのでしょう。
このままでは「穴の探しあい塞ぎ合い」という不毛な戦いが続くだけですね。
何か良い落としどころがあれば良いのですが・・・。
722 :
468:2005/09/25(日) 14:11:50 ID:vx8rBEul
723 :
468:2005/09/25(日) 14:12:33 ID:vx8rBEul
入れないというか、トップが消えてるね。
>725
今見たら戻ってるね。
727 :
名無しさん@お腹いっぱい。:2005/09/26(月) 00:23:46 ID:Ccv7eQ8k
-'"´  ̄`丶、_
,.∩ `ヽ
〃∪'´ ̄`二二人\ ヽ
| ツ´ ̄ ̄ ̄ ̄´ ヾ ヽ. ',
|ハ ,ニ、 ,. - 、 | | | l |
| ハ ィハ ,二ヽ. | | | | | 同じ板にコピペするとそのままだけど、
| | | じ' |トJ〉 /)} l | 違う板にコピペすると鬼のような怖い顔
| ハ 、'_,  ̄,, 厶イ川| に変わる摩訶不思議な佳子様コピペ。
l l /\ .. イV\川 |
,' l l ,イ `l ̄´ / /ヽl l
l | l ハ `メ、 〃 ヽヽ、__ノ
ソース公開されてるアプリって何がある?
HelloWorld
RIN
GBFileselecter
SimpleTurn
他何かある?
他多数
初期の頃は大半が公開されてたけど、最近はあまり見掛けないね。
プログラム動かしてたらフリーズして、起動しなおしたらキーが全然効かない。
((;゚Д゚)ヤベーって思ったけど、ホールドになってただけだった。(´ー`)
_, ,_
( ゚ 3゚)<プログラム動かしてたらフリーズして、起動しなおしたらキーが全然効かない。
( ^,Д^)ブヒャヒャ
_, ,_
( ゚ 3゚)<ヤベーって思ったけど、ホールドになってただけだった。
( ^,Д^)ブヒャヒャヒャ
716が1.50版ソフトのインストール時に微妙に役に立った件について
LZWについて。
ttp://e-words.jp/w/LZW.html PSPでGIF画像を扱おうと思ったのですが、
上のサイトではUnisys社が特許料を徴収するとのこと。
PSPでGIFを表示するプログラムを公開すると、最悪の場合には
Unisysから特許料の支払命令が下る可能性があるってことですか?
GIF特許ってこの前無くならなかったっけ?
GIFの存在価値自体ないけどな。
アニメGIFがありますよ
アニメGIFなんてうざいバナー広告ぐらいでしか最近見ない。
今の流行はFlashでしょ。
バナーが全てflashになったらそれこそうざいよ・・・
pzltestをのbmp表示する所を改造して480*272以外のサイズにも対応させようとしたけど出来ないorz
どこを直せば良いですか?
void bmpDraw(int x,int y,unsigned char *filebuf){
int ix, iy, yy, w, h;
unsigned short r,g,b,data;
unsigned char *img, *vptr0, *vptr, *aa, *bb;
aa = filebuf+0x12;
bb = filebuf+0x13;
w = *aa + *bb * 256;
aa = filebuf+0x16;
bb = filebuf+0x17;
h = *aa + *bb * 256;
img = filebuf+0x36;
vptr0=(unsigned char*)pgGetVramAddr(0,0);
for(iy=0; iy<h; iy++) {
vptr=vptr0+iy*512*2;
yy = h - iy - 1;
for(ix=0; ix<w; ix++) {
r = *(img + (yy*w + ix)*3 + 2);
g = *(img + (yy*w + ix)*3 + 1);
b = *(img + (yy*w + ix)*3);
data = (((b & 0xf8) << 7) | ((g & 0xf8) << 2) | (r >> 3));
*(unsigned short *)vptr=data;
vptr+=2;
}
}
}
743 :
742:2005/09/29(木) 07:15:31 ID:3Jp7Z9eb
自己解決。
bmpファイルの方に1列ごとに0x00,0x00が入ってたのが原因でした。
勉強不足orz
GIFの存在価値は無いけど、GIFビューアの存在価値はあるね。
スリープに入ると、開いていたファイルハンドルは閉じられる。
チラシの裏
HelloWorldのソースを十分ほど読んだがいまいち理解できないなぁ
まぁのんびり噛み砕いていくか
747 :
名無しさん@お腹いっぱい。:2005/09/29(木) 14:55:56 ID:OFD3EiGB
>745
と思ってるが、ちゃんとclose関数呼んで終わらせとかないと
繰り返してるうちにファイルハンドルが枯渇する罠
[9.28.2005] NEO-MS converter prototype version 1.1 (the first time prototype)
NEO-MS converter prototype version 1.1 (the first time prototype)
date: 09-28-2005
complete : 95%
support : CF / MicroDriver
size limit : i have 6G BYTE Hitachi CF microdriver and 2G CF cart for test only,it's 100% workable,all 6GB space are full
CF / MicroDriver / MS hot plug and play : supported
画像小
ttp://www.neoflash.com/img/NEO-MS-Sample-500.jpg 画像大
ttp://www.neoflash.com/img/NEO-MS-Sample.jpg
>>748 すげぇな ついにCF繋げたか
95%の完成度とのことだが後はガワ作れば普通に売り出せる気ガス
本体の裏にぴったりくっつくのかな。
UMD潰れるけど、本体が数mm厚くなるだけなら、持ち歩く事も
何とか出来そうだ。
おお、CF使えるようになったらいいねぇ
BM98をクレクレしたい俺が居ます(泣)
漏れもBMSが欲しいと思ってた所だ
754 :
名無しさん@お腹いっぱい。:2005/09/29(木) 22:53:30 ID:ZiwoiwP0
うさんくせー
SDならまだしもCF使えて嬉しい?
メモステも価格改定されて、SDの次に安くなってない?
MicroDrive使えるのが大きい
MicroDriveなんて回して少ないバッテリ時間を更に数分の一にする気か。
UMDドライブを取り外して、その空きスペースにSDやらCFを挿せれたら神だな
ボタン数足りないのにBM98やってもつまらんと思うんだが。
GBA版、やりごたえないし。
760 :
745:2005/09/30(金) 09:14:03 ID:41JL94CI
RESUME_COMPLETEを待ってからclose-openしてもフリーズ
してる様なんですが、何か明確に今なら読めると言う事を確認する
手段はありますでしょか。
レジューム後、メモステのアクセスランプが必死に点滅しますが、
その点滅が終わる迄待たなければいけないんですよね。多分。
>>755 CF→SD変換とか色々あるけど他のメディアは変換機すら売ってないからなぁ
762 :
745:2005/09/30(金) 11:20:16 ID:41JL94CI
フリーズの原因は、エラーの戻り値が-1じゃなく <0なだけですた。
<-1の時はリトライ、==-1の時は断念で大丈夫ですかね。
ReadAsync等を呼んだ場合は、WaitAsyncを呼ばないとcloseする事も出来ない。
チラシの裏
どうもファイルハンドルが枯渇すると思ったら、エラー終了時
WaitAsync呼ばずにcloseしてて閉じられて無かった。
アプリに縦画面モードを追加したいのですが、Vertex の記述で縦横反転は出来ても、
回転は無理ですよね?
テクスチャを90度回転させて描画したいのです。
vertices[0].u = sx;
vertices[1].u = sx+sw;
vertices[0].v = sy;
vertices[1].v = sy+sh;
vertices[0].x = dx;
vertices[1].x = dx+dw;
vertices[0].y = dy;
vertices[1].y = dy+dh;
TRIANGLEにしる。
つか、なんでSPRITEだと駄目なんだろ。
90度は出来なくて当たり前か orz
漏れが前にやろうとしたのは180度だった。
反転はしても180度は出来なかったんよね・・・
レスどうもです。
180度は縦横両方入れ替えればいけないですか?
すまそ 180度 270度は出来るね・・・
漏れも90度が出来なかったのかな。
あれ 90度も出来た;
何が出来なかったんだろう・・・
vertices[0].u = sx;
vertices[0].v = sy+sh;
vertices[0].x = dx;
vertices[0].y = dy;
vertices[1].u = sx+sw;
vertices[1].v = sy;
vertices[1].x = dx+dw;
vertices[1].y = dy+dh;
多分↑で90度だと思う
>>770 上下反転に見えるのは気のせいでしょうか?^^;
PSPが黄色になってびっくりしたw
>>771 すまん、
vertices[0].u = sx; vertices[0].v = sy+sh;
vertices[0].x = dx+dw; vertices[0].y = dy;
vertices[1].u = sx+sw; vertices[1].v = sy;
vertices[1].x = dx; vertices[1].y = dy+dh;
だた。 x忘れてた。
MADをBGMに使うと負荷50%位になりかなり辛めなので、
少しでも改善出来ないかとちまちま弄ってる途中、ふとOCしてみたら、
サウンドスレッド無しと同じか、無しより早い位になった・・・
OC効果凄いなぁ。
>>775 ありがとうございます。
うまくいきました〜m(__)m
>>758 L SELECT START □ △ × ○ R
このボタン数のどこが足りないのですか?w
5キーでするとして、
L .△ .R
□ ○
L .上 .R
左 右
ぐらいかな?
志村!!逆!逆!
□ ○
L .× .R
左 右
L .下 .R
素で間違えた
志村!ターンテーブル、ターンデーブル
ボタン数はあっても配置がめちゃくちゃだと弾いてる気になれんよ・・・
ただの目押しゲーな感じ。
ポップンの5ボタンならいけ・・・ないか。
BMSプレーヤーってPCからPSPに移植したら重くなる気がするのだが。
BGアニメーション機能を取り外したりしても、音のせいで重くなるのでは?
785 :
名無しさん@お腹いっぱい。:2005/10/02(日) 00:42:49 ID:nsBA8DSR
>748
こんなモノの金出すくらいならデカイ容量のメモステ買うよ。
最近はメモステも安くなってきているしね。
libmadが度々挙動不審になるので、何が原因なのかと、
ライブラリ本体のソース見回したら、とんでもない大ポカがあったヨ
svnから拾ってきた物ですが、皆さん自分で修正されてるんですかね。
libmadの問題じゃなかった。 吊ってきます。
>>688 の様な気が確信に変わりました・・・
>>787
マルチスレッド環境で動作しないような実装になってるとか?
原因が分かったら報告してくれれば助かります。
>>789 SDK/SAMPLE全般のDebugScreenPrintfを用いたmainだけで終わる、
シンプルなスタイルで、
mallocで複数のブロックを連続して取りブロックの先頭から
オフセット&0xffを書き込み、コンペア-解放する単純な物を書いて
試してたら、途中コンペア不一致が出たんですが、文字がちらついて
よく見えないので、VblankStartを二回入れてフレームを落としてみたら、
エラーが消えたので、再度一回にしてみたらまたエラー。
何処でどう不一致なのか確認しようとエラー出力を追加したら
またエラーが消えた物の、続けて弄っていたら再発したので
確認してみたら、初回のmallocの0x04-0x08番地が不一致でした。
その後更にエラー出力加えて試してみたのですが、再発せず諦め。
とりあえず何か問題が潜んでる事は確認しました。
空きを断片化させるともっと起きそうな予感。
>>790 単純に書き込んだ後にデータキャッシュをクリアしてないだけじゃない?
SDKは初回Mallocで最大領域を確保して再利用するから、
何度もmallocとfreeを繰り返して領域がかぶるとデータキャッシュが有効になって
ブロックのサイズによっては不一致を出して当然だけど・・・
>>791 キャッシュが有効だと何故不一致になるのでしょうか。
キャッシュコントローラの関知しない所から勝手に書き換えられでも
しない限り問題無いと思うんですが・・・
もしキャッシュの問題だった場合、malloc/freeを使う外部ライブラリは
どうなるのでしょか。
ONScripterがPSPでとりあえず動いた。
やっぱり、ファイルアクセス関係で時間かかってたみたい。
fgetc()とかfputc()とか多いし。
スクリプトファイルを一旦全部メモリ上にのっけてみたらすんなり。
ファイルは初めに一気に読み込むようにするだけでかなり早くなるね。
psptoolchainにVFPUサポートの兆し
holger氏ガンガレ!
psptoolchainは頻繁に更新してるね。
半月程、チェックをさぼっていたらgdbも
使えるようになってる。リモコン端子で
シリアル通信してリモートデバッグ出来る
ようになってる
ハードに疎い漏れはシリアルコネクタの自作ができんよ orz
pspglじゃね?
GEを使ってテクスチャを1画面分描画する様なサンプルを見ていると、
横方向を128ピクセルとかで分割して何回かに分けて描画していたりするのですが、
その方が処理が速い等理由があるのでしょうか?
読み込むファイルのサイズを取得するにはどうしたらよいのでしょうか?
int file = sceIoOpen(path.c_str(), PSP_O_RDONLY, 0777);
long long offset = 0;
long size = sceIoLseek(file, offset, SEEK_END);
char size_str[100];
snprintf(size_str, sizeof(size_str), "%ld", size);
sceIoLseek(file, offset, SEEK_SET);
のようにしてsizeの値を確認すると負数になってしまっています。
どこかおかしい部分はあるでしょうか?
803 :
802:2005/10/04(火) 12:29:32 ID:xcFw9x4E
すみません。自己解決しました。
pathにファイル名だけを格納していたのが原因でした。
pathにファイルが置いてあるディレクトリまで含めて格納したら
sizeの値がちゃんと正数になりました。
ファイルオープンしたらちゃんと開けてるかエラーチェックしなよ。
>>801 PSPのハード構成によるが、分割理由が高速化とすれば、理由は主に2つ
1・キャッシュ(リード・ライトどっちか)に乗る大きさにまとめている
2・メモリセグメントの単位で矩形にアクセスしている
>>806 テクスチャのカラーモードに関わらず、128が極端に重くなる
境界だから、両方違うと思う。
>>801 前に切り出しサイズを動的に可変できるプログラムを書いてみたんだけど、
横を32とか64とかのキリのいい数で分割したときに描画が速かったです。
あまり分けなくても遅い、細かくしすぎても遅い、って感じで、
結局128が一番速かった覚えがあります。
って、理由の答えにはなってないですね…。すんません。
809 :
802:2005/10/04(火) 19:52:38 ID:YlH9/kAh
>>804 すみません。エラーチェックを面倒くさがってやっていませんでした。
これからは、しっかりエラーチェックをします。
ありがとうございました。
>>807 ハード構成によるのでは?
カラーモードによらないなら
1ピクセル1ワード構成のキャッシュの可能性が高いね
ポカーン
813 :
名無しさん@お腹いっぱい。:2005/10/05(水) 04:08:35 ID:l0e3im+w
いや、だからさぁ、電子の速度とゲートの強度を変えることにより相対論的マイクロチップは
スピントロニックなフィット(位相デジット)を操作するわけじゃん。でさ、電子回路では0と1の2つ
の値しかないから、フィットではさまざまな値を持たせることができるわけよ。
>>807,808
有難うございます。理解しました。m(__)m
Assembly '04のInvitation作った人がPSPデモを出してたのか・・・すげぇ
PSP Media Player って英語版出てたんだな・・・
確かソースも流れてますよね?
821 :
名無しさん@お腹いっぱい。:2005/10/07(金) 01:00:20 ID:PrNYlP1V
>>800 コネクタの入手は市販PSPヘッドフォンを買ってちょん切ればいいよw
てs
ネットワークプログラムでHOMEボタン対応できている方はいますか?
前に少し試してみたら、HOMEメニューでボタン押せる様になった物の、
メニューが出ててもキーが乗っ取られずに、左右やいいえでボタン押すと
下のスレッドでも読んでしまい、イマイチだった。
キー読み取り部分で、HOMEメニューが出てるかどうかをチェックして、
メニューが出てたらスルーな事が出来れば良いんだけど。
ExitCallbackに入った際に他スレッドをSleepさせればいいだけの話じゃ?
今ユーザーモードで確認してみたら呼ばれてなかったけど、
カーネルモードだと呼ばれるの?
まぁありえないとは思うんだが
うpロダに「PSPのSDKらしいよ」
前のと同じじゃん・・・
削除が遅れてGKに発見されたらうpした奴&にゃんこ逮捕かね。
ウイルスかとオモタ
14が漏れだったんだけど、あまり関係無かったみたい。
確か、HOME押してメニューは出るけど、キーが効かない状態に
なったと思った・・・
c++でnewしようとしたら
undefined reference to `operator new[](unsigned int)
と出ました。sdkでLDFLAGS = -lstdc++とするだけではダメ?
>828
削除勧めようと運用板にたれ込んでるヤツいるみたいだが・・・
にゃんこクオリティだなwwwwww
アドホック/赤外線のテスト用に、新品の2.0を買い足そうかと
思ってるんだが、ダウングレード時に踏んだら鬱死にするな。
ウィルスって1.5ならtif使えないので別に感染の心配しなくて良いんだよな?
教えて厨でスマソorz
>>836 ウイルスっていうかトロイなんだが、
自作ソフトの動くPSPには全てトロイの危険がある。
そんなの当たり前だろ。
>>838 試してないけどEBOOT.PBPのファイル一つ入ってたよ。
落としても何も入ってないようならキャッシュ消して一回保存して開いてみたら?
じみーにBMS再生試してみてたんだけど、二転三転の末に
やっとWAV・BMP合計15MB位迄のデータなら大体問題なく
再生出来る様になったお。
次は巨大WAVをBGMにしてる奴の非オンメモリ再生かな。
DDRってなんですか。 BMSとは別?
上の方で話に出てたの見て、ちろっと試してみただけなので、
BM関連の知識は皆無です。
とりあえずラブラブクリスマスとチョウの標本は再生出来ますた。
>>842 DDR(=Dance Dance Revolution)の譜面データも、
BMSの譜面データを使ってるソフトがちょこちょこあるんですわ。
Delight Delight Reduplication
ttp://homepage1.nifty.com/nickle/ ↑とか。BM98もスキン入れ替えでDance Dance Revolution対応にできたはず。
DDRならキーを叩いたときの音がいらなくて、音楽さえあればできるから、
メモリが少ないPSPならそっちのが作りやすいかも。
>>844 キタ━━━━━━━━━━(゚∀゚)━━━━━━━━━━!!!!
ちゃんと再生できました。感動した!
ファイラーから選ぶのもイイ。
超グッジョブd(>Д< )
ぐぐってDDR用のBMS拾ってみたら、mp3一つとbme・・・
ここ迄のステップが完全に無駄になるw
>>844 うわ、ごめんよ、そんなつもりじゃなかったんだ。
とにかくtest051009を試してみるよ。
すげぇ・・・感動した。
プログラム使ってるだけだとあまり凄いとか感じないけど、
自分で作ってみたりするとその凄さが分かるんだね・・・
PSPSDKのpnglib使おうとすると
relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
ってエラーが出る・・・
どうしたらいいのかどういうエラーなのか全く分からないorz
-G0
>>850 -G0つけたり外したりしてみたが変わらんかったд
PSPersonalizeで壁紙をファームに上書きした後、
PSPersonalize本体とルートに入れた差し替える壁紙を削除したら問題ある?
全然問題なし
メモステの空容量を取得するにはどうすればいいでしょうか?
俺も知りたい。
俺漏れも
俺も俺も
俺漏れも
俺漏れた
リモコン端子ってI/Oとして簡単に使えるんでしょうか?
単純にオンオフスイッチ付けただけで、オンオフを読む事って出来ますかね。
リードスイッチか何かで万歩計の様なスイッチ付けたら、本体振りまわして遊べそうな。
赤外線ポートいじってみたいですね。
キャリア周波数が100kHz以下だったら多少ひねくれた変調やデータフォーマットでも受信機を自作できそうなんですけど。
そーいやマルチリモコンアプリとかありそうでないね
チン☆⌒ 凵\(\・∀・) bmsプレイヤーまちくたびれたー!!
じゃもう上げる事にする。
ttp://nanika4.tripod.com/test051012.lzh 変更点は、 #WAV01 が4MB以上だった場合はBGM扱い。
RLE圧縮されたBMPに対応。 位。
BGMはLOVE SHINE、RLEは探し物で確認。
ここから先ゲームとして作り進める場合、キーやUI等のイメージが必要
になりますが、自分では描く気全く無いので、希望する人がいましたら
描いて下さい。 100%他力本願。
RLEなんてWinでプログラム書いてて、全く必要性を感じず、RLE圧縮
されたデータ自体見た事が無く、今まで一度も対応させた事
無かったんですが、BGAで結構RLE圧縮されてるデータがあって驚いた。
元のスキンの作者さんですか?
本家のSS加工
試しに起動してみたら、普通に遊べて凄かった。
あとキー判定とゲージさえあれば、十分遊べる。
DDR用に作ってください。
全然遊べるように見えない俺はなんか設定を誤ったのかな?
これはファイラーとして凄い便利だと思ったけど。
http://wiki.ps2dev.org/psp:lua_player:compiling SVNから拾ってきたmikmodlibのmakeが
drv_psp.c:45: error: too few arguments to function 'pspAudioSetChannelCallback'
とかエラー吐いちゃってうまくいきませんorz
pspAudioSetChannelCallbackの最後の引数が足りないか何かかと思ったんですが、
何か自分の手順がおかしいですかね……
しかもやりたいのはLuaPlayerの333MHz対応化だけなんですがorz
ステレオのWAV読めないけど自分じゃ何も出来なさそうだし
pspsdkを更新してみては?
必要ならpsptoolchainも更新
>867
BM98まじですげぇ……
BMS読み込みまでやって発音で悩んで結局作ってない俺と大違いだOTL
bapspの方を改造して遊んでたけどこっちは対応BMS多いのな……
ファイラーとしてもすげぇし。
877 :
名無しさん@お腹いっぱい。:2005/10/13(木) 23:00:10 ID:TBzmACk1
txtは読めるし、Wavは再生できるし、ファイラーとして既に完成してる感じだねぇ
bmsのほうもこの調子ならストレス無く動きそうだ(*´д`)
878 :
875:2005/10/14(金) 00:08:22 ID:cT7kSvWQ
879 :
875:2005/10/14(金) 00:10:29 ID:cT7kSvWQ
どんな画像が必要?
関係ないけどさ、12月にPSP版のDJMAXでるね
ん?発売日決まったんだ?
883 :
874:2005/10/14(金) 12:44:54 ID:ZMgpSis+
>>879 レスありがとうございます
psptoolchainもpspsdkも更新してたんですよね だからか
pspsdkだけsvnでリビジョン落とすのってどうやるんだろう……
或いはmikmodlibの更新待つほうが良いのかなorz へたれですんません
DJMAX4つボタンになってるね。
何曲ぐらい収録するんだろう?
風にお願いとMEMORY OF BEACHとBright Dreamが
入ってればいいかな。
886 :
874:2005/10/14(金) 14:52:46 ID:ZMgpSis+
pspsdkのリビジョン落とす mikimodlib完了 luaが詰まる
luaのリビジョン落とす 通る luaplayer通らない
こんなもんですか?orz あとちょっと
DJMAX
そのうちコナミに規制されそうな悪感
ez2djもほぼ黙認されたし、大丈夫っしょ
ただ日本国内でPSP用に売り出すかどうかは微妙
ファイラーとしてみれば今これより良いもの無い気がする。
ちょっと直してみた
>>891 非営利目的だから問題ないと思うよ
こういう事が規制される心配は無いでしょ
>>893 本家嗜好のSSRMAXは相当本物に似せたスキンだったんだけど
Konamiに文句言われて公開停止することになったっていう前歴があるから
あまり似ているのは避けるべきかと。
問題あるかないかを判断する権利は我々にない
にゃんこ?
>>867 Music Box入れてみたんだけど、
1024個以上はファイル読み込まないのかな?
初期のhellopspの環境でsceGu系の関数を使っているプログラムのソースって
ありますか?
889のスキンじゃ駄目なの?格好いいんだけど
901 :
名無しさん@お腹いっぱい。:2005/10/15(土) 11:04:48 ID:1HY5zSZH
本物のがかなり良いけどな。
RINで使うGB-PAR(Gameshark)のチートファイル、tchファイル
の作成法を教えてください
PSPのボタンでキーが6つあると、難しくない?
試しにbapspやったんだけど俺には十字キー左右同時押し
とか無理だった。
bapspの右ボタンは□でも代用できるようになってたはず。
それはそれとして、たとえばIIDX風7ボタンとかに対応しようとすると無理が出てくるよな。やっぱり。
PSPて表示中のフレームバッファとは違うモードのテクスチャを
レンダーターゲットにする事は出来るのでしょうか。
自分で試せばすむ事ですが、モード以前にレンダーターゲットの設定
自体がどうも出来ないので orz
>>905 仮にやるとしても、ボタンの押し辛さはもとより、画面が揺れてどうしようもなさそうだな
これだけのファイラーあるならソース欲しいなぁ・・・
ファイラーって作り込みの問題だと思うし。
>>904 L R
右 □ ×
スクラッチは△と○
これならできるかな?
PS版のbeatmaniaがこの操作だったと思う。
左黒鍵:L
右黒鍵:R
左白鍵:左
中白鍵:右、□
右白鍵:×
スクラッチ:○、△
じゃなかった?
あの・・・BM関連の話はそれ用のスレがあるっぽいのでそっち逝きませんか。
>>900 本物流用は自分であとから変更すればいいんじゃないかな?
まあ、変えられなかったらあきらめるしかないけど・・・
連続スマソ
>>914 GJ!
915の発言撤回しますorz
>>910 自分で設定変えてたのを書いちゃったみたい、スマソ
>>914 GJ!!!!!
スレ移動します
919 :
849:2005/10/15(土) 20:14:06 ID:5VZghF93
まだ迷ってますorz
jpeglibでも「relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'」が出ます。
誰か解決法分かる方いませんか?
ちなみにpngは挫折したの?
921 :
849:2005/10/15(土) 20:57:18 ID:5VZghF93
>>919 その前にUndefined reference to _impure_ptrみたいなエラーは出てない?
16ビット相対で届かないんだよ
924 :
849:2005/10/16(日) 07:50:54 ID:as+ieuzJ
>>923 ぐぐったページにもそれらしき事が書いてあったんですが、解決法が分かりませんでしたorz
>>922 出てないみたいです。
エラーはこんな感じでした。
psp-gcc -I. -I/usr/local/pspdev/psp/sdk/include -O2 -G0 -Wall -fno-strict-aliasi
ng -L. -L/usr/local/pspdev/psp/sdk/lib main.o -lpng -lz -lm -lpspdebug -lpspd
isplay -lpspge -lpspctrl -lpspsdk -lc -lpsputility -lpspuser -lpspkernel -o screenshot.elf
/usr/local/pspdev/lib/gcc/psp/4.0.1/../../../../psp/lib/libpng.a(pngerror.o): In function `png_warning':
pngerror.c:(.text+0x14c): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x1a8): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x1ac): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.0.1/../../../../psp/lib/libpng.a(pngerror.o): In function `png_error':
pngerror.c:(.text+0x2a8): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x310): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngerror.c:(.text+0x314): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.0.1/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_gAMA':
pngrutil.c:(.text+0xd08): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.0.1/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_cHRM':
pngrutil.c:(.text+0x1470): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
pngrutil.c:(.text+0x14e0): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.0.1/../../../../psp/lib/libpng.a(pngrutil.o): In function `png_handle_sRGB':
pngrutil.c:(.text+0x1790): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
/usr/local/pspdev/lib/gcc/psp/4.0.1/../../../../psp/lib/libpng.a(pngwutil.o): In function `png_write_cHRM':
pngwutil.c:(.text+0x1120): additional relocation overflows omitted from the output
collect2: ld returned 1 exit status
make: *** [screenshot.elf] Error 1
〃〃∩ _, ,_
⊂⌒( `Д´) < PSPでMIDI再生したいー!
`ヽ_つ ⊂ノ
ジタバタ
927 :
925:2005/10/16(日) 14:17:48 ID:wKbJN1Z4
>>926 ( ´・ω・)まじでか まとめサイトにのってる?kwsk頼みたい
929 :
925:2005/10/16(日) 15:10:00 ID:wKbJN1Z4
>>928 thx。ソフトシンセってモノを初めて触ったけど、難しいよママン(つД`)
Ver1.5だからKXploit使ってEBOOT作成、起動→.cfgねーよwってなる。
ちゃんと同じフォルダに放り込んでおいてある筈なんですけどね。
>>924 基本的には、リンク時じゃなくてコンパイル時に -G0。
libpng.a も作り直さなくちゃならないかも。
マインスイーパーない?
apt-getのような仕組みまだー?
*****完全sageマターリ進行!*****
自作ソフト開発者向けスレッドです。
要望・クレクレなどは作者本人が望んだ場合以外スルーで。
935 :
849:2005/10/17(月) 15:05:29 ID:IrAmJCpm
>>930 コンパイル時っていうのはlibpng.aのコンパイルのことですよね?
Makefileを見てみたんですが、自分にはどこを弄れば良いのか分かりませんでした。orz
どうしたら良いんでしょう?
---------------------------------------------------------
PSPSDK=$(shell psp-config --pspsdk-path)
PSPDIR=$(shell psp-config --psp-prefix)
TARGET_LIB = libpng.a
OBJS = png.o pngerror.o pngget.o pngmem.o pngpread.o \
pngread.o pngrio.o pngrtran.o pngrutil.o pngset.o \
pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
CFLAGS = -O2 -G0
include $(PSPSDK)/lib/build.mak
install: $(TARGET_LIB)
@echo "Installing libpng into $(PSPDIR)"
@mkdir -p $(PSPDIR)/include $(PSPDIR)/lib
@cp png.h pngconf.h $(PSPDIR)/include
@cp libpng.a $(PSPDIR)/lib
@echo "Done"
------------------------------------------------------
$ make
psp-gcc -I. -I/usr/local/pspdev/psp/sdk/include -O2 -G0 -c -o png.o png.c
psp-gcc -I. -I/usr/local/pspdev/psp/sdk/include -O2 -G0 -c -o pngerror.o pngerror.c
(中略)
psp-gcc -I. -I/usr/local/pspdev/psp/sdk/include -O2 -G0 -c -o pngwutil.o pngwutil.c
psp-ar cru libpng.a png.o pngerror.o pngget.o pngmem.o pngpread.o pngread.o pngrio.o pngrtran.o pngrutil.o pngset.o pngtrans.o pngwio.o pngwrite.o pngwtran.o pngwutil.o
psp-ranlib libpng.a
〃〃∩ _, ,_
⊂⌒( `Д´) < PSPでビーマニしたいー!
`ヽ_つ ⊂ノ
ジタバタ
〃〃∩ _, ,_
⊂⌒( `Д´) < PSPでIIDXしたいー!
`ヽ_つ ⊂ノ
ジタバタ
〃〃∩ _, ,_
⊂⌒( `Д´) < PSPでポップンしたいー!
`ヽ_つ ⊂ノ
ジタバタ
次スレはスレタイ直そう。
「自作ソフト総合」が変な厨を集める。
PSP自作ソフト開発スレ
考えてみればエミュや特定アプリ以外の自作ソフトに関する総合スレがないよな
>>935 全てのソースのコンパイル。libpng.a の方は大丈夫みたいだから、
自分で書いた方にも -G0。
これでわからないならあきらめれ。
942 :
849:2005/10/17(月) 23:19:20 ID:IrAmJCpm
>>941 サンプルのscreenshotを加工しないでコンパイルしてるんですけど、Makefile見たら
これも、もう -G0 ついてると思ったんですが、他の所を弄るんでしょうか?
長々とすいませんorz
------------------------------------------------------
TARGET = screenshot
OBJS = main.o
INCDIR =
CFLAGS = -O2 -G0 -Wall -fno-strict-aliasing
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS)
LIBDIR =
LDFLAGS =
LIBS = -lpng -lz -lm
EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = Screenshot
PSPSDK=$(shell psp-config --pspsdk-path)
include $(PSPSDK)/lib/build.mak
------------------------------------------------------
$ make
psp-gcc -I. -I/usr/local/pspdev/psp/sdk/include -O2 -G0 -Wall -fno-strict-aliasing -c -o main.o main.c
psp-gcc -I. -I/usr/local/pspdev/psp/sdk/include -O2 -G0 -Wall -fno-strict-aliasing -L. -L/usr/local/pspdev/psp/sdk/lib main.o -lpng -lz -lm -lpspdebug -lpspd
isplay -lpspge -lpspctrl -lpspsdk -lc -lpsputility -lpspuser -lpspkernel -o screenshot.elf
/usr/local/pspdev/lib/gcc/psp/4.0.1/../../../../psp/lib/libpng.a(pngerror.o): In function `png_warning':
pngerror.c:(.text+0x14c): relocation truncated to fit: R_MIPS_GPREL16 against `_impure_ptr'
(
>>924)
ロケフリプレーヤーまだー?
>>942 /usr/local/pspdev/psp/lib/libpng.a が古いんじゃないのか?
PSPでプログラミング ver5
LuaPlayerってなにさ?
Luaのプレーヤだろ?そのまんまかと
>946
ぐぐれ
アルカノイド1.5で動かない…
>>886 Rev 1154
Update with new pspAudioSetChannelCallback parameter.
mikmodlib/playercode/drv_psp.c
修正されました
951 :
874:2005/10/20(木) 14:36:12 ID:UBgmNktf
>>950 thx 全部最新でついにLuaPlayerのmakeに成功しました
泣ける 本当にありがとうございました>レス頂いた方々
SOU1?
どうしてもレンダーターゲットの設定が出来ない・・・うぎぎ
ターゲットに出来るのは0x110000未満で、8888で表裏取ってる
場合は、オフスクリーンへのレンダリングは無理等と言う事は
無いですよね・・・
WiFiのプログラムで終了選択の画面は出るけど、
EXITコールバック関数が呼ばれてない。
THREAD_ATTR_USERを指定すると、ExitCallbackは呼ばれる。
でも「しばらくおまちください」画面で止まる。
sceKernelExitGame(); を呼ばなくてもそこまではいく。
呼ぶ場合はWiFiのランプが消える。
ExitCallbackの引数がなにかカギを握ってるか?
誰かBMについてるファイラー作ってくれ!!
958 :
849:2005/10/26(水) 23:58:12 ID:GZ7u+Ck8
psptoolchainを落としなおしてインストールしたらエラー出なくなりました。
スレ汚しすみませんでしたm(_ _)m
まあ、そういうのはしょうがないよね
> Add basic stub libraries and headers for networking support (just what is
> defined in PspPet's wifi_03 samples). I will add the socket prototypes for
> sceNetInet to pspnet_inet.h after I have added the socket headers to newlib.
やっとこさ、って感じですね。
socketに対応してくれれば一気に自作アプリの守備範囲が広がりそうだけども
今のように強制的にエントリを書き換える方法以外で動作できるようにしないと
使い勝手が悪いのが難点か。
961 :
956:2005/10/28(金) 00:35:53 ID:JD0n/5kg
WiFiのプログラムで、「しばらくおまちください」が解消しました。
といっても、プログラム的な変更はなく、しばらくおまちくださいフリーズの状態で
電源スイッチを半クラッチのような状態にしてみただけ。
半分くらいスイッチを切ると、
メニューに戻れた。
アプリが死んでれば、スリープモードに入らずにホームメニューに戻るのかな?
toolchainを最新にしたらgetcwdが効かない、、、。
おまけにfopenがフルパスでないと×。。ぬぬ
PSP skype
BMのファイラのソースちょうだい
967 :
849:2005/10/31(月) 00:13:25 ID:yXbLS0Hh
svn://svn.pspdev.org/pspware/trunk/PSPMediaCenter/
から落としてきたやつをコンパイルしようとすると、
「../../codec/ahx/ahx.c:1317: error: too few arguments to function 'pspAudioSetChannelCallback'」
とエラーが。
>>874と同じ症状だと思います。
>>874は
>>950で修正されてるようですが、
PSPMediaCenterは修正されてないのでしょうか?
探してみても見つからなかったので。
968 :
うんこくん:2005/10/31(月) 16:07:17 ID:wTWMsxU4
質問だけど、
@echo "Installing libpng into $(PSPDIR)" でコンパイルすると
Luaの指数が30になって、msms(888888)のエラーが出るんだけど。
500でやるとエラー吐くし、
V22(PSPRARA)intint**inp$$"susonpet"をファイラーでコンパイルモード
で解読したらCenterのエラーに。
(88a8)について誰かおせーて
PSPで自作プログラムが動くと知ったときからいつか自作ソフト
を動かしてやろうとプログラミングを勉強してきた。
ただ、最近どういうことを勉強していけば作れるようになるのかわからなくてつらい。
みんなはどういうことを学んできたの?よければ教えて下さいな。
>>969 それは何を作りたいのか明確な目標がないからだと思うよ
ていうかソフトを作るために勉強するんじゃなくて、
ソフトを作って勉強するもんでしょ。
うん。PSPのプログラムを書いてると、
深いところまで勉強できる。
モチベーションは大事だね。
>>970-972 えぇと、じゃあとりあえず作ってみればいいのかな?
あたって砕けてはまたあたって砕けてを繰り返すことが重要ってことですか。
なんかすごくいいコメントをもらった気がするのでもっと言いたいことがある人
がいたら書いてくれるとうれしいです。
>>973 すぐ人に聞かずに、自分で解決する根性が必要。
人に聞いて解決するクセを付けると、いつまで経っても身に付かない。
>>969 とりあえずSDL勉強しておけば?
GU直たたきよりパフォーマンスは悪いけど、簡単だし開発しやすいから。資料も多いしね。
SDLは楽だな。PCでもある程度確認できるし。
977 :
名無しさん@お腹いっぱい。:2005/11/02(水) 23:05:07 ID:LEFRi1WC
自作プログラムの基本
まず 画面に
「Hellow World」
とか表示するだけのものを作る。
次に 十字キーを押すと その文字が 上下左右に動くようにする。
また、△や○、□などのボタンを押すと、色が変わったり、音が出るようにする。
これだけできたら、ゲームは できる! はず・・・・。
PSPプログラムを作ろうとしてみて、出来ないことがあったら、それが
君がPSPプログラムを作るのに必要なモノだねw
あと、どのくらいの時間をかける覚悟でいるのか、が重要かも。
どのくらいつらい挫けそうなことが待っているかを予想して、覚悟しとくのも
重要かも。自分がぶつかる壁は、とても具体的な、自分の知らないことであり、
それを解決する事は、自分の明らかな成長で、そういうのを繰り返してみんな
出来るようになったんじゃないかな。
void pspAudioSetChannelCallback(int channel, pspAudioCallback_t callback, void *pdata);
これの*pdataってなにに使うの?
ボタン入力や、リモコンのボタンが押されたら、割り込みで処理をする
っていうことは出来ないのかな。
見たところ、キー入力変化をみることは出来るけど、それもやっぱり
定期的に監視しないといけませんよね。
本家に最新版のPSP用ソースが出てたから初めてPSP開発環境を構築しました。
SDLなども入れていざコンパイルしようとするとエラー・・・なんかogg関係みたいです。
ちゃんとoggのlibも入れたつもりなんですが・・・なぜか分かる方、同じ状態になった方居たら教えてください
984 :
981:2005/11/04(金) 22:14:09 ID:0JgAVJ15
>>983 ONScripterLabel_sound.cpp:40:33: error: tremor/ivorbiscodec.h: No such file or d
irectory
ONScripterLabel_sound.cpp:45: error: 'ogg_int16_t' does not name a type
(中略)
ONScripterLabel_sound.cpp:517: error: expected primary-expression before 'unsign
ed'
ONScripterLabel_sound.cpp:517: error: initializer expression list treated as com
pound expression
ONScripterLabel_sound.cpp:518: error: expected ',' or ';' before '{' token
ONScripterLabel_sound.cpp: In member function 'long unsigned int ONScripterLabel
::decodeOggVorbis(unsigned char*, unsigned char*, long unsigned int, int&, int&)
':
ここからまだ701番まで続いて、最後に、
make: *** [ONScripterLabel_sound.o] Error 1
と出て終わってしまいます。長くなるので略してしまいましたが、略していけないところがあったら教えてください。
長文失礼しました。よろしくお願いします。
libtremor入れた?
986 :
981:2005/11/04(金) 22:54:59 ID:0JgAVJ15
>>985 libtremorで検索したものを入れたら見事通りました!!
次はMADで引っかかりましたが・・・正直MADはよくわかりませんが、調べてがんばります。
ありがとうございました
988 :
981:2005/11/05(土) 01:34:32 ID:3rtFtDQB
>>987 それがうまく入ってなかったみたいです・・・助かりました。ありがとうございます。
これでいざ実行!・・・最後にエラーが・・・
/usr/local/pspdev/lib/gcc/psp/4.0.2/../../../../psp/bin/ld: cannot find -lSDL_tt
f
collect2: ld returned 1 exit status
make: *** [onscripter.elf] Error 1
と出てしまいました。ttfは入れたと思うのですが・・・
質問ばかりですみません。どうか教えてください。
>>988 よくワカランが、SDL_ttfのインスコでエラー出てるの見落としたとかmake installを忘れてるとかは?
>>988 > /usr/local/pspdev/lib/gcc/psp/4.0.2/../../../../psp/bin/ld: cannot find -lSDL_ttf
こういうそのまんまなエラーくらいは自己解決しないとこの先つらいぞ…
991 :
981:2005/11/05(土) 04:08:28 ID:3rtFtDQB
>>989 もう一度いろいろインストールしなおしてみましたが変わりませんでした・・・
>>990 う〜ん・・・私もttfが見つからないって意味だと思うのですが、やっぱりttfちゃんと入ってないのかな
こんな私のためにレスありがとうございました。もう少しがんばってみます
freetypeで、arial.ttfを読ませても
FT_Err_Unknown_File_Formatが返ってきます。
フォントファイルがおかしくなくて、プログラムの問題?