How to compile openmsx for windows mobile devices

Page 5/5
1 | 2 | 3 | 4 |

By wouter_

Champion (285)

wouter_'s picture

07-12-2010, 23:36

The openMSX build system does already support ARM. Debian has binary packages of openMSX ARM available. There are even some routines in openMSX that are manually optimized using ARM assembly.

OpenMSX should build fine if all libraries it depends on are available. The only platform dependent library is SDL and that library has been widely ported (I don't know if it's already available for android).

You should not have to change any actual source code. Though you may need some tweaks in the build scripts for a new platform. I guess these tweaks will be smaller for android than for windows mobile, but I don't have experience with either of these two platforms.

By mth

Champion (446)

mth's picture

08-12-2010, 00:53

The Visual Studio build, which you were using for creating the Windows Mobile port, only supports two CPUs right now: x86 and x64 (also known as x86_64). You can change the CPU selection using "targetCPU" in "build/msvc/genconfig.py". Like Wouter said, ARM support in the openMSX code is present and working fine. However, the particular combination of Microsoft's compiler with an ARM target has never been tested, so it is possible you'll run into invalid #if preprocessor checks in the code. But those should be easy to fix.

For Android the build part is easier, since as far as I know the native SDK for Android uses the GNU toolchain (gcc, binutils etc). However, as far as I know Android apps are Java programs which can use native code, so you'll need some glue to make openMSX start from Java and give it access to the screen and inputs. Take a look at how other SDL apps were ported. Another possible issue is that Android has its own libc. openMSX can compile with GNU libc (glibc), BSD libc, Microsoft's libc and uClibc, but in each case we had to make some small adjustments to make that possible.

Page 5/5
1 | 2 | 3 | 4 |
My MSX profile