Jump to content
IGNORED

Altirra and winelib


Recommended Posts

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

 

  • Like 1
Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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).

Link to comment
Share on other sites

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!

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...