Hacking NDSSFC/CATSFC revival

What sort of additional hotkeys do you want?


  • Total voters
    98

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
Is it possible to have vsync as an option? Dunno' how early in the pipe it's enabled/disabled.
Currently it's this, baked in at compile time:
Code:
#define UP_SCREEN_UPDATE_METHOD 0
The value for vsync double-buffered is 1, and vsync single buffer is 2.

I could make it a runtime setting if I revisit the vsync commit and find that it removes screen tearing but lowers the FPS. If there's no tradeoff to be had, and it just stops the screen tearing, then it'll stay a compile-time define and it'll become 1.
 

Firebug2009

Member
Newcomer
Joined
Jan 7, 2013
Messages
15
Trophies
0
XP
55
Country
Canada
That's nice to hear :) Did you do that on automatic frame skipping?

i have been using 1.26 (just switched to 1.28) with the settings:
aspect: 0 Entire screen
fast-foward: off
sound: on
fluidity: prefer fluid video
frame skipping: (-) keep up with game
cpu frequency: 5

i found that if i changed pretty much any of these, mario rpg would lag pretty bad, but like this it is fairly playable for me...im yet to start up the 1.28 version though....have a good one!
 

Killermech

Cookie Monster
Member
Joined
Mar 5, 2004
Messages
1,809
Trophies
0
Website
Visit site
XP
274
Country
Tried out 1.28 and holy ****. The difference is amazing and at this point it runs all the games better than BagSFC. Amazing work, even though it was just something you overlooked :D
Key input lag is almost completely gone and there's just one weird thing I've encountered rarely with the new version. Sometimes the key input lags or it freezez on the spot. I couldn't recreate it all the time, but I could make it happen like 5% of the time.

Like sometimes the guy would keep running to the right for an extra second, or when you kept it pressed to the left. He would just stand still and start running to the left one second later.
I tried this in Castlevania IV (U) for about 10 minutes doing different stuff to see if I could recreate it. Like jumping, going to the left and then right quickly and so on. But I could only recreate this about 5% of the times. I tried to recreate this in Aladdin (U) as well, but it didn't happen at all there after 2 minutes of testing.

Edit: Played through Aladdin to the end and the weird key input thing happened a few times, very rarely though.
Also, I used a saved state at one point and when it was loaded. It gave a loud distorted noice from the left speaker (no sound from the right speaker). It only disappeared when the game was reseted.
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
Edit: Played through Aladdin to the end and the weird key input thing happened a few times, very rarely though.
Also, I used a saved state at one point and when it was loaded. It gave a loud distorted noice from the left speaker (no sound from the right speaker). It only disappeared when the game was reseted.
re key input: That's much better than jumping all the time, though.

re audio: I will try to isolate the code of mine that does this, and if there is none, then it's unfortunately Snes9x's fault.

It does a few weird things in Secret of Mana too: load up a game other than it, then load it, and the intro is glitched. But load up Secret of Mana straight away and its sound is perfect.
 

NgXAlex

Well-Known Member
Newcomer
Joined
Feb 4, 2013
Messages
77
Trophies
1
Age
37
XP
429
Country
France
Currently it's this, baked in at compile time:
Code:
#define UP_SCREEN_UPDATE_METHOD 0
The value for vsync double-buffered is 1, and vsync single buffer is 2.

I could make it a runtime setting if I revisit the vsync commit and find that it removes screen tearing but lowers the FPS. If there's no tradeoff to be had, and it just stops the screen tearing, then it'll stay a compile-time define and it'll become 1.

Hi, can you tell me what is the file I should edit to have vsync in source ?

;)
 

BassAceGold

Testicles
Member
Joined
Aug 14, 2006
Messages
496
Trophies
1
XP
441
Country
Canada
Wow.

I am so dumb. This is epic dumb. I'm sorry BassAceGold and everyone else involved... but I have made a mistake.

In the README.md, I write that you need to extract the SDK v0.13beta into /opt/ds2sdk, then overwrite it with v1.2, then add BAG's stuff for DMA, right? I didn't do that fully. So I was compiling against an old libds2b.a. The newer one has the controller status stuff fixed in ds2_getrawInput. Or at least it appears to be fixed in Super Mario World's Chocolate Island 1 level.

Before 1.28, which will have no source-code changes on GitHub, I need to test some games. I just had to throw this out there first.

edit: Yeah, Zelda picks up every single button press, even the slightest tap of the Left and Right keys; Metroid has way high FPS even when the cave collapses, and it doesn't tear at all where Rydian said it did. I'm releasing this post-haste!

Wouldn't copying the 1.2 files over the 0.13 beta negate the point in using 0.13? As far as I know, 1.2 is the 0.12 code (has the exact same problems as each other anyway, and the readme version wasn't updated).
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
Wouldn't copying the 1.2 files over the 0.13 beta negate the point in using 0.13? As far as I know, 1.2 is the 0.12 code (has the exact same problems as each other anyway, and the readme version wasn't updated).
I thought there were some files that were in 0.13 but not in 1.2. Actually, I know the GCC version they use is only in 0.13 and is omitted from 1.2, so one has to grab both versions anyway.
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
Vertical sync trades off screen tearing and sound crackling.

With it on, the screen still does tear -- somewhat less -- but the sound crackles in relatively frequent bunches of 3-6 times within half a second.
With it off, the screen tears a bit more and the sound is good.

Can you test your games a bit more with your custom compiled version? I'd like to know what you think of the changes made by update method 1.
 

