ivop Posted June 29, 2018 Share Posted June 29, 2018 Hi, I have asked it before, but I think it got buried in the main Altirra thread. Well, at least I got no reactions, partly because I did not explain why this would be a nice feature. The idea is to compile the Altirra source code against winelib, instead of running it with wine. On x86/amd64, this does not gain you much, except for maybe a slight decrease in startup time. But if one can get it to compile this way, you can also target another CPU, for example ARM/ARM64. This would allow us (hopefully) to run it on Android and perhaps even a (jail-broken) iPhone. I understand this might be a pretty huge undertaking. I wish it was just running winemaker and make, but it's not that simple. https://wiki.winehq.org/Winelib_User%27s_Guide Has anyone ever looked into this? And @phaeron, would you be willing to help people with this? Perhaps some guidance related to the source tree. A lot of those Japanese names mean nothing to me. Or maybe there's already a (short) description of the source tree, what's where and what's it for, et cetera... Regards, Ivo 1 Quote Link to comment Share on other sites More sharing options...
mellis Posted June 29, 2018 Share Posted June 29, 2018 Hi, I have asked it before, but I think it got buried in the main Altirra thread. Well, at least I got no reactions, partly because I did not explain why this would be a nice feature. The idea is to compile the Altirra source code against winelib, instead of running it with wine. On x86/amd64, this does not gain you much, except for maybe a slight decrease in startup time. But if one can get it to compile this way, you can also target another CPU, for example ARM/ARM64. This would allow us (hopefully) to run it on Android and perhaps even a (jail-broken) iPhone. I understand this might be a pretty huge undertaking. I wish it was just running winemaker and make, but it's not that simple. https://wiki.winehq.org/Winelib_User%27s_Guide Has anyone ever looked into this? And @phaeron, would you be willing to help people with this? Perhaps some guidance related to the source tree. A lot of those Japanese names mean nothing to me. Or maybe there's already a (short) description of the source tree, what's where and what's it for, et cetera... Regards, Ivo I have looked at precisely this. The problem I encountered is that WINE's headers are not source-compatible with the Altirra codebase. I am confident that a compatible set of headers can be hand crafted, but it is not something that one can accomplish by sitting down and poking at it for just a few hours. The deficiency here lies with WINE - their windows headers are a generation or two out-of-date compared to the Visual Studio codebase on which Altirra is based. Quote Link to comment Share on other sites More sharing options...
phaeron Posted June 30, 2018 Share Posted June 30, 2018 I can answer questions about the code base and fix non-compliant code, but not support or merge code any such port. If you think that porting to ARM/ARM64 is the biggest hurdle to getting Altirra running on Android or iOS, you're mistaken (and in fact the latest 3.10-test release already builds for Windows 10 on ARM64). Quote Link to comment Share on other sites More sharing options...
ivop Posted June 30, 2018 Author Share Posted June 30, 2018 I have looked at precisely this. The problem I encountered is that WINE's headers are not source-compatible with the Altirra codebase. I am confident that a compatible set of headers can be hand crafted, but it is not something that one can accomplish by sitting down and poking at it for just a few hours. The deficiency here lies with WINE - their windows headers are a generation or two out-of-date compared to the Visual Studio codebase on which Altirra is based. Good to hear I'm not the only one looking into this. And yeah, poking at it for a few hours (after doing the notepad example to assure I have a working toolchain) I stumbled exactly upon the problems you describe. That's why I thought it might be beneficial to start this thread I can answer questions about the code base and fix non-compliant code, but not support or merge code any such port. If you think that porting to ARM/ARM64 is the biggest hurdle to getting Altirra running on Android or iOS, you're mistaken (and in fact the latest 3.10-test release already builds for Windows 10 on ARM64). Yeah, it's only the first step. After porting to winelib, it has to be ported to Android NDK, which is a whole new problem in itself. Maybe this thread triggers somebody more knowledgeable about the windows API to look into this. I think I know too little about windows to take on this endeavour, not even regarding lack of time. Thanks for both your responses! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.