blargSnes -- SNES emulator for the 3DS (WIP)

Discussion in '3DS - Homebrew Development and Emulators' started by StapleButter, Aug 10, 2014.

Thread Status:
Not open for further replies.
  1. Coto

    Coto GBAtemp Addict

    Member
    2,399
    437
    Jun 4, 2010
    Chile

    ive been like that for almost a year. trust me. I know that feeling.
     
  2. dontay0100
    This message by dontay0100 has been removed from public view by Cyan, Aug 20, 2014, Reason: offtopic.
    Aug 20, 2014
  3. the_randomizer
    This message by the_randomizer has been removed from public view by Cyan, Aug 20, 2014, Reason: offtopic.
    Aug 20, 2014
  4. dontay0100
    This message by dontay0100 has been removed from public view by Cyan, Aug 20, 2014, Reason: offtopic.
    Aug 20, 2014
  5. the_randomizer
    This message by the_randomizer has been removed from public view by Cyan, Aug 20, 2014, Reason: offtopic.
    Aug 20, 2014
  6. dontay0100
    This message by dontay0100 has been removed from public view by Cyan, Aug 20, 2014, Reason: offtopic.
    Aug 20, 2014
  7. the_randomizer
    This message by the_randomizer has been removed from public view by Cyan, Aug 20, 2014, Reason: offtopic.
    Aug 20, 2014
  8. spinal_cord

    spinal_cord Knows his stuff

    Member
    3,039
    610
    Jul 21, 2007
    somewhere
    Out of curiosity, will this run on smealums future hbc?
     
  9. dontay0100

    dontay0100 GBAtemp Fan

    Member
    483
    117
    Mar 18, 2007
    United States
    Which is why I love hackers.. I cant wait for homebrew.. I have some Zelda games I need to beat that I don't want to play on tv cuz my gf is so mean when a ninja try to game lol
     
  10. gamesquest1
    This message by gamesquest1 has been removed from public view by Cyan, Aug 20, 2014, Reason: offtopic.
    Aug 20, 2014
  11. StapleButter
    OP

    StapleButter 'New Member' registered since 2009. Fuck yea.

    Member
    776
    1,485
    Dec 5, 2009
    France
    Blarg, enough piracy debate please.

    Also, I don't care about the VC and still wouldn't care even if it emulated SNES games. The VC basically just plays the game it is set to play, without any possible configuration or extra features. No savestates, no importing/exporting savefiles unless you're able to break some encryption/verification scheme, no fancy scaling options, no cheats, and so on...

    Oh and homebrew emulators can load any ROM, not just one bundled ROM.


    I added support for PPU modes 0-4. With the syscore trick, I'm able to properly emulate the SPC700, meaning more games will run. No sound for now though.

    I'll release it in a few days :)
     
  12. DaniPoo

    DaniPoo GBAtemp Fan

    Member
    360
    101
    Jan 2, 2013
    I touched the subject before about rendering 2d layers in 3D.
    It can be done bu it requires some stretching in order to look good and there are some basic rules to be followed.

    1. In order to get background layers to fill up the "screen" you need to stretch them a littleand only show some of the picture to each eye.
    If you dont stretch there will be an "border" on the sides.

    2. The layers are different from game to game so different stretching and order needs to be applied to each game.

    3. dont try to make a popout effect from a 2D layer it will just hurt your eye as this effect works best for small objects in the middle of the screen and not very good near the edges of the screen.

    I have made some 3D pictures of how it could look if anyone is interested
     
  13. Dartz150

    Dartz150 GBATemp Official Lolicon Onii-chan™

    Member
    1,410
    849
    May 5, 2010
    Mexico
    On a Strange Journey
    Hahaha of course everyone is interested :)

    I'm giving this homebrew project high hopes, it sounds ans looks so amazing this far.
     
  14. LWares87

    LWares87 GBAtemp Advanced Maniac

    Member
    1,703
    182
    Oct 19, 2008
    I've seriously been looking forward to this emulator for a while now and i personally can't wait to use it on my 3DS.

    Keep up the good work, StapleButter! :)
     
  15. DaniPoo

    DaniPoo GBAtemp Fan

    Member
    360
    101
    Jan 2, 2013
  16. spinal_cord

    spinal_cord Knows his stuff

    Member
    3,039
    610
    Jul 21, 2007
    somewhere
    Please, not the stretching argument again. Stretching lo-res gfx always looks bad, no matter what the reason. A 4 pixel border will not be noticeable much, especially when the SNES screen is smaller than the 3DS screen anyway. I would rather have the stretching completely optional, just as blur effects would be on larger screen devices.
     
    SignZ likes this.
  17. DiscostewSM

    DiscostewSM GBAtemp Guru

    Member
    5,071
    2,705
    Feb 10, 2009
    United States
    Sacramento, California
    Here's a question, somewhat off-topic by itself, but sorta on-topic with this. When "3D" is enabled, does it force the parallax barrier to activate, or can you de/activate that separately? Just wondering because of the potential use of the top-screen for some semi-hi-res modes and even Mode 7, having 2 buffers that are 256 pixels wide mixed together to make it appear as 512 pixels wide (though it would still be 224p/240p/etc by nature).
     
  18. the_randomizer

    the_randomizer The Temp's official fox whisperer

    Member
    23,872
    11,613
    Apr 29, 2011
    United States
    Dr. Wahwee's castle

    Awesome work, man, keep it up :) Once sound is up and running, will ADSR, Gaussian interpolation (or Hermite), etc be implemented?
     
  19. StapleButter
    OP

    StapleButter 'New Member' registered since 2009. Fuck yea.

    Member
    776
    1,485
    Dec 5, 2009
    France
    ADSR is already part of the lolSnes/SNemulDS DSP, so it'll be in.

    Gaussian interpolation, noise and echo should be feasible easily, even with only 30% of the syscore's power.


    Sound will not be in until we figure out how to make the 3DS play sound, though. We have the mostly-unknown DSP service (which apparently requires obtaining a signed DSP firmware binary somehow), and the CSND service we can't access because it's not listed in the service access list in gw_workaround.rsf.

    In theory, the srv:Pm hole could make up for that, atleast on firmwares under 7.0.0-13. In practice, I can't manage to get a handle to srv:Pm. svc_connectToPort() returns 'not found' and srv_getServiceHandle() returns 'access denied'. I tried 'srv:Pm', 'srv::Pm', 'srv:PM' and 'srv::PM', same results.
     
    the_randomizer likes this.
  20. DaniPoo

    DaniPoo GBAtemp Fan

    Member
    360
    101
    Jan 2, 2013
    hey spinal_cord, Have you even seen the border that im talking about?
    It's really painfull to look at as it's only visible to one eye on each side.

    I dont anderstand what so horrible about stretching the background layers just a few pixels in order to prevent that and get more consistant graphics.
    But if you want I could provide you with a picture of what it looks like streched and also unstretched so that you can judge for yourselves
     
  21. spinal_cord

    spinal_cord Knows his stuff

    Member
    3,039
    610
    Jul 21, 2007
    somewhere

    I would rather clip the edges without stretching, if they are too irritating to look at. From the very beginning of emulation I have had a problem with stretching screens, it isn't just a SNES/DS/3DS thing. Stretching is usually done badly, resulting in misshapen pixels or blurry images, both of which I find infinitely more painful to look at than a 1:1 ratio screen. Then of course there's the 4:3 ratio argument, which I couldn't care less about because you need a display many times larger than the original image to prevent unevenly stretched pixels. So, basically, given the option, I'd rather have 1:1 pixel perfect over ANY of the alternatives.
     
  22. BejittoSSJ5

    BejittoSSJ5 Advanced Member

    Newcomer
    53
    24
    Jul 30, 2014
    United States
    Liked for using DBZ : Hyper Dimension, in all seriousness though this idea could work very well, almost naturally since you are correct about the SNES using seperate layers (5 if I'm correct) in games.
     
  23. spinal_cord

    spinal_cord Knows his stuff

    Member
    3,039
    610
    Jul 21, 2007
    somewhere
    gamesquest1 likes this.
  24. gamesquest1

    gamesquest1 Nabnut

    Member
    GBAtemp Patron
    gamesquest1 is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    14,222
    9,591
    Sep 23, 2013
    they look very cool....hopefully 3d does get added to this emulator at some point....yeah i know it wont look good on all games, but due to the nature of how the snes games are displayed in layers its pretty practical to do and doesn't look too shabby either
     
  25. Gadorach

    Gadorach Electronics Engineering Technologist

    Member
    961
    699
    Jan 22, 2014
    Canada
    Canada
    Those are great examples, and if we could get that effect, that would be really nice.You don't need a 3D headset or special glasses to view them by the way. I just looked at them by de-focusing my eyes to a crossed-eye view and merging the images, then locking focus on the image in a combined state. I recommend taking a look, as that's basically what I expect the games will look like in 3D when the feature is ready, and it looks damn good.
     
  26. RowanDDR

    RowanDDR SNES Lover

    Member
    223
    86
    Apr 13, 2006
    London
    Anyone kind enough to share a binary?
     
  27. StapleButter
    OP

    StapleButter 'New Member' registered since 2009. Fuck yea.

    Member
    776
    1,485
    Dec 5, 2009
    France
    There's a detail, though: there's not just one 'sprite layer'. Sprites have BG-relative priorities.

    Then the BG layers can also have tiles with 'high' priority.


    Basically, SNES graphics aren't as simple as just 5 layers. This model would be closer to that of the DS.



    Rowan: no, no binary yet. Release is coming very soon, though.
     
Thread Status:
Not open for further replies.