2ndApex

Well-Known Member
Member
Joined
Jul 12, 2012
Messages
677
Trophies
0
XP
419
Country
United States
1.28 is amazing, I can finally retire SnemulDS from my card now!

Huge thanks for your continued development on CATSFC, you make updates bigger than most homebrew projects that make the front page and you do them almost daily (1.28 ought to be on front page today). It's pretty cool how DSTWO owners finally have the proper SNES emulation we were all offered and I gotta say, if continued CATSFC updates were a paid subscription I'd totally buy it.
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
1.28 is amazing, I can finally retire SnemulDS from my card now!
According to BAG in the SDK forum, that's not even the best the SDK can offer, because I compiled against "0.12 beta" when I thought it was "1.2", and it should have been with 0.13 beta.

So it was actually 0.12 < 0.13, but I thought 0.13 < 1.2.

Huge thanks for your continued development on CATSFC, you make updates bigger than most homebrew projects that make the front page and you do them almost daily (1.28 ought to be on front page today). It's pretty cool how DSTWO owners finally have the proper SNES emulation we were all offered and I gotta say, if continued CATSFC updates were a paid subscription I'd totally buy it.
Haha! If only the GPL didn't force me to publish my source, hm? :P You can of course take the source and compile it yourself for free. Most GPL projects get more money on support than on the software itself. Though if you want to donate, I have no Paypal, so we'd need to sort something out in private...

1.11 was already on the front page, and I dunno if VatoLoco or another staffer wants to put this one on. Maybe with a blurb like "The GBAtemp community tested this build and found it to be much more playable than the last version we featured", it would grab more attention.
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
According to BAG in the SDK forum, that's not even the best the SDK can offer, because I compiled against "0.12 beta" when I thought it was "1.2", and it should have been with 0.13 beta.

So it was actually 0.12 < 0.13, but I thought 0.13 < 1.2.
Nope. 0.12 was actually better for controller status. I'll recover from this SDK switch-up, then continue revisiting the commit log.
 

XDel

Author of Alien Breed: Projekt Odamex
Member
Joined
Jul 25, 2012
Messages
2,714
Trophies
2
Age
49
Location
Another Huxleyian Dystopia
XP
3,549
Country
United States
I believe this is the SNES emulator for the DS that I've been waiting for. So far a lot of my all time favorites seem to be playing pretty good if not perfect. I think there is a lot of hope for this one. Another reason to have a Super DSTwo.
 

Killermech

Cookie Monster
Member
Joined
Mar 5, 2004
Messages
1,809
Trophies
0
Website
Visit site
XP
274
Country
I played through F-Zero's three first cups in frameskip 1 and it ran perfectly. Didn't notice any key input lag whatsoever.
When I played Super Mario World (from Allstars), the key input lag was a bit more consistent, making it very hard to play.
In Super Punch Out, it happened more often as well, especially when I reached the 2nd championship vs 'Masked Muscle'. The keyinput lag was happening like 30% of the time, tapping and him not moving and so on.
Which made it very uncomfortable to play.

I tried this same guy in 1.24 and BagSFC and there was no problem at all in either of them. There was no keyinput lag whatsoever. So just wondering if it's possible to try out without that new setting you added, as it's maybe not even needed now that you got the right version of the library.
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
I played through F-Zero's three first cups in frameskip 1 and it ran perfectly. Didn't notice any key input lag whatsoever.
When I played Super Mario World (from Allstars), the key input lag was a bit more consistent, making it very hard to play.
In Super Punch Out, it happened more often as well, especially when I reached the 2nd championship vs 'Masked Muscle'. The keyinput lag was happening like 30% of the time, tapping and him not moving and so on.
Which made it very uncomfortable to play.
I really don't know what's happening. I just played through a Super Mario World from All-Stars level, consistently performing advanced timing tricks like double berry eating with Yoshi and single-pixel moves on the block in Yoshi's House.

My settings are:

/Video & audio
Aspect ratio [4] Entire screen, smoothed
Fast-forward: Off
Sound: On
Fluidity: Prefer fluid video
Frame skipping [1] Show 1 in 2 frames

/Options
CPU frequency 5

/Tools/Global hotkeys
Go to main menu: L ST
Temporary fast-forward: R
Toggle sound: L X

I can try enabling the controller status hacks again and you can see if that helps?

Edit: In SMW's Yoshi's Island 3, my release of the Right key was ignored for the better of 3 seconds, so I died. Holy crap, that's bad. But I still don't know why that's happening.

Edit 2: It happens for 2 entire seconds every 20 seconds. Is it a problem with the underlying key code in libds2b.a or, worse, the ds2_firmware.dat?
 

Deleted member 319809

MAH BOI/GURL
OP
Member
Joined
Dec 22, 2012
Messages
900
Trophies
0
XP
461
Country
Canada
Guys. Can you please test 1.28 at Frame skipping [2] Show 1 in 3 frames?

As hinted by a few people earlier in the thread, that seemed to be the magical setting for them, and I can't reproduce the key bug if I use frame skipping [2]. Therefore I posit that there's still too much communication going on between the DSTwo and the DS if the effective frameskip is lower than 2.

EDIT: Also, it appears that the DSTwo's NDSGBA forces auto frameskip to be 2 as well. That may be why it works well. All of you front-pagers, try some games out, and I'll see you tomorrow! :)
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    BakerMan @ BakerMan: @salazarcosplay yeah cod's still up