Results 1 to 10 of 19

Hybrid View

  1. #1
    Player
    Defmetal's Avatar
    Join Date
    Mar 2011
    Location
    Delete Lalafell
    Posts
    397
    Character
    Eadieni Valefor
    World
    Hyperion
    Main Class
    Paladin Lv 100
    Quote Originally Posted by AkaeiNox View Post
    Aren't the new macs on ARM? Both Windows PC and PS4/PS5 are on Intel/Amd 64.
    This game isn't even compatible with ARM Windows devices.
    It runs through Emulation called Rosetta, which is itself emulating Windows. Making a native mac app would open a lot of doors for future uses. Such as when apple discards rosetta entirely. It's gonna happen someday.
    But, imagine being able to play this game natively on your iphone. Yeah you can adjust or reduce the menus but you could. The iphone powerful enough. Add in a controller dock, perfect playing on a bus or train in short bursts.
    (0)

  2. #2
    Player
    Packetdancer's Avatar
    Join Date
    Oct 2019
    Location
    Gridania
    Posts
    1,948
    Character
    Khit Amariyo
    World
    Leviathan
    Main Class
    Sage Lv 100
    Quote Originally Posted by Defmetal View Post
    Square can always outsource it to another company or division, for money obviously.
    They already do; the existing Mac version is handled by Codeweavers, not internally at Square-Enix.

    Quote Originally Posted by Defmetal View Post
    It runs through Emulation called Rosetta, which is itself emulating Windows. Making a native mac app would open a lot of doors for future uses. Such as when apple discards rosetta entirely. It's gonna happen someday.
    This is a really minor point in terminology, but extremely important in implementation: WINE does not emulate Windows. (In fact, if I recall correctly "WINE" originally stood for "Wine is Not an Emulator".) It is a translation layer.

    Emulating a thing means you create a virtual system within which the thing runs; you would, functionally, install Windows into a container. A translation layer runs the thing natively, but provides stubbed libraries that translate the calls; the Windows client runs, but where it might expect "library A" on Windows, it can load the same 'library' in WINE... and that library just has code that's like, "Okay, and this is how we do it on this system." Hence why WINE does not actually require a copy of Windows to function.

    Rosetta 2 (the thing that lets you run Intel code on the ARM M1) is also not an emulator, as an interesting point. It actually analyzes the entire program and compiles an ARM equivalent ahead of time, then caches that; when you run an Intel program on an M1 Mac, it takes a lot longer to start the first time (because it's analyzing the program and creating an ARM equivalent) and then is much faster on successive launches (until the application changes and it must make a new ARM binary).

    However, this makes for a truly bonkers number of translation layers involved in the Mac client on M1.

    You're running Windows code via dummy libraries that translate the calls into MacOS equivalents, which itself is being done from an ARM binary generated automatically by effectively decompiling an Intel program and recompiling it for ARM. In addition, that program is making calls to DirectX which (via DXVK) are being translated into Vulkan equivalents, which (via MoltenVK) are being translated into the equivalent graphics calls in Apple's "Metal" graphics API.

    It's honestly sort of dizzying... and impressive that it works as well as it does.

    A native application would work considerably better, though, you're not wrong.
    (0)
    Quote Originally Posted by Packetdancer
    The healer main's struggle for pants is both real, and unending. Be strong, sister. #GiveUsMorePants2k20 #HealersNotRevealers #RandomOtherSleepDeprivedHashtagsHere
    I aim to make my posts engaging and entertaining, even when you might not agree with me. And failing that, I'll just be very, VERY wordy.

Tags for this Thread