N64 Anyone?


Status
Not open for further replies.
Phawx said:
I wish FreeDO would go open source already. The devs have said they wanted to open it up but they said that almost a year ago now.

http://www.freedo.org/forum2/index.php?PHP...p;topic=1431.30


OMG if they could get it running at a decent speed I would be able to die happy. Slayer.....portable! I love that game. Deathkeep is good too. Way of the Warrior isn't bad either.
 
Last edited by a moderator:
I know it will require alot of work and feel the estimate of 8-12 months, before enough things were working, was an accurate guess. I'm not against HLE, but think taking the time to figure out the hardware, instead of a specific game, will eventually win the race to supporting a library of games. I may change my mind later, after seeing performance quality, but trying for a fuller design at first seems alot less of a headache than retreading an already entrenched design. If anyone wants to attempt a port of Deadalus, I would gladly lend support.
 
Happy said:
I know it will require alot of work and feel the estimate of 8-12 months, before enough things were working, was an accurate guess. I'm not against HLE, but think taking the time to figure out the hardware, instead of a specific game, will eventually win the race to supporting a library of games. I may change my mind later, after seeing performance quality, but trying for a fuller design at first seems alot less of a headache than retreading an already entrenched design. If anyone wants to attempt a port of Deadalus, I would gladly lend support.
The HLE solution is known working for a given definition of "working." It's not as bleak as writing support for every game, rather detecting a few sets of common code that are used in most games. Some games will never work under the current HLE models that emulators employ, unless someone goes through the trouble of reverse engineering their custom RSP code. Fortunately, these games are in the vast minority. Artificial circumstances during the N64's lifetime have caused this to be the case.

I'm not saying to just write these games off entirely, but consider that there are multiple open source emulators that have been successful with the HLE approach (again, for a given criteria of successful), and Daedalus is one of them. The problem with attempting LLE on N64, and this is a kind of self perpetuating problem that hasn't yet solved itself, is that we don't have as solid, publicly available information on the N64 hardware that rivals what we know about the most commonly used microcodes, nor do we have any good reference implementations. This would change if MooglyGuy were to release his work for MESS and/or public documentation regarding what he has found in painstakingly reverse engineering the N64, but until this happens we have little to go off of. If his code for MESS is ever actually released, which is looking questionable, then it'll be very slow (according to MooglyGuy, by design). Far too slow to be useful without a heavy re-envisioning in implementation.

I know you've been talking to MooglyGuy about this, but I think in some ways you have to consider the source - or I guess I should say that he is not at all happy with the N64 emulators that have made to this date and thinks it would have been better if they had not been written. Some people have the mentality that emulation should only serve to preserve platforms for future generations, presumably long after the original company behind them has disappeared or lost interest. Many in the MESS and MAME teams hold this mentality, or at least say they do. This mentality can hold when you're developing a reference emulation for a PC, but when your goal is to make an emulator run well on a specialized platform then there's no way you can argue that you're doing it for preservation. Anyone who would be working on N64 emulation for Pandora would be doing it so that people could play N64 games, which is not just not MooglyGuy's motivation but is directly opposed to it (according to him, those who have written N64 emulators thus far have only done so for "kudos" from "ROM kiddies").

A good take off of Daedalus could probably be done in less than 8-12 months if the person has the time, skill, and motivation. Personally I'd just as soon not get involved in N64 emulation because of the mess it is. Although I don't have an ethical problem with writing an emulator that's more intended to emulate a majority of games than it is to emulate or preserve hardware, I do think it'd be a pretty unpleasant thing to write. Like yourself, presumably (and like MooglyGuy for that matter), I'd personally feel a lot better being able to write an emulator that emulates the hardware and not software (firmware is a bit of a toss up). But I can't really recommend that anyone actually pursues this route when it's right now so unproven, unless MooglyGuy wants to personally help you through it.
 
Last edited by a moderator:
This is great :lol: You guys are talking about htings I don't even understand :p

