ScummVM running on FrameBuffer

https://github.com/MiSTer-devel/Main_MiSTer/wiki

Moderators: Mug UK, Zorro 2, Greenious, spiny, Sorgelig, Moderator Team

TMA
Atarian
Atarian
Posts: 4
Joined: Wed May 29, 2019 5:34 am

Re: ScummVM running on FrameBuffer

Postby TMA » Thu Jun 13, 2019 4:03 pm

FYIO:
I have had an error while running the installer.
The files for 'libfaad2_2.8.8-2' at 'http://http.us.debian.org/debian/pool/main/f/' doesn't exists:

Code: Select all

installDEBS "$DEB_REPO/f/faad2|libfaad2_2.8.8-2|lib*|3|$INSTALL_DIR"


I changed it locally to '3'

Code: Select all

installDEBS "$DEB_REPO/f/faad2|libfaad2_2.8.8-3|lib*|3|$INSTALL_DIR"


The installer-script works fine now.

Sorgelig
Ultimate Atarian
Ultimate Atarian
Posts: 5229
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: ScummVM running on FrameBuffer

Postby Sorgelig » Thu Jun 13, 2019 6:40 pm

I suggest to move all required libs (binaries) to ScummVM repo so there won't be cases when some libraries on debian repo disappear.

BBond007
Captain Atari
Captain Atari
Posts: 391
Joined: Wed Feb 28, 2018 3:23 am

Re: ScummVM running on FrameBuffer

Postby BBond007 » Thu Jun 13, 2019 11:34 pm

Sorgelig wrote:I suggest to move all required libs (binaries) to ScummVM repo so there won't be cases when some libraries on debian repo disappear.


Seems like a good idea - I had no idea they would disappear :)

I have duplicated all DEBs to the MiSTer_ScummVM github repo and modified the ScummVM_Installer.sh to download them from the repo...

    --> ScummVM_2_0_0 (exe) has been updated to include support for libjpeg and libtheora.
    --> ScummVM_1_7_0 (exe + script) will no longer be installed by default.
    --> "scummmodern" theme can optionally be installed by setting "DEFAULT_THEME=TRUE"
https://github.com/bbond007/MiSTer_ScummVM/raw/master/ScummVM_Installer.sh

For those interested, I did get around to trying MiSTer ScummVM with my vintage MIDI stack :)

Sam & Max Hit the Road (Intro) - Roland SC88pro Sound --> https://youtu.be/76Qtlfa61Go

User avatar
Eero Tamminen
Atari God
Atari God
Posts: 1984
Joined: Sun Jul 31, 2011 1:11 pm

Re: ScummVM running on FrameBuffer

Postby Eero Tamminen » Fri Jun 14, 2019 4:53 pm

Sorgelig wrote:I suggest to move all required libs (binaries) to ScummVM repo so there won't be cases when some libraries on debian repo disappear.


I haven't looked at the script, but why it's not just doing "apt download <packagename>" to get suitable/latest version for the given release?

Locutus73
Captain Atari
Captain Atari
Posts: 493
Joined: Wed Feb 07, 2018 6:13 pm

Re: ScummVM running on FrameBuffer

Postby Locutus73 » Fri Jun 14, 2019 6:22 pm

BBond007 wrote:
Sorgelig wrote:I suggest to move all required libs (binaries) to ScummVM repo so there won't be cases when some libraries on debian repo disappear.


Seems like a good idea - I had no idea they would disappear :)

I have duplicated all DEBs to the MiSTer_ScummVM github repo and modified the ScummVM_Installer.sh to download them from the repo...


That or simply make the filter in the installDEBS parameter less restrictive. You don’t need to filter an exact version, i.e. libfaad_2.8.8-2 or -3... filter for libfaad_2.8.8 or _2.8 or _2 and the function will pick the highest alphabetical match. I usually try to use filters which match the highest Debian Stretch DEB package (for libc compatibility).

Regards.

Locutus73

