26a52988a6213749a451ccd592b34ffe7dc29359
This gets us everything we need (I hope!) to support 16-bit code in LX binaries and call into 16-bit OS/2 APIs. This is just enough to call into VioGetMode() (which isn't otherwise implemented yet) as an example. If this is ever used Winelib-style to provide an OS/2 API to native Linux binaries, the 16-bit system APIs are 32-bit clean and C callable, as one might expect them to be. All the tapdancing is to support existing LX binaries in the loader and bridge between the 32-bit clean APIs and existing 16-bit code that expects to call 16-bit APIs. This was a staggering amount of effort, but yay! Other fixes and improvements probably leaked into this commit, as a lot of code got touched and a lot of research and debugging took place.
What is this? It's a program that loads and runs OS/2 .exe files on Linux. Does it work? Barely. It runs exactly one simple Hello World program right now. Why? Because. Does it work on Mac OS X? No. I have questions. I have answers: icculus@icculus.org --ryan.
Description
2ine with fixes for the TI TMS34010 OS/2 toolchain
1.4 MiB
0 Stars
1 Watchers
0 Forks
Languages
C
73.4%
Perl
25.9%
CMake
0.6%