Release Simsu


Magic Sam

Forever Homebrew
Joined
Aug 10, 2007
Messages
2,544
Age
42
Location
Yuzu onsen
Hi all :)

I have "ported" (a simple compilation, that's it) Graeme Gott's Simsu to the Pandora !
Simsu is a basic Sudoku game. You can switch between filling in notes (pencil mode), or filling in answers (pen mode). To make it easier to see where to place numbers, you can highlight all instances of a number. You can also check your answers for correctness while playing. The game stores your current notes and answers, so that you can pick up where you left off the next time you play.

thumbs.png


Grab it here while it's hot !
Changelog:

New in build #1

- Graeme Gott's Simsu 1.3.2
- Compiled with @ptitSeb 's latest Code::Blocks (Qt 5.7.0)
- Source code is inside the PND

TODO:

- Make widescreen mode fit the Pandora resolution ?
- Make the PND lighter (60MB+ for a sudoku game...)

Cheers, Magic Sam
 
Last edited:
hi :3

do i need any additional things to start this? for some reason, it won't start :(
 
Hi @jeeks :)

Thanks for your report !

Could you please post the content of your /tmp/pndrun_simsu-magicsam.out here, for debugging purposes ?

Cheers, Magic Sam
 
okay, here it is :)

Code:
=======================================================================================
PND             : /media/mmcblk1p1/pandora/menu/simsu-magicsam.pnd
PND_FSTYPE      : Squashfs
APPDATADIR      : /media/mmcblk1p1/pandora/appdata/simsu-magicsam
APPDD_FSTYPE    : vfat
PND_CPUSPEED    : <unset>
EXENAME         : run.sh
ARGUMENTS       : <unset>
=======================================================================================
[ START ]--- Mount the PND ----------
Mounting : mount -t squashfs -o ro "/dev/loop0" "/mnt/utmp/simsu-magicsam"
Mounting the Union FS : mount -t aufs -o exec,noplink,dirs="/media/mmcblk1p1/pandora/appdata/simsu-magicsam=rw+nolwh":"/mnt/pnd/simsu-magicsam=rr" none "/mnt/utmp/simsu-magicsam"
[SUCCESS]--- Mount the PND ----------
[ START ]--- Starting the application ( run.sh  ) ----------
simsu: symbol lookup error: /mnt/utmp/simsu-magicsam/lib/libIMGegl.so: undefined symbol: PVRSRVCreateRecursiveMutex
[ FAILED]--- Starting the application ( run.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/simsu-magicsam': 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
 
@jeeks : thanks :)

What is your SGX driver version ? I'm running SGX driver 4.10 (on a Rebirth unit), and I don't have such an issue...

Cheers, Magic Sam
 
@Magic Sam : you should not put that lib in the PND. Thoses are system libs and should stay in the firmware (they may also be dependant on the Model, plus they are dependant on the version driver).

There is a script in codeblocks, called "copy_libs.sh" that can copy libs without copiying those from the firmware. Cd to your lib folder and use copy_libs.sh PATH/TO/PROGRAM to copy needed dependancie (it's based on analysing ldd, so it will not do miracles with everything that do dlopen things).
 
@ptitSeb : thanks for your help ! I know about copy_libs.sh, and I normally always use it. I don't know why I did differently for simsu...:$

The lib directory looks like this:
pandora:/media/Pandora/dev/install/simsu-magicsam/lib$ ls -al
total 144004
drwxr-xr-x 4 samuel samuel 4096 Sep 11 18:48 .
drwxr-xr-x 9 samuel samuel 4096 Sep 11 18:42 ..
drwxr-xr-x 5 samuel samuel 4096 Sep 11 18:41 X11
drwxr-xr-x 2 samuel samuel 20480 Sep 11 18:43 gstreamer-0.10
-rwxr-xr-x 1 samuel samuel 371744 Sep 11 17:42 libGLESv2.so
-rwxr-xr-x 1 samuel samuel 67552 Sep 11 17:39 libIMGegl.so
-rwxr-xr-x 1 samuel samuel 275336 Sep 11 18:47 libQt53DCore.so.5
-rwxr-xr-x 1 samuel samuel 310432 Sep 11 18:47 libQt53DExtras.so.5
-rwxr-xr-x 1 samuel samuel 430228 Sep 11 18:47 libQt53DInput.so.5
-rwxr-xr-x 1 samuel samuel 40012 Sep 11 18:47 libQt53DLogic.so.5
-rwxr-xr-x 1 samuel samuel 1665404 Sep 11 18:47 libQt53DRender.so.5
-rwxr-xr-x 1 samuel samuel 18832 Sep 11 18:47 libQt5Concurrent.so.5
-rwxr-xr-x 1 samuel samuel 450168 Sep 11 18:39 libQt5Contacts.so.0
-rwxr-xr-x 1 samuel samuel 4526228 Sep 11 18:38 libQt5Core.so.5
-rwxr-xr-x 1 samuel samuel 510584 Sep 11 18:39 libQt5DBus.so.5
-rwxr-xr-x 1 samuel samuel 4930148 Sep 11 18:39 libQt5Designer.so.5
-rwxr-xr-x 1 samuel samuel 571860 Sep 11 18:44 libQt5EglDeviceIntegration.so.5
-rwxr-xr-x 1 samuel samuel 40712 Sep 11 18:44 libQt5Feedback.so.0
-rwxr-xr-x 1 samuel samuel 110356 Sep 11 18:44 libQt5Gamepad.so.5
-rwxr-xr-x 1 samuel samuel 4701800 Sep 11 18:38 libQt5Gui.so.5
-rwxr-xr-x 1 samuel samuel 535788 Sep 11 18:45 libQt5Location.so.5
-rwxr-xr-x 1 samuel samuel 886608 Sep 11 18:38 libQt5Multimedia.so.5
-rwxr-xr-x 1 samuel samuel 83880 Sep 11 18:45 libQt5MultimediaWidgets.so.5
-rwxr-xr-x 1 samuel samuel 1342544 Sep 11 18:38 libQt5Network.so.5
-rwxr-xr-x 1 samuel samuel 278508 Sep 11 18:44 libQt5OpenGL.so.5
-rwxr-xr-x 1 samuel samuel 445244 Sep 11 18:46 libQt5Organizer.so.0
-rwxr-xr-x 1 samuel samuel 234632 Sep 11 18:44 libQt5Positioning.so.5
-rwxr-xr-x 1 samuel samuel 347460 Sep 11 18:44 libQt5PrintSupport.so.5
-rwxr-xr-x 1 samuel samuel 3502616 Sep 11 18:40 libQt5Qml.so.5
-rwxr-xr-x 1 samuel samuel 3165372 Sep 11 18:40 libQt5Quick.so.5
-rwxr-xr-x 1 samuel samuel 52680 Sep 11 18:40 libQt5QuickWidgets.so.5
-rwxr-xr-x 1 samuel samuel 2010440 Sep 11 18:40 libQt5Script.so.5
-rwxr-xr-x 1 samuel samuel 197848 Sep 11 18:44 libQt5Sensors.so.5
-rwxr-xr-x 1 samuel samuel 243188 Sep 11 18:39 libQt5SerialBus.so.5
-rwxr-xr-x 1 samuel samuel 89220 Sep 11 18:39 libQt5SerialPort.so.5
-rwxr-xr-x 1 samuel samuel 256920 Sep 11 18:40 libQt5Sql.so.5
-rwxr-xr-x 1 samuel samuel 282824 Sep 11 18:45 libQt5Svg.so.5
-rwxr-xr-x 1 samuel samuel 286488 Sep 11 18:48 libQt5Versit.so.0
-rwxr-xr-x 1 samuel samuel 102248 Sep 11 18:44 libQt5WebChannel.so.5
-rwxr-xr-x 1 samuel samuel 28778416 Sep 11 18:41 libQt5WebKit.so.5
-rwxr-xr-x 1 samuel samuel 209640 Sep 11 18:40 libQt5WebKitWidgets.so.5
-rwxr-xr-x 1 samuel samuel 5300288 Sep 11 18:39 libQt5Widgets.so.5
-rwxr-xr-x 1 samuel samuel 999344 Sep 11 18:46 libQt5XcbQpa.so.5
-rwxr-xr-x 1 samuel samuel 193708 Sep 11 18:39 libQt5Xml.so.5
-rwxr-xr-x 1 samuel samuel 3601176 Sep 11 18:40 libQt5XmlPatterns.so.5
-rwxr-xr-x 1 samuel samuel 5180608 Sep 11 18:44 libSDL2-2.0.so.0
-rwxr-xr-x 1 samuel samuel 6536 Sep 11 18:44 libX11-xcb.so.1
-rwxr-xr-x 1 samuel samuel 1180720 Sep 11 18:41 libX11.so.6
-rwxr-xr-x 1 samuel samuel 7148 Sep 11 18:44 libXau.so.6
-rwxr-xr-x 1 samuel samuel 15668 Sep 11 18:44 libXdmcp.so.6
-rwxr-xr-x 1 samuel samuel 62418 Sep 11 18:46 libXi.so.6
-rwxr-xr-x 1 samuel samuel 39845 Sep 11 18:46 libXrandr.so.2
-rwxr-xr-x 1 samuel samuel 40174 Sep 11 18:44 libXrender.so.1
-rwxr-xr-x 1 samuel samuel 7287723 Sep 11 18:47 libassimp.so.3
-r-xr-xr-x 1 samuel samuel 1870608 Sep 11 18:38 libcrypto.so.1.0.0
-rwxr-xr-x 1 samuel samuel 9752 Sep 11 17:41 libdl.so.2
-rwxr-xr-x 1 samuel samuel 173108 Sep 11 18:44 libexpat.so.1
-rwxr-xr-x 1 samuel samuel 659828 Sep 11 18:44 libfreetype.so.6
-rw-r--r-- 1 samuel samuel 113224 Sep 11 18:38 libgcc_s.so.1
-rwxr-xr-x 1 samuel samuel 193920 Sep 11 18:42 libgstapp-0.10.so.0
-rwxr-xr-x 1 samuel samuel 792824 Sep 11 18:45 libgstaudio-0.10.so.0
-rwxr-xr-x 1 samuel samuel 1234982 Sep 11 18:42 libgstbase-0.10.so.0
-rwxr-xr-x 1 samuel samuel 252588 Sep 11 18:42 libgstinterfaces-0.10.so.0
-rwxr-xr-x 1 samuel samuel 436288 Sep 11 18:42 libgstpbutils-0.10.so.0
-rwxr-xr-x 1 samuel samuel 62609 Sep 11 18:45 libgstphotography-0.10.so.23
-rwxr-xr-x 1 samuel samuel 3345685 Sep 11 18:43 libgstreamer-0.10.so.0
-rwxr-xr-x 1 samuel samuel 406100 Sep 11 18:42 libgstvideo-0.10.so.0
-rwxr-xr-x 1 samuel samuel 387028 Sep 11 18:44 libharfbuzz.so.0
-rwxr-xr-x 1 samuel samuel 341381 Sep 11 18:46 libhunspell-1.3.so.0
-rwxr-xr-x 1 samuel samuel 1074632 Sep 11 18:44 libiconv.so.2
-rwxr-xr-x 1 samuel samuel 25336980 Sep 11 18:39 libicudata.so.54
-rwxr-xr-x 1 samuel samuel 2665504 Sep 11 18:38 libicui18n.so.54
-rwxr-xr-x 1 samuel samuel 1670748 Sep 11 18:38 libicuuc.so.54
-rwxr-xr-x 1 samuel samuel 290264 Sep 11 18:45 libjasper.so.1
-rwxr-xr-x 1 samuel samuel 374967 Sep 11 18:45 libjpeg.so.8
-rwxr-xr-x 1 samuel samuel 168538 Sep 11 18:44 liblzma.so.5
-rwxr-xr-x 1 samuel samuel 434054 Sep 11 18:45 libmng.so.2
-rwxr-xr-x 1 samuel samuel 732751 Sep 11 18:44 liborc-0.4.so.0
-rwxr-xr-x 1 samuel samuel 390592 Sep 11 18:39 libpcre16.so.0
-rwxr-xr-x 1 samuel samuel 753985 Sep 11 18:46 libpixman-1.so.0
-rwxr-xr-x 1 samuel samuel 151646 Sep 11 18:46 libpng12.so.0
-rwxr-xr-x 1 samuel samuel 238084 Sep 11 18:38 libpng16.so.16
-rwxr-xr-x 1 samuel samuel 162901 Sep 11 18:38 libproxy.so.1
-rwxr-xr-x 1 samuel samuel 3200 Sep 11 18:44 libpthread-stubs.so.0
-rwxr-xr-x 1 samuel samuel 213196 Sep 11 18:45 libqgsttools_p.so.1
-rwxr-xr-x 1 samuel samuel 26576 Sep 11 17:40 librt.so.1
-rwxr-xr-x 1 samuel samuel 479952 Sep 11 18:48 libsqlite.so.0
-rwxr-xr-x 1 samuel samuel 1012744 Sep 11 18:44 libsqlite3.so.0
-r-xr-xr-x 1 samuel samuel 426900 Sep 11 18:38 libssl.so.1.0.0
-rwxr-xr-x 1 samuel samuel 9231688 Sep 11 18:38 libstdc++.so.6
-rwxr-xr-x 1 samuel samuel 517340 Sep 11 18:45 libtiff.so.5
-rwxr-xr-x 1 samuel samuel 416026 Sep 11 18:44 libwebp.so.4
-rwxr-xr-x 1 samuel samuel 39300 Sep 11 18:46 libxcb-render.so.0
-rwxr-xr-x 1 samuel samuel 13388 Sep 11 18:46 libxcb-shape.so.0
-rwxr-xr-x 1 samuel samuel 29864 Sep 11 18:46 libxcb-xfixes.so.0
-rwxr-xr-x 1 samuel samuel 108772 Sep 11 18:46 libxcb-xkb.so.1
-rwxr-xr-x 1 samuel samuel 139756 Sep 11 18:44 libxcb.so.1
-rwxr-xr-x 1 samuel samuel 129352 Sep 11 18:46 libxkbcommon-x11.so.0
-rwxr-xr-x 1 samuel samuel 783020 Sep 11 18:46 libxkbcommon.so.0
-rwxr-xr-x 1 samuel samuel 1860694 Sep 11 18:43 libxml2.so.2
-rwxr-xr-x 1 samuel samuel 243181 Sep 11 18:41 libxslt.so.1
-rwxr-xr-x 1 samuel samuel 103289 Sep 11 18:38 libz.so.1
Which libraries should I remove in your opinion ?

Cheers, Magic Sam
 
I think those one should be removed:
Code:
libGLESv2.so
libIMGegl.so
libdl.so.2
librt.so.1

Also, to save some space, but it's not mandatory, you can remove thoses:
Code:
gstreamer-0.10  (yes, the entire folder)
libgstapp-0.10.so.0
libgstaudio-0.10.so.0
libgstbase-0.10.so.0
libgstinterfaces-0.10.so.0
libgstpbutils-0.10.so.0
libgstphotography-0.10.so.23
libgstreamer-0.10.so.0
libgstvideo-0.10.so.0
The version in the firmware will probably be enough
 
@jeeks and @ptitSeb : thanks for your help guys :)

