Dingoonity.org

GCW Zero => Emulation => Topic started by: Homeplanet on June 18, 2014, 05:39:16 pm

Title: N64 emulator?
Post by: Homeplanet on June 18, 2014, 05:39:16 pm
Correct me if I'm wrong, but I've been looking around the forums and haven't found anything recent on it. N64 emulation IS definitely possible (it worked half-decently on the PSP, OoT Master Quest ran well) and I'm pretty sure 320x240 was the native resolution of the N64 with little variation. So is there any chance a dev could port something? Or if that doesn't pan out, point me somewhere to learn such things (compiling sources for the Zero, etc.)? I believe that Mupen64plus has a linux port already, so it would be (relatively) easier to port than others. (Or maybe I'm just completely wrong and there's no chance on N64 happening, in which case tell me before I'm too hyped up)
Title: Re: N64 emulator?
Post by: kami1357 on June 18, 2014, 07:12:03 pm
I don't think anyone ported it yet, or at last tried.

A raw port might give something great (just as psx4all) but a lot of works is to optimize the code...

Perhaps someone with programming skills could give it a try

Title: Re: N64 emulator?
Post by: forphucksakes on January 21, 2015, 07:07:58 am
Hi guys,

So I went to groups who I thought would be able to help out with an N64 emulator for the GCW0. So far Ive gotten 2xNO(Exophase,Marathonman), 1xMaybe(Mupen64+), 1x No Reply(DaedalusX64)

Exophase : http://www.drastic-ds.com/viewtopic.php?f=4&t=2395
Mupen64+ : https://groups.google.com/forum/#!topic/mupen64plus/kIlJdNEPlPI
CEN64: http://forums.cen64.com/viewforum.php?f=8
DaedalusX64: http://forums.daedalusx64.com/viewtopic.php?f=84&t=4325

Ive been told by an ex-daedalus dev that the project is dead and everybody's moved onto other things so I dont expect much as a response from them. Cen64 is probably abit out of GCW0's league (being an accurate simulator and all) and I expect the response to be along those lines but no reason to not put it out there anyways.

FPS
Title: Re: N64 emulator?
Post by: Nebuleon on January 21, 2015, 09:00:35 am
The response from 'Narann ([email protected])' on the mupen64plus thread seems more like an "I won't do it, but if you do it I won't hinder your progress", i.e. no, than a maybe.

CEN64 is already out of the question. I already know it'd far too demanding for the GCW Zero, and I haven't even compiled it.
Title: Re: N64 emulator?
Post by: forphucksakes on January 21, 2015, 09:17:16 am
Quote
There is some dev activities around dynarec[1] so I guess it's a good time to go but you have to motivate original devs, dynarec is not something you copy paste over code.

Second, I'm maybe wrong on this but Daedalus is not write like mupen64plus so it wouldn't be so easy. Yet Daedalus code would be a very good resource for anyone wanting to add MIPS32r2 dynarec to mupen64plus.

I personally think he's addressing the m64+ community on at least looking at the Daedalus dynarec as a reference for anyone willing to take it up.

The response from 'Narann ([email protected])' on the mupen64plus thread seems more like an "I won't do it, but if you do it I won't hinder your progress", i.e. no, than a maybe.

Im assuming youre refering to this closing comment on his second post:
Quote
Anyway, if anyone have skills and motivation to create a MIPS32 branch for the dynarec for mupen64plus it would be appreciate. :)
I guess its just a matter of perspective but the way I read it is more along the lines of "to all the motivated/skilled M64+ devs out there it would be appreciated if a MIPS32 branch was added to m64+'s dynarec branch"

Which imo is definitely not a "Yes" nor a "No"(m64+ is a community effort after all) I figured if someone motivated/skilled enough (in the M64+ community) steps up and gives it a looksee... it qualifies as a maybe. Then again its just perspective.Perspective is funny aint it?
Title: Re: N64 emulator?
Post by: xXFrostXx on January 21, 2015, 03:57:18 pm
Mupen64Plus would likely work out the best.

Though, button mapping would need to be thought out for the N64 emulator. We have a dpad, thumbstick, two triggers, and four face buttons.

