Release Pandafe 0.2.2


Hi Nuhrin!

  • For a broader discussion I had put my feature suggestions to the boards, but now as you told us your preference for github,
  • I moved all my suggestions (except the ones you explicitly mentioned as "already fixed") over to your github issue tracker, and wrote my follow-up to them as comments.
  • Concerning the whole topic of interlaced genres/views: I once wrote a guideline / vision about the PND management workflow.
    It is worth reading before/while conceptualising highly integrated solutions for the Pandora such as launchers!
 
Last edited by a moderator:
I just installed the latest Pandafe version and made it my default launcher. I am glad more members are interested in this great piece of software and also some good ideas from porg. 

Setting up a new emulator for Pandafe can indeed be a challenge. Would it be feasible to create a 'pandafe distro' with all compatible emulators pre-installed including configuration? 

The only thing left to do is direct the emulators to the directory where the roms are located. I can imagine to have one pandafe distro in slot 1 and all the roms in slot 2. 

Might be easier to create and maintain than adding a lot of logic into Pandafe. 
 
Hi Nuhrin!

  • For a broader discussion I had put my feature suggestions to the boards, but now as you told us your preference for github,
  • I moved all my suggestions (except the ones you explicitly mentioned as "already fixed") over to your github issue tracker, and wrote my follow-up to them as comments.
  • Concerning the whole topic of interlaced genres/views: I once wrote a guideline / vision about the PND management workflow.
    It is worth reading before/while conceptualising highly integrated solutions for the Pandora such as launchers!
Thanks for dropping those on GitHub, I appreciate it. To clarify, I'm not requesting folks take discussion over there (though that's fine also). Just hoping to leverage the issue tracker to help prevent my loosing track of everything that's been thrown out there.

I appreciate your enthusiasm as well. I don't know how much I'll be able to work on Pandafe in the short term, but this sort of feedback from all of you gives me more motivation and focus. I honestly prefer coding to gaming at this point, and spend 10 times more free time tinkering with the source than running it on my Pandora. I expect you all appreciate better than me what works well and what needs polish/axes, and I enjoy hearing about it and trying to do something about it.

While I certainly won't have time to keep up a steady flow up updates in response, having a set of actionable tasks in the bank when I do get to kick my feet up for a few hours makes me want to grab my laptop instead of my Pandora. :)
 
I just installed the latest Pandafe version and made it my default launcher. I am glad more members are interested in this great piece of software and also some good ideas from porg. 

Setting up a new emulator for Pandafe can indeed be a challenge. Would it be feasible to create a 'pandafe distro' with all compatible emulators pre-installed including configuration? 

The only thing left to do is direct the emulators to the directory where the roms are located. I can imagine to have one pandafe distro in slot 1 and all the roms in slot 2. 

Might be easier to create and maintain than adding a lot of logic into Pandafe. 
Hmm, interesting. I'm honestly not so interested in taking on development or maintenance of such a distro, but Pandafe is released under GPLv3 so anyone who wishes to do so is certainly welcome to, so long as they stay within the bounds of the license (and those of any other software distributed).

If anyone does want to take that on, I happy to support them in whatever way I (realistically) can.
 
I just installed the latest Pandafe version and made it my default launcher. I am glad more members are interested in this great piece of software and also some good ideas from porg. 

Setting up a new emulator for Pandafe can indeed be a challenge. Would it be feasible to create a 'pandafe distro' with all compatible emulators pre-installed including configuration? 

The only thing left to do is direct the emulators to the directory where the roms are located. I can imagine to have one pandafe distro in slot 1 and all the roms in slot 2. 

Might be easier to create and maintain than adding a lot of logic into Pandafe. 
Hmm, interesting. I'm honestly not so interested in taking on development or maintenance of such a distro, but Pandafe is released under GPLv3 so anyone who wishes to do so is certainly welcome to, so long as they stay within the bounds of the license (and those of any other software distributed).

If anyone does want to take that on, I happy to support them in whatever way I (realistically) can.
To reduce user configuration even more:

ROM-root chooser shall remember recent filepath AND have better default starting directory

Would help in general and in particular for this distro! Almost zero configuration then!
 
@nuhrin: Am already very curious on the Pandafe changes!

Will there be a new release in the near future? Or are some more changes planned before releasing?

If I would compile from the git source as-is with Vala, would I get a complete stable PND? And would this PND automatically get the correct version number in its PXML (and filename)?

(I have never compiled a PND so far)
 
