The Nintendo 64 has always been a difficult machine to emulate correctly. But in 2025 - we should be well and truly past all of it right? Not exactly. Issues with Plugins, performance, graphical glitches, stutters. Unless you have a very powerful machine, these are common things many of us will run into when emulating the Nintendo 64. But why? And Is there any hope for fast, accurate N64 emulation in 2025 and beyond?

  • magic_lobster_party@fedia.io
    link
    fedilink
    arrow-up
    22
    ·
    1 day ago

    Not only that. Emulators must often ”cheat” to achieve high speeds. This means emulators doesn’t try to achieve a 1:1 replication of what’s happening inside the hardware, but something that’s gives close enough results and better tailored for modern hardware.

    The reason why N64 is particularly difficult is because each game must be optimized individually (due to the heavy reliance on microcode). The emulator must replicate the hardware at a much lower level for an accurate emulation of all games. Emulator developers can apply optimizations on each individual game, but it’s incredibly time consuming to do so for every game in the N64 library.

    • umbrella@lemmy.ml
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      23 hours ago

      why is its reliance on microcode making it so difficult? i tought this was the case across the board?

      • yetAnotherUser@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        4
        ·
        13 hours ago

        According to: https://emulation.gametechwiki.com/index.php/Nintendo_64_emulators

        One of the biggest hurdles to emulating the Nintendo 64 was the Reality Display Processor (RDP), which used a custom design that had to be fine-tuned to get higher performance out of the system using microcode. To emulate the RDP accurately, one would have to execute said microcode the way the RDP did, which differed from the PC graphics cards of the day. To complicate matters further, API standards available on PCs two decades ago were nowhere near as flexible as they’re today. If you wanted to make an accurate GPU-accelerated RDP plugin in 2003, you simply couldn’t with the APIs of the time (OpenGL 1.x and Direct3D 9).

        Accurate low-level emulation would only come to the GPU in 2020 when a new version of the Mupen64Plus-based ParaLLEl libretro core was released containing a rewritten RDP plugin using compute shaders in Vulkan.

    • TachyonTele@lemm.ee
      link
      fedilink
      English
      arrow-up
      7
      ·
      1 day ago

      And that’s the reason MVG is telling other devs: stop using those cheats, if the sceen is going progress they have start using low level standards.