Windows 10 on ARM!!!! - General Topics

Okay everyone! Microsoft has announced Windows 10 availability on ARM! Let's port this into a ROM and get our android devices working like full on PC! Please and thank you! Anyone else that has any information about this snowball rolling. Please update on this thread. I'll keep the title up to date as we go!

GodKingKnight said:
Okay everyone! Microsoft has announced Windows 10 availability on ARM! Let's port this into a ROM and get our android devices working like full on PC! Please and thank you! Anyone else that has any information about this snowball rolling. Please update on this thread. I'll keep the title up to date as we go!
Click to expand...
Click to collapse
I second this

Link to download windows 10 arm64. I don't know how to run this OS((( Sorry is my english))))
#pastebin.com/m263G8Ku#
#betaarchive.com/forum/viewtopic.php?t=37600#
---------- Post added at 10:39 PM ---------- Previous post was at 10:28 PM ----------
Please delete "#" in url adress

You can test windwos 10 arm with qemu.
I found a ready to run image with Windows pre-installed:
virtuallyfun.com/wordpress/2018/03/22/windows-10-arm64-on-qemu/
But you have to wait for network drivers:
github.com/virtio-win/kvm-guest-drivers-windows/issues/177
You can also run Windows 10 ARM on a Lumia 950 (XL) .
twitter.com/gus33000
twitter.com/imbushuo
Or on an Rasperry Pi 3:
github.com/andreiw/RaspberryPiPkg

I love arm. Been screwing around trying to get to develop in assembler...arm32 on the Galaxy book go. Got vs ( visual studio) running a compile and link even executing in asm64 mode natively (x86 VS assembling armasm64 code). Arm32 mode seems impossible. Though my core assembler is the gas (as) and linker is ld, both x86 code, it does not give me an arm32 executable. "Can not run on current platform." This is in VS, VSC and from the command line. The code is good and verified by hex editor. WOA does not seem to run arm32 natively. Anybody got any help. Arm64 does not have the stm/ldm support. That's only in arm32. I don't need >4g. I want arm32 and window my mem-tbls. Without arm32 native dev, this project might as well be Intel/amd. I wonder how much MS got to sandbox this. Or how much Samsung got to force a windows boot. Sorry guys, this will be some headache, but I'm devoted to it.,jpk

John P. Kunze said:
I love arm. Been screwing around trying to get to develop in assembler...arm32 on the Galaxy book go. Got vs ( visual studio) running a compile and link even executing in asm64 mode natively (x86 VS assembling armasm64 code). Arm32 mode seems impossible. Though my core assembler is the gas (as) and linker is ld, both x86 code, it does not give me an arm32 executable. "Can not run on current platform." This is in VS, VSC and from the command line. The code is good and verified by hex editor. WOA does not seem to run arm32 natively. Anybody got any help. Arm64 does not have the stm/ldm support. That's only in arm32. I don't need >4g. I want arm32 and window my mem-tbls. Without arm32 native dev, this project might as well be Intel/amd. I wonder how much MS got to sandbox this. Or how much Samsung got to force a windows boot. Sorry guys, this will be some headache, but I'm devoted to it.,jpk
Click to expand...
Click to collapse
You came to the right place!
Welcome to XDA

Related

Java (jre) on Surface RT