Last edited by a moderator:
Porg, I am planning to release a new version once I complete the github issues which are tagged as bugs. I have a little window of free time over the next week (knock on wood), so I hope to get to that point fairly soon.

Are far as compiling it from source, take a look at the README.md on github. I expect you'll want to start the bit at the bottom below "If installing Vala on the compilation host system is not feasible you can:"

The basic steps:

  • get Vala 0.18 installed somewhere (later version probably work, but have not been tested)
  • clone the repo
  • create a tarball which includes generated C code
  • get that tarball moved somewhere that can build a working pnd (toolchain or native)
  • configure it (ie ./configure or pndconfigure)
  • make pnd
The make pnd command will indeed yield a complete pnd, with version information matching the git tag+revision in the PXML and filename. The *stable* part is another matter. ;)

Let me know if you run into any snags and I'll see if I can help. I've tried to include dependencies not available in the toolchains in the repo itself, but for native dev tools you'll have to install some dev ipkgs. I've noted those in the README.md, but I'm not certain that list is up to date.

Have fun!
 
Thanks for your answer!

As your release is announced for the near future, I will not compile myself (thx for info nevertheless, maybe another time), but rather anticipate the release  :D
 
On the current build of this, I'm unable to get Picodrive to work? For whatever reason it fails to find that PND on my system. Other than that, I find this a great way to run games quickly :)
 
On the current build of this, I'm unable to get Picodrive to work? For whatever reason it fails to find that PND on my system. Other than that, I find this a great way to run games quickly :)
Hmm, what version of PicoDrive are you using? The current repo version works fine for me. Is your PND older or different than that? Pandafe's program definition for PicoDrive expects a specific app id:  picodrive.notaz.1.80.

If you are using a different PND perhaps you can:

  1. send me a copy of that, for testing
  2. update to the newest repo version
 
The promised bug fix release is up now (version 0.2.2, changelog updated on op and repo).

This release also includes a couple new features which were requested:

* make list filtering dynamic (update while typing)

* add Nintendo DS / DraStic
 
On the current build of this, I'm unable to get Picodrive to work? For whatever reason it fails to find that PND on my system. Other than that, I find this a great way to run games quickly :)
Hmm, what version of PicoDrive are you using? The current repo version works fine for me. Is your PND older or different than that? Pandafe's program definition for PicoDrive expects a specific app id:  picodrive.notaz.1.80.

If you are using a different PND perhaps you can:

  1. send me a copy of that, for testing
  2. update to the newest repo version
I´ve just updated my Pandafe software abd am still having the same issue. i deleted my Picodrive PND and redownloaded from the repo, no improvement.

Here´s the output from that

 =======================================================================================

PND             : /media/SANDISK32A/pandora/apps/PicoDrive_180pxml_tv.pnd

PND_FSTYPE      : Squashfs

APPDATADIR      : /media/SANDISK32A/pandora/appdata/picodrive.notaz.1.80

APPDD_FSTYPE    : vfat

PND_CPUSPEED    : <unset>

EXENAME         : PicoDrive.run

ARGUMENTS       : <unset>

=======================================================================================

[ START ]--- Mount the PND ----------

Mounting : mount -t squashfs -o ro "/dev/loop2" "/mnt/utmp/picodrive.notaz.1.80"

Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/SANDISK32A/pandora/appdata/picodrive.notaz.1.80=rw+nolwh":"/mnt/pnd/picodrive.notaz.1.80=rr" none "/mnt/utmp/picodrive.notaz.1.80"

[sUCCESS]--- Mount the PND ----------

[ START ]--- Starting the application ( PicoDrive.run  ) ----------

oshide: open /dev/tty: No such device or address

in_evdev: found "keypad" with 84 events (type 00100013)

input: new device #0 "evdev:keypad"

in_evdev: found "nub0" with 3 events (type 00000007)

input: new device #1 "evdev:nub0"

in_evdev: found "nub1" with 3 events (type 00000007)

input: new device #2 "evdev:nub1"

in_evdev: found "gpio-keys" with 16 events (type 00000023)

input: new device #3 "evdev:gpio-keys"

# drv probed binds name

0   2      y     y evdev:keypad

1   2      y     n evdev:nub0

2   2      y     n evdev:nub1

3   2      y     y evdev:gpio-keys

/dev/fb0: 800x480@16

oshide: X vendor: The X.Org Foundation, rel: 10704000, display: :0.0, protocol ver: 11.0

oshide: display is 800x480

fbdev initialized.

 switching to 320x240@16

/dev/fb1: 320x240@16

fbdev initialized.

munmap tcache: 0

