Opened 2 months ago

Last modified 7 weeks ago

#11555 new defect

BACKENDS: NDS - Failure to load most plugins

Reported by: ccawley2011 Owned by: bgK
Priority: normal Component: Port: NDS
Keywords: Cc: ccawley2011
Game:

Description

When building for Nintendo DS with dynamic plugins enabled, the majority of plugins fail to load with "elfloader: R_ARM_CALL/R_ARM_JUMP24: Out of range relocation ..." errors, as shown in the screenshot.

Attachments (1)

scummvm-ds-plugins-error.png (13.5 KB ) - added by ccawley2011 2 months ago.

Download all attachments as: .zip

Change History (11)

by ccawley2011, 2 months ago

comment:1 by raziel-, 2 months ago

Summary: DS: Failure to load most pluginsBACKENDS: NDS - Failure to load most plugins

When you say "most", which plugins do actually load?

comment:2 by bgK, 2 months ago

How do you reach this error? I tried on a DS, ScummVM crashes when trying to add a game before reaching that point. I tried on a 3DS using nds-bootstrap, ScummVM crashes on startup.

comment:4 by bgK, 2 months ago

Do you have more hints? The version built from this branch using the latest versions from devkitpro and these configure flags ../configure --disable-all-engines --enable-engine=scumm --host=ds --enable-plugins --default-dynamic --disable-debug:

  • Fails to start on a DS (white screen)
  • Crashes when adding a game on a 3DS using nds-bootstrap (data abort, PC at 0xFFC)
  • Generates an invalid instruction error in no$gba when adding a game
  • Infinitely loops in desmume when adding a game
Last edited 2 months ago by bgK (previous) (diff)

comment:5 by ccawley2011, 2 months ago

I'm currently building on Windows with the following packages installed:

I usually compile ScummVM with the following commands:

$ source $DEVKITPRO/ndsvars.sh
$ ./configure --host=ds --enable-plugins --default-dynamic --enable-all-engines --disable-png --disable-freetype2 --enable-debug
$ make -j6

The resulting scummvm.nds file works on a DSi with TWiLight Menu++ v15.3.0, as well as with the latest DeSmuME builds from AppVeyor.

Last edited 2 months ago by ccawley2011 (previous) (diff)

comment:6 by sev-, 2 months ago

Priority: blockernormal

comment:7 by sev-, 2 months ago

Owner: set to sev-
Resolution: outdated
Status: newclosed

The port is dead.

comment:8 by bgK, 8 weeks ago

Owner: changed from sev- to bgK
Resolution: outdatedfixed

Thanks, fixed in 55db121.

ScummVM still crashes for me when starting games, but at least the plugins load.

comment:9 by ccawley2011, 8 weeks ago

Thanks.

Unfortunately, only the games that worked before that change still work. The ones that didn't can now be added to the launcher but throw a Guru Meditation Error when run.

For reference, the following games work for me with dynamic plugins:

  • Beneath a Steel Sky
  • Eye of the Beholder
  • Eye of the Beholder II
  • Lure of the Temptress
  • Testbed

and the following games crash on startup:

  • Full Throttle
  • Future Wars (demo)
  • Operation Stealth (demo)
  • Simon the Sorcerer (demo)
  • Space Quest I (SCI)
  • Space Quest II
  • Teenagent

In addition, Flight of the Amazon Queen used to work with dynamic plugins, but now crashes during the intro.

Most of the games I tried work fine when using static linking.

comment:10 by ccawley2011, 7 weeks ago

Resolution: fixed
Status: closednew
Note: See TracTickets for help on using tickets.