Line 19:
Line 19:
Boot9 has code implemented for using SD(HC) cards, but the input deviceids used by boot9 for those functions are hard-coded for NAND.
Boot9 has code implemented for using SD(HC) cards, but the input deviceids used by boot9 for those functions are hard-coded for NAND.
+
+
== Boot9 image data memory layout ==
+
0xffffb088 is the beginning of the boot9 image data section.
+
+
* 0xffffb088 size 0x38-bytes: This is the array used during FIRM-section-loading for the memory-range blacklist for FIRM sections.
+
* 0xffffb0c0(end-addr of the above area) size 0x20-bytes: Unknown.
+
* 0xffffb0e0(end-addr of the above area) size 0x2f80-bytes: This is *all* of the keys stored in the image.
+
* 0xffffe060(end addr of the above key-area) size 0x230-bytes: This is the initial DTCM image @ 0xFFF00000, see below.
+
* 0xffffe290(DTCM_image_end) - {boot9 image end}: All-zero.
+
+
== Boot9 DTCM layout ==
+
Most of this is just ptrs / other unknown data, not actual keys. However, there is an unknown 0x10-byte block @ +0x124(there's a ptr initialized for this block elsewhere).
== Boot Procedure ==
== Boot Procedure ==