• Hey, guest user. Hope you're enjoying GameParadise! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Homebrew [WIP Release] NetSurf 3DS

admin

Chad
Staff member
85%
Joined
Jan 25, 2024
Messages
12,748
Points
38
Age
39
Location
USA
Website
gameparadise.org
Credits
217,062

NetSurf 3DS

This is the first (to my knowledge) homebrew port of a modern-ish web browser to the 3DS! (It is also my first 3DS homebrew release, so hopefully I'm doing it right ;D)

Quick Links:


Unlike previous attempts at a homebrew web browser, NetSurf 3DS is a port of a pre-existing browser, namely the NetSurf web browser. NetSurf is known for being extremely portable and lightweight, even reportedly working on <32MB of RAM in some cases. It even has a framebuffer front-end, meaning that no 3rd party GUI libraries are required. This makes it (in my opinion) an ideal case for porting to the 3DS (yay)!

What Works:

  • Browsing to webpages with SSL (HTTPS) <= 1.2 (which is better than the 3DS default browser with insecure SSL <= 1.1)
  • submitting basic HTML forms (like Google's search bar)
  • entering web addresses and values for text entries with the 3DS's system keyboard.
  • PNG, JPEG, BMP, and GIF images.
  • Basic HTML/CSS
What doesn't work:
  • Downloading files (I'll probably be focusing on this next)
  • Webpages are hopelessly mangled (in a different way than the default browser, at least)
  • NetSurf's super-basic JavaScript support doesn't yet compile and is disabled in the build process.
  • WebP and SVG support doesn't exist since the required libraries have not been ported yet.
  • FreeType font support is disabled in the build process (Enabling it yields an instant crash on startup), so only a simple built-in pixel-y font is provided. (It also frequently gets cut off, and text wraps incorrectly, which I think is a related issue)
  • The "History" view does not work correctly.
  • Only 16BPP color is currently supported (though you probably wouldn't notice, anyway).
What will (likely) never work:
  • HTML5/WebGL (or Java or Flash) browser games
  • Video playback (basic, experimental support using GStreamer exists in the code, but GStreamer hasn't been ported to 3DS yet, and even if it was, it would likely require too much RAM)
  • Chrome/Firefox-level website rendering (we're only working with 64MB of RAM here, folks!)
  • Modern Web 2.0 apps like Google Docs, Gmail, etc.
  • An embeddable web frame (I just don't have enough free time to figure that out :-/)

Here are some screenshots (running in the Citra emulator):

welcome_page.png

google.png


nintendodotcom.png

gbatemp.png

Installation:

NetSurf 3DS is currently only available as a .3DSX file. To install, copy the 3DSX file to your
/3ds/
folder on your SD card. You will also need to download the resources.zip file, and extract the contents to
/share/netsurf/
.

IMPORTANT: THE BROWSER WILL NOT WORK WITHOUT EXTRACTING THE RESOURCES TO /share/netsurf! (At some point, I'll probably look into packing these resources in the RomFS for the app, but for now, this works well enough).

You can download all required files from the GitHub releases page.

Happy browsing!
 

Recent Content

Newest Downloads

Tutorials

Back
Top