So I have a question?
Is there a way to enable java on the surface rt.
Because for my remote access to work I need JRE.
Thanks
I wanna know this too. Need to be able to play Yahoo Games when I'm bored ?
Not yet but Java exists on everything pretty much... I'm sure at some point someone will recompile it for Windows RT
There's two ways I could see this happening.
The simplest would be for somebody to take the Java source code, build it for Windows but target ARM, then sign it and tell people to go through the hoops needed to run third-party desktop-mode apps on RT. This would probably actually be pretty easy, if Java has a target for "use ARM instructions" in its JIT. If not, it would have to interpret the bytecode, which is very slow (although usable).
The second way is for the JRE to be built as a Metro-style app. It would probably have to hook a bunch of native APIs that aren't allowed in Store apps, so it would remain as homebrew, but it could be packaged as an APPX and would be easy enough to install. It would be both more difficult to port and possibly more of a hassle to use, though. With care and luck, it might even be possible to get it submitted to the Store, though, which (combined with setting it up as a file handler for .JAR) would make it widely usable. I doubt MS would approve it, though.
GoodDayToDie said:
There's two ways I could see this happening.
The simplest would be for somebody to take the Java source code, build it for Windows but target ARM, then sign it and tell people to go through the hoops needed to run third-party desktop-mode apps on RT. This would probably actually be pretty easy, if Java has a target for "use ARM instructions" in its JIT. If not, it would have to interpret the bytecode, which is very slow (although usable).
The second way is for the JRE to be built as a Metro-style app. It would probably have to hook a bunch of native APIs that aren't allowed in Store apps, so it would remain as homebrew, but it could be packaged as an APPX and would be easy enough to install. It would be both more difficult to port and possibly more of a hassle to use, though. With care and luck, it might even be possible to get it submitted to the Store, though, which (combined with setting it up as a file handler for .JAR) would make it widely usable. I doubt MS would approve it, though.
Click to expand...
Click to collapse
I guess that the source isent available. And the open source version for Linux would be quite hard to port right?
filfat said:
I guess that the source isent available. And the open source version for Linux would be quite hard to port right?
Click to expand...
Click to collapse
Actually, it is available.
---------- Post added at 10:42 AM ---------- Previous post was at 10:38 AM ----------
GoodDayToDie said:
There's two ways I could see this happening.
The simplest would be for somebody to take the Java source code, build it for Windows but target ARM, then sign it and tell people to go through the hoops needed to run third-party desktop-mode apps on RT. This would probably actually be pretty easy, if Java has a target for "use ARM instructions" in its JIT. If not, it would have to interpret the bytecode, which is very slow (although usable).
The second way is for the JRE to be built as a Metro-style app. It would probably have to hook a bunch of native APIs that aren't allowed in Store apps, so it would remain as homebrew, but it could be packaged as an APPX and would be easy enough to install. It would be both more difficult to port and possibly more of a hassle to use, though. With care and luck, it might even be possible to get it submitted to the Store, though, which (combined with setting it up as a file handler for .JAR) would make it widely usable. I doubt MS would approve it, though.
Click to expand...
Click to collapse
Oracle do now offer ARMv6 hard float (which is then compatible with ARMv7) as a JIT option, it is standard software in raspbian on the raspberry pi as of a few weeks ago, in fact that is why they added that support. Now if only regular ARMv7 code worked on RT instead of THUMB_2. Don't know if java will actually build under visual studio either, funnily enough googling for any combination of "compile" "java" and "visual studio" gets you results for compiling java source code to the JRE under visual studio rather than compiling the JRE itself
---------- Post added at 10:45 AM ---------- Previous post was at 10:42 AM ----------
binnym said:
So I have a question?
Is there a way to enable java on the surface rt.
Because for my remote access to work I need JRE.
Thanks
Click to expand...
Click to collapse
You would need a jailbroken RT, that isn't hard (look in windows RT development and hacking, pinned thread right up top).
Then you would need the JRE which doesn't exist.
Its slow and incompatible with a fair amount of software but if you get as far as jailbreaking your RT you could *try* IKVM, its a java virtual machine running ontop of .NET and does work on RT. It can't be used as a browser plugin though so your remote access would need to be a standalone .jar rather than a web applet.
SixSixSevenSeven said:
Actually, it is available..
Click to expand...
Click to collapse
Well, Do You Have Any Links? Want to test if I can get it to compile... yes I know, im giving away freedom
Why yes, I have a link:
http://letmebingthatforyou.com/search?q=get+jre+source+code
Rule number one of the forum, please follow it!
GoodDayToDie said:
Why yes, I have a link:
http://letmebingthatforyou.com/search?q=get+jre+source+code
Rule number one of the forum, please follow it!
Click to expand...
Click to collapse
Let me bing that... lol, seen the google version before but not the bing one.
GoodDayToDie said:
Why yes, I have a link:
http://letmebingthatforyou.com/search?q=get+jre+source+code
Rule number one of the forum, please follow it!
Click to expand...
Click to collapse
I cant find it, that's why I asked. I have ofcourse already searched
SixSixSevenSeven said:
... you could *try* IKVM ....
Click to expand...
Click to collapse
He is right. I was suprised, how well that works
I run the Jdownloader with IKVM and only the initial loading time is long (about 2-3min). After that it runs very smooth.
Its def. worth a try, bro :good:
I wonder if IKVM would be fast enough to run Minecraft on the SRT or S2...
It would be ironic if the only major tablet platform that Mojang refuses to support ended up being the only platform with the complete game.
I wonder if people will *ever* learn to do even a cursory search before posting? People have been talking about that literally since the first release of the jailbreak. The forums are littered with it.
Speed is the least of many problems (although I suppose the OpenGL issue has sort-of been resolved, albeit with yet another hit to performance).
GoodDayToDie said:
I wonder if people will *ever* learn to do even a cursory search before posting? People have been talking about that literally since the first release of the jailbreak. The forums are littered with it.
Speed is the least of many problems (although I suppose the OpenGL issue has sort-of been resolved, albeit with yet another hit to performance).
Click to expand...
Click to collapse
LWJGL doesnt load in IKVM on x86 though.
Hey everyone,
There is already a version of Java for ARM-based architectures. I don't know if it will run with Windows, but
as soon as i'm gonna get the RT, i'm gonna try it
TheRinseM said:
Hey everyone,
There is already a version of Java for ARM-based architectures. I don't know if it will run with Windows, but
as soon as i'm gonna get the RT, i'm gonna try it
Click to expand...
Click to collapse
Just because there is java for ARM based architectures doesnt mean its for windows, it specifically has to be for windows actually (which it isn't).
Not to mention it's compiled for the ARM instruction set, rather than the THUMB2 instruction set that RT actually uses. The CPU can run both, but RT will make non-THUMB code crash.
GoodDayToDie said:
Not to mention it's compiled for the ARM instruction set, rather than the TUMB2 instruction set that RT actually uses. The CPU can run both, but BT will make non-THUMB code crash.
Click to expand...
Click to collapse
Icedtea has a thumb2 JIT, but its for linux of course
Huh. That's still a bit promising. We would still need to recompile it for Win32/NT, but at least we wouldn't have to re-write the whole JIT.
Major project anyhow. Even if somebody with the requisite knowledge stepped up to start this right now, it would be a while before it bore fruit. Doesn't mean it shouldn't be attempted, but don't hold your breath. In fact, don't expect anything at all, unless somebody says they're able to take this on.
Anyone here wants to team up and try?
i would really love Java on my Surface.
edit: http://icedtea.classpath.org/hg/icedtea6/rev/748156804502

Rooting and adb phones with Surface?

Is it possible to root phones and use adb or are we waiting for the Surface pro to do that.
you're going to need surface pro (or any x86/64 based hardware) to run adb unless the tools are recompiled for arm and released in the windows store.
adiliyo said:
you're going to need surface pro (or any x86/64 based hardware) to run adb unless the tools are recompiled for arm and released in the windows store.
Click to expand...
Click to collapse
How about a virtual environment?
i don't think windows RT can run a virtual environment, but i'm not sure, as i haven't tried to do something like that
adiliyo said:
i don't think windows RT can run a virtual environment, but i'm not sure, as i haven't tried to do something like that
Click to expand...
Click to collapse
Would be awesome if you could
Sent from Russia with love
you could always have a pc running windows 8 pro then remote desktop to it. the metro rdp client is really cool and support multi touch etc so just like using it on your surface and as its metro you can run side by side etc.
mh some found a way??
it would be really awesome if someone can recompile adb for Win 8 RT.
If someone can tell me how this will work i'll do it. The Software for this i allready have. For developing and for publishing in the Store.
HandyBesitzer said:
mh some found a way??
it would be really awesome if someone can recompile adb for Win 8 RT.
If someone can tell me how this will work i'll do it. The Software for this i allready have. For developing and for publishing in the Store.
Click to expand...
Click to collapse
Can't be built in visual studio apparently. Relies on cygwin.
And having the software for developing and publishing in the store is useless. You need the source code which anyone who has the skill to actually do the port can obtain (it is all open source). It isnt something that someone can just tell you how to do, if they could tell you how to do it they would have done it themselves.
not possible on RT. you can't open .exe files (adb.exe, fastboot.exe, ..)..
unbenannt said:
not possible on RT. you can't open .exe files (adb.exe, fastboot.exe, ..)..
Click to expand...
Click to collapse
Errm, yes you can, you just cant open exe files compiled for x86. You can open exe files for ARM no problem.... adb.exe may be for x86, but your statement was that you cant open an exe file on RT which is entirely false.
ah ok i meant x86 of course sorry for misleading information..

d3d quake1

here is a direct3d port quake 1:http://directq.codeplex.com/
View attachment directq.zip
you need to copy the d3dx runtime from Windows Hardware Certification Kit.
windowsrtc said:
you need to copy the d3dx runtime from Windows Hardware Certification Kit.
Click to expand...
Click to collapse
Where are they located in WHCT? I see only x86 files. The ARM installers:
Code:
Application Verifier arm External Package-arm_en-us.msi
Arm Debuggers And Tools-arm_en-us.msi
Windows Driver Testing Framework (WDTF) Runtime Libraries-arm_en-us.msi
Windows Hardware Certification Kit Client-arm_en-us.msi
WPTarm-arm_en-us.msi
don't contain d3dx dlls or tests.
you must do a full install on a windows server 2008 R2 system and it will be about 3GB.
I find an opengl to d3d9 wrapper.I am able to run warcraft3 on my pc using the opengl32.dll I compiled.But I haven't tried the arm version on my surface.
source:http://sourceforge.net/projects/gldirect/files/?source=navbar
arm dll:https://www.dropbox.com/s/vowmwguifcitih9/opengl32arm.rar
update:the wrapped opengl32.dll works with quake2:http://forum.xda-developers.com/attachment.php?attachmentid=1643964&d=1358162797
Heyyyy... that's cool. Like, really, really cool. A lot of games that should run on RT require OpenGL and therefore don't work.
It would be cool if mamaich could integrate that into his emulation layer too (on the native ARM side preferably, so the wrapper code itself doesn't have to be emulated, although just putting the x86 version into the emulator's Windows\system32 dir would likely work at least slowly). That would open up a *bunch* of games.
GoodDayToDie said:
Heyyyy... that's cool. Like, really, really cool. A lot of games that should run on RT require OpenGL and therefore don't work.
It would be cool if mamaich could integrate that into his emulation layer too (on the native ARM side preferably, so the wrapper code itself doesn't have to be emulated, although just putting the x86 version into the emulator's Windows\system32 dir would likely work at least slowly). That would open up a *bunch* of games.
Click to expand...
Click to collapse
GoodDayToDie,this is a file that can add robot in quake2 on x86,will it be possible to make it work on windowsRT?
windowsrtc said:
I find an opengl to d3d9 wrapper.I am able to run warcraft3 on my pc using the opengl32.dll I compiled.But I haven't tried the arm version on my surface.
source:http://sourceforge.net/projects/gldirect/files/?source=navbar
arm dll:https://www.dropbox.com/s/vowmwguifcitih9/opengl32arm.rar
update:the wrapped opengl32.dll works with quake2:http://forum.xda-developers.com/attachment.php?attachmentid=1643964&d=1358162797
Click to expand...
Click to collapse
This is great! So very glad to read this! Well done!
I had _no_ idea that the arm d3d9 runtime was available at all, otherwise I would have ported Gldirect a long time ago. I even started looking at trying to convert it to d3d10.. but sadly I'm not graphics programming expert.
bfosterjr said:
This is great! So very glad to read this! Well done!
I had _no_ idea that the arm d3d9 runtime was available at all, otherwise I would have ported Gldirect a long time ago. I even started looking at trying to convert it to d3d10.. but sadly I'm not graphics programming expert.
Click to expand...
Click to collapse
If I knew about DirectX9 libs for ARM I would have ported GPU plugins for PlayStation emulator. I just don't know what about performance as I don't have required libraries to run DirectQ or that opengl wrapper. So... How fast it is?
windowsrtc said:
you must do a full install on a windows server 2008 R2 system and it will be about 3GB.
Click to expand...
Click to collapse
I feel myself dumb.
Finally got my hands on installing 2008r2 and full "Hardware Certification Kit" there (from this link: http://msdn.microsoft.com/en-us/library/windows/hardware/gg454513.aspx). It is about 4 gb, but I can't see any ARM d3dx*.dll files, only d3d_test.dll and alike.
Now I'll install Visual Studio 2012 and other stuff into the same VM, and reinstall HCT, maybe this would force HCT to download additional files.
mamaich said:
I feel myself dumb.
Finally got my hands on installing 2008r2 and full "Hardware Certification Kit" there (from this link: http://msdn.microsoft.com/en-us/library/windows/hardware/gg454513.aspx). It is about 4 gb, but I can't see any ARM d3dx*.dll files, only d3d_test.dll and alike.
Now I'll install Visual Studio 2012 and other stuff into the same VM, and reinstall HCT, maybe this would force HCT to download additional files.
Click to expand...
Click to collapse
Don't need to have VS2012 installed. Just do a full install on Win2008R2. The d3d arm runtime files will be in:
Code:
Windows Kits\8.0\Hardware Certification Kit\Tests\arm\NTTEST\windowstest\graphics\d3d
A note about the runtime.. I'm pretty sure its been built in debug mode..
Now.. speaking of the Hardware Certification Kit.. Did anyone else notice that the MS signed perl runtime for ARM was there!!
Code:
C:\Perl>perl -v
This is perl 5, version 12, subversion 4 (v5.12.4) built for MSWin32-ARM-multi-thread
Copyright 1987-2010, Larry Wall
Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
Happy scripting!
Oooh nice, another supported language on the tablet!
... if this is a signed runtime, does that mean it will run even on non-"jailbroken" RT devices? That would be cool!
bfosterjr said:
... The d3d arm runtime files will be in:
Code:
Windows Kits\8.0\Hardware Certification Kit\Tests\arm\NTTEST\windowstest\graphics\d3d
Click to expand...
Click to collapse
Am I blind?
There are no d3dx9*.dll files there. Only these dirs:
Code:
api
chess
conf
func
integration
psgp
scenario
stress
support
utility
The "support" and "utility" dirs contain just a few DLLs - reference rasterizers and tests. I've attached the list of all files I have in those dirs ("dir /s").
Probably you are using a different HCK than I am (MS may have removed D3DX9 frmo current build, like they've removed ARM MFC from VS2012, while it was present in beta). Where have you got HCT from? If it has an online installer - can you upload your version of HCKSetup.exe here?
By the way, nice finding on perl. Seems that the other dirs contain interesting tools too, for example "secureboot" would be worth reading.
mamaich said:
Am I blind?
There are no d3dx9*.dll files there. Only these dirs:
Code:
api
chess
conf
func
integration
psgp
scenario
stress
support
utility
The "support" and "utility" dirs contain just a few DLLs - reference rasterizers and tests. I've attached the list of all files I have in those dirs ("dir /s").
Probably you are using a different HCK than I am (MS may have removed D3DX9 frmo current build, like they've removed ARM MFC from VS2012, while it was present in beta). Where have you got HCT from? If it has an online installer - can you upload your version of HCKSetup.exe here?
By the way, nice finding on perl. Seems that the other dirs contain interesting tools too, for example "secureboot" would be worth reading.
Click to expand...
Click to collapse
I can confirm.. you are officially blind. .. j/k..
From your attached dir listing.. right at the bottom.
Code:
Directory of C:\Program Files (x86)\Windows Kits\8.0\Hardware Certification Kit\Tests\arm\NTTEST\windowstest\graphics\d3d\support
06/20/2013 06:18 PM <DIR> .
06/20/2013 06:18 PM <DIR> ..
07/26/2012 01:38 AM 30,056 D3D10ProxyDriver.dll
07/25/2012 06:41 PM 344,936 d3d10ref.dll
07/26/2012 01:38 AM 37,736 D3D11ProxyDriver.dll
03/05/2013 08:58 PM 579,464 d3d11ref.dll
03/05/2013 08:58 PM 747,392 d3d11_1SDKLayers.dll
08/21/2012 01:13 AM 2,840,416 D3DCompiler_Test.dll
07/25/2012 06:41 PM 333,672 d3dref9.dll
07/25/2012 06:41 PM 368,488 d3dx10_TEST.dll
07/25/2012 06:41 PM 220,008 d3dx11_TEST.dll
07/25/2012 06:41 PM 1,742,184 d3dx9_TEST.dll <<<<<<<< here... check out the version info on that file :)
07/25/2012 06:41 PM 98,664 dxgidebug.dll
11 File(s) 7,343,016 bytes
Yes, the "test" in the DLL name confused me
You are right - these are debug builds of D3D extension DLLs. So I can try to reuse them in my emulator when I'd be ready for D3D
windowsrtc said:
here is a direct3d port quake 1:http://directq.codeplex.com/
View attachment 2020637
you need to copy the d3dx runtime from Windows Hardware Certification Kit.
Click to expand...
Click to collapse
Sorry for resurrecting an old thread, but can you post your source code changes for this. It uses direct input, which isn't on Windows RT.. so I figure you must have stripped it out. Would certainly benefit the community and other porting efforts... not to mention a few games I'm working on.
Cheers!

Windows rt python

Hello
I've been reading about jailbreak for windows rt 8.1 because I'm interested on this python for windows rt https://sellfy.com/p/vj3U/ but I read there was some developments but my question is if there is jailbreak for 8.1 rt?
And someone know if that python app would work on rt 8.0 because it dont mession the version of RT and know if this python app is like those we have on x86.
Thank you
No. It will be major news when there is.
scjoao said:
Hello
I've been reading about jailbreak for windows rt 8.1 because I'm interested on this python for windows rt https://sellfy.com/p/vj3U/ but I read there was some developments but my question is if there is jailbreak for 8.1 rt?
And someone know if that python app would work on rt 8.0 because it dont mession the version of RT and know if this python app is like those we have on x86.
Thank you
Click to expand...
Click to collapse
You can only run desktop software on 8.0, there is no 8.1 jailbreak released yet.
It is python 2.7.3 as on x86, but its foreign function interface is broken so certain libraries do not work.
SixSixSevenSeven said:
You can only run desktop software on 8.0, there is no 8.1 jailbreak released yet.
It is python 2.7.3 as on x86, but its foreign function interface is broken so certain libraries do not work.
Click to expand...
Click to collapse
so I would have to downgrade for 8.0 and some functions migth not work fine... so I think I will stay on 8.1 and using teaviewer xD
Thank you very much
Somebody has an experimental port of the FFI that should fix the issues, but I haven't had time to test it yet. But yes, until we get the jailbreak working, you would need to downgrade.
GoodDayToDie said:
Somebody has an experimental port of the FFI that should fix the issues, but I haven't had time to test it yet. But yes, until we get the jailbreak working, you would need to downgrade.
Click to expand...
Click to collapse
Excellent news. If I could run Mercurial on my RT I would be one happy developer. I like fossil well enough, but just about everything that I've done for the past five years is on bitbucket in Hg repos.
Is this port available somewhere?
The message I received:
e13000 said:
Dear GoodDayToDie,
I included the libFFI port i made a while ago (if this doesn't work, please let me know because I have made 2 3 different port).
https://drive.google.com/file/d/0ByNfJPIJQw6hRnlPMHM3b1FFUFU/edit?usp=sharing
Cheer.
Click to expand...
Click to collapse
Hi, _ctypes.pyd worked flawlessly. However, Python 2.7.3 test failed on asyncore (It passed all other tests). It could be due to my openssl port.
Edited:
LibFFI is to call a C/Java function at real-time. It allocates a memory to create a wrapper. This wrapper prepares the stack/registers according to ABI, then it calls the function and get back the results if any.
RT port is a just a source conversion from GAS's asm to ARMASM's asm. Since PC LSB bit is set under THUMB mode, I modified the wrapper's memory allocator so that it will increase address returned by VirtualAlloc by 1 (so that the wrapper can be called in THUMB.
(I ported python and posted it here under my coworker's account).
Hey, I did tried the python 27 in test mode and did signed it than, to work in Standard mode, works fine.
Is there the PIP tool ported as well ?

Do you want a KVM (Kernel Virtual Machine) enabled kernel for your Android phone/tab?

Hi. Can someone that compiles kernels compile one with KVM enabled and make it available to download for various popular devices? I'd love to test this out on ARM. This would really make these machines appealing if you could spin up VMs on them especially considering how much RAM they have today. There aren't many ARM devices as powerful as the Samsung Galaxy S9 that run Linux and can be tested with KVM. You could even run a different version of Android or Linux in the VM or try BSD.
This was already done for the Intel x86 based Zenfone 2 and as a result, it can run x86 Windows 10 32/64-bit editions, Mac OS X, BSD and any Linux distro full speed in a VM. Of course this is x86 and much more refined than virtualization on ARM and you don't have quite the OS selection on ARM either.
I'd like to see how well the new ARM Windows 10 performs on these Galaxy phones. It would be a great alternative to running Windows 98 in QEMU slowly. Windows 10 ARM runs Office 2016 and Photoshop at decent speeds on some of the latest Snapdragon SoCs.
Though, from what I've read, there will be some issues running Windows initially. ARM QEMU with KVM currently doesn't support the VGA display mode that is required for Windows 10 on ARM.
I was thinking of starting a project to do this for various Android hardware besides the Zenfone 2. There are a number of x86 tablets from companies like Dell or Nextbook that would really benefit from a KVM enabled kernel but ARM phones would benefit as well.
For those that want this feature now, here is a list of current retail Android devices with KVM support and the various custom ROMs/kernels available that enable it. If you would like to see this feature enabled in your device's kernel please reply and do not hesitate to request it to your custom kernel developers.
x86-64:
Asus Zenfone 2 ZE551 and ZE550:
ycavan's custom KVM Enabled Zenfone 2 FHD(ZE551) & HD(ZE550) kernels:
https://forum.xda-developers.com/ze...fhd-kernel-ze551-kvm-bridge-compiled-t3145055
ycavan's tutorial thread: https://forum.xda-developers.com/zenfone2/general/zf2-running-windows-7-using-kvm-t3153299
TheSSJ's Custom Kernel for ZenFone 2 version 51:
https://forum.xda-developers.com/zenfone2/development/project-t-custom-kernel-zenfone-2-t3150822
Nyks45's [KERNEL]OctoDex[GCC 5.3.1][CM-13.0/AOSP6.0.X] ZE551ML/ZE550ML (formerly Veno-M):
https://forum.xda-developers.com/zenfone2/development/kernel-veno-m-ze551ml-ze550ml-t3375800
Discussion of KVM builds on the above:
https://forum.xda-developers.com/search/thread/3375800?query=kvm
Downloads: https://androidfilehost.com/?w=files&flid=57205
BORET24's ROM for ZE551ML/550ML/Zoom ZX551ML as of 2017/08/29:
https://forum.xda-developers.com/zenfone2/development/borets-rom-ze551ml-550ml-t3551225
https://forum.xda-developers.com/ze...51ml-550ml-t3551225/post73580815#post73580815
nutcasev1.5's [Kernel]Holo Kernel[AOSP/LinOS14.1][-O3][LINARO][Z00A/8]
https://forum.xda-developers.com/zenfone2/development/kernel-holo-kernel-t3443689
RussiaNBearReborN's [Rom][6.0.1][B352][18/03/18][Unified Z00A/Z008]:
https://forum.xda-developers.com/zenfone2/development/rom-rbr-v1-0-t3550544
Renix63's [KERNEL][UC] ZenKernel V1.9 Super for MM [Z00A/8][HotPlug][STOCK ROM]
https://forum.xda-developers.com/zenfone2/development/kernel-zenkernel-1-0-mm-t3510734
Aterfax's custom LineageOS 14.1 with KVM enabled kernel for Asus Zenfone 2:
https://forum.xda-developers.com/showpost.php?p=74568996&postcount=400
Asus Zenfone 5 and Zenfone 6:
tank014 & BORETS24's Custom Lolipop kernel for Zenfone 5 & Zenfone 6:
https://forum.xda-developers.com/zenfone-5/general/custom-lollipop-kernel-zenfone-5-t3238970
dgadelha's [ROM][6.0.1] CyanogenMod 13.1 Stable Builds (Unofficial)
https://forum.xda-developers.com/zenfone-5/development/cyanogenmod-13-t3382702
Asus Zenfone Zoom ZX551ML:
BORET24's ROM for ZE551ML/550ML/Zoom ZX551ML as of 2017/08/29:
According this thread, BORET24's ROM works with this and has KVM.
https://forum.xda-developers.com/zenfone2/development/borets-rom-ze551ml-550ml-t3551225
Post about it: https://forum.xda-developers.com/ze...51ml-550ml-t3551225/post73580815#post73580815
If you know of any other devices with KVM enabled kernels (ARM or x86) please let me know and I will add them to this list.
I might have to purchase an ASUS Zenfone 2, as I've wasted the whole year trying to get Windows 7, 10 running on my Android phone at anything beyond a snail's pace. The main problem is that KVM hardware virtualization is turned off in, like, every smartphone on sale in the market! This is bad brain - SUCH BAD BRAIN!!! My phone provider would not even respond to me on this issue.
I bought the first ever ARM64 laptop @ £999, but had to return it to the shop because it never booted up any Linux live USBs/DVDs. Since then I managed to get an ARM64 Linux distro - with a KVM-enabled kernel - running on the Raspberry Pi 3 B+ (thanks to help from a woman!) only to find that -enable-kvm is incompatible with qemu-system-aarch64's graphics options.
So what might the problem be exactly...? Well, the qemu-system-aarch64 generic -M virt machine type has no graphics output built into it - very clever!!! So we have to use -device VGA as an add-on to get VGA output. That will then allow snail's pace running/displaying of Windows 10 ARM; however, KVM happens to not be compatibile with this display mode - or perhaps any kind of display mode on aarch64 - due to the "VGA framebuffer" not being emulated (whatever that means!) by Qemu perhaps. The alternative is to use a different display device addon. We have -device virtio-gpu-pci, which allows you play around with the bios at near-native speeds - but the moment you boot from there into Windows 10 ARM it blackscreens cos' Microsoft did not put any virtio graphics drivers on their OS. So, basically, we are stuffed!
Ubuntu tells us "Ubuntu/arm64 can run inside the QEMU emulator. You can either do this fully emulated (e.g. on an x86 host) or, accelerated w/ KVM if you have an arm64 host." - yet they have no shame in omitting the fact that their installation runs with -nographics!
-display type none
Do not display video output. The guest will still see an emulated graphics card, but its output will not be displayed to the QEMU user. This option differs from the -nographic option in that it only affects what is done with video output; -nographic also changes the destination of the serial and parallel port data.
-nographic
Normally, if QEMU is compiled with graphical window support, it displays output such as guest graphics, guest console, and the QEMU monitor in a window. With this option, you can totally disable graphical output so that QEMU is a simple command line application. The emulated serial port is redirected on the console and muxed with the monitor (unless redirected elsewhere explicitly). Therefore, you can still use QEMU to debug a Linux kernel with a serial console. Use C-a h for help on switching between the console and monitor.
Click to expand...
Click to collapse
Therefore, I seriously doubt we can get even an RDP option on our Windows 10 ARM guest, alas. And, to add insult to injury, there is no sign of a Surface Phone or any Android software that might allow us to run Windows 10 ARM on our modern smartphones. What a bad time to be living...
Now I'm curious. How did you get KVM working on your Rasberry Pi 3 B+? I compiled QEMU from source using a modification of your instructions and couldn't get QEMU to even start with KVM enabled. What Linux distro are you using on the Pi? What linux did you use as your guest image? What was your exact qemu command line?
I wouldn't expect the ARM Windows 10 laptops to run any Linux yet. They're too new. We may need to wait years. The Windows RT devices were just secure boot unlocked a few months ago by someone from here and they still can't run any Linux.
Honestly, you probably are just better off getting a Zenfone 2. With the kernel mod, x86 Windows pretty much "just works." I just wish QEMU had a virtual battery meter so the VM could hibernate when the phone's battery gets low.
As an aside, I have a few Atom Baytrail Windows tablets that are quite similar to Android models and it's quite amazing what I can do with them out of the box when compared to Android. A few of them have virtualization enabled out of the box so all I need to do to use a VM is install VMWare, Virtualbox, Virtual PC, etc. and it "just works". No hacking, no flashing custom kernels, no command line tools at all. I've attached a picture of my Nextbook NXW8QC16G running Windows XP in VMWare and showing virtualization enabled in the task manager. The other picture is running Windows Server 2012R2, a 64-bit guest OS.
Your mention of virtio gives me an idea: Isn't it possible we can compile the virtio graphics driver for AARCH64 and somehow inject it in our ARM64 Windows image? If we did that, would Windows then be able to be used with ARM64 KVM acceleration? That guy who made the ARM64 Windows QEMU blog post already compiled the virtio disk drivers for AARCH64 and was able to get the installer to install to a virtual hard drive. Maybe all we need are ARM Windows compiled drivers for the rest of QEMU's special emulated hardware. I use the x86 Windows QXL driver with Windows 8.1 on my Zenfone 2 and it seems to work. Though, I had to boot with the VGA video mode first and install it via device manager manually.
Also, if you want an NT based OS on emulated x86 on ARM, have you thought of trying something older than XP like Windows NT 3.51 or 4.0? These were designed for 386/486s so should be more usable on emulated x86 QEMU than something like Windows XP. Office 97 works on Windows NT 3.51 and Office 2000 and maybe even XP and 2002 will work on NT 4.0. Softmaker Office 2008 also works somewhat on NT 3.51. Obviously Windows 98 may also be faster but it sounds like you prefer NT so these may be an option. If you install Windows NT 4.0 Terminal Server Edition, you will even be able to RDP into your emulated machines. Windows NT 3.51 also has an optional edition with remote, multiuser support called Citrix Winframe but I was unable to find an Android Citrix client that can still connect to it. (they're all too new)
I think we're starting to see the limitation of devices marketed as "phones" They're not an open computing platform or standard like the PC or even Macs.
We really need some kind of open standard firmware for phones like the UEFI/BIOS on PCs and an OS to go with it. It would be great if there were some kind of "open", generic (not neccessarily open source) OS that let you install drivers after being installed like Windows. Android is sort of open but not the hardware and good luck buying a device that will have an unlocked bootloader and get custom ROMs. Plus, you can't run anything other than Android and maybe another linux if you are lucky. I dunno, it scares me that these phones may become the defacto computing platform when they are so closed and proprietairy. At least with a PC, I know I can install the latest OS and be up to date for at least 15+ years if I want to be. We need that for phones but it just doesn't exist yet.
Update: I found a work in progress WDDM Windows driver for QEMU's VirtIO 3D GPU driver mentioned here:
https://www.phoronix.com/scan.php?page=news_item&px=QEMU-3D-Windows-Guests
The source code for it is here: https://gist.github.com/Keenuts/199184f9a6d7a68d9a62cf0011147c0b
Well it looks like our prayers are answered and our dreams came true. Thanks to the folks at limboemulator.weebly.com, there is now an ARM KVM enabled kernel available for the Snapdragon based Samsung Galaxy S8 and S8+
The latest Limbo PC Emulator even has KVM support even with the ARM builds.
Get it here:
https://limboemulator.weebly.com/android-arm-kvm---kernels.html
TFGBD said:
Well it looks like our prayers are answered and our dreams came true. Thanks to the folks at limboemulator.weebly.com, there is now an ARM KVM enabled kernel available for the Snapdragon based Samsung Galaxy S8 and S8+
The latest Limbo PC Emulator even has KVM support even with the ARM builds.
Get it here:
https://limboemulator.weebly.com/android-arm-kvm---kernels.html
Click to expand...
Click to collapse
These are only for Exynos
our snapdragons have a locked bootloader they will never work for us
dd the following lines to file: arch/arm64/configs/​exynos8895-dreamlte_defconfig
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=y
CONFIG_KVM_MMIO=y
CONFIG_KVM_ARM_HOST=y
#from the command line type:
make clean
make mrproper
make ​exynos8895-dreamlte_defconfig
Does anyone know how to compile/use Virtio drivers for Qemu-system-aarch64?
"You are welcomed to check the branch: https://github.com/virtio-win/kvm-guest-drivers-windows/tree/arm64
Instructions for build machine (using community edition of VS2017):
https://github.com/virtio-win/kvm-g...vers-including-arm64-using-visual-studio-2017
Soon will be integrated to master and we will distribute the binaries.
Best regards,
Yan."
https://github.com/virtio-win/kvm-guest-drivers-windows/issues/177
If the above works as a GPU for KVM then we might be able to pursue the Samsung Galaxy/Limbo solution?
I found out a lot of phones have KVM already enabled:
*Xiaomi phones, i.e. Pico F1 and Mi 8 with up to 8GB RAM (Mi 9 and Black Shark 2 have 12GB RAM)
*OnePlus phones, i.e. OnePlus 6T with up to 10GB RAM (McLaren Edition)
*Realme 2 Pro with 8GB of RAM
To find out just check the following file in a kernel source code:
https://github.com/MiCode/Xiaomi_Kernel_OpenSource/blob/dipper-o-oss/arch/arm64/configs/defconfig
KVM is disabled in all Huawei and Samsung devices by default. And Huawei cannot be unlocked/rooted anymore.
However, I found out how to compile custom ROMs for Samsung, etc.
KVM enabled on Mi 9 Xiaomi. What's the latest on a VM build we can use to build kernels etc.? Great idea here I proposed this AM and was shot down by a bunch of old school devs that think you should go through the pain of setting up a build env yourself that no one can replicate.
mslezak said:
KVM enabled on Mi 9 Xiaomi. What's the latest on a VM build we can use to build kernels etc.? Great idea here I proposed this AM and was shot down by a bunch of old school devs that think you should go through the pain of setting up a build env yourself that no one can replicate.
Click to expand...
Click to collapse
I probably need to update it, but for a VM you can try Builduntu here: https://nathanpfry.com/builduntu-virtual-machine-android-rom-compiling/
XDA post: https://forum.xda-developers.com/showthread.php?t=2585828
That should save you some trouble hopefully. ROMs and kernels will compile.
Thanks!
It's great someone is forward thinking enough to put this together. Much appreciated!
What updates do you suggest?
Seems to be running in VM
sylentprofet said:
I probably need to update it, but for a VM you can try Builduntu here: https://nathanpfry.com/builduntu-virtual-machine-android-rom-compiling/
XDA post: https://forum.xda-developers.com/showthread.php?t=2585828
That should save you some trouble hopefully. ROMs and kernels will compile.
Click to expand...
Click to collapse
Seems to be running from Virtual Box after the Extensions was added. Almost got the torrent downloaded but had to revert to the Google Drive and change to .html extension to download. Virtual Box 5.2.30 is the version.
Didn't sleep at all just got it booted which is a success at least. Thanks for providing.
Has anyone tried to turn on KVM on Xiaomi phones?
I tried to compile the kernel with the included KVM on Xiaomi Redmi Note 5. It compiled without errors, the KVM folder appeared with the files in the folder with the compiled kernel. But the phone with this kernel hangs on the logo. Maybe it's because of the miui?
To enable KVM, I added this to the defconfig:
CONFIG_VIRTUALIZATION = y
CONFIG_KVM = y
CONFIG_KVM_MMIO = y
CONFIG_KVM_ARM_HOST = y
One person with the help of such a compilation was able to enable KVM on their phones (Honor 7c pro, honor p20 pro, samsung galaxy s8), and the KVM works. Windows 10 arm launched.
TFGBD said:
Well it looks like our prayers are answered and our dreams came true. Thanks to the folks at limboemulator.weebly.com, there is now an ARM KVM enabled kernel available for the Snapdragon based Samsung Galaxy S8 and S8+
The latest Limbo PC Emulator even has KVM support even with the ARM builds.
Get it here:
https://limboemulator.weebly.com/android-arm-kvm---kernels.html
Click to expand...
Click to collapse
new link plsssssssssssssssss
monsterdimon said:
Has anyone tried to turn on KVM on Xiaomi phones?
I tried to compile the kernel with the included KVM on Xiaomi Redmi Note 5. It compiled without errors, the KVM folder appeared with the files in the folder with the compiled kernel. But the phone with this kernel hangs on the logo. Maybe it's because of the miui?
To enable KVM, I added this to the defconfig:
CONFIG_VIRTUALIZATION = y
CONFIG_KVM = y
CONFIG_KVM_MMIO = y
CONFIG_KVM_ARM_HOST = y
One person with the help of such a compilation was able to enable KVM on their phones (Honor 7c pro, honor p20 pro, samsung galaxy s8), and the KVM works. Windows 10 arm launched.
Click to expand...
Click to collapse
so does kvm works in honor 7c pro(as u have mention) ? And launch windows fastly?
also i wanna enable kvm in my redmi note4 .is it possible ? And How?
@TFGBD
Hi bro,
I have some questions that I hope you will answer me.
Note: My English language is bad ? ..
I was looking for how to activate the KVM feature on the LG G4 H818P phone to run Windows 10 ARM quickly on the phone, I have read that all ARM processors that work with Cortex-a15 or higher support KVM feature, but mobile manufacturers do not include this feature in the system, So,
I want a simplified way to activate this feature on my phone ?,
I want to know how fast I will get after activating KVM in Windows 10 ARM simulations ?,
will the method work with any device or each device has a method designated for it ?,
and
do you need experience ?,
How dangerous is it on the device?,
Do I need root privileges to benefit from KVM?
And will I need to reinstall the system again or only the kernel ? .
Thanks, bro ? ...
---------- Post added at 05:57 PM ---------- Previous post was at 05:52 PM ----------
tarikkaya said:
new link plsssssssssssssssss
Click to expand...
Click to collapse
link: https://github.com/limboemu/limbo/wiki/KVM
It's not simply a matter of enabling the KVM support in kernel. The vendor has to enable virtualization capabilities for the SoC in the firmware. On most (if not all) mobile platforms this will be disabled. Although there have been exploits that enable you to overcome that and they have been confirmed to work (think Lumia 950[XL] custom UEFI).
Hi all,
Anybody has enabled or knows of somebody enabling KVM on samsung galaxy tab s6? (4.14 kernel)?
I tried enabling the virtualization options in the kernel config, kernel compiles and device boots as normal but /dev/kvm does not appear...
"The vendor has to enable virtualization capabilities for the SoC in the firmware"
@konradybcio What do you mean by "firmware"?
Bye
Had a look at the kernel boot log and found the following line:
kvm [1]: HYP mode not available
So it appears the kernel is running in wrong mode and cannot operate as hypervisor
Probably samsung's bootloader (firrmare!?) does not allow it...

Categories

Resources