11 Commits

Author SHA1 Message Date
Wolfvak
8a7448995f fixed overlooked ARM9 exception handler issue where code would be dumped incorrectly, modified ARM11 exception vectors to not take an entire page of compiled code 2020-07-26 10:27:48 -03:00
Wolfvak
f835469e19 rewrite the bootrom function header, add more operations and add ARM11 versions
- the bootrom is now mapped on the ARM11

- removed the waitClks in favor of a more canonical implementation (subs r0, r0, 4/5 + branch back)
2020-07-24 13:37:29 -03:00
Wolfvak
6487307cf0 improved mmu and gic code 2020-07-19 11:59:52 -03:00
Wolfvak
30f0b004c2 fixed screen init, hopefully the last commmit
- properly performs gpu/backlight reset

- nukes vram so the initrd had to be moved to arm9 memory, and have its size (at least temporarily) limited to 256k
2020-07-18 20:25:34 -03:00
Wolfvak
fd5320b86f - properly align ARM11 stacks and buffers
- add very simple exception dumping for the ARM11
2019-09-29 19:53:28 +02:00
Wolfvak
a6734af45d licensing bs 2019-06-03 02:27:43 +02:00
Wolfvak
70757e3385 - added extremely simple calibration dialog, to be replaced by something prettier/saner/safer at a later point in time
- moved all SPI code to the ARM11
- reimplemented NVRAM reading for the new SPI interface
2019-06-03 02:27:42 +02:00
Wolfvak
bcff09a389 added a small 10ms wait before turning on the backlight, thanks to profi for reminding me of that 2019-06-03 02:27:42 +02:00
Wolfvak
5e56cd2f77 - refactored arm11/sys.c
- moved common.h from the ARM9 tree to the common code tree
- does proper deinit now on the ARM11 side

the bug that caused it to fail to launch some FIRMs has been fixed - it can even boot stock FIRMs
2019-06-03 02:27:41 +02:00
Wolfvak
016eac6982 - properly set up MMU tables with caching and other fun stuff
- maps a regular ARM-style exception vector table instead of using the bootrom vector redirection

features a ton of bugs because I'm missing something, it actually manages to boot fb3DS v1.2 and BAX fine, but fails to boot itself
2019-06-03 02:27:41 +02:00
Wolfvak
2f86686388 renamed most low level functions and other stuff to fit with the current theme
- added initial SCU twiddling
- added very untested and unusable SMP code
- fixed race condition that happened on boot
- added initial MMU code (just super basic identity mapping, no caching set up or anything)
- enabled some of the fancier ARMv6 features
- reorganized ARM11 files into their own folders
- possibly more stuff I'm forgetting about
2019-06-03 02:27:41 +02:00