r/3dshomebrew • • 13d ago

General Help "Can this be ported to the 3DS?" Yes, but listen.

324 Upvotes

To an extent, yes, this magical game you hold a copy of can be ported to the 3DS. I see a lot of these posts on here and want to clear some of the air coming from the decomps side.

  1. Yes, it can run on the 3DS, but that doesn't mean that someone usually wants to make it. Mario Sunshine is far more likely to get a port than Tom Clancy's Splinter Cell. Decompiling, recompiling, and porting are all not necessarily easy tasks.
  2. Whatever your stance on AI, you can certainly try to use that to make a software/hardware wrapper or even reverse engineer the game entirely. Just, don't be upset when it crashes, breaks something important, or makes people upset.
  3. Even with the Melee 3DS port, certain cuts still have to be made to get things playable. The older the game, the less likely this is, but still.
  4. The 3DS is a 15 year old piece of hardware. If the 3DS doesn't already have the available resources, you're going to be slashing things down hard. This is a console with 10MB of VRAM and 256MB of RAM on the New models. You're not squishing down Cyberpunk.
  5. Just because a software is decompiled doesn't mean it's plug and play to the 3DS. You still need to write a container. Instructions written for that console's hardware need to be translated to the 3DS.

There are ways to learn how to reverse engineer software and start linking functions together. Elitists will tell you it's not something you can pick up overnight so you should give up. It's not overnight, but you can learn coding concepts that will make things easier as time goes on. Expect it to take quite a bit of time.

If your thoughts now drift to AI, just be warned that it absolutely will make a mistake you need to correct, and if you don't have the right knowledge, something is gonna be severely broken later. Not advocating for or against, but I just want to put this out here.

If you want to start exploring reverse engineering, start with a small, manageable project. If you have a copy of a Game Boy game laying around, start there. It's small and relatively manageable, plus there's plenty of decompilations out there already so you can see where something may have gone wrong. Just be warned games like Pokemon are written entirely in GBZ80 Assembly.


r/3dshomebrew • • 2h ago

New Homebrew I ported Banjo Kazooie to 3DS. Somebody had to do it.

Thumbnail github.com
46 Upvotes

r/3dshomebrew • • 17m ago

New Homebrew Well, look who's back… 🍩

• Upvotes

Compatible with Old & New 3DS

I put together this little trailer to build some hype—I figured it deserved a proper introduction to the 3DS :)

It’s been a long week and a very long weekend, but here it is: The Simpsons: Hit & Run on Nintendo 3DS, with a focus on the original 3DS and 2DS. New 3DS owners can join in too.

The bottom screen now has touch menu controls, a live gameplay map, and the original newspaper loading artwork. Gameplay runs at the native 400×240 resolution.

I’ve been working on rendering, memory use, controls, and cinematics for the older hardware. Huge credit to the original game’s developers, the people behind the Vita port, and x2apic, whose New 3DS port I built on. The passion they put into this is incredible. I’m doing my best to build on their work.

This is an early test release. Performance varies, and busy areas still fall below 30 FPS. There’s plenty left to improve, but I wanted to share the progress and get feedback from people using different consoles.

Tech note: So the main bottleneck on the OG 3DS is the CPU. It has two cores, but the second is primarily reserved for system tasks, which limits how games can use it. To give you an idea of how much the CPU was struggling, physics alone took around 16 ms—almost half the entire frame budget for 30 FPS. Rendering took up pretty much the other half. I’ve reduced repeated work in rendering and collision processing, and those improvements are included in this release.

I’m also experimenting with moving work onto the second core, so far the coordination overhead has outweighed the savings, so those paths remain disabled.

AI helped with profiling and running thousands of test cases that would have been impractical for me to perform manually, but it also made some serious mistakes when it came to multithreading. It’s been useful, but its suggestions still need careful review and testing on real hardware.

Source, downloads and installation instructions on GitHub

