Release Benri and the Bandits


elvissteinjr

Very Active Member
Joined
Jun 19, 2010
Messages
780
Age
28
Location
Germany
I've released a little game for the Pandora.

It's a short action adventure kind of game which was created for a contest in a German RPG Maker community. While it does borrow some graphics and the art style from those kind of games, it is running on a custom engine.

It has a comedic touch, but doesn't do anything groundbreaking, I'll admit. Perhaps it can still entertain you for a bit.
Overall it's also some sort of testbed for me for deploying to all the platforms.

You can get it on the repo
More game details can be found on this page

Enjoy.
 
Congrats on your release! Will play.

ziDl.png


To whom does "Her Majesty" refer?
 
Last edited:
I feel bad for being pedantic here, but there's a small typo in @klapse 's screenshot "Desspite"

Also, pretty off-topic, 'benri' means 'convenient' in Japanese (which you probably knew). There was no reason for me to say that.

Looks interesting :)
 
Hi again, sorry to report I couldn´t get it started...looks like a library is missing.
#./Benri: error while loading shared libraries: libpulse.so.0: cannot open shared object file: No such file or directory
I do have the latest firmware 1.76 though, as you advise on http://www.elvissteinjr.net/?site=benri
Will run OS Update when after work and see again :)

=======================================================================================
PND : /media/PANDORA/pandora/menu/Benri_1_1_OpenPandora.pnd
PND_FSTYPE : Squashfs
APPDATADIR : /media/PANDORA/pandora/appdata/Benri
APPDD_FSTYPE : vfat
PND_CPUSPEED : <unset>
EXENAME : benri.sh
ARGUMENTS : <unset>
=======================================================================================
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop4" "/mnt/utmp/Benri"
Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/PANDORA/pandora/appdata/Benri=rw+nolwh":"/mnt/pnd/Benri=rr" none "/mnt/utmp/Benri"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( benri.sh ) ----------
./Benri: error while loading shared libraries: libpulse.so.0: cannot open shared object file: No such file or directory
[ FAILED]--- Starting the application ( benri.sh ) ----------
[ START ]--- Restoring the frame buffer status ----------
[SUCCESS]--- Restoring the frame buffer status ----------
[ START ]--- uMount the PND ----------
[ START ]--- Waiting the Union to be available ----------
[SUCCESS]--- Waiting the Union to be available ----------
rmdir: failed to remove `/mnt/utmp/Benri': Device or resource busy
[ START ]--- Waiting the PND mount dir to be free ----------
[SUCCESS]--- Waiting the PND mount dir to be free ----------
cleanup done
[SUCCESS]--- uMount the PND ----------
=======================================================================================
Return code is : 4
 
Multilanguage, nice! Haven't played far in, the text is very hard to read. Is there a way to go fullscreen?
 
Huh, doesn't open for me. I have the latest firmware but it is a no go. I get some red activity light flashing for a few seconds and then nothing.
 
Looks like my attempts at cutting down the PND size backfired, I suppose. I've reuploaded the PND with libpulse included, but I wouldn't be able to tell you how it ended up in on my NAND... could've been the codec pack thinking about it, but it's not my intention to require that of course. Hope there's not more missing.
I did use the Code::Blocks PND and its copy_libs.sh script, but it pulled a few things which seemingly weren't required, so I did not include those.

the text is very hard to read. Is there a way to go fullscreen?
Technically, yes. This is somewhat problematic on the Pandora though. The game's resolution was designed with the intent of fitting nicely to modern HD resolution. On other platforms, there is a graphics settings menu where you can adjust the scaling.
The Pandora's resolution can't fit 2x of the game, so the only option is nasty in-between. Doing this is supported, but requires a render-to-texture step which is awfully slow (I'm using framebuffer blit and FBOs where supported, so not sure if this can be made faster). It's also far from visually pleasing to the pixel art. This is why the menu is removed in this version.
I did say yes though, so to enable this anyways you can manually edit the config.ini file in "appdata/Benri", set PerfectScaling to 1 and Scale to -1. My CC Pandora maxes out at 15 fps with this though, so not really playable. Might be alright on 1 GHz models.


Regarding website typos: Fixed. I had a native speaker look and play through the game itself, so obvious mistakes should not be in there, but I had no one else look over the website text.
 
Hi all :)

@elvissteinjr : thanks for porting this game to the Pandora ! Unfortunately it crashes with the following error message:
SDL: Forcing GLES2 driver
Couldn't create window:
Textures freed

Here's the full output:
=============================================================================
==========
PND : /media/Pandora2/pandora/menu/com.elv.benri.pnd
PND_FSTYPE : Squashfs
APPDATADIR : /media/Pandora2/pandora/appdata/Benri
APPDD_FSTYPE : ext2
PND_CPUSPEED : <unset>
EXENAME : benri.sh
ARGUMENTS : <unset>
=============================================================================
==========
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/Benri"
Mounting the Union FS : mount -t aufs -o exec,dirs="/media/Pandora2/pandora/a
ppdata/Benri=rw+nolwh":"/mnt/pnd/Benri=rr" none "/mnt/utmp/Benri"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( benri.sh ) ----------
Benri and the Bandits version 1.0.1767.9820 Release, Build 1882.
Built on Feb 19 2019, 17:53:14
Running with Pipe 1.0.1
Started on Sun Feb 24 15:03:11 2019

SDL init successful

Loading archive "data.pra"...
There was an error trying to access the file.
Loading archive "gfx.pra"...
There was an error trying to access the file.
Loading archive "audio.pra"...
There was an error trying to access the file.
Attempting to load PDB "backgrounds.pdb"...
Read File Header
File Header is valid. Version of the file is 3
Attempting to load PDB "sprites.pdb"...
Read File Header
File Header is valid. Version of the file is 3
Attempting to load PDB "locations.pdb"...
Read File Header
File Header is valid. Version of the file is 1
Attempting to load translation "input_names_en.ini"...
Attempting to load translation "twc_strings_main_en.ini"...
Attempting to load translation "twc_strings_dialogs_en.ini"...
Attempting to load translation "twc_strings_comments_en.ini"...
Attempting to load translation "input_names_pandora.ini"...
SDL: Forcing GLES2 driver
Couldn't create window:
Textures freed
[ FAILED]--- Starting the application ( benri.sh ) ----------
[ START ]--- Restoring the frame buffer status ----------
[SUCCESS]--- Restoring the frame buffer status ----------
[ START ]--- Restoring nub mode ----------
[SUCCESS]--- Restoring nub mode ----------
[ START ]--- uMount the PND ----------
[ START ]--- Waiting the Union to be available ----------
[SUCCESS]--- Waiting the Union to be available ----------
rmdir: failed to remove `/mnt/utmp/Benri': Device or resource busy
[ START ]--- Waiting the PND mount dir to be free ----------
[SUCCESS]--- Waiting the PND mount dir to be free ----------
cleanup done
[SUCCESS]--- uMount the PND ----------
=============================================================================
==========
Return code is : 5

