• Rustmilian
    link
    English
    1
    edit-2
    6 months ago

    To answer your question, I’m sure for the x86_64(not separate things btw) specific code it might use some sort of emulator or a translation layer. Idk WTF “microVM with FEX” is, maybe that’s it?

    But for the DX11 part, that’s just the normal DirectX to Vulkan/OpenGL translation layer e.g. WineD3D.
    There’s actually nothing that special about DirectX on ARM, it’s the same API. The translation layer just takes those API calls from DirectX11 and translates them to the equivalent in OpenGL, and then the Asahi Linux OpenGL driver takes of actually executing those commands on the GPU.