Does this mean we have 1 developer that will work on it, or are you thinking about it?

I like the idea of having a reward for the N64 Emu. How about an average FPS? Or maybe even a title.... "N64 Emulator Father Guru Guy!"
 
Exophase said:
Happy said:
I know it will require alot of work and feel the estimate of 8-12 months, before enough things were working, was an accurate guess. I'm not against HLE, but think taking the time to figure out the hardware, instead of a specific game, will eventually win the race to supporting a library of games. I may change my mind later, after seeing performance quality, but trying for a fuller design at first seems alot less of a headache than retreading an already entrenched design. If anyone wants to attempt a port of Deadalus, I would gladly lend support.
The HLE solution is known working for a given definition of "working." It's not as bleak as writing support for every game, rather detecting a few sets of common code that are used in most games. Some games will never work under the current HLE models that emulators employ, unless someone goes through the trouble of reverse engineering their custom RSP code. Fortunately, these games are in the vast minority. Artificial circumstances during the N64's lifetime have caused this to be the case.

I'm not saying to just write these games off entirely, but consider that there are multiple open source emulators that have been successful with the HLE approach (again, for a given criteria of successful), and Daedalus is one of them. The problem with attempting LLE on N64, and this is a kind of self perpetuating problem that hasn't yet solved itself, is that we don't have as solid, publicly available information on the N64 hardware that rivals what we know about the most commonly used microcodes, nor do we have any good reference implementations. This would change if MooglyGuy were to release his work for MESS and/or public documentation regarding what he has found in painstakingly reverse engineering the N64, but until this happens we have little to go off of. If his code for MESS is ever actually released, which is looking questionable, then it'll be very slow (according to MooglyGuy, by design). Far too slow to be useful without a heavy re-envisioning in implementation.

I know you've been talking to MooglyGuy about this, but I think in some ways you have to consider the source - or I guess I should say that he is not at all happy with the N64 emulators that have made to this date and thinks it would have been better if they had not been written. Some people have the mentality that emulation should only serve to preserve platforms for future generations, presumably long after the original company behind them has disappeared or lost interest. Many in the MESS and MAME teams hold this mentality, or at least say they do. This mentality can hold when you're developing a reference emulation for a PC, but when your goal is to make an emulator run well on a specialized platform then there's no way you can argue that you're doing it for preservation. Anyone who would be working on N64 emulation for Pandora would be doing it so that people could play N64 games, which is not just not MooglyGuy's motivation but is directly opposed to it (according to him, those who have written N64 emulators thus far have only done so for "kudos" from "ROM kiddies").

A good take off of Daedalus could probably be done in less than 8-12 months if the person has the time, skill, and motivation. Personally I'd just as soon not get involved in N64 emulation because of the mess it is. Although I don't have an ethical problem with writing an emulator that's more intended to emulate a majority of games than it is to emulate or preserve hardware, I do think it'd be a pretty unpleasant thing to write. Like yourself, presumably (and like MooglyGuy for that matter), I'd personally feel a lot better being able to write an emulator that emulates the hardware and not software (firmware is a bit of a toss up). But I can't really recommend that anyone actually pursues this route when it's right now so unproven, unless MooglyGuy wants to personally help you through it.


These are the types of posts I love to see on this forum. ^_^ It reminds me of how capable our devs are.

-God Ginrai
 
Last edited by a moderator:
I know HLE isn't as bad as customizing for every single game, but my experience with HLE graphics leaves me wanting more from it. The render states (which are more variable than the choice of microcode) of the N64 are not exceptionally compatible with most other GPU designs, leaving a few elements in many games to be rendered differently (or incorrectly depending on your viewpoint). I realize many people may not be as annoyed by these visual artifacts as I am, but it often ruins the experience for me. Although in perspective, it doesn't compare with how badly the playing experience is ruined by poor framerate.

I also would not recommend the LLE on undocumented hardware route to anyone, unless you are really prepared for what you will be getting into.
 
