logs archiveBotHelp.net / Freenode / #3dsdev / 2015 / September / 12 / 2
profi200
For dynarec on Ninjhax 2 you could use a custom linker script which blows up the code section and fills it with garbage. Then gspwn the code there.
But you will have problems with the icache.
And it's limited in size.
endrift
gspwn?
profi200
GPU DMA
endrift
oh that wasn't fixed?
profi200
No, it's not. Ninjhax 2 uses it.
endrift
gj nintendo
profi200
They would need to check the GPU cmd list every time which would slow down games.
endrift
oh wow
so it's more of a design flaw?
profi200
There is no hw restriction. It can freely access large parts of the FCRAM.
endrift
dang
profi200
http://3dbrew.org/wiki/3DS_System_Flaws#Standalone_Sysmodules
endrift
I was wondering about that
profi200
You can trigger that with service cmds or with a GPU cmd. Both would need to be checked every frame.
endrift
like, I've been wondering how homebrew launcher can write to what is presumably RO sections
profi200
https://github.com/smealum/ninjhax/blob/master/cn_qr_initial_loader/WEST/cn_initial/source/main.c#L186-L203
endrift
oh gosh
profi200
Or running with ctrulib just use SetTextureCopy() :p
endrift
yes I gathered that
I didn't realize it was that simple
whoops just found the easter egg
in HBL
profi200
Conamicode ftw
endrift
oic
the exploit has a specific "callBootloaderRunTitle_2x" function call per exploit that the HBL calls
profi200
Hidden magic.
endrift
there go my answers
not that it matters
I don't exactly do exploit dev
I just wanted to have a look around to see if I could figure out why it might be faster on the N3DS
profi200
It's guessed that it has something to do with the fu*ked up APT but measurements of raw CPU speed confirmed that it is really way faster on N3DS.
It's like 2x the speed of the old 3DS.
endrift
yeah
so I've heard
I just kinda wonder
is it actually possible to unlock speeds like that on O3DS? I'm amazed that speeds like this exist on the N3DS without an actual CPU bump
Normmatt
maybe the cpu runs 2x as fast but the hw timers work the same as o3ds for compatibility
endrift
maybe?
I've seen that theory
Normmatt
as long as the timers work the same it shouldn't cause any incompatibility
endrift
I wonder if the scheduler is forcing out the game thread more often
relative to CPU gains
profi200
Just running a bare metal loop without anything shows that the apps run really that fast.
If you try to measure the ticks you will get the same as on old 3DS.
endrift
so I've heard
it's an odd case
Normmatt
profi200, that implies the cpu is faster and that the timer intervals have indeed been modded to be the same as o3ds
endrift
but the fact that e.g. Xenoblade uses the CPU to its full advantage makes me think that they have some way to unlock it
I doubt it's just better threaded
so I figure there should be a way to get CIAs faster
Normmatt
faster cpu = more context swaps per frame = better performance
profi200
I don't have that game otherwise i would check what it does. Especially exheader flags and service cmds.
Normmatt
CIAs on N3DS don't show the speed improvement?
endrift
Normmatt: nope
profi200
Not at all.
It's identical to old 3DS.
Normmatt
hmm
endrift
which is what makes me think it's either underclocking it with a CIA or that it's adjusting the scheduler
which I'm wondering if it may be circumventable
without kernel hacks
profi200
I could imagine there is some hidden service cmd or something like that.
endrift
yeah, except I wouldn't imagine it's that hidden if a commercial game uses it
Normmatt
exheader flag seems the most likely
endrift
Normmatt: that's what I was thinking
which is why I tried tweaking the exheader generation in makerom
but to no avail
maybe I just didn't try poking at it enough
also I don't have a CIA-injectable N3DS
the very strange thing is the difference between Ninjhax 1 and 2 speeds on the N3DS
I don't know how Ninjhax 2 works since it's closed source at the moment
but it's suspected that it fu*ks up APT somehow
profi200
For what i know it takes over home menu and other apps to gain access rights.
endrift
so it might be APT that's doing this, in which case a call to APT might fix it
not that I have any way to poke at this myself
profi200
home menu is the one launching apps and applets through other services.
endrift
well sure
but recall that Xenoblade might do something too
although I suspect that would do it with an exheader flag
I do wonder though
If I run a simple algorithm in a tight loop and then measure ticks after the loop if anything would show up as different
you'd need to run the tight loop for more than one frame to notice a difference, otherwise the scheduler would fu*k you over
*could
unless the 3DS has usermode preemption?
but I'm under the impression it does not
aliaspider
wait homebrew run though ninjhax1 or cia on N3DS aren't twince as fast as on O3DS ??
endrift
nope
ninjhax 2 only
aliaspider
what Oo ? now I'm really confused
endrift
have you observed otherwise?
aliaspider
no
I just deduced form what people are experiencing that the n3ds is running at 533mhz
but now you say that is only the case with ninjhax2,
endrift
tbh given the speeds we're seeing on N3DS with Ninjhax2
533MHz sounds about right
maybe a little faster
since it's actually competitive with the speeds I see on the Raspberry Pi 1
(of course the Pi 1 is single-core and has a heavier OS)
I suspect that something is either underclocking the N3DS or the scheduler is doing something to make it appear slower
« prev 1 2 3 4 next »