The Tournament Hub (Launcher)


Still having no luck getting this to run on my system, (1 gig Pandora), I've deleted the appdata folder several times and redownloaded the PND. I'll get the intro screen then the blank sync screen, the music will play for a few seconds and maybe it'll show me the boxes (but no marquee images) for Super Hexagon, then it'll crash back to the desktop. Afetr that, it won't even get that far unless I delete the previously created folder again. anyone else having problems like this?
 
I am not quite clear on this, so bear with me: Is it supposed to work to just download this (the tournament hub thing) and run it, and things are supposed to run along OK, or is it necessary to do something else first? In particular, is it necessary to run C4A-MAME first?
 
Last edited by a moderator:
Moxie -- yes for now, you need to run c4a-mame once and create a profile; soon you can run C4A Manager (not yet released) to do it. Not sure if the long term plan is for tourny hub to have a profile editor/creator or not.

jeff
 
I am not quite clear on this, so bear with me: Is it supposed to work to just download this (the tournament hub thing) and run it, and things are supposed to run along OK, or is it necessary to do something else first? In particular, is it necessary to run C4A-MAME first?
You will need to run C4A-Mame first in order for it to set-up a C4A profile for you - currently The Tournament Hud won't/cannot do that (skeezix is working on a lib/app for this though, so ventually you will be able to manage your C4A Profile in The Tournament Hud).

Also to be able to run any games through The Tournament Hud you will need PNDs of said games on your SD card, The Tournament Hud will not automatically download those (in case that is unclear). This is not needed for displaying scores.

Currently The Tournament Hud's main purpose is to display and present scores, PND launching and managing capabilities might be improved in the future.

---

Also, skeezix mentioned it a few times, but in case people missed it:

The developer of this app (The Tournament Hud), pmprog, is without internet access for the next few days, so your questions might remain unanswered.

He will get back eventually, respond to everything and fix bugs, so keep reporting them.

---

A note on reporting:

This is a very early build of software, so bugs are to be expected - in fact it was released to find and eliminate those bugs (one developer can hardly test everything on his own, a community will do a better job in less time).

If you encounter a bug, please do the following (most people already do this, but here is the best practice again anyway):

Immediately after the application crashes or is closed after being unresponsive, start the file manger on the Pandora (called "thunar", this can be done by clicking on the SD symbol on the desktop for example).

Locate a directory called "tmp", it's NOT on your SD card, but in the root dir (next to folders like "usr", "sys", etc.). In that folder locate a file called "pndrun_thetournamenthub.marqwatkin.out". Copy it to your SD card, then on your PC and attach it to a post of your bug (click "more reply options" below the post box) - despite its file extension, it's a simple text file, try taking a look at it...

Try to replicate the bug, repeat what you did last time and see if the app behaves the same or if it was just random chance (this happens) - report the bug in any case though (just note whether it's reproducible and the steps to do it)

When reporting the bug, please be as descriptive as possible. Describe what you did prior to the crash, what buttons you pressed, if you had WiFi on/off, what OS you use on your Pandora, which model of Pandora you have, etc.

Thank you. :)
 
Last edited by a moderator:
Moxie -- yes for now, you need to run c4a-mame once and create a profile; soon you can run C4A Manager (not yet released) to do it. Not sure if the long term plan is for tourny hub to have a profile editor/creator or not.

jeff

My recommendation would be for you to send your C4A manager to pmprog for inclusion into the Tournament Hub PND.   It can be included in an as-is state and then if/when he decides to turn his attention to that aspect of things down the track he can reskin or rewrite it.

- Neelix
 
Its a fairly simple protocol for getting/setting/creating profiles, and I think I pointed him how to do it; he could call my pnd, or include it, or roll his own.

All things in time ;)

jeff
 
Since other people have been able to get further than me without triggering a segfault,  I decided I'd try a few things to see if I could get around it.    So far no dice,  but since it always segfaults in the same place for me I thought perhaps I could get some useful information about it from gdb.  

So I ssh'd in to my pandora, mounted the PND and started TTH via gdb - here is the result:

op-vizzini:/mnt/utmp/thetournamenthub.marqwatkin$ DISPLAY=:0 gdb ./C4AMenu
GNU gdb (GDB) 7.0
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "arm-angstrom-linux-gnueabi".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /mnt/utmp/thetournamenthub.marqwatkin/C4AMenu...(no debugging symbols found)...done.
(gdb) run
Starting program: /mnt/utmp/thetournamenthub.marqwatkin/C4AMenu
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
al_create_display(800, 480)
al_get_system_driver()
system->vt->get_display_driver()
driver->create_display(800, 480)
EGL Opening EGL display
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
EGL Initializing
EGL Implementation Version: Major 1 Minor 4
EGL_VENDOR: Imagination Technologies
EGL_VERSION: 1.4 build 1.4.14.2616
EGL_EXTENSIONS: EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_vg_parent_image EGL_IMG_context_priority
EGL Found 2 available configs
EGL Using Config 0
EGL Binding API
EGL Creating Context
EGL Creating window surface
EGL Making Current
EGL Complete
EGL_Init done
al_grab_mouse
_al_ogl_manage_extensions(a7e20)
Enter _al_ogl_manage_extensions
Exit _al_ogl_manage_extensions
_al_ogl_manage_extensions
_al_ogl_set_extensions
setup_gl
GL_VENDOR: Imagination Technologies
GL_RENDERER: PowerVR SGX 530
GL_VERSION: OpenGL ES-CM 1.1
GL_EXT: GL_OES_byte_coordinates GL_OES_fixed_point GL_OES_single_precision GL_OES_matrix_get GL_OES_read_format GL_OES_compressed_paletted_texture GL_OES_point_sprite GL_OES_point_size_array GL_OES_matrix_palette GL_OES_draw_texture GL_OES_query_matrix GL_OES_texture_env_crossbar GL_OES_texture_mirrored_repeat GL_OES_texture_cube_map GL_OES_blend_subtract GL_OES_blend_func_separate GL_OES_blend_equation_separate GL_OES_stencil_wrap GL_OES_extended_matrix_palette GL_OES_framebuffer_object GL_OES_rgb8_rgba8 GL_OES_depth24 GL_OES_stencil8 GL_OES_compressed_ETC1_RGB8_texture GL_OES_mapbuffer GL_OES_EGL_image GL_EXT_multi_draw_arrays GL_OES_required_internalformat GL_IMG_read_format GL_IMG_texture_compression_pvrtc GL_IMG_texture_format_BGRA8888 GL_EXT_texture_format_BGRA8888 GL_IMG_texture_stream GL_IMG_vertex_program
Attaching glExtension...
Done with extensions
display = a7e20
display->extra_settings=0xa7ec8
init to 0...
_al_vector_init(0xa7f6c, 4)
settings->settings[ALLEGRO_COMPATIBLE_DISPLAY]=1
al_identity_transform(0xbefff5c0)
al_use_transform(&identity)
settings->settings[ALLEGRO_COMPATIBLE_DISPLAY]=1
al_set_window_title(a7e20, C4AMenu)
settings->settings[ALLEGRO_AUTO_CONVERT_BITMAPS]=1
end of al_create_display
BootUp: Set Title and Icon
Intro: Started Intro
Intro: Finished Intro
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/mspacman.jpg' (Queue Length: 1)
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/superhexagon5.jpg' (Queue Length: 2)
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/superhexagon6.jpg' (Queue Length: 3)
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/sf2.jpg' (Queue Length: 4)
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/battlejewels.jpg' (Queue Length: 5)
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/superhexagon3.jpg' (Queue Length: 6)
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/bublbobl.jpg' (Queue Length: 7)
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/fshark.jpg' (Queue Length: 8)
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/superhexagon2.jpg' (Queue Length: 9)
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/opentyrian_ep_2B.jpg' (Queue Length: 10)

Program received signal SIGSEGV, Segmentation fault.
0x4033a0a4 in strlen () from /lib/libc.so.6
(gdb) bt full
#0 0x4033a0a4 in strlen () from /lib/libc.so.6
No symbol table info available.
#1 0x4022473c in std::string::append(char const*) () from /mnt/utmp/thetournamenthub.marqwatkin/libstdc++.so.6
No symbol table info available.
#2 0x00028e48 in ?? ()
No symbol table info available.
#3 0x00028e48 in ?? ()
No symbol table info available.
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Hope that helps. :)

- Neelix

Edit:

I'm running SuperZaxxon 1.54 with all the latest OS updates on a Rebirth edition pandora overclocked to 850MHz on OPP5.


