Parent: http://magiclantern.wikia.com/wiki/2.0.4_AJ
Related Page: 2.0.4 small LiveView struct at 0x44FC
Related: http://magiclantern.wikia.com/wiki/2.0.4_TOPLEVEL_startupPrepareDevelop_n_SDS_initialise
Live View Manager Structure Pointer[]
Navigating around a Wiki table is simply a delight (its the simple things in life ... I guess?)
0x1D78 | aAJ_0x1D78_LiveViewMgr_struct_ptr |
This ptr (pointer) points to the 0x29D8 byte LiveViewMgr_struct The actual LiveViewMgr_struct is malloced in AJ_LiveView_Initialise() at 0xFF835DBC |
LiveViewMgr_Struct: size = 0x29D8 (that's Hex for Huge)
[]
[0x00] | Struct name | = address of "LiveViewMgr" = aAJ_0xFFC4A474_aLiveviewmgr_string | Set in AJ_LiveView_Initialise() |
[0x04] | TaskCreate_ss |
= 5 (if TH_task_create_2() was a success) = 3 (ie TH_task_create_2() was passed an entry=0) = Failure << 1 - if TH_task_create2() FAILED |
Set in AJ_LiveView_Initialise() |
[0x08] | =152 | set in AJ_LiveView_Initialise() | |
[0x0C] |
"LVState" StateObj |
= ptr to StateObject LDR into AJ_lvEventDispatch() R0 = [0x0C] before AJ_StateObject_stuff() |
AJ to double check this |
[0x34] | FD_GetAfState | [4, 5, 6, 7, 8] | Ref AJ_FD_GetAfState() [Face Detect] |
[0xA8] | = 0x1 | Set in AJ_LiveView_Initialise() | |
[0xC0] |
Magnification LVmagSubBank |
0 = x1 bank of 16 subs to call < CONFIRMED > 1 = x5 bank of 16 subs to call < CONFIRMED > 2 = x10 bank of 16 subs to call < CONFIRMED > |
Ref: AJ_LiveView_main(), AJ_ChangeVDInterrupt() Nb: These subs write the addr of the 16 engio structs to [0xCD0] |
[0xC4] |
ZoomMode |
0,1,2 0 = x1 related < CONFIRMED > 1 = x5 related < CONFIRMED > 2 = x10 related < CONFIRMED >
|
AJ_TvAfMode_n_Zoom(): Used to select variable in aAJ_0xFFC7A1E4_TvAfMode_n_Zoom_related_0x00_to_0x08 Ref: AJ_ModeChangeToZoomOff() |
[0xC8] | = vals[0,1,2,3,4,5,6] = parm2 AJ_get_index_of_list_of_engio_vals_from_0xFFC79064_plus_4xR1() |
||
[0xCC] |
'FrameRate' engio_struct_upd_var maybe framerate related |
[0..6] |
Used to get variable at 0xFFC79064 to build an engio_write_struct in AJ_TvAfMode_n_Zoom() Called 'FrameRate' in AJ_PROP_LV_massive() |
[0xE0] |
Example of values:
|
||
[0xE8] |
Example of values:
|
||
[0xEC |
Example of values: 4400_0080 (seems to switch with value at 0xE8) |
||
[0xF4] |
Examples of values: 0x1FE0 (at x1 magnification) 0x2420 (at x5 magnification) ?0x2420? (at x10 magnification) |
||
[0xFC] |
Examples of values: 0xEF60 (at x1 magnification) 0x36B0 (at x5 magnification) ?0x36B0? (at x10 magnification) |
||
[0x104] |
Examples of values: 0x0 (at x1 magnification) ?0x? (at x5 magnification) ?0x? (at x10 magnification) |
||
[0x110] |
Copy 1 of [0x2974] Zoom_window Y_position |
Not sure if this is the copy .. but 0x2974 is closer to 0x2970 (which is X_position) AJ to find out later on | |
[0x3C4] | TvAfMode? | ||
[0x3FC] | LVstate1 |
=0 or 1? |
AJ_LiveView_StartInSuspend() IF ( [0x3FC_LVstate1] != 0 OR { Illegal stop Error } AJ_LiveView_main() IF ( [0x3FC_LVstate1] = 1 OR { if [0x2930]_Bitmask1 wrong -> Illegal stop Error } |
[0x400] | LVstate2 | =0 or 1? |
AJ_LiveView_StartInSuspend() IF ( [R4,#0x3FC] != 0 OR { Error }
AJ_LiveView_main() IF ( [0x3FC_LVstate1] = 1 OR { if [0x2930]_Bitmask1 wrong -> Illegal stop Error } |
[0x4F8] |
Examples of values: 0x0 (at x1 magnification) 0x1 (at x5 magnification) 0x2 (at x10 magnification) |
||
[0x5C4] |
Examples of values: 0 -> 1 -> 0 |
In LiveView | |
[0x948] | RecMovSubBank | = 0, or 1 |
AJ_GetRecMoviePassInfo_RecModeD() uses this to select banks of 16 subs at aAJ_0xFFC7A444_sublist_RecMoviePassInfo_related |
[0xB10] | = 1 then AJ_LiveView_main() calls AJ_liveview_zoom_struct_related() |
||
[0xB14] | Temperature | ||
[0xB1C] | 'Temp' | Called 'Temp' in AJ_PROP_LV_massive() | |
[0xB6C] |
Examples of values: 0x0 (at x1 magnification) 0x1 (at x5 magnification) 0x2 (at x10 magnification) |
||
[0xB88] | Examples of values: 9 -> 3 -> 9 -> 3 -> 2 -> 6 | In LiveView | |
[0xB9C] | Examples of values: 4 -> 6 -> 3 -> 6 -> 5 | In LiveView | |
[0xBA0] | Examples of values: 1 -> 0 -> 1 | In LiveView | |
[0xCD0] | = Address of 16 engio_write_subs to call depending on Zoom level cf [0xC0] |
||
[0xD08] |
Examples of values: 0x0 (at x1 magnification) 0x17_000E (at x5 magnification) 0x17_000E (at x10 magnification) |
||
[0xD0C] |
Examples of values: 0xCE0_0000 (at x1 magnification) 0xCE0_0010 (at x5 magnification) 0xCE0_0010 (at x10 magnification) |
||
[0xD18] |
Copy 2 of [0x2974] Zoom_window Y_position |
Not sure if this is the copy .. but 0x2974 is closer to 0x2970 (which is X_position) AJ to find out later on | |
[0x2140] |
Examples of values: 0x0 (at x1 magnification) 0x1 (at x5 magnification) 0x2 (at x10 magnification) |
||
[0x23E0] |
Examples of values: 0x5FA1_0000
|
In LiveView | |
[0x23F8] |
Examples of values: 0x0140_137B |
In LiveView | |
[0x2690] |
Examples of values:
|
In LiveView | |
[0x
|
BadFrameRelated | See AJ_lvSetBadFrame() | |
[0x2930] |
Bitmask1? |
= 0x4A1 (= 1185)
|
Set in AJ_LiveView_Initialise()
check AJ_LiveView_main()TST with #0x200. -> if Bit = 0 => possible error AJ_LiveView_main() IF ( [0x3FC_LVstate1] = 1 OR { if [0x2930]_Bitmask1 wrong -> Illegal stop Error } |
[0x2940] | =0 | Set in AJ_LiveView_Initialise() | |
[0x2964] |
Examples of values: 0xA1F->ACC->C25 |
||
[0x2970] |
Zoom_window
|
Examples of values: 0x7►0x57►0xA7...0x10E7►0x1157►0x1187 (at x1 mag) 0x8►0x1188 (at x5 magnification) 0x120►0x12A0 (at x10 magnification) |
Top Left [0x7,0x18] (x1)
|
[0x2974] |
Zoom_window Y_position |
Examples of values: 0x18►0x6A►.... 0xA06►0xBA0 (at x1 magnification) 0x14►0xB9C (at x5 magnification) 0xD0►0xC58 (at x10 magnification) |
[0x110] and [0xD18] are copies of this (or this of them!). |
[0x2978] |
Examples of values: 0x462 (at x1 magnification) 0x460 (at x5 magnification) 0x230 (at x10 magnification) |
||
[0x297C] |
Examples of values: 0x2E8 (at x1 magnification) 0x2F0 (at x5 magnification) 0x178 (at x10 magnification) |
||
[0x299C] |
Examples of values: 0x1 (at x1 magnification) 0x4 (at x5 magnification) 0x? (at x10 magnification) |
||
[0x29A4] |
Examples of values: 0x1 (at x1 magnification) 0x? (at x5 magnification) 0x0 (at x10 magnification) |
||
[0x29B0] | Magnification_on_LCD |
Examples of values: (dec) 1 (at x1 magnification) (dec) 5 (at x5 magnification) (dec) 10 (at x10 magnification) |
Looking at memory changing - I think this is what is displayed at the bottom right of the screen when zooming |
[0x29D0] |
Examples of values: 1->0->1 |
In LiveView |