If you give it a try, I’d really appreciate it if you shared your console model, where performance drops, and any bugs you find.


r/3dshomebrew • • 13h ago

New Homebrew Sound3DS: my first homebrew! A SoundCloud & local music player for 3DS/2DS, plus a PC app to send songs over Wi-Fi with a QR code

Thumbnail
gallery
114 Upvotes

Sound3DS es un reproductor de música para 3DS/2DS. Puedes buscar y reproducir en streaming pistas completas de SoundCloud, descargarlas a tu tarjeta SD , y navegar tu música local en un modo de flujo de carátulas estilo iPod ordenado por álbum. También tiene un visualizador, dos temas, reproducción con la tapa cerrada y un pequeño cubito mascota que baila al ritmo de tu música.

Copiar música a la tarjeta SD es un dolor, así que también hice Sound3DS Share, una app para PC en Windows y Linux. Elige tus canciones, corrige nombres de álbumes o carátulas, dale a "Generate QR" y escanéalo con la app Sound3DS QR en tu consola. Las canciones se descargan por Wi‑Fi, ya ordenadas por álbum.

Probado en Old 2DS, New 3DS XL y New 2DS XL (Luma3DS). ¡Se agradecen reportes!

Ambas apps se instalan escaneando un código QR con FBI (Remote Install → Scan QR Code). Todo está en los READMEs:  https://github.com/PeppiDev/sound3ds   https://github.com/PeppiDev/sound3ds-share

Este proyecto está vibecodificado: el código lo escribió un asistente de IA (Claude). Yo se me ocurrieron las ideas, dirigí las funciones y el diseño, y probé cada versión en hardware real.

Estoy viendo la posibilidad de agregar otros servicios de streaming, como YouTube Music.

Comentarios, reportes de bugs e ideas son bienvenidos. ¡Gracias por echarle un vistazo! 🙌


r/3dshomebrew • • 13h ago

New Homebrew Stardew3DS Menu and Map Test

37 Upvotes

I have seen the recent post of Stardew Valley 3DS ports, figured I would post my version. This is the result of about two years of research. The menus are just flair, although I did allocate time to incorporate the easter eggs. Maps (with animations) load, warps work (I forgot to show door and building warps, sorry). The assets are stream from SD so hopefully some asset mods will be supported in the future. I’m currently working on the farm buildings as well as map overlays (mainly water effects), then player interactions will come. My main goal is to be as faithful to the original as I can. I cannot promise a release window as I do work full time and initially this was a hobby project for learning. I am looking to release source, as soon as I finish the asset extraction process. Thank you for your time. Let me know of what milestone you are all looking forward to the most. AI Disclosure: AI was used as a means to convert the massive amount of textures to 3DS natives, to generate the system monitor files, and correct some wonkiness that I couldn’t sort out with the menu panning. I also may use it to figure out why it stutters in an emulator but not on actual hardware. 🙃

Update: To address a quote that a single sceptical user is leaning on, I will release the 3dsx…. but without assets it will be useless. So there will be an additional step to copy your game files to the SD card. If you can follow a tutorial then you will be able to play the demo without issue. A CIA file on the other hand can access the SD card but it is much better for installation to bundle the assets inside through RomFS, and I am not releasing copyrighted assets. So I see no point in ever having a CIA release.


r/3dshomebrew • • 14h ago

New Homebrew I ported the scratch editor to the 3DS!

16 Upvotes

After a lot of time, i ported the scratch editor to the 3DS!

You can actually save the projects as sb3 and run them on the Scratch website/app!

This port contains  all of the blocks from scratch 1.4, + some clone and PicoBoard blocks, but all projects save as sb3.

This is not a Scratch Player.

Although you can save projects as .sb3, you can not open external files on the 3DS.

I am looking for feedback, specially from old 3ds users, but any feedback would be apreciated :)

(This means that after you save a project, you can not open the projects again on the 3DS Editor)

