Little troubles on latest DOS wip

Found a bug? Please report it, but remember to follow the bug reporting guidelines.
Missing a sane feature? Let us know!
But please do NOT request ports to other systems.

Moderator: ZSNES Mods

Thalon
Rookie
Posts: 45
Joined: Thu Jul 29, 2004 5:53 pm
Location: Italy

Little troubles on latest DOS wip

Post by Thalon »

I just found a pair of little bugs in latest DOS wip (09/29).

Bug 1: it also appeared in one wip years ago (when Ipher started his wipsite, year 2004 if I recall correctly) and was fixed by Pagefault after my report to him, but resurfaced after 09/04 wip (previous releases are ok).
It appears like a moving "snowy pattern noise" effect (like a corrupted signal on analog TVs), with little white "dots" (not exactly dots, they're something like little bars, 3x1 pixel width) blinking around the screen: it's permanent unless I disable MMX support in the options menu; I would gladly post a screenshot, but it would be useless: captured pics appear perfectly normal...

Bug 2: joypad config is never saved after i quit the emu, everytime I start again I find a mixed thing: "keyboard" as selected device and the default buttons assigned to my joypad's buttons...

I hope to have been enough clear helping the devs to track and fix the bugs.
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

For Bug 1, I dunno what is causing that.. I've seen this as well.

For Bug 2, it may be fixed in SVN (there were some DOS cfg saving issues).
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

I don't really know about the first problem. I can ask pagefault when he's around. If you recall which WIP fixed it and what commit message it was, we can check SVN to see what he did.

As for the second problem, I should've fixed that already earlier today. You can compile SVN yourself with zget if you want.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Thalon
Rookie
Posts: 45
Joined: Thu Jul 29, 2004 5:53 pm
Location: Italy

Post by Thalon »

Nach wrote:I don't really know about the first problem. I can ask pagefault when he's around. If you recall which WIP fixed it and what commit message it was, we can check SVN to see what he did.
Honestly I don't remember: many years have passed since, and I don't have the habit to keep my e-mail messages, let's hope that Pagefault has :)
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

#1: You're using an 8-bit video mode, right? This issue might be because ZSNES sets the palette colors directly via port accesses (3C8h and 3C9h).

In this case the "snow" could be fixed by using BIOS calls to set the palette (slow) or just using a 16-bit video mode.
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
Thalon
Rookie
Posts: 45
Joined: Thu Jul 29, 2004 5:53 pm
Location: Italy

Post by Thalon »

creaothceann wrote:#1: You're using an 8-bit video mode, right? This issue might be because ZSNES sets the palette colors directly via port accesses (3C8h and 3C9h).
Nope, my usual resolution is 640x480 vesa2...

BTW, may I make a special thank to Nach for Zget? I couldn't even imagine it was so user friendly.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

Thalon wrote: BTW, may I make a special thank to Nach for Zget? I couldn't even imagine it was so user friendly.
Sure you can :D
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

Thalon wrote:Nope, my usual resolution is 640x480 vesa2...
Oh well, no idea then.
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
Thalon
Rookie
Posts: 45
Joined: Thu Jul 29, 2004 5:53 pm
Location: Italy

Post by Thalon »

Ok, i think I found the right commit for bug #1:

r1434 | pagefault | 2003-05-17 22:45:10 +0200 (sab, 17 mag 2003) | 2 lines
Changed paths:
M /trunk/src/cpu/dspproc.asm

Fixed DOS port gfx corruption

BTW, I'm sorry to contraddict Deathlike2, but bug #2 is still present in latest SVN build I compiled with Zget (r3957): I also forgot to add that Zsnes no longer "remembers" last opened rom folder (everytime it starts from it's default folder).
Last edited by Thalon on Thu Oct 05, 2006 3:18 pm, edited 1 time in total.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

Thalon wrote:Ok, i think I found the right commit for bug #1:

