Homebrew Feedback Homebrew app WIP - Jermus 3DS Web Browser

AliceCE

Rookie 3DS Homebrew Dev
OP
Member
Joined
Aug 7, 2019
Messages
203
Trophies
0
Location
Amogus World Theme Park, BR
XP
523
Country
United States
I'm currently working on an advanced web browser for the Nintendo 3DS, currently going by the name "Jermus" on my computer. It will support downloading files, viewing some files, viewing page source code (and maybe later on, editing said source code or saving it locally), unlimited bookmarks (why was this even a limitation on the stock 3ds browser??), among a compact gui based loosely on Windows XP and 2000's appearance, and with a compact, 3x5 font for viewing as much text on screen as possible. Below is a mockup for what it will look like in the final stage of development.

mockup.png


Breakthroughs so far:

-getting cURL up and running properly :glare:

The browser may possibly be able to load webpages the stock 3ds browser can't load! I entered "https://www.wikipedia.org", and it loaded the raw HTML for the page fine without any errors! :wtf:
 

AliceCE

Rookie 3DS Homebrew Dev
OP
Member
Joined
Aug 7, 2019
Messages
203
Trophies
0
Location
Amogus World Theme Park, BR
XP
523
Country
United States
Anyone know how to strip certain parts of html tags in regex? me and my pal can't figure out how the hell to remove things enclosed in script tags, and i imagine keeping urls will be the same deal.

Code:
std::string text = s;
std::regex r("");
r = std::regex("\\<script.*?\\>.*?\\<.*?\\>"); //doesn't work
s = std::regex_replace(s, r, "");
r = std::regex("\\<.*?\\>"); //works fine
s = std::regex_replace(s, r, "");
 

Eveldee

Well-Known Member
Member
Joined
Aug 16, 2019
Messages
230
Trophies
0
Age
21
XP
1,085
Country
France
Anyone know how to strip certain parts of html tags in regex? me and my pal can't figure out how the hell to remove things enclosed in script tags, and i imagine keeping urls will be the same deal.

Code:
std::string text = s;
std::regex r("");
r = std::regex("\\<script.*?\\>.*?\\<.*?\\>"); //doesn't work
s = std::regex_replace(s, r, "");
r = std::regex("\\<.*?\\>"); //works fine
s = std::regex_replace(s, r, "");
Honestly, you shouldn't use Regex to parse HTML, it's extremely slow especially on the 3DS with it's limited hardware, and anyway you won't succeed at parsing everything, see this stackoverflow post. You should get or create a real parser which rebuilds the DOM tree in a way you can manipulate, maybe this will do?
 
  • Like
Reactions: Seriel

AliceCE

Rookie 3DS Homebrew Dev
OP
Member
Joined
Aug 7, 2019
Messages
203
Trophies
0
Location
Amogus World Theme Park, BR
XP
523
Country
United States
By my pal's request and seeing as how every time i try to add an essential feature the c / cpp compiler starts shitting itself, i've decided to switch my code over to LUA. everything done so far will be ported (not much to port rn though) to LovePotion
 
Last edited by AliceCE,

AliceCE

Rookie 3DS Homebrew Dev
OP
Member
Joined
Aug 7, 2019
Messages
203
Trophies
0
Location
Amogus World Theme Park, BR
XP
523
Country
United States
Burnout. Really bad burnout. Anything to help me get graphics working would be a godsend. I fucking hate #include so goddamn much, I want to use the framebuffer directly, not citro2d, and i also need help with setting the font itself up, i have a png of the characters.
 

AliceCE

Rookie 3DS Homebrew Dev
OP
Member
Joined
Aug 7, 2019
Messages
203
Trophies
0
Location
Amogus World Theme Park, BR
XP
523
Country
United States
Erm... What kind of Codepage is the 3ds using? i had to decrement the offset for every character by -2 characters, and a lot of characters seem incorrect, why is 1 a 2, and 0 a fucking slash?

i'm dumb lol, i forgot the fucking "=" in the font data.
 
Last edited by AliceCE,
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Sonic Angel Knight @ Sonic Angel Knight:
    Which one are best? The flat noodle, or the not flat ones? :ninja:
  • K3N1 @ K3N1:
    Fat noodles are best
  • idcwhat3v3r @ idcwhat3v3r:
    ofc more hoes come to explode this place
  • idcwhat3v3r @ idcwhat3v3r:
    i dont give a fat SHIT about spagetti
  • linuxares @ linuxares:
    surprisingly this chat isn't all about you :3
    +1
  • Megadriver94 @ Megadriver94:
    What is the best Action Replay DSi FW version for DSi FW v
    1.4.4?
  • Veho @ Veho:
    Lasenge.
  • Veho @ Veho:
    Once again I fell down the martial arts rabbit hole and am plumbing the murky depths of the internet's various martial arts and fighting crafts echo chambers.
  • Veho @ Veho:
    I like to get up to speed on that every now and then, see what the newest high wisdom everyone is spouting nowadays.
  • Veho @ Veho:
    If you're not actively involved and only get up to speed every few years or so, you can see the tide of public opinion flapping worse than my dong while I'm skipping naked down a hallway.
  • Veho @ Veho:
    And the "established wisdom" changes every decade.
  • Veho @ Veho:
    England is installing a new king.
  • Veho @ Veho:
    Their previous monarch has reached End Of Life and is being replaced.
  • Veho @ Veho:
    Like most forced updates, this one has terrible support and was very poorly received by the userbase.
  • Psionic Roshambo @ Psionic Roshambo:
    And mostly just adds useless features
  • Psionic Roshambo @ Psionic Roshambo:
    We need AI overlords
  • Veho @ Veho:
    Someone mowed a giant dick into the lawn in front of Westminster Abbey.
  • Veho @ Veho:
    Just in time for the coronation.
  • Veho @ Veho:
    That's what I said, maybe they were just doing a recreation of the Cerne Abbas giant but didn't finish it in time.
  • Veho @ Veho:
    The Abbey building was supposed to be the hat.
    Veho @ Veho: The Abbey building was supposed to be the hat.