(Sorry for bad english/typos, english is not my native language :P)

We are also working on a discord server!


r/3dshomebrew • • 18h ago

New Homebrew Pixel Dungeon 3DS v1.0-alpha

Thumbnail
gallery
31 Upvotes

https://github.com/deathbygin/pixeldungeon-3ds

This is a port of Pixel Dungeon for the 3DS.

Works for both Old and New 3DS.

As an alpha release, bugs and inconsistencies are probable. Crashes will happen. Please use the Issues tab on Github to report these so that I can resolve them quickly.

DISCLAIMER: This app was developed with AI-assistance. Mainly, AI was used to translate Java functions to C++. Use this app at your own risk and do not post this code anywhere that AI-generated code is not allowed.


r/3dshomebrew • • 2h ago

General Help Hshop not working

Post image
0 Upvotes

Everytime I try to download smth on Hshop it gets to 99% then i get this weird error message


r/3dshomebrew • • 2h ago

General Help I need help to recover my Fantasy Life save file !

Thumbnail
1 Upvotes

r/3dshomebrew • • 4h ago

General Help Trouble g3tting downloaded files to show up on home screen

Thumbnail
1 Upvotes

r/3dshomebrew • • 4h ago

General Help How good is love 2D for 3ds?

1 Upvotes

I want to port my game to 3ds and i see that love 2D is supported on 3ds, how well does it run and how difficult is it to code for 3ds on love 2D?


r/3dshomebrew • • 1d ago

New Homebrew GothicN3DS is now in the beta stage(+cia dummy).Gothic 1 is somewhat playable. Looking for feedback

Post image
35 Upvotes

Repository:https://github.com/ponuno/GothicN3DS

There is still a lot of work and testing needed, but I managed to enter Chapter 2 without major issues. All the basic mechanics are here

Gothic 2 is also thereoretically is playable ,but I did not test it all.

