• Blue_Morpho@lemmy.world
    link
    fedilink
    arrow-up
    34
    ·
    1 day ago

    Before Doom (1993), almost all games were assembly.

    Carmack wrote Wolfenstein 3d in C. Star Control and Dune 2 were C.

      • Blue_Morpho@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        9 hours ago

        I used those as examples but I claim that most everything was C by the early 90’s. The statement that C compilers got fast which allowed it isn’t true. When a new compiler came out it was always a couple of percentage points faster than the old version. Meanwhile hardware was doubling in performance every two years.

        C compilers didn’t need much optimization because there wasn’t much performance that could be optimized into code on the simple CPUs of 1992 when Doom was being written. CPU’s weren’t the superscalar multi core monsters they are today. A compiler couldn’t take advantage of reordering instructions to use multiple adders because there was only one.

    • Frezik@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      6
      arrow-down
      1
      ·
      23 hours ago

      Those games didn’t have the splash that Doom did for this sort of thing.

      https://web.archive.org/web/20010105180900/http://www.gamespy.com/legacy/articles/devweek_c.shtm

      Mainstream application programmers switched to C in the early 80’s. Game developers were slower to switch, because their small teams and focus on performance kept assembly language viable till the following decade. When id Software released DOOM, they surprised much of the industry by having no reliance on assembly code–despite excellent game performance, and by successfully cross-developing the game (in NeXTstep and DOS), then successfully porting it to an astounding variety of platforms.

      • Ensign_Crab@lemmy.world
        link
        fedilink
        English
        arrow-up
        4
        ·
        16 hours ago

        Those games didn’t have the splash that Doom did for this sort of thing.

        I would say that Wolf3d would certainly count as proof of concept.

    • Aria@lemmygrad.ml
      link
      fedilink
      arrow-up
      2
      ·
      1 day ago

      Wolfenstein 3D is a lot less impressive than Doom. Doom was faster and more complex than other games, where as Wolfenstein had a strong and appealing gimmick but was slower and less complex as a trade-off. In-line with the expectations around compiled languages.