Mentioning that, we would have X and Y free, but we need the Z trigger and the C buttons mapped.
I'm hoping this idea progresses, I just want to point out that button mapping may require button combinations like psx4all used.
Title: Re: N64 emulator?
Post by: pcercuei on January 21, 2015, 04:42:28 pm
No, there are no problems with the buttons, for one simple reason: due to the shape of the N64 controller, the games either handle stick + Z or they handle dpad + L. So you could have different modes in the emulator; the default one being when Z is on L and the C buttons are on the d-pad.

But the button layout is REALLY not the concern here.

First, you need a fast dynamic recompiler from MIPS64 to MIPS32. That piece of code alone would need several months of work for a very experienced software engineer working 40h/week on it. And nobody is going to do that.

Second, the video plugin. The modern video cards are programmed completely differently than they were in the past and that's a big problem for us, because our GPU will only give an acceptable performance for programs that have been written in a modern (GLESv2) way. Last time I checked, the most mobile-friendly GPU plugin (gles2n64) was not light enough to run well on the GCW0 at more than ~10fps. So that's probably all we can get.
Title: Re: N64 emulator?
Post by: Aeter on January 21, 2015, 05:00:03 pm
No, there are no problems with the buttons, for one simple reason: due to the shape of the N64 controller, the games either handle stick + Z or they handle dpad + L. So you could have different modes in the emulator; the default one being when Z is on L and the C buttons are on the d-pad.

But the button layout is REALLY not the concern here.

First, you need a fast dynamic recompiler from MIPS64 to MIPS32. That piece of code alone would need several months of work for a very experienced software engineer working 40h/week on it. And nobody is going to do that.

Second, the video plugin. The modern video cards are programmed completely differently than they were in the past and that's a big problem for us, because our GPU will only give an acceptable performance for programs that have been written in a modern (GLESv2) way. Last time I checked, the most mobile-friendly GPU plugin (gles2n64) was not light enough to run well on the GCW0 at more than ~10fps. So that's probably all we can get.
Well I guess n64 ain't gonna happen then.
I do remember some GCW0 screen shot with a n64 emulator on it, but I guess that is all we'll ever since there too many things not available and won't be in the near future.

