What's new

Current progress in n64 games compatibility?

asiga

New member
Being new to using n64 emulators, I see there're still games that don't start at all and were top sellers (donkey kong 64, and world driver championship, for example), and also others are playable but with important glitches (jet force gemini, yoshi). Even Zelda has graphic corruption issues on the top view inside the tree home.

I understand most of n64 details are undocumented, so fixing all this is hard, but I see it takes about two years to release new versions of the emulators. Why? Isn't there real interest in them?

I believe that a single fix in a game would be reason enough to release a new version, so I wonder why it takes so long to do new releases.

Is there progress in compatibility? Will there be good compatibility of donkey kong 64, yoshi, world driver championship, jet force gemini, etc at some point?

Is there anybody working on this?
 

DETOMINE

New member
(donkey kong 64, and world driver championship, for example), and also others are playable but with important glitches (jet force gemini, yoshi). Even Zelda has graphic corruption issues on the top view inside the tree home.
Donkey Kong 64 can be finished on emulator(s).
World driver championship is working quite fine...
Jet Force Gemini works without glitches...
Yoshi story has a few glitches but nothing serious.
As far as I know, Zelda OOT has no graphic corruption if you use good plugins.

You should check http://bmgcl.atspace.cc/n64mgcl/N64ConfigList.htm, it is a compatibility list made by Bighead, it will help you to find the correct settings for each game.
 

Clements

Active member
Moderator
There is still activity, but it is far, far less now. PJ64 is still being developed, but it is not public. HLE style approaches really has gone as far as it can go with Glide64. There are several cycle accurate projects also being worked on but they are in very early stages right now.
 
OP
A

asiga

New member
Didn't know the Bighead compatibility list, thanks for posting it. It seems Project64 is the only emulator capable of running World Driver Championship, and, according to that list, only pj64 1.5 runs it. Regarding DK64, and all the roms I own (which are just 11 or so) it seems Project64 is the one that emulates best all my roms (Yoshi, JetForceGemini, WorldDriverChampionship, DonkeyKong64, SuperMario64, Vrally, PokemonSnap, ZeldaOcarinaOfTime, CastlevaniaLegacyOfDarkness, NuclearStrike64, and Forsaken64).

But, if you notice, I posted this at the Mupen64Plus forum. This is because my main purpose on having my roms well emulated is not just playing these games, but mostly for the interest of them not dying, which is the main purpose of an emulator. Unfortunately, Project64 doesn't meet this goal, because it doesn't provide the source code, it depends on Windows, and it doesn't document all the n64 info and secrets they've found while developing it. So, it lets you play the games better than the rest of emulators, but it lacks the goal of an emulator (ie: the goal of documenting the hardware, as MAME does).

I use Macs and Linuxes. I also use Windows, but not as my everyday machine. Yes, I can wrap a Win32 application inside wine and run it on Mac and Linux, but... that's not what I expect from an emulator: if it has to guarantee that the emulated system survives "forever", it cannot be tied to a single OS, and even if it is, it should provide the source code (or alternatively, all the docs and info needed to write a new 100% working emulator from scratch) so that other developers in the future can port it to future OSs which don't exist yet.

Don't take me wrong, I understand the PJ64 developers, and I admit their current semi-commercial distribution is legit, and I thank them for their work. However, their work is just a half of what I need. Their work lets me play most of these roms (with some tweaking, though), but it doesn't provide me the feasibility of running these roms on future operating systems.

I guess I'm going to use PJ64 on my Macs (through a wine wrapper), because Mupen64Plus failed with most of these roms (when I say "failed", I say it's not able to run most of them without too noticeable glitches).

But, however, since I'd wish to have a n64 emulator with the same goals as MAME, I urge Mupen64Plus developers to try to improve their emulator and achieve a compatibility comparable to that of Project64. I guess Mupen64Plus is the only hope for having MAME-like goals achieved on N64 emulation.

Thank a lot for all your hard work!
 

V1del