Cheers, Magic Sam
 
Hm... what Pandora model and SGX driver version is this on? Other stuff using OpenGLES is working on your device, I assume?
This obviously shouldn't be happening, but SDL doesn't really deliver any specific error when the 3D driver refuses to do its thing here.

The only thing that comes to mind right away is disabling the powervr.ini tweaks I did. Beyond the typical VSync thing, it's not the best documented stuff in there, but it worked fine on what I had to test. So creating an empty file called powervr.ini in "appdata/Benri" would do for that.


Perhaps I should've let this release go through some beta testing in the community here first. I've had the basic engine behind this run on different Pandoras (and Pyra prototypes) with a different game (wip) without any issues before. Put too much trust in this working everywhere I guess.
 
@elvissteinjr : I tried your game on a Rebirth unit, SGX driver 4.10, latest SuperZaxxon. OpenGLES applications are working correctly.

I'll give your empty powervr.ini trick a try and report here ASAP :)

EDIT: it worked ! Thanks !

Cheers, Magic Sam
[doublepost=1551034125,1551032408][/doublepost]Hi again,

@elvissteinjr : the game crashes a little further down the road, after the king orders his soldiers to stay on post:
=============================================================================
==========
PND : /media/Pandora2/pandora/menu/com.elv.benri.pnd
PND_FSTYPE : Squashfs
APPDATADIR : /media/Pandora2/pandora/appdata/Benri
APPDD_FSTYPE : ext2
PND_CPUSPEED : <unset>
EXENAME : benri.sh
ARGUMENTS : <unset>
=============================================================================
==========
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/Benri"
Mounting the Union FS : mount -t aufs -o exec,dirs="/media/Pandora2/pandora/a
ppdata/Benri=rw+nolwh":"/mnt/pnd/Benri=rr" none "/mnt/utmp/Benri"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( benri.sh ) ----------
Benri and the Bandits version 1.0.1767.9820 Release, Build 1882.
Built on Feb 19 2019, 17:53:14
Running with Pipe 1.0.1
Started on Sun Feb 24 19:36:57 2019

SDL init successful

Loading archive "data.pra"...
There was an error trying to access the file.
Loading archive "gfx.pra"...
There was an error trying to access the file.
Loading archive "audio.pra"...
There was an error trying to access the file.
INFO: Loading OpenGLES extensions...
Attempting to load PDB "backgrounds.pdb"...
Read File Header
File Header is valid. Version of the file is 3
Attempting to load PDB "sprites.pdb"...
Read File Header
File Header is valid. Version of the file is 3
Attempting to load PDB "locations.pdb"...
Read File Header
File Header is valid. Version of the file is 1
Attempting to load translation "input_names_en.ini"...
Attempting to load translation "twc_strings_main_en.ini"...
Attempting to load translation "twc_strings_dialogs_en.ini"...
Attempting to load translation "twc_strings_comments_en.ini"...
Attempting to load translation "input_names_pandora.ini"...
SDL: Forcing GLES2 driver
Texture 'embedded_white' loaded successfully
Bit depth wanted: 16
Bit Depth recieved: 16
RGBA Size: 5 6 5 0
OpenGL init successful

=== System Information ===
Platform: OpenPandora
Logical CPU cores: 1
Supported extensions:
Total RAM: 501 MB
GPU: PowerVR SGX 530
GPU Vendor: Imagination Technologies
OpenGL Implementation Version: OpenGL ES-CM 1.1
Texture 'gfx/font.png' loaded successfully
Attempting to load room "startup.prm"...
Read File Header
File Header is valid. Version of the file is 2
Texture 'gfx/ui.png' loaded successfully
Read Object Instance (ID: 1 X: 0 Y: 0 OID: 14 CustomInt: 0 Name: obj_startup)
Texture 'gfx/back_rope.png' loaded successfully
Attempting to load room "rooms/title.prm"...
Read File Header
File Header is valid. Version of the file is 2
Texture 'gfx/back_title.png' loaded successfully
Texture 'gfx/tileset_outside.png' loaded successfully
Read Object Instance (ID: 1 X: 48 Y: 48 OID: 13 CustomInt: 0 Name: obj_title)
Failed to load texture from file "editor/config/gfx/music.png"
(File doesn't exist)
Texture 'editor/config/gfx/music.png' loaded successfully
Read Object Instance (ID: 2 X: 0 Y: 16 OID: 25 CustomInt: 0 Name: obj_music)
Texture 'gfx/objects.png' loaded successfully
Read Object Instance (ID: 3 X: 274 Y: 53 OID: 28 CustomInt: 60 Name: obj_stat
ic_object)
Texture 'gfx/back_fog.png' loaded successfully
Read Object Instance (ID: 4 X: 0 Y: 336 OID: 42 CustomInt: 1 Name: obj_fog_re
nderer)
Attempting to load room "rooms/castle/break_room.prm"...
Read File Header
File Header is valid. Version of the file is 2
glDeleteBuffersVBO(1, 0x159e44);
Texture 'gfx/tileset_castle.png' loaded successfully
Read Object Instance (ID: 1 X: 0 Y: 16 OID: 25 CustomInt: 4 Name: obj_music)
Read Object Instance (ID: 2 X: 0 Y: 0 OID: 26 CustomInt: 0 Name: obj_intro)
Read Object Instance (ID: 3 X: 336 Y: 256 OID: 9 CustomInt: 1 Name: obj_door)
Texture 'gfx/char_castle.png' loaded successfully
Read Object Instance (ID: 4 X: 284 Y: 129 OID: 27 CustomInt: 0 Name: obj_simp
le_character)
Read Object Instance (ID: 5 X: 317 Y: 154 OID: 27 CustomInt: 1 Name: obj_simp
le_character)
Read Object Instance (ID: 6 X: 268 Y: 170 OID: 27 CustomInt: 2 Name: obj_simp
le_character)
Texture 'gfx/player.png' loaded successfully
Read Object Instance (ID: 7 X: 335 Y: 200 OID: 3 CustomInt: 1 Name: obj_playe
r)
Read Object Instance (ID: 8 X: 176 Y: 128 OID: 28 CustomInt: 32 Name: obj_sta
tic_object)
Read Object Instance (ID: 9 X: 224 Y: 128 OID: 28 CustomInt: 32 Name: obj_sta
tic_object)
Read Object Instance (ID: 10 X: 416 Y: 128 OID: 28 CustomInt: 32 Name: obj_st
atic_object)
Read Object Instance (ID: 11 X: 464 Y: 128 OID: 28 CustomInt: 32 Name: obj_st
atic_object)
Read Object Instance (ID: 12 X: 336 Y: 280 OID: 10 CustomInt: 4 Name: obj_tel
eport)
Read Object Instance (ID: 13 X: 160 Y: 160 OID: 28 CustomInt: 41 Name: obj_st
atic_object)
Read Object Instance (ID: 14 X: 272 Y: 144 OID: 28 CustomInt: 40 Name: obj_st
atic_object)
Read Object Instance (ID: 15 X: 0 Y: 32 OID: 30 CustomInt: 0 Name: obj_tilese
t_splitter)
Read Object Instance (ID: 16 X: 304 Y: 144 OID: 28 CustomInt: 62 Name: obj_st
atic_object)
Read Object Instance (ID: 17 X: 368 Y: 144 OID: 11 CustomInt: 18 Name: obj_co
mment)
Read Object Instance (ID: 18 X: 384 Y: 144 OID: 11 CustomInt: 18 Name: obj_co
mment)
Read Object Instance (ID: 19 X: 400 Y: 144 OID: 11 CustomInt: 18 Name: obj_co
mment)
Read Object Instance (ID: 20 X: 432 Y: 128 OID: 11 CustomInt: 19 Name: o*** g
libc detected *** ./Benri: double free or corruption (!prev): 0x002bf3f0 ***
bj_comment)
Read Object Instance (ID: 21 X: 448 Y: 128 OID: 11 CustomInt: 19 Name: obj_co
mment)
Read Object Instance (ID: 22 X: 192 Y: 128 OID: 11 CustomInt: 19 Name: obj_co
mment)
Read Object Instance (ID: 23 X: 208 Y: 128 OID: 11 CustomInt: 19 Name: obj_co
mment)
glDeleteBuffers(1, 0x15b84c);
glDeleteBuffersVBO(1, 0x15b834);
glDeleteBuffers(1, 0x15b754);
glDeleteBuffersVBO(1, 0x15b73c);
Attempting to load room "rooms/castle/throne_room.prm"...
Read File Header
File Header is valid. Version of the file is 2
glDeleteBuffersVBO(1, 0x159f8c);
glDeleteBuffersVBO(1, 0x1b37e4);
glDeleteBuffersVBO(1, 0x156254);
glDeleteBuffersVBO(1, 0x2bd9ec);
glDeleteBuffersVBO(1, 0x2b9ff4);
Read Object Instance (ID: 1 X: 176 Y: 96 OID: 28 CustomInt: 32 Name: obj_stat
ic_object)
Read Object Instance (ID: 2 X: 224 Y: 96 OID: 28 CustomInt: 32 Name: obj_stat
ic_object)
Read Object Instance (ID: 3 X: 416 Y: 96 OID: 28 CustomInt: 32 Name: obj_stat
ic_object)
Read Object Instance (ID: 4 X: 464 Y: 96 OID: 28 CustomInt: 32 Name: obj_stat
ic_object)
Read Object Instance (ID: 5 X: 288 Y: 176 OID: 28 CustomInt: 33 Name: obj_sta
tic_object)
Read Object Instance (ID: 6 X: 352 Y: 176 OID: 28 CustomInt: 33 Name: obj_sta
tic_object)
Read Object Instance (ID: 7 X: 272 Y: 96 OID: 28 CustomInt: 34 Name: obj_stat
ic_object)
Read Object Instance (ID: 8 X: 352 Y: 96 OID: 28 CustomInt: 34 Name: obj_stat
ic_object)
Read Object Instance (ID: 9 X: 316 Y: 65 OID: 27 CustomInt: 3 Name: obj_simpl
e_character)
Read Object Instance (ID: 10 X: 284 Y: 209 OID: 27 CustomInt: 4 Name: obj_sim
ple_character)
Read Object Instance (ID: 11 X: 348 Y: 209 OID: 27 CustomInt: 5 Name: obj_sim
ple_character)
Read Object Instance (ID: 12 X: 316 Y: 353 OID: 27 CustomInt: 0 Name: obj_sim
ple_character)
Read Object Instance (ID: 13 X: 0 Y: 0 OID: 26 CustomInt: 1 Name: obj_intro)
Read Object Instance (ID: 14 X: 316 Y: 369 OID: 27 CustomInt: 5 Name: obj_sim
ple_character)
Read Object Instance (ID: 15 X: 333 Y: 10 OID: 29 CustomInt: 0 Name: obj_char
acter_spin_jump)
Read Object Instance (ID: 16 X: 319 Y: 232 OID: 3 CustomInt: 1 Name: obj_play
er)
Read Object Instance (ID: 17 X: 0 Y: 16 OID: 25 CustomInt: 4 Name: obj_music)
Read Object Instance (ID: 18 X: 320 Y: 360 OID: 10 CustomInt: 5 Name: obj_tel
eport)
Read Object Instance (ID: 19 X: 272 Y: 112 OID: 11 CustomInt: 4 Name: obj_com
ment)
Read Object Instance (ID: 20 X: 352 Y: 112 OID: 11 CustomInt: 5 Name: obj_com
ment)
Read Object Instance (ID: 21 X: 240 Y: 96 OID: 11 CustomInt: 6 Name: obj_comm
ent)
Read Object Instance (ID: 22 X: 256 Y: 96 OID: 11 CustomInt: 6 Name: obj_comm
ent)
Read Object Instance (ID: 23 X: 384 Y: 96 OID: 11 CustomInt: 6 Name: obj_comm
ent)
Read Object Instance (ID: 24 X: 400 Y: 96 OID: 11 CustomInt: 6 Name: obj_comm
ent)
Read Object Instance (ID: 25 X: 0 Y: 32 OID: 30 CustomInt: 0 Name: obj_tilese
t_splitter)
Read Object Instance (ID: 26 X: 432 Y: 96 OID: 11 CustomInt: 20 Name: obj_com
ment)
Read Object Instance (ID: 27 X: 448 Y: 96 OID: 11 CustomInt: 20 Name: obj_com
ment)
Read Object Instance (ID: 28 X: 192 Y: 96 OID: 11 CustomInt: 20 Name: obj_com
ment)
Read Object Instance (ID: 29 X: 208 Y: 96 OID: 11 CustomInt: 20 Name: obj_com
ment)
/usr/pandora/scripts/pnd_run.sh: line 528: 4526 Aborted "./$
EXENAME" $ARGUMENTS "$@"
[ FAILED]--- Starting the application ( benri.sh ) ----------
[ START ]--- Restoring the frame buffer status ----------
[SUCCESS]--- Restoring the frame buffer status ----------
[ START ]--- Restoring nub mode ----------
[SUCCESS]--- Restoring nub mode ----------
[ START ]--- uMount the PND ----------
[ START ]--- Waiting the Union to be available ----------
[SUCCESS]--- Waiting the Union to be available ----------
rmdir: failed to remove `/mnt/utmp/Benri': Device or resource busy
[ START ]--- Waiting the PND mount dir to be free ----------
[SUCCESS]--- Waiting the PND mount dir to be free ----------
cleanup done
[SUCCESS]--- uMount the PND ----------
=============================================================================
==========
Return code is : 6

EDIT: @elvissteinjr : I'm obviously not a developer, but this part looks bad, doesn't it ?
Read Object Instance (ID: 20 X: 432 Y: 128 OID: 11 CustomInt: 19 Name: o*** g
libc detected *** ./Benri: double free or corruption (!prev): 0x002bf3f0 ***
bj_comment)

Cheers, Magic Sam
 
Last edited:
Something seems off here. The game shouldn't spam stdout that much in the release build. Not that it's sensitive info, but I thought I disabled that.
The double free detection is also during printing the game object name... which is odd. No free or delete is happening there, at least not by me (using std::string functions there, not much else).

But no SGX driver lockups or anything, right? I've had to deal that on my CC since the driver doesn't seem to like how I've handled my OpenGL buffers. I'll restrict those tweaks to CC models for now.
Here's a fresh recompile of the whole thing with the code more like it should be and model specific powervr.ini. Can't test if it fixes the crash unfortunately.

Sorry for the game exploding in your face. Stuff like this always happens when it works fine on the other 5 platforms I released for.
 
Hi @elvissteinjr :)

I'm sorry to report your new PND crashes in the exact same way (and at the exact same time) as before:
=============================================================================
==========
PND : /media/Pandora2/pandora/menu/Benri_Test_1884.pnd
PND_FSTYPE : Squashfs
APPDATADIR : /media/Pandora2/pandora/appdata/Benri
APPDD_FSTYPE : ext2
PND_CPUSPEED : <unset>
EXENAME : benri.sh
ARGUMENTS : <unset>
=============================================================================
==========
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/Benri"
Mounting the Union FS : mount -t aufs -o exec,dirs="/media/Pandora2/pandora/a
ppdata/Benri=rw+nolwh":"/mnt/pnd/Benri=rr" none "/mnt/utmp/Benri"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( benri.sh ) ----------
INFO: Loading OpenGLES extensions...
*** glibc detected *** ./Benri: double free or corruption (out): 0x45650b30 *
**
Benri and the Bandits version 1.0.1767.9820 Release, Build 1882.
Built on Feb 24 2019, 21:18:35
Running with Pipe 1.0.1
Started on Tue Feb 26 19:51:50 2019

SDL init successful

Loading archive "data.pra"...
There was an error trying to access the file.
Loading archive "gfx.pra"...
There was an error trying to access the file.
Loading archive "audio.pra"...
There was an error trying to access the file.
Attempting to load PDB "backgrounds.pdb"...
Read File Header
File Header is valid. Version of the file is 3
Attempting to load PDB "sprites.pdb"...
Read File Header
File Header is valid. Version of the file is 3
Attempting to load PDB "locations.pdb"...
Read File Header
File Header is valid. Version of the file is 1
Attempting to load translation "input_names_en.ini"...
Attempting to load translation "twc_strings_main_en.ini"...
Attempting to load translation "twc_strings_dialogs_en.ini"...
Attempting to load translation "twc_strings_comments_en.ini"...
Attempting to load translation "input_names_pandora.ini"...
SDL: Forcing GLES2 driver
Texture 'embedded_white' loaded successfully
OpenGL init successful

=== System Information ===
Platform: OpenPandora
Logical CPU cores: 1
Supported extensions:
Total RAM: 501 MB
GPU: PowerVR SGX 530
GPU Vendor: Imagination Technologies
OpenGL Implementation Version: OpenGL ES-CM 1.1
Texture 'gfx/font.png' loaded successfully
Attempting to load room "startup.prm"...
Read File Header
File Header is valid. Version of the file is 2
Texture 'gfx/ui.png' loaded successfully
Texture 'gfx/back_rope.png' loaded successfully
Attempting to load room "rooms/title.prm"...
Read File Header
File Header is valid. Version of the file is 2
Texture 'gfx/back_title.png' loaded successfully
Texture 'gfx/tileset_outside.png' loaded successfully
Failed to load texture from file "editor/config/gfx/music.png"
(File doesn't exist)
Texture 'editor/config/gfx/music.png' loaded successfully
Texture 'gfx/objects.png' loaded successfully
Texture 'gfx/back_fog.png' loaded successfully
Attempting to load room "rooms/castle/break_room.prm"...
Read File Header
File Header is valid. Version of the file is 2
Texture 'gfx/tileset_castle.png' loaded successfully
Texture 'gfx/char_castle.png' loaded successfully
Texture 'gfx/player.png' loaded successfully
Attempting to load room "rooms/castle/throne_room.prm"...
Read File Header
File Header is valid. Version of the file is 2
/usr/pandora/scripts/pnd_run.sh: line 528: 2696 Aborted "./$
EXENAME" $ARGUMENTS "$@"
[ FAILED]--- Starting the application ( benri.sh ) ----------
[ START ]--- Restoring the frame buffer status ----------
[SUCCESS]--- Restoring the frame buffer status ----------
[ START ]--- Restoring nub mode ----------
[SUCCESS]--- Restoring nub mode ----------
[ START ]--- uMount the PND ----------
[ START ]--- Waiting the Union to be available ----------
[SUCCESS]--- Waiting the Union to be available ----------
rmdir: failed to remove `/mnt/utmp/Benri': Device or resource busy
[ START ]--- Waiting the PND mount dir to be free ----------
[SUCCESS]--- Waiting the PND mount dir to be free ----------
cleanup done
[SUCCESS]--- uMount the PND ----------
=============================================================================
==========
Return code is : 6

That "double free or corruption" error appears earlier than before though.

I hope I'm not doing anything wrong on my end...

Cheers, Magic Sam
 
Didn´t start here either. Can provide pnd run out if needed. Sorry to not have better news at the moment. I appreciate it so much that new software for the Pandora in her 9th year out is still being published and ported and improved.
 
I hope I'm not doing anything wrong on my end...
You seem to be loading a save file from the throne room where the game crashes. You can't be sure that whatever's causing it to crash isn't contained within the save file, so in general to produce a reproducible error you need to go from the start of the game. Savefiles are useful for reproducing errors within the same release version only.

Edit: Maybe not. That message about loading the level is there in the old log as well, so I guess it might be spat out when you actually play through to that point.
 
Started with a clean slate as well now. Put a fresh OS onto an SD card and went from there.
There was another missing lib at first, but otherwise I played through the entire game just fine.
If there was a different version of that lib in the NAND while still having the same name (libpulsecommon-0.9.15), it could've probably been the cause of this.

If not, it'll remain odd to me. I'll probably try stuff like older compilers or stuffing the PND with pretty much all libs it's linked to, even when available in the stock image, if it still doesn't work.

*.prm files are the rooms themselves. The save game files end on good old .sav. The stuff saved in them doesn't go that much in the detail as to recreate such crashes I'd say (entity positions are only stored if critical for progressing for example).

Thanks for putting up with this so far. I've attached another test PND, though the only change is the additional lib, no recompile or anything.
 

Attachments

  • Benri_Test_1884_2.pnd
    27.8 MB · Views: 487
Hi all :)

