Views: 1,609,242 | Main | Rules/FAQ | Memberlist | Active users | Last posts | Calendar | Stats | Online users | Search | 11-21-24 11:48 AM |
Guest: |
0 users reading blargSnes -- SNES emulator for the 3DS | 1 bot |
Main - Homebrew projects - blargSnes -- SNES emulator for the 3DS | Hide post layouts | New reply |
StapleButter |
| ||
Member blarg Level: 30 Posts: 5/184 EXP: 151357 Next: 14512 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2558 days ago |
What the title says. If you have seen lolSnes, you know what to expect. This project even reuses a lot of lolSnes's code.
Like everything else regarding 3DS homebrew, this is in early stages. Builds from EmuCR are NOT SUPPORTED. You will not receive help if you have trouble with one of these builds. Screenshots Wikitemp BlargSnes Page on Wiki Compatibility list Downloads Version 1.3b: https://blargsnes.kuribo64.net/download/blargSnes_1.3b.zip Version 1.3: https://kuribo64.net/get.php?id=fYRTHLeS0pR3DXFw Older: (unsupported) Version 1.2: https://blargsnes.kuribo64.net/download/blargSnes_1.2.zip Unofficial 1.19: https://mega.co.nz/#!LJpC0ASK!Jke6Snsfs2sOkQyxfFUC1alGvH6zt9b6tjwdxVKwmm8 Version 1.1: https://kuribo64.net/get.php?id=ccoTzGtwgVkh42b4 Version 1.0: https://kuribo64.net/get.php?id=72nkdEkneiIQqlAW Source: https://github.com/StapleButter/blargSnes Website: https://blargsnes.kuribo64.net/ This isn't the cleanest code ever, but it can serve as a handy reference for 3DS homebrew development (or SNES emulation, although I wouldn't recommend it ). Custom borders blargSNES custom border repository Custom border submission thread at GBAtemp Changelog Version 1.3: * Usage of geometry shaders and other speedups to rendering * Hardware renderer: offset-per-tile, hi-res modes, and more fixes by DiscostewSM * Much better sound quality, support for noise, echo and pitch modulation (thanks DiscostewSM again) * Two added scaling modes: 4:3 and cropped 4:3 * Better open-bus emulation, and ability to execute code in open-bus regions (fixes Home Alone) * Overall more accurate timings, IRQ fixes, etc * ROM selector is no longer locked to the /snes folder * the usual forgotten novelties, surprise Version 1.2: * Brand new hardware-accelerated renderer * Scaling support * Exit button (mainly for use with the Homebrew Launcher) * Emulation fixes (namely, huge 'next EXP' in Earthbound is fixed) * Support for the 256x239 mode * Proper PAL support (actually uses PAL timings) * Tries to prevent GPU freezes * Synchronous SPC700 (fixes issues but also causes a little slowdown) * As usual, more crap I forgot about. Hah. Version 1.1: * No more garbled/blank screens or freezes when pressing Home or closing/reopening the 3DS or playing with the 3D slider * Ability to run a new game without restarting blargSnes * Screenshot function * Support for external borders * Support for backgrounds with 16x16 tiles. Super Bomberman games are finally playable. * Brightness, color math (blending) and windows added. Many games look nicer this way. * Several PPU speedups * Speedhacking disabled (it was error-prone, not that efficient, and broke HDMA) * Replaced forced 1/2 frameskip with automatic frameskipper (isn't perfect, though) * More stable display (although tearing still occurs when frameskipping), VSync * More things I forgot about. Surprise! What's in the zip * blargSnes.3ds -- 3DS ROM. Useful for Gateway. * blargSnes.cia -- Installable version * blargSnes folder -- files for use with the Homebrew Launcher * blargSnes.elf -- ELF file. May be useful for alternate homebrew loaders. Provided for the sake of completeness. How to use You need a way to run ARM11 userland homebrew on your 3DS. Gateway Copy blargSnes.3ds to the Gateway's MicroSD. Due to limitations, you will not get sound if you use this method. Homebrew Launcher / Ninjhax Copy the blargSnes folder into the 3ds folder on your SD card. Due to limitations, you will not get sound if you use this method on a New 3DS. 'Old' 3DS users will get sound. Also note that sleep mode (closing your 3DS) and the Home button don't work when using this method. CIA The method for using the CIA version will not be covered here because installation of CIA files involves warez. However, the CIA version gives you the best of all worlds-- sound AND working sleep mode on all systems, provided you're able to install and run it. You will need either a Gateway or a CFW to be able to run unsigned CIA files. The normal Home menu will show them but will refuse to launch them. You're on your own for getting SNES ROMs. On the 3DS's SD card (not the Gateway MicroSD), create a folder named 'snes' and put your SNES ROMs in there. In the same folder, you can also place savegames. They must have the same name as their corresponding ROM, and have a .srm extension. With that done, start blargSnes, and you see a ROM selection menu. Select your ROM and press A (or B). See what happens. You can pause gameplay by tapping the touchscreen. When paused, resume by pressing A or tapping the touchscreen again. You can also select another game by pressing Select, or open the configuration screen by pressing Start, or take a screenshot by pressing both L and R (screenshot is saved to your SD card in .bmp format, includes both screens). The configuration screen * Hardware renderer: this enables the hardware-accelerated renderer. It is faster than the software renderer but also less accurate in some cases. * Scaling: provides some scaling modes for the video output. How to make a custom border Your border image needs to be exactly 400x240. The SNES video output takes place from coordinates 72,8, in a 256x244 rectangle. Anything in this region of your border image will not be visible. When you're done, save the file at the root of your SD card, under the name blargSnesBorder.bmp. Make sure it is saved as a 24-bit bitmap. If you have a border you're particularly proud of, you're welcome to post it in this thread Supported features * Software and hardware renderers * DMA (with faster paths for VRAM/CGRAM/OAM), HDMA * SPC700 * Sound (when possible) * SRAM with auto-saving * Joypad for player 1 (circle pad also works) * Catgirls Future features * Sound using the 3DS DSP * Expansion chips. Star Fox in 3D, anyone? Credits * 3dbrew and all the people who made 3DS homebrew possible * DiscostewSM for all his coding help * anyone who helped make lolSnes work * Bond697 and Normmatt for how to use the 3DS syscore * smealum for ctrulib and for paving the way to the PICA200 * Martin Korth for the nice SNES documentation and no$sns's debugger * The authors of SNemulDS for their DSP emulation code * if you feel I forgot your name here, let me know Enjoy ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
StapleButter |
| ||
Member blarg Level: 30 Posts: 25/184 EXP: 151357 Next: 14512 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2558 days ago |
Version 1.2 is out. Will update this (and the website) whenever I'm not lazy. ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
StapleButter |
| ||
Member blarg Level: 30 Posts: 50/184 EXP: 151357 Next: 14512 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2558 days ago |
1.3 is released, see GBAtemp
meh, I really need to update all that junk ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
StapleButter |
| ||
Member blarg Level: 30 Posts: 71/184 EXP: 151357 Next: 14512 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2558 days ago |
It's all happening here now.
also I really need to update the blargSNES page, blarg ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
hippy dave |
| ||
Newcomer Normal user Level: 3 Posts: 1/1 EXP: 58 Next: 70 Since: 05-21-15 Last post: 3471 days ago Last view: 2977 days ago |
Urrrm can I subscribe to the thread?
Looking forward to seeing where this goes |
Daggdroppen |
| ||
Newcomer Normal user Level: 6 Posts: 3/5 EXP: 675 Next: 232 Since: 11-21-14 Last post: 3207 days ago Last view: 3625 days ago |
Cool. This will keep the trolls away, I guess |
Discostew |
| ||
Member Normal user Level: 17 Posts: 1/51 EXP: 21459 Next: 3284 Since: 05-21-15 Last post: 3091 days ago Last view: 2467 days ago |
Posted by Daggdroppen Oh, they'll come, but they won't be able to stick around should they do that. |
Da_GPer |
| ||
Newcomer Normal user Level: 4 Posts: 1/2 EXP: 166 Next: 113 Since: 05-22-15 Last post: 3470 days ago Last view: 3228 days ago |
I hope this site stays clean and professional and doesnt fall to the pits full of dumb kids like GBATemp has gone to.
|
Daggdroppen |
| ||
Newcomer Normal user Level: 6 Posts: 4/5 EXP: 675 Next: 232 Since: 11-21-14 Last post: 3207 days ago Last view: 3625 days ago |
Posted by Da_GPer OT: gbatemp has actually always been like that. Atleast since 2004 when I entered the GBA scene ^^ Pocketheaven was the greatest site at that time. Pocketheaven is unfortunately dead nowadays. Hopefully this site can be something like Pocketheaven was 10 years ago =) Any news on blargSNES? Are there any notable differences between 3dsx and cia version? I have only played with the 3dsx version. But with Pasta it would be possible to install blargSNES as an CIA.. Thanx for all fantastic work on blargSNES you have done so far <3 |
StapleButter |
| ||
Member blarg Level: 30 Posts: 75/184 EXP: 151357 Next: 14512 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2558 days ago |
Posted by Da_GPer It will stay clean. You have my guarantee. Posted by Daggdroppen They are identical. Different file formats, but the code inside is the same. ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
Da_GPer |
| ||
Newcomer Normal user Level: 4 Posts: 2/2 EXP: 166 Next: 113 Since: 05-22-15 Last post: 3470 days ago Last view: 3228 days ago |
Posted by StapleButter Good. While I dont know how to code if my life depended on it, I do like to help by beta testing and finding bugs and giving out ways to improve the project. I consider it as my way of doing my part to the homebrew scene. On other sites, I never had any problems and I have been considered appreciated for all the help I have done, even being thanked in a few text files that came with some projects, like the C64 emulator for the Wii, yet on GBATemp, I am usually ignored or put aside as annoying. I hope that I can be a useful part of your boards and for any projects that end up appearing on here as well. By the way, I have used and love your SNES emulator. I consider it and the Game Boy emulator, Game Yob, to be the best emulators on the 3DS. All the emulator needs to be perfect is stuff like SuperFX and the ability to play games like Super Mario RPG, and the ability to add cheat codes like Game Genie or Pro Action Replay and I think it be considered done. Congrads on a job well done. |
profi200 |
| ||
Member Who knows? Level: 19 Posts: 2/70 EXP: 34507 Next: 1270 Since: 05-21-15 From: Germany Last post: 2992 days ago Last view: 2860 days ago |
As always, i offer help by getting exception dumps but i think blargSnes is so stable only Nintendo can beat it |
geekboy1011 |
| ||
Newcomer Normal user Level: 3 Posts: 1/1 EXP: 58 Next: 70 Since: 05-22-15 Last post: 3470 days ago Last view: 3377 days ago |
Yay a not spammy forum for an awesome project/platform~
Regardless awesome work so far i hope to see plenty more happening. I have been attempting to get a 3ds environment setup to try to play with somethings my self. Maybe something will come of it EDIT: Welp setting up the enviroment and getting it to compile was a lot easier then I thought. I am quite impressed. |
LWares87 |
| ||
The 'Wise' Merchant Level: 3 Posts: 1/1 EXP: 58 Next: 70 Since: 05-22-15 From: Colchester, England Last post: 3470 days ago Last view: 3470 days ago |
Despite it's current flaws with game compatibility, this is a good emulator and i hope that it stays that way with time and patience. ____________________ LWares87 |
dark_samus |
| ||
Newcomer Normal user Level: 7 Posts: 1/8 EXP: 1330 Next: 118 Since: 06-02-15 Last post: 2996 days ago Last view: 2796 days ago |
Keep up the good work on this, chrono trigger finally starts and plays up until the court scene and then the screen goes black when the cutscene is over and it hangs.... Also the few super metroid hacks I've tried have issues where they hang at either a black screen or other places, but still awesome work can't wait until I can play all of my snes games |
VinsCool |
| ||
Newcomer Homebrew Supporter Level: 6 Posts: 4/6 EXP: 865 Next: 42 Since: 05-21-15 From: Canada Last post: 3410 days ago Last view: 3348 days ago |
How good is the improvement with the hardware assisted mode7? ____________________ ~ I like to read people's bullshit, always funny. Anti-piracy, homebrew and legal stuff only. Knows some C, but very ignorant to real hacking stuff. Awaiting KARL3DS |
StapleButter |
| ||
Member blarg Level: 30 Posts: 79/184 EXP: 151357 Next: 14512 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2558 days ago |
I haven't tested it yet, can't tell.
There are still a few things we need to tackle before we can release 1.4, btw. ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
StapleButter |
| ||
Member blarg Level: 30 Posts: 82/184 EXP: 151357 Next: 14512 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2558 days ago |
note to self: there's something wrong with the threaded DSP system
it buffers writes to replay them later, but... what about reads? ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
Discostew |
| ||
Member Normal user Level: 17 Posts: 2/51 EXP: 21459 Next: 3284 Since: 05-21-15 Last post: 3091 days ago Last view: 2467 days ago |
Posted by VinsCool It's not a full replacement for software-rendered Mode7, but it gets used when the current settings allow it to be done faster than software would. To put into perspective, software-rendered Mode7 has to access what tile and pixel-color in that tile for each pixel on-screen, so it has to access tiles 256 times plus the palette 256 times for each row. It's constant because it's based on screen pixels, so no matter if zoomed in, zoomed out, rotated, or put into a perspective view, it has to do the same amount of work per scanline for every scanline used. Hardware-rendered Mode7 is based on tiles, so because the layer could be zoomed in or out, the number of tiles it has to render is variable, not constant. In perspective view, it has to do it per scanline, rather than a group of scanlines together. So, to summarize, it depends on the settings set for Mode7. It may do full software, or full hardware, or even a mix of the two within the same frame. Posted by StapleButter That was one thing I was gonna look into after I tackled the possible improvement to tile decoding. |
StapleButter |
| ||
Member blarg Level: 30 Posts: 83/184 EXP: 151357 Next: 14512 Since: 10-27-14 From: France Last post: 2648 days ago Last view: 2558 days ago |
The main issue is that unlike writes, reads can't be 'applied later' as it needs the return value immediately. ____________________ blargSNES -- SNES emu for 3DS More cool stuff |
Main - Homebrew projects - blargSnes -- SNES emulator for the 3DS | Hide post layouts | New reply |
Page rendered in 0.073 seconds. (2048KB of memory used) MySQL - queries: 26, rows: 101/101, time: 0.014 seconds. Acmlmboard 2.064 (2018-07-20) © 2005-2008 Acmlm, Xkeeper, blackhole89 et al. |