New member
Your are making it way too easy. N64 Emulation is incredibly complex, and it will take much time till perfect compatibility is reached anywhere. There are many games that aren't as compatible in PJ64 as in Mupen and vice-versa, really depends on what you want to play and which plugins you use. But why do you need frequent releases if you can just go and check the progress because it is open source. DK64 should work with the hg-version, although i haven't gotten to test this myself yet.
There is work being done on properly porting glide64 final to the new API of m64p which should help most graphic issues currently present and you can play Jet Force Gemini pretty much bugfree with ziggys rsp and video on Mupen64Plus (the only game where it didn't crash after ten mins of play though :/). But yeah, you mostly won't get around playing around and tinkering with pluginsettings/combinations till you get correct results. No clue on the other games since I don't have them (except Zelda and Mario which should both work fine).

There is a MAME for consoles, its sister-project MESS which has the same goals and a N64 driver, but takes a whole other approach to development and is as far as I've heard a pain to get working with relatively low framerates at the moment. But someone with some more technical knowhow may be able to shed some more light into this.
 
OP
A

asiga

New member
I know it's complex, but, however, it seems that if you join the knowledge put in all emulators, we already know all details for emulating all N64 games almost perfectly. So, I think there's no more work of reverse engineering to be done, because most (or all) of that is already done. The problem is that I'm not sure that N64 emulator developers share what they learnt with the rest of the developers, as some of them aren't open source. If that's the case, this means that not only knowing the N64 details is hard, but also that this hard work of reverse engineering needs to be repeated several times because people don't share it.

Just consider World Driver Championship. It works on PJ64, but with major tweaking, because you need drivers that support custom microcode. However, by changing some DLLs in PJ64, you can get it to run. If I were the developer of an open-source N64 emulator, I'd consider it a cool challenge to have WDC running on my emulator, and it seems all "secrets" about it are known, as it runs on PJ64.

It seems like everything (or almost everything) is known about every game, but instead of putting it all together, every game is considered as an special case. This means that every game needs different driver settings. It seems like if it's time to put it all together (ie: make the emulator ready for running every game instead of treating each game as an special case).

So, at least from the outside, it looks like if there's no more research work to be done, but a work of coordination and putting it all together in a coherent way.

Cheers, and happy New Year!
 

Allnatural

New member
Moderator
You're still making it sound too easy. Every author has his own goals and agenda; his own way of tackling specific issues. Yet, contrary to your claim, much information is shared, but what works for a particular game in a particular emulator may not translate well to another's codebase. Furthermore, since we're stuck with HLE for the time being (if you want something at a playable speed at least) every game does kind of need to be treated as a special case.

Sounds like what you really want is a cycle-accurate emulator. That would give you perfect compatibility, but it would be years before you had a computer fast enough to use it.
 
OP
A

asiga

New member
I still think it's just a matter of resources. Porting glide64 final to mupen64plus, shouldn't take more than a week of full-time work, and if you've free weekends, you can get in one month the equivalent to a week of full-time work. The equivalent functionality of project64 should be achievable in a matter of months by a small team if they've spare time (and supposing they don't start from scratch, but from the current status of mupen64plus, which is quite advanced already).

But I'm not blaming anybody. I cannot put myself working in this stuff because I don't have free weekends, so I understand the lack of time of others. I fully understand it.

But there're teams that advance at great speed. Take MAME for example. And please don't say the MAME stuff is easier to do: if you put the MAME team getting to work in getting a functionality comparable to PJ64, you'd get it in a shockingly brief time (yes, I believe they have some N64 try in MESS, but they didn't put time into it).
 

Surkow

Member
The people capable of working on these plugins have lost interest or simply have no time. If you are inclined to test the other plugins (including a testing version of Glide Napalm) see the repository from wahrhaft.
 

V1del

New member
FYI Glide64Mk2 is apparently deemed stable/usable now, you can grab it from https://bitbucket.org/wahrhaft/mupen64plus-video-glide64mk2/wiki/Home

I've tested it and seems to run well, it will fix most of the video issues you are having with other plugins (Jet Force Gemini runs without the random graphicbugs, yoshi's story as well)

Note: While compiling, if you have the most recent version of boost, you may have to remove the "-mt" suffixes in the makefile.

EDIT: Has apparently been merged into the mainbranch now, can alternatively also be grabbed from https://bitbucket.org/richard42/mupen64plus-video-glide64mk2/overview
 
Last edited:

Top