r1434 | pagefault | 2003-05-17 22:45:10 +0200 (sab, 17 mag 2003) | 2 lines
Changed paths:
M /trunk/src/cpu/dspproc.asm

Fixed DOS port gfx corruption
https://zsnes.bountysource.com/svn/!revision/1434
Interesting, I'm not sure why it should do that, but I notice the %ifdef for MSDOS has been removed. Perhaps Jonas can look into this one.
Thalon wrote: BTW, I'm sorry to contraddict Deathlike2, but bug #2 is still present in latest SVN build I compiled with Zget (r3957): I also forgot to add that Zsnes no longer "remembers" last opened rom folder (everytime it starts from it's default folder).
This is fixed. I've fixed it and tested it myself. You should not be experiencing this problem with r3957.

Which leaves one of 3 possibilities.
You are not using r3957.
You are launching ZSNES differently than I am, so the config file is not found (a bug on our part which doesn't handle a certain start up condition).
You are exiting ZSNES differently than I am, so the config file is not saved (a bug on our part which doesn't handle a certain exit condition).

To narrow it down a bit, what steps do you take starting and exiting ZSNES?
Is zsnes.cfg being created and updated for you? Do you have several on your machine?

But most importantly, make sure you actually are running r3957, clean out the ZSNES directory before building, make sure the exe you're running was the one created by zget.

And for further debugging, here is a build from me. http://nsrt.edgeemu.com/zsnes-r3957-mini.zip
Although note that build doesn't have JMA or the Debugger compiled in. The video menu may also have some quirks since I'm doing some edits on it which aren't finished yet.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Thalon
Rookie
Posts: 45
Joined: Thu Jul 29, 2004 5:53 pm
Location: Italy

Post by Thalon »

To narrow it down a bit, what steps do you take starting and exiting ZSNES?
I double click on the icon under windows to open the emu (or I type zsnes in command prompt if I start in dos mode instead of win98), then I select "quit" on the menu (otherwise I hit the end key I assigned to quit the emu).
Is zsnes.cfg being created and updated for you? Do you have several on your machine?
I have only one zsnes.cfg in the emu's directory, it's regularry created and updated (I also deleted the old one to be sure of it), the only problem resides in the "input" section: If I select "8 button joystick" from the gui, the value assigned in zsnes.cfg is 18 instead of 5 (and I have the "mixed" situation I described in my first post when I restart the emu), if I manually edit the cfg and insert the correct value (5) I obtain a "6 button joystick" in the gui...
And for further debugging, here is a build from me. http://nsrt.edgeemu.com/zsnes-r3957-mini.zip
Although note that build doesn't have JMA or the Debugger compiled in. The video menu may also have some quirks since I'm doing some edits on it which aren't finished yet.
Just tried your build: the problem persist :(
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

It may help to delete the .cfg file and see if that helps.. though I have confirmed that the 8 button gamepad option doesn't seem to work as intended.

I'll retest the path bugs under Win98SE.. but it is fixed to my knowledge.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Thalon, the revision you referred to doesn't really seem to do much.. except factor in some check to the sound.

The button issue should be fixed in SVN now though.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Hmmm, it doesn't seem to work in Win98SE. I see.. you did NOT mention that little bit in your original post (it helps a lot more if you provide more info to begin with).
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

Okay, we found pure DOS has issues passing access() a directory with a trailing slash. We worked around that limitation, so it should work for you now.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Thalon
Rookie
Posts: 45
Joined: Thu Jul 29, 2004 5:53 pm
Location: Italy

Post by Thalon »

Deathlike2 wrote:Thalon, the revision you referred to doesn't really seem to do much.. except factor in some check to the sound.

The button issue should be fixed in SVN now though.
I'm a bit confused now (btw, sorry if I forgot to give you devs some important info): you are talking about bug #1 and the commit made by pagefault years ago I was reporting earlier, right?
I can tell that the bug current in CVS (the "snowy effect") is identical (I can not be 100% sure, it seems identical to my eyes) to the one disappeared with the build that included that commit by Pagefault (05/17/2003), I also tried that build and the previous one (05/10/2003) and can confirm that that bug was fixed between those two releases: I chose that specific commit because it seemed to me that it was the most logical one between the other fixes committed from the buggy wip to the correct one (the others were referring to a fix in the linux port, a fix for winter gold and other chechsum fixes).
Maybe I'm wrong and the new bug is similar (but not identical) to the old one, and it's caused by different changes on the code, in this case we can assume that my report is completely useless, if not the only thing I can recommend to you and the other devs is to check the commits between those two wips quoted above...
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Mmm.. you will need to test something then.

Keep MMX support enabled, but disable all sound filters. My guess is that this junk won't appear.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

https://zsnes.bountysource.com/svn/!revision/1436

This is the one that is the real fix.

The problem as far as I can tell is the use of MMX+sound.. which is causing the snow. What pagefault did seems to be a workaround, and since my knowledge of the audio code is not very good.. I don't know what specifically causes it.

I'll commit something that will prevent it, but only for Gaussian since that is the what the SNES outputs anyhow.

Edit: r3966 has the change.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Thalon
Rookie
Posts: 45
Joined: Thu Jul 29, 2004 5:53 pm
Location: Italy

Post by Thalon »

Great work, guys!
Now it's compile time for me (but I think i'm going to wait a while, read below) :)
BTW (I promise i won't hassle you and the other devs for a while with other nasty bug reports), I compiled and tested r3965: the path bug has been corrected, and the joypad problem is almost gone: now zsnes remembers my joypad choice, but it doesn't recognize the pression of buttons 7 e 8 when I try to assign the correct keys (I don't know if it can help, but the pad is like a playstation one, connected to the soundblaster's gameport, the unworking buttons are the lowest triggers on the top; everithing is working in windows' control panel).

Edit: Deathlike, you were right, apparently mmx support and sound filters have some conflict...
Last edited by Thalon on Fri Oct 06, 2006 1:29 am, edited 1 time in total.
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

Thalon wrote:I promise i won't hassle you and the other devs for a while with other nasty bug reports
On the contrary, report as many unreported bugs as you can. I'm very happy with the path bug you found and that we were able to fix it.
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

I'm not sure anyone really has the DOS+gameport knowledge for this at the moment. There were logic bugs for sure...

If the buttons don't register on the pad, it may simply be looking for other particular buttons... Try the 6 button config and see if it is detected there. If it doesn't, I don't think there can be much be done here..

Was it even working before the fix joypad fixes or no? If it wasn't working then... then I doubt there is much that can be done to fix that.

Bug fixes are still important... even if it is the DOS port.

Please make sure to test the latest fix I commited.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Thalon
Rookie
Posts: 45
Joined: Thu Jul 29, 2004 5:53 pm
Location: Italy

Post by Thalon »

Deathlike2 wrote:If the buttons don't register on the pad, it may simply be looking for other particular buttons... Try the 6 button config and see if it is detected there. If it doesn't, I don't think there can be much be done here..
Just compiled and tested r3966: now we're going to wait at least christmas to see some snow :)
I tried the 6 button config: zsnes can't detect any of the four triggers (only the 4 buttons on the front).
Was it even working before the fix joypad fixes or no? If it wasn't working then... then I doubt there is much that can be done to fix that.
All buttons were found (but not saved after quit) selecting a 8BJ before your fix (all of them except the lower triggers selecting a 6BJ: this particular config was correctly saved)...
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

I have an idea what the problem is... I'll need some time analyzing this.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Try r3967. This should have it fixed.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Deathlike2
ZSNES Developer
ZSNES Developer
Posts: 6747
Joined: Tue Dec 28, 2004 6:47 am

Post by Deathlike2 »

Mmm.. I'll have to redo quite a bit of this code to get this all good. It's simply messy at the moment.

Edit: Try r3972.
Continuing [url=http://slickproductions.org/forum/index.php?board=13.0]FF4[/url] Research...
Post Reply