« 2005年4月 | トップページ | 2005年6月 »

2005年5月の7件の記事

2005.05.28

HOME で戻れない。。。

HOME ボタンで、「ゲームを終了しますか?」で、
「いいえ」は押せるのに、「はい」が押せない、という現象で悩んだ。

nem氏のPSPsoundのstartup.s を使ってたのだが、、、

  STUB_FUNC 0x278C0DF5,sceKernelWaitThreadEnd
  STUB_FUNC 0x9FA03CD3,sceKernelDeleteThread

この2行(インデントが違うのですぐわかる)を削除する必要がありそうだ。
なぜなのかは、よくわからんが、うまく終了できるようになった。
マクロ見る限りでは、このアドレスにジャンプするコードに変わるだけなのに。。。

これで安心して遊べるぞ~

| | コメント (0) | トラックバック (1)

2005.05.24

コードレスハンダごて COLD HEAT

http://nixie-tube.com/site3/cold_heat.html

なんかスゲ~
欲し~

かなり手軽にハンダ付けできそう。
ちょっとした回路は、ブレッドボードで組んでるけど、線が足らなかったりグチャグチャになったりで、ちょっと大変。
これだと、UEW線で適当に空中配線できそうで便利そうだ。
UEWの皮膜を溶かせる温度になるのか疑問だけど。

買ってしまいそうだ。。。

| | コメント (3) | トラックバック (0)

2005.05.19

アイコン変更!

やはり、icon0png.h がアイコンだった。

http://www.psp-hacks.com/downloads.php
の elf2pbp3 の src の main.cpp を以下のように適当に修正。

----------
#include "snd0at3.h"
#include "datapsar.h"
#include <malloc.h>  // Salt added
----------

----------
s32 generatePbp(FILE* fd, u8* elfBuffer, s32 elfSize, const char* appTitle)
{
  // Salt added {
  unsigned char *pucICON0PNG = NULL;
  FILE *fp = fopen("ICON0.PNG", "rb");
  if (fp) {
    fseek(fp, 0L, SEEK_END);
    long lLength = ftell(fp);
    if (lLength) {
      fseek(fp, 0L, SEEK_SET);
      pucICON0PNG = (unsigned char *) malloc(lLength);
      if (pucICON0PNG) {
        fread(pucICON0PNG, 1, lLength, fp);
        sizeIcon0Png = lLength;
      }
    }
    fclose(fp);
  }

  // } Salt added
  // prepare pbp header
  PbpHeader pbpHeader;
  pbpHeader.magic[0] = '\0';
----------

----------
  // write all files to pbp
  fwrite(bufferParamSfo, 1, sizeParamSfo, fd);
  // Salt added {
  if (pucICON0PNG) {
    fwrite(pucICON0PNG, 1, sizeIcon0Png, fd);
    free(pucICON0PNG);
  }
  else

  // } Salt added
  fwrite(bufferIcon0Png, 1, sizeIcon0Png, fd);
----------

と Salt added の部分を追加、
cl main.cpp
でコンパイルして main.exe を得て、elf2pbp.exe にリネーム。
これで、カレントフォルダに ICON0.PNG があれば、それを使って EBOOT.PBP を作ってくれる。
一応、コンパイルしたのをここに置いておく。

| | コメント (0) | トラックバック (0)

2005.05.18

アイコン発見!

アイコンの在り処がわかった。
http://www.psp-hacks.com/downloads.php
の elf2pbp3 の src に icon0png.h というのがある。
70KB だし、名前からして、たぶんこれが icon だ。

まだ未確認だけど。
もう眠い。。。;;

てか、やっぱりすごすぎる。

| | コメント (0) | トラックバック (0)

2005.05.15

PSP Hello World 動作確認

動作確認ができた。
↓の5/11のコンパイルだけではダメだった。

mk.bat で作られた out に対して、elf2pbp をあてる必要があった。
http://www.psp-hacks.com/downloads.php
から、elf2pbp3 を落として、
elf2pbp outp <name>
として、EBOOT.PBP を作る。
これをMSの\PSP\GAMEの下に適当にフォルダ掘って、入れればPSPで実行できる。
#<name> はPSP上でアイコンの右側に表示される名前になる。


あと、自作するときは、
startup.s の 59 行目
> .ascii "HelloPSP"
を適当に変えて

outpatch.cpp の 6 行目
> #define str_modulename "HelloPSP"
も同じ文字列に変えて

outpatch.cpp で #include してる stdafx.h を、
どっかのを参考にして作って、
-------------------
// stdafx.h
#pragma once
#include <stdlib.h>
#include <stdio.h>
#include <malloc.h>
#include <tchar.h>
--------------------
これでいい。

cl outpathch.cpp
でコンパイルして、outpatch.exe を作る。

これで、mk.bat で make して elf2pbp あてればOK。

アイコンはどっかで勝手に埋め込まれてるみたいなので、
出来上がった EBOOT.PBP を、PBP Unpacker で書き換える。
http://www.pdc.me.uk/pbp/
から PBP Unpacker を落として、
Open で EBOOT.PBP を選んで、
PARAM.SFO, DATA.PSP を選択して右クリックメニューから "Send to New" して、
右上の ICON0.PNG で自作の PNG を指定して Save すればOK。
PNG は 144x80 らしい。他のサイズでもいいのかな?
PIC1.PNG を指定すると、アイコン選択したときの後ろの画面全画面に表示される。
#こんなことしなくても、どっかでリンク時に指定できるはずなんだが。。。

次はキー読み取りしてみよっと。


それにしても、すごすぎる。

| | コメント (1) | トラックバック (1)

2005.05.11

PSP Hello World

ここ
解析できるなんて凄すぎる!

PS2toolchain→PS2Dev_Setup.exe
をセットアップして(ディレクトリ名にスペース入るとダメとのこと)
PS2toolchain→ps2dev-toolchain-mingw32-20050504.zip
を展開したのを gcc フォルダに上書きコピーすれば、
Hello World はコンパイルできた。

なぜかPSPが手元に無いし、MSに書くこともできないし、で、動作確認できず。;;

GB emulator まで動いてるらしく、凄すぎる。

| | コメント (0) | トラックバック (0)

2005.05.09

ゲランドの塩

ゲランドの塩

12ユーロ
高すぎ!

| | コメント (0) | トラックバック (0)

« 2005年4月 | トップページ | 2005年6月 »