Homebrew SNES9x for Old 3DS

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,489
Country
United States
Here's a link to audio that demonstrates SNES9x's left channel is a bit louder than the right. The first you'll hear is from blargSNES (which for this particular title, runs slower than normal). A few seconds after, you'll hear SNES9x's audio. Use headphones or earbuds to really notice it.

https://dl.dropboxusercontent.com/u/47706790/rare.mp3
 
  • Like
Reactions: bubble2k16

Philip3ds

Well-Known Member
Member
Joined
May 13, 2015
Messages
187
Trophies
0
Age
27
XP
149
Country
If you're talking about save states... No.
If you're talking about native saves on .srm files, sure. They work on any SNES emulator.
I'm talking about the native saves. The game I'm trying to get the save to work on is Super Mario World. But when I use the save from blargsnes a glitched up Nintendo logo appears and the game doesn't boot.
 

Michierusama

Well-Known Member
Member
Joined
May 13, 2014
Messages
583
Trophies
0
Location
GBAtemp
XP
361
Country
United States
Is there a way the emulator can read files stored in a folder? (not the roms but actual emulator files) like the top image and the cfg file.

Sd://snes9x/top.png
Sd://snes9x/snes.cfg

Sent from my Nexus 6
 
Last edited by Michierusama,

Clydefrosch

Well-Known Member
Member
Joined
Jan 2, 2009
Messages
6,022
Trophies
2
XP
4,620
Country
Germany
Is there a way the emulator can read files stored in a folder? (not the roms but actual emulator files) like the top image and the cfg file.

Sd://snes9x/top.png
Sd://snes9x/snes.cfg

Sent from my Nexus 6
what for? it would only crowd up the menu/folder screen, wouldn't it

I'm talking about the native saves. The game I'm trying to get the save to work on is Super Mario World. But when I use the save from blargsnes a glitched up Nintendo logo appears and the game doesn't boot.

thats weird. usually, if you switch from blarg to this, all the blarg saves would automatically be loaded when you start a game. are you playing a hack of SMW? this emulator is known to have trouble with some SMW hacks
 

Philip3ds

Well-Known Member
Member
Joined
May 13, 2015
Messages
187
Trophies
0
Age
27
XP
149
Country
what for? it would only crowd up the menu/folder screen, wouldn't it



thats weird. usually, if you switch from blarg to this, all the blarg saves would automatically be loaded when you start a game. are you playing a hack of SMW? this emulator is known to have trouble with some SMW hacks
No. It is the original version. I tried to see if the save works on the pc version on snes9x and it loads the save and everything works.
 

Clydefrosch

Well-Known Member
Member
Joined
Jan 2, 2009
Messages
6,022
Trophies
2
XP
4,620
Country
Germany
No. It is the original version. I tried to see if the save works on the pc version on snes9x and it loads the save and everything works.
well, it does sound like a special kind of issues though.

just as a try, backup that save to pc, delete it from your sd card and see if mario works normally then.

also, do all other games with saves from blargsnes have the same problem?
 

Louis Miles

Well-Known Member
Member
Joined
Jul 26, 2016
Messages
131
Trophies
0
Age
24
XP
759
Country
Germany
- Thanks for pointing this out. Like Clydefrosch, I've always been testing the first stage without issues and I assumed the rest didn't have problems. Correct me if I am wrong, it turns out that the stages with the buggy textures only appear in the Koopa Castle stages. I'll have a look at it also to see whats wrong. And one more thing to add to my test plan.
lol, thats right! Only the bowser courses have this issue. And also do you think, you can fix that little message problem in SMW? :)
 

bubble2k16

Well-Known Member
OP
Member
Joined
Jul 25, 2016
Messages
467
Trophies
0
XP
2,118
Country
Senegal
@DiscostewSM - Yup thanks. I heard the difference, except I can't really figure out what the problem was - the code and all looks fine. Had a look at the original Snes9x 1.43 - there's no obviously panning to the left, but the APU States do show that some of the key channels are louder on the left. Makes me wonder if the volume control should be logarithmic

@Louiskovskie - Yes it was "bowser" not "koopa". Don't know what made me say that. Must be age. By the way I found the bug to the Mario Kart problem. But the message problem (I'm assuming it's the patched SMW)... probably not in the near future. I want to take a look at Clock Tower first, it's the trickiest of problems.
 

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,489
Country
United States
Just to let you know @bubble2k16, I went as far back as v0.2, and even that has louder sound in the left channel. However, I think we can rule out it being in the mix buffer or the master volume. I went into soundux.cpp in the "S9xApplyMasterVolumeOnTempBufferIntoLeftRightBuffers" function, and tinkered with it so it'll always process as if there's no echo and no filtering, and then forced all left channel audio to be copied to the right. After all that, it's still louder in the left channel, so the APU/DSP code is unlikely to be the issue.

I'm actually thinking it's an issue with CSND, because I reverted everything back after my tinkering described above, and did the unthinkable. I adjusted the "csndPlaySound" calls in the snd3dsStartPlaying() function in 3dssound.cpp, forcing the right channel to play the left channel buffer data (but still panned all the way to the right), and it's still louder in the left channel.

Maybe if I have time, I can try getting NDSP used instead, in case it is an issue with CSND.
 

Philip3ds

Well-Known Member
Member
Joined
May 13, 2015
Messages
187
Trophies
0
Age
27
XP
149
Country
well, it does sound like a special kind of issues though.

just as a try, backup that save to pc, delete it from your sd card and see if mario works normally then.

