When developing an application for Windows Phone 8 on ARM, is there a way to simulate or emulate the app if it has ARM NEON assembly? I.e., is the code compiled for x86 and run natively, or is it there a way to actually emulate an ARM NEON machine?
The Windows Phone 8 emulator is an x86 environment, so ARM code isn't going to work.
There's no emulator, but there's a free remote device access service, courtesy of Nokia, at http://rda.cellulardata.com/devices . You can't debug, but you can watch it run. Bake in some visible reporting into your app, publish it as a beta, download to a device and enjoy.
Since it's a beta, it won't be available via store search; you'd have to type in a URL. A link shortening service or a forward page on your own web space would come in handy here.
You have to explicitly designate your own Live ID as a beta tester account for a beta project. The Store doesn't recognize the "I'm downloading my own app" situation.
...let me add that the Phone devices are still ARM, so if you want to run on both device and emulator, you'll need to compile your native code for both ARM and x86.
Related
Why is the Xcode Simulator called "Simulator" while the Android Studio Emulator is called "Emulator" when they bot basically do the same.
I'm not really sure if they are both simulators or emualtors.
Not even after reading this discussion:
Simulator or Emulator? What is the difference?
Emulator:-
In computing, an emulator is hardware or software that enables one computer system (called the host) to behave like another computer system (called the guest). An emulator typically enables the host system to run software or use peripheral devices designed for the guest system.
Performance Emulators are really slow. Emulating the actual hardware usually makes the software run slower than it would natively.
Example:- Google's Android SDK
MORE INFO IN WIKI
Simulator:-
A mobile simulator is a software application for a personal computer which creates a virtual machine version of a mobile device, such as a mobile phone, iPhone, other smartphone, or calculator, on the computer. This may sometimes also be termed an emulator.
MORE INFO IN WIKI
Faster than emulators
Example :-Apple's iOS Simulator
Here is the situation:
App: C# Platform: X86
DLL: C++ Platform: WIN32
Test1:
(Rugged Tablet PC) with: Windows Embedded 8 Pro
32-bit Operating System, x64-based processor
The app runs fine, but the call to the DLL crash.
Test2:
(Rugged Tablet PC) with: Windows 8 Pro
32-bit Operating System, x86-based processor
All OK! App and call to DLL are fine.
Thank you for helping me to figure what is going on. What is it crashing in Test1?
Thanks.
Windows 8 Embedded is customized to not include all the features that the full version has. This means less stuff running in the background, and less files that may need security updates.
But it also means if you try to use those features you will fail. The exception message should give you information about what was missing. I suggest that you log the exception information, to help you troubleshoot or work around the issue.
The included set of features is fully customizable, so you will need to contact whoever you got the tablet from in order to determine everything that is missing.
Before I ask my question, here's some background information so that you might have a better understanding of what I am trying to accomplish. I have searched around and found similar questions but none that are specifically what I am asking.
I am trying to port over a modified 32-bit PLX Pci9056 device driver to 64-bit. I also have a few User apps that utilize the driver. PLX provides a complete SDK, including the PLX API in a dll, driver source code, and tools to create and debug user apps. It uses the Windows DDK build environment to build the drivers. The following is how they all interact:
User app --> PLX API --> PLX Pci 9056 driver --> PLX chip
The 32-bit driver has been tested on Windows 7 32-bit and works properly. I believe I should be able to simply rebuild the driver in the 64-bit Windows DDK build environment (Of course after handling any pointer casting. Please correct me if I am wrong.) At this point the driver should run properly on a 64-bit Windows 7 machine.
I understand that usually 32-bit apps will run fine on a 64 bit machine, but in this case the User app is using the PLX API which was initially built only to support 32-bit. Will my User app still work in a 64-bit OS without updating it, or will I run into issues?
The PLX PCI SDK (now Broadcom PCI/PCIe SDK) has supported both 32b/64b drivers with the same source code for many years now. Special macros are used when required, etc. In Windows, your 32-bit app will work fine due to WOW layer. The PLX IOCTL structures always store pointers in 64-bit fields to ensure the structure does not vary if you build a 32-bit app. The SDK also provides 64-bit build of the API library, so you can also build your app as native 64-bit. The same app level source code, for the most part, should work in both Windows & Linux. The samples provided in the SDK are all identical source for both Win/Linux.
I use Mac OSX. I now want to try and develop an app on windows 8 for the Imagine Cup.
But i dont want to switch back to windows.
Is there any way to develop apps for windows 8 from mac?
Preferably free option....
The only available way is to use Virtual Machine because one cannot develop Windows 8 Modern UI app(Windows Store app) even with lower version of windows than windows 8. There are many virtual machines are available for free. Virtualbox maybe a good start.
www.techspot.com/guides/503-windows-8-virtual-machine ,A Tutorial to create vm of windows 8.
Assuming that windows phone is the platform you chose to develop app, again you need windows to create windows phone app.
Kick start your windows phone app development here .
I actually use VMWare on a Mac to do all of my Win32 development on Windows 7 and VS2010.
You will need:
a powerful mac (i7)
lots of RAM (I have 8G, I wish I had 16G)
a 7200rpm HDD or SSD.
With that, it's really great for me. I've been doing this for a few months now without a single kernel panic or blue screen at all.
Note: You cannot really develop for WP7 using this sort of configuration. The WP7 simulator uses VirtualBox, which either runs extremely slowly or not at all in other VMs, based on our experience. Will need a real Windows machine for that ^_^
It's a workable scenario. Good luck!
I want to develop app for windows phone but I got a big problem, my laptop can't run the emulator, after checking the requirements I know that my vga driver doesn't support it. My question is, are there any alternative for windows phone emulator instead of the officially one from Microsoft? Or any other way to tweak it to be run on my laptop? Thanks
From my understanding there isn't any other windows phone emulators. If you can get a hold of a windows phone 7 it would be possible to test on that. You can try to contact a Microsoft windows phone evangelist in your area, the one in my area helped me get a phone to test on.
I am not sure about tweakinging your laptop to get the emulator to work. Is your vga driver up to date? If not maybe try to update it. I know it takes quite a bit of computer power to run the emulator smoothly.
If you wanted you can try to register for a virtual lab, here you remote into a windows machine and are able to build and test on the remote machine, but it is time limted and is usually for a class to learn about it. https://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&EventID=1032485600&%3bculture=en-US