Sorgelig
Ultimate Atarian
Ultimate Atarian
Posts: 5229
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: ScummVM running on FrameBuffer

Postby Sorgelig » Fri Jun 14, 2019 7:53 pm

Locutus73 wrote:That or simply make the filter in the installDEBS parameter less restrictive. You don’t need to filter an exact version, i.e. libfaad_2.8.8-2 or -3... filter for libfaad_2.8.8 or _2.8 or _2 and the function will pick the highest alphabetical match. I usually try to use filters which match the highest Debian Stretch DEB package (for libc compatibility).

for long term, it's better to have a copy in own repo.

BBond007
Captain Atari
Captain Atari
Posts: 391
Joined: Wed Feb 28, 2018 3:23 am

Re: ScummVM running on FrameBuffer

Postby BBond007 » Fri Jun 14, 2019 8:53 pm

Eero Tamminen wrote:I haven't looked at the script, but why it's not just doing "apt download <packagename>" to get suitable/latest version for the given release?


We don't have 'apt' in the MiSTer Linux.

Also, we have agreed we want programs like this to be independent and not to need a bunch of baggage installed in the main OS - leaving the Linux as minimal as possible. Short of using chroot I'm not sure if it is possible to make 'apt-get' install things in an alternate location.

Locutus73 wrote:That or simply make the filter in the installDEBS parameter less restrictive. You don’t need to filter an exact version, i.e. libfaad_2.8.8-2 or -3... filter for libfaad_2.8.8 or _2.8 or _2 and the function will pick the highest alphabetical match. I usually try to use filters which match the highest Debian Stretch DEB package (for libc compatibility).


Sorgelig wrote:for long term, it's better to have a copy in own repo.


I agree with Sorgelig and I think its probably better (for user support) if everyone is using a matching ScummVM environment without any chance of variation as far as the installed libraries.

At the very least, this may help to eliminate the "no version information available (required by ..." - warnings which there seem to be more of after the last SD Installer (Linux OS) update.

:shrug:

User avatar
Eero Tamminen
Atari God
Atari God
Posts: 1984
Joined: Sun Jul 31, 2011 1:11 pm

Re: ScummVM running on FrameBuffer

Postby Eero Tamminen » Sat Jun 15, 2019 12:04 am

BBond007 wrote:Also, we have agreed we want programs like this to be independent and not to need a bunch of baggage installed in the main OS - leaving the Linux as minimal as possible. Short of using chroot I'm not sure if it is possible to make 'apt-get' install things in an alternate location.


I'm using this method to install things to current dir:

Code: Select all

$ apt download <packagename>
$ ar x <packagename>*.deb
$ tar xvf data.tar.gz
...repeat until at end...
$ ldconfig -r . ...


(At home to create small m68k rootfs partitions, and at work to do small x86 containers.)

But apt itself is a bit large, probably 10MB with all the deps. Plus the package database on top of that (size of that depends on how large repos are enable).

Sorgelig
Ultimate Atarian
Ultimate Atarian
Posts: 5229
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: ScummVM running on FrameBuffer

Postby Sorgelig » Sat Jun 15, 2019 12:41 am

apt is definitely a foreign thing for MiSTer.

BBond007
Captain Atari
Captain Atari
Posts: 391
Joined: Wed Feb 28, 2018 3:23 am

Re: ScummVM running on FrameBuffer

Postby BBond007 » Sat Jun 15, 2019 12:47 am

Sorgelig wrote:apt is definitely a foreign thing for MiSTer.


Same with 'ldconfig'

Eero Tamminen wrote:I'm using this method to install things to current dir:

Code: Select all

$ apt download <packagename>
$ ar x <packagename>*.deb
$ tar xvf data.tar.gz
...repeat until at end...
$ ldconfig -r . ...



If you look at the 'ScummVM_Installer.sh' you'll see that is exactly how it works respective to 'ar' and 'tar'. You can also look at Locutus73's 'ini_settings.sh' which provided the basis for this functionality. https://github.com/MiSTer-devel/Scripts_MiSTer/blob/master/ini_settings.sh

Binaries 'apt' and 'ldconfig' are not included with MiSTer Linux, so instead 'curl' is used (instead of 'apt') and environment variable LD_LIBRARY_PATH is set by the script 'ScummVM_2_0_0.sh' (which is downloaded by the install process).

User avatar
Eero Tamminen
Atari God
Atari God
Posts: 1984
Joined: Sun Jul 31, 2011 1:11 pm

Re: ScummVM running on FrameBuffer

Postby Eero Tamminen » Sun Jun 16, 2019 9:42 pm

Few comments:

BBond007 wrote:If you look at the 'ScummVM_Installer.sh' you'll see that is exactly how it works respective to 'ar' and 'tar'.


I assume you mean this: https://github.com/bbond007/MiSTer_Scum ... staller.sh

Note that if you leave compression method option out, (GNU) tar will automatically use correct one based on the file name extension (like in my example).

BBond007 wrote:You can also look at Locutus73's 'ini_settings.sh' which provided the basis for this functionality. https://github.com/MiSTer-devel/Scripts_MiSTer/blob/master/ini_settings.sh


While it is Bash script, it could try avoiding unnecessary Bashisms, so that parts of it would work also with other shells. For example defining shell functions like "function FunctionName { ... }" sticks badly to eye, as standard shell syntax for defining functions is "FunctionName () { ... }".

FYI: On Debian & Ubuntu most scripts (especially at bootup) are run with Dash (which is is a standard Bourne/Posix shell), as Bash takes significantly more RAM & disk space and is much slower, due to being an interactive shell with large startup overhead. There's even a separate tool for detecting (in most cases) unnecessary bash specific shell syntax usage, called "checkbashisms".

BBond007 wrote:Binaries 'apt' and 'ldconfig' are not included with MiSTer Linux, so instead 'curl' is used (instead of 'apt') and environment variable LD_LIBRARY_PATH is set by the script 'ScummVM_2_0_0.sh' (which is downloaded by the install process).


Thanks! What Linux distro Mister is based on?

Sorgelig
Ultimate Atarian
Ultimate Atarian
Posts: 5229
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: ScummVM running on FrameBuffer

Postby Sorgelig » Sun Jun 16, 2019 10:06 pm

Eero Tamminen wrote:While it is Bash script, it could try avoiding unnecessary Bashisms, so that parts of it would work also with other shells. For example defining shell functions like "function FunctionName { ... }" sticks badly to eye, as standard shell syntax for defining functions is "FunctionName () { ... }".

FYI: On Debian & Ubuntu most scripts (especially at bootup) are run with Dash (which is is a standard Bourne/Posix shell), as Bash takes significantly more RAM & disk space and is much slower, due to being an interactive shell with large startup overhead. There's even a separate tool for detecting (in most cases) unnecessary bash specific shell syntax usage, called "checkbashisms".

Didn't you forget it's exactly for MiSTer? "on Debian and Ubuntu" is not applicable here. If bash allows to make something simpler, then there is no point to avoid it. It's explicitly points bash in the header. So here we are.

Eero Tamminen wrote:What Linux distro Mister is based on?

None of.

Locutus73
Captain Atari
Captain Atari
Posts: 493
Joined: Wed Feb 07, 2018 6:13 pm

Re: ScummVM running on FrameBuffer

Postby Locutus73 » Mon Jun 17, 2019 8:11 am

Sorgelig wrote:for long term, it's better to have a copy in own repo.

Speaking of which... are you pro or con adding ScummVM_Installer.sh (just the installer, not the whole ScummVM) to the updater additional repositories, so it will be automatically downloaded in the Scripts directory when updating?

Thank you in advance.
Regards.

Locutus73

Sorgelig
Ultimate Atarian
Ultimate Atarian
Posts: 5229
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: ScummVM running on FrameBuffer

Postby Sorgelig » Mon Jun 17, 2019 9:41 am

It's better not include it into updater.
It's better to keep Linux apps separate. Also it's pretty new area for MiSTer. If there will be other Linux apps/games then it can be a part of separate package, so FPGA and Linux won't be mixed into each other.

For interactive updater with menu where you can select what to update, it's possible to add ScummVM as well, but there should be a clear division what belongs to FPGA (Linux OS update is a part of FPGA) and what is not FPGA.

Locutus73
Captain Atari
Captain Atari
Posts: 493
Joined: Wed Feb 07, 2018 6:13 pm

Re: ScummVM running on FrameBuffer

Postby Locutus73 » Mon Jun 17, 2019 9:59 am

Sorgelig wrote:It's better not include it into updater.
It's better to keep Linux apps separate. Also it's pretty new area for MiSTer. If there will be other Linux apps/games then it can be a part of separate package, so FPGA and Linux won't be mixed into each other.

For interactive updater with menu where you can select what to update, it's possible to add ScummVM as well, but there should be a clear division what belongs to FPGA (Linux OS update is a part of FPGA) and what is not FPGA.


Perfect, very clear.
I'm actually thinking/designing/prototyping a new "native" integrated/consistent installing/uninstalling/updating system/strategy which will distinguish between FPGA cores install/uninstall/update (in a single consistent interface), System update (linux + main MiSTer + menu.rbf which often are strictly tied togeter) and Extras install/uninstall/update, putting all previous experiences togeter in a better package... but time will tell, now I'm just in an early stage.

Regards.

Locutus73

spidersfrommars
Atariator
Atariator
Posts: 27
Joined: Mon Nov 20, 2017 3:39 am

Re: ScummVM running on FrameBuffer

Postby spidersfrommars » Mon Jun 17, 2019 4:09 pm

Would it be possible to have a system where it installs and launches to a seperate linux system/img? My concern is that adding new apps and games would bloat the main linux subsystem, making it slower.

Sorgelig
Ultimate Atarian
Ultimate Atarian
Posts: 5229
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: ScummVM running on FrameBuffer

Postby Sorgelig » Mon Jun 17, 2019 5:00 pm

spidersfrommars wrote:Would it be possible to have a system where it installs and launches to a seperate linux system/img? My concern is that adding new apps and games would bloat the main linux subsystem, making it slower.

it won't make it slower.
All supposed games won't be installed inside linux image. Also nothing will be launched at start. There is no affection to work at all.

BBond007
Captain Atari
Captain Atari
Posts: 391
Joined: Wed Feb 28, 2018 3:23 am

Re: ScummVM running on FrameBuffer

Postby BBond007 » Mon Jun 17, 2019 10:17 pm

Sorgelig wrote:All supposed games won't be installed inside linux image. Also nothing will be launched at start. There is no affection to work at all.


100%

Also no ScummVM required libraries or executables are installed in the Linux Image either.

spidersfrommars wrote:Would it be possible to have a system where it installs and launches to a seperate linux system/img? My concern is that adding new apps and games would bloat the main linux subsystem, making it slower.


The installer does not alter your linux.img at all...

Adding a separate Linux image would unnecessarily complicate things adding no additional benefits...

All files are installed in /media/fat/ScummVM. If you remove "ScummVM" everything will be uninstalled from your MiSTer...

User avatar
Newsdee
Atari God
Atari God
Posts: 1482
Joined: Fri Sep 19, 2014 8:40 am

Re: ScummVM running on FrameBuffer

Postby Newsdee » Tue Jun 18, 2019 12:55 am

From an end user point of view, yes, let's have everything inside a zip / tar file / repo instead of having lots of external
dependencies. I think apt and the like is only good when all packages are actively maintained, but not for a "soft core" which may not be revisited for a while once done (same as FPGA cores)