also, do all other games with saves from blargsnes have the same problem?
The game works fine when I deleted the save. I have not played any other games on blargsnes to try the save.
 

Arcanine9

Active Member
Newcomer
Joined
Sep 4, 2016
Messages
32
Trophies
0
Age
38
XP
153
Country
Canada
I hope you can get the sprite issue fixed in Super Mario All Stars where the plants and stuff don't go behind the pipes. Thank you very much though for everything you have done. I appreciate it. Would also be a cool feature if you added a way to add different border images around the game, instead of just the black screen, the way BlargSnes does.
 
Last edited by Arcanine9,

DiscostewSM

Well-Known Member
Member
Joined
Feb 10, 2009
Messages
5,484
Trophies
2
Location
Sacramento, California
Website
lazerlight.x10.mx
XP
5,489
Country
United States
@bubble2k16

Just to ask, was the playback using NDSP going at double speed for half a second with an equal amount silence following? You need to adjust the pointer to buffer data when applying the master volume, because NDSP uses interleaved stereo samples. Most of your NDSP code is fine (and trying it out with a few changes, it works, and doesn't have the lopsided audio like CSND does). It'll be a bit before I can tinker with it some more.

I hope you can get the pallet fixed in Super Mario All Stars where the plants and stuff don't go behind the pipes. Thank you very much though for everything you have done. I appreciate it. Would also be a cool feature if you added a way to add different border images around the game, instead of just the black screen, the way BlargSnes does.

It's not a palette issue with that game (and others). It's a sprite layering issue. Just FYI.
 
Last edited by DiscostewSM,

Onepunchbruh

Alhumdulillah
Member
Joined
Jan 30, 2016
Messages
1,485
Trophies
0
XP
616
Country
Pakistan
Snes9x for Old 3DS / 2DS Version 0.61 Released (25 Sep 2016)

Snes9x for 3DS is an SNES emulator for your old 3DS / 2DS. It runs many games at full speed (60 fps). It supports games that use CX4 chip (Megaman X2/X3), and the SDD-1 chip (Star Ocean, Super Street Fighter 2 Alpha). It can also play games that use the SuperFX chip (Yoshi's Island, etc) but they run with plenty of frame skips. It has generally much high compatbility than existing SNES emulators on the 3DS because it uses Snes9x 1.43 as a base, and is a good alternative if your existing emulators cannot play all the games.

3dsx version:
1. Copy the Snes9x_3ds.3dsx and snes9x_3ds_top.png into any folder on your SD card. (Both files must be in the same folder)
2. Place your SNES ROMs into your SD card into any folder (for v0.3 and above)
3. Go to your Homebrew Launcher and launch the snes9x_3ds.3dsx emulator.

CIA version:
1. Use your favorite CIA installer to install snes9x_3ds.cia into your CFW.
2. Place your SNES ROMs inside any folder.
3. Copy snes9x_3ds_top.png to ROOT of your SD card.
4. Exit your CIA installer and go to your CFW's home screen to launch the app.

Inside the Emulator:
1. Tap the bottom screen for the menu.
2. Use Up/Down to choose option, and A to confirm.
3. Use Left/Right to change between ROM selection and emulator options.
4. You can quit the emulator to your homebrew launcher / your CFW's home screen.

Feedback and bug reports are welcome. Help with development is also welcome!


Compatibility List:

Please help to contribute to the list:
http://wiki.gbatemp.net/wiki/Snes9x_for_3DS


Features:

1. Graphic modes 0 - 4 (even offset-per-tile modes), mode 7.
2. Save states of up to 4 slots.
3. Uses CSND for audio.
4. Frame skipping
5. Full screen
6. SDD1 chip (Star Ocean, Super Street Fighter 2 Alpha works)
7. DSP-1 (Pilotwings works well / Super Mario Kart / Ace o Nerae)
8. CX4 (Megaman X2/X3 runs well)


Not Available / Problematic:

1. Sound interpolation / echo
2. Some sound samples sound very wonky
3. Hi-res support (sometime later)
4. Mosaic effect.
6. Resume from sleep mode
7. SA-1 chip. Old 3DS too slow. Consider getting a New 3DS with PocketSNES/CATSFC.
8. SuperFX chip (Yoshi's Island works but runs slowly. Other SuperFX games runs very slowly)

screenshot.png

-------------------------------------------------------------------------------------------------------



What's supported:

1. Graphic modes 0 - 5, 7.
2. Save states of up to 4 slots
3. Cheats
4. Currently uses CSND for audio. So your entry point to home-brew must be able to use CSND. (if you can play BlargSNES with sound, you should be able to play Snes9X_3DS with sound)
5. Frame skipping.
6. Stretch to full screen / 4:3 ratio
7. PAL (50fps) / NTSC (60 fps) frame rates.
8. Navigation of ROMs in different folders.
9. SDD1 chip (Street Fighter 2 Alpha, Star Ocean)
10. SFX1/2 chip (Yoshi's Island, but slow)
11. CX4 chip (Megaman X-2, Megaman X-3)
12. DSP chips (Super Mario Kart, Ace o Nerae)
13. Use of full clock speed in the New 3DS.


What's missing / needs to be improved:

1. Some sound emulation errors.
2. All the other add-on chips.
3. Mosaics.
4. In-frame palette changes (without this some games experience colour issues)
5. Sprite layering issues.


If you are a developer, you are always welcome to help. Source codes are available at:
https://github.com/bubble2k16/snes9x_3ds/tree/master/source
Make a NES emulator please!!!!????
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: Nut on the hill