• Snot Flickerman@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    15
    arrow-down
    1
    ·
    edit-2
    20 hours ago

    The entire back-end has changed.

    Literally. People miss the fact that Steam is still a 32-bit app just to support older games. The rest of the world has moved onto 64-bit operating systems and applications. It’s shocking they still support 32-bit in 2025. So the argument that they aren’t supporting older titles is a little misleading because that’s the whole reason they still run a 32-bit client.

    Most operating systems are no longer even offered in a 32-bit variant, 64-bit only.

    I haven’t had a device with 32-bit hardware in almost 15 years. The last device I can even think of that was still 32-bit within the last 15 years was a Google Nexus 6 in 2014. All the Pixel line have been 64-bit.

    Steam is literally one of the last 32-bit holdouts. Everything else has moved on. Even Discord dropped 32-bit support last year.

    EDIT: Also, for reference, since Windows 98 is heavily mentioned in the arguments, those operating systems included 16-bit code. We’re talking about dropping 32-bit code, 16-bit code is deader than a doornail. Windows 3.11 was the first introduction of 32-bit code. Windows XP seems to be where they dropped all 16-bit code in 2001. We’re talking over 30 years of hardware changes.

    All versions of MS-DOS and the below versions of Windows had 16 bit code:

    MS-DOS (all versions)
    Windows 1.x/2.x/3.x (all versions)
    Windows 4.x or 9x (Windows 95/98/Millennium Edition) (all versions)

    • Pieisawesome@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      2
      ·
      15 hours ago

      The steam client has nothing to do with the games it launches.

      Process.Start() works on 32 bit or 64 bit processes…

      They are on 32 bit because they don’t need to upgrade to 64 bit and it’s likely too complex to upgrade.

      Visual Studio, which actually benefits from 64 bit, just recently upgraded because these massive software stacks are difficult to update.

      • Snot Flickerman@lemmy.blahaj.zone
        link
        fedilink
        English
        arrow-up
        4
        ·
        edit-2
        15 hours ago

        They keep a bunch of 32-bit libraries for backwards compatibility with older games that they launch. You can find numerous discussions about this in the Steam forums as well as on sites like Hackernews.

        If you want, I can give it to you from a Valve employee:

        https://github.com/ValveSoftware/steam-for-linux/issues/179#issuecomment-267790879

        We will not drop support for the many games that have shipped on Steam with only 32-bit builds, so Steam will continue to deploy a 32-bit execution environment. To that end, it will continue to need some basic 32-bit support from the host distribution (a 32-bit glibc, ELF loader, and OpenGL driver library).

        Whether the Steam client graphical interface component itself gets ported to 64-bit is a different question altogether, and is largely irrelevant as the need for the 32-bit execution environment would still be there because of the many 32-bit games to support.

        Maybe do some cursory research before talking out of your ass.

        • Pieisawesome@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          1
          ·
          15 hours ago

          You just proved my point.

          Runtime environment != the steam client.

          Starting a 32 bit process (ie, process.start()) means nothing to the 32 bit steam client.

          They can upgrade the steam client to 64 bit without affecting the launched games. that’s the point I was making.

          They just haven’t.