SCI implementation general question

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

Moderator: ScummVM Team

KuroShiro
Posts: 473
Joined: Thu May 15, 2008 7:42 am
Location: Somewhere Out There

Post by KuroShiro »

MusicallyInspired wrote:Ah, ok! That works, thanks!

EDIT: While I'm here, which data files are needed for SCI games to work? I thought it'd be just the resource files but that doesn't seem to do it. Does it really need SCIV.EXE or the VERSION file as well for version detection or something?
I believe some of the .DRV files, at least for SCI0 games, were critical to the engine, so try keeping all of those in the directory to make sure everything is ok. None of the executables should be required.

On that note, the SCI games' performance has improved a lot since the merge. Still a lot of bugs rendering some games incompletable, but it seems like they're getting steadily worked out. The biggest bugs in SCI0 seem to be with the walk maps, rendering at least Codename: Iceman incompletable. Still, awesome job so far, progressing a lot faster than I expected.
User avatar
MusicallyInspired
Posts: 1138
Joined: Fri Mar 02, 2007 8:03 am
Location: Manitoba, Canada
Contact:

Post by MusicallyInspired »

The DRV files are essential for the DOS engine because they're the graphics, interface, and sound drivers that the DOS engine can use. You don't need them for FreeSCI so I can't see how they'd be required for ScummVM.
Charles
Posts: 13
Joined: Sun Mar 29, 2009 6:26 am

Post by Charles »

sev wrote:1) Current goal is to make main parts of engine working well in ScummVM. Once that goal is achieved, we may start looking into bringing bells and whistles. At this point that is not the focus.
Yeah, of coure that's perfectly reasonable. Idly thinking, I guess you'd even call that non-dithering a VGA mode (obviously, not a high-quailty VGA, but a 256-color VGA). I wonder if anyone'd made a fan-driver for a non-dithered VGA for the original engine. Probably not even possible. Aw well, that's completely irrelavent at any rate.
sev wrote:2) No. even when running 320x200 game in 960x720 mode, internally it is same 320x200. And it's irrelevant whether support for 640x480 games exists in the engine or not. All game data, including path priority screens are coded for 320x200. Attempts to scale that up in AGI engine lead to miscellaneous artifacts since game scripts often rely on original resolution too.
Well, in the case of KQ6 CD specifically, I know they had high-res portraits designed for the 640×480 (maybe only 640×400... I think it was only the windows version) whereas I believe the backgrounds stayed at the up-scaled 320×200. (They also had 320×200 portraits for when you used the DOS engine, or used the windows engine in "Small Size", which even if you *could* run on todays' computers (HAH) would only be a 320×240 window on your screen! Presumably that's ONE example where the 320 vs 640 issue is a concern. (Also, I remember Gabrial Knight CD had a Hi-Res 640×480 VESA mode, with hi-res sprites. Different case than KQ6, since that one was *not* engine dependent.
KuroShiro wrote:None of the executables should be required.
I'm probably wrong here, but I think I read once that FreeSCI used the sciv.exe files to determine which interpretor version was needed.

Oh, also, I've given a bunch of my SCI games a try in ScummVM, and where do I go to submit crc's for games it didn't recognise? What files need to be crc'd?
KuroShiro
Posts: 473
Joined: Thu May 15, 2008 7:42 am
Location: Somewhere Out There

Post by KuroShiro »

MusicallyInspired wrote:The DRV files are essential for the DOS engine because they're the graphics, interface, and sound drivers that the DOS engine can use. You don't need them for FreeSCI so I can't see how they'd be required for ScummVM.
I'm not sure that they're strictly limited to that. There's another post (on the bug tracker maybe) which discusses the use of a .drv file in LSL as a part of the game. Still, I'm far from an expert on the engine and I haven't looked into the code at all so it's very probable that I'm wrong.
User avatar
md5
ScummVM Developer
Posts: 2250
Joined: Thu Nov 03, 2005 9:31 pm
Location: Athens, Greece

Post by md5 »

MusicallyInspired wrote:The DRV files are essential for the DOS engine because they're the graphics, interface, and sound drivers that the DOS engine can use. You don't need them for FreeSCI so I can't see how they'd be required for ScummVM.
In the case of LSL5, such a "driver" file was used to store the game's password, which could be changed from the game itself
User avatar
md5
ScummVM Developer
Posts: 2250
Joined: Thu Nov 03, 2005 9:31 pm
Location: Athens, Greece

Post by md5 »

Charles wrote:Well, in the case of KQ6 CD specifically, I know they had high-res portraits designed for the 640×480 (maybe only 640×400... I think it was only the windows version) whereas I believe the backgrounds stayed at the up-scaled 320×200. (They also had 320×200 portraits for when you used the DOS engine, or used the windows engine in "Small Size", which even if you *could* run on todays' computers (HAH) would only be a 320×240 window on your screen! Presumably that's ONE example where the 320 vs 640 issue is a concern. (Also, I remember Gabrial Knight CD had a Hi-Res 640×480 VESA mode, with hi-res sprites. Different case than KQ6, since that one was *not* engine dependent.
I think that these game graphics were already upscaled in the game's data files, i.e. the engine itself wasn't upscaling them. I could be wrong on this, though
Charles wrote:I'm probably wrong here, but I think I read once that FreeSCI used the sciv.exe files to determine which interpretor version was needed.
That is correct. In ScummVM, we have a detector in place, and the game executable is used as fallback when the game version is unknown.
Charles wrote:Oh, also, I've given a bunch of my SCI games a try in ScummVM, and where do I go to submit crc's for games it didn't recognise? What files need to be crc'd?
Submit them to our bug tracker:
http://sourceforge.net/tracker/?group_i ... tid=418820

ScummVM itself will report the files it needs, check the console when you're adding an unknown version
Charles
Posts: 13
Joined: Sun Mar 29, 2009 6:26 am

Post by Charles »

md5 wrote:In the case of LSL5, such a "driver" file was used to store the game's password, which could be changed from the game itself
Ha, I remember that. Same thing for LSL7; er, not a password, but they had wallpaper's renamed as .drv files. I think I read on Al Lowe's site http://www.allowe.com once that they did that because they basically assumed nobody'd be brave enough to futz around with something as important as a driver file. :P
md5 wrote:I think that these game graphics were already upscaled in the game's data files, i.e. the engine itself wasn't upscaling them. I could be wrong on this, though
I *know* the Gabriel Knight one had hi-res alternates, but my gut thinks KQ6 only had hi-res versions of the portraits. I'd try to check or something but I don't have my copy of KQ6CD handy. All I can really remember is being able to run the game way back when, and switch back and forth between "Large Window" and "Small Window" by right-clicking on the title bar (in the Win95 days, or in the Win3.1 days clicking where the window icon would eventually be). Anyway, I digress. That's not really too important now.
Collector
Posts: 549
Joined: Sun Oct 30, 2005 6:58 pm
Contact:

Post by Collector »

In SCI games that had a Windows interpreter the .DRV files weren't used at all if the Windows game was installed.
Post Reply