Page 1 of 2 12 LastLast
Results 1 to 10 of 12
  1. #1
    EmuTalk Member matthew's Avatar
    Join Date
    Sep 2002
    Posts
    132

    Question New Emulation concept for N64

    Not sure if this is the right place to discuss such things.



    However I was thinking about how the Wii gets very good N64 emulation by emulating each game individually as channels.

    So I was thinking maybe if an N64 Emulator was made MAME style where each Arcade or in this case if each Game was a seperate driver you could get 100% compatability with good frame rates.

    I mean there's not many games on the N64 and I think this idea may be the way forward for N64 Gaming not just on the Wii but generally as some games just do not work correctly when played through an N64 Emulator

    Reminds me of the Nes Mappers thing while some games shared mappers others needed special ones.

    Any thoughts on this would be most appreciated any expert just let me know if I'm barking up the wrong tree


    • Advertising

      advertising
      EmuTalk.net
      has no influence
      on the ads that
      are displayed
        
       

  2. #2
    Sony battery Toasty's Avatar
    Join Date
    Dec 2004
    Location
    Oregon, U.S.A.
    Posts
    2,049
    Loading specific plugins based on the game being run is a planned feature of PJ64 1.7, IIRC.

  3. #3
    EmuTalk Member matthew's Avatar
    Join Date
    Sep 2002
    Posts
    132
    Not exactly what I'm saying but plugins are not the same as a driver as they only make graphics better and not the core emulation such as they would in Mame

  4. #4
    16-bit Corpse | Moderator Agozer's Avatar
    Join Date
    Jan 2006
    Location
    Nokia Land
    Posts
    6,112
    In MAME, each game is not a separate driver. Each arcade system is.

    I guess what you are trying to say here is that someone make an N64 emulator that doesn't use plugins, similar to what pSX does in the PlayStation emulation field. MESS already tries to do what you want, although with rather poor results.

    The main problem with N64 lies in the fact that the hardware itself is complicated - made even more complicated by its use of microcodes, resulting in some games are are not playable in one way or another. What's the point of trying to find new ways of coding an emulator if you can't fully understand the complexities of the hardware you are trying to emulate?

    I driver-based approach certainly wouldn't change anything, as seen in MESS.
    Last edited by Agozer; October 28th, 2009 at 01:25.
    My Site With Random Stuff (+ two custom ZSNES GUI fonts)



  5. #5
    Moderator Cyberman's Avatar
    Join Date
    Nov 2001
    Posts
    1,824
    Quote Originally Posted by matthew View Post
    Not exactly what I'm saying but plugins are not the same as a driver as they only make graphics better and not the core emulation such as they would in Mame
    So essentially you want to make a specific set of emulation code on a per game basis?
    Hmmm there is a lot going on inside an emulator. Dynamic recompilation gives a moderate performance enhancement. Not as great as a static recompilation however the later is much more difficult to make work (especially since a number of 'bad' programming practices were used in the N64 the most annoying is self modifying code).
    Essentially a plugin is DLL that adheres to the Dynamic Rec/interpretor Engines API.
    A good example of a game that requires a specific set of code to function is Conkers Bad Fur Day.
    I suggest poking around with PJ64 1.6 source to give you ideas and test things out (or 1964). Getting it to compile is the first hurdle. MuOpen if you are into linux. Mess around with it a bit by looking at what is going on and breaking stuff (or modifying it specifically to run one particular game REALLY well).
    Try some things out that way.

    The idea isn't bad but there are numerous ways to do things. Some better than others.

    Cyb
    Progress (n.):
    The process through which the Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.
    -------------------------------------------------------------------
    Recursive (adj):
    see Recursive

  6. #6
    Moderator Allnatural's Avatar
    Join Date
    Nov 2001
    Location
    Toledo, OH. USA
    Posts
    4,571
    Quote Originally Posted by matthew View Post
    Any thoughts on this would be most appreciated any expert just let me know if I'm barking up the wrong tree
    N64 emulators that use HLE (which, except for MooglyGuy's driver, is all of them) essentially work as you've described already.

    A pure LLE approach is ideal. If you can emulate the hardware down to the last register all games will work perfectly as a result. Not easy of course, nor would it be particularly fast on current computers...
    Last edited by Allnatural; October 28th, 2009 at 03:13.

  7. #7
    EmuTalk Member matthew's Avatar
    Join Date
    Sep 2002
    Posts
    132
    Quote Originally Posted by Cyberman View Post
    So essentially you want to make a specific set of emulation code on a per game basis?

    Yes you got it a per game emulation code.
    Same as the wii does per channel as my guess is that the wii isn't capable of doing a full on emulator that will work as perfectly as say the snes9xgx emulator.

    I'm sure most emulation code would simply be copied as a lot of games would work similarly if not the same. However per game emulation would bring about a way to work on specific games that cause us a problem.

    I'm not a coder btw I was just bringing my idea to the forefront as I wasn't sure if anyone had thought of this. As I see most emulator authors tend to emulate the hardware itself.

    I've read through the thread and what I'm suggesting isn't the same as MAME I just used that concept to give an example.


    Quote Originally Posted by Allnatural View Post
    N64 emulators that use HLE (which, except for MooglyGuy's driver, is all of them) essentially work as you've described already.

    A pure LLE approach is ideal. If you can emulate the hardware down to the last register all games will work perfectly as a result. Not easy of course, nor would it be particularly fast on current computers...

    Hmm I wasn't aware that they do already work as I suggested.

    I was thinking that the LLE approach put emulation into a per game basis could solve a lot of problems with speed ?

  8. #8
    Moderator Allnatural's Avatar
    Join Date
    Nov 2001
    Location
    Toledo, OH. USA
    Posts
    4,571
    Quote Originally Posted by matthew View Post
    Hmm I wasn't aware that they do already work as I suggested.

    I was thinking that the LLE approach put emulation into a per game basis could solve a lot of problems with speed ?
    I'm not a coder either, but I suspect most N64 emulators use a lot of per-game hacks and kludges already. Nintendo, obviously, has more resources at its disposal, not to mention the financial incentive, to get specific games working as well as possible.

    LLE is (almost?) always going to be slower. Think bsnes. Byuu's approach is highly accurate, and as a result highly compatible, but the system requirements are crazy (compared to other SNES emulators).

  9. #9
    EmuTalk Member matthew's Avatar
    Join Date
    Sep 2002
    Posts
    132
    Quote Originally Posted by Allnatural View Post
    I'm not a coder either, but I suspect most N64 emulators use a lot of per-game hacks and kludges already. Nintendo, obviously, has more resources at its disposal, not to mention the financial incentive, to get specific games working as well as possible.

    LLE is (almost?) always going to be slower. Think bsnes. Byuu's approach is highly accurate, and as a result highly compatible, but the system requirements are crazy (compared to other SNES emulators).
    So what you think of HLE per game ?

    Would there be a high chance of near perfection if this method was employed compared to the standard way per hardware ?

  10. #10
    Moderator Allnatural's Avatar
    Join Date
    Nov 2001
    Location
    Toledo, OH. USA
    Posts
    4,571
    Quote Originally Posted by matthew View Post
    So what you think of HLE per game ?

    Would there be a high chance of near perfection if this method was employed compared to the standard way per hardware ?
    Maybe, depending on your definition of "perfection." If I understand you correctly, you think it would be best if the authors focus on each game individually, using whatever hacks necessary to get each one working properly. That could work, but there were a lot of games released for the system. Even assuming that many shared engines (which would streamline the work I suppose) this piecemeal approach hardly seems efficient compared to emulating the hardware as accurately as possible, which, as I mentioned earlier, would make most (if not all) games work perfectly anyway.

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •