senquack
I feel a great disturbance in the source
rRootage for GP2X v1.0
February 18 2010
Rootage is a open-source "bullet hell" abstact style shoot-'em-up
written by Kenta Cho from Japan. Very fun and addictive!
Archive download link:
http://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,30,2828
Please note: GP2X version does not have all the graphical effects shown here,
this is the PC version shown. It is difficult to take an actual screenshot
of the game because of the way the 3D library works.
[cut]
Ported by Senor Quack (dan silsby)
(dansilsby <at> gmail (dot) com)
Important credit goes to:
* rixed - gpu940, a brillaint fixed-point ASM-optimized
3D graphics library with OpenGL glue that transfers
all rendering to the second CPU core
* GameGod - Initial work on GP2X port
GP2X Control Mapping:
Y, B, R_Trigger: Laser
X, A, L_Trigger: Special
Start: Pause
Select: Exit to menu (new feature I added)
Vol+/-: Change volume
DPAD: Move
Notes:
* For me, it is 100% stable and reasonably fullspeed
at 220mhz. It is recommended you overclock rRootage
to 220mhz, if possible, using GMenu2X settings for
your rRootage link. It is also *highly* advisable
to turn on the Fast RAM Timings option. I can
frequently get 20-60fps throughout levels
and even the higher levels remain playable, too.
Sometimes when insane number of bullets appear the
FPS can dip into the teens so overclocking more is
always desirable.
Running without music or sound should have no effect
on your FPS, by the way. The bottleneck is all the
3D rendering occuring on the second core.
If you aren't already using GMenu2X on your GP2X,
you should be. rRootage does not touch your RAM
timings or overclock your CPU, because GMenu2X can
do this already and is the overall best, most flexible
solution for everybody. Or, just install the Open2X
firmware that already comes with it included.
Many will find that rRootage cannot overclock as high
as other programs can because of the higher current
draw imposed by the use of the second core. My unit,
even running Picodrive which runs sound on the second
core, was always able to overclock to 250mhz running
off batteries. However, running rRootage which does
all 3D rendering on the second core, I can only
go to 220mhz reliably. Plugging the unit into a wall
adapter allows for somewhat higher overlcocks.
If you are interested, the full-featured replacement
firmware, Open2X DR7, I helped develop has the awesome
GMenu2X shell built into the NAND, preinstalled
and with new added features for your GP2X:
http://www.gp32x.de/board/index.php?/topic/47311-open2x-dr7-for-f100-and-f200/
* I have added a command line option to those already
present: -laser
If you use it, the laser will always fire *unless*
you are pressing down the assigned laser button.
Someone requested it for noiz2sa and I thought it
was a good idea for this, too. If you want to
apply this feature, delete the rRootage.gpe launch
script that is already present and rename
the file _rRootage.gpe-laser to be rRootage.gpe
instead.
* rRootage will hang if loaded a second time, upon having
quit and restarted the program. I was not able to
resolve this. So, run rRootage only once and then
restart your GP2X if you quit and play something
else and want to go back. Sorry
It should be noted that if you are running the Open2X
firmware you can use the software reset feature I
added to quickly reset back to GMenu2X if this occurs
and simply run rRootage a third time and it will work.
(Press L+R+VOLUP+VOLDOWN+A+B+X+Y to quickly get back
to the GMenu2X shell if any program hangs on you)
* For both speed and stability reasons, almost all line
rendering and texture effects have been disabled. So,
for example, the scrolling background is gone, the
alpha-blended starbursts present in the PC version are
missing, bullet outlines, etc. The GP2X is rendering
everthing on a very limited integer-only ARM CPU that
can barely keep up with everything being thrown at it
already. I have also sped up things by significantly
reducing the number of polygons in the laser beam, and
changing the appearance of it in the process. I find
it is a nice compromise and helps free up several
FPS.
The gpu940 3D library's line rendering also contains a
bug whose presence is fortunately gone for
good in my port thanks to many lost evenings filled
full of bug hunting and experimentation. Further work
might be done to allow optional display of some of the
missing effects. The small number of lines drawn in
my port compared to the PC version allows this bug to
remain hidden for now.
[/cut]
February 18 2010
Rootage is a open-source "bullet hell" abstact style shoot-'em-up
written by Kenta Cho from Japan. Very fun and addictive!
Archive download link:
http://dl.openhandhelds.org/cgi-bin/gp2x.cgi?0,0,0,0,30,2828
Please note: GP2X version does not have all the graphical effects shown here,
this is the PC version shown. It is difficult to take an actual screenshot
of the game because of the way the 3D library works.
[cut]
Ported by Senor Quack (dan silsby)
(dansilsby <at> gmail (dot) com)
Important credit goes to:
* rixed - gpu940, a brillaint fixed-point ASM-optimized
3D graphics library with OpenGL glue that transfers
all rendering to the second CPU core
* GameGod - Initial work on GP2X port
GP2X Control Mapping:
Y, B, R_Trigger: Laser
X, A, L_Trigger: Special
Start: Pause
Select: Exit to menu (new feature I added)
Vol+/-: Change volume
DPAD: Move
Notes:
* For me, it is 100% stable and reasonably fullspeed
at 220mhz. It is recommended you overclock rRootage
to 220mhz, if possible, using GMenu2X settings for
your rRootage link. It is also *highly* advisable
to turn on the Fast RAM Timings option. I can
frequently get 20-60fps throughout levels
and even the higher levels remain playable, too.
Sometimes when insane number of bullets appear the
FPS can dip into the teens so overclocking more is
always desirable.
Running without music or sound should have no effect
on your FPS, by the way. The bottleneck is all the
3D rendering occuring on the second core.
If you aren't already using GMenu2X on your GP2X,
you should be. rRootage does not touch your RAM
timings or overclock your CPU, because GMenu2X can
do this already and is the overall best, most flexible
solution for everybody. Or, just install the Open2X
firmware that already comes with it included.
Many will find that rRootage cannot overclock as high
as other programs can because of the higher current
draw imposed by the use of the second core. My unit,
even running Picodrive which runs sound on the second
core, was always able to overclock to 250mhz running
off batteries. However, running rRootage which does
all 3D rendering on the second core, I can only
go to 220mhz reliably. Plugging the unit into a wall
adapter allows for somewhat higher overlcocks.
If you are interested, the full-featured replacement
firmware, Open2X DR7, I helped develop has the awesome
GMenu2X shell built into the NAND, preinstalled
and with new added features for your GP2X:
http://www.gp32x.de/board/index.php?/topic/47311-open2x-dr7-for-f100-and-f200/
* I have added a command line option to those already
present: -laser
If you use it, the laser will always fire *unless*
you are pressing down the assigned laser button.
Someone requested it for noiz2sa and I thought it
was a good idea for this, too. If you want to
apply this feature, delete the rRootage.gpe launch
script that is already present and rename
the file _rRootage.gpe-laser to be rRootage.gpe
instead.
* rRootage will hang if loaded a second time, upon having
quit and restarted the program. I was not able to
resolve this. So, run rRootage only once and then
restart your GP2X if you quit and play something
else and want to go back. Sorry
It should be noted that if you are running the Open2X
firmware you can use the software reset feature I
added to quickly reset back to GMenu2X if this occurs
and simply run rRootage a third time and it will work.
(Press L+R+VOLUP+VOLDOWN+A+B+X+Y to quickly get back
to the GMenu2X shell if any program hangs on you)
* For both speed and stability reasons, almost all line
rendering and texture effects have been disabled. So,
for example, the scrolling background is gone, the
alpha-blended starbursts present in the PC version are
missing, bullet outlines, etc. The GP2X is rendering
everthing on a very limited integer-only ARM CPU that
can barely keep up with everything being thrown at it
already. I have also sped up things by significantly
reducing the number of polygons in the laser beam, and
changing the appearance of it in the process. I find
it is a nice compromise and helps free up several
FPS.
The gpu940 3D library's line rendering also contains a
bug whose presence is fortunately gone for
good in my port thanks to many lost evenings filled
full of bug hunting and experimentation. Further work
might be done to allow optional display of some of the
missing effects. The small number of lines drawn in
my port compared to the PC version allows this bug to
remain hidden for now.
[/cut]
Last edited by a moderator: