Opened 17 years ago

Closed 17 years ago

Last modified 20 months ago

#844 closed defect (fixed)

WIN: Cannot run games stored in the root of a drive

Reported by: SF/the-huz Owned by: aquadran
Priority: normal Component: Port: Win32
Keywords: Cc:


Under Windows 98SE, ScummVM seems unable to run anything from the root directory of any drive. This rather scuppers the chances of running COMI straight from CD, as well as making extreme disorganisation impossible. This has happened in all binaries I’ve tried since 0.4.0, but it was probably in before then.

When trying to start the game from the command line, the ScummVM window appears but remains blank for a time ranging from 15-45 seconds, which seems to depend on the game. After this, an error message “cannot find file: `foo`” appears in the GUI (customised with CD-style messages for COMI). Choosing Retry repeats the pause and the error, choosing Cancel brings up the debugger.

Sample console output, trying to run COMI straight from CD:

C:\Games\ScummVM>scummvm -v ScummVM 0.4.2cvs Built on Jun 5 2003 00:48:23

C:\Games\ScummVM>scummvm -pg:\ comi Using joystick: Microsoft PC-joystick driver Looking for comi Trying to start game 'The Curse of Monkey Island', version 8.1.0 [pause here] (0:0:0x0): Cannot find file: 'comi.la0'(0:0:0x0): Cannot find file: 'comi.la0'!

The same happens with the COMI files copied directly to E:\, or the monkey2 files copied there. Running COMI or anything else from within a folder (eg. E:\comi) works fine.

Ticket imported from: #749249. Ticket imported from: bugs/844.

Change History (12)

comment:1 by SF/bgbennyboy, 17 years ago

I can reproduce this on 98SE using virtualpc

comment:2 by SF/wooshell, 17 years ago

The problem seems to be related to Win9x file i/o, as it does not occur on my Win2000 box.

comment:3 by Kirben, 17 years ago

The problem doesn't occur on my Windows XP system either.

comment:4 by SF/sir_kill_a_lot, 17 years ago

Some time ago I saw that File:fopenNoCase adds an slash to the path (so "bla\" became "bla\/"), but since my WinXP doesn't care about multiple (back)slashes I didn't file a bug report. Perhaps Win98 isn't that tolerant (at least for slashes right after the drive) if this bug still exists.

comment:5 by fingolfin, 17 years ago

Did you try scummvm -pg: comi ?

comment:6 by SF/the-huz, 17 years ago

Yes, I tried -pg: and -pg:/ with the same result.

However, while trying every other combination I could think of, I just found a workaround! It is as simple as:

scummvm -pg:\thisdoesntexist\.. comi

Hope that helps eliminate the problem somehow. :)

comment:7 by fingolfin, 17 years ago

Well considering that other people don't have the problem in XP, 2000, and 98SE, I am surprised you have it at all. Anyway, a windows developer will have to look into this, if we can find one.

comment:8 by SF/sir_kill_a_lot, 17 years ago

I just tried the following commands in Win2k/XP: dir "c:/" dir "c:\/" and both worked like "dir c:\". Then I tried it under Win98SE and it said something like "couldn't find computer". So I think File::fopenNoCase seems to cause this bug.

comment:9 by SF/florob, 17 years ago

Yes seems like this perhaps is a bug with some ifdefs. I have the same bug under Win98SE.

comment:10 by fingolfin, 17 years ago

Summary: Cannot run games stored in the root of a drive in Win98SEWIN: Cannot run games stored in the root of a drive

comment:11 by aquadran, 17 years ago

Owner: set to aquadran
Resolution: fixed
Status: newclosed

comment:12 by digitall, 20 months ago

Component: --Unset--Port: Win32
Note: See TracTickets for help on using tickets.