yellows8 / 3ds_browserhax_common

ROP-chain-generator for Nintendo 3DS titles with some form of web-browser.
73 stars 17 forks source link

Old3DS 10.5.0-30U Crash after first run #9

Closed TacoOblivion closed 8 years ago

TacoOblivion commented 8 years ago

Using this page (http://yls8.mtheall.com/3dsbrowserhax_auto.php) to activate browser hax worked on the system the first time without issue. After something crashed it is now giving this error anytime I try to run it. I will give the exact steps that caused the issue, but I can't really give anymore than that.

Edit: Ignore the steps as they have nothing to do with the issue, it was just a random crash that was not the cause of it not working.

Steps 1) I added the starter pack data from https://smealum.github.io/3ds/ 2) I added the retroarch nightly build from 1/27/2016 3) I patched to english and then added "Mother 3.gba" into the system in the folder "/GBA/Mother 3.gba" 4) I scanned with the camera the QR code to the auto page and browserhax loaded and worked 5) I started up gpSP_libretro and then proceeded to "Load Content" to the "Mother 3.gba" file 6) The emulator had some funky crash (that I didn't record and thus can't report to them) that forced me to shut the system down Now browserhax no longer works.

After step 6, it then started showing this error message (http://dump.nrgs.org/3ds/20160128_012636.jpg) with the colors yellow, gray, and orange, before crashing.

For some reason, not sure why, it's now is showing this error message (http://dump.nrgs.org/3ds/20160128_014627.jpg) in lieu of the other one on occasion. Usually for this one it only flashes yellow and then the error message pops up.

As a note, I'm very new to the 3DS hacking scene (this is not my system, my system is a New 3DS at 10.3.0-28U and it works fantastically) and whatnot and am ignorant of not knowing enough, right now, to give a proper bug report.

yellows8 commented 8 years ago

What is so hard to understand about the bolded text near the bottom page? http://yls8.mtheall.com/3dsbrowserhax.php

TacoOblivion commented 8 years ago

I read it, I just didn't understand what you meant by it before. I think I get what you mean now. However, I figured that by posting the steps it might help to clear up the issue.

You may want to clarify your bolded text by directly saying that it is likely to fail. All of the fluff about things like, "NATIVE_FIRM," makes the point of the sentences unclear. I also read "failing starting at the orange-screen" as it failing by starting with the orange screen first. Mine was yellow first, so I didn't think much of it.

yellows8 commented 8 years ago

Anyway, you should just keep retrying until it works then install menuhax/whatever.

TacoOblivion commented 8 years ago

Still haven't gotten it to work again, but have noticed "Terminated Script Execution" at the top of the upper screen. Not sure if that's right, because I don't see that on my system when it executes it.

I read on a thread on gbatemp that someone else had this exact problem with the exact same a-to-b results. Which is that after the first run, it no longer runs and the message "Terminated Script Execution" can now be seen every time you try to load it. I find it a bit too coincidental for my taste, but then again I may have no idea what I'm talking about, most likely, as the 3DS isn't a subject I'm familiar with.

Edit: I got in again by adding a dummy GET query variable to the URL. In fact, I have repeatedly added dummy GET query variables and it keeps working now. This is quite interesting actually... I should note that each one is a different length. When I tried loading it at the same URL length, it failed. This is weird, but fascinating.

SyrupThinker commented 8 years ago

I can confirm that adding a dummy GET query variable really makes it work... (I ended up with it not working too)

SirDusterBuster commented 8 years ago

I'm having the same Orange Screen crashing problem, but I have no clue on how to add dummy GET query variables to the URL.

TacoOblivion commented 8 years ago

http://yls8.mtheall.com/3dsbrowserhax_auto.php?key http://yls8.mtheall.com/3dsbrowserhax_auto.php?key=val http://yls8.mtheall.com/3dsbrowserhax_auto.php?key1=val1&key2=val2

URL query variables are key-value pairs placed after the file name. This is of course ignoring fancy behind-the-scenes overrides that many places use which would be something more akin to "http://yls8.mtheall.com/key/3dsbrowserhax_auto.php"

So all you have to do is add random junk. The first time I tried it, I put this, I think. That was enough to cause it to boot again. http://yls8.mtheall.com/3dsbrowserhax_auto.php?m1

My only guess at this time is that the 3DS might be doing some sort of script caching, and even though I reinitialized its browser data, it's still holding onto it. When you add a dummy query variables to the URL it causes browsers to think that it's a new file. This is usually useful for live development purposes, but is also fantastic in this edge case.

0530cg commented 8 years ago

How many different times did you try this? I have tried all of your options at least 20 times each and none of them have worked for me

TacoOblivion commented 8 years ago

I had it work for me over 10 times, most in a row. I just add garbled nonsense alphanumeric values of varying lengths and it usually worked. When I tried to reload any previous garbled nonsense or the file without dummy query variables, it always failed many, many times in a row and in fact never succeeded after it's first time.

Like I stated above, not really sure why it works and, this too, it could also be a coincidence. I hardly believe it is a coincidence, since this looks like some sort of caching, but who knows.

http://yls8.mtheall.com/3dsbrowserhax_auto.php?asdjfhvkjew23 http://yls8.mtheall.com/3dsbrowserhax_auto.php?y4lksafjaasdfsskdfja http://yls8.mtheall.com/3dsbrowserhax_auto.php?zkfjweoro http://yls8.mtheall.com/3dsbrowserhax_auto.php?kfqpweurtqiowknvxcvkjk24m23h2sdfosj

You could try these. All I did was hit my keyboard. As yellows8 has stated though, browserhax is unstable for this system, so who knows.