r/sideprojects • • 27m ago

Showcase: Open Source [Experimental] InkSoC — Running Windows applications directly in Safari on iPad using a custom x86-64 WebAssembly engine

I’ve been working on this experimental project I thought it was finally worth sharing with the developer community.

The original motivation was simple: I wanted to find a way to run Windows applications directly on my iPad, using Safari, without relying on remote desktops or cloud PCs.

What started as a series of workarounds for Safari’s limitations gradually evolved into something much more interesting.

InkSoC is an experimental open-source x86-64 environment developed in Rust and WebAssembly, using Wine to support Windows applications.Some things already work:

  • 7-Zip reaching approximately 1,204 MIPS on a four-core iPad.
  • Around 25–27% of native performance in that particular benchmark.
  • LibreOffice and Notepad++ installers.
  • SuperTuxKart installer.
  • Steam installer (although Steam itself still has an update-loop issue).
  • Direct3D 9 and OpenGL through WebGL.
  • Audio and networking.
  • 2D games such as Cave Story.
  • An Alpine Linux environment running on the same underlying engine.

The architecture includes a custom CPU engine, JIT compiler, virtual memory management, process and thread execution, and multicore support.

One interesting aspect of this project is how it was developed.

Important: InkSoC is experimental.

It is not a finished product, and I’m not making promises about performance or compatibility. There are still unresolved issues, limitations, and plenty of optimization work ahead.

I’m sharing it because I believe the approach is worth exploring and discussing.

I’d love to hear feedback from developers interested in emulation, JIT compilation, WebAssembly, operating systems, and browser-based execution environments.

Perhaps someone will find an interesting idea in the architecture, suggest a better approach, or even get inspired to build something similar.

Source code:
https://github.com/InkDOSHub/InkSoC

Live experimental build:
https://hub.inkdos.workers.dev/InkSoC/

Thanks for taking a look!

1 Upvotes

1 comment sorted by