Could you please try the following PND ?

http://sviscapi.chaosnet.org/simsu-magicsam.pnd

N.B: scp should be complete in ~10 minutes, please wait some time before attempting to download that file.

The file is ready to be downloaded now !
pandora:/media/Pandora/dev/install$ md5sum simsu-magicsam.pnd
6ed3001504a6069b2258d52500990433 simsu-magicsam.pnd

I removed some unnecessary / conflicting libs from that package. If everything works correctly, I'll push it to the Repo :)

Cheers, Magic Sam
 
Last edited:
@Magic Sam works fine now! thanks! :D
sorry for the delayed answer, filezilla and my sd card reader both trolled me and corrupted the file a few times :mad: then it worked and i played a few rounds :$
 
Hi all :)

Build #3 is on the Repo:

http://repo.openpandora.org/?page=detail&app=simsu-magicsam
New in build #3

- Graeme Gott's Simsu 1.3.4 (released on August 5th 2017)
- Compiled with @ptitSeb 's latest beta Code::Blocks (GCC 7.1 + Qt 5.9.0)
- Updated libs, Qt plugins and source code

Cheers, Magic Sam
[doublepost=1502133156,1502132649][/doublepost]Hi again,

@ptitSeb : I'm sorry to bother you with this, but I just noticed the following errors in the pndrun.out:
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-samuel'
WSEGL_InitialiseDisplay: DRI2OpenConnection failed
Qt: Session management error: Authentication Rejected, reason : None of the authentication protocols specified are supported and host-based authentication failed
QT5 Base dir = /mnt/utmp/simsu-magicsam

