CPU speed modification in anything other than NTR?

Discussion in '3DS - Flashcards & Custom Firmwares' started by masterz87, Jan 30, 2016.

  1. masterz87
    OP

    masterz87 GBAtemp Fan

    Member
    453
    29
    Apr 21, 2013
    United States
    I can't seem to find an easy thing and searching gave me no results. Iknowthat the plugin is there and that I could use pasta to disable sig checks and then maybe boot NTR but outside of that one plugin I'm not in need of anything else out. I would like to know if there's a patch or similar to force it on game cads/cias outside of booting NTR. Also does that plugin let you do 2x speed somehow. The flag is clearly there to let you set the cpuspeed at 2x/enable the cache or similar in rx/pasta/anything other than NTR.
     
  2. DarkFlare69

    DarkFlare69 GBAtemp Psycho!

    Member
    4,717
    2,572
    Dec 8, 2014
    United States
    Ohio
    Not that i know of
     
  3. videogame57

    videogame57 Sword Princess

    Member
    397
    153
    Apr 27, 2014
    Canada
    Right behind you
    Doesn't *hax 2.5 allow this?
     
  4. Apache Thunder

    Apache Thunder I have cameras in your head!

    Member
    4,102
    4,034
    Oct 7, 2007
    United States
    Levelland, Texas
    Not sure about 9.3+ FW users on non exploitable consoles (they are pretty much stuck with using Hans. It will be the only way), but when I'm getting my n3DS, it will be on exploitable firmware so I plan on simply repacking my games with the cpu speed enabled directly in the exheader. If you look at 3dbrew, it tells you the flag that sets this and where it's located. "00" means standard o3DS speed. 02 = n3DS speeds. 03 = n3DS speeds plus L2 cache enabled. (whatever that means. :P)

    You find this setting at offset 0x200 at 0x0C on the exHeader . SSB has it set to 03 for example. I guess L2 Cache enables extra memory (and thus the reboot on o3DS to enable the expanded memory) ;)

    You may be able to edit the exheader directly by editing the CXI it's in instead of unpacking the game's exheader and other files (this would save you the trouble of repacking the CXI correctly).

    In that case you'll find it at 0x400 offset instead (still at 0x0C). Note that you'll need to fix the hash for exheader in the CXI header afterwords. I just use Decrypt9WIP by d0k3 to retail encrypt it. This fixes the hashes automatically during the process and found it to be a quick way of editing this value.


    I plan on repacking Ocarina of Time as a test. (as I hear this has sound bugs with the higher speed. When enabled through Hans anyways)

    I may also see if I can just create dummy patches that enable it instead of repacking an entire game. :D

    Aside from that, Hans will be the only other way. I can't know for sure I can repack games to use n3DS clock speeds until I got an n3DS to test on. But others are free to try it in the mean time if ya'll know how to repack a game CXI correctly and are savvy with a hex editor. ;)
     
    Last edited by Apache Thunder, Jan 30, 2016
  5. daxtsu

    daxtsu GBAtemp Guru

    Member
    5,546
    3,953
    Jun 9, 2007
    Antarctica
    L2 cache is basically a high-speed block of RAM built into most modern CPUs that's a lot quicker than normal RAM, but still a bit slower than L1 cache. If I'm not mistaken the N3DS has 1 or 2 MB of it.
     
  6. Apache Thunder

    Apache Thunder I have cameras in your head!

    Member
    4,102
    4,034
    Oct 7, 2007
    United States
    Levelland, Texas
    I don't think Hans has an option for enabling that (only seen people mentioning that it enables the n3DS clock speeds). I wonder how Ocarina of Time will behave with that enabled. I hear that OOT had sound bugs when n3DS speeds are enabled through Hans. It could be a bug with Hans. But I won't know for sure until I try the game repacked to use it natively. May also see if the L2 cache thing makes any difference. Maybe the Pokemon X/Y/ORAS would benefit from L2 Cache being enabled. :D
     
  7. masterz87
    OP

    masterz87 GBAtemp Fan

    Member
    453
    29
    Apr 21, 2013
    United States
    The flags that I see only seems to force it to 3x speed, I wanted to do 2x speed+enable l2cache so that way the difference wouldn't be too much in terms of battery life draining.

    According to the registers it lets you set it to 0(default),1(2x),2(3x),3(hang) and the cache was seperate so that's what I wanted to do was make it 2x+l2 cache as I don't want even worse battery life.
     
    Last edited by masterz87, Jan 30, 2016
  8. Apache Thunder

    Apache Thunder I have cameras in your head!

    Member
    4,102
    4,034
    Oct 7, 2007
    United States
    Levelland, Texas
    I believe 3DBrew said they were bitmasks (which I don't quite understand myself). So 02/03 does not mean 2x/3x respectively. Someone simply told me what those bitmasks translate to in a hexeditor and I'm repeating that here. Setting it to 03 enables n3DS clock speed with the extra memory. There is no inbetween speed or anything faster. I'm not sure what 01 would mean. I think 01 enables L2 but without the n3DS clock boost. But don't quote me on that. 00 (the default that all legacy software already has this set to) tells the n3DS that the software is legacy o3DS software and thus no clock speed increase nor memory increase.

    I believe 01 may be used to increase memory but not use the n3DS clock speed. o3DS may interpret bitmask 03 the same as 01 because o3DS does not have a higher clock speed to switch into unlike the n3DS. (or it may see 03 as indicating it's n3DS exclusive and refuse to boot the game)

    There is no in between and these don't correlate with speeds. Just different possible settings. You're either using legacy clock speed setting or using n3DS clock speed setting.

    I always play with my 3DS near my computer where my charger is easily accessible, so the added battery drain from having a few more titles use n3DS native clockspeed/memory isn't an issue for me. :P
     
    Last edited by Apache Thunder, Jan 30, 2016
  9. masterz87
    OP

    masterz87 GBAtemp Fan

    Member
    453
    29
    Apr 21, 2013
    United States
    edit, I'm a stupid ,I forgot the key for homemenuhax. And the flags I got I listed them as the hex values ie 00, 01, 02 etc. Not the real values hence 0x0c instead of 12 etc. That's what I was talking about with it. And yeah sure the battery is fin but it needs to get better for me.


    I wish there was another program like ds battery timer for the 3ds so I could do real tests with the cpu settings.

    Also How can NTR say that they don't support piracy/cig patching yet they _only_ release a cia to boot it easily instead of a 3dsx, so you have to _already_ have to have cigs patched or you'd never be able to install it, let alone run it.
     
    Last edited by masterz87, Jan 30, 2016
  10. masterz87
    OP

    masterz87 GBAtemp Fan

    Member
    453
    29
    Apr 21, 2013
    United States
    delete me I meant to hit edit I hit rely instead.