BBond007
Captain Atari
Captain Atari
Posts: 391
Joined: Wed Feb 28, 2018 3:23 am

Re: ScummVM running on FrameBuffer

Postby BBond007 » Tue Jun 18, 2019 4:04 am

Newsdee wrote:From an end user point of view, yes, let's have everything inside a zip / tar file / repo instead of having lots of external
dependencies. I think apt and the like is only good when all packages are actively maintained, but not for a "soft core" which may not be revisited for a while once done (same as FPGA cores)


Are you asking for this? because I think what you are asking its already done...

All DEBs used to make ScummVM work have already been moved to my github repo and the most current ScummVM_Installer.sh pulls from there...

I will also be including options (In the installer) to install both a new ScummVM 2.1 build and a ScummVM 2.1 "Unstable" build which will includes 21 game engines currently in development.

Many of these engines are just that, work in progress and unstable.
Last edited by BBond007 on Tue Jun 18, 2019 5:08 pm, edited 3 times in total.

User avatar
Newsdee
Atari God
Atari God
Posts: 1482
Joined: Fri Sep 19, 2014 8:40 am

Re: ScummVM running on FrameBuffer

Postby Newsdee » Tue Jun 18, 2019 4:10 am

Not asking, just "voting" in that direction if anybody was considering alternatives.

Locutus73
Captain Atari
Captain Atari
Posts: 493
Joined: Wed Feb 07, 2018 6:13 pm

Re: ScummVM running on FrameBuffer

Postby Locutus73 » Tue Jun 18, 2019 5:45 am

BBond007 wrote:
Newsdee wrote:From an end user point of view, yes, let's have everything inside a zip / tar file / repo instead of having lots of external
dependencies.

Are you asking for this? because I think what you are asking its already done...

The only nuisance I see with this approach is that (I think) the license of each and every binary file (executable or .so library) has to be put on the GitHub repo along the deb/zip file; and a link to the appropriate project page with the source too. A little bit additional work than just copying the archives.
I might be wrong tho.

Regards.

Locutus73

jayp76
Atari freak
Atari freak
Posts: 51
Joined: Wed Oct 17, 2018 10:09 am

Re: ScummVM running on FrameBuffer

Postby jayp76 » Tue Jun 18, 2019 6:07 am

Nice to see ScummVM getting further releases for the MiSTer.

Hopefully this will run fine, too.
https://www.scummvm.org/news/20190616/

BBond007
Captain Atari
Captain Atari
Posts: 391
Joined: Wed Feb 28, 2018 3:23 am

Re: ScummVM running on FrameBuffer

Postby BBond007 » Tue Jun 18, 2019 6:30 am

jayp76 wrote:Nice to see ScummVM getting further releases for the MiSTer.

Hopefully this will run fine, too.
https://www.scummvm.org/news/20190616/

The game itself runs OK.

The FMV is no good... Slow with the audio breaking up.

It does the same thing on my RPi 3B+

The FMV is OK on windows but the FMV audio/video seem to get a little out of sync.

Maybe there will be further improvements to the engine making it acceptable on less powerful platforms.
You do not have the required permissions to view the files attached to this post.

jpxdude
Retro freak
Retro freak
Posts: 14
Joined: Mon Nov 19, 2018 9:25 pm

Re: ScummVM running on FrameBuffer

Postby jpxdude » Fri Jun 21, 2019 9:27 pm

Love that we have ScummVM as an option! Thank you so much!

I tried this today with MI 1 and 2 talkie versions and they work well. I did try using the MT32 emulator with MT32 ROMs on MI2 but it was awfully slow/stuttery/unplayable unfortunately. The dream would be to have MT32 or SC55/SC88 working in FPGA concurrently with ScummVM running. Wow that would be amazingly awesome...

I have a couple of hardware MT32 units and an SC55 mk2, just need to find my midi cables and power supply. Will try soon. Thanks for this!!


Return to “MiSTer”

Who is online

Users browsing this forum: No registered users and 7 guests