So far, I think I have managed to fully optimize Gothic 1 and gotten rid of all the major stutters. 30 fps and 60 fps modes included.(If you are using 60 fps choose Free up to 60 in advanced setting.Forgot to change it) Stereo 3D is available. EN,PL,DE,RU language support(Only interface for now, I'll look how baker handles game localization later)

Please report all the issues:

-Performance

-Controls

-Graphical glitches

-Bugged quests

-NPC behaviour


r/3dshomebrew • • 11h ago

General Help Sd card error card deleted all homebrew apps+games

2 Upvotes

Hey, so basically my sd card freaked out literally all homebrew apps are deleted (luma, checkpoint, ect) Please Help

So I was downloading the botw demake on my modded 3ds through fbi (download take several hours). Got an error saying it didn't download and got kicked back to home menu. From there I got an sd card error saying that stuff could not be read properly and had to power off console. On turning it back on, my custom background loaded in fine, but literally everything related to homebrew and everything bought from Hshop (most of my games) are gone.

I've tried looking through the files (nothing looks wrong), and tried re-installing sd card, but nothing's bringing everything back. If anyone knows how to fix this, your help would be great.


r/3dshomebrew • • 5h ago

General Help FTL, The Messenger, or Enter the Gungeon for 3ds?

0 Upvotes

Has any of these titles been ported to 3ds. yes they are the most underrated titles ever but I feel like they would all work really nicely with the dual screen. Specifically also because these are 2d related titles. would it be possible to inject a ps1 port? are ps1 port injects possible?

PS (I know just because all titles appear 2d does not automatically mean they are not 3d

This is my first post so please forgive me if I made an mistakes. This is also to help me get my bearings on reddit

https://www.youtube.com/watch?v=J3kPMRA_JYE

I'm guessing the 3ds can't hold bullet hells as well. is there any good bullet hells out there?


r/3dshomebrew • • 1d ago

New Homebrew Diablo II: Lord of Destruction v1.14d on n3DS

30 Upvotes
First run

Inspired by the D2Vita and WinVita ( https://github.com/Franckrst/D2Vita , https://github.com/Franckrst/WinVita ) projects. I was curious to understand if despite the memory and cpu pressure, we could run Diablo 2 LoD on the New 3DS. Well, It does run!

This is more of a proof-of-concept rather than a fully tested and optimised port - there are heavy frame dips, but I welcome those who are interested to try it out and provide feedback.

Project Github page: https://github.com/exsilium/3ds-d2 to build your own, or fetch a ready built cia.

This project heavily relies on AI tools and workflows - if you happen to be allergic to those, I recommend you to stay away.

Cheers!


r/3dshomebrew • • 1d ago

New Homebrew FBI QR/URL Download Speeds Improved — libcurl Transport (310–535 KB/s on Real Hardware)

Post image
106 Upvotes

 

 

TL;DR: FBI's slow QR/URL installs weren't a Wi-Fi problem. The bottleneck was the 3DS's HTTPC system service. I switched URL downloads to in-process libcurl and measured 310+ KB/s from GitHub and 535 KB/s downloading a 218 MB CIA from Archive.org, compared to the ~110 KB/s I was getting before.

Links

Also available: FBI Reloaded 1.5.0 with the libcurl download transport integrated: https://github.com/colbyshores/FBI-Reloaded/releases/tag/1.5.0

If you're already using FBI Reloaded, you can grab version 1.5.0 directly from the releases page. The CIA installs over your existing FBI Reloaded installation, just like any other Reloaded release. There's also a .3dsx version available for launching through the Homebrew Launcher.

I tested the CIA on actual hardware, and it installs and works as expected.

A note on installing it: This build uses a different Title ID from the official FBI, so it installs as a separate application rather than replacing your existing copy. You can keep both installed, and you don't need to uninstall anything first. The new entry appears as FBI curl on the HOME menu.

You can remove FBI curl through Title Management without affecting your original FBI installation. I'd recommend keeping the 3DSX version available as a precaution while installing the CIA, so you still have a way to launch FBI through the Homebrew Launcher if something goes wrong.

The banner animation issue from my initial testing has also been fixed.

What was actually wrong?

The thing that got me looking into this was that the same console could handle FTP transfers at well over 1 MB/s. If Wi-Fi itself were the bottleneck, I wouldn't expect to see that kind of throughput.

FBI was using the 3DS's HTTPC system service for URL installs, with HTTPS also relying on the system's SSL infrastructure. That meant the download path was going through system services instead of handling the connection directly inside the application.

I started measuring both download paths on actual hardware, and the results pointed toward a bottleneck in the original transport. The ~110 KB/s ceiling was also in the same general ballpark as the download speeds people have reported for the eShop.

How I tested it

Rather than just make changes and see whether downloads felt faster, I built an automated testing loop that runs directly on the 3DS.

A small chain-loading stub pushes a build over the network, launches it, measures a download, writes the results to SD, and starts the next run. Each run tests one download, counts callbacks, tracks SD writes during the transfer, and has a 60-second timeout.

This let me test both download paths back-to-back against the same URL without manually intervening between runs.

After roughly a dozen instrumented runs, I narrowed the issues down to three areas:

1. The HTTPC service

The original URL download path was hitting a ceiling of around 110 KB/s. Moving the transfer into the application with libcurl removed that particular bottleneck.

2. Socket buffer sizes

Requesting socket buffers of 64 KB or larger caused the TLS connection to silently disconnect during the handshake/exchange. I tested buffer sizes from 2 KB to 256 KB on actual hardware, and 48 KB turned out to be the best-performing value in the working range.

3. TLS entropy initialization

The 3DS build of mbedTLS gets its randomness through an SSI session. Initializing SSI inside the application conflicts with the SSL state used for HTTPS, so I changed the entropy source to the PS service instead.

What changed?

The PR switches URL downloads to libcurl, allowing the application to handle the socket and TLS decryption directly instead of routing the download through HTTPC.

The original HTTPC implementation remains available as a fallback if libcurl fails before delivering any data. That's important because once part of a CIA has been passed to the installer, you can't safely restart the download in place as if nothing happened.

Switching the transport also exposed some existing correctness issues. For example, chunked HTTP responses weren't being installed correctly before this change, so I fixed that as well.

The result is a faster URL installation path, with the original implementation still available as a fallback where it's safe to use it.

Acknowledgments

I genuinely don't want to take anything away from the developer of 3dsDL. Their project helped point me in the right direction, and I'd actually prefer to see this work incorporated into their project if it makes sense.

My goal here was to fix the download bottleneck in FBI. I found a way to improve throughput, tested it on actual hardware, and wanted to share the results with the community. I'm not trying to compete with anyone or diminish what they've done.

AI disclosure

This was a human-in-the-loop development effort. I used an AI coding agent (Kimi K3 through the Kilo agent harness) to iteratively develop the code changes, automated test harness, and statistical profiling.

I handled the console-side testing: pushing builds, launching tests, scanning QR codes, and evaluating the results on actual hardware. Each hypothesis was tested against measured results rather than simply accepting whatever the model suggested.

The performance numbers above come from logged hardware tests, not AI-generated estimates.


r/3dshomebrew • • 1d ago

New Homebrew If ykyk

Thumbnail
gallery
294 Upvotes

Attempting to make a pixel perfect 3DS port of HeartGold. The entire vanilla game, with an extended view of the overworld and of menus/battles that fill the screens. No plans on adding Voxel3D however, since imo the 3DS screens are too low res to make Voxel3D look good. But if anyone else is working on this or has any tips lmk, this is my first time attempting a full port like this. The most I’ve done so far are Gen1Recomp mods.


r/3dshomebrew • • 1d ago

New Homebrew Tweebbo.lol (Open-Source Hotel for Old 3DS & New Nintendo 3DS) - Upcoming Update Progress.

Post image
12 Upvotes

r/3dshomebrew • • 2d ago

New Homebrew We might get a port of Silent Hill 2 on the 3ds before GTA 6 releases

294 Upvotes

It works in the emulator, will test on real hardware as well soon, got so excited it worked and wanted to share lol


r/3dshomebrew • • 1d ago

General Help Homebrew Launcher won't open after using Rosalina's "Switch the hb. title to the current app" option

2 Upvotes

Hi! I'm trying to launch the Homebrew Launcher through the Rosalina menu by selecting "Switch the hb. title to the current app" while using Download Play.

However, after closing Download Play and reopening it, it still launches the original application instead of the blue Homebrew Launcher screen.

I have both "boot.3dsx" and "boot.firm" directly in the root of my SD card.

Does anyone know what might be causing this or how I can fix it? Any help would be appreciated. 😿


r/3dshomebrew • • 1d ago

General Help Issues rebuilding title database using Python on Mac. Everything worked up until the fifth command and then the only troubleshooting tip for that command thats provided in the guide doesn't help!

Thumbnail
1 Upvotes

r/3dshomebrew • • 2d ago

New Homebrew 3dsDL - A modern file downloader for 3DS

170 Upvotes

Hey everyone, I've been working on 3dsDL, a homebrew app that downloads to download files onto your 3ds sd card.

It started because I wanted a working Multidownload, the downloader hax0kartik made back in 2017 and has been unmaintained since 2020, and no longer works. I rebuilt it around libcurl and mbedTLS so HTTPS works with proper certificate checks, and gave it a fresh new Citro2D interface and some QOL functions.

What it does different than Multidownload:

  • If a file with the same name already exists, it asks you to rename, overwrite or cancel. Multidownload would just overwrite it.
  • When a download drops, it keeps what it already got, and you can resume it right away or later from History.
  • HTTPS certificates are verified (Multidownload had verification turned off). If your console clock is wrong and that breaks HTTPS, 3dsDL fixes the clock for you.
  • ZIP extraction is optional and asks where to put things, so it won't auto-extract every archive you download
  • Sleep mode is paused during downloads, so closing the lid won't cut the Wi-Fi.

I havent tested this on the old 3dses since I only have the n3ds, if you try this on the o3ds, I would love to hear how it went

GitHub: https://github.com/ankushKun/3dsDL
Website: https://ankush.one/3dsDL/

PS. before you say tHe 3dS WiFi iS tOo sLoW tO dOwNLoAd aNyThiNg. I use it to mostly download mp3 files which is usually around 3-5mb and sometimes gba or nds roms, and it works great :)


r/3dshomebrew • • 1d ago

New Homebrew I made 3DSocial, a homebrew messaging app for 3DS inspired by GABXRIEL_Dev

Thumbnail
gallery
12 Upvotes

Hey, I wanted to share a project I’ve been working on: 3DSocial, a homebrew messaging app for the Nintendo 3DS.

It started when I saw this post by u/GABXRIEL_Dev, where they shared the idea and some starter code for a messaging app on the 3DS. It inspired me to get started, so I wanted to give them credit for that starting point.

Since then, I’ve added a bunch of things:

  • Private chats using user IDs. Your ID is created when you first open the app, so there’s no email signup.
  • Voice notes up to 30 seconds.
  • Photos taken with the 3DS camera, with a preview before sending.
  • Profiles with a name, nickname, bio, description and profile picture.
  • User search, plus a section for finding people who are open to new contacts.
  • An inbox for messages from people you haven’t added yet.
  • Chat history you can browse page by page.
  • Activity status for your contacts.
  • Application-layer encryption over HTTP, plus an option to protect your ID with a password.
  • Light and dark themes, customizable chat colors, and settings for sound, the LED and update checks.

There isn’t a public server yet. I can’t afford to pay for a server right now, so for the moment this is a local demo: your 3DS and the server need to be on the same network, and the example server runs on your own PC. Once I can cover the hosting costs, I plan to put up a server so people can use it globally without having to set up their own.

For now, I wanted to share what I’ve got, see if people are interested, and hear what you think. Criticism and suggestions are welcome, so let me know what you think or what you’d improve.

Repo and downloads:
https://github.com/miventech/3DSocial---Mensajeria-para-Nintendo-3DS

The repo includes the example Python server and instructions for trying it out. For audio, you need to dump the DSP firmware once from Rosalina on your own console; the steps are in the README.

Thanks again to GABXRIEL_Dev for the original idea and starter code. I’m realy curious to hear what people think.


r/3dshomebrew • • 1d ago

New Homebrew creo que soy el unico en hacer esto

Post image
10 Upvotes

hace no muchos dias salio un firmware para ejecutar android 1.6 en 3ds el problema es que este proyecto solo a sido testeado en new 3ds y no en una old 3ds asi que me tome la tarea de probar este proyecto descargando el firmware y poniendo los archivos correspondientes y sorprendentemente me ejecuto y lo mejor de todo es que anda muchisimo mejor que el de eclair bueno claramente por que el de eclair es una version super tempranisima de desarrollo siendo totalmente inutilizable/Not long ago, a firmware was released that allows Android 1.6 to run on the 3DS. The issue is that this project had only been tested on the "New 3DS" and not on the original ("old") 3DS model. I decided to test it myself by downloading the firmware and setting up the necessary files; to my surprise, it actually ran! Even better, it performs significantly better than the Eclair version—which, to be fair, was an extremely early, pre-release build that was completely unusable.


r/3dshomebrew • • 2d ago

Scene News Pokémon Emerald 3DS v0.4.0 | Official Trailer

Thumbnail
youtube.com
147 Upvotes