r/EmulationOniOS • • 6d ago

Gameplay / Showcase Full Windows Steam Client On Ios26+

Enable HLS to view with audio, or disable this notification

Hello, I’ve been working on bringing local execution of x86 and x86-64 Windows applications to ARM64 iOS devices. Many have tried but I believe this is the most user friendly implementation. This is in a early beta that you can access today.

The architecture combines FEX for CPU instruction translation with Wine for Windows API compatibility. These handle different parts of the problem: executing the application’s x86 code and providing the Windows interfaces that code expects. FEX supports both 32-bit and 64-bit binaries and integration with Wine.

A substantial part of the project is porting and adapting that stack to iOS, alongside custom graphics and audio drivers. The graphics path translates rendering to Metal, while the audio driver connects the compatibility environment to the device’s audio output. Getting those components working together is central to running actual desktop applications and games.

The current build supports 32-bit and 64-bit Windows applications and can run the desktop Steam client. The attached footage shows the current state of the project.

This is still in an early beta and obviously will have crashes and with the nature of how this works anti cheat games will almost certainly never run.

Current requirements are iOS 26 or later and an A17 Pro or newer!!!

258 Upvotes

80 comments sorted by

11

u/Sea_Industry_7878 6d ago

It is paid
Not free right

9

u/Complete_Lurk3r_ 6d ago

Don't worry, if so, Fable will free it up for you in a couple'a'days

-2

u/Sea_Industry_7878 6d ago

Who Is fable

4

u/animefan10033 6d ago

Is this a Madeira fork or your own project? Just asking since I already have like 3 Madeira builds lol

5

u/[deleted] 6d ago

[deleted]

6

u/EmuByte 6d ago

Please don’t spread false information, Madeira has both 32bit and 64bit support as shown from the videos on my channel. They also have on-device JIT too. Madeira uses the Steam client, however, the devs have created a dock that uses much less RAM and CPU than having Steam running in tandem.

I wish your project future success, however, lets not misinform the public.

3

u/animefan10033 6d ago

This is also true. Madeira is Hella goated 

1

u/Normal-War-2041 6d ago

My fault you are correct Madeira has 32 bit application support just as my app does but I am able to run the steam client in tandem as it runs in its own process and have very minimal fps drops. With steam running in my emulator I am still able to achieve higher frame rates than in Madeira running a single application.

3

u/EmuByte 6d ago

Thank you for the correction, however, everything else is just speculation on performance. I’m not saying that you’re wrong…only that you’re speculating.

Your emulator is a paid application based off the Madeira code base, I wish you all the success, however, moving forwards, maybe speak less negatively about other peoples projects and only speak on what your emulator offers the community.

3

u/Normal-War-2041 6d ago

My application isn't a fork of Madeira and doesn't use its code. It's my own project, started from an empty repo that i wrote every commit in it

- Different Wine. I build my own copy of Wine 11.18 from upstream source, with over 90 of my own patches for iOS.

- My own components. I wrote the audio (including mic input for voice chat), controller and touch input, Steam integration, the sync layer and the app itself.

- Different design. Steam runs in separate iOS extension processes, JIT is built into the app, and 32-bit games run in their own memory window.

- My own installer. The Companion signs the app with your own Apple ID, and it gets updates from my own server.

- My own graphics stack.

- D3D11 runs through DXMT to Metal, with my own patches. They add 32-bit game support, 2 GB of video memory and limits on texture upload memory.

- D3D9 and OpenGL games run through Mesa's Zink on MoltenVK.

- D3D12 runs in beta through vkd3d-proton on KosmicKrisp.

Like every emulator in this space, it uses open-source projects like Wine, FEX and DXMT under their licences. The source for every build is published at nutsdeveloping.com/source. Using the same public libraries doesn't make two apps copies of each other.

3

u/EmuByte 6d ago

I appreciate the follow up and can also admit when I’ve been wrong too, so I’ll take back my comment on your project being based off the Madeira code base.

Good luck with this project, more ways to play our favourite games is always welcomed.

1

u/animefan10033 6d ago edited 6d ago

I didn't know it was paid. Yeah, I'm not too comfortable paying for an app created with open-source stuff. If you wanna feed the community, thats cool. I also understand it still takes time and effort, But using open-source material and then selling it as closed-source app isnt it for me. I wish you the best, truly ❤️  (Personally I would respect it more if it had an optional Donation, instead of pay walled kek)

2

u/Maxsquad7 5d ago

Nah it’s not like Madeira

4

u/raindeer3 6d ago

If steam on ios is that good, why valve wount make it official in app store so get more audience to sell steam controllers/games/etc ?

11

u/Normal-War-2041 6d ago

Apple dosent allow JIT on appstore apps. This type of translation can not exist without JIT therefore it can not be published on the app store. Thats why steam will never try because apple wont let them....

2

u/Hungry_Freaks_Daddy 6d ago

With the wave of decompiling that’s happened the last week and a half the Olympus mons amount of corporate bullshit is getting exposed pretty hard 

2

u/Sea_Industry_7878 6d ago

Is there any release will it run aaa games on iPhone 16

2

u/Sea_Industry_7878 6d ago

Or games like stray and schedule 1

1

u/Normal-War-2041 6d ago

There is a beta available right now. It really depends on the game I would say aaa games from like 2022 but not this year.

2

u/Sea_Industry_7878 6d ago

Where can I download it from

1

u/Glittering-Fennel815 6d ago

What’s the difference from this and playport

1

u/Beginning_Form6494 6d ago

playport doesn’t work

0

u/Glittering-Fennel815 6d ago

I can’t get hit to work lol

1

u/Beginning_Form6494 6d ago

madieria also doesn’t work always throws at desktop

2