Linux op-vizzini 3.2.45 #891 Fri May 24 01:34:38 EEST 2013 armv7l GNU/Linux
I notice that there is a long pause after:
Code:
DownloadManager: Download 'http://c4a.openpandora.org/img/logo/mspacman.jpg' (Queue Length: 1)
... but the rest of the download manager stuff plus the segfault itself all come through very quickly afterwards.
There is nothing stored in the GameImages folder afterwards.
 
Last edited by a moderator:
=======================================================================================
PND : /media/SD/pandora/menu/tournamenthub.pnd
PND_FSTYPE : Squashfs
APPDATADIR : /media/SD/pandora/appdata/thetournamenthub.marqwatkin
APPDD_FSTYPE : vfat
PND_CPUSPEED : <unset>
EXENAME : ./C4AMenu
ARGUMENTS : <unset>
=======================================================================================
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop2" "/mnt/utmp/thetournamenthub.marqwatkin"
Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/SD/pandora/appdata/thetournamenthub.marqwatkin=rw+nolwh":"/mnt/pnd/thetournamenthub.marqwatkin=rr" none "/mnt/utmp/thetournamenthub.marqwatkin"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( ./C4AMenu ) ----------
/usr/pandora/scripts/pnd_run.sh: line 522: 3904 Segmentation fault "$EXENAME" $ARGUMENTS "$@"
[ FAILED]--- Starting the application ( ./C4AMenu ) ----------
[ 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/thetournamenthub.marqwatkin': 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 : 2

Tournament Hub has always been launched with Wi-Fi on. Rebirth model, 600Mhz (OPP5).

The first launch it attempted to download some stuff and display games' names (or something?) and then crashed. From then on, it crashes a little before that, it shows the intro animation (very nice), but then doesn't show any text; music is playing in the background, then crashes, i.e. returns to Desktop.
 
Hi everyone, I'm back from holidays

Allright, you didn't ask for it, but here's my review of The Tournament Hub, on Pandoralive:
There's some good points in here, however, there's a few things I'd like to cover.

Firstly, you make a few points about the speed of downloading games lists and scores. There's not much I can do about this, this is between your Pandora, your router, your ISP and Jeff's server. I was planning of adding a "Transfer" tab, which will list all downloads queued and downloading. That might help a bit from the visual aspect, but your scores will still have to redownload in their "sweet own time". That's just the way the C4A system works - I don't see them, the scores are uploaded from the game to the server, I have to download them again

Graphics and animations are not final.

Launching MAME games had nothing to do with this launcher. Skeezix even released an updated PND in this thread specifically covering this point.

Multiple game "instances" (namely Super Hexagon and Tyrian) are just listed as seperated games by C4A, I can't do anything about this with the current setup

So I ssh'd in to my pandora, mounted the PND and started TTH via gdb - here is the result:
Thanks for that, it gives me places to look. Interesting how the DownloadManager doesn't report trying to download the games list, that confuses me.
 
- Category "System/FileManager" is a bit strange imo.
Yeah, I couldn't figure out where to put this, better suggestion?
- The selection cursor is not very visible (only the small transparent black box), something more "highlighting" would be better
There's going to be a lot of redesigning going on, so yeah, I'll sort something
- Minor detail: the marquee for Microbes uses transparency; this gets rendered on a white background which is a bit ugly imo; would be better if the background image would see through (or else a black background would be better than white)
To be fair, I grab the marquee off the c4a page, which stores it as a .jpg, and it's already lost it's transparency. I'm afraid there's not much I can do with that
- Startup takes quite some time, can you get it faster? (not urgent, but would be nice)
Again - this will be (hopefully) addressed in my redesign
 
Speaking of PanDafe....what's the chances it could get expanded to launch many other things...even to have the ability to have the user specify a path for a thing to launch?
 
I don't know, why don't you ask in the PanDafe thread?
 
Oh, right, I need to fix that updated c4a that works with Tourny Hub, to actualyl sync properly. Forgot.

I'm tied up in RL a bit longer, so someone kick me to wake up in a week, and hopefully I can get back to it.

(RL work is insane overtime, and also had my little girl in the hospital for a bit (minor, but scary to her all the same!)) .. so I've been out of commission like pmprog was :)

jeff
 
I wouldn't worry about it... I've had the post-holiday blues and didn't/don't even want to look at The Tournament Hub...
 
Okay, I've started rebuilding this from scratch. I'm going to make quite a few changes to the way it works to address a number of the points raised by people here.

I'm going to rebuild using SDL this time, despite how much I prefer Allegro, and things will be broken down hopefully a lot more...

Keep your eyes peeled
 
Back
Top