Status of ScummVM In Chrome OS [Updated with Success]

General chat related to ScummVM, adventure gaming, and so on.

Moderator: ScummVM Team

Post Reply
Mascott106
Posts: 5
Joined: Fri Mar 27, 2015 9:07 am
Location: New Jersey
Contact:

Status of ScummVM In Chrome OS [Updated with Success]

Post by Mascott106 »

When I first got a Chromebook a few years ago, I was a little disappointed that there wasn't a way to use it on my new laptop, but I totally understood why. The demo on the Web Store doesn't support user directories, and at the time it was little more than a Native Client demo. Now, though, having gotten my second Chromebook, I'm wondering if there have been any developments when it comes to ScummVM on these little barebones systems. Between Chromebooks really "happening," NaCl becoming commonplace, offline apps permeating the store and Android apps running on the OS, I'd imagine it's more possible, realistic, and potentially simpler to develop than ever.

So my question is: Is there currently a good, available solution for using ScummVM on Chrome OS, and using it in full screen, other than installing Ubuntu onto the machine? Or have I completely missed something simple and it's been figured out for years?
Last edited by Mascott106 on Tue Apr 28, 2015 10:11 pm, edited 1 time in total.
Mascott106
Posts: 5
Joined: Fri Mar 27, 2015 9:07 am
Location: New Jersey
Contact:

Post by Mascott106 »

Okay, so just a few days after I posted this, Google released the ARC Welder - It allows developers to run Android apps with the Android Runtime for Chrome, really quickly, easily, and officially.
https://developer.chrome.com/apps/getstarted_arc
I tried baking ScummVM's APK with the ARC Welder, and it seems to work for a moment, giving a loading screen, but then crashes every time after loading in, unable to get to the actual menu proper. Anyone have any expertise on what might need to be done to get ScummVM running as a Chrome App through ARC? It seems to be the simplest solution, as well as being official rather than a hack.
digitall
ScummVM Developer
Posts: 1064
Joined: Thu Aug 02, 2012 1:40 pm

Post by digitall »

ScummVM's Android port uses Native Code i.e. the NDK. I would suspect that this is not supported (Unless the ARC Welder creates a ARM VM internally to run this...)
Mascott106
Posts: 5
Joined: Fri Mar 27, 2015 9:07 am
Location: New Jersey
Contact:

Post by Mascott106 »

I was able to get the Thursday's nightly ARM build of the Android port to build and launch as a Chrome app, and it seems to work perfectly fine - At least, the part that does work, which is the menu. The ScummVM cursor and the Chrome OS cursor double up, but there are bigger fish to fry at the moment: ARC creates its own weird little Android filesystem that you can't access from Chrome outside of developer mode, and I can't get it to mount the only really accessible folder, the "Downloads" folder, in order to add any games. With the Chrome Developer Kit I can edit the Manifest.json that's built for permissions and what not, but enabling External Directories doesn't seem to do the trick.

As for whether or not it's a VM... Maybe? I mean that would make the most sense - I'm on an Intel Celeron Chromebook, and the x86 Android version won't launch successfully.

Anyway, here's what the Android version looks like running in Chrome OS after being put through ARC Welder. Image
User avatar
lazylazyjoe
Posts: 131
Joined: Mon Oct 01, 2007 4:14 pm

Post by lazylazyjoe »

Have you tried using ARChon and the ARChon packager instead?
It has an option "Enable/Disable External Directories" when packaging.

Or maybe ARC welder has a similar option?
Mascott106
Posts: 5
Joined: Fri Mar 27, 2015 9:07 am
Location: New Jersey
Contact:

Post by Mascott106 »

lazylazyjoe wrote:Have you tried using ARChon and the ARChon packager instead?
It has an option "Enable/Disable External Directories" when packaging.

Or maybe ARC welder has a similar option?
ARChon is kind of a hacked method, and requires a non-standard Android Runtime. Either way, I can't get it to launch the APK at all, whereas I can get to the menu with ARC Welder. If we can get it working with ARC, it's a totally trivial matter to package it as an official Chrome extension, upload it to the Web Store and bam, ScummVM supports Chrome OS exactly as well as it supports Android.

Enabling external directories is simply a matter of modifying a specific line in the Manifest.json file, but I can't seem to get it to take - As far as I can tell, ScummVM can only really look inside the sandboxed virtual filesystem that ARC creates as it pretends it's a phone.

