nesdev.com
https://forums.nesdev.com/

Mesen - NES Emulator
https://forums.nesdev.com/viewtopic.php?f=3&t=13844
Page 18 of 18

Author:  Sour [ Fri Dec 29, 2017 3:37 pm ]
Post subject:  Re: Mesen - NES Emulator

I just released 0.9.4.

Highlights:
-Added support for 20 more NES/Famicom peripherals (controllers, keyboards, mice, barcode readers, external storage, etc.). All of these can now be properly recorded in movies, and used over netplay as well.
-60.0 fps mode to avoid dropping a frame every ~10 seconds
-Exclusive fullscreen mode support
-On Linux, it runs 25-30% faster than before when compiling on clang thanks to enabling LTO.

Debugger-wise, it adds a lot of small/medium features all over the place and fixes a good amount of bugs as well.
There's been some additions to the Lua API as well.

Author:  lidnariq [ Fri Dec 29, 2017 4:36 pm ]
Post subject:  Re: Mesen - NES Emulator

Wishlist or bug report: I was trying to set a breakpoint on palette writes, but trapping writes to PPU $3F00-$3FFF never triggered.

Author:  Sour [ Fri Dec 29, 2017 4:51 pm ]
Post subject:  Re: Mesen - NES Emulator

Ah, good catch - that's probably always been a problem since the palette writes don't count as being a write to VRAM (which is what triggers the breakpoints). Doesn't look like conditional breakpoints can help here, either.
You could most likely get it done with a Lua script, but that's a bit overkill for a relatively common use case. I'll most likely change the debugger so that read/writes to $3F00-$3FFF are trapped like other VRAM accesses.

Author:  Sour [ Fri Dec 29, 2017 6:05 pm ]
Post subject:  Re: Mesen - NES Emulator

It was pretty trivial to implement - $3F00-$3FFF read/writes (those done through $2007 read/writes) will now trigger PPU breakpoints properly.
If you grab the latest commit and build from that, it should work.

Author:  mkwong98 [ Thu Jan 11, 2018 1:29 am ]
Post subject:  Re: Mesen - NES Emulator

Hi Sour, I have 2 suggestions when using sprite conditions in HD Pack:

1. When the condition type is spriteNearby, automatically adjust the offset value according to the orientation of the sprite tile. For example in SMB I have a condition of -8 when 2 different sprite tiles are side by side:

<condition>face,spriteNearby,-8,0,58,FF162718
[face]<tile>1,55,FF162718,224,128,1,N

But this doesn't work when Mario is facing the other direction. It make more sense that when the sprite is flipped, the condition is flipped too. Otherwise I need 4 copies of the same condition.

2. Have 2 more parameters to the spriteNearby and may be spriteAtPosition to specify the orientation of the sprite.

Thank you.

Author:  Sour [ Thu Jan 11, 2018 2:41 pm ]
Post subject:  Re: Mesen - NES Emulator

mkwong98 wrote:
1. When the condition type is spriteNearby, automatically adjust the offset value according to the orientation of the sprite tile.
Yea, that would make a lot of sense and would help reduce conditionals, like you said. Shouldn't be too hard to implement either, I think.
mkwong98 wrote:
2. Have 2 more parameters to the spriteNearby and may be spriteAtPosition to specify the orientation of the sprite.
This is actually already available, but it looks like I forgot to document it completely. There are built-in conditions you can use for sprites: [hmirror], [vmirror] and [bgpriority]. They will only be "true" whenever that particular flag is set on the sprite.

Author:  proviewpt [ Thu Jan 11, 2018 7:39 pm ]
Post subject:  Re: Mesen - NES Emulator

hi, i have a bit of a problem with the controller setup.
I'm using a ds4 wireless controller and i've set up the "circle" button as the "A" button, the "X" as the "B" button, the "triangle" as the turbo A and the "square" as the turbo B and this is what happens when i press the buttons:
circle: A button is activated
X: A and B are activated
triangle: A and B are flickering (the flickering means they are in turbo mode right?)
square: the B button is activated (not in turbo mode)

but it gets weirder if i set the "X" button as the "A" button and i press it only the A button is activated instead of both buttons, in fact the preset controller settings has this in mind with:
square: B button is activated
X: A button is activated
circle: A button is in turbo mode
triangle: B button is in turbo mode

If i try to choose any different button combination i get this weird effect where both buttons are activated, or one is activated and the other is in turbo mode or vice versa.

Is there a way to fix this? i want to be able to play with the circle as the A button and the X as the B button :( this emulator looks really good and it does have high accuracy and friendlu UI the the controller setup irks me!
So, please? help?
ps:Also is it possible to be able to use the d-pad and the joystick at the same time?

Author:  Sour [ Thu Jan 11, 2018 8:22 pm ]
Post subject:  Re: Mesen - NES Emulator

The controller key bindings setup window has 4 tabs - it's possible you have different key bindings in different tabs, which could cause pressing X to activate both A and B - if you selected multiple controller configurations in the setup dialog, you will have key bindings on multiple tabs. Clear them all out and re-do your bindings in the first tab and it should work properly.

You can use the D-Pad and the analog stick together by binding the D-Pad in one tab, and the Analog stick in another, which will allow you to use either of them to move.

Author:  proviewpt [ Thu Jan 11, 2018 8:32 pm ]
Post subject:  Re: Mesen - NES Emulator

Sour wrote:
The controller key bindings setup window has 4 tabs - it's possible you have different key bindings in different tabs, which could cause pressing X to activate both A and B - if you selected multiple controller configurations in the setup dialog, you will have key bindings on multiple tabs. Clear them all out and re-do your bindings in the first tab and it should work properly.

You can use the D-Pad and the analog stick together by binding the D-Pad in one tab, and the Analog stick in another, which will allow you to use either of them to move.


It worked! thank you very much!

Author:  mkwong98 [ Tue Feb 20, 2018 9:53 am ]
Post subject:  Re: Mesen - NES Emulator

Sour wrote:
mkwong98 wrote:
1. When the condition type is spriteNearby, automatically adjust the offset value according to the orientation of the sprite tile.
Yea, that would make a lot of sense and would help reduce conditionals, like you said. Shouldn't be too hard to implement either, I think.
mkwong98 wrote:
2. Have 2 more parameters to the spriteNearby and may be spriteAtPosition to specify the orientation of the sprite.
This is actually already available, but it looks like I forgot to document it completely. There are built-in conditions you can use for sprites: [hmirror], [vmirror] and [bgpriority]. They will only be "true" whenever that particular flag is set on the sprite.


Hi, I'm working on HD pack editor and will start working on sprites soon, can you give some examples of using these built-in conditions?

Also, I'm using conditions for the title screen of Double Dragon II to show graphics on blank background tiles but the frame rate on my PC is below 50FPS. Can you test to see if you can get full 60? I attached the test pack to this message.

Thanks.

Attachments:
File comment: Title screen test with conditions
Double Dragon 2 - The Revenge (U).zip [138.98 KiB]
Downloaded 2 times

Page 18 of 18 All times are UTC - 7 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/