Well you should thank zones for the Mac port, I mostly did Windows stuff.
Of course not, that's an early version of Snes9x 1.43 and it's already been brought up that there is no compatibility with Snes9x 1.43 smvs.
The likely major culprit of desyncs (sound output/synchronization code) has still not been rewritten, so until someone figures out how to do it, don't expect drastically reduced desync issues.
The SMV page says how they are sized. They occur in this order after the other controller input for the frame. Here's what's inside them:
Mouse
{
int16 x
int16 y
int8 buttons // left:0x40, right:0x80, latch:0x10, latch2:0x20
}
Scope
{
int16 x
int16 y
int8 phys_buttons // fire:0x80, cursor:0x40, turbo:0x20, pause:0x10, offscreen:0x02
int8 next_buttons // like phys_buttons
}
Justifier
{
int16 x_player1
int16 x_player2
int16 y_player1
int16 y_player2
int8 buttons // trigger:0x80, start:0x20, select:0x08
int8 offscreen_player1 // 0 or 1
int8 offscreen_player2 // 0 or 1
}
int16's are little-endian and signed
That game does something weird with its input that's emulated differently now, I don't know much about it yet. I would report those bugs here actually.
Great news!
Since v1.5x has different emulation timing compared to 1.43 (mostly longer in loading scenes), hex editing the input of 1.43 smv files into 1.5x ones won't work, I fear. I tried once and failed.
Regarding this version, I really hope that it won't have any additional desync problems compared to 1.43 with WIP timing. If this version proves to be solid in that case, I think it should probably be used for further movies, since it also has some more features the older Snes9x didn't have (like load/save of watching memory adresses) that will make TASing more easy.
Joined: 11/14/2005
Posts: 1058
Location: United States
Can anyone explain how to use the snes mouse in frame advance. Seems that (pc) mouse resets to the center of the screen after every advance of a frame.
Also after watching moozooh's test run in Super Metroid recorded on this version, I noticed that the sound has always some crack/gnash noices especially noticeable through headphones. Also in rare cases it happened that the interpolation was gone for a short while, then returned back to normal, even though it was enabled all the time.
After doing some test with AVI, I couldn't hear the same sound problems in it though. Seems like it's only emulation related.
Did anybody noticed the same error as well? And if so, can it be fixed somehow?
Otherwise v1.43 would be superior to this one in sound at least, as it never had this weird errors.
It's most likely impossible. As said, it has a different timing, so even hex editing and matching the timing wouldn't help, as the luck routines of a game would be completely different because of that.
Actually, I sometimes noticed some crackling in the old version when I had a game movie going for long enough, so maybe it's not a new problem.
Can you turn that off if you want to?
put yourself in my rocketpack if that poochie is one outrageous dude
I think there's no reason to disable it, because it only happens if you used the read-only toggle to switch to playback from recording. I can't think of any instances where I really wanted a movie to close while I was trying to watch what I just recorded, and it's not that much effort to choose "Stop Movie" if there is ever an exception.
Saturn wrote:
Regarding this version, I really hope that it won't have any additional desync problems compared to 1.43 with WIP timing.
Well, this new version hasn't been stress-tested for desyncs anywhere near as much as 1.43 WIP has by now, so as much as I'd like to say it's better because of all the possibly-desync-causing bugs that were fixed, it is quite likely that some problems have appeared that have gone unnoticed with the relative lack of testing so far. There will probably be a 1.52 to fix things like that.
hero of the day wrote:
Can anyone explain how to use the snes mouse in frame advance. Seems that (pc) mouse resets to the center of the screen after every advance of a frame.
What Snes9x does is let you change the relative position, and it keeps track of differences in relative position to give the illusion of controlling the absolute position. For TASing purposes, just ignore the PC mouse and judge your movements by the input display and where the SNES mouse appears when you load a savestate while the game is unpaused. Try to keep both the X and Y input display numbers between -128 and 128, pushing against either side before loading a savestate if necessary. Also, adding the game's real X and Y positions to memory watch helps a lot.
The reason it's so counterintuitive is because Snes9x does not know where the game's mouse cursor is. How can it convert your mouse position to movement if it doesn't know what it's moving?
That can be overcome with some extra configuration, but it wasn't high priority because this way (weird and unintuitive as it is) works well enough to make a TAS if you adjust to it, and for normal playing it doesn't make a difference.
Actually, I sometimes noticed some crackling in the old version when I had a game movie going for long enough, so maybe it's not a new problem.
True, but it was very very small and almost not noticeable at lower sound loudness. In this one the cracking is MUCH louder (probably twice as loud as the sound itself) and very annoying for the ears to hear all the time.
And Snes9x v1.43 never had loss of interpolation in sound as well. 1.51 had about 5-10 times during a 1:20 hour long movie. I used the windows version (in case it happens only on it). It sounds very sloppy and unstable that way, and I really want it to be fixed, since with such a bad sound emulation, I don't see myself switching over yet. But ONLY because of it. Everything else seems fine so far.
True, but it was very very small and almost not noticeable at lower sound loudness. In this one the cracking is MUCH louder (probably twice as loud as the sound itself) and very annoying for the ears to hear all the time.
But did you try turning off "sync sound"? Also, the same steps for getting rid of crackling in 1.43 on slow computers apply here (turn down the sound quality options then gradually increase the buffer length and mix interval until it stops). The system requirements for 1.51 are much higher (there were things that made emulation faster and less accurate that were turned off because it was felt the average computer nowadays can handle it).
Saturn wrote:
And Snes9x v1.43 never had loss of interpolation in sound as well. 1.51 had about 5-10 times during a 1:20 hour long movie.
I think they're aware of that and are looking into it. I reported it before but it's hard to track down and the release had been delayed long enough already.
But did you try turning off "sync sound"? Also, the same steps for getting rid of crackling in 1.43 on slow computers apply here (turn down the sound quality options then gradually increase the buffer length and mix interval until it stops). The system requirements for 1.51 are much higher (there were things that made emulation faster and less accurate that were turned off because it was felt the average computer nowadays can handle it).
Indeed, without Sync Sound the cracking is almost gone. Thank you for once again teaching me noob a lesson. :-)
However I wonder, what does Sync Sound do actually? I always had it enabled in 1.43, so I worry if I turn it off, wouldn't it increase the chances of a desync in sound compared to the picture if I understand correctly? That would be a big disadvantage not using it then. :-(
Would appreciate some information about it.
nitsuja wrote:
I think they're aware of that and are looking into it. I reported it before but it's hard to track down and the release had been delayed long enough already.
Thanks for clearing that up. Hopefully this gets fixed as soon as possible.
When you're playing a movie file and you pause the emulator, is the movie supposed to stop playing when you resume the emulator?
No, and it doesn't do that either, from what I can tell testing it just now. Could you describe what you're doing in more detail?
Bag of Magic Food wrote:
Can you turn that off if you want to?
Now I see why you asked this, there's some bug where it doesn't do what it initially did, and pauses anyway.
EDIT: Never mind, it doesn't always pause. It's working exactly as intended when I test it now.
When you're playing a movie file and you pause the emulator, is the movie supposed to stop playing when you resume the emulator?
No, and it doesn't do that either, from what I can tell testing it just now. Could you describe what you're doing in more detail?
I'm using the Mac version, which is probably why its working fine for you.
I'm just hitting Esc or command-r to pause the emulation. When I hit command-r to unpause the movie just stops playing. The emulation is still going on but the movie isn't.
I downloaded 1.43 and it did the same thing so I thought that either its supposed to do this for some weird reason or no one caught the bug so I figured I'd ask.
Do I always have to ask anything twice?
Saturn wrote:
However I wonder, what does Sync Sound do actually? I always had it enabled in 1.43, so I worry if I turn it off, wouldn't it increase the chances of a desync in sound compared to the picture if I understand correctly?
Please nitsuja, I need to know what it does exactly, so I can make my decision to switch or not easier.
Hi, nitsuja-san.
It attempted to use.
It is a question and it is, it doesn't know whether or not it is a bug when reading a ROM by the replay of the SMV file and replaying it, it is what not to reflect even if it adds but it is ・・・.
When i rerecord with Fake Mute desync workaround off, it is written that "Sound CPU STOP at 0020". At that point, the "FMDW" comes on. Is there a way to fix this?
Hope this has not been answered.
I think Sound CPU STOP means the emulated APU crashed. What game is it? And why are you turning that workaround off when it always either does nothing or avoids desyncs?
I can't get it to happen, need a movie or more directions. Usually when you crash the game the only workaround is to not do the thing that made it crash, but there might be another way.
Is it just me, or is the music actually more "off" than 1.43?
I wrote:
It's more the other way around, and we've gotten used to the pitch of everything being slightly wrong. The sound still has some issues and has not yet received the complete revamping it could have used, but it's still noticeably better in a lot of games. (try the Star Ocean intro...)
I was wrong about the pitch, but luckily there is an option to put it back to the way it should be... set FixFrequency=FALSE in the [Sound] section of your snes9x.cfg file.
When someone else added that option and left it on by default, I assumed that by "fix" they meant "make it better", not "make it worse so certain old LINUX sound cards can play it".
Yes, but to do that would mean putting most of Snes9x 1.43 WIP inside Snes9x 1.51+whatever, so it's not worth the large amount of effort required and extra bloat resulting from it.
Is it just me, or is the music actually more "off" than 1.43?
I wrote:
It's more the other way around, and we've gotten used to the pitch of everything being slightly wrong. The sound still has some issues and has not yet received the complete revamping it could have used, but it's still noticeably better in a lot of games. (try the Star Ocean intro...)
I was wrong about the pitch, but luckily there is an option to put it back to the way it should be... set FixFrequency=FALSE in the [Sound] section of your snes9x.cfg file.
When someone else added that option and left it on by default, I assumed that by "fix" they meant "make it better", not "make it worse so certain old LINUX sound cards can play it".
That did the trick. Now Snes9x sounds great. Thanks!