Happy said:
I know HLE isn't as bad as customizing for every single game, but my experience with HLE graphics leaves me wanting more from it. The render states (which are more variable than the choice of microcode) of the N64 are not exceptionally compatible with most other GPU designs, leaving a few elements in many games to be rendered differently (or incorrectly depending on your viewpoint). I realize many people may not be as annoyed by these visual artifacts as I am, but it often ruins the experience for me. Although in perspective, it doesn't compare with how badly the playing experience is ruined by poor framerate.

I also would not recommend the LLE on undocumented hardware route to anyone, unless you are really prepared for what you will be getting into.
well, i think a main reason why you have visual artifacts on n64-emulators for pc is that pc isn't a homogenous system. It's very likely that different pc-systems show different results, while an emulator targeted for pandora should make it possible to fix a lot of those issues.
It would be a good idea to give the emulator support for per-game configuration-profiles and a plugin-architecture to make it possible to optimise the emu for each game as a community-effort. It's likely that the community has more time for this kind of tweaking then the dev ;)
 
Last edited by a moderator:
Happy said:
I know HLE isn't as bad as customizing for every single game, but my experience with HLE graphics leaves me wanting more from it. The render states (which are more variable than the choice of microcode) of the N64 are not exceptionally compatible with most other GPU designs, leaving a few elements in many games to be rendered differently (or incorrectly depending on your viewpoint). I realize many people may not be as annoyed by these visual artifacts as I am, but it often ruins the experience for me. Although in perspective, it doesn't compare with how badly the playing experience is ruined by poor framerate.

