Commit graph

1237 commits

Author SHA1 Message Date
Michael Scire
83c9747e5f fs.mitm: Save memory+time in sibling reconstruction via reverse iteration 2018-06-29 00:34:18 -06:00
Michael Scire
4c920dfe92 fs.mitm: Optimize out remaining O(n^2) op. BotW is very fast. 2018-06-28 23:24:08 -06:00
Michael Scire
90226ec438 fs.mitm: Fix typo. map impl takes 2-3 seconds to boot botw. 2018-06-28 23:18:35 -06:00
Michael Scire
c536665fe9 fs.mitm: Use std::map for RomFS building 2018-06-28 22:40:18 -06:00
Michael Scire
fb0c1b1ac7 fs.mitm: Fix debug-commented-out command 2018-06-28 20:42:27 -06:00
Michael Scire
caac5f9078 fs.mitm: Simplify source merging condition thanks to padding guarantees 2018-06-28 20:41:36 -06:00
Michael Scire
a95836552e fs.mitm: Use less path memory, fix source concat. (Fixes BotW, probably others) 2018-06-28 20:39:23 -06:00
Michael Scire
8da27723fc fs.mitm: Fix c++ modernization breaking changes 2018-06-27 23:02:06 -06:00
hexkyz
ed718e007f
Merge pull request #156 from Benoit7413/patch-1
Replace NAND by eMMC
2018-06-26 16:33:18 +01:00
Michael Scire
6fd82b7947 creport: Add dying message to output report, if relevant. 2018-06-26 00:51:53 -06:00
Benoit7413
0f6d4baa8e
Replace NAND by eMMC
Using NAND doens't really make sense
2018-06-26 08:49:50 +02:00
Michael Scire
4eadeb021b creport: Complete crash report saving. 2018-06-26 00:44:58 -06:00
Michael Scire
d5b303f852 creport: Clean up bugs, now saves (empty) reports to the SD successfully 2018-06-25 22:27:33 -06:00
Michael Scire
12236eae9e creport: Fix bad constructor for ThreadInfo 2018-06-25 20:40:33 -06:00
Michael Scire
71e87e9e35 creport: fix a bunch of trivial errors 2018-06-25 10:25:14 -06:00
Michael Scire
fc36429b99 creport: fix typo in json 2018-06-25 10:23:37 -06:00
Michael Scire
b8e0c2855f creport: Further Skeleton Report saving. 2018-06-25 10:22:37 -06:00
Michael Scire
92bc396972 creport: Implement reading name/build id from .rodata 2018-06-25 09:50:36 -06:00
Michael Scire
f189610af8 creport: Skeleton reading of Code Regions. 2018-06-25 04:38:54 -06:00
Michael Scire
fd6fa89122 creport: fix thread_list access style 2018-06-25 04:08:42 -06:00
Michael Scire
d65255acb8 creport: Implement reading info about all threads. 2018-06-25 04:07:44 -06:00
Michael Scire
5268a9f9f3 creport: Implement reading a dying message 2018-06-25 03:40:32 -06:00
Michael Scire
e6b7793916 creport: Parse info for crashed thread 2018-06-25 03:04:17 -06:00
Michael Scire
7cd44e8980 creport: Read exception info properly (except for crashed thread info) 2018-06-25 02:18:26 -06:00
Michael Scire
4e7fcc1a50 creport: Solidify main() logic. 2018-06-25 01:58:44 -06:00
Michael Scire
851d21a276 creport: Implement process open, stub exception parsing. 2018-06-25 01:45:25 -06:00
Michael Scire
6ffc9bd8e0 creport: Further skeleton the CrashReport object. 2018-06-25 00:42:26 -06:00
Michael Scire
af4485d533 creport: Add skeleton. Doesn't actually generate reports yet. 2018-06-24 22:46:20 -06:00
Michael Scire
bcf81fe957 Loader: Fix argument passing. 2018-06-24 21:39:05 -06:00
Michael Scire
9687218fbc Fusee: lfs kernel patches for 3.0.0/3.0.2 2018-06-24 16:24:22 -06:00
Michael Scire
1252c4d5e1 Fusee: Complete hashes (Thanks @Thog), lfs patches for 2.0.0 2018-06-24 15:51:29 -06:00
Michael Scire
040cfa90d3 Fusee: Add kernel patches for 1.0.0. 2018-06-24 15:20:16 -06:00
Michael Scire
284677c486 libstratosphere: Cleanup resources when doing OutSession for domains. 2018-06-24 12:39:09 -06:00
Tony Wasserka
ad636f7216 Modernize C++ usage (#144)
* Stratosphere: Use modern C++ idioms in some places

* algorithms like std::for_each are used instead of raw loops

* Stratosphere: Replace more raw loops with algorithms

* Stratosphere: Add a utility predicate function to test for equality with a reference element

This can be used to rewrite some common raw loops using algorithms instead

* fs.mitm: Use variant

* fs.mitm: Use enum class

* fs.mitm: Turn RomFSSourceInfo::Cleanup into a destructor

This obsoletes the need for a custom deleter in other places

* fs.mitm: Use enum class some more

* fs.mitm: Use unique_ptr

* fs.mitm: Simplify initialization

* Stratosphere: Simplify initialization

* fs.mitm: Use unique_ptr (fix memory leak along the way)

The previous code was using "delete" rather than "delete[]"

* fs.mitm: Use vector::emplace_back rather than push_back

emplace_back constructs elements in-place, hence avoiding a redundant element copy.

* Stratosphere: Replace more raw loops with algorithms

* Stratosphere: Use unique_ptr

* fs.mitm: Replace more raw loops with algorithms

* Stratosphere: Prefer move-construction over copy-construction when moving sink parameters around
2018-06-19 11:07:31 -07:00
hexkyz
f1c326aec3
Merge pull request #147 from TheDgtl/fusee_stage2_patch_fix
Fix a few issues in the secondary kernel_patches.c file
2018-06-18 16:06:01 +01:00
Drakia
a446aca2c4 Fix a few issues in the secondary kernel_patches.c file 2018-06-17 19:28:19 -07:00
hexkyz
fca9ed2a15
Merge pull request #145 from Traiver/master
fusee: Add 4.1.0 kernel patch definitions
2018-06-17 16:56:36 +01:00
hexkyz
f32f42e791
Merge pull request #141 from DavidBuchanan314/master
fusee: Add 3.0.0/3.0.1 kernel hash, corrected 4.x free_code_space_offset
2018-06-17 16:48:41 +01:00
Traiver
33af704ee2
Update kernel_patches.c 2018-06-17 15:54:06 +02:00
Traiver
57819fa345
Update kernel_patches.c 2018-06-17 14:02:08 +02:00
Traiver
0295c8a51d
Update kernel_patches.c 2018-06-17 12:38:57 +02:00
Traiver
b211a7cf05
add kernel patches for 4.1.0 2018-06-17 11:00:42 +02:00
Michael Scire
f41b780c0a PM: Fix remaining issues, now works properly again. 2018-06-15 00:47:07 -06:00
Michael Scire
4d36697080 Make PM Compile. Note: Currently broken. 2018-06-14 23:32:01 -06:00
Michael Scire
c2d9ac8f5c fs.mitm: WIP LayeredFS impl (NOTE: UNUSABLE ATM)
Also greatly refactors libstratosphere, and does a lot of other things.
There is a lot of code in this one.
2018-06-14 17:51:18 -06:00
DavidBuchanan314
20a721a4a6 fusee: correct 4.x free_code_space_offset value 2018-06-13 22:26:00 +01:00
DavidBuchanan314
58d2f8f0a5 fusee: Add 3.0.0-3.0.1 kernel hash (and free_code_space_offset) 2018-06-13 22:08:18 +01:00
TuxSH
82b248aeac
Merge pull request #138 from desowin/sdmmc-frequency
Rework sdmmc clocking configuration
2018-06-13 17:31:19 +02:00
Michael Scire
237ff0d1e7 libstratosphere/fs.mitm: Push WIP support for Domains. Not yet fully working. 2018-06-12 16:01:04 -06:00
Tomasz Moń
206c10f333 Rework sdmmc clocking configuration
Use 204 MHz as host clock in SDR104 mode instead of 136 MHz.
Due to this, also change the frequency init divider so the
initialization frequency is below 400 kHz.
This makes the clocks for SDMMC1 in all modes to match the TRM table.

Make it clear in the code that HS200/HS400 modes in fact use PLLP_OUT0
and not PLLC4_OUT2_LJ like the comment suggest. In fact selecting the
PLLC4_OUT2_LJ as clock source results in freeze after switching to
HS200/HS400 mode. This is most likely related to the PLLC4 not being
enabled, but it should be checked later.

Set the HS200/HS400 divider to 3, as this is what the code really did
set prior to this change - so this commit does not change that.

Configure Legacy 12 MHz clock to run at 12 MHz using the SW default
configuration (as per TRM) for the SDMMC legacy timer.

Introduce initial version of sdmmc_host_clock_delay() in order to use it
in places where the wait is host clock dependent. The way it is
implemented now does not change the sleep that was used instead.
2018-06-12 17:20:15 +02:00