Windows CE

ghans wrote:I suppose WinRT has even harsher license terms ?And then , it has high hardware requirements and needs secure boot which both aren't available on the Pi.Futhermore , it is designed for ARMv7 , not ARMv6 boards AFAIK.

ghans

Windows 8 RT will never make it onto the dead ARMv6 platform without the help of Microsoft engineers rebuilding the kernel, which isn't going to happen because it would potentially mean the NT 6.2 kernel would be floating around... As for Windows Embedded Compact, I would love to see a port!! Windows Embedded Compact 8 is coming out in Q1 2013 so perhaps then development could really kickstart. As for the comments about there being too many distributions, maybe back in early days but now we have a rock solid hard float rasbian release we can go and try to get some other kernels on the RPi, NT on the RPi would be awesome because NT pretty much powers the world (I know there are a lot of linux fanboys on here, don't get too upset). Is anyone working on any kind of port at the moment?

ghans wrote:I suppose WinRT has even harsher license terms ?And then , it has high hardware requirements and needs secure boot which both aren't available on the Pi.Futhermore , it is designed for ARMv7 , not ARMv6 boards AFAIK.

ghans

Windows 8 RT will never make it onto the dead ARMv6 platform without the help of Microsoft engineers rebuilding the kernel, which isn't going to happen because it would potentially mean the NT 6.2 kernel would be floating around... As for Windows Embedded Compact, I would love to see a port!! Windows Embedded Compact 8 is coming out in Q1 2013 so perhaps then development could really kickstart. As for the comments about there being too many distributions, maybe back in early days but now we have a rock solid hard float rasbian release we can go and try to get some other kernels on the RPi, NT on the RPi would be awesome because NT pretty much powers the world (I know there are a lot of linux fanboys on here, don't get too upset). Is anyone working on any kind of port at the moment?

I doubt it. The only people who could do it would be Microsoft.

As to NT powering the world - are you sure? The vast majority of compute devices out there run Linux or Unix. NT or derived product on the rapidly reducing desktop perhaps...but that's about it.

Volunteer at the Raspberry Pi Foundation, helper at Picademy September, October, November 2014.

MaDoGK wrote:That being said, if your gonna make a windows for the pi, why not go for windows RT?

Because source is only available for CE not RT. Even then the source for CE is not open. It is tied down with loads of restrictions and NDA's. It isn't free either. Microsoft dreamspark accounts on some of the higher tiers get access to it.

RT is for ARMv7, it has no source available. Even on ARMv7 it requires a pretty powerful CPU, we're talking anything under the 1ghz mark with less than 2 cores being hopeless. Even 1ghz dual is still probably too slow.

CE however was meant for embedded devices. It has been available on many platforms. The pi probably wouldnt be the optimal experience but would still likely run it.

I have a Microsoft Dreamspark account. It has access to Windows Embedded CE 6.0 and Windows Embedded Standard 7. The only problem is that I do not have any skills at all. If someone could guide me in how to do it, I would be glad to in my spare time.

jamesh wrote:As to NT powering the world - are you sure? The vast majority of compute devices out there run Linux or Unix. NT or derived product on the rapidly reducing desktop perhaps...but that's about it.

I have been out of the IT sceen for about 10 years but you would be supprised how many small business owners put up servers with NT or Windows server. I would try to talk them into Linux but they were always like... "I understand Windows." Yeh that is why you are paying me to come here and fix it. I had seen some pretty large databases running on Windows servers and most of the time they would choke once more than a handful of people had logged on. Now that all I do is power delivery and backup power for servers I don't have a bunch of hands on but I still see the government here installing MS Sharepoint servers all the time even though no one seems to like Sharepoint. I would venture to say that outside of those two examples most companies are migrating to Linux.

I moved all my personal servers to Linux years agao and have no regrets. Before with windows servers I was always having various stupid problems now my media share runs with a meeger 128mb of ram and I have only had to do a reset on it once. Usually there are good enough guides for Linux to make setting up a server a snap.

I'm still not convinced of Linux on the desktop but that is mostly due to my heavy cash investment in Windows software.

jamesh wrote:As to NT powering the world - are you sure? The vast majority of compute devices out there run Linux or Unix. NT or derived product on the rapidly reducing desktop perhaps...but that's about it.

