FORUMS

Make Your Network Smart – XDA Xposed Tuesday

We rave about the features and abilities of our smartphones. However, in order for … more

Dr.Ketan Brings The S6 Theme Store To The Note 4

Dr.Ketan has submitted a video to the forums showing a functional port of the Galaxy S6 … more

Do You Have Insurance on Your Smartphone?

While affordable smartphones are becoming more available, the majority of high-end flagships … more

Apple Music Will Increase iTunes Match to 100,000 Songs

The battle for music streaming subscription dominance is starting to really heat … more

[Beta] Win86emu: Running x86 apps on WinRT devices

1,150 posts
Thanks Meter: 216
 
By mamaich, Retired Recognized Developer on 12th January 2013, 04:16 PM
Post Reply Subscribe to Thread Email Thread
13th January 2013, 02:31 PM |#21  
Cotulla's Avatar
Senior Recognized Developer
Thanks Meter: 5,462
 
More
it can be global user mode or kernel mode CreateProcess hook, which checks architecture field and takes proper actions
doing same for LoadLibrary can be not really save and can be too complex: for example it can be hard to pass exception from emulated X86 code to ARM.
The Following 2 Users Say Thank You to Cotulla For This Useful Post: [ View ]
 
 
13th January 2013, 06:14 PM |#22  
Senior Member
Thanks Meter: 34
 
More
Quote:
Originally Posted by mamaich

The tool emulates x86 instructions and passes Windows API calls to WinRT kernel with necessary modifications.

Nice. I was thinking of the same idea.
But your 10x further ahead
Last edited by xsoliman3; 14th January 2013 at 06:55 PM.
14th January 2013, 07:03 AM |#23  
Harkunwar's Avatar
Senior Member
Flag Amritsar
Thanks Meter: 95
 
Donate to Me
More
Now I am feeling like Windows RT tablets is not a waste
Amazing work
Thanks
14th January 2013, 07:18 PM |#24  
Senior Member
Thanks Meter: 34
 
More
"current version supports emulation only of x86 EXE files that contain relocations section"

How can we check if an x86 exe is like that ?
probably via

dumpbin /relocations c:\path\name.exe

shows some HIGHLOW entries if it is relocatable
Last edited by xsoliman3; 14th January 2013 at 07:28 PM.
14th January 2013, 11:16 PM |#25  
OP Retired Recognized Developer
Thanks Meter: 216
 
Donate to Me
More
Quote:
Originally Posted by xsoliman3

"current version supports emulation only of x86 EXE files that contain relocations section"

The new build that can run HOMM3 demo version does not have this limitation. It is achieved by reserving memory at 0x400000 address immediately at my EXE start, and restarting if these addrs are already in use. Due to ASLR it typically takes several (not many) restarts until those addrs become available for us.
15th January 2013, 02:09 AM |#26  
Recognized Developer
Flag Seattle
Thanks Meter: 2,847
 
More
Well, this is certainly an impressive piece of engineering! I gotta say, when I saw the 3DO logo, all I could really do was stare at it and say maaaaaaad hax. Mind you, if you want a bug report... the game (or perhaps the emulator) crashed (repeatably) when I tried to visit the tavern. In any case, your choice of test app amuses and pleases me. I wonder if it would like my full version better?

If there's anything we can do to help (find high-priority system calls, test stuff, contribute to the code, anything) let us know. While I'd prefer to avoid the overhead of emulation, realistically there are probably more Windows apps runnable with this thing right now than will b ported in the next month.
15th January 2013, 07:46 AM |#27  
Senior Member
Thanks Meter: 45
 
More
This plus the jailbreak yields some very exciting potentials for the Windows RT. As a matter of fact, I just bought a RT tablet for this

Keep up the good work OP!

Also, are you willing to accept donations? I wouldn't want to see this project getting abandoned before it is completed
The Following User Says Thank You to eXecuter.bin For This Useful Post: [ View ]
15th January 2013, 08:20 AM |#28  
Member
Thanks Meter: 2
 
More
Wow this is impressive..
15th January 2013, 01:02 PM |#29  
OP Retired Recognized Developer
Thanks Meter: 216
 
Donate to Me
More
Quote:
Originally Posted by GoodDayToDie

If there's anything we can do to help (find high-priority system calls, test stuff, contribute to the code, anything) let us know.

One of the things that would help - is optimizing the DosBox dynamic core. I was managed to use the risc_armv4le-thumb-iw.h core, but it is not so fast as I've expected.
I've posted my thoughts here: http://forum.xda-developers.com/show....php?t=2097372

Quote:

Also, are you willing to accept donations? I wouldn't want to see this project getting abandoned before it is completed

At the time when I've ported heroes of might and magic 1&2 to WinMobile I've asked for donations - but their amount was too small to be noticeable. I don;t think that anything would be changed now

I've updated the first post with the newer build with a dynamic DosBox core. It is a bit faster, but HOMM3 are still slow to be playable. And this is a first test of dynamic core, so its RAM usage is not optimal, and it may crash.

Now I'll spend time on WinAPI, not on DosBox code, as implementing API has higher priotity in my plans than speed optimizations.
Last edited by mamaich; 15th January 2013 at 01:16 PM.
15th January 2013, 11:36 PM |#30  
Senior Member
Thanks Meter: 34
 
More
I assume the DosBox emulator can do 32bit x86 code as well as 16bit (DOS real mode) that its normally used for in DosBox
Update - looks like DosBox also has the 32bit DOS Externer (DOS4GW) stuff as well, so can handle 32bit code emulation ok
and only need to emulate 'user mode' (non priviledged) 386 instructions
Last edited by xsoliman3; 15th January 2013 at 11:49 PM.
Post Reply Subscribe to Thread
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes