puNES Emulator

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

x0000
Posts: 43
Joined: Thu Feb 28, 2013 11:14 am
Contact:

Re: puNES Emulator (ex Fnes)

Post by x0000 »

DukeJP wrote:
FHorse wrote:
DukeJP wrote:Please, add suport to configure a "deadzone" for the pad. Im using a xbox360 controller, and its impossible controling megaman or mario! The stick is too sensible, and this pad cant be configurated in Sytem Options. If i use another set of "tuned" drivers, the pad loses all compatibility with another games. (Sorry my english)
Ok. Now, I'm busy with new video/audio/input stack for directx, when I finish I will contact you to resolve the problem. :)
Thanks. Your emulator is great! AFAIK, its the only one can play the tricky High Hopes demo and Quantum disco brothers demo too. Those demos i use to test compatibility, and your emu is the only works with both of them. Keep up your great work.
The only tricky part about these two is that they should be emulated in PAL mode. Both work just fine even with my emulator
Alterac
Posts: 4
Joined: Sat Aug 11, 2012 10:05 pm

Re: puNES Emulator (ex Fnes)

Post by Alterac »

FHorse wrote: Ok. Now, I'm busy with new video/audio/input stack for directx, when I finish I will contact you to resolve the problem. :)

When you get a moment can you add the ability to bind the rest of the keyboard commands to joystick buttons?
Especially the ability to bind a joystick button to Save and Load state.. Inc and Dec State would be nice to have also.

F1 = save state
F2 = dec slot
F3 = inc slot
F4 = load state

Soft Reset NES may also be nice.
darkhog
Posts: 192
Joined: Tue Jun 28, 2011 2:39 pm

Re: puNES Emulator (ex Fnes)

Post by darkhog »

Great emulator! I've installed it just so I could play Sachen's Pyramid properly (on Nestopia it restarted as in reset at random). The only problem I noticed so far is that I can't map my pad properly. Whatever I try, it always defaults to JP0VF (I have cheap USB pad looking exactly like first PSX one, even without analogs).

Also, instead of erroring when you have try to use already binded key for something different, better approach would be to clear whatever control it was earlier binded to and then when user press OK and there are unbinded controls prompt user that some keys aren't binded and he/she may have issues (but still allow ok-ing in case someone doesn't want to have turbos binded to anything, because he/she have turbo function in his pad).

//edit: Also feature request which is loading games from zip files (pretty much all torrents with roms are in zip files.)

//edit 2: ??? For a moment I forgot I'm using puNES and picked pad and played it like in Nestopia... And it worked! Does puNES read Nestopia's joypad config? Because mappings are same (only thing that doesn't work is rewind and reset, which I mapped to shoulder buttons, but that's understandable, since first isn't in puNES (it'd be good addition though for harder games like Ninja Gaiden) and latter isn't mappable here).
FHorse
Posts: 232
Joined: Sat May 08, 2010 9:31 am

Re: puNES Emulator (ex Fnes)

Post by FHorse »

darkhog wrote:Great emulator! I've installed it just so I could play Sachen's Pyramid properly (on Nestopia it restarted as in reset at random). The only problem I noticed so far is that I can't map my pad properly. Whatever I try, it always defaults to JP0VF (I have cheap USB pad looking exactly like first PSX one, even without analogs).

Also, instead of erroring when you have try to use already binded key for something different, better approach would be to clear whatever control it was earlier binded to and then when user press OK and there are unbinded controls prompt user that some keys aren't binded and he/she may have issues (but still allow ok-ing in case someone doesn't want to have turbos binded to anything, because he/she have turbo function in his pad).
Hi darkhog, thanks for using puNES. Which version do you use, widows or linux? Under windows it is my intention to rewrite the stack input, but now I'm busy (in the short time I have available) in porting (video and audio) to the DirectX (which I almost completed).
darkhog wrote://edit: Also feature request which is loading games from zip files (pretty much all torrents with roms are in zip files.)
Is already in the TODO list.
darkhog wrote://edit 2: ??? For a moment I forgot I'm using puNES and picked pad and played it like in Nestopia... And it worked! Does puNES read Nestopia's joypad config? Because mappings are same (only thing that doesn't work is rewind and reset, which I mapped to shoulder buttons, but that's understandable, since first isn't in puNES (it'd be good addition though for harder games like Ninja Gaiden) and latter isn't mappable here).
No, puNES don't read Nestopia's joypad config. it's really strange. :shock:
Black Zero
Posts: 41
Joined: Sat Jul 20, 2013 10:14 pm

Re: puNES Emulator (ex Fnes)

Post by Black Zero »

Hello everyone!

I've recently acquired a Retro Bit NES USB Control adapter + a original NES controller to use for puNES, Gambatte, Magic-Engine etc.

It works great for Gambatte and Magic-Engine but not for puNES.
The problem I have is that the D-Pad isn't configurable and usable because somehow puNES is super sensitive and all it want to do is to set every button to JPOVF meaning Forward (UP)

I have tried changing things manually in the Input.cfg and A, B, Start, Select seems to work OK but not the D-Pad.

I'm currently using an original SNES controller along with an adapter from MayFlash instead to somehow get an authentic feel but it's not the same, oh not even close.

Unfortunately the NES controller and adapter also works in Jnes but I really wanna move from that emulator because puNES is so much accurate and better.

I also tried calibrating the control but it doesn't change anything and every other control I have works just fine in puNES not just the original NES one that I want to use.

What can be done about my problem here? I just want to play my games with a real NES controller in puNES so badly.


EDIT:

I got it to work and solved the problem by using a little freeware JoyToKey program called J2K - A Joystick to Keyboard Mapper 1.1

I mapped the keyboard keys in puNES that I wanted to use (A = X, B = Z, Select = C, Start = V, Up = Up Arrow, Left = Left Arrow, Down = Down Arrow, Right = Right Arrow and left everything else blank), then mapped those keys to the corresponding NES controller buttons in J2K, saved the profile and was done.

The result was perfect and I'm now enjoying all my NES games with the refurbished original NES controller. So a tip to all of you, if you ever got problems with a controller and an emulator, try to use this J2K program.


Sorry to have bothered you...
FHorse
Posts: 232
Joined: Sat May 08, 2010 9:31 am

Version 0.69

Post by FHorse »

Changelog:
0.69
MMC3A and MMC3C are now full implemented.
Fixed a bug in MMC3 code and now the status bar in Mickey's Safari in Letterland is displayed correctly.
Added an option in the Audio Settings that enables the sound output of a early Famicom-clone consoles (swaps the duty cycles 25% and 50%).
Fixed a bug introduced in a previous version that did not allow the start of the "Batman - Return of the Joker".
Added support for Windows 8.
Added CLI option "--portable" for run puNES in portable mode (is no longer necessary to rename the executable even if it is still possible to do so for backwards compatibility).
Fixed the display of the parameters of the command line in the Windows version.
Zilog Jones
Posts: 1
Joined: Wed Oct 09, 2013 2:16 pm

Re: puNES Emulator (ex Fnes)

Post by Zilog Jones »

I'm also having problems with audio latency - as someone else was experiencing there seems to be significant lag (several frames) with the audio output compared to video. It happens for me with all three renderers. It's very noticeable for me when jumping in SMB, for example (and comparing to Nestopia, FCEUX, etc.). Any ideas what is wrong?

I've seen the problem in 0.69 32-bit, and both 32 and 64-bit 0.68 (btw is there any benefit to 64-bit?).

I'm running Windows 7 64-bit, with a Radeon 7850.
FHorse
Posts: 232
Joined: Sat May 08, 2010 9:31 am

Re: puNES Emulator (ex Fnes)

Post by FHorse »

Zilog Jones wrote:I'm also having problems with audio latency - as someone else was experiencing there seems to be significant lag (several frames) with the audio output compared to video. It happens for me with all three renderers. It's very noticeable for me when jumping in SMB, for example (and comparing to Nestopia, FCEUX, etc.). Any ideas what is wrong?

I've seen the problem in 0.69 32-bit, and both 32 and 64-bit 0.68 (btw is there any benefit to 64-bit?).

I'm running Windows 7 64-bit, with a Radeon 7850.
I Jones, I have contacted you via private message.
wahnschaffe
Posts: 4
Joined: Sat Oct 12, 2013 10:40 pm

Re: puNES Emulator (ex Fnes)

Post by wahnschaffe »

I am a big fan of puNES. Currently my favorite NES emulator. I have wondered if you would be willing to open the source for it anytime soon? You could put it on github. There's a lot of benefits to open source. There's been too many promising emulators that never released their code, so they stopped being updated once their creators did.

I've heard of users reporting "audio problems at 30ms or less latency". Have you heard of dynamic rate control? I believe that could fix it. It's a new kind of syncing audio and visuals.

https://github.com/libretro/libretro.gi ... ontrol.pdf

Also, have you heard of libretro API and Retroarch? A puNES port could be very interesting.
User avatar
Dwedit
Posts: 4924
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: puNES Emulator (ex Fnes)

Post by Dwedit »

Dynamic rate control sounds really bad, because it would change the pitch of the sound, even though it claims to not be audible.
A better alternative would be something that would only affect the pitch of CPU-timed PCM samples, leaving square waves, triangle waves, noise and DMC at their original pitches.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: puNES Emulator (ex Fnes)

Post by tepples »

Leaving DMC at its original pitch would break Fire Hawk, Mig 29 Soviet Fighter, and Time Lord, which use DMC IRQ as a crude scanline counter.
User avatar
James
Posts: 431
Joined: Sat Jan 22, 2005 8:51 am
Location: Chicago, IL
Contact:

Re: puNES Emulator (ex Fnes)

Post by James »

Dwedit wrote:Dynamic rate control sounds really bad, because it would change the pitch of the sound, even though it claims to not be audible.
nemulator uses a similar method (since 2009) and I'm really happy with the results (inaudible pitch changes, to my ears at least). Have you tried it?
get nemulator
http://nemulator.com
User avatar
Dwedit
Posts: 4924
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: puNES Emulator (ex Fnes)

Post by Dwedit »

Haven't tried it because I'm on Windows XP 32 bit.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: puNES Emulator (ex Fnes)

Post by tepples »

Dwedit wrote:Haven't tried it because I'm on Windows XP 32 bit.
You have 169 days...
wahnschaffe
Posts: 4
Joined: Sat Oct 12, 2013 10:40 pm

Re: puNES Emulator (ex Fnes)

Post by wahnschaffe »

Does puNES support the NES 2.0 filetype?
http://wiki.nesdev.com/w/index.php/NES_2.0
Dwedit wrote:Dynamic rate control sounds really bad, because it would change the pitch of the sound, even though it claims to not be audible.
A better alternative would be something that would only affect the pitch of CPU-timed PCM samples, leaving square waves, triangle waves, noise and DMC at their original pitches.
RetroArch uses DRC. You can try it and see how it sounds. I don't notice any audio changes.
http://themaister.net/retroarch.html

A retroarch port would be neat, as it could make use of DRC and other features RA has (netplay, shaders, audio/visual options, etc). I also wonder if you could create a custom GUI for Retroarch which mimics puNES's. That way you could run the "port" with all the added benefits, but from the end-user's standpoint it would appear no different than regular puNES. I have no idea if this is even possible, just an idea I had.

Otherwise, you could just add DRC to puNES standalone. I just like DRC and don't really care how I get it.
Dwedit wrote:Haven't tried it because I'm on Windows XP 32 bit.
I highly recommend installing a lightweight Linux OS on there. WinXP is a sinking ship.
Post Reply