Aurora
40369d44df
Pin cleanup
2016-08-16 22:39:02 +02:00
TuxSH
a4531b01d5
Merge branch 'master' into developer
2016-08-15 16:51:36 +02:00
TuxSH
d445b20e90
Fix bugs
2016-08-15 16:50:58 +02:00
TuxSH
24ddf5ca3d
Merge branch 'master' into developer
...
Conflicts:
source/config.c
source/fs.h
source/patches.c
2016-08-15 16:29:48 +02:00
Aurora
7ab59e420a
Fix comment
2016-08-15 13:28:43 +02:00
Aurora
83a849126a
Move stuff from firm.c (2)
2016-08-15 13:23:27 +02:00
Aurora
c9c373f607
Move stuff from firm.c
2016-08-15 13:11:27 +02:00
Aurora
aa7c2c0009
Various changes/cleanups, removed useless code, simplified chronometer functions
2016-08-15 03:51:48 +02:00
TuxSH
3709ac301a
Merge branch 'master' into developer
...
Conflicts:
source/config.c
source/fs.c
source/fs.h
2016-08-13 23:04:41 +02:00
TuxSH
3bc966f84e
Replace "Enable splash screen with no screen-init" by "Display splash screen before payloads".
...
The screens will be initied if and only if there are splash files to display.
2016-08-13 22:23:14 +02:00
TuxSH
457b4cec13
Disable interrupts and do some refactoring.
2016-08-13 20:49:40 +02:00
TuxSH
88891ef6cd
Setting "Dev. Options" to "None" no longer disable exception handling and related patches.
...
Removed the patch that disables execution protection on the global kernel FCRAM and VRAM mapping as it was unused, worthless, and caused bugs in the past.
2016-08-13 15:31:08 +02:00
TuxSH
25811e2b52
Remove handling of kernel panics for SAFE_FIRM k9, fix it for LGY FIRMs.
2016-08-13 11:47:10 +02:00
TuxSH
f81c92e35b
The user-mode context is now dumped (instead of the supervisor-mode context) on a svcBreak call.
...
Kernel panics are now handled by the exception handlers as well.
2016-08-12 15:17:19 +02:00
TuxSH
39b2aff627
Merge branch 'master' into developer
2016-08-06 22:38:54 +02:00
TuxSH
905777466d
Don't set retail keys on dev units.
2016-08-06 22:38:06 +02:00
TuxSH
4e21cf4f1c
Add an option to disable access checks (svc, service and arm9 flag checks) (thanks to @Subv for the most part)
2016-08-04 20:10:31 +02:00
TuxSH
eccf9eab93
Enable reading TwlBg and AgbBg as well as TWL_FIRM, AGB_FIRM and SAFE_FIRM from SD card.
...
It's up to the user to provide supported versions of these firmware binaries (>= 5.x for NATIVE_FIRM, latest versions for the other firmwares) when using this feature.
2016-08-04 13:44:51 +02:00
TuxSH
c36ad54bcb
Always load firmware.bin when it exists.
2016-08-04 11:16:28 +02:00
TuxSH
81e2b7c11c
Merge branch 'master' into developer
...
Conflicts:
source/patches.c
2016-08-04 00:18:53 +02:00
TuxSH
18b5cdcddf
Don't make any assumption regarding version when loading an external firmware file.
2016-08-04 00:05:01 +02:00
TuxSH
cf7fa8ecbd
Merge branch 'master' into developer
...
Conflicts:
source/config.c
source/firm.c
source/fs.c
source/fs.h
source/patches.c
source/patches.h
source/utils.h
2016-08-03 22:52:51 +02:00
TuxSH
e01802e299
Check the PIN before loading a payload.
...
Also fix some bugs.
2016-08-03 16:58:03 +02:00
TuxSH
709aefba5d
Implement a PIN-checking system.
...
Idea and original code by @reworks
2016-08-03 14:13:26 +02:00
Aurora
d3c507b0d4
Minor stuff
2016-07-20 00:11:59 +02:00
Aurora
a68e14def3
Added error screen when booting an unsupported NAND with no firmware.bin or writing to the config fails, added code for creating the "luma" directory if it is missing
2016-07-18 23:07:28 +02:00
Aurora
8d1befea9e
Rename "Updated SysNAND" to reflect its only new purpose
2016-07-18 19:10:41 +02:00
Aurora
e7b8a0ef39
Force A9LH detection is not needed anymore
2016-07-18 18:53:23 +02:00
Aurora
be6ee894f9
Fix firmware.bin loading
2016-07-18 17:28:04 +02:00
Aurora
e0e8ed2113
Hardcode 9.6 FIRM version for firmware.bin
2016-07-18 17:13:46 +02:00
Aurora
c63e46b1a9
Added FIRM version detection, removed firmware.bin loading unless an unsupported O3DS NATIVE_FIRM (pre-5.0) is being loaded, skip patching old unsupported O3DS AGB/TWL FIRMs, only apply 11.0 patches with 11.0 or greater
2016-07-18 16:58:29 +02:00
Aurora
efd83e063e
Remove code to skip the rbeoot patch on 9.0 as it is not needed anymore with A9LH and constitutes a brick risk
2016-07-18 15:40:31 +02:00
Aurora
ae23a1c84d
Fixed Luma allowing users to go to the configuration after AGB_FIRM quits
2016-07-18 15:09:04 +02:00
TuxSH
fd1253caac
Merge branch 'master' into developer
2016-07-14 21:21:55 +02:00
TuxSH
a0e8bc1de3
Add support for launching >= 6.x/7.x emuNANDs properly when the sysNAND is on a lower firmware version
...
To launch 3.x - 4.x emuNANDs, you'll need to use an external firmware file (10.x or so should do the trick)
2016-07-14 21:20:45 +02:00
TuxSH
2412faf033
Merge branch 'master' into developer
2016-07-05 16:11:58 +02:00
TuxSH
72caad86cc
Minor stuff
2016-07-05 16:05:53 +02:00
TuxSH
2d6debddb9
Merge branch 'master' into developer
...
Conflicts:
source/firm.h
source/fs.h
source/patches.h
2016-07-02 17:44:08 +02:00
TuxSH
96211813e3
Use bool instead of u32 where it's relevant
2016-07-02 14:44:01 +02:00
TuxSH
153bbd6242
Merge branch 'master' into developer
...
Conflicts:
source/config.c
2016-07-02 12:48:08 +02:00
Aurora
136e0d8974
Cleanup
2016-07-01 20:27:28 +02:00
TuxSH
0eb87df84f
Enable support for reading FIRM system modules from SD card (in /luma/sysmodules)
2016-06-27 13:21:08 +02:00
TuxSH
fcb8edffdf
Merge branch 'master' into developer
2016-06-14 19:51:49 +02:00
TuxSH
61684ecb68
We need to clean and flush caches before jumping to payloads, actually.
2016-06-14 19:50:38 +02:00
TuxSH
0ced86b55f
Merge branch 'master' into developer
...
Conflicts:
source/firm.c
source/patches.h
2016-06-13 23:16:33 +02:00
TuxSH
159c9cb475
Implement our own DCache cleaning functions
2016-06-13 21:14:53 +02:00
TuxSH
2943dcb2e9
Refactor firm.c as well as other files
2016-06-12 22:14:52 +02:00
TuxSH
984c3e549c
Merge branch 'master' into developer
...
Conflicts:
Makefile
2016-06-11 00:00:53 +02:00
TuxSH
e593584a47
Move screen management code to screen.c and fix cache-related issues
...
- Screen brightness is now updated as soon as the user selects a brightness option, on all boot environments
- Payloads can now be 1KB bigger
- Some cache-related bugs may have been fixed
2016-06-10 21:48:22 +02:00
TuxSH
e478908dca
Make the exception handlers dump more information
...
You'll need to the latest version of exception_dump_parser.py
2016-06-07 19:25:45 +02:00
TuxSH
f9d6cdccb0
This is what happens when I don't have a N3DS
2016-06-05 12:08:55 +02:00
TuxSH
edff11be7b
Stub svcBreak with "bkpt 65535" so we can debug it
2016-06-04 21:14:00 +02:00
TuxSH
bb230de72c
The ARM11 exception handlers are now working.
...
Refactored the exception handling code in general.
2016-06-03 21:38:35 +02:00
TuxSH
2d7dde9cf9
ARM11 exception handlers (not working yet, it fails to retrieve the data after the reboot)
...
Uncomment the appropriate line in firm.c to test.
2016-06-02 22:33:44 +02:00
TuxSH
2424865fa1
Make developer features multi-choice, since modifying UNITINFO prevents accessing eShop on retail consoles (you can now choose "ErrDisp" for a less aggressive patch)
2016-05-28 16:13:22 +02:00
TuxSH
6a280723f8
Fix developer-branch-exclusive patches
2016-05-27 22:06:11 +02:00
Aurora
477414a636
Merge from master, fix derp, cleanup
2016-05-27 14:56:18 +02:00
Aurora
5fac49447c
Update authors for the Cakehax loader
2016-05-27 14:08:06 +02:00
Aurora
30b3a51309
Cleanup
2016-05-27 04:16:49 +02:00
TuxSH
bafba1197e
Fix and refactor stuff
2016-05-25 22:56:26 +02:00
TuxSH
2fab0be5e8
Merge branch 'master' into developer
...
Conflicts:
Makefile
source/firm.c
source/patches.c
source/patches.h
2016-05-25 22:28:50 +02:00
TuxSH
7ea2a0a278
Remove the anti-DG check on 11.0 firmware (and future ones)
2016-05-25 20:50:45 +02:00
TuxSH
a3ae38520c
Fix the latest two commits
2016-05-25 20:08:37 +02:00
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