PINE64
Pinebook gaming thread - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: Pinebook (https://forum.pine64.org/forumdisplay.php?fid=76)
+--- Forum: General Discussion on Pinebook (https://forum.pine64.org/forumdisplay.php?fid=77)
+--- Thread: Pinebook gaming thread (/showthread.php?tid=6940)

Pages: 1 2


Pinebook gaming thread - UltraBloxX - 12-07-2018

While Pinebook is not a very powerful machine, it's still quite capable. And while it's certainly not a "gaming laptop", it could still run graphically less demanding games quite well. Moreover, great battery life could keep you entertained throughout a long trip, for instance. What games do you play on your Pinebook?

One of best genres to play on a Pinebook in my opinion, is roguelike games. Great keyboard, optimal size and weight (for 11.6"), long battery life - all this makes Pinebook an ultimate portable roguelike machine. And as roguelikes are usually very modest with system requirements - it's a perfect kind of games to play on Pinebook. NetHack, Angband, Dungeon Crawl Stone Soup - all they can be played on a Pinebook, and it's a very enjoyable experience.

My personal favorite is NetHack, which I do play quite often on my Pinebook:

[Image: nethack.gif]

Many major roguelikes are already packed in most distros repositories.


RE: Pinebook gaming thread - Luke - 12-07-2018

You could run retroarch on it just fine - you'd just have to compile on an image with acceleration and in a way so it would use blob.


RE: Pinebook gaming thread - vnomis - 12-07-2018

(12-07-2018, 05:51 AM)Luke Wrote: You could run retroarch on it just fine - you'd just have to compile on an image with acceleration and in a way so it would use blob.

Any tutorial or place to start in order to be able to run retroarch?, Luke


RE: Pinebook gaming thread - Luke - 12-07-2018

(12-07-2018, 06:00 AM)vnomis Wrote:
(12-07-2018, 05:51 AM)Luke Wrote: You could run retroarch on it just fine - you'd just have to compile on an image with acceleration and in a way so it would use blob.

Any tutorial or place to start in order to be able to run retroarch?, Luke

I know how to make it run with off of a minimal image (with xorg). So you could have an installation on a SD card and pop that in for retrogames.
But I'd prefer to have it working ontop of a DE. I'm traveling thoughout December, which makes it unlikely that I'll look into it now.
But, if you want to try then I would use the Neon image OR ayufan's 18.04 mate and do as follows

Install dependencies :


Code:
sudo apt-get install debhelper pkg-config libc6-dev libpulse-dev libsdl2-dev libxml2-dev libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libv4l-dev x11proto-xext-dev libxxf86vm-dev libxinerama-dev libudev-dev libusb-1.0-0-dev libasound2-dev libxv-dev libopenal-dev libjack-jackd2-dev libfreetype6-dev libgbm-dev libdrm-dev libegl1-mesa-dev python3-dev zlib1g-dev libavdevice-dev

Then fetch Retroarch source


Code:
git clone https: //github.com/libretro/RetroArch.git


Then for compiling my guess is:

Code:
./configure --enable-xmb --enable-neon --enable-x11 --disable-opengl --disable-opengles3 --enable-mali_fbdev --enable-floathard --disable-qt --enable-ffmpeg --enable-sdl2 --disable-wayland --enable-opengles


Then make
Code:
make -j4
sudo make install

You could try both gles and sdl2 in Retroarch and see if either works.  Granted it works, then you can just install cores using apt-get after .... or so I think.
Very curious to hear if it works ! - let me know

[edit] someone much smarter (mrfixit2001) said he thinks...
Quote:"(...) you'd also need the libxkbcommon-dev dependency, and the build flag for --enable-egl and --disable-sdl.
"


RE: Pinebook gaming thread - vnomis - 12-07-2018

(12-07-2018, 06:35 AM)Luke Wrote:
(12-07-2018, 06:00 AM)vnomis Wrote:
(12-07-2018, 05:51 AM)Luke Wrote: You could run retroarch on it just fine - you'd just have to compile on an image with acceleration and in a way so it would use blob.

Any tutorial or place to start in order to be able to run retroarch?, Luke

I know how to make it run with off of a minimal image (with xorg). So you could have an installation on a SD card and pop that in for retrogames.
But I'd prefer to have it working ontop of a DE. I'm traveling thoughout December, which makes it unlikely that I'll look into it now.
But, if you want to try then I would use the Neon image OR ayufan's 18.04 mate and do as follows

Install dependencies :


Code:
sudo apt-get install debhelper pkg-config libc6-dev libpulse-dev libsdl2-dev libxml2-dev libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libv4l-dev x11proto-xext-dev libxxf86vm-dev libxinerama-dev libudev-dev libusb-1.0-0-dev libasound2-dev libxv-dev libopenal-dev libjack-jackd2-dev libfreetype6-dev libgbm-dev libdrm-dev libegl1-mesa-dev python3-dev zlib1g-dev libavdevice-dev

Then fetch Retroarch source


Code:
git clone https: //github.com/libretro/RetroArch.git


Then for compiling my guess is:

Code:
./configure --enable-xmb --enable-neon --enable-x11 --disable-opengl --disable-opengles3 --enable-mali_fbdev --enable-floathard --disable-qt --enable-ffmpeg --enable-sdl2 --disable-wayland --enable-opengles


Then make
Code:
make -j4
sudo make install

You could try both gles and sdl2 in Retroarch and see if either works.  Granted it works, then you can just install cores using apt-get after .... or so I think.
Very curious to hear if it works ! - let me know

[edit] someone much smarter (mrfixit2001) said he thinks...
Quote:"(...) you'd also need the libxkbcommon-dev dependency, and the build flag for --enable-egl and --disable-sdl.
"
I tried with the NEON image and got till the configure command but got this response:

Checking operating system ... Linux (KDE neon User Edition 5.14 18.04)
Checking for suitable working C compiler ... /usr/bin/gcc works
Checking for suitable working C++ compiler ... /usr/bin/g++ works
Checking for pkg-config ... /usr/bin/pkg-config
Checking for availability of switch -std=gnu99 in /usr/bin/gcc ... yes
Checking for availability of switch -Wno-unused-result in /usr/bin/gcc ... yes
Checking for availability of switch -Wno-unused-variable in /usr/bin/gcc ... yes
Checking function sd_get_machine_names in -lsystemd ... no
Checking presence of package bcm_host ... no
Checking function bcm_host_init in -lbcm_host ... no
Checking presence of package egl ... 18.0.5
Checking function ass_library_init in -lass ... no
Checking function -ldl in -lretro ... no
Checking function pthread_create in -lpthread ... no
Checking function dlopen in -ldl ... no
Checking function socket in -lc ... no
Warning: All networking features have been disabled.
Checking function fcntl in -lc ... no
Checking function getopt_long in -lc ... no
Checking presence of package alsa ... 1.1.3
Checking presence of header file sys/soundcard.h ... yes
Checking presence of header file soundcard.h ... no
Checking existence of -lossaudio ... no
Checking function alcOpenDevice in -lopenal ... no
Checking presence of package rsound >= 1.1 ... no
Checking presence of package libroar ... no
Checking presence of package jack >= 0.120.1 ... 1.9.12
Checking presence of package libpulse ... 11.1
Checking presence of package sdl2 >= 2.0.0 ... 2.0.8
Checking presence of package flac ... no
Checking existence of -lFLAC ... no
Checking presence of package libusb-1.0 >= 1.0.13 ... 1.0.21
Checking presence of package zlib ... 1.2.11
Checking presence of package libmpv ... no
Notice: Not building with threading support. Will skip FFmpeg.
Checking presence of package gbm >= 9.0 ... 18.0.5
Checking presence of package libdrm ... 2.4.91
Checking presence of package libxml-2.0 ... 2.9.4
Checking presence of package glesv2 ... 18.0.5
Checking presence of package vg ... no
Checking existence of -lOpenVG ... no
Checking presence of package libv4l2 ... 1.14.2
Checking presence of package freetype2 ... 21.0.15
Checking presence of package x11 ... 1.6.4
Checking presence of package xcb ... 1.13
Checking presence of package wayland-cursor >= 1.14 ... 1.14.0
Checking presence of package wayland-protocols >= 1.13 ... no
Checking presence of package xkbcommon >= 0.3.2 ... 0.8.0
Checking presence of package xext ... 1.3.3
Checking presence of package xxf86vm ... 1.1.4
Notice: wayland-egl or wayland-protocols not present. Skiping Wayland code paths.
Checking existence of -lXrandr ... no
Checking presence of package xinerama ... 1.1.3
Checking presence of package xv ... 1.0.11
Checking presence of package libudev ... 237
Checking presence of header file linux/parport.h ... yes
Checking presence of header file linux/ppdev.h ... yes
Checking function strcasestr in -lc ... no
Checking function mmap in -lc ... no
Checking function vkCreateInstance in -lvulkan ... no
Checking presence of predefined macro __ARM_NEON__ ... no
Build assumed that __ARM_NEON__ is defined, but it's not. Exiting ...


i cannot locate the missing packages, so had to stop there


RE: Pinebook gaming thread - Luke - 12-07-2018

Try again with --enable-egl and --disable-sdl
and also
change --enable-neon to --disable-neon


RE: Pinebook gaming thread - vnomis - 12-07-2018

(12-07-2018, 03:57 PM)Luke Wrote: Try again with --enable-egl and --disable-sdl
and also
change --enable-neon to --disable --neon

The configuration file works with those parameters but got the following error message when executing "make -j4":

CC input/drivers_joypad/linuxraw_joypad.c
CC input/common/linux_common.c
CC input/drivers/linuxraw_input.c
CC frontend/drivers/platform_unix.c
gcc: error: unrecognized command line option ‘-mfloat-abi=hard’
gcc: error: unrecognized command line option ‘-mfloat-abi=hard’
gcc: error: unrecognized command line option ‘-mfloat-abi=hard’
gcc: error: unrecognized command line option ‘-mfloat-abi=hard’
gcc: error: unrecognized command line option ‘-mfloat-abi=hard’
gcc: error: unrecognized command line option ‘-mfloat-abi=hard’
gcc: error: unrecognized command line option ‘-mfloat-abi=hard’
Makefile:191: recipe for target 'obj-unix/release/frontend/drivers/platform_unix.o' failed
make: *** [obj-unix/release/frontend/drivers/platform_unix.o] Error 1
make: *** Waiting for unfinished jobs....
Makefile:191: recipe for target 'obj-unix/release/input/common/linux_common.o' failed
make: *** [obj-unix/release/input/common/linux_common.o] Error 1
Makefile:191: recipe for target 'obj-unix/release/input/drivers/linuxraw_input.o' failed
make: *** [obj-unix/release/input/drivers/linuxraw_input.o] Error 1
gcc: error: unrecognized command line option ‘-mfloat-abi=hard’
Makefile:191: recipe for target 'obj-unix/release/input/drivers_joypad/linuxraw_joypad.o' failed
make: *** [obj-unix/release/input/drivers_joypad/linuxraw_joypad.o] Error 1

Any ideas?

Thanks for all your help


RE: Pinebook gaming thread - Luke - 12-07-2018

Looks like a compiler issue, I'll look into it.

Also, i wrote the syntax incorrectly (-disable --neon) should be --disable-neon
[edit] did you have correct syntax for --disable-neon ? - if not, perhaps its trying to cross-compile ?


RE: Pinebook gaming thread - vnomis - 12-07-2018

(12-07-2018, 04:28 PM)Luke Wrote: Looks like a compiler issue, I'll look into it.

Also, i wrote the syntax incorrectly (-disable --neon) should be --disable-neon
[edit] did you have correct syntax for --disable-neon ? - if not, perhaps its trying to cross-compile ?

Yes, and added --disable-dynamic to correct the error Error: Dynamic loading of libretro is enabled, but your platform does not appear to have dlopen(), use --disable-dynamic or --with-libretro="-lretro".


RE: Pinebook gaming thread - Luke - 12-07-2018

(12-07-2018, 05:11 PM)vnomis Wrote:
(12-07-2018, 04:28 PM)Luke Wrote: Looks like a compiler issue, I'll look into it.

Also, i wrote the syntax incorrectly (-disable --neon) should be --disable-neon
[edit] did you have correct syntax for --disable-neon ? - if not, perhaps its trying to cross-compile ?

Yes, and added --disable-dynamic to correct the error Error: Dynamic loading of libretro is enabled, but your platform does not appear to have dlopen(), use --disable-dynamic or --with-libretro="-lretro".

Ok, do some googling and see what you come up with. I'll get back on this monday. Perhaps I'll even get a chance to fetch the original image on some stable internet and flash it to a SD card. Are you doing this on KDE Neon or another image ?