Problem executing SCUMMVM in my pocket

Subforum for discussion and help with ScummVM's PocketPC/HandheldPC port

Moderator: ScummVM Team

Post Reply
Spark
Posts: 1
Joined: Thu Sep 28, 2006 12:22 am

Problem executing SCUMMVM in my pocket

Post by Spark »

Sorry, I speak spanish, not to speak very much the English, please I wait could understand me...
My problem is that on having lowered the SCUMMVM in my pocket pc it gives me the mistake " The application is not compatible with windows CE " and I have tried lowering the different SCUMM for pocket pc included the old versions...
Someone would be so nice of helping myself with my problem to be able to execute correctly the SCUMMVM in my pocket pc
Thank you very much
User avatar
knakos
ScummVM Porter
Posts: 423
Joined: Wed Nov 02, 2005 2:35 pm
Location: Athens, Greece

Post by knakos »

What device do you have? (name, model etc)
Morganoure
Posts: 21
Joined: Fri Jul 07, 2006 2:46 pm

Post by Morganoure »

I bet it's 2003 Smartphone Edition ;)
User avatar
knakos
ScummVM Porter
Posts: 423
Joined: Wed Nov 02, 2005 2:35 pm
Location: Athens, Greece

Post by knakos »

Why? I doubt we have problems with that.
Morganoure
Posts: 21
Joined: Fri Jul 07, 2006 2:46 pm

Post by Morganoure »

Oh, sorry I missed that. 2003SE needs somewhat different executables. All FreePascal created CE executables run on nearly every device beginning from CE 3.0 - except for 2003SE. Same goes for all the reports here, since I got sensible about that topic on my own apps, I noticed that many "does not run" reports here are about 2003SE ;)
User avatar
knakos
ScummVM Porter
Posts: 423
Joined: Wed Nov 02, 2005 2:35 pm
Location: Athens, Greece

Post by knakos »

If the application does not use any imports from newer api dlls (and scummvm is "compatible" with the windows ce 2.0 api more or less), the only thing the OS executable loader checks is the subsystem version value in the PE header, and any dependent dlls. So if one sets that value in the header to be e.g. 3.00, the application can run on any post-wince3.00 device.
Morganoure
Posts: 21
Joined: Fri Jul 07, 2006 2:46 pm

Post by Morganoure »

Well, actually the executable loader checks for quite a few things in the header. Beginning with the machine type field. So it's really not as easy as you describe ;)

Example: I have an executable, machine type correct, subsystem 0009 (WinCE), subsystem version 2.0, OS version 4.0, libraries used no newer requirements than 3.0 (it works on a 3.0 device, and anyway that message would be different). For a phone with 2003 Smartphone, which should be CE version 4.20.1088, the named fields are more than sufficient, still it fails. See? It must be way more than the subsystem version ;)
Btw there are more differences; e.g. you need to use CabwizSP instead of Cabwiz to create .cab files to install on a Smartphone, another sign that MS wasn't too kind there :D

I'll see if I can get my hands on that test phone again or get the emulator running.
User avatar
knakos
ScummVM Porter
Posts: 423
Joined: Wed Nov 02, 2005 2:35 pm
Location: Athens, Greece

Post by knakos »

That seems to be quite abnormal, in comparison with what I've seen. It would be good to have some feedback specific for that device.
Post Reply