Is it possible to get better results with a psx emulator though?
Title: Re: N64 emulator?
Post by: pcercuei on January 21, 2015, 05:04:38 pm
Yes, a PSX emulator is still a big task but definitely possible:
- you recompile 32-bit code and not 64-bit code, so the recompiler is much simpler (but that's still an enormous task that requires a lot of time)
- the graphics are much simpler.
Title: Re: N64 emulator?
Post by: Aeter on January 21, 2015, 05:12:53 pm
Yes, a PSX emulator is still a big task but definitely possible:
- you recompile 32-bit code and not 64-bit code, so the recompiler is much simpler (but that's still an enormous task that requires a lot of time)
- the graphics are much simpler.
Wouldn't it be easier trying to improve psx4all in that case?
Title: Re: N64 emulator?
Post by: xXFrostXx on January 21, 2015, 06:48:59 pm
Yes, a PSX emulator is still a big task but definitely possible:
- you recompile 32-bit code and not 64-bit code, so the recompiler is much simpler (but that's still an enormous task that requires a lot of time)
- the graphics are much simpler.
Wouldn't it be easier trying to improve psx4all in that case?

Every game I tried on psx4all ran very well, there were just some sound issues. Sound crackling and lag. If that could be fixed, psx4all may actually be usable.

I was able to play Megaman Legends until I heard Roll's voice and it sounded like "Megaman BZZRT RTZZRA ZZ".
Title: Re: N64 emulator?
Post by: lemmywinks on January 21, 2015, 08:35:26 pm
No, there are no problems with the buttons, for one simple reason: due to the shape of the N64 controller, the games either handle stick + Z or they handle dpad + L. So you could have different modes in the emulator; the default one being when Z is on L and the C buttons are on the d-pad.

But the button layout is REALLY not the concern here.

That's kinda not correct. For some N64 games you need either 6 face buttons or a 4 way dpad/analog on the right. This is because some games use the A and B as primary action buttons but also use the C buttons either for direct aiming/movement (Goldeneye) or are used in conjunction with the analog stick (Zelda OOT/MM).

So the common way of working around this in emulation is for the C buttons to be mapped to a right analog stick, otherwise it's just a royal PITA. Sure you could remap certain functions to get around this like mapping less essential C buttons to a dpad key (had to do this on my old JXD) but it's still nowhere near as good as 6 face buttons or a right analog and would make some games pretty awkward.

I guess you could have preset profiles which launch automatically (same with L/Z issues) but it would still be an undesirable workaround.
Title: Re: N64 emulator?
Post by: xXFrostXx on January 29, 2015, 11:16:14 pm
I guess you could have preset profiles which launch automatically (same with L/Z issues) but it would still be an undesirable workaround.

But the fact we could play N64... we would get used to it. Haha.
Title: Re: N64 emulator?
Post by: lemmywinks on January 30, 2015, 11:18:53 am
Yeah true, I played through quite a bit of Zelda OOT on a console with a PSP style layout before I upgraded it, much better when you don't have to do that though. Mind you if you want to play that game then just get it on 3DS, it's ace!
Title: Re: N64 emulator?
Post by: xXFrostXx on January 30, 2015, 02:54:26 pm
Yeah true, I played through quite a bit of Zelda OOT on a console with a PSP style layout before I upgraded it, much better when you don't have to do that though. Mind you if you want to play that game then just get it on 3DS, it's ace!

I haven't gotten Zelda OoT 3D yet, but I plan to. If only they'd release a 3D version of Banjo-Kazooie and Kirby 64.
Title: Re: N64 emulator?
Post by: lemmywinks on January 30, 2015, 04:35:14 pm
Get it, it's great! Also get Space Harrier 3D if you haven't already, that's pure class.
Title: Re: N64 emulator?
Post by: Xaijiqq on January 30, 2015, 07:19:17 pm
ah yes the sega 3d classics :) recently got afterburner II which is nice.  they're suppose to release outrun in march and thunder blade in may,, wow those will be incredible!
Title: Re: N64 emulator?
Post by: lemmywinks on January 30, 2015, 10:34:42 pm
Was wondering about Afterburner, the Hang On version wasn't as good I don't think - still good but not must-have like Space Harrier so I wasn't as excited about the other Sega stuff. Not sure about the others but Space Harrier isn't actually a port, it's completely remade for the 3DS. Will be buying Outrun anyway, been playing loads of Coast 2 Coast on the PSP recently which is a great game, very underrated. Like a cross between the original game and Ridge Racer.
Title: Re: N64 emulator?
Post by: xXFrostXx on January 31, 2015, 04:45:28 am
I think the subject of the thread kind of got derailed... haha.

I think we should go back to discussing N64 (and PSX) on the GCW-Zero.
Title: Re: N64 emulator?
Post by: lemmywinks on January 31, 2015, 09:53:32 am
There's not much to discuss really, there isn't an N64 emulator for it and there isn't one in the works. Everything about N64 on the Zero has pretty much already been discussed, plus this was originally a necro-thread from last year too!
Title: Re: N64 emulator?
Post by: xXFrostXx on January 31, 2015, 04:07:39 pm
There's not much to discuss really, there isn't an N64 emulator for it and there isn't one in the works. Everything about N64 on the Zero has pretty much already been discussed, plus this was originally a necro-thread from last year too!

That's true. Oh well.
Title: Re: N64 emulator?
Post by: dreamesper on March 25, 2015, 03:18:06 pm
My thoughts are that it would be tough to mimic the controls on the Zero's button layout in conjunction to the N64. Best solution? Either get a 'new' 3ds XL or wait for a possible GCW Zero 2 lol.

 :-*
Title: Re: N64 emulator?
Post by: Atlantis_Risen on March 25, 2015, 05:33:10 pm
My thoughts are that it would be tough to mimic the controls on the Zero's button layout in conjunction to the N64. Best solution? Either get a 'new' 3ds XL or wait for a possible GCW Zero 2 lol.

 :-*

There was a thread that mapped out a pretty good N64 control scheme on the Zero, but I can't remember what the thread was called.  That was back when N64 was possibly going to happen :(
Title: Re: N64 emulator?
Post by: g3506634 on May 07, 2015, 05:36:52 pm
I'm surprised nobody has mentioned this https://github.com/Nebuleon/mupen64plus-build (https://github.com/Nebuleon/mupen64plus-build) .
There is info on how to compile it for the GCW Zero using the toolchain. Not sure how well it works or why it isn't in the Repository though.
Title: Re: N64 emulator?
Post by: wepecko on May 17, 2015, 10:56:35 pm
and GLideN64 is public now...
http://gliden64.blogspot.ru/
Title: Re: N64 emulator?
Post by: pcercuei on May 18, 2015, 09:29:59 am
I'm surprised nobody has mentioned this https://github.com/Nebuleon/mupen64plus-build (https://github.com/Nebuleon/mupen64plus-build) .
There is info on how to compile it for the GCW Zero using the toolchain. Not sure how well it works or why it isn't in the Repository though.

Because it references GIT repositories that are not available anymore.
Title: Re: N64 emulator?
Post by: Aeter on May 19, 2015, 08:34:46 pm
and GLideN64 is public now...
http://gliden64.blogspot.ru/
Quote
The current version of sources are compatible with GL ES 3 and GL ES 3.1. Porting to GL ES 2.0 will start soon.
I think we need to wait for GL ES 2.0 version.
Title: Re: N64 emulator?
Post by: SullyHere on October 15, 2015, 07:31:02 pm
 Can't somebody just work 40 hours a week on this for a few months :o and see what happens? Haha oh well, I sincerely hope for something here regarding n64 one day! Twould be pretty cool indeed
Title: Re: N64 emulator?
Post by: David Knight on October 15, 2015, 08:56:28 pm
Can't somebody just work 40 hours a week on this for a few months :o and see what happens? Haha oh well, I sincerely hope for something here regarding n64 one day! Twould be pretty cool indeed

According to github (https://github.com/gonetz/GLideN64/tree/master/src/GLES2) it looks like a port of GlideN64 to GLES2 being worked on. The gcw0 is compatible with GLES2.
Title: Re: N64 emulator?
Post by: dreamesper on October 15, 2015, 10:36:06 pm
Perhaps you should look at the GPD XD instead... I have read about it & heard great things!
Title: Re: N64 emulator?
Post by: SullyHere on October 15, 2015, 11:30:07 pm

[\quote] According to github (https://github.com/gonetz/GLideN64/tree/master/src/GLES2) it looks like a port of GlideN64 to GLES2 being worked on. The gcw0 is compatible with GLES2.
[/quote]

Oooooo! I like the way you talk  @David Knight ! ;)

 does that mean there might actually be something in the works? Also if not, I'm willing to throw down a couple of bucks to help commission someone to do it. Maybe we should start a kick starter for this kick starter!
Title: Re: N64 emulator?
Post by: SullyHere on October 15, 2015, 11:33:48 pm
Perhaps you should look at the GPD XD instead... I have read about it & heard great things!
I don't know what it is, but I just love the zero, it's design, it's community, etc. And I'd really love to see that analog stick get some use with some Nintendo  64 games :D

 However I still haven't made a purchase yet, so I'll check out that GPD you recommended out of curiosity. Thanks man!
Title: Re: N64 emulator?
Post by: pcercuei on October 16, 2015, 07:13:57 am
There are already a couple of plugins (Rice, gles2n64) which are compatible with GLES 2. So this is not really exciting. If N64 doesn't happen it's for other reasons.
Title: Re: N64 emulator?
Post by: SullyHere on October 16, 2015, 10:52:08 pm
There are already a couple of plugins (Rice, gles2n64) which are compatible with GLES 2. So this is not really exciting. If N64 doesn't happen it's for other reasons.
@pcercuei @zear @David Knight

 From everything I've heard/read since day one, it seems that the hardware for the zero is fully capable and it's more just about someone putting in the time as far as a Nintendo 64 emulator.
 Is this not true in your opinion? I'm only curious, because I really want this to happen one day. I think that it would (along with the TV out/HDMI connecting) really complete the GCW0 as far as an amazing device that did all it said it would do since the kick starter.

Title: Re: N64 emulator?
Post by: SullyHere on October 20, 2015, 01:19:30 am
There are already a couple of plugins (Rice, gles2n64) which are compatible with GLES 2. So this is not really exciting. If N64 doesn't happen it's for other reasons.
@pcercuei @zear @David Knight

 From everything I've heard/read since day one, it seems that the hardware for the zero is fully capable and it's more just about someone putting in the time as far as a Nintendo 64 emulator.
 Is this not true in your opinion? I'm only curious, because I really want this to happen one day. I think that it would (along with the TV out/HDMI connecting) really complete the GCW0 as far as an amazing device that did all it said it would do since the kick starter.
Is it inevitable ?

Anyone ? ^^^^  @pcercuei @David Knight @zear
Title: Re: N64 emulator?
Post by: dreamesper on October 20, 2015, 01:56:23 am
hey Tom... my opinion is to look into purchasing a GPD XD at the moment... that device can handle all of your n64 needs without issue.

I just ordered mine and will be receiving it this week. Can't wait!

 :o
Title: Re: N64 emulator?
Post by: SullyHere on October 20, 2015, 02:14:52 am
hey Tom... my opinion is to look into purchasing a GPD XD at the moment... that device can handle all of your n64 needs without issue.

I just ordered mine and will be receiving it this week. Can't wait!

 :o
Congrats bud! It looks cool / like a Nintendo 3DS. But I'm just really into the GCW zero as far as its design and portability, as well as old-school look. Again, I would just hate to see hardware that is capable become obsolete  just because no one wanted to put in the time whom had the experience necessary to do the job.  I'm sure it's a very hard job, and I sincerely wish I was capable of doing so.
Title: Re: N64 emulator?
Post by: dreamesper on October 20, 2015, 02:28:25 am
Ya, I understand. However, apparently it would be difficult to create an n64 emu from scratch for the ZERO. Same goes for the ps1. Like I said, if that is what you're looking for on the go, there are other options available like jxd or gpd devices.

In all honesty, the reason I am departing the ZERO scene is due to the length of time it has taken to get ps1/n64 emulation going. I know that it's hard work & most if not all devs do it out of good faith from their own free time but why wait when the opportunity is already there elsewhere you know?

I'll keep you posted as to my thoughts if you're interested. Take care.

 :P
Title: Re: N64 emulator?
Post by: SullyHere on October 20, 2015, 02:56:28 am
Ya, I understand. However, apparently it would be difficult to create an n64 emu from scratch for the ZERO. Same goes for the ps1. Like I said, if that is what you're looking for on the go, there are other options available like jxd or gpd devices.

In all honesty, the reason I am departing the ZERO scene is due to the length of time it has taken to get ps1/n64 emulation going. I know that it's hard work & most if not all devs do it out of good faith from their own free time but why wait when the opportunity is already there elsewhere you know?

I'll keep you posted as to my thoughts if you're interested. Take care.

 :P

 Thanks for the reply man! I totally agree, and that's exactly the reason right there what I'm talking about.... Is people leaving zero behind, just because things didn't get finished so to speak. Like I said, I know and I'm sure it's hard work  Beyond my capacity, but I truly hope it gets ported.

  Honestly, I've made jokes before, but I am totally serious about funding someone or starting a kick starter just to pay somebody capable to make the Nintendo 64 emulator . If it's about money/time,  then let's try to pay someone in order to get it done.  What can I say? I'm a bit dedicated.

Just an idea, in case there are a couple of other people out there like me who'd like to see it get done that badly.
Title: Re: N64 emulator?
Post by: pcercuei on October 20, 2015, 12:51:07 pm
Good idea. Give me $60k and I start to work on it right now.
Title: Re: N64 emulator?
Post by: Ziz on October 20, 2015, 07:04:38 pm
I'll do it for 59,999.99 $!
Title: Re: N64 emulator?
Post by: zear on October 20, 2015, 08:21:13 pm
The topic of N64 emulation has already been thoroughly investigated, with an effort of roughly a year of trials. Bottlenecks in both the jz4770 SoC and GPU hardware/drivers were located, and possible workarounds theorized. The effect of that work can be seen below:

https://www.youtube.com/watch?v=kUhr_8ZwgGM

Any further effort of implementing the workarounds would require at least a year of full time work by two senior MIPS-assembly programmers, with a possible outcome of "Sorry, we exhaused all the options and N64 emulation on jz4770 SoC can't run faster than ~30% of the real hardware.". Which puts pcercuei's cost estimate into perspective.

I am locking this thread now, as I see the topic as exhaused. If anybody has any substantive input related to the emulation optimization, they are welcome to start a new thread.