I looked into 50D/5D2 ROMs (yeah they have CF interface, but SD functions also presented in their ROMs)
They have two different configurations for
0xC0400004:
On 550D it's: 0xC0400004 = 0x03000000 (48MHz)
= 0x02000000 (24MHz)
= 0x01000000 (16MHz)
5D2/50D have that too, in addition to:
0xC0400004 = 0x00018000 (48MHz?)
= 0x00010000 (24MHz?)
= 0x00008000 (16MHz?)
You can change between them depending on the call on 50D/5D2.
On 1300D (DIGIC 4+) it has only:
0xC0400004 = 0x00018000 (48MHz?)
= 0x00010000 (24MHz?)
= 0x00008000 (16MHz?)
0xC0400008 appear to have also another configuration, but let's skip it for now. let's test the other 0xC0400004 configuration on 550D:
magiclantern-iso-research.2019Dec21.550D109_clocks_override_v3.zip-
How to test:
1-Photo mode (no LiveView)
2-Enable print values --> Apply patch --> write down 0xC0400004 value
3-Disable print values --> benchmarks
4-From "Apply patch" submenu set
C0400004 to 2 --> redo 2 & 3 steps
5-From "Apply patch" submenu set
C0400004 to 1 --> redo 2 & 3 steps
-Share the result
What this might tell me that
0xC0400004 can accept many configurations, also other from the two configurations above, if the theory is correct we need find new configurations/values by trial and error --> I need to find a way to hook 0xC0400004 to apply the override and prevent it from value switching.