HydrogenAudio

Hosted Forums => foobar2000 => General - (fb2k) => Topic started by: Myria on 2013-02-20 09:33:38

Title: Windows RT port for jailbreak
Post by: Myria on 2013-02-20 09:33:38
Now that there is a Windows RT jailbreak, it'd be kind of cool if a non-Xbox Music player existed for Windows RT.  foobar2000 would be nice to have, but unfortunately, it's not open source.

Would the devs be interested in porting it?  In general, porting to Windows RT is ridiculously easy if you don't use assembly language in your program.
Title: Windows RT port for jailbreak
Post by: Garf on 2013-02-20 10:31:31
In general, porting to Windows RT is ridiculously easy if you don't use assembly language in your program.


I'd strongly suspect that if your program is close enough to the Windows internals like foobar2000, it won't quite be so "ridiculously easy" as any kind of missing or differing API is going to bite you in the ass.

foobar2000 uses some assembler, but I'm sure for porting that's going to be the least of the worries.
Title: Windows RT port for jailbreak
Post by: db1989 on 2013-02-20 17:59:40
http://www.hydrogenaudio.org/forums/index....showtopic=98574 (http://www.hydrogenaudio.org/forums/index.php?showtopic=98574)
Title: Windows RT port for jailbreak
Post by: Myria on 2013-02-20 22:48:40
I'd strongly suspect that if your program is close enough to the Windows internals like foobar2000, it won't quite be so "ridiculously easy" as any kind of missing or differing API is going to bite you in the ass.

foobar2000 uses some assembler, but I'm sure for porting that's going to be the least of the worries.


I ported Process Hacker (http://processhacker.sourceforge.net/) to Windows RT desktop mode in about 6 hours, and Process Hacker uses undocumented Windows NT APIs everywhere - there are few programs that are closer to the internals than that.  The only annoying parts of the port were related to Process Hacker improperly using #ifdef _M_IX86 to mean "if 32-bit".  Once I got it to build, Process Hacker ran the first time.

When coding for a jailbroken Windows RT device, you've essentially got a complete version of 32-bit Windows, with the only difference being the processor, and the fact that you have to make some import libraries yourself.  (For example, Visual Studio 2012 doesn't come with an ARM version of comctl32.lib, so you have to make your own.  It's quite easy, though, and someone already made most of the Windows DLLs' import libraries for Windows RT.)