PSP xvi

PSPプログラミングを教えるブログ(本気で頑張る人アクセス大歓迎サイト)

PSP-X.gif

記事の間違いを報告  新アップローダー
記事修正情報 PSPプログラミング資料 自作ゲーム PSP用エミュレータ リンク

公認リンク
公式PSP専科 公式PSVita専科 はじめるPSPSDK PSP EXEC GAME M@STER PSP 猫山のYouTubeチャンネル

TAG
全記事にタグをつけています  http://nekoyama2gillien.blog36.fc2.com/?tag=タグ
PSP PSPプログラミング DXライブラリPortable OSLib ショートプログラム ハローワールド
PSP自作ゲーム PSP自作ソフト エミュレータ ゲームアーカイブス PSP動画
動画 初音ミク ミクミクダンス MMDドラマ ゲーム 魔法少女まどか☆マギカ 侵略!イカ娘
アイドルマスター

このブログについて

このブログでは、非公式のPSPソフト、いわゆる自作ソフト( PSP Homebrew )を作る事を目的とします。

著作権などの こまかい利用規約については、こちらを開いてお読み下さい

このブログについて知りたい方、初めて来訪された方はこちらを開いてお読みください
お問い合わせは 猫山猫宗(nekomune@gmail.com)までどうぞ


当ブログはリンクフリーです。ブログ名は、アルファベットで「PSP xvi」と書いて『ピーエスピー・エクシビ』とお読みください。
相互リンクを希望されるブログ運営者様は、ココで申請して下さい。


このブログで全記事から探し物の方は、ここをクリックして下さい。
http://nekoyama2gillien.blog36.fc2.com/?all

スポンサーサイト 

--/--/--
--. --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[edit]

CM: --
TB: --

page top

『ラーメン油天国』

はいはい~、今回は、プレイステーションストアで¥300円で販売していた変わり者ゲームを紹介するのだ。

タイトルは、『ラーメン油天国』でっす。

-- 続きを読む --
関連記事
スポンサーサイト

[edit]

CM: 1
TB: 0

page top




憂煉氏の新ライブラリ製作中の実験動画です
憂煉氏ががんばってくれています。C++版 DXライブラリPortable のリリースが待ち遠しいぞ!

ボクはねんどろいど風のMikuMikuDanceモデルを使って何かを開発中。

ボクの場合、Windows7 32Bit Ultimate で MikuMikuDance をするには、Windows2000互換モードにして「管理者モードで起動する」のチェックを入れなければ起動しました。


毎日少しずつ書き物をする時間を作って記事を製作してますが、読みやすい分かりやすい文章は苦労します
みくねぎっと乙。の開発講座はちゃんとやりますので見捨てないでね

今週中に1ページ追加したいですが

関連記事

[edit]

CM: 0
TB: 0

page top

OSLib とは Old School Library の略なのです。知っている方は多いと思います。
QJ.net にも登録されていますし

先日紹介した、Minimalist PSPSDK アドオン をインストールしたら OSLib のサンプルに boo という面白そうなのが登録されていたのでビルドしてみました。

実行例
おばけだぞー!!

おばけの操作方法
・十字キーで8方向に移動可能
・□ボタンで拡大
・○ボタンで縮小
・Lトリガーで逆時計回りに回転
・Rトリガーで時計回りに回転

DXライブラリPortable でも同じ事が出来るとは思いますが

カワイイおばけですねw


ユーザーモード記述なので、カーネルモード&ユーザーモード、どっちでも起動可能ですよ~
PSP-1000、PSP-2000、PSP-3000

はいはい、Half-Byte Loader R97 でも正常起動できましたっ♪


関連記事

[edit]

CM: 0
TB: 0

page top

みくねぎっと 最終版は・・・(近況報告) 

2010/09/11
Sat. 21:40

最近、私が参加しているSNSで知り合いになった「銀.」さんという方が居ます

PSPについての研究はかなり前からやっておいでで知識も豊富で頼りになる方です。
最近プログラミング環境を構築したので開発を始めたいとも言っておられました。

そんなある日、「みくねぎっとHBL(仮称)にお役立て下さい」と、銀.さんから音声データを頂きました。
聴いてみるとなかなか良かったので、そのリソースを採用するコトにしました。

で、ついでにみくねぎっとWinの音声も頼んでみると、快く引き受けて下さいました
とても感謝しています

協力して開発するのっていいですね。
ボクは良きパートナーを得られてとても幸せです

絵が得意な人、音声にこだわる人、プログラムを組む人。三位一体!

一人辺りの開発費(負担額)が減るので経済的だったりします(笑)


ソフトウェアってチームを組んで作ると楽しいよ♪


関連記事

[edit]

CM: 0
TB: 0

page top

マイクロソフトの表計算ソフトでお馴染みの「エクセル」を使って「スーパーマリオ」を作っちゃった猛者 登場!



http://www.nicovideo.jp/watch/sm12052293

ちゃんとBGM付いてるし、細かい部分まで再現率 凄いです。これは必見ですよっ♪


