View previous topic :: View next topic |
Author |
Message |
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Thu Dec 08, 2005 9:11 pm Post subject: rRootage for PSP v1.5 |
|
|
I've just released rRootage for PSP v1.5. Get it at http://psp.jim.sh/mrbrown/rRootage_PSP-1.5.zip.
Screenshots:
From README.PSP (included in the archive):
Quote: | rRootage for PSP
v1.5
--
I N F O
This is a port of Kenta Cho's addictive PC shooter, rRootage (http://www.asahi-net.or.jp/~cs8k-cyu/windows/rr_e.html).
I N S T A L L
1.0 & 2.0 users: Copy the 1.5/rRootage directory to /PSP/GAME/. Copy
1.0/EBOOT.PBP to /PSP/GAME/rRootage/.
1.5 users: Copy the 1.5/rRootage and 1.5/rRootage% directories to /PSP/GAME.
P L A Y
Press Start to begin a new game. Use the analog or directional pad to steer
the ship, use X (or Triangle) to fire, and use O (or Square) to activate your
Special.
See readme_e.txt for additional information on gameplay.
Press Start or Home to pause the game.
Press Select to toggle music playback.
Press L + R to take a screenshot. Screenshots are stored at the root of the
memory stick.
Select Q (the bottommost menu item) and press Start to exit to the PSP browser.
B U G S
There are a few minor graphical differences from the PC version. The
differences should not affect gameplay.
M I S C
The full source code for rRootage lives in the pspdev Subversion repositiory at
svn://svn.pspdev.org/pspware/trunk/rRootage.
C H A N G E S
2005 12/14 v1.5
- Call _init() in libSDL_main's main() if it wasn't already called and make
sure that the startup constructor doesn't access kernel mode on 2.0 PSPs.
- rRootage now works on 2.0 PSPs under Fanjita's EBOOT loader.
2005 12/14 v1.4
- Fixed the Psyvariar crash that only happened to 1.50 users.
- Fixed GL_LINE_LOOP in PSPGL. Graphics are improved.
- Add the performance meter from PSPGL (commented out).
2005 12/11 v1.3
- Fixed PSPGL's GE init code to be more compatible across all PSPs. rRootage
should work on 2.0 PSPs now.
2005 12/10 v1.2
- Disable antialiasing (support appears to be missing in PSPGL). The graphics
are noticeably improved.
- Fix a problem with boxes not being drawn correctly.
2005 12/09 v1.1
- Fix screenshots for 1.0 and 1.5 users.
- Pause the game when Home is pressed.
2005 12/07 v1.0
- Initial release.
--
Port contributed by Marcus R. Brown <mrbrown@ocgnet.org> |
Thanks goes to rinco for various fixes and to jimparis for hosting.
Last edited by mrbrown on Fri Dec 16, 2005 11:56 am; edited 6 times in total |
|
Back to top |
|
|
Wraggster
Joined: 26 Aug 2005 Posts: 121
|
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Fri Dec 09, 2005 2:49 pm Post subject: |
|
|
In case folks are wondering, the following is a list of features that my release has that the deniska release doesn't have:- Graphics are full 32-bit RGBA (deniska's release uses 16-bit color). Compare the screenshots.
- Pause using Start.
- Toggle music using Select.
- The entire screen is supported for gameplay (in deniska's release the ship can't move all the way to the edge of the playfield borders).
- Screenshots using L+R (a bit buggy in this release).
- Minor speed improvements that make it a bit faster overall.
|
|
Back to top |
|
|
dot_blank
Joined: 28 Sep 2005 Posts: 498 Location: Brasil
|
Posted: Fri Dec 09, 2005 2:52 pm Post subject: |
|
|
the record should made straight as to
who is responsible for this excellent port
this is one of my all time favorite shootemups
and credit i agknowledge goes to mrbrown
for his hard work with rRootage that
anyone who has visited ps2dev.orgs
irc channel #pspdev can tell you who
is to be credited for this port to psp and the
facts have to be set straight that what you
hear is not always what you see ;) _________________ 10011011 00101010 11010111 10001001 10111010 |
|
Back to top |
|
|
Kojote
Joined: 17 Sep 2005 Posts: 9 Location: Austria
|
Posted: Fri Dec 09, 2005 7:36 pm Post subject: |
|
|
Let me quote something from a big PSP news page regarding THIS release:
Quote: | Friday, December 09, 2005
rRootage v1.0 for PSP
Deniska has updated his PSP port of Kenta Cho's shooter rRootage, version 1.0. Control your ship and avoid the barrage. Use the laser to destroy the battleship of the enemy. You can cause more damage if you fire the laser close to the enemy. When all ships are destroyed, the game is over. The ship extends 200,000 and every 500,000 points.
posted by Jeff Chen at 1:33 AM | 0 comments |
I only say... EXPERTS at work! :) _________________ Kojote
Webmaster of PDroms & Retroguru |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Sat Dec 10, 2005 3:19 pm Post subject: |
|
|
rRootage for PSP v1.1: Screenshots should now work for 1.0 and 1.5 users. The Home button will pause the game. |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Sun Dec 11, 2005 4:43 am Post subject: |
|
|
rRootage for PSP v1.2: Disabled antialiasing; graphics are MUCH improved. Fixed a bug in the way boxes were being drawn. |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Sun Dec 11, 2005 9:00 pm Post subject: |
|
|
rRootage for PSP v1.3: Tried to make PSPGL's initialization code more compatible with 2.0 PSPs. Hopefully this release works under 2.0. If you had previously tried it on 2.0 and it crashed, you should reinstall rRootage from the v1.3 .zip. Any feedback appreciated. |
|
Back to top |
|
|
tjbrosnan
Joined: 11 Dec 2005 Posts: 3
|
Posted: Sun Dec 11, 2005 11:06 pm Post subject: |
|
|
Unfortunately version 1.3 didn't work for me under 2.0 using the 0.85 eboot loader. Screen just stayed blank when i tried to load the game, also the eboot loader reported that the game is kernel-mode app. |
|
Back to top |
|
|
StereoMike
Joined: 11 Dec 2005 Posts: 5
|
Posted: Sun Dec 11, 2005 11:11 pm Post subject: |
|
|
Doesn't work for me either, tried loader v0.7, 0.8 and 0.85. Same problem, blank screen, as above. |
|
Back to top |
|
|
bobcobb
Joined: 25 Aug 2005 Posts: 3 Location: Midwest USA, WHY ME?!
|
Posted: Mon Dec 12, 2005 3:47 pm Post subject: |
|
|
Hmm, did not work for me either. It says it is a kernel mode app. Damn I really wanted to play this one too. |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Mon Dec 12, 2005 10:39 pm Post subject: |
|
|
If you are a user experiencing crashes in PSY mode, I need the full text of the line that begins with "psp-addr2line" from the BSOD. |
|
Back to top |
|
|
sjk1
Joined: 08 Sep 2005 Posts: 2
|
Posted: Tue Dec 13, 2005 12:05 am Post subject: |
|
|
there you go:
psp-addr2line -e target.elf -f -C 0x8902cfc 0x1952b988 0x8904f10
hope this helps! :-) |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Tue Dec 13, 2005 4:44 am Post subject: |
|
|
sjk1 wrote: | there you go:
psp-addr2line -e target.elf -f -C 0x8902cfc 0x1952b988 0x8904f10
hope this helps! :-) |
Thanks. This is from v1.3, correct? I think I have an idea of what the problem could be. |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Wed Dec 14, 2005 8:02 pm Post subject: |
|
|
rRootage for PSP v1.4: Fixed the Psyvariar crash bug that happened to 1.50 users. Thanks goes to ReKleSS for helping me track this down on his 1.5. Fixed the GL_LINE_LOOP primitive in immediate mode, graphics are noticeably improved. Added the performance meter used in PSPGL - it can be used for measuring performance and testing optimizations. Added TODO.PSP.
I've also found the location of the crash on 2.0 systems (in v1.3), thanks to jimparis. I don't have a fix for it yet. 2.0 users may still want to give v1.4 a shot as I couldn't find any 2.0 users to test before the release.
Keep the feedback coming. |
|
Back to top |
|
|
Nic
Joined: 22 Jul 2005 Posts: 8
|
Posted: Thu Dec 15, 2005 12:32 am Post subject: |
|
|
Sadly 1.4 still crashes on 2.0 using the EBOOT loader.
What line is causing the crash out of interest? If there's anything you'd like tried with the code or test binary i'm sure they'd be many people that would oblige (including myself).
-Nic |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Thu Dec 15, 2005 2:21 am Post subject: |
|
|
Nic wrote: | What line is causing the crash out of interest? If there's anything you'd like tried with the code or test binary i'm sure they'd be many people that would oblige (including myself). |
The crash occurs during the call to BulletMLParserTinyXML::build() made on line 44 of barragemanager.cc. It crashes when trying to parse the very first .xml file that rRootage wants to load. I thought it might be related to (lack of) memory, but according to http://forums.ps2dev.org/viewtopic.php?p=28096#28096 rRootage should have at least 16MB available to it through malloc(), and on my 1.0 rRootage only takes up 2.1MB before it's ready to enter its main loop. So I'll have to dig into libBulletML's STL nightmare to try to figure out what's happening.
Of course part of the problem in fixing it is that there's no exception handlers on 2.0, so I can't get the precise line number of where the code crashes, or know what type of exception is caused :/. jimparis helped isolate the bug when I kept feeding him binaries with tons of printf() debugging :).
Since that's the only way to go right now, and since you've volunteered :), here's a EBOOT.PBP for 2.0 that has tons of debug logging enabled. The log is written to ms0:/log.txt. If you (or any 2.0 user reading this thread) can post this file somewhere I'd appreciate it. |
|
Back to top |
|
|
dem1980
Joined: 22 Jan 2004 Posts: 4
|
Posted: Thu Dec 15, 2005 3:20 am Post subject: |
|
|
hi mrbrown
thank you very much for your work ;-)
i have a psp 2.0 with eboot loader
i have 0.7, 0.8 and 0.85
i have tested your eboot.pbp but i have a black screen again
here is the log :
Code: | build (66): enter
init (27): |
|
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Thu Dec 15, 2005 3:41 am Post subject: |
|
|
dem1980 wrote: | build (66): enter
init (27): |
Thanks for testing. The log looks a bit strange - did you allow rRootage to completely crash or wait for the memory stick LED to stop flashing for at least a minute or two before grabbing the log? If not, could you please run it again and post the log? Thanks.
And I can still use logs from other 2.0 users as well :). |
|
Back to top |
|
|
Nic
Joined: 22 Jul 2005 Posts: 8
|
Posted: Thu Dec 15, 2005 5:09 am Post subject: |
|
|
@MrBrown: I got exactly the same log as dem1980. I let the PSP run till it turned itself off after the crash.
Might try debugging this myself. Could be fun :)
Anything else you want trying let me know,
-Nic |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Thu Dec 15, 2005 6:10 am Post subject: |
|
|
There's no way it should be crashing within the logging function, because calls to the logging function use atomic writes to log.txt - the file is closed at the end of each call. This suggests that the bigger problem could be coming from the EBOOT loader. It's already been shown that the EBOOT loader leaves the VSH and threads from previously run homebrew in an unknown state - I wonder if there's a timing issue involved from some other thread?
There's a new EBOOT at http://psp.jim.sh/mrbrown/rRootage-EBOOT.zip. This time it will delay 2.5 seconds before attempting to load each XML file. If it crashes within this time and there's nothing logged, then it's something external to rRootage that's causing it to crash. |
|
Back to top |
|
|
Nic
Joined: 22 Jul 2005 Posts: 8
|
Posted: Thu Dec 15, 2005 6:18 am Post subject: |
|
|
@MrBrown: Think i'm getting a caching issue or something because the eboot in the zip i'm downloading is the same as the last one. I'll try getting it through a proxy, but if you could give it a different name easily, that would help.
Just got rRootage compiling. Very nice and straightforward :)
-Nic
EDIT:
Even through a proxy I get the same .zip. Timed at 10/13/2005 10:21 |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
|
Back to top |
|
|
Nic
Joined: 22 Jul 2005 Posts: 8
|
Posted: Thu Dec 15, 2005 6:34 am Post subject: |
|
|
Just tried the new zip. Still exactly the same log as posted before.
Guess it may be a problem that needs correcting in eboot loader (if possible) :(
Sorry I don't have better news,
-Nic |
|
Back to top |
|
|
dem1980
Joined: 22 Jan 2004 Posts: 4
|
Posted: Thu Dec 15, 2005 7:13 am Post subject: |
|
|
i have tested the new file too
and i have the same log :
Code: | build (66): enter
init (27): |
i run the game from eboot loader, then it says :
"module attribs 00001000 suggest a kernerl-mode app"
"press x to continue"
i press x and then the memory stick flashes 2-3 times and i have a black screen for 10 seconds then the psp light off
i tunr on the psp and go into the memory stick and i have this log file |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Thu Dec 15, 2005 7:32 am Post subject: |
|
|
Yeah, it's a bit disappointing that there's no precise way to pin this down. About the kernel flags, all apps linked against libSDL_main.a will show up as kernel apps, but they don't use anything that the EBOOT loader doesn't already patch out. Other people have tested SDL-based apps using OpenGL and they've worked fine. |
|
Back to top |
|
|
Nic
Joined: 22 Jul 2005 Posts: 8
|
Posted: Thu Dec 15, 2005 7:41 am Post subject: |
|
|
MrBrown:
Yes very weird, I've put my own debug logging in to have a look.
in "readBulletMLFiles"
the line "new BulletMLParserTinyXML(fileName)" does return a pointer. It just crashes when trying to assign it ?
So if you do:-
ptr = new BulletMLParserTinyXML(fileName);
logging continues, it's only when you assign it to barragePattern does it crash. I've tried accessing barragePattern by name rather than by "brg[]". Makes no difference (not surprisingly). I've tried creating barragePattern on the heap rather than the stack (Makes no difference, again not surprisingly).
V. Strange...
-Nic
EDIT:
Ok, don't think it's the assignment. Think my debug log wasn't being flushed completely. Looks like it fails in build(). Which makes more sense.
EDIT2:
Ok, This time I think it's in IDPOOL::Init in bulletml
Specifically:
map_.insert(std::make_pair(BulletMLNode::bullet, KeyToID()));
What a fun bit of STL that is :(
Think i'll leave it for tonight |
|
Back to top |
|
|
mrbrown
Joined: 17 Jan 2004 Posts: 1536
|
Posted: Thu Dec 15, 2005 8:40 am Post subject: |
|
|
The patch I used to do debug logging in libBulletML is here (it applies in the src/ directory). It just uses PSPGL's __pspgl_log() function. You can see I had a call in IDPOOL::Init(), that should just print "enter\n".
HOLY CRAP!!!!!
I know why it's not working now. The EBOOT loader patches out the call to _init(), which is responsible for calling C++ global constructors. The std::map IDPool::map_ is never initialized, which is why map_.insert() crashes the machine.
Now the tricky thing is, SDL has a .init contructor function that sets up exception handling and does other things that would immediately break the app on 2.0. If I had a way to detect if the EBOOT loader was running, then I could fixup SDL to skip over the kernel calls and call _init() manually to initialize any other static classes.
BTW, if you comment out the call to build() in the barrage manager the game will happily load, except that the bosses become ... passive :P. |
|
Back to top |
|
|
Nic
Joined: 22 Jul 2005 Posts: 8
|
Posted: Thu Dec 15, 2005 9:24 am Post subject: |
|
|
:) Glad you've figured out what needs doing.
You're right it loads up fine if build() is removed.
Hope you'll be able to release a 2.0 version for us. Or I can keep hacking away at it. But it's nearly midnight so i'm off to bed.
Thanks for this great port. Very much looking forward to playing it in its entirety on v2.0. :)
-Nic |
|
Back to top |
|
|
ector
Joined: 12 May 2005 Posts: 195
|
Posted: Thu Dec 15, 2005 10:38 am Post subject: |
|
|
mrbrown wrote: | If I had a way to detect if the EBOOT loader was running, then I could fixup SDL to skip over the kernel calls and call _init() manually to initialize any other static classes. |
Wouldn't it be better to politely ask Fanjita if he could add a fix to the loader? :) _________________ http://www.dtek.chalmers.se/~tronic/PSPTexTool.zip Free texture converter for PSP with source. More to come. |
|
Back to top |
|
|
|