Should I add "export XDG_RUNTIME_DIR=/mnt/utmp/simsu-magicsam" to the runscript ? And regarding this WSEGL thing, do you think an "export LIBGL_FB=1" would help ?

Cheers, Magic Sam
 
Hi all,

I did some tests this morning in the train, and exporting XDG_RUNTIME_DIR solved the issue:
if [ ! -d /mnt/utmp/simsu-magicsam/home/runtime-$USER ];then
mkdir -p /mnt/utmp/simsu-magicsam/home/runtime-$USER
fi

export XDG_RUNTIME_DIR="/mnt/utmp/simsu-magicsam/home/runtime-$USER"

I'll update this package ASAP (tonight ? )

Cheers, Magic Sam
 
Last edited:
@Magic Sam : The WSEGL error is because Qt tries to use GLES2 acceleration bucannot because you use an SGX driver were X11 windowed mode is not supported (4.4+). The game is just 2D, so GL acceleration is not mandatory...
LIBGL_FB will have no effect as Qt is built against GLES2, not GL.
 
Last edited:
/tmp is a ramdisk, so nothing written there persists a reboot, and it isn't a problem. Unless you mean ~/tmp, in which case I've not got one of those despite using QMMP since my last reflash, I think.

So, I tried this out. Works well, though it'd be nicer if it actually fit on the screen with the standard xfce environment. I don't do QT so I don't know how easy it would be to e.g. move the buttons over the the right, or shrink the grid.