I have been out of the IT sceen for about 10 years but you would be supprised how many small business owners put up servers with NT or Windows server. I would try to talk them into Linux but they were always like... "I understand Windows." Yeh that is why you are paying me to come here and fix it. I had seen some pretty large databases running on Windows servers and most of the time they would choke once more than a handful of people had logged on. Now that all I do is power delivery and backup power for servers I don't have a bunch of hands on but I still see the government here installing MS Sharepoint servers all the time even though no one seems to like Sharepoint. I would venture to say that outside of those two examples most companies are migrating to Linux.

I moved all my personal servers to Linux years agao and have no regrets. Before with windows servers I was always having various stupid problems now my media share runs with a meeger 128mb of ram and I have only had to do a reset on it once. Usually there are good enough guides for Linux to make setting up a server a snap.

I'm still not convinced of Linux on the desktop but that is mostly due to my heavy cash investment in Windows software.

I'm sure there are indeed lots of NT based systems/servers out there, as you say. But I believe there are just as many Linux/Unix server, and of course with Linux unpinning Android and Unix under iOS, that's a lot of compute devices running Linux like OS's.

Sharepoint, BTW, is one of the worst pieces of software for business I have ever seen. It is utterly appalling.

I like my Linux on Desktop - I'm one of the few people, apparently, who like Unity!

Volunteer at the Raspberry Pi Foundation, helper at Picademy September, October, November 2014.

jamesh wrote:I'm sure there are indeed lots of NT based systems/servers out there, as you say. But I believe there are just as many Linux/Unix server, and of course with Linux unpinning Android and Unix under iOS, that's a lot of compute devices running Linux like OS's.

Ahhh, this old chestnut. Consider:

1) the Linux that runs on the servers that allow us to communicate here and all over the intertubes,

2) the Linux embedded on your router, or canteen's coffee machine, or

3) the Linux kernel buried deep within Android. They all have one thing in common - the Unix-ey bit is completely invisible to the end user, 'cos someone actually bothered to design it that way, instead of just tossing it out there as yet another alpha / gift to it's "lucky recipients". Consider also those smart folks / raging opportunists (delete as applicable) at Apple who have managed to turn out an interesting and mostly effective variant of the Unix-ey thing that hardware and software manufacturers actually consider worth supporting (despite the extra work that every Apple OS update causes them). (Desktop) Linux is excellent for anything vaguely related to networking, but once one strays far from that paradigm it starts getting to be hard work thanks to an absence of quality control in those 3rd party packages and a paucity of support from "grown up" hardware / software vendors.

