Windows Mobile Emulator For Linux - linux

I was developing Windows Mobile applications on a Windows machine using C#, just to test the platform, but now I'm back to Linux and now developing for Windows CE on it(CeGCC and FPC), but it's very boring to compile and send the executable to the device everytime just to do a simple test, then I want to know where can I find a good emulator for Linux to debug my projects.

Qemu is really nice and its open source. You can also attach a debugger to Qemu to debug operating systems, comes in handy if you are writing device drivers. Using QEMU you can emulate other processor types such as ARM. personally I use VMWare workstation unless i need to emulate another processor type.

Unfortunately, your only bet is trying to run Microsoft's own emulator under Wine. This is the only ARM emulator you will find Windows Mobile images for. Search the web, some people had success with this approach - though the installation is tricky. Oh, and you won't get network working in the emulator, as this requires a special Windows device driver (which obviously won't work under Wine).
For this last reason, you may want to make a full desktop Windows (or possibly ReactOS) installation inside qemu, and install the PDA emulator inside the PC emulator.
And think how cool it would be to play Super Mario Bros inside a NES emulator inside a PDA emulator inside a PC emulator! :)))))

Related

Built in keyboard not working on virtualbox

I'm trying to run macOS on my windows 10 laptop. But everytime I boot my system it tries to find a startup.nsh file, I know how to create a .nsh file its just that my virtual box is not letting me type at all. I even tried to use the soft "virtual" keyboard but still nothing. Does anyone have a fix?
Making a macOS VM on windows is not simple as any other operating systems, there is many tutorials for that like :https://www.makeuseof.com/tag/macos-windows-10-virtual-machine/
This is because apple makes it's software only for it's products and isn't made to be compatible for other devices out of the box.

Alternatives for windows phone emulator in Non-slat machines

Post installing Windows 10 , and then Visual studio 2015 pro, I found , to my disappointment , that my laptop model G480lenovo doesn't support Hardware virtualization. In fact there is no entry for "CPU" in my BIOS configuration section.
So then , there is no phone emulators which I could use available in my VS
What are the alternatives here for the emulators that I could use, for testing universal windows applications?
Any pointers here?
If you cannot run Hyper-V on your machine, you need to test it directly with device.
But...I think it's better to double confirm if the CPU doesn't support SLAT. There is tools called Coreinfo. And you can download it from windows sysinternals.
After you download it and extract to a folder(for example: c:\coreinfo). Open command prompt as administrator and navigate to the folder(cd c:\coreinfo), then run coreinfo.exe -v (as below image shows). You can see it is supported on my end.
I did a quick research and found the G480 Lenovo uses i5-3210M or i3-2370M. And found the following specifications on intel official website which indicates both CPU support the EPT(Extended Page Tables) which is SLAT.
http://ark.intel.com/products/67355/Intel-Core-i5-3210M-Processor-3M-Cache-up-to-3_10-GHz-rPGA
http://ark.intel.com/products/53442/Intel-Core-i3-2370M-Processor-3M-Cache-2_40-GHz
If you cannot find the options in BIOS, I think you need to contact your vendor to help you and maybe you need to update your BIOS firmware.

Building Qt apps for Windows Phone on Linux

Related to this
I'm planning to develop an app for Android using Qt Quick Controls and an Android Emulator. The same set of components is said to work on Windows Phone. Thus I'd like to build the app for Windows Phone as well.
Unfortunately, Qt for Windows Phone is only available for Windows.
I don't own any Windows phone. I'm using a computer running Linux.
Is it possible to build the app for Windows Phone and test it in an Emulator without virtualizing/dual-booting Windows
Well there is Wine. This is what wikipedia says about it;
Wine (short for Wine Is Not an Emulator) is a free and open source compatibility layer software application that aims to allow applications designed for Microsoft Windows to run on Unix-like operating systems. Wine also provides a software library, known as Winelib, against which developers can compile Windows applications to help port them to Unix-like systems.
You can find more info about Wine here; https://www.winehq.org/
I haven't tried it before but since it says "allow applications designed for Microsoft Windows to run on Unix-like operating systems," I'm thinking it should work.
This is your only option. If it doesn't work, then i guess you should think about running windows on virtual machine or dual booting with windows. Good luck!

Remote Control WinCE 6.0 device from Windows 7