I also would not recommend the LLE on undocumented hardware route to anyone, unless you are really prepared for what you will be getting into.
HLE of code ran on the RSP (and by extension, the interface to the RDP) doesn't have to mean RDP emulation via hardware acceleration. I also wouldn't use the hardware acceleration offered by various emulators as a benchmark, since they may not be using pixel shaders to the fullest extent that the SGX would allow (although it doesn't have an awful lot of throughput for them). I would expect that this can handle the blend modes to overcome at least some of the visual artifacts you're referring to, and framebuffer objects should help overcome some other effcts.

The DSP may be capable of emulating the RDP, although it'd probably be a lot more work to have to write a rasterizer for it. Doing the RSP on top of that w/o HLE would be even more strenuous. Trying to render things like coverage in software seems like a lost cause no matter performance-wise no matter how you look at it.
 
Last edited by a moderator:
I see that mupen runs under linux - could it no be re-compiled to run under arm?

I also see that project64 was open source at v1.4 (although I think it may be directx based)

There are another few linux n64 emulators in development - not sure what architecture they run under though - fake64 & TrueReality
 
scottm said:
I see that mupen runs under linux - could it no be re-compiled to run under arm?

I also see that project64 was open source at v1.4 (although I think it may be directx based)

There are another few linux n64 emulators in development - not sure what architecture they run under though - fake64 & TrueReality
The only emu that it would make any sense to port would be Daedalus. Otherwise you're better off building an emu from scratch.

-God Ginrai
 
Last edited by a moderator:
Exophase said:
Some people have the mentality that emulation should only serve to preserve platforms for future generations, presumably long after the original company behind them has disappeared or lost interest. Many in the MESS and MAME teams hold this mentality, or at least say they do. This mentality can hold when you're developing a reference emulation for a PC, but when your goal is to make an emulator run well on a specialized platform then there's no way you can argue that you're doing it for preservation.

It's not "many in the MESS and MAME teams", it's rather if you don't work with preservation and accuracy in mind, you should work on another project (which some of the MAMEdevs do BTW). I have to admit I favour MAME's approach (or else I wouldn't be a [mostly inactive] MAMEdev), though I can understand people who want to play for the fun of it; the problem of that crowd is that often they don't care about the legal associated problems; they don't care if a game is still being sold; they don't care that Nintendo is active against emus (after all they sell games for emulators on the Wii).
 
Last edited by a moderator:
scottm said:
didn't someone start a n64 emulator for the gp2x?
yea, it ran at less than 1 fps running a tech demo. It was a complete POC.

-God Ginrai
 
Last edited by a moderator:
Laurent said:
It's not "many in the MESS and MAME teams", it's rather if you don't work with preservation and accuracy in mind, you should work on another project (which some of the MAMEdevs do BTW). I have to admit I favour MAME's approach (or else I wouldn't be a [mostly inactive] MAMEdev), though I can understand people who want to play for the fun of it; the problem of that crowd is that often they don't care about the legal associated problems; they don't care if a game is still being sold; they don't care that Nintendo is active against emus (after all they sell games for emulators on the Wii).


Not to nit pick what you said, but how can someone believe that emulators are only for preservation and still work on another project where it isn't? Seems a little contradictory.

I don't care if Nintendo is active against emulators and I don't care about their attempts at profit on Virtual Console, personally ;P Although that's obviously their legal prerogative, illegal doesn't have to automatically equate unethical, so...

However, when you get down to it, it's pretty silly for a MAME or a MESS developer to claim that they are pursuing a noble cause and that other emulator authors are merely contributing to criminal activity. Last I was aware, MAME/MESS emulate several platforms available for Virtual Console, at performance beyond "unplayable" for a wide variety of platforms. They can claim that they're only doing it for the sake of preservation, but that's no better than any other emulator author claiming that he or she is only doing it for the learning experience, or to better understand the platform, or really to give no reason whatsoever. It's just an excuse because the end result is the same, and if they think they're on a higher moral ground over others who do those emulators without the explicit intention of "preservation" then they're kidding themselves. And they can claim that they have an utmost fervor for accuracy as well, but that doesn't change the reality that a number of cores you will find in MAME/MESS are far from the most accurate offerings. In fact, MESS's eagerness to claim support for every console ever created results in many cases where "horribly incomplete" would be far too generous a thing to say about it.

But the point I made is that when it comes to doing an N64 emulator on Pandora it's about playing N64 games right now, and that's all. For a lot of people it's probably about playing N64 games they bought years ago, which Nintendo would rather have them repurchase. But I think it's pretty sensible to allow emulating them without such a thing.
 
Last edited by a moderator:
HackModford said:
This is great :lol: You guys are talking about htings I don't even understand :p
Basically there are two common ways of approaching emulation - LLE (Low Level Emulation) and HLE (High Level Emulation)

LLE is like a complete set of dictionaries and grammar guides. A simple English sentence can be translated, word by word, adjusting the order of words and tenses according to the guide, and, assuming you don't make any mistakes, you should be understood.

HLE is more like a phrasebook. You can easily order food and drink and do many other common tasks, but would fail miserably (or have to fall back to the dictionaries) if asked to do something out of the ordinary.
 
Last edited by a moderator:
Exophase said:
But the point I made is that when it comes to doing an N64 emulator on Pandora it's about playing N64 games right now, and that's all. For a lot of people it's probably about playing N64 games they bought years ago, which Nintendo would rather have them repurchase. But I think it's pretty sensible to allow emulating them without such a thing.
I completely agree. I have 3 copies of Ocarina of Time, and I would have bought it again if Nintendo ever ported the game to the DS, because I would love to have that game handheld. But Nintendo didn't do that, so why can't I have a game I paid for 3 times on my Pandora?

-God Ginrai
 
Last edited by a moderator:
Exophase said:
Not to nit pick what you said, but how can someone believe that emulators are only for preservation and still work on another project where it isn't? Seems a little contradictory.
There's no contradiction. I was only pointing that if you work on MAME or MESS preservation and accuracy are the main objectives. MAMEdevs are free to do what they want outside of the project.

QUOTE
However, when you get down to it, it's pretty silly for a MAME or a MESS developer to claim that they are pursuing a noble cause and that other emulator authors are merely contributing to criminal activity.
I didn't say that, I was talking about users! And didn't you say some time ago that you were tired of all these kiddies crying for addition of a new game to your emulator? (I might be wrong, that might be some other emu author here.)
QUOTE
It's just an excuse because the end result is the same, and if they think they're on a higher moral ground over others who do those emulators without the explicit intention of "preservation" then they're kidding themselves.
That's your point of view, and you, of course, are free to think that way :) However from the inside I can say that's not like that at all, but that's my point of view.


QUOTE
And they can claim that they have an utmost fervor for accuracy as well, but that doesn't change the reality that a number of cores you will find in MAME/MESS are far from the most accurate offerings. In fact, MESS's eagerness to claim support for every console ever created results in many cases where "horribly incomplete" would be far too generous a thing to say about it.

I agree MESS is not in a very good state. Also some of the CPU cores are not very good (ARM comes to mind), though the vast majority of them is at least as accurate as all other CPU cores I know of. I will heartily accept a counter-example, and make sure it is corrected ;)

QUOTE
But the point I made is that when it comes to doing an N64 emulator on Pandora it's about playing N64 games right now, and that's all. For a lot of people it's probably about playing N64 games they bought years ago, which Nintendo would rather have them repurchase. But I think it's pretty sensible to allow emulating them without such a thing.

I was reacting to something I perhaps over-interpreted your message: to me it sounded like an attack against MooglyGuy. For the rest, I can understand that people want to play now on their Pandora (well "now" is probably doubly excessive in that context since there's no Pandora and no N64 emu :lol: )
 
Last edited by a moderator:
I think the MESS team working with devices like the Pandora would make sense in terms of preservation. I mean, it's an ARM-based linux system--those aren't exactly uncommon, and I don't see them disappearing any time soon.

x86, on the other hand...well...it's a dead horse that's been beaten so much you can hardly tell it was a horse once. It's power-hungry and has already reached to GHz wall, so all they can do now is add more cores or make a better architecture.

I think over the next few years ARM is going to take over the netbook market, edge it's way into the full-size laptop market and might even reach a performance point where it can atleast be a viable competitor to desktop x86 processors.
 
Exophase said:
Not to nit pick what you said, but how can someone believe that emulators are only for preservation and still work on another project where it isn't? Seems a little contradictory.
It is - and I still firmly believe that MAME is there to be played, no matter what is said.

I'm heavily involved in the ongoing attempts to emulate the z80-based Sinclair machines. We've a phenomenal amount of accuracy for those machines now, and there's still more to learn - sometimes it feels like the damned z80 will never be emulated accurately.

However, we (and other emulator authors) have gone out of our way to provide a decent experience for the user with fast loading systems, joysticks, convenient methods of doing tasks that couldn't easily be done on the original machines...

All of this doesn't mean that we abandon accuracy for better gameplay, or vice-versa.

I've never really understood why the MAME team adopted this stance (other than the legal ones, of course).

D.
 
Last edited by a moderator:
CyruzDraxs said:
I think the MESS team working with devices like the Pandora would make sense in terms of preservation. I mean, it's an ARM-based linux system--those aren't exactly uncommon, and I don't see them disappearing any time soon.

x86, on the other hand...well...it's a dead horse that's been beaten so much you can hardly tell it was a horse once. It's power-hungry and has already reached to GHz wall, so all they can do now is add more cores or make a better architecture.

I think over the next few years ARM is going to take over the netbook market, edge it's way into the full-size laptop market and might even reach a performance point where it can atleast be a viable competitor to desktop x86 processors.
I think you'll find that there's very little that has to be platform specific in an emulator, unless you need to push it to run well. You can do a quite portable N64 emulator, but one that runs on Pandora would never be.

Of course, expecting ARM to displace x86 in desktops or even laptops is kind of a pipe dream.

EDIT: Pandora, not Wiz. You can see what's been on my mind >_>
 
Last edited by a moderator:
Status
Not open for further replies.
Back
Top