そう言えばマリオくん、25周年おめでとう!
関連記事

[edit]

CM: 0
TB: 0

page top

一応、プログラミング技術に関わることだと思うので、実験。

過去記事 PSPプログラミング EBOOT.PBPの構造 とりあえずここまで調べたよ版 を参考に、バイナリエディタで操作。

カスタムファームウェアは 年齢制限が解除されているので 年齢制限を設定しておきます


オフセット値(アドレス):00000130 の値を、0x01 から 0x0B の間で変更してみると……。


↑ こんな風になりました。実験成功!
紛らわしいですが、PS1 のEBOOT.PBP を弄ったのではなく、PSPSDKで出力された EBOOT.PBP を弄ったのですよ

この実験は、バイナリエディタで簡単に出来るので、トライしてみては如何かな?


ちゅうい:この実験は、年齢制限の解除を目的としているのではありません
関連記事

[edit]

CM: 0
TB: 0

page top

2010年9月19日付けで、Javaで動作するPSPエミュレータ JPCSP v0.6 Revison 1772 がリリースされたので、これはッ!と思いPSP俺作ゲームを使って実験する事にしました。

同人ソフトもあります(霊夢パンチ)。ボクは作者なので社長に使用許諾を貰っています。
僕の製作した別の同人ゲームもエミュレートしてくれました。ないすっ♪

表示中の画面に書き加える作業をしても反映されんかったぞ、と







パソコン画面のキャプチャは、カハマルカの瞳という無料ソフトでやってみましたよ。
パソコンキャプチャ動画とデジカメ動画の結合は難しかったとです(ぐはっ


↓↓PSPエミュレータ JPCSP はこっちです↓↓
PSP エミュレータ|エミュポータル

関連記事

[edit]

CM: 0
TB: 0

page top

2010年9月23日更新

PSPSDKで作成される EBOOT.PBP ファイルの構造を、もっと詳しく調べてみました。
余計なファイルを含まない状態の EBOOT.PBP を解析して書いていますので、他の自作ソフトとはアドレスが異なる場合があります。

知っておいて欲しい事
PSPは32ビットCPUです。指定アドレスからの32ビットデータの4バイトはリトルエンディアン方式で並びます。左の値から右の値を、下位から上位、という風に解釈して下さい

つまり、下記の場合は
アドレス 00000000:AA 01 C8 22
 0x22C801AA という値が入っている、という事です


NAGAOKASTATIONさんの資料を参考にしました。
http://nagaokastation.com/psp_ebootpbp.html

先頭40バイトが EBOOT.PBPヘッダー部分
アドレス   値
00000000 00 50 42 50 "\0PBP"
00000004 00 00 01 00
00000008 (PARAM.SFO の先頭アドレスへのオフセット値:28 00 00 00)
0000000C (ICON0.PNG の先頭アドレスへのオフセット値:NULLだと C0 01 00 00)
00000010 (ICON1.PMF の先頭アドレスへのオフセット値:NULLだと C0 01 00 00)
00000014 (ICON1.PNG の先頭アドレスへのオフセット値:NULLだと C0 01 00 00)
00000018 (PIC1.PNG の先頭アドレスへのオフセット値:NULLだと C0 01 00 00)
0000001C (SND0.AT3 の先頭アドレスへのオフセット値:NULLだと C0 01 00 00)
00000020 (DATA.PSP の先頭アドレスへのオフセット値:プログラム部分 C0 01 00 00)
00000024 (DATA.PSAR の先頭アドレスへのオフセット値:大抵、ここで終わる)

次の41バイト目からは PARAM.SFO ファイルの内容です
PARAM.SFO の先頭16バイト部分の内訳は資料参考しました
アドレス  値
00000028 00 50 53 46 "\0PSF"
0000002C 01 01 00 00
00000030 ?? ?? ?? ?? ラベル(Key)が格納されている先頭アドレス
00000034 ?? ?? ?? ?? データ(Keyの値)が格納されている先頭アドレス
00000038 ?? ?? ?? ?? ラベル数(ソースコード中の関数の個数)
その後、ラベル数×16バイトの構成でデータが存在(データ長が可変します)
↓↓(16バイト の うちわけ)
:0000 ?? ?? ラベルが格納されているオフセットアドレス
:0002 ?? 0 (不明)
:0003 ?? 2:文字列(unicode)/4:数値/0:バイナリ
:0004 ?? ?? ?? ?? 実際のデータ領域
:0008 ?? ?? ?? ?? データ領域
:000C ?? ?? ?? ?? データが格納されているオフセットアドレス
 ↑↑この構成が、ラベル数の分だけ存在して、次のセクションへ

-- ↓↓この位置(000000BC)は、アドレス:00000038 の 内容値に
16をかけて計算で求める事ができます --

アドレス 値(文字列)
000000BC "BOOTABLE" 00
000000C5 "CATEGORY" 00
000000CE "DISC_ID" 00
000000D6 "DISK_VERSION" 00
000000E3 "PARENTAL_LEVEL" 00
000000F2 "PSP_SYSTEM_VER" 00
00000101 "REGION" 00
00000108 "TITLE"
0000010C 00 00 00 00 01 00 00 00
00000114 4D 47 00 00 ← "MG.."

アドレス  値
00000118 "UCJS10041" 00 00 00 00 00 00 00 ← ゲームID(16バイト)
00000128 "1.00"
0000012C 00 00 00 00
00000130 01 00 00 00 ← (視聴年齢制限レベル:0x01~0x0B)
00000134 "1.00"
00000138 00 00 00 00 00 80 00 00

ゲーム名セクション(短い場合もあります。可変長)
00000140 最長128バイトのUTF-8文字列。
000001BF 末尾は 0x00

(ICON0.PNG セクション:ファイルサイズの分だけ追加されます)
(ICON1.PMF セクション:ファイルサイズの分だけ追加されます)
(ICON1.PNG セクション:ファイルサイズの分だけ追加されます)
(PIC1.PNG セクション:ファイルサイズの分だけ追加されます)
(SND0.AT3 セクション:ファイルサイズの分だけ追加されます)

(DATA.PSP セクション:ELFセクション)
参考サイト:http://d.hatena.ne.jp/tatsu_pc/20100501/1272709062
アドレス  値
000001C0 7F 45 4C 46 マジックナンバー "\127ELF"
000001C4 01 32bitアーキテクチャ(ELFCLASS32)
000001C5 01 2の補数、リトルエンディアン(ELFDATA2LSB)
000001C6 01 ELF仕様のバージョン(EV_CURRENT)
000001C7 00 ターゲットOSとアーキテクチャ(ELFOSABI_ARM)
000001C8 00 ABIのバージョン(ELFOSABI_ARMに準拠する)
000001C9 00 00 00 以降、予約済み
000001CC 00 00 00 00 ( 〃 )
000001D0 02 00 08 00 ( 〃 )

プログラム部分展開 開始位置セクション
000011D8 暗号化されてないのでニーモニックコードが良く分かります
     メインメモリーに読み込まれる部分です

(DATA.PSARセクション)


年齢制限PSPゲームを作るなら、視聴年齢制限レベルの部分を弄ってやればイイという結論。
しかし、カスタムファームウェアって、視聴年齢制限レベルを切った状態がデフォルトなのですが(^^;;;


関連記事

[edit]

CM: 2
TB: 0

page top

ええ、ちょっとPSPの体験版ゲームのEBOOT.PBP をバイナリエディタで覗いてみたのですよ。そしたらまた新たな発見です。

体験版ゲームの必須ファームウェア・バージョンが記されている部分を突き止めました。
簡単に見付かったけどね。

バージョン6.30以上じゃないとダメ
アドレスは、拡大で観てください。「6.30」の部分

バージョン7.65以上じゃないとダメ
「6.30」を「7.65」に書き換えた。

すると…。↓↓
バージョン7.65以上、だとぅ!?



この事実を活かして PSP HOMEBREW でも 必須ファームウェアバージョンを設定する事が可能なのですよ
DoDoDo0924.png
ごく普通の自作ソフトですが……。

DoDoDo876.png
必須ファームウェア・バージョンが、8.76だとぅ!?


便利アプリの紹介
PSP Content Manager というのを使うと、PSPのゲームが入っているフォルダ名を調べたり、アイコンの絵を見たり、ゲームの並び替えも出来ます。便利♪
クリックで拡大
正規PSPのメモリースティックの中身を閲覧中。ゲームの並び替えは、アイコンをドラッグ!


数値の765や876は、アイドルマスターの影響かも知れません(ぉ
関連記事

[edit]

CM: 0
TB: 0

page top

ダイアログ画面というのは、ユーザーに対話形式でどうするか決めてもらうのが目的です。
システムが持っているダイアログ機能をPSPSDKで利用できたので公開します。

【気をつけること】
このソースコードのファイル保存方法は、従来のシフトJISコードではなくてUTF-8コードになっています。
日本語メッセージ表示は、シフトJIS文字列ではなくUTF-8文字列を使っています

ダイアログ画面




『 ダイアログ画面表示サンプル 』のダウンロード
DIALOG_SAMPLE.zip  32.1 KB (32,905 バイト)
ダウンロード
(ソースコード / 実行ファイル)
ユーザーモードのEBOOT.PBPです。




ソースコードを読みたい方は、続きに貼り付けたので見てください

-- 続きを読む --
関連記事

[edit]

CM: 0
TB: 0

page top

短編MAD動画 : ネオ vs ロボコップ 

2010/09/29
Wed. 21:25

これ、MADなの? MADなのねぇ~?

クオリティの高い、MADな映画をご紹介

NEO vs ROBO COP


この作者さんは、他にも ターミネーター vs ロボコップ(3部作)とか面白いのを作っています
気になる人は、検索してみると良いですよ
関連記事

[edit]

CM: 0
TB: 0

page top


h o m e |


 

2010-09