Edit: Hmm, your screenshots in the FP suggest I can do that already somehow. Should that be made default? In the mean time, I'll have a look at the options.
 
Hi all !

@levi : thanks for the explanation :)

@ptitSeb and @canseco : sorry for the noise + useless latest build...

EDIT : @levi : go to Settings > Widescreen layout + maximize window. I'll make it a default in the next build :)

Cheers, Magic Sam
 
Last edited:
Thanks, I've found widescreen setting now (and it can be set in the config by adding Widescreen=true to the [general] section). Unfortunately, it still doesn't quite fit my Pandora's screen with the highlight button being cropped by the system panel, and the 9 button being entirely obscured, but at least now pen and pencil are unobscured, and the play area remains uncropped, so if you use the the d-pad and keyboard to set squares this is much better.

And this will fit without trouble on the higher resolution pyra screen, if you bring it to that format. So there's limited benefit in making it fit the Pandora perfectly these days, I suspect.
 
Hi all :)

Build #5 in on the Repo (still uploading):

http://repo.openpandora.org/?page=detail&app=simsu-magicsam

New in build #5

- Removed previous useless changes
- Provided a default configuration file with widescreen mode ON (you still have to maximize the window though)
- Replaced initial seed from my configuration file with a "random enough large number" (nanoseconds, i.e `date +%N`)

Cheers, Magic Sam
 
Last edited:
Back
Top