Aurora
c36fa01651
Move patches within emunand.c
2016-05-25 15:35:50 +02:00
Aurora
9aeac7af92
Move patches to patches.c and emunand.c, section 0 copying to launchFirm for consistency
2016-05-25 14:34:43 +02:00
TuxSH
b6969cf0d1
Make "Enable developer features" the last option for compatibility with the master branch
2016-05-13 09:15:40 +02:00
TuxSH
58a33ee6e9
Merge branch 'master' into developer
...
Conflicts:
source/firm.c
2016-05-13 08:46:24 +02:00
Aurora
050f433046
Small chrono function refactoring
2016-05-13 05:01:32 +02:00
TuxSH
d48f6b62ce
Fixed a build issue
2016-05-12 18:12:10 +02:00
Aurora
ffee64c67f
Skip the svcBackdoor function on 9.0 O3DS FIRM - <= 9.5 N3DS FIRM
2016-05-12 15:28:48 +02:00
Aurora
8cbc535755
Minor pedantic changes (3)
2016-05-12 15:16:46 +02:00
TuxSH
2fe5da97eb
Merge branch 'master' into developer
2016-05-12 15:03:27 +02:00
Aurora
6ffaeadd1b
Minor pedantic changes (3)
2016-05-12 14:48:52 +02:00
TuxSH
2c10b6bff2
Merge branch 'master' into developer
...
Conflicts:
source/firm.c
source/patches.c
source/patches.h
2016-05-12 14:31:48 +02:00
TuxSH
76acfd9934
Minor pedantic changes (2)
2016-05-12 13:35:39 +02:00
TuxSH
06cc4f7172
Minor pedantic changes
2016-05-12 12:24:14 +02:00
Aurora
158659e5b0
More cleanup
2016-05-12 03:13:17 +02:00
Aurora
808c4b7361
Cleanup, possibly slight speedup by limiting Process9 memsearches to the P9 code
2016-05-11 19:28:45 +02:00
TuxSH
b4029dcd73
Merge branch 'master' into developer
...
Conflicts:
source/firm.c
source/patches.h
2016-05-11 01:32:06 +02:00
TuxSH
1750b256eb
Do things right
2016-05-11 01:08:54 +02:00
TuxSH
d00d82ac89
Update firm.c
2016-05-10 23:27:54 +02:00
TuxSH
edb5a82a89
Restore svcBackdoor (on ARM11, for 11.0 and higher)
2016-05-10 23:06:32 +02:00
TuxSH
d2f53626ae
Add precise and reliable time measurement (with a resolution of 67MHz).
...
Splash screens now last 3 seconds after they have been loaded.
The delay after pressing START in the configuration menu is now 2s long.
2016-05-10 01:27:58 +02:00
TuxSH
ac01fe417e
Merge branch 'master' into developer
...
Conflicts:
source/firm.c
source/patches.c
source/patches.h
source/utils.h
2016-05-09 20:45:06 +02:00
Aurora
b90b138766
Cleanup, fix latest ctrulib, removed reboot after config (needs testing!), fixed L+SELECT payload
2016-05-09 03:41:29 +02:00
TuxSH
c3ad7eda08
Derp
2016-05-08 17:59:15 +02:00
TuxSH
02c6a3c214
Make FCRAM (and VRAM as a side effect) globally executable from arm11 kernel (only when "developer features" are enabled)
2016-05-08 01:23:22 +02:00
TuxSH
8dd9c1a1af
Merge branch 'master' into developer
...
Conflicts:
source/firm.c
2016-05-08 00:07:25 +02:00
TuxSH
be54052b6d
Make 3ds_injector able to be bigger than the official loader module (max. 25KB on O3DS due to memory limitations). Thanks @mid-kid for the idea.
2016-05-07 23:40:02 +02:00
TuxSH
a63fb971d4
Add support for k9/p9 exception handling on all FIRMs
2016-05-06 20:22:43 +02:00
Aurora
9d68c980e6
Added support for 9.5 New 3DS FIRM to the arm9loader
2016-05-05 04:43:44 +02:00
Aurora
e2596a0a61
Merge changes from master
2016-05-04 23:49:55 +02:00
Aurora
17d3c6491a
Cleanup, removed redundant file reading code
2016-05-03 20:03:37 +02:00
Aurora
169b12fc20
Merge changes from master, added support for netloader companion (payload must be "nlc.bin" and will be deleted after being read, moved exception vectors
2016-05-03 16:57:00 +02:00
Aurora
fef48a449a
Code refactoring, added support for SAFE_MODE FIRM on A9LH (you can update safely from it now). Thanks to delebile for the O3DS SAFE_MODE FIRM FIRM0/1 protection!
2016-05-03 01:21:43 +02:00
Aurora
113059e57c
Fixed L+R booting the updated NAND with the FIRM from the outdated NAND
2016-05-01 19:48:59 +02:00
Aurora
1e6d7a5aee
Merge changes from master
2016-04-29 18:45:30 +02:00
Aurora
df112b550b
Move loadPayload to fs.c, and the path to the beginning of the chainloader
2016-04-29 17:22:13 +02:00
Aurora
85615d1916
Fix external FIRM loading
2016-04-29 15:21:49 +02:00
Aurora
c6d3158b56
Remade the chainloader to only try to load the right payload for the pressed button, got rid of the default payload (start now boots "start_NAME.bin"), sel_NAME is now select_NAME as there is no more SFN limitations anymore
2016-04-29 15:08:33 +02:00
Aurora
4a4de608ec
Merge branch 'master' into developer
2016-04-28 16:55:18 +02:00
Aurora
e651c3d9cc
Small cleanup
2016-04-28 16:27:32 +02:00
Aurora
f0e1937eeb
Add ARM9 exception vectors feature from @TuxSH
2016-04-26 22:23:47 +02:00
Aurora
efd08ff731
Revert "Move the UNITINFO patch to the developer version"
...
This reverts commit f9a1f1a79b
.
2016-04-26 22:00:29 +02:00
Aurora
f9a1f1a79b
Move the UNITINFO patch to the developer version
2016-04-26 21:51:57 +02:00
Aurora
a736e4602a
Cleanup
2016-04-26 20:10:20 +02:00
Aurora
ada3e09784
Added L+A payload
2016-04-24 19:46:33 +02:00
Aurora
3fd4603553
Welcome Luma3DS
2016-04-23 01:43:36 +02:00
Aurora
c14526068a
Minor stuff
2016-04-21 23:39:05 +02:00
Aurora
180b2a6f4d
Bye bye fileSize!
2016-04-21 05:08:42 +02:00
Aurora
70e82e627b
More cleanup
2016-04-19 17:28:18 +02:00
Aurora
0f64fd73ec
Fix bug when quitting AGB_FIRM
...
The wrong config.bin section was used to remember the last-used FIRM
2016-04-16 20:27:52 +02:00
Aurora
c60ef7fe82
Better to reboot here
2016-04-15 16:10:32 +02:00
Aurora
fea5a111a9
Misc fixes, renamed "Updated SysNAND" to reflect what the option actually does now
2016-04-15 16:01:44 +02:00
Aurora
939965b5a0
Cleanup
2016-04-14 17:10:55 +02:00
Aurora
a0334120a6
Added region/language emulation feature, thanks to the hard work of @TuxSH
...
Create a "locales" folder inside aurei, and one .txt for each game, with the title id of the game. The txt must be exactly 6 bytes long: 3 characters for the region ("JPN", "USA", "EUR", "AUS", "CHN", "KOR", "TWN"), a space, and two for the language ("JP", "EN", "FR", "DE", "IT", "ES", "ZH", "KO", "NL", "PT", "RU", "TW"). You can enable the feature globally in the config menu. This should also make DLCs for foreign games work.
2016-04-14 00:59:14 +02:00
Aurora
6d4a84a325
Remove unneeded stuff from the loader injection
2016-04-13 14:37:40 +02:00
Aurora
89350b1edd
Fixed config.bin getting recreated on each boot
2016-04-13 04:18:59 +02:00
Aurora
e9449f86bf
Rewrote config menu to allow for multiple choice settings, made the N3DS CPU patch configurable in the NTR way, changed the config.bin format to be more future-proof (settings are on the leftmost part), added more macros to read settings
2016-04-12 23:28:35 +02:00
Aurora
4fabe1f704
Added new and working N3DS CPU patch from @TuxSH
2016-04-12 15:25:36 +02:00
Aurora
ef3ba896d5
Cleanup, removed the non-working clock speed patch
2016-04-12 14:32:38 +02:00
Aurora
697bc74535
Added tentative N3DS clock speed/L2 cache patch by @TuxSH.
2016-04-12 01:22:42 +02:00
Aurora
0e9ff44746
Made N3DS >9.6 key generation version independent
2016-04-11 22:26:39 +02:00
Steven Smith
b3f0d13aa4
Add developer UNITINFO patch.
2016-04-11 12:14:51 -07:00
Aurora
bd1547710e
Derp
2016-04-11 18:43:51 +02:00
Aurora
464bf1680c
Small changes
2016-04-11 14:42:34 +02:00
Aurora
7dbded99a2
First commit of the AuReiNand rewrite!
...
- Gotten rid of the patched FIRMs, AuReiNand now finds and loads all the FIRMs from CTRNAND by default. If you are booting an emuNAND, the FIRMs will be loaded from its CTRNAND. This also applies to AGB and TWL FIRM, and allows for a very fast boot with no firmware files on the SD card.
- If for some reason (like using NTR) you do not want to use the CTRNAND FIRM, you can place a firmware.bin in the aurei folder and it will be loaded just for the default NAND.
- The way AuReiNand works has changed. Now you can specify to autoboot SysNAND or not, and a NAND is no more tied to a FIRM (since 9.0 FIRM is autodetected). If you press nothing the default NAND is booted with its own FIRM, L boots the non-default NAND with its own FIRM, R boots EmuNAND with the SysNAND FIRM if you picked "Updated SysNAND", and vice-versa.
- In order for AuReiNand to handle FIRM reboots, the .bin path needs to be hardcoded in the program. The default is /arm9loaderhax.bin (the AuReiNand.dat is also supported for 9.0 people). A PC tool was written to make changing the path easier.
- Bug fixes and stuff I forgot.
- Gelex is a saint.
2016-04-11 05:58:46 +02:00
Aurora
4180261f1f
Small changes, added a macro for reading options
2016-04-06 14:54:58 +02:00
Aurora
e882dd7aaf
Rewrote the config menu (no longer prints the whole menu on each button press), cleaned up the reboot patch, boot options will keep being forced if a GBA game was lanched from SysNAND, added option to have a splash screen with the built-in screen-init
2016-04-05 23:20:21 +02:00
Aurora
9e851d2dfd
Small code reorganization
2016-04-05 05:34:57 +02:00
Aurora
3aacbd17ce
Upped patch version
2016-04-05 02:29:36 +02:00
Aurora
6f8a9421ef
Added basic support for configuring the brightness level for the built-in screen init
2016-04-05 02:24:21 +02:00
Aurora
bb437f6f7b
Better commenting
2016-04-04 19:14:49 +02:00
Aurora
0001f301f8
Cleanup, fixed the second emuNAND patched FIRM still getting created, removed injector SOAP patch as it changes nothing without going to great lengths to change the region of a NNID, made L not needed to load payloads except for R and Select (Start is now default)
2016-04-04 18:07:13 +02:00
Aurora
f7bbc4bfec
Made the AGB_FIRM splash screen optional
...
Apparently it causes compatibility issues
2016-04-04 01:08:42 +02:00
Aurora
16225b97d7
Small changes
2016-04-03 18:18:44 +02:00
Aurora
0587c14162
Forgot stuff
2016-04-03 18:10:48 +02:00
Aurora
a181bba9f2
Added TWL/AGB FIRM patching/SD loading for New and Old 3DS (thanks to mid-kid of CakesFW for making it possible!)
2016-04-03 17:56:09 +02:00
Aurora
993e564fbb
u32-ify
2016-04-02 22:02:16 +02:00
Aurora
24186a7148
Some more tidying up
2016-04-02 18:48:31 +02:00
Aurora
3475cfe1e6
Changed indentation style across the code to make it more readable, added newlines before comments, moved patches to separate functions, made memory operations slightly faster by compiling them with O3 (thanks TuxSH!)
2016-04-02 18:22:47 +02:00
Aurora
5e99fb3aa0
Fixed dumb mistakes
2016-03-31 18:25:50 +02:00
Aurora
060d8e9945
Comment things better
2016-03-31 16:04:12 +02:00
Aurora
1026471842
Leftover from testing
2016-03-31 15:59:40 +02:00
Aurora
645208ec82
EmuNAND is detected almost instantly when the CFW configures itself, if the user is attempting to load an EmuNAND and none is found, SysNAND and 9.6/10.x FIRM are forced. Also prevents the second EmuNAND patched FIRM from being created if no second EmuNAND exists.
2016-03-31 15:57:02 +02:00
Aurora
f4c48a64ca
Fixed loading the alternate EmuNAND if 9.0 FIRM was set as default, improved comments and further cleanup of the injector
2016-03-31 01:38:28 +02:00
Aurora
ac9bdc7665
Fixed exiting GBA games with updated SysNAND
2016-03-29 18:56:51 +02:00
Aurora
5f32779ceb
Lots of changes/new features
...
- To override the last used boot mode on soft reboot, you only need to press A if you want to boot to the default option. Holding L(+payload button)/R is enough for the other modes.
- Added version number to the config menu
- Replaced the memsearch algorithm with a faster one
- Integrated 3ds_injector from @yifanlu. This brings us region free and all the other FreeMultiPatcher patches. Other than that, you now have the possibility to display the currently booted NAND/FIRM in System Settings!
- Rewritten most code for the config menu. You now can navigate to the first/last options with left and right.
- You can now choose the 9.0 FIRM to be default in the config menu. This will essentially switch "no buttons" and L in both modes.
- You can now choose the second emuNAND to be default in the config menu. This will essentially switch "B is not pressed" and "B is pressed".
- When the second emuNAND is booted, it will persist like the other boot options on soft reboot
- Bugfixes
2016-03-29 17:43:53 +02:00
Aurora
e8ebb2f7fe
Fixed signature patterns searching area, aligned variable/function names to the latest ReiNand
2016-03-27 19:19:35 +02:00
Aurora
de4fea77a1
Make the code more readable by defining variables locally, avoid useless redefinitions, when rebooting from TWL and NATIVE_FIRM you can now override with just A (same as pressing nothing), L(+payload buttons) or R
2016-03-27 16:31:05 +02:00
Aurora
feff28a4fe
Added multi redNAND support (thanks to @Desterly for the original commit)
2016-03-26 17:48:12 +01:00
Aurora
b3d25ce64a
Better commenting
2016-03-26 17:28:47 +01:00
Aurora
0f44205959
Simplified patching, yet one memsearch less, fixed override with A+L when boot options are forced
2016-03-26 17:25:05 +01:00
Aurora
9b1df43687
Useless casts again
2016-03-25 01:58:42 +01:00
Aurora
56e0157d64
Forgot about MCU reboots
2016-03-24 17:33:32 +01:00
Aurora
d23cd5acd5
More logical this way
2016-03-24 17:24:16 +01:00
Aurora
39a9eb5ccb
Explicitly block Safe Mode access on A9LH
...
Prevents bricking
2016-03-24 17:05:19 +01:00
Aurora
85a59264c9
Comment
2016-03-24 02:40:43 +01:00
Aurora
7f96e47b4f
Updated sysNAND (A9LH) & SAFE_MODE FIRM update = brick
2016-03-24 02:26:04 +01:00
Aurora
02b5c69802
New way of launching payloads (L+R/up/down/right/left/START/SELECT/B/X/Y)
2016-03-24 01:57:56 +01:00
Aurora
8daf3ebe3f
Detect emuNAND first
2016-03-23 15:52:21 +01:00
Aurora
7ad55ed61e
Chainloading works from CakeBrah too, by now
2016-03-23 15:26:52 +01:00
Aurora
96e46b2234
Remove unneeded casts
2016-03-23 15:16:40 +01:00
Aurora
03a6e343db
Merge emunand.bin, reboot.bin and loader.bin in the main executable
...
Less SD accesses, more noob-proof
2016-03-23 15:00:28 +01:00
Aurora
39280e397a
Fix typo
2016-03-23 04:27:07 +01:00
Aurora
887707ea87
Better errors
2016-03-23 04:06:21 +01:00
Aurora
279f39bc13
Added error messages, moved emunand and reboot.bin to aurei/patches
2016-03-23 03:46:44 +01:00
Aurora
b7b734bad1
Added configuration menu (thanks to Cakes for the screen printing code - no more flags!), auto-delete of patched FIRMs when switching to/from A9LH or the CFW gets updated, moved screen init from the loader, general reorganization
2016-03-23 02:46:41 +01:00
Aurora
c542bc5cf3
More readable this way
2016-03-21 19:20:26 +01:00
Aurora
1f5b824c27
Clean-up, optimized the SDMMC struct searching function, lots of useless casts removed, Process9 only gets searched once
2016-03-21 19:14:32 +01:00
Aurora
61564e5fcf
Check for emuNAND earlier
2016-03-21 04:39:00 +01:00
Aurora
a437e533f5
Slightly improved the reboot patch, added emuNAND patch improvements from CakesFW, made the emuNAND patch completely version-independent
...
Should work as-is with future firmwares!
2016-03-21 03:21:22 +01:00
Aurora
9b9f784c26
Fixed intermittent splash from CakeBrah, made splash last slightly longer, added shutdown on error, slimmed down FatFs, added error on missing emuNAND, changed folder to "aurei", changed the dat name to "AuReiNand.dat", propered the built-in screen init of the chainloader, remade the look of the 3dsx
...
(First luma-powered CFW!)
2016-03-20 17:38:45 +01:00
Aurora
dcb09a9472
Added dual emuNAND support, multi-payload loader with built-in screen init (inspired by arm9select, thanks Fix94)
2016-03-17 00:15:38 +01:00
Aurora
e9410c86b1
Added RedNAND support (untested)
2016-03-14 14:51:30 +01:00
Aurora
42885560ed
Some clean-up
2016-03-13 17:01:00 +01:00
Aurora
9468582d83
Clean-up, fixed mistake
...
GCC, why no u warn me of strict aliasing
2016-03-12 15:48:20 +01:00
Aurora
6707a36ffe
Minor changes
2016-03-10 16:06:44 +01:00
Aurora
b1a428f6bc
Disable splash screen when forcing boot options
2016-03-09 14:59:20 +01:00
Aurora
09380a19ff
External ARM9 payload chainloading for a9lh, cleaned up the sdmmc library (from the dark-samus a9lh fork)
2016-03-08 15:29:25 +01:00
Aurora
478ebeadf8
Fixed stupid mistakes
2016-03-06 19:05:41 +01:00
Aurora
13fd33a61d
Switched to 32-bit variables when possible, removed unneeded casts
...
Thanks @Fix94 for the tip
2016-03-06 18:29:47 +01:00
Aurora
4bdba9f8e9
Even moar clean-up
2016-03-06 16:31:16 +01:00
Aurora
99829b3cf7
(Hopefully last) clean-up
2016-03-06 05:04:28 +01:00
Aurora
d4a3ce2d0d
Clean-up of the filesystem functions
2016-03-05 23:33:11 +01:00
Aurora
a58cb05f2c
Previous release broke .dat booting from a 9.0 NAND if A9LH was installed
...
Also, more clean-up
2016-03-05 20:22:31 +01:00
Aurora
9ab6d107b4
Not needed
2016-03-05 18:47:47 +01:00
Aurora
42cbead456
Remove redundancies
2016-03-05 16:16:25 +01:00
Aurora
90ebe78c8e
Added forcing of boot options on A9LH
...
Always prevents losing AGB_FIRM saves, forces the last used options on a MCU reboot (can be overridden with A)
2016-03-05 15:42:40 +01:00
Aurora
cb06cf83ff
Added flag to use a pre-patched FIRM (skips all decrypting and patching)
...
Original patch by @Fix94
2016-03-05 00:01:54 +01:00
Aurora
aede5a5331
Not needed
2016-03-02 04:33:20 +01:00
Aurora
32e2b85f3a
Get up-to-date with official build
2016-02-29 16:28:43 +01:00
Aurora
6fe748f58c
Not needed
2016-02-28 16:20:06 +01:00
Aurora
e74eda16ce
Fixed reboot patch on N3DS
...
Yay, 178 MB content!
2016-02-26 02:48:42 +01:00
Aurora
23fd26630f
New reboot patch (works on N3DS, no more GBA/DS or 80 MB games toggle), fixed N3DS 3D bug (thanks TiniVi and Cakes), code cleanup, new universal MPU code (thanks Cakes)
...
Thanks to a very skilled reverser for the reboot patch!
2016-02-25 20:22:10 +01:00
Aurora
e53c186144
Prep work for A9LH screen init
2016-02-24 20:35:15 +01:00
Aurora
af83d31e8d
New button combos
...
No more complaints about triggering the cameras!
2016-02-20 23:25:00 +01:00
Aurora
9b58208c12
Fix booting emuNAND with a > 9.6 FIRM
...
Hoping this is the last derp...
2016-02-20 22:15:37 +01:00
Aurora
005855dccb
Fix derps, improved readability
...
Thanks xorhash for noticing
2016-02-20 17:55:58 +01:00
Aurora
723dd542ee
Forgot useless stuff
2016-02-20 15:32:52 +01:00
Aurora
38995d3231
Re-added reboot patch on A9LH, optimizations
...
O3DS and N3DS now share the same emuNAND patch, shorter patching patterns, patched_firmware does not keep garbage from larger loaded FIRMs, flags can be empty files
2016-02-20 15:29:32 +01:00
Aurora
b4d94da531
Added "updated sysNAND" mode, FIRM writes patch, propered emuNAND code location
...
Thanks to delebile for the patch!
2016-02-19 21:32:07 +01:00
Aurora
8872a243fc
Better commenting
...
Everyone loves that!
2016-02-19 04:53:19 +01:00
Aurora
7c70cc2c36
Reboot patch is not needed at all with A9LH
...
Thanks Apache_Thunder for letting me know, no more choosing!
2016-02-19 04:39:42 +01:00
Aurora
6c25ed4607
Arm9LoaderHax support, cleaned Makefile
2016-02-19 01:29:53 +01:00
Aurora
e34ca44715
Reduced pattern size, fixed N3DS NAND0 FIRM size
...
It's actually a little smaller
2016-02-11 00:45:24 +01:00
Aurora
1131589c19
Minor code style/comment changes
...
To match official build
2016-02-08 23:46:01 +01:00
Aurora
42b39c9ab8
Merged my changes
...
There you have it!
2016-02-08 03:37:03 +01:00
Reisyukaku
7f2597fe2f
Encrypted illegal stuff ;^) ..and more work on smart patching system
2016-02-05 18:56:30 -05:00
Reisyukaku
62d8d582c1
Emunand self patching; found solution for some hard coded stuff/FS more flexible; got rid of screenShot; implemented PoC RAM dumper using txt file; changed location of arm9 thread; fixed ver string; tons of organization and cleaning up for easier to read and modify code.
2016-01-23 04:17:48 -05:00
Reisyukaku
2465cb0fa9
10.2 firmlaunch + emunand partition bug fix
2016-01-18 16:41:49 -05:00
Reisyukaku
c01a06711b
remove debug line
2016-01-16 10:31:59 -05:00
Reisyukaku
6a2c30503d
Got rid of sysnand mode, add key gen code, new splash screen, autoboot, update fatfs, removed ninjhax/mset folder for CakeBrah/CakeHax, lots of minor changes.
2016-01-16 07:57:56 -05:00
Reisyukaku
475ddf8b6a
9.6+ emunand!
2016-01-13 16:30:09 -05:00
Reisyukaku
b914674325
Added crypto libs, tons of code refactoring to support other firms, other minor stability issues handled.
2015-08-21 14:11:23 -04:00
Reisyukaku
d89c7daf3b
LICENSE update (GPLv3)
2015-08-14 22:47:21 -04:00
Reisyukaku
95f04ee3d0
Boot to sysnand if no emunand partition.
2015-08-07 03:01:42 -04:00
Reisyukaku
4f3761d4a5
Changed payload offset, added clearScreen function, etc.
2015-08-06 21:45:39 -04:00
Reisyukaku
66c5551323
refactoring
2015-08-05 05:54:00 -04:00
Reisyukaku
e2b7f1e607
init commit take 2
2015-08-04 21:57:37 -04:00