Reading more into the local filesystem issue, I've found that it's possible to do it, and a solution has been proposed, but I honestly have no idea how to actually implement that solution.
http://stackoverflow.com/questions/2942 ... chrome-arc
It has to do with starting the activity with a specific intent, which is far deeper than I'm able to get into. (Have I mentioned that I know next to nothing about programming and I just want to be able to play Full Throttle on my Chromebook?)

And for everyone else, here's a Dropbox link to the actual packaged Chrome extension with ARC. To install it should just be a matter of enabling developer mode and loading it as an unpacked extension. https://www.dropbox.com/s/czrdhhxb4qg7s ... g.zip?dl=0
Mascott106
Posts: 5
Joined: Fri Mar 27, 2015 9:07 am
Location: New Jersey
Contact:

Post by Mascott106 »

Y'all.
Image
Y'ALL.
OU812
Posts: 14
Joined: Fri May 08, 2015 7:27 pm

Post by OU812 »

Can you share what you did? I'd love to give it a try.
ptterb
Posts: 1
Joined: Tue Sep 15, 2015 7:04 pm

Post by ptterb »

reviving an old thread, not OP but got it working this morning! Here's what I did:

1) get Arc welder extension
2) download nightly Scummvm package for android ARM
3) run arc welder with the following in the 'additional metadata' box:
{"enableExternalDirectory": true}

That's it! when you run the newly-created scummvm app it will ask you to choose a directory on your chromebook for the app to use. You can then copy game files to that directory in chromeOS.
r-kid
Posts: 1
Joined: Tue Sep 15, 2015 6:49 pm

Post by r-kid »

I came across this thread trying to get Scummvm to work on my Chromebook & to load Monkey island. I've managed to do it :D
Image


Here's how:

I downloaded the apk file from the google play store.
On my chromebook I installed Arc Welder & Text
In arc welder, add the apk file, & create package (zip) file.

Go to this zip file & extract all the files to a new folder

Within the extracted files is one called manifest.json
Open this with Text
Scroll down to permissions you will see
Image



You need to amend this to the following:

Image



Save file ensuring its still the same name.

Now in chrome://extensions/ click load unpacked extension, select the folder where you extracted the files to & click open, scummvm will now be added to chrome:
Image

Before you open it, create a new folder where you will store your game files
The first time you launch it you should be requested to select a folder to access, select the one created above.

Each game needs to be in its own folder under this:

Now in ScummVM click add game & browse to /storage/sdcard/

et voilà you will see your games:
Image

Enjoy
nvader90
Posts: 2
Joined: Tue Dec 29, 2015 9:46 pm

Post by nvader90 »

Hi, so per the discussion on this page I was able to get ScummVM and The Secret of Monkey Island running on my wife's new Toshiba Chromebook 2. Our only issue is we can't figure out how to pull up the in game menu (to save or load games, for example).

I see that in Android the way you pull up the menu is to press the "Android Menu" button, but so far as I can tell find no way to simulate this in Chrome OS, and the normal F5 doesn't do the trick.

The only solution I have found to save and load is to hit control-d and use the debugger to type commands, which obviously is less than ideal.

Any help would be appreciated.
User avatar
md5
ScummVM Developer
Posts: 2250
Joined: Thu Nov 03, 2005 9:31 pm
Location: Athens, Greece

Post by md5 »

nvader90 wrote:Hi, so per the discussion on this page I was able to get ScummVM and The Secret of Monkey Island running on my wife's new Toshiba Chromebook 2. Our only issue is we can't figure out how to pull up the in game menu (to save or load games, for example).

I see that in Android the way you pull up the menu is to press the "Android Menu" button, but so far as I can tell find no way to simulate this in Chrome OS, and the normal F5 doesn't do the trick.

The only solution I have found to save and load is to hit control-d and use the debugger to type commands, which obviously is less than ideal.

Any help would be appreciated.
The key for the in-game menu is Control-F5... have you tried that one?
nvader90
Posts: 2
Joined: Tue Dec 29, 2015 9:46 pm

Post by nvader90 »

I did. I am a veteran ScummVM user on other platforms (Mac and PC) so that was my first instinct, and no dice. I assume because it is the Android version of ScummVM and it wants me to hit the Android menu button, which I am unable to do because it is a Chromebook.
Post Reply