found skin.txt

menu_loop_romsel failed, dir: 

all done

open /dev/tty: No such device or address

[ FAILED]--- Starting the application ( PicoDrive.run  ) ----------

[ 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 ----------

auplink:plink.c:223: AUFS_CTL_PLINK_MAINT: Inappropriate ioctl for device

rmdir: failed to remove `/mnt/utmp/picodrive.notaz.1.80': 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 : 3
 
Update, deleted my Pandafe appdata folder and stated everything from scratch. Getting different (grouped) layout of emulators now and Picodrive is finally working!
 
Update, deleted my Pandafe appdata folder and stated everything from scratch. Getting different (grouped) layout of emulators now and Picodrive is finally working!
Glad you got it working. :) I am though scratching my head a bit in pondering why that worked.  The PicoDrive program definition (glue for Pandafe) does not include a custom command, since PicoDrive already supports launching roms directly. Scanning the your log (thanks for that), it looks like it was being found, mounted, and run correctly. This line:


menu_loop_romsel failed, dir:
seems to indicate that the rom was not passed correctly. The only thing I can think of is that the scanned romlist for the platform (genesis, 32x, etc) was out of date vs what was actually present on the sdcard. If that was the case it would make sense that wiping the appdata folder would allow it to work again, since the romlist would have been rebuild on the next run.



FYI, the "(grouped) layout of emulators" is the Platform Folders configuration, stored in appdata/pandafe/platform_folders. I update the shipped version of that when I ship new platform support, but I don't update the appdata version since it may be customized according to user preference. So it makes sense that this was changed when you removed the appdata folder, and this change should be unrelated to PicoDrive working or not (unless I have a bug hiding somewhere unexpected).

If nothing else, it looks like a need to add a check to make sure the rom actually exists before attempting to run it with something. Just checked and indeed: if the rom doesn't exist the program still attempts to run and of course fails, but the failure makes it hard to determine where the issue is. I'll address this by adding a more precise error message and get an an bug fix release out shortly.

Thanks for the report!
 
If nothing else, it looks like a need to add a check to make sure the rom actually exists before attempting to run it with something. Just checked and indeed: if the rom doesn't exist the program still attempts to run and of course fails, but the failure makes it hard to determine where the issue is. I'll address this by adding a more precise error message and get an an bug fix release out shortly.
New PND on the repo has this change. Wouldn't normally release right away for such a small change, but its a confusing enough bug that I figured I'd better squash it while it was fresh on my mind.
 
Thanks again for this great piece of software, nuhrin! It is really nice to have "one launcher to launch them all"!
 
Pandafe 0.2.2 crashes :( . I removed the appdata dir but it still crashes.

The pndout file in /tmp does not give anything useful, but if I manually mount it and start it without the screen, I get the following:

Code:
**
ERROR:arraylist.c:769:gee_array_list_real_get: assertion failed: (index < _size)
Aborted
 
Sorry guys, I guess I was too hasty with my last bug fix. I'll work on squashing this tonight, a little less hastily.

Thanks, _wb_, for going that extra mile with the report.

Update: hmm, strange it doesn't crash for me. Upgrading to to the latest firmware to see if that has bit me again...

Update2: yep, bitten. It looks like my libpnd vala wrapper is not immune to struct changes as I'd intended last time this came up. I'll try to solve this issue more generally and get out a fix as soon as I can.

Update3: well, after updating to 1.54 via the offline updater, and also after trying another update via the "Update Pandora OS" utility, it still works fine for me.  The "yep, bitten" comment came after the libpnd in my development environment to the latest git version. So, I dunno if this is perhaps an unrelated issue. Either way I've captured the libpnd issue on github.

The gee_array_list_real_get() assertion fail does seem to indicate a different issue entirely, and one that I've been unable to reproduce (my crash is only with libpnd from latest git).

_wb_: Can you provide any more details on your environment, etc? You are indeed using the latest pandafe from the repo (0.2.2.2-fd0c)?
 
Last edited by a moderator:
Hey _wb_. Just uploaded a new pnd which allows Pandafe to work with libpnd versions from git b2aaaf3 (24 May 2011) up through the most recent git version (6f277b9).  Again, I'm not sure this is the problem you encountered, but give it a shot.
 
No, it still crashes. It starts up, says it is looking for platform definitions and then exits.

I'll try again later after rebooting and also in a virgin firmware to see if that makes any difference.

Perhaps you could output some debug info to stdout (so it ends up in the /tmp/pndout) to make it easier to find out where the problem is?
 
Back
Top