Perhaps one day someone will figure out a viable third way (that doesn't include bloody Android, or the rest of the google spyware suite!).

jamesh wrote:I like my Linux on Desktop - I'm one of the few people, apparently, who like Unity!

I have a Microsoft Dreamspark account. It has access to Windows Embedded CE 6.0 and Windows Embedded Standard 7. The only problem is that I do not have any skills at all. If someone could guide me in how to do it, I would be glad to in my spare time.

Its not something that someone with no skills can do without such a high amount of guidance that they shouldn't have a right to claim much involvement.

For those interested in my progress, I have ported Windows Embedded Compact 7 (Windows CE) to the RPi. I have the kernel running, KITL support and a basic video driver. However, without the USB host controller driver, I can't get keyboard/Mouse input going. I'm in the middle of trying to get the USB HC driver ported. When I do, I'll post the BSP.

BTW, someone mentioned posting the BSP would violate licensing. Not true. I wrote the BSP so I can post it. What I can't do is provide the Windows CE OS. However, an evaluation version is available from Microsoft for free (with a surprising amount of source) that when coupled with the BSP would enable the OS to run.

One last thing, WinRT requires an ARMv7 core so wouldn't run on the RPi even if I could get access to the porting docs.

dboling wrote:For those interested in my progress, I have ported Windows Embedded Compact 7 (Windows CE) to the RPi. I have the kernel running, KITL support and a basic video driver. However, without the USB host controller driver, I can't get keyboard/Mouse input going. I'm in the middle of trying to get the USB HC driver ported. When I do, I'll post the BSP.

BTW, someone mentioned posting the BSP would violate licensing. Not true. I wrote the BSP so I can post it. What I can't do is provide the Windows CE OS. However, an evaluation version is available from Microsoft for free (with a surprising amount of source) that when coupled with the BSP would enable the OS to run.

One last thing, WinRT requires an ARMv7 core so wouldn't run on the RPi even if I could get access to the porting docs.

Nice job. Check out the USB threads on here for USB information - not going to be an easy task I imagine.

Volunteer at the Raspberry Pi Foundation, helper at Picademy September, October, November 2014.

I had the same and olds enough I just posted a forum thing on the rip website about it (in the wrong section) but anyway is there an os that is similar to windows which is compatible with the raspberry pi. If so could u plz reply I would really appreciate it

• Don't like the board ? Missing features ? Change to the prosilver theme ! You can find it in your settings.• Don't like to search the forum BEFORE posting 'cos it's useless ? Try googling : yoursearchtermshere site:raspberrypi.org

dboling wrote:For those interested in my progress, I have ported Windows Embedded Compact 7 (Windows CE) to the RPi. I have the kernel running, KITL support and a basic video driver. However, without the USB host controller driver, I can't get keyboard/Mouse input going. I'm in the middle of trying to get the USB HC driver ported. When I do, I'll post the BSP.

BTW, someone mentioned posting the BSP would violate licensing. Not true. I wrote the BSP so I can post it. What I can't do is provide the Windows CE OS. However, an evaluation version is available from Microsoft for free (with a surprising amount of source) that when coupled with the BSP would enable the OS to run.

One last thing, WinRT requires an ARMv7 core so wouldn't run on the RPi even if I could get access to the porting docs.

If you want USB mouse and keyboard support, you need to add the HID drivers. What I'm very interested in is how you did build your image for the raspberry. Which architecture did you use and how did you export the image. I tried it myself and didn't get it running. I would need some help from you.

Just posting to say that this is really cool. I never in a million years expected this to be possible. I'm not much of a Windows user, but just for the sure awesomeness of getting Windows to run I'm in

I'm sort of collecting OSes at the moment - I have Linux, Plan 9, RISC OS and Android all installed on one SD card - and I hope to be able to add Windows CE

Current update: I'm still stuck porting the CE USB Host controller driver. Once I get the USB HC driver up, all the standard CE client drivers (storage, HID and such) should just work.

For those who commented about "Windows" remember I'm porting Windows CE, not the Desktop/Server Windows OS. Windows CE is a completely different OS albeit with a similar Win32 API. The driver architecture is completely different from the desktop.

As far as how I compiled the OS. I'm using Platform Builder 7 to create a standard nk.bin image. By setting the ROMBASE and ROMSIZE tags in the config.sys file, I'm also creating an nk.nb0 file which is a simple binary image of the file. I base the image at 0x1000 physical, 0x80001000 virtual for RAMIMAGE and put the RAM starting at 0x81000000 since 32 M is far more than enough for the OS image. I had a bit of trouble with the jump code that ROMIMAGE places at the start of the binary so I simply patched nk.nb0 to branch to 0x1000 where it picks up the jump to the Startup entrypoint for the kernel. Finally, I rename nk.nb0 to kernel.img and copy it to the SD card. The Pi bootloader loads GP, it boots, loads kernel.img (nk.nb0) into RAM and I'm off and running.

I'm using the serial port as my KITL link back to the PC which allows the standard file transfer and debug out. I'm having a bit of trouble with the kernel debugger link so I've proceeded without the debugger up to this point. I hope to blog about all this but coding is much more fun and I spend the remainder of my time earning a living. Hope this helps.

what you've written sounds great. I'm gonna try that for my system. I'm not that deep into WE Compact 7, yet, but I think I'm gonna find those settings.Try searching for HID to add support for USB mouse and keyboard.

I think self-fragmentation, whilst not desirable from the point of view of some (including me), is really part of the 'openness' of it all.

I personally think Raspbian is where all the effort should go.

But... there are people who need and/or want RiscOS, or Fedora, or Arch, or Windows CE or whatever else, and their reasons may be every bit as valid (if not more so) than mine.

Perhaps their personal preference, or their companies policy around OS selection, an existing investment in knowledge, an existing investment in code base, etc.

So as much as I would like to say "forget CE and pour your effort into Raspbian", I think that having the choice, and the moral support of fellow hardware users and hacking enthusiasts is ultimately the best thing.

Thats without touching on the moral debate around FOSS, which although I have an opinion on, frankly isn't worth bringing up in this thread. Those who oppose non-FOSS stuff like Windows CE on RPi can simply not use it

I created a Linux image following the instructions and booted the image to make sure everything was fine.

Then you simply copy the nk.nb0 over to the SD card renaming it kernel.img. You will have to be careful on how you set up the relationship between the ROMBASE value and the NK RAMIMAGE section. I never got it completely write so I have a program that patches the offset in the initial jump field at the beginning of the nk.nb0 file.