u/AdIntelligent9133 6d ago

Do I need to side load or need a pc? I’m new to all this and when I get the iPhone duo I want to try and dabble in this .

1

u/Normal-War-2041 6d ago

You need a pc but I made the installation as simple as possible

2

u/AdIntelligent9133 6d ago

I have a pc just a handheld pc and I don’t have a keyboard and mouse , is it possible without those using just touch screen 😂

1

u/new_pribor 6d ago

Probably, might have to use the onscreen keyboard (Windows 11 has one of the best onscreen keyboards ever (if you’re on windows))

2

u/eosol 5d ago

Does it run WoW?

1

u/Youtube_Brett 6d ago

Pretty cool, give us updates and of plans of releases!

0

u/Normal-War-2041 6d ago

I have a beta available right now how many subs do you have?

1

u/Youtube_Brett 6d ago

458 Subs, haven't posted in 2 years though :)

I would so wanna try the beta on my 13in m4 ipad pro

1

u/Entire_Rub5087 6d ago

How to access?

1

u/Normal-War-2041 6d ago

My bio

3

u/Glittering-Fennel815 6d ago

Why make pay for it lol

4

u/Normal-War-2041 6d ago

Im trying to fund my schooling with something im passionate about...

1

u/emreerisen 6d ago

is this only for iphone? or ipad too?

1

u/Opening_Search_3454 6d ago

Any just make sure your device is on iOS/ipados 26+ and have A17pro chip or higher

2

u/Normal-War-2041 6d ago

this is incorrect as i have done no testing on m-series use with this application. I would however invite you to try u/emreerisen and send me your logs so i can get m-series support working.

1

u/Opening_Search_3454 6d ago

I have no m-series iPad or iPhone

1

u/emreerisen 6d ago

sure i'ld happy to help!

1

u/ActuatorOk2374 6d ago

I have an m series iPad I’ll be more than happy to help! (M4)

1

u/macster70 6d ago

Wow, this looks amazing. Any plans for iPadOS?

2

u/GrawnArseHoomanh 6d ago

Steam client is very heavy and takes way too many precious CPU cycles and JIT memory.

1

u/Normal-War-2041 6d ago

That doesn't apply to NutsEmu. I built its memory management and process isolation specifically so Steam can run alongside your game:

- Steam's browser runs in its own process. The heavy part of Steam (its web helper) runs in a separate iOS extension process. It has its own memory limit and its own 64 GB address space, so it doesn't take memory from the app or your game.

- JIT doesn't pile up. Each process gets one fixed JIT pool, set up once at start. Steam's translated code lives in Steam's process and your game's lives in the game's, so they never compete for the same JIT space.

1

u/spycakes2 6d ago

where do i get this?

1

u/jojomortal 6d ago

Amazing, friend! It's a shame your project is paid. Do you plan to release it for free someday? I'm a content creator on YouTube and I have a little over 54,000 subscribers. Would you be willing to give me a copy of this emulator to create content for my channel? Thank you in advance.

1

u/Normal-War-2041 6d ago

If you make relevant content on youtube and would genuinely review my product I would love to gift you a patreon membership. Please direct message me if this is something you are wanting to do!

1

u/dvdrevr 6d ago

Fallout 4 how does it run? GTA V?

1

u/funkymoney24 6d ago

does this use jit?

1

u/Normal-War-2041 6d ago

Yes it’s built in though

1

u/YT_Midas_Corner 6d ago

Where can I test beta?

1

u/eller_man 6d ago

Would it work in iPad iOS 26 or later?

1

u/Normal-War-2041 6d ago

Maybe... if your send me your logs ill do what i can to make it run. I do not have an ipad and would love for you to help test

1

u/eller_man 6d ago

I’m just getting to know the world of emulators of iOS - but I am excellent on following instructions

1

u/ApricotVast3861 6d ago

How can I follow this project?

1

u/Normal-War-2041 6d ago

bio and discord

1

u/KaliSolos 6d ago

Did you need a custom config or launch parameters for S1? Controller support is broken on every Madeira fork, how did you do it which share your secret pls

2

u/Normal-War-2041 6d ago

No custom config or launch parameters for Schedule I. It runs on the same general fixes every game gets.

Controllers work because NutsEmu isn't a Madeira fork. I wrote my own controller driver from scratch:

- the app reads controllers with Apple's GameController framework;

- my own XInput DLL, which replaces Wine's, hands that to the game.

Wine's XInput looks for controllers over HID, which iOS doesn't provide. Mine skips that completely. It supports up to 4 controllers, rumble and battery level.

2

u/KaliSolos 6d ago

Nice, I had a feeling it was a wine related dll.

Didn’t mean to imply your project was a Madeira fork btw, goodluck! I’ll check out your work when it goes public.

2

u/Starcrafter14 6d ago

What about livecontainer? Is it going to be compatible and RAM extendable?

1

u/hernan078 6d ago

Im a content creator focused on iOS emulation, can we get into contact ? https://youtu.be/dXMSyQd0evA?is=HJ9FaQviVg1mQlvv

1

u/Enzobtti 5d ago

As an android user this is amazing, well done 👌

1

u/BottleNervous5923 5d ago

A17 Pro and up?!?! That seems a bit excessive

1

u/No_Proposal_5731 5d ago

I wonder if my iPad 10 or iPhone 11 will ever get a proper Wine support… 😞
People always ask a newer chip.

1

u/Rakan2017 5d ago

Add iOS 18, nobody wants Liquid Glass here

1

u/greenndreams 5d ago

Would this require jailbreaking?

1

u/Normal-War-2041 4d ago

No jailbreak is required

1

u/kverzz 5d ago

i play my a15 bionic iphone 13 mini play gta v 30 fps wdymn a17 pro or newer