@elvissteinjr : I'm sorry but your latest version crashes just the same.

Here's the output of ldd from @ptitSeb 's Code::Blocks:
/mnt/utmp/Benri_Test_1884_2$ ldd Benri
libSDL2-2.0.so.0 => /mnt/utmp/Benri_Test_1884_2/libSDL2-2.0.so.0 (0x40105000)
libSDL2_image-2.0.so.0 => /mnt/utmp/Benri_Test_1884_2/libSDL2_image-2.0.so.0 (0x401fc000)
libSDL2_mixer-2.0.so.0 => /mnt/utmp/Benri_Test_1884_2/libSDL2_mixer-2.0.so.0 (0x4006c000)
libGLES_CM.so => /mnt/utmp/codeblocks/usr/lib/libGLES_CM.so (0x40312000)
libEGL.so => /mnt/utmp/codeblocks/usr/lib/libEGL.so (0x40241000)
libX11.so.6 => /mnt/utmp/Benri_Test_1884_2/libX11.so.6 (0x4037b000)
libstdc++.so.6 => /mnt/utmp/Benri_Test_1884_2/libstdc++.so.6 (0x40485000)
libm.so.6 => /lib/libm.so.6 (0x4024b000)
libgcc_s.so.1 => /mnt/utmp/Benri_Test_1884_2/libgcc_s.so.1 (0x40029000)
libc.so.6 => /lib/libc.so.6 (0x405ca000)
libiconv.so.2 => /mnt/utmp/Benri_Test_1884_2/libiconv.so.2 (0x406f1000)
libdl.so.2 => /mnt/utmp/codeblocks/usr/lib/libdl.so.2 (0x40055000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x402be000)
libXinerama.so.1 => /mnt/utmp/codeblocks/usr/lib/libXinerama.so.1 (0x40060000)
libXrandr.so.2 => /mnt/utmp/codeblocks/usr/lib/libXrandr.so.2 (0x402ce000)
libXss.so.1 => /mnt/utmp/codeblocks/usr/lib/libXss.so.1 (0x402de000)
libXxf86vm.so.1 => /mnt/utmp/Benri_Test_1884_2/libXxf86vm.so.1 (0x402e8000)
libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x407eb000)
libpthread.so.0 => /lib/libpthread.so.0 (0x4081d000)
librt.so.1 => /mnt/utmp/codeblocks/usr/lib/librt.so.1 (0x402f5000)
libts-1.0.so.0 => /mnt/utmp/codeblocks/usr/lib/libts-1.0.so.0 (0x40304000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x4083c000)
libpng16.so.16 => /mnt/utmp/codeblocks/usr/lib/libpng16.so.16 (0x40852000)
libtiff.so.5 => /mnt/utmp/codeblocks/usr/lib/libtiff.so.5 (0x40897000)
liblzma.so.5 => /mnt/utmp/codeblocks/usr/lib/liblzma.so.5 (0x4091b000)
libjpeg.so.8 => /mnt/utmp/codeblocks/usr/lib/libjpeg.so.8 (0x40947000)
libz.so.1 => /mnt/utmp/codeblocks/usr/lib/libz.so.1 (0x409a5000)
libmikmod.so.2 => /mnt/utmp/codeblocks/usr/lib/libmikmod.so.2 (0x409be000)
libfluidsynth.so.1 => /mnt/utmp/codeblocks/usr/lib/libfluidsynth.so.1 (0x40a09000)
libreadline.so.5 => /usr/lib/libreadline.so.5 (0x40abf000)
libjack.so.0 => /mnt/utmp/codeblocks/usr/lib/libjack.so.0 (0x40af5000)
libpulse-simple.so.0 => /mnt/utmp/codeblocks/usr/lib/libpulse-simple.so.0 (0x40b44000)
libpulse.so.0 => /mnt/utmp/codeblocks/usr/lib/libpulse.so.0 (0x40b4f000)
libportaudio.so.2 => /mnt/utmp/codeblocks/usr/lib/libportaudio.so.2 (0x40b8c000)
libasound.so.2 => /mnt/utmp/codeblocks/usr/lib/libasound.so.2 (0x40bb8000)
libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x40c82000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x40c8b000)
libsndfile.so.1 => /mnt/utmp/codeblocks/usr/lib/libsndfile.so.1 (0x40da8000)
libvorbisenc.so.2 => /mnt/utmp/codeblocks/usr/lib/libvorbisenc.so.2 (0x40e2c000)
libvorbisidec.so.1 => /mnt/utmp/codeblocks/usr/lib/libvorbisidec.so.1 (0x40ebf000)
libvorbis.so.0 => /mnt/utmp/codeblocks/usr/lib/libvorbis.so.0 (0x40ee9000)
libFLAC.so.8 => /mnt/utmp/codeblocks/usr/lib/libFLAC.so.8 (0x40f29000)
libogg.so.0 => /mnt/utmp/codeblocks/usr/lib/libogg.so.0 (0x40f7b000)
libmpg123.so.0 => /mnt/utmp/codeblocks/usr/lib/libmpg123.so.0 (0x40f90000)
libsrv_um.so => /usr/lib/libsrv_um.so (0x40fef000)
libIMGegl.so => /mnt/utmp/codeblocks/usr/lib/libIMGegl.so (0x4101f000)
libusc.so => /usr/lib/libusc.so (0x41038000)
libxcb.so.1 => /mnt/utmp/codeblocks/usr/lib/libxcb.so.1 (0x4111e000)
libpthread-stubs.so.0 => /mnt/utmp/codeblocks/usr/lib/libpthread-stubs.so.0 (0x41148000)
libXau.so.6 => /mnt/utmp/codeblocks/usr/lib/libXau.so.6 (0x41151000)
libXdmcp.so.6 => /mnt/utmp/codeblocks/usr/lib/libXdmcp.so.6 (0x4115b000)
/lib/ld-linux.so.3 (0x400df000)
libXrender.so.1 => /mnt/utmp/codeblocks/usr/lib/libXrender.so.1 (0x41167000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x41177000)
libncurses.so.5 => /usr/lib/libncurses.so.5 (0x41183000)
libopus.so.0 => /mnt/utmp/codeblocks/usr/lib/libopus.so.0 (0x411a6000)
libpulsecommon-0.9.15.so => /mnt/utmp/codeblocks/usr/lib/libpulsecommon-0.9.15.so (0x41216000)
libSM.so.6 => /usr/lib/libSM.so.6 (0x4125e000)
libICE.so.6 => /usr/lib/libICE.so.6 (0x4126c000)
libXtst.so.6 => /mnt/utmp/codeblocks/usr/lib/libXtst.so.6 (0x41289000)
libXi.so.6 => /mnt/utmp/codeblocks/usr/lib/libXi.so.6 (0x41296000)
libasyncns.so.0 => /mnt/utmp/codeblocks/usr/lib/libasyncns.so.0 (0x412ab000)
libnsl.so.1 => /lib/libnsl.so.1 (0x412bf000)
libresolv.so.2 => /mnt/utmp/codeblocks/usr/lib/libresolv.so.2 (0x412dc000)
libcap.so.2 => /mnt/utmp/codeblocks/usr/lib/libcap.so.2 (0x412f7000)
libgdbm.so.3 => /usr/lib/libgdbm.so.3 (0x41303000)
libuuid.so.1 => /usr/lib/libuuid.so.1 (0x41310000)
libwrap.so.0 => /usr/lib/libwrap.so.0 (0x4131c000)
libspeex.so.1 => /mnt/utmp/codeblocks/usr/lib/libspeex.so.1 (0x4132b000)
libtinfo.so.5 => /usr/lib/libtinfo.so.5 (0x4135a000)
libattr.so.1 => /usr/lib/libattr.so.1 (0x4137f000)

I noticed some libraries were missing from /mnt/utmp/Benri_Test_1884_2.

Cheers, Magic Sam
 
The journey continues. Not worth the game this is about, but this will make the following releases a bit smoother I hope (I have some stuff planned if everything goes well).
Your list looks long, but actually most of these are just symlinks to the library installed on the nand (checked every lib one by one).
I've ran copy_libs.sh again, skipped my uneducated guesses this time and just packed everything it copied. Couple of more X11 libs in there this time around and jack, not much else. I wouldn't know why a double free happens at that certain point with these libs in particular, if it's even them.

I did that on the clean install, so if that does not work, I'll call the port master himself for help. Whew.
 

Attachments

  • Benri_Test_1884_the_third.pnd
    27.9 MB · Views: 470
Back
Top