[G1 Android Development] TauPan:
Hi!

This is my first post on this forum, I hope I picked the right board and understood all the rules correctly.

I had a conversation with the author of the ScummVM android port about this.

Executive summary:

The problem is that ScummVM 1.0.0pre0 cannot locate a symbol that should be in the shared object that's part of the scumm plugin. The author thought that maybe cyanogenmod might have some changed linker behaviour, so that' why I'm asking here.

The gory details:

German T-Mobile G1

Cyanogenmod 4.2.7.1 at first, by now it's 4.2.8

ScummVM 1.0.0pre0

German VGA DOS Version of Day of the Tentacle

VGA DOS Version of Monkey Island 1

I first installed the libscumm plugin for scummvm, and then scummvm itself. Tried to add monkey island:

"ScummVM could not find any game in the specified directory!"

The same folder in scummvm on linux works. (I can even add it from the sdcard of my phone.)

Ok, so I said "wrong order, silly!", remove scummvm and the plugin, then reinstalled first scummvm, then the plugin. No help.

The "about" screen in ScummVM says nothing at all under "Available engines", so the plugin isn't even loaded.

Here's a logcat:

I/ActivityManager( 2777): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=org.inodes.gus.scummvm/.ScummVMActivity }

I/ActivityManager( 2777): Start proc org.inodes.gus.scummvm for activity org.inodes.gus.scummvm/.ScummVMActivity: pid=7626 uid=10128 gids={1015}

D/dalvikvm( 2759): GC freed 300 objects / 11472 bytes in 316ms

D/dalvikvm( 2759): GC freed 57 objects / 2536 bytes in 70ms

I/WindowManager( 2777): Setting rotation to 1, animFlags=0

I/WindowManager( 2777): Config changed: { scale=1.0 imsi=0/0 loc=de_DE touch=3 keys=2/1/2 nav=3 orien=2 layout=18}

W/WindowManager( 2777): performLayoutAndPlaceSurfacesLocked called while in layout

D/dalvikvm( 2759): GC freed 2 objects / 48 bytes in 602ms

D/dalvikvm( 2777): GC freed 26803 objects / 1448952 bytes in 1121ms

D/StatusBar( 2777): updateResources

I/ActivityManager( 2777): Starting activity: Intent { cmp=org.inodes.gus.scummvm/.Unpacker }

I/ActivityManager( 2777): Start proc org.inodes.gus.scummvm for broadcast org.inodes.gus.scummvm.plugin.scumm/org.inodes.gus.scummvm.PluginProvider: pid=7633 uid=10129 gids={1015}

I/ActivityManager( 2777): Process com.android.calendar (pid 7555) has died.

W/IInputConnectionWrapper( 2830): showStatusIcon on inactive InputConnection

I/ActivityManager( 2777): Displayed activity org.inodes.gus.scummvm/.Unpacker: 550 ms (total 3735 ms)

I/ActivityManager( 2777): Process org.inodes.gus.scummvm (pid 7633) has died.

D/dalvikvm( 7626): Trying to load lib /data/data/org.inodes.gus.scummvm/cache/libscummvm.so 0x43a64bc8

I/ActivityManager( 2777): Displayed activity org.inodes.gus.scummvm/.ScummVMActivity: 5362 ms (total 5362 ms)

D/dalvikvm( 7626): Added shared lib /data/data/org.inodes.gus.scummvm/cache/libscummvm.so 0x43a64bc8

D/ScummVM ( 7626): Entering scummvm_main with 5 args

W/ScummVM ( 7626): Failed loading symbol 'PLUGIN_getVersion' from plugin '/data/data/org.inodes.gus.scummvm/cache/libscummvm.so' (Symbol not found: )

W/ScummVM ( 7626): Failed loading plugin '/data/data/org.inodes.gus.scummvm/cache/libscumm.so' (Cannot load library: reloc_library[1245]: 2759 cannot locate '_ZN6Common20updateGameGUIOptionsEj'...)

D/ScummVM ( 7626): Setting audio sampling rate to 44100HZ

D/ScummVM ( 7626): New surface is 480x320 bpr=960

W/AudioFlinger( 2760): write blocked for 90 msecs

D/ScummVM ( 7626): New surface is 480x320 bpr=960

D/dalvikvm( 2777): GC freed 3724 objects / 167976 bytes in 419ms

D/WifiService( 2777): ACTION_BATTERY_CHANGED pluggedType: 2

D/dalvikvm( 7108): GC freed 163 objects / 22264 bytes in 826ms

I/ActivityManager( 2777): Process android.process.media (pid 7542) has died.

I/WindowManager( 2777): onOrientationChanged, rotation changed to 1

D/dalvikvm( 7082): GC freed 155 objects / 372096 bytes in 790ms

D/NetworkLocationProvider( 2777): getLocation(): triggering a wifi scan

I/wpa_supplicant( 6909): CTRL-EVENT-SCAN-RESULTS Ready

D/ConnectBot.TerminalManager( 6987): Stopping service after timeout of ~300 seconds

I/ActivityManager( 2777): Stopping service: org.connectbot/.service.TerminalManager

I/ConnectBot.TerminalManager( 6987): Destroying background service

D/dalvikvm( 7062): GC freed 374 objects / 12920 bytes in 1225ms

D/dalvikvm( 3319): GC freed 141 objects / 188432 bytes in 583ms

D/dalvikvm( 6987): GC freed 235 objects / 12720 bytes in 837ms

Angus Lees says:

The ScummVM page says that ScummVM is not yet compatible with android 2.0 yet, so if cyanogenmod takes parts of android 2.0, it may well be the cause of the problem.

Can any dev shed light on this?

Are there users who successfully run ScummVM (with the scumm plugin) on cyanogenmod here? (i.e. can you play monkey island or dott?)

Kind regards

TauPan