I am trying to find out a tool to remote control a Motorola MC3190 device running Windows CE 6.0 from a Windows 7 machine.
I have already used Mymobiler with Intermec CN3 device so I tried the answers in this question but I am unable to get it to work.
I have tried both remote.exe.40 and remote.exe.50 in the Mymobiler folder
Using Task Manager on CodeProject mentioned in a question on superuser it seems remote.exe completes execution very quickly (or is crashing silently).
My Start/Programs menu has a MyMobiler entry, so somewhere along the line something seems to have got installed
But when I run Mymobiler on desktop it cannot connect, its icon in system trey remains gray and on mouse hover says Not Connected/
In Proof MyMobiler works for WinCE video the processor is ARM920T-PXA270M while my device has a Marevell, PXA32X-P (link to image) processor could that be the reason?
I have also tried ActiveSync Remote Display from Windows Mobile Developer Power Toys. It installs but at start up it shows an error box with message "The OS or CPU of this device is unknown to this application"
How do I get MyMobiler to work with Motorola MC3190 device running Windows CE 6.0?
Is there any other tool, preferably free, to remote control this device?
EDIT: I came across EveryWAN and found an installer. It works out of box, but it is not available for commercial use and the web-site seems defunct.
PS: I realize the tags are not accurate but I wanted to use something that will attract attention of experts in these similar tags.
I want to clarify one answer to the above which is correct. When using the Microsoft PowerToy activesync remote display, there must be an application on both sides - host(the phone) and remote (the pc). The same is true for MyMobiler.
Install the powertoy on the pc.
For the original Poster: This is what your error message means:
In the case of Activecync Remote display, for newer devices (anything above ARM4 cpus - which means, 2008 and up, or over 200mhz cpus - as a very general guide), the display software cannot detect what type of device you have (it's too new, and not in the list).
For the motorola mc3190, your cpu is arm5 compatible,
and should work with software that has arm4 compliant components. ARD does have arm 4 options. see here...
To Fix it:
You must use file explorer on your pc, and navigate into the application folder: c\Programs...\Windows Mobile Developer...\ActiveSync...\Devices\wce400\armv4t and copy the two files.
While still on the pc, you must then navigate to the Windows folder of the device (with activesync running, OR the phone configured to be seen as a hard disc), use explorer on the PC to navigate to the device.
Vaguely, it will look like this:
Explorer. > Device (such as HTC Phone:)
Or, X:\ , where x is a drive letter.
The first subfolder your select should be Windows. Paste the two files there.
The two files are now copied onto the phone.
At that point, you must, using the phone, load it's file explorer and navigate to that Windows folder on internal memory and manually run cerdisp2.exe that you have now copied there.
With activesync running, and the phone connected to the pc,
You can now run the powertoy active remote display on the pc, and it will communicate with the exe that is running on the phone.
ActiveSync on Xp, or Windows Mobile Device Center on Windows Vista/7/8 must be running for this all to work.
Alternately, the app allows for a networking ip connection instead of activesync, but I have not used it.
When you are done using this app, you must run the kill.exe on the phone, in the windows folder (the second file you copied), to unload the dll that is running.
I can verify this setup works on Xp, Win7 and Win8 - with an Xscale ARM11 528mhz cpu phone.
For MyMobiler, visit their site and get the newest version.
It WILL fix connections that fail, if you have the older version. It's free. They don't support it anymore.
My Mobiler must have activesync running and showing the device connected.
My Mobiler is vastly superior to ActiveSyncRD.
* It will automatically install the pc side app, and push the remote app to the phone, via activesync.
*Further, when activesync is running and anytime you connect the phone, the MyMobiler app will autoload on the phone as well.
That way, whenever you run MyMobiler on the desktop, it will connect to the phone and load right up.
*My Mobiler allows full resolution display, while ARD is limited to 320x400 or similar. 640x800 looks much better.
*MyMobiler also allows full mouse gesture sends, and copy and paste. ARD offers very limited mouse gesture compatability.
MyMobiler also allows IP connections, but they indicate this is slower.
I am now using MyMobiler with Win8 and a touchpad w/ multitouch, and the mouse gestures send very well.
For Windows V/7/8, you might need to run compatability mode on the Mymobiler.exe file. Navigate to the MyMobiler folder, which might be on your desktop. Drill down til you find the exe. Right Click and chose properties. Compatability. Run Compatability Mode for this file, and select XP.
More Notes:
These apps are slow, because USB is slow.
If you enable Fast USB on the phone, it will help speed up any Remote Display noticeably - however Fast USB is unstable, and doesnt work on some configurations. For me, it doesnt work on XP, but does on Win8 - though slightly unstable at times.
On the device: Start> Settings Icon>Connections icon >USB to PC icon. Tick box to enable.
Also, MyMobiler on Win8 will sometimes refuse to connect. Fully unload mymobiler, disconnect the phone, reconnect the phone and watch for activesync to confirm connection. Then reload mymobiler. Sometimes full system reboots are needed, but that's rare.
Windows Mobile Remote Controller app on CodeProject - as linked above, looks excellent. It's for Windows Mobile 7 and 8 - which is fantastic. He provides a rapi enabler to allow use with WinMo 6 / 6.5 devices, which also looks promising.
I've never used MyMobiler, so I can't help there, but how about other options?
Did you look at the Windows Mobile Remote Controller app on CodeProject?
I've had good luck in the past with SOTI's Pocket Controller. It once was free, or had a free version anyway. Not sure if they still do.
Windows CE came with a tool called CERDISP (short for CE Remote Display), which could be built with Platform Builder. I've seen it available as a binary download (like here, for example) on the web before, so no need to actually build it yourself.
I've used MyMobiler (remote.exe.50) on my Windows Mobile 6.5 handheld. It sounds like you got it running. Did you run the MyMobiler client on your Windows 7 box and connect to your handheld by IP address? (Right click on the icon in the Notification Area on Windows 7 and choose "Connect IP...".)
It defaults to the ActiveSync address (169.254.2.1?), so if you're not docked and running ActiveSync, it will fail to connect initially (but manually connecting should work). Misread -- you were able to run the client, but not the server.
You can also elect to run a VNC server on your handheld and use a regular VNC client to connect to it. I've built this one for Windows Mobile 2003 without much of a hitch on Visual Studio 2008. You might have similar luck with Windows Mobile 6.5.
EDIT: If you get the message that reads:
'%s' is not a valid Pocket PC application.
when running the MyMobiler client, then that means that your CPU type (or OS) is incompatible with the application -- so I don't think your PXA32X-P is to blame; especially since the MC3190 appears to be able to run Windows Mobile 6.5 (i.e. the CPU should be "fairly" modern, with support for armv4i). But since you haven't mentioned an error that looks like that, I'd suspect that your build of Windows CE 6.0 doesn't contain all the required dependencies.
The first thing I'd check is if all of the dependencies of MyMobiler are present in your build of Windows CE 6. Windows CE is highly customizable; as such, not all software components will be the same across different builds of Windows CE. MyMobiler is built targeting Windows Mobile, not Windows CE, so there's a good chance that your build of Windows CE on the MC3190 doesn't have what's required, while the video you linked does.
With regards to the ActiveSync Remote Display Power Toy, the message that you received sounds like the desktop application didn't know what version to deploy to your device.
Per readme.txt in the ActiveSync Remote Display package:
If you see error message "The OS or CPU of this device is unknown to
this application", it usually means the CPU type of the current
device, typically a Windows CE device, is not recognized by this tool.
The workaround is
1. Find the CPU type of the device (from the manual or the manufacturer).
2. Copy \Devices\wce400\\cerdisp2.exe to the \windows folder of the device.
3. Run "cerhost2.exe -m" on the desktop/laptop.
4. Run cerdisp2.exe on the device.
5. When the remote display is no longer needed, terminate cerdisp2.exe on the device.
You should be able to choose the armv4t version; if not, use the armv4 version.

can I run Windows Embedded CE 6.0 on a regular PC?

As i just need the hard RT capabilities, can I install and run Windows Embedded CE 6.0 on a regular PC ? (dell or so ?), and UDP out some data ?
You can install Windows CE in a PC, but you would need to create your own image. See this tutorial in MSDN. Also google for CEPC.
Finally visit Mike Hall's blog. I remember reading a related article there, but I can't find it now. Anyhow, this blog is a great resource for Windows Embedded.
(From working with Windows CE 5.0, so there may be some differences, YMMV.)
You should be able to run Windows CE both in an emulator and installed on the device itself as the host operating system.
In the first case all you need is an emulator, which is provided with the development kit and in a more expensive version of Visual Studio. This will run the OS fine, albeit a bit slow depending on the architecture you choose to build the Guest OS for.
In the second case you will actually need to find or write drivers for the hardware that you want to run on and use. This will require the Platform Builder application (I believe it's a plugin to Visual Studio now) and knowledge of the hardware that you are running on. Windows CE itself does support x86 processors, although I don't remember if it supports all x86 processors (instruction sets) or just 486's.
If you want to go down the second route you also may be able to get an Intel Atom or AMD Geode board support package (BSP) which will help you develop the drivers.

Resources