I think it's an awesome idea, I've wanted a WM6 emulator for a long time. Probably the only thing I'd use it for is Bubble Breaker and TomTom if I ever upgrade to the new iPhone, but it would be cool just to be able to say I can run all the thousands of WinMo apps that are out there. I don't get the anti-Microsoft sentiment in this thread, it doesn't make any sense to me, but whatever. I used WM6 smartphones and PDA phones long before I got my iPhone. I use my iPhone exclusively now, but I still have a Sprint Mogul and Sprint Touch. The iPhone is slicker, smoother, and considerably more intuitive, but there is still a lot of things I like better on WinMo phones.
Honestly, I think a WinMo emulator makes a lot more sense than running Linux. What in the world are you going to do with that? OS X is already UNIX based, so what would running Linux buy you?
So far, I've downloaded the SDK and installed it. I watched a few of the intro videos. Unfortunately, that's as far as I've gotten since I don't have a lot of free time. I'm a programmer by trade, but in my job I write business logic in
VB code. OOP is pretty new to me, and something as advanced as writing an emulator doesn't even seem within reach of my capabilities, especially since I don't even know C, much less Objective C. I'll keep plodding along as I find time though. Learning the iPhone side is probably a minor hurdle compared to getting WinMo to run on the iPhone. I think dual boot would be more difficult since it would require coding device drivers that control the hardware directly. It would be easier, I think, to write virtual device drivers that work through Apple APIs. So rather than running WinMo natively, I think it'd be easier to run it as an app. Otherwise, you'd need to reverse-engineer the iPhone firmware. The emulation shouldn't be too bad, iPhone is ARM11 I believe, and so are many WinMo phones so the CPU won't have to be emulated. The iPhone is what, 400MHz? Many WinMo phones run fine with a 195MHz OMAP850 so I think in theory, it could run pretty fast on an iPhone. One hurdle is writing the device drivers, I think you'd need to get a hold of WinCE Platform Builder which I have not been able to find.
Anyhow, I would love to do it, but there is a TON of knowledge and experience I'm lacking to pull this off.