Opened 11 years ago

Closed 11 years ago

Last modified 11 months ago

#7648 closed enhancement (fixed)

TINSEL: Add support for Discworld demo

Reported by: SF/khalek Owned by: dreammaster
Priority: normal Component: Engine: Tinsel
Keywords: Cc:
Game: Discworld

Description

With latest svn on OpenBSD/amd64 I see the following:

$ scummvm -v
Using configuration file: /usr/users/jsg/.scummvmrc
ScummVM 0.13.0svn (Aug 2 2008 03:48:46)
Features compiled in: Vorbis FLAC MP3 zLib MPEG2

$ scummvm -p ./discdemo/ tinsel
Using configuration file: /usr/users/jsg/.scummvmrc
User picked target 'tinsel' (gameid 'tinsel')...
Looking for a plugin supporting this gameid... Tinsel Engine
Starting 'Tinsel engine game'
WARNING: Couldn't open drive: Invalid CD-ROM drive index!
assertion "ic->sp == 0" failed: file "engines/tinsel/pcode.cpp", line 588, function "Interpret"
Abort trap (core dumped)

(gdb) bt
#0 0x000000021005532a in kill () from /usr/lib/libc.so.48.0
#1 0x000000021009c685 in abort () at /usr/src/lib/libc/stdlib/abort.c:68
#2 0x000000021002da17 in __assert2 (
file=0x2100453aa "räÃ\220\220\220S\211ûèpLþÿ\211Þ\211Çè\aXþÿ[Ã", '\220' <repeats 13 times>, "H\213\rQt7", line=6, func=0x70fe <Address 0x70fe out of bounds>, failedexpr=0x0)
at /usr/src/lib/libc/gen/assert.c:52
#3 0x000000000099bec6 in Tinsel::Interpret (coroParam=@0x2035657a8, ic=0x2069e2000)
at engines/tinsel/pcode.cpp:588
#4 0x000000000097fd69 in MasterScriptProcess (coroParam=@0x205a78088)
at engines/tinsel/tinsel.cpp:395
#5 0x00000000009a54d6 in Tinsel::Scheduler::schedule (this=0x201099600)
at engines/tinsel/sched.cpp:134
#6 0x00000000009812fe in Tinsel::TinselEngine::NextGameCycle (this=0x20d856800)
at engines/tinsel/tinsel.cpp:804
#7 0x0000000000981274 in Tinsel::TinselEngine::go (this=0x20d856800)
at engines/tinsel/tinsel.cpp:767
#8 0x000000000040ce79 in runGame (plugin=0x2012e2220, system=@0x20688a800,
edebuglevels=@0x7f7fffff8b30) at base/main.cpp:186
#9 0x000000000040d3ec in scummvm_main (argc=4, argv=0x7f7fffff8c00) at base/main.cpp:285
#10 0x000000000040a5db in main (argc=4, argv=0x7f7fffff8c00)
at backends/platform/sdl/main.cpp:108

The files involved:
MD5 (DW.BAT) = 2dd24cae156bc6ef82ead606ab8bb10a
MD5 (DW.GRA) = 369f08d502e9146899d80db9b359b969
MD5 (DW.SCN) = 132d1e0d9a5f4808167ab038e9727e31
MD5 (DWB.EXE) = cc50200466b4f531a42be4b02ef83c36
MD5 (ENGLISH.TXT) = a4de74db21b7e09182361dbe56461674
MD5 (FISHMONG.GRA) = 1d224d0e7762a0c2e57abb7e4c69eef6
MD5 (FISHMONG.SCN) = 0df9a1067736e604251f588d9f4123e0
MD5 (INDEX) = 46c8c2b5f0f2b2c00c34d60c9730790f
MD5 (LOVINGOC.GRA) = 6693ef618083533b9dce69ec8a5453cd
MD5 (LOVINGOC.SCN) = ece87a60fd5b34bda5ab7677cc1694a2
MD5 (OBJECTS.GRA) = eb1991a0888a849bcbcba2f3b6c24f6c
MD5 (OBJECTS.SCN) = d8607beb56024e605d8347a20b15a770
MD5 (RM.DRV) = 9efb3f48a39954104c26bcc33bf6fe75
MD5 (TITLE.GRA) = fa29d9be2bd08240adedd5c54f98c018
MD5 (TITLE.SCN) = 8a1a2f00bd64c8409480f3b4c087fa39
MD5 (TOILET.GRA) = c5f960b47ef4543fedffd988a30486a2
MD5 (TOILET.SCN) = 4b53009e6bd85dc243d781bfdfe68ed0

Ticket imported from: #2035750. Ticket imported from: feature-requests/464.

Change History (8)

comment:1 by dreammaster, 11 years ago

Although we do have a detection entry for the demo, we don't currently support it - it uses an earlier version of both the Tinsel script engine and graphic compression. It will likely be commented out prior to the next ScummVM release unless someone can be found who's willing to work on adding support for it specifically.

comment:2 by SF/khalek, 11 years ago

Making it not segfault would be a start.

Any idea if the "CD demo" mentioned at http://www.au.lspace.org/games/discworld/faq.html#part2.4 would likely work?

The actual English retail CD seems to work fine here by the way.

comment:3 by Kirben, 11 years ago

Keywords: script removed
Summary: Discworld demo causes segfaultAdd support for Discworld demo

comment:4 by Kirben, 11 years ago

Moving to feature requests, as there is currently no support for the demo.

I expect the CD demo of Discworld 1 would work, if it could be found.

comment:5 by fingolfin, 11 years ago

Summary: Add support for Discworld demoTINSEL: Add support for Discworld demo

comment:6 by fingolfin, 11 years ago

"Making it not segfault" will be achieved by commenting out the detector entry anyway :)

comment:7 by Kirben, 11 years ago

Owner: set to dreammaster
Resolution: fixed
Status: newclosed

comment:8 by digitall, 11 months ago

Component: Engine: Tinsel
Game: Discworld
Note: See TracTickets for help on using tickets.